<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-zzd-spring-schedule-sr-policy-01" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <front>
    <title abbrev="Schedule SR Policy">Schedule for Segment Routing Policy</title>
    <seriesInfo name="Internet-Draft" value="draft-zzd-spring-schedule-sr-policy-01"/>
    <author initials="L." surname="Zhang" fullname="Li Zhang" role="editor">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>Beiqing Road</street>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>zhangli344@huawei.com</email>
      </address>
    </author>
    <author initials="J." surname="Dong" fullname="Jie Dong">
      <organization>Huawei</organization>
      <address>
        <email>jie.dong@huawei.com</email>
      </address>
    </author>
    <author initials="T." surname="Zhou" fullname="Tianran Zhou">
      <organization>Huawei</organization>
      <address>
        <email>zhoutianran@huawei.com</email>
      </address>
    </author>
    <date year="2025" month="July" day="04"/>
    <area>General</area>
    <workgroup>SPRING</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 43?>

<t>This document defines the Segment Routing (SR) Policy extension for schedule (called SR-Schedule). It applies to both Segment Routing over IPv6 (SRv6) and SR-MPLS. This document specifies the framework of SR policy schedule including the SR-Schedule definition, acquisition, computation, enforcement, and the handling behaviors on the headend.</t>
    </abstract>
  </front>
  <middle>
    <?line 47?>

<section anchor="intro">
      <name>Introduction</name>
      <t>Segment Routing (SR) policy <xref target="RFC9256"/> is a set of candidate SR paths consisting of one or more segment lists and necessary path attributes. It enables instantiation of an ordered list of segments with a specific intent for traffic steering. <xref target="I-D.ietf-idr-segment-routing-te-policy"/> specifies how BGP may be used to distribute SR Policy candidate paths. It introduces a BGP SAFI with new NLRI to advertise a candidate path of a Segment Routing (SR) Policy.</t>
      <t><xref target="I-D.ietf-tvr-use-cases"/> introduces a set of use cases where the topology or attributes of the network changes predictably. The topology changes may influence tha validity of some paths, and lead to path reselection or even recalculation. However, the reselection or recalculation takes a period of time, which will influence packet forwarding and cause problems such as packet disorder and packet loss. However, on a network with predictable topology changes, the headend knows future topology changes, it can schedule the forwarding paths in advance, and steer flows to different set of paths based on time to prevent packet forwarding from being influenced by topology changes.</t>
      <t>In the scenario of SR-policy-based TE paths, the resource allocation efficiency is a big challenge. Some flows just last for a short time, but the TE paths resources for the flows are usually reserved for a long time and cannot be used by other services. Therefore, the SR policy originator can generate a policy with time-limited paths and resources, the headend schedules these paths over time to improve the utilization of resources.</t>
      <t>This document extends SR Policy to include the schedule time of candidate paths/SR lists and applies to both SRv6 and SR-MPLS.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="sr-schedule-definition-for-sr-policy">
      <name>SR-Schedule Definition for SR Policy</name>
      <t>The Segment Routing policy architecture is specified in <xref target="RFC9256"/>. An SR Policy is associated with one or more candidate paths. A candidate path is either dynamic, explicit, or composite. The related concepts with the SR-Schedule definition in this document are listed as follows.</t>
      <t>An explicit/dynamic candidate path is expressed as a Segment-List or a set of Segment-Lists directly or by computation. If a candidate path is associated with a set of Segment-Lists, each Segment-List is associated with weight for weighted load balancing. The default weight is 1.</t>
      <t>A composite candidate path is defined in <xref target="RFC9256"/>.</t>
      <section anchor="Section3.1">
        <name>SR-Schedule of a Segment List</name>
        <t>A segment list represents a specific source-routed path to send traffic from the headend to the endpoint of the corresponding SR policy <xref target="RFC9256"/>. The SR-Schedule of a segment list is defined as the valid period of the path between a source node and a destination node.</t>
      </section>
      <section anchor="Section3.2">
        <name>SR-Schedule of a Candidate Path</name>
        <t>In the case of an explicit/dynamic candidate path, if it is expressed as a single Segment-List, then the SR-Schedule of the candidate path is the same as that of the SR-Schedule of the segment list as described in <xref target="Section3.1"/>.</t>
        <t>In the case of an explicit/dynamic candidate path, if it is expressed as a set of Segment-Lists (for load-balancing), then the SR-Schedule of the candidate path is defined as the valid period of all the Segment-Lists in the set.</t>
      </section>
    </section>
    <section anchor="the-framework-of-sr-schedule-for-sr-policy">
      <name>The Framework of SR-Schedule for SR Policy</name>
      <figure anchor="ref-to-fig1">
        <name>Framework of SR-Schedule for SR Policy</name>
        <artwork><![CDATA[
The framework of SR-Schedule for SR Policy includes schedule information acquisition, SR-Schedule computation, SR-Schedule enforcement, and handling behaviors on the headend.

                           +------------------+
                           | Network Manager  | 
                           +------------------+
                                     |
                         Schedule information acquisition
                                     |
                           +--------\|/-------+
              +------------|Network Controller| SR-Schedule computation
              |            +--------/|\-------+
              |                      |
SR-Schedule enforcement   Schedule information acquisition
              |                      |
           +-\|/-+       +-----------|-----------+   +-----+
 Handling  |Head |-------|    Segment Routing    |---|End  |
 behaviors |end  |       |    Network Domain     |   |Point|
           +-----+       +-----------------------+   +-----+
]]></artwork>
      </figure>
      <section anchor="schedule-information-acquisition">
        <name>Schedule Information Acquisition</name>
        <t>The SR-Schedule of a segment list is defined as the valid period of the path, see <xref target="Section3.1"/>.
The valid period of a path can be limited by a variety of factors, for example the flow’s predicted variation, the predicted availability of nodes and links. The schedule information could be acquired from the Network Manager or network devices by YANG data model or routing protocol advertisement.</t>
      </section>
      <section anchor="sr-schedule-computation">
        <name>SR-Schedule Computation</name>
        <t>The schedule information is sent to the network controller or the headend where the SR-Schedule is computed. Depending upon the source of time constraint, the computation methods are different, which are described in the following subsections.</t>
        <section anchor="sr-schedule-computation-with-flow-constraint">
          <name>SR-Schedule Computation with Flow Constraint</name>
          <t>When the flow with predictable time limit requests a SR path and the topology is stable, the SR-Schedule calculation only needs to consider the time limit of the flow. During calculation, the controller needs to calculate the optimal path that meets flow requirements, and then generate the SR-Schedule based on the flow variation regularity.</t>
        </section>
        <section anchor="sr-schedule-computation-with-topology-constraint">
          <name>SR-Schedule Computation with Topology Constraint</name>
          <t>When the flow is constant but the network topology changes predictably, the SR-Schedule calculation only needs to consider the topology change. During calculation, multiple paths need to be calculated based on flow requirements. The valid time of each path is the intersection of the available time of all nodes and links in the path. There must be no gap between two paths adjacent in time to ensure the transmission will not be interrupted.</t>
        </section>
        <section anchor="sr-schedule-computation-with-mixed-constraint">
          <name>SR-Schedule Computation with Mixed Constraint</name>
          <t>When the requested flow has a predicable time limit and the topology also changes predictably, the SR-Schedule calculation needs to consider both the flow and topology time constraints. During calculation, the controller first obtains the period that needs to be covered according to the flow time constraint. Then, the controller calculates multiple paths that meet the flow's requirements. The valid time of each path is the intersection of the available time of all nodes and links in the path. There must be no gap between two paths adjacent in time to ensure the transmission will not be interrupted.</t>
        </section>
      </section>
      <section anchor="sr-schedule-enforcement">
        <name>SR-Schedule Enforcement</name>
        <t>SR Policy as per <xref target="RFC9256"/> does not include SR-Schedule in the SR Policy encoding structure.  As specified in <xref target="I-D.zzd-idr-sr-policy-scheduling"/>, the SR-Schedule is encoded in the SR policy structure as shown in <xref target="fig2"/> and <xref target="fig3"/>.  After the SR-Schedule computation, the SR-Schedule is enforced along with the SR Policy to the headend of the corresponding path.</t>
        <figure anchor="fig2">
          <name>SR Policy Structure with SR-Schedule at Candidate Path Level</name>
          <artwork><![CDATA[
SR Policy SAFI NLRI: <Distinguisher, Policy-Color, Endpoint>
      Attributes:
         Tunnel Encapsulation Attribute (23)
            Tunnel Type: SR Policy (15)
                Binding SID
                SRv6 Binding SID
                Preference
                Priority
                Policy Name
                Policy Candidate Path Name
                Explicit NULL Label Policy 
         -----> Scheduling Time Information (SR-Schedule)
                Segment List
                    Weight
                    Segment
                    Segment
                    ...
                ...
]]></artwork>
        </figure>
        <figure anchor="fig3">
          <name>SR Policy Structure with SR-Schedule at Segment List Level</name>
          <artwork><![CDATA[
SR Policy SAFI NLRI: <Distinguisher, Policy-Color, Endpoint>
      Attributes:
         Tunnel Encapsulation Attribute (23)
            Tunnel Type: SR Policy (15)
                Binding SID
                SRv6 Binding SID
                Preference
                Priority
                Policy Name
                Policy Candidate Path Name
                Explicit NULL Label Policy
                Segment List
          --------> Scheduling Time Information (SR-Schedule)
                    Weight
                    Segment
                    Segment
                    ...
                ...
]]></artwork>
        </figure>
      </section>
      <section anchor="handling-behaviors-on-the-headend">
        <name>Handling Behaviors on the Headend</name>
        <t>After the SR Policy with SR-Schedule is computed, the headend performs the handling behaviors.</t>
        <t>After obtaining the SR Policy with SR-Schedule, the headend needs to select the available paths at this moment according to the effective time of the candidate path and the segment list.</t>
        <t>When a packet arrives, the headend encapsulates the segment list of the forwarding path in the packet header based on the available paths.</t>
        <t>If no path is available at a certain time point, the SR Policy is considered malformed and should be logged with error.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t><xref target="RFC9256"/> specifies in detail the SR Policy construct (introduced in <xref target="RFC8402"/>) and its security considerations.  The additional SR-Schedule attribute information can be sensitive in some deployments and could influence SR path setup, selection and switching with adverse effect. The protocol extensions that include SR-Schedule need to take this into consideration. This document does not define any new protocol extensions and thus does not introduce any further security considerations.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
    </section>
    <section anchor="acknowledgement">
      <name>Acknowledgement</name>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC9256" target="https://www.rfc-editor.org/info/rfc9256" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9256.xml">
          <front>
            <title>Segment Routing Policy Architecture</title>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="A. Bogdanov" initials="A." surname="Bogdanov"/>
            <author fullname="P. Mattes" initials="P." surname="Mattes"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>Segment Routing (SR) allows a node to steer a packet flow along any path. Intermediate per-path states are eliminated thanks to source routing. SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated called a headend node. The packets steered into an SR Policy carry an ordered list of segments associated with that SR Policy.</t>
              <t>This document updates RFC 8402 as it details the concepts of SR Policy and steering into an SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9256"/>
          <seriesInfo name="DOI" value="10.17487/RFC9256"/>
        </reference>
        <reference anchor="I-D.ietf-idr-segment-routing-te-policy" target="https://datatracker.ietf.org/doc/html/draft-ietf-idr-segment-routing-te-policy-26" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-idr-segment-routing-te-policy.xml">
          <front>
            <title>Advertising Segment Routing Policies in BGP</title>
            <author fullname="Stefano Previdi" initials="S." surname="Previdi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Paul Mattes" initials="P." surname="Mattes">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Dhanendra Jain" initials="D." surname="Jain">
              <organization>Google</organization>
            </author>
            <date day="23" month="October" year="2023"/>
            <abstract>
              <t>This document introduces a BGP SAFI with two NLRIs to advertise a candidate path of a Segment Routing (SR) Policy. An SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. An SR Policy consists of one or more candidate paths, each consisting of one or more segment lists. A headend may be provisioned with candidate paths for an SR Policy via several different mechanisms, e.g., CLI, NETCONF, PCEP, or BGP. This document specifies how BGP may be used to distribute SR Policy candidate paths. It defines sub-TLVs for the Tunnel Encapsulation Attribute for signaling information about these candidate paths. This documents updates RFC9012 with extensions to the Color Extended Community to support additional steering modes over SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-segment-routing-te-policy-26"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.ietf-tvr-use-cases" target="https://datatracker.ietf.org/doc/html/draft-ietf-tvr-use-cases-09" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tvr-use-cases.xml">
          <front>
            <title>TVR (Time-Variant Routing) Use Cases</title>
            <author fullname="Edward J. Birrane" initials="E. J." surname="Birrane">
              <organization>JHU/APL</organization>
            </author>
            <author fullname="Nicolas Kuhn" initials="N." surname="Kuhn">
              <organization>Thales Alenia Space</organization>
            </author>
            <author fullname="Yingzhen Qu" initials="Y." surname="Qu">
              <organization>Futurewei Technologies</organization>
            </author>
            <author fullname="Rick Taylor" initials="R." surname="Taylor">
              <organization>Ori Industries</organization>
            </author>
            <author fullname="Li Zhang" initials="L." surname="Zhang">
              <organization>Huawei</organization>
            </author>
            <date day="29" month="February" year="2024"/>
            <abstract>
              <t>This document introduces use cases where Time-Variant Routing (TVR) computations (i.e. routing computations taking into considerations time-based or scheduled changes to a network) could improve routing protocol convergence and/or network performance.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tvr-use-cases-09"/>
        </reference>
        <reference anchor="I-D.zzd-idr-sr-policy-scheduling" target="https://datatracker.ietf.org/doc/html/draft-zzd-idr-sr-policy-scheduling-09" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.zzd-idr-sr-policy-scheduling.xml">
          <front>
            <title>BGP SR Policy Extensions for Path Scheduling</title>
            <author fullname="Li Zhang"/>
            <author fullname="Tianran Zhou"/>
            <author fullname="Jie Dong"/>
            <author fullname="Minxue Wang"/>
            <author fullname="Nkosinathi Nzima"/>
            <date day="4" month="July" year="2025"/>
            <abstract>
              <t>Segment Routing (SR) policy enables instantiation of an ordered list
   of segments with a specific intent for traffic steering.  When using
   SR policy in a time-variant network, delivering the time-variant
   information associated with paths is necessary in some scenarios.</t>
              <t>This document proposes extensions to BGP SR Policy to deliver the
   schedule time information of candidate path (segment list) and its
   associated attributes.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-zzd-idr-sr-policy-scheduling-09"/>
        </reference>
        <reference anchor="RFC8402" target="https://www.rfc-editor.org/info/rfc8402" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8402.xml">
          <front>
            <title>Segment Routing Architecture</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source routing paradigm. A node steers a packet through an ordered list of instructions, called "segments". A segment can represent any instruction, topological or service based. A segment can have a semantic local to an SR node or global within an SR domain. SR provides a mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SR domain.</t>
              <t>SR can be directly applied to the MPLS architecture with no change to the forwarding plane. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. Upon completion of a segment, the related label is popped from the stack.</t>
              <t>SR can be applied to the IPv6 architecture, with a new type of routing header. A segment is encoded as an IPv6 address. An ordered list of segments is encoded as an ordered list of IPv6 addresses in the routing header. The active segment is indicated by the Destination Address (DA) of the packet. The next active segment is indicated by a pointer in the new routing header.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8402"/>
          <seriesInfo name="DOI" value="10.17487/RFC8402"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
rkWo4CA4ma/EgcCG6nWlYnNeNekH6DGU1/LXPMOQINtKqChNHermmpfGf7Z0
5WRfACQpdV1hCPgIi5/It6CTQXN738KoifpaECl3Fl13w57P8cKoT0dBHwBU
l2uwR8uEJdYimPkod5xJjfWAqYUhzqr+SCMfbNZH3GC5Ek+fDLJR90VNtZKs
LU5W7a/WYM+sA7Rx+WbK35v/FUR2zH/YUs4kaVMg/M4BCowTfpYr2ALOGSq+
nZMv5H/NN9syU2Q2MFFN1bMRY5N+/Qy/YOFVAvo211wf8Ic0jL+762MWc1Wc
vj37ok+xYbm2AkoLAQXcg02gCejhEZYw2GRmfZjbmMkNLk5KA3DSZ4Co0hbV
xWO2MFhXIeO75LQdSN8J8fPgmH1z4L6xAtVc4Ock1yPdB/eDp0Nfs3niifKk
+Xg3bqnzZV2WQJsOy4xXJnh505Nt7z2638kifH93D6MVanv3i/u9vOup9OWh
o4PeO6rkv6/DGRBzZDSZGHgFCQOcl/0XTphTYO+b3q2VgAa7Hvp6CDt9dXzM
jvkUNuyHt30pjXgS2D/u4hI9Lk4CtuNrB30NROW8wZT1e6okDr7yYz/5Hd63
GGoLyRC6QJMFRZBrPIaAHGMdguSaSo/FlSgwN/o/bNdf/Vaw/VjshTz5l8Aa
/34b5D76ZOR2KuoNbuH8a0oaT9fLby9cvE6S+FwIq/XWiLK97vdXODpRoWbD
7Z1RmN/xoPa20KaVurM3LMldf1hjHZ4rWPdxZ6ncp511EiUgoczwmlbDUgZK
tYFVxsWMkSeoPFwH4FrDNGsfoEXjuf7eVKceEnK47n2FlhPRvDSV7uZWa7vE
cjeWI9pPQ8172D9nmdCoX7dFijo7a4r2yZR0F40gIUSz4bmOH9EXoXoBdHce
PhgBk1J6RF8WRVajwxN5xxnIfwxdy2lJU3ulCATJBchTrMngWCzgmG03l3ai
j0ZfPX4IvMVdUZMWyxR+2ayzLHAZJKw8z6ksBalt1xtC7OyUZ1zxyODdOsIC
LEo3dHJRFWrlPrjT9QbSRHtfJqT6Rti62mHtNRzSG+gpW8jAi6g8YwLiHK1u
ajfNxT7PyIeYZcgl8UaPAzWoSXW3v35pr6Gqru4Gcq3o3tXQwg7ltYn5rTcD
jZvV2t/lGFY8fY04mpxOekC4N8nwGk8h8rkn2HhLbwr4Tv4DA0U+dJYrAAA=

-->

</rfc>
