author | Adrian Hope-Bailie <adrian@hopebailie.com> |
Wed, 06 May 2015 21:40:48 +0200 | |
changeset 854 | 3f877e3e0cd1 |
parent 853 | a15a9a0fd640 (current diff) |
parent 707 | 48d279b6bdcf (diff) |
child 855 | cb38418ba07c |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FCGS/use-cases/2014-11-29/index.html Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,1626 @@ +<!DOCTYPE html> +<html lang="en" dir="ltr" typeof="bibo:Document " about="" property="dcterms:language" content="en"> +<head> + <title>Web Payments Community Group Use Cases</title> + <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> + <!-- + === NOTA BENE === + For the three scripts below, if your spec resides on dev.w3 you can check them + out in the same tree and use relative links so that they'll work offline, + --> + + + + <style>/***************************************************************** + * ReSpec 3 CSS + * Robin Berjon - http://berjon.com/ + *****************************************************************/ + +/* --- INLINES --- */ +em.rfc2119 { + text-transform: lowercase; + font-variant: small-caps; + font-style: normal; + color: #900; +} + +h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym, +h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr { + border: none; +} + +dfn { + font-weight: bold; +} + +a.internalDFN { + color: inherit; + border-bottom: 1px solid #99c; + text-decoration: none; +} + +a.externalDFN { + color: inherit; + border-bottom: 1px dotted #ccc; + text-decoration: none; +} + +a.bibref { + text-decoration: none; +} + +cite .bibref { + font-style: normal; +} + +code { + color: #ff4500; +} + +/* --- TOC --- */ +.toc a, .tof a { + text-decoration: none; +} + +a .secno, a .figno { + color: #000; +} + +ul.tof, ol.tof { + list-style: none outside none; +} + +.caption { + margin-top: 0.5em; + font-style: italic; +} + +/* --- TABLE --- */ +table.simple { + border-spacing: 0; + border-collapse: collapse; + border-bottom: 3px solid #005a9c; +} + +.simple th { + background: #005a9c; + color: #fff; + padding: 3px 5px; + text-align: left; +} + +.simple th[scope="row"] { + background: inherit; + color: inherit; + border-top: 1px solid #ddd; +} + +.simple td { + padding: 3px 10px; + border-top: 1px solid #ddd; +} + +.simple tr:nth-child(even) { + background: #f0f6ff; +} + +/* --- DL --- */ +.section dd > p:first-child { + margin-top: 0; +} + +.section dd > p:last-child { + margin-bottom: 0; +} + +.section dd { + margin-bottom: 1em; +} + +.section dl.attrs dd, .section dl.eldef dd { + margin-bottom: 0; +} +</style><link rel="stylesheet" href="https://www.w3.org/community/src/css/spec/cg-final.css"><!--[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--></head> +<body class="h-entry" role="document" id="respecDocument"><div class="head" role="contentinfo" id="respecHeader"> + <p> + <a href="http://www.w3.org/"><img width="72" height="48" src="https://www.w3.org/Icons/w3c_home" alt="W3C"></a> + </p> + <h1 class="title p-name" id="title" property="dcterms:title">Web Payments Community Group Use Cases</h1> + + <h2 property="dcterms:issued" datatype="xsd:dateTime" content="2014-11-30T01:36:10.000Z" id="final-community-group-specification-29-november-2014">Final Community Group Specification <time class="dt-published" datetime="2014-11-29">29 November 2014</time></h2> + <dl> + + + + + + + + <dt>Editor:</dt> + <dd class="p-author h-card vcard" rel="bibo:editor" inlist=""><span typeof="foaf:Person"><a class="u-url url p-name fn" rel="foaf:homepage" property="foaf:name" content="Manu Sporny" href="http://digitalbazaar.com/">Manu Sporny</a>, <a rel="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://digitalbazaar.com/">Digital Bazaar, Inc.</a></span> +</dd> + + + </dl> + + <p class="copyright"> + <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © + 2014 + the Contributors to the Web Payments Community Group Use Cases Specification, published by the + <a href="http://www.w3.org/community/webpayments/">Web Payments Community Group</a> under the + + <a href="https://www.w3.org/community/about/agreements/fsa/">W3C Community Final Specification Agreement (FSA)</a>. + A human-readable <a href="http://www.w3.org/community/about/agreements/fsa-deed/">summary</a> is available. + + </p> + <hr> +</div> + <section id="abstract" class="introductory" property="dcterms:abstract" datatype="" typeof="bibo:Chapter" resource="#ref" rel="bibo:Chapter"><h2 aria-level="1" role="heading" id="h2_abstract">Abstract</h2> + <p> +The purpose of the Web Payments Community Group at the +World Wide Web Consortium (W3C) is to create systems that enable people +and businesses on the Web to send each +other money as easily as they exchange instant messages and email today. The +systems strive to be easy to use, currency agnostic, secure, decentralized and +implementable by anyone in a patent and royalty-free manner. The group is +focusing on transforming the way we reward each other on the Web as well as +how we organize financial resources to enhance our personal lives and +pursue endeavors that improve upon the human condition. The following use +cases outline the basic functionality that the group is attempting to +achieve. + </p> + </section><section id="sotd" class="introductory" typeof="bibo:Chapter" resource="#ref" rel="bibo:Chapter"><h2 aria-level="1" role="heading" id="h2_sotd">Status of This Document</h2> + <p> + This specification was published by the <a href="http://www.w3.org/community/webpayments/">Web Payments Community Group</a>. + It is not a W3C Standard nor is it on the W3C Standards Track. + + Please note that under the + <a href="https://www.w3.org/community/about/agreements/final/">W3C Community Final Specification Agreement (FSA)</a> + other conditions apply. + + Learn more about + <a href="http://www.w3.org/community/">W3C Community and Business Groups</a>. + </p> + + <p> +This document was created in the Web Payments Community Group and, in November +2014, was handed off to the +<a href="http://www.w3.org/Payments/IG/">Web Payments Interest Group</a> +for further refinement, development, and integration into the official set of +Web Payments IG use cases. + </p> + +</section><section id="toc"><h2 class="introductory" aria-level="1" role="heading" id="h2_toc">Table of Contents</h2><ul class="toc" role="directory" id="respecContents"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction</a></li><li class="tocline"><a href="#glossary" class="tocxref"><span class="secno">2. </span>Glossary</a></li><li class="tocline"><a href="#roles" class="tocxref"><span class="secno">3. </span>Roles</a></li><li class="tocline"><a href="#credentials" class="tocxref"><span class="secno">4. </span>Credentials</a></li><li class="tocline"><a href="#design-criteria" class="tocxref"><span class="secno">5. </span>Design Criteria</a><ul class="toc"><li class="tocline"><a href="#web-intents-protocol-handlers" class="tocxref"><span class="secno">5.1 </span>Web Intents / Protocol Handlers</a></li><li class="tocline"><a href="#data-portability" class="tocxref"><span class="secno">5.2 </span>Data Portability</a></li><li class="tocline"><a href="#legacy-support" class="tocxref"><span class="secno">5.3 </span>Legacy Support</a></li><li class="tocline"><a href="#authorization-configurability" class="tocxref"><span class="secno">5.4 </span>Authorization Configurability</a></li><li class="tocline"><a href="#smart-contracts" class="tocxref"><span class="secno">5.5 </span>Smart Contracts</a></li><li class="tocline"><a href="#physical-receipts" class="tocxref"><span class="secno">5.6 </span>Physical Receipts</a></li></ul></li><li class="tocline"><a href="#use-cases" class="tocxref"><span class="secno">6. </span>Use Cases</a><ul class="toc"><li class="tocline"><a href="#purchase-request" class="tocxref"><span class="secno">6.1 </span>Purchase Request</a></li><li class="tocline"><a href="#payment-links" class="tocxref"><span class="secno">6.2 </span>Payment Links</a></li><li class="tocline"><a href="#choice-of-payment-processor" class="tocxref"><span class="secno">6.3 </span>Choice of Payment Processor</a></li><li class="tocline"><a href="#parametric-offers" class="tocxref"><span class="secno">6.4 </span>Parametric Offers</a></li><li class="tocline"><a href="#coupons-and-loyalty-cards" class="tocxref"><span class="secno">6.5 </span>Coupons and Loyalty Cards</a></li><li class="tocline"><a href="#pseudo-anonymity" class="tocxref"><span class="secno">6.6 </span>Pseudo-anonymity</a></li><li class="tocline"><a href="#transaction-fee-optimization" class="tocxref"><span class="secno">6.7 </span>Transaction Fee Optimization</a></li><li class="tocline"><a href="#choosing-the-attributes-of-price" class="tocxref"><span class="secno">6.8 </span>Choosing the Attributes of Price</a></li><li class="tocline"><a href="#app-store-purchases" class="tocxref"><span class="secno">6.9 </span>App-Store Purchases</a></li><li class="tocline"><a href="#in-app-purchases" class="tocxref"><span class="secno">6.10 </span>In-App Purchases</a></li><li class="tocline"><a href="#payment-tokenization" class="tocxref"><span class="secno">6.11 </span>Payment Tokenization</a></li><li class="tocline"><a href="#registration-less-purchases" class="tocxref"><span class="secno">6.12 </span>Registration-less Purchases</a></li><li class="tocline"><a href="#push-based-payments" class="tocxref"><span class="secno">6.13 </span>Push-based Payments</a></li><li class="tocline"><a href="#subscriptions" class="tocxref"><span class="secno">6.14 </span>Subscriptions</a></li><li class="tocline"><a href="#non-interactive-purchases" class="tocxref"><span class="secno">6.15 </span>Non-interactive Purchases</a></li><li class="tocline"><a href="#digital-wallet-portability" class="tocxref"><span class="secno">6.16 </span>Digital Wallet Portability</a></li><li class="tocline"><a href="#real-time-regulatory-reporting" class="tocxref"><span class="secno">6.17 </span>Real-time Regulatory Reporting</a></li><li class="tocline"><a href="#digital-receipts" class="tocxref"><span class="secno">6.18 </span>Digital Receipts</a></li></ul></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">7. </span>Acknowledgements</a></li></ul></section> + + + + <section id="introduction"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_introduction"><span class="secno">1. </span>Introduction</h2> + <p> +The Web continues to transform the way humankind communicates and builds +our world. At the heart of most of these endeavors is the exchange of +value. Gifts, attention, and payments each play a role in the ecosystem +that we call the economy. Until now, there has been no open and +universal way of sending and receiving payments on the Web through your +browser. This is why people are still compelled to reach for their +credit card or log into a payment site when purchasing something over +the Web. + </p> + <p> +There are a number non-interoperable payment solutions today. This +document outlines use cases that are supported by existing payment +solutions today, and also outlines innovative use cases that could be +supported in the future by a universal payment mechanism to enable next +generation mobile payments, alternative currencies, crowd-sourced +investing, next-generation banking, and electronic commerce. + </p> + <p> +This specification outlines use cases that are enabled by universal +payment for the Web. The goal of addressing the use cases as a whole is +to create a safe, decentralized system and a set of open, patent and +royalty-free specifications that allow people on the Web to send each +other money as easily as they exchange instant messages and e-mail +today. Addressing these scenarios will transform the way we reward each +other on the Web as well as how we organize financial resources to +enhance our personal lives and pursue endeavors that improve upon the +human condition. + </p> + </section> + + <section id="glossary"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_glossary"><span class="secno">2. </span>Glossary</h2> + + <p> +There is certain terminology used throughout this document that has a very +specific meaning. In order to state explicitly what that meaning is, the +following definitions are provided: + </p> + + <dl> + <dt><dfn title="entity" id="dfn-entity">entity</dfn></dt> + <dd> +a thing with distinct and independent existence such as a person, organization, +or instance of a software program. + </dd> + <dt><dfn title="credential" id="dfn-credential">credential</dfn></dt> + <dd> +a qualification, achievement, quality, or piece of information about an +<a class="tref internalDFN" title="entity" href="#dfn-entity">entity’s</a> background such as a name, government ID, +<a class="tref internalDFN" title="payment_processor" href="#dfn-payment_processor">payment processor</a>, home address, or university degree. + </dd> + <dt><dfn title="transaction" id="dfn-transaction">transaction</dfn></dt> + <dd> +a transfer of value from one <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> to another. + </dd> + <dt><dfn title="digital_receipt" id="dfn-digital_receipt">digital receipt</dfn></dt> + <dd> +a proof of purchase that verifies that a particular <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> was +involved in a <a class="tref internalDFN" title="transaction" href="#dfn-transaction">transaction</a>. + </dd> + </dl> + </section> + + <section id="roles"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_roles"><span class="secno">3. </span>Roles</h2> + + <p> +Each interaction in a Web Payments scenario involves a number of +<a class="tref internalDFN" title="entity" href="#dfn-entity">entities</a>. In order to make it clear who the +actors are, the following roles are defined: + </p> + + <dl> + <dt><dfn title="payer" id="dfn-payer">payer</dfn></dt> + <dd> +the <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> sending value in a <a class="tref internalDFN" title="transaction" href="#dfn-transaction">transaction</a>. + </dd> + <dt><dfn title="payee" id="dfn-payee">payee</dfn></dt> + <dd> +the <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> receiving value in a <a class="tref internalDFN" title="transaction" href="#dfn-transaction">transaction</a>. + </dd> + <dt><dfn title="buyer" id="dfn-buyer">buyer</dfn></dt> + <dd> +an <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> purchasing a product or service. + </dd> + <dt><dfn title="merchant" id="dfn-merchant">merchant</dfn></dt> + <dd> +an <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> that is offering a product or service for sale. + </dd> + <dt><dfn title="payment_processor" id="dfn-payment_processor">payment processor</dfn></dt> + <dd> +an <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> that is responsible for transferring value between +<a class="tref internalDFN" title="entity" href="#dfn-entity">entities</a> and +generating verifiable <a class="tref internalDFN" title="digital_receipt" href="#dfn-digital_receipt">digital receipts</a>. + </dd> + </dl> + </section> + + <section id="credentials"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_credentials"><span class="secno">4. </span>Credentials</h2> + + <p> +In order to interact, an <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> may require one or more pieces +of information from another entity. Each of these pieces of information, which +may be digitally signed by a 3rd party, are called a <a class="tref internalDFN" title="credential" href="#dfn-credential">credential</a>. +The following credentials are commonly used throughout this document: + </p> + + <dl> + <dt><dfn title="identity_credential" id="dfn-identity_credential">identity credential</dfn></dt> + <dd> +An identity <a class="tref internalDFN" title="credential" href="#dfn-credential">credential</a> contains a pseudo-anonymous URL that can +be used to uniquely identify an <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a>. The URI typically doesn't +contain any personally identifiable information. + </dd> + + <dt><dfn title="email_credential" id="dfn-email_credential">email credential</dfn></dt> + <dd> +An email <a class="tref internalDFN" title="credential" href="#dfn-credential">credential</a> contains a verified email address and proves +that the <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> associated with the credential has verified their +email address with a 3rd party. + </dd> + <dt><dfn title="payment_processor_credential" id="dfn-payment_processor_credential">payment processor credential</dfn></dt> + <dd> +A <a class="tref internalDFN" title="payment_processor" href="#dfn-payment_processor">payment processor</a> <a class="tref internalDFN" title="credential" href="#dfn-credential">credential</a> contains a verified +payment processor URL that was assigned to the <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> associated +with the credential by their payment processor. + </dd> + <dt><dfn title="shipping_address_credential" id="dfn-shipping_address_credential">shipping address credential</dfn></dt> + <dd> +A shipping address <a class="tref internalDFN" title="credential" href="#dfn-credential">credential</a> contains a verified address where +shipping deliveries may be made that is also associated with the +<a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a> associated with the credential. Typically, organizations +that are capable of associating a shipping address with an <a class="tref internalDFN" title="entity" href="#dfn-entity">entity</a>, +such as the United States Postal Service, provide these credentials. + </dd> + </dl> + </section> + + <section id="design-criteria"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_design-criteria"><span class="secno">5. </span>Design Criteria</h2> + + <p> +When exploring systems design, there are concepts that clearly fit into use +cases and concepts apply to all use cases. We are calling the latter class of +concepts <em>design criteria</em>, which are goals that should be kept in mind +while designing the overall web payments system. + </p> + + <section id="web-intents-protocol-handlers"> + <h3 aria-level="2" role="heading" id="h3_web-intents-protocol-handlers"><span class="secno">5.1 </span>Web Intents / Protocol Handlers</h3> + + <p> +Consider using a Web Intents or Protocol Handler-like mechanism +to provide an abstraction layer that could be used to solve both payment +initiation and other problems on the Web. + </p> + + <section> + <h4 id="examples" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Trisha signs up with a new payment processor service, and during the +registration, the service asks if it may be used to process the +"buy:" intent/protocol. + </li> + <li> +Ravi finishes placing all the items to buy into his shopping cart, when +he clicks the "Pay" button, the "buy:" intent/protocol handler is initiated, +resulting in a UI flow that requests that he picks which of his payment +processors he'd like to use for the purchase. + </li> + </ul> + </section> + + <section> + <h4 id="details" aria-level="3" role="heading">Details</h4> + <p> +Web Intents or Protocol Handlers could be used as a simple way of solving +the payment selection NASCAR problem. Instead of showing a large array of +payment providers that are supported by the merchant, a dialog can be shown +instead that only shows the payment mechanisms that are supported by both +the <a class="tref internalDFN" title="payer" href="#dfn-payer">payer</a> and the <a class="tref internalDFN" title="payee" href="#dfn-payee">payee</a>. A payment provider may +register as one potential handler for a particular intent/protocol scheme, +and when the scheme is invoked, the <a class="tref internalDFN" title="payer" href="#dfn-payer">payer</a> is asked which +handler they'd like to use to handle the request. + </p> + </section> + </section> + + <section id="data-portability"> + <h3 aria-level="2" role="heading" id="h3_data-portability"><span class="secno">5.2 </span>Data Portability</h3> + + <p> +Require data portability for financial data and credentials that is required +for core transaction functionality. + </p> + + <section> + <h4 id="examples-1" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Ginger would like to move her banking provider from MehBank to GoodBank. +She goes to GoodBank and initiates a "Transfer My Account" process. GoodBank +connects to MehBank, with the authorization of Ginger, and pulls her entire +account history, digital receipt data, and balance to MehBank. + </li> + </ul> + </section> + + <section> + <h4 id="details-1" aria-level="3" role="heading">Details</h4> + <p> +It is often difficult to easily switch financial providers. This will become +more difficult if the use of digital receipts becomes pervasive. If one needs +a digital receipt to prove that a purchase has been made, then the curator +of those digital receipts, like a bank, could use them as a customer +lock-in mechanism. Therefore, it is important that any information that is +expected to be used in transactions has a provable data portability +story. + </p> + </section> + </section> + + <section id="legacy-support"> + <h3 aria-level="2" role="heading" id="h3_legacy-support"><span class="secno">5.3 </span>Legacy Support</h3> + + <p> +Ensure the Web payments solution can provide an abstraction layer that +integrates with existing payment methods (eg: VISA, Mastercard, ACH, PayPal, +debit card, Premium SMS, etc.) + </p> + + <section> + <h4 id="examples-2" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Harold buys a movie ticket to his local movie theatre via the Web. He is +given a choice of paying with a credit card, PayPal, or Bitcoin. The +digital receipt delivered to the merchant will be in one machine-readable +format to ensure that the merchant can process each type of digital receipt +in a generic fashion. + </li> + <li> +Reece gets a weekly share of vegetables through a community-supported +agriculture initiative. He may choose to pay using fiat money, or +via work credits based on the number of hours he's worked on the farm. +He pays in work credits, which is a hyper-local currency issued by +the community-supported agriculture program. The digital receipt format +only differs in the type of currency that was used to complete the sale. + </li> + </ul> + </section> + + <section> + <h4 id="details-2" aria-level="3" role="heading">Details</h4> + <p> +In order for the Web Payments initiative to be successful, it must not +discriminate based upon payment instrument or currency. As many types of +payment instrument as possible should be supported. + </p> + </section> + </section> + + <section id="authorization-configurability"> + <h3 aria-level="2" role="heading" id="h3_authorization-configurability"><span class="secno">5.4 </span>Authorization Configurability</h3> + + <p> +Allow payment processors to define the required level of authorization for +particular transactions based on their preferences and local regulations. +For example: No auth for small amounts, PIN auth for medium amounts, +Secure Element for large amounts. + </p> + + <section> + <h4 id="examples-3" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Sven buys a single play for an online video game. His payment processor +allows the purchase with no authorization due to the low value of the +transaction. + </li> + <li> +Joyce initiates a monthly mortgage payment. She is asked to verify the +purchase using a 2-factor authentication method that she had previously +registered with her payment processor. + </li> + <li> +Nimo buys a new car online. He is asked to authorize the purchase by +digitally signing a purchase contract and then using his two-factor +authentication device to verify the transfer of funds. + </li> + </ul> + </section> + + <section> + <h4 id="details-3" aria-level="3" role="heading">Details</h4> + <p> +There is an important balance between convenience and security that +is typically context-sensitive. It not only depends on the +situation and the type of transaction, but the payment processor and +the payee's preferences as well. It is important that the type of +authentication used for transaction is left to the entity's involved +in the transaction, and is not hard-coded into the payment protocol. + </p> + </section> + </section> + + <section id="smart-contracts"> + <h3 aria-level="2" role="heading" id="h3_smart-contracts"><span class="secno">5.5 </span>Smart Contracts</h3> + + <p> +Ensure the technology can be extended or does not prohibit the implementation +of simple digital contracts and smart contracts. + </p> + + <section> + <h4 id="examples-4" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Quoma owns a small-scale bakery that sells bread to local stores. She +creates a smart contract for pricing goods with her local stores ensuring +that she can make a 20% profit over the input of goods into her bread. +She ties the cost of wheat, energy, and water to the smart contract so that +the price per loaf of bread tracks the market price for the inputs. + </li> + <li> +Harim buys a piece of land on a 15 year mortgage. The smart contract that +he executes with the mortgage lender will execute a withdrawal from his +account to the lender's account on a monthly basis. + </li> + </ul> + </section> + + <section> + <h4 id="details-4" aria-level="3" role="heading">Details</h4> + <p> +Smart contracts, which are typically referenced when discussing +Distributed Autonomous Organizations, provide the capability of +algorithmically defining the distribution of economic value. While it is +too early to define a smart contract platform for the Web Payments work, +the creation of such a platform or set of protocols and formats in the +future should not be prevented. + </p> + </section> + </section> + + <section id="physical-receipts"> + <h3 aria-level="2" role="heading" id="h3_physical-receipts"><span class="secno">5.6 </span>Physical Receipts</h3> + + <p> +Don't prevent a physical version of a digital receipt that can be verified, +perhaps by printing out a QR Code on a slip of paper with some additional +information. + </p> + + <section> + <h4 id="examples-5" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Bertrand purchases a bus ticket at a booth using his mobile phone. The digital +receipt for the ticket is printed out on a piece of paper, which he then +takes and presents to a gate with a barcode scanner that scans the ticket +and gives him access to the public transportation building. + </li> + </ul> + </section> + + <section> + <h4 id="details-5" aria-level="3" role="heading">Details</h4> + <p> +In designing the protocols and formats for the Web Payments work, it is +important that offline-only is taken into account. One manifestation of this +design requirement is the paper receipt or magnetic-stripe ticket. + </p> + </section> + </section> + + </section> + + <section id="use-cases"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_use-cases"><span class="secno">6. </span>Use Cases</h2> + <p> +The following use cases outline scenarios that are targeted to be supported +in the set of Web Payments 1.0 specifications. + </p> + + <section id="purchase-request"> + <h3 aria-level="2" role="heading" id="h3_purchase-request"><span class="secno">6.1 </span>Purchase Request</h3> + + <p> +A buyer selects an item to purchase on merchant's site, merchant generates a +payment request that will be processed by the buyer's payment processor. + </p> + + <section> + <h4 id="examples-6" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Penny logs into a website, providing her payment processor credential in +the process. Penny selects a model train set to buy in an online shop. The store generates a payment request and hands it off to the browser which +then forwards the her preferred payment processor. + </li> + </ul> + </section> + + <section> + <h4 id="details-6" aria-level="3" role="heading">Details</h4> + <p> +A payment request contains all of the details necessary to perform a +purchase. The payment request should be a self-contained document that +can be used interchangeably with any payment processor that supports +the payment instrument specified in the payment request. + </p> + <section> + <h5 id="roles-1" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> +<a class="tref internalDFN" title="buyer" href="#dfn-buyer">buyer</a> + </li> + <li> +<a class="tref internalDFN" title="merchant" href="#dfn-merchant">merchant</a> + </li> + <li> +<a class="tref internalDFN" title="payment_processor" href="#dfn-payment_processor">payment processor</a> + </li> + </ul> + </section> + + <section> + <h5 id="credentials-1" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> +<a class="tref internalDFN" title="payment_processor_credential" href="#dfn-payment_processor_credential">payment processor credential</a> + </li> + </ul> + </section> + + <section> + <h5 id="requirements" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> +A mechanism that enables the buyer's payment processor to be discovered +<em class="rfc2119" title="MUST">MUST</em> be standardized. + </li> + <li> +A purchase request format <em class="rfc2119" title="MUST">MUST</em> be standardized. + </li> + </ul> + </section> + </section> + </section> + + <section id="payment-links"> + <h3 aria-level="2" role="heading" id="h3_payment-links"><span class="secno">6.2 </span>Payment Links</h3> + + <p> +A developer can create a link with a specific payment URI scheme or rel-type +such that when a buyer clicks on it, the buyer's payment processor starts +the payment process. + </p> + + <section> + <h4 id="examples-7" aria-level="3" role="heading">Examples</h4> + <ul> + <li> +Gus is a web developer and creates a donation link on his website. He +inserts a <pre><a href="payto:bitcoin:3782436823487?message=Donation">Donate</a></pre> link in the web page +markup such that when someone clicks the "Donate" link, a payment +will be initiated using the <a class="tref internalDFN" title="payer" href="#dfn-payer">payer's</a> +payment processor. + </li> + </ul> + </section> + + <section> + <h4 id="details-7" aria-level="3" role="heading">Details</h4> + <p> +A new payment protocol would enable a new type of hyperlink on the +Web that would be specialized for payments. + </p> + + <section> + <h5 id="roles-2" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-2" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-1" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="choice-of-payment-processor"> + <h3 aria-level="2" role="heading" id="h3_choice-of-payment-processor"><span class="secno">6.3 </span>Choice of Payment Processor</h3> + + <p> +When a payee intends to make a payment, they are given a choice to pick among +the intersection of the payment processors they're registered with and the +payment processors that are advertised by the merchant/payee. + </p> + + <section> + <h4 id="examples-8" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-8" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-3" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-3" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-2" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="parametric-offers"> + <h3 aria-level="2" role="heading" id="h3_parametric-offers"><span class="secno">6.4 </span>Parametric Offers</h3> + + <p> +A merchant advertises different details, such as price, for an offer of sale +based on potential payment processor choice. + </p> + + <section> + <h4 id="examples-9" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-9" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-4" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-4" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-3" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="coupons-and-loyalty-cards"> + <h3 aria-level="2" role="heading" id="h3_coupons-and-loyalty-cards"><span class="secno">6.5 </span>Coupons and Loyalty Cards</h3> + + <p> +A buyer can associate a membership card, coupon, or similar token with a +transaction to receive a discount or other benefits. + </p> + + <section> + <h4 id="examples-10" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-10" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-5" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-5" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-4" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="pseudo-anonymity"> + <h3 aria-level="2" role="heading" id="h3_pseudo-anonymity"><span class="secno">6.6 </span>Pseudo-anonymity</h3> + + <p> +Leveraging variable degrees of pseudo-anonymity per requirements of the payment transaction. + </p> + + <section> + <h4 id="examples-11" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-11" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-6" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-6" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-5" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="transaction-fee-optimization"> + <h3 aria-level="2" role="heading" id="h3_transaction-fee-optimization"><span class="secno">6.7 </span>Transaction Fee Optimization</h3> + + <p> +A buyer discovers an offer for sale by a merchant under terms that the +merchant is comfortable with. The offer includes a list of payment processors +that the merchant is capable of receiving payment through. The buyer's +software contacts a subset of those payment processors that they are capable +of sending payment through to get finalized transaction details (such as +price or speed) before executing the most desirable transaction. + </p> + + <section> + <h4 id="examples-12" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-12" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-7" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-7" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-6" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="choosing-the-attributes-of-price"> + <h3 aria-level="2" role="heading" id="h3_choosing-the-attributes-of-price"><span class="secno">6.8 </span>Choosing the Attributes of Price</h3> + + <p> +Payee and payers negotiate secure price in an open market. They are free to +choose all three essential attributes of the numeric quantity expressing a +price (e.g. 10.99), namely: a unit-of-account (e.g. $ £ € ¥ etc.); a +medium-of-exchange (e.g. debit card, credit card, web payment etc.); and, a +value-in-exchange benchmark (e.g. WM Reuters Spot Exchange; Purchasing Power +Parity; Commodity Index; etc.) + </p> + + <section> + <h4 id="examples-13" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-13" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-8" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-8" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-7" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="app-store-purchases"> + <h3 aria-level="2" role="heading" id="h3_app-store-purchases"><span class="secno">6.9 </span>App-Store Purchases</h3> + + <p> +A buyer uses a native non-browser application on their mobile phone or tablet, +or a web browser to make a purchase at an app store. + </p> + + <section> + <h4 id="examples-14" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-14" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-9" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-9" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-8" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="in-app-purchases"> + <h3 aria-level="2" role="heading" id="h3_in-app-purchases"><span class="secno">6.10 </span>In-App Purchases</h3> + + <p> +A buyer makes a purchase from within an application for premium content, virtual goods, or subscriptions. + </p> + + <section> + <h4 id="examples-15" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-15" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-10" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-10" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-9" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="payment-tokenization"> + <h3 aria-level="2" role="heading" id="h3_payment-tokenization"><span class="secno">6.11 </span>Payment Tokenization</h3> + + <p> +Temporary payment tokens for merchants. If token is stolen, thief does not +get access to financial account. Tokenization mechanism that protects the buyer +and merchant from theft of credentials. + </p> + + <section> + <h4 id="examples-16" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-16" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-11" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-11" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-10" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="registration-less-purchases"> + <h3 aria-level="2" role="heading" id="h3_registration-less-purchases"><span class="secno">6.12 </span>Registration-less Purchases</h3> + + <p> +The buyer goes to a merchant website and clicks a buy button to complete a +purchase without having to go through any registration process. During the +purchase the buyer chooses which information to share with the merchant which +the merchant then uses to uniquely identify the buyer if they perform any +repeat purchases. + </p> + + <section> + <h4 id="examples-17" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-17" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-12" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-12" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-11" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="push-based-payments"> + <h3 aria-level="2" role="heading" id="h3_push-based-payments"><span class="secno">6.13 </span>Push-based Payments</h3> + + <p> +The buyer goes to a merchant website and clicks buy to initiate a purchase. +The buyer is redirected to their payment processor's website which presents +them with a payment UI. The buyer completes the purchase (optionally without +providing any information other than their consent). The buyer is sent back +to the merchant's website with a digital receipt confirming the purchase. + </p> + + <section> + <h4 id="examples-18" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-18" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-13" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-13" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-12" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="subscriptions"> + <h3 aria-level="2" role="heading" id="h3_subscriptions"><span class="secno">6.14 </span>Subscriptions</h3> + + <p> +A buyer visits a merchant's website and initiates a payment. Their payment +processor presents them with an option to subscribe to a merchant's product or +service, which will result in periodic payments at a known value to the +merchant. + </p> + + <section> + <h4 id="examples-19" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-19" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-14" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-14" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-13" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="non-interactive-purchases"> + <h3 aria-level="2" role="heading" id="h3_non-interactive-purchases"><span class="secno">6.15 </span>Non-interactive Purchases</h3> + + <p> +A buyer visits a merchant's website and initiates a payment. Their payment +processor presents them with an option to assign a pay-as-you-go token with a +specific spending limit (and/or other limitations) for future purchases with +the merchant. An option is also presented to require the display of a receipt +when a purchase occurs (and/or other interactions), or to perform the purchase +in the background with no interactive purchase process required. + </p> + + <section> + <h4 id="examples-20" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-20" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-15" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-15" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-14" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="digital-wallet-portability"> + <h3 aria-level="2" role="heading" id="h3_digital-wallet-portability"><span class="secno">6.16 </span>Digital Wallet Portability</h3> + + <p> +An entity (payer, payee, merchant, buyer) stores wallet, credentials, and +digital receipts with a particular identity/wallet/data storage provider. The +entity decides to switch to a different identity/wallet/data storage provider +and all wallet, receipt, and credential data comes with them. + </p> + + <section> + <h4 id="examples-21" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-21" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-16" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-16" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-15" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="real-time-regulatory-reporting"> + <h3 aria-level="2" role="heading" id="h3_real-time-regulatory-reporting"><span class="secno">6.17 </span>Real-time Regulatory Reporting</h3> + + <p> +A payment processor tracks mandatory financial regulatory events and submits +machine-readable information to a regulator-provided URL to automatically meet +regulatory compliance. + </p> + + <section> + <h4 id="examples-22" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-22" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-17" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-17" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-16" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + <section id="digital-receipts"> + <h3 aria-level="2" role="heading" id="h3_digital-receipts"><span class="secno">6.18 </span>Digital Receipts</h3> + + <p> +A merchant cryptographically-signs a standardized offer for a good or service. +A buyer purchases the good or service from the merchant resulting in a +standardized, cryptographically signed, machine-readable, digital receipt that +is issued to the buyer. Entities involved in the transaction (merchant, buyer, +payee) may then use the receipt as a proof-of-purchase for the good or service. + </p> + + <section> + <h4 id="examples-23" aria-level="3" role="heading">Examples</h4> + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h4 id="details-23" aria-level="3" role="heading">Details</h4> + <p> + </p> + + <section> + <h5 id="roles-18" aria-level="4" role="heading">Roles</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="credentials-18" aria-level="4" role="heading">Credentials</h5> + + <ul> + <li> + + </li> + </ul> + </section> + + <section> + <h5 id="requirements-17" aria-level="4" role="heading">Requirements</h5> + + <ul> + <li> + + </li> + </ul> + </section> + </section> + </section> + + </section> + + <section id="acknowledgements"> + <!--OddPage--><h2 aria-level="1" role="heading" id="h2_acknowledgements"><span class="secno">7. </span>Acknowledgements</h2> + + <p> +The editor is thankful to the following contributions from the +Web Payments Workshop and the Web Payments Community Group, specifically +(in alphabetical order): + </p> + <p> +Mahmoud Abdelkader, Jonas Öberg, Ben Adida, Mike Amundsen, Erik Anderson, Gavin Andresen, Dennis A. Smith, Daniel Austin, Margaux Avedisian, Craig B. Agricola, Arthur Barstow, Rene Bartsch, Michiel B. de Jong, Tim Becker, Robin Berjon, Tim Berners-Lee, Norbert Bollow, Carsten Bormann, John Bottoms, Andrew Bovingdon, Stephane Boyera, Pelle Braendgaard, Erich Bremer, Arthur Britto, Martin Brock, Daniel Buchner, Marcos Caceres, Dan Callahan, Stephen Cannon, Melvin Carvalho, Joe Cascio Jr., Ryan Charleston, Daniel Chcouri, Jeffrey Chimene, 조경호, Jeffrey Cliff, Stephane Corlosquet, Ralph Cowling, Jon Cox, Cyrus Daboo, Nicolas Dagostino, Josef Davies-Coates, Renaud Delbru, Jose De Loera, Joel Dietz, Karl Dubost, Andrew Durham, Scott Elcomb, Charles Evans, Roman Evstifeev, David Ezell, Stephen Farrell, Pascal Finette, Daniel Friesen, Ryan Fugger, Shawn Gao, Bruce Garrison, Jason Grant, Urs Gubser, Harry Halpin, Timo Hanke, Daniel Harris, Mike Hearn, Brian Hegarty, Martin Hepp, Bjoern Hoehrmann, Tim Holborn, Timothy Holborn, Adrian Hope-Bailie, Jake Howerton, Deqing Huang, Renato Iannella, Kingsley Idehen, David I. Lehn, Ian Jacobs, Mark Janssen, Phil J. Laszkowicz, Mike Johnson, Michael J. Williams, Gregg Kellogg, Frode Kileng, Steve Klabnik, Greg Knaddison, Ya Knygar, Eric Korb, Kostas Koukopoulos, Andreas Kuckartz, Dave Lampton, Juan Lang, Stuart Langridge, Bruce Lawson, Guillaume Lebleu, Georg Leciejewski, Mark Leck, Mountie Lee, Randall Leeds, Adam Levine, Patrick Logan, Dave Longley, Alex MacCaw, Andrew Mackie, Jeremy Malcolm, Niels Möller, James Manger, Jose "Manny" De Loera, Eric Martindale, Sam Mbale, Charles McCathie Nevile, Kumar McMillan, Russell McOrmond, Coralie Mercier, Andrew Miller, Clark Minor, Matt Morgan, Glen Newton, Russel Nickson, David Nicol, Yoav Nir, Madhu Nott, Mark Nottingham, Yutaka Oiwa, Emeka Okoye, Linus Olsson, Andrei Oprea, Nate Otto, Elf Pavlik, Iris Peetz, Laurent Perez, Neil Peters, Joseph Potvin, Michael Powers, Dave Raggett, Julian Reschke, Bailey Reutzel, Pierre Rochard, Natasha Rooney, Jonathan Rosenne, Steven Rowat, Anders Rundgren, Sean Safahi, Andrei Sambra, Jeff Sayre, Doug Schepers, David Schwartz, Evan Schwartz, Igor Schwarzmann, Alex Sexton, Brent Shambaugh, Herbert Snorrason, Stan Stalnaker, Walter Stanish, Henry Story, John Sullivan, Amir Taaki, Keisha Taylor, Michael Thomas, Martin Thomson, Emanuil Tolev, Dziugas Tornau, Hannes Tschofenig, Ricardo Varela, Jonathan Waller, Dr. Warren L. Coats Jr., Michael Williams, Nico Williams, Robin Wilton, Pindar Wong, David Wood, Apostolis Xekoukoulotakis, Dan York, and Jorge Zaccaro. + </p> + + </section> + + + + +</body></html> \ No newline at end of file
--- a/README.md Mon Dec 15 01:24:15 2014 -0500 +++ b/README.md Wed May 06 21:40:48 2015 +0200 @@ -16,9 +16,9 @@ The purpose of the directories in this repository are explained below: -* latest - this is where the bleeding edge (aka latest) Editor's drafts are - kept. -* ED - The latest time-stamped Editor's drafts are placed here. -* WD - The latest time-stamped Working Drafts are placed here. +* [latest](latest) - this is where the bleeding edge (aka latest) + Editor's drafts are kept. +* [ED](ED) - The latest time-stamped Editor's drafts are placed here. +* [WD](WD) - The latest time-stamped Working Drafts are placed here.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/WD/use-cases/2015-04-16/Overview.html Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,2839 @@ +<!DOCTYPE html> +<html lang="en" dir="ltr" typeof="bibo:Document " prefix="bibo: http://purl.org/ontology/bibo/ w3p: http://www.w3.org/2001/02pd/rec54#"> +<head><meta lang="" property="dc:language" content="en"> + <title>Web Payments Use Cases 1.0</title> + <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> + + + + <style type="text/css"> +h4 { + color: #005A9C; +} +dl { + margin-top: 20px; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dl > dt:first-of-type { + font-weight: bold; +} +@media (min-width: 768px), print { + .dl-horizontal { + margin-bottom: 4em; + } + .dl-horizontal dt { + font-weight: normal; + float: left; + width: 160px; + clear: left; + overflow: hidden; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } + .dl-horizontal dd > ul { + padding-left: 20px; + margin: 0px; + } +} + </style> + <style>/***************************************************************** + * ReSpec 3 CSS + * Robin Berjon - http://berjon.com/ + *****************************************************************/ + +/* --- INLINES --- */ +em.rfc2119 { + text-transform: lowercase; + font-variant: small-caps; + font-style: normal; + color: #900; +} + +h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym, +h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr { + border: none; +} + +dfn { + font-weight: bold; +} + +a.internalDFN { + color: inherit; + border-bottom: 1px solid #99c; + text-decoration: none; +} + +a.externalDFN { + color: inherit; + border-bottom: 1px dotted #ccc; + text-decoration: none; +} + +a.bibref { + text-decoration: none; +} + +cite .bibref { + font-style: normal; +} + +code { + color: #C83500; +} + +/* --- TOC --- */ +.toc a, .tof a { + text-decoration: none; +} + +a .secno, a .figno { + color: #000; +} + +ul.tof, ol.tof { + list-style: none outside none; +} + +.caption { + margin-top: 0.5em; + font-style: italic; +} + +/* --- TABLE --- */ +table.simple { + border-spacing: 0; + border-collapse: collapse; + border-bottom: 3px solid #005a9c; +} + +.simple th { + background: #005a9c; + color: #fff; + padding: 3px 5px; + text-align: left; +} + +.simple th[scope="row"] { + background: inherit; + color: inherit; + border-top: 1px solid #ddd; +} + +.simple td { + padding: 3px 10px; + border-top: 1px solid #ddd; +} + +.simple tr:nth-child(even) { + background: #f0f6ff; +} + +/* --- DL --- */ +.section dd > p:first-child { + margin-top: 0; +} + +.section dd > p:last-child { + margin-bottom: 0; +} + +.section dd { + margin-bottom: 1em; +} + +.section dl.attrs dd, .section dl.eldef dd { + margin-bottom: 0; +} + +@media print { + .removeOnSave { + display: none; + } +} +</style><style>/* --- ISSUES/NOTES --- */ +div.issue-title, div.note-title , div.warning-title { + padding-right: 1em; + min-width: 7.5em; + color: #b9ab2d; +} +div.issue-title { color: #e05252; } +div.note-title { color: #2b2; } +div.warning-title { color: #f22; } +div.issue-title span, div.note-title span, div.warning-title span { + text-transform: uppercase; +} +div.note, div.issue, div.warning { + margin-top: 1em; + margin-bottom: 1em; +} +.note > p:first-child, .issue > p:first-child, .warning > p:first-child { margin-top: 0 } +.issue, .note, .warning { + padding: .5em; + border-left-width: .5em; + border-left-style: solid; +} +div.issue, div.note , div.warning { + padding: 1em 1.2em 0.5em; + margin: 1em 0; + position: relative; + clear: both; +} +span.note, span.issue, span.warning { padding: .1em .5em .15em; } + +.issue { + border-color: #e05252; + background: #fbe9e9; +} +.note { + border-color: #52e052; + background: #e9fbe9; +} + +.warning { + border-color: #f11; + border-right-width: .2em; + border-top-width: .2em; + border-bottom-width: .2em; + border-style: solid; + background: #fbe9e9; +} + +.warning-title:before{ + content: "⚠"; /*U+26A0 WARNING SIGN*/ + font-size: 3em; + float: left; + height: 100%; + padding-right: .3em; + vertical-align: top; + margin-top: -0.5em; +} +</style><link rel="stylesheet" href="https://www.w3.org/StyleSheets/TR/W3C-WD"><!--[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--></head> +<body class="h-entry" role="document" id="respecDocument"><div class="head" role="contentinfo" id="respecHeader"> + <p> + + + <a href="http://www.w3.org/"><img width="72" height="48" src="https://www.w3.org/Icons/w3c_home" alt="W3C"></a> + + + </p> + <h1 class="title p-name" id="title" property="dcterms:title">Web Payments Use Cases 1.0</h1> + + <h2 id="w3c-first-public-working-draft-16-april-2015"><abbr title="World Wide Web Consortium">W3C</abbr> First Public Working Draft <time property="dcterms:issued" class="dt-published" datetime="2015-04-16">16 April 2015</time></h2> + <dl> + + <dt>This version:</dt> + <dd><a class="u-url" href="http://www.w3.org/TR/2015/WD-web-payments-use-cases-20150416/">http://www.w3.org/TR/2015/WD-web-payments-use-cases-20150416/</a></dd> + <dt>Latest published version:</dt> + <dd><a href="http://www.w3.org/TR/web-payments-use-cases/">http://www.w3.org/TR/web-payments-use-cases/</a></dd> + + + <dt>Latest editor's draft:</dt> + <dd><a href="https://dvcs.w3.org/hg/webpayments/raw-file/default/latest/use-cases/index.html">https://dvcs.w3.org/hg/webpayments/raw-file/default/latest/use-cases/index.html</a></dd> + + + + + + + + <dt>Editors:</dt> + <dd class="p-author h-card vcard" property="bibo:editor" resource="_:editor0"><span property="rdf:first" typeof="foaf:Person"><meta property="foaf:name" content="Manu Sporny"><a class="u-url url p-name fn" property="foaf:homepage" href="https://manu.sporny.org/">Manu Sporny</a>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://digitalbazaar.com/">Digital Bazaar</a></span> +<span property="rdf:rest" resource="_:editor1"></span> +</dd> +<dd class="p-author h-card vcard" resource="_:editor1"><span property="rdf:first" typeof="foaf:Person"><meta property="foaf:name" content="Ian Jacobs"><a class="u-url url p-name fn" property="foaf:homepage" href="http://www.w3.org/People/Jacobs/">Ian Jacobs</a>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a></span> +<span property="rdf:rest" resource="rdf:nil"></span> +</dd> + + + <dt>Authors:</dt> + <dd class="p-author h-card vcard"><span property="dc:contributor" typeof="foaf:Person"><meta property="foaf:name" content="Ian Jacobs"><a class="u-url url p-name fn" property="foaf:homepage" href="http://www.w3.org/People/Jacobs/">Ian Jacobs</a>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a></span> +</dd> +<dd class="p-author h-card vcard"><span property="dc:contributor" typeof="foaf:Person"><meta property="foaf:name" content="Manu Sporny"><a class="u-url url p-name fn" property="foaf:homepage" href="https://manu.sporny.org/">Manu Sporny</a>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://digitalbazaar.com/">Digital Bazaar</a></span> +</dd> +<dd class="p-author h-card vcard"><span property="dc:contributor" typeof="foaf:Person"><meta property="foaf:name" content="David Ezell"><a class="u-url url p-name fn" property="foaf:homepage" href="http://example.org/">David Ezell</a>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.nacsonline.com/">NACS</a></span> +</dd> +<dd class="p-author h-card vcard"><span property="dc:contributor" typeof="foaf:Person"><span property="foaf:name" class="p-name fn">Qian Sun</span>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.alibabagroup.com/">Alibaba</a></span> +</dd> +<dd class="p-author h-card vcard"><span property="dc:contributor" typeof="foaf:Person"><meta property="foaf:name" content="David Jackson"><a class="u-url url p-name fn" property="foaf:homepage" href="https://www.linkedin.com/in/davidjjackson">David Jackson</a>, <a property="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.oracle.com/">Oracle</a></span> +</dd> + + + + + + <dt>Version control:</dt> + + + + <dd> + <a href="https://github.com/w3c/webpayments-ig"> + Github Repository + </a> + </dd> + + + + <dd> + <a href="http://www.w3.org/Payments/IG/track/products/2"> + Issues + </a> + </dd> + + + + + + + </dl> + + + + + + <p class="copyright"> + <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © + 2015 + + <a href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>®</sup> + (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>, + <a href="http://www.ercim.eu/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>, + <a href="http://www.keio.ac.jp/">Keio</a>, <a href="http://ev.buaa.edu.cn/">Beihang</a>). + + <abbr title="World Wide Web Consortium">W3C</abbr> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, + <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and + + <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> + + rules apply. + </p> + + + <hr> +</div> + + <section id="abstract" class="introductory" property="dc:abstract"><h2 id="h-abstract" resource="#h-abstract"><span property="xhv:role" resource="xhv:heading">Abstract</span></h2> + <p> +This document is a prioritized list of Web payments use cases. +Guided by these use cases, the <abbr title="World Wide Web Consortium">W3C</abbr> Web Payments Interest Group +plans to derive architecture and associated technology +requirements to integrate payments into the Open Web +Platform. That work will form the basis of conversations with <abbr title="World Wide Web Consortium">W3C</abbr> +groups and the broader payments industry about what standards +(from <abbr title="World Wide Web Consortium">W3C</abbr> or other organizations) will be necessary to fulfill the +use cases and make payments over the Web easier and more secure. + </p> + </section><section id="sotd" class="introductory"><h2 id="h-sotd" resource="#h-sotd"><span property="xhv:role" resource="xhv:heading">Status of This Document</span></h2> + + + + <p> + <em>This section describes the status of this document at the time of its publication. + Other documents may supersede this document. A list of current <abbr title="World Wide Web Consortium">W3C</abbr> publications and the + latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><abbr title="World Wide Web Consortium">W3C</abbr> technical reports index</a> at + http://www.w3.org/TR/.</em> + </p> + + + <p> +This document is a work in progress and is being released early and often +using an agile process; it is incomplete. + </p> + <p> +The Web Payments IG has only had the opportunity to review a handful of the +40+ use cases, 120+ requirements, hundreds of pages of +payments research submitted to the group via various other standards group +output such as ISO20022, research documents from X9 and the US Federal Reserve, +documents from the Web Payments Community Group, and input from the +general public. Our desire is to align with the larger payments industry +when it's possible to do so. Expect this document to be rapidly iterated upon +with that desire in mind. + </p> + + + <p> + This document was published by the <a href="http://www.w3.org/blog/wpig/">Web Payments Interest Group</a> as a First Public Working Draft. + + This document is intended to become a <abbr title="World Wide Web Consortium">W3C</abbr> Recommendation. + + + If you wish to make comments regarding this document, please send them to + <a href="mailto:public-webpayments-comments@w3.org">public-webpayments-comments@w3.org</a> + (<a href="mailto:public-webpayments-comments-request@w3.org?subject=subscribe">subscribe</a>, + <a href="http://lists.w3.org/Archives/Public/public-webpayments-comments/">archives</a>). + + + + + + + All comments are welcome. + + + </p> + + + + <p> + Publication as a First Public Working Draft does not imply endorsement by the <abbr title="World Wide Web Consortium">W3C</abbr> + Membership. This is a draft document and may be updated, replaced or obsoleted by other + documents at any time. It is inappropriate to cite this document as other than work in + progress. + </p> + + + + <p> + + This document was produced by a group operating under the + <a id="sotd_patent" property="w3p:patentRules" href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <abbr title="World Wide Web Consortium">W3C</abbr> Patent + Policy</a>. + + + + + <abbr title="World Wide Web Consortium">W3C</abbr> maintains a <a href="http://www.w3.org/2004/01/pp-impl/73816/status" rel="disclosure">public list of any patent + disclosures</a> + + made in connection with the deliverables of the group; that page also includes + instructions for disclosing a patent. An individual who has actual knowledge of a patent + which the individual believes contains + <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential + Claim(s)</a> must disclose the information in accordance with + <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section + 6 of the <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>. + + + </p> + + <p>This document is governed by the <a id="w3c_process_revision" href="http://www.w3.org/2014/Process-20140801/">1 August 2014 <abbr title="World Wide Web Consortium">W3C</abbr> Process Document</a>. + </p> + + + + + +</section><section id="toc"><h2 class="introductory" id="h-toc" resource="#h-toc"><span property="xhv:role" resource="xhv:heading">Table of Contents</span></h2><ul class="toc" role="directory" id="respecContents"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction</a><ul class="toc"><li class="tocline"><a href="#why-this-work-is-important" class="tocxref"><span class="secno">1.1 </span>Why This Work is Important</a></li><li class="tocline"><a href="#how-this-document-is-organized" class="tocxref"><span class="secno">1.2 </span>How this Document is Organized</a></li></ul></li><li class="tocline"><a href="#terminology" class="tocxref"><span class="secno">2. </span>Terminology</a></li><li class="tocline"><a href="#an-overview-of-the-payment-phases" class="tocxref"><span class="secno">3. </span>An Overview of the Payment Phases</a><ul class="toc"><li class="tocline"><a href="#negotiation-of-payment-terms" class="tocxref"><span class="secno">3.1 </span>Negotiation of Payment Terms</a></li><li class="tocline"><a href="#negotiation-of-payment-instruments" class="tocxref"><span class="secno">3.2 </span>Negotiation of Payment Instruments</a></li><li class="tocline"><a href="#payment-processing" class="tocxref"><span class="secno">3.3 </span>Payment Processing</a></li><li class="tocline"><a href="#delivery-of-product-receipt-and-refunds" class="tocxref"><span class="secno">3.4 </span>Delivery of Product/Receipt and Refunds</a></li></ul></li><li class="tocline"><a href="#a-simple-example-of-the-payment-phases" class="tocxref"><span class="secno">4. </span>A Simple Example of the Payment Phases</a><ul class="toc"><li class="tocline"><a href="#negotiation-of-purchase-terms" class="tocxref"><span class="secno">4.1 </span>Negotiation of Purchase Terms</a></li><li class="tocline"><a href="#negotiation-of-payment-instruments-1" class="tocxref"><span class="secno">4.2 </span>Negotiation of Payment Instruments</a></li><li class="tocline"><a href="#payment-processing-1" class="tocxref"><span class="secno">4.3 </span>Payment Processing</a></li><li class="tocline"><a href="#delivery-of-product-receipt-and-refunds-1" class="tocxref"><span class="secno">4.4 </span>Delivery of Product/Receipt and Refunds</a></li></ul></li><li class="tocline"><a href="#assumptions" class="tocxref"><span class="secno">5. </span>Assumptions</a></li><li class="tocline"><a href="#use-cases-1" class="tocxref"><span class="secno">6. </span>Use Cases</a><ul class="toc"><li class="tocline"><a href="#negotiation-of-payment-terms-1" class="tocxref"><span class="secno">6.1 </span>Negotiation of Payment Terms</a><ul class="toc"><li class="tocline"><a href="#discovery-of-offer" class="tocxref"><span class="secno">6.1.1 </span>Discovery of Offer</a><ul class="toc"></ul></li><li class="tocline"><a href="#agreement-on-terms" class="tocxref"><span class="secno">6.1.2 </span>Agreement on Terms</a><ul class="toc"></ul></li><li class="tocline"><a href="#application-of-marketing-elements" class="tocxref"><span class="secno">6.1.3 </span>Application of Marketing Elements</a></li></ul></li><li class="tocline"><a href="#negotiation-of-payment-instruments-2" class="tocxref"><span class="secno">6.2 </span>Negotiation of Payment Instruments</a><ul class="toc"><li class="tocline"><a href="#discovery-of-accepted-schemes" class="tocxref"><span class="secno">6.2.1 </span>Discovery of Accepted Schemes</a></li><li class="tocline"><a href="#selection-of-payment-instruments" class="tocxref"><span class="secno">6.2.2 </span>Selection of Payment Instruments</a></li><li class="tocline"><a href="#authentication-to-access-instruments" class="tocxref"><span class="secno">6.2.3 </span>Authentication to Access Instruments</a><ul class="toc"></ul></li></ul></li><li class="tocline"><a href="#payment-processing-2" class="tocxref"><span class="secno">6.3 </span>Payment Processing</a><ul class="toc"><li class="tocline"><a href="#initiation-of-processing" class="tocxref"><span class="secno">6.3.1 </span>Initiation of Processing</a></li><li class="tocline"><a href="#verification-of-available-funds" class="tocxref"><span class="secno">6.3.2 </span>Verification of Available Funds</a><ul class="toc"></ul></li><li class="tocline"><a href="#authorization-of-transfer" class="tocxref"><span class="secno">6.3.3 </span>Authorization of Transfer</a></li><li class="tocline"><a href="#completion-of-transfer" class="tocxref"><span class="secno">6.3.4 </span>Completion of Transfer</a><ul class="toc"></ul></li></ul></li><li class="tocline"><a href="#delivery-of-product-receipt-and-refunds-2" class="tocxref"><span class="secno">6.4 </span>Delivery of Product/Receipt and Refunds</a><ul class="toc"><li class="tocline"><a href="#delivery-of-product" class="tocxref"><span class="secno">6.4.1 </span>Delivery of Product</a></li><li class="tocline"><a href="#delivery-of-receipt" class="tocxref"><span class="secno">6.4.2 </span>Delivery of Receipt</a></li><li class="tocline"><a href="#refunds" class="tocxref"><span class="secno">6.4.3 </span>Refunds</a></li></ul></li></ul></li><li class="tocline"><a href="#additional-examples-of-the-payment-phases" class="tocxref"><span class="secno">7. </span>Additional Examples of the Payment Phases</a><ul class="toc"><li class="tocline"><a href="#credit-card-payment-visa-mastercard" class="tocxref"><span class="secno">7.1 </span>Credit Card Payment (Visa, MasterCard)</a><ul class="toc"></ul></li><li class="tocline"><a href="#tokenized-payments-applepay-venmo-cybersource" class="tocxref"><span class="secno">7.2 </span>Tokenized Payments (ApplePay / Venmo / CyberSource)</a><ul class="toc"></ul></li><li class="tocline"><a href="#three-corner-model-payments-paypal-alipay-google-wallet" class="tocxref"><span class="secno">7.3 </span>Three Corner Model Payments (PayPal / Alipay / Google Wallet)</a><ul class="toc"></ul></li><li class="tocline"><a href="#cryptocurrency-payment-bitcoin-ripple" class="tocxref"><span class="secno">7.4 </span>Cryptocurrency Payment (Bitcoin, Ripple)</a><ul class="toc"></ul></li><li class="tocline"><a href="#electronic-cheque-payment" class="tocxref"><span class="secno">7.5 </span>Electronic Cheque Payment</a></li><li class="tocline"><a href="#credit-transfer-direct-debit" class="tocxref"><span class="secno">7.6 </span>Credit Transfer / Direct Debit</a></li></ul></li><li class="tocline"><a href="#future-work" class="tocxref"><span class="secno">A. </span>Future Work</a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">B. </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">C. </span>References</a><ul class="toc"><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">C.1 </span>Informative references</a></li></ul></li></ul></section> + + + + <section id="introduction" typeof="bibo:Chapter" resource="#introduction" property="bibo:hasPart"> + <!--OddPage--><h2 id="h-introduction" resource="#h-introduction"><span property="xhv:role" resource="xhv:heading"><span class="secno">1. </span>Introduction</span></h2> + + <p> +ECommerce is thriving and continues to expand. However, +fragmentation of payment systems is limiting the growth potential +as are problems — both real and perceived — such as +fraud and usability. + </p> + + <p> +Because the Web is ubiquitous, strengthening support for Web +payments has the potential to create new opportunities for +businesses and customers. Mobile devices are already transforming +the industry by supplanting physical payment cards in proximity +payments, voucher distribution, and identification when people +authenticate to a scanner, point of sale, or access gate. Although +we are seeing innovation in mobile payment systems, the lack of +standards makes it more difficult to adapt to new payment +approaches or integrate new payment providers. + </p> + + <p> +The <abbr title="World Wide Web Consortium">W3C</abbr> Web Payments Interest Group is developing a roadmap for standards to +improve the interoperability of payments using Web technologies for both +online and brick-and-mortar (offline) scenarios. This will help achieve +greater interoperability among merchants and their customers, +payment providers, software vendors, mobile operators, native mobile +apps, and payment networks. The roadmap will include +<a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a> in use +today (such as electronic cheques, credit cards, direct debit, and +cryptocurrencies) and those of the future. The roadmap will be derived from +the use cases listed below. + </p> + + <section id="why-this-work-is-important" typeof="bibo:Chapter" resource="#why-this-work-is-important" property="bibo:hasPart"> + <h3 id="h-why-this-work-is-important" resource="#h-why-this-work-is-important"><span property="xhv:role" resource="xhv:heading"><span class="secno">1.1 </span>Why This Work is Important</span></h3> + <p> +The Web Payments work is not just about making payments easier, faster, +more secure, and more innovative. There are many people around the world that +today's financial system does not reach. These people are called the world's +unbanked (or underbanked). The unbanked often live pay cheque to pay cheque, do +not have access to savings accounts or low-fee cheque cashing services, lines +of credit, or a way of saving for their future. Being unable to plan for one's +financial future often results in a focus on the short-term, which creates a +vicious cycle of not being able to escape one's situation. Not being able to +participate in the financial system creates unintended inequities that create +waste and result in a net loss for society. + </p> + <p> +However, some of the shortcomings of today's financial system could be +addressed via technological improvements. For example, there is a considerable +overlap between the unbanked and underbanked population and access to advanced +mobile phones and the Web. By providing financial services to people with +mobile phones in a standardized way via the Web, we could see an improvement +in the financial health of these individuals and their families. + </p> + <p> +Extending the current financial system to reach further helps an ever +increasing number of people plan for their future, focus on the long-term, and +thus contributes to a greater net gain for society. + </p> + </section> + + <section id="how-this-document-is-organized" typeof="bibo:Chapter" resource="#how-this-document-is-organized" property="bibo:hasPart"> + <h3 id="h-how-this-document-is-organized" resource="#h-how-this-document-is-organized"><span property="xhv:role" resource="xhv:heading"><span class="secno">1.2 </span>How this Document is Organized</span></h3> + + <p> +This document is organized as follows: + </p> + + <ul> + <li> +Section 2 defines basic payment terms. + </li> + <li> +Section 3 describes a common payment flow at a high +level. The group expects to work on additional +payment flows in future work. + </li> + <li> +Section 4 is a specific narrative, labeled according +to the steps of section 3. Section 7 describes +additional familiar narratives to give a more complete picture +of how the payment phases apply. + </li> + <li> +Section 6 lists the use cases - short scenarios that cover +diverse aspects of each payment step. + </li> + </ul> + + <p> +Each use case has: + </p> + <ul> + <li> +A title and short description. + </li> + <li> +Goals. How the use case advances one or more of the +<a href="https://www.w3.org/Payments/IG/wiki/ExecSummary#Goals">goals +for an interoperable Web payments framework</a>. + </li> + <li> +Motivation. This is commentary to help explain why the use +case has been included, including how it relates to similar use cases. + </li> + </ul> + + <p> +Each use case may also have notes on: + </p> + + <ul> + <li> +Security/Privacy. Security or privacy issues that may arise through this use +case. + </li> + <li> +Exceptions. Considerations in the case of specific exceptions (e.g., if a +user pays with a voucher and the <a href="#dfn-transaction" class="internalDFN">transaction</a> fails, the user's voucher +should be restored). + </li> + <li> +Accessibility. Accessibility considerations (e.g., in multi-factor +authentication, management of biometrics in the case of users with some +disabilities). + </li> + </ul> + + <div class="issue"><div class="issue-title" aria-level="4" role="heading" id="h-issue1"><span>Issue 1</span></div><p class=""> +The group seeks input from security, privacy, and accessibility experts. +Examples of desired groups to perform these reviews are, but are not +limited to: <abbr title="World Wide Web Consortium">W3C</abbr> Privacy Interest Group, +<abbr title="World Wide Web Consortium">W3C</abbr> Security Interest Group, <abbr title="World Wide Web Consortium">W3C</abbr> Web Accessibility Initiative and +Protocols and Formats Working Group, US Federal Reserve Security Panels, +X9 Security subgroups, and ISO security subgroups. + </p></div> + + <p> +The Interest Group (currently) regards some of the use cases as "essential" to +addressing their +<a href="https://www.w3.org/Payments/IG/wiki/ExecSummary#Goals">goals</a> and +others as "non-essential." + </p> + + <div class="note"><div class="note-title" aria-level="4" role="heading" id="h-note1"><span>Note</span></div><p class=""> +All character names appearing in this document are fictitious. Any resemblance +to real persons, living or dead, is purely coincidental. Some organizations, +products, and services appearing in this document are real and are included +purely for pedagogic purposes and don't imply endorsement or approval of the +Web Payments work in any way, shape, or form. For all other organizations, +products, or services appearing in this document, any resemblance to real +entities is purely coincidental. + </p></div> + + </section> + + </section> + + <section id="terminology" typeof="bibo:Chapter" resource="#terminology" property="bibo:hasPart"> + <!--OddPage--><h2 id="h-terminology" resource="#h-terminology"><span property="xhv:role" resource="xhv:heading"><span class="secno">2. </span>Terminology</span></h2> + <p> +This document attempts to communicate the concepts outlined in the Web +Payments space by using specific terms to discuss particular concepts. This +terminology is included below and linked to throughout the document to aid +the reader: + </p> + <dl> + <dt><dfn id="dfn-entity">entity</dfn></dt> + <dd> +A person, organization, or software agent that is capable of interacting with +the world. + </dd> + <dt><dfn id="dfn-payee">payee</dfn></dt> + <dd> +An <a href="#dfn-entity" class="internalDFN">entity</a> that receives funds as required by a +<a href="#dfn-transaction" class="internalDFN">transaction</a>. + </dd> + <dt><dfn id="dfn-payer">payer</dfn></dt> + <dd> +An <a href="#dfn-entity" class="internalDFN">entity</a> that provides a source of funds as required by a +<a href="#dfn-transaction" class="internalDFN">transaction</a>. + </dd> + <dt><dfn id="dfn-payment-instrument">payment instrument</dfn></dt> + <dd> +A mechanism used to transfer value from a <a href="#dfn-payer" class="internalDFN">payer</a> to a +<a href="#dfn-payee" class="internalDFN">payee</a>. Examples: Corporate Visa card, personal Visa card, a bitcoin +account, a PayPal account, an Alipay account, etc. + </dd> + <dt><dfn id="dfn-payment-processor">payment processor</dfn></dt> + <dd> +An <a href="#dfn-entity" class="internalDFN">entity</a> that submits and processes payments using a particular +<a href="#dfn-payment-instrument" class="internalDFN">payment instrument</a> to a payment network. Examples: Stripe, PayPal, +Authorize.net, Atos, FedACH. + </dd> + <dt><dfn id="dfn-payment-scheme">payment scheme</dfn></dt> + <dd> +Sets of rules and technical standards for the execution of payment +<a title="transaction" href="#dfn-transaction" class="internalDFN">transactions</a> that have to be followed by adhering +entities (<a title="payment processor" href="#dfn-payment-processor" class="internalDFN">payment processors</a>, +<a title="payer" href="#dfn-payer" class="internalDFN">payers</a> and <a title="payee" href="#dfn-payee" class="internalDFN">payees</a>). Examples: Visa, +MasterCard, Bitcoin, Ripple, PayPal, Google Pay, Alipay, Yandex money, ACH, SEPA. + </dd> + <dt><dfn id="dfn-purchase">purchase</dfn></dt> + <dd> +Activities surrounding and including a <a href="#dfn-transaction" class="internalDFN">transaction</a> (e.g., discovery of +an offer, negotiation of terms, selection of <a href="#dfn-payment-instrument" class="internalDFN">payment instrument</a>, +delivery, etc.). + </dd> + <dt><dfn id="dfn-transaction">transaction</dfn></dt> + <dd> +An exchange of value (e.g., buying or selling something) + </dd> + </dl> + + <div class="note"><div class="note-title" aria-level="3" role="heading" id="h-note2"><span>Note</span></div><p class=""> +There are a number of financial industry standards (such as +ISO20022, ISO12812, various X9 standards, PCI DSS, and others) that +define payment terms. The Web Payments Interest Group has as a goal to +make use of industry-defined terms in its deliverables. At the same time, +the group has as a goal that these use cases may be understood by both +payment industry professionals and the broader Web community. Thus, our +definitions are simplified and few in number here, but the group is +also developing a +<a href="https://www.w3.org/Payments/IG/wiki/GlossaryReference">more complete glossary</a> +with detailed definitions and mappings to industry-defined terms. + </p></div> + </section> + + <section id="an-overview-of-the-payment-phases" typeof="bibo:Chapter" resource="#an-overview-of-the-payment-phases" property="bibo:hasPart"> + <!--OddPage--><h2 id="h-an-overview-of-the-payment-phases" resource="#h-an-overview-of-the-payment-phases"><span property="xhv:role" resource="xhv:heading"><span class="secno">3. </span>An Overview of the Payment Phases</span></h2> + + <p>There are many types of <a href="#dfn-transaction" class="internalDFN">transaction</a>s in the world of payments, +including person-to-business, business-to-business, business-to-person, +government-to-person, person-to-government, and +person-to-person. In this document we focus on the +interactions between a <a href="#dfn-payer" class="internalDFN">payer</a> and a <a href="#dfn-payee" class="internalDFN">payee</a>, +either of which could be a person, business, government, or software +agent), which we organize into four phases:</p> + + <div class="issue"><div class="issue-title" aria-level="3" role="heading" id="h-issue2"><span>Issue 2</span></div><p class=""> +The group would like feedback related to the general structure of the payment +phases from individuals that worked on ISO20022, ISO12812, the +European Payment Commission, and +various X9 documents to ensure that the phases reflect business processes +outlined in financial standardization initiatives. Feedback from the general +public is also requested to see if non-payment professionals can navigate and +understand the document without prior payment industry knowledge. + </p></div> + + <ol> + <li> +Negotiation of Payment Terms + </li> + <li> +Negotiation of Payment Instruments + </li> + <li> +Payment Processing + </li> + <li> +Delivery of Product/Receipt and Refunds + </li> + </ol> + +<p>The descriptions below only discuss the interactions between the +payer and the <a href="#dfn-payee" class="internalDFN">payee</a>. We do not expose the low-level exchanges between +banks, card associations, or other back-end "payment clearing" parties +in a <a href="#dfn-transaction" class="internalDFN">transaction</a>. Those details will be discussed in the Interest +Group's work on architecture and +requirements.</p> + + <p>Each phase below consists of a series of steps. +The details of each step vary by <a href="#dfn-payment-scheme" class="internalDFN">payment scheme</a>. Some steps may +not be relevant at certain times (e.g., depending on +<a href="#dfn-payment-scheme" class="internalDFN">payment scheme</a> or <a href="#dfn-transaction" class="internalDFN">transaction</a> specifics). +For example, some <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> do not involve a proof of +funds or proof of hold. ACH and SEPA +<a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a> generally do not support the +verification of available funds, thus in these +<a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a> the particular proof of funds +step is skipped. +In some cases, steps may happen in a slightly different order than described below. + </p> + <p> +It is also important to note that these phases and steps may be interrupted +at various times (e.g., one party drops out, or exceptions occur like +insufficient funds or a regulatory block). While these phases are an +approximation of the general flow of all payments, they are helpful in +structuring the use cases such that it is easy to figure out to which part of +the payment process a particular use case belongs. + </p> + + <p>While these four phases may apply more or less well to a variety +of other payment scenarios such as person-to-person +payments, those topics are not the current focus of the group. We +plan to address them directly in <a href="#future-work">future +work</a>.</p> + + <section id="negotiation-of-payment-terms" typeof="bibo:Chapter" resource="#negotiation-of-payment-terms" property="bibo:hasPart"> + <h3 id="h-negotiation-of-payment-terms" resource="#h-negotiation-of-payment-terms"><span property="xhv:role" resource="xhv:heading"><span class="secno">3.1 </span>Negotiation of Payment Terms</span></h3> + <p> +In the first phase of the payment process, the <a href="#dfn-payer" class="internalDFN">payer</a> and the +<a href="#dfn-payee" class="internalDFN">payee</a> negotiate the terms of the payment. + </p> + + <ul> + <li> +<strong>Discovery of Offer</strong>. The <a href="#dfn-payer" class="internalDFN">payer</a> discovers the +<a title="payee" href="#dfn-payee" class="internalDFN">payee's</a> offer (e.g., by browsing a Web page or +from a native application). + </li> + <li> +<strong>Agreement on Terms</strong>. The <a href="#dfn-payer" class="internalDFN">payer</a> and the +<a href="#dfn-payee" class="internalDFN">payee</a> agree to what will be purchased, for how much, +in what currency, which <a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a> +or loyalty programs are acceptable, etc. The <a href="#dfn-payee" class="internalDFN">payee</a> may require the +<a href="#dfn-payer" class="internalDFN">payer</a> to authenticate themselves. The <a href="#dfn-payee" class="internalDFN">payee</a> may generate an +invoice for the <a href="#dfn-payer" class="internalDFN">payer</a>. + </li> + <li> +<strong>Application of Marketing Elements</strong>. The <a href="#dfn-payer" class="internalDFN">payer</a> +discovers and applies any loyalty programs, coupons, and other special offers +to the payment terms. + </li> + </ul> + </section> + + <section id="negotiation-of-payment-instruments" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments" property="bibo:hasPart"> + <h3 id="h-negotiation-of-payment-instruments" resource="#h-negotiation-of-payment-instruments"><span property="xhv:role" resource="xhv:heading"><span class="secno">3.2 </span>Negotiation of Payment Instruments</span></h3> + <p> +In the second phase of the payment process, <a href="#dfn-payer" class="internalDFN">payer</a> and <a href="#dfn-payee" class="internalDFN">payee</a> determine which <a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> the +<a href="#dfn-payer" class="internalDFN">payer</a> will use to transfer funds to the <a href="#dfn-payee" class="internalDFN">payee</a>. + </p> + + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>. The <a href="#dfn-payer" class="internalDFN">payer</a> +discovers the <a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> that +are accepted by the <a href="#dfn-payee" class="internalDFN">payee</a>. + </li> + <li> +<strong>Selection of Payment Instruments</strong>. The <a href="#dfn-payee" class="internalDFN">payee</a> +selects one or more <a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> +that are available to the <a href="#dfn-payer" class="internalDFN">payer</a> and are accepted by the +<a href="#dfn-payee" class="internalDFN">payee</a>. + </li> + <li> +<strong>Authentication to Access Instruments</strong>. The +<a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> access to the <a href="#dfn-payment-instrument" class="internalDFN">payment instrument</a> +is authenticated. The <a href="#dfn-payer" class="internalDFN">payer</a> consents to pay. Note: This authentication +with the <a href="#dfn-payment-processor" class="internalDFN">payment processor</a> is distinct from any authentication required +by the <a href="#dfn-payee" class="internalDFN">payee</a> (such as when a merchant requires a customer to +have an account and log in to the merchant's Web site). + </li> + </ul> + </section> + + <section id="payment-processing" typeof="bibo:Chapter" resource="#payment-processing" property="bibo:hasPart"> + <h3 id="h-payment-processing" resource="#h-payment-processing"><span property="xhv:role" resource="xhv:heading"><span class="secno">3.3 </span>Payment Processing</span></h3> + <p> +The third phase of the payment process is used to initiate the transfer of +funds. Depending on the <a href="#dfn-payment-instrument" class="internalDFN">payment instrument</a>, the transfer of funds +may be verified immediately or only after several days. + </p> + <ul> + <li> +<strong>Initiation of Processing</strong>. Depending on the +<a href="#dfn-payment-instrument" class="internalDFN">payment instrument</a>, the <a href="#dfn-payer" class="internalDFN">payer</a> (e.g., when using +PayPal or Yandex Money), the <a href="#dfn-payee" class="internalDFN">payee</a> (e.g., when using a credit card), or other +party (e.g., bank) initiates processing. + </li> + <li> +<strong>Verification of Available Funds</strong>. The <a href="#dfn-payee" class="internalDFN">payee</a> may +need to provide a proof of funds or a proof of hold to the <a href="#dfn-payer" class="internalDFN">payer</a> +before finalizing payment and delivery of the product. + </li> + <li> +<strong>Authorization of Transfer</strong>. The <a href="#dfn-payee" class="internalDFN">payee</a> receives +proof that the transfer of funds has been authorized. + </li> + <li> +<strong>Completion of Transfer</strong>. The <a href="#dfn-payment-scheme" class="internalDFN">payment scheme</a> +determines the details of payment clearing and settlement. Transfer times +may vary from near-realtime to multiple days. The <a href="#dfn-payee" class="internalDFN">payee</a>, +the <a href="#dfn-payer" class="internalDFN">payer</a>, and/or third parties (such as regulatory bodies) may be +notified as each stage of the clearing and settlement process is completed. + </li> + </ul> + </section> + + <section id="delivery-of-product-receipt-and-refunds" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds" property="bibo:hasPart"> + <h3 id="h-delivery-of-product-receipt-and-refunds" resource="#h-delivery-of-product-receipt-and-refunds"><span property="xhv:role" resource="xhv:heading"><span class="secno">3.4 </span>Delivery of Product/Receipt and Refunds</span></h3> + <p> +In the fourth phase of the payment process, the <a href="#dfn-transaction" class="internalDFN">transaction</a> is completed +by providing the <a href="#dfn-payer" class="internalDFN">payer</a> with a receipt and/or the product that +was purchased. + </p> + + <ul> + <li> +<strong>Delivery of Product</strong>. The <a href="#dfn-payer" class="internalDFN">payer</a> receives goods or +services immediately, at a later date, automatically on a recurring basis, +etc. depending on the terms of the <a href="#dfn-purchase" class="internalDFN">purchase</a>. A digital proof of +payment may be required to access the product. + </li> + <li> +<strong>Delivery of Receipt</strong>. Depending on the +<a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment scheme(s)</a> chosen, there are +various ways and times that a receipt may be delivered (e.g., credit card +receipt, digital proof of <a href="#dfn-purchase" class="internalDFN">purchase</a>, encrypted line-item receipt, etc.). + </li> + <li> +<strong>Refunds</strong>. At time exceptions may occur (e.g., defective +product, application of store return policy, etc.). In this case, the +<a href="#dfn-payee" class="internalDFN">payee</a> initiates payment to the <a href="#dfn-payer" class="internalDFN">payer</a>. The refund may +take different forms, including a refund to the <a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> +payment instrument, a refund using a different payment scheme, or store credit. + </li> + </ul> + </section> + + </section> + + <section id="a-simple-example-of-the-payment-phases" typeof="bibo:Chapter" resource="#a-simple-example-of-the-payment-phases" property="bibo:hasPart"> + <!--OddPage--><h2 id="phases-overview" resource="#phases-overview"><span property="xhv:role" resource="xhv:heading"><span class="secno">4. </span>A Simple Example of the Payment Phases</span></h2> + <p> +The following scenario is provided to aid the reader in understanding how the +phases of the payment process apply to a real world situation. In this scenario, +we follow Jill, who seeks a new outfit for a party. She selects items from +PayToParty, which is a brick-and-mortar store with an online presence. +She chooses how to pay and the items are delivered to her home on the +following day. + </p> + + <p> +See the appendix for <a href="#additional-examples">additional examples of +the payment phases</a>. + </p> + + <div class="issue"><div class="issue-title" aria-level="3" role="heading" id="h-issue3"><span>Issue 3</span></div><p class=""> +General feedback is requested as to whether or not this section is helpful in +grounding the payment phases and steps in a real world use case is helpful this +early in the document. An alternative would be removing this section +entirely if the preceding section suffices, or moving this narrative to section 7 with other examples. + </p></div> + + <section id="negotiation-of-purchase-terms" typeof="bibo:Chapter" resource="#negotiation-of-purchase-terms" property="bibo:hasPart"> + <h3 id="h-negotiation-of-purchase-terms" resource="#h-negotiation-of-purchase-terms"><span property="xhv:role" resource="xhv:heading"><span class="secno">4.1 </span>Negotiation of Purchase Terms</span></h3> + <ul> + <li> +<strong>Discovery of Offer</strong>: Jill begins her <a href="#dfn-purchase" class="internalDFN">purchase</a> at +home on her laptop, where she browses the items on the PayToParty Web +site. On the way to work the next morning, she explores the catalog +further from a native app on her smart phone. Jill can't decide +whether the dress displayed online is blue with black stripes or white +with gold stripes, so during her lunch break, she drops into the +PayToParty store near her office. She spots a few more items that +she thinks she'd like to <a href="#dfn-purchase" class="internalDFN">purchase</a>, but decides to wait until later to +make the <a href="#dfn-purchase" class="internalDFN">purchase</a>. + </li> + + <li> +<strong>Agreement on Terms</strong>: That same evening at home, +Jill logs into her account on the PayToParty Web site, adding her +preferred items to her shopping cart. The total price appears on the +page. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: As Jill prepares to +check out, PayToParty offers her a discount of 10% if she uses the store's +loyalty card to pay. + </li> + </ul> + </section> + + <section id="negotiation-of-payment-instruments-1" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments-1" property="bibo:hasPart"> + <h3 id="h-negotiation-of-payment-instruments-1" resource="#h-negotiation-of-payment-instruments-1"><span property="xhv:role" resource="xhv:heading"><span class="secno">4.2 </span>Negotiation of Payment Instruments</span></h3> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: Given where Jill lives, +PayToParty offers her payment by credit card, debit card, the PayToParty +loyalty card, and PayPal, but not Jill's favorite cryptocurrency (which she +uses on other sites). + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Jill pushes the "Pay Now to Party!" button and is presented with a number of options to pay, including her +credit card, her PayToParty loyalty card (which is highlighted to remind her +of the discount), and a PayPal account. There is also a gift card from +PayToParty that she received for her birthday, but she chooses not to +use it for this <a href="#dfn-purchase" class="internalDFN">purchase</a>. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Jill selects +the PayToParty loyalty card, which she enabled with theft-protection, +and is asked to input a code that is sent to her phone before the +<a href="#dfn-purchase" class="internalDFN">purchase</a> can be completed. + </li> + </ul> + </section> + + <section id="payment-processing-1" typeof="bibo:Chapter" resource="#payment-processing-1" property="bibo:hasPart"> + <h3 id="h-payment-processing-1" resource="#h-payment-processing-1"><span property="xhv:role" resource="xhv:heading"><span class="secno">4.3 </span>Payment Processing</span></h3> + <ul> + <li> +<strong>Initiation of Processing</strong>. PayToParty receives a +message from Jill's device authorizing the payment. PayToParty +submits the message to their <a href="#dfn-payment-processor" class="internalDFN">payment processor</a>, requesting a +proof of hold for the funds. + </li> + <li> +<strong>Verification of Available Funds</strong>. PayToParty +receives a proof of hold on Jill's funds for the <a href="#dfn-purchase" class="internalDFN">purchase</a> price of +the goods. The PayToParty night-shift employees begin packing her purchased +items for delivery the next day. + </li> + <li> +<strong>Authorization of Transfer</strong>. Once Jill's package is ready to +go, PayToParty exchanges the proof of hold for a proof of payment by +re-submitting the request to the payment network. They receive a proof of +payment from the <a href="#dfn-payment-processor" class="internalDFN">payment processor</a>. + </li> + <li> +<strong>Completion of Transfer</strong>. Since Jill's PayToParty loyalty card +operates as a credit card, PayToParty will receive the funds in their normal +end of week settlement. + </li> + </ul> + </section> + + <section id="delivery-of-product-receipt-and-refunds-1" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds-1" property="bibo:hasPart"> + <h3 id="h-delivery-of-product-receipt-and-refunds-1" resource="#h-delivery-of-product-receipt-and-refunds-1"><span property="xhv:role" resource="xhv:heading"><span class="secno">4.4 </span>Delivery of Product/Receipt and Refunds</span></h3> + <ul> + <li> +<strong>Delivery of Receipt</strong>. Jill's cloud-based wallet +receives a detailed line-item digital receipt for the <a href="#dfn-purchase" class="internalDFN">purchase</a>. + </li> + + <li> +<strong>Delivery of Product</strong>. Jill's package goes out by courier the +next morning and is on her doorstep before she leaves for work. + </li> + </ul> + </section> + </section> + + <section id="assumptions" typeof="bibo:Chapter" resource="#assumptions" property="bibo:hasPart"> + <!--OddPage--><h2 id="h-assumptions" resource="#h-assumptions"><span property="xhv:role" resource="xhv:heading"><span class="secno">5. </span>Assumptions</span></h2> + + <p> +The use cases below rely on a number of assumptions that are not +detailed in the use cases but that will be explored in more detail in +the architecture and requirements documents. + </p> + + <ul> + <li> +<strong>Connectivity</strong>. Connectivity requirements vary according to +use case. The types of connections a device may utilize include Internet +connectivity, proxied connections through short-range radio transmissions, +and proximity connections over a technology such as Near-Field Communication +(NFC) or Bluetooth Low Energy (BTLE). Some use cases assume no +connectivity (e.g., user is temporarily unable to connect to a mobile phone +network or a WiFi hotspot). + </li> + <li> +<strong>Registered Payment Instruments</strong>. In order for the +<a href="#dfn-payer" class="internalDFN">payer</a> to select and utilize +<a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a>, they must be +registered in some way and discoverable by a browser, native application, +or other software. + </li> + <li> +<strong>Security</strong>. Keys, encryption, and other security technology +must be used to secure sensitive information. It is important that sensitive +information is not transmitted to parties that do not absolutely need to +know the information in order to complete the <a href="#dfn-transaction" class="internalDFN">transaction</a>.</li> + <li> +<strong>Identity</strong>. There will be a consistent, interoperable +identifier used to identify the participants and accounts in a Web Payments +transaction. + </li> + </ul> + </section> + + <section id="use-cases-1" typeof="bibo:Chapter" resource="#use-cases-1" property="bibo:hasPart"> + <!--OddPage--><h2 id="use-cases" resource="#use-cases"><span property="xhv:role" resource="xhv:heading"><span class="secno">6. </span>Use Cases</span></h2> + + <p> +This section examines the phases of payment, and the steps involved in each +phase, through a variety of use cases. The purpose of this section is to +elaborate on the variety of scenarios present in each step of the payment +process. + </p> + + <div class="issue"><div class="issue-title" aria-level="3" role="heading" id="h-issue4"><span>Issue 4</span></div><p class=""> +General feedback is requested related to the general structure of the +use case snippets below. Are they focused enough to convey each topic listed? +Is there information that should be added to each use case in general? Would +more elaborate use cases be helpful? Would an attempt to minimize each existing +use further be helpful in scanning the document more quickly? + </p></div> + + <section id="negotiation-of-payment-terms-1" typeof="bibo:Chapter" resource="#negotiation-of-payment-terms-1" property="bibo:hasPart"> + <h3 id="h-negotiation-of-payment-terms-1" resource="#h-negotiation-of-payment-terms-1"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.1 </span>Negotiation of Payment Terms</span></h3> + <p> + </p> + + <section id="discovery-of-offer" typeof="bibo:Chapter" resource="#discovery-of-offer" property="bibo:hasPart"> + <h4 id="h-discovery-of-offer" resource="#h-discovery-of-offer"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.1.1 </span>Discovery of Offer</span></h4> + + <dl class="dl-horizontal"> + <dt>Website</dt> + <dd> +Penny uses the HobbyCo website to select a $15 model train for <a href="#dfn-purchase" class="internalDFN">purchase</a>. + </dd> + <dt>Goals</dt> + <dd> +rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +This is the most common type of offer on the Web circa 2015 and is included +for the sake of completeness. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Point of Sale Kiosk</dt> + <dd> +Cory shops for groceries at his local ChowMart, scans all of the items he +wants to <a href="#dfn-purchase" class="internalDFN">purchase</a> at the automated kiosk, and is presented with a +total amount. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Unifying POS interaction w/ the Web Payments architecture is vital for the +success of this work. + </dd> + <dt>Privacy</dt> + <dd>Cory should exercise control over how much he wants the merchant + to be able to track his activities. Programs like loyalty cards will likely involve agreement to more data with the merchant. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Mobile</dt> + <dd> +Daniel takes a taxi from the airport to his hotel. The taxi driver +displays the total with his mobile device and offers a tap-to-pay option. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Greater security, Innovation, Automatability, and +rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Unifying the way tap-to-pay offers work with the Web Payments architecture +would help ensure ubiquity. + </dd> + <dt>Exceptions</dt> + <dd> +No mobile phone connectivity (visiting a different country, trip occurs +outside the range of a mobile network, etc.) + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Freemium</dt> + <dd> +Ricki plays his favorite native app game and wants to upgrade his avatar +with a few extra "power-ups." Clicking on a power-up displays the price. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Innovation, and Transparency. + </dd> + <dt>Motivation</dt> + <dd> +Many of the very successful games these days run on the freemium model, +but are tied to specific app stores. Providing an app-store agnostic +mechanism to pay for items in freemium games would give players and +developers more choices. + </dd> + </dl> + + <section id="non-essential-use-cases" typeof="bibo:Chapter" resource="#non-essential-use-cases" property="bibo:hasPart"> + <h5 id="h-non-essential-use-cases" resource="#h-non-essential-use-cases"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.1.1.1 </span>Non-Essential Use Cases</span></h5> + + <dl class="dl-horizontal"> + <dt>E-mail</dt> + <dd> +A GroupBuyCo customer receives an offer by email to <a href="#dfn-purchase" class="internalDFN">purchase</a> the deal +of the day. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and Automatability. + </dd> + <dt>Motivation</dt> + <dd> + Unifying how people initiate payments from +email, at a Point of Sale, and via a Web site will help ensure the ubiquity of the Web payment technology platform. + </dd> + <dt>Privacy / Security</dt> + <dd> +It is important to recognize that initiating a payment from within an +email application could lead to a wholly new category of phishing/fraud. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Hold Funds</dt> + <dd> +Renne checks into a hotel and is asked for a deposit for any damages +to the room. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Increased user choice, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +By design, some <a title="transaction" href="#dfn-transaction" class="internalDFN">transactions</a> do not reach +completion. Some are merely there to protect the <a href="#dfn-payee" class="internalDFN">payee</a> (e.g., in the +event of questionable judgment by the <a href="#dfn-payer" class="internalDFN">payer</a>). + </dd> + <dt>Exceptions</dt> + <dd> +Software acting on the <a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> behalf may keep +track of exactly how much money the <a href="#dfn-payer" class="internalDFN">payer</a> has and not allow them to +process the offer. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Pre-authorization</dt> + <dd> +George pulls up to a pump at a petrol station. His in-vehicle application +recognizes the station location and the pump. The pump communicates which +fuels it has and their price in an offer. George's car asks if he wants to +approve a fill up for up to €35. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Greater security, Innovation, Transparency, +Automatability, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Some offers are not aware of the final price but would rather set limits on +the amount of the <a href="#dfn-purchase" class="internalDFN">purchase</a> before a particular metered good or service is +delivered. + </dd> + <dt>Privacy</dt> + <dd>Due to the sensitivity of location data, individuals + should be able to make small fuel <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> in a way that respects their privacy. + </dd> + <dt>Security</dt> + <dd>Automated <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> (e.g,. by a vehicle) should involve increased security (e.g., a second factor of authentication). + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Machine Readability</dt> + <dd> +BigBoxCo expresses their entire product catalog online as machine-readable +information so that SearchCo may index their content more easily and direct +more customer traffic to BigBoxCo's website. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, Improved user experience, Innovation, Lower Costs, +Transparency, Automatability, Portability, Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Machine-readable offers will have a direct positive impact on store sales +if they are indexed by search engines. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Live Market Prices</dt> + <dd> +EnergyCo lists barrels of refined oil for sale on their website based on an +algorithm that uses the cost of coal and crude oil as inputs. EnergyCo +guarantees their prices for up to 24 hours from the posting date. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, +Transparency, and +Automatability + </dd> + <dt>Motivation</dt> + <dd> +The ability to express a non-repudiable offer as the basis of a legally +enforceable contract will reduce <a href="#dfn-transaction" class="internalDFN">transaction</a> friction. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Trial-ware</dt> + <dd> +Amantha downloads the latest version of her favorite game and beats +the first level. The game asks her if she'd like to buy the full game +to play further levels. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +There is a fairly large trial-ware industry that could benefit from +a simple way of executing a payment without requiring redirection +to another site to enter account and payment details. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>In-vehicle</dt> + <dd> +Jeff listens to a lot of music on the way to work. The music station serves a digital offer along with the music stream. This enables Jeff to +easily buy music that he really likes. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Innovation, +Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Car manufacturers and the entertainment industry may be interested in +extending their sales channels into vehicles. + </dd> + <dt>Accessibility</dt> + <dd> +For safety reasons, the interface used to interact with the digital offer +must not distract the driver of the vehicle. Voice controls and other +techniques can be used to reduce driver distraction. + </dd> + </dl> + + </section> + </section> + + <section id="agreement-on-terms" typeof="bibo:Chapter" resource="#agreement-on-terms" property="bibo:hasPart"> + <h4 id="h-agreement-on-terms" resource="#h-agreement-on-terms"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.1.2 </span>Agreement on Terms</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Credentials</dt> + <dd> +At times it is necessary to transmit personally identifiable information +(e.g., about a qualification, achievement, personal quality, aspect of an +<a href="#dfn-entity" class="internalDFN">entity</a>'s background, or verifiable statement by an entity about +another entity) in order to be cleared to make a purchase: + <ul> + <li> +PharmCo will only sell regulated drugs to someone with proof +of an active pharmacist's license. + </li> + <li> +WineCo will only sell wine to someone with proof of being over the age of 21. + </li> + <li> +BoomCo will only ship industrial explosives to a business that can +provide evidence of construction permits, a contractor's license, and an explosives handling license. + </li> + <li> +HomeLoanCo will not finalize a quote for a home mortgage without +a credit score report and an audited finances report. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Regulatory acceptance, +Innovation, +Transparency, +Automatability, and +Portability. + </dd> + <dt>Motivation</dt> + <dd> +There are certain types of <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> that cannot +be initiated without a proper set of credentials. While this isn't fundamental +to the payment process, it is an integral part of some <a href="#dfn-transaction" class="internalDFN">transaction</a> +processes. + </dd> + <dt>Privacy / Security</dt> + <dd>It is important that people retain control over when + and how their credentials are shared.</dd> + <dt>Exceptions</dt> + <dd>A <a href="#dfn-transaction" class="internalDFN">transaction</a> may fail if a required credential is not available. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Privacy Protection</dt> + <dd> +Tibor orders assorted chocolates from CandyCo. CandyCo only needs Tibor's +verified shipping address to send him the chocolates. With Tibor's +authorization, his payment software transmits only his shipping address to +CandyCo. Tibor's privacy is protected from the candy store, which did not +require Tibor's name, email address, or any other personally identifying +information to complete the <a href="#dfn-transaction" class="internalDFN">transaction</a>. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and Greater security. + </dd> + <dt>Motivation</dt> + <dd> +Certain low-value <a href="#dfn-transaction" class="internalDFN">transaction</a>s shouldn't require the +<a href="#dfn-payer" class="internalDFN">payer</a> to divulge personal information that is not necessary +to complete the <a href="#dfn-transaction" class="internalDFN">transaction</a>. + </dd> + <dt>Privacy</dt> + <dd>Non-essential, personally identifiable data should be anonymized and protected throughout the process. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Need to Know</dt> + <dd> +PayCo is required to keep a certain amount of information on their customers +for anti-money laundering / know your customer regulatory purposes. When a +<a href="#dfn-payer" class="internalDFN">payer</a> performs a <a href="#dfn-transaction" class="internalDFN">transaction</a> with a <a href="#dfn-payee" class="internalDFN">payee</a>, PayCo +would like to reduce the amount of information that's transmitted to the +<a href="#dfn-payee" class="internalDFN">payee</a> while ensuring that PayCo complies with regulations. + </dd> + <dt>Goals</dt> + <dd> +Greater security, and Regulatory acceptance. + </dd> + <dt>Motivation</dt> + <dd> +There are types of information, such as personally identifiable information, +that <a title="payee" href="#dfn-payee" class="internalDFN">payees</a> do not need to know for some +transactions. Limiting sensitive information to be transmitted to entities +involved in a payment on a purely need-to-know basis increases security +while ensuring regulatory compliance. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>One-time Payment</dt> + <dd> +Jamie wishes to pay for a single article from a market analyst. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience + </dd> + <dt>Motivation</dt> + <dd>It should be clear to a +<a title="payer" href="#dfn-payer" class="internalDFN">payer</a> whether a +<a href="#dfn-purchase" class="internalDFN">purchase</a> is one-time or recurring, prior to initiation of +the payment. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Invoices</dt> + <dd> +Will goes to SuperVoices to download a voiceover that he commissioned for +his new pet sitting service. SuperVoices generates a detailed invoice for the +service and provides it to Will. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Transparency, +Automatability, +Portability, and +Monetization. + </dd> + <dt>Motivation</dt> + <dd> +For certain <a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a>, the <a href="#dfn-payer" class="internalDFN">payer</a> +will have to provide the payment service with a detailed digital invoice from +the <a href="#dfn-payee" class="internalDFN">payee</a> in order to initiate payment to the <a href="#dfn-payee" class="internalDFN">payee</a>. + </dd> + </dl> + + <section id="non-essential-use-cases-1" typeof="bibo:Chapter" resource="#non-essential-use-cases-1" property="bibo:hasPart"> + <h5 id="h-non-essential-use-cases-1" resource="#h-non-essential-use-cases-1"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.1.2.1 </span>Non-essential Use Cases</span></h5> + + <dl class="dl-horizontal"> + <dt>Subscription</dt> + <dd> +Jeff subscribes to a site that provides a monthly analysis of the world +of finance. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Transparency, and +Automatability. + </dd> + <dt>Motivation</dt> + <dd> +<a title="payer" href="#dfn-payer" class="internalDFN">Payers</a> should be able to understand if a +particular <a href="#dfn-purchase" class="internalDFN">purchase</a> is a recurring payment prior to initiating +the payment. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Registration-less</dt> + <dd> +Some <a title="payee" href="#dfn-payee" class="internalDFN">payees</a> would rather not require a <a href="#dfn-payer" class="internalDFN">payer</a> to +register at their site before initiating a purchase: + <ul> + <li> +Sven wants to view a pay to read article and does so without needing to +pre-register with the website. + </li> + <li> +Reiko finds a blowtorch for sale at a local digital resale website and +places money into escrow without needing to register with the website. + </li> + <li> +Benny is listening to music in a local coffee shop and likes a song he hears. +He initiates a purchase of the song from the local "music beacon" without +needing to register with the coffee shop or the music service. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Innovation, and +Automatability + </dd> + <dt>Motivation</dt> + <dd> +There are a large number of "paywall" websites on the Web that require a +customer to register before they may use the website. In many cases, if the +site isn't regularly visited by the customer, they abandon the transaction +when they see the paywall requirement. Providing a mechanism to sell an +inexpensive item to a customer without requiring registration would be of +great benefit to not only the merchants selling goods and services, but +customers that would like to avoid lengthy registration processes. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Full Disclosure</dt> + <dd> +Marge wishes to renew her passport online which requires transmission +of a fee and a great deal of information about her real-world identity. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience. + </dd> + <dt>Motivation</dt> + <dd> +Some <a href="#dfn-transaction" class="internalDFN">transaction</a>s will require very sensitive personally identifiable +information to be transmitted by the <a href="#dfn-payer" class="internalDFN">payer</a>. + </dd> + <dt>Privacy / Security</dt> + <dd>We must ensure adequate security for these highly sensitive + transactions to reduce the likelihood of phishing attacks.</dd> + </dl> + </section> + + </section> + + <section id="application-of-marketing-elements" typeof="bibo:Chapter" resource="#application-of-marketing-elements" property="bibo:hasPart"> + <h4 id="h-application-of-marketing-elements" resource="#h-application-of-marketing-elements"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.1.3 </span>Application of Marketing Elements</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Coupons</dt> + <dd> +JustPopcorn sends Marco a special discount offer given Marco's past +<a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a>. The offer takes the form of a coupon that +may be applied during payment. + </dd> + <dt>Goals</dt> + <dd> +Automatability and Portability. + </dd> + <dt>Motivation</dt> + <dd> +Providing a mechanism to apply digital coupons before a payment is initiated +helps price-conscious customers as well as merchants attempting to research +price sensitivity. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Loyalty Cards</dt> + <dd> +Terry uses his FoodCo loyalty card when purchasing his weekly groceries, which +gives him a discount on gas <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> performed at the +FoodCo gas station. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience and Portability. + </dd> + <dt>Motivation</dt> + <dd> +Loyalty cards may be used at multiple locations to effect the price of a +particular good. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Store Credit</dt> + <dd> +When Rick arrives as the self-checkout kiosk, +he scans five dress shirts and two new pairs of slacks. +The kiosk mentions that Rick could save 15% off of his <a href="#dfn-purchase" class="internalDFN">purchase</a> +if he makes the <a href="#dfn-purchase" class="internalDFN">purchase</a> using store credit. He accepts the offer and +a new store credit card is placed in his payment application on his mobile +phone. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Automatability, +Portability, +Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Merchants often provide discounts to customers if they sign up for a +store-specific line of credit. + </dd> + </dl> + + </section> + + </section> + + <section id="negotiation-of-payment-instruments-2" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments-2" property="bibo:hasPart"> + <h3 id="h-negotiation-of-payment-instruments-2" resource="#h-negotiation-of-payment-instruments-2"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.2 </span>Negotiation of Payment Instruments</span></h3> + <p> + </p> + + + <section id="discovery-of-accepted-schemes" typeof="bibo:Chapter" resource="#discovery-of-accepted-schemes" property="bibo:hasPart"> + <h4 id="h-discovery-of-accepted-schemes" resource="#h-discovery-of-accepted-schemes"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.2.1 </span>Discovery of Accepted Schemes</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Ubiquitous Schemes</dt> + <dd> +A game store Web site accepts payment via credit card, e-cheque, and +operator billing. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Minimal standardization, +Lower Costs, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd>We have a goal for the Web payment architecture + to support existing ubiquitous <a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a> without changes to how they operate. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Emerging Schemes</dt> + <dd> +CrowdFundCo supports Bitcoin, Ripple, Google Wallet, and PayPal. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Minimal standardization, +Lower Costs, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +The same mechanism used to support existing +<a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a> should also +support emerging <a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a>. + </dd> + </dl> + + </section> + + <section id="selection-of-payment-instruments" typeof="bibo:Chapter" resource="#selection-of-payment-instruments" property="bibo:hasPart"> + <h4 id="h-selection-of-payment-instruments" resource="#h-selection-of-payment-instruments"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.2.2 </span>Selection of Payment Instruments</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Discovery</dt> + <dd> +Yanos has a multiple digital wallets: one on his mobile phone, two in the +cloud (but on different websites), and one on his smart watch. Each one has +a credit card that he may want to use for a credit card-based <a href="#dfn-purchase" class="internalDFN">purchase</a>. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Automatability, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +A <a href="#dfn-payer" class="internalDFN">payer</a> will most likely use multiple digital wallets over time. It is +important to ensure that the wallets that they use are presented to them in a +consistent manner across devices. + </dd> + <dt>Privacy / Security</dt> + <dd> +Discovery of digital wallets must be done in such a way as to ensure +privacy protection. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Manual Selection</dt> + <dd>In many cases, the <a href="#dfn-payer" class="internalDFN">payer</a> will select a payment instrument manually: + <ul> + <li> +Marie has credit cards from three different institutions: +one for work (from BankA), one personal card (from BankB), and one retail card +(from PayCo). She wants to choose the right one depending on the context of her +purchase. + </li> + <li> +Claire has one debit card and multiple credit cards from the same bank. + </li> + <li> +Veronique wants to use a cryptocurrency in some cases (e.g., +peer-to-peer payments). + </li> + <li> +Seth participates in a loyalty program with his local grocery store and +can apply a variety of digital coupons when he visits the store. +<span class="issue">Is a loyalty card a payment instrument, or a credential? +</span> + </li> + <li> +David wants to be able to manually arrange available +<a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> when they are presented +to him. <span class="issue">Why does this need to be standardized? +Isn't this just a part of the wallet UI?</span> + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, +Transparency, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +There are scenarios, such as the first interaction/use of a payment instrument, +where selection of the payment instrument won't be able to be performed +automatically. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Automatic Selection</dt> + <dd>When a <a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> personal preferences are known, it becomes possible to make selections for them automatically. + + <ul> + <li> +Jonny's payment software on his smart watch chooses the payment instrument that +will provide him with the biggest cost savings for each <a href="#dfn-purchase" class="internalDFN">purchase</a> he makes +throughout the week. + </li> + <li> +PayCo wants Elizabeth to know that if she pays with the debit card preferred +by PayCo (because of a lower <a href="#dfn-transaction" class="internalDFN">transaction</a> fee for PayCo), she will benefit from a discount. + </li> + <li> +Whenever Mary shops at BigFreshGrocery she uses the same credit card. +She wants payment to happen automatically with that card when she puts her +phone near the checkout terminal as well as when purchasing groceries online +from BigFreshGrocery. + </li> + <li> +Lalana does not like to scroll. She wants the instruments she uses most often to appear at top of the displayed list of available payment instruments. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, +Lower Costs, +Transparency, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd>Payment solutions providers can make payments easier and faster through automation. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Payer Privacy</dt> + <dd>We anticipate a range of privacy scenarios: + <ul> + <li> +Lucio sends information about instruments he is willing to use to +TrustedMerchant, who provides a discount for access to his information. + </li> + <li> +Carla does not want to share information about the +<a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> she uses with any +merchants, so that information is not shared with any online merchants. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, and +Monetization. + </dd> + <dt>Motivation</dt> + <dd> +Sharing or protecting data on the sorts of +<a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> available to +a <a href="#dfn-payer" class="internalDFN">payer</a> should be a decision made by the <a href="#dfn-payer" class="internalDFN">payer</a>. + </dd> + <dt>Privacy / Security</dt> + <dd> +The types of <a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> available +to a <a href="#dfn-payer" class="internalDFN">payer</a> could be +used to digitally fingerprint a <a href="#dfn-payer" class="internalDFN">payer</a> even if they were using an +pseudo-anonymous payment mechanism. Merchants and <a href="#dfn-payee" class="internalDFN">payee</a>s may be legally +obligated to protect this kind of <a href="#dfn-payer" class="internalDFN">payer</a> payment information. + </dd> + </dl> + + </section> + + <section id="authentication-to-access-instruments" typeof="bibo:Chapter" resource="#authentication-to-access-instruments" property="bibo:hasPart"> + <h4 id="h-authentication-to-access-instruments" resource="#h-authentication-to-access-instruments"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.2.3 </span>Authentication to Access Instruments</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Multi-Factor</dt> + <dd>We anticipate a range of authentication scenarios, leveraging a wide variety of approaches and device capabilities: + <ul> + <li> +When Ian selects his debit card, he is prompted for a PIN. + </li> + <li> +Wes has configured his debit card to require a fingerprint scan from his +mobile device and a Universal Two Factor (U2F) device to be used when +performing a <a href="#dfn-purchase" class="internalDFN">purchase</a> over $1,000. + </li> + <li> +Frederic taps his phone at the grocery store to pay, and BankA sends him a +one-time password (OTP) on his mobile phone that he enters using a keypad at +the checkout counter. + </li> + <li> +Nadia's bank asks her to use her two-factor authentication device and at +least one of their in-branch retinal scanners or palm-vein readers +before she is allowed to withdraw $25,000. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Greater security, +Minimal standardization, +Regulatory acceptance, +Innovation, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd>The payments architecture should support + the authentication devices available today for +multi-factor authentication, as well as those of the future. + </dd> + <dt>Accessibility</dt> + <dd>Not everyone can provide fingerprints or detailed iris scans. + Therefore, it is important to offer multiple forms of + biometric verification to improve accessibility. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Regulatory Blocks</dt> + <dd> +PayCo must ensure that their customers do not appear on any regulatory +blacklists when performing <a href="#dfn-transaction" class="internalDFN">transaction</a>s above a certain monetary amount. + </dd> + <dt>Goals</dt> + <dd> +Regulatory acceptance, and Automatability. + </dd> + <dt>Motivation</dt> + <dd> +Easing compliance with Know Your Customer (KYC) and +Anti-Money Laundering (AML) regulations +will ensure safer and faster <a title="payment scheme" href="#dfn-payment-scheme" class="internalDFN">payment schemes</a>. + </dd> + <dt>Exceptions</dt> + <dd> +If a <a href="#dfn-payee" class="internalDFN">payee</a> detects that a <a href="#dfn-payer" class="internalDFN">payer</a> is on an applicable blacklist, the +transaction must not proceed. + </dd> + </dl> + + <section id="non-essential-use-cases-2" typeof="bibo:Chapter" resource="#non-essential-use-cases-2" property="bibo:hasPart"> + <h5 id="h-non-essential-use-cases-2" resource="#h-non-essential-use-cases-2"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.2.3.1 </span>Non-essential Use Cases</span></h5> + <dl class="dl-horizontal"> + <dt>Biometric</dt> + <dd> +In current online and offline payment <a href="#dfn-transaction" class="internalDFN">transaction</a>s, biometric +authentication can be used instead of password-based authentication: + <ul> + <li> +John registers his fingerprint with his payment provider so that he can +just use a fingerprint to pay for low-value items. + </li> + <li> +Sarah registers her voiceprint and face with her payment provider for use +in <a href="#dfn-transaction" class="internalDFN">transaction</a>s greater than $1,000. + </li> + <li> +Rico buys a $5,000 car for his daughter through an online dealership. His +<a href="#dfn-payment-processor" class="internalDFN">payment processor</a> requires a password plus two forms of biometric +identification. Rico doesn't have hands, so he uses a face and iris scan to +perform the authentication. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Greater security, +Minimal standardization, +Regulatory acceptance, +Innovation, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Biometrics can be utilized on Point of Sale terminals, mobile, and wearable +devices. Web payment systems based on biometrics could achieve more reliable +information security and convenience. Some forms of biometric authentication, +like facial recognition, can also be used to augment password-based +authentication mechanisms. + </dd> + <dt>Security / Privacy</dt> + <dd> + <ul> + <li> +An individual's privacy should be protected when performing any sort of +biometric authentication. + </li> + <li> +Important data, such as the fingerprint template and private key, and +sensitive code should be stored and executed in a Trusted Execution +Environment (TEE). + </li> + <li> +The fingerprint authentication protocol, which is capable of transmitting a +proof of fingerprint authentication credential, should not contain any +personal fingerprint data. + </li> + </ul> + </dd> + <dt>Accessibility</dt> + <dd>Not everyone can provide fingerprints or detailed iris scans. + Therefore, it is important to offer multiple forms + biometric verification to improev accessibility. + </dd> + </dl> + </section> + + </section> + + </section> + + <section id="payment-processing-2" typeof="bibo:Chapter" resource="#payment-processing-2" property="bibo:hasPart"> + <h3 id="h-payment-processing-2" resource="#h-payment-processing-2"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3 </span>Payment Processing</span></h3> + <p> + </p> + + <section id="initiation-of-processing" typeof="bibo:Chapter" resource="#initiation-of-processing" property="bibo:hasPart"> + <h4 id="h-initiation-of-processing" resource="#h-initiation-of-processing"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3.1 </span>Initiation of Processing</span></h4> + <p> + </p> + + <div class="note"><div class="note-title" aria-level="5" role="heading" id="h-note3"><span>Note</span></div><p class=""> +Before subjecting a person or organization to any financial <a href="#dfn-transaction" class="internalDFN">transaction</a> +commitment (such as a web payment), they should be presented with the option +of reversing, checking, or confirming their choice or submission. It should +also be noted that this does not preclude certain <a href="#dfn-transaction" class="internalDFN">transaction</a> operations +from being automated once they have been authorized by an <a href="#dfn-entity" class="internalDFN">entity</a>. +For more details, see the section on +<a href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/#minimize-error-reversible">Error Prevention (Legal, Financial, Data)</a> +in [<cite><a class="bibref" href="#bib-WCAG20">WCAG20</a></cite>]. + </p></div> + + <dl class="dl-horizontal"> + <dt>Payee-initiated</dt> + <dd>Some payments are initiated by the payee: + <ul> + <li> +Richard choses to pay using a credit card at FlowerFriends. FlowerFriends +initiates payment processing using their <a href="#dfn-payment-processor" class="internalDFN">payment processor</a> to contact the +acquiring bank that handles credit card payments for FlowerFriends. + </li> + <li> +Pitir has authorized RentSeekers to pull money out of his bank account on a +monthly basis in order to pay his rent. RentSeekers initiates a payment using +the ACH network to pull money from Pitir's bank account. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Automatability, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Payee-initiated payments, also known as "pull payments" or +"four corner model payments", are widely deployed and utilized today. + </dd> + <dt>Privacy / Security</dt> + <dd> +One of the biggest security flaws of <a href="#dfn-payee" class="internalDFN">payee</a>-initiated payments is that +all the information necessary to initiate a <a href="#dfn-transaction" class="internalDFN">transaction</a> from the +<a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> financial account is typically transmitted +to the <a href="#dfn-payee" class="internalDFN">payee</a>. For example, credit card information along with +expiration date, name, and CVV2 code are transmitted and could be intercepted +by rogue software running on the <a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> servers. +Special attention should be paid to ensuring that this risky security +model isn't supported by a Web Payments solution. For example, at a minimum, +credit card tokenization such as EMVCo's solution should be supported +alongside other tokenization solutions. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Payer-initiated</dt> + <dd>Some payments are initiated by the payer: + <ul> + <li> +Once Sally has signed into PayPal to pay, PayPal initiates payment processing. + </li> + <li> +Joakim uses his Bitcoin wallet to send money to his friend. + </li> + <li> +Carson (in New York City) sends money to Vladamir (in Moscow) using +his Ripple client, which converts the currency from US Dollars to Rubels in +transit. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Innovation, and +Automatability. + </dd> + <dt>Motivation</dt> + <dd> +Payer-initiated payments, also known as "push payments", +"three-corner model payments", or "peer-to-peer payments", are fundamentally +more secure as no information is given to the <a href="#dfn-payee" class="internalDFN">payee</a> that would +allow them or an attacker to replay the <a href="#dfn-transaction" class="internalDFN">transaction</a> for a different +amount or to a different <a href="#dfn-payee" class="internalDFN">payee</a> at a later date. + </dd> + </dl> + + </section> + + <section id="verification-of-available-funds" typeof="bibo:Chapter" resource="#verification-of-available-funds" property="bibo:hasPart"> + <h4 id="h-verification-of-available-funds" resource="#h-verification-of-available-funds"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3.2 </span>Verification of Available Funds</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Hold Verification</dt> + <dd> +Renne checks into a hotel and is asked for a deposit for any damages to the +room. She uses her phone to provide a proof-of-hold until she checks out of +the hotel, at which time the hold on her funds will be released. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and Transparency. + </dd> + <dt>Motivation</dt> + <dd> +Delivering services or products that are difficult to "undo," such +as performing an oil change, dispensing fuel, or renting a car or hotel +room are examples of situations which may require a two-part +<a href="#dfn-transaction" class="internalDFN">transaction</a>. + </dd> + </dl> + + <section id="non-essential-use-cases-3" typeof="bibo:Chapter" resource="#non-essential-use-cases-3" property="bibo:hasPart"> + <h5 id="h-non-essential-use-cases-3" resource="#h-non-essential-use-cases-3"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3.2.1 </span>Non-essential Use Cases</span></h5> + <dl class="dl-horizontal"> + <dt>Funds Verification</dt> + <dd> +When Mario wishes to <a href="#dfn-purchase" class="internalDFN">purchase</a> a race car through the manufacturer, +the company that makes the car requires a proof of funds from Mario's bank +in order for the customization of the car to proceed. + </dd> + <dt>Goals</dt> + <dd> +Greater security and Transparency. + </dd> + <dt>Motivation</dt> + <dd> +A <a href="#dfn-payee" class="internalDFN">payee</a> may want to limit access to certain services to only those +who they know can afford the good or service because the act of engaging the +<a href="#dfn-payer" class="internalDFN">payer</a> may be costly. + </dd> + </dl> + + </section> + </section> + + <section id="authorization-of-transfer" typeof="bibo:Chapter" resource="#authorization-of-transfer" property="bibo:hasPart"> + <h4 id="h-authorization-of-transfer" resource="#h-authorization-of-transfer"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3.3 </span>Authorization of Transfer</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Proofs</dt> + <dd>Goods and services may be released at different times depending on the type of <a href="#dfn-transaction" class="internalDFN">transaction</a> being performed: + <ul> + <li> +Zhang Wei orders 10 large boxes of envelopes from an online shop in +Tianjin. He uses an escrow service to provide a proof of escrow to the +online shop in order to get them to initiate the shipment. + </li> + <li> +To protect Tibor's privacy when he <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> candy +online, the store asks only for Tibor's verified shipping address and a +proof of payment to send him the chocolates. + </li> + <li> +RockinRadio, SmoothSounds, and classicallyClassic are independent, specialized +music streaming services. They accept proof of <a href="#dfn-purchase" class="internalDFN">purchase</a> from each other +to provide a track that is in their online streaming catalogue even if it was +originally bought from another provider. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Greater security, +Regulatory acceptance, +Innovation, +Transparency, +Automatability, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +At times, it is safe to release a good +when the payment network acknowledges that the funds are on their way. At other +times, it's not safe to release a good or service until it has been proven that +the funds are sitting in the <a title="payee" href="#dfn-payee" class="internalDFN">payee's</a> financial +account. + </dd> + <dt>Exceptions</dt> + <dd> +If a particular expected proof is not provided, the <a href="#dfn-transaction" class="internalDFN">transaction</a> will most +likely fail or transition into an alternate path. + </dd> + </dl> + + </section> + + <section id="completion-of-transfer" typeof="bibo:Chapter" resource="#completion-of-transfer" property="bibo:hasPart"> + <h4 id="h-completion-of-transfer" resource="#h-completion-of-transfer"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3.4 </span>Completion of Transfer</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Variation of Delay</dt> + <dd>When a <a href="#dfn-transaction" class="internalDFN">transaction</a> occurs, the time it takes to transmit and receive +funds often vary according to the <a href="#dfn-payment-scheme" class="internalDFN">payment scheme</a>: + <ul> + <li> +Sophie uses a credit card to buy some gifts for her parents. The shop has +access to the funds in three days. + </li> + <li> +Frank uses an electronic cheque to pay his rent. The rental agency has access +to the funds in 7 days. + </li> + <li> +Felicity has chosen Bitcoin to pay for glasses online. The store +that sells the glasses has almost guaranteed access to the funds within +15 minutes. + </li> + <li> +Vanessa uses Ripple to <a href="#dfn-purchase" class="internalDFN">purchase</a> a new work outfit in US Dollars. +Funds in Euros are available to OnlineWorkClothes within a few minutes. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Transparency, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Exceptions</dt> + <dd> +If the funds are sent but never received, then the <a href="#dfn-payee" class="internalDFN">payee</a> will +select a recourse mechanism that is included in the last <a href="#dfn-transaction" class="internalDFN">transaction</a> +message. + </dd> + </dl> + + <section id="non-essential-use-cases-4" typeof="bibo:Chapter" resource="#non-essential-use-cases-4" property="bibo:hasPart"> + <h5 id="h-non-essential-use-cases-4" resource="#h-non-essential-use-cases-4"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.3.4.1 </span>Non-essential Use Cases</span></h5> + <dl class="dl-horizontal"> + <dt>Notifications</dt> + <dd> +Gavin sends an electronic cheque to WaveMart. WaveMart receives a notification +that payment has been initiated almost immediately. Four days later, WaveMart +receives a notification from their bank that payment has been received. + </dd> + <dt>Goals</dt> + <dd> +Innovation, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +It is difficult for an organization to know when a payment has been received +without depending on proprietary software. + </dd> + <dt>Exceptions</dt> + <dd> +It may also be important to be notified when a payment that was initiated +has not been received, or when a payment has been reversed after it had been +received. + </dd> + </dl> + </section> + </section> + + </section> + + <section id="delivery-of-product-receipt-and-refunds-2" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds-2" property="bibo:hasPart"> + <h3 id="h-delivery-of-product-receipt-and-refunds-2" resource="#h-delivery-of-product-receipt-and-refunds-2"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.4 </span>Delivery of Product/Receipt and Refunds</span></h3> + <section id="delivery-of-product" typeof="bibo:Chapter" resource="#delivery-of-product" property="bibo:hasPart"> + <h4 id="h-delivery-of-product" resource="#h-delivery-of-product"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.4.1 </span>Delivery of Product</span></h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Physical Goods</dt> + <dd> +Giralt orders a bicycle for his daughter through BikeSmart online. The +bicycle is delivered a few days later with a QRCode attached to the package +that only Giralt can access. + </dd> + <dt>Goals</dt> + <dd> +rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +The <a href="#dfn-purchase" class="internalDFN">purchase</a> and delivery of physical goods via an online marketplace +is one of the cornerstones of online commerce. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Virtual Goods</dt> + <dd> +When Lilith buys music from a band at MusicBox and then goes to their +Web site to download additional content, no registration is required, just a +proof of <a href="#dfn-purchase" class="internalDFN">purchase</a> that is sent to the band's website, after which +MusicBox provides Lilith a link to download the additional content. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Minimal standardization, +Innovation, +Automatability, +Portability, and +Monetization. + </dd> + <dt>Motivation</dt> + <dd> +Delivery of product can happen on any site that accepts a proof of purchase +that contains a recognized product identifier. + </dd> + </dl> + + </section> + + <section id="delivery-of-receipt" typeof="bibo:Chapter" resource="#delivery-of-receipt" property="bibo:hasPart"> + <h4 id="h-delivery-of-receipt" resource="#h-delivery-of-receipt"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.4.2 </span>Delivery of Receipt</span></h4> + <dl class="dl-horizontal"> + <dt>Electronic Receipts</dt> + <dd> +George pulls up to a pump at a petrol station. He pays electronically using a +credit card (via his phone). An electronic receipt for the <a href="#dfn-purchase" class="internalDFN">purchase</a> +from the gas station is displayed on his phone. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Innovation, +Automatability, and +Portability. + </dd> + <dt>Motivation</dt> + <dd> +Electronic receipts will make it easier to track expenses, prove that +certain <a title="purchase" href="#dfn-purchase" class="internalDFN">purchases</a> were made, file tax returns, and +simplify management of unnecessary paper. + </dd> + <dt>Privacy / Security</dt> + <dd> +Many merchants want to ensure that receipts are not readable by any party +between them and their customer. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Physical Receipts</dt> + <dd> +Bongani reserves a bus ticket online using his mobile phone. At the bus +terminal he taps his phone to a kiosk and receives a printed physical receipt +that he can use on the bus. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Innovation, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +There will be a transition period from the use of physical receipts and +tickets to digital receipts. In some cases, physical receipts may never be +replaced, so it is important to ensure that digital receipts have a mechanism +to be transformed to physical receipts. + </dd> + <dt>Privacy / Security</dt> + <dd> +Physical receipts should ensure that private information is not exposed on +the receipt. + </dd> + <dt>Accessibility</dt> + <dd> +Implementations should ensure that people who have visual disabilities have +options such as Braille output for physical receipts alongside high-contrast / +large print lettering. + </dd> + </dl> + + </section> + <section id="refunds" typeof="bibo:Chapter" resource="#refunds" property="bibo:hasPart"> + <h4 id="h-refunds" resource="#h-refunds"><span property="xhv:role" resource="xhv:heading"><span class="secno">6.4.3 </span>Refunds</span></h4> + <dl class="dl-horizontal"> + <dt>Common Refunds</dt> + <dd> +At times, it becomes necessary to refund a <a title="payer" href="#dfn-payer" class="internalDFN">payer's</a> +payment: + <ul> + <li> +Pele buys a slice of pizza with a credit card at a local restaurant +and is accidentally charged for five slices of pizza. He notices the +mistake after he pays and requests a refund, which the restaurant +manager approves. The overcharged funds are returned to his account. + </li> + <li> +Teo claims that a blender they purchased online was faulty and returns +the product to the merchant. The merchant provides the customer with a refund +in the form of store credit based on the return policy. + </li> + <li> +<span class="issue">Should we include a scenario where the refund is to a +different payment scheme, e.g., cash?</span> + </li> + <li> +A financial crimes regulator identifies a criminal syndicate that is +operating via a number of fake identities. The fake identities are flagged +and an electronic message is sent to all +<a title="payment processor" href="#dfn-payment-processor" class="internalDFN">payment processors</a> to reverse all +payments sent to the fake identities. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Regulatory acceptance, +Innovation, +Automatability, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Some <a href="#dfn-transaction" class="internalDFN">transaction</a>s are the result of human error or fault. In these +cases, it is helpful to be able to reverse the <a href="#dfn-transaction" class="internalDFN">transaction</a> and provide +a refund to the customer. + </dd> + </dl> + + </section> + + </section> + </section> + + <section id="additional-examples-of-the-payment-phases" typeof="bibo:Chapter" resource="#additional-examples-of-the-payment-phases" property="bibo:hasPart"> + <!--OddPage--><h2 id="additional-examples" resource="#additional-examples"><span property="xhv:role" resource="xhv:heading"><span class="secno">7. </span>Additional Examples of the Payment Phases</span></h2> + <p> +Early in the document we provide an +<a href="#a-simple-example-of-the-payment-phases">example of the payment +phases</a>. In this appendix we provide further examples to +illustrate the phase steps. + </p> + + <div class="issue"><div class="issue-title" aria-level="3" role="heading" id="h-issue5"><span>Issue 5</span></div><p class=""> +Input is requested from experts at each organization providing services +mentioned below as well as engineers and designers of technologies used below. +Specifically, if the payment flows outlined below contain errors or omissions +the group would like to be to ensure that the oversight is corrected as soon +as possible. + </p></div> + + <section id="credit-card-payment-visa-mastercard" typeof="bibo:Chapter" resource="#credit-card-payment-visa-mastercard" property="bibo:hasPart"> + <h3 id="h-credit-card-payment-visa-mastercard" resource="#h-credit-card-payment-visa-mastercard"><span property="xhv:role" resource="xhv:heading"><span class="secno">7.1 </span>Credit Card Payment (Visa, MasterCard)</span></h3> + <p> +This scenario outlines a typical card purchase using the 4 corner model. +Janet is buying an handbag online from a resale shop. + </p> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-purchase-terms-1" property="bibo:hasPart"> + <h4 id="negotiation-of-purchase-terms-1" resource="#negotiation-of-purchase-terms-1"><span property="xhv:role" resource="xhv:heading">Negotiation of Purchase Terms</span></h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Janet searches her favorite resale shop +online to discover a gently used purse that she has always wanted. + </li> + <li> +<strong>Agreement on Terms</strong>: Janet selects the purse and puts it into +the shopping cart before others have a chance to buy it. She agrees with the +shipping terms and adds an extended warranty for the product. + </li> + <li> +<strong>Application of Marketing Elements</strong>: At the time of reviewing +the shopping cart, she is asked if she would like the scarf which goes with +the purse. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments-3" property="bibo:hasPart"> + <h4 id="negotiation-of-payment-instruments-3" resource="#negotiation-of-payment-instruments-3"><span property="xhv:role" resource="xhv:heading">Negotiation of Payment Instruments</span></h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The site takes +Discover, MasterCard, Visa, and debit cards along with secured money order, +Bitcoin, Google Wallet, and ApplePay. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Janet selects her Discover +points card that highlighted by default because she had used it for a previous +purchase with the merchant. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: The merchant asks Janet +for her zip code and the verification code on the back of the card. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#payment-processing-3" property="bibo:hasPart"> + <h4 id="payment-processing-3" resource="#payment-processing-3"><span property="xhv:role" resource="xhv:heading">Payment Processing</span></h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: The merchant initiates an +payment authorization request to their <a href="#dfn-payment-processor" class="internalDFN">payment processor</a>. + </li> + <li> +<strong>Verification of Available Funds</strong>: The payment authorization +request is successful and the <a href="#dfn-payment-processor" class="internalDFN">payment processor</a> sends a response to the +merchant acknowledging that the funds are now held until the merchant +finalizes the payment. + </li> + <li> +<strong>Authorization of Transfer</strong>: After the merchant has packed +the bag for shipping, the merchant sends a message back to the +<a href="#dfn-payment-processor" class="internalDFN">payment processor</a> to finalize the payment. + </li> + <li> +<strong>Completion of Transfer</strong>: The funds are immediately deducted from +Janet's line of credit. The funds take 3 days to be transferred to the +merchant's bank account. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds-3" property="bibo:hasPart"> + <h4 id="delivery-of-product-receipt-and-refunds-3" resource="#delivery-of-product-receipt-and-refunds-3"><span property="xhv:role" resource="xhv:heading">Delivery of Product/Receipt and Refunds</span></h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: The seller sends her a digital receipt, +which she receives by email and directly to her digital wallet. Her +digital wallet forwards the receipt to her budgeting software. The digital +wallet forwards the tracking number embedded in the digital receipt to +her MyUPS Shipping Tracker mobile application. + </li> + + <li> +<strong>Delivery of Product</strong>: The merchant's shipping department packs +and delivers the bag to the shipper, which then sends it to Janet. + </li> + </ul> + </section> + </section> + + <section id="tokenized-payments-applepay-venmo-cybersource" typeof="bibo:Chapter" resource="#tokenized-payments-applepay-venmo-cybersource" property="bibo:hasPart"> + <h3 id="h-tokenized-payments-applepay-venmo-cybersource" resource="#h-tokenized-payments-applepay-venmo-cybersource"><span property="xhv:role" resource="xhv:heading"><span class="secno">7.2 </span>Tokenized Payments (ApplePay / Venmo / CyberSource)</span></h3> + <p> +The following scenario outlines payment using a mobile device and +tokenization. The merchant has provided a mobile application that +customers can download in the example below. This example may apply to +various tokenization payment systems now in use, such as ApplePay, +CyberSource, Venmo, Square, etc. + </p> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-purchase-terms-2" property="bibo:hasPart"> + <h4 id="negotiation-of-purchase-terms-2" resource="#negotiation-of-purchase-terms-2"><span property="xhv:role" resource="xhv:heading">Negotiation of Purchase Terms</span></h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Tom uses the Terrific-Tools mobile +app to select a new ax to purchase and finds a hickory handled model like the +one his father had. + </li> + + <li> +<strong>Agreement on Terms</strong>: Tom selects the ax, which is in the +price range he wanted. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: <em>Not applicable to +this particular use case.</em> + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments-4" property="bibo:hasPart"> + <h4 id="negotiation-of-payment-instruments-4" resource="#negotiation-of-payment-instruments-4"><span property="xhv:role" resource="xhv:heading">Negotiation of Payment Instruments</span></h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The mobile app uses +tokenized <a title="payment instrument" href="#dfn-payment-instrument" class="internalDFN">payment instruments</a> and the +Terrific-Tools Application displays the options available. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Tom chooses to pay +with his tokenization-enabled MasterCard. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Tom uses the +fingerprint recognition feature of his device to authenticate his payment. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#payment-processing-4" property="bibo:hasPart"> + <h4 id="payment-processing-4" resource="#payment-processing-4"><span property="xhv:role" resource="xhv:heading">Payment Processing</span></h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: The mobile app creates an +encrypted transaction and sends it to the payment processor. The payment +processor decrypts the information and processes the transaction. + </li> + <li> +<strong>Verification of Available Funds</strong>: <em>Not applicable to +this particular use case.</em> + </li> + <li> +<strong>Authorization of Transfer</strong>: The payment processor +responds back to the mobile app with an approval. + </li> + <li> +<strong>Completion of Transfer</strong>: The payment processor sends a +transaction receipt to Terrific-Tools. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds-4" property="bibo:hasPart"> + <h4 id="delivery-of-product-receipt-and-refunds-4" resource="#delivery-of-product-receipt-and-refunds-4"><span property="xhv:role" resource="xhv:heading">Delivery of Product/Receipt and Refunds</span></h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: Terrific-Tools sends a transaction +receipt to the mobile app. + </li> + + <li> +<strong>Delivery of Product</strong>: Terrific-Tools, Inc. ships the ax to Tom. + </li> + </ul> + </section> + </section> + + <section id="three-corner-model-payments-paypal-alipay-google-wallet" typeof="bibo:Chapter" resource="#three-corner-model-payments-paypal-alipay-google-wallet" property="bibo:hasPart"> + <h3 id="h-three-corner-model-payments-paypal-alipay-google-wallet" resource="#h-three-corner-model-payments-paypal-alipay-google-wallet"><span property="xhv:role" resource="xhv:heading"><span class="secno">7.3 </span>Three Corner Model Payments (PayPal / Alipay / Google Wallet)</span></h3> + <p> +The following scenario outlines an ideal payment experience using a +<a href="#dfn-payer" class="internalDFN">payer</a>-initiated payment, also known as a "push-payment" or +"three corner model payment". In this scenario, Anna is buying an airline +ticket from a booking website and during the payment process she uses her +fingerprint instead of a password to authorize the payment. + </p> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-purchase-terms-3" property="bibo:hasPart"> + <h4 id="negotiation-of-purchase-terms-3" resource="#negotiation-of-purchase-terms-3"><span property="xhv:role" resource="xhv:heading">Negotiation of Purchase Terms</span></h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Anna searches for a flight on +the booking website. She finds a flight for the ideal price and time. + </li> + + <li> +<strong>Agreement on Terms</strong>: Anna selects the flight and agrees to the +terms and service associated with the ticket. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: <em>Not applicable to +this particular use case.</em> + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments-5" property="bibo:hasPart"> + <h4 id="negotiation-of-payment-instruments-5" resource="#negotiation-of-payment-instruments-5"><span property="xhv:role" resource="xhv:heading">Negotiation of Payment Instruments</span></h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The booking website takes +Alipay, Visa, MasterCard, and China UnionPay for payment. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Anna chooses Alipay for +payment. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Anna logs in the Alipay +with her account name and password. Anna is told that she will pay for the +airline ticket with 600RMB and she confirms it. Anna uses her fingerprint to +approve the payment. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#payment-processing-5" property="bibo:hasPart"> + <h4 id="payment-processing-5" resource="#payment-processing-5"><span property="xhv:role" resource="xhv:heading">Payment Processing</span></h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: Anna's Alipay wallet initiates +the <a href="#dfn-transaction" class="internalDFN">transaction</a>. + </li> + <li> +<strong>Verification of Available Funds</strong>: <em>Not applicable to +this particular use case.</em> + </li> + <li> +<strong>Authorization of Transfer</strong>: Alipay initiates the payment to +the booking website based on Anna's prior fingerprint-based authorization. + </li> + <li> +<strong>Completion of Transfer</strong>: The booking website gets a message +from Alipay that the transfer is complete. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds-5" property="bibo:hasPart"> + <h4 id="delivery-of-product-receipt-and-refunds-5" resource="#delivery-of-product-receipt-and-refunds-5"><span property="xhv:role" resource="xhv:heading">Delivery of Product/Receipt and Refunds</span></h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: The booking website sees that Anna's +airline ticket order has been paid and sends a receipt message to her +digital wallet. + </li> + + <li> +<strong>Delivery of Product</strong>: The booking website sends an email to +Anna with the flight information including the airline, flight number, +departure time, and gate number. + </li> + </ul> + </section> + </section> + + <section id="cryptocurrency-payment-bitcoin-ripple" typeof="bibo:Chapter" resource="#cryptocurrency-payment-bitcoin-ripple" property="bibo:hasPart"> + <h3 id="h-cryptocurrency-payment-bitcoin-ripple" resource="#h-cryptocurrency-payment-bitcoin-ripple"><span property="xhv:role" resource="xhv:heading"><span class="secno">7.4 </span>Cryptocurrency Payment (Bitcoin, Ripple)</span></h3> + <p> +The following scenario outlines an ideal payment experience using Bitcoin, or a +Bitcoin-like cryptocurrency. In this scenario, Lenne is buying a pair of +alpaca socks from an online retailer using a "buy one, get one free" coupon. +The socks are shipped to her home address. + </p> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-purchase-terms-4" property="bibo:hasPart"> + <h4 id="negotiation-of-purchase-terms-4" resource="#negotiation-of-purchase-terms-4"><span property="xhv:role" resource="xhv:heading">Negotiation of Purchase Terms</span></h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Lenne searches for "warm socks, +locally sourced" in her favorite search engine. A pair of Alpaca socks come up +as the first hit as the Alpaca's are nearby where she lives and the online +store (AlpacaToesCo) provides local delivery. She has a coupon in her +digital wallet for the store, but forgot long ago that it is there. + </li> + + <li> +<strong>Agreement on Terms</strong>: Lenne goes to AlpacaToesCo and puts the +socks in her online shopping cart and is shown the price. Lenne provides her +shipping address to AlpacaToes. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: When Lenne puts the socks +in her online shopping cart, she's reminded of the "buy one, get one free" +coupon she has in her wallet. She adds another pair of socks and continues +with the checkout process. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#negotiation-of-payment-instruments-6" property="bibo:hasPart"> + <h4 id="negotiation-of-payment-instruments-6" resource="#negotiation-of-payment-instruments-6"><span property="xhv:role" resource="xhv:heading">Negotiation of Payment Instruments</span></h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The website takes Visa, +Ripple, and Bitcoin for payment. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Lenne has a Visa card +as well as a local Ripple wallet and a cloud-based Bitcoin wallet. Lenne +selects her cloud-based Bitcoin wallet. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Since the value of the +payment is less than $50, Lenne isn't asked for her two-factor authentication +device to approve the <a href="#dfn-purchase" class="internalDFN">purchase</a>. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#payment-processing-6" property="bibo:hasPart"> + <h4 id="payment-processing-6" resource="#payment-processing-6"><span property="xhv:role" resource="xhv:heading">Payment Processing</span></h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: Lenne's cloud-based Bitcoin wallet +provider initiates the <a href="#dfn-transaction" class="internalDFN">transaction</a>. + </li> + <li> +<strong>Verification of Available Funds</strong>: <em>Not applicable to +this particular use case.</em> + </li> + <li> +<strong>Authorization of Transfer</strong>: AlpacaToesCo is sent a message +from the Bitcoin cloud wallet notifying them that the transfer has been +initiated. Lenne is told that she will receive a notification when the +item is shipped. + </li> + <li> +<strong>Completion of Transfer</strong>: AlpacaToesCo gets a message from the +Bitcoin cloud wallet that the transfer is complete. A Bitcoin +<a href="#dfn-transaction" class="internalDFN">transaction</a> ID is included in the message so that AlpacaToesCo can +release the product when the appropriate number of verifications are made on +the <a href="#dfn-transaction" class="internalDFN">transaction</a>. + </li> + </ul> + </section> + + <section class="notoc" typeof="bibo:Chapter" resource="#delivery-of-product-receipt-and-refunds-6" property="bibo:hasPart"> + <h4 id="delivery-of-product-receipt-and-refunds-6" resource="#delivery-of-product-receipt-and-refunds-6"><span property="xhv:role" resource="xhv:heading">Delivery of Product/Receipt and Refunds</span></h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: AlpacaToesCo sees 6 verifications on the +transaction in the Bitcoin blockchain and sends a receipt of sale to Lenne's +cloud wallet. The store notifies Lenne that they have shipped her package. + </li> + + <li> +<strong>Delivery of Product</strong>: AlpacaToesCo ships the package of socks +to Lenne and she receives them the next day. + </li> + </ul> + </section> + </section> + + <section id="electronic-cheque-payment" typeof="bibo:Chapter" resource="#electronic-cheque-payment" property="bibo:hasPart"> + <h3 id="h-electronic-cheque-payment" resource="#h-electronic-cheque-payment"><span property="xhv:role" resource="xhv:heading"><span class="secno">7.5 </span>Electronic Cheque Payment</span></h3> + <p><em>To be completed</em>.</p> + </section> + + <section id="credit-transfer-direct-debit" typeof="bibo:Chapter" resource="#credit-transfer-direct-debit" property="bibo:hasPart"> + <h3 id="h-credit-transfer-direct-debit" resource="#h-credit-transfer-direct-debit"><span property="xhv:role" resource="xhv:heading"><span class="secno">7.6 </span>Credit Transfer / Direct Debit</span></h3> + <p><em>To be completed</em>.</p> + </section> + + </section> + + <section class="appendix" id="future-work" typeof="bibo:Chapter" resource="#future-work" property="bibo:hasPart"> + <!--OddPage--><h2 id="h-future-work" resource="#h-future-work"><span property="xhv:role" resource="xhv:heading"><span class="secno">A. </span>Future Work</span></h2> + + <ul> + <li>Automatic Tax Payment</li> + <li>Person to Person Cash Payment</li> + <li>Government Entitlement Disbursement</li> + </ul> + + </section> + + <section class="appendix" id="acknowledgements" typeof="bibo:Chapter" resource="#acknowledgements" property="bibo:hasPart"> + <!--OddPage--><h2 id="h-acknowledgements" resource="#h-acknowledgements"><span property="xhv:role" resource="xhv:heading"><span class="secno">B. </span>Acknowledgements</span></h2> + <p> +The editors wish to thank the participants of the +<a href="http://www.w3.org/Payments/IG/">Web Payments Interest Group</a> +for discussions about and contributions to this document, as well as the +<a href="https://www.w3.org/community/webpayments/">Web Payments Community +Group</a> for earlier work that informed this document. + </p> + </section> + + + +<section id="references" class="appendix" typeof="bibo:Chapter" resource="#references" property="bibo:hasPart"><!--OddPage--><h2 id="h-references" resource="#h-references"><span property="xhv:role" resource="xhv:heading"><span class="secno">C. </span>References</span></h2><section id="informative-references" typeof="bibo:Chapter" resource="#informative-references" property="bibo:hasPart"><h3 id="h-informative-references" resource="#h-informative-references"><span property="xhv:role" resource="xhv:heading"><span class="secno">C.1 </span>Informative references</span></h3><dl class="bibliography" resource=""><dt id="bib-WCAG20">[WCAG20]</dt><dd>Ben Caldwell; Michael Cooper; Loretta Guarino Reid; Gregg Vanderheiden et al. <a href="http://www.w3.org/TR/WCAG20/" property="dc:references"><cite>Web Content Accessibility Guidelines (WCAG) 2.0</cite></a>. 11 December 2008. W3C Recommendation. URL: <a href="http://www.w3.org/TR/WCAG20/" property="dc:references">http://www.w3.org/TR/WCAG20/</a> +</dd></dl></section></section></body></html> \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/glossary/index.html Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,60 @@ +<dl> + <dt><tdef>entity</tdef></dt> + <dd> +A person, organization, or software agent that is capable of interacting with +the world. + </dd> + <dt><tdef>payer</tdef></dt> + <dd> +An <tref>entity</tref> that provides a source of funds as required by a +<tref>transaction</tref>. + </dd> + <dt><tdef>payee</tdef></dt> + <dd> +An <tref>entity</tref> that receives funds as required by a +<tref>transaction</tref>. + </dd> + <dt><tdef>merchant</tdef></dt> + <dd> +An <tref>entity</tref> receiving payment for goods, services, or other things +of value; abstractly known as a <tref>payee</tref>. + </dd> + <dt><tdef>customer</tdef></dt> + <dd> +An <tref>entity</tref> paying to receive goods, services, or other things +of value; abstractly known as a <tref>payer</tref>. + </dd> + <dt><tdef>transaction</tdef></dt> + <dd> +An instance of an exchange of value such as buying or selling something. + </dd> + <dt><tdef>payment scheme</tdef></dt> + <dd> +Sets of rules and technical standards for the execution of payment transactions +that have to be followed by adhering entities +(<tref title="payment processor">payment processors</tref>, +<tref title="payer">payers</tref> and <tref title="payee">payees</tref>). + </dd> + <dt><tdef>payment instrument</tdef></dt> + <dd> +A mechanism used to transfer value from a <tref>payer</tref> to a +<tref>payee</tref>. + </dd> + <dt><tdef>payment processor</tdef></dt> + <dd> +Submits and processes payments using a particular +<tref>payment instrument</tref> to a payment network. + </dd> + <dt><tdef>credential</tdef></dt> + <dd> +A qualification, achievement, personal quality, aspect of an +<tref>entity</tref>'s background, or verifiable statement by an entity about +another entity. + </dd> + <dt><tdef>payment agent</tdef></dt> + <dd> +A piece of software operating on an <tref title="entity">entity's</tref> +behalf that is capable of executing +<tref title="transaction">transactions</tref>. + </dd> +</dl>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/manifesto/index.html Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,328 @@ +<!DOCTYPE html> +<html> + <head> + <title>The Value Web Manifesto</title> + <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/> + <script src='http://www.w3.org/Tools/respec/respec-w3c-common' 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: "value-web-manifesto", + + // if you wish the publication date to be other than today, set this + //publishDate: "2015-04-16", + + // 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: "CG-DRAFT", + + // if there a publicly available Editor's Draft, this is the link + edDraftURI: "http://w3c.github.io/webpayments-ig/latest/manifesto/index.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: [], + + // editors, add as many as you like + // only "name" is required + editors: [ + { name: "Adrian Hope-Bailie", url: "http://medium.com/@ahopebailie", + company: "Ripple Labs", companyURL: "http://www.ripplelabs.com/" } + ], + + // 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: "Adrian Hope-Bailie", url: "http://medium.com/@ahopebailie", + company: "Ripple Labs", companyURL: "http://www.ripplelabs.com/" }, + { name: "Ian Jacobs", url: "http://www.w3.org/People/Jacobs/", + company: "W3C", companyURL: "http://www.w3.org/" }, + { name: "Manu Sporny", url: "https://manu.sporny.org/", + company: "Digital Bazaar", companyURL: "http://digitalbazaar.com/" } + ], + + otherLinks: [{ + key: "Version control", + data: [{ + value: "Github Repository", + href: "https://github.com/w3c/webpayments-ig" + }, { + value: "Issues", + href: "http://www.w3.org/Payments/IG/track/products/8" + }] + }], + + // maximum level of table of contents + maxTocLevel: 3, + + // name of the WG + wg: "Web Payments Interest Group", + + // URI of the public WG page + wgURI: "http://www.w3.org/Payments/IG/", + + // name of the public mailing to which comments are due + wgPublicList: "public-webpayments-ig-comments", + + // 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: "http://www.w3.org/2004/01/pp-impl/73816/status", + + }; + </script> + </head> +<body> + <section id='abstract'> + <p> +This document is the vision statment of the W3C Web Payents Interest Group. +It describes a future that the group aspires to in which value exchange +is performed easily and securely on the Open Web Platform and provides the +background to the use cases, goals and architectural vision of the group. + </p> + </section> + + <section id='sotd'> + <p> +This document is a work in progress and is being released early and often +using an agile process; it is currently incomplete. + </p> + </section> + + <section> + <h2>Introduction</h2> + <p> +The World Wide Web has had a tremendous global impact, increasing access to +information and education. However, this has not yet translated into ubiquitous +access to efficient financial systems and the ability to transact with anyone +in the world. + </p> + <p> +The Web connected fragmented documentation systems with a common set of standards. +Today’s systems of value exchange lack a set of common standards, and are +still proprietary, disconnected, and opaque. + </p> + <p> +This document outlines a vision for the Web where value is exchanged as +freely and easily as information. The Web unified varied and disparate +closed information networks through open standards and protocols. In the +same way, we should the Value Web will create an open and interconnected network +of value exchange linking all of the closed networks that exist today. + </p> + <p> +Realising this vision would have profound and far reaching economic and social +impacts on financial inclusion, development of small businesses, liquidity of +markets, and greater velocity and efficiency of money. + </p> + </section> + <section> + <h2>Principles of the Value Web</h2> + <p> +This vision can only be realised through the collaboration of a variety of +stakeholders united in their agreement with the following principles: + </p> + <section> + <h3>There are many value networks and there always will be</h3> + <p> +Ownership of anything of value is recorded and tracked within numerous and +diverse networks of trust. The changing ownership or transfer of value within +those networks is recorded in a ledger of some form or another. These ledgers +are maintained by custodians such as... + </p> + <ul> + <li>Commercial and Retail Banks</li> + <li>Central banks</li> + <li>Clearinghouses</li> + <li>Digital wallets</li> + <li>Registers of deeds</li> + <li>Stock Exchanges</li> + <li>Blockchains</li> + <li>Patent offices</li> + </ul> + <p> +… and many more. + </p> + <p> +Greater diversity of custodians, ledgers and assets is a good thing, but without +a set of Web standards to connect them, increasing the number and diversity +will quickly become unsustainable. + </p> + <p> +The world is tending towards increased global trade and interconnectivity. The +lack of standards is likely to continue to increase costs and stand in the way +of economic progress. + </p> + </section> + <section> + <h3>There are many ways to connect value networks</h3> + <p> +There are numerous and varied methods of moving value between owners, both within +the same network and between disparate networks. Each one of these methods has +different strengths and weaknesses depending on the scenario. + </p> + <p> +Some methods of moving value between owners have higher risks and lower fees. + </p> + <p> +[Illustration - Cash] + </p> + <p> +Others have lower risks and higher fees. + </p> + <p> +[Illustration - Cards] + </p> + <p> +The open architecture of the Web enables a rapid pace of innovation which has +increasingly resulted in new types of value exchange methods. + </p> + <p> +[Illustration - Crypto-currencies] + </p> + <p> +This vision embraces all of these existing technologies as well as those that +are in active development today. + </p> + </section> + <section> + <h3>Value moves as freely as information on the Web</h3> + <p> +The Web increased efficiency and lowered costs of information exchange by many +orders of magnitude. These sorts of efficiency gains are possible via the Web +for the exchange of value. + </p> + <p> +[Illustration - ?] + </p> + </section> + <section> + <h3>The Value Web is open and accessible</h3> + <p> +It is a long-standing W3C principal to create a Web that can be used by all people +on any device. Nobody is arbitrarily denied access to the Internet of Value. + </p> + <p> +[Illustration - diverse users of the Value Web] + </p> + </section> + <section> + <h3>The Value Web is built on trust and security</h3> + <p> +Value exchange on the Web is done in an environment of honesty and trust built on +secure and resilient systems. It provides tools that allow law-abiding consumers, +merchants and financial institutions to have confidence in the individuals and entities +with whom they transact, to be free to choose who those individuals and entities are, +and to be able to trust that these counterparties are who they claim to be. + </p> + <p> +[Illustration - trust/shaking hands, security/lock] + </p> + </section> + <section> + <h3>The Value Web is simultaneously private and transparent</h3> + <p> +There is a need for transparency in moving value on a global network between entities +that are subject to different legal and regulatory systems in different jurisdictions. +However, privacy as a fundamental right of all participants. + </p> + <p> +The future of value exchange via the Web offers the transparency required for all +participants to operate within the law but ensures that the privacy of participants +is always guaranteed, through the use of secure open protocols incorporating end-to-end +data protection. + </p> + <p> +[Illustration - masked/protected data] + </p> + </section> + <section> + <h3>No single entity controls the Value Web</h3> + <p> +The Web is a public good and is not subject to the whims of one group or another. It is +distributed, global, and neutral with respect to payment networks, currencies, +technologies, service providers, and participating entities. + </p> + <p> +[Illustration - distributed system] + </p> + </section> + <section> + <h3>The Value Web is built on open standards</h3> + <p> +In order for value networks, settlement systems, and related services to compete on a +level playing field, the foundations of value exchange via the Web must be open, transparent, +and neutral. Customers, merchants, financial institutions, and governments stand to benefit +from a strong foundation built on open standards.. + </p> + <p> +The Value Web is built on OpenStand’s <a href="http://open-stand.org/about-us/principles/">five +principles for modern standards</a> and it’s standards are free to acquire, free to adopt, +and not encumbered by patents. + </p> + <p> +[Illustration - Open stand logo?] + </p> + </section> + <section> + <h3>The Value Web is simple and extensible</h3> + <p> +Today’s financial system is complex and one of the key challenges for the architects of the Web +will be to abstract key areas of complexity and create a simple, universal framework that supports +existing systems while enabling a smooth transition to more advanced, extensible, and equitable +systems. + </p> + <p> +Rules and regulations around the world differ widely. By creating an extensible set of standards, +the Web enables individuals or entire value networks to work out the details that are relevant +to them. This provides institutions with the flexibility to comply with their local regulations +and follow their local customs while connecting globally. + </p> + <p> +The standards for value exchange on the Web should be clearly documented to lower the barrier to +entry for any entity that wishes to integrate with, or extend it. + </p> + <p> +[Illustration - developer] + </p> + </section> + </section> + + <section> + <h2>Building an Equitable Global Economy via the Web</h2> + <p> +The Web connects three billion people today and will connect at least three billion more by the +year 2020. It is ubiquitous and that ubiquity will only grow over the next decade. The Web is the +best connector of information systems that exists today, but there is still much work that needs +to be done when connecting the economic systems and value networks that span the world over. + </p> + <p> +It is our vision to connect the economic systems of the world via the Web using the principles +outlined in this document. Doing so will result in an global architecture for value exchange, built +openly, secure by design, and accessible to all. + </p> + </section> + + <section class="appendix"> + <h2>Acknowledgements</h2> + <p> +The editors wish to thank the participants of the +<a href="http://www.w3.org/Payments/IG/">Web Payments Interest Group</a> +for discussions about and contributions to this document, as well as the +<a href="https://www.w3.org/community/webpayments/">Web Payments Community +Group</a> for earlier work that informed this document. + </p> + </section> + + </body> +</html>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/model_1A_user_agent_pass_thru.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="78 41 869 527" width="869pt" height="527pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-13 04:42Z</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-6 -3 7 6" markerWidth="7" markerHeight="6" color="gray"><g><path d="M -4.8 0 L 0 1.8 L 0 -1.8 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Local Payment Agent</title><rect fill="white" width="972" height="1106"/><g><title>Layer 1</title><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" fill="white"/><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(159.26644 406.35447)" fill="#404040"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="#404040" x="53.907045" y="9" textLength="68.027344">Payment Service</tspan></text><path d="M 183.30316 98.666667 L 323.97917 98.666667 L 323.97917 260.66667 L 183.30316 260.66667 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="184.97917" y="98.666667" width="81.618273" height="18" fill="#2f72ff"/><rect x="184.97917" y="98.666667" width="81.618273" height="18" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(189.97917 102.166667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="16.051324" y="9" textLength="39.515625">Computer</tspan></text><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" fill="#507baf"/><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 133.165406)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="30.993408" y="9" textLength="36.013184">Browser</tspan></text><circle cx="215.97917" cy="137.66667" r="9.0000144" fill="#404040"/><circle cx="215.97917" cy="137.66667" r="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="210.07596" y="132.959915" width="11.821943" height="2.2831108" fill="white"/><rect x="213.27917" y="136.40551" width="8.618738" height="2.2831108" fill="white"/><rect x="213.27917" y="139.83018" width="8.618738" height="2.2831108" fill="white"/><rect x="210.07596" y="136.24883" width="2.2831108" height="5.864461" fill="white"/><path d="M 199.97917 206.66667 L 303.97917 206.66667 C 305.08374 206.66667 305.97917 207.5621 305.97917 208.66667 L 305.97917 231.66667 C 305.97917 232.77124 305.08374 233.66667 303.97917 233.66667 L 199.97917 233.66667 C 198.8746 233.66667 197.97917 232.77124 197.97917 231.66667 L 197.97917 208.66667 C 197.97917 207.5621 198.8746 206.66667 199.97917 206.66667 Z" fill="#e0edff"/><path d="M 199.97917 206.66667 L 303.97917 206.66667 C 305.08374 206.66667 305.97917 207.5621 305.97917 208.66667 L 305.97917 231.66667 C 305.97917 232.77124 305.08374 233.66667 303.97917 233.66667 L 199.97917 233.66667 C 198.8746 233.66667 197.97917 232.77124 197.97917 231.66667 L 197.97917 208.66667 C 197.97917 207.5621 198.8746 206.66667 199.97917 206.66667 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 214.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="black" x="35.913086" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="black" x="44.078125" y="9" textLength="18.008789">allet</tspan></text><ellipse cx="216.04889" cy="220.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="216.04889" cy="220.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.90534 216.37798 L 221.00079 216.20038 C 221.55298 216.19067 222.0085 216.63044 222.01822 217.18264 C 222.01822 217.18264 222.01822 217.18264 222.01822 217.18264 L 222.11921 222.92374 C 222.12893 223.47594 221.68916 223.93146 221.13696 223.94118 L 211.04151 224.11877 C 210.48931 224.12848 210.03379 223.68871 210.02408 223.13651 C 210.02408 223.13651 210.02408 223.13651 210.02408 223.13651 L 209.92308 217.39541 C 209.91337 216.84321 210.35314 216.38769 210.90534 216.37798 Z" fill="white"/><path d="M 210.90534 216.37798 L 221.00079 216.20038 C 221.55298 216.19067 222.0085 216.63044 222.01822 217.18264 C 222.01822 217.18264 222.01822 217.18264 222.01822 217.18264 L 222.11921 222.92374 C 222.12893 223.47594 221.68916 223.93146 221.13696 223.94118 L 211.04151 224.11877 C 210.48931 224.12848 210.03379 223.68871 210.02408 223.13651 C 210.02408 223.13651 210.02408 223.13651 210.02408 223.13651 L 209.92308 217.39541 C 209.91337 216.84321 210.35314 216.38769 210.90534 216.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 221.24159 218.1578 L 213.93852 218.12573 L 219.48688 215.0215 Z" fill="white"/><path d="M 221.24159 218.1578 L 213.93852 218.12573 L 219.48688 215.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 220.82605 218.08064 L 214.74869 218.05396 L 219.36584 215.47073 Z" fill="#3f3f3f"/><path d="M 220.82605 218.08064 L 214.74869 218.05396 L 219.36584 215.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 221.42843 218.35922 C 221.42843 218.43887 221.20157 218.50405 220.9243 218.50405 L 213.8665 218.50405 C 213.58923 218.50405 213.36238 218.43887 213.36238 218.35922 L 213.36238 218.06956 C 213.36238 217.99005 213.58923 217.92473 213.8665 217.92473 L 220.9243 217.92473 C 221.20157 217.92473 221.42843 217.99005 221.42843 218.06956 Z" fill="#3f3f3f"/><path d="M 221.42843 219.23351 C 221.42843 219.31316 221.20157 219.37834 220.9243 219.37834 L 213.8665 219.37834 C 213.58923 219.37834 213.36238 219.31316 213.36238 219.23351 L 213.36238 218.94385 C 213.36238 218.86433 213.58923 218.79902 213.8665 218.79902 L 220.9243 218.79902 C 221.20157 218.79902 221.42843 218.86433 221.42843 218.94385 Z" fill="#3f3f3f"/><path d="M 210.0769 224.28471 L 217.65513 226.62082 C 218.1829 226.78351 218.74264 226.48756 218.90534 225.95978 C 218.93514 225.86312 218.9501 225.76249 218.9497 225.66134 L 218.92542 219.35352 C 218.92374 218.91614 218.638 218.5306 218.22002 218.40175 L 210.64179 216.06564 C 210.11401 215.90294 209.55427 216.1989 209.39158 216.72668 C 209.36178 216.82334 209.34682 216.92396 209.34721 217.02511 L 209.37149 223.33293 C 209.37318 223.77032 209.65892 224.15586 210.0769 224.28471 Z" fill="#3f3f3f"/><path d="M 210.0769 224.28471 L 217.65513 226.62082 C 218.1829 226.78351 218.74264 226.48756 218.90534 225.95978 C 218.93514 225.86312 218.9501 225.76249 218.9497 225.66134 L 218.92542 219.35352 C 218.92374 218.91614 218.638 218.5306 218.22002 218.40175 L 210.64179 216.06564 C 210.11401 215.90294 209.55427 216.1989 209.39158 216.72668 C 209.36178 216.82334 209.34682 216.92396 209.34721 217.02511 L 209.37149 223.33293 C 209.37318 223.77032 209.65892 224.15586 210.0769 224.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.54411 224.17887 L 217.21924 226.23658 C 217.74702 226.39928 218.30675 226.10332 218.46945 225.57554 C 218.49857 225.48107 218.51352 225.3828 218.51382 225.28395 L 218.53085 219.59696 C 218.53217 219.15704 218.24584 218.76793 217.82545 218.63834 L 211.15032 216.58062 C 210.62254 216.41793 210.0628 216.71389 209.9001 217.24166 C 209.87098 217.33613 209.85603 217.4344 209.85573 217.53325 L 209.8387 223.22025 C 209.83738 223.66016 210.12371 224.04927 210.54411 224.17887 Z" fill="white"/><path d="M 210.54411 224.17887 L 217.21924 226.23658 C 217.74702 226.39928 218.30675 226.10332 218.46945 225.57554 C 218.49857 225.48107 218.51352 225.3828 218.51382 225.28395 L 218.53085 219.59696 C 218.53217 219.15704 218.24584 218.76793 217.82545 218.63834 L 211.15032 216.58062 C 210.62254 216.41793 210.0628 216.71389 209.9001 217.24166 C 209.87098 217.33613 209.85603 217.4344 209.85573 217.53325 L 209.8387 223.22025 C 209.83738 223.66016 210.12371 224.04927 210.54411 224.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 489.98514 98.666667 L 652.47917 98.666667 L 652.47917 256.16667 L 489.98514 256.16667 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" fill="silver"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(494.63542 101.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="9.8218924" y="9" textLength="111.032227">Merchant E-Commerce Site</tspan></text><path d="M 129.68966 70.38161 C 129.67511 70.50616 129.56721 70.595397 129.44945 70.580007 L 127.67944 70.34902 C 127.56085 70.334064 127.47651 70.219935 127.49149 70.095384 L 127.75436 67.82723 C 127.770216 67.70268 127.858844 67.611195 127.955615 67.623423 C 128.052386 67.636556 128.12945 67.645614 128.12945 67.645614 L 128.06821 68.17461 L 129.568076 68.36981 L 129.62972 67.84127 L 129.80399 67.86301 C 129.90074 67.876597 129.96754 67.988012 129.95212 68.11256 Z M 129.438324 67.592624 L 129.371955 68.16057 L 128.30714 68.02243 L 128.373076 67.45449 Z M 127.0145 70.214508 L 124.57742 70.214508 L 124.57742 69.38387 C 124.57742 68.11256 124.17837 67.17595 123.45178 66.656016 C 123.72495 66.33536 124.118 66.161894 124.62109 66.158724 L 124.543594 66.02602 C 124.50035 65.953557 124.562004 65.89604 124.681034 65.89604 L 124.86172 65.89604 C 124.96148 65.89604 125.113464 65.963522 125.20125 66.05048 L 126.14106 66.982107 L 127.08174 66.05048 C 127.16866 65.963522 127.312525 65.89604 127.40286 65.89604 L 127.566846 65.89604 C 127.68544 65.89604 127.74625 65.95673 127.70214 66.031457 C 127.65762 66.107092 127.62165 66.168236 127.62165 66.168236 C 128.325546 66.215338 128.798655 66.613896 128.999906 67.3005 L 128.17997 67.19271 L 128.15985 67.367984 L 127.82931 67.32405 C 127.68544 67.30639 127.546705 67.49344 127.51717 67.743894 L 127.25598 69.98849 C 127.24187 70.11304 127.13353 70.214508 127.0145 70.214508 M 124.226754 72.379854 L 122.633566 72.379854 C 122.5201 71.889804 122.4349 71.37937 122.4349 70.945047 C 122.4349 69.981714 122.13433 71.218584 122.08595 72.379854 L 117.84287 72.379854 C 117.79493 71.218584 117.493485 69.981714 117.493485 70.945047 C 117.493485 71.37937 117.40787 71.889804 117.296114 72.379854 L 115.67681 72.379854 L 115.67681 69.38387 C 115.67681 67.66373 116.45606 66.656016 117.83901 66.56362 C 117.8373 66.55864 118.27488 66.54596 118.27488 66.54596 C 118.545485 67.14153 119.128205 67.495702 119.88049 67.495702 C 120.726536 67.495702 121.32468 67.160552 121.62867 66.54596 C 122.05084 66.557282 122.04784 66.562717 122.04784 66.562717 C 123.442364 66.648315 124.226754 67.65694 124.226754 69.38387 Z M 119.89633 61.61155 C 121.24761 61.61155 121.898414 62.240193 121.898414 63.752436 C 121.898414 65.264233 121.24761 66.49025 119.89633 66.49025 C 118.54462 66.49025 117.89425 65.264233 117.89425 63.752436 C 117.89425 62.240193 118.54462 61.61155 119.89633 61.61155 M 126.12222 62.59481 C 127.06203 62.59481 127.51459 63.03094 127.51459 64.08351 C 127.51459 65.135157 127.06203 65.98707 126.12222 65.98707 C 125.18198 65.98707 124.729415 65.135157 124.729415 64.08351 C 124.729415 63.03094 125.18198 62.59481 126.12222 62.59481 M 122.21611 53.666667 C 115.16771 53.666667 109.452624 59.709807 109.452624 67.165987 C 109.452624 74.622177 115.16771 80.666667 122.21611 80.666667 C 129.26492 80.666667 134.97917 74.622177 134.97917 67.165987 C 134.97917 59.709807 129.26492 53.666667 122.21611 53.666667" fill="#3c3c3b"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" fill="#6d6d6d"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" stroke="#6d6d6d" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 133.66667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="43.577148" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="51.913574" y="9" textLength="29.509277">eb Site</tspan></text><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" fill="#404040"/><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 520.30424 136.89692 L 523.20114 136.89692 L 523.20114 137.19875 L 520.30424 137.19875 Z M 520.30424 137.43198 L 523.20114 137.43198 L 523.20114 137.73381 L 520.30424 137.73381 Z M 520.30414 137.942895 L 523.20114 137.942895 L 523.20114 138.24473 L 520.30414 138.24473 Z M 523.5374 136.208554 L 519.96796 136.208554 C 519.79792 136.208554 519.6601 136.32996 519.6601 136.47974 L 519.6601 140.7967 C 519.6601 140.94649 519.79792 141.06789 519.96796 141.06789 L 523.5374 141.06789 C 523.70745 141.06789 523.84527 140.94649 523.84527 140.7967 L 523.84527 136.47974 C 523.84527 136.32996 523.70745 136.208554 523.5374 136.208554" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" fill="#ccc"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" stroke="#b3b3b3" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 219.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="black" x="23.981934" y="9" textLength="77.036133"> Payment System</tspan></text><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" fill="white"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" fill="white"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" fill="#3f3f3f"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 527.42843 222.35922 C 527.42843 222.43887 527.20157 222.50405 526.9243 222.50405 L 519.8665 222.50405 C 519.58923 222.50405 519.36238 222.43887 519.36238 222.35922 L 519.36238 222.06956 C 519.36238 221.99005 519.58923 221.92473 519.8665 221.92473 L 526.9243 221.92473 C 527.20157 221.92473 527.42843 221.99005 527.42843 222.06956 Z" fill="#3f3f3f"/><path d="M 527.42843 223.2335 C 527.42843 223.31316 527.20157 223.37834 526.9243 223.37834 L 519.8665 223.37834 C 519.58923 223.37834 519.36238 223.31316 519.36238 223.2335 L 519.36238 222.94385 C 519.36238 222.86433 519.58923 222.79902 519.8665 222.79902 L 526.9243 222.79902 C 527.20157 222.79902 527.42843 222.86433 527.42843 222.94385 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" fill="white"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(92.541667 90.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".49487305" y="9" textLength="39.010254">Customer</tspan></text><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" fill="#d2c9de"/><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" stroke="#669" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(208.3125 379.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="black" x="20.116943" y="9" textLength="37.516113">Payment</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="black" x="17.539551" y="20" textLength="27.997559">Agent </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="black" x="45.20752" y="20" textLength="15.00293">API</tspan></text><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" fill="#404040"/><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" fill="white"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" fill="white"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" fill="#3f3f3f"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.7966 385.59456 C 219.7966 385.66522 219.59537 385.72303 219.34941 385.72303 L 213.08868 385.72303 C 212.84273 385.72303 212.64149 385.66522 212.64149 385.59456 L 212.64149 385.3376 C 212.64149 385.26708 212.84273 385.20914 213.08868 385.20914 L 219.34941 385.20914 C 219.59537 385.20914 219.7966 385.26708 219.7966 385.3376 Z" fill="#3f3f3f"/><path d="M 219.7966 386.3701 C 219.7966 386.44077 219.59537 386.49858 219.34941 386.49858 L 213.08868 386.49858 C 212.84273 386.49858 212.64149 386.44077 212.64149 386.3701 L 212.64149 386.11316 C 212.64149 386.04263 212.84273 385.98469 213.08868 385.98469 L 219.34941 385.98469 C 219.59537 385.98469 219.7966 386.04263 219.7966 386.11316 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" fill="white"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/></g><g><title>Legend</title><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(800.68874 154.751145)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9873047" y="9" textLength="29.012695">Human</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="8.9941406" y="20" textLength="21.00586">Actor</tspan></text><path d="M 859.023 169.04828 C 859.00844 169.17283 858.90054 169.26206 858.7828 169.24667 L 857.0128 169.01569 C 856.8942 169.00073 856.80984 168.8866 856.8248 168.76205 L 857.0877 166.4939 C 857.10355 166.36935 857.1922 166.27786 857.28895 166.29009 C 857.3857 166.30322 857.4628 166.31228 857.4628 166.31228 L 857.40155 166.84128 L 858.9014 167.03648 L 858.96306 166.50794 L 859.1373 166.52968 C 859.23407 166.54326 859.30087 166.65468 859.28546 166.77923 Z M 858.77166 166.25929 L 858.7053 166.82724 L 857.64047 166.6891 L 857.7064 166.12116 Z M 856.34784 168.88117 L 853.91075 168.88117 L 853.91075 168.05054 C 853.91075 166.77923 853.5117 165.84262 852.7851 165.32268 C 853.0583 165.002025 853.45133 164.82856 853.9544 164.82539 L 853.87693 164.69269 C 853.8337 164.62022 853.89534 164.56271 854.01437 164.56271 L 854.19505 164.56271 C 854.2948 164.56271 854.4468 164.63019 854.5346 164.71715 L 855.4744 165.64877 L 856.41507 164.71715 C 856.502 164.63019 856.64586 164.56271 856.7362 164.56271 L 856.9002 164.56271 C 857.0188 164.56271 857.0796 164.6234 857.03547 164.69812 C 856.99095 164.77376 856.955 164.8349 856.955 164.8349 C 857.6589 164.882 858.132 165.28056 858.33324 165.96717 L 857.5133 165.85938 L 857.4932 166.03465 L 857.16264 165.99072 C 857.0188 165.97305 856.88004 166.16011 856.8505 166.41056 L 856.5893 168.65516 C 856.5752 168.77971 856.46687 168.88117 856.34784 168.88117 M 853.5601 171.04652 L 851.9669 171.04652 C 851.85344 170.55647 851.76823 170.04604 851.76823 169.61171 C 851.76823 168.64838 851.46766 169.88525 851.4193 171.04652 L 847.1762 171.04652 C 847.12826 169.88525 846.8268 168.64838 846.8268 169.61171 C 846.8268 170.04604 846.7412 170.55647 846.62945 171.04652 L 845.01015 171.04652 L 845.01015 168.05054 C 845.01015 166.3304 845.7894 165.32268 847.17235 165.23029 C 847.17064 165.22531 847.6082 165.212625 847.6082 165.212625 C 847.8788 165.8082 848.46154 166.16237 849.2138 166.16237 C 850.05987 166.16237 850.658 165.82722 850.962 165.212625 C 851.38417 165.22395 851.3812 165.22938 851.3812 165.22938 C 852.7757 165.31498 853.5601 166.3236 853.5601 168.05054 Z M 849.22966 160.27822 C 850.58094 160.27822 851.23175 160.90686 851.23175 162.4191 C 851.23175 163.9309 850.58094 165.15692 849.22966 165.15692 C 847.87795 165.15692 847.2276 163.9309 847.2276 162.4191 C 847.2276 160.90686 847.87795 160.27822 849.22966 160.27822 M 855.45556 161.26148 C 856.39537 161.26148 856.84793 161.69761 856.84793 162.75018 C 856.84793 163.80182 856.39537 164.65374 855.45556 164.65374 C 854.5153 164.65374 854.06275 163.80182 854.06275 162.75018 C 854.06275 161.69761 854.5153 161.26148 855.45556 161.26148 M 851.54944 152.33333 C 844.50104 152.33333 838.78596 158.37647 838.78596 165.83265 C 838.78596 173.28884 844.50104 179.33333 851.54944 179.33333 C 858.59826 179.33333 864.3125 173.28884 864.3125 165.83265 C 864.3125 158.37647 858.59826 152.33333 851.54944 152.33333" fill="#3c3c3b"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.3407 207.59389 L 857.0108 207.59389 L 857.0108 208.02222 L 853.3407 208.02222 Z M 853.3407 208.35319 L 857.0108 208.35319 L 857.0108 208.78153 L 853.3407 208.78153 Z M 853.34055 209.07824 L 857.0108 209.07824 L 857.0108 209.50658 L 853.34055 209.50658 Z M 857.4368 206.61702 L 852.91465 206.61702 C 852.6992 206.61702 852.5246 206.7893 852.5246 207.00186 L 852.5246 213.12812 C 852.5246 213.34068 852.6992 213.51297 852.91465 213.51297 L 857.4368 213.51297 C 857.65224 213.51297 857.82684 213.34068 857.82684 213.12812 L 857.82684 207.00186 C 857.82684 206.7893 857.65224 206.61702 857.4368 206.61702" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.16547 200.63907)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9941406" y="9" textLength="30.00586">System</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.9941406" y="20" textLength="21.00586">Actor</tspan></text><text transform="translate(779.3125 115.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="1.5386966" y="9" textLength="48.019043">User Agent)</tspan></text><circle cx="851.04557" cy="121.066406" r="13.266949" fill="#404040"/><circle cx="851.04557" cy="121.066406" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="842.34364" y="114.12817" width="17.426762" height="3.3655407" fill="white"/><rect x="847.0655" y="119.207336" width="12.704908" height="3.3655407" fill="white"/><rect x="847.0655" y="124.25565" width="12.704908" height="3.3655407" fill="white"/><rect x="842.34364" y="118.97637" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" fill="white"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" fill="white"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" fill="#3f3f3f"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 859.07835 250.66499 C 859.07835 250.78241 858.74394 250.87848 858.3352 250.87848 L 847.9313 250.87848 C 847.52257 250.87848 847.18815 250.78241 847.18815 250.66499 L 847.18815 250.238 C 847.18815 250.1208 847.52257 250.02451 847.9313 250.02451 L 858.3352 250.02451 C 858.74394 250.02451 859.07835 250.1208 859.07835 250.238 Z" fill="#3f3f3f"/><path d="M 859.07835 251.95378 C 859.07835 252.0712 858.74394 252.16727 858.3352 252.16727 L 847.9313 252.16727 C 847.52257 252.16727 847.18815 252.0712 847.18815 251.95378 L 847.18815 251.5268 C 847.18815 251.40958 847.52257 251.3133 847.9313 251.3133 L 858.3352 251.3133 C 858.74394 251.3133 859.07835 251.40958 859.07835 251.5268 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" fill="white"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(765.6245 248.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4633789" y="9" textLength="61.53662">Payment Agent</tspan></text><text transform="translate(771.8125 357.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".47216797" y="9" textLength="52.527832">Payment info</tspan></text><text transform="translate(779.3125 439.27158)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="22.505175" y="9" textLength="23.510742">Payer</tspan></text><path d="M 835.11176 435.27032 L 862.2582 435.27032 L 862.2582 454.27285 L 835.11176 454.27285 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" fill="#2f72ff"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 835.11176 466.3308 L 862.2582 466.3308 L 862.2582 485.33333 L 835.11176 485.33333 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" fill="silver"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(779.3125 466.27158)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="20.496874" y="9" textLength="25.519043">Payee</tspan></text><text transform="translate(734.8125 393.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".96240234" y="9" textLength="89.0376">Payment Confrimation</tspan></text><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z" fill="white"/><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z M 863.3125 357.19087 C 863.3125 354.76492 863.29045 354.76492 858.7972 354.76492 L 858.7972 354.76492 C 858.7972 349.3598 858.7972 349.33333 856.7756 349.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(848.9339 356.83333)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z" fill="white"/><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z M 864.3125 395.19087 C 864.3125 392.76492 864.29045 392.76492 859.7972 392.76492 L 859.7972 392.76492 C 859.7972 387.3598 859.7972 387.33333 857.7756 387.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="852.6406" cy="402.16146" r="8.028609" fill="#404040"/><circle cx="852.6406" cy="402.16146" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.0018 402.91968 L 851.7071 405.20206 L 856.8698 399.87164" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z" fill="white"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z M 863.3125 280.19087 C 863.3125 277.76492 863.29045 277.76492 858.7972 277.76492 L 858.7972 277.76492 C 858.7972 272.3598 858.7972 272.33333 856.7756 272.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="852.0625" cy="287.46754" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="852.0625" cy="287.46754" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.6486 288.12256 L 853.5264 288.12256 L 853.5264 288.12256" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.5264 288.12256 L 853.5264 288.12256 L 855.24984 284.51406" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="852.7647" y1="286.69532" x2="849.01764" y2="286.69532" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 853.19555 285.45658 L 853.19555 285.45658 L 848.67914 285.45658" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 853.68795 284.21784 L 853.68795 284.21784 L 848.14056 284.21784" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 856.9733 284.0832 L 856.9733 284.0832 L 855.24984 284.0832" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="849.54087" cy="289.99413" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="849.54087" cy="289.99413" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="853.41866" cy="289.99413" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="853.41866" cy="289.99413" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(742.8125 281.96754)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9560547" y="9" textLength="81.043945">Goods and Services</tspan></text><text transform="translate(775.4462 318.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.795907" y="9" textLength="28.516113">Invoice</tspan></text><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z" fill="white"/><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z M 861.65135 319.19087 C 861.65135 316.76492 861.6293 316.76492 857.13605 316.76492 L 857.13605 316.76492 C 857.13605 311.3598 857.13605 311.33333 855.11443 311.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="830.4222" y="296.35417" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(830.4222 296.35417) scale(.15356445)"/></g><text transform="translate(710.375 498.875)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="9" textLength="36.492188">W3C - W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="36.333984" y="9" textLength="112.55713">eb Payments Interest Group</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="20" textLength="38.01709">Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="37.524902" y="20" textLength="74.052246">Agent Conceptual </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="111.08496" y="20" textLength="48.019043">Architecture</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="31" textLength="61.523438">Author: Patrick </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="61.03125" y="31" textLength="21.010254">Adler</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="81.549316" y="31" textLength="140.07129">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="42" textLength="6.0029297">V</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="5.5107422" y="42" textLength="39.524414">ersion 0.1</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="53" textLength="30.027832">3/12/15</tspan></text><text transform="translate(726.3125 81.340386)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".48388672" y="9" textLength="30.032227">Legend</tspan></text></g><g><title>User Agent Passthru</title><path d="M 495.1009 152.67855 C 455.11374 181.93359 339.70378 186.58017 306.83269 153.70907" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 319.68544 137.683975 C 367.34974 134.70718 479.88758 135.08854 503.83333 139.05998" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 148.222365 64.50924 C 248.79279 60.508945 357.53132 52.38815 447.66667 53.666667 C 541.66667 55 679.66667 66.520833 679.66667 96.854167 C 679.66667 127.1875 662.33333 135 640.45833 134.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 494.60155 126.69719 C 454.6144 97.442146 339.20443 92.795573 306.33333 125.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 544.1683 203.84039 C 538.8455 185.2851 545.62083 167.10417 549.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 571.85064 166.06451 C 571.8876 178.06938 571.96103 179.25522 571.83334 211.16667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.30095 195.26824 C 229.97925 179.01098 230.64368 167.0153 234.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 257.75057 164.36961 C 265.36054 174.04391 273.93684 189.02174 261.33333 206.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 230.21236 365.4013 C 223.05418 330.032 230.40681 248.93644 234.33333 233.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 258.26292 245.62315 C 277.79725 290.14752 268.858 352.74332 252.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z" fill="white"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z M 237.67708 299.5242 C 237.67708 297.09826 237.65503 297.09826 233.16178 297.09826 L 233.16178 297.09826 C 233.16178 291.69313 233.16178 291.66667 231.14016 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(223.29846 299.16667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 281.58333 299.65597 C 281.58333 297.09826 281.29758 296.78182 279.21026 294.25057 L 279.18821 294.22438 C 277.08986 291.66667 277.06803 291.66667 274.91456 291.66667 C 272.04716 291.66667 259.08333 291.66667 259.08333 291.66667 L 259.08333 318.66667 L 281.58333 318.66667 L 281.58333 299.65597 Z" fill="white"/><path d="M 281.58333 299.65597 C 281.58333 297.09826 281.29758 296.78182 279.21026 294.25057 L 279.18821 294.22438 C 277.08986 291.66667 277.06803 291.66667 274.91456 291.66667 C 272.04716 291.66667 259.08333 291.66667 259.08333 291.66667 L 259.08333 318.66667 L 281.58333 318.66667 L 281.58333 299.65597 Z M 281.58333 299.5242 C 281.58333 297.09826 281.56128 297.09826 277.06803 297.09826 L 277.06803 297.09826 C 277.06803 291.69313 277.06803 291.66667 275.04641 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="269.91146" cy="305.16667" r="8.028609" fill="#404040"/><circle cx="269.91146" cy="305.16667" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 266.27262 305.92488 L 268.97794 308.20727 L 274.14065 302.87684" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 277 176.65597 C 277 174.09826 276.71425 173.78182 274.62692 171.25057 L 274.60487 171.22438 C 272.50652 168.66667 272.4847 168.66667 270.33122 168.66667 C 267.46382 168.66667 254.5 168.66667 254.5 168.66667 L 254.5 195.66667 L 277 195.66667 L 277 176.65597 Z" fill="white"/><path d="M 277 176.65597 C 277 174.09826 276.71425 173.78182 274.62692 171.25057 L 274.60487 171.22438 C 272.50652 168.66667 272.4847 168.66667 270.33122 168.66667 C 267.46382 168.66667 254.5 168.66667 254.5 168.66667 L 254.5 195.66667 L 277 195.66667 L 277 176.65597 Z M 277 176.52421 C 277 174.09826 276.97795 174.09826 272.4847 174.09826 L 272.4847 174.09826 C 272.4847 168.69313 272.4847 168.66667 270.46307 168.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="265.32812" cy="182.16667" r="8.028609" fill="#404040"/><circle cx="265.32812" cy="182.16667" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 261.68929 182.92488 L 264.39461 185.20727 L 269.55732 179.87684" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 405.33333 169.65597 C 405.33333 167.09826 405.04758 166.78182 402.96026 164.25057 L 402.9382 164.22438 C 400.83986 161.66667 400.81803 161.66667 398.66456 161.66667 C 395.79716 161.66667 382.83333 161.66667 382.83333 161.66667 L 382.83333 188.66667 L 405.33333 188.66667 L 405.33333 169.65597 Z" fill="white"/><path d="M 405.33333 169.65597 C 405.33333 167.09826 405.04758 166.78182 402.96026 164.25057 L 402.9382 164.22438 C 400.83986 161.66667 400.81803 161.66667 398.66456 161.66667 C 395.79716 161.66667 382.83333 161.66667 382.83333 161.66667 L 382.83333 188.66667 L 405.33333 188.66667 L 405.33333 169.65597 Z M 405.33333 169.52421 C 405.33333 167.09826 405.31128 167.09826 400.81803 167.09826 L 400.81803 167.09826 C 400.81803 161.69313 400.81803 161.66667 398.7964 161.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="393.66146" cy="176.49479" r="8.028609" fill="#404040"/><circle cx="393.66146" cy="176.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.02262 177.25301 L 392.72794 179.53539 L 397.89065 174.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z" fill="white"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z M 583.08333 181.83671 C 583.08333 179.41076 583.0613 179.41076 578.56803 179.41076 L 578.56803 179.41076 C 578.56803 174.00563 578.56803 173.97917 576.5464 173.97917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="551.85417" y="159" width="39.3125" height="39.3125" id="path_2"/><clipPath id="clip_path_2"><use xl:href="#path_2"/></clipPath><g clip-path="url(#clip_path_2)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(551.85417 159) scale(.15356445)"/></g><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z" fill="white"/><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z M 551.58333 178.52421 C 551.58333 176.09826 551.56128 176.09826 547.06803 176.09826 L 547.06803 176.09826 C 547.06803 170.69313 547.06803 170.66667 545.0464 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 537.91942 186.45589 L 541.7972 186.45589 L 541.7972 186.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 541.7972 186.45589 L 541.7972 186.45589 L 543.52067 182.8474" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="541.03552" y1="185.02866" x2="537.28848" y2="185.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.4664 183.78991 L 541.4664 183.78991 L 536.94998 183.78991" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.9588 182.55117 L 541.9588 182.55117 L 536.4114 182.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 545.24413 182.41653 L 545.24413 182.41653 L 543.52067 182.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z" fill="white"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z M 404.48958 97.524207 C 404.48958 95.098257 404.46753 95.098257 399.97428 95.098257 L 399.97428 95.098257 C 399.97428 89.693127 399.97428 89.666667 397.95266 89.666667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.82567 105.45589 L 394.70346 105.45589 L 394.70346 105.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 394.70346 105.45589 L 394.70346 105.45589 L 396.42692 101.847396" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="393.94177" y1="104.02866" x2="390.19473" y2="104.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.37264 102.789914 L 394.37264 102.789914 L 389.85623 102.789914" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.86503 101.55117 L 394.86503 101.55117 L 389.31765 101.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 398.15038 101.41653 L 398.15038 101.41653 L 396.42692 101.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.8125 133.65597 C 404.8125 131.09826 404.52675 130.78182 402.43942 128.25057 L 402.41737 128.22438 C 400.31902 125.66667 400.2972 125.66667 398.14372 125.66667 C 395.27632 125.66667 382.3125 125.66667 382.3125 125.66667 L 382.3125 152.66667 L 404.8125 152.66667 L 404.8125 133.65597 Z" fill="white"/><path d="M 404.8125 133.65597 C 404.8125 131.09826 404.52675 130.78182 402.43942 128.25057 L 402.41737 128.22438 C 400.31902 125.66667 400.2972 125.66667 398.14372 125.66667 C 395.27632 125.66667 382.3125 125.66667 382.3125 125.66667 L 382.3125 152.66667 L 404.8125 152.66667 L 404.8125 133.65597 Z M 404.8125 133.52421 C 404.8125 131.09826 404.79045 131.09826 400.2972 131.09826 L 400.2972 131.09826 C 400.2972 125.69313 400.2972 125.66667 398.27557 125.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="373.58333" y="110.6875" width="39.3125" height="39.3125" id="path_3"/><clipPath id="clip_path_3"><use xl:href="#path_3"/></clipPath><g clip-path="url(#clip_path_3)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(373.58333 110.6875) scale(.15356445)"/></g><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z" fill="white"/><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z M 246.40625 169.52421 C 246.40625 167.09826 246.3842 167.09826 241.89095 167.09826 L 241.89095 167.09826 C 241.89095 161.69313 241.89095 161.66667 239.86932 161.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="215.17708" y="146.6875" width="39.3125" height="39.3125" id="path_4"/><clipPath id="clip_path_4"><use xl:href="#path_4"/></clipPath><g clip-path="url(#clip_path_4)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(215.17708 146.6875) scale(.15356445)"/></g><path d="M 602.7796 203.84039 C 608.1024 185.2851 601.3271 167.10417 597.6146 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z" fill="white"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z M 615.1875 178.52421 C 615.1875 176.09826 615.16545 176.09826 610.6722 176.09826 L 610.6722 176.09826 C 610.6722 170.69313 610.6722 170.66667 608.65058 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="603.51563" cy="185.49479" r="8.028609" fill="#404040"/><circle cx="603.51563" cy="185.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 599.8768 186.25301 L 602.5821 188.53539 L 607.7448 183.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 411.11292 118.96465 C 411.66348 122.75518 414.92658 125.666685 418.86973 125.66667 C 423.19887 125.666685 426.70835 122.15723 426.70833 117.82806 C 426.70835 113.88491 423.79683 110.62181 420.00632 110.07125 L 420.02477 110.0528 L 408.70833 107.666313 L 411.0948 118.98276 Z" fill="#535353"/><text transform="translate(415.25145 111.12226)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">2</tspan></text><path d="M 514.70406 191.89093 C 511.02653 194.63526 505.79604 194.33728 502.45576 190.997 C 498.78834 187.32957 498.78834 181.38351 502.45576 177.71608 C 505.79604 174.3758 511.02653 174.07782 514.70406 176.82213 L 514.70406 176.79076 L 526.3125 184.35581 L 514.70406 191.92083 Z" fill="#535353"/><text transform="translate(504.3865 178.05242)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">3</tspan></text><path d="M 209.48732 185.60062 C 206.00093 188.20231 201.04229 187.91982 197.87562 184.75315 C 194.39882 181.27634 194.39882 175.63931 197.87562 172.1625 C 201.04229 168.99583 206.00093 168.71334 209.48732 171.31501 L 209.48732 171.28528 L 220.49242 178.45713 L 209.48732 185.62897 Z" fill="#535353"/><text transform="translate(199.96588 172.88849)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.8242312" y="9" textLength="5.005371">5</tspan></text><path d="M 198.97489 315.50412 C 195.29736 318.24845 190.06687 317.95047 186.72659 314.61019 C 183.05917 310.94276 183.05917 304.9967 186.72659 301.32927 C 190.06687 297.98899 195.29736 297.69101 198.97489 300.43532 L 198.97489 300.40395 L 210.58333 307.969 L 198.97489 315.53402 Z" fill="#535353"/><text transform="translate(188.65732 302.3966)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">6</tspan></text><path d="M 296.53473 315.50925 C 300.20211 318.246 305.41816 317.94884 308.74923 314.61778 C 312.40652 310.96048 312.40652 305.03082 308.74923 301.37352 C 305.41816 298.04246 300.20211 297.7453 296.53473 300.48204 L 296.53473 300.45076 L 284.95833 307.99492 L 296.53473 315.53906 Z" fill="#535353"/><text transform="translate(296.20123 302.42272)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3084137" y="9" textLength="5.005371">7</tspan></text><path d="M 387.99643 202.86938 C 385.48583 206.23357 385.75837 211.01849 388.8141 214.07422 C 392.16904 217.42921 397.60848 217.42921 400.96343 214.07422 C 404.01915 211.01849 404.2917 206.23357 401.7811 202.86938 L 401.80863 202.86938 L 394.88817 192.25 L 387.9677 202.86938 Z" fill="#535353"/><text transform="translate(390.98958 200.11942)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.49731445" y="9" textLength="5.005371">8</tspan></text><path d="M 185.83538 137.98239 C 153.662255 129.06378 186.76121 79.428224 144.66667 80.333333" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 632.11315 191.79131 C 635.83473 194.5685 641.12787 194.26696 644.50816 190.88667 C 648.2195 187.17531 648.2195 181.15802 644.50816 177.44667 C 641.12787 174.06638 635.83473 173.76483 632.11315 176.54201 L 632.11315 176.51026 L 620.36566 184.16592 L 632.11315 191.82157 Z" fill="#535353"/><text transform="translate(631.70082 178.59266)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.4534163" y="9" textLength="5.005371">9</tspan></text><path d="M 375.92875 150.98603 C 375.37818 154.77656 372.1151 157.68806 368.17194 157.68805 C 363.8428 157.68806 360.33332 154.17861 360.33333 149.84944 C 360.33332 145.90629 363.24483 142.64319 367.03535 142.09263 L 367.0169 142.07418 L 378.33333 139.68769 L 375.94688 151.00414 Z" fill="#535353"/><text transform="translate(365.93638 143.14364)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">4</tspan></text><path d="M 168.37199 118.63149 C 167.82143 122.422025 164.55833 125.33353 160.61519 125.33351 C 156.28604 125.33353 152.77656 121.82407 152.77658 117.4949 C 152.77656 113.55176 155.68808 110.28865 159.47859 109.738094 L 159.46014 109.719643 L 170.77658 107.333157 L 168.39012 118.6496 Z" fill="#535353"/><text transform="translate(158.37963 110.7891)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">1</tspan></text><path d="M 691.41416 97.4615 C 695.13574 100.2387 700.4289 99.93715 703.80917 96.55686 C 707.52052 92.845505 707.52052 86.828214 703.80917 83.11686 C 700.4289 79.73657 695.13574 79.43502 691.41416 82.2122 L 691.41416 82.18046 L 679.66667 89.836117 L 691.41416 97.49176 Z" fill="#535353"/><text transform="translate(691.00183 84.26285)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.2446289" y="9" textLength="10.010742">10</tspan></text><text transform="translate(205.3125 491.45833)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".17480469" y="9" textLength="38.01709">Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="37.699707" y="9" textLength="64.041504">Agent Model 1A</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="101.249023" y="9" textLength="70.03125"> - Local Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="170.78809" y="9" textLength="82.03711">Agent With Passthru</tspan></text></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/model_1B_out_of_band_proof_of_payment.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="78 41 899 728" width="899pt" height="728pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-20 05:08Z</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-6 -3 7 6" markerWidth="7" markerHeight="6" color="gray"><g><path d="M -4.8 0 L 0 1.8 L 0 -1.8 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Local Payment Agent</title><rect fill="white" width="972" height="1106"/><g><title>Layer 1</title><path d="M 183.30316 335.64141 L 323.97917 335.64141 L 323.97917 416.64141 L 183.30316 416.64141 Z" stroke="#c6f" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="184.97917" y="335.64141" width="81.618273" height="19.6875" fill="#c6f"/><rect x="184.97917" y="335.64141" width="81.618273" height="19.6875" stroke="#c6f" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(189.97917 339.98516)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="1.7954647" y="9" textLength="68.027344">Payment Service</tspan></text><path d="M 183.30316 98.666667 L 323.97917 98.666667 L 323.97917 170.66667 L 183.30316 170.66667 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="184.97917" y="98.666667" width="81.618273" height="17.5" fill="#2f72ff"/><rect x="184.97917" y="98.666667" width="81.618273" height="17.5" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(189.97917 101.916667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="16.051324" y="9" textLength="39.515625">Computer</tspan></text><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" fill="#507baf"/><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 133.165406)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="30.993408" y="9" textLength="36.013184">Browser</tspan></text><circle cx="215.97917" cy="137.66667" r="9.0000144" fill="#404040"/><circle cx="215.97917" cy="137.66667" r="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="210.07596" y="132.959915" width="11.821943" height="2.2831108" fill="white"/><rect x="213.27917" y="136.40551" width="8.618738" height="2.2831108" fill="white"/><rect x="213.27917" y="139.83018" width="8.618738" height="2.2831108" fill="white"/><rect x="210.07596" y="136.24883" width="2.2831108" height="5.864461" fill="white"/><path d="M 489.98514 98.666667 L 652.47917 98.666667 L 652.47917 256.16667 L 489.98514 256.16667 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" fill="silver"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(494.63542 101.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.8218924" y="9" textLength="111.032227">Merchant E-Commerce Site</tspan></text><path d="M 129.68966 70.38161 C 129.67511 70.50616 129.56721 70.595397 129.44945 70.580007 L 127.67944 70.34902 C 127.56085 70.334064 127.47651 70.219935 127.49149 70.095384 L 127.75436 67.82723 C 127.770216 67.70268 127.858844 67.611195 127.955615 67.623423 C 128.052386 67.636556 128.12945 67.645614 128.12945 67.645614 L 128.06821 68.17461 L 129.568076 68.36981 L 129.62972 67.84127 L 129.80399 67.86301 C 129.90074 67.876597 129.96754 67.988012 129.95212 68.11256 Z M 129.438324 67.592624 L 129.371955 68.16057 L 128.30714 68.02243 L 128.373076 67.45449 Z M 127.0145 70.214508 L 124.57742 70.214508 L 124.57742 69.38387 C 124.57742 68.11256 124.17837 67.17595 123.45178 66.656016 C 123.72495 66.33536 124.118 66.161894 124.62109 66.158724 L 124.543594 66.02602 C 124.50035 65.953557 124.562004 65.89604 124.681034 65.89604 L 124.86172 65.89604 C 124.96148 65.89604 125.113464 65.963522 125.20125 66.05048 L 126.14106 66.982107 L 127.08174 66.05048 C 127.16866 65.963522 127.312525 65.89604 127.40286 65.89604 L 127.566846 65.89604 C 127.68544 65.89604 127.74625 65.95673 127.70214 66.031457 C 127.65762 66.107092 127.62165 66.168236 127.62165 66.168236 C 128.325546 66.215338 128.798655 66.613896 128.999906 67.3005 L 128.17997 67.19271 L 128.15985 67.367984 L 127.82931 67.32405 C 127.68544 67.30639 127.546705 67.49344 127.51717 67.743894 L 127.25598 69.98849 C 127.24187 70.11304 127.13353 70.214508 127.0145 70.214508 M 124.226754 72.379854 L 122.633566 72.379854 C 122.5201 71.889804 122.4349 71.37937 122.4349 70.945047 C 122.4349 69.981714 122.13433 71.218584 122.08595 72.379854 L 117.84287 72.379854 C 117.79493 71.218584 117.493485 69.981714 117.493485 70.945047 C 117.493485 71.37937 117.40787 71.889804 117.296114 72.379854 L 115.67681 72.379854 L 115.67681 69.38387 C 115.67681 67.66373 116.45606 66.656016 117.83901 66.56362 C 117.8373 66.55864 118.27488 66.54596 118.27488 66.54596 C 118.545485 67.14153 119.128205 67.495702 119.88049 67.495702 C 120.726536 67.495702 121.32468 67.160552 121.62867 66.54596 C 122.05084 66.557282 122.04784 66.562717 122.04784 66.562717 C 123.442364 66.648315 124.226754 67.65694 124.226754 69.38387 Z M 119.89633 61.61155 C 121.24761 61.61155 121.898414 62.240193 121.898414 63.752436 C 121.898414 65.264233 121.24761 66.49025 119.89633 66.49025 C 118.54462 66.49025 117.89425 65.264233 117.89425 63.752436 C 117.89425 62.240193 118.54462 61.61155 119.89633 61.61155 M 126.12222 62.59481 C 127.06203 62.59481 127.51459 63.03094 127.51459 64.08351 C 127.51459 65.135157 127.06203 65.98707 126.12222 65.98707 C 125.18198 65.98707 124.729415 65.135157 124.729415 64.08351 C 124.729415 63.03094 125.18198 62.59481 126.12222 62.59481 M 122.21611 53.666667 C 115.16771 53.666667 109.452624 59.709807 109.452624 67.165987 C 109.452624 74.622177 115.16771 80.666667 122.21611 80.666667 C 129.26492 80.666667 134.97917 74.622177 134.97917 67.165987 C 134.97917 59.709807 129.26492 53.666667 122.21611 53.666667" fill="#3c3c3b"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" fill="#6d6d6d"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" stroke="#6d6d6d" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 133.66667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="43.577148" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="51.913574" y="9" textLength="29.509277">eb Site</tspan></text><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" fill="#404040"/><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 520.30424 136.89692 L 523.20114 136.89692 L 523.20114 137.19875 L 520.30424 137.19875 Z M 520.30424 137.43198 L 523.20114 137.43198 L 523.20114 137.73381 L 520.30424 137.73381 Z M 520.30414 137.942895 L 523.20114 137.942895 L 523.20114 138.24473 L 520.30414 138.24473 Z M 523.5374 136.208554 L 519.96796 136.208554 C 519.79792 136.208554 519.6601 136.32996 519.6601 136.47974 L 519.6601 140.7967 C 519.6601 140.94649 519.79792 141.06789 519.96796 141.06789 L 523.5374 141.06789 C 523.70745 141.06789 523.84527 140.94649 523.84527 140.7967 L 523.84527 136.47974 C 523.84527 136.32996 523.70745 136.208554 523.5374 136.208554" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" fill="#ccc"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" stroke="#b3b3b3" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 219.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="23.981934" y="9" textLength="77.036133"> Payment System</tspan></text><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" fill="white"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" fill="white"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" fill="#3f3f3f"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 527.42843 222.35922 C 527.42843 222.43887 527.20157 222.50405 526.9243 222.50405 L 519.8665 222.50405 C 519.58923 222.50405 519.36238 222.43887 519.36238 222.35922 L 519.36238 222.06956 C 519.36238 221.99005 519.58923 221.92473 519.8665 221.92473 L 526.9243 221.92473 C 527.20157 221.92473 527.42843 221.99005 527.42843 222.06956 Z" fill="#3f3f3f"/><path d="M 527.42843 223.2335 C 527.42843 223.31316 527.20157 223.37834 526.9243 223.37834 L 519.8665 223.37834 C 519.58923 223.37834 519.36238 223.31316 519.36238 223.2335 L 519.36238 222.94385 C 519.36238 222.86433 519.58923 222.79902 519.8665 222.79902 L 526.9243 222.79902 C 527.20157 222.79902 527.42843 222.86433 527.42843 222.94385 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" fill="white"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(92.541667 90.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".49487305" y="9" textLength="39.010254">Customer</tspan></text><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" fill="#c6f"/><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" stroke="#669" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(208.3125 379.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="20.116943" y="9" textLength="37.516113">Payment</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="22.865723" y="20" textLength="32.018555">System</tspan></text><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" fill="#404040"/><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" fill="white"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" fill="white"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" fill="#3f3f3f"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.7966 385.59456 C 219.7966 385.66522 219.59537 385.72303 219.34941 385.72303 L 213.08868 385.72303 C 212.84273 385.72303 212.64149 385.66522 212.64149 385.59456 L 212.64149 385.3376 C 212.64149 385.26708 212.84273 385.20914 213.08868 385.20914 L 219.34941 385.20914 C 219.59537 385.20914 219.7966 385.26708 219.7966 385.3376 Z" fill="#3f3f3f"/><path d="M 219.7966 386.3701 C 219.7966 386.44077 219.59537 386.49858 219.34941 386.49858 L 213.08868 386.49858 C 212.84273 386.49858 212.64149 386.44077 212.64149 386.3701 L 212.64149 386.11316 C 212.64149 386.04263 212.84273 385.98469 213.08868 385.98469 L 219.34941 385.98469 C 219.59537 385.98469 219.7966 386.04263 219.7966 386.11316 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" fill="white"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 199.97917 226.125 L 303.97917 226.125 C 305.08374 226.125 305.97917 227.02043 305.97917 228.125 L 305.97917 251.125 C 305.97917 252.22957 305.08374 253.125 303.97917 253.125 L 199.97917 253.125 C 198.8746 253.125 197.97917 252.22957 197.97917 251.125 L 197.97917 228.125 C 197.97917 227.02043 198.8746 226.125 199.97917 226.125 Z" fill="#e0edff"/><path d="M 199.97917 226.125 L 303.97917 226.125 C 305.08374 226.125 305.97917 227.02043 305.97917 228.125 L 305.97917 251.125 C 305.97917 252.22957 305.08374 253.125 303.97917 253.125 L 199.97917 253.125 C 198.8746 253.125 197.97917 252.22957 197.97917 251.125 L 197.97917 228.125 C 197.97917 227.02043 198.8746 226.125 199.97917 226.125 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 234.125)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="35.913086" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="44.078125" y="9" textLength="18.008789">allet</tspan></text><ellipse cx="216.04889" cy="240.125" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="216.04889" cy="240.125" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.90534 235.83631 L 221.00079 235.65872 C 221.55298 235.649 222.0085 236.08878 222.01822 236.64097 C 222.01822 236.64097 222.01822 236.64097 222.01822 236.64097 L 222.11921 242.38208 C 222.12893 242.93428 221.68916 243.3898 221.13696 243.39951 L 211.04151 243.5771 C 210.48931 243.58682 210.03379 243.14705 210.02408 242.59485 C 210.02408 242.59485 210.02408 242.59485 210.02408 242.59485 L 209.92308 236.85374 C 209.91337 236.30155 210.35314 235.84602 210.90534 235.83631 Z" fill="white"/><path d="M 210.90534 235.83631 L 221.00079 235.65872 C 221.55298 235.649 222.0085 236.08878 222.01822 236.64097 C 222.01822 236.64097 222.01822 236.64097 222.01822 236.64097 L 222.11921 242.38208 C 222.12893 242.93428 221.68916 243.3898 221.13696 243.39951 L 211.04151 243.5771 C 210.48931 243.58682 210.03379 243.14705 210.02408 242.59485 C 210.02408 242.59485 210.02408 242.59485 210.02408 242.59485 L 209.92308 236.85374 C 209.91337 236.30155 210.35314 235.84602 210.90534 235.83631 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 221.24159 237.61613 L 213.93852 237.58407 L 219.48688 234.47984 Z" fill="white"/><path d="M 221.24159 237.61613 L 213.93852 237.58407 L 219.48688 234.47984 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 220.82605 237.53897 L 214.74869 237.5123 L 219.36584 234.92906 Z" fill="#3f3f3f"/><path d="M 220.82605 237.53897 L 214.74869 237.5123 L 219.36584 234.92906 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 221.42843 237.81755 C 221.42843 237.8972 221.20157 237.96238 220.9243 237.96238 L 213.8665 237.96238 C 213.58923 237.96238 213.36238 237.8972 213.36238 237.81755 L 213.36238 237.5279 C 213.36238 237.44838 213.58923 237.38306 213.8665 237.38306 L 220.9243 237.38306 C 221.20157 237.38306 221.42843 237.44838 221.42843 237.5279 Z" fill="#3f3f3f"/><path d="M 221.42843 238.69184 C 221.42843 238.7715 221.20157 238.83667 220.9243 238.83667 L 213.8665 238.83667 C 213.58923 238.83667 213.36238 238.7715 213.36238 238.69184 L 213.36238 238.40218 C 213.36238 238.32267 213.58923 238.25735 213.8665 238.25735 L 220.9243 238.25735 C 221.20157 238.25735 221.42843 238.32267 221.42843 238.40218 Z" fill="#3f3f3f"/><path d="M 210.0769 243.74304 L 217.65513 246.07915 C 218.1829 246.24185 218.74264 245.94589 218.90534 245.41811 C 218.93514 245.32145 218.9501 245.22083 218.9497 245.11968 L 218.92542 238.81186 C 218.92374 238.37447 218.638 237.98893 218.22002 237.86008 L 210.64179 235.52397 C 210.11401 235.36128 209.55427 235.65723 209.39158 236.18501 C 209.36178 236.28167 209.34682 236.3823 209.34721 236.48345 L 209.37149 242.79127 C 209.37318 243.22865 209.65892 243.6142 210.0769 243.74304 Z" fill="#3f3f3f"/><path d="M 210.0769 243.74304 L 217.65513 246.07915 C 218.1829 246.24185 218.74264 245.94589 218.90534 245.41811 C 218.93514 245.32145 218.9501 245.22083 218.9497 245.11968 L 218.92542 238.81186 C 218.92374 238.37447 218.638 237.98893 218.22002 237.86008 L 210.64179 235.52397 C 210.11401 235.36128 209.55427 235.65723 209.39158 236.18501 C 209.36178 236.28167 209.34682 236.3823 209.34721 236.48345 L 209.37149 242.79127 C 209.37318 243.22865 209.65892 243.6142 210.0769 243.74304 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.54411 243.6372 L 217.21924 245.69491 C 217.74702 245.85761 218.30675 245.56165 218.46945 245.03388 C 218.49857 244.9394 218.51352 244.84114 218.51382 244.74228 L 218.53085 239.05529 C 218.53217 238.61537 218.24584 238.22626 217.82545 238.09667 L 211.15032 236.03896 C 210.62254 235.87626 210.0628 236.17222 209.9001 236.7 C 209.87098 236.79447 209.85603 236.89273 209.85573 236.99159 L 209.8387 242.67858 C 209.83738 243.1185 210.12371 243.5076 210.54411 243.6372 Z" fill="white"/><path d="M 210.54411 243.6372 L 217.21924 245.69491 C 217.74702 245.85761 218.30675 245.56165 218.46945 245.03388 C 218.49857 244.9394 218.51352 244.84114 218.51382 244.74228 L 218.53085 239.05529 C 218.53217 238.61537 218.24584 238.22626 217.82545 238.09667 L 211.15032 236.03896 C 210.62254 235.87626 210.0628 236.17222 209.9001 236.7 C 209.87098 236.79447 209.85603 236.89273 209.85573 236.99159 L 209.8387 242.67858 C 209.83738 243.1185 210.12371 243.5076 210.54411 243.6372 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 762.68933 53.666667 L 921.31433 53.666667 C 923.7996 53.666667 925.81433 55.681385 925.81433 58.166667 L 925.81433 486.17708 C 925.81433 488.66236 923.7996 490.67708 921.31433 490.67708 L 762.68933 490.67708 C 760.20405 490.67708 758.18933 488.66236 758.18933 486.17708 L 758.18933 58.166667 C 758.18933 55.681385 760.20405 53.666667 762.68933 53.666667 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 762.68933 53.666667 L 921.31433 53.666667 C 923.7996 53.666667 925.81433 55.681385 925.81433 58.166667 L 925.81433 486.17708 C 925.81433 488.66236 923.7996 490.67708 921.31433 490.67708 L 762.68933 490.67708 C 760.20405 490.67708 758.18933 488.66236 758.18933 486.17708 L 758.18933 58.166667 C 758.18933 55.681385 760.20405 53.666667 762.68933 53.666667 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(843.37807 111.563645)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9873047" y="9" textLength="29.012695">Human</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="8.9941406" y="20" textLength="21.00586">Actor</tspan></text><path d="M 901.7123 125.86078 C 901.6978 125.98533 901.5899 126.07456 901.4721 126.05917 L 899.7021 125.82819 C 899.5835 125.81323 899.4992 125.6991 899.51416 125.57455 L 899.77703 123.3064 C 899.7929 123.18185 899.8815 123.09036 899.9783 123.10259 C 900.07505 123.11572 900.1521 123.12478 900.1521 123.12478 L 900.0909 123.653776 L 901.59074 123.84898 L 901.6524 123.32044 L 901.82666 123.34218 C 901.9234 123.35576 901.9902 123.46718 901.9748 123.59173 Z M 901.461 123.07179 L 901.3946 123.639736 L 900.3298 123.5016 L 900.39574 122.933656 Z M 899.03717 125.693674 L 896.6001 125.693674 L 896.6001 124.863036 C 896.6001 123.59173 896.20104 122.65512 895.47445 122.13518 C 895.7476 121.814525 896.14067 121.64106 896.64376 121.63789 L 896.56626 121.50519 C 896.523 121.43272 896.58467 121.375205 896.7037 121.375205 L 896.8844 121.375205 C 896.98415 121.375205 897.13613 121.44269 897.2239 121.529645 L 898.16373 122.461274 L 899.1044 121.529645 C 899.1913 121.44269 899.3352 121.375205 899.42553 121.375205 L 899.5895 121.375205 C 899.7081 121.375205 899.7689 121.435896 899.7248 121.510624 C 899.6803 121.58626 899.6443 121.6474 899.6443 121.6474 C 900.3482 121.694505 900.8213 122.09306 901.02257 122.77967 L 900.20263 122.671875 L 900.1825 122.84715 L 899.852 122.80322 C 899.7081 122.785555 899.56937 122.972606 899.53984 123.22306 L 899.27865 125.46766 C 899.26453 125.59221 899.1562 125.693674 899.03717 125.693674 M 896.2494 127.85902 L 894.65623 127.85902 C 894.54277 127.36897 894.45757 126.858535 894.45757 126.42421 C 894.45757 125.46088 894.157 126.69775 894.1086 127.85902 L 889.86553 127.85902 C 889.8176 126.69775 889.51615 125.46088 889.51615 126.42421 C 889.51615 126.858535 889.43054 127.36897 889.3188 127.85902 L 887.6995 127.85902 L 887.6995 124.863036 C 887.6995 123.1429 888.47873 122.13518 889.8617 122.04279 C 889.85997 122.03781 890.29754 122.025125 890.29754 122.025125 C 890.56815 122.6207 891.15087 122.97487 891.90316 122.97487 C 892.7492 122.97487 893.34734 122.63972 893.65134 122.025125 C 894.0735 122.03645 894.0705 122.041884 894.0705 122.041884 C 895.46503 122.12748 896.2494 123.136105 896.2494 124.863036 Z M 891.919 117.09072 C 893.2703 117.09072 893.9211 117.71936 893.9211 119.2316 C 893.9211 120.7434 893.2703 121.96942 891.919 121.96942 C 890.5673 121.96942 889.9169 120.7434 889.9169 119.2316 C 889.9169 117.71936 890.5673 117.09072 891.919 117.09072 M 898.1449 118.07398 C 899.0847 118.07398 899.53726 118.51011 899.53726 119.562676 C 899.53726 120.614324 899.0847 121.46624 898.1449 121.46624 C 897.20464 121.46624 896.7521 120.614324 896.7521 119.562676 C 896.7521 118.51011 897.20464 118.07398 898.1449 118.07398 M 894.2388 109.145833 C 887.1904 109.145833 881.4753 115.18897 881.4753 122.645154 C 881.4753 130.10134 887.1904 136.14583 894.2388 136.14583 C 901.2876 136.14583 907.00183 130.10134 907.00183 122.645154 C 907.00183 115.18897 901.2876 109.145833 894.2388 109.145833" fill="#3c3c3b"/><ellipse cx="893.63204" cy="166.91786" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="893.63204" cy="166.91786" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 896.03 164.40639 L 899.7001 164.40639 L 899.7001 164.83472 L 896.03 164.83472 Z M 896.03 165.16569 L 899.7001 165.16569 L 899.7001 165.59403 L 896.03 165.59403 Z M 896.0299 165.89074 L 899.7001 165.89074 L 899.7001 166.31908 L 896.0299 166.31908 Z M 900.12615 163.42952 L 895.604 163.42952 C 895.38856 163.42952 895.21396 163.6018 895.21396 163.81436 L 895.21396 169.94062 C 895.21396 170.15318 895.38856 170.32547 895.604 170.32547 L 900.12615 170.32547 C 900.34157 170.32547 900.51617 170.15318 900.51617 169.94062 L 900.51617 163.81436 C 900.51617 163.6018 900.34157 163.42952 900.12615 163.42952" fill="white"/><path d="M 888.3403 163.09129 L 893.9636 163.09129 L 893.9636 163.74758 L 888.3403 163.74758 Z M 888.3403 164.25469 L 893.9636 164.25469 L 893.9636 164.91098 L 888.3403 164.91098 Z M 888.3401 165.3656 L 893.9636 165.3656 L 893.9636 166.0219 L 888.3401 166.0219 Z M 894.61637 161.59454 L 887.68755 161.59454 C 887.3575 161.59454 887.08996 161.85851 887.08996 162.1842 L 887.08996 171.57078 C 887.08996 171.89647 887.3575 172.16044 887.68755 172.16044 L 894.61637 172.16044 C 894.94644 172.16044 895.21395 171.89647 895.21395 171.57078 L 895.21395 162.1842 C 895.21395 161.85851 894.94644 161.59454 894.61637 161.59454" fill="white"/><path d="M 888.3403 163.09129 L 893.9636 163.09129 L 893.9636 163.74758 L 888.3403 163.74758 Z M 888.3403 164.25469 L 893.9636 164.25469 L 893.9636 164.91098 L 888.3403 164.91098 Z M 888.3401 165.3656 L 893.9636 165.3656 L 893.9636 166.0219 L 888.3401 166.0219 Z M 894.61637 161.59454 L 887.68755 161.59454 C 887.3575 161.59454 887.08996 161.85851 887.08996 162.1842 L 887.08996 171.57078 C 887.08996 171.89647 887.3575 172.16044 887.68755 172.16044 L 894.61637 172.16044 C 894.94644 172.16044 895.21395 171.89647 895.21395 171.57078 L 895.21395 162.1842 C 895.21395 161.85851 894.94644 161.59454 894.61637 161.59454" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(838.8548 157.45157)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9941406" y="9" textLength="30.00586">System</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.9941406" y="20" textLength="21.00586">Actor</tspan></text><text transform="translate(822.00183 72.145833)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="1.5386966" y="9" textLength="48.019043">User Agent)</tspan></text><circle cx="893.7349" cy="77.878906" r="13.266949" fill="#404040"/><circle cx="893.7349" cy="77.878906" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="885.03297" y="70.94067" width="17.426762" height="3.3655407" fill="white"/><rect x="889.75483" y="76.019836" width="12.704908" height="3.3655407" fill="white"/><rect x="889.75483" y="81.068147" width="12.704908" height="3.3655407" fill="white"/><rect x="885.03297" y="75.78887" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="893.8377" cy="210.8789" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="893.8377" cy="210.8789" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 885.78153 204.56527 L 901.6113 204.28681 C 902.1635 204.27709 902.61904 204.71686 902.62875 205.26906 C 902.62875 205.26906 902.62875 205.26906 902.62875 205.26906 L 902.7943 214.6801 C 902.804 215.2323 902.36425 215.68782 901.81205 215.69753 L 885.98226 215.976 C 885.43007 215.98571 884.97454 215.54594 884.96483 214.99374 C 884.96483 214.99374 884.96483 214.99374 884.96483 214.99374 L 884.7993 205.58271 C 884.78956 205.03051 885.22934 204.57499 885.78153 204.56527 Z" fill="white"/><path d="M 885.78153 204.56527 L 901.6113 204.28681 C 902.1635 204.27709 902.61904 204.71686 902.62875 205.26906 C 902.62875 205.26906 902.62875 205.26906 902.62875 205.26906 L 902.7943 214.6801 C 902.804 215.2323 902.36425 215.68782 901.81205 215.69753 L 885.98226 215.976 C 885.43007 215.98571 884.97454 215.54594 884.96483 214.99374 C 884.96483 214.99374 884.96483 214.99374 884.96483 214.99374 L 884.7993 205.58271 C 884.78956 205.03051 885.22934 204.57499 885.78153 204.56527 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 901.49226 207.18057 L 890.7268 207.13331 L 898.90563 202.55736 Z" fill="white"/><path d="M 901.49226 207.18057 L 890.7268 207.13331 L 898.90563 202.55736 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 900.8797 207.06683 L 891.92105 207.0275 L 898.7272 203.21955 Z" fill="#3f3f3f"/><path d="M 900.8797 207.06683 L 891.92105 207.0275 L 898.7272 203.21955 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 901.7677 207.47749 C 901.7677 207.59491 901.43327 207.69098 901.02454 207.69098 L 890.6206 207.69098 C 890.2119 207.69098 889.8775 207.59491 889.8775 207.47749 L 889.8775 207.0505 C 889.8775 206.93329 890.2119 206.83701 890.6206 206.83701 L 901.02454 206.83701 C 901.43327 206.83701 901.7677 206.93329 901.7677 207.0505 Z" fill="#3f3f3f"/><path d="M 901.7677 208.76628 C 901.7677 208.8837 901.43327 208.97977 901.02454 208.97977 L 890.6206 208.97977 C 890.2119 208.97977 889.8775 208.8837 889.8775 208.76628 L 889.8775 208.33929 C 889.8775 208.22208 890.2119 208.1258 890.6206 208.1258 L 901.02454 208.1258 C 901.43327 208.1258 901.7677 208.22208 901.7677 208.33929 Z" fill="#3f3f3f"/><path d="M 884.70126 216.10959 L 896.8217 219.8459 C 897.34947 220.0086 897.9092 219.71264 898.0719 219.18487 C 898.1017 219.0882 898.11666 218.98758 898.11627 218.88643 L 898.07665 208.59464 C 898.07496 208.15725 897.7892 207.77171 897.37124 207.64286 L 885.2508 203.90655 C 884.72303 203.74385 884.1633 204.03981 884.0006 204.56759 C 883.9708 204.66425 883.95584 204.76487 883.95623 204.86602 L 883.99585 215.15782 C 883.99754 215.5952 884.2833 215.98074 884.70126 216.10959 Z" fill="#3f3f3f"/><path d="M 884.70126 216.10959 L 896.8217 219.8459 C 897.34947 220.0086 897.9092 219.71264 898.0719 219.18487 C 898.1017 219.0882 898.11666 218.98758 898.11627 218.88643 L 898.07665 208.59464 C 898.07496 208.15725 897.7892 207.77171 897.37124 207.64286 L 885.2508 203.90655 C 884.72303 203.74385 884.1633 204.03981 884.0006 204.56759 C 883.9708 204.66425 883.95584 204.76487 883.95623 204.86602 L 883.99585 215.15782 C 883.99754 215.5952 884.2833 215.98074 884.70126 216.10959 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 885.3876 215.95283 L 896.17475 219.27814 C 896.7025 219.44084 897.26226 219.14488 897.42496 218.6171 C 897.4541 218.52264 897.46903 218.42437 897.46933 218.32551 L 897.4974 208.95098 C 897.4987 208.51106 897.2124 208.12195 896.792 207.99236 L 886.00483 204.66705 C 885.47706 204.50435 884.9173 204.80031 884.7546 205.32808 C 884.7255 205.42255 884.71055 205.52082 884.71025 205.61968 L 884.6822 214.99421 C 884.68086 215.43413 884.9672 215.82324 885.3876 215.95283 Z" fill="white"/><path d="M 885.3876 215.95283 L 896.17475 219.27814 C 896.7025 219.44084 897.26226 219.14488 897.42496 218.6171 C 897.4541 218.52264 897.46903 218.42437 897.46933 218.32551 L 897.4974 208.95098 C 897.4987 208.51106 897.2124 208.12195 896.792 207.99236 L 886.00483 204.66705 C 885.47706 204.50435 884.9173 204.80031 884.7546 205.32808 C 884.7255 205.42255 884.71055 205.52082 884.71025 205.61968 L 884.6822 214.99421 C 884.68086 215.43413 884.9672 215.82324 885.3876 215.95283 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(808.31385 205.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4633789" y="9" textLength="61.53662">Payment Agent</tspan></text><text transform="translate(814.50183 314.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".47216797" y="9" textLength="52.527832">Payment info</tspan></text><text transform="translate(822.00183 396.08408)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="22.505175" y="9" textLength="23.510742">Payer</tspan></text><path d="M 877.8011 392.08282 L 904.94755 392.08282 L 904.94755 411.08535 L 877.8011 411.08535 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="877.15966" y="392.08282" width="15.75" height="6.75" fill="#2f72ff"/><rect x="877.15966" y="392.08282" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 877.8011 423.1433 L 904.94755 423.1433 L 904.94755 442.14583 L 877.8011 442.14583 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="877.4137" y="423.1433" width="15.75" height="6.75" fill="silver"/><rect x="877.4137" y="423.1433" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(822.00183 423.08408)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="20.496874" y="9" textLength="25.519043">Payee</tspan></text><text transform="translate(777.50183 350.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".96240234" y="9" textLength="89.0376">Payment Confrimation</tspan></text><path d="M 906.00183 314.13513 C 906.00183 311.57742 905.7161 311.26098 903.62876 308.72973 L 903.6067 308.70354 C 901.50836 306.14583 901.48653 306.14583 899.33306 306.14583 C 896.46566 306.14583 883.50183 306.14583 883.50183 306.14583 L 883.50183 333.14583 L 906.00183 333.14583 L 906.00183 314.13513 Z" fill="white"/><path d="M 906.00183 314.13513 C 906.00183 311.57742 905.7161 311.26098 903.62876 308.72973 L 903.6067 308.70354 C 901.50836 306.14583 901.48653 306.14583 899.33306 306.14583 C 896.46566 306.14583 883.50183 306.14583 883.50183 306.14583 L 883.50183 333.14583 L 906.00183 333.14583 L 906.00183 314.13513 Z M 906.00183 314.00337 C 906.00183 311.57742 905.9798 311.57742 901.48653 311.57742 L 901.48653 311.57742 C 901.48653 306.1723 901.48653 306.14583 899.4649 306.14583" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="894.4625" cy="320.22192" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="894.4625" cy="320.22192" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(891.6232 313.64583)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 907.00183 352.13513 C 907.00183 349.57742 906.7161 349.26098 904.62876 346.72973 L 904.6067 346.70354 C 902.50836 344.14583 902.48653 344.14583 900.33306 344.14583 C 897.46566 344.14583 884.50183 344.14583 884.50183 344.14583 L 884.50183 371.14583 L 907.00183 371.14583 L 907.00183 352.13513 Z" fill="white"/><path d="M 907.00183 352.13513 C 907.00183 349.57742 906.7161 349.26098 904.62876 346.72973 L 904.6067 346.70354 C 902.50836 344.14583 902.48653 344.14583 900.33306 344.14583 C 897.46566 344.14583 884.50183 344.14583 884.50183 344.14583 L 884.50183 371.14583 L 907.00183 371.14583 L 907.00183 352.13513 Z M 907.00183 352.00337 C 907.00183 349.57742 906.9798 349.57742 902.48653 349.57742 L 902.48653 349.57742 C 902.48653 344.1723 902.48653 344.14583 900.4649 344.14583" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="895.32996" cy="358.97396" r="8.028609" fill="#404040"/><circle cx="895.32996" cy="358.97396" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 891.6911 359.73218 L 894.39644 362.01456 L 899.55915 356.68414" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 906.00183 237.13513 C 906.00183 234.57742 905.7161 234.26098 903.62876 231.72973 L 903.6067 231.70354 C 901.50836 229.14583 901.48653 229.14583 899.33306 229.14583 C 896.46566 229.14583 883.50183 229.14583 883.50183 229.14583 L 883.50183 256.14583 L 906.00183 256.14583 L 906.00183 237.13513 Z" fill="white"/><path d="M 906.00183 237.13513 C 906.00183 234.57742 905.7161 234.26098 903.62876 231.72973 L 903.6067 231.70354 C 901.50836 229.14583 901.48653 229.14583 899.33306 229.14583 C 896.46566 229.14583 883.50183 229.14583 883.50183 229.14583 L 883.50183 256.14583 L 906.00183 256.14583 L 906.00183 237.13513 Z M 906.00183 237.00337 C 906.00183 234.57742 905.9798 234.57742 901.48653 234.57742 L 901.48653 234.57742 C 901.48653 229.1723 901.48653 229.14583 899.4649 229.14583" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="894.75183" cy="244.28004" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="894.75183" cy="244.28004" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 892.3379 244.93506 L 896.2157 244.93506 L 896.2157 244.93506" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 896.2157 244.93506 L 896.2157 244.93506 L 897.93917 241.32656" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="895.454" y1="243.50782" x2="891.707" y2="243.50782" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 895.8849 242.26908 L 895.8849 242.26908 L 891.3685 242.26908" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 896.3773 241.03034 L 896.3773 241.03034 L 890.8299 241.03034" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 899.66263 240.8957 L 899.66263 240.8957 L 897.93917 240.8957" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="892.2302" cy="246.80663" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="892.2302" cy="246.80663" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="896.108" cy="246.80663" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="896.108" cy="246.80663" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(785.50183 238.78004)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9560547" y="9" textLength="81.043945">Goods and Services</tspan></text><text transform="translate(818.13553 275.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.795907" y="9" textLength="28.516113">Invoice</tspan></text><path d="M 904.3407 276.13513 C 904.3407 273.57742 904.05494 273.26098 901.9676 270.72973 L 901.94556 270.70354 C 899.8472 268.14583 899.8254 268.14583 897.6719 268.14583 C 894.8045 268.14583 881.8407 268.14583 881.8407 268.14583 L 881.8407 295.14583 L 904.3407 295.14583 L 904.3407 276.13513 Z" fill="white"/><path d="M 904.3407 276.13513 C 904.3407 273.57742 904.05494 273.26098 901.9676 270.72973 L 901.94556 270.70354 C 899.8472 268.14583 899.8254 268.14583 897.6719 268.14583 C 894.8045 268.14583 881.8407 268.14583 881.8407 268.14583 L 881.8407 295.14583 L 904.3407 295.14583 L 904.3407 276.13513 Z M 904.3407 276.00337 C 904.3407 273.57742 904.31864 273.57742 899.8254 273.57742 L 899.8254 273.57742 C 899.8254 268.1723 899.8254 268.14583 897.80376 268.14583" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="873.1115" y="253.16667" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(873.1115 253.16667) scale(.15356445)"/></g><text transform="translate(767.43933 58.666667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".48388672" y="9" textLength="30.032227">Legend</tspan></text><path d="M 877.8011 450.2668 L 904.94755 450.2668 L 904.94755 469.26933 L 877.8011 469.26933 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="877.4137" y="450.2668" width="15.75" height="6.75" fill="#c6f"/><rect x="877.4137" y="450.2668" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(797.44755 450.20758)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".97265625" y="9" textLength="68.027344">Payment Service</tspan></text><ellipse cx="176.16667" cy="465.66312" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 459.66312)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">1</tspan></text><text transform="translate(198.73958 457.70125)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="9" textLength="311.65137">Sally (Payer) is shopping on-line at Happy Co. on a computer via web browser</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="42" textLength="459.25488">Sally (Payer) selects what she would like to buy by adding them to her cart and also indicates that she has coupons</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="64" textLength="42.020508">Happy Co’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="41.862305" y="64" textLength="15.495117">s W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="57.19922" y="64" textLength="372.68701">eb-Site uses the cart information and loyalty information to request an invoice from Happy Co’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="429.72803" y="64" textLength="45.017578">s Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="474.25342" y="64" textLength="23.519531">Agent</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="86" textLength="42.020508">Happy Co’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="41.862305" y="86" textLength="45.017578">s Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="86.387695" y="86" textLength="192.11572">Agent generates a standard formatted Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="278.01123" y="86" textLength="144.07031">Agent Invoice with a URI that specifi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="422.08154" y="86" textLength="39.019043">es where </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="97" textLength="19.010742">confi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.010742" y="97" textLength="179.61328">rmation of payment should be sent once paid</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="119" textLength="123.57422">Once generated, by Happy Co’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="123.416016" y="119" textLength="160.08398">s Payment agent it is presented to Sally’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="283.3418" y="119" textLength="60.5083">s (Payer) User </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="343.3579" y="119" textLength="119.04785">Agent (Browser) which identifi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="462.40576" y="119" textLength="55.032715">es the invoice</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="130" textLength="57.52881">as a Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="57.03662" y="130" textLength="57.03662">Agent Invoice.</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="152" textLength="21.506836">Sally’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="21.348633" y="152" textLength="493.74316">s user agent presents a “Pay” button , which sally clicks. Because this is a payment agent generated URI, Sally is prompted</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="163" textLength="524.30273">redirected to her cloud wallet provider and asked to authenticate and authorize the payment. (NOTE: before shopping at Happy CO,</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="174" textLength="116.063965">Sally signed up for Cloud Co’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="115.90576" y="174" textLength="205.0752">s wallet service which assisted her in correctly confi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="320.98096" y="174" textLength="199.1206">guring her user agent to connect to the Cloud CO </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="185" textLength="47.02588">cloud wallet</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="207" textLength="239.63818">Once Sally authenticates and authorizes the payment, Sally’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="239.47998" y="207" textLength="113.5459">s Cloud Co wallet (Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="352.5337" y="207" textLength="92.557617">Agent) connects to the </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="218" textLength="405.71191">Payment Service that Sally chose by selecting her preferred instrument and executes the transaction. </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="240" textLength="316.64355">The Payment Service uses the URI from the original invoice to notify Happy Co’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="316.48535" y="240" textLength="238.13525">s payment system that the payment has been received and </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="251" textLength="38.021484">also notifi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="38.021484" y="251" textLength="217.13379">es Sally that her payment has been sent and received.</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="284" textLength="173.58838">Once Happy Co receives the payment confi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="173.58838" y="284" textLength="74.518066">rmation from Sally’</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="247.94824" y="284" textLength="305.63086">s Payment Serivce, it will ship sally her order along with notifying her with a fi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="553.5791" y="284" textLength="12.010254">nal</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="295" textLength="19.010742">confi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.010742" y="295" textLength="32.510742">rmation.</tspan></text><ellipse cx="176.16667" cy="496.03812" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 490.03812)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">2</tspan></text><ellipse cx="176.16667" cy="520.78812" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 514.78812)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">3</tspan></text><ellipse cx="176.16667" cy="545.53812" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 539.53812)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">4</tspan></text><ellipse cx="176.16667" cy="575.91312" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 569.91312)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">5</tspan></text><ellipse cx="176.16667" cy="606.20125" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 600.20125)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">6</tspan></text><ellipse cx="176.16667" cy="662.53812" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 656.53812)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">7</tspan></text><ellipse cx="176.16667" cy="697.41312" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 691.41312)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">8</tspan></text><ellipse cx="176.16667" cy="739.03812" rx="10.100889" ry="10.03814" fill="#535353"/><text transform="translate(171.08597 733.03812)" fill="white"><tspan font-family="Helvetica" font-size="10" font-weight="bold" fill="white" x="2.2999364" y="10" textLength="5.5615234">9</tspan></text></g><g><title>Legend</title><text transform="translate(740.68933 498.875)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="9" textLength="36.492188">W3C - W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="36.333984" y="9" textLength="112.55713">eb Payments Interest Group</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="20" textLength="38.01709">Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="37.524902" y="20" textLength="74.052246">Agent Conceptual </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="111.08496" y="20" textLength="48.019043">Architecture</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="31" textLength="61.523438">Author: Patrick </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="61.03125" y="31" textLength="21.010254">Adler</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="81.549316" y="31" textLength="140.07129">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="42" textLength="6.0029297">V</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="5.5107422" y="42" textLength="39.524414">ersion 0.2</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="53" textLength="30.027832">3/19/15</tspan></text></g><g><title>Out of Band Notification 1</title><path d="M 183.65732 207.16667 L 324.33333 207.16667 L 324.33333 265.16667 L 183.65732 265.16667 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="185.33333" y="207.16667" width="81.618273" height="14.097222" fill="#2f72ff"/><rect x="185.33333" y="207.16667" width="81.618273" height="14.097222" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(190.33333 208.71528)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="10.4636776" y="9" textLength="34.510254">Cloud W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="44.644342" y="9" textLength="16.510254">allet</tspan></text><path d="M 257.56833 277.07847 C 275.42127 317.02632 258.78154 352.85846 242.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 319.68544 137.683975 C 367.34974 134.70718 479.88758 135.08854 503.83333 139.05998" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 148.222365 64.50924 C 248.79279 60.508945 357.53132 52.38815 447.66667 53.666667 C 541.66667 55 679.66667 66.520833 679.66667 96.854167 C 679.66667 127.1875 662.33333 135 640.45833 134.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 494.60155 126.69719 C 454.6144 97.442146 339.20443 92.795573 306.33333 125.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 544.1683 203.84039 C 538.8455 185.2851 545.62083 167.10417 549.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 571.85064 166.06451 C 571.8876 178.06938 571.96103 179.25522 571.83334 211.16667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.30095 195.26824 C 229.97925 179.01098 230.64368 167.0153 234.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 229.9204 365.49974 C 223.25924 335.6563 230.46174 279.05615 234.33333 264" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 542.35586 251.77374 C 516.738 295.47028 268.66728 353.0305 252.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z" fill="white"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z M 237.67708 299.5242 C 237.67708 297.09826 237.65503 297.09826 233.16178 297.09826 L 233.16178 297.09826 C 233.16178 291.69313 233.16178 291.66667 231.14016 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(223.29846 299.16667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 439.875 306.568 C 439.875 304.01028 439.58925 303.69384 437.50192 301.1626 L 437.47988 301.1364 C 435.38153 298.5787 435.3597 298.5787 433.20623 298.5787 C 430.33883 298.5787 417.375 298.5787 417.375 298.5787 L 417.375 325.5787 L 439.875 325.5787 L 439.875 306.568 Z" fill="white"/><path d="M 439.875 306.568 C 439.875 304.01028 439.58925 303.69384 437.50192 301.1626 L 437.47988 301.1364 C 435.38153 298.5787 435.3597 298.5787 433.20623 298.5787 C 430.33883 298.5787 417.375 298.5787 417.375 298.5787 L 417.375 325.5787 L 439.875 325.5787 L 439.875 306.568 Z M 439.875 306.43623 C 439.875 304.01028 439.85295 304.01028 435.3597 304.01028 L 435.3597 304.01028 C 435.3597 298.60515 435.3597 298.5787 433.33808 298.5787" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="428.20313" cy="312.0787" r="8.028609" fill="#404040"/><circle cx="428.20313" cy="312.0787" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 424.5643 312.83691 L 427.2696 315.1193 L 432.43232 309.78887" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z" fill="white"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z M 583.08333 181.83671 C 583.08333 179.41076 583.0613 179.41076 578.56803 179.41076 L 578.56803 179.41076 C 578.56803 174.00563 578.56803 173.97917 576.5464 173.97917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="551.85417" y="159" width="39.3125" height="39.3125" id="path_2"/><clipPath id="clip_path_2"><use xl:href="#path_2"/></clipPath><g clip-path="url(#clip_path_2)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(551.85417 159) scale(.15356445)"/></g><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z" fill="white"/><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z M 551.58333 178.52421 C 551.58333 176.09826 551.56128 176.09826 547.06803 176.09826 L 547.06803 176.09826 C 547.06803 170.69313 547.06803 170.66667 545.0464 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 537.91942 186.45589 L 541.7972 186.45589 L 541.7972 186.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 541.7972 186.45589 L 541.7972 186.45589 L 543.52067 182.8474" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="541.03552" y1="185.02866" x2="537.28848" y2="185.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.4664 183.78991 L 541.4664 183.78991 L 536.94998 183.78991" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.9588 182.55117 L 541.9588 182.55117 L 536.4114 182.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 545.24413 182.41653 L 545.24413 182.41653 L 543.52067 182.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z" fill="white"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z M 404.48958 97.524207 C 404.48958 95.098257 404.46753 95.098257 399.97428 95.098257 L 399.97428 95.098257 C 399.97428 89.693127 399.97428 89.666667 397.95266 89.666667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.82567 105.45589 L 394.70346 105.45589 L 394.70346 105.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 394.70346 105.45589 L 394.70346 105.45589 L 396.42692 101.847396" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="393.94177" y1="104.02866" x2="390.19473" y2="104.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.37264 102.789914 L 394.37264 102.789914 L 389.85623 102.789914" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.86503 101.55117 L 394.86503 101.55117 L 389.31765 101.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 398.15038 101.41653 L 398.15038 101.41653 L 396.42692 101.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.8125 133.65597 C 404.8125 131.09826 404.52675 130.78182 402.43942 128.25057 L 402.41737 128.22438 C 400.31902 125.66667 400.2972 125.66667 398.14372 125.66667 C 395.27632 125.66667 382.3125 125.66667 382.3125 125.66667 L 382.3125 152.66667 L 404.8125 152.66667 L 404.8125 133.65597 Z" fill="white"/><path d="M 404.8125 133.65597 C 404.8125 131.09826 404.52675 130.78182 402.43942 128.25057 L 402.41737 128.22438 C 400.31902 125.66667 400.2972 125.66667 398.14372 125.66667 C 395.27632 125.66667 382.3125 125.66667 382.3125 125.66667 L 382.3125 152.66667 L 404.8125 152.66667 L 404.8125 133.65597 Z M 404.8125 133.52421 C 404.8125 131.09826 404.79045 131.09826 400.2972 131.09826 L 400.2972 131.09826 C 400.2972 125.69313 400.2972 125.66667 398.27557 125.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="373.58333" y="110.6875" width="39.3125" height="39.3125" id="path_3"/><clipPath id="clip_path_3"><use xl:href="#path_3"/></clipPath><g clip-path="url(#clip_path_3)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(373.58333 110.6875) scale(.15356445)"/></g><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z" fill="white"/><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z M 246.40625 169.52421 C 246.40625 167.09826 246.3842 167.09826 241.89095 167.09826 L 241.89095 167.09826 C 241.89095 161.69313 241.89095 161.66667 239.86932 161.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="215.17708" y="146.6875" width="39.3125" height="39.3125" id="path_4"/><clipPath id="clip_path_4"><use xl:href="#path_4"/></clipPath><g clip-path="url(#clip_path_4)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(215.17708 146.6875) scale(.15356445)"/></g><path d="M 602.7796 164.49295 C 608.1024 183.04823 601.3271 201.22917 597.6146 215.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z" fill="white"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z M 615.1875 178.52421 C 615.1875 176.09826 615.16545 176.09826 610.6722 176.09826 L 610.6722 176.09826 C 610.6722 170.69313 610.6722 170.66667 608.65058 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="603.51563" cy="185.49479" r="8.028609" fill="#404040"/><circle cx="603.51563" cy="185.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 599.8768 186.25301 L 602.5821 188.53539 L 607.7448 183.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 411.11292 118.96465 C 411.66348 122.75518 414.92658 125.666685 418.86973 125.66667 C 423.19887 125.666685 426.70835 122.15723 426.70833 117.82806 C 426.70835 113.88491 423.79683 110.62181 420.00632 110.07125 L 420.02477 110.0528 L 408.70833 107.666313 L 411.0948 118.98276 Z" fill="#535353"/><text transform="translate(415.25145 111.12226)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">2</tspan></text><path d="M 514.70406 191.89093 C 511.02653 194.63526 505.79604 194.33728 502.45576 190.997 C 498.78834 187.32957 498.78834 181.38351 502.45576 177.71608 C 505.79604 174.3758 511.02653 174.07782 514.70406 176.82213 L 514.70406 176.79076 L 526.3125 184.35581 L 514.70406 191.92083 Z" fill="#535353"/><text transform="translate(504.3865 178.05242)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">3</tspan></text><path d="M 209.48732 185.60062 C 206.00093 188.20231 201.04229 187.91982 197.87562 184.75315 C 194.39882 181.27634 194.39882 175.63931 197.87562 172.1625 C 201.04229 168.99583 206.00093 168.71334 209.48732 171.31501 L 209.48732 171.28528 L 220.49242 178.45713 L 209.48732 185.62897 Z" fill="#535353"/><text transform="translate(199.96588 172.88849)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.8242312" y="9" textLength="5.005371">5</tspan></text><path d="M 198.97489 315.50412 C 195.29736 318.24845 190.06687 317.95047 186.72659 314.61019 C 183.05917 310.94276 183.05917 304.9967 186.72659 301.32927 C 190.06687 297.98899 195.29736 297.69101 198.97489 300.43532 L 198.97489 300.40395 L 210.58333 307.969 L 198.97489 315.53402 Z" fill="#535353"/><text transform="translate(188.65732 302.3966)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">6</tspan></text><path d="M 454.8264 322.42127 C 458.49378 325.15802 463.70983 324.86086 467.0409 321.5298 C 470.69819 317.8725 470.69819 311.94285 467.0409 308.28555 C 463.70983 304.95449 458.49378 304.65733 454.8264 307.39406 L 454.8264 307.36278 L 443.25 314.90694 L 454.8264 322.45109 Z" fill="#535353"/><text transform="translate(454.4929 309.33474)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3084137" y="9" textLength="5.005371">7</tspan></text><path d="M 194.87085 150.726 C 160.858375 139.98635 186.87504 79.425777 144.66667 80.333333" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 632.11315 191.79131 C 635.83473 194.5685 641.12787 194.26696 644.50816 190.88667 C 648.2195 187.17531 648.2195 181.15802 644.50816 177.44667 C 641.12787 174.06638 635.83473 173.76483 632.11315 176.54201 L 632.11315 176.51026 L 620.36566 184.16592 L 632.11315 191.82157 Z" fill="#535353"/><text transform="translate(631.70082 178.59266)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.4534163" y="9" textLength="5.005371">8</tspan></text><path d="M 375.92875 150.98603 C 375.37818 154.77656 372.1151 157.68806 368.17194 157.68805 C 363.8428 157.68806 360.33332 154.17861 360.33333 149.84944 C 360.33332 145.90629 363.24483 142.64319 367.03535 142.09263 L 367.0169 142.07418 L 378.33333 139.68769 L 375.94688 151.00414 Z" fill="#535353"/><text transform="translate(365.93638 143.14364)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">4</tspan></text><path d="M 168.37199 118.63149 C 167.82143 122.422025 164.55833 125.33353 160.61519 125.33351 C 156.28604 125.33353 152.77656 121.82407 152.77658 117.4949 C 152.77656 113.55176 155.68808 110.28865 159.47859 109.738094 L 159.46014 109.719643 L 170.77658 107.333157 L 168.39012 118.6496 Z" fill="#535353"/><text transform="translate(158.37963 110.7891)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">1</tspan></text><path d="M 691.41416 97.4615 C 695.13574 100.2387 700.4289 99.93715 703.80917 96.55686 C 707.52052 92.845505 707.52052 86.828214 703.80917 83.11686 C 700.4289 79.73657 695.13574 79.43502 691.41416 82.2122 L 691.41416 82.18046 L 679.66667 89.836117 L 691.41416 97.49176 Z" fill="#535353"/><text transform="translate(691.00183 84.26285)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="3.7473145" y="9" textLength="5.005371">9</tspan></text><path d="M 268.90625 299.65597 C 268.90625 297.09826 268.6205 296.78182 266.53317 294.25057 L 266.51112 294.22438 C 264.41277 291.66667 264.39095 291.66667 262.23747 291.66667 C 259.37007 291.66667 246.40625 291.66667 246.40625 291.66667 L 246.40625 318.66667 L 268.90625 318.66667 L 268.90625 299.65597 Z" fill="white"/><path d="M 268.90625 299.65597 C 268.90625 297.09826 268.6205 296.78182 266.53317 294.25057 L 266.51112 294.22438 C 264.41277 291.66667 264.39095 291.66667 262.23747 291.66667 C 259.37007 291.66667 246.40625 291.66667 246.40625 291.66667 L 246.40625 318.66667 L 268.90625 318.66667 L 268.90625 299.65597 Z M 268.90625 299.5242 C 268.90625 297.09826 268.8842 297.09826 264.39095 297.09826 L 264.39095 297.09826 C 264.39095 291.69313 264.39095 291.66667 262.36932 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="237.67708" y="276.6875" width="39.3125" height="39.3125" id="path_5"/><clipPath id="clip_path_5"><use xl:href="#path_5"/></clipPath><g clip-path="url(#clip_path_5)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(237.67708 276.6875) scale(.15356445)"/></g><text transform="translate(160.06579 429.17133)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x=".36938477" y="9" textLength="40.016602">Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="40.056396" y="9" textLength="144.00879">Agent Model 1B - Cloud Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="183.7356" y="9" textLength="36.492188">Agent W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="220.14868" y="9" textLength="90.479004">ith Out of Band Confi</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="310.62769" y="9" textLength="33.00293">rmation</tspan></text></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/model_2A_payer_initiated_wallet_access.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="78 41 870 527" width="870pt" height="527pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-13 04:46Z</dc:date></metadata><defs><font-face font-family="Helvetica Neue" font-size="9" panose-1="2 0 5 3 0 0 0 2 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="517" cap-height="714" ascent="952.00193" descent="-213.00043" font-weight="500"><font-face-src><font-face-name name="HelveticaNeue"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="9" panose-1="2 0 8 3 0 0 0 9 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="517" cap-height="714" ascent="975.002" descent="-217.00044" font-weight="bold"><font-face-src><font-face-name name="HelveticaNeue-Bold"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-6 -3 7 6" markerWidth="7" markerHeight="6" color="gray"><g><path d="M -4.8 0 L 0 1.8 L 0 -1.8 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Model 2 - Remote Payment Agent</title><rect fill="white" width="972" height="1106"/><g><title>Layer 1</title><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" fill="white"/><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(159.26644 406.35447)" fill="#404040"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" fill="#404040" x="53.999717" y="9" textLength="67.842">Payment Service</tspan></text><path d="M 183.30316 98.666667 L 323.97917 98.666667 L 323.97917 172.125 L 183.30316 172.125 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="184.97917" y="98.666667" width="81.618273" height="14.080912" fill="#2f72ff"/><rect x="184.97917" y="98.666667" width="81.618273" height="14.080912" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(189.97917 100.20712)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="16.051324" y="9" textLength="39.515625">Computer</tspan></text><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" fill="#507baf"/><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 133.165406)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="30.993408" y="9" textLength="36.013184">Browser</tspan></text><circle cx="215.97917" cy="137.66667" r="9.0000144" fill="#404040"/><circle cx="215.97917" cy="137.66667" r="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="210.07596" y="132.959915" width="11.821943" height="2.2831108" fill="white"/><rect x="213.27917" y="136.40551" width="8.618738" height="2.2831108" fill="white"/><rect x="213.27917" y="139.83018" width="8.618738" height="2.2831108" fill="white"/><rect x="210.07596" y="136.24883" width="2.2831108" height="5.864461" fill="white"/><path d="M 199.97917 226.01372 L 303.97917 226.01372 C 305.08374 226.01372 305.97917 226.90915 305.97917 228.01372 L 305.97917 251.01372 C 305.97917 252.11829 305.08374 253.01372 303.97917 253.01372 L 199.97917 253.01372 C 198.8746 253.01372 197.97917 252.11829 197.97917 251.01372 L 197.97917 228.01372 C 197.97917 226.90915 198.8746 226.01372 199.97917 226.01372 Z" fill="#e0edff"/><path d="M 199.97917 226.01372 L 303.97917 226.01372 C 305.08374 226.01372 305.97917 226.90915 305.97917 228.01372 L 305.97917 251.01372 C 305.97917 252.11829 305.08374 253.01372 303.97917 253.01372 L 199.97917 253.01372 C 198.8746 253.01372 197.97917 252.11829 197.97917 251.01372 L 197.97917 228.01372 C 197.97917 226.90915 198.8746 226.01372 199.97917 226.01372 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 234.01372)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="13.164795" y="9" textLength="53.99121"> Cloud W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="66.826416" y="9" textLength="18.008789">allet</tspan></text><ellipse cx="216.04889" cy="240.01372" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="216.04889" cy="240.01372" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.90534 235.72503 L 221.00079 235.54743 C 221.55298 235.53772 222.0085 235.97749 222.01822 236.52969 C 222.01822 236.52969 222.01822 236.52969 222.01822 236.52969 L 222.11921 242.2708 C 222.12893 242.82299 221.68916 243.27851 221.13696 243.28823 L 211.04151 243.46582 C 210.48931 243.47553 210.03379 243.03576 210.02408 242.48356 C 210.02408 242.48356 210.02408 242.48356 210.02408 242.48356 L 209.92308 236.74246 C 209.91337 236.19026 210.35314 235.73474 210.90534 235.72503 Z" fill="white"/><path d="M 210.90534 235.72503 L 221.00079 235.54743 C 221.55298 235.53772 222.0085 235.97749 222.01822 236.52969 C 222.01822 236.52969 222.01822 236.52969 222.01822 236.52969 L 222.11921 242.2708 C 222.12893 242.82299 221.68916 243.27851 221.13696 243.28823 L 211.04151 243.46582 C 210.48931 243.47553 210.03379 243.03576 210.02408 242.48356 C 210.02408 242.48356 210.02408 242.48356 210.02408 242.48356 L 209.92308 236.74246 C 209.91337 236.19026 210.35314 235.73474 210.90534 235.72503 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 221.24159 237.50484 L 213.93852 237.47278 L 219.48688 234.36856 Z" fill="white"/><path d="M 221.24159 237.50484 L 213.93852 237.47278 L 219.48688 234.36856 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 220.82605 237.42769 L 214.74869 237.40101 L 219.36584 234.81778 Z" fill="#3f3f3f"/><path d="M 220.82605 237.42769 L 214.74869 237.40101 L 219.36584 234.81778 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 221.42843 237.70627 C 221.42843 237.78592 221.20157 237.8511 220.9243 237.8511 L 213.8665 237.8511 C 213.58923 237.8511 213.36238 237.78592 213.36238 237.70627 L 213.36238 237.41661 C 213.36238 237.3371 213.58923 237.27178 213.8665 237.27178 L 220.9243 237.27178 C 221.20157 237.27178 221.42843 237.3371 221.42843 237.41661 Z" fill="#3f3f3f"/><path d="M 221.42843 238.58056 C 221.42843 238.66021 221.20157 238.72539 220.9243 238.72539 L 213.8665 238.72539 C 213.58923 238.72539 213.36238 238.66021 213.36238 238.58056 L 213.36238 238.2909 C 213.36238 238.21138 213.58923 238.14607 213.8665 238.14607 L 220.9243 238.14607 C 221.20157 238.14607 221.42843 238.21138 221.42843 238.2909 Z" fill="#3f3f3f"/><path d="M 210.0769 243.63176 L 217.65513 245.96787 C 218.1829 246.13056 218.74264 245.8346 218.90534 245.30683 C 218.93514 245.21017 218.9501 245.10954 218.9497 245.00839 L 218.92542 238.70057 C 218.92374 238.26319 218.638 237.87765 218.22002 237.7488 L 210.64179 235.41269 C 210.11401 235.25 209.55427 235.54595 209.39158 236.07373 C 209.36178 236.17039 209.34682 236.27101 209.34721 236.37216 L 209.37149 242.67998 C 209.37318 243.11737 209.65892 243.50291 210.0769 243.63176 Z" fill="#3f3f3f"/><path d="M 210.0769 243.63176 L 217.65513 245.96787 C 218.1829 246.13056 218.74264 245.8346 218.90534 245.30683 C 218.93514 245.21017 218.9501 245.10954 218.9497 245.00839 L 218.92542 238.70057 C 218.92374 238.26319 218.638 237.87765 218.22002 237.7488 L 210.64179 235.41269 C 210.11401 235.25 209.55427 235.54595 209.39158 236.07373 C 209.36178 236.17039 209.34682 236.27101 209.34721 236.37216 L 209.37149 242.67998 C 209.37318 243.11737 209.65892 243.50291 210.0769 243.63176 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.54411 243.52592 L 217.21924 245.58363 C 217.74702 245.74633 218.30675 245.45037 218.46945 244.92259 C 218.49857 244.82812 218.51352 244.72986 218.51382 244.631 L 218.53085 238.944 C 218.53217 238.50409 218.24584 238.11498 217.82545 237.98539 L 211.15032 235.92767 C 210.62254 235.76498 210.0628 236.06094 209.9001 236.58871 C 209.87098 236.68318 209.85603 236.78145 209.85573 236.8803 L 209.8387 242.5673 C 209.83738 243.00721 210.12371 243.39632 210.54411 243.52592 Z" fill="white"/><path d="M 210.54411 243.52592 L 217.21924 245.58363 C 217.74702 245.74633 218.30675 245.45037 218.46945 244.92259 C 218.49857 244.82812 218.51352 244.72986 218.51382 244.631 L 218.53085 238.944 C 218.53217 238.50409 218.24584 238.11498 217.82545 237.98539 L 211.15032 235.92767 C 210.62254 235.76498 210.0628 236.06094 209.9001 236.58871 C 209.87098 236.68318 209.85603 236.78145 209.85573 236.8803 L 209.8387 242.5673 C 209.83738 243.00721 210.12371 243.39632 210.54411 243.52592 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 489.98514 98.666667 L 652.47917 98.666667 L 652.47917 256.16667 L 489.98514 256.16667 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" fill="silver"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(494.63542 101.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.8218924" y="9" textLength="111.032227">Merchant E-Commerce Site</tspan></text><path d="M 129.68966 70.38161 C 129.67511 70.50616 129.56721 70.595397 129.44945 70.580007 L 127.67944 70.34902 C 127.56085 70.334064 127.47651 70.219935 127.49149 70.095384 L 127.75436 67.82723 C 127.770216 67.70268 127.858844 67.611195 127.955615 67.623423 C 128.052386 67.636556 128.12945 67.645614 128.12945 67.645614 L 128.06821 68.17461 L 129.568076 68.36981 L 129.62972 67.84127 L 129.80399 67.86301 C 129.90074 67.876597 129.96754 67.988012 129.95212 68.11256 Z M 129.438324 67.592624 L 129.371955 68.16057 L 128.30714 68.02243 L 128.373076 67.45449 Z M 127.0145 70.214508 L 124.57742 70.214508 L 124.57742 69.38387 C 124.57742 68.11256 124.17837 67.17595 123.45178 66.656016 C 123.72495 66.33536 124.118 66.161894 124.62109 66.158724 L 124.543594 66.02602 C 124.50035 65.953557 124.562004 65.89604 124.681034 65.89604 L 124.86172 65.89604 C 124.96148 65.89604 125.113464 65.963522 125.20125 66.05048 L 126.14106 66.982107 L 127.08174 66.05048 C 127.16866 65.963522 127.312525 65.89604 127.40286 65.89604 L 127.566846 65.89604 C 127.68544 65.89604 127.74625 65.95673 127.70214 66.031457 C 127.65762 66.107092 127.62165 66.168236 127.62165 66.168236 C 128.325546 66.215338 128.798655 66.613896 128.999906 67.3005 L 128.17997 67.19271 L 128.15985 67.367984 L 127.82931 67.32405 C 127.68544 67.30639 127.546705 67.49344 127.51717 67.743894 L 127.25598 69.98849 C 127.24187 70.11304 127.13353 70.214508 127.0145 70.214508 M 124.226754 72.379854 L 122.633566 72.379854 C 122.5201 71.889804 122.4349 71.37937 122.4349 70.945047 C 122.4349 69.981714 122.13433 71.218584 122.08595 72.379854 L 117.84287 72.379854 C 117.79493 71.218584 117.493485 69.981714 117.493485 70.945047 C 117.493485 71.37937 117.40787 71.889804 117.296114 72.379854 L 115.67681 72.379854 L 115.67681 69.38387 C 115.67681 67.66373 116.45606 66.656016 117.83901 66.56362 C 117.8373 66.55864 118.27488 66.54596 118.27488 66.54596 C 118.545485 67.14153 119.128205 67.495702 119.88049 67.495702 C 120.726536 67.495702 121.32468 67.160552 121.62867 66.54596 C 122.05084 66.557282 122.04784 66.562717 122.04784 66.562717 C 123.442364 66.648315 124.226754 67.65694 124.226754 69.38387 Z M 119.89633 61.61155 C 121.24761 61.61155 121.898414 62.240193 121.898414 63.752436 C 121.898414 65.264233 121.24761 66.49025 119.89633 66.49025 C 118.54462 66.49025 117.89425 65.264233 117.89425 63.752436 C 117.89425 62.240193 118.54462 61.61155 119.89633 61.61155 M 126.12222 62.59481 C 127.06203 62.59481 127.51459 63.03094 127.51459 64.08351 C 127.51459 65.135157 127.06203 65.98707 126.12222 65.98707 C 125.18198 65.98707 124.729415 65.135157 124.729415 64.08351 C 124.729415 63.03094 125.18198 62.59481 126.12222 62.59481 M 122.21611 53.666667 C 115.16771 53.666667 109.452624 59.709807 109.452624 67.165987 C 109.452624 74.622177 115.16771 80.666667 122.21611 80.666667 C 129.26492 80.666667 134.97917 74.622177 134.97917 67.165987 C 134.97917 59.709807 129.26492 53.666667 122.21611 53.666667" fill="#3c3c3b"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" fill="#6d6d6d"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" stroke="#6d6d6d" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 133.66667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="43.577148" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="51.913574" y="9" textLength="29.509277">eb Site</tspan></text><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" fill="#404040"/><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 520.30424 136.89692 L 523.20114 136.89692 L 523.20114 137.19875 L 520.30424 137.19875 Z M 520.30424 137.43198 L 523.20114 137.43198 L 523.20114 137.73381 L 520.30424 137.73381 Z M 520.30414 137.942895 L 523.20114 137.942895 L 523.20114 138.24473 L 520.30414 138.24473 Z M 523.5374 136.208554 L 519.96796 136.208554 C 519.79792 136.208554 519.6601 136.32996 519.6601 136.47974 L 519.6601 140.7967 C 519.6601 140.94649 519.79792 141.06789 519.96796 141.06789 L 523.5374 141.06789 C 523.70745 141.06789 523.84527 140.94649 523.84527 140.7967 L 523.84527 136.47974 C 523.84527 136.32996 523.70745 136.208554 523.5374 136.208554" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" fill="#ccc"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" stroke="#b3b3b3" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 219.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="23.981934" y="9" textLength="77.036133"> Payment System</tspan></text><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" fill="white"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" fill="white"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" fill="#3f3f3f"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 527.42843 222.35922 C 527.42843 222.43887 527.20157 222.50405 526.9243 222.50405 L 519.8665 222.50405 C 519.58923 222.50405 519.36238 222.43887 519.36238 222.35922 L 519.36238 222.06956 C 519.36238 221.99005 519.58923 221.92473 519.8665 221.92473 L 526.9243 221.92473 C 527.20157 221.92473 527.42843 221.99005 527.42843 222.06956 Z" fill="#3f3f3f"/><path d="M 527.42843 223.2335 C 527.42843 223.31316 527.20157 223.37834 526.9243 223.37834 L 519.8665 223.37834 C 519.58923 223.37834 519.36238 223.31316 519.36238 223.2335 L 519.36238 222.94385 C 519.36238 222.86433 519.58923 222.79902 519.8665 222.79902 L 526.9243 222.79902 C 527.20157 222.79902 527.42843 222.86433 527.42843 222.94385 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" fill="white"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(92.541667 90.916667)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".245" y="9" textLength="39.51">Customer</tspan></text><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" fill="#d2c9de"/><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" stroke="#669" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(208.3125 379.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="20.116943" y="9" textLength="37.516113">Payment</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="17.539551" y="20" textLength="27.997559">Agent </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="45.20752" y="20" textLength="15.00293">API</tspan></text><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" fill="#404040"/><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" fill="white"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" fill="white"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" fill="#3f3f3f"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.7966 385.59456 C 219.7966 385.66522 219.59537 385.72303 219.34941 385.72303 L 213.08868 385.72303 C 212.84273 385.72303 212.64149 385.66522 212.64149 385.59456 L 212.64149 385.3376 C 212.64149 385.26708 212.84273 385.20914 213.08868 385.20914 L 219.34941 385.20914 C 219.59537 385.20914 219.7966 385.26708 219.7966 385.3376 Z" fill="#3f3f3f"/><path d="M 219.7966 386.3701 C 219.7966 386.44077 219.59537 386.49858 219.34941 386.49858 L 213.08868 386.49858 C 212.84273 386.49858 212.64149 386.44077 212.64149 386.3701 L 212.64149 386.11316 C 212.64149 386.04263 212.84273 385.98469 213.08868 385.98469 L 219.34941 385.98469 C 219.59537 385.98469 219.7966 386.04263 219.7966 386.11316 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" fill="white"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 183.65732 204.12049 L 324.33333 204.12049 L 324.33333 277.57882 L 183.65732 277.57882 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="185.33333" y="204.12049" width="116.16667" height="14.080912" fill="#2f72ff"/><rect x="185.33333" y="204.12049" width="116.16667" height="14.080912" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(190.33333 205.66094)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="6.483724" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="14.648763" y="9" textLength="85.03418">allet Service Provider</tspan></text></g><g><title>Legend</title><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(800.68874 154.751145)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".984" y="9" textLength="29.016">Human</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="8.337" y="20" textLength="21.663">Actor</tspan></text><path d="M 859.023 169.04828 C 859.00844 169.17283 858.90054 169.26206 858.7828 169.24667 L 857.0128 169.01569 C 856.8942 169.00073 856.80984 168.8866 856.8248 168.76205 L 857.0877 166.4939 C 857.10355 166.36935 857.1922 166.27786 857.28895 166.29009 C 857.3857 166.30322 857.4628 166.31228 857.4628 166.31228 L 857.40155 166.84128 L 858.9014 167.03648 L 858.96306 166.50794 L 859.1373 166.52968 C 859.23407 166.54326 859.30087 166.65468 859.28546 166.77923 Z M 858.77166 166.25929 L 858.7053 166.82724 L 857.64047 166.6891 L 857.7064 166.12116 Z M 856.34784 168.88117 L 853.91075 168.88117 L 853.91075 168.05054 C 853.91075 166.77923 853.5117 165.84262 852.7851 165.32268 C 853.0583 165.002025 853.45133 164.82856 853.9544 164.82539 L 853.87693 164.69269 C 853.8337 164.62022 853.89534 164.56271 854.01437 164.56271 L 854.19505 164.56271 C 854.2948 164.56271 854.4468 164.63019 854.5346 164.71715 L 855.4744 165.64877 L 856.41507 164.71715 C 856.502 164.63019 856.64586 164.56271 856.7362 164.56271 L 856.9002 164.56271 C 857.0188 164.56271 857.0796 164.6234 857.03547 164.69812 C 856.99095 164.77376 856.955 164.8349 856.955 164.8349 C 857.6589 164.882 858.132 165.28056 858.33324 165.96717 L 857.5133 165.85938 L 857.4932 166.03465 L 857.16264 165.99072 C 857.0188 165.97305 856.88004 166.16011 856.8505 166.41056 L 856.5893 168.65516 C 856.5752 168.77971 856.46687 168.88117 856.34784 168.88117 M 853.5601 171.04652 L 851.9669 171.04652 C 851.85344 170.55647 851.76823 170.04604 851.76823 169.61171 C 851.76823 168.64838 851.46766 169.88525 851.4193 171.04652 L 847.1762 171.04652 C 847.12826 169.88525 846.8268 168.64838 846.8268 169.61171 C 846.8268 170.04604 846.7412 170.55647 846.62945 171.04652 L 845.01015 171.04652 L 845.01015 168.05054 C 845.01015 166.3304 845.7894 165.32268 847.17235 165.23029 C 847.17064 165.22531 847.6082 165.212625 847.6082 165.212625 C 847.8788 165.8082 848.46154 166.16237 849.2138 166.16237 C 850.05987 166.16237 850.658 165.82722 850.962 165.212625 C 851.38417 165.22395 851.3812 165.22938 851.3812 165.22938 C 852.7757 165.31498 853.5601 166.3236 853.5601 168.05054 Z M 849.22966 160.27822 C 850.58094 160.27822 851.23175 160.90686 851.23175 162.4191 C 851.23175 163.9309 850.58094 165.15692 849.22966 165.15692 C 847.87795 165.15692 847.2276 163.9309 847.2276 162.4191 C 847.2276 160.90686 847.87795 160.27822 849.22966 160.27822 M 855.45556 161.26148 C 856.39537 161.26148 856.84793 161.69761 856.84793 162.75018 C 856.84793 163.80182 856.39537 164.65374 855.45556 164.65374 C 854.5153 164.65374 854.06275 163.80182 854.06275 162.75018 C 854.06275 161.69761 854.5153 161.26148 855.45556 161.26148 M 851.54944 152.33333 C 844.50104 152.33333 838.78596 158.37647 838.78596 165.83265 C 838.78596 173.28884 844.50104 179.33333 851.54944 179.33333 C 858.59826 179.33333 864.3125 173.28884 864.3125 165.83265 C 864.3125 158.37647 858.59826 152.33333 851.54944 152.33333" fill="#3c3c3b"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.3407 207.59389 L 857.0108 207.59389 L 857.0108 208.02222 L 853.3407 208.02222 Z M 853.3407 208.35319 L 857.0108 208.35319 L 857.0108 208.78153 L 853.3407 208.78153 Z M 853.34055 209.07824 L 857.0108 209.07824 L 857.0108 209.50658 L 853.34055 209.50658 Z M 857.4368 206.61702 L 852.91465 206.61702 C 852.6992 206.61702 852.5246 206.7893 852.5246 207.00186 L 852.5246 213.12812 C 852.5246 213.34068 852.6992 213.51297 852.91465 213.51297 L 857.4368 213.51297 C 857.65224 213.51297 857.82684 213.34068 857.82684 213.12812 L 857.82684 207.00186 C 857.82684 206.7893 857.65224 206.61702 857.4368 206.61702" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.16547 200.63907)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".823" y="9" textLength="30.177">System</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="9.337" y="20" textLength="21.663">Actor</tspan></text><text transform="translate(779.3125 115.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="2.2267396" y="9" textLength="47.331">User Agent)</tspan></text><circle cx="851.04557" cy="121.066406" r="13.266949" fill="#404040"/><circle cx="851.04557" cy="121.066406" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="842.34364" y="114.12817" width="17.426762" height="3.3655407" fill="white"/><rect x="847.0655" y="119.207336" width="12.704908" height="3.3655407" fill="white"/><rect x="847.0655" y="124.25565" width="12.704908" height="3.3655407" fill="white"/><rect x="842.34364" y="118.97637" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" fill="white"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" fill="white"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" fill="#3f3f3f"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 859.07835 250.66499 C 859.07835 250.78241 858.74394 250.87848 858.3352 250.87848 L 847.9313 250.87848 C 847.52257 250.87848 847.18815 250.78241 847.18815 250.66499 L 847.18815 250.238 C 847.18815 250.1208 847.52257 250.02451 847.9313 250.02451 L 858.3352 250.02451 C 858.74394 250.02451 859.07835 250.1208 859.07835 250.238 Z" fill="#3f3f3f"/><path d="M 859.07835 251.95378 C 859.07835 252.0712 858.74394 252.16727 858.3352 252.16727 L 847.9313 252.16727 C 847.52257 252.16727 847.18815 252.0712 847.18815 251.95378 L 847.18815 251.5268 C 847.18815 251.40958 847.52257 251.3133 847.9313 251.3133 L 858.3352 251.3133 C 858.74394 251.3133 859.07835 251.40958 859.07835 251.5268 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" fill="white"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(765.6245 248.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".314" y="9" textLength="61.686">Payment Agent</tspan></text><text transform="translate(771.8125 357.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".152" y="9" textLength="52.848">Payment info</tspan></text><text transform="translate(779.3125 439.27158)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="23.020917" y="9" textLength="22.995">Payer</tspan></text><path d="M 835.11176 435.27032 L 862.2582 435.27032 L 862.2582 454.27285 L 835.11176 454.27285 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" fill="#2f72ff"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 835.11176 466.3308 L 862.2582 466.3308 L 862.2582 485.33333 L 835.11176 485.33333 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" fill="silver"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(779.3125 466.27158)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="21.184917" y="9" textLength="24.831">Payee</tspan></text><text transform="translate(734.8125 393.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".144" y="9" textLength="89.856">Payment Confrimation</tspan></text><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z" fill="white"/><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z M 863.3125 357.19087 C 863.3125 354.76492 863.29045 354.76492 858.7972 354.76492 L 858.7972 354.76492 C 858.7972 349.3598 858.7972 349.33333 856.7756 349.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(848.9339 356.83333)" fill="white"><tspan font-family="Helvetica Neue" font-size="9" font-weight="bold" fill="white" x=".498" y="9" textLength="5.004">$</tspan></text><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z" fill="white"/><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z M 864.3125 395.19087 C 864.3125 392.76492 864.29045 392.76492 859.7972 392.76492 L 859.7972 392.76492 C 859.7972 387.3598 859.7972 387.33333 857.7756 387.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="852.6406" cy="402.16146" r="8.028609" fill="#404040"/><circle cx="852.6406" cy="402.16146" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.0018 402.91968 L 851.7071 405.20206 L 856.8698 399.87164" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z" fill="white"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z M 863.3125 280.19087 C 863.3125 277.76492 863.29045 277.76492 858.7972 277.76492 L 858.7972 277.76492 C 858.7972 272.3598 858.7972 272.33333 856.7756 272.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="852.0625" cy="287.46754" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="852.0625" cy="287.46754" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.6486 288.12256 L 853.5264 288.12256 L 853.5264 288.12256" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.5264 288.12256 L 853.5264 288.12256 L 855.24984 284.51406" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="852.7647" y1="286.69532" x2="849.01764" y2="286.69532" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 853.19555 285.45658 L 853.19555 285.45658 L 848.67914 285.45658" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 853.68795 284.21784 L 853.68795 284.21784 L 848.14056 284.21784" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 856.9733 284.0832 L 856.9733 284.0832 L 855.24984 284.0832" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="849.54087" cy="289.99413" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="849.54087" cy="289.99413" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="853.41866" cy="289.99413" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="853.41866" cy="289.99413" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(742.8125 281.96754)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".496" y="9" textLength="81.504">Goods and Services</tspan></text><text transform="translate(775.4462 318.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="19.64702" y="9" textLength="28.665">Invoice</tspan></text><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z" fill="white"/><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z M 861.65135 319.19087 C 861.65135 316.76492 861.6293 316.76492 857.13605 316.76492 L 857.13605 316.76492 C 857.13605 311.3598 857.13605 311.33333 855.11443 311.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="830.4222" y="296.35417" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(830.4222 296.35417) scale(.15356445)"/></g><text transform="translate(710.375 498.875)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="9" textLength="36.675">W3C - W</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="36.162" y="9" textLength="73.188">eb Payments Inter</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="109.188" y="9" textLength="24.498">est Gr</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="133.524" y="9" textLength="15.507">oup</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="20" textLength="121.86">Payment Agent Conceptual Ar</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="121.698" y="20" textLength="35.172">chitectur</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="156.708" y="20" textLength="4.833">e</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="31" textLength="83.34">Author: Patrick Adler</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="82.512" y="31" textLength="139.671">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="42" textLength="5.499">V</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="5.004" y="42" textLength="39.51">ersion 0.1</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="53" textLength="31.014">3/12/15</tspan></text><text transform="translate(726.3125 81.340386)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".4115" y="9" textLength="30.177">Legend</tspan></text></g><g><title>User Agent Initiated Wallet Access</title><path d="M 495.1009 152.67855 C 455.11374 181.93359 339.70378 186.58017 306.83269 153.70907" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 319.68544 137.683975 C 367.34974 134.70718 479.88758 135.08854 503.83333 139.05998" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 148.222365 64.50924 C 248.79279 60.508945 357.53132 52.38815 447.66667 53.666667 C 541.66667 55 679.66667 66.520833 679.66667 96.854167 C 679.66667 127.1875 662.33333 135 640.45833 134.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 494.60155 126.69719 C 454.6144 97.442146 339.20443 92.795573 306.33333 125.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 544.1683 203.84039 C 538.8455 185.2851 545.62083 167.10417 549.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 571.85064 166.06451 C 571.8876 178.06938 571.96103 179.25522 571.83334 211.16667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.80485 214.3468 C 229.95101 193.13284 230.56106 167.33659 234.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 260.956 162.26165 C 273.6878 178.64874 279.95734 199.92637 261.33333 226" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 230.19052 365.40569 C 224.02892 333.46124 233.78572 268.13306 237.67708 253" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 258.08772 264.89532 C 277.4884 306.66892 268.81933 352.80155 252.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z" fill="white"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z M 237.67708 299.5242 C 237.67708 297.09826 237.65503 297.09826 233.16178 297.09826 L 233.16178 297.09826 C 233.16178 291.69313 233.16178 291.66667 231.14016 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(223.29846 299.16667)" fill="white"><tspan font-family="Helvetica Neue" font-size="9" font-weight="bold" fill="white" x=".498" y="9" textLength="5.004">$</tspan></text><path d="M 281.58333 299.65597 C 281.58333 297.09826 281.29758 296.78182 279.21026 294.25057 L 279.18821 294.22438 C 277.08986 291.66667 277.06803 291.66667 274.91456 291.66667 C 272.04716 291.66667 259.08333 291.66667 259.08333 291.66667 L 259.08333 318.66667 L 281.58333 318.66667 L 281.58333 299.65597 Z" fill="white"/><path d="M 281.58333 299.65597 C 281.58333 297.09826 281.29758 296.78182 279.21026 294.25057 L 279.18821 294.22438 C 277.08986 291.66667 277.06803 291.66667 274.91456 291.66667 C 272.04716 291.66667 259.08333 291.66667 259.08333 291.66667 L 259.08333 318.66667 L 281.58333 318.66667 L 281.58333 299.65597 Z M 281.58333 299.5242 C 281.58333 297.09826 281.56128 297.09826 277.06803 297.09826 L 277.06803 297.09826 C 277.06803 291.69313 277.06803 291.66667 275.04641 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="269.91146" cy="305.16667" r="8.028609" fill="#404040"/><circle cx="269.91146" cy="305.16667" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 266.27262 305.92488 L 268.97794 308.20727 L 274.14065 302.87684" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 277 176.65597 C 277 174.09826 276.71425 173.78182 274.62692 171.25057 L 274.60487 171.22438 C 272.50652 168.66667 272.4847 168.66667 270.33122 168.66667 C 267.46382 168.66667 254.5 168.66667 254.5 168.66667 L 254.5 195.66667 L 277 195.66667 L 277 176.65597 Z" fill="white"/><path d="M 277 176.65597 C 277 174.09826 276.71425 173.78182 274.62692 171.25057 L 274.60487 171.22438 C 272.50652 168.66667 272.4847 168.66667 270.33122 168.66667 C 267.46382 168.66667 254.5 168.66667 254.5 168.66667 L 254.5 195.66667 L 277 195.66667 L 277 176.65597 Z M 277 176.52421 C 277 174.09826 276.97795 174.09826 272.4847 174.09826 L 272.4847 174.09826 C 272.4847 168.69313 272.4847 168.66667 270.46307 168.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="265.32812" cy="182.16667" r="8.028609" fill="#404040"/><circle cx="265.32812" cy="182.16667" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 261.68929 182.92488 L 264.39461 185.20727 L 269.55732 179.87684" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 405.33333 169.65597 C 405.33333 167.09826 405.04758 166.78182 402.96026 164.25057 L 402.9382 164.22438 C 400.83986 161.66667 400.81803 161.66667 398.66456 161.66667 C 395.79716 161.66667 382.83333 161.66667 382.83333 161.66667 L 382.83333 188.66667 L 405.33333 188.66667 L 405.33333 169.65597 Z" fill="white"/><path d="M 405.33333 169.65597 C 405.33333 167.09826 405.04758 166.78182 402.96026 164.25057 L 402.9382 164.22438 C 400.83986 161.66667 400.81803 161.66667 398.66456 161.66667 C 395.79716 161.66667 382.83333 161.66667 382.83333 161.66667 L 382.83333 188.66667 L 405.33333 188.66667 L 405.33333 169.65597 Z M 405.33333 169.52421 C 405.33333 167.09826 405.31128 167.09826 400.81803 167.09826 L 400.81803 167.09826 C 400.81803 161.69313 400.81803 161.66667 398.7964 161.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="393.66146" cy="176.49479" r="8.028609" fill="#404040"/><circle cx="393.66146" cy="176.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.02262 177.25301 L 392.72794 179.53539 L 397.89065 174.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z" fill="white"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z M 583.08333 181.83671 C 583.08333 179.41076 583.0613 179.41076 578.56803 179.41076 L 578.56803 179.41076 C 578.56803 174.00563 578.56803 173.97917 576.5464 173.97917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="551.85417" y="159" width="39.3125" height="39.3125" id="path_2"/><clipPath id="clip_path_2"><use xl:href="#path_2"/></clipPath><g clip-path="url(#clip_path_2)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(551.85417 159) scale(.15356445)"/></g><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z" fill="white"/><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z M 551.58333 178.52421 C 551.58333 176.09826 551.56128 176.09826 547.06803 176.09826 L 547.06803 176.09826 C 547.06803 170.69313 547.06803 170.66667 545.0464 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 537.91942 186.45589 L 541.7972 186.45589 L 541.7972 186.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 541.7972 186.45589 L 541.7972 186.45589 L 543.52067 182.8474" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="541.03552" y1="185.02866" x2="537.28848" y2="185.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.4664 183.78991 L 541.4664 183.78991 L 536.94998 183.78991" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.9588 182.55117 L 541.9588 182.55117 L 536.4114 182.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 545.24413 182.41653 L 545.24413 182.41653 L 543.52067 182.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z" fill="white"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z M 404.48958 97.524207 C 404.48958 95.098257 404.46753 95.098257 399.97428 95.098257 L 399.97428 95.098257 C 399.97428 89.693127 399.97428 89.666667 397.95266 89.666667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.82567 105.45589 L 394.70346 105.45589 L 394.70346 105.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 394.70346 105.45589 L 394.70346 105.45589 L 396.42692 101.847396" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="393.94177" y1="104.02866" x2="390.19473" y2="104.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.37264 102.789914 L 394.37264 102.789914 L 389.85623 102.789914" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.86503 101.55117 L 394.86503 101.55117 L 389.31765 101.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 398.15038 101.41653 L 398.15038 101.41653 L 396.42692 101.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.8125 133.65597 C 404.8125 131.09826 404.52675 130.78182 402.43942 128.25057 L 402.41737 128.22438 C 400.31902 125.66667 400.2972 125.66667 398.14372 125.66667 C 395.27632 125.66667 382.3125 125.66667 382.3125 125.66667 L 382.3125 152.66667 L 404.8125 152.66667 L 404.8125 133.65597 Z" fill="white"/><path d="M 404.8125 133.65597 C 404.8125 131.09826 404.52675 130.78182 402.43942 128.25057 L 402.41737 128.22438 C 400.31902 125.66667 400.2972 125.66667 398.14372 125.66667 C 395.27632 125.66667 382.3125 125.66667 382.3125 125.66667 L 382.3125 152.66667 L 404.8125 152.66667 L 404.8125 133.65597 Z M 404.8125 133.52421 C 404.8125 131.09826 404.79045 131.09826 400.2972 131.09826 L 400.2972 131.09826 C 400.2972 125.69313 400.2972 125.66667 398.27557 125.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="373.58333" y="110.6875" width="39.3125" height="39.3125" id="path_3"/><clipPath id="clip_path_3"><use xl:href="#path_3"/></clipPath><g clip-path="url(#clip_path_3)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(373.58333 110.6875) scale(.15356445)"/></g><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z" fill="white"/><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z M 246.40625 169.52421 C 246.40625 167.09826 246.3842 167.09826 241.89095 167.09826 L 241.89095 167.09826 C 241.89095 161.69313 241.89095 161.66667 239.86932 161.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="215.17708" y="146.6875" width="39.3125" height="39.3125" id="path_4"/><clipPath id="clip_path_4"><use xl:href="#path_4"/></clipPath><g clip-path="url(#clip_path_4)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(215.17708 146.6875) scale(.15356445)"/></g><path d="M 602.7796 203.84039 C 608.1024 185.2851 601.3271 167.10417 597.6146 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z" fill="white"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z M 615.1875 178.52421 C 615.1875 176.09826 615.16545 176.09826 610.6722 176.09826 L 610.6722 176.09826 C 610.6722 170.69313 610.6722 170.66667 608.65058 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="603.51563" cy="185.49479" r="8.028609" fill="#404040"/><circle cx="603.51563" cy="185.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 599.8768 186.25301 L 602.5821 188.53539 L 607.7448 183.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 411.11292 118.96465 C 411.66348 122.75518 414.92658 125.666685 418.86973 125.66667 C 423.19887 125.666685 426.70835 122.15723 426.70833 117.82806 C 426.70835 113.88491 423.79683 110.62181 420.00632 110.07125 L 420.02477 110.0528 L 408.70833 107.666313 L 411.0948 118.98276 Z" fill="#535353"/><text transform="translate(415.25145 111.12226)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">2</tspan></text><path d="M 514.70406 191.89093 C 511.02653 194.63526 505.79604 194.33728 502.45576 190.997 C 498.78834 187.32957 498.78834 181.38351 502.45576 177.71608 C 505.79604 174.3758 511.02653 174.07782 514.70406 176.82213 L 514.70406 176.79076 L 526.3125 184.35581 L 514.70406 191.92083 Z" fill="#535353"/><text transform="translate(504.3865 178.05242)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">3</tspan></text><path d="M 209.48732 185.60062 C 206.00093 188.20231 201.04229 187.91982 197.87562 184.75315 C 194.39882 181.27634 194.39882 175.63931 197.87562 172.1625 C 201.04229 168.99583 206.00093 168.71334 209.48732 171.31501 L 209.48732 171.28528 L 220.49242 178.45713 L 209.48732 185.62897 Z" fill="#535353"/><text transform="translate(199.96588 172.88849)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.8242312" y="9" textLength="5.005371">5</tspan></text><path d="M 198.97489 315.50412 C 195.29736 318.24845 190.06687 317.95047 186.72659 314.61019 C 183.05917 310.94276 183.05917 304.9967 186.72659 301.32927 C 190.06687 297.98899 195.29736 297.69101 198.97489 300.43532 L 198.97489 300.40395 L 210.58333 307.969 L 198.97489 315.53402 Z" fill="#535353"/><text transform="translate(188.65732 302.3966)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">6</tspan></text><path d="M 296.53473 315.50925 C 300.20211 318.246 305.41816 317.94884 308.74923 314.61778 C 312.40652 310.96048 312.40652 305.03082 308.74923 301.37352 C 305.41816 298.04246 300.20211 297.7453 296.53473 300.48204 L 296.53473 300.45076 L 284.95833 307.99492 L 296.53473 315.53906 Z" fill="#535353"/><text transform="translate(296.20123 302.42272)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3084137" y="9" textLength="5.005371">7</tspan></text><path d="M 387.99643 202.86938 C 385.48583 206.23357 385.75837 211.01849 388.8141 214.07422 C 392.16904 217.42921 397.60848 217.42921 400.96343 214.07422 C 404.01915 211.01849 404.2917 206.23357 401.7811 202.86938 L 401.80863 202.86938 L 394.88817 192.25 L 387.9677 202.86938 Z" fill="#535353"/><text transform="translate(390.98958 200.11942)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.49731445" y="9" textLength="5.005371">8</tspan></text><path d="M 185.83538 137.98239 C 153.662255 129.06378 186.76121 79.428224 144.66667 80.333333" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 632.11315 191.79131 C 635.83473 194.5685 641.12787 194.26696 644.50816 190.88667 C 648.2195 187.17531 648.2195 181.15802 644.50816 177.44667 C 641.12787 174.06638 635.83473 173.76483 632.11315 176.54201 L 632.11315 176.51026 L 620.36566 184.16592 L 632.11315 191.82157 Z" fill="#535353"/><text transform="translate(631.70082 178.59266)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.4534163" y="9" textLength="5.005371">9</tspan></text><path d="M 375.92875 150.98603 C 375.37818 154.77656 372.1151 157.68806 368.17194 157.68805 C 363.8428 157.68806 360.33332 154.17861 360.33333 149.84944 C 360.33332 145.90629 363.24483 142.64319 367.03535 142.09263 L 367.0169 142.07418 L 378.33333 139.68769 L 375.94688 151.00414 Z" fill="#535353"/><text transform="translate(365.93638 143.14364)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">4</tspan></text><path d="M 168.37199 118.63149 C 167.82143 122.422025 164.55833 125.33353 160.61519 125.33351 C 156.28604 125.33353 152.77656 121.82407 152.77658 117.4949 C 152.77656 113.55176 155.68808 110.28865 159.47859 109.738094 L 159.46014 109.719643 L 170.77658 107.333157 L 168.39012 118.6496 Z" fill="#535353"/><text transform="translate(158.37963 110.7891)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">1</tspan></text><path d="M 691.41416 97.4615 C 695.13574 100.2387 700.4289 99.93715 703.80917 96.55686 C 707.52052 92.845505 707.52052 86.828214 703.80917 83.11686 C 700.4289 79.73657 695.13574 79.43502 691.41416 82.2122 L 691.41416 82.18046 L 679.66667 89.836117 L 691.41416 97.49176 Z" fill="#535353"/><text transform="translate(691.00183 84.26285)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.2446289" y="9" textLength="10.010742">10</tspan></text><text transform="translate(217.8125 491.45833)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".231" y="9" textLength="179.541">Payment Agent Model 2A - Payer Initiated W</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="179.439" y="9" textLength="48.33">allet Access</tspan></text></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/model_2B_sso_via_payee_site.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="78 41 870 527" width="870pt" height="527pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-13 04:45Z</dc:date></metadata><defs><font-face font-family="Helvetica Neue" font-size="9" panose-1="2 0 5 3 0 0 0 2 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="517" cap-height="714" ascent="952.00193" descent="-213.00043" font-weight="500"><font-face-src><font-face-name name="HelveticaNeue"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="9" panose-1="2 0 8 3 0 0 0 9 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="517" cap-height="714" ascent="975.002" descent="-217.00044" font-weight="bold"><font-face-src><font-face-name name="HelveticaNeue-Bold"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-6 -3 7 6" markerWidth="7" markerHeight="6" color="gray"><g><path d="M -4.8 0 L 0 1.8 L 0 -1.8 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Model 2 - Remote Payment Agent</title><rect fill="white" width="972" height="1106"/><g><title>Layer 1</title><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" fill="white"/><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(159.26644 406.35447)" fill="#404040"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" fill="#404040" x="53.999717" y="9" textLength="67.842">Payment Service</tspan></text><path d="M 183.30316 98.666667 L 323.97917 98.666667 L 323.97917 172.125 L 183.30316 172.125 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="184.97917" y="98.666667" width="81.618273" height="14.080912" fill="#2f72ff"/><rect x="184.97917" y="98.666667" width="81.618273" height="14.080912" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(189.97917 100.20712)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="16.051324" y="9" textLength="39.515625">Computer</tspan></text><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" fill="#507baf"/><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 133.165406)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="30.993408" y="9" textLength="36.013184">Browser</tspan></text><circle cx="215.97917" cy="137.66667" r="9.0000144" fill="#404040"/><circle cx="215.97917" cy="137.66667" r="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="210.07596" y="132.959915" width="11.821943" height="2.2831108" fill="white"/><rect x="213.27917" y="136.40551" width="8.618738" height="2.2831108" fill="white"/><rect x="213.27917" y="139.83018" width="8.618738" height="2.2831108" fill="white"/><rect x="210.07596" y="136.24883" width="2.2831108" height="5.864461" fill="white"/><path d="M 199.97917 226.01372 L 303.97917 226.01372 C 305.08374 226.01372 305.97917 226.90915 305.97917 228.01372 L 305.97917 251.01372 C 305.97917 252.11829 305.08374 253.01372 303.97917 253.01372 L 199.97917 253.01372 C 198.8746 253.01372 197.97917 252.11829 197.97917 251.01372 L 197.97917 228.01372 C 197.97917 226.90915 198.8746 226.01372 199.97917 226.01372 Z" fill="#e0edff"/><path d="M 199.97917 226.01372 L 303.97917 226.01372 C 305.08374 226.01372 305.97917 226.90915 305.97917 228.01372 L 305.97917 251.01372 C 305.97917 252.11829 305.08374 253.01372 303.97917 253.01372 L 199.97917 253.01372 C 198.8746 253.01372 197.97917 252.11829 197.97917 251.01372 L 197.97917 228.01372 C 197.97917 226.90915 198.8746 226.01372 199.97917 226.01372 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 234.01372)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="13.164795" y="9" textLength="53.99121"> Cloud W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="66.826416" y="9" textLength="18.008789">allet</tspan></text><ellipse cx="216.04889" cy="240.01372" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="216.04889" cy="240.01372" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.90534 235.72503 L 221.00079 235.54743 C 221.55298 235.53772 222.0085 235.97749 222.01822 236.52969 C 222.01822 236.52969 222.01822 236.52969 222.01822 236.52969 L 222.11921 242.2708 C 222.12893 242.82299 221.68916 243.27851 221.13696 243.28823 L 211.04151 243.46582 C 210.48931 243.47553 210.03379 243.03576 210.02408 242.48356 C 210.02408 242.48356 210.02408 242.48356 210.02408 242.48356 L 209.92308 236.74246 C 209.91337 236.19026 210.35314 235.73474 210.90534 235.72503 Z" fill="white"/><path d="M 210.90534 235.72503 L 221.00079 235.54743 C 221.55298 235.53772 222.0085 235.97749 222.01822 236.52969 C 222.01822 236.52969 222.01822 236.52969 222.01822 236.52969 L 222.11921 242.2708 C 222.12893 242.82299 221.68916 243.27851 221.13696 243.28823 L 211.04151 243.46582 C 210.48931 243.47553 210.03379 243.03576 210.02408 242.48356 C 210.02408 242.48356 210.02408 242.48356 210.02408 242.48356 L 209.92308 236.74246 C 209.91337 236.19026 210.35314 235.73474 210.90534 235.72503 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 221.24159 237.50484 L 213.93852 237.47278 L 219.48688 234.36856 Z" fill="white"/><path d="M 221.24159 237.50484 L 213.93852 237.47278 L 219.48688 234.36856 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 220.82605 237.42769 L 214.74869 237.40101 L 219.36584 234.81778 Z" fill="#3f3f3f"/><path d="M 220.82605 237.42769 L 214.74869 237.40101 L 219.36584 234.81778 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 221.42843 237.70627 C 221.42843 237.78592 221.20157 237.8511 220.9243 237.8511 L 213.8665 237.8511 C 213.58923 237.8511 213.36238 237.78592 213.36238 237.70627 L 213.36238 237.41661 C 213.36238 237.3371 213.58923 237.27178 213.8665 237.27178 L 220.9243 237.27178 C 221.20157 237.27178 221.42843 237.3371 221.42843 237.41661 Z" fill="#3f3f3f"/><path d="M 221.42843 238.58056 C 221.42843 238.66021 221.20157 238.72539 220.9243 238.72539 L 213.8665 238.72539 C 213.58923 238.72539 213.36238 238.66021 213.36238 238.58056 L 213.36238 238.2909 C 213.36238 238.21138 213.58923 238.14607 213.8665 238.14607 L 220.9243 238.14607 C 221.20157 238.14607 221.42843 238.21138 221.42843 238.2909 Z" fill="#3f3f3f"/><path d="M 210.0769 243.63176 L 217.65513 245.96787 C 218.1829 246.13056 218.74264 245.8346 218.90534 245.30683 C 218.93514 245.21017 218.9501 245.10954 218.9497 245.00839 L 218.92542 238.70057 C 218.92374 238.26319 218.638 237.87765 218.22002 237.7488 L 210.64179 235.41269 C 210.11401 235.25 209.55427 235.54595 209.39158 236.07373 C 209.36178 236.17039 209.34682 236.27101 209.34721 236.37216 L 209.37149 242.67998 C 209.37318 243.11737 209.65892 243.50291 210.0769 243.63176 Z" fill="#3f3f3f"/><path d="M 210.0769 243.63176 L 217.65513 245.96787 C 218.1829 246.13056 218.74264 245.8346 218.90534 245.30683 C 218.93514 245.21017 218.9501 245.10954 218.9497 245.00839 L 218.92542 238.70057 C 218.92374 238.26319 218.638 237.87765 218.22002 237.7488 L 210.64179 235.41269 C 210.11401 235.25 209.55427 235.54595 209.39158 236.07373 C 209.36178 236.17039 209.34682 236.27101 209.34721 236.37216 L 209.37149 242.67998 C 209.37318 243.11737 209.65892 243.50291 210.0769 243.63176 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.54411 243.52592 L 217.21924 245.58363 C 217.74702 245.74633 218.30675 245.45037 218.46945 244.92259 C 218.49857 244.82812 218.51352 244.72986 218.51382 244.631 L 218.53085 238.944 C 218.53217 238.50409 218.24584 238.11498 217.82545 237.98539 L 211.15032 235.92767 C 210.62254 235.76498 210.0628 236.06094 209.9001 236.58871 C 209.87098 236.68318 209.85603 236.78145 209.85573 236.8803 L 209.8387 242.5673 C 209.83738 243.00721 210.12371 243.39632 210.54411 243.52592 Z" fill="white"/><path d="M 210.54411 243.52592 L 217.21924 245.58363 C 217.74702 245.74633 218.30675 245.45037 218.46945 244.92259 C 218.49857 244.82812 218.51352 244.72986 218.51382 244.631 L 218.53085 238.944 C 218.53217 238.50409 218.24584 238.11498 217.82545 237.98539 L 211.15032 235.92767 C 210.62254 235.76498 210.0628 236.06094 209.9001 236.58871 C 209.87098 236.68318 209.85603 236.78145 209.85573 236.8803 L 209.8387 242.5673 C 209.83738 243.00721 210.12371 243.39632 210.54411 243.52592 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 489.98514 98.666667 L 652.47917 98.666667 L 652.47917 256.16667 L 489.98514 256.16667 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" fill="silver"/><rect x="489.63542" y="98.666667" width="140.67601" height="17.5" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(494.63542 101.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.8218924" y="9" textLength="111.032227">Merchant E-Commerce Site</tspan></text><path d="M 129.68966 70.38161 C 129.67511 70.50616 129.56721 70.595397 129.44945 70.580007 L 127.67944 70.34902 C 127.56085 70.334064 127.47651 70.219935 127.49149 70.095384 L 127.75436 67.82723 C 127.770216 67.70268 127.858844 67.611195 127.955615 67.623423 C 128.052386 67.636556 128.12945 67.645614 128.12945 67.645614 L 128.06821 68.17461 L 129.568076 68.36981 L 129.62972 67.84127 L 129.80399 67.86301 C 129.90074 67.876597 129.96754 67.988012 129.95212 68.11256 Z M 129.438324 67.592624 L 129.371955 68.16057 L 128.30714 68.02243 L 128.373076 67.45449 Z M 127.0145 70.214508 L 124.57742 70.214508 L 124.57742 69.38387 C 124.57742 68.11256 124.17837 67.17595 123.45178 66.656016 C 123.72495 66.33536 124.118 66.161894 124.62109 66.158724 L 124.543594 66.02602 C 124.50035 65.953557 124.562004 65.89604 124.681034 65.89604 L 124.86172 65.89604 C 124.96148 65.89604 125.113464 65.963522 125.20125 66.05048 L 126.14106 66.982107 L 127.08174 66.05048 C 127.16866 65.963522 127.312525 65.89604 127.40286 65.89604 L 127.566846 65.89604 C 127.68544 65.89604 127.74625 65.95673 127.70214 66.031457 C 127.65762 66.107092 127.62165 66.168236 127.62165 66.168236 C 128.325546 66.215338 128.798655 66.613896 128.999906 67.3005 L 128.17997 67.19271 L 128.15985 67.367984 L 127.82931 67.32405 C 127.68544 67.30639 127.546705 67.49344 127.51717 67.743894 L 127.25598 69.98849 C 127.24187 70.11304 127.13353 70.214508 127.0145 70.214508 M 124.226754 72.379854 L 122.633566 72.379854 C 122.5201 71.889804 122.4349 71.37937 122.4349 70.945047 C 122.4349 69.981714 122.13433 71.218584 122.08595 72.379854 L 117.84287 72.379854 C 117.79493 71.218584 117.493485 69.981714 117.493485 70.945047 C 117.493485 71.37937 117.40787 71.889804 117.296114 72.379854 L 115.67681 72.379854 L 115.67681 69.38387 C 115.67681 67.66373 116.45606 66.656016 117.83901 66.56362 C 117.8373 66.55864 118.27488 66.54596 118.27488 66.54596 C 118.545485 67.14153 119.128205 67.495702 119.88049 67.495702 C 120.726536 67.495702 121.32468 67.160552 121.62867 66.54596 C 122.05084 66.557282 122.04784 66.562717 122.04784 66.562717 C 123.442364 66.648315 124.226754 67.65694 124.226754 69.38387 Z M 119.89633 61.61155 C 121.24761 61.61155 121.898414 62.240193 121.898414 63.752436 C 121.898414 65.264233 121.24761 66.49025 119.89633 66.49025 C 118.54462 66.49025 117.89425 65.264233 117.89425 63.752436 C 117.89425 62.240193 118.54462 61.61155 119.89633 61.61155 M 126.12222 62.59481 C 127.06203 62.59481 127.51459 63.03094 127.51459 64.08351 C 127.51459 65.135157 127.06203 65.98707 126.12222 65.98707 C 125.18198 65.98707 124.729415 65.135157 124.729415 64.08351 C 124.729415 63.03094 125.18198 62.59481 126.12222 62.59481 M 122.21611 53.666667 C 115.16771 53.666667 109.452624 59.709807 109.452624 67.165987 C 109.452624 74.622177 115.16771 80.666667 122.21611 80.666667 C 129.26492 80.666667 134.97917 74.622177 134.97917 67.165987 C 134.97917 59.709807 129.26492 53.666667 122.21611 53.666667" fill="#3c3c3b"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" fill="#6d6d6d"/><path d="M 505.97917 125.66667 L 636.97917 125.66667 C 638.08374 125.66667 638.97917 126.5621 638.97917 127.66667 L 638.97917 150.66667 C 638.97917 151.77124 638.08374 152.66667 636.97917 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" stroke="#6d6d6d" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 133.66667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="43.577148" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="51.913574" y="9" textLength="29.509277">eb Site</tspan></text><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" fill="#404040"/><ellipse cx="518.41146" cy="138.66667" rx="10.100889" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 520.30424 136.89692 L 523.20114 136.89692 L 523.20114 137.19875 L 520.30424 137.19875 Z M 520.30424 137.43198 L 523.20114 137.43198 L 523.20114 137.73381 L 520.30424 137.73381 Z M 520.30414 137.942895 L 523.20114 137.942895 L 523.20114 138.24473 L 520.30414 138.24473 Z M 523.5374 136.208554 L 519.96796 136.208554 C 519.79792 136.208554 519.6601 136.32996 519.6601 136.47974 L 519.6601 140.7967 C 519.6601 140.94649 519.79792 141.06789 519.96796 141.06789 L 523.5374 141.06789 C 523.70745 141.06789 523.84527 140.94649 523.84527 140.7967 L 523.84527 136.47974 C 523.84527 136.32996 523.70745 136.208554 523.5374 136.208554" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" fill="white"/><path d="M 514.23458 135.97022 L 518.67317 135.97022 L 518.67317 136.43268 L 514.23458 136.43268 Z M 514.23458 136.79002 L 518.67317 136.79002 L 518.67317 137.25249 L 514.23458 137.25249 Z M 514.23442 137.57285 L 518.67317 137.57285 L 518.67317 138.03531 L 514.23442 138.03531 Z M 519.18842 134.91551 L 513.71934 134.91551 C 513.4588 134.91551 513.24765 135.10152 513.24765 135.33102 L 513.24765 141.94542 C 513.24765 142.17492 513.4588 142.36093 513.71934 142.36093 L 519.18842 142.36093 C 519.44895 142.36093 519.6601 142.17492 519.6601 141.94542 L 519.6601 135.33102 C 519.6601 135.10152 519.44895 134.91551 519.18842 134.91551" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" fill="#ccc"/><path d="M 505.97917 211.66667 L 636.97917 211.66667 C 638.08374 211.66667 638.97917 212.5621 638.97917 213.66667 L 638.97917 236.66667 C 638.97917 237.77124 638.08374 238.66667 636.97917 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" stroke="#b3b3b3" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 219.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="23.981934" y="9" textLength="77.036133"> Payment System</tspan></text><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" fill="white"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" fill="white"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" fill="#3f3f3f"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 527.42843 222.35922 C 527.42843 222.43887 527.20157 222.50405 526.9243 222.50405 L 519.8665 222.50405 C 519.58923 222.50405 519.36238 222.43887 519.36238 222.35922 L 519.36238 222.06956 C 519.36238 221.99005 519.58923 221.92473 519.8665 221.92473 L 526.9243 221.92473 C 527.20157 221.92473 527.42843 221.99005 527.42843 222.06956 Z" fill="#3f3f3f"/><path d="M 527.42843 223.2335 C 527.42843 223.31316 527.20157 223.37834 526.9243 223.37834 L 519.8665 223.37834 C 519.58923 223.37834 519.36238 223.31316 519.36238 223.2335 L 519.36238 222.94385 C 519.36238 222.86433 519.58923 222.79902 519.8665 222.79902 L 526.9243 222.79902 C 527.20157 222.79902 527.42843 222.86433 527.42843 222.94385 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" fill="white"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(92.541667 90.916667)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".245" y="9" textLength="39.51">Customer</tspan></text><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" fill="#d2c9de"/><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" stroke="#669" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(208.3125 379.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="20.116943" y="9" textLength="37.516113">Payment</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="17.539551" y="20" textLength="27.997559">Agent </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="45.20752" y="20" textLength="15.00293">API</tspan></text><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" fill="#404040"/><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" fill="white"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" fill="white"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" fill="#3f3f3f"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.7966 385.59456 C 219.7966 385.66522 219.59537 385.72303 219.34941 385.72303 L 213.08868 385.72303 C 212.84273 385.72303 212.64149 385.66522 212.64149 385.59456 L 212.64149 385.3376 C 212.64149 385.26708 212.84273 385.20914 213.08868 385.20914 L 219.34941 385.20914 C 219.59537 385.20914 219.7966 385.26708 219.7966 385.3376 Z" fill="#3f3f3f"/><path d="M 219.7966 386.3701 C 219.7966 386.44077 219.59537 386.49858 219.34941 386.49858 L 213.08868 386.49858 C 212.84273 386.49858 212.64149 386.44077 212.64149 386.3701 L 212.64149 386.11316 C 212.64149 386.04263 212.84273 385.98469 213.08868 385.98469 L 219.34941 385.98469 C 219.59537 385.98469 219.7966 386.04263 219.7966 386.11316 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" fill="white"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 183.65732 204.12049 L 324.33333 204.12049 L 324.33333 277.57882 L 183.65732 277.57882 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="185.33333" y="204.12049" width="116.16667" height="14.080912" fill="#2f72ff"/><rect x="185.33333" y="204.12049" width="116.16667" height="14.080912" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(190.33333 205.66094)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="6.483724" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="14.648763" y="9" textLength="85.03418">allet Service Provider</tspan></text></g><g><title>Legend</title><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(800.68874 154.751145)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".984" y="9" textLength="29.016">Human</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="8.337" y="20" textLength="21.663">Actor</tspan></text><path d="M 859.023 169.04828 C 859.00844 169.17283 858.90054 169.26206 858.7828 169.24667 L 857.0128 169.01569 C 856.8942 169.00073 856.80984 168.8866 856.8248 168.76205 L 857.0877 166.4939 C 857.10355 166.36935 857.1922 166.27786 857.28895 166.29009 C 857.3857 166.30322 857.4628 166.31228 857.4628 166.31228 L 857.40155 166.84128 L 858.9014 167.03648 L 858.96306 166.50794 L 859.1373 166.52968 C 859.23407 166.54326 859.30087 166.65468 859.28546 166.77923 Z M 858.77166 166.25929 L 858.7053 166.82724 L 857.64047 166.6891 L 857.7064 166.12116 Z M 856.34784 168.88117 L 853.91075 168.88117 L 853.91075 168.05054 C 853.91075 166.77923 853.5117 165.84262 852.7851 165.32268 C 853.0583 165.002025 853.45133 164.82856 853.9544 164.82539 L 853.87693 164.69269 C 853.8337 164.62022 853.89534 164.56271 854.01437 164.56271 L 854.19505 164.56271 C 854.2948 164.56271 854.4468 164.63019 854.5346 164.71715 L 855.4744 165.64877 L 856.41507 164.71715 C 856.502 164.63019 856.64586 164.56271 856.7362 164.56271 L 856.9002 164.56271 C 857.0188 164.56271 857.0796 164.6234 857.03547 164.69812 C 856.99095 164.77376 856.955 164.8349 856.955 164.8349 C 857.6589 164.882 858.132 165.28056 858.33324 165.96717 L 857.5133 165.85938 L 857.4932 166.03465 L 857.16264 165.99072 C 857.0188 165.97305 856.88004 166.16011 856.8505 166.41056 L 856.5893 168.65516 C 856.5752 168.77971 856.46687 168.88117 856.34784 168.88117 M 853.5601 171.04652 L 851.9669 171.04652 C 851.85344 170.55647 851.76823 170.04604 851.76823 169.61171 C 851.76823 168.64838 851.46766 169.88525 851.4193 171.04652 L 847.1762 171.04652 C 847.12826 169.88525 846.8268 168.64838 846.8268 169.61171 C 846.8268 170.04604 846.7412 170.55647 846.62945 171.04652 L 845.01015 171.04652 L 845.01015 168.05054 C 845.01015 166.3304 845.7894 165.32268 847.17235 165.23029 C 847.17064 165.22531 847.6082 165.212625 847.6082 165.212625 C 847.8788 165.8082 848.46154 166.16237 849.2138 166.16237 C 850.05987 166.16237 850.658 165.82722 850.962 165.212625 C 851.38417 165.22395 851.3812 165.22938 851.3812 165.22938 C 852.7757 165.31498 853.5601 166.3236 853.5601 168.05054 Z M 849.22966 160.27822 C 850.58094 160.27822 851.23175 160.90686 851.23175 162.4191 C 851.23175 163.9309 850.58094 165.15692 849.22966 165.15692 C 847.87795 165.15692 847.2276 163.9309 847.2276 162.4191 C 847.2276 160.90686 847.87795 160.27822 849.22966 160.27822 M 855.45556 161.26148 C 856.39537 161.26148 856.84793 161.69761 856.84793 162.75018 C 856.84793 163.80182 856.39537 164.65374 855.45556 164.65374 C 854.5153 164.65374 854.06275 163.80182 854.06275 162.75018 C 854.06275 161.69761 854.5153 161.26148 855.45556 161.26148 M 851.54944 152.33333 C 844.50104 152.33333 838.78596 158.37647 838.78596 165.83265 C 838.78596 173.28884 844.50104 179.33333 851.54944 179.33333 C 858.59826 179.33333 864.3125 173.28884 864.3125 165.83265 C 864.3125 158.37647 858.59826 152.33333 851.54944 152.33333" fill="#3c3c3b"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.3407 207.59389 L 857.0108 207.59389 L 857.0108 208.02222 L 853.3407 208.02222 Z M 853.3407 208.35319 L 857.0108 208.35319 L 857.0108 208.78153 L 853.3407 208.78153 Z M 853.34055 209.07824 L 857.0108 209.07824 L 857.0108 209.50658 L 853.34055 209.50658 Z M 857.4368 206.61702 L 852.91465 206.61702 C 852.6992 206.61702 852.5246 206.7893 852.5246 207.00186 L 852.5246 213.12812 C 852.5246 213.34068 852.6992 213.51297 852.91465 213.51297 L 857.4368 213.51297 C 857.65224 213.51297 857.82684 213.34068 857.82684 213.12812 L 857.82684 207.00186 C 857.82684 206.7893 857.65224 206.61702 857.4368 206.61702" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.16547 200.63907)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".823" y="9" textLength="30.177">System</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="9.337" y="20" textLength="21.663">Actor</tspan></text><text transform="translate(779.3125 115.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="2.2267396" y="9" textLength="47.331">User Agent)</tspan></text><circle cx="851.04557" cy="121.066406" r="13.266949" fill="#404040"/><circle cx="851.04557" cy="121.066406" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="842.34364" y="114.12817" width="17.426762" height="3.3655407" fill="white"/><rect x="847.0655" y="119.207336" width="12.704908" height="3.3655407" fill="white"/><rect x="847.0655" y="124.25565" width="12.704908" height="3.3655407" fill="white"/><rect x="842.34364" y="118.97637" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" fill="white"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" fill="white"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" fill="#3f3f3f"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 859.07835 250.66499 C 859.07835 250.78241 858.74394 250.87848 858.3352 250.87848 L 847.9313 250.87848 C 847.52257 250.87848 847.18815 250.78241 847.18815 250.66499 L 847.18815 250.238 C 847.18815 250.1208 847.52257 250.02451 847.9313 250.02451 L 858.3352 250.02451 C 858.74394 250.02451 859.07835 250.1208 859.07835 250.238 Z" fill="#3f3f3f"/><path d="M 859.07835 251.95378 C 859.07835 252.0712 858.74394 252.16727 858.3352 252.16727 L 847.9313 252.16727 C 847.52257 252.16727 847.18815 252.0712 847.18815 251.95378 L 847.18815 251.5268 C 847.18815 251.40958 847.52257 251.3133 847.9313 251.3133 L 858.3352 251.3133 C 858.74394 251.3133 859.07835 251.40958 859.07835 251.5268 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" fill="white"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(765.6245 248.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".314" y="9" textLength="61.686">Payment Agent</tspan></text><text transform="translate(771.8125 357.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".152" y="9" textLength="52.848">Payment info</tspan></text><text transform="translate(779.3125 439.27158)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="23.020917" y="9" textLength="22.995">Payer</tspan></text><path d="M 835.11176 435.27032 L 862.2582 435.27032 L 862.2582 454.27285 L 835.11176 454.27285 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" fill="#2f72ff"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 835.11176 466.3308 L 862.2582 466.3308 L 862.2582 485.33333 L 835.11176 485.33333 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" fill="silver"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(779.3125 466.27158)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="21.184917" y="9" textLength="24.831">Payee</tspan></text><text transform="translate(734.8125 393.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".144" y="9" textLength="89.856">Payment Confrimation</tspan></text><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z" fill="white"/><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z M 863.3125 357.19087 C 863.3125 354.76492 863.29045 354.76492 858.7972 354.76492 L 858.7972 354.76492 C 858.7972 349.3598 858.7972 349.33333 856.7756 349.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(848.9339 356.83333)" fill="white"><tspan font-family="Helvetica Neue" font-size="9" font-weight="bold" fill="white" x=".498" y="9" textLength="5.004">$</tspan></text><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z" fill="white"/><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z M 864.3125 395.19087 C 864.3125 392.76492 864.29045 392.76492 859.7972 392.76492 L 859.7972 392.76492 C 859.7972 387.3598 859.7972 387.33333 857.7756 387.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="852.6406" cy="402.16146" r="8.028609" fill="#404040"/><circle cx="852.6406" cy="402.16146" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.0018 402.91968 L 851.7071 405.20206 L 856.8698 399.87164" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z" fill="white"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z M 863.3125 280.19087 C 863.3125 277.76492 863.29045 277.76492 858.7972 277.76492 L 858.7972 277.76492 C 858.7972 272.3598 858.7972 272.33333 856.7756 272.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="852.0625" cy="287.46754" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="852.0625" cy="287.46754" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.6486 288.12256 L 853.5264 288.12256 L 853.5264 288.12256" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.5264 288.12256 L 853.5264 288.12256 L 855.24984 284.51406" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="852.7647" y1="286.69532" x2="849.01764" y2="286.69532" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 853.19555 285.45658 L 853.19555 285.45658 L 848.67914 285.45658" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 853.68795 284.21784 L 853.68795 284.21784 L 848.14056 284.21784" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 856.9733 284.0832 L 856.9733 284.0832 L 855.24984 284.0832" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="849.54087" cy="289.99413" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="849.54087" cy="289.99413" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="853.41866" cy="289.99413" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="853.41866" cy="289.99413" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(742.8125 281.96754)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".496" y="9" textLength="81.504">Goods and Services</tspan></text><text transform="translate(775.4462 318.33333)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="19.64702" y="9" textLength="28.665">Invoice</tspan></text><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z" fill="white"/><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z M 861.65135 319.19087 C 861.65135 316.76492 861.6293 316.76492 857.13605 316.76492 L 857.13605 316.76492 C 857.13605 311.3598 857.13605 311.33333 855.11443 311.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="830.4222" y="296.35417" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(830.4222 296.35417) scale(.15356445)"/></g><text transform="translate(710.375 498.875)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="9" textLength="36.675">W3C - W</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="36.162" y="9" textLength="73.188">eb Payments Inter</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="109.188" y="9" textLength="24.498">est Gr</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="133.524" y="9" textLength="15.507">oup</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="20" textLength="121.86">Payment Agent Conceptual Ar</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="121.698" y="20" textLength="35.172">chitectur</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="156.708" y="20" textLength="4.833">e</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="31" textLength="83.34">Author: Patrick Adler</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="82.512" y="31" textLength="139.671">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="42" textLength="5.499">V</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="5.004" y="42" textLength="39.51">ersion 0.1</tspan><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x="0" y="53" textLength="31.014">3/12/15</tspan></text><text transform="translate(726.3125 81.340386)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".4115" y="9" textLength="30.177">Legend</tspan></text></g><g><title>Out of Band Notification</title><path d="M 257.24522 263.47239 C 275.2889 305.44468 258.81142 352.81346 242.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 318.83635 239.92007 C 366.85803 227.42513 479.8643 135.084675 503.83333 139.05998" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 148.222365 64.50924 C 248.79279 60.508945 357.53132 52.38815 447.66667 53.666667 C 541.66667 55 679.66667 66.520833 679.66667 96.854167 C 679.66667 127.1875 662.33333 135 640.45833 134.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 494.60155 126.69719 C 454.6144 97.442146 339.20443 92.795573 306.33333 125.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 544.1683 203.84039 C 538.8455 185.2851 545.62083 167.10417 549.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 571.85064 166.06451 C 571.8876 178.06938 571.96103 179.25522 571.83334 211.16667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 229.99035 365.48138 C 222.92307 333.56455 229.43889 268.14502 233.33333 253" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 542.35586 251.77374 C 516.738 295.47028 268.66728 353.0305 252.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z" fill="white"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z M 237.67708 299.5242 C 237.67708 297.09826 237.65503 297.09826 233.16178 297.09826 L 233.16178 297.09826 C 233.16178 291.69313 233.16178 291.66667 231.14016 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(223.29846 299.16667)" fill="white"><tspan font-family="Helvetica Neue" font-size="9" font-weight="bold" fill="white" x=".498" y="9" textLength="5.004">$</tspan></text><path d="M 439.875 306.568 C 439.875 304.01028 439.58925 303.69384 437.50192 301.1626 L 437.47988 301.1364 C 435.38153 298.5787 435.3597 298.5787 433.20623 298.5787 C 430.33883 298.5787 417.375 298.5787 417.375 298.5787 L 417.375 325.5787 L 439.875 325.5787 L 439.875 306.568 Z" fill="white"/><path d="M 439.875 306.568 C 439.875 304.01028 439.58925 303.69384 437.50192 301.1626 L 437.47988 301.1364 C 435.38153 298.5787 435.3597 298.5787 433.20623 298.5787 C 430.33883 298.5787 417.375 298.5787 417.375 298.5787 L 417.375 325.5787 L 439.875 325.5787 L 439.875 306.568 Z M 439.875 306.43623 C 439.875 304.01028 439.85295 304.01028 435.3597 304.01028 L 435.3597 304.01028 C 435.3597 298.60515 435.3597 298.5787 433.33808 298.5787" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="428.20313" cy="312.0787" r="8.028609" fill="#404040"/><circle cx="428.20313" cy="312.0787" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 424.5643 312.83691 L 427.2696 315.1193 L 432.43232 309.78887" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z" fill="white"/><path d="M 583.08333 181.96847 C 583.08333 179.41076 582.7976 179.09432 580.71026 176.56307 L 580.6882 176.53688 C 578.58986 173.97917 578.56803 173.97917 576.41456 173.97917 C 573.54716 173.97917 560.58333 173.97917 560.58333 173.97917 L 560.58333 200.97917 L 583.08333 200.97917 L 583.08333 181.96847 Z M 583.08333 181.83671 C 583.08333 179.41076 583.0613 179.41076 578.56803 179.41076 L 578.56803 179.41076 C 578.56803 174.00563 578.56803 173.97917 576.5464 173.97917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="551.85417" y="159" width="39.3125" height="39.3125" id="path_2"/><clipPath id="clip_path_2"><use xl:href="#path_2"/></clipPath><g clip-path="url(#clip_path_2)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(551.85417 159) scale(.15356445)"/></g><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z" fill="white"/><path d="M 551.58333 178.65597 C 551.58333 176.09826 551.29758 175.78182 549.21026 173.25057 L 549.1882 173.22438 C 547.08986 170.66667 547.06803 170.66667 544.91456 170.66667 C 542.04716 170.66667 529.08333 170.66667 529.08333 170.66667 L 529.08333 197.66667 L 551.58333 197.66667 L 551.58333 178.65597 Z M 551.58333 178.52421 C 551.58333 176.09826 551.56128 176.09826 547.06803 176.09826 L 547.06803 176.09826 C 547.06803 170.69313 547.06803 170.66667 545.0464 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="540.33333" cy="185.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 537.91942 186.45589 L 541.7972 186.45589 L 541.7972 186.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 541.7972 186.45589 L 541.7972 186.45589 L 543.52067 182.8474" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="541.03552" y1="185.02866" x2="537.28848" y2="185.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.4664 183.78991 L 541.4664 183.78991 L 536.94998 183.78991" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 541.9588 182.55117 L 541.9588 182.55117 L 536.4114 182.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 545.24413 182.41653 L 545.24413 182.41653 L 543.52067 182.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="537.8117" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="541.6895" cy="188.32746" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z" fill="white"/><path d="M 404.48958 97.655967 C 404.48958 95.098257 404.20383 94.781817 402.1165 92.250567 L 402.09446 92.224377 C 399.9961 89.666667 399.97428 89.666667 397.8208 89.666667 C 394.9534 89.666667 381.98958 89.666667 381.98958 89.666667 L 381.98958 116.66667 L 404.48958 116.66667 L 404.48958 97.655967 Z M 404.48958 97.524207 C 404.48958 95.098257 404.46753 95.098257 399.97428 95.098257 L 399.97428 95.098257 C 399.97428 89.693127 399.97428 89.666667 397.95266 89.666667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="393.23958" cy="104.80087" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.82567 105.45589 L 394.70346 105.45589 L 394.70346 105.45589" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 394.70346 105.45589 L 394.70346 105.45589 L 396.42692 101.847396" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="393.94177" y1="104.02866" x2="390.19473" y2="104.02866" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.37264 102.789914 L 394.37264 102.789914 L 389.85623 102.789914" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 394.86503 101.55117 L 394.86503 101.55117 L 389.31765 101.55117" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 398.15038 101.41653 L 398.15038 101.41653 L 396.42692 101.41653" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="390.71796" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="394.59574" cy="107.327465" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 411.61758 193.63513 C 411.61758 191.07742 411.33183 190.76098 409.2445 188.22973 L 409.22246 188.20354 C 407.1241 185.64583 407.10228 185.64583 404.9488 185.64583 C 402.0814 185.64583 389.11758 185.64583 389.11758 185.64583 L 389.11758 212.64583 L 411.61758 212.64583 L 411.61758 193.63513 Z" fill="white"/><path d="M 411.61758 193.63513 C 411.61758 191.07742 411.33183 190.76098 409.2445 188.22973 L 409.22246 188.20354 C 407.1241 185.64583 407.10228 185.64583 404.9488 185.64583 C 402.0814 185.64583 389.11758 185.64583 389.11758 185.64583 L 389.11758 212.64583 L 411.61758 212.64583 L 411.61758 193.63513 Z M 411.61758 193.50337 C 411.61758 191.07742 411.59553 191.07742 407.10228 191.07742 L 407.10228 191.07742 C 407.10228 185.67229 407.10228 185.64583 405.08066 185.64583" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="380.38841" y="170.66667" width="39.3125" height="39.3125" id="path_3"/><clipPath id="clip_path_3"><use xl:href="#path_3"/></clipPath><g clip-path="url(#clip_path_3)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(380.38841 170.66667) scale(.15356445)"/></g><path d="M 602.7796 164.49295 C 608.1024 183.04823 601.3271 201.22917 597.6146 215.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z" fill="white"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z M 615.1875 178.52421 C 615.1875 176.09826 615.16545 176.09826 610.6722 176.09826 L 610.6722 176.09826 C 610.6722 170.69313 610.6722 170.66667 608.65058 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="603.51563" cy="185.49479" r="8.028609" fill="#404040"/><circle cx="603.51563" cy="185.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 599.8768 186.25301 L 602.5821 188.53539 L 607.7448 183.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 411.11292 118.96465 C 411.66348 122.75518 414.92658 125.666685 418.86973 125.66667 C 423.19887 125.666685 426.70835 122.15723 426.70833 117.82806 C 426.70835 113.88491 423.79683 110.62181 420.00632 110.07125 L 420.02477 110.0528 L 408.70833 107.666313 L 411.0948 118.98276 Z" fill="#535353"/><text transform="translate(415.25145 111.12226)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">2</tspan></text><path d="M 514.70406 191.89093 C 511.02653 194.63526 505.79604 194.33728 502.45576 190.997 C 498.78834 187.32957 498.78834 181.38351 502.45576 177.71608 C 505.79604 174.3758 511.02653 174.07782 514.70406 176.82213 L 514.70406 176.79076 L 526.3125 184.35581 L 514.70406 191.92083 Z" fill="#535353"/><text transform="translate(504.3865 178.05242)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">3</tspan></text><path d="M 144.234235 177.47669 C 140.55671 180.22101 135.326214 179.92303 131.98593 176.58275 C 128.31852 172.91533 128.31852 166.96926 131.98593 163.30184 C 135.326214 159.96156 140.55671 159.66358 144.234235 162.407885 L 144.234235 162.37652 L 155.84268 169.94156 L 144.234235 177.50659 Z" fill="#535353"/><text transform="translate(133.91667 164.36916)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">4</tspan></text><path d="M 454.8264 322.42127 C 458.49378 325.15802 463.70983 324.86086 467.0409 321.5298 C 470.69819 317.8725 470.69819 311.94285 467.0409 308.28555 C 463.70983 304.95449 458.49378 304.65733 454.8264 307.39406 L 454.8264 307.36278 L 443.25 314.90694 L 454.8264 322.45109 Z" fill="#535353"/><text transform="translate(454.4929 309.33474)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3084137" y="9" textLength="5.005371">7</tspan></text><path d="M 194.87085 150.726 C 160.858375 139.98635 186.87504 79.425777 144.66667 80.333333" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 632.11315 191.79131 C 635.83473 194.5685 641.12787 194.26696 644.50816 190.88667 C 648.2195 187.17531 648.2195 181.15802 644.50816 177.44667 C 641.12787 174.06638 635.83473 173.76483 632.11315 176.54201 L 632.11315 176.51026 L 620.36566 184.16592 L 632.11315 191.82157 Z" fill="#535353"/><text transform="translate(631.70082 178.59266)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.4534163" y="9" textLength="5.005371">8</tspan></text><path d="M 382.73383 210.9652 C 382.18326 214.75573 378.92017 217.66723 374.97702 217.66721 C 370.64787 217.66723 367.1384 214.15777 367.13841 209.8286 C 367.1384 205.88546 370.04991 202.62236 373.84043 202.0718 L 373.82198 202.05335 L 385.13841 199.66686 L 382.75196 210.9833 Z" fill="#535353"/><text transform="translate(372.74147 203.1228)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">5</tspan></text><path d="M 169.57125 83.042404 C 170.12182 79.25187 173.38491 76.34037 177.32806 76.340386 C 181.65721 76.34037 185.16668 79.849825 185.16667 84.178993 C 185.16668 88.12214 182.25517 91.385244 178.46465 91.9358 L 178.4831 91.954253 L 167.16667 94.34074 L 169.55312 83.024296 Z" fill="#535353"/><text transform="translate(173.70978 79.884795)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">1</tspan></text><path d="M 691.41416 97.4615 C 695.13574 100.2387 700.4289 99.93715 703.80917 96.55686 C 707.52052 92.845505 707.52052 86.828214 703.80917 83.11686 C 700.4289 79.73657 695.13574 79.43502 691.41416 82.2122 L 691.41416 82.18046 L 679.66667 89.836117 L 691.41416 97.49176 Z" fill="#535353"/><text transform="translate(691.00183 84.26285)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="3.7473145" y="9" textLength="5.005371">9</tspan></text><path d="M 268.90625 299.65597 C 268.90625 297.09826 268.6205 296.78182 266.53317 294.25057 L 266.51112 294.22438 C 264.41277 291.66667 264.39095 291.66667 262.23747 291.66667 C 259.37007 291.66667 246.40625 291.66667 246.40625 291.66667 L 246.40625 318.66667 L 268.90625 318.66667 L 268.90625 299.65597 Z" fill="white"/><path d="M 268.90625 299.65597 C 268.90625 297.09826 268.6205 296.78182 266.53317 294.25057 L 266.51112 294.22438 C 264.41277 291.66667 264.39095 291.66667 262.23747 291.66667 C 259.37007 291.66667 246.40625 291.66667 246.40625 291.66667 L 246.40625 318.66667 L 268.90625 318.66667 L 268.90625 299.65597 Z M 268.90625 299.5242 C 268.90625 297.09826 268.8842 297.09826 264.39095 297.09826 L 264.39095 297.09826 C 264.39095 291.69313 264.39095 291.66667 262.36932 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="237.67708" y="276.6875" width="39.3125" height="39.3125" id="path_4"/><clipPath id="clip_path_4"><use xl:href="#path_4"/></clipPath><g clip-path="url(#clip_path_4)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(237.67708 276.6875) scale(.15356445)"/></g><text transform="translate(246.83333 480.66667)" fill="black"><tspan font-family="Helvetica Neue" font-size="9" font-weight="500" x=".1495" y="9" textLength="244.701">Payment Agent Model 2B - Single SIgn on via Payee website</tspan></text><path d="M 185.1174 244.01029 C 140.73872 235.20622 171.93096 82.075115 128.91667 83" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 203.56864 313.2796 C 199.89111 316.02392 194.66062 315.72594 191.32034 312.38566 C 187.65292 308.71824 187.65292 302.77217 191.32034 299.10475 C 194.66062 295.76447 199.89111 295.46649 203.56864 298.2108 L 203.56864 298.17943 L 215.17708 305.74447 L 203.56864 313.3095 Z" fill="#535353"/><text transform="translate(193.25107 300.17207)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">6</tspan></text></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/model_3_P2P_Payment_Proximity.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="105 53 842 515" width="842pt" height="515pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-13 04:47Z</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-6 -3 7 6" markerWidth="7" markerHeight="6" color="gray"><g><path d="M -4.8 0 L 0 1.8 L 0 -1.8 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Model 3 Person to Person</title><rect fill="white" width="972" height="1106"/><g><title>Layer 1</title><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" fill="white"/><path d="M 162.11877 411.96551 L 162.11877 411.96551 C 158.64159 410.11575 157.53683 406.15025 159.65138 403.10832 C 160.74618 401.5333 162.55928 400.44368 164.63257 400.1147 L 164.63257 400.1147 C 161.75045 395.98468 163.24113 390.59267 167.96214 388.07128 C 169.80655 387.08619 171.96556 386.64948 174.1171 386.8263 L 174.1171 386.8263 C 172.63034 381.42437 176.43083 375.99092 182.60553 374.6903 C 185.21751 374.14014 187.96713 374.40744 190.37743 375.44566 L 190.37743 375.44566 C 188.63013 371.9756 190.42901 367.92325 194.39561 366.39457 C 198.19647 364.92978 202.64396 366.3092 204.541 369.54148 L 204.541 369.54148 C 205.12397 365.40896 209.42581 362.47227 214.14967 362.98224 C 216.30903 363.21542 218.28789 364.15448 219.68858 365.61103 L 219.68858 365.61103 C 225.49194 359.28392 236.01544 358.18256 243.3609 363.13359 L 243.3609 363.13359 C 243.99663 360.73954 246.73043 359.24958 249.46707 359.8058 C 251.41375 360.20138 252.91533 361.55752 253.30525 363.2724 L 253.30529 363.2723 C 253.46163 360.90873 256.01312 359.32296 259.00424 359.73054 C 261.2177 360.03208 263.13794 361.36777 263.85383 363.10363 L 263.85383 363.10363 C 265.66162 361.94924 268.89676 361.99924 271.07977 363.2152 C 272.23113 363.85649 272.9096 364.73125 272.93787 365.61103 L 272.93787 365.61103 C 274.67807 362.838 280.10938 361.82566 285.06906 363.34996 C 289.03495 364.56885 291.6183 367.09796 291.4248 369.57217 L 291.4248 369.57217 C 293.84737 367.74727 297.05743 367.32675 298.59453 368.6328 C 299.86254 369.71005 299.61961 371.66864 298.00373 373.39626 L 298.00373 373.39626 C 302.06922 370.28818 308.24498 370.65172 311.79774 374.2083 C 314.11006 376.52302 314.82445 379.74529 313.669 382.64837 L 313.669 382.64837 C 318.57675 384.27756 321.26378 387.6564 319.98349 390.58839 L 319.98349 390.58839 C 327.59764 390.6867 333.401 394.3606 332.94555 398.79445 C 332.75597 400.64074 331.47924 402.4166 329.33037 403.82265 L 329.33037 403.82265 C 333.3793 404.8393 335.2415 407.5683 333.48957 409.91803 C 332.86481 410.75606 331.82745 411.46834 330.50786 411.96552 L 330.50768 411.9655 C 332.52122 411.18602 334.87586 411.98209 335.76685 413.74356 C 336.65784 415.50505 335.74782 417.5649 333.73428 418.34438 C 332.4668 418.8351 330.9987 418.71457 329.85767 418.0261 L 329.85767 418.0261 C 332.99481 421.13176 332.66011 425.87423 329.11002 428.61867 C 327.75059 429.66962 326.04526 430.31643 324.23926 430.4662 L 324.23926 430.4662 C 327.1879 431.1553 328.73868 433.3814 327.70328 435.43832 C 326.66753 437.49524 323.43773 438.60412 320.4891 437.91504 C 319.7539 437.74324 319.08005 437.46737 318.50953 437.10478 L 318.50953 437.10478 C 319.99611 442.5066 316.1958 447.94005 310.0211 449.24067 C 307.40912 449.79093 304.65932 449.52363 302.24902 448.4854 L 302.24902 448.4854 C 304.0728 451.16607 301.80672 454.19723 297.18744 455.2556 C 294.11005 455.96075 290.61384 455.6281 288.08545 454.3896 L 288.08545 454.3896 C 288.81976 457.78334 286.2702 461.0554 282.39075 461.69782 C 278.98577 462.26166 275.60872 460.60783 274.37804 457.77353 L 274.37804 457.77353 C 275.51072 460.47037 273.22687 463.15135 269.27698 463.76152 C 265.42971 464.35594 261.39898 462.7658 260.15479 460.16257 L 260.15479 460.16257 C 259.80144 462.413 256.37153 464.0711 252.4939 463.866 C 249.53664 463.70965 247.06524 462.49462 246.31329 460.82744 L 246.31329 460.82744 C 244.39064 463.4936 239.10773 464.75037 234.51367 463.6346 C 231.73041 462.95857 229.71414 461.51955 229.14145 459.8004 L 229.14145 459.8004 C 226.35821 461.60232 221.25733 461.42676 217.74831 459.40804 C 215.53097 458.13248 214.391 456.3556 214.74028 454.71973 L 214.74028 454.71973 C 214.44346 456.66893 211.05378 457.80797 207.16934 457.26387 C 203.2849 456.71976 200.37682 454.69843 200.67381 452.74923 C 200.7759 452.07893 201.25643 451.47565 202.05885 451.01024 L 202.05885 451.01024 C 197.88044 452.80935 192.82615 451.30447 190.76958 447.64895 C 189.8713 446.05211 189.66304 444.22482 190.18359 442.5042 L 190.18359 442.5042 C 186.04697 445.28725 180.28771 445.28725 176.15127 442.5042 L 176.15109 442.5042 C 170.03952 439.43933 167.03309 434.77773 168.38737 430.4662 L 168.38737 430.4662 C 164.15524 431.50965 159.75755 429.3541 158.56494 425.6516 C 157.71698 423.01937 158.70846 420.1966 161.09955 418.435 L 161.09955 418.435 C 158.31934 416.22715 158.693695 413.36287 161.93577 412.03744 C 161.99606 412.01283 162.05706 411.98886 162.11877 411.96552 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(159.26644 406.35447)" fill="#404040"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="#404040" x="53.907045" y="9" textLength="68.027344">Payment Service</tspan></text><path d="M 183.30316 98.666667 L 323.97917 98.666667 L 323.97917 260.66667 L 183.30316 260.66667 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="184.97917" y="98.666667" width="81.618273" height="18" fill="#2f72ff"/><rect x="184.97917" y="98.666667" width="81.618273" height="18" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(189.97917 102.166667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="white" x="7.547906" y="9" textLength="56.52246">Mobile Device</tspan></text><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" fill="#507baf"/><path d="M 199.97917 124.664145 L 303.97917 124.664145 C 305.08374 124.664145 305.97917 125.559575 305.97917 126.664145 L 305.97917 150.66667 C 305.97917 151.77124 305.08374 152.66667 303.97917 152.66667 L 199.97917 152.66667 C 198.8746 152.66667 197.97917 151.77124 197.97917 150.66667 L 197.97917 126.664145 C 197.97917 125.559575 198.8746 124.664145 199.97917 124.664145 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 133.165406)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="18.666748" y="9" textLength="43.501465"> Mobile </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="61.838623" y="9" textLength="17.494629">App</tspan></text><circle cx="215.97917" cy="137.66667" r="9.0000144" fill="#404040"/><circle cx="215.97917" cy="137.66667" r="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="210.07596" y="132.959915" width="11.821943" height="2.2831108" fill="white"/><rect x="213.27917" y="136.40551" width="8.618738" height="2.2831108" fill="white"/><rect x="213.27917" y="139.83018" width="8.618738" height="2.2831108" fill="white"/><rect x="210.07596" y="136.24883" width="2.2831108" height="5.864461" fill="white"/><path d="M 199.97917 206.66667 L 303.97917 206.66667 C 305.08374 206.66667 305.97917 207.5621 305.97917 208.66667 L 305.97917 231.66667 C 305.97917 232.77124 305.08374 233.66667 303.97917 233.66667 L 199.97917 233.66667 C 198.8746 233.66667 197.97917 232.77124 197.97917 231.66667 L 197.97917 208.66667 C 197.97917 207.5621 198.8746 206.66667 199.97917 206.66667 Z" fill="#e0edff"/><path d="M 199.97917 206.66667 L 303.97917 206.66667 C 305.08374 206.66667 305.97917 207.5621 305.97917 208.66667 L 305.97917 231.66667 C 305.97917 232.77124 305.08374 233.66667 303.97917 233.66667 L 199.97917 233.66667 C 198.8746 233.66667 197.97917 232.77124 197.97917 231.66667 L 197.97917 208.66667 C 197.97917 207.5621 198.8746 206.66667 199.97917 206.66667 Z" stroke="#507baf" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(202.97917 214.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="35.913086" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="44.078125" y="9" textLength="18.008789">allet</tspan></text><ellipse cx="216.04889" cy="220.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="216.04889" cy="220.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.90534 216.37798 L 221.00079 216.20038 C 221.55298 216.19067 222.0085 216.63044 222.01822 217.18264 C 222.01822 217.18264 222.01822 217.18264 222.01822 217.18264 L 222.11921 222.92374 C 222.12893 223.47594 221.68916 223.93146 221.13696 223.94118 L 211.04151 224.11877 C 210.48931 224.12848 210.03379 223.68871 210.02408 223.13651 C 210.02408 223.13651 210.02408 223.13651 210.02408 223.13651 L 209.92308 217.39541 C 209.91337 216.84321 210.35314 216.38769 210.90534 216.37798 Z" fill="white"/><path d="M 210.90534 216.37798 L 221.00079 216.20038 C 221.55298 216.19067 222.0085 216.63044 222.01822 217.18264 C 222.01822 217.18264 222.01822 217.18264 222.01822 217.18264 L 222.11921 222.92374 C 222.12893 223.47594 221.68916 223.93146 221.13696 223.94118 L 211.04151 224.11877 C 210.48931 224.12848 210.03379 223.68871 210.02408 223.13651 C 210.02408 223.13651 210.02408 223.13651 210.02408 223.13651 L 209.92308 217.39541 C 209.91337 216.84321 210.35314 216.38769 210.90534 216.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 221.24159 218.1578 L 213.93852 218.12573 L 219.48688 215.0215 Z" fill="white"/><path d="M 221.24159 218.1578 L 213.93852 218.12573 L 219.48688 215.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 220.82605 218.08064 L 214.74869 218.05396 L 219.36584 215.47073 Z" fill="#3f3f3f"/><path d="M 220.82605 218.08064 L 214.74869 218.05396 L 219.36584 215.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 221.42843 218.35922 C 221.42843 218.43887 221.20157 218.50405 220.9243 218.50405 L 213.8665 218.50405 C 213.58923 218.50405 213.36238 218.43887 213.36238 218.35922 L 213.36238 218.06956 C 213.36238 217.99005 213.58923 217.92473 213.8665 217.92473 L 220.9243 217.92473 C 221.20157 217.92473 221.42843 217.99005 221.42843 218.06956 Z" fill="#3f3f3f"/><path d="M 221.42843 219.23351 C 221.42843 219.31316 221.20157 219.37834 220.9243 219.37834 L 213.8665 219.37834 C 213.58923 219.37834 213.36238 219.31316 213.36238 219.23351 L 213.36238 218.94385 C 213.36238 218.86433 213.58923 218.79902 213.8665 218.79902 L 220.9243 218.79902 C 221.20157 218.79902 221.42843 218.86433 221.42843 218.94385 Z" fill="#3f3f3f"/><path d="M 210.0769 224.28471 L 217.65513 226.62082 C 218.1829 226.78351 218.74264 226.48756 218.90534 225.95978 C 218.93514 225.86312 218.9501 225.76249 218.9497 225.66134 L 218.92542 219.35352 C 218.92374 218.91614 218.638 218.5306 218.22002 218.40175 L 210.64179 216.06564 C 210.11401 215.90294 209.55427 216.1989 209.39158 216.72668 C 209.36178 216.82334 209.34682 216.92396 209.34721 217.02511 L 209.37149 223.33293 C 209.37318 223.77032 209.65892 224.15586 210.0769 224.28471 Z" fill="#3f3f3f"/><path d="M 210.0769 224.28471 L 217.65513 226.62082 C 218.1829 226.78351 218.74264 226.48756 218.90534 225.95978 C 218.93514 225.86312 218.9501 225.76249 218.9497 225.66134 L 218.92542 219.35352 C 218.92374 218.91614 218.638 218.5306 218.22002 218.40175 L 210.64179 216.06564 C 210.11401 215.90294 209.55427 216.1989 209.39158 216.72668 C 209.36178 216.82334 209.34682 216.92396 209.34721 217.02511 L 209.37149 223.33293 C 209.37318 223.77032 209.65892 224.15586 210.0769 224.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.54411 224.17887 L 217.21924 226.23658 C 217.74702 226.39928 218.30675 226.10332 218.46945 225.57554 C 218.49857 225.48107 218.51352 225.3828 218.51382 225.28395 L 218.53085 219.59696 C 218.53217 219.15704 218.24584 218.76793 217.82545 218.63834 L 211.15032 216.58062 C 210.62254 216.41793 210.0628 216.71389 209.9001 217.24166 C 209.87098 217.33613 209.85603 217.4344 209.85573 217.53325 L 209.8387 223.22025 C 209.83738 223.66016 210.12371 224.04927 210.54411 224.17887 Z" fill="white"/><path d="M 210.54411 224.17887 L 217.21924 226.23658 C 217.74702 226.39928 218.30675 226.10332 218.46945 225.57554 C 218.49857 225.48107 218.51352 225.3828 218.51382 225.28395 L 218.53085 219.59696 C 218.53217 219.15704 218.24584 218.76793 217.82545 218.63834 L 211.15032 216.58062 C 210.62254 216.41793 210.0628 216.71389 209.9001 217.24166 C 209.87098 217.33613 209.85603 217.4344 209.85573 217.53325 L 209.8387 223.22025 C 209.83738 223.66016 210.12371 224.04927 210.54411 224.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 489.94652 98.666667 L 634.5 98.666667 L 634.5 256.16667 L 489.94652 256.16667 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="489.63542" y="98.666667" width="125.14433" height="17.5" fill="silver"/><rect x="489.63542" y="98.666667" width="125.14433" height="17.5" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(494.63542 101.916667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="29.310934" y="9" textLength="56.52246">Mobile Device</tspan></text><path d="M 665.98703 79.38161 C 665.9725 79.50616 665.8646 79.595397 665.74683 79.580007 L 663.9768 79.34902 C 663.85822 79.334064 663.7739 79.219935 663.78887 79.095384 L 664.05174 76.82723 C 664.0676 76.70268 664.15622 76.611195 664.253 76.623423 C 664.34976 76.636556 664.42683 76.645614 664.42683 76.645614 L 664.3656 77.17461 L 665.86545 77.36981 L 665.9271 76.84127 L 666.10137 76.86301 C 666.1981 76.876597 666.2649 76.98801 666.2495 77.11256 Z M 665.7357 76.592624 L 665.66933 77.16057 L 664.6045 77.02243 L 664.67045 76.45449 Z M 663.31188 79.21451 L 660.8748 79.21451 L 660.8748 78.38387 C 660.8748 77.11256 660.47575 76.17595 659.74916 75.656016 C 660.02233 75.33536 660.41538 75.161894 660.91847 75.158724 L 660.84097 75.02602 C 660.79773 74.953557 660.85938 74.89604 660.9784 74.89604 L 661.1591 74.89604 C 661.25886 74.89604 661.41084 74.963522 661.49863 75.05048 L 662.43844 75.982107 L 663.3791 75.05048 C 663.46603 74.963522 663.6099 74.89604 663.70024 74.89604 L 663.86422 74.89604 C 663.9828 74.89604 664.04362 74.95673 663.9995 75.031457 C 663.955 75.10709 663.91903 75.168236 663.91903 75.168236 C 664.62292 75.21534 665.09603 75.613896 665.2973 76.3005 L 664.47734 76.19271 L 664.45723 76.367984 L 664.1267 76.32405 C 663.9828 76.30639 663.8441 76.49344 663.81455 76.743894 L 663.55336 78.98849 C 663.53924 79.11304 663.4309 79.21451 663.31188 79.21451 M 660.52413 81.379854 L 658.93094 81.379854 C 658.81748 80.889804 658.73228 80.37937 658.73228 79.945047 C 658.73228 78.981714 658.4317 80.218584 658.38332 81.379854 L 654.14024 81.379854 C 654.0923 80.218584 653.79086 78.981714 653.79086 79.945047 C 653.79086 80.37937 653.70524 80.889804 653.5935 81.379854 L 651.9742 81.379854 L 651.9742 78.38387 C 651.9742 76.66373 652.75344 75.656016 654.1364 75.56362 C 654.13468 75.55864 654.57225 75.54596 654.57225 75.54596 C 654.84286 76.14153 655.4256 76.4957 656.17787 76.4957 C 657.0239 76.4957 657.62205 76.160552 657.92605 75.54596 C 658.3482 75.55728 658.3452 75.562717 658.3452 75.562717 C 659.73974 75.648315 660.52413 76.65694 660.52413 78.38387 Z M 656.1937 70.61155 C 657.545 70.61155 658.1958 71.240193 658.1958 72.752436 C 658.1958 74.264233 657.545 75.49025 656.1937 75.49025 C 654.842 75.49025 654.19163 74.264233 654.19163 72.752436 C 654.19163 71.240193 654.842 70.61155 656.1937 70.61155 M 662.4196 71.59481 C 663.3594 71.59481 663.81197 72.03094 663.81197 73.08351 C 663.81197 74.135157 663.3594 74.98707 662.4196 74.98707 C 661.47935 74.98707 661.0268 74.135157 661.0268 73.08351 C 661.0268 72.03094 661.47935 71.59481 662.4196 71.59481 M 658.5135 62.666667 C 651.4651 62.666667 645.75 68.709807 645.75 76.165987 C 645.75 83.622177 651.4651 89.666667 658.5135 89.666667 C 665.5623 89.666667 671.27654 83.622177 671.27654 76.165987 C 671.27654 68.709807 665.5623 62.666667 658.5135 62.666667" fill="#3c3c3b"/><path d="M 505.97917 125.66667 L 622.375 125.66667 C 623.47957 125.66667 624.375 126.5621 624.375 127.66667 L 624.375 150.66667 C 624.375 151.77124 623.47957 152.66667 622.375 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" fill="#6d6d6d"/><path d="M 505.97917 125.66667 L 622.375 125.66667 C 623.47957 125.66667 624.375 126.5621 624.375 127.66667 L 624.375 150.66667 C 624.375 151.77124 623.47957 152.66667 622.375 152.66667 L 505.97917 152.66667 C 504.8746 152.66667 503.97917 151.77124 503.97917 150.66667 L 503.97917 127.66667 C 503.97917 126.5621 504.8746 125.66667 505.97917 125.66667 Z" stroke="#6d6d6d" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 133.66667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="37.191325" y="9" textLength="36.013184">Browser</tspan></text><path d="M 505.97917 211.66667 L 622.375 211.66667 C 623.47957 211.66667 624.375 212.5621 624.375 213.66667 L 624.375 236.66667 C 624.375 237.77124 623.47957 238.66667 622.375 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" fill="#ccc"/><path d="M 505.97917 211.66667 L 622.375 211.66667 C 623.47957 211.66667 624.375 212.5621 624.375 213.66667 L 624.375 236.66667 C 624.375 237.77124 623.47957 238.66667 622.375 238.66667 L 505.97917 238.66667 C 504.8746 238.66667 503.97917 237.77124 503.97917 236.66667 L 503.97917 213.66667 C 503.97917 212.5621 504.8746 211.66667 505.97917 211.66667 Z" stroke="#b3b3b3" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(508.97917 219.66667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="42.111003" y="9" textLength="8.494629">W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="50.276042" y="9" textLength="18.008789">allet</tspan></text><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="522.0489" cy="224.66667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" fill="white"/><path d="M 516.90534 220.37798 L 527.0008 220.20038 C 527.553 220.19067 528.0085 220.63044 528.01822 221.18264 L 528.1192 226.92374 C 528.12893 227.47594 527.68916 227.93146 527.13696 227.94118 C 527.13696 227.94118 527.13696 227.94118 527.13696 227.94118 L 517.0415 228.11877 C 516.4893 228.12848 516.0338 227.68871 516.02408 227.13651 L 515.9231 221.39541 C 515.91337 220.84321 516.35314 220.38769 516.90534 220.37798 C 516.90534 220.37798 516.90534 220.37798 516.90534 220.37798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" fill="white"/><path d="M 527.2416 222.1578 L 519.93852 222.12573 L 525.48688 219.0215 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" fill="#3f3f3f"/><path d="M 526.82605 222.08064 L 520.7487 222.05396 L 525.36584 219.47073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 527.42843 222.35922 C 527.42843 222.43887 527.20157 222.50405 526.9243 222.50405 L 519.8665 222.50405 C 519.58923 222.50405 519.36238 222.43887 519.36238 222.35922 L 519.36238 222.06956 C 519.36238 221.99005 519.58923 221.92473 519.8665 221.92473 L 526.9243 221.92473 C 527.20157 221.92473 527.42843 221.99005 527.42843 222.06956 Z" fill="#3f3f3f"/><path d="M 527.42843 223.2335 C 527.42843 223.31316 527.20157 223.37834 526.9243 223.37834 L 519.8665 223.37834 C 519.58923 223.37834 519.36238 223.31316 519.36238 223.2335 L 519.36238 222.94385 C 519.36238 222.86433 519.58923 222.79902 519.8665 222.79902 L 526.9243 222.79902 C 527.20157 222.79902 527.42843 222.86433 527.42843 222.94385 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" fill="#3f3f3f"/><path d="M 516.0769 228.28471 L 523.65513 230.62082 C 524.1829 230.78351 524.74264 230.48756 524.90534 229.95978 C 524.93514 229.86312 524.9501 229.76249 524.9497 229.66134 L 524.92542 223.35352 C 524.92374 222.91614 524.638 222.5306 524.22002 222.40175 L 516.6418 220.06564 C 516.114 219.90294 515.55427 220.1989 515.39158 220.72668 C 515.36178 220.82334 515.34682 220.92396 515.3472 221.02511 L 515.3715 227.33293 C 515.37318 227.77032 515.65892 228.15586 516.0769 228.28471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" fill="white"/><path d="M 516.5441 228.17887 L 523.21924 230.23658 C 523.74702 230.39928 524.30675 230.10332 524.46945 229.57554 C 524.49857 229.48107 524.51352 229.3828 524.51382 229.28395 L 524.53085 223.59696 C 524.53217 223.15704 524.24584 222.76793 523.82545 222.63834 L 517.15032 220.58062 C 516.62254 220.41793 516.0628 220.71389 515.9001 221.24166 C 515.87098 221.33613 515.85603 221.4344 515.85573 221.53325 L 515.8387 227.22025 C 515.83738 227.66016 516.1237 228.04927 516.5441 228.17887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(119.215895 90.5)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".2446289" y="9" textLength="23.510742">Payer</tspan></text><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" fill="#d2c9de"/><path d="M 205.3125 377.625 L 289.0625 377.625 C 290.16707 377.625 291.0625 378.52043 291.0625 379.625 L 291.0625 400.66667 C 291.0625 401.77124 290.16707 402.66667 289.0625 402.66667 L 205.3125 402.66667 C 204.20793 402.66667 203.3125 401.77124 203.3125 400.66667 L 203.3125 379.625 C 203.3125 378.52043 204.20793 377.625 205.3125 377.625 Z" stroke="#669" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(208.3125 379.14583)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="20.116943" y="9" textLength="37.516113">Payment</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="17.539551" y="20" textLength="27.997559">Agent </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="45.20752" y="20" textLength="15.00293">API</tspan></text><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" fill="#404040"/><ellipse cx="215.0246" cy="387.64141" rx="7.9217473" ry="7.9835995" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" fill="white"/><path d="M 210.57486 383.83508 L 219.30434 383.68152 C 219.85654 383.6718 220.31206 384.11157 220.32177 384.66377 C 220.32177 384.66377 220.32177 384.66377 220.32177 384.66377 L 220.40739 389.53067 C 220.4171 390.08287 219.97733 390.5384 219.42513 390.5481 L 210.69565 390.70167 C 210.14345 390.71138 209.68793 390.2716 209.67822 389.7194 C 209.67822 389.7194 209.67822 389.7194 209.67822 389.7194 L 209.5926 384.85251 C 209.58289 384.30031 210.02266 383.8448 210.57486 383.83508 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" fill="white"/><path d="M 219.63086 385.41588 L 213.15257 385.38744 L 218.07432 382.63379 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" fill="#3f3f3f"/><path d="M 219.26225 385.34744 L 213.87124 385.32377 L 217.96695 383.03228 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 219.7966 385.59456 C 219.7966 385.66522 219.59537 385.72303 219.34941 385.72303 L 213.08868 385.72303 C 212.84273 385.72303 212.64149 385.66522 212.64149 385.59456 L 212.64149 385.3376 C 212.64149 385.26708 212.84273 385.20914 213.08868 385.20914 L 219.34941 385.20914 C 219.59537 385.20914 219.7966 385.26708 219.7966 385.3376 Z" fill="#3f3f3f"/><path d="M 219.7966 386.3701 C 219.7966 386.44077 219.59537 386.49858 219.34941 386.49858 L 213.08868 386.49858 C 212.84273 386.49858 212.64149 386.44077 212.64149 386.3701 L 212.64149 386.11316 C 212.64149 386.04263 212.84273 385.98469 213.08868 385.98469 L 219.34941 385.98469 C 219.59537 385.98469 219.7966 386.04263 219.7966 386.11316 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" fill="#3f3f3f"/><path d="M 209.8064 390.87531 L 216.30265 392.87788 C 216.83042 393.04058 217.39016 392.74462 217.55286 392.21684 C 217.58265 392.12018 217.59761 392.01956 217.59722 391.9184 L 217.5766 386.5596 C 217.57491 386.12221 217.28917 385.73667 216.87119 385.60782 L 210.37494 383.60525 C 209.84717 383.44256 209.28743 383.73852 209.12473 384.2663 C 209.09494 384.36295 209.07998 384.46358 209.08037 384.56473 L 209.101 389.92354 C 209.10268 390.36092 209.38842 390.74646 209.8064 390.87531 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" fill="white"/><path d="M 210.22142 390.7816 L 215.91703 392.53736 C 216.44481 392.70006 217.00455 392.4041 217.16724 391.87632 C 217.19636 391.78185 217.21132 391.68359 217.21161 391.58473 L 217.22602 386.77614 C 217.22733 386.33622 216.941 385.9471 216.52061 385.81752 L 210.825 384.06176 C 210.29722 383.89906 209.73748 384.19502 209.57478 384.7228 C 209.54566 384.81726 209.53071 384.91553 209.53041 385.01439 L 209.51601 389.82298 C 209.51469 390.2629 209.80102 390.652 210.22142 390.7816 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><circle cx="519.73958" cy="139.16667" r="9.0000144" fill="#404040"/><circle cx="519.73958" cy="139.16667" r="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="513.83638" y="134.459915" width="11.821943" height="2.2831108" fill="white"/><rect x="517.03958" y="137.90551" width="8.618738" height="2.2831108" fill="white"/><rect x="517.03958" y="141.33018" width="8.618738" height="2.2831108" fill="white"/><rect x="513.83638" y="137.74883" width="2.2831108" height="5.864461" fill="white"/><path d="M 138.68966 79.38161 C 138.67511 79.50616 138.56721 79.595397 138.44945 79.580007 L 136.67944 79.34902 C 136.56085 79.334064 136.47651 79.219935 136.49149 79.095384 L 136.75436 76.82723 C 136.770216 76.70268 136.85884 76.611195 136.955615 76.623423 C 137.05239 76.636556 137.12945 76.645614 137.12945 76.645614 L 137.06821 77.17461 L 138.568076 77.36981 L 138.62972 76.84127 L 138.80399 76.86301 C 138.90074 76.876597 138.96754 76.98801 138.95212 77.11256 Z M 138.438324 76.592624 L 138.371955 77.16057 L 137.30714 77.02243 L 137.37308 76.45449 Z M 136.0145 79.21451 L 133.57742 79.21451 L 133.57742 78.38387 C 133.57742 77.11256 133.17837 76.17595 132.45178 75.656016 C 132.72495 75.33536 133.118 75.161894 133.62109 75.158724 L 133.543594 75.02602 C 133.50035 74.953557 133.562004 74.89604 133.681034 74.89604 L 133.86172 74.89604 C 133.96148 74.89604 134.113464 74.963522 134.20125 75.05048 L 135.14106 75.982107 L 136.08174 75.05048 C 136.16866 74.963522 136.312525 74.89604 136.40286 74.89604 L 136.566846 74.89604 C 136.68544 74.89604 136.74625 74.95673 136.70214 75.031457 C 136.65762 75.10709 136.62165 75.168236 136.62165 75.168236 C 137.325546 75.21534 137.798655 75.613896 137.999906 76.3005 L 137.17997 76.19271 L 137.15985 76.367984 L 136.82931 76.32405 C 136.68544 76.30639 136.546705 76.49344 136.51717 76.743894 L 136.25598 78.98849 C 136.24187 79.11304 136.13353 79.21451 136.0145 79.21451 M 133.22675 81.379854 L 131.633566 81.379854 C 131.5201 80.889804 131.4349 80.37937 131.4349 79.945047 C 131.4349 78.981714 131.13433 80.218584 131.08595 81.379854 L 126.84287 81.379854 C 126.79493 80.218584 126.493485 78.981714 126.493485 79.945047 C 126.493485 80.37937 126.40787 80.889804 126.29611 81.379854 L 124.67681 81.379854 L 124.67681 78.38387 C 124.67681 76.66373 125.45606 75.656016 126.83901 75.56362 C 126.8373 75.55864 127.27488 75.54596 127.27488 75.54596 C 127.545485 76.14153 128.128205 76.4957 128.88049 76.4957 C 129.72654 76.4957 130.32468 76.160552 130.62867 75.54596 C 131.05084 75.55728 131.04784 75.562717 131.04784 75.562717 C 132.442364 75.648315 133.22675 76.65694 133.22675 78.38387 Z M 128.89633 70.61155 C 130.24761 70.61155 130.898414 71.240193 130.898414 72.752436 C 130.898414 74.264233 130.24761 75.49025 128.89633 75.49025 C 127.54462 75.49025 126.89425 74.264233 126.89425 72.752436 C 126.89425 71.240193 127.54462 70.61155 128.89633 70.61155 M 135.12222 71.59481 C 136.06203 71.59481 136.51459 72.03094 136.51459 73.08351 C 136.51459 74.135157 136.06203 74.98707 135.12222 74.98707 C 134.18198 74.98707 133.729415 74.135157 133.729415 73.08351 C 133.729415 72.03094 134.18198 71.59481 135.12222 71.59481 M 131.21611 62.666667 C 124.16771 62.666667 118.452624 68.709807 118.452624 76.165987 C 118.452624 83.622177 124.16771 89.666667 131.21611 89.666667 C 138.26492 89.666667 143.97917 83.622177 143.97917 76.165987 C 143.97917 68.709807 138.26492 62.666667 131.21611 62.666667" fill="#3c3c3b"/><text transform="translate(649.25 94.666667)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".24047852" y="9" textLength="25.519043">Payee</tspan></text><path d="M 476.99898 401.63218 L 476.99898 401.63218 C 473.5218 399.78242 472.41704 395.81692 474.5316 392.775 C 475.62639 391.19996 477.4395 390.11035 479.51278 389.78136 L 479.51278 389.78136 C 476.63066 385.65135 478.12134 380.25933 482.84235 377.73795 C 484.68676 376.75285 486.84577 376.31615 488.9973 376.49296 L 488.9973 376.49296 C 487.51054 371.09103 491.31104 365.65758 497.48574 364.35697 C 500.09772 363.8068 502.84734 364.0741 505.25764 365.11233 L 505.25764 365.11233 C 503.51034 361.64228 505.30922 357.58992 509.27582 356.06124 C 513.07667 354.59644 517.52416 355.97586 519.4212 359.20815 L 519.4212 359.20815 C 520.00418 355.07563 524.30602 352.13893 529.02987 352.6489 C 531.18924 352.88208 533.1681 353.82115 534.5688 355.2777 L 534.5688 355.2777 C 540.37215 348.9506 550.89565 347.84923 558.2411 352.80025 L 558.2411 352.80025 C 558.87684 350.4062 561.61064 348.91625 564.34728 349.47247 C 566.29396 349.86805 567.79554 351.2242 568.18546 352.93907 L 568.1855 352.93897 C 568.34184 350.5754 570.89333 348.98963 573.88445 349.39721 C 576.0979 349.69875 578.01815 351.03444 578.73404 352.7703 L 578.73404 352.7703 C 580.54183 351.6159 583.77696 351.6659 585.96 352.88187 C 587.11134 353.52315 587.7898 354.39792 587.8181 355.2777 L 587.8181 355.2777 C 589.55827 352.50466 594.9896 351.49233 599.94927 353.01662 C 603.91516 354.23551 606.4985 356.76462 606.305 359.23883 L 606.305 359.23883 C 608.72758 357.41394 611.93764 356.99341 613.47473 358.29946 C 614.74275 359.37671 614.49982 361.3353 612.88394 363.06293 L 612.88394 363.06293 C 616.94943 359.95485 623.1252 360.31838 626.67795 363.87496 C 628.99026 366.18969 629.70466 369.41195 628.5492 372.31504 L 628.5492 372.31504 C 633.45696 373.94423 636.144 377.32306 634.8637 380.25505 L 634.8637 380.25505 C 642.47785 380.35337 648.2812 384.02727 647.82576 388.46112 C 647.63618 390.3074 646.35945 392.08326 644.21057 393.48931 L 644.21057 393.48931 C 648.2595 394.50596 650.1217 397.23496 648.36978 399.5847 C 647.745 400.42272 646.70766 401.135 645.38807 401.63218 L 645.3879 401.63217 C 647.40143 400.8527 649.75606 401.64875 650.64706 403.41023 C 651.53805 405.17171 650.62803 407.23158 648.6145 408.01105 C 647.347 408.50176 645.8789 408.38124 644.73788 407.69276 L 644.73788 407.69276 C 647.87502 410.79842 647.54032 415.5409 643.99023 418.28534 C 642.6308 419.3363 640.92546 419.9831 639.11947 420.13288 L 639.11947 420.13288 C 642.0681 420.82196 643.6189 423.04807 642.5835 425.105 C 641.54774 427.1619 638.31793 428.2708 635.3693 427.5817 C 634.6341 427.4099 633.96026 427.13404 633.38974 426.77144 L 633.38974 426.77144 C 634.87632 432.17327 631.076 437.60672 624.9013 438.90733 C 622.28933 439.4576 619.53953 439.1903 617.12922 438.15207 L 617.12922 438.15207 C 618.953 440.83274 616.68693 443.8639 612.06764 444.92225 C 608.99025 445.6274 605.49404 445.29477 602.96566 444.05626 L 602.96566 444.05626 C 603.69997 447.45 601.1504 450.72206 597.27096 451.3645 C 593.86598 451.92832 590.48892 450.2745 589.25825 447.4402 L 589.25825 447.4402 C 590.39093 450.13704 588.10708 452.81801 584.1572 453.4282 C 580.30992 454.0226 576.2792 452.43245 575.035 449.82924 L 575.035 449.82924 C 574.68164 452.07967 571.25174 453.73777 567.3741 453.53267 C 564.41685 453.37632 561.94545 452.1613 561.1935 450.4941 L 561.1935 450.4941 C 559.27085 453.16026 553.98794 454.41704 549.39387 453.30127 C 546.61062 452.62523 544.59435 451.18622 544.02166 449.46706 L 544.02166 449.46706 C 541.23842 451.26899 536.13753 451.09343 532.62852 449.0747 C 530.41118 447.79914 529.2712 446.02226 529.6205 444.3864 L 529.6205 444.3864 C 529.32367 446.3356 525.934 447.47464 522.04955 446.93053 C 518.1651 446.38643 515.25703 444.3651 515.55402 442.4159 C 515.6561 441.7456 516.13664 441.14231 516.93906 440.6769 L 516.93906 440.6769 C 512.76065 442.47602 507.70636 440.97114 505.6498 437.31561 C 504.7515 435.71878 504.54325 433.8915 505.0638 432.17087 L 505.0638 432.17087 C 500.92717 434.95392 495.16792 434.95392 491.03147 432.17087 L 491.0313 432.17087 C 484.91973 429.106 481.9133 424.4444 483.26757 420.13288 L 483.26757 420.13288 C 479.03545 421.17632 474.63776 419.02076 473.44515 415.31827 C 472.5972 412.68604 473.58866 409.86327 475.97976 408.10168 L 475.97976 408.10168 C 473.19954 405.8938 473.5739 403.02953 476.81598 401.7041 C 476.87626 401.6795 476.93726 401.65552 476.99898 401.63218 Z" fill="white"/><path d="M 476.99898 401.63218 L 476.99898 401.63218 C 473.5218 399.78242 472.41704 395.81692 474.5316 392.775 C 475.62639 391.19996 477.4395 390.11035 479.51278 389.78136 L 479.51278 389.78136 C 476.63066 385.65135 478.12134 380.25933 482.84235 377.73795 C 484.68676 376.75285 486.84577 376.31615 488.9973 376.49296 L 488.9973 376.49296 C 487.51054 371.09103 491.31104 365.65758 497.48574 364.35697 C 500.09772 363.8068 502.84734 364.0741 505.25764 365.11233 L 505.25764 365.11233 C 503.51034 361.64228 505.30922 357.58992 509.27582 356.06124 C 513.07667 354.59644 517.52416 355.97586 519.4212 359.20815 L 519.4212 359.20815 C 520.00418 355.07563 524.30602 352.13893 529.02987 352.6489 C 531.18924 352.88208 533.1681 353.82115 534.5688 355.2777 L 534.5688 355.2777 C 540.37215 348.9506 550.89565 347.84923 558.2411 352.80025 L 558.2411 352.80025 C 558.87684 350.4062 561.61064 348.91625 564.34728 349.47247 C 566.29396 349.86805 567.79554 351.2242 568.18546 352.93907 L 568.1855 352.93897 C 568.34184 350.5754 570.89333 348.98963 573.88445 349.39721 C 576.0979 349.69875 578.01815 351.03444 578.73404 352.7703 L 578.73404 352.7703 C 580.54183 351.6159 583.77696 351.6659 585.96 352.88187 C 587.11134 353.52315 587.7898 354.39792 587.8181 355.2777 L 587.8181 355.2777 C 589.55827 352.50466 594.9896 351.49233 599.94927 353.01662 C 603.91516 354.23551 606.4985 356.76462 606.305 359.23883 L 606.305 359.23883 C 608.72758 357.41394 611.93764 356.99341 613.47473 358.29946 C 614.74275 359.37671 614.49982 361.3353 612.88394 363.06293 L 612.88394 363.06293 C 616.94943 359.95485 623.1252 360.31838 626.67795 363.87496 C 628.99026 366.18969 629.70466 369.41195 628.5492 372.31504 L 628.5492 372.31504 C 633.45696 373.94423 636.144 377.32306 634.8637 380.25505 L 634.8637 380.25505 C 642.47785 380.35337 648.2812 384.02727 647.82576 388.46112 C 647.63618 390.3074 646.35945 392.08326 644.21057 393.48931 L 644.21057 393.48931 C 648.2595 394.50596 650.1217 397.23496 648.36978 399.5847 C 647.745 400.42272 646.70766 401.135 645.38807 401.63218 L 645.3879 401.63217 C 647.40143 400.8527 649.75606 401.64875 650.64706 403.41023 C 651.53805 405.17171 650.62803 407.23158 648.6145 408.01105 C 647.347 408.50176 645.8789 408.38124 644.73788 407.69276 L 644.73788 407.69276 C 647.87502 410.79842 647.54032 415.5409 643.99023 418.28534 C 642.6308 419.3363 640.92546 419.9831 639.11947 420.13288 L 639.11947 420.13288 C 642.0681 420.82196 643.6189 423.04807 642.5835 425.105 C 641.54774 427.1619 638.31793 428.2708 635.3693 427.5817 C 634.6341 427.4099 633.96026 427.13404 633.38974 426.77144 L 633.38974 426.77144 C 634.87632 432.17327 631.076 437.60672 624.9013 438.90733 C 622.28933 439.4576 619.53953 439.1903 617.12922 438.15207 L 617.12922 438.15207 C 618.953 440.83274 616.68693 443.8639 612.06764 444.92225 C 608.99025 445.6274 605.49404 445.29477 602.96566 444.05626 L 602.96566 444.05626 C 603.69997 447.45 601.1504 450.72206 597.27096 451.3645 C 593.86598 451.92832 590.48892 450.2745 589.25825 447.4402 L 589.25825 447.4402 C 590.39093 450.13704 588.10708 452.81801 584.1572 453.4282 C 580.30992 454.0226 576.2792 452.43245 575.035 449.82924 L 575.035 449.82924 C 574.68164 452.07967 571.25174 453.73777 567.3741 453.53267 C 564.41685 453.37632 561.94545 452.1613 561.1935 450.4941 L 561.1935 450.4941 C 559.27085 453.16026 553.98794 454.41704 549.39387 453.30127 C 546.61062 452.62523 544.59435 451.18622 544.02166 449.46706 L 544.02166 449.46706 C 541.23842 451.26899 536.13753 451.09343 532.62852 449.0747 C 530.41118 447.79914 529.2712 446.02226 529.6205 444.3864 L 529.6205 444.3864 C 529.32367 446.3356 525.934 447.47464 522.04955 446.93053 C 518.1651 446.38643 515.25703 444.3651 515.55402 442.4159 C 515.6561 441.7456 516.13664 441.14231 516.93906 440.6769 L 516.93906 440.6769 C 512.76065 442.47602 507.70636 440.97114 505.6498 437.31561 C 504.7515 435.71878 504.54325 433.8915 505.0638 432.17087 L 505.0638 432.17087 C 500.92717 434.95392 495.16792 434.95392 491.03147 432.17087 L 491.0313 432.17087 C 484.91973 429.106 481.9133 424.4444 483.26757 420.13288 L 483.26757 420.13288 C 479.03545 421.17632 474.63776 419.02076 473.44515 415.31827 C 472.5972 412.68604 473.58866 409.86327 475.97976 408.10168 L 475.97976 408.10168 C 473.19954 405.8938 473.5739 403.02953 476.81598 401.7041 C 476.87626 401.6795 476.93726 401.65552 476.99898 401.63218 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(474.14664 396.02114)" fill="#404040"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="#404040" x="53.907045" y="9" textLength="68.027344">Payment Service</tspan></text><path d="M 520.1927 370.58333 L 603.9427 370.58333 C 605.04728 370.58333 605.9427 371.47876 605.9427 372.58333 L 605.9427 393.625 C 605.9427 394.72957 605.04728 395.625 603.9427 395.625 L 520.1927 395.625 C 519.08814 395.625 518.1927 394.72957 518.1927 393.625 L 518.1927 372.58333 C 518.1927 371.47876 519.08814 370.58333 520.1927 370.58333 Z" fill="#d2c9de"/><path d="M 520.1927 370.58333 L 603.9427 370.58333 C 605.04728 370.58333 605.9427 371.47876 605.9427 372.58333 L 605.9427 393.625 C 605.9427 394.72957 605.04728 395.625 603.9427 395.625 L 520.1927 395.625 C 519.08814 395.625 518.1927 394.72957 518.1927 393.625 L 518.1927 372.58333 C 518.1927 371.47876 519.08814 370.58333 520.1927 370.58333 Z" stroke="#669" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(523.1927 372.10417)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="20.116943" y="9" textLength="37.516113">Payment</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="17.539551" y="20" textLength="27.997559">Agent </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="45.20752" y="20" textLength="15.00293">API</tspan></text><ellipse cx="529.9048" cy="380.59975" rx="7.9217473" ry="7.9835995" fill="#404040"/><ellipse cx="529.9048" cy="380.59975" rx="7.9217473" ry="7.9835995" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 525.45507 376.79341 L 534.18455 376.63985 C 534.73675 376.63014 535.19227 377.0699 535.20198 377.6221 C 535.20198 377.6221 535.20198 377.6221 535.20198 377.6221 L 535.2876 382.489 C 535.2973 383.0412 534.85754 383.49672 534.30534 383.50644 L 525.57586 383.66 C 525.02366 383.66972 524.56814 383.22994 524.55842 382.67774 C 524.55842 382.67774 524.55842 382.67774 524.55842 382.67774 L 524.4728 377.81085 C 524.4631 377.25865 524.90287 376.80313 525.45507 376.79341 Z" fill="white"/><path d="M 525.45507 376.79341 L 534.18455 376.63985 C 534.73675 376.63014 535.19227 377.0699 535.20198 377.6221 C 535.20198 377.6221 535.20198 377.6221 535.20198 377.6221 L 535.2876 382.489 C 535.2973 383.0412 534.85754 383.49672 534.30534 383.50644 L 525.57586 383.66 C 525.02366 383.66972 524.56814 383.22994 524.55842 382.67774 C 524.55842 382.67774 524.55842 382.67774 524.55842 382.67774 L 524.4728 377.81085 C 524.4631 377.25865 524.90287 376.80313 525.45507 376.79341 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 534.51107 378.37421 L 528.03278 378.34577 L 532.95453 375.59212 Z" fill="white"/><path d="M 534.51107 378.37421 L 528.03278 378.34577 L 532.95453 375.59212 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 534.14246 378.30577 L 528.75145 378.2821 L 532.84716 375.9906 Z" fill="#3f3f3f"/><path d="M 534.14246 378.30577 L 528.75145 378.2821 L 532.84716 375.9906 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 534.6768 378.5529 C 534.6768 378.62355 534.47558 378.68136 534.22962 378.68136 L 527.9689 378.68136 C 527.72294 378.68136 527.5217 378.62355 527.5217 378.5529 L 527.5217 378.29594 C 527.5217 378.2254 527.72294 378.16747 527.9689 378.16747 L 534.22962 378.16747 C 534.47558 378.16747 534.6768 378.2254 534.6768 378.29594 Z" fill="#3f3f3f"/><path d="M 534.6768 379.32844 C 534.6768 379.3991 534.47558 379.45691 534.22962 379.45691 L 527.9689 379.45691 C 527.72294 379.45691 527.5217 379.3991 527.5217 379.32844 L 527.5217 379.0715 C 527.5217 379.00096 527.72294 378.94302 527.9689 378.94302 L 534.22962 378.94302 C 534.47558 378.94302 534.6768 379.00096 534.6768 379.0715 Z" fill="#3f3f3f"/><path d="M 524.6866 383.83365 L 531.18285 385.83621 C 531.71063 385.9989 532.27037 385.70295 532.43306 385.17518 C 532.46286 385.07851 532.47782 384.9779 532.47743 384.87674 L 532.4568 379.51793 C 532.45512 379.08055 532.16938 378.695 531.7514 378.56616 L 525.25515 376.56359 C 524.72738 376.4009 524.16764 376.69685 524.00494 377.22463 C 523.97514 377.32129 523.96018 377.42191 523.96057 377.52306 L 523.9812 382.88187 C 523.9829 383.31926 524.26863 383.7048 524.6866 383.83365 Z" fill="#3f3f3f"/><path d="M 524.6866 383.83365 L 531.18285 385.83621 C 531.71063 385.9989 532.27037 385.70295 532.43306 385.17518 C 532.46286 385.07851 532.47782 384.9779 532.47743 384.87674 L 532.4568 379.51793 C 532.45512 379.08055 532.16938 378.695 531.7514 378.56616 L 525.25515 376.56359 C 524.72738 376.4009 524.16764 376.69685 524.00494 377.22463 C 523.97514 377.32129 523.96018 377.42191 523.96057 377.52306 L 523.9812 382.88187 C 523.9829 383.31926 524.26863 383.7048 524.6866 383.83365 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 525.10163 383.73993 L 530.79724 385.4957 C 531.32502 385.6584 531.88476 385.36243 532.04745 384.83466 C 532.07657 384.74019 532.09153 384.64192 532.09182 384.54306 L 532.10622 379.73447 C 532.10754 379.29455 531.8212 378.90544 531.4008 378.77585 L 525.7052 377.0201 C 525.17743 376.8574 524.6177 377.15335 524.455 377.68113 C 524.42587 377.7756 524.41092 377.87386 524.41062 377.97272 L 524.39622 382.78131 C 524.3949 383.22123 524.68123 383.61034 525.10163 383.73993 Z" fill="white"/><path d="M 525.10163 383.73993 L 530.79724 385.4957 C 531.32502 385.6584 531.88476 385.36243 532.04745 384.83466 C 532.07657 384.74019 532.09153 384.64192 532.09182 384.54306 L 532.10622 379.73447 C 532.10754 379.29455 531.8212 378.90544 531.4008 378.77585 L 525.7052 377.0201 C 525.17743 376.8574 524.6177 377.15335 524.455 377.68113 C 524.42587 377.7756 524.41092 377.87386 524.41062 377.97272 L 524.39622 382.78131 C 524.3949 383.22123 524.68123 383.61034 525.10163 383.73993 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/></g><g><title>Legend</title><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 720 96.854167 L 878.625 96.854167 C 881.1103 96.854167 883.125 98.868885 883.125 101.354167 L 883.125 489.375 C 883.125 491.86028 881.1103 493.875 878.625 493.875 L 720 493.875 C 717.5147 493.875 715.5 491.86028 715.5 489.375 L 715.5 101.354167 C 715.5 98.868885 717.5147 96.854167 720 96.854167 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(800.68874 154.751145)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9873047" y="9" textLength="29.012695">Human</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="8.9941406" y="20" textLength="21.00586">Actor</tspan></text><path d="M 859.023 169.04828 C 859.00844 169.17283 858.90054 169.26206 858.7828 169.24667 L 857.0128 169.01569 C 856.8942 169.00073 856.80984 168.8866 856.8248 168.76205 L 857.0877 166.4939 C 857.10355 166.36935 857.1922 166.27786 857.28895 166.29009 C 857.3857 166.30322 857.4628 166.31228 857.4628 166.31228 L 857.40155 166.84128 L 858.9014 167.03648 L 858.96306 166.50794 L 859.1373 166.52968 C 859.23407 166.54326 859.30087 166.65468 859.28546 166.77923 Z M 858.77166 166.25929 L 858.7053 166.82724 L 857.64047 166.6891 L 857.7064 166.12116 Z M 856.34784 168.88117 L 853.91075 168.88117 L 853.91075 168.05054 C 853.91075 166.77923 853.5117 165.84262 852.7851 165.32268 C 853.0583 165.002025 853.45133 164.82856 853.9544 164.82539 L 853.87693 164.69269 C 853.8337 164.62022 853.89534 164.56271 854.01437 164.56271 L 854.19505 164.56271 C 854.2948 164.56271 854.4468 164.63019 854.5346 164.71715 L 855.4744 165.64877 L 856.41507 164.71715 C 856.502 164.63019 856.64586 164.56271 856.7362 164.56271 L 856.9002 164.56271 C 857.0188 164.56271 857.0796 164.6234 857.03547 164.69812 C 856.99095 164.77376 856.955 164.8349 856.955 164.8349 C 857.6589 164.882 858.132 165.28056 858.33324 165.96717 L 857.5133 165.85938 L 857.4932 166.03465 L 857.16264 165.99072 C 857.0188 165.97305 856.88004 166.16011 856.8505 166.41056 L 856.5893 168.65516 C 856.5752 168.77971 856.46687 168.88117 856.34784 168.88117 M 853.5601 171.04652 L 851.9669 171.04652 C 851.85344 170.55647 851.76823 170.04604 851.76823 169.61171 C 851.76823 168.64838 851.46766 169.88525 851.4193 171.04652 L 847.1762 171.04652 C 847.12826 169.88525 846.8268 168.64838 846.8268 169.61171 C 846.8268 170.04604 846.7412 170.55647 846.62945 171.04652 L 845.01015 171.04652 L 845.01015 168.05054 C 845.01015 166.3304 845.7894 165.32268 847.17235 165.23029 C 847.17064 165.22531 847.6082 165.212625 847.6082 165.212625 C 847.8788 165.8082 848.46154 166.16237 849.2138 166.16237 C 850.05987 166.16237 850.658 165.82722 850.962 165.212625 C 851.38417 165.22395 851.3812 165.22938 851.3812 165.22938 C 852.7757 165.31498 853.5601 166.3236 853.5601 168.05054 Z M 849.22966 160.27822 C 850.58094 160.27822 851.23175 160.90686 851.23175 162.4191 C 851.23175 163.9309 850.58094 165.15692 849.22966 165.15692 C 847.87795 165.15692 847.2276 163.9309 847.2276 162.4191 C 847.2276 160.90686 847.87795 160.27822 849.22966 160.27822 M 855.45556 161.26148 C 856.39537 161.26148 856.84793 161.69761 856.84793 162.75018 C 856.84793 163.80182 856.39537 164.65374 855.45556 164.65374 C 854.5153 164.65374 854.06275 163.80182 854.06275 162.75018 C 854.06275 161.69761 854.5153 161.26148 855.45556 161.26148 M 851.54944 152.33333 C 844.50104 152.33333 838.78596 158.37647 838.78596 165.83265 C 838.78596 173.28884 844.50104 179.33333 851.54944 179.33333 C 858.59826 179.33333 864.3125 173.28884 864.3125 165.83265 C 864.3125 158.37647 858.59826 152.33333 851.54944 152.33333" fill="#3c3c3b"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="850.9427" cy="210.10536" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.3407 207.59389 L 857.0108 207.59389 L 857.0108 208.02222 L 853.3407 208.02222 Z M 853.3407 208.35319 L 857.0108 208.35319 L 857.0108 208.78153 L 853.3407 208.78153 Z M 853.34055 209.07824 L 857.0108 209.07824 L 857.0108 209.50658 L 853.34055 209.50658 Z M 857.4368 206.61702 L 852.91465 206.61702 C 852.6992 206.61702 852.5246 206.7893 852.5246 207.00186 L 852.5246 213.12812 C 852.5246 213.34068 852.6992 213.51297 852.91465 213.51297 L 857.4368 213.51297 C 857.65224 213.51297 857.82684 213.34068 857.82684 213.12812 L 857.82684 207.00186 C 857.82684 206.7893 857.65224 206.61702 857.4368 206.61702" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" fill="white"/><path d="M 845.651 206.27879 L 851.27427 206.27879 L 851.27427 206.93508 L 845.651 206.93508 Z M 845.651 207.44219 L 851.27427 207.44219 L 851.27427 208.09848 L 845.651 208.09848 Z M 845.6508 208.5531 L 851.27427 208.5531 L 851.27427 209.2094 L 845.6508 209.2094 Z M 851.92703 204.78204 L 844.9982 204.78204 C 844.66815 204.78204 844.40063 205.04601 844.40063 205.3717 L 844.40063 214.75828 C 844.40063 215.08397 844.66815 215.34794 844.9982 215.34794 L 851.92703 215.34794 C 852.2571 215.34794 852.5246 215.08397 852.5246 214.75828 L 852.5246 205.3717 C 852.5246 205.04601 852.2571 204.78204 851.92703 204.78204" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.16547 200.63907)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9941406" y="9" textLength="30.00586">System</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.9941406" y="20" textLength="21.00586">Actor</tspan></text><text transform="translate(779.3125 115.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="1.5386966" y="9" textLength="48.019043">User Agent)</tspan></text><circle cx="851.04557" cy="121.066406" r="13.266949" fill="#404040"/><circle cx="851.04557" cy="121.066406" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="842.34364" y="114.12817" width="17.426762" height="3.3655407" fill="white"/><rect x="847.0655" y="119.207336" width="12.704908" height="3.3655407" fill="white"/><rect x="847.0655" y="124.25565" width="12.704908" height="3.3655407" fill="white"/><rect x="842.34364" y="118.97637" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="851.14836" cy="254.0664" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" fill="white"/><path d="M 843.0922 247.75277 L 858.922 247.4743 C 859.4742 247.46459 859.9297 247.90436 859.9394 248.45656 C 859.9394 248.45656 859.9394 248.45656 859.9394 248.45656 L 860.10497 257.8676 C 860.1147 258.4198 859.6749 258.87532 859.1227 258.88503 L 843.29293 259.1635 C 842.74073 259.17321 842.2852 258.73344 842.2755 258.18124 C 842.2755 258.18124 842.2755 258.18124 842.2755 258.18124 L 842.10994 248.77021 C 842.10023 248.21801 842.54 247.76249 843.0922 247.75277 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" fill="white"/><path d="M 858.8029 250.36807 L 848.03745 250.32081 L 856.2163 245.74486 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" fill="#3f3f3f"/><path d="M 858.1904 250.25433 L 849.2317 250.215 L 856.0379 246.40705 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 859.07835 250.66499 C 859.07835 250.78241 858.74394 250.87848 858.3352 250.87848 L 847.9313 250.87848 C 847.52257 250.87848 847.18815 250.78241 847.18815 250.66499 L 847.18815 250.238 C 847.18815 250.1208 847.52257 250.02451 847.9313 250.02451 L 858.3352 250.02451 C 858.74394 250.02451 859.07835 250.1208 859.07835 250.238 Z" fill="#3f3f3f"/><path d="M 859.07835 251.95378 C 859.07835 252.0712 858.74394 252.16727 858.3352 252.16727 L 847.9313 252.16727 C 847.52257 252.16727 847.18815 252.0712 847.18815 251.95378 L 847.18815 251.5268 C 847.18815 251.40958 847.52257 251.3133 847.9313 251.3133 L 858.3352 251.3133 C 858.74394 251.3133 859.07835 251.40958 859.07835 251.5268 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" fill="#3f3f3f"/><path d="M 842.01193 259.29709 L 854.13236 263.0334 C 854.66013 263.1961 855.21987 262.90014 855.38257 262.37237 C 855.41237 262.2757 855.4273 262.17508 855.42694 262.07393 L 855.3873 251.78214 C 855.38563 251.34475 855.0999 250.95921 854.6819 250.83036 L 842.5615 247.09405 C 842.0337 246.93135 841.47396 247.22731 841.31127 247.75509 C 841.28147 247.85175 841.2665 247.95237 841.2669 248.05352 L 841.3065 258.34532 C 841.3082 258.7827 841.59395 259.16824 842.01193 259.29709 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" fill="white"/><path d="M 842.69825 259.14033 L 853.4854 262.46564 C 854.0132 262.62834 854.57293 262.33238 854.7356 261.8046 C 854.76475 261.71014 854.7797 261.61187 854.78 261.51301 L 854.80807 252.13848 C 854.8094 251.69856 854.52306 251.30945 854.10267 251.17986 L 843.3155 247.85455 C 842.7877 247.69185 842.228 247.9878 842.0653 248.51558 C 842.03617 248.61005 842.0212 248.70832 842.0209 248.80718 L 841.99284 258.18171 C 841.9915 258.62163 842.27785 259.01074 842.69825 259.14033 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(765.6245 248.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4633789" y="9" textLength="61.53662">Payment Agent</tspan></text><text transform="translate(771.8125 357.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".47216797" y="9" textLength="52.527832">Payment info</tspan></text><text transform="translate(779.3125 439.27158)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="22.505175" y="9" textLength="23.510742">Payer</tspan></text><path d="M 835.11176 435.27032 L 862.2582 435.27032 L 862.2582 454.27285 L 835.11176 454.27285 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" fill="#2f72ff"/><rect x="834.4703" y="435.27032" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 835.11176 466.3308 L 862.2582 466.3308 L 862.2582 485.33333 L 835.11176 485.33333 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" fill="silver"/><rect x="834.72436" y="466.3308" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(779.3125 466.27158)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="20.496874" y="9" textLength="25.519043">Payee</tspan></text><text transform="translate(734.8125 393.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".96240234" y="9" textLength="89.0376">Payment Confrimation</tspan></text><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z" fill="white"/><path d="M 863.3125 357.32263 C 863.3125 354.76492 863.02675 354.44848 860.9394 351.91723 L 860.9174 351.89104 C 858.819 349.33333 858.7972 349.33333 856.6437 349.33333 C 853.7763 349.33333 840.8125 349.33333 840.8125 349.33333 L 840.8125 376.33333 L 863.3125 376.33333 L 863.3125 357.32263 Z M 863.3125 357.19087 C 863.3125 354.76492 863.29045 354.76492 858.7972 354.76492 L 858.7972 354.76492 C 858.7972 349.3598 858.7972 349.33333 856.7756 349.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="851.7732" cy="363.40942" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(848.9339 356.83333)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z" fill="white"/><path d="M 864.3125 395.32263 C 864.3125 392.76492 864.02675 392.44848 861.9394 389.91723 L 861.9174 389.89104 C 859.819 387.33333 859.7972 387.33333 857.6437 387.33333 C 854.7763 387.33333 841.8125 387.33333 841.8125 387.33333 L 841.8125 414.33333 L 864.3125 414.33333 L 864.3125 395.32263 Z M 864.3125 395.19087 C 864.3125 392.76492 864.29045 392.76492 859.7972 392.76492 L 859.7972 392.76492 C 859.7972 387.3598 859.7972 387.33333 857.7756 387.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="852.6406" cy="402.16146" r="8.028609" fill="#404040"/><circle cx="852.6406" cy="402.16146" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 849.0018 402.91968 L 851.7071 405.20206 L 856.8698 399.87164" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z" fill="white"/><path d="M 863.3125 280.32263 C 863.3125 277.76492 863.02675 277.44848 860.9394 274.91723 L 860.9174 274.89104 C 858.819 272.33333 858.7972 272.33333 856.6437 272.33333 C 853.7763 272.33333 840.8125 272.33333 840.8125 272.33333 L 840.8125 299.33333 L 863.3125 299.33333 L 863.3125 280.32263 Z M 863.3125 280.19087 C 863.3125 277.76492 863.29045 277.76492 858.7972 277.76492 L 858.7972 277.76492 C 858.7972 272.3598 858.7972 272.33333 856.7756 272.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(755.8125 281.96754)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9638672" y="9" textLength="68.036133">Payment Addess</tspan></text><text transform="translate(775.4462 318.33333)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.795907" y="9" textLength="28.516113">Invoice</tspan></text><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z" fill="white"/><path d="M 861.65135 319.32263 C 861.65135 316.76492 861.3656 316.44848 859.2783 313.91723 L 859.25623 313.89104 C 857.1579 311.33333 857.13605 311.33333 854.9826 311.33333 C 852.1152 311.33333 839.15135 311.33333 839.15135 311.33333 L 839.15135 338.33333 L 861.65135 338.33333 L 861.65135 319.32263 Z M 861.65135 319.19087 C 861.65135 316.76492 861.6293 316.76492 857.13605 316.76492 L 857.13605 316.76492 C 857.13605 311.3598 857.13605 311.33333 855.11443 311.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="830.4222" y="296.35417" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(830.4222 296.35417) scale(.15356445)"/></g><text transform="translate(710.375 498.875)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="9" textLength="36.492188">W3C - W</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="36.333984" y="9" textLength="112.55713">eb Payments Interest Group</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="20" textLength="38.01709">Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="37.524902" y="20" textLength="74.052246">Agent Conceptual </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="111.08496" y="20" textLength="48.019043">Architecture</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="31" textLength="61.523438">Author: Patrick </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="61.03125" y="31" textLength="21.010254">Adler</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="81.549316" y="31" textLength="140.07129">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="42" textLength="6.0029297">V</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="5.5107422" y="42" textLength="39.524414">ersion 0.1</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="0" y="53" textLength="30.027832">3/12/15</tspan></text><text transform="translate(726.3125 81.340386)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".48388672" y="9" textLength="30.032227">Legend</tspan></text></g><g><title>User Agent Passthru</title><path d="M 540.85064 166.06451 C 540.8876 178.06938 540.96103 179.25522 540.83334 211.16667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 490.98122 137.683975 C 443.31693 134.70718 330.77909 135.08854 306.83333 139.05998" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.30095 195.26824 C 229.97925 179.01098 230.64368 167.0153 234.33333 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 257.75057 164.36961 C 265.36054 174.04391 273.93684 189.02174 261.33333 206.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 230.21236 365.4013 C 223.05418 330.032 230.40681 248.93644 234.33333 233.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 258.26292 245.62315 C 277.79725 290.14752 268.858 352.74332 252.33333 377.625" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z" fill="white"/><path d="M 237.67708 299.65597 C 237.67708 297.09826 237.39133 296.78182 235.30401 294.25057 L 235.28196 294.22438 C 233.18361 291.66667 233.16178 291.66667 231.00831 291.66667 C 228.14091 291.66667 215.17708 291.66667 215.17708 291.66667 L 215.17708 318.66667 L 237.67708 318.66667 L 237.67708 299.65597 Z M 237.67708 299.5242 C 237.67708 297.09826 237.65503 297.09826 233.16178 297.09826 L 233.16178 297.09826 C 233.16178 291.69313 233.16178 291.66667 231.14016 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="226.13777" cy="305.74275" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(223.29846 299.16667)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 281.58333 299.65597 C 281.58333 297.09826 281.29758 296.78182 279.21026 294.25057 L 279.18821 294.22438 C 277.08986 291.66667 277.06803 291.66667 274.91456 291.66667 C 272.04716 291.66667 259.08333 291.66667 259.08333 291.66667 L 259.08333 318.66667 L 281.58333 318.66667 L 281.58333 299.65597 Z" fill="white"/><path d="M 281.58333 299.65597 C 281.58333 297.09826 281.29758 296.78182 279.21026 294.25057 L 279.18821 294.22438 C 277.08986 291.66667 277.06803 291.66667 274.91456 291.66667 C 272.04716 291.66667 259.08333 291.66667 259.08333 291.66667 L 259.08333 318.66667 L 281.58333 318.66667 L 281.58333 299.65597 Z M 281.58333 299.5242 C 281.58333 297.09826 281.56128 297.09826 277.06803 297.09826 L 277.06803 297.09826 C 277.06803 291.69313 277.06803 291.66667 275.04641 291.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="269.91146" cy="305.16667" r="8.028609" fill="#404040"/><circle cx="269.91146" cy="305.16667" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 266.27262 305.92488 L 268.97794 308.20727 L 274.14065 302.87684" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 277 176.65597 C 277 174.09826 276.71425 173.78182 274.62692 171.25057 L 274.60487 171.22438 C 272.50652 168.66667 272.4847 168.66667 270.33122 168.66667 C 267.46382 168.66667 254.5 168.66667 254.5 168.66667 L 254.5 195.66667 L 277 195.66667 L 277 176.65597 Z" fill="white"/><path d="M 277 176.65597 C 277 174.09826 276.71425 173.78182 274.62692 171.25057 L 274.60487 171.22438 C 272.50652 168.66667 272.4847 168.66667 270.33122 168.66667 C 267.46382 168.66667 254.5 168.66667 254.5 168.66667 L 254.5 195.66667 L 277 195.66667 L 277 176.65597 Z M 277 176.52421 C 277 174.09826 276.97795 174.09826 272.4847 174.09826 L 272.4847 174.09826 C 272.4847 168.69313 272.4847 168.66667 270.46307 168.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="265.32812" cy="182.16667" r="8.028609" fill="#404040"/><circle cx="265.32812" cy="182.16667" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 261.68929 182.92488 L 264.39461 185.20727 L 269.55732 179.87684" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 417.84689 133.21512 C 417.84689 130.65741 417.56114 130.34097 415.4738 127.80972 L 415.45176 127.78353 C 413.3534 125.22582 413.33159 125.22582 411.1781 125.22582 C 408.3107 125.22582 395.34689 125.22582 395.34689 125.22582 L 395.34689 152.22582 L 417.84689 152.22582 L 417.84689 133.21512 Z" fill="white"/><path d="M 417.84689 133.21512 C 417.84689 130.65741 417.56114 130.34097 415.4738 127.80972 L 415.45176 127.78353 C 413.3534 125.22582 413.33159 125.22582 411.1781 125.22582 C 408.3107 125.22582 395.34689 125.22582 395.34689 125.22582 L 395.34689 152.22582 L 417.84689 152.22582 L 417.84689 133.21512 Z M 417.84689 133.08336 C 417.84689 130.65741 417.82484 130.65741 413.33159 130.65741 L 413.33159 130.65741 C 413.33159 125.25228 413.33159 125.22582 411.30996 125.22582" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="406.8073" cy="138.665406" r="8.028609" fill="#404040"/><circle cx="406.8073" cy="138.665406" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 403.16846 139.42362 L 405.87377 141.70601 L 411.03648 136.37558" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z" fill="white"/><path d="M 246.40625 169.65597 C 246.40625 167.09826 246.1205 166.78182 244.03317 164.25057 L 244.01112 164.22438 C 241.91277 161.66667 241.89095 161.66667 239.73747 161.66667 C 236.87007 161.66667 223.90625 161.66667 223.90625 161.66667 L 223.90625 188.66667 L 246.40625 188.66667 L 246.40625 169.65597 Z M 246.40625 169.52421 C 246.40625 167.09826 246.3842 167.09826 241.89095 167.09826 L 241.89095 167.09826 C 241.89095 161.69313 241.89095 161.66667 239.86932 161.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="215.17708" y="146.6875" width="39.3125" height="39.3125" id="path_2"/><clipPath id="clip_path_2"><use xl:href="#path_2"/></clipPath><g clip-path="url(#clip_path_2)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(215.17708 146.6875) scale(.15356445)"/></g><path d="M 602.7796 203.84039 C 608.1024 185.2851 601.3271 167.10417 597.6146 152.66667" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z" fill="white"/><path d="M 615.1875 178.65597 C 615.1875 176.09826 614.90175 175.78182 612.81443 173.25057 L 612.79238 173.22438 C 610.69403 170.66667 610.6722 170.66667 608.51873 170.66667 C 605.65133 170.66667 592.6875 170.66667 592.6875 170.66667 L 592.6875 197.66667 L 615.1875 197.66667 L 615.1875 178.65597 Z M 615.1875 178.52421 C 615.1875 176.09826 615.16545 176.09826 610.6722 176.09826 L 610.6722 176.09826 C 610.6722 170.69313 610.6722 170.66667 608.65058 170.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="603.51563" cy="185.49479" r="8.028609" fill="#404040"/><circle cx="603.51563" cy="185.49479" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 599.8768 186.25301 L 602.5821 188.53539 L 607.7448 183.20497" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 514.70406 191.89093 C 511.02653 194.63526 505.79604 194.33728 502.45576 190.997 C 498.78834 187.32957 498.78834 181.38351 502.45576 177.71608 C 505.79604 174.3758 511.02653 174.07782 514.70406 176.82213 L 514.70406 176.79076 L 526.3125 184.35581 L 514.70406 191.92083 Z" fill="#535353"/><text transform="translate(504.3865 178.05242)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">2</tspan></text><path d="M 187.66157 184.7124 C 184.17518 187.31409 179.21654 187.0316 176.04987 183.86493 C 172.57306 180.38812 172.57306 174.7511 176.04987 171.27429 C 179.21654 168.10762 184.17518 167.82512 187.66157 170.4268 L 187.66157 170.39706 L 198.66667 177.56891 L 187.66157 184.74075 Z" fill="#535353"/><text transform="translate(178.14012 172.00027)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.8242312" y="9" textLength="5.005371">4</tspan></text><path d="M 198.97489 315.50412 C 195.29736 318.24845 190.06687 317.95047 186.72659 314.61019 C 183.05917 310.94276 183.05917 304.9967 186.72659 301.32927 C 190.06687 297.98899 195.29736 297.69101 198.97489 300.43532 L 198.97489 300.40395 L 210.58333 307.969 L 198.97489 315.53402 Z" fill="#535353"/><text transform="translate(188.65732 302.3966)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3355705" y="9" textLength="5.005371">5</tspan></text><path d="M 296.53473 315.50925 C 300.20211 318.246 305.41816 317.94884 308.74923 314.61778 C 312.40652 310.96048 312.40652 305.03082 308.74923 301.37352 C 305.41816 298.04246 300.20211 297.7453 296.53473 300.48204 L 296.53473 300.45076 L 284.95833 307.99492 L 296.53473 315.53906 Z" fill="#535353"/><text transform="translate(296.20123 302.42272)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.3084137" y="9" textLength="5.005371">7</tspan></text><path d="M 185.83538 137.98239 C 153.662255 129.06378 186.76121 79.428224 144.66667 80.333333" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 632.11315 191.79131 C 635.83473 194.5685 641.12787 194.26696 644.50816 190.88667 C 648.2195 187.17531 648.2195 181.15802 644.50816 177.44667 C 641.12787 174.06638 635.83473 173.76483 632.11315 176.54201 L 632.11315 176.51026 L 620.36566 184.16592 L 632.11315 191.82157 Z" fill="#535353"/><text transform="translate(631.70082 178.59266)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="2.4534163" y="9" textLength="5.005371">9</tspan></text><path d="M 375.92875 150.98603 C 375.37818 154.77656 372.1151 157.68806 368.17194 157.68805 C 363.8428 157.68806 360.33332 154.17861 360.33333 149.84944 C 360.33332 145.90629 363.24483 142.64319 367.03535 142.09263 L 367.0169 142.07418 L 378.33333 139.68769 L 375.94688 151.00414 Z" fill="#535353"/><text transform="translate(365.93638 143.14364)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">8</tspan></text><path d="M 167.37199 118.63149 C 166.82143 122.422025 163.55833 125.33353 159.61519 125.33351 C 155.28604 125.33353 151.77656 121.82407 151.77658 117.4949 C 151.77656 113.55176 154.68808 110.28865 158.47859 109.738094 L 158.46014 109.719643 L 169.77658 107.333157 L 167.39012 118.6496 Z" fill="#535353"/><text transform="translate(153.37963 110.7891)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".99853516" y="9" textLength="10.50293">1b</tspan></text><text transform="translate(200.8125 491.45833)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".18579102" y="9" textLength="38.01709">Payment </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="37.710693" y="9" textLength="64.041504">Agent Model 3A</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="101.26001" y="9" textLength="160.5542"> - Person to Person Payment - Proximity</tspan></text><path d="M 316.06576 127.6864 C 356.05292 98.43136 471.46288 93.784787 504.33398 126.65588" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 415.26584 98.668316 C 415.26584 96.110606 414.9801 95.794166 412.89277 93.262916 L 412.87072 93.236726 C 410.77237 90.679016 410.75054 90.679016 408.59707 90.679016 C 405.72967 90.679016 392.76584 90.679016 392.76584 90.679016 L 392.76584 117.679016 L 415.26584 117.679016 L 415.26584 98.668316 Z" fill="white"/><path d="M 415.26584 98.668316 C 415.26584 96.110606 414.9801 95.794166 412.89277 93.262916 L 412.87072 93.236726 C 410.77237 90.679016 410.75054 90.679016 408.59707 90.679016 C 405.72967 90.679016 392.76584 90.679016 392.76584 90.679016 L 392.76584 117.679016 L 415.26584 117.679016 L 415.26584 98.668316 Z M 415.26584 98.536556 C 415.26584 96.110606 415.2438 96.110606 410.75054 96.110606 L 410.75054 96.110606 C 410.75054 90.705476 410.75054 90.679016 408.72892 90.679016" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 458.02958 93.70184 C 458.58015 89.91131 461.84324 86.999805 465.7864 86.999823 C 470.11554 86.999805 473.62502 90.50926 473.625 94.83843 C 473.62502 98.781577 470.7135 102.04468 466.923 102.59524 L 466.94144 102.61369 L 455.625 105.000177 L 458.01146 93.68373 Z" fill="#535353"/><text transform="translate(462.1681 90.54423)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">3</tspan></text><ellipse cx="403.96556" cy="104.179016" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="403.96556" cy="104.179016" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 398.822 99.890326 L 408.91745 99.712734 C 409.46965 99.70302 409.92517 100.14279 409.93489 100.69499 L 410.03588 106.43609 C 410.0456 106.98829 409.60582 107.44381 409.05362 107.453527 C 409.05362 107.453527 409.05362 107.453527 409.05362 107.453527 L 398.95818 107.63112 C 398.40598 107.640833 397.95046 107.20106 397.94075 106.64886 L 397.83975 100.90776 C 397.83004 100.35556 398.2698 99.90004 398.822 99.890326 C 398.822 99.890326 398.822 99.890326 398.822 99.890326 Z" fill="white"/><path d="M 398.822 99.890326 L 408.91745 99.712734 C 409.46965 99.70302 409.92517 100.14279 409.93489 100.69499 L 410.03588 106.43609 C 410.0456 106.98829 409.60582 107.44381 409.05362 107.453527 C 409.05362 107.453527 409.05362 107.453527 409.05362 107.453527 L 398.95818 107.63112 C 398.40598 107.640833 397.95046 107.20106 397.94075 106.64886 L 397.83975 100.90776 C 397.83004 100.35556 398.2698 99.90004 398.822 99.890326 C 398.822 99.890326 398.822 99.890326 398.822 99.890326 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 409.15825 101.670143 L 401.8552 101.638084 L 407.40354 98.533855 Z" fill="white"/><path d="M 409.15825 101.670143 L 401.8552 101.638084 L 407.40354 98.533855 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 408.74272 101.59299 L 402.66536 101.56631 L 407.2825 98.983075 Z" fill="#3f3f3f"/><path d="M 408.74272 101.59299 L 402.66536 101.56631 L 407.2825 98.983075 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 409.3451 101.87157 C 409.3451 101.95122 409.11824 102.0164 408.84097 102.0164 L 401.78317 102.0164 C 401.5059 102.0164 401.27904 101.95122 401.27904 101.87157 L 401.27904 101.58191 C 401.27904 101.502397 401.5059 101.43708 401.78317 101.43708 L 408.84097 101.43708 C 409.11824 101.43708 409.3451 101.502397 409.3451 101.58191 Z" fill="#3f3f3f"/><path d="M 409.3451 102.745856 C 409.3451 102.82551 409.11824 102.890685 408.84097 102.890685 L 401.78317 102.890685 C 401.5059 102.890685 401.27904 102.82551 401.27904 102.745856 L 401.27904 102.4562 C 401.27904 102.376684 401.5059 102.31137 401.78317 102.31137 L 408.84097 102.31137 C 409.11824 102.31137 409.3451 102.376684 409.3451 102.4562 Z" fill="#3f3f3f"/><path d="M 397.99356 107.79706 L 405.5718 110.133166 C 406.09957 110.29586 406.6593 109.999905 406.822 109.47213 C 406.8518 109.375466 406.86676 109.27484 406.86637 109.17369 L 406.8421 102.86587 C 406.8404 102.428486 406.55466 102.042946 406.13668 101.914097 L 398.55845 99.57799 C 398.03068 99.415293 397.47094 99.71125 397.30824 100.23903 C 397.27844 100.33569 397.26349 100.436313 397.26387 100.537464 L 397.28816 106.845283 C 397.28984 107.28267 397.57558 107.66821 397.99356 107.79706 Z" fill="#3f3f3f"/><path d="M 397.99356 107.79706 L 405.5718 110.133166 C 406.09957 110.29586 406.6593 109.999905 406.822 109.47213 C 406.8518 109.375466 406.86676 109.27484 406.86637 109.17369 L 406.8421 102.86587 C 406.8404 102.428486 406.55466 102.042946 406.13668 101.914097 L 398.55845 99.57799 C 398.03068 99.415293 397.47094 99.71125 397.30824 100.23903 C 397.27844 100.33569 397.26349 100.436313 397.26387 100.537464 L 397.28816 106.845283 C 397.28984 107.28267 397.57558 107.66821 397.99356 107.79706 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 398.46078 107.691217 L 405.1359 109.74893 C 405.66368 109.911625 406.22342 109.61567 406.38612 109.08789 C 406.41524 108.99342 406.4302 108.895156 406.43049 108.7963 L 406.44752 103.109306 C 406.44884 102.66939 406.1625 102.28028 405.7421 102.150686 L 399.06698 100.092973 C 398.5392 99.93028 397.97947 100.226235 397.81677 100.75401 C 397.78765 100.84848 397.7727 100.94675 397.7724 101.0456 L 397.75537 106.732597 C 397.75405 107.17251 398.04038 107.56162 398.46078 107.691217 Z" fill="white"/><path d="M 398.46078 107.691217 L 405.1359 109.74893 C 405.66368 109.911625 406.22342 109.61567 406.38612 109.08789 C 406.41524 108.99342 406.4302 108.895156 406.43049 108.7963 L 406.44752 103.109306 C 406.44884 102.66939 406.1625 102.28028 405.7421 102.150686 L 399.06698 100.092973 C 398.5392 99.93028 397.97947 100.226235 397.81677 100.75401 C 397.78765 100.84848 397.7727 100.94675 397.7724 101.0456 L 397.75537 106.732597 C 397.75405 107.17251 398.04038 107.56162 398.46078 107.691217 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><ellipse cx="852.13223" cy="285.83333" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="852.13223" cy="285.83333" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 846.9887 281.54464 L 857.0841 281.36705 C 857.6363 281.35734 858.09184 281.7971 858.10155 282.3493 L 858.20255 288.09041 C 858.21226 288.64261 857.7725 289.09813 857.2203 289.10784 C 857.2203 289.10784 857.2203 289.10784 857.2203 289.10784 L 847.12485 289.28544 C 846.57265 289.29515 846.11713 288.85538 846.1074 288.30318 L 846.0064 282.56208 C 845.9967 282.00988 846.4365 281.55436 846.9887 281.54464 C 846.9887 281.54464 846.9887 281.54464 846.9887 281.54464 Z" fill="white"/><path d="M 846.9887 281.54464 L 857.0841 281.36705 C 857.6363 281.35734 858.09184 281.7971 858.10155 282.3493 L 858.20255 288.09041 C 858.21226 288.64261 857.7725 289.09813 857.2203 289.10784 C 857.2203 289.10784 857.2203 289.10784 857.2203 289.10784 L 847.12485 289.28544 C 846.57265 289.29515 846.11713 288.85538 846.1074 288.30318 L 846.0064 282.56208 C 845.9967 282.00988 846.4365 281.55436 846.9887 281.54464 C 846.9887 281.54464 846.9887 281.54464 846.9887 281.54464 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 857.3249 283.32446 L 850.02186 283.2924 L 855.5702 280.18817 Z" fill="white"/><path d="M 857.3249 283.32446 L 850.02186 283.2924 L 855.5702 280.18817 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 856.9094 283.2473 L 850.832 283.22063 L 855.44917 280.6374 Z" fill="#3f3f3f"/><path d="M 856.9094 283.2473 L 850.832 283.22063 L 855.44917 280.6374 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 857.51176 283.52589 C 857.51176 283.60554 857.2849 283.67072 857.00763 283.67072 L 849.94984 283.67072 C 849.67257 283.67072 849.4457 283.60554 849.4457 283.52589 L 849.4457 283.23623 C 849.4457 283.15671 849.67257 283.0914 849.94984 283.0914 L 857.00763 283.0914 C 857.2849 283.0914 857.51176 283.15671 857.51176 283.23623 Z" fill="#3f3f3f"/><path d="M 857.51176 284.40017 C 857.51176 284.47983 857.2849 284.545 857.00763 284.545 L 849.94984 284.545 C 849.67257 284.545 849.4457 284.47983 849.4457 284.40017 L 849.4457 284.11051 C 849.4457 284.031 849.67257 283.96569 849.94984 283.96569 L 857.00763 283.96569 C 857.2849 283.96569 857.51176 284.031 857.51176 284.11051 Z" fill="#3f3f3f"/><path d="M 846.16023 289.45138 L 853.73846 291.78748 C 854.26624 291.95018 854.826 291.65422 854.98867 291.12645 C 855.01847 291.02978 855.03343 290.92916 855.03304 290.82801 L 855.00876 284.52019 C 855.00707 284.0828 854.72133 283.69726 854.30335 283.56841 L 846.7251 281.2323 C 846.19734 281.06961 845.6376 281.36557 845.4749 281.89334 C 845.4451 281.99 845.43015 282.09063 845.43054 282.19178 L 845.4548 288.4996 C 845.4565 288.93699 845.74225 289.32253 846.16023 289.45138 Z" fill="#3f3f3f"/><path d="M 846.16023 289.45138 L 853.73846 291.78748 C 854.26624 291.95018 854.826 291.65422 854.98867 291.12645 C 855.01847 291.02978 855.03343 290.92916 855.03304 290.82801 L 855.00876 284.52019 C 855.00707 284.0828 854.72133 283.69726 854.30335 283.56841 L 846.7251 281.2323 C 846.19734 281.06961 845.6376 281.36557 845.4749 281.89334 C 845.4451 281.99 845.43015 282.09063 845.43054 282.19178 L 845.4548 288.4996 C 845.4565 288.93699 845.74225 289.32253 846.16023 289.45138 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 846.62744 289.34553 L 853.30257 291.40325 C 853.83035 291.56594 854.3901 291.26999 854.5528 290.7422 C 854.5819 290.64774 854.59686 290.54947 854.59715 290.45062 L 854.6142 284.76362 C 854.6155 284.3237 854.3292 283.9346 853.9088 283.805 L 847.23365 281.74729 C 846.70587 281.5846 846.14613 281.88055 845.98344 282.40833 C 845.9543 282.5028 845.93936 282.60106 845.93907 282.69992 L 845.92203 288.38691 C 845.9207 288.82683 846.20705 289.21594 846.62744 289.34553 Z" fill="white"/><path d="M 846.62744 289.34553 L 853.30257 291.40325 C 853.83035 291.56594 854.3901 291.26999 854.5528 290.7422 C 854.5819 290.64774 854.59686 290.54947 854.59715 290.45062 L 854.6142 284.76362 C 854.6155 284.3237 854.3292 283.9346 853.9088 283.805 L 847.23365 281.74729 C 846.70587 281.5846 846.14613 281.88055 845.98344 282.40833 C 845.9543 282.5028 845.93936 282.60106 845.93907 282.69992 L 845.92203 288.38691 C 845.9207 288.82683 846.20705 289.21594 846.62744 289.34553 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 641.0213 141.83834 C 692.5994 142.20056 650.75975 97.70435 661.14583 107.333157" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 681.5436 134.8194 C 685.2652 137.5966 690.55832 137.29505 693.9386 133.91476 C 697.64996 130.203405 697.64996 124.186114 693.9386 120.47476 C 690.55832 117.09447 685.2652 116.79292 681.5436 119.5701 L 681.5436 119.53836 L 669.7961 127.19402 L 681.5436 134.84966 Z" fill="#535353"/><text transform="translate(682.13127 121.62075)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.2446289" y="9" textLength="10.010742">1a</tspan></text><path d="M 552.15732 181.96847 C 552.15732 179.41076 551.87157 179.09432 549.78425 176.56307 L 549.7622 176.53688 C 547.66385 173.97917 547.64202 173.97917 545.48855 173.97917 C 542.62115 173.97917 529.65732 173.97917 529.65732 173.97917 L 529.65732 200.97917 L 552.15732 200.97917 L 552.15732 181.96847 Z" fill="white"/><path d="M 552.15732 181.96847 C 552.15732 179.41076 551.87157 179.09432 549.78425 176.56307 L 549.7622 176.53688 C 547.66385 173.97917 547.64202 173.97917 545.48855 173.97917 C 542.62115 173.97917 529.65732 173.97917 529.65732 173.97917 L 529.65732 200.97917 L 552.15732 200.97917 L 552.15732 181.96847 Z M 552.15732 181.83671 C 552.15732 179.41076 552.13527 179.41076 547.64202 179.41076 L 547.64202 179.41076 C 547.64202 174.00563 547.64202 173.97917 545.6204 173.97917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="540.97705" cy="187.47917" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="540.97705" cy="187.47917" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 535.8335 183.19048 L 545.92894 183.01288 C 546.48114 183.00317 546.93666 183.44294 546.94637 183.99514 L 547.04737 189.73624 C 547.05708 190.28844 546.6173 190.74396 546.0651 190.75368 C 546.0651 190.75368 546.0651 190.75368 546.0651 190.75368 L 535.96967 190.93127 C 535.41747 190.94098 534.96195 190.50121 534.95223 189.94901 L 534.85124 184.20791 C 534.84153 183.65571 535.2813 183.20019 535.8335 183.19048 C 535.8335 183.19048 535.8335 183.19048 535.8335 183.19048 Z" fill="white"/><path d="M 535.8335 183.19048 L 545.92894 183.01288 C 546.48114 183.00317 546.93666 183.44294 546.94637 183.99514 L 547.04737 189.73624 C 547.05708 190.28844 546.6173 190.74396 546.0651 190.75368 C 546.0651 190.75368 546.0651 190.75368 546.0651 190.75368 L 535.96967 190.93127 C 535.41747 190.94098 534.96195 190.50121 534.95223 189.94901 L 534.85124 184.20791 C 534.84153 183.65571 535.2813 183.20019 535.8335 183.19048 C 535.8335 183.19048 535.8335 183.19048 535.8335 183.19048 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 546.16974 184.97029 L 538.86668 184.93823 L 544.41503 181.834 Z" fill="white"/><path d="M 546.16974 184.97029 L 538.86668 184.93823 L 544.41503 181.834 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 545.7542 184.89314 L 539.67684 184.86646 L 544.294 182.28323 Z" fill="#3f3f3f"/><path d="M 545.7542 184.89314 L 539.67684 184.86646 L 544.294 182.28323 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 546.3566 185.17172 C 546.3566 185.25137 546.12973 185.31655 545.85246 185.31655 L 538.79466 185.31655 C 538.5174 185.31655 538.29053 185.25137 538.29053 185.17172 L 538.29053 184.88206 C 538.29053 184.80255 538.5174 184.73723 538.79466 184.73723 L 545.85246 184.73723 C 546.12973 184.73723 546.3566 184.80255 546.3566 184.88206 Z" fill="#3f3f3f"/><path d="M 546.3566 186.04601 C 546.3566 186.12566 546.12973 186.19084 545.85246 186.19084 L 538.79466 186.19084 C 538.5174 186.19084 538.29053 186.12566 538.29053 186.04601 L 538.29053 185.75635 C 538.29053 185.67683 538.5174 185.61152 538.79466 185.61152 L 545.85246 185.61152 C 546.12973 185.61152 546.3566 185.67683 546.3566 185.75635 Z" fill="#3f3f3f"/><path d="M 535.00505 191.09721 L 542.58328 193.43332 C 543.11106 193.59601 543.6708 193.30006 543.8335 192.77228 C 543.8633 192.67562 543.87825 192.57499 543.87786 192.47384 L 543.85358 186.16602 C 543.8519 185.72864 543.56615 185.3431 543.14817 185.21425 L 535.56994 182.87814 C 535.04217 182.71544 534.48243 183.0114 534.31973 183.53918 C 534.28993 183.63584 534.27497 183.73646 534.27536 183.83761 L 534.29965 190.14543 C 534.30133 190.58282 534.58707 190.96836 535.00505 191.09721 Z" fill="#3f3f3f"/><path d="M 535.00505 191.09721 L 542.58328 193.43332 C 543.11106 193.59601 543.6708 193.30006 543.8335 192.77228 C 543.8633 192.67562 543.87825 192.57499 543.87786 192.47384 L 543.85358 186.16602 C 543.8519 185.72864 543.56615 185.3431 543.14817 185.21425 L 535.56994 182.87814 C 535.04217 182.71544 534.48243 183.0114 534.31973 183.53918 C 534.28993 183.63584 534.27497 183.73646 534.27536 183.83761 L 534.29965 190.14543 C 534.30133 190.58282 534.58707 190.96836 535.00505 191.09721 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 535.47227 190.99137 L 542.1474 193.04908 C 542.67517 193.21178 543.2349 192.91582 543.3976 192.38804 C 543.42673 192.29357 543.44168 192.19531 543.44198 192.09645 L 543.459 186.40946 C 543.46033 185.96954 543.174 185.58043 542.7536 185.45084 L 536.07847 183.39312 C 535.5507 183.23043 534.99096 183.52639 534.82826 184.05416 C 534.79914 184.14863 534.7842 184.2469 534.7839 184.34575 L 534.76686 190.03275 C 534.76554 190.47266 535.05187 190.86177 535.47227 190.99137 Z" fill="white"/><path d="M 535.47227 190.99137 L 542.1474 193.04908 C 542.67517 193.21178 543.2349 192.91582 543.3976 192.38804 C 543.42673 192.29357 543.44168 192.19531 543.44198 192.09645 L 543.459 186.40946 C 543.46033 185.96954 543.174 185.58043 542.7536 185.45084 L 536.07847 183.39312 C 535.5507 183.23043 534.99096 183.52639 534.82826 184.05416 C 534.79914 184.14863 534.7842 184.2469 534.7839 184.34575 L 534.76686 190.03275 C 534.76554 190.47266 535.05187 190.86177 535.47227 190.99137 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 222.16667 170.65597 C 222.16667 168.09826 221.88092 167.78182 219.79359 165.25057 L 219.77154 165.22438 C 217.67319 162.66667 217.65137 162.66667 215.49789 162.66667 C 212.63049 162.66667 199.66667 162.66667 199.66667 162.66667 L 199.66667 189.66667 L 222.16667 189.66667 L 222.16667 170.65597 Z" fill="white"/><path d="M 222.16667 170.65597 C 222.16667 168.09826 221.88092 167.78182 219.79359 165.25057 L 219.77154 165.22438 C 217.67319 162.66667 217.65137 162.66667 215.49789 162.66667 C 212.63049 162.66667 199.66667 162.66667 199.66667 162.66667 L 199.66667 189.66667 L 222.16667 189.66667 L 222.16667 170.65597 Z M 222.16667 170.52421 C 222.16667 168.09826 222.14462 168.09826 217.65137 168.09826 L 217.65137 168.09826 C 217.65137 162.69313 217.65137 162.66667 215.62974 162.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="210.86638" cy="176.16667" rx="8.9302875" ry="9.0000144" fill="#404040"/><ellipse cx="210.86638" cy="176.16667" rx="8.9302875" ry="9.0000144" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 205.72283 171.87798 L 215.81828 171.70038 C 216.37048 171.69067 216.826 172.13044 216.83571 172.68264 C 216.83571 172.68264 216.83571 172.68264 216.83571 172.68264 L 216.9367 178.42374 C 216.94642 178.97594 216.50665 179.43146 215.95445 179.44118 L 205.859 179.61877 C 205.3068 179.62848 204.85128 179.18871 204.84157 178.63651 C 204.84157 178.63651 204.84157 178.63651 204.84157 178.63651 L 204.74058 172.89541 C 204.73086 172.34321 205.17063 171.88769 205.72283 171.87798 Z" fill="white"/><path d="M 205.72283 171.87798 L 215.81828 171.70038 C 216.37048 171.69067 216.826 172.13044 216.83571 172.68264 C 216.83571 172.68264 216.83571 172.68264 216.83571 172.68264 L 216.9367 178.42374 C 216.94642 178.97594 216.50665 179.43146 215.95445 179.44118 L 205.859 179.61877 C 205.3068 179.62848 204.85128 179.18871 204.84157 178.63651 C 204.84157 178.63651 204.84157 178.63651 204.84157 178.63651 L 204.74058 172.89541 C 204.73086 172.34321 205.17063 171.88769 205.72283 171.87798 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 216.05908 173.65779 L 208.75601 173.62573 L 214.30437 170.52151 Z" fill="white"/><path d="M 216.05908 173.65779 L 208.75601 173.62573 L 214.30437 170.52151 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 215.64354 173.58064 L 209.56618 173.55396 L 214.18333 170.97073 Z" fill="#3f3f3f"/><path d="M 215.64354 173.58064 L 209.56618 173.55396 L 214.18333 170.97073 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 216.24592 173.85922 C 216.24592 173.93887 216.01906 174.00405 215.74179 174.00405 L 208.684 174.00405 C 208.40673 174.00405 208.17987 173.93887 208.17987 173.85922 L 208.17987 173.56956 C 208.17987 173.49005 208.40673 173.42473 208.684 173.42473 L 215.74179 173.42473 C 216.01906 173.42473 216.24592 173.49005 216.24592 173.56956 Z" fill="#3f3f3f"/><path d="M 216.24592 174.73351 C 216.24592 174.81316 216.01906 174.87834 215.74179 174.87834 L 208.684 174.87834 C 208.40673 174.87834 208.17987 174.81316 208.17987 174.73351 L 208.17987 174.44385 C 208.17987 174.36433 208.40673 174.29902 208.684 174.29902 L 215.74179 174.29902 C 216.01906 174.29902 216.24592 174.36433 216.24592 174.44385 Z" fill="#3f3f3f"/><path d="M 204.89439 179.78471 L 212.47262 182.12082 C 213.0004 182.28351 213.56013 181.98756 213.72283 181.45978 C 213.75263 181.36312 213.76759 181.26249 213.7672 181.16134 L 213.74291 174.85352 C 213.74123 174.41614 213.45549 174.0306 213.03751 173.90175 L 205.45928 171.56564 C 204.9315 171.40294 204.37176 171.6989 204.20907 172.22668 C 204.17927 172.32334 204.16431 172.42396 204.1647 172.52511 L 204.18898 178.83293 C 204.19067 179.27032 204.47641 179.65586 204.89439 179.78471 Z" fill="#3f3f3f"/><path d="M 204.89439 179.78471 L 212.47262 182.12082 C 213.0004 182.28351 213.56013 181.98756 213.72283 181.45978 C 213.75263 181.36312 213.76759 181.26249 213.7672 181.16134 L 213.74291 174.85352 C 213.74123 174.41614 213.45549 174.0306 213.03751 173.90175 L 205.45928 171.56564 C 204.9315 171.40294 204.37176 171.6989 204.20907 172.22668 C 204.17927 172.32334 204.16431 172.42396 204.1647 172.52511 L 204.18898 178.83293 C 204.19067 179.27032 204.47641 179.65586 204.89439 179.78471 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 205.3616 179.67887 L 212.03673 181.73658 C 212.56451 181.89928 213.12425 181.60332 213.28694 181.07554 C 213.31606 180.98107 213.33102 180.88281 213.33131 180.78395 L 213.34835 175.09696 C 213.34966 174.65704 213.06333 174.26793 212.64294 174.13834 L 205.96781 172.08062 C 205.44003 171.91793 204.88029 172.21389 204.7176 172.74166 C 204.68847 172.83613 204.67352 172.9344 204.67323 173.03325 L 204.65619 178.72025 C 204.65487 179.16016 204.9412 179.54927 205.3616 179.67887 Z" fill="white"/><path d="M 205.3616 179.67887 L 212.03673 181.73658 C 212.56451 181.89928 213.12425 181.60332 213.28694 181.07554 C 213.31606 180.98107 213.33102 180.88281 213.33131 180.78395 L 213.34835 175.09696 C 213.34966 174.65704 213.06333 174.26793 212.64294 174.13834 L 205.96781 172.08062 C 205.44003 171.91793 204.88029 172.21389 204.7176 172.74166 C 204.68847 172.83613 204.67352 172.9344 204.67323 173.03325 L 204.65619 178.72025 C 204.65487 179.16016 204.9412 179.54927 205.3616 179.67887 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 443.4297 133.21512 C 443.4297 130.65741 443.14394 130.34097 441.05661 127.80972 L 441.03456 127.78353 C 438.93621 125.22582 438.9144 125.22582 436.76091 125.22582 C 433.89351 125.22582 420.9297 125.22582 420.9297 125.22582 L 420.9297 152.22582 L 443.4297 152.22582 L 443.4297 133.21512 Z" fill="white"/><path d="M 443.4297 133.21512 C 443.4297 130.65741 443.14394 130.34097 441.05661 127.80972 L 441.03456 127.78353 C 438.93621 125.22582 438.9144 125.22582 436.76091 125.22582 C 433.89351 125.22582 420.9297 125.22582 420.9297 125.22582 L 420.9297 152.22582 L 443.4297 152.22582 L 443.4297 133.21512 Z M 443.4297 133.08336 C 443.4297 130.65741 443.40764 130.65741 438.9144 130.65741 L 438.9144 130.65741 C 438.9144 125.25228 438.9144 125.22582 436.89276 125.22582" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="412.20052" y="110.24665" width="39.3125" height="39.3125" id="path_3"/><clipPath id="clip_path_3"><use xl:href="#path_3"/></clipPath><g clip-path="url(#clip_path_3)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(412.20052 110.24665) scale(.15356445)"/></g><path d="M 490.98122 400.59973 C 443.31693 397.62293 330.77909 398.0043 306.83333 401.97574" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 412.89583 390.32263 C 412.89583 387.76492 412.61008 387.44848 410.52276 384.91723 L 410.5007 384.89104 C 408.40236 382.33333 408.38053 382.33333 406.22706 382.33333 C 403.35966 382.33333 390.39583 382.33333 390.39583 382.33333 L 390.39583 409.33333 L 412.89583 409.33333 L 412.89583 390.32263 Z" fill="white"/><path d="M 412.89583 390.32263 C 412.89583 387.76492 412.61008 387.44848 410.52276 384.91723 L 410.5007 384.89104 C 408.40236 382.33333 408.38053 382.33333 406.22706 382.33333 C 403.35966 382.33333 390.39583 382.33333 390.39583 382.33333 L 390.39583 409.33333 L 412.89583 409.33333 L 412.89583 390.32263 Z M 412.89583 390.19087 C 412.89583 387.76492 412.87378 387.76492 408.38053 387.76492 L 408.38053 387.76492 C 408.38053 382.3598 408.38053 382.33333 406.3589 382.33333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="401.35652" cy="396.40942" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="401.35652" cy="396.40942" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(398.5172 389.83333)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 570.90952 250.02539 C 589.09054 289.36358 566.1648 364.33674 562.08404 348.46712" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 588.52734 289.85388 C 588.52734 287.29617 588.2416 286.97973 586.15427 284.44848 L 586.13222 284.4223 C 584.03387 281.86458 584.01204 281.86458 581.85857 281.86458 C 578.99117 281.86458 566.02734 281.86458 566.02734 281.86458 L 566.02734 308.86458 L 588.52734 308.86458 L 588.52734 289.85388 Z" fill="white"/><path d="M 588.52734 289.85388 C 588.52734 287.29617 588.2416 286.97973 586.15427 284.44848 L 586.13222 284.4223 C 584.03387 281.86458 584.01204 281.86458 581.85857 281.86458 C 578.99117 281.86458 566.02734 281.86458 566.02734 281.86458 L 566.02734 308.86458 L 588.52734 308.86458 L 588.52734 289.85388 Z M 588.52734 289.72212 C 588.52734 287.29617 588.5053 287.29617 584.01204 287.29617 L 584.01204 287.29617 C 584.01204 281.89104 584.01204 281.86458 581.99042 281.86458" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="576.85547" cy="295.36458" r="8.028609" fill="#404040"/><circle cx="576.85547" cy="295.36458" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 573.21663 296.1228 L 575.92195 298.40519 L 581.08466 293.07476" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 375.92875 414.15233 C 375.37818 417.94286 372.1151 420.85436 368.17194 420.85434 C 363.8428 420.85436 360.33332 417.3449 360.33333 413.01574 C 360.33332 409.0726 363.24483 405.80949 367.03535 405.25893 L 367.0169 405.24048 L 378.33333 402.854 L 375.94688 414.17043 Z" fill="#535353"/><text transform="translate(365.93638 406.30993)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".42423255" y="9" textLength="5.005371">6</tspan></text><path d="M 609.19648 304.31382 C 612.91806 307.09102 618.2112 306.78947 621.5915 303.40918 C 625.30284 299.69783 625.30284 293.68054 621.5915 289.96918 C 618.2112 286.58889 612.91806 286.28734 609.19648 289.06452 L 609.19648 289.03278 L 597.449 296.68844 L 609.19648 304.34408 Z" fill="#535353"/><text transform="translate(608.78416 291.11517)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x="1.2446289" y="9" textLength="10.010742">10</tspan></text></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/paygent_connect.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="5 -11 993 592" width="993pt" height="592pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-20 05:08Z</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="14" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-6 -3 7 6" markerWidth="7" markerHeight="6" color="gray"><g><path d="M -4.8 0 L 0 1.8 L 0 -1.8 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 6</title><rect fill="white" width="1944" height="1106"/><g><title>Layer 1</title><path d="M 26.485373 39.375 L 226.9239 39.375 L 226.9239 225.27083 L 26.485373 225.27083 Z" stroke="#397bf3" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke-dasharray="4,4"/><rect x="23.625" y="39.375" width="116.291656" height="23.222314" fill="#3679f6"/><rect x="23.625" y="39.375" width="116.291656" height="23.222314" stroke="#3679f6" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(28.625 45.986157)" fill="white"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="white" x="26.46614" y="8" textLength="53.359375">Host Container</tspan></text><path d="M 738.875 0 L 897.5 0 C 899.9853 15217959e-23 902 2.0147186 902 4.5 L 902 432.51042 C 902 434.9957 899.9853 437.01042 897.5 437.01042 L 738.875 437.01042 C 736.3897 437.01042 734.375 434.9957 734.375 432.51042 L 734.375 4.5 C 734.375 2.0147186 736.3897 -15217959e-23 738.875 0 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 738.875 0 L 897.5 0 C 899.9853 15217959e-23 902 2.0147186 902 4.5 L 902 432.51042 C 902 434.9957 899.9853 437.01042 897.5 437.01042 L 738.875 437.01042 C 736.3897 437.01042 734.375 434.9957 734.375 432.51042 L 734.375 4.5 C 734.375 2.0147186 736.3897 -15217959e-23 738.875 0 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(819.56374 57.896978)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9873047" y="9" textLength="29.012695">Human</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="8.9941406" y="20" textLength="21.00586">Actor</tspan></text><path d="M 877.898 72.19411 C 877.88344 72.31866 877.77554 72.407897 877.6578 72.392507 L 875.8878 72.16152 C 875.7692 72.146564 875.68484 72.032435 875.6998 71.907884 L 875.9627 69.63973 C 875.97855 69.51518 876.0672 69.423695 876.16395 69.435923 C 876.2607 69.449056 876.3378 69.458114 876.3378 69.458114 L 876.27655 69.98711 L 877.7764 70.18231 L 877.83806 69.65377 L 878.0123 69.67551 C 878.10907 69.689097 878.1759 69.80051 878.16046 69.92506 Z M 877.64666 69.405124 L 877.5803 69.97307 L 876.5155 69.83493 L 876.5814 69.26699 Z M 875.22284 72.027008 L 872.78575 72.027008 L 872.78575 71.19637 C 872.78575 69.92506 872.3867 68.98845 871.6601 68.468516 C 871.9333 68.14786 872.32633 67.974394 872.8294 67.971224 L 872.75193 67.83852 C 872.7087 67.766057 872.77034 67.70854 872.88937 67.70854 L 873.07005 67.70854 C 873.1698 67.70854 873.3218 67.776022 873.4096 67.86298 L 874.3494 68.794607 L 875.29007 67.86298 C 875.377 67.776022 875.52086 67.70854 875.6112 67.70854 L 875.7752 67.70854 C 875.8938 67.70854 875.9546 67.76923 875.91047 67.843957 C 875.86595 67.919592 875.83 67.980736 875.83 67.980736 C 876.5339 68.027838 877.007 68.426396 877.20824 69.113 L 876.3883 69.00521 L 876.3682 69.180484 L 876.03764 69.13655 C 875.8938 69.11889 875.75504 69.30594 875.7255 69.556394 L 875.4643 71.80099 C 875.4502 71.92554 875.34187 72.027008 875.22284 72.027008 M 872.4351 74.192354 L 870.8419 74.192354 C 870.72844 73.702304 870.64323 73.19187 870.64323 72.757547 C 870.64323 71.794214 870.34266 73.031084 870.2943 74.192354 L 866.0512 74.192354 C 866.00326 73.031084 865.7018 71.794214 865.7018 72.757547 C 865.7018 73.19187 865.6162 73.702304 865.50445 74.192354 L 863.88515 74.192354 L 863.88515 71.19637 C 863.88515 69.47623 864.6644 68.468516 866.04735 68.37612 C 866.04564 68.37114 866.4832 68.35846 866.4832 68.35846 C 866.7538 68.95403 867.33654 69.308202 868.0888 69.308202 C 868.93487 69.308202 869.533 68.973052 869.837 68.35846 C 870.25917 68.369782 870.2562 68.375217 870.2562 68.375217 C 871.6507 68.460815 872.4351 69.46944 872.4351 71.19637 Z M 868.10466 63.42405 C 869.45594 63.42405 870.10675 64.052693 870.10675 65.564936 C 870.10675 67.076733 869.45594 68.30275 868.10466 68.30275 C 866.75295 68.30275 866.1026 67.076733 866.1026 65.564936 C 866.1026 64.052693 866.75295 63.42405 868.10466 63.42405 M 874.33056 64.40731 C 875.27037 64.40731 875.72293 64.84344 875.72293 65.89601 C 875.72293 66.947657 875.27037 67.79957 874.33056 67.79957 C 873.3903 67.79957 872.93775 66.947657 872.93775 65.89601 C 872.93775 64.84344 873.3903 64.40731 874.33056 64.40731 M 870.42444 55.479167 C 863.37604 55.479167 857.66096 61.522307 857.66096 68.978487 C 857.66096 76.434677 863.37604 82.479167 870.42444 82.479167 C 877.47326 82.479167 883.1875 76.434677 883.1875 68.978487 C 883.1875 61.522307 877.47326 55.479167 870.42444 55.479167" fill="#3c3c3b"/><ellipse cx="869.8177" cy="113.25119" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="869.8177" cy="113.25119" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 872.2157 110.73972 L 875.8858 110.73972 L 875.8858 111.168055 L 872.2157 111.168055 Z M 872.2157 111.499024 L 875.8858 111.499024 L 875.8858 111.92736 L 872.2157 111.92736 Z M 872.21555 112.224076 L 875.8858 112.224076 L 875.8858 112.65241 L 872.21555 112.65241 Z M 876.3118 109.76285 L 871.78965 109.76285 C 871.5742 109.76285 871.3996 109.93513 871.3996 110.1477 L 871.3996 116.27395 C 871.3996 116.48652 871.5742 116.6588 871.78965 116.6588 L 876.3118 116.6588 C 876.52724 116.6588 876.70184 116.48652 876.70184 116.27395 L 876.70184 110.1477 C 876.70184 109.93513 876.52724 109.76285 876.3118 109.76285" fill="white"/><path d="M 864.526 109.424624 L 870.14927 109.424624 L 870.14927 110.080914 L 864.526 110.080914 Z M 864.526 110.58802 L 870.14927 110.58802 L 870.14927 111.24431 L 864.526 111.24431 Z M 864.5258 111.69894 L 870.14927 111.69894 L 870.14927 112.35523 L 864.5258 112.35523 Z M 870.80203 107.92787 L 863.8732 107.92787 C 863.54315 107.92787 863.27563 108.191843 863.27563 108.51753 L 863.27563 117.904116 C 863.27563 118.229804 863.54315 118.493775 863.8732 118.493775 L 870.80203 118.493775 C 871.1321 118.493775 871.3996 118.229804 871.3996 117.904116 L 871.3996 108.51753 C 871.3996 108.191843 871.1321 107.92787 870.80203 107.92787" fill="white"/><path d="M 864.526 109.424624 L 870.14927 109.424624 L 870.14927 110.080914 L 864.526 110.080914 Z M 864.526 110.58802 L 870.14927 110.58802 L 870.14927 111.24431 L 864.526 111.24431 Z M 864.5258 111.69894 L 870.14927 111.69894 L 870.14927 112.35523 L 864.5258 112.35523 Z M 870.80203 107.92787 L 863.8732 107.92787 C 863.54315 107.92787 863.27563 108.191843 863.27563 108.51753 L 863.27563 117.904116 C 863.27563 118.229804 863.54315 118.493775 863.8732 118.493775 L 870.80203 118.493775 C 871.1321 118.493775 871.3996 118.229804 871.3996 117.904116 L 871.3996 108.51753 C 871.3996 108.191843 871.1321 107.92787 870.80203 107.92787" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(815.04047 103.7849)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9941406" y="9" textLength="30.00586">System</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.9941406" y="20" textLength="21.00586">Actor</tspan></text><text transform="translate(798.1875 18.479167)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="1.5386966" y="9" textLength="48.019043">User Agent)</tspan></text><circle cx="869.92057" cy="24.212239" r="13.266949" fill="#404040"/><circle cx="869.92057" cy="24.212239" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="861.21864" y="17.274002" width="17.426762" height="3.3655407" fill="white"/><rect x="865.9405" y="22.35317" width="12.704908" height="3.3655407" fill="white"/><rect x="865.9405" y="27.40148" width="12.704908" height="3.3655407" fill="white"/><rect x="861.21864" y="22.122201" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="870.02336" cy="157.21224" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="870.02336" cy="157.21224" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 861.9672 150.89861 L 877.797 150.62014 C 878.3492 150.61043 878.8047 151.0502 878.8144 151.6024 C 878.8144 151.6024 878.8144 151.6024 878.8144 151.6024 L 878.97997 161.01343 C 878.9897 161.56563 878.5499 162.02115 877.9977 162.03087 L 862.16793 162.30933 C 861.61573 162.31905 861.1602 161.87928 861.1505 161.32708 C 861.1505 161.32708 861.1505 161.32708 861.1505 161.32708 L 860.98494 151.91604 C 860.97523 151.36384 861.415 150.90832 861.9672 150.89861 Z" fill="white"/><path d="M 861.9672 150.89861 L 877.797 150.62014 C 878.3492 150.61043 878.8047 151.0502 878.8144 151.6024 C 878.8144 151.6024 878.8144 151.6024 878.8144 151.6024 L 878.97997 161.01343 C 878.9897 161.56563 878.5499 162.02115 877.9977 162.03087 L 862.16793 162.30933 C 861.61573 162.31905 861.1602 161.87928 861.1505 161.32708 C 861.1505 161.32708 861.1505 161.32708 861.1505 161.32708 L 860.98494 151.91604 C 860.97523 151.36384 861.415 150.90832 861.9672 150.89861 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 877.6779 153.5139 L 866.91245 153.46664 L 875.0913 148.89069 Z" fill="white"/><path d="M 877.6779 153.5139 L 866.91245 153.46664 L 875.0913 148.89069 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 877.0654 153.40017 L 868.1067 153.36084 L 874.9129 149.55289 Z" fill="#3f3f3f"/><path d="M 877.0654 153.40017 L 868.1067 153.36084 L 874.9129 149.55289 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 877.95335 153.81082 C 877.95335 153.92824 877.61894 154.02432 877.2102 154.02432 L 866.8063 154.02432 C 866.39757 154.02432 866.06315 153.92824 866.06315 153.81082 L 866.06315 153.38384 C 866.06315 153.26663 866.39757 153.17034 866.8063 153.17034 L 877.2102 153.17034 C 877.61894 153.17034 877.95335 153.26663 877.95335 153.38384 Z" fill="#3f3f3f"/><path d="M 877.95335 155.09961 C 877.95335 155.21703 877.61894 155.31311 877.2102 155.31311 L 866.8063 155.31311 C 866.39757 155.31311 866.06315 155.21703 866.06315 155.09961 L 866.06315 154.67263 C 866.06315 154.55542 866.39757 154.45913 866.8063 154.45913 L 877.2102 154.45913 C 877.61894 154.45913 877.95335 154.55542 877.95335 154.67263 Z" fill="#3f3f3f"/><path d="M 860.88693 162.442925 L 873.00736 166.17924 C 873.53513 166.34193 874.09487 166.04598 874.25757 165.5182 C 874.28737 165.42154 874.3023 165.32091 874.30194 165.21976 L 874.2623 154.92797 C 874.26063 154.490585 873.9749 154.105045 873.5569 153.9762 L 861.4365 150.23988 C 860.9087 150.07719 860.34896 150.373145 860.18627 150.90092 C 860.15647 150.99758 860.1415 151.09821 860.1419 151.19936 L 860.1815 161.49115 C 860.1832 161.92854 860.46895 162.31408 860.88693 162.442925 Z" fill="#3f3f3f"/><path d="M 860.88693 162.442925 L 873.00736 166.17924 C 873.53513 166.34193 874.09487 166.04598 874.25757 165.5182 C 874.28737 165.42154 874.3023 165.32091 874.30194 165.21976 L 874.2623 154.92797 C 874.26063 154.490585 873.9749 154.105045 873.5569 153.9762 L 861.4365 150.23988 C 860.9087 150.07719 860.34896 150.373145 860.18627 150.90092 C 860.15647 150.99758 860.1415 151.09821 860.1419 151.19936 L 860.1815 161.49115 C 860.1832 161.92854 860.46895 162.31408 860.88693 162.442925 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 861.57325 162.28617 L 872.3604 165.61148 C 872.8882 165.77417 873.44793 165.47822 873.6106 164.95044 C 873.63975 164.85597 873.6547 164.7577 873.655 164.65885 L 873.6831 155.28431 C 873.6844 154.844395 873.39806 154.455285 872.97767 154.32569 L 862.1905 151.00038 C 861.6627 150.83768 861.103 151.13364 860.9403 151.66142 C 860.91117 151.75589 860.8962 151.85415 860.8959 151.95301 L 860.86784 161.32755 C 860.8665 161.76746 861.15285 162.15657 861.57325 162.28617 Z" fill="white"/><path d="M 861.57325 162.28617 L 872.3604 165.61148 C 872.8882 165.77417 873.44793 165.47822 873.6106 164.95044 C 873.63975 164.85597 873.6547 164.7577 873.655 164.65885 L 873.6831 155.28431 C 873.6844 154.844395 873.39806 154.455285 872.97767 154.32569 L 862.1905 151.00038 C 861.6627 150.83768 861.103 151.13364 860.9403 151.66142 C 860.91117 151.75589 860.8962 151.85415 860.8959 151.95301 L 860.86784 161.32755 C 860.8665 161.76746 861.15285 162.15657 861.57325 162.28617 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(784.4995 151.47917)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4633789" y="9" textLength="61.53662">Payment Agent</tspan></text><text transform="translate(790.6875 260.47917)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".47216797" y="9" textLength="52.527832">Payment info</tspan></text><text transform="translate(798.1875 342.41742)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="22.505175" y="9" textLength="23.510742">Payer</tspan></text><path d="M 853.98676 338.41616 L 881.1332 338.41616 L 881.1332 357.41868 L 853.98676 357.41868 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="853.3453" y="338.41616" width="15.75" height="6.75" fill="#2f72ff"/><rect x="853.3453" y="338.41616" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.98676 369.47664 L 881.1332 369.47664 L 881.1332 388.47917 L 853.98676 388.47917 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="853.59936" y="369.47664" width="15.75" height="6.75" fill="silver"/><rect x="853.59936" y="369.47664" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(798.1875 369.41742)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="20.496874" y="9" textLength="25.519043">Payee</tspan></text><text transform="translate(753.6875 296.47917)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".96240234" y="9" textLength="89.0376">Payment Confrimation</tspan></text><path d="M 882.1875 260.46847 C 882.1875 257.91076 881.90175 257.59432 879.8144 255.06307 L 879.7924 255.03688 C 877.694 252.47917 877.6722 252.47917 875.5187 252.47917 C 872.6513 252.47917 859.6875 252.47917 859.6875 252.47917 L 859.6875 279.47917 L 882.1875 279.47917 L 882.1875 260.46847 Z" fill="white"/><path d="M 882.1875 260.46847 C 882.1875 257.91076 881.90175 257.59432 879.8144 255.06307 L 879.7924 255.03688 C 877.694 252.47917 877.6722 252.47917 875.5187 252.47917 C 872.6513 252.47917 859.6875 252.47917 859.6875 252.47917 L 859.6875 279.47917 L 882.1875 279.47917 L 882.1875 260.46847 Z M 882.1875 260.3367 C 882.1875 257.91076 882.16545 257.91076 877.6722 257.91076 L 877.6722 257.91076 C 877.6722 252.50563 877.6722 252.47917 875.6506 252.47917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="870.6482" cy="266.55525" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="870.6482" cy="266.55525" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(867.8089 259.97917)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 883.1875 298.46847 C 883.1875 295.91076 882.90175 295.59432 880.8144 293.06307 L 880.7924 293.03688 C 878.694 290.47917 878.6722 290.47917 876.5187 290.47917 C 873.6513 290.47917 860.6875 290.47917 860.6875 290.47917 L 860.6875 317.47917 L 883.1875 317.47917 L 883.1875 298.46847 Z" fill="white"/><path d="M 883.1875 298.46847 C 883.1875 295.91076 882.90175 295.59432 880.8144 293.06307 L 880.7924 293.03688 C 878.694 290.47917 878.6722 290.47917 876.5187 290.47917 C 873.6513 290.47917 860.6875 290.47917 860.6875 290.47917 L 860.6875 317.47917 L 883.1875 317.47917 L 883.1875 298.46847 Z M 883.1875 298.3367 C 883.1875 295.91076 883.16545 295.91076 878.6722 295.91076 L 878.6722 295.91076 C 878.6722 290.50563 878.6722 290.47917 876.6506 290.47917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="871.5156" cy="305.3073" r="8.028609" fill="#404040"/><circle cx="871.5156" cy="305.3073" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 867.8768 306.06551 L 870.5821 308.3479 L 875.7448 303.01747" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 882.1875 183.46847 C 882.1875 180.91076 881.90175 180.59432 879.8144 178.06307 L 879.7924 178.03688 C 877.694 175.47917 877.6722 175.47917 875.5187 175.47917 C 872.6513 175.47917 859.6875 175.47917 859.6875 175.47917 L 859.6875 202.47917 L 882.1875 202.47917 L 882.1875 183.46847 Z" fill="white"/><path d="M 882.1875 183.46847 C 882.1875 180.91076 881.90175 180.59432 879.8144 178.06307 L 879.7924 178.03688 C 877.694 175.47917 877.6722 175.47917 875.5187 175.47917 C 872.6513 175.47917 859.6875 175.47917 859.6875 175.47917 L 859.6875 202.47917 L 882.1875 202.47917 L 882.1875 183.46847 Z M 882.1875 183.33671 C 882.1875 180.91076 882.16545 180.91076 877.6722 180.91076 L 877.6722 180.91076 C 877.6722 175.50563 877.6722 175.47917 875.6506 175.47917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="870.9375" cy="190.61337" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="870.9375" cy="190.61337" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 868.5236 191.26839 L 872.4014 191.26839 L 872.4014 191.26839" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 872.4014 191.26839 L 872.4014 191.26839 L 874.12484 187.6599" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="871.6397" y1="189.84116" x2="867.89264" y2="189.84116" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 872.07055 188.60241 L 872.07055 188.60241 L 867.55414 188.60241" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 872.56295 187.36367 L 872.56295 187.36367 L 867.01556 187.36367" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 875.8483 187.22903 L 875.8483 187.22903 L 874.12484 187.22903" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="868.4159" cy="193.13996" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="868.4159" cy="193.13996" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="872.29366" cy="193.13996" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="872.29366" cy="193.13996" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(761.6875 185.11337)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9560547" y="9" textLength="81.043945">Goods and Services</tspan></text><text transform="translate(794.3212 221.47917)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.795907" y="9" textLength="28.516113">Invoice</tspan></text><path d="M 880.52635 222.46847 C 880.52635 219.91076 880.2406 219.59432 878.1533 217.06307 L 878.13123 217.03688 C 876.0329 214.47917 876.01105 214.47917 873.8576 214.47917 C 870.9902 214.47917 858.02635 214.47917 858.02635 214.47917 L 858.02635 241.47917 L 880.52635 241.47917 L 880.52635 222.46847 Z" fill="white"/><path d="M 880.52635 222.46847 C 880.52635 219.91076 880.2406 219.59432 878.1533 217.06307 L 878.13123 217.03688 C 876.0329 214.47917 876.01105 214.47917 873.8576 214.47917 C 870.9902 214.47917 858.02635 214.47917 858.02635 214.47917 L 858.02635 241.47917 L 880.52635 241.47917 L 880.52635 222.46847 Z M 880.52635 222.33671 C 880.52635 219.91076 880.5043 219.91076 876.01105 219.91076 L 876.01105 219.91076 C 876.01105 214.50563 876.01105 214.47917 873.98943 214.47917" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="849.2972" y="199.5" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(849.2972 199.5) scale(.15356445)"/></g><text transform="translate(729.5 453.52083)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="8" textLength="32.4375">W3C - W</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="32.296875" y="8" textLength="100.05078">eb Payments Interest Group</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="18" textLength="33.792969">Payment </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="33.355469" y="18" textLength="65.82422">Agent Conceptual </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="98.74219" y="18" textLength="42.683594">Architecture</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="28" textLength="54.6875">Author: Patrick </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="54.25" y="28" textLength="18.675781">Adler</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="72.48828" y="28" textLength="124.50781">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="38" textLength="180.98828">Copyright 2015 Federal Reserve Bank of Chicago. </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="180.55078" y="38" textLength="72.472656">All Rights Reserved.</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="48" textLength="234.78516">Proprietary Information of the Federal Reserve Bank of Chicago – </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="58" textLength="152.96875">Subject to Use and Publication Restrictions</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="68" textLength="5.3359375">V</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="4.8984375" y="68" textLength="35.132812">ersion 0.1</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="78" textLength="26.691406">3/19/15</tspan></text><text transform="translate(743.625 5)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".48388672" y="9" textLength="30.032227">Legend</tspan></text><path d="M 42.020073 80.87471 L 208.52883 80.87471 C 209.6334 80.87471 210.52883 81.77014 210.52883 82.87471 L 210.52883 205.49477 C 210.52883 206.59934 209.6334 207.49477 208.52883 207.49477 L 42.020073 207.49477 C 40.915503 207.49477 40.020073 206.59934 40.020073 205.49477 L 40.020073 82.87471 C 40.020073 81.77014 40.915503 80.87471 42.020073 80.87471 Z" stroke="#333" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(45.020073 85.87471)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="51.283674" y="28" textLength="35.570312">Payment </tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="86.56102" y="28" textLength="22.664062">Agent</tspan></text><ellipse cx="82.57131" cy="108.863984" rx="7.673864" ry="7.733781" fill="#404040"/><ellipse cx="82.57131" cy="108.863984" rx="7.673864" ry="7.733781" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 78.29209 105.176205 L 86.68584 105.02855 C 87.23804 105.018834 87.69356 105.458605 87.703274 106.010804 L 87.78511 110.662836 C 87.794823 111.215036 87.35505 111.670556 86.802853 111.68027 C 86.802853 111.68027 86.802853 111.68027 86.802853 111.68027 L 78.4091 111.82793 C 77.856903 111.83764 77.40138 111.39787 77.39167 110.84567 L 77.30983 106.19364 C 77.30012 105.64144 77.73989 105.18592 78.29209 105.176205 C 78.29209 105.176205 78.29209 105.176205 78.29209 105.176205 Z" fill="white"/><path d="M 78.29209 105.176205 L 86.68584 105.02855 C 87.23804 105.018834 87.69356 105.458605 87.703274 106.010804 L 87.78511 110.662836 C 87.794823 111.215036 87.35505 111.670556 86.802853 111.68027 C 86.802853 111.68027 86.802853 111.68027 86.802853 111.68027 L 78.4091 111.82793 C 77.856903 111.83764 77.40138 111.39787 77.39167 110.84567 L 77.30983 106.19364 C 77.30012 105.64144 77.73989 105.18592 78.29209 105.176205 C 78.29209 105.176205 78.29209 105.176205 78.29209 105.176205 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 87.033433 106.70809 L 80.757854 106.68054 L 85.525596 104.013054 Z" fill="white"/><path d="M 87.033433 106.70809 L 80.757854 106.68054 L 85.525596 104.013054 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 86.67636 106.64179 L 81.454036 106.618865 L 85.42159 104.39907 Z" fill="#3f3f3f"/><path d="M 86.67636 106.64179 L 81.454036 106.618865 L 85.42159 104.39907 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 87.19399 106.881176 C 87.19399 106.949624 86.99905 107.00563 86.760787 107.00563 L 80.69597 107.00563 C 80.457708 107.00563 80.262767 106.949624 80.262767 106.881176 L 80.262767 106.63227 C 80.262767 106.563944 80.457708 106.50782 80.69597 106.50782 L 86.760787 106.50782 C 86.99905 106.50782 87.19399 106.563944 87.19399 106.63227 Z" fill="#3f3f3f"/><path d="M 87.19399 107.63246 C 87.19399 107.700906 86.99905 107.75691 86.760787 107.75691 L 80.69597 107.75691 C 80.457708 107.75691 80.262767 107.700906 80.262767 107.63246 L 80.262767 107.38355 C 80.262767 107.315226 80.457708 107.2591 80.69597 107.2591 L 86.760787 107.2591 C 86.99905 107.2591 87.19399 107.315226 87.19399 107.38355 Z" fill="#3f3f3f"/><path d="M 77.538377 112.003466 L 83.768686 113.92406 C 84.296463 114.08675 84.8562 113.790795 85.018897 113.26302 C 85.048695 113.166356 85.063655 113.06573 85.063265 112.96458 L 85.043533 107.839025 C 85.04185 107.40164 84.756107 107.0161 84.338127 106.88725 L 78.10782 104.96666 C 77.58004 104.803964 77.0203 105.09992 76.857607 105.6277 C 76.82781 105.72436 76.81285 105.824984 76.81324 105.926134 L 76.83297 111.05169 C 76.834655 111.48908 77.120397 111.87462 77.538377 112.003466 Z" fill="#3f3f3f"/><path d="M 77.538377 112.003466 L 83.768686 113.92406 C 84.296463 114.08675 84.8562 113.790795 85.018897 113.26302 C 85.048695 113.166356 85.063655 113.06573 85.063265 112.96458 L 85.043533 107.839025 C 85.04185 107.40164 84.756107 107.0161 84.338127 106.88725 L 78.10782 104.96666 C 77.58004 104.803964 77.0203 105.09992 76.857607 105.6277 C 76.82781 105.72436 76.81285 105.824984 76.81324 105.926134 L 76.83297 111.05169 C 76.834655 111.48908 77.120397 111.87462 77.538377 112.003466 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 77.940567 111.912735 L 83.39543 113.59428 C 83.923207 113.75698 84.482945 113.46102 84.64564 112.93324 C 84.674763 112.838773 84.689715 112.74051 84.69001 112.64165 L 84.703767 108.048954 C 84.705085 107.60904 84.418755 107.21993 83.99836 107.090334 L 78.543496 105.40879 C 78.01572 105.24609 77.45598 105.54205 77.293285 106.069826 C 77.264163 106.164296 77.24921 106.26256 77.248914 106.36142 L 77.23516 110.954115 C 77.23384 111.39403 77.52017 111.78314 77.940567 111.912735 Z" fill="white"/><path d="M 77.940567 111.912735 L 83.39543 113.59428 C 83.923207 113.75698 84.482945 113.46102 84.64564 112.93324 C 84.674763 112.838773 84.689715 112.74051 84.69001 112.64165 L 84.703767 108.048954 C 84.705085 107.60904 84.418755 107.21993 83.99836 107.090334 L 78.543496 105.40879 C 78.01572 105.24609 77.45598 105.54205 77.293285 106.069826 C 77.264163 106.164296 77.24921 106.26256 77.248914 106.36142 L 77.23516 110.954115 C 77.23384 111.39403 77.52017 111.78314 77.940567 111.912735 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><rect x="31.630501" y="85.83378" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="85.83378" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="106.017934" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="106.017934" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="85.83378" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="85.83378" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="104.3561" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="104.3561" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="126.20209" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="126.20209" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(19.75 481.52083)" fill="#333"><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="14" textLength="117.509766">Because Payment </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="116.74414" y="14" textLength="509.73535">Agents are host/platform agnostic and communicate via open standards, they can </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="31" textLength="194.53027">interact consistently in many dif</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="194.28418" y="31" textLength="69.26172">ferent confi</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="263.5459" y="31" textLength="371.95703">gurations in a secure way which protects sensitive payment </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="48" textLength="633.4453">data and allows for privacy and choice of payment services that the payer would like to use. Payment </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="65" textLength="627.21094">agents can also serve as connection points to existing payment systems which allows them to bridge </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="82" textLength="277.83984">between current and future payment options.</tspan></text><rect x="201.11077" y="122.87842" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="122.87842" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="69.262606" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="69.262606" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="91.14927" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="91.14927" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="113.03593" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="113.03593" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="134.92259" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="134.92259" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="156.80926" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="156.80926" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="146.66342" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="146.66342" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="80.205937" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="80.205937" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="102.0926" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="102.0926" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="123.97926" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="123.97926" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="145.865925" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="145.865925" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 853.98676 396.60014 L 881.1332 396.60014 L 881.1332 415.60266 L 853.98676 415.60266 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="853.59936" y="396.60014" width="15.75" height="6.75" fill="#c6f"/><rect x="853.59936" y="396.60014" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(773.6332 396.54092)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9770508" y="9" textLength="68.02295">Payment System</tspan></text><rect x="113.03593" y="143.68454" width="15.467537" height="12.241654" fill="#333"/><rect x="113.03593" y="143.68454" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="141.40074" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="141.40074" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="166.5704" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="166.5704" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="184.52063" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="184.52063" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.52823" y="159.92306" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.52823" y="159.92306" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 375.5564 39.375 L 575.99493 39.375 L 575.99493 225.27083 L 375.5564 225.27083 Z" stroke="#131313" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke-dasharray="4,4"/><rect x="372.69603" y="39.375" width="116.291656" height="23.222314" fill="silver"/><rect x="372.69603" y="39.375" width="116.291656" height="23.222314" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(377.69603 45.986157)" fill="#333"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="#333" x="26.46614" y="8" textLength="53.359375">Host Container</tspan></text><path d="M 391.0911 80.87471 L 557.59986 80.87471 C 558.70443 80.87471 559.59986 81.77014 559.59986 82.87471 L 559.59986 205.49477 C 559.59986 206.59934 558.70443 207.49477 557.59986 207.49477 L 391.0911 207.49477 C 389.98654 207.49477 389.0911 206.59934 389.0911 205.49477 L 389.0911 82.87471 C 389.0911 81.77014 389.98654 80.87471 391.0911 80.87471 Z" stroke="#333" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(394.0911 85.87471)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="51.283674" y="28" textLength="35.570312">Payment </tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="86.56102" y="28" textLength="22.664062">Agent</tspan></text><ellipse cx="431.64235" cy="108.863984" rx="7.673864" ry="7.733781" fill="#404040"/><ellipse cx="431.64235" cy="108.863984" rx="7.673864" ry="7.733781" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 427.36312 105.176205 L 435.75687 105.02855 C 436.30907 105.018834 436.7646 105.458605 436.7743 106.010804 L 436.85614 110.662836 C 436.86586 111.215036 436.42609 111.670556 435.8739 111.68027 C 435.8739 111.68027 435.8739 111.68027 435.8739 111.68027 L 427.48014 111.82793 C 426.92794 111.83764 426.47242 111.39787 426.4627 110.84567 L 426.38087 106.19364 C 426.37115 105.64144 426.81092 105.18592 427.36312 105.176205 C 427.36312 105.176205 427.36312 105.176205 427.36312 105.176205 Z" fill="white"/><path d="M 427.36312 105.176205 L 435.75687 105.02855 C 436.30907 105.018834 436.7646 105.458605 436.7743 106.010804 L 436.85614 110.662836 C 436.86586 111.215036 436.42609 111.670556 435.8739 111.68027 C 435.8739 111.68027 435.8739 111.68027 435.8739 111.68027 L 427.48014 111.82793 C 426.92794 111.83764 426.47242 111.39787 426.4627 110.84567 L 426.38087 106.19364 C 426.37115 105.64144 426.81092 105.18592 427.36312 105.176205 C 427.36312 105.176205 427.36312 105.176205 427.36312 105.176205 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 436.10447 106.70809 L 429.8289 106.68054 L 434.59663 104.013054 Z" fill="white"/><path d="M 436.10447 106.70809 L 429.8289 106.68054 L 434.59663 104.013054 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 435.7474 106.64179 L 430.52507 106.618865 L 434.49262 104.39907 Z" fill="#3f3f3f"/><path d="M 435.7474 106.64179 L 430.52507 106.618865 L 434.49262 104.39907 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 436.26502 106.881176 C 436.26502 106.949624 436.07008 107.00563 435.83182 107.00563 L 429.767 107.00563 C 429.52874 107.00563 429.3338 106.949624 429.3338 106.881176 L 429.3338 106.63227 C 429.3338 106.563944 429.52874 106.50782 429.767 106.50782 L 435.83182 106.50782 C 436.07008 106.50782 436.26502 106.563944 436.26502 106.63227 Z" fill="#3f3f3f"/><path d="M 436.26502 107.63246 C 436.26502 107.700906 436.07008 107.75691 435.83182 107.75691 L 429.767 107.75691 C 429.52874 107.75691 429.3338 107.700906 429.3338 107.63246 L 429.3338 107.38355 C 429.3338 107.315226 429.52874 107.2591 429.767 107.2591 L 435.83182 107.2591 C 436.07008 107.2591 436.26502 107.315226 436.26502 107.38355 Z" fill="#3f3f3f"/><path d="M 426.6094 112.003466 L 432.83972 113.92406 C 433.3675 114.08675 433.92724 113.790795 434.08993 113.26302 C 434.11973 113.166356 434.1347 113.06573 434.1343 112.96458 L 434.11457 107.839025 C 434.11288 107.40164 433.82714 107.0161 433.40916 106.88725 L 427.17885 104.96666 C 426.65108 104.803964 426.09134 105.09992 425.92864 105.6277 C 425.89884 105.72436 425.88388 105.824984 425.88427 105.926134 L 425.904 111.05169 C 425.9057 111.48908 426.19143 111.87462 426.6094 112.003466 Z" fill="#3f3f3f"/><path d="M 426.6094 112.003466 L 432.83972 113.92406 C 433.3675 114.08675 433.92724 113.790795 434.08993 113.26302 C 434.11973 113.166356 434.1347 113.06573 434.1343 112.96458 L 434.11457 107.839025 C 434.11288 107.40164 433.82714 107.0161 433.40916 106.88725 L 427.17885 104.96666 C 426.65108 104.803964 426.09134 105.09992 425.92864 105.6277 C 425.89884 105.72436 425.88388 105.824984 425.88427 105.926134 L 425.904 111.05169 C 425.9057 111.48908 426.19143 111.87462 426.6094 112.003466 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 427.0116 111.912735 L 432.46646 113.59428 C 432.99424 113.75698 433.55398 113.46102 433.71668 112.93324 C 433.7458 112.838773 433.76075 112.74051 433.76105 112.64165 L 433.7748 108.048954 C 433.77612 107.60904 433.4898 107.21993 433.0694 107.090334 L 427.61453 105.40879 C 427.08675 105.24609 426.52701 105.54205 426.36432 106.069826 C 426.3352 106.164296 426.32024 106.26256 426.31995 106.36142 L 426.3062 110.954115 C 426.30487 111.39403 426.5912 111.78314 427.0116 111.912735 Z" fill="white"/><path d="M 427.0116 111.912735 L 432.46646 113.59428 C 432.99424 113.75698 433.55398 113.46102 433.71668 112.93324 C 433.7458 112.838773 433.76075 112.74051 433.76105 112.64165 L 433.7748 108.048954 C 433.77612 107.60904 433.4898 107.21993 433.0694 107.090334 L 427.61453 105.40879 C 427.08675 105.24609 426.52701 105.54205 426.36432 106.069826 C 426.3352 106.164296 426.32024 106.26256 426.31995 106.36142 L 426.3062 110.954115 C 426.30487 111.39403 426.5912 111.78314 427.0116 111.912735 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><rect x="380.70154" y="85.83378" width="15.467537" height="12.241654" fill="silver"/><rect x="380.70154" y="85.83378" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="380.70154" y="106.017934" width="15.467537" height="12.241654" fill="silver"/><rect x="380.70154" y="106.017934" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="550.1818" y="85.83378" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="550.1818" y="85.83378" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="550.1818" y="104.3561" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="550.1818" y="104.3561" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="380.70154" y="126.20209" width="15.467537" height="12.241654" fill="silver"/><rect x="380.70154" y="126.20209" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="550.1818" y="122.87842" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="550.1818" y="122.87842" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="418.33364" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="418.33364" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="440.2203" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="440.2203" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="462.10697" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="462.10697" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="483.99363" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="483.99363" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="505.8803" y="124.20217" width="15.467537" height="12.241654" fill="#333"/><rect x="505.8803" y="124.20217" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="380.70154" y="146.66342" width="15.467537" height="12.241654" fill="silver"/><rect x="380.70154" y="146.66342" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="429.27697" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="429.27697" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="451.16363" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="451.16363" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="473.0503" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="473.0503" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="494.93696" y="75.101963" width="15.467537" height="12.241654" fill="#c6f"/><rect x="494.93696" y="75.101963" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="462.10697" y="143.68454" width="15.467537" height="12.241654" fill="#333"/><rect x="462.10697" y="143.68454" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="550.1818" y="141.40074" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="550.1818" y="141.40074" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="380.70154" y="166.5704" width="15.467537" height="12.241654" fill="silver"/><rect x="380.70154" y="166.5704" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="380.70154" y="184.52063" width="15.467537" height="12.241654" fill="silver"/><rect x="380.70154" y="184.52063" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="550.59927" y="159.92306" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="550.59927" y="159.92306" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 26.485373 268.4695 L 226.9239 268.4695 L 226.9239 454.36533 L 26.485373 454.36533 Z" stroke="#c6f" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke-dasharray="4,4"/><rect x="23.625" y="268.4695" width="116.291656" height="23.222314" fill="#c6f"/><rect x="23.625" y="268.4695" width="116.291656" height="23.222314" stroke="#c6f" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(28.625 275.08066)" fill="white"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="white" x="26.46614" y="8" textLength="53.359375">Host Container</tspan></text><path d="M 42.020073 309.96921 L 208.52883 309.96921 C 209.6334 309.96921 210.52883 310.86464 210.52883 311.96921 L 210.52883 434.58927 C 210.52883 435.69384 209.6334 436.58927 208.52883 436.58927 L 42.020073 436.58927 C 40.915503 436.58927 40.020073 435.69384 40.020073 434.58927 L 40.020073 311.96921 C 40.020073 310.86464 40.915503 309.96921 42.020073 309.96921 Z" stroke="#333" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(45.020073 314.96921)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="51.283674" y="28" textLength="35.570312">Payment </tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="86.56102" y="28" textLength="22.664062">Agent</tspan></text><ellipse cx="82.57131" cy="337.95849" rx="7.673864" ry="7.733781" fill="#404040"/><ellipse cx="82.57131" cy="337.95849" rx="7.673864" ry="7.733781" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 78.29209 334.2707 L 86.68584 334.12305 C 87.23804 334.11334 87.69356 334.5531 87.703274 335.1053 L 87.78511 339.75734 C 87.794823 340.30954 87.35505 340.76506 86.802853 340.77477 C 86.802853 340.77477 86.802853 340.77477 86.802853 340.77477 L 78.4091 340.92243 C 77.856903 340.93214 77.40138 340.49237 77.39167 339.94017 L 77.30983 335.28814 C 77.30012 334.73594 77.73989 334.28042 78.29209 334.2707 C 78.29209 334.2707 78.29209 334.2707 78.29209 334.2707 Z" fill="white"/><path d="M 78.29209 334.2707 L 86.68584 334.12305 C 87.23804 334.11334 87.69356 334.5531 87.703274 335.1053 L 87.78511 339.75734 C 87.794823 340.30954 87.35505 340.76506 86.802853 340.77477 C 86.802853 340.77477 86.802853 340.77477 86.802853 340.77477 L 78.4091 340.92243 C 77.856903 340.93214 77.40138 340.49237 77.39167 339.94017 L 77.30983 335.28814 C 77.30012 334.73594 77.73989 334.28042 78.29209 334.2707 C 78.29209 334.2707 78.29209 334.2707 78.29209 334.2707 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 87.033433 335.8026 L 80.757854 335.77504 L 85.525596 333.10756 Z" fill="white"/><path d="M 87.033433 335.8026 L 80.757854 335.77504 L 85.525596 333.10756 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 86.67636 335.7363 L 81.454036 335.71337 L 85.42159 333.49357 Z" fill="#3f3f3f"/><path d="M 86.67636 335.7363 L 81.454036 335.71337 L 85.42159 333.49357 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 87.19399 335.97568 C 87.19399 336.04413 86.99905 336.10013 86.760787 336.10013 L 80.69597 336.10013 C 80.457708 336.10013 80.262767 336.04413 80.262767 335.97568 L 80.262767 335.72677 C 80.262767 335.65845 80.457708 335.60232 80.69597 335.60232 L 86.760787 335.60232 C 86.99905 335.60232 87.19399 335.65845 87.19399 335.72677 Z" fill="#3f3f3f"/><path d="M 87.19399 336.72696 C 87.19399 336.7954 86.99905 336.85141 86.760787 336.85141 L 80.69597 336.85141 C 80.457708 336.85141 80.262767 336.7954 80.262767 336.72696 L 80.262767 336.47805 C 80.262767 336.40973 80.457708 336.3536 80.69597 336.3536 L 86.760787 336.3536 C 86.99905 336.3536 87.19399 336.40973 87.19399 336.47805 Z" fill="#3f3f3f"/><path d="M 77.538377 341.09797 L 83.768686 343.01856 C 84.296463 343.18125 84.8562 342.8853 85.018897 342.35752 C 85.048695 342.26086 85.063655 342.16023 85.063265 342.05908 L 85.043533 336.93353 C 85.04185 336.49614 84.756107 336.1106 84.338127 335.98175 L 78.10782 334.06116 C 77.58004 333.89847 77.0203 334.19442 76.857607 334.7222 C 76.82781 334.81886 76.81285 334.91949 76.81324 335.02064 L 76.83297 340.1462 C 76.834655 340.58358 77.120397 340.96912 77.538377 341.09797 Z" fill="#3f3f3f"/><path d="M 77.538377 341.09797 L 83.768686 343.01856 C 84.296463 343.18125 84.8562 342.8853 85.018897 342.35752 C 85.048695 342.26086 85.063655 342.16023 85.063265 342.05908 L 85.043533 336.93353 C 85.04185 336.49614 84.756107 336.1106 84.338127 335.98175 L 78.10782 334.06116 C 77.58004 333.89847 77.0203 334.19442 76.857607 334.7222 C 76.82781 334.81886 76.81285 334.91949 76.81324 335.02064 L 76.83297 340.1462 C 76.834655 340.58358 77.120397 340.96912 77.538377 341.09797 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 77.940567 341.00724 L 83.39543 342.68878 C 83.923207 342.85148 84.482945 342.55552 84.64564 342.02774 C 84.674763 341.93328 84.689715 341.835 84.69001 341.73615 L 84.703767 337.14346 C 84.705085 336.70354 84.418755 336.31443 83.99836 336.18484 L 78.543496 334.50329 C 78.01572 334.3406 77.45598 334.63655 77.293285 335.16433 C 77.264163 335.2588 77.24921 335.35706 77.248914 335.45592 L 77.23516 340.04862 C 77.23384 340.48853 77.52017 340.87764 77.940567 341.00724 Z" fill="white"/><path d="M 77.940567 341.00724 L 83.39543 342.68878 C 83.923207 342.85148 84.482945 342.55552 84.64564 342.02774 C 84.674763 341.93328 84.689715 341.835 84.69001 341.73615 L 84.703767 337.14346 C 84.705085 336.70354 84.418755 336.31443 83.99836 336.18484 L 78.543496 334.50329 C 78.01572 334.3406 77.45598 334.63655 77.293285 335.16433 C 77.264163 335.2588 77.24921 335.35706 77.248914 335.45592 L 77.23516 340.04862 C 77.23384 340.48853 77.52017 340.87764 77.940567 341.00724 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><rect x="31.630501" y="314.92828" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="314.92828" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="335.11244" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="335.11244" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="314.92828" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="314.92828" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="333.4506" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="333.4506" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="355.2966" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="355.2966" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="351.97292" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="351.97292" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="69.262606" y="353.29667" width="15.467537" height="12.241654" fill="#333"/><rect x="69.262606" y="353.29667" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="91.14927" y="353.29667" width="15.467537" height="12.241654" fill="#333"/><rect x="91.14927" y="353.29667" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="113.03593" y="353.29667" width="15.467537" height="12.241654" fill="#333"/><rect x="113.03593" y="353.29667" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="134.92259" y="353.29667" width="15.467537" height="12.241654" fill="#333"/><rect x="134.92259" y="353.29667" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="156.80926" y="353.29667" width="15.467537" height="12.241654" fill="#333"/><rect x="156.80926" y="353.29667" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="375.75792" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="375.75792" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="80.205937" y="304.19646" width="15.467537" height="12.241654" fill="#c6f"/><rect x="80.205937" y="304.19646" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="102.0926" y="304.19646" width="15.467537" height="12.241654" fill="#c6f"/><rect x="102.0926" y="304.19646" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="123.97926" y="304.19646" width="15.467537" height="12.241654" fill="#c6f"/><rect x="123.97926" y="304.19646" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="145.865925" y="304.19646" width="15.467537" height="12.241654" fill="#c6f"/><rect x="145.865925" y="304.19646" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="113.03593" y="372.77904" width="15.467537" height="12.241654" fill="#333"/><rect x="113.03593" y="372.77904" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.11077" y="370.49524" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.11077" y="370.49524" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="395.6649" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="395.6649" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="31.630501" y="413.61514" width="15.467537" height="12.241654" fill="silver"/><rect x="31.630501" y="413.61514" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="201.52823" y="389.01756" width="15.467537" height="12.241654" fill="#3275fa"/><rect x="201.52823" y="389.01756" width="15.467537" height="12.241654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 369.58957 104.436625 C 333.34805 87.88599 254.43055 84.903773 216.5783 108.957964" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 224.66553 158.3266 C 260.90706 174.87724 339.82455 177.85945 377.6768 153.80526" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 127.97809 302.04774 C 129.68467 262.24247 162.85529 190.57257 201.47229 167.76635" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><path d="M 373.82517 207.72195 C 346.57739 246.61595 255.80641 322.7557 210.52883 320.03798" marker-start="url(#FilledArrow_Marker)" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/paygent_detailed.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="-7 144 570 707" width="570pt" height="707pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.1.3 <dc:date>2015-03-06 00:47:57 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 9 8" markerWidth="9" markerHeight="8" color="black"><g><path d="M 7 0 L 0 -2.625 L 0 2.625 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker_2" viewBox="-8 -4 9 8" markerWidth="9" markerHeight="8" color="black"><g><path d="M -7 0 L 0 2.625 L 0 -2.625 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Logical Tech Stack</title><rect fill="white" width="1118.57764" height="1565.7768"/><g><title>Layer 1</title><path d="M 34.46742 650.48295 L 521.41696 650.48295 C 526.38752 650.48295 530.41696 654.5124 530.41696 659.48295 L 530.41696 830.5793 C 530.41696 835.54984 526.38752 839.5793 521.41696 839.5793 L 34.46742 839.5793 C 29.496858 839.5793 25.46742 835.54984 25.46742 830.5793 L 25.46742 659.48295 C 25.46742 654.5124 29.496858 650.48295 34.46742 650.48295 Z" fill="white"/><path d="M 34.46742 650.48295 L 521.41696 650.48295 C 526.38752 650.48295 530.41696 654.5124 530.41696 659.48295 L 530.41696 830.5793 C 530.41696 835.54984 526.38752 839.5793 521.41696 839.5793 L 34.46742 839.5793 C 29.496858 839.5793 25.46742 835.54984 25.46742 830.5793 L 25.46742 659.48295 C 25.46742 654.5124 29.496858 650.48295 34.46742 650.48295 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><text transform="translate(30.46742 650.48295)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" x="211.01383" y="8" textLength="72.921875">Remote Deployment</tspan></text><path d="M 13.56719 172.42222 L 542.3172 172.42222 C 547.28775 172.42222 551.3172 176.45166 551.3172 181.42222 L 551.3172 612.006 C 551.3172 616.97656 547.28775 621.006 542.3172 621.006 L 13.56719 621.006 C 8.5966273 621.006 4.56719 616.97656 4.56719 612.006 L 4.56719 181.42222 C 4.56719 176.45166 8.5966273 172.42222 13.56719 172.42222 Z" fill="white"/><path d="M 13.56719 172.42222 L 542.3172 172.42222 C 547.28775 172.42222 551.3172 176.45166 551.3172 181.42222 L 551.3172 612.006 C 551.3172 616.97656 547.28775 621.006 542.3172 621.006 L 13.56719 621.006 C 8.5966273 621.006 4.56719 616.97656 4.56719 612.006 L 4.56719 181.42222 C 4.56719 176.45166 8.5966273 172.42222 13.56719 172.42222 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><text transform="translate(9.56719 172.42222)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="8" textLength="64.035156">Local Deployment</tspan></text><path d="M 42.869037 200.80035 L 514.385 200.80035 C 519.35557 200.80035 523.385 204.82978 523.385 209.80035 L 523.385 274.91961 C 523.385 279.89018 519.35557 283.91961 514.385 283.91961 L 42.869037 283.91961 C 37.898474 283.91961 33.869037 279.89018 33.869037 274.91961 L 33.869037 209.80035 C 33.869037 204.82978 37.898474 200.80035 42.869037 200.80035 Z" fill="white"/><path d="M 42.869037 200.80035 L 514.385 200.80035 C 519.35557 200.80035 523.385 204.82978 523.385 209.80035 L 523.385 274.91961 C 523.385 279.89018 519.35557 283.91961 514.385 283.91961 L 42.869037 283.91961 C 37.898474 283.91961 33.869037 279.89018 33.869037 274.91961 L 33.869037 209.80035 C 33.869037 204.82978 37.898474 200.80035 42.869037 200.80035 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(35.869037 200.80035)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="68.472656"> Device Interfaces</tspan></text><path d="M 68.340723 215.99489 L 333.44931 215.99489 C 338.41987 215.99489 342.44931 220.02433 342.44931 224.99489 L 342.44931 266.61397 C 342.44931 271.58453 338.41987 275.61397 333.44931 275.61397 L 68.340723 275.61397 C 63.37016 275.61397 59.340723 271.58453 59.340723 266.61397 L 59.340723 224.99489 C 59.340723 220.02433 63.37016 215.99489 68.340723 215.99489 Z" fill="white"/><path d="M 68.340723 215.99489 L 333.44931 215.99489 C 338.41987 215.99489 342.44931 220.02433 342.44931 224.99489 L 342.44931 266.61397 C 342.44931 271.58453 338.41987 275.61397 333.44931 275.61397 L 68.340723 275.61397 C 63.37016 275.61397 59.340723 271.58453 59.340723 266.61397 L 59.340723 224.99489 C 59.340723 220.02433 63.37016 215.99489 68.340723 215.99489 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(61.340723 215.99489)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="65.378906">Local Input/Output</tspan></text><path d="M 355.60528 215.99489 L 507.54645 215.99489 C 512.51702 215.99489 516.54645 220.02433 516.54645 224.99489 L 516.54645 266.61397 C 516.54645 271.58453 512.51702 275.61397 507.54645 275.61397 L 355.60528 275.61397 C 350.63471 275.61397 346.60528 271.58453 346.60528 266.61397 L 346.60528 224.99489 C 346.60528 220.02433 350.63471 215.99489 355.60528 215.99489 Z" fill="white"/><path d="M 355.60528 215.99489 L 507.54645 215.99489 C 512.51702 215.99489 516.54645 220.02433 516.54645 224.99489 L 516.54645 266.61397 C 516.54645 271.58453 512.51702 275.61397 507.54645 275.61397 L 355.60528 275.61397 C 350.63471 275.61397 346.60528 271.58453 346.60528 266.61397 L 346.60528 224.99489 C 346.60528 220.02433 350.63471 215.99489 355.60528 215.99489 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(346.60528 215.99489)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="74.265625">Remote Input/Output</tspan></text><path d="M 97.37234 737.56434 L 429.02144 737.56434 C 433.992 737.56434 438.02144 741.59378 438.02144 746.56434 L 438.02144 798.60965 C 438.02144 803.5802 433.992 807.60965 429.02144 807.60965 L 97.37234 807.60965 C 92.40178 807.60965 88.37234 803.5802 88.37234 798.60965 L 88.37234 746.56434 C 88.37234 741.59378 92.40178 737.56434 97.37234 737.56434 Z" fill="black"/><path d="M 97.37234 737.56434 L 429.02144 737.56434 C 433.992 737.56434 438.02144 741.59378 438.02144 746.56434 L 438.02144 798.60965 C 438.02144 803.5802 433.992 807.60965 429.02144 807.60965 L 97.37234 807.60965 C 92.40178 807.60965 88.37234 803.5802 88.37234 798.60965 L 88.37234 746.56434 C 88.37234 741.59378 92.40178 737.56434 97.37234 737.56434 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(93.37234 737.56434)" fill="white"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="white" x="128.472986" y="8" textLength="82.703125">Remote Wallet Storage</tspan></text><path d="M 447.88457 233.20173 L 456.84076 233.20173 C 461.81132 233.20173 465.84076 237.23116 465.84076 242.20173 L 465.84076 254.81693 C 465.84076 259.78749 461.81132 263.81693 456.84076 263.81693 L 447.88457 263.81693 C 442.914 263.81693 438.88457 259.78749 438.88457 254.81693 L 438.88457 242.20173 C 438.88457 237.23116 442.914 233.20173 447.88457 233.20173 Z" fill="white"/><path d="M 447.88457 233.20173 L 456.84076 233.20173 C 461.81132 233.20173 465.84076 237.23116 465.84076 242.20173 L 465.84076 254.81693 C 465.84076 259.78749 461.81132 263.81693 456.84076 263.81693 L 447.88457 263.81693 C 442.914 263.81693 438.88457 259.78749 438.88457 254.81693 L 438.88457 242.20173 C 438.88457 237.23116 442.914 233.20173 447.88457 233.20173 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(443.88457 243.50933)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x=".25739192" y="8" textLength="16.441406">NFC</tspan></text><path d="M 367.2043 233.20173 L 376.16048 233.20173 C 381.13104 233.20173 385.16048 237.23116 385.16048 242.20173 L 385.16048 254.81693 C 385.16048 259.78749 381.13104 263.81693 376.16048 263.81693 L 367.2043 263.81693 C 362.23373 263.81693 358.2043 259.78749 358.2043 254.81693 L 358.2043 242.20173 C 358.2043 237.23116 362.23373 233.20173 367.2043 233.20173 Z" fill="white"/><path d="M 367.2043 233.20173 L 376.16048 233.20173 C 381.13104 233.20173 385.16048 237.23116 385.16048 242.20173 L 385.16048 254.81693 C 385.16048 259.78749 381.13104 263.81693 376.16048 263.81693 L 367.2043 263.81693 C 362.23373 263.81693 358.2043 259.78749 358.2043 254.81693 L 358.2043 242.20173 C 358.2043 237.23116 362.23373 233.20173 367.2043 233.20173 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(363.2043 243.50933)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x=".91754817" y="8" textLength="15.121094">BLE</tspan></text><path d="M 264.8787 233.25837 L 285.94564 233.25837 C 290.9162 233.25837 294.94564 237.28781 294.94564 242.25837 L 294.94564 254.87357 C 294.94564 259.84413 290.9162 263.87357 285.94564 263.87357 L 264.8787 263.87357 C 259.90814 263.87357 255.8787 259.84413 255.8787 254.87357 L 255.8787 242.25837 C 255.8787 237.28781 259.90814 233.25837 264.8787 233.25837 Z" fill="white"/><path d="M 264.8787 233.25837 L 285.94564 233.25837 C 290.9162 233.25837 294.94564 237.28781 294.94564 242.25837 L 294.94564 254.87357 C 294.94564 259.84413 290.9162 263.87357 285.94564 263.87357 L 264.8787 263.87357 C 259.90814 263.87357 255.8787 259.84413 255.8787 254.87357 L 255.8787 242.25837 C 255.8787 237.28781 259.90814 233.25837 264.8787 233.25837 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(260.8787 243.56597)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x=".30690666" y="8" textLength="28.453125">Camera</tspan></text><path d="M 400.6791 233.20173 L 425.01425 233.20173 C 429.9848 233.20173 434.01425 237.23116 434.01425 242.20173 L 434.01425 254.81693 C 434.01425 259.78749 429.9848 263.81693 425.01425 263.81693 L 400.6791 263.81693 C 395.70853 263.81693 391.6791 259.78749 391.6791 254.81693 L 391.6791 242.20173 C 391.6791 237.23116 395.70853 233.20173 400.6791 233.20173 Z" fill="white"/><path d="M 400.6791 233.20173 L 425.01425 233.20173 C 429.9848 233.20173 434.01425 237.23116 434.01425 242.20173 L 434.01425 254.81693 C 434.01425 259.78749 429.9848 263.81693 425.01425 263.81693 L 400.6791 263.81693 C 395.70853 263.81693 391.6791 259.78749 391.6791 254.81693 L 391.6791 242.20173 C 391.6791 237.23116 395.70853 233.20173 400.6791 233.20173 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(396.6791 243.50933)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="1.4976574" y="8" textLength="29.339844">Network</tspan></text><path d="M 214.67182 233.88675 L 243.59373 233.88675 C 248.56429 233.88675 252.59373 237.91619 252.59373 242.88675 L 252.59373 255.50195 C 252.59373 260.47251 248.56429 264.50195 243.59373 264.50195 L 214.67182 264.50195 C 209.70126 264.50195 205.67182 260.47251 205.67182 255.50195 L 205.67182 242.88675 C 205.67182 237.91619 209.70126 233.88675 214.67182 233.88675 Z" fill="white"/><path d="M 214.67182 233.88675 L 243.59373 233.88675 C 248.56429 233.88675 252.59373 237.91619 252.59373 242.88675 L 252.59373 255.50195 C 252.59373 260.47251 248.56429 264.50195 243.59373 264.50195 L 214.67182 264.50195 C 209.70126 264.50195 205.67182 260.47251 205.67182 255.50195 L 205.67182 242.88675 C 205.67182 237.91619 209.70126 233.88675 214.67182 233.88675 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(210.67182 244.19435)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="1.7910319" y="8" textLength="33.339844">Biometric</tspan></text><path d="M 101.27903 812.4436 L 253.22021 812.4436 C 258.19077 812.4436 262.22021 816.47306 262.22021 821.4436 L 262.22021 824.39086 C 262.22021 829.36143 258.19077 833.39086 253.22021 833.39086 L 101.27903 833.39086 C 96.30847 833.39086 92.27903 829.36143 92.27903 824.39086 L 92.27903 821.4436 C 92.27903 816.47306 96.30847 812.4436 101.27903 812.4436 Z" fill="white"/><path d="M 101.27903 812.4436 L 253.22021 812.4436 C 258.19077 812.4436 262.22021 816.47306 262.22021 821.4436 L 262.22021 824.39086 C 262.22021 829.36143 258.19077 833.39086 253.22021 833.39086 L 101.27903 833.39086 C 96.30847 833.39086 92.27903 829.36143 92.27903 824.39086 L 92.27903 821.4436 C 92.27903 816.47306 96.30847 812.4436 101.27903 812.4436 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(97.27903 812.4436)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="9.9373855" y="8" textLength="142.28906">Secure Container (Ex: Secure Element, </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="31.507698" y="18" textLength="96.92578">Hardware Security Module)</tspan></text><path d="M 78.635163 233.37656 L 101.65545 233.37656 C 106.62601 233.37656 110.65545 237.406 110.65545 242.37656 L 110.65545 254.99176 C 110.65545 259.96233 106.62601 263.99176 101.65545 263.99176 L 78.635163 263.99176 C 73.6646 263.99176 69.635163 259.96233 69.635163 254.99176 L 69.635163 242.37656 C 69.635163 237.406 73.6646 233.37656 78.635163 233.37656 Z" fill="white"/><path d="M 78.635163 233.37656 L 101.65545 233.37656 C 106.62601 233.37656 110.65545 237.406 110.65545 242.37656 L 110.65545 254.99176 C 110.65545 259.96233 106.62601 263.99176 101.65545 263.99176 L 78.635163 263.99176 C 73.6646 263.99176 69.635163 259.96233 69.635163 254.99176 L 69.635163 242.37656 C 69.635163 237.406 73.6646 233.37656 78.635163 233.37656 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(74.635163 243.68416)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="2.394909" y="8" textLength="26.230469">Display</tspan></text><path d="M 123.56214 233.37656 L 146.58243 233.37656 C 151.55299 233.37656 155.58243 237.406 155.58243 242.37656 L 155.58243 254.99176 C 155.58243 259.96233 151.55299 263.99176 146.58243 263.99176 L 123.56214 263.99176 C 118.59158 263.99176 114.56214 259.96233 114.56214 254.99176 L 114.56214 242.37656 C 114.56214 237.406 118.59158 233.37656 123.56214 233.37656 Z" fill="white"/><path d="M 123.56214 233.37656 L 146.58243 233.37656 C 151.55299 233.37656 155.58243 237.406 155.58243 242.37656 L 155.58243 254.99176 C 155.58243 259.96233 151.55299 263.99176 146.58243 263.99176 L 123.56214 263.99176 C 118.59158 263.99176 114.56214 259.96233 114.56214 254.99176 L 114.56214 242.37656 C 114.56214 237.406 118.59158 233.37656 123.56214 233.37656 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(119.56214 243.68416)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="4.3929559" y="8" textLength="22.234375">Touch</tspan></text><path d="M 97.37234 371.93911 L 514.385 371.93911 C 519.35557 371.93911 523.385 375.96855 523.385 380.93911 L 523.385 406.53971 C 523.385 411.51028 519.35557 415.53971 514.385 415.53971 L 97.37234 415.53971 C 92.40178 415.53971 88.37234 411.51028 88.37234 406.53971 L 88.37234 380.93911 C 88.37234 375.96855 92.40178 371.93911 97.37234 371.93911 Z" fill="white"/><path d="M 97.37234 371.93911 L 514.385 371.93911 C 519.35557 371.93911 523.385 375.96855 523.385 380.93911 L 523.385 406.53971 C 523.385 411.51028 519.35557 415.53971 514.385 415.53971 L 97.37234 415.53971 C 92.40178 415.53971 88.37234 411.51028 88.37234 406.53971 L 88.37234 380.93911 C 88.37234 375.96855 92.40178 371.93911 97.37234 371.93911 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(93.37234 371.93911)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="48.01953"> Server Layer</tspan></text><path d="M 320.64105 384.09252 L 396.4017 384.09252 C 401.37226 384.09252 405.4017 388.12196 405.4017 393.09252 L 405.4017 396.22933 C 405.4017 401.1999 401.37226 405.22933 396.4017 405.22933 L 320.64105 405.22933 C 315.67048 405.22933 311.64105 401.1999 311.64105 396.22933 L 311.64105 393.09252 C 311.64105 388.12196 315.67048 384.09252 320.64105 384.09252 Z" fill="white"/><path d="M 320.64105 384.09252 L 396.4017 384.09252 C 401.37226 384.09252 405.4017 388.12196 405.4017 393.09252 L 405.4017 396.22933 C 405.4017 401.1999 401.37226 405.22933 396.4017 405.22933 L 320.64105 405.22933 C 315.67048 405.22933 311.64105 401.1999 311.64105 396.22933 L 311.64105 393.09252 C 311.64105 388.12196 315.67048 384.09252 320.64105 384.09252 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(316.64105 389.66092)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="5.6420433" y="8" textLength="72.476562">Other Local Process</tspan></text><path d="M 101.15845 387.10454 L 198.3805 387.10454 C 203.35107 387.10454 207.3805 391.13398 207.3805 396.10454 L 207.3805 399.24135 C 207.3805 404.21191 203.35107 408.24135 198.3805 408.24135 L 101.15845 408.24135 C 96.187887 408.24135 92.15845 404.21191 92.15845 399.24135 L 92.15845 396.10454 C 92.15845 391.13398 96.187887 387.10454 101.15845 387.10454 Z" fill="white"/><path d="M 101.15845 387.10454 L 198.3805 387.10454 C 203.35107 387.10454 207.3805 391.13398 207.3805 396.10454 L 207.3805 399.24135 C 207.3805 404.21191 203.35107 408.24135 198.3805 408.24135 L 101.15845 408.24135 C 96.187887 408.24135 92.15845 404.21191 92.15845 399.24135 L 92.15845 396.10454 C 92.15845 391.13398 96.187887 387.10454 101.15845 387.10454 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(97.15845 387.67295)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="1.695012" y="8" textLength="104.05469">Local Payment Agent Server </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="38.161809" y="18" textLength="28.898438">Process</tspan></text><path d="M 100.74186 755.76285 L 165.14472 755.76285 C 170.11528 755.76285 174.14472 759.7923 174.14472 764.76285 L 174.14472 796.71396 C 174.14472 801.68453 170.11528 805.71396 165.14472 805.71396 L 100.74186 805.71396 C 95.7713 805.71396 91.74186 801.68453 91.74186 796.71396 L 91.74186 764.76285 C 91.74186 759.7923 95.7713 755.76285 100.74186 755.76285 Z" fill="white"/><path d="M 100.74186 755.76285 L 165.14472 755.76285 C 170.11528 755.76285 174.14472 759.7923 174.14472 764.76285 L 174.14472 796.71396 C 174.14472 801.68453 170.11528 805.71396 165.14472 805.71396 L 100.74186 805.71396 C 95.7713 805.71396 91.74186 801.68453 91.74186 796.71396 L 91.74186 764.76285 C 91.74186 759.7923 95.7713 755.76285 100.74186 755.76285 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(96.74186 755.76285)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="23.304946" y="8" textLength="25.792969">Identity</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="18.85768" y="18" textLength="34.6875">Container</tspan></text><path d="M 189.03064 755.76285 L 253.4335 755.76285 C 258.40406 755.76285 262.4335 759.7923 262.4335 764.76285 L 262.4335 796.71396 C 262.4335 801.68453 258.40406 805.71396 253.4335 805.71396 L 189.03064 805.71396 C 184.06008 805.71396 180.03064 801.68453 180.03064 796.71396 L 180.03064 764.76285 C 180.03064 759.7923 184.06008 755.76285 189.03064 755.76285 Z" fill="white"/><path d="M 189.03064 755.76285 L 253.4335 755.76285 C 258.40406 755.76285 262.4335 759.7923 262.4335 764.76285 L 262.4335 796.71396 C 262.4335 801.68453 258.40406 805.71396 253.4335 805.71396 L 189.03064 805.71396 C 184.06008 805.71396 180.03064 801.68453 180.03064 796.71396 L 180.03064 764.76285 C 180.03064 759.7923 184.06008 755.76285 189.03064 755.76285 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(185.03064 755.76285)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="17.969008" y="8" textLength="38.6875">Credential </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="18.85768" y="18" textLength="34.6875">Container</tspan></text><path d="M 277.31941 755.76285 L 341.72227 755.76285 C 346.69283 755.76285 350.72227 759.7923 350.72227 764.76285 L 350.72227 796.71396 C 350.72227 801.68453 346.69283 805.71396 341.72227 805.71396 L 277.31941 805.71396 C 272.34885 805.71396 268.31941 801.68453 268.31941 796.71396 L 268.31941 764.76285 C 268.31941 759.7923 272.34885 755.76285 277.31941 755.76285 Z" fill="white"/><path d="M 277.31941 755.76285 L 341.72227 755.76285 C 346.69283 755.76285 350.72227 759.7923 350.72227 764.76285 L 350.72227 796.71396 C 350.72227 801.68453 346.69283 805.71396 341.72227 805.71396 L 277.31941 805.71396 C 272.34885 805.71396 268.31941 801.68453 268.31941 796.71396 L 268.31941 764.76285 C 268.31941 759.7923 272.34885 755.76285 277.31941 755.76285 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(273.31941 755.76285)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="23.746352" y="8" textLength="24.910156">Ledger</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="18.85768" y="18" textLength="34.6875">Container</tspan></text><path d="M 362.66523 755.76285 L 427.0681 755.76285 C 432.03865 755.76285 436.0681 759.7923 436.0681 764.76285 L 436.0681 796.71396 C 436.0681 801.68453 432.03865 805.71396 427.0681 805.71396 L 362.66523 805.71396 C 357.69467 805.71396 353.66523 801.68453 353.66523 796.71396 L 353.66523 764.76285 C 353.66523 759.7923 357.69467 755.76285 362.66523 755.76285 Z" fill="white"/><path d="M 362.66523 755.76285 L 427.0681 755.76285 C 432.03865 755.76285 436.0681 759.7923 436.0681 764.76285 L 436.0681 796.71396 C 436.0681 801.68453 432.03865 805.71396 427.0681 805.71396 L 362.66523 805.71396 C 357.69467 805.71396 353.66523 801.68453 353.66523 796.71396 L 353.66523 764.76285 C 353.66523 759.7923 357.69467 755.76285 362.66523 755.76285 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(358.66523 755.76285)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="28.422133" y="8" textLength="15.558594">Item</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="18.85768" y="18" textLength="34.6875">Container</tspan></text><path d="M 277.08025 813.29667 L 429.02143 813.29667 C 433.992 813.29667 438.02143 817.3261 438.02143 822.29667 L 438.02143 825.2439 C 438.02143 830.2145 433.992 834.2439 429.02143 834.2439 L 277.08025 834.2439 C 272.10969 834.2439 268.08025 830.2145 268.08025 825.2439 L 268.08025 822.29667 C 268.08025 817.3261 272.10969 813.29667 277.08025 813.29667 Z" fill="white"/><path d="M 277.08025 813.29667 L 429.02143 813.29667 C 433.992 813.29667 438.02143 817.3261 438.02143 822.29667 L 438.02143 825.2439 C 438.02143 830.2145 433.992 834.2439 429.02143 834.2439 L 277.08025 834.2439 C 272.10969 834.2439 268.08025 830.2145 268.08025 825.2439 L 268.08025 822.29667 C 268.08025 817.3261 272.10969 813.29667 277.08025 813.29667 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(273.08025 813.29667)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="44.622932" y="8" textLength="70.695312">Processor/Compute</tspan></text><path d="M 71.947254 433.91374 L 407.77162 433.91374 C 412.74219 433.91374 416.77162 437.94318 416.77162 442.91374 L 416.77162 573.8064 C 416.77162 578.77695 412.74219 582.8064 407.77162 582.8064 L 71.947254 582.8064 C 66.97669 582.8064 62.947254 578.77695 62.947254 573.8064 L 62.947254 442.91374 C 62.947254 437.94318 66.97669 433.91374 71.947254 433.91374 Z" fill="white"/><path d="M 71.947254 433.91374 L 407.77162 433.91374 C 412.74219 433.91374 416.77162 437.94318 416.77162 442.91374 L 416.77162 573.8064 C 416.77162 578.77695 412.74219 582.8064 407.77162 582.8064 L 71.947254 582.8064 C 66.97669 582.8064 62.947254 578.77695 62.947254 573.8064 L 62.947254 442.91374 C 62.947254 437.94318 66.97669 433.91374 71.947254 433.91374 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(67.947254 433.91374)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="96.933594">Local Host/Hardware Layer</tspan></text><path d="M 79.21069 452.87053 L 401.9116 452.87053 C 406.88216 452.87053 410.9116 456.89997 410.9116 461.87053 L 410.9116 513.91584 C 410.9116 518.8864 406.88216 522.91584 401.9116 522.91584 L 79.21069 522.91584 C 74.24013 522.91584 70.21069 518.8864 70.21069 513.91584 L 70.21069 461.87053 C 70.21069 456.89997 74.24013 452.87053 79.21069 452.87053 Z" fill="black"/><path d="M 79.21069 452.87053 L 401.9116 452.87053 C 406.88216 452.87053 410.9116 456.89997 410.9116 461.87053 L 410.9116 513.91584 C 410.9116 518.8864 406.88216 522.91584 401.9116 522.91584 L 79.21069 522.91584 C 74.24013 522.91584 70.21069 518.8864 70.21069 513.91584 L 70.21069 461.87053 C 70.21069 456.89997 74.24013 452.87053 79.21069 452.87053 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(75.21069 452.87053)" fill="white"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="white" x="128.44225" y="8" textLength="73.816406">Local Wallet Storage</tspan></text><path d="M 83.017396 529.83272 L 230.60945 529.83272 C 235.58001 529.83272 239.60945 533.86216 239.60945 538.83272 L 239.60945 541.77997 C 239.60945 546.75053 235.58001 550.77997 230.60945 550.77997 L 83.017396 550.77997 C 78.046833 550.77997 74.017396 546.75053 74.017396 541.77997 L 74.017396 538.83272 C 74.017396 533.86216 78.046833 529.83272 83.017396 529.83272 Z" fill="white"/><path d="M 83.017396 529.83272 L 230.60945 529.83272 C 235.58001 529.83272 239.60945 533.86216 239.60945 538.83272 L 239.60945 541.77997 C 239.60945 546.75053 235.58001 550.77997 230.60945 550.77997 L 83.017396 550.77997 C 78.046833 550.77997 74.017396 546.75053 74.017396 541.77997 L 74.017396 538.83272 C 74.017396 533.86216 78.046833 529.83272 83.017396 529.83272 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(79.017396 530.30634)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="7.7628247" y="8" textLength="142.28906">Secure Container (Ex: Secure Element, </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="29.333137" y="18" textLength="96.92578">Hardware Security Module)</tspan></text><path d="M 82.49398 471.06904 L 144.78799 471.06904 C 149.75855 471.06904 153.78799 475.09848 153.78799 480.06904 L 153.78799 512.02016 C 153.78799 516.99072 149.75855 521.02016 144.78799 521.02016 L 82.49398 521.02016 C 77.52342 521.02016 73.49398 516.99072 73.49398 512.02016 L 73.49398 480.06904 C 73.49398 475.09848 77.52342 471.06904 82.49398 471.06904 Z" fill="white"/><path d="M 82.49398 471.06904 L 144.78799 471.06904 C 149.75855 471.06904 153.78799 475.09848 153.78799 480.06904 L 153.78799 512.02016 C 153.78799 516.99072 149.75855 521.02016 144.78799 521.02016 L 82.49398 521.02016 C 77.52342 521.02016 73.49398 516.99072 73.49398 512.02016 L 73.49398 480.06904 C 73.49398 475.09848 77.52342 471.06904 82.49398 471.06904 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(78.49398 471.06904)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="22.250519" y="8" textLength="25.792969">Identity</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="17.803253" y="18" textLength="34.6875">Container</tspan></text><path d="M 168.52328 471.06904 L 230.81728 471.06904 C 235.78785 471.06904 239.81728 475.09848 239.81728 480.06904 L 239.81728 512.02016 C 239.81728 516.99072 235.78785 521.02016 230.81728 521.02016 L 168.52328 521.02016 C 163.55271 521.02016 159.52328 516.99072 159.52328 512.02016 L 159.52328 480.06904 C 159.52328 475.09848 163.55271 471.06904 168.52328 471.06904 Z" fill="white"/><path d="M 168.52328 471.06904 L 230.81728 471.06904 C 235.78785 471.06904 239.81728 475.09848 239.81728 480.06904 L 239.81728 512.02016 C 239.81728 516.99072 235.78785 521.02016 230.81728 521.02016 L 168.52328 521.02016 C 163.55271 521.02016 159.52328 516.99072 159.52328 512.02016 L 159.52328 480.06904 C 159.52328 475.09848 163.55271 471.06904 168.52328 471.06904 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(164.52328 471.06904)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="16.914581" y="8" textLength="36.464844">Credential</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="17.803253" y="18" textLength="34.6875">Container</tspan></text><path d="M 254.55257 471.06904 L 316.84658 471.06904 C 321.81714 471.06904 325.84658 475.09848 325.84658 480.06904 L 325.84658 512.02016 C 325.84658 516.99072 321.81714 521.02016 316.84658 521.02016 L 254.55257 521.02016 C 249.58201 521.02016 245.55257 516.99072 245.55257 512.02016 L 245.55257 480.06904 C 245.55257 475.09848 249.58201 471.06904 254.55257 471.06904 Z" fill="white"/><path d="M 254.55257 471.06904 L 316.84658 471.06904 C 321.81714 471.06904 325.84658 475.09848 325.84658 480.06904 L 325.84658 512.02016 C 325.84658 516.99072 321.81714 521.02016 316.84658 521.02016 L 254.55257 521.02016 C 249.58201 521.02016 245.55257 516.99072 245.55257 512.02016 L 245.55257 480.06904 C 245.55257 475.09848 249.58201 471.06904 254.55257 471.06904 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(250.55257 471.06904)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="22.691925" y="8" textLength="24.910156">Ledger</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="17.803253" y="18" textLength="34.6875">Container</tspan></text><path d="M 337.71422 471.06904 L 400.00823 471.06904 C 404.9788 471.06904 409.00823 475.09848 409.00823 480.06904 L 409.00823 512.02016 C 409.00823 516.99072 404.9788 521.02016 400.00823 521.02016 L 337.71422 521.02016 C 332.74366 521.02016 328.71422 516.99072 328.71422 512.02016 L 328.71422 480.06904 C 328.71422 475.09848 332.74366 471.06904 337.71422 471.06904 Z" fill="white"/><path d="M 337.71422 471.06904 L 400.00823 471.06904 C 404.9788 471.06904 409.00823 475.09848 409.00823 480.06904 L 409.00823 512.02016 C 409.00823 516.99072 404.9788 521.02016 400.00823 521.02016 L 337.71422 521.02016 C 332.74366 521.02016 328.71422 516.99072 328.71422 512.02016 L 328.71422 480.06904 C 328.71422 475.09848 332.74366 471.06904 337.71422 471.06904 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(333.71422 471.06904)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="27.367706" y="8" textLength="15.558594">Item</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="17.803253" y="18" textLength="34.6875">Container</tspan></text><path d="M 254.31953 530.68578 L 401.91159 530.68578 C 406.88215 530.68578 410.91159 534.7152 410.91159 539.68578 L 410.91159 542.63302 C 410.91159 547.60358 406.88215 551.63302 401.91159 551.63302 L 254.31953 551.63302 C 249.34897 551.63302 245.31953 547.60358 245.31953 542.63302 L 245.31953 539.68578 C 245.31953 534.7152 249.34897 530.68578 254.31953 530.68578 Z" fill="white"/><path d="M 254.31953 530.68578 L 401.91159 530.68578 C 406.88215 530.68578 410.91159 534.7152 410.91159 539.68578 L 410.91159 542.63302 C 410.91159 547.60358 406.88215 551.63302 401.91159 551.63302 L 254.31953 551.63302 C 249.34897 551.63302 245.31953 547.60358 245.31953 542.63302 L 245.31953 539.68578 C 245.31953 534.7152 249.34897 530.68578 254.31953 530.68578 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(250.31953 536.1594)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="42.448372" y="8" textLength="70.695312">Processor/Compute</tspan></text><line x1="235.36628" y1="611.3514" x2="234.95598" y2="640.92167" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="468.95018" y1="425.0739" x2="468.27404" y2="630.24254" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 168.06009 233.25837 L 191.08037 233.25837 C 196.05094 233.25837 200.08037 237.28781 200.08037 242.25837 L 200.08037 254.87357 C 200.08037 259.84413 196.05094 263.87357 191.08037 263.87357 L 168.06009 263.87357 C 163.08952 263.87357 159.06009 259.84413 159.06009 254.87357 L 159.06009 242.25837 C 159.06009 237.28781 163.08952 233.25837 168.06009 233.25837 Z" fill="white"/><path d="M 168.06009 233.25837 L 191.08037 233.25837 C 196.05094 233.25837 200.08037 237.28781 200.08037 242.25837 L 200.08037 254.87357 C 200.08037 259.84413 196.05094 263.87357 191.08037 263.87357 L 168.06009 263.87357 C 163.08952 263.87357 159.06009 259.84413 159.06009 254.87357 L 159.06009 242.25837 C 159.06009 237.28781 163.08952 233.25837 168.06009 233.25837 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(164.06009 243.56597)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="5.504284" y="8" textLength="20.011719">Voice</tspan></text><path d="M 482.36216 233.37656 L 503.4291 233.37656 C 508.39966 233.37656 512.4291 237.406 512.4291 242.37656 L 512.4291 254.99176 C 512.4291 259.96233 508.39966 263.99176 503.4291 263.99176 L 482.36216 263.99176 C 477.3916 263.99176 473.36216 259.96233 473.36216 254.99176 L 473.36216 242.37656 C 473.36216 237.406 477.3916 233.37656 482.36216 233.37656 Z" fill="white"/><path d="M 482.36216 233.37656 L 503.4291 233.37656 C 508.39966 233.37656 512.4291 237.406 512.4291 242.37656 L 512.4291 254.99176 C 512.4291 259.96233 508.39966 263.99176 503.4291 263.99176 L 482.36216 263.99176 C 477.3916 263.99176 473.36216 259.96233 473.36216 254.99176 L 473.36216 242.37656 C 473.36216 237.406 477.3916 233.37656 482.36216 233.37656 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(478.36216 243.68416)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="9.422141" y="8" textLength="10.222656">….</tspan></text><text transform="translate(481.69492 472.40798) rotate(89.999983)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="15.064519" y="8" textLength="83.148438">Secure Communication</tspan></text><text transform="translate(262.05549 602.30143) rotate(89.99998)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="11.161275" y="8" textLength="27.570312">Secure </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="4.0460408" y="18" textLength="39.578125">Replication</tspan></text><path d="M 97.640427 301.75456 L 477.86408 301.75456 C 482.83464 301.75456 486.86408 305.784 486.86408 310.75456 L 486.86408 342.60387 C 486.86408 347.57444 482.83464 351.60387 477.86408 351.60387 L 97.640427 351.60387 C 92.669864 351.60387 88.640427 347.57444 88.640427 342.60387 L 88.640427 310.75456 C 88.640427 305.784 92.669864 301.75456 97.640427 301.75456 Z" fill="white"/><path d="M 97.640427 301.75456 L 477.86408 301.75456 C 482.83464 301.75456 486.86408 305.784 486.86408 310.75456 L 486.86408 342.60387 C 486.86408 347.57444 482.83464 351.60387 477.86408 351.60387 L 97.640427 351.60387 C 92.669864 351.60387 88.640427 347.57444 88.640427 342.60387 L 88.640427 310.75456 C 88.640427 305.784 92.669864 301.75456 97.640427 301.75456 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(93.640427 301.75456)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="40.019531">User Agent</tspan></text><path d="M 103.889146 322.4432 L 179.6498 322.4432 C 184.62036 322.4432 188.6498 326.47263 188.6498 331.4432 L 188.6498 334.58 C 188.6498 339.55056 184.62036 343.58 179.6498 343.58 L 103.889146 343.58 C 98.918583 343.58 94.889146 339.55056 94.889146 334.58 L 94.889146 331.4432 C 94.889146 326.47263 98.918583 322.4432 103.889146 322.4432 Z" fill="black"/><path d="M 103.889146 322.4432 L 179.6498 322.4432 C 184.62036 322.4432 188.6498 326.47263 188.6498 331.4432 L 188.6498 334.58 C 188.6498 339.55056 184.62036 343.58 179.6498 343.58 L 103.889146 343.58 C 98.918583 343.58 94.889146 339.55056 94.889146 334.58 L 94.889146 331.4432 C 94.889146 326.47263 98.918583 322.4432 103.889146 322.4432 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(99.889146 328.0116)" fill="white"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="white" x="27.210403" y="8" textLength="29.339844">Browser</tspan></text><path d="M 291.35065 322.4432 L 367.1113 322.4432 C 372.08186 322.4432 376.1113 326.47263 376.1113 331.4432 L 376.1113 334.58 C 376.1113 339.55056 372.08186 343.58 367.1113 343.58 L 291.35065 343.58 C 286.38009 343.58 282.35065 339.55056 282.35065 334.58 L 282.35065 331.4432 C 282.35065 326.47263 286.38009 322.4432 291.35065 322.4432 Z" fill="white"/><path d="M 291.35065 322.4432 L 367.1113 322.4432 C 372.08186 322.4432 376.1113 326.47263 376.1113 331.4432 L 376.1113 334.58 C 376.1113 339.55056 372.08186 343.58 367.1113 343.58 L 291.35065 343.58 C 286.38009 343.58 282.35065 339.55056 282.35065 334.58 L 282.35065 331.4432 C 282.35065 326.47263 286.38009 322.4432 291.35065 322.4432 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(287.35065 328.0116)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="9.8627464" y="8" textLength="64.035156">Native Application</tspan></text><path d="M 399.66174 322.4432 L 475.4224 322.4432 C 480.39295 322.4432 484.4224 326.47263 484.4224 331.4432 L 484.4224 334.58 C 484.4224 339.55056 480.39295 343.58 475.4224 343.58 L 399.66174 343.58 C 394.69118 343.58 390.66174 339.55056 390.66174 334.58 L 390.66174 331.4432 C 390.66174 326.47263 394.69118 322.4432 399.66174 322.4432 Z" fill="white"/><path d="M 399.66174 322.4432 L 475.4224 322.4432 C 480.39295 322.4432 484.4224 326.47263 484.4224 331.4432 L 484.4224 334.58 C 484.4224 339.55056 480.39295 343.58 475.4224 343.58 L 399.66174 343.58 C 394.69118 343.58 390.66174 339.55056 390.66174 334.58 L 390.66174 331.4432 C 390.66174 326.47263 394.69118 322.4432 399.66174 322.4432 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(395.66174 328.0116)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="36.768996" y="8" textLength="10.222656">….</tspan></text><rect x="179.59397" y="327.9976" width="11.10883" height="11.10883" fill="white"/><rect x="179.59397" y="327.9976" width="11.10883" height="11.10883" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(201.76052 317.16342)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" fill="black" x="17.535707" y="8" textLength="31.996094">Web IDL</tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" fill="black" x="4.416567" y="18" textLength="60.45703">Payment Agent </tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" fill="black" x="26.865786" y="28" textLength="13.3359375">API</tspan></text><path d="M 83.929874 555.72862 L 231.52193 555.72862 C 236.49249 555.72862 240.52193 559.75806 240.52193 564.72862 L 240.52193 567.67587 C 240.52193 572.64643 236.49249 576.67587 231.52193 576.67587 L 83.929874 576.67587 C 78.95931 576.67587 74.929874 572.64643 74.929874 567.67587 L 74.929874 564.72862 C 74.929874 559.75806 78.95931 555.72862 83.929874 555.72862 Z" fill="white"/><path d="M 83.929874 555.72862 L 231.52193 555.72862 C 236.49249 555.72862 240.52193 559.75806 240.52193 564.72862 L 240.52193 567.67587 C 240.52193 572.64643 236.49249 576.67587 231.52193 576.67587 L 83.929874 576.67587 C 78.95931 576.67587 74.929874 572.64643 74.929874 567.67587 L 74.929874 564.72862 C 74.929874 559.75806 78.95931 555.72862 83.929874 555.72862 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(79.929874 561.20224)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="56.44837" y="8" textLength="42.695312">Geolocation</tspan></text><path d="M 254.72813 555.72862 L 312.75525 555.72862 C 317.72581 555.72862 321.75525 559.75806 321.75525 564.72862 L 321.75525 567.67587 C 321.75525 572.64643 317.72581 576.67587 312.75525 576.67587 L 254.72813 576.67587 C 249.75757 576.67587 245.72813 572.64643 245.72813 567.67587 L 245.72813 564.72862 C 245.72813 559.75806 249.75757 555.72862 254.72813 555.72862 Z" fill="white"/><path d="M 254.72813 555.72862 L 312.75525 555.72862 C 317.72581 555.72862 321.75525 559.75806 321.75525 564.72862 L 321.75525 567.67587 C 321.75525 572.64643 317.72581 576.67587 312.75525 576.67587 L 254.72813 576.67587 C 249.75757 576.67587 245.72813 572.64643 245.72813 567.67587 L 245.72813 564.72862 C 245.72813 559.75806 249.75757 555.72862 254.72813 555.72862 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(250.72813 561.20224)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="16.781136" y="8" textLength="32.464844">Calendar</tspan></text><path d="M 341.16979 555.72862 L 400.2373 555.72862 C 405.20786 555.72862 409.2373 559.75806 409.2373 564.72862 L 409.2373 567.67587 C 409.2373 572.64643 405.20786 576.67587 400.2373 576.67587 L 341.16979 576.67587 C 336.19922 576.67587 332.16979 572.64643 332.16979 567.67587 L 332.16979 564.72862 C 332.16979 559.75806 336.19922 555.72862 341.16979 555.72862 Z" fill="white"/><path d="M 341.16979 555.72862 L 400.2373 555.72862 C 405.20786 555.72862 409.2373 559.75806 409.2373 564.72862 L 409.2373 567.67587 C 409.2373 572.64643 405.20786 576.67587 400.2373 576.67587 L 341.16979 576.67587 C 336.19922 576.67587 332.16979 572.64643 332.16979 567.67587 L 332.16979 564.72862 C 332.16979 559.75806 336.19922 555.72862 341.16979 555.72862 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(337.16979 561.20224)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="23.531801" y="8" textLength="20.003906">Clock</tspan></text><line x1="190.7028" y1="337.37519" x2="238.60964" y2="370.35002" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="232.51786" y="364.42574" width="11.10883" height="11.10883" fill="white"/><rect x="232.51786" y="364.42574" width="11.10883" height="11.10883" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="278.18484" y="326.609" width="11.10883" height="11.10883" fill="white"/><rect x="278.18484" y="326.609" width="11.10883" height="11.10883" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="278.18484" y1="336.76302" x2="243.62669" y2="365.38055" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(9.881356 156.08283)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" fill="black" x="5.977752" y="8" textLength="221.8086">Figure: Payment Agent High Level Conceptual Model - v.5</tspan></text><line x1="70.354488" y1="293.8507" x2="69.54371" y2="421.82424" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="245.59051" y1="291.76245" x2="245.48326" y2="294.80258" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="251.94232" y1="425.06711" x2="251.97994" y2="426.02692" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 308.949 233.25837 L 330.01594 233.25837 C 334.9865 233.25837 339.01594 237.28781 339.01594 242.25837 L 339.01594 254.87357 C 339.01594 259.84413 334.9865 263.87357 330.01594 263.87357 L 308.949 263.87357 C 303.97844 263.87357 299.949 259.84413 299.949 254.87357 L 299.949 242.25837 C 299.949 237.28781 303.97844 233.25837 308.949 233.25837 Z" fill="white"/><path d="M 308.949 233.25837 L 330.01594 233.25837 C 334.9865 233.25837 339.01594 237.28781 339.01594 242.25837 L 339.01594 254.87357 C 339.01594 259.84413 334.9865 263.87357 330.01594 263.87357 L 308.949 263.87357 C 303.97844 263.87357 299.949 259.84413 299.949 254.87357 L 299.949 242.25837 C 299.949 237.28781 303.97844 233.25837 308.949 233.25837 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(304.949 243.56597)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="9.422141" y="8" textLength="10.222656">….</tspan></text><line x1="207.3805" y1="397.24197" x2="311.64105" y2="396.46202" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="499.63708" y1="293.85038" x2="500.37124" y2="362.84478" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 50.141973 672.3555 L 514.385 672.3555 C 519.35557 672.3555 523.385 676.38496 523.385 681.3555 L 523.385 706.9561 C 523.385 711.9267 519.35557 715.9561 514.385 715.9561 L 50.141973 715.9561 C 45.17141 715.9561 41.141973 711.9267 41.141973 706.9561 L 41.141973 681.3555 C 41.141973 676.38496 45.17141 672.3555 50.141973 672.3555 Z" fill="white"/><path d="M 50.141973 672.3555 L 514.385 672.3555 C 519.35557 672.3555 523.385 676.38496 523.385 681.3555 L 523.385 706.9561 C 523.385 711.9267 519.35557 715.9561 514.385 715.9561 L 50.141973 715.9561 C 45.17141 715.9561 41.141973 711.9267 41.141973 706.9561 L 41.141973 681.3555 C 41.141973 676.38496 45.17141 672.3555 50.141973 672.3555 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(46.141973 672.3555)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="0" y="8" textLength="76.03125">Remote Server Layer</tspan></text><path d="M 301.90387 684.50892 L 377.66452 684.50892 C 382.63508 684.50892 386.66452 688.53836 386.66452 693.50892 L 386.66452 696.64573 C 386.66452 701.6163 382.63508 705.64573 377.66452 705.64573 L 301.90387 705.64573 C 296.9333 705.64573 292.90387 701.6163 292.90387 696.64573 L 292.90387 693.50892 C 292.90387 688.53836 296.9333 684.50892 301.90387 684.50892 Z" fill="white"/><path d="M 301.90387 684.50892 L 377.66452 684.50892 C 382.63508 684.50892 386.66452 688.53836 386.66452 693.50892 L 386.66452 696.64573 C 386.66452 701.6163 382.63508 705.64573 377.66452 705.64573 L 301.90387 705.64573 C 296.9333 705.64573 292.90387 701.6163 292.90387 696.64573 L 292.90387 693.50892 C 292.90387 688.53836 296.9333 684.50892 301.90387 684.50892 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(297.90387 690.07733)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="1.1986839" y="8" textLength="81.36328">Other Remote Process</tspan></text><path d="M 82.42127 687.52095 L 179.64333 687.52095 C 184.61389 687.52095 188.64333 691.5504 188.64333 696.52095 L 188.64333 699.65776 C 188.64333 704.6283 184.61389 708.65776 179.64333 708.65776 L 82.42127 708.65776 C 77.45071 708.65776 73.42127 704.6283 73.42127 699.65776 L 73.42127 696.52095 C 73.42127 691.5504 77.45071 687.52095 82.42127 687.52095 Z" fill="white"/><path d="M 82.42127 687.52095 L 179.64333 687.52095 C 184.61389 687.52095 188.64333 691.5504 188.64333 696.52095 L 188.64333 699.65776 C 188.64333 704.6283 184.61389 708.65776 179.64333 708.65776 L 82.42127 708.65776 C 77.45071 708.65776 73.42127 704.6283 73.42127 699.65776 L 73.42127 696.52095 C 73.42127 691.5504 77.45071 687.52095 82.42127 687.52095 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(78.42127 688.08935)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="10.144231" y="8" textLength="87.15625">Remote Payment Agent </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="25.26923" y="18" textLength="54.683594">Server Process</tspan></text><line x1="51.54701" y1="291.76796" x2="52.428252" y2="662.56" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="252.01475" y1="724.8506" x2="251.9075" y2="727.8907" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="188.64333" y1="697.5969" x2="292.90387" y2="696.7057" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/paygent_simple.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="71 138 357 251" width="357pt" height="251pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.1.3 <dc:date>2015-03-06 00:31:50 +0000</dc:date></metadata><defs><font-face font-family="Helvetica Neue" font-size="7" panose-1="2 0 5 3 0 0 0 2 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="517" cap-height="714" ascent="951.99585" descent="-212.99744" font-weight="500"><font-face-src><font-face-name name="HelveticaNeue"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="7" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker_2" viewBox="-9 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M -8 0 L 0 3 L 0 -3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 6</title><rect fill="white" width="1118.57764" height="1565.7768"/><g><title>Layer 1</title><path d="M 91.6875 218.25 L 130.5625 218.25 C 135.53306 218.25 139.5625 222.27944 139.5625 227.25 L 139.5625 266.125 C 139.5625 271.09556 135.53306 275.125 130.5625 275.125 L 91.6875 275.125 C 86.716937 275.125 82.6875 271.09556 82.6875 266.125 L 82.6875 227.25 C 82.6875 222.27944 86.716937 218.25 91.6875 218.25 Z" fill="white"/><path d="M 91.6875 218.25 L 130.5625 218.25 C 135.53306 218.25 139.5625 222.27944 139.5625 227.25 L 139.5625 266.125 C 139.5625 271.09556 135.53306 275.125 130.5625 275.125 L 91.6875 275.125 C 86.716937 275.125 82.6875 271.09556 82.6875 266.125 L 82.6875 227.25 C 82.6875 222.27944 86.716937 218.25 91.6875 218.25 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(87.6875 242.6875)" fill="black"><tspan font-family="Helvetica Neue" font-size="7" font-weight="500" fill="black" x="5.9375" y="7" textLength="35">User Agent</tspan></text><path d="M 91.6875 293.41144 L 130.5625 293.41144 C 135.53306 293.41144 139.5625 297.44088 139.5625 302.41144 L 139.5625 341.28644 C 139.5625 346.257 135.53306 350.28644 130.5625 350.28644 L 91.6875 350.28644 C 86.716937 350.28644 82.6875 346.257 82.6875 341.28644 L 82.6875 302.41144 C 82.6875 297.44088 86.716937 293.41144 91.6875 293.41144 Z" fill="white"/><path d="M 91.6875 293.41144 L 130.5625 293.41144 C 135.53306 293.41144 139.5625 297.44088 139.5625 302.41144 L 139.5625 341.28644 C 139.5625 346.257 135.53306 350.28644 130.5625 350.28644 L 91.6875 350.28644 C 86.716937 350.28644 82.6875 346.257 82.6875 341.28644 L 82.6875 302.41144 C 82.6875 297.44088 86.716937 293.41144 91.6875 293.41144 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(87.6875 313.84894)" fill="black"><tspan font-family="Helvetica Neue" font-size="7" font-weight="500" x="9.6265" y="7" textLength="29.568">Payment </tspan><tspan font-family="Helvetica Neue" font-size="7" font-weight="500" x="14.2325" y="15" textLength="18.41">Agent</tspan></text><path d="M 194.7388 328.13313 C 172.88786 321.84909 181.60147 268.94774 216.4586 277.97426 C 219.69257 260.3787 260.22673 263.23465 259.96174 277.97426 C 285.37788 259.12213 317.8582 296.7129 296.07217 315.56504 C 322.21435 324.70505 295.74227 373.95016 274.28747 365.72392 C 272.57043 379.4351 234.2157 384.23325 230.84923 365.72392 C 209.13079 385.491 163.84436 355.09802 194.7388 328.13313 Z" fill="white"/><path d="M 194.7388 328.13313 C 172.88786 321.84909 181.60147 268.94774 216.4586 277.97426 C 219.69257 260.3787 260.22673 263.23465 259.96174 277.97426 C 285.37788 259.12213 317.8582 296.7129 296.07217 315.56504 C 322.21435 324.70505 295.74227 373.95016 274.28747 365.72392 C 272.57043 379.4351 234.2157 384.23325 230.84923 365.72392 C 209.13079 385.491 163.84436 355.09802 194.7388 328.13313 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(187.8125 313.84894)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x="43.257514" y="6" textLength="27.624023">Payment</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x="45.40058" y="14" textLength="23.33789">System</tspan></text><path d="M 199.11279 194.625 L 285.1124 194.625 C 290.08296 194.625 294.1124 198.65444 294.1124 203.625 L 294.1124 217.90074 C 294.1124 222.8713 290.08296 226.90074 285.1124 226.90074 L 199.11279 226.90074 C 194.14223 226.90074 190.11279 222.8713 190.11279 217.90074 L 190.11279 203.625 C 190.11279 198.65444 194.14223 194.625 199.11279 194.625 Z" fill="white"/><path d="M 199.11279 194.625 L 285.1124 194.625 C 290.08296 194.625 294.1124 198.65444 294.1124 203.625 L 294.1124 217.90074 C 294.1124 222.8713 290.08296 226.90074 285.1124 226.90074 L 199.11279 226.90074 C 194.14223 226.90074 190.11279 222.8713 190.11279 217.90074 L 190.11279 203.625 C 190.11279 198.65444 194.14223 194.625 199.11279 194.625 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(195.11279 206.76287)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x="13.346481" y="6" textLength="67.30664">Rules / Requirements</tspan></text><path d="M 368.4375 218.25 L 407.3125 218.25 C 412.28306 218.25 416.3125 222.27944 416.3125 227.25 L 416.3125 266.125 C 416.3125 271.09556 412.28306 275.125 407.3125 275.125 L 368.4375 275.125 C 363.46694 275.125 359.4375 271.09556 359.4375 266.125 L 359.4375 227.25 C 359.4375 222.27944 363.46694 218.25 368.4375 218.25 Z" fill="white"/><path d="M 368.4375 218.25 L 407.3125 218.25 C 412.28306 218.25 416.3125 222.27944 416.3125 227.25 L 416.3125 266.125 C 416.3125 271.09556 412.28306 275.125 407.3125 275.125 L 368.4375 275.125 C 363.46694 275.125 359.4375 271.09556 359.4375 266.125 L 359.4375 227.25 C 359.4375 222.27944 363.46694 218.25 368.4375 218.25 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(364.4375 242.6875)" fill="black"><tspan font-family="Helvetica Neue" font-size="7" font-weight="500" x="5.9375" y="7" textLength="35">User Agent</tspan></text><path d="M 368.4375 293.41144 L 407.3125 293.41144 C 412.28306 293.41144 416.3125 297.44088 416.3125 302.41144 L 416.3125 341.28644 C 416.3125 346.257 412.28306 350.28644 407.3125 350.28644 L 368.4375 350.28644 C 363.46694 350.28644 359.4375 346.257 359.4375 341.28644 L 359.4375 302.41144 C 359.4375 297.44088 363.46694 293.41144 368.4375 293.41144 Z" fill="white"/><path d="M 368.4375 293.41144 L 407.3125 293.41144 C 412.28306 293.41144 416.3125 297.44088 416.3125 302.41144 L 416.3125 341.28644 C 416.3125 346.257 412.28306 350.28644 407.3125 350.28644 L 368.4375 350.28644 C 363.46694 350.28644 359.4375 346.257 359.4375 341.28644 L 359.4375 302.41144 C 359.4375 297.44088 363.46694 293.41144 368.4375 293.41144 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(364.4375 313.84894)" fill="black"><tspan font-family="Helvetica Neue" font-size="7" font-weight="500" x="9.6265" y="7" textLength="29.568">Payment </tspan><tspan font-family="Helvetica Neue" font-size="7" font-weight="500" x="14.2325" y="15" textLength="18.41">Agent</tspan></text><path d="M 242.122 226.90075 C 242.19154 241.00126 242.41423 254.23267 242.705 266.08197" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="111.125" cy="158.27841" r="5.1704628" fill="white"/><circle cx="111.125" cy="158.27841" r="5.1704628" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="111.125" y1="163.44886" x2="111.125" y2="178.96023" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="111.125" y1="178.96023" x2="105.954545" y2="194.47159" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="111.125" y1="178.96023" x2="116.295455" y2="194.47159" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="111.125" y1="168.61932" x2="100.78409" y2="168.61932" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="121.46591" y1="168.61932" x2="111.125" y2="168.61932" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(100.613636 195.3548)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="1.3682972" y="6" textLength="18.286133">Payer</tspan></text><circle cx="390.69886" cy="158.27841" r="5.1704628" fill="white"/><circle cx="390.69886" cy="158.27841" r="5.1704628" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="390.69886" y1="163.44886" x2="390.69886" y2="178.96023" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="390.69886" y1="178.96023" x2="385.5284" y2="194.47159" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="390.69886" y1="178.96023" x2="395.86932" y2="194.47159" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="390.69886" y1="168.61932" x2="380.35795" y2="168.61932" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="401.03977" y1="168.61932" x2="390.69886" y2="168.61932" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(380.1875 195.3548)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".58729137" y="6" textLength="19.848145">Payee</tspan></text><path d="M 139.56251 321.8198 C 152.78887 321.8099 165.21202 321.80565 176.56254 321.80504" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 304.03688 321.37858 C 322.90354 321.2893 337.83411 321.28949 349.53739 321.33528" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 111.05778 204.52525 C 111.044844 205.78365 111.03393 207.06178 111.02483 208.3514" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 110.774707 275.12501 C 110.756866 278.04875 110.74577 280.84457 110.740284 283.50983" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 390.68375 204.52525 C 390.66263 205.76967 390.63024 207.05109 390.58828 208.3579" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 387.73646 283.51618 C 387.7354 280.55591 387.7368 277.7567 387.74007 275.12499" marker-start="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g></g></svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/payment-agent/images/paygentbase.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="4 8 1008 550" width="84pc" height="550pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-03-20 05:08Z</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="14" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="14" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 5</title><rect fill="white" width="1944" height="553"/><g><title>Layer 1</title><path d="M 202.90684 20.854167 L 546.75 20.854167 L 546.75 339.75 L 202.90684 339.75 Z" stroke="#131313" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke-dasharray="4,4"/><rect x="198" y="20.854167" width="199.49304" height="39.836823" fill="#4c4c4c"/><rect x="198" y="20.854167" width="199.49304" height="39.836823" stroke="#131313" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(203 33.772578)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x="54.726988" y="11" textLength="80.039062">Host Container</tspan></text><text transform="translate(743.25 463.89583)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="8" textLength="32.4375">W3C - W</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="32.296875" y="8" textLength="100.05078">eb Payments Interest Group</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="18" textLength="33.792969">Payment </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="33.355469" y="18" textLength="65.82422">Agent Conceptual </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="98.74219" y="18" textLength="42.683594">Architecture</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="28" textLength="54.6875">Author: Patrick </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="54.25" y="28" textLength="18.675781">Adler</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="72.48828" y="28" textLength="124.50781">, Federal Reserve Bank of Chicago</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="38" textLength="180.98828">Copyright 2015 Federal Reserve Bank of Chicago. </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="180.55078" y="38" textLength="72.472656">All Rights Reserved.</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="48" textLength="234.78516">Proprietary Information of the Federal Reserve Bank of Chicago – </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="58" textLength="152.96875">Subject to Use and Publication Restrictions</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="68" textLength="5.3359375">V</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="4.8984375" y="68" textLength="35.132812">ersion 0.1</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="0" y="78" textLength="26.691406">3/19/15</tspan></text><path d="M 231.26693 110.64323 L 519.76693 110.64323 C 520.8715 110.64323 521.76693 111.53866 521.76693 112.64323 L 521.76693 325.85417 C 521.76693 326.95874 520.8715 327.85417 519.76693 327.85417 L 231.26693 327.85417 C 230.16236 327.85417 229.26693 326.95874 229.26693 325.85417 L 229.26693 112.64323 C 229.26693 111.53866 230.16236 110.64323 231.26693 110.64323 Z" stroke="#333" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text transform="translate(234.26693 115.64323)" fill="black"><tspan font-family="Helvetica" font-size="14" font-weight="bold" x="90.55127" y="48" textLength="62.248047">Payment </tspan><tspan font-family="Helvetica" font-size="14" font-weight="bold" x="152.28662" y="48" textLength="39.66211">Agent</tspan></text><ellipse cx="302.26164" cy="158.65755" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="302.26164" cy="158.65755" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 294.20548 152.34392 L 310.03527 152.06545 C 310.58747 152.05574 311.04299 152.49551 311.0527 153.04771 L 311.21826 162.45874 C 311.22797 163.01094 310.7882 163.46646 310.236 163.47618 C 310.236 163.47618 310.236 163.47618 310.236 163.47618 L 294.40622 163.75465 C 293.85402 163.76436 293.3985 163.32459 293.38878 162.77239 L 293.22323 153.36135 C 293.21351 152.80915 293.65329 152.35363 294.20548 152.34392 C 294.20548 152.34392 294.20548 152.34392 294.20548 152.34392 Z" fill="white"/><path d="M 294.20548 152.34392 L 310.03527 152.06545 C 310.58747 152.05574 311.04299 152.49551 311.0527 153.04771 L 311.21826 162.45874 C 311.22797 163.01094 310.7882 163.46646 310.236 163.47618 C 310.236 163.47618 310.236 163.47618 310.236 163.47618 L 294.40622 163.75465 C 293.85402 163.76436 293.3985 163.32459 293.38878 162.77239 L 293.22323 153.36135 C 293.21351 152.80915 293.65329 152.35363 294.20548 152.34392 C 294.20548 152.34392 294.20548 152.34392 294.20548 152.34392 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 309.9162 154.95921 L 299.15074 154.91195 L 307.32958 150.336 Z" fill="white"/><path d="M 309.9162 154.95921 L 299.15074 154.91195 L 307.32958 150.336 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 309.30366 154.84548 L 300.345 154.80615 L 307.15116 150.9982 Z" fill="#3f3f3f"/><path d="M 309.30366 154.84548 L 300.345 154.80615 L 307.15116 150.9982 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 310.19163 155.25613 C 310.19163 155.37355 309.85722 155.46963 309.4485 155.46963 L 299.04457 155.46963 C 298.63585 155.46963 298.30144 155.37355 298.30144 155.25613 L 298.30144 154.82915 C 298.30144 154.71194 298.63585 154.61565 299.04457 154.61565 L 309.4485 154.61565 C 309.85722 154.61565 310.19163 154.71194 310.19163 154.82915 Z" fill="#3f3f3f"/><path d="M 310.19163 156.54492 C 310.19163 156.66234 309.85722 156.75842 309.4485 156.75842 L 299.04457 156.75842 C 298.63585 156.75842 298.30144 156.66234 298.30144 156.54492 L 298.30144 156.11794 C 298.30144 156.00073 298.63585 155.90444 299.04457 155.90444 L 309.4485 155.90444 C 309.85722 155.90444 310.19163 156.00073 310.19163 156.11794 Z" fill="#3f3f3f"/><path d="M 293.12521 163.88824 L 305.24564 167.62455 C 305.77342 167.78724 306.33316 167.49129 306.49585 166.96351 C 306.52565 166.86685 306.5406 166.76622 306.54022 166.66507 L 306.5006 156.37328 C 306.49891 155.9359 306.21317 155.55036 305.7952 155.42151 L 293.67476 151.68519 C 293.14698 151.5225 292.58725 151.81846 292.42455 152.34623 C 292.39475 152.442895 292.3798 152.54352 292.38018 152.64467 L 292.4198 162.93646 C 292.42149 163.37385 292.70723 163.75939 293.12521 163.88824 Z" fill="#3f3f3f"/><path d="M 293.12521 163.88824 L 305.24564 167.62455 C 305.77342 167.78724 306.33316 167.49129 306.49585 166.96351 C 306.52565 166.86685 306.5406 166.76622 306.54022 166.66507 L 306.5006 156.37328 C 306.49891 155.9359 306.21317 155.55036 305.7952 155.42151 L 293.67476 151.68519 C 293.14698 151.5225 292.58725 151.81846 292.42455 152.34623 C 292.39475 152.442895 292.3798 152.54352 292.38018 152.64467 L 292.4198 162.93646 C 292.42149 163.37385 292.70723 163.75939 293.12521 163.88824 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 293.81153 163.73148 L 304.5987 167.05679 C 305.12647 167.21948 305.68621 166.92353 305.8489 166.39575 C 305.87803 166.30128 305.89298 166.20301 305.89328 166.10416 L 305.92136 156.72962 C 305.92268 156.28971 305.63635 155.9006 305.21595 155.771 L 294.42878 152.44569 C 293.901 152.282995 293.34127 152.57895 293.17857 153.10673 C 293.14945 153.2012 293.1345 153.29946 293.1342 153.39832 L 293.10612 162.77286 C 293.1048 163.21277 293.39114 163.60188 293.81153 163.73148 Z" fill="white"/><path d="M 293.81153 163.73148 L 304.5987 167.05679 C 305.12647 167.21948 305.68621 166.92353 305.8489 166.39575 C 305.87803 166.30128 305.89298 166.20301 305.89328 166.10416 L 305.92136 156.72962 C 305.92268 156.28971 305.63635 155.9006 305.21595 155.771 L 294.42878 152.44569 C 293.901 152.282995 293.34127 152.57895 293.17857 153.10673 C 293.14945 153.2012 293.1345 153.29946 293.1342 153.39832 L 293.10612 162.77286 C 293.1048 163.21277 293.39114 163.60188 293.81153 163.73148 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><rect x="214.875" y="119.15028" width="26.533856" height="21" fill="silver"/><rect x="214.875" y="119.15028" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(219.875 122.65028)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".5970059" y="11" textLength="15.339844">R1</tspan></text><rect x="214.875" y="153.77528" width="26.533856" height="21" fill="silver"/><rect x="214.875" y="153.77528" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(219.875 157.27528)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".5970059" y="11" textLength="15.339844">R2</tspan></text><rect x="505.61068" y="119.15028" width="26.533856" height="21" fill="#3275fa"/><rect x="505.61068" y="119.15028" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(510.61068 122.65028)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".9280606" y="11" textLength="14.677734">S1</tspan></text><rect x="505.61068" y="150.92448" width="26.533856" height="21" fill="#3275fa"/><rect x="505.61068" y="150.92448" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(510.61068 154.42448)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".9280606" y="11" textLength="14.677734">S2</tspan></text><rect x="214.875" y="188.40028" width="26.533856" height="21" fill="silver"/><rect x="214.875" y="188.40028" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(219.875 191.90028)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".5970059" y="11" textLength="15.339844">R3</tspan></text><text transform="translate(560.375 176.77528)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="0" y="11" textLength="110.69531">Payer Functionality</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="25" textLength="92.04492">S1) Identify/Confi</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="92.04492" y="25" textLength="51.351562">rm Payee</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="39" textLength="72.01758">S2) Discover </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="71.80664" y="39" textLength="7.330078">T</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="77.80664" y="39" textLength="42.66797">erms.Of</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="120.26367" y="39" textLength="20.003906">fers</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="53" textLength="149.41992">S3) Provide Loyalty/Coupon</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="67" textLength="156.74414">S4) Create Payment Request</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="81" textLength="116.05078">S5) Initiation Services</tspan></text><text transform="translate(174.875 358.38542)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="0" y="11" textLength="105.339844">Core Functionality</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="25" textLength="22.669922">C1) </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="22.013672" y="25" textLength="149.43164">Authentication/Authorization</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="39" textLength="51.339844">C2) User </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="50.683594" y="39" textLength="81.38672">Agent Interface</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="53" textLength="152.73633">C3) Instrument Management</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="67" textLength="108.052734">C4) Ledger/Register</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="81" textLength="104.03906">C5) Payment Relay</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="95" textLength="66.01758">C6) Security</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="109" textLength="167.40234">C7) Provisioning/Administration</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="123" textLength="157.40039">C8) Synchronization Services</tspan></text><text transform="translate(18.75 176.77528)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="0" y="11" textLength="112.69922">Payee Functionality</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="25" textLength="141.38086">R1) Identify/Confrim Payer</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="39" textLength="65.36133">R2) Publish </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="65.15039" y="39" textLength="7.330078">T</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="71.15039" y="39" textLength="42.66797">erms/Of</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="113.60742" y="39" textLength="20.003906">fers</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="53" textLength="22.669922">R3) </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="22.013672" y="53" textLength="116.74219">Apply Loyalty/Coupon</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="67" textLength="137.40234">R4) Invoice Management </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="81" textLength="94.70508">R5) Reciept/Confi</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="94.70508" y="81" textLength="43.347656">rmation </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="95" textLength="111.375">R6) Loyalty/Rewards</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="109" textLength="3.3339844"> </tspan></text><text transform="translate(343.625 77.354167)" fill="white"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="white" x=".052734375" y="8" textLength="8.894531">[1]</tspan></text><text transform="translate(33.5 491.89583)" fill="#333"><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="14" textLength="19.455078">[1] </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="18.689453" y="14" textLength="9.3378906">A</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="27.261719" y="14" textLength="583.67285"> Payment agent is a set of payment related software that can run in any host container able to </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="31" textLength="199.24023">adhere to payment agent specifi</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="199.24023" y="31" textLength="428.76367">cation. Examples include, but are not limited to, Desktop Computers, </tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="0" y="48" textLength="155.62012">Mobile Devices, SAAS of</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="155.37402" y="48" textLength="161.04102">ferings, POS terminals, W</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="316.16895" y="48" textLength="225.62695">eb Browsers, Operating Systems, W</tspan><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="#333" x="541.2832" y="48" textLength="71.592773">atches, etc.</tspan></text><rect x="505.61068" y="182.69867" width="26.533856" height="21" fill="#3275fa"/><rect x="505.61068" y="182.69867" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(510.61068 186.19867)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".9280606" y="11" textLength="14.677734">S3</tspan></text><rect x="279.43116" y="184.96951" width="26.533856" height="21" fill="#333"/><rect x="279.43116" y="184.96951" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(284.43116 188.46951)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C1</tspan></text><rect x="316.97673" y="184.96951" width="26.533856" height="21" fill="#333"/><rect x="316.97673" y="184.96951" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(321.97673 188.46951)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C2</tspan></text><rect x="354.5223" y="184.96951" width="26.533856" height="21" fill="#333"/><rect x="354.5223" y="184.96951" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(359.5223 188.46951)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C3</tspan></text><rect x="392.06788" y="184.96951" width="26.533856" height="21" fill="#333"/><rect x="392.06788" y="184.96951" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(397.06788 188.46951)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C4</tspan></text><rect x="429.61345" y="184.96951" width="26.533856" height="21" fill="#333"/><rect x="429.61345" y="184.96951" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(434.61345 188.46951)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C5</tspan></text><text transform="translate(414.5 357.35417)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="0" y="11" textLength="174.04688">Payment System Functionality</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="25" textLength="164.08008">P1) Receive Payment Request</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="39" textLength="68.70117">P2) Execute </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="68.490234" y="39" textLength="7.330078">T</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="75.38086" y="39" textLength="221.44336">ransaction (Payment Scheme Integration)</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="53" textLength="50.021484">P3) Confi</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="50.021484" y="53" textLength="141.4043">rmation/Acknowledgement</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="0" y="67" textLength="80.021484">P4) Error Confl</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="80.021484" y="67" textLength="72.035156">ict Resolution</tspan></text><rect x="214.875" y="223.50076" width="26.533856" height="21" fill="silver"/><rect x="214.875" y="223.50076" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(219.875 227.00076)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".5970059" y="11" textLength="15.339844">R4</tspan></text><rect x="298.20395" y="100.74034" width="26.533856" height="21" fill="#c6f"/><rect x="298.20395" y="100.74034" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(303.20395 104.24034)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".9280606" y="11" textLength="14.677734">P1</tspan></text><rect x="335.74952" y="100.74034" width="26.533856" height="21" fill="#c6f"/><rect x="335.74952" y="100.74034" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(340.74952 104.24034)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".9280606" y="11" textLength="14.677734">P2</tspan></text><rect x="373.2951" y="100.74034" width="26.533856" height="21" fill="#c6f"/><rect x="373.2951" y="100.74034" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(378.2951 104.24034)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".9280606" y="11" textLength="14.677734">P3</tspan></text><rect x="410.84066" y="100.74034" width="26.533856" height="21" fill="#c6f"/><rect x="410.84066" y="100.74034" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(415.84066 104.24034)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x=".9280606" y="11" textLength="14.677734">P4</tspan></text><rect x="325.34114" y="218.38021" width="26.533856" height="21" fill="#333"/><rect x="325.34114" y="218.38021" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(330.34114 221.88021)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C6</tspan></text><rect x="505.61068" y="214.47287" width="26.533856" height="21" fill="#3275fa"/><rect x="505.61068" y="214.47287" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(510.61068 217.97287)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".9280606" y="11" textLength="14.677734">S4</tspan></text><rect x="214.875" y="257.65028" width="26.533856" height="21" fill="silver"/><rect x="214.875" y="257.65028" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(219.875 261.15028)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".5970059" y="11" textLength="15.339844">R5</tspan></text><rect x="214.875" y="288.44309" width="26.533856" height="21" fill="silver"/><rect x="214.875" y="288.44309" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(219.875 291.94309)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".5970059" y="11" textLength="15.339844">R6</tspan></text><rect x="506.32682" y="246.24707" width="26.533856" height="21" fill="#3275fa"/><rect x="506.32682" y="246.24707" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(511.32682 249.74707)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".9280606" y="11" textLength="14.677734">S5</tspan></text><rect x="362.25" y="218.38021" width="26.533856" height="21" fill="#333"/><rect x="362.25" y="218.38021" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(367.25 221.88021)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C7</tspan></text><rect x="399.15886" y="218.38021" width="26.533856" height="21" fill="#333"/><rect x="399.15886" y="218.38021" width="26.533856" height="21" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(404.15886 221.88021)" fill="white"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="white" x=".5970059" y="11" textLength="15.339844">C8</tspan></text><path d="M 761.625 19.375 L 920.25 19.375 C 922.7353 19.375 924.75 21.389719 924.75 23.875 L 924.75 451.88542 C 924.75 454.3707 922.7353 456.38542 920.25 456.38542 L 761.625 456.38542 C 759.1397 456.38542 757.125 454.3707 757.125 451.88542 L 757.125 23.875 C 757.125 21.389719 759.1397 19.375 761.625 19.375 Z" fill="#f8f8f8" fill-opacity=".78"/><path d="M 761.625 19.375 L 920.25 19.375 C 922.7353 19.375 924.75 21.389719 924.75 23.875 L 924.75 451.88542 C 924.75 454.3707 922.7353 456.38542 920.25 456.38542 L 761.625 456.38542 C 759.1397 456.38542 757.125 454.3707 757.125 451.88542 L 757.125 23.875 C 757.125 21.389719 759.1397 19.375 761.625 19.375 Z" stroke="#969696" stroke-opacity=".59" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003" stroke-dasharray="8,5"/><text transform="translate(842.31374 77.27198)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9873047" y="9" textLength="29.012695">Human</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="8.9941406" y="20" textLength="21.00586">Actor</tspan></text><path d="M 900.648 91.56911 C 900.63344 91.69366 900.52554 91.782897 900.4078 91.767507 L 898.6378 91.53652 C 898.5192 91.521564 898.43484 91.407435 898.4498 91.282884 L 898.7127 89.01473 C 898.72855 88.89018 898.8172 88.798695 898.91395 88.810923 C 899.0107 88.824056 899.0878 88.833114 899.0878 88.833114 L 899.02655 89.36211 L 900.5264 89.55731 L 900.58806 89.02877 L 900.7623 89.05051 C 900.85907 89.064097 900.9259 89.17551 900.91046 89.30006 Z M 900.39666 88.780124 L 900.3303 89.34807 L 899.2655 89.20993 L 899.3314 88.64199 Z M 897.97284 91.40201 L 895.53575 91.40201 L 895.53575 90.57137 C 895.53575 89.30006 895.1367 88.36345 894.4101 87.843516 C 894.6833 87.52286 895.07633 87.349394 895.5794 87.346224 L 895.50193 87.21352 C 895.4587 87.141057 895.52034 87.08354 895.63937 87.08354 L 895.82005 87.08354 C 895.9198 87.08354 896.0718 87.15102 896.1596 87.23798 L 897.0994 88.169607 L 898.04007 87.23798 C 898.127 87.15102 898.27086 87.08354 898.3612 87.08354 L 898.5252 87.08354 C 898.6438 87.08354 898.7046 87.14423 898.66047 87.218957 C 898.61595 87.29459 898.58 87.355736 898.58 87.355736 C 899.2839 87.40284 899.757 87.801396 899.95824 88.488 L 899.1383 88.38021 L 899.1182 88.555484 L 898.78764 88.51155 C 898.6438 88.49389 898.50504 88.68094 898.4755 88.931394 L 898.2143 91.17599 C 898.2002 91.30054 898.09187 91.40201 897.97284 91.40201 M 895.1851 93.567354 L 893.5919 93.567354 C 893.47844 93.077304 893.39323 92.56687 893.39323 92.132547 C 893.39323 91.169214 893.09266 92.406084 893.0443 93.567354 L 888.8012 93.567354 C 888.75326 92.406084 888.4518 91.169214 888.4518 92.132547 C 888.4518 92.56687 888.3662 93.077304 888.25445 93.567354 L 886.63515 93.567354 L 886.63515 90.57137 C 886.63515 88.85123 887.4144 87.843516 888.79735 87.75112 C 888.79564 87.74614 889.2332 87.73346 889.2332 87.73346 C 889.5038 88.32903 890.08654 88.6832 890.8388 88.6832 C 891.68487 88.6832 892.283 88.34805 892.587 87.73346 C 893.00917 87.74478 893.0062 87.750217 893.0062 87.750217 C 894.4007 87.835815 895.1851 88.84444 895.1851 90.57137 Z M 890.85466 82.79905 C 892.20594 82.79905 892.85675 83.427693 892.85675 84.939936 C 892.85675 86.451733 892.20594 87.67775 890.85466 87.67775 C 889.50295 87.67775 888.8526 86.451733 888.8526 84.939936 C 888.8526 83.427693 889.50295 82.79905 890.85466 82.79905 M 897.08056 83.78231 C 898.02037 83.78231 898.4729 84.21844 898.4729 85.27101 C 898.4729 86.322657 898.02037 87.17457 897.08056 87.17457 C 896.1403 87.17457 895.68775 86.322657 895.68775 85.27101 C 895.68775 84.21844 896.1403 83.78231 897.08056 83.78231 M 893.17444 74.854167 C 886.12604 74.854167 880.41096 80.897307 880.41096 88.353487 C 880.41096 95.809677 886.12604 101.854167 893.17444 101.854167 C 900.22326 101.854167 905.9375 95.809677 905.9375 88.353487 C 905.9375 80.897307 900.22326 74.854167 893.17444 74.854167" fill="#3c3c3b"/><ellipse cx="892.5677" cy="132.62619" rx="12.7968954" ry="12.7720444" fill="#404040"/><ellipse cx="892.5677" cy="132.62619" rx="12.7968954" ry="12.7720444" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 894.9657 130.11472 L 898.6358 130.11472 L 898.6358 130.543055 L 894.9657 130.543055 Z M 894.9657 130.874024 L 898.6358 130.874024 L 898.6358 131.30236 L 894.9657 131.30236 Z M 894.96555 131.59908 L 898.6358 131.59908 L 898.6358 132.02741 L 894.96555 132.02741 Z M 899.0618 129.13785 L 894.53965 129.13785 C 894.3242 129.13785 894.1496 129.31013 894.1496 129.5227 L 894.1496 135.64895 C 894.1496 135.86152 894.3242 136.0338 894.53965 136.0338 L 899.0618 136.0338 C 899.27724 136.0338 899.45184 135.86152 899.45184 135.64895 L 899.45184 129.5227 C 899.45184 129.31013 899.27724 129.13785 899.0618 129.13785" fill="white"/><path d="M 887.276 128.79962 L 892.89927 128.79962 L 892.89927 129.455914 L 887.276 129.455914 Z M 887.276 129.96302 L 892.89927 129.96302 L 892.89927 130.61931 L 887.276 130.61931 Z M 887.2758 131.07394 L 892.89927 131.07394 L 892.89927 131.73023 L 887.2758 131.73023 Z M 893.55203 127.30287 L 886.6232 127.30287 C 886.29315 127.30287 886.02563 127.56684 886.02563 127.89253 L 886.02563 137.279116 C 886.02563 137.6048 886.29315 137.868775 886.6232 137.868775 L 893.55203 137.868775 C 893.8821 137.868775 894.1496 137.6048 894.1496 137.279116 L 894.1496 127.89253 C 894.1496 127.56684 893.8821 127.30287 893.55203 127.30287" fill="white"/><path d="M 887.276 128.79962 L 892.89927 128.79962 L 892.89927 129.455914 L 887.276 129.455914 Z M 887.276 129.96302 L 892.89927 129.96302 L 892.89927 130.61931 L 887.276 130.61931 Z M 887.2758 131.07394 L 892.89927 131.07394 L 892.89927 131.73023 L 887.2758 131.73023 Z M 893.55203 127.30287 L 886.6232 127.30287 C 886.29315 127.30287 886.02563 127.56684 886.02563 127.89253 L 886.02563 137.279116 C 886.02563 137.6048 886.29315 137.868775 886.6232 137.868775 L 893.55203 137.868775 C 893.8821 137.868775 894.1496 137.6048 894.1496 137.279116 L 894.1496 127.89253 C 894.1496 127.56684 893.8821 127.30287 893.55203 127.30287" stroke="#404040" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(837.79047 123.1599)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9941406" y="9" textLength="30.00586">System</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x="9.9941406" y="20" textLength="21.00586">Actor</tspan></text><text transform="translate(820.9375 37.854167)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="1.5386966" y="9" textLength="48.019043">User Agent)</tspan></text><circle cx="892.67057" cy="43.58724" r="13.266949" fill="#404040"/><circle cx="892.67057" cy="43.58724" r="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="883.96864" y="36.649002" width="17.426762" height="3.3655407" fill="white"/><rect x="888.6905" y="41.72817" width="12.704908" height="3.3655407" fill="white"/><rect x="888.6905" y="46.77648" width="12.704908" height="3.3655407" fill="white"/><rect x="883.96864" y="41.4972" width="3.3655407" height="8.6448203" fill="white"/><ellipse cx="892.77336" cy="176.58724" rx="13.1641644" ry="13.266949" fill="#404040"/><ellipse cx="892.77336" cy="176.58724" rx="13.1641644" ry="13.266949" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 884.7172 170.27361 L 900.547 169.99514 C 901.0992 169.98543 901.5547 170.4252 901.5644 170.9774 C 901.5644 170.9774 901.5644 170.9774 901.5644 170.9774 L 901.72997 180.38843 C 901.7397 180.94063 901.2999 181.39615 900.7477 181.40587 L 884.91793 181.68433 C 884.36573 181.69405 883.9102 181.25428 883.9005 180.70208 C 883.9005 180.70208 883.9005 180.70208 883.9005 180.70208 L 883.73494 171.29104 C 883.72523 170.73884 884.165 170.28332 884.7172 170.27361 Z" fill="white"/><path d="M 884.7172 170.27361 L 900.547 169.99514 C 901.0992 169.98543 901.5547 170.4252 901.5644 170.9774 C 901.5644 170.9774 901.5644 170.9774 901.5644 170.9774 L 901.72997 180.38843 C 901.7397 180.94063 901.2999 181.39615 900.7477 181.40587 L 884.91793 181.68433 C 884.36573 181.69405 883.9102 181.25428 883.9005 180.70208 C 883.9005 180.70208 883.9005 180.70208 883.9005 180.70208 L 883.73494 171.29104 C 883.72523 170.73884 884.165 170.28332 884.7172 170.27361 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 900.4279 172.8889 L 889.66245 172.84164 L 897.8413 168.26569 Z" fill="white"/><path d="M 900.4279 172.8889 L 889.66245 172.84164 L 897.8413 168.26569 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 899.8154 172.77517 L 890.8567 172.73584 L 897.6629 168.92789 Z" fill="#3f3f3f"/><path d="M 899.8154 172.77517 L 890.8567 172.73584 L 897.6629 168.92789 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 900.70335 173.18582 C 900.70335 173.30324 900.36894 173.39932 899.9602 173.39932 L 889.5563 173.39932 C 889.14757 173.39932 888.81315 173.30324 888.81315 173.18582 L 888.81315 172.75884 C 888.81315 172.64163 889.14757 172.54534 889.5563 172.54534 L 899.9602 172.54534 C 900.36894 172.54534 900.70335 172.64163 900.70335 172.75884 Z" fill="#3f3f3f"/><path d="M 900.70335 174.47461 C 900.70335 174.59203 900.36894 174.68811 899.9602 174.68811 L 889.5563 174.68811 C 889.14757 174.68811 888.81315 174.59203 888.81315 174.47461 L 888.81315 174.04763 C 888.81315 173.93042 889.14757 173.83413 889.5563 173.83413 L 899.9602 173.83413 C 900.36894 173.83413 900.70335 173.93042 900.70335 174.04763 Z" fill="#3f3f3f"/><path d="M 883.6369 181.81793 L 895.75736 185.55424 C 896.28513 185.71693 896.84487 185.42098 897.00757 184.8932 C 897.03737 184.79654 897.0523 184.69591 897.05194 184.59476 L 897.0123 174.30297 C 897.01063 173.86558 896.7249 173.48004 896.3069 173.3512 L 884.1865 169.61488 C 883.6587 169.45219 883.09896 169.74814 882.93627 170.27592 C 882.90647 170.37258 882.8915 170.47321 882.8919 170.57436 L 882.9315 180.86615 C 882.9332 181.30354 883.21895 181.68908 883.6369 181.81793 Z" fill="#3f3f3f"/><path d="M 883.6369 181.81793 L 895.75736 185.55424 C 896.28513 185.71693 896.84487 185.42098 897.00757 184.8932 C 897.03737 184.79654 897.0523 184.69591 897.05194 184.59476 L 897.0123 174.30297 C 897.01063 173.86558 896.7249 173.48004 896.3069 173.3512 L 884.1865 169.61488 C 883.6587 169.45219 883.09896 169.74814 882.93627 170.27592 C 882.90647 170.37258 882.8915 170.47321 882.8919 170.57436 L 882.9315 180.86615 C 882.9332 181.30354 883.21895 181.68908 883.6369 181.81793 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><path d="M 884.32325 181.66117 L 895.1104 184.98648 C 895.6382 185.14917 896.19793 184.85322 896.3606 184.32544 C 896.38975 184.23097 896.4047 184.1327 896.405 184.03385 L 896.4331 174.65931 C 896.4344 174.2194 896.14806 173.83029 895.72767 173.70069 L 884.9405 170.37538 C 884.4127 170.21268 883.853 170.50864 883.6903 171.03642 C 883.66117 171.13089 883.6462 171.22915 883.6459 171.32801 L 883.61784 180.70255 C 883.6165 181.14246 883.90285 181.53157 884.32325 181.66117 Z" fill="white"/><path d="M 884.32325 181.66117 L 895.1104 184.98648 C 895.6382 185.14917 896.19793 184.85322 896.3606 184.32544 C 896.38975 184.23097 896.4047 184.1327 896.405 184.03385 L 896.4331 174.65931 C 896.4344 174.2194 896.14806 173.83029 895.72767 173.70069 L 884.9405 170.37538 C 884.4127 170.21268 883.853 170.50864 883.6903 171.03642 C 883.66117 171.13089 883.6462 171.22915 883.6459 171.32801 L 883.61784 180.70255 C 883.6165 181.14246 883.90285 181.53157 884.32325 181.66117 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="0"/><text transform="translate(807.2495 170.85417)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4633789" y="9" textLength="61.53662">Payment Agent</tspan></text><text transform="translate(813.4375 279.85417)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".47216797" y="9" textLength="52.527832">Payment info</tspan></text><text transform="translate(820.9375 361.79242)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="22.505175" y="9" textLength="23.510742">Payer</tspan></text><path d="M 876.73676 357.79116 L 903.8832 357.79116 L 903.8832 376.79368 L 876.73676 376.79368 Z" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="876.0953" y="357.79116" width="15.75" height="6.75" fill="#2f72ff"/><rect x="876.0953" y="357.79116" width="15.75" height="6.75" stroke="#2f72ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 876.73676 388.85164 L 903.8832 388.85164 L 903.8832 407.85417 L 876.73676 407.85417 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="876.34936" y="388.85164" width="15.75" height="6.75" fill="silver"/><rect x="876.34936" y="388.85164" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(820.9375 388.79242)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="20.496874" y="9" textLength="25.519043">Payee</tspan></text><text transform="translate(776.4375 315.85417)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".96240234" y="9" textLength="89.0376">Payment Confrimation</tspan></text><path d="M 904.9375 279.84347 C 904.9375 277.28576 904.65175 276.96932 902.5644 274.43807 L 902.5424 274.41188 C 900.444 271.85417 900.4222 271.85417 898.2687 271.85417 C 895.4013 271.85417 882.4375 271.85417 882.4375 271.85417 L 882.4375 298.85417 L 904.9375 298.85417 L 904.9375 279.84347 Z" fill="white"/><path d="M 904.9375 279.84347 C 904.9375 277.28576 904.65175 276.96932 902.5644 274.43807 L 902.5424 274.41188 C 900.444 271.85417 900.4222 271.85417 898.2687 271.85417 C 895.4013 271.85417 882.4375 271.85417 882.4375 271.85417 L 882.4375 298.85417 L 904.9375 298.85417 L 904.9375 279.84347 Z M 904.9375 279.7117 C 904.9375 277.28576 904.91545 277.28576 900.4222 277.28576 L 900.4222 277.28576 C 900.4222 271.88063 900.4222 271.85417 898.4006 271.85417" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="893.3982" cy="285.93025" rx="7.9607007" ry="7.9239257" fill="#404040"/><ellipse cx="893.3982" cy="285.93025" rx="7.9607007" ry="7.9239257" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(890.5589 279.35417)" fill="white"><tspan font-family="Helvetica" font-size="9" font-weight="bold" fill="white" x=".49731445" y="9" textLength="5.005371">$</tspan></text><path d="M 905.9375 317.84347 C 905.9375 315.28576 905.65175 314.96932 903.5644 312.43807 L 903.5424 312.41188 C 901.444 309.85417 901.4222 309.85417 899.2687 309.85417 C 896.4013 309.85417 883.4375 309.85417 883.4375 309.85417 L 883.4375 336.85417 L 905.9375 336.85417 L 905.9375 317.84347 Z" fill="white"/><path d="M 905.9375 317.84347 C 905.9375 315.28576 905.65175 314.96932 903.5644 312.43807 L 903.5424 312.41188 C 901.444 309.85417 901.4222 309.85417 899.2687 309.85417 C 896.4013 309.85417 883.4375 309.85417 883.4375 309.85417 L 883.4375 336.85417 L 905.9375 336.85417 L 905.9375 317.84347 Z M 905.9375 317.7117 C 905.9375 315.28576 905.91545 315.28576 901.4222 315.28576 L 901.4222 315.28576 C 901.4222 309.88063 901.4222 309.85417 899.4006 309.85417" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="894.2656" cy="324.6823" r="8.028609" fill="#404040"/><circle cx="894.2656" cy="324.6823" r="8.028609" stroke="#666" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 890.6268 325.44051 L 893.3321 327.7229 L 898.4948 322.39247" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="3"/><path d="M 904.9375 202.84347 C 904.9375 200.28576 904.65175 199.96932 902.5644 197.43807 L 902.5424 197.41188 C 900.444 194.85417 900.4222 194.85417 898.2687 194.85417 C 895.4013 194.85417 882.4375 194.85417 882.4375 194.85417 L 882.4375 221.85417 L 904.9375 221.85417 L 904.9375 202.84347 Z" fill="white"/><path d="M 904.9375 202.84347 C 904.9375 200.28576 904.65175 199.96932 902.5644 197.43807 L 902.5424 197.41188 C 900.444 194.85417 900.4222 194.85417 898.2687 194.85417 C 895.4013 194.85417 882.4375 194.85417 882.4375 194.85417 L 882.4375 221.85417 L 904.9375 221.85417 L 904.9375 202.84347 Z M 904.9375 202.71171 C 904.9375 200.28576 904.91545 200.28576 900.4222 200.28576 L 900.4222 200.28576 C 900.4222 194.88063 900.4222 194.85417 898.4006 194.85417" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="893.6875" cy="209.98837" rx="7.9835995" ry="7.9467188" fill="#404040"/><ellipse cx="893.6875" cy="209.98837" rx="7.9835995" ry="7.9467188" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 891.2736 210.64339 L 895.1514 210.64339 L 895.1514 210.64339" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 895.1514 210.64339 L 895.1514 210.64339 L 896.87484 207.0349" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><line x1="894.3897" y1="209.21616" x2="890.64264" y2="209.21616" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 894.82055 207.97741 L 894.82055 207.97741 L 890.30414 207.97741" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 895.31295 206.73867 L 895.31295 206.73867 L 889.76556 206.73867" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><path d="M 898.5983 206.60403 L 898.5983 206.60403 L 896.87484 206.60403" stroke="white" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><ellipse cx="891.1659" cy="212.51496" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="891.1659" cy="212.51496" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><ellipse cx="895.04366" cy="212.51496" rx=".8617315" ry=".8577507" fill="white"/><ellipse cx="895.04366" cy="212.51496" rx=".8617315" ry=".8577507" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(784.4375 204.48837)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9560547" y="9" textLength="81.043945">Goods and Services</tspan></text><text transform="translate(817.0712 240.85417)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="19.795907" y="9" textLength="28.516113">Invoice</tspan></text><path d="M 903.27635 241.84347 C 903.27635 239.28576 902.9906 238.96932 900.9033 236.43807 L 900.88123 236.41188 C 898.7829 233.85417 898.76105 233.85417 896.6076 233.85417 C 893.7402 233.85417 880.77635 233.85417 880.77635 233.85417 L 880.77635 260.85417 L 903.27635 260.85417 L 903.27635 241.84347 Z" fill="white"/><path d="M 903.27635 241.84347 C 903.27635 239.28576 902.9906 238.96932 900.9033 236.43807 L 900.88123 236.41188 C 898.7829 233.85417 898.76105 233.85417 896.6076 233.85417 C 893.7402 233.85417 880.77635 233.85417 880.77635 233.85417 L 880.77635 260.85417 L 903.27635 260.85417 L 903.27635 241.84347 Z M 903.27635 241.7117 C 903.27635 239.28576 903.2543 239.28576 898.76105 239.28576 L 898.76105 239.28576 C 898.76105 233.88063 898.76105 233.85417 896.73943 233.85417" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="872.0472" y="218.875" width="39.3125" height="39.3125" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image5.tiff" width="256" height="256" transform="translate(872.0472 218.875) scale(.15356445)"/></g><text transform="translate(766.375 24.375)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".48388672" y="9" textLength="30.032227">Legend</tspan></text><path d="M 876.73676 415.97514 L 903.8832 415.97514 L 903.8832 434.97766 L 876.73676 434.97766 Z" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><rect x="876.34936" y="415.97514" width="15.75" height="6.75" fill="#c6f"/><rect x="876.34936" y="415.97514" width="15.75" height="6.75" stroke="silver" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.3832 415.91592)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".9770508" y="9" textLength="68.02295">Payment System</tspan></text></g></g></svg>
--- a/latest/payment-agent/index.html Mon Dec 15 01:24:15 2014 -0500 +++ b/latest/payment-agent/index.html Wed May 06 21:40:48 2015 +0200 @@ -1,7 +1,7 @@ <!DOCTYPE html> <html> <head> - <title>Web Payments Payment Agent</title> + <title>Towards a Unified Architecture for Payments on the Web</title> <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/> <script src='../respec-w3c-common.js' class='remove'></script> <script src='../respec-webpayments.js' class='remove'></script> @@ -34,8 +34,13 @@ // editors, add as many as you like // only "name" is required editors: [ - { name: "Pat Doe", url: "http://patdoe.example.com/", - company: "ACME", companyURL: "http://acme.example.com/" }, + { + name: "Pat Adler", url: "", + company: "Federal Reserve Bank of Chicago", companyURL: "" }, + { + name: "Jörg Heuer", url: "", + company: "Deutsche Telekom", companyURL: "" }, + ], // authors, add as many as you like. @@ -75,23 +80,157 @@ <body> <section id='abstract'> <p> -Abstract goes here. +This document describes a conceptual unified architecture and set of communication/protocol standards for payments on the World Wide Web. The architecture and examples included in this document outline a set of core principles and abstractions required to achieve broad interoperability across the many and growing number of users and devices connected to the Web, as well as the core goals such as security, privacy, and user choice outlined in the W3C's Web Payments Charter. The document also includes practical examples of how the architecture could be used to achieve these goals which are based on the Web Payments IG Use Cases document. </p> </section> <section id='sotd'> <p> -Custom Status of the Document language goes here. + This document is in early draft state and is expected to rapidly evolve based on broad feedback and input from the Web Payments Interest Group </p> </section> + + + <section> <h2>Introduction</h2> + <section> <h3>Purpose of this document</h3> + This document is intended to outline key characteristics, requirements and desired goals of a unified architecture for payments and related services on the world wide web. This document and the conceptual architecture it is intended to describe are based on the use cases defined as part of the W3C's Web Payments Interest Group which can be found <a href="http://www.w3.org/TR/2015/WD-web-payments-use-cases-20150416/">here</a>. + </section> + <section> <h3>How this document is organized</h3> </section> +</section> +<section><h2>Summary Requirements</h2> + <section><h3>Functional Requirements</h3> +This goal of this section is to outline a high level, easy to understand description of summary requirements that the proposed architecture must provide to support unified payments on the web in a manner which also addresses the overarching goals outlined in the <a href="http://www.w3.org/2014/04/payments/webpayments_charter.html">W3C Web Payments Charter</a> . Requirements have been grouped into functional categories to: +<ul> + <li>facilitate readability of this document</li> + <li>outline and identify relevant or related standards specific to the category</li> + <li>communicate functional needs for additinal standards that may be needed to technical working groups</li> +</ul> + The functional requirements categories used by this document are: + <ul> + <li><b>UA</b> - User Agent:</li> + <li><b>IA</b> - Identity and Authentication</li> + <li><b>CA</b> - Credentials and Authorization</li> + <li><b>CS</b> - Digital Contracts and Signatures</li> + <li><b>LD</b> - Loyalty and Discounts</li> + <li><b>LA</b> - Ledgers and Accounting</li> + <li><b>T</b> - Taxation</li> + <li><b>FX</b> - Currency Conversion and Foreign Exchange</li> + <li><b>RI</b> - Receipts and Invoicing</li> + <li><b>PS</b> - Payment Messaging, Clearing and Settlement</li> + <li><b>DS</b> - Delivery and Shipping</li> + <li><b>SC</b> - Payment Scheduling and Calendering</li> + <li><b>RR</b> - Regulatory and Reporting</li> + <li><b>WA</b> - Wallet and Paymnet Instrument Provisioning and Administration</li> + <li><b>SA</b> - Security and Auditing</li> + </ul> + <p class="note">Following the introduction of categories above, this section will include a categorized table of mandatory list of core/functional requirements that the architecture must support. + <p id="summary_functional_requirements"></p> + <table> + <caption>Summary Functional Requirements</caption> + <thead> + <tr> + + <th id="category"> Category + <th id="requirement_id"> ID + <th id="requirement">Requirement + <th id="use_case_ref">Use Cases + <tbody> + <tr> + <td>IA + <td> 1 + <td> Payer and payee should not need to know each other’s account numbers to make a web payment + <td> Payer Privacy + <tr> + <td>IA + <td> 2 + <td> Payer and payee account data should not be disclosed at any point throughout the lifecycle of the payment + <td> Payer Privacy + </table> + + </p> + + +</section> + +<section><h3>Role Based Contextual Requirements</h3> + In addition to functional groupings of requirements, this document also identifies requirements which are based on the role or context of the actors in the payments process and which may be unique to the actors role in the process. The following roles/contexts have been identified for use in this document: + <ul> + <li><b>PC</b> - Payer Context</li> + <li><b>EC</b> - Payee Context</li> + <li><b>WP</b> - Wallet Provider Context</li> + <li><b>PS</b> - Payment System Context</li> + <li><b>RG</b> - Regulatory Context</li> + <li><b>TP</b> - Third Party Service Provider Context</li> + <p class="note">Not sure if this is better covered in the detailed use case illustration section below</p> + </ul> +</section> +<section><h3>Non-Functional and Aggregate Architecture Requirements</h3> + This section captures identified non-functional and aggregate architecture requirements which are required to support overarching goals such as security, interoperability, etc. + Non-Functional and Aggregate Architecture Requirements have been captured using the following categories: + <ul> + <li><b>KP</b> - Key Principles</li> + <li><b>SE</b> - Security</li> + <li><b>IO</b> - Interoperability</li> + <li><b>SC</b> - Scalability</li> + <li><b>ETC</b> - ETC</li> + <li><b>ETC</b> - ETC</li> + </ul> +</section> +</section> + +<section> <h2>Key Architecture Concepts and Terminology</h2> + <p>This section of the document will outline key concepts and terminology used to describe a unified architure for payments on the web. This architecture is might be deployed in context as part of a multi-user agent payment processing flow. For example, this section could include an overview of how specific user agents of the Payer such as a digital Wallet interact with specific user agents of the Payee such as a digital POS terminal and user agents of payment processors such as payment processing schemes to facilitate payment. </p> + <section><h3>Simple example</h3> + <p class="note">This section will contain one or more simple diagrams and descriptions which are intended to introduce key architecture concepts </p> + </section> + <section><h3>Key Concept: The Symetrical Web of Payments</h3> + <p class="note">This section will focus on illustrating the key architectural principle of Symetry of core capabilities</p> + </section> + <section><h3>Key Concept: Payment Relays</h3> + <p class="note">This section will focus on illustrating the key architectural principle that allows for multiple parties in the payment process to use one or more "agents" to facilitate the payments process</p> + </section> +</section> + </section> + + <section> + <h2>Detailed Requirements and Use Case Illustration</h2> + <section><h3>Negotiation of Payment Terms</h3> + <p class="note">This section will contain one or more simple diagrams and descriptions which are intended to illustrate key architecture concepts in the context of each phase of the payments process. It will also describe any specific architecture variations specific to use cases to help provide guidance to working groups and technical architecture groups that will be working on developing specifications and standards to meet the outlined requirements</p> + General Overview </br> + 1.1 Discovery of Offer</br> + 1.2 Agreement on Terms</br> + 1.3 Application of Marketing Elements</br> + </section> + <section><h3>Negotiation of Payment Instruments</h3> + General Overview </br> + 2.1 Discovery of Accepted Schemes</br> + 2.2 Selection of Payment Instruments</br.> + 2.3 Authentication to Access Instruments</section> + <section><h3>Payment Processing</h3> + General Overview</br> + 3.1 Initiation of Processing</br> + 3.2 Verification of Available Funds</br> + 3.3 Authorization of Transfer</br> + 3.4 Completion of Transfer</br> + </section> + <section><h3>Delivery of Product/Receipt and Refunds</h3> + General Overview</br> + 4.1 Delivery of Product</br> + 4.2 Delivery of Receipt</br> + 4.3 Refunds</br> + </section> + + + + <section> + <h2>Additional Use Cases and Examples</h2> + <p> + This section will include illustrations and walk throughs of the remainder of the Web Paymnets IG use-cases document - <section> - <h2>Introduction</h2> - <p> -Introduction goes here. - </p> - </section> - + </p> + </section> + </section> + <section> <h2>Acknowledgements</h2> @@ -104,6 +243,8 @@ </p> </section> + <section><h2>Appendix</h2></section> + <section><h3>Detailed Requirements Traceability Matrix</h3></section> </body> </html>
--- a/latest/respec-w3c-common.js Mon Dec 15 01:24:15 2014 -0500 +++ b/latest/respec-w3c-common.js Wed May 06 21:40:48 2015 +0200 @@ -1,14 +1,15 @@ -/* ReSpec 3.2.30 - Robin Berjon, http://berjon.com/ (@robinberjon) */ +/* ReSpec 3.2.47 - Robin Berjon, http://berjon.com/ (@robinberjon) */ /* Documentation: http://w3.org/respec/. */ /* See original source for licenses: https://github.com/darobin/respec. */ -respecVersion = '3.2.30'; -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,a,s,o,c,u,p=t&&t.split("/");r=p;var d=T.map,f=d&&d["*"];if(e&&"."===e.charAt(0))if(t){for(r=l(T.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(T.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(a=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,a))){s=n,o=r;break}if(s)break;!c&&f&&l(f,a)&&(c=l(f,a),u=r)}!s&&c&&(s=c,o=u),s&&(t.splice(0,o,s),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(T.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,a){var s,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,a),o=l($,c)),e&&(c?f=o&&o.normalize?o.normalize(e,function(e){return t(e,u,a)}):t(e,u,a):(f=t(e,u,a),e=i(f),c=e[0],f=e[1],r=!0,s=C.nameToUrl(f))),r=!c||o||r?"":"_unnormalized"+(q+=1),{prefix:c,name:f,parentMap:n,unnormalized:!!r,url:s,originalName:p,isDefine:d,id:(c?c+"!"+f:f)+r}}function o(e){var t=e.id,n=l(E,t);return n||(n=E[t]=new C.Module(e)),n}function c(e,t,n){var r=e.id,i=l(E,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(E,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 E[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 a=r.id,s=l(E,a);s&&!e.depMatched[i]&&!n[a]&&(l(t,a)?(e.defineDep(i,$[a]),e.check()):h(s,t,n))}),n[r]=!0)}function m(){var e,t,i,a,s=(i=1e3*T.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&&s)r(t)?c=a=!0:(o.push(t),n(t));else if(!i.inited&&i.fetched&&e.isDefine&&(c=!0,!e.prefix))return u=!1}),s&&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,{},{})}),s&&!a||!c||!z&&!da||S||(S=setTimeout(function(){S=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,k,S,T={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},E={},D={},N={},L=[],$={},M={},_=1,q=1;return k={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(T.pkgs,e.map.id);return(t?l(T.config,e.map.id+"/"+t.main):l(T.config,e.map.id))||{}},exports:$[e.map.id]}}},w=function(e){this.events=l(N,e.id)||{},this.map=e,this.shim=l(T.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(a){e=a}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(E,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(E,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(T.config,n)&&(T.config[l]=T.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,T))})),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(k,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=E[n],!s(k,n)&&r&&!r.enabled&&C.enable(e,this)})),F(this.pluginMaps,u(this,function(e){var t=l(E,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:T,contextName:e,registry:E,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=T.pkgs,n=T.shim,r={paths:!0,config:!0,map:!0};F(e,function(e,t){r[t]?"map"===t?(T.map||(T.map={}),Q(T[t],e,!0,!0)):Q(T[t],e,!0):T[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}),T.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,"")}}),T.pkgs=t),F(E,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(k,t)?k[t](E[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("."),a=e.split("/")[0];return-1!==i&&("."!==a&&".."!==a||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(E,e)}}),n||(i.undef=function(e){d();var t=a(e,n,!0),r=l(E,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(E,e.id)&&o(e).enable()},completeLoad:function(e){var t,n,i=l(T.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(E,e),!t&&!s($,e)&&n&&!n.inited){if(T.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,a,s,o,c;if(j.jsExtRegExp.test(e))s=e+(t||"");else{for(r=T.paths,i=T.pkgs,s=e.split("/"),o=s.length;o>0;o-=1){if(c=s.slice(0,o).join("/"),a=l(i,c),c=l(r,c)){I(c)&&(c=c[0]),s.splice(0,o,c);break}if(a){e=e===a.name?a.location+"/"+a.main:a.location,s.splice(0,o,e);break}}s=s.join("/"),s+=t||(/\?/.test(s)||n?"":".js"),s=("/"===s.charAt(0)||s.match(/^[\w\+\.\-]+:/)?"":T.baseUrl)+s}return T.urlArgs?s+((-1===s.indexOf("?")?"?":"&")+T.urlArgs):s},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,a="_";return!I(e)&&"string"!=typeof e&&(i=e,I(t)?(e=t,t=n,n=r):e=[]),i&&i.context&&(a=i.context),(r=l(E,a))||(r=E[a]=j.s.newContext(a)),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,s&&clearInterval(s),t())}function r(e){return l?e(c):u.push(e),r}var i,a,s,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),a=document.createElement("div");try{i=null===window.frameElement}catch(p){}a.doScroll&&i&&window.external&&(s=setInterval(function(){try{a.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=at.type(e);return at.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 at.each(e.match(ot)||[],function(e,n){t[n]=!0}),t}function i(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=at.expando+Math.random()}function a(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(a){}mt.set(e,n,r)}else r=t;return r}function s(){return!0}function o(){return!1}function l(){try{return U.activeElement}catch(e){}}function c(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function u(e,t,n){if(at.isFunction(t))return at.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return at.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(Nt.test(t))return at.filter(t,e,n);t=at.filter(t,e)}return at.grep(e,function(e){return tt.call(t,e)>=0!==n})}function p(e,t){return at.nodeName(e,"table")&&at.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,a,s,o,l,c;if(1===t.nodeType){if(gt.hasData(e)&&(a=gt.access(e),s=gt.set(t,a),c=a.events)){delete s.handle,s.events={};for(i in c)for(n=0,r=c[i].length;r>n;n++)at.event.add(t,i,c[i][n])}mt.hasData(e)&&(o=mt.access(e),l=at.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&&at.nodeName(e,n)?at.merge([e],r):r}function b(e,t){var n=t.nodeName.toLowerCase();"input"===n&&Ht.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"===at.css(e,"display")||!at.contains(e.ownerDocument,e)}function x(t){return e.getComputedStyle(t,null)}function w(e,t){for(var n,r,i,a=[],s=0,o=e.length;o>s;s++)r=e[s],r.style&&(a[s]=gt.get(r,"olddisplay"),n=r.style.display,t?(a[s]||"none"!==n||(r.style.display=""),""===r.style.display&&y(r)&&(a[s]=gt.access(r,"olddisplay",T(r.nodeName)))):a[s]||(i=y(r),(n&&"none"!==n||!i)&>.set(r,"olddisplay",i?n:at.css(r,"display"))));for(s=0;o>s;s++)r=e[s],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?a[s]||"":"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 k(e,t,n,r,i){for(var a=n===(r?"border":"content")?4:"width"===t?1:0,s=0;4>a;a+=2)"margin"===n&&(s+=at.css(e,n+Zt[a],!0,i)),r?("content"===n&&(s-=at.css(e,"padding"+Zt[a],!0,i)),"margin"!==n&&(s-=at.css(e,"border"+Zt[a]+"Width",!0,i))):(s+=at.css(e,"padding"+Zt[a],!0,i),"padding"!==n&&(s+=at.css(e,"border"+Zt[a]+"Width",!0,i)));return s}function S(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,a=x(e),s=at.support.boxSizing&&"border-box"===at.css(e,"boxSizing",!1,a);if(0>=i||null==i){if(i=Wt(e,t,a),(0>i||null==i)&&(i=e.style[t]),Vt.test(i))return i;r=s&&(at.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+k(e,t,n||(s?"border":"content"),r,a)+"px"}function T(e){var t=U,n=Yt[e];return n||(n=E(e,t),"none"!==n&&n||(Bt=(Bt||at("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Bt[0].contentWindow||Bt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=E(e,t),Bt.detach()),Yt[e]=n),n}function E(e,t){var n=at(t.createElement(e)).appendTo(t.body),r=at.css(n[0],"display");return n.remove(),r}function D(e,t,n,r){var i;if(at.isArray(t))at.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"!==at.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,a=t.toLowerCase().match(ot)||[];if(at.isFunction(n))for(;r=a[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 a(l){var c;return s[l]=!0,at.each(e[l]||[],function(e,l){var u=l(n,r,i);return"string"!=typeof u||o||s[u]?o?!(c=u):t:(n.dataTypes.unshift(u),a(u),!1)}),c}var s={},o=e===yn;return a(n.dataTypes[0])||!s["*"]&&a("*")}function R(e,n){var r,i,a=at.ajaxSettings.flatOptions||{};for(r in n)n[r]!==t&&((a[r]?e:i||(i={}))[r]=n[r]);return i&&at.extend(!0,e,i),e}function P(e,n,r){for(var i,a,s,o,l=e.contents,c=e.dataTypes;"*"===c[0];)c.shift(),i===t&&(i=e.mimeType||n.getResponseHeader("Content-Type"));if(i)for(a in l)if(l[a]&&l[a].test(i)){c.unshift(a);break}if(c[0]in r)s=c[0];else{for(a in r){if(!c[0]||e.converters[a+" "+c[0]]){s=a;break}o||(o=a)}s=s||o}return s?(s!==c[0]&&c.unshift(s),r[s]):t}function L(e,t,n,r){var i,a,s,o,l,c={},u=e.dataTypes.slice();if(u[1])for(s in e.converters)c[s.toLowerCase()]=e.converters[s];for(a=u.shift();a;)if(e.responseFields[a]&&(n[e.responseFields[a]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=a,a=u.shift())if("*"===a)a=l;else if("*"!==l&&l!==a){if(s=c[l+" "+a]||c["* "+a],!s)for(i in c)if(o=i.split(" "),o[1]===a&&(s=c[l+" "+o[0]]||c["* "+o[0]])){s===!0?s=c[i]:c[i]!==!0&&(a=o[0],u.unshift(o[1]));break}if(s!==!0)if(s&&e["throws"])t=s(t);else try{t=s(t)}catch(p){return{state:"parsererror",error:s?p:"No conversion from "+l+" to "+a}}}return{state:"success",data:t}}function j(){return setTimeout(function(){Nn=t}),Nn=at.now()}function I(e,t,n){for(var r,i=(In[t]||[]).concat(In["*"]),a=0,s=i.length;s>a;a++)if(r=i[a].call(n,t,e))return r}function $(e,t,n){var r,i,a=0,s=jn.length,o=at.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;for(var t=Nn||j(),n=Math.max(0,c.startTime+c.duration-t),r=n/c.duration||0,a=1-r,s=0,l=c.tweens.length;l>s;s++)c.tweens[s].run(a);return o.notifyWith(e,[c,a,n]),1>a&&l?n:(o.resolveWith(e,[c]),!1)},c=o.promise({elem:e,props:at.extend({},t),opts:at.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Nn||j(),duration:n.duration,tweens:[],createTween:function(t,n){var r=at.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(H(u,c.opts.specialEasing);s>a;a++)if(r=jn[a].call(c,e,u,c.opts))return r;return at.map(u,I,c),at.isFunction(c.opts.start)&&c.opts.start.call(e,c),at.fx.timer(at.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 H(e,t){var n,r,i,a,s;for(n in e)if(r=at.camelCase(n),i=t[r],a=e[n],at.isArray(a)&&(i=a[1],a=e[n]=a[0]),n!==r&&(e[r]=a,delete e[n]),s=at.cssHooks[r],s&&"expand"in s){a=s.expand(a),delete e[r];for(n in a)n in e||(e[n]=a[n],t[n]=i)}else t[r]=i}function M(e,n,r){var i,a,s,o,l,c,u=this,p={},d=e.style,f=e.nodeType&&y(e),h=gt.get(e,"fxshow");r.queue||(l=at._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--,at.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"===at.css(e,"display")&&"none"===at.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(a=n[i],Rn.exec(a)){if(delete n[i],s=s||"toggle"===a,a===(f?"hide":"show")){if("show"!==a||!h||h[i]===t)continue;f=!0}p[i]=h&&h[i]||at.style(e,i)}if(!at.isEmptyObject(p)){h?"hidden"in h&&(f=h.hidden):h=gt.access(e,"fxshow",{}),s&&(h.hidden=!f),f?at(e).show():u.done(function(){at(e).hide()}),u.done(function(){var t;gt.remove(e,"fxshow");for(t in p)at.style(e,t,p[t])});for(i in p)o=I(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 at.isWindow(e)?e:9===e.nodeType&&e.defaultView}var q,W,B=typeof t,z=e.location,U=e.document,G=U.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,at=function(e,t){return new at.fn.init(e,t,q)},st=/[+-]?(?:\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(){U.removeEventListener("DOMContentLoaded",ft,!1),e.removeEventListener("load",ft,!1),at.ready()};at.fn=at.prototype={jquery:Q,constructor:at,init:function(e,n,r){var i,a;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 at?n[0]:n,at.merge(this,at.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:U,!0)),ct.test(i[1])&&at.isPlainObject(n))for(i in n)at.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}return a=U.getElementById(i[2]),a&&a.parentNode&&(this.length=1,this[0]=a),this.context=U,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):at.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),at.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=at.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return at.each(this,e,t)},ready:function(e){return at.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(at.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},at.fn.init.prototype=at.fn,at.extend=at.fn.extend=function(){var e,n,r,i,a,s,o=arguments[0]||{},l=1,c=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},l=2),"object"==typeof o||at.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&&(at.isPlainObject(i)||(a=at.isArray(i)))?(a?(a=!1,s=r&&at.isArray(r)?r:[]):s=r&&at.isPlainObject(r)?r:{},o[n]=at.extend(u,s,i)):i!==t&&(o[n]=i));return o},at.extend({expando:"jQuery"+(Q+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===at&&(e.$=X),t&&e.jQuery===at&&(e.jQuery=V),at},isReady:!1,readyWait:1,holdReady:function(e){e?at.readyWait++:at.ready(!0)},ready:function(e){(e===!0?--at.readyWait:at.isReady)||(at.isReady=!0,e!==!0&&--at.readyWait>0||(W.resolveWith(U,[at]),at.fn.trigger&&at(U).trigger("ready").off("ready")))},isFunction:function(e){return"function"===at.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"!==at.type(e)||e.nodeType||at.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||U;var r=ct.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=at.buildFragment([e],t,i),i&&at(i).remove(),at.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)&&at.error("Invalid XML: "+e),n},noop:function(){},globalEval:function(e){var t,n=eval;e=at.trim(e),e&&(1===e.indexOf("use strict")?(t=U.createElement("script"),t.text=e,U.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,a=0,s=e.length,o=n(e);if(r){if(o)for(;s>a&&(i=t.apply(e[a],r),i!==!1);a++);else for(a in e)if(i=t.apply(e[a],r),i===!1)break}else if(o)for(;s>a&&(i=t.call(e[a],a,e[a]),i!==!1);a++);else for(a in e)if(i=t.call(e[a],a,e[a]),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))?at.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,a=0;if("number"==typeof r)for(;r>a;a++)e[i++]=n[a];else for(;n[a]!==t;)e[i++]=n[a++];return e.length=i,e},grep:function(e,t,n){var r,i=[],a=0,s=e.length;for(n=!!n;s>a;a++)r=!!t(e[a],a),n!==r&&i.push(e[a]);return i},map:function(e,t,r){var i,a=0,s=e.length,o=n(e),l=[];if(o)for(;s>a;a++)i=t(e[a],a,r),null!=i&&(l[l.length]=i);else for(a in e)i=t(e[a],a,r),null!=i&&(l[l.length]=i);return Z.apply([],l)},guid:1,proxy:function(e,n){var r,i,a;return"string"==typeof n&&(r=e[n],n=e,e=r),at.isFunction(e)?(i=et.call(arguments,2),a=function(){return e.apply(n||this,i.concat(et.call(arguments)))},a.guid=e.guid=e.guid||at.guid++,a):t},access:function(e,n,r,i,a,s,o){var l=0,c=e.length,u=null==r;if("object"===at.type(r)){a=!0;for(l in r)at.access(e,n,l,r[l],!0,s,o)}else if(i!==t&&(a=!0,at.isFunction(i)||(o=!0),u&&(o?(n.call(e,i),n=null):(u=n,n=function(e,t,n){return u.call(at(e),n)})),n))for(;c>l;l++)n(e[l],r,o?i:i.call(e[l],l,n(e[l],r)));return a?e:u?n.call(e):c?n(e[0],r):s},now:Date.now,swap:function(e,t,n,r){var i,a,s={};for(a in t)s[a]=e.style[a],e.style[a]=t[a];i=n.apply(e,r||[]);for(a in t)e.style[a]=s[a];return i}}),at.ready.promise=function(t){return W||(W=at.Deferred(),"complete"===U.readyState?setTimeout(at.ready):(U.addEventListener("DOMContentLoaded",ft,!1),e.addEventListener("load",ft,!1))),W.promise(t)},at.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){Y["[object "+t+"]"]=t.toLowerCase()}),q=at(U),function(e,t){function n(e,t,n,r){var i,a,s,o,l,c,u,p,h,m;if((t?t.ownerDocument||t:_)!==L&&P(t),t=t||L,n=n||[],!e||"string"!=typeof e)return n;if(1!==(o=t.nodeType)&&9!==o)return[];if(I&&!r){if(i=yt.exec(e))if(s=i[1]){if(9===o){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&O(t,a)&&a.id===s)return n.push(a),n}else{if(i[2])return et.apply(n,t.getElementsByTagName(e)),n;if((s=i[3])&&k.getElementsByClassName&&t.getElementsByClassName)return et.apply(n,t.getElementsByClassName(s)),n}if(k.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+=" ")>T.cacheLength&&delete e[t.shift()],e[n]=r}var t=[];return e}function i(e){return e[F]=!0,e}function a(e){var t=L.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null -}}function s(e,t){for(var n=e.split("|"),r=e.length;r--;)T.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,a=e([],n.length,t),s=a.length;s--;)n[i=a[s]]&&(n[i]=!(r[i]=n[i]))})})}function p(){}function d(e,t){var r,i,a,s,o,l,c,u=z[e+" "];if(u)return t?0:u.slice(0);for(o=e,l=[],c=T.preFilter;o;){(!r||(i=pt.exec(o)))&&(i&&(o=o.slice(i[0].length)||o),l.push(a=[])),r=!1,(i=dt.exec(o))&&(r=i.shift(),a.push({value:r,type:i[0].replace(ut," ")}),o=o.slice(r.length));for(s in T.filter)!(i=bt[s].exec(o))||c[s]&&!(i=c[s](i))||(r=i.shift(),a.push({value:r,type:s,matches:i}),o=o.slice(r.length));if(!r)break}return t?o.length:o?n.error(e):z(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,a=W++;return t.first?function(t,n,a){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,a)}:function(t,n,s){var o,l,c,u=q+" "+a;if(s){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,s))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===S)return o===!0}else if(l=c[r]=[u],l[1]=e(t,n,s)||S,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 a,s=[],o=0,l=e.length,c=null!=t;l>o;o++)(a=e[o])&&(!n||n(a,r,i))&&(s.push(a),c&&t.push(o));return s}function b(e,t,n,r,a,s){return r&&!r[F]&&(r=b(r)),a&&!a[F]&&(a=b(a,s)),i(function(i,s,o,l){var c,u,p,d=[],f=[],h=s.length,m=i||x(t||"*",o.nodeType?[o]:o,[]),b=!e||!i&&t?m:g(m,d,e,o,l),v=n?a||(i?e:h||r)?[]:s: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(a||e){if(a){for(c=[],u=v.length;u--;)(p=v[u])&&c.push(b[u]=p);a(null,v=[],c,l)}for(u=v.length;u--;)(p=v[u])&&(c=a?nt.call(i,p):d[u])>-1&&(i[c]=!(s[c]=p))}}else v=g(v===s?v.splice(h,v.length):v),a?a(null,s,v,l):et.apply(s,v)})}function v(e){for(var t,n,r,i=e.length,a=T.relative[e[0].type],s=a||T.relative[" "],o=a?1:0,l=h(function(e){return e===t},s,!0),c=h(function(e){return nt.call(t,e)>-1},s,!0),u=[function(e,n,r){return!a&&(r||n!==A)||((t=n).nodeType?l(e,n,r):c(e,n,r))}];i>o;o++)if(n=T.relative[e[o].type])u=[h(m(u),n)];else{if(n=T.filter[e[o].type].apply(null,e[o].matches),n[F]){for(r=++o;i>r&&!T.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,a=t.length>0,s=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||s&&T.find.TAG("*",u&&o.parentNode||o),C=q+=null==x?1:Math.random()||.1;for(y&&(A=o!==L&&o,S=r);null!=(p=w[b]);b++){if(s&&p){for(d=0;f=e[d++];)if(f(p,o,l)){c.push(p);break}y&&(q=C,S=++r)}a&&((p=!f&&p)&&m--,i&&v.push(p))}if(m+=b,a&&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 a?i(o):o}function x(e,t,r){for(var i=0,a=t.length;a>i;i++)n(e,t[i],r);return r}function w(e,t,n,r){var i,a,s,o,l,c=d(e);if(!r&&1===c.length){if(a=c[0]=c[0].slice(0),a.length>2&&"ID"===(s=a[0]).type&&k.getById&&9===t.nodeType&&I&&T.relative[a[1].type]){if(t=(T.find.ID(s.matches[0].replace(kt,St),t)||[])[0],!t)return n;e=e.slice(a.shift().value.length)}for(i=bt.needsContext.test(e)?0:a.length;i--&&(s=a[i],!T.relative[o=s.type]);)if((l=T.find[o])&&(r=l(s.matches[0].replace(kt,St),ft.test(a[0].type)&&t.parentNode||t))){if(a.splice(i,1),e=r.length&&f(a),!e)return et.apply(n,r),n;break}}return N(e,c)(r,t,!I,n,ft.test(e)),n}var C,k,S,T,E,D,N,A,R,P,L,j,I,$,H,M,O,F="sizzle"+-new Date,_=e.document,q=0,W=0,B=r(),z=r(),U=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]",st="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ot=st.replace("w","w#"),lt="\\["+it+"*("+st+")"+it+"*(?:([*^$|!~]?=)"+it+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ot+")|)|)"+it+"*\\]",ct=":("+st+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\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("^#("+st+")"),CLASS:RegExp("^\\.("+st+")"),TAG:RegExp("^("+st.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,kt=RegExp("\\\\([\\da-f]{1,6}"+it+"?|("+it+")|.)","ig"),St=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(Tt){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},k=n.support={},P=n.setDocument=function(e){var n=e?e.ownerDocument||e:_,r=n.defaultView;return n!==L&&9===n.nodeType&&n.documentElement?(L=n,j=n.documentElement,I=!D(n),r&&r.attachEvent&&r!==r.top&&r.attachEvent("onbeforeunload",function(){P()}),k.attributes=a(function(e){return e.className="i",!e.getAttribute("className")}),k.getElementsByTagName=a(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),k.getElementsByClassName=a(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),k.getById=a(function(e){return j.appendChild(e).id=F,!n.getElementsByName||!n.getElementsByName(F).length}),k.getById?(T.find.ID=function(e,t){if(typeof t.getElementById!==X&&I){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},T.filter.ID=function(e){var t=e.replace(kt,St);return function(e){return e.getAttribute("id")===t}}):(delete T.find.ID,T.filter.ID=function(e){var t=e.replace(kt,St);return function(e){var n=typeof e.getAttributeNode!==X&&e.getAttributeNode("id");return n&&n.value===t}}),T.find.TAG=k.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==X?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,a=t.getElementsByTagName(e);if("*"===e){for(;n=a[i++];)1===n.nodeType&&r.push(n);return r}return a},T.find.CLASS=k.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==X&&I?n.getElementsByClassName(e):t},H=[],$=[],(k.qsa=vt.test(n.querySelectorAll))&&(a(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||$.push("\\["+it+"*(?:value|"+rt+")"),e.querySelectorAll(":checked").length||$.push(":checked")}),a(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(",.*:")})),(k.matchesSelector=vt.test(M=j.webkitMatchesSelector||j.mozMatchesSelector||j.oMatchesSelector||j.msMatchesSelector))&&a(function(e){k.disconnectedMatch=M.call(e,"div"),M.call(e,"[s!='']:x"),H.push("!=",ct)}),$=$.length&&RegExp($.join("|")),H=H.length&&RegExp(H.join("|")),O=vt.test(j.contains)||j.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=j.compareDocumentPosition?function(e,t){if(e===t)return G=!0,0;var r=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return r?1&r||!k.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,a=e.parentNode,s=t.parentNode,l=[e],c=[t];if(e===t)return G=!0,0;if(!a||!s)return e===n?-1:t===n?1:a?-1:s?1:R?nt.call(R,e)-nt.call(R,t):0;if(a===s)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):L},n.matches=function(e,t){return n(e,null,null,t)},n.matchesSelector=function(e,t){if((e.ownerDocument||e)!==L&&P(e),t=t.replace(ht,"='$1']"),!(!k.matchesSelector||!I||H&&H.test(t)||$&&$.test(t)))try{var r=M.call(e,t);if(r||k.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return n(t,L,null,[e]).length>0},n.contains=function(e,t){return(e.ownerDocument||e)!==L&&P(e),O(e,t)},n.attr=function(e,n){(e.ownerDocument||e)!==L&&P(e);var r=T.attrHandle[n.toLowerCase()],i=r&&K.call(T.attrHandle,n.toLowerCase())?r(e,n,!I):t;return i===t?k.attributes||!I?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=!k.detectDuplicates,R=!k.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},E=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+=E(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=E(t);return n},T=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(kt,St),e[3]=(e[4]||e[5]||"").replace(kt,St),"~="===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(kt,St).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=B[e+" "];return t||(t=RegExp("(^|"+it+")"+e+"("+it+"|$)"))&&B(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 a=n.attr(i,e);return null==a?"!="===t:t?(a+="","="===t?a===r:"!="===t?a!==r:"^="===t?r&&0===a.indexOf(r):"*="===t?r&&a.indexOf(r)>-1:"$="===t?r&&a.slice(-r.length)===r:"~="===t?(" "+a+" ").indexOf(r)>-1:"|="===t?a===r||a.slice(0,r.length+1)===r+"-":!1):!0}},CHILD:function(e,t,n,r,i){var a="nth"!==e.slice(0,3),s="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=a!==s?"nextSibling":"previousSibling",g=t.parentNode,b=o&&t.nodeName.toLowerCase(),v=!l&&!o;if(g){if(a){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=[s?g.firstChild:g.lastChild],s&&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,a=T.pseudos[e]||T.setFilters[e.toLowerCase()]||n.error("unsupported pseudo: "+e);return a[F]?a(t):a.length>1?(r=[e,e,"",t],T.setFilters.hasOwnProperty(e.toLowerCase())?i(function(e,n){for(var r,i=a(e,t),s=i.length;s--;)r=nt.call(e,i[s]),e[r]=!(n[r]=i[s])}):function(e){return a(e,0,r)}):a}},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 a,s=r(e,null,i,[]),o=e.length;o--;)(a=s[o])&&(e[o]=!(t[o]=a))}):function(e,i,a){return t[0]=e,r(t,null,a,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||E(t)).indexOf(e)>-1}}),lang:i(function(e){return gt.test(e||"")||n.error("unsupported lang: "+e),e=e.replace(kt,St).toLowerCase(),function(t){var n;do if(n=I?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===j},focus:function(e){return e===L.activeElement&&(!L.hasFocus||L.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!T.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})}},T.pseudos.nth=T.pseudos.eq;for(C in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})T.pseudos[C]=l(C);for(C in{submit:!0,reset:!0})T.pseudos[C]=c(C);p.prototype=T.filters=T.pseudos,T.setFilters=new p,N=n.compile=function(e,t){var n,r=[],i=[],a=U[e+" "];if(!a){for(t||(t=d(e)),n=t.length;n--;)a=v(t[n]),a[F]?r.push(a):i.push(a);a=U(e,y(i,r))}return a},k.sortStable=F.split("").sort(V).join("")===F,k.detectDuplicates=G,P(),k.sortDetached=a(function(e){return 1&e.compareDocumentPosition(L.createElement("div"))}),a(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||s("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),k.attributes&&a(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||s("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),a(function(e){return null==e.getAttribute("disabled")})||s(rt,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),at.find=n,at.expr=n.selectors,at.expr[":"]=at.expr.pseudos,at.unique=n.uniqueSort,at.text=n.getText,at.isXMLDoc=n.isXML,at.contains=n.contains}(e);var ht={};at.Callbacks=function(e){e="string"==typeof e?ht[e]||r(e):at.extend({},e);var n,i,a,s,o,l,c=[],u=!e.once&&[],p=function(t){for(n=e.memory&&t,i=!0,l=s||0,s=0,o=c.length,a=!0;c&&o>l;l++)if(c[l].apply(t[0],t[1])===!1&&e.stopOnFalse){n=!1;break}a=!1,c&&(u?u.length&&p(u.shift()):n?c=[]:d.disable())},d={add:function(){if(c){var t=c.length;!function r(t){at.each(t,function(t,n){var i=at.type(n);"function"===i?e.unique&&d.has(n)||c.push(n):n&&n.length&&"string"!==i&&r(n)})}(arguments),a?o=c.length:n&&(s=t,p(n))}return this},remove:function(){return c&&at.each(arguments,function(e,t){for(var n;(n=at.inArray(t,c,n))>-1;)c.splice(n,1),a&&(o>=n&&o--,l>=n&&l--)}),this},has:function(e){return e?at.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],a?u.push(t):p(t)),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},at.extend({Deferred:function(e){var t=[["resolve","done",at.Callbacks("once memory"),"resolved"],["reject","fail",at.Callbacks("once memory"),"rejected"],["notify","progress",at.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return at.Deferred(function(n){at.each(t,function(t,a){var s=a[0],o=at.isFunction(e[t])&&e[t];i[a[1]](function(){var e=o&&o.apply(this,arguments);e&&at.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===r?n.promise():this,o?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?at.extend(e,r):r}},i={};return r.pipe=r.then,at.each(t,function(e,a){var s=a[2],o=a[3];r[a[1]]=s.add,o&&s.add(function(){n=o},t[1^e][2].disable,t[2][2].lock),i[a[0]]=function(){return i[a[0]+"With"](this===i?r:this,arguments),this},i[a[0]+"With"]=s.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,a=et.call(arguments),s=a.length,o=1!==s||e&&at.isFunction(e.promise)?s:0,l=1===o?e:at.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(s>1)for(t=Array(s),n=Array(s),r=Array(s);s>i;i++)a[i]&&at.isFunction(a[i].promise)?a[i].promise().done(c(i,r,a)).fail(l.reject).progress(c(i,n,t)):--o;return o||l.resolveWith(r,a),l.promise()}}),at.support=function(t){var n=U.createElement("input"),r=U.createDocumentFragment(),i=U.createElement("div"),a=U.createElement("select"),s=a.appendChild(U.createElement("option"));return n.type?(n.type="checkbox",t.checkOn=""!==n.value,t.optSelected=s.selected,t.reliableMarginRight=!0,t.boxSizingReliable=!0,t.pixelPosition=!1,n.checked=!0,t.noCloneChecked=n.cloneNode(!0).checked,a.disabled=!0,t.optDisabled=!s.disabled,n=U.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,at(function(){var n,r,a="padding:0;margin:0;border:0;display:block;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box",s=U.getElementsByTagName("body")[0];s&&(n=U.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",s.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%",at.swap(s,null!=s.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(U.createElement("div")),r.style.cssText=i.style.cssText=a,r.style.marginRight=r.style.width="0",i.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),s.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,at.extend(e,t)}}return this.cache[n]||(this.cache[n]={}),n},set:function(e,t,n){var r,i=this.key(e),a=this.cache[i];if("string"==typeof t)a[t]=n;else if(at.isEmptyObject(a))at.extend(this.cache[i],t);else for(r in t)a[r]=t[r];return a},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,at.camelCase(n))):(this.set(e,n,r),r!==t?r:n)},remove:function(e,n){var r,i,a,s=this.key(e),o=this.cache[s];if(n===t)this.cache[s]={};else{at.isArray(n)?i=n.concat(n.map(at.camelCase)):(a=at.camelCase(n),n in o?i=[n,a]:(i=a,i=i in o?[i]:i.match(ot)||[])),r=i.length;for(;r--;)delete o[i[r]]}},hasData:function(e){return!at.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}},mt=new i,gt=new i,at.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)}}),at.fn.extend({data:function(e,n){var r,i,s=this[0],o=0,l=null;if(e===t){if(this.length&&(l=mt.get(s),1===s.nodeType&&!gt.get(s,"hasDataAttrs"))){for(r=s.attributes;r.length>o;o++)i=r[o].name,0===i.indexOf("data-")&&(i=at.camelCase(i.slice(5)),a(s,i,l[i]));gt.set(s,"hasDataAttrs",!0)}return l}return"object"==typeof e?this.each(function(){mt.set(this,e)}):at.access(this,function(n){var r,i=at.camelCase(e);if(s&&n===t){if(r=mt.get(s,e),r!==t)return r;if(r=mt.get(s,i),r!==t)return r;if(r=a(s,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)})}}),at.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=gt.get(e,n),r&&(!i||at.isArray(r)?i=gt.access(e,n,at.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=at.queue(e,t),r=n.length,i=n.shift(),a=at._queueHooks(e,t),s=function(){at.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete a.stop,i.call(e,s,a)),!r&&a&&a.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return gt.get(e,n)||gt.access(e,n,{empty:at.Callbacks("once memory").add(function(){gt.remove(e,[t+"queue",n])})})}}),at.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?at.queue(this[0],e):n===t?this:this.each(function(){var t=at.queue(this,e,n);at._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&at.dequeue(this,e)})},dequeue:function(e){return this.each(function(){at.dequeue(this,e)})},delay:function(e,t){return e=at.fx?at.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,a=at.Deferred(),s=this,o=this.length,l=function(){--i||a.resolveWith(s,[s])};for("string"!=typeof e&&(n=e,e=t),e=e||"fx";o--;)r=gt.get(s[o],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),a.promise(n)}});var yt,xt,wt=/[\t\r\n\f]/g,Ct=/\r/g,kt=/^(?:input|select|textarea|button)$/i;at.fn.extend({attr:function(e,t){return at.access(this,at.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){at.removeAttr(this,e)})},prop:function(e,t){return at.access(this,at.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[at.propFix[e]||e]})},addClass:function(e){var t,n,r,i,a,s=0,o=this.length,l="string"==typeof e&&e;if(at.isFunction(e))return this.each(function(t){at(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(ot)||[];o>s;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(wt," "):" ")){for(a=0;i=t[a++];)0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=at.trim(r)}return this},removeClass:function(e){var t,n,r,i,a,s=0,o=this.length,l=0===arguments.length||"string"==typeof e&&e;if(at.isFunction(e))return this.each(function(t){at(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(ot)||[];o>s;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(wt," "):"")){for(a=0;i=t[a++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");n.className=e?at.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):at.isFunction(e)?this.each(function(n){at(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n)for(var t,r=0,i=at(this),a=e.match(ot)||[];t=a[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else(n===B||"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,a=this[0];return arguments.length?(i=at.isFunction(e),this.each(function(r){var a;1===this.nodeType&&(a=i?e.call(this,r,at(this).val()):e,null==a?a="":"number"==typeof a?a+="":at.isArray(a)&&(a=at.map(a,function(e){return null==e?"":e+""})),n=at.valHooks[this.type]||at.valHooks[this.nodeName.toLowerCase()],n&&"set"in n&&n.set(this,a,"value")!==t||(this.value=a))})):a?(n=at.valHooks[a.type]||at.valHooks[a.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(a,"value"))!==t?r:(r=a.value,"string"==typeof r?r.replace(Ct,""):null==r?"":r)):void 0}}),at.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,a="select-one"===e.type||0>i,s=a?null:[],o=a?i+1:r.length,l=0>i?o:a?i:0;o>l;l++)if(n=r[l],!(!n.selected&&l!==i||(at.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&at.nodeName(n.parentNode,"optgroup"))){if(t=at(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,a=at.makeArray(t),s=i.length;s--;)r=i[s],(r.selected=at.inArray(at(r).val(),a)>=0)&&(n=!0);return n||(e.selectedIndex=-1),a}}},attr:function(e,n,r){var i,a,s=e.nodeType;return e&&3!==s&&8!==s&&2!==s?typeof e.getAttribute===B?at.prop(e,n,r):(1===s&&at.isXMLDoc(e)||(n=n.toLowerCase(),i=at.attrHooks[n]||(at.expr.match.bool.test(n)?xt:yt)),r===t?i&&"get"in i&&null!==(a=i.get(e,n))?a:(a=at.find.attr(e,n),null==a?t:a):null!==r?i&&"set"in i&&(a=i.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(at.removeAttr(e,n),t)):void 0},removeAttr:function(e,t){var n,r,i=0,a=t&&t.match(ot);if(a&&1===e.nodeType)for(;n=a[i++];)r=at.propFix[n]||n,at.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)},attrHooks:{type:{set:function(e,t){if(!at.support.radioValue&&"radio"===t&&at.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,a,s,o=e.nodeType;return e&&3!==o&&8!==o&&2!==o?(s=1!==o||!at.isXMLDoc(e),s&&(n=at.propFix[n]||n,a=at.propHooks[n]),r!==t?a&&"set"in a&&(i=a.set(e,r,n))!==t?i:e[n]=r:a&&"get"in a&&null!==(i=a.get(e,n))?i:e[n]):void 0},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||kt.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),xt={set:function(e,t,n){return t===!1?at.removeAttr(e,n):e.setAttribute(n,n),n}},at.each(at.expr.match.bool.source.match(/\w+/g),function(e,n){var r=at.expr.attrHandle[n]||at.find.attr;at.expr.attrHandle[n]=function(e,n,i){var a=at.expr.attrHandle[n],s=i?t:(at.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return at.expr.attrHandle[n]=a,s}}),at.support.optSelected||(at.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),at.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){at.propFix[this.toLowerCase()]=this}),at.each(["radio","checkbox"],function(){at.valHooks[this]={set:function(e,n){return at.isArray(n)?e.checked=at.inArray(at(e).val(),n)>=0:t}},at.support.checkOn||(at.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var St=/^key/,Tt=/^(?:mouse|contextmenu)|click/,Et=/^(?:focusinfocus|focusoutblur)$/,Dt=/^([^.]*)(?:\.(.+)|)$/;at.event={global:{},add:function(e,n,r,i,a){var s,o,l,c,u,p,d,f,h,m,g,b=gt.get(e);if(b){for(r.handler&&(s=r,r=s.handler,a=s.selector),r.guid||(r.guid=at.guid++),(c=b.events)||(c=b.events={}),(o=b.handle)||(o=b.handle=function(e){return typeof at===B||e&&at.event.triggered===e.type?t:at.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=at.event.special[h]||{},h=(a?d.delegateType:d.bindType)||h,d=at.event.special[h]||{},p=at.extend({type:h,origType:g,data:i,handler:r,guid:r.guid,selector:a,needsContext:a&&at.expr.match.needsContext.test(a),namespace:m.join(".")},s),(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)),a?f.splice(f.delegateCount++,0,p):f.push(p),at.event.global[h]=!0);e=null}},remove:function(e,t,n,r,i){var a,s,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=at.event.special[f]||{},f=(r?p.delegateType:p.bindType)||f,d=l[f]||[],o=o[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=a=d.length;a--;)u=d[a],!i&&m!==u.origType||n&&n.guid!==u.guid||o&&!o.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(d.splice(a,1),u.selector&&d.delegateCount--,p.remove&&p.remove.call(e,u));s&&!d.length&&(p.teardown&&p.teardown.call(e,h,g.handle)!==!1||at.removeEvent(e,f,g.handle),delete l[f])}else for(f in l)at.event.remove(e,f+t[c],n,r,!0);at.isEmptyObject(l)&&(delete g.handle,gt.remove(e,"events"))}},trigger:function(n,r,i,a){var s,o,l,c,u,p,d,f=[i||U],h=rt.call(n,"type")?n.type:n,m=rt.call(n,"namespace")?n.namespace.split("."):[];if(o=l=i=i||U,3!==i.nodeType&&8!==i.nodeType&&!Et.test(h+at.event.triggered)&&(h.indexOf(".")>=0&&(m=h.split("."),h=m.shift(),m.sort()),u=0>h.indexOf(":")&&"on"+h,n=n[at.expando]?n:new at.Event(h,"object"==typeof n&&n),n.isTrigger=a?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]:at.makeArray(r,[n]),d=at.event.special[h]||{},a||!d.trigger||d.trigger.apply(i,r)!==!1)){if(!a&&!d.noBubble&&!at.isWindow(i)){for(c=d.delegateType||h,Et.test(c+h)||(o=o.parentNode);o;o=o.parentNode)f.push(o),l=o; -l===(i.ownerDocument||U)&&f.push(l.defaultView||l.parentWindow||e)}for(s=0;(o=f[s++])&&!n.isPropagationStopped();)n.type=s>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&&at.acceptData(o)&&p.apply&&p.apply(o,r)===!1&&n.preventDefault();return n.type=h,a||n.isDefaultPrevented()||d._default&&d._default.apply(f.pop(),r)!==!1||!at.acceptData(i)||u&&at.isFunction(i[h])&&!at.isWindow(i)&&(l=i[u],l&&(i[u]=null),at.event.triggered=h,i[h](),at.event.triggered=t,l&&(i[u]=l)),n.result}},dispatch:function(e){e=at.event.fix(e);var n,r,i,a,s,o=[],l=et.call(arguments),c=(gt.get(this,"events")||{})[e.type]||[],u=at.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!u.preDispatch||u.preDispatch.call(this,e)!==!1){for(o=at.event.handlers.call(this,e,c),n=0;(a=o[n++])&&!e.isPropagationStopped();)for(e.currentTarget=a.elem,r=0;(s=a.handlers[r++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(s.namespace))&&(e.handleObj=s,e.data=s.data,i=((at.event.special[s.origType]||{}).handle||s.handler).apply(a.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,a,s,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++)s=n[r],a=s.selector+" ",i[a]===t&&(i[a]=s.needsContext?at(a,this).index(c)>=0:at.find(a,this,null,[c]).length),i[a]&&i.push(s);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,a,s=n.button;return null==e.pageX&&null!=n.clientX&&(r=e.target.ownerDocument||U,i=r.documentElement,a=r.body,e.pageX=n.clientX+(i&&i.scrollLeft||a&&a.scrollLeft||0)-(i&&i.clientLeft||a&&a.clientLeft||0),e.pageY=n.clientY+(i&&i.scrollTop||a&&a.scrollTop||0)-(i&&i.clientTop||a&&a.clientTop||0)),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},fix:function(e){if(e[at.expando])return e;var t,n,r,i=e.type,a=e,s=this.fixHooks[i];for(s||(this.fixHooks[i]=s=Tt.test(i)?this.mouseHooks:St.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new at.Event(a),t=r.length;t--;)n=r[t],e[n]=a[n];return e.target||(e.target=U),3===e.target.nodeType&&(e.target=e.target.parentNode),s.filter?s.filter(e,a):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&&at.nodeName(this,"input")?(this.click(),!1):t},_default:function(e){return at.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=at.extend(new at.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?at.event.trigger(i,null,t):at.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},at.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)},at.Event=function(e,n){return this instanceof at.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.getPreventDefault&&e.getPreventDefault()?s:o):this.type=e,n&&at.extend(this,n),this.timeStamp=e&&e.timeStamp||at.now(),this[at.expando]=!0,t):new at.Event(e,n)},at.Event.prototype={isDefaultPrevented:o,isPropagationStopped:o,isImmediatePropagationStopped:o,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=s,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=s,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=s,this.stopPropagation()}},at.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){at.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,a=e.handleObj;return(!i||i!==r&&!at.contains(r,i))&&(e.type=a.origType,n=a.handler.apply(this,arguments),e.type=t),n}}}),at.support.focusinBubbles||at.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){at.event.simulate(t,e.target,at.event.fix(e),!0)};at.event.special[t]={setup:function(){0===n++&&U.addEventListener(e,r,!0)},teardown:function(){0===--n&&U.removeEventListener(e,r,!0)}}}),at.fn.extend({on:function(e,n,r,i,a){var s,l;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(l in e)this.on(l,n,r,e[l],a);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===a&&(s=i,i=function(e){return at().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=at.guid++)),this.each(function(){at.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,a;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,at(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(a in e)this.off(a,n,e[a]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=o),this.each(function(){at.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){at.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?at.event.trigger(e,n,r,!0):t}});var Nt=/^.[^:#\[\.,]*$/,At=/^(?:parents|prev(?:Until|All))/,Rt=at.expr.match.needsContext,Pt={children:!0,contents:!0,next:!0,prev:!0};at.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(at(e).filter(function(){for(t=0;i>t;t++)if(at.contains(r[t],this))return!0}));for(t=0;i>t;t++)at.find(e,r[t],n);return n=this.pushStack(i>1?at.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t=at(e,this),n=t.length;return this.filter(function(){for(var e=0;n>e;e++)if(at.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)?at(e):e||[],!1).length},closest:function(e,t){for(var n,r=0,i=this.length,a=[],s=Rt.test(e)||"string"!=typeof e?at(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(s?s.index(n)>-1:1===n.nodeType&&at.find.matchesSelector(n,e))){n=a.push(n);break}return this.pushStack(a.length>1?at.unique(a):a)},index:function(e){return e?"string"==typeof e?tt.call(at(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?at(e,t):at.makeArray(e&&e.nodeType?[e]:e),r=at.merge(this.get(),n);return this.pushStack(at.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),at.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return at.dir(e,"parentNode")},parentsUntil:function(e,t,n){return at.dir(e,"parentNode",n)},next:function(e){return c(e,"nextSibling")},prev:function(e){return c(e,"previousSibling")},nextAll:function(e){return at.dir(e,"nextSibling")},prevAll:function(e){return at.dir(e,"previousSibling")},nextUntil:function(e,t,n){return at.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return at.dir(e,"previousSibling",n)},siblings:function(e){return at.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return at.sibling(e.firstChild)},contents:function(e){return e.contentDocument||at.merge([],e.childNodes)}},function(e,t){at.fn[e]=function(n,r){var i=at.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=at.filter(r,i)),this.length>1&&(Pt[e]||at.unique(i),At.test(e)&&i.reverse()),this.pushStack(i)}}),at.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?at.find.matchesSelector(r,e)?[r]:[]:at.find.matches(e,at.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){for(var i=[],a=r!==t;(e=e[n])&&9!==e.nodeType;)if(1===e.nodeType){if(a&&at(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 Lt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jt=/<([\w:]+)/,It=/<|&#?\w+;/,$t=/<(?:script|style|link)/i,Ht=/^(?:checkbox|radio)$/i,Mt=/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,at.fn.extend({text:function(e){return at.access(this,function(e){return e===t?at.text(this):this.empty().append((this[0]&&this[0].ownerDocument||U).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?at.filter(e,this):this,i=0;null!=(n=r[i]);i++)t||1!==n.nodeType||at.cleanData(g(n)),n.parentNode&&(t&&at.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&&(at.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 at.clone(this,e,t)})},html:function(e){return at.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[(jt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(Lt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(at.cleanData(g(n,!1)),n.innerHTML=e);n=0}catch(a){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=at.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),at(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,a,s,o,l,c=0,u=this.length,p=this,h=u-1,m=e[0],b=at.isFunction(m);if(b||!(1>=u||"string"!=typeof m||at.support.checkClone)&&Mt.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=at.buildFragment(e,this[0].ownerDocument,!1,!n&&this),i=r.firstChild,1===r.childNodes.length&&(r=i),i)){for(a=at.map(g(r,"script"),d),s=a.length;u>c;c++)o=r,c!==h&&(o=at.clone(o,!0,!0),s&&at.merge(a,g(o,"script"))),t.call(this[c],o,c);if(s)for(l=a[a.length-1].ownerDocument,at.map(a,f),c=0;s>c;c++)o=a[c],Ot.test(o.type||"")&&!gt.access(o,"globalEval")&&at.contains(l,o)&&(o.src?at._evalUrl(o.src):at.globalEval(o.textContent.replace(_t,"")))}return this}}),at.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){at.fn[e]=function(e){for(var n,r=[],i=at(e),a=i.length-1,s=0;a>=s;s++)n=s===a?this:this.clone(!0),at(i[s])[t](n),J.apply(r,n.get());return this.pushStack(r)}}),at.extend({clone:function(e,t,n){var r,i,a,s,o=e.cloneNode(!0),l=at.contains(e.ownerDocument,e);if(!(at.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||at.isXMLDoc(e)))for(s=g(o),a=g(e),r=0,i=a.length;i>r;r++)b(a[r],s[r]);if(t)if(n)for(a=a||g(e),s=s||g(o),r=0,i=a.length;i>r;r++)m(a[r],s[r]);else m(e,o);return s=g(o,"script"),s.length>0&&h(s,!l&&g(e,"script")),o},buildFragment:function(e,t,n,r){for(var i,a,s,o,l,c,u=0,p=e.length,d=t.createDocumentFragment(),f=[];p>u;u++)if(i=e[u],i||0===i)if("object"===at.type(i))at.merge(f,i.nodeType?[i]:i);else if(It.test(i)){for(a=a||d.appendChild(t.createElement("div")),s=(jt.exec(i)||["",""])[1].toLowerCase(),o=qt[s]||qt._default,a.innerHTML=o[1]+i.replace(Lt,"<$1></$2>")+o[2],c=o[0];c--;)a=a.lastChild;at.merge(f,a.childNodes),a=d.firstChild,a.textContent=""}else f.push(t.createTextNode(i));for(d.textContent="",u=0;i=f[u++];)if((!r||-1===at.inArray(i,r))&&(l=at.contains(i.ownerDocument,i),a=g(d.appendChild(i),"script"),l&&h(a),n))for(c=0;i=a[c++];)Ot.test(i.type||"")&&n.push(i);return d},cleanData:function(e){for(var n,r,a,s,o,l,c=at.event.special,u=0;(r=e[u])!==t;u++){if(i.accepts(r)&&(o=r[gt.expando],o&&(n=gt.cache[o]))){if(a=Object.keys(n.events||{}),a.length)for(l=0;(s=a[l])!==t;l++)c[s]?at.event.remove(r,s):at.removeEvent(r,s,n.handle);gt.cache[o]&&delete gt.cache[o]}delete mt.cache[r[mt.expando]]}},_evalUrl:function(e){return at.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),at.fn.extend({wrapAll:function(e){var t;return at.isFunction(e)?this.each(function(t){at(this).wrapAll(e.call(this,t))}):(this[0]&&(t=at(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 at.isFunction(e)?this.each(function(t){at(this).wrapInner(e.call(this,t))}):this.each(function(){var t=at(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=at.isFunction(e);return this.each(function(n){at(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){at.nodeName(this,"body")||at(this).replaceWith(this.childNodes)}).end()}});var Wt,Bt,zt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Gt=RegExp("^("+st+")(.*)$","i"),Vt=RegExp("^("+st+")(?!px)[a-z%]+$","i"),Xt=RegExp("^([+-])=("+st+")","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"];at.fn.extend({css:function(e,n){return at.access(this,function(e,n,r){var i,a,s={},o=0;if(at.isArray(n)){for(i=x(e),a=n.length;a>o;o++)s[n[o]]=at.css(e,n[o],!1,i);return s}return r!==t?at.style(e,n,r):at.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)?at(this).show():at(this).hide()})}}),at.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(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 a,s,o,l=at.camelCase(n),c=e.style;return n=at.cssProps[l]||(at.cssProps[l]=v(c,l)),o=at.cssHooks[n]||at.cssHooks[l],r===t?o&&"get"in o&&(a=o.get(e,!1,i))!==t?a:c[n]:(s=typeof r,"string"===s&&(a=Xt.exec(r))&&(r=(a[1]+1)*a[2]+parseFloat(at.css(e,n)),s="number"),null==r||"number"===s&&isNaN(r)||("number"!==s||at.cssNumber[l]||(r+="px"),at.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 a,s,o,l=at.camelCase(n);return n=at.cssProps[l]||(at.cssProps[l]=v(e.style,l)),o=at.cssHooks[n]||at.cssHooks[l],o&&"get"in o&&(a=o.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Qt&&(a=Qt[n]),""===r||r?(s=parseFloat(a),r===!0||at.isNumeric(s)?s||0:a):a}}),Wt=function(e,n,r){var i,a,s,o=r||x(e),l=o?o.getPropertyValue(n)||o[n]:t,c=e.style;return o&&(""!==l||at.contains(e.ownerDocument,e)||(l=at.style(e,n)),Vt.test(l)&&Ut.test(n)&&(i=c.width,a=c.minWidth,s=c.maxWidth,c.minWidth=c.maxWidth=c.width=l,l=o.width,c.width=i,c.minWidth=a,c.maxWidth=s)),l},at.each(["height","width"],function(e,n){at.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&zt.test(at.css(e,"display"))?at.swap(e,Kt,function(){return S(e,n,i)}):S(e,n,i):t},set:function(e,t,r){var i=r&&x(e);return C(e,t,r?k(e,n,r,at.support.boxSizing&&"border-box"===at.css(e,"boxSizing",!1,i),i):0)}}}),at(function(){at.support.reliableMarginRight||(at.cssHooks.marginRight={get:function(e,n){return n?at.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!at.support.pixelPosition&&at.fn.position&&at.each(["top","left"],function(e,n){at.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Vt.test(r)?at(e).position()[n]+"px":r):t}}})}),at.expr&&at.expr.filters&&(at.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight},at.expr.filters.visible=function(e){return!at.expr.filters.hidden(e)}),at.each({margin:"",padding:"",border:"Width"},function(e,t){at.cssHooks[e+t]={expand:function(n){for(var r=0,i={},a="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+Zt[r]+t]=a[r]||a[r-2]||a[0];return i}},Ut.test(e)||(at.cssHooks[e+t].set=C)});var en=/%20/g,tn=/\[\]$/,nn=/\r?\n/g,rn=/^(?:submit|button|image|reset|file)$/i,an=/^(?:input|select|textarea|keygen)/i;at.fn.extend({serialize:function(){return at.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=at.prop(this,"elements");return e?at.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!at(this).is(":disabled")&&an.test(this.nodeName)&&!rn.test(e)&&(this.checked||!Ht.test(e))}).map(function(e,t){var n=at(this).val();return null==n?null:at.isArray(n)?at.map(n,function(e){return{name:t.name,value:e.replace(nn,"\r\n")}}):{name:t.name,value:n.replace(nn,"\r\n")}}).get()}}),at.param=function(e,n){var r,i=[],a=function(e,t){t=at.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=at.ajaxSettings&&at.ajaxSettings.traditional),at.isArray(e)||e.jquery&&!at.isPlainObject(e))at.each(e,function(){a(this.name,this.value)});else for(r in e)D(r,e[r],n,a);return i.join("&").replace(en,"+")},at.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){at.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),at.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 sn,on,ln=at.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=at.fn.load,vn={},yn={},xn="*/".concat("*");try{on=z.href}catch(wn){on=U.createElement("a"),on.href="",on=on.href}sn=gn.exec(on.toLowerCase())||[],at.fn.load=function(e,n,r){if("string"!=typeof e&&bn)return bn.apply(this,arguments);var i,a,s,o=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l),e=e.slice(0,l)),at.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),o.length>0&&at.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){s=arguments,o.html(i?at("<div>").append(at.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){o.each(r,s||[e.responseText,t,e])}),this},at.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){at.fn[t]=function(e){return this.on(t,e)}}),at.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:on,type:"GET",isLocal:fn.test(sn[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":at.parseJSON,"text xml":at.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?R(R(e,at.ajaxSettings),t):R(at.ajaxSettings,e)},ajaxPrefilter:N(vn),ajaxTransport:N(yn),ajax:function(e,n){function r(e,n,r,o){var c,p,v,y,w,k=n;2!==x&&(x=2,l&&clearTimeout(l),i=t,s=o||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(y=P(d,C,r)),y=L(d,y,C,c),c?(d.ifModified&&(w=C.getResponseHeader("Last-Modified"),w&&(at.lastModified[a]=w),w=C.getResponseHeader("etag"),w&&(at.etag[a]=w)),204===e||"HEAD"===d.type?k="nocontent":304===e?k="notmodified":(k=y.state,p=y.data,v=y.error,c=!v)):(v=k,(e||!k)&&(k="error",0>e&&(e=0))),C.status=e,C.statusText=(n||k)+"",c?m.resolveWith(f,[p,k,C]):m.rejectWith(f,[C,k,v]),C.statusCode(b),b=t,u&&h.trigger(c?"ajaxSuccess":"ajaxError",[C,d,c?p:v]),g.fireWith(f,[C,k]),u&&(h.trigger("ajaxComplete",[C,d]),--at.active||at.event.trigger("ajaxStop")))}"object"==typeof e&&(n=e,e=t),n=n||{};var i,a,s,o,l,c,u,p,d=at.ajaxSetup({},n),f=d.context||d,h=d.context&&(f.nodeType||f.jquery)?at(f):at.event,m=at.Deferred(),g=at.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(s);)o[t[1].toLowerCase()]=t[2];t=o[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?s: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,sn[1]+"//"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=at.trim(d.dataType||"*").toLowerCase().match(ot)||[""],null==d.crossDomain&&(c=gn.exec(d.url.toLowerCase()),d.crossDomain=!(!c||c[1]===sn[1]&&c[2]===sn[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(sn[3]||("http:"===sn[1]?"80":"443")))),d.data&&d.processData&&"string"!=typeof d.data&&(d.data=at.param(d.data,d.traditional)),A(vn,d,n,C),2===x)return C;u=d.global,u&&0===at.active++&&at.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!hn.test(d.type),a=d.url,d.hasContent||(d.data&&(a=d.url+=(cn.test(a)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=pn.test(a)?a.replace(pn,"$1_="+ln++):a+(cn.test(a)?"&":"?")+"_="+ln++)),d.ifModified&&(at.lastModified[a]&&C.setRequestHeader("If-Modified-Since",at.lastModified[a]),at.etag[a]&&C.setRequestHeader("If-None-Match",at.etag[a])),(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(k){if(!(2>x))throw k;r(-1,k)}}else r(-1,"No Transport");return C},getJSON:function(e,t,n){return at.get(e,t,n,"json")},getScript:function(e,n){return at.get(e,t,n,"script")}}),at.each(["get","post"],function(e,n){at[n]=function(e,r,i,a){return at.isFunction(r)&&(a=a||i,i=r,r=t),at.ajax({url:e,type:n,dataType:a,data:r,success:i})}}),at.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return at.globalEval(e),e}}}),at.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),at.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=at("<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)}),U.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Cn=[],kn=/(=)\?(?=&|$)|\?\?/;at.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Cn.pop()||at.expando+"_"+ln++;return this[e]=!0,e}}),at.ajaxPrefilter("json jsonp",function(n,r,i){var a,s,o,l=n.jsonp!==!1&&(kn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&kn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(a=n.jsonpCallback=at.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(kn,"$1"+a):n.jsonp!==!1&&(n.url+=(cn.test(n.url)?"&":"?")+n.jsonp+"="+a),n.converters["script json"]=function(){return o||at.error(a+" was not called"),o[0]},n.dataTypes[0]="json",s=e[a],e[a]=function(){o=arguments},i.always(function(){e[a]=s,n[a]&&(n.jsonpCallback=r.jsonpCallback,Cn.push(a)),o&&at.isFunction(s)&&s(o[0]),o=s=t}),"script"):t}),at.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var Sn=at.ajaxSettings.xhr(),Tn={0:200,1223:204},En=0,Dn={};e.ActiveXObject&&at(e).on("unload",function(){for(var e in Dn)Dn[e]();Dn=t}),at.support.cors=!!Sn&&"withCredentials"in Sn,at.support.ajax=Sn=!!Sn,at.ajaxTransport(function(e){var n;return at.support.cors||Sn&&!e.crossDomain?{send:function(r,i){var a,s,o=e.xhr();if(o.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)o[a]=e.xhrFields[a];e.mimeType&&o.overrideMimeType&&o.overrideMimeType(e.mimeType),e.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(a in r)o.setRequestHeader(a,r[a]);n=function(e){return function(){n&&(delete Dn[s],n=o.onload=o.onerror=null,"abort"===e?o.abort():"error"===e?i(o.status||404,o.statusText):i(Tn[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[s=En++]=n("abort"),o.send(e.hasContent&&e.data||null)},abort:function(){n&&n()}}:t});var Nn,An,Rn=/^(?:toggle|show|hide)$/,Pn=RegExp("^(?:([+-])=|)("+st+")([a-z%]*)$","i"),Ln=/queueHooks$/,jn=[M],In={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Pn.exec(t),a=i&&i[3]||(at.cssNumber[e]?"":"px"),s=(at.cssNumber[e]||"px"!==a&&+r)&&Pn.exec(at.css(n.elem,e)),o=1,l=20;if(s&&s[3]!==a){a=a||s[3],i=i||[],s=+r||1;do o=o||".5",s/=o,at.style(n.elem,e,s+a);while(o!==(o=n.cur()/r)&&1!==o&&--l)}return i&&(s=n.start=+s||+r||0,n.unit=a,n.end=i[1]?s+(i[1]+1)*i[2]:+i[2]),n}]};at.Animation=at.extend($,{tweener:function(e,t){at.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,i=e.length;i>r;r++)n=e[r],In[n]=In[n]||[],In[n].unshift(t)},prefilter:function(e,t){t?jn.unshift(e):jn.push(e)}}),at.Tween=O,O.prototype={constructor:O,init:function(e,t,n,r,i,a){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=a||(at.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?at.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=at.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){at.fx.step[e.prop]?at.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[at.cssProps[e.prop]]||at.cssHooks[e.prop])?at.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)}},at.each(["toggle","show","hide"],function(e,t){var n=at.fn[t];at.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(F(t,!0),e,r,i)}}),at.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=at.isEmptyObject(e),a=at.speed(t,n,r),s=function(){var t=$(this,at.extend({},e),a);(i||gt.get(this,"finish"))&&t.stop(!0)};return s.finish=s,i||a.queue===!1?this.each(s):this.queue(a.queue,s)},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",a=at.timers,s=gt.get(this);if(n)s[n]&&s[n].stop&&i(s[n]);else for(n in s)s[n]&&s[n].stop&&Ln.test(n)&&i(s[n]);for(n=a.length;n--;)a[n].elem!==this||null!=e&&a[n].queue!==e||(a[n].anim.stop(r),t=!1,a.splice(n,1));(t||!r)&&at.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"],a=at.timers,s=r?r.length:0;for(n.finish=!0,at.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=a.length;t--;)a[t].elem===this&&a[t].queue===e&&(a[t].anim.stop(!0),a.splice(t,1));for(t=0;s>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),at.each({slideDown:F("show"),slideUp:F("hide"),slideToggle:F("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){at.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),at.speed=function(e,t,n){var r=e&&"object"==typeof e?at.extend({},e):{complete:n||!n&&t||at.isFunction(e)&&e,duration:e,easing:n&&t||t&&!at.isFunction(t)&&t};return r.duration=at.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in at.fx.speeds?at.fx.speeds[r.duration]:at.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){at.isFunction(r.old)&&r.old.call(this),r.queue&&at.dequeue(this,r.queue)},r},at.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},at.timers=[],at.fx=O.prototype.init,at.fx.tick=function(){var e,n=at.timers,r=0;for(Nn=at.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||at.fx.stop(),Nn=t},at.fx.timer=function(e){e()&&at.timers.push(e)&&at.fx.start()},at.fx.interval=13,at.fx.start=function(){An||(An=setInterval(at.fx.tick,at.fx.interval))},at.fx.stop=function(){clearInterval(An),An=null},at.fx.speeds={slow:600,fast:200,_default:400},at.fx.step={},at.expr&&at.expr.filters&&(at.expr.filters.animated=function(e){return at.grep(at.timers,function(t){return e===t.elem}).length}),at.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){at.offset.setOffset(this,e,t)});var n,r,i=this[0],a={top:0,left:0},s=i&&i.ownerDocument;return s?(n=s.documentElement,at.contains(n,i)?(typeof i.getBoundingClientRect!==B&&(a=i.getBoundingClientRect()),r=_(s),{top:a.top+r.pageYOffset-n.clientTop,left:a.left+r.pageXOffset-n.clientLeft}):a):void 0 -},at.offset={setOffset:function(e,t,n){var r,i,a,s,o,l,c,u=at.css(e,"position"),p=at(e),d={};"static"===u&&(e.style.position="relative"),o=p.offset(),a=at.css(e,"top"),l=at.css(e,"left"),c=("absolute"===u||"fixed"===u)&&(a+l).indexOf("auto")>-1,c?(r=p.position(),s=r.top,i=r.left):(s=parseFloat(a)||0,i=parseFloat(l)||0),at.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(d.top=t.top-o.top+s),null!=t.left&&(d.left=t.left-o.left+i),"using"in t?t.using.call(e,d):p.css(d)}},at.fn.extend({position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===at.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),at.nodeName(e[0],"html")||(r=e.offset()),r.top+=at.css(e[0],"borderTopWidth",!0),r.left+=at.css(e[0],"borderLeftWidth",!0)),{top:t.top-r.top-at.css(n,"marginTop",!0),left:t.left-r.left-at.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||G;e&&!at.nodeName(e,"html")&&"static"===at.css(e,"position");)e=e.offsetParent;return e||G})}}),at.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(n,r){var i="pageYOffset"===r;at.fn[n]=function(a){return at.access(this,function(n,a,s){var o=_(n);return s===t?o?o[r]:n[a]:(o?o.scrollTo(i?e.pageXOffset:s,i?s:e.pageYOffset):n[a]=s,t)},n,a,arguments.length,null)}}),at.each({Height:"height",Width:"width"},function(e,n){at.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){at.fn[i]=function(i,a){var s=arguments.length&&(r||"boolean"!=typeof i),o=r||(i===!0||a===!0?"margin":"border");return at.access(this,function(n,r,i){var a;return at.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(a=n.documentElement,Math.max(n.body["scroll"+e],a["scroll"+e],n.body["offset"+e],a["offset"+e],a["client"+e])):i===t?at.css(n,r,o):at.style(n,r,i,o)},n,s?i:t,s,null)}})}),at.fn.size=function(){return this.length},at.fn.andSelf=at.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=at:"function"==typeof define&&define.amd&&define("jquery",[],function(){return at}),"object"==typeof e&&"object"==typeof e.document&&(e.jQuery=e.$=at)}(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"),"respecVersion"in window&&respecVersion&&console.log("RESPEC Version: "+respecVersion)}),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;if(n=function(){if(!e.length){if(respecConfig.postProcess)for(var t=0;t<respecConfig.postProcess.length;t++)try{respecConfig.postProcess[t].apply(this)}catch(r){respecEvents.pub("error",r)}if(respecConfig.afterEnd)try{respecConfig.afterEnd.apply(window,Array.prototype.slice.call(arguments))}catch(r){respecEvents.pub("error",r)}return respecEvents.pub("end","core/base-runner"),void 0}var i=e.shift();if(i.run)try{i.run.call(i,respecConfig,document,n,respecEvents)}catch(r){respecEvents.pub("error",r),respecEvents.pub("end","unknown/with-error"),n()}else n()},respecConfig.preProcess)for(var r=0;r<respecConfig.preProcess.length;r++)try{respecConfig.preProcess[r].apply(this)}catch(i){respecEvents.pub("error",i)}n()}}}),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 a=n.target;"string"==typeof n.target&&(a=document.getElementById(n.target)),e=e.toLowerCase();var s=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 a=String.fromCharCode(code).toLowerCase();188==code&&(a=","),190==code&&(a=".");var s=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=s[p],p<s.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++:a==k?o++:l[a]&&r.shiftKey&&(a=l[a],a==k&&o++);return o!=s.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:s,target:a,event:n.type},a.addEventListener?a.addEventListener(n.type,s,!1):a.attachEvent?a.attachEvent("on"+n.type,s):a["on"+n.type]=s}},define("shortcut",function(e){return function(){var t;return t||e.shortcut}}(this)),define("core/ui",["jquery","shortcut"],function(e,t){var n,r,i,a,s,o,l=e("<div></div>").css({background:"#fff",border:"1px solid #000",width:"200px",display:"none",textAlign:"left",marginTop:"5px",marginRight:"5px"}),c=[],u=[],p={},d=function(t,n,r,a,s){n.push(t),p[r]||(p[r]=e("<button></button>").css({background:a,color:"#fff",fontWeight:"bold",border:"none",borderRadius:"5px",marginLeft:"5px"}).insertAfter(i).click(function(){for(var t=e("<ol></ol>"),r=0,i=n.length;i>r;r++){var a=n[r];a instanceof Error?e("<li><span></span> <a>⊞</a><pre></pre></li>").appendTo(t).find("span").text("["+a.name+"] "+a.message).end().find("a").css({fontSize:"1.1em",color:"#999",cursor:"pointer"}).click(function(){var t=e(this),n=t.text(),r=t.parent().find("pre");"⊞"===n?(t.text("⊟"),r.show()):(t.text("⊞"),r.hide())}).end().find("pre").text(a.stack).css({marginLeft:"0",maxWidth:"100%",overflowY:"hidden",overflowX:"scroll"}).hide().end():e("<li></li>").text(a).appendTo(t)}f.freshModal(s,t)})),p[r].text(n.length)},f={run:function(n,r,c,u){a=n,s=r,o=u,o.pub("start","core/ui");var d=e("<div id='respec-ui' class='removeOnSave'></div>",s).css({position:"fixed",top:"20px",right:"20px",width:"202px",textAlign:"right"}).appendTo(e("body",s));i=e("<button>ReSpec</button>").css({background:"#fff",fontWeight:"bold",border:"1px solid #ccc",borderRadius:"5px"}).click(function(){l.toggle()}).appendTo(d),l.appendTo(d),t.add("Esc",function(){f.closeModal()}),t.add("Ctrl+Alt+Shift+E",function(){p.error&&p.error.click()}),t.add("Ctrl+Alt+Shift+W",function(){p.warning&&p.warning.click()}),o.pub("end","core/ui"),c()},addCommand:function(n,r,i){var c=function(){l.hide(),require([r],function(e){e.show(f,a,s,o)})};e("<button></button>").css({background:"#fff",border:"none",borderBottom:"1px solid #ccc",width:"100%",textAlign:"left",fontSize:"inherit"}).text(n).click(c).appendTo(l),i&&t.add(i,c)},error:function(e){d(e,c,"error","#c00","Errors")},warning:function(e){d(e,u,"warning","#f60","Warnings")},closeModal:function(){r&&r.fadeOut(200,function(){r.remove(),r=null}),n&&(n.remove(),n=null)},freshModal:function(t,i){n&&n.remove(),r&&r.remove();var a=500;r=e("<div id='respec-overlay' class='removeOnSave'></div>").hide(),n=e("<div id='respec-modal' class='removeOnSave'><h3></h3><div class='inside'></div></div>").hide(),n.find("h3").text(t),n.find(".inside").append(i),e("body").append(r).append(n),r.click(this.closeModal).css({display:"block",opacity:0,position:"fixed",zIndex:1e4,top:"0px",left:"0px",height:"100%",width:"100%",background:"#000"}).fadeTo(200,.5),n.css({display:"block",position:"fixed",opacity:0,zIndex:11e3,left:"50%",marginLeft:-(a/2)+"px",top:"100px",background:"#fff",border:"5px solid #666",borderRadius:"5px",width:a+"px",padding:"0 20px 20px 20px",maxHeight:e(window).height()-150+"px",overflowY:"auto"}).fadeTo(200,1)}};return window.respecEvents&&respecEvents.sub("error",function(e){f.error(e)}),window.respecEvents&&respecEvents.sub("warn",function(e){f.warning(e)}),f}),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(";"),a=0,s=i.length;s>a;a++){var o=i[a].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="'+a(t.href)+'"'+(t.title?' title="'+a(t.title)+'"':"")+">"+f.lexer(e[1])+"</a>":'<img src="'+a(t.href)+'" alt="'+a(e[1])+'"'+(t.title?' title="'+a(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=a(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 a(e,t){return e.replace(t?/&/g:/&(?!#?\w+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function s(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,a,s,o,l,c,e=e.replace(/^ +$/gm,"");e;)if((a=d.newline.exec(e))&&(e=e.substring(a[0].length),a[0].length>1&&t.push({type:"space"})),a=d.code.exec(e))e=e.substring(a[0].length),a=a[0].replace(/^ {4}/gm,""),t.push({type:"code",text:g.pedantic?a:a.replace(/\n+$/,"")});else if(a=d.fences.exec(e))e=e.substring(a[0].length),t.push({type:"code",lang:a[2],text:a[3]});else if(a=d.heading.exec(e))e=e.substring(a[0].length),t.push({type:"heading",depth:a[1].length,text:a[2]});else if(a=d.lheading.exec(e))e=e.substring(a[0].length),t.push({type:"heading",depth:"="===a[2]?1:2,text:a[1]});else if(a=d.hr.exec(e))e=e.substring(a[0].length),t.push({type:"hr"});else if(a=d.blockquote.exec(e))e=e.substring(a[0].length),t.push({type:"blockquote_start"}),a=a[0].replace(/^ *> ?/gm,""),d.token(a,t,n),t.push({type:"blockquote_end"});else if(a=d.list.exec(e)){for(e=e.substring(a[0].length),t.push({type:"list_start",ordered:isFinite(a[2])}),a=a[0].match(d.item),r=!1,c=a.length,l=0;c>l;l++)s=a[l],o=s.length,s=s.replace(/^ *([*+-]|\d+\.) +/,""),~s.indexOf("\n ")&&(o-=s.length,s=g.pedantic?s.replace(/^ {1,4}/gm,""):s.replace(new RegExp("^ {1,"+o+"}","gm"),"")),i=r||/\n\n(?!\s*$)/.test(s),l!==c-1&&(r="\n"===s[s.length-1],i||(i=r)),t.push({type:i?"loose_item_start":"list_item_start"}),d.token(s,t),t.push({type:"list_item_end"});t.push({type:"list_end"})}else(a=d.html.exec(e))?(e=e.substring(a[0].length),t.push({type:g.sanitize?"paragraph":"html",pre:"pre"===a[1],text:a[0]})):n&&(a=d.def.exec(e))?(e=e.substring(a[0].length),t.links[a[1].toLowerCase()]={href:a[2],title:a[3]}):n&&(a=d.paragraph.exec(e))?(e=e.substring(a[0].length),t.push({type:"paragraph",text:a[0]})):(a=d.text.exec(e))&&(e=e.substring(a[0].length),t.push({type:"text",text:a[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]?s(o[1].substring(7)):s(o[1]),i=s("mailto:")+r):(r=a(o[1]),i=r),l+='<a href="'+i+'">'+r+"</a>";else if(o=f.url.exec(t))t=t.substring(o[0].length),r=a(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?a(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>"+a(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+=a(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),10)}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"),a=t(r);i.appendChild(r),n(a).appendChild(i),c[a]=i,c.length=a+1,u=i}function a(e,i){var a=r(e),s=a?t(a):1,o=n(s);a&&e.removeChild(a),e.appendChild(i(e)),a&&e.insertBefore(a,e.firstChild),o.appendChild(e),u=o}function s(e){u.appendChild(e)}function o(){return l}var l=e.createDocumentFragment(),c=[l],u=l,p=/H[1-6]/;return{addHeader:i,addSection:a,addElement:s,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,a=r.length;a>i;i++)t=r[i].length-2,("undefined"==typeof n||n>t)&&(n=t);var s=new RegExp("\n[ ]{0,"+n+"}","g");e=e.replace(s,"\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,a,s=e(n);i=t.firstChild;)if(1===i.nodeType)switch(a=i.tagName.toLowerCase()){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":s.addHeader(i);break;case"section":s.addSection(i,r);break;default:s.addElement(i)}else t.removeChild(i);return s.getRoot()}return r(t)},run:function(e,t,n,r){if(r.pub("start","core/markdown"),"markdown"===e.format){this.processSections(t);var i=$("#respec-ui"),a=this.structure(this.processBody(t),t);t.body.innerHTML="",t.body.appendChild(a),i.length&&$("#respec-ui").replaceWith(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(/\:/,""),a=r&&location.hostname,s=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,a=l.xdRegExp.exec(e);return a?(e=a[2],a=a[3],a=a.split(":"),i=a[1],a=a[0],!(e&&e!==t||a&&a!==n||(i||a)&&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,a,s)?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),a=t.moduleName+"."+t.ext,s=n.toUrl(t.moduleName+"."+t.ext)+".js";l.load(a,n,function(){var t=function(e){return r(s,e)};t.asModule=function(e,t){return r.asModule(e,s,t)},l.write(e,a,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),a=java.lang.System.getProperty("line.separator"),i=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(i),"utf-8")),s="";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(a),n.append(r);s=String(n.toString())}finally{i.close()}t(s)}),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: #C83500;\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\n@media print {\n .removeOnSave {\n display: none;\n }\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.extraCSS&&i.pub("warn","The 'extraCSS' configuration property is now deprecated."),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,a=this.attributes.length;a>i;i++){var s=this.attributes[i];r[0].setAttributeNS(s.namespaceURI,s.name,s.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 a=1,s=this[0].ownerDocument;if(e("#"+i,s).length){for(;e("#"+i+"-"+a,s).length;)a++;i+="-"+a}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,a=e.childNodes.length;a>i;++i)t(e.childNodes[i])}for(var n=[],r={},i=0,a=e.length;a>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()},removeReSpec:function(t){e(".remove, script[data-requiremodule]",t).remove()},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+/),a=0;a<i.length;a++){var s=i[a];if(window[s])try{e=window[s].apply(this,n)}catch(o){respecEvents.pub("warn","call to "+s+"() 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 a=t.specStatus;("FPWD"===a||"LC"===a||"WD-NOTE"===a||"LC-NOTE"===a)&&(a="WD"),"FPWD-NOTE"===a&&(a="WG-NOTE"),("finding"===a||"draft-finding"===a)&&(a="base");var s="https://";s+="unofficial"===a?"www.w3.org/StyleSheets/TR/w3c-unofficial":"base"===a?"www.w3.org/StyleSheets/TR/base":"CG-DRAFT"===a||"CG-FINAL"===a||"BG-DRAFT"===a||"BG-FINAL"===a?"www.w3.org/community/src/css/spec/"+a.toLowerCase()+".css":"www.w3.org/StyleSheets/TR/W3C-"+a,e.linkCSS(n,s),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="",a=toString.call(e);if(a===functionType&&(e=e.call(this)),e===!0)return r(this);if(e===!1||null==e)return n(this);if("[object Array]"===a){if(e.length>0)for(var s=0,o=e.length;o>s;s++)i+=r(e[s]);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 a=0,s=e.length;s>a;a++)i+=n(e[a]);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,a){var s=a.length-1;switch(i){case 1:return a[s-1]; -case 2:this.$=new r.ProgramNode(a[s-2],a[s]);break;case 3:this.$=new r.ProgramNode(a[s]);break;case 4:this.$=new r.ProgramNode([]);break;case 5:this.$=[a[s]];break;case 6:a[s-1].push(a[s]),this.$=a[s-1];break;case 7:this.$=new r.InverseNode(a[s-2],a[s-1],a[s]);break;case 8:this.$=new r.BlockNode(a[s-2],a[s-1],a[s]);break;case 9:this.$=a[s];break;case 10:this.$=a[s];break;case 11:this.$=new r.ContentNode(a[s]);break;case 12:this.$=new r.CommentNode(a[s]);break;case 13:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1]);break;case 14:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1]);break;case 15:this.$=a[s-1];break;case 16:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1]);break;case 17:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1],!0);break;case 18:this.$=new r.PartialNode(a[s-1]);break;case 19:this.$=new r.PartialNode(a[s-2],a[s-1]);break;case 20:break;case 21:this.$=[[a[s-2]].concat(a[s-1]),a[s]];break;case 22:this.$=[[a[s-1]].concat(a[s]),null];break;case 23:this.$=[[a[s-1]],a[s]];break;case 24:this.$=[[a[s]],null];break;case 25:a[s-1].push(a[s]),this.$=a[s-1];break;case 26:this.$=[a[s]];break;case 27:this.$=a[s];break;case 28:this.$=new r.StringNode(a[s]);break;case 29:this.$=new r.IntegerNode(a[s]);break;case 30:this.$=new r.BooleanNode(a[s]);break;case 31:this.$=new r.HashNode(a[s]);break;case 32:a[s-1].push(a[s]),this.$=a[s-1];break;case 33:this.$=[a[s]];break;case 34:this.$=[a[s-2],a[s]];break;case 35:this.$=[a[s-2],new r.StringNode(a[s])];break;case 36:this.$=[a[s-2],new r.IntegerNode(a[s])];break;case 37:this.$=[a[s-2],new r.BooleanNode(a[s])];break;case 38:this.$=new r.IdNode(a[s]);break;case 39:a[s-2].push(a[s]),this.$=a[s-2];break;case 40:this.$=[a[s]]}},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],a=[],s=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;a.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=s[h]&&s[h][d]),!("undefined"!=typeof m&&m.length&&m[0]||u)){x=[];for(b in s[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),a.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:a[a.length-(v||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(v||1)].first_column,last_column:a[a.length-1].last_column},g=this.performAction.call(w,o,c,l,this.yy,m[1],i,a),"undefined"!=typeof g)return g;v&&(r=r.slice(0,2*-1*v),i=i.slice(0,-1*v),a=a.slice(0,-1*v)),r.push(this.productions_[m[1]][0]),i.push(w.$),a.push(w._$),y=s[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 a=e[r];".."===a?n++:"."===a||"this"===a?this.isScoped=!0:t.push(a)}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,a,s=this.opcodes,o=[],l=0,c=s.length;c>l;l++)if(t=s[l],"DECLARE"===t)i=s[++l],a=s[++l],o.push("DECLARE "+i+" = "+a);else{r=e.DISASSEMBLE_MAP[t];for(var u=e.multiParamSize(t),p=[],d=0;u>d;d++)n=s[++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,a=r.length;a>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,a=e.opcodes;for(this.i=0,o=a.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,a,s=this.environment.opcodes,o=s[this.i+t];if("DECLARE"===o)return n=s[this.i+1],r=s[this.i+2],["DECLARE",n,r];n=e.DISASSEMBLE_MAP[o],i=e.multiParamSize(o),a=[];for(var l=0;i>l;l++)a.push(s[this.i+l+1+t]);return[n,a]},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,a=this.environment.depths.list.length;a>i;i++)r.push("depth"+this.environment.depths.list[i]);if(e)return r.push(this.source.join("\n ")),Function.apply(this,r);var s="function "+(this.name||"")+"("+r.join(",")+") {\n "+this.source.join("\n ")+"}";return Handlebars.log(Handlebars.logger.DEBUG,s+"\n\n"),s},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,a){var s,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++)s=this.popStack(),u.push(s),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,a,"{}"!==n)},populateCall:function(e,t,n,r,i){var a=["depth0"].concat(e).join(", "),s=["depth0"].concat(n).concat(e).join(", "),o=this.nextStack();if(this.usingKnownHelper)this.source.push(o+" = "+t+".call("+a+");");else{this.context.aliases.functionType='"function"';var l=i?"foundHelper && ":"";this.source.push("if("+l+"typeof "+t+" === functionType) { "+o+" = "+t+".call("+a+"); }")}r.call(this,o,s,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,a=0,s=i.length;s>a;a++){n=i[a],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,a=n.length;a>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(" "),a=t.RESERVED_WORDS={},s=0,o=i.length;o>s;s++)a[i[s]]=!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,a){if(options={helpers:r,partials:i,data:a},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,a){return t.load(e,r,function(t){a.isBuild&&a.inlineText&&(n[e]=t),i(a.isBuild?t:Handlebars.compile(t))},a)},write:function(e,r,i){if(r in n){var a=t.jsEscape(n[r]);i("define('"+e+"!"+r+"', ['handlebars'], function (hb) { return Handlebars.compile('"+a+"');});\n")}}}}),define("tmpl!w3c/templates/headers.html",["handlebars"],function(){return Handlebars.compile("<div class='head'>\n <p>\n {{#if logos}}\n {{showLogos logos}}\n {{else}}\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 {{/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 bugTrackerHTML}}\n <dt>Bug tracker:</dt>\n <dd>{{{bugTrackerHTML}}}</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 check the <a href=\"{{errata}}\"><strong>errata</strong></a> for any errors or issues\n reported since publication.\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 {{#if isCCBY}}\n <a href='http://www.w3.org/Consortium/Legal/2013/copyright-documents-dual.html'>document use</a>\n {{else}}\n <a href='http://www.w3.org/Consortium/Legal/copyright-documents'>document use</a>\n {{/if}}\n 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 {{{sotdCustomParagraph}}}\n {{else}}\n {{#if isNoTrack}}\n <p>\n This document is merely a W3C-internal {{#if isMO}}member-confidential{{/if}} document. It\n has no official standing of any kind and does not represent consensus of the W3C\n 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.\n Other documents may supersede this document. A list of current W3C publications and the\n latest revision of this technical report can be found in the <a\n href='http://www.w3.org/TR/'>W3C technical reports index</a> at\n http://www.w3.org/TR/.</em>\n </p>\n {{#unless sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}}\n {{/unless}}\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 {{#unless isPR}}\n If you wish to make comments regarding this document, please send them to \n <a href='mailto:{{wgPublicList}}@w3.org{{#if subjectPrefix}}?subject={{subjectPrefixEnc}}{{/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 {{/unless}}\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 to be\n stable and to encourage implementation by the developer community. This Candidate\n Recommendation is expected to advance to Proposed Recommendation no earlier than\n {{humanCREnd}}.\n {{/if}}\n {{#if isPER}}\n W3C Advisory Committee Members are invited to\n send formal review comments on this Proposed\n Edited Recommendation to the W3C Team until\n {{humanPEREnd}}. \n Members of the Advisory Committee will find the\n appropriate review form for this document by\n consulting their list of current\n <a href='https://www.w3.org/2002/09/wbs/myQuestionnaires'>WBS questionnaires</a>. \n {{/if}}\n {{#if isPR}}\n The W3C Membership and other interested parties are invited to review the document and\n 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}}. 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\n period that ended {{humanLCEnd}}.\n {{else}}\n {{#unless isPER}}\n All comments are welcome.\n {{/unless}}\n {{/if}}\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 {{#if sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}\n {{/if}}\n {{#if notRec}}\n <p>\n Publication as {{anOrA}} {{textStatus}} does not imply endorsement by the W3C\n Membership. This is a draft document and may be updated, replaced or obsoleted by other\n documents at any time. It is inappropriate to cite this document as other than work in\n progress.\n </p>\n {{/if}}\n {{#if isRec}}\n <p>\n This document has been reviewed by W3C Members, by software developers, and by other W3C\n groups and interested parties, and is endorsed by the Director as a W3C Recommendation.\n It is a stable document and may be used as reference material or cited from another\n document. W3C's role in making the Recommendation is to draw attention to the\n specification and to promote its widespread deployment. This enhances the functionality\n and interoperability of the Web.\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\n document has satisfied the relevant technical requirements and is sufficiently stable to\n 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 <a{{#if doRDFa}} id=\"sotd_patent\" about='' rel='w3p:patentRules'{{/if}}\n href='http://www.w3.org/Consortium/Patent-Policy-20040205/'>5 February 2004 W3C Patent\n Policy</a>.\n {{/unless}}\n {{#if recNotExpected}}\n The group does not expect this document to become a W3C Recommendation.\n {{/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\n disclosures</a> \n {{/if}}\n made in connection with the deliverables of the group; that page also includes\n instructions for disclosing a patent. An individual who has actual knowledge of a patent\n which the individual believes contains\n <a href='http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential'>Essential\n Claim(s)</a> must disclose the information in accordance with\n <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 isNewProcess}}\n <p>This document is governed by the <a id=\"w3c_process_revision\"\n href=\"http://www.w3.org/2014/Process-20140801/\">1 August 2014 W3C Process Document</a>.\n </p>\n {{else}}\n <p>\n This document is governed by the <a id=\"w3c_process_revision\"\n href=\"http://www.w3.org/2005/10/Process-20051014/\">14 October 2005 W3C Process Document</a>.\n </p>\n {{/if}}\n {{#if addPatentNote}}<p>{{{addPatentNote}}}</p>{{/if}}\n {{/if}}\n {{/if}}\n {{/if}}\n</section>\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 bugTrackerHTML}}\n <dt>Bug tracker:</dt>\n <dd>{{{bugTrackerHTML}}}</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 {{#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 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 {{#unless sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}}\n {{/unless}}\n {{#if wgPublicList}}\n <p>If you wish to make comments regarding this document, please send them to \n <a href='mailto:{{wgPublicList}}@w3.org{{#if subjectPrefix}}?subject={{subjectPrefixEnc}}{{/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\n email's subject{{/if}}.</p>\n {{/if}}\n {{#if sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}}\n {{/if}}\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,a){return Handlebars.registerHelper("showPeople",function(e,t){var n="",r="",i="",a="",s="",o="";this.doRDFa!==!1&&("Editor"===e?(n=" rel='bibo:editor'","1.0"!==this.doRDFa&&(n+=" inlist=''")):"Author"===e&&(n=" rel='dcterms:contributor'"),a=" property='foaf:name'",i=" rel='foaf:mbox'",r=" typeof='foaf:Person'",s=" 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+a+" content='"+p.name+"' href='"+p.url+"'>"+p.name+"</a>":"<a class='u-url url p-name fn' href='"+p.url+"'>"+p.name+"</a>":"<span"+a+" class='p-name fn'>"+p.name+"</span>",p.company&&(l+=", ",l+=p.companyURL?"<a"+s+" 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)}),Handlebars.registerHelper("showLogos",function(e){for(var t="<p>",n=0,r=e.length;r>n;n++){var i=e[n];i.url&&(t+="<a href='"+i.url+"'>"),i.id&&(t+="<span id='"+i.id+"'>"),i.src?(t+="<img src='"+i.src+"'",i.width&&(t+=" width='"+i.width+"'"),i.height&&(t+=" height='"+i.height+"'"),t+=i.alt?" alt='"+i.alt+"'":1==e.length?" alt='Logo'":" alt='Logo "+(n+1)+"'",t+="/>"):i.alt&&(t+=i.alt),i.url&&(t+="</a>"),i.id&&(t+="</span>")}return t+="</p>",new Handlebars.SafeString(t)}),{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:"Working Group 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 Report","CG-FINAL":"Final Community Group Report","BG-DRAFT":"Draft Business Group Report","BG-FINAL":"Final Business Group Report"},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,s,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&&"http://www.w3.org/2004/01/pp-impl/40318/status"===e.wgPatentURI,e.isCGBG=$.inArray(e.specStatus,this.cgbg)>=0,e.isCGFinal=e.isCGBG&&/G-FINAL$/.test(e.specStatus),e.isBasic="base"===e.specStatus,e.specStatus||l.pub("error","Missing required configuration: specStatus"),e.isCGBG||e.isBasic||e.shortName||l.pub("error","Missing required configuration: shortName"),e.title=s.title||"No Title",e.subtitle||(e.subtitle=""),e.publishDate?e.publishDate instanceof Date||(e.publishDate=t.parseSimpleDate(e.publishDate)):e.publishDate=t.parseLastModified(s.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.isBasic||(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.isBasic||(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||"":e.isBasic?"":"http://www.w3.org/TR/"+e.previousPublishDate.getFullYear()+"/"+u+"-"+e.shortName+"-"+t.concatDate(e.previousPublishDate)+"/"}else/NOTE$/.test(e.specStatus)||"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.bugTracker&&(e.bugTracker["new"]&&e.bugTracker.open?e.bugTrackerHTML="<a href='"+e.bugTracker["new"]+"'>file a bug</a>"+" (<a href='"+e.bugTracker.open+"'>open bugs</a>)":e.bugTracker.open?e.bugTrackerHTML="<a href='"+e.bugTracker.open+"'>open bugs</a>":e.bugTracker["new"]&&(e.bugTrackerHTML="<a href='"+e.bugTracker["new"]+"'>file a bug</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,/NOTE$/.test(e.specStatus)&&!e.prevVersion&&(e.showPreviousVersion=!1),e.isTagFinding&&(e.showPreviousVersion=e.previousPublishDate?!0:!1),e.notYetRec=e.isRecTrack&&"REC"!==e.specStatus,e.isRec=e.isRecTrack&&"REC"===e.specStatus,e.isRec&&!e.errata&&l.pub("error","Recommendations must have an errata link."),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.isPER="PER"===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.processVersion=e.processVersion||"2014",e.isNewProcess="2014"==e.processVersion,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",s).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.humanPEREnd=t.humanDate(e.perEnd||""),"PER"!==e.specStatus||e.perEnd||l.pub("error","Status is PER but no perEnd is specified"),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.subjectPrefix&&(e.subjectPrefixEnc=encodeURIComponent(e.subjectPrefix)),$(e.isCGBG?a(e):r(e)).insertAfter($("#abstract")),!e.implementationReportURI&&(e.isCR||e.isPR||e.isRec)&&l.pub("error","CR, PR, and REC documents need to have an implementationReportURI defined."),e.isTagFinding&&!e.sotdCustomParagraph&&l.pub("error","ReSpec does not support automated SotD generation for TAG findings, please specify one using a <code><section></code> element with ID=sotd."),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");if(i.length){if(0===i.find("p").length&&i.contents().wrapAll($("<p></p>")),i.prepend("<h2>Abstract</h2>"),i.addClass("introductory"),e.doRDFa!==!1){var a="dcterms:abstract",s=i.attr("property");s&&(a=s+" "+a),i.attr({property:a,datatype:""})}}else r.pub("error","Document must have one element with ID 'abstract'");r.pub("end","w3c/abstract"),n()}}}),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 id='respecRFC2119'>\n 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 a=$("#conformance");a.length&&a.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),a=r.attr("data-transform");r.removeAttr("data-transform");var s;try{s=e.runTransforms(r.html(),a)}catch(o){i.pub("error",o)}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 a=$("[data-include]"),s=a.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"),s--,0>=s&&(i.pub("end","w3c/data-include"),r())};s||(i.pub("end","w3c/data-include"),r()),a.each(function(){var t=$(this),r=t.attr("data-include"),a=t.attr("data-include-format")||"html",s=!!t.attr("data-include-replace"),l=!!t.attr("data-include-sync");$.ajax({dataType:a,url:r,async:!l,success:function(i){if(i){var l=t.attr("data-oninclude");l&&(i=e.runTransforms(i,l,r)),s?t.replaceWith("text"===a?n.createTextNode(i):i):"text"===a?t.text(i):t.html(i)}o(t)},error:function(e,n,a){i.pub("error","Error including URI="+r+": "+n+" ("+a+")"),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={}),e.respecRFC2119||(e.respecRFC2119={});var i={},a={};$("abbr[title]",t).each(function(){i[$(this).text()]=$(this).attr("title")}),$("acronym[title]",t).each(function(){a[$(this).text()]=$(this).attr("title")});var s=[];for(var o in i)s.push(o);for(var o in a)s.push(o);s.sort(function(e,t){return t.length<e.length?-1:e.length<t.length?1:0});for(var l=s.length?"(?:\\b"+s.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))g=g.split(/\s+/).join(" "),h.appendChild($("<em/>").attr({"class":"rfc2119",title:g}).text(g)[0]),e.respecRFC2119[g]?e.respecRFC2119[g]++:e.respecRFC2119[g]=1;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]):a[g]?$(d).parents("acronym").length?h.appendChild(t.createTextNode(g)):h.appendChild($("<acronym/>").attr({title:a[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("w3c/rfc2119",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","w3c/rfc2119");var a=$("#respecRFC2119");if(a.length){var s=Object.getOwnPropertyNames(t.respecRFC2119).sort();if(s&&s.length){var o="The ",l=function(e){var t="<em class='rfc2119' title='"+e+"'>"+e+"</em>";return t};o+=s.length>1?"key words "+e.joinAnd(s,l)+" are ":"key word "+e.joinAnd(s,l)+" is ",o+=a[0].innerHTML,a[0].innerHTML=o}else a.remove()}i.pub("end","w3c/rfc2119"),r()}}}),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,a){a.pub("start","core/examples");var s=$("pre.example, pre.illegal-example, aside.example"),o=0;s.length&&($(r).find("head link").first().before($("<style/>").text(e)),s.each(function(e,n){var r=$(n),i={number:o,illegal:r.hasClass("illegal-example")};if(r.is("aside")){o++;var s=t(r,o,i);r.prepend(s),a.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>"),s=t(r,l?0:o,i);f.append(s),f.append(r.clone()),r.replaceWith(f),l||a.pub("example",i)}})),a.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 a=$(".issue, .note");if(a.length){$(n).find("head link").first().before($("<style/>").text(e));var s=$(".issue[data-number]").length>0,o=0;a.each(function(e,r){var a=$(r),l=a.hasClass("issue"),c=a.hasClass("atrisk"),u="block"!=a.css("display"),p=a.attr("data-number"),d={inline:u,content:a.html()};if(d.type=l?"issue":"note",!l||u||s?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&&(s?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=a.attr("title"),d.title&&(h.append(n.createTextNode(": "+d.title)),a.removeAttr("title")),f.append(h),f.append(a.clone().removeClass(d.type).removeAttr("data-number")),a.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,i=$(this),a=i.attr("href");a&&(e=a.substring(1),t=$("#"+e),t.length?n=t.find("> a").text():(n="Req. not found '"+e+"'",r.pub("error","Requirement not found in a.reqRef: "+e)),i.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"});var IN_GLOBAL_SCOPE=!0;window.PR_SHOULD_USE_CONTINUATION=!0;var prettyPrintOne,prettyPrint;!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}function r(e){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=[],a="^"===r[0],s=["["];a&&s.push("^");for(var o=a?1:0,l=r.length;l>o;++o){var c=r[o];if(/\\[bdsw]/i.test(c))s.push(c);else{var u,p=t(c);l>o+2&&"-"===r[o+1]?(u=t(r[o+2]),o+=2):u=p,i.push([p,u]),65>u||p>122||(65>u||p>90||i.push([32|Math.max(65,p),32|Math.min(u,90)]),97>u||p>122||i.push([-33&Math.max(97,p),-33&Math.min(u,122)]))}}i.sort(function(e,t){return e[0]-t[0]||t[1]-e[1]});for(var d=[],f=[],o=0;o<i.length;++o){var h=i[o];h[0]<=f[1]+1?f[1]=Math.max(f[1],h[1]):d.push(f=h)}for(var o=0;o<d.length;++o){var h=d[o];s.push(n(h[0])),h[1]>h[0]&&(h[1]+1>h[0]&&s.push("-"),s.push(n(h[1])))}return s.push("]"),s.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")),i=t.length,o=[],l=0,c=0;i>l;++l){var u=t[l];if("("===u)++c;else if("\\"===u.charAt(0)){var p=+u.substring(1);p&&(c>=p?o[p]=-1:t[l]=n(p))}}for(var l=1;l<o.length;++l)-1===o[l]&&(o[l]=++a);for(var l=0,c=0;i>l;++l){var u=t[l];if("("===u)++c,o[c]||(t[l]="(?:");else if("\\"===u.charAt(0)){var p=+u.substring(1);p&&c>=p&&(t[l]="\\"+o[p])}}for(var l=0;i>l;++l)"^"===t[l]&&"^"!==t[l+1]&&(t[l]="");if(e.ignoreCase&&s)for(var l=0;i>l;++l){var u=t[l],d=u.charAt(0);u.length>=2&&"["===d?t[l]=r(u):"\\"!==d&&(t[l]=u.replace(/[a-zA-Z]/g,function(e){var t=e.charCodeAt(0);return"["+String.fromCharCode(-33&t,32|t)+"]"}))}return t.join("")}for(var a=0,s=!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,""))){s=!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,t){function n(e){var l=e.nodeType;if(1==l){if(r.test(e.className))return;for(var c=e.firstChild;c;c=c.nextSibling)n(c);var u=e.nodeName.toLowerCase();("br"===u||"li"===u)&&(i[o]="\n",s[o<<1]=a++,s[1|o++<<1]=e)}else if(3==l||4==l){var p=e.nodeValue;p.length&&(p=t?p.replace(/\r\n?/g,"\n"):p.replace(/[ \t\r\n]+/g," "),i[o]=p,s[o<<1]=a,a+=p.length,s[1|o++<<1]=e)}}var r=/(?:^|\s)nocode(?:\s|$)/,i=[],a=0,s=[],o=0;return n(e),{sourceCode:i.join("").replace(/\n$/,""),spans:s}}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?B.test(n.nodeValue)?e:t:t}return t===e?void 0:t}function i(t,r){var i,a={};!function(){for(var n=t.concat(r),s=[],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;)a[p.charAt(d)]=u;var f=u[1],h=""+f;o.hasOwnProperty(h)||(s.push(f),o[h]=null)}s.push(/[\0-\uffff]/),i=e(s)}();var s=r.length,o=function(e){for(var t=e.sourceCode,l=e.basePos,u=[l,$],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=a[b.charAt(0)];if(x)y=b.match(x[1]),v=x[0];else{for(var w=0;s>w;++w)if(x=r[w],y=b.match(x[1])){v=x[0];break}y||(v=$)}g=v.length>=5&&"lang-"===v.substring(0,5),!g||y&&"string"==typeof y[1]||(g=!1,v=O),g||(f[b]=v)}var C=p;if(p+=b.length,g){var k=y[1],S=b.indexOf(k),T=S+k.length;y[2]&&(T=b.length-y[2].length,S=T-k.length);var E=v.substring(5);n(l+C,b.substring(0,S),o,u),n(l+C+S,k,c(E,k),u),n(l+C+T,b.substring(T),o,u)}else u.push(l+C,v)}e.decorations=u};return o}function a(e){var t=[],n=[];e.tripleQuotedStrings?t.push([A,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""]):e.multiLineStrings?t.push([A,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"]):t.push([A,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"]),e.verbatimStrings&&n.push([A,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null]);var r=e.hashComments;r&&(e.cStyleComments?(r>1?t.push([P,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"]):t.push([P,/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"]),n.push([A,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null])):t.push([P,/^#[^\r\n]*/,null,"#"])),e.cStyleComments&&(n.push([P,/^\/\/[^\r\n]*/,null]),n.push([P,/^\/\*[\s\S]*?(?:\*\/|$)/,null]));var a=e.regexLiterals;if(a){var s=a>1?"":"\n\r",o=s?".":"[\\S\\s]",l="/(?=[^/*"+s+"])"+"(?:[^/\\x5B\\x5C"+s+"]"+"|\\x5C"+o+"|\\x5B(?:[^\\x5C\\x5D"+s+"]"+"|\\x5C"+o+")*(?:\\x5D|$))+"+"/";n.push(["lang-regex",RegExp("^"+W+"("+l+")")])}var c=e.types;c&&n.push([L,c]);var u=(""+e.keywords).replace(/^ | $/g,"");u.length&&n.push([R,new RegExp("^(?:"+u.replace(/[\s,]+/g,"|")+")\\b"),null]),t.push([$,/^\s+/,null," \r\n "]);var p="^.[^\\s\\w.$@'\"`/\\\\]*";return e.regexLiterals&&(p+="(?!s*/)"),n.push([j,/^@[a-z_$][a-z_$@0-9]*/i,null],[L,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[$,/^[a-z_$][a-z_$@0-9]*/i,null],[j,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[$,/^\\[\s\S]?/,null],[I,new RegExp(p),null]),i(t,n)}function s(e,t,n){function r(e){var t=e.nodeType;if(1!=t||a.test(e.className)){if((3==t||4==t)&&n){var l=e.nodeValue,c=l.match(s);if(c){var u=l.substring(0,c.index);e.nodeValue=u;var p=l.substring(c.index+c[0].length);if(p){var d=e.parentNode;d.insertBefore(o.createTextNode(p),e.nextSibling)}i(e),u||e.parentNode.removeChild(e)}}}else if("br"===e.nodeName)i(e),e.parentNode&&e.parentNode.removeChild(e);else for(var f=e.firstChild;f;f=f.nextSibling)r(f)}function i(e){function t(e,n){var r=n?e.cloneNode(!1):e,i=e.parentNode;if(i){var a=t(i,1),s=e.nextSibling;a.appendChild(r);for(var o=s;o;o=s)s=o.nextSibling,a.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;c.push(r)}for(var a=/(?:^|\s)nocode(?:\s|$)/,s=/\r\n?|\n/,o=e.ownerDocument,l=o.createElement("li");e.firstChild;)l.appendChild(e.firstChild);for(var c=[l],u=0;u<c.length;++u)r(c[u]);t===(0|t)&&c[0].setAttribute("value",t);var p=o.createElement("ol");p.className="linenums";for(var d=Math.max(0,0|t-1)||0,u=0,f=c.length;f>u;++u)l=c[u],l.className="L"+(u+d)%10,l.firstChild||l.appendChild(o.createTextNode(" ")),p.appendChild(l);e.appendChild(p)}function o(e){var t=/\bMSIE\s(\d+)/.exec(navigator.userAgent);t=t&&+t[1]<=8;var n=/\n/g,r=e.sourceCode,i=r.length,a=0,s=e.spans,o=s.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}u=c.length=d;var b,v=e.sourceNode;v&&(b=v.style.display,v.style.display="none");try{for(;o>l;){s[l];var y,x=s[l+2]||i,w=c[p+2]||i,g=Math.min(x,w),C=s[l+1];if(1!==C.nodeType&&(y=r.substring(a,g))){t&&(y=y.replace(n,"\r")),C.nodeValue=y;var k=C.ownerDocument,S=k.createElement("span");S.className=c[p+1];var T=C.parentNode;T.replaceChild(S,C),S.appendChild(C),x>a&&(s[l+1]=C=k.createTextNode(r.substring(g,x)),T.insertBefore(C,S.nextSibling))}a=g,a>=x&&(l+=2),a>=w&&(p+=2)}}finally{v&&(v.style.display=b)}}function l(e,t){for(var n=t.length;--n>=0;){var r=t[n];U.hasOwnProperty(r)?f.console&&console.warn("cannot override language handler %s",r):U[r]=e}}function c(e,t){return e&&U.hasOwnProperty(e)||(e=/^\s*</.test(t)?"default-markup":"default-code"),U[e]}function u(e){var n=e.langExtension;try{var r=t(e.sourceNode,e.pre),i=r.sourceCode;e.sourceCode=i,e.spans=r.spans,e.basePos=0,c(n,i)(e),o(e)}catch(a){f.console&&console.log(a&&a.stack||a)}}function p(e,t,n){var r=document.createElement("div");r.innerHTML="<pre>"+e+"</pre>",r=r.firstChild,n&&s(r,n,!0);var i={langExtension:t,numberLines:n,sourceNode:r,pre:1};return u(i),r.innerHTML}function d(e,t){function n(e){return a.getElementsByTagName(e)}function i(){for(var t=f.PR_SHOULD_USE_CONTINUATION?m.now()+250:1/0;b<c.length&&m.now()<t;b++){for(var n=c[b],a=S,l=n;l=l.previousSibling;){var p=l.nodeType,d=(7===p||8===p)&&l.nodeValue;if(d?!/^\??prettify\b/.test(d):3!==p||/\S/.test(l.nodeValue))break;if(d){a={},d.replace(/\b(\w+)=([\w:.%+-]+)/g,function(e,t,n){a[t]=n});break}}var h=n.className;if((a!==S||y.test(h))&&!x.test(h)){for(var T=!1,E=n.parentNode;E;E=E.parentNode){var D=E.tagName;if(k.test(D)&&E.className&&y.test(E.className)){T=!0;break}}if(!T){n.className+=" prettyprinted";var N=a.lang;if(!N){N=h.match(v);var A;!N&&(A=r(n))&&C.test(A.tagName)&&(N=A.className.match(v)),N&&(N=N[1])}var R;if(w.test(n.tagName))R=1;else{var P=n.currentStyle,L=o.defaultView,j=P?P.whiteSpace:L&&L.getComputedStyle?L.getComputedStyle(n,null).getPropertyValue("white-space"):0;R=j&&"pre"===j.substring(0,3)}var I=a.linenums;(I="true"===I||+I)||(I=h.match(/\blinenums\b(?::(\d+))?/),I=I?I[1]&&I[1].length?+I[1]:!0:!1),I&&s(n,I,R),g={langExtension:N,sourceNode:n,numberLines:I,pre:R},u(g)}}}b<c.length?setTimeout(i,250):"function"==typeof e&&e()}for(var a=t||document.body,o=a.ownerDocument||document,l=[n("pre"),n("code"),n("xmp")],c=[],p=0;p<l.length;++p)for(var d=0,h=l[p].length;h>d;++d)c.push(l[p][d]);l=null;var m=Date;m.now||(m={now:function(){return+new Date}});var g,b=0,v=/\blang(?:uage)?-([\w.]+)(?!\S)/,y=/\bprettyprint\b/,x=/\bprettyprinted\b/,w=/pre|xmp/i,C=/^code$/i,k=/^(?:pre|code|xmp)$/i,S={};i()}var f=window,h=["break,continue,do,else,for,if,return,while"],m=[h,"auto,case,char,const,default,double,enum,extern,float,goto,inline,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],g=[m,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],b=[g,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,delegate,dynamic_cast,explicit,export,friend,generic,late_check,mutable,namespace,nullptr,property,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],v=[g,"abstract,assert,boolean,byte,extends,final,finally,implements,import,instanceof,interface,null,native,package,strictfp,super,synchronized,throws,transient"],y=[g,"abstract,as,base,bool,by,byte,checked,decimal,delegate,descending,dynamic,event,finally,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,null,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where"],x="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,throw,true,try,unless,until,when,while,yes",w=[g,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],C="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",k=[h,"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=[h,"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=[h,"as,assert,const,copy,drop,enum,extern,fail,false,fn,impl,let,log,loop,match,mod,move,mut,priv,pub,pure,ref,self,static,struct,true,trait,type,unsafe,use"],E=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],D=[b,y,w,C,k,S,E],N=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/,A="str",R="kwd",P="com",L="typ",j="lit",I="pun",$="pln",H="tag",M="dec",O="src",F="atn",_="atv",q="nocode",W="(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<<?=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*",B=/\S/,z=a({keywords:D,hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),U={};l(z,["default-code"]),l(i([],[[$,/^[^<?]+/],[M,/^<!\w[^>]*(?:>|$)/],[P,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[I,/^(?:<[%?]|[%?]>)/],["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([[$,/^[\s]+/,null," \r\n"],[_,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[H,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[F,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[I,/^[=<>\/]+/],["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([],[[_,/^[\s\S]+/]]),["uq.val"]),l(a({keywords:b,hashComments:!0,cStyleComments:!0,types:N}),["c","cc","cpp","cxx","cyc","m"]),l(a({keywords:"null,true,false"}),["json"]),l(a({keywords:y,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:N}),["cs"]),l(a({keywords:v,cStyleComments:!0}),["java"]),l(a({keywords:E,hashComments:!0,multiLineStrings:!0}),["bash","bsh","csh","sh"]),l(a({keywords:k,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py","python"]),l(a({keywords:C,hashComments:!0,multiLineStrings:!0,regexLiterals:2}),["perl","pl","pm"]),l(a({keywords:S,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb","ruby"]),l(a({keywords:w,cStyleComments:!0,regexLiterals:!0}),["javascript","js"]),l(a({keywords:x,hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]),l(a({keywords:T,cStyleComments:!0,multilineStrings:!0}),["rc","rs","rust"]),l(i([],[[A,/^[\s\S]+/]]),["regex"]);var G=f.PR={createSimpleLexer:i,registerLangHandler:l,sourceDecorator:a,PR_ATTRIB_NAME:F,PR_ATTRIB_VALUE:_,PR_COMMENT:P,PR_DECLARATION:M,PR_KEYWORD:R,PR_LITERAL:j,PR_NOCODE:q,PR_PLAIN:$,PR_PUNCTUATION:I,PR_SOURCE:O,PR_STRING:A,PR_TAG:H,PR_TYPE:L,prettyPrintOne:IN_GLOBAL_SCOPE?f.prettyPrintOne=p:prettyPrintOne=p,prettyPrint:prettyPrint=IN_GLOBAL_SCOPE?f.prettyPrint=d:prettyPrint=d};"function"==typeof define&&define.amd&&define("google-code-prettify",[],function(){return G})}(),define("core/highlight",["text!core/css/highlight.css","google-code-prettify"],function(e,t){return{run:function(n,r,i,a){a.pub("start","core/highlight");for(var s="sh_css sh_html sh_javascript sh_javascript_dom sh_xml".split(" "),o=0,l=s.length;l>o;o++){var c=s[o];$("."+c).each(function(){$(this).removeClass(c).addClass("highlight"),a.pub("warn","Old highlighting class '"+c+"', use 'highlight' instead.")})}var u=$("pre.highlight, code.highlight"),p=function(){a.pub("end","core/highlight"),i()};u.length?(n.noHighlightCSS||$(r).find("head link").first().before($("<style/>").text(e)),u.addClass("prettyprint"),t.prettyPrint(p)):p()}}}),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 a=0,s=$("span.practicelab",n),o=$("<div><h2>Best Practices Summary</h2><ul></ul></div>"),l=o.find("ul");s.each(function(){var e=$(this),t=e.makeID("bp"),r=$("<li><a></a></li>"),i=r.find("a");a++,i.attr("href","#"+t).text("Best Practice "+a),r.append(n.createTextNode(": "+e.text())),l.append(r),e.prepend(n.createTextNode("Best Practice "+a+": "))}),s.length?($(n).find("head link").first().before($("<style/>").text(e)),$("#bp-summary")&&$("#bp-summary").append(o.contents())):$("#bp-summary").length&&(i.pub("warn","Using best practices summary (#bp-summary) but no best practices found."),$("#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),i=n.attr("title")||n.find("[title]").attr("title")||n.attr("alt")||n.find("[alt]").attr("alt")||"",a=$("<figcaption/>").text(i);n.is("div")?(r.pub("warn","You are using the deprecated div.figure syntax; please switch to <figure>."),n.append(a),n.renameElement("figure")):(r.pub("warn","You are using the deprecated img.figure syntax; please switch to <figure>."),n.wrap("<figure></figure>"),n.parent().append(a))});var i={},a=[],s=0;$("figure").each(function(){var e=$(this),n=e.find("figcaption"),o=n.text(),l=e.makeID("fig",o);n.length||r.pub("warn","A <figure> should contain a <figcaption>."),s++,n.wrapInner($("<span class='fig-title'/>")).prepend(t.createTextNode(" ")).prepend($("<span class='figno'>"+s+"</span>")).prepend(t.createTextNode("Fig. ")),i[l]=n.contents().clone();var c=n.clone();c.find("a").renameElement("span").removeAttr("href"),a.push($("<li class='tofline'><a class='tocxref' href='#"+l+"'></a></li>").find(".tocxref").append(c.contents()).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(a.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");a.length;)l.append(a.shift())}r.pub("end","core/figures"),n()}}}),define("core/biblio",[],function(){var e=function(e){var t=e.informativeReferences,n=e.normativeReferences,r=[],i=function(e){var t=[];for(var n in e)t.push(n);return t};for(var a in t)n[a]&&r.push(a);for(var s=0;s<r.length;s++)delete t[r[s]];return{informativeReferences:i(t),normativeReferences:i(n)}},t={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"},n=function(e){if("string"==typeof e)return e;var n="";return e.authors&&e.authors.length&&(n+=e.authors.join("; "),e.etAl&&(n+=" et al"),n+=". "),n+=e.href?'<a href="'+e.href+'"><cite>'+e.title+"</cite></a>. ":"<cite>"+e.title+"</cite>. ",e.date&&(n+=e.date+". "),e.status&&(n+=(t[e.status]||e.status)+". "),e.href&&(n+='URL: <a href="'+e.href+'">'+e.href+"</a>"),n},r=function(t,r){var i={},a=e(t),s=a.informativeReferences,o=a.normativeReferences,l={};if(s.length||o.length||t.refNote){var c=$("<section id='references' class='appendix'><h2>References</h2></section>").appendTo($("body"));t.refNote&&$("<p></p>").html(t.refNote).appendTo(c);for(var u=["Normative","Informative"],p=0;p<u.length;p++){var d=u[p],a="Normative"==d?o:s;if(a.length){var f=$("<section><h3></h3></section>").appendTo(c).find("h3").text(d+" references").end();f.makeID(null,d+" references"),a.sort();var h=$("<dl class='bibliography'></dl>").appendTo(f);t.doRDFa!==!1&&h.attr("about","");for(var m=0;m<a.length;m++){var g=a[m];$("<dt></dt>").attr({id:"bib-"+g}).text("["+g+"]").appendTo(h);var b=$("<dd></dd>").appendTo(h);this.doRDFa!==!1&&("Normative"===d?b.attr("rel","dcterms:requires"):b.attr("rel","dcterms:references"));var v=t.biblio[g],y={},x=g;for(y[g]=!0;v&&v.aliasOf;)y[v.aliasOf]?(v=null,r.pub("error","Circular reference in biblio DB between ["+g+"] and ["+x+"].")):(x=v.aliasOf,v=t.biblio[x],y[x]=!0);l[x]=l[x]||[],l[x].indexOf(g)<0&&l[x].push(g),v?b.html(n(v)+"\n"):(i[g]||(i[g]=0),i[g]++,b.html("<em style='color: #f00'>Reference not found.</em>\n"))}}}for(var w in l)l[w].length>1&&r.pub("warn","["+w+"] is referenced in "+l[w].length+" ways ("+l[w].join(", ")+"). This causes duplicate entries in the reference section.");for(var C in i)i.hasOwnProperty(C)&&r.pub("error","Bad reference: ["+C+"] (appears "+i[C]+" times)")}};return{stringifyRef:n,run:function(t,n,i,a){a.pub("start","core/biblio");var s=e(t),o=[],l=function(){a.pub("end","core/biblio"),i()};if(t.localBiblio)for(var c in t.localBiblio)"undefined"!=typeof t.localBiblio[c].aliasOf&&o.push(t.localBiblio[c].aliasOf);if(s=s.normativeReferences.concat(s.informativeReferences).concat(o),s.length){var u="https://specref.jit.su/bibrefs?refs="+s.join(",");$.ajax({dataType:"json",url:u,success:function(e){if(t.biblio=e||{},t.localBiblio)for(var n in t.localBiblio)t.biblio[n]=t.localBiblio[n];r(t,a),l()},error:function(e,t,n){a.pub("error","Error loading references from '"+u+"': "+t+" ("+n+")"),l()}})}else l()}}}),define("core/rdfa",[],function(){return{run:function(e,t,n,r){r.pub("start","core/rdfa"),e.doRDFa!==!1&&$("section").each(function(){var e=$(this),t="",n=e.children("*").first(),r=e.attr("id");r?t="#"+r:n.length&&(r=n.attr("id"),r&&(t="#"+r)),""!==t&&e.attr({"typeof":"bibo:Chapter",resource:t,rel:"bibo:Chapter"})}),r.pub("end","core/rdfa"),n()}}}),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>")});var sn;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,a,s,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(S(e))}),Handlebars.registerHelper("pads",function(e){return new Handlebars.SafeString(T(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(" ")},k=function(e){for(var t="",n=0,r=e.arrayCount;r>n;n++)t+="[]";return t},S=function(e){if($.isArray(e)){for(var t=[],n=0,r=e.length;r>n;n++)t.push(S(e[n]));return"("+t.join(" or ")+")"}var i=/^(sequence|Promise|CancelablePromise|EventStream)<(.+)>$/.exec(e);return i?i[1]+"<<a>"+S(i[2])+"</a>>":"<a>"+e+"</a>"},T=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*/,a=i.exec(e);if(!a)return this.msg.pub("error","Expected parameter list, got: "+e),!1;e=e.replace(i,"");var s=a[1],o=a[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,s),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(),a=e.type;t="exception"===a?r.exceptionMember(n,i):"dictionary"===a?r.dictionaryMember(n,i):"callback"===a?r.callbackMember(n,i):"enum"===a?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 a=i[1];return this.parseDatatype(n,a),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 a=i[1];return n.defaultValue=i[3],this.setID(n,i[2]),this.parseDatatype(n,a),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 a=i[1];return this.setID(n,i[2]),n.defaultValue=i[3],this.parseDatatype(n,a),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=sn.sanitiseID(n.id),n},interfaceMember:function(e,t){var n={children:[]},r=C(e.text()),i=t.find("dl.parameters").first(),a=t.find(".getraises, .setraises"),s=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=[],a.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,s,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,s,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,s,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 a=!1,s=0;s<e.params.length;s++)a?(e.params[s].optional=!0,e.params[s].datatype=e.params[s].datatype.replace(/\boptional\s+/,"")):a=this.optional(e.params[s]);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()},parseParameterized:function(e){var t=/^(sequence|Promise|CancelablePromise|EventStream)<(.+)>$/.exec(e);return t?{type:t[1],parameter:t[2]}:null},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.html(S(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+"-",a=["field","constant"],s=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<a.length;l++){var c=a[l],u=e.children.filter(s);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=this.parseParameterized(m.datatype);w?(sn.text(w.type+"<",x),sn.element("a",{},x,w.parameter),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=this.parseParameterized(m.datatype);w?(sn.text(w.type+"<",x),sn.element("a",{},x,w.parameter),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=this.parseParameterized(m.datatype);w?(sn.text(w.type+"<",x),sn.element("a",{},x,w.parameter),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),T=sn.element("td",{},C);sn.element("code",{id:"idl-def-"+e.refId+"."+m.refId},T,m.unescapedId),sn.element("td",{},C,[m.description])}return r}if("interface"==e.type){for(var r=sn.documentFragment(),i="widl-"+e.refId+"-",a=["constructor","attribute","method","constant","serializer"],s=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<a.length;l++){var c=a[l],u=e.children.filter(s);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],E="method"==c?this.makeMethodID(i,m):"constructor"==c?this.makeMethodID("widl-ctor-",m):sn.idThatDoesNotExist(i+m.refId),g=sn.element("dt",{id:E},f);sn.element("code",{},g,m.unescapedId),m.isStatic&&g.append(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),P=S(N.datatype);N.array&&(P+=k(N)),N.defaultValue&&(P+=" = "+N.defaultValue),R.html(P),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),H=0;H<L.description.length;H++){var M=L.description[H],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 O=sn.element("div",{},b);sn.element("em",{},O,"Return type: ");var R=sn.element("code",{},O),P=S(m.datatype);m.array&&(P+=k(m)),m.nullable&&sn.text(", nullable",O),R.html(P)}}else if("attribute"==c){if(sn.text(" of type ",g),m.array)for(var H=0,y=m.arrayCount;y>H;H++)sn.text("array of ",g);var x=sn.element("span",{"class":"idlAttrType"},g),w=this.parseParameterized(m.datatype);if(w?(sn.text(w.type+"<",x),sn.element("a",{},x,w.parameter),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.append(L.description);else for(var I=sn.element("table",{"class":"exceptionCodes"},j),H=0;H<L.description.length;H++){var M=L.description[H],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 F=sn.element("div",{},p),m=u[0];if("prose"!=m.serializertype){var _="Instances of this interface are serialized as ";if("map"==m.serializertype){var q="a map ";if(m.getter)q+="with entries corresponding to the named properties";else{var W="";m.inherit&&(q+="with entries from the closest inherited interface ",W="and "),m.all?q+=W+"with entries for each of the serializable attributes":m.values&&m.values.length?q+=W+"with entries for the following attributes: "+m.values.join(", "):q="an empty map"}_+=q}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",_+=B}else"attribute"==m.serializertype&&(_+="the value of the attribute "+m.values[0]);_+=".",sn.element("p",{},F,_)}sn.element("p",{},F,[m.description])}}}return r}},makeMethodID:function(e,t){for(var n=e+t.refId+"-"+t.datatype+"-",r=[],i=0,a=t.params.length;a>i;i++){var s=t.params[i];r.push(s.datatype+(s.array?"Array":"")+"-"+s.id)}return n+=r.join("-"),sn.sanitiseID(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 a={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(a))}if("typedef"===e.type)return a.nullable=e.nullable?"?":"",a.arr=k(e),$(r(a));if("implements"===e.type)return $(i(a));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=[],T=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:T})}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,T=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:T})}if("dictionary"===e.type){var E=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),E=t>E?t:E});var w="widl-"+e.refId+"-",C=this,T=e.children.map(function(e){return C.writeMember(e,E,t+1,w)}).join("");return s({obj:e,indent:t,children:T,partial:e.partial?"partial ":""})}if("callback"===e.type){var D=e.children.map(function(e){return u({obj:e,optional:e.optional?"optional ":"",arr:k(e),nullable:e.nullable?"?":"",variadic:e.variadic?"...":""})}).join(", ");return p({obj:e,indent:t,arr:k(e),nullable:e.nullable?"?":"",children:D})}if("enum"===e.type){var T=e.children.map(function(n){return o({obj:n,parentID:e.refId,indent:t+1})}).join(",\n");return l({obj:e,indent:t,children:T})}},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:k(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 a=t-i;return e.nullable&&(a-=1),e.array&&(a-=2*e.arrayCount),h({obj:e,indent:n,declaration:e.declaration,pad:a,arr:k(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:k(e),nullable:e.nullable?"?":"",variadic:e.variadic?"...":""})}).join(", "),a=0;a=e.isUnionType?e.datatype.join(" or ").length+2:e.datatype.length,e.isStatic&&(a+=7);var s=t-a;return e.nullable&&(s-=1),e.array&&(s-=2*e.arrayCount),d({obj:e,indent:n,arr:k(e),nullable:e.nullable?"?":"","static":e.isStatic?"static ":"",pad:s,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:k(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:k(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),a(i)}},{run:function(e,n,r,i){i.pub("start","core/webidl"),e.noIDLSorting||(e.noIDLSorting=!1),e.noIDLSectionTitle||(e.noIDLSectionTitle=!1),sn=new simpleNode(document);var a=$(".idl",n),s=function(){i.pub("end","core/webidl"),r()};if(!a.length)return s();$(n).find("head link").first().before($("<style/>").text(t));var o=[];a.each(function(){var t=new x({noIDLSorting:e.noIDLSorting,msg:i,doc:n,conf:e}),r=t.definition($(this)),a=t.makeMarkup(r.htmlID);$(this).replaceWith(a),-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>")}}),s()}}}),window.simpleNode=function(e){this.doc=e?e:document -},window.simpleNode.prototype={element:function(e,t,n,r){var i=$(this.doc.createElement(e));if(i.attr(t||{}),n&&$(n).append(i),r)if(r instanceof jQuery)i.append(r);else if(r instanceof Array)for(var a=0;a<r.length;a++)i.append(r[a]);else this.text(r,i);return i},text:function(e,t){var n=this.doc.createTextNode(e);return t&&$(t).append(n),n},documentFragment:function(){return this.doc.createDocumentFragment()},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},idThatDoesNotExist:function(e){var t=1;if(this.doc.getElementById(e)){for(;this.doc.getElementById(e+"-"+t);)t++;e=e+"-"+t}return e}},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.parents(".idl, dl.methods, dl.attributes, dl.constants, dl.constructors, dl.fields, dl.dictionary-members, span.idlMemberType, span.idlTypedefType, div.idlImplementsDesc").length||r.pub("warn","Found linkless <a> element with text '"+n+"' but no matching <dfn>."),t.replaceWith(t.contents())):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",a=function(e,s,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],s),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 k=$("<span class='secno'></span>").text(w+" ");h||$(m).prepend(k),t[y]=(h?"":"<span class='secno'>"+w+"</span> ")+"<span class='sec-title'>"+b+"</span>";var S=$("<a/>").attr({href:"#"+y,"class":"tocxref"}).append(h?"":k.clone()).append(v.contents()),T=$("<li class='tocline'/>").append(S);(0==c.maxTocLevel||l<=c.maxTocLevel)&&p.append(T),o.push(0);var E=a(f,s,o,l+1,c);E&&T.append(E),o.pop()}}}return p};return{run:function(n,r,i,s){s.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(){s.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=a($("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("tmpl!w3c/templates/permalinks.css",["handlebars"],function(){return Handlebars.compile("/* --- PERMALINKS --- */\n{{#if permalinkHide}}\nsection > *:hover > span.permalink { visibility: visible; } \n{{/if}}\n\n.permalink {\n width: 1px;\n height: 1px;\n overflow: visible;\n font-size: 10pt;\n font-style: normal;\n vertical-align: middle;\n margin-left: 4px;\n {{#if permalinkEdge}}\n float: right;\n {{/if}}\n {{#if permalinkHide}}\n visibility: hidden;\n {{/if}}\n}\n\n.permalink a, .permalink a:link, .permalink a:visited, .permalink a:hover, .permalink a:focus, .permalink a:active \n{\n background:transparent !important;\n text-decoration:none;\n font-weight: bold;\n color:#666 !important;\n}\n\n.permalink abbr {\n border:0;\n}\n")}),define("w3c/permalinks",["tmpl!w3c/templates/permalinks.css","core/utils"],function(e){return{run:function(t,n,r,i){if(i.pub("start","w3c/permalinks"),t.includePermalinks){var a=t.permalinkSymbol||"§",s="<style>"+e(t)+"</style>";$(n).find("head link").first().before(s);var o=$(n).find("h2, h3, h4, h5, h6");o.each(function(e,n){var r=$(n);if(!r.hasClass("nolink")){var i=r.attr("id"),s=r.parent();if((s.is("section")||s.is("div"))&&(i=s.hasClass("introductory")||s.hasClass("nolink")?null:s.attr("id")),null!=i){var o=t.doRDFa?"typeof='bookmark' ":"",l=t.doRDFa?"property='url' ":"",c=t.doRDFa?"property='title' ":"",u="<span "+o+"class='permalink'>";t.permalinkEdge||(u+=" "),u+="<a href='#"+i+"' "+l+"aria-label='Permalink for "+i+"' title='Permalink for "+i+"'>"+"<span "+c+"content='"+r.text()+"'>"+a+"</span></a></span>",r.append(u)}}})}i.pub("end","w3c/permalinks"),r()}}}),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");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 a=$("section#toc",t).find("ul:first");a.attr("role","directory"),a.attr("id")||a.attr("id","respecContents")}var s=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;n.attr("aria-level",i),n.attr("role","heading"),r?(o++,n.attr("id","h_issue_"+o)):(s++,n.attr("id","h_note_"+s))}),r.pub("end","w3c/aria"),n()}}}),define("core/shiv",[],function(){return{run:function(e,t,n,r){r.pub("start","core/shiv");var i=t.createComment("[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]");$("head").append(i),r.pub("end","core/shiv"),n()}}}),define("core/remove-respec",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","core/remove-respec"),e.removeReSpec(n),i.pub("end","core/remove-respec"),r()}}}),define("core/location-hash",[],function(){return{run:function(e,t,n,r){r.pub("start","core/location-hash");var i=window.location.hash,a=void 0!==window.pageYOffset?window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop;i&&!a&&(window.location.hash="",window.location.hash=i),r.pub("end","core/location-hash"),n()}}});var requireConfig={shim:{shortcut:{exports:"shortcut"}}};"respecVersion"in window&&respecVersion&&(requireConfig.paths={ui:"https://w3c.github.io/respec/js/ui"}),require.config(requireConfig),define("profile-w3c-common",["domReady","core/base-runner","core/ui","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","w3c/rfc2119","core/examples","core/issues-notes","core/requirements","core/highlight","core/best-practices","core/figures","core/biblio","core/rdfa","core/webidl-oldschool","core/dfn","core/fix-headers","core/structure","w3c/informative","w3c/permalinks","core/id-headers","w3c/aria","core/shiv","core/remove-respec","core/location-hash"],function(e,t,n){var r=Array.prototype.slice.call(arguments);e(function(){n.addCommand("Save Snapshot","ui/save-html","Ctrl+Shift+Alt+S"),n.addCommand("About ReSpec","ui/about-respec","Ctrl+Shift+Alt+A"),n.addCommand("Search Specref DB","ui/search-specref","Ctrl+Shift+Alt+space"),t.runAll(r)})}); +respecVersion = '3.2.47'; +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,a,s,o,c,u,p=t&&t.split("/");r=p;var d=S.map,f=d&&d["*"];if(e&&"."===e.charAt(0))if(t){for(r=l(S.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(S.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(a=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,a))){s=n,o=r;break}if(s)break;!c&&f&&l(f,a)&&(c=l(f,a),u=r)}!s&&c&&(s=c,o=u),s&&(t.splice(0,o,s),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")===k.contextName?(t.parentNode.removeChild(t),!0):void 0})}function r(e){var t=l(S.paths,e);return t&&I(t)&&1<t.length?(n(e),t.shift(),k.require.undef(e),k.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,a){var s,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,a),o=l($,c)),e&&(c?f=o&&o.normalize?o.normalize(e,function(e){return t(e,u,a)}):t(e,u,a):(f=t(e,u,a),e=i(f),c=e[0],f=e[1],r=!0,s=k.nameToUrl(f))),r=!c||o||r?"":"_unnormalized"+(q+=1),{prefix:c,name:f,parentMap:n,unnormalized:!!r,url:s,originalName:p,isDefine:d,id:(c?c+"!"+f:f)+r}}function o(e){var t=e.id,n=l(E,t);return n||(n=E[t]=new k.Module(e)),n}function c(e,t,n){var r=e.id,i=l(E,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(E,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 E[e],delete N[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 a=r.id,s=l(E,a);s&&!e.depMatched[i]&&!n[a]&&(l(t,a)?(e.defineDep(i,$[a]),e.check()):h(s,t,n))}),n[r]=!0)}function m(){var e,t,i,a,s=(i=1e3*S.waitSeconds)&&k.startTime+i<(new Date).getTime(),o=[],l=[],c=!1,u=!0;if(!x){if(x=!0,F(N,function(i){if(e=i.map,t=e.id,i.enabled&&(e.isDefine||l.push(i),!i.error))if(!i.inited&&s)r(t)?c=a=!0:(o.push(t),n(t));else if(!i.inited&&i.fetched&&e.isDefine&&(c=!0,!e.prefix))return u=!1}),s&&o.length)return i=A("timeout","Load timeout for modules: "+o,null,o),i.contextName=k.contextName,p(i);u&&y(l,function(e){h(e,{},{})}),s&&!a||!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=k.onScriptLoad;return e.detachEvent&&!W?e.detachEvent("onreadystatechange",t):e.removeEventListener("load",t,!1),t=k.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,k,C,T,S={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},E={},N={},D={},L=[],$={},M={},_=1,q=1;return C={require:function(e){return e.require?e.require:e.require=k.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(S.pkgs,e.map.id);return(t?l(S.config,e.map.id+"/"+t.main):l(S.config,e.map.id))||{}},exports:$[e.map.id]}}},w=function(e){this.events=l(D,e.id)||{},this.map=e,this.shim=l(S.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,k.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();k.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,k.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=k.execCb(n,i,t,r)}catch(a){e=a}else r=k.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(k,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=k.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(E,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(E,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(S.config,n)&&(S.config[l]=S.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),k.completeLoad(l),m([l],i)}),r.load(e.name,m,i,S))})),k.enable(r,this),this.pluginMaps[r.id]=r},enable:function(){N[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(C,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=E[n],!s(C,n)&&r&&!r.enabled&&k.enable(e,this)})),F(this.pluginMaps,u(this,function(e){var t=l(E,e.id);t&&!t.enabled&&k.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]}},k={config:S,contextName:e,registry:E,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=S.pkgs,n=S.shim,r={paths:!0,config:!0,map:!0};F(e,function(e,t){r[t]?"map"===t?(S.map||(S.map={}),Q(S[t],e,!0,!0)):Q(S[t],e,!0):S[t]=e}),e.shim&&(F(e.shim,function(e,t){I(e)&&(e={deps:e}),!e.exports&&!e.init||e.exportsFn||(e.exportsFn=k.makeShimExports(e)),n[t]=e}),S.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,"")}}),S.pkgs=t),F(E,function(e,t){!e.inited&&!e.map.unnormalized&&(e.map=a(t))}),(e.deps||e.callback)&&k.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(C,t)?C[t](E[n.id]):j.get?j.get(k,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(),k.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("."),a=e.split("/")[0];return-1!==i&&("."!==a&&".."!==a||i>1)&&(r=e.substring(i,e.length),e=e.substring(0,i)),k.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(E,e)}}),n||(i.undef=function(e){d();var t=a(e,n,!0),r=l(E,e);delete $[e],delete M[t.url],delete D[e],r&&(r.events.defined&&(D[e]=r.events),f(e))}),i},enable:function(e){l(E,e.id)&&o(e).enable()},completeLoad:function(e){var t,n,i=l(S.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(E,e),!t&&!s($,e)&&n&&!n.inited){if(S.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,a,s,o,c;if(j.jsExtRegExp.test(e))s=e+(t||"");else{for(r=S.paths,i=S.pkgs,s=e.split("/"),o=s.length;o>0;o-=1){if(c=s.slice(0,o).join("/"),a=l(i,c),c=l(r,c)){I(c)&&(c=c[0]),s.splice(0,o,c);break}if(a){e=e===a.name?a.location+"/"+a.main:a.location,s.splice(0,o,e);break}}s=s.join("/"),s+=t||(/\?/.test(s)||n?"":".js"),s=("/"===s.charAt(0)||s.match(/^[\w\+\.\-]+:/)?"":S.baseUrl)+s}return S.urlArgs?s+((-1===s.indexOf("?")?"?":"&")+S.urlArgs):s},load:function(e,t){j.load(k,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),k.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]))}},k.require=k.makeRequire(),k}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,a="_";return!I(e)&&"string"!=typeof e&&(i=e,I(t)?(e=t,t=n,n=r):e=[]),i&&i.context&&(a=i.context),(r=l(E,a))||(r=E[a]=j.s.newContext(a)),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,s&&clearInterval(s),t())}function r(e){return l?e(c):u.push(e),r}var i,a,s,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),a=document.createElement("div");try{i=null===window.frameElement}catch(p){}a.doScroll&&i&&window.external&&(s=setInterval(function(){try{a.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=at.type(e);return at.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 at.each(e.match(ot)||[],function(e,n){t[n]=!0}),t}function i(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=at.expando+Math.random()}function a(e,n,r){var i;if(r===t&&1===e.nodeType)if(i="data-"+n.replace(yt,"-$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(a){}mt.set(e,n,r)}else r=t;return r}function s(){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(at.isFunction(t))return at.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return at.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(Dt.test(t))return at.filter(t,e,n);t=at.filter(t,e)}return at.grep(e,function(e){return tt.call(t,e)>=0!==n})}function p(e,t){return at.nodeName(e,"table")&&at.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,a,s,o,l,c;if(1===t.nodeType){if(gt.hasData(e)&&(a=gt.access(e),s=gt.set(t,a),c=a.events)){delete s.handle,s.events={};for(i in c)for(n=0,r=c[i].length;r>n;n++)at.event.add(t,i,c[i][n])}mt.hasData(e)&&(o=mt.access(e),l=at.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&&at.nodeName(e,n)?at.merge([e],r):r}function b(e,t){var n=t.nodeName.toLowerCase();"input"===n&&$t.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function y(e,t){if(t in e)return t;for(var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=Qt.length;i--;)if(t=Qt[i]+n,t in e)return t;return r}function v(e,t){return e=t||e,"none"===at.css(e,"display")||!at.contains(e.ownerDocument,e)}function x(t){return e.getComputedStyle(t,null)}function w(e,t){for(var n,r,i,a=[],s=0,o=e.length;o>s;s++)r=e[s],r.style&&(a[s]=gt.get(r,"olddisplay"),n=r.style.display,t?(a[s]||"none"!==n||(r.style.display=""),""===r.style.display&&v(r)&&(a[s]=gt.access(r,"olddisplay",S(r.nodeName)))):a[s]||(i=v(r),(n&&"none"!==n||!i)&>.set(r,"olddisplay",i?n:at.css(r,"display"))));for(s=0;o>s;s++)r=e[s],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?a[s]||"":"none"));return e}function k(e,t,n){var r=Gt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function C(e,t,n,r,i){for(var a=n===(r?"border":"content")?4:"width"===t?1:0,s=0;4>a;a+=2)"margin"===n&&(s+=at.css(e,n+Jt[a],!0,i)),r?("content"===n&&(s-=at.css(e,"padding"+Jt[a],!0,i)),"margin"!==n&&(s-=at.css(e,"border"+Jt[a]+"Width",!0,i))):(s+=at.css(e,"padding"+Jt[a],!0,i),"padding"!==n&&(s+=at.css(e,"border"+Jt[a]+"Width",!0,i)));return s}function T(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,a=x(e),s=at.support.boxSizing&&"border-box"===at.css(e,"boxSizing",!1,a);if(0>=i||null==i){if(i=Wt(e,t,a),(0>i||null==i)&&(i=e.style[t]),Vt.test(i))return i;r=s&&(at.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+C(e,t,n||(s?"border":"content"),r,a)+"px"}function S(e){var t=z,n=Yt[e];return n||(n=E(e,t),"none"!==n&&n||(Bt=(Bt||at("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Bt[0].contentWindow||Bt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=E(e,t),Bt.detach()),Yt[e]=n),n}function E(e,t){var n=at(t.createElement(e)).appendTo(t.body),r=at.css(n[0],"display");return n.remove(),r}function N(e,t,n,r){var i;if(at.isArray(t))at.each(t,function(t,i){n||tn.test(e)?r(e,i):N(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==at.type(t))r(e,t);else for(i in t)N(e+"["+i+"]",t[i],n,r)}function D(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,a=t.toLowerCase().match(ot)||[];if(at.isFunction(n))for(;r=a[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 a(l){var c;return s[l]=!0,at.each(e[l]||[],function(e,l){var u=l(n,r,i);return"string"!=typeof u||o||s[u]?o?!(c=u):t:(n.dataTypes.unshift(u),a(u),!1)}),c}var s={},o=e===vn;return a(n.dataTypes[0])||!s["*"]&&a("*")}function j(e,n){var r,i,a=at.ajaxSettings.flatOptions||{};for(r in n)n[r]!==t&&((a[r]?e:i||(i={}))[r]=n[r]);return i&&at.extend(!0,e,i),e}function I(e,n,r){for(var i,a,s,o,l=e.contents,c=e.dataTypes;"*"===c[0];)c.shift(),i===t&&(i=e.mimeType||n.getResponseHeader("Content-Type"));if(i)for(a in l)if(l[a]&&l[a].test(i)){c.unshift(a);break}if(c[0]in r)s=c[0];else{for(a in r){if(!c[0]||e.converters[a+" "+c[0]]){s=a;break}o||(o=a)}s=s||o}return s?(s!==c[0]&&c.unshift(s),r[s]):t}function L(e,t,n,r){var i,a,s,o,l,c={},u=e.dataTypes.slice();if(u[1])for(s in e.converters)c[s.toLowerCase()]=e.converters[s];for(a=u.shift();a;)if(e.responseFields[a]&&(n[e.responseFields[a]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=a,a=u.shift())if("*"===a)a=l;else if("*"!==l&&l!==a){if(s=c[l+" "+a]||c["* "+a],!s)for(i in c)if(o=i.split(" "),o[1]===a&&(s=c[l+" "+o[0]]||c["* "+o[0]])){s===!0?s=c[i]:c[i]!==!0&&(a=o[0],u.unshift(o[1]));break}if(s!==!0)if(s&&e["throws"])t=s(t);else try{t=s(t)}catch(p){return{state:"parsererror",error:s?p:"No conversion from "+l+" to "+a}}}return{state:"success",data:t}}function R(){return setTimeout(function(){Dn=t}),Dn=at.now()}function P(e,t,n){for(var r,i=(Pn[t]||[]).concat(Pn["*"]),a=0,s=i.length;s>a;a++)if(r=i[a].call(n,t,e))return r}function H(e,t,n){var r,i,a=0,s=Rn.length,o=at.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;for(var t=Dn||R(),n=Math.max(0,c.startTime+c.duration-t),r=n/c.duration||0,a=1-r,s=0,l=c.tweens.length;l>s;s++)c.tweens[s].run(a);return o.notifyWith(e,[c,a,n]),1>a&&l?n:(o.resolveWith(e,[c]),!1)},c=o.promise({elem:e,props:at.extend({},t),opts:at.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Dn||R(),duration:n.duration,tweens:[],createTween:function(t,n){var r=at.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($(u,c.opts.specialEasing);s>a;a++)if(r=Rn[a].call(c,e,u,c.opts))return r;return at.map(u,P,c),at.isFunction(c.opts.start)&&c.opts.start.call(e,c),at.fx.timer(at.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 $(e,t){var n,r,i,a,s;for(n in e)if(r=at.camelCase(n),i=t[r],a=e[n],at.isArray(a)&&(i=a[1],a=e[n]=a[0]),n!==r&&(e[r]=a,delete e[n]),s=at.cssHooks[r],s&&"expand"in s){a=s.expand(a),delete e[r];for(n in a)n in e||(e[n]=a[n],t[n]=i)}else t[r]=i}function M(e,n,r){var i,a,s,o,l,c,u=this,p={},d=e.style,f=e.nodeType&&v(e),h=gt.get(e,"fxshow");r.queue||(l=at._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--,at.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"===at.css(e,"display")&&"none"===at.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(a=n[i],jn.exec(a)){if(delete n[i],s=s||"toggle"===a,a===(f?"hide":"show")){if("show"!==a||!h||h[i]===t)continue;f=!0}p[i]=h&&h[i]||at.style(e,i)}if(!at.isEmptyObject(p)){h?"hidden"in h&&(f=h.hidden):h=gt.access(e,"fxshow",{}),s&&(h.hidden=!f),f?at(e).show():u.done(function(){at(e).hide()}),u.done(function(){var t;gt.remove(e,"fxshow");for(t in p)at.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=Jt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function _(e){return at.isWindow(e)?e:9===e.nodeType&&e.defaultView}var q,W,B=typeof t,U=e.location,z=e.document,G=z.documentElement,V=e.jQuery,X=e.$,Y={},K=[],Z="2.0.3",J=K.concat,Q=K.push,et=K.slice,tt=K.indexOf,nt=Y.toString,rt=Y.hasOwnProperty,it=Z.trim,at=function(e,t){return new at.fn.init(e,t,q)},st=/[+-]?(?:\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),at.ready()};at.fn=at.prototype={jquery:Z,constructor:at,init:function(e,n,r){var i,a;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 at?n[0]:n,at.merge(this,at.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:z,!0)),ct.test(i[1])&&at.isPlainObject(n))for(i in n)at.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}return a=z.getElementById(i[2]),a&&a.parentNode&&(this.length=1,this[0]=a),this.context=z,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):at.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),at.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=at.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return at.each(this,e,t)},ready:function(e){return at.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(at.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:Q,sort:[].sort,splice:[].splice},at.fn.init.prototype=at.fn,at.extend=at.fn.extend=function(){var e,n,r,i,a,s,o=arguments[0]||{},l=1,c=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[1]||{},l=2),"object"==typeof o||at.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&&(at.isPlainObject(i)||(a=at.isArray(i)))?(a?(a=!1,s=r&&at.isArray(r)?r:[]):s=r&&at.isPlainObject(r)?r:{},o[n]=at.extend(u,s,i)):i!==t&&(o[n]=i));return o},at.extend({expando:"jQuery"+(Z+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===at&&(e.$=X),t&&e.jQuery===at&&(e.jQuery=V),at},isReady:!1,readyWait:1,holdReady:function(e){e?at.readyWait++:at.ready(!0)},ready:function(e){(e===!0?--at.readyWait:at.isReady)||(at.isReady=!0,e!==!0&&--at.readyWait>0||(W.resolveWith(z,[at]),at.fn.trigger&&at(z).trigger("ready").off("ready")))},isFunction:function(e){return"function"===at.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"!==at.type(e)||e.nodeType||at.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=at.buildFragment([e],t,i),i&&at(i).remove(),at.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)&&at.error("Invalid XML: "+e),n},noop:function(){},globalEval:function(e){var t,n=eval;e=at.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,a=0,s=e.length,o=n(e);if(r){if(o)for(;s>a&&(i=t.apply(e[a],r),i!==!1);a++);else for(a in e)if(i=t.apply(e[a],r),i===!1)break}else if(o)for(;s>a&&(i=t.call(e[a],a,e[a]),i!==!1);a++);else for(a in e)if(i=t.call(e[a],a,e[a]),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))?at.merge(r,"string"==typeof e?[e]:e):Q.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,a=0;if("number"==typeof r)for(;r>a;a++)e[i++]=n[a];else for(;n[a]!==t;)e[i++]=n[a++];return e.length=i,e},grep:function(e,t,n){var r,i=[],a=0,s=e.length;for(n=!!n;s>a;a++)r=!!t(e[a],a),n!==r&&i.push(e[a]);return i},map:function(e,t,r){var i,a=0,s=e.length,o=n(e),l=[];if(o)for(;s>a;a++)i=t(e[a],a,r),null!=i&&(l[l.length]=i);else for(a in e)i=t(e[a],a,r),null!=i&&(l[l.length]=i);return J.apply([],l)},guid:1,proxy:function(e,n){var r,i,a;return"string"==typeof n&&(r=e[n],n=e,e=r),at.isFunction(e)?(i=et.call(arguments,2),a=function(){return e.apply(n||this,i.concat(et.call(arguments)))},a.guid=e.guid=e.guid||at.guid++,a):t},access:function(e,n,r,i,a,s,o){var l=0,c=e.length,u=null==r;if("object"===at.type(r)){a=!0;for(l in r)at.access(e,n,l,r[l],!0,s,o)}else if(i!==t&&(a=!0,at.isFunction(i)||(o=!0),u&&(o?(n.call(e,i),n=null):(u=n,n=function(e,t,n){return u.call(at(e),n)})),n))for(;c>l;l++)n(e[l],r,o?i:i.call(e[l],l,n(e[l],r)));return a?e:u?n.call(e):c?n(e[0],r):s},now:Date.now,swap:function(e,t,n,r){var i,a,s={};for(a in t)s[a]=e.style[a],e.style[a]=t[a];i=n.apply(e,r||[]);for(a in t)e.style[a]=s[a];return i}}),at.ready.promise=function(t){return W||(W=at.Deferred(),"complete"===z.readyState?setTimeout(at.ready):(z.addEventListener("DOMContentLoaded",ft,!1),e.addEventListener("load",ft,!1))),W.promise(t)},at.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){Y["[object "+t+"]"]=t.toLowerCase()}),q=at(z),function(e,t){function n(e,t,n,r){var i,a,s,o,l,c,u,p,h,m;if((t?t.ownerDocument||t:_)!==L&&I(t),t=t||L,n=n||[],!e||"string"!=typeof e)return n;if(1!==(o=t.nodeType)&&9!==o)return[];if(P&&!r){if(i=vt.exec(e))if(s=i[1]){if(9===o){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&O(t,a)&&a.id===s)return n.push(a),n}else{if(i[2])return et.apply(n,t.getElementsByTagName(e)),n;if((s=i[3])&&C.getElementsByClassName&&t.getElementsByClassName)return et.apply(n,t.getElementsByClassName(s)),n}if(C.qsa&&(!H||!H.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(kt,"\\$&"):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+=" ")>S.cacheLength&&delete e[t.shift()],e[n]=r}var t=[];return e}function i(e){return e[F]=!0,e}function a(e){var t=L.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null +}}function s(e,t){for(var n=e.split("|"),r=e.length;r--;)S.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,a=e([],n.length,t),s=a.length;s--;)n[i=a[s]]&&(n[i]=!(r[i]=n[i]))})})}function p(){}function d(e,t){var r,i,a,s,o,l,c,u=U[e+" "];if(u)return t?0:u.slice(0);for(o=e,l=[],c=S.preFilter;o;){(!r||(i=pt.exec(o)))&&(i&&(o=o.slice(i[0].length)||o),l.push(a=[])),r=!1,(i=dt.exec(o))&&(r=i.shift(),a.push({value:r,type:i[0].replace(ut," ")}),o=o.slice(r.length));for(s in S.filter)!(i=bt[s].exec(o))||c[s]&&!(i=c[s](i))||(r=i.shift(),a.push({value:r,type:s,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,a=W++;return t.first?function(t,n,a){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,a)}:function(t,n,s){var o,l,c,u=q+" "+a;if(s){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,s))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,s)||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 a,s=[],o=0,l=e.length,c=null!=t;l>o;o++)(a=e[o])&&(!n||n(a,r,i))&&(s.push(a),c&&t.push(o));return s}function b(e,t,n,r,a,s){return r&&!r[F]&&(r=b(r)),a&&!a[F]&&(a=b(a,s)),i(function(i,s,o,l){var c,u,p,d=[],f=[],h=s.length,m=i||x(t||"*",o.nodeType?[o]:o,[]),b=!e||!i&&t?m:g(m,d,e,o,l),y=n?a||(i?e:h||r)?[]:s:b;if(n&&n(b,y,o,l),r)for(c=g(y,f),r(c,[],o,l),u=c.length;u--;)(p=c[u])&&(y[f[u]]=!(b[f[u]]=p));if(i){if(a||e){if(a){for(c=[],u=y.length;u--;)(p=y[u])&&c.push(b[u]=p);a(null,y=[],c,l)}for(u=y.length;u--;)(p=y[u])&&(c=a?nt.call(i,p):d[u])>-1&&(i[c]=!(s[c]=p))}}else y=g(y===s?y.splice(h,y.length):y),a?a(null,s,y,l):et.apply(s,y)})}function y(e){for(var t,n,r,i=e.length,a=S.relative[e[0].type],s=a||S.relative[" "],o=a?1:0,l=h(function(e){return e===t},s,!0),c=h(function(e){return nt.call(t,e)>-1},s,!0),u=[function(e,n,r){return!a&&(r||n!==A)||((t=n).nodeType?l(e,n,r):c(e,n,r))}];i>o;o++)if(n=S.relative[e[o].type])u=[h(m(u),n)];else{if(n=S.filter[e[o].type].apply(null,e[o].matches),n[F]){for(r=++o;i>r&&!S.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&&y(e.slice(o,r)),i>r&&y(e=e.slice(r)),i>r&&f(e))}u.push(n)}return m(u)}function v(e,t){var r=0,a=t.length>0,s=e.length>0,o=function(i,o,l,c,u){var p,d,f,h=[],m=0,b="0",y=i&&[],v=null!=u,x=A,w=i||s&&S.find.TAG("*",u&&o.parentNode||o),k=q+=null==x?1:Math.random()||.1;for(v&&(A=o!==L&&o,T=r);null!=(p=w[b]);b++){if(s&&p){for(d=0;f=e[d++];)if(f(p,o,l)){c.push(p);break}v&&(q=k,T=++r)}a&&((p=!f&&p)&&m--,i&&y.push(p))}if(m+=b,a&&b!==m){for(d=0;f=t[d++];)f(y,h,o,l);if(i){if(m>0)for(;b--;)y[b]||h[b]||(h[b]=J.call(c));h=g(h)}et.apply(c,h),v&&!i&&h.length>0&&m+t.length>1&&n.uniqueSort(c)}return v&&(q=k,A=x),y};return a?i(o):o}function x(e,t,r){for(var i=0,a=t.length;a>i;i++)n(e,t[i],r);return r}function w(e,t,n,r){var i,a,s,o,l,c=d(e);if(!r&&1===c.length){if(a=c[0]=c[0].slice(0),a.length>2&&"ID"===(s=a[0]).type&&C.getById&&9===t.nodeType&&P&&S.relative[a[1].type]){if(t=(S.find.ID(s.matches[0].replace(Ct,Tt),t)||[])[0],!t)return n;e=e.slice(a.shift().value.length)}for(i=bt.needsContext.test(e)?0:a.length;i--&&(s=a[i],!S.relative[o=s.type]);)if((l=S.find[o])&&(r=l(s.matches[0].replace(Ct,Tt),ft.test(a[0].type)&&t.parentNode||t))){if(a.splice(i,1),e=r.length&&f(a),!e)return et.apply(n,r),n;break}}return D(e,c)(r,t,!P,n,ft.test(e)),n}var k,C,T,S,E,N,D,A,j,I,L,R,P,H,$,M,O,F="sizzle"+-new Date,_=e.document,q=0,W=0,B=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,Z=[],J=Z.pop,Q=Z.push,et=Z.push,tt=Z.slice,nt=Z.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]",st="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ot=st.replace("w","w#"),lt="\\["+it+"*("+st+")"+it+"*(?:([*^$|!~]?=)"+it+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ot+")|)|)"+it+"*\\]",ct=":("+st+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\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("^#("+st+")"),CLASS:RegExp("^\\.("+st+")"),TAG:RegExp("^("+st.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")},yt=/^[^{]+\{\s*\[native \w/,vt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,xt=/^(?:input|select|textarea|button)$/i,wt=/^h\d$/i,kt=/'|\\/g,Ct=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(Z=tt.call(_.childNodes),_.childNodes),Z[_.childNodes.length].nodeType}catch(St){et={apply:Z.length?function(e,t){Q.apply(e,tt.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}N=n.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},C=n.support={},I=n.setDocument=function(e){var n=e?e.ownerDocument||e:_,r=n.defaultView;return n!==L&&9===n.nodeType&&n.documentElement?(L=n,R=n.documentElement,P=!N(n),r&&r.attachEvent&&r!==r.top&&r.attachEvent("onbeforeunload",function(){I()}),C.attributes=a(function(e){return e.className="i",!e.getAttribute("className")}),C.getElementsByTagName=a(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),C.getElementsByClassName=a(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),C.getById=a(function(e){return R.appendChild(e).id=F,!n.getElementsByName||!n.getElementsByName(F).length}),C.getById?(S.find.ID=function(e,t){if(typeof t.getElementById!==X&&P){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},S.filter.ID=function(e){var t=e.replace(Ct,Tt);return function(e){return e.getAttribute("id")===t}}):(delete S.find.ID,S.filter.ID=function(e){var t=e.replace(Ct,Tt);return function(e){var n=typeof e.getAttributeNode!==X&&e.getAttributeNode("id");return n&&n.value===t}}),S.find.TAG=C.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==X?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,a=t.getElementsByTagName(e);if("*"===e){for(;n=a[i++];)1===n.nodeType&&r.push(n);return r}return a},S.find.CLASS=C.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==X&&P?n.getElementsByClassName(e):t},$=[],H=[],(C.qsa=yt.test(n.querySelectorAll))&&(a(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||H.push("\\["+it+"*(?:value|"+rt+")"),e.querySelectorAll(":checked").length||H.push(":checked")}),a(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&H.push("[*^$]="+it+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||H.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),H.push(",.*:")})),(C.matchesSelector=yt.test(M=R.webkitMatchesSelector||R.mozMatchesSelector||R.oMatchesSelector||R.msMatchesSelector))&&a(function(e){C.disconnectedMatch=M.call(e,"div"),M.call(e,"[s!='']:x"),$.push("!=",ct)}),H=H.length&&RegExp(H.join("|")),$=$.length&&RegExp($.join("|")),O=yt.test(R.contains)||R.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=R.compareDocumentPosition?function(e,t){if(e===t)return G=!0,0;var r=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return r?1&r||!C.sortDetached&&t.compareDocumentPosition(e)===r?e===n||O(_,e)?-1:t===n||O(_,t)?1:j?nt.call(j,e)-nt.call(j,t):0:4&r?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,a=e.parentNode,s=t.parentNode,l=[e],c=[t];if(e===t)return G=!0,0;if(!a||!s)return e===n?-1:t===n?1:a?-1:s?1:j?nt.call(j,e)-nt.call(j,t):0;if(a===s)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):L},n.matches=function(e,t){return n(e,null,null,t)},n.matchesSelector=function(e,t){if((e.ownerDocument||e)!==L&&I(e),t=t.replace(ht,"='$1']"),!(!C.matchesSelector||!P||$&&$.test(t)||H&&H.test(t)))try{var r=M.call(e,t);if(r||C.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return n(t,L,null,[e]).length>0},n.contains=function(e,t){return(e.ownerDocument||e)!==L&&I(e),O(e,t)},n.attr=function(e,n){(e.ownerDocument||e)!==L&&I(e);var r=S.attrHandle[n.toLowerCase()],i=r&&K.call(S.attrHandle,n.toLowerCase())?r(e,n,!P):t;return i===t?C.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=!C.detectDuplicates,j=!C.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},E=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+=E(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=E(t);return n},S=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(Ct,Tt),e[3]=(e[4]||e[5]||"").replace(Ct,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(Ct,Tt).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=B[e+" "];return t||(t=RegExp("(^|"+it+")"+e+"("+it+"|$)"))&&B(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 a=n.attr(i,e);return null==a?"!="===t:t?(a+="","="===t?a===r:"!="===t?a!==r:"^="===t?r&&0===a.indexOf(r):"*="===t?r&&a.indexOf(r)>-1:"$="===t?r&&a.slice(-r.length)===r:"~="===t?(" "+a+" ").indexOf(r)>-1:"|="===t?a===r||a.slice(0,r.length+1)===r+"-":!1):!0}},CHILD:function(e,t,n,r,i){var a="nth"!==e.slice(0,3),s="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=a!==s?"nextSibling":"previousSibling",g=t.parentNode,b=o&&t.nodeName.toLowerCase(),y=!l&&!o;if(g){if(a){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=[s?g.firstChild:g.lastChild],s&&y){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(y&&(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||(y&&((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,a=S.pseudos[e]||S.setFilters[e.toLowerCase()]||n.error("unsupported pseudo: "+e);return a[F]?a(t):a.length>1?(r=[e,e,"",t],S.setFilters.hasOwnProperty(e.toLowerCase())?i(function(e,n){for(var r,i=a(e,t),s=i.length;s--;)r=nt.call(e,i[s]),e[r]=!(n[r]=i[s])}):function(e){return a(e,0,r)}):a}},pseudos:{not:i(function(e){var t=[],n=[],r=D(e.replace(ut,"$1"));return r[F]?i(function(e,t,n,i){for(var a,s=r(e,null,i,[]),o=e.length;o--;)(a=s[o])&&(e[o]=!(t[o]=a))}):function(e,i,a){return t[0]=e,r(t,null,a,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||E(t)).indexOf(e)>-1}}),lang:i(function(e){return gt.test(e||"")||n.error("unsupported lang: "+e),e=e.replace(Ct,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===R},focus:function(e){return e===L.activeElement&&(!L.hasFocus||L.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!S.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})}},S.pseudos.nth=S.pseudos.eq;for(k in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})S.pseudos[k]=l(k);for(k in{submit:!0,reset:!0})S.pseudos[k]=c(k);p.prototype=S.filters=S.pseudos,S.setFilters=new p,D=n.compile=function(e,t){var n,r=[],i=[],a=z[e+" "];if(!a){for(t||(t=d(e)),n=t.length;n--;)a=y(t[n]),a[F]?r.push(a):i.push(a);a=z(e,v(i,r))}return a},C.sortStable=F.split("").sort(V).join("")===F,C.detectDuplicates=G,I(),C.sortDetached=a(function(e){return 1&e.compareDocumentPosition(L.createElement("div"))}),a(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||s("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),C.attributes&&a(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||s("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),a(function(e){return null==e.getAttribute("disabled")})||s(rt,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),at.find=n,at.expr=n.selectors,at.expr[":"]=at.expr.pseudos,at.unique=n.uniqueSort,at.text=n.getText,at.isXMLDoc=n.isXML,at.contains=n.contains}(e);var ht={};at.Callbacks=function(e){e="string"==typeof e?ht[e]||r(e):at.extend({},e);var n,i,a,s,o,l,c=[],u=!e.once&&[],p=function(t){for(n=e.memory&&t,i=!0,l=s||0,s=0,o=c.length,a=!0;c&&o>l;l++)if(c[l].apply(t[0],t[1])===!1&&e.stopOnFalse){n=!1;break}a=!1,c&&(u?u.length&&p(u.shift()):n?c=[]:d.disable())},d={add:function(){if(c){var t=c.length;!function r(t){at.each(t,function(t,n){var i=at.type(n);"function"===i?e.unique&&d.has(n)||c.push(n):n&&n.length&&"string"!==i&&r(n)})}(arguments),a?o=c.length:n&&(s=t,p(n))}return this},remove:function(){return c&&at.each(arguments,function(e,t){for(var n;(n=at.inArray(t,c,n))>-1;)c.splice(n,1),a&&(o>=n&&o--,l>=n&&l--)}),this},has:function(e){return e?at.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],a?u.push(t):p(t)),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},at.extend({Deferred:function(e){var t=[["resolve","done",at.Callbacks("once memory"),"resolved"],["reject","fail",at.Callbacks("once memory"),"rejected"],["notify","progress",at.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return at.Deferred(function(n){at.each(t,function(t,a){var s=a[0],o=at.isFunction(e[t])&&e[t];i[a[1]](function(){var e=o&&o.apply(this,arguments);e&&at.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===r?n.promise():this,o?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?at.extend(e,r):r}},i={};return r.pipe=r.then,at.each(t,function(e,a){var s=a[2],o=a[3];r[a[1]]=s.add,o&&s.add(function(){n=o},t[1^e][2].disable,t[2][2].lock),i[a[0]]=function(){return i[a[0]+"With"](this===i?r:this,arguments),this},i[a[0]+"With"]=s.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,a=et.call(arguments),s=a.length,o=1!==s||e&&at.isFunction(e.promise)?s:0,l=1===o?e:at.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(s>1)for(t=Array(s),n=Array(s),r=Array(s);s>i;i++)a[i]&&at.isFunction(a[i].promise)?a[i].promise().done(c(i,r,a)).fail(l.reject).progress(c(i,n,t)):--o;return o||l.resolveWith(r,a),l.promise()}}),at.support=function(t){var n=z.createElement("input"),r=z.createDocumentFragment(),i=z.createElement("div"),a=z.createElement("select"),s=a.appendChild(z.createElement("option"));return n.type?(n.type="checkbox",t.checkOn=""!==n.value,t.optSelected=s.selected,t.reliableMarginRight=!0,t.boxSizingReliable=!0,t.pixelPosition=!1,n.checked=!0,t.noCloneChecked=n.cloneNode(!0).checked,a.disabled=!0,t.optDisabled=!s.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,at(function(){var n,r,a="padding:0;margin:0;border:0;display:block;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box",s=z.getElementsByTagName("body")[0];s&&(n=z.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",s.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%",at.swap(s,null!=s.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=a,r.style.marginRight=r.style.width="0",i.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),s.removeChild(n))}),t):t}({});var mt,gt,bt=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,yt=/([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,at.extend(e,t)}}return this.cache[n]||(this.cache[n]={}),n},set:function(e,t,n){var r,i=this.key(e),a=this.cache[i];if("string"==typeof t)a[t]=n;else if(at.isEmptyObject(a))at.extend(this.cache[i],t);else for(r in t)a[r]=t[r];return a},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,at.camelCase(n))):(this.set(e,n,r),r!==t?r:n)},remove:function(e,n){var r,i,a,s=this.key(e),o=this.cache[s];if(n===t)this.cache[s]={};else{at.isArray(n)?i=n.concat(n.map(at.camelCase)):(a=at.camelCase(n),n in o?i=[n,a]:(i=a,i=i in o?[i]:i.match(ot)||[])),r=i.length;for(;r--;)delete o[i[r]]}},hasData:function(e){return!at.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}},mt=new i,gt=new i,at.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)}}),at.fn.extend({data:function(e,n){var r,i,s=this[0],o=0,l=null;if(e===t){if(this.length&&(l=mt.get(s),1===s.nodeType&&!gt.get(s,"hasDataAttrs"))){for(r=s.attributes;r.length>o;o++)i=r[o].name,0===i.indexOf("data-")&&(i=at.camelCase(i.slice(5)),a(s,i,l[i]));gt.set(s,"hasDataAttrs",!0)}return l}return"object"==typeof e?this.each(function(){mt.set(this,e)}):at.access(this,function(n){var r,i=at.camelCase(e);if(s&&n===t){if(r=mt.get(s,e),r!==t)return r;if(r=mt.get(s,i),r!==t)return r;if(r=a(s,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)})}}),at.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=gt.get(e,n),r&&(!i||at.isArray(r)?i=gt.access(e,n,at.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=at.queue(e,t),r=n.length,i=n.shift(),a=at._queueHooks(e,t),s=function(){at.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete a.stop,i.call(e,s,a)),!r&&a&&a.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return gt.get(e,n)||gt.access(e,n,{empty:at.Callbacks("once memory").add(function(){gt.remove(e,[t+"queue",n])})})}}),at.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?at.queue(this[0],e):n===t?this:this.each(function(){var t=at.queue(this,e,n);at._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&at.dequeue(this,e)})},dequeue:function(e){return this.each(function(){at.dequeue(this,e)})},delay:function(e,t){return e=at.fx?at.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,a=at.Deferred(),s=this,o=this.length,l=function(){--i||a.resolveWith(s,[s])};for("string"!=typeof e&&(n=e,e=t),e=e||"fx";o--;)r=gt.get(s[o],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),a.promise(n)}});var vt,xt,wt=/[\t\r\n\f]/g,kt=/\r/g,Ct=/^(?:input|select|textarea|button)$/i;at.fn.extend({attr:function(e,t){return at.access(this,at.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){at.removeAttr(this,e)})},prop:function(e,t){return at.access(this,at.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[at.propFix[e]||e]})},addClass:function(e){var t,n,r,i,a,s=0,o=this.length,l="string"==typeof e&&e;if(at.isFunction(e))return this.each(function(t){at(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(ot)||[];o>s;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(wt," "):" ")){for(a=0;i=t[a++];)0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=at.trim(r)}return this},removeClass:function(e){var t,n,r,i,a,s=0,o=this.length,l=0===arguments.length||"string"==typeof e&&e;if(at.isFunction(e))return this.each(function(t){at(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(ot)||[];o>s;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(wt," "):"")){for(a=0;i=t[a++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");n.className=e?at.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):at.isFunction(e)?this.each(function(n){at(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n)for(var t,r=0,i=at(this),a=e.match(ot)||[];t=a[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else(n===B||"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,a=this[0];return arguments.length?(i=at.isFunction(e),this.each(function(r){var a;1===this.nodeType&&(a=i?e.call(this,r,at(this).val()):e,null==a?a="":"number"==typeof a?a+="":at.isArray(a)&&(a=at.map(a,function(e){return null==e?"":e+""})),n=at.valHooks[this.type]||at.valHooks[this.nodeName.toLowerCase()],n&&"set"in n&&n.set(this,a,"value")!==t||(this.value=a))})):a?(n=at.valHooks[a.type]||at.valHooks[a.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(a,"value"))!==t?r:(r=a.value,"string"==typeof r?r.replace(kt,""):null==r?"":r)):void 0}}),at.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,a="select-one"===e.type||0>i,s=a?null:[],o=a?i+1:r.length,l=0>i?o:a?i:0;o>l;l++)if(n=r[l],!(!n.selected&&l!==i||(at.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&at.nodeName(n.parentNode,"optgroup"))){if(t=at(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,a=at.makeArray(t),s=i.length;s--;)r=i[s],(r.selected=at.inArray(at(r).val(),a)>=0)&&(n=!0);return n||(e.selectedIndex=-1),a}}},attr:function(e,n,r){var i,a,s=e.nodeType;return e&&3!==s&&8!==s&&2!==s?typeof e.getAttribute===B?at.prop(e,n,r):(1===s&&at.isXMLDoc(e)||(n=n.toLowerCase(),i=at.attrHooks[n]||(at.expr.match.bool.test(n)?xt:vt)),r===t?i&&"get"in i&&null!==(a=i.get(e,n))?a:(a=at.find.attr(e,n),null==a?t:a):null!==r?i&&"set"in i&&(a=i.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(at.removeAttr(e,n),t)):void 0},removeAttr:function(e,t){var n,r,i=0,a=t&&t.match(ot);if(a&&1===e.nodeType)for(;n=a[i++];)r=at.propFix[n]||n,at.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)},attrHooks:{type:{set:function(e,t){if(!at.support.radioValue&&"radio"===t&&at.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,a,s,o=e.nodeType;return e&&3!==o&&8!==o&&2!==o?(s=1!==o||!at.isXMLDoc(e),s&&(n=at.propFix[n]||n,a=at.propHooks[n]),r!==t?a&&"set"in a&&(i=a.set(e,r,n))!==t?i:e[n]=r:a&&"get"in a&&null!==(i=a.get(e,n))?i:e[n]):void 0},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||Ct.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),xt={set:function(e,t,n){return t===!1?at.removeAttr(e,n):e.setAttribute(n,n),n}},at.each(at.expr.match.bool.source.match(/\w+/g),function(e,n){var r=at.expr.attrHandle[n]||at.find.attr;at.expr.attrHandle[n]=function(e,n,i){var a=at.expr.attrHandle[n],s=i?t:(at.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return at.expr.attrHandle[n]=a,s}}),at.support.optSelected||(at.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),at.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){at.propFix[this.toLowerCase()]=this}),at.each(["radio","checkbox"],function(){at.valHooks[this]={set:function(e,n){return at.isArray(n)?e.checked=at.inArray(at(e).val(),n)>=0:t}},at.support.checkOn||(at.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Tt=/^key/,St=/^(?:mouse|contextmenu)|click/,Et=/^(?:focusinfocus|focusoutblur)$/,Nt=/^([^.]*)(?:\.(.+)|)$/;at.event={global:{},add:function(e,n,r,i,a){var s,o,l,c,u,p,d,f,h,m,g,b=gt.get(e);if(b){for(r.handler&&(s=r,r=s.handler,a=s.selector),r.guid||(r.guid=at.guid++),(c=b.events)||(c=b.events={}),(o=b.handle)||(o=b.handle=function(e){return typeof at===B||e&&at.event.triggered===e.type?t:at.event.dispatch.apply(o.elem,arguments)},o.elem=e),n=(n||"").match(ot)||[""],u=n.length;u--;)l=Nt.exec(n[u])||[],h=g=l[1],m=(l[2]||"").split(".").sort(),h&&(d=at.event.special[h]||{},h=(a?d.delegateType:d.bindType)||h,d=at.event.special[h]||{},p=at.extend({type:h,origType:g,data:i,handler:r,guid:r.guid,selector:a,needsContext:a&&at.expr.match.needsContext.test(a),namespace:m.join(".")},s),(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)),a?f.splice(f.delegateCount++,0,p):f.push(p),at.event.global[h]=!0);e=null}},remove:function(e,t,n,r,i){var a,s,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=Nt.exec(t[c])||[],f=m=o[1],h=(o[2]||"").split(".").sort(),f){for(p=at.event.special[f]||{},f=(r?p.delegateType:p.bindType)||f,d=l[f]||[],o=o[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=a=d.length;a--;)u=d[a],!i&&m!==u.origType||n&&n.guid!==u.guid||o&&!o.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(d.splice(a,1),u.selector&&d.delegateCount--,p.remove&&p.remove.call(e,u));s&&!d.length&&(p.teardown&&p.teardown.call(e,h,g.handle)!==!1||at.removeEvent(e,f,g.handle),delete l[f])}else for(f in l)at.event.remove(e,f+t[c],n,r,!0);at.isEmptyObject(l)&&(delete g.handle,gt.remove(e,"events"))}},trigger:function(n,r,i,a){var s,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&&!Et.test(h+at.event.triggered)&&(h.indexOf(".")>=0&&(m=h.split("."),h=m.shift(),m.sort()),u=0>h.indexOf(":")&&"on"+h,n=n[at.expando]?n:new at.Event(h,"object"==typeof n&&n),n.isTrigger=a?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]:at.makeArray(r,[n]),d=at.event.special[h]||{},a||!d.trigger||d.trigger.apply(i,r)!==!1)){if(!a&&!d.noBubble&&!at.isWindow(i)){for(c=d.delegateType||h,Et.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(s=0;(o=f[s++])&&!n.isPropagationStopped();)n.type=s>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&&at.acceptData(o)&&p.apply&&p.apply(o,r)===!1&&n.preventDefault();return n.type=h,a||n.isDefaultPrevented()||d._default&&d._default.apply(f.pop(),r)!==!1||!at.acceptData(i)||u&&at.isFunction(i[h])&&!at.isWindow(i)&&(l=i[u],l&&(i[u]=null),at.event.triggered=h,i[h](),at.event.triggered=t,l&&(i[u]=l)),n.result}},dispatch:function(e){e=at.event.fix(e);var n,r,i,a,s,o=[],l=et.call(arguments),c=(gt.get(this,"events")||{})[e.type]||[],u=at.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!u.preDispatch||u.preDispatch.call(this,e)!==!1){for(o=at.event.handlers.call(this,e,c),n=0;(a=o[n++])&&!e.isPropagationStopped();)for(e.currentTarget=a.elem,r=0;(s=a.handlers[r++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(s.namespace))&&(e.handleObj=s,e.data=s.data,i=((at.event.special[s.origType]||{}).handle||s.handler).apply(a.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,a,s,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++)s=n[r],a=s.selector+" ",i[a]===t&&(i[a]=s.needsContext?at(a,this).index(c)>=0:at.find(a,this,null,[c]).length),i[a]&&i.push(s);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,a,s=n.button;return null==e.pageX&&null!=n.clientX&&(r=e.target.ownerDocument||z,i=r.documentElement,a=r.body,e.pageX=n.clientX+(i&&i.scrollLeft||a&&a.scrollLeft||0)-(i&&i.clientLeft||a&&a.clientLeft||0),e.pageY=n.clientY+(i&&i.scrollTop||a&&a.scrollTop||0)-(i&&i.clientTop||a&&a.clientTop||0)),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},fix:function(e){if(e[at.expando])return e;var t,n,r,i=e.type,a=e,s=this.fixHooks[i];for(s||(this.fixHooks[i]=s=St.test(i)?this.mouseHooks:Tt.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new at.Event(a),t=r.length;t--;)n=r[t],e[n]=a[n];return e.target||(e.target=z),3===e.target.nodeType&&(e.target=e.target.parentNode),s.filter?s.filter(e,a):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&&at.nodeName(this,"input")?(this.click(),!1):t},_default:function(e){return at.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=at.extend(new at.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?at.event.trigger(i,null,t):at.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},at.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)},at.Event=function(e,n){return this instanceof at.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.getPreventDefault&&e.getPreventDefault()?s:o):this.type=e,n&&at.extend(this,n),this.timeStamp=e&&e.timeStamp||at.now(),this[at.expando]=!0,t):new at.Event(e,n)},at.Event.prototype={isDefaultPrevented:o,isPropagationStopped:o,isImmediatePropagationStopped:o,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=s,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=s,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=s,this.stopPropagation()}},at.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){at.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,a=e.handleObj;return(!i||i!==r&&!at.contains(r,i))&&(e.type=a.origType,n=a.handler.apply(this,arguments),e.type=t),n}}}),at.support.focusinBubbles||at.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){at.event.simulate(t,e.target,at.event.fix(e),!0)};at.event.special[t]={setup:function(){0===n++&&z.addEventListener(e,r,!0)},teardown:function(){0===--n&&z.removeEventListener(e,r,!0)}}}),at.fn.extend({on:function(e,n,r,i,a){var s,l;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(l in e)this.on(l,n,r,e[l],a);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===a&&(s=i,i=function(e){return at().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=at.guid++)),this.each(function(){at.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,a;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,at(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(a in e)this.off(a,n,e[a]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=o),this.each(function(){at.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){at.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?at.event.trigger(e,n,r,!0):t}});var Dt=/^.[^:#\[\.,]*$/,At=/^(?:parents|prev(?:Until|All))/,jt=at.expr.match.needsContext,It={children:!0,contents:!0,next:!0,prev:!0};at.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(at(e).filter(function(){for(t=0;i>t;t++)if(at.contains(r[t],this))return!0}));for(t=0;i>t;t++)at.find(e,r[t],n);return n=this.pushStack(i>1?at.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t=at(e,this),n=t.length;return this.filter(function(){for(var e=0;n>e;e++)if(at.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&&jt.test(e)?at(e):e||[],!1).length},closest:function(e,t){for(var n,r=0,i=this.length,a=[],s=jt.test(e)||"string"!=typeof e?at(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(s?s.index(n)>-1:1===n.nodeType&&at.find.matchesSelector(n,e))){n=a.push(n);break}return this.pushStack(a.length>1?at.unique(a):a)},index:function(e){return e?"string"==typeof e?tt.call(at(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?at(e,t):at.makeArray(e&&e.nodeType?[e]:e),r=at.merge(this.get(),n);return this.pushStack(at.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),at.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return at.dir(e,"parentNode")},parentsUntil:function(e,t,n){return at.dir(e,"parentNode",n)},next:function(e){return c(e,"nextSibling")},prev:function(e){return c(e,"previousSibling")},nextAll:function(e){return at.dir(e,"nextSibling")},prevAll:function(e){return at.dir(e,"previousSibling")},nextUntil:function(e,t,n){return at.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return at.dir(e,"previousSibling",n)},siblings:function(e){return at.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return at.sibling(e.firstChild)},contents:function(e){return e.contentDocument||at.merge([],e.childNodes)}},function(e,t){at.fn[e]=function(n,r){var i=at.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=at.filter(r,i)),this.length>1&&(It[e]||at.unique(i),At.test(e)&&i.reverse()),this.pushStack(i)}}),at.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?at.find.matchesSelector(r,e)?[r]:[]:at.find.matches(e,at.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){for(var i=[],a=r!==t;(e=e[n])&&9!==e.nodeType;)if(1===e.nodeType){if(a&&at(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 Lt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Rt=/<([\w:]+)/,Pt=/<|&#?\w+;/,Ht=/<(?:script|style|link)/i,$t=/^(?:checkbox|radio)$/i,Mt=/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,at.fn.extend({text:function(e){return at.access(this,function(e){return e===t?at.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?at.filter(e,this):this,i=0;null!=(n=r[i]);i++)t||1!==n.nodeType||at.cleanData(g(n)),n.parentNode&&(t&&at.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&&(at.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 at.clone(this,e,t)})},html:function(e){return at.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&&!Ht.test(e)&&!qt[(Rt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(Lt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(at.cleanData(g(n,!1)),n.innerHTML=e);n=0}catch(a){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=at.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),at(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=J.apply([],e);var r,i,a,s,o,l,c=0,u=this.length,p=this,h=u-1,m=e[0],b=at.isFunction(m);if(b||!(1>=u||"string"!=typeof m||at.support.checkClone)&&Mt.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=at.buildFragment(e,this[0].ownerDocument,!1,!n&&this),i=r.firstChild,1===r.childNodes.length&&(r=i),i)){for(a=at.map(g(r,"script"),d),s=a.length;u>c;c++)o=r,c!==h&&(o=at.clone(o,!0,!0),s&&at.merge(a,g(o,"script"))),t.call(this[c],o,c);if(s)for(l=a[a.length-1].ownerDocument,at.map(a,f),c=0;s>c;c++)o=a[c],Ot.test(o.type||"")&&!gt.access(o,"globalEval")&&at.contains(l,o)&&(o.src?at._evalUrl(o.src):at.globalEval(o.textContent.replace(_t,"")))}return this}}),at.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){at.fn[e]=function(e){for(var n,r=[],i=at(e),a=i.length-1,s=0;a>=s;s++)n=s===a?this:this.clone(!0),at(i[s])[t](n),Q.apply(r,n.get());return this.pushStack(r)}}),at.extend({clone:function(e,t,n){var r,i,a,s,o=e.cloneNode(!0),l=at.contains(e.ownerDocument,e);if(!(at.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||at.isXMLDoc(e)))for(s=g(o),a=g(e),r=0,i=a.length;i>r;r++)b(a[r],s[r]);if(t)if(n)for(a=a||g(e),s=s||g(o),r=0,i=a.length;i>r;r++)m(a[r],s[r]);else m(e,o);return s=g(o,"script"),s.length>0&&h(s,!l&&g(e,"script")),o},buildFragment:function(e,t,n,r){for(var i,a,s,o,l,c,u=0,p=e.length,d=t.createDocumentFragment(),f=[];p>u;u++)if(i=e[u],i||0===i)if("object"===at.type(i))at.merge(f,i.nodeType?[i]:i);else if(Pt.test(i)){for(a=a||d.appendChild(t.createElement("div")),s=(Rt.exec(i)||["",""])[1].toLowerCase(),o=qt[s]||qt._default,a.innerHTML=o[1]+i.replace(Lt,"<$1></$2>")+o[2],c=o[0];c--;)a=a.lastChild;at.merge(f,a.childNodes),a=d.firstChild,a.textContent=""}else f.push(t.createTextNode(i));for(d.textContent="",u=0;i=f[u++];)if((!r||-1===at.inArray(i,r))&&(l=at.contains(i.ownerDocument,i),a=g(d.appendChild(i),"script"),l&&h(a),n))for(c=0;i=a[c++];)Ot.test(i.type||"")&&n.push(i);return d},cleanData:function(e){for(var n,r,a,s,o,l,c=at.event.special,u=0;(r=e[u])!==t;u++){if(i.accepts(r)&&(o=r[gt.expando],o&&(n=gt.cache[o]))){if(a=Object.keys(n.events||{}),a.length)for(l=0;(s=a[l])!==t;l++)c[s]?at.event.remove(r,s):at.removeEvent(r,s,n.handle);gt.cache[o]&&delete gt.cache[o]}delete mt.cache[r[mt.expando]]}},_evalUrl:function(e){return at.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),at.fn.extend({wrapAll:function(e){var t;return at.isFunction(e)?this.each(function(t){at(this).wrapAll(e.call(this,t))}):(this[0]&&(t=at(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 at.isFunction(e)?this.each(function(t){at(this).wrapInner(e.call(this,t))}):this.each(function(){var t=at(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=at.isFunction(e);return this.each(function(n){at(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){at.nodeName(this,"body")||at(this).replaceWith(this.childNodes)}).end()}});var Wt,Bt,Ut=/^(none|table(?!-c[ea]).+)/,zt=/^margin/,Gt=RegExp("^("+st+")(.*)$","i"),Vt=RegExp("^("+st+")(?!px)[a-z%]+$","i"),Xt=RegExp("^([+-])=("+st+")","i"),Yt={BODY:"block"},Kt={position:"absolute",visibility:"hidden",display:"block"},Zt={letterSpacing:0,fontWeight:400},Jt=["Top","Right","Bottom","Left"],Qt=["Webkit","O","Moz","ms"];at.fn.extend({css:function(e,n){return at.access(this,function(e,n,r){var i,a,s={},o=0;if(at.isArray(n)){for(i=x(e),a=n.length;a>o;o++)s[n[o]]=at.css(e,n[o],!1,i);return s}return r!==t?at.style(e,n,r):at.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(){v(this)?at(this).show():at(this).hide()})}}),at.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(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 a,s,o,l=at.camelCase(n),c=e.style;return n=at.cssProps[l]||(at.cssProps[l]=y(c,l)),o=at.cssHooks[n]||at.cssHooks[l],r===t?o&&"get"in o&&(a=o.get(e,!1,i))!==t?a:c[n]:(s=typeof r,"string"===s&&(a=Xt.exec(r))&&(r=(a[1]+1)*a[2]+parseFloat(at.css(e,n)),s="number"),null==r||"number"===s&&isNaN(r)||("number"!==s||at.cssNumber[l]||(r+="px"),at.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 a,s,o,l=at.camelCase(n);return n=at.cssProps[l]||(at.cssProps[l]=y(e.style,l)),o=at.cssHooks[n]||at.cssHooks[l],o&&"get"in o&&(a=o.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Zt&&(a=Zt[n]),""===r||r?(s=parseFloat(a),r===!0||at.isNumeric(s)?s||0:a):a}}),Wt=function(e,n,r){var i,a,s,o=r||x(e),l=o?o.getPropertyValue(n)||o[n]:t,c=e.style;return o&&(""!==l||at.contains(e.ownerDocument,e)||(l=at.style(e,n)),Vt.test(l)&&zt.test(n)&&(i=c.width,a=c.minWidth,s=c.maxWidth,c.minWidth=c.maxWidth=c.width=l,l=o.width,c.width=i,c.minWidth=a,c.maxWidth=s)),l},at.each(["height","width"],function(e,n){at.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Ut.test(at.css(e,"display"))?at.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 k(e,t,r?C(e,n,r,at.support.boxSizing&&"border-box"===at.css(e,"boxSizing",!1,i),i):0)}}}),at(function(){at.support.reliableMarginRight||(at.cssHooks.marginRight={get:function(e,n){return n?at.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!at.support.pixelPosition&&at.fn.position&&at.each(["top","left"],function(e,n){at.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Vt.test(r)?at(e).position()[n]+"px":r):t}}})}),at.expr&&at.expr.filters&&(at.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight},at.expr.filters.visible=function(e){return!at.expr.filters.hidden(e)}),at.each({margin:"",padding:"",border:"Width"},function(e,t){at.cssHooks[e+t]={expand:function(n){for(var r=0,i={},a="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+Jt[r]+t]=a[r]||a[r-2]||a[0];return i}},zt.test(e)||(at.cssHooks[e+t].set=k)});var en=/%20/g,tn=/\[\]$/,nn=/\r?\n/g,rn=/^(?:submit|button|image|reset|file)$/i,an=/^(?:input|select|textarea|keygen)/i;at.fn.extend({serialize:function(){return at.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=at.prop(this,"elements");return e?at.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!at(this).is(":disabled")&&an.test(this.nodeName)&&!rn.test(e)&&(this.checked||!$t.test(e))}).map(function(e,t){var n=at(this).val();return null==n?null:at.isArray(n)?at.map(n,function(e){return{name:t.name,value:e.replace(nn,"\r\n")}}):{name:t.name,value:n.replace(nn,"\r\n")}}).get()}}),at.param=function(e,n){var r,i=[],a=function(e,t){t=at.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=at.ajaxSettings&&at.ajaxSettings.traditional),at.isArray(e)||e.jquery&&!at.isPlainObject(e))at.each(e,function(){a(this.name,this.value)});else for(r in e)N(r,e[r],n,a);return i.join("&").replace(en,"+")},at.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){at.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),at.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 sn,on,ln=at.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=at.fn.load,yn={},vn={},xn="*/".concat("*");try{on=U.href}catch(wn){on=z.createElement("a"),on.href="",on=on.href}sn=gn.exec(on.toLowerCase())||[],at.fn.load=function(e,n,r){if("string"!=typeof e&&bn)return bn.apply(this,arguments);var i,a,s,o=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l),e=e.slice(0,l)),at.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),o.length>0&&at.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){s=arguments,o.html(i?at("<div>").append(at.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){o.each(r,s||[e.responseText,t,e])}),this},at.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){at.fn[t]=function(e){return this.on(t,e)}}),at.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:on,type:"GET",isLocal:fn.test(sn[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":at.parseJSON,"text xml":at.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?j(j(e,at.ajaxSettings),t):j(at.ajaxSettings,e)},ajaxPrefilter:D(yn),ajaxTransport:D(vn),ajax:function(e,n){function r(e,n,r,o){var c,p,y,v,w,C=n;2!==x&&(x=2,l&&clearTimeout(l),i=t,s=o||"",k.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(v=I(d,k,r)),v=L(d,v,k,c),c?(d.ifModified&&(w=k.getResponseHeader("Last-Modified"),w&&(at.lastModified[a]=w),w=k.getResponseHeader("etag"),w&&(at.etag[a]=w)),204===e||"HEAD"===d.type?C="nocontent":304===e?C="notmodified":(C=v.state,p=v.data,y=v.error,c=!y)):(y=C,(e||!C)&&(C="error",0>e&&(e=0))),k.status=e,k.statusText=(n||C)+"",c?m.resolveWith(f,[p,C,k]):m.rejectWith(f,[k,C,y]),k.statusCode(b),b=t,u&&h.trigger(c?"ajaxSuccess":"ajaxError",[k,d,c?p:y]),g.fireWith(f,[k,C]),u&&(h.trigger("ajaxComplete",[k,d]),--at.active||at.event.trigger("ajaxStop")))}"object"==typeof e&&(n=e,e=t),n=n||{};var i,a,s,o,l,c,u,p,d=at.ajaxSetup({},n),f=d.context||d,h=d.context&&(f.nodeType||f.jquery)?at(f):at.event,m=at.Deferred(),g=at.Callbacks("once memory"),b=d.statusCode||{},y={},v={},x=0,w="canceled",k={readyState:0,getResponseHeader:function(e){var t;if(2===x){if(!o)for(o={};t=dn.exec(s);)o[t[1].toLowerCase()]=t[2];t=o[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?s:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=v[n]=v[n]||e,y[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 k.always(e[k.status]);return this},abort:function(e){var t=e||w;return i&&i.abort(t),r(0,t),this}};if(m.promise(k).complete=g.add,k.success=k.done,k.error=k.fail,d.url=((e||d.url||on)+"").replace(un,"").replace(mn,sn[1]+"//"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=at.trim(d.dataType||"*").toLowerCase().match(ot)||[""],null==d.crossDomain&&(c=gn.exec(d.url.toLowerCase()),d.crossDomain=!(!c||c[1]===sn[1]&&c[2]===sn[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(sn[3]||("http:"===sn[1]?"80":"443")))),d.data&&d.processData&&"string"!=typeof d.data&&(d.data=at.param(d.data,d.traditional)),A(yn,d,n,k),2===x)return k;u=d.global,u&&0===at.active++&&at.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!hn.test(d.type),a=d.url,d.hasContent||(d.data&&(a=d.url+=(cn.test(a)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=pn.test(a)?a.replace(pn,"$1_="+ln++):a+(cn.test(a)?"&":"?")+"_="+ln++)),d.ifModified&&(at.lastModified[a]&&k.setRequestHeader("If-Modified-Since",at.lastModified[a]),at.etag[a]&&k.setRequestHeader("If-None-Match",at.etag[a])),(d.data&&d.hasContent&&d.contentType!==!1||n.contentType)&&k.setRequestHeader("Content-Type",d.contentType),k.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)k.setRequestHeader(p,d.headers[p]);if(d.beforeSend&&(d.beforeSend.call(f,k,d)===!1||2===x))return k.abort();w="abort";for(p in{success:1,error:1,complete:1})k[p](d[p]);if(i=A(vn,d,n,k)){k.readyState=1,u&&h.trigger("ajaxSend",[k,d]),d.async&&d.timeout>0&&(l=setTimeout(function(){k.abort("timeout")},d.timeout));try{x=1,i.send(y,r)}catch(C){if(!(2>x))throw C;r(-1,C)}}else r(-1,"No Transport");return k},getJSON:function(e,t,n){return at.get(e,t,n,"json")},getScript:function(e,n){return at.get(e,t,n,"script")}}),at.each(["get","post"],function(e,n){at[n]=function(e,r,i,a){return at.isFunction(r)&&(a=a||i,i=r,r=t),at.ajax({url:e,type:n,dataType:a,data:r,success:i})}}),at.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return at.globalEval(e),e}}}),at.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),at.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=at("<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 kn=[],Cn=/(=)\?(?=&|$)|\?\?/;at.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=kn.pop()||at.expando+"_"+ln++;return this[e]=!0,e}}),at.ajaxPrefilter("json jsonp",function(n,r,i){var a,s,o,l=n.jsonp!==!1&&(Cn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Cn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(a=n.jsonpCallback=at.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(Cn,"$1"+a):n.jsonp!==!1&&(n.url+=(cn.test(n.url)?"&":"?")+n.jsonp+"="+a),n.converters["script json"]=function(){return o||at.error(a+" was not called"),o[0]},n.dataTypes[0]="json",s=e[a],e[a]=function(){o=arguments},i.always(function(){e[a]=s,n[a]&&(n.jsonpCallback=r.jsonpCallback,kn.push(a)),o&&at.isFunction(s)&&s(o[0]),o=s=t}),"script"):t}),at.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var Tn=at.ajaxSettings.xhr(),Sn={0:200,1223:204},En=0,Nn={};e.ActiveXObject&&at(e).on("unload",function(){for(var e in Nn)Nn[e]();Nn=t}),at.support.cors=!!Tn&&"withCredentials"in Tn,at.support.ajax=Tn=!!Tn,at.ajaxTransport(function(e){var n;return at.support.cors||Tn&&!e.crossDomain?{send:function(r,i){var a,s,o=e.xhr();if(o.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)o[a]=e.xhrFields[a];e.mimeType&&o.overrideMimeType&&o.overrideMimeType(e.mimeType),e.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(a in r)o.setRequestHeader(a,r[a]);n=function(e){return function(){n&&(delete Nn[s],n=o.onload=o.onerror=null,"abort"===e?o.abort():"error"===e?i(o.status||404,o.statusText):i(Sn[o.status]||o.status,o.statusText,"string"==typeof o.responseText?{text:o.responseText}:t,o.getAllResponseHeaders()))}},o.onload=n(),o.onerror=n("error"),n=Nn[s=En++]=n("abort"),o.send(e.hasContent&&e.data||null)},abort:function(){n&&n()}}:t});var Dn,An,jn=/^(?:toggle|show|hide)$/,In=RegExp("^(?:([+-])=|)("+st+")([a-z%]*)$","i"),Ln=/queueHooks$/,Rn=[M],Pn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=In.exec(t),a=i&&i[3]||(at.cssNumber[e]?"":"px"),s=(at.cssNumber[e]||"px"!==a&&+r)&&In.exec(at.css(n.elem,e)),o=1,l=20;if(s&&s[3]!==a){a=a||s[3],i=i||[],s=+r||1;do o=o||".5",s/=o,at.style(n.elem,e,s+a);while(o!==(o=n.cur()/r)&&1!==o&&--l)}return i&&(s=n.start=+s||+r||0,n.unit=a,n.end=i[1]?s+(i[1]+1)*i[2]:+i[2]),n}]};at.Animation=at.extend(H,{tweener:function(e,t){at.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?Rn.unshift(e):Rn.push(e)}}),at.Tween=O,O.prototype={constructor:O,init:function(e,t,n,r,i,a){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=a||(at.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?at.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=at.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){at.fx.step[e.prop]?at.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[at.cssProps[e.prop]]||at.cssHooks[e.prop])?at.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)}},at.each(["toggle","show","hide"],function(e,t){var n=at.fn[t];at.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(F(t,!0),e,r,i)}}),at.fn.extend({fadeTo:function(e,t,n,r){return this.filter(v).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=at.isEmptyObject(e),a=at.speed(t,n,r),s=function(){var t=H(this,at.extend({},e),a);(i||gt.get(this,"finish"))&&t.stop(!0)};return s.finish=s,i||a.queue===!1?this.each(s):this.queue(a.queue,s)},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",a=at.timers,s=gt.get(this);if(n)s[n]&&s[n].stop&&i(s[n]);else for(n in s)s[n]&&s[n].stop&&Ln.test(n)&&i(s[n]);for(n=a.length;n--;)a[n].elem!==this||null!=e&&a[n].queue!==e||(a[n].anim.stop(r),t=!1,a.splice(n,1));(t||!r)&&at.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"],a=at.timers,s=r?r.length:0;for(n.finish=!0,at.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=a.length;t--;)a[t].elem===this&&a[t].queue===e&&(a[t].anim.stop(!0),a.splice(t,1));for(t=0;s>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),at.each({slideDown:F("show"),slideUp:F("hide"),slideToggle:F("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){at.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),at.speed=function(e,t,n){var r=e&&"object"==typeof e?at.extend({},e):{complete:n||!n&&t||at.isFunction(e)&&e,duration:e,easing:n&&t||t&&!at.isFunction(t)&&t};return r.duration=at.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in at.fx.speeds?at.fx.speeds[r.duration]:at.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){at.isFunction(r.old)&&r.old.call(this),r.queue&&at.dequeue(this,r.queue)},r},at.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},at.timers=[],at.fx=O.prototype.init,at.fx.tick=function(){var e,n=at.timers,r=0;for(Dn=at.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||at.fx.stop(),Dn=t},at.fx.timer=function(e){e()&&at.timers.push(e)&&at.fx.start()},at.fx.interval=13,at.fx.start=function(){An||(An=setInterval(at.fx.tick,at.fx.interval))},at.fx.stop=function(){clearInterval(An),An=null},at.fx.speeds={slow:600,fast:200,_default:400},at.fx.step={},at.expr&&at.expr.filters&&(at.expr.filters.animated=function(e){return at.grep(at.timers,function(t){return e===t.elem}).length}),at.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){at.offset.setOffset(this,e,t)});var n,r,i=this[0],a={top:0,left:0},s=i&&i.ownerDocument;return s?(n=s.documentElement,at.contains(n,i)?(typeof i.getBoundingClientRect!==B&&(a=i.getBoundingClientRect()),r=_(s),{top:a.top+r.pageYOffset-n.clientTop,left:a.left+r.pageXOffset-n.clientLeft}):a):void 0 +},at.offset={setOffset:function(e,t,n){var r,i,a,s,o,l,c,u=at.css(e,"position"),p=at(e),d={};"static"===u&&(e.style.position="relative"),o=p.offset(),a=at.css(e,"top"),l=at.css(e,"left"),c=("absolute"===u||"fixed"===u)&&(a+l).indexOf("auto")>-1,c?(r=p.position(),s=r.top,i=r.left):(s=parseFloat(a)||0,i=parseFloat(l)||0),at.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(d.top=t.top-o.top+s),null!=t.left&&(d.left=t.left-o.left+i),"using"in t?t.using.call(e,d):p.css(d)}},at.fn.extend({position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===at.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),at.nodeName(e[0],"html")||(r=e.offset()),r.top+=at.css(e[0],"borderTopWidth",!0),r.left+=at.css(e[0],"borderLeftWidth",!0)),{top:t.top-r.top-at.css(n,"marginTop",!0),left:t.left-r.left-at.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||G;e&&!at.nodeName(e,"html")&&"static"===at.css(e,"position");)e=e.offsetParent;return e||G})}}),at.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(n,r){var i="pageYOffset"===r;at.fn[n]=function(a){return at.access(this,function(n,a,s){var o=_(n);return s===t?o?o[r]:n[a]:(o?o.scrollTo(i?e.pageXOffset:s,i?s:e.pageYOffset):n[a]=s,t)},n,a,arguments.length,null)}}),at.each({Height:"height",Width:"width"},function(e,n){at.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){at.fn[i]=function(i,a){var s=arguments.length&&(r||"boolean"!=typeof i),o=r||(i===!0||a===!0?"margin":"border");return at.access(this,function(n,r,i){var a;return at.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(a=n.documentElement,Math.max(n.body["scroll"+e],a["scroll"+e],n.body["offset"+e],a["offset"+e],a["client"+e])):i===t?at.css(n,r,o):at.style(n,r,i,o)},n,s?i:t,s,null)}})}),at.fn.size=function(){return this.length},at.fn.andSelf=at.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=at:"function"==typeof define&&define.amd&&define("jquery",[],function(){return at}),"object"==typeof e&&"object"==typeof e.document&&(e.jQuery=e.$=at)}(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&&(i=i.map(function(e){return(e.stack||e)+""}),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"),"respecVersion"in window&&respecVersion&&console.log("RESPEC Version: "+respecVersion)}),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;if(n=function(){if(!e.length){if(respecConfig.postProcess)for(var t=0;t<respecConfig.postProcess.length;t++)try{respecConfig.postProcess[t].apply(this)}catch(r){respecEvents.pub("error",r)}if(respecConfig.afterEnd)try{respecConfig.afterEnd.apply(window,Array.prototype.slice.call(arguments))}catch(r){respecEvents.pub("error",r)}return respecEvents.pub("end","core/base-runner"),void 0}var i=e.shift();if(i.run)try{i.run.call(i,respecConfig,document,n,respecEvents)}catch(r){respecEvents.pub("error",r),respecEvents.pub("end","unknown/with-error"),n()}else n()},respecConfig.preProcess)for(var r=0;r<respecConfig.preProcess.length;r++)try{respecConfig.preProcess[r].apply(this)}catch(i){respecEvents.pub("error",i)}n()}}}),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 a=n.target;"string"==typeof n.target&&(a=document.getElementById(n.target)),e=e.toLowerCase();var s=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 a=String.fromCharCode(code).toLowerCase();188==code&&(a=","),190==code&&(a=".");var s=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=s[p],p<s.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++:a==k?o++:l[a]&&r.shiftKey&&(a=l[a],a==k&&o++);return o!=s.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:s,target:a,event:n.type},a.addEventListener?a.addEventListener(n.type,s,!1):a.attachEvent?a.attachEvent("on"+n.type,s):a["on"+n.type]=s}},define("shortcut",function(e){return function(){var t;return t||e.shortcut}}(this)),define("core/ui",["jquery","shortcut"],function(e,t){var n,r,i,a,s,o,l=e("<div></div>").css({background:"#fff",border:"1px solid #000",width:"200px",display:"none",textAlign:"left",marginTop:"5px",marginRight:"5px"}),c=[],u=[],p={},d=function(t,n,r,a,s){n.push(t),p[r]||(p[r]=e("<button></button>").css({background:a,color:"#fff",fontWeight:"bold",border:"none",borderRadius:"5px",marginLeft:"5px"}).insertAfter(i).click(function(){for(var t=e("<ol></ol>"),r=0,i=n.length;i>r;r++){var a=n[r];a instanceof Error?e("<li><span></span> <a>⊞</a><pre></pre></li>").appendTo(t).find("span").text("["+a.name+"] "+a.message).end().find("a").css({fontSize:"1.1em",color:"#999",cursor:"pointer"}).click(function(){var t=e(this),n=t.text(),r=t.parent().find("pre");"⊞"===n?(t.text("⊟"),r.show()):(t.text("⊞"),r.hide())}).end().find("pre").text(a.stack).css({marginLeft:"0",maxWidth:"100%",overflowY:"hidden",overflowX:"scroll"}).hide().end():e("<li></li>").text(a).appendTo(t)}f.freshModal(s,t)})),p[r].text(n.length)},f={run:function(n,r,c,u){a=n,s=r,o=u,o.pub("start","core/ui");var d=e("<div id='respec-ui' class='removeOnSave'></div>",s).css({position:"fixed",top:"20px",right:"20px",width:"202px",textAlign:"right"}).appendTo(e("body",s));i=e("<button>ReSpec</button>").css({background:"#fff",fontWeight:"bold",border:"1px solid #ccc",borderRadius:"5px"}).click(function(){l.toggle()}).appendTo(d),l.appendTo(d),t.add("Esc",function(){f.closeModal()}),t.add("Ctrl+Alt+Shift+E",function(){p.error&&p.error.click()}),t.add("Ctrl+Alt+Shift+W",function(){p.warning&&p.warning.click()}),o.pub("end","core/ui"),c()},addCommand:function(n,r,i){var c=function(){l.hide(),require([r],function(e){e.show(f,a,s,o)})};e("<button></button>").css({background:"#fff",border:"none",borderBottom:"1px solid #ccc",width:"100%",textAlign:"left",fontSize:"inherit"}).text(n).click(c).appendTo(l),i&&t.add(i,c)},error:function(e){d(e,c,"error","#c00","Errors")},warning:function(e){d(e,u,"warning","#f60","Warnings")},closeModal:function(){r&&r.fadeOut(200,function(){r.remove(),r=null}),n&&(n.remove(),n=null)},freshModal:function(t,i){n&&n.remove(),r&&r.remove();var a=500;r=e("<div id='respec-overlay' class='removeOnSave'></div>").hide(),n=e("<div id='respec-modal' class='removeOnSave'><h3></h3><div class='inside'></div></div>").hide(),n.find("h3").text(t),n.find(".inside").append(i),e("body").append(r).append(n),r.click(this.closeModal).css({display:"block",opacity:0,position:"fixed",zIndex:1e4,top:"0px",left:"0px",height:"100%",width:"100%",background:"#000"}).fadeTo(200,.5),n.css({display:"block",position:"fixed",opacity:0,zIndex:11e3,left:"50%",marginLeft:-(a/2)+"px",top:"100px",background:"#fff",border:"5px solid #666",borderRadius:"5px",width:a+"px",padding:"0 20px 20px 20px",maxHeight:e(window).height()-150+"px",overflowY:"auto"}).fadeTo(200,1)}};return window.respecEvents&&respecEvents.sub("error",function(e){f.error(e)}),window.respecEvents&&respecEvents.sub("warn",function(e){f.warning(e)}),f}),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(";"),a=0,s=i.length;s>a;a++){var o=i[a].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="'+a(t.href)+'"'+(t.title?' title="'+a(t.title)+'"':"")+">"+f.lexer(e[1])+"</a>":'<img src="'+a(t.href)+'" alt="'+a(e[1])+'"'+(t.title?' title="'+a(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=a(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 a(e,t){return e.replace(t?/&/g:/&(?!#?\w+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function s(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,a,s,o,l,c,e=e.replace(/^ +$/gm,"");e;)if((a=d.newline.exec(e))&&(e=e.substring(a[0].length),a[0].length>1&&t.push({type:"space"})),a=d.code.exec(e))e=e.substring(a[0].length),a=a[0].replace(/^ {4}/gm,""),t.push({type:"code",text:g.pedantic?a:a.replace(/\n+$/,"")});else if(a=d.fences.exec(e))e=e.substring(a[0].length),t.push({type:"code",lang:a[2],text:a[3]});else if(a=d.heading.exec(e))e=e.substring(a[0].length),t.push({type:"heading",depth:a[1].length,text:a[2]});else if(a=d.lheading.exec(e))e=e.substring(a[0].length),t.push({type:"heading",depth:"="===a[2]?1:2,text:a[1]});else if(a=d.hr.exec(e))e=e.substring(a[0].length),t.push({type:"hr"});else if(a=d.blockquote.exec(e))e=e.substring(a[0].length),t.push({type:"blockquote_start"}),a=a[0].replace(/^ *> ?/gm,""),d.token(a,t,n),t.push({type:"blockquote_end"});else if(a=d.list.exec(e)){for(e=e.substring(a[0].length),t.push({type:"list_start",ordered:isFinite(a[2])}),a=a[0].match(d.item),r=!1,c=a.length,l=0;c>l;l++)s=a[l],o=s.length,s=s.replace(/^ *([*+-]|\d+\.) +/,""),~s.indexOf("\n ")&&(o-=s.length,s=g.pedantic?s.replace(/^ {1,4}/gm,""):s.replace(new RegExp("^ {1,"+o+"}","gm"),"")),i=r||/\n\n(?!\s*$)/.test(s),l!==c-1&&(r="\n"===s[s.length-1],i||(i=r)),t.push({type:i?"loose_item_start":"list_item_start"}),d.token(s,t),t.push({type:"list_item_end"});t.push({type:"list_end"})}else(a=d.html.exec(e))?(e=e.substring(a[0].length),t.push({type:g.sanitize?"paragraph":"html",pre:"pre"===a[1],text:a[0]})):n&&(a=d.def.exec(e))?(e=e.substring(a[0].length),t.links[a[1].toLowerCase()]={href:a[2],title:a[3]}):n&&(a=d.paragraph.exec(e))?(e=e.substring(a[0].length),t.push({type:"paragraph",text:a[0]})):(a=d.text.exec(e))&&(e=e.substring(a[0].length),t.push({type:"text",text:a[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]?s(o[1].substring(7)):s(o[1]),i=s("mailto:")+r):(r=a(o[1]),i=r),l+='<a href="'+i+'">'+r+"</a>";else if(o=f.url.exec(t))t=t.substring(o[0].length),r=a(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?a(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>"+a(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+=a(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),10)}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"),a=t(r);i.appendChild(r),n(a).appendChild(i),c[a]=i,c.length=a+1,u=i}function a(e,i){var a=r(e),s=a?t(a):1,o=n(s);a&&e.removeChild(a),e.appendChild(i(e)),a&&e.insertBefore(a,e.firstChild),o.appendChild(e),u=o}function s(e){u.appendChild(e)}function o(){return l}var l=e.createDocumentFragment(),c=[l],u=l,p=/H[1-6]/;return{addHeader:i,addSection:a,addElement:s,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,a=r.length;a>i;i++)t=r[i].length-2,("undefined"==typeof n||n>t)&&(n=t);var s=new RegExp("\n[ ]{0,"+n+"}","g");e=e.replace(s,"\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,a,s=e(n);i=t.firstChild;)if(1===i.nodeType)switch(a=i.tagName.toLowerCase()){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":s.addHeader(i);break;case"section":s.addSection(i,r);break;default:s.addElement(i)}else t.removeChild(i);return s.getRoot()}return r(t)},run:function(e,t,n,r){if(r.pub("start","core/markdown"),"markdown"===e.format){this.processSections(t);var i=$("#respec-ui"),a=this.structure(this.processBody(t),t);t.body.innerHTML="",t.body.appendChild(a),i.length&&$("#respec-ui").replaceWith(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(/\:/,""),a=r&&location.hostname,s=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,a=l.xdRegExp.exec(e);return a?(e=a[2],a=a[3],a=a.split(":"),i=a[1],a=a[0],!(e&&e!==t||a&&a!==n||(i||a)&&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,a,s)?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),a=t.moduleName+"."+t.ext,s=n.toUrl(t.moduleName+"."+t.ext)+".js";l.load(a,n,function(){var t=function(e){return r(s,e)};t.asModule=function(e,t){return r.asModule(e,s,t)},l.write(e,a,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),a=java.lang.System.getProperty("line.separator"),i=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(i),"utf-8")),s="";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(a),n.append(r);s=String(n.toString())}finally{i.close()}t(s)}),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: #C83500;\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\n@media print {\n .removeOnSave {\n display: none;\n }\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.extraCSS&&i.pub("warn","The 'extraCSS' configuration property is now deprecated."),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,a=this.attributes.length;a>i;i++){var s=this.attributes[i];r[0].setAttributeNS(s.namespaceURI,s.name,s.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 a=1,s=this[0].ownerDocument;if(e("#"+i,s).length){for(;e("#"+i+"-"+a,s).length;)a++;i+="-"+a}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,a=e.childNodes.length;a>i;++i)t(e.childNodes[i])}for(var n=[],r={},i=0,a=e.length;a>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()},removeReSpec:function(t){e(".remove, script[data-requiremodule]",t).remove()},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+/),a=0;a<i.length;a++){var s=i[a];if(window[s])try{e=window[s].apply(this,n)}catch(o){respecEvents.pub("warn","call to "+s+"() 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 a=t.specStatus;("FPWD"===a||"LC"===a||"WD-NOTE"===a||"LC-NOTE"===a)&&(a="WD"),"FPWD-NOTE"===a&&(a="WG-NOTE"),("finding"===a||"draft-finding"===a)&&(a="base");var s="https://";"unofficial"===a?s+="www.w3.org/StyleSheets/TR/w3c-unofficial":"base"===a?s+="www.w3.org/StyleSheets/TR/base":"CG-DRAFT"===a||"CG-FINAL"===a||"BG-DRAFT"===a||"BG-FINAL"===a?s+="www.w3.org/community/src/css/spec/"+a.toLowerCase()+".css":"webspec"===a?(s="https://specs.webplatform.org/assets/css/kraken.css",$('<link rel="icon" href="https://specs.webplatform.org/assets/img/icon.png">',n).appendTo($("head")),$(n.createElement("script")).attr({async:"async",src:"https://specs.webplatform.org/assets/js/kraken.js"}).appendTo($("head"))):s+="www.w3.org/StyleSheets/TR/W3C-"+a,e.linkCSS(n,s),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="",a=toString.call(e);if(a===functionType&&(e=e.call(this)),e===!0)return r(this);if(e===!1||null==e)return n(this);if("[object Array]"===a){if(e.length>0)for(var s=0,o=e.length;o>s;s++)i+=r(e[s]);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 a=0,s=e.length;s>a;a++)i+=n(e[a]);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,a){var s=a.length-1; +switch(i){case 1:return a[s-1];case 2:this.$=new r.ProgramNode(a[s-2],a[s]);break;case 3:this.$=new r.ProgramNode(a[s]);break;case 4:this.$=new r.ProgramNode([]);break;case 5:this.$=[a[s]];break;case 6:a[s-1].push(a[s]),this.$=a[s-1];break;case 7:this.$=new r.InverseNode(a[s-2],a[s-1],a[s]);break;case 8:this.$=new r.BlockNode(a[s-2],a[s-1],a[s]);break;case 9:this.$=a[s];break;case 10:this.$=a[s];break;case 11:this.$=new r.ContentNode(a[s]);break;case 12:this.$=new r.CommentNode(a[s]);break;case 13:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1]);break;case 14:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1]);break;case 15:this.$=a[s-1];break;case 16:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1]);break;case 17:this.$=new r.MustacheNode(a[s-1][0],a[s-1][1],!0);break;case 18:this.$=new r.PartialNode(a[s-1]);break;case 19:this.$=new r.PartialNode(a[s-2],a[s-1]);break;case 20:break;case 21:this.$=[[a[s-2]].concat(a[s-1]),a[s]];break;case 22:this.$=[[a[s-1]].concat(a[s]),null];break;case 23:this.$=[[a[s-1]],a[s]];break;case 24:this.$=[[a[s]],null];break;case 25:a[s-1].push(a[s]),this.$=a[s-1];break;case 26:this.$=[a[s]];break;case 27:this.$=a[s];break;case 28:this.$=new r.StringNode(a[s]);break;case 29:this.$=new r.IntegerNode(a[s]);break;case 30:this.$=new r.BooleanNode(a[s]);break;case 31:this.$=new r.HashNode(a[s]);break;case 32:a[s-1].push(a[s]),this.$=a[s-1];break;case 33:this.$=[a[s]];break;case 34:this.$=[a[s-2],a[s]];break;case 35:this.$=[a[s-2],new r.StringNode(a[s])];break;case 36:this.$=[a[s-2],new r.IntegerNode(a[s])];break;case 37:this.$=[a[s-2],new r.BooleanNode(a[s])];break;case 38:this.$=new r.IdNode(a[s]);break;case 39:a[s-2].push(a[s]),this.$=a[s-2];break;case 40:this.$=[a[s]]}},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],a=[],s=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;a.push(p),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var d,f,h,m,g,b,y,v,x,w={};;){if(h=r[r.length-1],this.defaultActions[h]?m=this.defaultActions[h]:(null==d&&(d=t()),m=s[h]&&s[h][d]),!("undefined"!=typeof m&&m.length&&m[0]||u)){x=[];for(b in s[h])this.terminals_[b]&&b>2&&x.push("'"+this.terminals_[b]+"'");var k="";k=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(k,{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),a.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(y=this.productions_[m[1]][1],w.$=i[i.length-y],w._$={first_line:a[a.length-(y||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(y||1)].first_column,last_column:a[a.length-1].last_column},g=this.performAction.call(w,o,c,l,this.yy,m[1],i,a),"undefined"!=typeof g)return g;y&&(r=r.slice(0,2*-1*y),i=i.slice(0,-1*y),a=a.slice(0,-1*y)),r.push(this.productions_[m[1]][0]),i.push(w.$),a.push(w._$),v=s[r[r.length-2]][r[r.length-1]],r.push(v);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 a=e[r];".."===a?n++:"."===a||"this"===a?this.isScoped=!0:t.push(a)}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,a,s=this.opcodes,o=[],l=0,c=s.length;c>l;l++)if(t=s[l],"DECLARE"===t)i=s[++l],a=s[++l],o.push("DECLARE "+i+" = "+a);else{r=e.DISASSEMBLE_MAP[t];for(var u=e.multiParamSize(t),p=[],d=0;u>d;d++)n=s[++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,a=r.length;a>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,a=e.opcodes;for(this.i=0,o=a.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,a,s=this.environment.opcodes,o=s[this.i+t];if("DECLARE"===o)return n=s[this.i+1],r=s[this.i+2],["DECLARE",n,r];n=e.DISASSEMBLE_MAP[o],i=e.multiParamSize(o),a=[];for(var l=0;i>l;l++)a.push(s[this.i+l+1+t]);return[n,a]},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,a=this.environment.depths.list.length;a>i;i++)r.push("depth"+this.environment.depths.list[i]);if(e)return r.push(this.source.join("\n ")),Function.apply(this,r);var s="function "+(this.name||"")+"("+r.join(",")+") {\n "+this.source.join("\n ")+"}";return Handlebars.log(Handlebars.logger.DEBUG,s+"\n\n"),s},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,a){var s,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++)s=this.popStack(),u.push(s),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,a,"{}"!==n)},populateCall:function(e,t,n,r,i){var a=["depth0"].concat(e).join(", "),s=["depth0"].concat(n).concat(e).join(", "),o=this.nextStack();if(this.usingKnownHelper)this.source.push(o+" = "+t+".call("+a+");");else{this.context.aliases.functionType='"function"';var l=i?"foundHelper && ":"";this.source.push("if("+l+"typeof "+t+" === functionType) { "+o+" = "+t+".call("+a+"); }")}r.call(this,o,s,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,a=0,s=i.length;s>a;a++){n=i[a],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,a=n.length;a>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(" "),a=t.RESERVED_WORDS={},s=0,o=i.length;o>s;s++)a[i[s]]=!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,a){if(options={helpers:r,partials:i,data:a},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,a){return t.load(e,r,function(t){a.isBuild&&a.inlineText&&(n[e]=t),i(a.isBuild?t:Handlebars.compile(t))},a)},write:function(e,r,i){if(r in n){var a=t.jsEscape(n[r]);i("define('"+e+"!"+r+"', ['handlebars'], function (hb) { return Handlebars.compile('"+a+"');});\n")}}}}),define("tmpl!w3c/templates/headers.html",["handlebars"],function(){return Handlebars.compile("<div class='head'>\n <p>\n {{#if logos}}\n {{showLogos logos}}\n {{else}}\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 {{/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 prependW3C}}W3C {{/if}}{{textStatus}} <time {{#if doRDFa}}property=\"dcterms:issued\"{{/if}}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 bugTrackerHTML}}\n <dt>Bug tracker:</dt>\n <dd>{{{bugTrackerHTML}}}</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 check the <a href=\"{{errata}}\"><strong>errata</strong></a> for any errors or issues\n reported since publication.\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 {{/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 {{#if isCCBY}}\n <a href='http://www.w3.org/Consortium/Legal/2013/copyright-documents-dual.html'>document use</a>\n {{else}}\n <a href='http://www.w3.org/Consortium/Legal/copyright-documents'>document use</a>\n {{/if}}\n 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 {{{sotdCustomParagraph}}}\n {{else}}\n {{#if isNoTrack}}\n <p>\n This document is merely a W3C-internal {{#if isMO}}member-confidential{{/if}} document. It\n has no official standing of any kind and does not represent consensus of the W3C\n 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.\n Other documents may supersede this document. A list of current W3C publications and the\n latest revision of this technical report can be found in the <a\n href='http://www.w3.org/TR/'>W3C technical reports index</a> at\n http://www.w3.org/TR/.</em>\n </p>\n {{#unless sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}}\n {{/unless}}\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 {{#unless isPR}}\n If you wish to make comments regarding this document, please send them to \n <a href='mailto:{{wgPublicList}}@w3.org{{#if subjectPrefix}}?subject={{subjectPrefixEnc}}{{/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 {{/unless}}\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 to be\n stable and to encourage implementation by the developer community. This Candidate\n Recommendation is expected to advance to Proposed Recommendation no earlier than\n {{humanCREnd}}.\n {{/if}}\n {{#if isPER}}\n W3C Advisory Committee Members are invited to\n send formal review comments on this Proposed\n Edited Recommendation to the W3C Team until\n {{humanPEREnd}}. \n Members of the Advisory Committee will find the\n appropriate review form for this document by\n consulting their list of current\n <a href='https://www.w3.org/2002/09/wbs/myQuestionnaires'>WBS questionnaires</a>. \n {{/if}}\n {{#if isPR}}\n The W3C Membership and other interested parties are invited to review the document and\n 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}}. 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\n period that ended {{humanLCEnd}}.\n {{else}}\n {{#unless isPER}}\n All comments are welcome.\n {{/unless}}\n {{/if}}\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 {{#if sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}\n {{/if}}\n {{#if notRec}}\n <p>\n Publication as {{anOrA}} {{textStatus}} does not imply endorsement by the W3C\n Membership. This is a draft document and may be updated, replaced or obsoleted by other\n documents at any time. It is inappropriate to cite this document as other than work in\n progress.\n </p>\n {{/if}}\n {{#if isRec}}\n <p>\n This document has been reviewed by W3C Members, by software developers, and by other W3C\n groups and interested parties, and is endorsed by the Director as a W3C Recommendation.\n It is a stable document and may be used as reference material or cited from another\n document. W3C's role in making the Recommendation is to draw attention to the\n specification and to promote its widespread deployment. This enhances the functionality\n and interoperability of the Web.\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\n document has satisfied the relevant technical requirements and is sufficiently stable to\n 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 <a{{#if doRDFa}} id=\"sotd_patent\" property='w3p:patentRules'{{/if}}\n href='http://www.w3.org/Consortium/Patent-Policy-20040205/'>5 February 2004 W3C Patent\n Policy</a>.\n {{/unless}}\n {{#if recNotExpected}}\n The group does not expect this document to become a W3C Recommendation.\n {{/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\n disclosures</a> \n {{/if}}\n made in connection with the deliverables of the group; that page also includes\n instructions for disclosing a patent. An individual who has actual knowledge of a patent\n which the individual believes contains\n <a href='http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential'>Essential\n Claim(s)</a> must disclose the information in accordance with\n <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 isNewProcess}}\n <p>This document is governed by the <a id=\"w3c_process_revision\"\n href=\"http://www.w3.org/2014/Process-20140801/\">1 August 2014 W3C Process Document</a>.\n </p>\n {{else}}\n <p>\n This document is governed by the <a id=\"w3c_process_revision\"\n href=\"http://www.w3.org/2005/10/Process-20051014/\">14 October 2005 W3C Process Document</a>.\n </p>\n {{/if}}\n {{#if addPatentNote}}<p>{{{addPatentNote}}}</p>{{/if}}\n {{/if}}\n {{/if}}\n {{/if}}\n</section>\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='dc:title'{{/if}}>{{title}}</h1>\n {{#if subtitle}}\n <h2 {{#if doRDFa}}property='bibo:subtitle' {{/if}}id='subtitle'>{{subtitle}}</h2>\n {{/if}}\n <h2>{{longStatus}} <time {{#if doRDFa}}property=\"dc:issued\"{{/if}}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 bugTrackerHTML}}\n <dt>Bug tracker:</dt>\n <dd>{{{bugTrackerHTML}}}</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 {{#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 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 {{#unless sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}}\n {{/unless}}\n {{#if wgPublicList}}\n <p>If you wish to make comments regarding this document, please send them to \n <a href='mailto:{{wgPublicList}}@w3.org{{#if subjectPrefix}}?subject={{subjectPrefixEnc}}{{/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\n email's subject{{/if}}.</p>\n {{/if}}\n {{#if sotdAfterWGinfo}}\n {{{sotdCustomParagraph}}}\n {{/if}}\n</section>\n")}),define("tmpl!w3c/templates/webspecs-headers.html",["handlebars"],function(){return Handlebars.compile('<header>\n <a href="http://specs.webplatform.org/" id="logo">\n <img alt="Web Platform Specs logo" height="50" src="https://specs.webplatform.org/assets/img/logo.svg" width="50"><br>\n Web Platform Specs\n </a>\n <h1>{{title}}</h1>\n {{#if subtitle}}\n <h2>{{subtitle}}</h2>\n {{/if}}\n <div id="meta">\n <button class=\'contributors linkalike\' data-repository="{{repository}}">contributors</button>•\n <a href="https://github.com/{{repository}}/issues">bugs</a>\n •\n <a href="https://github.com/{{repository}}">fork me</a>\n •\n <a href="{{licenseInfo.url}}" title="{{licenseInfo.name}}" rel="license">{{licenseInfo.short}}</a>\n •\n <span class="date">{{shortISODate}} (<a href="https://github.com/{{repository}}/commits">commit log</a>)</span>\n </div>\n</header>\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","tmpl!w3c/templates/webspecs-headers.html"],function(e,t,n,r,i,a,s){return Handlebars.registerHelper("showPeople",function(e,t){var n="",r="",i="",a="",s="",o="",l="",c="";this.doRDFa&&("Editor"===e?(l="_:editor0",n=" property='bibo:editor' resource='"+l+"'",r=" property='rdf:first' typeof='foaf:Person'"):"Author"===e&&(r=" property='dc:contributor' typeof='foaf:Person'"),a=" property='foaf:name'",i=" property='foaf:mbox'",s=" property='foaf:workplaceHomepage'",o=" property='foaf:homepage'");for(var u="",p=0,d=t.length;d>p;p++){var f=t[p];f.w3cid&&(c=" data-editor-id='"+parseInt(f.w3cid,10)+"'"),this.doRDFa?(u+="<dd class='p-author h-card vcard' "+n+c+"><span"+r+">","Editor"===e&&(l=d-1>p?"_:editor"+(p+1):"rdf:nil",n=" resource='"+l+"'")):u+="<dd class='p-author h-card vcard'"+c+">",u+=f.url?this.doRDFa?"<meta"+a+" content='"+f.name+"'><a class='u-url url p-name fn' "+o+" href='"+f.url+"'>"+f.name+"</a>":"<a class='u-url url p-name fn' href='"+f.url+"'>"+f.name+"</a>":"<span"+a+" class='p-name fn'>"+f.name+"</span>",f.company&&(u+=", ",u+=f.companyURL?"<a"+s+" class='p-org org h-org h-card' href='"+f.companyURL+"'>"+f.company+"</a>":f.company),f.mailto&&(u+=", <span class='ed_mailto'><a class='u-email email' "+i+" href='mailto:"+f.mailto+"'>"+f.mailto+"</a></span>"),f.note&&(u+=" ("+f.note+")"),this.doRDFa&&(u+="</span>\n","Editor"===e&&(u+="<span property='rdf:rest' resource='"+l+"'></span>\n")),u+="</dd>\n"}return new Handlebars.SafeString(u)}),Handlebars.registerHelper("showLogos",function(e){for(var t="<p>",n=0,r=e.length;r>n;n++){var i=e[n];i.url&&(t+="<a href='"+i.url+"'>"),i.id&&(t+="<span id='"+i.id+"'>"),i.src?(t+="<img src='"+i.src+"'",i.width&&(t+=" width='"+i.width+"'"),i.height&&(t+=" height='"+i.height+"'"),t+=i.alt?" alt='"+i.alt+"'":1==e.length?" alt='Logo'":" alt='Logo "+(n+1)+"'",t+=">"):i.alt&&(t+=i.alt),i.url&&(t+="</a>"),i.id&&(t+="</span>")}return t+="</p>",new Handlebars.SafeString(t)}),{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:"Working Group 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 Report","CG-FINAL":"Final Community Group Report","BG-DRAFT":"Draft Business Group Report","BG-FINAL":"Final Business Group Report"},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","webspec"],cgbg:["CG-DRAFT","CG-FINAL","BG-DRAFT","BG-FINAL"],precededByAn:["ED","IG-NOTE"],licenses:{cc0:{name:"Creative Commons 0 Public Domain Dedication","short":"CC0",url:"http://creativecommons.org/publicdomain/zero/1.0/"},"w3c-software":{name:"W3C Software Notice and License","short":"W3C",url:"http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231"},"cc-by":{name:"Creative Commons Attribution 4.0 International Public License","short":"CC-BY",url:"http://creativecommons.org/licenses/by/4.0/legalcode"}},run:function(e,o,l,c){c.pub("start","w3c/headers"),void 0===e.doRDFa&&(e.doRDFa=!0),e.license||(e.license="webspec"===e.specStatus?"w3c-software":"w3c"),e.isCCBY="cc-by"===e.license,"webspec"!==e.specStatus||$.inArray(e.license,["cc0","w3c-software"])||c.pub("error","You cannot use that license with WebSpecs."),"webspec"===e.specStatus||$.inArray(e.license,["cc-by","w3c"])||c.pub("error","You cannot use that license with that type of document."),e.licenseInfo=this.licenses[e.license],e.isCGBG=$.inArray(e.specStatus,this.cgbg)>=0,e.isCGFinal=e.isCGBG&&/G-FINAL$/.test(e.specStatus),e.isBasic="base"===e.specStatus,e.isWebSpec="webspec"===e.specStatus,e.isRegular=!e.isCGBG&&!e.isBasic&&!e.isWebSpec,e.specStatus||c.pub("error","Missing required configuration: specStatus"),e.isRegular&&!e.shortName&&c.pub("error","Missing required configuration: shortName"),e.isWebSpec&&!e.repository&&c.pub("error","Missing required configuration: repository (as in 'darobin/respec')"),e.title=o.title||"No Title",e.subtitle||(e.subtitle=""),e.publishDate?e.publishDate instanceof Date||(e.publishDate=t.parseSimpleDate(e.publishDate)):e.publishDate=t.parseLastModified(o.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&&c.pub("warn","Editor's Drafts should set edDraftURI.")),e.maturity=this.status2maturity[e.specStatus]?this.status2maturity[e.specStatus]:e.specStatus;var u="TR";if("Member-SUBM"===e.specStatus?u="Submission":"Team-SUBM"===e.specStatus&&(u="TeamSubmission"),e.isRegular&&(e.thisVersion="http://www.w3.org/"+u+"/"+e.publishDate.getFullYear()+"/"+e.maturity+"-"+e.shortName+"-"+t.concatDate(e.publishDate)+"/"),"ED"===e.specStatus&&(e.thisVersion=e.edDraftURI),e.isRegular&&(e.latestVersion="http://www.w3.org/"+u+"/"+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||c.pub("error","previousPublishDate is set, but not previousMaturity"),e.previousPublishDate instanceof Date||(e.previousPublishDate=t.parseSimpleDate(e.previousPublishDate));var p=this.status2maturity[e.previousMaturity]?this.status2maturity[e.previousMaturity]:e.previousMaturity;e.prevVersion=e.isTagFinding?e.latestVersion+"-"+t.concatDate(e.previousPublishDate,"-"):e.isCGBG?e.prevVersion||"":e.isBasic||e.isWebSpec?"":"http://www.w3.org/TR/"+e.previousPublishDate.getFullYear()+"/"+p+"-"+e.shortName+"-"+t.concatDate(e.previousPublishDate)+"/"}else/NOTE$/.test(e.specStatus)||"FPWD"===e.specStatus||"FPLC"===e.specStatus||"ED"===e.specStatus||e.noRecTrack||e.isNoTrack||c.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||c.pub("error","At least one editor is required");var d=function(e,t){t.name||c.pub("error","All authors and editors must have a name.")};$.each(e.editors,d),$.each(e.authors||[],d),e.multipleEditors=e.editors.length>1,e.multipleAuthors=e.authors&&e.authors.length>1,$.each(e.alternateFormats||[],function(e,t){t.uri&&t.label||c.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.bugTracker&&(e.bugTracker["new"]&&e.bugTracker.open?e.bugTrackerHTML="<a href='"+e.bugTracker["new"]+"'>file a bug</a>"+" (<a href='"+e.bugTracker.open+"'>open bugs</a>)":e.bugTracker.open?e.bugTrackerHTML="<a href='"+e.bugTracker.open+"'>open bugs</a>":e.bugTracker["new"]&&(e.bugTrackerHTML="<a href='"+e.bugTracker["new"]+"'>file a bug</a>")),e.copyrightStart&&e.copyrightStart==e.publishYear&&(e.copyrightStart="");for(var f in this.status2text)this.status2long[f]||(this.status2long[f]=this.status2text[f]);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,/NOTE$/.test(e.specStatus)&&!e.prevVersion&&(e.showPreviousVersion=!1),e.isTagFinding&&(e.showPreviousVersion=e.previousPublishDate?!0:!1),e.notYetRec=e.isRecTrack&&"REC"!==e.specStatus,e.isRec=e.isRecTrack&&"REC"===e.specStatus,e.isRec&&!e.errata&&c.pub("error","Recommendations must have an errata link."),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.isPER="PER"===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.shortISODate=e.publishISODate.replace(/T.*/,""),e.processVersion=e.processVersion||"2014",e.isNewProcess="2014"==e.processVersion,e.doRDFa){e.rdfStatus?$("html").attr("typeof","bibo:Document "+e.rdfStatus):$("html").attr("typeof","bibo:Document ");var h="bibo: http://purl.org/ontology/bibo/ w3p: http://www.w3.org/2001/02pd/rec54#";$("html").attr("prefix",h),$("html>head").prepend($("<meta lang='' property='dc:language' content='en'>"))}var m;m=e.isCGBG?i(e):e.isWebSpec?s(e):n(e),$("body",o).prepend($(m)).addClass("h-entry");var g=$("#sotd");!e.isCGBG&&e.isNoTrack&&!e.isTagFinding||g.length||c.pub("error","A custom SotD paragraph is required for your type of document."),e.sotdCustomParagraph=g.html(),g.remove();var b=[e.wg,e.wgURI,e.wgPatentURI];if(b.some(function(e){return $.isArray(e)})&&b.some(function(e){return!$.isArray(e)})&&c.pub("error","If one of 'wg', 'wgURI', or 'wgPatentURI' is an array, they all have to be."),$.isArray(e.wg)){e.multipleWGs=e.wg.length>1,e.wgHTML=t.joinAnd(e.wg,function(t,n){return"<a href='"+e.wgURI[n]+"'>"+t+"</a>"});for(var y=[],v=0,x=e.wg.length;x>v;v++)y.push("<a href='"+e.wgPatentURI[v]+"' rel='disclosure'>"+e.wg[v]+"</a>");e.wgPatentHTML=y.join(", ")}else e.multipleWGs=!1,e.wgHTML="<a href='"+e.wgURI+"'>"+e.wg+"</a>";e.isLC&&!e.lcEnd&&c.pub("error","Status is LC but no lcEnd is specified"),"PR"!==e.specStatus||e.lcEnd||c.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||c.pub("error","Status is CR but no crEnd is specified"),e.humanCREnd=t.humanDate(e.crEnd||""),"PR"!==e.specStatus||e.prEnd||c.pub("error","Status is PR but no prEnd is specified"),e.humanPREnd=t.humanDate(e.prEnd||""),e.humanPEREnd=t.humanDate(e.perEnd||""),"PER"!==e.specStatus||e.perEnd||c.pub("error","Status is PER but no perEnd is specified"),e.recNotExpected=!e.isRecTrack&&"WD"==e.maturity&&"FPWD-NOTE"!==e.specStatus,e.isIGNote&&!e.charterDisclosureURI&&c.pub("error","IG-NOTEs must link to charter's disclosure section using charterDisclosureURI"),""!==e.subjectPrefix&&(e.subjectPrefixEnc=encodeURIComponent(e.subjectPrefix));var w;w=e.isCGBG?a(e):e.isWebSpec?null:r(e),w&&$(w).insertAfter($("#abstract")),!e.implementationReportURI&&(e.isCR||e.isPR||e.isRec)&&c.pub("error","CR, PR, and REC documents need to have an implementationReportURI defined."),e.isTagFinding&&!e.sotdCustomParagraph&&c.pub("error","ReSpec does not support automated SotD generation for TAG findings, please specify one using a <code><section></code> element with ID=sotd."),c.pub("end","w3c/headers"),l()}}}),define("w3c/abstract",[],function(){return{run:function(e,t,n,r){r.pub("start","w3c/abstract");var i=$("#abstract");if(i.length){if(0===i.find("p").length&&i.contents().wrapAll($("<p></p>")),i.prepend("<h2>Abstract</h2>"),i.addClass("introductory"),e.doRDFa){var a="dc:abstract",s=i.attr("property");s&&(a=s+" "+a),i.attr({property:a})}}else r.pub("error","Document must have one element with ID 'abstract'");r.pub("end","w3c/abstract"),n()}}}),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 id='respecRFC2119'>\n 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 a=$("#conformance");a.length&&a.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),a=r.attr("data-transform");r.removeAttr("data-transform");var s;try{s=e.runTransforms(r.html(),a)}catch(o){i.pub("error",o)}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 a=$("[data-include]"),s=a.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"),s--,0>=s&&(i.pub("end","w3c/data-include"),r())};s||(i.pub("end","w3c/data-include"),r()),a.each(function(){var t=$(this),r=t.attr("data-include"),a=t.attr("data-include-format")||"html",s=!!t.attr("data-include-replace"),l=!!t.attr("data-include-sync");$.ajax({dataType:a,url:r,async:!l,success:function(i){if(i){var l=t.attr("data-oninclude");l&&(i=e.runTransforms(i,l,r)),s?t.replaceWith("text"===a?n.createTextNode(i):i):"text"===a?t.text(i):t.html(i)}o(t)},error:function(e,n,a){i.pub("error","Error including URI="+r+": "+n+" ("+a+")"),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={}),e.respecRFC2119||(e.respecRFC2119={});var i={},a={};$("abbr[title]",t).each(function(){i[$(this).text()]=$(this).attr("title")}),$("acronym[title]",t).each(function(){a[$(this).text()]=$(this).attr("title")});var s=[];for(var o in i)s.push(o);for(var o in a)s.push(o);s.sort(function(e,t){return t.length<e.length?-1:e.length<t.length?1:0});for(var l=s.length?"(?:\\b"+s.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))g=g.split(/\s+/).join(" "),h.appendChild($("<em/>").attr({"class":"rfc2119",title:g}).text(g)[0]),e.respecRFC2119[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 y=!1;0===b.indexOf("!")&&(y=!0,b=b.replace(/^!/,"")),y?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]):a[g]?$(d).parents("acronym").length?h.appendChild(t.createTextNode(g)):h.appendChild($("<acronym/>").attr({title:a[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("core/dfn",[],function(){return{run:function(e,t,n,r){r.pub("start","core/dfn"),t.normalize(),$("[dfn-for]").each(function(){this.setAttribute("data-dfn-for",this.getAttribute("dfn-for").toLowerCase()),this.removeAttribute("dfn-for")}),e.definitionMap||(e.definitionMap={}),$("dfn").each(function(){var t=$(this);t.attr("for")?(t.attr("data-dfn-for",t.attr("for").toLowerCase()),t.removeAttr("for")):t.attr("data-dfn-for",(t.closest("[data-dfn-for]").attr("data-dfn-for")||"").toLowerCase()); +var n=t.dfnTitle();e.definitionMap[n]||(e.definitionMap[n]=[]),e.definitionMap[n].push(t)}),r.pub("end","core/dfn"),n()}}}),define("w3c/rfc2119",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","w3c/rfc2119");var a=$("#respecRFC2119");if(a.length){var s=Object.getOwnPropertyNames(t.respecRFC2119).sort();if(s&&s.length){var o="The ",l=function(e){var t="<em class='rfc2119' title='"+e+"'>"+e+"</em>";return t};o+=s.length>1?"key words "+e.joinAnd(s,l)+" are ":"key word "+e.joinAnd(s,l)+" is ",o+=a[0].innerHTML,a[0].innerHTML=o}else a.remove()}i.pub("end","w3c/rfc2119"),r()}}}),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("text!core/css/examples-webspecs.css",[],function(){return'/* --- EXAMPLES CONFLICTING WITH WEBSPECS --- */\naside.example:before, div.example:before, div.illegal-example:before, pre.example:before {\n content: "" !important;\n display: none;\n}\ndiv.example-title {\n color: #ef0000;\n}\n'}),define("core/examples",["text!core/css/examples.css","text!core/css/examples-webspecs.css"],function(e,t){var n=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(r,i,a,s){s.pub("start","core/examples");var o=$("pre.example, pre.illegal-example, aside.example"),l=0;o.length&&("webspec"===r.specStatus&&(e+=t),$(i).find("head link").first().before($("<style/>").text(e)),o.each(function(e,t){var r=$(t),i={number:l,illegal:r.hasClass("illegal-example")};if(r.is("aside")){l++;var a=n(r,l,i);r.prepend(a),s.pub("example",i)}else{var o=!!r.parents("aside").length;o||l++;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=n(r,o?0:l,i);f.append(a),f.append(r.clone()),r.replaceWith(f),o||s.pub("example",i)}})),s.pub("end","core/examples"),a()}}}),define("text!core/css/issues-notes.css",[],function(){return'/* --- ISSUES/NOTES --- */\ndiv.issue-title, div.note-title , div.warning-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.warning-title { color: #f22; }\ndiv.issue-title span, div.note-title span, div.warning-title span {\n text-transform: uppercase;\n}\ndiv.note, div.issue, div.warning {\n margin-top: 1em;\n margin-bottom: 1em;\n}\n.note > p:first-child, .issue > p:first-child, .warning > p:first-child { margin-top: 0 }\n.issue, .note, .warning {\n padding: .5em;\n border-left-width: .5em;\n border-left-style: solid;\n}\ndiv.issue, div.note , div.warning {\n padding: 1em 1.2em 0.5em;\n margin: 1em 0;\n position: relative;\n clear: both;\n}\nspan.note, span.issue, span.warning { 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.warning {\n border-color: #f11;\n border-right-width: .2em;\n border-top-width: .2em;\n border-bottom-width: .2em;\n border-style: solid;\n background: #fbe9e9;\n}\n\n.warning-title:before{\n content: "⚠"; /*U+26A0 WARNING SIGN*/\n font-size: 3em;\n float: left;\n height: 100%;\n padding-right: .3em;\n vertical-align: top;\n margin-top: -0.5em;\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 a=$(".issue, .note, .warning");if(a.length){$(n).find("head link").first().before($("<style/>").text(e));var s=$(".issue[data-number]").length>0,o=0;a.each(function(e,r){var a=$(r),l=a.hasClass("issue"),c=a.hasClass("warning"),u=a.hasClass("atrisk"),p="block"!=a.css("display"),d=a.attr("data-number"),f={inline:p,content:a.html()};if(f.type=l?"issue":c?"warning":"note",!l||p||s?d&&(f.number=d):(o++,f.number=o),!p){var h=$("<div class='"+f.type+(u?" atrisk":"")+"'></div>"),m=$("<div class='"+f.type+"-title'><span></span></div>"),g=l?u?"Feature at Risk":"Issue":c?"Warning":"Note";l&&(s?d&&(g+=" "+d,!u&&t.issueBase?m.find("span").wrap($("<a href='"+t.issueBase+d+"'/>")):u&&t.atRiskBase&&m.find("span").wrap($("<a href='"+t.atRiskBase+d+"'/>"))):g+=" "+o),m.find("span").text(g),f.title=a.attr("title"),f.title&&(m.append(n.createTextNode(": "+f.title)),a.removeAttr("title")),h.append(m),h.append(a.clone().removeClass(f.type).removeAttr("data-number")),a.replaceWith(h)}i.pub(f.type,f)})}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,i=$(this),a=i.attr("href");a&&(e=a.substring(1),t=$("#"+e),t.length?n=t.find("> a").text():(n="Req. not found '"+e+"'",r.pub("error","Requirement not found in a.reqRef: "+e)),i.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"});var IN_GLOBAL_SCOPE=!0;window.PR_SHOULD_USE_CONTINUATION=!0;var prettyPrintOne,prettyPrint;!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}function r(e){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=[],a="^"===r[0],s=["["];a&&s.push("^");for(var o=a?1:0,l=r.length;l>o;++o){var c=r[o];if(/\\[bdsw]/i.test(c))s.push(c);else{var u,p=t(c);l>o+2&&"-"===r[o+1]?(u=t(r[o+2]),o+=2):u=p,i.push([p,u]),65>u||p>122||(65>u||p>90||i.push([32|Math.max(65,p),32|Math.min(u,90)]),97>u||p>122||i.push([-33&Math.max(97,p),-33&Math.min(u,122)]))}}i.sort(function(e,t){return e[0]-t[0]||t[1]-e[1]});for(var d=[],f=[],o=0;o<i.length;++o){var h=i[o];h[0]<=f[1]+1?f[1]=Math.max(f[1],h[1]):d.push(f=h)}for(var o=0;o<d.length;++o){var h=d[o];s.push(n(h[0])),h[1]>h[0]&&(h[1]+1>h[0]&&s.push("-"),s.push(n(h[1])))}return s.push("]"),s.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")),i=t.length,o=[],l=0,c=0;i>l;++l){var u=t[l];if("("===u)++c;else if("\\"===u.charAt(0)){var p=+u.substring(1);p&&(c>=p?o[p]=-1:t[l]=n(p))}}for(var l=1;l<o.length;++l)-1===o[l]&&(o[l]=++a);for(var l=0,c=0;i>l;++l){var u=t[l];if("("===u)++c,o[c]||(t[l]="(?:");else if("\\"===u.charAt(0)){var p=+u.substring(1);p&&c>=p&&(t[l]="\\"+o[p])}}for(var l=0;i>l;++l)"^"===t[l]&&"^"!==t[l+1]&&(t[l]="");if(e.ignoreCase&&s)for(var l=0;i>l;++l){var u=t[l],d=u.charAt(0);u.length>=2&&"["===d?t[l]=r(u):"\\"!==d&&(t[l]=u.replace(/[a-zA-Z]/g,function(e){var t=e.charCodeAt(0);return"["+String.fromCharCode(-33&t,32|t)+"]"}))}return t.join("")}for(var a=0,s=!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,""))){s=!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,t){function n(e){var l=e.nodeType;if(1==l){if(r.test(e.className))return;for(var c=e.firstChild;c;c=c.nextSibling)n(c);var u=e.nodeName.toLowerCase();("br"===u||"li"===u)&&(i[o]="\n",s[o<<1]=a++,s[1|o++<<1]=e)}else if(3==l||4==l){var p=e.nodeValue;p.length&&(p=t?p.replace(/\r\n?/g,"\n"):p.replace(/[ \t\r\n]+/g," "),i[o]=p,s[o<<1]=a,a+=p.length,s[1|o++<<1]=e)}}var r=/(?:^|\s)nocode(?:\s|$)/,i=[],a=0,s=[],o=0;return n(e),{sourceCode:i.join("").replace(/\n$/,""),spans:s}}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?B.test(n.nodeValue)?e:t:t}return t===e?void 0:t}function i(t,r){var i,a={};!function(){for(var n=t.concat(r),s=[],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;)a[p.charAt(d)]=u;var f=u[1],h=""+f;o.hasOwnProperty(h)||(s.push(f),o[h]=null)}s.push(/[\0-\uffff]/),i=e(s)}();var s=r.length,o=function(e){for(var t=e.sourceCode,l=e.basePos,u=[l,H],p=0,d=t.match(i)||[],f={},h=0,m=d.length;m>h;++h){var g,b=d[h],y=f[b],v=void 0;if("string"==typeof y)g=!1;else{var x=a[b.charAt(0)];if(x)v=b.match(x[1]),y=x[0];else{for(var w=0;s>w;++w)if(x=r[w],v=b.match(x[1])){y=x[0];break}v||(y=H)}g=y.length>=5&&"lang-"===y.substring(0,5),!g||v&&"string"==typeof v[1]||(g=!1,y=O),g||(f[b]=y)}var k=p;if(p+=b.length,g){var C=v[1],T=b.indexOf(C),S=T+C.length;v[2]&&(S=b.length-v[2].length,T=S-C.length);var E=y.substring(5);n(l+k,b.substring(0,T),o,u),n(l+k+T,C,c(E,C),u),n(l+k+S,b.substring(S),o,u)}else u.push(l+k,y)}e.decorations=u};return o}function a(e){var t=[],n=[];e.tripleQuotedStrings?t.push([A,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""]):e.multiLineStrings?t.push([A,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"]):t.push([A,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"]),e.verbatimStrings&&n.push([A,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null]);var r=e.hashComments;r&&(e.cStyleComments?(r>1?t.push([I,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"]):t.push([I,/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"]),n.push([A,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null])):t.push([I,/^#[^\r\n]*/,null,"#"])),e.cStyleComments&&(n.push([I,/^\/\/[^\r\n]*/,null]),n.push([I,/^\/\*[\s\S]*?(?:\*\/|$)/,null]));var a=e.regexLiterals;if(a){var s=a>1?"":"\n\r",o=s?".":"[\\S\\s]",l="/(?=[^/*"+s+"])"+"(?:[^/\\x5B\\x5C"+s+"]"+"|\\x5C"+o+"|\\x5B(?:[^\\x5C\\x5D"+s+"]"+"|\\x5C"+o+")*(?:\\x5D|$))+"+"/";n.push(["lang-regex",RegExp("^"+W+"("+l+")")])}var c=e.types;c&&n.push([L,c]);var u=(""+e.keywords).replace(/^ | $/g,"");u.length&&n.push([j,new RegExp("^(?:"+u.replace(/[\s,]+/g,"|")+")\\b"),null]),t.push([H,/^\s+/,null," \r\n "]);var p="^.[^\\s\\w.$@'\"`/\\\\]*";return e.regexLiterals&&(p+="(?!s*/)"),n.push([R,/^@[a-z_$][a-z_$@0-9]*/i,null],[L,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[H,/^[a-z_$][a-z_$@0-9]*/i,null],[R,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[H,/^\\[\s\S]?/,null],[P,new RegExp(p),null]),i(t,n)}function s(e,t,n){function r(e){var t=e.nodeType;if(1!=t||a.test(e.className)){if((3==t||4==t)&&n){var l=e.nodeValue,c=l.match(s);if(c){var u=l.substring(0,c.index);e.nodeValue=u;var p=l.substring(c.index+c[0].length);if(p){var d=e.parentNode;d.insertBefore(o.createTextNode(p),e.nextSibling)}i(e),u||e.parentNode.removeChild(e)}}}else if("br"===e.nodeName)i(e),e.parentNode&&e.parentNode.removeChild(e);else for(var f=e.firstChild;f;f=f.nextSibling)r(f)}function i(e){function t(e,n){var r=n?e.cloneNode(!1):e,i=e.parentNode;if(i){var a=t(i,1),s=e.nextSibling;a.appendChild(r);for(var o=s;o;o=s)s=o.nextSibling,a.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;c.push(r)}for(var a=/(?:^|\s)nocode(?:\s|$)/,s=/\r\n?|\n/,o=e.ownerDocument,l=o.createElement("li");e.firstChild;)l.appendChild(e.firstChild);for(var c=[l],u=0;u<c.length;++u)r(c[u]);t===(0|t)&&c[0].setAttribute("value",t);var p=o.createElement("ol");p.className="linenums";for(var d=Math.max(0,0|t-1)||0,u=0,f=c.length;f>u;++u)l=c[u],l.className="L"+(u+d)%10,l.firstChild||l.appendChild(o.createTextNode(" ")),p.appendChild(l);e.appendChild(p)}function o(e){var t=/\bMSIE\s(\d+)/.exec(navigator.userAgent);t=t&&+t[1]<=8;var n=/\n/g,r=e.sourceCode,i=r.length,a=0,s=e.spans,o=s.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}u=c.length=d;var b,y=e.sourceNode;y&&(b=y.style.display,y.style.display="none");try{for(;o>l;){s[l];var v,x=s[l+2]||i,w=c[p+2]||i,g=Math.min(x,w),k=s[l+1];if(1!==k.nodeType&&(v=r.substring(a,g))){t&&(v=v.replace(n,"\r")),k.nodeValue=v;var C=k.ownerDocument,T=C.createElement("span");T.className=c[p+1];var S=k.parentNode;S.replaceChild(T,k),T.appendChild(k),x>a&&(s[l+1]=k=C.createTextNode(r.substring(g,x)),S.insertBefore(k,T.nextSibling))}a=g,a>=x&&(l+=2),a>=w&&(p+=2)}}finally{y&&(y.style.display=b)}}function l(e,t){for(var n=t.length;--n>=0;){var r=t[n];z.hasOwnProperty(r)?f.console&&console.warn("cannot override language handler %s",r):z[r]=e}}function c(e,t){return e&&z.hasOwnProperty(e)||(e=/^\s*</.test(t)?"default-markup":"default-code"),z[e]}function u(e){var n=e.langExtension;try{var r=t(e.sourceNode,e.pre),i=r.sourceCode;e.sourceCode=i,e.spans=r.spans,e.basePos=0,c(n,i)(e),o(e)}catch(a){f.console&&console.log(a&&a.stack||a)}}function p(e,t,n){var r=document.createElement("div");r.innerHTML="<pre>"+e+"</pre>",r=r.firstChild,n&&s(r,n,!0);var i={langExtension:t,numberLines:n,sourceNode:r,pre:1};return u(i),r.innerHTML}function d(e,t){function n(e){return a.getElementsByTagName(e)}function i(){for(var t=f.PR_SHOULD_USE_CONTINUATION?m.now()+250:1/0;b<c.length&&m.now()<t;b++){for(var n=c[b],a=T,l=n;l=l.previousSibling;){var p=l.nodeType,d=(7===p||8===p)&&l.nodeValue;if(d?!/^\??prettify\b/.test(d):3!==p||/\S/.test(l.nodeValue))break;if(d){a={},d.replace(/\b(\w+)=([\w:.%+-]+)/g,function(e,t,n){a[t]=n});break}}var h=n.className;if((a!==T||v.test(h))&&!x.test(h)){for(var S=!1,E=n.parentNode;E;E=E.parentNode){var N=E.tagName;if(C.test(N)&&E.className&&v.test(E.className)){S=!0;break}}if(!S){n.className+=" prettyprinted";var D=a.lang;if(!D){D=h.match(y);var A;!D&&(A=r(n))&&k.test(A.tagName)&&(D=A.className.match(y)),D&&(D=D[1])}var j;if(w.test(n.tagName))j=1;else{var I=n.currentStyle,L=o.defaultView,R=I?I.whiteSpace:L&&L.getComputedStyle?L.getComputedStyle(n,null).getPropertyValue("white-space"):0;j=R&&"pre"===R.substring(0,3)}var P=a.linenums;(P="true"===P||+P)||(P=h.match(/\blinenums\b(?::(\d+))?/),P=P?P[1]&&P[1].length?+P[1]:!0:!1),P&&s(n,P,j),g={langExtension:D,sourceNode:n,numberLines:P,pre:j},u(g)}}}b<c.length?setTimeout(i,250):"function"==typeof e&&e()}for(var a=t||document.body,o=a.ownerDocument||document,l=[n("pre"),n("code"),n("xmp")],c=[],p=0;p<l.length;++p)for(var d=0,h=l[p].length;h>d;++d)c.push(l[p][d]);l=null;var m=Date;m.now||(m={now:function(){return+new Date}});var g,b=0,y=/\blang(?:uage)?-([\w.]+)(?!\S)/,v=/\bprettyprint\b/,x=/\bprettyprinted\b/,w=/pre|xmp/i,k=/^code$/i,C=/^(?:pre|code|xmp)$/i,T={};i()}var f=window,h=["break,continue,do,else,for,if,return,while"],m=[h,"auto,case,char,const,default,double,enum,extern,float,goto,inline,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],g=[m,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],b=[g,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,delegate,dynamic_cast,explicit,export,friend,generic,late_check,mutable,namespace,nullptr,property,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],y=[g,"abstract,assert,boolean,byte,extends,final,finally,implements,import,instanceof,interface,null,native,package,strictfp,super,synchronized,throws,transient"],v=[g,"abstract,as,base,bool,by,byte,checked,decimal,delegate,descending,dynamic,event,finally,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,null,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where"],x="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,throw,true,try,unless,until,when,while,yes",w=[g,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],k="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=[h,"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"],T=[h,"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"],S=[h,"as,assert,const,copy,drop,enum,extern,fail,false,fn,impl,let,log,loop,match,mod,move,mut,priv,pub,pure,ref,self,static,struct,true,trait,type,unsafe,use"],E=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],N=[b,v,w,k,C,T,E],D=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/,A="str",j="kwd",I="com",L="typ",R="lit",P="pun",H="pln",$="tag",M="dec",O="src",F="atn",_="atv",q="nocode",W="(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<<?=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*",B=/\S/,U=a({keywords:N,hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),z={};l(U,["default-code"]),l(i([],[[H,/^[^<?]+/],[M,/^<!\w[^>]*(?:>|$)/],[I,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[P,/^(?:<[%?]|[%?]>)/],["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([[H,/^[\s]+/,null," \r\n"],[_,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[$,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[F,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[P,/^[=<>\/]+/],["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([],[[_,/^[\s\S]+/]]),["uq.val"]),l(a({keywords:b,hashComments:!0,cStyleComments:!0,types:D}),["c","cc","cpp","cxx","cyc","m"]),l(a({keywords:"null,true,false"}),["json"]),l(a({keywords:v,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:D}),["cs"]),l(a({keywords:y,cStyleComments:!0}),["java"]),l(a({keywords:E,hashComments:!0,multiLineStrings:!0}),["bash","bsh","csh","sh"]),l(a({keywords:C,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py","python"]),l(a({keywords:k,hashComments:!0,multiLineStrings:!0,regexLiterals:2}),["perl","pl","pm"]),l(a({keywords:T,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb","ruby"]),l(a({keywords:w,cStyleComments:!0,regexLiterals:!0}),["javascript","js"]),l(a({keywords:x,hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]),l(a({keywords:S,cStyleComments:!0,multilineStrings:!0}),["rc","rs","rust"]),l(i([],[[A,/^[\s\S]+/]]),["regex"]);var G=f.PR={createSimpleLexer:i,registerLangHandler:l,sourceDecorator:a,PR_ATTRIB_NAME:F,PR_ATTRIB_VALUE:_,PR_COMMENT:I,PR_DECLARATION:M,PR_KEYWORD:j,PR_LITERAL:R,PR_NOCODE:q,PR_PLAIN:H,PR_PUNCTUATION:P,PR_SOURCE:O,PR_STRING:A,PR_TAG:$,PR_TYPE:L,prettyPrintOne:IN_GLOBAL_SCOPE?f.prettyPrintOne=p:prettyPrintOne=p,prettyPrint:prettyPrint=IN_GLOBAL_SCOPE?f.prettyPrint=d:prettyPrint=d};"function"==typeof define&&define.amd&&define("google-code-prettify",[],function(){return G})}(),define("core/highlight",["text!core/css/highlight.css","google-code-prettify"],function(e,t){return{run:function(n,r,i,a){a.pub("start","core/highlight");for(var s="sh_css sh_html sh_javascript sh_javascript_dom sh_xml".split(" "),o=0,l=s.length;l>o;o++){var c=s[o];$("."+c).each(function(){$(this).removeClass(c).addClass("highlight"),a.pub("warn","Old highlighting class '"+c+"', use 'highlight' instead.")})}var u=$("pre.highlight, code.highlight"),p=function(){a.pub("end","core/highlight"),i()};u.length?(n.noHighlightCSS||$(r).find("head link").first().before($("<style/>").text(e)),u.addClass("prettyprint"),t.prettyPrint(p)):p()}}}),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 a=0,s=$("span.practicelab",n),o=$("<div><h2>Best Practices Summary</h2><ul></ul></div>"),l=o.find("ul");s.each(function(){var e=$(this),t=e.makeID("bp"),r=$("<li><a></a></li>"),i=r.find("a");a++,i.attr("href","#"+t).text("Best Practice "+a),r.append(n.createTextNode(": "+e.text())),l.append(r),e.prepend(n.createTextNode("Best Practice "+a+": "))}),s.length?($(n).find("head link").first().before($("<style/>").text(e)),$("#bp-summary")&&$("#bp-summary").append(o.contents())):$("#bp-summary").length&&(i.pub("warn","Using best practices summary (#bp-summary) but no best practices found."),$("#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),i=n.attr("title")||n.find("[title]").attr("title")||n.attr("alt")||n.find("[alt]").attr("alt")||"",a=$("<figcaption/>").text(i);n.is("div")?(r.pub("warn","You are using the deprecated div.figure syntax; please switch to <figure>."),n.append(a),n.renameElement("figure")):(r.pub("warn","You are using the deprecated img.figure syntax; please switch to <figure>."),n.wrap("<figure></figure>"),n.parent().append(a))});var i={},a=[],s=0;$("figure").each(function(){var e=$(this),n=e.find("figcaption"),o=n.text(),l=e.makeID("fig",o);n.length||r.pub("warn","A <figure> should contain a <figcaption>."),s++,n.wrapInner($("<span class='fig-title'/>")).prepend(t.createTextNode(" ")).prepend($("<span class='figno'>"+s+"</span>")).prepend(t.createTextNode("Fig. ")),i[l]=n.contents().clone();var c=n.clone();c.find("a").renameElement("span").removeAttr("href"),a.push($("<li class='tofline'><a class='tocxref' href='#"+l+"'></a></li>").find(".tocxref").append(c.contents()).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(a.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");a.length;)l.append(a.shift())}r.pub("end","core/figures"),n()}}}),define("core/biblio",[],function(){var e=function(e){var t=e.informativeReferences,n=e.normativeReferences,r=[],i=function(e){var t=[];for(var n in e)t.push(n);return t};for(var a in t)n[a]&&r.push(a);for(var s=0;s<r.length;s++)delete t[r[s]];return{informativeReferences:i(t),normativeReferences:i(n)}},t={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"},n=function(e){if("string"==typeof e)return e;var n="";return e.authors&&e.authors.length&&(n+=e.authors.join("; "),e.etAl&&(n+=" et al"),n+=". "),n+=e.href?'<a href="'+e.href+'"><cite>'+e.title+"</cite></a>. ":"<cite>"+e.title+"</cite>. ",e.date&&(n+=e.date+". "),e.status&&(n+=(t[e.status]||e.status)+". "),e.href&&(n+='URL: <a href="'+e.href+'">'+e.href+"</a>"),n},r=function(t,r){var i={},a=e(t),s=a.informativeReferences,o=a.normativeReferences,l={};if(s.length||o.length||t.refNote){var c=$("<section id='references' class='appendix'><h2>References</h2></section>").appendTo($("body"));t.refNote&&$("<p></p>").html(t.refNote).appendTo(c);for(var u=["Normative","Informative"],p=0;p<u.length;p++){var d=u[p],a="Normative"==d?o:s;if(a.length){var f=$("<section><h3></h3></section>").appendTo(c).find("h3").text(d+" references").end();f.makeID(null,d+" references"),a.sort();var h=$("<dl class='bibliography'></dl>").appendTo(f);t.doRDFa&&h.attr("resource","");for(var m=0;m<a.length;m++){var g=a[m];$("<dt></dt>").attr({id:"bib-"+g}).text("["+g+"]").appendTo(h);var b=$("<dd></dd>").appendTo(h),y=t.biblio[g],v={},x=g;for(v[g]=!0;y&&y.aliasOf;)v[y.aliasOf]?(y=null,r.pub("error","Circular reference in biblio DB between ["+g+"] and ["+x+"].")):(x=y.aliasOf,y=t.biblio[x],v[x]=!0);if(l[x]=l[x]||[],l[x].indexOf(g)<0&&l[x].push(g),y){if(b.html(n(y)+"\n"),t.doRDFa){var w=b.children("a");w.attr("property","Normative"===d?"dc:requires":"dc:references")}}else i[g]||(i[g]=0),i[g]++,b.html("<em style='color: #f00'>Reference not found.</em>\n")}}}for(var k in l)l[k].length>1&&r.pub("warn","["+k+"] is referenced in "+l[k].length+" ways ("+l[k].join(", ")+"). This causes duplicate entries in the reference section.");for(var C in i)i.hasOwnProperty(C)&&r.pub("error","Bad reference: ["+C+"] (appears "+i[C]+" times)")}};return{stringifyRef:n,run:function(t,n,i,a){a.pub("start","core/biblio");var s=e(t),o=[],l=function(){a.pub("end","core/biblio"),i()};if(t.localBiblio)for(var c in t.localBiblio)"undefined"!=typeof t.localBiblio[c].aliasOf&&o.push(t.localBiblio[c].aliasOf);if(s=s.normativeReferences.concat(s.informativeReferences).concat(o),s.length){var u="https://labs.w3.org/specrefs/bibrefs?refs="+s.join(",");$.ajax({dataType:"json",url:u,success:function(e){if(t.biblio=e||{},t.localBiblio)for(var n in t.localBiblio)t.biblio[n]=t.localBiblio[n];r(t,a),l()},error:function(e,t,n){a.pub("error","Error loading references from '"+u+"': "+t+" ("+n+")"),l()}})}else l()}}}),function(){var e=function(e){var t=[],n={"float":/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][-+]?[0-9]+)?|[0-9]+[Ee][-+]?[0-9]+)/,integer:/^-?(0([Xx][0-9A-Fa-f]+|[0-7]*)|[1-9][0-9]*)/,identifier:/^[A-Z_a-z][0-9A-Z_a-z]*/,string:/^"[^"]*"/,whitespace:/^(?:[\t\n\r ]+|[\t\n\r ]*((\/\/.*|\/\*(.|\n|\r)*?\*\/)[\t\n\r ]*))+/,other:/^[^\t\n\r 0-9A-Z_a-z]/},r=[];for(var i in n)r.push(i);for(;e.length>0;){for(var a=!1,s=0,o=r.length;o>s;s++){var l=r[s];if(e=e.replace(n[l],function(e){return t.push({type:l,value:e}),a=!0,""}),a)break}if(!a)throw new Error("Token stream not progressing")}return t},t=function(e,t){var n=1;e=e.slice();var r="float",i="integer",a="identifier",s="string",o="other",l=function(e,t,n,r){this.message=e,this.line=t,this.input=n,this.tokens=r};l.prototype.toString=function(){return this.message+", line "+this.line+" (tokens: '"+this.input+"')\n"+JSON.stringify(this.tokens,null,4)};var c=function(t){for(var r="",i=0,a=5;a>i&&e.length>i;)r+=e[i].value,i++;throw new l(t,n,r,e.slice(0,5))},u=null,p=function(t,n){return e.length&&e[0].type===t?"undefined"==typeof n||e[0].value===n?(u=e.shift(),t===a&&(u.value=u.value.replace(/^_/,"")),u):void 0:void 0},d=function(){if(e.length&&"whitespace"===e[0].type){var t=e.shift();return t.value.replace(/\n/g,function(e){return n++,e}),t}},f=function(e,t){for(var n={type:"whitespace",value:""};;){var r=d();if(!r)break;n.value+=r.value}if(n.value.length>0){if(e){var r=n.value,i={ws:/^([\t\n\r ]+)/,"line-comment":/^\/\/(.*)\n?/m,"multiline-comment":/^\/\*((?:.|\n|\r)*?)\*\//},a=[];for(var s in i)a.push(s);for(;r.length;){for(var o=!1,l=0,c=a.length;c>l;l++){var u=a[l];if(r=r.replace(i[u],function(n,r){return e.push({type:u+(t?"-"+t:""),value:r}),o=!0,""}),o)break}if(!o)throw new Error("Surprising white space construct.")}}return n}},h=function(){var e="";return f(),p(a,"unsigned")&&(e="unsigned "),f(),p(a,"short")?e+"short":p(a,"long")?(e+="long",f(),p(a,"long")?e+" long":e):(e&&c("Failed to parse integer type"),void 0)},m=function(){var e="";return f(),p(a,"unrestricted")&&(e="unrestricted "),f(),p(a,"float")?e+"float":p(a,"double")?e+"double":(e&&c("Failed to parse float type"),void 0)},g=function(){var e=h()||m();return e?e:(f(),p(a,"boolean")?"boolean":p(a,"byte")?"byte":p(a,"octet")?"octet":void 0)},b=function(){if(p(a,"true"))return{type:"boolean",value:!0};if(p(a,"false"))return{type:"boolean",value:!1};if(p(a,"null"))return{type:"null"};if(p(a,"Infinity"))return{type:"Infinity",negative:!1};if(p(a,"NaN"))return{type:"NaN"};var t=p(r)||p(i);if(t)return{type:"number",value:1*t.value};var n=p(o,"-");if(n){if(p(a,"Infinity"))return{type:"Infinity",negative:!0};e.unshift(n)}},y=function(e){for(;;)if(f(),p(o,"?"))e.nullable&&c("Can't nullable more than once"),e.nullable=!0;else{if(!p(o,"["))return;f(),p(o,"]")||c("Unterminated array type"),e.array?(e.array++,e.nullableArray.push(e.nullable)):(e.array=1,e.nullableArray=[e.nullable]),e.nullable=!1}},v=function(){var e,t,n=g(),r={sequence:!1,generic:null,nullable:!1,array:!1,union:!1};if(n)r.idlType=n;else{if(!(e=p(a)))return;if(t=e.value,f(),p(o,"<"))return"sequence"===t&&(r.sequence=!0),r.generic=t,r.idlType=w()||c("Error parsing generic type "+t),f(),p(o,">")||c("Unterminated generic type "+t),f(),p(o,"?")&&(r.nullable=!0),r; +r.idlType=t}return y(r),r.nullable&&!r.array&&"any"===r.idlType&&c("Type any cannot be made nullable"),r},x=function(){if(f(),p(o,"(")){var e={sequence:!1,generic:null,nullable:!1,array:!1,union:!0,idlType:[]},t=w()||c("Union type with no content");for(e.idlType.push(t);;){if(f(),!p(a,"or"))break;var n=w()||c("No type after 'or' in union type");e.idlType.push(n)}return p(o,")")||c("Unterminated union type"),y(e),e}},w=function(){return v()||x()},k=function(t){var n={optional:!1,variadic:!1};n.extAttrs=E(t),f(t,"pea");var r=p(a,"optional");if(r&&(n.optional=!0,f()),n.idlType=w(),!n.idlType)return r&&e.unshift(r),void 0;var i=u;n.optional||(f(),e.length>=3&&"other"===e[0].type&&"."===e[0].value&&"other"===e[1].type&&"."===e[1].value&&"other"===e[2].type&&"."===e[2].value&&(e.shift(),e.shift(),e.shift(),n.variadic=!0)),f();var s=p(a);return s?(n.name=s.value,n.optional&&(f(),n["default"]=N()),n):(r&&e.unshift(r),e.unshift(i),void 0)},C=function(e){var t=[],n=k(e?t:null);if(n)for(t.push(n);;){if(f(e?t:null),!p(o,","))return t;var r=k(e?t:null)||c("Trailing comma in arguments list");t.push(r)}},T=function(){f();var e=w();if(e&&(f(),p(o,","))){f();var t=w();if(t)return[e,t]}},S=function(e){f();var t=p(a);if(t){var n={name:t.value,arguments:null};f();var r=p(o,"=");if(r){var i;if(f(),i=p(a))n.rhs=i;else if(p(o,"(")){i=[];var s=p(a);s&&(i=[s.value]),H(i),p(o,")")||c("Unexpected token in extended attribute argument list or type pair"),n.rhs=i}if(!n.rhs)return c("No right hand side to extended attribute assignment")}if(f(),p(o,"(")){var l,u;(l=C(e))?n.arguments=l:(u=T())?n.typePair=u:n.arguments=[],f(),p(o,")")||c("Unexpected token in extended attribute argument list or type pair")}return n}},E=function(e){var t=[];if(f(e),!p(o,"["))return t;for(t[0]=S(e)||c("Extended attribute with not content"),f();p(o,",");)t.push(S(e)||c("Trailing comma in extended attribute")),f();return p(o,"]")||c("No end of extended attribute"),t},N=function(){if(f(),p(o,"=")){f();var e=b();if(e)return e;if(p(o,"["))return p(o,"]")||c("Default sequence value must be empty"),{type:"sequence",value:[]};var t=p(s)||c("No value for default");return t.value=t.value.replace(/^"/,"").replace(/"$/,""),t}},D=function(e){if(f(e,"pea"),p(a,"const")){var t={type:"const",nullable:!1};f();var n=g();n||(n=p(a)||c("No type for const"),n=n.value),t.idlType=n,f(),p(o,"?")&&(t.nullable=!0,f());var r=p(a)||c("No name for const");t.name=r.value,f(),p(o,"=")||c("No value assignment for const"),f();var i=b();return i?t.value=i:c("No value for const"),f(),p(o,";")||c("Unterminated const"),t}},A=function(){if(f(),p(o,":")){f();var e=p(a)||c("No type in inheritance");return e.value}},j=function(e,t){f(),e||(e={});var n=p(a);return e.name=n?n.value:null,f(),p(o,"(")||c("Invalid operation"),e.arguments=C(t)||[],f(),p(o,")")||c("Unterminated operation"),f(),p(o,";")||c("Unterminated operation"),e},I=function(t){f(t,"pea");var n;if(p(a,"callback")){f();var r=p(a,"interface");if(r)return e.unshift(r),n=M(),n.type="callback interface",n;var i=p(a)||c("No name for callback");return n={type:"callback",name:i.value},f(),p(o,"=")||c("No assignment in callback"),f(),n.idlType=R(),f(),p(o,"(")||c("No arguments in callback"),n.arguments=C(t)||[],f(),p(o,")")||c("Unterminated callback"),f(),p(o,";")||c("Unterminated callback"),n}},L=function(t){f(t,"pea");var n=[],r={type:"attribute","static":!1,stringifier:!1,inherit:!1,readonly:!1};p(a,"static")?(r["static"]=!0,n.push(u)):p(a,"stringifier")&&(r.stringifier=!0,n.push(u));var i=f();if(i&&n.push(i),p(a,"inherit")){(r["static"]||r.stringifier)&&c("Cannot have a static or stringifier inherit"),r.inherit=!0,n.push(u);var i=f();i&&n.push(i)}if(p(a,"readonly")){r.readonly=!0,n.push(u);var i=f();i&&n.push(i)}if(!p(a,"attribute"))return e=n.concat(e),void 0;f(),r.idlType=w()||c("No type in attribute"),r.idlType.sequence&&c("Attributes cannot accept sequence types"),f();var s=p(a)||c("No name in attribute");return r.name=s.value,f(),p(o,";")||c("Unterminated attribute"),r},R=function(){var e=w();if(!e){if(p(a,"void"))return"void";c("No return type")}return e},P=function(e){f(e,"pea");for(var t={type:"operation",getter:!1,setter:!1,creator:!1,deleter:!1,legacycaller:!1,"static":!1,stringifier:!1};;)if(f(),p(a,"getter"))t.getter=!0;else if(p(a,"setter"))t.setter=!0;else if(p(a,"creator"))t.creator=!0;else if(p(a,"deleter"))t.deleter=!0;else{if(!p(a,"legacycaller"))break;t.legacycaller=!0}if(t.getter||t.setter||t.creator||t.deleter||t.legacycaller)return f(),t.idlType=R(),j(t,e),t;if(p(a,"static"))return t["static"]=!0,t.idlType=R(),j(t,e),t;if(p(a,"stringifier"))return t.stringifier=!0,f(),p(o,";")?t:(t.idlType=R(),j(t,e),t);if(t.idlType=R(),f(),p(a,"iterator")){if(f(),t.type="iterator",p(a,"object"))t.iteratorObject="object";else if(p(o,"=")){f();var n=p(a)||c("No right hand side in iterator");t.iteratorObject=n.value}return f(),p(o,";")||c("Unterminated iterator"),t}return j(t,e),t},H=function(e){for(;;){if(f(),!p(o,","))break;f();var t=p(a)||c("Trailing comma in identifiers list");e.push(t.value)}},$=function(e){if(f(e,"pea"),p(a,"serializer")){var t={type:"serializer"};if(f(),p(o,"=")){if(f(),p(o,"{")){t.patternMap=!0,f();var n=p(a);n&&"getter"===n.value?t.names=["getter"]:n&&"inherit"===n.value?(t.names=["inherit"],H(t.names)):n?(t.names=[n.value],H(t.names)):t.names=[],f(),p(o,"}")||c("Unterminated serializer pattern map")}else if(p(o,"[")){t.patternList=!0,f();var n=p(a);n&&"getter"===n.value?t.names=["getter"]:n?(t.names=[n.value],H(t.names)):t.names=[],f(),p(o,"]")||c("Unterminated serializer pattern list")}else{var r=p(a)||c("Invalid serializer");t.name=r.value}return f(),p(o,";")||c("Unterminated serializer"),t}return p(o,";")||(t.idlType=R(),f(),t.operation=j(null,e)),t}},M=function(e,t){if(f(e?null:t,"pea"),p(a,"interface")){f();var n=p(a)||c("No name for interface"),r=[],i={type:"interface",name:n.value,partial:!1,members:r};for(e||(i.inheritance=A()||null),f(),p(o,"{")||c("Bodyless interface");;){if(f(t?r:null),p(o,"}"))return f(),p(o,";")||c("Missing semicolon after interface"),i;var s=E(t?r:null);f();var l=D(t?r:null);if(l)l.extAttrs=s,i.members.push(l);else{var u=$(t?r:null)||L(t?r:null)||P(t?r:null)||c("Unknown member");u.extAttrs=s,i.members.push(u)}}}},O=function(e){if(f(e,"pea"),p(a,"partial")){var t=F(!0,e)||M(!0,e)||c("Partial doesn't apply to anything");return t.partial=!0,t}},F=function(e,t){if(f(e?null:t,"pea"),p(a,"dictionary")){f();var n=p(a)||c("No name for dictionary"),r=[],i={type:"dictionary",name:n.value,partial:!1,members:r};for(e||(i.inheritance=A()||null),f(),p(o,"{")||c("Bodyless dictionary");;){if(f(t?r:null),p(o,"}"))return f(),p(o,";")||c("Missing semicolon after dictionary"),i;var s=E(t?r:null);f(t?r:null,"pea");var l=w()||c("No type for dictionary member");f();var n=p(a)||c("No name for dictionary member");i.members.push({type:"field",name:n.value,idlType:l,extAttrs:s,"default":N()}),f(),p(o,";")||c("Unterminated dictionary member")}}},_=function(e){if(f(e,"pea"),p(a,"exception")){f();var t=p(a)||c("No name for exception"),n=[],r={type:"exception",name:t.value,members:n};for(r.inheritance=A()||null,f(),p(o,"{")||c("Bodyless exception");;){if(f(e?n:null),p(o,"}"))return f(),p(o,";")||c("Missing semicolon after exception"),r;var i=E(e?n:null);f(e?n:null,"pea");var s=D();if(s)s.extAttrs=i,r.members.push(s);else{var l=w();f();var t=p(a);f(),l&&t&&p(o,";")||c("Unknown member in exception body"),r.members.push({type:"field",name:t.value,idlType:l,extAttrs:i})}}}},q=function(e){if(f(e,"pea"),p(a,"enum")){f();var t=p(a)||c("No name for enum"),n=[],r={type:"enum",name:t.value,values:n};f(),p(o,"{")||c("No curly for enum");for(var i=!1;;){if(f(e?n:null),p(o,"}"))return f(),i&&c("Trailing comma in enum"),p(o,";")||c("No semicolon after enum"),r;var l=p(s)||c("Unexpected value in enum");r.values.push(l.value.replace(/"/g,"")),f(e?n:null),p(o,",")?(e&&n.push({type:","}),f(e?n:null),i=!0):i=!1}}},W=function(e){if(f(e,"pea"),p(a,"typedef")){var t={type:"typedef"};f(),t.typeExtAttrs=E(),f(e,"tpea"),t.idlType=w()||c("No type in typedef"),f();var n=p(a)||c("No name in typedef");return t.name=n.value,f(),p(o,";")||c("Unterminated typedef"),t}},B=function(t){f(t,"pea");var n=p(a);if(n){var r=f();if(p(a,"implements")){var i={type:"implements",target:n.value};f();var s=p(a)||c("Incomplete implements statement");return i["implements"]=s.value,f(),p(o,";")||c("No terminating ; for implements statement"),i}e.unshift(r),e.unshift(n)}},U=function(e){return I(e)||M(!1,e)||O(e)||F(!1,e)||_(e)||q(e)||W(e)||B(e)},z=function(t){if(!e.length)return[];for(var n=[];;){var r=E(t?n:null),i=U(t?n:null);if(!i){r.length&&c("Stray extended attributes");break}i.extAttrs=r,n.push(i)}return n},G=z(t.ws);return e.length&&c("Unrecognised tokens"),G},n="undefined"!=typeof module&&module.exports,r={parse:function(n,r){r||(r={});var i=e(n);return t(i,r)}};n?module.exports=r:window.WebIDL2=r}(),define("webidl2",function(){}),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/*.idlMaplike*/\n.idlMaplikeKeyType, .idlMaplikeValueType {\n color: #005a9c;\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-contiguous/typedef.html",["handlebars"],function(){return Handlebars.compile("<span class='idlTypedef' id='{{obj.idlId}}'>typedef {{typeExtAttrs obj\n}}<span class='idlTypedefType'>{{idlType obj\n}}</span> <span class='idlTypedefID'>{{#tryLink obj}}{{obj.name}}{{/tryLink}}</span>;</span>")}),define("tmpl!core/templates/webidl-contiguous/implements.html",["handlebars"],function(){return Handlebars.compile("<span class='idlImplements'>{{extAttr obj indent\n}}{{idn indent}}<a>{{obj.target}}</a> implements <a>{{obj.implements}}</a>;</span>")}),define("tmpl!core/templates/webidl-contiguous/dict-member.html",["handlebars"],function(){return Handlebars.compile("<span class='idlMember' id=\"{{obj.idlId}}\">{{extAttr obj indent\n}}{{idn indent}}<span class='idlMemberType'>{{idlType obj}}</span> {{pads pad\n}}<span class='idlMemberName'>{{#tryLink obj}}{{obj.name}}{{/tryLink}}</span>{{#if obj.default\n}} = <span class='idlMemberValue'>{{stringifyIdlConst obj.default}}</span>{{/if}};</span>\n")}),define("tmpl!core/templates/webidl-contiguous/dictionary.html",["handlebars"],function(){return Handlebars.compile("<span class='idlDictionary' id='{{obj.idlId}}'>{{extAttr obj indent\n}}{{idn indent}}{{partial}}dictionary <span class='idlDictionaryID'>{{#tryLink obj}}{{obj.name}}{{/tryLink\n}}</span>{{#if obj.inheritance}} : <span class='idlSuperclass'><a>{{obj.inheritance}}</a></span>{{/if}} {\n{{{children}}}};</span>")}),define("tmpl!core/templates/webidl-contiguous/enum-item.html",["handlebars"],function(){return Handlebars.compile('{{idn indent}}"<a href="#idl-def-{{parentID}}.{{obj}}" class="idlEnumItem">{{obj}}</a>"')}),define("tmpl!core/templates/webidl-contiguous/enum.html",["handlebars"],function(){return Handlebars.compile("<span class='idlEnum' id='{{obj.idlId}}'>{{extAttr obj indent\n}}{{idn indent}}enum <span class='idlEnumID'>{{#tryLink obj}}{{obj.name}}{{/tryLink}}</span> {\n{{{children}}}\n{{idn indent}}}};")}),define("tmpl!core/templates/webidl-contiguous/const.html",["handlebars"],function(){return Handlebars.compile("<span class='idlConst' id=\"{{obj.idlId}}\">{{extAttr obj indent\n}}{{idn indent}}const <span class='idlConstType'>{{idlType obj}}</span>{{nullable}} {{pads pad\n}}<span class='idlConstName'>{{#tryLink obj}}{{obj.name\n}}{{/tryLink}}</span> = <span class='idlConstValue'>{{stringifyIdlConst obj.value}}</span>;</span>\n")}),define("tmpl!core/templates/webidl-contiguous/param.html",["handlebars"],function(){return Handlebars.compile("{{!-- obj is an instance of https://github.com/darobin/webidl2.js#arguments\n--}}<span class='idlParam'>{{extAttrInline obj\n}}{{optional}}<span class='idlParamType'>{{idlType obj}}{{variadic\n}}</span> <span class='idlParamName'>{{obj.name}}</span>{{#if obj.default\n}} = <span class='idlDefaultValue'>{{stringifyIdlConst obj.default}}</span>{{/if}}</span>")}),define("tmpl!core/templates/webidl-contiguous/callback.html",["handlebars"],function(){return Handlebars.compile("<span class='idlCallback' id='{{obj.idlId}}'>{{extAttr obj indent\n}}{{idn indent}}callback <span class='idlCallbackID'>{{#tryLink obj}}{{obj.name\n}}{{/tryLink}}</span> = <span class='idlCallbackType'>{{idlType obj}}</span> ({{{children}}});</span>")}),define("tmpl!core/templates/webidl-contiguous/method.html",["handlebars"],function(){return Handlebars.compile("<span class='idlMethod' id=\"{{obj.idlId}}\">{{extAttr obj indent\n}}{{idn indent}}{{static}}<span class='idlMethType'>{{idlType obj}}</span> {{pads pad\n}}<span class='idlMethName'>{{#tryLink obj}}{{obj.name}}{{/tryLink}}</span>({{{children}}});</span>\n")}),define("tmpl!core/templates/webidl-contiguous/attribute.html",["handlebars"],function(){return Handlebars.compile("<span class='idlAttribute' id=\"{{obj.idlId}}\">{{extAttr obj indent\n}}{{idn indent}}{{qualifiers}} attribute <span class='idlAttrType'>{{idlType obj}}</span> {{pads\npad}}<span class='idlAttrName'>{{#tryLink obj}}{{escapeAttributeName obj.name}}{{/tryLink}}</span>;</span>\n")}),define("tmpl!core/templates/webidl-contiguous/serializer.html",["handlebars"],function(){return Handlebars.compile("<span class='idlSerializer' id=\"{{obj.idlId}}\">{{extAttr obj indent\n}}{{idn indent}}{{#tryLink obj}}serializer{{/tryLink\n}}{{#if values}} = <span class='idlSerializerValues'>{{values}}</span>{{/if}};</span>\n")}),define("tmpl!core/templates/webidl-contiguous/comment.html",["handlebars"],function(){return Handlebars.compile("<span class='idlSectionComment'>{{extAttr obj indent}}{{idn indent}}// {{comment}}</span>\n")}),define("tmpl!core/templates/webidl-contiguous/field.html",["handlebars"],function(){return Handlebars.compile("<span class='idlField' id=\"{{obj.idlId}}\">{{extAttr obj indent\n}}{{idn indent}}<span class='idlFieldType'>{{idlType obj}}</span> {{pads\npad}}<span class='idlFieldName'>{{#tryLink obj}}{{obj.name}}{{/tryLink}}</span>;</span>\n")}),define("tmpl!core/templates/webidl-contiguous/exception.html",["handlebars"],function(){return Handlebars.compile("<span class='idlException' id='{{obj.idlId}}'>{{extAttr obj indent\n}}{{idn indent}}exception <span class='idlExceptionID'>{{#tryLink obj}}{{obj.name}}{{/tryLink\n}}</span>{{#if obj.inheritance}} : <span class='idlSuperclass'><a>{{obj.inheritance}}</a></span>{{/if}} {\n{{{children}}}{{idn indent}}}};</span>")}),define("tmpl!core/templates/webidl-contiguous/extended-attribute.html",["handlebars"],function(){return Handlebars.compile('{{!-- extAttrs should match the structure at https://github.com/darobin/webidl2.js#extended-attributes.\n--}}{{idn indent}}[{{#join extAttrs sep\n }}<span class=\'{{extAttrClassName}}\'><span class="extAttrName">{{name\n }}</span>{{#if rhs}}=<span class="extAttrRhs">{{rhs.value}}</span>{{/if\n }}{{#jsIf arguments}}({{#join arguments ", "}}{{param this}}{{/join}}){{/jsIf\n}}</span>{{/join}}]{{end}}')}),define("tmpl!core/templates/webidl-contiguous/interface.html",["handlebars"],function(){return Handlebars.compile("<span class='idlInterface' id='{{obj.idlId}}'>{{extAttr obj indent\n}}{{idn indent}}{{partial}}{{callback}}interface <span class='idlInterfaceID'>{{#tryLink obj}}{{obj.name}}{{/tryLink\n}}</span>{{#if obj.inheritance}} : <span class='idlSuperclass'><a>{{obj.inheritance}}</a></span>{{/if}} {\n{{{children}}}{{idn indent}}}};</span>")}),define("core/webidl-contiguous",["handlebars","webidl2","tmpl!core/css/webidl-oldschool.css","tmpl!core/templates/webidl-contiguous/typedef.html","tmpl!core/templates/webidl-contiguous/implements.html","tmpl!core/templates/webidl-contiguous/dict-member.html","tmpl!core/templates/webidl-contiguous/dictionary.html","tmpl!core/templates/webidl-contiguous/enum-item.html","tmpl!core/templates/webidl-contiguous/enum.html","tmpl!core/templates/webidl-contiguous/const.html","tmpl!core/templates/webidl-contiguous/param.html","tmpl!core/templates/webidl-contiguous/callback.html","tmpl!core/templates/webidl-contiguous/method.html","tmpl!core/templates/webidl-contiguous/attribute.html","tmpl!core/templates/webidl-contiguous/serializer.html","tmpl!core/templates/webidl-contiguous/comment.html","tmpl!core/templates/webidl-contiguous/field.html","tmpl!core/templates/webidl-contiguous/exception.html","tmpl!core/templates/webidl-contiguous/extended-attribute.html","tmpl!core/templates/webidl-contiguous/interface.html"],function(e,t,n,r,i,a,s,o,l,c,u,p,d,f,h,m,g,b,y,v){function x(e){Handlebars.registerHelper("extAttr",function(e,t){return S(e.extAttrs,t,!1)}),Handlebars.registerHelper("extAttrInline",function(e){return S(e.extAttrs,0,!0)}),Handlebars.registerHelper("typeExtAttrs",function(e){return S(e.typeExtAttrs,0,!0)}),Handlebars.registerHelper("extAttrClassName",function(){var e=this;return"Constructor"===e.name||"NamedConstructor"===e.name?"idlCtor":"extAttr"}),Handlebars.registerHelper("param",function(e){return new Handlebars.SafeString(u({obj:e,optional:e.optional?"optional ":"",variadic:e.variadic?"...":""}))}),Handlebars.registerHelper("jsIf",function(e,t){return e?t.fn(this):t.inverse(this)}),Handlebars.registerHelper("idn",function(e){return new Handlebars.SafeString(w(e))}),Handlebars.registerHelper("idlType",function(e){return new Handlebars.SafeString(k(e.idlType))}),Handlebars.registerHelper("stringifyIdlConst",function(t){switch(t.type){case"null":return"null";case"Infinity":return t.negative?"-Infinity":"Infinity";case"NaN":return"NaN";case"string":case"number":case"boolean":case"sequence":return JSON.stringify(t.value);default:return e.pub("error","Unexpected constant value type: "+t.type),"<Unknown>"}}),Handlebars.registerHelper("escapeArgumentName",E),Handlebars.registerHelper("escapeAttributeName",N),Handlebars.registerHelper("escapeIdentifier",D),Handlebars.registerHelper("pads",function(e){return new Handlebars.SafeString(T(e))}),Handlebars.registerHelper("join",function(e,t,n){return new Handlebars.SafeString(e.map(function(e){return n.fn(e)}).join(t))}),Handlebars.registerHelper("tryLink",function(e,t){var n=t.fn(this);if(e.dfn){var r="<a for='"+Handlebars.Utils.escapeExpression(e.linkFor||"")+"'";return e.name&&(r+=" title='"+Handlebars.Utils.escapeExpression(e.name)+"'"),r+=">"+n+"</a>"}return n})}function w(e){for(var t="",n=0;e>n;n++)t+=" ";return t}function k(e){if("string"==typeof e)return"<a>"+Handlebars.Utils.escapeExpression(e)+"</a>";var t=e.nullable?"?":"";if(e.union)return"("+e.idlType.map(function(e){return k(e)}).join(" or ")+")"+t;if(e.array){for(var n="",r=0;r<e.array;++r)e.nullableArray[r]&&(n+="?"),n+="[]";return k({generic:e.generic,idlType:e.idlType})+n+t}return e.generic?Handlebars.Utils.escapeExpression(e.generic)+"<"+k(e.idlType)+">"+t:k(e.idlType)+t}function C(e){if("string"==typeof e)return e;var t=e.nullable?"?":"";if(e.union)return"("+e.idlType.map(function(e){return C(e)}).join(" or ")+")"+t;if(e.array){for(var n="",r=0;r<e.array;++r)e.nullableArray[r]&&(n+="?"),n+="[]";return C({generic:e.generic,idlType:e.idlType})+n+t}return e.generic?e.generic+"<"+C(e.idlType)+">"+t:C(e.idlType)+t}function T(e){for(var t="",n=0;e>n;n++)t+=" ";return t}function S(e,t,n){if(0===e.length)return"";var r={extAttrs:e,indent:t,sep:n?", ":",\n "+w(t),end:n?" ":"\n"};return new Handlebars.SafeString(y(r))}function E(e){return-1!==q.indexOf(e)&&-1===W.indexOf(e)?"_"+e:e}function N(e){return-1!==q.indexOf(e)&&-1===B.indexOf(e)?"_"+e:e}function D(e){return-1!==q.indexOf(e)?"_"+e:e}function A(e,t){var n={"class":"idl"},r=$("<pre></pre>").attr(n);return r.html(e.map(function(e){return j(e,-1,t)}).join("\n\n")),r}function j(e,t,n){t++;var a={indent:t,obj:e};switch(e.type){case"typedef":return r(a);case"implements":return i(a);case"interface":return I(a);case"callback interface":return I(a,"callback ");case"exception":var c=0,d=0;e.members.forEach(function(e){var t=C(e.idlType).length;"field"===e.type?c=t>c?t:c:"const"===e.type&&(d=t>d?t:d)});var f=e.members.map(function(e){return"field"===e.type?L(e,c,t+1):"const"===e.type?H(e,d,t+1):void 0}).join("");return b({obj:e,indent:t,children:f});case"dictionary":var h=0;e.members.forEach(function(e){var t=C(e.idlType).length;h=t>h?t:h});var f=e.members.map(function(e){return O(e,h,t+1)}).join("");return s({obj:e,indent:t,children:f,partial:e.partial?"partial ":""});case"callback":var m=e.arguments.map(function(e){return u({obj:e,optional:e.optional?"optional ":"",variadic:e.variadic?"...":""})}).join(", ");return p({obj:e,indent:t,children:m});case"enum":var f=e.values.map(function(n){return o({obj:n,parentID:e.fullPath,indent:t+1})}).join(",\n");return l({obj:e,indent:t,children:f});default:return n.pub("error","Unexpected object type "+e.type+" in "+JSON.stringify(e)),""}}function I(e,t){var n=e.obj,r=e.indent,i=0,a=0,s=0;n.members.forEach(function(e){if("serializer"!==e.type){var t=C(e.idlType).length;e.static&&(t+=7),"attribute"===e.type?i=t>i?t:i:"operation"===e.type?a=t>a?t:a:"const"===e.type&&(s=t>s?t:s)}});var o=n.members.map(function(e){switch(e.type){case"attribute":return R(e,i,r+1);case"operation":return P(e,a,r+1);case"const":return H(e,s,r+1);case"serializer":return M(e,r+1);default:throw new Error("Unexpected member type: "+e.type)}}).join("");return v({obj:n,indent:r,partial:n.partial?"partial ":"",callback:t,children:o})}function L(e,t,n){var r=t-C(e.idlType).length;return g({obj:e,indent:n,pad:r})}function R(e,t,n){var r=C(e.idlType).length,i=t-r,a="";return e.static&&(a+="static "),e.stringifier&&(a+="stringifier "),e.inherit&&(a+="inherit "),e.readonly&&(a+="readonly "),a+=" ",a=a.slice(0,11),f({obj:e,indent:n,qualifiers:a,pad:i})}function P(e,t,n){var r=e.arguments.map(function(e){return u({obj:e,optional:e.optional?"optional ":"",variadic:e.variadic?"...":""})}).join(", "),i=C(e.idlType).length;e.static&&(i+=7);var a=t-i;return d({obj:e,indent:n,"static":e.static?"static ":"",pad:a,children:r})}function H(e,t,n){var r=t-C(e.idlType).length;return e.nullable&&r--,c({obj:e,indent:n,pad:r,nullable:e.nullable?"?":""})}function M(e,t){var n="";return e.patternMap?n="{"+e.names.join(", ")+"}":e.patternList?n="["+listValues.join(", ")+"]":e.name&&(n=e.name),h({obj:e,indent:t,values:n})}function O(e,t,n){var r={obj:e,indent:n};return r.pad=t-C(e.idlType).length,a(r)}function F(e,t,n,r){e.forEach(function(e){var i;switch(e.type){case"callback interface":case"dictionary":case"exception":case"interface":F(e.members,t,e.name,r),i=e.name,e.idlId="idl-def-"+i.toLowerCase();break;case"enum":case"callback":case"typedef":i=e.name,e.idlId="idl-def-"+i.toLowerCase();break;case"attribute":case"const":case"field":i=e.name,e.idlId="idl-def-"+n.toLowerCase()+"-"+i.toLowerCase();break;case"operation":i=e.name,e.idlId="idl-def-"+n.toLowerCase()+"-"+i.toLowerCase()+"("+e.arguments.map(function(e){var t=e.optional?"optional-":"",n=e.variadic?"...":"";return t+C(e.idlType).toLowerCase()+n}).join(",")+")";break;case"iterator":i="iterator",e.idlId="idl-def-"+n.toLowerCase()+"-"+i.toLowerCase();break;case"serializer":i="serializer",e.idlId="idl-def-"+n.toLowerCase()+"-"+i.toLowerCase();break;case"implements":return;default:return r.pub("error","Unexpected type when computing refTitles: "+e.type),void 0}n&&(e.linkFor=n),e.dfn=_(n,i,t,r)})}function _(e,t,n){e=e.toLowerCase(),t=t.toLowerCase();var r=n[t];if(!r)return void 0;var i=r.filter(function(t){return t.attr("data-dfn-for")===e});if(0===i.length&&""===e&&1===r.length)var i=r;if(i.length>1&&msg.pub("error","Multiple <dfn>s for "+t+" in "+e),0===i.length)return void 0;var a=i[0];return a.attr("id","dom-"+(e?e+"-":"")+t),a.attr("data-idl",""),a.attr("data-dfn-for",e),0===a.children("code").length&&0===a.parents("code").length&&a.wrapInner("<code></code>"),a}var q=["ByteString","DOMString","Date","Infinity","NaN","RegExp","USVString","any","attribute","boolean","byte","callback","const","creator","deleter","dictionary","double","enum","false","float","getter","implements","inherit","interface","iterable","legacycaller","legacyiterable","long","maplike","null","object","octet","optional","or","partial","readonly","required","sequence","serializer","setlike","setter","short","static","stringifier","true","typedef","unrestricted","unsigned","void"],W=["attribute","callback","const","creator","deleter","dictionary","enum","getter","implements","inherit","interface","iterable","legacycaller","legacyiterable","maplike","partial","required","serializer","setlike","setter","static","stringifier","typedef","unrestricted"],B=["required"];return{run:function(e,t,r,i){i.pub("start","core/webidl-contiguous"),x(i);var a=$("pre.idl",t),s=function(){i.pub("end","core/webidl-contiguous"),r()};if(!a.length)return s();$(".idl",t).not("pre").length||$(t).find("head link").first().before($("<style/>").text(n));var o=[];a.each(function(){var t;try{t=window.WebIDL2.parse($(this).text())}catch(n){return i.pub("error","Failed to parse <pre>"+a.text()+"</pre> as IDL: "+(n.stack||n)),void 0}F(t,e.definitionMap,"",i);var r=A(t,i);r.attr({id:this.id}),$.merge(o,r.find(".idlInterface,.idlException,.idlDictionary,.idlTypedef,.idlCallback,.idlEnum").map(function(){return this.id}).get()),$(this).replaceWith(r)}),t.normalize(),$("a:not([href])").each(function(){var t=$(this);if(!t.hasClass("externalDFN")){var n=t.dfnTitle();e.definitionMap[n]||-1===$.inArray("idl-def-"+n,o)||t.attr("href","#idl-def-"+n).addClass("idlType").wrapInner("<code></code>")}}),s()}}}),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/maplike.html",["handlebars"],function(){return Handlebars.compile("<span class='idlMaplike'>{{extAttr obj indent true\n}}{{idn indent}}{{readonly}}maplike<<span class='idlMaplikeKeyType'>{{datatype obj.key}}</span>, <span class='idlMaplikeValueType'>{{datatype obj.value}}</span>>;</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>")});var sn;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/maplike.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,a,s,o,l,c,u,p,d,f,h,m,g,b,y,v,x){var w=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+=k(t)+"[<span class='extAttr'>"+e.extendedAttributes+"</span>"+("string"==typeof r&&r.length?",\n"+r:"")+"]"+(n?"\n":" "):"string"==typeof r&&r.length&&(i+=k(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(k(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(S(e))}),Handlebars.registerHelper("pads",function(e){return new Handlebars.SafeString(E(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)})},k=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(" ")},T=function(e){for(var t="",n=0,r=e.arrayCount;r>n;n++)t+="[]";return t},S=function(e){if($.isArray(e)){for(var t=[],n=0,r=e.length;r>n;n++)t.push(S(e[n]));return"("+t.join(" or ")+")"}var i=/^(sequence|Promise|CancelablePromise|EventStream)<(.+)>$/.exec(e);return i?i[1]+"<<a>"+S(i[2])+"</a>>":"<a>"+e+"</a>"},E=function(e){for(var t="",n=0;e>n;n++)t+=" ";return t};return w.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*/,a=i.exec(e);if(!a)return this.msg.pub("error","Expected parameter list, got: "+e),!1;e=e.replace(i,"");var s=a[1],o=a[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,s),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(),a=e.type;t="exception"===a?r.exceptionMember(n,i):"dictionary"===a?r.dictionaryMember(n,i):"callback"===a?r.callbackMember(n,i):"enum"===a?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 a=i[1];return this.parseDatatype(n,a),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 a=i[1];return n.defaultValue=i[3],this.setID(n,i[2]),this.parseDatatype(n,a),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 a=i[1];return this.setID(n,i[2]),n.defaultValue=i[3],this.parseDatatype(n,a),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||"EMPTY"),n.refId=sn.sanitiseID(n.id),n},interfaceMember:function(e,t){var n={children:[]},r=C(e.text()),i=t.find("dl.parameters").first(),a=t.find(".getraises, .setraises"),s=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=[],a.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,s,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,s,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,s,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*(readonly\s+)?maplike\s*<\s*(.*)\s*,\s*(.*)\s*>\s*$/.exec(r))?(n.type="maplike",n.readonly=void 0!==o[1],n.key=o[2],n.value=o[3],n):(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 a=!1,s=0;s<e.params.length;s++)a?(e.params[s].optional=!0,e.params[s].datatype=e.params[s].datatype.replace(/\boptional\s+/,"")):a=this.optional(e.params[s]);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()},parseParameterized:function(e){var t=/^(sequence|Promise|CancelablePromise|EventStream)<(.+)>$/.exec(e);return t?{type:t[1],parameter:t[2]}:null},writeSerializerAsHTML:function(e,t){if("prose"!=t.serializertype){var n="Instances of this interface are serialized as ";if("map"==t.serializertype){var r="a map ";if(t.getter)r+="with entries corresponding to the named properties";else{var i="";t.inherit&&(r+="with entries from the closest inherited interface ",i="and "),t.all?r+=i+"with entries for each of the serializable attributes":t.values&&t.values.length?r+=i+"with entries for the following attributes: "+t.values.join(", "):r="an empty map"}n+=r}else if("list"==t.serializertype){var a="a list ";t.getter?a+="with values corresponding to the indexed properties":t.values&&t.values.length?a+="with the values of the following attributes: "+t.values.join(", "):a="an empty list",n+=a}else"attribute"==t.serializertype&&(n+="the value of the attribute "+t.values[0]);n+=".",sn.element("p",{},e,n)}sn.element("p",{},e,[t.description])},writeMaplikeAsHTML:function(e,t){var n="",r="";t.readonly?(n="readonly ",r='"entries", "forEach", "get", "has", "keys", "values", @@iterator methods and a "size" getter'):r='"entries", "forEach", "get", "has", "keys", "values", "clear", "delete", "set", @@iterator methods and a "size" getter';var i=sn.element("p",{},e);sn.text("This interface has "+r+" brought by ",i),sn.element("code",{},i,n+"maplike"),sn.text(".",i),sn.element("p",{},e,t.description)},writeTypeFilteredThingsInInterfaceAsHTML:function(e,t,n,r,i){if("maplike"==r)return this.writeMaplikeAsHTML(n,i[0]),void 0;var a=sn.element("section",{},n),s=r.substr(0,1).toUpperCase()+r.substr(1)+("serializer"!=r?"s":"");if(this.conf.noIDLSectionTitle||sn.element("h2",{},a,s),"serializer"==r)return this.writeSerializerAsHTML(sn.element("div",{},a),i[0]),void 0;for(var o=sn.element("dl",{"class":r+"s"},a),l=0;l<i.length;l++){var c=i[l],u="method"==r?this.makeMethodID(t,c):"constructor"==r?this.makeMethodID("widl-ctor-",c):sn.idThatDoesNotExist(t+c.refId),p=sn.element("dt",{id:u},o);sn.element("code",{},p,c.unescapedId),c.isStatic&&p.append(this.doc.createTextNode(", static"));var d=sn.element("dd",{},o,[c.description]);if("method"==r||"constructor"==r){if(c.params.length){var f=sn.element("table",{"class":"parameters"},d),h=sn.element("tr",{},f);["Parameter","Type","Nullable","Optional","Description"].forEach(function(e){sn.element("th",{},h,e)});for(var m=0;m<c.params.length;m++){var g=c.params[m],h=sn.element("tr",{},f);sn.element("td",{"class":"prmName"},h,g.id);var b=sn.element("td",{"class":"prmType"},h),y=sn.element("code",{},b),v=S(g.datatype);g.array&&(v+=T(g)),g.defaultValue&&(v+=" = "+g.defaultValue),y.html(v),g.nullable?sn.element("td",{"class":"prmNullTrue"},h,$("<span role='img' aria-label='True'>✔</span>")):sn.element("td",{"class":"prmNullFalse"},h,$("<span role='img' aria-label='False'>✘</span>")),g.optional?sn.element("td",{"class":"prmOptTrue"},h,$("<span role='img' aria-label='True'>✔</span>")):sn.element("td",{"class":"prmOptFalse"},h,$("<span role='img' aria-label='False'>✘</span>"));var x=g.description?[g.description]:"";sn.element("td",{"class":"prmDesc"},h,x)}}else sn.element("div",{},d,[sn.element("em",{},null,"No parameters.")]);if(this.conf.idlOldStyleExceptions&&c.raises.length){var f=sn.element("table",{"class":"exceptions"},d),h=sn.element("tr",{},f);["Exception","Description"].forEach(function(e){sn.element("th",{},h,e)});for(var m=0;m<c.raises.length;m++){var w=c.raises[m],h=sn.element("tr",{},f);sn.element("td",{"class":"excName"},h,[sn.element("a",{},null,w.id)]);var k=sn.element("td",{"class":"excDesc"},h);if("simple"==w.type)k.append(w.description);else for(var C=sn.element("table",{"class":"exceptionCodes"},k),E=0;E<w.description.length;E++){var N=w.description[E],h=sn.element("tr",{},C);sn.element("td",{"class":"excCodeName"},h,[sn.element("code",{},null,N.id)]),sn.element("td",{"class":"excCodeDesc"},h,[N.description])}}}if("constructor"!==r){var D=sn.element("div",{},d);sn.element("em",{},D,"Return type: ");var y=sn.element("code",{},D),v=S(c.datatype);c.array&&(v+=T(c)),c.nullable&&sn.text(", nullable",D),y.html(v)}}else if("attribute"==r){if(sn.text(" of type ",p),c.array)for(var E=0,A=c.arrayCount;A>E;E++)sn.text("array of ",p);var j=sn.element("span",{"class":"idlAttrType"},p),I=this.parseParameterized(c.datatype);if(I?(sn.text(I.type+"<",j),sn.element("a",{},j,I.parameter),sn.text(">",j)):sn.element("a",{},j,c.isUnionType?"("+c.datatype.join(" or ")+")":c.datatype),c.declaration&&sn.text(", "+c.declaration,p),c.nullable&&sn.text(", nullable",p),this.conf.idlOldStyleExceptions&&c.raises.length){var f=sn.element("table",{"class":"exceptions"},d),h=sn.element("tr",{},f);["Exception","On Get","On Set","Description"].forEach(function(e){sn.element("th",{},h,e)});for(var m=0;m<c.raises.length;m++){var w=c.raises[m],h=sn.element("tr",{},f);sn.element("td",{"class":"excName"},h,[sn.element("a",{},null,w.id)]),["onGet","onSet"].forEach(function(e){w[e]?sn.element("td",{"class":"excGetSetTrue"},h,$("<span role='img' aria-label='True'>✔</span>")):sn.element("td",{"class":"excGetSetFalse"},h,$("<span role='img' aria-label='False'>✘</span>"))});var k=sn.element("td",{"class":"excDesc"},h);if("simple"==w.type)k.append(w.description);else for(var C=sn.element("table",{"class":"exceptionCodes"},k),E=0;E<w.description.length;E++){var N=w.description[E],h=sn.element("tr",{},C);sn.element("td",{"class":"excCodeName"},h,[sn.element("code",{},null,N.id)]),sn.element("td",{"class":"excCodeDesc"},h,[N.description])}}}}else"constant"==r&&(sn.text(" of type ",p),sn.element("span",{"class":"idlConstType"},p,[sn.element("a",{},null,c.datatype)]),c.nullable&&sn.text(", nullable",p))}},writeInterfaceAsHTML:function(e){for(var t=sn.documentFragment(),n="widl-"+e.refId+"-",r=["maplike","constructor","attribute","method","constant","serializer"],i=function(e){return e.type==o},a=function(e,t){return e.unescapedId<t.unescapedId?-1:e.unescapedId>t.unescapedId?1:0},s=0;s<r.length;s++){var o=r[s],l=e.children.filter(i);0!==l.length&&(this.noIDLSorting||l.sort(a),this.writeTypeFilteredThingsInInterfaceAsHTML(e,n,t,o,l))}return t},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.html(S(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+"-",a=["field","constant"],s=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<a.length;l++){var c=a[l],u=e.children.filter(s);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);if(sn.element("code",{},g,m.unescapedId),sn.element("dd",{},f,[m.description]),"field"==c){if(sn.text(" of type ",g),m.array)for(var b=0,y=m.arrayCount;y>b;b++)sn.text("array of ",g);var v=sn.element("span",{"class":"idlFieldType"},g),x=this.parseParameterized(m.datatype);x?(sn.text(x.type+"<",v),sn.element("a",{},v,x.parameter),sn.text(">",v)):sn.element("a",{},v,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);if(sn.element("code",{},g,m.unescapedId),sn.element("dd",{},f,[m.description]),sn.text(" of type ",g),m.array)for(var l=0,y=m.arrayCount;y>l;l++)sn.text("array of ",g);var v=sn.element("span",{"class":"idlMemberType"},g),x=this.parseParameterized(m.datatype);x?(sn.text(x.type+"<",v),sn.element("a",{},v,x.parameter),sn.text(">",v)):sn.element("a",{},v,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);if(sn.element("code",{},g,m.unescapedId),sn.element("dd",{},f,[m.description]),sn.text(" of type ",g),m.array)for(var l=0,y=m.arrayCount;y>l;l++)sn.text("array of ",g);var v=sn.element("span",{"class":"idlMemberType"},g),x=this.parseParameterized(m.datatype);x?(sn.text(x.type+"<",v),sn.element("a",{},v,x.parameter),sn.text(">",v)):sn.element("a",{},v,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],w=sn.element("tr",{},p),k=sn.element("td",{},w);sn.element("code",{id:"idl-def-"+e.refId+"."+m.refId},k,m.unescapedId),sn.element("td",{},w,[m.description])}return r}return"interface"==e.type?this.writeInterfaceAsHTML(e):void 0},makeMethodID:function(e,t){for(var n=e+t.refId+"-"+t.datatype+"-",r=[],i=0,a=t.params.length;a>i;i++){var s=t.params[i];r.push(s.datatype+(s.array?"Array":"")+"-"+s.id)}return n+=r.join("-"),sn.sanitiseID(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 a={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(a))}if("typedef"===e.type)return a.nullable=e.nullable?"?":"",a.arr=T(e),$(r(a));if("implements"===e.type)return $(i(a));if("interface"===e.type){var f=this.doc.createElement("div"),h=$(f).makeID("idl-def",e.refId,!0),m=0,g=0,b=0,y=!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&&(y=!0)});var w="widl-"+e.refId+"-",k=this,C=[],S=e.children.map(function(e){if("attribute"==e.type)return k.writeAttribute(e,m,t+1,w,y);if("method"==e.type)return k.writeMethod(e,g,t+1,w);if("constant"==e.type)return k.writeConst(e,b,t+1,w);if("serializer"==e.type)return k.writeSerializer(e,t+1,w);if("constructor"==e.type)C.push(k.writeConstructor(e,t,"widl-ctor-"));else{if("maplike"==e.type)return k.writeMaplike(e,t+1,w);if("comment"==e.type)return k.writeComment(e,t+1)}}).join("");return x({obj:e,indent:t,id:h,ctor:C.join(",\n"),partial:e.partial?"partial ":"",callback:e.callback?"callback ":"",children:S})}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+"-",k=this,S=e.children.map(function(e){return"field"===e.type?k.writeField(e,m,t+1,w):"constant"===e.type?k.writeConst(e,b,t+1,w):void 0}).join("");return v({obj:e,indent:t,children:S})}if("dictionary"===e.type){var E=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),E=t>E?t:E});var w="widl-"+e.refId+"-",k=this,S=e.children.map(function(e){return k.writeMember(e,E,t+1,w)}).join("");return s({obj:e,indent:t,children:S,partial:e.partial?"partial ":""})}if("callback"===e.type){var N=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:N})}if("enum"===e.type){var S=e.children.map(function(n){return o({obj:n,parentID:e.refId,indent:t+1})}).join(",\n");return l({obj:e,indent:t,children:S})}},writeField:function(e,t,n,r){var i=t-e.datatype.length;return e.nullable&&(i-=1),e.array&&(i-=2*e.arrayCount),y({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 a=t-i;return e.nullable&&(a-=1),e.array&&(a-=2*e.arrayCount),h({obj:e,indent:n,declaration:e.declaration,pad:a,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(", "),a=0;a=e.isUnionType?e.datatype.join(" or ").length+2:e.datatype.length,e.isStatic&&(a+=7); +var s=t-a;return e.nullable&&(s-=1),e.array&&(s-=2*e.arrayCount),d({obj:e,indent:n,arr:T(e),nullable:e.nullable?"?":"","static":e.isStatic?"static ":"",pad:s,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 b({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})},writeMaplike:function(e,t){var n=e.readonly?"readonly ":"";return g({obj:e,indent:t,readonly: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),a(i)}},{run:function(e,n,r,i){i.pub("start","core/webidl"),e.noIDLSorting||(e.noIDLSorting=!1),e.noIDLSectionTitle||(e.noIDLSectionTitle=!1),sn=new simpleNode(document);var a=$(".idl",n).not("pre"),s=function(){i.pub("end","core/webidl"),r()};if(!a.length)return s();$(n).find("head link").first().before($("<style/>").text(t));var o=[];a.each(function(){var t=new w({noIDLSorting:e.noIDLSorting,msg:i,doc:n,conf:e}),r=t.definition($(this)),a=t.makeMarkup(r.htmlID);$(this).replaceWith(a),-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>")}}),s()}}}),window.simpleNode=function(e){this.doc=e?e:document},window.simpleNode.prototype={element:function(e,t,n,r){var i=$(this.doc.createElement(e));if(i.attr(t||{}),n&&$(n).append(i),r)if(r instanceof jQuery)i.append(r);else if(r instanceof Array)for(var a=0;a<r.length;a++)i.append(r[a]);else this.text(r,i);return i},text:function(e,t){var n=this.doc.createTextNode(e);return t&&$(t).append(n),n},documentFragment:function(){return this.doc.createDocumentFragment()},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},idThatDoesNotExist:function(e){var t=1;if(this.doc.getElementById(e)){for(;this.doc.getElementById(e+"-"+t);)t++;e=e+"-"+t}return e}},define("core/link-to-dfn",[],function(){return{run:function(e,t,n,r){r.pub("start","core/link-to-dfn"),t.normalize();var i={};Object.keys(e.definitionMap).forEach(function(t){i[t]={},e.definitionMap[t].forEach(function(e){void 0===e.attr("data-idl")&&e.removeAttr("data-dfn-for");var n=e.attr("data-dfn-for")||"";n in i[t]&&r.pub("error","Duplicate definition of '"+(n?n+"/":"")+t+"'"),i[t][n]=e,e.attr("data-idl")?e.makeID("dom",(n?n+"-":"")+t):e.makeID("dfn",t)})}),$("a:not([href])").each(function(){var e=$(this);if(!e.hasClass("externalDFN")){var t=e.dfnTitle(),n=(e.attr("for")||e.closest("[link-for]").attr("link-for")||"").toLowerCase();i[t]&&i[t][n]?e.attr("href","#"+i[t][n].prop("id")).addClass("internalDFN"):(e.parents(".idl, dl.methods, dl.attributes, dl.constants, dl.constructors, dl.fields, dl.dictionary-members, span.idlMemberType, span.idlTypedefType, div.idlImplementsDesc").length||r.pub("warn","Found linkless <a> element with text '"+(n?n+"/":"")+t+"' but no matching <dfn>."),e.replaceWith(e.contents()))}}),r.pub("end","core/link-to-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",a=function(e,s,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],s),h=f.hasClass("introductory"),m=f.hasClass("notoc");if(f.children().length&&!m){var g=f.children()[0],b=g.localName.toLowerCase();if("h2"===b||"h3"===b||"h4"===b||"h5"===b||"h6"===b){var y=g.textContent,v=$("<div></div>").append($(g).contents().clone());v.find("a").renameElement("span").attr("class","formerLink").removeAttr("href"),v.find("dfn").renameElement("span").removeAttr("id");var x=f.makeID(null,y);h||o[o.length-1]++;var w=o.slice();f.hasClass("appendix")&&1===o.length&&!n&&(r=o[0],n=!0),n&&(w[0]=i.charAt(o[0]-r));var k=w.join("."),C=1==w.length;C&&(k+=".",$(g).before(document.createComment("OddPage")));var T=$("<span class='secno'></span>").text(k+" ");h||$(g).prepend(T),t[x]=(h?"":"<span class='secno'>"+k+"</span> ")+"<span class='sec-title'>"+y+"</span>";var S=$("<a/>").attr({href:"#"+x,"class":"tocxref"}).append(h?"":T.clone()).append(v.contents()),E=$("<li class='tocline'/>").append(S);(0==c.maxTocLevel||l<=c.maxTocLevel)&&p.append(E),o.push(0);var N=a(f,s,o,l+1,c);N&&E.append(N),o.pop()}}}return p};return{run:function(n,r,i,s){s.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(){s.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=a($("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("tmpl!w3c/templates/permalinks.css",["handlebars"],function(){return Handlebars.compile("/* --- PERMALINKS --- */\n{{#if permalinkHide}}\nsection > *:hover > span.permalink { visibility: visible; } \n{{/if}}\n\n.permalink {\n width: 1px;\n height: 1px;\n overflow: visible;\n font-size: 10pt;\n font-style: normal;\n vertical-align: middle;\n margin-left: 4px;\n {{#if permalinkEdge}}\n float: right;\n {{/if}}\n {{#if permalinkHide}}\n visibility: hidden;\n {{/if}}\n}\n\n.permalink a, .permalink a:link, .permalink a:visited, .permalink a:hover, .permalink a:focus, .permalink a:active \n{\n background:transparent !important;\n text-decoration:none;\n font-weight: bold;\n color:#666 !important;\n}\n\n.permalink abbr {\n border:0;\n}\n")}),define("w3c/permalinks",["tmpl!w3c/templates/permalinks.css","core/utils"],function(e){return{run:function(t,n,r,i){if(i.pub("start","w3c/permalinks"),t.includePermalinks){var a=t.permalinkSymbol||"§",s="<style>"+e(t)+"</style>";$(n).find("head link").first().before(s);var o=$(n).find("h2, h3, h4, h5, h6");o.each(function(e,n){var r=$(n);if(!r.hasClass("nolink")){var i=r.attr("id"),s=r.parent();if((s.is("section")||s.is("div"))&&(i=s.hasClass("introductory")||s.hasClass("nolink")?null:s.attr("id")),null!=i){var o=$("<span></span>");o.attr("class","permalink"),t.doRDFa&&o.attr("typeof","bookmark");var l=r.text(),c=$("<a></a>");c.attr({href:"#"+i,"aria-label":"Permalink for "+l,title:"Permalink for "+l}),t.doRDFa&&c.attr("property","url");var u=$("<span></span>");t.doRDFa&&u.attr({property:"title",content:l}),u.append(a),c.append(u),o.append(c),t.permalinkEdge||r.append(" "),r.append(o)}}})}i.pub("end","w3c/permalinks"),r()}}}),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("core/rdfa",[],function(){return{run:function(e,t,n,r){r.pub("start","core/rdfa"),e.doRDFa&&$("section").each(function(){var e=$(this),t="",n=e.children("h1,h2,h3,h4,h5,h6").first(),r=e.attr("id"),i=null;r?t="#"+r:n.length&&(r=n.attr("id"),r&&(t="#"+r,i=r));var a="bibo:hasPart";t.match(/#(abstract|sotd|toc)$/)||e.attr({"typeof":"bibo:Chapter",resource:t,property:a}),n.length&&(i||(i=n.makeID("h",r)),n.attr({resource:"#"+i}),n.wrapInner("<span property='xhv:role' resource='xhv:heading'></span>"))}),r.pub("end","core/rdfa"),n()}}}),define("w3c/aria",["core/utils"],function(){return{run:function(e,t,n,r){if(r.pub("start","w3c/aria"),$("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 i=$("section#toc",t).find("ul:first");i.attr("role","directory"),i.attr("id")||i.attr("id","respecContents")}var a=0,s=0;$(".note-title, .issue-title",t).each(function(e,t){var n=$(t),r=n.hasClass("issue-title"),i=n.parents("section").length+2;n.attr("aria-level",i),n.attr("role","heading"),r?(s++,n.makeID("h","issue"+s)):(a++,n.makeID("h","note"+a))}),r.pub("end","w3c/aria"),n()}}}),define("core/shiv",[],function(){return{run:function(e,t,n,r){r.pub("start","core/shiv");var i=t.createComment("[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]");$("head").append(i),r.pub("end","core/shiv"),n()}}}),define("core/remove-respec",["core/utils"],function(e){return{run:function(t,n,r,i){i.pub("start","core/remove-respec"),e.removeReSpec(n),i.pub("end","core/remove-respec"),r()}}}),define("core/location-hash",[],function(){return{run:function(e,t,n,r){r.pub("start","core/location-hash");var i=window.location.hash,a=void 0!==window.pageYOffset?window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop;i&&!a&&(window.location.hash="",window.location.hash=i),r.pub("end","core/location-hash"),n()}}});var requireConfig={shim:{shortcut:{exports:"shortcut"}}};"respecVersion"in window&&respecVersion&&(requireConfig.paths={ui:"https://w3c.github.io/respec/js/ui"}),require.config(requireConfig),define("profile-w3c-common",["domReady","core/base-runner","core/ui","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/dfn","w3c/rfc2119","core/examples","core/issues-notes","core/requirements","core/highlight","core/best-practices","core/figures","core/biblio","core/webidl-contiguous","core/webidl-oldschool","core/link-to-dfn","core/fix-headers","core/structure","w3c/informative","w3c/permalinks","core/id-headers","core/rdfa","w3c/aria","core/shiv","core/remove-respec","core/location-hash"],function(e,t,n){var r=Array.prototype.slice.call(arguments);e(function(){n.addCommand("Save Snapshot","ui/save-html","Ctrl+Shift+Alt+S"),n.addCommand("About ReSpec","ui/about-respec","Ctrl+Shift+Alt+A"),n.addCommand("Definition List","ui/dfn-list","Ctrl+Shift+Alt+D"),n.addCommand("Search Specref DB","ui/search-specref","Ctrl+Shift+Alt+space"),t.runAll(r)})}); require(['profile-w3c-common']);
--- a/latest/respec-webpayments.js Mon Dec 15 01:24:15 2014 -0500 +++ b/latest/respec-webpayments.js Wed May 06 21:40:48 2015 +0200 @@ -1,123 +1,5 @@ /* Web Payments Interest Group common spec JavaScript */ var webpayments = { - // Add to the respecConfig preProcess config array - preProcess: { - apply: function(c) { - // process the document before anything else is done - var refs = document.querySelectorAll('adef') ; - for (var i = 0; i < refs.length; i++) { - var item = refs[i]; - var p = item.parentNode ; - var con = item.innerHTML ; - var sp = document.createElement( 'dfn' ) ; - var tit = item.getAttribute('title') ; - if (!tit) { - tit = con; - } - sp.className = 'adef' ; - sp.title=tit ; - sp.innerHTML = con ; - p.replaceChild(sp, item) ; - } - refs = document.querySelectorAll('aref') ; - for (var i = 0; i < refs.length; i++) { - var item = refs[i]; - var p = item.parentNode ; - var con = item.innerHTML ; - var sp = document.createElement( 'a' ) ; - sp.className = 'aref' ; - sp.setAttribute('title', con); - sp.innerHTML = '@'+con ; - p.replaceChild(sp, item) ; - } - // local datatype references - refs = document.querySelectorAll('ldtref') ; - for (var i = 0; i < refs.length; i++) { - var item = refs[i]; - if (!item) continue ; - var p = item.parentNode ; - var con = item.innerHTML ; - var ref = item.getAttribute('title') ; - if (!ref) { - ref = item.textContent ; - } - if (ref) { - ref = ref.replace(/\n/g, '_') ; - ref = ref.replace(/\s+/g, '_') ; - } - var sp = document.createElement( 'a' ) ; - sp.className = 'datatype'; - sp.title = ref ; - sp.innerHTML = con ; - p.replaceChild(sp, item) ; - } - // external datatype references - refs = document.querySelectorAll('dtref') ; - for (var i = 0; i < refs.length; i++) { - var item = refs[i]; - if (!item) continue ; - var p = item.parentNode ; - var con = item.innerHTML ; - var ref = item.getAttribute('title') ; - if (!ref) { - ref = item.textContent ; - } - if (ref) { - ref = ref.replace(/\n/g, '_') ; - ref = ref.replace(/\s+/g, '_') ; - } - var sp = document.createElement( 'a' ) ; - sp.className = 'externalDFN'; - sp.title = ref ; - sp.innerHTML = con ; - p.replaceChild(sp, item) ; - } - // now do terms - refs = document.querySelectorAll('tdef') ; - for (var i = 0; i < refs.length; i++) { - var item = refs[i]; - if (!item) continue ; - var p = item.parentNode ; - var con = item.innerHTML ; - var ref = item.getAttribute('title') ; - if (!ref) { - ref = item.textContent ; - } - if (ref) { - ref = ref.replace(/\n/g, '_') ; - ref = ref.replace(/\s+/g, '_') ; - } - var sp = document.createElement( 'dfn' ) ; - sp.title = ref ; - sp.innerHTML = con ; - p.replaceChild(sp, item) ; - } - // now term references - refs = document.querySelectorAll('tref') ; - for (var i = 0; i < refs.length; i++) { - var item = refs[i]; - if (!item) continue ; - var p = item.parentNode ; - var con = item.innerHTML ; - var ref = item.getAttribute('title') ; - if (!ref) { - ref = item.textContent ; - } - if (ref) { - ref = ref.replace(/\n/g, '_') ; - ref = ref.replace(/\s+/g, '_') ; - } - - var sp = document.createElement( 'a' ) ; - var id = item.textContent ; - sp.className = 'tref' ; - sp.title = ref ; - sp.innerHTML = con ; - p.replaceChild(sp, item) ; - } - } - }, - // Add as the respecConfig localBiblio variable // Extend or override global respec references localBiblio: {
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/use-cases/images/instrument-selection.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,162 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd"> +<svg width="47cm" height="19cm" viewBox="-15 9 931 361" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <g> + <rect style="fill: #ffffff" x="106.674" y="275.417" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="106.674" y="275.417" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="189.174" y="299.317"> + <tspan x="189.174" y="299.317">Payer</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="213.247" y="328.162" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="213.247" y="328.162" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="295.747" y="352.062"> + <tspan x="295.747" y="352.062">Payment Agent</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="647.6" y="15.9" width="86.4" height="195.1"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="647.6" y="15.9" width="86.4" height="195.1"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="690.8" y="117.35"> + <tspan x="690.8" y="117.35">Payee</tspan> + </text> + </g> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x1="647.6" y1="64.675" x2="333.564" y2="64.4987"/> + <polygon style="fill: #000000" points="333.567,59.4987 323.564,64.4931 333.561,69.4987 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="333.567,59.4987 323.564,64.4931 333.561,69.4987 "/> + </g> + <g> + <polyline style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="734,15.9 774.98,15.6926 774.98,64.483 746,64.6188 "/> + <polygon style="fill: #000000" points="745.976,59.6188 736,64.6656 746.023,69.6187 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="745.976,59.6188 736,64.6656 746.023,69.6187 "/> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="347.1" y="21.5639"> + <tspan x="347.1" y="21.5639">2. Payment Request, including </tspan> + <tspan x="347.1" y="37.5639"> payee-supported payment instruments</tspan> + <tspan x="347.1" y="53.5639"> sent to User Agent (e.g. browser)</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="432.8" y="127.15"> + <tspan x="432.8" y="127.15"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="781.014" y="34.2893"> + <tspan x="781.014" y="34.2893">1. Payee generates a</tspan> + <tspan x="781.014" y="50.2893"> Payment Request</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="443.3" y="294.15"> + <tspan x="443.3" y="294.15"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="531.735" y="54.5835"> + <tspan x="531.735" y="54.5835"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="785.586" y="102.667"> + <tspan x="785.586" y="102.667"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="869.025" y="118.93"> + <tspan x="869.025" y="118.93"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="816.699" y="99.8383"> + <tspan x="816.699" y="99.8383"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="429.912" y="35.4916"> + <tspan x="429.912" y="35.4916"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="375.464" y="151.457"> + <tspan x="375.464" y="151.457"></tspan> + </text> + <g> + <rect style="fill: #ffffff" x="156.564" y="44.4919" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="156.564" y="44.4919" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="239.064" y="68.3919"> + <tspan x="239.064" y="68.3919">User Agent</tspan> + </text> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="474.459" y="2.25756"> + <tspan x="474.459" y="2.25756"></tspan> + </text> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x1="239.042" y1="96.4919" x2="238.733" y2="259.665"/> + <polygon style="fill: #000000" points="244.042,96.5014 239.06,86.4919 234.042,96.4824 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="244.042,96.5014 239.06,86.4919 234.042,96.4824 "/> + <polygon style="fill: #000000" points="233.733,259.656 238.714,269.665 243.733,259.675 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="233.733,259.656 238.714,269.665 243.733,259.675 "/> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-5.24186" y="210.663"> + <tspan x="-5.24186" y="210.663">4. Payer selects their preferred</tspan> + <tspan x="-5.24186" y="226.663"> payment instrument from an</tspan> + <tspan x="-5.24186" y="242.663"> intersection of payee-supported</tspan> + <tspan x="-5.24186" y="258.663"> instruments and payer-supported</tspan> + <tspan x="-5.24186" y="274.663"> instruments</tspan> + <tspan x="-5.24186" y="290.663"> </tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="272.227" y="100.545"> + <tspan x="272.227" y="100.545"></tspan> + </text> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x1="295.986" y1="84.9891" x2="295.986" y2="312.698"/> + <polygon style="fill: #000000" points="290.986,312.698 295.986,322.698 300.986,312.698 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="290.986,312.698 295.986,322.698 300.986,312.698 "/> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="305.602" y="185.914"> + <tspan x="305.602" y="185.914">5. Payment Request is routed</tspan> + <tspan x="305.602" y="201.914"> to the appropriate Payment Agent</tspan> + <tspan x="305.602" y="217.914"> based on Payer's selection</tspan> + </text> + <g> + <rect style="fill: #ffffff" x="33.952" y="138.537" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="33.952" y="138.537" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="116.452" y="162.437"> + <tspan x="116.452" y="162.437">Payment Agent</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="39.7502" y="144.053" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="39.7502" y="144.053" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="122.25" y="167.953"> + <tspan x="122.25" y="167.953">Payment Agent</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="47.2456" y="151.053" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="47.2456" y="151.053" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="129.746" y="174.953"> + <tspan x="129.746" y="174.953">Payment Agent</tspan> + </text> + </g> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x1="191.516" y1="100.523" x2="191.859" y2="123.195"/> + <polygon style="fill: #000000" points="196.515,100.447 191.364,90.5244 186.516,100.599 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="196.515,100.447 191.364,90.5244 186.516,100.599 "/> + <polygon style="fill: #000000" points="186.86,123.271 192.011,133.194 196.859,123.119 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="186.86,123.271 192.011,133.194 196.859,123.119 "/> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-14.01" y="108.132"> + <tspan x="-14.01" y="108.132">3. Payer-supported payment</tspan> + <tspan x="-14.01" y="124.132"> instruments are discovered</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="23.7495" y="112.566"> + <tspan x="23.7495" y="112.566"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="14.5571" y="95.5957"> + <tspan x="14.5571" y="95.5957"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="1.1221" y="107.616"> + <tspan x="1.1221" y="107.616"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="148.2" y="209.44"> + <tspan x="148.2" y="209.44"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="167.292" y="237.724"> + <tspan x="167.292" y="237.724"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="690.8" y="113.45"> + <tspan x="690.8" y="113.45"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="39.3059" y="205.197"> + <tspan x="39.3059" y="205.197"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="690.8" y="113.45"> + <tspan x="690.8" y="113.45"></tspan> + </text> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/use-cases/images/payee-initiated-processing.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,95 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd"> +<svg width="30cm" height="20cm" viewBox="79 19 582 382" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" d="M 260,71 A 6,6 0 0 0 254,65"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" x1="180" y1="65" x2="254" y2="65"/> + <path style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" d="M 260,119 A 6,6 0 0 0 266,125"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" x1="260" y1="71" x2="260" y2="119"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" x1="266" y1="125" x2="469" y2="125"/> + <polygon style="fill: #000000" points="469,130 479,125 469,120 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="469,130 479,125 469,120 "/> + </g> + <g> + <rect style="fill: #ffffff" x="80" y="20" width="100" height="180"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="80" y="20" width="100" height="180"/> + <text font-size="12.7998" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="130" y="114.8"> + <tspan x="130" y="114.8">Payee</tspan> + </text> + </g> + <text font-size="12.7998" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="130" y="110"> + <tspan x="130" y="110"></tspan> + </text> + <text font-size="12.7998" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="342.225" y="110"> + <tspan x="342.225" y="110"></tspan> + </text> + <g> + <rect style="fill: #ffffff" x="480" y="20" width="180" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="480" y="20" width="180" height="40"/> + <text font-size="12.7998" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="570" y="44.8"> + <tspan x="570" y="44.8">Payer</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="480" y="100" width="180" height="100"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="480" y="100" width="180" height="100"/> + <text font-size="12.7998" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="570" y="154.8"> + <tspan x="570" y="154.8">Payment Agent</tspan> + </text> + </g> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="400" y1="40" x2="460" y2="40"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="570" y1="60" x2="570" y2="100"/> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" d="M 260,169 A 6,6 0 0 0 266,175"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" x1="480" y1="175" x2="266" y2="175"/> + <path style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" d="M 260,159.95 A 4.94975,4.94975 0 0 0 255.05,155"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" x1="260" y1="169" x2="260" y2="159.95"/> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" x1="255.05" y1="155" x2="191" y2="155"/> + <polygon style="fill: #000000" points="191,150 181,155 191,160 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="191,150 181,155 191,160 "/> + </g> + <g> + <rect style="fill: #ffffff" x="80" y="280" width="100" height="120"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="80" y="280" width="100" height="120"/> + <text font-size="12.7998" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="130" y="344.8"> + <tspan x="130" y="344.8">Processor</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="300" y="20" width="84.45" height="180"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="300" y="20" width="84.45" height="180"/> + <text font-size="12.7998" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="342.225" y="114.8"> + <tspan x="342.225" y="114.8">User Agent</tspan> + </text> + </g> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20; stroke: #000000" d="M 480 200 C 380,240 280,240 190.213,204.085"/> + <polygon style="fill: #000000" points="192.07,199.443 180.928,200.371 188.356,208.728 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="192.07,199.443 180.928,200.371 188.356,208.728 "/> + </g> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="105" y1="200" x2="105" y2="269"/> + <polygon style="fill: #000000" points="100,269 105,279 110,269 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="100,269 105,279 110,269 "/> + </g> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="155" y1="280" x2="155" y2="211"/> + <polygon style="fill: #000000" points="160,211 155,201 150,211 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="160,211 155,201 150,211 "/> + </g> + <text font-size="13.0272" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="228" y="57"> + <tspan x="228" y="57">1</tspan> + </text> + <text font-size="13.0272" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="227" y="173"> + <tspan x="227" y="173">2</tspan> + </text> + <text font-size="13.0272" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="89" y="244"> + <tspan x="89" y="244">3</tspan> + </text> + <text font-size="13.0272" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="164" y="243.5"> + <tspan x="164" y="243.5">4</tspan> + </text> + <text font-size="13.0272" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="324" y="252.15"> + <tspan x="324" y="252.15">2'</tspan> + </text> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/use-cases/images/payment-initiation.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,104 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd"> +<svg width="42cm" height="10cm" viewBox="45 35 832 200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <g> + <rect style="fill: #ffffff" x="49" y="65.3142" width="165" height="42.6858"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="49" y="65.3142" width="165" height="42.6858"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="131.5" y="90.5571"> + <tspan x="131.5" y="90.5571">Payer</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="47.8" y="188.9" width="165" height="40"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="47.8" y="188.9" width="165" height="40"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="130.3" y="212.8"> + <tspan x="130.3" y="212.8">Payment Agent</tspan> + </text> + </g> + <text font-size="12.8" style="fill: #bbbbff;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:700" x="216.592" y="134.771"> + <tspan x="216.592" y="134.771">Payer controls their </tspan> + <tspan x="216.592" y="150.771">User Agent and their</tspan> + <tspan x="216.592" y="166.771">Payment Agents</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="415.536" y="49.3284"> + <tspan x="415.536" y="49.3284">1. Payer selects product or</tspan> + <tspan x="415.536" y="65.3284"> service to purchase</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="401.1" y="152.5"> + <tspan x="401.1" y="152.5">3. Payment Request is sent to</tspan> + <tspan x="401.1" y="168.5"> Payment Agent via User Agent</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="213.8" y="129.15"> + <tspan x="213.8" y="129.15"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="748.6" y="132"> + <tspan x="748.6" y="132">2. Payee generates</tspan> + <tspan x="748.6" y="148"> Payment Request</tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="224.3" y="296.15"> + <tspan x="224.3" y="296.15"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="312.736" y="56.5834"> + <tspan x="312.736" y="56.5834"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="820.586" y="175.667"> + <tspan x="820.586" y="175.667"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="650.024" y="120.93"> + <tspan x="650.024" y="120.93"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="352.3" y="134.95"> + <tspan x="352.3" y="134.95"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="102" y="125"> + <tspan x="102" y="125"></tspan> + </text> + <g> + <rect style="fill: #ffffff" x="621.6" y="37.9" width="86.4" height="195.1"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="621.6" y="37.9" width="86.4" height="195.1"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="664.8" y="139.35"> + <tspan x="664.8" y="139.35">Payee</tspan> + </text> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="664.8" y="135.45"> + <tspan x="664.8" y="135.45"></tspan> + </text> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" d="M 741,96.675 A 10,10 0 0 0 731,86.675"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" x1="708" y1="86.675" x2="731" y2="86.675"/> + <path style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" d="M 733.575,184.225 A 7.42462,7.42462 0 0 0 741,176.8"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" x1="741" y1="96.675" x2="741" y2="176.8"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" x1="733.575" y1="184.225" x2="720" y2="184.225"/> + <polygon style="fill: #000000" points="720,179.225 710,184.225 720,189.225 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="720,179.225 710,184.225 720,189.225 "/> + </g> + <g> + <polyline style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="391.35,86.675 393.35,86.675 619.6,86.675 609.6,86.675 "/> + <polygon style="fill: #000000" points="609.6,91.675 619.6,86.675 609.6,81.675 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="609.6,91.675 619.6,86.675 609.6,81.675 "/> + </g> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" d="M 506.724,184.225 A 8.72393,8.72393 0 0 0 498,192.949"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" x1="621.6" y1="184.225" x2="506.724" y2="184.225"/> + <path style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" d="M 492.36,208.9 A 5.63955,5.63955 0 0 0 498,203.26"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" x1="498" y1="192.949" x2="498" y2="203.26"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-linejoin: round; stroke: #000000" x1="492.36" y1="208.9" x2="224.8" y2="208.9"/> + <polygon style="fill: #000000" points="224.8,203.9 214.8,208.9 224.8,213.9 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="224.8,203.9 214.8,208.9 224.8,213.9 "/> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="457" y="144"> + <tspan x="457" y="144"></tspan> + </text> + <g> + <rect style="fill: #ffffff" x="296.25" y="37.9" width="95.1" height="195.1"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" x="296.25" y="37.9" width="95.1" height="195.1"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="343.8" y="139.35"> + <tspan x="343.8" y="139.35">User Agent</tspan> + </text> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="562" y="157"> + <tspan x="562" y="157"></tspan> + </text> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-dasharray: 4; stroke: #000000" x1="131.5" y1="108" x2="130.3" y2="188.9"/> + <line style="fill: none; fill-opacity:0; stroke-width: 4; stroke-dasharray: 4; stroke: #000000" x1="214" y1="86.6571" x2="296.25" y2="86.675"/> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/latest/use-cases/images/web-payments-flow-summary.svg Wed May 06 21:40:48 2015 +0200 @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd"> +<svg width="34cm" height="13cm" viewBox="18 44 661 254" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="312.736" y="56.5834"> + <tspan x="312.736" y="56.5834"></tspan> + </text> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="730.8" y="165.45"> + <tspan x="730.8" y="165.45"></tspan> + </text> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" d="M 105.327,196.144 A 10,10 0 0 0 115.327,206.144"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="105.327" y1="170.463" x2="105.327" y2="196.144"/> + <path style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" d="M 356.074,215.653 A 9.50848,9.50848 0 0 0 346.565,206.144"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="115.327" y1="206.144" x2="346.565" y2="206.144"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="356.074" y1="215.653" x2="356.074" y2="233.038"/> + <polygon style="fill: #ff8585" points="351.074,233.038 356.074,243.038 361.074,233.038 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #ff8585" points="351.074,233.038 356.074,243.038 361.074,233.038 "/> + </g> + <text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="883" y="348"> + <tspan x="883" y="348"></tspan> + </text> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" d="M 590.102,206.163 A 9.79342,9.79342 0 0 0 599.895,196.37"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="599.895" y1="178.463" x2="599.895" y2="196.37"/> + <path style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" d="M 365.576,206.163 A 9.50169,9.50169 0 0 0 356.074,215.665"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="590.102" y1="206.163" x2="365.576" y2="206.163"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="356.074" y1="215.665" x2="356.074" y2="233.038"/> + <polygon style="fill: #ff8585" points="351.074,233.038 356.074,243.038 361.074,233.038 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #ff8585" points="351.074,233.038 356.074,243.038 361.074,233.038 "/> + </g> + <g> + <path style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" d="M 355.961,207.593 A 0.0398484,0.0398484 0 0 0 356.001,207.633"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="355.961" y1="170.463" x2="355.961" y2="207.593"/> + <path style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" d="M 356.074,207.658 A 0.0257599,0.0257599 0 0 0 356.048,207.633"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="356.001" y1="207.633" x2="356.048" y2="207.633"/> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke-linejoin: round; stroke: #ff8585" x1="356.074" y1="207.658" x2="356.074" y2="233.038"/> + <polygon style="fill: #ff8585" points="351.074,233.038 356.074,243.038 361.074,233.038 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #ff8585" points="351.074,233.038 356.074,243.038 361.074,233.038 "/> + </g> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #000000" x1="190.852" y1="144.463" x2="283.247" y2="144.463"/> + <polygon style="fill: #000000" points="283.247,149.463 293.247,144.463 283.247,139.463 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #000000" points="283.247,149.463 293.247,144.463 283.247,139.463 "/> + </g> + <g> + <line style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #000000" x1="416.911" y1="144.463" x2="509.306" y2="144.463"/> + <polygon style="fill: #000000" points="509.306,149.463 519.306,144.463 509.306,139.463 "/> + <polygon style="fill: none; fill-opacity:0; stroke-width: 3.52778; stroke: #000000" points="509.306,149.463 519.306,144.463 509.306,139.463 "/> + </g> + <g> + <rect style="fill: #ffffff" x="295.011" y="118.463" width="121.9" height="52" rx="10" ry="10"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="295.011" y="118.463" width="121.9" height="52" rx="10" ry="10"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="355.961" y="140.363"> + <tspan x="355.961" y="140.363">Phase 2</tspan> + <tspan x="355.961" y="156.363">Payee gets paid</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="521.07" y="110.463" width="157.65" height="68" rx="10" ry="10"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="521.07" y="110.463" width="157.65" height="68" rx="10" ry="10"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="599.895" y="132.363"> + <tspan x="599.895" y="132.363">Phase 3</tspan> + <tspan x="599.895" y="148.363">Payer receives </tspan> + <tspan x="599.895" y="164.363">receipt/goods/service</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="19.8019" y="118.463" width="171.05" height="52" rx="10" ry="10"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="19.8019" y="118.463" width="171.05" height="52" rx="10" ry="10"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="105.327" y="140.363"> + <tspan x="105.327" y="140.363">Phase 1</tspan> + <tspan x="105.327" y="156.363">Payer initiates Payment</tspan> + </text> + </g> + <g> + <rect style="fill: #ffffff" x="217.074" y="244.802" width="278" height="52" rx="10" ry="10"/> + <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="217.074" y="244.802" width="278" height="52" rx="10" ry="10"/> + <text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="356.074" y="266.702"> + <tspan x="356.074" y="266.702">Exceptions</tspan> + <tspan x="356.074" y="282.702">Insufficient funds, Regulatory block, etc.</tspan> + </text> + </g> +</svg>
--- a/latest/use-cases/index.html Mon Dec 15 01:24:15 2014 -0500 +++ b/latest/use-cases/index.html Wed May 06 21:40:48 2015 +0200 @@ -1,64 +1,85 @@ -<!DOCTYPE html> -<html> - <head> - <title>Web Payments Use Cases</title> - <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/> - <script src='../respec-w3c-common.js' class='remove'></script> - <script src='../respec-webpayments.js' class='remove'></script> - <script class='remove'> +<!DOCTYPE html> +<html> + <head> + <title>Web Payments Use Cases 1.0</title> + <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/> + <script src='../respec-w3c-common.js' class='remove'></script> + <script src='../respec-webpayments.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: "web-payments-use-cases", - + // if you wish the publication date to be other than today, set this - // publishDate: "2009-08-06", - + //publishDate: "2015-04-16", + // 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: "CG-DRAFT", - + // if there a publicly available Editor's Draft, this is the link - //edDraftURI: "https://web-payments.org/specs/source/use-cases", - + edDraftURI: "https://dvcs.w3.org/hg/webpayments/raw-file/default/latest/use-cases/index.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: [], - + // editors, add as many as you like // only "name" is required editors: [ - { name: "Pat Doe", url: "http://patdoe.example.com/", - company: "ACME", companyURL: "http://acme.example.com/" }, + { name: "Manu Sporny", url: "https://manu.sporny.org/", + company: "Digital Bazaar", companyURL: "http://digitalbazaar.com/" }, + { name: "Ian Jacobs", url: "http://www.w3.org/People/Jacobs/", + company: "W3C", companyURL: "http://www.w3.org/" }, ], - - // authors, add as many as you like. + + // 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/" }, - //], + + authors: [ + { name: "Ian Jacobs", url: "http://www.w3.org/People/Jacobs/", + company: "W3C", companyURL: "http://www.w3.org/" }, + { name: "Manu Sporny", url: "https://manu.sporny.org/", + company: "Digital Bazaar", companyURL: "http://digitalbazaar.com/" }, + { name: "David Ezell", url: "http://example.org/", + company: "NACS", companyURL: "http://www.nacsonline.com/" }, + { name: "Qian Sun", url: "", + company: "Alibaba", companyURL: "http://www.alibabagroup.com/" }, + { name: "David Jackson", url: "https://www.linkedin.com/in/davidjjackson", + company: "Oracle", companyURL: "http://www.oracle.com/" } + ], + + otherLinks: [{ + key: "Version control", + data: [{ + value: "Github Repository", + href: "https://github.com/w3c/webpayments-ig" + }, { + value: "Issues", + href: "http://www.w3.org/Payments/IG/track/products/2" + }] + }], // maximum level of table of contents - maxTocLevel: 2, - + maxTocLevel: 3, + // name of the WG wg: "Web Payments Interest Group", - + // URI of the public WG page wgURI: "http://www.w3.org/blog/wpig/", - - // name (with the @w3c.org) of the public mailing to which comments are due - wgPublicList: "public-webpayments-comments@w3.org", - + + // name of the public mailing to which comments are due + wgPublicList: "public-webpayments-comments", + // 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 @@ -66,45 +87,2520 @@ // Team Contact. wgPatentURI: "http://www.w3.org/2004/01/pp-impl/73816/status", - preProcess: [ webpayments.preProcess ]/*, + //preProcess: [ webpayments.preProcess ] + /*, alternateFormats: [ {uri: "diff-20111214.html", label: "diff to previous version"} ], */ }; - </script> - </head> -<body> - <section id='abstract'> - <p> -Abstract goes here. - </p> - </section> + //respecEvents.sub('start-all', webpayments.preProcess.apply); + </script> + <style type="text/css"> +body { + line-height: 1.4em; +} +h4 { + color: #005A9C; +} +dl { + margin-top: 20px; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dl > dt:first-of-type { + font-weight: bold; +} +@media (min-width: 768px), print { + .dl-horizontal { + margin-bottom: 4em; + } + .dl-horizontal dt { + font-weight: normal; + float: left; + width: 160px; + clear: left; + overflow: hidden; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } + .dl-horizontal dd > ul { + padding-left: 20px; + margin: 0px; + } +} + </style> + </head> +<body> - <section id='sotd'> - <p> -Custom Status of the Document language goes here. - </p> - </section> - - <section> - <h2>Introduction</h2> + <section id='abstract'> <p> -Introduction goes here. +This document is a prioritized list of Web payments use cases. +Guided by these use cases, the W3C Web Payments Interest Group +plans to derive architecture and associated technology +requirements to integrate payments into the Open Web +Platform. That work will form the basis of conversations with W3C +groups and the broader payments industry about what standards +(from W3C or other organizations) will be necessary to fulfill the +use cases and make payments over the Web easier and more secure. </p> </section> - <section> - <h2>Acknowledgements</h2> - + <section id='sotd'> <p> -The editors are thankful to the following contributions from ... -(in alphabetical order): +This document is a work in progress and is being released early and often +using an agile process; it is incomplete. </p> <p> -List of contributors/reviewers. +The Web Payments IG has only had the opportunity to review a handful of the +40+ use cases, 120+ requirements, hundreds of pages of +payments research submitted to the group via various other standards group +output such as ISO20022, research documents from X9 and the US Federal Reserve, +documents from the Web Payments Community Group, and input from the +general public. Our desire is to align with the larger payments industry +when it's possible to do so. Expect this document to be rapidly iterated upon +with that desire in mind. </p> + </section> + + <section> + <h2>Introduction</h2> + + <p> +ECommerce is thriving and continues to expand. However, +fragmentation of payment systems is limiting the growth potential +as are problems — both real and perceived — such as +fraud and usability. + </p> + + <p> +Because the Web is ubiquitous, strengthening support for Web +payments has the potential to create new opportunities for +businesses and customers. Mobile devices are already transforming +the industry by supplanting physical payment cards in proximity +payments, voucher distribution, and identification when people +authenticate to a scanner, point of sale, or access gate. Although +we are seeing innovation in mobile payment systems, the lack of +standards makes it more difficult to adapt to new payment +approaches or integrate new payment providers. + </p> + + <p> +The W3C Web Payments Interest Group is developing a roadmap for standards to +improve the interoperability of payments using Web technologies for both +online and brick-and-mortar (offline) scenarios. This will help achieve +greater interoperability among merchants and their customers, +payment providers, software vendors, mobile operators, native mobile +apps, and payment networks. The roadmap will include +<a title="payment scheme">payment schemes</a> in use +today (such as electronic cheques, credit cards, direct debit, and +cryptocurrencies) and those of the future. The roadmap will be derived from +the use cases listed below. + </p> + + <section> + <h3>Why This Work is Important</h3> + <p> +The Web Payments work is not just about making payments easier, faster, +more secure, and more innovative. There are many people around the world that +today's financial system does not reach. These people are called the world's +unbanked (or underbanked). The unbanked often live pay cheque to pay cheque, do +not have access to savings accounts or low-fee cheque cashing services, lines +of credit, or a way of saving for their future. Being unable to plan for one's +financial future often results in a focus on the short-term, which creates a +vicious cycle of not being able to escape one's situation. Not being able to +participate in the financial system creates unintended inequities that create +waste and result in a net loss for society. + </p> + <p> +However, some of the shortcomings of today's financial system could be +addressed via technological improvements. For example, there is a considerable +overlap between the unbanked and underbanked population and access to advanced +mobile phones and the Web. By providing financial services to people with +mobile phones in a standardized way via the Web, we could see an improvement +in the financial health of these individuals and their families. + </p> + <p> +Extending the current financial system to reach further helps an ever +increasing number of people plan for their future, focus on the long-term, and +thus contributes to a greater net gain for society. + </p> + </section> + + <section> + <h3>How this Document is Organized</h3> + + <p> +This document is organized as follows: + </p> + + <ul> + <li> +Section 2 defines basic payment terms. + </li> + <li> +Section 3 describes a common payment flow at a high +level. The group expects to work on additional +payment flows in future work. + </li> + <li> +Section 4 is a specific narrative, labeled according +to the steps of section 3. Section 7 describes +additional familiar narratives to give a more complete picture +of how the payment phases apply. + </li> + <li> +Section 6 lists the use cases - short scenarios that cover +diverse aspects of each payment step. + </li> + </ul> + + <p> +Each use case has: + </p> + <ul> + <li> +A title and short description. + </li> + <li> +Goals. How the use case advances one or more of the +<a href="https://www.w3.org/Payments/IG/wiki/ExecSummary#Goals">goals +for an interoperable Web payments framework</a>. + </li> + <li> +Motivation. This is commentary to help explain why the use +case has been included, including how it relates to similar use cases. + </li> + </ul> + + <p> +Each use case may also have notes on: + </p> + + <ul> + <li> +Security/Privacy. Security or privacy issues that may arise through this use +case. + </li> + <li> +Exceptions. Considerations in the case of specific exceptions (e.g., if a +user pays with a voucher and the <a>transaction</a> fails, the user's voucher +should be restored). + </li> + <li> +Accessibility. Accessibility considerations (e.g., in multi-factor +authentication, management of biometrics in the case of users with some +disabilities). + </li> + </ul> + + <p class="issue"> +The group seeks input from security, privacy, and accessibility experts. +Examples of desired groups to perform these reviews are, but are not +limited to: W3C Privacy Interest Group, +W3C Security Interest Group, W3C Web Accessibility Initiative and +Protocols and Formats Working Group, US Federal Reserve Security Panels, +X9 Security subgroups, and ISO security subgroups. + </p> + + <p> +The Interest Group (currently) regards some of the use cases as "essential" to +addressing their +<a href="https://www.w3.org/Payments/IG/wiki/ExecSummary#Goals">goals</a> and +others as "non-essential." + </p> + + <p class="note"> +All character names appearing in this document are fictitious. Any resemblance +to real persons, living or dead, is purely coincidental. Some organizations, +products, and services appearing in this document are real and are included +purely for pedagogic purposes and don't imply endorsement or approval of the +Web Payments work in any way, shape, or form. For all other organizations, +products, or services appearing in this document, any resemblance to real +entities is purely coincidental. + </p> + + </section> </section> - </body> + <section> + <h2>Terminology</h2> + <p> +This document attempts to communicate the concepts outlined in the Web +Payments space by using specific terms to discuss particular concepts. This +terminology is included below and linked to throughout the document to aid +the reader: + </p> + <dl> + <dt><dfn>entity</dfn></dt> + <dd> +A person, organization, or software agent that is capable of interacting with +the world. + </dd> + <dt><dfn>payee</dfn></dt> + <dd> +An <a>entity</a> that receives funds as required by a +<a>transaction</a>. + </dd> + <dt><dfn>payer</dfn></dt> + <dd> +An <a>entity</a> that provides a source of funds as required by a +<a>transaction</a>. + </dd> + <dt><dfn>payment instrument</dfn></dt> + <dd> +A mechanism used to transfer value from a <a>payer</a> to a +<a>payee</a>. Examples: Corporate Visa card, personal Visa card, a bitcoin +account, a PayPal account, an Alipay account, etc. + </dd> + <dt><dfn>payment processor</dfn></dt> + <dd> +An <a>entity</a> that submits and processes payments using a particular +<a>payment instrument</a> to a payment network. Examples: Stripe, PayPal, +Authorize.net, Atos, FedACH. + </dd> + <dt><dfn>payment scheme</dfn></dt> + <dd> +Sets of rules and technical standards for the execution of payment +<a title="transaction">transactions</a> that have to be followed by adhering +entities (<a title="payment processor">payment processors</a>, +<a title="payer">payers</a> and <a title="payee">payees</a>). Examples: Visa, +MasterCard, Bitcoin, Ripple, PayPal, Google Pay, Alipay, Yandex money, ACH, SEPA. + </dd> + <dt><dfn>purchase</dfn></dt> + <dd> +Activities surrounding and including a <a>transaction</a> (e.g., discovery of +an offer, negotiation of terms, selection of <a>payment instrument</a>, +delivery, etc.). + </dd> + <dt><dfn>transaction</dfn></dt> + <dd> +An exchange of value (e.g., buying or selling something) + </dd> + </dl> + + <p class="note"> +There are a number of financial industry standards (such as +ISO20022, ISO12812, various X9 standards, PCI DSS, and others) that +define payment terms. The Web Payments Interest Group has as a goal to +make use of industry-defined terms in its deliverables. At the same time, +the group has as a goal that these use cases may be understood by both +payment industry professionals and the broader Web community. Thus, our +definitions are simplified and few in number here, but the group is +also developing a +<a href="https://www.w3.org/Payments/IG/wiki/GlossaryReference">more complete glossary</a> +with detailed definitions and mappings to industry-defined terms. + </p> + </section> + + <section> + <h2>An Overview of the Payment Phases</h2> + + <p>There are many types of <a>transaction</a>s in the world of payments, +including person-to-business, business-to-business, business-to-person, +government-to-person, person-to-government, and +person-to-person. In this document we focus on the +interactions between a <a>payer</a> and a <a>payee</a>, +either of which could be a person, business, government, or software +agent), which we organize into four phases:</p> + + <p class="issue"> +The group would like feedback related to the general structure of the payment +phases from individuals that worked on ISO20022, ISO12812, the +European Payment Commission, and +various X9 documents to ensure that the phases reflect business processes +outlined in financial standardization initiatives. Feedback from the general +public is also requested to see if non-payment professionals can navigate and +understand the document without prior payment industry knowledge. + </p> + + <ol> + <li> +Negotiation of Payment Terms + </li> + <li> +Negotiation of Payment Instruments + </li> + <li> +Payment Processing + </li> + <li> +Delivery of Product/Receipt and Refunds + </li> + </ol> + +<p>The descriptions below only discuss the interactions between the +payer and the <a>payee</a>. We do not expose the low-level exchanges between +banks, card associations, or other back-end "payment clearing" parties +in a <a>transaction</a>. Those details will be discussed in the Interest +Group's work on architecture and +requirements.</p> + + <p>Each phase below consists of a series of steps. +The details of each step vary by <a>payment scheme</a>. Some steps may +not be relevant at certain times (e.g., depending on +<a>payment scheme</a> or <a>transaction</a> specifics). +For example, some <a title="purchase">purchases</a> do not involve a proof of +funds or proof of hold. ACH and SEPA +<a title="payment scheme">payment schemes</a> generally do not support the +verification of available funds, thus in these +<a title="payment scheme">payment schemes</a> the particular proof of funds +step is skipped. +In some cases, steps may happen in a slightly different order than described below. + </p> + <p> +It is also important to note that these phases and steps may be interrupted +at various times (e.g., one party drops out, or exceptions occur like +insufficient funds or a regulatory block). While these phases are an +approximation of the general flow of all payments, they are helpful in +structuring the use cases such that it is easy to figure out to which part of +the payment process a particular use case belongs. + </p> + + <p>While these four phases may apply more or less well to a variety +of other payment scenarios such as person-to-person +payments, those topics are not the current focus of the group. We +plan to address them directly in <a href="#future-work">future +work</a>.</p> + + <section> + <h3>Negotiation of Payment Terms</h3> + <p> +In the first phase of the payment process, the <a>payer</a> and the +<a>payee</a> negotiate the terms of the payment. + </p> + + <ul> + <li> +<strong>Discovery of Offer</strong>. The <a>payer</a> discovers the +<a title="payee">payee's</a> offer (e.g., by browsing a Web page or +from a native application). + </li> + <li> +<strong>Agreement on Terms</strong>. The <a>payer</a> and the +<a>payee</a> agree to what will be purchased, for how much, +in what currency, which <a title="payment scheme">payment schemes</a> +or loyalty programs are acceptable, etc. The <a>payee</a> may require the +<a>payer</a> to authenticate themselves. The <a>payee</a> may generate an +invoice for the <a>payer</a>. + </li> + <li> +<strong>Application of Marketing Elements</strong>. The <a>payer</a> +discovers and applies any loyalty programs, coupons, and other special offers +to the payment terms. + </li> + </ul> + </section> + + <section> + <h3>Negotiation of Payment Instruments</h3> + <p> +In the second phase of the payment process, <a>payer</a> and +<a>payee</a> determine which +<a title="payment instrument">payment instruments</a> the +<a>payer</a> will use to transfer funds to the <a>payee</a>. + </p> + + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>. The <a>payer</a> +discovers the <a title="payment instrument">payment instruments</a> that +are accepted by the <a>payee</a>. + </li> + <li> +<strong>Selection of Payment Instruments</strong>. The <a>payer</a> +selects one or more <a title="payment instrument">payment instruments</a> +that are available to the <a>payer</a> and are accepted by the +<a>payee</a>. + </li> + <li> +<strong>Authentication to Access Instruments</strong>. The +<a title="payer">payer's</a> access to the <a>payment instrument</a> +is authenticated. The <a>payer</a> consents to pay. Note: This authentication +with the <a>payment processor</a> is distinct from any authentication required +by the <a>payee</a> (such as when a merchant requires a customer to +have an account and log in to the merchant's Web site). + </li> + </ul> + </section> + + <section> + <h3>Payment Processing</h3> + <p> +The third phase of the payment process is used to initiate the transfer of +funds. Depending on the <a>payment instrument</a>, the transfer of funds +may be verified immediately or only after several days. + </p> + <ul> + <li> +<strong>Initiation of Processing</strong>. Depending on the +<a>payment instrument</a>, the <a>payer</a> (e.g., when using +PayPal or Yandex Money), the <a>payee</a> (e.g., when using a credit card), or other +party (e.g., bank) initiates processing. + </li> + <li> +<strong>Verification of Available Funds</strong>. The <a>payer</a> may +need to provide a proof of funds or a proof of hold to the <a>payee</a> +before finalizing payment and delivery of the product. + </li> + <li> +<strong>Authorization of Transfer</strong>. The <a>payee</a> receives +proof that the transfer of funds has been authorized. + </li> + <li> +<strong>Completion of Transfer</strong>. The <a>payment scheme</a> +determines the details of payment clearing and settlement. Transfer times +may vary from near-realtime to multiple days. The <a>payee</a>, +the <a>payer</a>, and/or third parties (such as regulatory bodies) may be +notified as each stage of the clearing and settlement process is completed. + </li> + </ul> + </section> + + <section> + <h3>Delivery of Product/Receipt and Refunds</h3> + <p> +In the fourth phase of the payment process, the <a>transaction</a> is completed +by providing the <a>payer</a> with a receipt and/or the product that +was purchased. + </p> + + <ul> + <li> +<strong>Delivery of Product</strong>. The <a>payer</a> receives goods or +services immediately, at a later date, automatically on a recurring basis, +etc. depending on the terms of the <a>purchase</a>. A digital proof of +payment may be required to access the product. + </li> + <li> +<strong>Delivery of Receipt</strong>. Depending on the +<a title="payment scheme">payment scheme(s)</a> chosen, there are +various ways and times that a receipt may be delivered (e.g., credit card +receipt, digital proof of <a>purchase</a>, encrypted line-item receipt, etc.). + </li> + <li> +<strong>Refunds</strong>. At times exceptions may occur (e.g., defective +product, application of store return policy, etc.). In this case, the +<a>payee</a> initiates payment to the <a>payer</a>. The refund may +take different forms, including a refund to the <a title="payer">payer's</a> +payment instrument, a refund using a different payment scheme, or store credit. + </li> + </ul> + </section> + + </section> + + <section> + <h2 id="phases-overview">A Simple Example of the Payment Phases</h2> + <p> +The following scenario is provided to aid the reader in understanding how the +phases of the payment process apply to a real world situation. In this scenario, +we follow Jill, who seeks a new outfit for a party. She selects items from +PayToParty, which is a brick-and-mortar store with an online presence. +She chooses how to pay and the items are delivered to her home on the +following day. + </p> + + <p> +See the appendix for <a href="#additional-examples">additional examples of +the payment phases</a>. + </p> + + <p class="issue"> +General feedback is requested on whether this section is helpful. We are +attempting to ground the payment phases and steps in a real world use case. +An alternative would be removing this section entirely if the preceding +section suffices, or moving this narrative to section 7 with the other examples. + </p> + + <section> + <h3>Negotiation of Purchase Terms</h3> + <ul> + <li> +<strong>Discovery of Offer</strong>: Jill begins her <a>purchase</a> at +home on her laptop, where she browses the items on the PayToParty Web +site. On the way to work the next morning, she explores the catalog +further from a native app on her smart phone. Jill can't decide +whether the dress displayed online is blue with black stripes or white +with gold stripes, so during her lunch break, she drops into the +PayToParty store near her office. She spots a few more items that +she thinks she'd like to <a>purchase</a>, but decides to wait until later to +make the <a>purchase</a>. + </li> + + <li> +<strong>Agreement on Terms</strong>: That same evening at home, +Jill logs into her account on the PayToParty Web site, adding her +preferred items to her shopping cart. The total price appears on the +page. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: As Jill prepares to +check out, PayToParty notifies her of a discount for 10% if she uses +the store's loyalty card to pay. + </li> + </ul> + </section> + + <section> + <h3>Negotiation of Payment Instruments</h3> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: Given where Jill lives, +PayToParty accepts payment by credit card, debit card, the PayToParty +loyalty card, and PayPal, but not Jill's favorite cryptocurrency (which she +uses on other sites). + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Jill pushes the +"Pay Now to Party!" button and is presented with a number of options +to pay, including her +credit card, her PayToParty loyalty card (which is highlighted to remind her +of the discount), and a PayPal account. There is also a gift card from +PayToParty that she received for her birthday, but she chooses not to +use it for this <a>purchase</a>. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Jill selects +the PayToParty loyalty card, which she enabled with theft-protection, +and is asked to input a code that is sent to her phone before the +<a>purchase</a> can be completed. + </li> + </ul> + </section> + + <section> + <h3>Payment Processing</h3> + <ul> + <li> +<strong>Initiation of Processing</strong>. PayToParty receives a +message from Jill's device authorizing the payment. PayToParty +submits the message to their <a>payment processor</a>, requesting a +proof of hold for the funds. + </li> + <li> +<strong>Verification of Available Funds</strong>. PayToParty +receives a proof of hold on Jill's funds for the <a>purchase</a> price of +the goods. The PayToParty night-shift employees begin packing her purchased +items for delivery the next day. + </li> + <li> +<strong>Authorization of Transfer</strong>. Once Jill's package is ready to +go, PayToParty exchanges the proof of hold for a proof of payment by +re-submitting the request to the payment network. They receive a proof of +payment from the <a>payment processor</a>. + </li> + <li> +<strong>Completion of Transfer</strong>. Since Jill's PayToParty loyalty card +operates as a credit card, PayToParty will receive the funds in their normal +end of week settlement. + </li> + </ul> + </section> + + <section> + <h3>Delivery of Product/Receipt and Refunds</h3> + <ul> + <li> +<strong>Delivery of Receipt</strong>. Jill's cloud-based wallet +receives a detailed line-item digital receipt for the <a>purchase</a>. + </li> + + <li> +<strong>Delivery of Product</strong>. Jill's package goes out by courier the +next morning and is on her doorstep before she leaves for work. + </li> + </ul> + </section> + </section> + + <section> + <h2>Assumptions</h2> + + <p> +The use cases below rely on a number of assumptions that are not +detailed in the use cases but that will be explored in more detail in +the architecture and requirements documents. + </p> + + <ul> + <li> +<strong>Connectivity</strong>. Connectivity requirements vary according to +use case. The types of connections a device may use include Internet +connectivity, proxied connections through short-range radio transmissions, +and proximity connections over a technology such as Near-Field Communication +(NFC) or Bluetooth Low Energy (BTLE). Some use cases assume no +connectivity (e.g., user is temporarily unable to connect to a mobile phone +network or a WiFi hotspot). + </li> + <li> +<strong>Registered Payment Instruments</strong>. In order for the +<a>payer</a> to select and utilize +<a title="payment instrument">payment instruments</a>, they must be +registered in some way and discoverable by a browser, native application, +or other software. + </li> + <li> +<strong>Security</strong>. Keys, encryption, and other security technology +must be used to secure sensitive information. It is important that sensitive +information is not transmitted to parties that do not absolutely need to +know the information in order to complete the <a>transaction</a>.</li> + <li> +<strong>Identity</strong>. There will be a consistent, interoperable +identifier used to identify the participants and accounts in a Web Payments +transaction. + </li> + </ul> + </section> + + <section> + <h2 id="use-cases">Use Cases</h2> + + <p> +This section examines the phases of payment, and the steps involved in each +phase, through a variety of use cases. The purpose of this section is to +elaborate on the variety of scenarios present in each step of the payment +process. + </p> + + <p class="issue"> +General feedback is requested related to the general structure of the +use case snippets below. Are they focused enough to convey each topic listed? +Is there information that should be added to each use case in general? Would +more elaborate use cases be helpful? Would an attempt to minimize each existing +use further be helpful in scanning the document more quickly? + </p> + + <section> + <h3>Negotiation of Payment Terms</h3> + <p> + </p> + + <section> + <h4>Discovery of Offer</h4> + + <dl class="dl-horizontal"> + <dt>Website</dt> + <dd> +Penny uses the HobbyCo website to select a $15 model train for <a>purchase</a>. + </dd> + <dt>Goals</dt> + <dd> +rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +This is the most common type of offer on the Web circa 2015 and is included +for the sake of completeness. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Point of Sale Kiosk</dt> + <dd> +Cory shops for groceries at his local ChowMart, scans his loyalty card and +all of the items he wants to <a>purchase</a> at the automated kiosk, and is +presented with a total amount. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Unifying POS interaction w/ the Web Payments architecture is vital for the +success of this work. + </dd> + <dt>Privacy</dt> + <dd> +Cory should exercise control over how much he wants the merchant +to be able to track his activities. Programs like loyalty cards will +likely involve agreement to more data with the merchant. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Mobile</dt> + <dd> +Daniel takes a taxi from the airport to his hotel. The taxi driver +displays the total with his mobile device and offers a tap-to-pay option. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Greater security, Innovation, Automatability, and +rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Unifying the way tap-to-pay offers work with the Web Payments architecture +would help ensure ubiquity. + </dd> + <dt>Exceptions</dt> + <dd> +No mobile phone connectivity (visiting a different country, trip occurs +outside the range of a mobile network, etc.) + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Freemium</dt> + <dd> +Ricki plays his favorite native app game and wants to upgrade his avatar +with a few extra "power-ups." Clicking on a power-up displays the price. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Innovation, and Transparency. + </dd> + <dt>Motivation</dt> + <dd> +Many of the very successful games these days run on the freemium model, +but are tied to specific app stores. Providing an app-store agnostic +mechanism to pay for items in freemium games would give players and +developers more choices. + </dd> + </dl> + + <section> + <h5>Non-Essential Use Cases</h5> + + <dl class="dl-horizontal"> + <dt>E-mail</dt> + <dd> +A GroupBuyCo customer receives an offer by email to <a>purchase</a> the deal +of the day. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and Automatability. + </dd> + <dt>Motivation</dt> + <dd> +Unifying how people initiate payments from email, at a Point of Sale, +and via a Web site will help ensure the ubiquity of the Web payment +technology platform. + </dd> + <dt>Privacy / Security</dt> + <dd> +It is important to recognize that initiating a payment from within an +email application could lead to a wholly new category of phishing/fraud. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Hold Funds</dt> + <dd> +Renne checks into a hotel and is asked for a deposit for any damages +to the room. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Increased user choice, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Some <a title="transaction">transactions</a>, such as a hold of funds, +do not always reach completion and are primarily used +to protect the <a>payee</a> from negligence on the part of the +<a>payer</a> (e.g., such as a <a>payer</a> damaging a hotel room). + </dd> + <dt>Exceptions</dt> + <dd> +Software acting on the <a title="payer">payer's</a> behalf may keep +track of exactly how much money the <a>payer</a> has and not allow them to +process the offer. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Pre-authorization</dt> + <dd> +George pulls up to a pump at a petrol station. His in-vehicle application +recognizes the station location and the pump. The pump communicates which +fuels it has and their price in an offer. George's car asks if he wants to +approve a fill up for up to €35. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, Greater security, Innovation, Transparency, +Automatability, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Some offers are not aware of the final price but would rather set limits on +the amount of the <a>purchase</a> before a particular metered good or service is +delivered. + </dd> + <dt>Privacy</dt> + <dd> +Due to the sensitivity of location data, individuals should be able to make +small fuel <a title="purchase">purchases</a> in a way that respects their privacy. + </dd> + <dt>Security</dt> + <dd> +Automated <a title="purchase">purchases</a> (e.g,. by a vehicle) should involve +increased security (e.g., a second factor of authentication). + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Machine Readability</dt> + <dd> +BigBoxCo expresses their entire product catalog online as machine-readable +information so that SearchCo may index their content more easily and direct +more customer traffic to BigBoxCo's website. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, Improved user experience, Innovation, Lower Costs, +Transparency, Automatability, Portability, Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Machine-readable offers will have a direct positive impact on store sales +if they are indexed by search engines. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Live Market Prices</dt> + <dd> +EnergyCo lists barrels of refined oil for sale on their website based on an +algorithm that uses the cost of coal and crude oil as inputs. EnergyCo +guarantees their prices for up to 24 hours from the posting date. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, +Transparency, and +Automatability + </dd> + <dt>Motivation</dt> + <dd> +The ability to express a non-repudiable offer as the basis of a legally +enforceable contract will reduce <a>transaction</a> friction. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Trial-ware</dt> + <dd> +Amantha downloads the latest version of her favorite game and beats +the first level. The game asks her if she'd like to buy the full game +to play further levels. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +There is a fairly large trial-ware industry that could benefit from +a simple way of executing a payment without requiring redirection +to another site to enter account and payment details. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>In-vehicle</dt> + <dd> +Jeff listens to a lot of music on the way to work. The music station +serves a digital offer along with the music stream. This enables Jeff to +easily buy music that he really likes. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Innovation, +Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Car manufacturers and the entertainment industry may be interested in +extending their sales channels into vehicles. + </dd> + <dt>Accessibility</dt> + <dd> +For safety reasons, the interface used to interact with the digital offer +must not distract the driver of the vehicle. Voice controls and other +techniques can be used to reduce driver distraction. + </dd> + </dl> + + </section> + </section> + + <section> + <h4>Agreement on Terms</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Credentials</dt> + <dd> +At times it is necessary to transmit personally identifiable information +(e.g., about a qualification, achievement, personal quality, aspect of an +<a>entity</a>'s background, or verifiable statement by an entity about +another entity) in order to be cleared to make a purchase: + <ul> + <li> +PharmCo will only sell regulated drugs to someone with proof +of an active pharmacist's license. + </li> + <li> +WineCo will only sell wine to someone with proof of being over the age of 21. + </li> + <li> +BoomCo will only ship industrial explosives to a business that can +provide evidence of construction permits, a contractor's license, and +an explosives handling license. + </li> + <li> +HomeLoanCo will not finalize a quote for a home mortgage without +a credit score report and an audited finances report. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Regulatory acceptance, +Innovation, +Transparency, +Automatability, and +Portability. + </dd> + <dt>Motivation</dt> + <dd> +There are certain types of <a title="purchase">purchases</a> that cannot +be initiated without a proper set of credentials. While this isn't fundamental +to the payment process, it is an integral part of some <a>transaction</a> +processes. + </dd> + <dt>Privacy / Security</dt> + <dd>It is important that people retain control over when + and how their credentials are shared.</dd> + <dt>Exceptions</dt> + <dd>A <a>transaction</a> may fail if a required credential is not available. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Privacy Protection</dt> + <dd> +Tibor orders assorted chocolates from CandyCo. CandyCo only needs Tibor's +verified shipping address to send him the chocolates. With Tibor's +authorization, his payment software transmits only his shipping address to +CandyCo. Tibor's privacy is protected from the candy store, which did not +require Tibor's name, email address, or any other personally identifying +information to complete the <a>transaction</a>. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and Greater security. + </dd> + <dt>Motivation</dt> + <dd> +Certain low-value <a>transaction</a>s shouldn't require the +<a>payer</a> to divulge personal information that is not necessary +to complete the <a>transaction</a>. + </dd> + <dt>Privacy</dt> + <dd> +Non-essential, personally identifiable data should be anonymized and +protected throughout the process. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Need to Know</dt> + <dd> +PayCo is required to keep a certain amount of information on their customers +for anti-money laundering / know your customer regulatory purposes. When a +<a>payer</a> performs a <a>transaction</a> with a <a>payee</a>, PayCo +would like to reduce the amount of information that's transmitted to the +<a>payee</a> while ensuring that PayCo complies with regulations. + </dd> + <dt>Goals</dt> + <dd> +Greater security, and Regulatory acceptance. + </dd> + <dt>Motivation</dt> + <dd> +There are types of information, such as personally identifiable information, +that <a title="payee">payees</a> do not need to know for some +transactions. Limiting sensitive information to be transmitted to entities +involved in a payment on a purely need-to-know basis increases security +while ensuring regulatory compliance. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>One-time Payment</dt> + <dd> +Jamie wishes to pay for a single article from a market analyst. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience + </dd> + <dt>Motivation</dt> + <dd>It should be clear to a +<a title="payer">payer</a> whether a +<a>purchase</a> is one-time or recurring, prior to initiation of +the payment. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Invoices</dt> + <dd> +Will goes to SuperVoices to download a voiceover that he commissioned for +his new pet sitting service. SuperVoices generates a detailed invoice for the +service and provides it to Will. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Transparency, +Automatability, +Portability, and +Monetization. + </dd> + <dt>Motivation</dt> + <dd> +For certain <a title="payment scheme">payment schemes</a>, the <a>payer</a> +will have to provide the payment service with a detailed digital invoice from +the <a>payee</a> in order to initiate payment to the <a>payee</a>. + </dd> + </dl> + + <section> + <h5>Non-essential Use Cases</h5> + + <dl class="dl-horizontal"> + <dt>Subscription</dt> + <dd> +Jeff subscribes to a site that provides a monthly analysis of the world +of finance. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Transparency, and +Automatability. + </dd> + <dt>Motivation</dt> + <dd> +<a title="payer">Payers</a> should be able to understand if a +particular <a>purchase</a> is a recurring payment prior to initiating +the payment. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Registration-less</dt> + <dd> +Some <a title="payee">payees</a> would rather not require a <a>payer</a> to +register at their site before initiating a purchase: + <ul> + <li> +Sven wants to view a pay to read article and does so without needing to +pre-register with the website. + </li> + <li> +Reiko finds a blowtorch for sale at a local digital resale website and +places money into escrow without needing to register with the website. + </li> + <li> +Benny is listening to music in a local coffee shop and likes a song he hears. +He initiates a purchase of the song from the local "music beacon" without +needing to register with the coffee shop or the music service. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Innovation, and +Automatability + </dd> + <dt>Motivation</dt> + <dd> +There are a large number of "paywall" websites on the Web that require a +customer to register before they may use the website. In many cases, if the +site isn't regularly visited by the customer, they abandon the transaction +when they see the paywall requirement. Providing a mechanism to sell an +inexpensive item to a customer without requiring registration would be of +great benefit to not only the merchants selling goods and services, but +customers that would like to avoid lengthy registration processes. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Full Disclosure</dt> + <dd> +Marge wishes to renew her passport online which requires transmission +of a fee and a great deal of information about her real-world identity. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience. + </dd> + <dt>Motivation</dt> + <dd> +Some <a>transaction</a>s will require very sensitive personally identifiable +information to be transmitted by the <a>payer</a>. + </dd> + <dt>Privacy / Security</dt> + <dd>We must ensure adequate security for these highly sensitive + transactions to reduce the likelihood of phishing attacks.</dd> + </dl> + </section> + + </section> + + <section> + <h4>Application of Marketing Elements</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Coupons</dt> + <dd> +JustPopcorn sends Marco a special discount offer given Marco's past +<a title="purchase">purchases</a>. The offer takes the form of a coupon that +may be applied during payment. + </dd> + <dt>Goals</dt> + <dd> +Automatability and Portability. + </dd> + <dt>Motivation</dt> + <dd> +Providing a mechanism to apply digital coupons before a payment is initiated +helps price-conscious customers as well as merchants attempting to research +price sensitivity. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Loyalty Cards</dt> + <dd> +Terry uses his FoodCo loyalty card when purchasing his weekly groceries, which +gives him a discount on gas <a title="purchase">purchases</a> performed at the +FoodCo gas station. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience and Portability. + </dd> + <dt>Motivation</dt> + <dd> +Loyalty cards may be used at multiple locations to effect the price of a +particular good. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Store Credit</dt> + <dd> +When Rick arrives as the self-checkout kiosk, +he scans five dress shirts and two new pairs of slacks. +The kiosk mentions that Rick could save 15% off of his <a>purchase</a> +if he makes the <a>purchase</a> using store credit. He accepts the offer and +a new store credit card is placed in his payment application on his mobile +phone. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Automatability, +Portability, +Monetization, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Merchants often provide discounts to customers if they sign up for a +store-specific line of credit. + </dd> + </dl> + + </section> + + </section> + + <section> + <h3>Negotiation of Payment Instruments</h3> + <p> + </p> + + + <section> + <h4>Discovery of Accepted Schemes</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Ubiquitous Schemes</dt> + <dd> +A game store Web site accepts payment via credit card, e-cheque, and +operator billing. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Minimal standardization, +Lower Costs, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +We have a goal for the Web payment architecture to support existing +ubiquitous <a title="payment scheme">payment schemes</a> without +changes to how they operate. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Emerging Schemes</dt> + <dd> +CrowdFundCo supports Bitcoin, Ripple, Google Wallet, and PayPal. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Minimal standardization, +Lower Costs, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +The same mechanism used to support existing +<a title="payment scheme">payment schemes</a> should also +support emerging <a title="payment scheme">payment schemes</a>. + </dd> + </dl> + + </section> + + <section> + <h4>Selection of Payment Instruments</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Discovery</dt> + <dd> +Yanos has a multiple digital wallets: one on his mobile phone, two in the +cloud (but on different websites), and one on his smart watch. Each one has +a credit card that he may want to use for a credit card-based <a>purchase</a>. + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Automatability, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +A <a>payer</a> will most likely use multiple digital wallets over time. It is +important to ensure that the wallets that they use are presented to them in a +consistent manner across devices. + </dd> + <dt>Privacy / Security</dt> + <dd> +Discovery of digital wallets must be done in such a way as to ensure +privacy protection. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Manual Selection</dt> + <dd>In many cases, the <a>payer</a> will select a payment instrument manually: + <ul> + <li> +Marie has credit cards from three different institutions: +one for work (from BankA), one personal card (from BankB), and one retail card +(from PayCo). She wants to choose the right one depending on the context of her +purchase. + </li> + <li> +Claire has one debit card and multiple credit cards from the same bank. + </li> + <li> +Veronique wants to use a cryptocurrency in some cases (e.g., +peer-to-peer payments). + </li> + <li> +Seth participates in a loyalty program with his local grocery store and +can apply a variety of digital coupons when he visits the store. +<span class="issue">Is a loyalty card a payment instrument, or a credential? +</span> + </li> + <li> +David wants to be able to manually arrange available +<a title="payment instrument">payment instruments</a> when they are presented +to him. <span class="issue">Why does this need to be standardized? +Isn't this just a part of the wallet UI?</span> + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, +Transparency, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +There are scenarios, such as the first interaction/use of a payment instrument, +where selection of the payment instrument won't be able to be performed +automatically. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Automatic Selection</dt> + <dd> +When a <a title="payer">payer's</a> personal preferences are known, it +becomes possible to make selections for them automatically. + + <ul> + <li> +Jonny's payment software on his smart watch chooses the payment instrument that +will provide him with the biggest cost savings for each <a>purchase</a> he makes +throughout the week. + </li> + <li> +PayCo wants Elizabeth to know that if she pays with the debit card preferred +by PayCo (because of a lower <a>transaction</a> fee for PayCo), +she will benefit from a discount. + </li> + <li> +Whenever Mary shops at BigFreshGrocery she uses the same credit card. +She wants payment to happen automatically with that card when she puts her +phone near the checkout terminal as well as when purchasing groceries online +from BigFreshGrocery. + </li> + <li> +Lalana does not like to scroll. She wants the instruments she uses most +often to appear at top of the displayed list of available payment instruments. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, +Lower Costs, +Transparency, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Payment solutions providers can make payments easier and faster through automation. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Payer Privacy</dt> + <dd>We anticipate a range of privacy scenarios: + <ul> + <li> +Lucio sends information about instruments he is willing to use to +TrustedMerchant, who provides a discount for access to his information. + </li> + <li> +Carla does not want to share information about the +<a title="payment instrument">payment instruments</a> she uses with any +merchants, so that information is not shared with any online merchants. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Innovation, and +Monetization. + </dd> + <dt>Motivation</dt> + <dd> +Sharing or protecting data on the sorts of +<a title="payment instrument">payment instruments</a> available to +a <a>payer</a> should be a decision made by the <a>payer</a>. + </dd> + <dt>Privacy / Security</dt> + <dd> +The types of <a title="payment instrument">payment instruments</a> available +to a <a>payer</a> could be +used to digitally fingerprint a <a>payer</a> even if they were using an +pseudo-anonymous payment mechanism. Merchants and <a>payee</a>s may be legally +obligated to protect this kind of <a>payer</a> payment information. + </dd> + </dl> + + </section> + + <section> + <h4>Authentication to Access Instruments</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Multi-Factor</dt> + <dd> +We anticipate a range of authentication scenarios, leveraging a wide variety +of approaches and device capabilities: + <ul> + <li> +When Ian selects his debit card, he is prompted for a PIN. + </li> + <li> +Wes has configured his debit card to require a fingerprint scan from his +mobile device and a Universal Two Factor (U2F) device to be used when +performing a <a>purchase</a> over $1,000. + </li> + <li> +Frederic taps his phone at the grocery store to pay, and BankA sends him a +one-time password (OTP) on his mobile phone that he enters using a keypad at +the checkout counter. + </li> + <li> +Nadia's bank asks her to use her two-factor authentication device and at +least one of their in-branch retinal scanners or palm-vein readers +before she is allowed to withdraw $25,000. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Greater security, +Minimal standardization, +Regulatory acceptance, +Innovation, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd>The payments architecture should support + the authentication devices available today for +multi-factor authentication, as well as those of the future. + </dd> + <dt>Accessibility</dt> + <dd>Not everyone can provide fingerprints or detailed iris scans. + Therefore, it is important to offer multiple forms of + biometric verification to improve accessibility. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Regulatory Blocks</dt> + <dd> +PayCo must ensure that their customers do not appear on any regulatory +blacklists when performing <a>transaction</a>s above a certain monetary amount. + </dd> + <dt>Goals</dt> + <dd> +Regulatory acceptance, and Automatability. + </dd> + <dt>Motivation</dt> + <dd> +Easing compliance with Know Your Customer (KYC) and +Anti-Money Laundering (AML) regulations +will ensure safer and faster <a title="payment scheme">payment schemes</a>. + </dd> + <dt>Exceptions</dt> + <dd> +If a <a>payee</a> detects that a <a>payer</a> is on an applicable blacklist, the +transaction must not proceed. + </dd> + </dl> + + <section> + <h5>Non-essential Use Cases</h5> + <dl class="dl-horizontal"> + <dt>Biometric</dt> + <dd> +In current online and offline payment <a>transaction</a>s, biometric +authentication can be used instead of password-based authentication: + <ul> + <li> +John registers his fingerprint with his payment provider so that he can +just use a fingerprint to pay for low-value items. + </li> + <li> +Sarah registers her voiceprint and face with her payment provider for use +in <a>transaction</a>s greater than $1,000. + </li> + <li> +Rico buys a $5,000 car for his daughter through an online dealership. His +<a>payment processor</a> requires a password plus two forms of biometric +identification. Rico doesn't have hands, so he uses a face and iris scan to +perform the authentication. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Greater security, +Minimal standardization, +Regulatory acceptance, +Innovation, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Biometrics can be utilized on Point of Sale terminals, mobile, and wearable +devices. Web payment systems based on biometrics could achieve more reliable +information security and convenience. Some forms of biometric authentication, +like facial recognition, can also be used to augment password-based +authentication mechanisms. + </dd> + <dt>Security / Privacy</dt> + <dd> + <ul> + <li> +An individual's privacy should be protected when performing any sort of +biometric authentication. + </li> + <li> +Important data, such as the fingerprint template and private key, and +sensitive code should be stored and executed in a Trusted Execution +Environment (TEE). + </li> + <li> +The fingerprint authentication protocol, which is capable of transmitting a +proof of fingerprint authentication credential, should not contain any +personal fingerprint data. + </li> + </ul> + </dd> + <dt>Accessibility</dt> + <dd>Not everyone can provide fingerprints or detailed iris scans. + Therefore, it is important to offer multiple forms + biometric verification to improev accessibility. + </dd> + </dl> + </section> + + </section> + + </section> + + <section> + <h3>Payment Processing</h3> + <p> + </p> + + <section> + <h4>Initiation of Processing</h4> + <p> + </p> + + <p class="note"> +Before subjecting a person or organization to any financial <a>transaction</a> +commitment (such as a web payment), they should be presented with the option +of reversing, checking, or confirming their choice or submission. It should +also be noted that this does not preclude certain <a>transaction</a> operations +from being automated once they have been authorized by an <a>entity</a>. +For more details, see the section on +<a href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/#minimize-error-reversible">Error Prevention (Legal, Financial, Data)</a> +in [[WCAG20]]. + </p> + + <dl class="dl-horizontal"> + <dt>Payee-initiated</dt> + <dd>Some payments are initiated by the payee: + <ul> + <li> +Richard choses to pay using a credit card at FlowerFriends. FlowerFriends +initiates payment processing using their <a>payment processor</a> to contact the +acquiring bank that handles credit card payments for FlowerFriends. + </li> + <li> +Pitir has authorized RentSeekers to pull money out of his bank account on a +monthly basis in order to pay his rent. RentSeekers initiates a payment using +the ACH network to pull money from Pitir's bank account. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Automatability, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Payee-initiated payments, also known as "pull payments" or +"four corner model payments", are widely deployed and utilized today. + </dd> + <dt>Privacy / Security</dt> + <dd> +One of the biggest security flaws of <a>payee</a>-initiated payments is that +all the information necessary to initiate a <a>transaction</a> from the +<a title="payer">payer's</a> financial account is typically transmitted +to the <a>payee</a>. For example, credit card information along with +expiration date, name, and CVV2 code are transmitted and could be intercepted +by rogue software running on the <a title="payer">payer's</a> servers. +Special attention should be paid to ensuring that this risky security +model isn't supported by a Web Payments solution. For example, at a minimum, +credit card tokenization such as EMVCo's solution should be supported +alongside other tokenization solutions. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Payer-initiated</dt> + <dd>Some payments are initiated by the payer: + <ul> + <li> +Once Sally has signed into PayPal to pay, PayPal initiates payment processing. + </li> + <li> +Joakim uses his Bitcoin wallet to send money to his friend. + </li> + <li> +Carson (in New York City) sends money to Vladamir (in Moscow) using +his Ripple client, which converts the currency from US Dollars to Rubels in +transit. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Innovation, and +Automatability. + </dd> + <dt>Motivation</dt> + <dd> +Payer-initiated payments, also known as "push payments", +"three-corner model payments", or "peer-to-peer payments", are fundamentally +more secure as no information is given to the <a>payee</a> that would +allow them or an attacker to replay the <a>transaction</a> for a different +amount or to a different <a>payee</a> at a later date. + </dd> + </dl> + + </section> + + <section> + <h4>Verification of Available Funds</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Hold Verification</dt> + <dd> +Renne checks into a hotel and is asked for a deposit for any damages to the +room. She uses her phone to provide a proof-of-hold until she checks out of +the hotel, at which time the hold on her funds will be released. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, and Transparency. + </dd> + <dt>Motivation</dt> + <dd> +Delivering services or products that are difficult to "undo," such +as performing an oil change, dispensing fuel, or renting a car or hotel +room are examples of situations which may require a two-part +<a>transaction</a>. + </dd> + </dl> + + <section> + <h5>Non-essential Use Cases</h5> + <dl class="dl-horizontal"> + <dt>Funds Verification</dt> + <dd> +When Mario wishes to <a>purchase</a> a race car through the manufacturer, +the company that makes the car requires a proof of funds from Mario's bank +in order for the customization of the car to proceed. + </dd> + <dt>Goals</dt> + <dd> +Greater security and Transparency. + </dd> + <dt>Motivation</dt> + <dd> +A <a>payee</a> may want to limit access to certain services to only those +who they know can afford the good or service because the act of engaging the +<a>payer</a> may be costly. + </dd> + </dl> + + </section> + </section> + + <section> + <h4>Authorization of Transfer</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Proofs</dt> + <dd> +Goods and services may be released at different times depending on the type of +<a>transaction</a> being performed: + <ul> + <li> +Zhang Wei orders 10 large boxes of envelopes from an online shop in +Tianjin. He uses an escrow service to provide a proof of escrow to the +online shop in order to get them to initiate the shipment. + </li> + <li> +To protect Tibor's privacy when he <a title="purchase">purchases</a> candy +online, the store asks only for Tibor's verified shipping address and a +proof of payment to send him the chocolates. + </li> + <li> +RockinRadio, SmoothSounds, and classicallyClassic are independent, specialized +music streaming services. They accept proof of <a>purchase</a> from each other +to provide a track that is in their online streaming catalogue even if it was +originally bought from another provider. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Greater security, +Regulatory acceptance, +Innovation, +Transparency, +Automatability, and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +At times, it is safe to release a good +when the payment network acknowledges that the funds are on their way. At other +times, it's not safe to release a good or service until it has been proven that +the funds are sitting in the <a title="payee">payee's</a> financial +account. + </dd> + <dt>Exceptions</dt> + <dd> +If a particular expected proof is not provided, the <a>transaction</a> will most +likely fail or transition into an alternate path. + </dd> + </dl> + + </section> + + <section> + <h4>Completion of Transfer</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Variation of Delay</dt> + <dd>When a <a>transaction</a> occurs, the time it takes to transmit and receive +funds often vary according to the <a>payment scheme</a>: + <ul> + <li> +Sophie uses a credit card to buy some gifts for her parents. The shop has +access to the funds in three days. + </li> + <li> +Frank uses an electronic cheque to pay his rent. The rental agency has access +to the funds in 7 days. + </li> + <li> +Felicity has chosen Bitcoin to pay for glasses online. The store +that sells the glasses has almost guaranteed access to the funds within +15 minutes. + </li> + <li> +Vanessa uses Ripple to <a>purchase</a> a new work outfit in US Dollars. +Funds in Euros are available to OnlineWorkClothes within a few minutes. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Increased user choice, +Improved user experience, +Transparency, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Exceptions</dt> + <dd> +If the funds are sent but never received, then the <a>payee</a> will +select a recourse mechanism that is included in the last <a>transaction</a> +message. + </dd> + </dl> + + <section> + <h5>Non-essential Use Cases</h5> + <dl class="dl-horizontal"> + <dt>Notifications</dt> + <dd> +Gavin sends an electronic cheque to WaveMart. WaveMart receives a notification +that payment has been initiated almost immediately. Four days later, WaveMart +receives a notification from their bank that payment has been received. + </dd> + <dt>Goals</dt> + <dd> +Innovation, +Automatability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +It is difficult for an organization to know when a payment has been received +without depending on proprietary software. + </dd> + <dt>Exceptions</dt> + <dd> +It may also be important to be notified when a payment that was initiated +has not been received, or when a payment has been reversed after it had been +received. + </dd> + </dl> + </section> + </section> + + </section> + + <section> + <h3>Delivery of Product/Receipt and Refunds</h3> + <section> + <h4>Delivery of Product</h4> + <p> + </p> + + <dl class="dl-horizontal"> + <dt>Physical Goods</dt> + <dd> +Giralt orders a bicycle for his daughter through BikeSmart online. The +bicycle is delivered a few days later with a QRCode attached to the package +that only Giralt can access. + </dd> + <dt>Goals</dt> + <dd> +rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +The <a>purchase</a> and delivery of physical goods via an online marketplace +is one of the cornerstones of online commerce. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Virtual Goods</dt> + <dd> +When Lilith buys music from a band at MusicBox and then goes to their +Web site to download additional content, no registration is required, just a +proof of <a>purchase</a> that is sent to the band's website, after which +MusicBox provides Lilith a link to download the additional content. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Minimal standardization, +Innovation, +Automatability, +Portability, and +Monetization. + </dd> + <dt>Motivation</dt> + <dd> +Delivery of product can happen on any site that accepts a proof of purchase +that contains a recognized product identifier. + </dd> + </dl> + + </section> + + <section> + <h4>Delivery of Receipt</h4> + <dl class="dl-horizontal"> + <dt>Electronic Receipts</dt> + <dd> +George pulls up to a pump at a petrol station. He pays electronically using a +credit card (via his phone). An electronic receipt for the <a>purchase</a> +from the gas station is displayed on his phone. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Innovation, +Automatability, and +Portability. + </dd> + <dt>Motivation</dt> + <dd> +Electronic receipts will make it easier to track expenses, prove that +certain <a title="purchase">purchases</a> were made, file tax returns, and +simplify management of unnecessary paper. + </dd> + <dt>Privacy / Security</dt> + <dd> +Many merchants want to ensure that receipts are not readable by any party +between them and their customer. + </dd> + </dl> + + <dl class="dl-horizontal"> + <dt>Physical Receipts</dt> + <dd> +Bongani reserves a bus ticket online using his mobile phone. At the bus +terminal he taps his phone to a kiosk and receives a printed physical receipt +that he can use on the bus. + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Innovation, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +There will be a transition period from the use of physical receipts and +tickets to digital receipts. In some cases, physical receipts may never be +replaced, so it is important to ensure that digital receipts have a mechanism +to be transformed to physical receipts. + </dd> + <dt>Privacy / Security</dt> + <dd> +Physical receipts should ensure that private information is not exposed on +the receipt. + </dd> + <dt>Accessibility</dt> + <dd> +Implementations should ensure that people who have visual disabilities have +options such as Braille output for physical receipts alongside high-contrast / +large print lettering. + </dd> + </dl> + + </section> + <section> + <h4>Refunds</h4> + <dl class="dl-horizontal"> + <dt>Common Refunds</dt> + <dd> +At times, it becomes necessary to refund a <a title="payer">payer's</a> +payment: + <ul> + <li> +Pele buys a slice of pizza with a credit card at a local restaurant +and is accidentally charged for five slices of pizza. He notices the +mistake after he pays and requests a refund, which the restaurant +manager approves. The overcharged funds are returned to his account. + </li> + <li> +Teo claims that a blender they purchased online was faulty and returns +the product to the merchant. The merchant provides the customer with a refund +in the form of store credit based on the return policy. + </li> + <li> +<span class="issue">Should we include a scenario where the refund is to a +different payment scheme, e.g., cash?</span> + </li> + <li> +A financial crimes regulator identifies a criminal syndicate that is +operating via a number of fake identities. The fake identities are flagged +and an electronic message is sent to all +<a title="payment processor">payment processors</a> to reverse all +payments sent to the fake identities. + </li> + </ul> + </dd> + <dt>Goals</dt> + <dd> +Improved user experience, +Greater security, +Regulatory acceptance, +Innovation, +Automatability, +Portability, +and rapid, widespread adoption. + </dd> + <dt>Motivation</dt> + <dd> +Some <a>transaction</a>s are the result of human error or fault. In these +cases, it is helpful to be able to reverse the <a>transaction</a> and provide +a refund to the customer. + </dd> + </dl> + + </section> + + </section> + </section> + + <section> + <h2 id="additional-examples">Additional Examples of the Payment Phases</h2> + <p> +Early in the document we provide an +<a href="#a-simple-example-of-the-payment-phases">example of the payment +phases</a>. In this appendix we provide further examples to +illustrate the phase steps. + </p> + + <p class="issue"> +Input is requested from experts at each organization providing services +mentioned below as well as engineers and designers of technologies used below. +Specifically, if the payment flows outlined below contain errors or omissions +the group would like to be to ensure that the oversight is corrected as soon +as possible. + </p> + + <section> + <h3>Credit Card Payment (Visa, MasterCard)</h3> + <p> +This scenario outlines a typical card purchase using the 4 corner model. +Janet is buying an handbag online from a resale shop. + </p> + + <section class="notoc"> + <h4>Negotiation of Purchase Terms</h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Janet searches her favorite resale shop +online to discover a gently used purse that she has always wanted. + </li> + <li> +<strong>Agreement on Terms</strong>: Janet selects the purse and puts it into +the shopping cart before others have a chance to buy it. She agrees with the +shipping terms and adds an extended warranty for the product. + </li> + <li> +<strong>Application of Marketing Elements</strong>: At the time of reviewing +the shopping cart, she is asked if she would like the scarf which goes with +the purse. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Negotiation of Payment Instruments</h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The site takes +Discover, MasterCard, Visa, and debit cards along with secured money order, +Bitcoin, Google Wallet, and ApplePay. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Janet selects her Discover +points card that highlighted by default because she had used it for a previous +purchase with the merchant. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: The merchant asks Janet +for her zip code and the verification code on the back of the card. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Payment Processing</h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: The merchant initiates an +payment authorization request to their <a>payment processor</a>. + </li> + <li> +<strong>Verification of Available Funds</strong>: The payment authorization +request is successful and the <a>payment processor</a> sends a response to the +merchant acknowledging that the funds are now held until the merchant +finalizes the payment. + </li> + <li> +<strong>Authorization of Transfer</strong>: After the merchant has packed +the bag for shipping, the merchant sends a message back to the +<a>payment processor</a> to finalize the payment. + </li> + <li> +<strong>Completion of Transfer</strong>: The funds are immediately deducted from +Janet's line of credit. The funds take 3 days to be transferred to the +merchant's bank account. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Delivery of Product/Receipt and Refunds</h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: The seller sends her a digital receipt, +which she receives by email and directly to her digital wallet. Her +digital wallet forwards the receipt to her budgeting software. The digital +wallet forwards the tracking number embedded in the digital receipt to +her MyUPS Shipping Tracker mobile application. + </li> + + <li> +<strong>Delivery of Product</strong>: The merchant's shipping department packs +and delivers the bag to the shipper, which then sends it to Janet. + </li> + </ul> + </section> + </section> + + <section> + <h3>Tokenized Payments (ApplePay / Venmo / CyberSource)</h3> + <p> +The following scenario outlines payment using a mobile device and +tokenization. The merchant has provided a mobile application that +customers can download in the example below. This example may apply to +various tokenization payment systems now in use, such as ApplePay, +CyberSource, Venmo, Square, etc. + </p> + + <section class="notoc"> + <h4>Negotiation of Purchase Terms</h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Tom uses the Terrific-Tools mobile +app to select a new ax to purchase and finds a hickory handled model like the +one his father had. + </li> + + <li> +<strong>Agreement on Terms</strong>: Tom selects the ax, which is in the +price range he wanted. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: <em>Not applicable to +this particular use case.</em> + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Negotiation of Payment Instruments</h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The mobile app uses +tokenized <a title="payment instrument">payment instruments</a> and the +Terrific-Tools Application displays the options available. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Tom chooses to pay +with his tokenization-enabled MasterCard. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Tom uses the +fingerprint recognition feature of his device to authenticate his payment. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Payment Processing</h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: The mobile app creates an +encrypted transaction and sends it to the payment processor. The payment +processor decrypts the information and processes the transaction. + </li> + <li> +<strong>Verification of Available Funds</strong>: <em>Not applicable to +this particular use case.</em> + </li> + <li> +<strong>Authorization of Transfer</strong>: The payment processor +responds back to the mobile app with an approval. + </li> + <li> +<strong>Completion of Transfer</strong>: The payment processor sends a +transaction receipt to Terrific-Tools. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Delivery of Product/Receipt and Refunds</h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: Terrific-Tools sends a transaction +receipt to the mobile app. + </li> + + <li> +<strong>Delivery of Product</strong>: Terrific-Tools, Inc. ships the ax to Tom. + </li> + </ul> + </section> + </section> + + <section> + <h3>Three Corner Model Payments (PayPal / Alipay / Google Wallet)</h3> + <p> +The following scenario outlines an ideal payment experience using a +<a>payer</a>-initiated payment, also known as a "push-payment" or +"three corner model payment". In this scenario, Anna is buying an airline +ticket from a booking website and during the payment process she uses her +fingerprint instead of a password to authorize the payment. + </p> + + <section class="notoc"> + <h4>Negotiation of Purchase Terms</h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Anna searches for a flight on +the booking website. She finds a flight for the ideal price and time. + </li> + + <li> +<strong>Agreement on Terms</strong>: Anna selects the flight and agrees to the +terms and service associated with the ticket. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: <em>Not applicable to +this particular use case.</em> + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Negotiation of Payment Instruments</h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The booking website takes +Alipay, Visa, MasterCard, and China UnionPay for payment. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Anna chooses Alipay for +payment. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Anna logs in the Alipay +with her account name and password. Anna is told that she will pay for the +airline ticket with 600RMB and she confirms it. Anna uses her fingerprint to +approve the payment. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Payment Processing</h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: Anna's Alipay wallet initiates +the <a>transaction</a>. + </li> + <li> +<strong>Verification of Available Funds</strong>: <em>Not applicable to +this particular use case.</em> + </li> + <li> +<strong>Authorization of Transfer</strong>: Alipay initiates the payment to +the booking website based on Anna's prior fingerprint-based authorization. + </li> + <li> +<strong>Completion of Transfer</strong>: The booking website gets a message +from Alipay that the transfer is complete. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Delivery of Product/Receipt and Refunds</h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: The booking website sees that Anna's +airline ticket order has been paid and sends a receipt message to her +digital wallet. + </li> + + <li> +<strong>Delivery of Product</strong>: The booking website sends an email to +Anna with the flight information including the airline, flight number, +departure time, and gate number. + </li> + </ul> + </section> + </section> + + <section> + <h3>Cryptocurrency Payment (Bitcoin, Ripple)</h3> + <p> +The following scenario outlines an ideal payment experience using Bitcoin, or a +Bitcoin-like cryptocurrency. In this scenario, Lenne is buying a pair of +alpaca socks from an online retailer using a "buy one, get one free" coupon. +The socks are shipped to her home address. + </p> + + <section class="notoc"> + <h4>Negotiation of Purchase Terms</h4> + <ul> + <li> +<strong>Discovery of Offer</strong>: Lenne searches for "warm socks, +locally sourced" in her favorite search engine. A pair of Alpaca socks come up +as the first hit as the Alpaca's are nearby where she lives and the online +store (AlpacaToesCo) provides local delivery. She has a coupon in her +digital wallet for the store, but forgot long ago that it is there. + </li> + + <li> +<strong>Agreement on Terms</strong>: Lenne goes to AlpacaToesCo and puts the +socks in her online shopping cart and is shown the price. Lenne provides her +shipping address to AlpacaToes. + </li> + + <li> +<strong>Application of Marketing Elements</strong>: When Lenne puts the socks +in her online shopping cart, she's reminded of the "buy one, get one free" +coupon she has in her wallet. She adds another pair of socks and continues +with the checkout process. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Negotiation of Payment Instruments</h4> + <ul> + <li> +<strong>Discovery of Accepted Schemes</strong>: The website takes Visa, +Ripple, and Bitcoin for payment. + </li> + + <li> +<strong>Selection of Payment Instruments</strong>: Lenne has a Visa card +as well as a local Ripple wallet and a cloud-based Bitcoin wallet. Lenne +selects her cloud-based Bitcoin wallet. + </li> + + <li> +<strong>Authentication to Access Instruments</strong>: Since the value of the +payment is less than $50, Lenne isn't asked for her two-factor authentication +device to approve the <a>purchase</a>. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Payment Processing</h4> + <ul> + <li> +<strong>Initiation of Processing</strong>: Lenne's cloud-based Bitcoin wallet +provider initiates the <a>transaction</a>. + </li> + <li> +<strong>Verification of Available Funds</strong>: <em>Not applicable to +this particular use case.</em> + </li> + <li> +<strong>Authorization of Transfer</strong>: AlpacaToesCo is sent a message +from the Bitcoin cloud wallet notifying them that the transfer has been +initiated. Lenne is told that she will receive a notification when the +item is shipped. + </li> + <li> +<strong>Completion of Transfer</strong>: AlpacaToesCo gets a message from the +Bitcoin cloud wallet that the transfer is complete. A Bitcoin +<a>transaction</a> ID is included in the message so that AlpacaToesCo can +release the product when the appropriate number of verifications are made on +the <a>transaction</a>. + </li> + </ul> + </section> + + <section class="notoc"> + <h4>Delivery of Product/Receipt and Refunds</h4> + <ul> + <li> +<strong>Delivery of Receipt</strong>: AlpacaToesCo sees 6 verifications on the +transaction in the Bitcoin blockchain and sends a receipt of sale to Lenne's +cloud wallet. The store notifies Lenne that they have shipped her package. + </li> + + <li> +<strong>Delivery of Product</strong>: AlpacaToesCo ships the package of socks +to Lenne and she receives them the next day. + </li> + </ul> + </section> + </section> + + <section> + <h3>Electronic Cheque Payment</h3> + <p><em>To be completed</em>.</p> + </section> + + <section> + <h3>Credit Transfer / Direct Debit</h3> + <p><em>To be completed</em>.</p> + </section> + + </section> + + <section class="appendix"> + <h2>Future Work</h2> + + <ul> + <li>Automatic Tax Payment</li> + <li>Person to Person Cash Payment</li> + <li>Government Entitlement Disbursement</li> + </ul> + + </section> + + <section class="appendix"> + <h2>Acknowledgements</h2> + <p> +The editors wish to thank the participants of the +<a href="http://www.w3.org/Payments/IG/">Web Payments Interest Group</a> +for discussions about and contributions to this document, as well as the +<a href="https://www.w3.org/community/webpayments/">Web Payments Community +Group</a> for earlier work that informed this document. + </p> + </section> + + </body> </html> -