- From: SVG Working Group repository <cam+svgwgrepo@mcc.id.au>
- Date: Fri, 31 Jan 2014 17:35:20 -0800
- To: public-svg-wg@w3.org
details: https://svgwg.org/hg/svg2/rev/2c0636328fa1 branches: changeset: 587:2c0636328fa1 user: Brian Birtles <birtles@gmail.com> date: Fri Jan 31 17:34:48 2014 -0800 description: Move Animation Elements spec to SVG repo diffstat: specs/animation-elements/animation-elements.html | 995 ++++++++++++ specs/animation-elements/respec/respec-w3c-common-3.1.68.js | 13 + specs/animation-elements/respec/sh_html.min.js | 1 + specs/animation-elements/respec/sh_javascript.min.js | 1 + 4 files changed, 1010 insertions(+), 0 deletions(-) diffs (1032 lines): diff --git a/specs/animation-elements/animation-elements.html b/specs/animation-elements/animation-elements.html new file mode 100644 --- /dev/null +++ b/specs/animation-elements/animation-elements.html @@ -0,0 +1,995 @@ +<!DOCTYPE html> +<!-- vim: set expandtab ts=2 sw=2 tw=80: --> +<html> + <head> + <title>Animation Elements 1.0</title> + <meta charset="utf-8"> + <script src="respec/respec-w3c-common-3.1.68.js" class="remove"></script> + <script src="respec/sh_html.min.js" class="remove"></script> + <script class='remove'> + var respecConfig = { + // specification status (e.g. WD, LCWD, NOTE, etc.). If in doubt use + // ED. + specStatus: "ED", + + // the specification's short name, as in + // http://www.w3.org/TR/short-name/ + shortName: "animation-elements", + + // if your specification has a subtitle that goes below the main + // formal title, define it here + // subtitle : "an excellent document", + + // if you wish the publication date to be other than today, set this + // publishDate: "2009-08-06", + + // if the specification's copyright date is a range of years, specify + // the start date here: + // copyrightStart: "2005" + + // if there is a previously published draft, uncomment this and set + // its YYYY-MM-DD date and its maturity status + // previousPublishDate: "1977-03-15", + // previousMaturity: "WD", + + // if there a publicly available Editor's Draft, this is the link + // edDraftURI: + // "http://dev.w3.org/2009/dap/ReSpec.js/documentation.html", + + // if this is a LCWD, uncomment and set the end of its review period + // lcEnd: "2009-08-05", + + // if you want to have extra CSS, append them to this list + // it is recommended that the respec.css stylesheet be kept + extraCSS: ["http://dev.w3.org/2009/dap/ReSpec.js/css/respec.css"], + + // Turning off inlineCSS for now since if extraCSS points to + // a relative URL your testing from a file URL the XHR will fail. + // Probably should turn this back on once this is hosted on a server + // somewhere. + inlineCSS: false, + + // editors, add as many as you like + // only "name" is required + editors: [ + { name: "Brian Birtles", mailto: "bbirtles@mozilla.com", + company: "Mozilla Japan", companyURL: "http://mozilla.jp/" } + ], + + // authors, add as many as you like. + // This is optional, uncomment if you have authors as well as editors. + // only "name" is required. Same format as editors. + + //authors: [ + // { name: "Your Name", url: "http://example.org/", + // company: "Your Company", companyURL: "http://example.com/" }, + //], + + // XXX If we continue using ReSpec then we need to tweak it to support + // multiple working groups. It includes updating the patent section + // prose to say "groups" instead of "group" etc. + // name of the WG + wg: "SVG Working Group (part of the Graphics Activity)", + + // URI of the public WG page + wgURI: "http://www.w3.org/Graphics/", + + // name (without the @w3c.org) of the public mailing to which comments + // are due + wgPublicList: "public-fx", + + // URI of the patent status for this WG, for Rec-track documents + // !!!! IMPORTANT !!!! + // This is important for Rec-track documents, do not copy a patent URI + // from a random document unless you know what you're doing. If in + // doubt ask your friendly neighbourhood Team Contact. + wgPatentURI: "", + + noIDLSorting: true, + noIDLIn: true + }; + </script> + </head> + <body> + <section id='abstract'> + This specification defines an element-based markup for defining + animation and time-related changes to a Web page. + It is intended to replace the animation features of <a + href="http://www.w3.org/TR/SVG11/">SVG 1.1</a> by building on the model + defined in <a href="http://www.w3.org/TR/web-animations/">Web + Animations</a>. + </section> + + <section> + <h2>Introduction</h2> + <p class="todo">TBD</p> + <section class="informative"> + <h2>Use cases</h2> + <h4>Tweening and cutout animation</h4> + <p> + A common animation technique involves taking some graphical elements + and interpolating their properties such as position or color or moving + them along a path. + This is sometimes referred to as <em>cutout animation</em> since the + moving parts were traditionally represented by separate shapes cut + from cardboard or similar material. + </p> + <p> + For example, in the following segment of a cartoon, a golfer swings + his arms (and club!) and as a result the golf ball follows + a trajectory through the air before bouncing along the ground. + </p> + <pre class='example sh_html'> +<path id="golferBody" d="…"/> +<g id="armsAndClub"> + <path id="club" d="…"/> + <path id="arms" d="…"/> +</g> +<circle id="ball" …/> +<seq> + <!-- Rotate man's arms and club --> + <animate href="armsAndClub" attributeName="transform" + values="rotate(0); rotate(-120); rotate(30); rotate(0)" + keyTimes="0; 0.5; 0.8; 1" additive="sum" dur="1.2s"/> + <!-- Show course of ball --> + <animateMotion href="ball" begin="-0.312s" path="…"/> +</seq> + </pre> + <h4>Timesheets</h4> + <p> + In simple examples such as the above cartoon, it is useful to + represent graphical content and timing side-by-side. + However, for applications that involve complex sequencing of effects + it is often convenient to separate the temporal markup into a separate + subtree or document sometimes referred to as + a “timesheet”—the temporal equivalent of + a stylesheet. + </p> + <p> + Such a timesheet may define animations directly or simply set classes + and define the animation effects using, for example, CSS Animations + [[CSS3-ANIMATIONS]]. + </p> + <p> + For example, the title screen and first scene of an interactive + story might use the following timesheet: + </p> + <pre class='example sh_html'> +<!-- Title screen --> +<seq begin="0s"> + <!-- Draw curtains to the side --> + <par> + <animate href="leftCurtain" attributeName="transform" + to="translate(-100 0)" dur="1s" additive="sum"/> + <animate href="rightCurtain" attributeName="transform" + to="translate(100 0)" dur="1s" additive="sum"/> + </par> + <!-- Then show the title by setting a class which may trigger, + for example, a fade animation defined in CSS --> + <set href="title" attributeName="class" to="active"/> +</seq> + +<!-- Show the first scene when the user clicks the title screen --> +<seq begin="titleScreen.click" restart="whenNotActive"> + <!-- Cross fade to show background --> + <par> + <animate href="titleScreen" attributeName="opacity" to="0" dur="1s"/> + <animate href="scene1Background" attributeName="opacity" to="1" dur="1s"/> + </par> + <!-- Move narrator onstage --> + <animate href="narrator" attributeName="transform" + to="translate(180 90)" dur="0.3s"/> + <!-- Set the active class on the narrator which may trigger further + animations or perhaps update the pointer-events property so he + becomes clickable--> + <set href="narrator" attributeName="class" to="active"/> +</seq> + </pre> + <p> + The triggers for these effects can be defined declaratively as in + the example above or they can be applied using script (see the + <code>beginElement</code> and <code>beginElementAt</code> methods). + </p> + <div class="feedbackWanted"> + <p> + For more complex usage such as an interactive comic book the + following features would be useful: + </p> + <ul> + <li>Ability to define a “sequence” (which may or may not + be a type of <code><seq></code>) where each step is + gated on certain conditions (e.g. mouse clicks or keyboard + presses). + <li>Ability to step backwards through such a sequence. + <li>Ability to define alternative animations when stepping + backwards. + <li>Ability to step forwards causing the current in-play step to + skip to its end and triggering the next step. + <li>Ability to hyperlink to a particular step (including when steps + when such steps are nested) + </ul> + <p> + The features currently defined in this specification can be used to + realize some of these sort of use cases but typically it is + quite cumbersome. + </p> + <p> + It is possible to extend this specification to cover the above + features or we can defer it and introduce a more fully-featured + state tracking feature in a subsequent version. + </p> + </div> + <h4>Round-trip ad-hoc animation</h4> + <p> + When performing DOM manipulation, it is often useful to attach + animation to an element in such a form that it can be serialized for + later playback and editing. + </p> + <p> + For example, a presentation authoring tool allows a user to select + items on a slide and tween their various properties at different times + or in response to events such as mouse clicks. + This could be achieved by annotating the element in question with + a child element as follows: + </p> + <pre class='example sh_html'> +<image> + <animate begin="3s" dur="1s" attributeName="opacity" to="1" fill="forwards"/> +</image> + </pre> + <p> + In many cases, such an approach is easier to generate and re-parse + than doing so with stylesheet animation: + </p> + <pre class='example sh_html'> +<image> + <style scoped> + image { + animation: fadeIn 1s 3s forwards; + } + @keyframes fadeIn { + to { + opacity: 1.0; + } + } + </style> +</image> + </pre> + <h4>Frame-based animation</h4> + <p> + Rather than smoothly tweening values, sometimes it is desirable to + overlay a series of independent images in quick succession. + </p> + <p> + For example, a children's workshop teaching animation principles + allows children to draw a series of similar images and then show and + hide them in turn creating the illusion of movement. + </p> + <p> + Supposing each drawn image is contained in an SVG + <code><g></code> element, the animation could be produced as + follows: + </p> + <pre class='example sh_html'> + <!-- Graphical content --> + <g class="frame" visibility="hidden">…</g> + <g class="frame" visibility="hidden">…</g> + <g class="frame" visibility="hidden">…</g> + <g class="frame" visibility="hidden">…</g> + + <!-- Timing --> + <seq repeatCount="indefinite"> + <set select=".frame" dur="0.2s" attributeName="visibility" to="visible"/> + </seq> + </pre> + <h4>Animated user interface widgets</h4> + <p> + User interface widgets are often accompanied by animated effects that + provides affordances to the user. + These effects should be defined in a manner that allows re-use across + a variety of similar widgets. + </p> + <p> + For example, following is a re-usable definition of mouse hover + effects applied to some content representing a button. + </p> + <pre class='example sh_html'> +<!-- A button-like object --> +<g role="button"> + <rect … /> + <text filter="child"> + <filter … />…<feGaussianBlur … /></filter> + Button label + </text> +</g> + +<!-- A complex mouseover effect --> +<par select="g[role=button]" begin="mouseover" end="mouseout"> + <!-- Tween background color of button --> + <animate select="rect" attributeName="fill" to="blue" dur="0.3s" fill="forwards"/> + <seq> + <!-- Wiggle text to the side --> + <animate select="text" attributeName="transform" dur="0.3s" + additive="sum" values="translate(0); translate(-10); translate(0)"/> + <!-- Then make it glow by tweaking part of the filter --> + <animate select="feGaussianBlur" attributeName="stdDeviation" + from="0" to="2" fill="forwards" dur="0.3s"/> + </seq> +</par> + +<!-- Fade out button background on mouseout --> +<par select="g[role=button]" begin="mouseout" end="mouseover; indefinite"> + <animate select="rect" begin="mouseout" attributeName="fill" + to="navy" dur="0.3s" fill="forwards"/> + <set select="feGaussianBlur" attributeName="stdDeviation" to="0"/> +</par> + </pre> + <div class="annotation"> + This use case would also benefit from the custom reversing suggested + for timesheets / interactive comics. + </div> + </section> + <section> + <h2>Relationship to SVG 1.1 Animation</h2> + <p> + This specification is intended to be backwards-compatible with the + animation features defined in SVG 1.1 Second Edition [[SVG11]] with + the following exceptions: + </p> + <ul> + <li>The special behavior of a frozen to-animation has been altered to + follow the regular behavior of the model since no user agent + implemented the specified behavior. + <li>The procedure for resolving syncbase dependencies and particularly + breaking cyclic dependencies has been rewritten in a manner that + may produce slight variations in some circumstances. + This was done because the previous definition was incredibly vague + and as a result was implemented inconsistently in every user + agent. + <li>The <span class="elem">animateColor</span> element has been + removed since it was deprecated in SVG 1.1. + </ul> + <p> + The following features defined in SVG 1.1 have been deprecated in this + specification: + </p> + <ul> + <li>The <span class="elem">animateTransform</span> element. + This is because the <span class="elem">animate</span> element is + now able to animate transform lists which produces more + predictable behavior that avoids many of the issues surrounding + <span class="elem">animateTransform</span>. + </ul> + <p> + The following additional features not present in SVG 1.1 have been + added to this specification: + </p> + <ul> + <li>All features are now defined in terms of the Web Animations + [[web-animations]] model providing a consistent foundation for + applications also using CSS-based animations or the Web Animations + API. + This also makes it possible for the author to programmatically + inspect and modify the animations generated by the markup defined + in this specification. + <li>The <span class="elem">par</span> and + <span class="elem">seq</span> elements have been introduced to + provide more powerful synchronization behavior that avoids many of + the problems associated with syncbase timing such as being unable + to cancel a chain of animations or seek a document in constant + time. + These elements also facilitate re-use of complex animation + definitions. + <li>Animation elements now include the <span + class="attr">select</span> attribute for targetting a range of + elements making animations re-useable + (see <a + href="#attributes-to-identify-the-target-elements-for-a-timed-element" + class="sectionRef"></a>). + <li>The <span class="attr">href</span> attribute no longer requires + the XLink namespace in keeping with changes made in SVG 2.0 + (see <a + href="#attributes-to-identify-the-target-elements-for-a-timed-element" + class="sectionRef"></a>). + <li>The <span class="attr">cancel</span> attribute has been added to + completely remove an animation or a group of animations including + fill effects when its conditions are met. + <li>The <span class="attr">reverse</span> attribute has been added to + specify conditions that cause and animation or a group of + animations to change direction. + <li>The <span class="attr">repeatStart</span> attribute has been added + to allow starting an animation part-way through its interval. + <li>The <span class="attr">playback-rate</span> attribute has been + added to control the playback rate of animations and groups + including reversing them. + <li>The <span class="attr">direction</span> attribute has been added + to allow controlling the direction of alternate iterations of + animations and groups. + <li>The <span class="attr">easing</span> and <span + class="attr">easing-times</span> attributes have been added to + allow specifying easing behavior using a common syntax to CSS and + Web Animations including the ability to specify step timing + functions. + <li>The <span class="attr">fill</span> attribute has been extended to + support the ‘backwards’, ‘both’, and + ‘auto’ values. + <li>The <span class="elem">discard</span> element has been added so + that long-running animations can manually remove no-longer needed + resources and provide more performant playback, particularly on + resource-constrained devices. + <li>The <span class="attr">timelineStart</span> attribute has been + added to allow starting animations prior to the document load + event such as “spinner” and progress-bar animations + shown during page load. + <li>The <code>beginElement</code> and <code>beginElementAt</code> + methods have been extended to allow applying an animation + definition to an arbitrary target element or in an arbitrary + context (for example, another document; + see <a href="#timed-element-interfaces" class="sectionRef"></a>). + </ul> + <div class="todo"> + Link the above to the appropriate sections once they have been + written. + </div> + <div class="todo"> + Add support for Web Animations custom effects—perhaps through + a <code>sample</code> event dispatched to animation elements, or + perhaps only those that don't specify any <a>target elements</a>. + </div> + </section> + <section> + <h2>Relationship to SMIL Animation</h2> + <p> + To the extent that this specification is backwards-compatible with SVG + 1.1's animation features, most of which are defined in terms of SMIL + Animation [[SMIL-ANIMATION]], this specification defines many features + similar to those defined in SMIL Animation. + However, since such features are fully-defined either in this + specification or in Web Animations [[!web-animations]], this + specification does not make any normative reference to SMIL Animation. + </p> + </section> + <section> + <h2>Relationship to Web Animations</h2> + <p> + Many of the features defined in this specification are defined in + terms of the Web Animations [[!web-animations]] model which serves as + a normative reference for this specification. + </p> + </section> + </section> + + <section> + <h2>Timed elements</h2> + <p> + This specification defines a number of elements that share common timing + behavior referred to as <dfn title="timed element">timed elements</dfn>. + The common timing features of timed elements are described first + followed by the specific elements. + </p> + <section class="informative"> + <h2>Introduction</h2> + <p> + The <a>timed elements</a> defined by Animation Elements act as + templates for creating animations and timing groups as defined by + [[!web-animations]]. + </p> + <p> + The relationship between <a>timed elements</a> and Web Animations' + timed items is one-to-many since: + </p> + <ul> + <li>multiple elements may be targetted (for example, + <code>select="div.warning"</code>), + <li>animation triggers may match multiple times (for example, + <code>begin="2s; 5s; click"</code>), + <li>automatically-generated reverse effects are realized by separate + timed items (for example <code>reverse="mouseout"</code>), and + <li>a timed element can be applied to an arbitrary target using the + <code>beginElement</code> and <code>beginElementAt</code> methods + which will generate further timed items. + </ul> + <p class="todo"> + Example and diagram + </p> + </section> + <section> + <h2>Timed element hierarchies</h2> + <p> + <a>Timing group elements</a> can contain other <a>timed elements</a> + to produce hierarchical tree structures. + Such structures can be described using the following definitions: + </p> + <dl> + <dt><dfn>parent timed element</dfn></dt> + <dd> + For a given <a>timed element</a> <var>A</var>, the first <a>timed + element</a>, if any, encountered when traversing the list of <a + href="http://www.w3.org/TR/dom/#concept-tree-ancestor">ancestor + elements</a> [[!DOM4]] beginning with the <a + href="http://www.w3.org/TR/dom/#concept-tree-parent">parent</a> + [[!DOM4]] of <var>A</var> and without leaving the current <a + href="http://www.w3.org/TR/SVG2/intro.html#TermSVGContext">SVG + context</a> [[!SVG2]]. + </dd> + <dt><dfn>child timed element</dfn></dt> + <dd> + A <a>timed element</a> whose <a>parent timing group</a> is this + <a>timed element</a>. + </dd> + <dt><dfn>root timed element</dfn></dt> + <dd> + A <a>timed element</a> with no <a>parent timed element</a>. + </dd> + </dl> + </section> + <section> + <h2>Namespace</h2> + <p> + The <a>timed elements</a> defined in this specification belong to the + SVG namespace as defined in [[!SVG11]]. + </p> + <div class="issue"> + <p>If SVG2 allows SVG elements to exist outside the SVG namespace then + we will reflect that here as well.</p> + <p>Furthermore, SVG2 aside, it may be worth investigating allowing + these elements directly in HTML.</p> + </div> + </section> + <section> + <h2>Attributes to identify the target elements for a timed element</h2> + <p> + Each <a>timed element</a> may specify a set of <dfn>target + elements</dfn> which are used to determine: + </p> + <ul> + <li>which <a + href="http://www.w3.org/TR/web-animations/#dfn-target-element">timed items</a> to generate for a given <a>context + node</a>, + <li>the scopes in which the <a>target elements</a> of <a>child + timed elements</a> are resolved, and + <li>the <a + href="http://www.w3.org/TR/web-animations/#dfn-target-element">target + elements</a> of the <a + href="http://www.w3.org/TR/web-animations/#dfn-animation">animations</a> + generated by <a>animation elements</a>. + </ul> + <p class="annotation"> + When we add media reference elements, the <a>target elements</a> will + be used to establish the source media element when not explicitly set. + </p> + <p> + Each element in the list of <a>target elements</a> may have an + associated <dfn>context element</dfn> which represents the scope in + which the reference to the target element was resolved. + Each pair of a target element and optional <a>context element</a> is + unique within the list of <a>target elements</a>. + </p> + <p> + The following attributes are the <dfn>target element attributes</dfn> + which specify the <a>target elements</a> for a <a>timed element</a>. + </p> + <p><em>Attribute definitions:</em></p> + <table class="propdef attrdef"> + <thead> + <tr> + <th>Name + <th>Value + <th>Lacuna value + <th>Animatable + <tbody> + <tr> + <td><span class="attr">select</span> + <td><a + href="http://www.w3.org/TR/selectors4/#selector-list"><selector-list></a> + <td>(none) + <td>No + <tbody> + <tr> + <td><span class="attr">href</span> + <td>local IRI + <td>(none) + <td>No + <tr> + <td><span class="attr">xlink:href</span> + <td>local IRI + <td>(none) + <td>No + </table> + <p> + A <a>timed element</a> where one or more of the <a>target element + attributes</a> is specified is said to have a <dfn>specified + target</dfn>. + The list of <a>target elements</a> of a <a>timed element</a> without + a <a>specified target</a> is an empty list. + </p> + <p> + If more than one of the <a>target element attributes</a> is specified + then the attribute with the highest precedence is used even if its + value is empty or invalid; the other attributes are ignored. + <span class="attr">select</span> has the highest precedence followed + by <span class="attr">href</span> then <span + class="attr">xlink:href</span>. + </p> + <p> + A set of <a>target elements</a> is resolved with reference to a given + <dfn>context node</dfn> which may be either an <a + href="http://www.w3.org/TR/dom/#concept-element">element</a> or + a <a + href="http://www.w3.org/TR/dom/#concept-document">document</a>. + </p> + <p> + The <span class="attr">href</span> and <span + class="attr">xlink:href</span> attributes specify an element + belonging to the same document as the <a>context node</a>'s <a + href="http://www.w3.org/TR/dom/#concept-node-document">node + document</a>. + The syntax is that of a fragment identifier including the leading hash + (#, U+0023) but <em>without</em> an absolute IRI or relative IRI as + defined by [[!IRI]]. For example, <code>#button12</code>. + The fragment identifier is interpreted as an ID reference which is + resolved using the same definition for <a + href="http://www.w3.org/TR/dom/#dom-document-getelementbyid">getElementById</a> + from [[!DOM4]] with the <a>context node</a> as the <var>context + object</var>. + If no element matches the ID reference or it is malformed, the + resulting set of <a>target elements</a> is an empty list. + </p> + <p> + The <span class="attr">select</span> attribute specifies a CSS <a + href="http://www.w3.org/TR/selectors4/#selector-list">selector + list</a> [[!selectors4]] that is matched against the subtree beginning + with the <a>context node</a> using the same procedure as for <a + href="http://www.w3.org/TR/selectors-api2/#queryselectorall">querySelectorAll</a> + [[!SELECTORS-API2]]. + If no element matches or the selector list is malformed, the + resulting set of <a>target elements</a> is an empty list. + </p> + <p class="todo"> + <span class="attr">select</span> should match content inside + a seamless iframe + </p> + <p class="todo"> + Describe how to handle changes to what is selected (including an + iframe becoming seamless or not). + </p> + <p class="todo"> + Describe how to handle dynamic changes to the attributes. + </p> + <section> + <h3>Generating new instances</h3> + <p> + <dfn title="generate new instances">New instance are + generated</dfn> for a given <a>timed element</a>, <var>current + element</var>, and either: + </p> + <ul> + <li>a <a>context node</a>, <var>current context</var>, or + <li>a <a>target element</a>, <var>initial target</var>, + </ul> + <p>using the following procedure.</p> + <ol> + <li>Initialize the list of <var>target elements</var> based on the + first matching condition from the following: + <dl class="switch"> + <dt>If an <var>initial target</var> is provided,</dt> + <dd> + Let <var>target elements</var> be a list consisting of + a single element, <var>initial target</var>. + </dd> + <dt>If <var>element</var> has a <a>specified target</a>,</dt> + <dd> + Let <var>target elements</var> be the result of evaluating the + <var>current element</var>'s <a>target element attributes</a> + as defined in <a + href="#attributes-to-identify-the-target-elements-for-a-timed-element" + class="sectionRef"></a> using <var>current context</var> as + the <a>context node</a>. + </dd> + <dt>Otherwise,</dt> + <dd> + Let <var>target elements</var> be a list consisting of + a single element, <var>current context</var>. + </dd> + </dl> + <li>Let <var>generated items</var> be an empty list. + <li>For each element, <var>current target</var>, in <var>target + elements</var>: + <ol> + <li>Let <var>current item</var> be the result of generating a + timed item for the specific type of <var>current + element</var> as defined in <a + href="#generating-an-instance-of-an-animation-element" + class="sectionRef"></a> <span class="todo">and so on (TBD: + add specific references here to other sections as they are + added).</span> + The <a>context node</a> to be passed in each case is + <var>current target</var>. + <li>If <var>current element</var> is a <a>group timing + element</var>, then for each <a>child timed item</a>, + <var>current child</var> of <var>current element</var> + perform the following steps: + <ol> + <li>Recursively apply this procedure (i.e. <a + href="#generating-new-instances" + class="sectionRef"></a> with <var>current child</var> as + the <a>context node</a>. + <li>Append the resulting list of timed items to + <var>current item</var>'s list of <a + href="http://www.w3.org/TR/web-animations/#dfn-child-timed-item">child + timed items</a>. + </ol> + <li>Append <var>current item</var> to <var>generated + items</var>. + </ol> + <li>Return <var>generated items</var>. + </ol> + <p class="todo"> + Make a section about interval handling where we say that when the + conditions match, we call the above procedure using the <a + href="http://www.w3.org/TR/dom/#concept-node-document">node + document</a> of the <a>timed element</a> as the <a>context node</a>. + For external timesheets we'll need to override it. + </p> + </section> + </section> + <section> + <h2>Attributes to control the triggering of timed elements</h2> + <section> + <h3>The <span class="attr">begin</span> attribute</h3> + <p class="todo"> + TBD.<br> + Need to define that this is ignored in template-contexts. It's + treated as if it was indefinite. + </p> + </section> + </section> + <section> + <h2>Attributes to control timing</h2> + </section> + <section> + <h2>Timed element interfaces</h2> + <dl title="interface TimedElement" class="idl"> + <dt>sequence<TimedItem> beginElement(optional BeginElementOptions options)</dt> + <dd> + <p> + <a title="generate new instances">Generates new instances</a> from + this timed element. + </p> + <p> + The <var>target element</var> or <var>context node</var> is based + on the first matching condition from below: + </p> + <dl class="switch"> + <dt>If <code>options</code> and <code>options.target</code> are + not <code>null</code>,</dt> + <dd>Use <code>options.target</code> as the <var>target + element</var>.</dd> + <dt>If <code>options</code> and <code>options.context</code> are + not <code>null</code>,</dt> + <dd>Use <code>options.context</code> as the <var>context + node</var>.</dd> + <dt>Otherwise,</dt> + <dd>Use the <a + href="http://www.w3.org/TR/dom/#concept-node-document">node + document</a> of this element as the <var>context + node</var>.</dd> + </dl> + <p> + The return value is the set of generated timed items as returned + by <a href="#generating-new-instances" class="sectionRef"></a>. + </p> + </dd> + <dt>sequence<TimedItem> beginElementAt(float offset, + optional BeginElementOptions options)</dt> + <dd> + <p class="todo"> + TBD. + </p> + </dd> + </dl> + <dl title="dictionary BeginElementOptions" class="idl"> + <dt>Element? target = null</dt> + <dd> + </dd> + <dt>(Element or Document)? context = null</dt> + <dd> + </dd> + <dt>BeginElementAtReferenceTime since = "now"</dt> + <dd> + </dd> + </dl> + <p class="issue"> + Add <code>sequence<Element>? targets = null</code> as well? + </p> + <dl title="enum BeginElementAtReferenceTime" class="idl"> + <dt>now</dt> + <dd> + </dd> + <dt>start</dt> + <dd> + </dd> + </dl> + </section> + <section> + <h2>Animation elements</h2> + <section> + <h2>Attributes to identify the target attribute or property for an + animation</h2> + </section> + <section> + <h2>Attributes that define animation values over time</h2> + </section> + <section> + <h2>Attributes that control whether animations are additive</h2> + </section> + <section> + <h2>Elements, attributes and properties that can be animated</h2> + </section> + <section> + <h2>Generating an instance of an animation element</h2> + <p> + <a>Animation elements</a> generate <a + href="http://www.w3.org/TR/web-animations/#dfn-animation">animations</a>. + </p> + <p> + The <a + href="http://www.w3.org/TR/web-animations/#dfn-target-element">target + element</a> of the generated animation is the <a>context node</a> + provided when the animation was generated, provided it is an <a + href="http://www.w3.org/TR/dom/#concept-element">element</a>. + If the <a>context node</a> is a <a + href="http://www.w3.org/TR/dom/#concept-document">document</a> the + target element is the parent element of the <a>animation + element</a>'s <a>root timed element</a>. + </p> + <p class="issue"> + What if the <a>root timed element</a> is not in the same document as + the context node? + Generate the animation with no target element? Abort? + </p> + </section> + <section> + <h2>The <span class="elem">animate</span> element</h2> + </section> + <section> + <h2>The <span class="elem">set</span> element</h2> + </section> + <section> + <h2>The <span class="elem">animateMotion</span> element</h2> + </section> + </section> + <section> + <h2>Timing group elements</h2> + <section> + <h2>The <span class="elem">par</span> element</h2> + </section> + <section> + <h2>The <span class="elem">seq</span> element</h2> + </section> + </section> + <section> + <h2>Structural elements</h2> + <section> + <h2>The <span class="elem">discard</span> element</h2> + </section> + </section> + <section> + <h2>Deprecated elements</h2> + <section> + <h2>The <span class="elem">animateTransform</span> element</h2> + </section> + </section> + </section> + + <section> + <h2>Integration with SVG</h2> + <section> + <h2>Start of the timeline</h2> + </section> + <section> + <h2>The <span class="elem">svg</span> element</h2> + </section> + <section> + <h2>Reclaiming resources</h2> + </section> + <section> + <h2>Animations in elements referenced by a + <span class="elem">use</span> element</h2> + <p class="issue"> + Can you have <span class="elem">use</span> elements inside + a <span class="elem">par</span> or <span class="elem">seq</span> that + pull in other animation elements? + </p> + <p class="issue"> + What is the behavior in general? + </p> + </section> + <section> + <h2>Integration with Media Fragments</h2> + <p> + The Media Fragments specification [[!MEDIA-FRAGMENTS]] defines a means + for addressing a temporal range of a media resource. + The application of the temporal parameters to documents with the <a + href="http://www.w3.org/TR/SVG/intro.html#MIMEType">SVG MIME type</a> + [[!SVG11] is as follows. + </p> + <ul> + <li>If there is a begin time, seek the document controller to + the begin time at the earliest of two moments: when the document + begins to play or document load. + <p class="note"> + Note that seeking behavior is well-defined even when the + document has yet to start. + </p> + </li> + <li>If there is an end time, set a flag on the controller to say + auto-pause at the given time.</li> + <li>Any calls to seek / pause / play etc. on that controller clear the + flag.</li> + <li>If the controller reaches (or passes) the end time and the flag is + still set, call pause and clear the flag.</li> + </ul> + <p class="todo"> + What happens if the fragment is changed after the document has loaded + </p> + <p class="note"> + Note that media fragments are defined to operate on resources based on + their MIME type. + As a result, temporal addressing may not have any effect for SVG + content that is served in a document with a MIME type other than the + SVG MIME type such as SVG embedded in HTML. + </p> + </section> + </section> + + <section> + <h2>Resources in other documents</h2> + <div class="todo"> + <p> + Need to define the document time used when: + </p> + <ul> + <li>You have an animation element in a separate + document—presumably you should use the document time of the + target elements.</li> + <li>What if you put a filter in a separate document and then pull it + in?</li> + <li>Likewise for clip paths, images referenced by image, iframe, use + etc.</li> + </ul> + </div> + </section> + + <section> + <h2>DOM interfaces</h2> + <section> + <h2>The <code>TimedElement</code> interface</h2> + <p> + <dl title="interface TimedElement : Element" class="idl"> + </dl> + </p> + <div class="issue"> + <p> + Need to add <code>ownerSVGElement</code> from + <code>SVGElement</code> interface? + </p> + <p> + Add other attributes from <code>SVGElement</code> for backwards + compatibility? + </p> + </div> + </section> + <section> + <h2>The <code>AnimationElement</code> interface</h2> + <p> + <dl title="interface AnimationElement : TimedElement" class="idl"> + </dl> + </p> + </section> + <section> + <h2>Reflecting changes to the DOM</h2> + </section> + </section> + </body> +</html> diff --git a/specs/animation-elements/respec/respec-w3c-common-3.1.68.js b/specs/animation-elements/respec/respec-w3c-common-3.1.68.js new file mode 100644 --- /dev/null +++ b/specs/animation-elements/respec/respec-w3c-common-3.1.68.js @@ -0,0 +1,13 @@ +/* ReSpec 3.1.68 - Robin Berjon, http://berjon.com/ (@robinberjon) */ +/* Documentation: http://w3.org/respec/. */ +/* See original source for licenses: https://github.com/darobin/respec. */ +var requirejs,require,define;!function(Z){function H(e){return"[object Function]"===L.call(e)}function I(e){return"[object Array]"===L.call(e)}function y(e,t){if(e){var n;for(n=0;n<e.length&&(!e[n]||!t(e[n],n,e));n+=1);}}function M(e,t){if(e){var n;for(n=e.length-1;n>-1&&(!e[n]||!t(e[n],n,e));n-=1);}}function s(e,t){return ga.call(e,t)}function l(e,t){return s(e,t)&&e[t]}function F(e,t){for(var n in e)if(s(e,n)&&t(e[n],n))break}function Q(e,t,n,r){return t&&F(t,function(t,i){(n||!s(e,i))&&(r&&"string"!=typeof t?(e[i]||(e[i]={}),Q(e[i],t,n,r)):e[i]=t)}),e}function u(e,t){return function(){return t.apply(e,arguments)}}function aa(e){throw e}function ba(e){if(!e)return e;var t=Z;return y(e.split("."),function(e){t=t[e]}),t}function A(e,t,n,r){return t=Error(t+"\nhttp://requirejs.org/docs/errors.html#"+e),t.requireType=e,t.requireModules=r,n&&(t.originalError=n),t}function ha(e){function t(e,t,n){var r,i,s,a,o,c,u,p=t&&t.split("/");r=p;var d=E.map,f=d&&d["*"];if(e&&"."===e.charAt(0))if(t){for(r=l(E.pkgs,t)?p=[t]:p.slice(0,p.length-1),t=e=r.concat(e.split("/")),r=0;t[r];r+=1)if(i=t[r],"."===i)t.splice(r,1),r-=1;else if(".."===i){if(1===r&&(".."===t[2]||".."===t[0]))break;r>0&&(t.splice(r-1,2),r-=2)}r=l(E.pkgs,t=e[0]),e=e.join("/"),r&&e===t+"/"+r.main&&(e=t)}else 0===e.indexOf("./")&&(e=e.substring(2));if(n&&d&&(p||f)){for(t=e.split("/"),r=t.length;r>0;r-=1){if(s=t.slice(0,r).join("/"),p)for(i=p.length;i>0;i-=1)if((n=l(d,p.slice(0,i).join("/")))&&(n=l(n,s))){a=n,o=r;break}if(a)break;!c&&f&&l(f,s)&&(c=l(f,s),u=r)}!a&&c&&(a=c,o=u),a&&(t.splice(0,o,a),e=t.join("/"))}return e}function n(e){z&&y(document.getElementsByTagName("script"),function(t){return t.getAttribute("data-requiremodule")===e&&t.getAttribute("data-requirecontext")===C.contextName?(t.parentNode.removeChild(t),!0):void 0})}function r(e){var t=l(E.paths,e);return t&&I(t)&&1<t.length?(n(e),t.shift(),C.require.undef(e),C.require([e]),!0):void 0}function i(e){var t,n=e?e.indexOf("!"):-1;return n>-1&&(t=e.substring(0,n),e=e.substring(n+1,e.length)),[t,e]}function a(e,n,r,s){var a,o,c=null,u=n?n.name:null,p=e,d=!0,f="";return e||(d=!1,e="_@r"+(_+=1)),e=i(e),c=e[0],e=e[1],c&&(c=t(c,u,s),o=l($,c)),e&&(c?f=o&&o.normalize?o.normalize(e,function(e){return t(e,u,s)}):t(e,u,s):(f=t(e,u,s),e=i(f),c=e[0],f=e[1],r=!0,a=C.nameToUrl(f))),r=!c||o||r?"":"_unnormalized"+(q+=1),{prefix:c,name:f,parentMap:n,unnormalized:!!r,url:a,originalName:p,isDefine:d,id:(c?c+"!"+f:f)+r}}function o(e){var t=e.id,n=l(k,t);return n||(n=k[t]=new C.Module(e)),n}function c(e,t,n){var r=e.id,i=l(k,r);!s($,r)||i&&!i.defineEmitComplete?(i=o(e),i.error&&"error"===t?n(i.error):i.on(t,n)):"defined"===t&&n($[r])}function p(e,t){var n=e.requireModules,r=!1;t?t(e):(y(n,function(t){(t=l(k,t))&&(t.error=e,t.events.error&&(r=!0,t.emit("error",e)))}),r||j.onError(e))}function d(){R.length&&(ia.apply(L,[L.length-1,0].concat(R)),R=[])}function f(e){delete k[e],delete D[e]}function h(e,t,n){var r=e.map.id;e.error?e.emit("error",e.error):(t[r]=!0,y(e.depMaps,function(r,i){var s=r.id,a=l(k,s);a&&!e.depMatched[i]&&!n[s]&&(l(t,s)?(e.defineDep(i,$[s]),e.check()):h(a,t,n))}),n[r]=!0)}function m(){var e,t,i,s,a=(i=1e3*E.waitSeconds)&&C.startTime+i<(new Date).getTime(),o=[],l=[],c=!1,u=!0;if(!x){if(x=!0,F(D,function(i){if(e=i.map,t=e.id,i.enabled&&(e.isDefine||l.push(i),!i.error))if(!i.inited&&a)r(t)?c=s=!0:(o.push(t),n(t));else if(!i.inited&&i.fetched&&e.isDefine&&(c=!0,!e.prefix))return u=!1}),a&&o.length)return i=A("timeout","Load timeout for modules: "+o,null,o),i.contextName=C.contextName,p(i);u&&y(l,function(e){h(e,{},{})}),a&&!s||!c||!z&&!da||T||(T=setTimeout(function(){T=0,m()},50)),x=!1}}function g(e){s($,e[0])||o(a(e[0],null,!0)).init(e[1],e[2])}function b(e){var e=e.currentTarget||e.srcElement,t=C.onScriptLoad;return e.detachEvent&&!W?e.detachEvent("onreadystatechange",t):e.removeEventListener("load",t,!1),t=C.onScriptError,(!e.detachEvent||W)&&e.removeEventListener("error",t,!1),{node:e,id:e&&e.getAttribute("data-requiremodule")}}function v(){var e;for(d();L.length;){if(e=L.shift(),null===e[0])return p(A("mismatch","Mismatched anonymous define() module: "+e[e.length-1]));g(e)}}var x,w,C,S,T,E={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},k={},D={},N={},L=[],$={},M={},_=1,q=1;return S={require:function(e){return e.require?e.require:e.require=C.makeRequire(e.map)},exports:function(e){return e.usingExports=!0,e.map.isDefine?e.exports?e.exports:e.exports=$[e.map.id]={}:void 0},module:function(e){return e.module?e.module:e.module={id:e.map.id,uri:e.map.url,config:function(){var t=l(E.pkgs,e.map.id);return(t?l(E.config,e.map.id+"/"+t.main):l(E.config,e.map.id))||{}},exports:$[e.map.id]}}},w=function(e){this.events=l(N,e.id)||{},this.map=e,this.shim=l(E.shim,e.id),this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},w.prototype={init:function(e,t,n,r){r=r||{},this.inited||(this.factory=t,n?this.on("error",n):this.events.error&&(n=u(this,function(e){this.emit("error",e)})),this.depMaps=e&&e.slice(0),this.errback=n,this.inited=!0,this.ignore=r.ignore,r.enabled||this.enabled?this.enable():this.check())},defineDep:function(e,t){this.depMatched[e]||(this.depMatched[e]=!0,this.depCount-=1,this.depExports[e]=t)},fetch:function(){if(!this.fetched){this.fetched=!0,C.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();C.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],u(this,function(){return e.prefix?this.callPlugin():this.load()}))}},load:function(){var e=this.map.url;M[e]||(M[e]=!0,C.load(this.map.id,e))},check:function(){if(this.enabled&&!this.enabling){var e,t,n=this.map.id;t=this.depExports;var r=this.exports,i=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,1>this.depCount&&!this.defined){if(H(i)){if(this.events.error&&this.map.isDefine||j.onError!==aa)try{r=C.execCb(n,i,t,r)}catch(s){e=s}else r=C.execCb(n,i,t,r);if(this.map.isDefine&&((t=this.module)&&void 0!==t.exports&&t.exports!==this.exports?r=t.exports:void 0===r&&this.usingExports&&(r=this.exports)),e)return e.requireMap=this.map,e.requireModules=this.map.isDefine?[this.map.id]:null,e.requireType=this.map.isDefine?"define":"require",p(this.error=e)}else r=i;this.exports=r,this.map.isDefine&&!this.ignore&&($[n]=r,j.onResourceLoad)&&j.onResourceLoad(C,this.map,this.depMaps),f(n),this.defined=!0}this.defining=!1,this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var e=this.map,n=e.id,r=a(e.prefix);this.depMaps.push(r),c(r,"defined",u(this,function(r){var i,d;d=this.map.name;var h=this.map.parentMap?this.map.parentMap.name:null,m=C.makeRequire(e.parentMap,{enableBuildCallback:!0});this.map.unnormalized?(r.normalize&&(d=r.normalize(d,function(e){return t(e,h,!0)})||""),r=a(e.prefix+"!"+d,this.map.parentMap),c(r,"defined",u(this,function(e){this.init([],function(){return e},null,{enabled:!0,ignore:!0})})),(d=l(k,r.id))&&(this.depMaps.push(r),this.events.error&&d.on("error",u(this,function(e){this.emit("error",e)})),d.enable())):(i=u(this,function(e){this.init([],function(){return e},null,{enabled:!0})}),i.error=u(this,function(e){this.inited=!0,this.error=e,e.requireModules=[n],F(k,function(e){0===e.map.id.indexOf(n+"_unnormalized")&&f(e.map.id)}),p(e)}),i.fromText=u(this,function(t,r){var l=e.name,c=a(l),u=O;r&&(t=r),u&&(O=!1),o(c),s(E.config,n)&&(E.config[l]=E.config[n]);try{j.exec(t)}catch(d){return p(A("fromtexteval","fromText eval for "+n+" failed: "+d,d,[n]))}u&&(O=!0),this.depMaps.push(c),C.completeLoad(l),m([l],i)}),r.load(e.name,m,i,E))})),C.enable(r,this),this.pluginMaps[r.id]=r},enable:function(){D[this.map.id]=this,this.enabling=this.enabled=!0,y(this.depMaps,u(this,function(e,t){var n,r;if("string"==typeof e){if(e=a(e,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[t]=e,n=l(S,e.id))return this.depExports[t]=n(this),void 0;this.depCount+=1,c(e,"defined",u(this,function(e){this.defineDep(t,e),this.check()})),this.errback&&c(e,"error",u(this,this.errback))}n=e.id,r=k[n],!s(S,n)&&r&&!r.enabled&&C.enable(e,this)})),F(this.pluginMaps,u(this,function(e){var t=l(k,e.id);t&&!t.enabled&&C.enable(e,this)})),this.enabling=!1,this.check()},on:function(e,t){var n=this.events[e];n||(n=this.events[e]=[]),n.push(t)},emit:function(e,t){y(this.events[e],function(e){e(t)}),"error"===e&&delete this.events[e]}},C={config:E,contextName:e,registry:k,defined:$,urlFetched:M,defQueue:L,Module:w,makeModuleMap:a,nextTick:j.nextTick,onError:p,configure:function(e){e.baseUrl&&"/"!==e.baseUrl.charAt(e.baseUrl.length-1)&&(e.baseUrl+="/");var t=E.pkgs,n=E.shim,r={paths:!0,config:!0,map:!0};F(e,function(e,t){r[t]?"map"===t?(E.map||(E.map={}),Q(E[t],e,!0,!0)):Q(E[t],e,!0):E[t]=e}),e.shim&&(F(e.shim,function(e,t){I(e)&&(e={deps:e}),!e.exports&&!e.init||e.exportsFn||(e.exportsFn=C.makeShimExports(e)),n[t]=e}),E.shim=n),e.packages&&(y(e.packages,function(e){e="string"==typeof e?{name:e}:e,t[e.name]={name:e.name,location:e.location||e.name,main:(e.main||"main").replace(ja,"").replace(ea,"")}}),E.pkgs=t),F(k,function(e,t){!e.inited&&!e.map.unnormalized&&(e.map=a(t))}),(e.deps||e.callback)&&C.require(e.deps||[],e.callback)},makeShimExports:function(e){return function(){var t;return e.init&&(t=e.init.apply(Z,arguments)),t||e.exports&&ba(e.exports)}},makeRequire:function(n,r){function i(t,l,c){var u,d;return r.enableBuildCallback&&l&&H(l)&&(l.__requireJsBuild=!0),"string"==typeof t?H(l)?p(A("requireargs","Invalid require call"),c):n&&s(S,t)?S[t](k[n.id]):j.get?j.get(C,t,n,i):(u=a(t,n,!1,!0),u=u.id,s($,u)?$[u]:p(A("notloaded",'Module name "'+u+'" has not been loaded yet for context: '+e+(n?"":". Use require([])")))):(v(),C.nextTick(function(){v(),d=o(a(null,n)),d.skipMap=r.skipMap,d.init(t,l,c,{enabled:!0}),m()}),i)}return r=r||{},Q(i,{isBrowser:z,toUrl:function(e){var r,i=e.lastIndexOf("."),s=e.split("/")[0];return-1!==i&&("."!==s&&".."!==s||i>1)&&(r=e.substring(i,e.length),e=e.substring(0,i)),C.nameToUrl(t(e,n&&n.id,!0),r,!0)},defined:function(e){return s($,a(e,n,!1,!0).id)},specified:function(e){return e=a(e,n,!1,!0).id,s($,e)||s(k,e)}}),n||(i.undef=function(e){d();var t=a(e,n,!0),r=l(k,e);delete $[e],delete M[t.url],delete N[e],r&&(r.events.defined&&(N[e]=r.events),f(e))}),i},enable:function(e){l(k,e.id)&&o(e).enable()},completeLoad:function(e){var t,n,i=l(E.shim,e)||{},a=i.exports;for(d();L.length;){if(n=L.shift(),null===n[0]){if(n[0]=e,t)break;t=!0}else n[0]===e&&(t=!0);g(n)}if(n=l(k,e),!t&&!s($,e)&&n&&!n.inited){if(E.enforceDefine&&(!a||!ba(a)))return r(e)?void 0:p(A("nodefine","No define call for "+e,null,[e]));g([e,i.deps||[],i.exportsFn])}m()},nameToUrl:function(e,t,n){var r,i,s,a,o,c;if(j.jsExtRegExp.test(e))a=e+(t||"");else{for(r=E.paths,i=E.pkgs,a=e.split("/"),o=a.length;o>0;o-=1){if(c=a.slice(0,o).join("/"),s=l(i,c),c=l(r,c)){I(c)&&(c=c[0]),a.splice(0,o,c);break}if(s){e=e===s.name?s.location+"/"+s.main:s.location,a.splice(0,o,e);break}}a=a.join("/"),a+=t||(/\?/.test(a)||n?"":".js"),a=("/"===a.charAt(0)||a.match(/^[\w\+\.\-]+:/)?"":E.baseUrl)+a}return E.urlArgs?a+((-1===a.indexOf("?")?"?":"&")+E.urlArgs):a},load:function(e,t){j.load(C,e,t)},execCb:function(e,t,n,r){return t.apply(r,n)},onScriptLoad:function(e){("load"===e.type||ka.test((e.currentTarget||e.srcElement).readyState))&&(P=null,e=b(e),C.completeLoad(e.id))},onScriptError:function(e){var t=b(e);return r(t.id)?void 0:p(A("scripterror","Script error for: "+t.id,e,[t.id]))}},C.require=C.makeRequire(),C}var j,w,x,C,J,D,P,K,q,fa,la=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,ma=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,ea=/\.js$/,ja=/^\.\//;w=Object.prototype;var L=w.toString,ga=w.hasOwnProperty,ia=Array.prototype.splice,z=!("undefined"==typeof window||!navigator||!window.document),da=!z&&"undefined"!=typeof importScripts,ka=z&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,W="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),E={},t={},R=[],O=!1;if("undefined"==typeof define){if("undefined"!=typeof requirejs){if(H(requirejs))return;t=requirejs,requirejs=void 0}"undefined"!=typeof require&&!H(require)&&(t=require,require=void 0),j=requirejs=function(e,t,n,r){var i,s="_";return!I(e)&&"string"!=typeof e&&(i=e,I(t)?(e=t,t=n,n=r):e=[]),i&&i.context&&(s=i.context),(r=l(E,s))||(r=E[s]=j.s.newContext(s)),i&&r.configure(i),r.require(e,t,n)},j.config=function(e){return j(e)},j.nextTick="undefined"!=typeof setTimeout?function(e){setTimeout(e,4)}:function(e){e()},require||(require=j),j.version="2.1.8",j.jsExtRegExp=/^\/|:|\?|\.js$/,j.isBrowser=z,w=j.s={contexts:E,newContext:ha},j({}),y(["toUrl","undef","defined","specified"],function(e){j[e]=function(){var t=E._;return t.require[e].apply(t,arguments)}}),z&&(x=w.head=document.getElementsByTagName("head")[0],C=document.getElementsByTagName("base")[0])&&(x=w.head=C.parentNode),j.onError=aa,j.createNode=function(e){var t=e.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return t.type=e.scriptType||"text/javascript",t.charset="utf-8",t.async=!0,t},j.load=function(e,t,n){var r=e&&e.config||{};if(z)return r=j.createNode(r,t,n),r.setAttribute("data-requirecontext",e.contextName),r.setAttribute("data-requiremodule",t),!r.attachEvent||r.attachEvent.toString&&0>r.attachEvent.toString().indexOf("[native code")||W?(r.addEventListener("load",e.onScriptLoad,!1),r.addEventListener("error",e.onScriptError,!1)):(O=!0,r.attachEvent("onreadystatechange",e.onScriptLoad)),r.src=n,K=r,C?x.insertBefore(r,C):x.appendChild(r),K=null,r;if(da)try{importScripts(n),e.completeLoad(t)}catch(i){e.onError(A("importscripts","importScripts failed for "+t+" at "+n,i,[t]))}},z&&M(document.getElementsByTagName("script"),function(e){return x||(x=e.parentNode),(J=e.getAttribute("data-main"))?(q=J,t.baseUrl||(D=q.split("/"),q=D.pop(),fa=D.length?D.join("/")+"/":"./",t.baseUrl=fa),q=q.replace(ea,""),j.jsExtRegExp.test(q)&&(q=J),t.deps=t.deps?t.deps.concat(q):[q],!0):void 0}),define=function(e,t,n){var r,i;"string"!=typeof e&&(n=t,t=e,e=null),I(t)||(n=t,t=null),!t&&H(n)&&(t=[],n.length&&(n.toString().replace(la,"").replace(ma,function(e,n){t.push(n)}),t=(1===n.length?["require"]:["require","exports","module"]).concat(t))),O&&((r=K)||(P&&"interactive"===P.readyState||M(document.getElementsByTagName("script"),function(e){return"interactive"===e.readyState?P=e:void 0}),r=P),r&&(e||(e=r.getAttribute("data-requiremodule")),i=E[r.getAttribute("data-requirecontext")])),(i?i.defQueue:R).push([e,t,n])},define.amd={jQuery:!0},j.exec=function(b){return eval(b)},j(t)}}(this),define("requireLib",function(){}),define("domReady",[],function(){function e(e){var t;for(t=0;t<e.length;t+=1)e[t](c)}function t(){var t=u;l&&t.length&&(u=[],e(t))}function n(){l||(l=!0,a&&clearInterval(a),t())}function r(e){return l?e(c):u.push(e),r}var i,s,a,o="undefined"!=typeof window&&window.document,l=!o,c=o?document:null,u=[];if(o){if(document.addEventListener)document.addEventListener("DOMContentLoaded",n,!1),window.addEventListener("load",n,!1);else if(window.attachEvent){window.attachEvent("onload",n),s=document.createElement("div");try{i=null===window.frameElement}catch(p){}s.doScroll&&i&&window.external&&(a=setInterval(function(){try{s.doScroll(),n()}catch(e){}},30))}"complete"===document.readyState&&n()}return r.version="2.0.1",r.load=function(e,t,n,i){i.isBuild?n(null):r(n)},r}),function(e,t){function n(e){var t=e.length,n=st.type(e);return st.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e){var t=ht[e]={};return st.each(e.match(ot)||[],function(e,n){t[n]=!0}),t}function i(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=st.expando+Math.random()}function s(e,n,r){var i;if(r===t&&1===e.nodeType)if(i="data-"+n.replace(vt,"-$1").toLowerCase(),r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:bt.test(r)?JSON.parse(r):r}catch(s){}mt.set(e,n,r)}else r=t;return r}function a(){return!0}function o(){return!1}function l(){try{return z.activeElement}catch(e){}}function c(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function u(e,t,n){if(st.isFunction(t))return st.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return st.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(Nt.test(t))return st.filter(t,e,n);t=st.filter(t,e)}return st.grep(e,function(e){return tt.call(t,e)>=0!==n})}function p(e,t){return st.nodeName(e,"table")&&st.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function d(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function f(e){var t=Ft.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function h(e,t){for(var n=e.length,r=0;n>r;r++)gt.set(e[r],"globalEval",!t||gt.get(t[r],"globalEval"))}function m(e,t){var n,r,i,s,a,o,l,c;if(1===t.nodeType){if(gt.hasData(e)&&(s=gt.access(e),a=gt.set(t,s),c=s.events)){delete a.handle,a.events={};for(i in c)for(n=0,r=c[i].length;r>n;n++)st.event.add(t,i,c[i][n])}mt.hasData(e)&&(o=mt.access(e),l=st.extend({},o),mt.set(t,l))}}function g(e,n){var r=e.getElementsByTagName?e.getElementsByTagName(n||"*"):e.querySelectorAll?e.querySelectorAll(n||"*"):[];return n===t||n&&st.nodeName(e,n)?st.merge([e],r):r}function b(e,t){var n=t.nodeName.toLowerCase();"input"===n&&Mt.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function v(e,t){if(t in e)return t;for(var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=Jt.length;i--;)if(t=Jt[i]+n,t in e)return t;return r}function y(e,t){return e=t||e,"none"===st.css(e,"display")||!st.contains(e.ownerDocument,e)}function x(t){return e.getComputedStyle(t,null)}function w(e,t){for(var n,r,i,s=[],a=0,o=e.length;o>a;a++)r=e[a],r.style&&(s[a]=gt.get(r,"olddisplay"),n=r.style.display,t?(s[a]||"none"!==n||(r.style.display=""),""===r.style.display&&y(r)&&(s[a]=gt.access(r,"olddisplay",E(r.nodeName)))):s[a]||(i=y(r),(n&&"none"!==n||!i)&>.set(r,"olddisplay",i?n:st.css(r,"display"))));for(a=0;o>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?s[a]||"":"none"));return e}function C(e,t,n){var r=Gt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function S(e,t,n,r,i){for(var s=n===(r?"border":"content")?4:"width"===t?1:0,a=0;4>s;s+=2)"margin"===n&&(a+=st.css(e,n+Zt[s],!0,i)),r?("content"===n&&(a-=st.css(e,"padding"+Zt[s],!0,i)),"margin"!==n&&(a-=st.css(e,"border"+Zt[s]+"Width",!0,i))):(a+=st.css(e,"padding"+Zt[s],!0,i),"padding"!==n&&(a+=st.css(e,"border"+Zt[s]+"Width",!0,i)));return a}function T(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,s=x(e),a=st.support.boxSizing&&"border-box"===st.css(e,"boxSizing",!1,s);if(0>=i||null==i){if(i=Bt(e,t,s),(0>i||null==i)&&(i=e.style[t]),Vt.test(i))return i;r=a&&(st.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+S(e,t,n||(a?"border":"content"),r,s)+"px"}function E(e){var t=z,n=Yt[e];return n||(n=k(e,t),"none"!==n&&n||(Wt=(Wt||st("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Wt[0].contentWindow||Wt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=k(e,t),Wt.detach()),Yt[e]=n),n}function k(e,t){var n=st(t.createElement(e)).appendTo(t.body),r=st.css(n[0],"display");return n.remove(),r}function D(e,t,n,r){var i;if(st.isArray(t))st.each(t,function(t,i){n||tn.test(e)?r(e,i):D(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==st.type(t))r(e,t);else for(i in t)D(e+"["+i+"]",t[i],n,r)}function N(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,s=t.toLowerCase().match(ot)||[];if(st.isFunction(n))for(;r=s[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function A(e,n,r,i){function s(l){var c;return a[l]=!0,st.each(e[l]||[],function(e,l){var u=l(n,r,i);return"string"!=typeof u||o||a[u]?o?!(c=u):t:(n.dataTypes.unshift(u),s(u),!1)}),c}var a={},o=e===yn;return s(n.dataTypes[0])||!a["*"]&&s("*")}function R(e,n){var r,i,s=st.ajaxSettings.flatOptions||{};for(r in n)n[r]!==t&&((s[r]?e:i||(i={}))[r]=n[r]);return i&&st.extend(!0,e,i),e}function L(e,n,r){for(var i,s,a,o,l=e.contents,c=e.dataTypes;"*"===c[0];)c.shift(),i===t&&(i=e.mimeType||n.getResponseHeader("Content-Type"));if(i)for(s in l)if(l[s]&&l[s].test(i)){c.unshift(s);break}if(c[0]in r)a=c[0];else{for(s in r){if(!c[0]||e.converters[s+" "+c[0]]){a=s;break}o||(o=s)}a=a||o}return a?(a!==c[0]&&c.unshift(a),r[a]):t}function j(e,t,n,r){var i,s,a,o,l,c={},u=e.dataTypes.slice();if(u[1])for(a in e.converters)c[a.toLowerCase()]=e.converters[a];for(s=u.shift();s;)if(e.responseFields[s]&&(n[e.responseFields[s]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=s,s=u.shift())if("*"===s)s=l;else if("*"!==l&&l!==s){if(a=c[l+" "+s]||c["* "+s],!a)for(i in c)if(o=i.split(" "),o[1]===s&&(a=c[l+" "+o[0]]||c["* "+o[0]])){a===!0?a=c[i]:c[i]!==!0&&(s=o[0],u.unshift(o[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+s}}}return{state:"success",data:t}}function I(){return setTimeout(function(){Nn=t}),Nn=st.now()}function P(e,t,n){for(var r,i=(Pn[t]||[]).concat(Pn["*"]),s=0,a=i.length;a>s;s++)if(r=i[s].call(n,t,e))return r}function $(e,t,n){var r,i,s=0,a=In.length,o=st.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;for(var t=Nn||I(),n=Math.max(0,c.startTime+c.duration-t),r=n/c.duration||0,s=1-r,a=0,l=c.tweens.length;l>a;a++)c.tweens[a].run(s);return o.notifyWith(e,[c,s,n]),1>s&&l?n:(o.resolveWith(e,[c]),!1)},c=o.promise({elem:e,props:st.extend({},t),opts:st.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Nn||I(),duration:n.duration,tweens:[],createTween:function(t,n){var r=st.Tween(e,c.opts,t,n,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(r),r},stop:function(t){var n=0,r=t?c.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)c.tweens[n].run(1);return t?o.resolveWith(e,[c,t]):o.rejectWith(e,[c,t]),this}}),u=c.props;for(M(u,c.opts.specialEasing);a>s;s++)if(r=In[s].call(c,e,u,c.opts))return r;return st.map(u,P,c),st.isFunction(c.opts.start)&&c.opts.start.call(e,c),st.fx.timer(st.extend(l,{elem:e,anim:c,queue:c.opts.queue})),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always)}function M(e,t){var n,r,i,s,a;for(n in e)if(r=st.camelCase(n),i=t[r],s=e[n],st.isArray(s)&&(i=s[1],s=e[n]=s[0]),n!==r&&(e[r]=s,delete e[n]),a=st.cssHooks[r],a&&"expand"in a){s=a.expand(s),delete e[r];for(n in s)n in e||(e[n]=s[n],t[n]=i)}else t[r]=i}function H(e,n,r){var i,s,a,o,l,c,u=this,p={},d=e.style,f=e.nodeType&&y(e),h=gt.get(e,"fxshow");r.queue||(l=st._queueHooks(e,"fx"),null==l.unqueued&&(l.unqueued=0,c=l.empty.fire,l.empty.fire=function(){l.unqueued||c()}),l.unqueued++,u.always(function(){u.always(function(){l.unqueued--,st.queue(e,"fx").length||l.empty.fire()})})),1===e.nodeType&&("height"in n||"width"in n)&&(r.overflow=[d.overflow,d.overflowX,d.overflowY],"inline"===st.css(e,"display")&&"none"===st.css(e,"float")&&(d.display="inline-block")),r.overflow&&(d.overflow="hidden",u.always(function(){d.overflow=r.overflow[0],d.overflowX=r.overflow[1],d.overflowY=r.overflow[2]}));for(i in n)if(s=n[i],Rn.exec(s)){if(delete n[i],a=a||"toggle"===s,s===(f?"hide":"show")){if("show"!==s||!h||h[i]===t)continue;f=!0}p[i]=h&&h[i]||st.style(e,i)}if(!st.isEmptyObject(p)){h?"hidden"in h&&(f=h.hidden):h=gt.access(e,"fxshow",{}),a&&(h.hidden=!f),f?st(e).show():u.done(function(){st(e).hide()}),u.done(function(){var t;gt.remove(e,"fxshow");for(t in p)st.style(e,t,p[t])});for(i in p)o=P(f?h[i]:0,i,u),i in h||(h[i]=o.start,f&&(o.end=o.start,o.start="width"===i||"height"===i?1:0))}}function O(e,t,n,r,i){return new O.prototype.init(e,t,n,r,i)}function F(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function _(e){return st.isWindow(e)?e:9===e.nodeType&&e.defaultView}var q,B,W=typeof t,U=e.location,z=e.document,G=z.documentElement,V=e.jQuery,X=e.$,Y={},K=[],Q="2.0.3",Z=K.concat,J=K.push,et=K.slice,tt=K.indexOf,nt=Y.toString,rt=Y.hasOwnProperty,it=Q.trim,st=function(e,t){return new st.fn.init(e,t,q)},at=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ot=/\S+/g,lt=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ct=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,ut=/^-ms-/,pt=/-([\da-z])/gi,dt=function(e,t){return t.toUpperCase()},ft=function(){z.removeEventListener("DOMContentLoaded",ft,!1),e.removeEventListener("load",ft,!1),st.ready()};st.fn=st.prototype={jquery:Q,constructor:st,init:function(e,n,r){var i,s;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:lt.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof st?n[0]:n,st.merge(this,st.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:z,!0)),ct.test(i[1])&&st.isPlainObject(n))for(i in n)st.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}return s=z.getElementById(i[2]),s&&s.parentNode&&(this.length=1,this[0]=s),this.context=z,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):st.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),st.makeArray(e,this))},selector:"",length:0,toArray:function(){return et.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=st.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return st.each(this,e,t)},ready:function(e){return st.ready.promise().done(e),this},slice:function(){return this.pushStack(et.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(st.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:J,sort:[].sort,splice:[].splice},st.fn.init.prototype=st.fn,st.extend=st.fn.extend=function(){var e,n,r,i,s,a,o=arguments[0]||{},l=1,c=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},l=2),"object"==typeof o||st.isFunction(o)||(o={}),c===l&&(o=this,--l);c>l;l++)if(null!=(e=arguments[l]))for(n in e)r=o[n],i=e[n],o!==i&&(u&&i&&(st.isPlainObject(i)||(s=st.isArray(i)))?(s?(s=!1,a=r&&st.isArray(r)?r:[]):a=r&&st.isPlainObject(r)?r:{},o[n]=st.extend(u,a,i)):i!==t&&(o[n]=i));return o},st.extend({expando:"jQuery"+(Q+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===st&&(e.$=X),t&&e.jQuery===st&&(e.jQuery=V),st},isReady:!1,readyWait:1,holdReady:function(e){e?st.readyWait++:st.ready(!0)},ready:function(e){(e===!0?--st.readyWait:st.isReady)||(st.isReady=!0,e!==!0&&--st.readyWait>0||(B.resolveWith(z,[st]),st.fn.trigger&&st(z).trigger("ready").off("ready")))},isFunction:function(e){return"function"===st.type(e)},isArray:Array.isArray,isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?Y[nt.call(e)]||"object":typeof e},isPlainObject:function(e){if("object"!==st.type(e)||e.nodeType||st.isWindow(e))return!1;try{if(e.constructor&&!rt.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||z;var r=ct.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=st.buildFragment([e],t,i),i&&st(i).remove(),st.merge([],r.childNodes))},parseJSON:JSON.parse,parseXML:function(e){var n,r;if(!e||"string"!=typeof e)return null;try{r=new DOMParser,n=r.parseFromString(e,"text/xml")}catch(i){n=t}return(!n||n.getElementsByTagName("parsererror").length)&&st.error("Invalid XML: "+e),n},noop:function(){},globalEval:function(e){var t,n=eval;e=st.trim(e),e&&(1===e.indexOf("use strict")?(t=z.createElement("script"),t.text=e,z.head.appendChild(t).parentNode.removeChild(t)):n(e))},camelCase:function(e){return e.replace(ut,"ms-").replace(pt,dt)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,r){var i,s=0,a=e.length,o=n(e);if(r){if(o)for(;a>s&&(i=t.apply(e[s],r),i!==!1);s++);else for(s in e)if(i=t.apply(e[s],r),i===!1)break}else if(o)for(;a>s&&(i=t.call(e[s],s,e[s]),i!==!1);s++);else for(s in e)if(i=t.call(e[s],s,e[s]),i===!1)break;return e},trim:function(e){return null==e?"":it.call(e)},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?st.merge(r,"string"==typeof e?[e]:e):J.call(r,e)),r},inArray:function(e,t,n){return null==t?-1:tt.call(t,e,n)},merge:function(e,n){var r=n.length,i=e.length,s=0;if("number"==typeof r)for(;r>s;s++)e[i++]=n[s];else for(;n[s]!==t;)e[i++]=n[s++];return e.length=i,e},grep:function(e,t,n){var r,i=[],s=0,a=e.length;for(n=!!n;a>s;s++)r=!!t(e[s],s),n!==r&&i.push(e[s]);return i},map:function(e,t,r){var i,s=0,a=e.length,o=n(e),l=[];if(o)for(;a>s;s++)i=t(e[s],s,r),null!=i&&(l[l.length]=i);else for(s in e)i=t(e[s],s,r),null!=i&&(l[l.length]=i);return Z.apply([],l)},guid:1,proxy:function(e,n){var r,i,s;return"string"==typeof n&&(r=e[n],n=e,e=r),st.isFunction(e)?(i=et.call(arguments,2),s=function(){return e.apply(n||this,i.concat(et.call(arguments)))},s.guid=e.guid=e.guid||st.guid++,s):t},access:function(e,n,r,i,s,a,o){var l=0,c=e.length,u=null==r;if("object"===st.type(r)){s=!0;for(l in r)st.access(e,n,l,r[l],!0,a,o)}else if(i!==t&&(s=!0,st.isFunction(i)||(o=!0),u&&(o?(n.call(e,i),n=null):(u=n,n=function(e,t,n){return u.call(st(e),n)})),n))for(;c>l;l++)n(e[l],r,o?i:i.call(e[l],l,n(e[l],r)));return s?e:u?n.call(e):c?n(e[0],r):a},now:Date.now,swap:function(e,t,n,r){var i,s,a={};for(s in t)a[s]=e.style[s],e.style[s]=t[s];i=n.apply(e,r||[]);for(s in t)e.style[s]=a[s];return i}}),st.ready.promise=function(t){return B||(B=st.Deferred(),"complete"===z.readyState?setTimeout(st.ready):(z.addEventListener("DOMContentLoaded",ft,!1),e.addEventListener("load",ft,!1))),B.promise(t)},st.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){Y["[object "+t+"]"]=t.toLowerCase()}),q=st(z),function(e,t){function n(e,t,n,r){var i,s,a,o,l,c,u,p,h,m;if((t?t.ownerDocument||t:_)!==j&&L(t),t=t||j,n=n||[],!e||"string"!=typeof e)return n;if(1!==(o=t.nodeType)&&9!==o)return[];if(P&&!r){if(i=yt.exec(e))if(a=i[1]){if(9===o){if(s=t.getElementById(a),!s||!s.parentNode)return n;if(s.id===a)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(a))&&O(t,s)&&s.id===a)return n.push(s),n}else{if(i[2])return et.apply(n,t.getElementsByTagName(e)),n;if((a=i[3])&&S.getElementsByClassName&&t.getElementsByClassName)return et.apply(n,t.getElementsByClassName(a)),n}if(S.qsa&&(!$||!$.test(e))){if(p=u=F,h=t,m=9===o&&e,1===o&&"object"!==t.nodeName.toLowerCase()){for(c=d(e),(u=t.getAttribute("id"))?p=u.replace(Ct,"\\$&"):t.setAttribute("id",p),p="[id='"+p+"'] ",l=c.length;l--;)c[l]=p+f(c[l]);h=ft.test(e)&&t.parentNode||t,m=c.join(",")}if(m)try{return et.apply(n,h.querySelectorAll(m)),n}catch(g){}finally{u||t.removeAttribute("id")}}}return w(e.replace(ut,"$1"),t,n,r)}function r(){function e(n,r){return t.push(n+=" ")>E.cacheLength&&delete e[t.shift()],e[n]=r}var t=[];return e}function i(e){return e[F]=!0,e}function s(e){var t=j.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null +}}function a(e,t){for(var n=e.split("|"),r=e.length;r--;)E.attrHandle[n[r]]=t}function o(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||Y)-(~e.sourceIndex||Y);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function l(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function c(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function u(e){return i(function(t){return t=+t,i(function(n,r){for(var i,s=e([],n.length,t),a=s.length;a--;)n[i=s[a]]&&(n[i]=!(r[i]=n[i]))})})}function p(){}function d(e,t){var r,i,s,a,o,l,c,u=U[e+" "];if(u)return t?0:u.slice(0);for(o=e,l=[],c=E.preFilter;o;){(!r||(i=pt.exec(o)))&&(i&&(o=o.slice(i[0].length)||o),l.push(s=[])),r=!1,(i=dt.exec(o))&&(r=i.shift(),s.push({value:r,type:i[0].replace(ut," ")}),o=o.slice(r.length));for(a in E.filter)!(i=bt[a].exec(o))||c[a]&&!(i=c[a](i))||(r=i.shift(),s.push({value:r,type:a,matches:i}),o=o.slice(r.length));if(!r)break}return t?o.length:o?n.error(e):U(e,l).slice(0)}function f(e){for(var t=0,n=e.length,r="";n>t;t++)r+=e[t].value;return r}function h(e,t,n){var r=t.dir,i=n&&"parentNode"===r,s=B++;return t.first?function(t,n,s){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,s)}:function(t,n,a){var o,l,c,u=q+" "+s;if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i)if(c=t[F]||(t[F]={}),(l=c[r])&&l[0]===u){if((o=l[1])===!0||o===T)return o===!0}else if(l=c[r]=[u],l[1]=e(t,n,a)||T,l[1]===!0)return!0}}function m(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function g(e,t,n,r,i){for(var s,a=[],o=0,l=e.length,c=null!=t;l>o;o++)(s=e[o])&&(!n||n(s,r,i))&&(a.push(s),c&&t.push(o));return a}function b(e,t,n,r,s,a){return r&&!r[F]&&(r=b(r)),s&&!s[F]&&(s=b(s,a)),i(function(i,a,o,l){var c,u,p,d=[],f=[],h=a.length,m=i||x(t||"*",o.nodeType?[o]:o,[]),b=!e||!i&&t?m:g(m,d,e,o,l),v=n?s||(i?e:h||r)?[]:a:b;if(n&&n(b,v,o,l),r)for(c=g(v,f),r(c,[],o,l),u=c.length;u--;)(p=c[u])&&(v[f[u]]=!(b[f[u]]=p));if(i){if(s||e){if(s){for(c=[],u=v.length;u--;)(p=v[u])&&c.push(b[u]=p);s(null,v=[],c,l)}for(u=v.length;u--;)(p=v[u])&&(c=s?nt.call(i,p):d[u])>-1&&(i[c]=!(a[c]=p))}}else v=g(v===a?v.splice(h,v.length):v),s?s(null,a,v,l):et.apply(a,v)})}function v(e){for(var t,n,r,i=e.length,s=E.relative[e[0].type],a=s||E.relative[" "],o=s?1:0,l=h(function(e){return e===t},a,!0),c=h(function(e){return nt.call(t,e)>-1},a,!0),u=[function(e,n,r){return!s&&(r||n!==A)||((t=n).nodeType?l(e,n,r):c(e,n,r))}];i>o;o++)if(n=E.relative[e[o].type])u=[h(m(u),n)];else{if(n=E.filter[e[o].type].apply(null,e[o].matches),n[F]){for(r=++o;i>r&&!E.relative[e[r].type];r++);return b(o>1&&m(u),o>1&&f(e.slice(0,o-1).concat({value:" "===e[o-2].type?"*":""})).replace(ut,"$1"),n,r>o&&v(e.slice(o,r)),i>r&&v(e=e.slice(r)),i>r&&f(e))}u.push(n)}return m(u)}function y(e,t){var r=0,s=t.length>0,a=e.length>0,o=function(i,o,l,c,u){var p,d,f,h=[],m=0,b="0",v=i&&[],y=null!=u,x=A,w=i||a&&E.find.TAG("*",u&&o.parentNode||o),C=q+=null==x?1:Math.random()||.1;for(y&&(A=o!==j&&o,T=r);null!=(p=w[b]);b++){if(a&&p){for(d=0;f=e[d++];)if(f(p,o,l)){c.push(p);break}y&&(q=C,T=++r)}s&&((p=!f&&p)&&m--,i&&v.push(p))}if(m+=b,s&&b!==m){for(d=0;f=t[d++];)f(v,h,o,l);if(i){if(m>0)for(;b--;)v[b]||h[b]||(h[b]=Z.call(c));h=g(h)}et.apply(c,h),y&&!i&&h.length>0&&m+t.length>1&&n.uniqueSort(c)}return y&&(q=C,A=x),v};return s?i(o):o}function x(e,t,r){for(var i=0,s=t.length;s>i;i++)n(e,t[i],r);return r}function w(e,t,n,r){var i,s,a,o,l,c=d(e);if(!r&&1===c.length){if(s=c[0]=c[0].slice(0),s.length>2&&"ID"===(a=s[0]).type&&S.getById&&9===t.nodeType&&P&&E.relative[s[1].type]){if(t=(E.find.ID(a.matches[0].replace(St,Tt),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}for(i=bt.needsContext.test(e)?0:s.length;i--&&(a=s[i],!E.relative[o=a.type]);)if((l=E.find[o])&&(r=l(a.matches[0].replace(St,Tt),ft.test(s[0].type)&&t.parentNode||t))){if(s.splice(i,1),e=r.length&&f(s),!e)return et.apply(n,r),n;break}}return N(e,c)(r,t,!P,n,ft.test(e)),n}var C,S,T,E,k,D,N,A,R,L,j,I,P,$,M,H,O,F="sizzle"+-new Date,_=e.document,q=0,B=0,W=r(),U=r(),z=r(),G=!1,V=function(e,t){return e===t?(G=!0,0):0},X=typeof t,Y=1<<31,K={}.hasOwnProperty,Q=[],Z=Q.pop,J=Q.push,et=Q.push,tt=Q.slice,nt=Q.indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(this[t]===e)return t;return-1},rt="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",it="[\\x20\\t\\r\\n\\f]",at="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ot=at.replace("w","w#"),lt="\\["+it+"*("+at+")"+it+"*(?:([*^$|!~]?=)"+it+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ot+")|)|)"+it+"*\\]",ct=":("+at+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+lt.replace(3,8)+")*)|.*)\\)|)",ut=RegExp("^"+it+"+|((?:^|[^\\\\])(?:\\\\.)*)"+it+"+$","g"),pt=RegExp("^"+it+"*,"+it+"*"),dt=RegExp("^"+it+"*([>+~]|"+it+")"+it+"*"),ft=RegExp(it+"*[+~]"),ht=RegExp("="+it+"*([^\\]'\"]*)"+it+"*\\]","g"),mt=RegExp(ct),gt=RegExp("^"+ot+"$"),bt={ID:RegExp("^#("+at+")"),CLASS:RegExp("^\\.("+at+")"),TAG:RegExp("^("+at.replace("w","w*")+")"),ATTR:RegExp("^"+lt),PSEUDO:RegExp("^"+ct),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+it+"*(even|odd|(([+-]|)(\\d*)n|)"+it+"*(?:([+-]|)"+it+"*(\\d+)|))"+it+"*\\)|)","i"),bool:RegExp("^(?:"+rt+")$","i"),needsContext:RegExp("^"+it+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+it+"*((?:-\\d)?\\d*)"+it+"*\\)|)(?=[^-]|$)","i")},vt=/^[^{]+\{\s*\[native \w/,yt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,xt=/^(?:input|select|textarea|button)$/i,wt=/^h\d$/i,Ct=/'|\\/g,St=RegExp("\\\\([\\da-f]{1,6}"+it+"?|("+it+")|.)","ig"),Tt=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{et.apply(Q=tt.call(_.childNodes),_.childNodes),Q[_.childNodes.length].nodeType}catch(Et){et={apply:Q.length?function(e,t){J.apply(e,tt.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}D=n.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},S=n.support={},L=n.setDocument=function(e){var n=e?e.ownerDocument||e:_,r=n.defaultView;return n!==j&&9===n.nodeType&&n.documentElement?(j=n,I=n.documentElement,P=!D(n),r&&r.attachEvent&&r!==r.top&&r.attachEvent("onbeforeunload",function(){L()}),S.attributes=s(function(e){return e.className="i",!e.getAttribute("className")}),S.getElementsByTagName=s(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),S.getElementsByClassName=s(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),S.getById=s(function(e){return I.appendChild(e).id=F,!n.getElementsByName||!n.getElementsByName(F).length}),S.getById?(E.find.ID=function(e,t){if(typeof t.getElementById!==X&&P){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},E.filter.ID=function(e){var t=e.replace(St,Tt);return function(e){return e.getAttribute("id")===t}}):(delete E.find.ID,E.filter.ID=function(e){var t=e.replace(St,Tt);return function(e){var n=typeof e.getAttributeNode!==X&&e.getAttributeNode("id");return n&&n.value===t}}),E.find.TAG=S.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==X?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,s=t.getElementsByTagName(e);if("*"===e){for(;n=s[i++];)1===n.nodeType&&r.push(n);return r}return s},E.find.CLASS=S.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==X&&P?n.getElementsByClassName(e):t},M=[],$=[],(S.qsa=vt.test(n.querySelectorAll))&&(s(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||$.push("\\["+it+"*(?:value|"+rt+")"),e.querySelectorAll(":checked").length||$.push(":checked")}),s(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&$.push("[*^$]="+it+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||$.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),$.push(",.*:")})),(S.matchesSelector=vt.test(H=I.webkitMatchesSelector||I.mozMatchesSelector||I.oMatchesSelector||I.msMatchesSelector))&&s(function(e){S.disconnectedMatch=H.call(e,"div"),H.call(e,"[s!='']:x"),M.push("!=",ct)}),$=$.length&&RegExp($.join("|")),M=M.length&&RegExp(M.join("|")),O=vt.test(I.contains)||I.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},V=I.compareDocumentPosition?function(e,t){if(e===t)return G=!0,0;var r=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return r?1&r||!S.sortDetached&&t.compareDocumentPosition(e)===r?e===n||O(_,e)?-1:t===n||O(_,t)?1:R?nt.call(R,e)-nt.call(R,t):0:4&r?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,s=e.parentNode,a=t.parentNode,l=[e],c=[t];if(e===t)return G=!0,0;if(!s||!a)return e===n?-1:t===n?1:s?-1:a?1:R?nt.call(R,e)-nt.call(R,t):0;if(s===a)return o(e,t);for(r=e;r=r.parentNode;)l.unshift(r);for(r=t;r=r.parentNode;)c.unshift(r);for(;l[i]===c[i];)i++;return i?o(l[i],c[i]):l[i]===_?-1:c[i]===_?1:0},n):j},n.matches=function(e,t){return n(e,null,null,t)},n.matchesSelector=function(e,t){if((e.ownerDocument||e)!==j&&L(e),t=t.replace(ht,"='$1']"),!(!S.matchesSelector||!P||M&&M.test(t)||$&&$.test(t)))try{var r=H.call(e,t);if(r||S.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return n(t,j,null,[e]).length>0},n.contains=function(e,t){return(e.ownerDocument||e)!==j&&L(e),O(e,t)},n.attr=function(e,n){(e.ownerDocument||e)!==j&&L(e);var r=E.attrHandle[n.toLowerCase()],i=r&&K.call(E.attrHandle,n.toLowerCase())?r(e,n,!P):t;return i===t?S.attributes||!P?e.getAttribute(n):(i=e.getAttributeNode(n))&&i.specified?i.value:null:i},n.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},n.uniqueSort=function(e){var t,n=[],r=0,i=0;if(G=!S.detectDuplicates,R=!S.sortStable&&e.slice(0),e.sort(V),G){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return e},k=n.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=k(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=k(t);return n},E=n.selectors={cacheLength:50,createPseudo:i,match:bt,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(St,Tt),e[3]=(e[4]||e[5]||"").replace(St,Tt),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||n.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&n.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return bt.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&mt.test(r)&&(n=d(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(St,Tt).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=W[e+" "];return t||(t=RegExp("(^|"+it+")"+e+"("+it+"|$)"))&&W(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==X&&e.getAttribute("class")||"")})},ATTR:function(e,t,r){return function(i){var s=n.attr(i,e);return null==s?"!="===t:t?(s+="","="===t?s===r:"!="===t?s!==r:"^="===t?r&&0===s.indexOf(r):"*="===t?r&&s.indexOf(r)>-1:"$="===t?r&&s.slice(-r.length)===r:"~="===t?(" "+s+" ").indexOf(r)>-1:"|="===t?s===r||s.slice(0,r.length+1)===r+"-":!1):!0}},CHILD:function(e,t,n,r,i){var s="nth"!==e.slice(0,3),a="last"!==e.slice(-4),o="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var c,u,p,d,f,h,m=s!==a?"nextSibling":"previousSibling",g=t.parentNode,b=o&&t.nodeName.toLowerCase(),v=!l&&!o;if(g){if(s){for(;m;){for(p=t;p=p[m];)if(o?p.nodeName.toLowerCase()===b:1===p.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&v){for(u=g[F]||(g[F]={}),c=u[e]||[],f=c[0]===q&&c[1],d=c[0]===q&&c[2],p=f&&g.childNodes[f];p=++f&&p&&p[m]||(d=f=0)||h.pop();)if(1===p.nodeType&&++d&&p===t){u[e]=[q,f,d];break}}else if(v&&(c=(t[F]||(t[F]={}))[e])&&c[0]===q)d=c[1];else for(;(p=++f&&p&&p[m]||(d=f=0)||h.pop())&&((o?p.nodeName.toLowerCase()!==b:1!==p.nodeType)||!++d||(v&&((p[F]||(p[F]={}))[e]=[q,d]),p!==t)););return d-=i,d===r||0===d%r&&d/r>=0}}},PSEUDO:function(e,t){var r,s=E.pseudos[e]||E.setFilters[e.toLowerCase()]||n.error("unsupported pseudo: "+e);return s[F]?s(t):s.length>1?(r=[e,e,"",t],E.setFilters.hasOwnProperty(e.toLowerCase())?i(function(e,n){for(var r,i=s(e,t),a=i.length;a--;)r=nt.call(e,i[a]),e[r]=!(n[r]=i[a])}):function(e){return s(e,0,r)}):s}},pseudos:{not:i(function(e){var t=[],n=[],r=N(e.replace(ut,"$1"));return r[F]?i(function(e,t,n,i){for(var s,a=r(e,null,i,[]),o=e.length;o--;)(s=a[o])&&(e[o]=!(t[o]=s))}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:i(function(e){return function(t){return n(e,t).length>0}}),contains:i(function(e){return function(t){return(t.textContent||t.innerText||k(t)).indexOf(e)>-1}}),lang:i(function(e){return gt.test(e||"")||n.error("unsupported lang: "+e),e=e.replace(St,Tt).toLowerCase(),function(t){var n;do if(n=P?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===I},focus:function(e){return e===j.activeElement&&(!j.hasFocus||j.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!E.pseudos.empty(e)},header:function(e){return wt.test(e.nodeName)},input:function(e){return xt.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:u(function(){return[0]}),last:u(function(e,t){return[t-1]}),eq:u(function(e,t,n){return[0>n?n+t:n]}),even:u(function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e}),odd:u(function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e}),lt:u(function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e}),gt:u(function(e,t,n){for(var r=0>n?n+t:n;t>++r;)e.push(r);return e})}},E.pseudos.nth=E.pseudos.eq;for(C in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})E.pseudos[C]=l(C);for(C in{submit:!0,reset:!0})E.pseudos[C]=c(C);p.prototype=E.filters=E.pseudos,E.setFilters=new p,N=n.compile=function(e,t){var n,r=[],i=[],s=z[e+" "];if(!s){for(t||(t=d(e)),n=t.length;n--;)s=v(t[n]),s[F]?r.push(s):i.push(s);s=z(e,y(i,r))}return s},S.sortStable=F.split("").sort(V).join("")===F,S.detectDuplicates=G,L(),S.sortDetached=s(function(e){return 1&e.compareDocumentPosition(j.createElement("div"))}),s(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||a("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),S.attributes&&s(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||a("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),s(function(e){return null==e.getAttribute("disabled")})||a(rt,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),st.find=n,st.expr=n.selectors,st.expr[":"]=st.expr.pseudos,st.unique=n.uniqueSort,st.text=n.getText,st.isXMLDoc=n.isXML,st.contains=n.contains}(e);var ht={};st.Callbacks=function(e){e="string"==typeof e?ht[e]||r(e):st.extend({},e);var n,i,s,a,o,l,c=[],u=!e.once&&[],p=function(t){for(n=e.memory&&t,i=!0,l=a||0,a=0,o=c.length,s=!0;c&&o>l;l++)if(c[l].apply(t[0],t[1])===!1&&e.stopOnFalse){n=!1;break}s=!1,c&&(u?u.length&&p(u.shift()):n?c=[]:d.disable())},d={add:function(){if(c){var t=c.length;!function r(t){st.each(t,function(t,n){var i=st.type(n);"function"===i?e.unique&&d.has(n)||c.push(n):n&&n.length&&"string"!==i&&r(n)})}(arguments),s?o=c.length:n&&(a=t,p(n))}return this},remove:function(){return c&&st.each(arguments,function(e,t){for(var n;(n=st.inArray(t,c,n))>-1;)c.splice(n,1),s&&(o>=n&&o--,l>=n&&l--)}),this},has:function(e){return e?st.inArray(e,c)>-1:!(!c||!c.length)},empty:function(){return c=[],o=0,this},disable:function(){return c=u=n=t,this},disabled:function(){return!c},lock:function(){return u=t,n||d.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!c||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],s?u.push(t):p(t)),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},st.extend({Deferred:function(e){var t=[["resolve","done",st.Callbacks("once memory"),"resolved"],["reject","fail",st.Callbacks("once memory"),"rejected"],["notify","progress",st.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return st.Deferred(function(n){st.each(t,function(t,s){var a=s[0],o=st.isFunction(e[t])&&e[t];i[s[1]](function(){var e=o&&o.apply(this,arguments);e&&st.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,o?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?st.extend(e,r):r}},i={};return r.pipe=r.then,st.each(t,function(e,s){var a=s[2],o=s[3];r[s[1]]=a.add,o&&a.add(function(){n=o},t[1^e][2].disable,t[2][2].lock),i[s[0]]=function(){return i[s[0]+"With"](this===i?r:this,arguments),this},i[s[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,s=et.call(arguments),a=s.length,o=1!==a||e&&st.isFunction(e.promise)?a:0,l=1===o?e:st.Deferred(),c=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?et.call(arguments):i,r===t?l.notifyWith(n,r):--o||l.resolveWith(n,r)}};if(a>1)for(t=Array(a),n=Array(a),r=Array(a);a>i;i++)s[i]&&st.isFunction(s[i].promise)?s[i].promise().done(c(i,r,s)).fail(l.reject).progress(c(i,n,t)):--o;return o||l.resolveWith(r,s),l.promise()}}),st.support=function(t){var n=z.createElement("input"),r=z.createDocumentFragment(),i=z.createElement("div"),s=z.createElement("select"),a=s.appendChild(z.createElement("option"));return n.type?(n.type="checkbox",t.checkOn=""!==n.value,t.optSelected=a.selected,t.reliableMarginRight=!0,t.boxSizingReliable=!0,t.pixelPosition=!1,n.checked=!0,t.noCloneChecked=n.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!a.disabled,n=z.createElement("input"),n.value="t",n.type="radio",t.radioValue="t"===n.value,n.setAttribute("checked","t"),n.setAttribute("name","t"),r.appendChild(n),t.checkClone=r.cloneNode(!0).cloneNode(!0).lastChild.checked,t.focusinBubbles="onfocusin"in e,i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===i.style.backgroundClip,st(function(){var n,r,s="padding:0;margin:0;border:0;display:block;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box",a=z.getElementsByTagName("body")[0];a&&(n=z.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",a.appendChild(n).appendChild(i),i.innerHTML="",i.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%",st.swap(a,null!=a.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===i.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(i,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(i,null)||{width:"4px"}).width,r=i.appendChild(z.createElement("div")),r.style.cssText=i.style.cssText=s,r.style.marginRight=r.style.width="0",i.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),a.removeChild(n))}),t):t}({});var mt,gt,bt=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,vt=/([A-Z])/g;i.uid=1,i.accepts=function(e){return e.nodeType?1===e.nodeType||9===e.nodeType:!0},i.prototype={key:function(e){if(!i.accepts(e))return 0;var t={},n=e[this.expando];if(!n){n=i.uid++;try{t[this.expando]={value:n},Object.defineProperties(e,t)}catch(r){t[this.expando]=n,st.extend(e,t)}}return this.cache[n]||(this.cache[n]={}),n},set:function(e,t,n){var r,i=this.key(e),s=this.cache[i];if("string"==typeof t)s[t]=n;else if(st.isEmptyObject(s))st.extend(this.cache[i],t);else for(r in t)s[r]=t[r];return s},get:function(e,n){var r=this.cache[this.key(e)];return n===t?r:r[n]},access:function(e,n,r){var i;return n===t||n&&"string"==typeof n&&r===t?(i=this.get(e,n),i!==t?i:this.get(e,st.camelCase(n))):(this.set(e,n,r),r!==t?r:n)},remove:function(e,n){var r,i,s,a=this.key(e),o=this.cache[a];if(n===t)this.cache[a]={};else{st.isArray(n)?i=n.concat(n.map(st.camelCase)):(s=st.camelCase(n),n in o?i=[n,s]:(i=s,i=i in o?[i]:i.match(ot)||[])),r=i.length;for(;r--;)delete o[i[r]]}},hasData:function(e){return!st.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}},mt=new i,gt=new i,st.extend({acceptData:i.accepts,hasData:function(e){return mt.hasData(e)||gt.hasData(e)},data:function(e,t,n){return mt.access(e,t,n)},removeData:function(e,t){mt.remove(e,t)},_data:function(e,t,n){return gt.access(e,t,n)},_removeData:function(e,t){gt.remove(e,t)}}),st.fn.extend({data:function(e,n){var r,i,a=this[0],o=0,l=null;if(e===t){if(this.length&&(l=mt.get(a),1===a.nodeType&&!gt.get(a,"hasDataAttrs"))){for(r=a.attributes;r.length>o;o++)i=r[o].name,0===i.indexOf("data-")&&(i=st.camelCase(i.slice(5)),s(a,i,l[i]));gt.set(a,"hasDataAttrs",!0)}return l}return"object"==typeof e?this.each(function(){mt.set(this,e)}):st.access(this,function(n){var r,i=st.camelCase(e);if(a&&n===t){if(r=mt.get(a,e),r!==t)return r;if(r=mt.get(a,i),r!==t)return r;if(r=s(a,i,t),r!==t)return r}else this.each(function(){var r=mt.get(this,i);mt.set(this,i,n),-1!==e.indexOf("-")&&r!==t&&mt.set(this,e,n)})},null,n,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){mt.remove(this,e)})}}),st.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=gt.get(e,n),r&&(!i||st.isArray(r)?i=gt.access(e,n,st.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=st.queue(e,t),r=n.length,i=n.shift(),s=st._queueHooks(e,t),a=function(){st.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete s.stop,i.call(e,a,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return gt.get(e,n)||gt.access(e,n,{empty:st.Callbacks("once memory").add(function(){gt.remove(e,[t+"queue",n])})})}}),st.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?st.queue(this[0],e):n===t?this:this.each(function(){var t=st.queue(this,e,n);st._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&st.dequeue(this,e)})},dequeue:function(e){return this.each(function(){st.dequeue(this,e)})},delay:function(e,t){return e=st.fx?st.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,s=st.Deferred(),a=this,o=this.length,l=function(){--i||s.resolveWith(a,[a])};for("string"!=typeof e&&(n=e,e=t),e=e||"fx";o--;)r=gt.get(a[o],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),s.promise(n)}});var yt,xt,wt=/[\t\r\n\f]/g,Ct=/\r/g,St=/^(?:input|select|textarea|button)$/i;st.fn.extend({attr:function(e,t){return st.access(this,st.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){st.removeAttr(this,e)})},prop:function(e,t){return st.access(this,st.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[st.propFix[e]||e]})},addClass:function(e){var t,n,r,i,s,a=0,o=this.length,l="string"==typeof e&&e;if(st.isFunction(e))return this.each(function(t){st(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(ot)||[];o>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(wt," "):" ")){for(s=0;i=t[s++];)0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=st.trim(r)}return this},removeClass:function(e){var t,n,r,i,s,a=0,o=this.length,l=0===arguments.length||"string"==typeof e&&e;if(st.isFunction(e))return this.each(function(t){st(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(ot)||[];o>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(wt," "):"")){for(s=0;i=t[s++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");n.className=e?st.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):st.isFunction(e)?this.each(function(n){st(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n)for(var t,r=0,i=st(this),s=e.match(ot)||[];t=s[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else(n===W||"boolean"===n)&&(this.className&>.set(this,"__className__",this.className),this.className=this.className||e===!1?"":gt.get(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",n=0,r=this.length;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(wt," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];return arguments.length?(i=st.isFunction(e),this.each(function(r){var s;1===this.nodeType&&(s=i?e.call(this,r,st(this).val()):e,null==s?s="":"number"==typeof s?s+="":st.isArray(s)&&(s=st.map(s,function(e){return null==e?"":e+""})),n=st.valHooks[this.type]||st.valHooks[this.nodeName.toLowerCase()],n&&"set"in n&&n.set(this,s,"value")!==t||(this.value=s))})):s?(n=st.valHooks[s.type]||st.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,"string"==typeof r?r.replace(Ct,""):null==r?"":r)):void 0}}),st.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,s="select-one"===e.type||0>i,a=s?null:[],o=s?i+1:r.length,l=0>i?o:s?i:0;o>l;l++)if(n=r[l],!(!n.selected&&l!==i||(st.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&st.nodeName(n.parentNode,"optgroup"))){if(t=st(n).val(),s)return t;a.push(t)}return a},set:function(e,t){for(var n,r,i=e.options,s=st.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=st.inArray(st(r).val(),s)>=0)&&(n=!0);return n||(e.selectedIndex=-1),s}}},attr:function(e,n,r){var i,s,a=e.nodeType;return e&&3!==a&&8!==a&&2!==a?typeof e.getAttribute===W?st.prop(e,n,r):(1===a&&st.isXMLDoc(e)||(n=n.toLowerCase(),i=st.attrHooks[n]||(st.expr.match.bool.test(n)?xt:yt)),r===t?i&&"get"in i&&null!==(s=i.get(e,n))?s:(s=st.find.attr(e,n),null==s?t:s):null!==r?i&&"set"in i&&(s=i.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r):(st.removeAttr(e,n),t)):void 0},removeAttr:function(e,t){var n,r,i=0,s=t&&t.match(ot);if(s&&1===e.nodeType)for(;n=s[i++];)r=st.propFix[n]||n,st.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)},attrHooks:{type:{set:function(e,t){if(!st.support.radioValue&&"radio"===t&&st.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,s,a,o=e.nodeType;return e&&3!==o&&8!==o&&2!==o?(a=1!==o||!st.isXMLDoc(e),a&&(n=st.propFix[n]||n,s=st.propHooks[n]),r!==t?s&&"set"in s&&(i=s.set(e,r,n))!==t?i:e[n]=r:s&&"get"in s&&null!==(i=s.get(e,n))?i:e[n]):void 0},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||St.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),xt={set:function(e,t,n){return t===!1?st.removeAttr(e,n):e.setAttribute(n,n),n}},st.each(st.expr.match.bool.source.match(/\w+/g),function(e,n){var r=st.expr.attrHandle[n]||st.find.attr;st.expr.attrHandle[n]=function(e,n,i){var s=st.expr.attrHandle[n],a=i?t:(st.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return st.expr.attrHandle[n]=s,a}}),st.support.optSelected||(st.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),st.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){st.propFix[this.toLowerCase()]=this}),st.each(["radio","checkbox"],function(){st.valHooks[this]={set:function(e,n){return st.isArray(n)?e.checked=st.inArray(st(e).val(),n)>=0:t}},st.support.checkOn||(st.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Tt=/^key/,Et=/^(?:mouse|contextmenu)|click/,kt=/^(?:focusinfocus|focusoutblur)$/,Dt=/^([^.]*)(?:\.(.+)|)$/;st.event={global:{},add:function(e,n,r,i,s){var a,o,l,c,u,p,d,f,h,m,g,b=gt.get(e);if(b){for(r.handler&&(a=r,r=a.handler,s=a.selector),r.guid||(r.guid=st.guid++),(c=b.events)||(c=b.events={}),(o=b.handle)||(o=b.handle=function(e){return typeof st===W||e&&st.event.triggered===e.type?t:st.event.dispatch.apply(o.elem,arguments)},o.elem=e),n=(n||"").match(ot)||[""],u=n.length;u--;)l=Dt.exec(n[u])||[],h=g=l[1],m=(l[2]||"").split(".").sort(),h&&(d=st.event.special[h]||{},h=(s?d.delegateType:d.bindType)||h,d=st.event.special[h]||{},p=st.extend({type:h,origType:g,data:i,handler:r,guid:r.guid,selector:s,needsContext:s&&st.expr.match.needsContext.test(s),namespace:m.join(".")},a),(f=c[h])||(f=c[h]=[],f.delegateCount=0,d.setup&&d.setup.call(e,i,m,o)!==!1||e.addEventListener&&e.addEventListener(h,o,!1)),d.add&&(d.add.call(e,p),p.handler.guid||(p.handler.guid=r.guid)),s?f.splice(f.delegateCount++,0,p):f.push(p),st.event.global[h]=!0);e=null}},remove:function(e,t,n,r,i){var s,a,o,l,c,u,p,d,f,h,m,g=gt.hasData(e)&>.get(e);if(g&&(l=g.events)){for(t=(t||"").match(ot)||[""],c=t.length;c--;)if(o=Dt.exec(t[c])||[],f=m=o[1],h=(o[2]||"").split(".").sort(),f){for(p=st.event.special[f]||{},f=(r?p.delegateType:p.bindType)||f,d=l[f]||[],o=o[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=s=d.length;s--;)u=d[s],!i&&m!==u.origType||n&&n.guid!==u.guid||o&&!o.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(d.splice(s,1),u.selector&&d.delegateCount--,p.remove&&p.remove.call(e,u));a&&!d.length&&(p.teardown&&p.teardown.call(e,h,g.handle)!==!1||st.removeEvent(e,f,g.handle),delete l[f])}else for(f in l)st.event.remove(e,f+t[c],n,r,!0);st.isEmptyObject(l)&&(delete g.handle,gt.remove(e,"events"))}},trigger:function(n,r,i,s){var a,o,l,c,u,p,d,f=[i||z],h=rt.call(n,"type")?n.type:n,m=rt.call(n,"namespace")?n.namespace.split("."):[];if(o=l=i=i||z,3!==i.nodeType&&8!==i.nodeType&&!kt.test(h+st.event.triggered)&&(h.indexOf(".")>=0&&(m=h.split("."),h=m.shift(),m.sort()),u=0>h.indexOf(":")&&"on"+h,n=n[st.expando]?n:new st.Event(h,"object"==typeof n&&n),n.isTrigger=s?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:st.makeArray(r,[n]),d=st.event.special[h]||{},s||!d.trigger||d.trigger.apply(i,r)!==!1)){if(!s&&!d.noBubble&&!st.isWindow(i)){for(c=d.delegateType||h,kt.test(c+h)||(o=o.parentNode);o;o=o.parentNode)f.push(o),l=o; +l===(i.ownerDocument||z)&&f.push(l.defaultView||l.parentWindow||e)}for(a=0;(o=f[a++])&&!n.isPropagationStopped();)n.type=a>1?c:d.bindType||h,p=(gt.get(o,"events")||{})[n.type]&>.get(o,"handle"),p&&p.apply(o,r),p=u&&o[u],p&&st.acceptData(o)&&p.apply&&p.apply(o,r)===!1&&n.preventDefault();return n.type=h,s||n.isDefaultPrevented()||d._default&&d._default.apply(f.pop(),r)!==!1||!st.acceptData(i)||u&&st.isFunction(i[h])&&!st.isWindow(i)&&(l=i[u],l&&(i[u]=null),st.event.triggered=h,i[h](),st.event.triggered=t,l&&(i[u]=l)),n.result}},dispatch:function(e){e=st.event.fix(e);var n,r,i,s,a,o=[],l=et.call(arguments),c=(gt.get(this,"events")||{})[e.type]||[],u=st.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!u.preDispatch||u.preDispatch.call(this,e)!==!1){for(o=st.event.handlers.call(this,e,c),n=0;(s=o[n++])&&!e.isPropagationStopped();)for(e.currentTarget=s.elem,r=0;(a=s.handlers[r++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(a.namespace))&&(e.handleObj=a,e.data=a.data,i=((st.event.special[a.origType]||{}).handle||a.handler).apply(s.elem,l),i!==t&&(e.result=i)===!1&&(e.preventDefault(),e.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,s,a,o=[],l=n.delegateCount,c=e.target;if(l&&c.nodeType&&(!e.button||"click"!==e.type))for(;c!==this;c=c.parentNode||this)if(c.disabled!==!0||"click"!==e.type){for(i=[],r=0;l>r;r++)a=n[r],s=a.selector+" ",i[s]===t&&(i[s]=a.needsContext?st(s,this).index(c)>=0:st.find(s,this,null,[c]).length),i[s]&&i.push(a);i.length&&o.push({elem:c,handlers:i})}return n.length>l&&o.push({elem:this,handlers:n.slice(l)}),o},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,s,a=n.button;return null==e.pageX&&null!=n.clientX&&(r=e.target.ownerDocument||z,i=r.documentElement,s=r.body,e.pageX=n.clientX+(i&&i.scrollLeft||s&&s.scrollLeft||0)-(i&&i.clientLeft||s&&s.clientLeft||0),e.pageY=n.clientY+(i&&i.scrollTop||s&&s.scrollTop||0)-(i&&i.clientTop||s&&s.clientTop||0)),e.which||a===t||(e.which=1&a?1:2&a?3:4&a?2:0),e}},fix:function(e){if(e[st.expando])return e;var t,n,r,i=e.type,s=e,a=this.fixHooks[i];for(a||(this.fixHooks[i]=a=Et.test(i)?this.mouseHooks:Tt.test(i)?this.keyHooks:{}),r=a.props?this.props.concat(a.props):this.props,e=new st.Event(s),t=r.length;t--;)n=r[t],e[n]=s[n];return e.target||(e.target=z),3===e.target.nodeType&&(e.target=e.target.parentNode),a.filter?a.filter(e,s):e},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==l()&&this.focus?(this.focus(),!1):t},delegateType:"focusin"},blur:{trigger:function(){return this===l()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&st.nodeName(this,"input")?(this.click(),!1):t},_default:function(e){return st.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=st.extend(new st.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?st.event.trigger(i,null,t):st.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},st.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)},st.Event=function(e,n){return this instanceof st.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.getPreventDefault&&e.getPreventDefault()?a:o):this.type=e,n&&st.extend(this,n),this.timeStamp=e&&e.timeStamp||st.now(),this[st.expando]=!0,t):new st.Event(e,n)},st.Event.prototype={isDefaultPrevented:o,isPropagationStopped:o,isImmediatePropagationStopped:o,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=a,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=a,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=a,this.stopPropagation()}},st.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){st.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,s=e.handleObj;return(!i||i!==r&&!st.contains(r,i))&&(e.type=s.origType,n=s.handler.apply(this,arguments),e.type=t),n}}}),st.support.focusinBubbles||st.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){st.event.simulate(t,e.target,st.event.fix(e),!0)};st.event.special[t]={setup:function(){0===n++&&z.addEventListener(e,r,!0)},teardown:function(){0===--n&&z.removeEventListener(e,r,!0)}}}),st.fn.extend({on:function(e,n,r,i,s){var a,l;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(l in e)this.on(l,n,r,e[l],s);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=o;else if(!i)return this;return 1===s&&(a=i,i=function(e){return st().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=st.guid++)),this.each(function(){st.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,s;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,st(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(s in e)this.off(s,n,e[s]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=o),this.each(function(){st.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){st.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?st.event.trigger(e,n,r,!0):t}});var Nt=/^.[^:#\[\.,]*$/,At=/^(?:parents|prev(?:Until|All))/,Rt=st.expr.match.needsContext,Lt={children:!0,contents:!0,next:!0,prev:!0};st.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(st(e).filter(function(){for(t=0;i>t;t++)if(st.contains(r[t],this))return!0}));for(t=0;i>t;t++)st.find(e,r[t],n);return n=this.pushStack(i>1?st.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t=st(e,this),n=t.length;return this.filter(function(){for(var e=0;n>e;e++)if(st.contains(this,t[e]))return!0})},not:function(e){return this.pushStack(u(this,e||[],!0))},filter:function(e){return this.pushStack(u(this,e||[],!1))},is:function(e){return!!u(this,"string"==typeof e&&Rt.test(e)?st(e):e||[],!1).length},closest:function(e,t){for(var n,r=0,i=this.length,s=[],a=Rt.test(e)||"string"!=typeof e?st(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&st.find.matchesSelector(n,e))){n=s.push(n);break}return this.pushStack(s.length>1?st.unique(s):s)},index:function(e){return e?"string"==typeof e?tt.call(st(e),this[0]):tt.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?st(e,t):st.makeArray(e&&e.nodeType?[e]:e),r=st.merge(this.get(),n);return this.pushStack(st.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),st.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return st.dir(e,"parentNode")},parentsUntil:function(e,t,n){return st.dir(e,"parentNode",n)},next:function(e){return c(e,"nextSibling")},prev:function(e){return c(e,"previousSibling")},nextAll:function(e){return st.dir(e,"nextSibling")},prevAll:function(e){return st.dir(e,"previousSibling")},nextUntil:function(e,t,n){return st.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return st.dir(e,"previousSibling",n)},siblings:function(e){return st.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return st.sibling(e.firstChild)},contents:function(e){return e.contentDocument||st.merge([],e.childNodes)}},function(e,t){st.fn[e]=function(n,r){var i=st.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=st.filter(r,i)),this.length>1&&(Lt[e]||st.unique(i),At.test(e)&&i.reverse()),this.pushStack(i)}}),st.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?st.find.matchesSelector(r,e)?[r]:[]:st.find.matches(e,st.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){for(var i=[],s=r!==t;(e=e[n])&&9!==e.nodeType;)if(1===e.nodeType){if(s&&st(e).is(r))break;i.push(e)}return i},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});var jt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,It=/<([\w:]+)/,Pt=/<|&#?\w+;/,$t=/<(?:script|style|link)/i,Mt=/^(?:checkbox|radio)$/i,Ht=/checked\s*(?:[^=]|=\s*.checked.)/i,Ot=/^$|\/(?:java|ecma)script/i,Ft=/^true\/(.*)/,_t=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,qt={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};qt.optgroup=qt.option,qt.tbody=qt.tfoot=qt.colgroup=qt.caption=qt.thead,qt.th=qt.td,st.fn.extend({text:function(e){return st.access(this,function(e){return e===t?st.text(this):this.empty().append((this[0]&&this[0].ownerDocument||z).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=p(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=p(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var n,r=e?st.filter(e,this):this,i=0;null!=(n=r[i]);i++)t||1!==n.nodeType||st.cleanData(g(n)),n.parentNode&&(t&&st.contains(n.ownerDocument,n)&&h(g(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(st.cleanData(g(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return st.clone(this,e,t)})},html:function(e){return st.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t&&1===n.nodeType)return n.innerHTML;if("string"==typeof e&&!$t.test(e)&&!qt[(It.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(jt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(st.cleanData(g(n,!1)),n.innerHTML=e);n=0}catch(s){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=st.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),st(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=Z.apply([],e);var r,i,s,a,o,l,c=0,u=this.length,p=this,h=u-1,m=e[0],b=st.isFunction(m);if(b||!(1>=u||"string"!=typeof m||st.support.checkClone)&&Ht.test(m))return this.each(function(r){var i=p.eq(r);b&&(e[0]=m.call(this,r,i.html())),i.domManip(e,t,n)});if(u&&(r=st.buildFragment(e,this[0].ownerDocument,!1,!n&&this),i=r.firstChild,1===r.childNodes.length&&(r=i),i)){for(s=st.map(g(r,"script"),d),a=s.length;u>c;c++)o=r,c!==h&&(o=st.clone(o,!0,!0),a&&st.merge(s,g(o,"script"))),t.call(this[c],o,c);if(a)for(l=s[s.length-1].ownerDocument,st.map(s,f),c=0;a>c;c++)o=s[c],Ot.test(o.type||"")&&!gt.access(o,"globalEval")&&st.contains(l,o)&&(o.src?st._evalUrl(o.src):st.globalEval(o.textContent.replace(_t,"")))}return this}}),st.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){st.fn[e]=function(e){for(var n,r=[],i=st(e),s=i.length-1,a=0;s>=a;a++)n=a===s?this:this.clone(!0),st(i[a])[t](n),J.apply(r,n.get());return this.pushStack(r)}}),st.extend({clone:function(e,t,n){var r,i,s,a,o=e.cloneNode(!0),l=st.contains(e.ownerDocument,e);if(!(st.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||st.isXMLDoc(e)))for(a=g(o),s=g(e),r=0,i=s.length;i>r;r++)b(s[r],a[r]);if(t)if(n)for(s=s||g(e),a=a||g(o),r=0,i=s.length;i>r;r++)m(s[r],a[r]);else m(e,o);return a=g(o,"script"),a.length>0&&h(a,!l&&g(e,"script")),o},buildFragment:function(e,t,n,r){for(var i,s,a,o,l,c,u=0,p=e.length,d=t.createDocumentFragment(),f=[];p>u;u++)if(i=e[u],i||0===i)if("object"===st.type(i))st.merge(f,i.nodeType?[i]:i);else if(Pt.test(i)){for(s=s||d.appendChild(t.createElement("div")),a=(It.exec(i)||["",""])[1].toLowerCase(),o=qt[a]||qt._default,s.innerHTML=o[1]+i.replace(jt,"<$1></$2>")+o[2],c=o[0];c--;)s=s.lastChild;st.merge(f,s.childNodes),s=d.firstChild,s.textContent=""}else f.push(t.createTextNode(i));for(d.textContent="",u=0;i=f[u++];)if((!r||-1===st.inArray(i,r))&&(l=st.contains(i.ownerDocument,i),s=g(d.appendChild(i),"script"),l&&h(s),n))for(c=0;i=s[c++];)Ot.test(i.type||"")&&n.push(i);return d},cleanData:function(e){for(var n,r,s,a,o,l,c=st.event.special,u=0;(r=e[u])!==t;u++){if(i.accepts(r)&&(o=r[gt.expando],o&&(n=gt.cache[o]))){if(s=Object.keys(n.events||{}),s.length)for(l=0;(a=s[l])!==t;l++)c[a]?st.event.remove(r,a):st.removeEvent(r,a,n.handle);gt.cache[o]&&delete gt.cache[o]}delete mt.cache[r[mt.expando]]}},_evalUrl:function(e){return st.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),st.fn.extend({wrapAll:function(e){var t;return st.isFunction(e)?this.each(function(t){st(this).wrapAll(e.call(this,t))}):(this[0]&&(t=st(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this)},wrapInner:function(e){return st.isFunction(e)?this.each(function(t){st(this).wrapInner(e.call(this,t))}):this.each(function(){var t=st(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=st.isFunction(e);return this.each(function(n){st(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){st.nodeName(this,"body")||st(this).replaceWith(this.childNodes)}).end()}});var Bt,Wt,Ut=/^(none|table(?!-c[ea]).+)/,zt=/^margin/,Gt=RegExp("^("+at+")(.*)$","i"),Vt=RegExp("^("+at+")(?!px)[a-z%]+$","i"),Xt=RegExp("^([+-])=("+at+")","i"),Yt={BODY:"block"},Kt={position:"absolute",visibility:"hidden",display:"block"},Qt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"];st.fn.extend({css:function(e,n){return st.access(this,function(e,n,r){var i,s,a={},o=0;if(st.isArray(n)){for(i=x(e),s=n.length;s>o;o++)a[n[o]]=st.css(e,n[o],!1,i);return a}return r!==t?st.style(e,n,r):st.css(e,n)},e,n,arguments.length>1)},show:function(){return w(this,!0)},hide:function(){return w(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){y(this)?st(this).show():st(this).hide()})}}),st.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Bt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var s,a,o,l=st.camelCase(n),c=e.style;return n=st.cssProps[l]||(st.cssProps[l]=v(c,l)),o=st.cssHooks[n]||st.cssHooks[l],r===t?o&&"get"in o&&(s=o.get(e,!1,i))!==t?s:c[n]:(a=typeof r,"string"===a&&(s=Xt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(st.css(e,n)),a="number"),null==r||"number"===a&&isNaN(r)||("number"!==a||st.cssNumber[l]||(r+="px"),st.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(c[n]="inherit"),o&&"set"in o&&(r=o.set(e,r,i))===t||(c[n]=r)),t)}},css:function(e,n,r,i){var s,a,o,l=st.camelCase(n);return n=st.cssProps[l]||(st.cssProps[l]=v(e.style,l)),o=st.cssHooks[n]||st.cssHooks[l],o&&"get"in o&&(s=o.get(e,!0,r)),s===t&&(s=Bt(e,n,i)),"normal"===s&&n in Qt&&(s=Qt[n]),""===r||r?(a=parseFloat(s),r===!0||st.isNumeric(a)?a||0:s):s}}),Bt=function(e,n,r){var i,s,a,o=r||x(e),l=o?o.getPropertyValue(n)||o[n]:t,c=e.style;return o&&(""!==l||st.contains(e.ownerDocument,e)||(l=st.style(e,n)),Vt.test(l)&&zt.test(n)&&(i=c.width,s=c.minWidth,a=c.maxWidth,c.minWidth=c.maxWidth=c.width=l,l=o.width,c.width=i,c.minWidth=s,c.maxWidth=a)),l},st.each(["height","width"],function(e,n){st.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Ut.test(st.css(e,"display"))?st.swap(e,Kt,function(){return T(e,n,i)}):T(e,n,i):t},set:function(e,t,r){var i=r&&x(e);return C(e,t,r?S(e,n,r,st.support.boxSizing&&"border-box"===st.css(e,"boxSizing",!1,i),i):0)}}}),st(function(){st.support.reliableMarginRight||(st.cssHooks.marginRight={get:function(e,n){return n?st.swap(e,{display:"inline-block"},Bt,[e,"marginRight"]):t}}),!st.support.pixelPosition&&st.fn.position&&st.each(["top","left"],function(e,n){st.cssHooks[n]={get:function(e,r){return r?(r=Bt(e,n),Vt.test(r)?st(e).position()[n]+"px":r):t}}})}),st.expr&&st.expr.filters&&(st.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight},st.expr.filters.visible=function(e){return!st.expr.filters.hidden(e)}),st.each({margin:"",padding:"",border:"Width"},function(e,t){st.cssHooks[e+t]={expand:function(n){for(var r=0,i={},s="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+Zt[r]+t]=s[r]||s[r-2]||s[0];return i}},zt.test(e)||(st.cssHooks[e+t].set=C)});var en=/%20/g,tn=/\[\]$/,nn=/\r?\n/g,rn=/^(?:submit|button|image|reset|file)$/i,sn=/^(?:input|select|textarea|keygen)/i;st.fn.extend({serialize:function(){return st.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=st.prop(this,"elements");return e?st.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!st(this).is(":disabled")&&sn.test(this.nodeName)&&!rn.test(e)&&(this.checked||!Mt.test(e))}).map(function(e,t){var n=st(this).val();return null==n?null:st.isArray(n)?st.map(n,function(e){return{name:t.name,value:e.replace(nn,"\r\n")}}):{name:t.name,value:n.replace(nn,"\r\n")}}).get()}}),st.param=function(e,n){var r,i=[],s=function(e,t){t=st.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=st.ajaxSettings&&st.ajaxSettings.traditional),st.isArray(e)||e.jquery&&!st.isPlainObject(e))st.each(e,function(){s(this.name,this.value)});else for(r in e)D(r,e[r],n,s);return i.join("&").replace(en,"+")},st.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 contextmenu".split(" "),function(e,t){st.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),st.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var an,on,ln=st.now(),cn=/\?/,un=/#.*$/,pn=/([?&])_=[^&]*/,dn=/^(.*?):[ \t]*([^\r\n]*)$/gm,fn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,hn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,bn=st.fn.load,vn={},yn={},xn="*/".concat("*");try{on=U.href}catch(wn){on=z.createElement("a"),on.href="",on=on.href}an=gn.exec(on.toLowerCase())||[],st.fn.load=function(e,n,r){if("string"!=typeof e&&bn)return bn.apply(this,arguments);var i,s,a,o=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l),e=e.slice(0,l)),st.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(s="POST"),o.length>0&&st.ajax({url:e,type:s,dataType:"html",data:n}).done(function(e){a=arguments,o.html(i?st("<div>").append(st.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){o.each(r,a||[e.responseText,t,e])}),this},st.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){st.fn[t]=function(e){return this.on(t,e)}}),st.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:on,type:"GET",isLocal:fn.test(an[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":xn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":st.parseJSON,"text xml":st.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?R(R(e,st.ajaxSettings),t):R(st.ajaxSettings,e)},ajaxPrefilter:N(vn),ajaxTransport:N(yn),ajax:function(e,n){function r(e,n,r,o){var c,p,v,y,w,S=n;2!==x&&(x=2,l&&clearTimeout(l),i=t,a=o||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(y=L(d,C,r)),y=j(d,y,C,c),c?(d.ifModified&&(w=C.getResponseHeader("Last-Modified"),w&&(st.lastModified[s]=w),w=C.getResponseHeader("etag"),w&&(st.etag[s]=w)),204===e||"HEAD"===d.type?S="nocontent":304===e?S="notmodified":(S=y.state,p=y.data,v=y.error,c=!v)):(v=S,(e||!S)&&(S="error",0>e&&(e=0))),C.status=e,C.statusText=(n||S)+"",c?m.resolveWith(f,[p,S,C]):m.rejectWith(f,[C,S,v]),C.statusCode(b),b=t,u&&h.trigger(c?"ajaxSuccess":"ajaxError",[C,d,c?p:v]),g.fireWith(f,[C,S]),u&&(h.trigger("ajaxComplete",[C,d]),--st.active||st.event.trigger("ajaxStop")))}"object"==typeof e&&(n=e,e=t),n=n||{};var i,s,a,o,l,c,u,p,d=st.ajaxSetup({},n),f=d.context||d,h=d.context&&(f.nodeType||f.jquery)?st(f):st.event,m=st.Deferred(),g=st.Callbacks("once memory"),b=d.statusCode||{},v={},y={},x=0,w="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(2===x){if(!o)for(o={};t=dn.exec(a);)o[t[1].toLowerCase()]=t[2];t=o[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=y[n]=y[n]||e,v[e]=t),this},overrideMimeType:function(e){return x||(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>x)for(t in e)b[t]=[b[t],e[t]];else C.always(e[C.status]);return this},abort:function(e){var t=e||w;return i&&i.abort(t),r(0,t),this}};if(m.promise(C).complete=g.add,C.success=C.done,C.error=C.fail,d.url=((e||d.url||on)+"").replace(un,"").replace(mn,an[1]+"//"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=st.trim(d.dataType||"*").toLowerCase().match(ot)||[""],null==d.crossDomain&&(c=gn.exec(d.url.toLowerCase()),d.crossDomain=!(!c||c[1]===an[1]&&c[2]===an[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(an[3]||("http:"===an[1]?"80":"443")))),d.data&&d.processData&&"string"!=typeof d.data&&(d.data=st.param(d.data,d.traditional)),A(vn,d,n,C),2===x)return C;u=d.global,u&&0===st.active++&&st.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!hn.test(d.type),s=d.url,d.hasContent||(d.data&&(s=d.url+=(cn.test(s)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=pn.test(s)?s.replace(pn,"$1_="+ln++):s+(cn.test(s)?"&":"?")+"_="+ln++)),d.ifModified&&(st.lastModified[s]&&C.setRequestHeader("If-Modified-Since",st.lastModified[s]),st.etag[s]&&C.setRequestHeader("If-None-Match",st.etag[s])),(d.data&&d.hasContent&&d.contentType!==!1||n.contentType)&&C.setRequestHeader("Content-Type",d.contentType),C.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+xn+"; q=0.01":""):d.accepts["*"]);for(p in d.headers)C.setRequestHeader(p,d.headers[p]);if(d.beforeSend&&(d.beforeSend.call(f,C,d)===!1||2===x))return C.abort();w="abort";for(p in{success:1,error:1,complete:1})C[p](d[p]);if(i=A(yn,d,n,C)){C.readyState=1,u&&h.trigger("ajaxSend",[C,d]),d.async&&d.timeout>0&&(l=setTimeout(function(){C.abort("timeout")},d.timeout));try{x=1,i.send(v,r)}catch(S){if(!(2>x))throw S;r(-1,S)}}else r(-1,"No Transport");return C},getJSON:function(e,t,n){return st.get(e,t,n,"json")},getScript:function(e,n){return st.get(e,t,n,"script")}}),st.each(["get","post"],function(e,n){st[n]=function(e,r,i,s){return st.isFunction(r)&&(s=s||i,i=r,r=t),st.ajax({url:e,type:n,dataType:s,data:r,success:i})}}),st.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return st.globalEval(e),e}}}),st.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),st.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=st("<script>").prop({async:!0,charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),z.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Cn=[],Sn=/(=)\?(?=&|$)|\?\?/;st.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Cn.pop()||st.expando+"_"+ln++;return this[e]=!0,e}}),st.ajaxPrefilter("json jsonp",function(n,r,i){var s,a,o,l=n.jsonp!==!1&&(Sn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Sn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(s=n.jsonpCallback=st.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(Sn,"$1"+s):n.jsonp!==!1&&(n.url+=(cn.test(n.url)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return o||st.error(s+" was not called"),o[0]},n.dataTypes[0]="json",a=e[s],e[s]=function(){o=arguments},i.always(function(){e[s]=a,n[s]&&(n.jsonpCallback=r.jsonpCallback,Cn.push(s)),o&&st.isFunction(a)&&a(o[0]),o=a=t}),"script"):t}),st.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var Tn=st.ajaxSettings.xhr(),En={0:200,1223:204},kn=0,Dn={};e.ActiveXObject&&st(e).on("unload",function(){for(var e in Dn)Dn[e]();Dn=t}),st.support.cors=!!Tn&&"withCredentials"in Tn,st.support.ajax=Tn=!!Tn,st.ajaxTransport(function(e){var n;return st.support.cors||Tn&&!e.crossDomain?{send:function(r,i){var s,a,o=e.xhr();if(o.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(s in e.xhrFields)o[s]=e.xhrFields[s];e.mimeType&&o.overrideMimeType&&o.overrideMimeType(e.mimeType),e.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(s in r)o.setRequestHeader(s,r[s]);n=function(e){return function(){n&&(delete Dn[a],n=o.onload=o.onerror=null,"abort"===e?o.abort():"error"===e?i(o.status||404,o.statusText):i(En[o.status]||o.status,o.statusText,"string"==typeof o.responseText?{text:o.responseText}:t,o.getAllResponseHeaders()))}},o.onload=n(),o.onerror=n("error"),n=Dn[a=kn++]=n("abort"),o.send(e.hasContent&&e.data||null)},abort:function(){n&&n()}}:t});var Nn,An,Rn=/^(?:toggle|show|hide)$/,Ln=RegExp("^(?:([+-])=|)("+at+")([a-z%]*)$","i"),jn=/queueHooks$/,In=[H],Pn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Ln.exec(t),s=i&&i[3]||(st.cssNumber[e]?"":"px"),a=(st.cssNumber[e]||"px"!==s&&+r)&&Ln.exec(st.css(n.elem,e)),o=1,l=20;if(a&&a[3]!==s){s=s||a[3],i=i||[],a=+r||1;do o=o||".5",a/=o,st.style(n.elem,e,a+s);while(o!==(o=n.cur()/r)&&1!==o&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=s,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};st.Animation=st.extend($,{tweener:function(e,t){st.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,i=e.length;i>r;r++)n=e[r],Pn[n]=Pn[n]||[],Pn[n].unshift(t)},prefilter:function(e,t){t?In.unshift(e):In.push(e)}}),st.Tween=O,O.prototype={constructor:O,init:function(e,t,n,r,i,s){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=s||(st.cssNumber[n]?"":"px")},cur:function(){var e=O.propHooks[this.prop];return e&&e.get?e.get(this):O.propHooks._default.get(this)},run:function(e){var t,n=O.propHooks[this.prop];return this.pos=t=this.options.duration?st.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):O.propHooks._default.set(this),this}},O.prototype.init.prototype=O.prototype,O.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=st.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){st.fx.step[e.prop]?st.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[st.cssProps[e.prop]]||st.cssHooks[e.prop])?st.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},O.propHooks.scrollTop=O.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},st.each(["toggle","show","hide"],function(e,t){var n=st.fn[t];st.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(F(t,!0),e,r,i)}}),st.fn.extend({fadeTo:function(e,t,n,r){return this.filter(y).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=st.isEmptyObject(e),s=st.speed(t,n,r),a=function(){var t=$(this,st.extend({},e),s);(i||gt.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||s.queue===!1?this.each(a):this.queue(s.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",s=st.timers,a=gt.get(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&jn.test(n)&&i(a[n]);for(n=s.length;n--;)s[n].elem!==this||null!=e&&s[n].queue!==e||(s[n].anim.stop(r),t=!1,s.splice(n,1));(t||!r)&&st.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=gt.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],s=st.timers,a=r?r.length:0;for(n.finish=!0,st.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=s.length;t--;)s[t].elem===this&&s[t].queue===e&&(s[t].anim.stop(!0),s.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),st.each({slideDown:F("show"),slideUp:F("hide"),slideToggle:F("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){st.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),st.speed=function(e,t,n){var r=e&&"object"==typeof e?st.extend({},e):{complete:n||!n&&t||st.isFunction(e)&&e,duration:e,easing:n&&t||t&&!st.isFunction(t)&&t};return r.duration=st.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in st.fx.speeds?st.fx.speeds[r.duration]:st.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){st.isFunction(r.old)&&r.old.call(this),r.queue&&st.dequeue(this,r.queue)},r},st.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},st.timers=[],st.fx=O.prototype.init,st.fx.tick=function(){var e,n=st.timers,r=0;for(Nn=st.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||st.fx.stop(),Nn=t},st.fx.timer=function(e){e()&&st.timers.push(e)&&st.fx.start()},st.fx.interval=13,st.fx.start=function(){An||(An=setInterval(st.fx.tick,st.fx.interval))},st.fx.stop=function(){clearInterval(An),An=null},st.fx.speeds={slow:600,fast:200,_default:400},st.fx.step={},st.expr&&st.expr.filters&&(st.expr.filters.animated=function(e){return st.grep(st.timers,function(t){return e===t.elem}).length}),st.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){st.offset.setOffset(this,e,t)});var n,r,i=this[0],s={top:0,left:0},a=i&&i.ownerDocument;return a?(n=a.documentElement,st.contains(n,i)?(typeof i.getBoundingClientRect!==W&&(s=i.getBoundingClientRect()),r=_(a),{top:s.top+r.pageYOffset-n.clientTop,left:s.left+r.pageXOffset-n.clientLeft}):s):void 0 +},st.offset={setOffset:function(e,t,n){var r,i,s,a,o,l,c,u=st.css(e,"position"),p=st(e),d={};"static"===u&&(e.style.position="relative"),o=p.offset(),s=st.css(e,"top"),l=st.css(e,"left"),c=("absolute"===u||"fixed"===u)&&(s+l).indexOf("auto")>-1,c?(r=p.position(),a=r.top,i=r.left):(a=parseFloat(s)||0,i=parseFloat(l)||0),st.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(d.top=t.top-o.top+a),null!=t.left&&(d.left=t.left-o.left+i),"using"in t?t.using.call(e,d):p.css(d)}},st.fn.extend({position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===st.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),st.nodeName(e[0],"html")||(r=e.offset()),r.top+=st.css(e[0],"borderTopWidth",!0),r.left+=st.css(e[0],"borderLeftWidth",!0)),{top:t.top-r.top-st.css(n,"marginTop",!0),left:t.left-r.left-st.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||G;e&&!st.nodeName(e,"html")&&"static"===st.css(e,"position");)e=e.offsetParent;return e||G})}}),st.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(n,r){var i="pageYOffset"===r;st.fn[n]=function(s){return st.access(this,function(n,s,a){var o=_(n);return a===t?o?o[r]:n[s]:(o?o.scrollTo(i?e.pageXOffset:a,i?a:e.pageYOffset):n[s]=a,t)},n,s,arguments.length,null)}}),st.each({Height:"height",Width:"width"},function(e,n){st.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){st.fn[i]=function(i,s){var a=arguments.length&&(r||"boolean"!=typeof i),o=r||(i===!0||s===!0?"margin":"border");return st.access(this,function(n,r,i){var s;return st.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?st.css(n,r,o):st.style(n,r,i,o)},n,a?i:t,a,null)}})}),st.fn.size=function(){return this.length},st.fn.andSelf=st.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=st:"function"==typeof define&&define.amd&&define("jquery",[],function(){return st}),"object"==typeof e&&"object"==typeof e.document&&(e.jQuery=e.$=st)}(window),function(e){var t={},n=top!==self;"respecConfig"in window||(window.respecConfig={}),e.respecEvents={pub:function(r){var i=Array.prototype.slice.call(arguments);i.shift(),n&&window.postMessage&&parent.postMessage({topic:r,args:i},"*"),$.each(t[r]||[],function(){this.apply(e,i)})},sub:function(e,n){return t[e]||(t[e]=[]),t[e].push(n),[e,n]},unsub:function(e){var n=e[0];t[n]&&$.each(t[n]||[],function(r){this==e[1]&&t[n].splice(r,1)})}}}(this),window.console&&(respecEvents.sub("warn",function(e){console.log("WARN: "+e)}),respecEvents.sub("error",function(e){console.log("ERROR: "+e)}),respecEvents.sub("start",function(e){respecConfig&&respecConfig.trace&&console.log(">>> began: "+e)}),respecEvents.sub("end",function(e){respecConfig&&respecConfig.trace&&console.log("<<< finished: "+e)}),respecEvents.sub("start-all",function(){console.log("RESPEC PROCESSING STARTED")}),respecEvents.sub("end-all",function(){console.log("RESPEC DONE!")})),define("core/base-runner",["jquery"],function(){return{runAll:function(e){var t=0;respecEvents.pub("start-all"),respecEvents.sub("start",function(){t++}),respecEvents.sub("end",function(){t--,t||(respecEvents.pub("end-all"),document.respecDone=!0)}),respecEvents.pub("start","core/base-runner"),e.shift();var n=$("script"),r="";n.each(function(e,t){var n=t.getAttribute("src");n&&$(t).hasClass("remove")&&/\/js\//.test(n)&&(r=n.replace(/\/js\/.*/,"/js/"))}),respecConfig.respecBase=r,respecConfig.scheme=respecConfig.scheme?respecConfig.scheme:location.protocol.replace(":","").toLowerCase(),respecConfig.httpScheme="https"===respecConfig.scheme?"https":"http";var i;if(i=function(){if(!e.length){if(respecConfig.postProcess)for(var t=0;t<respecConfig.postProcess.length;t++)respecConfig.postProcess[t].apply(this);return respecConfig.afterEnd&&respecConfig.afterEnd.apply(window,Array.prototype.slice.call(arguments)),respecEvents.pub("end","core/base-runner"),void 0}var n=e.shift();n.run?n.run.call(n,respecConfig,document,i,respecEvents):i()},respecConfig.preProcess)for(var s=0;s<respecConfig.preProcess.length;s++)respecConfig.preProcess[s].apply(this);i()}}}),define("core/override-configuration",[],function(){return{run:function(e,t,n,r){if(r.pub("start","core/override-configuration"),location.search)for(var i=location.search.replace(/^\?/,"").split(";"),s=0,a=i.length;a>s;s++){var o=i[s].split("=",2),l=decodeURI(o[0]),c=decodeURI(o[1]).replace(/%3D/g,"=");"true"===c?c=!0:"false"===c?c=!1:"null"===c?c=null:/\[\]$/.test(l)&&(l=l.replace(/\[\]/,""),c=$.parseJSON(c)),e[l]=c}r.pub("end","core/override-configuration"),n()}}}),define("core/default-root-attr",[],function(){return{run:function(e,t,n,r){r.pub("start","core/default-root-attr");var i=$(t.documentElement);i.attr("lang")||(i.attr("lang","en"),i.attr("dir")||i.attr("dir","ltr")),r.pub("end","core/default-root-attr"),n()}}}),function(){function e(e,t){return"!"!==e[0][0]?'<a href="'+s(t.href)+'"'+(t.title?' title="'+s(t.title)+'"':"")+">"+f.lexer(e[1])+"</a>":'<img src="'+s(t.href)+'" alt="'+s(e[1])+'"'+(t.title?' title="'+s(t.title)+'"':"")+">"}function t(){return m=h.pop()}function n(){switch(m.type){case"space":return"";case"hr":return"<hr>\n";case"heading":return"<h"+m.depth+">"+f.lexer(m.text)+"</h"+m.depth+">\n";case"code":return g.highlight&&(m.code=g.highlight(m.text,m.lang),null!=m.code&&m.code!==m.text&&(m.escaped=!0,m.text=m.code)),m.escaped||(m.text=s(m.text,!0)),"<pre><code"+(m.lang?' class="lang-'+m.lang+'"':"")+">"+m.text+"</code></pre>\n";case"blockquote_start":for(var e="";"blockquote_end"!==t().type;)e+=n();return"<blockquote>\n"+e+"</blockquote>\n";case"list_start":for(var i=m.ordered?"ol":"ul",e="";"list_end"!==t().type;)e+=n();return"<"+i+">\n"+e+"</"+i+">\n";case"list_item_start":for(var e="";"list_item_end"!==t().type;)e+="text"===m.type?r():n();return"<li>"+e+"</li>\n";case"loose_item_start":for(var e="";"list_item_end"!==t().type;)e+=n();return"<li>"+e+"</li>\n";case"html":return m.pre||g.pedantic?m.text:f.lexer(m.text);case"paragraph":return"<p>"+f.lexer(m.text)+"</p>\n";case"text":return"<p>"+r()+"</p>\n"}}function r(){for(var e,n=m.text;(e=h[h.length-1])&&"text"===e.type;)n+="\n"+t().text;return f.lexer(n)}function i(e){h=e.reverse();for(var r="";t();)r+=n();return h=null,m=null,r}function s(e,t){return e.replace(t?/&/g:/&(?!#?\w+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function a(e){for(var t,n="",r=e.length,i=0;r>i;i++)t=e.charCodeAt(i),Math.random()>.5&&(t="x"+t.toString(16)),n+="&#"+t+";";return n}function o(){var e="(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:/|@)\\b";return e}function l(e,t){return e=e.source,t=t||"",function n(r,i){return r?(i=i.source||i,i=i.replace(/(^|[^\[])\^/g,"$1"),e=e.replace(r,i),n):new RegExp(e,t)}}function c(){}function u(e,t){return p(t),i(d.lexer(e))}function p(e){e||(e=b),g!==e&&(g=e,g.gfm?(d.fences=d.gfm.fences,d.paragraph=d.gfm.paragraph,f.text=f.gfm.text,f.url=f.gfm.url):(d.fences=d.normal.fences,d.paragraph=d.normal.paragraph,f.text=f.normal.text,f.url=f.normal.url),g.pedantic?(f.em=f.pedantic.em,f.strong=f.pedantic.strong):(f.em=f.normal.em,f.strong=f.normal.strong))}var d={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:c,hr:/^( *[-*_]){3,} *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,lheading:/^([^\n]+)\n *(=|-){3,} *\n*/,blockquote:/^( *>[^\n]+(\n[^\n]+)*\n*)+/,list:/^( *)(bull) [^\0]+?(?:hr|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:/^ *(?:comment|closed|closing) *(?:\n{2,}|\s*$)/,def:/^ *\[([^\]]+)\]: *([^\s]+)(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,paragraph:/^([^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+\n*/,text:/^[^\n]+/};d.bullet=/(?:[*+-]|\d+\.)/,d.item=/^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/,d.item=l(d.item,"gm")(/bull/g,d.bullet)(),d.list=l(d.list)(/bull/g,d.bullet)("hr",/\n+(?=(?: *[-*_]){3,} *(?:\n+|$))/)(),d.html=l(d.html)("comment",/<!--[^\0]*?-->/)("closed",/<(tag)[^\0]+?<\/\1>/)("closing",/<tag(?:"[^"]*"|'[^']*'|[^'">])*?>/)(/tag/g,o())(),d.paragraph=l(d.paragraph)("hr",d.hr)("heading",d.heading)("lheading",d.lheading)("blockquote",d.blockquote)("tag","<"+o())("def",d.def)(),d.normal={fences:d.fences,paragraph:d.paragraph},d.gfm={fences:/^ *(```|~~~) *(\w+)? *\n([^\0]+?)\s*\1 *(?:\n+|$)/,paragraph:/^/},d.gfm.paragraph=l(d.paragraph)("(?!","(?!"+d.gfm.fences.source.replace("\\1","\\2")+"|")(),d.lexer=function(e){var t=[];return t.links={},e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),d.token(e,t,!0)},d.token=function(e,t,n){for(var r,i,s,a,o,l,c,e=e.replace(/^ +$/gm,"");e;)if((s=d.newline.exec(e))&&(e=e.substring(s[0].length),s[0].length>1&&t.push({type:"space"})),s=d.code.exec(e))e=e.substring(s[0].length),s=s[0].replace(/^ {4}/gm,""),t.push({type:"code",text:g.pedantic?s:s.replace(/\n+$/,"")});else if(s=d.fences.exec(e))e=e.substring(s[0].length),t.push({type:"code",lang:s[2],text:s[3]});else if(s=d.heading.exec(e))e=e.substring(s[0].length),t.push({type:"heading",depth:s[1].length,text:s[2]});else if(s=d.lheading.exec(e))e=e.substring(s[0].length),t.push({type:"heading",depth:"="===s[2]?1:2,text:s[1]});else if(s=d.hr.exec(e))e=e.substring(s[0].length),t.push({type:"hr"});else if(s=d.blockquote.exec(e))e=e.substring(s[0].length),t.push({type:"blockquote_start"}),s=s[0].replace(/^ *> ?/gm,""),d.token(s,t,n),t.push({type:"blockquote_end"});else if(s=d.list.exec(e)){for(e=e.substring(s[0].length),t.push({type:"list_start",ordered:isFinite(s[2])}),s=s[0].match(d.item),r=!1,c=s.length,l=0;c>l;l++)a=s[l],o=a.length,a=a.replace(/^ *([*+-]|\d+\.) +/,""),~a.indexOf("\n ")&&(o-=a.length,a=g.pedantic?a.replace(/^ {1,4}/gm,""):a.replace(new RegExp("^ {1,"+o+"}","gm"),"")),i=r||/\n\n(?!\s*$)/.test(a),l!==c-1&&(r="\n"===a[a.length-1],i||(i=r)),t.push({type:i?"loose_item_start":"list_item_start"}),d.token(a,t),t.push({type:"list_item_end"});t.push({type:"list_end"})}else(s=d.html.exec(e))?(e=e.substring(s[0].length),t.push({type:g.sanitize?"paragraph":"html",pre:"pre"===s[1],text:s[0]})):n&&(s=d.def.exec(e))?(e=e.substring(s[0].length),t.links[s[1].toLowerCase()]={href:s[2],title:s[3]}):n&&(s=d.paragraph.exec(e))?(e=e.substring(s[0].length),t.push({type:"paragraph",text:s[0]})):(s=d.text.exec(e))&&(e=e.substring(s[0].length),t.push({type:"text",text:s[0]}));return t};var f={escape:/^\\([\\`*{}\[\]()#+\-.!_>])/,autolink:/^<([^ >]+(@|:\/)[^ >]+)>/,url:c,tag:/^<!--[^\0]*?-->|^<\/?\w+(?:"[^"]*"|'[^']*'|[^'">])*?>/,link:/^!?\[(inside)\]\(href\)/,reflink:/^!?\[(inside)\]\s*\[([^\]]*)\]/,nolink:/^!?\[((?:\[[^\]]*\]|[^\[\]])*)\]/,strong:/^__([^\0]+?)__(?!_)|^\*\*([^\0]+?)\*\*(?!\*)/,em:/^\b_((?:__|[^\0])+?)_\b|^\*((?:\*\*|[^\0])+?)\*(?!\*)/,code:/^(`+)([^\0]*?[^`])\1(?!`)/,br:/^ {2,}\n(?!\s*$)/,text:/^[^\0]+?(?=[\\<!\[_*`]| {2,}\n|$)/};f._linkInside=/(?:\[[^\]]*\]|[^\]]|\](?=[^\[]*\]))*/,f._linkHref=/\s*<?([^\s]*?)>?(?:\s+['"]([^\0]*?)['"])?\s*/,f.link=l(f.link)("inside",f._linkInside)("href",f._linkHref)(),f.reflink=l(f.reflink)("inside",f._linkInside)(),f.normal={url:f.url,strong:f.strong,em:f.em,text:f.text},f.pedantic={strong:/^__(?=\S)([^\0]*?\S)__(?!_)|^\*\*(?=\S)([^\0]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([^\0]*?\S)_(?!_)|^\*(?=\S)([^\0]*?\S)\*(?!\*)/},f.gfm={url:/^(https?:\/\/[^\s]+[^.,:;"')\]\s])/,text:/^[^\0]+?(?=[\\<!\[_*`]|https?:\/\/| {2,}\n|$)/},f.lexer=function(t){for(var n,r,i,o,l="",c=h.links;t;)if(o=f.escape.exec(t))t=t.substring(o[0].length),l+=o[1];else if(o=f.autolink.exec(t))t=t.substring(o[0].length),"@"===o[2]?(r=":"===o[1][6]?a(o[1].substring(7)):a(o[1]),i=a("mailto:")+r):(r=s(o[1]),i=r),l+='<a href="'+i+'">'+r+"</a>";else if(o=f.url.exec(t))t=t.substring(o[0].length),r=s(o[1]),i=r,l+='<a href="'+i+'">'+r+"</a>";else if(o=f.tag.exec(t))t=t.substring(o[0].length),l+=g.sanitize?s(o[0]):o[0];else if(o=f.link.exec(t))t=t.substring(o[0].length),l+=e(o,{href:o[2],title:o[3]});else if((o=f.reflink.exec(t))||(o=f.nolink.exec(t))){if(t=t.substring(o[0].length),n=(o[2]||o[1]).replace(/\s+/g," "),n=c[n.toLowerCase()],!n||!n.href){l+=o[0][0],t=o[0].substring(1)+t;continue}l+=e(o,n)}else(o=f.strong.exec(t))?(t=t.substring(o[0].length),l+="<strong>"+f.lexer(o[2]||o[1])+"</strong>"):(o=f.em.exec(t))?(t=t.substring(o[0].length),l+="<em>"+f.lexer(o[2]||o[1])+"</em>"):(o=f.code.exec(t))?(t=t.substring(o[0].length),l+="<code>"+s(o[2],!0)+"</code>"):(o=f.br.exec(t))?(t=t.substring(o[0].length),l+="<br>"):(o=f.text.exec(t))&&(t=t.substring(o[0].length),l+=s(o[0]));return l};var h,m;c.exec=c;var g,b;u.options=u.setOptions=function(e){return b=e,p(e),u},u.setOptions({gfm:!0,pedantic:!1,sanitize:!1,highlight:null}),u.parser=function(e,t){return p(t),i(e)},u.lexer=function(e,t){return p(t),d.lexer(e)},u.parse=u,"undefined"!=typeof module?module.exports=u:this.marked=u}.call(function(){return this||("undefined"!=typeof window?window:global)}()),define("core/marked",function(){}),define("core/markdown",["core/marked"],function(){function e(e){function t(e){return parseInt(e.tagName.charAt(1))}function n(e){for(var t;e>0;)if(e--,t=c[e])return t}function r(e){for(e=e.firstChild;e;){if(p.test(e.tagName))return e;e=e.nextSibling}return null}function i(r){var i=e.createElement("section"),s=t(r);i.appendChild(r),n(s).appendChild(i),c[s]=i,c.length=s+1,u=i}function s(e,i){var s=r(e),a=s?t(s):1,o=n(a);s&&e.removeChild(s),e.appendChild(i(e)),s&&e.insertBefore(s,e.firstChild),o.appendChild(e),u=o}function a(e){u.appendChild(e)}function o(){return l}var l=e.createDocumentFragment(),c=[l],u=l,p=/H[1-6]/;return{addHeader:i,addSection:s,addElement:a,getRoot:o}}return marked.setOptions({gfm:!1,pedantic:!1,sanitize:!1}),{toHTML:function(e){return e=e.replace(/>/g,">"),e=this.removeLeftPadding(e),marked(e)},removeLeftPadding:function(e){var t,n,r=e.match(/\n[ ]+\S/g);if(r){n=r[0].length-2;for(var i=0,s=r.length;s>i;i++)t=r[i].length-2,("undefined"==typeof n||n>t)&&(n=t);var a=new RegExp("\n[ ]{0,"+n+"}","g");e=e.replace(a,"\n")}return e},processBody:function(e){var t,n=e.createDocumentFragment(),r=e.createElement("div");for(r.innerHTML=this.toHTML(e.body.innerHTML);t=r.firstChild;)n.appendChild(t);return n},processSections:function(e){var t=this;$("section",e).each(function(){this.innerHTML=t.toHTML(this.innerHTML)})},processIssuesNotesAndReqs:function(e){var t=e.createElement("div"),n=this;$(".issue, .note, .req",e).each(function(){t.innerHTML=n.toHTML(this.innerHTML),this.innerHTML="";for(var e=t.firstChild;e.firstChild;)this.appendChild(e.firstChild)})},structure:function(t,n){function r(t){for(var i,s,a=e(n);i=t.firstChild;)if(1===i.nodeType)switch(s=i.tagName.toLowerCase()){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":a.addHeader(i);break;case"section":a.addSection(i,r);break;default:a.addElement(i)}else t.removeChild(i);return a.getRoot()}return r(t)},run:function(e,t,n,r){if(r.pub("start","core/markdown"),"markdown"===e.format){this.processSections(t);var i=this.structure(this.processBody(t),t);t.body.innerHTML="",t.body.appendChild(i)}r.pub("end","core/markdown"),n()}}}),function(){var e=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],t=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,n=/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,r="undefined"!=typeof location&&location.href,i=r&&location.protocol&&location.protocol.replace(/\:/,""),s=r&&location.hostname,a=r&&(location.port||void 0),o=[];define("text",[],function(){var l,c;return l={version:"1.0.8",strip:function(e){if(e){var e=e.replace(t,""),r=e.match(n);r&&(e=r[1])}else e="";return e},jsEscape:function(e){return e.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")},createXhr:function(){var t,n,r;if("undefined"!=typeof XMLHttpRequest)return new XMLHttpRequest;if("undefined"!=typeof ActiveXObject)for(n=0;3>n;n++){r=e[n];try{t=new ActiveXObject(r)}catch(i){}if(t){e=[r];break}}return t},parseName:function(e){var t=!1,n=e.indexOf("."),r=e.substring(0,n),e=e.substring(n+1,e.length),n=e.indexOf("!");return-1!==n&&(t=e.substring(n+1,e.length),t="strip"===t,e=e.substring(0,n)),{moduleName:r,ext:e,strip:t}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(e,t,n,r){var i,s=l.xdRegExp.exec(e);return s?(e=s[2],s=s[3],s=s.split(":"),i=s[1],s=s[0],!(e&&e!==t||s&&s!==n||(i||s)&&i!==r)):!0},finishLoad:function(e,t,n,r,i){n=t?l.strip(n):n,i.isBuild&&(o[e]=n),r(n)},load:function(e,t,n,o){if(o.isBuild&&!o.inlineText)n();else{var c=l.parseName(e),u=c.moduleName+"."+c.ext,p=t.toUrl(u),d=o&&o.text&&o.text.useXhr||l.useXhr;!r||d(p,i,s,a)?l.get(p,function(t){l.finishLoad(e,c.strip,t,n,o)}):t([u],function(e){l.finishLoad(c.moduleName+"."+c.ext,c.strip,e,n,o)})}},write:function(e,t,n){if(o.hasOwnProperty(t)){var r=l.jsEscape(o[t]);n.asModule(e+"!"+t,"define(function () { return '"+r+"';});\n")}},writeFile:function(e,t,n,r,i){var t=l.parseName(t),s=t.moduleName+"."+t.ext,a=n.toUrl(t.moduleName+"."+t.ext)+".js";l.load(s,n,function(){var t=function(e){return r(a,e)};t.asModule=function(e,t){return r.asModule(e,a,t)},l.write(e,s,t,i)},i)}},l.createXhr()?l.get=function(e,t){var n=l.createXhr();n.open("GET",e,!0),n.onreadystatechange=function(){4===n.readyState&&t(n.responseText)},n.send(null)}:"undefined"!=typeof process&&process.versions&&process.versions.node?(c=require.nodeRequire("fs"),l.get=function(e,t){var n=c.readFileSync(e,"utf8");0===n.indexOf("")&&(n=n.substring(1)),t(n)}):"undefined"!=typeof Packages&&(l.get=function(e,t){var n,r,i=new java.io.File(e),s=java.lang.System.getProperty("line.separator"),i=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(i),"utf-8")),a="";try{for(n=new java.lang.StringBuffer,(r=i.readLine())&&r.length()&&65279===r.charAt(0)&&(r=r.substring(1)),n.append(r);null!==(r=i.readLine());)n.append(s),n.append(r);a=String(n.toString())}finally{i.close()}t(a)}),l})}(),define("text!core/css/respec2.css",[],function(){return'/*****************************************************************\n * ReSpec 3 CSS\n * Robin Berjon - http://berjon.com/\n *****************************************************************/\n\n/* --- INLINES --- */\nem.rfc2119 { \n text-transform: lowercase;\n font-variant: small-caps;\n font-style: normal;\n color: #900;\n}\n\nh1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,\nh1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {\n border: none;\n}\n\ndfn {\n font-weight: bold;\n}\n\na.internalDFN {\n color: inherit;\n border-bottom: 1px solid #99c;\n text-decoration: none;\n}\n\na.externalDFN {\n color: inherit;\n border-bottom: 1px dotted #ccc;\n text-decoration: none;\n}\n\na.bibref {\n text-decoration: none;\n}\n\ncite .bibref {\n font-style: normal;\n}\n\ncode {\n color: #ff4500;\n}\n\n/* --- TOC --- */\n.toc a, .tof a {\n text-decoration: none;\n}\n\na .secno, a .figno {\n color: #000;\n}\n\nul.tof, ol.tof {\n list-style: none outside none;\n}\n\n.caption {\n margin-top: 0.5em;\n font-style: italic;\n}\n\n/* --- TABLE --- */\ntable.simple {\n border-spacing: 0;\n border-collapse: collapse;\n border-bottom: 3px solid #005a9c;\n}\n\n.simple th {\n background: #005a9c;\n color: #fff;\n padding: 3px 5px;\n text-align: left;\n}\n\n.simple th[scope="row"] {\n background: inherit;\n color: inherit;\n border-top: 1px solid #ddd;\n}\n\n.simple td {\n padding: 3px 10px;\n border-top: 1px solid #ddd;\n}\n\n.simple tr:nth-child(even) {\n background: #f0f6ff;\n}\n\n/* --- DL --- */\n.section dd > p:first-child {\n margin-top: 0;\n}\n\n.section dd > p:last-child {\n margin-bottom: 0;\n}\n\n.section dd {\n margin-bottom: 1em;\n}\n\n.section dl.attrs dd, .section dl.eldef dd {\n margin-bottom: 0;\n}\n'}),define("core/style",["text!core/css/respec2.css"],function(e){return{run:function(t,n,r,i){i.pub("start","core/style"),t.noReSpecCSS||$("<style/>").appendTo($("head",$(n))).text(e),i.pub("end","core/style"),r()}}}),define("core/utils",["jquery"],function(e){e.fn.renameElement=function(t){var n=[];return this.each(function(){for(var r=e(this.ownerDocument.createElement(t)),i=0,s=this.attributes.length;s>i;i++){var a=this.attributes[i];r[0].setAttributeNS(a.namespaceURI,a.name,a.value)}e(this).contents().appendTo(r),e(this).replaceWith(r),n.push(r[0])}),e(n)},e.fn.dfnTitle=function(){var e;return e=this.attr("title")?this.attr("title"):1==this.contents().length&&1==this.children("abbr, acronym").length&&this.find(":first-child").attr("title")?this.find(":first-child").attr("title"):this.text(),e.toLowerCase().replace(/^\s+/,"").replace(/\s+$/,"").split(/\s+/).join(" ")},e.fn.makeID=function(t,n,r){if(this.attr("id"))return this.attr("id");n||(n=this.attr("title")?this.attr("title"):this.text()),n=n.replace(/^\s+/,"").replace(/\s+$/,"");var i=r?n:n.toLowerCase();i=i.split(/[^\-.0-9a-z_]+/i).join("-").replace(/^-+/,"").replace(/-+$/,""),/\.$/.test(i)&&(i+="x"),i.length>0&&/^[^a-z]/i.test(i)&&(i="x"+i),0===i.length&&(i="generatedID"),t&&(i=t+"-"+i);var s=1,a=this[0].ownerDocument;if(e("#"+i,a).length){for(;e("#"+i+"-"+s,a).length;)s++;i+="-"+s}return this.attr("id",i),i},e.fn.allTextNodes=function(e){function t(e){if(1!==e.nodeType||!r[e.localName.toLowerCase()])if(3===e.nodeType)n.push(e);else for(var i=0,s=e.childNodes.length;s>i;++i)t(e.childNodes[i])}for(var n=[],r={},i=0,s=e.length;s>i;i++)r[e[i]]=!0;return t(this[0]),n};var t={run:function(e,t,n,r){r.pub("start","core/utils"),r.pub("end","core/utils"),n()},joinAnd:function(e,t){if(!e||!e.length)return"";t=t||function(e){return e};var n="";if(1===e.length)return t(e[0],0);for(var r=0,i=e.length;i>r;r++)r>0&&(n+=2===i?" ":", ",r==i-1&&(n+="and ")),n+=t(e[r],r);return n},xmlEscape:function(e){return e.replace(/&/g,"&").replace(/>/g,">").replace(/"/g,""").replace(/</g,"<")},norm:function(e){return e.replace(/^\s+/,"").replace(/\s+$/,"").split(/\s+/).join(" ")},concatDate:function(e,t){return t||(t=""),""+e.getFullYear()+t+this.lead0(e.getMonth()+1)+t+this.lead0(e.getDate())},lead0:function(e){return e=""+e,1==e.length?"0"+e:e},parseSimpleDate:function(e){return new Date(e.substr(0,4),e.substr(5,2)-1,e.substr(8,2))},parseLastModified:function(e){return e?new Date(Date.parse(e)):new Date},humanMonths:["January","February","March","April","May","June","July","August","September","October","November","December"],humanDate:function(e){return e instanceof Date||(e=this.parseSimpleDate(e)),this.lead0(e.getDate())+" "+this.humanMonths[e.getMonth()]+" "+e.getFullYear()},isoDate:function(e){return e instanceof Date||(e=this.parseSimpleDate(e)),e.toISOString()},linkCSS:function(t,n){e.isArray(n)||(n=[n]),e.each(n,function(n,r){e("head",t).append(e("<link/>").attr({rel:"stylesheet",href:r}))})},runTransforms:function(e,t){var n=[this,e],r=Array.prototype.slice.call(arguments);if(r.shift(),r.shift(),n=n.concat(r),t)for(var i=t.split(/\s+/),s=0;s<i.length;s++){var a=i[s];if(window[a])try{e=window[a].apply(this,n)}catch(o){respecEvents.pub("warn","call to "+a+"() failed with "+o)}}return e}};return t}),define("w3c/style",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","w3c/style"),t.specStatus||i.pub("error","Configuration 'specStatus' is not set, required for w3c/style");var s=t.specStatus;("FPWD"===s||"LC"===s||"WD-NOTE"===s||"LC-NOTE"===s)&&(s="WD"),"FPWD-NOTE"===s&&(s="WG-NOTE"),("finding"===s||"draft-finding"===s)&&(s="base");var a="https://";a+="unofficial"===s?"www.w3.org/StyleSheets/TR/w3c-unofficial":"base"===s?"www.w3.org/StyleSheets/TR/base":"CG-DRAFT"===s||"CG-FINAL"===s||"BG-DRAFT"===s||"BG-FINAL"===s?"www.w3.org/community/src/css/spec/"+s.toLowerCase()+".css":"www.w3.org/StyleSheets/TR/W3C-"+s,e.linkCSS(n,a),i.pub("end","w3c/style"),r()}}});var Handlebars={};Handlebars.VERSION="1.0.beta.6",Handlebars.helpers={},Handlebars.partials={},Handlebars.registerHelper=function(e,t,n){n&&(t.not=n),this.helpers[e]=t},Handlebars.registerPartial=function(e,t){this.partials[e]=t},Handlebars.registerHelper("helperMissing",function(e){if(2===arguments.length)return void 0;throw new Error("Could not find property '"+e+"'")});var toString=Object.prototype.toString,functionType="[object Function]";Handlebars.registerHelper("blockHelperMissing",function(e,t){var n=t.inverse||function(){},r=t.fn,i="",s=toString.call(e);if(s===functionType&&(e=e.call(this)),e===!0)return r(this);if(e===!1||null==e)return n(this);if("[object Array]"===s){if(e.length>0)for(var a=0,o=e.length;o>a;a++)i+=r(e[a]);else i=n(this);return i}return r(e)}),Handlebars.registerHelper("each",function(e,t){var n=t.fn,r=t.inverse,i="";if(e&&e.length>0)for(var s=0,a=e.length;a>s;s++)i+=n(e[s]);else i=r(this);return i}),Handlebars.registerHelper("if",function(e,t){var n=toString.call(e);return n===functionType&&(e=e.call(this)),!e||Handlebars.Utils.isEmpty(e)?t.inverse(this):t.fn(this)}),Handlebars.registerHelper("unless",function(e,t){var n=t.fn,r=t.inverse;return t.fn=r,t.inverse=n,Handlebars.helpers["if"].call(this,e,t)}),Handlebars.registerHelper("with",function(e,t){return t.fn(e)}),Handlebars.registerHelper("log",function(e){Handlebars.log(e)});var handlebars=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,statements:6,simpleInverse:7,statement:8,openInverse:9,closeBlock:10,openBlock:11,mustache:12,partial:13,CONTENT:14,COMMENT:15,OPEN_BLOCK:16,inMustache:17,CLOSE:18,OPEN_INVERSE:19,OPEN_ENDBLOCK:20,path:21,OPEN:22,OPEN_UNESCAPED:23,OPEN_PARTIAL:24,params:25,hash:26,param:27,STRING:28,INTEGER:29,BOOLEAN:30,hashSegments:31,hashSegment:32,ID:33,EQUALS:34,pathSegments:35,SEP:36,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"CONTENT",15:"COMMENT",16:"OPEN_BLOCK",18:"CLOSE",19:"OPEN_INVERSE",20:"OPEN_ENDBLOCK",22:"OPEN",23:"OPEN_UNESCAPED",24:"OPEN_PARTIAL",28:"STRING",29:"INTEGER",30:"BOOLEAN",33:"ID",34:"EQUALS",36:"SEP"},productions_:[0,[3,2],[4,3],[4,1],[4,0],[6,1],[6,2],[8,3],[8,3],[8,1],[8,1],[8,1],[8,1],[11,3],[9,3],[10,3],[12,3],[12,3],[13,3],[13,4],[7,2],[17,3],[17,2],[17,2],[17,1],[25,2],[25,1],[27,1],[27,1],[27,1],[27,1],[26,1],[31,2],[31,1],[32,3],[32,3],[32,3],[32,3],[21,1],[35,3],[35,1]],performAction:function(e,t,n,r,i,s){var a=s.length-1;switch(i){case 1:return s[a-1];case 2:this.$=new r.ProgramNode(s[a-2],s[a]);break;case 3:this.$=new r.ProgramNode(s[a]);break;case 4:this.$=new r.ProgramNode([]);break;case 5:this.$=[s[a]];break;case 6:s[a-1].push(s[a]),this.$=s[a-1];break;case 7:this.$=new r.InverseNode(s[a-2],s[a-1],s[a]);break;case 8:this.$=new r.BlockNode(s[a-2],s[a-1],s[a]);break;case 9:this.$=s[a];break;case 10:this.$=s[a];break;case 11:this.$=new r.ContentNode(s[a]);break;case 12:this.$=new r.CommentNode(s[a]);break;case 13:this.$=new r.MustacheNode(s[a-1][0],s[a-1][1]);break;case 14:this.$=new r.MustacheNode(s[a-1][0],s[a-1][1]);break;case 15:this.$=s[a-1];break;case 16:this.$=new r.MustacheNode(s[a-1][0],s[a-1][1]);break;case 17:this.$=new r.MustacheNode(s[a-1][0],s[a-1][1],!0);break;case 18:this.$=new r.PartialNode(s[a-1]);break;case 19:this.$=new r.PartialNode(s[a-2],s[a-1]);break;case 20:break;case 21:this.$=[[s[a-2]].concat(s[a-1]),s[a]];break;case 22:this.$=[[s[a-1]].concat(s[a]),null];break;case 23:this.$=[[s[a-1]],s[a]];break;case 24:this.$=[[s[a]],null];break;case 25:s[a-1].push(s[a]),this.$=s[a-1];break;case 26:this.$=[s[a]];break;case 27:this.$=s[a];break;case 28:this.$=new r.StringNode(s[a]);break;case 29:this.$=new r.IntegerNode(s[a]);break;case 30:this.$=new r.BooleanNode(s[a]);break;case 31:this.$=new r.HashNode(s[a]);break;case 32:s[a-1].push(s[a]),this.$=s[a-1];break;case 33:this.$=[s[a]];break;case 34:this.$=[s[a-2],s[a]];break;case 35:this.$=[s[a-2],new r.StringNode(s[a])];break;case 36:this.$=[s[a-2],new r.IntegerNode(s[a])];break;case 37:this.$=[s[a-2],new r.BooleanNode(s[a])];break;case 38:this.$=new r.IdNode(s[a]);break;case 39:s[a-2].push(s[a]),this.$=s[a-2];break;case 40:this.$=[s[a]]}},table:[{3:1,4:2,5:[2,4],6:3,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],22:[1,13],23:[1,14],24:[1,15]},{1:[3]},{5:[1,16]},{5:[2,3],7:17,8:18,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,19],20:[2,3],22:[1,13],23:[1,14],24:[1,15]},{5:[2,5],14:[2,5],15:[2,5],16:[2,5],19:[2,5],20:[2,5],22:[2,5],23:[2,5],24:[2,5]},{4:20,6:3,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,4],22:[1,13],23:[1,14],24:[1,15]},{4:21,6:3,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,4],22:[1,13],23:[1,14],24:[1,15]},{5:[2,9],14:[2,9],15:[2,9],16:[2,9],19:[2,9],20:[2,9],22:[2,9],23:[2,9],24:[2,9]},{5:[2,10],14:[2,10],15:[2,10],16:[2,10],19:[2,10],20:[2,10],22:[2,10],23:[2,10],24:[2,10]},{5:[2,11],14:[2,11],15:[2,11],16:[2,11],19:[2,11],20:[2,11],22:[2,11],23:[2,11],24:[2,11]},{5:[2,12],14:[2,12],15:[2,12],16:[2,12],19:[2,12],20:[2,12],22:[2,12],23:[2,12],24:[2,12]},{17:22,21:23,33:[1,25],35:24},{17:26,21:23,33:[1,25],35:24},{17:27,21:23,33:[1,25],35:24},{17:28,21:23,33:[1,25],35:24},{21:29,33:[1,25],35:24},{1:[2,1]},{6:30,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],22:[1,13],23:[1,14],24:[1,15]},{5:[2,6],14:[2,6],15:[2,6],16:[2,6],19:[2,6],20:[2,6],22:[2,6],23:[2,6],24:[2,6]},{17:22,18:[1,31],21:23,33:[1,25],35:24},{10:32,20:[1,33]},{10:34,20:[1,33]},{18:[1,35]},{18:[2,24],21:40,25:36,26:37,27:38,28:[1,41],29:[1,42],30:[1,43],31:39,32:44,33:[1,45],35:24},{18:[2,38],28:[2,38],29:[2,38],30:[2,38],33:[2,38],36:[1,46]},{18:[2,40],28:[2,40],29:[2,40],30:[2,40],33:[2,40],36:[2,40]},{18:[1,47]},{18:[1,48]},{18:[1,49]},{18:[1,50],21:51,33:[1,25],35:24},{5:[2,2],8:18,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,2],22:[1,13],23:[1,14],24:[1,15]},{14:[2,20],15:[2,20],16:[2,20],19:[2,20],22:[2,20],23:[2,20],24:[2,20]},{5:[2,7],14:[2,7],15:[2,7],16:[2,7],19:[2,7],20:[2,7],22:[2,7],23:[2,7],24:[2,7]},{21:52,33:[1,25],35:24},{5:[2,8],14:[2,8],15:[2,8],16:[2,8],19:[2,8],20:[2,8],22:[2,8],23:[2,8],24:[2,8]},{14:[2,14],15:[2,14],16:[2,14],19:[2,14],20:[2,14],22:[2,14],23:[2,14],24:[2,14]},{18:[2,22],21:40,26:53,27:54,28:[1,41],29:[1,42],30:[1,43],31:39,32:44,33:[1,45],35:24},{18:[2,23]},{18:[2,26],28:[2,26],29:[2,26],30:[2,26],33:[2,26]},{18:[2,31],32:55,33:[1,56]},{18:[2,27],28:[2,27],29:[2,27],30:[2,27],33:[2,27]},{18:[2,28],28:[2,28],29:[2,28],30:[2,28],33:[2,28]},{18:[2,29],28:[2,29],29:[2,29],30:[2,29],33:[2,29]},{18:[2,30],28:[2,30],29:[2,30],30:[2,30],33:[2,30]},{18:[2,33],33:[2,33]},{18:[2,40],28:[2,40],29:[2,40],30:[2,40],33:[2,40],34:[1,57],36:[2,40]},{33:[1,58]},{14:[2,13],15:[2,13],16:[2,13],19:[2,13],20:[2,13],22:[2,13],23:[2,13],24:[2,13]},{5:[2,16],14:[2,16],15:[2,16],16:[2,16],19:[2,16],20:[2,16],22:[2,16],23:[2,16],24:[2,16]},{5:[2,17],14:[2,17],15:[2,17],16:[2,17],19:[2,17],20:[2,17],22:[2,17],23:[2,17],24:[2,17]},{5:[2,18],14:[2,18],15:[2,18],16:[2,18],19:[2,18],20:[2,18],22:[2,18],23:[2,18],24:[2,18]},{18:[1,59]},{18:[1,60]},{18:[2,21]},{18:[2,25],28:[2,25],29:[2,25],30:[2,25],33:[2,25]},{18:[2,32],33:[2,32]},{34:[1,57]},{21:61,28:[1,62],29:[1,63],30:[1,64],33:[1,25],35:24},{18:[2,39],28:[2,39],29:[2,39],30:[2,39],33:[2,39],36:[2,39]},{5:[2,19],14:[2,19],15:[2,19],16:[2,19],19:[2,19],20:[2,19],22:[2,19],23:[2,19],24:[2,19]},{5:[2,15],14:[2,15],15:[2,15],16:[2,15],19:[2,15],20:[2,15],22:[2,15],23:[2,15],24:[2,15]},{18:[2,34],33:[2,34]},{18:[2,35],33:[2,35]},{18:[2,36],33:[2,36]},{18:[2,37],33:[2,37]}],defaultActions:{16:[2,1],37:[2,23],53:[2,21]},parseError:function(e){throw new Error(e)},parse:function(e){function t(){var e;return e=n.lexer.lex()||1,"number"!=typeof e&&(e=n.symbols_[e]||e),e}var n=this,r=[0],i=[null],s=[],a=this.table,o="",l=0,c=0,u=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,"undefined"==typeof this.lexer.yylloc&&(this.lexer.yylloc={}); +var p=this.lexer.yylloc;s.push(p),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var d,f,h,m,g,b,v,y,x,w={};;){if(h=r[r.length-1],this.defaultActions[h]?m=this.defaultActions[h]:(null==d&&(d=t()),m=a[h]&&a[h][d]),!("undefined"!=typeof m&&m.length&&m[0]||u)){x=[];for(b in a[h])this.terminals_[b]&&b>2&&x.push("'"+this.terminals_[b]+"'");var C="";C=this.lexer.showPosition?"Parse error on line "+(l+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+x.join(", ")+", got '"+this.terminals_[d]+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==d?"end of input":"'"+(this.terminals_[d]||d)+"'"),this.parseError(C,{text:this.lexer.match,token:this.terminals_[d]||d,line:this.lexer.yylineno,loc:p,expected:x})}if(m[0]instanceof Array&&m.length>1)throw new Error("Parse Error: multiple actions possible at state: "+h+", token: "+d);switch(m[0]){case 1:r.push(d),i.push(this.lexer.yytext),s.push(this.lexer.yylloc),r.push(m[1]),d=null,f?(d=f,f=null):(c=this.lexer.yyleng,o=this.lexer.yytext,l=this.lexer.yylineno,p=this.lexer.yylloc,u>0&&u--);break;case 2:if(v=this.productions_[m[1]][1],w.$=i[i.length-v],w._$={first_line:s[s.length-(v||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(v||1)].first_column,last_column:s[s.length-1].last_column},g=this.performAction.call(w,o,c,l,this.yy,m[1],i,s),"undefined"!=typeof g)return g;v&&(r=r.slice(0,2*-1*v),i=i.slice(0,-1*v),s=s.slice(0,-1*v)),r.push(this.productions_[m[1]][0]),i.push(w.$),s.push(w._$),y=a[r[r.length-2]][r[r.length-1]],r.push(y);break;case 3:return!0}}return!0}},t=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parseError)throw new Error(e);this.yy.parseError(e,t)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.match+=e,this.matched+=e;var t=e.match(/\n/);return t&&this.yylineno++,this._input=this._input.slice(1),e},unput:function(e){return this._input=e+this._input,this},more:function(){return this._more=!0,this},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n;this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),i=0;i<r.length;i++)if(t=this._input.match(this.rules[r[i]]))return n=t[0].match(/\n.*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-1:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,r[i],this.conditionStack[this.conditionStack.length-1]),e?e:void 0;return""===this._input?this.EOF:(this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno}),void 0)},lex:function(){var e=this.next();return"undefined"!=typeof e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)}};return e.performAction=function(e,t,n,r){switch(n){case 0:if("\\"!==t.yytext.slice(-1)&&this.begin("mu"),"\\"===t.yytext.slice(-1)&&(t.yytext=t.yytext.substr(0,t.yyleng-1),this.begin("emu")),t.yytext)return 14;break;case 1:return 14;case 2:return this.popState(),14;case 3:return 24;case 4:return 16;case 5:return 20;case 6:return 19;case 7:return 19;case 8:return 23;case 9:return 23;case 10:return t.yytext=t.yytext.substr(3,t.yyleng-5),this.popState(),15;case 11:return 22;case 12:return 34;case 13:return 33;case 14:return 33;case 15:return 36;case 16:break;case 17:return this.popState(),18;case 18:return this.popState(),18;case 19:return t.yytext=t.yytext.substr(1,t.yyleng-2).replace(/\\"/g,'"'),28;case 20:return 30;case 21:return 30;case 22:return 29;case 23:return 33;case 24:return t.yytext=t.yytext.substr(1,t.yyleng-2),33;case 25:return"INVALID";case 26:return 5}},e.rules=[/^[^\x00]*?(?=(\{\{))/,/^[^\x00]+/,/^[^\x00]{2,}?(?=(\{\{))/,/^\{\{>/,/^\{\{#/,/^\{\{\//,/^\{\{\^/,/^\{\{\s*else\b/,/^\{\{\{/,/^\{\{&/,/^\{\{![\s\S]*?\}\}/,/^\{\{/,/^=/,/^\.(?=[} ])/,/^\.\./,/^[\/.]/,/^\s+/,/^\}\}\}/,/^\}\}/,/^"(\\["]|[^"])*"/,/^true(?=[}\s])/,/^false(?=[}\s])/,/^[0-9]+(?=[}\s])/,/^[a-zA-Z0-9_$-]+(?=[=}\s\/.])/,/^\[[^\]]*\]/,/^./,/^$/],e.conditions={mu:{rules:[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26],inclusive:!1},emu:{rules:[2],inclusive:!1},INITIAL:{rules:[0,1,26],inclusive:!0}},e}();return e.lexer=t,e}();"undefined"!=typeof require&&"undefined"!=typeof exports&&(exports.parser=handlebars,exports.parse=function(){return handlebars.parse.apply(handlebars,arguments)},exports.main=function(e){if(!e[1])throw new Error("Usage: "+e[0]+" FILE");if("undefined"!=typeof process)var t=require("fs").readFileSync(require("path").join(process.cwd(),e[1]),"utf8");else var n=require("file").path(require("file").cwd()),t=n.join(e[1]).read({charset:"utf-8"});return exports.parser.parse(t)},"undefined"!=typeof module&&require.main===module&&exports.main("undefined"!=typeof process?process.argv.slice(1):require("system").args)),Handlebars.Parser=handlebars,Handlebars.parse=function(e){return Handlebars.Parser.yy=Handlebars.AST,Handlebars.Parser.parse(e)},Handlebars.print=function(e){return(new Handlebars.PrintVisitor).accept(e)},Handlebars.logger={DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,log:function(){}},Handlebars.log=function(e,t){Handlebars.logger.log(e,t)},function(){Handlebars.AST={},Handlebars.AST.ProgramNode=function(e,t){this.type="program",this.statements=e,t&&(this.inverse=new Handlebars.AST.ProgramNode(t))},Handlebars.AST.MustacheNode=function(e,t,n){this.type="mustache",this.id=e[0],this.params=e.slice(1),this.hash=t,this.escaped=!n},Handlebars.AST.PartialNode=function(e,t){this.type="partial",this.id=e,this.context=t};var e=function(e,t){if(e.original!==t.original)throw new Handlebars.Exception(e.original+" doesn't match "+t.original)};Handlebars.AST.BlockNode=function(t,n,r){e(t.id,r),this.type="block",this.mustache=t,this.program=n},Handlebars.AST.InverseNode=function(t,n,r){e(t.id,r),this.type="inverse",this.mustache=t,this.program=n},Handlebars.AST.ContentNode=function(e){this.type="content",this.string=e},Handlebars.AST.HashNode=function(e){this.type="hash",this.pairs=e},Handlebars.AST.IdNode=function(e){this.type="ID",this.original=e.join(".");for(var t=[],n=0,r=0,i=e.length;i>r;r++){var s=e[r];".."===s?n++:"."===s||"this"===s?this.isScoped=!0:t.push(s)}this.parts=t,this.string=t.join("."),this.depth=n,this.isSimple=1===t.length&&0===n},Handlebars.AST.StringNode=function(e){this.type="STRING",this.string=e},Handlebars.AST.IntegerNode=function(e){this.type="INTEGER",this.integer=e},Handlebars.AST.BooleanNode=function(e){this.type="BOOLEAN",this.bool=e},Handlebars.AST.CommentNode=function(e){this.type="comment",this.comment=e}}(),Handlebars.Exception=function(){var e=Error.prototype.constructor.apply(this,arguments);for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);this.message=e.message},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(e){this.string=e},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var e={"<":"<",">":">",'"':""","'":"'","`":"`"},t=/&(?!\w+;)|[<>"'`]/g,n=/[&<>"'`]/,r=function(t){return e[t]||"&"};Handlebars.Utils={escapeExpression:function(e){return e instanceof Handlebars.SafeString?e.toString():null==e||e===!1?"":n.test(e)?e.replace(t,r):e},isEmpty:function(e){return"undefined"==typeof e?!0:null===e?!0:e===!1?!0:"[object Array]"===Object.prototype.toString.call(e)&&0===e.length?!0:!1}}}(),Handlebars.Compiler=function(){},Handlebars.JavaScriptCompiler=function(){},function(e,t){e.OPCODE_MAP={appendContent:1,getContext:2,lookupWithHelpers:3,lookup:4,append:5,invokeMustache:6,appendEscaped:7,pushString:8,truthyOrFallback:9,functionOrFallback:10,invokeProgram:11,invokePartial:12,push:13,assignToHash:15,pushStringParam:16},e.MULTI_PARAM_OPCODES={appendContent:1,getContext:1,lookupWithHelpers:2,lookup:1,invokeMustache:3,pushString:1,truthyOrFallback:1,functionOrFallback:1,invokeProgram:3,invokePartial:1,push:1,assignToHash:1,pushStringParam:1},e.DISASSEMBLE_MAP={};for(var n in e.OPCODE_MAP){var r=e.OPCODE_MAP[n];e.DISASSEMBLE_MAP[r]=n}e.multiParamSize=function(t){return e.MULTI_PARAM_OPCODES[e.DISASSEMBLE_MAP[t]]},e.prototype={compiler:e,disassemble:function(){for(var t,n,r,i,s,a=this.opcodes,o=[],l=0,c=a.length;c>l;l++)if(t=a[l],"DECLARE"===t)i=a[++l],s=a[++l],o.push("DECLARE "+i+" = "+s);else{r=e.DISASSEMBLE_MAP[t];for(var u=e.multiParamSize(t),p=[],d=0;u>d;d++)n=a[++l],"string"==typeof n&&(n='"'+n.replace("\n","\\n")+'"'),p.push(n);r=r+" "+p.join(" "),o.push(r)}return o.join("\n")},guid:0,compile:function(e,t){this.children=[],this.depths={list:[]},this.options=t;var n=this.options.knownHelpers;if(this.options.knownHelpers={helperMissing:!0,blockHelperMissing:!0,each:!0,"if":!0,unless:!0,"with":!0,log:!0},n)for(var r in n)this.options.knownHelpers[r]=n[r];return this.program(e)},accept:function(e){return this[e.type](e)},program:function(e){var t,n=e.statements;this.opcodes=[];for(var r=0,i=n.length;i>r;r++)t=n[r],this[t.type](t);return this.isSimple=1===i,this.depths.list=this.depths.list.sort(function(e,t){return e-t}),this},compileProgram:function(e){var t=(new this.compiler).compile(e,this.options),n=this.guid++;this.usePartial=this.usePartial||t.usePartial,this.children[n]=t;for(var r=0,i=t.depths.list.length;i>r;r++)depth=t.depths.list[r],2>depth||this.addDepth(depth-1);return n},block:function(e){var t,n=e.mustache,r=this.setupStackForMustache(n),i=this.compileProgram(e.program);e.program.inverse&&(t=this.compileProgram(e.program.inverse),this.declare("inverse",t)),this.opcode("invokeProgram",i,r.length,!!n.hash),this.declare("inverse",null),this.opcode("append")},inverse:function(e){var t=this.setupStackForMustache(e.mustache),n=this.compileProgram(e.program);this.declare("inverse",n),this.opcode("invokeProgram",null,t.length,!!e.mustache.hash),this.declare("inverse",null),this.opcode("append")},hash:function(e){var t,n,r=e.pairs;this.opcode("push","{}");for(var i=0,s=r.length;s>i;i++)t=r[i],n=t[1],this.accept(n),this.opcode("assignToHash",t[0])},partial:function(e){var t=e.id;this.usePartial=!0,e.context?this.ID(e.context):this.opcode("push","depth0"),this.opcode("invokePartial",t.original),this.opcode("append")},content:function(e){this.opcode("appendContent",e.string)},mustache:function(e){var t=this.setupStackForMustache(e);this.opcode("invokeMustache",t.length,e.id.original,!!e.hash),e.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},ID:function(e){this.addDepth(e.depth),this.opcode("getContext",e.depth),this.opcode("lookupWithHelpers",e.parts[0]||null,e.isScoped||!1);for(var t=1,n=e.parts.length;n>t;t++)this.opcode("lookup",e.parts[t])},STRING:function(e){this.opcode("pushString",e.string)},INTEGER:function(e){this.opcode("push",e.integer)},BOOLEAN:function(e){this.opcode("push",e.bool)},comment:function(){},pushParams:function(e){for(var t,n=e.length;n--;)t=e[n],this.options.stringParams?(t.depth&&this.addDepth(t.depth),this.opcode("getContext",t.depth||0),this.opcode("pushStringParam",t.string)):this[t.type](t)},opcode:function(t,n,r,i){this.opcodes.push(e.OPCODE_MAP[t]),void 0!==n&&this.opcodes.push(n),void 0!==r&&this.opcodes.push(r),void 0!==i&&this.opcodes.push(i)},declare:function(e,t){this.opcodes.push("DECLARE"),this.opcodes.push(e),this.opcodes.push(t)},addDepth:function(e){0!==e&&(this.depths[e]||(this.depths[e]=!0,this.depths.list.push(e)))},setupStackForMustache:function(e){var t=e.params;return this.pushParams(t),e.hash&&this.hash(e.hash),this.ID(e.id),t}},t.prototype={nameLookup:function(e,n){return/^[0-9]+$/.test(n)?e+"["+n+"]":t.isValidJavaScriptVariableName(n)?e+"."+n:e+"['"+n+"']"},appendToBuffer:function(e){return this.environment.isSimple?"return "+e+";":"buffer += "+e+";"},initializeBuffer:function(){return this.quotedString("")},namespace:"Handlebars",compile:function(e,t,n,r){this.environment=e,this.options=t||{},this.name=this.environment.name,this.isChild=!!n,this.context=n||{programs:[],aliases:{self:"this"},registers:{list:[]}},this.preamble(),this.stackSlot=0,this.stackVars=[],this.compileChildren(e,t);var i,s=e.opcodes;for(this.i=0,o=s.length;this.i<o;this.i++)i=this.nextOpcode(0),"DECLARE"===i[0]?(this.i=this.i+2,this[i[1]]=i[2]):(this.i=this.i+i[1].length,this[i[0]].apply(this,i[1]));return this.createFunctionContext(r)},nextOpcode:function(t){var n,r,i,s,a=this.environment.opcodes,o=a[this.i+t];if("DECLARE"===o)return n=a[this.i+1],r=a[this.i+2],["DECLARE",n,r];n=e.DISASSEMBLE_MAP[o],i=e.multiParamSize(o),s=[];for(var l=0;i>l;l++)s.push(a[this.i+l+1+t]);return[n,s]},eat:function(e){this.i=this.i+e.length},preamble:function(){var e=[];if(this.useRegister("foundHelper"),this.isChild)e.push("");else{var t=this.namespace,n="helpers = helpers || "+t+".helpers;";this.environment.usePartial&&(n=n+" partials = partials || "+t+".partials;"),e.push(n)}this.environment.isSimple?e.push(""):e.push(", buffer = "+this.initializeBuffer()),this.lastContext=0,this.source=e},createFunctionContext:function(e){var t=this.stackVars;if(this.isChild||(t=t.concat(this.context.registers.list)),t.length>0&&(this.source[1]=this.source[1]+", "+t.join(", ")),!this.isChild)for(var n in this.context.aliases)this.source[1]=this.source[1]+", "+n+"="+this.context.aliases[n];this.source[1]&&(this.source[1]="var "+this.source[1].substring(2)+";"),this.isChild||(this.source[1]+="\n"+this.context.programs.join("\n")+"\n"),this.environment.isSimple||this.source.push("return buffer;");for(var r=this.isChild?["depth0","data"]:["Handlebars","depth0","helpers","partials","data"],i=0,s=this.environment.depths.list.length;s>i;i++)r.push("depth"+this.environment.depths.list[i]);if(e)return r.push(this.source.join("\n ")),Function.apply(this,r);var a="function "+(this.name||"")+"("+r.join(",")+") {\n "+this.source.join("\n ")+"}";return Handlebars.log(Handlebars.logger.DEBUG,a+"\n\n"),a},appendContent:function(e){this.source.push(this.appendToBuffer(this.quotedString(e)))},append:function(){var e=this.popStack();this.source.push("if("+e+" || "+e+" === 0) { "+this.appendToBuffer(e)+" }"),this.environment.isSimple&&this.source.push("else { "+this.appendToBuffer("''")+" }")},appendEscaped:function(){var e=this.nextOpcode(1),t="";this.context.aliases.escapeExpression="this.escapeExpression","appendContent"===e[0]&&(t=" + "+this.quotedString(e[1][0]),this.eat(e)),this.source.push(this.appendToBuffer("escapeExpression("+this.popStack()+")"+t))},getContext:function(e){this.lastContext!==e&&(this.lastContext=e)},lookupWithHelpers:function(e,t){if(e){var n=this.nextStack();this.usingKnownHelper=!1;var r;!t&&this.options.knownHelpers[e]?(r=n+" = "+this.nameLookup("helpers",e,"helper"),this.usingKnownHelper=!0):t||this.options.knownHelpersOnly?r=n+" = "+this.nameLookup("depth"+this.lastContext,e,"context"):(this.register("foundHelper",this.nameLookup("helpers",e,"helper")),r=n+" = foundHelper || "+this.nameLookup("depth"+this.lastContext,e,"context")),r+=";",this.source.push(r)}else this.pushStack("depth"+this.lastContext)},lookup:function(e){var t=this.topStack();this.source.push(t+" = ("+t+" === null || "+t+" === undefined || "+t+" === false ? "+t+" : "+this.nameLookup(t,e,"context")+");")},pushStringParam:function(e){this.pushStack("depth"+this.lastContext),this.pushString(e)},pushString:function(e){this.pushStack(this.quotedString(e))},push:function(e){this.pushStack(e)},invokeMustache:function(e,t,n){this.populateParams(e,this.quotedString(t),"{}",null,n,function(e,t,n){this.usingKnownHelper||(this.context.aliases.helperMissing="helpers.helperMissing",this.context.aliases.undef="void 0",this.source.push("else if("+n+"=== undef) { "+e+" = helperMissing.call("+t+"); }"),e!==n&&this.source.push("else { "+e+" = "+n+"; }"))})},invokeProgram:function(e,t,n){var r=this.programExpression(this.inverse),i=this.programExpression(e);this.populateParams(t,null,i,r,n,function(e,t){this.usingKnownHelper||(this.context.aliases.blockHelperMissing="helpers.blockHelperMissing",this.source.push("else { "+e+" = blockHelperMissing.call("+t+"); }"))})},populateParams:function(e,t,n,r,i,s){var a,o,l=i||this.options.stringParams||r||this.options.data,c=this.popStack(),u=[];if(l?(this.register("tmp1",n),o="tmp1"):o="{ hash: {} }",l){var p=i?this.popStack():"{}";this.source.push("tmp1.hash = "+p+";")}this.options.stringParams&&this.source.push("tmp1.contexts = [];");for(var d=0;e>d;d++)a=this.popStack(),u.push(a),this.options.stringParams&&this.source.push("tmp1.contexts.push("+this.popStack()+");");r&&(this.source.push("tmp1.fn = tmp1;"),this.source.push("tmp1.inverse = "+r+";")),this.options.data&&this.source.push("tmp1.data = data;"),u.push(o),this.populateCall(u,c,t||c,s,"{}"!==n)},populateCall:function(e,t,n,r,i){var s=["depth0"].concat(e).join(", "),a=["depth0"].concat(n).concat(e).join(", "),o=this.nextStack();if(this.usingKnownHelper)this.source.push(o+" = "+t+".call("+s+");");else{this.context.aliases.functionType='"function"';var l=i?"foundHelper && ":"";this.source.push("if("+l+"typeof "+t+" === functionType) { "+o+" = "+t+".call("+s+"); }")}r.call(this,o,a,t),this.usingKnownHelper=!1},invokePartial:function(e){params=[this.nameLookup("partials",e,"partial"),"'"+e+"'",this.popStack(),"helpers","partials"],this.options.data&¶ms.push("data"),this.pushStack("self.invokePartial("+params.join(", ")+");")},assignToHash:function(e){var t=this.popStack(),n=this.topStack();this.source.push(n+"['"+e+"'] = "+t+";")},compiler:t,compileChildren:function(e,t){for(var n,r,i=e.children,s=0,a=i.length;a>s;s++){n=i[s],r=new this.compiler,this.context.programs.push("");var o=this.context.programs.length;n.index=o,n.name="program"+o,this.context.programs[o]=r.compile(n,t,this.context)}},programExpression:function(e){if(null==e)return"self.noop";for(var t=this.environment.children[e],n=t.depths.list,r=[t.index,t.name,"data"],i=0,s=n.length;s>i;i++)depth=n[i],1===depth?r.push("depth0"):r.push("depth"+(depth-1));return 0===n.length?"self.program("+r.join(", ")+")":(r.shift(),"self.programWithDepth("+r.join(", ")+")")},register:function(e,t){this.useRegister(e),this.source.push(e+" = "+t+";")},useRegister:function(e){this.context.registers[e]||(this.context.registers[e]=!0,this.context.registers.list.push(e))},pushStack:function(e){return this.source.push(this.nextStack()+" = "+e+";"),"stack"+this.stackSlot},nextStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),"stack"+this.stackSlot},popStack:function(){return"stack"+this.stackSlot--},topStack:function(){return"stack"+this.stackSlot},quotedString:function(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r")+'"'}};for(var i="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "),s=t.RESERVED_WORDS={},a=0,o=i.length;o>a;a++)s[i[a]]=!0;t.isValidJavaScriptVariableName=function(e){return!t.RESERVED_WORDS[e]&&/^[a-zA-Z_$][0-9a-zA-Z_$]+$/.test(e)?!0:!1}}(Handlebars.Compiler,Handlebars.JavaScriptCompiler),Handlebars.precompile=function(e,t){t=t||{};var n=Handlebars.parse(e),r=(new Handlebars.Compiler).compile(n,t);return(new Handlebars.JavaScriptCompiler).compile(r,t)},Handlebars.compile=function(e,t){function n(){var n=Handlebars.parse(e),r=(new Handlebars.Compiler).compile(n,t),i=(new Handlebars.JavaScriptCompiler).compile(r,t,void 0,!0);return Handlebars.template(i)}t=t||{};var r;return function(e,t){return r||(r=n()),r.call(this,e,t)}},Handlebars.VM={template:function(e){var t={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(e,t,n){var r=this.programs[e];return n?Handlebars.VM.program(t,n):r?r:r=this.programs[e]=Handlebars.VM.program(t)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(n,r){return r=r||{},e.call(t,Handlebars,n,r.helpers,r.partials,r.data)}},programWithDepth:function(e,t){var n=Array.prototype.slice.call(arguments,2);return function(r,i){return i=i||{},e.apply(this,[r,i.data||t].concat(n))}},program:function(e,t){return function(n,r){return r=r||{},e(n,r.data||t)}},noop:function(){return""},invokePartial:function(e,t,n,r,i,s){if(options={helpers:r,partials:i,data:s},void 0===e)throw new Handlebars.Exception("The partial "+t+" could not be found");if(e instanceof Function)return e(n,options);if(Handlebars.compile)return i[t]=Handlebars.compile(e),i[t](n,options);throw new Handlebars.Exception("The partial "+t+" could not be compiled when running in runtime-only mode")}},Handlebars.template=Handlebars.VM.template,define("handlebars",function(){}),define("tmpl",["handlebars","text"],function(e,t){var n={};return{load:function(e,r,i,s){return t.load(e,r,function(t){s.isBuild&&s.inlineText&&(n[e]=t),i(s.isBuild?t:Handlebars.compile(t))},s)},write:function(e,r,i){if(r in n){var s=t.jsEscape(n[r]);i("define('"+e+"!"+r+"', ['handlebars'], function (hb) { return Handlebars.compile('"+s+"');});\n")}}}}),define("tmpl!w3c/templates/headers.html",["handlebars"],function(){return Handlebars.compile("<div class='head'>\n <p>\n {{#if prependW3C}}\n <a href='http://www.w3.org/'><img width='72' height='48' src='https://www.w3.org/Icons/w3c_home' alt='W3C'/></a>\n {{/if}}\n </p>\n <h1 class='title p-name' id='title'{{#if doRDFa}} property='dcterms:title'{{/if}}>{{title}}</h1>\n {{#if subtitle}}\n <h2 {{#if doRDFa}}property='bibo:subtitle' {{/if}}id='subtitle'>{{subtitle}}</h2>\n {{/if}}\n <h2 {{#if doRDFa}}property=\"dcterms:issued\" datatype=\"xsd:dateTime\" content=\"{{publishISODate}}\"{{/if}}>{{#if prependW3C}}W3C {{/if}}{{textStatus}} <time class='dt-published' datetime='{{dashDate}}'>{{publishHumanDate}}</time></h2>\n <dl>\n {{#unless isNoTrack}}\n <dt>This version:</dt>\n <dd><a class='u-url' href='{{thisVersion}}'>{{thisVersion}}</a></dd>\n <dt>Latest published version:</dt>\n <dd>{{#if latestVersion}}<a href='{{latestVersion}}'>{{latestVersion}}</a>{{else}}none{{/if}}</dd>\n {{/unless}}\n {{#if edDraftURI}}\n <dt>Latest editor's draft:</dt>\n <dd><a href='{{edDraftURI}}'>{{edDraftURI}}</a></dd>\n {{/if}}\n {{#if testSuiteURI}}\n <dt>Test suite:</dt>\n <dd><a href='{{testSuiteURI}}'>{{testSuiteURI}}</a></dd>\n {{/if}}\n {{#if implementationReportURI}}\n <dt>Implementation report:</dt>\n <dd><a href='{{implementationReportURI}}'>{{implementationReportURI}}</a></dd>\n {{/if}}\n {{#if isED}}\n {{#if prevED}}\n <dt>Previous editor's draft:</dt>\n <dd><a href='{{prevED}}'>{{prevED}}</a></dd>\n {{/if}}\n {{/if}}\n {{#if showPreviousVersion}}\n <dt>Previous version:</dt>\n <dd><a {{#if doRDFa}}rel=\"dcterms:replaces\"{{/if}} href='{{prevVersion}}'>{{prevVersion}}</a></dd>\n {{/if}}\n {{#if prevRecURI}}\n {{#if isRec}}\n <dt>Previous Recommendation:</dt>\n <dd><a {{#if doRDFa}}rel=\"dcterms:replaces\"{{/if}} href='{{prevRecURI}}'>{{prevRecURI}}</a></dd>\n {{else}}\n <dt>Latest Recommendation:</dt>\n <dd><a href='{{prevRecURI}}'>{{prevRecURI}}</a></dd>\n {{/if}}\n {{/if}}\n <dt>Editor{{#if multipleEditors}}s{{/if}}:</dt>\n {{showPeople \"Editor\" editors}}\n {{#if authors}}\n <dt>Author{{#if multipleAuthors}}s{{/if}}:</dt>\n {{showPeople \"Author\" authors}}\n {{/if}}\n {{#if otherLinks}}\n {{#each otherLinks}}\n {{#if key}}\n <dt {{#if class}}class=\"{{class}}\"{{/if}}>{{key}}:</dt>\n {{#if data}}\n {{#each data}}\n {{#if value}}\n <dd {{#if class}}class=\"{{class}}\"{{/if}}>\n {{#if href}}<a href=\"{{href}}\">{{/if}}\n {{value}}\n {{#if href}}</a>{{/if}}\n </dd>\n {{else}}\n {{#if href}}\n <dd><a href=\"{{href}}\">{{href}}</a></dd>\n {{/if}}\n {{/if}}\n {{/each}}\n {{else}}\n {{#if value}}\n <dd {{#if class}}class=\"{{class}}\"{{/if}}>\n {{#if href}}<a href=\"{{href}}\">{{/if}}\n {{value}}\n {{#if href}}</a>{{/if}}\n </dd>\n {{else}}\n {{#if href}}\n <dd {{#if class}}class=\"{{class}}\"{{/if}}>\n <a href=\"{{href}}\">{{href}}</a>\n </dd>\n {{/if}}\n {{/if}}\n {{/if}}\n {{/if}}\n {{/each}}\n {{/if}}\n </dl>\n {{#if errata}}\n <p>\n Please refer to the <a href=\"{{errata}}\"><strong>errata</strong></a> for this document, which may include some normative corrections.\n </p>\n {{/if}}\n {{#if alternateFormats}}\n <p>\n {{#if multipleAlternates}}\n This document is also available in these non-normative formats:\n {{else}}\n This document is also available in this non-normative format:\n {{/if}}\n {{{alternatesHTML}}}\n </p>\n {{/if}}\n {{#if isRec}}\n <p>\n The English version of this specification is the only normative version. Non-normative\n <a href=\"http://www.w3.org/Consortium/Translation/\">translations</a> may also be available.\n </p>\n {{/if}}\n {{#if isUnofficial}}\n {{#if additionalCopyrightHolders}}\n <p class='copyright'>{{{additionalCopyrightHolders}}}</p>\n {{else}}\n {{#if overrideCopyright}}\n {{{overrideCopyright}}}\n {{else}}\n <p class='copyright'>\n This document is licensed under a\n <a class='subfoot' href='http://creativecommons.org/licenses/by/3.0/' rel='license'>Creative Commons\n Attribution 3.0 License</a>.\n </p>\n {{/if}}\n {{/if}}\n {{else}}\n {{#if overrideCopyright}}\n {{{overrideCopyright}}}\n {{else}}\n <p class='copyright'>\n <a href='http://www.w3.org/Consortium/Legal/ipr-notice#Copyright'>Copyright</a> ©\n {{#if copyrightStart}}{{copyrightStart}}-{{/if}}{{publishYear}}\n {{#if additionalCopyrightHolders}} {{{additionalCopyrightHolders}}} &{{/if}}\n <a href='http://www.w3.org/'><abbr title='World Wide Web Consortium'>W3C</abbr></a><sup>®</sup>\n (<a href='http://www.csail.mit.edu/'><abbr title='Massachusetts Institute of Technology'>MIT</abbr></a>,\n <a href='http://www.ercim.eu/'><abbr title='European Research Consortium for Informatics and Mathematics'>ERCIM</abbr></a>,\n <a href='http://www.keio.ac.jp/'>Keio</a>, <a href=\"http://ev.buaa.edu.cn/\">Beihang</a>), \n {{#if isCCBY}}\n Some Rights Reserved: this document is dual-licensed,\n <a href=\"https://creativecommons.org/licenses/by/3.0/\">CC-BY</a> and \n <a href=\"http://www.w3.org/Consortium/Legal/copyright-documents\">W3C Document License</a>.\n {{else}}\n All Rights Reserved.\n {{/if}}\n W3C <a href='http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer'>liability</a>,\n <a href='http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks'>trademark</a> and\n <a href='http://www.w3.org/Consortium/Legal/copyright-documents'>document use</a> rules apply.\n </p>\n {{/if}}\n {{/if}}\n <hr/>\n</div>\n")}),define("tmpl!w3c/templates/sotd.html",["handlebars"],function(){return Handlebars.compile("<section id='sotd' class='introductory'><h2>Status of This Document</h2>\n {{#if isUnofficial}}\n <p>\n This document is merely a public working draft of a potential specification. It has\n no official standing of any kind and does not represent the support or consensus of any\n standards organisation.\n </p>\n {{{sotdCustomParagraph}}}\n {{else}}\n {{#if isTagFinding}}\n {{#if sotdCustomParagraph}}\n {{{sotdCustomParagraph}}}\n {{else}}\n <p style='color: red'>\n ReSpec does not support automated SotD generation for TAG findings, please specify one using a \n <code><section></code> element with ID=sotd.\n </p>\n {{/if}}\n {{else}}\n {{#if isNoTrack}}\n <p>\n This document is merely a W3C-internal {{#if isMO}}member-confidential{{/if}} document. It has no\n official standing of any kind and does not represent consensus of the W3C Membership.\n </p>\n {{{sotdCustomParagraph}}}\n {{else}}\n <p>\n <em>This section describes the status of this document at the time of its publication. Other\n documents may supersede this document. A list of current W3C publications and the latest revision\n of this technical report can be found in the <a href='http://www.w3.org/TR/'>W3C technical reports\n index</a> at http://www.w3.org/TR/.</em>\n </p>\n {{{sotdCustomParagraph}}}\n <p>\n This document was published by the {{{wgHTML}}} as {{anOrA}} {{longStatus}}.\n {{#if notYetRec}}\n This document is intended to become a W3C Recommendation.\n {{/if}}\n {{#if isPR}}\n {{else}}\n If you wish to make comments regarding this document, please send them to \n <a href='mailto:{{wgPublicList}}@w3.org{{#if subjectPrefix}}?subject={{subjectPrefix}}{{/if}}'>{{wgPublicList}}@w3.org</a> \n (<a href='mailto:{{wgPublicList}}-request@w3.org?subject=subscribe'>subscribe</a>,\n <a\n href='http://lists.w3.org/Archives/Public/{{wgPublicList}}/'>archives</a>){{#if subjectPrefix}}\n with <code>{{subjectPrefix}}</code> at the start of your email's subject.{{/if}}.\n {{/if}}\n {{#if isLC}}The Last Call period ends {{humanLCEnd}}.{{/if}}\n {{#if isCR}}\n W3C publishes a Candidate Recommendation to indicate that the document is believed\n to be stable and to encourage implementation by the developer community. This\n Candidate Recommendation is expected to advance to Proposed Recommendation no earlier than\n {{humanCREnd}}.\n {{/if}}\n {{#if isPR}}\n The W3C Membership and other interested parties are invited\n to review the document and send comments to\n <a rel='discussion' href='mailto:{{wgPublicList}}@w3.org'>{{wgPublicList}}@w3.org</a> \n (<a href='mailto:{{wgPublicList}}-request@w3.org?subject=subscribe'>subscribe</a>,\n <a href='http://lists.w3.org/Archives/Public/{{wgPublicList}}/'>archives</a>)\n through {{humanPREnd}}.\n Advisory Committee Representatives should consult their\n <a href='https://www.w3.org/2002/09/wbs/myQuestionnaires'>WBS questionnaires</a>. \n Note that substantive technical comments were expected during the Last Call review period that ended {{humanLCEnd}}.\n </p>\n {{#if implementationReportURI}}\n <p>\n Please see the Working Group's <a href='{{implementationReportURI}}'>implementation\n report</a>.\n </p>\n {{/if}}\n {{else}}\n All comments are welcome.</p>\n {{/if}}\n {{#if notRec}}\n <p>\n Publication as {{anOrA}} {{textStatus}} does not imply endorsement by the W3C Membership.\n This is a draft document and may be updated, replaced or obsoleted by other documents at \n any time. It is inappropriate to cite this document as other than work in progress.\n </p>\n {{/if}}\n {{#if isLC}}\n <p>\n This is a Last Call Working Draft and thus the Working Group has determined that this document has satisfied the\n relevant technical requirements and is sufficiently stable to advance through the Technical Recommendation process.\n </p>\n {{/if}}\n <p>\n {{#unless isIGNote}}\n This document was produced by a group operating under the \n {{#if doRDFa}} \n <a id=\"sotd_patent\" about='' rel='w3p:patentRules' href='http://www.w3.org/Consortium/Patent-Policy-20040205/'>5 February 2004 W3C Patent Policy</a>.\n {{else}}\n <a href='http://www.w3.org/Consortium/Patent-Policy-20040205/'>5 February 2004 W3C Patent Policy</a>.\n {{/if}}\n {{/unless}}\n {{#if recNotExpected}}The group does not expect this document to become a W3C Recommendation.{{/if}}\n {{#unless isIGNote}}\n {{#if multipleWGs}}\n W3C maintains a public list of any patent disclosures ({{{wgPatentHTML}}})\n {{else}}\n W3C maintains a <a href='{{wgPatentURI}}' rel='disclosure'>public list of any patent disclosures</a> \n {{/if}}\n made in connection with the deliverables of the group; that page also includes instructions for \n disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains\n <a href='http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential'>Essential Claim(s)</a> must disclose the\n information in accordance with <a href='http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure'>section\n 6 of the W3C Patent Policy</a>.\n {{/unless}}\n {{#if isIGNote}}\n The disclosure obligations of the Participants of this group are described in the \n <a href='{{charterDisclosureURI}}'>charter</a>. \n {{/if}}\n </p>\n {{#if addPatentNote}}<p>{{{addPatentNote}}}</p>{{/if}}\n {{/if}}\n {{/if}}\n {{/if}}\n</section>\n\n") +}),define("tmpl!w3c/templates/cgbg-headers.html",["handlebars"],function(){return Handlebars.compile("<div class='head'>\n <p>\n <a href='http://www.w3.org/'><img width='72' height='48' src='https://www.w3.org/Icons/w3c_home' alt='W3C'/></a>\n </p>\n <h1 class='title p-name' id='title'{{#if doRDFa}} property='dcterms:title'{{/if}}>{{title}}</h1>\n {{#if subtitle}}\n <h2 {{#if doRDFa}}property='bibo:subtitle' {{/if}}id='subtitle'>{{subtitle}}</h2>\n {{/if}}\n <h2 {{#if doRDFa}}property=\"dcterms:issued\" datatype=\"xsd:dateTime\" content=\"{{publishISODate}}\"{{/if}}>{{longStatus}} <time class='dt-published' datetime='{{dashDate}}'>{{publishHumanDate}}</time></h2>\n <dl>\n {{#if thisVersion}}\n <dt>This version:</dt>\n <dd><a class='u-url' href='{{thisVersion}}'>{{thisVersion}}</a></dd>\n {{/if}}\n {{#if latestVersion}}\n <dt>Latest published version:</dt>\n <dd><a href='{{latestVersion}}'>{{latestVersion}}</a></dd>\n {{/if}}\n {{#if edDraftURI}}\n <dt>Latest editor's draft:</dt>\n <dd><a href='{{edDraftURI}}'>{{edDraftURI}}</a></dd>\n {{/if}}\n {{#if testSuiteURI}}\n <dt>Test suite:</dt>\n <dd><a href='{{testSuiteURI}}'>{{testSuiteURI}}</a></dd>\n {{/if}}\n {{#if implementationReportURI}}\n <dt>Implementation report:</dt>\n <dd><a href='{{implementationReportURI}}'>{{implementationReportURI}}</a></dd>\n {{/if}}\n {{#if prevVersion}}\n <dt>Previous version:</dt>\n <dd><a {{#if doRDFa}}rel=\"dcterms:replaces\"{{/if}} href='{{prevVersion}}'>{{prevVersion}}</a></dd>\n {{/if}}\n {{#unless isCGFinal}}\n {{#if prevED}}\n <dt>Previous editor's draft:</dt>\n <dd><a href='{{prevED}}'>{{prevED}}</a></dd>\n {{/if}}\n {{/unless}}\n <dt>Editor{{#if multipleEditors}}s{{/if}}:</dt>\n {{showPeople \"Editor\" editors}}\n {{#if authors}}\n <dt>Author{{#if multipleAuthors}}s{{/if}}:</dt>\n {{showPeople \"Author\" authors}}\n {{/if}}\n </dl>\n {{#if alternateFormats}}\n <p>\n {{#if multipleAlternates}}\n This document is also available in these non-normative formats: \n {{else}}\n This document is also available in this non-normative format: \n {{/if}}\n {{{alternatesHTML}}}\n </p>\n {{/if}}\n <p class='copyright'>\n <a href='http://www.w3.org/Consortium/Legal/ipr-notice#Copyright'>Copyright</a> © \n {{#if copyrightStart}}{{copyrightStart}}-{{/if}}{{publishYear}}\n the Contributors to the {{title}} Specification, published by the\n <a href='{{wgURI}}'>{{wg}}</a> under the\n {{#if isCGFinal}}\n <a href=\"https://www.w3.org/community/about/agreements/fsa/\">W3C Community Final Specification Agreement (FSA)</a>. \n A human-readable <a href=\"http://www.w3.org/community/about/agreements/fsa-deed/\">summary</a> is available.\n {{else}}\n <a href=\"https://www.w3.org/community/about/agreements/cla/\">W3C Community Contributor License Agreement (CLA)</a>.\n A human-readable <a href=\"http://www.w3.org/community/about/agreements/cla-deed/\">summary</a> is available.\n {{/if}}\n </p>\n <hr/>\n</div>\n")}),define("tmpl!w3c/templates/cgbg-sotd.html",["handlebars"],function(){return Handlebars.compile("<section id='sotd' class='introductory'><h2>Status of This Document</h2>\n <p>\n This specification was published by the <a href='{{wgURI}}'>{{wg}}</a>.\n It is not a W3C Standard nor is it on the W3C Standards Track.\n {{#if isCGFinal}}\n Please note that under the \n <a href=\"https://www.w3.org/community/about/agreements/final/\">W3C Community Final Specification Agreement (FSA)</a> \n other conditions apply.\n {{else}}\n Please note that under the \n <a href=\"https://www.w3.org/community/about/agreements/cla/\">W3C Community Contributor License Agreement (CLA)</a>\n there is a limited opt-out and other conditions apply.\n {{/if}}\n Learn more about \n <a href=\"http://www.w3.org/community/\">W3C Community and Business Groups</a>.\n </p>\n {{{sotdCustomParagraph}}}\n</section>\n")}),define("w3c/headers",["handlebars","core/utils","tmpl!w3c/templates/headers.html","tmpl!w3c/templates/sotd.html","tmpl!w3c/templates/cgbg-headers.html","tmpl!w3c/templates/cgbg-sotd.html"],function(e,t,n,r,i,s){return Handlebars.registerHelper("showPeople",function(e,t){var n="",r="",i="",s="",a="",o="";this.doRDFa!==!1&&("Editor"===e?(n=" rel='bibo:editor'","1.0"!==this.doRDFa&&(n+=" inlist=''")):"Author"===e&&(n=" rel='dcterms:contributor'"),s=" property='foaf:name'",i=" rel='foaf:mbox'",r=" typeof='foaf:Person'",a=" rel='foaf:workplaceHomepage'",o=" rel='foaf:homepage'");for(var l="",c=0,u=t.length;u>c;c++){var p=t[c];l+=this.doRDFa!==!1?"<dd class='p-author h-card vcard' "+n+"><span"+r+">":"<dd class='p-author h-card vcard'>",l+=p.url?this.doRDFa!==!1?"<a class='u-url url p-name fn' "+o+s+" content='"+p.name+"' href='"+p.url+"'>"+p.name+"</a>":"<a class='u-url url p-name fn' href='"+p.url+"'>"+p.name+"</a>":"<span"+s+" class='p-name fn'>"+p.name+"</span>",p.company&&(l+=", ",l+=p.companyURL?"<a"+a+" class='p-org org h-org h-card' href='"+p.companyURL+"'>"+p.company+"</a>":p.company),p.mailto&&(l+=", <span class='ed_mailto'><a class='u-email email' "+i+" href='mailto:"+p.mailto+"'>"+p.mailto+"</a></span>"),p.note&&(l+=" ("+p.note+")"),this.doRDFa!==!1&&(l+="</span>\n"),l+="</dd>\n"}return new Handlebars.SafeString(l)}),{status2maturity:{FPWD:"WD",LC:"WD",FPLC:"WD","FPWD-NOTE":"NOTE","WD-NOTE":"WD","LC-NOTE":"LC","IG-NOTE":"NOTE","WG-NOTE":"NOTE"},status2rdf:{NOTE:"w3p:NOTE",WD:"w3p:WD",LC:"w3p:LastCall",CR:"w3p:CR",PR:"w3p:PR",REC:"w3p:REC",PER:"w3p:PER",RSCND:"w3p:RSCND"},status2text:{NOTE:"Note","WG-NOTE":"Working Group Note","CG-NOTE":"Co-ordination Group Note","IG-NOTE":"Interest Group Note","Member-SUBM":"Member Submission","Team-SUBM":"Team Submission",MO:"Member-Only Document",ED:"Editor's Draft",FPWD:"First Public Working Draft",WD:"Working Draft","FPWD-NOTE":"Working Group Note","WD-NOTE":"Working Draft","LC-NOTE":"Working Draft",FPLC:"First Public and Last Call Working Draft",LC:"Last Call Working Draft",CR:"Candidate Recommendation",PR:"Proposed Recommendation",PER:"Proposed Edited Recommendation",REC:"Recommendation",RSCND:"Rescinded Recommendation",unofficial:"Unofficial Draft",base:"Document",finding:"TAG Finding","draft-finding":"Draft TAG Finding","CG-DRAFT":"Draft Community Group Specification","CG-FINAL":"Final Community Group Specification","BG-DRAFT":"Draft Business Group Specification","BG-FINAL":"Final Business Group Specification"},status2long:{"FPWD-NOTE":"First Public Working Group Note","LC-NOTE":"Last Call Working Draft"},recTrackStatus:["FPWD","WD","FPLC","LC","CR","PR","PER","REC"],noTrackStatus:["MO","unofficial","base","finding","draft-finding","CG-DRAFT","CG-FINAL","BG-DRAFT","BG-FINAL"],cgbg:["CG-DRAFT","CG-FINAL","BG-DRAFT","BG-FINAL"],precededByAn:["ED","IG-NOTE"],run:function(e,a,o,l){l.pub("start","w3c/headers"),e.doRDFa!==!1&&void 0===e.doRDFa&&(e.doRDFa="1.1"),e.license||(e.license="w3c"),e.isCCBY="cc-by"===e.license,e.isCGBG=$.inArray(e.specStatus,this.cgbg)>=0,e.isCGFinal=e.isCGBG&&/G-FINAL$/.test(e.specStatus),e.specStatus||l.pub("error","Missing required configuration: specStatus"),e.isCGBG||e.shortName||l.pub("error","Missing required configuration: shortName"),e.title=a.title||"No Title",e.subtitle||(e.subtitle=""),e.publishDate?e.publishDate instanceof Date||(e.publishDate=t.parseSimpleDate(e.publishDate)):e.publishDate=t.parseLastModified(a.lastModified),e.publishYear=e.publishDate.getFullYear(),e.publishHumanDate=t.humanDate(e.publishDate),e.isNoTrack=$.inArray(e.specStatus,this.noTrackStatus)>=0,e.isRecTrack=e.noRecTrack?!1:$.inArray(e.specStatus,this.recTrackStatus)>=0,e.anOrA=$.inArray(e.specStatus,this.precededByAn)>=0?"an":"a",e.isTagFinding="finding"===e.specStatus||"draft-finding"===e.specStatus,e.edDraftURI||(e.edDraftURI="","ED"===e.specStatus&&l.pub("warn","Editor's Drafts should set edDraftURI.")),e.maturity=this.status2maturity[e.specStatus]?this.status2maturity[e.specStatus]:e.specStatus;var c="TR";if("Member-SUBM"===e.specStatus?c="Submission":"Team-SUBM"===e.specStatus&&(c="TeamSubmission"),e.isCGBG||(e.thisVersion="http://www.w3.org/"+c+"/"+e.publishDate.getFullYear()+"/"+e.maturity+"-"+e.shortName+"-"+t.concatDate(e.publishDate)+"/"),"ED"===e.specStatus&&(e.thisVersion=e.edDraftURI),e.isCGBG||(e.latestVersion="http://www.w3.org/"+c+"/"+e.shortName+"/"),e.isTagFinding&&(e.latestVersion="http://www.w3.org/2001/tag/doc/"+e.shortName,e.thisVersion=e.latestVersion+"-"+t.concatDate(e.publishDate,"-")),e.previousPublishDate){e.previousMaturity||e.isTagFinding||l.pub("error","previousPublishDate is set, but not previousMaturity"),e.previousPublishDate instanceof Date||(e.previousPublishDate=t.parseSimpleDate(e.previousPublishDate));var u=this.status2maturity[e.previousMaturity]?this.status2maturity[e.previousMaturity]:e.previousMaturity;e.prevVersion=e.isTagFinding?e.latestVersion+"-"+t.concatDate(e.previousPublishDate,"-"):e.isCGBG?e.prevVersion||"":"http://www.w3.org/TR/"+e.previousPublishDate.getFullYear()+"/"+u+"-"+e.shortName+"-"+t.concatDate(e.previousPublishDate)+"/"}else"FPWD"===e.specStatus||"FPLC"===e.specStatus||"ED"===e.specStatus||e.noRecTrack||e.isNoTrack||l.pub("error","Document on track but no previous version."),e.prevVersion||(e.prevVersion="");e.prevRecShortname&&!e.prevRecURI&&(e.prevRecURI="http://www.w3.org/TR/"+e.prevRecShortname),e.editors&&0!==e.editors.length||l.pub("error","At least one editor is required");var p=function(e,t){t.name||l.pub("error","All authors and editors must have a name.")};$.each(e.editors,p),$.each(e.authors||[],p),e.multipleEditors=e.editors.length>1,e.multipleAuthors=e.authors&&e.authors.length>1,$.each(e.alternateFormats||[],function(e,t){t.uri&&t.label||l.pub("error","All alternate formats must have a uri and a label.")}),e.multipleAlternates=e.alternateFormats&&e.alternateFormats.length>1,e.alternatesHTML=t.joinAnd(e.alternateFormats,function(e){var t=e.hasOwnProperty("lang")&&e.lang?" hreflang='"+e.lang+"'":"";return t+=e.hasOwnProperty("type")&&e.type?" type='"+e.type+"'":"","<a rel='alternate' href='"+e.uri+"'"+t+">"+e.label+"</a>"}),e.copyrightStart&&e.copyrightStart==e.publishYear&&(e.copyrightStart="");for(var d in this.status2text)this.status2long[d]||(this.status2long[d]=this.status2text[d]);if(e.longStatus=this.status2long[e.specStatus],e.textStatus=this.status2text[e.specStatus],this.status2rdf[e.specStatus]&&(e.rdfStatus=this.status2rdf[e.specStatus]),e.showThisVersion=!e.isNoTrack||e.isTagFinding,e.showPreviousVersion="FPWD"!==e.specStatus&&"FPLC"!==e.specStatus&&"ED"!==e.specStatus&&!e.isNoTrack,e.isTagFinding&&(e.showPreviousVersion=e.previousPublishDate?!0:!1),e.notYetRec=e.isRecTrack&&"REC"!==e.specStatus,e.isRec=e.isRecTrack&&"REC"===e.specStatus,e.notRec="REC"!==e.specStatus,e.isUnofficial="unofficial"===e.specStatus,e.prependW3C=!e.isUnofficial,e.isED="ED"===e.specStatus,e.isLC="LC"===e.specStatus||"FPLC"===e.specStatus,e.isCR="CR"===e.specStatus,e.isPR="PR"===e.specStatus,e.isMO="MO"===e.specStatus,e.isIGNote="IG-NOTE"===e.specStatus,e.dashDate=t.concatDate(e.publishDate,"-"),e.publishISODate=t.isoDate(e.publishDate),e.doRDFa){e.rdfStatus?$("html").attr("typeof","bibo:Document "+e.rdfStatus):$("html").attr("typeof","bibo:Document "),$("html").attr("about",""),$("html").attr("property","dcterms:language"),$("html").attr("content","en");var f="bibo: http://purl.org/ontology/bibo/ w3p: http://www.w3.org/2001/02pd/rec54#";"1.1"!=e.doRDFa&&($("html").attr("version","XHTML+RDFa 1.0"),f+=" dcterms: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ xsd: http://www.w3.org/2001/XMLSchema#"),$("html").attr("prefix",f)}$("body",a).prepend($(e.isCGBG?i(e):n(e))).addClass("h-entry");var h=$("#sotd");if(!e.isCGBG&&e.isNoTrack&&!e.isTagFinding||h.length||l.pub("error","A custom SotD paragraph is required for your type of document."),e.sotdCustomParagraph=h.html(),h.remove(),$.isArray(e.wg)){e.multipleWGs=e.wg.length>1,e.wgHTML=t.joinAnd($.isArray(e.wg)?e.wg:[e.wg],function(t,n){return"<a href='"+e.wgURI[n]+"'>"+t+"</a>"});for(var m=[],g=0,b=e.wg.length;b>g;g++)m.push("<a href='"+e.wgPatentURI[g]+"' rel='disclosure'>"+e.wg[g]+"</a>");e.wgPatentHTML=m.join(", ")}else e.multipleWGs=!1,e.wgHTML="<a href='"+e.wgURI+"'>"+e.wg+"</a>";e.isLC&&!e.lcEnd&&l.pub("error","Status is LC but no lcEnd is specified"),"PR"!==e.specStatus||e.lcEnd||l.pub("error","Status is PR but no lcEnd is specified (needed to indicate end of previous LC)"),e.humanLCEnd=t.humanDate(e.lcEnd||""),"CR"!==e.specStatus||e.crEnd||l.pub("error","Status is CR but no crEnd is specified"),e.humanCREnd=t.humanDate(e.crEnd||""),"PR"!==e.specStatus||e.prEnd||l.pub("error","Status is PR but no prEnd is specified"),e.humanPREnd=t.humanDate(e.prEnd||""),e.recNotExpected=!e.isRecTrack&&"WD"==e.maturity&&"FPWD-NOTE"!==e.specStatus,e.isIGNote&&!e.charterDisclosureURI&&l.pub("error","IG-NOTEs must link to charter's disclosure section using charterDisclosureURI"),$(e.isCGBG?s(e):r(e)).insertAfter($("#abstract")),l.pub("end","w3c/headers"),o()}}}),define("w3c/abstract",[],function(){return{run:function(e,t,n,r){r.pub("start","w3c/abstract");var i=$("#abstract");return i?(0===i.find("p").length&&i.contents().wrapAll($("<p></p>")),i.prepend("<h2>Abstract</h2>"),i.addClass("introductory"),r.pub("end","w3c/abstract"),n(),void 0):r.pub("error","Document must have one element with ID 'abstract'")}}}),define("tmpl!w3c/templates/conformance.html",["handlebars"],function(){return Handlebars.compile("<h2>Conformance</h2>\n<p>\n As well as sections marked as non-normative, all authoring guidelines, diagrams, examples,\n and notes in this specification are non-normative. Everything else in this specification is\n normative.\n</p>\n<p>\n The key words MUST, MUST NOT, REQUIRED, SHOULD, SHOULD NOT, RECOMMENDED, MAY,\n and OPTIONAL in this specification are to be interpreted as described in [[!RFC2119]].\n</p>\n")}),define("w3c/conformance",["tmpl!w3c/templates/conformance.html"],function(e){return{run:function(t,n,r,i){i.pub("start","w3c/conformance");var s=$("#conformance");s.length&&s.prepend(e(t)),i.pub("end","w3c/conformance"),r()}}}),define("core/data-transform",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","w3c/data-transform"),$("[data-transform]",n).each(function(t,n){var r=$(n),i=r.attr("data-transform");r.removeAttr("data-transform");var s=e.runTransforms(r.html(),i);s&&r.html(s)}),i.pub("end","w3c/data-transform"),r()}}}),define("core/data-include",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","w3c/data-include");var s=$("[data-include]"),a=s.length,o=function(e){e.removeAttr("data-include"),e.removeAttr("data-oninclude"),e.removeAttr("data-include-format"),e.removeAttr("data-include-replace"),e.removeAttr("data-include-sync"),a--,0>=a&&(i.pub("end","w3c/data-include"),r())};a||(i.pub("end","w3c/data-include"),r()),s.each(function(){var t=$(this),r=t.attr("data-include"),s=t.attr("data-include-format")||"html",a=!!t.attr("data-include-replace"),l=!!t.attr("data-include-sync");$.ajax({dataType:s,url:r,async:!l,success:function(i){if(i){var l=t.attr("data-oninclude");l&&(i=e.runTransforms(i,l,r)),a?t.replaceWith("text"===s?n.createTextNode(i):i):"text"===s?t.text(i):t.html(i)}o(t)},error:function(e,n,s){i.pub("error","Error including URI="+r+": "+n+" ("+s+")"),o(t)}})})}}}),define("core/inlines",["core/utils"],function(){return{run:function(e,t,n,r){r.pub("start","core/inlines"),t.normalize(),e.normativeReferences||(e.normativeReferences={}),e.informativeReferences||(e.informativeReferences={});var i={},s={};$("abbr[title]",t).each(function(){i[$(this).text()]=$(this).attr("title")}),$("acronym[title]",t).each(function(){s[$(this).text()]=$(this).attr("title")});var a=[];for(var o in i)a.push(o);for(var o in s)a.push(o);a.sort(function(e,t){return t.length<e.length?-1:e.length<t.length?1:0});for(var l=a.length?"(?:\\b"+a.join("\\b)|(?:\\b")+"\\b)":null,c=$("body",t).allTextNodes(["pre"]),u=new RegExp("(\\bMUST(?:\\s+NOT)?\\b|\\bSHOULD(?:\\s+NOT)?\\b|\\bSHALL(?:\\s+NOT)?\\b|\\bMAY\\b|\\b(?:NOT\\s+)?REQUIRED\\b|\\b(?:NOT\\s+)?RECOMMENDED\\b|\\bOPTIONAL\\b|(?:\\[\\[(?:!|\\\\)?[A-Za-z0-9-]+\\]\\])"+(l?"|"+l:"")+")"),p=0;p<c.length;p++){var d=c[p],f=d.data.split(u);if(1!==f.length){for(var h=t.createDocumentFragment();f.length;){var m=f.shift(),g=null;if(f.length&&(g=f.shift()),h.appendChild(t.createTextNode(m)),g)if(/MUST(?:\s+NOT)?|SHOULD(?:\s+NOT)?|SHALL(?:\s+NOT)?|MAY|(?:NOT\s+)?REQUIRED|(?:NOT\s+)?RECOMMENDED|OPTIONAL/.test(g))h.appendChild($("<em/>").attr({"class":"rfc2119",title:g}).text(g)[0]);else if(/^\[\[/.test(g)){var b=g;if(b=b.replace(/^\[\[/,""),b=b.replace(/\]\]$/,""),0===b.indexOf("\\"))h.appendChild(t.createTextNode("[["+b.replace(/^\\/,"")+"]]"));else{var v=!1;0===b.indexOf("!")&&(v=!0,b=b.replace(/^!/,"")),v?e.normativeReferences[b]=!0:e.informativeReferences[b]=!0,h.appendChild(t.createTextNode("[")),h.appendChild($("<cite/>").wrapInner($("<a/>").attr({"class":"bibref",href:"#bib-"+b}).text(b))[0]),h.appendChild(t.createTextNode("]"))}}else i[g]?$(d).parents("abbr").length?h.appendChild(t.createTextNode(g)):h.appendChild($("<abbr/>").attr({title:i[g]}).text(g)[0]):s[g]?$(d).parents("acronym").length?h.appendChild(t.createTextNode(g)):h.appendChild($("<acronym/>").attr({title:s[g]}).text(g)[0]):r.pub("error","Found token '"+g+"' but it does not correspond to anything")}d.parentNode.replaceChild(h,d)}}r.pub("end","core/inlines"),n()}}}),define("text!core/css/examples.css",[],function(){return"/* --- EXAMPLES --- */\ndiv.example-title {\n min-width: 7.5em;\n color: #b9ab2d;\n}\ndiv.example-title span {\n text-transform: uppercase; \n}\naside.example, div.example, div.illegal-example {\n padding: 0.5em;\n margin: 1em 0;\n position: relative;\n clear: both;\n}\ndiv.illegal-example { color: red }\ndiv.illegal-example p { color: black }\naside.example, div.example {\n padding: .5em;\n border-left-width: .5em;\n border-left-style: solid;\n border-color: #e0cb52;\n background: #fcfaee; \n}\n\naside.example div.example {\n border-left-width: .1em;\n border-color: #999;\n background: #fff;\n}\naside.example div.example div.example-title {\n color: #999;\n}\n"}),define("core/examples",["text!core/css/examples.css"],function(e){var t=function(e,t,n){var r=t>0?" "+t:"",i=$("<div class='example-title'><span>Example"+r+"</span></div>");return n.title=e.attr("title"),n.title&&(i.append(e[0].ownerDocument.createTextNode(": "+n.title)),e.removeAttr("title")),i};return{run:function(n,r,i,s){s.pub("start","core/examples");var a=$("pre.example, pre.illegal-example, aside.example"),o=0;a.length&&($(r).find("head link").first().before($("<style/>").text(e)),a.each(function(e,n){var r=$(n),i={number:o,illegal:r.hasClass("illegal-example")};if(r.is("aside")){o++;var a=t(r,o,i);r.prepend(a),s.pub("example",i)}else{var l=!!r.parents("aside").length;l||o++;for(var c=r.html().split("\n");c.length&&/^\s*$/.test(c[0]);)c.shift();for(;c.length&&/^\s*$/.test(c[c.length-1]);)c.pop();var u=/^(\s+)/.exec(c[0]);if(u)for(var p=new RegExp("^"+u[1]),d=0;d<c.length;d++)c[d]=c[d].replace(p,"");i.content=c.join("\n"),r.html(c.join("\n"));var f=$("<div class='example'></div>"),a=t(r,l?0:o,i);f.append(a),f.append(r.clone()),r.replaceWith(f),l||s.pub("example",i)}})),s.pub("end","core/examples"),i()}}}),define("text!core/css/issues-notes.css",[],function(){return"/* --- ISSUES/NOTES --- */\ndiv.issue-title, div.note-title {\n padding-right: 1em;\n min-width: 7.5em;\n color: #b9ab2d;\n}\ndiv.issue-title { color: #e05252; }\ndiv.note-title { color: #2b2; }\ndiv.issue-title span, div.note-title span {\n text-transform: uppercase;\n}\ndiv.note, div.issue {\n margin-top: 1em;\n margin-bottom: 1em;\n}\n.note > p:first-child, .issue > p:first-child { margin-top: 0 }\n.issue, .note {\n padding: .5em;\n border-left-width: .5em;\n border-left-style: solid;\n}\ndiv.issue, div.note {\n padding: 1em 1.2em 0.5em;\n margin: 1em 0;\n position: relative;\n clear: both;\n}\nspan.note, span.issue { padding: .1em .5em .15em; }\n\n.issue {\n border-color: #e05252;\n background: #fbe9e9;\n}\n.note {\n border-color: #52e052;\n background: #e9fbe9;\n}\n\n\n"}),define("core/issues-notes",["text!core/css/issues-notes.css"],function(e){return{run:function(t,n,r,i){i.pub("start","core/issues-notes");var s=$(".issue, .note");if(s.length){$(n).find("head link").first().before($("<style/>").text(e));var a=$(".issue[data-number]").length>0,o=0;s.each(function(e,r){var s=$(r),l=s.hasClass("issue"),c=s.hasClass("atrisk"),u="block"!=s.css("display"),p=s.attr("data-number"),d={inline:u,content:s.html()};if(d.type=l?"issue":"note",!l||u||a?p&&(d.number=p):(o++,d.number=o),!u){var f=$("<div class='"+d.type+(c?" atrisk":"")+"'></div>"),h=$("<div class='"+d.type+"-title'><span></span></div>"),m=l?c?"Feature at Risk":"Issue":"Note";l&&(a?p&&(m+=" "+p,!c&&t.issueBase?h.find("span").wrap($("<a href='"+t.issueBase+p+"'/>")):c&&t.atRiskBase&&h.find("span").wrap($("<a href='"+t.atRiskBase+p+"'/>"))):m+=" "+o),h.find("span").text(m),d.title=s.attr("title"),d.title&&(h.append(n.createTextNode(": "+d.title)),s.removeAttr("title")),f.append(h),f.append(s.clone().removeClass(d.type).removeAttr("data-number")),s.replaceWith(f)}i.pub(d.type,d)})}i.pub("end","core/issues-notes"),r()}}}),define("core/requirements",[],function(){return{run:function(e,t,n,r){r.pub("start","core/requirements"),$(".req").each(function(e){e++;var t=$(this),n="Req. "+e;r.pub("req",{type:"req",number:e,content:t.html(),title:n}),t.prepend("<a href='#"+t.attr("id")+"'>"+n+"</a>: ")}),$("a.reqRef").each(function(){var e,t,n,r=$(this),i=r.attr("href");i&&(e=i.substring(1),t=$("#"+e),n=t.length?t.find("> a").text():"Req. not found '"+e+"'",r.text(n))}),r.pub("end","core/requirements"),n()}}}),define("text!core/css/highlight.css",[],function(){return"/* HIGHLIGHTS */\ncode.prettyprint {\n color: inherit;\n}\n\n/* this from google-code-prettify */\n.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee}\n"}),define("core/highlight",["text!core/css/highlight.css"],function(e){return{run:function(t,n,r,i){i.pub("start","core/highlight");for(var s="sh_css sh_html sh_javascript sh_javascript_dom sh_xml".split(" "),a=0,o=s.length;o>a;a++){var l=s[a];$("."+l).each(function(){$(this).removeClass(l).addClass("highlight")})}var c=$("pre.highlight, code.highlight"),u=function(){i.pub("end","core/highlight"),r()};c.length?($(n).find("head link").first().before($("<style/>").text(e)),c.addClass("prettyprint"),prettyPrint(u)):u()}}}),window.PR_SHOULD_USE_CONTINUATION=!0,function(){function e(e){function t(e){var t=e.charCodeAt(0);if(92!==t)return t;var n=e.charAt(1);return t=p[n],t?t:n>="0"&&"7">=n?parseInt(e.substring(1),8):"u"===n||"x"===n?parseInt(e.substring(2),16):e.charCodeAt(1)}function n(e){if(32>e)return(16>e?"\\x0":"\\x")+e.toString(16);var t=String.fromCharCode(e);return("\\"===t||"-"===t||"["===t||"]"===t)&&(t="\\"+t),t}function r(e){for(var r=e.substring(1,e.length-1).match(new RegExp("\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]","g")),i=[],s=[],a="^"===r[0],o=a?1:0,l=r.length;l>o;++o){var c=r[o];if(/\\[bdsw]/i.test(c))i.push(c);else{var u,p=t(c);l>o+2&&"-"===r[o+1]?(u=t(r[o+2]),o+=2):u=p,s.push([p,u]),65>u||p>122||(65>u||p>90||s.push([32|Math.max(65,p),32|Math.min(u,90)]),97>u||p>122||s.push([-33&Math.max(97,p),-33&Math.min(u,122)]))}}s.sort(function(e,t){return e[0]-t[0]||t[1]-e[1]});for(var d=[],f=[0/0,0/0],o=0;o<s.length;++o){var h=s[o];h[0]<=f[1]+1?f[1]=Math.max(f[1],h[1]):d.push(f=h)}var m=["["];a&&m.push("^"),m.push.apply(m,i);for(var o=0;o<d.length;++o){var h=d[o];m.push(n(h[0])),h[1]>h[0]&&(h[1]+1>h[0]&&m.push("-"),m.push(n(h[1])))}return m.push("]"),m.join("")}function i(e){for(var t=e.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g")),n=t.length,i=[],o=0,l=0;n>o;++o){var c=t[o];if("("===c)++l;else if("\\"===c.charAt(0)){var u=+c.substring(1);u&&l>=u&&(i[u]=-1)}}for(var o=1;o<i.length;++o)-1===i[o]&&(i[o]=++s);for(var o=0,l=0;n>o;++o){var c=t[o];if("("===c)++l,void 0===i[l]&&(t[o]="(?:");else if("\\"===c.charAt(0)){var u=+c.substring(1);u&&l>=u&&(t[o]="\\"+i[l])}}for(var o=0,l=0;n>o;++o)"^"===t[o]&&"^"!==t[o+1]&&(t[o]="");if(e.ignoreCase&&a)for(var o=0;n>o;++o){var c=t[o],p=c.charAt(0);c.length>=2&&"["===p?t[o]=r(c):"\\"!==p&&(t[o]=c.replace(/[a-zA-Z]/g,function(e){var t=e.charCodeAt(0);return"["+String.fromCharCode(-33&t,32|t)+"]"}))}return t.join("")}for(var s=0,a=!1,o=!1,l=0,c=e.length;c>l;++l){var u=e[l];if(u.ignoreCase)o=!0;else if(/[a-z]/i.test(u.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,""))){a=!0,o=!1;break}}for(var p={b:8,t:9,n:10,v:11,f:12,r:13},d=[],l=0,c=e.length;c>l;++l){var u=e[l];if(u.global||u.multiline)throw new Error(""+u);d.push("(?:"+i(u)+")")}return new RegExp(d.join("|"),o?"gi":"g")}function t(e){function t(e){switch(e.nodeType){case 1:if(r.test(e.className))return;for(var n=e.firstChild;n;n=n.nextSibling)t(n);var c=e.nodeName;("BR"===c||"LI"===c)&&(i[o]="\n",a[o<<1]=s++,a[1|o++<<1]=e);break;case 3:case 4:var u=e.nodeValue;u.length&&(u=l?u.replace(/\r\n?/g,"\n"):u.replace(/[ \t\r\n]+/g," "),i[o]=u,a[o<<1]=s,s+=u.length,a[1|o++<<1]=e)}}var n,r=/(?:^|\s)nocode(?:\s|$)/,i=[],s=0,a=[],o=0;e.currentStyle?n=e.currentStyle.whiteSpace:document.defaultView.getComputedStyle&&document.defaultView.getComputedStyle(e,null)&&(n=document.defaultView.getComputedStyle(e,null).getPropertyValue("white-space"));var l=n&&"pre"===n.substring(0,3);return t(e),{sourceCode:i.join("").replace(/\n$/,""),spans:a}}function n(e,t,n,r){if(t){var i={sourceCode:t,basePos:e};n(i),r.push.apply(r,i.decorations)}}function r(e){for(var t=void 0,n=e.firstChild;n;n=n.nextSibling){var r=n.nodeType;t=1===r?t?e:n:3===r?q.test(n.nodeValue)?e:t:t}return t===e?void 0:t}function i(t,r){var i,s={};!function(){for(var n=t.concat(r),a=[],o={},l=0,c=n.length;c>l;++l){var u=n[l],p=u[3];if(p)for(var d=p.length;--d>=0;)s[p.charAt(d)]=u;var f=u[1],h=""+f;o.hasOwnProperty(h)||(a.push(f),o[h]=null)}a.push(/[\0-\uffff]/),i=e(a)}();var a=r.length,o=function(e){for(var t=e.sourceCode,l=e.basePos,u=[l,I],p=0,d=t.match(i)||[],f={},h=0,m=d.length;m>h;++h){var g,b=d[h],v=f[b],y=void 0;if("string"==typeof v)g=!1;else{var x=s[b.charAt(0)];if(x)y=b.match(x[1]),v=x[0];else{for(var w=0;a>w;++w)if(x=r[w],y=b.match(x[1])){v=x[0];break}y||(v=I)}g=v.length>=5&&"lang-"===v.substring(0,5),!g||y&&"string"==typeof y[1]||(g=!1,v=M),g||(f[b]=v)}var C=p;if(p+=b.length,g){var S=y[1],T=b.indexOf(S),E=T+S.length;y[2]&&(E=b.length-y[2].length,T=E-S.length);var k=v.substring(5);n(l+C,b.substring(0,T),o,u),n(l+C+T,S,c(k,S),u),n(l+C+E,b.substring(E),o,u)}else u.push(l+C,v)}e.decorations=u};return o}function s(e){var t=[],n=[];e.tripleQuotedStrings?t.push([D,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""]):e.multiLineStrings?t.push([D,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"]):t.push([D,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"]),e.verbatimStrings&&n.push([D,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null]);var r=e.hashComments;if(r&&(e.cStyleComments?(r>1?t.push([A,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"]):t.push([A,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"]),n.push([D,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])):t.push([A,/^#[^\r\n]*/,null,"#"])),e.cStyleComments&&(n.push([A,/^\/\/[^\r\n]*/,null]),n.push([A,/^\/\*[\s\S]*?(?:\*\/|$)/,null])),e.regexLiterals){var s="/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/";n.push(["lang-regex",new RegExp("^"+_+"("+s+")")])}var a=e.types;a&&n.push([R,a]);var o=(""+e.keywords).replace(/^ | $/g,"");return o.length&&n.push([N,new RegExp("^(?:"+o.replace(/[\s,]+/g,"|")+")\\b"),null]),t.push([I,/^\s+/,null," \r\n "]),n.push([L,/^@[a-z_$][a-z_$@0-9]*/i,null],[R,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[I,/^[a-z_$][a-z_$@0-9]*/i,null],[L,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[I,/^\\[\s\S]?/,null],[j,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]),i(t,n)}function a(e,t){function n(e){switch(e.nodeType){case 1:if(s.test(e.className))break;if("BR"===e.nodeName)r(e),e.parentNode&&e.parentNode.removeChild(e);else for(var t=e.firstChild;t;t=t.nextSibling)n(t);break;case 3:case 4:if(l){var i=e.nodeValue,c=i.match(a);if(c){var u=i.substring(0,c.index);e.nodeValue=u;var p=i.substring(c.index+c[0].length);if(p){var d=e.parentNode;d.insertBefore(o.createTextNode(p),e.nextSibling)}r(e),u||e.parentNode.removeChild(e)}}}}function r(e){function t(e,n){var r=n?e.cloneNode(!1):e,i=e.parentNode;if(i){var s=t(i,1),a=e.nextSibling;s.appendChild(r);for(var o=a;o;o=a)a=o.nextSibling,s.appendChild(o)}return r}for(;!e.nextSibling;)if(e=e.parentNode,!e)return;for(var n,r=t(e.nextSibling,0);(n=r.parentNode)&&1===n.nodeType;)r=n;u.push(r)}var i,s=/(?:^|\s)nocode(?:\s|$)/,a=/\r\n?|\n/,o=e.ownerDocument;e.currentStyle?i=e.currentStyle.whiteSpace:window.getComputedStyle&&(i=o.defaultView.getComputedStyle(e,null).getPropertyValue("white-space"));for(var l=i&&"pre"===i.substring(0,3),c=o.createElement("LI");e.firstChild;)c.appendChild(e.firstChild);for(var u=[c],p=0;p<u.length;++p)n(u[p]);t===(0|t)&&u[0].setAttribute("value",t);var d=o.createElement("OL");d.className="linenums";for(var f=Math.max(0,0|t-1)||0,p=0,h=u.length;h>p;++p)c=u[p],c.className="L"+(p+f)%10,c.firstChild||c.appendChild(o.createTextNode(" ")),d.appendChild(c);e.appendChild(d)}function o(e){var t=/\bMSIE\b/.test(navigator.userAgent),n=/\n/g,r=e.sourceCode,i=r.length,s=0,a=e.spans,o=a.length,l=0,c=e.decorations,u=c.length,p=0;c[u]=i;var d,f;for(f=d=0;u>f;)c[f]!==c[f+2]?(c[d++]=c[f++],c[d++]=c[f++]):f+=2;for(u=d,f=d=0;u>f;){for(var h=c[f],m=c[f+1],g=f+2;u>=g+2&&c[g+1]===m;)g+=2;c[d++]=h,c[d++]=m,f=g}for(u=c.length=d;o>l;){a[l];var b=a[l+2]||i;c[p];var v,y=c[p+2]||i,g=Math.min(b,y),x=a[l+1];if(1!==x.nodeType&&(v=r.substring(s,g))){t&&(v=v.replace(n,"\r")),x.nodeValue=v;var w=x.ownerDocument,C=w.createElement("SPAN");C.className=c[p+1];var S=x.parentNode;S.replaceChild(C,x),C.appendChild(x),b>s&&(a[l+1]=x=w.createTextNode(r.substring(g,b)),S.insertBefore(x,C.nextSibling))}s=g,s>=b&&(l+=2),s>=y&&(p+=2)}}function l(e,t){for(var n=t.length;--n>=0;){var r=t[n];W.hasOwnProperty(r)?window.console&&console.warn("cannot override language handler %s",r):W[r]=e}}function c(e,t){return e&&W.hasOwnProperty(e)||(e=/^\s*</.test(t)?"default-markup":"default-code"),W[e]}function u(e){var n=e.langExtension;try{var r=t(e.sourceNode),i=r.sourceCode;e.sourceCode=i,e.spans=r.spans,e.basePos=0,c(n,i)(e),o(e)}catch(s){"console"in window&&console.log(s&&s.stack?s.stack:s)}}function p(e,t,n){var r=document.createElement("PRE"); +r.innerHTML=e,n&&a(r,n);var i={langExtension:t,numberLines:n,sourceNode:r};return u(i),r.innerHTML}function d(e){function t(e){return document.getElementsByTagName(e)}function n(){for(var t=window.PR_SHOULD_USE_CONTINUATION?p.now()+250:1/0;f<s.length&&p.now()<t;f++){var i=s[f],o=i.className;if(o.indexOf("prettyprint")>=0){var l,c=o.match(h);!c&&(l=r(i))&&"CODE"===l.tagName&&(c=l.className.match(h)),c&&(c=c[1]);for(var m=!1,g=i.parentNode;g;g=g.parentNode)if(("pre"===g.tagName||"code"===g.tagName||"xmp"===g.tagName)&&g.className&&g.className.indexOf("prettyprint")>=0){m=!0;break}if(!m){var b=i.className.match(/\blinenums\b(?::(\d+))?/);b=b?b[1]&&b[1].length?+b[1]:!0:!1,b&&a(i,b),d={langExtension:c,sourceNode:i,numberLines:b},u(d)}}}f<s.length?setTimeout(n,250):e&&e()}for(var i=[t("pre"),t("code"),t("xmp")],s=[],o=0;o<i.length;++o)for(var l=0,c=i[o].length;c>l;++l)s.push(i[o][l]);i=null;var p=Date;p.now||(p={now:function(){return+new Date}});var d,f=0,h=/\blang(?:uage)?-([\w.]+)(?!\S)/;n()}var f=["break,continue,do,else,for,if,return,while"],h=[f,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],m=[h,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],g=[m,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],b=[m,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],v=[b,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],y="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",x=[m,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],w="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",C=[f,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],S=[f,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],T=[f,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],E=[g,v,x,w+C,S,T],k=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,D="str",N="kwd",A="com",R="typ",L="lit",j="pun",I="pln",P="tag",$="dec",M="src",H="atn",O="atv",F="nocode",_="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*",q=/\S/,B=s({keywords:E,hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),W={};l(B,["default-code"]),l(i([],[[I,/^[^<?]+/],[$,/^<!\w[^>]*(?:>|$)/],[A,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[j,/^(?:<[%?]|[%?]>)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]),l(i([[I,/^[\s]+/,null," \r\n"],[O,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[P,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[H,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[j,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]),l(i([],[[O,/^[\s\S]+/]]),["uq.val"]),l(s({keywords:g,hashComments:!0,cStyleComments:!0,types:k}),["c","cc","cpp","cxx","cyc","m"]),l(s({keywords:"null,true,false"}),["json"]),l(s({keywords:v,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:k}),["cs"]),l(s({keywords:b,cStyleComments:!0}),["java"]),l(s({keywords:T,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]),l(s({keywords:C,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]),l(s({keywords:w,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]),l(s({keywords:S,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]),l(s({keywords:x,cStyleComments:!0,regexLiterals:!0}),["js"]),l(s({keywords:y,hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]),l(i([],[[D,/^[\s\S]+/]]),["regex"]),window.prettyPrintOne=p,window.prettyPrint=d,window.PR={createSimpleLexer:i,registerLangHandler:l,sourceDecorator:s,PR_ATTRIB_NAME:H,PR_ATTRIB_VALUE:O,PR_COMMENT:A,PR_DECLARATION:$,PR_KEYWORD:N,PR_LITERAL:L,PR_NOCODE:F,PR_PLAIN:I,PR_PUNCTUATION:j,PR_SOURCE:M,PR_STRING:D,PR_TAG:P,PR_TYPE:R}}(),define("text!core/css/bp.css",[],function(){return"/* --- Best Practices --- */\ndiv.practice {\n border: solid #bebebe 1px;\n margin: 2em 1em 1em 2em;\n}\n\nspan.practicelab {\n margin: 1.5em 0.5em 1em 1em;\n font-weight: bold;\n font-style: italic;\n background: #dfffff;\n position: relative;\n padding: 0 0.5em;\n top: -1.5em;\n}\n\np.practicedesc {\n margin: 1.5em 0.5em 1em 1em;\n}\n\n@media screen {\n p.practicedesc {\n position: relative;\n top: -2em;\n padding: 0;\n margin: 1.5em 0.5em -1em 1em;\n }\n}\n"}),define("core/best-practices",["text!core/css/bp.css"],function(e){return{run:function(t,n,r,i){i.pub("start","core/best-practices");var s=0,a=$("span.practicelab",n),o=$("<div><h2>Best Practices Summary</h2><ul></ul></div>"),l=o.find("ul");a.each(function(){var e=$(this),t=e.makeID("bp"),r=$("<li><a></a></li>"),i=r.find("a");s++,i.attr("href","#"+t).text("Best Practice "+s),r.append(n.createTextNode(": "+e.text())),l.append(r),e.prepend(n.createTextNode("Best Practice "+s+": "))}),a.length?($(n).find("head link").first().before($("<style/>").text(e)),$("#bp-summary")&&$("#bp-summary").append(o.contents())):$("#bp-summary").remove(),i.pub("end","core/best-practices"),r()}}}),define("core/figures",[],function(){return{run:function(e,t,n,r){r.pub("start","core/figures"),$(".figure",t).each(function(e,t){var n=$(t),r=n.attr("title")||n.find("[title]").attr("title")||n.attr("alt")||n.find("[alt]").attr("alt")||"",i=$("<figcaption/>").text(r);n.is("div")?(n.append(i),n.renameElement("figure")):(n.wrap("<figure></figure>"),n.parent().append(i))});var i={},s=[],a=0;$("figure").each(function(){var e=$(this),n=e.find("figcaption"),r=n.text(),o=e.makeID("fig",r);a++,n.html("").append(t.createTextNode("Fig. ")).append($("<span class='figno'>"+a+"</span>")).append(t.createTextNode(" ")).append($("<span class='fig-title'/>").text(r)),i[o]=n.contents().clone(),s.push($("<li class='tofline'><a class='tocxref' href='#"+o+"'></a></li>").find(".tocxref").append(n.contents().clone()).end())}),$("a[href]",t).each(function(){var e=$(this),t=e.attr("href");t&&(t=t.substring(1),i[t]&&(e.addClass("fig-ref"),""===e.html()&&e.append(i[t])))});var o=$("#tof",t);if(s.length&&o.length){o.hasClass("appendix")||o.hasClass("introductory")||o.parents("section").length||(o.prevAll("section.introductory").length==o.prevAll("section").length?o.addClass("introductory"):o.prevAll("appendix").length&&o.addClass("appendix")),o.append($("<h2>Table of Figures</h2>")),o.append($("<ul class='tof'/>"));for(var l=o.find("ul");s.length;)l.append(s.shift())}r.pub("end","core/figures"),n()}}});var sn;!function(){function e(){var e="respec-err",t=document.getElementById(e);if(t)return t.firstElementChild.nextElementSibling;t=sn.element("div",{id:e,style:"position: fixed; width: 350px; top: 10px; right: 10px; border: 3px double #f00; background: #fff","class":"removeOnSave"},document.body);var n=sn.element("p",{style:"float: right; margin: 2px; text-decoration: none"},t);sn.text("[",n);var r=sn.element("a",{href:"#"},n,"x");return r.onclick=function(){return document.getElementById(e).style.display="none",!1},sn.text("]",n),sn.element("ul",{style:"clear: both"},t)}function t(t){window.respecEvent&&respecEvent.pub("error",t),sn.element("li",{style:"color: #c00"},e(),t)}function n(t){window.respecEvent&&respecEvent.pub("warn",t),sn.element("li",{style:"color: #666"},e(),t)}window.setBerjonBiblio=function(e){berjon.biblio=e},"undefined"==typeof berjon&&(window.berjon={}),berjon.respec=function(){},berjon.respec.prototype={loadAndRun:function(e,t,n,r){function i(){0>=o&&(sn=new berjon.simpleNode({"":"http://www.w3.org/1999/xhtml",x:"http://www.w3.org/1999/xhtml"},document),u.run(e,t,n,r))}function s(){o--,i()}var a,o=0,l=this.findBase(),c=[l+"js/simple-node.js",l+"js/shortcut.js"],u=this,p=this.getRefKeys(e);if(p=p.normativeReferences.concat(p.informativeReferences).concat(this.findLocalAliases(e)),p.length&&(o++,a=e.httpScheme+"://specref.jit.su/bibrefs?callback=setBerjonBiblio&refs="+p.join(","),this.loadScript(a,s)),!berjon.simpleNode)for(var d=0;d<c.length;d++)o++,this.loadScript(c[d],s);i()},findLocalAliases:function(e){var t=[];if(e.localBiblio)for(var n in e.localBiblio)"undefined"!=typeof e.localBiblio[n].aliasOf&&t.push(e.localBiblio[n].aliasOf);return t},findBase:function(){for(var e,t=document.querySelectorAll("script[src]"),n="",r=0;r<t.length;r++)e=t[r].src,/\/js\/require.*\.js$/.test(e)&&(n=e.replace(/js\/require.*\.js$/,""));return n},loadScript:function(e,t){var n=document.createElement("script");n.type="text/javascript",n.src=e,n.setAttribute("class","remove"),n.onload=t,document.getElementsByTagName("head")[0].appendChild(n)},run:function(e,t,n,r){try{this.extractConfig(),this.overrideBiblio(e),this.bibref(e,t,n,r),this.doRDFa&&this.makeRDFa();var i=this;shortcut.add("Ctrl+Shift+Alt+S",function(){i.showSaveOptions()}),shortcut.add("Esc",function(){i.hideSaveOptions()})}catch(s){r.pub("error","Processing error: "+s)}r.pub("end","w3c/legacy"),n()},overrideBiblio:function(e){if(e.localBiblio)for(var t in e.localBiblio)berjon.biblio[t]=e.localBiblio[t]},makeRDFa:function(){var e=document.getElementById("abstract");if(e){var t="dcterms:abstract",n=e.getAttribute("property");n&&(t=n+" "+t),e.setAttribute("property",t),e.setAttribute("datatype","")}for(var r=document.querySelectorAll("section"),i=0;i<r.length;i++){var s="",a=r[i].firstElementChild,n=r[i].getAttribute("id");n?s="#"+n:a&&(n=a.getAttribute("id"),n&&(s="#"+n)),""!==s&&(r[i].setAttribute("typeof","bibo:Chapter"),r[i].setAttribute("resource",s),r[i].setAttribute("rel","bibo:chapter"))}},saveMenu:null,showSaveOptions:function(){var e=this;this.saveMenu=sn.element("div",{style:"position: fixed; width: 400px; top: 10px; padding: 1em; border: 5px solid #90b8de; background: #fff"},document.body),sn.element("h4",{},this.saveMenu,"Save Options");var t=sn.element("button",{},this.saveMenu,"Save as HTML");t.onclick=function(){e.hideSaveOptions(),e.toHTML()};var n=sn.element("button",{},this.saveMenu,"Save as HTML (Source)");n.onclick=function(){e.hideSaveOptions(),e.toHTMLSource()};var n=sn.element("button",{},this.saveMenu,"Save as XHTML 1");n.onclick=function(){e.hideSaveOptions(),e.toXHTML(1)};var n=sn.element("button",{},this.saveMenu,"Save as XHTML 1 (Source)");n.onclick=function(){e.hideSaveOptions(),e.toXHTMLSource(1)};var n=sn.element("button",{},this.saveMenu,"Save as XHTML 5");n.onclick=function(){e.hideSaveOptions(),e.toXHTML(5)};var n=sn.element("button",{},this.saveMenu,"Save as XHTML 5 (Source)");if(n.onclick=function(){e.hideSaveOptions(),e.toXHTMLSource(5)},this.diffTool&&(this.previousDiffURI||this.previousURI)){var r=sn.element("button",{},this.saveMenu,"Diffmark");r.onclick=function(){e.hideSaveOptions(),e.toDiffHTML()}}},hideSaveOptions:function(){this.saveMenu&&this.saveMenu.parentNode.removeChild(this.saveMenu)},toString:function(){var e="<!DOCTYPE html",t=document.doctype;t&&t.publicId&&(e+=" PUBLIC '"+t.publicId+"' '"+t.systemId+"'"),e+=">\n",e+="<html";for(var n=document.documentElement.attributes,r="",i=0;i<n.length;i++){var s=n[i].name;"xmlns"!=s&&"xml:lang"!=s&&("prefix"!=s?e+=" "+s+'="'+this._esc(n[i].value)+'"':r=n[i].value)}e+=">\n";var a=document.createComment("[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]");return $("head").append(a),e+=document.documentElement.innerHTML,e+="</html>"},toXML:function(e){5!=e&&($.each("section figcaption figure".split(" "),function(e,t){$(t).renameElement("div").addClass(t)}),$("time").renameElement("span").addClass("time").removeAttr("datetime"),$("[role]").removeAttr("role"),$("[aria-level]").removeAttr("aria-level"),$("style:not([type])").attr("type","text/css"),$("script:not([type])").attr("type","text/javascript"));var t="<?xml version='1.0' encoding='UTF-8'?>\n<!DOCTYPE html",r=document.doctype;r&&r.publicId?t+=" PUBLIC '"+r.publicId+"' '"+r.systemId+"'":5!=e&&(t+=this.doRDFa?"1.1"==this.doRDFa?" PUBLIC '-//W3C//DTD XHTML+RDFa 1.1//EN' 'http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd'":" PUBLIC '-//W3C//DTD XHTML+RDFa 1.0//EN' 'http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd'":" PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'"),t+=">\n",t+="<html";for(var i=document.documentElement.attributes,s=!1,a=0;a<i.length;a++){var o=i[a].name;"lang"!=o&&("xmlns"==o&&(s=!0),t+=" "+o+'="'+this._esc(i[a].value)+'"')}s||(t+=' xmlns="http://www.w3.org/1999/xhtml"'),t+=">\n";var l=this,c={};"br img input area base basefont col isindex link meta param hr".split(" ").forEach(function(e){c[e]=!0});var u=[!1];if(5==e){var p=document.createComment("[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]");$("head",document).append(p)}var d=function(e){var t="";if(9==e.nodeType||1==e.nodeType&&"html"==e.nodeName.toLowerCase())for(var r=0;r<e.childNodes.length;r++)t+=d(e.childNodes[r]);else if(1===e.nodeType){var i=e.nodeName.toLowerCase();t+="<"+i;for(var r=0;r<e.attributes.length;r++){var s=e.attributes[r];/^\d+$/.test(s.name)||(t+=" "+s.name+'="'+l._esc(s.value)+'"')}if(c[i])t+=" />";else{t+=">",u.push("style"===i||"script"===i);for(var r=0;r<e.childNodes.length;r++)t+=d(e.childNodes[r]);u.pop(),t+="</"+i+">"}}else 8===e.nodeType?t+="\n<!--"+e.nodeValue+"-->\n":3===e.nodeType||4===e.nodeType?t+=u[u.length-1]?e.nodeValue:l._esc(e.nodeValue):n("Cannot handle serialising nodes of type: "+e.nodeType);return t};return t+=d(document.documentElement),t+="</html>"},toDiffHTML:function(){var e=window.location.href;e=e.replace(/\/[^\/]*$/,"/");var t="<!DOCTYPE html>\n";t+="<html";for(var n=document.documentElement.attributes,r=0;r<n.length;r++)t+=" "+n[r].name+'="'+this._esc(n[r].value)+'"';t+=">\n",t+="<head><title>diff form</title></head>\n",t+="<body><form name='form' method='POST' action='"+this.diffTool+"'>\n",t+="<input type='hidden' name='base' value='"+e+"'>\n",t+=this.previousDiffURI?"<input type='hidden' name='oldfile' value='"+this.previousDiffURI+"'>\n":"<input type='hidden' name='oldfile' value='"+this.previousURI+"'>\n",t+='<input type="hidden" name="newcontent" value="'+this._esc(this.toString())+'">\n',t+="<p>Please wait...</p>",t+="</form></body></html>\n";var i=window.open();i.document.write(t),i.document.close(),i.document.form.submit()},toHTML:function(){var e=window.open();e.document.write(this.toString()),e.document.close()},toHTMLSource:function(){var e=window.open();e.document.write("<pre>"+this._esc(this.toString())+"</pre>"),e.document.close()},toXHTML:function(e){var t=window.open();t.document.write(this.toXML(e)),t.document.close()},toXHTMLSource:function(e){var t=window.open();t.document.write("<pre>"+this._esc(this.toXML(e))+"</pre>"),t.document.close()},extractConfig:function(){var e=respecConfig||{};e.diffTool||(e.diffTool="http://www5.aptest.com/standards/htmldiff/htmldiff.pl"),void 0===e.doRDFa&&(e.doRDFa="1.1");for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t])},getRefKeys:function(e){function t(e){var t=[];for(var n in e)t.push(n);return t}var n=e.informativeReferences,r=e.normativeReferences,i=[];for(var s in n)r[s]&&i.push(s);for(var a=0;a<i.length;a++)delete n[i[a]];return{informativeReferences:t(n),normativeReferences:t(r)}},bibref:function(e){var r={},i=0,s=this.getRefKeys(e),a=s.informativeReferences,o=s.normativeReferences,l={};if(a.length||o.length||this.refNote){var c=sn.element("section",{id:"references","class":"appendix"},document.body);if(sn.element("h2",{},c,"References"),this.refNote){var u=sn.element("p",{},c);u.innerHTML=this.refNote}for(var p=["Normative","Informative"],d=0;d<p.length;d++){var f=p[d],s="Normative"==f?o:a;if(s.length){var h=sn.element("section",{},c);sn.makeID(h,null,f+" references"),sn.element("h3",{},h,f+" references"),s.sort();var m=sn.element("dl",{"class":"bibliography"},h);this.doRDFa&&m.setAttribute("about","");for(var g=0;g<s.length;g++){var b=s[g];sn.element("dt",{id:"bib-"+b},m,"["+b+"]");var v=sn.element("dd",{},m);this.doRDFa&&("Normative"==f?v.setAttribute("rel","dcterms:requires"):v.setAttribute("rel","dcterms:references"));var y=berjon.biblio[b],x={},w=b;for(x[b]=!0;y&&y.aliasOf;)x[y.aliasOf]?(y=null,t("Circular reference in biblio DB between ["+b+"] and ["+w+"].")):(w=y.aliasOf,y=berjon.biblio[w],x[w]=!0);l[w]=l[w]||[],l[w].indexOf(b)<0&&l[w].push(b),y?v.innerHTML=this.stringifyRef(y)+"\n":(r[b]||(r[b]=0),r[b]++,i++,v.innerHTML="<em>Reference not found.</em>\n")}}}for(var C in l)l[C].length>1&&n("["+C+"] is referenced in "+l[C].length+" ways ("+l[C].join(", ")+"). This causes duplicate entries in the reference section.");if(i>0){t("Got "+i+" tokens looking like a reference, not in biblio DB: ");for(var S in r)r.hasOwnProperty(S)&&t("Bad ref: "+S+", count = "+r[S])}}},stringifyRef:function(e){if("string"==typeof e)return e;var t="";return e.authors&&e.authors.length&&(t+=e.authors.join("; "),e.etAl&&(t+=" et al"),t+=". "),t+='<a href="'+e.href+'"><cite>'+e.title+"</cite></a>. ",e.date&&(t+=e.date+". "),e.status&&(t+=this.getRefStatus(e.status)+". "),t+='URL: <a href="'+e.href+'">'+e.href+"</a>"},getRefStatus:function(e){return this.REF_STATUSES[e]||e},REF_STATUSES:{NOTE:"W3C Note","WG-NOTE":"W3C Working Group Note",ED:"W3C Editor's Draft",FPWD:"W3C First Public Working Draft",WD:"W3C Working Draft",LCWD:"W3C Last Call Working Draft",CR:"W3C Candidate Recommendation",PR:"W3C Proposed Recommendation",PER:"W3C Proposed Edited Recommendation",REC:"W3C Recommendation"},_esc:function(e){return e=e.replace(/&/g,"&"),e=e.replace(/>/g,">"),e=e.replace(/"/g,"""),e=e.replace(/</g,"<")}}}(),function(){if(!document.evaluate){window.XPathResult=function(e){return e.snapshotLength=e.length,e.snapshotItem=function(e){return this[e]},e},window.XPathResult.prototype.ORDERED_NODE_SNAPSHOT_TYPE=7,window.XPathResult.ORDERED_NODE_SNAPSHOT_TYPE=7;var e=function(e){var t=function(e,t){for(var n=document.querySelectorAll(e),r=[],i=0,s=n.length;s>i;i++)16&n[i].compareDocumentPosition(t)&&r.push(n[i]);return r},n=null,r=function(){if(null==n){var e=document.createNodeIterator(document.body,4,function(){return 1},!1);n=[];for(var t;t=e.nextNode();)n.push(t)}},i=function(e){r();for(var t=[],i=0,s=n.length;s>i;i++)8&n[i].compareDocumentPosition(e)&&t.push(n[i]);return t},s=function(e,t){for(var n=document.querySelectorAll(e),r=[],i=0,s=n.length;s>i;i++)16&n[i].compareDocumentPosition(t)&&r.push(n[i]);return r},a=function(e,t){for(var n=e.querySelectorAll(t),r=[],i=0,s=n.length;s>i;i++)n[i].parentNode==e&&r.push(n[i]);return r};e.evaluate=function(e,n){return"ancestor::x:section|ancestor::section"==e?XPathResult(t("section",n)):"./x:section|./section"==e?XPathResult(a(n,"section")):"./x:section[not(@class='introductory')]|./section[not(@class='introductory')]"==e?XPathResult(a(n,"section:not([class='introductory'])")):".//text()"==e?XPathResult(i(n)):"ancestor::abbr"==e||"ancestor::acronym"==e?XPathResult(s("ancestor::abbr"==e?"abbr":"acronym",n)):"./dt"==e?XPathResult(a(n,"dt")):"dl[@class='parameters']"==e?XPathResult(n.querySelectorAll("dl[class='parameters']")):"*[@class='exception']"==e?XPathResult(n.querySelectorAll("[class='exception']")):XPathResult([])}};window.Document?e(Document.prototype):e(window.document)}}(),define("w3c/legacy",[],function(){return{run:function(e,t,n,r){r.pub("start","w3c/legacy"),(new berjon.respec).loadAndRun(e,t,n,r)}}}),define("tmpl!core/css/webidl-oldschool.css",["handlebars"],function(){return Handlebars.compile('/* --- WEB IDL --- */\npre.idl {\n border-top: 1px solid #90b8de;\n border-bottom: 1px solid #90b8de;\n padding: 1em;\n line-height: 120%;\n}\n\npre.idl::before {\n content: "WebIDL";\n display: block;\n width: 150px;\n background: #90b8de;\n color: #fff;\n font-family: initial;\n padding: 3px;\n font-weight: bold;\n margin: -1em 0 1em -1em;\n}\n\n.idlType {\n color: #ff4500;\n font-weight: bold;\n text-decoration: none;\n}\n\n/*.idlModule*/\n/*.idlModuleID*/\n/*.idlInterface*/\n.idlInterfaceID, .idlDictionaryID, .idlCallbackID, .idlEnumID {\n font-weight: bold;\n color: #005a9c;\n}\na.idlEnumItem {\n color: #000;\n border-bottom: 1px dotted #ccc;\n text-decoration: none;\n}\n\n.idlSuperclass {\n font-style: italic;\n color: #005a9c;\n}\n\n/*.idlAttribute*/\n.idlAttrType, .idlFieldType, .idlMemberType {\n color: #005a9c;\n}\n.idlAttrName, .idlFieldName, .idlMemberName {\n color: #ff4500;\n}\n.idlAttrName a, .idlFieldName a, .idlMemberName a {\n color: #ff4500;\n border-bottom: 1px dotted #ff4500;\n text-decoration: none;\n}\n\n/*.idlMethod*/\n.idlMethType, .idlCallbackType {\n color: #005a9c;\n}\n.idlMethName {\n color: #ff4500;\n}\n.idlMethName a {\n color: #ff4500;\n border-bottom: 1px dotted #ff4500;\n text-decoration: none;\n}\n\n/*.idlCtor*/\n.idlCtorName {\n color: #ff4500;\n}\n.idlCtorName a {\n color: #ff4500;\n border-bottom: 1px dotted #ff4500;\n text-decoration: none;\n}\n\n/*.idlParam*/\n.idlParamType {\n color: #005a9c;\n}\n.idlParamName, .idlDefaultValue {\n font-style: italic;\n}\n\n.extAttr {\n color: #666;\n}\n\n/*.idlSectionComment*/\n.idlSectionComment {\n color: gray;\n}\n\n/*.idlConst*/\n.idlConstType {\n color: #005a9c;\n}\n.idlConstName {\n color: #ff4500;\n}\n.idlConstName a {\n color: #ff4500;\n border-bottom: 1px dotted #ff4500;\n text-decoration: none;\n}\n\n/*.idlException*/\n.idlExceptionID {\n font-weight: bold;\n color: #c00;\n}\n\n.idlTypedefID, .idlTypedefType {\n color: #005a9c;\n}\n\n.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {\n color: #c00;\n font-weight: normal;\n}\n\n.excName a {\n font-family: monospace;\n}\n\n.idlRaises a.idlType, .excName a.idlType {\n border-bottom: 1px dotted #c00;\n}\n\n.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {\n width: 45px;\n text-align: center;\n}\n.excGetSetTrue, .prmNullTrue, .prmOptTrue { color: #0c0; }\n.excGetSetFalse, .prmNullFalse, .prmOptFalse { color: #c00; }\n\n.idlImplements a {\n font-weight: bold;\n}\n\ndl.attributes, dl.methods, dl.constants, dl.constructors, dl.fields, dl.dictionary-members {\n margin-left: 2em;\n}\n\n.attributes dt, .methods dt, .constants dt, .constructors dt, .fields dt, .dictionary-members dt {\n font-weight: normal;\n}\n\n.attributes dt code, .methods dt code, .constants dt code, .constructors dt code, .fields dt code, .dictionary-members dt code {\n font-weight: bold;\n color: #000;\n font-family: monospace;\n}\n\n.attributes dt code, .fields dt code, .dictionary-members dt code {\n background: #ffffd2;\n}\n\n.attributes dt .idlAttrType code, .fields dt .idlFieldType code, .dictionary-members dt .idlMemberType code {\n color: #005a9c;\n background: transparent;\n font-family: inherit;\n font-weight: normal;\n font-style: italic;\n}\n\n.methods dt code {\n background: #d9e6f8;\n}\n\n.constants dt code {\n background: #ddffd2;\n}\n\n.constructors dt code {\n background: #cfc;\n}\n\n.attributes dd, .methods dd, .constants dd, .constructors dd, .fields dd, .dictionary-members dd {\n margin-bottom: 1em;\n}\n\ntable.parameters, table.exceptions {\n border-spacing: 0;\n border-collapse: collapse;\n margin: 0.5em 0;\n width: 100%;\n}\ntable.parameters { border-bottom: 1px solid #90b8de; }\ntable.exceptions { border-bottom: 1px solid #deb890; }\n\n.parameters th, .exceptions th {\n color: #fff;\n padding: 3px 5px;\n text-align: left;\n font-family: initial;\n font-weight: normal;\n text-shadow: #666 1px 1px 0;\n}\n.parameters th { background: #90b8de; }\n.exceptions th { background: #deb890; }\n\n.parameters td, .exceptions td {\n padding: 3px 10px;\n border-top: 1px solid #ddd;\n vertical-align: top;\n}\n\n.parameters tr:first-child td, .exceptions tr:first-child td {\n border-top: none;\n}\n\n.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {\n width: 100px;\n}\n\n.parameters td.prmType {\n width: 120px;\n}\n\ntable.exceptions table {\n border-spacing: 0;\n border-collapse: collapse;\n width: 100%;\n}\n')}),define("tmpl!core/templates/webidl/module.html",["handlebars"],function(){return Handlebars.compile("<span class='idlModule'>{{extAttr obj indent true }}{{idn indent}}module <span class='idlModuleID'>{{obj.id}}</span> {\n{{#each obj.children}}{{asWebIDL proc this indent}}{{/each}}\n{{idn indent}}};</span>\n")}),define("tmpl!core/templates/webidl/typedef.html",["handlebars"],function(){return Handlebars.compile("<span class='idlTypedef' id='idl-def-{{obj.refId}}'>typedef {{extAttr obj 0 false\n}}<span class='idlTypedefType'>{{datatype obj.datatype\n}}</span>{{arr}}{{nullable}} <span class='idlTypedefID'>{{obj.id}}</span>;</span>\n")}),define("tmpl!core/templates/webidl/implements.html",["handlebars"],function(){return Handlebars.compile("<span class='idlImplements'>{{extAttr obj indent true}}{{idn indent}}<a>{{obj.id}}</a> implements <a>{{obj.datatype}}</a>;</span>\n")}),define("tmpl!core/templates/webidl/dict-member.html",["handlebars"],function(){return Handlebars.compile("<span class='idlMember'>{{extAttr obj indent true\n}}{{idn indent}}<span class='idlMemberType'>{{datatype obj.datatype}}{{arr}}{{nullable}}</span> {{pads pad\n}}<span class='idlMemberName'><a href='#{{curLnk}}{{obj.refId}}'>{{obj.id}}</a></span>{{#if obj.defaultValue\n}} = <span class='idlMemberValue'>{{obj.defaultValue}}</span>{{/if}};</span>\n")}),define("tmpl!core/templates/webidl/dictionary.html",["handlebars"],function(){return Handlebars.compile("<span class='idlDictionary' id='idl-def-{{obj.refId}}'>{{extAttr obj indent true\n}}{{idn indent}}{{partial}}dictionary <span class='idlDictionaryID'>{{obj.id}}</span>{{superclasses obj}} {\n{{{children}}}};</span>\n")}),define("tmpl!core/templates/webidl/enum-item.html",["handlebars"],function(){return Handlebars.compile('{{idn indent}}"<a href="#idl-def-{{parentID}}.{{obj.refId}}" class="idlEnumItem">{{obj.id}}</a>"')}),define("tmpl!core/templates/webidl/enum.html",["handlebars"],function(){return Handlebars.compile("<span class='idlEnum' id='idl-def-{{obj.refId}}'>{{extAttr obj indent true\n}}{{idn indent}}enum <span class='idlEnumID'>{{obj.id}}</span> {\n{{{children}}}\n{{idn indent}}}};")}),define("tmpl!core/templates/webidl/const.html",["handlebars"],function(){return Handlebars.compile("<span class='idlConst'>{{extAttr obj indent true\n}}{{idn indent}}const <span class='idlConstType'><a>{{obj.datatype}}</a>{{nullable}}</span> {{pads pad\n}}<span class='idlConstName'><a href='#{{curLnk}}{{obj.refId}}'>{{obj.id\n}}</a></span> = <span class='idlConstValue'>{{obj.value}}</span>;</span>\n")}),define("tmpl!core/templates/webidl/param.html",["handlebars"],function(){return Handlebars.compile("<span class='idlParam'>{{extAttr obj 0 false\n}}{{optional}}<span class='idlParamType'>{{datatype obj.datatype}}{{arr}}{{nullable}}{{variadic\n}}</span> <span class='idlParamName'>{{obj.id}}</span>{{#if obj.defaultValue\n}} = <span class='idlDefaultValue'>{{obj.defaultValue}}</span>{{/if}}</span>")}),define("tmpl!core/templates/webidl/callback.html",["handlebars"],function(){return Handlebars.compile("<span class='idlCallback' id='idl-def-{{obj.refId}}'>{{extAttr obj indent true\n}}{{idn indent}}callback <span class='idlCallbackID'>{{obj.id\n}}</span> = <span class='idlCallbackType'>{{datatype obj.datatype}}{{arr}}{{nullable}}</span> ({{{children}}});</span>\n")}),define("tmpl!core/templates/webidl/method.html",["handlebars"],function(){return Handlebars.compile("<span class='idlMethod'>{{extAttr obj indent true\n}}{{idn indent}}{{static}}<span class='idlMethType'>{{datatype obj.datatype}}{{arr}}{{nullable}}</span> {{pads pad\n}}<span class='idlMethName'><a href='#{{id}}'>{{obj.id}}</a></span> ({{{children}}});</span>\n")}),define("tmpl!core/templates/webidl/constructor.html",["handlebars"],function(){return Handlebars.compile("<span class='idlCtor'>{{extAttr obj indent true\n}}{{idn indent}} <span class='idlCtorKeyword'>{{keyword}}</span><span class='idlCtorName'><a href='#{{id}}'>{{name}}</a></span>{{param obj children}}</span>")}),define("tmpl!core/templates/webidl/attribute.html",["handlebars"],function(){return Handlebars.compile("<span class='idlAttribute'>{{extAttr obj indent true\n}}{{idn indent}}{{declaration}} attribute <span class='idlAttrType'>{{datatype obj.datatype}}{{arr}}{{nullable}}</span> {{pads\npad}}<span class='idlAttrName'><a href='#{{href}}'>{{obj.id}}</a></span>;</span>\n")}),define("tmpl!core/templates/webidl/serializer.html",["handlebars"],function(){return Handlebars.compile("<span class='idlSerializer'>{{extAttr obj indent true\n}}{{idn indent}}serializer{{#if values}} = <span class='idlSerializerValues'>{{values}}</span>{{/if}};</span>\n")}),define("tmpl!core/templates/webidl/comment.html",["handlebars"],function(){return Handlebars.compile("<span class='idlSectionComment'>{{extAttr obj indent true\n}}{{idn indent}}// {{comment}}</span>\n")}),define("tmpl!core/templates/webidl/field.html",["handlebars"],function(){return Handlebars.compile("<span class='idlField'>{{extAttr obj indent true\n}}{{idn indent}}<span class='idlFieldType'>{{datatype obj.datatype}}{{arr}}{{nullable}}</span> {{pads\npad}}<span class='idlFieldName'><a href='#{{href}}'>{{obj.id}}</a></span>;</span>\n")}),define("tmpl!core/templates/webidl/exception.html",["handlebars"],function(){return Handlebars.compile("<span class='idlException' id='idl-def-{{obj.refId}}'>{{extAttr obj indent true\n}}{{idn indent}}exception <span class='idlExceptionID'>{{obj.id}}</span>{{superclasses obj}} {\n{{{children}}}{{idn indent}}}};</span>")}),define("tmpl!core/templates/webidl/interface.html",["handlebars"],function(){return Handlebars.compile("<span class='idlInterface' id='{{id}}'>{{extAttr obj indent true ctor\n}}{{idn indent}}{{partial}}{{callback}}interface <span class='idlInterfaceID'>{{obj.id}}</span>{{superclasses obj}} {\n{{{children}}}{{idn indent}}}};</span>")}),define("core/webidl-oldschool",["handlebars","tmpl!core/css/webidl-oldschool.css","tmpl!core/templates/webidl/module.html","tmpl!core/templates/webidl/typedef.html","tmpl!core/templates/webidl/implements.html","tmpl!core/templates/webidl/dict-member.html","tmpl!core/templates/webidl/dictionary.html","tmpl!core/templates/webidl/enum-item.html","tmpl!core/templates/webidl/enum.html","tmpl!core/templates/webidl/const.html","tmpl!core/templates/webidl/param.html","tmpl!core/templates/webidl/callback.html","tmpl!core/templates/webidl/method.html","tmpl!core/templates/webidl/constructor.html","tmpl!core/templates/webidl/attribute.html","tmpl!core/templates/webidl/serializer.html","tmpl!core/templates/webidl/comment.html","tmpl!core/templates/webidl/field.html","tmpl!core/templates/webidl/exception.html","tmpl!core/templates/webidl/interface.html"],function(e,t,n,r,i,s,a,o,l,c,u,p,d,f,h,m,g,b,v,y){var x=function(e){this.parent={type:"module",id:"outermost",children:[]},e||(e={}); +for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);Handlebars.registerHelper("extAttr",function(e,t,n,r){var i="";return e.extendedAttributes?i+=w(t)+"[<span class='extAttr'>"+e.extendedAttributes+"</span>"+("string"==typeof r&&r.length?",\n"+r:"")+"]"+(n?"\n":" "):"string"==typeof r&&r.length&&(i+=w(t)+"["+r+"]"+(n?"\n":" ")),new Handlebars.SafeString(i)}),Handlebars.registerHelper("param",function(e,t){var n="";return t&&(n+=" ("+t+")"),new Handlebars.SafeString(n)}),Handlebars.registerHelper("idn",function(e){return new Handlebars.SafeString(w(e))}),Handlebars.registerHelper("asWebIDL",function(e,t,n){return new Handlebars.SafeString(e.writeAsWebIDL(t,n))}),Handlebars.registerHelper("datatype",function(e){return new Handlebars.SafeString(E(e))}),Handlebars.registerHelper("pads",function(e){return new Handlebars.SafeString(k(e))}),Handlebars.registerHelper("superclasses",function(e){if(!e.superclasses||!e.superclasses.length)return"";var t=" : "+e.superclasses.map(function(e){return"<span class='idlSuperclass'><a>"+e+"</a></span>"}).join(", ");return new Handlebars.SafeString(t)})},w=function(e){for(var t="",n=0;e>n;n++)t+=" ";return t},C=function(e){return e.replace(/^\s+/,"").replace(/\s+$/,"").split(/\s+/).join(" ")},S=function(e){return e=e.split(/[^\-.0-9a-zA-Z_]/).join("-"),e=e.replace(/^\-+/g,""),e=e.replace(/\-+$/,""),e.length>0&&/^[^a-z]/.test(e)&&(e="x"+e),0===e.length&&(e="generatedID"),e},T=function(e){for(var t="",n=0,r=e.arrayCount;r>n;n++)t+="[]";return t},E=function(e){if($.isArray(e)){for(var t=[],n=0,r=e.length;r>n;n++)t.push(E(e[n]));return"("+t.join(" or ")+")"}var i=/^sequence<(.+)>$/.exec(e);return i?"sequence<<a>"+i[1]+"</a>>":"<a>"+e+"</a>"},k=function(e){for(var t="",n=0;e>n;n++)t+=" ";return t};return x.prototype={setID:function(e,t){e.id=t,e.refId=e.id.replace(/[^a-zA-Z_\-]/g,""),e.unescapedId="_"==e.id[0]?e.id.slice(1):e.id},nullable:function(e,t){return e.nullable=!1,/\?$/.test(t)&&(t=t.replace(/\?$/,""),e.nullable=!0),t},array:function(e,t){return e.array=!1,/\[\]$/.test(t)&&(e.arrayCount=0,t=t.replace(/(?:\[\])/g,function(){return e.arrayCount++,""}),e.array=!0),t},params:function(e,t,n){var r={};e=this.parseExtendedAttributes(e,r);var i=/^\s*(?:in\s+)?([^,=]+)\s+\b([^,]+)\s*(?:,)?\s*/,s=i.exec(e);if(!s)return this.msg.pub("error","Expected parameter list, got: "+e),!1;e=e.replace(i,"");var a=s[1],o=s[2],l=o.split(/\s*=\s*/),c=null;return 1===l.length?o=o.replace(/\s+/g,""):(o=l[0],c=l[1]),this.parseDatatype(r,a),r.defaultValue=c,this.setID(r,o),t&&(r.description=t.contents()),n.params.push(r),e},optional:function(e){if(e.isUnionType)return e.optional=!1,!1;var t=e.datatype.split(/\s+/),n=t.indexOf("optional"),r=!1;return n>-1&&(r=!0,t.splice(n,1),e.datatype=t.join(" ")),e.optional=r,r},definition:function(e){var t={children:[]},n=e.attr("title"),r=e.attr("id");if(n||this.msg.pub("error","No IDL definition in element."),n=this.parseExtendedAttributes(n,t),0===n.indexOf("partial")){var i=n.slice(8);0===i.indexOf("interface")?this.processInterface(t,n,e,{partial:!0}):0===i.indexOf("dictionary")?this.dictionary(t,i,e,{partial:!0}):this.msg.pub("error","Expected definition, got: "+n)}else 0===n.indexOf("interface")||/^callback\s+interface\b/.test(n)?this.processInterface(t,n,e):0===n.indexOf("exception")?this.exception(t,n,e):0===n.indexOf("dictionary")?this.dictionary(t,n,e):0===n.indexOf("callback")?this.callback(t,n,e):0===n.indexOf("enum")?this.processEnum(t,n,e):0===n.indexOf("typedef")?this.typedef(t,n,e):/\bimplements\b/.test(n)?this.processImplements(t,n,e):this.msg.pub("error","Expected definition, got: "+n);return this.parent.children.push(t),this.processMembers(t,e),r&&(t.htmlID=r),t},processInterface:function(e,t,n,r){r=r||{},e.type="interface",e.partial=r.partial||!1;var i=/^\s*(?:(partial|callback)\s+)?interface\s+([A-Za-z][A-Za-z0-9]*)(?:\s+:\s*([^{]+)\s*)?/.exec(t);return i?(e.callback=!!i[1]&&"callback"===i[1],this.setID(e,i[2]),n.attr("data-merge")&&(e.merge=n.attr("data-merge").split(" ")),i[3]&&(e.superclasses=i[3].split(/\s*,\s*/))):this.msg.pub("error","Expected interface, got: "+t),e},dictionary:function(e,t,n,r){return r=r||{},e.partial=r.partial||!1,this.excDic("dictionary",e,t,n)},exception:function(e,t,n){return this.excDic("exception",e,t,n)},excDic:function(e,t,n){t.type=e;var r=new RegExp("^\\s*"+e+"\\s+([A-Za-z][A-Za-z0-9]*)(?:\\s+:\\s*([^{]+)\\s*)?\\s*"),i=r.exec(n);return i?(this.setID(t,i[1]),i[2]&&(t.superclasses=i[2].split(/\s*,\s*/))):this.msg.pub("error","Expected "+e+", got: "+n),t},callback:function(e,t){e.type="callback";var n=/^\s*callback\s+([A-Za-z][A-Za-z0-9]*)\s*=\s*\b(.*?)\s*$/.exec(t);if(n){this.setID(e,n[1]);var r=n[2];this.parseDatatype(e,r)}else this.msg.pub("error","Expected callback, got: "+t);return e},processEnum:function(e,t){e.type="enum";var n=/^\s*enum\s+([A-Za-z][A-Za-z0-9]*)\s*$/.exec(t);return n?this.setID(e,n[1]):this.msg.pub("error","Expected enum, got: "+t),e},typedef:function(e,t,n){e.type="typedef",t=t.replace(/^\s*typedef\s+/,""),t=this.parseExtendedAttributes(t,e);var r=/^(.+)\s+(\S+)\s*$/.exec(t);if(r){var i=r[1];this.parseDatatype(e,i),this.setID(e,r[2]),e.description=n.contents()}else this.msg.pub("error","Expected typedef, got: "+t);return e},processImplements:function(e,t,n){e.type="implements";var r=/^\s*(.+?)\s+implements\s+(.+)\s*$/.exec(t);return r?(this.setID(e,r[1]),e.datatype=r[2],e.description=n.contents()):this.msg.pub("error","Expected implements, got: "+t),e},processMembers:function(e,t){var n=this.parent,r=this;this.parent=e,t.find("> dt").each(function(){var t,n=$(this),i=n.next(),s=e.type;t="exception"===s?r.exceptionMember(n,i):"dictionary"===s?r.dictionaryMember(n,i):"callback"===s?r.callbackMember(n,i):"enum"===s?r.processEnumMember(n,i):r.interfaceMember(n,i),e.children.push(t)}),this.parent=n},parseConst:function(e,t){var n=/^\s*const\s+\b([^=]+\??)\s+([^=\s]+)\s*=\s*(.*)$/.exec(t);if(n){e.type="constant";var r=n[1];return this.parseDatatype(e,r),this.setID(e,n[2]),e.value=n[3],!0}return!1},exceptionMember:function(e,t){var n={children:[]},r=C(e.text());if(n.description=t.contents(),r=this.parseExtendedAttributes(r,n),this.parseConst(n,r))return n;var i=/^\s*(.*?)\s+(\S+)\s*$/.exec(r);if(i){n.type="field";var s=i[1];return this.parseDatatype(n,s),this.setID(n,i[2]),n}this.msg.pub("error","Expected exception member, got: "+r)},dictionaryMember:function(e,t){var n={children:[]},r=C(e.text());n.description=t.contents(),r=this.parseExtendedAttributes(r,n);var i=/^\s*([^=]+\??)\s+([^=\s]+)(?:\s*=\s*(.*))?$/.exec(r);if(i){n.type="member";var s=i[1];return n.defaultValue=i[3],this.setID(n,i[2]),this.parseDatatype(n,s),n}this.msg.pub("error","Expected dictionary member, got: "+r)},callbackMember:function(e,t){var n={children:[]},r=C(e.text());n.description=t.contents(),r=this.parseExtendedAttributes(r,n);var i=/^\s*(.*?)\s+([A-Za-z][A-Za-z0-9]*)\s*$/.exec(r);if(i){n.type="member";var s=i[1];return this.setID(n,i[2]),n.defaultValue=i[3],this.parseDatatype(n,s),this.optional(n),n}this.msg.pub("error","Expected callback member, got: "+r)},processEnumMember:function(e,t){var n={children:[]},r=C(e.text());return n.description=t.contents(),r=this.parseExtendedAttributes(r,n),n.type="member",this.setID(n,r),n.refId=S(n.id),n},interfaceMember:function(e,t){var n={children:[]},r=C(e.text()),i=t.find("dl.parameters").first(),s=t.find(".getraises, .setraises"),a=t.find("dl.exception").first();n.description=t.contents().not("dl.parameters"),r=this.parseExtendedAttributes(r,n);var o;if(o=/^\s*(?:(readonly|inherit|stringifier)\s+)?attribute\s+(.*?)\s+(\S+)\s*$/.exec(r)){n.type="attribute",n.declaration=o[1]?o[1]:"",n.declaration+=new Array(12-n.declaration.length).join(" ");var l=o[2];return this.parseDatatype(n,l),this.setID(n,o[3]),n.raises=[],s.each(function(){var e=$(this),t={id:e.attr("title"),onSet:e.hasClass("setraises"),onGet:e.hasClass("getraises")};e.is("dl")?(t.type="codelist",t.description=[],e.find("dt").each(function(){var e=$(this),n=e.next("dd");t.description.push({id:e.text(),description:n.contents().clone()})})):e.is("div")?(t.type="simple",t.description=e.contents().clone()):this.msg.pub("error","Do not know what to do with exceptions being raised defined outside of a div or dl."),e.remove(),n.raises.push(t)}),n}if(this.parseConst(n,r))return n;if(o=/^\s*Constructor(?:\s*\(\s*(.*)\s*\))?\s*$/.exec(r)){n.type="constructor";var c=o[1]?o[1]:[];return this.setID(n,this.parent.id),n.named=!1,n.datatype="",this.methodMember(n,a,i,c)}if(o=/^\s*NamedConstructor\s*(?:=\s*)?\b([^(]+)(?:\s*\(\s*(.*)\s*\))?\s*$/.exec(r)){n.type="constructor";var c=o[2]?o[2]:[];return this.setID(n,o[1]),n.named=!0,n.datatype="",this.methodMember(n,a,i,c)}if(o=/^\s*(.*?)\s+\b(\S+?)\s*\(\s*(.*)\s*\)\s*$/.exec(r)){n.type="method";var l=o[1],c=o[3];return l=this.parseStatic(n,l),this.parseDatatype(n,l),this.setID(n,o[2]),this.methodMember(n,a,i,c)}if(o=/^\s*serializer(\s*=\s*((\{\s*(\S+(\s*,\s*\S+)*)?\s*\})|(\[(\s*\S+(\s*,\s*\S+)*)?\s*\])|(\S+)))?\s*$/.exec(r)){n.type="serializer",n.values=[],this.setID(n,"serializer");var u,p=o[3],d=o[6],f=o[9];if(p?(n.serializertype="map",u=o[4]):d?(n.serializertype="list",u=o[7]):f?(n.serializertype="attribute",n.values.push(f)):n.serializertype="prose",u){var h=u.split(/\s*,\s*/);n.getter=!1,n.inherit=!1,n.all=!1,"getter"==h[0]?n.getter=!0:("map"==n.serializertype&&("inherit"==h[0]&&(n.inherit=!0,h.shift()),"attribute"==h[0]&&"map"==n.serializertype&&(n.all=!0,h=[])),n.values=h)}return n}return(o=/^\s*\/\/\s*(.*)\s*$/.exec(r))?(n.type="comment",n.id=o[1],n):(this.msg.pub("error","Expected interface member, got: "+r),void 0)},methodMember:function(e,t,n,r){if(e.params=[],e.raises=[],t.each(function(){var t=$(this),n={id:t.attr("title")};t.is("dl")?(n.type="codelist",n.description=[],t.find("dt").each(function(){var e=$(this),t=e.next("dd");n.description.push({id:e.text(),description:t.contents().clone()})})):t.is("div")?(n.type="simple",n.description=t.contents().clone()):this.msg.pub("error","Do not know what to do with exceptions being raised defined outside of a div or dl."),t.remove(),e.raises.push(n)}),n.length){n.remove();var i=this;n.find("> dt").each(function(){return i.params($(this).text(),$(this).next(),e)})}else for(;r.length&&(r=this.params(r,null,e),r!==!1););for(var s=!1,a=0;a<e.params.length;a++)s?(e.params[a].optional=!0,e.params[a].datatype=e.params[a].datatype.replace(/\boptional\s+/,"")):s=this.optional(e.params[a]);return e},parseDatatype:function(e,t){t=this.nullable(e,t),t=this.array(e,t),e.variadic=!1,/\.\.\./.test(t)&&(t=t.replace(/\.\.\./,""),e.variadic=!0),0===t.indexOf("(")?(t=t.replace("(","").replace(")",""),e.datatype=t.split(/\s+or\s+/),e.isUnionType=!0):e.datatype=t},parseStatic:function(e,t){return/^static\s+/.test(t)?(t=t.replace(/^static\s+/,""),e.isStatic=!0):e.isStatic=!1,t},parseExtendedAttributes:function(e,t){return e?e.replace(/^\s*\[([^\]]+)\]\s*/,function(e,n){return t.extendedAttributes=n,""}):void 0},makeMarkup:function(e){var t=$("<div></div>"),n={"class":"idl"};e&&(n.id=e);var r=$("<pre></pre>").attr(n);return r.html(this.writeAsWebIDL(this.parent,-1)),t.append(r),this.conf.noLegacyStyle||t.append(this.writeAsHTML(this.parent)),this.mergeWebIDL(this.parent.children[0]),t.children()},writeAsHTML:function(e){if("module"==e.type)return"outermost"==e.id?(e.children.length>1&&this.msg.pub("error","We currently only support one structural level per IDL fragment"),this.writeAsHTML(e.children[0])):(this.msg.pub("warn","No HTML can be generated for module definitions."),$("<span></span>"));if("typedef"==e.type){var t;if(e.description&&e.description.text())t=[e.description];else{var n=sn.element("span",{"class":"idlTypedefType"},null);n.innerHTML=E(e.datatype),t=[sn.text("Throughout this specification, the identifier "),sn.element("span",{"class":"idlTypedefID"},null,e.unescapedId),sn.text(" is used to refer to the "),sn.text(e.array?(e.arrayCount>1?e.arrayCount+"-":"")+"array of ":""),n,sn.text(e.nullable?" (nullable)":""),sn.text(" type.")]}return sn.element("div",{"class":"idlTypedefDesc"},null,t)}if("implements"==e.type){var t;return e.description&&e.description.text()?t=[e.description]:(t=[sn.text("All instances of the "),sn.element("code",{},null,[sn.element("a",{},null,e.unescapedId)]),sn.text(" type are defined to also implement the "),sn.element("a",{},null,e.datatype),sn.text(" interface.")],t=[sn.element("p",{},null,t)]),sn.element("div",{"class":"idlImplementsDesc"},null,t)}if("exception"==e.type){for(var r=sn.documentFragment(),i="widl-"+e.refId+"-",s=["field","constant"],a=function(e){return e.type===c},o=function(e,t){return e.unescapedId<t.unescapedId?-1:e.unescapedId>t.unescapedId?1:0},l=0;l<s.length;l++){var c=s[l],u=e.children.filter(a);if(0!==u.length){this.noIDLSorting||u.sort(o);var p=sn.element("section",{},r),d=c;d=d.substr(0,1).toUpperCase()+d.substr(1)+"s",this.conf.noIDLSectionTitle||sn.element("h2",{},p,d);for(var f=sn.element("dl",{"class":c+"s"},p),h=0;h<u.length;h++){var m=u[h],g=sn.element("dt",{id:i+m.refId},f);sn.element("code",{},g,m.unescapedId);var b=sn.element("dd",{},f,[m.description]);if("field"==c){if(sn.text(" of type ",g),m.array)for(var v=0,y=m.arrayCount;y>v;v++)sn.text("array of ",g);var x=sn.element("span",{"class":"idlFieldType"},g),w=/^sequence<(.+)>$/.exec(m.datatype);w?(sn.text("sequence<",x),sn.element("a",{},x,w[1]),sn.text(">",x)):sn.element("a",{},x,m.datatype),m.nullable&&sn.text(", nullable",g)}else"constant"==c&&(sn.text(" of type ",g),sn.element("span",{"class":"idlConstType"},g,[sn.element("a",{},null,m.datatype)]),m.nullable&&sn.text(", nullable",g))}}}return r}if("dictionary"==e.type){var t,r=sn.documentFragment(),i="widl-"+e.refId+"-",u=e.children;if(0===u.length)return r;this.noIDLSorting||u.sort(function(e,t){return e.id<t.id?-1:e.id>t.id?1:0});var p=sn.element("section",{},r);t=[sn.text("Dictionary "),sn.element("a",{"class":"idlType"},null,e.unescapedId),sn.text(" Members")],this.conf.noIDLSectionTitle||sn.element("h2",{},p,t);for(var f=sn.element("dl",{"class":"dictionary-members"},p),h=0;h<u.length;h++){var m=u[h],g=sn.element("dt",{id:i+m.refId},f);sn.element("code",{},g,m.unescapedId);var b=sn.element("dd",{},f,[m.description]);if(sn.text(" of type ",g),m.array)for(var l=0,y=m.arrayCount;y>l;l++)sn.text("array of ",g);var x=sn.element("span",{"class":"idlMemberType"},g),w=/^sequence<(.+)>$/.exec(m.datatype);w?(sn.text("sequence<",x),sn.element("a",{},x,w[1]),sn.text(">",x)):sn.element("a",{},x,m.isUnionType?"("+m.datatype.join(" or ")+")":m.datatype),m.nullable&&sn.text(", nullable",g),m.defaultValue&&(sn.text(", defaulting to ",g),sn.element("code",{},g,[sn.text(m.defaultValue)]))}return r}if("callback"==e.type){var t,r=sn.documentFragment(),i="widl-"+e.refId+"-",u=e.children;if(0===u.length)return r;var p=sn.element("section",{},r);t=[sn.text("Callback "),sn.element("a",{"class":"idlType"},null,e.unescapedId),sn.text(" Parameters")],this.conf.noIDLSectionTitle||sn.element("h2",{},p,t);for(var f=sn.element("dl",{"class":"callback-members"},p),h=0;h<u.length;h++){var m=u[h],g=sn.element("dt",{id:i+m.refId},f);sn.element("code",{},g,m.unescapedId);var b=sn.element("dd",{},f,[m.description]);if(sn.text(" of type ",g),m.array)for(var l=0,y=m.arrayCount;y>l;l++)sn.text("array of ",g);var x=sn.element("span",{"class":"idlMemberType"},g),w=/^sequence<(.+)>$/.exec(m.datatype);w?(sn.text("sequence<",x),sn.element("a",{},x,w[1]),sn.text(">",x)):sn.element("a",{},x,m.isUnionType?"("+m.datatype.join(" or ")+")":m.datatype),m.nullable&&sn.text(", nullable",g),m.defaultValue&&(sn.text(", defaulting to ",g),sn.element("code",{},g,[sn.text(m.defaultValue)]))}return r}if("enum"==e.type){var r=sn.documentFragment(),u=e.children;if(0===u.length)return r;var p=sn.element("table",{"class":"simple"},r);sn.element("tr",{},p,[sn.element("th",{colspan:2},null,[sn.text("Enumeration description")])]);for(var h=0;h<u.length;h++){var m=u[h],C=sn.element("tr",{},p),S=sn.element("td",{},C);sn.element("code",{id:"idl-def-"+e.refId+"."+m.refId},S,m.unescapedId),sn.element("td",{},C,[m.description])}return r}if("interface"==e.type){for(var r=sn.documentFragment(),i="widl-"+e.refId+"-",s=["constructor","attribute","method","constant","serializer"],a=function(e){return e.type==c},o=function(e,t){return e.unescapedId<t.unescapedId?-1:e.unescapedId>t.unescapedId?1:0},l=0;l<s.length;l++){var c=s[l],u=e.children.filter(a);if(0!==u.length){this.noIDLSorting||u.sort(o);var p=sn.element("section",{},r),d=c;if(d=d.substr(0,1).toUpperCase()+d.substr(1)+("serializer"!=c?"s":""),this.conf.noIDLSectionTitle||sn.element("h2",{},p,d),"serializer"!=c)for(var f=sn.element("dl",{"class":c+"s"},p),h=0;h<u.length;h++){var m=u[h],k="method"==c?this.makeMethodID(i,m):"constructor"==c?this.makeMethodID("widl-ctor-",m):sn.idThatDoesNotExist(i+m.refId),g=sn.element("dt",{id:k},f);sn.element("code",{},g,m.unescapedId),m.isStatic&&g.appendChild(this.doc.createTextNode(", static"));var b=sn.element("dd",{},f,[m.description]);if("method"==c||"constructor"==c){if(m.params.length){var D=sn.element("table",{"class":"parameters"},b),C=sn.element("tr",{},D);["Parameter","Type","Nullable","Optional","Description"].forEach(function(e){sn.element("th",{},C,e)});for(var v=0;v<m.params.length;v++){var N=m.params[v],C=sn.element("tr",{},D);sn.element("td",{"class":"prmName"},C,N.id);var A=sn.element("td",{"class":"prmType"},C),R=sn.element("code",{},A);R.innerHTML=E(N.datatype),N.array&&(R.innerHTML+=T(N)),N.defaultValue&&(R.innerHTML+=" = "+N.defaultValue),N.nullable?sn.element("td",{"class":"prmNullTrue"},C,$("<span role='img' aria-label='True'>✔</span>")):sn.element("td",{"class":"prmNullFalse"},C,$("<span role='img' aria-label='False'>✘</span>")),N.optional?sn.element("td",{"class":"prmOptTrue"},C,$("<span role='img' aria-label='True'>✔</span>")):sn.element("td",{"class":"prmOptFalse"},C,$("<span role='img' aria-label='False'>✘</span>"));var t=N.description?[N.description]:"";sn.element("td",{"class":"prmDesc"},C,t)}}else sn.element("div",{},b,[sn.element("em",{},null,"No parameters.")]);if(this.conf.idlOldStyleExceptions&&m.raises.length){var D=sn.element("table",{"class":"exceptions"},b),C=sn.element("tr",{},D);["Exception","Description"].forEach(function(e){sn.element("th",{},C,e)});for(var v=0;v<m.raises.length;v++){var L=m.raises[v],C=sn.element("tr",{},D);sn.element("td",{"class":"excName"},C,[sn.element("a",{},null,L.id)]);var j=sn.element("td",{"class":"excDesc"},C);if("simple"==L.type)$(j).append(L.description);else for(var I=sn.element("table",{"class":"exceptionCodes"},j),P=0;P<L.description.length;P++){var M=L.description[P],C=sn.element("tr",{},I);sn.element("td",{"class":"excCodeName"},C,[sn.element("code",{},null,M.id)]),sn.element("td",{"class":"excCodeDesc"},C,[M.description])}}}if("constructor"!==c){var H=sn.element("div",{},b);sn.element("em",{},H,"Return type: ");var R=sn.element("code",{},H);R.innerHTML=E(m.datatype),m.array&&(R.innerHTML+=T(m)),m.nullable&&sn.text(", nullable",H)}}else if("attribute"==c){if(sn.text(" of type ",g),m.array)for(var P=0,y=m.arrayCount;y>P;P++)sn.text("array of ",g);var x=sn.element("span",{"class":"idlAttrType"},g),w=/^sequence<(.+)>$/.exec(m.datatype);if(w?(sn.text("sequence<",x),sn.element("a",{},x,w[1]),sn.text(">",x)):sn.element("a",{},x,m.isUnionType?"("+m.datatype.join(" or ")+")":m.datatype),m.declaration&&sn.text(", "+m.declaration,g),m.nullable&&sn.text(", nullable",g),this.conf.idlOldStyleExceptions&&m.raises.length){var D=sn.element("table",{"class":"exceptions"},b),C=sn.element("tr",{},D);["Exception","On Get","On Set","Description"].forEach(function(e){sn.element("th",{},C,e)});for(var v=0;v<m.raises.length;v++){var L=m.raises[v],C=sn.element("tr",{},D);sn.element("td",{"class":"excName"},C,[sn.element("a",{},null,L.id)]),["onGet","onSet"].forEach(function(e){L[e]?sn.element("td",{"class":"excGetSetTrue"},C,$("<span role='img' aria-label='True'>✔</span>")):sn.element("td",{"class":"excGetSetFalse"},C,$("<span role='img' aria-label='False'>✘</span>"))});var j=sn.element("td",{"class":"excDesc"},C);if("simple"==L.type)j.appendChild(L.description);else for(var I=sn.element("table",{"class":"exceptionCodes"},j),P=0;P<L.description.length;P++){var M=L.description[P],C=sn.element("tr",{},I);sn.element("td",{"class":"excCodeName"},C,[sn.element("code",{},null,M.id)]),sn.element("td",{"class":"excCodeDesc"},C,[M.description])}}}}else"constant"==c&&(sn.text(" of type ",g),sn.element("span",{"class":"idlConstType"},g,[sn.element("a",{},null,m.datatype)]),m.nullable&&sn.text(", nullable",g))}else{var O=sn.element("div",{},p),m=u[0];if("prose"!=m.serializertype){var F="Instances of this interface are serialized as ";if("map"==m.serializertype){var _="a map ";if(m.getter)_+="with entries corresponding to the named properties";else{var q="";m.inherit&&(_+="with entries from the closest inherited interface ",q="and "),m.all?_+=q+"with entries for each of the serializable attributes":m.values&&m.values.length?_+=q+"with entries for the following attributes: "+m.values.join(", "):_="an empty map"}F+=_}else if("list"==m.serializertype){var B="a list ";m.getter?B+="with values corresponding to the indexed properties":m.values&&m.values.length?B+="with the values of the following attributes: "+m.values.join(", "):B="an empty list",F+=B}else"attribute"==m.serializertype&&(F+="the value of the attribute "+m.values[0]);F+=".",sn.element("p",{},O,F)}sn.element("p",{},O,[m.description])}}}return r}},makeMethodID:function(e,t){for(var n=e+t.refId+"-"+t.datatype+"-",r=[],i=0,s=t.params.length;s>i;i++){var a=t.params[i];r.push(a.datatype+(a.array?"Array":"")+"-"+a.id)}return n+=r.join("-"),S(n)},mergeWebIDL:function(e){"undefined"!=typeof e.merge&&0!==e.merge.length&&setTimeout(function(){for(var t=0;t<e.merge.length;t++){var n=document.querySelector("#idl-def-"+e.refId),r=document.querySelector("#idl-def-"+e.merge[t]);n.insertBefore(document.createElement("br"),n.firstChild),n.insertBefore(document.createElement("br"),n.firstChild),r.parentNode.parentNode.removeChild(r.parentNode),n.insertBefore(r,n.firstChild)}},0)},writeAsWebIDL:function(e,t){t++;var s={indent:t,obj:e,proc:this};if("module"===e.type){if("outermost"==e.id){for(var c=$("<div></div>"),d=0;d<e.children.length;d++)c.append(this.writeAsWebIDL(e.children[d],t-1));return c.children()}return $(n(s))}if("typedef"===e.type)return s.nullable=e.nullable?"?":"",s.arr=T(e),$(r(s));if("implements"===e.type)return $(i(s));if("interface"===e.type){var f=this.doc.createElement("div"),h=$(f).makeID("idl-def",e.refId,!0),m=0,g=0,b=0,x=!1;e.children.forEach(function(e){var t=0;e.isUnionType?t=e.datatype.join(" or ").length+2:e.datatype&&(t=e.datatype.length),e.isStatic&&(t+=7),e.nullable&&(t+=1),e.array&&(t+=2*e.arrayCount),"attribute"==e.type?m=t>m?t:m:"method"==e.type?g=t>g?t:g:"constant"==e.type&&(b=t>b?t:b),"attribute"==e.type&&e.declaration&&(x=!0)});var w="widl-"+e.refId+"-",C=this,S=[],E=e.children.map(function(e){if("attribute"==e.type)return C.writeAttribute(e,m,t+1,w,x);if("method"==e.type)return C.writeMethod(e,g,t+1,w);if("constant"==e.type)return C.writeConst(e,b,t+1,w);if("serializer"==e.type)return C.writeSerializer(e,t+1,w);if("constructor"==e.type)S.push(C.writeConstructor(e,t,"widl-ctor-"));else if("comment"==e.type)return C.writeComment(e,t+1)}).join("");return y({obj:e,indent:t,id:h,ctor:S.join(",\n"),partial:e.partial?"partial ":"",callback:e.callback?"callback ":"",children:E})}if("exception"===e.type){var m=0,b=0;e.children.forEach(function(e){var t=e.datatype.length;e.nullable&&(t+=1),e.array&&(t+=2*e.arrayCount),"field"===e.type?m=t>m?t:m:"constant"===e.type&&(b=t>b?t:b)});var w="widl-"+e.refId+"-",C=this,E=e.children.map(function(e){return"field"===e.type?C.writeField(e,m,t+1,w):"constant"===e.type?C.writeConst(e,b,t+1,w):void 0}).join("");return v({obj:e,indent:t,children:E})}if("dictionary"===e.type){var k=0;e.children.forEach(function(e){var t=0;e.isUnionType?t=e.datatype.join(" or ").length+2:e.datatype&&(t=e.datatype.length),e.nullable&&(t+=1),e.array&&(t+=2*e.arrayCount),k=t>k?t:k});var w="widl-"+e.refId+"-",C=this,E=e.children.map(function(e){return C.writeMember(e,k,t+1,w)}).join("");return a({obj:e,indent:t,children:E,partial:e.partial?"partial ":""})}if("callback"===e.type){var D=e.children.map(function(e){return u({obj:e,optional:e.optional?"optional ":"",arr:T(e),nullable:e.nullable?"?":"",variadic:e.variadic?"...":""})}).join(", ");return p({obj:e,indent:t,arr:T(e),nullable:e.nullable?"?":"",children:D})}if("enum"===e.type){var E=e.children.map(function(n){return o({obj:n,parentID:e.refId,indent:t+1})}).join(",\n");return l({obj:e,indent:t,children:E})}},writeField:function(e,t,n,r){var i=t-e.datatype.length;return e.nullable&&(i-=1),e.array&&(i-=2*e.arrayCount),b({obj:e,indent:n,arr:T(e),nullable:e.nullable?"?":"",pad:i,href:r+e.refId})},writeAttribute:function(e,t,n,r){var i=0;e.isUnionType?i=e.datatype.join(" or ").length+2:e.datatype&&(i=e.datatype.length);var s=t-i;return e.nullable&&(s-=1),e.array&&(s-=2*e.arrayCount),h({obj:e,indent:n,declaration:e.declaration,pad:s,arr:T(e),nullable:e.nullable?"?":"",href:r+e.refId})},writeMethod:function(e,t,n,r){var i=e.params.map(function(e){return u({obj:e,optional:e.optional?"optional ":"",arr:T(e),nullable:e.nullable?"?":"",variadic:e.variadic?"...":""})}).join(", "),s=0;s=e.isUnionType?e.datatype.join(" or ").length+2:e.datatype.length,e.isStatic&&(s+=7);var a=t-s;return e.nullable&&(a-=1),e.array&&(a-=2*e.arrayCount),d({obj:e,indent:n,arr:T(e),nullable:e.nullable?"?":"","static":e.isStatic?"static ":"",pad:a,id:this.makeMethodID(r,e),children:i})},writeConstructor:function(e,t,n){var r=e.params.map(function(e){return u({obj:e,optional:e.optional?"optional ":"",arr:T(e),nullable:e.nullable?"?":"",variadic:e.variadic?"...":""})}).join(", ");return f({obj:e,indent:t,id:this.makeMethodID(n,e),name:e.named?e.id:"Constructor",keyword:e.named?"NamedConstructor=":"",children:r})},writeConst:function(e,t,n){var r=t-e.datatype.length;return e.nullable&&r--,c({obj:e,indent:n,pad:r,nullable:e.nullable?"?":""})},writeComment:function(e,t){return g({obj:e,indent:t,comment:e.id})},writeSerializer:function(e,t){var n="";if("map"==e.serializertype){var r=[];e.getter?r=["getter"]:(e.inherit&&r.push("inherit"),e.all?r.push("attribute"):r=r.concat(e.values)),n="{"+r.join(", ")+"}"}else if("list"==e.serializertype){var i=e.getter?["getter"]:e.values;n="["+i.join(", ")+"]"}else"attribute"==e.serializertype&&(n=e.values[0]);return m({obj:e,indent:t,values:n})},writeMember:function(e,t,n,r){var i={obj:e,indent:n,curLnk:r,nullable:e.nullable?"?":"",arr:T(e)};return e.isUnionType?i.pad=t-(e.datatype.join(" or ").length+2):e.datatype&&(i.pad=t-e.datatype.length),e.nullable&&(i.pad=i.pad-1),e.array&&(i.pad=i.pad-2*e.arrayCount),s(i)}},{run:function(e,n,r,i){i.pub("start","core/webidl"),e.noIDLSorting||(e.noIDLSorting=!1),e.noIDLSectionTitle||(e.noIDLSectionTitle=!1);var s=$(".idl",n),a=function(){i.pub("end","core/webidl"),r()};if(!s.length)return a();$(n).find("head link").first().before($("<style/>").text(t));var o=[];s.each(function(){var t=new x({noIDLSorting:e.noIDLSorting,msg:i,doc:n,conf:e}),r=t.definition($(this)),s=t.makeMarkup(r.htmlID);$(this).replaceWith(s),-1!==$.inArray(r.type,"interface exception dictionary typedef callback enum".split(" "))&&o.push(r.id)}),n.normalize(),$("a:not([href])").each(function(){var e=$(this);if(!e.hasClass("externalDFN")){var t=e.text();-1!==$.inArray(t,o)&&e.attr("href","#idl-def-"+t).addClass("idlType").html("<code>"+t+"</code>")}}),a()}}}),define("core/dfn",[],function(){return{run:function(e,t,n,r){r.pub("start","core/dfn"),t.normalize(),e.definitionMap||(e.definitionMap={}),$("dfn").each(function(){var t=$(this).dfnTitle();e.definitionMap[t]&&r.pub("error","Duplicate definition of '"+t+"'"),e.definitionMap[t]=$(this).makeID("dfn",t)}),$("a:not([href])").each(function(){var t=$(this);if(!t.hasClass("externalDFN")){var n=t.dfnTitle();!e.definitionMap[n]||e.definitionMap[n]instanceof Function||t.attr("href","#"+e.definitionMap[n]).addClass("internalDFN")}}),r.pub("end","core/dfn"),n()}}}),define("core/fix-headers",[],function(){return{run:function(e,t,n,r){r.pub("start","core/fix-headers");var i=$("section:not(.introductory)",t).find("h1:first, h2:first, h3:first, h4:first, h5:first, h6:first");i.each(function(){var e=$(this).parents("section").length+1;e>6&&(e=6);var t="h"+e;this.localName.toLowerCase()!=t&&$(this).renameElement(t)}),r.pub("end","core/fix-headers"),n()}}}),define("core/structure",[],function(){var e={en:{toc:"Table of Contents"},fr:{toc:"Sommaire"}},t={},n=!1,r=0,i="ABCDEFGHIJKLMNOPQRSTUVWXYZ",s=function(e,a,o,l,c){var u=e.children(c.tocIntroductory?"section":"section:not(.introductory)");if(0===u.length)return null;for(var p=$("<ul class='toc'></ul>"),d=0;d<u.length;d++){var f=$(u[d],a),h=f.hasClass("introductory");if(f.children().length){var m=f.children()[0],g=m.localName.toLowerCase();if("h2"===g||"h3"===g||"h4"===g||"h5"===g||"h6"===g){var b=m.textContent,v=$("<div></div>").append($(m).contents().clone());v.find("a").renameElement("span").attr("class","formerLink").removeAttr("href"),v.find("dfn").renameElement("span").removeAttr("id");var y=f.makeID(null,b);h||o[o.length-1]++;var x=o.slice();f.hasClass("appendix")&&1===o.length&&!n&&(r=o[0],n=!0),n&&(x[0]=i.charAt(o[0]-r));var w=x.join("."),C=1==x.length;C&&(w+=".",$(m).before(document.createComment("OddPage")));var S=$("<span class='secno'></span>").text(w+" ");h||$(m).prepend(S),t[y]=(h?"":"<span class='secno'>"+w+"</span> ")+"<span class='sec-title'>"+b+"</span>";var T=$("<a/>").attr({href:"#"+y,"class":"tocxref"}).append(h?"":S.clone()).append(v.contents()),E=$("<li class='tocline'/>").append(T);if(p.append(E),!(c.maxTocLevel&&l>=c.maxTocLevel)){o.push(0);var k=s(f,a,o,l+1,c);k&&E.append(k),o.pop()}}}}return p};return{run:function(n,r,i,a){a.pub("start","core/structure"),n.tocIntroductory||(n.tocIntroductory=!1),n.maxTocLevel||(n.maxTocLevel=0);var o=$("section:not(.introductory)",r).find("h1:first, h2:first, h3:first, h4:first, h5:first, h6:first"),l=function(){a.pub("end","core/structure"),i()};if(!o.length)return l();if(o.each(function(){var e=$(this).parents("section").length+1;e>6&&(e=6);var t="h"+e;this.localName.toLowerCase()!=t&&$(this).renameElement(t)}),!n.noTOC){var c=s($("body",r),r,[0],1,n);if(!c)return;var u=$("<section id='toc'/>").append("<h2 class='introductory'>"+e[n.lang||"en"].toc+"</h2>").append(c),p=$("#toc",r),d=!1;p.length&&(d=!0),p.length||(p=$("#sotd",r)),p.length||(p=$("#abstract",r)),d?p.replaceWith(u):p.after(u)}$("a[href^='#']:not(.tocxref)",r).each(function(){var e=$(this);if(""===e.html()){var n=e.attr("href").slice(1);t[n]&&(e.addClass("sec-ref"),e.html((e.hasClass("sectionRef")?"section ":"")+t[n]))}}),l()}}}),define("w3c/informative",[],function(){return{run:function(e,t,n,r){r.pub("start","core/informative"),$("section.informative").find("> h2:first, > h3:first, > h4:first, > h5:first, > h6:first").after("<p><em>This section is non-normative.</em></p>"),r.pub("end","core/informative"),n()}}}),define("core/id-headers",[],function(){return{run:function(e,t,n,r){r.pub("start","core/id-headers"),$("h2, h3, h4, h5, h6").each(function(){var e=$(this);if(!e.attr("id")){if(e.parent("section").attr("id")&&0===e.prev().length)return;e.makeID()}}),r.pub("end","core/id-headers"),n()}}}),define("w3c/aria",["core/utils"],function(){return{run:function(e,t,n,r){r.pub("start","w3c/aria");var i=$("section",t).find("h1:first, h2:first, h3:first, h4:first, h5:first, h6:first");if(i.each(function(e,t){var n=$(t),r=n.parent("section[id]").attr("id"),i=n.parents("section").length;n.attr("aria-level",i),n.attr("role","heading"),n.attr("id")||n.attr("id",n.prop("tagName").toLowerCase()+"_"+r)}),$("body",t).attr("role","document"),$("body",t).attr("id","respecDocument"),$("div.head",t).attr("role","contentinfo"),$("div.head",t).attr("id","respecHeader"),!e.noTOC){var s=$("section#toc",t).find("ul:first"); +s.attr("role","directory"),s.attr("id")||s.attr("id","respecContents")}var a=0,o=0;$(".note-title, .issue-title",t).each(function(e,t){var n=$(t),r=n.hasClass("issue-title"),i=n.parents("section").length+1;n.attr("aria-level",i),n.attr("role","heading"),r?(o++,n.attr("id","h_issue_"+o)):(a++,n.attr("id","h_note_"+a))}),r.pub("end","w3c/aria"),n()}}}),define("core/remove-respec",[],function(){return{run:function(e,t,n,r){r.pub("start","core/remove-respec"),$(".remove, script[data-requiremodule]",t).remove(),r.pub("end","core/remove-respec"),n()}}}),define("core/location-hash",[],function(){return{run:function(e,t,n,r){r.pub("start","core/location-hash");var i=window.location.hash,s=void 0!==window.pageYOffset?window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop;i&&!s&&(window.location.hash="",window.location.hash=i),r.pub("end","core/location-hash"),n()}}}),define("profile-w3c-common",["domReady","core/base-runner","core/override-configuration","core/default-root-attr","core/markdown","core/style","w3c/style","w3c/headers","w3c/abstract","w3c/conformance","core/data-transform","core/data-include","core/inlines","core/examples","core/issues-notes","core/requirements","core/highlight","core/best-practices","core/figures","w3c/legacy","core/webidl-oldschool","core/dfn","core/fix-headers","core/structure","w3c/informative","core/id-headers","w3c/aria","core/remove-respec","core/location-hash"],function(e,t){var n=Array.prototype.slice.call(arguments),r=!1;e(function(){r=!0,t.runAll(n)})}),"undefined"==typeof berjon&&(window.berjon={}),berjon.simpleNode=function(e,t){e||(e={}),t||(t=document),this.ns=e,this.doc=t},berjon.calls={},berjon.simpleNode.prototype={element:function(e,t,n,r){t||(t={});var i=this._nameToQName(e,!1),s=this.doc.createElementNS(i.ns,e);for(var a in t)this._setAttr(s,a,t[a]);if(n&&n.appendChild(s),r)if(r instanceof jQuery)$(s).append(r);else if(r instanceof Array)for(var o=0;o<r.length;o++)$(s).append(r[o]);else this.text(r,s);return s},text:function(e,t){var n=this.doc.createTextNode(e);return t&&t.appendChild(n),n},comment:function(e,t){var n=this.doc.createComment(e);return t&&t.appendChild(n),n},pi:function(e,t,n){var r=this.doc.createProcessingInstruction(e,t);return n&&n.appendChild(r),r},documentFragment:function(e,t){var n=this.doc.createDocumentFragment();if(t)if(t instanceof Array)for(var r=0;r<t.length;r++)n.appendChild(t[r]);else this.text(t,n);return e&&e.appendChild(n),n},findNodes:function(e,t){t||(t=this.doc);for(var n=this.ns,r=this.doc.evaluate(e,t,function(e){return n[e]||null},XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),i=[],s=0;s<r.snapshotLength;s++)i.push(r.snapshotItem(s));return i},copyChildren:function(e,t){for(;e.childNodes.length;)t.appendChild(e.firstChild)},copyAttr:function(e,t){for(var n=0;n<e.attributes.length;n++){var r=e.attributes[n];t.setAttributeNS(r.namespaceURI,r.name,r.value)}},renameEl:function(e,t){var n=e.nextSibling,r=e.parentNode;r&&r.removeChild(e);var i=this.element(t);return this.copyAttr(e,i),this.copyChildren(e,i),r&&r.insertBefore(i,n),i},makeID:function(e,t,n){if(e.hasAttribute("id"))return e.getAttribute("id");var r="";return n||(n=e.hasAttribute("title")?e.getAttribute("title"):e.textContent),n=n.replace(/^\s+/,""),n=n.replace(/\s+$/,""),r+=n,r=r.toLowerCase(),0===r.length&&(r="generatedID"),r=this.sanitiseID(r),t&&(r=t+"-"+r),r=this.idThatDoesNotExist(r),e.setAttribute("id",r),r},sanitiseID:function(e){return e=e.split(/[^\-.0-9a-zA-Z_]/).join("-"),e=e.replace(/^-+/g,""),e=e.replace(/-+$/,""),e.length>0&&/^[^a-z]/.test(e)&&(e="x"+e),0===e.length&&(e="generatedID"),e},idCache:{},idThatDoesNotExist:function(e){var t=1;if(this.doc.getElementById(e)||this.idCache[e]){for(;this.doc.getElementById(e+"-"+t)||this.idCache[e+"-"+t];)t++;e=e+"-"+t}return e},hasClass:function(e,t){return this.listClasses(e).indexOf(t)>=0},addClass:function(e,t){var n=this.listClasses(e);n.indexOf(t)>=0||(n.push(t),this.setClassList(e,n))},removeClass:function(e,t){var n=this.listClasses(e),r=n.indexOf(t);0>r||(n.splice(r,1),this.setClassList(e,n))},listClasses:function(e){return e.hasAttribute("class")?e.getAttribute("class").split(/\s+/):[]},setClassList:function(e,t){e.setAttribute("class",t.join(" "))},_nameToQName:function(e,t){var n,r,i,s=/^(.+):(.+)$/.exec(e);if(s){if(n=s[1],i=s[2],!this.ns[n])throw"No namespace declared for prefix '"+n+"'";r=this.ns[n]}else r=t?null:this.ns[""],i=e;return{ns:r,ln:i}},_setAttr:function(e,t,n){var r=this._nameToQName(t,!0);e.setAttributeNS(r.ns,r.ln,n)}},define("simpleNode",function(){}),shortcut={all_shortcuts:{},add:function(e,t,n){var r={type:"keydown",propagate:!1,disable_in_input:!1,target:document,keycode:!1};if(n)for(var i in r)"undefined"==typeof n[i]&&(n[i]=r[i]);else n=r;var s=n.target;"string"==typeof n.target&&(s=document.getElementById(n.target)),e=e.toLowerCase();var a=function(r){if(r=r||window.event,n.disable_in_input){var i;if(r.target?i=r.target:r.srcElement&&(i=r.srcElement),3==i.nodeType&&(i=i.parentNode),"INPUT"==i.tagName||"TEXTAREA"==i.tagName)return}r.keyCode?code=r.keyCode:r.which&&(code=r.which);var s=String.fromCharCode(code).toLowerCase();188==code&&(s=","),190==code&&(s=".");var a=e.split("+"),o=0,l={"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":":","'":'"',",":"<",".":">","/":"?","\\":"|"},c={esc:27,escape:27,tab:9,space:32,"return":13,enter:13,backspace:8,scrolllock:145,scroll_lock:145,scroll:145,capslock:20,caps_lock:20,caps:20,numlock:144,num_lock:144,num:144,pause:19,"break":19,insert:45,home:36,"delete":46,end:35,pageup:33,page_up:33,pu:33,pagedown:34,page_down:34,pd:34,left:37,up:38,right:39,down:40,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},u={shift:{wanted:!1,pressed:!1},ctrl:{wanted:!1,pressed:!1},alt:{wanted:!1,pressed:!1},meta:{wanted:!1,pressed:!1}};r.ctrlKey&&(u.ctrl.pressed=!0),r.shiftKey&&(u.shift.pressed=!0),r.altKey&&(u.alt.pressed=!0),r.metaKey&&(u.meta.pressed=!0);for(var p=0;k=a[p],p<a.length;p++)"ctrl"==k||"control"==k?(o++,u.ctrl.wanted=!0):"shift"==k?(o++,u.shift.wanted=!0):"alt"==k?(o++,u.alt.wanted=!0):"meta"==k?(o++,u.meta.wanted=!0):k.length>1?c[k]==code&&o++:n.keycode?n.keycode==code&&o++:s==k?o++:l[s]&&r.shiftKey&&(s=l[s],s==k&&o++);return o!=a.length||u.ctrl.pressed!=u.ctrl.wanted||u.shift.pressed!=u.shift.wanted||u.alt.pressed!=u.alt.wanted||u.meta.pressed!=u.meta.wanted||(t(r),n.propagate)?void 0:(r.cancelBubble=!0,r.returnValue=!1,r.stopPropagation&&(r.stopPropagation(),r.preventDefault()),!1)};this.all_shortcuts[e]={callback:a,target:s,event:n.type},s.addEventListener?s.addEventListener(n.type,a,!1):s.attachEvent?s.attachEvent("on"+n.type,a):s["on"+n.type]=a},remove:function(e){e=e.toLowerCase();var t=this.all_shortcuts[e];if(delete this.all_shortcuts[e],t){var n=t.event,r=t.target,i=t.callback;r.detachEvent?r.detachEvent("on"+n,i):r.removeEventListener?r.removeEventListener(n,i,!1):r["on"+n]=!1}}},define("shortcut",function(){}); +require(['profile-w3c-common']); diff --git a/specs/animation-elements/respec/sh_html.min.js b/specs/animation-elements/respec/sh_html.min.js new file mode 100644 --- /dev/null +++ b/specs/animation-elements/respec/sh_html.min.js @@ -0,0 +1,1 @@ +if(!this.sh_languages){this.sh_languages={}}sh_languages.html=[[[/<\?xml/g,"sh_preproc",1,1],[/<!DOCTYPE/g,"sh_preproc",3,1],[/<!--/g,"sh_comment",4],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,"sh_keyword",5,1],[/&(?:[A-Za-z0-9]+);/g,"sh_preproc",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,"sh_keyword",5,1]],[[/\?>/g,"sh_preproc",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",2]],[[/\\(?:\\|")/g,null,-1],[/"/g,"sh_string",-2]],[[/>/g,"sh_preproc",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",2]],[[/-->/g,"sh_comment",-2],[/<!--/g,"sh_comment",4]],[[/(?:\/)?>/g,"sh_keyword",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",2]]]; \ No newline at end of file diff --git a/specs/animation-elements/respec/sh_javascript.min.js b/specs/animation-elements/respec/sh_javascript.min.js new file mode 100644 --- /dev/null +++ b/specs/animation-elements/respec/sh_javascript.min.js @@ -0,0 +1,1 @@ +if(!this.sh_languages){this.sh_languages={}}sh_languages.javascript=[[[/\/\/\//g,"sh_comment",1],[/\/\//g,"sh_comment",7],[/\/\*\*/g,"sh_comment",8],[/\/\*/g,"sh_comment",9],[/\b(?:abstract|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|final|finally|for|function|goto|if|implements|in|instanceof|interface|native|new|null|private|protected|prototype|public|return|static|super|switch|synchronized|throw|throws|this|transient|true|try|typeof|var|volatile|while|with)\b/g,"sh_keyword",-1],[/(\+\+|--|\)|\])(\s*)(\/=?(?![*\/]))/g,["sh_symbol","sh_normal","sh_symbol"],-1],[/(0x[A-Fa-f0-9]+|(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?)(\s*)(\/(?![*\/]))/g,["sh_number","sh_normal","sh_symbol"],-1],[/([A-Za-z$_][A-Za-z0-9$_]*\s*)(\/=?(?![*\/]))/g,["sh_normal","sh_symbol"],-1],[/\/(?:\\.|[^*\\\/])(?:\\.|[^\\\/])*\/[gim]*/g,"sh_regexp",-1],[/\b[+-]?(?:(?:0x[A-Fa-f0-9]+)|(?:(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?))u?(?:(?:int(?:8|16|32|64))|L)?\b/g,"sh_number",-1],[/"/g,"sh_string",10],[/'/g,"sh_string",11],[/~|!|%|\^|\*|\(|\)|-|\+|=|\[|\]|\\|:|;|,|\.|\/|\?|&|<|>|\|/g,"sh_symbol",-1],[/\{|\}/g,"sh_cbracket",-1],[/\b(?:Math|Infinity|NaN|undefined|arguments)\b/g,"sh_predef_var",-1],[/\b(?:Array|Boolean|Date|Error|EvalError|Function|Number|Object|RangeError|ReferenceError|RegExp|String|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt)\b/g,"sh_predef_func",-1],[/(?:[A-Za-z]|_)[A-Za-z0-9_]*(?=[ \t]*\()/g,"sh_function",-1]],[[/$/g,null,-2],[/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~#=,;:]+(?:>?)/g,"sh_url",-1],[/<\?xml/g,"sh_preproc",2,1],[/<!DOCTYPE/g,"sh_preproc",4,1],[/<!--/g,"sh_comment",5],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,"sh_keyword",6,1],[/&(?:[A-Za-z0-9]+);/g,"sh_preproc",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,"sh_keyword",6,1],[/@[A-Za-z]+/g,"sh_type",-1],[/(?:TODO|FIXME|BUG)(?:[:]?)/g,"sh_todo",-1]],[[/\?>/g,"sh_preproc",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",3]],[[/\\(?:\\|")/g,null,-1],[/"/g,"sh_string",-2]],[[/>/g,"sh_preproc",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",3]],[[/-->/g,"sh_comment",-2],[/<!--/g,"sh_comment",5]],[[/(?:\/)?>/g,"sh_keyword",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",3]],[[/$/g,null,-2]],[[/\*\//g,"sh_comment",-2],[/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~#=,;:]+(?:>?)/g,"sh_url",-1],[/<\?xml/g,"sh_preproc",2,1],[/<!DOCTYPE/g,"sh_preproc",4,1],[/<!--/g,"sh_comment",5],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,"sh_keyword",6,1],[/&(?:[A-Za-z0-9]+);/g,"sh_preproc",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,"sh_keyword",6,1],[/@[A-Za-z]+/g,"sh_type",-1],[/(?:TODO|FIXME|BUG)(?:[:]?)/g,"sh_todo",-1]],[[/\*\//g,"sh_comment",-2],[/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~#=,;:]+(?:>?)/g,"sh_url",-1],[/(?:TODO|FIXME|BUG)(?:[:]?)/g,"sh_todo",-1]],[[/"/g,"sh_string",-2],[/\\./g,"sh_specialchar",-1]],[[/'/g,"sh_string",-2],[/\\./g,"sh_specialchar",-1]]]; \ No newline at end of file
Received on Saturday, 1 February 2014 01:35:54 UTC