<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>Hi Tomasz,</p>
    <p><br>
    </p>
    <p>Yes, that one will affect registering the referrer correctly in
      stats generation to log it as an internal referrer, so that could
      do with updating.&nbsp; I am not currently responsible for maintaining
      the IRStats2 Bazaar plugin.&nbsp; I will speak to my colleagues and
      other EPrints developers and see what can be done about
      maintaining this and making changes like the one required here.&nbsp;
      There are several different branches of development that I am
      aware of for IRStats2 and we really need to see if this can be
      more linked up.</p>
    <p><br>
    </p>
    <p>Regards</p>
    <p><br>
    </p>
    <p>David Newman<br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 07/01/2022 15:30, Tomasz Neugebauer
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:YQXPR01MB240743878198AECE09283F1E8B4D9@YQXPR01MB2407.CANPRD01.PROD.OUTLOOK.COM">
      
      <style type="text/css" style="display:none;">P {margin-top:0;margin-bottom:0;}</style>
      <div style="padding-bottom: 10px; padding-top: 5px;">
        <div style="padding:12px; border:1px solid #8D3970;
          background-color:#F7F9FA; color:#8D3970; font-size:14px;
          line-height:22px; font-family: Calibri, Arial, Helvetica,
          sans-serif;">
          <strong>CAUTION:</strong> This e-mail originated outside the
          University of Southampton.
        </div>
      </div>
      <div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          Hi David,</div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          <br>
        </div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          Thank you, much appreciated.&nbsp;&nbsp;</div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          <br>
        </div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          About the IRStats2, I think maybe I was unclear, one of the
          references, the one in the config file, is indeed commented
          out by default, but this one is not:</div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          <a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Firstats2%2Fblob%2Fmaster%2Flib%2Fplugins%2FEPrints%2FPlugin%2FStats%2FProcessor%2FAccess%2FReferrer.pm%23L24&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659459577%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=U4WL%2BuorOzOF4NEGLgzzRvRP%2FC3ZYHJYHPEg%2FzvvOGI%3D&amp;reserved=0" originalSrc="https://github.com/eprints/irstats2/blob/master/lib/plugins/EPrints/Plugin/Stats/Processor/Access/Referrer.pm#L24" shash="z+ptVp9AmW8YhCS5Q9iXCwXUu5S5HmIKrEqXWJfFr9OHjgVOveY2I0G5Q0i4eE/WbgHtrHPkY4k1KOVL7rNf2Qsbg47dw8I9+oWlmiAJkPMo4MPVeCsgIxOKAFRnIzNsGlJG9hV66jEhVlSRf+DAg10Wd19upoQDxHH8dd9sSlY=" originalsrc="https://github.com/eprints/irstats2/blob/master/lib/plugins/EPrints/Plugin/Stats/Processor/Access/Referrer.pm#L24" shash="k2SW+aRQdqCyoa2Wq7hsiEAe+5s56eRUC2EKcKhG3QJVLvam9K2sxiU4/70Qs3rDfJVlhtfu+QJR+/SQtWGDI+peU6pU7W2/pGAAnh8cVbtcbHzHdAJe39zu0Y0jacYBZ5qJTcm0OVNJ2y4ENN1ANoYDOpZIUr9IY2+jyVP3YTY=" id="LPNoLPOWALinkPreview" moz-do-not-send="true">https://github.com/eprints/irstats2/blob/master/lib/plugins/EPrints/Plugin/Stats/Processor/Access/Referrer.pm#L24</a><br>
        </div>
        <blockquote type="cite" style="font-size:14px;background-color:rgb(255, 255, 255)">
          <blockquote type="cite">
            <div style="margin:0px"><span style="margin:0px">$self-&gt;{host}
                = $self-&gt;{session}-&gt;config( &quot;host&quot; );</span></div>
          </blockquote>
        </blockquote>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          That is part of an initialization function, so don't know if
          having {host} undefined in the Referrer object on IRstats2
          would break anything further along?</div>
        <br>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          Best wishes,</div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          <br>
        </div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          Tomasz</div>
        <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
          font-size: 12pt; color: rgb(0, 0, 0);">
          <br>
        </div>
        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
          font-size:12pt; color:rgb(0,0,0)">
          <br>
        </div>
        <hr tabindex="-1" style="display:inline-block; width:98%">
        <div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b>
            David R Newman <a class="moz-txt-link-rfc2396E" href="mailto:drn@ecs.soton.ac.uk">&lt;drn@ecs.soton.ac.uk&gt;</a><br>
            <b>Sent:</b> Friday, January 7, 2022 7:19 AM<br>
            <b>To:</b> Tomasz Neugebauer
            <a class="moz-txt-link-rfc2396E" href="mailto:Tomasz.Neugebauer@concordia.ca">&lt;Tomasz.Neugebauer@concordia.ca&gt;</a>;
            <a class="moz-txt-link-abbreviated" href="mailto:eprints-tech@ecs.soton.ac.uk">eprints-tech@ecs.soton.ac.uk</a>
            <a class="moz-txt-link-rfc2396E" href="mailto:eprints-tech@ecs.soton.ac.uk">&lt;eprints-tech@ecs.soton.ac.uk&gt;</a><br>
            <b>Subject:</b> Re: [EP-tech] mixed-content warnings</font>
          <div>&nbsp;</div>
        </div>
        <div>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <span style="font-weight:bold; color:rgb(156,0,0)">Attention</span>
            This email originates from outside the concordia.ca domain.
            // Ce courriel provient de l'exterieur du domaine de
            concordia.ca</p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <div><br>
          </div>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            Hi Tomasz,</p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            I have just been checking RFC 6265 which is about the HTTP
            State Management System (i.e. Cookies).&nbsp; Point 6 of section
            5.3 (see link below) makes clear that if the domain
            attribute is not set then it is assumed to be the same as
            the current request:<br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <a class="x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.rfc-editor.org%2Frfc%2Frfc6265%23section-5.3&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659469532%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=xSuD9mkyntmlNisdBmfMVDgyf%2Fkfa2g7B1N0N6yc9K0%3D&amp;reserved=0" originalSrc="https://www.rfc-editor.org/rfc/rfc6265#section-5.3" shash="FInDDXheqxvKohyEod4Q03vaPTcLe/36UV102cuZGpeBZTQFTMN51peWcBcOqGEwNH4+9qTHf5GQkZ1w64YkVLVp43VPTRUYKdEyvfHJf8bwmSk1y9jhR5S7QBYMbm1etwMNOpjUn6uC32PEuGaN8K5WGDO1LDtkaknLooaV9NI=" originalsrc="https://www.rfc-editor.org/rfc/rfc6265#section-5.3" shash="XS1fkOYPwfBhuK5Nnuye++hpZRlpE4U3hLWbVgIsXFwxQHEjHSSbpLRDzHX02g3QODA2+bjG6+1kkTRbIYA9pUtHOPR3BWa5LVtI1quSc9eQ8c+ad10F5fp26lNk75YsYqINz7gIoCtkFwdUqJGfEzArnSn/yz+85d8fSlZ/eLo=" moz-do-not-send="true">https://www.rfc-editor.org/rfc/rfc6265#section-5.3</a></p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            Therefore, I cannot see any scenario where the domain not
            being set would create a security or functional problem, as
            there should be no need to share EPrints cookie data between
            domains, (e.g. multiple web sites at an institution).&nbsp; The
            only two cookies that EPrints deploys by default are for
            maintaing a logged in user's session and another for the
            language they have chosen if the repository is
            multi-language.&nbsp; Neither of these should need to be shared
            with other sites.&nbsp; Even if they did, the effective setting
            for domain in the cookie with be the same whether
            $c-&gt;{host} is defined or not.&nbsp; So the repository system
            administrator would have had to manually change the
            $c-&gt;{cookie_domain} setting to something other than the
            hostname of the repository, at which point the value for
            $c-&gt;{host} becomes inconsequential as it will no longer
            be playing a role in setting $c-&gt;{cookie_domain}.<br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            This does not mean that the commit I made last night is
            inappropriate, just that functionally it will make no
            difference.&nbsp; However, at some point in the future it may
            concern someone (like it did us, yesterday) that the value
            for $c-&gt;{cookie_domain} is not being set because
            $c-&gt;{host} is undefined (if a repository has been
            configured for HTTPS only).&nbsp; So fixing this now will avoid
            concern further down the line.</p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
            Regards</p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            David Newmam<br>
          </p>
          <p style="margin-top: 0px; margin-bottom: 0px;margin-top: 0px;
            margin-bottom: 0px;">
            <br>
          </p>
          <div class="x_moz-cite-prefix">On 07/01/2022 00:47, David R
            Newman wrote:<br>
          </div>
          <blockquote type="cite">
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              Hi Tomasz,</p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              Thanks for doing that review.&nbsp; Point 2 (cookie_domain) is
              important to fix, although it does not appear to break
              anything from a user perspective, setting the domain on
              cookies is important.&nbsp; I have fixed this with the latest
              commit:</p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <a class="x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Feprints3.4%2Fcommit%2Fbde3347551e0424fbbc166e52c9179b6e17b6704%23diff-5d51fb282bd5d973fb2de0a82e36cdfb465b9e69b2782c9c923f8a24aeaaad97&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659469532%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=A%2Ff9phuN1abJdPvFIOuwD8ZBQILgT%2FYIgycx5UyBR%2BI%3D&amp;reserved=0" originalSrc="https://github.com/eprints/eprints3.4/commit/bde3347551e0424fbbc166e52c9179b6e17b6704#diff-5d51fb282bd5d973fb2de0a82e36cdfb465b9e69b2782c9c923f8a24aeaaad97" shash="qGgjSFMoxvf9iKoDyXDVeX7fjURu1VkFBZX7wvLoB1kTOBN2Xwn/vjv0b4RBe9ZvVNIdezTuAOiVDTmXiQZQfv82QjTTH2GUrjH9lpCEGUw6pv2xrwj2aYOgEgae1ef7H7AQVcvueFtIETw+9ahRrN98Kt01KiKbBYZCQ0iVDS4=" originalsrc="https://github.com/eprints/eprints3.4/commit/bde3347551e0424fbbc166e52c9179b6e17b6704#diff-5d51fb282bd5d973fb2de0a82e36cdfb465b9e69b2782c9c923f8a24aeaaad97" shash="yUCgaaUTeq9cY05m3TkwGSX4de8bfH0lyuaVHIuB+J9e9cZC2ZxbgBEA2QRhJC0PZjeQCK2/EsHFiqDwekARk764+/b9Naw3sofcPWAQdnsDODWgvb3toc3BOvTLa8cAtrhwZ3i8QyQrnuothTZWjdwCZmEhc1Rkxtx7r2jY8ww=" moz-do-not-send="true">https://github.com/eprints/eprints3.4/commit/bde3347551e0424fbbc166e52c9179b6e17b6704#diff-5d51fb282bd5d973fb2de0a82e36cdfb465b9e69b2782c9c923f8a24aeaaad97</a><br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              I have added a GitHub&nbsp; issue for the DataCiteDOI plugin:</p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <a class="x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprintsug%2FDataCiteDoi%2Fissues%2F52&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659479489%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=SrG1p9ePzYlAXWGaGso6qo2uhOWno1wgETcRB32sREk%3D&amp;reserved=0" originalSrc="https://github.com/eprintsug/DataCiteDoi/issues/52" shash="Dd0eYIEaJ6z1i8lzzFsS1cAL0mquCcST3Qrf6SwsuVthKGO+u/+pibkNWPkmIg9EDz/s0dcLRVfGPHWWXZLhS4rMCcYCj3f0BIih3k5Zv+fAwk1rWoCuzkqtl4+6FSg4w0wBEBklMbOncukNhTkDemTe0DGwqQPjJFfsmCEiDT4=" originalsrc="https://github.com/eprintsug/DataCiteDoi/issues/52" shash="q9L7UPK90oDzNQ5LL360fuGC1DS8jq1u30vsANtl0AaBafPBI6UdmhjB3Q4Y9TdJlmvukj8Q5/vVjvFrW7HKoMxyiwhOcfxsAesHqBK2Okuj6oiu+a+J6cSuOQLg9apPlB+jVnAIGw+LtIjouvY4GfY/7a4ey8YIBqokRq3Oa1s=" moz-do-not-send="true">https://github.com/eprintsug/DataCiteDoi/issues/52</a></p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              The IRStats2 issue is less of a problem, as the code is
              commented out by default, so if a someone uncomments this,
              they should spot this is not working and be able to deal
              with that issue immediately.&nbsp; Rather than not noticing
              this has broken after changing their configuration to
              enable HTTPS only.&nbsp; Like would be the case the the other
              two instances.<br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              Thanks and regards</p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              David Newman</p>
            <p style="margin-top: 0px; margin-bottom: 0px;margin-top:
              0px; margin-bottom: 0px;">
              <br>
            </p>
            <div class="x_moz-cite-prefix">On 06/01/2022 22:49, Tomasz
              Neugebauer wrote:<br>
            </div>
            <blockquote type="cite">
              <div style="padding-bottom:10px; padding-top:5px">
                <div style="padding:12px; border:1px solid #8D3970;
                  background-color:#F7F9FA; color:#8D3970;
                  font-size:14px; line-height:22px;
                  font-family:Calibri,Arial,Helvetica,sans-serif">
                  <strong>CAUTION:</strong> This e-mail originated
                  outside the University of Southampton.
                </div>
              </div>
              <div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  I did some grep on our configuration files, and found
                  the following instances:</div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <br>
                </div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <ol>
                    <li><span>DataCite DOI Minting</span></li>
                  </ol>
                </div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <br>
                </div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbazaar.eprints.org%2F304%2F1%2Fepm%2FDataCiteDoi%2Fcfg%2Fcfg.d%2Fz_datacitedoi.pl&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659479489%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=O5l%2Fq%2BAmShiya3HSPrXetI5d4KeG5%2BR%2B0%2B698bccPEw%3D&amp;reserved=0" originalSrc="https://bazaar.eprints.org/304/1/epm/DataCiteDoi/cfg/cfg.d/z_datacitedoi.pl" shash="drO0Bde3cjfYz8AMZ5IApHf5ZLFnzlnSN1XzZt77Owv7joCjDzlvx9SHXVfhOmfHxyj88WFmOfbKNZkeK+Nn1Zs0DvfnoubszdNXils1Nb5OaoPrT/VTEtTJiGG4M/SeOTAFOXDICs/ad/MR0mrxVZZt3a+gd2J4JumOs1PhXNQ=" originalsrc="https://bazaar.eprints.org/304/1/epm/DataCiteDoi/cfg/cfg.d/z_datacitedoi.pl" shash="Gkw8QGYvW21gQ26+Lc/uuTvzU03BYsCzOK3/zt9wajwmpJbiDjjgK7kuRwMWLDp3K7yySxMp4VLJ91Ua7cUtYtS3OOn6V+gJbW1PQVNh5KgBy9wr7uUT04efRUR4ZB405/q8ncyAd8I9pwkPgGIiFl/5+aPOGQOe005K15aPxv0=" style="margin:0px;
                    background-color:rgb(255,255,255)" moz-do-not-send="true">https://bazaar.eprints.org/304/1/epm/DataCiteDoi/cfg/cfg.d/z_datacitedoi.pl</a></div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <span style="color:rgb(0,0,0);
                    font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt">$c-&gt;{datacitedoi}{repoid} =
                    $c-&gt;{host};</span></div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <span style="color:rgb(0,0,0);
                    font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt"><br>
                  </span></div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  DataCite DOI minting, from the Bazaar, but in
                  configuration file, so simply overwrote with
                  &quot;$c-&gt;{securehost}&quot; in our local
                  cfg/cfg.d/z_datacitedoi.pl</div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <br>
                </div>
                <ol start="2">
                  <li style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    Core lib/cfg.d/misc.pl</li>
                </ol>
                <div><a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Feprints3.4%2Fblob%2Fmaster%2Flib%2Fcfg.d%2Fmisc.pl&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659489443%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=WLGdX2Ne2FADql%2Bd3RJG9JQ0XliiPR3fsBXz7CVXUWI%3D&amp;reserved=0" originalSrc="https://github.com/eprints/eprints3.4/blob/master/lib/cfg.d/misc.pl" shash="RBX+Hvs0U0T44HGTd/BGeQl2JdCpNFwJRv7Sma62VehI2kF0pzD2WQaZUiIRtqFw5JuaxGNyF/A4cIH8eY9uOftLxf3yJDRK/Efi9evSbPg8UvnCD3vXvWt9cpjODp0ppse5X1gIEIdEjO1HyHQdCz8c1JRRA7WaG968fqffxGI=" originalsrc="https://github.com/eprints/eprints3.4/blob/master/lib/cfg.d/misc.pl" shash="d//MB4y2k9nYXdabwlNkqCA0lYbRC070t9DuJhFOeOLOabadYi4PQvcQuFb1qY8CxeBF3iBTBaGA66ex8gfnj4Swrbehz9/Fqfff1E105UUqMD2hhILcwzOzdpu97ftxPMnReuIl+n1XPs62sxAErWD4la0Tw1Y6+WGGEnENt5o=" id="LPNoLPOWALinkPreview" moz-do-not-send="true">https://github.com/eprints/eprints3.4/blob/master/lib/cfg.d/misc.pl</a><br>
                </div>
                <div><span class="x_TextRun x_SCXO58643483 x_BCX0" style="margin:0px;
                    font-variant-ligatures:none!important;
                    color:windowtext; text-align:left;
                    background-color:rgb(255,255,255); font-size:11pt;
                    font-family:Calibri,Calibri_MSFontService,sans-serif;
                    line-height:18px" lang="EN-US"><span class="x_NormalTextRun x_SCXO58643483 x_BCX0" style="margin:0px">$c-&gt;{</span><span class="x_SpellingError x_SCXO58643483 x_BCX0" style="">cookie_domain</span><span class="x_NormalTextRun x_SCXO58643483 x_BCX0" style="margin:0px">} = $c-&gt;{host};</span></span><span class="x_EOP x_SCXO58643483 x_BCX0" style="margin:0px; color:windowtext;
                    text-align:left; background-color:rgb(255,255,255);
                    font-size:11pt; line-height:18px;
                    font-family:Calibri,Calibri_MSFontService,sans-serif">&nbsp;</span><br>
                </div>
                <div><span class="x_EOP x_SCXO58643483 x_BCX0" style="margin:0px; color:windowtext;
                    text-align:left; background-color:rgb(255,255,255);
                    font-size:11pt; line-height:18px;
                    font-family:Calibri,Calibri_MSFontService,sans-serif"><br>
                  </span></div>
                <div><span class="x_EOP x_SCXO58643483 x_BCX0" style="margin:0px; color:windowtext;
                    text-align:left; background-color:rgb(255,255,255);
                    font-size:11pt; line-height:18px;
                    font-family:Calibri,Calibri_MSFontService,sans-serif">Not
                    sure what to do with this one?&nbsp; Should I change that
                    or do something about it, given that {host} is now
                    undefined?</span></div>
                <div><span class="x_EOP x_SCXO58643483 x_BCX0" style="margin:0px; color:windowtext;
                    text-align:left; background-color:rgb(255,255,255);
                    font-size:11pt; line-height:18px;
                    font-family:Calibri,Calibri_MSFontService,sans-serif"><br>
                  </span></div>
                <ol start="3">
                  <li><span class="x_EOP x_SCXO58643483 x_BCX0" style="margin:0px; color:windowtext;
                      text-align:left;
                      background-color:rgb(255,255,255); font-size:11pt;
                      line-height:18px;
                      font-family:Calibri,Calibri_MSFontService,sans-serif"></span>IRStats2&nbsp;</li>
                </ol>
                <div>Processor Referrer<br>
                </div>
                <div><a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Firstats2%2Fblob%2Fmaster%2Flib%2Fplugins%2FEPrints%2FPlugin%2FStats%2FProcessor%2FAccess%2FReferrer.pm%23L24&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659489443%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=R9sX7IMjYh84jNg1rMKOmqgaTUIXsH19fNbBJVen38U%3D&amp;reserved=0" originalSrc="https://github.com/eprints/irstats2/blob/master/lib/plugins/EPrints/Plugin/Stats/Processor/Access/Referrer.pm#L24" shash="kgiN6yXBe8ntUG1nwMnusbi4cjlq/9ohbQ8HAGvCX1tivlfqUzrEihkar8OjIOTlYjFUsBR/HjCbbQxT5lYLYb7eOk23nxKEXzneTKIKNf8yb6/s9lLdsLWVuOBTmQDIK6uMVWWNzjyynzg5k9EzmHwqrOY3sJ3sbttV97Io9og=" originalsrc="https://github.com/eprints/irstats2/blob/master/lib/plugins/EPrints/Plugin/Stats/Processor/Access/Referrer.pm#L24" shash="JyysR7YaTU2eR4mU+D00wF68/EuNcQFiBiUvFEqt+bAOVvZoXPfhXwpo+UbmoFS1/QH3Ekizdru/NW0v+hKyiC0b1rm4CEqu2wFfjMnjj5pAzPpx6A3IMly6dzcrzG1w3mAKwWACqveeE7uoaf2+Z2CJxNb8PcqdvGpLK4QwdXo=" id="LPNoLPOWALinkPreview_2" moz-do-not-send="true">https://github.com/eprints/irstats2/blob/master/lib/plugins/EPrints/Plugin/Stats/Processor/Acc!
                    ess/Referrer.pm#L24</a><br>
                </div>
                <div>$self-&gt;{host} = $self-&gt;{session}-&gt;config(
                  &quot;host&quot; );<br>
                </div>
                <div><br>
                </div>
                <div><span style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    background-color:rgb(255,255,255);
                    display:inline!important">Not sure if this would no
                    longer work now that &quot;host&quot; is undef?</span><br>
                </div>
                <div><br>
                </div>
                <div>Also, not an issue on our repo, but config file on
                  irstats2 has this (optional code, commented out by
                  default and on our repo):</div>
                <div><a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Firstats2%2Fblob%2Fmaster%2Fcfg%2Fcfg.d%2Fz_irstats2.pl&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659499404%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=suuXUtM6tYUnw6%2F2MCVCkLC6kocyzBU8FDDA1wP83Lk%3D&amp;reserved=0" originalSrc="https://github.com/eprints/irstats2/blob/master/cfg/cfg.d/z_irstats2.pl" shash="Yjdlgl69+Bpukf4c6FWxFB0QwomowBucpKzuV7TicSCtJJaAsXBGtwsqCMXBKu1+WcNKkvXBk9BrrLH6cQQ0tzq7utR9K10iF2CdmrxKar0OSA+2rvXrT4HWoiwPzOiBju2KpmH3nkGIZmDZU/WXx+PS29M1ilVVrEYiwlwvS3Y=" originalsrc="https://github.com/eprints/irstats2/blob/master/cfg/cfg.d/z_irstats2.pl" shash="x7Q/tQmV3d2lBAs+7R/vmNZ9piLo89GA0Le53yrCwSQdtAG3xfiTGXAPwtPxtm13WozmMNBbPgxXsA3jf9+b48RSI4xdug4Cak5KQsMx8Gpdn4wnFwrnlVvIYwuWj2QGvjGw7N3Yl+5dzhvciRlkTl2xLtzlVNfmePbhWF4/n6A=" id="LPlnkOWALinkPreview_1" moz-do-not-send="true">https://github.com/eprints/irstats2/blob/master/cfg/cfg.d/z_irstats2.pl</a></div>
                <div><span class="x_TextRun x_SCXO200029000 x_BCX0" style="margin:0px;
                    font-variant-ligatures:none!important;
                    color:windowtext; text-align:left;
                    background-color:rgb(255,255,255); font-size:11pt;
                    font-family:Calibri,Calibri_MSFontService,sans-serif;
                    line-height:18px" lang="EN-US"><span class="x_NormalTextRun x_SCXO200029000 x_BCX0" style="margin:0px">my $hostname =
                      $session-&gt;config( 'host' ) or return 0;</span></span><span class="x_EOP x_SCXO200029000 x_BCX0" style="margin:0px; color:windowtext;
                    text-align:left; background-color:rgb(255,255,255);
                    font-size:11pt; line-height:18px;
                    font-family:Calibri,Calibri_MSFontService,sans-serif">&nbsp;</span></div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <br>
                </div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  Tomasz</div>
                <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                  font-size:12pt; color:rgb(0,0,0)">
                  <br>
                </div>
                <div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <br>
                  </div>
                  <div id="x_Signature">
                    <div>
                      <div name="x_divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif;
                        font-size:; margin:0">
                        <div style="font-family:Tahoma; font-size:13px">
                          <p class="x_MsoNormal" style="margin-top: 0px;
                            margin-bottom: 0px;margin-top: 0px;
                            margin-bottom: 0px;margin:0cm 0cm 0.0001pt;
                            font-size:11pt;
                            font-family:Calibri,sans-serif;
                            color:rgb(33,33,33); background:white">
                            <span style="" lang="FR-CA">________________________________________________</span></p>
                          <p class="x_MsoNormal" style="margin-top: 0px;
                            margin-bottom: 0px;margin-top: 0px;
                            margin-bottom: 0px;margin:0cm 0cm 12pt
                            17.85pt; font-size:11pt;
                            font-family:Calibri,sans-serif;
                            color:rgb(33,33,33); background:white">
                            <span style="font-size:9pt;
                              font-family:Arial,sans-serif; color:black" lang="FR-CA">Tomasz Neugebauer<span style=""><br>
                              </span><span style="background-color:rgb(255,255,255);
                                display:inline!important">Senior
                                Librarian | Bibliothécaire titulaire
                              </span><span style="margin:0px;
                                background-color:rgb(255,255,255)"><br>
                              </span>Digital Projects &amp; Systems
                              Development Librarian / Bibliothécaire des
                              Projets Numériques &amp; Développement de
                              Systèmes<br>
                              Concordia University / Université
                              Concordia</span></p>
                          <p class="x_MsoNormal" style="margin-top: 0px;
                            margin-bottom: 0px;margin-top: 0px;
                            margin-bottom: 0px;margin:0cm 0cm 12pt
                            17.85pt; font-size:11pt;
                            font-family:Calibri,sans-serif;
                            color:rgb(33,33,33); background:white">
                            <span style="font-size:9pt;
                              font-family:Arial,sans-serif; color:black" lang="FR-CA">Tel. / Tél. 514-848-2424 ext.
                              / poste 7738<br>
                              Email / courriel:&nbsp;</span><a tabindex="0" href="mailto:tomasz.neugebauer@concordia.ca" target="_blank" moz-do-not-send="true"><span style="font-size:9pt;
                                font-family:Arial,sans-serif;
                                color:blue" lang="FR-CA">tomasz.neugebauer@concordia.ca</span></a><span style="font-size:9pt;
                              font-family:Arial,sans-serif; color:black"></span></p>
                          <p class="x_MsoNormal" style="margin-top: 0px;
                            margin-bottom: 0px;margin-top: 0px;
                            margin-bottom: 0px;margin:0cm 0cm 12pt
                            17.85pt; font-size:11pt;
                            font-family:Calibri,sans-serif;
                            color:rgb(33,33,33); background:white">
                            <span style="font-size:9pt;
                              font-family:Arial,sans-serif; color:black" lang="FR-CA">Mailing address / adresse
                              postale:&nbsp;1455 De Maisonneuve Blvd.
                              W.,&nbsp;LB-540-03, Montreal, Quebec H3G 1M8<br>
                              Street address / adresse municipale:
                              1400&nbsp;De Maisonneuve Blvd. W.,&nbsp;LB-540-03,
                              Montreal, Quebec H3G 1M8</span></p>
                          <p class="x_MsoNormal" style="margin-top: 0px;
                            margin-bottom: 0px;margin-top: 0px;
                            margin-bottom: 0px;margin:0cm 0cm 12pt
                            17.85pt; font-size:11pt;
                            font-family:Calibri,sans-serif;
                            color:rgb(33,33,33); background:white">
                            <span class="x_MsoHyperlink" style="color:rgb(5,99,193);
                              text-decoration:underline"><span style="font-size:9pt;
                                font-family:Arial,sans-serif;
                                color:purple" lang="IT">library.concordia.ca</span></span></p>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
                <hr tabindex="-1" style="display:inline-block;
                  width:98%">
                <div id="x_divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> Tomasz Neugebauer
                    <a class="x_moz-txt-link-rfc2396E" href="mailto:Tomasz.Neugebauer@concordia.ca" moz-do-not-send="true">&lt;Tomasz.Neugebauer@concordia.ca&gt;</a><br>
                    <b>Sent:</b> Thursday, January 6, 2022 3:34 PM<br>
                    <b>To:</b> David R Newman <a class="x_moz-txt-link-rfc2396E" href="mailto:drn@ecs.soton.ac.uk" moz-do-not-send="true">
                      &lt;drn@ecs.soton.ac.uk&gt;</a>; <a class="x_moz-txt-link-abbreviated
                      x_moz-txt-link-freetext moz-txt-link-freetext" href="mailto:eprints-tech@ecs.soton.ac.uk" moz-do-not-send="true">
                      eprints-tech@ecs.soton.ac.uk</a> <a class="x_moz-txt-link-rfc2396E" href="mailto:eprints-tech@ecs.soton.ac.uk" moz-do-not-send="true">
                      &lt;eprints-tech@ecs.soton.ac.uk&gt;</a><br>
                    <b>Subject:</b> Re: [EP-tech] mixed-content warnings</font>
                  <div>&nbsp;</div>
                </div>
                <div dir="ltr">
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    Hi David,</div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <br>
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    Thank you for the detailed explanation and all of
                    your work on this.</div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    I did not know if unsetting {host} variable is the
                    recommended way going forward, hence I hesitated,
                    but g<span style="color:rgb(0,0,0);
                      font-family:Calibri,Arial,Helvetica,sans-serif;
                      font-size:12pt">iven that our repository is
                      HTTPS-only with HSTS , running on 3.4.3, unsetting
                      the {host} to undefined seems like the best way
                      forward.&nbsp; I will do that that.&nbsp; As I wrote, I did
                      notice that this solves the issue on the testing
                      server, it's just that I didn't know if that is a
                      setting that is &quot;supported&quot;.&nbsp; These wiki help
                      pages have the {host} set in the examples:</span></div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <span style="color:rgb(0,0,0);
                      font-family:Calibri,Arial,Helvetica,sans-serif;
                      font-size:12pt"><a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.eprints.org%2Fw%2FHow_to_use_EPrints_with_HTTPS&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659499404%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=yJiLVSdxfPhiI%2BL3A24Uy0E2McALxvW%2BJrpQoO5O8ss%3D&amp;reserved=0" originalSrc="https://wiki.eprints.org/w/How_to_use_EPrints_with_HTTPS" shash="EXyRHFvZL3SnnRCIH+JV6S+FbHFXYOT6qY/5dWY39ZRwlD8GHPUod4usipuiTF48XQDGRZ/ayIj/BCr/7q6SSJsLQJKCi/VmA3whmF0UN5/MSP9qeBMsBsyaNyi8V4Mx5a2y/n+Tmoi7foiGVKrBiMEEikaYCZvgUENAKJAfvJg=" originalsrc="https://wiki.eprints.org/w/How_to_use_EPrints_with_HTTPS" shash="WI557qcp/6zFCnI7w0Ixz4wAJLE/U8ubvElwuQsxZwmYCpEuqj83UT9EqFLz5gb78sHG79yolmu15JCk/lui+5yuGXH5NPImutUySklHrRaBo0GEzIzpvk012EC9+IMGsKhJrHgPRt7Dy5ZX8pCdo9hzzaLoD1Xtg4JIRlifI3U=" id="LPNoLPOWALinkPreview_1" moz-do-not-send="true">https://wiki.eprints.org/w/How_to_use_EPrints_with_HTTPS</a><br>
                    </span></div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.eprints.org%2Fw%2FHTTPS-only_and_HSTS&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659499404%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=yNJGVIqO2Q2OelTeLdG1Cdrbl7kU0K8J5OWww9JIStI%3D&amp;reserved=0" originalSrc="https://wiki.eprints.org/w/HTTPS-only_and_HSTS" shash="C7a9MUUVxjKqeXJrjwy2FM+Hv8bhGxcJI1zIK2dTgEbRcqNS6evZ02/yrK/Oj5GVFa54qf2RDEzTWUo4qm0zEMLzo/hVZFRYSp+H35mzWZpzsIyH93MEjY696yrpGzAdOgPc6LuFX2cL1cDU5saIX6XzvY2bYnnL5H1Dza8W6iY=" originalsrc="https://wiki.eprints.org/w/HTTPS-only_and_HSTS" shash="ayWac1NRSxJ5FD3NcJD4k+NAbWUbHsbDSLq1lTMwqqwGXW8AguA1acd7Sij7PX8256POwPAieisOdKB4A0YqzLH68zvlE/ndZuBRmM9bWcXWR++xKHhY5cd1llWWSZNgplX+wS2Z2JA1+N1tEkUcJJPSyINl2jTjvsDaAC/12gs=" id="LPNoLPOWALinkPreview_2" moz-do-not-send="true">https://wiki.eprints.org/w/HTTPS-only_and_HSTS</a><br>
                  </div>
                  <div class="x_x__Entity x_x__EType_OWALinkPreview
                    x_x__EId_OWALinkPreview_2 x_x__EReadonly_1">
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    and I was also unaware of this page:</div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.eprints.org%2Fw%2FSimplified_HTTPS_Configuration&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659509356%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=aMVNG4PAc9zG8cfVASjgNkhWbRfrm6LhZEhcfy3hd2s%3D&amp;reserved=0" originalSrc="https://wiki.eprints.org/w/Simplified_HTTPS_Configuration" shash="dcWEkHENBQLKkDLQ2Y0oX+seg99qTK4sMUo6H0Gs9zx5XDJe+k9mDfFk99jOvq8GJ/TR3KQeyvAAiyhnjkzZZedJpMgIT188dV6N9EOzqtluAN/ChCkGT4RzmGfPPWWa/0Q8NbryPGMnUYSedUNkhc9swCNp2WWHRqXeQfeSNeA=" originalsrc="https://wiki.eprints.org/w/Simplified_HTTPS_Configuration" shash="MdWLZXcnqpfX8fRTUNCmJaocp1G8mnc+chYSjpUGTYny9+t4GwfAXVkAcvwEVHw0uuH75X23l+/9ZQqQceYbGyYQy/7v02/RudbM+1vBjlbIlEqmYSBFEVay3AaIm+XdAcx1P/1a9bqMR2Ao5kWHMuDVyGZTqRGBZWkHicdXi5c=" id="LPNoLPOWALinkPreview" moz-do-not-send="true">https://wiki.eprints.org/w/Simplified_HTTPS_Configuration</a><br>
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    Let's add a link to the &quot;Simplified HTTPS
                    Configuration&quot; page from some of these others?<br>
                    <br>
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    I did track down the same line that you referenced (<span style="font-size:14px; color:rgb(0,0,0)">perl_lib/EPrints/URL.pm)
                      while troubleshooting, so it is reassuring that I
                      was on the right track:
                    </span><span style="color:rgb(0,0,0);
                      font-size:14px">if ( EPrints::Utils::is_set(
                      $session-&gt;config( &quot;securehost&quot; ) ) &amp;&amp; (
                      $opts{scheme} eq &quot;https&quot; ||
                      !EPrints::Utils::is_set( $session-&gt;config(
                      &quot;host&quot; ) )&quot;</span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px"><br>
                    </span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px">I will search through our
                      configuration files to make sure that &quot;host&quot;
                      variable isn't used for something without a
                      fallback, but I think that I will not find that.&nbsp;
                      I was more worried about breaking something in the
                      core by unsetting that {host} variable, so your
                      message was very helpful.</span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px"><br>
                    </span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px">Best wishes,</span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px"><br>
                    </span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px">Tomasz</span></div>
                  <div style="color:rgb(0,0,0)"><span style="font-size:14px"><br>
                    </span>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;font-size:14px;
                      background-color:rgb(255,255,255); margin-top:0px;
                      margin-bottom:0px">
                      <br>
                    </p>
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <br>
                  </div>
                  <div class="x_x__Entity x_x__EType_OWALinkPreview
                    x_x__EId_OWALinkPreview x_x__EReadonly_1">
                  </div>
                  <br>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <br>
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <span style="color:rgb(0,0,0);
                      font-family:Calibri,Arial,Helvetica,sans-serif;
                      font-size:12pt"><br>
                    </span></div>
                  <div>
                    <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                      font-size:12pt; color:rgb(0,0,0)">
                      <br>
                    </div>
                    <div id="x_x_Signature">
                      <div>
                        <div name="x_x_divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:; margin:0">
                          <div style="font-family:Tahoma;
                            font-size:13px">
                            <p class="x_x_MsoNormal" style="margin-top:
                              0px; margin-bottom: 0px;margin-top: 0px;
                              margin-bottom: 0px;margin:0cm 0cm
                              0.0001pt; font-size:11pt;
                              font-family:Calibri,sans-serif;
                              color:rgb(33,33,33); background:white">
                              <span style="font-size:8pt;
                                font-family:&quot;Courier New&quot;;
                                color:rgb(166,166,166)" lang="FR-CA">________________________________________________</span></p>
                            <p class="x_x_MsoNormal" style="margin-top:
                              0px; margin-bottom: 0px;margin-top: 0px;
                              margin-bottom: 0px;margin:0cm 0cm 12pt
                              17.85pt; font-size:11pt;
                              font-family:Calibri,sans-serif;
                              color:rgb(33,33,33); background:white">
                              <span style="font-size:9pt;
                                font-family:Arial,sans-serif;
                                color:black" lang="FR-CA">Tomasz
                                Neugebauer<span style=""><br>
                                </span><span style="background-color:rgb(255,255,255);
                                  display:inline!important">Senior
                                  Librarian | Bibliothécaire titulaire
                                </span><span style="margin:0px;
                                  background-color:rgb(255,255,255)"><br>
                                </span>Digital Projects &amp; Systems
                                Development Librarian / Bibliothécaire
                                des Projets Numériques &amp;
                                Développement de Systèmes<br>
                                Concordia University / Université
                                Concordia</span></p>
                            <p class="x_x_MsoNormal" style="margin-top:
                              0px; margin-bottom: 0px;margin-top: 0px;
                              margin-bottom: 0px;margin:0cm 0cm 12pt
                              17.85pt; font-size:11pt;
                              font-family:Calibri,sans-serif;
                              color:rgb(33,33,33); background:white">
                              <span style="font-size:9pt;
                                font-family:Arial,sans-serif;
                                color:black" lang="FR-CA">Tel. / Tél.
                                514-848-2424 ext. / poste 7738<br>
                                Email / courriel:&nbsp;</span><a tabindex="0" href="mailto:tomasz.neugebauer@concordia.ca" target="_blank" moz-do-not-send="true"><span style="font-size:9pt;
                                  font-family:Arial,sans-serif;
                                  color:blue" lang="FR-CA">tomasz.neugebauer@concordia.ca</span></a><span style="font-size:9pt;
                                font-family:Arial,sans-serif;
                                color:black"></span></p>
                            <p class="x_x_MsoNormal" style="margin-top:
                              0px; margin-bottom: 0px;margin-top: 0px;
                              margin-bottom: 0px;margin:0cm 0cm 12pt
                              17.85pt; font-size:11pt;
                              font-family:Calibri,sans-serif;
                              color:rgb(33,33,33); background:white">
                              <span style="font-size:9pt;
                                font-family:Arial,sans-serif;
                                color:black" lang="FR-CA">Mailing
                                address / adresse postale:&nbsp;1455 De
                                Maisonneuve Blvd. W.,&nbsp;LB-540-03,
                                Montreal, Quebec H3G 1M8<br>
                                Street address / adresse municipale:
                                1400&nbsp;De Maisonneuve Blvd. W.,&nbsp;LB-540-03,
                                Montreal, Quebec H3G 1M8</span></p>
                            <p class="x_x_MsoNormal" style="margin-top:
                              0px; margin-bottom: 0px;margin-top: 0px;
                              margin-bottom: 0px;margin:0cm 0cm 12pt
                              17.85pt; font-size:11pt;
                              font-family:Calibri,sans-serif;
                              color:rgb(33,33,33); background:white">
                              <span class="x_x_MsoHyperlink" style="color:rgb(5,99,193);
                                text-decoration:underline"><span style="font-size:9pt;
                                  font-family:Arial,sans-serif;
                                  color:purple" lang="IT">library.concordia.ca</span></span></p>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                  <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                    font-size:12pt; color:rgb(0,0,0)">
                    <br>
                  </div>
                  <hr tabindex="-1" style="display:inline-block;
                    width:98%">
                  <div id="x_x_divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> David R Newman
                      <a class="x_moz-txt-link-rfc2396E" href="mailto:drn@ecs.soton.ac.uk" moz-do-not-send="true">&lt;drn@ecs.soton.ac.uk&gt;</a><br>
                      <b>Sent:</b> Thursday, December 23, 2021 8:00 PM<br>
                      <b>To:</b> <a class="x_moz-txt-link-abbreviated
                        x_moz-txt-link-freetext moz-txt-link-freetext" href="mailto:eprints-tech@ecs.soton.ac.uk" moz-do-not-send="true">
                        eprints-tech@ecs.soton.ac.uk</a> <a class="x_moz-txt-link-rfc2396E" href="mailto:eprints-tech@ecs.soton.ac.uk" moz-do-not-send="true">
                        &lt;eprints-tech@ecs.soton.ac.uk&gt;</a>; Tomasz
                      Neugebauer <a class="x_moz-txt-link-rfc2396E" href="mailto:Tomasz.Neugebauer@concordia.ca" moz-do-not-send="true">
                        &lt;Tomasz.Neugebauer@concordia.ca&gt;</a><br>
                      <b>Subject:</b> Re: [EP-tech] mixed-content
                      warnings</font>
                    <div>&nbsp;</div>
                  </div>
                  <div>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <span style="font-weight:bold; color:rgb(156,0,0)">Attention</span>
                      This email originates from outside the
                      concordia.ca domain. // Ce courriel provient de
                      l'exterieur du domaine de concordia.ca</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <div><br>
                    </div>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      Hi Tomasz,</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      Mixed content warnings is something, I have been
                      trying to improve in recent version of EPrints, so
                      new installs should not suffer these problems.&nbsp;&nbsp;
                      However, upgrades will still be problematic.&nbsp; This
                      is because old templates, citations, workflows and
                      even CSS and Javascript files may have http URLs
                      in them.&nbsp; This means you really need to go through
                      all these files and seek out http URLs.</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      The main problem I have found is the use http_url
                      or http_cgiurl in templates citations and even
                      workflows.&nbsp; These should ideally use rel_path and
                      rel_cgipath instead but as this does not give your
                      the full URL it might be better to use base_url
                      and perl_url instead.&nbsp; However, to make sure that
                      these are https not http, you will need to make
                      sure you have either no or an up to date version
                      of 20_baseurls.pl in your archive's cfg/cfg.d/
                      (assuming you are running 3.4.1+, which it sounds
                      like you are).&nbsp; This is because of a change made
                      for 3.4.1 to ensure that base_url and perl_url get
                      configured as https if $c-&gt;{securehost} is
                      defined.<br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      It is worth grepping across all of your archive's
                      cfg directory for the string &quot;http:&quot; to route out
                      any hardcoded http URLs.</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      One of the things I did in recent versions of
                      EPrints is provide a way of reconfiguring
                      10_core.pl to better/more intuitive enable HTTPS
                      everywhere [1].&nbsp; This ensures all http URL
                      requests are redirected to https without needing
                      to have picked up the HSTS header, which require
                      visiting an https URL at least once (and therefore
                      does not work for stateless bots).&nbsp; If you deploy
                      HTTPS everywhere, as well as running
                      generate_apacheconf and reloading the webserver,
                      you will need to make sure all browse views and
                      abstract pages are regenerated.&nbsp; <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      As you comment in your email below, you are
                      worried about unsetting $c-&gt;{host} as it may
                      break things.&nbsp; I am aware of one issue with this
                      in 3.4.3 core code [2].&nbsp; However, this is a fairly
                      straightforward fix and is only a problem if your
                      have multiple languages enabled for your
                      repository.&nbsp; If you use the Repository Links
                      Bazaar plugin [3], that will also require a
                      similar fix.&nbsp; I think there may be one or two
                      other Bazaar plugins that use $c-&gt;{host} but I
                      cannot remember what they are off the top of my
                      head.<br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                      If you look at perl_lib/EPrints/URL.pm line 129
                      [4] you should see the line:</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      if ( EPrints::Utils::is_set( $session-&gt;config(
                      &quot;securehost&quot; ) ) &amp;&amp; ( $opts{scheme} eq
                      &quot;https&quot; || !EPrints::Utils::is_set(
                      $session-&gt;config( &quot;host&quot; ) )
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      If you have HTTPS everywhere configuration enabled
                      this should ensure HTTPS URLs are always used for
                      things like the thumbnail URLs you describe having
                      a problem with.&nbsp; However, if you are not using
                      HTTPS everywhere configuration you will still get
                      http URLs for thumbnails and similar.&nbsp; I would
                      therefore recommending enabling this and I will
                      see if I can track down the Bazaar plugins that
                      may be affected by $c-&gt;{host} being undefined.</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      The problem with EPrints is it has gone through
                      various iterations of HTTP/HTTPS use:</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      1. No HTTPS <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      2. HTTP for public pages and HTTPS for back-end
                      admin pages.</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      3. HTTPS for all pages</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      This means as the code has evolved over time how
                      to configure the appropriate URLs in various
                      situation has got progressively more complicated,
                      as way of supporting these different approaches
                      for HTTPS have been incorporated into ePrints over
                      the year.&nbsp; I go in to a bit of detail about this
                      in the EPrints 3.4.3 release page [5].&nbsp; I still
                      don't think this is perfect, as there is the
                      potential requirements in Bazaar plugins or
                      bespoke archive code/configuration that require
                      $c-&gt;{host} to be defined.&nbsp; However, after a lot
                      of consideration, the changes I made for 3.4.3
                      tried to make the best compromise between fixing
                      the mixed content warnings, simplifying URLs
                      config variables and their use and not seriously
                      breaking existing repositories when they are
                      upgraded.<br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      Regards</p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      David Newman<br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      [1] <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.eprints.org%2Fw%2FSimplified_HTTPS_Configuration&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659509356%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=aMVNG4PAc9zG8cfVASjgNkhWbRfrm6LhZEhcfy3hd2s%3D&amp;reserved=0" originalSrc="https://wiki.eprints.org/w/Simplified_HTTPS_Configuration" shash="dcWEkHENBQLKkDLQ2Y0oX+seg99qTK4sMUo6H0Gs9zx5XDJe+k9mDfFk99jOvq8GJ/TR3KQeyvAAiyhnjkzZZedJpMgIT188dV6N9EOzqtluAN/ChCkGT4RzmGfPPWWa/0Q8NbryPGMnUYSedUNkhc9swCNp2WWHRqXeQfeSNeA=" originalsrc="https://wiki.eprints.org/w/Simplified_HTTPS_Configuration" shash="teYmYXEL1NMexwu9cy4VkTRBthzmV2o9/m8ybgU03rIN12wfuqTvqhtyHUJlYwOf2WrG0hF7T+T5Q/eQibWTjI51npALekAnGARzt6YQp4RuSIis9BOORHOr7h7T25opetxerGxio0S0tv0PWQkPp+XXad7alHqbtwlG05VA9Ls=" moz-do-not-send="true">
https://wiki.eprints.org/w/Simplified_HTTPS_Configuration</a></p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      [2] <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Feprints3.4%2Fissues%2F118&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659519313%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=WSUEyceZdCgSgj7iTit4yKC5%2B%2BAx4I3%2BNTJSaoYWUUs%3D&amp;reserved=0" originalSrc="https://github.com/eprints/eprints3.4/issues/118" shash="um7x1+RYgN0a9egV9vdFr9Rj3jJayi8bSZWFsEdAx3PI7FM6vCzTzv0zPRx+1icWfHL6+m7BIeNCgN5hp7A6ckgM1v7euoO2DFj39uJphRMp7l4guj9N3Y+Zy9NKnnTarAkSavxAhPq2oq0A7E8ya9MeNHh7v4WrETACdqPBsII=" originalsrc="https://github.com/eprints/eprints3.4/issues/118" shash="MA62by+wM5QX8Xv04xpK+p2tRmnyMZRzj2rwSpRmdaCLwNcwERmOBG69nN1f8b9AAO2cfQeao5T+OT5x0NUfw4X4lVFgbIDUIDLwbDpaS5KqGhszuPYrypvHVdAIlwUAZMztRFFWNPBdkNqUJ6jengAeIKeIt6W5KLdZfzcVa/A=" moz-do-not-send="true">
                        https://github.com/eprints/eprints3.4/issues/118</a></p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      [3] <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fbazaar.eprints.org%2F379%2F&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659519313%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=K3u5rfIFxAlndijTHvTdW%2BNQWTE3lVdLxf8%2Fsoo3IVY%3D&amp;reserved=0" originalSrc="http://bazaar.eprints.org/379/" shash="b+RlTruSX0rcfb1U2J+vHTslC0dildaTelkWjCuX5Y7Bn8PpcTIJPXbDmobpfmXPGBMjVQLfyMk9o/6ZSz01eiopSJauYue+ufuQbR7c1mm3G93VwWLtTp1KgWln1kVzqLNKvlc1o8KXTihJdEmir3VNIZ5sXI42DqFgHk5n0n4=" originalsrc="http://bazaar.eprints.org/379/" shash="rSBdiVGe+gH8ZF5OUUcb8aUpzSpWVarzvP2gG2gR69/0wg1dvU2P/RFujYhoMiCv+cbN2Ixp7Ynnq7bA/XX8rBxVJXJrDURFpoxdbUMD98TtOazEUPpmAxAfDo2jgP1yklUYUCkJLCZ0FM7sn3DAt69hOoLxh9JiAs3aiTUbWZo=" moz-do-not-send="true">
                        http://bazaar.eprints.org/379/</a><br>
                    </p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      [4] <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Feprints%2Feprints3.4%2Fblob%2Fmaster%2Fperl_lib%2FEPrints%2FURL.pm%23L129&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659529269%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=oIvQSqLE81waldy%2BIjUQMd9CU1VeXbzywfaBxsqresI%3D&amp;reserved=0" originalSrc="https://github.com/eprints/eprints3.4/blob/master/perl_lib/EPrints/URL.pm#L129" shash="tgiLUr0BmJHYROwbbApgKKb+gzydX3EyYTtZxCs6ygKuUbVB96SiovgND8sN6Ikj7RshtRAX/FpwOXk5k1g9C9d6REZ9JBSza6DAY6791LmJoa73eBO0y73LIMTCevNwoygfkP/mjy556iykBOOaE/EYGE2jakLv7cHNByCxipU=" originalsrc="https://github.com/eprints/eprints3.4/blob/master/perl_lib/EPrints/URL.pm#L129" shash="dTYui0Pckvqzy767KdWP9HsETjfWDtlcBVPJ8rL6nxiSTnWoQh4QbWM7KeAG5fmVla2G0B8tjzYZ9sVtSCyc0rK3mwLXChl5Sbd2SuqA9n8JKEhx6c5UYHR1CU70EtGQhR+JCawB4FEiPYJ/eSOon5dmITi12JP3ySZUjOOZmlE=" moz-do-not-send="true">
https://github.com/eprints/eprints3.4/blob/master/perl_lib/EPrints/URL.pm#L129</a></p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      [5] <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.eprints.org%2Fw%2FEPrints_3.4.3%23Configuration_URLs_and_Paths&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659529269%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=GKc2R5hU5bcuprKCFnhdpQLBMPBtua%2FkvFS4ezLLFZo%3D&amp;reserved=0" originalSrc="https://wiki.eprints.org/w/EPrints_3.4.3#Configuration_URLs_and_Paths" shash="DCci0ghwQyoM/q92ZscQm0XTtXJyjoAMeN8EJghUb1a1YtE886l8ZLhOsX4ePCMhLthQsrrqP/a2ngL1Cs19iUiATS4vKHRET9uo21uyxe54f5+iweVy1gLWpD6JoQjZFYlzyLmRkG+qswjPUyjn2GnWs/LGkhc2hHurhqovKvQ=" originalsrc="https://wiki.eprints.org/w/EPrints_3.4.3#Configuration_URLs_and_Paths" shash="NyE4oeDHCYHK/ijkEsFxX2yVkbvnyWTRCWica1VAp0GbllOPwDfb057jLVSSRazCSDbz1yYdqSdsCbN9ZT6atpuhQdUZu0udOXJsE+02+gk+A5Hp3M7FSjAui86lFFK/AMQqT3/iatyeOup7q0dr4MZC0UPWQAcB56gC1vHZWI0=" moz-do-not-send="true">
https://wiki.eprints.org/w/EPrints_3.4.3#Configuration_URLs_and_Paths</a></p>
                    <p style="margin-top: 0px; margin-bottom:
                      0px;margin-top: 0px; margin-bottom:
                      0px;margin-top:0px; margin-bottom:0px">
                      <br>
                    </p>
                    <div class="x_x_x_moz-cite-prefix">On 23/12/2021
                      23:12, Tomasz Neugebauer via Eprints-tech wrote:<br>
                    </div>
                    <blockquote type="cite">
                      <div style="padding-bottom:10px; padding-top:5px">
                        <div style="padding:12px; border:1px solid
                          #8D3970; background-color:#F7F9FA;
                          color:#8D3970; font-size:14px;
                          line-height:22px;
                          font-family:Calibri,Arial,Helvetica,sans-serif">
                          <strong>CAUTION:</strong> This e-mail
                          originated outside the University of
                          Southampton.
                        </div>
                      </div>
                      <div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          I thought​ that I resolved all of the &quot;mixed
                          content&quot; warnings on our repository a while
                          back, but after a recent upgrade from 3.3.12
                          to 3.4.3, I noticed that I have some mixed
                          content warnings again, specifically on the
                          thumbnails on the abstract pages.&nbsp; I might
                          have missed some of these warning before,
                          though, so this might not be a new issue after
                          the upgrade.&nbsp;&nbsp;</div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          <br>
                        </div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          Because I have HSTS headers, the browser
                          redirects those those requests to HTTPS, but I
                          would like to fix it.&nbsp; Both the SRC and the
                          HREF of the thumbnails for PDFs are referenced
                          as HTTP instead of HTTPS.&nbsp; The only thing that
                          fixed it during my testing was if I was to
                          remove (comment out) &quot; the&nbsp;<span style="background-color:rgb(255,255,255);
                            display:inline!important">$c-&gt;{host}<span>&nbsp;</span></span>
                          line/ariable in 10_core.pl</div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          That resolves the issue, but I'm worried to
                          apply this change because I don't know if
                          something else might rely on that variable.</div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          <br>
                        </div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          I spent a good part of a day trying to follow
                          the code, and I know that the {scheme}
                          variable in URL.pm doesn't get properly set to
                          https in the case of the thumbnails, but the
                          code is so confusing when it comes to the
                          thumbnail URLs that I can't figure out why.&nbsp; I
                          do have a suspicion that there is a bug in the
                          core code somewhere, but perhaps it is
                          something in our own configuration.&nbsp;</div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          I know this issue is not new to this list, in
                          fact, I wrote the first drafts of the HSTS
                          page on the Wiki (<a href="https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.eprints.org%2Fw%2FHTTPS-only_and_HSTS&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659539226%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=oHSUI%2Bj0qRnJPyC0fuw2Jv%2FZkUCK0IjugZOCuMBfElk%3D&amp;reserved=0" originalSrc="https://wiki.eprints.org/w/HTTPS-only_and_HSTS" shash="HeAbrrSkUoLMekxcF70qGHdfL8EP2Pt5tuWf8FAmTJY8EU93V2ab9QfKP2HJB0u2BDjBMGT3H5Lo2Gx6kEFdQpFTLL5vpWryOvVnPeqWDqKSiB6gWcIiMaDdgjPboLaNfxPJBcFf0zEtaF4JL7YuKN4OE3sipEFcEG4SRJoQago=" originalsrc="https://wiki.eprints.org/w/HTTPS-only_and_HSTS" shash="o/OWSZ8EeGMbfWgeFZAFhxZxGFRl7H/5KNSRuO3evTVN4OIPrcd03fMZ4UMFp996stoxhUWEcNmdBhGM89JCfUCM3WFjarPBmRJkc8OFQ0R40diR9zQ3bFBzuXWvLNV3HIKVd/LqsxYgUcbTvwNE4t9ZdJTmgy1R3M3I0b0BOyA=" id="LPNoLPOWALinkPreview" moz-do-not-send="true">https://wiki.eprints.org/w/HTTPS-only_and_HSTS</a>),
                          but looking through the updated page there and
                          any recent exchanges that relate to this
                          didn't help me figure it out.&nbsp;&nbsp;</div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          Let me know if you have any ideas?</div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          <br>
                        </div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          Best wishes,
                          <div>Tomasz</div>
                        </div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          <br>
                          <br>
                        </div>
                        <div style="font-family:Calibri,Arial,Helvetica,sans-serif;
                          font-size:12pt; color:rgb(0,0,0)">
                          <br>
                        </div>
                        <div>
                          <div id="x_x_x_Signature">
                            <div>
                              <div name="x_x_x_divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif;
                                font-size:; margin:0">
                              </div>
                            </div>
                          </div>
                        </div>
                      </div>
                      <br>
                      <fieldset class="x_x_x_moz-mime-attachment-header"></fieldset>
                      <pre class="x_x_x_moz-quote-pre">*** Options: <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmailman.ecs.soton.ac.uk%2Fmailman%2Flistinfo%2Feprints-tech&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659539226%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=RsFGah1gADB4hAA5feLo8d0B2Shl1iLfwWqOrUH93o0%3D&amp;reserved=0" originalSrc="http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech" shash="viZm7YLevevo9/OZGDE7gWVhvGzFT8nf5EX5rui5HFvozFOGbAGJbtihLQlxN9UacqmwOrfwU9QxiZVLXCUDpu/NhFVOe4VPuvBWI9AofydE0JwqQw9RHUIfks65a1ULtffAZZBLXJsIAlj0ryfxEYay9Nr4VNZCxEszl7834g8=" originalsrc="http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech" shash="v0i6vbV15FN3mMJfKLng/ZxPRCO92RmDUQZqfGgMLRwW70GIGxjSTnTV+q2VBtbzMxgx0/SJVGJ+0teDKY5bEAUxtj3E0XKToIQTPm6y1L4glz//JIt5HBWxQpqhwSR0iqVojAjbN/vfYla2Mp+GrBMtL1eAlT2qMkDDT94YgPU=" moz-do-not-send="true">http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech</a>
*** Archive: <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.eprints.org%2Ftech.php%2F&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659539226%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=jglKgeJHHa2E9D5JFG16kmNUy06CHVQs1d4DAq%2BsE9Y%3D&amp;reserved=0" originalSrc="http://www.eprints.org/tech.php/" shash="l5qFY6939HpF/zg5wKbYGXJ3aIblTfUdm+Oug1FfWU7KfvZhdIjoE8paTg/3t8XumJi3VglI51QIJprds1qTMYbnDJCHgTRokk2Oka5Bksc43EnoX2PHvydehwNc5vwINGZAF5GMIvLRb79rn8X38oV2qPlFGGqkiCW2q2S5hOk=" originalsrc="http://www.eprints.org/tech.php/" shash="eQXg/BIQn0BnLJB1w53W6/JK1h1REXb+APklxSnUvp+8YCt8TNijlTmi9ZHX7R8mcaV0MuKJDWMWFsI508MVOBPz+x8HdWCfncNi9XVGlr1zgas9Pth8vNZhwNXM4ljZ9SCwSGmCVOTkNzcqUU2Lbr+323Nw9f6/bNrxIF8tvEU=" moz-do-not-send="true">http://www.eprints.org/tech.php/</a>
*** EPrints community wiki: <a class="x_x_x_moz-txt-link-freetext" href="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwiki.eprints.org%2F&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659549180%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=O9%2ByjuTiSog8JWNvpxW1rHhTmWp2bmnrH6wtTLQoRG4%3D&amp;reserved=0" originalSrc="http://wiki.eprints.org/" shash="utGBN5RCy+KGiBrJheZ9KQY8LJQ4KOmeMOcAJtrEPTg+NIarsTVQlQhrz4JimoLb3CledOLDcdTwvrc8jn7ApnpmpyllriPQum9P3TGFj4JOfBZQfeydGVSG5mdhgbk4oNS1xIGzdNjh6PNJJgIPxUrDzSCv1G59fooAZY/S+jI=" originalsrc="http://wiki.eprints.org/" shash="lqiPTKsXamExYlkOjgRQ/OkMJh/T/mw9LH2uG6Um+EU7NLz6YeHaT4M6SOp4LGgB7BwwPZ2YnMXb5Ie5AVLsxhtUgAf+8dOxcP+v+ULVKpUKz3TOw5Awayvwe2FD6G41X6Y7ET4v91TBKy2iB7SCPxbd38rYEJiYGUJI5aVVhgw=" moz-do-not-send="true">http://wiki.eprints.org/</a></pre>
                    </blockquote>
                    <div id="x_x_x_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br>
                      <table style="border-top:1px solid #D3D4DE">
                        <tbody>
                          <tr>
                            <td style="width:55px; padding-top:13px"><a href="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.avg.com%2Femail-signature%3Futm_medium%3Demail%26utm_source%3Dlink%26utm_campaign%3Dsig-email%26utm_content%3Demailclient&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659549180%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=l%2BM%2Fhjkz7vTvL%2FLjjmYzeKvFh5pxxO6OVoD88Rfz0nE%3D&amp;reserved=0" originalSrc="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" shash="DDEbgnkveXhk9eIMgT5135LRLMs+Ey0XJ9ezYj0wl1pqDA+BrHV1LFATOH7WToMrPMJ69vPqTWfKYJd3wnJCTrXSk/ix5iEE6/uJhZbDH5xfZgZx8rcGjHmsfaSJGmdHmO0X4Wj9vKbGBacweysgwIp1Iks2+2i5wMMCeLqjcDw=" originalsrc="http://www.avg.com/email-signature?utm_medium=email&amp;utm_source=link&amp;utm_campaign=sig-email&amp;utm_content=emailclient" shash="fVTq5XTZeJnauSnaCDOH2nZA6zkSryLd/Av/ehDBqzGwMoZXXJTltrVGnX7c9smT9cCrTgIUtjCWI4vAeV4HUKZ/Y/AejsEl387J0wOZ0MdPfR9juhBpLaP2cjD3l6ryRu0kZgO3jtqxwKkZP4LKnLhKccY+g6vpJEhtpJJnhoE=" target="_blank" moz-do-not-send="true"><img alt="" style="width:46px; height:29px" src="data:text/html;base64,PCFET0NUWVBFIGh0bWw+CjxodG1sIGRpcj0ibHRyIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CiAgICA8aGVhZD4KICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiIC8+CiAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0icHJhZ21hIiBjb250ZW50PSJuby1jYWNoZSIgLz4KICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgdXNlci1zY2FsYWJsZT0wIiAvPgogICAgICAgIDxtZXRhIG5hbWU9Imdvb2dsZSIgdmFsdWU9Im5vdHJhbnNsYXRlIiAvPgogICAgICAgIDxtZXRhIG5hbWU9ImZvcm1hdC1kZXRlY3Rpb24iIGNvbnRlbnQ9InRlbGVwaG9uZT1ubyIgLz4KICAgICAgICA8bWV0YSBuYW1lPSJzY3JpcHRWZXIiIGNvbnRlbnQ9IjIwMjExMjA2MDIxLjEwIiAvPgogICAgICAgIDxtZXRhIG5hbWU9InBoeXNpY2FsUmluZyIgY29udGVudD0iV1ciIC8+CiAgICAgICAgPG1ldGEgbmFtZT0iZW52aXJvbm1lbnQiIGNvbnRlbnQ9IlByb2QiIC8+CiAgICAgICAgPG1ldGEgbmFtZT0iYm9vdEZsaWdodHMiIGNvbnRlbnQ9InNvdXJjZWxpc3RhcGksZ3FsZm9sZGVycyxub3ZhYXBwYmFyIiAvPgogICAgICAgIDxtZXRhIG5hbWU9ImNkblVybCIgY29udGVudD0iLy9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvIiAvPgogICAgICAgIDxtZXRhIG5hbWU9ImJhY2t1cENkblVybCIgY29udGVudD0iLy9vdXRsb29rLTIuY2RuLm9mZmljZS5uZXQvIiAvPgogICAgICAgIDxtZXRhIG5hbWU9ImNkbkNvbnRhaW5lciIgY29udGVudD0ib3dhbWFpbC8iIC8+CiAgICAgICAgPG1ldGEgbmFtZT0iZGV2Q2RuVXJsIiBjb250ZW50PSIiIC8+CiAgICAgICAgPG1ldGEgbmFtZT0iYXJpYVVybCIgY29udGVudD0iIiAvPgogICAgICAgIDxtZXRhIG5hbWU9ImNvbXBhY3RBcmlhVXJsIiBjb250ZW50PSIiIC8+CiAgICAgICAgPG1ldGEgbmFtZT0id2Nzc0ZyYW1lVXJsIiBjb250ZW50PSJodHRwczovL3dlYnNoZWxsLnN1aXRlLm9mZmljZS5jb20iIC8+CiAgICAgICAgPG1ldGEgbmFtZT0ic2NyaXB0UGF0aCIgY29udGVudD0ic2NyaXB0cy8iIC8+CiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIvbWFpbC9mYXZpY29uLmljbyIgdHlwZT0iaW1hZ2UveC1pY29uIiAvPgogICAgICAgIDxsaW5rCiAgICAgICAgICAgIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIKICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvYXNzZXRzL21haWwvcHdhL3YxL3BuZ3MvYXBwbGUtdG91Y2gtaWNvbi5wbmciCiAgICAgICAgLz4KICAgICAgICA8bm9zY3JpcHQ+SmF2YVNjcmlwdCBtdXN0IGJlIGVuYWJsZWQuPC9ub3NjcmlwdD4KICAgICAgICA8dGl0bGU+T3V0bG9vazwvdGl0bGU+CiAgICAgICAgPHN0eWxlPgogICAgICAgICAgICBAZm9udC1mYWNlIHsKICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnU2Vnb2UgVUkgV2VzdEV1cm9wZWFuJzsKICAgICAgICAgICAgICAgIHNyYzogbG9jYWwoJ1NlZ29lIFVJIExpZ2h0JyksIGxvY2FsKCdTZWdvZSBXUCBMaWdodCcpLAogICAgICAgICAgICAgICAgICAgIHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvYXNzZXRzL21haWwvZm9udHMvdjEvZm9udHMvc2Vnb2V1aS1saWdodC5lb3Q/I2llZml4JykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLAogICAgICAgICAgICAgICAgICAgIHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvYXNzZXRzL21haWwvZm9udHMvdjEvZm9udHMvc2Vnb2V1aS1saWdodC53b2ZmJykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCd3b2ZmJyksCiAgICAgICAgICAgICAgICAgICAgdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9hc3NldHMvbWFpbC9mb250cy92MS9mb250cy9zZWdvZXVpLWxpZ2h0LnR0ZicpCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdCgndHJ1ZXR5cGUnKTsKICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7CiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQGZvbnQtZmFjZSB7CiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1NlZ29lIFVJIFdlc3RFdXJvcGVhbic7CiAgICAgICAgICAgICAgICBzcmM6IGxvY2FsKCdTZWdvZSBVSScpLCBsb2NhbCgnU2Vnb2UgV1AnKSwKICAgICAgICAgICAgICAgICAgICB1cmwoJ2h0dHBzOi8vb3V0bG9vay0xLmNkbi5vZmZpY2UubmV0L2Fzc2V0cy9tYWlsL2ZvbnRzL3YxL2ZvbnRzL3NlZ29ldWktcmVndWxhci5lb3Q/I2llZml4JykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLAogICAgICAgICAgICAgICAgICAgIHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvYXNzZXRzL21haWwvZm9udHMvdjEvZm9udHMvc2Vnb2V1aS1yZWd1bGFyLndvZmYnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ3dvZmYnKSwKICAgICAgICAgICAgICAgICAgICB1cmwoJ2h0dHBzOi8vb3V0bG9vay0xLmNkbi5vZmZpY2UubmV0L2Fzc2V0cy9tYWlsL2ZvbnRzL3YxL2ZvbnRzL3NlZ29ldWktcmVndWxhci50dGYnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ3RydWV0eXBlJyk7CiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwOwogICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIEBmb250LWZhY2UgewogICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdTZWdvZSBVSSBXZXN0RXVyb3BlYW4nOwogICAgICAgICAgICAgICAgc3JjOiBsb2NhbCgnU2Vnb2UgVUkgU2VtaWJvbGQnKSwgbG9jYWwoJ1NlZ29lIFdQIFNlbWlib2xkJyksCiAgICAgICAgICAgICAgICAgICAgdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9hc3NldHMvbWFpbC9mb250cy92MS9mb250cy9zZWdvZXVpLXNlbWlib2xkLmVvdD8jaWVmaXgnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksCiAgICAgICAgICAgICAgICAgICAgdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9hc3NldHMvbWFpbC9mb250cy92MS9mb250cy9zZWdvZXVpLXNlbWlib2xkLndvZmYnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ3dvZmYnKSwKICAgICAgICAgICAgICAgICAgICB1cmwoJ2h0dHBzOi8vb3V0bG9vay0xLmNkbi5vZmZpY2UubmV0L2Fzc2V0cy9tYWlsL2ZvbnRzL3YxL2ZvbnRzL3NlZ29ldWktc2VtaWJvbGQudHRmJykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCd0cnVldHlwZScpOwogICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgICAgICAgICAgfQogICAgICAgICAgICBAZm9udC1mYWNlIHsKICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnU2Vnb2UgVUkgV2VzdEV1cm9wZWFuJzsKICAgICAgICAgICAgICAgIHNyYzogbG9jYWwoJ1NlZ29lIFVJIFNlbWlsaWdodCcpLCBsb2NhbCgnU2Vnb2UgV1AgU2VtaWxpZ2h0JyksCiAgICAgICAgICAgICAgICAgICAgdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9hc3NldHMvbWFpbC9mb250cy92MS9mb250cy9zZWdvZXVpLXNlbWlsaWdodC5lb3Q/I2llZml4JykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLAogICAgICAgICAgICAgICAgICAgIHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvYXNzZXRzL21haWwvZm9udHMvdjEvZm9udHMvc2Vnb2V1aS1zZW1pbGlnaHQud29mZicpCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdCgnd29mZicpLAogICAgICAgICAgICAgICAgICAgIHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvYXNzZXRzL21haWwvZm9udHMvdjEvZm9udHMvc2Vnb2V1aS1zZW1pbGlnaHQudHRmJykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCd0cnVldHlwZScpOwogICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDsKICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgICAgICAgICAgfQogICAgICAgICAgICBAZm9udC1mYWNlIHsKICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRmFicmljTURMMkljb25zJzsKICAgICAgICAgICAgICAgIHNyYzogdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9vd2FtYWlsLzIwMjExMjA2MDIxLjEwL3Jlc291cmNlcy9mb250cy9vMzY1aWNvbnMtbWRsMi53b2ZmJykKICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KCd3b2ZmJyksCiAgICAgICAgICAgICAgICAgICAgdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9vd2FtYWlsLzIwMjExMjA2MDIxLjEwL3Jlc291cmNlcy9mb250cy9vMzY1aWNvbnMtbWRsMi50dGYnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ3RydWV0eXBlJyk7CiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOwogICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIEBmb250LWZhY2UgewogICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdvZmZpY2UzNjVpY29ucyc7CiAgICAgICAgICAgICAgICBzcmM6IHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvb3dhbWFpbC8yMDIxMTIwNjAyMS4xMC9yZXNvdXJjZXMvZm9udHMvb2ZmaWNlMzY1aWNvbnMuZW90PycpOwogICAgICAgICAgICAgICAgc3JjOiB1cmwoJ2h0dHBzOi8vb3V0bG9vay0xLmNkbi5vZmZpY2UubmV0L293YW1haWwvMjAyMTEyMDYwMjEuMTAvcmVzb3VyY2VzL2ZvbnRzL29mZmljZTM2NWljb25zLmVvdD8jaWVmaXgnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksCiAgICAgICAgICAgICAgICAgICAgdXJsKCdodHRwczovL291dGxvb2stMS5jZG4ub2ZmaWNlLm5ldC9vd2FtYWlsLzIwMjExMjA2MDIxLjEwL3Jlc291cmNlcy9mb250cy9vZmZpY2UzNjVpY29ucy53b2ZmPycpCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdCgnd29mZicpLAogICAgICAgICAgICAgICAgICAgIHVybCgnaHR0cHM6Ly9vdXRsb29rLTEuY2RuLm9mZmljZS5uZXQvb3dhbWFpbC8yMDIxMTIwNjAyMS4xMC9yZXNvdXJjZXMvZm9udHMvb2ZmaWNlMzY1aWNvbnMudHRmPycpCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdCgndHJ1ZXR5cGUnKSwKICAgICAgICAgICAgICAgICAgICB1cmwoJ2h0dHBzOi8vb3V0bG9vay0xLmNkbi5vZmZpY2UubmV0L293YW1haWwvMjAyMTEyMDYwMjEuMTAvcmVzb3VyY2VzL2ZvbnRzL29mZmljZTM2NWljb25zLnN2Zz8jb2ZmaWNlMzY1aWNvbnMnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ3N2ZycpOwogICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsKICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgICAgICAgICAgfQogICAgICAgICAgICAjcHJlbG9hZERpdiB7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7CiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nU2NyZWVuIHsKICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgICAgIHRvcDogMDsKICAgICAgICAgICAgICAgIGJvdHRvbTogMDsKICAgICAgICAgICAgICAgIGxlZnQ6IDA7CiAgICAgICAgICAgICAgICByaWdodDogMDsKICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgI2xvYWRpbmdMb2dvIHsKICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgICAgIHRvcDogY2FsYyg1MHZoIC0gOTBweCk7CiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwdncgLSA5MHB4KTsKICAgICAgICAgICAgICAgIHdpZHRoOiAxODBweDsKICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgI01TTG9nbyB7CiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgICAgICAgICBib3R0b206IDM2cHg7CiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwdncgLSA0NXB4KTsKICAgICAgICAgICAgfQogICAgICAgICAgICAuZGFyayAjbG9hZGluZ1NjcmVlbiB7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzJfdHMgewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nTG9nbzJfdHNfX3RzIDMwMDBtcyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7CiAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzIgewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nTG9nbzJfY19vIDMwMDBtcyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7CiAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzNfdG8gewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nTG9nbzNfdG9fX3RvIDMwMDBtcyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7CiAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzZfdHMgewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nTG9nbzZfdHNfX3RzIDMwMDBtcyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7CiAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzhfdHMgewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nTG9nbzhfdHNfX3RzIDMwMDBtcyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7CiAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzlfdG8gewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nTG9nbzlfdG9fX3RvIDMwMDBtcyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7CiAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNsb2FkaW5nTG9nbzI5X3RzIHsKICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbG9hZGluZ0xvZ28yOV90c19fdHMgMzAwMG1zIGxpbmVhciAxIG5vcm1hbCBmb3J3YXJkczsKICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEwMDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQGtleWZyYW1lcyBsb2FkaW5nTG9nbzJfdHNfX3RzIHsKICAgICAgICAgICAgICAgIDAlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDguODk0NDNweCwgMTU1LjcxNTEyN3B4KSBzY2FsZSgwLjY2ODk2MywgMC42Njg5NjMpOwogICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQyLCAwLCAwLjU4LCAxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDI2LjY2NjY2NyUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwOC44OTQ0M3B4LCAxNTUuNzE1MTI3cHgpIHNjYWxlKDEsIDEpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgMTAwJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTA4Ljg5NDQzcHgsIDE1NS43MTUxMjdweCkgc2NhbGUoMSwgMSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQGtleWZyYW1lcyBsb2FkaW5nTG9nbzJfY19vIHsKICAgICAgICAgICAgICAgIDAlIHsKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgMTguMzMzMzMzJSB7CiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDEwMCUgewogICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQGtleWZyYW1lcyBsb2FkaW5nTG9nbzNfdG9fX3RvIHsKICAgICAgICAgICAgICAgIDAlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDEuMDAwMTU1cHgsIDE5NS45NzA3MDNweCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAxMy4zMzMzMzMlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDEuMDAwMTU1cHgsIDE5NS45NzA3MDNweCk7CiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDEsIDAuMDI1KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDMxJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDE1NXB4LCAyMDZweCk7CiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTM1LCAwLjcxLCAwLjAzLCAwLjk4NSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICA1MCUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDAxNTVweCwgMTk1Ljk3MDcwM3B4KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDEwMCUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDAxNTVweCwgMTk1Ljk3MDcwM3B4KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBAa2V5ZnJhbWVzIGxvYWRpbmdMb2dvNl90c19fdHMgewogICAgICAgICAgICAgICAgMCUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDA3MDhweCwgOTcuNDk5NTg4cHgpIHNjYWxlKDEsIC0wLjAwMTcyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDIzLjMzMzMzMyUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDA3MDhweCwgOTcuNDk5NTg4cHgpIHNjYWxlKDEsIC0wLjAwMTcyKTsKICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xMzUsIDAuNzEsIDAuMDMsIDAuOTg1KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDQwJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDcwOHB4LCA5Ny40OTk1ODhweCkgc2NhbGUoMSwgMSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAxMDAlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDEuMDAwNzA4cHgsIDk3LjQ5OTU4OHB4KSBzY2FsZSgxLCAxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBAa2V5ZnJhbWVzIGxvYWRpbmdMb2dvOF90c19fdHMgewogICAgICAgICAgICAgICAgMCUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDA2OTlweCwgMTU5LjkxNDcyM3B4KSBzY2FsZSgxLCAxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDM5LjY2NjY2NyUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDA2OTlweCwgMTU5LjkxNDcyM3B4KSBzY2FsZSgxLCAxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDUwJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDY5OXB4LCAxNTkuOTE0NzIzcHgpIHNjYWxlKDEsIDEuMDUwMzYpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgNTIuMzMzMzMzJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDY5OXB4LCAxNTkuOTE0NzIzcHgpIHNjYWxlKDEsIDAuOTU5MjMzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDU3LjY2NjY2NyUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDA2OTlweCwgMTU5LjkxNDcyM3B4KSBzY2FsZSgxLCAxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDEwMCUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMS4wMDA2OTlweCwgMTU5LjkxNDcyM3B4KSBzY2FsZSgxLCAxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBAa2V5ZnJhbWVzIGxvYWRpbmdMb2dvOV90b19fdG8gewogICAgICAgICAgICAgICAgMCUgewogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMXB4LCAyMDUuNzUzNzY1cHgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgMjYuNjY2NjY3JSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxcHgsIDIwNS43NTM3NjVweCk7CiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgNTAlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDFweCwgODFweCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAxMDAlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDFweCwgODFweCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQGtleWZyYW1lcyBsb2FkaW5nTG9nbzI5X3RzX190cyB7CiAgICAgICAgICAgICAgICAwJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDY5OXB4LCA5Ny40OTk1NzNweCkgc2NhbGUoMSwgMSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAxMy4zMzMzMzMlIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDEuMDAwNjk5cHgsIDk3LjQ5OTU3M3B4KSBzY2FsZSgxLCAxKTsKICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMSwgMC4wMjUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgMjMuMzMzMzMzJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDY5OXB4LCA5Ny40OTk1NzNweCkgc2NhbGUoMSwgMC4wMDE3MjMpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgMTAwJSB7CiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxLjAwMDY5OXB4LCA5Ny40OTk1NzNweCkgc2NhbGUoMSwgMC4wMDE3MjMpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgPC9zdHlsZT4KICAgICAgICA8c2NyaXB0IG5vbmNlPSJmMkY1K0k2WXVkYWFqZDU4YUdyMkJ3PT0iPgogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKCdsb2NhbFN0b3JhZ2UnIGluIHdpbmRvdykgewogICAgICAgICAgICAgICAgICAgIHZhciB1c2VyTm9ybWFsaXplZFRoZW1lID0gd2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKCdVc2Vyc05vcm1hbGl6ZWRUaGVtZScpOwogICAgICAgICAgICAgICAgICAgIGlmICh1c2VyTm9ybWFsaXplZFRoZW1lICYmIC9cLmRhcmskLy50ZXN0KHVzZXJOb3JtYWxpemVkVGhlbWUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkYXJrJyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHZhciBwd2FiYXJjb2xvciA9IHdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnUHdhVGhlbWUnKTsKICAgICAgICAgICAgICAgICAgICBpZiAocHdhYmFyY29sb3IpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHRoZW1ldGFnID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoJ3RoZW1lLWNvbG9yJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGVtZXRhZyAmJiB0aGVtZXRhZy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1ldGFnWzBdLnNldEF0dHJpYnV0ZSgnY29udGVudCcsIHB3YWJhcmNvbG9yKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICA8L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IG5vbmNlPSJmMkY1K0k2WXVkYWFqZDU4YUdyMkJ3PT0iPgogICAgICAgICAgICB3aW5kb3cuRmFicmljQ29uZmlnID0gewogICAgICAgICAgICAgICAgZm9udEJhc2VVcmw6IG51bGwsCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHdpbmRvdy5vd2FCYWNrZmlsbGVkRXJyb3JzID0gW107CiAgICAgICAgICAgIGZ1bmN0aW9uIGxvZ0Vycm9yKG0sIGYsIGwsIGMsIGUpIHsKICAgICAgICAgICAgICAgIGlmICh3aW5kb3cub3dhRXJyb3JIYW5kbGVyKSB7CiAgICAgICAgICAgICAgICAgICAgd2luZG93Lm93YUVycm9ySGFuZGxlcihtLCBmLCBsLCBjLCBlKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgd2luZG93Lm93YUJhY2tmaWxsZWRFcnJvcnMucHVzaChhcmd1bWVudHMpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHdpbmRvdy5vbmVycm9yID0gbG9nRXJyb3I7CiAgICAgICAgICAgIGlmICgnb251bmhhbmRsZWRyZWplY3Rpb24nIGluIHdpbmRvdykgewogICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3VuaGFuZGxlZHJlamVjdGlvbicsIGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHIgPSAoZSAmJiBlLnJlYXNvbikgfHwgJ1tubyByZWFzb24gZ2l2ZW5dJzsKICAgICAgICAgICAgICAgICAgICBpZiAociBpbnN0YW5jZW9mIEVycm9yKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxvZ0Vycm9yKCdVbmhhbmRsZWQgUmVqZWN0aW9uOiAnICsgciwgJycsIDAsIDAsIHIpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxvZ0Vycm9yKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1VuaGFuZGxlZCBSZWplY3Rpb246ICcgKwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0eXBlb2YgciA9PT0gJ3N0cmluZycgPyByIDogSlNPTi5zdHJpbmdpZnkocikpCiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICAgICAhc2VsZi5Pd2EgJiYKICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb2NhdGlvbiAmJgogICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvY2F0aW9uLnNlYXJjaCAmJgogICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCdndWxwJykgPT0gLTEKICAgICAgICAgICAgICAgICAgICApIHsKICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmFzc2lnbigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvb3dhL2F1dGgvZnJvd255LmFzcHg/YnJldD1mYWlsJmVzcmM9SW5kZXhQYWdlSW5jb21wbGV0ZSZhcHA9TWFpbCcKICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgICAgICB9OwogICAgICAgIDwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgbm9uY2U9ImYyRjUrSTZZdWRhYWpkNThhR3IyQnc9PSI+CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAhKGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoJ1BlcmZvcm1hbmNlTG9uZ1Rhc2tUaW1pbmcnIGluIHdpbmRvdykgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZyA9ICh3aW5kb3cuX190dGkgPSB7IGU6IFtdIH0pOwogICAgICAgICAgICAgICAgICAgICAgICBnLm8gPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAobCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZy5lID0gZy5lLmNvbmNhdChsLmdldEVudHJpZXMoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICBnLm8ub2JzZXJ2ZSh7IGVudHJ5VHlwZXM6IFsnbG9uZ3Rhc2snXSB9KTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSgpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgIDwvc2NyaXB0PgogICAgPC9oZWFkPgogICAgPGJvZHkgY2xhc3M9Im1zLWZvbnQtcyBkaXNhYmxlVGV4dFNlbGVjdGlvbiBtcy1GYWJyaWMtLWlzRm9jdXNIaWRkZW4iPgogICAgICAgIDxkaXYgaWQ9InByZWxvYWREaXYiPgogICAgICAgICAgICA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTZWdvZSBVSSBXZXN0RXVyb3BlYW47Zm9udC13ZWlnaHQ6MTAwOyciPnQ8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogJ1NlZ29lIFVJIFdlc3RFdXJvcGVhbjtmb250LXdlaWdodDoyMDA7JyI+dDwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiAnU2Vnb2UgVUkgV2VzdEV1cm9wZWFuO2ZvbnQtd2VpZ2h0OjQwMDsnIj50PC9zcGFuPgogICAgICAgICAgICA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTZWdvZSBVSSBXZXN0RXVyb3BlYW47Zm9udC13ZWlnaHQ6NjAwOyciPnQ8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBpZD0iYXBwIj48L2Rpdj4KICAgICAgICA8ZGl2IGlkPSJsb2FkaW5nU2NyZWVuIj4KICAgICAgICAgICAgPHN2ZwogICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvIgogICAgICAgICAgICAgICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICAgICAgICAgICAgICAgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiCiAgICAgICAgICAgICAgICB2aWV3Qm94PSIwIDAgMjIwIDIyMCIKICAgICAgICAgICAgICAgIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgogICAgICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiIKICAgICAgICAgICAgICAgIHdpZHRoPSIyMjAiCiAgICAgICAgICAgICAgICBoZWlnaHQ9IjIyMCIKICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGcKICAgICAgICAgICAgICAgICAgICBpZD0ibG9hZGluZ0xvZ28yX3RzIgogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwOC44OTQ0MzAsMTU1LjcxNTEyNykgc2NhbGUoMC42Njg5NjMsMC42Njg5NjMpIgogICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgIDxnIGlkPSJsb2FkaW5nTG9nbzIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDAuOTk4NzQ5LC0xNDEpIiBvcGFjaXR5PSIwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9ImxvYWRpbmdMb2dvM190byIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAxLjAwMDE1NSwxOTUuOTcwNzAzKSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9ImZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDRweCAwcHggcmdiYSgwLCAwLCAwLCAwKSkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwMS4wMDAxNTUsLTE5NS45NzA3MDMpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJsb2FkaW5nTG9nbzQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvNSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9Ik0yMC45MzM3ODQsOTcuMjEwNjAwQzIwLjkzMzc4NCw5Ny4yMTA2MDAsMjAuMTc4MjcxLDkyLjk0MDA1MywyMC4wMjQwMDMsOTNMMTgyLjAxOTI1NSw5M0MxODIuMDE5MjU1LDkzLDE4Mi4wMTQwMDAsOTUuNTMxOTAwLDE4MS45OTkwMDAsOTcuMjEwNjAwQzE4Mi4wMjMwMDAsOTguOTA2NjAwLDE4MS4xNzcwMDAsMTAwLjQ5NjAwMCwxNzkuNzU5MDAwLDEwMS40MjEwMDBMMTA2LjY4NDAwMCwxNDUuOTk4MDAwTDEwNS43MzIwMDAsMTQ2LjU1OTAwMEMxMDQuMzM3MDAwLDE0Ny4zMDYwMDAsMTAyLjc3ODAwMCwxNDcuNjkxMDAwLDEwMS4xOTcwMDAsMTQ3LjY4MjAwMEM5OS42MzMzMDAsMTQ3LjY4OTAwMCw5OC4wOTMxMDAsMTQ3LjMwMzAwMCw5Ni43MTY5MDAsMTQ2LjU1OTAwMEw5NS43MDkwMDAsMTQ1Ljk5ODAwMEwyMi40MTAxMDAsMTAxLjQyMTAwMEMyMC45MDIxMDAsMTAwLjUzNTAwMCwyMi4zODE1ODUsOTguOTE2OTM3LDIwLjkzMzc4NCw5Ny4yMTA2MDBaIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMSAtMC4wMjE4MDI5NzYzMTMzNCAzLjk5OTk5OTk5NjU5NjUzKSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYigxOCw1OSwxMDkpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPSJub25lIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvNl90cyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwMS4wMDA3MDgsOTcuNDk5NTg4KSBzY2FsZSgxLC0wLjAwMTcyMCkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvNiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPSJNMTc5Ljc1OTAwMCw5My4zNzMyMDBMMTA2LjU3MjAwMCw0OC43NDA0MDBMMTA1LjYyMDAwMCw0OC4xMjI4MDBDMTA0LjIxNTAwMCw0Ny40MDM0MDAsMTAyLjY2MzAwMCw0Ny4wMTkxMDAsMTAxLjA4NTAwMCw0N0M5OS41MjQ2MDAsNDcuMDE5NjAwLDk3Ljk5MDcwMCw0Ny40MDQxMDAsOTYuNjA0OTAwLDQ4LjEyMjgwMEw5NS41OTcwMDAsNDguNzQwNDAwTDIyLjI5ODEwMCw5My4zMTcwMDBDMjAuODc1NTAwLDk0LjIxODEwMCwyMC4wMDk5MDAsOTUuODA0OTE3LDIwLjAwMjIwMCw5Ny40OTE5MTdDMTkuOTgzMzAwLDk5LjI0NDMxNywyMC45MDIxMDAsMTAwLjg1MjAwMCwyMi40MTAxMDAsMTAxLjczODAwMEw5NS43MDkwMDAsMTQ2LjMxNTAwMEw5Ni43MTY5MDAsMTQ2Ljg3NjAwMEM5OC4wOTMxMDAsMTQ3LjYyMDAwMCw5OS42MzMzMDAsMTQ4LjAwNjAwMCwxMDEuMTk3MDAwLDE0Ny45OTkwMDBDMTAyLjc3ODAwMCwxNDguMDA5MDAwLDEwNC4zMzcwMDAsMTQ3LjYyMzAwMCwxMDUuNzMyMDAwLDE0Ni44NzYwMDBMMTA2LjY4NDAwMCwxNDYuMzE1MDAwTDE3OS43NTkwMDAsMTAxLjczODAwMEMxODEuMTc3MDAwLDEwMC44MTMwMDAsMTgyLjAyMzAwMCw5OS4yMjM3MDAsMTgxLjk5OTAwMCw5Ny41Mjc3MDBDMTgyLjAxNDAwMCw5NS44NDkwMDAsMTgxLjE2ODAwMCw5NC4yODAxMDAsMTc5Ljc1OTAwMCw5My4zNzMyMDBaIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDEuMDAwNzA4LC05Ny40OTk1ODgpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYigxOCw1OSwxMDkpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJsb2FkaW5nTG9nbzciIGNsaXAtcGF0aD0idXJsKCNsb2FkaW5nTG9nbzIyKSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ibG9hZGluZ0xvZ284X3RzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAxLjAwMDY5OSwxNTkuOTE0NzIzKSBzY2FsZSgxLDEpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwMS4wMDA2OTksLTE1OS45MTQ3MjMpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzlfdG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwMSwyMDUuNzUzNzY1KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ibG9hZGluZ0xvZ285IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwMSwtODEpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzEwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9Ik0yOCwxMEMyOCw0LjQ3NzE1MCwzMi40NzcyMDAsMCwzOCwwTDE2NCwwQzE2OS41MjMwMDAsMCwxNzQsNC40NzcxNTAsMTc0LDEwQzE3NCwxMCwxNzMuOTk5MzAxLDI4LjM1NTAwOSwxNzMuOTk5MzAxLDI4LjM1NTAwOUwyOCw1MS4wNjA1MjlMMjgsMTBaIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEgMC4wMDA2OTkwNDAwMDAwMCAwKSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPSJyZ2IoMyw4OCwxNjcpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9ImxvYWRpbmdMb2dvMTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzEyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iNTQuMDYzODY2IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjUwLjExODExOCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ5PSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxIDI4IDI0LjAwMDAwMDAwMDY5Nzk2KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD0icmdiKDAsMTIwLDIxMikiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvMTMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSI0NiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PSI1MC4xMTgxMTgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4PSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeT0iMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMS4wNDM4MTUyNDg5NzA5OCAwIDAgMSAxMjUuOTg0NDk4NTQ3MzM0NzcgMjQpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPSJyZ2IoODAsMjE3LDI1NSkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvMTQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSI1MCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PSI1MC4xMTgxMTgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4PSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeT0iMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMSA3OCAyNCkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYig0MCwxNjgsMjM0KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPSJub25lIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJsb2FkaW5nTG9nbzE1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ibG9hZGluZ0xvZ28xNiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjU0LjA2Mzg2NiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PSI1MC42NTkyNjUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4PSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeT0iMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMSAyOCA3MCkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYigzLDEwMCwxODQpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD0iMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzE3IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iNDYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iNTAuNjU5MjY1IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeD0iMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnk9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEuMDUxMTE3NzY4OTkwMDQgMCAwIDEgMTI1LjY0ODU4MjYyNjQ1ODA4IDcwKSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD0icmdiKDQwLDE2OCwyMzQpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD0iMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzE4IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iNTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iNTAuNjU5MjY1IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeD0iMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnk9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEgNzggNzApIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPSJyZ2IoMCwxMjAsMjEyKSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPSJub25lIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvMTkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjQ2IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iNDYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnk9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMS4wNTg4NTAwNjU1MzA3NCAwIDAgMSAxMjUuMjkyODk2OTg1NTg2MDggMTE2KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPSJyZ2IoMCwxMjAsMjEyKSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvMjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjU0LjA2Mzg2NiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjQ2IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4PSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ5PSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEgMjggMTE2KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPSJyZ2IoMjAsNjgsMTI1KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvMjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjUwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iNDYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnk9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMSA3OCAxMTYpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYigzLDEwMCwxODQpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD0ibG9hZGluZ0xvZ28yMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzIzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9Ik0yMC4wMDIyMDAsOTEuNjAzMDY3QzIwLjAwOTkwMCw4OS43MzA3MTgsMjAuODc1NTAwLDg3Ljk5MjEwNywyMi4yOTgxMDAsODYuOTkyMTE1TDE3OS43NTkwMDAsODcuMDU0Mzc5QzE4MS4xNjgwMDAsODguMDYwOTE5LDE4Mi4wMTQwMDAsODkuODAyMTkzLDE4MS45OTkwMDAsOTEuNjY1MzMxQzE4Mi4wMjMwMDAsOTMuNTQ3NjY5LDE4MS4xNzcwMDAsOTUuMzExNjk1LDE3OS43NTkwMDAsOTYuMzM4MzI1TDEwNi42ODQwMDAsMTQ1LjgxMjk2OUwxMDUuNzMyMDAwLDE0Ni40MzU2MDVDMTA0LjMzNzAwMCwxNDcuMjY0Njc4LDEwMi43NzgwMDAsMTQ3LjY5MTk3NywxMDEuMTk3MDAwLDE0Ny42ODE5ODhDOTkuNjMzMzAwLDE0Ny42ODk3NTgsOTguMDkzMTAwLDE0Ny4yNjEzNDgsOTYuNzE2OTAwLDE0Ni40MzU2MDVMOTUuNzA5MDAwLDE0NS44MTI5NjlMMjIuNDEwMTAwLDk2LjMzODMyNUMyMC45MDIxMDAsOTUuMzU0OTgwLDE5Ljk4MzMwMCw5My41NDgwMDIsMjAuMDAyMjAwLDkxLjYwMzA2N1oiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMi4yMzQzNDA4OTI3Mzg5MiAwIDAgMy40MzMxMTc2NjAwNDI0NCAtMTI0LjY2OTI5MzAyMDI4OTA4IC0zMjIuMDEwMDcyNDQ0MjA5MTkpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYigxOCw1OSwxMDkpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD0ibG9hZGluZ0xvZ28yNCIgbWFzaz0idXJsKCNsb2FkaW5nTG9nbzMwKSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJsb2FkaW5nTG9nbzI1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9ImxvYWRpbmdMb2dvMjYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD0iTTE3MiwxODVMMjAsMTg1TDE4Miw5N0wxODIsMTc1QzE4MiwxODAuNTIzMDAwLDE3Ny41MjMwMDAsMTg1LDE3MiwxODVaIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYigyMCwxNDQsMjIzKSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJsb2FkaW5nTG9nbzI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ibG9hZGluZ0xvZ28yOCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD0iTTMwLDE4NUwxODIsMTg1TDIwLDk3TDIwLDE3NUMyMCwxODAuNTIzMDAwLDI0LjQ3NzIwMCwxODUsMzAsMTg1WiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD0icmdiKDQwLDE2OCwyMzQpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD0iMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ibG9hZGluZ0xvZ28yOV90cyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwMS4wMDA2OTksOTcuNDk5NTczKSBzY2FsZSgxLDEpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzI5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdygKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD0iTTIyLjQwODEwMCwxMDEuNDIxMDAwQzIwLjkwMDIwMCwxMDAuNTM1MDAwLDE5Ljk4MTMwMCw5OC45MDY5MDAsMjAuMDAwMzAwLDk3LjE1NDUwMEMyMC4wMDc3MDAsOTUuNTAyMDAwLDIwLjgzODUwMCw5My45NjUyMDAsMjIuMjA5NTAwLDkzLjA1NjEwMEwxNzkuNzU3MDAwLDkzLjA1NjEwMEMxODEuMTY2MDAwLDkzLjk2MzAwMCwxODIuMDEyMDAwLDk1LjUzMTkwMCwxODEuOTk3MDAwLDk3LjIxMDYwMEMxODIuMDIxMDAwLDk4LjkwNjYwMCwxODEuMTc1MDAwLDEwMC40OTYwMDAsMTc5Ljc1NzAwMCwxMDEuNDIxMDAwTDEwNi42ODIwMDAsMTQ1Ljk5ODAwMEwxMDUuNzMwMDAwLDE0Ni41NTkwMDBDMTA0LjMzNTAwMCwxNDcuMzA2MDAwLDEwMi43NzYwMDAsMTQ3LjY5MTAwMCwxMDEuMTk1MDAwLDE0Ny42ODIwMDBDOTkuNjMxMzAwLDE0Ny42ODkwMDAsOTguMDkxMTAwLDE0Ny4zMDMwMDAsOTYuNzE1MDAwLDE0Ni41NTkwMDBMOTUuNzA3MTAwLDE0NS45OTgwMDBMMjIuNDA4MTAwLDEwMS40MjEwMDBaIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDEuMDAwNjk5LC05Ny40OTk1NzMpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9InJnYig4MCwyMTcsMjU1KSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9Im5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPSIxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD0ibG9hZGluZ0xvZ28zMCIgbWFzay10eXBlPSJhbHBoYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJsb2FkaW5nTG9nbzMxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9Ik0yMCw5N0wxODIsOTdMMTgyLDE3NUMxODIsMTgwLjUyMzAwMCwxNzcuNTIzMDAwLDE4NSwxNzIsMTg1TDMwLDE4NUMyNC40NzcyMDAsMTg1LDIwLDE4MC41MjMwMDAsMjAsMTc1TDIwLDk3WiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPSJyZ2IoMTk2LDE5NiwxOTYpIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT0ibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgPHN2ZyBpZD0iTVNMb2dvIiB3aWR0aD0iOTkiIGhlaWdodD0iMjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICAgICAgICAgICAgICA8ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgICAgICAgICAgICAgIDxwYXRoCiAgICAgICAgICAgICAgICAgICAgICAgIGQ9Ik0zNC42NDMgMTIuMDc1bC0uNTg4IDEuNjQ3aC0uMDM0Yy0uMTA1LS4zODctLjI4LS45MzQtLjU1Ni0xLjYzbC0zLjE1LTcuODk3aC0zLjA3N1YxNi43NWgyLjAzVjkuMDMyYzAtLjQ3Ni0uMDEtMS4wNTItLjAzLTEuNzExLS4wMS0uMzMzLS4wNDktLjYtLjA1OC0uODA0aC4wNDVjLjEwMy40NzMuMjEuODM0LjI4NyAxLjA3NWwzLjc3NiA5LjE2aDEuNDJsMy43NDgtOS4yNDNjLjA4NS0uMjExLjE3NS0uNjIyLjI1Ny0uOTkyaC4wNDRjLS4wNDguOTE1LS4wOSAxLjc1LS4wOTUgMi4yNTZ2Ny45NzhoMi4xNjVWNC4xOTVoLTIuOTU2bC0zLjIyOCA3Ljg4eiIKICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD0iIzczNzQ3NCIKICAgICAgICAgICAgICAgICAgICA+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0wIDIwLjk1Nmg5OC4xNDhWMEgweiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoCiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9IiM3Mzc0NzQiCiAgICAgICAgICAgICAgICAgICAgICAgIGQ9Ik00Mi44NjYgMTYuNzUxaDIuMTE4VjcuNzUyaC0yLjExOHpNNDMuOTQ3IDMuOTI5Yy0uMzQ5IDAtLjY1My4xMTktLjkwMi4zNTNhMS4xNjYgMS4xNjYgMCAwMC0uMzc4Ljg4M2MwIC4zNDQuMTI2LjYzNi4zNzQuODY1LjI0Ny4yMy41NTIuMzQ1LjkwNi4zNDVzLjY2LS4xMTUuOTEtLjM0NWMuMjUtLjIzLjM3OS0uNTIuMzc5LS44NjUgMC0uMzM5LS4xMjUtLjYzMi0uMzctLjg3M2ExLjI2MiAxLjI2MiAwIDAwLS45MTktLjM2M001Mi40NzcgNy42NjNhNS44OTIgNS44OTIgMCAwMC0xLjE4Mi0uMTI3Yy0uOTcxIDAtMS44MzguMjA5LTIuNTc0LjYyLS43MzkuNDEtMS4zMS45OTgtMS42OTkgMS43NDUtLjM4Ni43NDUtLjU4MyAxLjYxNS0uNTgzIDIuNTg1IDAgLjg1LjE5IDEuNjMxLjU2NyAyLjMxOC4zNzcuNjkuOTEgMS4yMyAxLjU4NSAxLjYwMi42NzMuMzczIDEuNDUyLjU2MyAyLjMxMy41NjMgMS4wMDYgMCAxLjg2Ni0uMjAxIDIuNTU0LS41OTdsLjAyNy0uMDE3di0xLjk0bC0uMDg5LjA2NmMtLjMxMi4yMjctLjY2LjQwOC0xLjAzNS41MzhhMy4xMjEgMy4xMjEgMCAwMS0xLjAxNC4xOTdjLS44MyAwLTEuNDk3LS4yNi0xLjk4Mi0uNzcyLS40ODUtLjUxMy0uNzMtMS4yMzMtLjczLTIuMTQgMC0uOTEyLjI1NS0xLjY1MS43NjEtMi4xOTYuNTA0LS41NDQgMS4xNzMtLjgyIDEuOTg2LS44Mi42OTUgMCAxLjM3NC4yMzYgMi4wMTQuNzAybC4wOS4wNjNWOC4wMTFsLS4wMjktLjAxN2MtLjI0MS0uMTM1LS41NzEtLjI0Ni0uOTgtLjMzMU01OS40NTIgNy41OTdhMi4xNyAyLjE3IDAgMDAtMS40MTUuNTA3Yy0uMzU4LjI5Ni0uNjE2LjctLjgxNCAxLjIwN0g1Ny4yVjcuNzUzaC0yLjExNnY4Ljk5OUg1Ny4ydi00LjYwM2MwLS43ODQuMTc4LTEuNDI2LjUyOC0xLjkxMi4zNDYtLjQ4LjgwNi0uNzIzIDEuMzY5LS43MjMuMTkgMCAuNDA0LjAzMS42MzYuMDkzLjIzLjA2My4zOTYuMTI5LjQ5My4ybC4wOS4wNjRWNy43MzdsLS4wMzQtLjAxNGMtLjE5Ny0uMDgzLS40NzctLjEyNi0uODMtLjEyNk02Ni44ODUgMTQuNDY1Yy0uMzk3LjQ5OS0uOTk2Ljc1MS0xLjc3OS43NTEtLjc3NyAwLTEuMzktLjI1Ni0xLjgyMy0uNzY2LS40MzUtLjUxLS42NTUtMS4yMzgtLjY1NS0yLjE2MyAwLS45NTQuMjItMS43MDEuNjU1LTIuMjIuNDMzLS41MTYgMS4wNC0uNzc4IDEuODA2LS43NzguNzQzIDAgMS4zMzUuMjUgMS43NTguNzQ0LjQyNi40OTYuNjQyIDEuMjM3LjY0MiAyLjIwMiAwIC45NzctLjIwMyAxLjcyOC0uNjA0IDIuMjNtLTEuNjgzLTYuOTI5Yy0xLjQ4NCAwLTIuNjYzLjQzNS0zLjUwMyAxLjI5My0uODQuODU3LTEuMjY1IDIuMDQ0LTEuMjY1IDMuNTI3IDAgMS40MS40MTUgMi41NDMgMS4yMzUgMy4zNjguODIuODI2IDEuOTM2IDEuMjQ1IDMuMzE2IDEuMjQ1IDEuNDM4IDAgMi41OTMtLjQ0MSAzLjQzNC0xLjMxLjg0LS44NyAxLjI2NS0yLjA0NSAxLjI2NS0zLjQ5MyAwLTEuNDMzLS40LTIuNTczLTEuMTg3LTMuMzk0LS43ODktLjgyLTEuODk3LTEuMjM2LTMuMjk1LTEuMjM2TTc0LjM3OCAxMS40NzFjLS42NjctLjI2OC0xLjA5NS0uNDktMS4yNy0uNjYtLjE3LS4xNjUtLjI1Ny0uMzk4LS4yNTctLjY5MyAwLS4yNjIuMTA4LS40NzIuMzI3LS42NDIuMjE5LS4xNy41MjYtLjI1Ny45MTEtLjI1Ny4zNTcgMCAuNzIzLjA1NiAxLjA4NS4xNjYuMzYzLjExMS42ODIuMjYuOTQ5LjQ0bC4wODguMDZWNy45MjhsLS4wMzUtLjAxNWE0LjcxNSA0LjcxNSAwIDAwLS45NjItLjI2OCA1LjkzMiA1LjkzMiAwIDAwLTEuMDU2LS4xMDljLTEuMDEgMC0xLjg0NS4yNTgtMi40ODMuNzY3LS42NC41MTItLjk2NyAxLjE4NC0uOTY3IDEuOTk3IDAgLjQyMi4wNy43OTguMjA5IDEuMTE2LjE0LjMyLjM1NS42LjY0MS44MzcuMjgzLjIzMy43MjIuNDc4IDEuMzAyLjcyOC40ODguMi44NTIuMzcgMS4wODMuNTA1LjIyNy4xMy4zODcuMjYzLjQ3Ny4zOS4wODguMTI3LjEzMy4yOTkuMTMzLjUxMiAwIC42MDQtLjQ1Mi44OTctMS4zODQuODk3YTMuOCAzLjggMCAwMS0xLjE3Mi0uMjEzIDQuNDE4IDQuNDE4IDAgMDEtMS4yLS42MDlsLS4wODktLjA2NHYyLjA2NGwuMDMzLjAxNWMuMzA0LjE0LjY4Ni4yNTcgMS4xMzcuMzUuNDQ5LjA5NC44NTkuMTQxIDEuMjEzLjE0MSAxLjA5NiAwIDEuOTc3LS4yNiAyLjYyLS43NzEuNjQ4LS41MTUuOTc2LTEuMjA0Ljk3Ni0yLjA0NSAwLS42MDctLjE3Ni0xLjEyNy0uNTI1LTEuNTQ2LS4zNDUtLjQxNi0uOTQ2LS43OTktMS43ODQtMS4xMzZNODQuMDYzIDE0LjQ2NWMtLjM5OC40OTktLjk5Ny43NTEtMS43OC43NTEtLjc3NyAwLTEuMzktLjI1Ni0xLjgyMi0uNzY2LS40MzUtLjUxLS42NTUtMS4yMzgtLjY1NS0yLjE2MyAwLS45NTQuMjItMS43MDEuNjU1LTIuMjIuNDMyLS41MTYgMS4wNC0uNzc4IDEuODA2LS43NzguNzQzIDAgMS4zMzUuMjUgMS43NTguNzQ0LjQyNi40OTYuNjQyIDEuMjM3LjY0MiAyLjIwMiAwIC45NzctLjIwNCAxLjcyOC0uNjA0IDIuMjNNODIuMzggNy41MzZjLTEuNDg0IDAtMi42NjMuNDM1LTMuNTAzIDEuMjkzLS44NC44NTctMS4yNjYgMi4wNDQtMS4yNjYgMy41MjcgMCAxLjQxLjQxNSAyLjU0MyAxLjIzNSAzLjM2OC44Mi44MjYgMS45MzYgMS4yNDUgMy4zMTcgMS4yNDUgMS40MzggMCAyLjU5My0uNDQxIDMuNDMzLTEuMzEuODQtLjg3IDEuMjY2LTIuMDQ1IDEuMjY2LTMuNDkzIDAtMS40MzMtLjQtMi41NzMtMS4xODctMy4zOTQtLjc4OS0uODItMS44OTctMS4yMzYtMy4yOTUtMS4yMzZNOTguMTQ5IDkuNDhWNy43NTJoLTIuMTQ0VjUuMDY5bC0uMDcyLjAyMi0yLjAxNS42MTYtLjAzOC4wMTJ2Mi4wMzRoLTMuMTc3VjYuNjJjMC0uNTI3LjExOC0uOTMxLjM1MS0xLjIuMjMtLjI2Ni41Ni0uNDAyLjk4Mi0uNDAyLjMwMyAwIC42MTYuMDcyLjkzMS4yMTNsLjA3OS4wMzVWMy40NDdsLS4wMzctLjAxM2MtLjI5NC0uMTA1LS42OTUtLjE1OS0xLjE5LS4xNTktLjYyNiAwLTEuMTk0LjEzNi0xLjY4OS40MDYtLjQ5NS4yNy0uODg2LjY1NS0xLjE2IDEuMTQ2LS4yNzIuNDg5LS40MSAxLjA1NC0uNDEgMS42OHYxLjI0NmgtMS40OTJ2MS43MjZoMS40OTN2Ny4yNzNoMi4xNDJWOS40NzloMy4xNzd2NC42MjJjMCAxLjkwMy44OTcgMi44NjggMi42NjggMi44NjguMjkxIDAgLjU5Ny0uMDM0LjkxLS4xMDEuMzE5LS4wNy41MzUtLjEzNy42NjItLjIxbC4wMjktLjAxNnYtMS43NDNsLS4wODcuMDU4Yy0uMTE3LjA3OC0uMjYyLjE0LS40MzIuMTg4LS4xNy4wNDgtLjMxMi4wNzItLjQyMi4wNzItLjQxNiAwLS43MjMtLjExMi0uOTE0LS4zMzItLjE5MS0uMjIzLS4yODktLjYxMi0uMjg5LTEuMTU4VjkuNDhoMi4xNDR6IgogICAgICAgICAgICAgICAgICAgID48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbD0iI0YwNTEyNCIgZD0iTTAgOS45NThoOS45NThWLjAwMUgweiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGw9IiM3RUJCNDIiIGQ9Ik0xMC45OTUgOS45NThoOS45NTdWLjAwMWgtOS45NTd6Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbD0iIzMyQTBEQSIgZD0iTTAgMjAuOTU2aDkuOTU4VjExSDB6Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbD0iI0ZEQjgxMyIgZD0iTTEwLjk5NSAyMC45NTZoOS45NTdWMTFoLTkuOTU3eiI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L3N2Zz4KICAgICAgICA8L2Rpdj4KICAgIDxzY3JpcHQgbm9uY2U9ImYyRjUrSTZZdWRhYWpkNThhR3IyQnc9PSI+c2VsZi5Pd2E9c2VsZi5Pd2F8fHt9LHNlbGYuT3dhLm1haWxpbmRleD1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KHQpe2Zvcih2YXIgbixhLHM9dFswXSxyPXRbMV0sYz10WzNdfHxbXSxoPTAsbD1bXTtoPHMubGVuZ3RoO2grKylhPXNbaF0sT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8sYSkmJm9bYV0mJmwucHVzaChvW2FdWzBdKSxvW2FdPTA7Zm9yKG4gaW4gcilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixuKSYmKGVbbl09cltuXSk7Zm9yKGQmJmQodCksYy5mb3JFYWNoKChmdW5jdGlvbihlKXtpZih2b2lkIDA9PT1vW2VdKXtvW2VdPW51bGw7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO3QuY3Jvc3NPcmlnaW49ImFub255bW91cyIsdS5uYyYmdC5zZXRBdHRyaWJ1dGUoIm5vbmNlIix1Lm5jKSx0LnJlbD0icHJlZmV0Y2giLHQuYXM9InNjcmlwdCIsdC5ocmVmPWkoZSksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCh0KX19KSk7bC5sZW5ndGg7KWwuc2hpZnQoKSgpfXZhciBuPXt9LGE9IkFHMDgiPT09KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIm1ldGFbbmFtZT0nZW52aXJvbm1lbnQnXSIpJiZkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJtZXRhW25hbWU9J2Vudmlyb25tZW50J10iKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnQiKSl8fCJBRzA5Ij09PShkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJtZXRhW25hbWU9J2Vudmlyb25tZW50J10iKSYmZG9jdW1lbnQucXVlcnlTZWxlY3RvcigibWV0YVtuYW1lPSdlbnZpcm9ubWVudCddIikuZ2V0QXR0cmlidXRlKCJjb250ZW50IikpP1siLi4vcmVzb3VyY2VzL2xvY2FsZS1jb25zb2xpZGF0ZWQvW2xvY2FsZV0vb3dhLmNvbnNvbGlkYXRlZC5tYWlsaW5kZXguanNvbiJdOltdLHM9W107c2VsZi5fbG9jU3RyaW5ncz17YWRkTG9jc3RyaW5nQXNzZXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGEucHVzaChlKSxQcm9taXNlLmFsbChzLm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIHQuaGFuZGxlcih1LnArZS5yZXBsYWNlKC9cW2xvY2FsZVxdL2csdC5sb2NhbGUpKX0pKSl9LHJlZ2lzdGVySGFuZGxlcjpmdW5jdGlvbihlLHQpe3JldHVybiBzLnB1c2goe2xvY2FsZTplLGhhbmRsZXI6dH0pLFByb21pc2UuYWxsKGEubWFwKChmdW5jdGlvbihuKXtyZXR1cm4gdCh1LnArbi5yZXBsYWNlKC9cW2xvY2FsZVxdL2csZSkpfSkpKX0sdW5yZWdpc3RlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MDtuPHM7bisrKWlmKHNbbl0ubG9jYWxlPT09ZSYmcy5oYW5kbGVyPT10KXJldHVybiB2b2lkIHMuc3BsaWNlKG4sMSl9fTt2YXIgcj17MTk6MTksMjM6MjMsMjU6MjUsMzE6MzEsNTY6NTYsNTc6NTcsNTg6NTgsNjE6NjEsNzA6NzAsNzE6NzEsNzI6NzIsODM6ODMsODg6ODgsODk6ODksOTA6OTAsOTE6OTEsMTA0OiJ2ZW5kb3JzfkNhbGVuZGFyUGVla35UaW1lUGFuZWxFdmVudERldGFpbHMiLDEwNjoxMDYsMTA4OjEwOCwxMTA6MTEwLDExMzoxMTMsMTE0OjExNCwxMTU6MTE1LDEyMDoxMjAsMTIxOjEyMSwxMjI6MTIyLDEyMzoxMjMsMTI0OjEyNCwxMjU6MTI1LDEyOToxMjksMTMwOjEzMCwxMzE6MTMxLDEzNDoxMzQsMTM2OjEzNiwxMzc6MTM3LDE0MDoxNDAsMTQ3OjE0NywxNTY6IkFkZENhbGVuZGFyc1BhbmUiLDE1NzoiQWRkaW5zIiwxNTg6IkFwcENvbWFuZCIsMTU5OiJBcHBIb3N0Qm9vdCIsMTY1OiJDYWxlbmRhckJvYXJkIiwxNjY6IkNhbGVuZGFyQm9hcmRBc3NldHMiLDE2NzoiQ2FsZW5kYXJCb2FyZFF1aWNrU3dpdGNoZXIiLDE2ODoiQ2FsZW5kYXJCb290IiwxNjk6IkNhbGVuZGFyQ2FyZCIsMTcwOiJDYWxlbmRhckRlZXBCb290IiwxNzE6IkNhbGVuZGFyRnVsbENvbXBvc2UiLDE3MjoiQ2FsZW5kYXJGdW5jdGlvbmFsQm9vdCIsMTczOiJDYWxlbmRhckl0ZW1QZWVrIiwxNzQ6IkNhbGVuZGFyUXVpY2tDb21wb3NlIiwxNzU6IkNhbGVuZGFyUmVhZGluZ1BhbmUiLDE3NjoiQ2FsZW5kYXJSaWJib24iLDE3ODoiQ2hhbmdlTW9kdWxlIiwxODE6IkZpbGVzQm9vdCIsMTgyOiJGdWxsQ29tcG9zZVJpYmJvbiIsMTg0OiJMZWdhY3lBcHBCYXIiLDE4NjoiTG9jYXRpb25DYXJkIiwxODc6IkxvY2F0aW9uQ2FyZE9weCIsMTg4OiJNYWlsQm9vdCIsMTg5OiJNYWlsQ29tcG9zZSIsMTkwOiJNYWlsRGVlcEJvb3QiLDE5MToiTWFpbEZvbGRlclRyZWVzUGFyZW50IiwxOTI6Ik1haWxGdW5jdGlvbmFsQm9vdCIsMTkzOiJNYWlsUmliYm9uIiwxOTk6IlBlb3BsZUJvb3QiLDIwMDoiUmVhZGluZ1BhbmUiLDIwMToiUmVhZGluZ1BhbmVSaWJib24iLDIwMjoiUmVsYXRlZENvbnRlbnQiLDIwMzoiUmVsYXRlZENvbnRlbnRJbnNpZ2h0c09weCIsMjA1OiJSb29tU2VsZWN0b3IiLDIwNjoiU2NoZWR1bGluZ0Fzc2lzdGFudCIsMjA3OiJTaGFyZWRCb290IiwyMDk6IlRpbWVQYW5lbCIsMjEwOiJUaW1lUGFuZWxDYWxlbmRhciIsMjEyOiJUb2RvTGlzdCIsMjE0OiJUeHAiLDIyMzoiZmlsZXNWaWV3IiwyMjU6ImdmaC1pdGVtc3ZpZXciLDIzOToidmVuZG9yc35BY2NvdW50cyIsMjQ2OiJ2ZW5kb3JzfkNhbGVuZGFyQm9hcmRDYW52YXMiLDI0NzoidmVuZG9yc35DYWxlbmRhckJvYXJkQ29udGV4dE1lbnUiLDI0ODoidmVuZG9yc35DYWxlbmRhckJvb3RzdHJhcFV0aWxzIiwyNDk6InZlbmRvcnN+Q2FsZW5kYXJQZWVrIiwyNTA6InZlbmRvcnN+TG9jYXRpb25DYXJkIiwyNTc6InZlbmRvcnN+VGltZVBhbmVsRXZlbnREZXRhaWxzIiwyNTg6InZlbmRvcnN+VGltZVBhbmVsVGFza0RldGFpbHMiLDI2MzoyNjMsMjY0OjI2NCwyNjU6MjY1LDI2NzoyNjcsMjY4OjI2OCwyNjk6MjY5LDI3MDoyNzAsMjcxOjI3MSwyNzI6MjcyLDI3MzoyNzMsMjc0OjI3NCwyNzU6Mjc1LDI3NzoyNzcsMjc4OjI3OCwyNzk6Mjc5LDI4MDoyODAsMjgyOjI4MiwyODM6MjgzLDI4NToyODUsMjg2OjI4NiwyODc6Mjg3LDI4ODoyODgsMjkwOjI5MCwyOTE6MjkxLDI5MjoyOTIsMjkzOjI5MywyOTQ6Mjk0LDI5NToyOTUsMjk2OjI5NiwyOTc6Mjk3LDI5ODoyOTgsMjk5OjI5OSwzMDE6MzAxLDMwMjozMDIsMzA0OjMwNCwzMDU6MzA1LDMwNjozMDYsMzA3OjMwNywzMDg6MzA4LDMxMDozMTAsMzExOjMxMSwzMTM6MzEzLDMxNDozMTQsMzE1OjMxNSwzMTY6MzE2LDMxODozMTgsMzE5OjMxOSwzMjA6MzIwLDMyMTozMjEsMzIyOjMyMiwzMjM6MzIzLDMyNDozMjQsMzI1OjMyNSwzMjY6MzI2LDMyODozMjgsMzI5OjMyOSwzMzA6MzMwLDMzMTozMzEsMzMyOjMzMiwzMzM6MzMzLDMzNDozMzQsMzM1OjMzNSwzMzY6MzM2LDMzNzozMzcsMzM4OjMzOCwzMzk6MzM5LDM0MDozNDAsMzQxOjM0MSwzNDI6MzQyLDM0MzozNDMsMzQ0OjM0NCwzNDU6MzQ1LDM0NjozNDYsMzQ3OjM0NywzNDg6MzQ4LDM0OTozNDksMzUwOjM1MCwzNTE6MzUxLDM1MjozNTIsMzUzOjM1MywzNTQ6MzU0LDM1NTozNTUsMzU2OjM1NiwzNTc6MzU3LDM1ODozNTgsMzU5OjM1OSwzNjA6MzYwLDM2MTozNjEsMzYyOjM2MiwzNjM6MzYzLDM2NTozNjUsMzY2OjM2NiwzNjc6MzY3LDM2ODozNjgsMzcwOjM3MCwzNzE6MzcxLDM3MjozNzIsMzc0OjM3NCwzNzU6Mzc1LDM3NjozNzYsMzc5OjM3OSwzODA6MzgwLDM4MTozODEsMzgyOjM4MiwzODQ6Mzg0LDM4NTozODUsMzg2OjM4NiwzODc6Mzg3LDM4ODozODgsMzg5OjM4OSwzOTA6MzkwLDM5MjozOTIsMzkzOjM5MywzOTQ6Mzk0LDM5NTozOTUsMzk2OjM5NiwzOTc6Mzk3LDM5ODozOTgsNDAwOjQwMCw0MDE6NDAxLDQwNTo0MDUsNDA2OjQwNiw0MDc6NDA3LDQwODo0MDgsNDA5OjQwOSw0MTA6NDEwLDQxMTo0MTEsNDEyOjQxMiw0MTM6NDEzLDQxNDo0MTQsNDE1OjQxNSw0MTY6NDE2LDQxNzo0MTcsNDE4OjQxOCw0MTk6NDE5LDQyMDo0MjAsNDIxOjQyMSw0MjI6NDIyLDQyMzo0MjMsNDI0OjQyNCw0MjU6NDI1LDQyNzo0MjcsNDMwOjQzMCw0MzM6NDMzLDQzNDo0MzQsNDM1OjQzNSw0MzY6NDM2LDQzNzo0MzcsNDM4OjQzOCw0Mzk6NDM5LDQ0MTo0NDEsNDQzOjQ0Myw0NDQ6NDQ0LDQ0NTo0NDUsNDQ3OjQ0Nyw0NDg6NDQ4LDQ0OTo0NDksNDUyOjQ1Miw0NTM6NDUzLDQ1NDo0NTQsNDU1OjQ1NSw0NTY6NDU2LDQ1Nzo0NTcsNDU4OjQ1OCw0NTk6NDU5LDQ2Mzo0NjMsNDY1OjQ2NSw0NjY6NDY2LDQ2Nzo0NjcsNDY4OjQ2OCw0Njk6NDY5LDQ3MDo0NzAsNDcxOjQ3MSw0NzI6NDcyLDQ3NDo0NzQsNDc5OjQ3OSw0ODA6NDgwLDQ4Mjo0ODIsNDgzOjQ4Myw0ODQ6NDg0LDQ4Nzo0ODcsNDg5OjQ4OSw0OTA6NDkwLDQ5MTo0OTEsNDkyOjQ5Miw0OTM6NDkzLDQ5NDo0OTQsNDk1OjQ5NSw0OTg6NDk4LDQ5OTo0OTksNTAxOjUwMSw1MDI6NTAyLDUwMzo1MDMsNTA2OjUwNiw1MDg6NTA4LDUwOTo1MDksNTExOjUxMSw1MTI6NTEyLDUxMzo1MTMsNTE0OjUxNCw1MTY6NTE2LDUxNzo1MTcsNTE4OjUxOCw1MjA6NTIwLDUyMTo1MjEsNTIyOjUyMiw1MjM6NTIzLDUyNDo1MjQsNTI1OjUyNSw1Mjg6NTI4LDUyOTo1MjksNTMwOjUzMCw1MzE6NTMxLDUzMjo1MzIsNTMzOjUzMyw1MzQ6NTM0LDUzNTo1MzUsNTM2OjUzNiw1NDA6NTQwLDU0MTo1NDEsNTQyOjU0Miw1NDU6NTQ1LDU0Nzo1NDcsNTQ4OjU0OCw1NTA6NTUwLDU1Mjo1NTIsNTU0OjU1NCw1NTU6NTU1LDU1ODo1NTgsNTYwOjU2MCw1NjE6NTYxLDU2Mjo1NjIsNTY3OjU2Nyw1Njg6NTY4LDU2OTo1NjksNTcwOjU3MCw1NzU6NTc1LDU3Njo1NzYsNTc3OjU3Nyw1Nzg6NTc4LDU4MDo1ODAsNTgxOjU4MSw1ODM6NTgzLDU4ODo1ODgsNTkwOjU5MCw1OTE6NTkxLDU5Mjo1OTIsNTk2OjU5Niw1OTc6NTk3LDU5ODo1OTgsNjAxOjYwMSw2MDI6NjAyLDYwMzo2MDMsNjA0OjYwNCw2MDU6NjA1LDYwNjo2MDYsNjA4OjYwOCw2MTI6NjEyLDYxNDo2MTQsNjE1OjYxNSw2MTY6NjE2LDYxODo2MTgsNjIwOjYyMCw2MjM6NjIzLDYyNDo2MjQsNjI1OjYyNSw2MjY6NjI2LDYyNzo2MjcsNjI5OjYyOSw2MzA6NjMwLDYzMTo2MzEsNjM0OjYzNCw2MzU6NjM1LDYzNjo2MzYsNjM3OjYzNyw2Mzk6NjM5LDY0MDo2NDAsNjQxOjY0MSw2NDI6NjQyLDY0NTo2NDUsNjQ2OjY0Niw2NDc6NjQ3LDY0ODo2NDgsNjQ5OjY0OSw2NTA6NjUwLDY1MTo2NTEsNjU1OjY1NSw2NTc6NjU3LDY2MTo2NjEsNjYyOjY2Miw2NjM6NjYzLDY2NDo2NjQsNjY1OjY2NSw2NjY6NjY2LDY2Nzo2NjcsNjcyOjY3Miw2NzM6NjczLDY3NDo2NzQsNjc1OjY3NSw2NzY6Njc2LDY3ODo2NzgsNjc5OjY3OSw2ODA6NjgwLDY4Mzo2ODMsNjg0OjY4NCw2ODU6Njg1LDY4OTo2ODksNjkwOjY5MCw2OTE6NjkxLDY5Mjo2OTIsNjkzOjY5Myw2OTk6Njk5LDcwMDo3MDAsNzAxOjcwMSw3MDM6NzAzLDcwNDo3MDQsNzA1OjcwNSw3MDY6NzA2LDcxNjo3MTYsNzE3OjcxNyw3MTg6NzE4LDcxOTo3MTksNzIwOjcyMCw3MjE6NzIxLDcyMjo3MjIsNzM4OjczOCw3Mzk6NzM5LDc0MDo3NDAsNzQxOjc0MSw3NDI6NzQyLDc0Mzo3NDMsNzQ0Ojc0NCw3NDY6NzQ2LDc0Nzo3NDcsNzQ4Ojc0OCw3NDk6NzQ5LDc1MDo3NTAsNzU4Ojc1OCw3NjA6NzYwLDc2MTo3NjEsNzY5Ojc2OSw3NzA6NzcwLDc3MTo3NzEsNzcyOjc3Miw3NzM6NzczLDc3NDo3NzQsNzc2Ojc3Niw3Nzc6Nzc3LDc3ODo3NzgsNzg3Ojc4Nyw3ODg6Nzg4LDc4OTo3ODksNzkwOjc5MCw3OTE6NzkxLDc5Nzo3OTcsNzk4Ojc5OCw3OTk6Nzk5LDgwMDo4MDAsODAxOjgwMSw4MDI6ODAyLDgwMzo4MDMsODA0OjgwNCw4MDU6ODA1LDgwNjo4MDYsODE0OjgxNCw4MTU6ODE1LDgxNjo4MTYsODE4OjgxOCw4MTk6ODE5LDgyMDo4MjAsODIxOjgyMSw4MjI6ODIyLDgyMzo4MjMsODI2OjgyNiw4MzI6ODMyLDgzMzo4MzMsODM2OjgzNiw4Mzg6ODM4LDg0MDo4NDAsODUxOjg1MSw4NTI6ODUyLDg1Mzo4NTMsODU1Ojg1NSw4NTY6ODU2LDg1Nzo4NTcsODU4Ojg1OCw4NTk6ODU5LDg2MTo4NjEsODYyOjg2Miw4NjM6ODYzLDg2NDo4NjQsODY1Ojg2NSw4Nzc6ODc3LDg3ODo4NzgsODc5Ojg3OSw4ODA6ODgwLDg4MTo4ODEsODgyOjg4Miw4ODM6ODgzLDg4NDo4ODQsODg2Ojg4Niw4ODc6ODg3LDg4ODo4ODgsODg5Ojg4OSw4OTA6ODkwLDg5MTo4OTEsODkyOjg5Miw4OTM6ODkzLDkwNTo5MDUsOTA2OjkwNiw5MDc6OTA3LDkwODo5MDgsOTExOjkxMSw5MTI6OTEyLDkxMzo5MTMsOTE0OjkxNCw5MTU6OTE1LDkxODo5MTgsOTE5OjkxOSw5MjA6OTIwLDkyMTo5MjEsOTIyOjkyMiw5NDE6OTQxLDk0Mjo5NDIsOTQ0Ojk0NCw5NDU6OTQ1LDk0Njo5NDYsOTQ3Ojk0Nyw5NDg6OTQ4LDk0OTo5NDksOTUwOjk1MCw5NTE6OTUxLDk1Mzo5NTMsOTU0Ojk1NCw5NTU6OTU1LDk1Njo5NTYsOTU3Ojk1Nyw5NTg6OTU4LDk3Mjo5NzIsOTc0Ojk3NCw5NzY6OTc2LDk3Nzo5NzcsOTc5Ojk3OSw5ODA6OTgwLDk4MTo5ODEsOTgyOjk4Miw5ODU6OTg1LDk4Njo5ODYsOTg3Ojk4Nyw5ODg6OTg4LDk4OTo5ODksOTkwOjk5MCw5OTE6OTkxLDk5Mjo5OTIsOTkzOjk5Myw5OTQ6OTk0LDEwMTE6MTAxMSwxMDEzOjEwMTMsMTAxNToxMDE1LDEwMTY6MTAxNiwxMDE4OjEwMTgsMTAxOToxMDE5LDEwMjA6MTAyMCwxMDIyOjEwMjIsMTAyMzoxMDIzLDEwMjQ6MTAyNCwxMDI4OjEwMjgsMTAyOToxMDI5LDEwMzA6MTAzMCwxMDMyOjEwMzIsMTAzMzoxMDMzLDEwMzQ6MTAzNCwxMDM1OjEwMzUsMTAzNjoxMDM2LDEwMzc6MTAzNywxMDM4OjEwMzgsMTAzOToxMDM5LDEwNDA6MTA0MCwxMDQxOjEwNDEsMTA0MjoxMDQyLDEwNDM6MTA0MywxMDQ0OjEwNDQsMTA0NToxMDQ1LDEwNDY6MTA0NiwxMDQ3OjEwNDcsMTA3ODoxMDc4LDExMDY6MTEwNiwxMTA3OjExMDcsMTEwODoxMTA4LDExMDk6MTEwOSwxMTEwOjExMTAsMTExMToxMTExLDExMTI6MTExMiwxMTEzOjExMTMsMTExNDoxMTE0LDExMTU6MTExNSwxMTE2OjExMTYsMTExNzoxMTE3LDExMTg6MTExOCwxMTE5OjExMTksMTEyMDoxMTIwLDExMjE6MTEyMSwxNzY1OjE3NjV9LG89ezIyODowfTtmdW5jdGlvbiBpKGUpe3JldHVybiB1LnArIm93YS4iKyh7MTAyOiJ2ZW5kb3JzfkFuYWx5dGljc35Qb3N0U2hhcmVkQm9vdCIsMTA0OiJ2ZW5kb3JzfkNhbGVuZGFyUGVla35UaW1lUGFuZWxFdmVudERldGFpbHMiLDEwNToidmVuZG9yc35PZmZsaW5lUmVzb2x2ZXJzflJlc29sdmVyc1dlYiIsMTU2OiJBZGRDYWxlbmRhcnNQYW5lIiwxNTc6IkFkZGlucyIsMTU4OiJBcHBDb21hbmQiLDE1OToiQXBwSG9zdEJvb3QiLDE2MDoiQXBwSG9zdEZ1bmN0aW9uYWxCb290IiwxNjU6IkNhbGVuZGFyQm9hcmQiLDE2NjoiQ2FsZW5kYXJCb2FyZEFzc2V0cyIsMTY3OiJDYWxlbmRhckJvYXJkUXVpY2tTd2l0Y2hlciIsMTY4OiJDYWxlbmRhckJvb3QiLDE2OToiQ2FsZW5kYXJDYXJkIiwxNzA6IkNhbGVuZGFyRGVlcEJvb3QiLDE3MToiQ2FsZW5kYXJGdWxsQ29tcG9zZSIsMTcyOiJDYWxlbmRhckZ1bmN0aW9uYWxCb290IiwxNzM6IkNhbGVuZGFySXRlbVBlZWsiLDE3NDoiQ2FsZW5kYXJRdWlja0NvbXBvc2UiLDE3NToiQ2FsZW5kYXJSZWFkaW5nUGFuZSIsMTc2OiJDYWxlbmRhclJpYmJvbiIsMTc4OiJDaGFuZ2VNb2R1bGUiLDE3OToiQ29tcGFjdERlbnNpdHkiLDE4MToiRmlsZXNCb290IiwxODI6IkZ1bGxDb21wb3NlUmliYm9uIiwxODM6IkZ1bGxEZW5zaXR5IiwxODQ6IkxlZ2FjeUFwcEJhciIsMTg1OiJMb2NhbFN0YXRlUmVzb2x2ZXJzIiwxODY6IkxvY2F0aW9uQ2FyZCIsMTg3OiJMb2NhdGlvbkNhcmRPcHgiLDE4ODoiTWFpbEJvb3QiLDE4OToiTWFpbENvbXBvc2UiLDE5MDoiTWFpbERlZXBCb290IiwxOTE6Ik1haWxGb2xkZXJUcmVlc1BhcmVudCIsMTkyOiJNYWlsRnVuY3Rpb25hbEJvb3QiLDE5MzoiTWFpbFJpYmJvbiIsMTk0OiJNYWlsU3RvcmVBY3Rpb25zIiwxOTU6Ik1lZGl1bURlbnNpdHkiLDE5NzoiT2ZmbGluZVJlc29sdmVycyIsMTk5OiJQZW9wbGVCb290IiwyMDA6IlJlYWRpbmdQYW5lIiwyMDE6IlJlYWRpbmdQYW5lUmliYm9uIiwyMDI6IlJlbGF0ZWRDb250ZW50IiwyMDM6IlJlbGF0ZWRDb250ZW50SW5zaWdodHNPcHgiLDIwNDoiUmVzb2x2ZXJzV2ViIiwyMDU6IlJvb21TZWxlY3RvciIsMjA2OiJTY2hlZHVsaW5nQXNzaXN0YW50IiwyMDc6IlNoYXJlZEJvb3QiLDIwODoiU2hhcmVkT3B4RnVuY3Rpb25hbEJvb3QiLDIwOToiVGltZVBhbmVsIiwyMTA6IlRpbWVQYW5lbENhbGVuZGFyIiwyMTI6IlRvZG9MaXN0IiwyMTQ6IlR4cCIsMjIzOiJmaWxlc1ZpZXciLDIyNToiZ2ZoLWl0ZW1zdmlldyIsMjM5OiJ2ZW5kb3JzfkFjY291bnRzIiwyNDA6InZlbmRvcnN+QW5hbHl0aWNzIiwyNDY6InZlbmRvcnN+Q2FsZW5kYXJCb2FyZENhbnZhcyIsMjQ3OiJ2ZW5kb3JzfkNhbGVuZGFyQm9hcmRDb250ZXh0TWVudSIsMjQ4OiJ2ZW5kb3JzfkNhbGVuZGFyQm9vdHN0cmFwVXRpbHMiLDI0OToidmVuZG9yc35DYWxlbmRhclBlZWsiLDI1MDoidmVuZG9yc35Mb2NhdGlvbkNhcmQiLDI1MToidmVuZG9yc35Mb3R0aWVBbmltYXRpb24iLDI1MjoidmVuZG9yc35NYWlsUm91dGVzIiwyNTM6InZlbmRvcnN+T3dhTWFuYWdlZFF1ZXJ5TGluayIsMjU0OiJ2ZW5kb3JzflBlb3BsZUZ1bmN0aW9uYWxCb290IiwyNTU6InZlbmRvcnN+UG9zdFNoYXJlZEJvb3QiLDI1NjoidmVuZG9yc35UaW1lUGFuZWxDb21wb3NlIiwyNTc6InZlbmRvcnN+VGltZVBhbmVsRXZlbnREZXRhaWxzIiwyNTg6InZlbmRvcnN+VGltZVBhbmVsVGFza0RldGFpbHMiLDI1OToidmVuZG9yc35wZGZqc1dvcmtlciJ9W2VdfHxlKSsiLmpzIn1mdW5jdGlvbiB1KHQpe2lmKG5bdF0pcmV0dXJuIG5bdF0uZXhwb3J0czt2YXIgYT1uW3RdPXtpOnQsbDohMSxleHBvcnRzOnt9fTtyZXR1cm4gZVt0XS5jYWxsKGEuZXhwb3J0cyxhLGEuZXhwb3J0cyx1KSxhLmw9ITAsYS5leHBvcnRzfXUuc3JpSGFzaGVzPXswOiJzaGEyNTYtOWhtTU0yL2FnU0FyajB2YXFsU1ZKc0xMQU54T0VoMWpVemhITlhGWDRQND0iLDE6InNoYTI1Ni11ci9obHJtbkptU0luYWtGZ3lWdVZXV29lcDU0RE9HWmREcW5MWmEvdkZRPSIsMjoic2hhMjU2LXRRTGg4WGRDNWtaWk1ad2FNelJiNWpGNDRQcmpKeUFHMkJVT3FxVGFiWU09IiwzOiJzaGEyNTYtVUlRbnkweTd1QmQ5UWRsZFpkN29zeUYzd3BGQ0krWWowM093SFNYeGFjRT0iLDQ6InNoYTI1Ni1IM2Z0ZmF0ZGxsR3NSSVZEVEZpQ2F4NzBqMFdjdzdPenZTeGc4bnB6cmZVPSIsNToic2hhMjU2LUo3djFRd2N1Z2FqeWdPbU9nUVl5SGFaU2lKN0N4VkpvUFZUMk9ocjdpWFk9Iiw2OiJzaGEyNTYtQ3R5WUh5K3MrZm82NmJGNndVNlFPZFdVQUpUcnNFZEFqbmR3d0c3eUJvMD0iLDc6InNoYTI1Ni1BaGx4NFFyN254eW1VdjRsbE5oeDk0ZWd0Ylg4TUNiVGJ6R3lWRjhkenZrPSIsODoic2hhMjU2LUp6Umo1YUljZ1M2TERTQ096eEJZamd3dmxwdDFaUE5kVWhmRG1sbmhXY1k9Iiw5OiJzaGEyNTYtWnF3MnRSTlM5M24zVFZNWjJzQ2RHODZQTlhMb2xJaFZMY0xwcE5nVGhHST0iLDEwOiJzaGEyNTYtYXlYVGdXeG5SdGloTlpvcVFYMDNFSHJZYU9paVZiWWpOQVJOY1VWdGZNWT0iLDExOiJzaGEyNTYteEVIQ0g1anUwcnJHQmR6TGZYSThrUU81dlJiSlBqbkZITndmbnJ1UkM5Zz0iLDEyOiJzaGEyNTYtZTR1QmlyNGlGT01ENzYwSjg3YVY2ZDBXWXNWM0pTZ3lYODBIZzA4M2xHMD0iLDEzOiJzaGEyNTYtRUpnaUhMeEF2dllqZi9sY2J5dGVIZUQ3VEVkZTkzOUwzMmdjb3lXek90az0iLDE0OiJzaGEyNTYtVzVJMjQvMUtZVEdrWGNlK3Z4SU5TdzhJckN2clJETUVnRHY5RU84U2kxdz0iLDE1OiJzaGEyNTYtOGJoMEhWUHNXaHhpK0pvNkN4TWpBQXVuWUNOS25jRjVaZlNMWloyRWxPVT0iLDE2OiJzaGEyNTYtOGtXLzV6R0xBV0duVzR4cm1XQTkxYzNWT3ErL1JvS3FFOWZoNnRuSWJNST0iLDE3OiJzaGEyNTYta1lFWSszZkxOSmFCK29POWhHRkcyQU5VbElTVWY4QXVIQ0QvTFBiQzdWcz0iLDE4OiJzaGEyNTYtc3JweUhIK2t2aXBnbVJFYmR1QTZPNFk4VkMyaXRzNHBHazFZQkFhM3c5OD0iLDE5OiJzaGEyNTYtZTlLVGIzSDNtMkJxUlk5OFVvZGNrSDhtemsvV1YwY1JVR2RZQkt2V1ZSQT0iLDIwOiJzaGEyNTYteWZ0TW91TXY4R0xBSERZRzliN2wwd0JvdStyaHVSSGFzY0ZaVEc2VVc2ND0iLDIxOiJzaGEyNTYtb2RFOGlYR0M0aFl5aGJNdlBmeVNiRDd4SHhtR1dkZW5ZaFloNHEwMU1kaz0iLDIyOiJzaGEyNTYtYkdCdFhnYVZOVmZSWEFhckY2SCtWM1VXN2QzWUNDbVp3K09NcnZLdi95ST0iLDIzOiJzaGEyNTYtTGV0VjVTWk05TFJPTG1wT2VjQVAwWDl1T2xKK3dmWE1PQTlGclJxMUN1TT0iLDI0OiJzaGEyNTYtelNpeFJRQUgweHFvQkRUWFdudS9PUEl0NElQYlNzYVRZRU1mUjkvdk9XTT0iLDI1OiJzaGEyNTYtR0RzbTF1bjZVdi8vQStVMUFNejVPYXJ5OFkveFBjcjJWbzFXSnZWVTBXWT0iLDI2OiJzaGEyNTYtOEpNZjNhUzdrR3pkOWVvMGtBU0NzQWRzYmhDUGV1K2JmZXZPQTk2ajcyRT0iLDI3OiJzaGEyNTYtTDZhWUVmUGw1cklGTnFheG5VSGZXeERjQVdKcG1aMlg1Zmc3YVc3MFU1TT0iLDI4OiJzaGEyNTYtZzFQeXF4Q05LT2hHZXgrckdDYXBuWVdJcDhlTHhpcSthRzZ4WGZVdVlmUT0iLDI5OiJzaGEyNTYtT0FWRlFqcTg0djZhMWMrY2d3ekRqSm5MQ1N4cWduUnJBOFpYRTRKYVAxbz0iLDMwOiJzaGEyNTYtbTlIQUZJZjJucjg3VkJuNmh0aFA3ek9rdWJ3bXpLY0h5Z2srMytuL2RIVT0iLDMxOiJzaGEyNTYtVDdwajI0RzBndnE5TTUyQnFiODFuY2lJNE5zY0NrZVRjNlNaY2V0cTdnMD0iLDMyOiJzaGEyNTYtazNIN0Z6ZENHbnJqWGdCUnZyTUdKbTY3WnBIb0RwUTRWK1FFSC9uNE1RRT0iLDMzOiJzaGEyNTYtZlUzMG5Ya1g4ZStQbHR0a0xwTmg3Zm8wdHQ5b0lhdVpPR0M5V01nTC9HND0iLDM0OiJzaGEyNTYtVjh6aEVCVU1mMUtIZ3dSL0ZMVTkrVVlta1NWeVVXQTZWODhrd3FZVDArVT0iLDM1OiJzaGEyNTYtY3JKbHRSVEQ0MDdzdjNmalZPcVk5MGU0NHI5U3ZpZTVYOXhEZDkvUlZVVT0iLDM2OiJzaGEyNTYtSHFiYjJXLzdaa2JWOG84OHRlcHVVSWVYOVFZMFhOTnIzeXdrZk9MQkJnST0iLDM3OiJzaGEyNTYtVkIzQlJZNktSYVY4eUFPY3hHcEFyclcrSkFuSG1mT0x0K01YY2YySlBjQT0iLDM4OiJzaGEyNTYtc09rb0p4dUdNZ3RPWDVhZGJ4WlVkMjJkYWYydjNIeUZkWllpVXdaYzBnRT0iLDM5OiJzaGEyNTYtaVI0R1dCbG5KM3hHTms0UVlJUDZsNmxqSFdBUy81MjJXWDlUR3FjY3NhQT0iLDQwOiJzaGEyNTYtUmRudHE1ZkdkZlpHVXVxKzUyenQ2am16MFF3QWNHTEtnTDYvUzJZL0poTT0iLDQxOiJzaGEyNTYtaEhlTWVRUlBNT2JwNUU2cFZ5K2ZtUzIwSFNpa0NGbjZKNE92bHh6Sk9uaz0iLDQyOiJzaGEyNTYtaHFiN1F4WmpDRXpQa3BvQ3NPb0pCOGhHMmZXV0RWbVZDc0xHZU16aS94ND0iLDQzOiJzaGEyNTYtVHJIRDB1NlF5QTFpYzJEYTcwYlJ1b3IyaXhRL0Zmb3JRSVlvRkxMckJwdz0iLDQ0OiJzaGEyNTYtSnBFSDBJbEdwL0g4akIrbEp4eE1WL0dkdW5NUyt0a0I4TUhsbDJjNHAycz0iLDQ1OiJzaGEyNTYtYjNpeDhjcndTcGFBd0U0THVvN1V2cm9wWkltWkVLWEZvUEozcWZaZzA1UT0iLDQ2OiJzaGEyNTYtRmxqb0hNMXhTUXc1Tzc1OFpiTDJMT0tPQ2cvS0dzWXNOeWNOQzNDZnVZdz0iLDQ3OiJzaGEyNTYtUlZ6by8xY0hpd1E2UFV1SUJYK092Vlg4VjJQMUhobDUwaDFEbjhlbEZGcz0iLDQ4OiJzaGEyNTYtdXducmlWUGk0RnV5UDA0c3FQM3pENDd2ZWFVaDgvZTg1RCtiZWZwUmlhbz0iLDQ5OiJzaGEyNTYtUERIdW93OXBVWm4zclA2bkZhQ3drcE5HaDRYemxQTCtwZUNkMUdNMkhyST0iLDUwOiJzaGEyNTYtS2kwVG9TQjA3ZnFiT0dDSXZkMHhUekNYYTgvNUxLM292aDNlN2dpMTl6ND0iLDUxOiJzaGEyNTYtb0Z5VmtnNVNzbkVtZklwT3RPdDRBN2ZGdW9qYktsejBDQTBkTE5aYjREND0iLDUyOiJzaGEyNTYtK1QwVU1UcllSWUJrbzhOVFdPcld4ck54Zy9IZENISjN5TnZCYVFtR3FVaz0iLDUzOiJzaGEyNTYtZzNHTnV4d3RpLzZKZzJ0OXZ6Z0RSWWNhNnZ3Ty9SbElWV3A2Q1k4Zzlwcz0iLDU0OiJzaGEyNTYtdWViazE4STJhUHZjb1ZMT2dRajMyTmRoUDgyQjRGa1JUUEJzWWRsOFlBbz0iLDU1OiJzaGEyNTYtb0F0WGpDRlR5bkNDVmxOZlpKWlVtWVhWOHd5cFptRGt0b244ZzFPeWdNRT0iLDU2OiJzaGEyNTYtaFVwaTlPV3FXKzNyb21qeDZvUzkxZEhFNlNCWXVKd1RkZDZrNUticSs1WT0iLDU3OiJzaGEyNTYtRy9Dbjl0WDBWMGVwMzl1cnMwQnI4OUsxb3UvSm1CMW56UDROOTRGS0FzYz0iLDU4OiJzaGEyNTYtTjZybDVld3RRajBzVWNKSFNPMVl2LytEM2pFdUxoLytwL0hRdnUzRWJXZz0iLDU5OiJzaGEyNTYtZXpJSFFsM1BicVFGSlQ1b1UrbmZtQitKTW1tQ2xKMXYwMjhHeWMwa0FvYz0iLDYwOiJzaGEyNTYtcGRpVHlSTmNvc1hhak5LMlJDT0lmd2lHeTZHNHlQU1VzTVNqVGdiTmVFQT0iLDYxOiJzaGEyNTYtRm4zYm9PMmhzNWlvdTh0QlhNbTNlOVhyYjU0Vi93V0d2NjJtdXVyT3B2az0iLDYyOiJzaGEyNTYtOXpST3pOOFJqYnRPemdPeEE5NEVyMUZ1WFV0OUlqRUMybEptZXFZTSsydz0iLDYzOiJzaGEyNTYtWnYvdkIrbEVwa3hKSStRbnFKMmQ2L3lNSm9seG1LNUZoQWpLUWM2TFVsUT0iLDY0OiJzaGEyNTYtS1hsdEM5bmVVNkU4KzVZeGwrd1lXbmhmUFlDcWxVRU5FUExKalk4MGoxVT0iLDY1OiJzaGEyNTYtM1BKb1VZZ1JxWEQrdjdNNStNaEJ1T1dIckNST1RwSktXNWUxcTJiNklHTT0iLDY2OiJzaGEyNTYtMnBadjQxeEt1UE5ZaWo5a3ZmMnQwODdDSjhSZkdDckE1VTAzdEcvY0tIST0iLDY3OiJzaGEyNTYtU0UwNDhUMFovQUV2dS9xVmtrcTlXZUl4dU1oeVl5a3FTZnhiZlZmblkxbz0iLDY4OiJzaGEyNTYtVHhNMjlpQ05zN0hqNFVVZXlQaDMwT2JCS0tFSUV6OWplUFFXVDdUZDJaTT0iLDY5OiJzaGEyNTYtQWtyK2NPRmdiWlFKOXZpTjNHMVhvcFY1NjhLWTdPTzZZTVVFRXdrK3RZVT0iLDcwOiJzaGEyNTYtVmlxUW5tZHNiMm51NzNDVGNqWi9UWC91VGt2SlJUVzdFV2xha3Y3RFVWaz0iLDcxOiJzaGEyNTYtVmhWSW12dVQrdnR6REx6RXZQY3IxTjBnSDgxR29jdk5vQ1FQVi82UU9Iaz0iLDcyOiJzaGEyNTYtaEJZc01VWEpRbUhRaFRWNVN1aFNVRlFIM0hFYjl0bHptWHRmUnBqSERHND0iLDczOiJzaGEyNTYtaElxNm42dXNreXQ5ZUVXVWhwNkF0TFpGSHNTL3hYcDR2T1FIZjF4WFpZYz0iLDc0OiJzaGEyNTYtWWNDR0lVT042a2ZMbmFPY2JOKzlQN0hUcHpyeG1rOGc1b0FlS1Blcmhxaz0iLDc1OiJzaGEyNTYtSC80QmVIbGRkUFhORkFyOFExNWJlRVlMNURCV1ozSVp3QS9ya01NTThBUT0iLDc2OiJzaGEyNTYtVlRza0RZUEdmMGF5dUdjMlFPQUN2aXZudEsraVVOblJuZVVJUmV0Q2lNRT0iLDc3OiJzaGEyNTYtQnVhL1d4cVRENjRjRFZ6ZVR1TnpXendrbmdGZXJMREIwd0hpWTJ3K1JEcz0iLDc4OiJzaGEyNTYtNWJyeVJ2bDRGMGxSQmxlekx3cU9FZW14UmY0R3RDaVdpMXFKNFp5aWtMVT0iLDc5OiJzaGEyNTYtQlYzR3RxT3NSVkxqYW4reWNYQ1hEMFNKaWJoNGY0V3J6cWdTaCtmQ1JBaz0iLDgwOiJzaGEyNTYtb2cvZHBjMVl0RFVUZk41NUFXempNMTVWZ1VZaGIwWVZpUnJ1N0RKVDBCUT0iLDgxOiJzaGEyNTYtOUtTNWdHbThvdUs5WnJFRjRKR3d2QW5GMXJmNXBCZ1NSZi80bVNxU3ljZz0iLDgyOiJzaGEyNTYtbjNGZStmOVBaSkZCTkpSMkpzL3hsbTBIQVhtN21UTi9wbWVEazJLaUZ1Zz0iLDgzOiJzaGEyNTYtNUNqSjN5U1VIZml5ZUFYVnpxNkN5SWJPZWsyaHN2MW13bi9CS3oxL2JWZz0iLDg0OiJzaGEyNTYtT09talZuSks3MlRFZHRZQ2oyWDJ3ZzcyRVgyZ09JQXJXZk44NXNwUS9uUT0iLDg1OiJzaGEyNTYtaUhvaWxCZ2hzbzFkVEF1eXNDQ2lLbGZYWEU5Mm1GZHFoVVVGRVh4Mmk3bz0iLDg2OiJzaGEyNTYtTlRFRlAyMXRRQzBIcDl2d3kzOWQwZ08wajdTdGlXOTNoU2xQZzBOa3oxYz0iLDg3OiJzaGEyNTYtMFlnWExXYVdlR0tCWjdJT0M5UVdacXQ2Y1FZQlVEdEZaMDA5ZkVpZ2l0ST0iLDg4OiJzaGEyNTYtTWhyb3NIZmhoVXE5WHlNaE10R002c1hmSzVUY3FDTm9OZ0kydnBkMTN3dz0iLDg5OiJzaGEyNTYtWTBMTkFiVnduTTNFdU9wSFdHL2NuVXFmM0trcjBDRW1ZQkVJNGpMQnhBQT0iLDkwOiJzaGEyNTYtY2NKSVdzWTByeFE5VUliWHdxcElXY1Azd2VPVmhJWWhtMHJvRzJ4RXdEVT0iLDkxOiJzaGEyNTYtaGRzdW1EYXdpNVg0cUFDMFhvTUNvN29QTXZmQ0pwc3FTNmZFajNoaHl1VT0iLDkyOiJzaGEyNTYtVVRiZ2JtaUo0Zmk4MWd2QUcrVjhMUzUyZ2M5S3h5dHVUV2FJQlZoM0s5TT0iLDkzOiJzaGEyNTYteVlZeWFoUS9iOEZXVzFieGRWUjFuZUE1aUUrZFN4ZXd1T0l5M2k0akJ4bz0iLDk0OiJzaGEyNTYtZGFOdlZ3ZlJWWEhoaE1YWk9Seks3UVRjeTRFeVh6UHVZMk1YdzdkZ2x0bz0iLDk1OiJzaGEyNTYtcGNDMDJLS3JLbTRpcExGdkZtc1ZtYjZxbFhYZndIb1p0cHlPTS9CL09zST0iLDk2OiJzaGEyNTYtc2ZVNWxJNWNPa1J6NXpmUTJjNzQvOFdYUjVabmIyN0ZmVTROL01wcW4wUT0iLDk3OiJzaGEyNTYtN3o3dkRQUDBweVRDb3c5MCtMSXV2RW1ackgzNHVia0NjQ2NYbVU4d2l1ST0iLDk4OiJzaGEyNTYtYkJqREhhd000UnpoZzQ2OW5PL05sOXlVY2pFQjhORDNFanhHNklQbGpiYz0iLDk5OiJzaGEyNTYtckc1YitlQ2JuT2xPOXZJT0Nvb2lUaXBlWGx2b3dOVm5uOXg4ZWNWNi9ETT0iLDEwMDoic2hhMjU2LUcxNDlEK2dTdlJuQnl0YXJ6ZndFV3hGbEx3SFRxWHdpcnJ1RTNhQkkzejA9IiwxMDE6InNoYTI1Ni0vWitoY2RwUS9xQlRHWWM1c3J2V0dQNFprNFV0QkFMaU9WbS9pbHFJMGhNPSIsMTAyOiJzaGEyNTYteEhhV3RNZitrQ1JPLzlSVkNIV2M3dDdNZ2l3TnpkLzBDeW8ydGxSQTBtND0iLDEwNDoic2hhMjU2LUdNTWV4QkdnbUVYSzRyb1VoQ0VtQ1VjZC9CaG1TZDlIeHFlVDdTUmN1RE09IiwxMDU6InNoYTI1Ni1GaUF3cmF6Q3Z5Qk8xSVZuZ1Q5VU9jMWx3TUQzMEZJWTdVSFJiZ2J1eUlBPSIsMTA2OiJzaGEyNTYtVGN3VlZpcmlFS3VRUHkrY3JpYzJwbnZZSWpjWFdlMktuYTR4NEgvbDZYWT0iLDEwNzoic2hhMjU2LVlPVHZwQll3MUZiZGNETUtUWTlwRE9FZE9wWGNnSExic3JBMUFEQzFML1U9IiwxMDg6InNoYTI1Ni1WakNQQisrcEVuQ3MzbHI4WDNjTFB2b1VmMmszN1RNQnc3WkN5OERrS3V3PSIsMTA5OiJzaGEyNTYtRHRlMFNLWlVxVitrTjV5WmxmbWNxSzYyMGxhM3M4eVFQRGJObFdNdWdFST0iLDExMDoic2hhMjU2LTJZVE1pL0RGc2ZnSzNMb3J3VVZPZWJYZDNRaXFmSDNRVmdJeUNuVHErT289IiwxMTE6InNoYTI1Ni1vNUZ3WWUwU3BGQmFUSStiR21YcWpjWmZFUnc5Y0NldU5pK0ZUeGVYTHZ3PSIsMTEyOiJzaGEyNTYtUnlEeExveS9WdmNsc1RjNWx1ZG4rbHdHR21MYWJySlpvVGxSS0JoZEkxaz0iLDExMzoic2hhMjU2LXdRcVZWYXlEYlBkVm1wODBOWFl3UG5nbm1IT3J0QUNMOGswRmlZbFNSSDQ9IiwxMTQ6InNoYTI1Ni1sL0JhYW8wODlFWnlYSlhvN1RLa1lVUm1xOTZCZmlyT1FWdnpCdHJxaXJ3PSIsMTE1OiJzaGEyNTYteW1Pd3pJU1FJalE1WDluaUttNkVpSE5tekFxWHpLT2RRdHMyaWFlQyt1UT0iLDExNjoic2hhMjU2LVR6ZkdLalN3NDVLWWRnNk9TOTc0dDNsNVQ3RFRFTTlMTHFoajRTRkRtTUk9IiwxMTc6InNoYTI1Ni00dklqTk42a1BWY2JPSTVCblFJbjBTbFlCT2o5aG9TMFhjcVdJWEc0QnhZPSIsMTE5OiJzaGEyNTYtbnVpTzJlTnF1TTFwNHA4TU9EQ3JIVkZyR3hXQWFRK3FFK1BHZS9RWFMxZz0iLDEyMDoic2hhMjU2LXJicndpMXlzWDZFUkRmeTNRTFRTSmVyYkxZWkFmN0lNS2tSU1NIMisvQ289IiwxMjE6InNoYTI1Ni1zUkpNK1lVdkVXYkc2K3M5SVEzRzNjR0Y5VHZ5c2drRVgvRCt1T3VlV0YwPSIsMTIyOiJzaGEyNTYtOHF3QW9YWWZ0OWRHdTZSTDVKMjBNSXlXajkwOTNHS3VSSzVjcml0dzdkRT0iLDEyMzoic2hhMjU2LTgxS25qWVExeHVGYlVWRlBaVW94amV1d0pSb1RjMkJHZWxzQzNBcFdsWEE9IiwxMjQ6InNoYTI1Ni14a1JmUkpGaC9FS1hkU2E3alR4R0xZVllpK2xCQkZPZUN1U0tXc1pUN3ZjPSIsMTI1OiJzaGEyNTYtQlp3RXJVSi9GMnF3VzlsL1lYSXUreFAyWlFNcnRrOG9aM1BXL0J4TDUwQT0iLDEyNjoic2hhMjU2LWg2a0hGT3pGak5UT3FaV3lnN0JyQ0VFM1VreTV6TEo2ZU1wKyt3b3hNc2s9IiwxMjg6InNoYTI1Ni1JZUJzUjZDMU9zN00zYStzam8zdjI3eDRGNTBIdmpqK25hd2JRZXBORXpnPSIsMTI5OiJzaGEyNTYtQzF4YjdDRW9GSlNnVHlWWVFSZTZJNFZ4MkFldUhLdTdtZGtmZ1ZXUXo0MD0iLDEzMDoic2hhMjU2LU5sQTIxT3d6YXcyck9JSThTZ0lVaXppdlVpdU1oQkhwamVQbFJka09jWlU9IiwxMzE6InNoYTI1Ni1lYzFZQlk1UmNYWFVGdjlHemZhZ0hadzRXcUE0aFUxbVc2cjF3MVQ0VUZBPSIsMTMyOiJzaGEyNTYtVzFSVEJUSlVTK20za0h4R0RPbkIrT2plQTJxSjBpelVINlV5TCt0ci9ZRT0iLDEzMzoic2hhMjU2LWRvbklGcXBsYWdnbGtOMDRUZ3JDSk9icUhTd1lMZjFyb1pwV3UzMFZjOTA9IiwxMzQ6InNoYTI1Ni01blU5Ry9wMjlyK1ViYkMrZ2xwclZCTGhCU0Rhb1lOQ1g2eFVmSFZnVHhnPSIsMTM1OiJzaGEyNTYtV1NkTFRmMDZSaDRCYWYxQWFGNHJmNlhheER6eGNSUW5WelB0c1NDOVRLRT0iLDEzNjoic2hhMjU2LXkxN2pUNVpxUkNUT3JhZDAxSzFxTkNqTGxLaWRETnFuTHpOSHdEdHpHVEk9IiwxMzc6InNoYTI1Ni1DSUdmaDM2ekZYOXZnUy9HT09EZFpIcGQrRnN3czRxTlpQb2hVUUFLa1hJPSIsMTM4OiJzaGEyNTYtdW1xNzQ4eWx3UHNQV0VUN3laTEVERDBGcHZodDhaWU5QNlNGNXRQbS84OD0iLDEzOToic2hhMjU2LWNiUUx4Ym5JZW5CdlNUdHpPOWZvNFFvQzk0cWZ3M0ZkMGtwbndEbi9xWDg9IiwxNDA6InNoYTI1Ni10Wm5PbTFoc2RBQnJwa0FVdUpqallPK3dpV2pKTUF4Z2hLM0swWGc2MS9JPSIsMTQxOiJzaGEyNTYtN2t1U0trWmx3cEFndElBalM0Mzllakx4aFB4cUE2QmdZdEJmQkZBc0RCdz0iLDE0Mjoic2hhMjU2LVlzcHczN3hXelkycXlORVJkRGluakFNMEt2OWZTdW9VL2RwUG85MWxYWlk9IiwxNDM6InNoYTI1Ni1FQ1Y0M2c2MmdTdGFnQm9FQUthUjBqUE93dGFIYkl5d1o0UmpNU2hSU1ZNPSIsMTQ0OiJzaGEyNTYtM25RVEdiaVFLM25LT0RqaytEanBPMWF1Q1FtOVQ1VUR0RmVHKzFkVzJTdz0iLDE0NToic2hhMjU2LUNsZThvV1ZHdHMyUXNYUFNoV2VUb0wvZnpUK1k4ZGs2T0tjNHE3eVhpaWs9IiwxNDY6InNoYTI1Ni1NWnRlaFNOVDg1L0JDMktUUjZZMjY2aDdYL3A1TWRpeFNxTGhPTDZGV3U4PSIsMTQ3OiJzaGEyNTYtMHRCS0JiWThIczBhc3VJNG9LaWp3Zit1bnN4SXlCN0p0NzdoV0k3RlhNWT0iLDE0ODoic2hhMjU2LStnMWhCdGRkMkN0YUtwSzNvcFNrWDdWNStkaWhzbFJiZDVNSTZlV3BvRzA9IiwxNDk6InNoYTI1Ni1NdVI1QmpRbTdnSGdGbERoaDBVQ3BCaHQyQVd6dTF2UEJiMS9RUDJUT3U4PSIsMTUwOiJzaGEyNTYtdWo0SXNQNGJERlN1dDhHUzZ5NER4SXcwbUc0alh2MGhYWGd0L1ptUWRCUT0iLDE1MToic2hhMjU2LTBpWU45ZERnVUk0U0RUeE5zT1RHRC80Zzc4b0cxOUtneTBoclRwYzcxODg9IiwxNTI6InNoYTI1Ni10MmtPUHNrVGZGT1Njd0h1QjU1NEpweVZodHM0Nm5Ec3p6MGcxTjJMc2pnPSIsMTUzOiJzaGEyNTYtelBDeUM1VHRJVGlLcmFmUUFscFcwQ0F3U0ZkZ0lSdnVkUzNpcTZJZU4wMD0iLDE1NDoic2hhMjU2LS9PUW9UWnhqdmdsaXY2MlljalZKNlFnbW9XU2d6NXBCOHQ3UlFYVFdaQkU9IiwxNTU6InNoYTI1Ni1nRDdPODQyMFRwbTQxK2toeG5xYnAwVmFUZVhpWkdqdW0zdTdSeXlFVnJjPSIsMTU2OiJzaGEyNTYtazF5VXh4TVlVay9ENE1nRjdibndFMjk4QksyTWVpZ1Bsb3BpekRJTzhxWT0iLDE1Nzoic2hhMjU2LTV3V1Rja2dzSXVoWHhnVC9VQzRDaEhkVGI0VldtVXljWFVwRGZxU01TbFU9IiwxNTg6InNoYTI1Ni1UUjhVWnpwQjVQQTNBdjM1MTg1bGJKTUR3a29EZ09XZ0RCRk5BdUtPdHd3PSIsMTU5OiJzaGEyNTYtajcyZXNsUWFYWmFtRUhhNGJBRmgxQ083L2plWjltaXFHTVlPZFFBbzdmaz0iLDE2MDoic2hhMjU2LTQyQ3NmVzRWZDBKYmYxMXNxcVdTK0s3eUxDMGs3QUY2TFFrbm94Q0wyMWc9IiwxNjU6InNoYTI1Ni1zNCs3dCtENkxocnpheHM1Qy9mQ0h4WlozZHI0TjFBS1dheE45TWR1NmRZPSIsMTY2OiJzaGEyNTYtNm1tdkFvWlg1ZytOa3pQYUNpSDZhNzUzekpJOG9JOWRlNEwrcVRqM01LTT0iLDE2Nzoic2hhMjU2LWN0czA0OFZ6THFqZlVyLzc1VGdWOUMrL2cxRDZ4WjZid0VxNnFQbHpVNWs9IiwxNjg6InNoYTI1Ni1MT25MYyszVmFTUyt2emhwMXVEQ2VHUEx6aElqL3BqTW1Dd2QwZHVXRlJvPSIsMTY5OiJzaGEyNTYtVkFVU0ZSUUE4QUdCalF5amFKZWMrT3BFR1FIK3VYb016SDdvLzZINlM0ND0iLDE3MDoic2hhMjU2LVRGejAyZ1k0UkcrSjdaRDBxM09CZDJKMlVKZVF5S244Zkl6dm56V3BXQ0k9IiwxNzE6InNoYTI1Ni0zQUxCWGw4aURRSzdsVWx1MXJrL0VTSWo2Y0pMMDliQnJuZVlVbU81bjBrPSIsMTcyOiJzaGEyNTYtZzkremRLNzBVT1o3U29yVkRIMmYvdDNUbDVNakJ4OU9GMzQ0RVVmamVDaz0iLDE3Mzoic2hhMjU2LXdaclBOSERGRlQvdUtuNjdDNEdXbVIvdlpRK1JXUldBMXNhaTBER3oxZHc9IiwxNzQ6InNoYTI1Ni0wdmMzUlRVOGlLNnhxRlAvbkZ5REUwZVhJMlp0ZmpFSk1mVXRnY29ZZXQ0PSIsMTc1OiJzaGEyNTYtdzNPamRaNXZpdWJDcXhpRGpyZ1lrWVNWbEwrc2N1dDlITzZoRG1QdmFMdz0iLDE3Njoic2hhMjU2LS9IV2tRNWN4QjdjVGJmczM5c0VBVVA1SGEwU1p4c0pRbmlLZnQxMDQ0YWs9IiwxNzg6InNoYTI1Ni1mNzIvenFESWMxSVVSMDdrY0V6R1VsaUVGd1lmdW5IQjQxYmVrSnhuMmdvPSIsMTc5OiJzaGEyNTYteTNzMm0xY1NwYXFwTkdBbExWdllxcVJKZEJlbTYrd0o0ajl1L08vU01Gaz0iLDE4MToic2hhMjU2LVpVbWFzV3l5dEQ0VVowOTFqNGxDdlk3Y0VnYjNJN3M2MlB3WTZYMzgvbEU9IiwxODI6InNoYTI1Ni15RThUUFBGZGQ5UlQxNzBiL2RnRjV3ekpyVGh2aW5qcnpyRlVNMGpGeE1zPSIsMTgzOiJzaGEyNTYtT1BrUTRsdGJmTCtVZm9mMGpyS1A2SFJrYSthREk1M3g4VWcvSi9LajY2Yz0iLDE4NDoic2hhMjU2LXlYWjlQWDFsQW1tVmVQOTJ3cGp5OEU4WW4yYkxYb01yRjdUWWZ3eEZGR1k9IiwxODU6InNoYTI1Ni1PcTBFVytEUzJFMTdmbkh0a1FLck1ReWV4Y0tRWlV2REU3VFVpN3l6akVjPSIsMTg2OiJzaGEyNTYtVEhjMlJXMVlrdG9ud05lY01HVDl4cnMxNzFVdGdQVFd2bzZnZE9NdHFzcz0iLDE4Nzoic2hhMjU2LTRNN01ac0NrSkMxWDRxRFBaeUNxOGE2SWR1emNXalZnZTVMWnl4S3dqNGc9IiwxODg6InNoYTI1Ni1DZDQxUXl2bUdwendSdnRIN3BtWlpoTXE0MFpVa3JUSGp5a2dMOURTcXc0PSIsMTg5OiJzaGEyNTYtNy9RZEorVnRScXFwNzZLb1dhVHBvK08rdk9yRXRjTWl3KzhDRG1HSDVrMD0iLDE5MDoic2hhMjU2LXdYOURZc2NOU3RMa2ZNdDFZWXNDaUs5Y3JyekRrb0o0SEdrZE5sSHlhbVE9IiwxOTE6InNoYTI1Ni1VVXlQWXE0dmVlcUZqVUNLYWNNS1V3djN6QkRvL2F2d0FXbWNGamE5eUY0PSIsMTkyOiJzaGEyNTYteHNlMThGSHRSSjh4RUs3bjV1N0wyMnZKRXhTYlFXUHhLc3MydkVCaGMvRT0iLDE5Mzoic2hhMjU2LXdtV1Ardk9McDdERmFhK2hQOHZqL3ZDZkFGT2gvVFFuMkl0VTRZK2h4aTA9IiwxOTQ6InNoYTI1Ni1nbW9hQmU2UlN0OFpJMGNVT3J0YUtqTG9LM1FIeEFOWVFsRUhxcFBnZkc4PSIsMTk1OiJzaGEyNTYtSjBnWjg1ZDFPbThZWFY5b1RlR1JPbzdhQ0RqTE1mb3FNNGgydnBTYmVMZz0iLDE5Nzoic2hhMjU2LVV3bTRaRWJTRGY3UFZjeW9lQmFIRFQ4R2pXL0ducHBSOWtBZitIVkxyQmc9IiwxOTk6InNoYTI1Ni1mNTVnREljSW5mVmUvZUY3UWFRV0VzbTNMZERMQjdCV002dTFWdjQxUU93PSIsMjAwOiJzaGEyNTYtTmR2Z05YdWIrK1pxSGtUUTZQMWVwMEJpQzhDR0FyaXRQOWdKaEpUL1FLZz0iLDIwMToic2hhMjU2LVpFMkIzSzh0a1FibHlEb0hOdk01Qkc5R0dxakVLdk5EQmNtakYxaU9TRHc9IiwyMDI6InNoYTI1Ni1KVXY3YjRyRmE5RGl0Y1oxWlQ4Y2NZcmlua0JOSW9mcklRUVlRWUhEcGtZPSIsMjAzOiJzaGEyNTYteXp5QVpNNGZ0WkhrcEJvUmwzVmJOck1zbndjWTRlTkc0cmZHWVMvcnFZVT0iLDIwNDoic2hhMjU2LXNUd21jMlY0UlJSNERLZXpjbERya0luMm4wSTFobnJTcFQrMXlKRHdkUUk9IiwyMDU6InNoYTI1Ni1ZL2t2MzllRjhKZ1ErSGV5MUs5SVAwVkkrUXdPS1pOa1VJeGZRd0lYQTIwPSIsMjA2OiJzaGEyNTYtUVBwUm11UHlhRXVHSVNaL1ZqTTdWa0l5bStVb0pnV2s0ZXRLblJYM1h4TT0iLDIwNzoic2hhMjU2LUVEWDNhV0lRRFI5TmxvbnNnSU1RTU9WYmh1VGJsWHU3OXN5dTdTVHYrRnM9IiwyMDg6InNoYTI1Ni1sODBNb2VSQ21hak5YRmdtT2FjZkp5cVBoRUI1SEN1b1VJa05NVmd2cENZPSIsMjA5OiJzaGEyNTYtU3VzS1E1NVlTZkZneGY0c1BMTXZlQzloRlFuT0RKaXpHZTVjeUxmQzYxUT0iLDIxMDoic2hhMjU2LWJJUjlmeExuZnBNTzNXa08vOExyczJnRGRKazJtSG9xYTNLcnpNNnVPR3M9IiwyMTI6InNoYTI1Ni11S29WcE9mUlBzVzJLbGNHWjEwMjdScjJHNEtXUDk3bGFReWxuL0RZTGE0PSIsMjE0OiJzaGEyNTYtUDNIQ1pZTUh1VmtGMlQ4aGtyV2ZoY04wd2ZlYTBESFBWZjI2cVM0V2t2WT0iLDIyMzoic2hhMjU2LWJyclNZOU9YM1ZZd095cE94OUxXQkE5TG1LWngwTnk4UTErTmlaM0JWckU9IiwyMjU6InNoYTI1Ni1mMWdYcWt5c0pSZ0dNNlVFV3NlT0pJWGhobGp0RHdQR0NHbDhta3RXSGZrPSIsMjM5OiJzaGEyNTYtTkIxOFpFcUFSQU9maDB2N2tEdzQ3Q0gxVkRoRk1CdXRVcnBWajNJUHBxND0iLDI0MDoic2hhMjU2LXFtaUFFWURNTXE4SXd4RUR6TFNaZm83N0VlZ256NjMzK1lHR01HMUNwUE09IiwyNDY6InNoYTI1Ni1PYWlQbFhqRjhFbTlPY2dqa0Jad0xRaTc2b3VXN1NMWlg4bGcvalRGTEhBPSIsMjQ3OiJzaGEyNTYtcFhGcW4vMTRjVWtJTnlDbzNtVElOdEQzdUMyaHVZUlNkclBjbnE1bzdkOD0iLDI0ODoic2hhMjU2LW5jdlBNMmx3ejhHWDZXUytrM1lFZzRsTWlSZmVwa2ZnUGRVeFVmS1hOYnc9IiwyNDk6InNoYTI1Ni1jNUJYcittTWgxN3dwVkRoYTJlYitJeE14eU9kdW4zNFpSMmFWc2k2Y21nPSIsMjUwOiJzaGEyNTYtNktNRzNuTUZsWHg3b2JqOXV2TDAvL3ByUHNPQWtBYVFqd29wak55N3Jqdz0iLDI1MToic2hhMjU2LTNuZUU0WEVONkovL1MzSGN5cnlGMkdPMXRvc3Q5RmM0azFxV1JUQW1VV3M9IiwyNTI6InNoYTI1Ni1WenBaNm8rU0U0VmdhWTFVSzBjOXFjekpKTDVieko3M004QW9uVGxPZnpZPSIsMjUzOiJzaGEyNTYtdkxDTHlNNi83RDh1ZnQrdGxzbmoyTVpZUkE4VXlsbG80MDFTTFU5YkFPST0iLDI1NDoic2hhMjU2LXBjMGNKT3lsQzN4ZzdCRVlYUnQ0NS96UkY1dy83VHJ2UmZPMVRlUUp2clU9IiwyNTU6InNoYTI1Ni1DZnBkamh5TkxjYUlzSlBnOG4zRlU0Zm40eGkydnpoN0pQYUVKbUwvTVkwPSIsMjU2OiJzaGEyNTYtakE2VHcwL0h0aEJQUnM2djJ1NE0veCtjd3lpbUozS3hBT3RuSmlsaGtEOD0iLDI1Nzoic2hhMjU2LWNTWGRBSFd3blJuZ0xzN3Y3ZExHYU5jME1jbmFVLzI4aXhWVkJpMFdUck09IiwyNTg6InNoYTI1Ni13eUVpQXh6U2VOVW1IMjRZNmp0b1hqQklncmUyd1g0bmlQdllJd3ZWNFdZPSIsMjU5OiJzaGEyNTYtdXBJRkZzRWZudFdhclhSY0lERTdUdDJaWGdrT0NNYWhuYmdQcTV1cFkvND0iLDI2Mzoic2hhMjU2LTFwRkJlWEt3Lzg5QmY3SENuNXZCTU53MzR1K25HcSt3dkd4OGJUV3Ewa0U9IiwyNjQ6InNoYTI1Ni01aE9LaDV5WSttY1Z3b2s1ZEhnWFlqNGVjZUFnL0dHdnZ1NEoySGFmRWo0PSIsMjY1OiJzaGEyNTYtMTVrOWtLUjNNVVI4ai9uSUhhckVzNDhQR2VKQ3Vmb1pKRWJaa2F3bEQ2ND0iLDI2Nzoic2hhMjU2LVg1Wm5OSUFsRHFhNzNadGdiU3U1QzRrb3p6eXR2NXE3ck5rWlJ1QjlNV0k9IiwyNjg6InNoYTI1Ni1zSTZKNnVUem1KaFpuUnZRelA0QUJDbHBOcjBxTCtGZUt6eFlScWFIa204PSIsMjY5OiJzaGEyNTYtb29pSWdCbkhIRS9SSEpTdDlzRlJycjZrNm1xUXZnYVJZYnJ4Ny9ZcmhRdz0iLDI3MDoic2hhMjU2LXNhenN5aUMvbk1TUWQ2VEM3UU5DeklydkNNbFdpbDRJVmxSRTlsOFpXcFU9IiwyNzE6InNoYTI1Ni1vRGkra0s2L1NjSXlpTEkrWS8xeUh1bDVaWnc0ZGo2V01FeTJ3Yjk5aG5jPSIsMjcyOiJzaGEyNTYtQjZ4aTBlZnJHT1Q4cDZydEV3SWxxTGNkanhjVm5JOXlRZDZ2V2FJbkx1cz0iLDI3Mzoic2hhMjU2LUFVQXFzK1RrMndJMk1SdUl5ZFBCVlVTZ1psMXRoMUc1MFVKUEEwSnloK1k9IiwyNzQ6InNoYTI1Ni0yb2I0a2F6OTh4R2daeXNCWTIrUHlKNkVkNHNrdlU3SWorQ2g1c2ZWemRVPSIsMjc1OiJzaGEyNTYtdGZDczcwRUx2Z2M5ekVCUldmZXcyR1hxSkpDekFLU3p3Z21TQnUxZEttYz0iLDI3Nzoic2hhMjU2LTBWdFlsZlo5VmpmSjlLeWJ5Y0ZzZFpaNFJSUmViNEpZU0EzTUdnNDdhaTQ9IiwyNzg6InNoYTI1Ni1qN28wc2RLRDg3RzZOaFBsVlZyOEpPb1UyU0E4NU04SkwxNHdWWkd0cmRRPSIsMjc5OiJzaGEyNTYtR3RXditoWXAzZ1d2bXRMVkJkWGhvclZMT0xiY1F3S0RDT2JoVmViKzNPQT0iLDI4MDoic2hhMjU2LXBMY1hlcEZTaEkzZWVrTSsyaUJtSzlQR1lhWXhVemxVcWlIQ1RmcURZZWc9IiwyODI6InNoYTI1Ni1XZ0lHdno0clgxd1FjOUVKUkpaNXFjbzRpbDJnWHVBK3puaEJ6ZjliRkM0PSIsMjgzOiJzaGEyNTYtVjJ2NUM2Um1Ub05kNGs1S2lVN0hER3ZMdkRHaEhyVXBmd1dPYTB5UExtcz0iLDI4NDoic2hhMjU2LTF1T2xTVVo0aC9pT2taNVQxZG9icFg0ai9HUmZJRWx1VktCMHJvcUUxcWc9IiwyODU6InNoYTI1Ni1MaWxrcnUwcHppNWo3YUZPYTNxVjJOTFlzc3hHTng1TVJZS2lvU0IxSWNZPSIsMjg2OiJzaGEyNTYtdjdVTklFMzd1SElGWDBrUDFRVUFpOFcybmgyY29KUWEwNDl3dXFrNDl5ND0iLDI4Nzoic2hhMjU2LVdrZm5YOTRVRlVDdFR6emRseXd4YVZGSlBaYVFEZi9lRUlBY2p0ZW5WWHc9IiwyODg6InNoYTI1Ni1wNGFkNkNtYVE1MzRRSG85OE9naW1RcHZETndGM0lTQTRwMS9rSGk4MFg4PSIsMjkwOiJzaGEyNTYtcTNadTE4eVh3R2FrTlRRcml1WVVwWjAzdXQrYWh1bzRPQzZFZmlnK3EzUT0iLDI5MToic2hhMjU2LTg5dm82SGxXRnFOUzR0YnhKUHp5aHcvMlBRSmc0T3ZQSkxVYmRWSjJjY1k9IiwyOTI6InNoYTI1Ni01cG5IZ0tKc0p3TWhQTXV2eUVaZlFWZFhrMmdHSjdvK3k4SDF4WWJzQ3hrPSIsMjkzOiJzaGEyNTYtRUt6MTVseU9KaGhJOTJrT3FsQ0RSV3E4K3ZLVGh3S2ttUjNsVzQ3LzRDQT0iLDI5NDoic2hhMjU2LTZHS2NrTnZIbVRHQ0Fsb2RqRzRCTkVqaStHZXpOclp2ckwxcGY3azFwUUk9IiwyOTU6InNoYTI1Ni1iVVBMMnV4RS9oN1R3c3ZjVGRYd1RkOGEyZmlZU0QveksvWDFXWE5GREJvPSIsMjk2OiJzaGEyNTYtZXA5RWtweGJxTjBzN3hiVWZxSTFJNmFsMkt0WDdhRzErVHZ4MnlYMFQ2OD0iLDI5Nzoic2hhMjU2LTlrM0Z4OG5qTEFJbk9BVUMxejZmb3c3d2MxNXRHOXQrVTdvRC9ld0ozeWs9IiwyOTg6InNoYTI1Ni1HVlNWVnNIck4remFvZno5TEdWbEc3NlBVNlliUGw3b1pDaUVqc0hSemxVPSIsMjk5OiJzaGEyNTYteWV4SWtuSTU3N1JsSUZtcGNKS1RPcWNUNy9QNW52b2FYYzQvOTh5TDVMbz0iLDMwMDoic2hhMjU2LTBPMzRicEdhMXZjY09pa09FTzd6TDhweFFlMUx4WGZ6b0x4RmFnTmRrZlU9IiwzMDE6InNoYTI1Ni1pMkY4Tmw5b2V2Qnh6eGx2dzFZNU5iWnpFMUtVZUVNWUY1RUlqUnFMS3FZPSIsMzAyOiJzaGEyNTYtZjI3Zm9VTFkvckhtT0JndzVKWlJyVzY4dEx3YXhiTGhPclV4RkNvT1pkOD0iLDMwNDoic2hhMjU2LThqVWIxRkU3bHJrcFpuZjM0TGpId3JGbFlXVUFQcGY0OWtWS1ZWNWJUcTQ9IiwzMDU6InNoYTI1Ni1UVmJvZElEMFRmelI2YzJxd2Z6QjFVZm1CMzVzeGJOeVl0WFJJY0dMVjBZPSIsMzA2OiJzaGEyNTYtZUR1a3B5K0g5U256dEFETUpwWkwvOWw0MXJESWZQNlpKKzZERHRGdDZ4TT0iLDMwNzoic2hhMjU2LVB2cVAzdmpTa2JUSm4wZVRYWWZDaWs5QkxENGh3ODlEeWlFd01PN1Iwb2c9IiwzMDg6InNoYTI1Ni1DWUwzT1cyaTh5TTZlU25RNHBHbHhSOHoxbExCVVNnM0kzL2E1OTJ3NkFBPSIsMzEwOiJzaGEyNTYtb0N0NDZ3TldibDV1T21PZnRxWm4ySlAvaEJFeVlobE83WVBiMHNqeGdNOD0iLDMxMToic2hhMjU2LVdMT21zRDdBVThXaVVxbWh1RXdDTU5lZUhLYmpoWGZYeFhhRytmUGVVVk09IiwzMTM6InNoYTI1Ni1ad3p3djRETEFsZWZDMGVJaytZV3FTZEQzZlgwQnNhOElwR2Vram9tS2lZPSIsMzE0OiJzaGEyNTYtdDFjeXFSSS9uNTdhTkxMdmNYYjVYUVI4a2dqYVNTcE1vb2hvV3lza2FvQT0iLDMxNToic2hhMjU2LUJKM3JsYnlMc0x1U0c5U3V4S0FMQkpxWWY1MituTXdaNlM1MFVvMVVqc3c9IiwzMTY6InNoYTI1Ni1iTVZpd2taSlFWYXpCZDhxaThPYUdzeERrc1JlU0swWmdncUNxV1V2Nkg4PSIsMzE4OiJzaGEyNTYtSnd0WFRKRWhZQzRpQXpGUEFzbnYrRkhod2xueTlGQUtGSTFUUkJ4RzlBZz0iLDMxOToic2hhMjU2LUxmVzlaSmwyRW0rN2x5TnJENG8xd2dYbHBPY1FGNEdBcTltNEQ4RGJpTG89IiwzMjA6InNoYTI1Ni1qeGlleXNia2lVdi9JZXRhU3R0R2RxVmdvTVBIdU1tK0hrbjlJejNsSEpJPSIsMzIxOiJzaGEyNTYtRlZleXUyTGRlb2dpblZIMlBOQVlRbW5wR2pLYzZBWHBoNk5vQUdIeklsRT0iLDMyMjoic2hhMjU2LU1KaGk4Q0FSdVNHS09BazdYZDVtNlA5WVBybWZ5Zm5JTzA3clRHS2xwSEE9IiwzMjM6InNoYTI1Ni0rSFRsams5eWF3bjFEREtDOXRSRHRjalJScW16djZmdGZtcExZQitqMFJ3PSIsMzI0OiJzaGEyNTYtQzRPdlZrVm95b1NxSUdGYUlWVzlmbFFHcnB4UWIwMUFUK0pDMHpPanpNTT0iLDMyNToic2hhMjU2LWhSV1YxQWVCSzliWjllZ0RCSlkxeVo3QmNqK3RwVnA3eUpvcElXRHArZVk9IiwzMjY6InNoYTI1Ni1Qd1lDZ1NUVUZJeXRKbUdDQmJ5SGRSaWhWaHVyU216NXdEdVVuSlFFQlBNPSIsMzI4OiJzaGEyNTYtb3orQi9hSEg4T2pMUkh1OUxSQUdsSFpQQUlGL0FFYUNLV3MwZXM2VjMwND0iLDMyOToic2hhMjU2LUlsSFV2L0VidE9ZQkRPWDJEL1BzYTNqRVBEOXk2cXljUzdSRm4zMUhOdXM9IiwzMzA6InNoYTI1Ni1aMVE5enB3Y3ZpSmlWR05KeWlMSVZMYnAzd3hLSVJiMStCeU9nNDBBODBrPSIsMzMxOiJzaGEyNTYtSVBLRkt5eUYxcXN6c3lNRWwvWXZpcUdJVXpvZHh6MGVMOFJRMkdraHdKST0iLDMzMjoic2hhMjU2LWJXYW0rUUFyOFRvNVgxS3BxZUhGQ2NaVWdkZ2ZGNGRrSFlhV0wwNkdUajg9IiwzMzM6InNoYTI1Ni01cGN5cDhzdWRUWW9mRW1sZi9zRHJkSnNhMUNSbW5rN1B5czBFdExjdmc0PSIsMzM0OiJzaGEyNTYtOWJBYis0YUtzbkdRTWZhOWN0R1F0ckxPNytCYTRKZE9nQ1NoK25PQTRMST0iLDMzNToic2hhMjU2LXV3SXc1eGRaQS9wZVBXTVArTnlVRFdaSURidVVkRHFFQVJTb0hramlkaWM9IiwzMzY6InNoYTI1Ni1BMTlKSE9HUFZBQmFFT0xIQ1V4QVc0OEVidHdXLzRxZlY3YVNROUtXbUFZPSIsMzM3OiJzaGEyNTYtNk5VUFY5N2RCRDh2VlRJWFEwQnJQdCtaUHRBbVhqWHhJNlpWNTNMYXIyST0iLDMzODoic2hhMjU2LXVtRFVmVTNUU2NTdk4vZ2RIYlovQlMyM0Nmc1lHaDg1YVRiK1lPelBhKzg9IiwzMzk6InNoYTI1Ni1zM0o2NHVhc1E1YW1OdjVJQ1YzVWtRbVdhQnlkbEo0TDQwN0tYVEk5VUdVPSIsMzQwOiJzaGEyNTYteXpySHkwTEdaS0t6YVQ0UWtMZjMrNzBMRXBEM1Rkdk1tMjkzSGVzK2FrOD0iLDM0MToic2hhMjU2LThCUjFSbDZtWW1zWU42YVExakNrL29sU0xNRVZ0akdIeHlYcStBKzZGdGM9IiwzNDI6InNoYTI1Ni1aZjFMVmplSjl2UCtyZ0V6WEl5SldqUi9lY1FyOWtRbE1sUGNmYiszZU1JPSIsMzQzOiJzaGEyNTYtRE11L1NSWXJQcDFuZlR3MTZYeW9SVXRHY3IzWWtlNXpSNTJWQkcrUkJTVT0iLDM0NDoic2hhMjU2LU4xZkdTUUI4dUJ3dFJQTmJHZ1dZY1ZDMGlBNW91cE4xcG02U1ZFdjZqYzA9IiwzNDU6InNoYTI1Ni1KMjgzc3VaSUhZZ2YyaVdHbTJUNWZDRUowLzNnTFlocGhDL3JZUWxJTVlrPSIsMzQ2OiJzaGEyNTYtQ3d1MlpuWm9VWTZyRzN0dDdpbHJ3SUdEUnZEVTNMVllaK0FvK1Y0Q3haTT0iLDM0Nzoic2hhMjU2LTlqU1c5dzJZOUZUaEU2YUc2L1VOQ05KcTZDWnN4dGtuSml3ZWhBTloyNUk9IiwzNDg6InNoYTI1Ni01YS96cUZ2eStJUmMrTU5UeGRoTlcydDdvNmpmaDVDUGlsUDlCOWNhWnhZPSIsMzQ5OiJzaGEyNTYtSyt6dTNEayt6b09wemVsRmdYL0RsSklyMHVFeUM0dWhHNWlyN2FEejdzVT0iLDM1MDoic2hhMjU2LURlQkVkTkowWWNwcGFoRGRxUDF4NHBhNldNeXZKMzJZNTJaUk13NnFRSjQ9IiwzNTE6InNoYTI1Ni1JNUhJOFVGSkZ0TGFxMlNpbjh4K3FSWnlDWUNOZit3d3ZJQVRDK2N5UkxFPSIsMzUyOiJzaGEyNTYtY2QvS1VsM3pQRGFhVG45TzNIMnBXcllZc2hvRUhna1dreG5wV2pNdm1sTT0iLDM1Mzoic2hhMjU2LW03dTdVbnhPWm9rd05pWE9tTHd0aFVJaitId3JGRlltK0RrZGJnbFBFUWs9IiwzNTQ6InNoYTI1Ni1vYnkza2MrY2xmWm9VdStxSS9uOW5NSUhlYzBTRm9xbVM4eE1vTk1UditRPSIsMzU1OiJzaGEyNTYtdE1ETklDNzRhTThkRlpQNEU5N251cUR0WFF0V3duTTVJVytlUGMrU2pJTT0iLDM1Njoic2hhMjU2LUVFQjBnV2hocmcxZjRWc21vNlJOQnJmMktPTmcya0Y1V1BXdW5YRVFPMGs9IiwzNTc6InNoYTI1Ni1lQksyUlNhbXQxZExXb3BzdFFRd3BPQ3ZtWnB4R2NLNm1MR1RZSUlybzJZPSIsMzU4OiJzaGEyNTYtaXBXQ1NrVXZpb1RTdmhZVjZkbmZXMjlZVGIrYm9kN3p5RlUybm9jTS9Ycz0iLDM1OToic2hhMjU2LUZhOC81dUdzTGwzVXRKdUltWjlqbUhLbXV6S0hPMlJmWGFDSWt1NzVOdFE9IiwzNjA6InNoYTI1Ni0rWXFXR1pHS1lDV0xrcC8xVHN5eXBzVXJCOW5RQVJhOEloMy8vbnhzcVZJPSIsMzYxOiJzaGEyNTYtemVqMzlsTGZvMFNzTkk3M2hwb2dQUE5IMEY3cE5paE5uOXRrWEJiU0oyOD0iLDM2Mjoic2hhMjU2LXkxZ2xFazdMWWZrQ1JvREcySy9ZVnpBS1lhRnIxTmNhS3VNKzlYZ2g0bm89IiwzNjM6InNoYTI1Ni1naVUzbitjNmtRaUg0dUlTdjNNT2swVDdsbHFnb0dOYTZuMmJ6a3oxSFdzPSIsMzY0OiJzaGEyNTYta29kM1B5emY2dWtkTVc1dmZ0U3RMbmVJbmtIYmI4Q2grOVpDVUgrZVcvND0iLDM2NToic2hhMjU2LUZuVFRoaWptdEZjZVYwOXdaR2FCVTRLcWNXYnI3R05xTGpBM3hpa3FVNlE9IiwzNjY6InNoYTI1Ni1GZVhkdFkzV0dTNEM3RjZmN25pUkIwTFozSDBmOE1qVUEvdnAwbWJIUEJRPSIsMzY3OiJzaGEyNTYtWkZqM3Yza3VZajFxV3hyaXBqb3g5Z29xOFhkRzhPQzFFeUcwS1FHYWROVT0iLDM2ODoic2hhMjU2LXRPcjg3OHRrejhRaVo2bWJaU0Zab3hPUmJqbm1UNEUxd24waUFEYzM1b0k9IiwzNzA6InNoYTI1Ni1KNzJIdUFWV2ZzMTZRcmhUQk1HdmZZRGV4QndBZ2JvNWtxN280Tm1HN3JRPSIsMzcxOiJzaGEyNTYtckQ2alIyOStDVkFkT2xhSmdNZjEwTmVWeG9peG43RHlja0xyMUlzV2dPST0iLDM3Mjoic2hhMjU2LUg2S2IwN1Y2UTFrbEVvWklVektDS2V2K2lRV0VqL1ZSbUd5QkFhMlUyMGc9IiwzNzQ6InNoYTI1Ni0zZEUxbnNCQ0xJVDM2cjg2eGhyWUNIS0pBaEhNTXZsekptR1JBaHZpRlZvPSIsMzc1OiJzaGEyNTYtMVNWcXNkQTRuTlNvc1RnUVFwTGtwbmpyR2hXeS9xbzhwWjdMT2laQ2NzST0iLDM3Njoic2hhMjU2LVljS2pyNG9FSG1SV1RvaUtYdkIxWm9KeWhnY3Fma0JKRDJGRlBGVmFMRFk9IiwzNzc6InNoYTI1Ni1OYWM4SFBvTTZxL2FQd2tOekdPVFVkcVdRUnVrb0VpV21kNytwdXBpcHZjPSIsMzc4OiJzaGEyNTYtZmtZSnlMdzNVMXJrdkxISDdjYzZIbnlDcUxpVWxxUE01Y0ZaakozR1RXVT0iLDM3OToic2hhMjU2LTRPeFIyZ3NUeGc1UU1pN21VOW4vKzFuR2pCS3lQOTV1ZFZSL2huYmduRW89IiwzODA6InNoYTI1Ni16SWNveE1ZZjEvUC9UWWw4UDRaTkR6RGpaaGJneWdZMjcxUUNjWmR1VUlZPSIsMzgxOiJzaGEyNTYtOVgxNGlUWXJrUE9vZTE0L0RkdEw5bDZUYW43SnZFejkwZUt1cWJUR2Mxcz0iLDM4Mjoic2hhMjU2LWR2dEE2YllwdDNrWDEwM25ub1pNUDJmTGRzL0pJY1loWlBnRWJTQVY3MTQ9IiwzODQ6InNoYTI1Ni1JYzN6VnBIcE5XYTZ0ckhkaUFuZGFwd2FNVE53UjkydVdxZEhBckZzemk4PSIsMzg1OiJzaGEyNTYtcnVEejRZWEZNa2FFdy9HMlQvN0RKbFJsc01FdUFjSzc5cW9pamh4VGVwYz0iLDM4Njoic2hhMjU2LTZFS0JSY0JhNGFRTE50Ymw0bTNwOGVPVllvWlF0NU1INWVxbXhSalo4dG89IiwzODc6InNoYTI1Ni0ybFhZejRVMzA4OEF6RSs3L1dOeTRwYUl4NDY5SFpnc0tUQmVQaXJCUFc0PSIsMzg4OiJzaGEyNTYtVDNtcnVDaWJ6YlNubk9wM1dYa0hVdnJFYlJkcVI2UkdZc2RPYS8ycytoMD0iLDM4OToic2hhMjU2LVp4YTJXblpNV3FUSjNxaGxqVHp3SEZlTWJ1Z1RWOEpTVDFRbGswdHhic1E9IiwzOTA6InNoYTI1Ni03QnNWQjhDamdiYXBLVmRjZUxFdlVQZXdxSzd6WlFwQk5VQ2lYdmVWcVVrPSIsMzkxOiJzaGEyNTYtcDNxN09WcUNDRmZnY1phc0xOY2U3U3Q0KzA4a1pPbzRsQ0pBa2V0VWRBaz0iLDM5Mjoic2hhMjU2LVRRZkFpcVM4TjdlcDQybS9iQytKOEFLbHBKVkNTNktuMzNmRDVHOWVIZ1k9IiwzOTM6InNoYTI1Ni1FNDJmbnM0VklaMyszYTNWcmZxSDQ4Z3FSV1lMRlZlWEFJWG1tL216M004PSIsMzk0OiJzaGEyNTYtQWtYbjJXUzFVczl5dFlJWk1pVFNmV25oM3BzLzFlOGRNeTBUeFRRaDRuVT0iLDM5NToic2hhMjU2LWhyb0MyU1lSSldNMlc2clI5N2ZBRW9zSkZXZUdUVFVTUlBNVzZaeUhLYWM9IiwzOTY6InNoYTI1Ni1VeGVycTE1V053cmJZbHFMMEhmQ29uMzhZMGNCOFFUaUNBZXBxR3JXcS9nPSIsMzk3OiJzaGEyNTYtVFoyWVdiYi9XTW5ESFR3ZUlKVnMzSjNLZGhFcFFaT3BMMXQrTWtIYlEvST0iLDM5ODoic2hhMjU2LUFjK09QZURCU3BLVy92RzFJNFhWRG5KbFRmY2ZjMXdFVXFrSWVCTnlHMWM9IiwzOTk6InNoYTI1Ni1TSUVKMCtUalF2bHBYbGxTWXNqb1Nsc0hTbU5CWTV4MVlnM0RUSWttdDNnPSIsNDAwOiJzaGEyNTYtNFlRbVpwWG1EQUFWYllVSDF3WGRId2gvL1FocEpJd1EvMTFSSDlGWXRDZz0iLDQwMToic2hhMjU2LXVWdDNnZjMycUpTalU3U3JRRmp6aUh0d1ZiWjdBRWdpeGVrdDI1SzRrYkU9Iiw0MDM6InNoYTI1Ni1FYkYzbGtyL0J6VU15R3J6WnRHT0xTZHZpK0VENkN4Vk9IL2w1ZDh3WEZNPSIsNDA0OiJzaGEyNTYtUUJwRVo0L3dZMXJqNEhDVG5ValFXa3J2eTNiS2gyL0l4R2FDU2dKQ28xYz0iLDQwNToic2hhMjU2LXNKN0cxeEJiUjJmM2hxNm9JSENmSmpBd1IyME9EeTdrZzdiRi83d0dkYlU9Iiw0MDY6InNoYTI1Ni0zSDdLSzlIOW9zaEdXdGNWSFhqVWFMNytLOExNMFZSNFlrTDBRTzVzV1pFPSIsNDA3OiJzaGEyNTYtZERoUVRlQ3lxZDEwbGdsMFRPeGdzbGNUZHNvRWQwMWJwd1c0YkJqY0tTND0iLDQwODoic2hhMjU2LXZqcFhjL2VjNmpFd05hbHBGUmY4ZmFJeTFEOVRsQTJlMUg1UDl2Qnc4Z2c9Iiw0MDk6InNoYTI1Ni1kak5QZzlZcHBMN1VQVXo2OUY5RDk5bmZLMmVSbGZMUENvQzRsajhLMDcwPSIsNDEwOiJzaGEyNTYtTlhqUmpCdmtSMlhXc3EzS3dqNDlXMHpHZDJKM2RTa1lGN1VyVVF2LzlOOD0iLDQxMToic2hhMjU2LVpVekxCM0l2RWx3em9YcW8xR2plbHh6U3hCM2pGdWNUcTVJc2U1d05kMjg9Iiw0MTI6InNoYTI1Ni12UUJpRUQxNHpPRnhidmZ2KzhsNUZvWTE0aFNRemxmM2t1WTN6WlduUnBFPSIsNDEzOiJzaGEyNTYtOTZSaDJJUTJaNjJSay9qVS90VE4zdkNSYTdrN3RvVStuQ0QwbU13aUFWVT0iLDQxNDoic2hhMjU2LWxFNkxrWjdsSGswQUZ1Wk1PTncwbDUxZngrSDdwYW5oR2tDYldQOHRJekk9Iiw0MTU6InNoYTI1Ni1zZndRQklNVXRwNUFtSkkvaW9KNjNRUS9DalM0VmE2S1RBVG0ySk1HbUtVPSIsNDE2OiJzaGEyNTYtbXRORzYwUktlcXYycUVtaXZDdFNmRWl6K1RQckxoUlZxZDhKTThXK3hVcz0iLDQxNzoic2hhMjU2LU1ZR2ZhU2xIK1ZxTjNiOEZQYXJaMjFDNUpDdURzMVozVEk1RFYyYU1RUkE9Iiw0MTg6InNoYTI1Ni1TcUlZWjQ4K3NmcGN1d1BLaDVzd0ZTTTBxTVVXMWRlaDFqeFMvQjFtT2JRPSIsNDE5OiJzaGEyNTYtN2RMVEl6ZTViNEhneW5VVy9LMGluMjhqeDZDbXNkekZSMFZHbWh6WWNrWT0iLDQyMDoic2hhMjU2LXV2OWlpclllMVRxQXl3bzd5QWhsbU91clVaOEhqeXdrSDVNYkhjbWtsZm89Iiw0MjE6InNoYTI1Ni03Vk5jczUxbG40VVd2WHpCSVJqRXdVL1JGMkhQWEd2QmhHYnkxdFBCWUpVPSIsNDIyOiJzaGEyNTYtVFBWSHhuUWxwbXR4OGg4SEFiTzhXRXM0Wm5Rc1o1U05VWG54d1dqU29aND0iLDQyMzoic2hhMjU2LSszV2dpZ0w0VXFzQm1zMGZlSEF6Zm5aN2dwRHM3QldaQ1U0OGlWQTcrVEU9Iiw0MjQ6InNoYTI1Ni02dmlhSjV5OEZKb3VKUWlDTHl5Y3htRHhUQ2V0MHYwcjF6MzNWNGZtdlNnPSIsNDI1OiJzaGEyNTYtYmJ5RG9tSzBqdHFtb2RJc2h6eU5sZmw3a1RrWENoK0dBUnBGMjM4NVpCZz0iLDQyNzoic2hhMjU2LXZzc0FJWG90R1ZXRTRFOStJSXFBc1NaNkd2Z25jWWpDbzRLRHBodEJGWG89Iiw0Mjg6InNoYTI1Ni1TUmpxb3ZMU2hlVk1YbmZidnYxR1YrRUhBcmVKK3hraUthcURiVzlxV0kwPSIsNDI5OiJzaGEyNTYtNDU0cmtIOEZ4aTJidDgxRGo0UjZOQkRkdC9UQ3dtOUtSWU9DUEQrVStYST0iLDQzMDoic2hhMjU2LXdsRUwwSUNhUUhWMG53b0tXSGY4ajhTbW5BMjBBNFpwZlJiMjZxMEVMS289Iiw0MzE6InNoYTI1Ni1xeHAwaFp4cE91aWt2L1YzdWdzeXRUVXpNVnhrS09CSzFWc2FuQm5iaGFrPSIsNDMyOiJzaGEyNTYtYUNCMFlSY3R0MUZqenhYSVExTnA3Zzhmb0htK2h3ZUxJNFVFSGNmaUc1dz0iLDQzMzoic2hhMjU2LWZLR09lbHU5RS9va3VxODdQRHd3dTVMMGtYNm5tUFNoS0xWbzZWMDFSK1k9Iiw0MzQ6InNoYTI1Ni1lMGRLVGhuOVV3SG1vRTVLZGlXTUxJb0tBZFdXVEF3djRDZ0VtdEYzOGFBPSIsNDM1OiJzaGEyNTYtczRwaFJRbVFxYytKdWdaNlU4amxOSGtWd2M4NzdNUzdkUGFrRlRJVERNND0iLDQzNjoic2hhMjU2LVMyRFl4OC9aS3IxQmJJN3U2bEoyVlhmL0JDR3phWk81OVdjK0JodHUrRlk9Iiw0Mzc6InNoYTI1Ni1RdUV6ZE1DRmNpak5HaEhjYzBMS1pCeGZmbnZSdnVHMFdNdjZBMURrTXpzPSIsNDM4OiJzaGEyNTYtNlFOUkd4RFpoSEpwWHRzU1h6Z0ZFaHpsd0RPMDhtaGdMeUhJNnhCeW9OYz0iLDQzOToic2hhMjU2LUNmWVprcmhFdVBqL3pNQmk4UTF0akNiZUxUdHI3VHZvV1F1d3V4cGhvd289Iiw0NDA6InNoYTI1Ni1Jdlg4eXZsVWs4UDQva3NEUit1SDEwVkpmNmVmNnhGWFA0ODBSOXhyTTBvPSIsNDQxOiJzaGEyNTYtbmhHN1hXZGFhaG1ZWnhEdlNBQnlab2xiV3NSMWkyVzZiTmtVZ1o2QWVQbz0iLDQ0Mjoic2hhMjU2LTFGc0JCcVNCNWlnejY2bkh2NlUrNis2MWNkL1F1bXdBODQ2Z0xncDhoYzQ9Iiw0NDM6InNoYTI1Ni0wOFVJWWhPUlJFcEpreHBZdStSaFJVd1hQWWVYQnhXRllBenpSekpwQ2gwPSIsNDQ0OiJzaGEyNTYtMUFvTEtNRkVNVVFyaSsrUkRyUEVyNldyTkJBbzJxcUh2WDRHdjFjQ05jMD0iLDQ0NToic2hhMjU2LVFDbEpHeTAyWFNDZFdJdmNPRk8vank1alFPSEwweHVtUTBuRThTcWd3VTA9Iiw0NDY6InNoYTI1Ni1SdVI3TGJ6NkVmOXVWM09RYVdrTWRoK05KNUR0a0IyeHdQOGRjMU0veTZzPSIsNDQ3OiJzaGEyNTYtTm54bUY4cU1TUk96MDBNcGxpNXN4YUFoYTFYR0dwd1VrdEVUQmI1WlFsaz0iLDQ0ODoic2hhMjU2LW9YRFdQMk1FemVLRkJvM0dGSjdCM05Jb0xoTjRuQ1ZONVYyUHltZmxSRmM9Iiw0NDk6InNoYTI1Ni04WmNWRWdIUFJEK2tlYXFpNVQ2aHpYS1ljTGdqVGlWQUltUS9RMzhWbEFzPSIsNDUwOiJzaGEyNTYta2J0Z05zRmsxcFpwR1N4UzlCMEhvR0h2dko3ZjQ1eHZYQUFneDhyR0RsMD0iLDQ1MToic2hhMjU2LW1PRi9LaXZPeDFyL3lXaEplcTdkZFNDY2RqeW1MZTRIZ2lQOW4wSTlXMDg9Iiw0NTI6InNoYTI1Ni0zNS9iQWFCcmV5eEM3d09NcjJtMSsxSkJtbUROYnRObWlJMXVJMWNMZCtZPSIsNDUzOiJzaGEyNTYtV2s3aGZVODFFOTFsVGh3OVJyaXErNENZL2crNlhHSFVuaG1TMG9DcTFQaz0iLDQ1NDoic2hhMjU2LWMwVkFnOXQrejhnZHBqZGdoQWVRQWdaVHYxdVVXVGlUc2Q5SytzSVVFWDQ9Iiw0NTU6InNoYTI1Ni1INmpMWi9CUHMzdHNnMmV6UE1yS1hIbjdoU3hFMU9sMkFuM3JkME0rSDFrPSIsNDU2OiJzaGEyNTYtSGo0WWNWODhHYWlVM3VCdzZRa0pJMkRMY2Q3ZkFWa2Vob2FmeGhiQmwrcz0iLDQ1Nzoic2hhMjU2LWk4L2hLU0wwQkV2ekxuaG04YjZud3VVcDgzNXZ1bDBRZ2hMT05scE9tMFU9Iiw0NTg6InNoYTI1Ni1ZRVM2aUFDWi92dmZLbmJURnF5SXVlemNQeEI3T2dzbnF0OVBMV2I0eXVBPSIsNDU5OiJzaGEyNTYtUTd4aHBVdVJjaS9ZOTBkTGplTkl3UXBVTCtkblZFTnN3SityRDR4VU1rQT0iLDQ2MDoic2hhMjU2LWZHM2xaUHBOZTE2U1BUV1ovN2FoVWZzYkwyTkMzSUZTOEhBOUE5TGhTdkk9Iiw0NjE6InNoYTI1Ni1tUXpKQXJjTXRzMHhzSjl1bUUxVG9GMzdRMUxkbVpwcG14V0ZYM1Z0SmhvPSIsNDYyOiJzaGEyNTYtcGMyWHJDVktsZzlWemhNTXBkUFRuTnc3cUdGMldrVEFTcjdmaGxnNHNjRT0iLDQ2Mzoic2hhMjU2LW5JMDhCWHpsdHl5V2ZCTEZCTXhzNk5WdzRVWitYeW9aR2YxZUxaa1RnUUk9Iiw0NjQ6InNoYTI1Ni12OTE1SWpxVGFqS1NtVFViTzd0a1FTSVdId0dWS1hRb09hVmRRNWNvZjVZPSIsNDY1OiJzaGEyNTYtODAwTlA2OG1aRzd1OEY4KzdaOEZCenZLcXpFa0ZOOEZQUW9jeWFjUm8xdz0iLDQ2Njoic2hhMjU2LThpc25JL2MrSWNWTUhVMVNKV0NESnZFaGJ1bWFqVEVVRTNQWWptTFI5UGc9Iiw0Njc6InNoYTI1Ni1lczZkekh3Q3Jqa3dLNG5WSmJ1VFFjWGFiMUNhZkRMdGV6Mk9McTFxK2RJPSIsNDY4OiJzaGEyNTYtZllaV3dGK2RFU1VkSytHcEFNRDZvT3V3bk93d0krTFdTL2FpZmQxMnlmZz0iLDQ2OToic2hhMjU2LXh5SDBUMEVTYi9CSjVsd20zaW5pVnp2V0x0THBGMGc3dWR3RVpXbFg2N3c9Iiw0NzA6InNoYTI1Ni03Zng5MTV1TkgxMnpDMkVjZGZYQlhOc2k0Vlg3TDN1YnlnNTk5dFVUUGhzPSIsNDcxOiJzaGEyNTYtRG9uL3JFU2dwbTRncjB4bStCVkZHY0lKanFmM3NkM3A3QTR6ZlVXOC8xaz0iLDQ3Mjoic2hhMjU2LW0wTm1HNlVyRGFsdjlYZFQycnI2Z214dlhuMmtwWC9rS1RQbjlmL0VMZU09Iiw0NzM6InNoYTI1Ni1NMFVXc1JxL2lKRUpDRjZSamdCdDQ2R2JvaWNwZ01RYW92MUc2TDVaUVEwPSIsNDc0OiJzaGEyNTYtNVpmL0RrQitDNTJ1SGxZOHFhZWF6WnE2K29EL0JqZ1BaU2VDQVZTb0JWVT0iLDQ3NToic2hhMjU2LU54bjVaS2wwV3d1YTIwd3lPNmRHaDRqdUhWTTZEa3pRelpydXo3QmJoc3c9Iiw0NzY6InNoYTI1Ni1vaDU0R3hwWnlFbi9ha21EdWRtMXRDN0I3N3FpUUd1RnBvbno2L2tzc0tjPSIsNDc5OiJzaGEyNTYtMDBEdmFwaTliTUgvemVKcDIya09nOE9qTkNwYy9mSVd3WEs0ekx5NmEzVT0iLDQ4MDoic2hhMjU2LXcyNHBvR0Zib1o1NjFhdmY3QTRpdSticFBIUExGWWlFbnA0NElmUHVoL2M9Iiw0ODI6InNoYTI1Ni0zUWsvU3NrZGdHRzJocFlNYTJiQ21MMTdLeDczY1ZvdnVWYnFWdlFtTVlFPSIsNDgzOiJzaGEyNTYtd0RsQWZneVVkUmFyWEJsbndNMUhrd2F3VjlNaEg4Z3N3bWZPOUpqL0xvTT0iLDQ4NDoic2hhMjU2LTY3L2ptdnNlYmNoWGdJVE0vUXh6Q2dVV2ZneGVMT015bE5kMWRMOTVTczA9Iiw0ODU6InNoYTI1Ni00NHU1QmF6ZkhEbHlSQmN0RSttdlo5Q1ZLTGtWVjZKTldGL0xBZnF3R093PSIsNDg2OiJzaGEyNTYteGVEMlYvQVE0UzRqM3V6cTdyV3owYXk3TStsMXgrbGJqZGlSenlrQkxCOD0iLDQ4Nzoic2hhMjU2LXVVbHI4anVUWkFjZGk0VWQ5SURCTWk3MjNWZllQUldiUzhjdXFFYlI4cm89Iiw0ODg6InNoYTI1Ni1wbVU0S1BGQ0dsdGo5UUFXcWo3eGUzT1NHdEdEOWRtZDYvKzNXRTB0NUI4PSIsNDg5OiJzaGEyNTYtRE1VZm44NmVpVmRJQjk1WmhIdzBNUER2WTJCK0VuSGpyNUdaRi91NWI2UT0iLDQ5MDoic2hhMjU2LUM2Mkc5bkdvK3FjSjlKODljUm9NeHoxbHIvQkZqTDZRS2pLU3l0clpFaG89Iiw0OTE6InNoYTI1Ni1LMDNvaEFidmJyVzE5bEw2cURIRU5iVDZISlRMWXFWZU41cVRJVkZqaEpnPSIsNDkyOiJzaGEyNTYtWWtVdEFTOThZL0dkbjFrYVBxNlhKUFplTER2bS9mbis4QUNrWE40VUVSZz0iLDQ5Mzoic2hhMjU2LWJ5Vm54OG51M01uYnd0Zmpjb2tGVlVnaHJ6VEp3T21ZUnpubmJtME9tK0E9Iiw0OTQ6InNoYTI1Ni1nZWs5ZVNUckdlb2J0UzhGRUNiZEhoYXlXWW5oSUQ5R2VPeWRDdDBzd1JRPSIsNDk1OiJzaGEyNTYtcEd5Rk1pK3hTWUxaVzNHMnZlSUppY1dkMFRMdTBiclh1UExwb25xRjE4Yz0iLDQ5Njoic2hhMjU2LXg4SzBvUk5IZmEzVmdOK3Fodm81cXF3SWMrOW9GT0hWSWtTemJmNWpQdHc9Iiw0OTg6InNoYTI1Ni1FcUNPSmF3ZnRsL2J2dE9CdkxOa2xYMzJ0ZkIzQVJHQlVMd2hMZHFiekg4PSIsNDk5OiJzaGEyNTYtT3FlVFJLT3ZWWUFwV1FiZTZ4dnBwd0xQb1ZRUmJ3ZnhlaklaSTFJSzE0dz0iLDUwMDoic2hhMjU2LTBpTXJ3WGo1MU1UK2s1d2dEdG11d09CZ1FZU0lCZGhaWTVtTHhPdXpZd1U9Iiw1MDE6InNoYTI1Ni1JN3AwTXkwQkZrSUpteTJ4SEQ2dWpkUllhUlJBSDNsVFZkc2xYa0tWR01nPSIsNTAyOiJzaGEyNTYtNmtQZk9JNWp5NGhpWnBMbVlxakgrU3BRV3g0Z2VsQ1ZxdFdLdFZQZzFQTT0iLDUwMzoic2hhMjU2LWZ2dGw1NldFU1gyS2RKV1Q2Z3lsV1FEc056dENUaG4vQ1hrejZMTVo2TVk9Iiw1MDQ6InNoYTI1Ni1jSXZFbFV5ZkVrb2poZW5tZHNuRE5XOCtKN24zZDNuS01JTXh6Z0hvMEQwPSIsNTA1OiJzaGEyNTYta0lDTGJSOG9EeUM3d1N3WU9HenBGWVZ1eDduT3d1anRzaVVsck5UNFJEMD0iLDUwNjoic2hhMjU2LWY5NWprbEROT052eit2bDlNZ1BpcGY3VFpSVzREcGFWZ3Z4RUY0RVVjL1U9Iiw1MDc6InNoYTI1Ni1KcHB2ZHJtSVVjRHpuQVg0WUswYk9pSFZTNFVid0ZkRmdhUjVLOUJ4S2JZPSIsNTA4OiJzaGEyNTYtR0JnaXB1RnJ4MXk2OXA4ZXdHOThaUy81Q2U1TFRsVjRQb1JkUjJSa1VBOD0iLDUwOToic2hhMjU2LXRnd3ZGV055WmVONlJVcWR1aUFMRHR1MVFHbDVEdVFXcEo0ZW8xTXRLWDA9Iiw1MTA6InNoYTI1Ni1KWDZPTVhHUzMxd1VEbWZrMkMwbXR1SDloL25DNzBMRTFzTGltQXJBWUlBPSIsNTExOiJzaGEyNTYtYjVtZjFjT2tSeGxaS09FOHNlSmY0aTZFTUEzbnVIRjZpYU5qbzRNUzRIOD0iLDUxMjoic2hhMjU2LUhrOWUreFFNNWVlZzBvZlpBbDFVSFl1R084NUJuRW9sbStscU9uNE8zdGc9Iiw1MTM6InNoYTI1Ni02ZElCSkJZaUV1Z29TQ1ZnUnVwaHgvQTQ1QXFMQUhZVGsxVVVaWk5HcXB3PSIsNTE0OiJzaGEyNTYtYXZnYmkwN3BrdWEvQklnaHBmTGxNSUgyOGtoRkFYUVpuOWd4eFB4cEtoQT0iLDUxNToic2hhMjU2LU9kRWh5ei8weVUrTlZpWkZNSEUzVHVxNGJwVDAyOHU4M0ZMeEw4VzJTRlE9Iiw1MTY6InNoYTI1Ni1ZVFVjY3JvS24wVE4zZjVSeUFkbXpCK3dtTGdLSVNKMmVnSUpwK21uS1JFPSIsNTE3OiJzaGEyNTYtSU1nTXRXTU1wQmNNYlVoMVNyRGhtYjhyeThMY2dmUDRwM3g0ZDl4dFBCbz0iLDUxODoic2hhMjU2LTJCTmw2Q3NlQlVOWXBGRjQvOFZGN0plKzlTT3pkdjFyRzdxRDFKRVhod1E9Iiw1MTk6InNoYTI1Ni1oVHM0VEx5SFkwZ2RSOHRUZXEwckVZWU5XTk1RT3BQVFZRWGVEdUpiR0RRPSIsNTIwOiJzaGEyNTYtVGdZYi9KdWE4YVJsY3hnZFRWalVqK0xFOFpxM3NNRy9jTDRnZFIzSFBOOD0iLDUyMToic2hhMjU2LTB1U1ROM2VjUGRNRzZpSlVUb3dHRXBENERYa0tPTFhOdGxkWjdsUXFNRHc9Iiw1MjI6InNoYTI1Ni0yQTRNWCs4czllcHdwbGZROXpHOWZ5bVdZc0s1RVk3QmsyamxNU0tGTDRJPSIsNTIzOiJzaGEyNTYtaXh4YTFuNndiZndZYjJaTHdjVHF3MGZPbnpiSzluSEZKditFRXVXb1VpST0iLDUyNDoic2hhMjU2LUlLSGhmVE5pQmxabzVFelJIQlpZdDNyL2ZycFM4VjJHUytoQ0JLRzVmY1E9Iiw1MjU6InNoYTI1Ni0rTTk5TzFLek5yLzViUVRkeTdlS2FtbUlmOSt4RXRTN3NRVnhZbENYTTNNPSIsNTI2OiJzaGEyNTYta0Y1TldGVDBpZCtTcVpJTENUOVlOY3B0aDhUem5MVUl4RGVEQVlIdWovdz0iLDUyNzoic2hhMjU2LTBFdHhlYlhwM1ZZaDFpaVhBNnhOM0dDaVUrSjVKbmxxcnRTM01uSjBVWG89Iiw1Mjg6InNoYTI1Ni1oWEZFamhtRDA0WWtYM3c5enU4dzAvMzVRcXJkVDFBTmw2TThFeURVaDk0PSIsNTI5OiJzaGEyNTYtUTN4cTVqU0NBaFVHSGk2cmViNG5TOVEvTm52bGVKM0hNa2hGL2RETjRmdz0iLDUzMDoic2hhMjU2LTJid01sY1ZqMG1MQ1NIL1diRHU1VEU2cjBuY3VQY1ZMSDNxMDFXbko2RDQ9Iiw1MzE6InNoYTI1Ni13ZjhMNnFTY0lwbFN6a25vOGFXamtwZWd1SjBTM2s5ZnhTOEdIK1Jha0c4PSIsNTMyOiJzaGEyNTYtUGJ2ZjVYcmJKOW9KVmNoVkord0FYTHRsS0k1cWx2TmtNQnRESmRZekRRWT0iLDUzMzoic2hhMjU2LUpLb2R6MVRGbnhVUnhqTmo4dkJsSmYrSG53cFZFOTBkaUpHRmhyZWZyL1E9Iiw1MzQ6InNoYTI1Ni1od1RtNXpGRXFDeDUwYUxibW52dHhIMXBUaHdQYjJwL0VoOTZ5cy8vcnZzPSIsNTM1OiJzaGEyNTYtL1hQQUcweGJpTEtlMXBVSEdLNzQ2QTVjaGF5NFJCNWFPZnY3ZUxJTUVIbz0iLDUzNjoic2hhMjU2LVdFbkw2U3ZRTTdwUi9tMDhCNVlCU0IzUFVtWEVwaTBPUTBnb0QxdVVSZEE9Iiw1Mzc6InNoYTI1Ni1HRWRGTUFjVk5yaXc4ZGd6R3FSYlhmRXJEcnZWSlhjdVhyNWI2Tk9KWC8wPSIsNTM4OiJzaGEyNTYtTElCR3pPQzB5Q3FpR2dPb2Q1UngxUXd2M045M3RSNnA0U3pCcUg5aDJWOD0iLDU0MDoic2hhMjU2LVlrNElzd21tanhaZVlxSWhUOXE4bFdKTUdvdmlHL1RmSTlLTk9Ic2w5eHc9Iiw1NDE6InNoYTI1Ni1HMXVObjRyRnJDR2dsU2tPTFpVTjNyQzFXSWNGUWpUMzhBNGxtdk5abDFBPSIsNTQyOiJzaGEyNTYtTm4wbzNaZlZaYm40OCt1aitqQzI3WnZ4V1puYkpuUXZvRDJJS2NjZFhLZz0iLDU0Mzoic2hhMjU2LWFZQmFYSG5xTmhEQmpYenNXTGpGNFp6Z2dmMUIyTjE3RytQc0MrSTVFUmM9Iiw1NDQ6InNoYTI1Ni1mZWdlUWtqcWhBZW5qaGJ2S3FuZmQwcnYzR29sSitVZUNQaGdCcVlnZUVvPSIsNTQ1OiJzaGEyNTYtaHVoODVnZHJlbk9IVHNQZ0l2MjFVaDB1dmNoK2JoZ0tqK3poeVgvL3pkVT0iLDU0Njoic2hhMjU2LWlwK01IamJkSXhxVWp3b1lTOTZlRzFuY2t2c0ltTFNQbHc5TzgwelVBUDQ9Iiw1NDc6InNoYTI1Ni1DN0dGeU8yWllYT3BJWUN0SSsvL0pldkw5d21tbUdUa2NlRUI4YmNLcG5vPSIsNTQ4OiJzaGEyNTYtcURzQ1M2TjZ1cGVPQnd4VW1wSVRrWjYxdUJBdjgwa1BocHZJU3didnpqQT0iLDU0OToic2hhMjU2LUp3akkveUxVQmU3ckdBdjM5dFJBeFhlTElBYmRYOXpRODYyMzFBNmpMU1E9Iiw1NTA6InNoYTI1Ni10eHRWdkczTU4vVUdvdUQvemt0bHpNRnJtbXBEdmlQQ3p0U1VkMHhhenBBPSIsNTUxOiJzaGEyNTYtSmtianh6dFVYVDlkS0Y3U1RsU1lNRk5PV0dhRmFxdE9MdURGTHZJYXVkQT0iLDU1Mjoic2hhMjU2LWtnWksrRFBHcitYNWszYnlkeEZMS3l3U1EwS0tDUXNyRzVBN3ZHTFhtdG89Iiw1NTM6InNoYTI1Ni1KYzFQbDhDZ3lZV3Z6Q3dUSkdiWU81bEpja1d2QkZiaTY3Tm9FQUNSdFZRPSIsNTU0OiJzaGEyNTYtQ3d0bjJuaWNjTVFNSk1KNjB5emhNNmhzWmpIR280Y2wrYjNGWDRteDNuVT0iLDU1NToic2hhMjU2LXNFenJGT2dDT0ZMTlBtM3JkUDhkVVREQzJ0Q3l5VDJHcXlqYnF1VDJGK2c9Iiw1NTY6InNoYTI1Ni00ejM5Ui9BY1Ira0R6NGY4ZndmUFM4ZnRoZTErOTV1andkdGI2WTNRMW9zPSIsNTU3OiJzaGEyNTYtQWc4cHAwMkRCQmRvWENiNXl5UTZtTlNyblo1ZnhmS3EwVU4zSFRrTmY5TT0iLDU1ODoic2hhMjU2LWxJZlpaZ2Ezb2FhTjhKRlRvSm8vdzlSTUlINmZlWEhXTmpmNnJHODhBZW89Iiw1NTk6InNoYTI1Ni0ydjJIamNVNmlPMlVVVCtJaXg4VEFPSlljdndYM2RjM3dBbTNPVEZ1YUUwPSIsNTYwOiJzaGEyNTYtVzhXTVM2a2lnQmRVS2hkRHVjSnpCeHhnRXBJNWxUQTRZdEgzUERiS0JBYz0iLDU2MToic2hhMjU2LWRkWWZLVjZJTHFJbDFpU1pJazJEMVJiWDlwUjlyVEI0b0Z2ZWMyNXhVbWs9Iiw1NjI6InNoYTI1Ni0yMTBtRSs0RzU0em5mN3F3czZtK2YxcXppVGdnNmJpZUxtcndlUWtlWmRrPSIsNTYzOiJzaGEyNTYtb3pvVHdvNVlDNUtoU2VyamVGWjVZTWtVdC8wd0x3bS9DbFZrOWZMUTdzND0iLDU2NDoic2hhMjU2LVJwbC91R0JzcG10cE1GRkVPaG5zMzFBbzZvN0xVMVF4VTZHTGZRU0diV2M9Iiw1NjU6InNoYTI1Ni1leTJ5UHE4T2NGdWJMeXpCUmkwVnlhMC9SbjFjVGtqRVA0Z05aQjMrUGE0PSIsNTY2OiJzaGEyNTYtd2FCclhCam52Vlczc2hndXJrK3RaL1F0YlpTRmRoVGp3d0doem5jNHpOcz0iLDU2Nzoic2hhMjU2LWFzT1hnL3ZWcUVqSUlBcXA5N3Q0VHhLOWdSRVNpRzFhcDZaMnBTTytrRU09Iiw1Njg6InNoYTI1Ni1Relp2SHdQMEF1RUVhN05SQW5KY053SFVOTldaWkNHRFBvUms1MEdRY2hjPSIsNTY5OiJzaGEyNTYtVUVWV29XZXk5UXNSTDIvR0xteUdVSk9MenpxbnkzczlTampGN3NyRGZwVT0iLDU3MDoic2hhMjU2LUVURWZ3ODAwS1pxWVFWL0t2SVVCUFNxZHNQb01pdVdOY01BVnRocXVWTnc9Iiw1NzE6InNoYTI1Ni1uNFRZMU9DaWlVdFBKSnJsVnJTcTZGdUdQNE5uY3R5OWo1Y1Z1N09mQXQ0PSIsNTcyOiJzaGEyNTYtOEdqcDRCRkpEZHdHa05NSGNmVmVvS28wcWVsazJzMVJjellLVXlpdVVZVT0iLDU3Mzoic2hhMjU2LVYxS1hGL05HVjA1Qmd0M0E3RkUxcjR3YlNrV21jZ3RYeTQvZmtLYzhwWW89Iiw1NzQ6InNoYTI1Ni1UTkdPVW5nRXhvcEx2WDhjbWVrRCsvSGc0UWxlc0ZNOThhdm00cW5WSE1vPSIsNTc1OiJzaGEyNTYtT0ljTktnUTZhZlhCaWZVTElvM1RpdXMraEUxMyszcUN5TEVHdFpHb2YrTT0iLDU3Njoic2hhMjU2LVhveTlDNWNWL2Zic1dQcnZOdXpqNUZoU3FmekVtbVAzdUc0NWYwYUVjY1E9Iiw1Nzc6InNoYTI1Ni1tRG1ZRDA2QUhSZ09sdG96a2loVFBFTjBjMUo0dVlvSVNsOGZuS3BYYjJRPSIsNTc4OiJzaGEyNTYtSlFzaDM4MlZNTWZQOGhUOVNLSUZTS2orUk9LN3ZFUlp6bmhnY05MNjBaWT0iLDU3OToic2hhMjU2LU4xR29HUzFXcWQ5ZHJsVHZjOVFNa0hhNThLc2JVUURxODA4eG1MWTNYaVk9Iiw1ODA6InNoYTI1Ni1pYlNJSE1CMnNLSzhHaHVCQUh5bk54ZnVTLzhkcXlDazdjUVk1aVhNOFRjPSIsNTgxOiJzaGEyNTYtZTcrd1FEZ1JydVpIM3drY3RkN0JPM08xR01ucTdNVWZOZGlQOE1keWVaTT0iLDU4Mjoic2hhMjU2LWRubEtBTmdUeWhQdllWa3lNNTJBZ0lGaHRaQmJQenhsaDZ6Ny9RK0J5d2c9Iiw1ODM6InNoYTI1Ni1HOFdKNzlwcnBMRU9rZHllajZjZ25TMDFEWlUraUI4bGdvR2tDWlAxKzdNPSIsNTg0OiJzaGEyNTYtZnFab0gvMHltaEcyNmJ6bm5lTEZxbHRWVzN5RTJ0L2I4MmE2MVFqQVkxQT0iLDU4NToic2hhMjU2LXAvM24zQjhxTVNrVDluUXM2RzJYVUY0ZDZDZzV6ZWhKbmQ2OHQ2UmhveHM9Iiw1ODY6InNoYTI1Ni1RL3E5N3hUZFN2VVJRazkyWGxoUi9pOGpsRHd5WkxBK1JxQmJCQ3cvakg4PSIsNTg3OiJzaGEyNTYtbFMvWlVkWmlpc0lWL1FYaWcwZ08zNEJKbEIwRHZhS0o1R1lmU2lXcEdYQT0iLDU4ODoic2hhMjU2LTdtdkdncXVzSVF2dXp0eDdsYVBvYnJ3Z09wNVBMMWk0VVh5ZkY0VXBPQVk9Iiw1ODk6InNoYTI1Ni1RKzMyc0tCZlFGQVdlV1Vja2xFNE1UYUxqUWhIRk5vMmtNeXYzZk1yM3BzPSIsNTkwOiJzaGEyNTYtUlVFMVZtNjBjd1diYjdZM1UxdW1CcGlmdEVSZml3OU5mdFpzRm1uZmRzRT0iLDU5MToic2hhMjU2LUFoWWp1THNQRXN0aFA0aVdQNjJoS1o5WEljNHhWekFVQzV1dmtqanZ1V1U9Iiw1OTI6InNoYTI1Ni1PWFJXNjBNR2Mxa0Zwb3dRMUNRV3RoaHJTd3k5SENNNzZwSVFtUG55ZnFNPSIsNTkzOiJzaGEyNTYtZlcrZ1dabjZ1bGw1ejdEd1hiYWQzNDkvdzZYa3hDWFR5d3RuZnB6TUxpRT0iLDU5NDoic2hhMjU2LW1NenhVeWdYWkQxQTdVMEhpcmplaExvYzdBOFpUREFmdUhQbE9PSiszTkE9Iiw1OTU6InNoYTI1Ni1MVEVjelByKzVHMXdFT2NhdUpXRllSN0lhazZ6U2l5SVZLTDMrZGxLKzgwPSIsNTk2OiJzaGEyNTYtcE5RZ0FYM2g1MTMrN1A0ekkxZDlsSjFMUUcwTEtYT3RaaTlrZ2orVkxFcz0iLDU5Nzoic2hhMjU2LVZGVWw2d0E1MFMwVHNzSzdmYitvOTBENm5xd1hwdmJ4dEU4bXNoT2toNXc9Iiw1OTg6InNoYTI1Ni10ZStDMkhDV0NrSTJyWGxpTjlVS1RyU1VTKy9DZkFENkpLTXU2ZUlWWW9zPSIsNTk5OiJzaGEyNTYtZVh2YTRLUkV0T0dpbkFxMGVCZXJUdWxqMHBheVhwOHE5SjFkVmVOdkJsbz0iLDYwMDoic2hhMjU2LXY5cjlmUzFlNGtFT28vYXFXSCtrWXo2LzAxVExDdmpoVnZZWEs2WThmRHc9Iiw2MDE6InNoYTI1Ni1CMURNN0VLbTNqYXIvcEE1c0N2VU9FME5jUDJmSnVqMUZza2RWOWw2SnF3PSIsNjAyOiJzaGEyNTYtVEo4MXlIOVlUOWNqLzVrOGVYa1F3Rkx4TjVVQVN1YVpObUtRcXpIY0tpUT0iLDYwMzoic2hhMjU2LU1EeHRHRnBtYVQxTUVrRjNvcU5pb1I4UndNeTViSzVEL0VkTUZ0ZllRak09Iiw2MDQ6InNoYTI1Ni0zWEJGZUg3d0FPZnZBbGhkVTdNOVZjNzA1dEovQkVQcmdTK2xCc2xZQ2E4PSIsNjA1OiJzaGEyNTYtN0pDRERhVXhRSjNVaUZCazBERW9uVDFjdG8zSFRQODZJc1NzbDNBTGVrdz0iLDYwNjoic2hhMjU2LWZmbVZaUGp6LzhSclhvc3BWcTN6bGIrR2RZQ3NtUG1BaGFNVGlja0o1MjQ9Iiw2MDc6InNoYTI1Ni1aV25vaytUTE9LS3B5ZHUvWW94cm9JWGFlOWtnYUY1cXRvYmNtVEFrbHI0PSIsNjA4OiJzaGEyNTYtU0FNRFRLTEpxVHJHQ3VRakNZUUUvYUlBMThGLzR4OUhINkM4ZUF3NmtsYz0iLDYwOToic2hhMjU2LW9yRmdldWIxaEZsWUlYZEo3ajQ5VmtOcHRBeWM3L0FNbnQzc1RDSnJNZzQ9Iiw2MTA6InNoYTI1Ni1lRVNWZW9jcjFDek9NVnh3cWRYVWNjSjB0RzFBTTJka0Yvdks2RURqOHUwPSIsNjExOiJzaGEyNTYtNW8vMWU4S24vUUc0MWV6ZjhuTDc5ZC9XdFQ0M00vSTdxbHBXWnY3b2JlOD0iLDYxMjoic2hhMjU2LVo5K01hK3h4ZGwzbmRSbWZ4cGRrcGJXazh5L1QrTWpqL2NqM2NyL284L0U9Iiw2MTM6InNoYTI1Ni1KbG1QRkFpOHNqSm9UNEZsbjduNGpCeWxScmcrRDRNdWc4Qm1TanRkdlhJPSIsNjE0OiJzaGEyNTYtVXZQNVdyWTRYNzR6OUhSMUlVYjE0REpwWTlVK3dPUEVNdHRVZVgzWjZjTT0iLDYxNToic2hhMjU2LTFTVVEyWkNGQzI3dFQxVk11VEk4VTdxM290aThjb2dYWHFhYTNpUnpIQ3M9Iiw2MTY6InNoYTI1Ni0rcG5tZTIvaDkzZ0Fjd3lFa25lZWNEYTRscjY0YXlsbHNnKzZoSlRySHAwPSIsNjE3OiJzaGEyNTYtUmYwSUV1K3ZGU1NyRkpscVA0ZzY0Ri94ditEZSs4ZkFVa0xUcUpjaDArTT0iLDYxODoic2hhMjU2LThWcTYzNnRUTFdjQXlrTFVqZjR6L0EvWHpFUkNnQ2pzSThEQWNySlA0K0k9Iiw2MTk6InNoYTI1Ni16SGQ2VHFyVk03R2M3NDdCeDk5RDZ0cWR3MU9zMm9mdGNlZm1zMmQ0SFo0PSIsNjIwOiJzaGEyNTYtMTBmMm9lbjlNTlJjclQwU1NaUFNWVW9kTmhucCt0Q2VMNVA2VUFaWjBjYz0iLDYyMToic2hhMjU2LW1jM2p1ZVJwQ05tOUNmU0VxcElqMkYyWk54WUNnak41MitRY3pnRW9OQlE9Iiw2MjI6InNoYTI1Ni1oaWp1Z1p3K1FCSVY4cGhIakMyMWp5MnZUS2dabWkrTHBJYzhkbmJ4RGVBPSIsNjIzOiJzaGEyNTYtaEFyNlA0UnRHUmdtTE9ZdmM0cHFRdHZ4bllMQytIT0tGUkdNZ3QxcmppRT0iLDYyNDoic2hhMjU2LXZ4RjZRTTdKTmxRUkJ2RjlJdVN4c2VKWk5BYTd0MFgyK3dSMjl6eHJKUkE9Iiw2MjU6InNoYTI1Ni1XYWg2KzJ1eGJWYkI5bnc2dnhLYktsOXpTNXJlVEpRZDZweVZwUXFMcGJRPSIsNjI2OiJzaGEyNTYtQ2g3dHF5SU53Y0N4TlFDM1dxcXhna1VkWkNXcm9yTkpjdXdzb3N6RmovMD0iLDYyNzoic2hhMjU2LXNlNnVXSGEreEt2dmNHTnFUY2U3Z2pCVDJGeC9JUU9MdTRMZDRIZEppc2c9Iiw2Mjg6InNoYTI1Ni1Ud25VMW55T1JEMjRuM0lxaTJtK09mS2huYytBWDh1V3Z5N3oyU0J4ajV3PSIsNjI5OiJzaGEyNTYtV0hpMXBheDE2TitlYjJwQmNCTzNCckJETmRGWXEyeTRrY1A1c3g5NEsrbz0iLDYzMDoic2hhMjU2LVJEd2doZExXSjE4RUoyeTJVQWxWY2l3UHo1Z1IvVHQvdVBNOEQ0WEFTTTQ9Iiw2MzE6InNoYTI1Ni1QdDQyODgyUkw5YklwM0gzdUxRc3VzZTY5K3dDT0ViNzdybGtFYThmN1VJPSIsNjMyOiJzaGEyNTYtZ1ZET0FBTXNCMjY3czhZam54WW1kN0FlLy9iY1VFWllnRVNxbW9BYXo0QT0iLDYzMzoic2hhMjU2LWMwdER0aHdCbk01YmU5QnBLaDg2TUJEQ1ZuZm0vUXVOUnBJODNIYzlvYmc9Iiw2MzQ6InNoYTI1Ni1MUnI4WHllSm54UXJJNS9yS0E0RTBZT2NheDN4ZEZsTWZ1SW5SaUE0Zzk0PSIsNjM1OiJzaGEyNTYtdVBuR1NYc09jRGtaMHdwT0l5ekhzQTJUSjA3YzVoNStIYXpudGE0WWhXVT0iLDYzNjoic2hhMjU2LUpoRDJwQThRV1dGOU5uQ01RNW9ZZkt3WGdnZk5MRktrM2tCaXpOSEdRS009Iiw2Mzc6InNoYTI1Ni0yWjh1alM2cFhVNnZtWlRSZ2ExOW5FMGRoUFh2MWlKWStDNzNLRFdqa0NrPSIsNjM4OiJzaGEyNTYteXM4NURjQ25UYkgzbWNnOGc4WExRdGtkS2tVREpYb04ycTdCWDMzazlYST0iLDYzOToic2hhMjU2LVYzL3p1dmZxRnNxRnFWbDY2SGFERDdtdVRXMjFFK0NEeDhPMWN2c0JGcXM9Iiw2NDA6InNoYTI1Ni1aS3VjZ0NPeTBvdWFieklhSzlqWlBKVkwyVEk3bTdpZFI4UCtLdFRZdjNrPSIsNjQxOiJzaGEyNTYtWjF1VFBIV0VJc1B4WmVqV0t4eUpabG1MM1F1Q2gxZjBEMExEQkFqUm5FTT0iLDY0Mjoic2hhMjU2LXVWQWhiM2hmc0M0WGQ2Y01zY1ZEdXdaRGEvUG9yaWwzaHBQT3dwRFdDMGs9Iiw2NDM6InNoYTI1Ni12ak4wVm16REVwOXVIKzJuc29OSXl4VURXRnVKNTR0WmpzZE9zNWhsU0w4PSIsNjQ0OiJzaGEyNTYtVG1iWS9qalBYVXhabzNkeWJ2L2FVNzNwcXRJMm5WUFlIaTl2V2I4MGVRUT0iLDY0NToic2hhMjU2LTNzOXhJVk1ZNnovUmVZUVNpQnA0cEx5RXRNSGZmejdyMXprWFBtL040dGs9Iiw2NDY6InNoYTI1Ni1EQjFFaEJVSlM2WDN4ZEN1MFRndmhLSHowaFg4WG1iTjhYRFZqdFppZjFnPSIsNjQ3OiJzaGEyNTYtS3hEalAzR2VLbVpWTEk5WmZPR28yc1NPRS9nZFNwMlkyM09JMlJGRDdnVT0iLDY0ODoic2hhMjU2LURMRld6WCtLZmRrRy9RZzR1cm4wSWpiNnJjaU1TVDZ2bHJRN2hyNzF6SVU9Iiw2NDk6InNoYTI1Ni1rbG1iZGRlWWVNQzVYMlZXa0Z5ZkRaenBqcU1aZDVrS2JWN21nN1VpZENnPSIsNjUwOiJzaGEyNTYtQ204OTVvRkdhL3ZUVjJ1OXRyZ1R6WEdBVVJlTmQ3Q0pvOEYxa0QrYkwrbz0iLDY1MToic2hhMjU2LTJnVmhVWUxvS0c3TjNyYVU2Mm1LM1BrUXQ1ak43S3F5enJ4MXM3czdzWlE9Iiw2NTI6InNoYTI1Ni1yWmhyT21kekpUbS9FSXEzUlJCSXJjb2VvT3d6M3NmVHFSQW5DTWlOcnB3PSIsNjUzOiJzaGEyNTYtMktZdVRtV1o5aUNwZUpWVC96eDR0UG5xamlyeFlwNUdxbS9veG8rbjZ1Zz0iLDY1NToic2hhMjU2LTlPTzZlY3FibkYydmJxc2d6ZVZKRWloVVhEWmk5akU2RERKQ2JQcHI2VGM9Iiw2NTY6InNoYTI1Ni14cG50TkZPWldCcE9ZYnNWb0kySzYzMjJNK09kWmtmcFJsZVlLMnh3U1RJPSIsNjU3OiJzaGEyNTYtZ1pDYXJEMzlRSTBjUDlhdVErWklWdFVlNXhkTjNybHM5Y2o1c1czaFlHRT0iLDY1ODoic2hhMjU2LThrNFJGNWR5TVVNRkhOVExhY0cvSXJNdXh3a01qVDJkb201SjlOcnZ2bXM9Iiw2NjA6InNoYTI1Ni02SUYzakxHMHN1WVBnMzRWOGtiR00vSDMwcEQrcnJRK0RhTGkwUENwOFJBPSIsNjYxOiJzaGEyNTYtSnZuMTF5S2lZUXk2WEdUUTJiRzlNSXY3RFRXelFoYThta0FkZVNYZGxVMD0iLDY2Mjoic2hhMjU2LWhsV0hFYXNybExyMmI3ZndrYkFiazAzSUdRdVluK0FqMFlKaTJlRllVOGs9Iiw2NjM6InNoYTI1Ni1MbHNiWFE5Rms2c0hQZUQ3VE1tR1c3NVJiUDk5ekVsZVhwSFZSY3dxVVhJPSIsNjY0OiJzaGEyNTYtMm9EdFFteGJsbnYvczVwVmp4QnlOK1Zoa3RiQ1B4WldDNTRFZ0p3dFBkND0iLDY2NToic2hhMjU2LS9NbXBEbWtRbXpGMUY4dXREbFQ5S3FtdEpzb3JDN0lnNDllTi81K2ZsNmM9Iiw2NjY6InNoYTI1Ni1yM3ZtSlN0akRnYkpvWFFad3hTM0ZoVjY0YW9FaEhuTXk5M2c3M05vV1BrPSIsNjY3OiJzaGEyNTYtRnNLRjEyRi9WaTV1NVExdFIzOVEybUpKL3VjdWhxcThSSFJFd2tEaUh4bz0iLDY2ODoic2hhMjU2LWpKZ1VvZlM2UEErVXFYVVZiWERTbm1sak5vQ3NDeUhUMDJNZHhobWkrOUU9Iiw2Njk6InNoYTI1Ni1uWjJTZmtzUkJJT21FUEZmaW93QWZsRzErMjFROUFGbXd6NzdMTmpZWkI4PSIsNjcyOiJzaGEyNTYtUVZaWHpFY0tHTWJOaGV0eDJsUDFsWm9ZMkZzL0wwZTNFb05PTWg0UnRxQT0iLDY3Mzoic2hhMjU2LWFhYWkzeHhyV0l3QlNZTkZNYi9jaFRjRDRFdCtSUjZWaGNmQXZVWW9iMk09Iiw2NzQ6InNoYTI1Ni1GcXhuUG11bHBqUU1TSEVwNjZVbE9NM05VNjAxd0hlOXJ2ZlNzKzVzOUNVPSIsNjc1OiJzaGEyNTYtZ1hDb1RVWmFnbVBHRWJJOGd5RWRUYkpuQ1ZUNEdKaHRHa1RMVnZWTWJQUT0iLDY3Njoic2hhMjU2LUtoQnllZVJ4MEllbFYvNWJTRWRFTHNoWU82RGJGTVpzYUQ3QmxkNHI3bDQ9Iiw2Nzc6InNoYTI1Ni0yTERodE41UjJwNFpGRlRtZkZld3pYZXRCbjZMNkcwS213Q1lBcDlGS25zPSIsNjc4OiJzaGEyNTYtL0RPeUpFcVZSdzdRY0E5RHh5ZkRBdlpodUcyWjFLNTR1bndrWVVXTS85dz0iLDY3OToic2hhMjU2LTdzS3kvYkYydzA4ZWMrSmxERDlnQ3gvYy9iR2RjMyszaUsyMDhWWmJmSlE9Iiw2ODA6InNoYTI1Ni1qeTZqMlNzbDNlSlJpYnpnUUtrcGRBZVJzS0hpNkFKZThsSmNQays0a2lFPSIsNjgxOiJzaGEyNTYtT0Y0Ly9FWlN4VWRzYk1hZVMwOTNhcHR0TXV5bEFkeVYxRm1ZMytieEF6Zz0iLDY4Mjoic2hhMjU2LW1sZkpGWVQ4N0tXaXBHL1JZUG1jUEFzalZjTGdwVkpNTDU5ajArSDc2ekU9Iiw2ODM6InNoYTI1Ni16YVNQdm5YWWFzb1Fob3JOb21GZUE5QURlQkdsOXQ3VkhXYkVhU2RoU0pRPSIsNjg0OiJzaGEyNTYtUGhsYmNQR1hhNjNTTk1RYm5kc3A1Vi85RHpXOTUxM3c0ZUUvdXlUNW40UT0iLDY4NToic2hhMjU2LXlTY21RUmZ4UG9ma3NOa1lrUjFadTRLYnJ1eG9MWEh1QWIveitPK3V3MEk9Iiw2ODY6InNoYTI1Ni1ITDkxS0tIblQwN2laSkM0UitFNzloVDM4SE5OeWprVXVlazVhbWthRFNZPSIsNjg3OiJzaGEyNTYtb29aOFFMWUVMaS9nc01YZytmVXFNT0pZUTBTTmtHYWpYWlpKY2FIRzhmWT0iLDY4ODoic2hhMjU2LTdzZVk5d044WnRoa3lpM1FtOEJ1OWVKL1dlN20zTjJ5dmI3TEFMNVl2VU09Iiw2ODk6InNoYTI1Ni1JNlhmQis2a3poSVNhNGJDeFRjMmJCZVZvZnNzYXBqR1kwcUlaUEhjbDB3PSIsNjkwOiJzaGEyNTYtT3RrYnpDd0FsRG1HNDc2MlFwd1NmOGNwdFEyaTl3dCtkalhGTUhDb1gzOD0iLDY5MToic2hhMjU2LTY4MG05bFFEbzJGdWl0WjJPVEdoRzlUZys1SjcyLzNDQWV3c0gvd2VhdFk9Iiw2OTI6InNoYTI1Ni1md250UGQrYWplckR4SGJwcXNDR3hoZUFKNGVnbUZKMW5PMXBkd0NvTklFPSIsNjkzOiJzaGEyNTYtZkdyRmNaUWtHV243VGhZdVNYcUcvdStWMzNkU3ptaGc0Z2ZmZDhieWJEaz0iLDY5NDoic2hhMjU2LUJKb2hZL1lpVHVhYUF5UEF3WU40bFJueGZKRFJ0TmJvWHZnR0F2NEdlcWs9Iiw2OTU6InNoYTI1Ni1MQ0hxR1Z5TlZrODhYWTdQaHRUOW1Dd0xPWlZuN0FIQi90VVgzZjVzVFZ3PSIsNjk2OiJzaGEyNTYtWWp5anlDbXU3R2l5MlRYd1ZPT0RaWm1nZFFPN1BXeUU4d3BxL1pVVUFuVT0iLDY5Nzoic2hhMjU2LUQwTXRmWVExemVoL09KUU1EM2R5Q1hZblZZNm03NzNEQi94b04zNGE0bmc9Iiw2OTg6InNoYTI1Ni1vcVpaMGtVRVE5dXk2Vk16THRERnJidTBuWGNwRzdlZTdRL3FBUlJoQjhnPSIsNjk5OiJzaGEyNTYtdFdjU21HQ0lBYnFYTnRDU05sRXVyeTlQemcvMTBvN2xTd2p5MER0aEs0cz0iLDcwMDoic2hhMjU2LW5rbGpIbGVocURtWXRIaFYreVA1MUE4N2xuYVFpeVhRT1AxSGNrNmlxZTA9Iiw3MDE6InNoYTI1Ni1IYmg2clhLTUsxZ2M4NFRudm8veWNLT0U4bEp1SHVEKzZsa1ZPOFVrUy9rPSIsNzAyOiJzaGEyNTYtK0pzT3NSYjFTb3dIS1RGd2NvdDc5d08vNVNOcVdta1FXWDhJS1lScEd6RT0iLDcwMzoic2hhMjU2LWZlcFVVbGxTK2FNNy9vdE53N2ZRTmdNSkpCZDJtUlRnalN0aEFrS014OFE9Iiw3MDQ6InNoYTI1Ni1aUGdUZHE4aFRpaE50bk9JOGkyZzk5Zkl3QWZ1MDdnVVp6NjVsUC9MNlRZPSIsNzA1OiJzaGEyNTYtQkdwUU5iSHJBcGgzeEUxSUJiZHV6VVlqZm9MdTRJMU9URlk2V2tERG1pcz0iLDcwNjoic2hhMjU2LXFCZVZYKzMydlprREVPSTVZVlJsMEpRaDBvaDRQbTJEdFMvOW5BcGdYczA9Iiw3MDc6InNoYTI1Ni1mSDQvNFNISmZVQWNZRkxCaEp6M3I1UEc1YkpFVWNKTlpvWlRERWlHcXBjPSIsNzA4OiJzaGEyNTYtUlIzREZUL1VKaXhrL1VvMHgySGdwTnRkL0NNNlpPQmN2cEVYbEk4WnJKWT0iLDcwOToic2hhMjU2LW1jeEcrYVFOdmZGbmpRV1RsNzV0bXlTU3RFcFlVNXhzU3o3cWFqUGhvWW89Iiw3MTA6InNoYTI1Ni1mTHlIOU1SMTBweHErM0hsQzgzK0UxZG8yK1lSaStEUG8wUU9LZUo2cGVjPSIsNzExOiJzaGEyNTYtLzRJTTFtT2hOcEsvRjU0RS85WEFUcWJxVVdJTjZPNkZnODdBWGZvNWoxUT0iLDcxMjoic2hhMjU2LU1KUGZCOXhvd3RoR05XUzJodkdRQTAyQVRuekt3QTJPa0NGRXFUbkxxOFk9Iiw3MTM6InNoYTI1Ni1tK1l5SWQ1U1h5T3RYeVg3dy9wdHNXWGxWUVlIQi9TbEZXSU54VXpvRzVNPSIsNzE0OiJzaGEyNTYtZlIrc1lZSGQ5V2R5RnVsNUI1RXhubmZkVnhLYVB4RnpNdlFGdjdoN2p0MD0iLDcxNToic2hhMjU2LVI4V1kzcmEzeHRJU2ZzTmpWSjZjQUlBUERudjA4azFCTnpHdkJHM2lZdk09Iiw3MTY6InNoYTI1Ni1IaXJ3emlwQ3ZORnUxK2QrM2R6NkwvMDRlWnVVYVFKODljeklTWnZ6ZWc4PSIsNzE3OiJzaGEyNTYtZ2dKdmhsS05sNEhRMkdBNDVjT0laRzN4WEptNDR4QUNSUTNkVFNOOG5TVT0iLDcxODoic2hhMjU2LWxBYnh0ck95V1hWcUY0RnlYc2prZlB3M3MwcGhERDBQSG4yUHlraml0NGs9Iiw3MTk6InNoYTI1Ni1KSTJaMS9RWU9WbDJsL0lGWHRjckloU1EvaTJnd2NWOVN1QWhQbmVCVFUwPSIsNzIwOiJzaGEyNTYteHpDZWlPeGtHUTczNk52V0htTk5lbVU1MHpJd1o3ejRseVkvZHZLQmpZcz0iLDcyMToic2hhMjU2LTl6V0ExUHlObkw2TUY5VmFPVVZuUkNDQTh1MVRmbkdHK1RSbVBxbHdReDA9Iiw3MjI6InNoYTI1Ni1xQVFzTk13SnUxYzF2TkE4Y3BJempYZEpzV3R4OFBqVk1PaWRoUDVjdHlZPSIsNzIzOiJzaGEyNTYtT1JBclVITDJGOXBGQkhKZW9tWEM5YmEwcjEyMUtLNlMzQ0p4Umh5QzEyST0iLDcyNDoic2hhMjU2LVJveEtqbUt3NC9PVWp2RjhhdGYxZGdmWTVxdFFMa0E0SG1PWHBOVmVKdTQ9Iiw3MjU6InNoYTI1Ni03c2Vtbm5iOTBjS2dONVB4UFBPSjJQTlpJeDFSb3AwV21GQ2tYVzJtTVlrPSIsNzI2OiJzaGEyNTYtaTBCcWpscTlaTzRscStxblE0L0ZiTU9IYit2QXhQb3BhUk1id1plVEZSbz0iLDcyNzoic2hhMjU2LXUzNGt1YjA0VjFMcWs4czVURGdvdW5UMUE5VlRUSlpWeSsvRHJtc2pWSk09Iiw3Mjg6InNoYTI1Ni1KWDl3aWN3aE1mSVB2bStxdW5WeE1pRUhnYnVJOE9UUTlESGsyUzQ3dzlBPSIsNzI5OiJzaGEyNTYtcjlJNE8xUmJmQ2F1eHpRemtyaHFtWkcxb1l2NUJwdnptcnVpL0JlM254MD0iLDczMDoic2hhMjU2LWxDTDdyNTJ3RmltVXZVT0s5RUpoYUhyVHdlV21kSmFhOWVyR3o0K2NQdmc9Iiw3MzE6InNoYTI1Ni1HU2ViOFlYSkQ5T1BzS0RucGwrUnZCNW1zaDBJNlJndzZyZG1ETlJFTUpvPSIsNzMyOiJzaGEyNTYtTFdwSkpqMEpSc2F4RnNiSlNjbTBzNnprWm0wRUdseDh3MmlOdDg5aGd6WT0iLDczMzoic2hhMjU2LVI1Rk12eDdVQWExQ200dU1FRGI2MFY3VmY3emoxVENMMmtOVGlVazZweDA9Iiw3MzQ6InNoYTI1Ni1wQ1FKRHVpdm80TlAxOFFKMmdWS0NJQ1FLdlJUWGNVVnYwcVBUQUdiSTRZPSIsNzM1OiJzaGEyNTYtaFkwZXJPUlBicVFTT0MrNnBoSmRqeWtWaXVuaHZhTWtEdXdzbWZHcW00UT0iLDczNjoic2hhMjU2LXpZTEZPdTNId1BBbVNuVGdjTld0WmNMVUJIVG5RY0RTK0FUb3NieVp1bDQ9Iiw3Mzc6InNoYTI1Ni0wUWgrK0JFV2FhSVBZSFhxZ2xTQlhOWHJyZnpLUnd6VDV5am1TUVFtRGQ0PSIsNzM4OiJzaGEyNTYtVHczcHJ5YkJMNTN5dXdTcTJVNGZzdzE0ME5laGFXRWdNSjFJWUJXNW5zbz0iLDczOToic2hhMjU2LUxjenRpdHE5ZGdGcXh2eERPc0xDVHRFc1R4amhJbzUzTGhGRGFGT2szYTg9Iiw3NDA6InNoYTI1Ni1CaTgzemdwME55Rk9UalNHbUlDbG13cUxMSUpmV3lsT1J4UG9qczlFMnFzPSIsNzQxOiJzaGEyNTYtb2xkVmN5Q212ZndNNEJPTC9Cbzk0SlREMDhnTUg3RHZOQjZHOXlBbjR1RT0iLDc0Mjoic2hhMjU2LWZzTzJVckNWU0loQ3dMSlFHZUQyNTlZVEFqVkozWk9ETi9KTkhnTVNwZG89Iiw3NDM6InNoYTI1Ni1zTWFqck44WXVOTjJQY3JZOE9hS0JnK1duaVorenpjeGpnTUx6MnEvSHE4PSIsNzQ0OiJzaGEyNTYtRWR4QzhTbXd4L3dSd1VYTVFQaVBVc0k3MEtNZXYvVU05K0xETEVMcUdqTT0iLDc0NToic2hhMjU2LXFOOUQ4V1lQMkZZWVBPOXVjRjNjSm5kTXM1U0RUMWpsQzJ5bW1YT1FwbGM9Iiw3NDY6InNoYTI1Ni16ZW96V3g1MzFBcCtDcFQyNVFjT2g4N2R2NW9ObzNjWGpmTFNQbHJneERzPSIsNzQ3OiJzaGEyNTYtRDFXN2ZLYTdyQUIxNW5OdG1hQ2NTS2dlMElYMW9Demx2bW9tTi81cUkxTT0iLDc0ODoic2hhMjU2LXNBZHFhTG1UTzZKd3NpM0xlWU9ieis5SjJyZlhUaWljeU9oYzJ6TElQODg9Iiw3NDk6InNoYTI1Ni1KeUFIdXo1QTlWQ1dxMERqc3doSmRHU1NCRmQ0dS9OY1R6M1FNaE1SNnRJPSIsNzUwOiJzaGEyNTYtbnpnVUpSR25vbGFONGFuYW9mUDZwTGFlV0I2YUZyNnRBNGo2c3JKNk5YVT0iLDc1MToic2hhMjU2LW04Z0IyNmUvTGZOV0MwQkZHUFJBa0xUbXAxTUZETXkrNXRBeXhvMmtJN2M9Iiw3NTI6InNoYTI1Ni14VnFXMnMxbmErSjNveWdmVCt1OHQrY25sV3NWQ3dJbmVoTnlVcGNTa0tZPSIsNzUzOiJzaGEyNTYtY1VRTmoxVnJVamwyOHZzQXNoZ0hJVE5xakdIV1hJdmNkYkxNVko4TVRqcz0iLDc1NDoic2hhMjU2LU9YMXFyQ2xMbWdXU21QZGN1N0FhOVZDSHNXRUFZVk0yZ2Rrd2lCRVhnOHc9Iiw3NTU6InNoYTI1Ni15SjBQaDVYWjE0L0lPSmdFcGYxbDVOTFVhblVkNm8zVUxMVER3R3NSeFZFPSIsNzU2OiJzaGEyNTYtYU5wdXFiaXNFdVBRbVJFMGlsWGFTTUx4N053YmVsUXhrcG5XdHg1elBuVT0iLDc1Nzoic2hhMjU2LWQvTzdDbXZlNHlFYmVZRGtNdDdJTkF5WHR2eCtFeURvT0VlbkgrL3MyOGM9Iiw3NTg6InNoYTI1Ni13ZjVqYUkzVEpWSUxRb09NZ0YzT284YktIMkhwSm9ML3FwcUhEQlY4N0hFPSIsNzU5OiJzaGEyNTYtVjRaR1MvdHE3SHhLNTAwaFJSZ1o1S0FHeXdCMFkyVExsQU1GTVFUdG5KMD0iLDc2MDoic2hhMjU2LS9yTDhKQmcwQkk1dWdxT0ZSclZjRFdLWkNGaGNwNHJLbE5xdnA2ckJ6aWs9Iiw3NjE6InNoYTI1Ni04YkRGT3JKakhlMi90cHFJNVFUeFh2UU1oMHJxMjhIVmJ4alBPWkUzRis0PSIsNzYyOiJzaGEyNTYtWmNzOWZ1SXJJNDl5ZXJMM1hYbHJUb2hEdkNCZnRJMWROV05iS1F3dFBnRT0iLDc2Mzoic2hhMjU2LVMxdENrQ2VWa1FjWkFDbEE5RXJHOWsvOFZrVzd5TXhHOGpiSFJPL2I0UWM9Iiw3NjQ6InNoYTI1Ni1nQjNKZHNDLzBvN053a2VJVXp0N2dBQ2NzUmJIdG9oak8zbjRLQmpNVzZRPSIsNzY1OiJzaGEyNTYtUUF4YXQvaHJjaWkyTHJVcEtnTGtVYlVyNE5mZ0lNc0d3aUwzZnAxeWhoZz0iLDc2Njoic2hhMjU2LXpsdHdWRjY5QWZxUzNwS2hscjNIWXA5OUEwM0JINEpkOTdZKy9yRk1FL0k9Iiw3Njc6InNoYTI1Ni1vbkZHcmR5aDJicnJsRjhEcjloRWpScnZpdFRJYUVyU2dWaDg4TUVaclYwPSIsNzY5OiJzaGEyNTYtU0R3dUxZaDFyZ2wxQ1IzaWgyMzN3Q2VHbXF4WGRFMlJVUDZZMUFwUVgwST0iLDc3MDoic2hhMjU2LSt3Q2V1TGtKWU5zZnE1MURZcVJPS2MrQ1Y0dmtLYmxyalZSWHZuemZPSkU9Iiw3NzE6InNoYTI1Ni1vUzlCM0g0aDhYVFJhWi9HSjhoTld3Tk9oNHFzMTJmSVlyL0crL0pwZWswPSIsNzcyOiJzaGEyNTYtcHhuZ0dyQzdERlpSRjFLanRmZ0pHbDkzdUhCR1VITm16S0xDbG1STjh5QT0iLDc3Mzoic2hhMjU2LUsvamJkeWI0YXlQOWsvYnVOWDNySXBlcmFrUjJ5S2RxUGdyd1YzSmFzNXM9Iiw3NzQ6InNoYTI1Ni1mZmtHdWhOc21Kd0tQb241U3B6WUd4L0dVWFJpV2h0ZUl4TGNDaVRYUUVVPSIsNzc1OiJzaGEyNTYtM3liejNrRzdla3NOeXVmdWY5L2ZrVGFpSkV5VVl3dkNNSGNPbWI2ZFdWOD0iLDc3Njoic2hhMjU2LUY2NW9xWDVobmd2bVpzZ3dkcXNnajg3N3FRLzc4VFAxTWtDNktLMDAyRXM9Iiw3Nzc6InNoYTI1Ni1jZ2p6Sk83bWw2OU5xY1QvQWxuazhQMHZrSEphekVhc0x1ZHl4VEpmUllVPSIsNzc4OiJzaGEyNTYtdW1QUnk0UjVvblFIdXp3Q2g0L0JObCsxUlYvdmZ0c1lWU2RDL2xBaXVCTT0iLDc3OToic2hhMjU2LVh4Q0oxYk1BTDZWeTllNlF0RGxuZm9SNWF1Y0FHWUExZ2R5b3hkK3hMRG89Iiw3ODA6InNoYTI1Ni1PR2hVK3FBeWpXVVN5UmFCVjhYcG11My9ZdDY2aXR5RkhVZWFVS2x6QTZRPSIsNzgxOiJzaGEyNTYtZTY0TmdONTdTbHZ4Sjl4Q2ZuclQ0ODJqQlRSQ0VrVjRnZUd2bzI5Qlh4ST0iLDc4Mjoic2hhMjU2LURmVkFNM1FwY2JaNFJkcHpLMHN5dkE3VXgzMGxhd1lySFpSeERLcVBpSFk9Iiw3ODM6InNoYTI1Ni1ueVBVUzVqTFR5NGNseEtJVis1S1huSXg3dEZEVnBqWW1GS2dCU0l6bkxrPSIsNzg0OiJzaGEyNTYtZENzeWhiWFRqdytxa3lDTmZLNElsZUF0d0VTYkMyTWMrdW9nTHZicGlLST0iLDc4NToic2hhMjU2LVVhWmFxMFBCZllUL3RYUHlCWjFqaVc1cEdFcUZwdHdiUjU5aExpTnQvR3M9Iiw3ODY6InNoYTI1Ni1yUWRMU0M1YlFNaWRHb3NmZ0VqTXd0ZEI5TmFiTXdPZGI4N0pmeHJFQWpVPSIsNzg3OiJzaGEyNTYtNmlYWHFncUVTR0VLbnU5NzQ2dzljdzBHRXdiT0xIWCt6eml2NldaQlQzZz0iLDc4ODoic2hhMjU2LWUwTlBJMlE2USt1V2lueGRWOUpOVlBTRWIrSEhGbHFwcGN3SEt1dVpnK2c9Iiw3ODk6InNoYTI1Ni1WL2RsK3NYR3pTaXFraCtEQTArWGl5OWxUazExRlZ2aTB3M2o2eXhQZnRvPSIsNzkwOiJzaGEyNTYtMzBHcDhXV3AvaWV4c2FYMGV2REZEK3FVdW9hU2pYY0hjTERBZ2RGV2czQT0iLDc5MToic2hhMjU2LUJtdE9rOHowdEU3bmIwTlpkdlZnQzd2aUhVWStWdS9TTVRFZnZ3QytHWlU9Iiw3OTI6InNoYTI1Ni1KNWdraU15RXZIWDJLVEdpUTlMOWNFbDk2UVk0OFM4Ym9tcS9RT0Q1d0lVPSIsNzk0OiJzaGEyNTYtT3hDd1p4bkhWNzh5Y09YRTBOMDZ5dTdPYkRwNEwzMkROUWx4TUZabTU0RT0iLDc5NToic2hhMjU2LUxraWx3N1RyOEZtMW12QUpvQVA0YUxkS3pyUlFoQUp0MGtSL3cxU3dYTTA9Iiw3OTY6InNoYTI1Ni0yWkpScTltNHdsRjRDTmlMZFBTZGRZS01hMkd0am0yOFkxdW1wVjhUSlBFPSIsNzk3OiJzaGEyNTYtbnlZaHpSZ1FrdHcydzlTRnhUMTIyVmxBMXBKRTk5aDlkYTJnaDU4Zk9QZz0iLDc5ODoic2hhMjU2LVB0cXhmYTJRdkhrL0xpVWM4RDlhWWdUMWhPYUlVSFFvbmNOSGtiZnFOWkU9Iiw3OTk6InNoYTI1Ni0wMlhKRWFoaW4xWXpqYS9oaU1VU3ZNdXh6S3htWDRJRXJqMGZNa3podFpZPSIsODAwOiJzaGEyNTYtUUUraklVSkg2MkgxNG1EbXF5aENPam9wQVM0K0NoZXg5V1JUNS8vQXBQcz0iLDgwMToic2hhMjU2LTg4R2xuUEdVNXJrZ1Q4TFBZMzlUd0dKeEVvU0JiYkJkaGtKT3ljSTZDQlU9Iiw4MDI6InNoYTI1Ni1CWktzTXNLRjVQNGR6UHdHbnEzNlloM212UG9hd2IzVmd1Z2x0a0lDNmxZPSIsODAzOiJzaGEyNTYtQnBMRVB5dnQ3U1ozQkZVNXQrUUIwZUI3VGNCaWRBcC9jb0xLSzRhenFVdz0iLDgwNDoic2hhMjU2LVIzYnoya3BMektiOGVUUVdOOEh5RWpKMWtKbCs4ZkljY1AvSFF2N0M4OTg9Iiw4MDU6InNoYTI1Ni1mNVl1MmNQcE9RQlNkNDFXajRpRDJpNjI1cy9mVnI1RFNtNWN4ZlVqSExVPSIsODA2OiJzaGEyNTYtOHAyYjVRdDR2SlhNYWx2V0ZkbGtrTGx2ZWtQMHdieGtkUy9nOWo4QzNUbz0iLDgwNzoic2hhMjU2LXIvT3pSL21hZjB4VGZIazdUNG1aN0pXYWhXa2YyUnYrVjJTbnNTcHlydmM9Iiw4MDg6InNoYTI1Ni1yMU00Z1hIRDg2TFhIcjdYTCtJamgyZHk1V2pPemp3M1ZtQm50WU5kTmhRPSIsODA5OiJzaGEyNTYtT3RzVXVCdTlIZ1kzNkoyTUd4OXhwOXpxRnphcWtXcDdqckw1dmJhM0kvZz0iLDgxMDoic2hhMjU2LVpiaUkybEhLOVAzU24ycFcrNXRBQ21EaE14NUl2MGVXM21UOFhabndFNEE9Iiw4MTE6InNoYTI1Ni1GclBYRURSK3B2NWpRVnMyL2NsRTZ5V1VNOTYvQ2VkUVRwM09jNVIxM2FNPSIsODEyOiJzaGEyNTYtSEt4SkNSTFJuUXBnMUZZRnVqN2sxUkY2MHRqNlZYVmxFLzNadVNJSUoyMD0iLDgxMzoic2hhMjU2LVl1VmNwZWlEcUxkNFBiV3N3dXpISkpxSzBSZjNxa2dxZlp0dEJqTXh4dTQ9Iiw4MTQ6InNoYTI1Ni1vWGVqR2tudFFGWkg3eDgxYjM4cVIvWHYraTE2K3FNZm10ekpkdDBCeGNzPSIsODE1OiJzaGEyNTYtalJ2dS9yVGEyQnh4ZDVaRHB2ZkdVZXJZR3owQlR6dXphMmp5OThkMkZWST0iLDgxNjoic2hhMjU2LWpYSFg5ZUFEQnZ5VGJBWk11UXNpMjJXYTUyd2JmL3BtbUNjMWRVV0hXT3c9Iiw4MTc6InNoYTI1Ni00VU84Q1pYOWJxbjNaUm55UTcvSEE1TTFVcEt1Sk83cDZ0SUYxUFJxd2RNPSIsODE4OiJzaGEyNTYtd1R5ejU4UStIcHJJTGtqVzNtT3FRbEovUis4VE9FQmhRQWdUZlFpNnJoST0iLDgxOToic2hhMjU2LXlsVnppVnhZM0RzemlZWWtJL2ZTZXcvV1VwT1JYemVUaTUxVmpiczhmQVE9Iiw4MjA6InNoYTI1Ni1UWCt0QUgrOUgxWGZDdVBKY1h1N3FhZE9UWGZIbkQ5UWhjd1dGRzgrVEZrPSIsODIxOiJzaGEyNTYtcm5mOUFOekpoR2VPVWhyMm1icmtnWk03TWNPMnMxdTFPNllUc2Y2bGFvVT0iLDgyMjoic2hhMjU2LWhNTmJyUkJlWVExVm9INWE5c2s4cXVYa0tmSlZHYlFvSVFoN0ZvZWNlbEE9Iiw4MjM6InNoYTI1Ni1hdjl2ZVBVajZIRXN2Y3IzQ2lNenVWV2FFaHkyTUFUaHorcy9zZkhKYTVnPSIsODI0OiJzaGEyNTYtQlFHRzBTamRUTUpDNzJUZmdCZzg4OXlacjZUQUlsdWpNeWhBZTJlUFhrdz0iLDgyNjoic2hhMjU2LWRRUk9xV0pwaFFON1R1VEQ5dHdwRHIxbjNFZEdMYXlEOU04ZDgyMmxFMWM9Iiw4Mjc6InNoYTI1Ni1hZ05zVXp3NjcydEZuSXZHdUZpbmNiT0EvMFdpTnYyd0xqSzc4YmVoeFJjPSIsODI4OiJzaGEyNTYtVVN3clA0T005SXZ3dXQvQTRjS3UzVHFLUjVQOUx2c2FJTm5QcmZDUys1Yz0iLDgyOToic2hhMjU2LUlUNkl0dmJBRS9zTTZHdHpUdXZSRXBwOWg3VmswVXAwK3JYQ25EYzFCaUU9Iiw4MzA6InNoYTI1Ni1oT2w3aFRjYjlXL2lFZGNCZGNNSGxXZUxKYlRqV0lCazRYWXgxS1JXZzVjPSIsODMxOiJzaGEyNTYteUM4bDk0Q2l2cGtIRFRqVURzRVJTRlRlN1Jxc2hMemlCTjhGUTV4eU9WTT0iLDgzMjoic2hhMjU2LStyOENuZmh3WUVpZDhnYzNuUTRqc2didjRyRlRZRzAvT2IwUHJ4YWZpLzQ9Iiw4MzM6InNoYTI1Ni13dXNwTU44RlJrbjVlZCt5YTgvSUdtVysvbUFoVWREL01QRXJEbkt4WFFJPSIsODM0OiJzaGEyNTYtVy83Y1BTY0lnSHJiaXFYUE0zNDNXaUFPMHFrb0RSbjZwVmdiZVoxTGl6ND0iLDgzNToic2hhMjU2LUk2T3lFb1JNSEJRQXlnU05BSktjSy9kaW9sckVQYVQzRTlZYjFodU5XdVE9Iiw4MzY6InNoYTI1Ni1uOHU0NFB5MHFUOFgwTGEvT0dUTER2QnUxOVhKSmN6bGFGRDJOaWZFckdVPSIsODM3OiJzaGEyNTYtSmpJaGlvcVZ4NmZuU2JyVjdvYXlFbThVSWkxRnJ4MmRXRjd2UlBPNWhKUT0iLDgzODoic2hhMjU2LXJmS0tBVnpDUmJqNzcyREhFSmp1N3BOZllmSzBEdTczUzFrYmxQSXhkT1U9Iiw4Mzk6InNoYTI1Ni0wblcyWmkxRGN6T01hRGRUaWU5RUlpc1czTW1PZnhHYU9FdGQrTmI4Ni9BPSIsODQwOiJzaGEyNTYtU2o5Ym1lOTc4K3N0L1M4aFRyYWx6NHFibXUyUXlwSlQxN05PR1pCanlDWT0iLDg0MToic2hhMjU2LXhra0tGNnlFb09MdHBkcFJxZFU1UFduaGpVd2JPRGJQOFk0bXpoVm9xUUE9Iiw4NDI6InNoYTI1Ni1OZEtUMGVMcngvdTMrYnFJTzVlODhlNDdGSkJ5dlkrZi9TWjFsRnZpUm9BPSIsODQzOiJzaGEyNTYtSUF3c1JuRFkweHpoajdBeHA3N3orazNUdjV4akwxUjF6Mm4xVEtYSkQ4RT0iLDg0NDoic2hhMjU2LVZER3BCYVBRc2g1YktFMFNYWG1qTUx1T2dMZEFXRytRMHJXcFE4YXFDSm89Iiw4NDU6InNoYTI1Ni0xNC9raElXRThqT2ZJMm1zK0djSGVwN3VSQkZWWUZpL0N3dXpwMnNNaXZnPSIsODQ2OiJzaGEyNTYtcDdheml0eGszR21DV2hieGJSZm5sSzhsTkU0ZUtiTXkyYmZzcjJYMm4vOD0iLDg0Nzoic2hhMjU2LWJZbG52WDlnWkN6dG9IYlZnTytxeElvUUpNU1VXTmwwVDRWYStkeDZnL2s9Iiw4NDg6InNoYTI1Ni04b3NROERZMG12bUpZUVB2Rk1PK2FGb2J0ZjE3QlRycm5udFZOajMwWUhvPSIsODQ5OiJzaGEyNTYtTVkramtnZzMrcERkWSt2UnIzYm5xaHdjRDUvR3hCQUU1bkhNaHdVbEVEYz0iLDg1MDoic2hhMjU2LStQV1ZpZzFzZFRTL1FpRHc3TSs2SGpwd2xGL3dpK1Vtc0VCa3hKRXlqckk9Iiw4NTE6InNoYTI1Ni1pYUNvREQ1WXMzcjkxSnZtT2RXV29YaW1LOHMvcWo1QjVNOHJST1htTVJNPSIsODUyOiJzaGEyNTYteWRpNjRGb2xIU05RSzc1bXlQQ2luaXk4ZGd0bGJ4OUNPT0M2VWZPK2VBdz0iLDg1Mzoic2hhMjU2LXEzZUE2Z2QvdnNmbytYK0duMEJEcUFzVE13cnN6VDlrVk1XOC9YbURXc009Iiw4NTQ6InNoYTI1Ni1odldUdDV3Q3RJRHo4YmcrSkJtLzBBSkNHdkV4L2d0OUdld2QrQmg5aXR3PSIsODU1OiJzaGEyNTYtNXdybkYrMlJJOVpNdWdSSFRYRy9oSVZsaThLUlczbFdMRFJhUGJHVmhsST0iLDg1Njoic2hhMjU2LWRTd0FwSUhsNWFHYmg5UDNMUVJ6aVBTZ3VmZ25rRnBvdlRXVVFaVTl5UzA9Iiw4NTc6InNoYTI1Ni1GMWZCOTFRQmJtTHEvSEdTR1NSNnhEOUJqRlVHVTlBYVpVTDY5QmFTRU4wPSIsODU4OiJzaGEyNTYtTldjQTh0bWN4TDd0a2g4eXJvWWJ4eVNkTzcxeDRqQUtsZThicm1wbTFpbz0iLDg1OToic2hhMjU2LXQxYVRhTVptOWdUUnZWbktqRFRNWmhsWDBaaTlFVVZ3cUI5a2pON21kVE09Iiw4NjE6InNoYTI1Ni1YOGQwd2h0YmZWY0MxOFlXWENaUUVRcWZpOUhNQ251YjF2Q3J5MTc1aCtjPSIsODYyOiJzaGEyNTYtdko1NGpVbkplTkM4dy8xaTJjd0E5SmdXc21Pdk8wZTk1MUVySEVoYkxKQT0iLDg2Mzoic2hhMjU2LWkzUzdtWExhb1gxQ1ovK0RVeG4wcURYNmlueVoyK0RqbHl0Y3d5UDlicUU9Iiw4NjQ6InNoYTI1Ni1xeDVLTENqdXJUUTRVZkRrOEQ0RzAxQ3dRLzYyWHRiNUNRQUpPMURtNitNPSIsODY1OiJzaGEyNTYtV21Fb25aWjJZdE1UbVpCMlloaXFEYUZyWXZnb1IxNkVHNjZHSnN5aEpQMD0iLDg2Njoic2hhMjU2LTVwdytQMVN1QmZxbTBGYVJ6L2dINDNzZ3NxMm5ORnhHaEZFQXNVWWhtYTA9Iiw4Njc6InNoYTI1Ni01OW5nY09OVWozWUZpMlg5QnJHZnVGaUdRT3hUS204NjhYMzJkWGNqcHlrPSIsODY4OiJzaGEyNTYtdTNFQ3NiTXlrSy9NNGtNalo1RG8xMjJyMlZQRFQ5cHRCOW5ucUNRcFNSND0iLDg2OToic2hhMjU2LWxHbjBWWG9oSWhnWXRuVUVTekZPSTNPclhVVTl3Q1NPYlBJTTVJL2IrLzQ9Iiw4NzA6InNoYTI1Ni11N3A5MFdlcS9LMm9QRVFaWHdkVXlTWUZ5NU1pMTkrWjZyQTRHRGsvQm5zPSIsODcxOiJzaGEyNTYtZ3ZRZi9FbmdzMFNJNEs4LzR5UjZ0ditJYkdBTFhkaHZoenc4WUppRCtVTT0iLDg3Mjoic2hhMjU2LXJHaHdoK2FXOStlcyt2bzdqV2NPRW9aQUljSkFsZjk2NW1WUkhLYXJwa0U9Iiw4NzM6InNoYTI1Ni1rRjdxZGZ6a21IckFJNmIxZjBBVldQQUlOTUJRdTluRkpEbUl1Y1VpOHJ3PSIsODc0OiJzaGEyNTYtL0xocExYdmtYL1gyblFKTk9xOHQycDNoWTlLc0NBZGVuRnRQZ1l2ZENWbz0iLDg3NToic2hhMjU2LWJSUVVhSEhxcERVMXN1eHp1Q1ZUbDJxa0RSMzNyWXdURXBmaStiaHZvcGs9Iiw4Nzc6InNoYTI1Ni1URkowNWRkdXcyZEpjRWhUMGdkYk9SNXRtdjlUWEJhdDVxS0tyQTdSUDgwPSIsODc4OiJzaGEyNTYtOHI4VEl1czUvUStobzVodTI5YWpPWEhDb2tkSTU5NDJEUXVvNkErY1dyZz0iLDg3OToic2hhMjU2LStDK3QrWElLM2hLNE51a2tDb1dkZll3V2poK0FOOWU0eFlGdGgvTjNKakk9Iiw4ODA6InNoYTI1Ni1lOVF1a0piNHp1dTdVTUR4Vzl3MmlDdi8vOUg2Z3UwcVJMcFlvUW9jM3ZnPSIsODgxOiJzaGEyNTYtSWY3U01WVzY0Z2hmdnRWY2VNU0YweE9XcHNlQWljMk8wRFkwZDdpSGRjND0iLDg4Mjoic2hhMjU2LVJJTE9CZVQ5RVlMSzVybGZvT2dsRHpKQUhyVlVPSXFpUU5naXhJVk9mc0E9Iiw4ODM6InNoYTI1Ni1Vd1RQbmwwY3ZveEJESm1rTGZEcDljRVdMRENHUGJzN0YycW1OaHlRK25nPSIsODg0OiJzaGEyNTYtRFZxY2hBV1U1aXBzVWhpTEQwK0QyNlcxa1lHNmc2RWduOWVZZWV1SERaZz0iLDg4NToic2hhMjU2LTA3cndnZkx1djYzTkZFSUp1L2E1QTJULzNNUm5BTi9JRTNmRllGR0w2ajg9Iiw4ODY6InNoYTI1Ni03L2o5Vkl1RDVnL3RFOHRDbW43aE44emFPYWdvRVJEeGdxMndYOW9UMDAwPSIsODg3OiJzaGEyNTYtWmwyM3BOUXBaOWNxTUJoK05kS2JEeTA4R2h0djRORHF1Wk03d3hHeDJxdz0iLDg4ODoic2hhMjU2LUlNSTNjWmZvVTVEV2VuM0d2cUNVRVdRcjhKTk5zWUZsMWQ5Skk2Q1RySDA9Iiw4ODk6InNoYTI1Ni1FZkFiNjk2L212TjlNQjh0L20yYzdaaDYzcCtJUE1ORTZZTEx0aVFhaGlFPSIsODkwOiJzaGEyNTYta29QZ2x2cDc3VGpFU0pyNjVoQmpPY2o2b1I3a0lQbEZ6SVNqL3NwUmZYND0iLDg5MToic2hhMjU2LTNTUGt4RncwVXhwc0hwbXlKMThDTllEQysxQnp3Tmh3bTdGMjZ6dy9raDg9Iiw4OTI6InNoYTI1Ni01dVRkbkh6QlROVFRwRlNaVUVrUUhlbkV5SC8velhHSEo0MTRXOTZIbE5jPSIsODkzOiJzaGEyNTYtSCtzSmtWUzdhcU4ramtSZmdOTG1BZVZYTUxXTUFlN0JZdVFOeWZRY3NkQT0iLDg5NDoic2hhMjU2LUlwdUVQeVJYWWNHeFZtSnMyMW8yS2VUMzRzOWc3TTB0YjBjUm9xTEcxY2c9Iiw4OTU6InNoYTI1Ni00SERzUzMzdjNXUXNRQ2dJSDJTRGl4ZVdjNVBpLzBTTzhzM0paK1NCMElVPSIsODk2OiJzaGEyNTYtTnVsTjVBQThIcUZudnNRNytDblcrMFRsQmw4cEhueVlocWpCS09EV3NZYz0iLDg5Nzoic2hhMjU2LStldUppeDA5RjJwNEk0RWt4S1BueVRLYno5NlI4RWZUUEJLUkJrRGlJVWc9Iiw4OTg6InNoYTI1Ni1DZEJaaTh3NVF5ZU5IT1dWVVdZWXZwejV4eUtPQkg0dDRyY3ZRYzRockxnPSIsODk5OiJzaGEyNTYtMU5PdTEyMXVhNEpGQ2ppRkY4eld5T1dlWFNYTjgvRi80VVhVbU9PcjUvVT0iLDkwMDoic2hhMjU2LVhLT0JsZFdUczA4OUdSZmNEQnpYZnVjQkpjd0FhSlc0L1VsbDVHRHF4dFE9Iiw5MDE6InNoYTI1Ni1BT2loNVlvL2JRY2h6VVpJK3NlbnlIdDlKYWhaeUhicUdGenU2aVhnOVlNPSIsOTAyOiJzaGEyNTYteVA3TjlESFZ3WStqNER6TWp2aW8wUVVRT25DZUk4SS9EQUJJamRlclVNdz0iLDkwMzoic2hhMjU2LTBTWHlPcjlSelcvcmYyazV5QVh2c3pyS21aR3FETUFaamM5QWxrYnFCelU9Iiw5MDU6InNoYTI1Ni1LUXh4dlFXaXRvZE9RenArS1Q1RjNVTzdnTlhnZTNSTmNrcDc4c011VE93PSIsOTA2OiJzaGEyNTYtencydjNzRWhVVE9MTG1qMHVUdUJCbGw5WjZvQnZRRWZzOEVvdUFRczg2ND0iLDkwNzoic2hhMjU2LWwxMG1GU2hUMy8rK1BNSG1mYWRKVlE1ZTRGQytBRUQ4R0E2alB4dHRNUjA9Iiw5MDg6InNoYTI1Ni1UZXZIdm43YjM2aUUwZlk0dkl1NHMzU296NTVVMTA3czZEVW9VSkNYVi9jPSIsOTA5OiJzaGEyNTYtOU16MzVCVW1KN1ZsZUlsVUx4dGdsZDh3UHR5amNEdVFJRUdST0pSZmNiND0iLDkxMDoic2hhMjU2LVJXdWRnZlp0WGxuai82NUs0TXFLTUdodmRTTGxoVk80Q2hETjBDQ3V2RDg9Iiw5MTE6InNoYTI1Ni1BeUtaTnR0V2ZadzF2SWEySFBsclRrNUd4a25EWmxWaFRmY2tWSmJoWHZ3PSIsOTEyOiJzaGEyNTYtNi81VXJYTmNYQkVKMXRYOXBQUlZ4SmRKdHZadm9PUVpjbVZNellzMlluOD0iLDkxMzoic2hhMjU2LUZoWWg2UVE4SVYwalFLSlVGYUxyTWVmTXN2dmluamNLOGN2a2Qrb0JFM1U9Iiw5MTQ6InNoYTI1Ni1Jb29iZHIyVy80c0NZbjA0d1k0Q0g4UFJFdTFUc2hCRlJua2VrS1NsQXhRPSIsOTE1OiJzaGEyNTYtSVk4OWdVeXdLbk1hNjA0dHJuNEozaGVBUkdDMnFaWGtMaUUzN2tiQkM2VT0iLDkxNjoic2hhMjU2LUR0cWNVWVFrbWxZb3R2WFpvYzU0bitTbUdFWEM2VGFwVGs0eTVZVEp1VEU9Iiw5MTc6InNoYTI1Ni05QlFoczdjVitGUE80YnBSNGxWYk44ck5wM25xOTVqMGpUM0JwQXV6alQ4PSIsOTE4OiJzaGEyNTYtT1BIVWVNeGo4M2JDdkxWNThEZERpRzVSekdRL05YY1Y2K2xWMzF5c01RMD0iLDkxOToic2hhMjU2LXVRN3htaENzZ2lVOWtMdUlXRlErSmIrYkZwVTZaaTM5ZFVjZkFFZXVYWjQ9Iiw5MjA6InNoYTI1Ni01cXl5NGhwclVXSWcySnVwV2VMYnYxZDR0TldjWnl6T253WGNVay95M2k0PSIsOTIxOiJzaGEyNTYtcU9aTGhiZ2pvanpGRTBpV1Z5amU4dTN6cUVvcUx2TGVPY1NUS1RFOHBCcz0iLDkyMjoic2hhMjU2LVdmeEM3b05ycVVzVVo5ZjJZNXRUa3RDeG96S3V4c1lvYmdYZlNYc3JwUFU9Iiw5MjM6InNoYTI1Ni1FZUR2RFhqeUk5N3ZMeVNick5WNDZMOXdNQ1g0R3NrWmpmVnRHN3ZuK0lZPSIsOTI0OiJzaGEyNTYtSmkwUVZDNzR0MUdFK21MTG04Vjl5U0l4OEVadFFDMjhBcmJaZE9YODFDZz0iLDkyNToic2hhMjU2LTBnMHg1aUE5Wi94ZUdtNEFucTlwOVVSUk56QkYvYnUvNmtPRjVKRm56QXc9Iiw5MjY6InNoYTI1Ni0yRnJqak5SY0dJZENkb1hqOEM5MS9hNFgwOE10OFNMeFQvSmIxZEdjemI4PSIsOTI3OiJzaGEyNTYtUUZHY2dQY3dQUlRVT1FSSXdOYlZ3ZCtXL1FQcUMzd05TUS9yZDVOblJaMD0iLDkyODoic2hhMjU2LU45RmZCSTBmaU5IWUJPRmFjVTJSZWV3NzVzT3ZFU2ZwVHhUT2V4YUxuRFk9Iiw5Mjk6InNoYTI1Ni1uM05uajBGNDROUzZOZkE1aTVTVkxueWR0SkxFSVpVMDJlNnhnQmxXOUxNPSIsOTMxOiJzaGEyNTYtdGlmd1BiVzN4M3ZvL0hWWm1GVXR1N0FYc1NRYndGVnJYZ3g4N0ZnWW51RT0iLDkzMjoic2hhMjU2LVhSRmU0dDl2cW43eGJNU0JKZC92dDRTZXBQL3JiY24rS0lBNnhYUEo2dlE9Iiw5MzM6InNoYTI1Ni1zVklFVjVPdVAwQ09PUTN0OXpTaDQ2TG5mc0hyQVpjcURUaWdRRTkyYjVNPSIsOTM0OiJzaGEyNTYtS1E2blMzcHJpZy92dVU3L21XTzgyM2lxcWVkeGFjN3REM3A2a2dnNWQwYz0iLDkzNToic2hhMjU2LU9Zd3pKVE9aTURiNUZUVjl2VU5ucGNmdWtUeXRYbFZuc0xVdHE0d1R3R289Iiw5MzY6InNoYTI1Ni1zOXNJT09oWWpyZHJENVIvNmovMGptZWFsVFhNL2JkeDZoekJueWZjUWdNPSIsOTM3OiJzaGEyNTYtQlkvUkhDbTErZVFVRmU0T2ZWYkFKeE84MG42WjE5SXBEdklDNzRqMlQzOD0iLDkzOToic2hhMjU2LXM2TjR2U2pXODQzZVVsdEpVM2JnV0trcVlxZkxrT2orYmR3TFFOZFl4bVE9Iiw5NDA6InNoYTI1Ni1yODZ1bnZQWFE2LzZFZCt4VTVIdDd0aC9uZ29lV3VpVUlEOUZCUEltMnA0PSIsOTQxOiJzaGEyNTYtR1MxTjNUbDBhRmxzZE94UVpRb3FHTHhJR3c2UGFqTlRiV1pUK2ZxSUpOVT0iLDk0Mjoic2hhMjU2LXcxQWNBdEdpQ0ZPcktydnQrM0FPc1kvZmdvZVhIOEQzZnh5MTBMcWoxbHM9Iiw5NDM6InNoYTI1Ni1qNUhmZU8yajdla2N1U1pVdE1QOG5MRkRVQXo1R3JObHI2YjdzektLUFgwPSIsOTQ0OiJzaGEyNTYtVnFoTVQwOWhabitjZmhOUnJCOHdYZ0hqU3JXZDRGQTR1bWFjTUM5R2FIMD0iLDk0NToic2hhMjU2LWtxWkQ1UHV1VFgvaHU1U3d2UlUrUHhMSlJlSnlxWFJDQUF4Tk9RSXNyaWs9Iiw5NDY6InNoYTI1Ni02UkMxWmFEeW5pUWpEdzhjcVBrQXFNVkd2MDkyTGFzREI0ejRZY2gzQkFRPSIsOTQ3OiJzaGEyNTYtTHB6b0o1WEc4czROY3d6L2ZzdUhraXNxK3Jxc1A2Qi9DdXkvVnN2ZDFBMD0iLDk0ODoic2hhMjU2LUY3SzdMMHNkOTlGamNXUDdUcC9qaXR0UzVoK1RualNYYWMzL3Q0ZGhYSTg9Iiw5NDk6InNoYTI1Ni1HVUVjczc0MDcvSUN5K0s4dS9yQ2VZRlcrbHd2S1hoVndGQ084Z1p2a3U4PSIsOTUwOiJzaGEyNTYtVEd1NjYxZkZtbjQwMWxUR1FtRERESWNENnpVeFRLRnAvdUJrZTg0MVdFTT0iLDk1MToic2hhMjU2LVRVK29xbys4bG5ZWklyTENMaDFjd0U0VEt5VHpiSzF4TW44TDRtcXZVOFU9Iiw5NTM6InNoYTI1Ni0veWlXVytKSHZBNGNUTWFabTYvZ0ZseFNDdG9JbkdJMWdMdWhpUjJBUmlFPSIsOTU0OiJzaGEyNTYtZW9qa2FBdDl0Z2FMeVltd1paT0lpbS9EU2lPeDlGMHJzTWZ1TzUwL0taWT0iLDk1NToic2hhMjU2LU1sVW5MUkRLc2FzU2M1aWJEVEVqUTUycWZUaldCT3F1OEFXSVA4aDU5dk09Iiw5NTY6InNoYTI1Ni1DK05PV3VSMzNGSGJibTNQeTFBRWFJaUpJTlFsZytGN1IyWDM1RTBTaXRBPSIsOTU3OiJzaGEyNTYtbGlQc2o3ZXZQQy9XbUZ6MWpORHdpWFlVaEhGTVVMSC9CdnFGMVowdHpNWT0iLDk1ODoic2hhMjU2LWZZSWIvV3lDTXFmdHltTVhZRnhtNUNMSnZhN1RkNjJHS1pSSFhxbW5LR0E9Iiw5NTk6InNoYTI1Ni1jbGNYYzNIY3ZDRWRDeTM5R3g0T1ZycjRudHUrRnIvQkxidVlHZnE1MzJVPSIsOTYwOiJzaGEyNTYtNERsMTZoZXhnYk5HcU1hODQyeldVQ2VDOFJNTW9PQVJSb3Y5WkVKWjdIQT0iLDk2Mjoic2hhMjU2LTF6TlNITjQzNXhqQnI4MkpvQ0hKaGFSb2I1c2JrWVJoRXpDY1B3UVphVGc9Iiw5NjM6InNoYTI1Ni1GeW10UExtMnQyM0ZNN0N4c21JSFlUZFYvUlYvMS9rbk9SWUtsTSs2MW9FPSIsOTY0OiJzaGEyNTYtcmF1SytGMHVXV2pqUzZuVGgxV0NSd1FLUXJCakxFNUdZQUhLb1BIbVJSRT0iLDk2NToic2hhMjU2LXJWVHpCS0FwRWRIZmswcFZyb3BUMVVjSFJiS0hQRFliNmlGZ0xFeVZHbEU9Iiw5NjY6InNoYTI1Ni14MmxqNmxkWEIrcFg4WDRscXU2TkQ0TTEyRlBVQm0rRGtEQXJ0L0x2MmNVPSIsOTY3OiJzaGEyNTYtaXRRTnUzRk1xRXhULzFLY0xRemhyRjVvbXBKRlBNV0lVR1lHUHlqUWdEUT0iLDk2ODoic2hhMjU2LTNKUENZQ2xFTjBiZk1mRnArREFBay9QMkdCYUltcEE3eFJDeFFKOEt4ZkE9Iiw5Njk6InNoYTI1Ni1FVXJBNGZVNFdhSjBJcXYvQkdrOTEwZHg0N3g2MTE0SWZ3QUZPZU05UkY4PSIsOTcwOiJzaGEyNTYtb0IrSWRWM2U4ZHBCRGhad2FDL29nVTV2T0lpbSs3V1k4WXpKSnpUNG16Yz0iLDk3MToic2hhMjU2LWx4d1FRVWN1enR4U0s5NytScDZzL0lYeVQvSkRwR05MWUVHWDc2ODVQY3c9Iiw5NzI6InNoYTI1Ni1JK0ptYTNBVXBWWmNoQ3A1WEd2Y0NyR0JIMWZhSXliVDU5MzBnd1N5U2FzPSIsOTczOiJzaGEyNTYtejFrSGpmUGtrNUNSK1Q5cWZmU0xSUlhldWlMQzFhWVlGQ2lRREdrMVhjMD0iLDk3NDoic2hhMjU2LXRudkNreW1zdFMrNHBzR1Q2SFh2Qzg5c3NQbXpYUGk5MVp0OG1ieDJlVms9Iiw5NzU6InNoYTI1Ni0xV2xwVERVU2tlOG92S2lZeExyWFdNV1FQVjJLNzFaVDM1QVVqN2JueWpZPSIsOTc2OiJzaGEyNTYtYkR0eTJUZDVuWTVwZHllZWd5UVc0NCsvZ0NkS0VUalQ4NFo0by8reENTMD0iLDk3Nzoic2hhMjU2LXF0bks3QVJWVklxS21MWXlIdTMyTVJUMElNRXFCVDBhSm9MSTNUQ3NDNGM9Iiw5Nzg6InNoYTI1Ni05QUk2UjJ4T0x5ZjI3NGxqRmk2c2crejdKMEt5cjRGNWoyZGdBVmFPQTNZPSIsOTc5OiJzaGEyNTYteElxRWFGREtlUG5DcHl3UzJteWZGcFYzVkJBM1VmREhXT2NIcVdJdmxMRT0iLDk4MDoic2hhMjU2LStvSTVSSXlkTDRVRVNCNThlRW5SaVJjbmZzQTZLZWU5bmE4OVhOeVJNR3M9Iiw5ODE6InNoYTI1Ni02MmVlZ3NkU2xFOHJjcW95S2V2TDF1bXppc1B6YTZlelhZSnkxNjFKRFVrPSIsOTgyOiJzaGEyNTYtb0JmVmNRUkZvdG9QZUIrN2xNb2RYOGdqalR3TzhJTnBIS2FSQkVjMTBYcz0iLDk4Mzoic2hhMjU2LUhDVDJkRXh3bTM2TXd3bkdSSUQ3emhPR2JKOGRyTlhqQUZYdnd4OTdxTDQ9Iiw5ODQ6InNoYTI1Ni1kUVZFRUJIVUptVXd3N3c4WWsyMEdZY2xIZmhFSUxyamNXZENDMG0wWUxJPSIsOTg1OiJzaGEyNTYtQTFxQjFIQmdqN3dheHRJVWwxQTM5SXJjcHBNaGFqbTBPZGtSRWJNaFRkdz0iLDk4Njoic2hhMjU2LXEyNS9WZU9JTlp4TlhrQW9VYVFXTU9aZVhrSmJDNWRmYXFHam1pbTVka3M9Iiw5ODc6InNoYTI1Ni01TktWdmRCKzJGbi9mNEpKL0NGVGR5bXM0R3ZTalp6MWdMSGg1UVJoeWhzPSIsOTg4OiJzaGEyNTYtV0NBbEd5MW0yWmg2NFJEdWZlWXVvY2NkODVWdFkxNlNycUtxWDFNc2lnMD0iLDk4OToic2hhMjU2LTZNSUEyWkNXNHdmei94RUFuOHpUT1BrSEpxb09PbWtVQktvQ2lJdDd3NUU9Iiw5OTA6InNoYTI1Ni1FK1kwVkxtc01DOW10bWgwOVdUd0VsdEtzRTZwdnA0MHlJQ1Q1Rk9xeTIwPSIsOTkxOiJzaGEyNTYtMWtDdTBKYkVuNk9hRmZJak1qMHFZazdhK0w4N0tNYVJVaGdmcXpOK1JkOD0iLDk5Mjoic2hhMjU2LWZacjVSaDl2NjV4TnFKZVBHMlRLTTBCR2RsOXpvRDJ5TERaYmR4SGlWcjA9Iiw5OTM6InNoYTI1Ni1iQm9hY3FZZHY0cyt3ZERQZFpOZzd4MHNJV0syRkpUUWxoOFB2eGpjenNJPSIsOTk0OiJzaGEyNTYteGcyWHl4R1BuTSt3dXQxdkQrWTFYUjFQajV3RC83cW1pL0xRLzMxY1liWT0iLDk5NToic2hhMjU2LWo2NnRIcTVrQTRGWUJGV21KbjFxdHRpZUxFVWlZR3FiN3lIZ1o0a2tack09Iiw5OTY6InNoYTI1Ni1BSEkxV0lLTU9ZRVlOZGF3M3RkUHRuNU9aK0YyS2J4S3RFQzc3cUg4RC9rPSIsOTk3OiJzaGEyNTYtaUp3MWhlc2dFUXhrK0cvR011UXpNaVFPT2MrUVZObHZuVENNZ1M1djM3QT0iLDk5ODoic2hhMjU2LVVnUVkzWnEyTkZIWHh4K1JockppR2VjQjNYZlNJbXZWVzhDcDBWU1lubU09Iiw5OTk6InNoYTI1Ni1tN2sxL2VyMXArQ21Jb082eTVRK2ZXaE51Y3JDNmRNMUJpbE1ZNkVsOW9nPSIsMWUzOiJzaGEyNTYtWnFxak9SU1lsN1dyTmpRbUdaMkpQQTF2Uzg5cDV6dTNyVThsVUYxWFhhVT0iLDEwMDE6InNoYTI1Ni0xV0Q0MHMrQU5QM0pnQTRhY2UyS1FNWXdKZllOelRVaHlEbzdlNnE3NDZzPSIsMTAwMjoic2hhMjU2LTBDeWVTc1VRa2JjTC9MNFUrdURjNnFIOGNxL3lnbnpGUC9oRWg2ejdsUjQ9IiwxMDAzOiJzaGEyNTYtMjVxZUY5Z1kzQys2Yjd3Z1dLWGd2MlVyNEcvWjMwZExqUG95NDR4dFhmZz0iLDEwMDQ6InNoYTI1Ni0vTXBtTFBpSlA2Mm5TcHFlUFJEYXptUjJPQjNwYmhwaHhWbWdINzhxdGZJPSIsMTAwNToic2hhMjU2LUJEL3NmaGpQenV0a1ZwUzRqMGFkRFJKYmROTFB4YnNGSk93ZC9EUnRuVWs9IiwxMDA2OiJzaGEyNTYtMzdFM1llb2k5WXYzMXltWVJtNHZUZFFicUZvUXpSZlB5WllhaU95SlFoND0iLDEwMDc6InNoYTI1Ni1wT0Fza0x3ek1LZENiaHUrYStPbEpaUHJmY2Nac2JBZnZ1NmRVeHpRSjlJPSIsMTAwOToic2hhMjU2LWtqVmd4VWVUeG5lRW5DaWRGcWFWalRYU2NDekd6NGpVZExrdUJpVFVtUVk9IiwxMDEwOiJzaGEyNTYtV2ZaemtQcWlTTVdOd2Ywd2hIakJSSHZ6NXNCWTdLUlovbUxTS3ljRnVmcz0iLDEwMTE6InNoYTI1Ni1yelVZTlZ2ZUVXT25ydHVjMkhBY2cxZ1FJVUlNVFRvY2hkandrdWowZ3BjPSIsMTAxMzoic2hhMjU2LWhVNjh3YklqUXppTldkRHF5SU9NR1ZTVmV2dGJNMndWTFNTcW4rOGcwTTA9IiwxMDE0OiJzaGEyNTYtOEg4WHFKZ1U3dDN2aUdWQ29McCsyTGlQWk5NTWF3Ti9tMnZCNzZnV3E0OD0iLDEwMTU6InNoYTI1Ni03Y3dnNmRBWWw5cUwzVjRYRDAwbTRycGc2Vlc2M0Z5L2pmQVhSTmJhZkpFPSIsMTAxNjoic2hhMjU2LWhxSlZLTS8wMm9QdklTOE1GbHZuOVByb1FDWkJFRjBYWHNRWlBQVEUvNE09IiwxMDE3OiJzaGEyNTYtOWI5UDc1a3d1bUFpVVpFNU51QjEvSDdYNll5NE14eGd3R3I3NUk4eWswbz0iLDEwMTg6InNoYTI1Ni1zbTUyNXdoaGNCejhxNE50b1BKZG1nNnl5c1BHQ3pxTjlrV2VobmwvVlc0PSIsMTAxOToic2hhMjU2LWpaY1ZlWDZmY2pqUE9vWHZSWTIxTitGaHkzSnkrZndkSGNPUU1FSE01Umc9IiwxMDIwOiJzaGEyNTYteXpVYnZ3ME52cGYwQTdIN0NqYXZzUm9mMlVETHQvMlQrd3JVdXN6WFAzYz0iLDEwMjE6InNoYTI1Ni1UU3VZTThXZ25UZ0NnZFJqVFBveFFOVGM5K3IxeTYyT0Urc1BuUFo1TVVJPSIsMTAyMjoic2hhMjU2LTA3Z2dGWGlqb1ZyTDFjWEhtZWZMVjkyNW9oQ0ZtaGhEVUZ2SVdGYVc5eVk9IiwxMDIzOiJzaGEyNTYtamNyU2xkRjNncytCNmIzSHVENUYxamM2UzdYcFIzN0I4ejByVldTSklIMD0iLDEwMjQ6InNoYTI1Ni1tRGpZbTRBWFNTU3dtZkY0KzhTYkNMUFFIYXV5SjJOSjFYVGpOMS9FTVpVPSIsMTAyNToic2hhMjU2LTZFRFl6a0hzYjVHVzVTSXd5TDZZeGQrZS9mNm5pUWR4SFZpWGlVanZUUFE9IiwxMDI2OiJzaGEyNTYtT1dNaVRqelNzdklEREdFN0ZETlpGZ3J1ajFFa0lqOExxUHJ3TG5rVTdhST0iLDEwMjc6InNoYTI1Ni0rbytSREI5UXJTWG1CZXFnMnMzaDI5MEIwblI0OVpWMzMwVkhNL3pTa1NBPSIsMTAyODoic2hhMjU2LTA1aWVMb3lrVFo2SFJtY1pWbFE5VzlLN2wvWHV3VWFjdDNVZUI3VVRYTU09IiwxMDI5OiJzaGEyNTYtUG00OWQ4K3VHeHMvbXk4Tk5CUUY5ekpFNHVqbmVWQVNwU2NFZEgzUjg4TT0iLDEwMzA6InNoYTI1Ni1NdjJ6bXY2WXJqQUhtOU8vVDFEVU13cVJNTTlJTStURXJ5MHhwaUYyUiswPSIsMTAzMToic2hhMjU2LXpVTlZQb2FacWpLYzRWUk1aWC9sdXlBbmVCTmM0L2xtMzF5Z1dVaXhNaDQ9IiwxMDMyOiJzaGEyNTYtaTRNVGxoUTFZVWErdk1iRFI5N0l4dC9PWUNEU2srNTFWd0QxWXRFMmpXST0iLDEwMzM6InNoYTI1Ni1GRlg3ZVh5Vk5mY1FnY0ZVcXV6T1MyZGtPZFpjNkw1Q0xDelgyYUNXN0FJPSIsMTAzNDoic2hhMjU2LVN0U0ZNRm1UK0JsUyttcTBHWlQ4aFFtWUhBMUEwckw5WlNnVkhXeHhtNkU9IiwxMDM1OiJzaGEyNTYtWG9NV0t5ZG1tWDJ4dEt5TytzVFBKVUNLTFd3VE1FNDlUZGQxL01mRkltST0iLDEwMzY6InNoYTI1Ni13U0VjbXh4SUVPZ3FUU3RZVHhlbUFkZTF0MUQ1U3RiaTQrRldSRUppMnBrPSIsMTAzNzoic2hhMjU2LWkybjY3WXZoOFdBOWR6VHUyRzI4MWpjUXVnM1pPelBXaUw0elVibEFpYW89IiwxMDM4OiJzaGEyNTYtSk5BN1hlYnFDbTF5Sm1NVVIyaW9Va216YTYyWllPVHhUalh5cTVPOXR3cz0iLDEwMzk6InNoYTI1Ni1VcTJUcTkzdzRQMU5iVzExRTZrMDhockZKbDBHVVJ5U29zQ3EvVDNGNmRvPSIsMTA0MDoic2hhMjU2LW9hb25XZGJOYSs3OW1YQ2pJditFV3pPY3JLVkdDSVlOdGx5ODNTcEwzVjQ9IiwxMDQxOiJzaGEyNTYtQzdzRWI5akJNSStjYktvK0JsMzhFc0FGRzNINldGM3Q0cTlJWEkvZ3ZsMD0iLDEwNDI6InNoYTI1Ni1IcTNYeE1yU2t2TXNVclUzcWFQMHQ2RUw3M3QzS3FvcERUMXBoamtnMitFPSIsMTA0Mzoic2hhMjU2LUgzWHlKY2FzZEQ1TjZGYUNMUk5QSWE2Z01tZnpaa2dLekt0NjY0OFp0Uzg9IiwxMDQ0OiJzaGEyNTYtNlNMUU9aTFplbHBKY3pZY3F4OU1weHJRRG80Nno3YjluZzI5L2Z6TmN6ND0iLDEwNDU6InNoYTI1Ni01VENBdFFRaWYxWVVXUkpudGN4RG1iNXU3UklsdmhDR1NBZ0lleFlkNGlFPSIsMTA0Njoic2hhMjU2LVFUWUtYVUZqajY4SjhabU1rRDhvaWxmZXRWWmF2b0ljb29JZGpaSkRJRms9IiwxMDQ3OiJzaGEyNTYtZ1pPcmdtanlxYmRIakdybVpFcGFsVFFJSHhUVWdNaDA3T3N6aWpWdEdFcz0iLDEwNDg6InNoYTI1Ni1ORE54am9jVnFrTXN3dVhyR1pkdWo0L2VVZUprNTIyS2NLM3F5SG9jSmcwPSIsMTA0OToic2hhMjU2LTNrOG5oSjFDdEhTZEpUbGRPdGtydEVialdoblpaY2F1YThRMXRmOVVtWTg9IiwxMDUwOiJzaGEyNTYtRE9mekdydnZjVVdTeUJRN05sT0RvSldMZlN5Z0hGek9lc05FcS82RjJPcz0iLDEwNTE6InNoYTI1Ni03Unc4VmlzNU5Jd2tHNEUrc20yYXNxYThMblhtYkRaNHFEUnR6THkxR1A4PSIsMTA1Mjoic2hhMjU2LXVQeHlncS95WUJTUVZXY3FER0JvSFk1U1cvME5XWjJUYzVtZ2xKSnRxTVE9IiwxMDUzOiJzaGEyNTYta1V4L0tzaXpsSkVtREpNempCaWxUQ3d0VzRsbWxBeTlNZ0dQcGlvRXhvTT0iLDEwNTQ6InNoYTI1Ni1GakhxMHlLVmJqMXIyV0Y0b1FXUUFGQUlRLzBKcERKL293M1poOHJmMUE4PSIsMTA1NToic2hhMjU2LWNGM2V5anRXUUptSFM5bTNEZmZLUGN0MlM1RWNHcjFNUEVsUUpLZVZidGs9IiwxMDU2OiJzaGEyNTYtRmo2cmRhd1lkY29Db0NjVzZONkFQOGRzNnZJdWRWTUFJREQ2c2s5TkdqMD0iLDEwNTc6InNoYTI1Ni1LS1FqRGthbUNmKzIrQUJTczNQTTVXK3BCWHJwaUNyMWNZSWF5SmNFRUd3PSIsMTA1ODoic2hhMjU2LXpzSWQveGZSUWxtVm5FVkcwK2JVcWVINWxsdUVMMmhFWnhRRnBSbGZmOU09IiwxMDU5OiJzaGEyNTYteEZiblZET1VaSTBHWEJ1aDVPalI4aUtjTUpXTEZ0Tmg4K21oU0t3UmJqaz0iLDEwNjA6InNoYTI1Ni16OGViMFJqemRaZmxZdS9PRHh1bFpRY0pBVGpOekJwem53NXRvcWc0NHRrPSIsMTA2MToic2hhMjU2LVNTS29MQTZ1d1YwWVFTRW0wVGxVWmVudWdVRmZhbG5hU1loemhydU1PYnM9IiwxMDYyOiJzaGEyNTYteklQQVMyajI4WDZOUHdvVi8xM3oyNXBmbllLQ1k0RXNXT3N5b2I1eFpuQT0iLDEwNjM6InNoYTI1Ni1OaHlYMXhNVWRDeWFscFhIbXg0dWliZWV0UjFRVEMyQWkxcmZYUytCeGdnPSIsMTA2NDoic2hhMjU2LWFqU0dIeVpDYWNzTkcwaElzYTZORFdhMVI1WHpDc1BLRmJsOUVpTHYyTDA9IiwxMDY1OiJzaGEyNTYtSG1UdkpsMW1DQVUrOURiako4dkhsNUhiaDMzbkpoM2dUcjZXSFJZWWRaaz0iLDEwNjY6InNoYTI1Ni1HdXhiOWdRZEU1QWxtMmdoM2xaWEduY2dpOWhmTzVhQmtQTytUcnBQdklNPSIsMTA2Nzoic2hhMjU2LVJrL09SdUxpUUFzQUFjL1FOb2NrRExsbWQvOTNKNjFNRGx0T1lJcmlaQ3c9IiwxMDY4OiJzaGEyNTYtYWI3TTM1amlMdzNhTFhkdzRsOWxWWEpBeG9nTUlLbVlPT3VGY3ZXOHJrQT0iLDEwNjk6InNoYTI1Ni1zVEFtSFY5TXR3MzZVekIxdHpFcUhJTkt3OVZJZGwwVzVtd1BjWVRyVmlrPSIsMTA3MDoic2hhMjU2LTBsdEU3UVl4TkI2YU1TeEdjejRHTmRSbXFGN1kyelRMTzhnSWZXaWZoSnM9IiwxMDcxOiJzaGEyNTYtZHltTFN1QWFJU1lIZHZ3V0R5S2ZhczBXUEJXbVNsT0IreDJYQmlub1dtcz0iLDEwNzI6InNoYTI1Ni1icHAyQW5VVHBqZ0FUTjRLSnNqMGEybHhPdURHMW4yRUl0akhxTW5pSk13PSIsMTA3Mzoic2hhMjU2LXljRTRkK25QbzVRcmZGbDNMVTFJRnBxc3ZTZ2EzUzVjR3NjY0RzL3hPR0k9IiwxMDc0OiJzaGEyNTYtaFArNFB4S0FSM3FnUHdrMHcyZUp5cWFiMmJXUTY0a0FZNndvZUJlUlRyST0iLDEwNzU6InNoYTI1Ni1vYkdUR3lncFBRVVZNWjFzTDNZM2lNTHVENzB1eG5tWGNqdzU0Z0VTSCtRPSIsMTA3ODoic2hhMjU2LWkzRS9HaGhvQlNaTFZNVXhvR0lLSmF1RWdYOUtQYnZ2NldNWUZEaWxPR289IiwxMDc5OiJzaGEyNTYtUzVrZTV0N0Jkb3krQ0VhRXgwMlBzanpGcTgxVngrZ3RDVUVMa1V1WjBhTT0iLDEwODA6InNoYTI1Ni1PWTdwell2UHhXZGhGd0ZSK3dzdFg2clRia1NKTlhheWN6cU9sM3lYNkd3PSIsMTA4MToic2hhMjU2LTVlTlliRVV2TGZGQTZtUXBYdWZsNDcrWUU2S04vY1M5Nk9PQjU1V2R4V1k9IiwxMDgyOiJzaGEyNTYtUmdCNC9uamJxQ3ZCU1Zlbmx1NTFvU05tTFJ5dklxQ2NheTVNMTZRZGRRND0iLDEwODM6InNoYTI1Ni1wdWJzZmg3WkxCY0U5SlgvY1FMZWNWWUo5UGdkSU1xSllyUmQ2dmVMcG1BPSIsMTA4NDoic2hhMjU2LTZHRTRxSXBHNWdnSHZnek9QeDYxMnM3RkVpWUN1RDNySnpNaTFxQXFlaXM9IiwxMDg1OiJzaGEyNTYtM09mUlZtRUkvWEI3UU53YUJRZ2NubGtaNXJLdmM3Z3phZ1lEWCtaYzljVT0iLDEwODc6InNoYTI1Ni14aStpTmZONXkweDV1K3hQcEIzQ2kxalEzVmJORGUyMlhoVmpRU3U4SFZRPSIsMTA4ODoic2hhMjU2LXhudmpzbFYwbnFJRXJLeWN6dVZINFJ2SDhaTzdQN05KUUEyd1V3SGlrUkE9IiwxMDg5OiJzaGEyNTYtTmV4ZWtMV0NJdXl1QnlJZFlWdGMzM2pxdDh4KzZvNGFNeFk3czVQc3NIND0iLDEwOTA6InNoYTI1Ni1UYXBmMEZZNFdxRG9pckZ3YjBJSlRrMFJtSjE5dnFZSmZPbVlyMk9mNmRJPSIsMTA5Mjoic2hhMjU2LUZmdXA1aGkzei81L1FxMERkbW1Hblk5Vi8wNkU0WGZpMUh6TnBOcmxsKzQ9IiwxMDkzOiJzaGEyNTYtNXBia1VSRm0ydnJrUG5tSHVYWEhhaXNkYzU4VHM1UDFnd3VhL21QYVFrRT0iLDEwOTQ6InNoYTI1Ni1qN1Y0SUhOeVllKzFOOHk5MjZpWjYxY2g2aUphWjJwRGZmOWJlWjFNR1M4PSIsMTA5NToic2hhMjU2LXhVTzlETnBVQ3F3cDRuOHJNaG5JdmpVMCtWRnNGcE5nQkxaVmZHQWIzOE09IiwxMDk2OiJzaGEyNTYtVkF6MTJ4Vk8yV1RuekRHYzdsU3F2ZVBmVTdubE5OVDhIM3pvT1NaaUhtQT0iLDEwOTc6InNoYTI1Ni1WT3VJS2RHRWFFVUlKOWV2UkgvVlRSZ3FyQ1VmWEszNUM0WUdBcHYva20wPSIsMTA5ODoic2hhMjU2LXBLWHlzZ2N0YU5WWDdFalJMbnR6SHNzYWNiaXdRYlBjMS9CMWdLRE1yZUk9IiwxMDk5OiJzaGEyNTYtQXhpb0dwU0I3a2NKNFJRUW1lbHVQOEFrekJGMTVBekVTM2FFekdYZlhnMD0iLDExMDA6InNoYTI1Ni0wZFpkK29JTWw0OXY5QjE5Um1lM25EQVRiSjRGUzVtRkNwNVExNmJISjRnPSIsMTEwMToic2hhMjU2LW1WM2ozWmNqaTRDcGxnNU5iZ1NLRlVuTTdtMVpSNVpacGI0YWdwcHJuenM9IiwxMTAyOiJzaGEyNTYtOEIxOWttR0ZxNjN0aEZFSk0vNEdLcmhIVTFCTmwrcGtVY0RSSEsvYVRMdz0iLDExMDM6InNoYTI1Ni1GTGRlbURPWlliYVBQWkc3Vm8rSVJ1ODhjS1hybC9pZWtLOHNDdUdRT2tnPSIsMTEwNDoic2hhMjU2LTAzQVlORVlNZVpnRCtDeEdOMkp5aUZPSHlCbTR1R09NRDR4bjRwOElUQ3M9IiwxMTA1OiJzaGEyNTYtc3VlOXNNM3dsRFUwMjJveE1NcE9qUG80bDdpREc3YlZvZEptRnkxVlhkOD0iLDExMDY6InNoYTI1Ni1iTlkxSG93cFQ3TFFUSytCOGNTRkNGeGtScmU1TGxpRjBtNEtlZlZJTmE0PSIsMTEwNzoic2hhMjU2LXpsdFR3UmRTNGxaK0JKN0w2TnFwMFpWOEhmUm1ITCt3U0lMMGQ2QkR0VGs9IiwxMTA4OiJzaGEyNTYtUlVvWlljVkYrSzhHYWFnaXpVN1g2a1dRdWEveFZEbGV1YkQwWC9qZ1pFWT0iLDExMDk6InNoYTI1Ni1tRlpjRHJRemREbVNtNnY5TFRxdjNpaU01TkJacHBCcUdHZUgyb09GVmNzPSIsMTExMDoic2hhMjU2LTJTYXc4d1EzUXBOSlNHM0xEY1ZoMHRqRnRUdU10UHpXaFNBelBmeUdLL2M9IiwxMTExOiJzaGEyNTYtMGZXNTZYUFI1ak1uLzg1OGZ6c0dnS1NEblpWUFZJYVFlZTZkYzJUOG9rUT0iLDExMTI6InNoYTI1Ni1jNE9LS1pZbDZ0OGhiUGl2K3RaVmxWc3Y2b25HOWRuVHg1Y3dyOEVCc1M0PSIsMTExMzoic2hhMjU2LVFPWE96Qm1XOWpJODhEYlZ0OGUxb0VKdjdpalU1Q2tWanhzM1QvWDdmWHc9IiwxMTE0OiJzaGEyNTYtOXFUMmJPRU1HVTNvcUMzMTdqZ3NVN0Y1alVyYjRIN2FTVXZHd2x6UXFQYz0iLDExMTU6InNoYTI1Ni1TT2dFM2VLT214dW9XM2pYRTgvVmc4TU1FdU9zRFR6QVAwOEVkK3lYeFJzPSIsMTExNjoic2hhMjU2LXF5SlFzVlgvTm1GeWU2UDA5dzVmcXhTeVhRVDRRcU9abHlLeFJrWURoeUU9IiwxMTE3OiJzaGEyNTYtUXlqYk9jZm9UWVhERHk1UEFSZHFramtzNCt5cThqajBmOHZ2QmpRdnRrRT0iLDExMTg6InNoYTI1Ni1TM0Y2K3ZnSjkxbzdjUFB2bWJWTGsreFMvMktOblFPd0JLMEpGbXhJaGRjPSIsMTExOToic2hhMjU2LUR4RnpBaFVuNTAxczN5RFpaQXhLNmZ5a1lyVDNjc1lSVGRtNG5qT0xFSVk9IiwxMTIwOiJzaGEyNTYtclB1Wkl2a01iMHJ4TUs5QnJwa0lLTzBVTHZib1YvZFF5dHJYeVA3TEVSWT0iLDExMjE6InNoYTI1Ni1WY1JxOWJhSGh1ekJvazR6UExHNFBoUUYxaTJKZG1WSkJkRnNKNzdHa2RnPSIsMTEyMjoic2hhMjU2LWxNRmhndnVzeFB3YlYvVEQycklnUVE1N1ZuRm5JNVl3RXlnRU5ydDExMFE9IiwxMTIzOiJzaGEyNTYtbWc4MmlOeTRVZGIvc3BjMkVodUM4QjlsN2NHQ3Nhenc0VjN1S2JURW1GND0iLDExMjQ6InNoYTI1Ni1pcktuT0JUeWVRQUxJNmlTZE5pWGZxN2k3aWxwMzlKNzI4cW1uRzU1WU9ZPSIsMTEyNToic2hhMjU2LUNTZmVYS0lLRWhDWGJ2ZldLdGtvZExlU2lOckZPbkZBUEw4eXJjZi9yYmM9IiwxMTI2OiJzaGEyNTYtbmsvZWdWU3ZaeHhvajh4YXBYQWdFMy91Q0Q5M0NqYVEycWdDMjVEWFU0Yz0iLDExMjc6InNoYTI1Ni0za2x1MFlGNFpUQmNUQ3pzRU9OQTJHZVN1VXdWWEI3VGF3Tks4QmVPTHY0PSIsMTEyODoic2hhMjU2LWQxSlFReStraUhZTDFyaGlleXllSTNRcHBmZTAwZDFnbjdQSW9CR2xYL3M9IiwxMTI5OiJzaGEyNTYtZHpvMlBSemt0NU5ETjMrY2Rsbjl5UGdGdGJ4U0R3WEl4REZ0TkR2aTRKdz0iLDExMzA6InNoYTI1Ni1CblVPUG5STzhrRFZLOFZHbUpVSExDelJkWWRNQ0ZRc05XQ0grTFE3Q1E4PSIsMTEzMToic2hhMjU2LWgxTmt0SnlQQVhlTnQ1YzBWM0tJQTQrSlRlM3JrekFjaW9wOEhUc3ZkUjA9IiwxMTMyOiJzaGEyNTYtdElYVTFNY1BYSjh6V0ZCZmQyZnk2Y2JpSXYyOUdjTEZuMjd5TlBwMEZVRT0iLDExMzM6InNoYTI1Ni1BUE9IQWpWVUdCZ1cwZWFIdDMwOE83VThhWm9PU2x4NkVkaG1RSElmWHp3PSIsMTEzNDoic2hhMjU2LUx5UjBUZGdzTTk4ZXpjN3ovNmU4a2VRekM1MGw5czhWdGhWSG0zTHdDblE9IiwxMTM1OiJzaGEyNTYtM2ZBeWlLMml3MWxxN1IvdEpTZnMrOG9qQkJjRFZSNGc5MUM2eEpzV2hBUT0iLDExMzY6InNoYTI1Ni1MdHFIOHlkWjZWNXpwZFhMUlVMMWJTQ2x1UkFZV2NUZmViV3U1ODVRcnUwPSIsMTEzNzoic2hhMjU2LU82TXVkUTJSbGc0NHJ3N1k0N1IwOWthQndpd1RXRU5BUzFqWDNHdU9zUlE9IiwxMTM4OiJzaGEyNTYteVp1eUk4d1ZHelp2ay8zNXoyYW51TFdLUlIzdjB1UkpJbkhkdkVJTjNvUT0iLDExMzk6InNoYTI1Ni1NdGY0aG5qM0RmR1YySnFCWldKYzRDTnB3Szl4MzdMTFBLdms3bmlIWnZZPSIsMTE0MDoic2hhMjU2LWpxMGFKdWtSTllQa0ZYZkRSNzZUK3VNbFJXcHM4VkdJNGlab0xBWkQwWEk9IiwxMTQxOiJzaGEyNTYtb21hT2RuN20wV3EycU1HM28rRnpXbm54a0JHYlJXYlloMmNTMG53S05Taz0iLDExNDI6InNoYTI1Ni01U3M0VUlqZzNTUjIxK2dMbThGKzl2ZTRrVDlYbkJWZUxzWS9zZ0VnLzFFPSIsMTE0Mzoic2hhMjU2LUFTZ1k2NmU1cGM5YWlqL3NWWkpicndRSklZN2dad0ExLy82Snk0eXMxV009IiwxMTQ0OiJzaGEyNTYtRGlhQnFOOFk4NDZmWEVtMEJzdW1WcjlQanZWVzhrZXBScTJHWUsrMUtJMD0iLDExNDU6InNoYTI1Ni1xeEdTeWtkQ0o3RVdYQnNVL1JiMkVKQzBsYjdDKzJiWVgxampDMWc5MzdNPSIsMTE0Njoic2hhMjU2LWZwbU80TEpZRFl0bGFzb1FXb09UVzZHdnR6Q3pCb0lWRTdhVlc4Zklaam89IiwxMTQ3OiJzaGEyNTYta1c0SGhKV2lCQmtjWTVUNkdnSkdxMmFWUkEramZudFVGTjBCY01YM1dHYz0iLDExNDg6InNoYTI1Ni0wTCtHZElOWGNldlM3L1ZZYmNwejV2VnUvdEhobVE1MDYxeUxTaExGWDlVPSIsMTE0OToic2hhMjU2LWdZZEwwQzdKTjFleG1venpOWldDOG9jUnFCMXJLZ09pU2xUWXhJbmtPU009IiwxMTUwOiJzaGEyNTYtb1lMUW5MdUxndStYdkc2RGZvZUJ2TkxhZ2tzOGRnSVpROEZVMG9kL1ZsTT0iLDExNTE6InNoYTI1Ni1hR3hNVEZ6V0ovOHJFL3Jxdmc3ME0yWXdsVjhzVlBqRmJLWk4zYnkxZ1JZPSIsMTE1Mjoic2hhMjU2LStJVVl4c1BuY1dFSjBteDZuSHhubHAwSEpWdCtVQkdvL3JxVTdDRjA4SFE9IiwxMTUzOiJzaGEyNTYtamtHNmVNd0wyOTRocG81K1RmWU1OSi96elR2ZkU0NzZteS93T2dkZ3A1QT0iLDExNTQ6InNoYTI1Ni1BWHM0djQ4QWgvZUtnbXg5WDVmUlQwUmh2Qkd5dzdiZnJoV29lZDc4cmdjPSIsMTE1NToic2hhMjU2LUJmZExEMmRkWnVwdEVoNnFnQUQzWHBHem5vYTlpMXAzZzlrRndkSGZsRnM9IiwxMTU2OiJzaGEyNTYtNDlvZ2IzRlJKakoybktyR1RMc0ZmM2E2dVlnYUhEOElnTktodDh2emN1VT0iLDExNTc6InNoYTI1Ni1jMjhjL2J4Mmc0NGVFeG9tZnQwZEpXbGZVbTVIbTVkOHJiSzkvcEk2Qk04PSIsMTE1ODoic2hhMjU2LVYyTzRlQkJhN2RML0VyQ2pGbmtSSUdlMW5XUnp0K1lHYXFXQUI5bUlFRG89IiwxMTU5OiJzaGEyNTYtU0d5MFBqZU1KTUxVN0pQc296UDE0MmVTc3BPZ3BITnRmUitVTWJ4MDNaVT0iLDExNjA6InNoYTI1Ni1ta1hPRW91eTVoMHB3R3RmcXNScTJUQ0lkWlF2T2szWDhrcTZFc3k5SWxRPSIsMTE2MToic2hhMjU2LXJ1dWNOUEwwRkhDMG0rUW1jdU9oelhVZjQwRUpQVHhCd0MvTGthOW4vSHM9IiwxMTYyOiJzaGEyNTYtVlc5VnZQRmREYy9XcEVWVS9BSDZkV3RtZzJxVGNRVGZJUnR5ZThYMHB3MD0iLDExNjM6InNoYTI1Ni1TeGtqR29XSVlnZ3psa2VjZDZCYTBGZjQzQzhMNkVscDYvTndjQktITEE4PSIsMTE2NDoic2hhMjU2LUpvR2ZWRmxyanhUQ1V6UW9mVDl2bGYzb21ETmRzMVhGTkkzaWgwRXdKNnM9IiwxMTY1OiJzaGEyNTYtNG5nTjhKeEhQRDhiUndWTnN6VWF2VS93RjE0T2NtdE9EZDkyQWdzQlZkST0iLDExNjY6InNoYTI1Ni1TUGwzVDVMWlVuL0pQUlgzek83NGNqQk8xSmI4WisvQmlld0l4NmpZL29jPSIsMTE2Nzoic2hhMjU2LVdtMElzeng4b2M2WDNOeGRsY1hDNVdYY0NJaTlzczFYZTd4TTgzTTNzUVk9IiwxMTY4OiJzaGEyNTYtMEJZMmlCUjZqd1czSTNGNCtFbVZaSlpwbnRyaFdITnBJTFZhOTFGSjU3ST0iLDExNjk6InNoYTI1Ni15TnhZUVpWMU1RNWxjMmpRZll6dmNObExvYm5iWVV4dzg4byt4Z2VLZVlNPSIsMTE3MDoic2hhMjU2LXc5MVN1RHAwcGRxWnR6cHVQNGUyM1lVQ1JxVTZ2eHZiMjRiNjJZVzZsVUk9IiwxMTcxOiJzaGEyNTYta3gxeUZzQXlMdFYzbHUrTnBySXJzeTVIb3NiZUpGNFJ4K2s3cThCM2pNaz0iLDExNzI6InNoYTI1Ni1wQUdIajNMOTNVOUFBR0pCQWpJSWxkZldacHhKQVVxNDcyRWlVVHN5NW5jPSIsMTE3Mzoic2hhMjU2LTgyV0RtUFhyMUFOeU1uU0NSQVQ3OVJ3NTU4UkNlaEkxS3pXbGQzNFk5TGc9IiwxMTc0OiJzaGEyNTYtYmo1NEJCQVNCUVhHNnFOS3BNdmhmL0YyaVNpOXdveG5WWk9TQzEzUVk4ST0iLDExNzU6InNoYTI1Ni1YWm1sT3BnOTN3Y3J0cTRTbExrRHNmRjJlODN1eUhpT3FOVFVhalFpSVo0PSIsMTE3Njoic2hhMjU2LVlWSGlRYVFKQUxQbHkzdEZ6ZllTS0hOTERxdEFtM3g4QkcrTFU1NTg1Vjg9IiwxMTc3OiJzaGEyNTYtVUFTdzVISDV5MkpzVlNzNEtTQjNVc3JzeHBXZ2Y3OEZ3V09XdGI0a3cxTT0iLDExNzg6InNoYTI1Ni1LOXdyUmZsc3puYnRHNytTcGxZa1ZSSS9rZXMrK0FNbm8wckJYQnhSMWdZPSIsMTE3OToic2hhMjU2LTUraEh0amE1S0srZ1dtZERhenYwWGIzVVplTGZzSWNxanJDLzc1ZnVLMEE9IiwxMTgwOiJzaGEyNTYtOVZXY3dJVEFBcHB6QWdySDc3UDF1WXpYRytJWUFuUmpSQXBwbEVrUkc3MD0iLDExODE6InNoYTI1Ni1kZmRXRE5MVTBlSHBwRHlPZ0h1Y2JweVlXd1pNQ3VybjdDczVDcUQyUkxRPSIsMTE4Mjoic2hhMjU2LTUzNXphNyt2eHBsZ0lMcWNwM0hkR3Qvekk4THh1Rkc3eHl6bnpWRWY1VDg9IiwxMTgzOiJzaGEyNTYtVlVlaHYwRWxLMkh2V0VnMGVaRDhZT1owWmJGRG0yQW1FQzR6azlPZ1FiUT0iLDExODQ6InNoYTI1Ni0vQXI5M0Fha1RMYktodUNyclloVW5sLzMxdlJXdDNuaXdJSmdvRzd4clBjPSIsMTE4NToic2hhMjU2LWJMYmJjY2FPSHNiYWVWYm01Z0krQlRVcU5DbUV1dnl5MlFVS2ZWanowY289IiwxMTg2OiJzaGEyNTYtSVc0K05sKzRoZFg0TzRVaHFLNXBLVkxhUmllSVNpKzFiZGpEWHFOTk80Yz0iLDExODc6InNoYTI1Ni1FOTFrR3BlNFlDZUZaN1pkTkk4elhkSWVRaFE2dzNzNjFVVlVUdk00L2RRPSIsMTE4ODoic2hhMjU2LWJoc1F6aVl0cWU0ZFNzMFZuV1dxMUpNQ1BuTWZxNlFMWkU2TUVQTmJXYTA9IiwxMTg5OiJzaGEyNTYtWTVaVXpVNzVkTnB5VWdlNkRPem1JU1ZZbk8zckw5Q2dQMmUvSlA3Zk1zOD0iLDExOTA6InNoYTI1Ni0vT05NOXFHZjExbTlSVUs5NERwZGVhLzdaNDY3YkFyVUJ4VlMvZHhEZHEwPSIsMTE5MToic2hhMjU2LTZuT1BlZWN3Z0dYRStrdTZuTVBlVEZwbVBSc2pERVlRZ2ZjUlNYYjlWZDA9IiwxMTkyOiJzaGEyNTYtQk9CamRSMTB3Q0kwZEVxM2tRWTZGMU5MZUxvK3VKNWVHR0tiellPLy9rST0iLDExOTM6InNoYTI1Ni1zVzR1VVVKdHhPcEhZNW10WTl2dEl4NUlIa1ZqOFE5MkNqZkxjdFFLdndrPSIsMTE5NDoic2hhMjU2LU5LeDBGbVl0bDFZRHF5MTlVMWx1OXRXS3EvY1lIc2FLejVvV1hlMUJNL289IiwxMTk1OiJzaGEyNTYtSXlKVEtlT00vSlR3YloxNWZZVFJtMHpUVjhLMi9RMG9rUlBiOVlMMkxoYz0iLDExOTY6InNoYTI1Ni1ESUxuTjlSUkQ3MjRXTFNLUHdjbUNQTDlUU2JMOFZsSjhud1BpTDhhemJNPSIsMTE5Nzoic2hhMjU2LXVIS2ltSkRjYm5MVlFoQ05kOWN6TWxUMjMwNTV2Tk41QW9iWXBXY001QlE9IiwxMTk4OiJzaGEyNTYtUGhZMlFHUktDRnBWcUY0WnhuODZKNGMrM2JKUkRuZkUrR093S0F4Yi8xST0iLDExOTk6InNoYTI1Ni1zaDhNVmJXemJNUzVVQldBZ28vejJ4bHA2UHNaMldmcHBKTTBnbGhKZ21ZPSIsMTIwMDoic2hhMjU2LU5hcWQwZkJ0c21uZmorVldHbGMyS0FKb3ViYzVEMWJOaUY3V2tJcjAvQ1E9IiwxMjAxOiJzaGEyNTYtRnpFWnVremM4Sk5veFRDVUhsb3BsZEJnbkRKV1FRcHdMeXFzREMxUVNpMD0iLDEyMDI6InNoYTI1Ni1iVGhIT3EzdWo3dVUrdWwvbU5zWm1maU9OSDhvZDA1VVUrbll4NzR6SVJVPSIsMTIwMzoic2hhMjU2LWtvbllOWTNBTVdPbHBaSGdiVlI1cFZicjNqZzBwQ1NqSDUxZkN3bSt6Tk09IiwxMjA0OiJzaGEyNTYtNi9rT1NpWWRZZVdvcjZIQ1M4UVA3S2NUdndUWXl1SkxNcm9HRUI3Nmo5dz0iLDEyMDU6InNoYTI1Ni0yRDNHQ24zQ2hvcEMweWZsSERGL2pxa203eVNRdWM4dUQxUmRxLzJqYmtrPSIsMTIwNjoic2hhMjU2LUR4NXFBQU93MXFvZFgvbGhEdG9nKzNCbGtrbzY0VUhiR2xkUERvZG5ZdmM9IiwxMjA3OiJzaGEyNTYtRDluaDZmckV4bXlRc1JxYXRVT094L1Q4UDF5dzRYT3MxZ1c1L0ZKYk1NUT0iLDEyMDg6InNoYTI1Ni16MjVOUm1uRGtTZXNzZjlvVFhuMnhZTnNqcVUvcVNTeXNaUFJCSE55RjkwPSIsMTIwOToic2hhMjU2LUFCcVFzZnpQVnhsVGhoRXVSaVg5M1lNWjZNS2RYVGk0dURtSzRJOTVKOGc9IiwxMjEwOiJzaGEyNTYtRUdQQmF5cGF4ZlMzbHVaMGlEMmtSKzZCbU5SVjJ6VFRrN1FJVGg3ZDdPVT0iLDEyMTE6InNoYTI1Ni1MUmlnZlpEZmxhdit2K2t1c0xLOXpRTjZqLzA5SCtuem1tckIxQjgwR3dvPSIsMTIxMjoic2hhMjU2LWE1SW5qMVBjVWpndEtBQWkxU0UweE13QUZQdWk0VTB3UFhUSUYwQ0ljZFE9IiwxMjEzOiJzaGEyNTYtTFVpZmV5bnBpNXgraVVodWxuMEhxQ0xDdnhnRjlrdGJodFB2dUN2TlJhMD0iLDEyMTQ6InNoYTI1Ni1QTW9ERG1vd05PbDJaMGI3cXhIa0lXa2NUUk5NTWdOUHhYbVJuQS85VUh3PSIsMTIxNToic2hhMjU2LVBHSi9YY2psdjRBK0wzR3MxRjllRFhIdEM2Z010aTJKbzJYaXdOS1NIRE09IiwxMjE2OiJzaGEyNTYteGlxWHhPMVAyaVhmM1NaWmVCTHhkR0tXbVhJMWN0YjFUQW5DMi9jblZZRT0iLDEyMTc6InNoYTI1Ni0xWnhZREJzeDQxcU1mc1NuSTdxZC91Tm4zbnNtcVRmdDJ6Mm9OQWlkUG9vPSIsMTIxODoic2hhMjU2LTJrS3B3SmQ5cFpwdG5vRVpYb25RWkNjeFRUYnhYNGhuR1gyNDhyR010TW89IiwxMjE5OiJzaGEyNTYtOUowUjZjYzFqSzh5UUoxZFk2ajhSaVorWmZwWkZ1SjMySjZ2cGdkQXhBND0iLDEyMjA6InNoYTI1Ni1xaG5xdGdyQUIvKzFlcXcxMGoxZnFFR05rRGJzcU83ZUhtV1gyVUo5cDdBPSIsMTIyMToic2hhMjU2LWRDUXlNcmk1N3lEcGEwYThSS0d3K2Vna1lmUG85OUhuK0ZEZlNibXZkUEk9IiwxMjIyOiJzaGEyNTYtM0RsTFFxaDdSSVdTZWd3Q05uRmo3V1pmK3RodCsxb0NQLy9NbUJodmUvZz0iLDEyMjM6InNoYTI1Ni0yeVpZT0lHdGlHT0FGb1NuckE2cjVtdU4zZVJKbktnVkNybmpxRm1mZnpVPSIsMTIyNDoic2hhMjU2LVprRGlHU1RJV3dZZjB4Vmk5NTQwZHhZVG85dTJZc0xVVjczWW14a3NGQ009IiwxMjI1OiJzaGEyNTYtNVpyTFJwL0RFUVE4TXFHaVIvcEdmTS9oOHRHMmRYelVKblV6K1RFRjFLdz0iLDEyMjY6InNoYTI1Ni0wTWlmVmoyS1BkL0RCajhiUmY2SDMrYXpnZVRpZ3FHL2l1TWxqZis4V1ZBPSIsMTIyNzoic2hhMjU2LVFzK0N0T3N1V2xTQURDVzMwVmx3VVV6dGxxL2JueEp6Q0owNzV6NXd6ZGM9IiwxMjI4OiJzaGEyNTYtT2N6bGIxd0phbkgrM0J6aGxrY0ZPTzk0MGU1c0FyaXRCM1VlenAxUi8vOD0iLDEyMjk6InNoYTI1Ni05bmlyRVdyQnBpTWVkZ3VCbzk3QitWL21BNEl1QnRNTTdJUGV4VU04N1VRPSIsMTIzMDoic2hhMjU2LWpXSVAzOTBKMkV2OTNIQ2pENXk4cDlnb1BqMFVVcTIySjRqSkdIeDlEMFk9IiwxMjMxOiJzaGEyNTYtbVV5NFQwMUUzWE9FRW0vcW9sYlc5VGxDN0VnMThTaGd1T1F3eDJnZ2JNdz0iLDEyMzI6InNoYTI1Ni1vQnBabkVlRFBDU3BYcXU2aEN6bXRRb2lSa2xSRjhFc3VIL2JQaXBRWUs0PSIsMTIzMzoic2hhMjU2LUE5Mmk5N2ZyOWFwazdWcFUrYnlaQVhadHQ1bFh1M2VleG9sU3l6cFkyV3M9IiwxMjM0OiJzaGEyNTYtOXZCUHdZdDA5N2RGMGk1Z3BZbnhpSE1vV1YwdVl1cFdSejVqMzF4dlB0cz0iLDEyMzU6InNoYTI1Ni1hV0Q3QzZMUGdkZEl5MS9RVnlFakZ1S1lZRkJZeWt5MzEyUlZMUk9RK2lnPSIsMTIzNjoic2hhMjU2LTVzQ05HM3l3dUk5YUJENGNRUjdSNGhpR2MzeUJDdXhnazQvTzRCR0pDVTg9IiwxMjM3OiJzaGEyNTYtbit4VU1UNko3emt4ZEhCSC8vblhkVlRUbE9UcmZjN0VZOThqQjRUc0ZQZz0iLDEyMzg6InNoYTI1Ni1YLzJlNFc1QWpvT3NITEU2ZzlzbXBOU1hic21DRVJSbHpjVUFpMVVnMWQwPSIsMTIzOToic2hhMjU2LXZ4Vzd4NWNHWEV5cENaV05oZUZHc0krRXJlZHRzVVBBQkxMWktVNlpXY1U9IiwxMjQwOiJzaGEyNTYtcjlRTlBCVzRYank0anpGWUdvMTBQUWo3eEk1cThTQVBCZ2dEMkx2NjhwTT0iLDEyNDE6InNoYTI1Ni1aRUtydUV6T095TS9mNjZPM2Jzc21odEtjNVhuVE91TkFkakFMR1V4dnprPSIsMTI0Mjoic2hhMjU2LWdTS2x2Z21aRUg0YmgyRDVDSXVhTHpBYXBuL0dmcnIzOVA2OXA2bjMyTGM9IiwxMjQzOiJzaGEyNTYtUEFyWlRaTGEyVGI1ZExpYUcwRTdVZTFYUnVKVVVYcEl4M1hrY0QvNncvbz0iLDEyNDQ6InNoYTI1Ni1TTE5ZM2RKR0IzMVJmbXlsaHFsL0ZHTXV2SXlGYndoMUZpVGloWE9Rdk1FPSIsMTI0NToic2hhMjU2LW9rajRWUDBFQURLc2ZyeTNldDh2WGFnUkV3eWVaaEgxVlpLcllQaGFlVWc9IiwxMjQ2OiJzaGEyNTYtZHVwZEkxTlRjKzRkbTZ5VmdLYkVuZGZSL2w2eFlJZ3ZJVnJpKy9vRUo2az0iLDEyNDc6InNoYTI1Ni1pOFJ6d291YjFBcnQrdDB0RGd4VE0rS3Y1NWprMzZpY2haT2FHV3FnbGNBPSIsMTI0ODoic2hhMjU2LWJBWm0zWTJWY2V4Q0xKSmNtQ1lHaGlrU2YzR1krK2o1ZTFySGpwczRVTzg9IiwxMjQ5OiJzaGEyNTYtMEhGMFRPQU9UcndWQ3hsUUJORFNQRVpROVVlV0xBMUVQams4WXBHNnZaRT0iLDEyNTA6InNoYTI1Ni1scHRaako4SXM1SzFBc05zc25tbVJzSGxKMDRka1JjT1NNOEpMVHlwQi9NPSIsMTI1MToic2hhMjU2LXEvWmNqS0h6eUJDMEJSbllJNkd5bTU0ZU56OFR0VnQzOXdFa1dndG9lM1k9IiwxMjUyOiJzaGEyNTYtUDB1dkRoOHZxbXB2ZGxRQnllaDh3M3h1WWJQblV0QXFVVkRyYU40TnFpTT0iLDEyNTM6InNoYTI1Ni1hbUR1aWVUVzl0R0NjOUVqWmI4dnVQblFpT3E4UXViTFVHcVUwQWV4R3k4PSIsMTI1NDoic2hhMjU2LWVJSit4ZGRMWm8wVDV4V0dkbXFvcWdpWllqRTF1Rk1IYWdmZjNubUE5OGc9IiwxMjU1OiJzaGEyNTYtbCsrOTVtelVXVWtyaFhxSSt2VHNBSnpENXprZWd0Mkp3ZVh6WlBaeVJqVT0iLDEyNTY6InNoYTI1Ni1UN1Z0alBXdHljZVpDTXRtVkMxYmFTaWJaOUU1OVNlS093OTJlUW1KRzZ3PSIsMTI1Nzoic2hhMjU2LXo0R3c2OHF1RHBhTUxBVE1JVkVQZmY2WDJwUVhjNk9OYnlRS1AvczVaTDg9IiwxMjU4OiJzaGEyNTYtK1VnQjIrS3Q2ajRsNkpVVW1oaUl4ZVhYZm5PdkRxZmpmb3lYVHdmbVBrND0iLDEyNTk6InNoYTI1Ni1WTllJSnhNTTFJM1lHUUJxWmJPN1QvMzZ6YnF6ZHR0YTFkY24wVDc4UWs0PSIsMTI2MDoic2hhMjU2LVpaTzFHdlo4S1dhZUcxSDVORzRzdVlqNmQzR00rZkRwRkc4YmpMYlhSMVU9IiwxMjYxOiJzaGEyNTYtZHBrSjh6ZkFkS2xJNnZTeTRtMlZ0YjBETXRBYzAvK09uMi9rN1RqSWIzbz0iLDEyNjI6InNoYTI1Ni04cDFyOW1lR1EwQmsyeVFwTmJLNEJYK1c1RFRILyt4SHFsVXh2T3RMOVZnPSIsMTI2Mzoic2hhMjU2LUFtUEZHcStJNThtWTRtMXQrY1BZOEc5eHM2ZW1SbFBXZURIRlhLYXlIeDA9IiwxMjY0OiJzaGEyNTYtZHB3dW9zU2hCcXVZcFZ1cVdZaG9nbitlZitXNzRZMU1hYlFIMVgxQkRwaz0iLDEyNjU6InNoYTI1Ni01UDdtTTdoT25nUWtOQkFBSE5nNWJGY3ZRK3ZSdjllYXZkalUrbVdLVUR3PSIsMTI2Njoic2hhMjU2LUViMm9XNE12SkJOSGE3OGVaclVyeDJKeXMrUU9KY0UyNVQ1aGpQWmpBc0k9IiwxMjY3OiJzaGEyNTYtR2JaWmtENTRWUVUzc3FmV0Q3elRlM2wybWZLRjFTUHY4ZXQ0TVVsTHJ1TT0iLDEyNjg6InNoYTI1Ni12M1dQWk9objBZemFlWmlRUGRrNVFsQXVYcVZNVnRYY25zMjZvaU9GeDBVPSIsMTI2OToic2hhMjU2LXlJV0N1Ulh0K2tHQzU3cjVDNmtQN1dJYUZlVzVLMi91TU5QRTFrdDZucDQ9IiwxMjcwOiJzaGEyNTYtWkU4b3ZyOFhSMjVYTU9td0VYVXZ5djBhZ2pGQ3hFSFZMa05rVXZUejl6RT0iLDEyNzE6InNoYTI1Ni1MTC94R05YTm8ya0RJUEpFWFhRM29CeFU4SGJ3aFBSSTd6QTFHUFBwbVVRPSIsMTI3Mjoic2hhMjU2LTJhVFZuNnpmRVgyUG5hVDltQ0RVM3NYSEFaU2xzdVdTNkxLd3ltcG9YN2s9IiwxMjczOiJzaGEyNTYtL3dMWEYrbVdrV0Q4WjFWK1RFcGdKNjdmNXN3Y3JJSUVqVUEzWmY1YmhIaz0iLDEyNzQ6InNoYTI1Ni1uU3BaNE1wSzFvdXg3RkJ4K1RyYWFvV2doMmNza0l6ZHJ4YU93QnB0eFhRPSIsMTI3NToic2hhMjU2LXFST2o4TWg3VFVYT21SQlBQUmJNVVFaT2x0ZTZtRlprNGF0SklrR0RSMmc9IiwxMjc2OiJzaGEyNTYtaVFuNm9lNFBIU3hBUWJpSWtNRlZtNEtkZVZta2tYN3BXd2VZSHZDV3ZpVT0iLDEyNzc6InNoYTI1Ni0xczVPYTl2d09JdVZJeFNaL1dRYUFTMDJnb2RYQ05ERWxwYTRCL1cvRnhjPSIsMTI3ODoic2hhMjU2LXZZRERFYStqb1pqUTlSazkyTGl0cy9sTzNwQ0FuN3RIZnN1cisxSjdVK1k9IiwxMjc5OiJzaGEyNTYtcW1QaWpQanFVeVRHSHVJZXFwRFFHMk13dGR3enFTWndYaVAxcTdoeUt5UT0iLDEyODA6InNoYTI1Ni1IWDVFRzNwM0xoODM5QmV4ZmMxd0ZKUEdzOUVIZzRXS0J5R3hZazRHOU5BPSIsMTI4MToic2hhMjU2LWVOQ1VQZFVyWit1Skd1dUhLK3d5aWJYNjVEQVNFV091L01sbGJhcUo4K2s9IiwxMjgyOiJzaGEyNTYtRWxkTzJXdUVkTE1IUFBJUis4MDVZd2NzS0NDWG5abG1YTUh6bG9mZ2t5ST0iLDEyODM6InNoYTI1Ni13by9CSGd4b0JOdmFKalQxQ01tSUJmdkV5YlpmTFEyeVV1TWJTczR3SDZVPSIsMTI4NDoic2hhMjU2LVVhdUplSkZqRVBvRm8zSDhsdEo0dFNtZWwzcVlUL1hTcm1KY2Z1emxaL0k9IiwxMjg1OiJzaGEyNTYtMlMxeS9YcTlMTVhmQmxhaFpQTVgrNnhhUWZYNDY4ZUo3WHB5MDVxTnA5cz0iLDEyODY6InNoYTI1Ni0waC9UN0d2K2V5dWZtTElxWmRrWGdJKzI5djRQSDdpdWsxUzVKWGpMSFJ3PSIsMTI4Nzoic2hhMjU2LXBFUS9mc1JWSWc4L2phTTY1VVFIK1VJdHdscm9xR2d6Ync0UVJmVGJmZmc9IiwxMjg4OiJzaGEyNTYtdmFoYThqRHduYm9sSGRsdysyeHdIVFFYUjJFc1hrMmFLUWNUOGFFWURRYz0iLDEyODk6InNoYTI1Ni1uQ3RZRVRGSkEreGcxOEx6QmdKZzd6aDlLN3g3ZGFWOFBSejFyTWYrSk84PSIsMTI5MDoic2hhMjU2LVZlekZMaE1FWmlJRW56WG1EWGNPTVBxMkwyeVRPWmZHU1lZQmNSZHowOGc9IiwxMjkxOiJzaGEyNTYtanJyYWpzejFXdnBPcVBxc3BidUR0M09qNXRCaUJsVW9ZWVFrTFNsMzFpZz0iLDEyOTI6InNoYTI1Ni1lRGg5NVc1ZzVIZjB1eTBic3hRellvUzRFQ0hVUFlYb0IxckZ1Y1ZwbXJBPSIsMTI5Mzoic2hhMjU2LStTaEtQbzdTMngybUhyb2VPZ2FLUkJ4UDQ5bjVWeE44NER5RGVLWE1QWG89IiwxMjk0OiJzaGEyNTYtTDRnRW5DcFRJOTFZYmF5QldZZVRxaUFYZVFNdzU1amUzWkpZd05GQkZjND0iLDEyOTU6InNoYTI1Ni1PWlVTQktZK253Ukw1K1lEME5OaVdEVzVMZ2pPK1NlYVJSY2JVT1BMUDVnPSIsMTI5Njoic2hhMjU2LXZVeURERlJHRml4VTFBMFp3OC9CM0thWVk5TTFML0FHMHFjN2ZNZkwxVkk9IiwxMjk3OiJzaGEyNTYtNmRuZWszdGlIWUdLT1FOM3gzZjgwSU1QZ29Mc2R5RnVqYnlNTjRneGFPbz0iLDEyOTg6InNoYTI1Ni1QZ0RiTVE1S0ROc01rWUd2MFRmM3o5UW0wL1lxVnVVd0p5OVEwc0M5SHU4PSIsMTI5OToic2hhMjU2LTZDRXVBWDF0SVFuZ0NPK0J6aDRJMUU0ZHhsTmJNZ0FSQ3BFdFc3cm9JR1k9IiwxMzAwOiJzaGEyNTYtNWlqZmRpc0R2eXkwbEMvUUpwK01SbXJ5VFJ0RU1jZ3VMU0lrRTliMlJtVT0iLDEzMDE6InNoYTI1Ni1kVFdRZTRkOWJlZmdLYm84T1dEQ3ZWem9WNlV0UXREWnpnMWRUemZqZWZnPSIsMTMwMjoic2hhMjU2LTZQdTI3ZW9KQ2tBc0drUDV6b3FEZ3RQN0c5UmZ2US91UHM3VmV1eFBnK289IiwxMzAzOiJzaGEyNTYtS05Xd1pMaW5QZDFwL2liUzFKQTVyZ3lZQ2JCNWhMSGk2Sks1UjU4d3QyND0iLDEzMDQ6InNoYTI1Ni11UXVLejJvVWFBQU1ISlhtNkg0VjRhUG02ZGQzR0ZaUU5qejA0ak9ESnc4PSIsMTMwNToic2hhMjU2LXdscERoVldsWEt3V0QzMTlmQUxpWkVVQ054dHBCSnpud2l3RHdJeDJVY009IiwxMzA2OiJzaGEyNTYtR2REa2E0UGFOeC9pQWVXT0dmdDJxclgrMlpnU1dlTFk0Vk5LaG1LWnJhST0iLDEzMDc6InNoYTI1Ni1TaEtCYm9YWGx6YWd4VTZ5aFltOGVyeER1Y2Y5M3B6UXBMcGc4RVdiL3o0PSIsMTMwODoic2hhMjU2LXVCT1B5RG5WZ3Z5M2ppbnBqTWQrUHFkNUE0SFB5M29rVXdWMFpqQnd3c3c9IiwxMzA5OiJzaGEyNTYtWlJ0K1lXdS9YSHMwd2FBYlEyb3VmSzgvMGVvZ3g1bXBYeVNRRzZrbHJaMD0iLDEzMTA6InNoYTI1Ni03dHFyR2JUM2lUY01DZVo3U1AwWFBmYXcvcTZlMGRlZE5kdUlqeE5ZY21BPSIsMTMxMToic2hhMjU2LUIxVmEzOEsyd1kwbkhXMTQ3bUFtK0FWWHNyVEI5eHRwQVRRUlZISHJjaG89IiwxMzEyOiJzaGEyNTYtaEFIcTZER29aZ21RL0QyeEV5Ym1ObFZKaW5jeEsybjRsRFZENWg4QUY5ND0iLDEzMTM6InNoYTI1Ni1lL3JxWXhWTUxaejRkYUdIbHRlT21yQjA2OS9CWjNwcTBzbE1PaDZUNlhFPSIsMTMxNDoic2hhMjU2LVVnMWZQVUFhTEhPVEhHSHFuNnRmMWcxeEtOa1ZuRFp3SXpmWHVpWGNRem89IiwxMzE1OiJzaGEyNTYtdUJvMTF5aFlyRWduNGxneW1zT3pIaDhHcGljM3NMTVVFNkR4Zy9KZW1CVT0iLDEzMTY6InNoYTI1Ni10aGxacTFWeWxtVHFmNHg1RTRXRGl1SXNGbjRva1ZYMC9JbmVRMjlaN2RVPSIsMTMxNzoic2hhMjU2LWp4T3VWUjRxcHdzVzF0YWRxYmpXSjVDMmt4d3dTcFFCMmRvV0VaMktzb1U9IiwxMzE4OiJzaGEyNTYtRGFKTEtRVHpld1RzT0pUY3lYbzR0ZS80Sm5RaE1EUms0b3c3aE5JMVNwZz0iLDEzMTk6InNoYTI1Ni0rNlF0ZDJkWW1uQVlYa2xiVW80ZWk1VHBxTmE3YTk1WVgrSHJZT0xmenJrPSIsMTMyMDoic2hhMjU2LUM3OElDOThFNGtXcC8zczBBRkRQUzI3cmg2VzBsa0dUSWZUbWlsSmtqazA9IiwxMzIxOiJzaGEyNTYtSFFxTzFYNS9HaVpuaXkyM05HT1F3VmF2MEQ1VjM1dTFPeUhNeWZLaHFYND0iLDEzMjI6InNoYTI1Ni1VWnlFMmdQUFVqejliRVVmc0dFRFkwNWU1Z21BR0VyZWZRTVQzbDUreGJBPSIsMTMyMzoic2hhMjU2LXVsZUM2YVE0YUVRMWJlNW9KZE1pZE9zbXZ1UHp3N0twcG9BMFptRUVhM3M9IiwxMzI0OiJzaGEyNTYtbTMxUzgzbEFtWVJKNS92TlNkYTVWZHhPUEJ5OHF4Rm5NcHVlK1VHTkVWST0iLDEzMjU6InNoYTI1Ni1SbFlGSHlZNXgveGgzYmlUUDRLR2p1RldSVTJPWXh5amNzcXVldlkrc2prPSIsMTMyNjoic2hhMjU2LTE1a2ljMC9mb09lM2FhbUFURGl4eU9tVisyd0FJZU52cnhHdWFvcUF3QUE9IiwxMzI3OiJzaGEyNTYtWDZxZERZQUxMQmtXaGJIMitlOGVZa2JNSXdRTTdqNjNybmVUVDk5aU5tWT0iLDEzMjg6InNoYTI1Ni1jeVFCWWwwZkVkc1JualZzTWE3TUFYTE5LSmo1S0tKSW1td1UwbzB1MjIwPSIsMTMyOToic2hhMjU2LWNoTDFERnBObWhXTVp3aWptUk9zcThob3FNcHphWW9JQVF0UmtIUXQwZG89IiwxMzMwOiJzaGEyNTYtREh1ZWRXU0dDUkhYdWZxc2ZraEk4aXA3bXVhb0x1ZjdpTlVKejZvVnlrND0iLDEzMzE6InNoYTI1Ni1SSFo0bGwvTjczS1VvMFNraVNPOS9FVzFXVm5YbFNDeFZFTlAxL0RLalRnPSIsMTMzMjoic2hhMjU2LWFsbmZCeWRRQmV1M0haeXBJTVY4NERhU1N0VmFma1RrZjFuY09LU2pqUGM9IiwxMzMzOiJzaGEyNTYtZ0VYVU1nUjA4T0lhaW02V1BrNVVrUXJyZDdQZGJmSFlsNEFlOU80SXVqUT0iLDEzMzQ6InNoYTI1Ni1JYTZEYStGQTFWV1hvSTl5TzZoSmRuS09nZXdTMTlSN3VyeFV3OWxRNzM4PSIsMTMzNToic2hhMjU2LS9LbC9iZUliMy96MlZTaElaTWZZUk54NlQyNWg4SGtsMGp1T01wZ1BNaHc9IiwxMzM2OiJzaGEyNTYtMFZsb21WUjgxaW9TNDZOeTNrWmx5cmRGTFpnNFdWUTdFdHFmVm0wZERZdz0iLDEzMzc6InNoYTI1Ni00d296QWRBNGxiaExtVUVNMm5SWDhpNnhJbGcwQ3BmVnAzUjRxTUQyWDdJPSIsMTMzODoic2hhMjU2LWJNSDJsU2Vmd2dSbzVwajlYQnd4QnloTW5IaWo4amdlb1lTa2loblM3R1U9IiwxMzM5OiJzaGEyNTYtRFo5SXlVZUU4Z0ZBamFDZVVRZy9rZ2FQM2NJYTFYcy9IdWxxTjhsd01kTT0iLDEzNDA6InNoYTI1Ni1kZ1JkS3hUN2trbEJoRVE3SWRGMHdyT2RoVHhOTENNbVRQenpWR1ljUmlZPSIsMTM0MToic2hhMjU2LUFEbGxOMEkxeURKOUpDZDB2eWhOemlWTTRvdEdCK3p5aUdwS005c0pqNG89IiwxMzQyOiJzaGEyNTYtZVNJRXBSZklCcGVXUWVZSTJ5RmlKN09sSURJZzIvUDd6bUovcm9ITEdmST0iLDEzNDM6InNoYTI1Ni1WL3BiTjE2NERTd3ZsY2wwa2kxRmhrL1RsdUlvVjRXMkF6bE1KTTB2RkZzPSIsMTM0NDoic2hhMjU2LXAyeStvR1VHZDlsOE9BekNkZkZjU2tsN2JRa3Jrb0RHSytOUFZOdDdlcE09IiwxMzQ1OiJzaGEyNTYtdlVTSlNCcWh4YktsRC9XUlRFQXdLenJDYUxLRlBXT0JDWHJFdGVQa0s1bz0iLDEzNDY6InNoYTI1Ni1KbTI1bGdFYml3R3lMZXUwTkhqdm1ldUwxeHRZYWQ3VEQ1eXJ4T2RqemI4PSIsMTM0Nzoic2hhMjU2LUNrNFBIRjR0VDVnSXZhNEU4RWppT1ErV29MZVlLR1h4QitWSGZERWMrVm89IiwxMzQ4OiJzaGEyNTYtZVovQXE5Q3dueFR2dS9udWNpUFVBVFI1aDBuT3NHSlBmV3E4Uk92MENEUT0iLDEzNDk6InNoYTI1Ni1Icld4UGQxMWZmaHVsWHNKSlB4VzBUSloxOXBkVHcwRTN6S0M0VnliaDNrPSIsMTM1MDoic2hhMjU2LUYwSTZjZmI0WEl4REJBMzRWNVFBVVpNZXVSMEhNN0xsMUNWNmlLM1VKa2c9IiwxMzUxOiJzaGEyNTYtTFVtR0tJdUNKRTNrNmRuMGpSMk9JOTgrQjg4eUtidTFObzBzdTVtb0hmTT0iLDEzNTI6InNoYTI1Ni1oU2s3M3JoTCtuZUQwR1lpU3NHVUdFb2VNQWlqbzYwSDRjM28yRkU0VXVRPSIsMTM1Mzoic2hhMjU2LXdCbVNwRmRUaVVmMktFRFhjZFNOUHdVNTg0cGFYT08yclU4ZE5ORTFIQWc9IiwxMzU0OiJzaGEyNTYtNzNsK0RzMkJvTHptVkhEcm9uTEx1Q2luR08xS2dGZis1QmhwTWY1YW5zST0iLDEzNTU6InNoYTI1Ni1aZEI5SXFMczJ2dUdaUGh4cnBiTmRHSlRUSC96enEyYy81bTVxN0MxbTU0PSIsMTM1Njoic2hhMjU2LVQyQWdGUHQ3bjNUZmJjK2Q3VnBMN1FQU1RYVGtsd3hKaFlaUnhZQVJacVE9IiwxMzU3OiJzaGEyNTYtV0NrU1lRMU9ZMy9iWnI3c0xlOWd2MjRXa2p6WG1LU3FWMzljam1ETDg2MD0iLDEzNTg6InNoYTI1Ni1LNVlqV1VuMjAxQ3ZGUXg5SFhOdU0zU2wvUVlLNkk2azlhQ0ZrSk1MR2pFPSIsMTM1OToic2hhMjU2LUNRaHlIQysxREhWZXloWG43OFBMcVhmQ25IdjhTaStJMUNoNWswL3FzYzg9IiwxMzYwOiJzaGEyNTYteWhvZ3FaNEp2QnZZZmxXTGR4YVJDY2IxUkJuRURKRHp2TDJsMlgwN3l4RT0iLDEzNjE6InNoYTI1Ni00ZEtZU1lBMG1vL3l2Skc5OFJOUUFRTFZZSW9Hck5PTXlkRk1BbC9nemQ4PSIsMTM2Mjoic2hhMjU2LVY2UjR5RUZMeXQ1dExhWUtObmYvL2FkdTVmd0RrMW1BRU1qNzV1eGNyWVU9IiwxMzYzOiJzaGEyNTYtQXJsT0xDRXpoVUxJaWtUZTVMSVVSRDBKSGFuTnczMWhtdUE3c3BtZ3lKYz0iLDEzNjQ6InNoYTI1Ni1sSHpZQ1JTNXVTcTVXdmdoa3NvMWxnWGM5VkczUCtVOHFtYWgwZmNzdDJrPSIsMTM2NToic2hhMjU2LW54dS9ObHVDVTY2WlltK3BNM0txTTJCL0k2dldxRWo5QmgxNnNMa3UrM3M9IiwxMzY2OiJzaGEyNTYtQUMvNU95cEtnblRpN0VydG1vOE16S3FXbVlBUzZWam1jeVZsa3djZ25Zbz0iLDEzNjc6InNoYTI1Ni1iNnVLVytQY2NIY0Z6U0FKM3Zncis5b3M3QVlHbU04YTVPVHpNM0hWaTVZPSIsMTM2ODoic2hhMjU2LXZVQ0RNbDNEU1Y2ay9UYkdrNVI5eW5zR3lpMUsrVjB4RWJQd3VPVWY4Mjg9IiwxMzY5OiJzaGEyNTYtQ0pSVElweVVkNWZ6RHpGRUhxbG4yYkYveWlPakJXbUVKd0hXdHBLdDRUaz0iLDEzNzA6InNoYTI1Ni1VbFhiU0svcWQ5djczWFhnNWJHTnUyLzJTY1V0K1ZMYlBjbzBEcGJOejNJPSIsMTM3MToic2hhMjU2LU1uRGNpQ2VwZ2pmZjBWT3lSc1pqK2s1VFg0R1RrOW1yQWJVeTU4MTVuMHc9IiwxMzcyOiJzaGEyNTYtSUMrTU15ekJWN0x3ZE5lK25PTGc2MWJveURucDk0RXZrWDA3aU9XRTByVT0iLDEzNzM6InNoYTI1Ni1CMW8xTkFKbm5SLzRQS0FLQ3FON25EOWxLNWdLZlR0aWFTMFhYdFdLT1dFPSIsMTM3NDoic2hhMjU2LXZmNzBsL2pHMTYwTENyUUsxQTM4dFNBczVuQll3dTllVFZDSXYrVjlKYlk9IiwxMzc1OiJzaGEyNTYtL2Y3VXZLWlE5UmZSekhUUXl6Sjg2NkIxVzJsMmhMOG0raFk1Z2wycks3UT0iLDEzNzY6InNoYTI1Ni02MUsvYXFWZ1RUSUpCV3duaXl4Uzh1ajJoeWJYTmxGMmpjdVpPLzJSblI4PSIsMTM3Nzoic2hhMjU2LUdJdW8zaWRLbTE5a0VHN0JxQmlySDlOY3l1MGY4cGJvVy9NNEplTjJxTUE9IiwxMzc4OiJzaGEyNTYtR1FoV082amI0elBZUTlaV0c1d0wwY3BUNUFxVHUwNEkyK1J1NjZqYXBYUT0iLDEzNzk6InNoYTI1Ni1hL3VyeUs3dHhGSFhodVl5YXZnb2lVL21wbFlNTmxSV0YrRnRzbVc0NmVZPSIsMTM4MDoic2hhMjU2LVE2VkM3U09DdGhVZFlWd3QyQmlpcFI3ckRRSjUyRHUxVTAzNEdIZFNsNWM9IiwxMzgxOiJzaGEyNTYtdmNRM2kwNXp6czVYai9IV21XVHlXaVZKMEdXdXBIMEo4MnZHSjc5QnFSdz0iLDEzODI6InNoYTI1Ni1hK2lyNzc5K0Z2d0o0Smg3Z3FlVVI0N1hBRVVndXFqSTZJRGlMUGNpUTRZPSIsMTM4Mzoic2hhMjU2LU9teGhpcTJQWWZqWkJScmxpOXNIVjcvN0Y4L1RYdXpncVB2MlZJU20xUHM9IiwxMzg0OiJzaGEyNTYtNVRObGtscko1OGxWS3MzV3NxS2pBaStNUHdFVXcrNjZlSDZXVWs0N0xaND0iLDEzODU6InNoYTI1Ni1ka1dGUStnMk9XOGdXOWxIbGExTWhBb1FzeXI2U2MvaHFvNmJReU51aW40PSIsMTM4Njoic2hhMjU2LXFiNVYwa01HYzNhcVdkYnFRcUZWZk02S3p6aTNiTHM5Vnl0bGpFemhGSWs9IiwxMzg3OiJzaGEyNTYta0RpMVRQUGgrUDFJVzFNblF6SFdLZ01uQXBFSm5TUkNLK0VCM1F6VFk3RT0iLDEzODg6InNoYTI1Ni1QNW5xaTdlZEliWmpmTi80WGpvbm5MR3JwalJ5bG56YVBSQUlDR2tvNStBPSIsMTM4OToic2hhMjU2LXZEakdVTENjRG1DdW5mVVljRndzRzdxbFg5bjY2MzdlblV4T1dNRzZHVEk9IiwxMzkwOiJzaGEyNTYtVTFEQjhscEx1WTBuRFphNm5UVml1L0xHaW1ZVGEwQzBVdE1FS0tySnUrST0iLDEzOTE6InNoYTI1Ni12SWpLRzErOTQ5YzhNcWMxUVFiR3VhOFpkQ0EyblgyZng4TkFzQ2czQnRnPSIsMTM5Mjoic2hhMjU2LUtNSm5BZjFCVVQ2OXZ4MkhnY0QwbkQ0OVdtaFkxMWduekNTTnZoZWlrajA9IiwxMzkzOiJzaGEyNTYtN1dtekMxdnVNcFlZaXVDcmNHak9NN0xFem1WTXJOR1BweHdzK04wK2hCbz0iLDEzOTQ6InNoYTI1Ni16RUZkcWg3azhmNmpNNTdHWFJXRmdhdXRvNjZxZW5NRXgvY3p5RVkxQ2tzPSIsMTM5NToic2hhMjU2LTlQeWFnbVc3YUE0VkkyL3h5elVScHlYVzRmN0xBYnJLWXcxbzVjMk9QNlk9IiwxMzk2OiJzaGEyNTYtM1lMcU1pSDRRVTlMdGlFclljTmhyOXk3Y1FBcHFQNGh6bW90S3RwUmJxQT0iLDEzOTc6InNoYTI1Ni15ZzJUWjFvNU5ILzBXUnlKbS9URGlsQjF3aFpsMWJWd2xidkp6RncyRXdJPSIsMTM5ODoic2hhMjU2LUFOaXg2QXcrMUs1NXNFRlpwUlAwSmlmYWZSSDFNUURHSkZXK2w4S0lDTkE9IiwxMzk5OiJzaGEyNTYteHZmTnZCZG44bkpjbE5DS1B2MTIvOUUwaHpCY2ZkMXJYN0FDQWZPNlJ3Zz0iLDE0MDA6InNoYTI1Ni13U2xqSUdOVy9sb2svendub25Hd0FFZGxwOVh4WEJXQm1hMlVON2Y1MWJBPSIsMTQwMToic2hhMjU2LWM5V2NISWx1NWdnaFpEMHVrOXNMZU81d0YwS2RxdStYU1piZUZtZ3h5Qkk9IiwxNDAyOiJzaGEyNTYtVVNkbEZVTG1EVTFaQnV0T2F3bnVCSTlaQUJ0SFA3T3BVYm5JOGhvQ3hZaz0iLDE0MDM6InNoYTI1Ni05WUVMWFB3c2p1di9RQ3hCQWJndlNCQ0RnUmczaUlyMFBiWndCai9hVUFjPSIsMTQwNDoic2hhMjU2LXNtS3F1cVpRSmR5dHdpNGFLaXkydkh5SGRBUXcyRjRPUDBuUThZSWMzdFU9IiwxNDA1OiJzaGEyNTYtdGZTUDVzYUZZbmxHL05ram9sQ0VHKzF4eXU4QjAyVW94cHNSNEFyQUFWQT0iLDE0MDY6InNoYTI1Ni1IaWZvYktDMTcvY3ZCVy96cHZQc3JVRTMveXJGaHZKeGhpaWM0VTJMYnNvPSIsMTQwNzoic2hhMjU2LTVZYngya1lTcDZsQkhyMTlpSjhlY1FkbVlLcXdhenpCZ0Q5VGNDV0szUWc9IiwxNDA4OiJzaGEyNTYtWk1jSS9PZnhjNjR5c3U4MTVKSU10S0xIanNvaHB1WnVEbGMzeklhMHMzcz0iLDE0MDk6InNoYTI1Ni1ERXNEeU52aFpiK0wweW1ZQXA5S0NBT2t6SjU1TUJPSnhHbEhZT1dyUXZBPSIsMTQxMDoic2hhMjU2LUF0MzFjelFVSXBnd2UzbU0rY0tFYmpRTWo2bm1ydlZkVWxiOTFaUFp6K1k9IiwxNDExOiJzaGEyNTYtVlVoMnlBS2V0NDNPbXBRcjkvVDJMZjk5YmNBSi9hcWorUERWUzlKcHgxaz0iLDE0MTI6InNoYTI1Ni1TT1pwNzJ6SVBUNmtLYVRURFU0ZnIyR2syc0oyYW5pblp5c01VaW1QUlM0PSIsMTQxMzoic2hhMjU2LW43cis2T215M3ZQdWVMTThBYU84QVVjSVlzY3RVOUhDd2Z0c0VkbSt5dVE9IiwxNDE0OiJzaGEyNTYtK1pJcWlrdDh4NEFjU1lsdGl3RUE0U2d0VmZBNW5XbUNHd3FnU09WaEZYTT0iLDE0MTU6InNoYTI1Ni1EbE1Zei9lQmVhcmR3WFBTd3h4V20rTkE3NXpaZ2xoVjI0cGx4UE5hMHNrPSIsMTQxNjoic2hhMjU2LXJHR29nSFdVODlLOGYyQ0RpZ052MGRTeXZzWW5YT2E2SnJVZm9Bb05vMms9IiwxNDE3OiJzaGEyNTYtdkFEVldST25POFlZRXNOajc1ZW9FVzFGL3ZWWTJTdWp2bUZMT1pYVU9QQT0iLDE0MTg6InNoYTI1Ni1DSU1IL09OVmdEcmtMU0FwNjZqQU5RUlRvL0NnMkZRaU1tQW95UG1Gcmk4PSIsMTQxOToic2hhMjU2LWNYN1ovWFRzbnBhbHFiMGFvWTdVbTNQTC9VNVlKYUVJdmlLUFJ1R2ZQRFU9IiwxNDIwOiJzaGEyNTYtNzlGZ1FXNHlsL29POFlOWFhPNExFVWxBb2F4RWdwLzJ4UDdRRmVHTTRKND0iLDE0MjE6InNoYTI1Ni15ZElHVVlzQ0xIMXk1YlVwblZ3bWJrcDRXaXQ3c2hDOWU0UC9xdHhVblV3PSIsMTQyMjoic2hhMjU2LWFNMDJZMldESmxlZ0I5ODgxTitNZlRPT0RYaTNOd2lTdFFLQ1hLYU9CWUk9IiwxNDIzOiJzaGEyNTYtOXRhMGFkdkZPeVh6VVlQVDN3VkpJbGRXS0J5eEdjNVF6aGU2N1JObzduUT0iLDE0MjQ6InNoYTI1Ni1FNXd1RERDNThLL0pXQ054VmtadWJyVC9JazJOWUswVWVmc2h5OHF3RlY0PSIsMTQyNToic2hhMjU2LVVIc0gyVWpmdzBkTHN5T0xQNjg4eFFXTmcxcmZsOWJXYjh4OXorb0VhaGM9IiwxNDI2OiJzaGEyNTYtb1NCL1A5ZkdQVU44NUV2akl5Rzgwa2dRc0l1V0N0WGR6MHFjdXNPWGs5WT0iLDE0Mjc6InNoYTI1Ni1NRTNkOW8rMHlKUFhIdUZsZHlKS2Uzd2tNTS84UnNXdEhCWGNDQnJTajVVPSIsMTQyODoic2hhMjU2LXRPY3ViMVlMTEJQK1p4N3FRRkpEQU9kMStPU1l4T2F1QU9RTnY4eXVZYUk9IiwxNDI5OiJzaGEyNTYtS3plMjRQcHIzenlVOE01dFFHNjNlUWxNSlNkdXd0NGE3S1BRN1ZzM3pzTT0iLDE0MzA6InNoYTI1Ni0rWGNSK3ovL21YS0ZhNWRtV3VjVXg3ZjdWcVFCeTk0MTlWZnpBY2dySUM4PSIsMTQzMToic2hhMjU2LUgwWXNmb1dDVjFGbm53Q1F4UkYvQjFXeFVBS1Q5dHhweC8veURUQWdFK009IiwxNDMyOiJzaGEyNTYtTm45NGFCT3prS1BCSjVWY0p2a2VJV09kSnFYQXlkOFk5SWdlRmw3UkZlND0iLDE0MzM6InNoYTI1Ni1tRkluUnJyUTIyTzRqbjV3a1VLV2FSdXB1RTRHclRMRVlvTUdHWktZS1djPSIsMTQzNDoic2hhMjU2LXpmdFdaZDNMRDB1aFRmVFA4QWF1WDJ6QkVoVzY4andxTVVqc2VFcTNtYlU9IiwxNDM1OiJzaGEyNTYtcGxvaklsMmRIc3VMUWljd3UrSmRxQ0YrYjc5aE5FYWRSeWJPOWx5OFRLaz0iLDE0MzY6InNoYTI1Ni1ScjFtaElHK2ZEVDlPdUw3RVBpbm5GZGJ0R1JIbXlOWHFuZ1pvaWoxK3YwPSIsMTQzNzoic2hhMjU2LUhtdWpMUjF2MzlGLzlvRkpaYTU2c25aMlExUlZ5Q3h2cGEyeng0QVhpbGM9IiwxNDM4OiJzaGEyNTYtMDB2NTVTQlh1QjExZXZROGdyWEJ1aHVrL3NqcG5wOVRaYyszZEErSTRKRT0iLDE0Mzk6InNoYTI1Ni03UVBJQlFPRUxTM0JkQ0xTQ1Z4TFQ2MHB1eDIvQjd0TlZHVW9TM1dOampFPSIsMTQ0MDoic2hhMjU2LW91dHRrRVVnbEM4c1pOUCs3dXdlenBnS2F0dWJWaG4wUzhORmk3VDR4RGc9IiwxNDQxOiJzaGEyNTYtekY1V0VWdlBLdW13STJqdkJ1d3N4ajkvOXpPbXJBNjFXbkVGRWZtaVU1ND0iLDE0NDI6InNoYTI1Ni1hbkVkN1A5V3FxMTVCcTNwU3E3YTdQR2hhY2tWakhNMHhIMXBscCtCdkt3PSIsMTQ0Mzoic2hhMjU2LVd4Y3o0WUZJQzgrWTBaOEVRSUNRcHNBaW8wYmJNcEc2RUFFdWVlWE9CK0U9IiwxNDQ0OiJzaGEyNTYtSnN5Q0ZFTCt6RC9LMUhWMnpIS0kvZzg4ZFhwTmVJR1lPM2hBWGFBS1Vjbz0iLDE0NDU6InNoYTI1Ni1VUmFXb3VFMlFZcXZIWGNBK0JZVlBOUmptS2ZDc1o4cXk5VFZ5OW01S2YwPSIsMTQ0Njoic2hhMjU2LUlPWlc3b0JDVCs3cmxqeWV6SThCZ25OcXlJK0lWYTdZOWUrelc1aTRoZEE9IiwxNDQ3OiJzaGEyNTYtaWYra0tEZ3puamJuNldCa0lERUZHZy9HRk5BVU1QWGR5VGZyZVJCVVNFaz0iLDE0NDg6InNoYTI1Ni05Sk5FVm5Md2ZNNmlMVFJpTlE2RGJpd1RVaGErYk0wWGJMdkxUSWlGR2l3PSIsMTQ0OToic2hhMjU2LVpuK1ZvV1RZU2Y2a3NTV1Uwa2VCQ0Ywb205N0drc2d2SWpWME5wSHJFeVk9IiwxNDUwOiJzaGEyNTYtQTQyQ0NCeHJsMUp5YUVUcHZoMHV3SnhHd0g5czAyZ241T1BRNVBRNmI4OD0iLDE0NTE6InNoYTI1Ni1VTzBGVTZYSXJXWm8zNGRrQmlFYzIxdE5aNWVTbmpUSmtIYkhFU3RXeVpFPSIsMTQ1Mjoic2hhMjU2LWVya3RhNG00QXBxa3lhd1QrUWhQOHVJeUxJbEttZE45MktLMFRlb25EWEk9IiwxNDUzOiJzaGEyNTYtOXZBU2Y0MUUvdTR6K2I0OHpOdkVSU2lXMWFLSTVnUXNMNEdXSnRRL1R4ST0iLDE0NTQ6InNoYTI1Ni1xQ2krMUpPNkI4UGRZcURvUTBPWW9ObDMvQlI0cThrdzZNS1hNTHRMWVBBPSIsMTQ1NToic2hhMjU2LVlyU1FLQjhvUlhMU0g0Zks4Y1lmWDYvM3JRejQxZ1ppandydXArMXRPYVk9IiwxNDU2OiJzaGEyNTYtS1FscVBiOHJJYUY4V1NzM1JHOGpaUnZJUWVFRUJnYWRDcDUxTGlaT09vVT0iLDE0NTc6InNoYTI1Ni02azFOeU1ldTRxa0pCYU5STEdERWpiQXk5TmdYcWpEZ0R4TlZVa0tlTkpzPSIsMTQ1ODoic2hhMjU2LUQ0SXMwellUSEtkQlIrd3prMGt5M1hkRmpXUnZEdHhmaXNyanR5RXpiMGs9IiwxNDU5OiJzaGEyNTYtRDltNzVqQ1AvMXJ0TDBZVUU4bzR6Y3p4eTM1UVUwOGxwTVZUUXFXb3R3WT0iLDE0NjA6InNoYTI1Ni14RWh1NEx1S0VtS1VVbzAvTlRhQ2RWZzcyNFZwa0QzUzA1eFZXRk1TZXhvPSIsMTQ2MToic2hhMjU2LWhIRCtyL0xZdGJ2eHprcHJPemxrZDN4aktqSkdabDMxL0NyM2xrNGpXRWs9IiwxNDYyOiJzaGEyNTYtNWV2eFdCYlhHY0FKcy90eGhXQ214SGNIVlR3TnR1NXhMQ0VtQVRtRHF3TT0iLDE0NjM6InNoYTI1Ni1uYUhnVmZOQjVnSlplR2lkSjJSeVg4R21hY2N0R01kQ1cxYldERkxidC9FPSIsMTQ2NDoic2hhMjU2LUZxd3FNQUVXbExkMmpuUjEveUVuMm1pQ0xJT3RyZHRULzVOdjdRanI0Uzg9IiwxNDY1OiJzaGEyNTYtVG4zeDZlVlIvN0Roa2xnbXBiTFN5ZmZqN2dBMnl0SXFRV3R2dmIvTkJpcz0iLDE0NjY6InNoYTI1Ni1FeTRkSm5oV3dwWWNpenF2Zm9TTEZwNzFBWW5vdDdabEx2WTYzVk9wS1M0PSIsMTQ2Nzoic2hhMjU2LWFRVWdQZHJjWWFCZ2JlTkRnelRJcjFQamMzV0VaZVFPRXJORHZTQm5KNnc9IiwxNDY4OiJzaGEyNTYtTUYvaHBxUzNzQ1Y1cWFpOSt6a3FSSkovbGN1MTdUVG9JWVpRTnVVRERxMD0iLDE0Njk6InNoYTI1Ni0vK1ZXT25YMkFWelhUY05Yd3liNHpPL1g3ck9JbkR2Q3hrQzFGejYvNnA4PSIsMTQ3MDoic2hhMjU2LThCbWRFWGR2ZTlYY0Jia1hRRG9qYlVjZUxoWW1GQVNJbkNBN0lEMjhtSVk9IiwxNDcxOiJzaGEyNTYtdllPQWtZTzJJeGJuS3dIdGQrWHI1WG8rRVpSR2s1QytIbVp1b2tLOHFZMD0iLDE0NzI6InNoYTI1Ni1Rd1k2TjNZOWpFNDA4dEd2QjM1SnlRQk01YU9pMnhrN1RkblQvckhjU2VzPSIsMTQ3Mzoic2hhMjU2LXN0K3hScTJyUzNOVFJkRkZKSlJlbGQrVGhqRkxpbU03Y0JSZytaMHd1Mlk9IiwxNDc0OiJzaGEyNTYtTkJCRWFTU01aR0ROQllQd09wdURPWTRja1JXUGFibGVYMjBBdHNPUmY5Yz0iLDE0NzU6InNoYTI1Ni1UV3FhUE5WSzBrTnZoUWxacUxTOVJpaGFpZEl4TGlYOUFWSTRXb2ZUVU5zPSIsMTQ3Njoic2hhMjU2LUdVb3hzMk1jemdnc0x2ZS93OC9MeHVzbWxlRnYzN2JOYkZBYmFBZ2VrWms9IiwxNDc3OiJzaGEyNTYtM0ZNMHRYS3d3a2Z1TTJOdlRrK3crQjRaUnNFbUdrak5PZ2RlcUpxMkIxTT0iLDE0Nzg6InNoYTI1Ni1uYzhrN1lHYVpQNjFPWTluRW1IZWRRL1RrZDFSTDhGcHlUdTJqeTR2QmJJPSIsMTQ3OToic2hhMjU2LUYvdld5QkJyWWpXcE1iOU45ZmEzR2tGWkdmT09sVmZUbHJudUhDWTJvTUU9IiwxNDgwOiJzaGEyNTYtb054b1p2SnkzYThocTlkSXBjbFczdExtZExuV01pcnlQaUNRcTJsb2szQT0iLDE0ODE6InNoYTI1Ni1kMFQ5Nmhld29OZWhNNHdpYzMwclZ6cTE0RnV3dy9IQTJ0ckk0QnZ3K2JBPSIsMTQ4Mjoic2hhMjU2LTJ2bGMyYWJUK1dxUUdWS0x3NEJuTy90K1REdnUrZUZMMGxLR3VNbGtnVDQ9IiwxNDgzOiJzaGEyNTYtZUY0SllkZnRkbUgrbHBvV2RIUGtWbG1BK01EUkpab3k3MWYzNXYxb2NWRT0iLDE0ODQ6InNoYTI1Ni1CZjFEaTJtNzA1emwyWC8rTk9Rc2VreGFFMmppZTZUZ25jQ2ZBOGRkOU9ZPSIsMTQ4NToic2hhMjU2LUtFWllVbjFGWCtzUXJoZHJlWk9ETXJBM3lmNzlWQXR0a2lqL1dTVzR0MjQ9IiwxNDg2OiJzaGEyNTYtUC9US1Y4eDBmWm5wNklsUDVsNEUyVEF0MzAwSWFsSWVhMXVOVHNIYUhxWT0iLDE0ODc6InNoYTI1Ni1Jb3o3bWUra3NIVDl1RXlyZzNTMGNiMFdnS3FEOWRyQmF0czdWTnFNWlc0PSIsMTQ4ODoic2hhMjU2LUIxSENQM2gzQXBGWXpJZ29abEtGUnB4R2VTMnl5NlhtRGFiT1FFMFJBTXM9IiwxNDg5OiJzaGEyNTYtYVp6dFhtdm9qSEdhZElJSFJBN25OWGxBKytsK0RPTWo5TGNOeVBuN3NERT0iLDE0OTA6InNoYTI1Ni1TNDJsNUt4OWJWa1NicU94Vm13ME1vN1hwTnE0Tk9zODJtT2tLaGJqL2lFPSIsMTQ5MToic2hhMjU2LTQzdDhuMUo2WWZxMTVtSmx2WmRsQm1aR29rc29WNTRjVXFwNDl4YTNhSEE9IiwxNDkyOiJzaGEyNTYtRmUxOW8vNFl2ejN2Q3dtV1RVYzdFRlhSTWJOb0hOUXNKSmgzRTI2dmJKST0iLDE0OTM6InNoYTI1Ni1ZRzFUQzEyVW4xUTV1SWNKUndLd0lkbDBQcU5yc0VTVkg3akVQOXpKWjhrPSIsMTQ5NDoic2hhMjU2LXYzZStqajZUcXBZR3JyOGZKbkZ1NXlrejVReFROVzhqTW1LdDF2RkI2cUE9IiwxNDk1OiJzaGEyNTYtOFlDdEs2L2FYdGtIR2pISHhwZGIzc1NIcFV4c1Y5QThYdDY1YTZSc0xQND0iLDE0OTY6InNoYTI1Ni1BbWpwV01UYnZjUnBJVlVEb0ZaekZ2Mmt1QWJCV0pzeU9xQ0pEeGFsMXVBPSIsMTQ5Nzoic2hhMjU2LStNT2ptbGNGaG1wajJWeVJtZVBrQTVUYkgzdzFFRnZWV0M5YS9sczdLSnc9IiwxNDk4OiJzaGEyNTYteUx4S3F2UGJ2NWllNEJKVHg0MFVhelBKbkttdjhCbEtQckdnSi9uZkVPQT0iLDE0OTk6InNoYTI1Ni05eGMySExEWXlKczZIZDNibXBwMjVMZzNuVzNUTlFRdzBuL2FGeENidFBrPSIsMTUwMDoic2hhMjU2LXZ5WHNLaEtjQ0ZFcEN3M0l6VnlKTzhWaHZLRjdsSlRTMktpYmx1WnJNRzA9IiwxNTAxOiJzaGEyNTYtTityM3ovY0RLSVdtRnZHdkZOQ3lWWFdYTFljY1ZGdGxob2JUOTdMRkgyND0iLDE1MDI6InNoYTI1Ni1KSm13YlpBN3VRWFovVFNleUVXd29LRFNKTjJBZ1EydFhCdjQ3WEl5Z3pBPSIsMTUwMzoic2hhMjU2LW5vK0xnb2xzR092a3pUZndCL05sN1BzSU01YXFWekFuZVdlM0orS3dlaWc9IiwxNTA0OiJzaGEyNTYtUHZ2NzMyTmp3WkJLLzZZOVNmYTdzRGFtSjBpaEhKTXlZWEtjc1ZSTWRaZz0iLDE1MDU6InNoYTI1Ni1TMDN4QWFjRzJON0d2WXRObjMwS0VCWkNkZURBU2Vwczh3NzhwdS9sN1VrPSIsMTUwNjoic2hhMjU2LXN0ak9nTXFPbllwVDhkQ2g0bk42OE44THVLNHk4WkNzRkNOZkJTZVBzMFE9IiwxNTA3OiJzaGEyNTYtSzNnZzFneFBLclNFeUVXSTVpWFpudXkvZFdTNHlHRmlxdktNTC96aFdzUT0iLDE1MDg6InNoYTI1Ni1oU0liOC9hRjIrc1VJd0M0YnMyaFp0RHhESHpuZ3pHWndobjQyUjBlRmo0PSIsMTUwOToic2hhMjU2LUprNkhMeWZxbmtUbVFDOTRacnRYZU5CMzF5UmRIL0JmOEhzYlN1bjFRMFU9IiwxNTEwOiJzaGEyNTYtdWZYZ3dacGhyV1czZmJEZWx3NWM0REg5WXg1YlNhT0d2dzhydTZYdGhncz0iLDE1MTE6InNoYTI1Ni1WWkdnNStLazhYL01mdXlpVm55TmFYcGJEV2FWeEJxQ3JTQ1VXMm1wa29ZPSIsMTUxMjoic2hhMjU2LUtOZHFmUXJHK3A4aEd5bjlaVEFvalI3TGpXbzArdExCWEZsbWd1YmVtQ1U9IiwxNTEzOiJzaGEyNTYtOEt1amtET0Yza2N1T0hXMTFrWUtkUk5yQVlnV3R6dGhCQ3RmZUhXelJ0WT0iLDE1MTQ6InNoYTI1Ni1uZDBxSmhkdDFBVjhLaHlISVNHa1l2Mi9oUm03T3NVVWJrVk1xZy9XVGpjPSIsMTUxNToic2hhMjU2LVpqUm1ZWGk2blNQT0QwRTZWRWtGcHJIU2JZbTJYa3pQcFcyd2JDSjkrTTQ9IiwxNTE2OiJzaGEyNTYtS0JNTmh0cGhWcGxiTXlGYVRNZG1lQlhLYWs2NXZTbVhKS1dlaTAzTWlaRT0iLDE1MTc6InNoYTI1Ni1FaWw1czBmbmR3YnM1eVZ0R25qL3BBekZnMDE3V3VZd0tYUUZpTmVoTUtzPSIsMTUxODoic2hhMjU2LVZLRVY1Sk80Uk5pc2h5RnI1Z3hwQzNJTW1wRW9jQXlhenVmTThiRjR0SHc9IiwxNTE5OiJzaGEyNTYtZW14a0FCWE5QTHpBRnkyaEJYUExveTA5MDBxSG1CTzhESndHWjhCSXM2WT0iLDE1MjA6InNoYTI1Ni1WUE1EU3JjZ3NQWW96dGNNU2hBVEJla2o5QlpnVmFaZXEvM2l1eUVpUjdBPSIsMTUyMToic2hhMjU2LVYxZ3l6Q01ibTJaekU2dDdjZ2kwSlhZckt1SEo2OVZiTDZWaXU4WU5tUTg9IiwxNTIyOiJzaGEyNTYtdDQzMkgxb25Mc1JTSnJmMW96R3phL3poNUJ3MWRRbElKaWdsdW81REpKMD0iLDE1MjM6InNoYTI1Ni04dWlUUEZzdWtHNVVrblczMjJCT2xRWWd5eW10WVhqYndlK2VFQ0tYS1lrPSIsMTUyNDoic2hhMjU2LVVsaUVEUno5dU1mcStkbE96STF0bXZxTWhuMWNEY21iZU5HL1J2Nm5seTA9IiwxNTI1OiJzaGEyNTYtS1RHaUR0SlBrMGp0bzRsTFBRZUYwcDdlZ1prNWRla2VqYTdBZmtBWXIwcz0iLDE1MjY6InNoYTI1Ni1QcVl3UE9URmRtWk5zOFIwKzRHaDQxUWNWZi9lVWVBc2JLMmx3MFdsTWxZPSIsMTUyNzoic2hhMjU2LUtQQTRpcFNDSXRwQUEzRXR3a0t1NUtCZ3ZiQkRIdnR3VlBGb3VxOVlXK2M9IiwxNTI4OiJzaGEyNTYtdXJjOHRFaHNBSUk3QzY1Vk9ncVhvSldiaEFGQmtrSE1QYjI0L2JkRVZvTT0iLDE1Mjk6InNoYTI1Ni0yWitZald3VGh3ZkhFdUZnTFc0MmFmWDU0WkNZMEg4RkR0aTZoSHZsZ2tvPSIsMTUzMDoic2hhMjU2LUJmU1FjVm1uTWlma2ZhZ29JQTFvbUlIVTlmdzRQdkx2bGpRVGlxd3RjcDA9IiwxNTMxOiJzaGEyNTYtR2V1UGdSd1cweHQvbVZycGo1dTR1QlRMZEw4UU9KQThoenIxWkNpOUd3dz0iLDE1MzI6InNoYTI1Ni15QkcwYVhLSlJFNVBNclcxa0xUdWU2Rkl2aXVEWVVaaDNYYnV0WHZjdmtZPSIsMTUzMzoic2hhMjU2LUlCbllPeWJ2UUsrOTh2QnF5UGFrbE9Hc0V4SUhHa291ZDJJRHhVRndna0E9IiwxNTM0OiJzaGEyNTYtZnYzcFMydkJ0SWN4VnlDYUVjK3c0QW5qOWQxU1QzbmsxbGUrNWUvVWxTRT0iLDE1MzU6InNoYTI1Ni1BK0x2cmk2Yjc2My9qSSt0RURxc3J6b3AybE9PT1FCdU5MT2k1L0IrV2ZrPSIsMTUzNjoic2hhMjU2LWNIeGFIMDVsQ1h4WjFDY1BGYk1RVjRzNGhsUHoxR2JGcm1wczlRV05SeUU9IiwxNTM3OiJzaGEyNTYtUi8xMmxObjBEcXhGTE1DbnVvL2l5clUvUDhBclhucTZadVZLK2lKYXNOND0iLDE1Mzg6InNoYTI1Ni1LdHluZGM0bHc5VnQvQjJRM1hGdTRmeVh6bjUxbFZseGVVNThJQStoeGo4PSIsMTUzOToic2hhMjU2LUYwM0tFRXZJT0RMTGdCWUZybUt2dXowczBFSDFodmovd3NmR1RUM3pGNG89IiwxNTQwOiJzaGEyNTYtblJvMGRXREZtNnFDaUd5MXc2Y1dZcXNhVWtaU05neHVTWXoxMHc2czc0Yz0iLDE1NDE6InNoYTI1Ni1oS2o1ejl6WEx4OUp2SVFRVTQ4RHkxSXUwT2NTVi9hMHZxRTI0Wk5ncjA4PSIsMTU0Mjoic2hhMjU2LW93QzFnLzVjWVAzeUJnWGFWVEprbDMrVyt2bjAwQlNGMlhGYWExdmJ2N2c9IiwxNTQzOiJzaGEyNTYteHVBeTNHVkQ1ejRmM0I2ak82a1pXNDJvQ0x1ZEtnY1BHNjNFZ3FIQVpscz0iLDE1NDQ6InNoYTI1Ni1pWUZRalZTcVhyemw0cFdkeEphdGd6QTU4TU96a3NWamM3ZWhPQVorK29NPSIsMTU0NToic2hhMjU2LTRiQnJGbS9vRHoxd0MvTStyVk91QUJuamhzSkYvOGNQWXliVjh4ZXc1RzA9IiwxNTQ2OiJzaGEyNTYtL0Q4ZjhaU1cvcW1ieUo3VmxwOHpVYVZrYUhKZEFlVUxnYkYrRDduZEJTQT0iLDE1NDc6InNoYTI1Ni1QUWVlNitsVHVXSDhTZ2w3cjFWeEhJak51d1ZKKzQ0SjlXMlBtcDMvNFp3PSIsMTU0ODoic2hhMjU2LUN5UktYYUpMVlpLYkcxTjI0K29ZVE5MVFp1NHN0MUpoTUY2K2kvd25WWkU9IiwxNTQ5OiJzaGEyNTYtTzEwRzJzMVlhUVJOaVVxNHR4T0UvQ1lDZ1VRVFJFYUI4bk8ybW9zL0NJST0iLDE1NTA6InNoYTI1Ni1KeDJYbDFySTFaS1FaRzhFeFpncWIyQis5UGtGUnFnQkFCOFRwRWUwQWNnPSIsMTU1MToic2hhMjU2LWpyS1BwZ2plbFZHY0RBK0VhcHB6ZjlPTEZmWFNvaHdRN01OUUpvdHNRVG89IiwxNTUyOiJzaGEyNTYtbmErVnl6NlcxSlkzbC9naGE4YkpNYU5wb2JERjY2MUo1UURycFYvMURUST0iLDE1NTM6InNoYTI1Ni0rTE5PVlRJN2dNWU8wcld1OVFoVjQ2a1ZtT056UFdwNnVOQVdmQ1UzWXI0PSIsMTU1NDoic2hhMjU2LSt6dGhTT0YyYjlDVUJaTXdhOEk1RFA3bnhGVmlrMGtLbUNyWllibkVoa1U9IiwxNTU1OiJzaGEyNTYtQ3doMy9EVW56RlJXbGFPYlFGOEsvc21RUEdaR0lyU3pWNDdKK0dZRnVXOD0iLDE1NTY6InNoYTI1Ni1scXlZUzFJdGhkdWNrZ0YrTnQzdVFtS2RSTTRjdWlLT2tVazNiSnZxdlpVPSIsMTU1Nzoic2hhMjU2LVdEOGtoSTFTQjBBZzI3UnNncHU1MEdwUERPWFNlaWg0UVFQN2IrTDJNeGM9IiwxNTU4OiJzaGEyNTYtOHROWU1OVTNyTWNudVZvOWppVUlUY3VhYVNDdU9wVkZ3M0JFMjlKVml5ST0iLDE1NTk6InNoYTI1Ni1VRXZvcHJ6YjVidzhrK0V2eVhST1Z0UVhzc3hMaXZ0ZVdsaTVRWVhoUTVVPSIsMTU2MDoic2hhMjU2LUYxRTdtWFhhMUlhUEl4U1ozelR0dXFYdFhLNE5Qa1E5NXkxSklGWHVYSFU9IiwxNTYxOiJzaGEyNTYtTXVlNWZqQXBrN1plVjNxZU04M2VpN1B3SGJYSi9oMW1pcmw5UGVNWVdnaz0iLDE1NjI6InNoYTI1Ni1Ca0ZYdHN5YXdOUWMvQXdCQUFTYWdWd1Zua3BMUGZXazJwWCswTVBIN240PSIsMTU2Mzoic2hhMjU2LXAySnh3aTRvL0FmZE5VWUg5TysrVTY2c1Zvd01xRkpFTDVwc1RsWFBkYzQ9IiwxNTY0OiJzaGEyNTYtUDZ6UWE2V1E4L2YzanNjZHovVHR5Y2Rjdm5OVGE2RjlFcVpkejRPWHNkMD0iLDE1NjU6InNoYTI1Ni1MQzhoNW1MdlF5TjFaWTBGUmxXaS96c0NGTDlBeWg2NXdGOHpqU2tVTnBrPSIsMTU2Njoic2hhMjU2LTVtMldTM3dHbzZVbTVCTVV0aHdCemVIY3NVUlBhZHA0MTJxTEhhV1JkVnc9IiwxNTY3OiJzaGEyNTYtS0ljc0JrSjk3Qy9jVzF0VG40bzNjOUswdmE1RGszVHJYTWpqZ1I2UzJtWT0iLDE1Njg6InNoYTI1Ni01RmNKR01JUFhMSWNGSHJVb1h2QjI4LzVETUlJc1o4cmE0cTNKYnFCaG93PSIsMTU2OToic2hhMjU2LUZtVmpUdnhrK0Y3OVJXdlp3ZXBxSDVmRFcxcVpPVG9GK3BEaE90ZlJhVTQ9IiwxNTcwOiJzaGEyNTYtL1dMeEgrNkRiZDRYM09VMm5wVUZTa2pGTmFxOU9GVHk0QkU5cmk0Y3pOdz0iLDE1NzE6InNoYTI1Ni1jTEZwRWJuM0ZjNFkxZFBpek1TaXdwY3JDS1pPR3dNaU1aWG5oSWxqZ0VZPSIsMTU3Mjoic2hhMjU2LXBzNURnK2pJbFcwTFNlNDZpT1czd01BY2VJV0JUYS9XanpDMW5zNTA4bTA9IiwxNTczOiJzaGEyNTYtenMzWFI5S2NUdnU0VnQ5bWsvb2dVVUZFUDg3Zk16djdlcldubCs4b3ZOQT0iLDE1NzQ6InNoYTI1Ni1sNmFMZjg5TDBVRUZ1RGF3YjlWcGpHeVlBSmJKQzh1N0h3K0JRTnhrbHhvPSIsMTU3NToic2hhMjU2LURPdzQvTGFSVm5DR3RJV2hiOHkyVkxFeXR6SUZyOU1UdEd0UHd1Q0xqWmM9IiwxNTc2OiJzaGEyNTYtYWZocXBHZ1BYVWhHMXg4K25DRWZHYXhlU2FNL1FsZzBadkpKV2xYbDh2OD0iLDE1Nzc6InNoYTI1Ni1QN2xybXQxeDRzdVp0ZGkvU20xTUZjcjZTMFMzNkZ2STl0NWt5R0p6VG5ZPSIsMTU3ODoic2hhMjU2LU53dVkxZEdHT0dlZ0FaZVVLcmZhZG5USWZmNnpod1NGQ21lWldJYzhKZ2s9IiwxNTc5OiJzaGEyNTYtUWZYVFdZN2NUYzFybCs0Nml4UDJJcU5rM1hZUmlXMXVDdGkxbGFyd29VRT0iLDE1ODA6InNoYTI1Ni12RExoRUVOZDJTbDVTVkJqcmtnNG9wUHQvL2JxMEo3U3pZQjEwaTZ2M2l3PSIsMTU4MToic2hhMjU2LUFPUHhsb20yeExHTlZVL1F6bmF0NmNoTUZkSTFqc2gxZmR6anZrZjk2RmM9IiwxNTgyOiJzaGEyNTYtTHJMTkFkZnpqWW9POVA1QjhZZnJKcEVISGdSSnZXSVEzVDBIeFVBQ05NTT0iLDE1ODM6InNoYTI1Ni1NTzZVV2x2Mm1GUHduUzdqZzFheEc0YVRBS2hpSXVJYno4bmdiUlpHb3ZFPSIsMTU4NDoic2hhMjU2LUlRbXNLUllpNS9oVkhFK2hZVm1yYkhhU1hWZHp3UFRIYXA3enM4ejJCdTQ9IiwxNTg1OiJzaGEyNTYtcitBaE1iaHN4WW5BWjBneGQyRFRCcStaZmU0TWt1Yys1MVlORjgvQjZJdz0iLDE1ODY6InNoYTI1Ni1kQm1lR2xIOVJvV2NBcE1lbFU5anlzSW1GbU1oaERaRENMb0hIRUNQRkRJPSIsMTU4Nzoic2hhMjU2LVAvbGtxNHBtdFNja29JMTduL0RZV2ZTaFR2L3FUNnpPWVEvUU9IK2NNRDA9IiwxNTg4OiJzaGEyNTYtWFIyMnE2NU4vbnkrM2NEaEFrcUk2VG93MkxRd0hoUXdXa0R6ek5pK05pMD0iLDE1ODk6InNoYTI1Ni1FWEZ5SktUdEZiK3pnWVFWbC90eW0yK2lNWGVFLzZxaVo4OG1ZNGJVQm1jPSIsMTU5MDoic2hhMjU2LW5SN3FuUUdMVE1JMzBCZzZHNkxnMEwvZzk0bnRaazEyZlphUGFqOTkzQmM9IiwxNTkxOiJzaGEyNTYtY0cwOTMrOGU2NFNsQVZzdXMxemF3UkZncHFOeWZqMjc1TlQxUC93dG4zQT0iLDE1OTI6InNoYTI1Ni1IWjA2OUh0Q3VsWEJmSVFCb3lYdnZPL2F1VVFjK3NMT0pyeThpREtMdXJBPSIsMTU5Mzoic2hhMjU2LW1MOE94QmRib1IwTXBqbmdWcmt2OFdTNytkalFyY1QvMDl1Zjd5RE1KZ3M9IiwxNTk0OiJzaGEyNTYtbTltY3dZa2dCM0F4VjJBSEhiUlVTOS9oVDRhT3pyK2J1QTlUQ1Zhb2FQWT0iLDE1OTU6InNoYTI1Ni1wSStMenY3UlBQNXk2bitTeUhSR3c1YnpiaUlrSXRwTFArZStOaGtqMnJNPSIsMTU5Njoic2hhMjU2LXA2NEQxaWtHd3VyNWJNVVY1RHZSZGFIallTVEM3dHJTUzRTNHRCbHdjcE09IiwxNTk3OiJzaGEyNTYtSkpSbEdmaHQvVm16Z2dIZFZvZnBORkM0VXl3S09mVDVTM0xBOUlZQm5Oaz0iLDE1OTg6InNoYTI1Ni10RCsyOGgveVZDcXdPTHVzN2ZXdFcyUHNsb0FkYmNXS2lWNXI2ZGRZOEdNPSIsMTU5OToic2hhMjU2LXRvQlcweVhVOUlvandmRU9rbzJLVkJ3aXlNTWVQOHJiVFgyWVJwTkFZTDQ9IiwxNjAwOiJzaGEyNTYtTEF2QVJQeDBMSmxXMVRHNXFkbStLcGFCVUV5NUJFTEtQbXY0NHUrSkJ2Zz0iLDE2MDE6InNoYTI1Ni1kQXpKcDlLempIRjVscktMQUl6VnEvUXVTcy84Mm1oSThidXRrVm9acVZnPSIsMTYwMjoic2hhMjU2LVZMSUxuR0VaOTQ2cytPbUhVN0h3R2hxdGI0M25LZXZxN1psT3hweG5SUzA9IiwxNjAzOiJzaGEyNTYteWJkOG5OQWl3YWZ5UVlMM0F5QTcyMmM1Vk1ENXFKamZodEFsdWZRbldCUT0iLDE2MDQ6InNoYTI1Ni1OMVN1WGVTVUptVVdlWVNhZzR5SXNvbStDL2EvRXg4T0FDSGgxWFFSUGZRPSIsMTYwNToic2hhMjU2LTVKTWo4MWFRRDV5VEtlMlB0YUV5ZWJveC9MQzFvdk93TXE2MDBEMlRGY1E9IiwxNjA2OiJzaGEyNTYtZUhhWWtSaUdLamZaQ09RaWhCVHhtWXhsT2R5M0tkaVErNUpoZEY5RFZlYz0iLDE2MDc6InNoYTI1Ni1mTVVzaDV6VndJYkhCOEJkVGlhUnd3SVpJb1RLV3gzRi8xWFJrY1Z2a1QwPSIsMTYwODoic2hhMjU2LUpteU1obThJYnROYk0xN0RiTGl1aUtOUDBFTU1QUDRCdmRGM3ZORy90bGs9IiwxNjA5OiJzaGEyNTYtMmpGaEVwaWkwak5iU28wemd6NXVYaDJwSWpmcCthVUNtUnFwN1lWSUVMND0iLDE2MTA6InNoYTI1Ni1qRy83Z3h1U2ZYTy9OU29EMm1iQ1lVSGQ0SE8rSkIwYnI2RGZ6cUVmaFVVPSIsMTYxMToic2hhMjU2LXJUaGhjV0c3cUYxcTAyd0VkeDlyciszN0szMEVNT1U0VkhzNnlmSlhyQVU9IiwxNjEyOiJzaGEyNTYtc2w1MVM2Tk5PT1o1NWlYK1pmSUlvWkZiU1NnM2wxd3dBRmhjNTlnMVduaz0iLDE2MTM6InNoYTI1Ni0yRWhMS3FOQnJxNm14dFJOYUV3aVFpRWlxV044STI3UEZRSGw3Mmk4UlR3PSIsMTYxNDoic2hhMjU2LXlqb0Qxa1FuR2VybG03SVNhSG53QndQOTVUYnJGNUh6eWJwalJBUlVwU1U9IiwxNjE1OiJzaGEyNTYtZTBCaU80eWtaTVlEbGhPMzlyZHhDTkpCVU9lbXlvR1NXdlhCQ1g3Qng3WT0iLDE2MTY6InNoYTI1Ni02NkI4M3lTRFVad2YvdllGNEZ2L24vZmprNjZ5NFNLeTZFdHVVMjlUUjIwPSIsMTYxNzoic2hhMjU2LUdRR0w2OU9YRnV5UEo4MGcvYlZVQzFSejl3VFFJMDBsVEhWcEtRZFEzQ289IiwxNjE4OiJzaGEyNTYtM3cyeEU4MjBMdS9EeVNyQVpPWUtCYUloYWRZdEYzbEt2bHRLOFlOMTVlQT0iLDE2MTk6InNoYTI1Ni1pK0gvUVlWTHlVMkd3V0Q0VzNzQWFyNFpIcmtHWElodzRCcHk5RXdocTZVPSIsMTYyMDoic2hhMjU2LTVkVmN2V1V2SXRha2Q3VEgxNHJpUElaVlFIbSsxTGxYeUpEVkIzK2NFWG89IiwxNjIxOiJzaGEyNTYtejRkTEd3WDBwdFF4Y3U1RXpzZlZtcEpaUFRnMWNBK25kR1B3S1dOY2RSWT0iLDE2MjI6InNoYTI1Ni1ZUWtBa2t0UnpVdFNFSVRDTGxIRXh6SjlZeUhqSGlzYUpwTDhwSm0rQVdZPSIsMTYyMzoic2hhMjU2LXRUZEJObVBIWXNHL2xZeGUvU0JyZld5WDBYQ2NwZFlXODdkNTJZSmFZcTQ9IiwxNjI0OiJzaGEyNTYtNEg3SUIwQnBNcHRBcEFZMXhNQ2xEci9UaTV1T2JrNTB5S0VLS1Q3dCtFND0iLDE2MjU6InNoYTI1Ni1FMTQvek9kV0ZoUWt2cWdWbXZKRms0aHY4NmdkTEdDSVNJZVlwQ1BvQWRNPSIsMTYyNjoic2hhMjU2LTJma0JGYW43S2FLT1RrSm1ZR0hNeGsySVNqREc5dG9xcXZ0QU9EM3JMWHc9IiwxNjI3OiJzaGEyNTYtZGQreHBkTlEweTcxbEJNZmpmeEtncVBGRlVIZ2RyazVVYmcyeHB4L0xGUT0iLDE2Mjg6InNoYTI1Ni1qUUduaTlNZm02UDF1eDJEVEdHeG9QbHJTc0VHeG5nN280a0ViMVdraE9VPSIsMTYyOToic2hhMjU2LWprZm9JMkNiSG16UGV0b0I2a3pWS0VVSkN4UDZHNjhNN0dsS01KWjQ5RVk9IiwxNjMwOiJzaGEyNTYtQ0UzZ3JHeDBocGFGR1p2cExjdTJJTnI2WkdmS2pEeHBWQlVFNUZ0TmM3QT0iLDE2MzE6InNoYTI1Ni1ydWNSZDRrUzNlZm5IVUJnOTJ1L2d0WWFsUTRzczRlWlJmSnhrZ3NzVXZVPSIsMTYzMjoic2hhMjU2LUw2UVpseFBObDl6eHlIU3lIZkljK1p5bDV1TWNiR2thblVIcEhzMzJoYTQ9IiwxNjMzOiJzaGEyNTYtUGp0Q203QWx0MzJxazlLaHFOcmhEdjRaVitsNloyMEVOUytOQWFESzNMVT0iLDE2MzQ6InNoYTI1Ni1vVUI1YksyMTBQZ2pFTThFSTh2cmtGSkt1bGhvamh3RFFSL0hxZGQ0VXhRPSIsMTYzNToic2hhMjU2LUdQbFJSSzJHVU1YVzIwVURYSm1kMVl2TVN2dnYxYy96WVFJUFdiT0cyMG89IiwxNjM2OiJzaGEyNTYtNFhlcGxKR2RKeFJrenZJOEJ3YVg3SGM2NVdsQjFmUC9udU04NVdoWHViND0iLDE2Mzc6InNoYTI1Ni0vYWVSZDdWZjIyUDZUZ1BJOGxQTGQ5cVBJcnZRUjE1N2N1OENCUFBMcmc0PSIsMTYzODoic2hhMjU2LWdneFVpeFNHb0RyWWhTeEh1TVkvUDdBK281QWpkMUsrMWwyOE9uVmhFbnc9IiwxNjM5OiJzaGEyNTYtdDVseWNBMnRlckhQanhlR3IzSEtBS2RxTHhEUkdaUWxaOElzcUNZVUtYVT0iLDE2NDA6InNoYTI1Ni01WWQwQzBWdHltWHFUWEJLZUs0VW12cjFSdy91K3VVODJ0UnBhQmZOVmQwPSIsMTY0MToic2hhMjU2LUYyVkhxbzZubXAzU1Z1MnFROWhIMDhnMGwxTlRwODhwTStta1hZVHMwakU9IiwxNjQyOiJzaGEyNTYtWjlTOHJSdkUzUnJNdE9XUlh5T1NCNE9rRlM1Z0VaT20zYXozeGRPWVEvWT0iLDE2NDM6InNoYTI1Ni1aU2o4SXBGN2dmeXZ4SFVSZDFHMWJmKzVwWXM5b05OQ0tpbDJETEt5MjBvPSIsMTY0NDoic2hhMjU2LVB6WHpHb09ZSWpCcHE0bk5oamRqQ2lxbnFtTy9KQXRLZjBmZkNBbkJPWVk9IiwxNjQ1OiJzaGEyNTYtSjlZODFrYU9malhsbmxiUlhKOURZWXJLL2FudXd2NU5oUzhrc1JxVzRzQT0iLDE2NDY6InNoYTI1Ni1nZlYvNEQ1SVdEUDRNOUJxN09PMkNVQUkvLzR3ZWhBdXdONXFRMkI2WmhVPSIsMTY0Nzoic2hhMjU2LTB3QytwR2NScFBCTk1Sa2RyM0lEbG9vVzh5MWNnbGVrakNLTVllQVVobFE9IiwxNjQ4OiJzaGEyNTYtMnkxQVBzNU55Vm9vVlh2TlZ6ejM3WTUxbnpKS2k3dWFIMkx3dlVhNGJ1bz0iLDE2NDk6InNoYTI1Ni1qRjlWQjJFK1VNckhyODRJckVMam9PY1pieWIyRncrc0Y2cXZkTmFjTW5nPSIsMTY1MDoic2hhMjU2LXduWTh4QXRRQzFONTk1c2xFVGRFcmU4anZtTlR6RGo5YjhtR1A2STVsTUE9IiwxNjUxOiJzaGEyNTYtUnlnZnBtV0J4aUs3U0JQaVBseDhIK2xJdFI5RHlYVVNGTzVUZHVnL0xMYz0iLDE2NTI6InNoYTI1Ni1yNk9GbGdxU3dzYlBreC83UEhUQmFVenRlNzBWWWJJUUNXczhlMFp3dG4wPSIsMTY1Mzoic2hhMjU2LXNIT25FdTZCbHNOUEMwbkhKcG5tTXZBS1ZMeXV6RDZoVmFVbHFycjZhYlU9IiwxNjU0OiJzaGEyNTYtZk55NlZMcmlBYkF5REUzdXovVW9DVnptcmRFOHJyMzN3Nm1ucFpWcWt0cz0iLDE2NTU6InNoYTI1Ni1aTGlLdzdvR3B4ekJBN3Q1cWp0TEdtZHFiRHdkQXF6NzJCbEIvMFU1TGlNPSIsMTY1Njoic2hhMjU2LXJtbkNyRU80NmRBdFYyeko0WGdZRVEyVjFKSkZCQlFwR2NMWTc5b1VZZTg9IiwxNjU3OiJzaGEyNTYtLzJsN1ozc0R1Wm9jdDdicit3dzUyeUQvV1BIUHJacFoweUx5MnFTQUhERT0iLDE2NTg6InNoYTI1Ni1YTHJ5OXlJZ01vWHdmVVhKNko5Wk01U0JnYjJWem1ESjFSaU9lZ1N2d1RVPSIsMTY1OToic2hhMjU2LS9wb3gyOUM4NVpYcnkvYnFVMGhKc2FKWHVydzFRdFBEK2lZdTJtdVN2OEU9IiwxNjYwOiJzaGEyNTYtUWNqd25Ja2p4NUhHTThsK1pUem9HZjk2Y3JoRTd6R3EwZDRwMEVWaktuMD0iLDE2NjE6InNoYTI1Ni0vRER0T2YxQm1UeVVmeWFyMFI4eHVMbWhlcVZ1QStYSnNIQk83VldFaGNRPSIsMTY2Mjoic2hhMjU2LXpsVmcyM1lVSzU5T3ZSQWs5OFd2WlNyWm5EUWdlczBHOFFYeEd1dkNwZ2c9IiwxNjYzOiJzaGEyNTYtL2VleVE4N3ZwVkh5cGZSVllSV1RCQ1phN0RVTUdnYzBEWTQ4Y3BPcGY3MD0iLDE2NjQ6InNoYTI1Ni12cENYdjlmY2tzRFBKVVFSK0VQb3h1SmF4WDIwd21FVUthZDQ0L2p2a3BVPSIsMTY2NToic2hhMjU2LWJKYjRoSDk4bFk2UWEzRFd0dVdIUG1hOUkzSFdoUUdUSTR2Nk5Jb2hrVFE9IiwxNjY2OiJzaGEyNTYtV1YyWFJZSzErcG81M1oxRUtwYnR3ME1SMEVlSitFeURPQkFCVW5BYW5aOD0iLDE2Njc6InNoYTI1Ni12bzU5Y3pvckpFSEx4UVZSRmcyYXdCS2o1czdkMWVaa3grTnFnTDZhaldBPSIsMTY2ODoic2hhMjU2LVZ4MFFZWjJIWnk4Z0sxalJIdVMvekcvQnBuS3JGeUxyTktCTEt5UE40ejQ9IiwxNjY5OiJzaGEyNTYteWtLeGUvMnd6dWcrb0pGTDl0RGFOeENmWkU4U0VqbjR5elRGWHh3b2tvMD0iLDE2NzA6InNoYTI1Ni1WT29LcW5aTXRaN0VQdjFzVWhONnFlWFNtMkVORjZKaklZMWxLbkl1YWJJPSIsMTY3MToic2hhMjU2LW41azdDYyttTmJGU25PVVZnbmZsRmFKcXhOWm9MWWpXc2p5VldZeHJ5Mzg9IiwxNjcyOiJzaGEyNTYtL1dTVnFZY1g3ejFBakdNZTRHaFdTaE9RNG80QWxXZSs4UmpOd3pHTGFHVT0iLDE2NzM6InNoYTI1Ni0vMUNqMnhIKzViMUtwWURPTThsWEJIMmdWRjlIcm1DbDJlbm5PL3pRSm5ZPSIsMTY3NDoic2hhMjU2LXhQYkc5WExjeHk1dlJIRkRCUFdOUzdTOWp3UVdxK0tjRlRaa3h4Ky9uQ0U9IiwxNjc1OiJzaGEyNTYtaTIzUDVHSGY2anVEZ2hGK1lPWTFqTHBHUHZvYTlBM3MzOWt6ZjFOQ3Q4dz0iLDE2NzY6InNoYTI1Ni1oZ2JoazdVUnhtMUgvZ2xnTFNGa1FxKzdqZ2ozbW9qb2hNN0NhU3ZiZjVFPSIsMTY3Nzoic2hhMjU2LWduaThNUG1ER3hVd2ZqVmJZdDJqTjFZMzhyRzBNNFQzaWplRldlVzh5aGs9IiwxNjc4OiJzaGEyNTYtNnFxV1JjMi9rbWdGNmtXQVlEeDdGUHlDRFUxNW5xTG10ckNFK3ZUc0ZJOD0iLDE2Nzk6InNoYTI1Ni1VZzJEY3p3eGdwTUlSejg4SmlpeTNxZy9ORXRMOUxQU1JLZU1rb3MvVVFZPSIsMTY4MDoic2hhMjU2LW5xQ0dleW0wdUFKbFRwb1lKL3Jjc2lFK0hSd0RwMzVVYlF4NVBka1IrWWM9IiwxNjgxOiJzaGEyNTYtMG5vOWdaZTIxbTdCVWI5bVB1WFlzbldwR0drSlBXY2JybklCSjFXem9rRT0iLDE2ODI6InNoYTI1Ni1sSlAyZElZZldmcmtSa2hsZ2xrQjNZTVM4U0ZSTUtTcVFJdmhGdjhIc1A4PSIsMTY4Mzoic2hhMjU2LWJVakNjdi9xL2J1T3RwQ0J2dFR6bGszMno3Y0ZHbUdUMzZaMVpGYzF0Rkk9IiwxNjg0OiJzaGEyNTYtb2hNdXVCNFpWdUU1SmtpclF6ZTNnV1pDeFV1b2x0dzVSYUcyNUdNcnViZz0iLDE2ODU6InNoYTI1Ni05MWI5QVJVNG11eXl3VFJDT1RqbTBUR1pxR2xXNTI1WXBYRjkzdEJPQXpBPSIsMTY4Njoic2hhMjU2LWR0V1ZjZWtFT1RKNHJvVFZ0STM2cWFXN2RCZmRRZHR2WXIvNWVLVEVrVnM9IiwxNjg3OiJzaGEyNTYtNCtmdkpWajhXQmpiNzVGZ3p3NTI1WFV3RTRqN1paem9oNVEvSm80RnRjST0iLDE2ODg6InNoYTI1Ni1PcUdHT2JhNGoybjBUTThGazlFRURNZndYbkovRTVUck5yT0tkWXhXSlJjPSIsMTY4OToic2hhMjU2LUdsVFFzSDVZV0tSazZ4d1NWcEU3OTd3TXVtWDVUVHcrNkFPekFESzMxZEU9IiwxNjkwOiJzaGEyNTYtTnVwNHo1SGswUklzVkVuTnFjOGVvSzNRUDhobG1sQkNyMU9RL0tiQUt2UT0iLDE2OTE6InNoYTI1Ni0zNDFOa2ZIcnlGV1huc3ZxbGhRRzJUN0VCSDJTSnRXTzZCL3EwKzVETEFrPSIsMTY5Mjoic2hhMjU2LXRqZEZVRFIxRUN4Y1NMY25Gc3RKR2JhSEpyZ2lnalY3MW1QMEJKbXRiUlU9IiwxNjkzOiJzaGEyNTYtZ0R4dFZUSVVXV3VQYjBpdmhLMVV5emFBajR6MlZHL2dzcnhMY000Mm1NOD0iLDE2OTQ6InNoYTI1Ni1oL2dpZThacTZDcHVlbzJ5K1VwNnUwNlFmUDE4TjlBTDFpcVZNbWVnOE9VPSIsMTY5NToic2hhMjU2LVl0U0UzVHp5dW14YStOcStpTXRuL0V1Q1NJOTZMM0NvUmc2QWNUZFIyeGs9IiwxNjk2OiJzaGEyNTYtanNyV1dWc1FXTklRYmgxcmI2TWJrUG1FdzR2ZmJVeFFTWHhnMEFSRTBKUT0iLDE2OTc6InNoYTI1Ni05SlRvWnIyNjhSb2dveGxvQ1A0eHBPbEQ5eDl3NnlGUzlacFI5TTBxK1pjPSIsMTY5ODoic2hhMjU2LXE4SjRDekJ5WkhhcVVPSGZVbzNtWGk3a2ltcjh5TElLVjVRSTh4cXlER0E9IiwxNjk5OiJzaGEyNTYtUUhlSXVjN3g3SzVFMHFQN1NxaVpJWWF3WWtvb1dQNVFSVlk3YzUxZGFHYz0iLDE3MDA6InNoYTI1Ni1GTVRxalUzaWJUSW1DeWFoa00raTV3bWYxKzVvMUpYNWlabjdUOU1TM01vPSIsMTcwMToic2hhMjU2LXQyWithcFNHN0h3eU5DNHpDYnZEMlZiektIR1RDZ0poT1hZRUF2eWN3a2c9IiwxNzAyOiJzaGEyNTYtM1FVTWpOQU9RVExxZVJKMXh5aVRUY3FWQ2pzRytNM3k2dkVxa01oVnZTST0iLDE3MDM6InNoYTI1Ni1FZktzVzVBaWxDa2ZzTDR0NU02aGZObDFvNEpoeG1YR1VNOHpiTlBmcnpnPSIsMTcwNDoic2hhMjU2LWd5dGJicStCNlZ2eGdGWWF3THdqUytKUHlCZ2NuWkkrSWFoNnFQRk9SaFk9IiwxNzA1OiJzaGEyNTYtNm1xOStpOEFzSjBNYlRjaFFtSExvRVQrVzR4MEhmRzR6QURoaFlaWDZKcz0iLDE3MDY6InNoYTI1Ni01eERTWXpwTmEzNi9mUC9vYUJ1aE1CejV5Qlc4TVp6NUxieGxtVnN4SDlrPSIsMTcwNzoic2hhMjU2LW95MmJObHVvUm5VQWVBRHhWODZUWHpMRG5qM0FhNnhHeUJFbnZiMUd0cWs9IiwxNzA4OiJzaGEyNTYtZ0UxZ2h1RWxtMG5lUDVtYTFVWXR2M0I3R2EwUUI3aWU4V2owSFRRUmZYdz0iLDE3MDk6InNoYTI1Ni1aQ3JrUVNGend1eGpabWo4Q2llblM1Uzdxd3hZZ0h4ZDhEVndCcUNPQ0lJPSIsMTcxMDoic2hhMjU2LU1KZWtzcFY3VjNwOC9NWnZoemlNUEVnN2ZMdXBDbHJHbHd5ZDVyZFpxRFE9IiwxNzExOiJzaGEyNTYtL1gwU1lRWWVZRVVBRzNoSHk2OVdqUkJnbldOTmZmTTlWQktuRFhOVE1ZTT0iLDE3MTI6InNoYTI1Ni1JV21kTTYraVNaeTF6V2ZuOE0xMk9kcFEySXhuK0tGZ01kdU83K0ZoSUNrPSIsMTcxMzoic2hhMjU2LTBTZ2QyWnFqUjM5dU5vYVhvRXUvczkyOTNXWEZJMVhmbFpDSHU5NVlSOVE9IiwxNzE0OiJzaGEyNTYtUEpPZGJLWjd5TEdLTjRUWEI0NWxKd3AxaWk0WFFDZWZWUnI3RElwbWtWTT0iLDE3MTU6InNoYTI1Ni1nL2VuWXhJQ1BTcFFNaDhMN0xDd2VkWGtCQ1NUbzdGb1lhbTZOSzQrNVlBPSIsMTcxNjoic2hhMjU2LUw1bENNbCsxNG5NTVdYaUVPTlRPdDREbnFEaWJldzZBbXlBeHVDZ0NkUDQ9IiwxNzE3OiJzaGEyNTYtd1BMK0xwWWRYLzNHT01PRzFqcmJRQ2llQ3lwSWhmcnNHcEtoYzJYT2N0bz0iLDE3MTg6InNoYTI1Ni1pTXZJeFpGdTVES0krZW9ibEVqSExKNVE0NUFmNkRiQk5IQW44SFJuUnVvPSIsMTcxOToic2hhMjU2LVlKZDYzeldOcExpUituUGpkeWM1MmdSWmNla0lGU1BIWWVpbGQxdUVVMjg9IiwxNzIwOiJzaGEyNTYtb2NSSTdqVkxuQ2lmVGJXakM0SVljeEhvY2ZTWlo5eVpmS0ZsRDlnclZtVT0iLDE3MjE6InNoYTI1Ni1KaDI2N1drdm9NKzNYU0hMbDhueDVSNUdNWGkxRm4vQ2loeUptQmxDN0tVPSIsMTcyMjoic2hhMjU2LTFjTUJSaUgxVFY3Uml2cWF6VmEybmlwd1hrU3VkU1RVQ0JxZ0svYnNRNm89IiwxNzIzOiJzaGEyNTYtRXJWZkIwY3dLdVVlM2x1b1hyMVRwWlZGbm00RnFLZzgxMXVXUTYwbHdlYz0iLDE3MjQ6InNoYTI1Ni13bmFPL0JPQWFIYUx1M3dVOEwwOHQ5WnR4aHdFQ2UxYlBuOXBUTVczM2VjPSIsMTcyNToic2hhMjU2LXgrV0YwWUVQVC9lVEF2N21nSS8wQW0vMzk4dHZRdldLaEJtczA5VFU2NGc9IiwxNzI2OiJzaGEyNTYtWk9Hc2pVdzNxa3BVOFpEZWVyQ3FIc2hTY2IyRGx0cW5RYXNmcGxQYVlHbz0iLDE3Mjc6InNoYTI1Ni1iYVZrRDBXMEFVRzJNTjVMRHFmMWQwbzI3T0NXcWNOQ21BdWE2b3dzbC9rPSIsMTcyODoic2hhMjU2LTlFNGQxTXdGbklSaXFrUDJHelptME5VcFhaQlFlVE9TK25CZ2pROXZmSmc9IiwxNzI5OiJzaGEyNTYtcWl6UjJidTdnSEdUZnc4RWk2aDZGSmhnQzJlTi9LRTZkMCt2NkI0Q1JZYz0iLDE3MzA6InNoYTI1Ni1SaktvZFZTOFNGTFNJWjZ0THIwcitHdWhpL3o2ZTR6MnJjRGNrcUphSytvPSIsMTczMToic2hhMjU2LTczRFJuS3grblUxZlNGaUdFYURSajRSUlV3aGtabUpBc21ia0czZWhFb009IiwxNzMyOiJzaGEyNTYtT25YNjlkRDhzWWc2eG5ydmpxUWIzbE04dVhsWmpjV1IyWnNETmRySk1iMD0iLDE3MzM6InNoYTI1Ni1WRlFhOTkwR3I3dklQWnpGSkxkVHNzTzU5bWtpRWpsTWV0c1VidWFTYnhZPSIsMTczNDoic2hhMjU2LTdWczk4VFcvV3RidHRSYUtaZTJaVVdCNkowSlB3dURTajVJSlZMODF6Vm89IiwxNzM1OiJzaGEyNTYtQ2RrMlpSRForOEhLdTg5eHpwM0RudXpmSU5jeklsRFNNMXZZYmVrS1pSTT0iLDE3MzY6InNoYTI1Ni1wdC9tbitJamhLbUtIN240WXgxcHhnVWVJQ0dqc1VFL0EwTUJpTGxDRFhrPSIsMTczNzoic2hhMjU2LUx3dnpGemIzREF0dDRIcitPdHlpbUVmUVZCUWxmaFdWODl3a2hyVy8xTkU9IiwxNzM4OiJzaGEyNTYtSzBVWFhYSU1KekpVRysyaGdqbklnbUluTHFJVFdQby9PRU1jYTcwOVlCaz0iLDE3Mzk6InNoYTI1Ni1hMmx6QzlyRmR1eERmdFVaT21oK0hZZ3d0Q25Ea0k0NzMxdFVZS2RwWGNvPSIsMTc0MDoic2hhMjU2LTNzWEZLaDN0eFNWNDhXTk5pUnJFQ0c2RTFwNDF3WE1zUlB2WWR5S3VTSDg9IiwxNzQxOiJzaGEyNTYtbDZodHhrRElTbWY1SGVwVGdzNmNSeTJLYzJSUERoK01RaUw3ZGRiM3BRYz0iLDE3NDI6InNoYTI1Ni11Zjk4MW4xRFljczdsZzVlNnQ0S2ZqVkduOHd3U3dtNW5jTTZZMlpVb3VzPSIsMTc0Mzoic2hhMjU2LXhtcW04dTdhdTFtNTRadERZOGZ1NHRWT3psOU1MR0xLYitQY1orQmxOT289IiwxNzQ0OiJzaGEyNTYtN0I2Z0lsczJSQlZxZkxZMjNtbGp1N251VEhoUXVJQmdwd1RZZHl5Uy9iOD0iLDE3NDU6InNoYTI1Ni0rMTVjQ0ZGOXNhT3g2UHZVaUxnT2tQRnMyZ0c0QTRaRmlhWFNVYkcxeTlzPSIsMTc0Njoic2hhMjU2LU1pc3JGZXpLakhPSmZLRkdCbHRXNHhWMUU1Q1p3MDFYeWM3SGJrT0dIVWc9IiwxNzQ3OiJzaGEyNTYtM2FaUDI3cm0zZjFBYmV2aVlTNGREQjY1T0xWT2d1aitFallRSDY4MmZLZz0iLDE3NDg6InNoYTI1Ni1WeDNNZWtPMjVOa1kyMVV2b24wWk8yWC9QQnE0ZEVmdEgyZXVUd3U5UnVVPSIsMTc0OToic2hhMjU2LUg4MkR5MTRFcUd1b1BlMjQrbEsyUGxUV3FmOCswNFBxT3NnR3FXbWtoSVk9IiwxNzUwOiJzaGEyNTYtd09WSDNvU3k0UmRYY2tucnZMSFpZQjVicFJ6M2NkNG1LdmRneXV5NlNQUT0iLDE3NTE6InNoYTI1Ni1qTUNmNnVuM3p3VzB2dEdyMk9xOUd5M2oyNEM0dGw5VmF4YytwaG9UVnhzPSIsMTc1Mjoic2hhMjU2LThXWHJydU4rRzdZSWVlTWxqRzNhMmU3VWNzRGVPUEhHM2w5cW1SOW0vTms9IiwxNzUzOiJzaGEyNTYtOGg3MTY1dDArbE5xVmhTdU9UOXl4b0tTUG5ManIxUE9rZzU5WnFiWTZzbz0iLDE3NTQ6InNoYTI1Ni1hUjZKbHVud1JDbDhoY2JtMTVDMEg5cjFrNlhpUjdrcENNOGE1bFNYeUdrPSIsMTc1NToic2hhMjU2LVhCUksrZ2NXbEhhbXl3cGJSaDl2RGdmYTVLbTk4bzdjQUN0WmROOUl2SmM9IiwxNzU2OiJzaGEyNTYtM1htNUdET2V4R1d6ZStuYzJKT0x0NTVjK0Q1dUxFOE5SNGQvRE1NTDQ1bz0iLDE3NTc6InNoYTI1Ni0raWpZclNheXVEbXF3bzhvRU5lWXpjcEdJRzFneDdxU1R5ZjF2TXozYWswPSIsMTc1ODoic2hhMjU2LVJ4TjV2Zy9hek9NR0JjZGZKSXdka3FQc3orNHFBNnpDR0FyL3NtNENCOVk9IiwxNzU5OiJzaGEyNTYtdTdMRVNqTFlkYkNMZVBFVmhidndseVFnV05XU1I5Rmk4WDJOSWtia1VBZz0iLDE3NjA6InNoYTI1Ni1NblNSTnp0ZUdyZUoxMmdDRVNjdCtZeEg2VEpFUE5qdVhneGo5SnQrMjg4PSIsMTc2MToic2hhMjU2LWIySGl0U3lhdlQ2M0xiaG5kTmJoTmtkOS9MbXlCY2c0d3lUempTdGt6L3c9IiwxNzYyOiJzaGEyNTYtRGx5bXk2V0NiN3AxZWcrNEFLWjJmWCtxTWM2b0VrYkU5K1pGSXpkckxJQT0iLDE3NjM6InNoYTI1Ni1zbkJPZXN0cEUzZVVwMDA3Tm5pQWwvdCtpSUFYYXB3cmU1Q0tXM2JXZU1BPSIsMTc2NDoic2hhMjU2LTZhSWFqcWdJMWVhU0x2eTluU2xCSnVsY1FmUGRDN1luTWFKcVZVRTZkcDg9IiwxNzY1OiJzaGEyNTYtbXpMdEZJOEttTlFxS0Q4M2lIOU42cXVPL081aGxKQi84cVY2RmJ0eEVVUT0iLDE3NjY6InNoYTI1Ni0zdkd4RktjNm5RUlcrZE16VlJ1bmNGankvazhzQU5CaC8rK3Y0OTZFK1hvPSIsMTc2Nzoic2hhMjU2LWhxWUttYmRHVkVzU1JjOG51T3ZyTzVEb3piWTZpMkttMjdqelRaT0lMSFU9IiwxNzY4OiJzaGEyNTYtQXRzOWRnVldyM2RJcXI4TEtXUGpqdHpmcExmZlc2WXBpY0JTVTJZRWtzZz0iLDE3Njk6InNoYTI1Ni1taVhqMEQ3c1BObnNGM1FLUk9Fc1lmK0c4T2VCVXVQdjUvQkQwU0Z6WkdFPSIsMTc3MDoic2hhMjU2LUZWVnlhV3M0WTFPeU5lRGVTQnJBMW5wSWVESU1xWnRtVy8zenpEd1hUR2M9IiwxNzcxOiJzaGEyNTYtT3Q0K3U3bWFsYW1WZlZrZVV5V0hNT083WUdyV3h4VUNEa2hSNW5TaVBBST0iLDE3NzI6InNoYTI1Ni1ueEpPM21jQTVvZDJzMXZHdWdqUWVOVjlldzhBSUNDYllKL0RtTzBJWlJNPSIsMTc3Mzoic2hhMjU2LTBJUEhhR3d3VENweFB2enZqTk9HMjRaK1N1UGFydXdDZzJRcWdNR1BhWUk9IiwxNzc0OiJzaGEyNTYtS2p4QjZIT0FZM1RVbS9jVnlLNW9WOXB4TklONC9IcTk0N3ZGU004OG8waz0iLDE3NzU6InNoYTI1Ni1yWmxHQjhsTCtlSlQwOTFsWUF3cHF6VXprdVNPUGtOMjM5UTlVNkhZT0g0PSIsMTc3Njoic2hhMjU2LUxMSXlzdkYzQk1nQUlGSkRjVVZva1FSemtCSFNzYTIwUDJLQ1RDdnZVQTQ9IiwxNzc3OiJzaGEyNTYtbTNyYzFTMWJFamJ0RDlxKzR3eVllLzVjS25VMjg5S2FFdnphUXRNbHlBcz0iLDE3Nzg6InNoYTI1Ni11OHA0dDVUckVadHVLR3ZtUHdmTytScE5iamJReGJHOFVBMkwvdWVjR1lZPSIsMTc3OToic2hhMjU2LXUrb3FYbmZDMDVGTUI1QUtIMXN6NEhmNGVMSWdVczZPYld5T1g3NlJJT009IiwxNzgwOiJzaGEyNTYtcDgzTmZ2c1h5V05mRklGMVRYcHYzYmZTUGR5V1A1cnpmSVNlbVFxREZFZz0iLDE3ODE6InNoYTI1Ni10WDhnemlSenFlaGtMem5aR1pXLy8yYzF5NVhXclRoKzZ4ZHhrNzBCWmo4PSIsMTc4Mjoic2hhMjU2LTlBZzZ6YWZVV3NkUWUyRWtoOHdKanhPL2EwQ1FraUh5M0JSbEJwcjFlRlU9IiwxNzgzOiJzaGEyNTYtUW9iV2tObkZDMjhBT2pReW1mcU9oZS9pbkxjTTc2WTdkeTJQRTlIQ3JWST0iLDE3ODQ6InNoYTI1Ni12eEU0T0Z0MWFpbW0vcWxiV0tQRW4vY2dmeFE0QndOWXNiK1lFUlNzZWQwPSIsMTc4NToic2hhMjU2LWtPZm1IVk1WRnRCMjdMbFdoK3JtdUJwSWlhanptVWlwRTNDSWc2N28vNjQ9IiwxNzg2OiJzaGEyNTYtb3p6M3NjZUFPckNkbnJYMkp5akNrOXhDcG9UUzR3WjduaFkzam94eHhpbz0iLDE3ODc6InNoYTI1Ni1QVHJtV0xweWx3NGFCKzF5VStzSkxzZDh1OU1ac2VQaHd3emRCWDlhb2xzPSIsMTc4ODoic2hhMjU2LVFack5FTWl2WGxSZy9HT1hqTDJFaFE3NmFDZGdORU1WdWx2SUYvRmJTQ009IiwxNzg5OiJzaGEyNTYtOWFVbE00OEUvNTd2Rm9DWFRRUnQvbGtCWWwyRDJVV0pYdm5ZSWpCUm0xbz0iLDE3OTA6InNoYTI1Ni1uRUJqZkx4S3c1RnV4QmZxdXBBOHpTRUEzMHMxZU9yVmVGaE5JNk5pWUZFPSIsMTc5MToic2hhMjU2LWVNWGJ6SllpcGlHalVEMFJnVnFmZnRtUEVGdlhWdnFNQzFtN0Yyc1FWVWM9IiwxNzkyOiJzaGEyNTYtelhEakJYUCsrN21Oc2tTUW1UNUtvWjk0ZDFERng0UzZQL1RFRFRueCtCVT0iLDE3OTM6InNoYTI1Ni14TUR4N2NmaFphdnRRR3UyVllZU2VyOXl2UEpvdE1LZWJHcDcxa1QveVBJPSIsMTc5NDoic2hhMjU2LTEyUTlUd0VqZFBvOXNxbWlPamNSZFErK2lHcVljbFZhYklOQUNyTjJOMXM9IiwxNzk1OiJzaGEyNTYtbC9JY1A1ejhqRmhpVnVZWlZYK1M5dzc3dUhxQ1RuMVJrZFJudWQrRzAyZz0iLDE3OTY6InNoYTI1Ni1DNmY4b2U1NlhpdC9BZEYvanRxODQ1aFRzeG84MkNKUGlSZUF4M1ROT2JjPSIsMTc5Nzoic2hhMjU2LXpEYk05eU9tYWUzbkdtOEV4MHpoZmVSTXo0bXJ2NitncnY5T1VSUHVqM0E9IiwxNzk4OiJzaGEyNTYtVEdzakJkcFA3TGphdUd6U0tyUmxzTGlnajJhVjdmRG0xcUpDdDVxbEQyZz0iLDE3OTk6InNoYTI1Ni1XRVNnd1ZyTnpETnVsSU5EQVVvNlJRaXY3N3lKSzV5eVhBbjNEUmpWbFg0PSIsMTgwMDoic2hhMjU2LUlRRFBrY0VTbG02bzBiQVY4U2tpVUdKV3lLM0hvdlBIaFFFMnUzWVRXeTQ9IiwxODAxOiJzaGEyNTYtQmxINU5vcEd0UlBaeURmM1YyRDZYb1BScW92a1BvMVNBd2JqYUIyai9tOD0iLDE4MDI6InNoYTI1Ni13dEJUNGt4bGQzcDdXQjhydFJpclZFT2ROQTdFRSs0QjhrZytITk9tTGFrPSIsMTgwMzoic2hhMjU2LU13dSs0bHNGZUl1b3JvRFYrMHJvZFJ6NUgrbjduTEJtUVN6ZzNPcnhOOVk9IiwxODA0OiJzaGEyNTYteUhINkV1MnZwZy9aYm1KT3lieWdxT05mZ2tWTWs5citLSnEydG1qbHJPST0iLDE4MDU6InNoYTI1Ni02Umk1K1JEL2luN3pQUTlBWDNsTXZlV08vSEdIZWlMdlBEMWxaM2xrRjdjPSIsMTgwNjoic2hhMjU2LTRjcmFiWmxuRFZ4Wkx4NXV3THRLS3NiN25FN1pWKyswMytUdEc3L3B1aTA9IiwxODA3OiJzaGEyNTYtUGFQKzAxeWRkOTBKT1NVc1NsUU1JYzlLZFZGZXVsaXQxb093ZjU2cXdnaz0iLDE4MDg6InNoYTI1Ni16ZFJjaVRSOUNEZC9jNXh4SUE2SlJuSEtBWmkrMW1uaElES3BZQVVkYnUwPSIsMTgwOToic2hhMjU2LWRJQUlvVmJRS2tNZURlZFMwbFJKMUhEVlFhRVVOVlJDR040alBzOVZaWEU9IiwxODEwOiJzaGEyNTYtTDFaN3ZUeGdSaFBSUTJCaW1GTEF3SWtiU0xWZHpkcFZ4Mm9LNXJGMkQ0ST0iLDE4MTE6InNoYTI1Ni13ZzJscy9zUElNRFRoOWZmOTVKdHBnTFZURlRjVUpWZVMxZkhpYmtHeXlNPSIsMTgxMjoic2hhMjU2LXlHOFFseW8xL2liQVQ3akNpU3BOUUxPejR3SjFpODhwRmRwNzlLSEVYakE9IiwxODEzOiJzaGEyNTYtNmtlazZCTFJ6UjFWZjRXc3V4R2ZQVTFSTTg5cUt1RVcvYmEvMjlGNmNDND0iLDE4MTQ6InNoYTI1Ni1HaWsvQ1JqcDVHOGJvb3RlS0Z1ak9xdzVIM2Z2NzhpenVidWkwd2FyNWJzPSIsMTgxNToic2hhMjU2LXJHT1BSMHpPcEt3VFVDQnl3QkN6c0lnbHJabStQdWo2ZUpTMWFKeU8xZWs9IiwxODE2OiJzaGEyNTYtZVZ2cnZOT3BncllhWDFwYysydkFZT2F5VEhXTk5LSWl4OUdueHdOV01Qbz0iLDE4MTc6InNoYTI1Ni1CVFpOcmdhd1UyZnQ3TXM0T2JmMTZtOW9NUHJzUDUrVENFRWV4ZWV0M0drPSIsMTgxODoic2hhMjU2LUpXZFgxN0lUbkh6dEY4aUhuZXR4emlJR3BwSEtFNmdRR1BkUGhnQnZlNXc9IiwxODE5OiJzaGEyNTYtUWFVWm9JQ3FnRUZKdmtBZjZmT1RTbVRLcUVRbXVyUURDcmtxdlJiNmQxVT0iLDE4MjA6InNoYTI1Ni1kQmQ3RUFpMFhkZTBHUzFWMWc3Q1lhdVJxZ2FNVUtNWE0wdUhQOWtUd09RPSIsMTgyMToic2hhMjU2LVREZ0o2bEFmUzZFa2tBK1h1WTRZS0pMMGpMZjlDMktEZkFGb0dpanBSKzQ9IiwxODIyOiJzaGEyNTYtVTQ0ZWRrY2Y4RzNDZVZzSzFpUWhtOXlyY1Z4VlBYR2pGSktBaDBueE0xTT0iLDE4MjM6InNoYTI1Ni1ZTnlqakUwYlBKSVdrdWYrTkZhbjJmT3ZjWnlHaUlEajNaMTE5WjYxYzNRPSIsMTgyNDoic2hhMjU2LWhtZHg0NWlwcVpOQzVLaTIxbVVvRzRqbVZWbXpmRUJiSFNFdkI4Z29OcmM9IiwxODI1OiJzaGEyNTYtbExwVDRHWEltamxwVGZla1o4Uy81TG9XY0hPOFIzVjZ5VGZqMnNQL0FYRT0iLDE4MjY6InNoYTI1Ni1rS0psK3NjVXo3Vmt1Y0ExVkJrbERyakMvd29lNTlDekd0OUREbENOSGhzPSIsMTgyNzoic2hhMjU2LUJsT2NTUCtzYklBZHlRTEZFc0kwSDE5WUdrNzV4TXFBRWhKQmc2NDl1Zm89IiwxODI4OiJzaGEyNTYtczNOaGNIMmNUc3NpT3AwUWFWZzhubjgwUi8yMHNWbWhSWEJqeGVxRkNydz0iLDE4Mjk6InNoYTI1Ni04L0tCL0Zybmw0QU5vQlkxL21PMnlwMTA5Qm1JdU9aOHhEOVRHSEpyaUF3PSIsMTgzMDoic2hhMjU2LU9abGtPTjkzSGc1NE80SEVRM1dzNGdGZUpRVHNVRnFZamhPSkxaQTNNYVU9IiwxODMxOiJzaGEyNTYtZkx4aFhPTDBNcVkrWGxtRFNPMjE3enZubkpjT2xOTmR5ekhqL3lIUVNKUT0iLDE4MzI6InNoYTI1Ni02TWRNcldicGtscW1iTDI3cUdnVTZXUDV1VzlTQjVzUnRnRTIwZTBkQ2tBPSIsMTgzMzoic2hhMjU2LWtiQ1lKNWtEdGhQRzA4RS81U1p2L25rOHQ5Ni9YMHdBY2FWelcxT2pZM1k9IiwxODM0OiJzaGEyNTYtZmxnaTlIYWZ0bnJuLy9nbnA3ZGlIbDN5OGJva0NlbkZYeVBFdkJvOUtIST0iLDE4MzU6InNoYTI1Ni1aVHlWdDRES2FVMVVjSkxINTk0dXNIR1JvWWhvM25QdWtaZlZQU2hlUTcwPSIsMTgzNjoic2hhMjU2LTFIbkdvZ21mYTF6L3pCUlNvdzhvZy9qeWM4N2pHOHYwL2ZPMnJUWDZYbGM9IiwxODM3OiJzaGEyNTYtTHBUQi84MEk5RjJZOXFJT2dqREt4TGNkZndlaEpleFhEUER1dkxxZXp2ST0iLDE4Mzg6InNoYTI1Ni1yMDM0YjFjeGExQ3RCbyt0MUFEbjRndWUzbVBYdGZ1WW9BWTViWVFHZEJJPSIsMTgzOToic2hhMjU2LUtBcUhUTjJaZmptaEs5eHZITzJpWjN4bWU5dDRTZXZHelJSRDg2elRwNmM9IiwxODQwOiJzaGEyNTYtK2ZKb2FXWFExNlZTZ0pReWhmSHk0VVN4d2c5b3piQ0ZrQUNLazZKQUhxWT0iLDE4NDE6InNoYTI1Ni1xd0Q3aVR4U2oxM25sOEg3TUZQSnBoR2lkbFkvcVZhbGlhQlU1QlVwSFU4PSIsMTg0Mjoic2hhMjU2LThVYTNRUmx2YTFZOWFuM0Rqb0NKd1JCR29TYWFCT0l5VFJFTmxjdWdZOGc9IiwxODQzOiJzaGEyNTYtN1VWNWFYazBNOHFrR1p3Z3RYVnhWYjRIdnlUd2ZYMmlmMDZuYXBaakltQT0iLDE4NDQ6InNoYTI1Ni0wdmdiU1dMaUw1TmVqcWZjeFUrMGpGTWVBTkFBM1pKY2k2aEZkVUx5QWs0PSIsMTg0NToic2hhMjU2LURRc2NXR21CU1JEMzZUK3hXUUVMQlFyd25WNnE5NTFXM0IyaWw4UWMzNFk9IiwxODQ2OiJzaGEyNTYtZklidm0wS3JWVDViamg5K0FYcm8zMzhkN2FtQlVLS0lKZDBGaUU3ZkF6az0iLDE4NDc6InNoYTI1Ni1DVWs3bldvbUxEQjNySkZ3OHM4dEt4eFVQUk01dTZDWGNnQmJISFVLYWg4PSIsMTg0ODoic2hhMjU2LWs3NzB2bEtEVXdONjhNcGJCT3VwSHhnSjhUdmRyTkMzU1Nva3RvNGtBUHM9IiwxODQ5OiJzaGEyNTYtWS92cWZYTFBxeEpaZTUwS1F2M21JN1BzUVRybEVhQmhlc1NOam1xWTRNMD0iLDE4NTA6InNoYTI1Ni1PU0gzd2FjakEyRUI1U3d6NVJPUXlzRDVnNlFpWDZRdVhodGk0SG9rdDA0PSIsMTg1MToic2hhMjU2LUE0M3pROWoxWlpSL0pWTkhVSHNxZlZGWERGUm9LZkJWbW1NSjNLS1hxR0k9IiwxODUyOiJzaGEyNTYtYUc5SWpOWDl0VENOdE1scmhITWgrNDlpTW52N3lJQXY2QmlnUFBlNEI3dz0iLDE4NTM6InNoYTI1Ni0yVGZIYUxhYU9OU1VjTkl5Y2ovckptR2ZhSXpUbjVRaC8rQ0VzaDdPUXNBPSIsMTg1NDoic2hhMjU2LVRjOW9MVmxjbkk5eSt5VXp2RGloUTZKaTJteDdsN2ppaWF6MVBzWmlwSVE9IiwxODU1OiJzaGEyNTYtQmxKTzZGWUVmZnczUkhCb0x1T1BuQ29DdEEzaXFzWjE2UUxHWmZlL1lwMD0iLDE4NTY6InNoYTI1Ni1FK2JDWDlwVUFvREs0NHREM0tvVm9zaGlVclRTcFB4WVNlTklyQ0d0eU40PSIsMTg1Nzoic2hhMjU2LXczUDkyNC9DU3FoNG5Mb2pJdmNCZGtzQTBWY3piYUpIMjQySmtnNHRCM1k9IiwxODU4OiJzaGEyNTYtV3NaOFcwbkhYQWNBNGtEZTIxMjQ2bk9EYWpqTTYvMnlKcDArdXJQZ085UT0iLDE4NTk6InNoYTI1Ni0zVXVvTjd5ZW1ocFNXVnhoSGhMTUg5emU4ejZMUmhteXNmZkQwem1UaE9jPSIsMTg2MDoic2hhMjU2LVkrWC9tZlVxRHhJV2c1cW1wMXUzWjlKN0NtK25pY09kYzNXNERhbVdzRUk9IiwxODYxOiJzaGEyNTYtSDh3OWRIalluU20xek8xc2JVOG1KTEJMV1U5Rk84cmdjSERKQndVN1haQT0iLDE4NjI6InNoYTI1Ni11c0IrR0Z0dS9KLy9sMTM5Ti9zaUxDNml6RnpERVNuVTc0amtNT1dsN3hVPSIsMTg2Mzoic2hhMjU2LUhMY0lwWWdtMmFBNCswL0NZYXlJUGNMazdmMzJkVVRXZkZ6M2ROMi9TZTA9IiwxODY0OiJzaGEyNTYtWGtPMURRTGhHV0RqVWV6N1hnQmhBV3l1OGhNbTArZVNGNmZ2MkVzWWZxaz0iLDE4NjU6InNoYTI1Ni05UEJ2Z2hKS2Z1QWVqbkFveEt1blQ4KzM4eXJ0a2ZUYWl6NmppWVlScThZPSIsMTg2Njoic2hhMjU2LXhHRFkxTFNSSjNSOXdNLzVkOHFmeHc0Kzl5Ymt6bmlLQm1GM3hwQkVrT2M9IiwxODY3OiJzaGEyNTYtR0ZBb1dnajBWb3ZxN3FUQ1g5UVQwREFZcmduQUplZUx6ejB3ZjQ4SGxITT0iLDE4Njg6InNoYTI1Ni1hd0g5TVpIZ1VQeGhGZlcwRitVM0IvZzR6dWdhcnNSd1Qwa05OSEZwWXNRPSIsMTg2OToic2hhMjU2LXg3WFpPMEVyUkEyeW42VWhrbS9zbXFGUUl3T081YzZBM0FhRi8rOFdSU0E9IiwxODcwOiJzaGEyNTYtRnpJL0hCMnFEV3hmV2RXMTlvejk4aTgvUW5ldTV3WEdDZXlRMjBNNlpuUT0iLDE4NzE6InNoYTI1Ni1uQ2VwejU3bnRXK0ZrSXd2bnl4YU1Hb1FWem9pWU55V0xwcHB6Y0lFY2JjPSIsMTg3Mjoic2hhMjU2LXVNOFRyQnFhbU1qeUVjd1o4VlZIYTI3Ny9WOWFBYlRnbzBQUDdYNnc2UkE9IiwxODczOiJzaGEyNTYta1hyQ0wwSlhPTjk2RGNOOUZwU1Jwa3lxRHRSWXRIWktvNE1vOXR1Q0pLWT0iLDE4NzQ6InNoYTI1Ni1zd3U1S1VMdVhiL0ZJWXNsdzFmSzBtQVFGZmJWM0EvM2FNSDlGL0FyN1NnPSIsMTg3NToic2hhMjU2LXpobFpzT05HS2JMOXZ0b1VQYTMzMlI0UVdQT2w0ZW5BMmQ2T2hMR251cDA9IiwxODc2OiJzaGEyNTYtM2M1TjhmaGd4bGV6UzdPV1I3dnFwZEluRmpIN01ya3VTZVhJZldoK2IvQT0iLDE4Nzc6InNoYTI1Ni1rOTdBdkdOQlorb3ZnQWlNK29DZnZ1MkVDZFNOdDNrRTZjcWdteFFhWlkwPSIsMTg3ODoic2hhMjU2LVo3WkE0dkF5S0JxRFh3MCtPQzF0U1dhRzl3WUd4cEpqV3htK3JQU3plZ009IiwxODc5OiJzaGEyNTYtdTFUN01VTXVSVmI0azNITjJqa3NNSEQvUk80NXVMU3Z6NURqRllqV09Qcz0iLDE4ODA6InNoYTI1Ni0veUZUV3Zna1NlUk94REtUc3pUTDVvWjdKMnROWkQ3cjg5RTkyb0NxWVFFPSIsMTg4MToic2hhMjU2LXVtQTU1aUVGRVN5QmMrZDRoV2REYStJcFllK1NwcDRRTUtaNXp5QzUyWHM9IiwxODgyOiJzaGEyNTYtR1hIMWxrTlZoK3hKV29hMTdsdmxIeXgvcTBDYnZVTEhZbGJFUnJUby9tOD0iLDE4ODM6InNoYTI1Ni00R1EyS0trR3l4QTV4eWRMLzdBcjY4VWRSdFd1ZGN0SjhkdlUxeGUxYVFnPSIsMTg4NDoic2hhMjU2LVhaM3RXN2lrbVI2NVM0NHV3U0ordXpEWkhZOG5KMHJmM1JUaC9QT0xIK009IiwxODg1OiJzaGEyNTYtNkU2djdQcFBTZU1uNEUreDhYODBHQjg1YlQzV1F0OFB4V0JGbk9xbW8yMD0iLDE4ODY6InNoYTI1Ni1reFpTK0NpTDJqZjB0UFJCKzVIV1pQazB4WFFGSWlPVVNpTmM2WFh5ODQ4PSIsMTg4Nzoic2hhMjU2LUpHR2ZZWWZQV2V5V3NaK05zWGdyUlQ2MU50R0pkUjFEZlc1a1hPTHZRZ289IiwxODg4OiJzaGEyNTYtM1N5RlU1dHZ4UjBCNnoyK0s1SVZRLzVHL0tvSGIySDdNNVd2cDNLcGkyST0iLDE4ODk6InNoYTI1Ni11dk12ZW5BZ0tQdXUrL2t6V21xaWZrTk9qaGpnRUFXTm8zUGNrSXRDcmd3PSIsMTg5MDoic2hhMjU2LTA5SitMZDVJbjJUWkZvdGQxb0t4Q3VDeUdMLzZBejVmY0tlYWNVL2RBNWc9IiwxODkxOiJzaGEyNTYtYXdzYjdWYlVkcHN1MS9FV1l4N3dKZVpGQzZUcU1uejk1bzNGMHBPNWZ2ST0iLDE4OTI6InNoYTI1Ni1FZFhXbjRpeHVSMGM5T0FkOFJBRkRLa2I3QVlFSmtMTEJhRk9VMytWY3lrPSIsMTg5Mzoic2hhMjU2LXZDR2F1c1JMQUxYMGUxVEhTejFKV1QzeHQwc3pVdEg5dDNoaWtsYUtaYjg9IiwxODk0OiJzaGEyNTYtMDZjVDdLZXFyMERiL1FIVFBjV2VRd1lsKzczdkU3cm82bWF6RCszb2hPTT0iLDE4OTU6InNoYTI1Ni0vdkxLWCsxMHNTUkJnRkdBN1dhUUZBSDcyM0FudFVHTkNsdVJnMTZjenU0PSIsMTg5Njoic2hhMjU2LTVDZUQ2M041NWlIZkVWSnFkdTdnVTlRY1ZsR0tsRGFWMkI2MmZ2cUlLZ0k9IiwxODk3OiJzaGEyNTYtbkMwbEp6aWREZ1l3cXBjYVNTVDQyMFByM1Vna1FCLzNqaW1DRzRYZExwUT0iLDE4OTg6InNoYTI1Ni03OUUxNzNxT3dwZ2VOK2x2RDQyVEFxSGVmd3pTK09DRTB2d3ZtY1RWSng4PSIsMTkwMDoic2hhMjU2LSs1bEJHWnBLNncwWExjY0UzYlkreDVnTUVWVElEaHYxbUo2MmNiRkZVYW89IiwxOTAxOiJzaGEyNTYtQ3NaL01EWm5SZi8xekNzZXZjLzRFbHN2TFNQdmVJREhYenMvNU9VUmVOZz0iLDE5MDI6InNoYTI1Ni1MRkIwOCtvajdSTHdSQitGMVA1c1RzT0RoYXZqaXpDdmpDSEpxZnpNQ0RzPSIsMTkwMzoic2hhMjU2LUUrRCtDU0xhUC83ZC9CUDdxZ1BqNTZRRFNsbnV5TU1iZ3Q0ZHMyS29obGM9IiwxOTA0OiJzaGEyNTYtQjQ3SWtIR1dHZ0JpaUxZcVRiUjJ1VS9WS0t4NWR3dWQ3NVp2M0wzOUFDbz0iLDE5MDU6InNoYTI1Ni1lR3piOEtPNlk5d1ZGSjRDVmJ1MlNoeDZ0MWtLUktPbXZNNnJqSWVyaStNPSIsMTkwNjoic2hhMjU2LU1zbzJ5Y3p2SnU4UG5YMUQrZzJ5MjZTbExKYVpZbkZPRzdvSkxuOHZ1RTQ9IiwxOTA3OiJzaGEyNTYtVzYwZUlJbUVMQmJGbklraWZxOGZIMXl6NGU5U0tFUFVlR1pUS3NhYmxwRT0iLDE5MDg6InNoYTI1Ni1uWEYxbHZzSjRrM3hLZk9hZkRPVktOY3ZQVWI1SlBqdVA4NVhrc3RYU2dRPSIsMTkwOToic2hhMjU2LVY4VGRyMjNsT0RhN2ZHOFNUN0padUdvcmZTd0FweisvTnoyNnBKRUFJWHc9IiwxOTEwOiJzaGEyNTYtY2pzQmc1cXpQWnIzVWFtQmhlOEdaM3dsYnZZSCtXUnp0QkI3V0lnMXVkMD0iLDE5MTE6InNoYTI1Ni0vMjFsbEM0aXJoQkU5TmtqQ0R6RnZJcHBaSEtvZ3B5cXJKQmxHMWl1V3VnPSIsMTkxMjoic2hhMjU2LVRMYWJVNmRxd0tBSTdnSDExVkQ0bDRGRXFUVVFJTVk3S0NQakluVnB3emM9IiwxOTEzOiJzaGEyNTYtNDQwNFpqUHNWdDMwUmkvUS9DaVo2VkZWKzhiQ2pCSXhWY1Z6L0RkV3JHZz0iLDE5MTQ6InNoYTI1Ni1mdTJQbElBMWY3TS9OMWt1bGJMemdpcGxLYW5MNmpITklLT3FoNHp1TTI4PSIsMTkxNToic2hhMjU2LUZ0R1NBTFpYbWk2VEFHQWN2OGsyRWZCeklqVmtkNnBxeXl1UE96SGdTK2c9IiwxOTE2OiJzaGEyNTYtbDJOZmNzQnVJZDF2am5ncW5HeXdyL0VjQTRaVkxwcll1b0hxOWJyS2lKbz0iLDE5MTc6InNoYTI1Ni1VZUZCbmxWODM5cTdBNDhWTW55c1AvVFFaYm1mZ0ZrSVRDd3ZVSVp2WHBvPSIsMTkxODoic2hhMjU2LWVEQXhMN1VlK2EzYU43MWErcUFoMDI2S0g3a1R0SThWVUNJMGxrSUpwN2M9IiwxOTE5OiJzaGEyNTYtd24zWXpIbGlPZldGckpmMHdSMGkyV3llRFBMbk5zakFPM3AvM2phZDl1RT0iLDE5MjA6InNoYTI1Ni1PWlc5UGltVDBCVnUwK05TM0ZhSzlVYVc1NEFWTW0xWUV4aHRTZzQvdUVVPSIsMTkyMToic2hhMjU2LWZtSk93Z1MyT1lpcHVGS2FxdFJ1K3ViQ3ZoSGNtTFk2UEExODNsRGdlNUk9IiwxOTIyOiJzaGEyNTYtdjdGdVlpbjZtWFMwKzZhbndJYmxGZ1RMQWZRdWxvZU5nV1lDeW9QSEtYdz0iLDE5MjM6InNoYTI1Ni1jYjhPZlpyaUt0T010OTZQeHVmMVVGWjd2R3EzcUxMdHV3anVkQk5lVFVJPSIsMTkyNToic2hhMjU2LUFCUGUzbGRUd2ZWbDZXbk15YkNTbmk2V0J0bkhnVFg3UTFmc0EwZWpLRWM9IiwxOTI2OiJzaGEyNTYtUUxkK2NDWXNQWFJPY2NYM0VUbm9pWW5BK2hkU2QvTWVXMnhnKzc0dnhxYz0iLDE5Mjc6InNoYTI1Ni1KdXFKdUM1VlhHSmVzY1NrMkI2bHNRb01HZzNRL29Wa2tUSE5kVURQdllvPSIsMTkyODoic2hhMjU2LTJyaER3VkxnTUJQTXJSWXFyMHVtOWh4UzRqb2VPemhZc21OT0lHSm1lems9IiwxOTI5OiJzaGEyNTYtVjRkZldaajNPWDFHVkg3bWxjZ2VrLzR1MXAwL2xWZWlWZXdJK3Y3WjNRTT0iLDE5MzA6InNoYTI1Ni0vVHVwdDNGMTJQVkdGSlBTYndYZ2xkZ29pVHhqNXZOejNzenJTVmdJQkJ3PSIsMTkzMToic2hhMjU2LWttT0FicWpZOHI0dnpKcllWWTVmNHFXaXI5akhYTVRKQTBHbkFFbDVIK009IiwxOTMyOiJzaGEyNTYtTk5wbDV0NURHc1RUVjh3R0tteHRSUG9DcXlhejJ6RXg2a3YvVjNmU3RKaz0iLDE5MzM6InNoYTI1Ni1CMDdFcEtUOVV5RTZxQXd6anVqc1RXbTgvNHh3bzZSb3ZwS05tREN4UUYwPSIsMTkzNDoic2hhMjU2LTRKTVljbUc0eXJVeE5KdXVORXNoWk9EYk5jUDlSL0NWRUxuRnp1dldtTEE9IiwxOTM1OiJzaGEyNTYtQjZSSUN2OTZSa3Q1UHdIYnFLTkhkUzRQTExscGJxZ2orcDJUMlQ1UWJMQT0iLDE5MzY6InNoYTI1Ni00eGlURTUwcmNjWFFXVmtQN1ZnaWZVWis4Vmdzd3ZUVURKR2g0aDJjSU5nPSIsMTkzNzoic2hhMjU2LWdZYXFFd2pOZXo0dndZckNudTRZSVlrSUcvZVc5cFptT0xZSmM1alcvSjg9IiwxOTM4OiJzaGEyNTYtcE1aZzFVODBMVjVrRWdzLzlpUzhSZEE5cHFxR0Z5T3c0bGxGUk5CZ3BXUT0iLDE5Mzk6InNoYTI1Ni1COHIvSm5STjNNUDhFWmFkTzE0U0JJZWlNUktLaEFkWVV4RnB5M21jMXhzPSIsMTk0MDoic2hhMjU2LWpSQk5mcmJ5S09kZjZVbEZyZ0JuMzNnZzBnMi9Ec1ZWT0ZQNmp6WE5JcmM9IiwxOTQxOiJzaGEyNTYtb1o2M2Y2MEx5MUVZOGtGRnRNamJLZ2tueDZTQytET0Q2UU43bWRWV1RpOD0iLDE5NDI6InNoYTI1Ni0rYlJVK1YxNzcwNUhVUkxSbEZ1NjVOV2JiZVErNzlYMlNpRERoUTFJYjI0PSIsMTk0Mzoic2hhMjU2LUFkZ01oTjZlclo0cXNVc1QzTVQ5czIzNWJvTFgxSmQ3NW1uSVRSczBEOTQ9IiwxOTQ0OiJzaGEyNTYtMVVPWE5HM1ZmS0NXeWlwNXloWng1aXd3UFgyS210YjBJN2NVKzJPSHg1VT0iLDE5NDU6InNoYTI1Ni1JL3QrUXQ5KytOVmZ6dDJ3MGVmMGQxUDhEZ1B4RE9rTDNlOGhUZWV0VU04PSIsMTk0Njoic2hhMjU2LVQyOUN5bkZjdWgvZWpweVkwSVlQc08xWlFUVWhqemtvRm1QeHNpMzRyamc9IiwxOTQ3OiJzaGEyNTYtcVFVUTZkQkNPT2VQZExrVHFGdjR0NWFDS3pxZFlJMGZ3M3kyUXpRNENMbz0iLDE5NDg6InNoYTI1Ni1CQXpveHJsOTRlNE5NbnVHdS9aOWtuNGZHWWxGYk0wSXd0ODZpcUdXYXRzPSIsMTk0OToic2hhMjU2LUh2Y2JhQlc3VnY5UjhzZVVTTEtrVHBFTkpHWExWK3d6TzEwRTl4RWNnUG89IiwxOTUwOiJzaGEyNTYteDhPMVV3a0RkRWJhRElqQzZsVWNLcENtcHl2MFk3Z3E2M0QxdjF3NERFVT0iLDE5NTE6InNoYTI1Ni1YQzg3YVFUT0YyeEFjcUJ0QnNxMUxucHdIVzlZNlNPMjdCK2ZPd2NkV2ZFPSIsMTk1Mjoic2hhMjU2LVdZNTFCMWlsY1JNSjhlb1ZuWmNoejFTS2JhK3BnYys3RWZUaGRsbmxuRFE9IiwxOTUzOiJzaGEyNTYtOGYydU5zaVNLK0czSFVDYlNWenA0dHQ2NUFLOUkwUURJdzZGeFl4SzNrMD0iLDE5NTQ6InNoYTI1Ni0zWEgxamJJREVqSS8rN2U0d3haTFIyQW51azhOcC9UVjBQbFpiR1REMlJjPSIsMTk1NToic2hhMjU2LTV6bStjalRDZFJ6b015bStzZWRmOTZQU2VOVGp6bnZpcjNraTdwOHdtdlU9IiwxOTU2OiJzaGEyNTYteUFUZkFCbWFGc2RuRUpCSzhoNG9pWXFiVTZmUHhzQW9ONEhub3hDUDhyTT0iLDE5NTc6InNoYTI1Ni1ra0hLTzZUeWFiUTVZTDJxR0VXR1FPdkFEbUEvV3R5Ynp6SW9FUTk3aXZFPSIsMTk1ODoic2hhMjU2LWt4N3VBYzVIQ1crald0QmtnUXFHOGw3KzhoTzdCVitiTnFJbVQ0SDZJVVE9IiwxOTU5OiJzaGEyNTYtNmlqY1N5MEI0eFQvemdxeXdJTUU2aXpVSHc3Q29YbWRsNVV1S3lzTlhyMD0iLDE5NjA6InNoYTI1Ni13ZHhCcVZXRlg0ekVCN25SaDBRVGt4RDZ5VFl6TFNVT0VEdmMxQnc2RHg0PSIsMTk2MToic2hhMjU2LTh4aUd3bTd6V3F4OE5pMXRrTXpuWHJQRVQ1S045NGFOZGdJZTNjME9BQ1E9IiwxOTYyOiJzaGEyNTYtT3Y3STc5Wi9CRldXTGVEQkNPOFdRdlhyZ283WjR5YWR6ODUyQjZmUzZJWT0iLDE5NjM6InNoYTI1Ni1vMDEzcXAvOVdNYSs2dDlSTTUxS01PTm96ckhDK01HUHpGb0pWbVo2ODFnPSIsMTk2NDoic2hhMjU2LXNIRGtIM3dPd1o3dkQ1T3Rwc2ZkbTRQZExwUWhTVDFSQW5mL3lLZjZnZXM9IiwxOTY1OiJzaGEyNTYtaTQycGtoSEJ2ZEVMWDZGb3VJTUJERG5KTUZZVnAxQlN0dU00Z0N2U0srST0iLDE5NjY6InNoYTI1Ni1HV1VGVkRybDhlclpuR0piL3E0MkkvNUhpQWI3QWhrR3QxOEFZaTdFMnNjPSIsMTk2Nzoic2hhMjU2LU5HUHR3dmc1MDhIMVFBeVNEWVlweVZyRHY1MDVVeitxSG5uMlZhTi9XTEk9IiwxOTY4OiJzaGEyNTYtajM0Nm1PTFZGYlNPZ1dBeXlnSmhwV2hPaDNmTFMrVXBMT3d2RitZOWQwMD0iLDE5Njk6InNoYTI1Ni11T3FPcFZSVHp4YWdwRTBpMkdPYklEcThZcVR4bWd3TCsvd0JuQndGQUJzPSIsMTk3MDoic2hhMjU2LTlFT0dhcnR5YlNEV3Z1Q0NVMjJwUHFtVlc5UXVsWXQvTjZMbUc5UnlFQ0E9IiwxOTcxOiJzaGEyNTYtUFlsS3Y0ckVLaHlJK1lHU2NUUHVsY2owNnVPQjJuNFV4VU9LZGEwbW9QMD0iLDE5NzI6InNoYTI1Ni1iWWJRTnh2Y0lPNDZ5OWFzSE0zTDZSWGhFUk1MWXMzWStnR1RBdlYxTks4PSIsMTk3Mzoic2hhMjU2LXFGSDZXZEs2MGgwZ0ZtWGRPcXhoT1ZBN0xlQjNMWTJUcGV5SE1NYVZDZGM9IiwxOTc0OiJzaGEyNTYtVDdRblh6aGphbHBQVkN1Rnh0c2NCdmZrM05NVkJXQW9qRnRqL09YdXRYUT0iLDE5NzU6InNoYTI1Ni1vS0ZqMisrS0kyZzluU3p5emFmTEFBN2ZVYjdFRzdib25sUWM1d2VFeS9RPSIsMTk3Njoic2hhMjU2LWVDNXNROTVWbDY0cGxQQjgxTlJxYk5TUXhUUlduNzNhSm5xTjZxMkVWeU09IiwxOTc3OiJzaGEyNTYtTi9XUEdUeDN4TmkrK0RYN2hEbXdGRE02cUtkTDB0QVhZc2VHZVU2ZGdMYz0iLDE5Nzg6InNoYTI1Ni1jVzl5VHR1UUUxUVY0RTZkc0xOODlzL1FndW1ZWXJaWnpTUCs0T3NQVWZBPSIsMTk3OToic2hhMjU2LXlVWXVwUDNxd2NHZUp6MEpQRnB0Rlo3b1NwWmhVa2Q5aU1tOEluOXJ3T2M9IiwxOTgwOiJzaGEyNTYtdHQ3NlhPRzBzTFFDdHlRcUpFeHRnL3hSSitpSVZ4YlZPd01JZDdHQ2lQaz0iLDE5ODE6InNoYTI1Ni1sbVozOUkzTzZ1NHdBcVliMWdvajB4c2Jnc0gzU1dVRWZCVm9VTUZaSmUwPSIsMTk4Mjoic2hhMjU2LVNLa2JSZTh5WTZLcVNJd25sUXZnR3Z0SDZndDVtdk4wZVZvRDVVRGE3aUk9IiwxOTgzOiJzaGEyNTYtZFdyVHhwWWZoQ3kzcEJiZXRFVlBuRUs5dmJ4MU5JZk1hcUNRMEllUy9iRT0iLDE5ODQ6InNoYTI1Ni1qQmtNam5QNUtPTHhiS0hCNno5WE9DQUxUMHVxRTZUbnFuQkc1dk5jTWdjPSIsMTk4NToic2hhMjU2LWNiQlZSNzFLd2grczYrUjEzakt1NkREUFRBdTFOdUVmL2dUYlE5Ukl1Q2c9IiwxOTg2OiJzaGEyNTYtOWQ1QytTc3pxckRscWZUSUNkMy96Vk9PYTRtQVE0Q0NESGo4SWNSQktiWT0iLDE5ODc6InNoYTI1Ni1MS3dKbVNQZURLZUV0ME8zUUgwVzg0NDcwc2hsMGFicVdJclNkN3FWVGYwPSIsMTk4ODoic2hhMjU2LWt6Z0Nva2FFb2RZcGNlejY3U2FTVjBxZDhYd2VyUjZxTHl3L2g1NmdnNVU9IiwxOTg5OiJzaGEyNTYtMGxHbXRBN3gvUGUxQlRMMk5zaDRnYlNjSDAxbTJnWjd3RFFKVVR4TFF2MD0ifSx1LmU9ZnVuY3Rpb24oZSl7dmFyIHQ9W107IkFHMDgiIT09KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIm1ldGFbbmFtZT0nZW52aXJvbm1lbnQnXSIpJiZkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJtZXRhW25hbWU9J2Vudmlyb25tZW50J10iKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnQiKSkmJiJBRzA5IiE9PShkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJtZXRhW25hbWU9J2Vudmlyb25tZW50J10iKSYmZG9jdW1lbnQucXVlcnlTZWxlY3RvcigibWV0YVtuYW1lPSdlbnZpcm9ubWVudCddIikuZ2V0QXR0cmlidXRlKCJjb250ZW50IikpJiZyW2VdJiZ0LnB1c2goc2VsZi5fbG9jU3RyaW5ncy5hZGRMb2NzdHJpbmdBc3NldCgiLi4vcmVzb3VyY2VzL2xvY2FsZS9bbG9jYWxlXS9vd2EuW25hbWVdLmpzb24iLnJlcGxhY2UoL1xbbmFtZVxdL2cscltlXSkpKTt2YXIgbj1vW2VdO2lmKDAhPT1uKWlmKG4pdC5wdXNoKG5bMl0pO2Vsc2V7dmFyIGE9bmV3IFByb21pc2UoKGZ1bmN0aW9uKHQsYSl7bj1vW2VdPVt0LGFdfSkpO3QucHVzaChuWzJdPWEpO3ZhciBzLGM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7Yy5jaGFyc2V0PSJ1dGYtOCIsYy50aW1lb3V0PTEyMCx1Lm5jJiZjLnNldEF0dHJpYnV0ZSgibm9uY2UiLHUubmMpLGMuc3JjPWkoZSksMCE9PWMuc3JjLmluZGV4T2Yod2luZG93LmxvY2F0aW9uLm9yaWdpbisiLyIpJiYoYy5jcm9zc09yaWdpbj0iYW5vbnltb3VzIik7dmFyIGg9bmV3IEVycm9yO3M9ZnVuY3Rpb24odCl7Yy5vbmVycm9yPWMub25sb2FkPW51bGwsY2xlYXJUaW1lb3V0KGwpO3ZhciBuPW9bZV07aWYoMCE9PW4pe2lmKG4pe3ZhciBhPXQmJigibG9hZCI9PT10LnR5cGU/Im1pc3NpbmciOnQudHlwZSkscz10JiZ0LnRhcmdldCYmdC50YXJnZXQuc3JjO2gubWVzc2FnZT0iTG9hZGluZyBjaHVuayAiK2UrIiBmYWlsZWQuXG4oIithKyI6ICIrcysiKSIsaC5uYW1lPSJDaHVua0xvYWRFcnJvciIsaC50eXBlPWEsaC5yZXF1ZXN0PXMsblsxXShoKX1vW2VdPXZvaWQgMH19O3ZhciBsPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7cyh7dHlwZToidGltZW91dCIsdGFyZ2V0OmN9KX0pLDEyZTQpO2Mub25lcnJvcj1jLm9ubG9hZD1zLGMuaW50ZWdyaXR5PXUuc3JpSGFzaGVzW2VdLGMuY3Jvc3NPcmlnaW49ImFub255bW91cyIsZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjKX1yZXR1cm4gUHJvbWlzZS5hbGwodCl9LHUubT1lLHUuYz1uLHUuZD1mdW5jdGlvbihlLHQsbil7dS5vKGUsdCl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2VudW1lcmFibGU6ITAsZ2V0Om59KX0sdS5yPWZ1bmN0aW9uKGUpeyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LHUudD1mdW5jdGlvbihlLHQpe2lmKDEmdCYmKGU9dShlKSksOCZ0KXJldHVybiBlO2lmKDQmdCYmIm9iamVjdCI9PXR5cGVvZiBlJiZlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7dmFyIG49T2JqZWN0LmNyZWF0ZShudWxsKTtpZih1LnIobiksT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLHZhbHVlOmV9KSwyJnQmJiJzdHJpbmciIT10eXBlb2YgZSlmb3IodmFyIGEgaW4gZSl1LmQobixhLGZ1bmN0aW9uKHQpe3JldHVybiBlW3RdfS5iaW5kKG51bGwsYSkpO3JldHVybiBufSx1Lm49ZnVuY3Rpb24oZSl7dmFyIHQ9ZSYmZS5fX2VzTW9kdWxlP2Z1bmN0aW9uKCl7cmV0dXJuIGUuZGVmYXVsdH06ZnVuY3Rpb24oKXtyZXR1cm4gZX07cmV0dXJuIHUuZCh0LCJhIix0KSx0fSx1Lm89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsdCl9LHUucD0iIix1Lm9lPWZ1bmN0aW9uKGUpe3Rocm93IGV9LCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuYm9vdHN0cmFwT3B0aW9ucyYmd2luZG93LmJvb3RzdHJhcE9wdGlvbnMuc2NyaXB0QmFzZVVybCYmKHUucD13aW5kb3cuYm9vdHN0cmFwT3B0aW9ucy5zY3JpcHRCYXNlVXJsKTt2YXIgYz13aW5kb3cuJHdqPXdpbmRvdy4kd2p8fFtdLGg9Yy5wdXNoLmJpbmQoYyk7Yy5wdXNoPXQsYz1jLnNsaWNlKCk7Zm9yKHZhciBsPTA7bDxjLmxlbmd0aDtsKyspdChjW2xdKTt2YXIgZD1oO3JldHVybiB1KHUucz0xMzk2KX0oezEwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTtjb25zdCBhPXtiYXNlVXJsOiIvb3dhIixpc0ZlYXR1cmVFbmFibGVkOigpPT4hMSx0aW1lb3V0TVM6OWU0LGRpc2FibGVBbGxSZXF1ZXN0czohMX07bGV0IHM9YTtmdW5jdGlvbiByKGUpe3M9T2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LHMpLGUpfWZ1bmN0aW9uIG8oKXtyZXR1cm4gc319LDEwMDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiaCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksbi5kKHQsIm0iLChmdW5jdGlvbigpe3JldHVybiB1fSkpLG4uZCh0LCJuIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksbi5kKHQsImUiLChmdW5jdGlvbigpe3JldHVybiBsfSkpLG4uZCh0LCJnIiwoZnVuY3Rpb24oKXtyZXR1cm4gZH0pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZ9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiBwfSkpLG4uZCh0LCJqIiwoZnVuY3Rpb24oKXtyZXR1cm4gYn0pKSxuLmQodCwibCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGd9KSksbi5kKHQsImsiLChmdW5jdGlvbigpe3JldHVybiBtfSkpLG4uZCh0LCJvIiwoZnVuY3Rpb24oKXtyZXR1cm4gdn0pKSxuLmQodCwiaSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHd9KSk7dmFyIGE9big0KSxzPW4oOTMpO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcy5hfSkpO2NvbnN0IHI9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSg1KSxuLmUoNzUxKV0pLnRoZW4obi5iaW5kKG51bGwsMzkyKSkpLG89bmV3IGEuYShyLGU9PmUuZ2V0QXV0aFRva2VuRnJvbU1ldGFPc0h1YiksaT1uZXcgYS5hKHIsZT0+ZS5nZXRPd2FBdXRoVG9rZW5Gcm9tTWV0YU9zSHViKSx1PW5ldyBhLmEocixlPT5lLm9wZW5DYWxlbmRhckl0ZW0pLGM9KG5ldyBhLmEocixlPT5lLmNvbXBvc2VNZWV0aW5nKSxuZXcgYS5hKHIsZT0+ZS5vcGVuTWFpbEl0ZW0pKSxoPW5ldyBhLmEocixlPT5lLmNvbXBvc2VNYWlsKSxsPW5ldyBhLmEocixlPT5lLmV4ZWN1dGVEZWVwTGluayksZD1uZXcgYS5hKHIsZT0+ZS5nZXRDb250ZXh0KSxmPW5ldyBhLmEocixlPT5lLmNoZWNrQ2FsZW5kYXJDYXBhYmlsaXR5KSxwPW5ldyBhLmEocixlPT5lLmNoZWNrTWFpbENhcGFiaWxpdHkpLGI9bmV3IGEuYShyLGU9PmUuaXNEYXJrVGhlbWUpLGc9KG5ldyBhLmEocixlPT5lLnJlZ2lzdGVySGFuZGxlcnMpLG5ldyBhLmEocixlPT5lLmpvaW5UZWFtc01lZXRpbmcpLG5ldyBhLmEocixlPT5lLm1vZGFsT3BlbmVkKSxuZXcgYS5hKHIsZT0+ZS5zdWJtaXRUYXNrKSxuZXcgYS5hKHIsZT0+ZS5ub3RpZnlTdWNjZXNzKSksbT1uZXcgYS5hKHIsZT0+ZS5ub3RpZnlBcHBMb2FkZWQpLHY9bmV3IGEuYShyLGU9PmUucmVnaXN0ZXJJc0RhcmtUaGVtZU9uQ2hhbmdlSGFuZGxlciksdz1uZXcgYS5hKHIsZT0+ZS5pbml0aWFsaXplTWV0YU9zQ2FwYWJpbGl0aWVzKX0sMTAzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBjfSkpO3ZhciBhPW4oMikscz1uKDEzKSxyPW4oMTA0KSxvPW4oOTkpLGk9big1MSksdT1uKDUpO2Z1bmN0aW9uIGMoZSx0KXtjb25zdCBuPU9iamVjdChvLmEpKCksYz1PYmplY3Qoby5iKSgpLGg9e0FwcE5hbWU6T2JqZWN0KGEubSkoKSxVc2VyQWdlbnQ6d2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQsRXhwbGljaXRMb2dvbjpPYmplY3Qoci5hKSh3aW5kb3cpLFB1aWQ6T2JqZWN0KGkuYykoKSxUZW5hbnRHdWlkOk9iamVjdChpLmQpKCksTUJYR3VpZDpPYmplY3QoaS5hKSgpLElzUHJlbWl1bTpPYmplY3QoaS5iKSgpLENsaWVudElkOk9iamVjdChhLnQpKCksUmVmVXJsOk9iamVjdChhLkopKCksQ2xpZW50VmVyc2lvbjpPYmplY3QoYS51KSgpLEJFU2VydmVyOihudWxsPT10P3ZvaWQgMDp0LmViZSl8fE9iamVjdChhLm4pKCksRkVTZXJ2ZXI6KG51bGw9PXQ/dm9pZCAwOnQuZWZlKXx8T2JqZWN0KGEueikoKSxUaHJvdWdoRWRnZTpPYmplY3QoYS5PKSgpLFNlcnZpY2VWZXJzaW9uOk9iamVjdChhLk0pKCksRGFnOk9iamVjdChhLncpKCksRm9yZXN0Ok9iamVjdChhLnkpKCksRGVwbG95UmluZzpPYmplY3QoYS5FKSgpLCJTZXNzaW9uLklkIjpPYmplY3QoYS5OKSgpLFBoeXNpY2FsUmluZzpPYmplY3Qocy5nKSgpLFZhcmlhbnRFbnY6T2JqZWN0KHMuaCkoKSxCcm93c2VyTmFtZTpuLmJyb3dzZXIsSG9zdDpPYmplY3QoYS5CKSgpLEJyb3dzZXJWZXJzaW9uOm4uYnJvd3NlclZlcnNpb24udG9TdHJpbmcoKSxPc05hbWU6Yy5vcyxPc1ZlcnNpb246Yy5vc1ZlcnNpb24sUmV0cnlTdHJhdGVneTpPYmplY3QodS5jKSgiYk8iKSxJc0NvbnN1bWVyOk9iamVjdChpLmUpKCksTGF5b3V0Ok9iamVjdChhLkQpKCl9O3JldHVybiB0JiYoaC5FcnJvclR5cGU9dC5ldCxoLkVycm9yU291cmNlPXQuZXNyYyxoLkVycm9yPXQuZXJyLGguRXh0cmFFcnJvckluZm89T2JqZWN0KGEuVSkodC5lc3RhY2spLGguU3RhdHVzQ29kZT10LnN0LGguUmVxdWVzdElkPXQucmVxaWQpLHtuYW1lOmUscHJvcGVydGllczpofX19LDEwNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKTtjb25zdCBhPS9cL1thLXowLTkuXyUrLV0rQFthLXowLTkuLV0rXC5bYS16XXsyLH1cLy87ZnVuY3Rpb24gcyhlKXt2YXIgdDtyZXR1cm4hIShudWxsPT09KHQ9bnVsbD09ZT92b2lkIDA6ZS5sb2NhdGlvbil8fHZvaWQgMD09PXQ/dm9pZCAwOnQuaHJlZikmJmEudGVzdChlLmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKSl9fSwxMDU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7dmFyIGE9bigxMDQpLHM9big0NCk7Y29uc3Qgcj17MDoibmV0d29yayIsNDAxOiJhdXRoIiw0NDA6ImF1dGgifSxvPVsiRXhwaXJlZEJ1aWxkIiwiUG9pc29uZWRCdWlsZCJdLGk9WyJPd2FJbnZhbGlkVGltZXpvbmVFeGNlcHRpb24iLCJPd2FJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uIiwiT3dhSW52YWxpZFVzZXJMYW5ndWFnZUV4Y2VwdGlvbiJdLHU9WyJBY2Nlc3NEZW5pZWRFeGNlcHRpb24iLCJNYWlsYm94VW5hdmFpbGFibGVFeGNlcHRpb24iLCJPd2FFeHBsaWNpdExvZ29uRXhjZXB0aW9uIiwiT3dhQURPYmplY3ROb3RGb3VuZEV4Y2VwdGlvbiJdO2Z1bmN0aW9uIGMoZSx0LG4pe2NvbnN0IGM9dC5lcnI7aWYoT2JqZWN0KHMuZikoaSxjKSlyZXR1cm4ibGFuZ3R6IjtpZihPYmplY3Qocy5nKShjKSlyZXR1cm4idGhyb3R0bGUiO2lmKE9iamVjdChzLmEpKGMpKXJldHVybiJjb25maWd1cmF0aW9uIjtpZihPYmplY3Qocy5jKShjKXx8ZSYmT2JqZWN0KHMuZSkoZS5zdGFjayl8fHdpbmRvdy5vd2FCYWNrZmlsbGVkRXJyb3JzJiZ3aW5kb3cub3dhQmFja2ZpbGxlZEVycm9ycy5maWx0ZXIoZT0+T2JqZWN0KHMuYykoZVswXSkpLmxlbmd0aD4wKXJldHVybiJtZW1vcnkiO2lmKGUpe2NvbnN0IHQ9ZS5yZXNwb25zZTtpZigobnVsbD09dD92b2lkIDA6dC51cmwpJiZ0LnVybC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIi9hdXRoL2Vycm9yZmUuYXNweCIpPi0xKXJldHVybiJlcnJvcmZlIjtpZihlLnJlcXVlc3QpcmV0dXJuImNkbkVycm9yIn1jb25zdCBoPXQuZXNyYztpZihoJiZvLmluZGV4T2YoaCk+LTEpcmV0dXJuIGg7Y29uc3QgbD10LnN0O3JldHVybiJJbml0TG9jIj09aCYmMCE9bD8iZmFpbCI6T2JqZWN0KGEuYSkod2luZG93KSYmT2JqZWN0KHMuZikodSxjKT8iYWNjZXNzRGVuaWVkIjpPYmplY3Qocy5oKShjKXx8NTAzPT1sPyJ0cmFuc2llbnQiOk9iamVjdChzLmQpKGMsZSk/Im5ldHdvcmsiOnJbbF18fCJmYWlsIn19LDEwNjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gYX0pKTtjb25zdCBhPTFlNH0sMTA3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGE9big1KSxzPW4oMTA2KSxyPW4oMzkpLG89bigxMDMpLGk9bigyNyksdT1uKDE2OSksYz1uKDYyKSxoPW4oNjEpO2FzeW5jIGZ1bmN0aW9uIGwoKXt0cnl7bGV0IGU9YXdhaXQgT2JqZWN0KHUuYSkoKTtjb25zdCB0PWUuaGVhZGVycy5nZXQoIlgtT1dBLUVycm9yIik7aWYodCl0aHJvdyBuZXcgRXJyb3IodCk7aWYoZS5zdGF0dXM+PTQwMCl0aHJvdyBPYmplY3QoaC5hKShlKTthd2FpdCByLmEoZCgibGFuZ3Bvc3Rfc3VjY2VzcyIpKX1jYXRjaChlKXtjb25zdCB0PU9iamVjdChpLmEpKGUsIkxhbmdQb3N0Iix3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsZS5zdGF0dXMpO2F3YWl0IHIuYShkKCJsYW5ncG9zdF9lcnJvciIsT2JqZWN0KGMuYSkodCkpKX19ZnVuY3Rpb24gZChlLHQpe3JldHVybiBQcm9taXNlLnJlc29sdmUoW09iamVjdChvLmEpKGUsdCldKX12YXIgZj1uKDEwKTtmdW5jdGlvbiBwKGUsdCxuKXtjb25zdCByPU9iamVjdChhLmMpKCJiTyIpO2lmKHZvaWQgMCE9PXImJiI0IiE9PXIpcmV0dXJuIG51bGw7aWYobiYmIlN0YXJ0dXBEYXRhIj09dClyZXR1cm4gbnVsbDtzd2l0Y2goZSl7Y2FzZSJsYW5ndHoiOnJldHVybntzdHJhdGVneToiMSIsd2FpdEZvcjpsKCl9O2Nhc2UiYXV0aCI6cmV0dXJuIE9iamVjdChmLmEpKCkuZ2V0QXV0aFRva2VuJiYhbj97c3RyYXRlZ3k6IjEifTpudWxsO2Nhc2UidGhyb3R0bGUiOmNhc2UiZXJyb3JmZSI6Y2FzZSJhY2Nlc3NEZW5pZWQiOmNhc2UiY29uZmlndXJhdGlvbiI6cmV0dXJuIG51bGw7Y2FzZSJFeHBpcmVkQnVpbGQiOmNhc2UiUG9pc29uZWRCdWlsZCI6cmV0dXJuIjQiPT09cj9udWxsOntzdHJhdGVneToiNCJ9O2Nhc2UidHJhbnNpZW50IjpyZXR1cm57c3RyYXRlZ3k6IjEiLHRpbWVvdXQ6cy5hfTtkZWZhdWx0OnJldHVybntzdHJhdGVneToiSW5pdExvYyI9PXQ/IjIiOiIxIn19fW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKX0sMTE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtjbGFzcyBhe2dldCBsb2NhdGlvbigpe3JldHVybiB3aW5kb3cubG9jYXRpb259Z2V0IGlubmVySGVpZ2h0KCl7cmV0dXJuIHdpbmRvdy5pbm5lckhlaWdodH1nZXQgaW5uZXJXaWR0aCgpe3JldHVybiB3aW5kb3cuaW5uZXJXaWR0aH1nZXQgbWV0YXRhZ3MoKXtyZXR1cm4gQXJyYXkuZnJvbSh3aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIm1ldGEiKSl9Z2V0IGRvY3VtZW50KCl7cmV0dXJuIHdpbmRvdy5kb2N1bWVudH1nZXQgaXNQd2EoKXtyZXR1cm4gd2luZG93Lm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpIikubWF0Y2hlc31nZXQgY29va2llKCl7cmV0dXJuIHdpbmRvdy5kb2N1bWVudC5jb29raWV9Z2V0IGxvY2FsU3RvcmFnZSgpe3JldHVybiB3aW5kb3cubG9jYWxTdG9yYWdlfWdldCBvcmlnaW4oKXtyZXR1cm4gd2luZG93Lm9yaWdpbn19bGV0IHM7ZnVuY3Rpb24gcigpe3JldHVybiBzfHwidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8KHM9bmV3IGEpLHN9ZnVuY3Rpb24gbyhlKXtzPWV9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKX0sMTExOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBvfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKTt2YXIgYT1uKDkpO2NvbnN0IHM9IkxvZ2ljYWxSaW5nIjtsZXQgcjtmdW5jdGlvbiBvKGUpe3I9ZSxPYmplY3QoYS5lKShzZWxmLHMsZSl9ZnVuY3Rpb24gaSgpe3JldHVybiByfHwocj1PYmplY3QoYS5hKShzZWxmLHMpKSxyfX0sMTEzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bGV0IGE7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTtjb25zdCBzPVtdO2Z1bmN0aW9uIHIoZSx0LG4pe2E/YShlLHQsbik6cy5wdXNoKHtuYW1lOmUsY3VzdG9tRGF0YTp0fSl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gYT1lLHN9fSwxMTk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDk0KTtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuYX0pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuYn0pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuY30pKX0sMTIwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBhPW4oMTEpO2NvbnN0IHM9LyglWzAtOUEtWl17Mn0pKy9nO2Z1bmN0aW9uIHIoZSl7Y29uc3QgdD1PYmplY3QoYS5hKSgpLmNvb2tpZSxuPXQ/dC5zcGxpdCgiOyAiKTpbXTtmb3IobGV0IHQ9MDt0PG4ubGVuZ3RoO3QrKyl7Y29uc3QgYT1uW3RdLnNwbGl0KCI9Iik7aWYoYVswXS5yZXBsYWNlKHMsZGVjb2RlVVJJQ29tcG9uZW50KT09ZSl7bGV0IGU9YS5zbGljZSgxKS5qb2luKCI9Iik7cmV0dXJuJyInPT09ZS5jaGFyQXQoMCkmJihlPWUuc2xpY2UoMSwtMSkpLGUucmVwbGFjZShzLGRlY29kZVVSSUNvbXBvbmVudCl9fX19LDEyNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxmdW5jdGlvbihlKXtlW2UuTm90U2V0PTBdPSJOb3RTZXQiLGVbZS5EaXN0aW5ndWlzaGVkTmFtZT0xXT0iRGlzdGluZ3Vpc2hlZE5hbWUiLGVbZS5HZW5lcmljRGF0YT0yXT0iR2VuZXJpY0RhdGEiLGVbZS5JUFY0QWRkcmVzcz0zXT0iSVBWNEFkZHJlc3MiLGVbZS5JUHY2QWRkcmVzcz00XT0iSVB2NkFkZHJlc3MiLGVbZS5NYWlsU3ViamVjdD01XT0iTWFpbFN1YmplY3QiLGVbZS5QaG9uZU51bWJlcj02XT0iUGhvbmVOdW1iZXIiLGVbZS5RdWVyeVN0cmluZz03XT0iUXVlcnlTdHJpbmciLGVbZS5TaXBBZGRyZXNzPThdPSJTaXBBZGRyZXNzIixlW2UuU210cEFkZHJlc3M9OV09IlNtdHBBZGRyZXNzIixlW2UuSWRlbnRpdHk9MTBdPSJJZGVudGl0eSIsZVtlLlVyaT0xMV09IlVyaSIsZVtlLkZxZG49MTJdPSJGcWRuIixlW2UuSVBWNEFkZHJlc3NMZWdhY3k9MTNdPSJJUFY0QWRkcmVzc0xlZ2FjeSJ9KHQuQVdUUGlpS2luZHx8KHQuQVdUUGlpS2luZD17fSkpfSwxMzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGEoZSl7bGV0IHQ9dm9pZCAwO2NvbnN0IG49cygpO2ZvcihsZXQgYT0wO2E8bi5sZW5ndGg7YSsrKWlmKG5bYV0ubmFtZT09ZSl7dD1uW2FdLmNvbnRlbnQ7YnJlYWt9cmV0dXJuIHR9ZnVuY3Rpb24gcygpe3ZhciBlO3JldHVybiBudWxsIT09KGU9bnVsbD09cj92b2lkIDA6cigpKSYmdm9pZCAwIT09ZT9lOkFycmF5LmZyb20od2luZG93LmRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJtZXRhIikpfWxldCByPXZvaWQgMDtmdW5jdGlvbiBvKGUpe3I9ZX1jb25zdCBpPVsiVW5rbm93biIsIldXIiwiRG9nZm9vZCIsIlNJUCIsIkJsYWNrRm9yZXN0IiwiRE9OTVQiLCJNU0lUIiwiR2FsbGF0aW4iLCJTREZWMiIsIlBEVCIsIlRERiIsIklUQVIiXSx1PVsiVW5rbm93biIsIkFHMDgiLCJBRzA5IiwiQmxhY2tGb3Jlc3QiLCJESVRBUiIsIkRvRCIsIkRvZ2Zvb2QiLCJHYWxsYXRpbiIsIkdDQ01vZGVyYXRlIiwiR2NjSGlnaCIsIkdvdkNsb3VkIiwiSVRBUiIsIlByb2QiXTtmdW5jdGlvbiBjKCl7Y29uc3QgZT0oYSgicGh5c2ljYWxSaW5nIil8fCIiKS50b0xvd2VyQ2FzZSgpO3JldHVybiBpLmZpbHRlcih0PT50LnRvTG93ZXJDYXNlKCk9PT1lKVswXXx8IlVua25vd24ifWZ1bmN0aW9uIGgoKXtjb25zdCBlPShhKCJlbnZpcm9ubWVudCIpfHwiIikudG9Mb3dlckNhc2UoKTtyZXR1cm4gdS5maWx0ZXIodD0+dC50b0xvd2VyQ2FzZSgpPT09ZSlbMF18fCJVbmtub3duIn1sZXQgbCxkO2Z1bmN0aW9uIGYoKXtpZih2b2lkIDA9PT1sKXtjb25zdCBlPWMoKTtsPSJEb2dmb29kIj09ZXx8IlNERlYyIj09ZXx8IkRvZ2Zvb2QiPT1oKCl9cmV0dXJuIGx9ZnVuY3Rpb24gcCgpe2NvbnN0IGU9aCgpO3JldHVybiJBRzA4Ij09ZXx8IkFHMDkiPT1lfWZ1bmN0aW9uIGIoZSl7cmV0dXJuIGcoKS5pbmRleE9mKGUpPi0xfWZ1bmN0aW9uIGcoKXtpZighZCl7Y29uc3QgZT1hKCJib290RmxpZ2h0cyIpO2Q9ZT9lLnNwbGl0KCIsIik6W119cmV0dXJuIGR9ZnVuY3Rpb24gbShlPSIiKXtpZihlJiZlLmluZGV4T2YoIi8iKT4tMSlyZXR1cm4gZSt2fWNvbnN0IHY9IkNvbGxlY3Rvci8zLjAvIjtmdW5jdGlvbiB3KCl7cmV0dXJuIG0oYSgiYXJpYVVybCIpKX1mdW5jdGlvbiBPKCl7cmV0dXJuIG0oYSgiY29tcGFjdEFyaWFVcmwiKSl9bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBhfSkpLG4uZCh0LCJsIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiZiIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSksbi5kKHQsImciLChmdW5jdGlvbigpe3JldHVybiBjfSkpLG4uZCh0LCJqIiwoZnVuY3Rpb24oKXtyZXR1cm4gZn0pKSxuLmQodCwiayIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB9KSksbi5kKHQsImgiLChmdW5jdGlvbigpe3JldHVybiBofSkpLG4uZCh0LCJpIiwoZnVuY3Rpb24oKXtyZXR1cm4gYn0pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGd9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiB2fSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gd30pKSxuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIE99KSl9LDEzMjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBhPW4oMik7Y29uc3Qgcz17c2hvd093YUJyYW5kaW5nOntkZWZhdWx0OiEwLG5hdGl2ZTohMX0saW5jbHVkZVBhcnRuZXJJbjNTUmVxdWVzdDp7ZGVmYXVsdDohMX0sbG9hZFRoZW1lRnJvbUhvc3RBcHA6e2RlZmF1bHQ6ITEsb3B4OiEwfSxsb2FkQ3VsdHVyZUZyb21Ib3N0QXBwOntkZWZhdWx0OiExLG9weDohMH0sb3B4RGVlcGxpbms6e2RlZmF1bHQ6ITEsb3B4OiEwfSxhdXRoUmVkaXJlY3RPblNlc3Npb25UaW1lb3V0OntkZWZhdWx0OiEwLG5hdGl2ZTohMSxvcHg6ITF9LG9weENvbXBvbmVudExpZmVjeWNsZTp7ZGVmYXVsdDohMSxuYXRpdmU6ITEsb3B4OiEwfSxvcHhTZXJ2aWNlV29ya2VyOntkZWZhdWx0OiExLG9weDohMH0scm91dGVPcHRpb25zU3RhdGljVXJsOntkZWZhdWx0OiExLG9weDohMH0sc2NlbmFyaW9EYXRhOntkZWZhdWx0OiExLG9weDohMH0sbWFjQTExeTp7ZGVmYXVsdDohMSxtYWNvdXRsb29rOiEwfSxqb2luVGVhbXNNZWV0aW5nSGFuZGxlcjp7ZGVmYXVsdDohMSxodWI6ITAsb3B4OiEwfSx1c2UzU1Blb3BsZVN1Z2dlc3Rpb25zOntkZWZhdWx0OiEwLG1hY291dGxvb2s6ITF9LGRlZmF1bHRDYWxlbmRhckNvbG9yOntkZWZhdWx0OiExLG9weDohMH0scm9vbUFkZGVkSGFuZGxlcjp7ZGVmYXVsdDohMSxvcHg6ITB9LHJvb21GaW5kZXJGcmVlQnVzeVN0eWxlczp7ZGVmYXVsdDohMSxtYWNvdXRsb29rOiEwLG91dGxvb2tkZXNrdG9wOiEwfSxkZWZhdWx0U2VsZWN0Q2FsZW5kYXJJdGVtU3ZnOntkZWZhdWx0OiEwLG9weDohMX0sb3B4SW5ib3hSdWxlczp7ZGVmYXVsdDohMSxvcHg6ITB9LG1vZHVsZU5hbWVGcm9tV2luZG93OntkZWZhdWx0OiEwLG9weDohMX0sc2hvd0FyY2hpdmVVbnJlYWRDb3VudDp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LHJpYmJvbkZlZWRiYWNrOntkZWZhdWx0OiExLGh1YjohMH0sY29tcG9zZUZyb206e2RlZmF1bHQ6ITEsb3B4OiEwfSxncm91cERpc2NvdmVyQ2xvc2VCdXR0b246e2RlZmF1bHQ6ITEsb3B4OiEwfSx1cGRhdGVNb2RhbFByb3BzOntkZWZhdWx0OiExLG9weDohMH0sbW9kYWxPcGVuZWRIYW5kbGVyOntkZWZhdWx0OiExLG9weDohMH0sZGVmYXVsdE91dGxvb2tUaGVtZUNvbG9yOntkZWZhdWx0OiEwLG9weDohMX0seWFtbWVyRGFpbHlEaWdlc3Q6e2RlZmF1bHQ6ITEsb3V0bG9va2Rlc2t0b3A6ITB9LHlhbW1lckRpcmVjdEZvbGxvd2VyOntkZWZhdWx0OiExLG91dGxvb2tkZXNrdG9wOiEwfSx5YW1tZXJEaXNjb3Zlcnk6e2RlZmF1bHQ6ITEsb3V0bG9va2Rlc2t0b3A6ITB9LHlhbW1lckhvc3RDbGllbnRUeXBlOntkZWZhdWx0OiExLG5hdGl2ZTohMCxvcHg6ITB9LGxpbmtDbGlja2VkOntkZWZhdWx0OiExLG91dGxvb2tkZXNrdG9wOiEwfSxzaG93TWluaW11bVRocmVlSW5zaWdodHM6e2RlZmF1bHQ6ITEsb3B4OiEwfSxncm91cENyZWF0ZWRIYW5kbGVyOntkZWZhdWx0OiExLG9weDohMH0sZ3JvdXBEZWxldGVkSGFuZGxlcjp7ZGVmYXVsdDohMSxvcHg6ITB9LHVwZGF0ZVNlYXJjaEFuc3dlck9uUXVlcnlDaGFuZ2U6e2RlZmF1bHQ6ITEsb3B4OiEwfSxpbnNpZ2h0c0NvdW50VXBkYXRlZEhhbmRsZXI6e2RlZmF1bHQ6ITEsb3B4OiEwfSxwcm9jZXNzTWVldGluZ0luc2lnaHRzSGFuZGxlcjp7ZGVmYXVsdDohMSxvcHg6ITB9LHByb2Nlc3NFbXB0eVlhbW1lclB1Ymxpc2hlcnNIYW5kbGVyOntkZWZhdWx0OiExLG9weDohMH0sZm9jdXNab25lQ2ljdWxhck5hdmlnYXRpb246e2RlZmF1bHQ6ITEsb3B4OiEwfSxjb21wb25lbnRUb2tlblByb3ZpZGVyOntkZWZhdWx0OiExLG9weDohMCxuYXRpdmU6ITAsaHViOiEwfSxoaWRlQ2FsZW5kYXJMZWZ0TmF2OntkZWZhdWx0OiExLHRlYW1zaHViOiEwfSxoaWRlQXBwU3VpdGVIZWFkZXI6e2RlZmF1bHQ6ITEsaHViOiEwfSxtZXRhT1NUZXN0OntkZWZhdWx0OiExLGh1YjohMH0saGlkZU9mZmljZVJhaWw6e2RlZmF1bHQ6ITEsaHViOiEwfSxvcGVuTWFpbEluSHViOntkZWZhdWx0OiExLHdpbjMyb3V0bG9va2h1YjohMH0sb3BlbkNvbXBvc2VNYWlsSW5IdWI6e2RlZmF1bHQ6ITEsd2luMzJvdXRsb29raHViOiEwfSxzZXR0aW5nczp7ZGVmYXVsdDohMCxvcHg6ITEsaHViOiExfSxtdWx0aUFjY291bnRzOntkZWZhdWx0OiEwLHRlYW1zOiExLG91dGxvb2tkZXNrdG9wOiExLHdpZGdldDohMSxuYXRpdmU6ITEsaHViOiExfSxuYXRpdmVEaWFnbm9zdGljczp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG5hdGl2ZVFzcDp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG1vZHVsZVN3aXRjaDp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LGRpYWdJbkFwcFN1cHBvcnQ6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxkaWFnRmVlZGJhY2tKczp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LGRpYWdGZWVkYmFja0VtYWlsR3JvdXA6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxkaWFnRmVlZGJhY2tOb0F0dGFjaFNSOntkZWZhdWx0OiExLG5hdGl2ZTohMH0sZGlhZ0ZlYXR1cmVDcmV3OntkZWZhdWx0OiExLG5hdGl2ZTohMH0sZGlhZ1Rocm90dGxlRmVlZGJhY2tFbWFpbDp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LGRpYWdUb2dnbGVGZWVkYmFjazp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG5ld091dGxvb2tUb2dnbGU6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxtb25hcmNoRXJyb3JNZXNzYWdlOntkZWZhdWx0OiExLG5hdGl2ZTohMH0sbm90ZUZlZWRTaWRlUGFuZWw6e2RlZmF1bHQ6ITAsbmF0aXZlOiExfSx3aGF0c05ldzp7ZGVmYXVsdDohMCxuYXRpdmU6ITF9LG93YUJyYW5kaW5nQ2hhcm06e2RlZmF1bHQ6ITAsbmF0aXZlOiExfSxhcHBMYXVuY2hlcjp7ZGVmYXVsdDohMCxuYXRpdmU6ITF9LGluY29ycmVjdE5hdGl2ZUVudHJ5UG9pbnQ6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxtZXRhT1NGZWVkYmFjazp7ZGVmYXVsdDohMSxodWI6ITB9LG1vbmFyY2hGZWVkYmFjazp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG5hdGl2ZTp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG1hbmFnZWRRdWVyeUxpbms6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSx3cm9uZ0luZGV4OntkZWZhdWx0OiExLG5hdGl2ZTohMH0sb3V0bG9va1N1aXRlSGVhZGVyU3RyYXRlZ3k6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxwYXVzZUluYm94OntkZWZhdWx0OiEwLG5hdGl2ZTohMX0sbmF0aXZlU2VydmljZVdvcmtlcjp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG5hdGl2ZUhvc3RBdHRhY2htZW50SGlqYWNrOntkZWZhdWx0OiExLG5hdGl2ZTohMH0sdXNlTmF0aXZlQ29udmVyc2F0aW9uT3B0aW9uczp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LHJlYm9vdDp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LGNhbGVuZGFyRm9sZGVyc0Zyb21TZXNzaW9uRGF0YTp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LHNraXBBd2FpdExwY0NvbmZpZzp7ZGVmYXVsdDohMSxvcHg6ITB9LHdvcmtsb2FkU2NlbmFyaW9TZXR0aW5nczp7ZGVmYXVsdDohMCxvcHg6ITF9LHJpYmJvbkRlZmF1bHRUb1NMUjp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LHJpYmJvblBlcnNpc3REZWZhdWx0OntkZWZhdWx0OiExLG5hdGl2ZTohMH0sdXBkYXRlSG9zdEFwcEljb246e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxwcm9qZWN0aW9uQ3VzdG9tVGl0bGViYXI6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSx0b0RvTmV3VGFiOntkZWZhdWx0OiExLG5hdGl2ZTohMH0sZmxvb2RnYXRlOntkZWZhdWx0OiEwLG9weDohMX0sbWVDb250cm9sQWNjb3VudFN3aXRjaGluZzp7ZGVmYXVsdDohMCxuYXRpdmU6ITF9LHNtaW1lRXh0ZW5zaW9uOntkZWZhdWx0OiEwLG5hdGl2ZTohMX0scGxhdGZvcm1BcHBTZGs6e2RlZmF1bHQ6ITEsaHViOiEwfSxyZXNvdXJjZVRva2VuRnJvbUhvc3Q6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwLG9weDohMH0sdXNlQmFzZVRoZW1lOntkZWZhdWx0OiExLHdpbjMyb3V0bG9va2h1YjohMCxodWI6ITF9LGFjY3Rtb25hY2NvdW50czp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LHNob3dPV0FNYWlsdG9CYW5uZXI6e2RlZmF1bHQ6ITAsbmF0aXZlOiExfSxjb3B5TGlua1VzaW5nQ2xpcGJvYXJkQXBpOntkZWZhdWx0OiExLG5hdGl2ZTohMH0sZWRpdEluQnJvd3NlclJldXNlU2FtZVdpbmRvdzp7ZGVmYXVsdDohMCxuYXRpdmU6ITF9LG91dGxvb2tEZXNrdG9wVG9Nb25hcmNoUHJlZmVyZW5jZU1pZ3JhdGlvbjp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG5hdGl2ZU1lc3NhZ2luZzp7ZGVmYXVsdDohMSxuYXRpdmU6ITAsd2lkZ2V0OiEwfSxkaXNhYmxlQXBwTW9kdWxlS2V5czp7ZGVmYXVsdDohMSxodWI6ITB9LG5hdGl2ZVJlYWN0aW9uczp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LHByb21wdFJlYm9vdE5hdGl2ZUhvc3Q6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfSxvcGVuRXZlbnRzSW5OZXdXaW5kb3c6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwLHdpbjMyb3V0bG9va2h1YjohMH0sbmF0aXZlRnJpZW5kbHlLZXlib2FyZGluZzp7ZGVmYXVsdDohMSxuYXRpdmU6ITAsd2luMzJvdXRsb29raHViOiEwfSxhbHRGb3JLZXl0aXBzOntkZWZhdWx0OiExLG5hdGl2ZTohMCx3aW4zMm91dGxvb2todWI6ITB9LG1zYWxUb2tlbkZldGNoOntkZWZhdWx0OiEwLG5hdGl2ZTohMSx0ZWFtczohMSxvcHg6ITEsaHViOiExfSxvdXRsb29rTnBzRGlhbG9nTW9uYXJjaDp7ZGVmYXVsdDohMSxuYXRpdmU6ITB9LG11bHRpcGxlQWNjb3VudFNpZ25hbFI6e2RlZmF1bHQ6ITEsbmF0aXZlOiEwfX07dmFyIHI9bigxMzYpLG89bigxNDYpO2NvbnN0IGk9ZT0+e2NvbnN0IHQ9KGU9PnNbZV0pKGUpO2lmKHQpe2lmKE9iamVjdChyLmEpKCkmJmEuZSBpbiB0KXJldHVybiB0W2EuZV07aWYoT2JqZWN0KG8uYikoKSYmYS5oIGluIHQpcmV0dXJuIHRbYS5oXTtsZXQgZT1PYmplY3QoYS5BKSgpO2lmKGUmJmUgaW4gdClyZXR1cm4gdFtlXTtpZihlJiYoZT09PWEuaXx8ZT09PWEuaykmJmEuYiBpbiB0KXJldHVybiB0W2EuYl07Y29uc3Qgbj1PYmplY3QoYS5GKSgpO3JldHVybiBuJiZuIGluIHQ/dFtuXTpuJiYobj09PWEuZ3x8bj09PWEuZHx8bj09PWEuY3x8bj09PWEuYXx8bj09PWEuaHx8bj09PWEuZnx8bj09PWEuaikmJiJvcHgiaW4gdD90Lm9weDp0LmRlZmF1bHR9cmV0dXJuITF9O24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKX0sMTM2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBhPW4oNSk7ZnVuY3Rpb24gcygpe3JldHVybiBPYmplY3QoYS5mKSgibmF0aXZlVmVyc2lvbiIpfX0sMTM5NjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oMTM5Nyl9LDEzOTc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCk7dmFyIGE9big2OTUpO09iamVjdChhLmEpKCl9LDE0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGE9big1KSxzPW4oMTMpO2xldCByLG89Im93YW1haWwvIjtmdW5jdGlvbiBpKCl7aWYoIXIpe2NvbnN0IGU9IjIiPT1PYmplY3QoYS5jKSgiYk8iKTtsZXQgdD11KCkrbyxuPXUoITApK287Y29uc3QgaT1PYmplY3Qocy5iKSgiYmFzZVVybCIpO09iamVjdChhLmEpKCkmJmkmJih0PW49aSkscj17UGFja2FnZUJhc2VVcmw6ZT9uOnQsRXh0cmFTZXR0aW5nczp7fSxCYWNrdXBCYXNlVXJsOmU/dDpuLFJlc291cmNlc1BhdGg6IiIsU2NyaXB0UGF0aDpPYmplY3QoYS5iKSgpPyIiOiJzY3JpcHRzLyJ9fXJldHVybiByfWZ1bmN0aW9uIHUoZSl7Y29uc3QgdD1PYmplY3Qocy5oKSgpO3N3aXRjaCh0KXtjYXNlIkFHMDgiOnJldHVybiIvL2Nkbi5ibG9iLmNvcmUuZWFnbGV4LmljLmdvdi8iO2Nhc2UiQUcwOSI6cmV0dXJuIi8vY2RuLmJsb2IuY29yZS5taWNyb3NvZnQuc2Nsb3VkLyI7ZGVmYXVsdDp7Y29uc3Qgbj1lPzI6MTtsZXQgYT0hMDtjb25zdCByPU9iamVjdChzLmIpKCJzY3JpcHRWZXIiKTtyJiYtMT09PXIuaW5kZXhPZigiLiIpJiYoYT0hMSk7Y29uc3Qgbz1hP2ByZXMtJHtufWA6YHJlcy0ke259LXNkZmA7cmV0dXJuIkdhbGxhdGluIj09dD9gLy9vdXRsb29rLSR7bn0uY2RuLnBhcnRuZXIub3V0bG9vay5jbi9gOmAvLyR7b30uY2RuLm9mZmljZS5uZXQvYH19fXZhciBjPW4oMTEpO2xldCBoLGwsZCxmO2Z1bmN0aW9uIHAoZSl7aHx8KGg9ZSl9ZnVuY3Rpb24gYihlKXtsPWUscChlKX1mdW5jdGlvbiBnKCl7cmV0dXJuIGx9ZnVuY3Rpb24gbSgpe3JldHVybiBDKCJzY3JpcHRWZXIiKX1mdW5jdGlvbiB2KCl7Y29uc3QgZT1DKCJjZG5VcmwiKTtyZXR1cm4gRShlKT9lOnUoKX1mdW5jdGlvbiB3KCl7Y29uc3QgZT1DKCJiYWNrdXBDZG5VcmwiKTtyZXR1cm4gRShlKT9lOnUoITApfWZ1bmN0aW9uIE8oKXtpZihkKXJldHVybiBkO2NvbnN0IGU9QygiY2RuVXJsIiksdD1DKCJjZG5Db250YWluZXIiKSxuPUMoImRldkNkblVybCIpO3JldHVybiBFKG4pP246RShlKSYmRSh0KT9lK3QrbSgpKyIvIjpTKGkoKS5QYWNrYWdlQmFzZVVybCl9ZnVuY3Rpb24geSgpe3JldHVybiBVKE8oKStqKCkpfWZ1bmN0aW9uIEEoKXtyZXR1cm4gVShgJHtPKCl9cmVzb3VyY2VzL2ApfWZ1bmN0aW9uIEkoKXtpZihkKXJldHVybiBkO2NvbnN0IGU9QygiYmFja3VwQ2RuVXJsIiksdD1DKCJjZG5Db250YWluZXIiKTtsZXQgbj1TKGkoKS5CYWNrdXBCYXNlVXJsKTtyZXR1cm4gRShlKSYmRSh0KSYmKG49ZSt0K20oKSsiLyIpLFUobikraigpfWZ1bmN0aW9uIEUoZSl7cmV0dXJuIGUmJmUuaW5kZXhPZigiLyIpPi0xfWZ1bmN0aW9uIGooKXtjb25zdCBlPUMoInNjcmlwdFBhdGgiKTtyZXR1cm4gRShlKT9lOmkoKS5TY3JpcHRQYXRofW4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gaH0pKSxuLmQodCwibCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB9KSksbi5kKHQsImsiLChmdW5jdGlvbigpe3JldHVybiBifSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gZ30pKSxuLmQodCwiZiIsKGZ1bmN0aW9uKCl7cmV0dXJuIG19KSksbi5kKHQsImUiLChmdW5jdGlvbigpe3JldHVybiB2fSkpLG4uZCh0LCJkIiwoZnVuY3Rpb24oKXtyZXR1cm4gd30pKSxuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIE99KSksbi5kKHQsImoiLChmdW5jdGlvbigpe3JldHVybiB5fSkpLG4uZCh0LCJoIiwoZnVuY3Rpb24oKXtyZXR1cm4gQX0pKSxuLmQodCwiaSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEl9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBVfSkpO2NvbnN0IFQ9KCk9Pnt2YXIgZTtyZXR1cm4gdm9pZCAwPT09ZiYmKGY9KG51bGw9PT0oZT1PYmplY3QoYy5hKSgpLmxvY2F0aW9uKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS5wcm90b2NvbCl8fCJodHRwczoiKSxmfSxrPW5ldyBSZWdFeHAoIl5odHRwcz86Iik7ZnVuY3Rpb24gVShlKXtyZXR1cm4gay50ZXN0KGUpfHwoZT1UKCkrZSksZX1mdW5jdGlvbiBDKGUpe3JldHVybiBPYmplY3Qocy5iKShlKXx8IiJ9ZnVuY3Rpb24gUyhlKXtyZXR1cm4gZSsoT2JqZWN0KGEuYSkoKT8iIjptKCkrIi8iKyhPYmplY3QoYS5mKSgiZGVidWdKcyIpPyJkZWJ1Zy8iOiIiKSl9fSwxNDI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDE1OCkscz1uKDEwKSxyPW4oMTQ0KSxvPW4oMik7Y29uc3QgaT04MjhlNSx1PTZlNCxjPSJiYWNrZ3JvdW5kYXV0aCI7bGV0IGg9bnVsbCxsPW51bGw7YXN5bmMgZnVuY3Rpb24gZCgpe251bGw9PWgmJihPYmplY3Qoby5SKSgpfHxudWxsIT1sJiZEYXRlLm5vdygpLWw8aXx8KGw9RGF0ZS5ub3coKSxoPXNlbGYuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksaC5zZXRBdHRyaWJ1dGUoImlkIixjKSxoLnN0eWxlLmRpc3BsYXk9Im5vbmUiLE9iamVjdChyLmEpKHt9KS50aGVuKGU9PnswPT1lLlJlc3VsdENvZGUmJm51bGwhPWUuQXV0aGVudGljYXRpb25VcmwmJiIiIT1lLkF1dGhlbnRpY2F0aW9uVXJsPyhoJiYoc2VsZi5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGgpLHNlbGYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZiwhMSksaC5zcmM9ZS5BdXRoZW50aWNhdGlvblVybCksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtudWxsIT1oJiZwKCl9KSx1KSk6aD1udWxsfSkuY2F0Y2goKGZ1bmN0aW9uKGUpe2g9bnVsbH0pKSkpfWZ1bmN0aW9uIGYoZSl7ZS5vcmlnaW49PXdpbmRvdy5sb2NhdGlvbi5vcmlnaW4mJmUuZGF0YSYmZS5kYXRhLnNwbGl0JiYoImJhY2tncm91bmRBdXRoUmVzcG9uc2UiPT1lLmRhdGEuc3BsaXQoIjoiKVswXSYmcCgpKX1mdW5jdGlvbiBwKCl7aCYmKHdpbmRvdy5kb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGgpLGg9bnVsbCx3aW5kb3cuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZikpfXZhciBiPW4oODQpO3ZhciBnPW4oMTYyKSxtPW4oMTEzKSx2PW4oMTEpO2xldCB3O2NvbnN0IE89Ik5lZWRzQXV0aCI7ZnVuY3Rpb24geShlLHQsbixhKXtsZXQgcj1mdW5jdGlvbihlLHQpe2NvbnN0IG49T2JqZWN0KHMuYSkoKTtpZig0MDE9PWUuc3RhdHVzfHw0NDA9PWUuc3RhdHVzKXtpZihmdW5jdGlvbihlKXtyZXR1cm4hZXx8IU9iamVjdChiLmEpKGUpJiYhMSE9PWUuYXV0aE5lZWRlZE9uVW5BdXRob3JpemVkfSh0KSlyZXR1cm4gbi5vbkF1dGhGYWlsZWQ/bi5vbkF1dGhGYWlsZWQoZS5oZWFkZXJzKTpPYmplY3QoZy5hKShlLmhlYWRlcnMpLGUuc291cmNlPU8sT31lbHNlIGlmKCFlLm9rKXJldHVybiA0MTI9PWUuc3RhdHVzJiZmdW5jdGlvbihlKXtpZihlJiYiNSI9PWUuZ2V0KCJYLU9XQS1FeHRlbmRlZEVycm9yQ29kZSIpKXtsZXQgdD1lLmdldCgiWC1PV0EtRXh0ZW5kZWRFcnJvckRhdGEiKTshdyYmdCYmKHc9ITAsT2JqZWN0KG0uYikoIlJlYWN0SGlwUmVkaXJlY3QiLHtoaXBQYXRoOnR9KSxPYmplY3Qodi5hKSgpLmxvY2F0aW9uLmhyZWY9dCl9cmV0dXJuIHd9KGUuaGVhZGVycyk/KGUuc291cmNlPU8sTyk6ZS5oZWFkZXJzJiZlLmhlYWRlcnMuZ2V0KCJ4LW93YS1lcnJvciIpfHxlLnN0YXR1c1RleHQ7cmV0dXJuIG51bGx9KHQsbik7aWYobi5yZXR1cm5GdWxsUmVzcG9uc2VPblN1Y2Nlc3MpcmV0dXJuIHI/UHJvbWlzZS5yZWplY3QodCk6UHJvbWlzZS5yZXNvbHZlKHQpO2lmKHIpe2NvbnN0IG49QShlLHIsdCxhKTt0aHJvdyBuLnJlc3BvbnNlPXQsbn1yZXR1cm4gbnVsbCE9dC5oZWFkZXJzLmdldCgiWC1PV0EtU1RPIikmJmQoKSxuLnJldHVyblJlc3BvbnNlSGVhZGVycz9Qcm9taXNlLnJlc29sdmUodCk6dC5qc29uKCkuY2F0Y2gobj0+e3Rocm93IEEoZSxudWxsPT1uP3ZvaWQgMDpuLm1lc3NhZ2UsdCxhKX0pfWZ1bmN0aW9uIEEoZSx0LG4sYSl7Y29uc3Qgcz1uZXcgRXJyb3IoYCR7ZX0gZmFpbGVkOiAke3R9YCk7cmV0dXJuIGEmJihzLmRpYWdub3N0aWNJbmZvPWEpLHMuZmV0Y2hFcnJvclR5cGU9dD09Tz8iQXV0aE5lZWRlZCI6IlNlcnZlckZhaWx1cmUiLHMuaHR0cFN0YXR1cz1uLnN0YXR1cyxzfXZhciBJPW4oMTY1KSxFPW4oODYpO2NvbnN0IGo9IlgtT1dBLUF0dGVtcHQiO2Z1bmN0aW9uIFQoZSx0KXtPYmplY3QoRS5iKSh0KSx0LnNldChqLCIiK2UpfXZhciBrPW4oMTU5KSxVPW4oMTU2KSxDPW4oMTYzKSxTPW4oODMpO2NvbnN0IEI9MjA0ODt2YXIgTT1uKDg1KSx4PW4oNTkpLFA9big1NCk7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBGfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gV30pKTtjb25zdCBSPTIsTj01ZTM7bGV0IEw9MDtjb25zdCBEPXt9O2Z1bmN0aW9uIEYoZSl7bGV0IHQ9TCsrO3JldHVybiBEW3RdPWUsKCk9PntkZWxldGUgRFt0XX19ZnVuY3Rpb24gVyhlLHQsbixyLGkpe2NvbnN0IHU9YXN5bmMgZnVuY3Rpb24oZSx0LG4pe2xldCBhPU9iamVjdChzLmEpKCk7aWYoYS5wcmVwYXJlUmVxdWVzdE9wdGlvbnMpe2NvbnN0IHQ9YS5wcmVwYXJlUmVxdWVzdE9wdGlvbnMoZSk7dCYmKGU9dC50aGVuP2F3YWl0IHQ6dCl9Y29uc3Qgcj1hd2FpdCBPYmplY3QoVS5hKShlKSxpPXIuaGVhZGVycztpZihuJiZpLnNldCgiQWN0aW9uIixuKSxpLnNldCgiWC1PV0EtQ29ycmVsYXRpb25JZCIsT2JqZWN0KEMuYSkoKSksaS5zZXQoIlgtT1dBLVNlc3Npb25JZCIsT2JqZWN0KG8uTikoKSksdCl7aS5hcHBlbmQoIkNvbnRlbnQtVHlwZSIsImFwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgiKTtsZXQgZT1KU09OLnN0cmluZ2lmeSh0KSxuPWVuY29kZVVSSUNvbXBvbmVudChlKTtyLm5vRW1wdHlQb3N0fHxuLmxlbmd0aD5CP3IuYm9keT1lOihpLmFwcGVuZCgiWC1PV0EtVXJsUG9zdERhdGEiLG4pLHIuYm9keT12b2lkIDApfWlmKCFpLmhhcyhTLmEpKXtsZXQgZT1PYmplY3QoUy5iKSgpO2UmJmkuYXBwZW5kKFMuYSxlKX1yZXR1cm4gcn0ocixpLGUpLGM9dCsiJm49IitPYmplY3Qoay5hKSgpLGg9T2JqZWN0KGEuYSkoYyx1KSxsPU9iamVjdC5rZXlzKEQpO2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGg7dCsrKURbbFt0XV0oaCxlLGMsbix1KTtyZXR1cm4gdS50aGVuKGE9Pntjb25zdCBvPShuZXcgRXJyb3IpLnN0YWNrLHtyZXRyeUNvdW50OnU9Un09YTtyZXR1cm4gaC50aGVuKChhc3luYyBmdW5jdGlvbihjKXt2YXIgaCxsO2xldCBkPSExLGY9dDtpZigoKG51bGw9PT0oaD1udWxsPT1hP3ZvaWQgMDphLnNob3VsZFJldHJ5KXx8dm9pZCAwPT09aD92b2lkIDA6aC5jYWxsKGEsYy5zdGF0dXMpKXx8T2JqZWN0KEkuYSkoYy5zdGF0dXMpKSYmbjx1KWlmKG51bGw9PWE/dm9pZCAwOmEub25CZWZvcmVSZXRyeSl7Y29uc3QgZT1hd2FpdCBhLm9uQmVmb3JlUmV0cnkoYyk7ZSYmKGQ9ITAsZS5kZWxheSYmYXdhaXQgT2JqZWN0KFAuYSkoZS5kZWxheSksZS5lbmRwb2ludCYmKGY9ZS5lbmRwb2ludCkpfWVsc2UgZD0hMDtpZihkKXtpZihPYmplY3QoTS5hKShjLnN0YXR1cykmJiFPYmplY3QoYi5hKShyKSl7Y29uc3QgZT1PYmplY3Qocy5hKSgpO251bGw9PT0obD1lLm9uQXV0aEZhaWxlZCl8fHZvaWQgMD09PWx8fGwuY2FsbChlKTtjb25zdCB0PWF3YWl0IGUuZ2V0QXV0aFRva2VuKGMuaGVhZGVycyxudWxsPT1yP3ZvaWQgMDpyLnNvdXJjZUlkKTt0P2EuaGVhZGVycy5zZXQoeC5hLHQpOmEuaGVhZGVycy5oYXMoeC5hKSYmYS5oZWFkZXJzLmRlbGV0ZSh4LmEpfXJldHVybiBUKCsrbixhLmhlYWRlcnMpLFcoZSxmLG4sYSxpKX1yZXR1cm4geShlLGMsYSxvKX0pLChmdW5jdGlvbihzKXtpZihzLnJldHJpYWJsZSYmbjx1KXJldHVybiBuZXcgUHJvbWlzZSgocyxyKT0+e3NldFRpbWVvdXQoKCk9Pnt0cnl7VCgrK24sYS5oZWFkZXJzKSxzKFcoZSx0LG4sYSxpKSl9Y2F0Y2godCl7dC5tZXNzYWdlJiYodC5tZXNzYWdlPWUrIjoiK3QubWVzc2FnZSkscih0KX19LE4pfSk7dGhyb3cgcy5uZXR3b3JrRXJyb3I9ITAsc30pKX0pfX0sMTQ0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGE9bigzNSk7ZnVuY3Rpb24gcyhlLHQpe3ZhciBuO3JldHVybiB2b2lkIDA9PT1lfHxlLl9fdHlwZXx8KG49ZSxlPU9iamVjdC5hc3NpZ24oe19fdHlwZToiQXV0aGVudGljYXRpb25VcmxSZXF1ZXN0OiNFeGNoYW5nZSJ9LG4pKSxPYmplY3QoYS5hKSgiR2V0QXV0aGVudGljYXRpb25VcmwiLGUsdCl9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpfSwxNDY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDE1Mykscz1uKDIpLHI9bigxMSksbz1uKDUpO2Z1bmN0aW9uIGkoKXtyZXR1cm4hIU9iamVjdChvLmYpKCJob3N0QXBwIixPYmplY3Qoci5hKSgpLmxvY2F0aW9uKSYmT2JqZWN0KG8uYykoImhvc3RBcHAiKS50b0xvd2VyQ2FzZSgpPT1zLmh9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBhLmF9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiBhLmJ9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBpfSkpfSwxNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBhPW4oMTMpLHM9big1KTtjb25zdCByPSJicG0iLG89MTExNDExMSxpPW51bGw9PT1zZWxmfHx2b2lkIDA9PT1zZWxmP3ZvaWQgMDpzZWxmLnBlcmZvcm1hbmNlLHU9e307ZnVuY3Rpb24gYyhlKXtPYmplY3Qocy5mKShyKSYmd2luZG93LnBlcmZvcm1hbmNlLm1hcmsoZSksaSYmKHVbZV09TWF0aC5mbG9vcihwZXJmb3JtYW5jZS5ub3coKSkpfWZ1bmN0aW9uIGgoKXt2YXIgZSx0O2NvbnN0IG49aSYmd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZztpZihuJiYodS5pbl9lPW4ucmVzcG9uc2VFbmQtbi5mZXRjaFN0YXJ0LE9iamVjdChhLmopKCkpKXtjb25zdCBhPW4ubmF2aWdhdGlvblN0YXJ0LHM9aSYmKG51bGw9PT0odD1udWxsPT09KGU9d2luZG93LnBlcmZvcm1hbmNlKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikpfHx2b2lkIDA9PT10P3ZvaWQgMDp0WzBdKSxyPShudWxsPT1zP3ZvaWQgMDpzLndvcmtlclN0YXJ0KXx8MCxjPVN0cmluZy5mcm9tQ2hhckNvZGUoLi4uW24ucmVkaXJlY3RTdGFydC1hLG4ucmVkaXJlY3RFbmQtYSxuLnVubG9hZEV2ZW50U3RhcnQtYSxuLnVubG9hZEV2ZW50RW5kLWEsbi5mZXRjaFN0YXJ0LWEsbi5kb21haW5Mb29rdXBTdGFydC1hLG4uZG9tYWluTG9va3VwRW5kLWEsbi5jb25uZWN0U3RhcnQtYSxuLnNlY3VyZUNvbm5lY3Rpb25TdGFydC1hLG4uY29ubmVjdEVuZC1hLG4ucmVxdWVzdFN0YXJ0LWEsbi5yZXNwb25zZVN0YXJ0LWEsbi5yZXNwb25zZUVuZC1hLG4uZG9tTG9hZGluZy1hLG4uZG9tSW50ZXJhY3RpdmUtYSxuLmRvbUNvbXBsZXRlLWEsbi5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFydC1hLG4uZG9tQ29udGVudExvYWRlZEV2ZW50RW5kLWEsbi5sb2FkRXZlbnRTdGFydC1hLG4ubG9hZEV2ZW50RW5kLWEscl0ubWFwKGU9Pk1hdGgubWluKE1hdGgubWF4KGUsMCksbykpKTt1LmZsPWN9cmV0dXJuIEpTT04uc3RyaW5naWZ5KHUpfWZ1bmN0aW9uIGwoKXtjb25zdCBlPU9iamVjdC5rZXlzKHUpLmZpbHRlcihlPT5lLmluZGV4T2YoIl9lIik+LTEpLnJlZHVjZSgoZSx0KT0+e2NvbnN0IG49dC5zcGxpdCgiXyIpWzBdLGE9dVtuKyJfcyJdLHM9dVtuKyJfZSJdO3JldHVybiJudW1iZXIiPT10eXBlb2YgYSYmIm51bWJlciI9PXR5cGVvZiBzJiYoZVtuXT1zLWEpLGV9LHt9KTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9ZnVuY3Rpb24gZChlLHQpe3JldHVybiBmdW5jdGlvbihlLHQsbil7cmV0dXJuIGZ1bmN0aW9uKC4uLmEpe3QoKTtsZXQgcz1lKC4uLmEpO3JldHVybihudWxsPT1zP3ZvaWQgMDpzLnRoZW4pP3M9cy50aGVuKGU9PihuKCksZSkpOm4oKSxzfX0oZSwoKT0+Zih0KSwoKT0+cCh0KSl9ZnVuY3Rpb24gZihlKXtjKGAke2V9X3NgKX1mdW5jdGlvbiBwKGUpe2xldCB0PWAke2V9X2VgO2ModCksT2JqZWN0KHMuZikocikmJndpbmRvdy5wZXJmb3JtYW5jZS5tZWFzdXJlKGUsYCR7ZX1fc2AsdCl9Y29uc3QgYj17fTtmdW5jdGlvbiBnKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe2NvbnN0IGE9dFtuXS5rZXk7YSYmdFtuXS5wcm9taXNlLnRoZW4odD0+e2JbZV09YX0pLmNhdGNoKCgpPT57fSl9Y29uc3QgYT10Lm1hcChlPT5lLnByb21pc2UpO3RyeXtyZXR1cm4gUHJvbWlzZS5hbGwoYSl9Y2F0Y2goZSl7Y29uc3Qgbj17cGs6dHlwZW9mIHQscHQ6dHlwZW9mIGEsc3Q6dHlwZW9mIHdpbmRvdy5TeW1ib2wsc3RpOnR5cGVvZiBTeW1ib2wuaXRlcmF0b3J9O3Rocm93IHQmJihuLnBrbD10Lmxlbmd0aCksYSYmKG4ucGw9YS5sZW5ndGgsU3ltYm9sLml0ZXJhdG9yJiYobi5waT10eXBlb2YgYVtTeW1ib2wuaXRlcmF0b3JdKSksZS5kaWFnbm9zdGljSW5mbz1KU09OLnN0cmluZ2lmeShuKSxlfX1mdW5jdGlvbiBtKGUsdCl7YltlXXx8KGJbZV09dCl9ZnVuY3Rpb24gdigpe3JldHVybiBKU09OLnN0cmluZ2lmeShiKX12YXIgdz1mdW5jdGlvbihlKXtyZXR1cm4gd2luZG93LmRvY3VtZW50JiYidmlzaWJsZSI9PXdpbmRvdy5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU/d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoZnVuY3Rpb24oKXtlKCEwKX0pKTp2b2lkIGUoITEpfTtuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGR9KSksbi5kKHQsImYiLChmdW5jdGlvbigpe3JldHVybiBwfSkpLG4uZCh0LCJoIiwoZnVuY3Rpb24oKXtyZXR1cm4gZn0pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiBofSkpLG4uZCh0LCJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gbH0pKSxuLmQodCwiaiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGd9KSksbi5kKHQsImQiLChmdW5jdGlvbigpe3JldHVybiB2fSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gbX0pKSxuLmQodCwiaSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHd9KSl9LDE1MDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGEoZSl7aWYoIWUpcmV0dXJuO2NvbnN0IHQ9ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoZS5ncmFwaFFMRXJyb3JzKWZvcihsZXQgdCBvZiBlLmdyYXBoUUxFcnJvcnMpaWYodC5leHRlbnNpb25zKXJldHVybiB0O3JldHVybiBudWxsPT09KHQ9ZS5ncmFwaFFMRXJyb3JzKXx8dm9pZCAwPT09dD92b2lkIDA6dFswXX0oZSk7cmV0dXJuIHQ/KHQuZXh0ZW5zaW9ucyYmT2JqZWN0LmtleXModC5leHRlbnNpb25zKS5mb3JFYWNoKGU9PntudWxsIT10LmV4dGVuc2lvbnNbZV0mJih0W2VdPXQuZXh0ZW5zaW9uc1tlXSl9KSx0KTplfW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gYX0pKX0sMTUzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bGV0IGE7ZnVuY3Rpb24gcygpe2lmKCFhKXRocm93IG5ldyBFcnJvcigiT3B4SG9zdEFwaSBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQgeWV0LiIpO3JldHVybiBhfWZ1bmN0aW9uIHIoKXtyZXR1cm4hIWF9ZnVuY3Rpb24gbyhlKXthPWV9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSl9LDE1NjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKTt2YXIgYT1uKDU5KTtmdW5jdGlvbiBzKGUpe2NvbnN0IHQ9KGU9ZXx8e30pLmhlYWRlcnM/bmV3IEhlYWRlcnMoZS5oZWFkZXJzKTpuZXcgSGVhZGVycztsZXQgbj1PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sZSkse21ldGhvZDplLm1ldGhvZHx8IlBPU1QiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixoZWFkZXJzOnR9KTtjb25zdCBzPW51bGw9PXQ/dm9pZCAwOnQuaGFzKCJBdXRob3JpemF0aW9uIikscj1udWxsPT10P3ZvaWQgMDp0LmhhcygieC1hbmNob3JtYWlsYm94Iik7cmV0dXJuIE9iamVjdChhLmIpKHMsZS5zb3VyY2VJZCxyKS50aGVuKGU9PihPYmplY3Qua2V5cyhlKS5mb3JFYWNoKG49Pnt0LnNldChuLGVbbl0pfSksbikpfX0sMTU4OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBhPW4oMTApLHM9bigxNjQpO2Z1bmN0aW9uIHIoZSx0KXtyZXR1cm4gdC50aGVuP3QudGhlbih0PT5vKGUsdCkpOm8oZSx0KX1mdW5jdGlvbiBvKGUsdCl7ZT1PYmplY3Qocy5hKShlKTtjb25zdCBuPU9iamVjdChhLmEpKCk7aWYobi5kaXNhYmxlQWxsUmVxdWVzdHMpe2NvbnN0IHQ9bmV3IEVycm9yKCJTZXJ2aWNlIHJlcXVlc3QgYmxvY2tlZCBiZWNhdXNlIGRpc2FibGVBbGxSZXF1ZXN0cyBpcyBlbmFibGVkLiIpO3JldHVybiB0LmRpYWdub3N0aWNJbmZvPWBVUkw6ICR7ZX1gLHQuZmV0Y2hFcnJvclR5cGU9IlJlcXVlc3ROb3RDb21wbGV0ZSIsdC5yZXRyaWFibGU9ITEsUHJvbWlzZS5yZWplY3QodCl9cmV0dXJuIG4uc2VydmljZUFjdGlvblRhc2tRdWV1ZT9uLnNlcnZpY2VBY3Rpb25UYXNrUXVldWUuYWRkKCgpPT5pKGUsdCksdC5wcmlvcml0eSk6aShlLHQpfWZ1bmN0aW9uIGkoZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoKG4scyk9Pntjb25zdCByPXQudGltZW91dE1TfHxPYmplY3QoYS5hKSgpLnRpbWVvdXRNU3x8LTEsbz10O2xldCBpPTA7aWYocj4wKXtsZXQgbjsiQWJvcnRDb250cm9sbGVyImluIHNlbGYmJihuPW5ldyBBYm9ydENvbnRyb2xsZXIsby5zaWduYWw9bi5zaWduYWwpLGk9c2VsZi5zZXRUaW1lb3V0KCgpPT57aWYobiluLmFib3J0KCk7ZWxzZXtjb25zdCBuPW5ldyBFcnJvcihgU2VydmljZSByZXF1ZXN0IHdvdWxkIGhhdmUgdGltZWQgb3V0IGFmdGVyICR7cn1tcyBpZiBBYm9ydENvbnRyb2xsZXIgaXMgYXZhaWxhYmxlLmApO2lmKG4uZGlhZ25vc3RpY0luZm89YFVSTDogJHtlfWAsbi5mZXRjaEVycm9yVHlwZT0iUmVxdWVzdFRpbWVvdXQiLCF0LnRpbWVvdXRNUyl0aHJvdyBuO3Mobil9fSxyKX1mZXRjaChlLG8pLnRoZW4oZT0+e3NlbGYuY2xlYXJUaW1lb3V0KGkpLG4oZSl9KS5jYXRjaCh0PT57Y29uc3Qgbj10O24uZmV0Y2hFcnJvclR5cGU9IlJlcXVlc3ROb3RDb21wbGV0ZSIsbi5yZXRyaWFibGU9ITAsIkFib3J0RXJyb3IiPT09bi5uYW1lPyhPYmplY3QuZGVmaW5lUHJvcGVydHkobiwibWVzc2FnZSIse3ZhbHVlOmBTZXJ2aWNlIHJlcXVlc3QgdGltZWQgb3V0IGFmdGVyICR7cn1tcy4gVVJMOiAke2V9YH0pLG4uZmV0Y2hFcnJvclR5cGU9IlJlcXVlc3RUaW1lb3V0Iik6bi5tZXNzYWdlJiZPYmplY3QuZGVmaW5lUHJvcGVydHkobiwibWVzc2FnZSIse3ZhbHVlOmAke24ubWVzc2FnZX0uIFVSTDogJHtlfWB9KSxzZWxmLmNsZWFyVGltZW91dChpKSxzKG4pfSl9KX19LDE1OTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKTtsZXQgYT0wO2Z1bmN0aW9uIHMoKXtyZXR1cm4gYSsrfX0sMTYwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBhPW4oMTApO2Z1bmN0aW9uIHMoZSl7dmFyIHQ7Y29uc3Qgbj1PYmplY3QoYS5hKSgpO2lmKG51bGw9PT0odD1uLmlzRmVhdHVyZUVuYWJsZWQpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmNhbGwobiwiZndrLWltbXV0YWJsZS1pZHMiKSl7Y29uc3QgdD1mdW5jdGlvbihlKXtjb25zdCB0PXIoZSk/ZS5nZXQoInByZWZlciIpOmUucHJlZmVyO3JldHVybiB0P2Ake3R9LCBJZFR5cGU9IkltbXV0YWJsZUlkImA6J0lkVHlwZT0iSW1tdXRhYmxlSWQiJ30oZSk7cihlKT9lLnNldCgicHJlZmVyIix0KTplLnByZWZlcj10fX1mdW5jdGlvbiByKGUpe3JldHVybiEhZS5nZXQmJiEhZS5zZXR9fSwxNjE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSk7dmFyIGE9bigxMCk7ZnVuY3Rpb24gcyhlKXt2YXIgdDtjb25zdCBuPU9iamVjdChhLmEpKCk7aWYobnVsbD09PSh0PW4uaXNGZWF0dXJlRW5hYmxlZCl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuY2FsbChuLCJhZGRpbi1ldmVyeU1lZXRpbmdPbmxpbmUiKSl7Y29uc3QgdD1mdW5jdGlvbihlKXtjb25zdCB0PXIoZSk/ZS5nZXQoInByZWZlciIpOmUucHJlZmVyO3JldHVybiB0P2Ake3R9LCBleGNoYW5nZS5iZWhhdmlvcj0iSW5jbHVkZVRoaXJkUGFydHlPbmxpbmVNZWV0aW5nUHJvdmlkZXJzImA6J2V4Y2hhbmdlLmJlaGF2aW9yPSJJbmNsdWRlVGhpcmRQYXJ0eU9ubGluZU1lZXRpbmdQcm92aWRlcnMiJ30oZSk7cihlKT9lLnNldCgicHJlZmVyIix0KTplLnByZWZlcj10fX1mdW5jdGlvbiByKGUpe3JldHVybiEhZS5nZXQmJiEhZS5zZXR9fSwxNjI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDUpLHM9bigxMSk7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBvfSkpO2xldCByPSExO2Z1bmN0aW9uIG8oZSl7aWYoIXIpe3I9ITA7Y29uc3QgdD1PYmplY3Qocy5hKSgpLmxvY2F0aW9uLG49T2JqZWN0KGEuZCkodCk7bGV0IG89ITE7Y29uc3QgaT1lP2UuZ2V0KCJYLU9XQS1DbGFpbUNoYWxsZW5nZSIpOnZvaWQgMDtpJiZuLmNjIT09aSYmKG4uY2M9ZGVjb2RlVVJJQ29tcG9uZW50KGkpLG89ITApLHZvaWQgMD09PW4uYXV0aFJlZGlyZWN0JiYobi5hdXRoUmVkaXJlY3Q9InRydWUiLG89ITApLG8mJihuLnN0YXRlPSIwIix0LnNlYXJjaD0iPyIrT2JqZWN0KGEuaSkobikpfX19LDE2MzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGEoKXtyZXR1cm4gcygpK3MoKSsiLSIrcygpKyItIitzKCkrIi0iK3MoKSsiLSIrcygpK3MoKStzKCl9ZnVuY3Rpb24gcygpe3JldHVybiBNYXRoLmZsb29yKDY1NTM2KigxK01hdGgucmFuZG9tKCkpKS50b1N0cmluZygxNikuc3Vic3RyaW5nKDEpfW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gYX0pKX0sMTY0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBhPW4oMTEpLHM9bigyKTtmdW5jdGlvbiByKGUpe2lmKE9iamVjdChzLlIpKCkpe2NvbnN0IHQ9T2JqZWN0KGEuYSkoKS5sb2NhdGlvbi5vcmlnaW47ZT0ic3RyaW5nIj09dHlwZW9mIGU/bmV3IFVSTChlLHQpLnRvU3RyaW5nKCk6T2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LGUpLHt1cmw6bmV3IFVSTChlLnVybCx0KS50b1N0cmluZygpfSl9cmV0dXJuIGV9fSwxNjU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSk7dmFyIGE9big4NSk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4gNDQ5PT1lfHw0MDg9PWV8fDUwMj09ZXx8ZTwxMDB8fGU+NTk5fHxPYmplY3QoYS5hKShlKX19LDE2OTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gdX0pKTt2YXIgYT1uKDMyKSxzPW4oMzMpLHI9big1Miksbz1uKDEwKSxpPW4oMik7YXN5bmMgZnVuY3Rpb24gdSgpe2xldCBlPSJVVEMiO2lmKHdpbmRvdy5JbnRsJiYib2JqZWN0Ij09dHlwZW9mIHdpbmRvdy5JbnRsKXtjb25zdCB0PXdpbmRvdy5JbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCk7KG51bGw9PXQ/dm9pZCAwOnQudGltZVpvbmUpJiYoZT10LnRpbWVab25lKX1jb25zdCB0PU9iamVjdChhLmEpKE9iamVjdChpLkgpKCkpLG49T2JqZWN0KHMuYikoT2JqZWN0KHMuYSkodCwibGFuZy5vd2EiKSksdT1uZXcgSGVhZGVycyxjPWBsb2NhbGVOYW1lPSR7d2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZX0mdHppZD0ke2V9JnNhdmVMYW5ndWFnZUFuZFRpbWV6b25lPTFgLGg9T2JqZWN0KG8uYSkoKTtpZih1LmFwcGVuZCgiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIiksdS5hcHBlbmQoIlgtT1dBLUNBTkFSWSIsT2JqZWN0KHIuYSkoKSksaCYmaC5nZXRBdXRoVG9rZW4pe2NvbnN0IGU9YXdhaXQgaC5nZXRBdXRoVG9rZW4oKTtlJiZ1LmFwcGVuZCgiQXV0aG9yaXphdGlvbiIsZSl9cmV0dXJuIGZldGNoKG4se21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6ImluY2x1ZGUiLGhlYWRlcnM6dSxib2R5OmN9KX19LDE3MDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSk7dmFyIGE9bigyKSxzPW4oNSk7Y29uc3Qgcj17fTtmdW5jdGlvbiBvKGUpe2NvbnN0IHQ9T2JqZWN0KHMuZCkod2luZG93LmxvY2F0aW9uKTtmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyhyKSl0W2VdPXJbZV07Y29uc3Qgbj10LmJPIT09ZS5zdHJhdGVneTt2YXIgbyxpO3JldHVybiBuJiYodC5iTz1lLnN0cmF0ZWd5LHQuc2Vzc2lvbklkPU9iamVjdChhLk4pKCksbz1gPyR7T2JqZWN0KHMuaSkodCl9YCwoaT1lLnRpbWVvdXR8fDApPjA/c2V0VGltZW91dCgoKT0+e3dpbmRvdy5sb2NhdGlvbi5zZWFyY2g9b30saSk6d2luZG93LmxvY2F0aW9uLnNlYXJjaD1vKSxufWZ1bmN0aW9uIGkoZSx0KXtyW2VdPXR9fSwxNzE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDI5KSxzPW4oMjcpLHI9bigzNSksbz1uKDYxKSxpPW4oMiksdT1uKDMyKSxjPW4oNjkpLGg9bigzOSksbD1uKDYyKSxkPW4oMTA1KSxmPW4oMTA3KSxwPW4oMjEpLGI9big1NCk7YXN5bmMgZnVuY3Rpb24gZyhlLHQsbil7Y29uc3QgYT1PYmplY3Qocy5hKShPYmplY3Qoby5hKShuKSwiU3RhcnR1cERhdGEiLE9iamVjdChpLlUpKG4udXJsKSkscj1PYmplY3QobC5hKShhKSx1PU9iamVjdChmLmEpKE9iamVjdChkLmEpKGEscixlKSxyLmVzcmMpO2lmKHUpcmV0dXJuIGF3YWl0IGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gT2JqZWN0KHAuYSkoIlN0YXJ0dXBEaWRSZXRyeSIsInQiKSxoLmEoT2JqZWN0KGMuYSkoZSxufHxPYmplY3QobC5hKSh0KSx2b2lkIDAsdCkpfSgic2VydmVyUmV0cnkiLGEsciksdS53YWl0Rm9yJiZhd2FpdCBQcm9taXNlLnJhY2UoW09iamVjdChiLmEpKDFlNCksdS53YWl0Rm9yLmNhdGNoKCgpPT57fSldKSx7ZW5kcG9pbnQ6YCR7dH0/Yk89MSZhcHA9JHtPYmplY3QoaS5tKSgpfWAsZGVsYXk6dS50aW1lb3V0fX1mdW5jdGlvbiBtKGUpe3JldHVybiAyMDQ9PWV8fDQwND09ZXx8ZT49NTAwfXZhciB2PW4oMTUpLHc9big1MSksTz1uKDkpLHk9bigxNzkpLEE9big4MiksST1uKDUpO2NvbnN0IEU9InNkZnAiO3ZhciBqLFQ7IWZ1bmN0aW9uKGUpe2VbZS5Ob0xvY2FsU3RvcmFnZT0wXT0iTm9Mb2NhbFN0b3JhZ2UiLGVbZS5Mb2NhbFN0b3JhZ2VGb3VuZD0xXT0iTG9jYWxTdG9yYWdlRm91bmQiLGVbZS5BcGlGb3VuZFBhcmFtcz0yXT0iQXBpRm91bmRQYXJhbXMiLGVbZS5BcGlVc2VkUGFyYW1zPTNdPSJBcGlVc2VkUGFyYW1zIn0oanx8KGo9e30pKSxmdW5jdGlvbihlKXtlW2UuTm9uZT0wXT0iTm9uZSIsZVtlLkZvdW5kRm9sZGVyUGFyYW1zPTFdPSJGb3VuZEZvbGRlclBhcmFtcyIsZVtlLkZvdW5kTWVzc2FnZVBhcmFtcz0yXT0iRm91bmRNZXNzYWdlUGFyYW1zIixlW2UuVXNlZEZvbGRlclBhcmFtcz00XT0iVXNlZEZvbGRlclBhcmFtcyIsZVtlLlVzZWRNZXNzYWdlUGFyYW1zPThdPSJVc2VkTWVzc2FnZVBhcmFtcyIsZVtlLkpzb25FeGNlcHRpb249MTZdPSJKc29uRXhjZXB0aW9uIn0oVHx8KFQ9e30pKTtsZXQgaz1qLk5vTG9jYWxTdG9yYWdlLFU9ai5Ob0xvY2FsU3RvcmFnZTt0LmE9T2JqZWN0KHYuZykoKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9bmV3IEhlYWRlcnMsbj1PYmplY3QoTy5hKSh3aW5kb3csRSk7biYmKHQuc2V0KCJmb2xkZXJQYXJhbXMiLG4pLGs9ai5Mb2NhbFN0b3JhZ2VGb3VuZCk7Y29uc3QgYz1PYmplY3QoTy5hKSh3aW5kb3csQS5hKTtjJiYodC5zZXQoIm1lc3NhZ2VQYXJhbXMiLGMpLFU9ai5Mb2NhbFN0b3JhZ2VGb3VuZCk7cmV0dXJuIE9iamVjdCh5LmEpKHQsd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLE9iamVjdChpLnEpKCksT2JqZWN0KEEuYikoKSxPYmplY3QoSS5jKSgiaW5pdGlhbGZvbGRlcnMiKSksZnVuY3Rpb24oZSx0LG4sYyl7Y29uc3QgaD1PYmplY3QodS5hKShPYmplY3QoaS5IKSgpKSsiL3N0YXJ0dXBkYXRhLmFzaHgiO3JldHVybiBPYmplY3Qoci5hKSgiU3RhcnR1cERhdGEiLHZvaWQgMCx7ZW5kcG9pbnQ6aCxoZWFkZXJzOnQscmV0dXJuRnVsbFJlc3BvbnNlT25TdWNjZXNzOiEwLHNob3VsZFJldHJ5Om0sb25CZWZvcmVSZXRyeTp0PT5nKGUsaCx0KSxhdXRoTmVlZGVkT25VbkF1dGhvcml6ZWQ6ITEscmV0cnlDb3VudDo1fSkudGhlbihlPT57aWYoT2JqZWN0KGEuaCkoZSksIWUpdGhyb3cgbmV3IEVycm9yKCJOb1Jlc3BvbnNlIik7aWYoMjAwIT1lLnN0YXR1cyl0aHJvdyBPYmplY3Qoby5hKShlKTtyZXR1cm4gYyhlLmhlYWRlcnMpLGUuanNvbigpLmNhdGNoKGU9Pntjb25zdCB0PW5ldyBFcnJvcigiSW52YWxpZEpzb24iKTt0aHJvdyBlJiYoZS5kaWFnbm9zdGljSW5mbz1lLm1lc3NhZ2UpLHR9KX0sZT0+e3Rocm93IE9iamVjdChvLmEpKGUpfSkudGhlbihuKS5jYXRjaChlPT5Qcm9taXNlLnJlamVjdChPYmplY3Qocy5hKShlLCJTdGFydHVwRGF0YSIsaCwwKSkpfShlLHQsQyxTKX0pLCJzZCIpO2Z1bmN0aW9uIEMoZSl7cmV0dXJuIGUuZm9sZGVyUGFyYW1zJiZPYmplY3QoTy5lKSh3aW5kb3csRSxKU09OLnN0cmluZ2lmeShlLmZvbGRlclBhcmFtcykpLGUubWVzc2FnZVBhcmFtcyYmT2JqZWN0KE8uZSkod2luZG93LEEuYSxKU09OLnN0cmluZ2lmeShlLm1lc3NhZ2VQYXJhbXMpKSxPYmplY3Qody5mKShlKSxlfWZ1bmN0aW9uIFMoZSl7bGV0IHQ7aWYoZSl7Y29uc3Qgbj1lLmdldCgieC1vd2Etc3RhcnR1cC1wcmVsb2FkIik7biYmT2JqZWN0KHYuYikoInNkX3ByIixuKTtjb25zdCBhPWUuZ2V0KCJ4LW93YS1zdGFydHVwLWRpYWciKTthJiYodD1wYXJzZUludChhKSl9QihFLGssdCxULlVzZWRGb2xkZXJQYXJhbXMsVC5Gb3VuZEZvbGRlclBhcmFtcyksQihBLmEsVSx0LFQuVXNlZE1lc3NhZ2VQYXJhbXMsVC5Gb3VuZE1lc3NhZ2VQYXJhbXMpfWZ1bmN0aW9uIEIoZSx0LG4sYSxzKXtuJiYoMCE9KG4mYSk/dD1qLkFwaVVzZWRQYXJhbXM6MCE9KG4mcykmJih0PWouQXBpRm91bmRQYXJhbXMpLDAhPShuJlQuSnNvbkV4Y2VwdGlvbikmJk9iamVjdChPLmQpKHdpbmRvdyxlKSksT2JqZWN0KHYuYikoZSx0KX19LDE3NTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJqIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSxuLmQodCwibSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSksbi5kKHQsImkiLChmdW5jdGlvbigpe3JldHVybiBpfSkpLG4uZCh0LCJsIiwoZnVuY3Rpb24oKXtyZXR1cm4gdX0pKSxuLmQodCwiayIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSksbi5kKHQsImciLChmdW5jdGlvbigpe3JldHVybiBofSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gbH0pKSxuLmQodCwiaCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGR9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBmfSkpLG4uZCh0LCJkIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGJ9KSksbi5kKHQsImYiLChmdW5jdGlvbigpe3JldHVybiBnfSkpLG4uZCh0LCJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gbX0pKTt2YXIgYT1uKDM0KSxzPW4oMjYpO2Z1bmN0aW9uIHIoKXtyZXR1cm4iTWFjIE9TIFgiPT1PYmplY3Qocy5hKSgpLm9zfWZ1bmN0aW9uIG8oKXtyZXR1cm4iV2luZG93cyI9PT1PYmplY3Qocy5hKSgpLm9zfWZ1bmN0aW9uIGkoKXtyZXR1cm4iTGludXgiPT09T2JqZWN0KHMuYSkoKS5vc31mdW5jdGlvbiB1KCl7cmV0dXJuIldpbmRvd3MiPT09T2JqZWN0KHMuYSkoKS5vcyYmIlhQIj09PU9iamVjdChzLmEpKCkub3NWZXJzaW9ufWZ1bmN0aW9uIGMoKXtyZXR1cm4iV2luZG93cyI9PT1PYmplY3Qocy5hKSgpLm9zJiYiMTAiPT09T2JqZWN0KHMuYSkoKS5vc1ZlcnNpb259ZnVuY3Rpb24gaCgpe3JldHVybiJDaHJvbWl1bSBPUyI9PU9iamVjdChzLmEpKCkub3N9ZnVuY3Rpb24gbCgpe3JldHVybiJBbmRyb2lkIj09T2JqZWN0KHMuYSkoKS5vc31mdW5jdGlvbiBkKCl7cmV0dXJuImlPUyI9PU9iamVjdChzLmEpKCkub3N9ZnVuY3Rpb24gZigpe3JldHVybiJDaHJvbWUiPT09T2JqZWN0KGEuYSkoKS5icm93c2VyfWZ1bmN0aW9uIHAoKXtyZXR1cm4iRmlyZWZveCI9PT1PYmplY3QoYS5hKSgpLmJyb3dzZXJ9ZnVuY3Rpb24gYigpe3JldHVybiJFZGdlIEFuYWhlaW0iPT09T2JqZWN0KGEuYSkoKS5icm93c2VyfWZ1bmN0aW9uIGcoKXtyZXR1cm4iU2FmYXJpIj09PU9iamVjdChhLmEpKCkuYnJvd3Nlcn1mdW5jdGlvbiBtKCl7cmV0dXJuIk9wZXJhIj09PU9iamVjdChhLmEpKCkuYnJvd3Nlcn19LDE3NjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT1uKDI0MSkscz1uKDEyNSkscj1uKDE3Nyksbz1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUuZ2V0UGF5bG9hZEJsb2I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1uZXcgYS5JTy5NZW1vcnlTdHJlYW0scz1uZXcgYS5Db21wYWN0QmluYXJ5UHJvdG9jb2xXcml0ZXIobik7cmV0dXJuIHMuV3JpdGVGaWVsZEJlZ2luKGEuQm9uZERhdGFUeXBlLkJUX01BUCwzKSxzLldyaXRlTWFwQ29udGFpbmVyQmVnaW4odCxhLkJvbmREYXRhVHlwZS5CVF9TVFJJTkcsYS5Cb25kRGF0YVR5cGUuQlRfTElTVCksT2JqZWN0LmtleXMoZSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7cy5Xcml0ZVN0cmluZyh0KTt2YXIgbj1lW3RdO3MuV3JpdGVDb250YWluZXJCZWdpbigxLGEuQm9uZERhdGFUeXBlLkJUX1NUUlVDVCkscy5Xcml0ZUZpZWxkQmVnaW4oYS5Cb25kRGF0YVR5cGUuQlRfU1RSSU5HLDIpLHMuV3JpdGVTdHJpbmcoImFjdF9kZWZhdWx0X3NvdXJjZSIpLHMuV3JpdGVGaWVsZEJlZ2luKGEuQm9uZERhdGFUeXBlLkJUX1NUUklORyw1KSxzLldyaXRlU3RyaW5nKHIubmV3R3VpZCgpKSxzLldyaXRlRmllbGRCZWdpbihhLkJvbmREYXRhVHlwZS5CVF9JTlQ2NCw2KSxzLldyaXRlSW50NjQoci5udW1iZXJUb0JvbmRJbnQ2NChEYXRlLm5vdygpKSkscy5Xcml0ZUZpZWxkQmVnaW4oYS5Cb25kRGF0YVR5cGUuQlRfTElTVCw4KSxzLldyaXRlQ29udGFpbmVyQmVnaW4obi5sZW5ndGgsYS5Cb25kRGF0YVR5cGUuQlRfU1RSVUNUKTtmb3IodmFyIG89MDtvPG4ubGVuZ3RoOysrbylzLldyaXRlQmxvYihuW29dKTtzLldyaXRlU3RydWN0RW5kKCExKX0pKSxzLldyaXRlU3RydWN0RW5kKCExKSxuLkdldEJ1ZmZlcigpfSxlLmdldEV2ZW50QmxvYj1mdW5jdGlvbihlKXt2YXIgdD1uZXcgYS5JTy5NZW1vcnlTdHJlYW0sbj1uZXcgYS5Db21wYWN0QmluYXJ5UHJvdG9jb2xXcml0ZXIodCk7bi5Xcml0ZUZpZWxkQmVnaW4oYS5Cb25kRGF0YVR5cGUuQlRfU1RSSU5HLDEpLG4uV3JpdGVTdHJpbmcoZS5pZCksbi5Xcml0ZUZpZWxkQmVnaW4oYS5Cb25kRGF0YVR5cGUuQlRfSU5UNjQsMyksbi5Xcml0ZUludDY0KHIubnVtYmVyVG9Cb25kSW50NjQoZS50aW1lc3RhbXApKSxuLldyaXRlRmllbGRCZWdpbihhLkJvbmREYXRhVHlwZS5CVF9TVFJJTkcsNSksbi5Xcml0ZVN0cmluZyhlLnR5cGUpLG4uV3JpdGVGaWVsZEJlZ2luKGEuQm9uZERhdGFUeXBlLkJUX1NUUklORyw2KSxuLldyaXRlU3RyaW5nKGUubmFtZSk7dmFyIG89W10saT1bXTtyZXR1cm4gT2JqZWN0LmtleXMoZS5wcm9wZXJ0aWVzKS5mb3JFYWNoKChmdW5jdGlvbih0KXtlLnByb3BlcnRpZXNbdF0ucGlpPT09cy5BV1RQaWlLaW5kLk5vdFNldD9vLnB1c2godCk6aS5wdXNoKHQpfSkpLG8ubGVuZ3RoJiYobi5Xcml0ZUZpZWxkQmVnaW4oYS5Cb25kRGF0YVR5cGUuQlRfTUFQLDEzKSxuLldyaXRlTWFwQ29udGFpbmVyQmVnaW4oby5sZW5ndGgsYS5Cb25kRGF0YVR5cGUuQlRfU1RSSU5HLGEuQm9uZERhdGFUeXBlLkJUX1NUUklORyksby5mb3JFYWNoKChmdW5jdGlvbih0KXtuLldyaXRlU3RyaW5nKHQpLG4uV3JpdGVTdHJpbmcoZS5wcm9wZXJ0aWVzW3RdLnZhbHVlKX0pKSksaS5sZW5ndGgmJihuLldyaXRlRmllbGRCZWdpbihhLkJvbmREYXRhVHlwZS5CVF9NQVAsMzApLG4uV3JpdGVNYXBDb250YWluZXJCZWdpbihpLmxlbmd0aCxhLkJvbmREYXRhVHlwZS5CVF9TVFJJTkcsYS5Cb25kRGF0YVR5cGUuQlRfU1RSVUNUKSxpLmZvckVhY2goKGZ1bmN0aW9uKHQpe24uV3JpdGVTdHJpbmcodCksbi5Xcml0ZUZpZWxkQmVnaW4oYS5Cb25kRGF0YVR5cGUuQlRfSU5UMzIsMSksbi5Xcml0ZUludDMyKDEpLG4uV3JpdGVGaWVsZEJlZ2luKGEuQm9uZERhdGFUeXBlLkJUX0lOVDMyLDIpLG4uV3JpdGVJbnQzMihlLnByb3BlcnRpZXNbdF0ucGlpKSxuLldyaXRlRmllbGRCZWdpbihhLkJvbmREYXRhVHlwZS5CVF9TVFJJTkcsMyksbi5Xcml0ZVN0cmluZyhlLnByb3BlcnRpZXNbdF0udmFsdWUpLG4uV3JpdGVTdHJ1Y3RFbmQoITEpfSkpKSxuLldyaXRlU3RydWN0RW5kKCExKSx0LkdldEJ1ZmZlcigpfSxlLmJhc2U2NEVuY29kZT1mdW5jdGlvbihlKXtyZXR1cm4gYS5FbmNvZGluZy5CYXNlNjQuR2V0U3RyaW5nKGUpfSxlfSgpO3QuZGVmYXVsdD1vfSwxNzc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIGE9big5NSkscz0vW3h5XS9nO3QubnVtYmVyVG9Cb25kSW50NjQ9ZnVuY3Rpb24oZSl7dmFyIHQ9bmV3IGEuSW50NjQoIjAiKTtyZXR1cm4gdC5sb3c9NDI5NDk2NzI5NSZlLHQuaGlnaD1NYXRoLmZsb29yKGUvNDI5NDk2NzI5NiksdH0sdC5uZXdHdWlkPWZ1bmN0aW9uKCl7cmV0dXJuInh4eHh4eHh4LXh4eHgtNHh4eC15eHh4LXh4eHh4eHh4eHh4eCIucmVwbGFjZShzLChmdW5jdGlvbihlKXt2YXIgdD0xNipNYXRoLnJhbmRvbSgpfDA7cmV0dXJuKCJ4Ij09PWU/dDozJnR8OCkudG9TdHJpbmcoMTYpfSkpfSx0LmlzUGlpPWZ1bmN0aW9uKGUpe3JldHVybiFpc05hTihlKSYmbnVsbCE9PWUmJmU+PTAmJmU8PTEzfX0sMTc4OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLHQuVmVyc2lvbj0iMS4yLjIiLHQuRnVsbFZlcnNpb25TdHJpbmc9IkFXVC1XZWItQ0pTLSIrdC5WZXJzaW9ufSwxNzk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7Y29uc3QgYT0yNTAscz02NSxyPTI5LG89WyIvbXlkYXkiLCIvY2FsZW5kYXJ3aWRnZXQiLCIvaW5zaWdodHMiXSxpPSJYLU1lc3NhZ2UtQ291bnQiLHU9IlgtRm9sZGVyLUNvdW50IjtmdW5jdGlvbiBjKGUsdCxuLGMsaCl7Y29uc3QgbD10JiYwPT10LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiL29yZ2V4cGxvcmVyIik7aWYoZS5hcHBlbmQoIlgtSnMtRXhwZXJpbWVudCIsbD8iNCI6IjUiKSx0JiYwIT10LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiL21haWwiKSl7ZS5hcHBlbmQodSwiMCIpLGUuYXBwZW5kKGksIjAiKTtjb25zdCBuPXQudG9Mb3dlckNhc2UoKTsoMD09bi5pbmRleE9mKCIvY2FsZW5kYXIiKXx8MD09bi5pbmRleE9mKCIvb3B4IikmJm8uc29tZShlPT5uLmluY2x1ZGVzKGUpKSkmJmUuYXBwZW5kKCJYLUNhbGVuZGFyLUZvbGRlcnMiLCIxIil9ZWxzZXtpZihuKXtjb25zdCB0PWM/czpyO2UuYXBwZW5kKGksYCR7TWF0aC5mbG9vcigobi1hKS90KX1gKX1oJiZlLmFwcGVuZCh1LGgpfX19LDE4MTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGEoZSx0KXtpZighdHx8MD09T2JqZWN0LmtleXModCkubGVuZ3RoKXJldHVybiBlO2NvbnN0IG49LTEhPT1lLmluZGV4T2YoIj8iKTtyZXR1cm4oZSs9bj8iJiI6Ij8iKStPYmplY3Qua2V5cyh0KS5tYXAoKGUsbik9PmAke2VuY29kZVVSSUNvbXBvbmVudChlKX09JHtlbmNvZGVVUklDb21wb25lbnQodFtlXSl9YCkuam9pbigiJiIpfW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gYX0pKX0sMTgyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTtsZXQgYT0hMTtmdW5jdGlvbiBzKCl7cmV0dXJuIGF9ZnVuY3Rpb24gcihlKXthPWV9fSwxODU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7dmFyIGE9bigyKSxzPW4oNSk7Y29uc3Qgcj0iIzAwNzhENCIsbz0iIzMzMyIsaT0iRmV3ZXIgRGV0YWlscyIsdT0iJ1NlZ29lIFVJIFdlc3RFdXJvcGVhbicsICdTZWdvZSBVSSBTZW1pYm9sZCcsICdTZWdvZSBXUCBTZW1pYm9sZCcsICdTZWdvZSBVSScsICdTZWdvZSBXUCcsIFRhaG9tYSwgQXJpYWwsIHNhbnMtc2VyaWYnIjtmdW5jdGlvbiBjKGUsdCxuKXtjb25zdCBjPWwoe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsbGVmdDoiMzQwcHgiLHRvcDoiNDBweCJ9KSxmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2FkaW5nTG9nbyIpO2YmJihmLnJlbW92ZSgpLGQoZix7cG9zaXRpb246ImluaXRpYWwiLHdpZHRoOiI1NnB4IixoZWlnaHQ6IjU2cHgifSksYy5hcHBlbmRDaGlsZChmKSk7Y29uc3QgcD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9hZGluZ1NjcmVlbiIpO3AmJnAucmVtb3ZlKCksaChjLHtmb250U2l6ZToiNDBweCIsY29sb3I6ciwibWFyZ2luLXRvcCI6IjI4cHgifSwiU29tZXRoaW5nIHdlbnQgd3JvbmcuIiksaChjLHtmb250U2l6ZToiMTZweCIsImZvbnQtZmFtaWx5Ijp1LG1hcmdpbjoiMjBweCAwIiwiZm9udC13ZWlnaHQiOiI2MDAiLGNvbG9yOm99LCJQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIpO2NvbnN0IGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2QoYix7bWFyZ2luOiIwIDRweCIsImZvbnQtc2l6ZSI6IjE0cHgiLCJsaW5lLWhlaWdodCI6IjE5cHgifSksYi5pbm5lclRleHQ9IlJlZnJlc2ggdGhlIHBhZ2UiO2NvbnN0IGc9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7ZChnLHtjb2xvcjoid2hpdGUiLCJiYWNrZ3JvdW5kLWNvbG9yIjpyLGN1cnNvcjoicG9pbnRlciIscGFkZGluZzoiMCAxNnB4IiwibWluLXdpZHRoIjoiODBweCIsImJvcmRlci1yYWRpdXMiOiIycHgiLCJtaW4taGVpZ2h0IjoiMzJweCIsYm9yZGVyOiIxcHggc29saWQgIityLCJmb250LXdlaWdodCI6IjYwMCIsImZvbnQtZmFtaWx5Ijp1LCJsaW5lLWhlaWdodCI6IjE5cHgifSksZy5hcHBlbmRDaGlsZChiKSxjLmFwcGVuZENoaWxkKGcpO2NvbnN0IG09aChjLHtmb250U2l6ZToiMTRweCIsY29sb3I6cixjdXJzb3I6InBvaW50ZXIiLCJmb250LWZhbWlseSI6dSwibGluZS1oZWlnaHQiOiIxOXB4IiwiZm9udC13ZWlnaHQiOiI2MDAiLG1hcmdpbjoiMjBweCAwIn0saSk7bGV0IHY9W2BVVEMgRGF0ZTogJHsobmV3IERhdGUpLnRvSVNPU3RyaW5nKCl9YCwiQm9vdFJlc3VsdDogIitlLCJDbGllbnQgSWQ6ICIrT2JqZWN0KGEudCkoKSwiU2Vzc2lvbiBJZDogIitPYmplY3QoYS5OKSgpLCJDbGllbnQgVmVyc2lvbjogIitPYmplY3QoYS51KSgpXTtjb25zdCB3PU9iamVjdChzLmMpKCJuYXRpdmVWZXJzaW9uIik7dyYmdi5wdXNoKCJOYXRpdmUgSG9zdCBWZXJzaW9uOiAiK3cpLG4ucmVxdWVzdCYmdi5wdXNoKCJGYWlsZWQgcmVzb3VyY2U6ICIrbi5yZXF1ZXN0KSx2PXYuY29uY2F0KE9iamVjdC5rZXlzKHQpLmZpbHRlcihlPT50W2VdKS5tYXAoZT0+ZSsiOiAiK3RbZV0pKTtjb25zdCBPPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInByZSIpO08uaW5uZXJUZXh0PXYuam9pbigiXG4iKSxkKE8se2NvbG9yOm8sInVzZXItc2VsZWN0IjoiYWxsIn0pLGMuYXBwZW5kQ2hpbGQoTyksbS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9Pntjb25zdCBlPW0uaW5uZXJUZXh0PT1pO20uaW5uZXJUZXh0PWU/Ik1vcmUgRGV0YWlscyI6aSxPLnN0eWxlLmRpc3BsYXk9ZT8ibm9uZSI6IiJ9KTtjb25zdCB5PXdpbmRvdy5sb2NhdGlvbjtnLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e2NvbnN0IGU9T2JqZWN0KHMuZCkoeSk7ZS5uYXRpdmU9IiIseS5zZWFyY2g9YD8ke09iamVjdChzLmkpKGUpfWB9KSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwIikuYXBwZW5kQ2hpbGQoYyl9ZnVuY3Rpb24gaChlLHQsbil7Y29uc3QgYT1sKHQpO3JldHVybiBuJiYoYS5pbm5lclRleHQ9biksZS5hcHBlbmRDaGlsZChhKSxhfWZ1bmN0aW9uIGwoZSl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gZCh0LGUpLHR9ZnVuY3Rpb24gZChlLHQpe2Zvcihjb25zdCBuIG9mIE9iamVjdC5rZXlzKHQpKWUuc3R5bGVbbl09dFtuXX19LDE5MzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgYT1uKDI0KTtjb25zdCBzPVsib3V0IG9mIG1lbW9yeSIsIm5vdCBlbm91Z2ggc3RvcmFnZSIsIm5vdCBlbm91Z2ggbWVtb3J5IHJlc291cmNlcyIsImVzcGFjaW8gZGUgYWxtYWNlbmFtaWVudG8gaW5zdWZpY2llbnRlIiwiaW5zdWZmaXNhbnRlIHBvdXIgY2V0dGUiLCJubyBoYXkgc3VmaWNpZW50ZSBlc3BhY2lvIGRlIHBpbGEiLCJlc3BhY2UgcGlsZSBpbnN1ZmZpc2FudCIsIk1lbW9yaWEgZXNhdXJpdGEiLCJNw6ltb2lyZSBpbnN1ZmZpc2FudGUiLCJNZW1vcmlhIGluc3VmaWNpZW50ZSIsIk1lbcOzcmlhIGluc3VmaWNpZW50ZSJdO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIE9iamVjdChhLmEpKHMsZSl9fSwxOTQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSk7dmFyIGE9bigyNCk7Y29uc3Qgcz1bImNocm9tZS1leHRlbnNpb246Ly8iLCJmaWxlOi8vLyIsImJ0Z2xzcy5uZXQvIiwiKC9Vc2Vycy8iLCIoL0FwcGxpY2F0aW9ucy8iXTtmdW5jdGlvbiByKGUpe3JldHVybiBPYmplY3QoYS5hKShzLGUpfX0sMTk1OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBhPW4oMjQpO2NvbnN0IHM9WyI6IFN5bnRheCBlcnJvciIsIlN5bnRheEVycm9yOiIsIkEgbmV0d29yayBlcnJvciBvY2N1cnJlZCIsIkZhaWxlZCB0byBmZXRjaCIsIk5ldHdvcmtFcnJvciIsIk5ldHdvcmsgcmVxdWVzdCBmYWlsZWQiLCJJbnRlcm5ldCBjb25uZWN0aW9uIGFwcGVhcnMgdG8gYmUiLCJUaGUgbmV0d29yayBjb25uZWN0aW9uIHdhcyBsb3N0LiIsIkNvdWxkIG5vdCBjb25uZWN0IHRvIHRoZSBzZXJ2ZXIiLCJjYW5jZWxsZWQuIFVSTDoiLCJFcnJvclNlc3Npb25UaW1lb3V0IiwiTG9hZGluZyBjaHVuayAiLCJVbmV4cGVjdGVkIHNlcnZlciByZXNwb25zZSAoMCkiLCJVbmV4cGVjdGVkIGVuZCBvZiBKU09OIGlucHV0IiwiVW5leHBlY3RlZCB0b2tlbiIsIkludmFsaWQgY2hhcmFjdGVyIiwiVW5leHBlY3RlZCBlbmQgb2YgaW5wdXQiLCJUaGUgb3BlcmF0aW9uIHdhcyBhYm9ydGVkIiwiRmFpbGVkIHRvIGxvYWQgamF2YXNjcmlwdCJdO2Z1bmN0aW9uIHIoZSx0KXtyZXR1cm4gT2JqZWN0KGEuYSkocyxlKXx8KG51bGw9PXQ/dm9pZCAwOnQubmV0d29ya0Vycm9yKX19LDE5NjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYigoKT0+bi5lKDE4MykudGhlbihuLmJpbmQobnVsbCw0MjEpKSkscj1uZXcgYS5jKHMsZT0+ZS5mdWxsRGVuc2l0eSl9LDE5NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgxMyksbi5lKDEwNSksbi5lKDIwNCldKS50aGVuKG4uYmluZChudWxsLDQxOCkpKSxyPW5ldyBhLmMocyxlPT5lLndlYlJlc29sdmVycyl9LDE5ODpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSg4KSxuLmUoMTApLG4uZSgyNTMpXSkudGhlbihuLmJpbmQobnVsbCw0MjIpKSkscj1uZXcgYS5hKHMsZT0+ZS5jcmVhdGVNYW5hZ2VkUXVlcnlMaW5rKX0sMTk5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bGV0IGE7ZnVuY3Rpb24gcyhlKXthPWV9ZnVuY3Rpb24gcigpe3JldHVybiBhfW4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSl9LDI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDE0KSxzPW4oNSk7Y29uc3Qgcj0vW3h5XS9nO2xldCBvO2Z1bmN0aW9uIGkoKXtyZXR1cm4gb3x8KG89T2JqZWN0KHMuYykoInNlc3Npb25JZCIpfHwieHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4Ii5yZXBsYWNlKHIsKGZ1bmN0aW9uKGUpe3ZhciB0PTE2Kk1hdGgucmFuZG9tKCl8MDtyZXR1cm4oIngiPT09ZT90OjMmdHw4KS50b1N0cmluZygxNil9KSkpLG99Y29uc3QgdT1uZXcgUmVnRXhwKC8oW2EtekEtWjAtOStfXC4tXSspKEB8JTQwKShbXGRhLXpBLVpcLi1dKylcLihbYS16QS1aXC5dezIsNn0pL2cpLGM9bmV3IFJlZ0V4cCgvKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPykvZyk7Y29uc3QgaD1be3BhdHRlcm46IiUyNnN1YmplY3QiLHJlcGxhY2VtZW50OiJSZXBsYWNlZFN1YmplY3QifSx7cGF0dGVybjoiJTNGc3ViamVjdCIscmVwbGFjZW1lbnQ6IlJlcGxhY2VkU3ViamVjdCJ9LHtwYXR0ZXJuOiI/c3ViamVjdCIscmVwbGFjZW1lbnQ6IlJlcGxhY2VkU3ViamVjdCJ9LHtwYXR0ZXJuOiImc3ViamVjdCIscmVwbGFjZW1lbnQ6IlJlcGxhY2VkU3ViamVjdCJ9LHtwYXR0ZXJuOiIlMjZib2R5IixyZXBsYWNlbWVudDoiUmVwbGFjZWRCb2R5In0se3BhdHRlcm46IiUzRmJvZHkiLHJlcGxhY2VtZW50OiJSZXBsYWNlZEJvZHkifSx7cGF0dGVybjoiP2JvZHkiLHJlcGxhY2VtZW50OiJSZXBsYWNlZEJvZHkifSx7cGF0dGVybjoiJmJvZHkiLHJlcGxhY2VtZW50OiJSZXBsYWNlZEJvZHkifSx7cGF0dGVybjoiJTI2bWFpbHRvdXJpIixyZXBsYWNlbWVudDoiUmVwbGFjZWRNYWlsVG9VcmkifSx7cGF0dGVybjoiJTNGbWFpbHRvdXJpIixyZXBsYWNlbWVudDoiUmVwbGFjZWRNYWlsVG9VcmkifSx7cGF0dGVybjoiP21haWx0b3VyaSIscmVwbGFjZW1lbnQ6IlJlcGxhY2VkTWFpbFRvVXJpIn0se3BhdHRlcm46IiZtYWlsdG91cmkiLHJlcGxhY2VtZW50OiJSZXBsYWNlZE1haWxUb1VyaSJ9XTtmdW5jdGlvbiBsKGUpe3JldHVybiBlJiYoZT0oZT0oZT1lLnJlcGxhY2UodSwiRW1haWxQaWkiKSkucmVwbGFjZShjLCJJcFBpaSIpKS5zcGxpdChpKCkpLmpvaW4oIlJlcGxhY2VkU2Vzc2lvbklkIiksaC5mb3JFYWNoKCh7cGF0dGVybjp0LHJlcGxhY2VtZW50Om59KT0+e2U9ZnVuY3Rpb24oZSx0LG4pe3JldHVybi0xIT09ZS5pbmRleE9mKHQpP2Ake2Uuc3Vic3RyaW5nKDAsZS5pbmRleE9mKHQpK3QubGVuZ3RoKX09JHtufWA6ZX0oZXx8IiIsdCxuKX0pKSxlfWZ1bmN0aW9uIGQoKXt2YXIgZTtsZXQgdD1sKG51bGw9PT0oZT1udWxsPT09d2luZG93fHx2b2lkIDA9PT13aW5kb3c/dm9pZCAwOndpbmRvdy5sb2NhdGlvbil8fHZvaWQgMD09PWU/dm9pZCAwOmUuaHJlZik7cmV0dXJuIHQmJnQubGVuZ3RoPjEwMCYmKHQ9dC5zdWJzdHIoMCwxMDApKSx0JiZlbmNvZGVVUklDb21wb25lbnQodCl9dmFyIGY9big5KTtjb25zdCBwPSJPd2FDbGllbnRJZCI7bGV0IGI9bnVsbDtmdW5jdGlvbiBnKCl7aWYoIWIpe2NvbnN0IGU9KG51bGw9PT1kb2N1bWVudHx8dm9pZCAwPT09ZG9jdW1lbnQ/dm9pZCAwOmRvY3VtZW50LmNvb2tpZSkmJmRvY3VtZW50LmNvb2tpZS5zcGxpdCgiQ2xpZW50SWQ9IilbMV07bGV0IHQ9ZSYmZS5zcGxpdCgiOyIpWzBdO3Q/KGI9dCxPYmplY3QoZi5lKSh3aW5kb3cscCx0KSk6Yj1PYmplY3QoZi5hKSh3aW5kb3cscCl9cmV0dXJuIGJ9dmFyIG09bigyOCk7bGV0IHYsdz0iKG5vbmUpIjtmdW5jdGlvbiBPKCl7cmV0dXJuIHZ9ZnVuY3Rpb24geSgpe2lmKCF3KXRocm93IG5ldyBFcnJvcigiT3B4IGhhcyBub3QgcmVzcG9uZGVkIHdpdGggdGhlIGNvbmZpZyB5ZXQiKTtyZXR1cm4gd31mdW5jdGlvbiBBKGUpe3c9dm9pZCAwLHY9ZS50aGVuKGU9Pnt3PWUuaG9zdEFwcDtjb25zdCB0PWUuc2Vzc2lvbklkO3JldHVybiB0JiZmdW5jdGlvbihlKXtvPWV9KHQpLGV9KX1mdW5jdGlvbiBJKGUpe3c9ZX1mdW5jdGlvbiBFKCl7Y29uc3QgZT1bbS5iLG0uaSxtLmtdO2xldCB0O2lmKE9iamVjdChzLmYpKCJob3N0QXBwIik/dD1PYmplY3Qocy5jKSgiaG9zdEFwcCIpLnRvTG93ZXJDYXNlKCk6T2JqZWN0KHMuZikoInRlc3RIb3N0QXBwIikmJih0PU9iamVjdChzLmMpKCJ0ZXN0SG9zdEFwcCIpLnRvTG93ZXJDYXNlKCkpLGUuaW5jbHVkZXModCkpcmV0dXJuIHR9ZnVuY3Rpb24gaigpe3JldHVybiEhRSgpfWZ1bmN0aW9uIFQoKXtyZXR1cm4gT2JqZWN0KHMuZikoIm5hdGl2ZVZlcnNpb24iKXx8YS5iPT1tLmU/bS5lOmooKT9FKCk6eSgpfWZ1bmN0aW9uIGsoKXtyZXR1cm4iL293YSJ9dmFyIFU9bigyOSksQz1uKDExMSksUz1uKDExKTtmdW5jdGlvbiBCKCl7cmV0dXJuImV4Y2hhbmdlbGFicy5saXZlLWludC5jb20iPT09T2JqZWN0KFMuYSkoKS5sb2NhdGlvbi5ob3N0fWxldCBNLHg7ZnVuY3Rpb24gUChlKXt2YXIgdCxuO2NvbnN0IGE9T2JqZWN0KFMuYSkoKSxzPWEuZG9jdW1lbnQ7aWYoIU18fGUpe2NvbnN0IGU9bnVsbD09PSh0PW51bGw9PXM/dm9pZCAwOnMuZG9jdW1lbnRFbGVtZW50KXx8dm9pZCAwPT09dD92b2lkIDA6dC5jbGllbnRXaWR0aDtNPWEuaW5uZXJXaWR0aCYmZT9NYXRoLm1pbihhLmlubmVyV2lkdGgsZSk6YS5pbm5lcldpZHRofHxlfHwobnVsbD09PShuPW51bGw9PXM/dm9pZCAwOnMuYm9keSl8fHZvaWQgMD09PW4/dm9pZCAwOm4uY2xpZW50V2lkdGgpfXJldHVybiBNfWZ1bmN0aW9uIFIoKXtyZXR1cm4geHx8IkRlc2t0b3AifXZhciBOPW4oNzIpO2xldCBMO2Z1bmN0aW9uIEQoZSl7dmFyIHQsbixhPU9iamVjdChTLmEpKCkscz1hLmRvY3VtZW50O2lmKCFMfHxlKXtjb25zdCBlPW51bGw9PT0odD1udWxsPT1zP3ZvaWQgMDpzLmRvY3VtZW50RWxlbWVudCl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuY2xpZW50SGVpZ2h0O0w9YS5pbm5lckhlaWdodCYmZT9NYXRoLm1pbihhLmlubmVySGVpZ2h0LGUpOmEuaW5uZXJIZWlnaHR8fGV8fChudWxsPT09KG49bnVsbD09cz92b2lkIDA6cy5ib2R5KXx8dm9pZCAwPT09bj92b2lkIDA6bi5jbGllbnRIZWlnaHQpfXJldHVybiBMfWxldCBGPXt9O2Z1bmN0aW9uIFcoZSl7aWYoZSl0cnl7Rj1KU09OLnBhcnNlKGUpfWNhdGNoKGUpe31yZXR1cm4gRn1mdW5jdGlvbiBRKCl7cmV0dXJuIEZ9ZnVuY3Rpb24gWShlKXtjb25zdCB0PU9iamVjdChhLmYpKCk7cmV0dXJuISEobnVsbD09ZT92b2lkIDA6ZS5zb21lKGU9PntyZXR1cm4gbmV3IFJlZ0V4cChgXiR7ZX0kYCkudGVzdCh0KX0pKX12YXIgSD1uKDEyMCk7ZnVuY3Rpb24gSygpe3JldHVybiEoImRvY3VtZW50ImluIHNlbGYpfWxldCB6O2Z1bmN0aW9uIFYoKXtyZXR1cm4hIXp9ZnVuY3Rpb24gRyhlKXt6PWV9bi5kKHQsIm0iLChmdW5jdGlvbigpe3JldHVybiBhLmN9KSksbi5kKHQsInUiLChmdW5jdGlvbigpe3JldHVybiBhLmZ9KSksbi5kKHQsIkkiLChmdW5jdGlvbigpe3JldHVybiBhLmd9KSksbi5kKHQsIkwiLChmdW5jdGlvbigpe3JldHVybiBhLmp9KSksbi5kKHQsIksiLChmdW5jdGlvbigpe3JldHVybiBhLml9KSksbi5kKHQsInMiLChmdW5jdGlvbigpe3JldHVybiBhLmV9KSksbi5kKHQsIm8iLChmdW5jdGlvbigpe3JldHVybiBhLmR9KSksbi5kKHQsIkoiLChmdW5jdGlvbigpe3JldHVybiBkfSkpLG4uZCh0LCJ0IiwoZnVuY3Rpb24oKXtyZXR1cm4gZ30pKSxuLmQodCwiQiIsKGZ1bmN0aW9uKCl7cmV0dXJuIFR9KSksbi5kKHQsIkgiLChmdW5jdGlvbigpe3JldHVybiBrfSkpLG4uZCh0LCJuIiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5hfSkpLG4uZCh0LCJ6IiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5lfSkpLG4uZCh0LCJPIiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5nfSkpLG4uZCh0LCJNIiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5mfSkpLG4uZCh0LCJ3IiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5jfSkpLG4uZCh0LCJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5kfSkpLG4uZCh0LCJwIiwoZnVuY3Rpb24oKXtyZXR1cm4gVS5ifSkpLG4uZCh0LCJFIiwoZnVuY3Rpb24oKXtyZXR1cm4gQy5hfSkpLG4uZCh0LCJnIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5nfSkpLG4uZCh0LCJkIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5kfSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5jfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5hfSkpLG4uZCh0LCJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5lfSkpLG4uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5mfSkpLG4uZCh0LCJoIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5ofSkpLG4uZCh0LCJqIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5qfSkpLG4uZCh0LCJrIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5rfSkpLG4uZCh0LCJpIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5pfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gbS5ifSkpLG4uZCh0LCJTIiwoZnVuY3Rpb24oKXtyZXR1cm4gQn0pKSxuLmQodCwiTiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksbi5kKHQsIkciLChmdW5jdGlvbigpe3JldHVybiBPfSkpLG4uZCh0LCJGIiwoZnVuY3Rpb24oKXtyZXR1cm4geX0pKSxuLmQodCwiWCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEF9KSksbi5kKHQsIlciLChmdW5jdGlvbigpe3JldHVybiBJfSkpLG4uZCh0LCJyIiwoZnVuY3Rpb24oKXtyZXR1cm4gUH0pKSxuLmQodCwiRCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFJ9KSksbi5kKHQsIlUiLChmdW5jdGlvbigpe3JldHVybiBsfSkpLG4uZCh0LCJQIiwoZnVuY3Rpb24oKXtyZXR1cm4gTi5hfSkpLG4uZCh0LCJxIiwoZnVuY3Rpb24oKXtyZXR1cm4gRH0pKSxuLmQodCwiVCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFd9KSksbi5kKHQsIngiLChmdW5jdGlvbigpe3JldHVybiBRfSkpLG4uZCh0LCJsIiwoZnVuY3Rpb24oKXtyZXR1cm4gWX0pKSxuLmQodCwidiIsKGZ1bmN0aW9uKCl7cmV0dXJuIEguYX0pKSxuLmQodCwiUSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGp9KSksbi5kKHQsIkEiLChmdW5jdGlvbigpe3JldHVybiBFfSkpLG4uZCh0LCJSIiwoZnVuY3Rpb24oKXtyZXR1cm4gS30pKSxuLmQodCwiQyIsKGZ1bmN0aW9uKCl7cmV0dXJuIFZ9KSksbi5kKHQsIlYiLChmdW5jdGlvbigpe3JldHVybiBHfSkpfSwyMDA6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDIpO24ucD1PYmplY3QoYS5MKSgpO24oMjU3KSxuKDI1OCk7dmFyIHM9bigxNzEpLHI9bigzOSksbz1uKDY5KTt2YXIgaT1uKDEwNyksdT1uKDEwNiksYz1uKDEwNSksaD1uKDYyKSxsPW4oNSksZD1uKDU4KSxmPW4oMzIpLHA9big0MCksYj1uKDE4MSksZz1uKDMzKTtjb25zdCBtPSJzdGF0ZSI7ZnVuY3Rpb24gdihlLHQsbixzLHIpe2NvbnN0IG89T2JqZWN0KGwuZCkoZSksaT1vW3RdIT09bjtpZihpKXtvW3RdPW4scyYmKG8uc2Vzc2lvbklkPU9iamVjdChhLk4pKCkpO2NvbnN0IGk9T2JqZWN0KGQuYSkoKXx8Im1haWwiO2xldCB1PWAke09iamVjdChmLmEpKGAvJHtpfWApfS9gO3ImJihvW21dPSIwIix1PWAke2Z1bmN0aW9uKGUpe3ZhciB0O2xldCBuPWU7Y29uc3QgYT1udWxsPT09KHQ9T2JqZWN0KHAuYikoKSl8fHZvaWQgMD09PXQ/dm9pZCAwOnQucGF0aG5hbWU7aWYoYSl7Y29uc3QgZT1hLnNwbGl0KCIvIitPYmplY3QoZC5hKSgpKyIvIilbMV07bj1PYmplY3QoZy5hKShuLGUpfXJldHVybiBPYmplY3QoZy5iKShPYmplY3QoZy5jKShuKSl9KGAvJHtpfWApfWApLGUuYXNzaWduKE9iamVjdChiLmEpKHUsbykpfXJldHVybiBpfWZ1bmN0aW9uIHcoZSl7cmV0dXJuIE9iamVjdChwLmEpKCkuYXNzaWduKGUpLCEwfXZhciBPPW4oMTg1KTtmdW5jdGlvbiB5KGUsdCxuLHMpe3ZhciByO2xldCBvPSExOyJsYW5ndHoiPT1lP289ZnVuY3Rpb24oZSl7bGV0IHQ9T2JqZWN0KGYuYSkoIi9vd2EiKSsiLyI7cmV0dXJuIkNhbGVuZGFyIj09ZXx8Ik1pbmlDYWxlbmRhciI9PWU/dCs9Ij9wYXRoPS9jYWxlbmRhciI6IlBlb3BsZSIhPWUmJiJNaW5pUGVvcGxlIiE9ZXx8KHQrPSI/cGF0aD0vcGVvcGxlIiksdyh0KX0oT2JqZWN0KGEubSkoKSk6ImVycm9yZmUiPT1lJiYobnVsbD09PShyPXQucmVzcG9uc2UpfHx2b2lkIDA9PT1yP3ZvaWQgMDpyLnVybCk/bz13KHQucmVzcG9uc2UudXJsKToiYXV0aCI9PWUmJihvPXYobG9jYXRpb24sImF1dGhSZWRpcmVjdCIsInRydWUiLHZvaWQgMCwhMCkpLG98fChudWxsPT1zfHxzKCksT2JqZWN0KE8uYSkoZSxuLHQpKX12YXIgQT1uKDE3MCk7dmFyIEk9bigyNyk7ZnVuY3Rpb24gRSgpe3RyeXtpZigiY2FjaGVzImluIHNlbGYmJiJmdW5jdGlvbiI9PXR5cGVvZiBzZWxmLmNhY2hlcy5rZXlzKXtjb25zdCBlPXNlbGYuY2FjaGVzLmtleXMoKTtpZihlJiYiZnVuY3Rpb24iPT10eXBlb2YgZS50aGVuKXJldHVybiBlLmNhdGNoKCgpPT5bXSl9fWNhdGNoKGUpe31yZXR1cm4gbnVsbH12YXIgaj1uKDIxKTthc3luYyBmdW5jdGlvbiBUKGUsdCxuKXtpZihPYmplY3QobC5mKSgiYk8iKSlyZXR1cm47Y29uc3QgYT1hd2FpdCB0LHM9YXdhaXQgZTtpZigibnVtYmVyIj09dHlwZW9mIGEmJihudWxsPT1zP3ZvaWQgMDpzLmN1cnJlbnRFcG9jaEluTXMpJiZzLmN1cnJlbnRFcG9jaEluTXM+YSl0aHJvdyBPYmplY3Qoai5hKSgiY2VpbSIscy5jdXJyZW50RXBvY2hJbk1zKSxPYmplY3Qoai5hKSgiZXhwaXJhdGlvbkRhdGUiLGEpLG4mJmFzeW5jIGZ1bmN0aW9uKGUpe2NvbnN0IHQ9RSgpO2lmKCF0KXJldHVybiBudWxsO2NvbnN0IG49YXdhaXQgdDtPYmplY3Qoai5hKSgiZGVsQ2FjaGVzIixuLmpvaW4oInwiKSksUHJvbWlzZS5hbGwobi5maWx0ZXIodD0+MD09dC5pbmRleE9mKGUpKS5tYXAoZT0+c2VsZi5jYWNoZXMuZGVsZXRlKGUpKSkuY2F0Y2goKCk9Pnt9KX0obiksT2JqZWN0KEkuYSkobmV3IEVycm9yKCJFeHBpcmVkQnVpbGQiKSwiRXhwaXJlZEJ1aWxkIil9dmFyIGs9bigxNCksVT1uKDE1KSxDPW4oMTApLFM9bigxODIpO2NvbnN0IEI9T2JqZWN0KFUuZykoKGFzeW5jIGZ1bmN0aW9uKGUpe2lmKCFlKXJldHVybiBPYmplY3Qoai5hKSgiZm1lIiwibnAiKSxudWxsO2NvbnN0IHQ9RSgpO2lmKCF0KXJldHVybiBPYmplY3Qoai5hKSgiZm1lIiwibmsiKSxudWxsO2NvbnN0IG49KGF3YWl0IHQpLmZpbHRlcih0PT50LmluZGV4T2YoZSk+LTEpO2lmKG4ubGVuZ3RoPDEpcmV0dXJuIE9iamVjdChqLmEpKCJmbWUiLCJuYyIpLG51bGw7Y29uc3Qgcz1PYmplY3QoYS51KSgpO2Zvcihjb25zdCBlIG9mIG4pe2NvbnN0IHQ9ZS5zcGxpdCgiXyIpO2lmKDM9PXQubGVuZ3RoJiZzPT10WzFdKXtjb25zdCBlPXBhcnNlSW50KHRbMl0pO2lmKCFpc05hTihlKSlyZXR1cm4gT2JqZWN0KGouYSkoImZtZSIsImNuIiksZSsyNTkyZTZ9fXJldHVybiBPYmplY3Qoai5hKSgiZm1lIiwibiIpLG51bGx9KSwiZm1lIik7dmFyIE09big0KTtsZXQgeDtmdW5jdGlvbiBQKGUpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdDt0cnl7eD1EYXRlLm5vdygpLE9iamVjdChrLmspKGUuYXBwKSxPYmplY3QoUy5iKSghIWUuaXNEZWVwTGluayksci5iKGUuc3RhcnR1cEFyaWFUb2tlbik7Y29uc3Qgbj1udWxsPT09KHQ9ZS5ydW5CZWZvcmVTdGFydCl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuY2FsbChlLGUpLmNhdGNoKGU9Pnt0aHJvdyBlLnNvdXJjZXx8KGUuc291cmNlPSJCZWZvcmVCb290IiksZX0pO09iamVjdChDLmIpKHtiYXNlVXJsOk9iamVjdChmLmEpKE9iamVjdChhLkgpKCkpfSk7Y29uc3Qgbz1lLm92ZXJyaWRlQm9vdFByb21pc2VzfHwoKCk9Pk9iamVjdChzLmEpKGUpKTtsZXQgaT1uP24udGhlbihvKTpvKCk7Y29uc3QgdT1PYmplY3QoVS5nKSgoKT0+ZS5ib290c3RyYXAuaW1wb3J0KCksIm1qcyIpKCksYz1lLmNhY2hlc1RvQ2xlYW4saD1be3Byb21pc2U6aSxrZXk6InNkIn0se3Byb21pc2U6VChpLEIoYyksYyksa2V5OiJ2YyJ9LHtwcm9taXNlOnUsa2V5OiJqcyJ9XTtsZXQgbD1Qcm9taXNlLnJlc29sdmUoKTtjb25zdCBkPU9iamVjdChhLkcpKCkscD1lLnN0cmF0ZWdpZXMsYj1lLm9wdGlvbnM7YiYmKGgucHVzaCh7cHJvbWlzZTpPYmplY3QoVS5nKSgoKT0+Yi5pbXBvcnQoKSwib2pzIikoKSxrZXk6Im9qcyJ9KSxsPVByb21pc2UuYWxsKFtiLmltcG9ydCgpLGR8fFByb21pc2UucmVzb2x2ZSgpXSkudGhlbigoW2VdKT0+ZShpLHApKSk7Y29uc3QgZz1bdSxsXTtpZihkJiZnLnB1c2goZCksaC5wdXNoKHtwcm9taXNlOlByb21pc2UuYWxsKGcpLnRoZW4oKFtlLHRdKT0+e3RyeXtyZXR1cm4gZS5hcHBseShudWxsLHQ/W3RdOltpLHBdKX1jYXRjaChlKXt0aHJvdyBPYmplY3QoSS5hKShlLCJCb290c3RyYXAiKX19KS5jYXRjaChlPT57dGhyb3cgT2JqZWN0KEkuYSkoZSwiU2NyaXB0Iil9KSxrZXk6bnVsbH0pLGUucnVuQWZ0ZXJSZXF1ZXN0cyYmZS5ydW5BZnRlclJlcXVlc3RzKGkpLGUuc3RyYXRlZ2llcylmb3IobGV0IHQgb2YgT2JqZWN0LmtleXMoZS5zdHJhdGVnaWVzKSl7Y29uc3Qgbj1lLnN0cmF0ZWdpZXNbdF07biYmbi5pbXBvcnQoKX1yZXR1cm4gT2JqZWN0KFUuaikoInN0YXJ0IixoKX1jYXRjaChlKXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoT2JqZWN0KEkuYSkoZSwiUHJlYm9vdCIpKX19KGUpLnRoZW4oKCk9Pnt2YXIgdDt0cnl7IWZ1bmN0aW9uKGUpe3ZhciB0O2xldCBuPShudWxsPT09KHQ9d2luZG93LnBlcmZvcm1hbmNlKXx8dm9pZCAwPT09dD92b2lkIDA6dC5ub3cpJiZ7c3RhcnQ6ZSxwbHQ6TWF0aC5mbG9vcih3aW5kb3cucGVyZm9ybWFuY2Uubm93KCkpfTtyLmEoT2JqZWN0KG8uYSkoIm9rIix2b2lkIDAsbikpfSh4KTtjb25zdCBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2FkaW5nU2NyZWVuIik7biYmbi5wYXJlbnROb2RlPT1kb2N1bWVudC5ib2R5JiYoT2JqZWN0KFUuYSkoImxzX2UiKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKG4pKSxudWxsPT09KHQ9ZS5vbkxvYWRlclJlbW92ZWQpfHx2b2lkIDA9PT10fHx0LmNhbGwoZSksT2JqZWN0KE0uaSkoKX1jYXRjaChlKXt0aHJvdyBPYmplY3QoSS5hKShlLCJCb290Q29tcGxldGUiKX19KS5jYXRjaCh0PT57IWZ1bmN0aW9uKGUsdCl7dmFyIG47Y29uc3QgYT1PYmplY3QoaC5hKShlKTtsZXQgcz1PYmplY3QoYy5hKShlLGEsdCk7Y29uc3QgbD0obnVsbD09PShuPXQub3ZlcnJpZGVSZXRyeVN0cmF0ZWd5KXx8dm9pZCAwPT09bj92b2lkIDA6bi5jYWxsKHQscykpfHxPYmplY3QoaS5hKShzLGEuZXNyYywhMCk7bCYmKHM9InJldHJ5Iiksci5hKE9iamVjdChvLmEpKHMsYSx2b2lkIDAsZSksbD92b2lkIDA6dS5hKS50aGVuKCgpPT57bCYmT2JqZWN0KEEuYikobCl8fCh0LmhhbmRsZUJvb3RFcnJvcnx8eSkocyxlLGEsdC5vbkZhdGFsQm9vdEVycm9yKX0pfSh0LGUpfSl9dmFyIFI9big5MCksTj1uKDQ2KSxMPW4oOSksRD1uKDExOSksRj1uKDUyKSxXPW4oMTk2KTtjb25zdCBRPW5ldyBNLmIoKCk9Pm4uZSgxOTUpLnRoZW4obi5iaW5kKG51bGwsMTkxNjUpKSksWT1uZXcgTS5jKFEsZT0+ZS5tZWRpdW1EZW5zaXR5KSxIPW5ldyBNLmIoKCk9Pm4uZSgxNzkpLnRoZW4obi5iaW5kKG51bGwsMTkxNjYpKSksSz1uZXcgTS5jKEgsZT0+ZS5jb21wYWN0RGVuc2l0eSk7dmFyIHo9bigxMDApLFY9bigxOTcpLEc9bigxMzYpLEo9bigxOTgpO2NvbnN0IFo9bmV3IE0uYigoKT0+bi5lKDE4NSkudGhlbihuLmJpbmQobnVsbCwxOTE2NykpKSxxPW5ldyBNLmMoWixlPT5lLmxvY2FsU3RhdGVSZXNvbHZlcnMpLFg9ImxzIixfPSJvd2FfZGVuc2l0eSIsJD0ic3RhcnQiO2Z1bmN0aW9uIGVlKGUpe2lmKE9iamVjdChhLlEpKCkpe2NvbnN0IHQ9ZS5ydW5CZWZvcmVTdGFydDtlLnJ1bkJlZm9yZVN0YXJ0PWU9PnouaC5pbXBvcnQoKS50aGVuKG49PihPYmplY3QoQy5iKSh7Z2V0QXV0aFRva2VuOm59KSx6LmkuaW1wb3J0QW5kRXhlY3V0ZSgpLG51bGw9PXQ/dm9pZCAwOnQoZSkpKX1yZXR1cm4gUChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sZSkse3J1bkFmdGVyUmVxdWVzdHM6dD0+e3ZhciBuO09iamVjdChHLmEpKCk/Si5hLmltcG9ydCgpOlYuYS5pbXBvcnQoKSxxLmltcG9ydCgpO3ZhciBhPU9iamVjdChMLmEpKHdpbmRvdyxOLmEuTE9DQUxfU1RPUkFHRV9LRVkpO2EmJk9iamVjdChOLmIpKGEsWCksT2JqZWN0KFIuZCkoWCksZS5sb2FkQnBvcyYmIU9iamVjdChDLmEpKCkuZGlzYWJsZUFsbFJlcXVlc3RzJiYoT2JqZWN0KEYuYikoKT9PYmplY3QoRC5iKSgkLGUuYXBwLCEwKTp0LnRoZW4oKCk9Pk9iamVjdChELmIpKCQsZS5hcHApKSk7Y29uc3Qgcz1PYmplY3QoTC5hKSh3aW5kb3csXyk7cyYmZnVuY3Rpb24oZSl7cmV0dXJuIkNvbXBhY3QiPT09ZT9LOiJTaW1wbGUiPT09ZT9ZOlcuYX0ocykuaW1wb3J0KCksdC50aGVuKGU9Pnt2YXIgdCxuO09iamVjdChSLmQpKCJzZCIpO2NvbnN0IGE9bnVsbD09PShuPW51bGw9PT0odD1udWxsPT1lP3ZvaWQgMDplLm93YVVzZXJDb25maWcpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LlVzZXJPcHRpb25zKXx8dm9pZCAwPT09bj92b2lkIDA6bi5EaXNwbGF5RGVuc2l0eU1vZGU7YSYmT2JqZWN0KEwuZSkod2luZG93LF8sYSl9KSxudWxsPT09KG49ZS5ydW5BZnRlclJlcXVlc3RzKXx8dm9pZCAwPT09bnx8bi5jYWxsKGUsdCl9fSkpfW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gZWV9KSl9LDIxOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiB1fSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKTt2YXIgYT1uKDEzKSxzPW4oMzApLHI9bigxNCk7Y29uc3Qgbz1bIlgtQ2FsY3VsYXRlZEJFVGFyZ2V0IiwiWC1PV0EtQ29ycmVsYXRpb25JZCIsIlgtTVNFZGdlLVJlZiIsImNvbnRlbnQtZW5jb2RpbmciLCJjb250ZW50LWxlbmd0aCIsImNvbnRlbnQtdHlwZSIsIlgtT1dBLVZlcnNpb24iLCJYLU9XQUVycm9yTWVzc2FnZUlEIiwieC1kaWFnaW5mbyIsIngtYmVza3UiLCJ4LW93YS1kaWFnbm9zdGljc2luZm8iXTtsZXQgaT0iIjtmdW5jdGlvbiB1KGUsdCl7dmFyIG47bGV0IHU9YCZ2bT10cnVlJnNwPSR7T2JqZWN0KHIuaikoKX1gO2UmJih1Kz1gJmVoaz0ke2UuZWhrfSZtc2c9JHtlLmVtc2d9YCk7Y29uc3QgYz1PYmplY3QoYS5iKSgiYm9vdEZsaWdodHMiKTtpZihjJiYodSs9IiZiZj0iK2MpLHQpe3UrPSImcmVxPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQudXJsKTtmb3IobGV0IGU9MDtlPG8ubGVuZ3RoO2UrKyl7Y29uc3Qgbj1vW2VdLGE9T2JqZWN0KHMuYSkodCxuKTthJiYodSs9YCYke259PSR7YX1gKX11Kz0iJnJ0PSIrdC50eXBlfWNvbnN0IGg9bnVsbD09PShuPXdpbmRvdy5wZXJmb3JtYW5jZSl8fHZvaWQgMD09PW4/dm9pZCAwOm4ubmF2aWdhdGlvbjtyZXR1cm4gaCYmKHUrPWAmbnQ9JHtoLnR5cGV9YCksdStpfWZ1bmN0aW9uIGMoZSx0KXtpKz1gJiR7ZX09JHt0fWB9fSwyMzg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIGE9bigxMjUpLHM9bigyMzkpLHI9bigxNzcpLG89bigxNzgpLGk9L15bYS16QS1aMC05XShbYS16QS1aMC05XXxfKXsyLDk4fVthLXpBLVowLTldJC8sdT0vXC4vZyxjPS9eW2EtekEtWjAtOV0oKFthLXpBLVowLTl8X3xcLl0pezAsOTh9W2EtekEtWjAtOV0pPyQvLGg9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLmluaXRpYWxpemU9ZnVuY3Rpb24oZSx0KXtpZih2b2lkIDA9PT10JiYodD17fSksdGhpcy5faXNJbml0aWFsaXplZCl0aHJvdyJBbHJlYWR5IEluaXRpYWxpemVkIjt0aGlzLl9kZWZhdWx0VGVuYW50VG9rZW49ZSx0aGlzLl9vdmVycmlkZVZhbHVlc0Zyb21Db25maWcodCkscy5kZWZhdWx0LmluaXRpYWxpemUodGhpcy5fY29uZmlnKSx0aGlzLl9pc0luaXRpYWxpemVkPSEwfSxlLmZsdXNoPWZ1bmN0aW9uKGUpe3RoaXMuX2lzSW5pdGlhbGl6ZWQmJiF0aGlzLl9pc0Rlc3Ryb3llZCYmcy5kZWZhdWx0LmZsdXNoKGUpfSxlLmZsdXNoQW5kVGVhcmRvd249ZnVuY3Rpb24oKXt0aGlzLl9pc0luaXRpYWxpemVkJiYhdGhpcy5faXNEZXN0cm95ZWQmJih0aGlzLl9pc0Rlc3Ryb3llZD0hMCxzLmRlZmF1bHQuZmx1c2hBbmRUZWFyZG93bigpKX0sZS5zZXRDb250ZXh0PWZ1bmN0aW9uKGUsdCxuKXt2b2lkIDA9PT1uJiYobj0iYWxsVGtucyIpLG51bGwhPT0odD10aGlzLl9zYW5pdGl6ZVByb3BlcnR5KGUsdCkpJiYodGhpcy5fY29udGV4dFByb3BlcnRpZXNbbl18fCh0aGlzLl9jb250ZXh0UHJvcGVydGllc1tuXT17fSksdGhpcy5fY29udGV4dFByb3BlcnRpZXNbbl1bZV09dCl9LGUubG9nRXZlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztpZih0aGlzLl9pc0luaXRpYWxpemVkKXtpZighZS5uYW1lfHwhZS5wcm9wZXJ0aWVzKXJldHVybjtlLm5hbWU9ZS5uYW1lLnRvTG93ZXJDYXNlKCksZS5uYW1lLnJlcGxhY2UodSwiXyIpO3ZhciBuPSIiO2lmKGUudHlwZT8oZS50eXBlLnRvTG93ZXJDYXNlKCksbj0iY3VzdG9tLiIpOmUudHlwZT0iY3VzdG9tIiwhaS50ZXN0KGUubmFtZSl8fCFpLnRlc3QoZS50eXBlKSlyZXR1cm47aWYoZS50eXBlPW4rZS50eXBlLGlzTmFOKGUudGltZXN0YW1wKSYmKGUudGltZXN0YW1wPShuZXcgRGF0ZSkuZ2V0VGltZSgpKSxlLnRlbmFudFRva2VufHwoZS50ZW5hbnRUb2tlbj10aGlzLl9kZWZhdWx0VGVuYW50VG9rZW4pLGUuaWQ9ci5uZXdHdWlkKCksT2JqZWN0LmtleXMoZS5wcm9wZXJ0aWVzKS5mb3JFYWNoKChmdW5jdGlvbihuKXtlLnByb3BlcnRpZXNbbl09dC5fc2FuaXRpemVQcm9wZXJ0eShuLGUucHJvcGVydGllc1tuXSksbnVsbD09PWUucHJvcGVydGllc1tuXSYmZGVsZXRlIGUucHJvcGVydGllc1tuXX0pKSx0aGlzLl9hZGRDb250ZXh0SWZBYnNlbnQoZSxlLnRlbmFudFRva2VuKSx0aGlzLl9hZGRDb250ZXh0SWZBYnNlbnQoZSwiYWxsVGtucyIpLDA9PT1PYmplY3Qua2V5cyhlLnByb3BlcnRpZXMpLmxlbmd0aClyZXR1cm47dGhpcy5fc2V0RGVmYXVsdFByb3BlcnR5KGUsIkV2ZW50SW5mby5Jbml0SWQiLHRoaXMuX2dldEluaXRJZChlLnRlbmFudFRva2VuKSksdGhpcy5fc2V0RGVmYXVsdFByb3BlcnR5KGUsIkV2ZW50SW5mby5TZXF1ZW5jZSIsdGhpcy5fZ2V0U2VxdWVuY2VJZChlLnRlbmFudFRva2VuKSksdGhpcy5fc2V0RGVmYXVsdFByb3BlcnR5KGUsIkV2ZW50SW5mby5TZGtWZXJzaW9uIixvLkZ1bGxWZXJzaW9uU3RyaW5nKSx0aGlzLl9zZXREZWZhdWx0UHJvcGVydHkoZSwiRXZlbnRJbmZvLk5hbWUiLGUubmFtZSksdGhpcy5fc2V0RGVmYXVsdFByb3BlcnR5KGUsIkV2ZW50SW5mby5UaW1lIixuZXcgRGF0ZShlLnRpbWVzdGFtcCkudG9JU09TdHJpbmcoKSkscy5kZWZhdWx0LnNlbmRFdmVudChlKX19LGUuX292ZXJyaWRlVmFsdWVzRnJvbUNvbmZpZz1mdW5jdGlvbihlKXtlLmNvbGxlY3RvclVybCYmKHRoaXMuX2NvbmZpZy5jb2xsZWN0b3JVcmw9ZS5jb2xsZWN0b3JVcmwpLGUuc2VuZGluZ1RpbWVyPjFlMyYmKHRoaXMuX2NvbmZpZy5zZW5kaW5nVGltZXI9ZS5zZW5kaW5nVGltZXIpfSxlLl9nZXRJbml0SWQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMD09PXRoaXMuX2luaXRJZE1hcFtlXSYmKHRoaXMuX2luaXRJZE1hcFtlXT1yLm5ld0d1aWQoKSksdGhpcy5faW5pdElkTWFwW2VdfSxlLl9nZXRTZXF1ZW5jZUlkPWZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT10aGlzLl9zZXF1ZW5jZUlkTWFwW2VdJiYodGhpcy5fc2VxdWVuY2VJZE1hcFtlXT0wKSwoKyt0aGlzLl9zZXF1ZW5jZUlkTWFwW2VdKS50b1N0cmluZygpfSxlLl9zZXREZWZhdWx0UHJvcGVydHk9ZnVuY3Rpb24oZSx0LG4pe2UucHJvcGVydGllc1t0XT17dmFsdWU6bixwaWk6YS5BV1RQaWlLaW5kLk5vdFNldH19LGUuX2FkZENvbnRleHRJZkFic2VudD1mdW5jdGlvbihlLHQpe2lmKHRoaXMuX2NvbnRleHRQcm9wZXJ0aWVzW3RdKXt2YXIgbj10aGlzLl9jb250ZXh0UHJvcGVydGllc1t0XTtPYmplY3Qua2V5cyhuKS5mb3JFYWNoKChmdW5jdGlvbih0KXtlLnByb3BlcnRpZXNbdF18fChlLnByb3BlcnRpZXNbdF09blt0XSl9KSl9fSxlLl9zYW5pdGl6ZVByb3BlcnR5PWZ1bmN0aW9uKGUsdCl7cmV0dXJuInN0cmluZyIhPXR5cGVvZiB0JiYibnVtYmVyIiE9dHlwZW9mIHQmJiJib29sZWFuIiE9dHlwZW9mIHR8fCh0PXt2YWx1ZTp0fSksYy50ZXN0KGUpJiZudWxsIT10JiZudWxsIT09dC52YWx1ZSYmdm9pZCAwIT09dC52YWx1ZSYmIiIhPT10LnZhbHVlPyh2b2lkIDA9PT10LnBpaSYmKHQucGlpPWEuQVdUUGlpS2luZC5Ob3RTZXQpLHQudmFsdWU9dC52YWx1ZS50b1N0cmluZygpLHIuaXNQaWkodC5waWkpP3Q6bnVsbCk6bnVsbH0sZS5faXNJbml0aWFsaXplZD0hMSxlLl9pc0Rlc3Ryb3llZD0hMSxlLl9jb250ZXh0UHJvcGVydGllcz17fSxlLl9zZXF1ZW5jZUlkTWFwPXt9LGUuX2luaXRJZE1hcD17fSxlLl9jb25maWc9e2NvbGxlY3RvclVybDoiaHR0cHM6Ly9icm93c2VyLnBpcGUuYXJpYS5taWNyb3NvZnQuY29tL0NvbGxlY3Rvci8zLjAvIixzZW5kaW5nVGltZXI6MWUzfSxlfSgpO3QuZGVmYXVsdD1ofSwyMzk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIGE9bigyNDApLHM9bigxNzYpLHI9bigyNDUpLG89bigyNDYpLGk9bigxNzgpLHU9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLmluaXRpYWxpemU9ZnVuY3Rpb24oZSl7dGhpcy5faW5ib3VuZFF1ZXVlcy5wdXNoKFtdKSx0aGlzLl9yZWNvcmRCYXRjaGVyPW5ldyBhLmRlZmF1bHQoMjkzNjAxMix0aGlzLl9vdXRib3VuZFF1ZXVlKSx0aGlzLl9uZXdFdmVudHNBbGxvd2VkPSEwLCJ1bmRlZmluZWQiPT10eXBlb2YgVWludDhBcnJheSYmKHRoaXMuX3VybFN0cmluZys9IiZjb250ZW50LWVuY29kaW5nPWJhc2U2NCIpLHRoaXMuX3NlbmRpbmdUaW1lcj1lLnNlbmRpbmdUaW1lcix0aGlzLl91cmxTdHJpbmc9ZS5jb2xsZWN0b3JVcmwrdGhpcy5fdXJsU3RyaW5nKyImeC1hcGlrZXk9In0sZS5zZW5kRXZlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLl9uZXdFdmVudHNBbGxvd2VkJiYodGhpcy5faW5ib3VuZFF1ZXVlc1t0aGlzLl9pbmJvdW5kUXVldWVzLmxlbmd0aC0xXS5wdXNoKGUpLCF0aGlzLl9ydW5uaW5nJiZ0aGlzLl90aW1lb3V0PDAmJiF0aGlzLl9pc0N1cnJlbnRseUZsdXNoaW5nJiYodGhpcy5fdGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiB0Ll9iYXRjaEFuZFNlbmRFdmVudHMoITEpfSksdGhpcy5fc2VuZGluZ1RpbWVyKSkpfSxlLmZsdXNoQW5kVGVhcmRvd249ZnVuY3Rpb24oKXt0aGlzLl9uZXdFdmVudHNBbGxvd2VkPSExLHRoaXMuX2JhdGNoQW5kU2VuZEV2ZW50cyghMCl9LGUuZmx1c2g9ZnVuY3Rpb24oZSl7dGhpcy5faW5ib3VuZFF1ZXVlcy5wdXNoKFtdKSx0aGlzLl9pc0N1cnJlbnRseUZsdXNoaW5nP3RoaXMuX2ZsdXNoUXVldWUucHVzaChlKToodGhpcy5faXNDdXJyZW50bHlGbHVzaGluZz0hMCx0aGlzLl9mbHVzaChlKSl9LGUuX2JhdGNoQW5kU2VuZEV2ZW50cz1mdW5jdGlvbihlKXtmb3IodGhpcy5fcnVubmluZz0hMDt0aGlzLl9pbmJvdW5kUXVldWVzWzBdLmxlbmd0aD4wJiZ0aGlzLl9vdXRib3VuZFF1ZXVlLmxlbmd0aDwxOyl0aGlzLl9yZWNvcmRCYXRjaGVyLmFkZEV2ZW50VG9CYXRjaCh0aGlzLl9pbmJvdW5kUXVldWVzWzBdLnBvcCgpKTswPT09dGhpcy5fb3V0Ym91bmRRdWV1ZS5sZW5ndGgmJnRoaXMuX3JlY29yZEJhdGNoZXIuZmx1c2hCYXRjaCgpLHRoaXMuX3NlbmRSZXF1ZXN0KHRoaXMuX291dGJvdW5kUXVldWUucG9wKCksMCxlKX0sZS5fcmV0cnlSZXF1ZXN0SWZOZWVkZWQ9ZnVuY3Rpb24oZSx0LG4sYSxzKXt2YXIgbz10aGlzLGk9ITA7ZSYmdm9pZCAwIT09ZS5zdGF0dXMmJih0aGlzLl9raWxsU3dpdGNoLnNldEtpbGxTd2l0Y2hUZW5hbnRzKGUuZ2V0UmVzcG9uc2VIZWFkZXIoImtpbGwtdG9rZW5zIiksZS5nZXRSZXNwb25zZUhlYWRlcigia2lsbC1kdXJhdGlvbi1zZWNvbmRzIikpLmZvckVhY2goKGZ1bmN0aW9uKGUpe2RlbGV0ZSB0W2VdLG4tLX0pKSwoIXIuZGVmYXVsdC5zaG91bGRSZXRyeUZvclN0YXR1cyhlLnN0YXR1cyl8fG48PTApJiYoaT0hMSkpO2kmJnM8ND9zZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiBvLl9zZW5kUmVxdWVzdCh0LHMrMSwhMSl9KSxyLmRlZmF1bHQuZ2V0TWlsbGlzVG9CYWNrb2ZmRm9yUmV0cnkocykpOnRoaXMuX2hhbmRsZVJlcXVlc3RGaW5pc2hlZChudWxsKX0sZS5fc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oZSx0LG4pe3ZhciBhPXRoaXM7dHJ5e3ZhciByPW5ldyBYTUxIdHRwUmVxdWVzdCxvPTAsaT0iIjtpZihPYmplY3Qua2V5cyhlKS5mb3JFYWNoKChmdW5jdGlvbih0KXthLl9raWxsU3dpdGNoLmlzVGVuYW50S2lsbGVkKHQpP2RlbGV0ZSBlW3RdOihpLmxlbmd0aD4wJiYoaSs9IiwiKSxpKz10LG8rKyl9KSksci5vcGVuKCJQT1NUIix0aGlzLl91cmxTdHJpbmcraSwhbiksbnx8KHIub250aW1lb3V0PWZ1bmN0aW9uKCl7YS5fcmV0cnlSZXF1ZXN0SWZOZWVkZWQocixlLG8saSx0KX0sci5vbmVycm9yPWZ1bmN0aW9uKCl7YS5fcmV0cnlSZXF1ZXN0SWZOZWVkZWQocixlLG8saSx0KX0sci5vbmxvYWQ9ZnVuY3Rpb24oKXthLl9oYW5kbGVSZXF1ZXN0RmluaXNoZWQocil9KSxvPjApe3ZhciB1PXMuZGVmYXVsdC5nZXRQYXlsb2FkQmxvYihlLG8pOyJ1bmRlZmluZWQiPT10eXBlb2YgVWludDhBcnJheT9yLnNlbmQocy5kZWZhdWx0LmJhc2U2NEVuY29kZSh1KSk6ci5zZW5kKG5ldyBVaW50OEFycmF5KHUpKX1lbHNlIG4mJnRoaXMuX2hhbmRsZVJlcXVlc3RGaW5pc2hlZChudWxsKX1jYXRjaChlKXt0aGlzLl9oYW5kbGVSZXF1ZXN0RmluaXNoZWQobnVsbCl9fSxlLl9oYW5kbGVSZXF1ZXN0RmluaXNoZWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztlJiZ0aGlzLl9raWxsU3dpdGNoLnNldEtpbGxTd2l0Y2hUZW5hbnRzKGUuZ2V0UmVzcG9uc2VIZWFkZXIoImtpbGwtdG9rZW5zIiksZS5nZXRSZXNwb25zZUhlYWRlcigia2lsbC1kdXJhdGlvbi1zZWNvbmRzIikpLHRoaXMuX2luYm91bmRRdWV1ZXNbMF0ubGVuZ3RoPjA/dGhpcy5fdGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiB0Ll9iYXRjaEFuZFNlbmRFdmVudHMoITEpfSksdGhpcy5fc2VuZGluZ1RpbWVyKToodGhpcy5fdGltZW91dD0tMSx0aGlzLl9ydW5uaW5nPSExKX0sZS5fZmx1c2g9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLl9ydW5uaW5nfHwodGhpcy5fdGltZW91dD4tMSYmKGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KSx0aGlzLl90aW1lb3V0PS0xKSx0aGlzLl9pbmJvdW5kUXVldWVzWzBdLmxlbmd0aD4wJiZ0aGlzLl9iYXRjaEFuZFNlbmRFdmVudHMoITEpKSx0aGlzLl9jaGVja1ByaW1hcnlJbmJvdW5kUXVldWVFbXB0eSgoZnVuY3Rpb24oKXt0Ll9pbmJvdW5kUXVldWVzLnNoaWZ0KCksbnVsbCE9ZSYmZSgpLHQuX2ZsdXNoUXVldWUubGVuZ3RoPjA/c2V0VGltZW91dCgoZnVuY3Rpb24oKXtyZXR1cm4gdC5fZmx1c2godC5fZmx1c2hRdWV1ZS5zaGlmdCgpKX0pLHQuX3NlbmRpbmdUaW1lcik6KHQuX2lzQ3VycmVudGx5Rmx1c2hpbmc9ITEsdC5faW5ib3VuZFF1ZXVlc1swXS5sZW5ndGg+MCYmKHQuX3RpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtyZXR1cm4gdC5fYmF0Y2hBbmRTZW5kRXZlbnRzKCExKX0pLHQuX3NlbmRpbmdUaW1lcikpKX0pKX0sZS5fY2hlY2tQcmltYXJ5SW5ib3VuZFF1ZXVlRW1wdHk9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczswPT09dGhpcy5faW5ib3VuZFF1ZXVlc1swXS5sZW5ndGg/dGhpcy5fY2hlY2tPdXRib3VuZFF1ZXVlRW1wdHlBbmRTZW50KGUpOnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7cmV0dXJuIHQuX2NoZWNrUHJpbWFyeUluYm91bmRRdWV1ZUVtcHR5KGUpfSksMjUwKX0sZS5fY2hlY2tPdXRib3VuZFF1ZXVlRW1wdHlBbmRTZW50PWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7dGhpcy5fcnVubmluZz9zZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiB0Ll9jaGVja091dGJvdW5kUXVldWVFbXB0eUFuZFNlbnQoZSl9KSwyNTApOmUoKX0sZS5fb3V0Ym91bmRRdWV1ZT1bXSxlLl9pbmJvdW5kUXVldWVzPVtdLGUuX25ld0V2ZW50c0FsbG93ZWQ9ITEsZS5fa2lsbFN3aXRjaD1uZXcgby5kZWZhdWx0LGUuX2lzQ3VycmVudGx5Rmx1c2hpbmc9ITEsZS5fZmx1c2hRdWV1ZT1bXSxlLl9ydW5uaW5nPSExLGUuX3RpbWVvdXQ9LTEsZS5fdXJsU3RyaW5nPSI/cXNwPXRydWUmY29udGVudC10eXBlPWFwcGxpY2F0aW9uJTJGYm9uZC1jb21wYWN0LWJpbmFyeSZjbGllbnQtaWQ9Tk9fQVVUSCZzZGstdmVyc2lvbj0iK2kuRnVsbFZlcnNpb25TdHJpbmcsZX0oKTt0LmRlZmF1bHQ9dX0sMjQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuISF0JiZlLnNvbWUoZT0+dC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZS50b0xvd2VyQ2FzZSgpKT4tMSl9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBhfSkpfSwyNDA6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIGE9bigxNzYpLHM9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCl7dGhpcy5fbWF4UmVxdWVzdFNpemU9ZSx0aGlzLl9vdXRib3VuZFF1ZXVlPXQsdGhpcy5fY3VycmVudEJhdGNoPXt9LHRoaXMuX2N1cnJlbnRCYXRjaFNpemU9MH1yZXR1cm4gZS5wcm90b3R5cGUuYWRkRXZlbnRUb0JhdGNoPWZ1bmN0aW9uKGUpe3ZhciB0PWEuZGVmYXVsdC5nZXRFdmVudEJsb2IoZSk7dC5sZW5ndGg+dGhpcy5fbWF4UmVxdWVzdFNpemV8fCh0aGlzLl9jdXJyZW50QmF0Y2hTaXplK3QubGVuZ3RoPnRoaXMuX21heFJlcXVlc3RTaXplP3RoaXMuZmx1c2hCYXRjaCgpOih2b2lkIDA9PT10aGlzLl9jdXJyZW50QmF0Y2hbZS50ZW5hbnRUb2tlbl0mJih0aGlzLl9jdXJyZW50QmF0Y2hbZS50ZW5hbnRUb2tlbl09W10pLHRoaXMuX2N1cnJlbnRCYXRjaFtlLnRlbmFudFRva2VuXS5wdXNoKHQpLHRoaXMuX2N1cnJlbnRCYXRjaFNpemUrPXQubGVuZ3RoKSl9LGUucHJvdG90eXBlLmZsdXNoQmF0Y2g9ZnVuY3Rpb24oKXt0aGlzLl9jdXJyZW50QmF0Y2hTaXplPjAmJih0aGlzLl9vdXRib3VuZFF1ZXVlLnB1c2godGhpcy5fY3VycmVudEJhdGNoKSx0aGlzLl9jdXJyZW50QmF0Y2g9e30sdGhpcy5fY3VycmVudEJhdGNoU2l6ZT0wKX0sZX0oKTt0LmRlZmF1bHQ9c30sMjQxOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBhPW4oMjQyKTt0LkJvbmREYXRhVHlwZT1hLkJvbmREYXRhVHlwZTt2YXIgcz1uKDI0Myk7dC5FbmNvZGluZz1zO3ZhciByPW4oMjQ0KTt0LklPPXI7dmFyIG89big5NSk7dC5JbnQ2ND1vLkludDY0LHQuVUludDY0PW8uVUludDY0LHQuTnVtYmVyPW8uTnVtYmVyO3ZhciBpPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlKXt0aGlzLl9zdHJlYW09ZX1yZXR1cm4gZS5wcm90b3R5cGUuV3JpdGVCbG9iPWZ1bmN0aW9uKGUpe3RoaXMuX3N0cmVhbS5Xcml0ZShlLDAsZS5sZW5ndGgpfSxlLnByb3RvdHlwZS5Xcml0ZUNvbnRhaW5lckJlZ2luPWZ1bmN0aW9uKGUsdCl7dGhpcy5Xcml0ZVVJbnQ4KHQpLHRoaXMuV3JpdGVVSW50MzIoZSl9LGUucHJvdG90eXBlLldyaXRlTWFwQ29udGFpbmVyQmVnaW49ZnVuY3Rpb24oZSx0LG4pe3RoaXMuV3JpdGVVSW50OCh0KSx0aGlzLldyaXRlVUludDgobiksdGhpcy5Xcml0ZVVJbnQzMihlKX0sZS5wcm90b3R5cGUuV3JpdGVGaWVsZEJlZ2luPWZ1bmN0aW9uKGUsdCl7dDw9NT90aGlzLl9zdHJlYW0uV3JpdGVCeXRlKGV8dDw8NSk6dDw9MjU1Pyh0aGlzLl9zdHJlYW0uV3JpdGVCeXRlKDE5MnxlKSx0aGlzLl9zdHJlYW0uV3JpdGVCeXRlKHQpKToodGhpcy5fc3RyZWFtLldyaXRlQnl0ZSgyMjR8ZSksdGhpcy5fc3RyZWFtLldyaXRlQnl0ZSh0KSx0aGlzLl9zdHJlYW0uV3JpdGVCeXRlKHQ+PjgpKX0sZS5wcm90b3R5cGUuV3JpdGVJbnQzMj1mdW5jdGlvbihlKXtlPXMuWmlnemFnLkVuY29kZVppZ3phZzMyKGUpLHRoaXMuV3JpdGVVSW50MzIoZSl9LGUucHJvdG90eXBlLldyaXRlSW50NjQ9ZnVuY3Rpb24oZSl7dGhpcy5Xcml0ZVVJbnQ2NChzLlppZ3phZy5FbmNvZGVaaWd6YWc2NChlKSl9LGUucHJvdG90eXBlLldyaXRlU3RyaW5nPWZ1bmN0aW9uKGUpe2lmKCIiPT09ZSl0aGlzLldyaXRlVUludDMyKDApO2Vsc2V7dmFyIHQ9cy5VdGY4LkdldEJ5dGVzKGUpO3RoaXMuV3JpdGVVSW50MzIodC5sZW5ndGgpLHRoaXMuX3N0cmVhbS5Xcml0ZSh0LDAsdC5sZW5ndGgpfX0sZS5wcm90b3R5cGUuV3JpdGVTdHJ1Y3RFbmQ9ZnVuY3Rpb24oZSl7dGhpcy5Xcml0ZVVJbnQ4KGU/YS5Cb25kRGF0YVR5cGUuQlRfU1RPUF9CQVNFOmEuQm9uZERhdGFUeXBlLkJUX1NUT1ApfSxlLnByb3RvdHlwZS5Xcml0ZVVJbnQzMj1mdW5jdGlvbihlKXt2YXIgdD1zLlZhcmludC5HZXRCeXRlcyhvLk51bWJlci5Ub1VJbnQzMihlKSk7dGhpcy5fc3RyZWFtLldyaXRlKHQsMCx0Lmxlbmd0aCl9LGUucHJvdG90eXBlLldyaXRlVUludDY0PWZ1bmN0aW9uKGUpe3ZhciB0PXMuVmFyaW50NjQuR2V0Qnl0ZXMoZSk7dGhpcy5fc3RyZWFtLldyaXRlKHQsMCx0Lmxlbmd0aCl9LGUucHJvdG90eXBlLldyaXRlVUludDg9ZnVuY3Rpb24oZSl7dGhpcy5fc3RyZWFtLldyaXRlQnl0ZShvLk51bWJlci5Ub1VJbnQ4KGUpKX0sZX0oKTt0LkNvbXBhY3RCaW5hcnlQcm90b2NvbFdyaXRlcj1pfSwyNDI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZnVuY3Rpb24oZSl7ZVtlLkJUX1NUT1A9MF09IkJUX1NUT1AiLGVbZS5CVF9TVE9QX0JBU0U9MV09IkJUX1NUT1BfQkFTRSIsZVtlLkJUX1VJTlQ4PTNdPSJCVF9VSU5UOCIsZVtlLkJUX1VJTlQzMj01XT0iQlRfVUlOVDMyIixlW2UuQlRfVUlOVDY0PTZdPSJCVF9VSU5UNjQiLGVbZS5CVF9TVFJJTkc9OV09IkJUX1NUUklORyIsZVtlLkJUX1NUUlVDVD0xMF09IkJUX1NUUlVDVCIsZVtlLkJUX0xJU1Q9MTFdPSJCVF9MSVNUIixlW2UuQlRfTUFQPTEzXT0iQlRfTUFQIixlW2UuQlRfSU5UMzI9MTZdPSJCVF9JTlQzMiIsZVtlLkJUX0lOVDY0PTE3XT0iQlRfSU5UNjQiLGVbZS5CVF9VTkFWQUlMQUJMRT0xMjddPSJCVF9VTkFWQUlMQUJMRSJ9KHQuQm9uZERhdGFUeXBlfHwodC5Cb25kRGF0YVR5cGU9e30pKX0sMjQzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBhPW4oOTUpLHM9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLkdldEJ5dGVzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxlLmxlbmd0aDsrK24pe3ZhciBhPWUuY2hhckNvZGVBdChuKTthPDEyOD90LnB1c2goYSk6YTwyMDQ4P3QucHVzaCgxOTJ8YT4+NiwxMjh8NjMmYSk6YTw1NTI5Nnx8YT49NTczNDQ/dC5wdXNoKDIyNHxhPj4xMiwxMjh8YT4+NiY2MywxMjh8NjMmYSk6KGE9NjU1MzYrKCgxMDIzJmEpPDwxMHwxMDIzJmUuY2hhckNvZGVBdCgrK24pKSx0LnB1c2goMjQwfGE+PjE4LDEyOHxhPj4xMiY2MywxMjh8YT4+NiY2MywxMjh8NjMmYSkpfXJldHVybiB0fSxlfSgpO3QuVXRmOD1zO3ZhciByPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5HZXRTdHJpbmc9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLGE9W10scz1lLmxlbmd0aCUzLHI9MCxvPWUubGVuZ3RoLXM7cjxvO3IrPTMpe3ZhciBpPShlW3JdPDwxNikrKGVbcisxXTw8OCkrZVtyKzJdO2EucHVzaChbbi5jaGFyQXQoKHQ9aSk+PjE4JjYzKSxuLmNoYXJBdCh0Pj4xMiY2Myksbi5jaGFyQXQodD4+NiY2Myksbi5jaGFyQXQoNjMmdCldLmpvaW4oIiIpKX1zd2l0Y2gocyl7Y2FzZSAxOmk9ZVtlLmxlbmd0aC0xXTthLnB1c2gobi5jaGFyQXQoaT4+MikpLGEucHVzaChuLmNoYXJBdChpPDw0JjYzKSksYS5wdXNoKCI9PSIpO2JyZWFrO2Nhc2UgMjp2YXIgdT0oZVtlLmxlbmd0aC0yXTw8OCkrZVtlLmxlbmd0aC0xXTthLnB1c2gobi5jaGFyQXQodT4+MTApKSxhLnB1c2gobi5jaGFyQXQodT4+NCY2MykpLGEucHVzaChuLmNoYXJBdCh1PDwyJjYzKSksYS5wdXNoKCI9Iil9cmV0dXJuIGEuam9pbigiIil9LGV9KCk7dC5CYXNlNjQ9cjt2YXIgbz1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUuR2V0Qnl0ZXM9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PVtdOzQyOTQ5NjcxNjgmZTspdC5wdXNoKDEyNyZlfDEyOCksZT4+Pj03O3JldHVybiB0LnB1c2goMTI3JmUpLHR9LGV9KCk7dC5WYXJpbnQ9bzt2YXIgaT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUuR2V0Qnl0ZXM9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PWUubG93LG49ZS5oaWdoLGE9W107bnx8NDI5NDk2NzE2OCZ0OylhLnB1c2goMTI3JnR8MTI4KSx0PSgxMjcmbik8PDI1fHQ+Pj43LG4+Pj49NztyZXR1cm4gYS5wdXNoKDEyNyZ0KSxhfSxlfSgpO3QuVmFyaW50NjQ9aTt2YXIgdT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUuRW5jb2RlWmlnemFnMzI9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9YS5OdW1iZXIuVG9JbnQzMihlKSk8PDFeZT4+MzF9LGUuRW5jb2RlWmlnemFnNjQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5sb3csbj1lLmhpZ2gscz1uPDwxfHQ+Pj4zMSxyPXQ8PDE7MjE0NzQ4MzY0OCZuJiYocz1+cyxyPX5yKTt2YXIgbz1uZXcgYS5VSW50NjQoIjAiKTtyZXR1cm4gby5sb3c9cixvLmhpZ2g9cyxvfSxlfSgpO3QuWmlnemFnPXV9LDI0NDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT1uKDk1KSxzPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe3RoaXMuX2J1ZmZlcj1bXX1yZXR1cm4gZS5wcm90b3R5cGUuV3JpdGVCeXRlPWZ1bmN0aW9uKGUpe3RoaXMuX2J1ZmZlci5wdXNoKGEuTnVtYmVyLlRvQnl0ZShlKSl9LGUucHJvdG90eXBlLldyaXRlPWZ1bmN0aW9uKGUsdCxuKXtmb3IoO24tLTspdGhpcy5Xcml0ZUJ5dGUoZVt0KytdKX0sZS5wcm90b3R5cGUuR2V0QnVmZmVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2J1ZmZlcn0sZX0oKTt0Lk1lbW9yeVN0cmVhbT1zfSwyNDU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIGE9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnNob3VsZFJldHJ5Rm9yU3RhdHVzPWZ1bmN0aW9uKGUpe3JldHVybiEoZT49MzAwJiZlPDUwMCYmNDA4IT09ZXx8NTAxPT09ZXx8NTA1PT09ZSl9LGUuZ2V0TWlsbGlzVG9CYWNrb2ZmRm9yUmV0cnk9ZnVuY3Rpb24oZSl7dmFyIHQsbj1NYXRoLmZsb29yKDEyMDAqTWF0aC5yYW5kb20oKSkrMjQwMDtyZXR1cm4gdD1NYXRoLnBvdyg0LGUpKm4sTWF0aC5taW4odCwxMmU0KX0sZX0oKTt0LmRlZmF1bHQ9YX0sMjQ2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe3RoaXMuX2tpbGxlZFRva2VuRGljdGlvbmFyeT17fX1yZXR1cm4gZS5wcm90b3R5cGUuc2V0S2lsbFN3aXRjaFRlbmFudHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO2lmKGUmJnQpdHJ5e3ZhciBhPWUuc3BsaXQoIiwiKTtpZigidGhpcy1yZXF1ZXN0LW9ubHkiPT09dClyZXR1cm4gYTt2YXIgcz0xZTMqcGFyc2VJbnQodCwxMCk7YS5mb3JFYWNoKChmdW5jdGlvbihlKXtuLl9raWxsZWRUb2tlbkRpY3Rpb25hcnlbZV09RGF0ZS5ub3coKStzfSkpfWNhdGNoKGUpe3JldHVybltdfXJldHVybltdfSxlLnByb3RvdHlwZS5pc1RlbmFudEtpbGxlZD1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwIT09dGhpcy5fa2lsbGVkVG9rZW5EaWN0aW9uYXJ5W2VdJiZ0aGlzLl9raWxsZWRUb2tlbkRpY3Rpb25hcnlbZV0+RGF0ZS5ub3coKXx8KGRlbGV0ZSB0aGlzLl9raWxsZWRUb2tlbkRpY3Rpb25hcnlbZV0sITEpfSxlfSgpO3QuZGVmYXVsdD1hfSwyNTc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt0cnl7aWYoInBlcmZvcm1hbmNlImluIHdpbmRvdz09MSYmImZ1bmN0aW9uIiE9dHlwZW9mIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpe3ZhciBhPURhdGUubm93KCk7d2luZG93LnBlcmZvcm1hbmNlLm5vdz0oKT0+RGF0ZS5ub3coKS1hfX1jYXRjaChlKXtlJiZ3aW5kb3cmJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cub25lcnJvciYmd2luZG93Lm9uZXJyb3IoIlBvbHlmaWxsIGVycm9yIix2b2lkIDAsdm9pZCAwLHZvaWQgMCxlKX19LDI1ODpmdW5jdGlvbihlLHQpeyFmdW5jdGlvbihlKXsidXNlIHN0cmljdCI7aWYoIWUuZmV0Y2gpe3ZhciB0PXtzZWFyY2hQYXJhbXM6IlVSTFNlYXJjaFBhcmFtcyJpbiBlLGl0ZXJhYmxlOiJTeW1ib2wiaW4gZSYmIml0ZXJhdG9yImluIFN5bWJvbCxibG9iOiJGaWxlUmVhZGVyImluIGUmJiJCbG9iImluIGUmJmZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgQmxvYiwhMH1jYXRjaChlKXtyZXR1cm4hMX19KCksZm9ybURhdGE6IkZvcm1EYXRhImluIGUsYXJyYXlCdWZmZXI6IkFycmF5QnVmZmVyImluIGV9O2lmKHQuYXJyYXlCdWZmZXIpdmFyIG49WyJbb2JqZWN0IEludDhBcnJheV0iLCJbb2JqZWN0IFVpbnQ4QXJyYXldIiwiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iLCJbb2JqZWN0IEludDE2QXJyYXldIiwiW29iamVjdCBVaW50MTZBcnJheV0iLCJbb2JqZWN0IEludDMyQXJyYXldIiwiW29iamVjdCBVaW50MzJBcnJheV0iLCJbb2JqZWN0IEZsb2F0MzJBcnJheV0iLCJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXSxhPWZ1bmN0aW9uKGUpe3JldHVybiBlJiZEYXRhVmlldy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKX0scz1BcnJheUJ1ZmZlci5pc1ZpZXd8fGZ1bmN0aW9uKGUpe3JldHVybiBlJiZuLmluZGV4T2YoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpKT4tMX07aC5wcm90b3R5cGUuYXBwZW5kPWZ1bmN0aW9uKGUsdCl7ZT1pKGUpLHQ9dSh0KTt2YXIgbj10aGlzLm1hcFtlXTtufHwobj1bXSx0aGlzLm1hcFtlXT1uKSxuLnB1c2godCl9LGgucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbihlKXtkZWxldGUgdGhpcy5tYXBbaShlKV19LGgucHJvdG90eXBlLmdldD1mdW5jdGlvbihlKXt2YXIgdD10aGlzLm1hcFtpKGUpXTtyZXR1cm4gdD90WzBdOm51bGx9LGgucHJvdG90eXBlLmdldEFsbD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5tYXBbaShlKV18fFtdfSxoLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMubWFwLmhhc093blByb3BlcnR5KGkoZSkpfSxoLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oZSx0KXt0aGlzLm1hcFtpKGUpXT1bdSh0KV19LGgucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oZSx0KXtPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzLm1hcCkuZm9yRWFjaCgoZnVuY3Rpb24obil7dGhpcy5tYXBbbl0uZm9yRWFjaCgoZnVuY3Rpb24oYSl7ZS5jYWxsKHQsYSxuLHRoaXMpfSksdGhpcyl9KSx0aGlzKX0saC5wcm90b3R5cGUua2V5cz1mdW5jdGlvbigpe3ZhciBlPVtdO3JldHVybiB0aGlzLmZvckVhY2goKGZ1bmN0aW9uKHQsbil7ZS5wdXNoKG4pfSkpLGMoZSl9LGgucHJvdG90eXBlLnZhbHVlcz1mdW5jdGlvbigpe3ZhciBlPVtdO3JldHVybiB0aGlzLmZvckVhY2goKGZ1bmN0aW9uKHQpe2UucHVzaCh0KX0pKSxjKGUpfSxoLnByb3RvdHlwZS5lbnRyaWVzPWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIHRoaXMuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtlLnB1c2goW24sdF0pfSkpLGMoZSl9LHQuaXRlcmFibGUmJihoLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPWgucHJvdG90eXBlLmVudHJpZXMpO3ZhciByPVsiREVMRVRFIiwiR0VUIiwiSEVBRCIsIk9QVElPTlMiLCJQT1NUIiwiUFVUIl07Zy5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGcodGhpcyx7Ym9keTp0aGlzLl9ib2R5SW5pdH0pfSxiLmNhbGwoZy5wcm90b3R5cGUpLGIuY2FsbCh2LnByb3RvdHlwZSksdi5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHYodGhpcy5fYm9keUluaXQse3N0YXR1czp0aGlzLnN0YXR1cyxzdGF0dXNUZXh0OnRoaXMuc3RhdHVzVGV4dCxoZWFkZXJzOm5ldyBoKHRoaXMuaGVhZGVycyksdXJsOnRoaXMudXJsfSl9LHYuZXJyb3I9ZnVuY3Rpb24oKXt2YXIgZT1uZXcgdihudWxsLHtzdGF0dXM6MCxzdGF0dXNUZXh0OiIifSk7cmV0dXJuIGUudHlwZT0iZXJyb3IiLGV9O3ZhciBvPVszMDEsMzAyLDMwMywzMDcsMzA4XTt2LnJlZGlyZWN0PWZ1bmN0aW9uKGUsdCl7aWYoLTE9PT1vLmluZGV4T2YodCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgc3RhdHVzIGNvZGUiKTtyZXR1cm4gbmV3IHYobnVsbCx7c3RhdHVzOnQsaGVhZGVyczp7bG9jYXRpb246ZX19KX0sZS5IZWFkZXJzPWgsZS5SZXF1ZXN0PWcsZS5SZXNwb25zZT12LGUuZmV0Y2g9ZnVuY3Rpb24oZSxuKXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKGEscyl7dmFyIHI9bmV3IGcoZSxuKSxvPW5ldyBYTUxIdHRwUmVxdWVzdDtvLm9ubG9hZD1mdW5jdGlvbigpe3ZhciBlLHQsbj17c3RhdHVzOm8uc3RhdHVzLHN0YXR1c1RleHQ6by5zdGF0dXNUZXh0LGhlYWRlcnM6KGU9by5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiIsdD1uZXcgaCxlLnNwbGl0KCJcclxuIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZS5zcGxpdCgiOiIpLGE9bi5zaGlmdCgpLnRyaW0oKTtpZihhKXt2YXIgcz1uLmpvaW4oIjoiKS50cmltKCk7dC5hcHBlbmQoYSxzKX19KSksdCl9O24udXJsPSJyZXNwb25zZVVSTCJpbiBvP28ucmVzcG9uc2VVUkw6bi5oZWFkZXJzLmdldCgiWC1SZXF1ZXN0LVVSTCIpO3ZhciBzPSJyZXNwb25zZSJpbiBvP28ucmVzcG9uc2U6by5yZXNwb25zZVRleHQ7YShuZXcgdihzLG4pKX0sby5vbmVycm9yPWZ1bmN0aW9uKCl7cyhuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSxvLm9udGltZW91dD1mdW5jdGlvbigpe3MobmV3IFR5cGVFcnJvcigiTmV0d29yayByZXF1ZXN0IGZhaWxlZCIpKX0sby5vcGVuKHIubWV0aG9kLHIudXJsLCEwKSwiaW5jbHVkZSI9PT1yLmNyZWRlbnRpYWxzJiYoby53aXRoQ3JlZGVudGlhbHM9ITApLCJyZXNwb25zZVR5cGUiaW4gbyYmdC5ibG9iJiYoby5yZXNwb25zZVR5cGU9ImJsb2IiKSxyLmhlYWRlcnMuZm9yRWFjaCgoZnVuY3Rpb24oZSx0KXtvLnNldFJlcXVlc3RIZWFkZXIodCxlKX0pKSxvLnNlbmQodm9pZCAwPT09ci5fYm9keUluaXQ/bnVsbDpyLl9ib2R5SW5pdCl9KSl9LGUuZmV0Y2gucG9seWZpbGw9ITB9ZnVuY3Rpb24gaShlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJihlPVN0cmluZyhlKSksL1teYS16MC05XC0jJCUmJyorLlxeX2B8fl0vaS50ZXN0KGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgY2hhcmFjdGVyIGluIGhlYWRlciBmaWVsZCBuYW1lIik7cmV0dXJuIGUudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiB1KGUpe3JldHVybiJzdHJpbmciIT10eXBlb2YgZSYmKGU9U3RyaW5nKGUpKSxlfWZ1bmN0aW9uIGMoZSl7dmFyIG49e25leHQ6ZnVuY3Rpb24oKXt2YXIgdD1lLnNoaWZ0KCk7cmV0dXJue2RvbmU6dm9pZCAwPT09dCx2YWx1ZTp0fX19O3JldHVybiB0Lml0ZXJhYmxlJiYobltTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIG59KSxufWZ1bmN0aW9uIGgoZSl7dGhpcy5tYXA9e30sZSBpbnN0YW5jZW9mIGg/ZS5mb3JFYWNoKChmdW5jdGlvbihlLHQpe3RoaXMuYXBwZW5kKHQsZSl9KSx0aGlzKTplJiZPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhlKS5mb3JFYWNoKChmdW5jdGlvbih0KXt0aGlzLmFwcGVuZCh0LGVbdF0pfSksdGhpcyl9ZnVuY3Rpb24gbChlKXtpZihlLmJvZHlVc2VkKXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCJBbHJlYWR5IHJlYWQiKSk7ZS5ib2R5VXNlZD0hMH1mdW5jdGlvbiBkKGUpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxuKXtlLm9ubG9hZD1mdW5jdGlvbigpe3QoZS5yZXN1bHQpfSxlLm9uZXJyb3I9ZnVuY3Rpb24oKXtuKGUuZXJyb3IpfX0pKX1mdW5jdGlvbiBmKGUpe3ZhciB0PW5ldyBGaWxlUmVhZGVyLG49ZCh0KTtyZXR1cm4gdC5yZWFkQXNBcnJheUJ1ZmZlcihlKSxufWZ1bmN0aW9uIHAoZSl7aWYoZS5zbGljZSlyZXR1cm4gZS5zbGljZSgwKTt2YXIgdD1uZXcgVWludDhBcnJheShlLmJ5dGVMZW5ndGgpO3JldHVybiB0LnNldChuZXcgVWludDhBcnJheShlKSksdC5idWZmZXJ9ZnVuY3Rpb24gYigpe3JldHVybiB0aGlzLmJvZHlVc2VkPSExLHRoaXMuX2luaXRCb2R5PWZ1bmN0aW9uKGUpe2lmKHRoaXMuX2JvZHlJbml0PWUsZSlpZigic3RyaW5nIj09dHlwZW9mIGUpdGhpcy5fYm9keVRleHQ9ZTtlbHNlIGlmKHQuYmxvYiYmQmxvYi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKSl0aGlzLl9ib2R5QmxvYj1lO2Vsc2UgaWYodC5mb3JtRGF0YSYmRm9ybURhdGEucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSkpdGhpcy5fYm9keUZvcm1EYXRhPWU7ZWxzZSBpZih0LnNlYXJjaFBhcmFtcyYmVVJMU2VhcmNoUGFyYW1zLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGUpKXRoaXMuX2JvZHlUZXh0PWUudG9TdHJpbmcoKTtlbHNlIGlmKHQuYXJyYXlCdWZmZXImJnQuYmxvYiYmYShlKSl0aGlzLl9ib2R5QXJyYXlCdWZmZXI9cChlLmJ1ZmZlciksdGhpcy5fYm9keUluaXQ9bmV3IEJsb2IoW3RoaXMuX2JvZHlBcnJheUJ1ZmZlcl0pO2Vsc2V7aWYoIXQuYXJyYXlCdWZmZXJ8fCFBcnJheUJ1ZmZlci5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKSYmIXMoZSkpdGhyb3cgbmV3IEVycm9yKCJ1bnN1cHBvcnRlZCBCb2R5SW5pdCB0eXBlIik7dGhpcy5fYm9keUFycmF5QnVmZmVyPXAoZSl9ZWxzZSB0aGlzLl9ib2R5VGV4dD0iIjt0aGlzLmhlYWRlcnMuZ2V0KCJjb250ZW50LXR5cGUiKXx8KCJzdHJpbmciPT10eXBlb2YgZT90aGlzLmhlYWRlcnMuc2V0KCJjb250ZW50LXR5cGUiLCJ0ZXh0L3BsYWluO2NoYXJzZXQ9VVRGLTgiKTp0aGlzLl9ib2R5QmxvYiYmdGhpcy5fYm9keUJsb2IudHlwZT90aGlzLmhlYWRlcnMuc2V0KCJjb250ZW50LXR5cGUiLHRoaXMuX2JvZHlCbG9iLnR5cGUpOnQuc2VhcmNoUGFyYW1zJiZVUkxTZWFyY2hQYXJhbXMucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSkmJnRoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PVVURi04IikpfSx0LmJsb2ImJih0aGlzLmJsb2I9ZnVuY3Rpb24oKXt2YXIgZT1sKHRoaXMpO2lmKGUpcmV0dXJuIGU7aWYodGhpcy5fYm9keUJsb2IpcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5QmxvYik7aWYodGhpcy5fYm9keUFycmF5QnVmZmVyKXJldHVybiBQcm9taXNlLnJlc29sdmUobmV3IEJsb2IoW3RoaXMuX2JvZHlBcnJheUJ1ZmZlcl0pKTtpZih0aGlzLl9ib2R5Rm9ybURhdGEpdGhyb3cgbmV3IEVycm9yKCJjb3VsZCBub3QgcmVhZCBGb3JtRGF0YSBib2R5IGFzIGJsb2IiKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBCbG9iKFt0aGlzLl9ib2R5VGV4dF0pKX0sdGhpcy5hcnJheUJ1ZmZlcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ib2R5QXJyYXlCdWZmZXI/bCh0aGlzKXx8UHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcik6dGhpcy5ibG9iKCkudGhlbihmKX0pLHRoaXMudGV4dD1mdW5jdGlvbigpe3ZhciBlLHQsbixhPWwodGhpcyk7aWYoYSlyZXR1cm4gYTtpZih0aGlzLl9ib2R5QmxvYilyZXR1cm4gZT10aGlzLl9ib2R5QmxvYix0PW5ldyBGaWxlUmVhZGVyLG49ZCh0KSx0LnJlYWRBc1RleHQoZSksbjtpZih0aGlzLl9ib2R5QXJyYXlCdWZmZXIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShmdW5jdGlvbihlKXtmb3IodmFyIHQ9bmV3IFVpbnQ4QXJyYXkoZSksbj1uZXcgQXJyYXkodC5sZW5ndGgpLGE9MDthPHQubGVuZ3RoO2ErKyluW2FdPVN0cmluZy5mcm9tQ2hhckNvZGUodFthXSk7cmV0dXJuIG4uam9pbigiIil9KHRoaXMuX2JvZHlBcnJheUJ1ZmZlcikpO2lmKHRoaXMuX2JvZHlGb3JtRGF0YSl0aHJvdyBuZXcgRXJyb3IoImNvdWxkIG5vdCByZWFkIEZvcm1EYXRhIGJvZHkgYXMgdGV4dCIpO3JldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5fYm9keVRleHQpfSx0LmZvcm1EYXRhJiYodGhpcy5mb3JtRGF0YT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRleHQoKS50aGVuKG0pfSksdGhpcy5qc29uPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGV4dCgpLnRoZW4oSlNPTi5wYXJzZSl9LHRoaXN9ZnVuY3Rpb24gZyhlLHQpe3ZhciBuLGEscz0odD10fHx7fSkuYm9keTtpZigic3RyaW5nIj09dHlwZW9mIGUpdGhpcy51cmw9ZTtlbHNle2lmKGUuYm9keVVzZWQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQWxyZWFkeSByZWFkIik7dGhpcy51cmw9ZS51cmwsdGhpcy5jcmVkZW50aWFscz1lLmNyZWRlbnRpYWxzLHQuaGVhZGVyc3x8KHRoaXMuaGVhZGVycz1uZXcgaChlLmhlYWRlcnMpKSx0aGlzLm1ldGhvZD1lLm1ldGhvZCx0aGlzLm1vZGU9ZS5tb2RlLHN8fG51bGw9PWUuX2JvZHlJbml0fHwocz1lLl9ib2R5SW5pdCxlLmJvZHlVc2VkPSEwKX1pZih0aGlzLmNyZWRlbnRpYWxzPXQuY3JlZGVudGlhbHN8fHRoaXMuY3JlZGVudGlhbHN8fCJvbWl0IiwhdC5oZWFkZXJzJiZ0aGlzLmhlYWRlcnN8fCh0aGlzLmhlYWRlcnM9bmV3IGgodC5oZWFkZXJzKSksdGhpcy5tZXRob2Q9KG49dC5tZXRob2R8fHRoaXMubWV0aG9kfHwiR0VUIixhPW4udG9VcHBlckNhc2UoKSxyLmluZGV4T2YoYSk+LTE/YTpuKSx0aGlzLm1vZGU9dC5tb2RlfHx0aGlzLm1vZGV8fG51bGwsdGhpcy5yZWZlcnJlcj1udWxsLCgiR0VUIj09PXRoaXMubWV0aG9kfHwiSEVBRCI9PT10aGlzLm1ldGhvZCkmJnMpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9keSBub3QgYWxsb3dlZCBmb3IgR0VUIG9yIEhFQUQgcmVxdWVzdHMiKTt0aGlzLl9pbml0Qm9keShzKX1mdW5jdGlvbiBtKGUpe3ZhciB0PW5ldyBGb3JtRGF0YTtyZXR1cm4gZS50cmltKCkuc3BsaXQoIiYiKS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZihlKXt2YXIgbj1lLnNwbGl0KCI9IiksYT1uLnNoaWZ0KCkucmVwbGFjZSgvXCsvZywiICIpLHM9bi5qb2luKCI9IikucmVwbGFjZSgvXCsvZywiICIpO3QuYXBwZW5kKGRlY29kZVVSSUNvbXBvbmVudChhKSxkZWNvZGVVUklDb21wb25lbnQocykpfX0pKSx0fWZ1bmN0aW9uIHYoZSx0KXt0fHwodD17fSksdGhpcy50eXBlPSJkZWZhdWx0Iix0aGlzLnN0YXR1cz0ic3RhdHVzImluIHQ/dC5zdGF0dXM6MjAwLHRoaXMub2s9dGhpcy5zdGF0dXM+PTIwMCYmdGhpcy5zdGF0dXM8MzAwLHRoaXMuc3RhdHVzVGV4dD0ic3RhdHVzVGV4dCJpbiB0P3Quc3RhdHVzVGV4dDoiT0siLHRoaXMuaGVhZGVycz1uZXcgaCh0LmhlYWRlcnMpLHRoaXMudXJsPXQudXJsfHwiIix0aGlzLl9pbml0Qm9keShlKX19KCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOnRoaXMpfSwyNjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgYT1uKDg5KTtjb25zdCBzPXs1LjE6IlhQIiwiNi4wIjoiVmlzdGEiLDYuMToiNyIsNi4yOiI4Iiw2LjM6IjguMSIsNi40OiIxMCIsIjEwLjAiOiIxMCJ9O2xldCByO2Z1bmN0aW9uIG8oKXtyZXR1cm4gcnx8KHI9ZnVuY3Rpb24oKXtsZXQgZSx0PXZvaWQgMDtjb25zdCBuPU9iamVjdChhLmEpKCk7Lyhjcm9zKVxzW1x3XStccyhbXHdcLl0rXHcpL2kudGVzdChuKT9lPSJDaHJvbWl1bSBPUyI6LyhpUGFkfGlQaG9uZXxpUG9kKSg/PS4qbGlrZSBNYWMgT1MgWCkvaS50ZXN0KG4pP2U9ImlPUyI6L2FuZHJvaWQvaS50ZXN0KG4pP2U9IkFuZHJvaWQiOi8obGludXh8am9saXxba3hsbl0/dWJ1bnR1fGRlYmlhbnxbb3Blbl0qc3VzZXxnZW50b298YXJjaHxzbGFja3dhcmV8ZmVkb3JhfG1hbmRyaXZhfGNlbnRvc3xwY2xpbnV4b3N8cmVkaGF0fHplbndhbGspL2kudGVzdChuKT9lPSJMaW51eCI6LyhtYWNpbnRvc2h8bWFjIG9zIHgpL2kudGVzdChuKT9lPSJNYWMgT1MgWCI6Lyh3aW5kb3dzfHdpbjMyKS9pLnRlc3Qobik/KGU9IldpbmRvd3MiLHQ9ZnVuY3Rpb24oZSl7bGV0IHQ9ZS5tYXRjaChuZXcgUmVnRXhwKCJXaW5kb3dzIE5UIChbXFxkLC5dKykiKSk7cmV0dXJuIHQmJnNbdFsxXV19KG4pKTplPSJVbmtub3duIjtyZXR1cm57b3M6ZSxvc1ZlcnNpb246dH19KCkpLHJ9fSwyNzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGEoZSx0LG4sYSl7Y29uc3Qgcj13aW5kb3cuUmVzcG9uc2UmJmUgaW5zdGFuY2VvZiB3aW5kb3cuUmVzcG9uc2U/ZnVuY3Rpb24oZSl7Y29uc3QgdD1uZXcgRXJyb3I7cmV0dXJuIHQucmVzcG9uc2U9ZSx0fShlKToic3RyaW5nIj09dHlwZW9mIGU/bmV3IEVycm9yKGUpOmU7cmV0dXJuIHMociwic291cmNlIix0KSxzKHIsInVybCIsbikscyhyLCJzdGF0dXMiLGEpLHJ9ZnVuY3Rpb24gcyhlLHQsbil7dm9pZCAwPT09ZVt0XSYmKGVbdF09bil9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBhfSkpfSwyODpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJnIiwoZnVuY3Rpb24oKXtyZXR1cm4gYX0pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksbi5kKHQsImYiLChmdW5jdGlvbigpe3JldHVybiB1fSkpLG4uZCh0LCJoIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKSxuLmQodCwiaiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksbi5kKHQsImsiLChmdW5jdGlvbigpe3JldHVybiBsfSkpLG4uZCh0LCJpIiwoZnVuY3Rpb24oKXtyZXR1cm4gZH0pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZ9KSk7Y29uc3QgYT0ib3V0bG9va2Rlc2t0b3AiLHM9Im1hY291dGxvb2siLHI9Imlvc291dGxvb2siLG89ImFuZHJvaWRvdXRsb29rIixpPSJuYXRpdmUiLHU9Im8zNjVzaGVsbCIsYz0idGVhbXMiLGg9IndpZGdldCIsbD0id2luMzJvdXRsb29raHViIixkPSJ0ZWFtc2h1YiIsZj0iaHViIn0sMjk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDcyKSxzPW4oMTQpLHI9big5KTtjb25zdCBvPSJCb290VHlwZVNjcmlwdFZlciI7bGV0IGk7YXN5bmMgZnVuY3Rpb24gdShlKXtpZihPYmplY3QoYS5hKSgpKXJldHVybiJQd2EiO3RyeXtjb25zdCB0PWAke09iamVjdChzLmgpKCl9YW5hbHl0aWNzLXBpbmcuanNgO3JldHVybiBmdW5jdGlvbihlLHQsbil7aWYodC5oZWFkZXJzLmdldCgieC1zdy1hY3RpdmUtY2FjaGUiKSlyZXR1cm4iU3dDYWNoZSI7bGV0IGE9dC5oZWFkZXJzLmdldCgiRGF0ZSIpO2lmKG51bGw9PWEpe2NvbnN0IGU9T2JqZWN0KHIuYSkod2luZG93LG8pPT1uO3JldHVybiBPYmplY3Qoci5lKSh3aW5kb3csbyxuKSxlPyJCcm93c2VyQ2FjaGUiOiJOb0NhY2hlIn1sZXQgcz1EYXRlLnBhcnNlKGEpO2lmKGlzTmFOKHMpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZERhdGUiKTtyZXR1cm4gcy1lPi0xZTM/Ik5vQ2FjaGUiOiJCcm93c2VyQ2FjaGUifShlLGF3YWl0IGZldGNoKHQpLHQpfWNhdGNoKGUpe3JldHVybiBpPWUsIlVua25vd24ifX1uLmQodCwiaCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBkfSkpLG4uZCh0LCJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gZn0pKSxuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB9KSksbi5kKHQsImYiLChmdW5jdGlvbigpe3JldHVybiBifSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gZ30pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG19KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiB2fSkpO2xldCBjPXt9O2Z1bmN0aW9uIGgoZSl7bCgiZmUiLGUsIlgtRkVTZXJ2ZXIiKSxsKCJiZSIsZSwiWC1CRVNlcnZlciIpLGwoIndzdmVyIixlLCJYLU9XQS1WZXJzaW9uIiksbCgiZm9zdCIsZSwieC1vd2EtZm9yZXN0IixlPT4wPT1lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigicHJvZCIpPyJOQU1QUkQwMSI6ZS5zdWJzdHIoMCxlLmluZGV4T2YoIi4iKSkudG9VcHBlckNhc2UoKSksbCgiZGFnIixlLCJ4LW93YS1kYWciLGU9PmUudG9VcHBlckNhc2UoKSksIWMudGUmJmUmJmUuaGVhZGVycyYmKGMudGU9ZS5oZWFkZXJzLmdldCgiWC1NU0VkZ2UtUmVmIik/IjEiOiIwIil9ZnVuY3Rpb24gbChlLHQsbixhKXt2YXIgcyxyO2lmKCFjW2VdKXtjb25zdCBvPW51bGw9PT0ocj1udWxsPT09KHM9bnVsbD09dD92b2lkIDA6dC5oZWFkZXJzKXx8dm9pZCAwPT09cz92b2lkIDA6cy5nZXQpfHx2b2lkIDA9PT1yP3ZvaWQgMDpyLmNhbGwocyxuKTtjW2VdPW8/YT9hKG8pOm86IlVua25vd24ifX1mdW5jdGlvbiBkKCl7cmV0dXJuIGMuYmV9ZnVuY3Rpb24gZigpe3JldHVybiBjLmZlfWZ1bmN0aW9uIHAoKXtyZXR1cm4gYy50ZX1mdW5jdGlvbiBiKCl7cmV0dXJuIGMud3N2ZXJ9ZnVuY3Rpb24gZygpe3JldHVybiBjLmRhZ31mdW5jdGlvbiBtKCl7cmV0dXJuIGMuZm9zdH1hc3luYyBmdW5jdGlvbiB2KCl7bGV0IGU9Yy5idDtyZXR1cm4hZSYmc2VsZi5wZXJmb3JtYW5jZSYmc2VsZi5wZXJmb3JtYW5jZS50aW1pbmcmJihlPWMuYnQ9YXdhaXQgdShzZWxmLnBlcmZvcm1hbmNlLnRpbWluZy5mZXRjaFN0YXJ0KSksZX19LDMwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYShlLHQpe3JldHVybihudWxsPT1lP3ZvaWQgMDplLmhlYWRlcnMpJiZlLmhlYWRlcnMuZ2V0KHQpfW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gYX0pKX0sMzAzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBvfSkpO3ZhciBhPW4oNCkscz1uKDM0NCk7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzLmF9KSk7Y29uc3Qgcj1uZXcgYS5iKCgpPT5Qcm9taXNlLmFsbChbbi5lKDUpLG4uZSg4KSxuLmUoMTApLG4uZSgxMyksbi5lKDIwNyldKS50aGVuKG4uYmluZChudWxsLDc4MSkpKSxvPW5ldyBhLmEocixlPT5lLmFwcEJvb3RzdHJhcCl9LDMyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBhPW4oNzQpO2Z1bmN0aW9uIHMoZSl7cmV0dXJuIE9iamVjdChhLmEpKGUsW2EuYyxhLmJdKX19LDMzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYSguLi5lKXtyZXR1cm4gZS5maWx0ZXIoZT0+ZSkubWFwKG8pLmZpbHRlcihlPT4wIT09ZS5sZW5ndGgpLmpvaW4oIi8iKX1mdW5jdGlvbiBzKGUpe3JldHVybiBlP2UubGVuZ3RoPjAmJiIvIiE9PWVbMF0/Ii8iK2U6ZToiLyJ9ZnVuY3Rpb24gcihlKXtyZXR1cm4gZS5sZW5ndGg+MCYmIi8iIT09ZVtlLmxlbmd0aC0xXT9lKyIvIjplfWZ1bmN0aW9uIG8oZSl7cmV0dXJuIGUucmVwbGFjZSgvXlwvKi8sIiIpLnJlcGxhY2UoL1wvKiQvLCIiKX1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKX0sMzQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSk7dmFyIGE9big4OSk7bGV0IHM7ZnVuY3Rpb24gcigpe3JldHVybiBzfHwocz1mdW5jdGlvbigpe3ZhciBlLHQ7bGV0IG4scz0iVW5rbm93biI7Y29uc3Qgcj1PYmplY3QoYS5hKSgpOy9PUFJcLy8udGVzdChyKT8ocz0iT3BlcmEiLG49byhyLCJPUFIiKSk6L1BoYW50b21KUy8udGVzdChyKT9zPSJQaGFudG9tSlMiOi9FZGdlLy50ZXN0KHIpP3M9IkVkZ2UiOi9FZGcvLnRlc3Qocil8fCJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiYobnVsbD09PSh0PW51bGw9PT0oZT1udWxsPT09bmF2aWdhdG9yfHx2b2lkIDA9PT1uYXZpZ2F0b3I/dm9pZCAwOm5hdmlnYXRvci51c2VyQWdlbnREYXRhKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS5icmFuZHMpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnNvbWUoZT0+Ik1pY3Jvc29mdCBFZGdlIj09KG51bGw9PWU/dm9pZCAwOmUuYnJhbmQpKSk/KHM9IkVkZ2UgQW5haGVpbSIsbj1vKHIsIkVkZyIpKTovRWxlY3Ryb24vLnRlc3Qocik/cz0iRWxlY3Ryb24iOi9DaHJvbWUvLnRlc3Qocil8fC9DcmlPUy8udGVzdChyKT9zPSJDaHJvbWUiOi9UcmlkZW50Ly50ZXN0KHIpPyhzPSJNU0lFIixuPWZ1bmN0aW9uKGUpe2xldCB0PWUubWF0Y2goL01TSUUgKFtcZCxcLl0rKS8pO2lmKHQpcmV0dXJuIGkodFsxXSk7cmV0dXJuIHQ9ZS5tYXRjaCgvcnY6KFtcZCxcLl0rKS8pLHQ/aSh0WzFdKTpbXX0ocikpOi9GaXJlZm94Ly50ZXN0KHIpP3M9IkZpcmVmb3giOi9TYWZhcmkvLnRlc3Qocil8fC9BcHBsZVdlYktpdC8udGVzdChyKT8ocz0iU2FmYXJpIixuPW8ociwiVmVyc2lvbiIpKTovU2t5cGVTaGVsbC8udGVzdChyKSYmKHM9IlNreXBlU2hlbGwiKTtyZXR1cm57YnJvd3NlcjpzLGJyb3dzZXJWZXJzaW9uOm58fG8ocixzKX19KCkpLHN9ZnVuY3Rpb24gbyhlLHQpe2xldCBuPWUubWF0Y2gobmV3IFJlZ0V4cCh0KyIvKFtcXGQsXFwuXSspIikpO3JldHVybiBuP2koblsxXSk6W119ZnVuY3Rpb24gaShlKXtyZXR1cm4gZS5zcGxpdCgvW1wuLF0vKS5tYXAoZT0+cGFyc2VJbnQoZSkpfX0sMzQ0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBhPW4oOTcpO2Z1bmN0aW9uIHMoZSx0KXtzd2l0Y2goZSl7Y2FzZSBhLmEuQ2FsZW5kYXJEZWVwTGluazpyZXR1cm4gdD97YXBwOiJjYWxlbmRhckRlZXBPcHgiLGV4cGVjdGVkWEFwcE5hbWVIZWFkZXI6IkNhbGVuZGFyRGVlcE9weCJ9OnZvaWQgMDtjYXNlIGEuYS5NYWlsOmNhc2UgYS5hLkNhbGVuZGFyOmNhc2UgYS5hLkZpbGVzSHViOnJldHVybnthcHA6Im1haWwiLGV4cGVjdGVkWEFwcE5hbWVIZWFkZXI6Ik1haWwifX19fSwzNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKTt2YXIgYT1uKDE0Mikscz1uKDEwKSxyPW4oMiksbz1uKDM2KTtmdW5jdGlvbiBpKGUsdCxuKXtvLmguaW5mbyhgU2VydmljZUFjdGlvbiAke2V9YCwic2VydmljZSIpO2NvbnN0IGk9T2JqZWN0KHMuYSkoKTtsZXQgdTtpZihudWxsPT1uP3ZvaWQgMDpuLmVuZHBvaW50KXU9bi5lbmRwb2ludDtlbHNle3U9YCR7KG51bGw9PW4/dm9pZCAwOm4uY3VzdG9tQmFzZVVybCk/bi5jdXN0b21CYXNlVXJsU3ViUGF0aD9uLmN1c3RvbUJhc2VVcmwuY29uY2F0KG4uY3VzdG9tQmFzZVVybFN1YlBhdGgpOm4uY3VzdG9tQmFzZVVybDoobnVsbD09bj92b2lkIDA6bi5jdXN0b21CYXNlVXJsU3ViUGF0aCk/aS5iYXNlVXJsLmNvbmNhdCgiLyIrbi5jdXN0b21CYXNlVXJsU3ViUGF0aCk6aS5iYXNlVXJsfS9zZXJ2aWNlLnN2Yz9hY3Rpb249JHtlfWB9cmV0dXJuKHZvaWQgMCE9PWkuaXNVc2VySWRsZSYmaS5pc1VzZXJJZGxlKCl8fDA9PShudWxsPT1uP3ZvaWQgMDpuLmlzVXNlckFjdGl2aXR5KSkmJih1Kz0iJlVBPTAiKSwtMT09dS5pbmRleE9mKCImYXBwPSIpJiYtMT09dS5pbmRleE9mKCI/YXBwPSIpJiYodSs9YCR7dS5pbmRleE9mKCI/Iik+LTE/IiYiOiI/In1hcHA9JHtPYmplY3Qoci5tKSgpfWApLE9iamVjdChhLmEpKGUsdSwxLG4sdCl9fSwzNjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBhPW4oNDEpO2NvbnN0IHM9IltlbXB0eSBvbmVycm9yXSI7ZnVuY3Rpb24gcihlLHQsbixyLG8pe2lmKGV8fG8pe2lmKG98fCgobz1uZXcgRXJyb3IoZSkpLnN0YWNrPXMpLC0xIT0oZT1lfHxvLm1lc3NhZ2UpLmluZGV4T2YoJyJyZXNwb25zZVRleHQiOiI8IURPQ1RZUEUnKSl7Y29uc3QgdD1lLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZigiPCFkb2N0eXBlIGh0bWwiKSxuPWUuc3Vic3RyaW5nKHQpLGE9LTEhPT1uLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZigiPC9odG1sPlxyXG4iKT9uLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZigiPC9odG1sPlxyXG4iKSs5Om4udG9Mb2NhbGVMb3dlckNhc2UoKS5pbmRleE9mKCI8L2h0bWw+IikrNzstMSE9PXQmJi0xIT09YSYmKGU9ZS5zdWJzdHJpbmcoMCx0KSsiUmVwbGFjZWRHZW5lcmljSFRNTEVycm9yTWVzc2FnZSIrZS5zdWJzdHJpbmcodCthKSl9T2JqZWN0LmlzRXh0ZW5zaWJsZShvKSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCJmaWxlbmFtZSIse3ZhbHVlOnR9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobywibGluZW5vIix7dmFsdWU6bn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCJjb2xubyIse3ZhbHVlOnJ9KSksKG51bGw9PW8/dm9pZCAwOm8ucmVwb3J0ZWQpfHxPYmplY3QoYS5jKShlLG8pfX12YXIgbz1uKDQyKTtuLmQodCwiaCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuYn0pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuY30pKSxuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuZH0pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuYX0pKSxuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuZX0pKSxuLmQodCwiZiIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gby5hfSkpfSwzOTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGx9KSk7dmFyIGE9big2NSkscz1uKDUpLHI9bigxMyk7Y29uc3Qgbz0zZTM7bGV0IGk7Y29uc3QgdT0iZHAiO2Z1bmN0aW9uIGMoZSl7aWYoaT1lLGkpdHJ5e2NvbnN0IGU9ZnVuY3Rpb24oKXtjb25zdCBlPU9iamVjdChyLmMpKCksdD1PYmplY3Qoci5lKSgpO2lmKHR8fGUpcmV0dXJuIHR8fGU7c3dpdGNoKE9iamVjdChyLmgpKCkpe2Nhc2UiQmxhY2tGb3Jlc3QiOnJldHVybiBhLkFXVF9DT0xMRUNUT1JfVVJMX0VVUk9QRTtjYXNlIkdjY0hpZ2giOnJldHVybiJodHRwczovL3RiLnBpcGUuYXJpYS5taWNyb3NvZnQuY29tLyIrci5hO2Nhc2UiRG9EIjpyZXR1cm4iaHR0cHM6Ly9wZi5waXBlLmFyaWEubWljcm9zb2Z0LmNvbS8iK3IuYTtjYXNlIkFHMDgiOnJldHVybiJodHRwczovL29mZmljZS5jb2xsZWN0b3IuYXp1cmUuZWFnbGV4LmljLmdvdi8iK3IuYTtjYXNlIkFHMDkiOnJldHVybiJodHRwczovL29mZmljZS5jb2xsZWN0b3IuYXp1cmUubWljcm9zb2Z0LnNjbG91ZC8iK3IuYTtkZWZhdWx0OnJldHVybn19KCk7ZT9hLkFXVC5pbml0aWFsaXplKGkse2NvbGxlY3RvclVybDplfSk6YS5BV1QuaW5pdGlhbGl6ZShpKX1jYXRjaChlKXt9fWZ1bmN0aW9uIGgoZSl7dmFyIHQsbjtlLm5hbWUsZCgobnVsbD09PSh0PW51bGw9PWU/dm9pZCAwOmUucHJvcGVydGllcyl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuRXJyb3JTb3VyY2UpfHwiIiksZCgobnVsbD09PShuPW51bGw9PWU/dm9pZCAwOmUucHJvcGVydGllcyl8fHZvaWQgMD09PW4/dm9pZCAwOm4uRXJyb3JUeXBlKXx8IiIpfWZ1bmN0aW9uIGwoZSx0KXtpZighaSlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7Y29uc3Qgbj1PYmplY3Qocy5mKSh1KSxyPSFPYmplY3Qocy5hKSgpO3JldHVybiBuZXcgUHJvbWlzZShhc3luYyBzPT57bGV0IGk9d2luZG93LnNldFRpbWVvdXQocyx0fHxvKTt0cnl7Y29uc3QgdD1hd2FpdCBlO2lmKHQpe2Zvcihjb25zdCBlIG9mIHQpciYmYS5BV1QubG9nRXZlbnQoZSksbiYmaChlKTthd2FpdCBuZXcgUHJvbWlzZShlPT57YS5BV1QuZmx1c2goKCk9PmUoKSl9KX19Y2F0Y2goZSl7fWZpbmFsbHl7d2luZG93LmNsZWFyVGltZW91dChpKSxzKCl9fSl9ZnVuY3Rpb24gZChlKXt0cnl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWNhdGNoKGUpe3JldHVybiBlLm1lc3NhZ2V9fX0sNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2NsYXNzIGF7Y29uc3RydWN0b3IoZSl7dGhpcy5yZXN1bHQ9ZX10aGVuKGUsdCl7dHJ5e2xldCB0PWUodGhpcy5yZXN1bHQpO3JldHVybihudWxsPT0obj10KT92b2lkIDA6bi50aGVuKSYmImZ1bmN0aW9uIj09dHlwZW9mIG4udGhlbj90OlByb21pc2UucmVzb2x2ZSh0KX1jYXRjaChlKXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoZSl9dmFyIG59Y2F0Y2goZSl7cmV0dXJuIHRoaXN9dG9TdHJpbmcoKXtyZXR1cm4iUVAifX1sZXQgcz0wO2NvbnN0IHI9e307bGV0IG89e21hcmtJbXBvcnRBc0xvYWRlZDplPT57cltlXT0hMH0saXNJbXBvcnRMb2FkZWQ6ZT0+cltlXSxsb2dVc2FnZTooKT0+e30sbG9nRXJyb3I6KCk9Pnt9fTtmdW5jdGlvbiBpKCl7cmV0dXJuIG99ZnVuY3Rpb24gdShlKXtvPWV9dmFyIGM9bigxMyk7Y29uc3QgaD0iTGF6eUltcG9ydEZhaWx1cmUiLGw9L2Z1bmN0aW9uXHMqXCguKlwpXHMqe1xzKnJldHVybiBbXi5dKihbXjtdKi4qKX0vO2NsYXNzIGR7Y29uc3RydWN0b3IoZSx0KXt0aGlzLmxhenlNb2R1bGU9ZSx0aGlzLmdldHRlcj10LHRoaXMucGVuZGluZ0ltcG9ydHM9MCx0aGlzLmltcG9ydD1lPT57aWYoIXRoaXMuaW1wb3J0UHJvbWlzZSl7bGV0IGU7dHJ5e2U9dGhpcy5sYXp5TW9kdWxlLmltcG9ydE1vZHVsZSgiTGF6eUltcG9ydCIpLHRoaXMuaW1wb3J0UHJvbWlzZT1lLnRoZW4oZT0+KHRoaXMuaW1wb3J0VmFsdWU9dGhpcy5nZXR0ZXIoZSksdGhpcy5pbXBvcnRQcm9taXNlPWZ1bmN0aW9uKGUpe3JldHVybiBuZXcgYShlKX0odGhpcy5pbXBvcnRWYWx1ZSksT2JqZWN0KGMuaikoKSYmdGhpcy5sYXp5TW9kdWxlLmFkZFdhdGVyZmFsbENoZWNrcG9pbnQodGhpcy5fZ2V0SW1wb3J0TmFtZUZvckxvZ2dpbmcoKSksaSgpLm1hcmtJbXBvcnRBc0xvYWRlZCh0aGlzLmlkKSx0aGlzLnBlbmRpbmdJbXBvcnRzPTAsdGhpcy5pbXBvcnRWYWx1ZSkpLmNhdGNoKGU9Pnt0aHJvdyB0aGlzLmltcG9ydFByb21pc2U9dm9pZCAwLGkoKS5sb2dVc2FnZShoLHttZXNzYWdlOmUubWVzc2FnZSxwZW5kaW5nSW1wb3J0czp0aGlzLnBlbmRpbmdJbXBvcnRzfSksdGhpcy5wZW5kaW5nSW1wb3J0cz0wLGV9KX1jYXRjaChlKXt0aGlzLmltcG9ydFByb21pc2U9UHJvbWlzZS5yZWplY3QoZSl9fXJldHVybiB0aGlzLnBlbmRpbmdJbXBvcnRzKyssdGhpcy5pbXBvcnRQcm9taXNlfSx0aGlzLmlkPShzKyspLnRvU3RyaW5nKCl9ZGFuZ2Vyb3VzbHlJbXBvcnRTeW5jKCl7aWYoIXRoaXMuaXNMb2FkZWQoKSl0aHJvdyBuZXcgRXJyb3IoIkltcG9ydCBpcyBub3QgYXZhaWxhYmxlIHlldC4iKTtyZXR1cm4gdGhpcy5pbXBvcnRWYWx1ZX10cnlJbXBvcnRGb3JSZW5kZXIoKXtpZihpKCkuaXNJbXBvcnRMb2FkZWQodGhpcy5pZCkpcmV0dXJuIHRoaXMuaW1wb3J0VmFsdWU7dGhpcy5pbXBvcnQoKX1pc0xvYWRlZCgpe3JldHVybiBpKCkuaXNJbXBvcnRMb2FkZWQodGhpcy5pZCl9X2dldEltcG9ydE5hbWVGb3JMb2dnaW5nKCl7Y29uc3QgZT10aGlzLmdldHRlci50b1N0cmluZygpO3RyeXtjb25zdCB0PWUubWF0Y2gobCk7cmV0dXJuIHQmJnQubGVuZ3RoPjE/dFsxXTplfWNhdGNoKHQpe3JldHVybiBlfX19bGV0IGY7ZnVuY3Rpb24gcCgpe2NvbnN0IGU9ZjtyZXR1cm4gZj1udWxsLGV9ZnVuY3Rpb24gYihlKXtmPWV9Y2xhc3MgZyBleHRlbmRzIGR7Y29uc3RydWN0b3IoZSx0LG4pe3N1cGVyKGUsdCk7bGV0IGE9dGhpczt0aGlzLmltcG9ydEFuZEV4ZWN1dGU9ZnVuY3Rpb24oLi4uZSl7bGV0IHQ9KG51bGw9PW4/dm9pZCAwOm4uY2FwdHVyZUJ1bmRsZVRpbWUpP0RhdGUubm93KCk6bnVsbDtyZXR1cm4gYS5pbXBvcnQoIkxhenlBY3Rpb24iKS50aGVuKG49PntiKHQpO2NvbnN0IGE9bi5hcHBseShudWxsLGUpO3JldHVybiBiKG51bGwpLGF9KX19fXZhciBtPW4oMiksdj1uKDU0KTtmdW5jdGlvbiB3KGUpe3JldHVybiBuLnA9ZSxlfWxldCBPPVtdLHk9ITE7ZnVuY3Rpb24gQShlKXt5P2UoKTpPLnB1c2goZSl9ZnVuY3Rpb24gSSgpe3k9ITA7Zm9yKHZhciBlPTA7ZTxPLmxlbmd0aDtlKyspT1tlXSgpO089W119Y29uc3QgRT01LGo9MWUzLFQ9MWU0LGs9IkxhenlMb2FkU3VjY2Vzc0FmdGVyUmV0cnkiLFU9IkxhenlMb2FkRmFpbHVyZSI7Y2xhc3MgQ3tjb25zdHJ1Y3RvcihlLHQpe3RoaXMuaW1wb3J0Q2FsbGJhY2s9ZSx0aGlzLnJ1bldoZW49dCx0aGlzLmlzTG9hZGVkPSExLHRoaXMuYXR0ZW1wdHM9MCx0aGlzLnBlbmRpbmdJbXBvcnRzPTAsdGhpcy5pbXBvcnRXYXRlcmZhbGxEYXRhPXt9fWltcG9ydE1vZHVsZShlKXtyZXR1cm4gdGhpcy5wcm9taXNlfHwodGhpcy5wcm9taXNlPW5ldyBQcm9taXNlKCh0LG4pPT57KHRoaXMucnVuV2hlbnx8QSkoYXN5bmMoKT0+e2Zvcih0aGlzLmF0dGVtcHRzPTA7IXRoaXMuaXNMb2FkZWQmJnRoaXMuYXR0ZW1wdHM8RTspdHJ5e2F3YWl0IHRoaXMubG9hZE1vZHVsZSh0LGUpfWNhdGNoKGUpe2F3YWl0IHRoaXMub25Mb2FkRmFpbGVkKGUsbil9fSl9KSksdGhpcy5pc0xvYWRlZHx8dGhpcy5wZW5kaW5nSW1wb3J0cysrLHRoaXMucHJvbWlzZX1nZXRJc0xvYWRlZCgpe3JldHVybiB0aGlzLmlzTG9hZGVkfWdldFVybChlKXtyZXR1cm4gRS1lPD0xP09iamVjdChtLkspKCk6T2JqZWN0KG0uTCkoKX1hc3luYyBsb2FkTW9kdWxlKGUsdCl7bGV0IG49dGhpcy5nZXRVcmwodGhpcy5hdHRlbXB0cysrKTt3KG4pO2NvbnN0IGE9dGhpcy5pbXBvcnRDYWxsYmFjaygpO3coT2JqZWN0KG0uTCkoKSk7Y29uc3Qgcz1hd2FpdCBhO2UocyksT2JqZWN0KGMuaikoKSYmKHRoaXMuYWRkV2F0ZXJmYWxsQ2hlY2twb2ludCgibW9kdWxlIiksc2V0VGltZW91dCgoKT0+e2koKS5sb2dVc2FnZSgiTGF6eU1vZHVsZUltcG9ydHMiLE9iamVjdC5hc3NpZ24oe2VudHJ5TW9kdWxlSWQ6dGhpcy5fX2dldEVudHJ5TW9kdWxlSWRGb3JMb2dnaW5nKCl9LHRoaXMuaW1wb3J0V2F0ZXJmYWxsRGF0YSkpLHRoaXMuaW1wb3J0V2F0ZXJmYWxsRGF0YT1udWxsfSxUKSwib2JqZWN0Ij09dHlwZW9mIHMmJiJMYXp5SW1wb3J0IiE9dCYmUy5wdXNoKHQpKSx0aGlzLmlzTG9hZGVkPSEwLHRoaXMucGVuZGluZ0ltcG9ydHM9MCx0aGlzLmF0dGVtcHRzPjEmJmkoKS5sb2dVc2FnZShrLHthdHRlbXB0czp0aGlzLmF0dGVtcHRzLnRvU3RyaW5nKCksdXJsOm59KX1hc3luYyBvbkxvYWRGYWlsZWQoZSx0KXtpZihlLnJlcXVlc3QpaWYodGhpcy5hdHRlbXB0cz49RSl7aSgpLmxvZ1VzYWdlKFUse21lc3NhZ2U6ZS5tZXNzYWdlLHBlbmRpbmdJbXBvcnRzOnRoaXMucGVuZGluZ0ltcG9ydHN9KTtsZXQgbj0iRmFpbGVkIHRvIGxvYWQgamF2YXNjcmlwdC4iO2UuaHR0cFN0YXR1cyYmKG4rPSJTdGF0dXM6IitlLmh0dHBTdGF0dXMpO2NvbnN0IGE9bmV3IEVycm9yKG4pO2EubmV0d29ya0Vycm9yPSEwLGEuZGlhZ25vc3RpY0luZm89ZS5kaWFnbm9zdGljSW5mb3x8ZS5tZXNzYWdlLGEucmVxdWVzdD1lLnJlcXVlc3QsdChhKSx0aGlzLnBlbmRpbmdJbXBvcnRzPTAsdGhpcy5wcm9taXNlPXZvaWQgMH1lbHNlIHRoaXMuYXR0ZW1wdHM+MSYmYXdhaXQgT2JqZWN0KHYuYSkoaipNYXRoLnBvdygyLHRoaXMuYXR0ZW1wdHMtMikpO2Vsc2UgZS5zY3JpcHRFdmFsPSEwLGkoKS5sb2dFcnJvcihlKSx0aGlzLmlzTG9hZGVkPSEwLGUucmVwb3J0ZWQ9ITAsdChlKX1fX2dldEVudHJ5TW9kdWxlSWRGb3JMb2dnaW5nKCl7Y29uc3QgZT10aGlzLmltcG9ydENhbGxiYWNrLnRvU3RyaW5nKCk7dHJ5e2NvbnN0IHQ9Ly4qXC5iaW5kXChudWxsLChbXildKylcKS8sbj1lLm1hdGNoKHQpO3JldHVybiBuJiZuLmxlbmd0aD4xP25bMV06ZX1jYXRjaCh0KXtyZXR1cm4gZX19YWRkV2F0ZXJmYWxsQ2hlY2twb2ludChlKXt0aGlzLmltcG9ydFdhdGVyZmFsbERhdGEmJnZvaWQgMD09PXRoaXMuaW1wb3J0V2F0ZXJmYWxsRGF0YVtlXSYmKHRoaXMuaW1wb3J0V2F0ZXJmYWxsRGF0YVtlXT1udWxsPT09c2VsZnx8dm9pZCAwPT09c2VsZj92b2lkIDA6c2VsZi5wZXJmb3JtYW5jZS5ub3coKSl9fWxldCBTPVtdO2Z1bmN0aW9uIEIoKXtjb25zdCBlPVM7cmV0dXJuIFM9W10sZX1jbGFzcyBNIGV4dGVuZHMgQ3tjb25zdHJ1Y3RvcihlKXtzdXBlcihlLGU9PntlKCl9KSx0aGlzLmlzQm9vdE1vZHVsZT0oKT0+ITB9fW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gZ30pKSxuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB9KSksbi5kKHQsImgiLChmdW5jdGlvbigpe3JldHVybiBifSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gZH0pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEN9KSksbi5kKHQsImYiLChmdW5jdGlvbigpe3JldHVybiBCfSkpLG4uZCh0LCJpIiwoZnVuY3Rpb24oKXtyZXR1cm4gSX0pKSxuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBNfSkpfSw0MDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSk7dmFyIGE9bigxMSk7ZnVuY3Rpb24gcygpe3JldHVybiBPYmplY3QoYS5hKSgpLmxvY2F0aW9ufWZ1bmN0aW9uIHIoKXtyZXR1cm4gd2luZG93LmxvY2F0aW9ufX0sNDE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiB1fSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSk7dmFyIGE9big0Mikscz1uKDE1MCk7Y29uc3Qgcj1bXTtmdW5jdGlvbiBvKGUpe3IucHVzaChlKX1mdW5jdGlvbiBpKGUsdCxuLGEpe3IuZm9yRWFjaChzPT57cyhlLHQsbixhKX0pfWZ1bmN0aW9uIHUoZSx0LG4pe2woYS5hLkRlYnVnRXJyb3IsZSx0LG4pfWZ1bmN0aW9uIGMoZSx0LG4pe2woYS5hLkVycm9yLGUsdCxuKX1mdW5jdGlvbiBoKGUsdCxuKXtpZihjKGUsdCxuKSwic3RyaW5nIj09dHlwZW9mIGUpdGhyb3cgbmV3IEVycm9yKGUpO3Rocm93IGV8fG5ldyBFcnJvcigiVW5rbm93bkVycm9yIil9ZnVuY3Rpb24gbChlLHQsbixhKXt2YXIgcjtsZXQgbyx1OyJzdHJpbmciPT10eXBlb2YgdD8odT10LG89T2JqZWN0KHMuYSkobil8fG5ldyBFcnJvcih0KSk6KG89dHx8bmV3IEVycm9yKCJVbmtub3duRXJyb3IiKSx1PW8ubWVzc2FnZSksKG51bGw9PT0ocj1vLmVycm9yKXx8dm9pZCAwPT09cj92b2lkIDA6ci5tZXNzYWdlKSYmby5lcnJvci5zdGFjayYmKHU9by5lcnJvci5tZXNzYWdlLG8uc3RhY2s9by5lcnJvci5zdGFjayxvLm5hbWU9by5lcnJvci5uYW1lKSxvLmNvbXBvbmVudD91PSJDT01QT05FTlQgRVJST1I6ICIrby5tZXNzYWdlOm8uc2NyaXB0RXZhbCYmKHU9IkVWQUwgRVJST1I6ICIrby5tZXNzYWdlKSxpKHV8fCIiLGUsYSxvKX10LmI9e2luZm86ZnVuY3Rpb24oZSx0KXtpKGUsYS5hLkluZm8sdCl9LHdhcm46ZnVuY3Rpb24oZSx0KXtpKGUsYS5hLldhcm5pbmcsdCl9LHZlcmJvc2U6ZnVuY3Rpb24oZSx0KXtpKGUsYS5hLlZlcmJvc2UsdCl9fX0sNDI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYTshZnVuY3Rpb24oZSl7ZVtlLk5vbmU9MF09Ik5vbmUiLGVbZS5FcnJvcj0xXT0iRXJyb3IiLGVbZS5EZWJ1Z0Vycm9yPTJdPSJEZWJ1Z0Vycm9yIixlW2UuV2FybmluZz0zXT0iV2FybmluZyIsZVtlLkluZm89NF09IkluZm8iLGVbZS5WZXJib3NlPTVdPSJWZXJib3NlIn0oYXx8KGE9e30pKSx0LmE9YX0sNDQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDI0KSxzPW4oMTkzKSxyPW4oMTk0KTtjb25zdCBvPVsiSW52YWxpZExpY2Vuc2UiLCJUZW5hbnRBY2Nlc3NCbG9ja2VkIiwiVXNlckhhc05vTWFpbGJveCIsIkFjY291bnREaXNhYmxlZCIsIkVycm9yTm9uRXhpc3RlbnRNYWlsYm94IiwiRXJyb3JNZXNzYWdlU2l6ZUV4Y2VlZGVkIl07ZnVuY3Rpb24gaShlKXtyZXR1cm4gT2JqZWN0KGEuYSkobyxlKX12YXIgdT1uKDE5NSk7Y29uc3QgYz1bIk92ZXJCdWRnZXQiLCJUb29NYW55T2JqZWN0c09wZW5lZCIsIkVycm9yU2VydmVyQnVzeSIsIk1haWxib3hTdG9yZVVuYXZhaWxhYmxlIl07ZnVuY3Rpb24gaChlKXtyZXR1cm4gT2JqZWN0KGEuYSkoYyxlKX1jb25zdCBsPVsiQ29ubmVjdGlvbkZhaWxlZFRyYW5zaWVudCIsIlN0b3JhZ2VUcmFuc2llbnQiLCJPd2FMb2NrVHJhY2thYmxlVGltZW91dCIsIk1haWxib3hJblRyYW5zaXQiLCJNYWlsYm94SW5mb1N0YWxlIiwiTWFpbGJveENyb3NzU2l0ZUZhaWxvdmVyIiwiT3dhTG9ja1RpbWVvdXQiLCJEQ092ZXJsb2FkZWQiLCJFcnJvckludGVybmFsU2VydmVyVHJhbnNpZW50RXJyb3IiLCJFcnJvclJpZ2h0c01hbmFnZW1lbnRUcmFuc2llbnRFeGNlcHRpb24iXTtmdW5jdGlvbiBkKGUpe3JldHVybiBPYmplY3QoYS5hKShsLGUpfWNvbnN0IGY9WyJOb09wZXJhdGlvbkVycm9yIiwiU3ludGF4RXJyb3IiLCJJbnZhbGlkT3BlcmF0aW9uRXJyb3IiLCJJbnZhbGlkVmFyaWFibGVFcnJvciIsIlVOSVFVRV9PUEVSQVRJT05fTkFNRVMiLCJMT05FX0FOT05ZTU9VU19PUEVSQVRJT04iLCJTSU5HTEVfUk9PVF9GSUVMRF9TVUJTQ1JJUFRJT05TIiwiRklFTERTX09OX0NPUlJFQ1RfVFlQRSIsIk9WRVJMQVBQSU5HX0ZJRUxEU19DQU5fQkVfTUVSR0VEIiwiU0NBTEFSX0xFQUZTIiwiS05PV05fQVJHVU1FTlRfTkFNRVMiLCJVTklRVUVfQVJHVU1FTlRfTkFNRVMiLCJQUk9WSURFRF9OT05fTlVMTF9BUkdVTUVOVFMiLCJVTklRVUVfRlJBR01FTlRfTkFNRVMiLCJLTk9XTl9UWVBFX05BTUVTIiwiRlJBR01FTlRTX09OX0NPTVBPU0lURV9UWVBFUyIsIk5PX1VOVVNFRF9GUkFHTUVOVFMiLCJLTk9XTl9GUkFHTUVOVF9OQU1FUyIsIk5PX0ZSQUdNRU5UX0NZQ0xFUyIsIlBPU1NJQkxFX0ZSQUdNRU5UX1NQUkVBRFMiLCJBUkdVTUVOVFNfT0ZfQ09SUkVDVF9UWVBFIiwiREVGQVVMVF9WQUxVRVNfT0ZfQ09SUkVDVF9UWVBFIiwiVU5JUVVFX0lOUFVUX0ZJRUxEX05BTUVTIiwiS05PV05fRElSRUNUSVZFUyIsIkRJUkVDVElWRVNfSU5fQUxMT1dFRF9MT0NBVElPTlMiLCJVTklRVUVfRElSRUNUSVZFU19QRVJfTE9DQVRJT04iLCJVTklRVUVfVkFSSUFCTEVfTkFNRVMiLCJWQVJJQUJMRVNfQVJFX0lOUFVUX1RZUEVTIiwiTk9fVU5ERUZJTkVEX1ZBUklBQkxFUyIsIk5PX1VOVVNFRF9WQVJJQUJMRVMiLCJWQVJJQUJMRVNfSU5fQUxMT1dFRF9QT1NJVElPTiIsInVuZGVmaW5lZCJdO2Z1bmN0aW9uIHAoZSl7dmFyIHQ7cmV0dXJuIG51bGwhPShudWxsPT09KHQ9bnVsbD09ZT92b2lkIDA6ZS5leHRlbnNpb25zKXx8dm9pZCAwPT09dD92b2lkIDA6dC5jb2RlKSYmIU9iamVjdChhLmEpKGYsZS5leHRlbnNpb25zLmNvZGUpfW4uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5hfSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gcy5hfSkpLG4uZCh0LCJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gci5hfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSxuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHUuYX0pKSxuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksbi5kKHQsImgiLChmdW5jdGlvbigpe3JldHVybiBkfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKX0sNDY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT17fTtuLnIoYSksbi5kKGEsIkJBU0VfVEhFTUVfSUQiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZChhLCJCQVNFX0RBUktfVEhFTUVfSUQiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZChhLCJCQVNFX09GRklDRV9USEVNRV9JRCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSksbi5kKGEsIkNPTlRSQVNUX1RIRU1FX0lEIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSxuLmQoYSwiTE9DQUxfU1RPUkFHRV9LRVkiLChmdW5jdGlvbigpe3JldHVybiB1fSkpLG4uZChhLCJMRUdBQ1lfUFJFTE9BREVEX1RIRU1FX0lEUyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7Y29uc3Qgcz0iYmFzZSIscj1gJHtzfS5kYXJrYCxvPSJiYXNld2l0aG9mZmljZXRoZW1lcHJlZmVycmVkIixpPSJjb250cmFzdCIsdT0iVXNlcnNOb3JtYWxpemVkVGhlbWUiLGM9W3Mscl07dmFyIGg9bigyKSxsPW4oMTUpO2NvbnN0IGQ9e307YXN5bmMgZnVuY3Rpb24gZihlLHQpe2lmKGZ1bmN0aW9uKGUpe3JldHVybiBjLmluY2x1ZGVzKGUpfShlKSlyZXR1cm4gbnVsbDtsZXQgbj1kW2VdO3JldHVybiBufHwobj1kW2VdPShhc3luYygpPT57dHJ5e2xldCB0PWF3YWl0IGZldGNoKGAke09iamVjdChoLkkpKCl9cmVzb3VyY2VzL3RoZW1lL2ZhYnJpYy5jb2xvci52YXJpYWJsZXMudGhlbWUuJHtlLnRvTG93ZXJDYXNlKCl9Lmpzb25gKTtyZXR1cm4gYXdhaXQgdC5qc29uKCl9Y2F0Y2goZSl7cmV0dXJuIG51bGx9fSkoKSxPYmplY3QobC5iKSgidG1fcyIsdHx8Im4vYSIpKSxufWZ1bmN0aW9uIHAoZSx0KXtyZXR1cm5gJHtlfSR7dD8iLmRhcmsiOiIifWB9bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBmfSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSl9LDU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiBpfSkpLG4uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gdX0pKSxuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksbi5kKHQsImgiLChmdW5jdGlvbigpe3JldHVybiBsfSkpLG4uZCh0LCJnIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKSxuLmQodCwiaSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGJ9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBtfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gd30pKTt2YXIgYT1uKDExKTtsZXQgcz1udWxsLHI9dm9pZCAwO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIGV8fChlPU9iamVjdChhLmEpKCkubG9jYXRpb24pLGU9PT1sb2NhdGlvbj9zfHwocz1jKGxvY2F0aW9uKSk6YyhlKX1mdW5jdGlvbiBpKGUsdCl7cmV0dXJuIG8odClbZV19ZnVuY3Rpb24gdShlLHQpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobyh0KSxlKX1mdW5jdGlvbiBjKGUpe3JldHVybiB2b2lkIDAhPT1lJiZlLnNlYXJjaD9wKGUuc2VhcmNoLnN1YnN0cigxKSk6e319ZnVuY3Rpb24gaCgpe3JldHVybiByfHwocj1mdW5jdGlvbigpe2xldCBlPWkoInNvdXJjZSIpO2lmKGUpe2NvbnN0IGU9bChsb2NhdGlvbi5zZWFyY2gsInNvdXJjZSIpO2hpc3RvcnkucmVwbGFjZVN0YXRlKGhpc3Rvcnkuc3RhdGUsIi8iLGxvY2F0aW9uLnBhdGhuYW1lK2UpfXJldHVybiBlfSgpKX1mdW5jdGlvbiBsKGUsdCl7Y29uc3Qgbj1uZXcgUmVnRXhwKCIoXFw/fCYpIit0KyI9XFx3KiY/IiwiZyIpO2xldCBhPWUuc3BsaXQobikuam9pbigiIik7Y29uc3Qgcz1hW2EubGVuZ3RoLTFdO3JldHVybiI/IiE9PXMmJiImIiE9PXN8fChhPWEuc3Vic3RyKDAsYS5sZW5ndGgtMSkpLGF9Y29uc3QgZD0xZTMsZj0vXCsvZztmdW5jdGlvbiBwKGUpe2NvbnN0IHQ9e307aWYoInN0cmluZyI9PXR5cGVvZiBlJiZlLmxlbmd0aD4wKXtjb25zdCBuPWUuc3BsaXQoIiYiKSxhPW4ubGVuZ3RoPmQ/ZDpuLmxlbmd0aDtmb3IobGV0IGU9MDtlPGE7KytlKXtjb25zdCBhPW5bZV0ucmVwbGFjZShmLCIlMjAiKS5zcGxpdCgiPSIpO3RbZGVjb2RlVVJJQ29tcG9uZW50KGFbMF0pXT1kZWNvZGVVUklDb21wb25lbnQoYS5zbGljZSgxKS5qb2luKCI9IikpfX1yZXR1cm4gdH1mdW5jdGlvbiBiKGUpe3JldHVybiBlP09iamVjdC5rZXlzKGUpLm1hcCh0PT5lbmNvZGVVUklDb21wb25lbnQodCkrKGVbdF0/Ij0iK2VuY29kZVVSSUNvbXBvbmVudChlW3RdKToiIikpLmpvaW4oIiYiKToiIn1sZXQgZztjb25zdCBtPSgpPT4odm9pZCAwPT09ZyYmKGc9dSgiZ3VscCIpKSxnKTtsZXQgdjtjb25zdCB3PSgpPT4odm9pZCAwPT09diYmKHY9bSgpfHx1KCJicmFuY2giKSksdil9LDUwNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSg1KSxuLmUoOCksbi5lKDEwKSxuLmUoMTMpLG4uZSgxNzApXSkudGhlbihuLmJpbmQobnVsbCwxMjExKSkpLHI9bmV3IGEuYShzLGU9PmUuZ2V0Q2FsZW5kYXJEZWVwTGlua0Jvb3RzdHJhcE9wdGlvbnMpfSw1MDY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSk7dmFyIGE9big0KTtjb25zdCBzPW5ldyBhLmIoKCk9PlByb21pc2UuYWxsKFtuLmUoMSksbi5lKDIpLG4uZSgzKSxuLmUoNSksbi5lKDE5MCldKS50aGVuKG4uYmluZChudWxsLDEyMTApKSkscj1uZXcgYS5hKHMsZT0+ZS5nZXRNYWlsRGVlcExpbmtCb290c3RyYXBPcHRpb25zKX0sNTA5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgxKSxuLmUoMiksbi5lKDMpLG4uZSg1KSxuLmUoMzgyKV0pLnRoZW4obi5iaW5kKG51bGwsMTM3OCkpKSxyPW5ldyBhLmMocyxlPT5lLmNvbXBvbmVudHMpLG89bmV3IGEuYShzLGU9PmUudG9nZ2xlTWF4aW1pemUpfSw1MTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksbi5kKHQsImQiLChmdW5jdGlvbigpe3JldHVybiB1fSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksbi5kKHQsImUiLChmdW5jdGlvbigpe3JldHVybiBsfSkpO3ZhciBhPW4oOSk7bGV0IHM7ZnVuY3Rpb24gcigpe2lmKCFzKXtjb25zdCBlPU9iamVjdChhLmEpKHdpbmRvdywiQm9vdERpYWdub3N0aWNzIik7aWYoZSl0cnl7cz1KU09OLnBhcnNlKGUpfWNhdGNoKGUpe3M9e319ZWxzZSBzPXt9fXJldHVybiBzfWZ1bmN0aW9uIG8oZSl7dmFyIHQ7Y29uc3Qgbj1udWxsPT09KHQ9ZS5vd2FVc2VyQ29uZmlnKXx8dm9pZCAwPT09dD92b2lkIDA6dC5TZXNzaW9uU2V0dGluZ3M7cmV0dXJuIG4mJihzPXtwdWlkOm4uVXNlclB1aWQsdGlkOm4uRXh0ZXJuYWxEaXJlY3RvcnlUZW5hbnRHdWlkLG1ieDpuLk1haWxib3hHdWlkLHByZW06bi5Jc1ByZW1pdW1Db25zdW1lck1haWxib3g/IjEiOiIwIixpc0NvbjowIT1uLldlYlNlc3Npb25UeXBlfSksT2JqZWN0KGEuZSkod2luZG93LCJCb290RGlhZ25vc3RpY3MiLEpTT04uc3RyaW5naWZ5KHMpKSxlfWZ1bmN0aW9uIGkoKXtyZXR1cm4gcigpLnB1aWR9ZnVuY3Rpb24gdSgpe3JldHVybiByKCkudGlkfWZ1bmN0aW9uIGMoKXtyZXR1cm4gcigpLm1ieH1mdW5jdGlvbiBoKCl7cmV0dXJuIHIoKS5wcmVtfWZ1bmN0aW9uIGwoKXtyZXR1cm4gcigpLmlzQ29ufX0sNTI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgYT1uKDIpO2Z1bmN0aW9uIHMoZSl7bGV0IHQ9T2JqZWN0KGEudikoaSgiWC1PV0EtQ0FOQVJZIixlKSk7Y29uc3Qgbj1PYmplY3QoYS52KShpKCJYLU9XQS1DQU5BUlktUFJEIixlKSkscz1PYmplY3QoYS52KShpKCJYLU9XQS1DQU5BUlktQkYiLGUpKTtyZXR1cm4gdCYmMCE9dC5sZW5ndGg/KG4mJm4ubGVuZ3RoPjAmJih0Kz0iLCIrbikscyYmcy5sZW5ndGg+MCYmKHQrPSIsIitzKSx0KTpudWxsfWZ1bmN0aW9uIHIoZSl7cmV0dXJuIHMoZSl8fCJYLU9XQS1DQU5BUllfY29va2llX2lzX251bGxfb3JfZW1wdHkifWZ1bmN0aW9uIG8oZSl7cmV0dXJuIE9iamVjdChhLnYpKGkoIlgtT1dBLUNBTkFSWS1ERUJVRyIsZSkpfWZ1bmN0aW9uIGkoZSx0KXtyZXR1cm4gZSsoKHQ9dHx8T2JqZWN0KGEudikoInRhcmdldFNlcnZlciIpKT8iXyIrdC50b0xvY2FsZUxvd2VyQ2FzZSgpOiIiKX19LDUyNDpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1zZWxmLkl0ZW1zVmlld1N0cmluZ3N9LDU0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYShlKXtyZXR1cm4gbmV3IFByb21pc2UodD0+c2V0VGltZW91dCh0LGUpKX1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSl9LDU1MjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSk7dmFyIGE9big0KTtjb25zdCBzPW5ldyBhLmMobmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgwKSxuLmUoMSksbi5lKDIpLG4uZSgzKSxuLmUoMjk3KV0pLnRoZW4obi5iaW5kKG51bGwsMTMzMykpKSxlPT5lLmRlZmF1bHQpLHI9bmV3IGEuYyhuZXcgYS5iKCgpPT5Qcm9taXNlLmFsbChbbi5lKDEpLG4uZSgyKSxuLmUoMyksbi5lKDUpLG4uZSgxODQpXSkudGhlbihuLmJpbmQobnVsbCwxMzY4KSkpLGU9PmUuTGVmdFJhaWwpfSw1ODpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKTt2YXIgYT1uKDQwKTtmdW5jdGlvbiBzKCl7dmFyIGU7Y29uc3QgdD1udWxsPT09KGU9T2JqZWN0KGEuYikoKSl8fHZvaWQgMD09PWU/dm9pZCAwOmUucGF0aG5hbWU7aWYodCl7bGV0IGU9dC5zcGxpdCgiLyIpLmZpbHRlcihlPT4hIWUpO3JldHVybiBlWzBdP2VbMF0udG9Mb3dlckNhc2UoKTpudWxsfXJldHVybiBudWxsfX0sNTk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBofSkpO3ZhciBhPW4oMTApLHM9bigxNjApLHI9big4Niksbz1uKDIpLGk9bigxNjEpO2NvbnN0IHU9IkF1dGhvcml6YXRpb24iLGM9IngtYW5jaG9ybWFpbGJveCI7ZnVuY3Rpb24gaChlLHQsbil7Y29uc3QgaD1PYmplY3Qoci5hKSgpO2hbIlgtUmVxLVNvdXJjZSJdPU9iamVjdChvLm0pKCk7Y29uc3QgbD1PYmplY3QoYS5hKSgpO2wuaXNGZWF0dXJlRW5hYmxlZCgiZndrLXVzZUpzb25OZXRTZXJpYWxpemVyIikmJihoWyJYLVVzZUpzb25OZXRTZXJpYWxpemVyIl09IjEiKTtsZXQgZD1Qcm9taXNlLnJlc29sdmUoaCksZj1Qcm9taXNlLnJlc29sdmUodm9pZCAwKSxwPVByb21pc2UucmVzb2x2ZSh2b2lkIDApO3JldHVybiFlJiZsLmdldEF1dGhUb2tlbiYmKGY9bC5nZXRBdXRoVG9rZW4odm9pZCAwLHQpKSwhbiYmbC5nZXRBbmNob3JNYWlsYm94JiYocD1sLmdldEFuY2hvck1haWxib3godCkpLGQ9UHJvbWlzZS5hbGwoW2YscF0pLnRoZW4oKFtlLHRdKT0+KGUmJihoW3VdPWUpLHQmJihoW2NdPXQpLGgpKSxPYmplY3Qocy5hKShoKSxPYmplY3QoaS5hKShoKSxkLmJlc3RFZmZvcnQ9aCxkfX0sNjE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSk7dmFyIGE9bigzMCkscz1uKDIxKTtjb25zdCByPVsiWC1CRVNlcnZlciIsIlgtRkVTZXJ2ZXIiLCJYLU1TRWRnZS1SZWYiXSxvPVs0MDMsNDA0LDUwM107ZnVuY3Rpb24gaShlKXtsZXQgdD0iIjtpZihlLnN0YXR1cyl7aWYodCs9ZS5zdGF0dXMsby5pbmRleE9mKGUuc3RhdHVzKT4tMSl7dCs9InwiO2ZvcihsZXQgbj0wO248ci5sZW5ndGg7bisrKXtjb25zdCBzPXJbbl07aWYoT2JqZWN0KGEuYSkoZSxzKSl7dCs9czticmVha319fX1lbHNlIGUubmV0d29ya0Vycm9yP3Q9Ik5ldHdvcmtSZXNwb25zZUVycm9yIjoodD0iVW5rbm93blJlc3BvbnNlRXJyb3IiLE9iamVjdChzLmEpKCJicmVzIixPYmplY3Qua2V5cyhlKS5qb2luKCJ8IikpKTtyZXR1cm4gbj1uZXcgRXJyb3IodCksaT1lLG4ucmVzcG9uc2U9aSxuLnN0YXR1cz1pLnN0YXR1cyxuO3ZhciBuLGl9fSw2MjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKTt2YXIgYT1uKDMwKSxzPW4oMikscj1uKDIxKTtjb25zdCBvPVsiWC1PV0EtRXJyb3IiLCJYLUF1dGgtRXJyb3IiLCJYLVJlZGlyLUVycm9yIiwiWC1KSVQtRXJyb3IiXTtmdW5jdGlvbiBpKGUpe2xldCB0PXtlcnI6IlVua25vd24iLGVzcmM6IlJ1bnRpbWUifTtpZihlKXt0LmV0PWUudXJsPyJTZXJ2ZXJFcnJvciI6IkNsaWVudEVycm9yIixlLnNvdXJjZSYmKHQuZXNyYz1lLnNvdXJjZSksKGUubmFtZXx8ZS5tZXNzYWdlKSYmKHQuZXJyPWAke2UubmFtZX06ICR7ZS5tZXNzYWdlfWApO2NvbnN0IG49bnVsbD09ZT92b2lkIDA6ZS5yZXNwb25zZTt0LmVzdGFjaz1PYmplY3QoYS5hKShuLCJYLUlubmVyRXhjZXB0aW9uIil8fGUuc3RhY2ssdC5zdD0obnVsbD09bj92b2lkIDA6bi5zdGF0dXMpfHwobnVsbD09ZT92b2lkIDA6ZS5zdGF0dXMpO2ZvcihsZXQgZT0wO2U8by5sZW5ndGg7ZSsrKXtsZXQgcj1vW2VdLGk9T2JqZWN0KGEuYSkobixyKTtpZihpKXt0LmVoaz1yLHQuZXJyPU9iamVjdChzLlUpKGkpO2JyZWFrfX1jb25zdCBpPU9iamVjdChhLmEpKG4sIngtbXMtZGlhZ25vc3RpY3MiKTtpJiZPYmplY3Qoci5hKSgieC1tcy1kaWFnbm9zdGljcyIsaSksdC5lZmU9T2JqZWN0KGEuYSkobiwiWC1GRVNlcnZlciIpLHQuZWJlPU9iamVjdChhLmEpKG4sIlgtQkVTZXJ2ZXIiKSx0LmV3c3Zlcj1PYmplY3QoYS5hKShuLCJYLU9XQS1WZXJzaW9uIiksdC5yZXFpZD1PYmplY3QoYS5hKShuLCJyZXNwb25zZS1pZCIpLHQuZW1zZz1PYmplY3QoYS5hKShuLCJYLU9XQUVycm9yTWVzc2FnZUlEIiksdC5lc3RhY2smJih0LmVzdGFjay5sZW5ndGg+MTAyNCYmKHQuZXN0YWNrPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS5zcGxpdCgiXG4iKTtmb3IobGV0IGU9MTtlPHQubGVuZ3RoO2UrKylpZih0WzBdIT10W2VdKXJldHVybiB0LnNsaWNlKGUtMSkuam9pbigiXG4iKTtyZXR1cm4gZX0odC5lc3RhY2spKSx0LmVzdGFjay5sZW5ndGg+MTAyNCYmKHQuZXN0YWNrPXQuZXN0YWNrLnN1YnN0cmluZygwLDEwMjQpKSl9cmV0dXJuIHR9fSw2NTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT1uKDEyNSk7dC5BV1RQaWlLaW5kPWEuQVdUUGlpS2luZDt2YXIgcz1uKDIzOCk7dC5BV1Q9cy5kZWZhdWx0LHQuQVdUX0NPTExFQ1RPUl9VUkxfVU5JVEVEX1NUQVRFUz0iaHR0cHM6Ly91cy5waXBlLmFyaWEubWljcm9zb2Z0LmNvbS9Db2xsZWN0b3IvMy4wLyIsdC5BV1RfQ09MTEVDVE9SX1VSTF9HRVJNQU5ZPSJodHRwczovL2RlLnBpcGUuYXJpYS5taWNyb3NvZnQuY29tL0NvbGxlY3Rvci8zLjAvIix0LkFXVF9DT0xMRUNUT1JfVVJMX0pBUEFOPSJodHRwczovL2pwLnBpcGUuYXJpYS5taWNyb3NvZnQuY29tL0NvbGxlY3Rvci8zLjAvIix0LkFXVF9DT0xMRUNUT1JfVVJMX0FVU1RSQUxJQT0iaHR0cHM6Ly9hdS5waXBlLmFyaWEubWljcm9zb2Z0LmNvbS9Db2xsZWN0b3IvMy4wLyIsdC5BV1RfQ09MTEVDVE9SX1VSTF9FVVJPUEU9Imh0dHBzOi8vZXUucGlwZS5hcmlhLm1pY3Jvc29mdC5jb20vQ29sbGVjdG9yLzMuMC8ifSw2NzU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYyhuZXcgYS5iKCgpPT5Qcm9taXNlLmFsbChbbi5lKDEpLG4uZSgyKSxuLmUoMyksbi5lKDUpLG4uZSgyNzgpXSkudGhlbihuLmJpbmQobnVsbCwxMzY5KSkpLGU9PmUuTWFpbEZvbGRlclRyZWVzUGFyZW50Q29udGFpbmVyKSxyPW5ldyBhLmEobmV3IGEuZCgoKT0+UHJvbWlzZS5hbGwoW24uZSg1KSxuLmUoOCksbi5lKDEwKSxuLmUoMTMpLG4uZSg0NTApXSkudGhlbihuLmJpbmQobnVsbCwxMzMwKSkpLGU9PmUudG9nZ2xlRm9sZGVyVHJlZUNvbGxhcHNlZCksbz1uZXcgYS5jKG5ldyBhLmIoKCk9Pm4uZSgxMDAxKS50aGVuKG4uYmluZChudWxsLDEzMzEpKSksZT0+ZS5QcmltYXJ5TWFpbEZvbGRlckhpZXJhcmNoeURvY3VtZW50KTtuZXcgYS5jKG5ldyBhLmIoKCk9Pm4uZSgxOTUzKS50aGVuKG4uYmluZChudWxsLDEzMzIpKSksZT0+ZS5Gb2xkZXJIaWVyYXJjaHlDb25maWd1cmF0aW9uUXVlcnlEb2N1bWVudCl9LDY3NjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSk7dmFyIGE9big0KTtjb25zdCBzPW5ldyBhLmIoKCk9PlByb21pc2UuYWxsKFtuLmUoMSksbi5lKDIpLG4uZSgzKSxuLmUoNSksbi5lKDE1OCldKS50aGVuKG4uYmluZChudWxsLDEzMzUpKSkscj1uZXcgYS5jKHMsZT0+ZS5BcHBDb21tYW5kQmFyKX0sNjc4OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSk7dmFyIGE9big0KTtjb25zdCBzPW5ldyBhLmIoKCk9PlByb21pc2UuYWxsKFtuLmUoMCksbi5lKDEpLG4uZSgyKSxuLmUoMyksbi5lKDE3NildKS50aGVuKG4uYmluZChudWxsLDEzNzYpKSkscj1uZXcgYS5jKHMsZT0+ZS5DYWxlbmRhclJpYmJvbiksbz1uZXcgYS5jKHMsZT0+ZS5jYWxlbmRhckFwcENvbW1hbmRQcm9wcyl9LDY3OTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiBvfSkpO3ZhciBhPW4oNCk7Y29uc3Qgcz1uZXcgYS5iKCgpPT5Qcm9taXNlLmFsbChbbi5lKDEpLG4uZSgyKSxuLmUoMyksbi5lKDQpLG4uZSgxOTMpXSkudGhlbihuLmJpbmQobnVsbCwxMzc3KSkpLHI9bmV3IGEuYyhzLGU9PmUuTWFpbFJpYmJvbiksbz1uZXcgYS5jKHMsZT0+ZS5tYWlsQXBwQ29tbWFuZEJhclByb3BzKX0sNjgwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGE9big0KTtjb25zdCBzPW5ldyBhLmIoKCk9PlByb21pc2UuYWxsKFtuLmUoMSksbi5lKDIpLG4uZSgzKSxuLmUoNCksbi5lKDE4OCldKS50aGVuKG4uYmluZChudWxsLDE5NDY3KSkpLHI9bmV3IGEuYShzLGU9PmUuZ2V0TWFpbEJvb3RzdHJhcE9wdGlvbnMpLG89bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgxKSxuLmUoMiksbi5lKDMpLG4uZSg0KSxuLmUoMTY4KV0pLnRoZW4obi5iaW5kKG51bGwsMTk0MjcpKSksaT1uZXcgYS5hKG8sZT0+ZS5nZXRDYWxlbmRhckJvb3RzdHJhcE9wdGlvbnMpLHU9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgwKSxuLmUoNSksbi5lKDE4KSxuLmUoMTE2KSxuLmUoMTk5KV0pLnRoZW4obi5iaW5kKG51bGwsMTk2MTYpKSksYz1uZXcgYS5hKHUsZT0+ZS5nZXRQZW9wbGVCb290c3RyYXBPcHRpb25zKSxoPW5ldyBhLmIoKCk9PlByb21pc2UuYWxsKFtuLmUoMSksbi5lKDIpLG4uZSgzKSxuLmUoNCksbi5lKDE4MSldKS50aGVuKG4uYmluZChudWxsLDE5NDM2KSkpLGw9bmV3IGEuYShoLGU9PmUuZ2V0RmlsZXNCb290c3RyYXBPcHRpb25zKSxkPW5ldyBhLmIoKCk9PlByb21pc2UuYWxsKFtuLmUoMCksbi5lKDUpLG4uZSgxMSksbi5lKDE4KSxuLmUoMzc0KV0pLnRoZW4obi5iaW5kKG51bGwsMTk1NjQpKSksZj1uZXcgYS5hKGQsZT0+ZS5nZXRPcmdFeHBsb3JlckJvb3RzdHJhcE9wdGlvbnMpLHA9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgwKSxuLmUoNSksbi5lKDQ4KSxuLmUoNDUpLG4uZSgzODYpXSkudGhlbihuLmJpbmQobnVsbCwxOTcwMCkpKSxiPW5ldyBhLmEocCxlPT5lLmdldEZlZWRCb290c3RyYXBPcHRpb25zKTt2YXIgZz1uKDUwNik7Y29uc3QgbT1uZXcgYS5iKCgpPT5Qcm9taXNlLmFsbChbbi5lKDEpLG4uZSgyKSxuLmUoMyksbi5lKDUpLG4uZSgxNTkpXSkudGhlbihuLmJpbmQobnVsbCwxOTY1MSkpKSx2PW5ldyBhLmEobSxlPT5lLmdldEFwcEhvc3RCb290c3RyYXBPcHRpb25zKTt2YXIgdz1uKDUwNSksTz1uKDEzKTtjb25zdCB5PW5ldyBhLmMobmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSgxKSxuLmUoMiksbi5lKDMpLG4uZSg1KSxuLmUoMTkxKV0pLnRoZW4obi5iaW5kKG51bGwsMTk3NjEpKSksZT0+ZS5NYWlsRm9sZGVyVHJlZXNQYXJlbnRDb250YWluZXIpO3ZhciBBPW4oNjc1KSxJPW4oMTMyKSxFPW4oNTA5KSxqPW4oNjc4KSxUPW4oNjc5KSxrPW4oNTUyKSxVPW4oOSksQz1uKDY3Nik7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiB4fSkpO2NvbnN0IFM9e3N1aXRlV3JhcHBlcjpPYmplY3QoSS5hKSgib3V0bG9va1N1aXRlSGVhZGVyU3RyYXRlZ3kiKT9FLmE6dm9pZCAwLGFwcEJhclN0cmF0ZWd5Ok9iamVjdChPLmkpKCJub3ZhYXBwYmFyIik/ay5hOmsuYn0sQj1PYmplY3QoVS5iKSh3aW5kb3csImJvb3RzdHJhcFJpYmJvbkltcG9ydCIpLE09Qj9DLmE6dm9pZCAwLHg9e01haWw6e29wdGlvbnM6cixzdHJhdGVnaWVzOk9iamVjdC5hc3NpZ24oe2ZvbGRlclZpZXdTdHJhdGVneTpPYmplY3QoTy5pKSgiZ3FsZm9sZGVycyIpP0EuYTp5LG1haWxSaWJib25Qcm92aWRlcjpCP1QuYTp2b2lkIDAscmliYm9uUHJvdmlkZXI6TX0sUyl9LENhbGVuZGFyOntvcHRpb25zOmksc3RyYXRlZ2llczpPYmplY3QuYXNzaWduKHtjYWxlbmRhclJpYmJvblByb3ZpZGVyOkI/ai5hOnZvaWQgMCxyaWJib25Qcm92aWRlcjpNfSxTKX0sUGVvcGxlOntvcHRpb25zOmMsc3RyYXRlZ2llczpTfSxGaWxlc0h1Yjp7b3B0aW9uczpsLHN0cmF0ZWdpZXM6U30sTWFpbERlZXBMaW5rOntvcHRpb25zOmcuYSxzdHJhdGVnaWVzOlN9LE9yZ0V4cGxvcmVyOntvcHRpb25zOmYsc3RyYXRlZ2llczpTfSxBcHBIb3N0OntvcHRpb25zOnYsc3RyYXRlZ2llczpTfSxDYWxlbmRhckRlZXBMaW5rOntvcHRpb25zOncuYSxzdHJhdGVnaWVzOlN9LEZlZWQ6e29wdGlvbnM6YixzdHJhdGVnaWVzOlN9fX0sNjgyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuYigoKT0+UHJvbWlzZS5hbGwoW24uZSg1KSxuLmUoODEpLG4uZSg5Myksbi5lKDUyNyldKS50aGVuKG4uYmluZChudWxsLDEzMzQpKSk7bGV0IHI9bmV3IGEuYShzLGU9PmUuZ2V0T2ZmbGluZVNlc3Npb25EYXRhKSxvPW5ldyBhLmEocyxlPT5lLnNhdmVVc2VyQ29uZmlnKX0sNjk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7dmFyIGE9bigxNSkscz1uKDE5OSkscj1uKDIpLG89bigxMDMpLGk9bigyMSk7Y29uc3QgdT17b2s6ImNsaWVudHN0YXJ0dXBzdWNjZXNzIixmYWlsOiJjbGllbnRzdGFydHVwZXJyb3IiLHRyYW5zaWVudDoiY2xpZW50c3RhcnR1cGVycm9yIn07YXN5bmMgZnVuY3Rpb24gYyhlLHQsbixvKXt2YXIgYztsZXQgZixwO3RyeXtmPWF3YWl0IE9iamVjdChyLnApKCk7Y29uc3QgZT1PYmplY3Qoci5HKSgpO2UmJihwPWF3YWl0IGUpfWNhdGNoKGUpe31sZXQgYj1bbCh1W2VdfHwiY2xpZW50c3RhcnR1cG90aGVyIixlLHQsZixwKV07aWYod2luZG93Lm93YUJhY2tmaWxsZWRFcnJvcnMpZm9yKGxldCBuPTA7bjx3aW5kb3cub3dhQmFja2ZpbGxlZEVycm9ycy5sZW5ndGg7bisrKWIucHVzaChsKCJib290ZXZhbGVycm9yIixlLHQsZixwKSk7bGV0IGc9IiI7byYmby5kaWFnbm9zdGljSW5mbyYmKGcrPW8uZGlhZ25vc3RpY0luZm8pLHdpbmRvdy5vd2FCYWNrZmlsbGVkRXJyb3JzJiZ3aW5kb3cub3dhQmFja2ZpbGxlZEVycm9ycy5sZW5ndGg+MCYmKGcrPSJ8Iit3aW5kb3cub3dhQmFja2ZpbGxlZEVycm9ycy5tYXAoaCkuam9pbigifCIpKSxnJiZkKGJbMF0sIkRpYWdub3N0aWNzIixnKTtjb25zdCBtPW51bGw9PT0oYz13aW5kb3cucGVyZm9ybWFuY2UpfHx2b2lkIDA9PT1jP3ZvaWQgMDpjLm5hdmlnYXRpb247cmV0dXJuIG0mJmQoYlswXSwiUmVkaXJlY3RDb3VudCIsbS5yZWRpcmVjdENvdW50KSxPYmplY3Qocy5iKShudWxsPT1uP3ZvaWQgMDpuLnBsdCksbiYmKG4uc3RhcnQmJmQoYlswXSwiU3RhcnRUaW1lIixEYXRlLm5vdygpLW4uc3RhcnQpLGQoYlswXSwiTG9hZFRpbWUiLG4ucGx0KSksZChiWzBdLCJNaXNjRGF0YSIsT2JqZWN0KGkuYikodCxudWxsPT1vP3ZvaWQgMDpvLnJlc3BvbnNlKSksZChiWzBdLCJUaW1pbmdzIixPYmplY3QoYS5jKSgpKSxifWZ1bmN0aW9uIGgoZSl7bGV0IHQ9Im51bGwiO3JldHVybiBlJiYodD1lWzBdLCJmdW5jdGlvbiI9PXR5cGVvZiBlLmNhbGxlZSYmKHQrPSI6IitlLmNhbGxlZSgpKSksdH1mdW5jdGlvbiBsKGUsdCxuLHMsaSl7bGV0IHU9T2JqZWN0KG8uYSkoZSxuKTtyZXR1cm4gdS5wcm9wZXJ0aWVzLkJvb3RSZXN1bHQ9dCx1LnByb3BlcnRpZXMuQm90dGxlbmVja3M9T2JqZWN0KGEuZCkoKSx1LnByb3BlcnRpZXMuTGF5ZXJzPU9iamVjdChhLmUpKCksZCh1LCJCb290VHlwZSIscyksaSYmKGQodSwiSG9zdGVkU2NlbmFyaW8iLGkuaG9zdGVkU2NlbmFyaW8pLGQodSwiSG9zdFRlbGVtZXRyeSIsT2JqZWN0KHIuVSkoaS5ob3N0VGVsZW1ldHJ5KSkpLHV9ZnVuY3Rpb24gZChlLHQsbil7bnVsbCE9biYmbnVsbCE9biYmKGUucHJvcGVydGllc1t0XT1uKX19LDY5NTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBhPW4oMjAwKSxzPW4oMikscj1uKDk3KSxvPW4oMzAzKSxpPW4oNCk7Y29uc3QgdT1uZXcgaS5iKCgpPT5Qcm9taXNlLmFsbChbbi5lKDApLG4uZSg1KSxuLmUoNTU5KV0pLnRoZW4obi5iaW5kKG51bGwsMTk4NjMpKSksYz1uZXcgaS5hKHUsZT0+ZS5nZXRMb2tpRW50ZXJwcmlzZUF1dGhUb2tlbkFzeW5jKTt2YXIgaD1uKDY4MCk7ZnVuY3Rpb24gbChlLHQpe3ZhciBuLGE7cmV0dXJuIHRbMV09PWUmJigwPT0obnVsbD09PShuPXRbMl0pfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLmluZGV4T2YoImRlZXBsaW5rIikpfHwwPT0obnVsbD09PShhPXRbM10pfHx2b2lkIDA9PT1hP3ZvaWQgMDphLmluZGV4T2YoImRlZXBsaW5rIikpKX1uZXcgaS5kKCgpPT5Qcm9taXNlLmFsbChbbi5lKDUpLG4uZSg4KSxuLmUoMTApLG4uZSgxMyksbi5lKDE3OCldKS50aGVuKG4uYmluZChudWxsLDE5ODY0KSkpLmltcG9ydE1vZHVsZSgiQ2hhbmdlTW9kdWxlIik7dmFyIGQ9bigxMyksZj1uKDE3MSkscD1uKDY4Mik7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBtfSkpO2NvbnN0IGI9ImE2YzZhZDk1ZWJlOTQ4MGM5MDEzYjJlM2NlZWQwNDVjLWJmYzQxNzc0LWJhYzEtNDg0ZC1hNjI2LThjNzBkOTlmZGZlZS03MzIyIixnPXtDYWxlbmRhcjpiLFBlb3BsZToiOTBjMzFlOWY3MDJjNDU2NGIxMjAxNjcyNDdkM2NkOWYtZDg5NGE0ZTUtNzJmNC00MjIxLWFiMDAtOTRlMTM1OWRmYjYwLTcxMzciLEZpbGVzSHViOiI1NjQ2OGY2OTkxYzM0ODAyOWM2YmJhNDAzYjQ0NDYwNy03ZjVkNmNkMS03ZmJlLTRhYjEtYmUwMy0zYjJiNmFlYjNlYjQtNzY5NiIsQ2FsZW5kYXJEZWVwTGluazpifTtmdW5jdGlvbiBtKGUsdCxuKXt2YXIgaTtjb25zdCB1PWZ1bmN0aW9uKCl7dmFyIGU7Y29uc3QgdD1udWxsPT09KGU9bnVsbD09PXdpbmRvd3x8dm9pZCAwPT09d2luZG93P3ZvaWQgMDp3aW5kb3cubG9jYXRpb24pfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnBhdGhuYW1lO2lmKHQpe2NvbnN0IGU9dC5zcGxpdCgiLyIpO2lmKGwoIm1haWwiLGUpKXJldHVybiByLmEuTWFpbERlZXBMaW5rO2lmKGwoImNhbGVuZGFyIixlKSlyZXR1cm4gci5hLkNhbGVuZGFyRGVlcExpbms7aWYoMD09dC5pbmRleE9mKCIvY2FsZW5kYXIiKSlyZXR1cm4gci5hLkNhbGVuZGFyO2lmKDA9PXQuaW5kZXhPZigiL3Blb3BsZSIpKXJldHVybiByLmEuUGVvcGxlO2lmKDA9PXQuaW5kZXhPZigiL2ZpbGVzIikpcmV0dXJuIHIuYS5GaWxlc0h1YjtpZigwPT10LmluZGV4T2YoIi9vcmdleHBsb3JlciIpKXJldHVybiByLmEuT3JnRXhwbG9yZXI7aWYoMD09dC5pbmRleE9mKCIvZmVlZCIpKXJldHVybiByLmEuRmVlZDtpZigwPT10LmluZGV4T2YoIi9ob3N0IikpcmV0dXJuIHIuYS5BcHBIb3N0fXJldHVybiByLmEuTWFpbH0oKSxkPWguYVt1XTtPYmplY3QoYS5hKSh7YXBwOnUsc3RhcnR1cEFyaWFUb2tlbjpnW3VdfHwiM2IxZWEwMTQ1MGJlNDhmMjk3NTlkODY4OTMxZTIyNWQtNzE2NzY4NWItZjZmZi00MjFjLWFhNjQtOGFlMTZmZTkyMTI4LTcyODMiLHJ1bkJlZm9yZVN0YXJ0OmUsb3ZlcnJpZGVCb290UHJvbWlzZXM6dixydW5BZnRlclJlcXVlc3RzOigpPT57dHJ5e2RvY3VtZW50LmJvZHkuc3R5bGUubWluV2lkdGg9IjQxOHB4IixPYmplY3Qocy5yKSgpLHU9PT1yLmEuT3JnRXhwbG9yZXImJmMuaW1wb3J0QW5kRXhlY3V0ZSgpLmNhdGNoKCgpPT57fSl9Y2F0Y2goZSl7fX0sbG9hZEJwb3M6ITAsc3RyYXRlZ2llczpkLnN0cmF0ZWdpZXMsYm9vdHN0cmFwOm8uYixvcHRpb25zOmQub3B0aW9ucyxpc0RlZXBMaW5rOnU9PXIuYS5NYWlsRGVlcExpbmt8fHU9PXIuYS5DYWxlbmRhckRlZXBMaW5rLG9uTG9hZGVyUmVtb3ZlZDp0LGhhbmRsZUJvb3RFcnJvcjpuLGNhY2hlc1RvQ2xlYW46bnVsbD09PShpPU9iamVjdChvLmEpKHUpKXx8dm9pZCAwPT09aT92b2lkIDA6aS5hcHB9KX1hc3luYyBmdW5jdGlvbiB2KCl7aWYoT2JqZWN0KGQuaSkoImRldi1vZmZsaW5lU2Vzc2lvbkRhdGEiKSl7Y29uc3QgZT1hd2FpdCBwLmEuaW1wb3J0QW5kRXhlY3V0ZSgpO2lmKGUpcmV0dXJuIGV9cmV0dXJuIE9iamVjdChmLmEpKCl9fSw3MjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKTt2YXIgYT1uKDExKTtmdW5jdGlvbiBzKCl7cmV0dXJuIE9iamVjdChhLmEpKCkuaXNQd2F9fSw3NDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiB1fSkpO3ZhciBhPW4oMzMpLHM9big0MCkscj1uKDU4KTtjb25zdCBvPWU9PjE9PWUubGVuZ3RoJiYhaXNOYU4ocGFyc2VJbnQoZSkpLGk9ZT0+ISFlLm1hdGNoKC8uK0AuKy8pO2Z1bmN0aW9uIHUoZSx0KXt2YXIgbjtsZXQgbz1lO2NvbnN0IGk9bnVsbD09PShuPU9iamVjdChzLmIpKCkpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLnBhdGhuYW1lO2lmKGkpe2NvbnN0IGU9aS5zcGxpdCgiLyIrT2JqZWN0KHIuYSkoKSsiLyIpWzFdO2lmKGUpe2NvbnN0IG49ZS5zcGxpdCgiLyIpWzBdO24mJnQuZmlsdGVyKGU9PmUobikpLmxlbmd0aD4wJiYobz1PYmplY3QoYS5hKShvLG4pKX19cmV0dXJuIE9iamVjdChhLmIpKG8pfX0sNzU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBvfSkpLG4uZCh0LCJpIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSxuLmQodCwiaiIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSksbi5kKHQsImQiLChmdW5jdGlvbigpe3JldHVybiBjfSkpLG4uZCh0LCJoIiwoZnVuY3Rpb24oKXtyZXR1cm4gaH0pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGR9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBwfSkpLG4uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gYn0pKSxuLmQodCwiZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGd9KSksbi5kKHQsImsiLChmdW5jdGlvbigpe3JldHVybiBtfSkpLG4uZCh0LCJsIiwoZnVuY3Rpb24oKXtyZXR1cm4gdn0pKTt2YXIgYT1uKDQpO2NvbnN0IHM9bmV3IGEuZCgoKT0+UHJvbWlzZS5hbGwoW24uZSg2NSksbi5lKDYzKSxuLmUoMTAyKSxuLmUoMjQwKV0pLnRoZW4obi5iaW5kKG51bGwsMzk0KSkpO2xldCByPW5ldyBhLmEocyxlPT5lLmluaXRpYWxpemVBbmFseXRpY3MpLG89bmV3IGEuYShzLGU9PmUuZmx1c2gpLGk9bmV3IGEuYShzLGU9PmUubG9nRGF0YXBvaW50KSx1PW5ldyBhLmEocyxlPT5lLmxvZ1BlcmZvcm1hbmNlRGF0YXBvaW50KSxjPW5ldyBhLmEocyxlPT5lLmdldFJlc291cmNlVGltaW5nRm9yVXJsKSxoPW5ldyBhLmEocyxlPT5lLmxvZ0NMUEFyaWFEYXRhUG9pbnQpO2NvbnN0IGw9bmV3IGEuYShzLGU9PmUuZ2V0T1RlbEFkZGluc0xvZ2dlcik7ZnVuY3Rpb24gZChlKXtyZXR1cm4gbC5pbXBvcnRBbmRFeGVjdXRlKGUpfWNvbnN0IGY9bmV3IGEuYShzLGU9PmUuZ2V0QWN0aW9uYWJsZU1lc3NhZ2VMb2dnZXIpO2Z1bmN0aW9uIHAoKXtyZXR1cm4gZi5pbXBvcnRBbmRFeGVjdXRlKCl9bGV0IGI9bmV3IGEuYShzLGU9PmUubG9nQWRkaW5zQ3VzdG9tZXJDb250ZW50KSxnPW5ldyBhLmEocyxlPT5lLmxvZ0FkZGluc1RlbGVtZXRyeUV2ZW50KSxtPW5ldyBhLmEocyxlPT5lLmxvZ1VzYWdlKSx2PW5ldyBhLmEocyxlPT5lLnRyYWNrTmV0d29ya1Jlc3BvbnNlKX0sODI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBhPW4oOSk7Y29uc3Qgcz0ic2RtcCI7ZnVuY3Rpb24gcigpe3RyeXtjb25zdCBlPU9iamVjdChhLmEpKHdpbmRvdyxzKTtyZXR1cm4gZT9KU09OLnBhcnNlKGUpLkluYm94UmVhZGluZ1BhbmVQb3NpdGlvbjp2b2lkIDB9ZmluYWxseXtyZXR1cm59fX0sODM6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBsfSkpO2NvbnN0IGE9Ik1TLUNWIixzPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIixyPXttYXhDb3JyZWxhdGlvblZlY3Rvckxlbmd0aDoxMjcsYmFzZUxlbmd0aDoyMix2YWxpZGF0aW9uUGF0dGVybjpuZXcgUmVnRXhwKCJeWyIrcysiXXsyMn0oLlswLTldKykrJCIpfTt2YXIgbz0iIixpPTA7ZnVuY3Rpb24gdSgpe3JldHVybiBvLmNvbmNhdCgiLiIsaS50b1N0cmluZygpKX1mdW5jdGlvbiBjKCl7cmV0dXJuISFoKHUoKSkmJm8ubGVuZ3RoKzErKGkrMSsiIikubGVuZ3RoPD1yLm1heENvcnJlbGF0aW9uVmVjdG9yTGVuZ3RofWZ1bmN0aW9uIGgoZSl7cmV0dXJuIHIudmFsaWRhdGlvblBhdHRlcm4udGVzdChlKSYmZS5sZW5ndGg8PXIubWF4Q29ycmVsYXRpb25WZWN0b3JMZW5ndGh9ZnVuY3Rpb24gbCgpe3JldHVybiBoKHUoKSk/YygpPyhpKz0xLHUoKSk6bnVsbDoobz1mdW5jdGlvbigpe2Zvcih2YXIgZT0iIix0PTA7dDxyLmJhc2VMZW5ndGg7dCsrKWUrPXMuY2hhckF0KE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSpzLmxlbmd0aCkpO3JldHVybiBlfSgpLGk9MCxoKGU9dSgpKT9lOiIiKTt2YXIgZX19LDg0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYShlKXtyZXR1cm4obnVsbD09ZT92b2lkIDA6ZS5oZWFkZXJzKSYmbnVsbCE9ZS5oZWFkZXJzLmdldCgiWC1PV0EtRXhwbGljaXRMb2dvblVzZXIiKX1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSl9LDg1OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBhPW4oMTApO2Z1bmN0aW9uIHMoZSl7cmV0dXJuISFPYmplY3QoYS5hKSgpLmdldEF1dGhUb2tlbiYmKDQwMT09ZXx8NDQwPT1lKX19LDg2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiByfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgYT1uKDUyKSxzPW4oMik7ZnVuY3Rpb24gcihlKXtjb25zdCB0PW8oKTtPYmplY3Qua2V5cyh0KS5mb3JFYWNoKG49PntlLnNldChuLHRbbl0pfSl9ZnVuY3Rpb24gbygpe2NvbnN0IGU9T2JqZWN0KHMudikoInRhcmdldFNlcnZlciIpLHQ9eyJYLU9XQS1DQU5BUlkiOk9iamVjdChhLmEpKGUpfSxuPU9iamVjdChhLmMpKGUpO3JldHVybiBuJiYodFsiWC1PV0EtQ0FOQVJZLURFQlVHIl09biksdH19LDg5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYSgpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiZuYXZpZ2F0b3IudXNlckFnZW50P25hdmlnYXRvci51c2VyQWdlbnQ6IiJ9bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBhfSkpfSw5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGE9bigxMSk7ZnVuY3Rpb24gcyhlLHQsbil7aWYodShlKSl0cnl7ZS5sb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0LG4pfWNhdGNoKGUpe319ZnVuY3Rpb24gcihlLHQpe3ZhciBuO3RyeXtpZih1KGUpKXJldHVybiBlLmxvY2FsU3RvcmFnZS5nZXRJdGVtKHQpO3tjb25zdCBlPU9iamVjdChhLmEpKCk7cmV0dXJuIG51bGw9PT0obj1udWxsPT1lP3ZvaWQgMDplLmxvY2FsU3RvcmFnZSl8fHZvaWQgMD09PW4/dm9pZCAwOm4uZ2V0SXRlbSh0KX19Y2F0Y2goZSl7cmV0dXJuIG51bGx9fWZ1bmN0aW9uIG8oZSx0KXtpZih1KGUpKXRyeXtlLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHQpfWNhdGNoKGUpe319ZnVuY3Rpb24gaShlLHQpe3JldHVybiBudWxsIT09cihlLHQpfWZ1bmN0aW9uIHUoZSl7dHJ5e3JldHVybiBlJiYhIWUubG9jYWxTdG9yYWdlfWNhdGNoKGUpe3JldHVybiExfX1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSksbi5kKHQsImUiLChmdW5jdGlvbigpe3JldHVybiBzfSkpLG4uZCh0LCJkIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiB1fSkpfSw5MDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBhPW4oMTUpO2NvbnN0IHM9e30scj0ibG9jYWxlcyI7ZnVuY3Rpb24gbyhlLHQsbil7biYmT2JqZWN0KGEuaCkocik7bGV0IG89c1tlXTtyZXR1cm4gbz9uJiZPYmplY3QoYS5mKShyKTooT2JqZWN0KGEuYikoImxjX3MiLHR8fCJ3cCIpLG89YXN5bmMgZnVuY3Rpb24oZSl7bGV0IHQ9dm9pZCAwO3RyeXt0PWF3YWl0IGZldGNoKGUpfWNhdGNoKHQpe2kodCxlLCEwLDApfWNvbnN0IG49dC5zdGF0dXM7MjAwIT1uJiZpKG51bGwsZSwhMSxuKTt0cnl7cmV0dXJuIGF3YWl0IHQuanNvbigpfWNhdGNoKHQpe2kodCxlLCExKX1yZXR1cm4gbnVsbH0oZSksbiYmby50aGVuKCgpPT57T2JqZWN0KGEuZikocil9KSx0JiYoc1tlXT1vLG8uY2F0Y2goKCk9PntkZWxldGUgc1tlXX0pKSksb31mdW5jdGlvbiBpKGUsdCxuLGEpe2NvbnN0IHM9bmV3IEVycm9yKCJGYWlsZWQgdG8gbG9hZCBsb2NhbGl6ZWQgc3RyaW5ncyIpO3Rocm93IHMuZGlhZ25vc3RpY0luZm89SlNPTi5zdHJpbmdpZnkoe3VybDp0LHN0YXR1czphLGlubmVyRXJyb3I6bnVsbD09ZT92b2lkIDA6ZS5tZXNzYWdlfSkscy5yZXF1ZXN0PXQsbiYmKHMubmV0d29ya0Vycm9yPSEwKSxzLmh0dHBTdGF0dXM9YSxzfXZhciB1PW4oOSksYz1uKDIpO2NvbnN0IGg9Ik93YVByZWxvYWRTdHJpbmdzIjtsZXQgbD1bXTtmdW5jdGlvbiBkKGUpe3ZhciB0O3RyeXtjb25zdCBuPU9iamVjdCh1LmEpKHdpbmRvdyxPYmplY3QoYy5tKSgpK2gpO2lmKG4pe2NvbnN0IGE9SlNPTi5wYXJzZShuKTtpZigobnVsbD09PSh0PWFbMF0pfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmluZGV4T2YoT2JqZWN0KGMudSkoKSkpPi0xKWZvcihjb25zdCB0IG9mIGEpbyh0LGUpfX1jYXRjaChlKXt9fWZ1bmN0aW9uIGYoZSl7bCYmbC5wdXNoKGUpfWZ1bmN0aW9uIHAoKXtPYmplY3QodS5lKSh3aW5kb3csT2JqZWN0KGMubSkoKStoLEpTT04uc3RyaW5naWZ5KGwpKSxsPXZvaWQgMH1uLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSksbi5kKHQsImQiLChmdW5jdGlvbigpe3JldHVybiBkfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZ9KSl9LDkyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBhPW4oNzUpO2Z1bmN0aW9uIHMoZSx0LG4pe3JldHVybiBhLmsuaW1wb3J0QW5kRXhlY3V0ZShlLHQsbil9fSw5MzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSxuLmQodCwiYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSksbi5kKHQsImIiLChmdW5jdGlvbigpe3JldHVybiBpfSkpO2xldCBhPSExO2Z1bmN0aW9uIHMoKXtyZXR1cm4gYX1mdW5jdGlvbiByKGUpe2E9ZX1sZXQgbz0hMTtmdW5jdGlvbiBpKGUpe289ZX19LDk0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGE9bigzNSk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4gT2JqZWN0KGEuYSkoIkdldEJwb3NTaGVsbEluZm9OYXZCYXJEYXRhIix7fSxlKX1mdW5jdGlvbiByKGUpe3JldHVybiBPYmplY3QoYS5hKSgiR2V0QnBvc1NoZWxsSW5mb05hdkJhckRhdGFGb3JCb29raW5ncyIse30sZSl9dmFyIG89big5Mik7bGV0IGksdTtmdW5jdGlvbiBjKGUsdCxuKXtpZighaSl7aT0oIkJvb2tpbmdzIj09PXQ/cjpzKSh7YXV0aE5lZWRlZE9uVW5BdXRob3JpemVkOiFufSkudGhlbih0PT4oT2JqZWN0KG8uYSkoImdldEJwb3NOYXZCYXJEYXRhQXN5bmMiLHtvd2FfMTplLG93YV8yOiJGZXRjaCBzdWNjZWVkZWQifSx7cmluZzoiRG9nZm9vZCJ9KSx1PXQpKS5jYXRjaCh0PT4oaT12b2lkIDAsT2JqZWN0KG8uYSkoImdldEJwb3NOYXZCYXJEYXRhQXN5bmMiLHtvd2FfMTplLG93YV8yOiJGZXRjaCBmYWlsdXJlIixvd2FfMzp0Lm1lc3NhZ2UrIiAtICIrdC5zdGFja30se3Jpbmc6IkRvZ2Zvb2QifSksdT1udWxsKSl9cmV0dXJuIGl9ZnVuY3Rpb24gaCgpe3JldHVybiBpfWZ1bmN0aW9uIGwoKXtyZXR1cm4gdX1uLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSksbi5kKHQsImMiLChmdW5jdGlvbigpe3JldHVybiBofSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gbH0pKX0sOTU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIGE9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUpe3RoaXMubG93PTAsdGhpcy5oaWdoPTAsdGhpcy5sb3c9cGFyc2VJbnQoZSwxMCksdGhpcy5sb3c8MCYmKHRoaXMuaGlnaD0tMSl9cmV0dXJuIGUucHJvdG90eXBlLkVxdWFscz1mdW5jdGlvbih0KXt2YXIgbj1uZXcgZSh0KTtyZXR1cm4gdGhpcy5sb3c9PT1uLmxvdyYmdGhpcy5oaWdoPT09bi5oaWdofSxlfSgpO3QuSW50NjQ9YTt2YXIgcz1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSl7dGhpcy5sb3c9MCx0aGlzLmhpZ2g9MCx0aGlzLmxvdz1wYXJzZUludChlLDEwKX1yZXR1cm4gZS5wcm90b3R5cGUuRXF1YWxzPWZ1bmN0aW9uKHQpe3ZhciBuPW5ldyBlKHQpO3JldHVybiB0aGlzLmxvdz09PW4ubG93JiZ0aGlzLmhpZ2g9PT1uLmhpZ2h9LGV9KCk7dC5VSW50NjQ9czt2YXIgcj1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUuVG9CeXRlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLlRvVUludDgoZSl9LGUuVG9JbnQxNj1mdW5jdGlvbihlKXtyZXR1cm4gMzI3NjcmZXwoMzI3NjgmZSk8PDE2Pj4xNn0sZS5Ub0ludDMyPWZ1bmN0aW9uKGUpe3JldHVybiAyMTQ3NDgzNjQ3JmV8MjE0NzQ4MzY0OCZlfSxlLlRvVUludDg9ZnVuY3Rpb24oZSl7cmV0dXJuIDI1NSZlfSxlLlRvVUludDMyPWZ1bmN0aW9uKGUpe3JldHVybiA0Mjk0OTY3Mjk1JmV9LGV9KCk7dC5OdW1iZXI9cn0sOTc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYTtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSksZnVuY3Rpb24oZSl7ZS5NYWlsPSJNYWlsIixlLkNhbGVuZGFyPSJDYWxlbmRhciIsZS5QZW9wbGU9IlBlb3BsZSIsZS5GaWxlc0h1Yj0iRmlsZXNIdWIiLGUuVGFza3M9IlRhc2tzIixlLkV2ZW50aWZ5PSJFdmVudGlmeSIsZS5QdWJsaXNoZWRDYWxlbmRhcj0iUHVibGlzaGVkQ2FsZW5kYXIiLGUuTWFpbERlZXBMaW5rPSJNYWlsRGVlcExpbmsiLGUuT3JnRXhwbG9yZXI9Ik9yZ0V4cGxvcmVyIixlLkZlZWQ9IkZlZWQiLGUuQXBwSG9zdD0iQXBwSG9zdCIsZS5DYWxlbmRhckRlZXBMaW5rPSJDYWxlbmRhckRlZXBMaW5rIn0oYXx8KGE9e30pKX0sOTk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgYT1uKDE3NSkscz1uKDM0KSxyPW4oMjYpO2Z1bmN0aW9uIG8oZSl7Y29uc3R7YnJvd3NlclZlcnNpb246dH09T2JqZWN0KHMuYSkoKTtpZihlLmxlbmd0aD50Lmxlbmd0aClyZXR1cm4hMTtmb3IobGV0IG49MDtuPGUubGVuZ3RoO24rKylpZih0W25dIT09ZVtuXSlyZXR1cm4gdFtuXT5lW25dO3JldHVybiEwfW4uZCh0LCJsIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5qfSkpLG4uZCh0LCJwIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5tfSkpLG4uZCh0LCJrIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5pfSkpLG4uZCh0LCJvIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5sfSkpLG4uZCh0LCJuIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5rfSkpLG4uZCh0LCJpIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5nfSkpLG4uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5hfSkpLG4uZCh0LCJqIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5ofSkpLG4uZCh0LCJkIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5ifSkpLG4uZCh0LCJmIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5kfSkpLG4uZCh0LCJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5jfSkpLG4uZCh0LCJoIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5mfSkpLG4uZCh0LCJnIiwoZnVuY3Rpb24oKXtyZXR1cm4gYS5lfSkpLG4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcy5hfSkpLG4uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gci5hfSkpLG4uZCh0LCJtIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKX19KTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9b3dhLm1haWxpbmRleC5qcy5tYXAKc2VsZi5zY3JpcHRzTG9hZGVkID0gc2VsZi5zY3JpcHRzTG9hZGVkIHx8IHt9O3NlbGYuc2NyaXB0c0xvYWRlZFsnb3dhLm1haWxpbmRleC5qcyddID0gMTs8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4K" moz-do-not-send="true" width="46" height="29"></a></td>
                            <td style="width:470px; padding-top:12px;
                              color:#41424e; font-size:13px;
                              font-family:Arial,Helvetica,sans-serif;
                              line-height:18px">
                              Virus-free. <a href="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.avg.com%2Femail-signature%3Futm_medium%3Demail%26utm_source%3Dlink%26utm_campaign%3Dsig-email%26utm_content%3Demailclient&amp;data=04%7C01%7Ceprints-tech%40ecs.soton.ac.uk%7C3153afe7a96f4942b25a08d9d1f3e15c%7C4a5378f929f44d3ebe89669d03ada9d8%7C0%7C0%7C637771667659559152%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=V0nLlalF8NeHoiay1lZsRcWXrDUd1QiP6ww42FR6DvY%3D&amp;reserved=0" originalSrc="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" shash="k21eG0/9vocX9sPr/+uW1uwhYldiNPpN/2wy5Lxa3/35q9C2Mrfv+izjymWjW/LgNxvDoNY6410I+1QHRQJCafQl2GqWpRDJYQpqzFUyy1/swmq+NmMe01SjSeZY8oK69RcGF8eI4D+szO8Na1whrvhWIXen3xfXuTHj1dd64jo=" originalsrc="http://www.avg.com/email-signature?utm_medium=email&amp;utm_source=link&amp;utm_campaign=sig-email&amp;utm_content=emailclient" shash="fVTq5XTZeJnauSnaCDOH2nZA6zkSryLd/Av/ehDBqzGwMoZXXJTltrVGnX7c9smT9cCrTgIUtjCWI4vAeV4HUKZ/Y/AejsEl387J0wOZ0MdPfR9juhBpLaP2cjD3l6ryRu0kZgO3jtqxwKkZP4LKnLhKccY+g6vpJEhtpJJnhoE=" target="_blank" style="color:#4453ea" moz-do-not-send="true">
                                www.avg.com</a> </td>
                          </tr>
                        </tbody>
                      </table>
                    </div>
                  </div>
                </div>
              </div>
            </blockquote>
          </blockquote>
        </div>
      </div>
    </blockquote>
  </body>
</html>