<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.3.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-krose-multicast-security-07" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="Multicast Transport Security">Security and Privacy Considerations for Multicast Transports</title>
    <seriesInfo name="Internet-Draft" value="draft-krose-multicast-security-07"/>
    <author initials="K." surname="Rose" fullname="Kyle Rose">
      <organization>Akamai Technologies, Inc.</organization>
      <address>
        <postal>
          <street>145 Broadway</street>
          <city>Cambridge, MA 02144</city>
          <country>United States of America</country>
        </postal>
        <email>krose@krose.org</email>
      </address>
    </author>
    <author initials="M." surname="Franke" fullname="Max Franke">
      <organization>TU Berlin</organization>
      <address>
        <postal>
          <country>Germany</country>
        </postal>
        <email>mfranke@inet.tu-berlin.de</email>
      </address>
    </author>
    <author initials="J." surname="Holland" fullname="Jake Holland">
      <organization>Akamai Technologies, Inc.</organization>
      <address>
        <postal>
          <street>145 Broadway</street>
          <city>Cambridge, MA 02144</city>
          <country>United States of America</country>
        </postal>
        <email>jakeholland.net@gmail.com</email>
      </address>
    </author>
    <date year="2025" month="May" day="07"/>
    <area>General</area>
    <workgroup>TODO Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 86?>

<t>Interdomain multicast has unique potential to solve delivery scalability for popular content, but it carries a set of security and privacy issues that differ from those in unicast delivery.
This document analyzes the security threats unique to multicast-based delivery for Internet and Web traffic under the Internet and Web threat models.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/squarooticus/draft-krose-multicast-security"/>.</t>
    </note>
  </front>
  <middle>
    <?line 91?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document examines the security considerations relevant to the use of multicast for scalable one-to-many delivery of application traffic over the Internet, along with special considerations for multicast delivery to clients constrained by the Web security model.</t>
      <section anchor="background">
        <name>Background</name>
        <t>This document assumes readers have a basic understanding of some background topics, specifically:</t>
        <ul spacing="normal">
          <li>
            <t>The Internet threat model as defined in Section 3 of <xref target="RFC3552"/>.</t>
          </li>
          <li>
            <t>The Security Considerations for UDP Usage Guidelines as described in Section 6 of <xref target="RFC8085"/>, since application layer multicast traffic is generally carried over UDP.</t>
          </li>
          <li>
            <t>Source-specific multicast, as described in <xref target="RFC4607"/>.  This document focuses on interdomain multicast, therefore any-source multicast is out of scope in accordance with the deprecation of interdomain any-source multicast in <xref target="RFC8815"/>.</t>
          </li>
        </ul>
      </section>
      <section anchor="web-security-model">
        <name>Web Security Model</name>
        <t>The Web security model, while not yet documented authoritatively in a single reference, nevertheless strongly influences Web client implementations, and has generally been interpreted to require certain properties of underlying transports such as:</t>
        <ul spacing="normal">
          <li>
            <t>Confidentiality: A passive observer must not be able to identify or access content through simple observation of the bits being delivered, up to the limits of metadata privacy (such as traffic analysis, peer identity, application/transport/security-layer protocol design constraints, etc.).</t>
          </li>
          <li>
            <t>Authenticity: A receiver must be able to cryptographically verify that the delivered content originated from the desired source.</t>
          </li>
          <li>
            <t>Integrity: A receiver must be able to distinguish between original content as sent from the desired source and content modified in some way (including through deletion) by an attacker.</t>
          </li>
          <li>
            <t>Non-linkability: A passive observer must not be able to link a single user across multiple devices or a single client roaming across multiple networks.</t>
          </li>
        </ul>
        <t>For unicast transport, TLS <xref target="RFC8446"/> satisfies these requirements, therefore Web Transport <xref target="webtrans"/> proposes to require qualifying transport protocols to use "TLS or a semantically equivalent security protocol".</t>
        <t>For unicast communication this is sensible and meaningful (if imprecise) for an engineer with a grounding in security, but it is unclear how or whether 'semantic equivalence to TLS' can be directly interpreted in any meaningful way for multicast transport protocols.
This document instead explicitly describes a security and privacy threat model for multicast transports in order to extend the Web security model to accommodate multicast delivery in a way that fits within the spirit of how that model is generally interpreted for unicast.</t>
        <t>Although defining the security protections necessary to make multicast traffic suitable for Web Transport is a key goal for this document, many of the security considerations described here would be equally necessary to consider if a higher level multicast transport protocol were to be made available via a different interface within clients constrained by the Web security model.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD",
"SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.</t>
    </section>
    <section anchor="threat-model">
      <name>Threat Model</name>
      <t>Fundamentally, multicast is simply an addressing scheme in which the destination address identifies more than one unique receiver;
that said, this has implications for protocol design that differ greatly from those for unicast addressing.</t>
      <t>Given the virtually unbounded potential for attacks targeting data confidentiality and user privacy, we attempt to make the description of a multicast threat model tractable by taking the approach of highlighting areas in which multicast differs from unicast or poses novel challenges that are not addressed at a layer unconcerned with the addressing scheme.</t>
      <section anchor="multicast-transport-properties">
        <name>Multicast Transport Properties</name>
        <t>Unlike typical unicast transport protocols, multicast transports are naturally unidirectional.
Use cases for multicast transports typically involve one or a small number of senders transmitting data to a large number of receivers.
The sender may not know who the receivers are, or even how many of them there are, although a sender may require a pre-existing out-of-band relationship with receivers for the received data to be useful, such as via distribution of decryption keys only to authorized receivers.</t>
        <t>Applications built atop multicast IP or UDP must provide a mechanism for congestion control, just as those built atop unicast IP or UDP must.
Although multicast applications compliant with Section 4.1 of <xref target="RFC8085"/> will implement congestion control, in the context of a threat model it is important to note that malicious clients might attempt to use non-compliant subscriptions to multicast traffic as part of a DoS attack where possible, and that some applications might not be compliant with the recommendations for congestion control implementations.</t>
        <t>IP and UDP provide no native reliability mechanism, whether for unicast or multicast transmission.
Protocols leveraging multicast may add mechanisms for reliable delivery (see <xref target="RFC5740"/>, <xref target="RFC5775"/>, and <xref target="quic-http-mcast"/> for examples), but this may expand the attack surface against content providers if per-packet authenticity is not provided.
For example, in an application with unicast recovery for objects constructed out of multiple packets and which is limited to object-level authentication, if a packet is injected into the multicast stream receivers will fail to authenticate an entire object, necessitating unicast recovery by every receiver for the entire object.
Care must be taken to avoid such amplification attack vectors.</t>
      </section>
      <section anchor="authentication">
        <name>Authentication</name>
        <t>The Web security model requires that data delivered to applications must be authenticated as having originated from the trusted peer.
(In the case of server-only transport-level authentication schemes, such as the ubiquitous TLS server-only authentication employed throughout the Web, trust in the client may be strongly established at the application layer or weakly established as nothing more than precluding a man-in-the-middle.)</t>
        <t>In the unicast case, authentication of payloads in HTTPS is provided by a trusted octet stream, cryptographically resistant to tampering, bootstrapped via certificate validation and trust chain verification (either mutual or server-only, perhaps augmented with application-layer identity verification).</t>
        <t>Authentication of units of transport for trusted channels (think: individual packets or messages) is typically provided by a cryptographic authentication tag:</t>
        <ul spacing="normal">
          <li>
            <t>Symmetric tags, such as symmetric message authentication codes (MACs) and authentication tags produced by authenticated encryption (AE) algorithms.
Because anyone in possession of the keying material may produce valid symmetric authentication tags, such keying material is typically known to at most two parties:
one sender and one receiver.
Some algorithms employing symmetric authentication (such as TESLA, discussed below) relieve this constraint by imposing some different constraint on verification of tagged content.</t>
          </li>
          <li>
            <t>Asymmetric tags, typically signatures produced by public key cryptosystems.
These assume that only the sender has access to the signing key, but impose no constraints on dissemination of the signature verification key.</t>
          </li>
        </ul>
        <t>In both cases:</t>
        <ul spacing="normal">
          <li>
            <t>The receiving party must have a means for establishing trust in the keying material used to verify the authentication tag.</t>
          </li>
          <li>
            <t>Instead of directly authenticating the protected content, the tag may protect a root of trust that itself protects cryptographically-linked content.
Examples include:  </t>
            <ul spacing="normal">
              <li>
                <t>The TLS 1.3 handshake employing an authentication tag to reject MitM attacks against ECDH key agreement.</t>
              </li>
              <li>
                <t>An authentication tag of a Merkle tree root protecting the content represented by the entire tree.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>The authentication tag serves to provide integrity protection over the unit of content to which the tag applies, with additional mechanisms required to detect and/or manage duplication/replay, deletion/loss, and reordering within a sequence of such authenticated content units.</t>
          </li>
        </ul>
        <t>Asymmetric verification of content delivered through multicast is conceptually identical to the unicast case, owing to the asymmetry of access to the signing key;
but the symmetric case does not directly apply given that multiple receivers need access to the same key used for both signing and verification, which in a naïve implementation opens up the possibility of forgery by a receiver on-path or with the ability to spoof the source.</t>
        <t>Multiple mechanisms providing for reliable asymmetric authentication of data delivered by multicast have been proposed over the years.</t>
        <ul spacing="normal">
          <li>
            <t>TESLA <xref target="RFC4082"/> achieves asymmetry between the sender and multiple receivers through timed release of symmetric keying material rather than through the assumed computational difficulty of deriving a signing key from a verification key in public key cryptosystems like RSA and ECDSA.
It employs computationally-inexpensive symmetric authentication tagging with release of the keying material to receivers only after they are assumed to have received the protected data, with any data received subsequent to scheduled key release to be discarded by the receiver.
This requires some degree of time synchronization between clients and servers and imposes latency above one-way path delay prior to release of authenticated data to applications.</t>
          </li>
          <li>
            <t>Simple per-packet asymmetric signature of packet contents based on out-of-band communication of the signature's public key and algorithm, for example as described in Section 3 of <xref target="RFC6584"/>.</t>
          </li>
          <li>
            <t>Asymmetric Manifest-based Integrity (AMBI) <xref target="AMBI"/> relies on an out-of-band authenticated channel for distribution of manifests containing cryptographic digests of the packets in the multicast stream.
Authentication of this channel may, for instance, be provided by TLS if manifests are distributed using HTTPS from an origin known to the client to be closely affiliated with the multicast stream, such as would be the case if the manifest URL is delivered by the origin of the parent page hosting the media object.
Authenticity in this case is a prerequisite of the out-of-band channel that AMBI builds upon to provide authenticity for the multicast data channel.</t>
          </li>
        </ul>
        <t>Regardless of mechanism, the primary goal of authentication in the multicast context is identical to that for unicast:
that the content delivered to the application originated from the trusted source.
Semantic equivalence to (D)TLS in this respect is therefore straightforwardly achieved by any number of potential mechanisms.</t>
      </section>
      <section anchor="integrity">
        <name>Integrity</name>
        <t>Integrity in the Web security model for unicast is closely tied to the features provided by transports that enabled the Web from its earliest days.
TCP, the transport substrate for the original HTTP, provides in-order delivery, reliability via retransmission, packet de-duplication, and modest protection against replay and forgery by certain classes of adversaries.
SSL and TLS later greatly strengthened those protections.
Web applications universally rely on these integrity assumptions for even the most basic operations.
It is no surprise, then, that when QUIC was subsequently designed with HTTP as the model application, initial requirements included the integrity guarantees provided by TCP at the granularity of an individual stream.</t>
        <t>Multicast applications by contrast have different integrity assumptions owing to the multicast transport legacy.
UDP, the transport protocol atop which multicast applications are typically built, provides no native reliability, in-order delivery, de-duplication, or protection against replay or forgery.
Additionally, UDP by itself provides no protection against off-path spoofing or injection.
Multicast has therefore traditionally been used for applications that can deal with a modest loss of integrity through application-layer mitigations such as:</t>
        <ul spacing="normal">
          <li>
            <t>Packet indexes to reveal duplication/replay and reordering, and to complicate off-path spoofing and injection</t>
          </li>
          <li>
            <t>Deletion coding to allow for passive recovery from loss/deletion</t>
          </li>
          <li>
            <t>Graceful degradation in response to loss/deletion, exemplified by video codecs designed to tolerate loss</t>
          </li>
        </ul>
        <t>A baseline for multicast transport integrity that makes sense within the Web security model requires that we first define the minimally acceptable integrity requirements for data that may be presented to a user or otherwise input to the browser's trusted computing base.
We propose that the proper minimal standard given the variety of potential use cases, including many that have no need for reliable or in-order delivery, is to require protection against replay, injection, and modification and the ability to detect deletion, loss, or reordering.
This standard will necessarily constrain conformant application-layer protocol design, just as the Web security model adds constraints to vanilla TCP.</t>
        <t>Integrity in multicast, as in the unicast case, is partially provided by the authentication mechanism:
for example, if authentication is provided at packet granularity, modified or forged packets will fail to authenticate and will thus not be delivered to the application.
Lacking a bidirectional relationship at the transport layer, however, applications relying on multicast must otherwise provide for detection of and/or recovery from packet duplication/replay, loss/deletion, and reordering.
Some of these functions, too, may be provided by the authentication layer. For instance:</t>
        <ul spacing="normal">
          <li>
            <t>TESLA prevents replay and reveals reordering, but only across time intervals. An application requiring finer-grained countermeasures against duplication/replay or reordering, or indeed any countermeasure to deletion/loss, would need to provide that via custom support (e.g., through the introduction of packet sequence numbers) or via an intermediate-layer protocol providing those functions.</t>
          </li>
          <li>
            <t>AMBI by design provides strong protection against duplication/replay and reveals reordering and deletion/loss of content packets through a strict in-order manifest of packet digests.</t>
          </li>
        </ul>
      </section>
      <section anchor="confidentiality">
        <name>Confidentiality</name>
        <t>In the unicast transport security context, confidentiality implies that an observer (passive or active) without pre-existing access to keying material must not be able to decrypt the bytes on the wire or identify the content being transferred, even if that adversary has access to the decrypted content via other means.
In practice, the former is trivially achieved through the use of authenticated key exchange and modern symmetric ciphers, but the latter is an ideal that is rarely possible owing to the substantial metadata in the clear on the public Internet:
traffic analysis can make use of packet sizes and timing, endpoint identities, biases in application-layer protocol designs, side channels, and other such metadata to reveal an often surprising amount of information about the encrypted payload without needing access to any keying material.
(Conceptually, one could make many streams appear identical to a passive observer: video streams, for example, could be bucketed into a small number of bitrates with identical packet sizes and pacing via padding of the actual content.
This would increase overhead for servers and networks, primarily in terms of bandwidth utilization, that may be operationally unacceptable.)</t>
        <t>Multicast additionally introduces the complication that all receivers of a stream, even if such a stream is encrypted, receive the same payload (loss and duplication notwithstanding).
This introduces novel privacy concerns that do not apply to unicast transports.</t>
        <section anchor="privacy">
          <name>Privacy</name>
          <t>In contrast to (say) unicast TLS, on-path monitoring can trivially prove that identical content was delivered to multiple receivers, irrespective of payload encryption.
Furthermore, since those receivers all require the same keying material to decrypt the received payload, a compromise of any single receiver's device exposes decryption keys, and therefore the plaintext content, to the attacker.</t>
          <t>That having been said, however, there are factors and practices that help mitigate these additional risks:</t>
          <ul spacing="normal">
            <li>
              <t>Multicast delivery is unidirectional from content provider to consumer and has no end-to-end unicast control channel association at the transport-layer, though such associations are generally unavoidable at the application layer (a common case likely being a referring web page).
Assuming application-layer unicast control plane traffic is properly secured, identifiable plaintext control messages are limited to IGMP or MLD messages intercepted by (and not retransmitted with user-identifying information by) a user's upstream router.  </t>
              <t>
Notwithstanding linkability via data or metadata from application-layer control flows, an on-path observer can thus only directly determine that some entity downstream of that path element has joined a particular multicast channel (in SSM <xref target="RFC4607"/>, identified by the (source, group) pair of IP addresses).
Lacking a destination address, increasing the specificity of receiver identification would require an observer to obtain monitoring points closer to the user or to manipulate a user into revealing metadata out-of-band that the observer can tie to the user via traffic analysis or other means.  </t>
              <t>
This is a form of k-anonymity not available to unicast transports.
In the unicast case, an on-path observer has access to metadata specific to endpoint address pairs, including total flow size, packet count, port and protocol, which (in combination with other metadata) can later be tied to the user, site, service, and/or location assigned to each address at the given time.  </t>
              <t>
Widespread near-simultaneous unicast download events, such as those triggered by the release of a video game update or of an episode of a popular streaming video series, expose the identities of consumers of such content anywhere along the path from end users' devices to the origin through very elementary traffic analysis, unless measures are taken by the end user or content provider to hide the traffic, such as by mixing it with other traffic in a way that complicates disentangling individual flows.
A properly-designed virtual private network (VPN) link could, for example, obfuscate flow-identifying information in traffic to a given user, at the expense of using greater bandwidth (for added chaff) and of loudly signaling to passive observers the presence of a VPN link.</t>
            </li>
            <li>
              <t>There is no standard mechanism in the multicast protocol ecosystem by which a passive observer may derive separate but related content or metadata from the multicast channel itself:
in particular, if a multicast stream is encrypted using a key delivered out-of-band, there is no general means by which a passive observer could directly derive the source location of the keying material.
For a passive observer to know what encrypted content is being delivered to a particular user whose channel subscriptions are known they would need to already know what content is available via that channel, either via traffic analysis such as in the case of passive observation of unicast TLS, or via a priori knowledge of related content that references the channel.
A dragnet cataloging all content available through a particular origin is an example of the latter, but could be further mitigated via controlled access to index information, or via periodic changes in multicast source, group, or keying material, or some combination of the three.</t>
            </li>
          </ul>
        </section>
        <section anchor="personaldata">
          <name>Personal Data</name>
          <t>A sender has responsibility not to expose personal information broadly. This is not a consideration unique to multicast delivery:
an irresponsible service could publish a web page with Social Security numbers or push its server TLS private key into the certificate transparency log as easily as it could multicast personal data to a large set of receivers.</t>
          <t>The Web security model partially mitigates negligence on the part of senders by mandating the use of secure transports:
prohibiting the fetching of mixed content on a single page prevents a server from sending private data to a browser in the clear.
The main effect is to raise the bar closer to requiring bad faith or willful irresponsibility on the part of senders in revealing personal information.</t>
          <t>Multicast by its very nature is not generally suitable for transport of personal data:
since the main value of leveraging a multicast transport is to deliver the same data to a large pool of receivers, such content must not include confidential personal information.
Senders already have a responsibility to handle private information in a way that respects the privacy of users:
the availability of multicast transports does not further complicate this responsibility.</t>
        </section>
        <section anchor="forward-secrecy">
          <name>Forward Secrecy</name>
          <t>Forward secrecy (also called "perfect forward secrecy" or "PFS" and defined in <xref target="RFC4949"/>) is a countermeasure against attackers that record encrypted traffic with the intent of later decrypting it should the communicating parties' long-term keys be compromised.
Forward secrecy for protocols leveraging time-limited keys to protect a communication session ("session keys") requires that such session keys be unrecoverable by an attacker that later compromises the long-term keys used to negotiate or deliver those session keys.</t>
          <t>As noted earlier, confidential content delivered via multicast will necessarily imply delivery of the same keying material to multiple receivers, rather than negotiation of a unique key as is typical in the unicast case.
Presumably, such receivers will need to be individually authenticated and authorized by the content provider prior to delivery of decryption keys.
If this authorization and key delivery mechanism employs a forward secret unicast transport such as TLS 1.3, then so long as these encryption keys are ephemeral (that is, rotated periodically and discarded after rotation) the multicast payloads will also effectively be forward secret beyond the time interval of rotation, which we can consider to be the session duration.</t>
        </section>
        <section anchor="bypassing-authentication">
          <name>Bypassing Authentication</name>
          <t>Protocols should be designed to discourage implementations from making use of unauthenticated data.
The usual approach to enforcing this is to entangle decryption and authentication where possible, for example via use of primitives such as authenticated encryption.
While ultimately authentication checks are independent of decryption (at least in classical cryptography), use of such primitives to minimize the number of places in which an incomplete or lazy implementation can avoid such checks constitutes best practice.
TLS 1.3, for instance, mandates AE for all symmetric cryptographic operations:
without writing one's own AE cipher implementation that purposely skips the authentication tag check, this leaves establishment of trust in the peer certificate as the only practical step an implementation can skip without impacting the ability to make use of the decrypted content.</t>
          <t>The situation in multicast is complicated by the need for more than two parties to have access to symmetric keys that would used to secure payloads via AE in the unicast case.
As discussed in <xref target="authentication"/>, it is imperative for protocols to provide, and for receivers to leverage, some kind of asymmetry in authentication of each content unit prior to any use of said content to eliminate the ability for an attacker in possession of a shared symmetric key (possibly including an authorized receiver) to inject forged data into a stream that other receivers would then validate and deliver to applications.
This requirement to perform authentication checks throughout the lifetime of a stream that are separate from, and orthogonal to, content decryption adds an extra dimension of risk from implementation incorrectness, because such authentication becomes an on-going process rather than the result of a one-time certificate check at connection establishment.
Protocol designers and implementors are thus strongly encouraged to simplify or even black box such on-going authentication to minimize the potential for implementors or users to skip such checks.</t>
        </section>
      </section>
      <section anchor="requestresponse-binding">
        <name>Request/Response Binding</name>
        <t>In addition to requiring that application data be cryptographically authenticated, the Web security model also requires that each HTTP response must be bound to a specific HTTP request in a way that cannot be forged by an adversary.</t>
        <t>In the unicast case, binding of a response to a request in HTTPS is a direct consequence of the integrity guaranteed by the cryptographically protected transport stream to the image of the underlying HTTP protocol, which itself allows for no ambiguity in determining which request induced a particular response.</t>
        <t>Request/response binding in multicast requires additional protocol or application-layer support as multicast is naturally unidirectional and so does not carry request traffic.
Any multicast protocol carrying Web traffic must provide a means for cryptographically binding the data delivered over a multicast channel to a specific client request.
Failure to do so could, for example, allow an on-path adversary to swap the packets between two different multicast channels both trusted by the client without being detected prior to delivery to the application.</t>
      </section>
      <section anchor="non-linkability">
        <name>Non-linkability</name>
        <t>Concern about pervasive monitoring of users culminated in the publication of <xref target="RFC7258"/>, which states that "the IETF will work to mitigate the technical aspects of [pervasive monitoring]."
One area of particular concern is the ability for pervasive monitoring to track individual clients across changes in network connectivity, such as being able to tell when a device or connection migrates from a wired home network to a cell network.
This has motivated mitigations in subsequent protocol designs, such as those discussed in section 9.5 of <xref target="RFC9000"/>.
Migration of multicast channel subscriptions across network connections carries the potential for correlation of metadata between multicast channel subscriptions and unicast control channels, even when control channels are encrypted, so care must be taken to design protocols to avoid such correlations.</t>
      </section>
      <section anchor="browser-specific-threats">
        <name>Browser-Specific Threats</name>
        <t>The security requirements for multicast transport to a browser follow directly from the requirement that the browser's job is to protect the user.  Huang et al. <xref target="huang-w2sp"/> summarize the core browser security guarantee as follows:</t>
        <ul empty="true">
          <li>
            <t>Users can safely visit arbitrary web sites and execute scripts provided by those sites.</t>
          </li>
        </ul>
        <t>The reader will find the full discussion of the browser threat model in section 3 of <xref target="RFC8826"/> helpful in understanding what follows.</t>
        <section anchor="access-to-local-resources">
          <name>Access to Local Resources</name>
          <t>This document covers only unidirectional multicast from a server to (potentially many) clients, as well as associated control channels used to manage that communication and access to the content delivered via multicast.
As a result, local resource access can be presumed to be limited to that already available within web applications.
Note that these resources may include fingerprint information that can be used to identify or track individuals, such as information about the user agent, viewport size, display resolution, a concern covered in extensive detail in <xref target="RFC8942"/>.</t>
        </section>
        <section anchor="injection">
          <name>Injection</name>
          <t>In the absence of any specific mitigations, network attackers have the ability to inject or modify packets in a multicast stream.
On-path injection and modification are trivial, but even off-path injection is feasible for many networks, such as those that implement no protections against source address spoofing.
Consequently, it is critical that a browser prevent any such injected or modified traffic from reaching large attack surfaces in the browser, such as the rendering code.</t>
        </section>
        <section anchor="hostile-origin">
          <name>Hostile Origin</name>
          <t>A hostile origin could serve a Web application that attempts to join many multicast channels, overwhelming the provider's network with undesired traffic.</t>
          <t>The first line of defense is the browser itself:
the browser should at a minimum prevent joining of channels not associated with the hosting site.
In the general case, this implies the need for a CORS-like mechanism for cross-origin authorization of multicast channel sharing.</t>
          <t>The second line of defense is the network.
The user's upstream router can and should monitor the user's multicast behavior, implementing circuit breakers that will target unpopular content when overloaded or when an abusive subscription pattern is detected.</t>
        </section>
        <section anchor="private-browsing-modes">
          <name>Private Browsing Modes</name>
          <t>Browsers that offer a private browsing mode, designed both to bypass access to client-side persistent state and to prevent broad classes of data leakage that can be leveraged by passive and active attackers alike, should require explicit user approval for joining a multicast group given the metadata exposure to network elements of IGMP and MLD messages.</t>
        </section>
      </section>
      <section anchor="other-threats">
        <name>Other Threats</name>
        <section anchor="referrer-checks">
          <name>Referrer Checks</name>
          <t>Unicast Web traffic has a weak form of protection against unauthorized use of content by third-party sites through referrer checks.
Browsers send a <tt>Referer</tt> [sic] header containing the parent page URL in requests for objects referenced in that page, which allows the server to reject requests from pages not authorized to refer to such content.
This is used, for example, to complicate the hosting of phishing sites, which could otherwise serve only the relatively small page HTML and direct the browser to fetch all other page objects from the legitimate origin.
This is not a strong security measure, as clients may render cached versions of such elements without checking freshness with the origin;
but it does force the attacker to duplicate, modify, and host more content to convincingly mock the target site.</t>
          <t>Protocols enabling the delivery of Web traffic over multicast should include some mechanism providing a similar degree of protection against unauthorized use.
This is complicated by the inherently unidirectional nature of multicast traffic, which precludes any active role for the server in preventing data delivery to specific clients.
In lieu of this, protocols should be designed in a way that allows properly-functioning clients to unilaterally reject multicast data delivered for objects referenced by pages that the server has not authorized.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This entire document is about security.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC3552">
          <front>
            <title>Guidelines for Writing RFC Text on Security Considerations</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="B. Korver" initials="B." surname="Korver"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>All RFCs are required to have a Security Considerations section. Historically, such sections have been relatively weak. This document provides guidelines to RFC authors on how to write a good Security Considerations section. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="72"/>
          <seriesInfo name="RFC" value="3552"/>
          <seriesInfo name="DOI" value="10.17487/RFC3552"/>
        </reference>
        <reference anchor="RFC4949">
          <front>
            <title>Internet Security Glossary, Version 2</title>
            <author fullname="R. Shirey" initials="R." surname="Shirey"/>
            <date month="August" year="2007"/>
            <abstract>
              <t>This Glossary provides definitions, abbreviations, and explanations of terminology for information system security. The 334 pages of entries offer recommendations to improve the comprehensibility of written material that is generated in the Internet Standards Process (RFC 2026). The recommendations follow the principles that such writing should (a) use the same term or definition whenever the same concept is mentioned; (b) use terms in their plainest, dictionary sense; (c) use terms that are already well-established in open publications; and (d) avoid terms that either favor a particular vendor or favor a particular technology or mechanism over other, competing techniques that already exist or could be developed. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="FYI" value="36"/>
          <seriesInfo name="RFC" value="4949"/>
          <seriesInfo name="DOI" value="10.17487/RFC4949"/>
        </reference>
        <reference anchor="RFC4607">
          <front>
            <title>Source-Specific Multicast for IP</title>
            <author fullname="H. Holbrook" initials="H." surname="Holbrook"/>
            <author fullname="B. Cain" initials="B." surname="Cain"/>
            <date month="August" year="2006"/>
            <abstract>
              <t>IP version 4 (IPv4) addresses in the 232/8 (232.0.0.0 to 232.255.255.255) range are designated as source-specific multicast (SSM) destination addresses and are reserved for use by source-specific applications and protocols. For IP version 6 (IPv6), the address prefix FF3x::/32 is reserved for source-specific multicast use. This document defines an extension to the Internet network service that applies to datagrams sent to SSM addresses and defines the host and router requirements to support this extension. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4607"/>
          <seriesInfo name="DOI" value="10.17487/RFC4607"/>
        </reference>
        <reference anchor="RFC7258">
          <front>
            <title>Pervasive Monitoring Is an Attack</title>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="May" year="2014"/>
            <abstract>
              <t>Pervasive monitoring is a technical attack that should be mitigated in the design of IETF protocols, where possible.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="188"/>
          <seriesInfo name="RFC" value="7258"/>
          <seriesInfo name="DOI" value="10.17487/RFC7258"/>
        </reference>
        <reference anchor="RFC8085">
          <front>
            <title>UDP Usage Guidelines</title>
            <author fullname="L. Eggert" initials="L." surname="Eggert"/>
            <author fullname="G. Fairhurst" initials="G." surname="Fairhurst"/>
            <author fullname="G. Shepherd" initials="G." surname="Shepherd"/>
            <date month="March" year="2017"/>
            <abstract>
              <t>The User Datagram Protocol (UDP) provides a minimal message-passing transport that has no inherent congestion control mechanisms. This document provides guidelines on the use of UDP for the designers of applications, tunnels, and other protocols that use UDP. Congestion control guidelines are a primary focus, but the document also provides guidance on other topics, including message sizes, reliability, checksums, middlebox traversal, the use of Explicit Congestion Notification (ECN), Differentiated Services Code Points (DSCPs), and ports.</t>
              <t>Because congestion control is critical to the stable operation of the Internet, applications and other protocols that choose to use UDP as an Internet transport must employ mechanisms to prevent congestion collapse and to establish some degree of fairness with concurrent traffic. They may also need to implement additional mechanisms, depending on how they use UDP.</t>
              <t>Some guidance is also applicable to the design of other protocols (e.g., protocols layered directly on IP or via IP-based tunnels), especially when these protocols do not themselves provide congestion control.</t>
              <t>This document obsoletes RFC 5405 and adds guidelines for multicast UDP usage.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="145"/>
          <seriesInfo name="RFC" value="8085"/>
          <seriesInfo name="DOI" value="10.17487/RFC8085"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8815">
          <front>
            <title>Deprecating Any-Source Multicast (ASM) for Interdomain Multicast</title>
            <author fullname="M. Abrahamsson" initials="M." surname="Abrahamsson"/>
            <author fullname="T. Chown" initials="T." surname="Chown"/>
            <author fullname="L. Giuliano" initials="L." surname="Giuliano"/>
            <author fullname="T. Eckert" initials="T." surname="Eckert"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document recommends deprecation of the use of Any-Source Multicast (ASM) for interdomain multicast. It recommends the use of Source-Specific Multicast (SSM) for interdomain multicast applications and recommends that hosts and routers in these deployments fully support SSM. The recommendations in this document do not preclude the continued use of ASM within a single organization or domain and are especially easy to adopt in existing deployments of intradomain ASM using PIM Sparse Mode (PIM-SM).</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="229"/>
          <seriesInfo name="RFC" value="8815"/>
          <seriesInfo name="DOI" value="10.17487/RFC8815"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC4082">
          <front>
            <title>Timed Efficient Stream Loss-Tolerant Authentication (TESLA): Multicast Source Authentication Transform Introduction</title>
            <author fullname="A. Perrig" initials="A." surname="Perrig"/>
            <author fullname="D. Song" initials="D." surname="Song"/>
            <author fullname="R. Canetti" initials="R." surname="Canetti"/>
            <author fullname="J. D. Tygar" initials="J. D." surname="Tygar"/>
            <author fullname="B. Briscoe" initials="B." surname="Briscoe"/>
            <date month="June" year="2005"/>
            <abstract>
              <t>This document introduces Timed Efficient Stream Loss-tolerant Authentication (TESLA). TESLA allows all receivers to check the integrity and authenticate the source of each packet in multicast or broadcast data streams. TESLA requires no trust between receivers, uses low-cost operations per packet at both sender and receiver, can tolerate any level of loss without retransmissions, and requires no per-receiver state at the sender. TESLA can protect receivers against denial of service attacks in certain circumstances. Each receiver must be loosely time-synchronized with the source in order to verify messages, but otherwise receivers do not have to send any messages. TESLA alone cannot support non-repudiation of the data source to third parties.</t>
              <t>This informational document is intended to assist in writing standardizable and secure specifications for protocols based on TESLA in different contexts. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4082"/>
          <seriesInfo name="DOI" value="10.17487/RFC4082"/>
        </reference>
        <reference anchor="RFC5740">
          <front>
            <title>NACK-Oriented Reliable Multicast (NORM) Transport Protocol</title>
            <author fullname="B. Adamson" initials="B." surname="Adamson"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="J. Macker" initials="J." surname="Macker"/>
            <date month="November" year="2009"/>
            <abstract>
              <t>This document describes the messages and procedures of the Negative- ACKnowledgment (NACK) Oriented Reliable Multicast (NORM) protocol. This protocol can provide end-to-end reliable transport of bulk data objects or streams over generic IP multicast routing and forwarding services. NORM uses a selective, negative acknowledgment mechanism for transport reliability and offers additional protocol mechanisms to allow for operation with minimal a priori coordination among senders and receivers. A congestion control scheme is specified to allow the NORM protocol to fairly share available network bandwidth with other transport protocols such as Transmission Control Protocol (TCP). It is capable of operating with both reciprocal multicast routing among senders and receivers and with asymmetric connectivity (possibly a unicast return path) between the senders and receivers. The protocol offers a number of features to allow different types of applications or possibly other higher-level transport protocols to utilize its service in different ways. The protocol leverages the use of FEC-based (forward error correction) repair and other IETF Reliable Multicast Transport (RMT) building blocks in its design. This document obsoletes RFC 3940. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5740"/>
          <seriesInfo name="DOI" value="10.17487/RFC5740"/>
        </reference>
        <reference anchor="RFC5775">
          <front>
            <title>Asynchronous Layered Coding (ALC) Protocol Instantiation</title>
            <author fullname="M. Luby" initials="M." surname="Luby"/>
            <author fullname="M. Watson" initials="M." surname="Watson"/>
            <author fullname="L. Vicisano" initials="L." surname="Vicisano"/>
            <date month="April" year="2010"/>
            <abstract>
              <t>This document describes the Asynchronous Layered Coding (ALC) protocol, a massively scalable reliable content delivery protocol. Asynchronous Layered Coding combines the Layered Coding Transport (LCT) building block, a multiple rate congestion control building block and the Forward Error Correction (FEC) building block to provide congestion controlled reliable asynchronous delivery of content to an unlimited number of concurrent receivers from a single sender. This document obsoletes RFC 3450. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5775"/>
          <seriesInfo name="DOI" value="10.17487/RFC5775"/>
        </reference>
        <reference anchor="RFC6584">
          <front>
            <title>Simple Authentication Schemes for the Asynchronous Layered Coding (ALC) and NACK-Oriented Reliable Multicast (NORM) Protocols</title>
            <author fullname="V. Roca" initials="V." surname="Roca"/>
            <date month="April" year="2012"/>
            <abstract>
              <t>This document introduces four schemes that provide per-packet authentication, integrity, and anti-replay services in the context of the Asynchronous Layered Coding (ALC) and NACK-Oriented Reliable Multicast (NORM) protocols. The first scheme is based on RSA Digital Signatures. The second scheme relies on the Elliptic Curve Digital Signature Algorithm (ECDSA). The third scheme relies on a Group- keyed Message Authentication Code (MAC). Finally, the fourth scheme merges the Digital Signature and group schemes. These schemes have different target use cases, and they do not all provide the same service. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6584"/>
          <seriesInfo name="DOI" value="10.17487/RFC6584"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC8826">
          <front>
            <title>Security Considerations for WebRTC</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="January" year="2021"/>
            <abstract>
              <t>WebRTC is a protocol suite for use with real-time applications that can be deployed in browsers -- "real-time communication on the Web". This document defines the WebRTC threat model and analyzes the security threats of WebRTC in that model.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8826"/>
          <seriesInfo name="DOI" value="10.17487/RFC8826"/>
        </reference>
        <reference anchor="RFC8942">
          <front>
            <title>HTTP Client Hints</title>
            <author fullname="I. Grigorik" initials="I." surname="Grigorik"/>
            <author fullname="Y. Weiss" initials="Y." surname="Weiss"/>
            <date month="February" year="2021"/>
            <abstract>
              <t>HTTP defines proactive content negotiation to allow servers to select the appropriate response for a given request, based upon the user agent's characteristics, as expressed in request headers. In practice, user agents are often unwilling to send those request headers, because it is not clear whether they will be used, and sending them impacts both performance and privacy.</t>
              <t>This document defines an Accept-CH response header that servers can use to advertise their use of request headers for proactive content negotiation, along with a set of guidelines for the creation of such headers, colloquially known as "Client Hints."</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8942"/>
          <seriesInfo name="DOI" value="10.17487/RFC8942"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="AMBI">
          <front>
            <title>Asymmetric Manifest Based Integrity</title>
            <author fullname="Jake Holland" initials="J." surname="Holland">
              <organization>Akamai Technologies, Inc.</organization>
            </author>
            <author fullname="Kyle Rose" initials="K." surname="Rose">
              <organization>Akamai Technologies, Inc.</organization>
            </author>
            <author fullname="Max Franke" initials="M." surname="Franke">
              <organization>TU Berlin</organization>
            </author>
            <date day="7" month="May" year="2025"/>
            <abstract>
              <t>   This document defines Asymmetric Manifest-Based Integrity (AMBI).
   AMBI allows each receiver or forwarder of a stream of multicast
   packets to check the integrity of the contents of each packet in the
   data stream.  AMBI operates by passing cryptographically verifiable
   hashes of the data packets inside manifest messages, and sending the
   manifests over authenticated out-of-band communication channels.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-mboned-ambi-04"/>
        </reference>
        <reference anchor="quic-http-mcast">
          <front>
            <title>Hypertext Transfer Protocol (HTTP) over multicast QUIC</title>
            <author fullname="Lucas Pardue" initials="L." surname="Pardue">
         </author>
            <author fullname="Richard Bradbury" initials="R." surname="Bradbury">
              <organization>BBC Research &amp; Development</organization>
            </author>
            <author fullname="Sam Hurst" initials="S." surname="Hurst">
              <organization>BBC Research &amp; Development</organization>
            </author>
            <date day="4" month="July" year="2022"/>
            <abstract>
              <t>   This document specifies a profile of the QUIC protocol and the HTTP/3
   mapping that facilitates the transfer of HTTP resources over
   multicast IP using the QUIC transport as its framing and
   packetisation layer.  Compatibility with the QUIC protocol's syntax
   and semantics is maintained as far as practical and additional
   features are specified where this is not possible.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-pardue-quic-http-mcast-11"/>
        </reference>
        <reference anchor="webtrans">
          <front>
            <title>The WebTransport Protocol Framework</title>
            <author fullname="Victor Vasiliev" initials="V." surname="Vasiliev">
              <organization>Google</organization>
            </author>
            <date day="25" month="February" year="2025"/>
            <abstract>
              <t>   The WebTransport Protocol Framework enables clients constrained by
   the Web security model to communicate with a remote server using a
   secure multiplexed transport.  It consists of a set of individual
   protocols that are safe to expose to untrusted applications, combined
   with an abstract model that allows them to be used interchangeably.

   This document defines the overall requirements on the protocols used
   in WebTransport, as well as the common features of the protocols,
   support for some of which may be optional.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-webtrans-overview-09"/>
        </reference>
        <reference anchor="huang-w2sp" target="https://ptolemy.berkeley.edu/projects/truststc/pubs/840/websocket.pdf">
          <front>
            <title>Talking to Yourself for Fun and Profit</title>
            <author initials="L.-S." surname="Huang">
              <organization/>
            </author>
            <author initials="E. Y." surname="Chen">
              <organization/>
            </author>
            <author initials="A." surname="Barth">
              <organization/>
            </author>
            <author initials="E." surname="Rescorla">
              <organization/>
            </author>
            <author initials="C." surname="Jackson">
              <organization/>
            </author>
            <date year="2011" month="May"/>
          </front>
          <seriesInfo name="Web 2.0 Security and Privacy (W2SP 2011)" value=""/>
        </reference>
      </references>
    </references>
    <?line 389?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acks</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81963IbR7LmfzxFr/xD5AQAXUYe2zyxG0PdbJ0jWjqitI6J
mYk9he4C0GajG9MX0rBCz7QPsS+2+eWlqroB2t5/q4jxkGBfqrKyMr/M/LKw
WCxmRZPXbucvsqJ1635x0zadX+yGqi9z1/WLzudDW/aHxeNvZn3ZV3ThtX6U
ubrI3rflrcsP2Yum7srCt64v6ads3bTZlT0k+9i6uts3bd/N3GrV+tuLU38M
D54VrvcXs5z+u2naw0XW9cVsVu7bi6xvh65/+vjxd4+fzlzr3UX2va/prdXs
rmlvNm0z7C+yj+9evst+ot/LepN9j89mN/5AFxQX2Zu6923t+8VLTHc263qa
xf9yVVPTzA6+m+3Li+zvfZPPs47G1Pp1Rz8ddvjhn7OZG/pt017MssUso39l
3V1k/7HMPpDQ+AMR5X8cKh8/a9qNq8tfWTIX2eWN27ky++jzbd1Uzab09II3
db7kazt6o+8vsifPvs6et40r7tyB/5CTXC6yF263asti4+fZ1WX2+OmTZ8/k
r81Q95DUp7rsfZFd9yS7LmvW2eXOtyRnvsrTi6uLjJf4r/zfJY1tNJerZfaa
1uMmnc2V+yX9kG4hEX/Knvu2Kuv0wbs1X/XXkuS77IfFiq9YFn48xu99u3P1
YfTef19mPzRVRWuRvPjf3Y0fffz/myR/pgFuZXxLmvNfN/h4mTe72axuaJJ9
eUt6jBs+vH7x9MmT78Ivf/7666fhl2ffPYt/efaXx9+EX755+vW34ZdvH3/7
dfzlyTfP4i/fPqG/zMp6Hd8anvf42/imr7959jj55Zv4vL98/W3yvGfP/pI8
/Gnyy3fP4tO+e/z4sb7o8ur5G/kc/94sXi7FnJS+Xy92K9pdxYIkXvIl/xrK
fLHt+/1iBwtw6r69a4vBLyZX8oV3ftXDZNz7Ortg0dz69rb0dzLE7eDqzeLu
abePd6pFe/DRVWws+ib7WzO0na/WbMJeD7VauWZd9g/CfWygsgdX7pA9ffzk
SfxDRzriOyxEfAn+/eRX2dPl49O28+ynp9fv+UHn4aZgaJJ/i9FvYe+8XVzT
7sHs/sjVr5Z/W2Yvtr7+IxdfLrPnru23f+zB2Qff5U1buT9y+Ysl7e/8pmvi
QHrXbrBlseDdxaNH+76p/O6wJDty4yt/WPpieLRvm5993neP2BV0ff5oP6y6
R98+e/yIFr5r8hsyPvtiPZstFovMrcgOuJwMPRv+oqEdWmfBvWVb12VDXf5r
8Nm+6X3dl66CFnRNdeuzwle0l9pD1uWucquywspBL/bNfqhcS9aixk3zbDX0
WdlnuWux/pkjRehhNLp0vfe63mXXDXRRv3V9VpTrtW+zddvs6AMyySQdjIhH
Z+9fzj5uyy4jVz3s6HX0MFcdfuVH+PiKfksOsQ/zoVlEN75yHRmzMB/MwTwh
Dw36SYJar8uc7ic/zo8+voRfke0aelK3FBHvyqKo/Gz2FS5vm2LIYZ5nkyH7
X9yO/MJkyPkYNbS0yreOrqax47qBxEFCjMuFcctakIMlo7LomwV8SZwZXe72
+4ouxyPDnGAKRlOaZ/D5m+yu7LdZt/c5Fj4/BjHx3eEVNLi8KmlSHd9Ar6CJ
FdnqwC+AmML8WFAkp6++on2UMz4hVzZdTVKHncfsHb27I50k1XMZLZktBoMU
2CdoVLPz9Dd7GI1mX+bAKJgDTdVV1QFG+U/Zx3QF05WjN9Js1jxq0jaySSyr
P+Pxnz+rd/ryZRmeEqzWCZT36eX77FPnNj77fighIywyv6DL23I1fsVfwivg
zL58oWGXde5HS1a5g0/lbktIItsI1qsOutEKWVcagoz1mmx37hcmiviQ+dGI
eBDwtTTPLBsvyJp+6OD0a7ryhNWYY6EJEDYtjbw+LDp+bTJkelgzyP7Pmz1v
aZeTZSwcJssqB1Up/L71Omu6Nn3X6cfqsOHueXlIraBuYXmusLpQr1NqOM/u
tiVtm7rpCej2YbokD3E2Zc/QgaSLAWBlNnQ5zZPmSuOeZ7UnadPAK991wFe0
f/jidTXggo5fKlsjK3d7st30k6jKnE0IrG1cw5X3KmASA4ZBG6v15PJJrDm9
CHIga7+nH0uBYLwZqgN76hBSZN2Qb2l9RelJQ9ekhmzIGehdZnvaYDSvrFmR
d75l3SJhQgwrWj9YEnqx3LMmA9JirTBDNe7YOs2wISvBc9LHhFXDQq5KGsbK
Y1xqJXwxz4a92bGq3OEKmDLfOwIPLviCMx19UHO27V1JEtt7GquMqz/M0z3y
KMz+UYjPZNuQvCh2aSooe7mpo4Hq6YG+z5fnS0jpkhYcz81VRKSGvgyiScSS
twfywpvW7bdiWjK6CmJi5yVKrBMO8iJN2pS1w4qqW/M8HFwjOs1jgGnatL83
gKLsepLrUHZb+ri/g87oC6rwRhJfxxv39OtY9+xa2gtkG8QIsC2luCA7IytU
DWxibbVpXh6yPodhd7Qh+p6Mrm957D829YIs3Y1igj+sZbgnbi0yMlA2CsQ6
2eVQr8LflthL0EO7UPcURTE7DHF6C9l3RL9wyK/pNkMPQUnm2ce312o6CNl/
+ZJ1pEbduhR33HnbdtivXWrdsKFjfP75s0FregR2ZgMrmezafw206dbj/RlU
kq+ER3+A0cj0KI6CFrJi4Rm3rsJEg+Gyex9MpkYh1o5/FicP612yDnQlJI31
3nkKFevNeqhoddewR6RjZefP2WvRgvqalAhbjO2xy8SfYuzQDB1BQHYlcFVe
eQJ92+YOw7/beggqe2iziDPIebFpmg/JUdVQgILEk/dsLaO9EzufjhS6OEYd
J+Q4RYMEp3uCDgSxYCBKvMVcnSDRExB0BAfueWOHAZLTAnJq6Om0fYp7IA4u
gIfb0W+08U+hJvYpmB9bjjXsIQRf1oII9yU9DRYS0uVL5MEjr58Kbx3VgZTj
siIPJtuWcI3sYz/WI4EgHe0WWHcnQG6HFMMx1ugGcobQJLxlvAlKyPTGH7JN
40R0fboa84zxqDqG+4BuhCLYatldM1QF1MRjB9FER2O0ezNSY5dtyw20joAy
See39IQC5Zb1kJ67I2SZuVtXCnK+LR09SUIP0SCS69opNqEl+X/FtwT+yfHe
wqVgetC0l7wQ/LsgEsgMObiO4uZP1x8fzOX/sx/f8c8fXv3npzcfXr3Ez9c/
XL59G36wK65/ePfpLf19pj/FO1+8u7p69eNLuZk+zSYfXV3+7YEgkAfv3n98
8+7Hy7cPslIMxyzi8CCuVM+mwPH5i/fZk2diTZHSIVP4+fN/04zMly8zMgu1
vKupaSXlVxLcAQ4c5gMboSLf5fakY1XH0LQjra9ZF0SYH2V7Kp57TXbJMZYi
3ZiPcSaDEnFQRdGS0kD3u3xLthxvIsiXG9iEIxWDqZca6IEf2MHc076rEVZZ
CGle+d9mvCM7VxZzUXcgObxZTbCEAlPwkQa4G0yIBpoEuskOTgZPAvie3ilm
4bZse9kRQ72CeaY1iHE6G3J2y53mDhiBAV7lYxjI68HuVg0ggWGPe/1u3wc7
oGKitd4bunPpFkttJmcVeDNhX7gbMzm0yOSmSeYwZbRVK/ofDwvZ6i4uSWIh
WUCdSMbkwTkGeNe6wT7PtyQEcliWNYCqAlqo2KCm9IuGTuSnGnJBLTZtiDWO
tIMV7auTefj3AXTPZp/qqoRoDnu46WNsEd3S/LQP4aG6fmh1GUtxhSRfR5bj
E+kB3eGnwXbyAH01m/9bTstAQwU/7LCT6mG3omlztoWjZbmbIHfUB/gnEg/p
SHK5qTd7VK93kyocWLY3NXmiu60g+HAp5jPH2z10FM4qsfc7gU5yjTOX5NIn
G1RCBOAX/heBtwgXF816sYKetr6STbUt97KA8e3ib8J4ijC7FcNJwhBzi4fY
ygM+k+kaTJ8Lz4gev5E97sRGQTgSAf7qi1Qqs8t9ssVXQ1mRlvXNPlmoN+8z
TQIw3iVtuC3hawjVkNLWZbfjMZNGbmCAGg5JKHSkcf6MGxD5sDVInm5KNn72
Mjr5+HqXDpDwB/2G/BFLzZIOz5ZPJmkH+jvpTQhRT45OgQmHDb/0YgtGFkBA
IT2EtFRzVqQ2XsGLAxRrhi640h0MQWpyAIVriiPiqLthFYxPN8rfxeiwo0Cj
1eG8bK7V/sHNtEhhdgyAxf+IzUaIM5KSDEQDk4nIVLUIx5HGJpb9WEDTAJ+U
hZYLr8V6mRrUDfY+wiJS6tIyqEE15gFEp77g2BDsSppXUy9n70MsAfzTug32
TrwYG4wMXXyBjF7eXSX53LPOe1EIVESQh9JfvuGkFKbx+fOk+EBqg4chkUkz
784lNGBviPcS+naKj3VNukEwlds4QPQQgapwaDcToCNDu9gjsOx5D1pQDtXC
Eum1xZLDH333XCKHUdaMl88kiCUMed5mxflyxXJDDlCj2akQQcoIBLiJf6L3
c9ZC0jLyjIWAzjBOfvNcYKnOATuixrUMljT9ERcIRTm3S+wZb8Q14VIzQvpg
LxFaD1MpL58rKOYsFa360VzJD3v+IeQSzFiOnrOcvYBLsjwDuW5gDXr5bVMW
ajuxJ9YmWV3NW7q3YaMIt3k5kkH2+auxUL7cl4Qz+2/Zf1jvmEHBMEZb1ZIh
iWAYkW7dLXuNE5kWLosAJnnkKs7eqBlzkkqX3MRCzL752JPrqjChi/6EM/Ir
AoZlD8OGKD593OR2MnNVc8CkJKHSDL3FD3MZZDCxkt3AJqK5hrwi2RvatGW3
FXSj4GqSJkYc7t3N9HLePFs2DgHXIv7XHI+D016U9YIeupD6xfIcJSKZoyUZ
SGbz6bRIhnt3qBpXMJj74ePH99fQetuonC0Ki9DQRjCtn59IppEilJ15j570
zrc0PrIsTdMj8KKIoWA/jnyoqCSBYvItheomLA7LkgweDYeTczbUM1+ybd0N
wNAQVbJcSC+2W7enPT9sNA0siZAoY80pWgpy9PRzoIMj0ZDoJM8Z8SFvQhUH
rHLtyXqfYXFuLkiCRUliw/DMBMH6I/Ylf3MOwUb4NxbxSJjTVerd5mI2+1N2
fSBPRgAoxyeJKnfhc33X9AE5bVYa5tXlCxoFpHz8Al7zYsh1QKMt6usAs84u
X9ETqg3y69sd2Y/nPnfw/QQbAWSR5Ca37dnDWd6AsBkrLz2sRaSDvaFvk+VP
ZnBiZDrR6VNG0gS8FcMHQANPe9cwtiDYfzHDyBS1SigbIfByds2YIkxJtzqH
FveNKqS5P766fns5By7NBw5cVr5q7s7ZR5MVEn8as9YQLSCWBC54b8xaJFc1
E9WHGN1mE5PSS2jDZTdRhygNxKsIUvx4VfcDmZScUxeib92BFHknAQPWkEt3
YsvFpsY4AiGyVhLUD+IlmAc9TvOKmBmjpCRPj8mQeDq/s3Ddkkk2xvFc6WlL
tl0rMnkSTLHufwxhAt6JlT2IQ9H6ItKOgo+C6ZTEbWKapxo0dOKlQhHgaOOQ
YFnWbzQpiZjDcp/ppRoua2IuLtRcnJjbmM7jzzTaliyiGJaBQ3GHrCzzNPSa
7ti8coo+1YFXit0ySfcbS0ZkBX/2ZPlnEk9ddFvkA6JeA2wdzVMy38AU2VXZ
X4VUhOG9Vy9e/sCq4zatZ6i8tPddnnweg/or396gWEC3yKQtd6kSMxTZonjY
ieHW1JziHNy6NA048Rr2AqyUBtNLK8UkidJYModRx9hCPaxJ0kp4ILsMIAVx
IEVRSnif4nDFPaw9hZdFrYtHsPauhgEuhljeormR65mHGsyjiiykwPLWc0a6
1NK9VCrp2Zx0B8BhOzMyxjZudk5wW9EMTI2GXZpAMi0HjZJunF/Za2ZK3GMu
vJFj/NDcKbGIN4u+WngK9xmHf5utFCzFkTKAKxovYUHcUntk/zaaMIMpN0gf
MXbtAYnGL3M7ScjyhoYNYONhY4CgU9HMLSiAtGv3f/43GZBx/Jc1e0/WBCXP
rcWhEuw1zKTaKEJ3EZ0Tvtg7emnTJlkqvQkMnH1jdk9rhrMrm1uiV6LCGPQo
0nP3eiIYpDHqXh1GhCCaG1emtcBVxI1w8I4DgD+JF1MOweNvn1Jo6PIt/FeX
LLGVKxOfwIWp4xUyJevLHSdgKm9wPcxiaolbx9iOkW24fWseqeDAfpC1oavh
NMucXnyQJFArTsGlWichhDtyLoxQ7vGDGScHP1xf8szI4F1fLmdverWc3XgU
ZJDLmsJkVOlu/W8imI3t71QYpxwSm2ATo4Qh616W68CpR5MHXchLGxJnY+8D
lTD7BToRNCRcirwMmxi2fYiLiqGizyEOG5+k4ABrXFtEkxxBE9fsQvQnUMbD
MfDUaOFJIHVOK2kE16A/lkGCiAXBy8+CHmgNSBh1TtNdNZIcXaDMxnuLlJy9
aNm0IqogzLGJDDnSJPpkRb8WzkOapYjrFgEJR0X8Z7WgXSaMM2y4JLU5rttO
cc3DLlU0Rt0GMudp7uVeelFkMIHOyhSZEeq7IqOx9oEOFxgIBNKvnr85p1vx
/7SbGY0yEnPjCUw8i8QzPLZppnWn7xIeiZOi5DhoKcoNX6BysAhIsdc0a7I8
EW8JWtZR7OAyMRSgD8eMnZUfRU2AOGU6NOyQMHCPEglGKUGtmANjW8R4IQnZ
Relz8s6ed96arLcLkeSpScQQLNQ8Q3qiFDHY6LJPH97C2Y4MNS7QAQWpcTCw
B4bYNl3ASbTpKW62nM/lKLemlAF5aye5eN6aXdkHUzPSWxUxu1joCKerCzi8
pk6R1CiHZ/mnpNbDtSl5GCnnB78ha8F0KuYGhbSoGKdyhwow15nHO7ZkZtrk
2ZapLrspJHF9ml+9mAXuzgm40xwlWn4ryWSu+foeCsTZy3PWORU4Wb49kF/Z
JRwTjns2255+uYM0DuZLJa4maxwrNrH2FyGAZuTCZhaqr+xrFdKJPFyacIYq
qA73ZRTC2seIMGyhtDAFMfoaeCPyIlhESIIQVoANwZofEC++eK+hTciMwK3Q
b70PihKITdiBc3svLMJCeBiWwJ6P8ulIELU+zZTPzRwXfpEAa4HQEEDXp1Df
IhbB3XxRgtmMi5dXruuEiOcKeCEHrjMt/vVbvgUrDV8Ui73Y8/UGassSQqyb
MDGWMwhslPCkFeEHS26M/sPsHt+lIQp79H2sTXgrFnMWQ1izqF+aF3vTSzId
+XjaU8DkvRblaf1Qn8/+89ObF9kd8kLB0wuJhjyTWTMsiWVBlUW7TwTLXAcX
8rvMpLIwU7QjzmAzOFqr3k9Ui1TEEp3kIWoQzBVAuzrNlJk7mF2dLoOtDlKk
CXB2TPQ4luIoRDlFKanITuWH5ezTyyMlDjV/rtxNa9ujcTG/ImRcuN6X6PjJ
UtH8lOpPdVqZB6d1uWlNlckJhMgU+U/UqZBdClmEMI4TT2vWa4lWOCyR3LtW
OrgwdZUEEKlxI0HFd0pcEUKukXBYGUEWKzwtsVLSdKci+jWC8Mao/lJaPkrW
7uhtG31mJMb+KXuv9RkKQ34x0t4tXnUcd0/ibC0mNlor5BT0sTgYkJo86H0v
NXRHJlW1i0TQ3AlRRLmSsU4Fq4lpPrKQnx7xfetyVLQZJ7siuD14EZqeECrT
e+YEEL3UbmRHYUUbzuXmXdzOUPSm8mx5cf9sdsloFdT1e9l3qey5vnvjhXDo
Uxrb7xZ87ugNZcu8OPDvZceR7dixfiBI3wurJL5vZFEYaTJYl1EcBOJZIohp
DsxzQeEPanhXsvHcD6GpYtU2d3TFwy6m5TlKwypBDDDLFvxmASoIEdvGmnFH
AnnrkHpAXprcgdir6KYH43fMs0ixZcYEP5nNE3a+1z0RAnjeXkdbvxzRTe/d
9fOoisHlJQU9K9PGZINmpKIiScKJB2T7QEO4MHMuXRpRr6wOMYfL7CN04tX9
iR06YUmlPIiTCuSKohvlh5F/JehTVQ4uYznBO+Oeh/JUSasUEkF5VFU5kc8N
OOtith5VoI8BaeLNXG8AJPFk88i9NqtchKDntwrBKut+O3TGW/gtxLqcvaWH
Sn5jldKNxswaVezEy2F55uD0oI48H9tnoBE2+2n3GKfT4zazIIA3qQ951LVl
OsfmzhDaibznxKqN7bHWXyRKAY1uqHPtseibZh6Nwm+uK092mb1OwsWLmNna
wzlA10YeAf6iG3kG5Ckl6yKUdM5jMHuSgoBuyXnuJJSQjcvJOjJ+7WKj1FJu
uvXtzruOAbft5hO+abQl52ImCk5w1ofJc2RjjzLIEnSytUmCNjZFXGWl9aSV
6YY9K8SZX26W81F6rUxa3JKsR8hAS6jSnWNgzLLVDheORns/NQExe6mUSFtL
yVxwoGlANEIUKZGfMn/3OvPp0vHHI+Gk6W/blAFm4JUlAjczySFIjzLQbIaG
Y5M+nKPiehIGJRxpBLDzI/ImE00D9bGOLRZnoekCfRQAj+fsjcE1GNHrYvb7
qLJ6oktDSXLiLQ+9JILwyx3TSNrYLJQG0dL/w/MitM0dQByacFoDA9eY6XCi
MqhvTIoVUJ5Gyveo0y0hvz04p2UuAQyszA7VefhxCg0UQGjknOrscCrjhwyb
/wW2feNDVNjWacWh3NPrO6M5ecR2vbwQWs04VepwpFiOozXjn40jCo5znYXt
2v8UuB+gRKt4NflnPYsXs2lPFANkpurqnGz7lWiGZb9e7tgu+LrYN6gMK3mB
y1OrkpmmZf37XhkldJgGYywoo5sXhGF1mEhE0tDMNS2eBZqseDuYJAHv2pyP
7boyNowSBdgRMqsk6C+M1Fh1YeEm6rucnb1IalFzLtTnbOSkswH3SLzYBf55
mhxyR31LF4qa9a5R4nWuz16BrgnJG8vrmIq7Kjm1IU0eyTuPVow+wIyg73uU
DqXLlT1WzryVUL1l+CUWnLBkK5lsGvEWdeZ1oLfIY60naq55tFLaGmGK2dQh
rXdXFiDN9QQDf9VYMoXVIYmgzOWIzkEWSoLvJKwMDkI7nUPMJH1KMANVlZYs
1mJcOTVq5kLiNiPL0aSDlszt1ljFM705YyPOZj06AVg2LIA1EJ+rFJNRCsHc
+oKUOW70tEZY5lxkBGV1arw7bkL9yk4yYCsfcg/I/3XucB5u+/j2eh7Kfrum
LvuGfRF2dbRhcHPqk6PamFm8c90Y+x1X0wibtppoZL0OhK2ElbOcvR7QydqC
HmZNyOKCE6Z3FaK3UdF0WoBK3UWoGek752AqkQ4Q4CvVDGNHWmutvOphp11/
IJFySWdC0zY+b8gqwFhWiAaQ8I3MCYXCoVORFluCLI7tkHyQFo4AcXujqxP0
ZnqjNomJn1Et2Ppqb3kFr6AzKfKTpbuRHEPcErHrq5tQ/gX7Tqmw1uY07LRI
umUKH8w4WvzReBZb/4R/bCl5Ml9NXhpVcwzpFwrplTau+ZBwvaSkYnsZbXGQ
QKWAfB/j8IwXdIfMBgwQCqCc2ZF4g7ulhZ1AkRyKErTlLpFr478fuZ3prGhV
a5+2vEvcjVwqYBIsgDXt8DDHWoAnGHmO55ZQeN98f8V0+qu3L+M1jE1h1SRO
OGPL2fQxm9yHag6yCgsDPtIlGR3aina5JB4eoiZiNF/yY6yGIL38OLZEWdI+
K50KcKZM/lPHKvWnI4nZPNdVc8cbIxIJDBayPUGwyKFJ4EogJGt3knUxZrwy
G4vmrtZBNwrX+JFeGwSgjj83HKs4iZ1zPv8jqb6oOp6hHHl9lZ4vEJcsRmNn
UjmZc9fp/pyeWbLbBIdee3q68zSQPdG+NTc3GNod9dwDzRoHpoW93qji7EJD
I0qCp5npzbn+xDozjtIKSZuczME5Jm6dqkuchoJQXT5nSCCgiG2lrWhaUQuJ
pfGqlX70BijGEQi01JYhY1avj9oD7BgXY/o3C1c39WEHabAXC+2P93iy0/Tf
E/o1xu9heuHYib6J+NNa7bDAoyRY3/ROtJjB0DwW0AfYcg6NxBgLMDUOzhnn
l3YrUwbenCYPGck5y1JKMSiwJjUtSBX+rofXw+lIuTSLID1RNZYg62Km1KOX
zSZh1QnJ+ZXcRAbh/4SwdI/zSwh3uXbRldgYZMnAEw+H2dAeEzd8K23mkVfO
mca23GzSMm9KVlBMuoEHHvbcYty0Whnx+7Kj2EWus4N5ZDMLsGQ0y+cyzdXB
SigfIgMNfdn7dIFEFg4XqA/SXSMHxkjNmWTO9slrX2H3MDTuq6S1Sm2BGHtD
NSfc13t03MNQcyE4JkFa604I9L4i7LtTDnQruYzgPqKEwXAqf2Gj3acKE/zM
qDc75vk7kAMwYIIrYvJDEYrNL7m24KAWIb+uTZuCKftwPEF29j/f/3guRyBw
GDEJLZrVeug444dn3+tqynioDwceooyi16qfwjFijRBCA9cjsRkC6D/jAkxR
CIljvRaSN91QNUNhfOBKg9hpiNRpRhxZ91wVj+bGUzPiZeut6mj54tgQd1S6
D8Gnz5VZhSWT/X4coXF8whwu8MrIG0FmCNI5vTk6iGPiTSeEAXVZUgG7mIHn
FVybtvUcte6k0YhKV9rhIypPzLwhTBGFIi1lHv/WDCXMTDx3G2IeOdEj2KrT
vDBplzrxYGSApK+Ta/fTrEt5dIyLBcnB5fMOvGOTZQIc9+1h3ypZZsst72nK
0VWwkodkEMmrxw36shflFWS4pJfjpEO0bW45FWfJkXTyaY9GEo1pmlI4YiWP
q/LFxguAGOsTjyicB6QBrpFZLnGA6AZHTdHKOBzHCNWokkNaov8NacVErmov
JbtkRC9dXck8SSYqZCDWEsGFyEQbZQQeViPKK1c9UysSJo6Gm6ZAtoszYd2o
gpKNQBrfM9Ez/oyBZOqSddToFvUWIJPV4PDnJTbj56/2+jv25hcUIJOmAa1v
GoEW2IXP32DPZTeO4TfOt6wOy4CCGO+MD504dSxciNMuZkjpteHNlTd0oPLm
1FyHJbO4RntsGz44LZxApflvrskPdD2YMLr1QA8xlyC0UiOTJb1NgsdA6coP
tMk3UGsgXOQ2Oz5hT5Jb0XSaPKZt3noAX9rN/PF0gS3WwkyVwJkmj7cR867J
SW27tR5z+FTHTbIKCgbrsMuHNolBKTQm876l1QxXrn2fbzXRRX45tdjJwVss
5FCIcSZGNuQYBGNzlWecvFZ3R/lVaW/nc8X8em0ELILorlQstMJZhgHgxzLN
Cpk1VxpLu6pQjk/0RCnepyXEpXoLAk7p7YjCIlQMwUnKKlVFjgH66FiWWEFo
1mM1uJhZQkdnfeuqgRcn6Rp2p8v8nVaNSiN9c9Znqlz7pqlG2jUfY8ZQVVAG
0KikcY8srlVs5iK0TWcia+Yx10Xlw9pPwFEC5DQLZnBFMnwMiug9oAGGM2EC
Vf/kCQyh7cBMbsIECby+OEY1ea+FzwfbQGI68AFO/EEnH2RnruqaDGwg2gEP
SCismuvxVQ+geQ/ev75+oCWrcGyhRNjfPfvuy5dzifwm5T8rilk+rDOp4CS+
xPmbPw2k1VI341pjKMvGCX7utmyCNLtrdGZtsaJo4mGGOGGBgcgZC9pmLylA
6eQeySE9OmXU2I4Ia2EpHH5UH8hJkldMyNTWQXj2wH7CHQ/OJwQUVtP0Cj45
otbStB1okpx3JreJIOI0RKcmE7XuMDKeTV9qkBb3EtxX+mZuxeEzEwplS7bj
2t8Jfip8dtTRIwqGHIaTHgb6W4nbU7njtK/C5mFVfHOhzE7vknbKUzQLHFbg
KaQkkR7UOkza3g0T8oFDFlhV01ZSY53r6RyrcdExxH+B459OfpJGXs7eKGXc
HhgJMQmETw5oCI0cbrwv+1N1XOvwlD46YVkSOGItUX5L59PWWFYawGW/R6s5
QoMzrSjSQjS9kz52QWgiGpiA0GMhrR58ITqSp0GVtWmzsNnWiPeTMy5Xfjql
lT80Sg0a8RjY0OtLLAtz5znHEo7mkmVkZVMNL4bWnBys4fMDw3GSxJjFP0vO
tFDLsvIjrhrmSzgUaGBy5oZggZ0cPqTwY6iPOzvE/w8dgvJwPhEnqUgCuaAS
wY38IYf7PlWeEw3Q0wNH0vYMbFIr0LYwXyUao0w/7uuUXs5+4vNJsYDYpcdH
CuRbz/2VLW8Yv4fDFDudjPUM1srrcalMWZYCUuy8OJzPA1jDmJIxwiiA4UZb
jRczYZ5XLvfJ+U1M7GA/6MXOVe7Xw7QpDiqSnCuh42cuV9kPwJkrYWJLvYXW
yfbOuI1DgCZdfvlKmKOk0EmhftRUEqnPFzOrJd+1Aj6bGj02CE3pQVLfnw5Z
ct9Duxc+fHdT7rtT/CH0ffJ89EAwEjkEGFqJd7oyo3ZiPtE0hfvKeuM8vUqB
yYV+zwI+libGE0rk9HcXG2MTOl9KEThJr9BgoKNVCMBp0uFpCCeY3MBRjEdK
JC3zocEsRp2j5j3jf/ION0epsUKwVNg4tDInvclllzTNM/yZHDmCOoMdScQq
cOsn0CJSnubG8U+bEBvDHsgNI6Ylu8I5sdjSWB71LdOfOUWcNtlGZ4Rip201
VyaZBLIzADa1VhSz9HD1FHwcnY5AcdDW8dGuqXSzM7VEhyTDrk3bk2OtziUh
8LNizY11vxmPQdJc0tHPUCDx2gb8ajuDwxuPqtTk0riBLu352+m8gXNRoTht
2yaHpVQlxYrlzqc8gSycABeSf/ADylAhgN5sOLjom3kCoKItB52UUyzkukml
dmjHFNmikqsNLOOdB0vXIhdXc9lppSdYTHutpWmRtg5TO1A32TQSpTa8J8Y9
q4BdHe05mRsf5o6ZpuaBhZJJkqxWqtvIwsQTocxlxt5ImUDTaiYd9cB4tkyt
LlW2IRPM5Oxn5mCsKpz4s2p+kSmGiUxt4MRbjE8mHA2hkcSh2AXYsMQhKGPu
AziEXf/og9Hbn5cc5DOpwurt4/BcNCEpUbMmI944Omlm5HWFQHaKawyUNA4Y
eHdz80vg3duxRCs9gD5Lal96JU9lWldwtRLtdN9poGG8uOU9J/CsynD4vctS
8r9LXxRO4nGaN2Y/m5wMYJHdpAcnQuojmcX24ATl6h6U1BUBlU14eHI6OUth
WrnTThNugxAmf01z2K3KzaDcbatQM3+A74kTlDNJRilTkwV3EoryBPGY0EaO
LaxsQt8ItYdxR4pW240K67qxf7zvREdpUm5iygAH9R/CNDTUJm9WH07VP/hq
DDv9PoqjgwXt3JLjFbNZs9Mfd/lzF787Uf4Y668dtS0DpmDdlZVxifG1ICdL
V9LZkpSKI9cT+/3O6bEISqsNBwPcNUlv1tHIOjmUwbo0TE1lgIaBrFyhinoc
Bp7ix7O9mZxhPpu9EO6XshP3iH24fpBwASx5lJEC7rQptEzJmwEUcHYGX18E
XCK63MlXKbEteIBb3rz6+FqiM64PsjmNLKOsxxc7MSB0msei5/7j76cG9o9/
Lh/M3tVMZXJS+wi7RClt2nQ6Qhon5wiBtbD/SbUztOALzT0pFlhx0zzULTc6
hMKr0IKUdEAxTSUNh84IX1LKNd+2KzdCmtSjGO74xJQtsJi9h7U195w+4E8U
ZaBwsGt6TgkWoy4wnGYeDzA4wXMdleFHGLPTcX23/DqsKb70CZ31VzxWXe3j
XTWpiYncpsLiQzv1K3OOHShjjiq+w0qZtn1+96X3s8Y6JVvyYkz/JimJSLnk
JOWpIwMjLz8C7DTci+M3H/9csvOLazM3ctCznpAdnPFRy9epVPUo3b9u2ASF
imko947Qp3FuYgvYz81K437LKxpLZJnJd0plOPOhWmZ/j9+f9U+a3w6cWsU9
OQIiG0mYRPCwUC4ZH2iC/yP7JBYE0ZxbI8i8Rd89SZ05w2SyUGICRUWW0P9C
TySTICs76caWpCKu1ZBOvkRH24lKTeesh6oyzU4KdDbk8bGuUe3jcRL4DrQv
X5gJyRWQevK9PHfSY18JKYITPpchDnzbwIYRrONqYjf9+h9OvCpXbeJMky8+
EoMQq9hnYa9UXIg6nJuR4r6vO1gIJFuU7aih70jNLQrVA5iM+5HklDnvM2pU
+J2MLIepToH9nKv04NDa13Do96rIVyLsOT0aUqAJVVF50lIGiWVj7bO8mzSN
L2c/hmN3e/02CxU1MyWsBIM2VZzqzl0BSc0kdN7KEco8gvTbYKbOIDGZpzn9
8rUeG6bk4uvnBDcyx4t0kJtyMMJq0O6u4KFYE8Ty8rctsGci146uuPDdP989
e6rf/YMzD6zh1pCzW0VOCojG4ZuQokOYBzMcCyOcuZgkUTRG5oRHAVkk55Mc
E0OW5H4F+4TWyxOdl1wYZaK3FPPZCIdm4ngn7Y81yr5W6+M+hkjpnzDHOGUc
DnMeNXDHXjLTQaWyWePyErAn9PxbCiVHwiy3BpdoZrUcK7IdchuydDSG7kYD
rrxpWwRQTHjlyuH4bODA2dAXjA9bbbkiyAx5Mk265j/gjBMSyzvmS4A6sNVP
lEEhFXK2FDTyyRELOiE5hZp3NWitIt9jADpn1ExOstolB/ZxweFh9OZ69LB9
507A+GyPpduZW6s5T7tmZpZisVCsVgZS+pkmw1n8HGUPuyB+jFnhaLBmTHmI
1i4U8+xMGDiJwPE0JpIEmJL9Dk1mSarPZS/efbhe8ClXkwPNAWgWKvJxOeU0
Hto6ad40T49Swz1iSZCdv4dULallxFoiJsWvwf48TOO1lUcLQANOl+0SVqqy
zSnyJIl7F8uj0mrL36ZAizr5okMBTFAKJCxF7QXQwgAOcq5XAsLAlOwVfFuM
kraMkN1mSITh4MsuyDkqRNLRNPzlES4Uu1d2NZz1PNZJJFIiR8JllsRpiVNc
cDMX6u5lx/PgWMQONjC1YhpNeswJw82KpBP9o/gJS5TKIaHKsxJvyXnXaFkd
dGduy2Ska/uqHvUVqMncKuo13U5NLPOPklb7AIWZFKThqW1HJZnyBJj0j3Gl
rH/Fou84GRcA6FecguLOxRbfD5rf8Lc/yADScJzZz3zqcqBan+hElTqU5l41
BRw6JQHcyrZYyKGkAvWMFNbaGCw5FhQCvBJ683/xKH37XxQLdmX+j39mW8F8
yTlbSkcJB0PxUVK1RfXd6Fz0QGjTUNbJPRa1arpGSnuGvvTYz/g8aejeaNIj
mTpfvJa7UoqINWIJDJvkE8aHbaRWDMLe6kmtLDcbplj92Isu9j+cSSuBCBc+
pVOPxfLDx6u3WlNtDfsHUNwIT4mLTZIJ53tMbCHCqPymlIqdeqA4NaGhabty
TDUKP4Nxavh2BAZFTIHLHQ7YAxGoYwduZbqg15b6YAXhZnLy6FukpqPVl5HI
QZplL+koFDsV5QRuQxO65bweT3DQryrEYUJc6UlqFvTjLcHJknPIu4b8OOcp
xFiKg0nKuXw0VMhGJWX5dDc1t6Mvu1Q7YZiVyzDR8cR2cbDEdiUsczxE8A/s
wrg0JwpcZb3lTNRxHBJP+Tv6RgrTPz1dnWO2g5lBCjfi4Va6e/hLHdnelvbl
LGmuapKIk7YM+nGw4+7mSbx9omA+Tjnr5g0cdeuvZ/enqifdIExw0XOneG9P
Dm2LAc89toMdQfiCnmTC0sqWGgX5jqd7vlRVw0MvZ/nGL3nrNMKwbSQPeXP5
4+XpB4Q7tZWOr3ThdAH57l58jywec5kb8Ze32OzzhVS+ffHfH6wp5PEP8I0G
716+y3DC8ez/AhiDiiI4gAAA

-->

</rfc>
