<?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.20 (Ruby 3.3.3) -->
<?rfc strict="yes"?>
<?rfc comments="no"?>
<?rfc editing="no"?>
<?rfc tocompact="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-kunze-ark-40" category="info" consensus="true" submissionType="IETF" tocDepth="3" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.24.0 -->
  <front>
    <title abbrev="ARK">The ARK Identifier Scheme</title>
    <seriesInfo name="Internet-Draft" value="draft-kunze-ark-40"/>
    <author initials="J." surname="Kunze" fullname="John A. Kunze">
      <organization>Ronin Institute</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>jakkbl@gmail.com</email>
      </address>
    </author>
    <author initials="E." surname="Bermès" fullname="Emmanuelle Bermès">
      <organization>École nationale des Chartes</organization>
      <address>
        <postal>
          <street>65 Rue de Richelieu</street>
          <city>Paris</city>
          <code>75002</code>
          <country>France</country>
        </postal>
        <email>emmanuelle.bermes@chartes.psl.eu</email>
      </address>
    </author>
    <date year="2024"/>
    <workgroup>Network Working Group</workgroup>
    <keyword>identifier</keyword>
    <keyword>archive</keyword>
    <keyword>PID</keyword>
    <abstract>
      <?line 232?>

<!--
  # Note: trailing whitespace in front matter properties will cause
  #       errors in the kramdown-rfc parser. Even in comments!
  #
  # kramdown-rfc described here: https://github.com/cabo/kramdown-rfc
  #
-->

<t>The ARK (Archival Resource Key) naming scheme is designed to
facilitate the high-quality and persistent identification of
information objects.  The label "ark:" marks the start of a core ARK
identifier that can be made actionable by prepending the beginning of
a URL.  Meant to be usable after today's networking technologies
become obsolete, that core should be recognizable in the future as a
globally unique ARK independent of the URL hostname, HTTP, etc.  A
founding principle of ARKs is that persistence is purely a matter of
service and neither inherent in an object nor conferred on it by a
particular naming syntax.  The best any identifier can do is lead
users to services that support robust reference.  A full-functioning
ARK leads the user to the identified object and, with the "?info"
inflection appended, returns a metadata record and a commitment
statement that is both human- and machine-readable.  Tools exist for
minting, binding, and resolving ARKs.</t>
      <t>Responsibility for this Document</t>
      <t>The ARK Alliance Technical Working Group <xref target="ARKAtech"/> is responsible
for the content of this Internet Draft.  The group homepage lists
monthly meeting notes and agendas starting from March 2019.
Revisions of the spec are maintained on github at <xref target="ARKdrafts"/>.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://arks-org.github.io/arkspec/draft-ark-spec.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-kunze-ark/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/arks-org/arkspec"/>.</t>
    </note>
  </front>
  <middle>
    <?line 265?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document describes a scheme for the high-quality naming of
information resources.  The scheme, called the Archival Resource Key
(ARK), is well suited to long-term access and identification of any
information resources that accommodate reasonably regular electronic
description.  This includes digital documents, databases, software,
and websites, as well as physical objects (books, bones, statues,
etc.) and intangible objects (chemicals, diseases, vocabulary terms,
performances).  Hereafter the term "object" refers to an information
resource.  The term ARK itself refers both to the scheme and to any
single identifier that conforms to it.  A reasonably concise and
accessible overview and rationale for the scheme is available at
<xref target="ARK"/>.</t>
      <t>Schemes for persistent identification of network-accessible objects
are not new.  In the early 1990's, the design of the Uniform Resource
Name <xref target="RFC2141"/> responded to the observed failure rate of URLs by
articulating an indirect, non-hostname-based naming scheme and the
need for responsible name management.  Meanwhile, promoters of the
Digital Object Identifier <xref target="DOI"/> succeeded in building a community of
providers around a mature software system <xref target="Handle"/> that supports name
management.  The Persistent Uniform Resource Locator <xref target="PURL"/> was
another scheme that had the advantage of working with unmodified web
browsers.  ARKs represent an approach that attempts to build on the
strengths and to avoid the weaknesses of these schemes.  For example,
like URNs, ARKs have an internal label ("ark:") to help them be
recognizable as globally unique identifiers in a post-HTTP Internet.
Unlike DOIs and Handles, ARKs can be created without centralized fee-
based infrastructures.  ARK resolvers can take advantage of advanced
resolution features such as content negotiation (like DOIs) and
suffix passthrough <xref target="SPT"/> (similar to PURL partial redirects).  Like
PURLs, ARKs openly embrace URLs as the best current choice for
actionability.</t>
      <t>A founding principle of the ARK is that persistence is purely a
matter of service.  Persistence is neither inherent in an object nor
conferred on it by a particular naming syntax.  Nor is the technique
of name indirection -- upon which URNs, Handles, DOIs, and PURLs are
founded -- of central importance.  Name indirection is an ancient and
well-understood practice; new mechanisms for it keep appearing and
distracting practitioner attention, with the Domain Name System (DNS)
<xref target="RFC1034"/> being a particularly dazzling and elegant example.  What is
often forgotten is that maintenance of an indirection table is an
unavoidable cost to the organization providing persistence, and that
cost is equivalent across naming schemes.  That indirection has
always been a native part of the web while being so lightly utilized
for the persistence of web-based objects indicates how unsuited most
organizations will probably be to the task of table maintenance and
to the much more fundamental challenge of keeping the objects
themselves viable.</t>
      <t>Persistence is achieved through a provider's successful stewardship
of objects and their identifiers.  The highest level of persistence
will be reinforced by a provider's robust contingency, redundancy,
and succession strategies.  It is further safeguarded to the extent
that a provider's mission is shielded from funding and political
instabilities.  These are by far the major challenges confronting
persistence providers, and no identifier scheme has any direct impact
on them.  In fact, some schemes may actually be liabilities for
persistence because they create short- and long-term dependencies for
every object access on complex, special-purpose infrastructures,
parts of which are proprietary and all of which increase the carry-
forward burden for the preservation community.  It is for this reason
that the ARK scheme relies only on educated name assignment and light
use of general-purpose infrastructures that are maintained mostly by
the Internet community at large (the DNS, web servers, and web
browsers).</t>
      <t>As purely a matter of service, persistence is difficult, not known to
be commercially attractive, and likely to be undertaken by only a
small fraction of content providers that have preservation in their
mission.  This vision runs counter to some early predictions that
technology-backed persistent identifiers would somehow become
ubiquitous.  On the plus side, persistent identifier solutions should
not need to be "internet scale".</t>
      <section anchor="reasons-to-use-arks">
        <name>Reasons to Use ARKs</name>
        <t>If no persistent identifier scheme contributes directly to
persistence, why not just use URLs?  A particular URL may be as
durable an identifier as it is possible to have, but nothing
distinguishes it from an ordinary URL to the recipient who is
wondering if it is suitable for long-term reference.  An ARK embedded
in a URL provides some of the necessary conditions for credible
persistence, inviting access to not one, but to three things: to the
object, to its metadata, and to a nuanced statement of commitment
from the provider in question (the NMA, described below) regarding
the object.  Existence of the extra service can be probed
automatically by appending "?info" to the ARK.</t>
        <t>The form of the ARK also supports the natural separation of naming
authorities into the original name assigning authority and the
diverse multiple name mapping (or servicing) authorities that in
succession and in parallel will take over custodial responsibilities
from the original assigner (assuming the assigner ever held that
responsibility) for the large majority of a long-term object's
archival lifetime.  The name mapping authority, indicated by the
hostname part of the URL that contains the ARK, serves to launch the
ARK into cyberspace.  Should it ever fail (and there is no reason why
a well-chosen hostname for a 100-year-old cultural memory institution
shouldn't last as long as the DNS), that host name is considered
disposeable and replaceable.  Again, the form of the ARK helps
because it defines exactly how to recover the core immutable object
identity, and simple algorithms (one based on the URN model) or even
by-hand Internet query can be used for for locating another mapping
authority.</t>
        <t>There are tools to assist in generating ARKs and other identifiers,
such as <xref target="NOID"/> and "uuidgen", both of which rely for uniqueness on
human-maintained registries.  This document also contains some
guidelines and considerations for managing namespaces and choosing
hostnames with persistence in mind.</t>
      </section>
      <section anchor="three-requirements-of-arks">
        <name>Three Requirements of ARKs</name>
        <t>The first requirement of an ARK is to give users a link from an
object to a promise of stewardship for it.  That promise is a multi-
faceted covenant that binds the word of an identified service
provider to a specific set of responsibilities.  It is critical for
the promise to come from a current provider and almost irrelevant,
over a long period of time, what the original assigner's intentions
were.  No one can tell if successful stewardship will take place
because no one can predict the future.  Reasonable conjecture,
however, may be based on past performance.  There must be a way to
tie a promise of persistence to a provider's demonstrated or
perceived ability -- its reputation -- in that arena.  Provider
reputations would then rise and fall as promises are observed
variously to be kept and broken.  This is perhaps the best way we
have for gauging the strength of any persistence promise.</t>
        <t>The second requirement of an ARK is to give users a link from an
object to a description of it.  The problem with a naked identifier
is that without a description real identification is incomplete.
Identifiers common today are relatively opaque, though some contain
ad hoc clues reflecting assertions that were briefly true, such as
where in a filesystem hierarchy an object lived during a short stay.
Possession of both an identifier and an object is some improvement,
but positive identification may still be uncertain since the object
itself might not include a matching identifier or might not carry
evidence obvious enough to reveal its identity without significant
research.  In either case, what is called for is a record bearing
witness to the identifier's association with the object, as supported
by a recorded set of object characteristics.  This descriptive record
is partly an identification "receipt" with which users and archivists
can verify an object's identity after brief inspection and a
plausible match with recorded characteristics such as title and size.</t>
        <t>The final requirement of an ARK is to give users a link to the object
itself (or to a copy) if at all possible.  Persistent identification
plays a vital supporting role but, strictly speaking, it can be
construed as no more than a record attesting to the original
assignment of a never-reassigned identifier.  Object access may not
be feasible for various reasons, such as a transient service outage,
a catastrophic loss, a licensing agreement that keeps an archive
"dark" for a period of years, or when an object's own lack of
tangible existence confuses normal concepts of access (e.g., a
vocabulary term might be "accessed" through its definition).  In such
cases the ARK's identification role assumes a much higher profile.
But attempts to simplify the persistence problem by decoupling access
from identification and concentrating exclusively on the latter are
of questionable utility.  A perfect system for assigning forever
unique identifiers might be created, but if it did so without
reducing access failure rates, no one would be interested.  The
central issue -- which may be crudely summed up as the "HTTP 404 Not
Found" problem -- would not have been addressed.</t>
        <t>The central duty of an ARK is a high-quality experience of access and
identification.  This means supporting reliable access during the
period described in its stewardship promise and, failing that,
supporting reliable access to a record describing the thing the ARK
is associated with.</t>
        <t>ARK resolvers must support the "?info" inflection for requesting
metadata.  Older versions of this specification distinguished between
two minimal inflections: '?' (brief metadata) and '??' (more
metadata).  While these older inflections are still reserved, because
they have proven hard to recognize in some environments, supporting
them is optional.</t>
      </section>
      <section anchor="organizing-support-for-arks-our-stuff-vs-their-stuff">
        <name>Organizing Support for ARKs: Our Stuff vs. Their Stuff</name>
        <t>An organization and the user community it serves can often be seen to
struggle with two different areas of persistent identification: the
Our Stuff problem and the Their Stuff problem.  In the Our Stuff
problem, we in the organization want our own objects to acquire
persistent names.  Since we possess or control these objects, our
organization tackles the Our Stuff problem directly.  Whether or not
the objects are named by ARKs, our organization is the responsible
party, so it can plan for, maintain, and make commitments about the
objects.</t>
        <t>In the Their Stuff problem, we in the organization want others'
objects to acquire persistent names.  These are objects that we do
not own or control, but some of which are critically important to us.
But because they are beyond our influence as far as support is
concerned, creating and maintaining persistent identifiers for Their
Stuff is not especially purposeful or feasible for us to engage in.
There is little that we can do about someone else's stuff except
encourage their uptake or adoption of persistence services.</t>
        <t>Co-location of persistent access and identification services is
natural.  Any organization that undertakes ongoing support of true
persistent identification (which includes description) is well-served
if it controls, owns, or otherwise has clear internal access to the
identified objects, and this gives it an advantage if it wishes also
to support persistent access to outsiders.  Conversely, persistent
access to outsiders requires orderly internal collection management
procedures that include monitoring, acquisition, verification, and
change control over objects, which in turn requires object
identifiers persistent enough to support auditable record keeping
practices.</t>
        <t>Although organizing ARK support under one roof thus tends to make
sense, object hosting can successfully be separated from name
mapping.  An example is when a name mapping authority centrally
provides uniform resolution services via a protocol gateway on behalf
of organizations that host objects behind a variety of access
protocols.  It is also reasonable to build value-added description
services that rely on the underlying services of a set of mapping
authorities.</t>
        <t>Supporting ARKs is not for every organization.  By requiring
specific, revealed commitments to preservation, to object access, and
to description, the bar for providing ARK services is higher than for
some other identifier schemes.  On the other hand, it would be hard
to grant credence to a persistence promise from an organization that
could not muster the minimum ARK services.  Not that there isn't a
business model for an ARK-like, description-only service built on top
of another organization's full complement of ARK services.  For
example, there might be competition at the description level for
abstracting and indexing a body of scientific literature archived in
a combination of open and fee-based repositories.  The description-
only service would have no direct commitment to the objects, but
would act as an intermediary, forwarding commitment statements from
object hosting services to requestors.</t>
      </section>
      <section anchor="definition-of-identifier">
        <name>Definition of Identifier</name>
        <t>An identifier is not a string of character data -- an identifier is
an association between a string of data and an object.  This
abstraction is necessary because without it a string is just data.
It's nonsense to talk about a string's breaking, or about its being
strong, maintained, and authentic.  But as a representative of an
association, a string can do, metaphorically, the things that we
expect of it.</t>
        <t>Without regard to whether an object is physical, digital, or
conceptual, to identify it is to claim an association between it and
a representative string, such as "Jane" or "ISBN 0596000278".  What
gives a claim credibility is a set of verifiable assertions, or
metadata, about the object, such as age, height, title, or number of
pages.  In other words, the association is made manifest by a record
(e.g., a cataloging or other metadata record) that vouches for it.</t>
        <t>In the complete absence of any testimony (metadata) regarding an
association, a would-be identifier string is a meaningless sequence
of characters.  To keep an externally visible but otherwise internal
string from being perceived as an identifier by outsiders, for
example, it suffices for an organization not to disclose the nature
of its association.  For our immediate purpose, actual existence of
an association record is more important than its authenticity or
verifiability, which are outside the scope of this specification.</t>
        <t>It is a gift to the identification process if an object carries its
own name as an inseparable part of itself, such as an identifier
imprinted on the first page of a document or embedded in a data
structure element of a digital document header.  In cases where the
object is large, unwieldy, or unavailable (such as when licensing
restrictions are in effect), a metadata record that includes the
identifier string will usually suffice.  That record becomes a
conveniently manipulable object surrogate, acting as both an
association "receipt" and "declaration".</t>
        <t>Note that our definition of identifier extends the one in use for
Uniform Resource Identifiers <xref target="RFC3986"/>.  The present document still
sometimes (ab)uses the terms "ARK" and "identifier" as shorthand for
the string part of an identifier, but the context should make the
meaning clear.</t>
      </section>
    </section>
    <section anchor="ark-anatomy">
      <name>ARK Anatomy</name>
      <t>An ARK is represented by a sequence of characters (a string) that
contains the Label, "ark:", optionally preceded by the beginning part
of a URL.  Here is a diagrammed example.</t>
      <artwork><![CDATA[
ANATOMY OVERVIEW
================

    Resolver Service            Compact ARK
   __________________  ______________________________
  /                  \/                              \
  https://example.org/ark:12345/x6np1wh8k/c3/s5.v7.xsl
  \___________________________/\________/\___________/
              Prefixes          Base Name    Suffixes
  \__________________________________________________/
                      Mapping ARK
]]></artwork>
      <t>When embedded in a URL, an ARK consists of a Compact ARK preceded by
a Resolver Service.  The larger URL-based ARK is known as a Mapping
ARK because it is ready to be mapped (resolved) to an information
response (eg, a PDF or metadata).  A Mapping ARK is also know as a
"fully qualified ARK".  The Resolver Service, which need not be
limited to URLs in the future, maps the URL according to rules and
abilities of an NMA (Name Mapping Authority).  The same URL string
minus the Resolver Service component is known as a Compact ARK.  The
Compact ARK is globally unique and may be resolvable via different
Resolver Services over time (eg, when one archive succeeds another)
or at the same time (eg, when one archive backs up another).</t>
      <t>At a high level, after the Label comes the NAAN (Name Assigning
Authority Number) followed by the Name that it assigns to the
identified thing.  The Base Name has Prefixes (NAAN, Label, possibly
a Resolver Service) and optional Suffixes to identify Parts and
Variant forms.  During resolution, a Resolver Service such as n2t.net
<xref target="N2T"/> may be able to deal with inflections query strings, and content
negotiation.</t>
      <artwork><![CDATA[
   ANATOMY DETAILS
   ===============
                           Base Compact Name   Qualifiers
                           _________________  ___________
                          /                 \/           \
      https://example.org/ark:12345/x6np1wh8k/c3/s5.v7.xsl
              \_________/ \__/\___/\_/\_____/\____/\_____/
                 NMA     Label NAAN |  Blade Parts Variants
                                  Shoulder
                              \_____________/
                                 Check Zone
]]></artwork>
      <t>In a closer view, the Compact ARK consists of a Base Compact Name
followed potentially by Qualifiers.  The Base Name often, but not
necessarily, consists of a Shoulder (for subdividing a NAAN
namespace) followed by a Blade.  If a check character is present in
an ARK, by convention it is the right-most character of the Base
Name, and will have been computed over the string of characters
preceding it back to the beginning of the NAAN.  This string,
including the check character itself, is the Check Zone.</t>
      <t>Like the ARK itself, the NAAN "12345" and Shoulder "x6" have compact
and fully qualified forms.</t>
      <table>
        <name>Example base, compact, and fully qualified form components.</name>
        <thead>
          <tr>
            <th align="left">Form</th>
            <th align="left">Base</th>
            <th align="left">Compact Form</th>
            <th align="left">Fully Qualified Form</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">NAAN</td>
            <td align="left">12345</td>
            <td align="left">
              <tt>ark:12345</tt></td>
            <td align="left">
              <tt>https://example.org/ark:12345</tt></td>
          </tr>
          <tr>
            <td align="left">Shoulder</td>
            <td align="left">x6</td>
            <td align="left">
              <tt>ark:12345/x6</tt></td>
            <td align="left">
              <tt>https://example.org/ark:12345/x6</tt></td>
          </tr>
        </tbody>
      </table>
      <t>The ARK syntax can be summarized,</t>
      <artwork><![CDATA[
[https://NMA/]ark:[/]NAAN/Name[Qualifiers]
]]></artwork>
      <t>where the NMA, '/', and Qualifier parts are in brackets to indicate
that they are optional.  The Base Compact Name is the substring
comprising the "ark:" label, the NAAN and the assigned Name.  The
Resolver Service is replaceable and makes the ARK actionable for a
period of time.  Without the Resolver Service part, what remains is
the Core Immutable Identity (the "persistible") part of the ARK.</t>
      <section anchor="the-name-mapping-authority-nma">
        <name>The Name Mapping Authority (NMA)</name>
        <t>Before the "ark:" label may appear an optional Name Mapping Authority
(NMA) that is a temporary address where ARK service requests may be
sent.  Preceded by a URI-type protocol designation such as
"https://", it specifies a Resolver Service.  The NMA itself is an
Internet hostname or host/port combination, optionally followed by
URI-type path components, all ending in a '/'.  The hostname has the
same format and semantics as the host/port part of a URL.  In any
optional path that follows it, the path is considered to end with the
'/' in the first occurrence of "/ark:".</t>
        <t>The most important thing about the NMA is that it is "identity inert"
from the point of view of object identification.  In other words,
ARKs that differ only in the optional NMA part identify the same
object.  Thus, for example, the following three ARKs are synonyms for
just one information object:</t>
        <artwork><![CDATA[
   http://example.org/rslvr/ark:12345/x6np1wh8k
        https://example.com/ark:12345/x6np1wh8k
                            ark:12345/x6np1wh8k
]]></artwork>
        <t>Strictly speaking, in the realm of digital objects, these ARKs may
lead over time to somewhat different or diverging instances of the
originally named object.  It can be argued that divergence of
persistent objects is not desirable, but it is widely believed that
digital preservation efforts will inevitably lead to alterations in
some original objects (e.g, a format migration in order to preserve
the ability to display a document).  If any of those objects are held
redundantly in more than one organization (a common preservation
strategy), chances are small that all holding organizations will
perform the same precise transformations and all maintain the same
object metadata.  More significant divergence would be expected when
the holding organizations serve different audiences or compete with
each other.</t>
        <t>The NMA part makes an ARK into an actionable URL.  As with many
Internet parameters, it is helpful to approach the NMA being liberal
in what you accept and conservative in what you propose.  From the
recipient's point of view, the NMA part should be treated as
temporary, disposable, and replaceable.  From the NMA's point of
view, it should be chosen with the greatest concern for longevity.  A
carefully chosen NMA should be at least as permanent as the providing
organization's own hostname.  In the case of a national or university
library, for example, there is no reason why the NMA could not be
considerably more permanent than soft-funded proxy hostnames such as
hdl.handle.net, dx.doi.org, and purl.org.  In general and over time,
however, it is not unexpected for an NMA eventually to stop working
and require replacement with the NMA of a currently active service
provider.</t>
        <t>This replacement relies on a mapping authority "resolver" discovery
process, of which two alternate methods are outlined in a later
section.  The ARK, URN, Handle, and DOI schemes all use a resolver
discovery model that sooner or later requires matching the original
assigning authority with a current provider servicing that
authority's named objects; once found, the resolver at that provider
performs what amounts to a redirect to a place where the object is
currently held.  All the schemes rely on the ongoing functionality of
currently mainstream technologies such as the Domain Name System
<xref target="RFC1034"/> and web browsers.  The Handle and DOI schemes in addition
require that the Handle protocol layer and global server grid be
available at all times.</t>
        <t>The practice of prepending "https://" and an NMA to an ARK is a way
of creating an actionable identifier by a method that is itself
temporary.  Assuming that infrastructure supporting <xref target="RFC2616"/>
information retrieval will no longer be available one day, ARKs will
then have to be converted into new kinds of actionable identifiers.
By that time, if ARKs see widespread use, web browsers would
presumably evolve to perform this (currently simple) transformation
automatically.</t>
      </section>
      <section anchor="the-ark-label-part-ark">
        <name>The ARK Label Part (ark:)</name>
        <t>The label part distinguishes an ARK from an ordinary identifier.
There is a new form of the label, "ark:", and an old form, "ark:/",
both of which must be recognized in perpetuity.  Implementations
should generate new ARKs in the new form (without the "/") and
resolvers must always treat received ARKs as equivalent if they
differ only in regard to new form versus old form labels.  Thus these
two ARKs are equivalent:</t>
        <artwork><![CDATA[
    ark:/12345/x6np1wh8k
     ark:12345/x6np1wh8k
]]></artwork>
        <t>In a URL found in the wild, the label indicates that the URL stands a
reasonable chance of being an ARK.  If the context warrants,
verification that it actually is an ARK can be done by testing it for
existence of the three ARK services.</t>
        <t>Since nothing about an identifier syntax directly affects
persistence, the "ark:" label (like "urn:", "doi:", and "hdl:")
cannot tell you whether the identifier is persistent or whether the
object is available.  It does tell you that the original Name
Assigning Authority (NAA) had some sort of hopes for it, but it
doesn't tell you whether that NAA is still in existence, or whether a
decade ago it ceased to have any responsibility for providing
persistence, or whether it ever had any responsibility beyond naming.
An NAA identifies an autonomous assignment stream for a set of objects
as well as a reference to help locate a resolver for them.
Often, NAA policies and practices reflect an organization (department,
project, data center, periodical, etc.) in which it is embedded.
An organization may have more than one NAA, for example, a publisher
may have a distinct NAA for each of its three journals.</t>
        <t>Only a current provider can say for certain what sort of commitment
it intends, and the ARK label suggests that you can query the NMA
directly to find out exactly what kind of persistence is promised.
Even if what is promised is impersistence (i.e., a short-term
identifier), saying so is valuable information to the recipient.
Thus an ARK is a high-functioning identifier in the sense that it
provides access to the object, the metadata, and a commitment
statement, even if the commitment is explicitly very weak.</t>
      </section>
      <section anchor="the-name-assigning-authority-number-naan">
        <name>The Name Assigning Authority Number (NAAN)</name>
        <t>Recalling that the general form of the ARK is,</t>
        <artwork><![CDATA[
    [https://NMA/]ark:[/]NAAN/Name[Qualifiers]
]]></artwork>
        <t>the part of the ARK directly following the "ark:" (or older "ark:/")
label is the Name Assigning Authority Number (NAAN), up to but not
including the next '/' (slash) character.  This part is always
required, as it identifies the organization that originally assigned
the Name of the object.  Typically the organization is an
institution, a department, a laboratory, or any group that conducts a
stable, policy-driven name assigning effort.  An organization may
request a NAAN from the ARK Maintenance Agency <xref target="ARKagency"/> (described
in Appendix A) by filling out the form <xref target="NAANrequest"/>.</t>
        <t>For received ARKs, implementations must support a minimum NAAN length
of 16 octets.  NAANs are opaque strings of one or more "betanumeric"
characters, specifically,</t>
        <artwork><![CDATA[
    bcdfghjkmnpqrstvwxz0123456789
]]></artwork>
        <t>which consists of digits and consonants, minus the letter 'l'.
Restricting NAANs to betanumerics (alphanumerics without vowels or
'l') serves two goals.  It reduces the chances that words -- past,
present, and future -- will appear in NAANs and carry unintended
semantics.  It also helps usability by not mixing commonly confused
characters ('0' and 'O', '1' and 'l') and by being compatible with
strong transcription error detection (eg, the <xref target="NOID"/> check digit
algorithm).  Since 2001, every assigned NAAN has consisted of exactly
five digits.</t>
        <t>The NAAN designates a top-level ARK namespace.  Once registered for a
namespace, a NAAN is never re-registered.  It is possible, however,
for there to be a succession of organizations that manage an ARK
namespace.</t>
        <t>There are currently four NAANs available for assignment on reserved shoulders
(see the Shoulder section) by all organizations.  An ARK bearing one of these
NAANs carries a specific, immutable meaning that recipients can rely on for
long term pragmatic benefit as described below.</t>
        <table>
          <name>Four NAANs shared across all ARK-assigning organizations.</name>
          <thead>
            <tr>
              <th align="left">Shared  NAAN meaning</th>
              <th align="left">The immutable purpose, meaning, or connotation of ARKs bearing this NAAN.</th>
              <th align="left">Expect to resolve?</th>
              <th align="left">OK for long term reference?</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>12345</tt> examples</td>
              <td align="left">Example ARKs appearing in documentation. They might resolve, but link checkers usually need not be concerned if they don't. They should not be considered viable for long term reference.</td>
              <td align="left">maybe</td>
              <td align="left">no</td>
            </tr>
            <tr>
              <td align="left">
                <tt>99152</tt> terms</td>
              <td align="left">ARKs for controlled vocabulary and ontology terms, such as metadata element names and pick-list values. They should resolve to term definitions and are suitable for long term reference.</td>
              <td align="left">yes</td>
              <td align="left">yes</td>
            </tr>
            <tr>
              <td align="left">
                <tt>99166</tt> agents</td>
              <td align="left">ARKs for people, groups, and institutions as "agents" (actors, such as creators, contributors, publishers, performers, etc). They should resolve to agent definitions and are suitable for long term reference.</td>
              <td align="left">yes</td>
              <td align="left">yes</td>
            </tr>
            <tr>
              <td align="left">
                <tt>99999</tt> test ids</td>
              <td align="left">ARKs for test, development, or experimental purposes, often at scale. They might resolve, but link checkers usually need not be concerned if they don't. They should not be considered viable for long term reference.</td>
              <td align="left">maybe</td>
              <td align="left">no</td>
            </tr>
          </tbody>
        </table>
        <t>To make use of a shared NAAN, an organization has several options
described in Section 2.4.1.</t>
      </section>
      <section anchor="the-name-part">
        <name>The Name Part</name>
        <t>The part of the ARK just after the NAAN is the Name assigned by the
NAA, and it is also required.  Semantic opaqueness in the Name part
is strongly encouraged in order to reduce an ARK's vulnerability to
era- and language-specific change.  Identifier strings containing
linguistic fragments can create support difficulties down the road.
No matter how appropriate or even meaningless they are today, such
fragments may one day create confusion, give offense, or infringe on
a trademark as the semantic environment around us and our communities
evolves.</t>
        <t>Names that look more or less like numbers avoid common problems that
defeat persistence and international acceptance.  The use of digits
is highly recommended.  Mixing in non-vowel alphabetic characters
(eg, betanumerics) a couple at a time is a relatively safe and easy
way to achieve a denser namespace (more possible names for a given
length of the name string).  Such names have a chance of aging and
traveling well.  The absence of recognizable words makes typos harder
to detect in opaque strings, so a common mitigation is to add a check
character.  Tools exists that mint, bind, and resolve opaque
identifiers, with or without check characters <xref target="NOID"/>.  More on naming
considerations is given in a subsequent section.</t>
        <section anchor="optional-shoulders">
          <name>Optional: Shoulders</name>
          <t>Just as an ARK namespace is subdivided by NAANs reserved for NAAs, it
is generally advantageous for an NAA to subdivide its own NAAN
namespace into "shoulders", where each shoulder is reserved for an
internal department or unit.  Like the NAAN, which is a string of
characters that follows the "ark:" label, a shoulder is a string of
characters (starting with a "/") that extends the NAAN.  The base
compact name assigned by the NAA consists of the NAAN, the shoulder,
a final string known as the "blade".  (The shoulder plus blade
terminology mirrors locksmith jargon describing the information-
bearing parts of a key.)</t>
          <t>The blade string is chosen by the NAA such that the string created by
concatenating the NAAN plus shoulder plus blade becomes the unique
base object name.  Otherwise the blade may come from any source, for
example, it might come from a counter, a timestamp, a <xref target="NOID"/> minter,
a legacy 100-year-old accession number, etc.  If there is a check
digit, it is expected to appear at the end of the blade and to be
computed over the base compact name minus the label part (see Check
Zone), which is generally the most important part of an ARK to make
opaque.  In particular, check digits are not expected to cover
qualifiers, which often name subobjects of a persistent object that
are less stable and less opaquely named than the parent object (for
example, ten years hence, the object's thumbnail image will be of a
higher resolution and the OCR text file will be re-derived with
improved algorithms.</t>
          <t>It is important not to use any delimiter between the shoulder string
and blade string, especially not a "/" since it declares an object
boundary (see the section on ARKs that reveal object hierarchy).</t>
          <artwork><![CDATA[
    ark:12345/x6np1wh8k/c2/s4.pdf       # correct primordinal shoulder
    ark:12345/x6/np1wh8k/c2/s4.pdf      # INCORRECT
                ^ WRONG
]]></artwork>
          <t>This little bit of discretion shields organizations from end users
making inferences about expected levels of support based on
recognizable shoulders.  To help in-house ARK administrators reliably
know where the shoulder ends, it is recommended to use the "first-
digit convention" so that shoulders are "primordinal".  A primordinal
shoulder is a sequence of one or more betanumeric characters ending
in a digit, as shown above.  This means that the shoulder is all
consonant letters (often just one) after the NAAN and "/" up to and
including the first digit encountered after the NAAN.  One property
of primordinal shoulders is that there is an infinite number of them
possible under any NAAN.</t>
          <t>To help manage each namespace into the future, NAAs are encouraged to
create shoulders, even if there is only one to start with.  If an
organization wishes to create a shoulder under one of shared NAANs
(99999, 12345, 99152, or 99166, described in Table 2), it should fill
out the Shoulder Request Form <xref target="shoulderrequest"/>.</t>
        </section>
      </section>
      <section anchor="the-qualifier-part">
        <name>The Qualifier Part</name>
        <t>The part of the ARK following the NAA-assigned Name is an optional
Qualifier.  It is a string that extends the Base Name in order to
create a kind of service entry point into the object named by the
NAA.  At the discretion of the providing NMA, such a service entry
point permits an ARK to support access to individual hierarchical
components and subcomponents of an object, and to variants (versions,
languages, formats) of components.  A Qualifier may be invented by
the NAA or by any NMA servicing the object.</t>
        <t>In form, the Qualifier is a ComponentPath, or a VariantPath, or a
ComponentPath followed by a VariantPath.  A VariantPath is introduced
and subdivided by the reserved character '.', and a ComponentPath is
introduced and subdivided by the reserved character '/'.  In this
example,</t>
        <artwork><![CDATA[
    https://example.org/ark:12345/x6np1wh8k/c3/s5.v7.xsl
]]></artwork>
        <t>the string "/c3/s5" is a ComponentPath and the string ".v7.xsl" is
a VariantPath.  The ARK Qualifier is a formalization of some
currently mainstream URL syntax conventions.  This formalization
specifically reserves meanings that permit recipients to make strong
inferences about logical sub-object containment and equivalence based
only on the form of the received identifiers; there is great
efficiency in not having to inspect metadata records to discover such
relationships.  NMAs are free not to disclose any of these
relationships merely by avoiding the reserved characters above.
Hierarchical components and variants are discussed further in the
next two sections.</t>
        <t>The Qualifier, if present, differs from the Name in several important
respects.  First, a Qualifier may have been assigned either by the
NAA or later by the NMA.  The assignment of a Qualifier by an NMA
effectively amounts to an act of publishing a service entry point
within the conceptual object originally named by the NAA.  For our
purposes, an ARK extended with a Qualifier assigned by an NMA will be
called an NMA-qualified ARK.</t>
        <t>Second, a Qualifier assignment on the part of an NMA is made in
fulfillment of its service obligations and may reflect changing
service expectations and technology requirements.  NMA-qualified ARKs
could therefore be transient, even if the base, unqualified ARK is
persistent.  For example, it would be reasonable for an NMA to
support access to an image object through an actionable ARK that is
considered persistent even if the experience of that access changes
as linking, labeling, and presentation conventions evolve and as
format and security standards are updated.  For an image "thumbnail",
that NMA could also support an NMA-qualified ARK that is considered
impersistent because the thumbnail will be replaced with higher
resolution images as network bandwidth and CPU speeds increase.  At
the same time, for an originally scanned, high-resolution master, the
NMA could publish an NMA-qualfied ARK that is itself considered
persistent.  Of course, the NMA must be able to return its separate
commitments to unqualified, NAA-assigned ARKs, to NMA-qualified ARKs,
and to any NAA-qualified ARKs that it supports.</t>
        <t>A third difference between a Qualifier and a Name concerns the
semantic opaqueness constraint.  When an NMA-qualified ARK is to be
used as a transient service entry point into a persistent object, the
priority given to semantic opaqueness observed by the NAA in the Name
part may be relaxed by the NMA in the Qualifier part.  If service
priorities in the Qualifier take precedence over persistence, short-
term usability considerations may recommend somewhat semantically
laden Qualifier strings.</t>
        <t>Finally, not only is the set of Qualifiers supported by an NMA
mutable, but different NMAs may support different Qualifier sets for
the same NAA-identified object.  In this regard the NMAs act
independently of each other and of the NAA.</t>
        <t>The next two sections describe how ARK syntax may be used to declare,
or to avoid declaring, certain kinds of relatedness among qualified
ARKs.</t>
        <section anchor="arks-that-reveal-object-hierarchy">
          <name>ARKs that Reveal Object Hierarchy</name>
          <t>An NAA or NMA may choose to reveal the presence of a hierarchical
relationship between objects using the '/' (slash) character after
the Name part of an ARK.  Some authorities will choose not to
disclose this information, while others will go ahead and disclose so
that manipulators of large sets of ARKs can infer object
relationships by simple identifier inspection; for example, this
makes it possible for a system to present a collapsed view of a large
search result set.</t>
          <t>If the ARK contains an internal slash after the NAAN, the piece to
its left indicates a containing object.  For example, publishing an
ARK of the form,</t>
          <artwork><![CDATA[
    ark:12345/x54/xz/321
]]></artwork>
          <t>is equivalent to publishing three ARKs,</t>
          <artwork><![CDATA[
    ark:12345/x54/xz/321
    ark:12345/x54/xz
    ark:12345/x54
]]></artwork>
          <t>together with a declaration that the first object is contained in the
second object, and that the second object is contained in the third.</t>
          <t>Revealing the presence of hierarchy is completely up to the assigner
(NMA or NAA).  It is hard enough to commit to one object's name, let
alone to three objects' names and to a specific, ongoing relatedness
among them.  Thus, regardless of whether hierarchy was present
initially, the assigner, by not using slashes, reveals no shared
inferences about hierarchical or other inter-relatedness in the
following ARKs:</t>
          <artwork><![CDATA[
    ark:12345/x54_xz_321
    ark:12345/x54_xz
    ark:12345/x54xz321
    ark:12345/x54xz
    ark:12345/x54
]]></artwork>
          <t>Note that slashes around the ARK's NAAN (/12345/ in these examples)
are not part of the ARK's Name and therefore do not indicate the
existence of some sort of NAAN super object containing all objects in
its namespace.  A slash must have at least one non-structural
character (one that is neither a slash nor a period) on both sides in
order for it to separate recognizable structural components.  So
initial or final slashes may be removed, and double slashes may be
converted into single slashes.</t>
        </section>
        <section anchor="arks-that-reveal-object-variants">
          <name>ARKs that Reveal Object Variants</name>
          <t>An NAA or NMA may choose to reveal the possible presence of variant
objects or object components using the '.' (period) character after
the Name part of an ARK.  Some authorities will choose not to
disclose this information, while others will go ahead and disclose so
that manipulators of large sets of ARKs can infer object
relationships by simple identifier inspection.  This makes it
possible for a system to present a collapsed view of a large number
of search result items without having to issue database queries in
order to retrieve and analyze the inter-relatedness among all of
those items.</t>
          <t>If the ARK contains an internal period after the Name, the piece to
the left of the first such period is a root name and the piece to its
right, and up to the end of the ARK or to the next period is a
suffix.  A Name may have more than one suffix, for example,</t>
          <artwork><![CDATA[
    ark:12345/x54.24
    ark:12345/x4z/x54.24
    ark:12345/x54.v18.fr.odf
]]></artwork>
          <t>There are two main rules.  First, if two ARKs share the same root
name but have different suffixes, the corresponding objects were
considered variants of each other (different formats, languages,
versions, etc.) by the assigner (NMA or NAA).  Thus, the following
ARKs are variants of each other:</t>
          <artwork><![CDATA[
    ark:12345/x54.v18.fr.odf
    ark:12345/x54.321xz
    ark:12345/x54.44
]]></artwork>
          <t>Second, publishing an ARK with a suffix implies the existence of at
  least one variant identified by the ARK without its suffix.  The ARK
  is otherwise silent about what additional variants might exist.  So
  publishing the ARK,</t>
          <artwork><![CDATA[
    ark:12345/x54.v18.fr.odf
]]></artwork>
          <t>is equivalent to publishing the four ARKs,</t>
          <artwork><![CDATA[
    ark:12345/x54.v18.fr.odf
    ark:12345/x54.v18.fr
    ark:12345/x54.v18
    ark:12345/x54
]]></artwork>
          <t>Revealing the possibility of variants is completely up to the
assigner.  It is hard enough to commit to one object's name, let
alone to multiple variants' names and to a specific, ongoing
relatedness among them.  The assigner is the sole arbiter of what
constitutes a variant within its namespace, and whether to reveal
that kind of relatedness by using periods within its names.</t>
          <t>A period must have at least one non-structural character (one that is
neither a slash nor a period) on both sides in order for it to
separate recognizable structural components.  So initial or final
periods may be removed, and adjacent periods may be converted into a
single period.</t>
        </section>
      </section>
    </section>
    <section anchor="ark-processing">
      <name>ARK Processing</name>
      <section anchor="character-repertoires">
        <name>Character Repertoires</name>
        <t>The Name and Qualifier parts are strings of visible ASCII characters.
For received ARKs, implementations must support a minimum length of
255 octets for the string composed of the Base Name plus Qualifier.
Implementations generating strings exceeding this length should
understand that receiving implementations may not be able to index
such ARKs properly.  Characters may be letters, digits, or any of
these seven characters:</t>
        <artwork><![CDATA[
    =   ~   *   +   @   _   $
]]></artwork>
        <t>The following characters may also be used, but their meanings are
reserved:</t>
        <artwork><![CDATA[
    %   -   .   /
]]></artwork>
        <t>The characters '/' and '.' are ignored if either appears as the last
character of an ARK.  If used internally, they allow a name assigner
to reveal object hierarchy and object variants as previously
described.</t>
        <t>Hyphens are considered to be insignificant and are always ignored in
ARKs.  A '-' (hyphen) may appear in an ARK for readability, or it may
have crept in during the formatting and wrapping of text, but it must
be ignored in lexical comparisons.  As in a telephone number, hyphens
have no meaning in an ARK.  It is always safe for an NMA that
receives an ARK to remove any hyphens found in it.  As a result, like
the NMA, hyphens are "identity inert" in comparing ARKs for
equivalence.  For example, the following ARKs are equivalent for
purposes of comparison and ARK service access:</t>
        <artwork><![CDATA[
                              ark:12345/x5-4-xz-321
     https://sneezy.dopey.com/ark:12345/x54--xz32-1
                              ark:12345/x54xz321
]]></artwork>
        <t>The '%' character is reserved for %-encoding all other octets that
would appear in the ARK string, in the same manner as for URIs
<xref target="RFC3986"/>.  A %-encoded octet consists of a '%' followed by two
uppercase hex digits; for example, "%7D" stands in for '}'.
Uppercase hex digits are preferred for compatibility with URI
encoding conventions, especially useful when URL-based ARKs are
compared for equivalence by ARK-unaware software systems; thus use
"%ACT" instead of "%acT".  The character '%' itself must be
represented using "%25".  As with URNs, %-encoding permits ARKs to
support legacy namespaces (e.g., ISBN, ISSN, SICI) that have less
restricted character repertoires <xref target="RFC2288"/>.</t>
        <t>Implementors should be prepared to normalize some common invalid
characters that may be found in ARKs copy pasted from processed text.
For example, when pasting an ARK that was broken during line
wrapping, a user may inadvertently propagate newlines, spaces,
hyphens, and hyphen-like characters (eg, U+2010 to U+2015) that were
introduced by the publisher.  The normalization strategy is up to the
implementor and may include converting hyphen-like characters to
hyphens and removing whitespace.</t>
      </section>
      <section anchor="normalization-and-lexical-equivalence">
        <name>Normalization and Lexical Equivalence</name>
        <t>To determine if two or more ARKs identify the same object, the ARKs
are compared for lexical equivalence after first being normalized.
Since ARK strings may appear in various forms (e.g., having different
NMAs), normalizing them minimizes the chances that comparing two ARK
strings for equality will fail unless they actually identify
different objects.  In a specified-host ARK (one having an NMA), the
NMA never participates in such comparisons.  Normalization described
here serves to define lexical equivalence but does not restrict how
implementors normalize ARKs locally for storage.</t>
        <t>Normalization of a received ARK for the purpose of octet-by-octet
equality comparison with another ARK consists of the following steps.</t>
        <ol spacing="normal" type="1"><li>
            <t>The NMA part (eg, everything from an initial "https://" up to
the first occurrence of "/ark:"), if present is removed.</t>
          </li>
          <li>
            <t>Any URI query string is removed (everything from the first
literal '?' to the end of the string).</t>
          </li>
          <li>
            <t>The first case-insensitive match on "ark:/" or "ark:" is
converted to "ark:" (replacing any uppercase letters and
removing any terminal '/').</t>
          </li>
          <li>
            <t>Any uppercase letters in the NAAN are converted to lowercase.</t>
          </li>
          <li>
            <t>In the string that remains, the two characters following every
occurrence of '%' are converted to uppercase.  The case of all
other letters in the ARK string must be preserved.</t>
          </li>
          <li>
            <t>All hyphens are removed.  Implementors should be aware that non-
ASCII hyphen-like characters (eg, U+2010 to U+2015) may arrive
in the place of hyphens and, if they wish, remove them.</t>
          </li>
          <li>
            <t>If normalization is being done as part of a resolution step, and
if the end of the remaining string matches a known inflection,
the inflection is noted and removed.</t>
          </li>
          <li>
            <t>Structural characters (slash and period) are normalized: initial
and final occurrences are removed, and two structural characters
in a row (e.g., // or ./) are replaced by the first character,
iterating until each occurrence has at least one non-structural
character on either side.</t>
          </li>
          <li>
            <t>If there are any components with a period on the left and a
slash on the right, either the component and the preceding
period must be moved to the end of the Name part or the ARK must
be thrown out as malformed.</t>
          </li>
        </ol>
        <t>The resulting ARK string is now normalized.  Comparisons between
normalized ARKs are case-sensitive, meaning that uppercase letters
are considered different from their lowercase counterparts.</t>
        <t>To keep ARK string variation to a minimum, no reserved ARK characters
should be %-encoded unless it is deliberately to conceal their
reserved meanings.  No non-reserved ARK characters should ever be
%-encoded.  Finally, no %-encoded character should ever appear in an
ARK in its decoded form.</t>
      </section>
      <section anchor="resolver-chains-and-roles">
        <name>Resolver Chains and Roles</name>
        <t>To resolve a Compact ARK (ie, an ARK beginning "ark:") it must
initially be promoted to a Mapping ARK so that it becomes actionable.
On the web, this means finding a suitable web Resolver Service to
prepend to the compact form of the identifier in order to convert it
to a URL (cf <xref target="CURIE"/>).  (This is more or less true for any type of
identifier not already in URL form.)</t>
        <t>The identifier's Resolver Service is the first point of contact in
the resolution process (eg, the NMA in a typical URL).  It can be
seen as the "first resolver" because resolution may involve multiple
redirections via a chain of resolvers before a resolution response is
returned by the last resolver (the "responder").  The chain is as
long as the number of redirections.  In particular, when the first
resolver is also the last resolver, the chain has zero length.  Most
ARKs using N2T.net as the first resolver will be redirected to a
second resolver listed in the record for a given ARK's NAAN.  For
example, an ARK bearing the NAAN 12148 (BnF) and the NMA n2t.net (as
its first resolver) could be redirected to a second resolver,
ark.bnf.fr.  Whether n2t.net or ark.bnf.fr will be the first resolver
depends on what NMA appears in the ARK at the time of resolution.
Currently, BnF ARKs are published with the BnF's NMA (ark.bnf.fr), so
most BnF ARKs will not start with n2t.net.</t>
        <t>Resolution in general can be seen as a multi-stage computation that
maps a client identifier to some sort of response.  On the web, each
resolver in the chain is an HTTP server; even if the "responder"
(last resolver) is a proxy server that intiates a non-web sub-
resolution process, that is invisible to the original client and out
of scope for this discussion.  A web resolution response may take on
a variety of forms, including the return of a landing page, or a
metadata record, or a web-based 404 Not Found message.  A given
response, as well as the specific chain of resolvers traversed,
depends not only on the identifier, but also on such things as the
time, location, credentials, and technical platform of the client
initiating resolution.</t>
        <t>Also, for a given identifier, the "responder" (last resolver) for an
object request may be different from the responder for a metadata
request.  While maintenance of objects and their metadata are often
co-located in one organization, for technical reasons it is not
uncommon that requests for objects and metadata are forwarded to
different responders.  To add credibility to a persistence promise,
it can be useful to maintain a secondary copy of object metadata at
an external and publicly visible resolver.  For example, N2T.net was
originally designed to store a secondary copy of metadata for many
millions of identifiers.</t>
        <t>If an ARK Resolver Service receives a request for a NAAN that it knows
nothing about, best practice is to redirect the request to N2T.net.</t>
      </section>
      <section anchor="finding-a-resolver-service">
        <name>Finding a Resolver Service</name>
        <t>In order to discover if a given host or origin <xref target="RFC6454"/> implements
an ARK Resolver Service, it is recommended that it respond to the
"/.well-known/ark" URI suffix <xref target="RFC8615"/> as described in the IANA
Considerations section.</t>
        <t>Given either a Compact ARK (missing an NMA) or an ARK with a non-functioning
NMA, in order to derive an actionable identifier (these days, a URL),
a Resolver Service must be found.  On the web, the Resolver
Service consists of a URI scheme and an NMA, where the NMA is a host
or host/port combination, optionally followed by URI-type path
components, all ending in a '/'.  The Resolver Service is expected to
respond to basic ARK service requests.  An NMA may provide mapping
services for more than one NAAN.</t>
        <t>Upon encountering an ARK, a user (or client software) determines if
it is a Mapping ARK (ie, it is a URL beginning with a Resolver
Service).  If the Resolver Service is working, this discovery step
likely can be skipped assuming the URL correctly identifies a working
resolver.  If a new Resolver Service needs to be found, the client
looks inside the ARK again for the NAAN (Name Assigning Authority
Number).  Querying a global database, it then uses the NAAN to look
up all current Resolver Services that service ARKs issued by the
identified NAA.  This NAAN-to-NMA resolver discovery method is common
(cf URN, Handle, DOI) but does not address the namespace splitting
problem, which is when a portion of a NAAN space originally
maintained entirely by one NMA is taken on by a second NMA; now the
NAAN alone cannot reveal which NMA (resolver) to choose.</t>
        <t>The global database is key, and ideally the lookup would be automatic
and transparent to the user.  For this, the current mainstream method
is to use the resolver chain that starts with the Name-to-Thing (N2T)
Resolver <xref target="N2T"/> at n2t.net.  While the sequence of hops in the redirect
chain behind N2T is subject to change (as with any redirection strategy
that supports persistent naming), the N2T chain is meant to provide
several durable capabilities. N2T is a reliable, lightweight Resolver
Service provided by the ARK Alliance primarily to support actionable
HTTP-based URLs for as long as HTTP is used.</t>
        <t>For example, the N2T chain can return metadata about individual
ARK-identified resources, but in 2024 n2t.net itself (as the first
resolver in the chain) stopped returning such metadata immediately
and instead began delegating them to resolvers further along the chain.
Similarly, the N2T chain redirects ARKs to local resolvers on a per-NAAN
basis, but in 2024 n2t.net stopped redirecting immediately to those
resolvers and instead began redirecting them to a subdomain (under
arks.org) that held such per-NAAN knowledge. The N2T chain is designed
to anticipate future specialty subresolvers that can provide such things
as backup copies of per-resource metadata (for resilience) or per-resource
redirection when a NAAN namespace splits and not all ARKs under a given
NAAN can be redirected by just one NMA.</t>
        <t>The knowledge about where a given NAAN can be resolved is contained in a
plain text <xref target="NAANregistry"/> file. As a machine- and human-readable database,
it contains explanatory comments that can be directly inspected by users,
for example, when manually looking for a Resolver Service.
An appendix describes an historical way to discover an NMA based on a
simplification of the URN resolver discovery method, itself very
similar in principle to the resolver discovery method used by Handles
and DOIs.  None of these methods does more than what can be done with
a very small, consortially maintained web server such as <xref target="N2T"/>.</t>
        <t>In the interests of long-term persistence, however, ARK mechanisms
are first defined in high-level, protocol-independent terms so that
mechanisms may evolve and be replaced over time without compromising
fundamental service objectives.  Either or both specific methods
given here may eventually be supplanted by better methods since, by
design, the ARK scheme does not depend on a particular method, but
only on having some method to locate an active NMA.</t>
        <t>At the time of issuance, at least one NMA for an ARK should be
prepared to service it.  That NMA may or may not be administered by
the Name Assigning Authority (NAA) that created it.  Consider the
following hypothetical example of providing long-term access to a
cancer research journal.  The publisher wishes to turn a profit and a
national library wishes to preserve the scholarly record.  An
agreement might be struck whereby the publisher would act as the NAA
and the national library would archive the journal issue when it
appears, but without providing direct access for the first six
months.  During the first six months of peak commercial viability,
the publisher would retain exclusive delivery rights and would charge
access fees.  Again, by agreement, both the library and the publisher
would act as NMAs, but during that initial period the library would
redirect requests for issues less than six months old to the
publisher.  At the end of the waiting period, the library would then
begin servicing requests for issues older than six months by tapping
directly into its own archives.  Meanwhile, the publisher might
routinely redirect incoming requests for older issues to the library.
Long-term access is thereby preserved, and so is the commercial
incentive to publish content.</t>
        <t>Although it will be common for an NAA also to run an NMA service, it
is never a requirement.  Over time NAAs and NMAs will come and go.
One NMA will succeed another, and there might be many NMAs serving
the same ARKs simultaneously (e.g., as mirrors or as competitors).
There might also be asymmetric but coordinated NMAs as in the
library-publisher example above.</t>
      </section>
    </section>
    <section anchor="naming-considerations">
      <name>Naming Considerations</name>
      <t>The most important threats faced by persistence providers include
such things as funding loss, natural disaster, political and social
upheaval, processing faults, and errors in human oversight.  There is
nothing that an identifer scheme can do about such things.  Still, a
few observed identifier failures and inconveniences can be traced
back to naming practices that we now know to be less than optimal for
persistence.</t>
      <section anchor="arks-and-usability">
        <name>ARKs and Usability</name>
        <t>Because linguistic constructs imperil persistence, for ARKs non-ASCII
character support is not a priority.  ARKs and URIs share goals of
transcribability and transportability within web documents, so
characters are required to be visible, non-conflicting with HTML/XML
syntax, and not subject to tampering during transmission across
common transport gateways.</t>
        <t>Any measure that reduces user irritation with an identifier will
increase its chances of acceptance, hence survival.
Irritation can arise when common user assumptions are not shared by
service providers. For example, providers may wish to avoid leading
zeroes in an identifier component that looks like a number because
users who assume that leading zeroes contribute nothing to that quantity
may omit them during transcription. Also, unless an identifier already
employs mixed case letters, users often assume uppercase letters to be
equivalent to their lowercase counterparts, in which instance (e.g., a
shoulder that employs only one case) a provider may wish to accept incoming
ARKs in either uppercase or lowercase. Another common user assumption is
that hyphens are lexically insignificant.  It is fine to publish ARKs
with hyphens in them (e.g., such as the output of UUID/GUID
generators), but the uniform treatment of hyphens (and their Unicode
equivalents) as insignificant reduces the possibility of identifiers
breaking when users omit hyphens or when word processors add them.</t>
      </section>
      <section anchor="objects-should-wear-their-identifiers">
        <name>Objects Should Wear Their Identifiers</name>
        <t>A valuable technique for provision of persistent objects is to try to
arrange for the complete identifier to appear on, with, or near its
retrieved object.  An object encountered at a moment in time when its
discovery context has long since disappeared could then easily be
traced back to its metadata, to alternate versions, to updates, etc.
This has seen reasonable success, for example, in book publishing and
software distribution.  An identifier string only has meaning when
its association is known, and this a very sure, simple, and low-tech
method of reminding everyone exactly what that association is.</t>
      </section>
      <section anchor="names-are-political-not-technological">
        <name>Names are Political, not Technological</name>
        <t>If persistence is the goal, a deliberate local strategy for
systematic name assignment is crucial.  Names must be chosen with
great care.  Poorly chosen and managed names will devastate any
persistence strategy, and they do not discriminate by identifier
scheme.  Whether a mistakenly re-assigned name is a URN, DOI, PURL,
URL, or ARK, the damage -- failed access and confusion -- is not
mitigated more in one scheme than in another.  Conversely, in-house
efforts to manage names responsibly will go much further towards
safeguarding persistence than any choice of naming scheme or name
resolution technology.</t>
        <t>Branding (e.g., at the corporate or departmental level) is important
for funding and visibility, but substrings representing brands and
organizational names should be given a wide berth except when
absolutely necessary in the hostname (the identity-inert) part of the
ARK.  These substrings are not only unstable because organizations
change frequently, but they are also dangerous because successor
organizations often have political or legal reasons to actively
suppress predecessor names and brands.  Any measure that reduces the
chances of future political or legal pressure on an identifier will
decrease the chances that our descendants will be obliged to
deliberately break it.</t>
      </section>
      <section anchor="choosing-a-hostname-or-nma">
        <name>Choosing a Hostname or NMA</name>
        <t>Hostnames appearing in any identifier meant to be persistent must be
chosen with extra care.  The tendency in hostname selection has
traditionally been to choose a token with recognizable attributes,
such as a corporate brand, but that tendency wreaks havoc with
persistence that is supposed to outlive brands, corporations, subject
classifications, and natural language semantics (e.g., what did the
three letters "gay" mean in 1958, 1978, and 1998?).  Today's
recognized and correct attributes are tomorrow's stale or incorrect
attributes.  In making hostnames (any names, actually) long-term
persistent, it helps to eliminate recognizable attributes to the
extent possible.  This affects selection of any name based on URLs,
including PURLs and the explicitly disposable NMAs.</t>
        <t>There is no excuse for a provider that manages its internal names
impeccably not to exercise the same care in choosing what could be an
exceptionally durable hostname, especially if it would form the
prefix for all the provider's URL-based external names.  Registering
an opaque hostname in the ".org" or ".net" domain would not be a bad
start.  Another way is to publish your ARKs with an organizational
domain name that will be mapped by DNS to an appropriate NMA host.
This makes for shorter names with less branding vulnerability.</t>
        <t>It is a mistake to think that hostnames are inherently unstable.  If
you require brand visibility, that may be a fact of life.  But things
are easier if yours is the brand of long-lived cultural memory
institution such as a national or university library or archive.
Well-chosen hostnames from organizations that are sheltered from the
direct effects of a volatile marketplace can easily provide longer-
lived global resolvers than the domain names explicitly or implicitly
used as starting points for global resolution by indirection-based
persistent identifier schemes.  For example, it is hard to imagine
circumstances under which the Library of Congress' domain name would
disappear sooner than, say, "handle.net".</t>
        <t>For smaller libraries, archives, and preservation organizations,
there is a natural concern about whether they will be able to keep
their web servers and domain names in the face of uncertain funding.
One option is to form or join a group of like-minded organizations
with the purpose of providing mutual preservation support.  The first
goal of such a group would be to perpetually rent a hostname on which
to establish a web server that simply redirects incoming member
organization requests to the appropriate member server; using ARKs,
for example, a 150-member group could run a very small server (24x7)
that contained nothing more than 150 rewrite rules in its
configuration file.  Even more helpful would be additional consortial
support for a member organization that was unable to continue
providing services and needed to find a successor archival
organization.  This would be a low-cost, low-tech way to publish ARKs
(or URLs) under highly persistent hostnames.</t>
        <t>There are no obvious reasons why the organizations registering DNS
names, URN Namespaces, and DOI publisher IDs should have among them
one that is intrinsically more fallible than the next.  Moreover, it
is a misconception that the demise of DNS and of HTTP need adversely
affect the persistence of URLs.  At such a time, certainly URLs from
the present day might not then be actionable by our present-day
mechanisms, but resolution systems for future non-actionable URLs are
no harder to imagine than resolution systems for present-day non-
actionable URNs and DOIs.  There is no more stable a namespace than
one that is dead and frozen, and that would then characterize the
space of names bearing the "http://" or "https://" prefix.  It is
useful to remember that just because hostnames have been carelessly
chosen in their brief history does not mean that they are unsuitable
in NMAs (and URLs) intended for use in situations demanding the
highest level of persistence available in the Internet environment.
A well-planned name assignment strategy is everything.</t>
      </section>
      <section anchor="assigners-of-arks">
        <name>Assigners of ARKs</name>
        <t>A Name Assigning Authority (NAA) is an organization that creates (or
delegates creation of) long-term associations between identifiers and
information objects.  Examples of NAAs include national libraries,
national archives, and publishers.  An NAA may arrange with an
external organization for identifier assignment.  The US Library of
Congress, for example, allows OCLC (the Online Computer Library
Center, a major world cataloger of books) to create associations
between Library of Congress call numbers (LCCNs) and the books that
OCLC processes.  A cataloging record is generated that testifies to
each association, and the identifier is included by the publisher,
for example, in the front matter of a book.</t>
        <t>An NAA does not so much create an identifier as create an
association.  The NAA first draws an unused identifier string from
its namespace, which is the set of all identifiers under its control.
It then records the assignment of the identifier to an information
object having sundry witnessed characteristics, such as a particular
author and modification date.  A namespace is usually reserved for an
NAA by agreement with recognized community organizations (such as
IANA and ISO) that all names containing a particular string be under
its control.  In the ARK an NAA is represented by the Name Assigning
Authority Number (NAAN).</t>
        <t>The ARK namespace reserved for an NAA is the set of names bearing its
particular NAAN.  For example, all strings beginning with
"ark:12345/" are under control of the NAA registered under 12345,
which might be the National Library of Finland.  Because each NAA has
a different NAAN, names from one namespace cannot conflict with those
from another.  Each NAA is free to assign names from its namespace
(or delegate assignment) according to its own policies.  These
policies must be documented in a manner similar to the declarations
required for URN Namespace registration <xref target="RFC2611"/>.</t>
        <t>Organizations can request or update a NAAN by filling out the NAAN
Request Form <xref target="NAANrequest"/>.</t>
      </section>
      <section anchor="naan-namespace-management">
        <name>NAAN Namespace Management</name>
        <t>Every NAA should have a namespace management strategy.  A classic
hierarchical approach is to partition a NAAN namespace into
subnamespaces known as "shoulders".  As explained in Section 2.4.1,
each shoulder is a unique prefix that guarantees non-collision of
names in different partitions.  This practice is strongly encouraged
for all NAAs, especially when subnamespace management and assignment
streams will be delegated to departments, units, or projects within
an organization.  For example, with a NAAN that is assigned to a
university and managed by its main library, the library should take
care to reserve shoulders (semantically opaque shoulders being
preferred) for distinct assignment streams.  Prefix-based partition
management is typically an important responsibility of the NAA.</t>
        <t>This shoulder delegation approach plays out differently in two real-
world examples: DNS names and ISBN identifiers.  In the former, the
hierarchy is deliberately exposed and in the latter it is hidden.
Rather than using lexical boundary markers such as the period ('.')
found in domain names, the ISBN uses a publisher prefix but doesn't
disclose where the prefix ends and the publisher's assigned name
begins.  This practice of non-disclosure, found in the ISBN and ISSN
schemes, is encouraged in assigning ARKs because it reduces the
visibility of an assertion that is probably not important now and may
become a vulnerability later.</t>
        <t>If longevity is the goal, it is important to keep the prefixes free
of recognizable semantics; for example, using an acronym representing
a project or a department is discouraged.  At the same time, you may
wish to set aside a subnamespace for testing purposes under a
shoulder such as "fk9..." that can serve as a visual clue and
reminder to maintenance staff that this "fake" identifier was never
published.</t>
        <t>There are other measures one can take to avoid user confusion,
transcription errors, and the appearance of accidental semantics when
creating identifiers.  If you are generating identifiers
automatically, pure numeric identifiers are likeley to be
semantically opaque enough, but it's probably useful to avoid leading
zeroes because some users mistakenly treat them as optional, thinking
(arithmetically) that they don't contribute to the "value" of the
identifier.</t>
        <t>If you need lots of identifiers and you don't want them to get too
long, you can mix digits with consonants (but avoid vowels since they
might accidentally spell words) to get more identifiers without
increasing the string length.  In this case you may not want more
than a two letters in a row because it reduces the chance of
generating acronyms.  Generator tools such as <xref target="NOID"/> provide support
for these sorts of identifiers, and can also add a computed check
character as a guarantee against the most common transcription
errors.  If used, it is recommended that the check character be
appended to the original Base Compact Name string (ie, minus the
check character), that original string having been the basis for
computing the check character.</t>
      </section>
      <section anchor="sub-object-naming">
        <name>Sub-Object Naming</name>
        <t>As mentioned previously, semantically opaque identifiers are very
useful for long-term naming of abstract objects, however, it may be
appropriate to extend these names with less opaque extensions that
reference contemporary service entry points (sub-objects) in support
of the object.  Sub-object extensions beginning with a digit or
underscore ('_') are reserved for the possibilty of developing a
future registry of canonical service points (e.g., numeric references
to versions, formats, languages, etc).</t>
      </section>
    </section>
    <section anchor="generic-ark-service-definition">
      <name>Generic ARK Service Definition</name>
      <t>An ARK request's output is delivered information; examples include
the object itself, a policy declaration (e.g., a promise of support),
a descriptive metadata record, or an error message.  The experience
of object delivery is expected to be an evolving mix of information
that reflects changing service expectations and technology
requirements; contemporary examples include such things as an object
summary and component links formatted for human consumption.  ARK
services must be couched in high-level, protocol-independent terms if
persistence is to outlive today's networking infrastructural
assumptions.  The high-level ARK service definitions listed below are
followed in the next section by a concrete method (one of many
possible methods) for delivering these services with today's
technology.  Note that some services may be invoked in one operation,
such as when an "?info" inflection returns both a description and a
permanence declaration for an object.</t>
      <section anchor="generic-ark-access-service-access-location">
        <name>Generic ARK Access Service (access, location)</name>
        <t>Returns (a copy of) the object or a redirect to the same, although a
sensible object proxy may be substituted.  Examples of sensible
substitutes include,</t>
        <ul spacing="normal">
          <li>
            <t>a table of contents instead of a large complex document,</t>
          </li>
          <li>
            <t>a home page instead of an entire web site hierarchy,</t>
          </li>
          <li>
            <t>a rights clearance challenge before accessing protected data,</t>
          </li>
          <li>
            <t>directions for access to an offline object (e.g., a book),</t>
          </li>
          <li>
            <t>a description of an intangible object (a disease, an event), or</t>
          </li>
          <li>
            <t>an applet acting as "player" for a large multimedia object.</t>
          </li>
        </ul>
        <t>May also return a discriminated list of alternate object locators.
If access is denied, returns an explanation of the object's current
(perhaps permanent) inaccessibility.</t>
        <section anchor="generic-policy-service-permanence-naming-etc">
          <name>Generic Policy Service (permanence, naming, etc.)</name>
          <t>Returns declarations of policy and support commitments for given
ARKs.  Declarations are returned in either a structured metadata
format or a human readable text format; sometimes one format may
serve both purposes.  Policy subareas may be addressed in separate
requests, but the following areas should be covered: object
permanence, object naming, object fragment addressing, and
operational service support.</t>
          <t>The permanence declaration for an object is a rating defined with
respect to an identified permanence provider (guarantor), which will
be the NMA. It may include the following aspects.</t>
          <ol spacing="normal" type="1"><li>
              <t>"object availability" -- whether and how access to the object
is supported (e.g., online 24x7, or offline only),</t>
            </li>
            <li>
              <t>"identifier validity" -- under what conditions the identifier
will be or has been re-assigned,</t>
            </li>
            <li>
              <t>"content invariance" -- under what conditions the content of
the object is subject to change, and</t>
            </li>
            <li>
              <t>"change history" -- access to corrections, migrations, and
revisions, whether through links to the changed objects themselves
or through a document summarizing the change history</t>
            </li>
          </ol>
          <t>One approach to persistence statements, conceived independently from
ARKs, can be found at <xref target="PStatements"/>, with ongoing work available at
<xref target="ARKspecs"/>.  An older approach to a permanence rating framework is
given in <xref target="NLMPerm"/>, which identified the following "permanence
levels":</t>
          <ul empty="true">
            <li>
              <t>Not Guaranteed: No commitment has been made to retain this
  resource.  It could become unavailable at any time.  Its
  identifier could be changed.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>Permanent: Dynamic Content: A commitment has been made to keep
  this resource permanently available.  Its identifier will always
  provide access to the resource.  Its content could be revised or
  replaced.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>Permanent: Stable Content: A commitment has been made to keep this
  resource permanently available.  Its identifier will always
  provide access to the resource.  Its content is subject only to
  minor corrections or additions.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>Permanent: Unchanging Content: A commitment has been made to keep
  this resource permanently available.  Its identifier will always
  provide access to the resource.  Its content will not change.</t>
            </li>
          </ul>
          <t>Naming policy for an object includes an historical description of the
NAA's (and its successor NAA's) policies regarding differentiation of
objects.  Since it is the NMA that responds to requests for policy
statements, it is useful for the NMA to be able to produce or
summarize these historical NAA documents.  Naming policy may include
the following aspects.</t>
          <ol spacing="normal" type="1"><li>
              <t>"similarity" -- (or "unity") the limit, defined by the NAA, to
  the level of dissimilarity beyond which two similar objects
  warrant separate identifiers but before which they share one
  single identifier, and</t>
            </li>
            <li>
              <t>"granularity" -- the limit, defined by the NAA, to the level
  of object subdivision beyond which sub-objects do not warrant
  separately assigned identifiers but before which sub-objects are
  assigned separate identifiers.</t>
            </li>
          </ol>
          <t>Subnaming policy for an object describes the qualifiers that the NMA,
in fulfilling its ongoing and evolving service obligations, allows as
extensions to an NAA-assigned ARK.  To the conceptual object that the
NAA named with an ARK, the NMA may add component access points and
derivatives (e.g., format migrations in aid of preservation) in order
to provide both basic and value-added services.</t>
          <t>Addressing policy for an object includes a description of how, during
access, object components (e.g., paragraphs, sections) or views
(e.g., image conversions) may or may not be "addressed", in other
words, how the NMA permits arguments or parameters to modify the
object delivered as the result of an ARK request.  If supported,
these sorts of operations would provide things like byte-ranged
fragment delivery and open-ended format conversions, or any set of
possible transformations that would be too numerous to list or to
identify with separately assigned ARKs.</t>
          <t>Operational service support policy includes a description of general
operational aspects of the NMA service, such as after-hours staffing
and trouble reporting procedures.</t>
        </section>
        <section anchor="generic-description-service">
          <name>Generic Description Service</name>
          <t>Returns a description of the object.  Descriptions are returned in a
structured metadata format, a human-readable text format, or in one
format that serves both purposes (such as human-readable HTML with
embedded machine-readable metadata, or perhaps YAML).  A description
must at a minimum answer the who, what, when, and where questions
("where" being the long-term identifier as opposed to a transient
redirect target) concerning an expression of the object.  Standalone
descriptions should be accompanied by the modification date and
source of the description itself.  May also return discriminated
lists of ARKs that are related to the given ARK.</t>
        </section>
      </section>
      <section anchor="overview-of-the-http-url-mapping-protocol-thump">
        <name>Overview of The HTTP URL Mapping Protocol (THUMP)</name>
        <t>The HTTP URL Mapping Protocol (THUMP) is a way of taking a key (any
identifier) and asking such questions as, what information does this
identify and how permanent is it?  <xref target="THUMP"/> is in fact one specific
method under development for delivering ARK services.  The protocol
runs over HTTP to exploit the web browser's current pre-eminence as
user interface to the Internet.  THUMP is designed so that a person
can enter ARK requests directly into the location field of current
browser interfaces.  Because it runs over HTTP, THUMP can be
simulated and tested via keyboard-based interactions <xref target="RFC0854"/>.</t>
        <t>The asker (a person or client program) starts with an identifier,
such as an ARK or a URL.  The identifier reveals to the asker (or
allows the asker to infer) the Internet host name and port number of
a server system that responds to questions.  Here, this is just the
NMA that is obtained by inspection and possibly lookup based on the
ARK's NAAN.  The asker then sets up an HTTP session with the server
system, sends a question via a THUMP request (contained within an
HTTP request), receives an answer via a THUMP response (contained
within an HTTP response), and closes the session.  That concludes the
connected portion of the protocol.</t>
        <t>A THUMP request is a string of characters beginning with a '?'
(question mark) that is appended to the identifier string.  The
resulting string is sent as an argument to HTTP's GET command.
Request strings too long for GET may be sent using HTTP's POST
command.  The two most common requests correspond to two degenerate
special cases.  First, a simple key with no request at all is the
same as an ordinary access request.  Thus a plain ARK entered into a
browser's location field behaves much like a plain URL, and returns
access to the primary identified object, for instance, an HTML
document.</t>
        <t>The second special case is a minimal ARK description request string
consisting of just "?info".  For example, entering the string,</t>
        <artwork><![CDATA[
    n2t.net/ark:67531/metadc107835?info
]]></artwork>
        <t>into the browser's location field directly precipitates a request for
a metadata record describing the object identified by ark:67531/
metadc107835.  The browser, unaware of THUMP, prepares and sends an
HTTP GET request in the same manner as for a URL.  THUMP is designed
so that the response (indicated by the returned HTTP content type) is
normally displayed, whether the output is structured for machine
processing (text/plain) or formatted for human consumption (text/
html).  In addition to "?info", this specification reserves both '?'
and '??' (originally older forms) for future use.</t>
        <t>The following example THUMP session assumes metadata being returned
by a resolver (as server) to a browser client.  Each line has been
annotated to include a line number and whether it was the client or
server that sent it.  Without going into much depth, the session has
four pieces separated from each other by blank lines: the client's
piece (lines 1-3), the server's HTTP/THUMP response headers (4-8),
and the body of the server's response (9-18).  The first and last
lines (1 and 19) correspond to the client's steps to start the TCP
session and the server's steps to end it, respectively.</t>
        <artwork><![CDATA[
 1  C: [opens session]
    C: GET https://n2t.net/ark:67531/metadc107835?info HTTP/1.1
    C:
    S: HTTP/1.1 200 OK
 5  S: Content-Type: text/plain
    S: THUMP-Status: 0.6 200 OK
    S: Link: </ark:67531/metadc107835> rel="describes";
    S:
    S: erc:
10  S: who:   Austin, Larry
    S: what:  A Study of Rhythm in Bach's Orgelbüchlein
    S: when:  1952
    S: where: https://digital.library.unt.edu/ark:/67531/metadc107835
    S: erc-support:
15  S: who:   University of North Texas Libraries
    S: what:  Permanent: Stable Content:
    S: when:  20081203
    S: where: https://digital.library.unt.edu/ark:/67531/
    S: [closes session]
]]></artwork>
        <t>The first two server response lines (4-5) above are typical of HTTP.
The next line (6) is peculiar to THUMP, and indicates the THUMP
version and a normal return status.  The final header line (7)
asserts, for the benefit of recipients unfamiliar with ARK
inflections, that the response describes the uninflected ARK.</t>
        <t>The balance of the response consists of a single metadata record
(9-18) that comprises the ARK description service response.  The
returned record is in the format of an Electronic Resource Citation
<xref target="ERC"/>, which is discussed in overview in the next section.  For now,
note that it contains four elements that answer the top priority
questions regarding an expression of the object: who played a major
role in expressing it, what the expression was called, when it was
created, and where the expression may be found (note that "where" is
preferably a persistent, citable identifier rather than an unstable
URL sometimes mistakenly referred to as a "location").  This quartet
of elements comes up again and again in ERCs.  Lines 13-17 contain a
minimal persistence statement.</t>
        <t>Each segment in an ERC tells a different story relating to the
object, so although the same four questions (elements) appear in
each, the answers depend on the segment's story type.  While the
first segment tells the story of an expression of the object, the
second segment tells the story of the support commitment made to it:
who made the commitment, what the nature of the commitment was, when
it was made, and where a fuller explanation of the commitment may be
found.</t>
      </section>
      <section anchor="the-electronic-resource-citation-erc">
        <name>The Electronic Resource Citation (ERC)</name>
        <t>An Electronic Resource Citation (or ERC, pronounced e-r-c) <xref target="ERC"/> is a
kind of object description that uses Dublin Core Kernel metadata
elements <xref target="DCKernel"/>.  The ERC with Kernel elements provides a simple,
compact, and printable record for holding data associated with an
information resource.  As originally designed <xref target="Kernel"/>, Kernel
metadata balances the needs for expressive power, very simple machine
processing, and direct human manipulation.  The ERC sense of
"citation" is not limited to the traditional referencing of a result
or information fixed in time on a printed page, but to a more general
kind of reference, both backward, to digital material that cannot be
known to be fixed in time (true of virtually all online information),
and forward, to material that is all the more valuable for improving
or evolving over time.</t>
        <t>The previous section shows two limited examples of what is fully
described elsewhere <xref target="ERC"/>.  The rest of this short section provides
some of the background and rationale for this record format.</t>
        <t>A founding principle of Kernel metadata is that direct human contact
with metadata will be a necessary and sufficient condition for the
near term rapid development of metadata standards, systems, and
services.  Thus the machine-processable Kernel elements must only
minimally strain people's ability to read, understand, change, and
transmit ERCs without their relying on intermediation with
specialized software tools.  The basic ERC needs to be succinct,
transparent, and trivially parseable by software.</t>
        <t>Borrowing from the data structuring format that underlies the
successful spread of email and web services, the ERC format uses
<xref target="ANVL"/>, which is based on email and HTTP headers <xref target="RFC2822"/>.  There is
a naturalness to ANVL's label-colon-value format (seen in the
previous section) that barely needs explanation to a person beginning
to enter ERC metadata.</t>
        <t>While ANVL elements are expected at the top level and don't
themselves support hierarchy, the value of an ANVL element may be an
arbitrary encoded hierarchy of JSON or XML.  Typically, the name of
such an ANVL element ends in "json" or "xml", for example, "json" or
"geojson".  Care should be taken to escape structural characters that
appear in element names and values, specifically, line terminators
(both newlines ("\n") and carriage returns ("\r")) and, in element
names, colons (":").</t>
        <t>Besides simplicity of ERC system implementation and data entry
mechanics, ERC semantics (what the record and its constituent parts
mean) must also be easy to explain.  ERC semantics are based on a
reformulation and extension of the Dublin Core <xref target="RFC5013"/> hypothesis,
which suggests that the fifteen Dublin Core metadata elements have a
key role to play in cross-domain resource description.  The ERC
design recognizes that the Dublin Core's primary contribution is the
international, interdisciplinary consensus that identified fifteen
semantic buckets (element categories), regardless of how they are
labeled.  The ERC then adds a definition for a record and some
minimal compliance rules.  In pursuing the limits of simplicity, the
ERC design combines and relabels some Dublin Core buckets to isolate
a tiny kernel (subset) of four elements for basic cross-domain
resource description.</t>
        <t>For the cross-domain kernel, the ERC uses the four basic elements --
who, what, when, and where -- to pretend that every object in the
universe can have a uniform minimal description.  Each has a name or
other identifier, a locator (a means to access it), some responsible
person or party, and a date.  It doesn't matter what type of object
it is, or whether one plans to read it, interact with it, smoke it,
wear it, or navigate it.  Of course, this approach is flawed because
uniformity of description for some object types requires more
semantic contortion and sacrifice than for others.  That is why at
the beginning of this document, the ARK was said to be suited to
objects that accommodate reasonably regular electronic description.</t>
        <t>While insisting on uniformity at the most basic level provides
powerful cross-domain leverage, the semantic sacrifice is great for
many applications.  So the ERC also permits a semantically rich and
nuanced description to co-exist in a record along with a basic
description.  In that way both sophisticated and naive recipients of
the record can extract the level of meaning from it that best suits
their needs and abilities.  Key to unlocking the richer description
is a controlled vocabulary of ERC record types (not explained in this
document) that permit knowledgeable recipients to apply defined sets
of additional assumptions to the record.</t>
      </section>
      <section anchor="advice-to-web-clients">
        <name>Advice to Web Clients</name>
        <t>ARKs are envisaged to appear wherever durable object references are
planned.  Library cataloging records, literature citations, and
bibliographies are important examples.  In many of these places URLs
(Uniform Resource Locators) are currently used, and inside some of
those URLs are embedded URNs, Handles, and DOIs.  Unfortunately,
there's no suggestion of a way to probe for extra services that would
build confidence in those identifiers; in other words, there's no way
to tell whether any of those identifiers is any better managed than
the average URL.</t>
        <t>ARKs are also envisaged to appear in hypertext links (where they are
not normally shown to users) and in rendered text (displayed or
printed).  A normal HTML link for which the URL is not displayed
looks like this.</t>
        <artwork><![CDATA[
    <a href = "https://example.org/index.htm"> Click Here <a>
]]></artwork>
        <t>A URL with an embedded ARK invites access (via "?info") to extra
services:</t>
        <artwork><![CDATA[
    <a href = "https://example.org/ark:14697/b12345x"> Click Here <a>
]]></artwork>
        <t>Using the <xref target="N2T"/> resolver to provide identifier-scheme-agnostic
protection against hostname instability, this ARK could be published
as:</t>
        <artwork><![CDATA[
    <a href = "https://n2t.net/ark:14697/b12345x"> Click Here <a>
]]></artwork>
        <t>An NAA will typically make known the associations it creates by
publishing them in catalogs, actively advertizing them, or simply
leaving them on web sites for visitors (e.g., users, indexing
spiders) to stumble across in browsing.</t>
      </section>
      <section anchor="enhancements-and-related-specifications">
        <name>Enhancements and Related Specifications</name>
        <t>ARK services, data models, inflections, and applications continue to
evolve.  Follow-on developments and specifications will be made
available from the ARK Maintenance Agency <xref target="ARKspecs"/>.</t>
      </section>
      <section anchor="iana-considerations">
        <name>IANA Considerations</name>
        <t>This specification registers "ark" in the "Well-Known URIs" registry
as defined by <xref target="RFC8615"/>.</t>
        <t>URI suffix:  ark</t>
        <t>Change controller:  ARK Alliance <xref target="ARKagency"/></t>
        <t>Specification document:  this document (this section)</t>
        <t>Status:  provisional</t>
        <t>If a host has an ARK Resolver Service, best practice is to allow clients
to discover its location by supporting the URI path</t>
        <artwork><![CDATA[
/.well-known/ark
]]></artwork>
        <t>Accessing this path should return a plain text file containing the ARK
Resolver Service URI path ending in '/'. Here is an example access.</t>
        <artwork><![CDATA[
 1  C: [opens session]
    C: GET https://example.org/.well-known/ark HTTP/1.1
    C:
    S: HTTP/1.1 200 OK
 5  S: Content-Type: text/plain
    S:
    S: /index.php/bulletin/gateway/plugin/pubIdResolver/
    S: [closes session]
]]></artwork>
        <t>The service URI path should name the root of an ARK Resolver Service on the
host in the sense that appending a Compact ARK to it should create a valid
resolution request path. Often the service path is just '/', but this cannot
be assumed.</t>
      </section>
      <section anchor="security-considerations">
        <name>Security Considerations</name>
        <t>The ARK naming scheme poses no direct risk to computers and networks.
Implementors of ARK services need to be aware of security issues when
querying networks and filesystems for Name Mapping Authority
services, and the concomitant risks from spoofing and obtaining
incorrect information.  These risks are no greater for ARK mapping
authority discovery than for other kinds of service discovery.  For
example, recipients of ARKs with a specified NMA should treat it like
a URL and be aware that the identified ARK service may no longer be
operational.</t>
        <t>Apart from mapping authority discovery, ARK clients and servers
subject themselves to all the risks that accompany normal operation
of the protocols underlying mapping services (e.g., HTTP).  As
specializations of such protocols, an ARK service may limit exposure
to the usual risks.  Indeed, ARK services may enhance a kind of
security by helping users identify long-term reliable references to
information objects.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="RFC2616">
        <front>
          <title>Hypertext Transfer Protocol -- HTTP/1.1</title>
          <author fullname="R. Fielding" initials="R." surname="Fielding"/>
          <author fullname="J. Gettys" initials="J." surname="Gettys"/>
          <author fullname="J. Mogul" initials="J." surname="Mogul"/>
          <author fullname="H. Frystyk" initials="H." surname="Frystyk"/>
          <author fullname="L. Masinter" initials="L." surname="Masinter"/>
          <author fullname="P. Leach" initials="P." surname="Leach"/>
          <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
          <date month="June" year="1999"/>
          <abstract>
            <t>HTTP has been in use by the World-Wide Web global information initiative since 1990. This specification defines the protocol referred to as "HTTP/1.1", and is an update to RFC 2068. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2616"/>
        <seriesInfo name="DOI" value="10.17487/RFC2616"/>
      </reference>
      <reference anchor="RFC5013">
        <front>
          <title>The Dublin Core Metadata Element Set</title>
          <author fullname="J. Kunze" initials="J." surname="Kunze"/>
          <author fullname="T. Baker" initials="T." surname="Baker"/>
          <date month="August" year="2007"/>
          <abstract>
            <t>This document defines fifteen metadata elements for resource description in a cross-disciplinary information environment. This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5013"/>
        <seriesInfo name="DOI" value="10.17487/RFC5013"/>
      </reference>
      <reference anchor="RFC2611">
        <front>
          <title>URN Namespace Definition Mechanisms</title>
          <author fullname="L. Daigle" initials="L." surname="Daigle"/>
          <author fullname="D. van Gulik" initials="D." surname="van Gulik"/>
          <author fullname="R. Iannella" initials="R." surname="Iannella"/>
          <author fullname="P. Faltstrom" initials="P." surname="Faltstrom"/>
          <date month="June" year="1999"/>
          <abstract>
            <t>This document lays out general definitions of and mechanisms for establishing URN "namespaces". 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="33"/>
        <seriesInfo name="RFC" value="2611"/>
        <seriesInfo name="DOI" value="10.17487/RFC2611"/>
      </reference>
      <reference anchor="RFC2141">
        <front>
          <title>URN Syntax</title>
          <author fullname="R. Moats" initials="R." surname="Moats"/>
          <date month="May" year="1997"/>
          <abstract>
            <t>Uniform Resource Names (URNs) are intended to serve as persistent, location-independent, resource identifiers. This document sets forward the canonical syntax for URNs. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2141"/>
        <seriesInfo name="DOI" value="10.17487/RFC2141"/>
      </reference>
      <reference anchor="RFC2288">
        <front>
          <title>Using Existing Bibliographic Identifiers as Uniform Resource Names</title>
          <author fullname="C. Lynch" initials="C." surname="Lynch"/>
          <author fullname="C. Preston" initials="C." surname="Preston"/>
          <author fullname="R. Daniel" initials="R." surname="Daniel"/>
          <date month="February" year="1998"/>
          <abstract>
            <t>This document discusses how three major bibliographic identifiers (the ISBN, ISSN and SICI) can be supported within the URN framework and the currently proposed syntax for URNs. This memo provides information for the Internet community. It does not specify an Internet standard of any kind.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2288"/>
        <seriesInfo name="DOI" value="10.17487/RFC2288"/>
      </reference>
      <reference anchor="RFC3986">
        <front>
          <title>Uniform Resource Identifier (URI): Generic Syntax</title>
          <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
          <author fullname="R. Fielding" initials="R." surname="Fielding"/>
          <author fullname="L. Masinter" initials="L." surname="Masinter"/>
          <date month="January" year="2005"/>
          <abstract>
            <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="66"/>
        <seriesInfo name="RFC" value="3986"/>
        <seriesInfo name="DOI" value="10.17487/RFC3986"/>
      </reference>
      <reference anchor="RFC1034">
        <front>
          <title>Domain names - concepts and facilities</title>
          <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
          <date month="November" year="1987"/>
          <abstract>
            <t>This RFC is the revised basic definition of The Domain Name System. It obsoletes RFC-882. This memo describes the domain style names and their used for host address look up and electronic mail forwarding. It discusses the clients and servers in the domain name system and the protocol used between them.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="13"/>
        <seriesInfo name="RFC" value="1034"/>
        <seriesInfo name="DOI" value="10.17487/RFC1034"/>
      </reference>
      <reference anchor="RFC0854">
        <front>
          <title>Telnet Protocol Specification</title>
          <author fullname="J. Postel" initials="J." surname="Postel"/>
          <author fullname="J.K. Reynolds" initials="J.K." surname="Reynolds"/>
          <date month="May" year="1983"/>
          <abstract>
            <t>This is the specification of the Telnet protocol used for remote terminal access in the ARPA Internet. The purpose of the TELNET Protocol is to provide a fairly general, bi-directional, eight-bit byte oriented communications facility. Its primary goal is to allow a standard method of interfacing terminal devices and terminal-oriented processes to each other. It is envisioned that the protocol may also be used for terminal-terminal communication ("linking") and process-process communication (distributed computation). This RFC specifies a standard for the ARPA Internet community. Hosts on the ARPA Internet are expected to adopt and implement this standard. Obsoletes NIC 18639.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="8"/>
        <seriesInfo name="RFC" value="854"/>
        <seriesInfo name="DOI" value="10.17487/RFC0854"/>
      </reference>
      <reference anchor="RFC2822">
        <front>
          <title>Internet Message Format</title>
          <author fullname="P. Resnick" initials="P." role="editor" surname="Resnick"/>
          <date month="April" year="2001"/>
          <abstract>
            <t>This document specifies a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2822"/>
        <seriesInfo name="DOI" value="10.17487/RFC2822"/>
      </reference>
      <reference anchor="RFC2915">
        <front>
          <title>The Naming Authority Pointer (NAPTR) DNS Resource Record</title>
          <author fullname="M. Mealling" initials="M." surname="Mealling"/>
          <author fullname="R. Daniel" initials="R." surname="Daniel"/>
          <date month="September" year="2000"/>
          <abstract>
            <t>This document describes a Domain Name System (DNS) resource record which specifies a regular expression based rewrite rule that, when applied to an existing string, will produce a new domain label or Uniform Resource Identifier (URI). [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2915"/>
        <seriesInfo name="DOI" value="10.17487/RFC2915"/>
      </reference>
      <reference anchor="RFC6454">
        <front>
          <title>The Web Origin Concept</title>
          <author fullname="A. Barth" initials="A." surname="Barth"/>
          <date month="December" year="2011"/>
          <abstract>
            <t>This document defines the concept of an "origin", which is often used as the scope of authority or privilege by user agents. Typically, user agents isolate content retrieved from different origins to prevent malicious web site operators from interfering with the operation of benign web sites. In addition to outlining the principles that underlie the concept of origin, this document details how to determine the origin of a URI and how to serialize an origin into a string. It also defines an HTTP header field, named "Origin", that indicates which origins are associated with an HTTP request. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6454"/>
        <seriesInfo name="DOI" value="10.17487/RFC6454"/>
      </reference>
      <reference anchor="RFC8615">
        <front>
          <title>Well-Known Uniform Resource Identifiers (URIs)</title>
          <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
          <date month="May" year="2019"/>
          <abstract>
            <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
            <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8615"/>
        <seriesInfo name="DOI" value="10.17487/RFC8615"/>
      </reference>
      <reference anchor="DOI" target="https://doi.org/10.1000/203">
        <front>
          <title>The Digital Object Identifier (DOI) System</title>
          <author>
            <organization>I. D. Foundation</organization>
          </author>
          <date year="2001" month="February"/>
        </front>
      </reference>
      <reference anchor="ANVL" target="https://n2t.net/ark:/13030/c7x921j3h">
        <front>
          <title>A Name-Value Language</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <author initials="B." surname="Kahle">
            <organization/>
          </author>
          <author initials="J." surname="Masanes">
            <organization/>
          </author>
          <author initials="G." surname="Mohr">
            <organization/>
          </author>
          <date year="2005"/>
        </front>
      </reference>
      <reference anchor="ARK" target="https://n2t.net/ark:/13030/c7n00zt1z">
        <front>
          <title>Towards Electronic Persistence Using ARK Identifiers</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <date year="2003" month="August" day="03"/>
        </front>
        <seriesInfo name="IWAW/ECDL Annual Workshop Proceedings" value=""/>
      </reference>
      <reference anchor="ARKagency" target="https://arks.org">
        <front>
          <title>ARK Maintenance Agency</title>
          <author>
            <organization>ARK Alliance</organization>
          </author>
          <date year="2021"/>
        </front>
      </reference>
      <reference anchor="ARKAtech" target="https://wiki.lyrasis.org/display/ARKs/Technical+Working+Group">
        <front>
          <title>ARK Alliance Technical Working Group</title>
          <author>
            <organization>ARK Alliance</organization>
          </author>
          <date year="2022"/>
        </front>
      </reference>
      <reference anchor="ARKdrafts" target="https://github.com/arks-org/arkspec">
        <front>
          <title>ARK Drafts Repository</title>
          <author>
            <organization>ARK Alliance</organization>
          </author>
          <date year="2022"/>
        </front>
      </reference>
      <reference anchor="ARKspecs" target="https://arks.org/specs/">
        <front>
          <title>ARK Maintenance Agency Specifications</title>
          <author>
            <organization>ARK Alliance</organization>
          </author>
          <date year="2021"/>
        </front>
      </reference>
      <reference anchor="CURIE" target="https://www.w3.org/TR/2010/NOTE-curie-20101216/">
        <front>
          <title>CURIE Syntax 1.0</title>
          <author>
            <organization>W3C</organization>
          </author>
          <date year="2010" month="December"/>
        </front>
      </reference>
      <reference anchor="DCKernel" target="https://dublincore.org/groups/kernel/">
        <front>
          <title>Kernel Metadata Working Group</title>
          <author>
            <organization>Dublin Core Metadata Initiative</organization>
          </author>
          <date year="20012008"/>
        </front>
      </reference>
      <reference anchor="ERC" target="https://n2t.net/ark:/13030/c7sn0141m">
        <front>
          <title>Kernel Metadata and Electronic Resource Citations</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <author initials="A." surname="Turner">
            <organization/>
          </author>
          <date year="2007" month="October"/>
        </front>
      </reference>
      <reference anchor="Handle" target="https://eric.ed.gov/?id=ED450775">
        <front>
          <title>Handle System Overview</title>
          <author initials="L." surname="Lannom">
            <organization/>
          </author>
          <date year="1999" month="April"/>
        </front>
        <seriesInfo name="ICSTI Forum No. 30" value=""/>
      </reference>
      <reference anchor="Kernel" target="https://n2t.net/ark:/13030/c7rr1pm49">
        <front>
          <title>A Metadata Kernel for Electronic Permanence</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <date year="2002" month="January"/>
        </front>
        <seriesInfo name="Journal of Digital Information Vol 2, Issue 2, ISSN 1368-7506" value=""/>
      </reference>
      <reference anchor="N2T" target="https://n2t.net">
        <front>
          <title>Name-to-Thing Resolver</title>
          <author>
            <organization>ARK Alliance</organization>
          </author>
          <date year="2006" month="August"/>
        </front>
      </reference>
      <reference anchor="NAANregistry" target="https://n2t.net/e/pub/naan_registry.txt">
        <front>
          <title>NAAN Registry</title>
          <author>
            <organization>ARKs.org</organization>
          </author>
          <date year="2019"/>
        </front>
      </reference>
      <reference anchor="NAANrequest" target="https://n2t.net/e/naan_request">
        <front>
          <title>NAAN Request Form</title>
          <author>
            <organization>ARKs.org</organization>
          </author>
          <date year="2018"/>
        </front>
      </reference>
      <reference anchor="NLMPerm" target="https://www.nlm.nih.gov/pubs/techbull/ma05/ma05_archive.html">
        <front>
          <title>Permanence Levels and the Archives for NLM's Permanent Web Documents</title>
          <author initials="M." surname="Byrnes">
            <organization/>
          </author>
          <date year="2005" month="March"/>
        </front>
      </reference>
      <reference anchor="NOID" target="https://metacpan.org/dist/Noid/view/noid">
        <front>
          <title>Nice Opaque Identifiers</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <date year="2006" month="April"/>
        </front>
      </reference>
      <reference anchor="PStatements" target="https://n2t.net/ark:/13030/c7833mx7t">
        <front>
          <title>Persistence statements: describing digital stickiness</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <date year="2016" month="October"/>
        </front>
      </reference>
      <reference anchor="PURL" target="https://www.internetsociety.org/inet96/proceedings/a4/a4_1.htm">
        <front>
          <title>Introduction to Persistent Uniform Resource Locators</title>
          <author initials="K." surname="Shafer">
            <organization/>
          </author>
          <date year="1996"/>
        </front>
      </reference>
      <reference anchor="shoulderrequest" target="https://n2t.net/e/shoulder_request">
        <front>
          <title>Shoulder Request Form</title>
          <author>
            <organization>ARKs.org</organization>
          </author>
          <date year="2021"/>
        </front>
      </reference>
      <reference anchor="SPT" target="http://n2t.net/e/suffix_passthrough.html">
        <front>
          <title>What is Suffix Passthrough?</title>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <date year="2021" month="May"/>
        </front>
      </reference>
      <reference anchor="THUMP" target="https://www.ietf.org/archive/id/draft-kunze-thump-03.txt">
        <front>
          <title>The HTTP URL Mapping Protocol</title>
          <author initials="K." surname="Gamiel">
            <organization/>
          </author>
          <author initials="J." surname="Kunze" fullname="John Kunze">
            <organization/>
          </author>
          <date year="2007" month="August"/>
        </front>
      </reference>
    </references>
    <?line 2052?>

<section anchor="ark-maintenance-agency-arksorg">
      <name>ARK Maintenance Agency: arks.org</name>
      <t>The ARK Maintenance Agency <xref target="ARKagency"/> at arks.org has several
functions.</t>
      <ul spacing="normal">
        <li>
          <t>To manage the registry of organizations that will be assigning
  ARKs.  Organizations can request or update a NAAN by filling out
  the NAAN Request Form <xref target="NAANrequest"/>.</t>
        </li>
        <li>
          <t>To be a clearinghouse for information about ARKs, such as best
  practices, introductory documentation, tutorials, community
  forums, etc.  These supplemental resources help ARK implementors
  in high-level applications across different sectors and
  disciplines, and with a variety of metadata standards.</t>
        </li>
        <li>
          <t>To be a locus of discussion about future versions of the ARK
  specification.</t>
        </li>
      </ul>
    </section>
    <section anchor="looking-up-nmas-distributed-via-dns">
      <name>Looking up NMAs Distributed via DNS</name>
      <t>This subsection introduces an older method for looking up NMAs that
is based on the method for discovering URN resolvers described in
<xref target="RFC2915"/>.  It relies on querying the DNS system for Name Authority
Pointer (NAPTR) records that mirror the contents of the plain text
<xref target="NAANregistry"/> database.  A query is submitted to DNS asking for a
list of resolvers that match a given NAAN.  DNS distributes the query
to the particular DNS servers that can best provide the answer,
unless the answer can be found more quickly in a local DNS cache as a
side-effect of a recent query.  Responses come back inside NAPTR
records.  The normal result is one or more candidate NMAs.</t>
      <t>In its full generality the <xref target="RFC2915"/> algorithm ambitiously
accommodates a complex set of preferences, orderings, protocols,
mapping services, regular expression rewriting rules, and DNS record
types.  This subsection proposes a drastic simplification of it for
the special case of ARK mapping authority discovery.  The simplified
algorithm is called Maptr.  It uses only one DNS record type (NAPTR)
and restricts most of its field values to constants.  The following
hypothetical excerpt from a DNS data file for the NAAN known as 12026
shows three example NAPTR records ready to use with the Maptr
algorithm.</t>
      <artwork><![CDATA[
12026.ark.arpa.
;; US Library of Congress
;;       order pref flags service regexp  replacement
 IN NAPTR  0     0   "h"  "ark"   "USLC"  lhc.nlm.nih.gov:8080
 IN NAPTR  0     0   "h"  "ark"   "USLC"  foobar.zaf.org
 IN NAPTR  0     0   "h"  "ark"   "USLC"  sneezy.dopey.com
]]></artwork>
      <t>All the fields are held constant for Maptr except for the "flags",
"regexp", and "replacement" fields.  The "service" field contains the
constant value "ark" so that NAPTR records participating in the Maptr
algorithm will not be confused with other NAPTR records.  The "order"
and "pref" fields are held to 0 (zero) and otherwise ignored for now;
the algorithm may evolve to use these fields for ranking decisions
when usage patterns and local administrative needs are better
understood.</t>
      <t>When a Maptr query returns a record with a flags field of "h" (for
host, a Maptr extension to the NAPTR flags), the replacement field
contains the NMA (host) of an ARK service provider.  When a query
returns a record with a flags field of "" (the empty string), the
client needs to submit a new query containing the domain name found
in the replacement field.  This second sort of record exploits the
distributed nature of DNS by redirecting the query to another domain
name.  It looks like this.</t>
      <artwork><![CDATA[
12345.ark.arpa.
;; Digital Library Consortium
;;       order pref flags service regexp replacement
 IN NAPTR  0     0    ""  "ark"     ""   dlc.spct.org.
]]></artwork>
      <t>Here is the Maptr algorithm for ARK mapping authority discovery.  In
it replace <tt>&lt;NAAN&gt;</tt> with the NAAN from the ARK for which an NMA is
sought.</t>
      <ol spacing="normal" type="1"><li>
          <t>Initialize the DNS query: <tt>type=NAPTR, query=&lt;NAAN&gt;.ark.arpa</tt>.</t>
        </li>
        <li>
          <t>Submit the query to DNS and retrieve (NAPTR) records, discarding
any record that does not have "ark" for the service field.</t>
        </li>
        <li>
          <t>All remaining records with a flags fields of "h" contain
candidate NMAs in their replacement fields.  Set them aside, if
any.</t>
        </li>
        <li>
          <t>Any record with an empty flags field ("") has a replacement field
containing a new domain name to which a subsequent query should
be redirected.  For each such record, set <tt>query=&lt;replacement&gt;</tt>
then go to step (2).  When all such records have been recursively
exhausted, go to step (5).</t>
        </li>
        <li>
          <t>All redirected queries have been resolved and a set of candidate
NMAs has been accumulated from steps (3).  If there are zero
NMAs, exit -- no mapping authority was found.  If there is one or
more NMA, choose one using any criteria you wish, then exit.</t>
        </li>
      </ol>
      <t>A Perl script that implements this algorithm is included here.</t>
      <sourcecode type="perl"><![CDATA[
#!/usr/bin/env perl

use Net::DNS;                           # include simple DNS package
my $qtype = "NAPTR";                    # initialize query type
my $naa = shift;                        # get NAAN script argument
my $mad = new Net::DNS::Resolver;       # mapping authority discovery

&maptr("$naa.ark.arpa");                # call maptr - that's it

sub maptr {                             # recursive maptr algorithm
        my $dname = shift;              # domain name as argument
        my ($rr, $order, $pref, $flags, $service, $regexp,
                $replacement);
        my $query = $mad->query($dname, $qtype);
        return                          # non-productive query
                if (! $query || ! $query->answer);
        foreach $rr ($query->answer) {
                next                    # skip records of wrong type
                        if ($rr->type ne $qtype);
                ($order, $pref, $flags, $service, $regexp,
                        $replacement) = split(/\s/, $rr->rdatastr);
                if ($flags eq "") {
                        &maptr($replacement);   # recurse
                } elsif ($flags eq "h") {
                        print "$replacement\n"; # candidate NMA
                }
        }
}
]]></sourcecode>
    </section>
  </back>
  <!-- ##markdown-source:
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
7KJX37z+6mdsoT+eF29uyqs9XfNcXMB2uV1QSg1tMrCH4pumhgBL+uarVoyR
djz7Iq0ff3C/wKaRTTv07aKuhh1XQd58+PzxxSaZ3hflQ/nfn+5jy8itxDLf
rpZV93ce1Td2m48c1w9YUem4+lCyI/vm1U/I2I9uk29vyqGo++LN9uqqfi++
ed8PN2JbXN/8dn9os3uPDkY3Hhzv8adNuoefubd/+ObrVz9vR/y+XNfV6pe9
BHzlP7x9+6qQfSeG62aD3S2uFAJNqwNT5APqgtujGq7O1Z6mzLiQo5lHz8Tw
Xm9EHlF+h9lsVpRzkeflQn773//LDMP9lRgQeJT8tV5hHHc39VD1m1K2q5iM
V6K5h0J0sOzDQrbcpuoG0dnFXb1aFYty21e8h/4jW042Ny6DBH3Xletle9fM
uqtFsSk70fbnxRe3VYMveOztv+By3mL0dTv11bK4qbrqqC+xKOftRX4R7zSb
/bcQPDZ5qkJcREY8gX+sdmdYHLxpz3gldpM8rr5u5GlDG67KhUwEJBDf4qa+
vpn9RZzeethROWzS+fZQnXoYYrmkkA5+ZRSkP5ftJPdZlXMxiBCtezKR+RQ/
g7cXUdcNsHnKArYyhh1SBFC+Itt9UTbFvJKLllVRUs6UczET5ztZkGpTNZAB
vNlc1HXT4DcZSondJQ//uiplqCKY5BbbnlfKBsG922W5E7XWaDSWN4EP2a7a
a1niMK9kmit5DTFjqqGa2mAwSj3WuGMnX7pu6h95X1v4q+2wlS+VokzD9aqd
l6vVrtg2NVQQlqVulhw2plDeHJfgINy0/YBjM+XZmBbVsJDhX4YrxIMwuk0n
DkW9kQfJVRBZWDoOapMpD/nbRh4vjyx938ps9LCl5VOsYFPJLpI/1w02F9ax
kb/behWN6PtF21xBfi4LWcd6wFSXQbawKJ7tquziBqJ3Zws8h4gsm10WwOXK
LVsMaVWVyyCnRY6HLIWNxkbfbzebVnZB1863co+uusKwFhXeXiZztZpdbRuu
uzw0YAZxN90/uCXuiJ/jg5f+LvK2Uzmqww0/n/wW23OCTQqbHHtUZA8WQr7V
VbJoTY9JcyMea9stOWUlD2w94MyGqJ51+PJ281YeIbKmbGb8+rqUc9dUs07G
iZ2BKWpbsa6q97JMMKmCTCCi7dNCVPuSP+DCjjazRaX68xDk4G7EPxMDgAcQ
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
KG4OTu4y6FFIRQXYoaPEx2npJUv5mwejgNmdTWH8cam45Uk2oWVoME1bpZc7
JOhxNsTk+8MqZaEhigjiEekjEYlnRPcPZpFhfr8m020q0Mn3QYREaH4ToOMb
YH0pOo8Nk/Odw1PF6q10U3YGFtCscKhAIUehY3IvShO1Bxzi3WhUKzMLVEBf
Wq3qGmI6KhwkTuTdmKvSjYkSZuD+cJvEXKeP0+TXqp6D/QSkCzxfu3ZLTIqV
7LHFGpfwlpZW/A6YX2SjIHFlAjdEOoiTfix8p/GZfMVELDwYbZwo3qjnSYkp
t9Yzdliw7Y/D/bIHBX1Qnd/eKs9jJdQ1H6e0RYBbRk4KHENWIoSF7Em1e+1i
jDrdEbQulZWhb2KnANOnEaIT9lAmiKq5ek7oYiSRrMjGWDA1WUQeBJhCsjSd
wyqKPQzKfrF9nOEEurFSIFZDQ8TwyKZB8/CCnBHEw7CSZPjvd0UqhnaT6Ga5
Or8haRsiP7I878+tT5guz2bbrfCbvpmx6WhIyiV4VhGr+xLj2zbxXFn+FONH
qbsxIUHsD+3GyRpDmWo6fU8wpRPXF9cry7bWGq9Iq8Q44l6N87mx5ua3iQRC
LAjcx89NvMpgwpQuXm0XLLs5TThh4NMpwxtkcOUw3rTL3tOqK9a3025D875O
DNVFLMgwPoZvXr9wjjyd3mcvn0eiqJIZvYqpfR1NiIMxiJSyarbkqsPuxnMS
IDIWOg6HRV/j97XS1oOq7UjCoUouXnDSj/Rs/5sCZ0zZDaeOIlf7uTSol9/T
JXuv0qVcgyAoFoYYLknxZ1islHdNYJKQVhzaCkeZWiVxbOUAQcf+OuO2Vs+I
DEl3ofME8bQe8aWnAsKbY7R/I8I/o3gqMj5RrLL1/9lf2pp1P7UlLnSTR5or
uyZ6LqK/rW5Ww/DGKyUCroaYCjl1LjcNc52mahzLSoR14pZPno/DnXCcVP/E
cqM7Mc4QGkoY9Vw3jYETpW3/6Mypl5QkPfVYpFRhQjtn3sork5Rn9/H9x3/7
2x5LNIgibkujeGmUbhrPrzL+YJgoy3JnrJ00JoCF0DCR5pMYV0NlrOpc8ES+
I28CMatH3hCY/52tELkJaqOr76uK9mC/Qb4Kx3U62gZqViCkJq9OwVzd4lzQ
ZosmTg2W6LgblTHkbM/SGZP8JDcdq6UxXkR1xR4TS/1M1149cmrhMdOTLfIB
21NW7plqA0rOT06Xshqnlh0vt9KgkX0gPnUYU4I460EsUVLanqoTS2lrBHCO
zVQby+hgnJ+k4kgUr6tnO47s9C6LlEwuJkoBu1crZoyUtEMKIhduNclHJznj
uaz5nruw5xEmiFt8Lm6+7eO769T05gyqo8Nysej0pac8iV5doU1sjrljH/S7
njttFmWuz4fsdpO/uvaJFTNKF80UltjtZcgg2Gqms2i/ssOu6cDnVyNUw13Z
ASssnnOO2k9JMGc2rOM2M/9rSdobQ49pcFkhVntEV9FLzmtFtH7KeMscMzkC
b1lMMnKrlcTT9GN+sINwlZIGT7Zdg508EVPHd/RELKEnkzPUqxPcBUoRmMKO
bszhTxbDz9zILv9ehhiKYkpd02WLpfFbxzWKPiBTGjEhOYrCXV6eke1auSWt
qOWm3UQcn7usAQ8BwPrIK8jz5EZkYRjUR024s2n+FmVYVgt2K7nWWrCKCX1j
laM32R32dUg28mgVsvs6vRTe5MhNrKZKOcfOAZHhcH3atQRc5GLTrlFzntWz
mzrXgvAR40EfMor/MnHTRUJtFiXlZpfTeq3Pw0vNFWEUYB5d1EYvFEtGnHvj
ACF4ugTUbVCGC5kYxYYS5oVqDVjLGv5VlKy2FKidTVkNaUdqnB9UWyIWypUY
u+oyzj2HQswqtHEUNdCFeFFp+mGh24EX0GdV6KKeyB+0mx9O40tSRx6aiyxq
KXXtnZnjTk3Ubp8wD2/UEPjlhU566PVc9tvrawZ5B3dBcW9NLpvxHzIaRbA5
oPRuiGxdfOw7/vVqn0zTihlkGrV30VVk4/BPaMCs88tO6/OKsFqlXwV2LEPh
nU3x3rWSGIMBs1xtrX9OMl/2eRShY7f9yOJigXfWGmYkYSy0oehxFbepvGdU
TRahx/h5TGZ4vO3LlJ6Y6b0czY9N936DjY5JpecBSvu9LMExCaWQCcU1nKHr
C+yWaPzRQTfncZ+Jre6nSTX+0lyShqlHKY2kE/JQbFQE4O/Q4muzW86CKc8+
YTx+8g2nwJ6wjEmzyOM0aAPNidD4ab8q+5uzlBH19KkGl3uzUdwpWE6dyjOJ
vGG/RlYRlikC6smpEEdvc5Ei1buNlbYe3EyzGhkl35R8RlF00Zudi0WPZsFa
oiBiWzvoOOkgetXAuugHDetQUu5my67GJtvjhtQYqda37Yu0YLkeS68XMdr/
gfbA38U+099D3hp7AaJdl0qI+b4QrQk66Fr3oluM3ILfZc0w0X3kS3IHZFbi
tKjH9umYgqCM5U4c7Ir8VXCg7j8uWllrNg7DRxYi0A6OBpWhfmJwVUX4ZC7H
ttmu0d11ElJ2fppw2SjQSAdlvlheXd/88G7dbP7S9cPt3fsf79FyfPzpZ597
nhWqJIc0MGqduPTahpZdkSBkq4qUHierE3Q1MtSyTJy+Br2pOEwAUlebm/Sr
2+S37R36cIqxJ/c5iySUYhZft6VXBZKyw7a3h4y15AR5GhT0gE5tGgwp4Ulr
+o6g1oD5YonHuvFpxnuBzAmBNiob2Q0xM6bPJQaQ5I/spWZ2h/Lwruv3Xt1E
H8BIYZYhB+Ge3DtRjoeXJ9Pi5L79ghclC9rO7Gkm25l01aCwVvKokxeLyNhu
T47bYEW1xLphRoxyUeEUXLUQGSXPIr8A+zdbAWNKUWMz3pS9L3xFlWh6MlzV
DGJjG3hwGt/3bClzoUO7mWl5G85dxLiwupAJWVA4Mhuoaez4jakfXFZM3TI2
NUtfj+WgzpQ0LTxy6MT/nbvsZU4wf7wcVSuQTZ+mQYzIL5OXfQVMum2TGDtI
XDRaG9BE6o3YgrMPp32lAakIz7DIHkULSdHzwSXOYyP10nNu3WCCDsGLJBIV
4zQjFnXkuBW/mv2gFBoe6oIvRRpFUhCJPXrNYIE8tKmuiE7c5x4mIgb9T7Fy
uk7+oL9St6cBxOIU+8LUCBTkkMQCRbq4/oqMaSg86K8gM95YVM9M6t/ir8XL
P8aYfDHmif5tkYA3H4HZHMXhjL4LFM2fDVFjNnAvz3YcjLrlsRdI3cQ0maWL
3wJRoiWgNnR1q0gHxtMIGeB1FxkYuIgkDx5NgAN8MtgtLbCRvuv5dG0P8aF5
OSegSDTjHPilpiVK6M+ff37/0YM/Wz3DX/WlrhLDBeqTM4oqxuqbgWTr1nss
Bjpj5YlXx2hygB5OvXg3Q2s8rdHuxy9ik0P7U/sReLGHE8BVh+TgBy/312LH
5eF/7c0eP/4zO+4No1fbVC3dGW1CP7U622i0MKAz0cvEwhNR13bZazKiyb9E
Wnb+Fl2jfurROf4sztjZB9+XT/mf98Lyz58ZIxGbb/TK+BtqoEUOtxu1xejY
wWu0PiR2TJmiALFOadz1/wvu471dnCBqXya53Ktosq4zEKyoBU+m41jMEqCm
nAvF1pNtdgsFV++75FCKPdQNknEbjTiOOK/emBp+cP7w/P6ez4Noq4XY99wN
QjkS1NwVYLTGo2Y2Em866dzAOTeC2v9Q7WavmMHIAnnzBV849XdQAKZMNCLM
TsqyHEEE1MAy9XgiPup2Bf8rYgWC/GJtRcrmeivXzyItsNJxQF/vF571zkCK
KM9KQ8wY7BUUUFRS3rrELOXYzQIqb8lWFnCM21Jc8hett8MA4Tbz2JuOFZJG
jT2qFo2IPxKm6gkP6dlrslgwH+BjUBuOjs21VkVfGUEHeXvwTsghBNIVLiv0
9fUUkFuOOaWWd8DbGmv2NpFdgWFeo/0wrV6Ua7doV237Tq18nA68BqOQWgjc
W/e4iKogQZK1yRApU+31B7Ouk8xBal5ZE/qJcNhPg1p5wUgk2E9TezYvuc++
VmO3btiPkDZ7QXteTHzdAg4QplWaG/5nDCtsN5aCUhyP0ZlG9lq0/uFoq7Lf
BSU+9q5H9DGBPUjWpdKlpQYWqok0noeFa8IqEgTTxcZZsHI4nBqIer3GQlwp
wK0E4eTg6OQz7ZFdrRwtmlU7j3rqqSNiEM6dDIzsGVWnTB4DI7zNnltH7qwI
kVnLprhOZFstkoCOBw+jkEBqrevGbQ2BD3bvvK2ue5E56Y21KkOQ1fvzjUHY
TuDugJi28aYOe3zqxjzUaBIbWFnWIQ5u71Ii/krsOEPJPYkWcR/CP297p40Y
eQ3aJkSR8yoDVdhHQxtLLH8iqgWb1cJECGw49RFivY4iuLxUTh+7IwOWkChj
PL4m+ibRiJ9MLbHMOKf/2boIp3EwFGJcRykIYsiNwboERikfmYn6nFQidxZH
qMr9ZIRFF+NIPnCP09h32LL2THfxznklbcTmK9o7GNg7D79kdUyXl6O4QHoj
yj0bFHhalTbXBhZLyPgqc9Q4oF7u9G12kTbi4WcBRkCtbX5kQ2tr+VW7eNev
8SY/lN01OBfHtJBZBHUW3L2IzanK4l21O7d8Jx+SEQsYqCd7RxqAMQDp3BeG
S5rvyEdRIqg0+OOpvbWX0OELxZJqfFNL49j7MrZbVAjQy8F5CYY4SmimjDC/
EfnICudD3gG12kbk+tpTaWqSVvbDeoNfLEiw5pbFYqHF4GI37r5RRi9a9Y13
Zdc0n6d8VSRRYziKJ+J3FF5GhLfOY6VR9vRy1jVnrrtuXHLC+RltxizalBLW
dLJZHhJQHnKWna0kEIZDDHFWmw2x4yRcKiYVtJR6KU3zgIqRJIJNL3tTwm3C
X2KY2cehBrYqne3cAZTckQdwUgPPdJUqew2LqqVFKkiOLUJXmbyxMHZ2j9PR
vsDDSW5c3KTMZuQ2Hm5kaRt0bKnXCIl4iz8MLxiDVMYD5umXl09fF8zxgk24
SH0BZ2jzdGs0rMGo2pdZS5PIDpHWwQgxiF9Ci7xKi2O7SN6SCxYvXWXALDvE
05zYUBl/RNgZ2TtbtIBvQNOAxv42hzUGNzdGaUxZQc0lrLcxuDs5kXPcn52P
k/IH1XoPLvqH55vllcGif4UWMEQsiY26VhzFKr7WwW0uPnCfXxXPXzx9+fr1
F0/fHqCw/+/i29cvX/xeI7hMFRhZ47we1KoTcVlpWQO7JPZ7sTEKjYomKhTz
mihtiFV1xZyqM256Rvq4ld1c94YW4xbDUZcqNwtTpzUaWW97K29ZIh5OJHBL
FkFSAe8CC64TrCtuAs0FevV3NE19G1HHsKZgpoIpK4+bwMxSMJyPiqd5ki3L
RMmn0x/CnrLNSBbySHxm6OY2lAKptH2ZyUnljIBGnMsBGRMvJ6WTP3S1CjHu
brF29AeibPGKgLN9X5LoBDkGmnAi4/Mo2aR1FzpF9AUbDc6Ob8PorfZ0rLqB
QK9je7iPFRhJO7DwHtGOKpEXMT8eorWutIg4+XwWPXPuEAvS0uzas844dquV
hwGoeJnkzIqLmlpg6uBGeUsdnbWE1DoCWEpKHm2g9zGzrnFnQszrjTMDLBE7
4iSkMIK4PwzSTLWub1ow+kb3kdGq6Zg2+y3PyoOzHKyM7FPw1FMMIr+2XBfL
Dr/zcWT5KIs+pKq4D4cgxolOGfZsVLFmq+jVLSHeMhE0unF0YFemutksuBDi
/HnK3au1QES5M9x26hOXzKM8CoIDasR6SajZWyVGRNYIaiRv/JSgTwHoWZNa
bgHEBF3MkQMXJbcDz5LLfvaQTcVXWkS1nWd/aTNWo9gZ8NaKqItTpxKfBo+f
aDWQ2K7iICv4wYspIYnSOlphfU1ppoaoG6ytgitxjgBNz+C4MZ1LLJgC74bR
9qid2oEPfVUON5qv9cLv9Jcw+tZe6XL2bY47+10b2Qxdi8jS0toA566d4h3M
oUpVwCfnJ45GGD+57kO6X/Hz78e6OCLt5Q5uJCVV/p8qxo9wAjsJE/14cmRe
owXlX7V7TEg7uDeDb+2M7i0Ud8rKJRNOEBqeHcUoE8JnJbhRBcbOLaMbhTxb
7FPXewgttZuXE5MnlsxstphiODAWgI9esF/JfOY0XxoGjF13I9BxYR2xgjfr
jQl3O9oxx54FMX6TBDrrOEKFiGHNLH/deAsFo0+xNjH7vFm9M7LR92BkUMNR
Mlk39YbZ+K9NzVwB4bRP4hZrpJCnG10qj2LeDQcE0To/kod7szdjIPwhkzPF
npyJQgRDweO3PRv8WdNsjfYGgkiQNTeL1hO2cSMRlhzz4wpe7RNowoW2h7yj
sU7uHHK0F8WXMB7gTI7FU9avwhWJtTNK4jtVIMwjSMtDanuNZtLNKd0I51IC
NI0V5lUBBJ0TxaXZGaVbOKJf0CzppnbqQieWdGVzUCKYwgKJjy+kDIqpD1V9
5vuMRp7HUAw/by5TsKZO+tfZiE8IWFY2LJseuZknnXMQk93aOR/rJlxtV7Ag
fDbZmMP76cgMXWeFcVg6ByQyhk8OUZ86WvzZt1MT5rwvkp2T8Wv0xvfLU3ql
ZnLq7zOGkynZwLYZ3QCSMTnKtgJ52CPW42UY5axyCL0iDtQ6LFM6vNHv1qY7
48IFWgUK+AtZxirnCs9GP26zoqWL+kBNihBOijQa/VVGMPiTokKdlZSNzqOo
9iIAqsA+jMq2ReIjH0OINnqtUCZsN8tSu9N8qVOgrzmJjv5kqgwIqSgs7+d7
dCf6HOTdUzPM46jDQRZRSGEB1ufYwdCgQsiCChwh87CNePxt9072QbO8q5em
Lp+++gZYB9A9eet42n+qcp3taZrYNuPx7QHJBjSOaMnskeuyZ1iM8ihOhImN
fA4OpsBK+rOZGO3Nl/ho2/VVqm2MLRyNDUmsVZDR62FUGvewRwqenYDp2CZX
cJl85fCcTYO3oFZfau9jB4LGzs2gvYIZhP46Vpq6qDKu40zk0P6iUrAcrzEJ
HMk3apcxAO60zUhzfEfVBgkL7E/7gZ5fBx7BkYiZrqH4o4q01CwELPkjY/NO
lHmcN8uPBiu0NbKyVfk+++rX8atjrhF1F1MdYZ1aXe99W9uIKvcEZQRsjRHa
XQHDjH1nCLO9VIsKaot5pPp3f19S+SMw1mSPthQTkIp6MqbW7FyrLzT2RRWR
ULKpKWCmeQ3lo4iAVNBM44j9FrO0rX6UDQJELJEfE5sJm/Sgm0Uyz2MVjc4/
kMtAyy5ZmqamLuBpsWRa06oxJWE2z4EtFL1upo0zkhpb+a2VK1jIcBqsax9z
rfpHim2Hrcd6MNp91ZJbTcwSMT7inid3hCXB0mF8raFF65bnZp8SfJqVRAFS
7rQpcZV1lFRPt0psy2P3NLdB45n22PM2ktccBRpr+CdhgseBcmRMkWHIW61T
0tsQ1TQOGb8xXb+YmmFYfGV9BuzSa5le8OhyBeOVaFNiaD3SzjI2KOPQlunc
Tg4mW2ikKbb+2LPB514qN0bJe8vI3+xXUtcMfmojlRiosgIRbUXnRApwYdjb
pNz0xLIopUipgwza1BPG/naFM0ofPAVfIg2rM+Yznobl2AvBGalKXbH4BP0k
i1V1NWRVW2WGrkgnaWQq5VZxQx5NOywMCRwNZz96ePH+x4tPHtxXH7ce1b5h
DtItE2XJT93q2AeHfzSvur3W8h8zqjPe4BQoNfqYWDplM1F5sVuwxr+jgEyM
suafHbtadeQ5ChNw8vzo5Icvdb7l9cqFDg7MjZdZeD9q8hgVmrc+izE0tmRL
bWfUGmAzkCbL1TRka5Nbh3JlYUuddDvXJxkGb9SrexormzMRFVREIRgbGWlU
4Gqq6SpWXqW3uysj/1wghi1R//sLTh0RrUKGm7nqvf8J2Qk0RHoYKsgFWCKi
57mY5bLVFjVFLtlx7gOb7k/vf/zT0U33p2Ob7v2PR7/74f2ZiKvtTR3lY0f8
pDfCUCvatMH3VcSYngVPJu6FZnEpM/BN7jwtW+tRrAefMzEqjBxV+fHZopSj
YMylBPHHzmLTUKjkiO1Lk0S0XxUZ4ywX2H2A/nhNNuKhUXuccm+audyY71/a
zZqs7eoZ2wah8LdnYVKNmPvSiuh0/7uBPIbXpMeOI6VvWt+VbGhWR2la9cms
W7e33gpj2W55u9FXwl7Jd08AmX/pJ3R4JMr82SrctUsuTizIE7vYtdnqxWhQ
psTPRYn7lP7/V4vHLJpp7vD3aG5LVwXmJ3IdXg+A2DleKosssv8rYoqELaD+
sM73tDp+nULYWAZfrnY/VgZc2RdxKpt5QK+CMi/xwT/DfDBmwMx+oNoY2Q9E
UMB+cAOACpSZErtcIXlt6yggk2h+B7Zo6LQ/CT5Lii5DeNDC6PwD2uHZ3QNb
D7ynoHmhvcmOFqbq18a1qR+Q9ecPHu7/8eGPH/hA/nh7/7Pzq+68XV55ytxr
P9i2FbY96bZTrBOBHi/RpxYroi+DuSKIjK4R3yM5Qb1RL08t4thp8fIy2Wqo
M+6qPMgUI71jH+c03dUyRtMiZZFCTC1ZWbC5r66diz3zQ9W+2oCmTUMkIDg+
gg8p2nw6Dz8UtXpMiZ4/ND0K8LLGOkdWKveQmX46iSys8+LGkeIrB7lL0k82
+iJzMG0y/J7eLyluRMu3yG2QHY5QrL6muatGilLRGCOLHLc4SQq+4ohUFRVj
61h5fH7G5P0MS7vSmqSPGdsfXw798PgHHzJ19sxfCtfaGHLSNHzAAA6+A/9+
m3cNNDi0gD/zp+3ecChbo92bHQ4PhbB/ejevjS75zjpmaM0IfS3fXJZHGJlO
RqjszAmu7lULetI7H5BsS1XmKh37g7syUmei82dZY8Vxayz8Mmus2LPGwi+1
xop9ayz4Gx6zxsrlD+WiaoZi70t79pgoDrXI9GuxO8or5dzCagP/8DTOwOsK
sJUWPFdWtuga7RhrcFZk6w2jLt88ff487zD1d9T7RiR6ePDokdX6OmlERJli
Fvsq6tGEoyCeNEEwwh4JjrPf0PGy90D73WoZC+3s+YoZCUSuMH/gWDe8E0Ff
+69T7rx0x+PYbFYYaDRQZSg+iO2ln6acpi2iIZasp1sfy8Fp3sAd6plJSZOc
qZl/lH//Q/79r/LvP8i//yT//kn+/d+i2s5QLIvxo5nbsKBe7LtTdymtLWse
PBebPfPX8u9M/kUZ3UV6TnZ3hM5YvyvWN+mmr+U0ae2TnzJCXyOtrpy4IYx4
2HPiHEYd3Ygzp5oloihtGUGxWUXwAVSihkD1jylVTKf9tm63/WqXypbk5Pxh
t7mprLHUmKmXIJOc/9Ir1YwZKb5to6FNWHEnM/FDbnjLs5zduW4ijRTPTbmM
3cVUtKB+X6nZO/BLorZy2yVNBysntsi864yCD4dDTMpIt4oDF+bZOqDR5vuY
Q5fJ6K3EVknVQHJTbW4oPA3erGPvg7e+9BrX+AJZV1rOAgtV8lQjNIUJhhxW
pHKOG96ekciYWBxwqRUw8DCmLPEJFvSOg1KQ4h6pMa63l7MwiGLCE6BiPwY4
MvWOcU3xBp7bdiySTh7nP+fX1uxmdmp+Fivwo9nD2fsfZx5oiZCbvqmqH3fn
S5Eiu33m4UcPZzPEZmb3f8FzLJoTD+/Jr0/GrRRGBRy/ngFAuIyBER5hE9Bc
V2txGve0m5IOQM4IZeHsNszV89bfvH7eh3EPskt/HsQ8HrLXPwJjHbWQuWuD
KJOqIzvoTfXeBOle6Hry60+fTZy0q1Yi05O/nZyHb45cy5XfsNLSK/KdekDt
OhreMvgQZybLTI8Q11ttI89eO6MmTipgdQ/ZM0Zwnx0LNbdNeUfl214N+gN9
dWJ7tgh1VGHy68unbyes3CUJ9JW8a7l4602XMoSXzJwlaS3zGvIuaWppTX79
4NEk48v95vULeaFsCzg0UAM9CUFgdRLR2FPS5fNpgXah+O8b+e+b50+fW50N
RQkCqrGT3wiO1iXbxLgMH3z2mWyQkFQ7wiWJaBbEjKXJ6MbgW5XG/KxyrG5k
cuvlQS2RKeIodzTi0m52ZMuorJO4MZfiASJc1dKJu4vLi29nzpkSb6DpX9e+
q6LkBqVpcFkNAAsg5RyD2IFL2nNM4MFoKK+NsA8XkbYEEzsNJvnUOtRf2N55
1NgOBYbf/MODe/fvsZkWfnpkc0+POgMJmvsXS7dt6zQjOJ3TUUM+JO+lTqsR
0TLeq97sU7z1BwYp+ydKcRbkiTZgVdaNuBjOPCE264vRSPDVr0yDfZHODAHS
KCJEgVTlIQmHoCvl4T7z/IjliZgc1fjZqXRdmZ9OjSFpcEipSeKWE+tBiUSS
BOz3dD7sDyu/W8djYgGz1PsLid2zabyxaf21GszyoCM0L0njWTAm+ABMvJQm
vUSMXwGIsm2yCuDIOmiTFDLmeA3FWKOD2ORhOWP7erwpvSl7B9X5ZwlEorwl
WjNUb5iVq62DxNgCGa9zYh9i/Mk5b1olCqiOrgzT72AEhE3ukgX57Hyn9pmE
4L4AXZ22lAAkoAVWnr039+Ck5ci3id6JGQUseoDGms13M/4Q4pRntoIGbay7
+n47prEVItJnAx/3PozttzcZIzhPN0lqlM3RaUjdr8y4aXlWQ5YNPNZM4izH
PaoFQAdUHv4AD78UA0303ag1WfY1Gc/eWOLzgjZnXxUnvz05Egr1auMQPvGX
1GFCJc9qNvquyUhNJma44kYxxl7UWvqpIDTzhVGjaqxkiq/SLYmQi2t6rxJR
flOTOdqVGbIDg704wZge+rsfXuvwGFaTdLkzPoBT906/Lvd4hHsYg3leEGD9
Zqw/uJzXTC6mLcB5DeM1gyI/eGQcoet9J0tHnQT32t7Ik3yKQCzvgIBlf8xX
R4OBzMz2XZGxzI61sForfD8EXoJGCH6ZiqKw7FAtF2yoymKNdHJSFtPIpYEK
lKl7EoxehfApJ/1qT4XV1gJeeVTLPmvjkkHgcOqmWhN0tb9dddFSGEF3JSNf
Wsib+vhNg2Yw/HdjcTdMfjpfn2Gob45EqHoDoCgM0kJRmhJ1XfPED7z27NKe
F3GvjNbMkvuA+xx7lhZhdeJTmz66uMABO784s5sYUtFMBTujfvk01IPHV7ai
PFYWFk/bFjwhPy9LCgovDRPA65YJ+tzWcohZCBzVLOFnYXDv/KR7hlkc+uZB
Z9H+brkZe4RmHbyjZ0zmePe2kMcW0USVwu5QimV5xC4eLve7gaCVnUG6XZgC
K3LiLA2Fpb6t+ZyZZEWBX2ZUWItf1ZSOWwrpC8ljpeCMYnM6Jr46kGNhL8KR
JVFMjNddEmdeNs2ooFaksZ98NnQGV5yrM4b3ptp8wbxKar209ZL4SK6fWSZa
yYjK1znZq5WplFhLzRPXXQxSxdAVDQlusA880QUWzRJxg+JjmdCKOMBsOGl7
5pfmYZyg7UcYm15WehUWWg3Y2Arr6Y3lJZfF63bFwGtk9CrG/YFP6ypC6FPb
QNVtZzGwE9EmKsDbdev15aNOvV7bWQ+ph3mEc5+Hl8Z9Xc0V5WUVl6CEtVoB
52ECM/tBGzUxMIwY3w+HV6fnRSpjItaY/TU1hsQ0h43SnNPFVfHdU7E4vvj+
TNkQamZQRowvIj08yLQr2P2rvcrburPaeaVNkOvGmL5lRYzqIH3zpD98JUt5
qKCLzVmYWCZJSVB1ELWG+YeJbtCAsSVGRjNVnn+Wd1MKvdaC8NtalRvpkicR
OT7CZuM9FPbuuZ7g/R4YjEb3YLK01I3mUpy7fa4YmZGei92ea/jggF4n+Y6Q
bOJu1p53lpqVwZ2l2EKtdKe98ubZy6SK1nx0h8wBdJuTpRif5wxOByOZus9T
K/PUj1XXWuSeTCxyE8pBjWW8ePAWDVh8VOMZzkD4OkQ7NQ6Ji99bKd9j7MiF
sqicQycDM2lMMTEMlGPOwmgv3n9w/+Fnxenvmi/Pos6hn6S9gotTmU/IkfGI
zwyMfzjmYm/MU5Hq787nzRXynASbU9n57TH2+Hmch8MpCgooZoeXO6+M8Nh9
ZkUaXpCMRb7rtkpu89Rr76aFvG1SUh5qSF3v8DmmEc260+hACt0G8lPE661x
xZCVJvurEYuYyidScx1vs2knrtTzIwYISkCUYCNBJwO7jKOJLkH3mUSxvmoR
ReZHiIXgSYLC+Ml2c5PtWq0a/sPbt6+sBclvRpUy2SELp6Otf6bIE+05ZN1L
rAcIGkLTBIXKg3xGSWE4lE3TCD4TKWIpPK8mdrZ8e2fl4RqI8lm0m8p8Xehi
La1TWNEl1cExmQJZRVw/acBgFFSaD2fQY1qMy+2t8sNQRqpzNrI0Vlq7V5Ro
JbjyaAunPrz3UDQ+yr4Rwluj9fC1AvWU5cpHRXoBp62nP5aRs+2LTPJadciO
xXMQSwPMlkw7Q5MtFFreG5POsOe4ghbikBafILFFV/FiuWSaCseoJ8TSHnK1
qUtiin5QsGo6YeFSHjodCaR8WHubqtjfVMbQZJkx54q2kOihMVjEW9kTfWmc
ZpriBvi3dUYtnfoGuLhjotEWlUTOoGsQJ36mjQOUdW+vT97UKBx9nrSozW1E
EIZvGwv1moNtTU6vIkzQKvryJ8uHd6AgWyqqz184vqdRc4BlDGtWp76A5YhD
zmjv4Qm5tLHY/9CmxnouqsGuwhBz6rKZRoUOzCyaJGxNO4aJuFyAPd6OrS/g
fhbLVd6daJCs3EupiFVbIL5VHR1IHAEmjI3y1uD4xhyjRjLv5BOeR3qgA8sp
pfniftK9Qt3nVijc5T6MupGAEA/Glrdb0lKo1NDqJjauZZ2Xvqra119GQ3V/
OCztj7ZmLGWur+JxYQwTW4TzpdmGxw8foSNVjBn24QNve5RsxV7R9pCHyicX
55A9MwYKEHabMKRm6C0+9rPH9x+hEVY/JsDAmz+/fHEZno4rnhKH3O/5JhHE
MnIjZFv2WVhWAQY5fgxqI2uYEJhdzS105S7aKwHN1OKpIhWW5Q7CjIYuqLMO
doa70Uy17OlM/OAXBL9gnPrjbLH7V5Eabk2LUetr6wEBS/CXNhEuRk2EMx6L
jzURPuY3ZNxXIdsDoqtE0xxrw6z01g6Htn4U3lLPa41Vjh30JgExzDcbBE2c
pibloGJ6Cf0ZTLN7JvEspUpEhF4FI04dOY30QP0DuE/JDbWts79iZ6nZ0bGZ
scaE02RKaCc+hNwCwoMgiDdT7V0tliYqIGPDM228ZGxRq92oh03seZhJxuds
FVndHQ6lYc2sojmyhnumacEt2hPlsaySkXtdWto4mvGnH2prEbStBSbjXxAw
V8lkneccCc2ZHeABbfsq8Q1q+Lh9F7YbbjtvELP/Dpby8a2k6S1ArSMbTIbv
1AL9t04oPhvaGXZbNFGznojagU7BiqJKAzzxUYvFZy+fn43TLN5nnK5f5CPq
NyDZYhBN+Vcz+jk6fqI/0azOUytakcFLk+YKrjlBliBv44wR3PzW2rpEdrVt
lGnFPCH57DcMoQ3Kq/CiUJSkdaIykJCOhy5HsogQkSDU3wJ0e8uGR76rdsY2
vKwiiR4WbbtJNfex15xWH6OG19jozObGyTT9jeNgW9CWO6Mq0SUJqg29mDwu
nVquuheGsvNwqEclsdRvqWJPRWGehbiNvpNfv4fr5q6TG260izMer5t20yfv
V3Vx0KfOqxugNuVOxkj6g1HUa1k//FhPd+3yUEDMJSv00+uu8xpmZVM9s1CK
PCC6T4hMKfBX5WRwLo7lttMubOVGYVQ1EOo2uNK502CFIwR8VxGWfKBy7K4j
TPSlWEGlGnn1WlwZa7UauRNcJwb4deaTiKgygtW+8NgI3b6asI2lNUcZ4Y/S
e2pXAjpFyS4kzDrRLiHUkVcJY0uA/rI35FdTPLj34GH0+g36cZpHQ447qWfs
IrvhLTEEpjvg0sSh1GLqLGvGY4PTxgN8IvqhRN4WYBCn/1xnPQuQ2jJClnJl
YGN9JrLmYm2WnZfNpbnwjRMxJ5quze7JDrSyeWYkrIWe/cAcpPeyvUhAZ3wX
PZktmWr83oevl1/s70dq36W2Nz0leBQhmB4sSY53qVbLWEjCgdIEXlXLa+WW
H+9yt9gZEm08b+7NWgxfBI6L7TxzWQkCKJtoQmSOKCg25uUCIkrs/VohbBtW
1+i2Sat7qmjEvl6Rs4MWY/7NPOboopwvtCf8dfI0CrvSxTNOO/PLeZHp+yyk
JSfPifvIf6NyOM5WrDdgOsiM+PGtOCHLg5rVMohvjZ2OihtrVYRGKt3ue/J1
nivccA1G7aZSIvebrXhCM8VmrlIdk/p5XmaE/l5lw35OhfoBQ7Ya9KTdZtGq
LH1Lsklqn5YxlEgeqVgMKBXm1OlA7dsA7GFXelsmdxkYYRKFIqOhn2w04dH1
MUimM1ISN47SkdiH0uIOovU/bCFMXZ4wP93r2WUvUrE/F6xCiL3aPmRkENkr
06CWRR+sw6/mb7L+LrErNC2OZAHf5ROMC8itWmqLtX4tEzjVlkydZUgyY4Jh
Mo2ieUcLakSlgtPMLSgfzfmAsJppV5iclyI26Wa+r4Laq/u1JtWMQpJQFe4+
Uq2QGXQaGxPPMtYGaz5imZqQbkevIKO7yZljYsfwxFTerjUWAdMLncpL62yR
CI5+UJIoTPQX6jKCI48VDh4QsykP5iLjqOkoKm82PtdeBLLvbTfPtc+VLxYZ
ZlH0HFSWRYyV+3DRftQZMCke0wNxo80Rh7SomyGMGIT1Zslt7DbZePdylRqX
47g0rOOSYxolonEWrpJPHJORIUcU+twRk/zWY+FsjdCNSgCMr5W5VOcg/FDz
O21AqmLC+LN5f/fyabwmKMjNbgMgx6CYJ+u+Q8pRp3VMuzTjc0L31YWSFWu9
pjWhNAc2gv4yJk/aHYw1s+sRk+ixNcKqnqMXdfZ1h42o6SjGM9W4BWvp24by
uqu0G45Wg82tOuadivF9AKJZ0QhhlNE1Cp4qORyKfhsV8jYKe0crPqVMRbsv
zV2obeDnJU2fxZls7tzVsxLQ+n0Qd2i4waF5loHw/dNCP1WtWr5TNdBBS7OP
i8L6w7G3FCOrZNPYxWrbs5WYWKqUYcQqqBbVryINfV0FH2HFI3wJz5TsAnGW
p3qa6ZbYHEVsQ2xdOppjoA2NvGabMEoOJzMYRH4/bcodg3OjYCtnvbckLSR1
Pj+rGBDL8aaXBzTod2U9pNqv6eHD6TwHhiQyVs9jA9HWlPsjwaazEEumnrWE
l+0PbENhjr8Wp4N13dO9jcrtHDrZSCLmV8nLQYKjXR8MqDXaYg7LFKS91Hn4
av/4ag6axyNCs9Tx1Baplmi3fQYKYzgD1hndKLvYcxqNUsPlChv+mo1wPeln
8fKsEYQmXsVi3zpBlQs/byahaM4y57dDLC8qIuUdVifca+dbi9ldt8AaVInp
jx3piIkiSC32sYW+cUmxNu5W4+iT9RocvqsFxzWyeWVTsY7HAUzA2lh/BPXC
oBhFegKxdua92fUZXgtV9juZTEBGeRIWrTI5QzArzVKk2LA1m6WN4ALZqCrD
ryD3sf7jmK3asnuE+yArKbFDHGK1l1hgZ+DecdVhL70EHa/SHyk+GS6hXWJt
GZUbWoeq0tCdw72y3dxU5W2ppoiVB8rzZR4tH1Xp1MFugQVMQ6PHbKneIK9o
DN8rpV/MPMGoUh0P62zZmsWejRtVkOiWLc8KV+AXcAKyLKoMhPK2q9wF0wqL
WoFtZvUNHWYswK8h7l9nPDWSNrQ7I0GkTNeQXxJMiASvtX9u3l9bkwqarZaH
f+OUYyH8zmAZWZsmJXZjv1Zy/9WrsZGIw8VbIc5OQGSGdvMgQm2htMIJ2yAT
4/NfP/eyenb7ZHGgNb2cOxtaijJhV2WFKmggLdaud+VjP528CELxfdoryybI
0kxTDhndnlbWs5TRnD+8/fqri//j66+C0oNNo5uXRYDQT0ND0a5PMDSmImDn
sR1Z8Gydj7pAvQPqxyCtGvgJZb91PKk3N2VAWw52PTgBOQNM+c6BZAnOiEhx
7jB5RBpja6epNn6QYYtUkbNwHp6n22KHAW5n1oMNlQ9nSHpjnJ9GUWPs5mLy
9eNAEhKIY7KpeJ5hN8KKSiRqYpUSdghci4Lkxy+WoIqxCZY1vioddGO4oUDf
Usbe6nBtEu0BhT0gtu7jS9wYYwe/+ZdtyYI6djhv1xqrXo9W01uuitvMHLRh
9sZDNgBWqOTt2x1kMsgDcwjiVP1g77enoz0EXCsr4rj2/2PwxGnW+b3pueBR
NaS2BcrNbmOLvPe42ZlawNqVfbRU3EBRwSviqI7ZtzTyNhuazJFB/o/vJEhT
jRNlcGsrcNCwQSo5jcWWrILIdD0LWJRL1O6i6mrtL+6uLiEf22GzJYrlm2+e
P7v4vfwnWJk0NGSsCUZTHsIREI0enDHXH3CaEvrfNDVgj9kSoalZv1cum/co
3qNKyDLMYS4Pe6elQJohwQbBLvQHozcXPkJHMddhUFhI1A8KAhcR/tLS/toh
oPgWcM23HO3z7GHhMnWbV3zBXwxZyA3g/XIPKDZ7S1GDjHNoxevvGPZ2z8Hp
HvYQRIYaJVVQbfTxDXGkA4F4pMLJSB8vnZ9w3ImCxfOtdphvLASgfk4fUqiF
5t/7gWg5Rly18QusAw4DZzEa02grV9O1D6pZC9eskKEeHyTLarnSdnlVkYhV
WIUAkl0jWdFWK9ohsmpyEmLrQzzmrsFrzNHWb0R0sgyx9nGJUB2klYGPRnLG
+3zhCN+UkZ6dc0IwnZw1mD4OxWcW3s1NJgg0bMTWGcqmpJ/KEZ5hUwSLNxAk
tDa8AcszIDGsF7TGpNQcGj3P6tiUjkPe5ZUbZUo4+tZpo8lRCXRFbgKaqQ/d
r63kHQ5tkfBYmgczRitE2bc4K45fW13PQgyVms6/jsVT8tbnixE0ssWjnTIw
VK/ECF7t/HMt8WvYS0S5RWjFL6tbMTY1BrPLDak4tGjY75yojf0p6jXta9i8
aS2DGo8ZchE48p6JPrpYifW38U4cmqN89vL5tHj1zeuvpgH/KdTyUp9tWZLv
eTajYVl5F6/CGrdrQ0t8bGAiazQIXDkijgZIMruWxiPVM4W6Bm0IF0P+wlv4
gI+diS1CgNi0RSfNAGliY+0iQ9gastmzI0MLUFIfUEd/vS07L72N88oBsA7i
pq01UWfWr42w1T6QOQwwcZPLbvxdZzg714mDyaxOLDFrFZra9SHYgsjl2ahD
FSPX7n6QhL92ea7qA/0OrQIxlhrju/OOddg43TnCS56i85MqAjT+WMossVWc
zA6JOzaDHuxyzrdj568Ky4nogOWyAP7g/jhNWL1hNyNBwFnOKRiUwOCt0m2k
IbttR5mybaznmAOzRx2igmU8rzpt77jaRf25M3YIcTGX+E6H0k+/iQlCObbj
hlNqC7FGOrlvxL1fZ8g3GiNK9886bGbhN0AW6k0z+h+d8XOtZjtqV2MiMjPZ
Mk1Hns7HbLXp5RG7Wx6udvewX54KZiYkKapmWWrdjrVUA+O+AfDySg/aAAiJ
Gm9N2yqOqfiDr6ySCIbgf9hrRI7zkQ0vZo7nVa7LvRg+E4FA33Wli0B47Oxg
YJ0z4saS025ZMNE4UJlOfkUdqnTbRhtYys/v/O4jlqByMBO8nwa3z8rsHHLl
fDfhlPpI7jA9bM3aLlRw7wmIQbPyG+XMAYHUdkBk0TbDND5E1bd5b2Gxgnj1
bJCFAzys4IxqkVY7FjBT8y3rpcJdSb/qpvvkutxNOP2YvvufP/psKv/99DO9
9f3PP//stywpQP/hkz62SLNSOW8PlybKuhWLXO7auxN2A1xV2nzYvhzSl7Xs
wFq23cSNcorNwR+nsfT5LEXQM/J6AnXQeIsHjk34mgOup2xwFt1k14vEkuz4
m5ItOvps75DvRseSknKAD0yzpmSviCfwIC7yjfWihsEhalQewTEgRnXubH3U
YpCVEDOaPozejNNOsrtATZJTA5tyQtjCYLFAoznv51K9R4yxz2j9FqUqxYUf
S83GRfRLE1RO+3lwdIavwIglo75K7SrU1yB1fQVgJMe+cl5vfQNZ80SmEZGy
SglWFK+Z1K2sHaJ3E46n1tTDBMl5rSIGNmBSWPr+Lu/GXsqKiAU6KJ+9u3DI
qKrl757XzlnnYjhirNeC3ZwD0KiUCT+g/DTo9+zFG2/WknXsRqQUQzdrWjk8
WacOTvyqi2aYPJbu99wV+6g5eWwvGU0p3afoXa9+ZxKhXNibypomueIjoC7I
i3qwSJ800vk5n0aJcCZV7Kq+wtW/owRTLAK7Bve1AnExeR7stpt6ynXFYnu0
Oaf0WVdy5nehNsa52rH2FJkxLaSthemXiGPpOQNWvTCgfx6+BQ7X5H16cYLc
x3pYLXkgLkQAqOPlUHhLGhSVHWiC2G5b8LIS/t69qwYtXEYoyTwrB2bg5apu
FvT9DGI2AnLoJs22TZ+fesi6tf8WW0XErsasV9Ntkt9bZwy2dhMBHHqIMnE3
cqpoS/ZHWss4TyF8wzWagYv+rLvFdq2RFkd6aPwFb/KVL8MVTOVr2BAn+etZ
Qik6pkXfto1lbUQ3oTH95IZAAZ5Wg08xy88iLdy9pjC3rE3WPqa7NWBDvrZM
xnmvXldv1sUjQUwGqxLexQPrLG8ofA0a+Uhggt7ok7NVM3FzZSXs28bbI5jh
rAmR1qNAuLVWf3TFDy3RxtdiMm70IL2rZnA9oSNG5mfE/GVcFCmxud6yi9No
LizwfJ5xLgQ4mNq0lJ0B9bkR0AhxV3WbyvL/nRIFR7HaWrQNiKWKIoMdY3Kk
haL9sHFToqxPmTI53WQWzttLxuyZ08VnolG/H+uotOhPqT9HcYWyuP/o3sy+
rS+leoo5rgwu4uM8ffDw/adnwThVHDLiEdIEQJHbygDvOnTxJCGuFQCDjeKq
vt4aHb9Ci4ov4MnwYhgTZIWK2jLRpibASqRW8kobLarMZydyDG0b35YYb91s
oT59+SOAnIZcVVlDWBT3ErhmLoidHHlw/gy3W9JYGRFZtKD99diIY4xGgchT
Enx91Z+ZLAD+ZbXLLe8oes9zjmExW9o5Sfmio3N3owCBsXDukp6H8gxmzQG3
9CLSUKkYePbyeZa0ff4suphKGBqJT0NO0Q6GJAQvNQTLlbuSH7VuziU02JtZ
e9pVLaFAmiSlmrUOaqOWDMsKZUI4ZdD3pusIDG2YB11aFCGooaiHOrPrEa+V
SdWUuR1ULS4zubLaGfZU9JTiDYzVRYxry3fSqEO8D8uZKjqAq952/v2ZfD8D
IakHktNkKBNZoTEAOovIFmX3U5O1q4KsKJSFhj9NXegMfuB+2RCUR2R01xe9
r2mfJSPJS9iSqFQt8gyOiGeNlnbpbOwySz9WMQ5YDhm0IBX910pHHgydfmWS
Pa/rJeEO+XZgUCb2HTViPWIfUkkYEuc80HzqD+qDalAgWSSpZSDMbZh3sjHM
blG9ItpnLnrvygB/u4Sqorvl206DEGLKWRk/6D6Y0j7V/CJOKev1jLaAOHPg
KsTMKr050NoMS0wFm5X1g0aFRsFx0GPdlvVKi4SseIn+RYUI9m3dtYxGnodL
1mLOACGLsbwsWpkTjiV6IUvNGuNnpMhHDP8ngFbWsPdAfir2Cj2jUfFM6DJS
Y/irumdnObAqRXUjDUeeuFDemNQOIKPO+sL6Wlj7iZjP38czwYpJcKs9c8Zl
mNcMXV46Xw7jT+Z9hOgTjV6XkJgsNRfn2qyAb95kZlpwM20vSk/m1b54+fSr
pxpZe9mAno41Z1s4JHaL8BS8gkB0yAh/QLqm7QBhKsVZb6+VHgDh/l5LLqz5
cTa9waf3iOlYQCZbylNW7qunT1/0qZaet1UUJYfp3H3KxmojUGwOq/nrSBDs
1XuyA6yyaGgDuWyykcVY9ojRIq7nIZ/enj3iFqEcBHhLg5PectznsUNGPMm9
BYd9jsb51T79PWSDtCXFjQyJ2pV3PAHbRil1D3In1Bh7jN2xZEfLQgajlBpt
eVXvTLMjn9wikW4KJnaRvdlvYLo3fer4ZgfHS5Id8SkPIehwaJSFMQlngDD6
aeYIJgxp0C4emrZolwnijCwVN0PWPx3QAjdtM/rTkjj1EbxuHMVjCm29FpcT
acyRhXJqgwqo3uQonr95aZBPbmBK+bzzTA6AtWWZWyv4kM9wpBRjbZpumDqL
smcN+kZSMSSpqEVqFI4vzgxkj7ulKdmbB39IthXGihCmbzb+RIkxkh6RFXFc
TRgmiaJ2YupqyXw53zjrXxcNP/IE4TvaRj7oZo24MX17k6OZEPlSjKSSBaiO
5uEJx50Rxy3z/n1sMZaHB5q8xs3KyRwh46VXqCAxRj5PD33hT0DaHrHRobUD
kd99dPhoQLtCyk7PGTJXraaEMrQiIvULljxpJiP4H2KOzxFAVgzhXLwO3jcP
K2sk1oeIC1K23sywtkUwF0cpWh/fv0+K1pejQ6C1TFq3DcuCKWIvGZFNika8
TN0a3oBFPK/tgi/hClupBv/yvWVScXEazNcMZuLlQviCDh3memTjZ8u2jt+O
RoZqBka+F2HUb4seZ2lCsNXzqTSk+0UvAI+K0zbPOHCVFE6k0sQRJ72x67Jk
xEsD3lgo+MH5w/P7U1U4EaJCb2KrmASLiVKAIC8I8H3VG0xLptGgCiGGHtJW
jgOPXc7zQnvtUi6yjxgDEGAug0deYayMwrXEGeQvms+oNuT1zRq0iDEle3xD
WydJTzACBdQ4/71MuLV+IXwt7Jlt+zLFapEzeoE+dZYmBD4LB+YZbETCAGxA
NMbChGOcsW0ghEvDQpMOLhTj+kDKZy1GPdycPiblYIh00sq5ASyD2AvDnsGL
qULSncts8e24cCGbZWxG5ZVasQdpApPG3HLE1dihooiv+7SxvE6vbdIml00J
IFTexHSlGdU7vHq5mgW147xL2xP6sSnRCLrnEVdE1FSkvbPWwqO+gKOkn5wL
pqsU9KmroSaSRR3rpdz8PLwuLTQHi4aRH6eDnaOgG6vHGCz7tSbUkyHZT0/O
T85CpHzOA3a6A/gaLMwus8CBHT+vfm5OhtQILNEQ2LcqS3GPbcGTbG8yQU8t
eHgmoVzlVNvtiUqJw40D1Al/88IQE8C89dkJpphP/hDSE+5j1uPEbwriW/sF
uazqko/EkbXzmBJK2w2oWiN+Dsosh5BannrQhvbKGcK49y15+nNMiy5tBog2
XsE0m5WqzUD0Td5jxdOQe3zvW6e8ANS02a1H+INQuohRJqEkhgqnJdAJTIUJ
WTdtpEDwto4H7Ekxhqh+ORaKSlejpOCxcYBVQCYEou/OydW7z8/PzydFrBtU
OUOTVtZnS3ambeWstXVjAZWcaacfyqsr9/pr3FRE12SUoy8NwR/LL5aj6Jtm
uAwh0Bsasik8Y6Q4VYIXI2hmGkZwUIOOJy9JA/rOBCTGC4fDijTPIRPMoS43
7Mix+GCGiIPL2rjkYMFYaq/MjRvGosTUAZB/5JsDUwmWiWpncNJjkltbL3n7
jJNs56fozVG4bgR14BAoZDGDLRE+qWhMWQKnIJlqDg53ORUjerhZVzacsyx4
s2xF1ORoXbPVJoAtyvoajiW9q542TBujiqt22Ofw4ergC3rvO61D0Grm6wpH
sCWnn+53bIF1HfsjUOMyUt0QyXFK9ivOyW17V62s+o+DD1ZjEZcd7ec3IOEC
dFO9fzxQUVbZAK1Ay4HcHmkzryiy/nlPbEJu7WxSRvGVcNegYCmqsIwEWelu
jwtEA67AlMr2nMkSbMrfO1IWE7XqsyLSl8+ffZ8VYDOEHwwS2it13P5a6FEh
4hwwIUBYS2Olo6dbLd5lJQMUCNH4U2KSXqUU60pyVL2fyaBnMnXU+SBvkb68
PDHjPJWDolXGifw2EsaxB5PzDdHXtAUieYxIqa1Di0b3PLNkcbyPXWXuvqJn
bgiIqLV3i86H74K926lT8GY7n1m/US2+CQHt17UvR7XMmv1Mi2Mnf19WsLbZ
Dj1bAcQwoGHtIM4AF2OiWwN9WVFw7bnwkGetiKYYKpWNfXWQv3cphO/0MQkd
aD4yukpIL1QlLVSrNpCBy2+W9z0FAaCN50yp9nUbmjEYocVv4vfy5x2w/PDU
y1JZW6wFTurpyZ9OnBs6ixLksG41JpaIELfkFCqDJQq87J6UquIkK6FbrJyw
t1BckQvyOAE9MowJdXyk2SPQx2esweIxNdYlZ/h4hpJsNagRasNH5lue9I6K
N6v0ttKGSTEq9Zto98ZqrDShVhI/JbON+N67UVNux1k6U5wmWrkuZMvS8v2N
ct0fIzw0xZrxG75VKBAaqqL/ReKSixWkYzYqBeZoKTkzmSLRIYmyqJtBAkla
rmUz11kK0W5mjn2kLSSmNGT1gGKNjXbp/qTtMySWHicX93m99nLVVO2yEhXZ
e8Mr22lalgYlZCUUWjGV6LIitLmVh/2iEvz6KuzDrxN4blCUmijWwTinMIFd
mZGZZwVCtkrpwSMCsGXcir3zzM4rNjbrvPI7McCxT6xRvinZEfKLXTXEUvhT
Y00gd19s8msF+eZ36s4wMdpXKTmssSuD4GVQYZAxxFbeJD+NE6xAH1ASv8so
GzdW65jgjMoR0hST32KrTXJSfGWY6bVeOTsE1ualxELI63Ad8tNkEUmTZJT+
+Vm/VGy3H/nT0uoNnIDzDESx+uTT0gkQzzLhqI5B4h5soxeAGKYV0oIsuNFJ
tquUntUmhlBidsZc7qV//LKQvhLPxjSE/1rAWqF/Y5zTJBTJWjx5M2YtMXkf
Q3t+8U1LQvrranRRYxxaiskAaiH64X6hlZwvVm6xiwhYwdaqIof0wstFcYJU
tLAshHfIyKi5RImHAHGpK2aKbK6iQETa48wHkO8AHTM4O0QKZbN8CpXUVyRR
ozxDVBRCUu/BcMaqUmYmZV6aIK4B/lPFUujkkQOY5D9pH33trRGNfakc1Sks
eUo1B+L1LzYm7iyYWKTGjPXbS5SsLqdxn5PZU8liMqqV2NXV6L8CupbfgIXY
t/8APW5THxF9v8p2/SvVOHHHp3MzNWvFOh+nnZ9HepnC1VuwStigJ9p8Vvls
iCYjb481NnyWX6+WgLGI1xkXpcvFKhGvBpXkesZUjkeCHVYr6ee/obzBEqkf
alfB91bXmELDPWvWqvAF5FCV8BgiElH56XRc3qrVCWv7VOiWqDb08lSFwGIq
tNswLZVPrq2/z7H9KgrhWsOh+nB+xnoHF4+ZweNYLM3B/ByJZ5Rm6pY4xwyz
KB3jtIMn1BI9WHbbCAQ+NTeihT2u2RNi+D158vXlOYALeVOvvYniw6xH0cTG
Zul/7tIJKmocR0c+JWi3KBXS5g+OVWdDG5MNraaWAceiDRQliDjUkBgPzr3z
I2Mb7O/mD3UAomK4lrUDOnMzP8QShI5FY3OtU4v1RVO2JZqYBGYHuY5McD/x
BL9Am7hma3bAkaebAo2GJlZCYkAOPiFNlOHa1eQVjzqi9jUapEWK/TSDLHZU
UWo5eVMGPmEZqxfh74vFeluBLDheUkZtUqg1FpuPFeMhBiIXY+hY8YFZ5Zec
MgvtEwhFqGtmbIF9FRlnbRNsFf0a45QZ/e7Vm3iD7y3Gb02ryfWZgUzEO/oO
N5Gt2H9vBZMMreVDK/MDYAdHDum64s1qZzoSCfHdi6++fiXf/T5mv9MhGu/+
SbploHHXT56E8N9oMRW/dw9dxMaLNpOkaaety6WlFAYlcZRhFJHHz3pFmAxi
ZHXb5G/NsgGIR34Tl45KxV126aKfc2CvXJ08KZ7tILIWgFQM/MPlR8dIuGuh
oZZIGRe1E5IQPjIdzX5dkHWGRfN3i42MpcDorft4grKWB7LHiXvlFCn91cFL
vVGr6Re80/6s/3/wTpkcYGnZ0ModRHuwzWg85tSOhgvtD170myb6Zv9rL2Ds
1qD7EG31jKVDlfWeWlMts09ht2cUDkrqemLwNUQkE4qVH5zFdDhiDVY/GTNa
tRtfIaGztGmjBsVM9xXmDJPB2bjIMy4ffYGQyzm9PIsYxTu1OXR8o403sZdd
wlbmjmUvrRggI+3Qgt1s3jKdHD6mky2771oRmIIJoSqTM0t1yo6ZRhvCQSOX
l1Pdl/yOg/yW4O/w+8kb7cC1axh/dBYzJIHNqlx9R2DaEK2uUYgNdpc5FbFO
YGc8J2LvyeXW0D5vaEB1Cb0vKrDZZm/2ky+TXkXunGIlIO6srch/9EZZEM1r
lu11MDJ7IZwbT+d99N3yu8G7L9J1xyZHVu8Nc0kfPCqJ7hHvxUaT+ugYxgU7
emChwcoxFgSLmBYly4+HghI54Kq+jraFQv3KPuTRyNagQKkK2+pnvfMTQc/b
1ITdB0QcFcKdy1glFauznU6PfRZSQzaVMBYQxNKTir4ke6Ebie4WRKPo/23t
WpucOLLs9/wVNcKxSBtSP8Bg3IxxMNixZo0xwWMfgYmgWqpu1bRUkqskmp4Z
/Mv22/6xzXPuI7OkBjOOJTwDrVZVZWbl4z7OPYfB/XomNRCp5GHknPYhsQeL
DyHU7KxmQkJlElvB9yKBDkDy3Ir/vX1rd6+K9u5YWVOCRSH0okzCTruCeRB7
sZ4Dz6bnAOlX39XVZRf0W/VSVGsaC4KOrmEiHLjXMxAy/41wvrUzCVH7qJug
c3SJZashAqOEaWS8K4TOCal4P8AoZUe6+0dvWj32LKQqGQc37Fl0k2dB3B2y
CgN7LxocJLnN6dWmmhDgOgvuWHmMkxj6aFNOHL28FIs8xYhVI0xAaykyxhSJ
xz6NLirVu6wk+IxKBLBM1gJgitui6whzHl+3F9BFjgbyx709m0gfnzoqXtRz
GXVzd1hHTs/mCEioE4OBoO0kISyFkKCHWm1FPYTM6xLCiWYUMr074YTvsqa4
koYFDvZa2ksqZJfuhwXKcE08QN/Z2KIBk+uiAWMp8OXJoO/YGfCrrh8LcODl
7v1AXSV+MsD3XOXG9uvfSTwnwnvMOMx/P/yJ6m0P864HhpiFiUV0DuM06y6l
YgzcS1IVLaS+kuQTlAiXBgF2wwE/GagwKY8ozzL1Yb6rVMhdytSlWkGKUSKo
tRlZDZviH6r3rNe/7kVFY7mZkRc/zPJ3lsm5TqnjhxCWHaZ7MFrlaKE5qU/I
Z4fkRFAhsxNZ68XVwsJkPoTj28ou22phWDGiRUxwTdl93mFmgj7ujFF2ltFA
I8JELJ5pjL8Yvvzh1U/PVPjvd78m0RXUNKFDUjlegvWfVeNZmn2kaLeL2ijS
/c3GT7UmPq8GIKabHodvIRYUcVOcUJjNt0Xxmq15I9ByraZtkmiVEdJIGELT
bNwadwL9WcbB8hGW/AjtFp4Git44KkxOrhcroftinPi0jTYAcUumTRAn1AT4
E6n1YFFLKyXkLHLUd2U1H3gi+pGzmrscpWgoxZU0leB01eaHR1f0iTlldUyt
qg6M6oiPa8xUG5pa0mUIX6T3e10da6tMixEckqWp8wK1U80opxjf+ukqOhAK
xuPNS/XQiHo9ugepII3dxamAsJp1q0i6K3HE48m+HPVUGnpQ/oz+QY5Qhkfj
PNV3lu0Gol+RiiLlqdGdUIstfQiAcHNGXYu8DoeaR1Jwg6oSHEcu2hhKZ8Zm
Sda+G+STPLbsh6qtVM8l/sc6po3KvhtybHWqFZSnzn9u+R09iq9MPcP5DzZC
y5KEFdPosrAgHuUdpM2TmJ7scV4IK11QNiRYU0TjedNVKlPmgKGTh6nYU4kT
y4aaDvaN0ThTt2pss+/fSgXw0r2C36vQe8lXRgr7WKxM/0U7YRTT2MjFNCCA
YtU0km3JZFM22VqGmbrTIe5jxox1livg7uX4b357Mwx9dACdHCUw7Q74Y690
RN5PSFrGSceYpYcyp83CxG0wEvHl/tv3Lxm0ABzfMd9WHwADjJxl2M/wTcur
4R4C8NPbPPv5xctg91HClstVDw7jWwpDLEmY6xIoZKv+CYpxJpiIZe8onYFd
IoxgPANEcNKDAYXWckjcIHRSxSalZmCPhYUqbkwyiV/OtwSWUo0AS71SVjdu
c2VIe+7OdndaAczeST2QEj/KXch3JcriNNJCPzojyiVXeSxT7ACp7jKGxLHM
0p+eBIs86Mamujr5+BibREMGVfQiP/fb3ssMquSlE5HbhGaDd9HclWlYJbDX
OITffvstusyFKXlAPu3k7ld3bh8f0lybHh99de/2Hd6R3w1+YHx0LP1sgdx3
vQbx565oXSh3oRjmdlsDzf9Lw4rMvDcu5K3TmakNAuC9vBTxQ1m2wCSQcl6g
Fbpl6Q6E+e/LukmYVC3iKDXfaufF7okb7MRVZ003KRBBiOCimnduq/OhFsSD
KtpICH8hOK60M0ipzvKUQ5XBZzIzX+QEaWWHjG14COP+kLOXPu7vwDv0+2G+
WS5Ggvuz8Cgmuc4mPYrMRjISgdxJwE6H8b357bc3cWi6SqIkDShQOsrLmreu
BZWCbEb3LANtp4+QlyaqRLXqbVADURtJVrns9JgaiVFvFoyYDFY1xIyXhXMD
K47MJrakXClf0iNc/Qy+lFr4ARiYEUMEQcecjoEWJ+WflBBfokNcP9xmZtUa
LJXZAcUyqTPWitegGnMPWNlRWL8iQGLoQizK5oIN7E6yhtzsAq8uhvxVcTy5
PRpnR/dN0Us63DlX59FNY9HFl5N7wE15yefMax38+jTPv54c3zPVaimHJLVj
2W2CPH14rFxUo90DImswdeq4pYr0MH738tGz4K9fG+MN8O9XDFOPC83OkrLt
QHe146J4dFK8RgijsxF+w80ufoxlb9Xkn7H3yZAdHxzr9fzrxYl/XNw6Oip+
/jEUd/ixpg4mL+P6PinSerTLOPYTJOK28d0dHdz16+X3T+rm4qT480da9ADu
2zcDD1QO7ut1dnnVTk/C8RH/Hb3lk/jpwy0OiXHxpGzbK/se3KgT+N4vNlt5
zc/nV5v5EhvhX+JciyP9c/R9F6f/+z/T+aJK7YffHS88/vrOreyjNvbVxpTQ
xnJxYCT827juqtmWPTrc71LW8onGcWIP7uQ9eJVqjVDovQJl4cu4XXRaglhX
3U6/Pp6/2ulHHPx7x7eObv/xvtiVr9Xq9OnGMzOtDkbzZZfwRaQL5cvJnZGw
3AsNm6rbK4sFifUFqsYtaXiX3nSc9NtFLUWGetZJgY8cP7JB8RdBo3biWRdy
4FjMoONM9HWMgJjsB/qwr0ZBCle0aJ07Q7TtIGMilSPxnGeMc9uclcuaTaI9
B+RggqWZVHbvsOwH3LeNfl3j3zJ6p+XC6hx61/aFTDWtsWNaBNmlCqWdWa7B
Pi4P2zWukoCo64+L/a2Hd6prr1PtVWnh2e/R7BagWypKMXLzSHnPw+vvnz96
k9V9q9634vss4HINJFHtuGZ1OYYugHFtZCpZPDEqFdRV/z+FyzartZPfhxRG
Sem7TwSzuPgKMUiMbyC0KyGgsIuY/hgbQ2+V3wxHJJDgas40emwGleXJQ3c7
V6pLIrCFYeq3hfWizSSVfywgySSjY0umwsXRc+yzqjaW6guZCdhsMzBUjwxX
qgqlnjg+YGBW7mBkNWW/buNhVRH97aMPOIE40NQ15WLjv+J/cQZgjT2RY/n2
5Pgre4fQYld7/1qoR1wFNFm66tyIqUveL54tiwUDx16PKnQlDPA577zlFyBR
kGCWbutyAqWpMbTejIxTO+78sD3EjJC51WXyUnI2s2k8nNEAmLa59mVQRR/t
gbRbXJFVa9VxH5uHUtxovtLHb8Ef9iB2nqqv486PCS0/z6vsO9n8JWeZbzXZ
bS4l9Ejea05t3CefwyVSgguKluxBEXvNYfGCqDUz4Iot7lO7RzGM73pEWP2n
vxY3ivhNgrCbFSjRZkU1aSfTUcH9h65luKiFHamX8MzolFie+R2q2Jp4YsZ+
/Yjg1iLBDH22v/7ukfzujZ4dmJLc9/US/6amnzp3+ccsPCnxboVPDnBUSaJw
j6WvEj0HAgwo06kcHCnL2eODyWASD7viOo3219rUsTYuJG9CThdV2qWGsRQ9
ymwkWfAlPEuhNJOQxb7nJT3RrIH4WfF/9RoB0MQcgiECTplFUIOpvrqBKZUw
1Z5CQhn5rVdqWIWMJgcD4wxpJM6oBGHc9aL+htFlyTOQccRlrkhz77V/C58V
Xg8ythzu9AKk2Uz1qykEdpWqRcDCiiolOxqkLl9QGf12DKPfykX1rm6V6Q7R
HUUiZu1X5yP+7E/tPw1zWHlL2QGXGDgT9kbMtOYco+JZeFfzMyioFiw57L+b
M7yLQjYd/yqDlV/qY7G6r0KSkK8WXSUrn6tLX3BbdcrEIkXhbaousFUQCPjX
nQEDDPa8RmLklpI0vQMtJmstA8twJPcOSTSaLGS82846ldAZ2YOzKckjZ7oR
akP/qrMwZnzfAlg+OwPep8mwmGYCBqorMKPWlut61suVoFzCbt4xIcYMubKR
Cd6klzyRejZPG+qy4ovd3UyWomIKGWs5NVH6GFcKZDKrVRwMFINrkTTRReVs
LOkctmTcw4iqgM6Gx7Or121IAQZZbFE/kASFKNpaPNyimqSqcTUF1i1aSIr4
B6z4XBkdmCpwFGh9r6hXa1lvW78TLoj4aVcZfZzdHPzyJGc2WiFJC8oYS1yo
lriup3HZ7UWtwW6FcwFG1a1brV+olmUtIlbGKVlPrV4fbdfb4VgIrx8+/Y8n
uR3rmYV0F4a4LJ4gDCb3bt368CFXuHJq0EaDqbgvYonlabUA58aqmRAzYk8f
UutCZcJ2168a94Cnk7EeY52fwYZT7YhF0gg9CTWZGkMnbbLGIRabBQ1KU47M
ulbxpYYCLGuBcAk5KWgLNg79dUMk1YLwKumVAjqyZziqvglle1pvpMCrgfTL
LN0DF/77i5+fIrD3Xz8xJGl0FWO1XrizaM5r5xGMfMYxHPy1w5EDzNr75WKw
w0Tmvw2D82rFHyDEIHS9juKgPDw5SafluipSmVaeDmGJpRuR3o5Ea8HRwL5g
gUV2hGcC1ltN8d8uDHkUNdWlOsuDX6IdrtW9bTwazi3Cyt+1gxF/Oc6eaSyW
nFr41skApYx/qTqaJZ3R/nKEeUZLko6HPaUaPLnG9cbCUONxBE+WnOtO3n6Z
/Fxu3gaopKpZvdlWSh3TBRAKjmRPM8G8quyuLGcMEe9i5+54FZnOcAtA3FLN
DMGfGa7MDpncnOOSvHN0fPvDBxM/hbJ3MEDd+bkww1oPzuqzDRZffg/f232F
CBtQQCaHHuJGHEdymUOVbKJkII6RzezOZBqpqG0iAcvakT2f7AGSefHq/Vp5
flGwL7zrRgXAH+Fwx4NSMkd4C3GAtnr3LM2gnXUGg2gtTS+qTfKKwHNXna8Q
b2LaEm60FBifGf6LrJCBW1k1y8w+ZljL2UyQPlaiqAmGbJ7AOnCHkKVoLI4Q
LlwJ0a+3bbd1ZEtNpBkK4Hwai8uEp+qIxvuccvFIMout66TyMH+x1l24Sx1Y
t6sAItTmqriQUxhF0B3wMBCz6EUe0A858fIXHq594UIzTcconxzyjHT0bC1S
wyfJzf15k0n4BBYI0FVq6GpNOPTIaL87tJAjpBRGwsahjFamzGWvoD9T6YnP
lRqdYhlBYvI9OK0VrgG0gBXemcQZ6teQ8ObIJ8GaKiRoA/YFVfYpjVLvsVPj
GLWh7DDRzU6+XCBQeqwiXmwUkC04CDuzhBisMbiFuFL4pFuuLgDniNuAaGaJ
flb5jmI9ksn4GUWTceIZMCGn8DpblJcss1WZPBnC2mrVk4tJjn2av4pijT3o
jPteZMjT4sPi1qw8F0YZb3NWm04PlV83ytr5Uo10cBqXPIizZLyZ417P6eE/
+PEdUK1mm6n3FVIxT7kRwNZyNRN9CtXbQpTlnIx8VXLK+5NcTIk65WibIhuZ
MmOXkLkt5oS7CXQ7Yaz1Fgm+1NKTk8CLjlUaHPBukhUFqVaqvKJw04RHgFBb
+QrjkeNY1T59Q1vThpiFhgLfs36oALU3k+p9LYnTtIERWqDoB/Yq9NfPY+fX
vlJx9NV6TrZJxwk1JZzuLKysBV/6CIKa3gs9xCbH0Zs4mZL+qVXIdPkWJIpi
1Yt9yNVFJ0HI/X4U8pptExfuhe2sGIGq7WETa5GRIXki5K7exXV+ilngloO2
UiY2Ypd9UjrC1GwiquUqL4C0dvGe55VFQqz/Im/HaIZA8IHTQeAxYzjP5TO9
doRS4ULtO2NoO/7mP6OV/4ipN9D7UgwV1m3zru7Kcw15isnGnRS+s6mM6JpN
nBE86ZRpmLFNIXjb44JFjXiNPYexNYt6qB94Gve/ekWAdm1CGc5ZZY646c00
FunruLGhDeBZDsNXumt7WOyJlg4LnYbC2YRuaGZ5EvJLqTceyDDp9NqFQ1lB
jT0ufqBKQiI+R4teIW6x2TZEKavywU1SZqsZZeXWzuTerk4rNbchheRF/wkj
HU639UK003CiTJXtGU3LChnuO/i8UPB59vD4MHg3G7IBeZGoDtzOjYS/Ga4H
TxXj8CO1N8O9stkQAJFNF+4b180Z0EHEmd9uNFd1QWNYQ/xXylu+KRzxgNAL
dxMyO42MoK4FMooBeNxn6LgIHLcazhLcsGayiEDG4zi4SR8DEX4Nrfk9Qibw
itV4kHAwfy6LeZzdxTeJbFwnIGRtDlFm+f5gvlkOHmAJTS+I04tXPZBM30M+
zzCIPoFw0NRxrAiEERtgCHSbgitGSl7Tlh4SOfnsJpHd9cu7X391eEq61vcf
adorZ3p6/fTWyzcJLpEVbaRpMRHmu0l53qywNQclJeBJrMxImfJPZ8rIahmg
w15i6IRoofydfuWZ+M/pkzI6M3iVaBuh5aMMoZzAObV4nXjJT69CpogJx52+
iuxcol5FPIFoB2y8WndJy0jkNsKiEmIlXr5qnAFCrGGUP2EHsjoUTvExi3Xf
IwLRralYPBLow3bJ+lOe9RTtBGzFqdm/b0idpeGIuEieK4b7RY7JkR09C+LQ
SYuWSzT2x0UvE8sDMLMLXOKC3NwInVbMPQKaMwHGOkX3FEjVe3CmvDSLPoPX
03qYCu36KePUe3hOubWsxJj9JKXzvrj7NeAjISvuChAcD1x+ihpEP/LtQ997
4KRIcfblFWz0gu/dPb5DkDEABs8fS7jz/UkBqBk/fCSV2X7etyeFEKEs1CdD
80v25A0v6L0NtzdPir79CYb3OoWv5EqFgyRxXJUsFTEYcTkE1vjc1u4Lq1Gh
kZMTz1JLFpQ3Uz3pGb0X+VoGIhy1h/iihKpsg8BIrMvNnM0qDg8oJ8AFdchx
eehUJewFvmqRIaf3EPSk1JnABs7IuHUyhN1e+HMRpxKsVHHz8OaBLPpaST4E
Hya76D8N9ck3zp1u/f9CfOxqPTHW8/XhKXKDcYwPVY09fn8bLaTDuAk9ntlY
fAaSpNsdLR161UCLVt9qlVeM7Q2zwsA5qQzyyISUuDoEJUtphvHP4TbMn9qz
jBpfqCFyMVTDUqJlB9Fj3FT2BCUhQ4sN0R7frtGEkGkQaSSQZAjeTw3XF1U0
3eAu7W8KTqxeJ4FWKVRqVpb1aOvuQpwV0VEwuR6yTIFWxgJ8K1e9SFYZWR61
yNgwpZ21p46trJRjM3a6ZarAbsynYObn+ivk8bPqGGeMD2m3NqQbIOqQ5Sbx
cOyA8ph369XqzGpMBf6PY8TlGfM8miuvyvWqAES/UNCY7OlSGqOE/uhV0rju
+9gFEoTKsqQsW/ZNgagEDyD3HLdcvs+28DiorLBTGmj6qvWGBlkg1JYd9EH3
CGAWp8vpvqQ8U8XfkIbMKvtgs1KTlgOo3S2u6e5YjBbZLRUoTOmx4OQiKbYv
u6u6iN1FHiVYU3RSjFJvhzEEWk2B8tVKdska5bNOrQXsPLRxu5RpSqxCDPD7
/ca22vMxYVxQmJ+3oOsUp5BqDNJs+lSzCu5Qb9rj4krsDRRoSWY4+MSPJwak
ttBmoWP1oqtUY9dW8YAUL9Z9RVR4XiPhEsJkMmEaFNSC15sJJziRO+zbad1/
xJjQ05j1A3qNiqW/Y6L7bNtMjfzhX1lerRrS4jEnBsVrJAs9Teq6D0WhrE1/
mJxfyQD4m0/S80tjmaQlj1i8nnLYWmmQBlZU9oT/xWqfYCCQY0JMBBqDG/Il
qLyRGCYqxLLZgi2hXDBhohoc8er4iO1SVeiTsPPaMiQLD+53nCDi92T7K6hU
crbAvv2plm8GZaqm3JURIygKD+DbRql7CriDKokz7mec+8MWbZ5tp4QLQN+l
wVJIupU2W9oEZkrRNzzJf/kkOpCc/muRe/oOk4YUwlLdBtk0NVoRLRe/yQZc
ipwEFa+1hsKC2r8nc2d5hpWxwvR927lwDSQkksxlQihEe0QSsF/TzmUYGSuT
zF+FH1rMrjx9YTkvP6rSEfVsxZAxVE2evXw+ygRoSBFAAk09uDa28XPDczMw
6HSW9fWGjgm6RieeLVECl7hnKQCGSm5SBMocSTCWuJ6iJwPiIqzIMlYtbMPF
M38txuYA5lkr3UmKKuy7Ck06Tbia1FY2b8C3cdg2zPekj/okSwSl/LqN3qow
/EsqYMGHTMvpXMqYAkyZiYicGppniknPNlJtVzCogink9mjxKr6DoK9A80sO
6CVfQC3MbigQQWumUBibqewt1sRjFhAT0GIAIIIl5podlPkSzzgkuoAIL5en
iDOC4zdkwfBOCZXBlajSNeu04Y+FFgJFZ+PsqAq7B944BdITAFAEIBlB3Kaw
WxxDRfUyvGpQzGyVgRF4JQIDM7CHIjLOrJg7ZSuqIiM2TsM0L71S++8TZoIO
t90SQQ0fpNrQrrDxNq0sN6awyEeEN5I6IKkbXU9BknKYrcg5MCPAZnZaVCV5
chWixO62cbi21c4EzeWKrDxUotu1mj2lrAZSAtSOLNIzx7VUjm8d3bobFApF
oXHztthIX/PIIl1pxC4VhrLLaTDUNeM9D+I5HP+3Lg/C/ft9NTRXHsNv5A/n
DKcRkkrnXYbKPo/zw1mqmNUvHj/V1hVHvBr/P5gPCo0KxL9fvXjyKP5jMZ8e
NIvlQVPPD85X707uHd07+icuP1utTsv24G/lGY2Qz7+wiz7E364OZtEWvDqI
a0UjV2o98u2KdT6vJOrLt8tXxCEtRO/b39mAgzIYh4GMx0BWxiAblYHeVmfI
QAdQP07A8Y2Uv8oDBZcirbeitv57lw2zXqtQQHPda0+8VKR3hJKBATbFi+jd
0hrIVz7gIhjgxQ/2xiXOtqNiCEEAiRDzZpege4522Mqq4eJMvi9Ba28PTVkG
s2zGSupAH4Cr2pJCAWCFFLq/QKz6FpFt+KvAEohHIBt5OUNiWDSa3hlglJAM
htCVzXuzWs2YAUTOX1+lHHPOWWo7gRoyMtu9/h6zaYhdar6SWlmbDgbt0HNM
RpQXa6FXNhXkdiF/5XS9hrjpKIsSuH+uHJbEbrPpcmh+bqMHIl5YLdebKy0z
lVYFrZNzJJwc9UQcXurI7ASJchlrnq1BJ91eB/0cUIg4cFcqadLOjHpBJvws
M9US1Bv742lST7YWSLNIzSTTVzENaJJs7/upBN33bn95p7/vfafYWdv8Hqki
8Xb5+Xvf7259eAG+BclPxWwxPejW0w02rgPZfiyi5is4WzE7oYGPHIKPiYLX
9hRv/4yj5MHbdBzwaOnFflNepqRIKmCAHQoRNkKpFm9ZbwRO6QYpx/+keIuz
8ht2diyffSMP9BF+e0D2MjDvL5Vkw9+dCQLHKRw9hXfVrhE7ZsekGobhN3jw
dkgTP2uKkcSHyOjadmwvSKYheU0RHI7XL3Um2/a5v2A6W+Y67/nwvq2W5Gj3
5jwT+ZVLn9SoRajPrAMHJD8tHqaupKwUlma+boeDwUgRLftbB9uUKyliueYr
M46wvlYxw37duhmrER7eg1yTsrqYKmZxOota4KEaIT+MyLf6hrO2PHjLexBA
db6SdEm1Loa3Rr5PQQAx3SnX+G0Rt+iYy+Fdqvfzctux/ii/1x3gAe/467Om
sid11b8h3Y+ZInTU8PUXx4fw5TlZZDSZt0aEIpE8VrAOb4+EyGvjOkE44vwG
0dN+H2fzZEIR5r31eMnq9C25GfwmbvrzLjT/QVhXTOcrCtg3lYs4xQ0XGuvR
0afAC4SXxjLGeCyB5s+qNo4rwQ8KlTN3vlMMUG79ulIrWqJbIbANi3DjT4fb
rj08rZvDqnknn4HgpnhabU5O4gq1HfC6PzeSvoHUXmBFr6NDFA/osLwqvviV
tvQ3xYALe3DtvXAT3190b4hX8fqmLOPV3bw+23y0HTeopsNtTcfDeDd4i2U5
i7fA2rAenZxY5P2+3+ITe2oI/7LETjwcoDm+sQ1Gey26ISq9/HYx4Wu5icxm
QKRSP/77J4YTd/A1od/31xjsO+jUjAv8+pG50dsEykR0l99h+EXbjosveKzF
v3Gwxb+498S/nWHtCznexqHY+fNFtgeM7vfaJq/wG4785AF/GkqDxzohsgs0
LfWJAYEonPCH0qgTo2f3a/VZMfyTPfof/yjs35MHEgjIngiKSuxucQDiKPS/
Vfx9786s+Ly2Yd1FvfZNDcUoEJSUqfux3qCZ8bmTB1wWccHvjYf9Gf7xV2N/
eq8IcyX6xZvh4S/dIS6OjWjhd0ab65rHs6FyElW/FjiF9kfG/ujq6M+IIs3l
/eH4gAKdnUfMP/kMAkuKQf6MX5q4ndzon8r7TwrpXx9oYf0fUNEvTr2QAQA=

-->

</rfc>
