<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.17 (Ruby 3.1.2) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC8402 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8402.xml">
<!ENTITY RFC8665 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8665.xml">
<!ENTITY RFC8667 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8667.xml">
<!ENTITY RFC8669 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8669.xml">
<!ENTITY RFC9085 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9085.xml">
<!ENTITY RFC8664 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8664.xml">
<!ENTITY I-D.song-mpls-extension-header SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.song-mpls-extension-header.xml">
]>

<?rfc toc, sortrefs, symrefs, comments="yes"?>

<rfc ipr="trust200902" docName="draft-zzhang-spring-microtap-segment-01" category="std" consensus="true">
  <front>
    <title abbrev="microTap segment">MicroTap Segment in Segment Routing</title>

    <author initials="Z." surname="Zhang" fullname="Zhaohui Zhang">
      <organization>Juniper Networks</organization>
      <address>
        <email>zzhang@juniper.net</email>
      </address>
    </author>
    <author initials="R." surname="Hoffman" fullname="Ryan Hoffman">
      <organization>TELUS</organization>
      <address>
        <email>ryan.hoffman@telus.com</email>
      </address>
    </author>
    <author initials="G." surname="Bajwa" fullname="Gurminderjit Bajwa">
      <organization>TELUS</organization>
      <address>
        <email>gurminderjit.bajwa@telus.com</email>
      </address>
    </author>
    <author initials="D." surname="Voyer" fullname="Daniel Voyer">
      <organization>Bell Canada</organization>
      <address>
        <email>daniel.voyer@bell.ca</email>
      </address>
    </author>
    <author initials="S." surname="Zadok" fullname="Shay Zadok">
      <organization>Broadcom</organization>
      <address>
        <email>shay.zadok@broadcom.com</email>
      </address>
    </author>
    <author initials="A." surname="Wang" fullname="Aijun Wang">
      <organization>China Telecom</organization>
      <address>
        <email>wangaj3@chinatelecom.cn</email>
      </address>
    </author>
    <author initials="L." surname="Jalil" fullname="Luay Jalil">
      <organization>Verizon</organization>
      <address>
        <email>luay.jalil@verizon.com</email>
      </address>
    </author>
    <author initials="S." surname="Li" fullname="Shengtao Li">
      <organization>Arrcus</organization>
      <address>
        <email>shen@arrcus.com</email>
      </address>
    </author>

    <date year="2023"/>

    <area>routing</area>
    <workgroup>spring</workgroup>
    

    <abstract>


<t>This document specifies a microTap segment that can be used to instruct
a transit node to make a copy of a segment-routed packet and deliver it
to a specified node for the purpose of network monitoring, trouble shooting,
or lawful intercept.</t>



    </abstract>



  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>Network operators may for various reasons benefit from the ability to tap
packets at strategic locations within their respective networks.
Segment routing <xref target="RFC8402"/> technology offers the ability to both simplify and improve
the operational experience of deploying targeted packet tapping.</t>

<t>The tapping can be only for some random packets for monitoring purposes,
so we use the term microTap and tap interchangeably in this document.</t>

<t>The introduction and strategic placement within a SID-list of one or more
microTap SIDs can signal the desire to tap traffic at targeted points
within the network without the need for explicit configuration on those nodes.</t>

<t>Consider an SR network in the following example diagram where traffic is
steered along some paths by using a SID-list in the packets. For network
debugging/monitoring purposes, the operator may at any time want for a
certain node (e.g., R2 or R3) in the network to tap a copy of a packet
to a monitor (e.g. connected to R6), while continue to forward the original
packet along its path to the destination.</t>

<figure><artwork><![CDATA[
                   --R5---R6---monitor
                  /     /
                 /     /                           
     src---R1---R2---R3---R4---dst
  
                ^    ^
                |    |
 microTap node 1    microTap node 2
]]></artwork></figure>

<t>To make it very flexible and precise on specifying which packets to tap
on what node and avoid the need to configure filters on the microTap node,
a microTap SID can be inserted to the SID-list after a Node-SID
(for the microTap node) or an Adjacency-SID (that leads to the microTap
node). When the microTap SID becomes the current active SID, the node does
the following:</t>

<t><list style="symbols">
  <t>Replicate the packet, and send the copy to the remote monitor</t>
  <t>Pop the microTap SID off the original packet and continue forwarding</t>
</list></t>

<t>There could be multiple monitors. A microTap SID is
associated with a particular monitor (vs. a microTap node).
In the above example, there could be another monitor attached to R5.
In that case, there would be two microTap SIDs - one for the monitor
attached at R5 (say microTap SID S5) and one for the monitor attached
at R6 (say microTap SID S6).
The monitor could be a separate server attached to an interface
on R5 or R6, or could be an internal service entity on R5 or R6 (which can
be viewed as connected via an internal interface).</t>

<t>If S5 becomes the active SID in a packet arriving at R2, R2 will tap
the packet to R5, by imposing R5's node SID label on top of S5.
When the tapped
copy arrives at R5, R5 knows that the packet should be sent to the internal
or external monitor (because S5, which R5 advertises, becomes the active
SID). Similarly, if S6 becomes the active SID in a packet arriving at R3,
R3 will tap the packet to R6, by imposing R6's node SID label
on top of S6. In case of SRv6, a separate IPv6 header is used
to send the packet to the router to which the monitor is attached.</t>

<t>A microTap SID is advertised by the router that hosts the monitor.
It should only become the active SID in a packet arriving at the desired
microTap node or the advertising/owning node. A node supporting microTap
functionality advertises its ability to do so, so that incapable nodes
will never see a microTap SID as the active SID in a packet.</t>

<t>The SID-list may contain multiple microTap SIDs that may or may not be
adjacent in the list. For nonadjacent microTap SIDs, different nodes
will tap to the same or different monitors (depending on the value
of microTap SIDs). For adjacent microTap SIDs in the list, they are
likely for different monitors - for the "continue forwarding" part of the
first microTap SID, the second microTap SID becomes active segment,
leading to the second microTap operation.</t>

</section>
<section anchor="specification"><name>Specification</name>

<section anchor="signaling"><name>Signaling</name>

<t>A node (e.g. R2/R3) supporting microTap function advertise its capability
to other nodes.</t>

<t>A node (e.g. R5/R6) hosting a monitor is provisioned with a microTap SID
allocated from the SRGB. The microTap SID is advertised to other nodes.</t>

<t>A microTap SID MUST be associated with only one specific monitor.</t>

<t>If the same microTap SID value is advertised by more than one node,
it MUST be treated by a receiving node as an error and ignored,
and MUST NOT be used in the SID-List of a packet.</t>

<t>SRv6 related signaling details will be added in future revisions.</t>

<section anchor="ospf-signaling"><name>OSPF Signaling</name>

<t>This document defines a new TLV for the advertisement of a microTap 
   SID (from a node hosting a monitor) and an existing TLV is leverged 
   for the advertisement of tapping capability (from a microTap node).</t>

<section anchor="microtap-sid-tlv"><name>MicroTap-SID TLV</name>

<t>The microTap SID is advertised in a newly defined MicroTap-SID Sub-TLV
that mimics the Prefix SID Sub-TLV as defined in Section 5 of <xref target="RFC8665"/>:</t>

<figure><artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              Type             |             Length            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Flags    |   Reserved    |      MT-ID    |    Algorithm  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     SID/Index/Label                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
where:
 
   Type:  To be assigned by IANA
 
   Length:  7 or 8 octets depending on the size of SID (see below).
 
   Flags:  Single-octet field. Currently no flags are defined.
 
   Reserved:  SHOULD be set to 0 on transmission and MUST be ignored
      on reception
 
   MT-ID:  Multi-Topology ID (as defined in [RFC4915])
 
   Algorithm:  Single octet identifying the algorithm the Prefix-SID
      is associated with as defined in Section 3.1
 
      A router receiving a Prefix-SID from a remote node and with an
      algorithm value that the remote node has not advertised in the
      SR-Algorithm TLV (Section 3.1) MUST ignore the Prefix-SID Sub-
      TLV.
 
   SID/Index/Label:  Currently a 4-octet index defining the offset
      in the Segment Routing Global Block (SRGB) advertised by
      this router. In the future the flags field may change
      the definition of this definition of this field.
]]></artwork></figure>

<t>The MicroTap-SID Sub-TLV MAY appear where a Prefix-SID Sub-TLV is included
to advertises a node SID.</t>

</section>
<section anchor="microtap-capability"><name>MicroTap Capability</name>

<t>A new flag T in the Flags field of the Prefix/Adjacency-SID Sub-TLV
indicates that a MicroTap SID is allowed to follow the prefix/adjacency SID
in a packet:</t>

<figure><artwork><![CDATA[
          0  1  2  3  4  5  6  7
        +--+--+--+--+--+--+--+--+
        |  |  |  |  |  |  |  |T |
        +--+--+--+--+--+--+--+--+
]]></artwork></figure>

</section>
</section>
<section anchor="isis-signaling"><name>ISIS Signaling</name>

<t>ISIS signaling is similar to OSPF, as specified in the following sections.</t>

<section anchor="microtap-sid"><name>MicroTap-SID</name>

<t>The microTap SID is advertised in a newly defined MicroTap-SID Sub-TLV
that mimics the Prefix SID Sub-TLV as defined in Section 2.1 of <xref target="RFC8667"/>:</t>

<figure><artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Type        |     Length    |     Flags     |   Algorithm   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SID/Index/Label (variable)            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
where:
 
   Type:    To be assigned by IANA.
 
   Length:  5 or 6 depending on the size of the SID (described below)
 
   Flags:   1-octet field. Currently no flags are defined.
 
   Algorithm:  the router may use various algorithms when calculating
      reachability to other nodes or to prefixes attached to these
      nodes.  Algorithm identifiers are defined in Section 3.2.
      Examples of these algorithms are metric-based Shortest Path
      First (SPF), various sorts of Constrained SPF, etc.  The
      Algorithm field of the Prefix-SID contains the identifier of
      the algorithm the router uses to compute the reachability of
      the prefix to which the Prefix-SID is associated.
 
      At origination, the Prefix-SID Algorithm field MUST be set to 0
      or any value advertised in the SR-Algorithm sub-TLV.

      A router receiving a Prefix-SID from a remote node and with an
      algorithm value that such remote node has not advertised in the
      SR-Algorithm sub-TLV MUST ignore the Prefix-SID
      sub-TLV.
 
   SID/Index/Label: :  Currently a 4-octet index defining the offset
      in the Segment Routing Global Block (SRGB) advertised by
      his router. In the future the flags field may change
      the definition of this definition of this field.
]]></artwork></figure>

<t>The MicroTap-SID Sub-TLV MAY appear where a Prefix-SID Sub-TLV is included to
advertises a node SID.</t>

</section>
<section anchor="tapping-capability"><name>Tapping Capability</name>

<t>Similar to OSPF, a new flag T in the Flags field of the Prefix/Adjacency-SID
Sub-TLV indicates that a MicroTap SID is allowed to follow the prefix/adjacency SID
in a packet:</t>

<figure><artwork><![CDATA[
          0  1  2  3  4  5  6  7
        +--+--+--+--+--+--+--+--+
        |  |  |  |  |  |  |  |T |
        +--+--+--+--+--+--+--+--+
]]></artwork></figure>

</section>
</section>
<section anchor="bgp-signaling"><name>BGP Signaling</name>

<section anchor="microtap-sid-1"><name>MicroTap-SID</name>

<t>A new MicroTap-SID TLV is defined to advertise a microTap SID. It has the same
encoding as the Label-Index TLV except with a different type. The following is
copied verbatim from <xref target="RFC8669"/>:</t>

<figure><artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Type    |             Length            |   RESERVED    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            Flags              |       Label Index             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Label Index          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
where:
 
   Type:  To be assigned by IANA.
 
   Length:  7, the total length in octets of the value portion of the
      TLV.
 
   RESERVED:  8-bit field.  It MUST be clear on transmission and MUST
      be ignored on reception.
 
   Flags:  16 bits of flags.  None are defined by this document.  The
      Flags field MUST be clear on transmission and MUST be ignored
      on reception.
 
   Label Index:  32-bit value representing the index value in the
      SRGB space.
]]></artwork></figure>

<t>A MicroTap-SID TLV MAY be included in the BGP Prefix-SID attribute.</t>

</section>
<section anchor="tapping-capability-1"><name>Tapping Capability</name>

<t>A 'T' flag is defined for the existing Originator SRGB TLV's Flags field
to indicate that the originator supports microTapping functionality.
Exact bit position for the flag is to be assigned by IANA and registered
in the "BGP Prefix-SID Originator SRGB TLV Flags" registry.</t>

</section>
</section>
</section>
<section anchor="controller-signaling"><name>Controller Signaling</name>

<t>A controller needs to know about the nodes (e.g.  R2/R3) that support 
   tapping function, and the nodes (e.g.  R5/R6) hosting a monitor &amp; 
   relavant microTap SID. This information is advertised to the controller 
   by the link-state routing protocols (ISIS and OSPF) or BGP-LS. The 
   signaling for OSPF and ISIS has been covered in the previous sections 
   of this document. This section covers signaling for BGP-LS and PCEP.</t>

<section anchor="bgp-ls"><name>BGP-LS</name>

<t>This document defines a new TLV for the advertisement of a microTap 
   SID (from a node hosting a monitor) and an existing TLV is
   leverged for the advertisement of tapping capability (from a microTap 
   node).</t>

<section anchor="microtap-sid-2"><name>MicroTap SID</name>

<t>The microTap SID is advertised in a newly defined MicroTap-SID 
   TLV that mimics the Prefix SID TLV as defined in Section 2.3.1 of
   <xref target="RFC9085"/>:</t>

<figure><artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               Type            |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Flags     |   Algorithm   |           Reserved            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       SID/Index/Label (variable)             //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
Where:
 
Type:  To be assigned by IANA
 
Length:  Variable. 7 or 8 octets depending on the label or index
   encoding of the SID.
 
Flags:  1-octet value that should be set as:
 
   *  IS-IS MicroTap-SID flags as defined in Section 2.1.2.1.
 
   *  OSPFv2 MicroTap-SID flags as defined in Section 2.1.1.1.
 
   *  OSPFv3 MicroTap-SID flags as defined in Section 2.1.1.1.
 
Algorithm:  1-octet value identifies the algorithm.  The semantics of
   the algorithm are described in Section 3.1.1 of {{RFC8402}}.
 
Reserved:  2 octets that MUST be set to 0 and ignored on receipt.
 
SID/Index/Label:
 
   IS-IS:  Label or index value as defined in Section 2.1.2.1.
 
   OSPFv2:  Label or index value as defined in Section 2.1.1.1.
 
   OSPFv3:  Label or index value as defined in Section 2.1.1.1.
]]></artwork></figure>

<t>The Flags and, as an extension, the SID/Index/Label fields of this
   TLV are interpreted according to the respective underlying IS-IS,
   OSPFv2, or OSPFv3 protocol.  The Protocol-ID of the BGP-LS Prefix
   NLRI is used to determine the underlying protocol specification for
   parsing these fields.</t>

<t>The MicroTap-SID TLV MAY appear where a Prefix-SID TLV advertises 
   a node SID.</t>

</section>
<section anchor="tapping-capability-2"><name>Tapping Capability</name>

<t>The Flags of Prefix/Adjacency-SID TLV are interpreted according
   to the respective underlying IGP specification. The new flag T in 
   the Flags field of the Prefix/Adjacency-SID TLV indicates that a 
   MicroTap SID is allowed to follow the prefix/adjacency SID in a packet.</t>

</section>
</section>
<section anchor="pcep"><name>PCEP</name>

<t>An SR-TE path consists of one or more SIDs and may contain one or more 
microTap SIDs. The SR-TE path information is exchanged between the PCE 
and PCC in ERO and RRO subobjects. The SR-ERO subobject and SR-RRO subobject 
defined in <xref target="RFC8664"/> are used to carry a SID which can be a microTap 
SID.</t>

</section>
</section>
<section anchor="procedures"><name>Procedures</name>

<t>The node hosting a monitor treats a microTap SID that it advertises as
an adjacency SID. In other words, it sets up its forwarding state for the
microTap SID such that packets with the microTap SID as current active
SID will be sent to the monitor (after popping the microTap SID).
It is the responsibility of the monitor
to parse the packet (including the remaining SID-list).</t>

<t>A node supporting microTap functionality sets up its forwarding state
for each microTap SID that it receives, such that packets with the
microTap SID as current active SID are processed as following:</t>

<t><list style="symbols">
  <t>Make a copy and send it to the advertising node of the microTap SID.
In case of SR-MPLS, this is done by imposing the advertising node's
node SID (optionally after imposing the node SID of the microTap node
so that the monitor knows the microTap node).
In case of SRv6, this is done by imposing an outer IPv6
encapsulation with the destination address being the advertising node's
address.</t>
  <t>Forward the original packet after popping the microTap SID</t>
</list></t>

<t>If a node does not support microtapping but does recognize the microtap SID
signaling, the forwarding behavior for the SID is simply pop on that node.
This is to safeguard the situation in case the node received
a packet with the active SID being a microtap SID.</t>

<t>The ingress node may add microTap SIDs to the SID-list of a packet based
on its monitoring/debugging needs or based on SR policies programmed from
a controller.</t>

<t>A microTap SID MUST not be placed in the SID-list after a node or adjacency
SID that is for or leads to a node that does not advertise microTap capability.
Otherwise, the packet with that SID-list will be discarded by the node.</t>

<t>In case of SRv6, the microTap SID and its preceding node SID MAY be merged
into a single IPv6 address in SRH: the locator part identifies
the microTap SID and the function part is the 3-octet or 4-octet microTap
SID.</t>

<section anchor="optional-iom-header"><name>Optional IOM header</name>

<t>As replicated packets traverse the network from the microtap node to the
monitor nodes, packet loss, packet reordering and buffering can occur.
To allow packet analysis equipment that receives these replicated packets
to accurately analyze the replicated packet flow, additional information
is needed in the replicated packet header to recreate the original conditions
of the flow.</t>

<t>RFC9197] defines a header with data fields well suited for this purpose.
IOAM includes timestamp data, indicating the arrival time the replicated
packet was received at the microtap node.  This timestamp can be used to
reproduce accurate inter-packet gaps during packet analysis.  IOAM also
includes a sequence number, indicating the order of replicated packets
received by the microtap node.  This sequence number can be used by the
packet analysis equipment to reorder packets, remove duplicated packets,
and to alarm on the condition that replicated packets were lost in transit.</t>

<t>The microTap node MAY include an IOAM header in the replicated packet
with following fields:</t>

<t><list style="symbols">
  <t>Timestamp Seconds</t>
  <t>Timestamp Fraction</t>
  <t>64-bit sequence number</t>
</list></t>

<t>It is RECOMMENDED that all nodes that perform microtap packet replication
be Time of Day (ToD) synchronized via Precision Time Protocol (PTP)
for the most accurate recreation of packet conditions during analysis.</t>

<t>The added IOAM header is Edge-to-Edge Option-Type, and in addition to
possible IOAM header already present when the packet arrives at the microtap
node. In case of MPLS, the added IOAM header is an MPLS extension header
<xref target="I-D.song-mpls-extension-header"/> that follows the Node SID of the node
that originated the microtap SID. The extension header is followed by the
original label stack and its OUL field
(Original Upper Layer protocol type) MUST be set to MPLS. In other words,
there may be two label stacks in the packet arriving at the node hosting
the monitoring station.</t>


<t>If MTU is a concern, the original label stack (except the microTap SID) and
extension headers MAY be removed.</t>

</section>
</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>To be added.</t>

</section>
<section anchor="iana-assignments"><name>IANA Assignments</name>

<t>To be added.</t>

</section>
<section anchor="contributors"><name>Contributors</name>

<t>The following also contributed to this documdent:</t>

<figure><artwork><![CDATA[
Peter Van Oene
Juniper Networks
pvanoene@juniper.net
]]></artwork></figure>

</section>


  </middle>

  <back>


    <references title='Normative References'>

&RFC8402;
&RFC8665;
&RFC8667;
&RFC8669;
&RFC9085;


    </references>

    <references title='Informative References'>

&RFC8664;
&I-D.song-mpls-extension-header;


    </references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+VcbXMbN5L+jl+BS6ouUpakLMmWbX05y7bsaEuyVKTsrd2r
vSpwBqRgDwfcwVA0nfV/334BMJjhSHGcl73LKbFsDoEG0OiXpxvoGQ6HIrO5
KefHclXPhk+EqE1d6GN5YbLKXqulnOj5Qpe1NGX859iuaugi1HRa6dtjuQht
HTcQuc1KtQAqeaVm9fDTpxtVzoduWUGvIbWu1XLoWw8f7ItM1Xpuq82xdHUu
xNIcy9pmA+lsVVd65uBfmwX/I7ML7OWEMMsKmlUrVx88ePD0wYFQlVbHsvKz
W8OaeEjxYX0shfhW/nh8PLWm0NWygAHlNFvuP/wshFrVNxZoCSmH8EfCWt2x
/NtI/g3nTU94OfDZ3qxM8txWMMqfV6VZ6kq+0fXaVh8cfaMXyhTHktf+7D03
GZW6bo8yHskf7Gy2UGUyznijytZjGub69PztJKVdQbPRDTd7Vuti5UbAnTb9
1yP5XL1fq4T661W1MGWuq/emTr7sH2OeNB5NsfFdI70cyXd2o6tkpJeqNLpI
HtMYz3VRyBeqVLlKR8qp8egWGz+bQptRpkR7iAlsicrth2SIyY3aJA95gMqq
nOcXqTtoN/qE7Z5N/de0hPYAJyP5l/aWnxjYuuYh0X9xY0olr3WhO4OsoZl6
f/gswwY1fz/Kys4g5yP5Z1WYIhnlfAWraB7SKO90ZT7ZMqVfQLPRe2z27Ja/
7VkDMOnctDiky3mtbHhKxE+qKlu5NoN0+UzRYyY6HA6lmrq6UlktxPWNcRL0
ekUWwC11ZmZGO6m2tF/WN6qWGUjwVMuV0zmoMs4MNBUIKdBYVTqQvNLmGr9a
qA8ayGR2uZF2Bv8KdgEVGXovVfZB11KVucx1YWDh0tQCOqo4jZyJzWwFg2u5
XFVL6zRSK1kl5cKWprZoDAYwAbuaFhpWbC1aioGAfoVaz1YFzLPWVaaX9Ugw
BxYmzwuNxuOshI45rMHApgiv69KCViug7GAdG5rBraqMXTkJxsjZ0gEXSj2D
9c4qu6DpqakpTL3BtYMZFLw+4CSwFXgDhtBksrBgEg12X5sapAk7mgpo4pJr
YEJYmRuJYJa94ZM//vgf41cvnjx8cPD5s6x1dlPaws6RuTMN8+xMYWrrG+nM
YlmY2Ya4DP+u7K0W2JCXBxNRhdQf4YPRZUaczfWysBscr1bVXCc7BYtawvMR
Co0On4JA2LJgNjm70BJEIQeuBBbg82anwj66gXBWrkmYaPawRYtG7HDKMIjf
OrS2Wk1hEGJaIrR+PibZRurbMB28QqaJlZ7pSk7OXg4L42pcsS1h+jjBSos4
OjRwtDZn5sgknF+unam031+U99kMqKs64ZQ16MKavY2Cio9gH/0zaIo8Ac4X
JgMZymw5M2CSaUtgQtAMBR2lHwRBvACBMWCrYV1yMo40/RAzWxR2jYzVHxXs
N0zUqHmlFnJ9o3G+fqLGCVdreJJLVVhoTlu1VPUNCPMGdgFJJKzx5P0mjuQr
mLEfWuR6uprPocNe377KRsSQsaBAChUd5NLAiGBNa1q+EpmuagXjkJrv6NF8
NJDjA9yN8eGu7LDQ8z01KTw3Nhp+IkwGOVqCRrGVGh/tDoAZgBDwOSjTinYR
5rBWVc6zrQwsRxUimCXikAHhRQbR2CwBNboA2KWRICvb8zMcjh+BiRkfwS8/
qTua7vHv/m/3kt/9P00/V2U44j7+OsBfh/jrIfzKHQKT3hH+h371fvVP+sVf
RZWgTdrffnQACujNPYgy2HEwBIX+aNAWoyIuK7DmaLZLb9jJusB2ZDfRQnib
CU3W6GWILvZVt9bkjdJAs6AqIPemqNHwWRaT1qQGInFgINHBTIG/ApFjStgp
CjvgWdQv+QY6D+Gp2Alep0V3F2UTSJ3k78GmlNkG28odco2FVrkLhEMvQb0A
foAbbpPDjlNEEpptd7aqKrRRiv0AfM16RLzIrXaipezHQnwvxxoNCGLeRlMH
bP10yXwjZfGTqvTCQtsglN/LK7vcnhT4k5ZKpJ46qo/XHUThaH4rHGhV5Mjj
xaqoDZohPw6YjpP2CGCJlHM2Mwq3Ak0j6XJVm2xVqKpR5Vvoqzo7MBJnpXd2
4M2CzSNepbNQpcUnkZaqa5XdeHvwyBMhQONi53XoDAZHtl3BkNxElAnPwUgU
CI0fyR0Hpq610smjXeJbT+c4I4Gdj/o6H8Fir5MezeJgf4FfuPEgzwid0uWB
fJLTnIGIokrBzNCiHg1ki4ZvhTuMRAz4f5A/hA9JH7nDigr6I6DTrdFrXK5L
DOytUS1icWyYvTibAQ9act7ItyRXHKSrqswteSDgxgG5gbWBgALNQiPcvHsD
9FcAZyy5rPGj7xxrCdIsFMQYZBNAti2OPhJR+RC0AMNJJ2hA7XjrBrjgD6Vd
O5aKZESAk55jjlAwq1JYrSA37lce5RbWqxDVTB4NvKED8iqHjaoNOchthgiY
PNiJiVkYUIFiM5AGJn/0s1l3OBDjw8g62WHdUYd1R1usEwnrjkaAjklD6OP4
Fronond2dXskb8DqIXR3FBOgK46mpxmXjA/C/go/MUdSVTAuCjDIzJa1aFiX
4/RTarhZgJVql9ID7Y77RsCUmfilPGywXi7ars5rcJgO4h+7LrEbfo12jpq5
1XJpKwLt0Q/MVmXGgBs1rJEFwhgJbs+BgRYzJLw2U2ZqqdCVEhgUtLGlRpV3
WsuOl1P3yYkHytHlIS5De44ArLHZLatHU8B2HsaBTQVeCsXeL0JEJOfxISww
fNkiNQBQinEKfpGshESU5cNBVIvjNO2C/5A7EJSAUCE/vbO/VcUKbNusPcgu
T6J/BulkyeCjCdCiMB+0D116Rh5Gq/1Nj+v7hpwW6ga0EDNTufaY7MAdCB9o
RK/j9zvlQ+OBQAxBsZft7RrDthFGrhMOkzmihAfwhIIVcsonCagGY7qHgLpH
LmWQy0YkSSJJ6kgoUaXZlYZwpE360R7Aa9JBjh8SncZ4E7QEnF/08ikXhCoo
HsZoKATRk/Hr5yN53cUkbRvQM6NW64u3k2tycR2QQbYAXbFPMGSNwUBHFaWw
RYxEbdsIYbiI+lESQcacAH/D0HWlaVxoqQB3ZZqtCwNbh/5SVxVhSQjM5yUQ
ywGzwgci8ObyOmZZvNii2p77iDXRaDTKQL+gwVzYfjBfoNaFYz+AnMhzJjVb
1YidK80bg8z7FgTncnL1KpUeAPntzFCuZ6akvFCp1/L6/F1UjMgWakezi/xD
OgSQaX8VL39LVBgiIUs+Gv4K6cPoBdq5OUwc6dw5XpOJCCIbx+siR1zrtzEH
TtgdhmK7eI+8kRGFdYP0MB/yNo3JajpEOmwuwYNnbIevKmj9USZNcO8DCcq8
s+49wnX4/M7R0aPPn499dPmgJzjb73l20PPsMJDYh68P5UMY5Ug+lk/k05/z
jIj8afgL/xMxqmx+rjdLvR11xp9zTG/etL7/9efyqlBzFz6PNYHpPPn+4noI
mxc+nxRzCIrqm8VvMpfOD0jN3lmZ64975wRp7/751eZCdChpdCxizgC36Rj+
st6igpFgu3Z28uakacbbBQ0foxN/Ii3EBjUKe8dzO/OJ0SSaBYQwsDa7Bt2M
lGhPgNAEehV6SIQg2NdFPpIvOEguEIrIGW0eOPGgUgmRsJdI54fLt+cvGcAT
Gn1Ac8F09cI4F/KFwXJ7a5zkRaABWvAludk4AokGkL9A6DS8tkvOxuKy2kr+
36DVD5/uP/r7btM5SlJcJzNMmhxjME6RkLWLItcYFMpPNNNDW9WNpnutzOFo
X6SpoJOAohv/pJIhpDeiPmsQczI8QpkQaibJzjKGUGnXG+UIP7btKgKnRObH
w0bH0FzuJHPf5S3i/emwg+xrQgj6JsLQUSXgeSNHSj70IobHYR+Zb4H7djZz
dLIXee2dcfvEVL4u7BTiv+cAZz7AnAHD7LbhQkKCktfMeAqvKKvDXpn+SUJN
4s4InTLfrf5e3g0ni2c+Hb79iHWGvVufv5IXJ3+VGBGryqeKVZel3hFDFFKs
cg7vktBFxdix61rliwY/Il4EzIALk9eBg6+SZTJ+9kPvtVNrwbXC5lCiy8ck
KjnI9u4a82KMDTlHxiEo01SBJsHOJCY67mZxH5B/BXd6KMETgisEXygftxr9
aTjs/7/V6p+9/1+HrOpP0iJYdjY5m6SwjD43KA+W7ThfgMtGDDdA1W+Oz7ZO
CByrk+uDQv9+GHQw2m8Bocd/YCCUoh8GAA3g4c8Rm9DnBHv8DuADf7oAZAdP
QDEVsduS898DfNwFP0Y9+IMSl0d3Aw8fTGFSwWWVmSI1giDbCETufyX6SN17
kq1Ce45pwXCUHP2mw4Vjpq3ABDhdc2k4DJEkOIEmQ5SEvpSQst7KadfKAkMr
l/oNjpVTQfJYw+AhSrKONmQ4GCU0TjnZ7jwfnU6XgCQWuq5MNpwqtBeTG1uB
xa7llapvEiqvKFGyA+ZqdxB5gVeCiC4edgI4o5mQRdN1NsJwNF1Ms4geF0LG
yGe22AI1K4WWHV/aRlh+p1bo3ui0abFc+eOV1j5skeE9aKc3k+m0QNqoDcPq
cNSCLB90e3aXGnBqALMpUK3olJVB2BbOaqMrx5aYd/d3A4VuBaz5RajQBexy
JxZMejaLvBMK/nvB4P9hLAjCJ+7Fgtc+L5NCwckWXPl6bCjipP5fYsPnr69S
aNgD5xh3d7Nd0jTYK4XzneQsyGNN2hmyogJ4RFdKwykDKdCQlIno6o8YI4dE
b5NMr8GHc0q3waHG4SEcQlQYfQqGb8GGJUK/p39g6Ic/Af79ZM4L/oxPJ6fj
d6ech/qtoF+DNltj06wI/vFGt77/bebSO9wXjvU1Oaw+EPmY3XBta7DkBe8K
mAaf1PJGif0anagES5sa57bjCZsIxJ8MpyZiSlSz4NKzAs3vXcmphHSTpmol
p3qSaPtHcmp4yuRNYMA3eGCR4j06Uk1v1HXRVmqQv2yuP51IS7nebDjM+PCA
2MPMrTRYaTx3D06Y/bI/k9kGCq+fQ/QL5pzOhLYsH/o4ugTkPZj3N2hJE18H
IBrCAvDJ9zmyE/nd9XfstxJ7Gs4o4kHGpQd28JwmB7P4zqX8FHSJNg+XeHze
zDbd/Jmdi8aZptI6TR4JwOVZjRst8WCfxDFMJUyx7pV92rBKz2G6eDFQeI58
02FJzzJ4Ed/4ztWGmIXgva7AygN+bJ8mnRAg91/hXS6aEd64wHs84WIkxTR8
rhjOLD1sJCaQxNQdFvB9p+3ud51L/idRwSOzW9U5Ix7xoZcpgXkLvou5dfDI
d6riUpCWv5IAa/0wdDVuZLiyu6xsbTNbwKwodYMzRdxD18iAx8PzCXtGJNPk
dXDv6EQO21NHdMRTjSGivaUbnOFyJh7kUfjkEztEKeLAqNC0Lt+GabjOeDwb
GvHqxekVxQUBZ8AX/0uOBLF3PBX8RSeCSKl1KthCjX65vygdJtgHyHvSYfel
wg4pGYZEGBQ9ffCEDgblHxgVhZ/u0WDr+22Q9BsgkXuSb8m46YnhbzeX7Z8v
S83Jvb1fNTn3lxRVfcmxYIRT7/z0Rj91Ouhv71Xs54Nrj5FHk74L8CHiHB+3
p7mG5OIeRIUuwYPfA+yaDMGuthTWZ/TuSk2P8E+LBtro24OfR2S/l8jhVxNJ
U41tJsSkl2vnuRjeAVMW4P/QKDW5rHY+jDFiSJK2DxJDpv6/YklKmFBy8noQ
9pn2o5u4Su++BGhosEKH6XQzNQ3TaOuOA24MwhLSXl+4fbx3P5/K/jaVw6+k
EnwM2xrgxiBcDfpY69LFZGBX2wk4uuDlg5vB3aJbqYAJ8CBYZZmt0stkSZHR
Civ/CjpkJmYOROQIXRL2Mhngi5eYK/9xSJfEA3RG1MAuDYm8OR+fhcugdJ1R
Y1UPsICaJ+MG2vEulgqwFcksVeU85HfaL7hhWC+wvzt5RdxpMlVIZTtb1Yvy
WxsES+49oryX+YRY7+U/IO0WCxgQtrNiwuvml56a9mbFkMjXZ8Y6N0kJGiJQ
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

-->

</rfc>

