<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>61541</bug_id>
          
          <creation_ts>2011-05-26 09:57:15 -0700</creation_ts>
          <short_desc>Port W3C audio and video tests</short_desc>
          <delta_ts>2011-12-23 09:13:53 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Mark Pilgrim (Google)">pilgrim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>eric</cc>
    
    <cc>fishd</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joel.parks</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>scherkus</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>410541</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2011-05-26 09:57:15 -0700</bug_when>
    <thetext>Original tests: http://dvcs.w3.org/hg/html/file/233364893066/tests/submission/Google , http://dvcs.w3.org/hg/html/file/233364893066/tests/approved/audio , and http://dvcs.w3.org/hg/html/file/233364893066/tests/approved/video

This is a port of the W3C test suite for the [audio] and [video] elements. Rather than port each test individually, I&apos;ve created a wrapper script (in W3C/resources/w3cwrapper.js) that emulates the W3C test harness within the WebKit layout test harness. As such, the only change I&apos;ve had to make to the original tests was changing the [script] tags that pointed to the test harness.

WebKit passes all of these tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410547</commentid>
    <comment_count>1</comment_count>
      <attachid>94993</attachid>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2011-05-26 10:01:34 -0700</bug_when>
    <thetext>Created attachment 94993
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>465837</commentid>
    <comment_count>2</comment_count>
      <attachid>94993</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-09-12 15:30:03 -0700</bug_when>
    <thetext>Comment on attachment 94993
Patch

Seems reasonable to me.

Is there a version number associated with these tests that we should be recording somewhere?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466382</commentid>
    <comment_count>3</comment_count>
      <attachid>94993</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2011-09-13 10:41:46 -0700</bug_when>
    <thetext>Comment on attachment 94993
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=94993&amp;action=review

Thanks, this is fantastic! 

&gt; LayoutTests/media/W3C/w3cwrapper.js:52
&gt; +function async_test(title, options) {
&gt; +  description(title);
&gt; +  if (window.layoutTestController) {
&gt; +    layoutTestController.dumpAsText();
&gt; +    layoutTestController.waitUntilDone();
&gt; +  }
&gt; +  var t = {
&gt; +    step: function(testFunction) {
&gt; +      try {
&gt; +        testFunction();
&gt; +      }
&gt; +      catch (e) {
&gt; +        testFailed(&apos;Aborted with exception: &apos; + e.message);
&gt; +      }
&gt; +    },
&gt; +
&gt; +    done: function() {
&gt; +      debug(&apos;&lt;br /&gt;&lt;span class=&quot;pass&quot;&gt;TEST COMPLETE&lt;/span&gt;&apos;);
&gt; +      if (window.layoutTestController) {
&gt; +        layoutTestController.notifyDone();
&gt; +      }
&gt; +    }
&gt; +  }
&gt; +
&gt; +  return t;
&gt; +}

I see that the &quot;options&quot; parameter is ignored. It looks like &apos;timeout&apos; is currently the only parameter, which I assume we can ignore because of DRT&apos;s own timeout, but it is probably worth adding a comment to that effect and throwing an exception if any other option is passed in case future tests add other options.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>525783</commentid>
    <comment_count>4</comment_count>
      <attachid>94993</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-21 16:10:26 -0800</bug_when>
    <thetext>Comment on attachment 94993
Patch

Clearing flags on attachment: 94993

Committed r103470: &lt;http://trac.webkit.org/changeset/103470&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>525784</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-21 16:10:31 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>526260</commentid>
    <comment_count>6</comment_count>
    <who name="Joel Parks">joel.parks</who>
    <bug_when>2011-12-22 08:00:13 -0800</bug_when>
    <thetext>I agree this is fantastic, but it seems to me that some latent errors in the W3C test content were ported along with the good stuff.

A good number of the audio tests[*] are apparently copy-pasted from video tests without changing the video element to audio element.  There are separate tests in the video section for audio media in video elements, which helps convince me that it&apos;s a copy-paste error.

Also, as Eric Carlson mentions, it would be good to point out that the options parameter is not being respected by the new wrapper.  However, my experience is that the original harness does not respect attempts to modify the timeout, so perhaps this is a moot point!  I wasn&apos;t able to take the time to investigate the cause of that behavior.

(In reply to comment #3)
&gt; (From update of attachment 94993 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=94993&amp;action=review
&gt; 
&gt; Thanks, this is fantastic! 
&gt; 
...snip...
&gt; 
&gt; I see that the &quot;options&quot; parameter is ignored. It looks like &apos;timeout&apos; is currently the only parameter, which I assume we can ignore because of DRT&apos;s own timeout, but it is probably worth adding a comment to that effect and throwing an exception if any other option is passed in case future tests add other options.


[*] This is a list of the audio tests (and expected results files) that contain video elements instead of audio elements:

LayoutTests/media/W3C/audio/events/event_canplay-expected.txt
LayoutTests/media/W3C/audio/events/event_canplay.html
LayoutTests/media/W3C/audio/events/event_canplay_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_canplay_manual.html
LayoutTests/media/W3C/audio/events/event_canplaythrough-expected.txt
LayoutTests/media/W3C/audio/events/event_canplaythrough.html
LayoutTests/media/W3C/audio/events/event_canplaythrough_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_canplaythrough_manual.html
LayoutTests/media/W3C/audio/events/event_loadeddata-expected.txt
LayoutTests/media/W3C/audio/events/event_loadeddata.html
LayoutTests/media/W3C/audio/events/event_loadeddata_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_loadeddata_manual.html
LayoutTests/media/W3C/audio/events/event_loadedmetadata-expected.txt
LayoutTests/media/W3C/audio/events/event_loadedmetadata.html
LayoutTests/media/W3C/audio/events/event_loadedmetadata_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_loadedmetadata_manual.html
LayoutTests/media/W3C/audio/events/event_loadstart-expected.txt
LayoutTests/media/W3C/audio/events/event_loadstart.html
LayoutTests/media/W3C/audio/events/event_loadstart_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_loadstart_manual.html
LayoutTests/media/W3C/audio/events/event_order_canplay_canplaythrough-expected.txt
LayoutTests/media/W3C/audio/events/event_order_canplay_canplaythrough.html
LayoutTests/media/W3C/audio/events/event_order_canplay_playing-expected.txt
LayoutTests/media/W3C/audio/events/event_order_canplay_playing.html
LayoutTests/media/W3C/audio/events/event_order_loadedmetadata_loadeddata-expected.txt
LayoutTests/media/W3C/audio/events/event_order_loadedmetadata_loadeddata.html
LayoutTests/media/W3C/audio/events/event_order_loadstart_progress-expected.txt
LayoutTests/media/W3C/audio/events/event_order_loadstart_progress.html
LayoutTests/media/W3C/audio/events/event_pause_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_pause_manual.html
LayoutTests/media/W3C/audio/events/event_play-expected.txt
LayoutTests/media/W3C/audio/events/event_play.html
LayoutTests/media/W3C/audio/events/event_play_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_play_manual.html
LayoutTests/media/W3C/audio/events/event_playing-expected.txt
LayoutTests/media/W3C/audio/events/event_playing.html
LayoutTests/media/W3C/audio/events/event_playing_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_playing_manual.html
LayoutTests/media/W3C/audio/events/event_progress-expected.txt
LayoutTests/media/W3C/audio/events/event_progress.html
LayoutTests/media/W3C/audio/events/event_progress_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_progress_manual.html
LayoutTests/media/W3C/audio/events/event_timeupdate-expected.txt
LayoutTests/media/W3C/audio/events/event_timeupdate.html
LayoutTests/media/W3C/audio/events/event_timeupdate_manual-expected.txt
LayoutTests/media/W3C/audio/events/event_timeupdate_manual.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>526874</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-12-23 09:12:35 -0800</bug_when>
    <thetext>A bunch of these new tests are failing: bug 75175. Please fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>526876</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-12-23 09:13:53 -0800</bug_when>
    <thetext>Probably easiest to sheriff-bot rollout if Mark isn&apos;t around.  Or even if he is, he could then grab the failing results from the bots and re-land.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94993</attachid>
            <date>2011-05-26 10:01:34 -0700</date>
            <delta_ts>2011-12-21 16:10:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-61541-20110526130138.patch</filename>
            <type>text/plain</type>
            <size>234990</size>
            <attacher name="Mark Pilgrim (Google)">pilgrim</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDg3Mzk2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMzA3IEBACisyMDExLTA1LTI2ICBNYXJrIFBpbGdyaW0gIDxw
aWxncmltQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQb3J0IFczQyBhdWRpbyBhbmQgdmlkZW8gdGVzdHMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYxNTQxCisKKyAgICAgICAgKiBt
ZWRpYS9XM0M6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpbzogQWRkZWQuCisgICAg
ICAgICogbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlOiBBZGRlZC4KKyAgICAgICAgKiBtZWRp
YS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3Ry
ZWFtLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2NhblBs
YXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGlj
YXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRp
b25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0
cmVhbV93aXRoX2NvZGVjc18yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEv
VzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVh
bV93aXRoX2NvZGVjc18yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9j
YW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9ib2d1c190eXBlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2JvZ3VzX3R5
cGUuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2Nh
blBsYXlUeXBlX21ldGhvZF9leGlzdHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfbWV0aG9kX2V4aXN0cy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5
cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzEtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfc3Vw
cG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzEuaHRtbDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9f
Y29kZWNzX3BhcmFtZXRlcl8yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEv
VzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNz
X3BhcmFtZXRlcl8yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9jdXJy
ZW50U3JjOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vY3VycmVudFNyYy9jdXJy
ZW50U3JjX2VtcHR5X2lmX25vX3NyYy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1l
ZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfZW1wdHlfaWZfbm9fc3JjLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRTcmNf
bm9uZW1wdHlfYWZ0ZXJfYWRkaW5nX3NvdXJjZV9jaGlsZC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlf
YWZ0ZXJfYWRkaW5nX3NvdXJjZV9jaGlsZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3Jj
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2N1cnJlbnRT
cmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9zZXR0aW5nX3NyYy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX3Byb3BlcnR5X2V4
aXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9jdXJy
ZW50U3JjL2N1cnJlbnRTcmNfcHJvcGVydHlfZXhpc3RzLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IG1lZGlhL1czQy9hdWRpby9lcnJvcjogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlv
L2Vycm9yL2Vycm9yX251bGwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvYXVkaW8vZXJyb3IvZXJyb3JfbnVsbC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvYXVkaW8vZXJyb3IvZXJyb3Jfb25lcnJvcl9jYWxsZWRfb25fYm9ndXNfc291cmNlLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9yX29u
ZXJyb3JfY2FsbGVkX29uX2JvZ3VzX3NvdXJjZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRp
YS9XM0MvYXVkaW8vZXJyb3IvZXJyb3JfcHJvcGVydHlfZXhpc3RzLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0
cy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzOiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXktZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBs
YXkuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9j
YW5wbGF5X21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfY2FucGxheV9tYW51YWwuaHRtbDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfY2FucGxheXRo
cm91Z2guaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVu
dF9jYW5wbGF5dGhyb3VnaF9tYW51YWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXl0aHJvdWdoX21hbnVhbC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2
ZW50X2xvYWRlZGRhdGEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2
ZW50cy9ldmVudF9sb2FkZWRkYXRhX21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZGVkZGF0YV9tYW51YWwuaHRtbDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRh
ZGF0YS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9ldmVu
dHMvZXZlbnRfbG9hZGVkbWV0YWRhdGEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzND
L2F1ZGlvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YV9tYW51YWwtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZG1ldGFk
YXRhX21hbnVhbC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X2xvYWRzdGFydC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1cz
Qy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1l
ZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0X21hbnVhbC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0
X21hbnVhbC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2
ZW50X29yZGVyX2NhbnBsYXlfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfY2FucGxh
eXRocm91Z2guaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9l
dmVudF9vcmRlcl9jYW5wbGF5X3BsYXlpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfcGxheWluZy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xv
YWRlZG1ldGFkYXRhX2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRlZG1ldGFkYXRhX2xvYWRlZGRh
dGEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9v
cmRlcl9sb2Fkc3RhcnRfcHJvZ3Jlc3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3BhdXNlX21h
bnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9ldmVu
dHMvZXZlbnRfcGF1c2VfbWFudWFsLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfcGxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1l
ZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wbGF5X21hbnVhbC5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3BsYXlp
bmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X3BsYXlpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2
ZW50cy9ldmVudF9wbGF5aW5nX21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IG1lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheWluZ19tYW51YWwuaHRtbDogQWRkZWQu
CisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wcm9ncmVzcy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcHJv
Z3Jlc3MuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVu
dF9wcm9ncmVzc19tYW51YWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvYXVkaW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzX21hbnVhbC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRh
dGUuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF90
aW1ldXBkYXRlX21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1cz
Qy9hdWRpby9ldmVudHMvZXZlbnRfdGltZXVwZGF0ZV9tYW51YWwuaHRtbDogQWRkZWQuCisgICAg
ICAgICogbWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZTogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9uZXR3b3JrU3Rh
dGUvbmV0d29ya1N0YXRlX2R1cmluZ19sb2Fkc3RhcnQuaHRtbDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfaW5pdGlhbC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9uZXR3b3JrU3RhdGUvbmV0
d29ya1N0YXRlX2luaXRpYWwuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlv
L25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfcHJvcGVydHlfZXhpc3RzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3Rh
dGVfcHJvcGVydHlfZXhpc3RzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRp
by9wYXVzZWQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9wYXVzZWQvcGF1c2Vk
X2ZhbHNlX2R1cmluZ19wbGF5LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEv
VzNDL2F1ZGlvL3BhdXNlZC9wYXVzZWRfZmFsc2VfZHVyaW5nX3BsYXkuaHRtbDogQWRkZWQuCisg
ICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3BhdXNlZC9wYXVzZWRfdHJ1ZV9kdXJpbmdfcGF1c2Ut
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vcGF1c2VkL3Bh
dXNlZF90cnVlX2R1cmluZ19wYXVzZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0Mv
YXVkaW8vcHJlbG9hZDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQv
cHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3Byb3BlcnR5X2V4aXN0cy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2F1
dG9fdmFsdWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8v
cHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2F1dG9fdmFsdWUuaHRtbDogQWRkZWQuCisgICAgICAg
ICogbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ib2d1c192YWx1ZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9wcmVsb2FkL3By
ZWxvYWRfcmVmbGVjdHNfYm9ndXNfdmFsdWUuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEv
VzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19lbXB0eS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNf
ZW1wdHkuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJl
bG9hZF9yZWZsZWN0c19tZXRhZGF0YS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1l
ZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEuaHRtbDogQWRk
ZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19u
b192YWx1ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9w
cmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9fdmFsdWUuaHRtbDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ub25lLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZs
ZWN0c19ub25lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9wcmVsb2Fk
L3ByZWxvYWRfcmVmbGVjdHNfbm9uZV9hdXRvcGxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIG1lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZV9hdXRv
cGxheS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZTog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9k
dXJpbmdfY2FucGxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9h
dWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXkuaHRtbDogQWRkZWQuCisg
ICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfY2Fu
cGxheXRocm91Z2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVk
aW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5dGhyb3VnaC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmlu
Z19sb2FkZWRkYXRhLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1
ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkZGF0YS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19s
b2FkZWRtZXRhZGF0YS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9h
dWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZG1ldGFkYXRhLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVy
aW5nX3BsYXlpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVk
aW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19wbGF5aW5nLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIG1lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfaW5pdGlhbC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3Jl
YWR5U3RhdGVfaW5pdGlhbC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVkaW8v
cmVhZHlTdGF0ZS9yZWFkeVN0YXRlX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfcHJvcGVy
dHlfZXhpc3RzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9zcmM6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy9hdWRpby9zcmMvc3JjX3JlZmxlY3RzX2F0dHJpYnV0
ZV9ub3Rfc291cmNlX2VsZW1lbnRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVmbGVjdHNfYXR0cmlidXRlX25vdF9zb3VyY2VfZWxlbWVu
dHMuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVmbGVj
dHNfbm9fdmFsdWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvYXVk
aW8vc3JjL3NyY19yZWZsZWN0c19ub192YWx1ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRp
YS9XM0MvYXVkaW8vc3JjL3NyY19yZW1vdmFsX2RvZXNfbm90X3RyaWdnZXJfbG9hZHN0YXJ0LWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVt
b3ZhbF9kb2VzX25vdF90cmlnZ2VyX2xvYWRzdGFydC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvdmlkZW86IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5
VHlwZTogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBs
YXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlv
bl9vY3RldF9zdHJlYW0uaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2Nh
blBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVj
c18xLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBs
YXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVjc18x
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5Q
bGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMi1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5
VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMi5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGlj
YXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRp
b25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzMuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2JvZ3VzX3R5cGUtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxh
eVR5cGVfYm9ndXNfdHlwZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8v
Y2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzEtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29k
ZWNzX29yZGVyXzEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBs
YXlUeXBlL2NhblBsYXlUeXBlX2NvZGVjc19vcmRlcl8yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2NvZGVjc19v
cmRlcl8yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlw
ZS9jYW5QbGF5VHlwZV9jb2RlY3Nfb3JkZXJfMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9jb2RlY3Nfb3JkZXJf
My5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2Fu
UGxheVR5cGVfbWV0aG9kX2V4aXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1l
ZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlw
ZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9zdXBw
b3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfc3VwcG9ydGVkX2J1dF9ub19j
b2RlY3NfcGFyYW1ldGVyXzItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3Nf
cGFyYW1ldGVyXzIuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBs
YXlUeXBlL2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8zLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBl
L2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8zLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90
d29faW1wbGllc19vbmVfMS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1cz
Qy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfMS5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVf
dHdvX2ltcGxpZXNfb25lXzItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzIuaHRtbDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBl
X3R3b19pbXBsaWVzX29uZV8zLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEv
VzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV8zLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlw
ZV90d29faW1wbGllc19vbmVfNC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlh
L1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfNC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5
cGVfdHdvX2ltcGxpZXNfb25lXzUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRp
YS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzUuaHRt
bDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlU
eXBlX3R3b19pbXBsaWVzX29uZV82LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV82Lmh0
bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jdXJyZW50U3JjOiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lm
X25vX3NyYy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9j
dXJyZW50U3JjL2N1cnJlbnRTcmNfZW1wdHlfaWZfbm9fc3JjLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy92aWRlby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJf
YWRkaW5nX3NvdXJjZV9jaGlsZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlh
L1czQy92aWRlby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJfYWRkaW5nX3Nv
dXJjZV9jaGlsZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vY3VycmVu
dFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3JjLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19u
b25lbXB0eV9hZnRlcl9zZXR0aW5nX3NyYy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9jdXJyZW50U3JjL2N1cnJlbnRT
cmNfcHJvcGVydHlfZXhpc3RzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRl
by9lcnJvcjogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX251
bGwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXJyb3Iv
ZXJyb3JfbnVsbC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXJyb3Iv
ZXJyb3Jfb25lcnJvcl9jYWxsZWRfb25fYm9ndXNfc291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX29uZXJyb3JfY2FsbGVkX29u
X2JvZ3VzX3NvdXJjZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXJy
b3IvZXJyb3JfcHJvcGVydHlfZXhpc3RzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0cy5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzOiBBZGRlZC4KKyAgICAgICAgKiBtZWRp
YS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXkuaHRtbDogQWRkZWQu
CisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9jYW5wbGF5X21hbnVhbC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfY2FucGxheV9tYW51YWwuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVv
L2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2guaHRtbDogQWRk
ZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3Vn
aF9tYW51YWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X2NhbnBsYXl0aHJvdWdoX21hbnVhbC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEu
aHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2Fk
ZWRkYXRhX21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92
aWRlby9ldmVudHMvZXZlbnRfbG9hZGVkZGF0YV9tYW51YWwuaHRtbDogQWRkZWQuCisgICAgICAg
ICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZGVk
bWV0YWRhdGEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9l
dmVudF9sb2FkZWRtZXRhZGF0YV9tYW51YWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZG1ldGFkYXRhX21hbnVhbC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFy
dC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMv
ZXZlbnRfbG9hZHN0YXJ0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9l
dmVudHMvZXZlbnRfbG9hZHN0YXJ0X21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0X21hbnVhbC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBs
YXlfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfY2FucGxheXRocm91Z2guaHRtbDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5w
bGF5X3BsYXlpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0Mvdmlk
ZW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfcGxheWluZy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRlZG1ldGFkYXRhX2xv
YWRlZGRhdGEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRlZG1ldGFkYXRhX2xvYWRlZGRhdGEuaHRtbDogQWRkZWQu
CisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9vcmRlcl9sb2Fkc3RhcnRf
cHJvZ3Jlc3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BhdXNlX21hbnVhbC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGF1c2Vf
bWFudWFsLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfcGxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9l
dmVudHMvZXZlbnRfcGxheS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5X21hbnVhbC5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BsYXlpbmctZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BsYXlpbmcu
aHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5
aW5nX21hbnVhbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRl
by9ldmVudHMvZXZlbnRfcGxheWluZ19tYW51YWwuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wcm9ncmVzcy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcHJvZ3Jlc3MuaHRtbDogQWRk
ZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wcm9ncmVzc19tYW51
YWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRz
L2V2ZW50X3Byb2dyZXNzX21hbnVhbC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0Mv
dmlkZW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBtZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUuaHRtbDogQWRkZWQu
CisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF90aW1ldXBkYXRlX21hbnVh
bC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9ldmVudHMv
ZXZlbnRfdGltZXVwZGF0ZV9tYW51YWwuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzND
L3ZpZGVvL25ldHdvcmtTdGF0ZTogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL25l
dHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRl
X2R1cmluZ19sb2Fkc3RhcnQuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVv
L25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX3Byb2dyZXNzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3Rh
dGVfZHVyaW5nX3Byb2dyZXNzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRl
by9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2luaXRpYWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9pbml0
aWFsLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUv
bmV0d29ya1N0YXRlX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX3Byb3BlcnR5X2V4
aXN0cy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcGF1c2VkOiBBZGRl
ZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcGF1c2VkL3BhdXNlZF9mYWxzZV9kdXJpbmdf
cGxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9wYXVz
ZWQvcGF1c2VkX2ZhbHNlX2R1cmluZ19wbGF5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlh
L1czQy92aWRlby9wYXVzZWQvcGF1c2VkX3RydWVfZHVyaW5nX3BhdXNlLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3BhdXNlZC9wYXVzZWRfdHJ1ZV9kdXJp
bmdfcGF1c2UuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQ6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcHJvcGVy
dHlfZXhpc3RzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVv
L3ByZWxvYWQvcHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMuaHRtbDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19hdXRvX3ZhbHVlLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9h
ZF9yZWZsZWN0c19hdXRvX3ZhbHVlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92
aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYm9ndXNfdmFsdWUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3Rz
X2JvZ3VzX3ZhbHVlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9wcmVs
b2FkL3ByZWxvYWRfcmVmbGVjdHNfZW1wdHktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2VtcHR5Lmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNf
bWV0YWRhdGEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8v
cHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX21ldGFkYXRhLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IG1lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9fdmFsdWUtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2Fk
X3JlZmxlY3RzX25vX3ZhbHVlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRl
by9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIG1lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxl
Y3RzX25vbmVfYXV0b3BsYXktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vbmVfYXV0b3BsYXkuaHRtbDogQWRk
ZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGU6IEFkZGVkLgorICAgICAg
ICAqIG1lZGlhL1czQy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXkt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0
ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlh
L1czQy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXl0aHJvdWdoLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUv
cmVhZHlTdGF0ZV9kdXJpbmdfY2FucGxheXRocm91Z2guaHRtbDogQWRkZWQuCisgICAgICAgICog
bWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkZGF0YS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9yZWFkeVN0YXRl
L3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZGRhdGEuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVk
aWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRhdGEt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0
ZS9yZWFkeVN0YXRlX2R1cmluZ19sb2FkZWRtZXRhZGF0YS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19wbGF5aW5nLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUv
cmVhZHlTdGF0ZV9kdXJpbmdfcGxheWluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9X
M0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2luaXRpYWwtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2luaXRp
YWwuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVh
ZHlTdGF0ZV9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBt
ZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX3Byb3BlcnR5X2V4aXN0cy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9XM0MvdmlkZW8vc3JjOiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS9XM0MvdmlkZW8vc3JjL3NyY19yZWZsZWN0c19hdHRyaWJ1dGVfbm90X3NvdXJjZV9l
bGVtZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9z
cmMvc3JjX3JlZmxlY3RzX2F0dHJpYnV0ZV9ub3Rfc291cmNlX2VsZW1lbnRzLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9zcmMvc3JjX3JlZmxlY3RzX25vX3ZhbHVlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3NyYy9zcmNfcmVm
bGVjdHNfbm9fdmFsdWUuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3ZpZGVvL3Ny
Yy9zcmNfcmVtb3ZhbF9kb2VzX25vdF90cmlnZ2VyX2xvYWRzdGFydC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL1czQy92aWRlby9zcmMvc3JjX3JlbW92YWxfZG9lc19ub3Rf
dHJpZ2dlcl9sb2Fkc3RhcnQuaHRtbDogQWRkZWQuCisgICAgICAgICogbWVkaWEvVzNDL3czY3dy
YXBwZXIuanM6IEFkZGVkLgorICAgICAgICAoZ2V0VmlkZW9VUkkuYm9vbCk6CisgICAgICAgIChn
ZXRWaWRlb1VSSSk6CisgICAgICAgICgpOgorICAgICAgICAodGVzdCk6CisgICAgICAgIChhc3lu
Y190ZXN0LnQuc3RlcCk6CisgICAgICAgIChhc3luY190ZXN0LnQuZG9uZSk6CisgICAgICAgIChh
c3luY190ZXN0KToKKyAgICAgICAgKGFzc2VydF9lcXVhbHMpOgorICAgICAgICAoYXNzZXJ0X3Ry
dWUpOgorICAgICAgICAoYXNzZXJ0X2ZhbHNlKToKKwogMjAxMS0wNS0yNiAgQWRhbSBLbGVpbiAg
PGFkYW1rQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBUZXN0IGV4cGVjdGF0
aW9ucyB1cGRhdGUvcmViYXNlbGluZS4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy93M2N3
cmFwcGVyLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy93M2N3cmFwcGVy
LmpzCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3czY3dyYXBwZXIuanMJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjIgQEAKK2Z1bmN0aW9uIGdldFZpZGVvVVJJKGR1bW15
KSB7CisgIHZhciBib29sPWZ1bmN0aW9uKGFueSl7cmV0dXJuIShhbnk9PSJubyJ8fCFhbnkpfTsK
KyAgcmV0dXJuICIuLi8uLi8uLi9jb250ZW50L3Rlc3QuIiArIChib29sKGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoInZpZGVvIikuY2FuUGxheVR5cGUoJ3ZpZGVvL29nZzsgY29kZWNzPSJ0aGVvcmEi
JykpID8gIm9ndiIgOiAibXA0Iik7Cit9CisKK2Z1bmN0aW9uIGdldEF1ZGlvVVJJKGR1bW15KSB7
CisgIHJldHVybiAiLi4vLi4vLi4vY29udGVudC90ZXN0LndhdiI7Cit9CisKK2Z1bmN0aW9uIHRl
c3QodGVzdEZ1bmN0aW9uKSB7CisgIGRlc2NyaXB0aW9uKGRvY3VtZW50LnRpdGxlKTsKKyAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7
CisgIH0KKyAgdHJ5IHsKKyAgICB0ZXN0RnVuY3Rpb24oKTsKKyAgfQorICBjYXRjaCAoZSkgewor
ICAgIHRlc3RGYWlsZWQoJ0Fib3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2UpOwor
ICB9CisgIGRlYnVnKCc8YnIgLz48c3BhbiBjbGFzcz0icGFzcyI+VEVTVCBDT01QTEVURTwvc3Bh
bj4nKTsKKyAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKK2Z1bmN0aW9uIGFzeW5jX3Rlc3QodGl0bGUs
IG9wdGlvbnMpIHsKKyAgZGVzY3JpcHRpb24odGl0bGUpOworICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgfQorICB2YXIgdCA9
IHsKKyAgICBzdGVwOiBmdW5jdGlvbih0ZXN0RnVuY3Rpb24pIHsKKyAgICAgIHRyeSB7CisgICAg
ICAgIHRlc3RGdW5jdGlvbigpOworICAgICAgfQorICAgICAgY2F0Y2ggKGUpIHsKKyAgICAgICAg
dGVzdEZhaWxlZCgnQWJvcnRlZCB3aXRoIGV4Y2VwdGlvbjogJyArIGUubWVzc2FnZSk7CisgICAg
ICB9CisgICAgfSwKKworICAgIGRvbmU6IGZ1bmN0aW9uKCkgeworICAgICAgZGVidWcoJzxiciAv
PjxzcGFuIGNsYXNzPSJwYXNzIj5URVNUIENPTVBMRVRFPC9zcGFuPicpOworICAgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5ub3RpZnlEb25lKCk7CisgICAgICB9CisgICAgfQorICB9CisKKyAgcmV0dXJuIHQ7Cit9CisK
K2RvY3VtZW50LndyaXRlKCI8cCBpZD1kZXNjcmlwdGlvbj48L3A+PGRpdiBpZD1jb25zb2xlPjwv
ZGl2PiIpOworZG9jdW1lbnQud3JpdGUoIjxzY3IiICsgImlwdCBzcmM9Jy4uLy4uLy4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzJz48LyIgKyAic2NyaXB0PiIpOworZG9jdW1l
bnQud3JpdGUoIjxzY3IiICsgImlwdCBzcmM9Jy4uLy4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC1mdW5jdGlvbi5qcyc+PC8iICsgInNjcmlwdD4iKTsKKworYXNzZXJ0X2Vx
dWFscyA9IGZ1bmN0aW9uKGEsIGIpIHsgc2hvdWxkQmUoJyInICsgYSArICciJywgJyInICsgYiAr
ICciJyk7IH0KK2Fzc2VydF90cnVlID0gZnVuY3Rpb24oYSkgeyBzaG91bGRCZVRydWUoIiIgKyBh
KTsgfQorYXNzZXJ0X2ZhbHNlID0gZnVuY3Rpb24oYSkgeyBzaG91bGRCZUZhbHNlKCIiICsgYSk7
IH0KKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRf
c3RyZWFtLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9j
YW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW0tZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5jYW5QbGF5VHlwZSgpIC0g
YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIG11c3QgYWx3YXlzIHJldHVybiB0aGUgZW1wdHkgc3Ry
aW5nCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9z
dHJlYW0uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2Fu
UGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtLmh0bWwJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxh
eVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMjAgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRp
by5jYW5QbGF5VHlwZSgpIC0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIG11c3QgYWx3YXlzIHJl
dHVybiB0aGUgZW1wdHkgc3RyaW5nPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0
cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1uYXZpZ2F0b3ItY2Fu
cGxheXR5cGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhIj4KKyAgPC9h
dWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24o
KSB7CisgYXNzZXJ0X3RydWUoCisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhIikuY2FuUGxh
eVR5cGUoImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIpID09ICIiLAorICAiYXVkaW9FbGVtZW50
LmNhblBsYXlUeXBlKCdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nKSBzaG91bGQgcmV0dXJuIHRo
ZSBlbXB0eSBzdHJpbmciKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVf
YXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzEtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5
VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUv
Y2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzEtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5jYW5QbGF5VHlwZSgp
IC0gY2FuIG5ldmVyIHBsYXkgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIHdpdGggYSBjb2RlY3Mg
cGFyYW1ldGVyCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICIiIGlzICIi
CisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0
X3N0cmVhbV93aXRoX2NvZGVjc18xLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0
cmVhbV93aXRoX2NvZGVjc18xLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3Ry
ZWFtX3dpdGhfY29kZWNzXzEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvLmNhblBsYXlUeXBl
KCkgLSBjYW4gbmV2ZXIgcGxheSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0gd2l0aCBhIGNvZGVj
cyBwYXJhbWV0ZXI8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+
PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2Lncz
Lm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZlcmVuY2U8
L2E+PC9wPgorICA8YXVkaW8gaWQ9ImEiPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwv
ZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYSIpLmNhblBsYXlUeXBlKCdhcHBsaWNhdGlvbi9vY3Rl
dC1zdHJlYW07IGNvZGVjcz0idm9yYmlzIicpLAorICAiIiwKKyAgImF1ZGlvRWxlbWVudC5jYW5Q
bGF5VHlwZSgnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtOyBjb2RlY3M9Li4uJykgc2hvdWxkIGFs
d2F5cyByZXR1cm4gdGhlIGVtcHR5IHN0cmluZyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlw
ZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMi1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBs
YXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVjc18y
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRp
by9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0aF9j
b2RlY3NfMi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlv
LmNhblBsYXlUeXBlKCkgLSBjYW4gbmV2ZXIgcGxheSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0g
d2l0aCBhIGNvZGVjcyBwYXJhbWV0ZXIKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1BBU1MgIiIgaXMgIiIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4
OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBw
bGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGlj
YXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzIuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNh
dGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVk
aW8uY2FuUGxheVR5cGUoKSAtIGNhbiBuZXZlciBwbGF5IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVh
bSB3aXRoIGEgY29kZWNzIHBhcmFtZXRlcjwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93
M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9
Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNhLXR5cGUtdGhhdC10
aGUtdXNlci1hZ2VudC1rbm93cy1pdC1jYW5ub3QtcmVuZGVyIj5zcGVjIHJlZmVyZW5jZTwvYT48
L3A+CisgIDxhdWRpbyBpZD0iYSI+CisgIDwvYXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+
CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIGFzc2VydF9lcXVhbHMoCisgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhIikuY2FuUGxheVR5cGUoJ2FwcGxpY2F0aW9uL29jdGV0LXN0
cmVhbTsgY29kZWNzPSJtcDRhLjQwLjIiJyksCisgICIiLAorICAiYXVkaW9FbGVtZW50LmNhblBs
YXlUeXBlKCdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IGNvZGVjcz0uLi4nKSBzaG91bGQgYWx3
YXlzIHJldHVybiB0aGUgZW1wdHkgc3RyaW5nIik7Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBl
L2NhblBsYXlUeXBlX2JvZ3VzX3R5cGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9ib2d1c190eXBl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRp
by9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9ib2d1c190eXBlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVkaW8uY2FuUGxheVR5cGUoKSAtIGJvZ3VzIGZvcm1h
dAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyAiIiBpcyAiIgorCitURVNU
IENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9ib2d1c190eXBlLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBl
X2JvZ3VzX3R5cGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9ib2d1c190eXBlLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0
aXRsZT5hdWRpby5jYW5QbGF5VHlwZSgpIC0gYm9ndXMgZm9ybWF0PC90aXRsZT4KKyAgPHNjcmlw
dCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4K
KyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1s
I2RvbS1uYXZpZ2F0b3ItY2FucGxheXR5cGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1
ZGlvIGlkPSJhIj4KKyAgPC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlw
dD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0X2VxdWFscygKKyAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImEiKS5jYW5QbGF5VHlwZSgiYXBwbGljYXRpb24vbWFya3MtZmFudGFzbWFnb3Jp
Y2FsLWZvcm1hdCIpLAorICAiIiwKKyAgImF1ZGlvRWxlbWVudC5jYW5QbGF5VHlwZSgpIHNob3Vs
ZCByZXR1cm4gdGhlIGVtcHR5IHN0cmluZyBvbiBhIGJvZ3VzIGZvcm1hdCIpOworfSk7CisgIDwv
c2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2Fu
UGxheVR5cGVfbWV0aG9kX2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfbWV0aG9kX2V4
aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLmNh
blBsYXlUeXBlKCkgLSBleGlzdGVuY2Ugb2YgbWV0aG9kCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVy
ZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9j
YW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX21ldGhvZF9leGlzdHMuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlw
ZS9jYW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MjAgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpby5j
YW5QbGF5VHlwZSgpIC0gZXhpc3RlbmNlIG9mIG1ldGhvZDwvdGl0bGU+CisgIDxzY3JpcHQgc3Jj
PSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxw
PjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20t
bmF2aWdhdG9yLWNhbnBsYXl0eXBlIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBp
ZD0iYSI+CisgIDwvYXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0
ZXN0KGZ1bmN0aW9uKCkgeworIGFzc2VydF90cnVlKAorICAhIWRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJhIikuY2FuUGxheVR5cGUsCisgICJhdWRpb0VsZW1lbnQuY2FuUGxheVR5cGUgbWV0aG9k
IGV4aXN0cyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9zdXBwb3J0
ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3N1cHBv
cnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8xLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9z
dXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLmNhblBsYXlUeXBlKCkgLSBzdXBwb3J0ZWQgZm9y
bWF0IHcvbyBjb2RlY3MgcGFyYW1ldGVyCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTICJtYXliZSIgaXMgIm1heWJlIgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5j
ZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5Q
bGF5VHlwZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlw
ZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS5odG1sCShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3N1
cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8xLmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMjQgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5h
dWRpby5jYW5QbGF5VHlwZSgpIC0gc3VwcG9ydGVkIGZvcm1hdCB3L28gY29kZWNzIHBhcmFtZXRl
cjwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4K
KyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1
L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbmF2aWdhdG9yLWNhbnBsYXl0eXBlIj5zcGVjIHJlZmVy
ZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYSI+CisgIDwvYXVkaW8+CisgIDxkaXYgaWQ9Imxv
ZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIHZhciB2ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKKyBpZiAodi5jYW5QbGF5VHlwZSgnYXVkaW8vb2dnOyBj
b2RlY3M9InZvcmJpcyInKSA9PSAicHJvYmFibHkiKSB7CisgIGFzc2VydF9lcXVhbHMoCisgICB2
LmNhblBsYXlUeXBlKCJhdWRpby9vZ2ciKSwKKyAgICJtYXliZSIsCisgICAiYXVkaW9FbGVtZW50
LmNhblBsYXlUeXBlKCkgc2hvdWxkIHJldHVybiAnbWF5YmUnIG9uIHN1cHBvcnRlZCBmb3JtYXQg
dy9vIGNvZGVjcyBwYXJhbWV0ZXIiKTsKKyB9Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlUeXBlL2Nh
blBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8yLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUv
Y2FuUGxheVR5cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzItZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2NhblBsYXlU
eXBlL2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8yLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAorYXVkaW8uY2FuUGxheVR5cGUo
KSAtIHN1cHBvcnRlZCBmb3JtYXQgdy9vIGNvZGVjcyBwYXJhbWV0ZXIKKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCklu
ZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVf
c3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfc3VwcG9y
dGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzIuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9zdXBwb3J0ZWRf
YnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0
IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8uY2Fu
UGxheVR5cGUoKSAtIHN1cHBvcnRlZCBmb3JtYXQgdy9vIGNvZGVjcyBwYXJhbWV0ZXI8L3RpdGxl
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFk
PgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092
ZXJ2aWV3Lmh0bWwjZG9tLW5hdmlnYXRvci1jYW5wbGF5dHlwZSI+c3BlYyByZWZlcmVuY2U8L2E+
PC9wPgorICA8YXVkaW8gaWQ9ImEiPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhIik7CisgaWYgKHYuY2FuUGxheVR5cGUoJ2F1ZGlvL21wNDsgY29kZWNzPSJt
cDRhLjQwLjIiJykgPT0gInByb2JhYmx5IikgeworICBhc3NlcnRfZXF1YWxzKAorICAgdi5jYW5Q
bGF5VHlwZSgiYXVkaW8vbXA0IiksCisgICAibWF5YmUiLAorICAgImF1ZGlvRWxlbWVudC5jYW5Q
bGF5VHlwZSgpIHNob3VsZCByZXR1cm4gJ21heWJlJyBvbiBzdXBwb3J0ZWQgZm9ybWF0IHcvbyBj
b2RlY3MgcGFyYW1ldGVyIik7CisgfQorfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRt
bD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRT
cmNfZW1wdHlfaWZfbm9fc3JjLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3NyYy1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8v
Y3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3NyYy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLmN1cnJlbnRTcmMgLSBlbXB0eSBpZiBubyBz
b3VyY2UKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIiIgaXMgIiIKKwor
VEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3NyYy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJl
bnRTcmNfZW1wdHlfaWZfbm9fc3JjLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3NyYy5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
IDxoZWFkPgorICA8dGl0bGU+YXVkaW8uY3VycmVudFNyYyAtIGVtcHR5IGlmIG5vIHNvdXJjZTwv
dGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8
L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3Nw
ZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtY3VycmVudHNyYyI+c3BlYyByZWZlcmVuY2U8L2E+
PC9wPgorICA8YXVkaW8gaWQ9ImEiPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYSIpLmN1cnJlbnRTcmMsCisgICIiLAorICAiYXVkaW9FbGVt
ZW50LmN1cnJlbnRTcmMgc2hvdWxkIGJlIGVtcHR5IGlmIHRoZXJlIGlzIG5vIHNvdXJjZSIpOwor
fSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJfYWRkaW5n
X3NvdXJjZV9jaGlsZC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9hZGRpbmdf
c291cmNlX2NoaWxkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21l
ZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJfYWRkaW5n
X3NvdXJjZV9jaGlsZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTIgQEAK
K2F1ZGlvRWxlbWVudC5jdXJyZW50U3JjIHNob3VsZCBub3QgYmUgZW1wdHkgYWZ0ZXIgYWRkaW5n
IHNvdXJjZSBlbGVtZW50IChldmVuIHdpdGggYSBib2d1cyB2YWx1ZSkKKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCitQQVNTIGZhbHNlIGlzIGZhbHNl
CisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9hZGRp
bmdfc291cmNlX2NoaWxkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9hZGRpbmdfc291cmNl
X2NoaWxkLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8v
Y3VycmVudFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX2FkZGluZ19zb3VyY2VfY2hpbGQu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyOCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRt
bD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvLmN1cnJlbnRTcmMgLSBub24tZW1wdHkgYWZ0ZXIg
YWRkaW5nIHNvdXJjZSBlbGVtZW50PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0
cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1jdXJyZW50
c3JjIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxz
Y3JpcHQ+Cit2YXIgdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImF1ZGlvIik7Citkb2N1bWVu
dC5ib2R5LmFwcGVuZENoaWxkKHYpOworYXNzZXJ0X3RydWUoCisgdi5jdXJyZW50U3JjID09ICIi
LAorICJhdWRpb0VsZW1lbnQuY3VycmVudFNyYyBzaG91bGQgYmUgZW1wdHkgaWYgdGhlcmUgaXMg
bm8gc291cmNlIik7Cit2YXIgcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNvdXJjZSIpOwor
cy5zcmMgPSAiLiI7Cit2LmFwcGVuZENoaWxkKHMpOwordmFyIHQgPSBhc3luY190ZXN0KCJhdWRp
b0VsZW1lbnQuY3VycmVudFNyYyBzaG91bGQgbm90IGJlIGVtcHR5IGFmdGVyIGFkZGluZyBzb3Vy
Y2UgZWxlbWVudCAoZXZlbiB3aXRoIGEgYm9ndXMgdmFsdWUpIik7Cit3aW5kb3cuc2V0VGltZW91
dChmdW5jdGlvbigpIHsKKyB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgIGFzc2VydF9mYWxzZSgKKyAg
IHYuY3VycmVudFNyYyA9PSAiIil9KTsKKyB0LmRvbmUoKTsKK30sIDApOworICA8L3NjcmlwdD4K
KyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY3Vy
cmVudFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3JjLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY3VycmVudFNyYy9j
dXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3JjLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9jdXJyZW50U3JjL2N1cnJlbnRT
cmNfbm9uZW1wdHlfYWZ0ZXJfc2V0dGluZ19zcmMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDEyIEBACithdWRpb0VsZW1lbnQuY3VycmVudFNyYyBzaG91bGQgbm90IGJlIGVt
cHR5IGFmdGVyIHNldHRpbmcgc3JjIGF0dHJpYnV0ZSAoZXZlbiB0byBhIGJvZ3VzIHZhbHVlKQor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKK1BBU1Mg
ZmFsc2UgaXMgZmFsc2UKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4
OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX25vbmVt
cHR5X2FmdGVyX3NldHRpbmdfc3JjLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9zZXR0aW5n
X3NyYy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2N1
cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9zZXR0aW5nX3NyYy5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFk
PgorICA8dGl0bGU+YXVkaW8uY3VycmVudFNyYyAtIG5vbi1lbXB0eSBhZnRlciBzZXR0aW5nIHNy
YyBhdHRyaWJ1dGU8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+
PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2Lncz
Lm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLWN1cnJlbnRzcmMiPnNwZWMg
cmVmZXJlbmNlPC9hPjwvcD4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Zh
ciB2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYXVkaW8iKTsKK2Fzc2VydF90cnVlKAorIHYu
Y3VycmVudFNyYyA9PSAiIiwKKyAiYXVkaW9FbGVtZW50LmN1cnJlbnRTcmMgc2hvdWxkIGJlIGVt
cHR5IGlmIHRoZXJlIGlzIG5vIHNvdXJjZSIpOwordi5zcmMgPSAiLiI7Cit2YXIgdCA9IGFzeW5j
X3Rlc3QoImF1ZGlvRWxlbWVudC5jdXJyZW50U3JjIHNob3VsZCBub3QgYmUgZW1wdHkgYWZ0ZXIg
c2V0dGluZyBzcmMgYXR0cmlidXRlIChldmVuIHRvIGEgYm9ndXMgdmFsdWUpIik7Cit3aW5kb3cu
c2V0VGltZW91dChmdW5jdGlvbigpIHsKKyB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgIGFzc2VydF9m
YWxzZSgKKyAgIHYuY3VycmVudFNyYyA9PSAiIil9KTsKKyB0LmRvbmUoKTsKK30sIDApOworICA8
L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3Vy
cmVudFNyY19wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVudFNyY19wcm9wZXJ0eV9l
eGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5j
dXJyZW50U3JjIC0gZXhpc3RlbmNlIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisK
KwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVudFNy
Y19wcm9wZXJ0eV9leGlzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vY3VycmVudFNyYy9jdXJyZW50U3JjX3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2N1cnJlbnRTcmMvY3VycmVu
dFNyY19wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMCBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvLmN1cnJlbnRT
cmMgLSBleGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFw
cGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6
Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtY3VycmVudHNy
YyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImEiPgorICA8L2F1ZGlvPgor
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBh
c3NlcnRfdHJ1ZSgKKyAgImN1cnJlbnRTcmMiIGluIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
IiksCisgICJhdWRpb0VsZW1lbnQuY3VycmVudFNyYyBwcm9wZXJ0eSBleGlzdHMiKTsKK30pOwor
ICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vZXJyb3IvZXJyb3JfbnVsbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9yX251bGwtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9yX251
bGwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5lcnJv
ciAtIG51bGwgaWYgbm8gc291cmNlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTICJudWxsIiBpcyAibnVsbCIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKwor
CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXJyb3IvZXJyb3JfbnVsbC5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9lcnJvci9lcnJvcl9u
dWxsLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXJy
b3IvZXJyb3JfbnVsbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5
cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8uZXJyb3IgLSBudWxsIGlm
IG5vIHNvdXJjZTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48
L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMu
b3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtZXJyb3IiPnNwZWMgcmVmZXJl
bmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhIj4KKyAgPC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9n
Ij48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0X2VxdWFscygK
KyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKS5lcnJvciwKKyAgbnVsbCwKKyAgImF1ZGlv
RWxlbWVudC5lcnJvciBwcm9wZXJ0eSBpcyBudWxsIGlmIG5vIHNvdXJjZSIpOworfSk7CisgIDwv
c2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9lcnJvci9lcnJvcl9vbmVycm9yX2NhbGxlZF9vbl9ib2d1c19zb3VyY2UtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9lcnJvci9lcnJv
cl9vbmVycm9yX2NhbGxlZF9vbl9ib2d1c19zb3VyY2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9yX29uZXJyb3JfY2Fs
bGVkX29uX2JvZ3VzX3NvdXJjZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTEgQEAKK2F1ZGlvRWxlbWVudC5vbmVycm9yIGlzIHRyaWdnZXJlZCBvbiBib2d1cyBzb3VyY2UK
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIjQiIGlzICI0IgorCitURVNU
IENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9lcnJvci9lcnJvcl9vbmVycm9yX2NhbGxlZF9vbl9ib2d1c19zb3VyY2UuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXJyb3IvZXJyb3Jfb25l
cnJvcl9jYWxsZWRfb25fYm9ndXNfc291cmNlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXJyb3IvZXJyb3Jfb25lcnJvcl9jYWxsZWRfb25fYm9ndXNf
c291cmNlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAKKzwhZG9jdHlwZSBodG1s
PgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpby5lcnJvciAtIE1FRElBX0VSUl9TUkNf
Tk9UX1NVUFBPUlRFRCBjb25zdGFudCBpcyA0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4u
L3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJl
Zj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1l
cnJvciI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImEiIHNyYz0iLiIgb25l
cnJvcj0idGVzdF9lcnJvcigpIj4KKyAgPC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4K
KyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgiYXVkaW9FbGVtZW50Lm9uZXJyb3IgaXMg
dHJpZ2dlcmVkIG9uIGJvZ3VzIHNvdXJjZSIpOworZnVuY3Rpb24gdGVzdF9lcnJvcigpIHsKKyB2
YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhIik7CisgdC5zdGVwKGZ1bmN0aW9uKCkg
eworICBhc3NlcnRfZXF1YWxzKAorICAgdi5lcnJvci5jb2RlLAorICAgNCwKKyAgICJhdWRpb0Vs
ZW1lbnQuZXJyb3IgTUVESUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVEIGNvbnN0YW50IGlzIDQiKTsK
KyB9KTsKKyB0LmRvbmUoKTsKK30KKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRl
eDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0
cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlv
L2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXJyb3IvZXJyb3JfcHJvcGVydHlfZXhpc3Rz
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVkaW8uZXJyb3Ig
LSBleGlzdGVuY2UgdGVzdAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0
cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXJyb3IvZXJyb3JfcHJvcGVydHlfZXhpc3RzLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2Vycm9yL2Vycm9y
X3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDIwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0
bGU+YXVkaW8uZXJyb3IgLSBleGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIu
Li8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxh
IGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVk
aWEtZXJyb3IiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhIj4KKyAgPC9h
dWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24o
KSB7CisgYXNzZXJ0X3RydWUoCisgICJlcnJvciIgaW4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImEiKSwKKyAgImF1ZGlvRWxlbWVudC5lcnJvciBwcm9wZXJ0eSBleGlzdHMiKTsKK30pOworICA8
L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfY2FucGxheS1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2
ZW50X2NhbnBsYXktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitz
ZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgY2Fu
cGxheSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXkuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXkuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZl
bnRfY2FucGxheS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8IWRvY3R5cGUg
aHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gY2FucGxheTwv
dGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL01pY3Jvc29mdC9jb21tb24vbWVkaWEuanMiPjwvc2NyaXB0
PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRt
bDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+
CisgIDx2aWRlbyBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYg
aWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcg
c3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5IGV2
ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheSIsIGZ1bmN0aW9uKCkgeworICB0LnN0
ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgp
OworICBhLnBhdXNlKCk7Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53
My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5y
YW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9jYW5wbGF5X21hbnVhbC1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVu
dF9jYW5wbGF5X21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXlfbWFudWFsLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9u
IG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5IGV2ZW50CisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRp
by9ldmVudHMvZXZlbnRfY2FucGxheV9tYW51YWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXlfbWFudWFsLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2Nh
bnBsYXlfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlw
ZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBjYW5wbGF5
PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0Pgor
ICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9tZWRpYS5qcyI+PC9zY3Jp
cHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9o
dG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwv
cD4KKyAgPHZpZGVvIGlkPSJhIiBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9n
Ij48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGluZyBzcmMgYXR0
cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5IGV2ZW50
Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEi
KTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheSIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAo
ZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgpOwor
fSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUvc291
bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2Ny
aXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRp
by9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2gt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlv
L2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBz
aG91bGQgdHJpZ2dlciBjYW5wbGF5dGhyb3VnaCBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZl
cmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50
X2NhbnBsYXl0aHJvdWdoLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L2F1ZGlvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC5o
dG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1s
PgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gY2FucGxheXRocm91Z2g8L3RpdGxl
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgIDxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21lZGlhLmpzIj48L3NjcmlwdD4KKyA8
L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3Nw
ZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8
dmlkZW8gaWQ9ImEiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5nIHNyYyBh
dHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgY2FucGxheXRocm91Z2gg
ZXZlbnQiLCB7dGltZW91dDo2MDAwMH0pOwordmFyIGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5dGhyb3VnaCIsIGZ1bmN0aW9uKCkg
eworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7Cisg
IHQuZG9uZSgpOworICBhLnBhdXNlKCk7Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6
Ly9tZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgp
ICsgTWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaF9t
YW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2hfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfY2Fu
cGxheXRocm91Z2hfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwx
MSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQg
dHJpZ2dlciBjYW5wbGF5dGhyb3VnaCBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UK
KworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBs
YXl0aHJvdWdoX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2hfbWFudWFsLmh0bWwJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2NhbnBsYXl0
aHJvdWdoX21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5
cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gY2FucGxh
eXRocm91Z2g8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9z
Y3JpcHQ+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21lZGlhLmpz
Ij48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYu
dzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9ImEiIGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2
IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5n
IHNyYyBhdHRyaWJ1dGUgb24gbm9uLWF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGNhbnBs
YXl0aHJvdWdoIGV2ZW50Iiwge3RpbWVvdXQ6NjAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheXRocm91Z2giLCBm
dW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7
CisgIH0pOworICB0LmRvbmUoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21l
ZGlhLnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBN
YXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZl
bnRfbG9hZGVkZGF0YS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3Bs
YXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZGVkZGF0YSBldmVudAorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3Bl
YyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X2xvYWRlZGRhdGEuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZGVkZGF0YS5odG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxo
ZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gbG9hZGVkZGF0YTwvdGl0bGU+CisgIDxzY3Jp
cHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyAgPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL01pY3Jvc29mdC9jb21tb24vbWVkaWEuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8
Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmll
dy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0i
YSIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+
CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJpYnV0ZSBv
biBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRkYXRhIGV2ZW50Iiwge3RpbWVv
dXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRk
RXZlbnRMaXN0ZW5lcigibG9hZGVkZGF0YSIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rp
b24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICBhLnBh
dXNlKCk7Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAx
MC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsK
KyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2FkZWRkYXRhX21hbnVhbC1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2Fk
ZWRkYXRhX21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGFfbWFudWFsLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9u
IG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRkYXRhIGV2ZW50CisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfbG9hZGVkZGF0YV9tYW51YWwuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGFfbWFudWFs
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X2xvYWRlZGRhdGFfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUg
QEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVu
dHMgLSBsb2FkZWRkYXRhPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIu
anMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9t
ZWRpYS5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRw
Oi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMg
cmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBjb250cm9scz4KKyAgPC92aWRlbz4K
KyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgi
c2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dl
ciBsb2FkZWRkYXRhIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkZGF0YSIsIGZ1
bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsK
KyAgfSk7CisgIHQuZG9uZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVk
aWEudzMub3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1h
dGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGEtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMv
ZXZlbnRfbG9hZGVkbWV0YWRhdGEtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0
ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRtZXRhZGF0YSBldmVudAor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRlZG1ldGFkYXRhLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YS5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9l
dmVudF9sb2FkZWRtZXRhZGF0YS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8
IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0g
bG9hZGVkbWV0YWRhdGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5q
cyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21l
ZGlhLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6
Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyBy
ZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9ImEiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8
L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3lu
Y190ZXN0KCJzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRy
aWdnZXIgbG9hZGVkbWV0YWRhdGEgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIGEgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJsb2FkZWRt
ZXRhZGF0YSIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRf
dHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICBhLnBhdXNlKCk7Cit9KTsKK2Euc3Jj
ID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81
IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9i
b2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9l
dmVudF9sb2FkZWRtZXRhZGF0YV9tYW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGFfbWFu
dWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGFfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1h
dXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRtZXRhZGF0YSBldmVudAorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVk
aW8vZXZlbnRzL2V2ZW50X2xvYWRlZG1ldGFkYXRhX21hbnVhbC5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGFf
bWFudWFsLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8v
ZXZlbnRzL2V2ZW50X2xvYWRlZG1ldGFkYXRhX21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+
dmlkZW8gZXZlbnRzIC0gbG9hZGVkbWV0YWRhdGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4v
Li4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNy
b3NvZnQvY29tbW9uL21lZGlhLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxw
PjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRp
YWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9ImEiIGNvbnRyb2xz
PgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQg
PSBhc3luY190ZXN0KCJzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gbm9uLWF1dG9wbGF5IHZpZGVv
IHNob3VsZCB0cmlnZ2VyIGxvYWRlZG1ldGFkYXRhIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsK
K3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5l
cigibG9hZGVkbWV0YWRhdGEiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgewor
ICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRvbmUoKTsKK30pOworYS5zcmMgPSBn
ZXRBdWRpb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSAr
ICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50
X2xvYWRzdGFydC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2Fkc3RhcnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2Fkc3RhcnQt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBh
dHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZHN0YXJ0IGV2ZW50
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlh
L1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0Lmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9sb2Fkc3RhcnQuaHRtbAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfbG9h
ZHN0YXJ0Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAKKzwhZG9jdHlwZSBodG1s
PgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBsb2Fkc3RhcnQ8L3Rp
dGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgIDxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21lZGlhLmpzIj48L3NjcmlwdD4K
KyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1
L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgor
ICA8dmlkZW8gaWQ9ImEiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlk
PSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5nIHNy
YyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZHN0YXJ0IGV2
ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigibG9hZHN0YXJ0IiwgZnVuY3Rpb24oKSB7CisgIHQu
c3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsKKyAgdC5kb25l
KCk7CisgIGEucGF1c2UoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21lZGlh
LnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRo
LnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9tYW51YWwtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMv
ZXZlbnRfbG9hZHN0YXJ0X21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9tYW51YWwtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRy
aWJ1dGUgb24gbm9uLWF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGxvYWRzdGFydCBldmVu
dAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9tYW51YWwuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9t
YW51YWwuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9l
dmVudHMvZXZlbnRfbG9hZHN0YXJ0X21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8g
ZXZlbnRzIC0gbG9hZHN0YXJ0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBw
ZXIuanMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1v
bi9tZWRpYS5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJo
dHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNw
ZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBjb250cm9scz4KKyAgPC92aWRl
bz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVz
dCgic2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJp
Z2dlciBsb2Fkc3RhcnQgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIGEgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJsb2Fkc3RhcnQiLCBm
dW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7
CisgIH0pOworICB0LmRvbmUoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21l
ZGlhLnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBN
YXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfY2FucGxh
eXRocm91Z2gtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9ldmVudHMvZXZlbnRfb3JkZXJfY2FucGxheV9jYW5wbGF5dGhyb3VnaC1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X29yZGVyX2NhbnBsYXlfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkg
dmlkZW8gc2hvdWxkIHRyaWdnZXIgY2FucGxheSB0aGVuIGNhbnBsYXl0aHJvdWdoIGV2ZW50CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9ldmVudHMvZXZlbnRfb3JkZXJfY2FucGxheV9jYW5wbGF5dGhyb3VnaC5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfb3Jk
ZXJfY2FucGxheV9jYW5wbGF5dGhyb3VnaC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5wbGF5X2NhbnBsYXl0aHJv
dWdoLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzAgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBjYW5wbGF5LCB0aGVuIGNh
bnBsYXl0aHJvdWdoPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMi
Pjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9tZWRp
YS5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVm
ZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92
aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNf
dGVzdCgic2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmln
Z2VyIGNhbnBsYXkgdGhlbiBjYW5wbGF5dGhyb3VnaCBldmVudCIsIHt0aW1lb3V0OjYwMDAwfSk7
Cit2YXIgYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhIik7Cit2YXIgZm91bmRfY2FucGxh
eSA9IGZhbHNlOworYS5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5IiwgZnVuY3Rpb24oKSB7Cisg
IGZvdW5kX2NhbnBsYXkgPSB0cnVlOworfSk7CithLmFkZEV2ZW50TGlzdGVuZXIoImNhbnBsYXl0
aHJvdWdoIiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90
cnVlKGZvdW5kX2NhbnBsYXkpOworICB9KTsKKyAgdC5kb25lKCk7CisgIGEucGF1c2UoKTsKK30p
OworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3NvdW5k
L3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8v
ZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfcGxheWluZy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5w
bGF5X3BsYXlpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5wbGF5X3BsYXlpbmctZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUg
b24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgY2FucGxheSB0aGVuIHBsYXlpbmcgZXZl
bnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5wbGF5X3BsYXlpbmcuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVy
X2NhbnBsYXlfcGxheWluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5wbGF5X3BsYXlpbmcuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzMCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4K
KyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIGNhbnBsYXksIHRoZW4gcGxheWluZzwvdGl0bGU+Cisg
IDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyAgPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL01pY3Jvc29mdC9jb21tb24vbWVkaWEuanMiPjwvc2NyaXB0PgorIDwvaGVh
ZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9P
dmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRl
byBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+
PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJp
YnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5IHRoZW4gcGxheWlu
ZyBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgYSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJhIik7Cit2YXIgZm91bmRfY2FucGxheSA9IGZhbHNlOworYS5hZGRFdmVudExpc3RlbmVy
KCJjYW5wbGF5IiwgZnVuY3Rpb24oKSB7CisgIGZvdW5kX2NhbnBsYXkgPSB0cnVlOworfSk7Cith
LmFkZEV2ZW50TGlzdGVuZXIoInBsYXlpbmciLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0
aW9uKCkgeworICAgYXNzZXJ0X3RydWUoZm91bmRfY2FucGxheSk7CisgIH0pOworICB0LmRvbmUo
KTsKKyAgYS5wYXVzZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEu
dzMub3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgu
cmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfb3JkZXJfbG9hZGVkbWV0YWRhdGFfbG9h
ZGVkZGF0YS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9sb2FkZWRtZXRhZGF0YV9sb2FkZWRkYXRhLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVu
dHMvZXZlbnRfb3JkZXJfbG9hZGVkbWV0YWRhdGFfbG9hZGVkZGF0YS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRv
cGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRtZXRhZGF0YSB0aGVuIGxvYWRlZGRhdGEg
ZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9vcmRlcl9sb2FkZWRtZXRhZGF0YV9sb2FkZWRk
YXRhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50
cy9ldmVudF9vcmRlcl9sb2FkZWRtZXRhZGF0YV9sb2FkZWRkYXRhLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRl
ZG1ldGFkYXRhX2xvYWRlZGRhdGEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzMCBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAt
IGxvYWRlZG1ldGFkYXRhLCB0aGVuIGxvYWRlZGRhdGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0i
Li4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9N
aWNyb3NvZnQvY29tbW9uL21lZGlhLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+Cisg
IDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNt
ZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9ImEiIGF1dG9w
bGF5IGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2Ny
aXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3Bs
YXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZGVkbWV0YWRhdGEgdGhlbiBsb2FkZWRkYXRhIGV2
ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImEiKTsKK3ZhciBmb3VuZF9sb2FkZWRtZXRhZGF0YSA9IGZhbHNlOworYS5hZGRFdmVudExpc3Rl
bmVyKCJsb2FkZWRtZXRhZGF0YSIsIGZ1bmN0aW9uKCkgeworICBmb3VuZF9sb2FkZWRtZXRhZGF0
YSA9IHRydWU7Cit9KTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkZGF0YSIsIGZ1bmN0aW9u
KCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZShmb3VuZF9sb2FkZWRt
ZXRhZGF0YSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgYS5wYXVzZSgpOworfSk7CithLnNyYyA9
IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIp
ICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZl
bnRfb3JkZXJfbG9hZHN0YXJ0X3Byb2dyZXNzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9w
cm9ncmVzcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBv
biBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2Fkc3RhcnQgdGhlbiBwcm9ncmVzcyBl
dmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRf
b3JkZXJfbG9hZHN0YXJ0X3Byb2dyZXNzLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy5o
dG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDMwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1s
PgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gbG9hZHN0YXJ0LCB0aGVuIHByb2dy
ZXNzPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9tZWRpYS5qcyI+PC9z
Y3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9y
Zy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9h
PjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAg
PGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0
dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGxvYWRz
dGFydCB0aGVuIHByb2dyZXNzIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK3ZhciBmb3VuZF9sb2Fkc3RhcnQgPSBmYWxzZTsK
K2EuYWRkRXZlbnRMaXN0ZW5lcigibG9hZHN0YXJ0IiwgZnVuY3Rpb24oKSB7CisgIGZvdW5kX2xv
YWRzdGFydCA9IHRydWU7Cit9KTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigicHJvZ3Jlc3MiLCBmdW5j
dGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUoZm91bmRfbG9h
ZHN0YXJ0KTsKKyAgfSk7CisgIHQuZG9uZSgpOworICBhLnBhdXNlKCk7Cit9KTsKK2Euc3JjID0g
Z2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81Iikg
KyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVu
dF9wYXVzZV9tYW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGF1c2VfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGF1
c2VfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorY2Fs
bGluZyBwbGF5KCkgdGhlbiBwYXVzZSgpIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJp
Z2dlciBwYXVzZSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0
cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3BhdXNlX21hbnVhbC5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRf
cGF1c2VfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vZXZlbnRzL2V2ZW50X3BhdXNlX21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDI3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlk
ZW8gZXZlbnRzIC0gcGF1c2U8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBl
ci5qcyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9u
L21lZGlhLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0
dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3Bl
YyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9ImEiIGNvbnRyb2xzPgorICA8L3ZpZGVv
PgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0
KCJjYWxsaW5nIHBsYXkoKSB0aGVuIHBhdXNlKCkgb24gbm9uLWF1dG9wbGF5IHZpZGVvIHNob3Vs
ZCB0cmlnZ2VyIHBhdXNlIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigicGF1c2UiLCBmdW5j
dGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7Cisg
IH0pOworICB0LmRvbmUoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21lZGlh
LnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRo
LnJhbmRvbSgpOworYS5wbGF5KCk7CithLnBhdXNlKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4K
KzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRf
cGxheS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1
ZGlvL2V2ZW50cy9ldmVudF9wbGF5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRv
cGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBwbGF5IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJl
ZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZl
bnRfcGxheS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9l
dmVudHMvZXZlbnRfcGxheS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wbGF5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MjYgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBl
dmVudHMgLSBwbGF5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMi
Pjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9tZWRp
YS5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVm
ZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92
aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNf
dGVzdCgic2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmln
Z2VyIHBsYXkgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIGEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJwbGF5IiwgZnVuY3Rpb24oKSB7
CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsKKyAg
dC5kb25lKCk7CisgIGEucGF1c2UoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDov
L21lZGlhLnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkg
KyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X3BsYXlfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheV9tYW51YWwtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitjYWxsaW5nIHBsYXkoKSBvbiB2aWRlbyBz
aG91bGQgdHJpZ2dlciBwbGF5IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisK
SW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheV9tYW51
YWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRz
L2V2ZW50X3BsYXlfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMjcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRs
ZT52aWRlbyBldmVudHMgLSBwbGF5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2Nv
bW1vbi9tZWRpYS5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVm
PSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMi
PnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBjb250cm9scz4KKyAgPC92
aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNf
dGVzdCgiY2FsbGluZyBwbGF5KCkgb24gdmlkZW8gc2hvdWxkIHRyaWdnZXIgcGxheSBldmVudCIs
IHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhIik7
CithLmFkZEV2ZW50TGlzdGVuZXIoInBsYXkiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0
aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgYS5w
YXVzZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIw
MTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7
CithLnBsYXkoKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wbGF5aW5nLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3Bs
YXlpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzND
L2F1ZGlvL2V2ZW50cy9ldmVudF9wbGF5aW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNo
b3VsZCB0cmlnZ2VyIHBsYXlpbmcgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisK
KwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wbGF5aW5n
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9l
dmVudF9wbGF5aW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vZXZlbnRzL2V2ZW50X3BsYXlpbmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwy
NiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2
ZW50cyAtIHBsYXlpbmc8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5q
cyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21l
ZGlhLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6
Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyBy
ZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9ImEiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8
L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3lu
Y190ZXN0KCJzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRy
aWdnZXIgcGxheWluZyBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgYSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJhIik7CithLmFkZEV2ZW50TGlzdGVuZXIoInBsYXlpbmciLCBmdW5j
dGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7Cisg
IH0pOworICB0LmRvbmUoKTsKKyAgYS5wYXVzZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJ
KCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3
IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4K
SW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheWluZ19t
YW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfcGxheWluZ19tYW51YWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wbGF5aW5nX21h
bnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2NhbGxpbmcg
cGxheSgpIG9uIHZpZGVvIHNob3VsZCB0cmlnZ2VyIHBsYXlpbmcgZXZlbnQKKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
K3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2
ZW50cy9ldmVudF9wbGF5aW5nX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheWluZ19tYW51YWwuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcGxheWlu
Z19tYW51YWwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNyBAQAorPCFkb2N0eXBlIGh0
bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIHBsYXlpbmc8L3Rp
dGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgIDxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21lZGlhLmpzIj48L3NjcmlwdD4K
KyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1
L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgor
ICA8dmlkZW8gaWQ9ImEiIGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwv
ZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJjYWxsaW5nIHBsYXkoKSBvbiB2
aWRlbyBzaG91bGQgdHJpZ2dlciBwbGF5aW5nIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3Zh
ciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigi
cGxheWluZyIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRf
dHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICBhLnBhdXNlKCk7Cit9KTsKK2Euc3Jj
ID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81
IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKK2EucGxheSgpOworICA8L3Nj
cmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVk
aW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZl
bnRfcHJvZ3Jlc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitz
ZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgcHJv
Z3Jlc3MgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wcm9ncmVzcy5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcHJvZ3Jlc3Mu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMv
ZXZlbnRfcHJvZ3Jlc3MuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIHByb2dy
ZXNzPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9tZWRpYS5qcyI+PC9z
Y3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9y
Zy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9h
PjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAg
PGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0
dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIHByb2dy
ZXNzIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigicHJvZ3Jlc3MiLCBmdW5jdGlvbigpIHsK
KyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0
LmRvbmUoKTsKKyAgYS5wYXVzZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8v
bWVkaWEudzMub3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSAr
IE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfcHJvZ3Jlc3NfbWFudWFsLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZl
bnRzL2V2ZW50X3Byb2dyZXNzX21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzX21hbnVhbC1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0
dHJpYnV0ZSBvbiBub24tYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgcHJvZ3Jlc3MgZXZl
bnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF9wcm9ncmVzc19tYW51YWwuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzX21h
bnVhbC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2
ZW50cy9ldmVudF9wcm9ncmVzc19tYW51YWwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwy
NSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2
ZW50cyAtIHByb2dyZXNzPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIu
anMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9t
ZWRpYS5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRw
Oi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMg
cmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJhIiBjb250cm9scz4KKyAgPC92aWRlbz4K
KyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgi
c2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dl
ciBwcm9ncmVzcyBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgYSA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJhIik7CithLmFkZEV2ZW50TGlzdGVuZXIoInByb2dyZXNzIiwgZnVuY3Rp
b24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9
KTsKKyAgdC5kb25lKCk7Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53
My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5y
YW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF90aW1ldXBkYXRlLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3Rp
bWV1cGRhdGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL2V2ZW50cy9ldmVudF90aW1ldXBkYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGEgc3VmZmljaWVu
dGx5IGxvbmcgYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgdGltZXVwZGF0ZSBldmVudAor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUuaHRtbAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfdGlt
ZXVwZGF0ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gdGltZXVwZGF0ZTwv
dGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL01pY3Jvc29mdC9jb21tb24vbWVkaWEuanMiPjwvc2NyaXB0
PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRt
bDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+
CisgIDx2aWRlbyBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYg
aWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcg
c3JjIGF0dHJpYnV0ZSBvbiBhIHN1ZmZpY2llbnRseSBsb25nIGF1dG9wbGF5IHZpZGVvIHNob3Vs
ZCB0cmlnZ2VyIHRpbWV1cGRhdGUgZXZlbnQiLCB7dGltZW91dDo2MDAwMH0pOwordmFyIGEgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJ0aW1ldXBk
YXRlIiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVl
KHRydWUpOworICB9KTsKKyAgdC5kb25lKCk7CisgIGEucGF1c2UoKTsKK30pOworYS5zcmMgPSBn
ZXRBdWRpb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSAr
ICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50
X3RpbWV1cGRhdGVfbWFudWFsLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvYXVkaW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGVfbWFudWFsLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMv
ZXZlbnRfdGltZXVwZGF0ZV9tYW51YWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDExIEBACitjYWxsaW5nIHBsYXkoKSBvbiBhIHN1ZmZpY2llbnRseSBsb25nIHZpZGVvIHNo
b3VsZCB0cmlnZ2VyIHRpbWV1cGRhdGUgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNl
CisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9ldmVudF90aW1l
dXBkYXRlX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9ldmVudHMvZXZlbnRfdGltZXVwZGF0ZV9tYW51YWwuaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9ldmVudHMvZXZlbnRfdGltZXVwZGF0ZV9tYW51
YWwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNyBAQAorPCFkb2N0eXBlIGh0bWw+Cis8
aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIHRpbWV1cGRhdGU8L3RpdGxl
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgIDxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9NaWNyb3NvZnQvY29tbW9uL21lZGlhLmpzIj48L3NjcmlwdD4KKyA8
L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3Nw
ZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8
dmlkZW8gaWQ9ImEiIGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJjYWxsaW5nIHBsYXkoKSBvbiBhIHN1
ZmZpY2llbnRseSBsb25nIHZpZGVvIHNob3VsZCB0cmlnZ2VyIHRpbWV1cGRhdGUgZXZlbnQiLCB7
dGltZW91dDozMDAwMH0pOwordmFyIGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYSIpOwor
YS5hZGRFdmVudExpc3RlbmVyKCJ0aW1ldXBkYXRlIiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChm
dW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsKKyAgdC5kb25lKCk7Cisg
IGEucGF1c2UoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21lZGlhLnczLm9y
Zy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRv
bSgpOworYS5wbGF5KCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2R1cmlu
Z19sb2Fkc3RhcnQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlh
L1czQy9hdWRpby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2R1cmluZ19sb2Fkc3RhcnQtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL25l
dHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvRWxlbWVudC5uZXR3b3JrU3RhdGUgc2hv
dWxkIGJlIE5FVFdPUktfTE9BRElORyBkdXJpbmcgbG9hZHN0YXJ0IGV2ZW50CisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICIyIiBpcyAiMiIKKworVEVTVCBDT01QTEVURQor
c3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vbmV0
d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9kdXJpbmdfbG9hZHN0YXJ0Lmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVf
ZHVyaW5nX2xvYWRzdGFydC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
IDxoZWFkPgorICA8dGl0bGU+YXVkaW8ubmV0d29ya1N0YXRlIC0gTkVUV09SS19MT0FESU5HPC90
aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorICA8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vTWljcm9zb2Z0L2NvbW1vbi9tZWRpYS5qcyI+PC9zY3JpcHQ+
CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1s
NS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLW5ldHdvcmtzdGF0ZSI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImEiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8L2F1ZGlv
PgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0
KCJhdWRpb0VsZW1lbnQubmV0d29ya1N0YXRlIHNob3VsZCBiZSBORVRXT1JLX0xPQURJTkcgZHVy
aW5nIGxvYWRzdGFydCBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgYSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJhIik7CithLmFkZEV2ZW50TGlzdGVuZXIoImxvYWRzdGFydCIsIGZ1
bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfZXF1YWxzKGEubmV0
d29ya1N0YXRlLAorICAgYS5ORVRXT1JLX0xPQURJTkcpOworICB9KTsKKyAgdC5kb25lKCk7Cisg
IGEucGF1c2UoKTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21lZGlhLnczLm9y
Zy8yMDEwLzA1L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRv
bSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9pbml0aWFsLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vbmV0d29ya1N0
YXRlL25ldHdvcmtTdGF0ZV9pbml0aWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2luaXRp
YWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5uZXR3
b3JrU3RhdGUgLSBkZWZhdWx0IHN0YXRlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTICIwIiBpcyAiMCIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCklu
ZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0
ZV9pbml0aWFsLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlv
L25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfaW5pdGlhbC5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfaW5p
dGlhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIyIEBACis8IWRvY3R5cGUgaHRtbD4K
KzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8ubmV0d29ya1N0YXRlIC0gZGVmYXVsdCBz
dGF0ZTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3Njcmlw
dD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0
bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtbmV0d29ya3N0YXRlIj5zcGVjIHJlZmVy
ZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYSI+CisgIDwvYXVkaW8+CisgIDxkaXYgaWQ9Imxv
ZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIHZhciBhID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKKyBhc3NlcnRfZXF1YWxzKAorICBhLm5ldHdvcmtTdGF0
ZSwKKyAgYS5ORVRXT1JLX0VNUFRZLAorICAiYXVkaW9FbGVtZW50Lm5ldHdvcmtTdGF0ZSBzaG91
bGQgYmUgTkVUV09SS19FTVBUWSB0byBiZWdpbiB3aXRoIik7Cit9KTsKKyAgPC9zY3JpcHQ+Cisg
PC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL25ldHdv
cmtTdGF0ZS9uZXR3b3JrU3RhdGVfcHJvcGVydHlfZXhpc3RzLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vbmV0d29ya1N0YXRlL25ldHdvcmtT
dGF0ZV9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfcHJvcGVydHlf
ZXhpc3RzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVkaW8u
bmV0d29ya1N0YXRlIC0gZXhpc3RlbmNlIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNl
CisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3
b3JrU3RhdGVfcHJvcGVydHlfZXhpc3RzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL2F1ZGlvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfcHJvcGVydHlfZXhpc3Rz
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vbmV0d29y
a1N0YXRlL25ldHdvcmtTdGF0ZV9wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwyMCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxl
PmF1ZGlvLm5ldHdvcmtTdGF0ZSAtIGV4aXN0ZW5jZSB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBz
cmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAg
PHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2Rv
bS1tZWRpYS1uZXR3b3Jrc3RhdGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlk
PSJhIj4KKyAgPC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rl
c3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0X3RydWUoCisgICJuZXR3b3JrU3RhdGUiIGluIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhIiksCisgICJhdWRpb0VsZW1lbnQubmV0d29ya1N0YXRlIHBy
b3BlcnR5IGV4aXN0cyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5k
ZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wYXVzZWQvcGF1c2VkX2ZhbHNlX2R1cmlu
Z19wbGF5LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vcGF1c2VkL3BhdXNlZF9mYWxzZV9kdXJpbmdfcGxheS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcGF1c2VkL3BhdXNlZF9mYWxz
ZV9kdXJpbmdfcGxheS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAK
K2F1ZGlvLnBhdXNlZCBzaG91bGQgYmUgZmFsc2UgZHVyaW5nIHBsYXkgZXZlbnQKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgZmFsc2UgaXMgZmFsc2UKKworVEVTVCBDT01Q
TEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVk
aW8vcGF1c2VkL3BhdXNlZF9mYWxzZV9kdXJpbmdfcGxheS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wYXVzZWQvcGF1c2VkX2ZhbHNlX2R1cmluZ19wbGF5
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcGF1c2Vk
L3BhdXNlZF9mYWxzZV9kdXJpbmdfcGxheS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1
IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8gZXZl
bnRzIC0gcGF1c2VkIHByb3BlcnR5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0
cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVj
IHJlZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+Cisg
IDwvYXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFz
eW5jX3Rlc3QoImF1ZGlvLnBhdXNlZCBzaG91bGQgYmUgZmFsc2UgZHVyaW5nIHBsYXkgZXZlbnQi
LCB7dGltZW91dDozMDAwMH0pOwordmFyIGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYSIp
OworYS5hZGRFdmVudExpc3RlbmVyKCJwbGF5IiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5j
dGlvbigpIHsKKyAgIGFzc2VydF9mYWxzZShhLnBhdXNlZCk7CisgIH0pOworICB0LmRvbmUoKTsK
KyAgYS5wYXVzZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEudzMu
b3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFu
ZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L21lZGlhL1czQy9hdWRpby9wYXVzZWQvcGF1c2VkX3RydWVfZHVyaW5nX3BhdXNlLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcGF1c2VkL3Bh
dXNlZF90cnVlX2R1cmluZ19wYXVzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcGF1c2VkL3BhdXNlZF90cnVlX2R1cmluZ19wYXVzZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLnBhdXNlZCBz
aG91bGQgYmUgdHJ1ZSBkdXJpbmcgcGF1c2UgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJl
bmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3BhdXNlZC9wYXVzZWRf
dHJ1ZV9kdXJpbmdfcGF1c2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vcGF1c2VkL3BhdXNlZF90cnVlX2R1cmluZ19wYXVzZS5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3BhdXNlZC9wYXVzZWRfdHJ1ZV9kdXJp
bmdfcGF1c2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorPCFkb2N0eXBlIGh0
bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvIGV2ZW50cyAtIHBhdXNlZCBwcm9w
ZXJ0eTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3Njcmlw
dD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0
bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9w
PgorICA8YXVkaW8gaWQ9ImEiIGNvbnRyb2xzPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJhdWRpby5wYXVzZWQgc2hv
dWxkIGJlIHRydWUgZHVyaW5nIHBhdXNlIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBh
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigicGF1
c2UiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUo
YS5wYXVzZWQpOworICB9KTsKKyAgdC5kb25lKCk7Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkko
Imh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcg
RGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKK2EucGxheSgpOworYS5wYXVzZSgpOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8v
cHJlbG9hZC9wcmVsb2FkX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9wcm9wZXJ0eV9l
eGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzND
L2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5wcmVsb2FkIC0gZXhpc3RlbmNlIHRlc3QK
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3Byb3BlcnR5
X2V4aXN0cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlv
L3ByZWxvYWQvcHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwyMCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1
ZGlvLnByZWxvYWQgLSBleGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8u
Li93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhy
ZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEt
cHJlbG9hZCI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImF1ZGlvIj4KKyAg
PC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rp
b24oKSB7CisgYXNzZXJ0X3RydWUoCisgICJwcmVsb2FkIiBpbiBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiYXVkaW8iKSwKKyAgImF1ZGlvRWxlbWVudC5wcmVsb2FkIHByb3BlcnR5IGV4aXN0cyIp
OworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYXV0b192YWx1ZS1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxv
YWQvcHJlbG9hZF9yZWZsZWN0c19hdXRvX3ZhbHVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNf
YXV0b192YWx1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1
ZGlvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgImF1dG8iIGlzICJhdXRvIgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVy
ZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxv
YWRfcmVmbGVjdHNfYXV0b192YWx1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYXV0b192YWx1ZS5odG1sCShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9h
ZF9yZWZsZWN0c19hdXRvX3ZhbHVlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAK
KzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpby5wcmVsb2Fk
IC0gcmVmbGVjdGlvbiB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBw
ZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDov
L2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1wcmVsb2FkIj5z
cGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYXVkaW8iIHByZWxvYWQ9ImF1dG8i
PgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChm
dW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXVkaW8iKS5wcmVsb2FkLAorICAiYXV0byIsCisgICJhdWRpb0VsZW1lbnQucHJlbG9hZCByZWZs
ZWN0cyAnYXV0bycgdmFsdWUiKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+
CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxl
Y3RzX2JvZ3VzX3ZhbHVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2JvZ3VzX3ZhbHVlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVs
b2FkL3ByZWxvYWRfcmVmbGVjdHNfYm9ndXNfdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDExIEBACithdWRpby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0CisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICJhdXRvIiBpcyAiYXV0byIKKworVEVT
VCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2JvZ3VzX3ZhbHVlLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZs
ZWN0c19ib2d1c192YWx1ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ib2d1c192YWx1ZS5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFk
PgorICA8dGl0bGU+YXVkaW8ucHJlbG9hZCAtIHJlZmxlY3Rpb24gdGVzdDwvdGl0bGU+CisgIDxz
Y3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJv
ZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcu
aHRtbCNkb20tbWVkaWEtcHJlbG9hZCI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8YXVkaW8g
aWQ9ImF1ZGlvIiBwcmVsb2FkPSJtYXJrcy1mYW50YXNtYWdvcmljYWwtcHJlbG9hZC1zdGF0ZSI+
CisgIDwvYXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1
bmN0aW9uKCkgeworIGFzc2VydF9lcXVhbHMoCisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
dWRpbyIpLnByZWxvYWQsCisgICJhdXRvIiwKKyAgImF1ZGlvRWxlbWVudC5wcmVsb2FkIHJlZmxl
Y3RzIGJvZ3VzIHZhbHVlIGFzICdhdXRvJyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4K
KzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxv
YWRfcmVmbGVjdHNfZW1wdHktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfZW1wdHktZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQv
cHJlbG9hZF9yZWZsZWN0c19lbXB0eS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMTEgQEAKK2F1ZGlvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKK1BBU1MgImF1dG8iIGlzICJhdXRvIgorCitURVNUIENPTVBMRVRF
CitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9w
cmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfZW1wdHkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2VtcHR5Lmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVs
b2FkX3JlZmxlY3RzX2VtcHR5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwh
ZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpby5wcmVsb2FkIC0g
cmVmbGVjdGlvbiB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIu
anMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rl
di53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1wcmVsb2FkIj5zcGVj
IHJlZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYXVkaW8iIHByZWxvYWQ9IiI+CisgIDwv
YXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9u
KCkgeworIGFzc2VydF9lcXVhbHMoCisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdWRpbyIp
LnByZWxvYWQsCisgICJhdXRvIiwKKyAgImF1ZGlvRWxlbWVudC5wcmVsb2FkIHJlZmxlY3RzIGVt
cHR5IHZhbHVlIGFzICdhdXRvJyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRt
bD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVm
bGVjdHNfbWV0YWRhdGEtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQv
cHJlbG9hZF9yZWZsZWN0c19tZXRhZGF0YS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTEgQEAKK2F1ZGlvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIm1ldGFkYXRhIiBpcyAibWV0YWRhdGEiCisKK1RF
U1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19tZXRhZGF0YS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVj
dHNfbWV0YWRhdGEuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwyMSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRp
dGxlPmF1ZGlvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3Q8L3RpdGxlPgorICA8c2NyaXB0IHNy
Yz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8
cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9t
LW1lZGlhLXByZWxvYWQiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhdWRp
byIgcHJlbG9hZD0ibWV0YWRhdGEiPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXVkaW8iKS5wcmVsb2FkLAorICAibWV0YWRhdGEiLAorICAi
YXVkaW9FbGVtZW50LnByZWxvYWQgcmVmbGVjdHMgJ21ldGFkYXRhJyB2YWx1ZSIpOworfSk7Cisg
IDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9fdmFsdWUtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRf
cmVmbGVjdHNfbm9fdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ub192YWx1ZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLnByZWxvYWQgLSBy
ZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgImF1
dG8iIGlzICJhdXRvIgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9f
dmFsdWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJl
bG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vX3ZhbHVlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vX3ZhbHVl
Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0
bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0PC90
aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwv
aGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3Bl
Yy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1wcmVsb2FkIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+
CisgIDxhdWRpbyBpZD0iYXVkaW8iPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXVkaW8iKS5wcmVsb2FkLAorICAiYXV0byIsCisgICJhdWRp
b0VsZW1lbnQucHJlbG9hZCBhYnNlbmNlIHJlZmxlY3RzICdub25lJyB2YWx1ZSIpOworfSk7Cisg
IDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZs
ZWN0c19ub25lLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlh
L1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRl
c3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIm5vbmUiIGlzICJub25l
IgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3Rz
L21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVm
bGVjdHNfbm9uZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1
ZGlvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ub25lLmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5h
dWRpby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4u
Ly4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEg
aHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRp
YS1wcmVsb2FkIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYXVkaW8iIHBy
ZWxvYWQ9Im5vbmUiPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2Ny
aXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYXVkaW8iKS5wcmVsb2FkLAorICAibm9uZSIsCisgICJhdWRpb0VsZW1lbnQu
cHJlbG9hZCByZWZsZWN0cyAnbm9uZScgdmFsdWUiKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2Jv
ZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9w
cmVsb2FkX3JlZmxlY3RzX25vbmVfYXV0b3BsYXktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9u
ZV9hdXRvcGxheS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vbmVfYXV0b3BsYXktZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACithdWRpby5wcmVsb2FkIC0gcmVm
bGVjdGlvbiB0ZXN0CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICJub25l
IiBpcyAibm9uZSIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vbmVf
YXV0b3BsYXkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8v
cHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vbmVfYXV0b3BsYXkuaHRtbAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNf
bm9uZV9hdXRvcGxheS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5
cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8ucHJlbG9hZCAtIHJlZmxl
Y3Rpb24gdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48
L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMu
b3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtcHJlbG9hZCI+c3BlYyByZWZl
cmVuY2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImF1ZGlvIiBhdXRvcGxheSBwcmVsb2FkPSJub25l
Ij4KKyAgPC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3Qo
ZnVuY3Rpb24oKSB7CisgYXNzZXJ0X2VxdWFscygKKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImF1ZGlvIikucHJlbG9hZCwKKyAgIm5vbmUiLAorICAiYXVkaW9FbGVtZW50LnByZWxvYWQgcmVm
bGVjdHMgJ25vbmUnIHZhbHVlIGV2ZW4gaWYgYXV0b3BsYXkgYXR0cmlidXRlIGlzIHByZXNlbnQi
KTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5LWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVh
ZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVf
ZHVyaW5nX2NhbnBsYXktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBA
CithdWRpby5yZWFkeVN0YXRlIHNob3VsZCBiZSA+PSBIQVZFX0ZVVFVSRV9EQVRBIGR1cmluZyBj
YW5wbGF5IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBs
YXkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlT
dGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5w
bGF5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpbyBldmVudHMgLSByZWFkeVN0YXRlIHByb3Bl
cnR5IGR1cmluZyBjYW5wbGF5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBw
ZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDov
L2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJl
ZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwv
YXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5j
X3Rlc3QoImF1ZGlvLnJlYWR5U3RhdGUgc2hvdWxkIGJlID49IEhBVkVfRlVUVVJFX0RBVEEgZHVy
aW5nIGNhbnBsYXkgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIGEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5IiwgZnVuY3Rp
b24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKGEucmVhZHlTdGF0
ZSA+PSBhLkhBVkVfRlVUVVJFX0RBVEEpOworICB9KTsKKyAgdC5kb25lKCk7CisgIGEucGF1c2Uo
KTsKK30pOworYS5zcmMgPSBnZXRBdWRpb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1
L3NvdW5kL3NvdW5kXzUiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8
L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
YXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5dGhyb3VnaC1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3Rh
dGUvcmVhZHlTdGF0ZV9kdXJpbmdfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0
ZV9kdXJpbmdfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDExIEBACithdWRpby5yZWFkeVN0YXRlIHNob3VsZCBiZSBIQVZFX0VOT1VHSF9EQVRBIGR1
cmluZyBjYW5wbGF5dGhyb3VnaCBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyAiNCIgaXMgIjQiCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJ
bmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9k
dXJpbmdfY2FucGxheXRocm91Z2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5dGhyb3VnaC5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3Rh
dGUvcmVhZHlTdGF0ZV9kdXJpbmdfY2FucGxheXRocm91Z2guaHRtbAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwyNiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxl
PmF1ZGlvIGV2ZW50cyAtIHJlYWR5U3RhdGUgcHJvcGVydHkgZHVyaW5nIGNhbnBsYXl0aHJvdWdo
PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0Pgor
IDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUv
c3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+Cisg
IDxhdWRpbyBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvYXVkaW8+CisgIDxkaXYgaWQ9
ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoImF1ZGlvLnJlYWR5
U3RhdGUgc2hvdWxkIGJlIEhBVkVfRU5PVUdIX0RBVEEgZHVyaW5nIGNhbnBsYXl0aHJvdWdoIGV2
ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheXRocm91Z2giLCBmdW5jdGlvbigpIHsK
KyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X2VxdWFscyhhLnJlYWR5U3RhdGUsCisg
ICAgYS5IQVZFX0VOT1VHSF9EQVRBKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICBhLnBhdXNlKCk7
Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS9z
b3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKKyAgPC9z
Y3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1
ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkZGF0YS1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVh
ZHlTdGF0ZV9kdXJpbmdfbG9hZGVkZGF0YS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19s
b2FkZWRkYXRhLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVk
aW8ucmVhZHlTdGF0ZSBzaG91bGQgYmUgPj0gSEFWRV9DVVJSRU5UX0RBVEEgZHVyaW5nIGxvYWRl
ZGRhdGEgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVk
ZGF0YS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFk
eVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZGRhdGEuaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5n
X2xvYWRlZGRhdGEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNSBAQAorPCFkb2N0eXBl
IGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvIGV2ZW50cyAtIHJlYWR5U3Rh
dGUgcHJvcGVydHkgZHVyaW5nIGxvYWRlZGRhdGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4v
Li4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBo
cmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVu
dHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhIiBhdXRvcGxheSBjb250
cm9scz4KKyAgPC9hdWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Zh
ciB0ID0gYXN5bmNfdGVzdCgiYXVkaW8ucmVhZHlTdGF0ZSBzaG91bGQgYmUgPj0gSEFWRV9DVVJS
RU5UX0RBVEEgZHVyaW5nIGxvYWRlZGRhdGEgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFy
IGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYSIpOworYS5hZGRFdmVudExpc3RlbmVyKCJs
b2FkZWRkYXRhIiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2Vy
dF90cnVlKGEucmVhZHlTdGF0ZSA+PSBhLkhBVkVfQ1VSUkVOVF9EQVRBKTsKKyAgfSk7CisgIHQu
ZG9uZSgpOworICBhLnBhdXNlKCk7Cit9KTsKK2Euc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9t
ZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsg
TWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9h
ZGVkbWV0YWRhdGEtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlh
L1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZG1ldGFkYXRhLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9y
ZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZG1ldGFkYXRhLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVkaW8ucmVhZHlTdGF0ZSBzaG91bGQgYmUg
Pj0gSEFWRV9NRVRBREFUQSBkdXJpbmcgbG9hZGVkbWV0YWRhdGEgZXZlbnQKKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
K3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3Jl
YWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRhdGEuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1
cmluZ19sb2FkZWRtZXRhZGF0YS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRhdGEu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRt
bD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvIGV2ZW50cyAtIHJlYWR5U3RhdGUgcHJvcGVydHkg
ZHVyaW5nIGxvYWRlZG1ldGFkYXRhPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0
cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVj
IHJlZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYSIgYXV0b3BsYXkgY29udHJvbHM+Cisg
IDwvYXVkaW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFz
eW5jX3Rlc3QoImF1ZGlvLnJlYWR5U3RhdGUgc2hvdWxkIGJlID49IEhBVkVfTUVUQURBVEEgZHVy
aW5nIGxvYWRlZG1ldGFkYXRhIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciBhID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImEiKTsKK2EuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkbWV0
YWRhdGEiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3Ry
dWUoYS5yZWFkeVN0YXRlID49IGEuSEFWRV9NRVRBREFUQSk7CisgIH0pOworICB0LmRvbmUoKTsK
KyAgYS5wYXVzZSgpOworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEudzMu
b3JnLzIwMTAvMDUvc291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFu
ZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L21lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX3BsYXlpbmctZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFk
eVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX3BsYXlpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9k
dXJpbmdfcGxheWluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAK
K2F1ZGlvLnJlYWR5U3RhdGUgc2hvdWxkIGJlID49IEhBVkVfRlVUVVJFX0RBVEEgZHVyaW5nIHBs
YXlpbmcgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfcGxheWlu
Zy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFkeVN0
YXRlL3JlYWR5U3RhdGVfZHVyaW5nX3BsYXlpbmcuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX3BsYXlp
bmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8
aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvIGV2ZW50cyAtIHJlYWR5U3RhdGUgcHJvcGVy
dHkgZHVyaW5nIHBsYXlpbmc8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBl
ci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVm
ZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhIiBhdXRvcGxheSBjb250cm9scz4KKyAgPC9h
dWRpbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNf
dGVzdCgiYXVkaW8ucmVhZHlTdGF0ZSBzaG91bGQgYmUgPj0gSEFWRV9GVVRVUkVfREFUQSBkdXJp
bmcgcGxheWluZyBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgYSA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJhIik7CithLmFkZEV2ZW50TGlzdGVuZXIoInBsYXlpbmciLCBmdW5jdGlv
bigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUoYS5yZWFkeVN0YXRl
ID49IGEuSEFWRV9GVVRVUkVfREFUQSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgYS5wYXVzZSgp
OworfSk7CithLnNyYyA9IGdldEF1ZGlvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUv
c291bmQvc291bmRfNSIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwv
c2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9h
dWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfaW5pdGlhbC1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9p
bml0aWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfaW5pdGlhbC1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlvLnJlYWR5U3RhdGUgLSBkZWZhdWx0IHN0YXRl
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICIwIiBpcyAiMCIKKworVEVT
VCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2luaXRpYWwuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2luaXRp
YWwuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9yZWFk
eVN0YXRlL3JlYWR5U3RhdGVfaW5pdGlhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIy
IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8ucmVh
ZHlTdGF0ZSAtIGRlZmF1bHQgc3RhdGU8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNj
d3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJo
dHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLW5ldHdv
cmtzdGF0ZSI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImEiPgorICA8L2F1
ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigp
IHsKKyB2YXIgYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhIik7CisgYXNzZXJ0X2VxdWFs
cygKKyAgYS5yZWFkeVN0YXRlLAorICBhLkhBVkVfTk9USElORywKKyAgImF1ZGlvRWxlbWVudC5y
ZWFkeVN0YXRlIHNob3VsZCBiZSBIQVZFX05PVEhJTkcgdG8gYmVnaW4gd2l0aCIpOworfSk7Cisg
IDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfcHJvcGVydHlfZXhpc3RzLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9y
ZWFkeVN0YXRlX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX3Byb3BlcnR5
X2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK2F1ZGlv
LnJlYWR5U3RhdGUgLSBleGlzdGVuY2UgdGVzdAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UK
KworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFkeVN0
YXRlX3Byb3BlcnR5X2V4aXN0cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlh
L1czQy9hdWRpby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfcHJvcGVydHlfZXhpc3RzLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vcmVhZHlTdGF0ZS9yZWFk
eVN0YXRlX3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBA
Cis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+YXVkaW8ucmVhZHlT
dGF0ZSAtIGV4aXN0ZW5jZSB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0
cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1uZXR3b3Jr
c3RhdGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGF1ZGlvIGlkPSJhIj4KKyAgPC9hdWRp
bz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7
CisgYXNzZXJ0X3RydWUoCisgICJyZWFkeVN0YXRlIiBpbiBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYSIpLAorICAiYXVkaW9FbGVtZW50LnJlYWR5U3RhdGUgcHJvcGVydHkgZXhpc3RzIik7Cit9
KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVmbGVjdHNfYXR0cmlidXRlX25vdF9zb3VyY2VfZWxlbWVu
dHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRp
by9zcmMvc3JjX3JlZmxlY3RzX2F0dHJpYnV0ZV9ub3Rfc291cmNlX2VsZW1lbnRzLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9zcmMvc3Jj
X3JlZmxlY3RzX2F0dHJpYnV0ZV9ub3Rfc291cmNlX2VsZW1lbnRzLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVkaW8uc3JjIC0gcmVmbGVjdGlvbiB0ZXN0CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy9hdWRpby9zcmMvc3JjX3JlZmxlY3RzX2F0dHJpYnV0ZV9ub3Rfc291cmNlX2VsZW1lbnRzLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVm
bGVjdHNfYXR0cmlidXRlX25vdF9zb3VyY2VfZWxlbWVudHMuaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9zcmMvc3JjX3JlZmxlY3RzX2F0dHJpYnV0ZV9u
b3Rfc291cmNlX2VsZW1lbnRzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwh
ZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRpby5zcmMgLSByZWZs
ZWN0aW9uIHRlc3Q8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+
PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2Lncz
Lm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLXNyYyI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImF1ZGlvIiBzcmM9ImZvbyI+CisgICA8c291cmNlIHNy
Yz0iYmFyYmF6IiAvPgorICA8L2F1ZGlvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2Ny
aXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfdHJ1ZSgKKyAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImF1ZGlvIikuc3JjLmluZGV4T2YoImJhcmJheiIpID09IC0xLAorICAiYXVkaW9F
bGVtZW50LnNyYyBzaG91bGQgcmVmbGVjdCBzcmMgYXR0cmlidXRlLCBub3Qgc291cmNlIGNoaWxk
IGVsZW1lbnRzIik7Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVmbGVjdHNfbm9fdmFsdWUtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9zcmMv
c3JjX3JlZmxlY3RzX25vX3ZhbHVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy9hdWRpby9zcmMvc3JjX3JlZmxlY3RzX25vX3ZhbHVlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorYXVkaW8uc3JjIC0gZW1wdHkgaWYg
bm8gc291cmNlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICIiIGlzICIi
CisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVmbGVjdHNfbm9fdmFsdWUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vc3JjL3NyY19yZWZsZWN0c19ub192YWx1
ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1ZGlvL3NyYy9z
cmNfcmVmbGVjdHNfbm9fdmFsdWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPmF1ZGlvLnNyYyAtIGVt
cHR5IGlmIG5vIHNvdXJjZTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVy
LmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9k
ZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtc3JjIj5zcGVjIHJl
ZmVyZW5jZTwvYT48L3A+CisgIDxhdWRpbyBpZD0iYXVkaW8iPgorICA8L2F1ZGlvPgorICA8ZGl2
IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRf
ZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXVkaW8iKS5zcmMsCisgICIiLAor
ICAiYXVkaW9FbGVtZW50LnNyYyBzaG91bGQgYmUgZW1wdHkgaWYgdGhlcmUgaXMgbm8gc291cmNl
Iik7Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL2F1ZGlvL3NyYy9zcmNfcmVtb3ZhbF9kb2VzX25vdF90cmlnZ2VyX2xvYWRz
dGFydC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL2F1
ZGlvL3NyYy9zcmNfcmVtb3ZhbF9kb2VzX25vdF90cmlnZ2VyX2xvYWRzdGFydC1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vc3JjL3NyY19y
ZW1vdmFsX2RvZXNfbm90X3RyaWdnZXJfbG9hZHN0YXJ0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwxMSBAQAorcmVtb3Zpbmcgc3JjIGF0dHJpYnV0ZSBzaG91bGQgbm90IHRy
aWdnZXIgbG9hZHN0YXJ0IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5k
ZXg6IExheW91dFRlc3RzL21lZGlhL1czQy9hdWRpby9zcmMvc3JjX3JlbW92YWxfZG9lc19ub3Rf
dHJpZ2dlcl9sb2Fkc3RhcnQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvYXVkaW8vc3JjL3NyY19yZW1vdmFsX2RvZXNfbm90X3RyaWdnZXJfbG9hZHN0YXJ0Lmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvYXVkaW8vc3JjL3NyY19yZW1v
dmFsX2RvZXNfbm90X3RyaWdnZXJfbG9hZHN0YXJ0Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMzkgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT5hdWRp
by5zcmMgLSByZWZsZWN0aW9uIHRlc3Q8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNj
d3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJo
dHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLXNyYyI+
c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8YXVkaW8gaWQ9ImF1ZGlvIj4KKyAgPC9hdWRpbz4K
KyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgi
cmVtb3Zpbmcgc3JjIGF0dHJpYnV0ZSBzaG91bGQgbm90IHRyaWdnZXIgbG9hZHN0YXJ0IGV2ZW50
Iiwge3RpbWVvdXQ6MTAwMDB9KTsKK3ZhciByZW1vdmVkX2F0dHIgPSBmYWxzZTsKK3ZhciB0ZXN0
X2RvbmUgPSBmYWxzZTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1ZGlvIik7
Cit2LmFkZEV2ZW50TGlzdGVuZXIoImxvYWRzdGFydCIsIGZ1bmN0aW9uKCkgeworICBpZiAoIXJl
bW92ZWRfYXR0cikgeyAKKyAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAg
cmVtb3ZlZF9hdHRyID0gdHJ1ZTsKKyAgICAgdi5yZW1vdmVBdHRyaWJ1dGUoInNyYyIpOworICAg
IH0sIDApOworICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICBpZiAodGVz
dF9kb25lKSB7IHJldHVybjsgfQorICAgICB0ZXN0X2RvbmUgPSB0cnVlOworICAgICB0LnN0ZXAo
ZnVuY3Rpb24oKXsgYXNzZXJ0X3RydWUodHJ1ZSk7IH0pOworICAgICB0LmRvbmUoKTsKKyAgICB9
LCAxMDAwKTsKKyAgIHJldHVybjsKKyAgfQorICBpZiAodGVzdF9kb25lKSB7IHJldHVybjsgfQor
ICB0ZXN0X2RvbmUgPSB0cnVlOworICB0LnN0ZXAoZnVuY3Rpb24oKXsgYXNzZXJ0X2ZhbHNlKHRy
dWUpOyB9KTsKKyAgdC5kb25lKCk7Cit9KTsKK3Yuc3JjID0gZ2V0QXVkaW9VUkkoImh0dHA6Ly9t
ZWRpYS53My5vcmcvMjAxMC8wNS9zb3VuZC9zb3VuZF81IikgKyAiPyIgKyBuZXcgRGF0ZSgpICsg
TWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0
aW9uX29jdGV0X3N0cmVhbS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0
X3N0cmVhbS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFt
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8uY2FuUGxh
eVR5cGUoKSAtIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSBtdXN0IGFsd2F5cyByZXR1cm4gdGhl
IGVtcHR5IHN0cmluZworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVl
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRp
b25fb2N0ZXRfc3RyZWFtLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbS5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlU
eXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbS5odG1sCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDIwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8
dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSBtdXN0
IGFsd2F5cyByZXR1cm4gdGhlIGVtcHR5IHN0cmluZzwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIu
Li8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxh
IGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbmF2
aWdhdG9yLWNhbnBsYXl0eXBlIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0i
diI+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0
KGZ1bmN0aW9uKCkgeworIGFzc2VydF90cnVlKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
diIpLmNhblBsYXlUeXBlKCJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iKSA9PSAiIiwKKyAgInZp
ZGVvRWxlbWVudC5jYW5QbGF5VHlwZSgnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJykgc2hvdWxk
IHJldHVybiB0aGUgZW1wdHkgc3RyaW5nIik7Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2Nh
blBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVjc18xLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5
cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzEtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Nh
blBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVj
c18xLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8uY2Fu
UGxheVR5cGUoKSAtIGNhbiBuZXZlciBwbGF5IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSB3aXRo
IGEgY29kZWNzIHBhcmFtZXRlcgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFT
UyAiIiBpcyAiIgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExh
eW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNh
dGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlv
bl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9u
X29jdGV0X3N0cmVhbV93aXRoX2NvZGVjc18xLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MjEgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlby5j
YW5QbGF5VHlwZSgpIC0gY2FuIG5ldmVyIHBsYXkgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIHdp
dGggYSBjb2RlY3MgcGFyYW1ldGVyPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dy
YXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0
cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21pbWUtdHlwZXMiPnNwZWMg
cmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4KKyAgPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0X2Vx
dWFscygKKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKS5jYW5QbGF5VHlwZSgnYXBwbGlj
YXRpb24vb2N0ZXQtc3RyZWFtOyBjb2RlY3M9InZwOCwgdm9yYmlzIicpLAorICAiIiwKKyAgInZp
ZGVvRWxlbWVudC5jYW5QbGF5VHlwZSgnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtOyBjb2RlY3M9
Li4uJykgc2hvdWxkIGFsd2F5cyByZXR1cm4gdGhlIGVtcHR5IHN0cmluZyIpOworfSk7CisgIDwv
c2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0
aF9jb2RlY3NfMi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVh
bV93aXRoX2NvZGVjc18yLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3Rl
dF9zdHJlYW1fd2l0aF9jb2RlY3NfMi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMTEgQEAKK3ZpZGVvLmNhblBsYXlUeXBlKCkgLSBjYW4gbmV2ZXIgcGxheSBhcHBsaWNhdGlv
bi9vY3RldC1zdHJlYW0gd2l0aCBhIGNvZGVjcyBwYXJhbWV0ZXIKKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgIiIgaXMgIiIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZl
cmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUv
Y2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzIuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2Fu
UGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzIuaHRtbAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5Q
bGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9zdHJlYW1fd2l0aF9jb2RlY3NfMi5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFk
PgorICA8dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNhbiBuZXZlciBwbGF5IGFwcGxpY2F0
aW9uL29jdGV0LXN0cmVhbSB3aXRoIGEgY29kZWNzIHBhcmFtZXRlcjwvdGl0bGU+CisgIDxzY3Jp
cHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+
CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRt
bCNhLXR5cGUtdGhhdC10aGUtdXNlci1hZ2VudC1rbm93cy1pdC1jYW5ub3QtcmVuZGVyIj5zcGVj
IHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiI+CisgIDwvdmlkZW8+CisgIDxkaXYg
aWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIGFzc2VydF9l
cXVhbHMoCisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2IikuY2FuUGxheVR5cGUoJ2FwcGxp
Y2F0aW9uL29jdGV0LXN0cmVhbTsgY29kZWNzPSJ0aGVvcmEsIHZvcmJpcyInKSwKKyAgIiIsCisg
ICJ2aWRlb0VsZW1lbnQuY2FuUGxheVR5cGUoJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTsgY29k
ZWNzPS4uLicpIHNob3VsZCBhbHdheXMgcmV0dXJuIHRoZSBlbXB0eSBzdHJpbmciKTsKK30pOwor
ICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFt
X3dpdGhfY29kZWNzXzMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9hcHBsaWNhdGlvbl9vY3RldF9z
dHJlYW1fd2l0aF9jb2RlY3NfMy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYXBwbGljYXRpb25f
b2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDExIEBACit2aWRlby5jYW5QbGF5VHlwZSgpIC0gY2FuIG5ldmVyIHBsYXkgYXBwbGlj
YXRpb24vb2N0ZXQtc3RyZWFtIHdpdGggYSBjb2RlY3MgcGFyYW1ldGVyCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTICIiIGlzICIiCisKK1RFU1QgQ09NUExFVEUKK3NwZWMg
cmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlU
eXBlL2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVjc18zLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBl
L2NhblBsYXlUeXBlX2FwcGxpY2F0aW9uX29jdGV0X3N0cmVhbV93aXRoX2NvZGVjc18zLmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUv
Y2FuUGxheVR5cGVfYXBwbGljYXRpb25fb2N0ZXRfc3RyZWFtX3dpdGhfY29kZWNzXzMuaHRtbAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8
aGVhZD4KKyAgPHRpdGxlPnZpZGVvLmNhblBsYXlUeXBlKCkgLSBjYW4gbmV2ZXIgcGxheSBhcHBs
aWNhdGlvbi9vY3RldC1zdHJlYW0gd2l0aCBhIGNvZGVjcyBwYXJhbWV0ZXI8L3RpdGxlPgorICA8
c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxi
b2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3
Lmh0bWwjYS10eXBlLXRoYXQtdGhlLXVzZXItYWdlbnQta25vd3MtaXQtY2Fubm90LXJlbmRlciI+
c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8
ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3Nl
cnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpLmNhblBsYXlUeXBlKCdh
cHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IGNvZGVjcz0iYXZjMS40MkUwMUUsIG1wNGEuNDAuMiIn
KSwKKyAgIiIsCisgICJ2aWRlb0VsZW1lbnQuY2FuUGxheVR5cGUoJ2FwcGxpY2F0aW9uL29jdGV0
LXN0cmVhbTsgY29kZWNzPS4uLicpIHNob3VsZCBhbHdheXMgcmV0dXJuIHRoZSBlbXB0eSBzdHJp
bmciKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYm9ndXNfdHlwZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Nh
blBsYXlUeXBlL2NhblBsYXlUeXBlX2JvZ3VzX3R5cGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBl
X2JvZ3VzX3R5cGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2
aWRlby5jYW5QbGF5VHlwZSgpIC0gYm9ndXMgZm9ybWF0CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTICIiIGlzICIiCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNl
CisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBs
YXlUeXBlX2JvZ3VzX3R5cGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfYm9ndXNfdHlwZS5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlU
eXBlX2JvZ3VzX3R5cGUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLmNhblBsYXlUeXBlKCkg
LSBib2d1cyBmb3JtYXQ8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5q
cyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2
LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW5hdmlnYXRvci1jYW5wbGF5dHlw
ZSI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgor
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBh
c3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpLmNhblBsYXlUeXBl
KCJhcHBsaWNhdGlvbi9tYXJrcy1mYW50YXNtYWdvcmljYWwtZm9ybWF0IiksCisgICIiLAorICAi
dmlkZW9FbGVtZW50LmNhblBsYXlUeXBlKCkgc2hvdWxkIHJldHVybiB0aGUgZW1wdHkgc3RyaW5n
IG9uIGEgYm9ndXMgZm9ybWF0Iik7Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlU
eXBlX2NvZGVjc19vcmRlcl8xLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzEt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVv
L2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX2NvZGVjc19vcmRlcl8xLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBw
YXJhbWV0ZXIgb3JkZXIKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIiIg
aXMgIiIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVy
XzEuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxh
eVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzEuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9jb2RlY3Nf
b3JkZXJfMS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIyIEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVj
cyBwYXJhbWV0ZXIgb3JkZXI8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBl
ci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZl
cmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7CisgIGFzc2VydF9lcXVhbHMoCisgICB2LmNhblBsYXlU
eXBlKCd2aWRlby93ZWJtOyBjb2RlY3M9InZwOCwgdm9yYmlzIicpLAorICAgdi5jYW5QbGF5VHlw
ZSgndmlkZW8vd2VibTsgY29kZWNzPSJ2b3JiaXMsIHZwOCInKSwKKyAgICJvcmRlciBvZiBjb2Rl
Y3MgcGFyYW1ldGVycyBzaG91bGQgaGF2ZSBubyBlZmZlY3QiKTsKK30pOworICA8L3NjcmlwdD4K
KyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2Fu
UGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzItZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlw
ZV9jb2RlY3Nfb3JkZXJfMi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzIt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2aWRlby5jYW5QbGF5
VHlwZSgpIC0gY29kZWNzIHBhcmFtZXRlciBvcmRlcgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworUEFTUyAicHJvYmFibHkiIGlzICJwcm9iYWJseSIKKworVEVTVCBDT01QTEVURQor
c3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2Fu
UGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNz
X29yZGVyXzIuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9jb2RlY3Nfb3JkZXJfMi5odG1sCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDIyIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8
dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBwYXJhbWV0ZXIgb3JkZXI8L3RpdGxl
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFk
PgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092
ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8g
aWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0Pgor
dGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7
CisgIGFzc2VydF9lcXVhbHMoCisgICB2LmNhblBsYXlUeXBlKCd2aWRlby9vZ2c7IGNvZGVjcz0i
dGhlb3JhLCB2b3JiaXMiJyksCisgICB2LmNhblBsYXlUeXBlKCd2aWRlby9vZ2c7IGNvZGVjcz0i
dm9yYmlzLCB0aGVvcmEiJyksCisgICAib3JkZXIgb2YgY29kZWNzIHBhcmFtZXRlcnMgc2hvdWxk
IGhhdmUgbm8gZWZmZWN0Iik7Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJ
bmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBl
X2NvZGVjc19vcmRlcl8zLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzMtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Nh
blBsYXlUeXBlL2NhblBsYXlUeXBlX2NvZGVjc19vcmRlcl8zLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBwYXJh
bWV0ZXIgb3JkZXIKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIiIgaXMg
IiIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzMu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5
cGUvY2FuUGxheVR5cGVfY29kZWNzX29yZGVyXzMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9jb2RlY3Nfb3Jk
ZXJfMy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIyIEBACis8IWRvY3R5cGUgaHRtbD4K
KzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBw
YXJhbWV0ZXIgb3JkZXI8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5q
cyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2
LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ2Iik7CisgIGFzc2VydF9lcXVhbHMoCisgICB2LmNhblBsYXlUeXBl
KCd2aWRlby9tcDQ7IGNvZGVjcz0iYXZjMS40MkUwMUUsIG1wNGEuNDAuMiInKSwKKyAgIHYuY2Fu
UGxheVR5cGUoJ3ZpZGVvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIsIGF2YzEuNDJFMDFFIicpLAor
ICAgIm9yZGVyIG9mIGNvZGVjcyBwYXJhbWV0ZXJzIHNob3VsZCBoYXZlIG5vIGVmZmVjdCIpOwor
fSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxh
eVR5cGUvY2FuUGxheVR5cGVfbWV0aG9kX2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVf
bWV0aG9kX2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAK
K3ZpZGVvLmNhblBsYXlUeXBlKCkgLSBleGlzdGVuY2Ugb2YgbWV0aG9kCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitz
cGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5Q
bGF5VHlwZS9jYW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX21ldGhvZF9l
eGlzdHMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9j
YW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9tZXRob2RfZXhpc3RzLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMjAgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRs
ZT52aWRlby5jYW5QbGF5VHlwZSgpIC0gZXhpc3RlbmNlIG9mIG1ldGhvZDwvdGl0bGU+CisgIDxz
Y3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJv
ZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcu
aHRtbCNkb20tbmF2aWdhdG9yLWNhbnBsYXl0eXBlIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+Cisg
IDx2aWRlbyBpZD0idiI+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxz
Y3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIGFzc2VydF90cnVlKAorICAiY2FuUGxheVR5cGUi
IGluIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2IiksCisgICJ2aWRlb0VsZW1lbnQuY2FuUGxh
eVR5cGUgbWV0aG9kIGV4aXN0cyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRt
bD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5
VHlwZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBs
YXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8xLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9j
YW5QbGF5VHlwZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMS1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTAgQEAKK3ZpZGVvLmNhblBsYXlUeXBlKCkgLSBz
dXBwb3J0ZWQgZm9ybWF0IHcvbyBjb2RlY3MgcGFyYW1ldGVyCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDog
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3N1cHBv
cnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8xLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3N1cHBvcnRlZF9i
dXRfbm9fY29kZWNzX3BhcmFtZXRlcl8xLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfc3VwcG9ydGVkX2J1dF9u
b19jb2RlY3NfcGFyYW1ldGVyXzEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNCBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLmNhblBsYXlU
eXBlKCkgLSBzdXBwb3J0ZWQgZm9ybWF0IHcvbyBjb2RlY3MgcGFyYW1ldGVyPC90aXRsZT4KKyAg
PHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8
Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmll
dy5odG1sI2RvbS1uYXZpZ2F0b3ItY2FucGxheXR5cGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4K
KyAgPHZpZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAg
PHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgdmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidiIpOworIGlmICh2LmNhblBsYXlUeXBlKCd2aWRlby93ZWJtOyBjb2RlY3M9InZwOCwg
dm9yYmlzIicpID09ICJwcm9iYWJseSIpIHsKKyAgYXNzZXJ0X2VxdWFscygKKyAgIHYuY2FuUGxh
eVR5cGUoInZpZGVvL3dlYm0iKSwKKyAgICJtYXliZSIsCisgICAidmlkZW9FbGVtZW50LmNhblBs
YXlUeXBlKCkgc2hvdWxkIHJldHVybiAnbWF5YmUnIG9uIHN1cHBvcnRlZCBmb3JtYXQgdy9vIGNv
ZGVjcyBwYXJhbWV0ZXIiKTsKKyB9Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlU
eXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8yLWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxh
eVR5cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzItZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2Nh
blBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8yLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8uY2FuUGxheVR5cGUoKSAtIHN1
cHBvcnRlZCBmb3JtYXQgdy9vIGNvZGVjcyBwYXJhbWV0ZXIKKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgIm1heWJlIiBpcyAibWF5YmUiCisKK1RFU1QgQ09NUExFVEUKK3Nw
ZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBs
YXlUeXBlL2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8yLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBl
L2NhblBsYXlUeXBlX3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8yLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2Fu
UGxheVR5cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzIuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwyNCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4K
KyAgPHRpdGxlPnZpZGVvLmNhblBsYXlUeXBlKCkgLSBzdXBwb3J0ZWQgZm9ybWF0IHcvbyBjb2Rl
Y3MgcGFyYW1ldGVyPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMi
Pjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53
My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1uYXZpZ2F0b3ItY2FucGxheXR5cGUi
PnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4KKyAg
PGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgdmFy
IHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOworIGlmICh2LmNhblBsYXlUeXBlKCd2
aWRlby9vZ2c7IGNvZGVjcz0idGhlb3JhIicpID09ICJwcm9iYWJseSIpIHsKKyAgYXNzZXJ0X2Vx
dWFscygKKyAgIHYuY2FuUGxheVR5cGUoInZpZGVvL29nZyIpLAorICAgIm1heWJlIiwKKyAgICJ2
aWRlb0VsZW1lbnQuY2FuUGxheVR5cGUoKSBzaG91bGQgcmV0dXJuICdtYXliZScgb24gc3VwcG9y
dGVkIGZvcm1hdCB3L28gY29kZWNzIHBhcmFtZXRlciIpOworIH0KK30pOworICA8L3NjcmlwdD4K
KyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2Fu
UGxheVR5cGUvY2FuUGxheVR5cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1ldGVyXzMt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9j
YW5QbGF5VHlwZS9jYW5QbGF5VHlwZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJf
My1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfc3VwcG9ydGVkX2J1dF9ub19jb2RlY3NfcGFyYW1l
dGVyXzMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEwIEBACit2aWRlby5j
YW5QbGF5VHlwZSgpIC0gc3VwcG9ydGVkIGZvcm1hdCB3L28gY29kZWNzIHBhcmFtZXRlcgorCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVy
ZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9j
YW5QbGF5VHlwZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMy5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5
VHlwZV9zdXBwb3J0ZWRfYnV0X25vX2NvZGVjc19wYXJhbWV0ZXJfMy5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBl
X3N1cHBvcnRlZF9idXRfbm9fY29kZWNzX3BhcmFtZXRlcl8zLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMjQgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRs
ZT52aWRlby5jYW5QbGF5VHlwZSgpIC0gc3VwcG9ydGVkIGZvcm1hdCB3L28gY29kZWNzIHBhcmFt
ZXRlcjwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3Njcmlw
dD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0
bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbmF2aWdhdG9yLWNhbnBsYXl0eXBlIj5zcGVjIHJl
ZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiI+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9
ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIHZhciB2ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsKKyBpZiAodi5jYW5QbGF5VHlwZSgndmlkZW8vbXA0
OyBjb2RlY3M9ImF2YzEuNDJFMDFFLCBtcDRhLjQwLjIiJykgPT0gInByb2JhYmx5IikgeworICBh
c3NlcnRfZXF1YWxzKAorICAgdi5jYW5QbGF5VHlwZSgidmlkZW8vbXA0IiksCisgICAibWF5YmUi
LAorICAgInZpZGVvRWxlbWVudC5jYW5QbGF5VHlwZSgpIHNob3VsZCByZXR1cm4gJ21heWJlJyBv
biBzdXBwb3J0ZWQgZm9ybWF0IHcvbyBjb2RlY3MgcGFyYW1ldGVyIik7CisgfQorfSk7CisgIDwv
c2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfMS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBl
L2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV8xLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90
d29faW1wbGllc19vbmVfMS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTAg
QEAKK3ZpZGVvLmNhblBsYXlUeXBlKCkgLSBjb2RlY3MgcGFyYW1ldGVyIGxvZ2ljCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNl
CisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBs
YXlUeXBlX3R3b19pbXBsaWVzX29uZV8xLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV8x
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxh
eVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzEuaHRtbAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwyNCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxl
PnZpZGVvLmNhblBsYXlUeXBlKCkgLSBjb2RlY3MgcGFyYW1ldGVyIGxvZ2ljPC90aXRsZT4KKyAg
PHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8
Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmll
dy5odG1sI21pbWUtdHlwZXMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2
Ij4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3Qo
ZnVuY3Rpb24oKSB7CisgdmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOworIGlm
ICh2LmNhblBsYXlUeXBlKCd2aWRlby93ZWJtOyBjb2RlY3M9InZwOCwgdm9yYmlzIicpID09ICJw
cm9iYWJseSIpIHsKKyAgYXNzZXJ0X2VxdWFscygKKyAgIHYuY2FuUGxheVR5cGUoJ3ZpZGVvL3dl
Ym07IGNvZGVjcz0idnA4LCB2b3JiaXMiJyksCisgICB2LmNhblBsYXlUeXBlKCd2aWRlby93ZWJt
OyBjb2RlY3M9InZwOCInKSwKKyAgICJhYmlsaXR5IHRvIHBsYXkgdHdvIGNvZGVjcyBpbXBsaWVz
IHRoZSBhYmlsaXR5IHRvIHBsYXkgb25lIik7CisgfQorfSk7CisgIDwvc2NyaXB0PgorIDwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlw
ZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfMi1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3
b19pbXBsaWVzX29uZV8yLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVf
Mi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTAgQEAKK3ZpZGVvLmNhblBs
YXlUeXBlKCkgLSBjb2RlY3MgcGFyYW1ldGVyIGxvZ2ljCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBs
aWVzX29uZV8yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVv
L2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV8yLmh0bWwJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5
cGVfdHdvX2ltcGxpZXNfb25lXzIuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNCBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLmNhblBsYXlU
eXBlKCkgLSBjb2RlY3MgcGFyYW1ldGVyIGxvZ2ljPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4u
Ly4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEg
aHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21pbWUtdHlw
ZXMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4K
KyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7Cisg
dmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOworIGlmICh2LmNhblBsYXlUeXBl
KCd2aWRlby93ZWJtOyBjb2RlY3M9InZwOCwgdm9yYmlzIicpID09ICJwcm9iYWJseSIpIHsKKyAg
YXNzZXJ0X2VxdWFscygKKyAgIHYuY2FuUGxheVR5cGUoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnA4
LCB2b3JiaXMiJyksCisgICB2LmNhblBsYXlUeXBlKCd2aWRlby93ZWJtOyBjb2RlY3M9InZvcmJp
cyInKSwKKyAgICJhYmlsaXR5IHRvIHBsYXkgdHdvIGNvZGVjcyBpbXBsaWVzIHRoZSBhYmlsaXR5
IHRvIHBsYXkgb25lIik7CisgfQorfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4K
SW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlw
ZV90d29faW1wbGllc19vbmVfMy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29u
ZV8zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfMy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLmNhblBsYXlUeXBlKCkgLSBj
b2RlY3MgcGFyYW1ldGVyIGxvZ2ljCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTICJwcm9iYWJseSIgaXMgInByb2JhYmx5IgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVy
ZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9j
YW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfMy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19v
bmVfMy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Nh
blBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV8zLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjQgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0
aXRsZT52aWRlby5jYW5QbGF5VHlwZSgpIC0gY29kZWNzIHBhcmFtZXRlciBsb2dpYzwvdGl0bGU+
CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+
CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3Zl
cnZpZXcuaHRtbCNtaW1lLXR5cGVzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBp
ZD0idiI+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0
ZXN0KGZ1bmN0aW9uKCkgeworIHZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsK
KyBpZiAodi5jYW5QbGF5VHlwZSgndmlkZW8vb2dnOyBjb2RlY3M9InRoZW9yYSwgdm9yYmlzIicp
ID09ICJwcm9iYWJseSIpIHsKKyAgYXNzZXJ0X2VxdWFscygKKyAgIHYuY2FuUGxheVR5cGUoJ3Zp
ZGVvL29nZzsgY29kZWNzPSJ0aGVvcmEsIHZvcmJpcyInKSwKKyAgIHYuY2FuUGxheVR5cGUoJ3Zp
ZGVvL29nZzsgY29kZWNzPSJ0aGVvcmEiJyksCisgICAiYWJpbGl0eSB0byBwbGF5IHR3byBjb2Rl
Y3MgaW1wbGllcyB0aGUgYWJpbGl0eSB0byBwbGF5IG9uZSIpOworIH0KK30pOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
Y2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzQtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5Q
bGF5VHlwZV90d29faW1wbGllc19vbmVfNC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2lt
cGxpZXNfb25lXzQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2
aWRlby5jYW5QbGF5VHlwZSgpIC0gY29kZWNzIHBhcmFtZXRlciBsb2dpYworCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKKworUEFTUyAicHJvYmFibHkiIGlzICJwcm9iYWJseSIKKworVEVT
VCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzQuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2Fu
UGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19v
bmVfNC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8IWRvY3R5cGUgaHRtbD4K
KzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBw
YXJhbWV0ZXIgbG9naWM8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5q
cyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2
LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ2Iik7CisgaWYgKHYuY2FuUGxheVR5cGUoJ3ZpZGVvL29nZzsgY29k
ZWNzPSJ0aGVvcmEsIHZvcmJpcyInKSA9PSAicHJvYmFibHkiKSB7CisgIGFzc2VydF9lcXVhbHMo
CisgICB2LmNhblBsYXlUeXBlKCd2aWRlby9vZ2c7IGNvZGVjcz0idGhlb3JhLCB2b3JiaXMiJyks
CisgICB2LmNhblBsYXlUeXBlKCd2aWRlby9vZ2c7IGNvZGVjcz0idm9yYmlzIicpLAorICAgImFi
aWxpdHkgdG8gcGxheSB0d28gY29kZWNzIGltcGxpZXMgdGhlIGFiaWxpdHkgdG8gcGxheSBvbmUi
KTsKKyB9Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVz
X29uZV81LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzUtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlU
eXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV81LWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwxMCBAQAordmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBwYXJhbWV0
ZXIgbG9naWMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworVEVTVCBDT01QTEVU
RQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
Y2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVf
dHdvX2ltcGxpZXNfb25lXzUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGllc19vbmVfNS5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
IDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVjcyBwYXJhbWV0ZXIg
bG9naWM8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3Jp
cHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9o
dG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZlcmVuY2U8L2E+PC9w
PgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2Pgor
ICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ2Iik7CisgaWYgKHYuY2FuUGxheVR5cGUoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMx
LjQyRTAxRSwgbXA0YS40MC4yIicpID09ICJwcm9iYWJseSIpIHsKKyAgYXNzZXJ0X2VxdWFscygK
KyAgIHYuY2FuUGxheVR5cGUoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjQyRTAxRSwgbXA0YS40
MC4yIicpLAorICAgdi5jYW5QbGF5VHlwZSgndmlkZW8vb2dnOyBjb2RlY3M9ImF2YzEuNDJFMDFF
IicpLAorICAgImFiaWxpdHkgdG8gcGxheSB0d28gY29kZWNzIGltcGxpZXMgdGhlIGFiaWxpdHkg
dG8gcGxheSBvbmUiKTsKKyB9Cit9KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJ
bmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBl
X3R3b19pbXBsaWVzX29uZV82LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25l
XzYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL2NhblBsYXlUeXBlL2NhblBsYXlUeXBlX3R3b19pbXBsaWVzX29uZV82LWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAordmlkZW8uY2FuUGxheVR5cGUoKSAtIGNv
ZGVjcyBwYXJhbWV0ZXIgbG9naWMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKwor
VEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvdmlkZW8vY2FuUGxheVR5cGUvY2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzYuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY2FuUGxheVR5cGUv
Y2FuUGxheVR5cGVfdHdvX2ltcGxpZXNfb25lXzYuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9jYW5QbGF5VHlwZS9jYW5QbGF5VHlwZV90d29faW1wbGll
c19vbmVfNi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY2FuUGxheVR5cGUoKSAtIGNvZGVj
cyBwYXJhbWV0ZXIgbG9naWM8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBl
ci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWltZS10eXBlcyI+c3BlYyByZWZl
cmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyB2YXIgdiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7CisgaWYgKHYuY2FuUGxheVR5cGUoJ3ZpZGVvL21wNDsg
Y29kZWNzPSJhdmMxLjQyRTAxRSwgbXA0YS40MC4yIicpID09ICJwcm9iYWJseSIpIHsKKyAgYXNz
ZXJ0X2VxdWFscygKKyAgIHYuY2FuUGxheVR5cGUoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjQy
RTAxRSwgbXA0YS40MC4yIicpLAorICAgdi5jYW5QbGF5VHlwZSgndmlkZW8vb2dnOyBjb2RlY3M9
Im1wNGEuNDAuMiInKSwKKyAgICJhYmlsaXR5IHRvIHBsYXkgdHdvIGNvZGVjcyBpbXBsaWVzIHRo
ZSBhYmlsaXR5IHRvIHBsYXkgb25lIik7CisgfQorfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4K
KzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jdXJyZW50U3JjL2N1
cnJlbnRTcmNfZW1wdHlfaWZfbm9fc3JjLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25v
X3NyYy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3NyYy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLmN1cnJlbnRTcmMgLSBlbXB0eSBp
ZiBubyBzb3VyY2UKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIiIgaXMg
IiIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3NyYy5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jdXJyZW50U3Jj
L2N1cnJlbnRTcmNfZW1wdHlfaWZfbm9fc3JjLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX2VtcHR5X2lmX25vX3Ny
Yy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxo
dG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY3VycmVudFNyYyAtIGVtcHR5IGlmIG5vIHNv
dXJjZTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3Njcmlw
dD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0
bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtY3VycmVudHNyYyI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAor
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpLmN1cnJlbnRTcmMsCisgICIiLAorICAidmlk
ZW9FbGVtZW50LmN1cnJlbnRTcmMgc2hvdWxkIGJlIGVtcHR5IGlmIHRoZXJlIGlzIG5vIHNvdXJj
ZSIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJf
YWRkaW5nX3NvdXJjZV9jaGlsZC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9h
ZGRpbmdfc291cmNlX2NoaWxkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9jdXJyZW50U3JjL2N1cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJf
YWRkaW5nX3NvdXJjZV9jaGlsZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTIgQEAKK3ZpZGVvRWxlbWVudC5jdXJyZW50U3JjIHNob3VsZCBub3QgYmUgZW1wdHkgYWZ0ZXIg
YWRkaW5nIHNvdXJjZSBlbGVtZW50IChldmVuIHdpdGggYSBib2d1cyB2YWx1ZSkKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCitQQVNTIGZhbHNlIGlz
IGZhbHNlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRl
cl9hZGRpbmdfc291cmNlX2NoaWxkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9hZGRpbmdf
c291cmNlX2NoaWxkLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX2FkZGluZ19zb3VyY2Vf
Y2hpbGQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyOCBAQAorPCFkb2N0eXBlIGh0bWw+
Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLmN1cnJlbnRTcmMgLSBub24tZW1wdHkg
YWZ0ZXIgYWRkaW5nIHNvdXJjZSBlbGVtZW50PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4u
L3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJl
Zj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1j
dXJyZW50c3JjIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+
CisgIDxzY3JpcHQ+Cit2YXIgdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInZpZGVvIik7Citk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHYpOworYXNzZXJ0X3RydWUoCisgdi5jdXJyZW50U3Jj
ID09ICIiLAorICJ2aWRlb0VsZW1lbnQuY3VycmVudFNyYyBzaG91bGQgYmUgZW1wdHkgaWYgdGhl
cmUgaXMgbm8gc291cmNlIik7Cit2YXIgcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNvdXJj
ZSIpOworcy5zcmMgPSAiLiI7Cit2LmFwcGVuZENoaWxkKHMpOwordmFyIHQgPSBhc3luY190ZXN0
KCJ2aWRlb0VsZW1lbnQuY3VycmVudFNyYyBzaG91bGQgbm90IGJlIGVtcHR5IGFmdGVyIGFkZGlu
ZyBzb3VyY2UgZWxlbWVudCAoZXZlbiB3aXRoIGEgYm9ndXMgdmFsdWUpIik7Cit3aW5kb3cuc2V0
VGltZW91dChmdW5jdGlvbigpIHsKKyB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgIGFzc2VydF9mYWxz
ZSgKKyAgIHYuY3VycmVudFNyYyA9PSAiIil9KTsKKyB0LmRvbmUoKTsKK30sIDApOworICA8L3Nj
cmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3JjLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY3VycmVu
dFNyYy9jdXJyZW50U3JjX25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3JjLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9jdXJyZW50U3JjL2N1
cnJlbnRTcmNfbm9uZW1wdHlfYWZ0ZXJfc2V0dGluZ19zcmMtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDEyIEBACit2aWRlb0VsZW1lbnQuY3VycmVudFNyYyBzaG91bGQgbm90
IGJlIGVtcHR5IGFmdGVyIHNldHRpbmcgc3JjIGF0dHJpYnV0ZSAoZXZlbiB0byBhIGJvZ3VzIHZh
bHVlKQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUK
K1BBU1MgZmFsc2UgaXMgZmFsc2UKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKwor
CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3Jj
X25vbmVtcHR5X2FmdGVyX3NldHRpbmdfc3JjLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9z
ZXR0aW5nX3NyYy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19ub25lbXB0eV9hZnRlcl9zZXR0aW5nX3NyYy5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
IDxoZWFkPgorICA8dGl0bGU+dmlkZW8uY3VycmVudFNyYyAtIG5vbi1lbXB0eSBhZnRlciBzZXR0
aW5nIHNyYyBhdHRyaWJ1dGU8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBl
ci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLWN1cnJlbnRzcmMi
PnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlw
dD4KK3ZhciB2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidmlkZW8iKTsKK2Fzc2VydF90cnVl
KAorIHYuY3VycmVudFNyYyA9PSAiIiwKKyAidmlkZW9FbGVtZW50LmN1cnJlbnRTcmMgc2hvdWxk
IGJlIGVtcHR5IGlmIHRoZXJlIGlzIG5vIHNvdXJjZSIpOwordi5zcmMgPSAiLiI7Cit2YXIgdCA9
IGFzeW5jX3Rlc3QoInZpZGVvRWxlbWVudC5jdXJyZW50U3JjIHNob3VsZCBub3QgYmUgZW1wdHkg
YWZ0ZXIgc2V0dGluZyBzcmMgYXR0cmlidXRlIChldmVuIHRvIGEgYm9ndXMgdmFsdWUpIik7Cit3
aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgIGFz
c2VydF9mYWxzZSgKKyAgIHYuY3VycmVudFNyYyA9PSAiIil9KTsKKyB0LmRvbmUoKTsKK30sIDAp
OworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX3Byb3BlcnR5X2V4aXN0cy1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRT
cmMvY3VycmVudFNyY19wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3VycmVudFNyY19wcm9w
ZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2
aWRlby5jdXJyZW50U3JjIC0gZXhpc3RlbmNlIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJl
bmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMvY3Vy
cmVudFNyY19wcm9wZXJ0eV9leGlzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvdmlkZW8vY3VycmVudFNyYy9jdXJyZW50U3JjX3Byb3BlcnR5X2V4aXN0cy5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2N1cnJlbnRTcmMv
Y3VycmVudFNyY19wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwy
MCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLmN1
cnJlbnRTcmMgLSBleGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93
M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9
Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtY3Vy
cmVudHNyYyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3Zp
ZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigp
IHsKKyBhc3NlcnRfdHJ1ZSgKKyAgImN1cnJlbnRTcmMiIGluIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ2IiksCisgICJ2aWRlb0VsZW1lbnQuY3VycmVudFNyYyBwcm9wZXJ0eSBleGlzdHMiKTsK
K30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvdmlkZW8vZXJyb3IvZXJyb3JfbnVsbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX251bGwtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vy
cm9yX251bGwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2aWRl
by5lcnJvciAtIG51bGwgaWYgbm8gc291cmNlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTICJudWxsIiBpcyAibnVsbCIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVu
Y2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXJyb3IvZXJyb3JfbnVs
bC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9lcnJvci9l
cnJvcl9udWxsLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vZXJyb3IvZXJyb3JfbnVsbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8
IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uZXJyb3IgLSBu
dWxsIGlmIG5vIHNvdXJjZTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVy
LmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9k
ZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtZXJyb3IiPnNwZWMg
cmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4KKyAgPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0X2Vx
dWFscygKKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKS5lcnJvciwKKyAgbnVsbCwKKyAg
InZpZGVvRWxlbWVudC5lcnJvciBwcm9wZXJ0eSBpcyBudWxsIGlmIG5vIHNvdXJjZSIpOworfSk7
CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9lcnJvci9lcnJvcl9vbmVycm9yX2NhbGxlZF9vbl9ib2d1c19zb3VyY2UtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9lcnJv
ci9lcnJvcl9vbmVycm9yX2NhbGxlZF9vbl9ib2d1c19zb3VyY2UtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX29uZXJy
b3JfY2FsbGVkX29uX2JvZ3VzX3NvdXJjZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTEgQEAKK3ZpZGVvRWxlbWVudC5vbmVycm9yIGlzIHRyaWdnZXJlZCBvbiBib2d1cyBz
b3VyY2UKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIjQiIGlzICI0Igor
CitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9lcnJvci9lcnJvcl9vbmVycm9yX2NhbGxlZF9vbl9ib2d1c19zb3VyY2Uu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXJyb3IvZXJy
b3Jfb25lcnJvcl9jYWxsZWRfb25fYm9ndXNfc291cmNlLmh0bWwJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXJyb3IvZXJyb3Jfb25lcnJvcl9jYWxsZWRfb25f
Ym9ndXNfc291cmNlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAKKzwhZG9jdHlw
ZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlby5lcnJvciAtIE1FRElBX0VS
Ul9TUkNfTk9UX1NVUFBPUlRFRCBjb25zdGFudCBpcyA0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9
Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+
PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1t
ZWRpYS1lcnJvciI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiIHNyYz0i
LiIgb25lcnJvcj0idGVzdF9lcnJvcigpIj4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48
L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgidmlkZW9FbGVtZW50Lm9uZXJy
b3IgaXMgdHJpZ2dlcmVkIG9uIGJvZ3VzIHNvdXJjZSIpOworZnVuY3Rpb24gdGVzdF9lcnJvcigp
IHsKKyB2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7CisgdC5zdGVwKGZ1bmN0
aW9uKCkgeworICBhc3NlcnRfZXF1YWxzKAorICAgdi5lcnJvci5jb2RlLAorICAgNCwKKyAgICJ2
aWRlb0VsZW1lbnQuZXJyb3IgTUVESUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVEIGNvbnN0YW50IGlz
IDQiKTsKKyB9KTsKKyB0LmRvbmUoKTsKK30KKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX3Byb3BlcnR5
X2V4aXN0cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXJyb3IvZXJyb3JfcHJvcGVydHlf
ZXhpc3RzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8u
ZXJyb3IgLSBleGlzdGVuY2UgdGVzdAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKwor
UEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCklu
ZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXJyb3IvZXJyb3JfcHJvcGVydHlfZXhp
c3RzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2Vycm9y
L2Vycm9yX3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL2Vycm9yL2Vycm9yX3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDIwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgor
ICA8dGl0bGU+dmlkZW8uZXJyb3IgLSBleGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQg
c3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+Cisg
IDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNk
b20tbWVkaWEtZXJyb3IiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2Ij4K
KyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVu
Y3Rpb24oKSB7CisgYXNzZXJ0X3RydWUoCisgICJlcnJvciIgaW4gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInYiKSwKKyAgInZpZGVvRWxlbWVudC5lcnJvciBwcm9wZXJ0eSBleGlzdHMiKTsKK30p
OworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfY2FucGxheS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZl
bnRzL2V2ZW50X2NhbnBsYXktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEx
IEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdn
ZXIgY2FucGxheSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0
cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXkuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBs
YXkuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVu
dHMvZXZlbnRfY2FucGxheS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRv
Y3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gY2Fu
cGxheTwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3Njcmlw
dD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0
bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9w
PgorICA8dmlkZW8gaWQ9InYiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2
IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5n
IHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgY2FucGxheSBl
dmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVuZXIoImNhbnBsYXkiLCBmdW5jdGlvbigpIHsKKyAgdC5z
dGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRvbmUo
KTsKKyAgdi5wYXVzZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEu
dzMub3JnLzIwMTAvMDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0
aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9jYW5wbGF5X21hbnVhbC1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9l
dmVudF9jYW5wbGF5X21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXlfbWFudWFsLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRl
IG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5IGV2ZW50CisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9ldmVudHMvZXZlbnRfY2FucGxheV9tYW51YWwuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXlfbWFudWFsLmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50
X2NhbnBsYXlfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBjYW5w
bGF5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0
PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRt
bDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+
CisgIDx2aWRlbyBpZD0idiIgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+
PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJp
YnV0ZSBvbiBub24tYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgY2FucGxheSBldmVudCIs
IHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7
Cit2LmFkZEV2ZW50TGlzdGVuZXIoImNhbnBsYXkiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1
bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRvbmUoKTsKK30p
Owordi5zcmMgPSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVv
L21vdmllXzMwMCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2Ny
aXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2gt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVv
L2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBz
aG91bGQgdHJpZ2dlciBjYW5wbGF5dGhyb3VnaCBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZl
cmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50
X2NhbnBsYXl0aHJvdWdoLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC5o
dG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1s
PgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gY2FucGxheXRocm91Z2g8L3RpdGxl
PgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFk
PgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092
ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVv
IGlkPSJ2IiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48
L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGluZyBzcmMgYXR0cmli
dXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGNhbnBsYXl0aHJvdWdoIGV2ZW50
Iiwge3RpbWVvdXQ6NjAwMDB9KTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYi
KTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheXRocm91Z2giLCBmdW5jdGlvbigpIHsKKyAg
dC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRv
bmUoKTsKKyAgdi5wYXVzZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVk
aWEudzMub3JnLzIwMTAvMDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsg
TWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaF9tYW51
YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2hfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfY2FucGxh
eXRocm91Z2hfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBA
QAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJp
Z2dlciBjYW5wbGF5dGhyb3VnaCBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKwor
CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXl0
aHJvdWdoX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2hfbWFudWFsLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2NhbnBsYXl0aHJv
dWdoX21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8IWRvY3R5cGUg
aHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gY2FucGxheXRo
cm91Z2g8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3Jp
cHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9o
dG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwv
cD4KKyAgPHZpZGVvIGlkPSJ2IiBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9n
Ij48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGluZyBzcmMgYXR0
cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5dGhyb3Vn
aCBldmVudCIsIHt0aW1lb3V0OjYwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVuZXIoImNhbnBsYXl0aHJvdWdoIiwgZnVuY3Rpb24o
KSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsK
KyAgdC5kb25lKCk7Cit9KTsKK3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5v
cmcvMjAxMC8wNS92aWRlby9tb3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJh
bmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9h
ZGVkZGF0YS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlk
ZW8gc2hvdWxkIHRyaWdnZXIgbG9hZGVkZGF0YSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZl
cmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50
X2xvYWRlZGRhdGEuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGEuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZGVkZGF0YS5odG1sCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgor
ICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gbG9hZGVkZGF0YTwvdGl0bGU+CisgIDxzY3JpcHQgc3Jj
PSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxw
PjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRp
YWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiIGF1dG9wbGF5
IGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0
PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkg
dmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZGVkZGF0YSBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7
Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVu
ZXIoImxvYWRlZGRhdGEiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAg
YXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgdi5wYXVzZSgpOworfSk7
Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUvdmlkZW8v
bW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKKyAgPC9zY3Jp
cHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVv
L2V2ZW50cy9ldmVudF9sb2FkZWRkYXRhX21hbnVhbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2FkZWRkYXRhX21h
bnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGFfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRv
cGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRkYXRhIGV2ZW50CisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitz
cGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVu
dHMvZXZlbnRfbG9hZGVkZGF0YV9tYW51YWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRlZGRhdGFfbWFudWFsLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xv
YWRlZGRhdGFfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBsb2Fk
ZWRkYXRhPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2Ny
aXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcv
aHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48
L3A+CisgIDx2aWRlbyBpZD0idiIgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9Imxv
ZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0
dHJpYnV0ZSBvbiBub24tYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZGVkZGF0YSBl
dmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVuZXIoImxvYWRlZGRhdGEiLCBmdW5jdGlvbigpIHsKKyAg
dC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRv
bmUoKTsKK30pOwordi5zcmMgPSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEw
LzA1L3ZpZGVvL21vdmllXzMwMCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7
CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGEtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZGVk
bWV0YWRhdGEtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxh
eSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2FkZWRtZXRhZGF0YSBldmVudAorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
c3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZl
bnRzL2V2ZW50X2xvYWRlZG1ldGFkYXRhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YS5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2FkZWRt
ZXRhZGF0YS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gbG9hZGVkbWV0YWRh
dGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+
CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1s
NS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4K
KyAgPHZpZGVvIGlkPSJ2IiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGluZyBz
cmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGxvYWRlZG1ldGFk
YXRhIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInYiKTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkbWV0YWRhdGEiLCBmdW5jdGlv
bigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodHJ1ZSk7CisgIH0p
OworICB0LmRvbmUoKTsKKyAgdi5wYXVzZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJo
dHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcg
RGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJ
bmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2FkZWRtZXRh
ZGF0YV9tYW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGFfbWFudWFsLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfbG9hZGVkbWV0YWRhdGFfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBz
aG91bGQgdHJpZ2dlciBsb2FkZWRtZXRhZGF0YSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZl
cmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50
X2xvYWRlZG1ldGFkYXRhX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZGVkbWV0YWRhdGFfbWFudWFsLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xv
YWRlZG1ldGFkYXRhX21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8
IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0g
bG9hZGVkbWV0YWRhdGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5q
cyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2
LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJl
bmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2IiBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRp
diBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGlu
ZyBzcmMgYXR0cmlidXRlIG9uIG5vbi1hdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2Fk
ZWRtZXRhZGF0YSBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVuZXIoImxvYWRlZG1ldGFkYXRhIiwg
ZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUp
OworICB9KTsKKyAgdC5kb25lKCk7Cit9KTsKK3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9t
ZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9tb3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkg
KyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydC1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9l
dmVudF9sb2Fkc3RhcnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9sb2Fkc3RhcnQtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3Bs
YXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZHN0YXJ0IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVj
IHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMv
ZXZlbnRfbG9hZHN0YXJ0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL2V2ZW50cy9ldmVudF9sb2Fkc3RhcnQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0Lmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+
CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBsb2Fkc3RhcnQ8L3RpdGxlPgorICA8c2NyaXB0IHNy
Yz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8
cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVk
aWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2IiBhdXRvcGxh
eSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlw
dD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5
IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGxvYWRzdGFydCBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7
Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVu
ZXIoImxvYWRzdGFydCIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBh
c3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNlKCk7Cit9KTsK
K3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9t
b3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9tYW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0X21hbnVh
bC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9tYW51YWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gbm9uLWF1dG9wbGF5
IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGxvYWRzdGFydCBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyBy
ZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2
ZW50X2xvYWRzdGFydF9tYW51YWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X2xvYWRzdGFydF9tYW51YWwuaHRtbAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfbG9hZHN0YXJ0
X21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gbG9hZHN0YXJ0PC90
aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwv
aGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3Bl
Yy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2
aWRlbyBpZD0idiIgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+
CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJpYnV0ZSBv
biBub24tYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgbG9hZHN0YXJ0IGV2ZW50Iiwge3Rp
bWVvdXQ6MzAwMDB9KTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsKK3Yu
YWRkRXZlbnRMaXN0ZW5lcigibG9hZHN0YXJ0IiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5j
dGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsKKyAgdC5kb25lKCk7Cit9KTsK
K3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9t
b3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfY2FucGxheXRocm91Z2gtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfb3Jk
ZXJfY2FucGxheV9jYW5wbGF5dGhyb3VnaC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfY2Fu
cGxheXRocm91Z2gtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitz
ZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgY2Fu
cGxheSB0aGVuIGNhbnBsYXl0aHJvdWdoIGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5j
ZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfb3Jk
ZXJfY2FucGxheV9jYW5wbGF5dGhyb3VnaC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfb3JkZXJfY2FucGxheV9jYW5wbGF5dGhyb3Vn
aC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50
cy9ldmVudF9vcmRlcl9jYW5wbGF5X2NhbnBsYXl0aHJvdWdoLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMjkgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRs
ZT52aWRlbyBldmVudHMgLSBjYW5wbGF5LCB0aGVuIGNhbnBsYXl0aHJvdWdoPC90aXRsZT4KKyAg
PHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8
Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmll
dy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0i
diIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+
CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJpYnV0ZSBv
biBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBjYW5wbGF5IHRoZW4gY2FucGxheXRocm91
Z2ggZXZlbnQiLCB7dGltZW91dDo2MDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidiIpOwordmFyIGZvdW5kX2NhbnBsYXkgPSBmYWxzZTsKK3YuYWRkRXZlbnRMaXN0ZW5l
cigiY2FucGxheSIsIGZ1bmN0aW9uKCkgeworICBmb3VuZF9jYW5wbGF5ID0gdHJ1ZTsKK30pOwor
di5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5dGhyb3VnaCIsIGZ1bmN0aW9uKCkgeworICB0LnN0
ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZShmb3VuZF9jYW5wbGF5KTsKKyAgfSk7Cisg
IHQuZG9uZSgpOworICB2LnBhdXNlKCk7Cit9KTsKK3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6
Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9tb3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRl
KCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4
OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlf
cGxheWluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL2V2ZW50cy9ldmVudF9vcmRlcl9jYW5wbGF5X3BsYXlpbmctZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9v
cmRlcl9jYW5wbGF5X3BsYXlpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDExIEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRy
aWdnZXIgY2FucGxheSB0aGVuIHBsYXlpbmcgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJl
bmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9v
cmRlcl9jYW5wbGF5X3BsYXlpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfcGxheWluZy5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9vcmRl
cl9jYW5wbGF5X3BsYXlpbmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyOSBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIGNh
bnBsYXksIHRoZW4gcGxheWluZzwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFw
cGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6
Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyBy
ZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8
L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3lu
Y190ZXN0KCJzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRy
aWdnZXIgY2FucGxheSB0aGVuIHBsYXlpbmcgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFy
IHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOwordmFyIGZvdW5kX2NhbnBsYXkgPSBm
YWxzZTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheSIsIGZ1bmN0aW9uKCkgeworICBmb3Vu
ZF9jYW5wbGF5ID0gdHJ1ZTsKK30pOwordi5hZGRFdmVudExpc3RlbmVyKCJwbGF5aW5nIiwgZnVu
Y3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKGZvdW5kX2Nh
bnBsYXkpOworICB9KTsKKyAgdC5kb25lKCk7CisgIHYucGF1c2UoKTsKK30pOwordi5zcmMgPSBn
ZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmllXzMwMCIp
ICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfb3JkZXJfbG9hZGVkbWV0YWRhdGFfbG9hZGVkZGF0YS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9vcmRlcl9sb2Fk
ZWRtZXRhZGF0YV9sb2FkZWRkYXRhLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfb3JkZXJfbG9hZGVkbWV0YWRhdGFf
bG9hZGVkZGF0YS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3Nl
dHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBsb2Fk
ZWRtZXRhZGF0YSB0aGVuIGxvYWRlZGRhdGEgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJl
bmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9v
cmRlcl9sb2FkZWRtZXRhZGF0YV9sb2FkZWRkYXRhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9vcmRlcl9sb2FkZWRtZXRhZGF0YV9s
b2FkZWRkYXRhLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRlZG1ldGFkYXRhX2xvYWRlZGRhdGEuaHRtbAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwyOSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVh
ZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIGxvYWRlZG1ldGFkYXRhLCB0aGVuIGxvYWRlZGRh
dGE8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+
CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1s
NS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4K
KyAgPHZpZGVvIGlkPSJ2IiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgic2V0dGluZyBz
cmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIGxvYWRlZG1ldGFk
YXRhIHRoZW4gbG9hZGVkZGF0YSBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2YXIgZm91bmRfbG9hZGVkbWV0YWRhdGEgPSBm
YWxzZTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkbWV0YWRhdGEiLCBmdW5jdGlvbigpIHsK
KyAgZm91bmRfbG9hZGVkbWV0YWRhdGEgPSB0cnVlOworfSk7Cit2LmFkZEV2ZW50TGlzdGVuZXIo
ImxvYWRlZGRhdGEiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNz
ZXJ0X3RydWUoZm91bmRfbG9hZGVkbWV0YWRhdGEpOworICB9KTsKKyAgdC5kb25lKCk7CisgIHYu
cGF1c2UoKTsKK30pOwordi5zcmMgPSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8y
MDEwLzA1L3ZpZGVvL21vdmllXzMwMCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9t
KCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfb3JkZXJfbG9hZHN0YXJ0X3Byb2dyZXNzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRz
L2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVyX2xvYWRz
dGFydF9wcm9ncmVzcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAK
K3NldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBs
b2Fkc3RhcnQgdGhlbiBwcm9ncmVzcyBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UK
KworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29yZGVy
X2xvYWRzdGFydF9wcm9ncmVzcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9ldmVudHMvZXZlbnRfb3JkZXJfbG9hZHN0YXJ0X3Byb2dyZXNzLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X29y
ZGVyX2xvYWRzdGFydF9wcm9ncmVzcy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI5IEBA
Cis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRz
IC0gbG9hZHN0YXJ0LCB0aGVuIHByb2dyZXNzPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4u
L3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJl
Zj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRz
Ij5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiIgYXV0b3BsYXkgY29udHJv
bHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIg
dCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBz
aG91bGQgdHJpZ2dlciBsb2Fkc3RhcnQgdGhlbiBwcm9ncmVzcyBldmVudCIsIHt0aW1lb3V0OjMw
MDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2YXIgZm91bmRf
bG9hZHN0YXJ0ID0gZmFsc2U7Cit2LmFkZEV2ZW50TGlzdGVuZXIoImxvYWRzdGFydCIsIGZ1bmN0
aW9uKCkgeworICBmb3VuZF9sb2Fkc3RhcnQgPSB0cnVlOworfSk7Cit2LmFkZEV2ZW50TGlzdGVu
ZXIoInByb2dyZXNzIiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFz
c2VydF90cnVlKGZvdW5kX2xvYWRzdGFydCk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgdi5wYXVz
ZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAv
MDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsK
KyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wYXVzZV9tYW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGF1c2VfbWFu
dWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9ldmVudHMvZXZlbnRfcGF1c2VfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwxMSBAQAorY2FsbGluZyBwbGF5KCkgdGhlbiBwYXVzZSgpIG9uIG5vbi1hdXRv
cGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBwYXVzZSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyBy
ZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2
ZW50X3BhdXNlX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1cz
Qy92aWRlby9ldmVudHMvZXZlbnRfcGF1c2VfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BhdXNlX21hbnVhbC5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
IDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gcGF1c2U8L3RpdGxlPgorICA8c2NyaXB0
IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5Pgor
ICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwj
bWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2IiBjb250
cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Zh
ciB0ID0gYXN5bmNfdGVzdCgiY2FsbGluZyBwbGF5KCkgdGhlbiBwYXVzZSgpIG9uIG5vbi1hdXRv
cGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBwYXVzZSBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7
Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVu
ZXIoInBhdXNlIiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2Vy
dF90cnVlKHRydWUpOworICB9KTsKKyAgdC5kb25lKCk7Cit9KTsKK3Yuc3JjID0gZ2V0VmlkZW9V
UkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9tb3ZpZV8zMDAiKSArICI/IiAr
IG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOwordi5wbGF5KCk7Cit2LnBhdXNlKCk7CisgIDwv
c2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9ldmVudHMvZXZlbnRfcGxheS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5LWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGxh
eS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3Jj
IGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBwbGF5IGV2ZW50CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy92aWRlby9ldmVudHMvZXZlbnRfcGxheS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGxheS5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5Lmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+
CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBwbGF5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4u
Ly4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEg
aHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZl
bnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiIgYXV0b3BsYXkgY29u
dHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2
YXIgdCA9IGFzeW5jX3Rlc3QoInNldHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRl
byBzaG91bGQgdHJpZ2dlciBwbGF5IGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciB2ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigicGxheSIs
IGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVl
KTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNlKCk7Cit9KTsKK3Yuc3JjID0gZ2V0Vmlk
ZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9tb3ZpZV8zMDAiKSArICI/
IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8
L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Bs
YXlfbWFudWFsLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGxheV9tYW51
YWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitjYWxsaW5nIHBs
YXkoKSBvbiB2aWRlbyBzaG91bGQgdHJpZ2dlciBwbGF5IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVj
IHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMv
ZXZlbnRfcGxheV9tYW51YWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLmh0bWwJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BsYXlfbWFudWFsLmh0bWwJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cisg
PGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBwbGF5PC90aXRsZT4KKyAgPHNjcmlwdCBz
cmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAg
PHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21l
ZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiIgY29udHJv
bHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIg
dCA9IGFzeW5jX3Rlc3QoImNhbGxpbmcgcGxheSgpIG9uIHZpZGVvIHNob3VsZCB0cmlnZ2VyIHBs
YXkgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidiIpOwordi5hZGRFdmVudExpc3RlbmVyKCJwbGF5IiwgZnVuY3Rpb24oKSB7CisgIHQu
c3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsKKyAgdC5kb25l
KCk7CisgIHYucGF1c2UoKTsKK30pOwordi5zcmMgPSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlh
LnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmllXzMwMCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1h
dGgucmFuZG9tKCk7Cit2LnBsYXkoKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJ
bmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5aW5nLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZl
bnRzL2V2ZW50X3BsYXlpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5aW5nLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9w
bGF5IHZpZGVvIHNob3VsZCB0cmlnZ2VyIHBsYXlpbmcgZXZlbnQKKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMg
cmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9l
dmVudF9wbGF5aW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL2V2ZW50cy9ldmVudF9wbGF5aW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3BsYXlpbmcuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwyNSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRp
dGxlPnZpZGVvIGV2ZW50cyAtIHBsYXlpbmc8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4v
dzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVm
PSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMi
PnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2IiBhdXRvcGxheSBjb250cm9s
cz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0
ID0gYXN5bmNfdGVzdCgic2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGF1dG9wbGF5IHZpZGVvIHNo
b3VsZCB0cmlnZ2VyIHBsYXlpbmcgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIHYgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOwordi5hZGRFdmVudExpc3RlbmVyKCJwbGF5aW5n
IiwgZnVuY3Rpb24oKSB7CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRy
dWUpOworICB9KTsKKyAgdC5kb25lKCk7CisgIHYucGF1c2UoKTsKK30pOwordi5zcmMgPSBnZXRW
aWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmllXzMwMCIpICsg
Ij8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4K
KzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRf
cGxheWluZ19tYW51YWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGxheWluZ19tYW51YWwtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9w
bGF5aW5nX21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAK
K2NhbGxpbmcgcGxheSgpIG9uIHZpZGVvIHNob3VsZCB0cmlnZ2VyIHBsYXlpbmcgZXZlbnQKKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL2V2ZW50cy9ldmVudF9wbGF5aW5nX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcGxheWluZ19tYW51YWwuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfcGxheWluZ19tYW51YWwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIHBs
YXlpbmc8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3Jp
cHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9o
dG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwv
cD4KKyAgPHZpZGVvIGlkPSJ2IiBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9n
Ij48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgiY2FsbGluZyBwbGF5KCkg
b24gdmlkZW8gc2hvdWxkIHRyaWdnZXIgcGxheWluZyBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7
Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVu
ZXIoInBsYXlpbmciLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNz
ZXJ0X3RydWUodHJ1ZSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgdi5wYXVzZSgpOworfSk7Cit2
LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAvMDUvdmlkZW8vbW92
aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsKK3YucGxheSgpOwor
ICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVu
dHMvZXZlbnRfcHJvZ3Jlc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEx
IEBACitzZXR0aW5nIHNyYyBhdHRyaWJ1dGUgb24gYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdn
ZXIgcHJvZ3Jlc3MgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mg
dHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDog
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wcm9ncmVzcy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcHJv
Z3Jlc3MuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9l
dmVudHMvZXZlbnRfcHJvZ3Jlc3MuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNSBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAt
IHByb2dyZXNzPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwv
c2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5v
cmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwv
YT48L3A+CisgIDx2aWRlbyBpZD0idiIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+Cisg
IDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNl
dHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJpZ2dlciBwcm9n
cmVzcyBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVuZXIoInByb2dyZXNzIiwgZnVuY3Rpb24oKSB7
CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHRydWUpOworICB9KTsKKyAg
dC5kb25lKCk7CisgIHYucGF1c2UoKTsKK30pOwordi5zcmMgPSBnZXRWaWRlb1VSSSgiaHR0cDov
L21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmllXzMwMCIpICsgIj8iICsgbmV3IERhdGUo
KSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfcHJvZ3Jlc3NfbWFudWFs
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X3Byb2dyZXNzX21hbnVhbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNzX21hbnVh
bC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3NldHRpbmcgc3Jj
IGF0dHJpYnV0ZSBvbiBub24tYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgcHJvZ3Jlc3Mg
ZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF9wcm9ncmVzc19tYW51YWwuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Byb2dyZXNz
X21hbnVhbC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVv
L2V2ZW50cy9ldmVudF9wcm9ncmVzc19tYW51YWwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwyNCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVv
IGV2ZW50cyAtIHByb2dyZXNzPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBw
ZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDov
L2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJl
ZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiIgY29udHJvbHM+CisgIDwvdmlkZW8+Cisg
IDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInNl
dHRpbmcgc3JjIGF0dHJpYnV0ZSBvbiBub24tYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIg
cHJvZ3Jlc3MgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidiIpOwordi5hZGRFdmVudExpc3RlbmVyKCJwcm9ncmVzcyIsIGZ1bmN0aW9u
KCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7
CisgIHQuZG9uZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMu
b3JnLzIwMTAvMDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5y
YW5kb20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF90aW1ldXBkYXRlLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Rp
bWV1cGRhdGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL3ZpZGVvL2V2ZW50cy9ldmVudF90aW1ldXBkYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwxMSBAQAorc2V0dGluZyBzcmMgYXR0cmlidXRlIG9uIGEgc3VmZmljaWVu
dGx5IGxvbmcgYXV0b3BsYXkgdmlkZW8gc2hvdWxkIHRyaWdnZXIgdGltZXVwZGF0ZSBldmVudAor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGUuaHRtbAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfdGlt
ZXVwZGF0ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gdGltZXVwZGF0ZTwv
dGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8
L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3Nw
ZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8
dmlkZW8gaWQ9InYiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJzZXR0aW5nIHNyYyBh
dHRyaWJ1dGUgb24gYSBzdWZmaWNpZW50bHkgbG9uZyBhdXRvcGxheSB2aWRlbyBzaG91bGQgdHJp
Z2dlciB0aW1ldXBkYXRlIGV2ZW50Iiwge3RpbWVvdXQ6NjAwMDB9KTsKK3ZhciB2ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigidGltZXVwZGF0ZSIs
IGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVl
KTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNlKCk7Cit9KTsKK3Yuc3JjID0gZ2V0Vmlk
ZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9tb3ZpZV8zMDAiKSArICI/
IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8
L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3Rp
bWV1cGRhdGVfbWFudWFsLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvdmlkZW8vZXZlbnRzL2V2ZW50X3RpbWV1cGRhdGVfbWFudWFsLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfdGltZXVwZGF0ZV9tYW51YWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDExIEBACitjYWxsaW5nIHBsYXkoKSBvbiBhIHN1ZmZpY2llbnRseSBsb25nIHZpZGVvIHNob3Vs
ZCB0cmlnZ2VyIHRpbWV1cGRhdGUgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisK
KwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL2V2ZW50cy9ldmVudF90aW1ldXBk
YXRlX21hbnVhbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9ldmVudHMvZXZlbnRfdGltZXVwZGF0ZV9tYW51YWwuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL21lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfdGltZXVwZGF0ZV9tYW51YWwu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRt
bD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIHRpbWV1cGRhdGU8L3RpdGxlPgor
ICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgor
IDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2
aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlk
PSJ2IiBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNj
cmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgiY2FsbGluZyBwbGF5KCkgb24gYSBzdWZmaWNpZW50
bHkgbG9uZyB2aWRlbyBzaG91bGQgdHJpZ2dlciB0aW1ldXBkYXRlIGV2ZW50Iiwge3RpbWVvdXQ6
MzAwMDB9KTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsKK3YuYWRkRXZl
bnRMaXN0ZW5lcigidGltZXVwZGF0ZSIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24o
KSB7CisgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNl
KCk7Cit9KTsKK3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8w
NS92aWRlby9tb3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOwor
di5wbGF5KCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2R1cmluZ19sb2Fk
c3RhcnQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92
aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2R1cmluZ19sb2Fkc3RhcnQtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL25ldHdvcmtT
dGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvRWxlbWVudC5uZXR3b3JrU3RhdGUgc2hvdWxkIGJl
IE5FVFdPUktfTE9BRElORyBkdXJpbmcgbG9hZHN0YXJ0IGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTICIyIiBpcyAiMiIKKworVEVTVCBDT01QTEVURQorc3BlYyBy
ZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0d29ya1N0
YXRlL25ldHdvcmtTdGF0ZV9kdXJpbmdfbG9hZHN0YXJ0Lmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5n
X2xvYWRzdGFydC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFk
PgorICA8dGl0bGU+dmlkZW8ubmV0d29ya1N0YXRlIC0gTkVUV09SS19MT0FESU5HPC90aXRsZT4K
KyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4K
KyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVy
dmlldy5odG1sI2RvbS1tZWRpYS1uZXR3b3Jrc3RhdGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4K
KyAgPHZpZGVvIGlkPSJ2IiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgidmlkZW9FbGVt
ZW50Lm5ldHdvcmtTdGF0ZSBzaG91bGQgYmUgTkVUV09SS19MT0FESU5HIGR1cmluZyBsb2Fkc3Rh
cnQgZXZlbnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidiIpOwordi5hZGRFdmVudExpc3RlbmVyKCJsb2Fkc3RhcnQiLCBmdW5jdGlvbigpIHsK
KyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X2VxdWFscyh2Lm5ldHdvcmtTdGF0ZSwK
KyAgIHYuTkVUV09SS19MT0FESU5HKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNlKCk7
Cit9KTsKK3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92
aWRlby9tb3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8
L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9kdXJpbmdfcHJvZ3Jlc3MtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9uZXR3b3JrU3Rh
dGUvbmV0d29ya1N0YXRlX2R1cmluZ19wcm9ncmVzcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0
ZV9kdXJpbmdfcHJvZ3Jlc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEx
IEBACit2aWRlb0VsZW1lbnQubmV0d29ya1N0YXRlIHNob3VsZCBiZSBORVRXT1JLX0xPQURJTkcg
ZHVyaW5nIHByb2dyZXNzIGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitG
QUlMICIxIiBzaG91bGQgYmUgMi4gV2FzIDEuCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJl
bmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL25ldHdvcmtTdGF0ZS9u
ZXR3b3JrU3RhdGVfZHVyaW5nX3Byb2dyZXNzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfZHVyaW5nX3Byb2dy
ZXNzLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0
d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9kdXJpbmdfcHJvZ3Jlc3MuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwyNiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRp
dGxlPnZpZGVvLm5ldHdvcmtTdGF0ZSAtIE5FVFdPUktfTE9BRElORzwvdGl0bGU+CisgIDxzY3Jp
cHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+
CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRt
bCNkb20tbWVkaWEtbmV0d29ya3N0YXRlIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRl
byBpZD0idiIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+
PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInZpZGVvRWxlbWVudC5uZXR3
b3JrU3RhdGUgc2hvdWxkIGJlIE5FVFdPUktfTE9BRElORyBkdXJpbmcgcHJvZ3Jlc3MgZXZlbnQi
LCB7dGltZW91dDozMDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIp
Owordi5hZGRFdmVudExpc3RlbmVyKCJwcm9ncmVzcyIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAo
ZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfZXF1YWxzKHYubmV0d29ya1N0YXRlLAorICAgdi5ORVRX
T1JLX0xPQURJTkcpOworICB9KTsKKyAgdC5kb25lKCk7CisgIHYucGF1c2UoKTsKK30pOwordi5z
cmMgPSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmll
XzMwMCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0Pgor
IDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9uZXR3
b3JrU3RhdGUvbmV0d29ya1N0YXRlX2luaXRpYWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2lu
aXRpYWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL25ldHdvcmtTdGF0ZS9uZXR3b3JrU3RhdGVfaW5pdGlhbC1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLm5ldHdvcmtTdGF0ZSAtIGRlZmF1bHQg
c3RhdGUKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIjAiIGlzICIwIgor
CitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX2luaXRpYWwuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0d29ya1N0YXRlL25ldHdv
cmtTdGF0ZV9pbml0aWFsLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9pbml0aWFsLmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMjIgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+Cisg
IDx0aXRsZT52aWRlby5uZXR3b3JrU3RhdGUgLSBkZWZhdWx0IHN0YXRlPC90aXRsZT4KKyAgPHNj
cmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9k
eT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5o
dG1sI2RvbS1tZWRpYS1uZXR3b3Jrc3RhdGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZp
ZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlw
dD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgdmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
diIpOworIGFzc2VydF9lcXVhbHMoCisgIHYubmV0d29ya1N0YXRlLAorICB2Lk5FVFdPUktfRU1Q
VFksCisgICJ2aWRlb0VsZW1lbnQubmV0d29ya1N0YXRlIHNob3VsZCBiZSBORVRXT1JLX0VNUFRZ
IHRvIGJlZ2luIHdpdGgiKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0
ZV9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRlX3Byb3BlcnR5X2V4aXN0
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2aWRlby5uZXR3b3JrU3RhdGUgLSBleGlz
dGVuY2UgdGVzdAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9wcm9wZXJ0eV9l
eGlzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vbmV0
d29ya1N0YXRlL25ldHdvcmtTdGF0ZV9wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9uZXR3b3JrU3RhdGUvbmV0d29ya1N0YXRl
X3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACis8IWRv
Y3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8ubmV0d29ya1N0YXRl
IC0gZXhpc3RlbmNlIHRlc3Q8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBl
ci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8v
ZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLW5ldHdvcmtzdGF0
ZSI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgor
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBh
c3NlcnRfdHJ1ZSgKKyAgIm5ldHdvcmtTdGF0ZSIgaW4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InYiKSwKKyAgInZpZGVvRWxlbWVudC5uZXR3b3JrU3RhdGUgcHJvcGVydHkgZXhpc3RzIik7Cit9
KTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVk
aWEvVzNDL3ZpZGVvL3BhdXNlZC9wYXVzZWRfZmFsc2VfZHVyaW5nX3BsYXktZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2Vk
X2ZhbHNlX2R1cmluZ19wbGF5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2VkX2ZhbHNlX2R1cmluZ19wbGF5LWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8ucGF1c2VkIHNob3Vs
ZCBiZSBmYWxzZSBkdXJpbmcgcGxheSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyBmYWxzZSBpcyBmYWxzZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5j
ZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2VkX2Zh
bHNlX2R1cmluZ19wbGF5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL3BhdXNlZC9wYXVzZWRfZmFsc2VfZHVyaW5nX3BsYXkuaHRtbAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2VkX2ZhbHNlX2R1cmlu
Z19wbGF5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlwZSBodG1s
PgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBwYXVzZWQgcHJvcGVy
dHk8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+
CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1s
NS9zcGVjL092ZXJ2aWV3Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4K
KyAgPHZpZGVvIGlkPSJ2IiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgidmlkZW8ucGF1
c2VkIHNob3VsZCBiZSBmYWxzZSBkdXJpbmcgcGxheSBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7
Cit2YXIgdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVu
ZXIoInBsYXkiLCBmdW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0
X2ZhbHNlKHYucGF1c2VkKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNlKCk7Cit9KTsK
K3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9t
b3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
cGF1c2VkL3BhdXNlZF90cnVlX2R1cmluZ19wYXVzZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3BhdXNlZC9wYXVzZWRfdHJ1ZV9kdXJpbmdf
cGF1c2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzND
L3ZpZGVvL3BhdXNlZC9wYXVzZWRfdHJ1ZV9kdXJpbmdfcGF1c2UtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2aWRlby5wYXVzZWQgc2hvdWxkIGJlIHRydWUgZHVy
aW5nIHBhdXNlIGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRy
dWUgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExh
eW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2VkX3RydWVfZHVyaW5nX3BhdXNl
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3BhdXNlZC9w
YXVzZWRfdHJ1ZV9kdXJpbmdfcGF1c2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2VkX3RydWVfZHVyaW5nX3BhdXNlLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhl
YWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSBwYXVzZWQgcHJvcGVydHk8L3RpdGxlPgorICA8
c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxi
b2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3
Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2
IiBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlw
dD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgidmlkZW8ucGF1c2VkIHNob3VsZCBiZSB0cnVlIGR1cmlu
ZyBwYXVzZSBldmVudCIsIHt0aW1lb3V0OjMwMDAwfSk7Cit2YXIgdiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ2Iik7Cit2LmFkZEV2ZW50TGlzdGVuZXIoInBhdXNlIiwgZnVuY3Rpb24oKSB7
CisgIHQuc3RlcChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHYucGF1c2VkKTsKKyAgfSk7
CisgIHQuZG9uZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMu
b3JnLzIwMTAvMDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5y
YW5kb20oKTsKK3YucGxheSgpOwordi5wYXVzZSgpOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8
L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2Fk
X3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQv
cHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDExIEBACit2aWRlby5wcmVsb2FkIC0gZXhpc3RlbmNlIHRlc3QKKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3Nw
ZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxv
YWQvcHJlbG9hZF9wcm9wZXJ0eV9leGlzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3Byb3BlcnR5X2V4aXN0cy5odG1sCShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9h
ZF9wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMCBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLnByZWxvYWQgLSBl
eGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpz
Ij48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYu
dzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtcHJlbG9hZCI+c3BlYyBy
ZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InZpZGVvIj4KKyAgPC92aWRlbz4KKyAgPGRp
diBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0
X3RydWUoCisgICJwcmVsb2FkIiBpbiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidmlkZW8iKSwK
KyAgInZpZGVvRWxlbWVudC5wcmVsb2FkIHByb3BlcnR5IGV4aXN0cyIpOworfSk7CisgIDwvc2Ny
aXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYXV0b192YWx1ZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZs
ZWN0c19hdXRvX3ZhbHVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYXV0b192YWx1ZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLnByZWxvYWQgLSBy
ZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgImF1
dG8iIGlzICJhdXRvIgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYXV0
b192YWx1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9w
cmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfYXV0b192YWx1ZS5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19hdXRv
X3ZhbHVlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1s
PgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0
ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0
PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRt
bDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1wcmVsb2FkIj5zcGVjIHJlZmVyZW5jZTwv
YT48L3A+CisgIDx2aWRlbyBpZD0idmlkZW8iIHByZWxvYWQ9ImF1dG8iPgorICA8L3ZpZGVvPgor
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBh
c3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidmlkZW8iKS5wcmVsb2Fk
LAorICAiYXV0byIsCisgICJ2aWRlb0VsZW1lbnQucHJlbG9hZCByZWZsZWN0cyAnYXV0bycgdmFs
dWUiKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2JvZ3VzX3ZhbHVl
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
cHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2JvZ3VzX3ZhbHVlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVm
bGVjdHNfYm9ndXNfdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEx
IEBACit2aWRlby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0CisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTICJhdXRvIiBpcyAiYXV0byIKKworVEVTVCBDT01QTEVURQorc3Bl
YyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9h
ZC9wcmVsb2FkX3JlZmxlY3RzX2JvZ3VzX3ZhbHVlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ib2d1c192YWx1
ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxv
YWQvcHJlbG9hZF9yZWZsZWN0c19ib2d1c192YWx1ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlk
ZW8ucHJlbG9hZCAtIHJlZmxlY3Rpb24gdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8u
Li93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhy
ZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEt
cHJlbG9hZCI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InZpZGVvIiBwcmVs
b2FkPSJtYXJrcy1mYW50YXNtYWdvcmljYWwtcHJlbG9hZC1zdGF0ZSI+CisgIDwvdmlkZW8+Cisg
IDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIGFz
c2VydF9lcXVhbHMoCisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2aWRlbyIpLnByZWxvYWQs
CisgICJhdXRvIiwKKyAgInZpZGVvRWxlbWVudC5wcmVsb2FkIHJlZmxlY3RzIGJvZ3VzIHZhbHVl
IGFzICdhdXRvJyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfZW1w
dHktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfZW1wdHktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0
c19lbXB0eS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVv
LnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgImF1dG8iIGlzICJhdXRvIgorCitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5j
ZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRf
cmVmbGVjdHNfZW1wdHkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2VtcHR5Lmh0bWwJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX2Vt
cHR5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0
PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0Pgor
IDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUv
c3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1wcmVsb2FkIj5zcGVjIHJlZmVyZW5jZTwvYT48
L3A+CisgIDx2aWRlbyBpZD0idmlkZW8iIHByZWxvYWQ9IiI+CisgIDwvdmlkZW8+CisgIDxkaXYg
aWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIGFzc2VydF9l
cXVhbHMoCisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2aWRlbyIpLnByZWxvYWQsCisgICJh
dXRvIiwKKyAgInZpZGVvRWxlbWVudC5wcmVsb2FkIHJlZmxlY3RzIGVtcHR5IHZhbHVlIGFzICdh
dXRvJyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9w
cmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0
c19tZXRhZGF0YS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3Zp
ZGVvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgIm1ldGFkYXRhIiBpcyAibWV0YWRhdGEiCisKK1RFU1QgQ09NUExFVEUKK3Nw
ZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxv
YWQvcHJlbG9hZF9yZWZsZWN0c19tZXRhZGF0YS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3By
ZWxvYWRfcmVmbGVjdHNfbWV0YWRhdGEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBA
QAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLnByZWxv
YWQgLSByZWZsZWN0aW9uIHRlc3Q8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3Jh
cHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRw
Oi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLXByZWxvYWQi
PnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2aWRlbyIgcHJlbG9hZD0ibWV0
YWRhdGEiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0Pgor
dGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidmlkZW8iKS5wcmVsb2FkLAorICAibWV0YWRhdGEiLAorICAidmlkZW9FbGVtZW50LnBy
ZWxvYWQgcmVmbGVjdHMgJ21ldGFkYXRhJyB2YWx1ZSIpOworfSk7CisgIDwvc2NyaXB0PgorIDwv
Ym9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2Fk
L3ByZWxvYWRfcmVmbGVjdHNfbm9fdmFsdWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9fdmFs
dWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ub192YWx1ZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QK
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgImF1dG8iIGlzICJhdXRvIgor
CitURVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9fdmFsdWUuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3Jl
ZmxlY3RzX25vX3ZhbHVlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vX3ZhbHVlLmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+Cisg
IDx0aXRsZT52aWRlby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0PC90aXRsZT4KKyAgPHNjcmlw
dCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4K
KyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1s
I2RvbS1tZWRpYS1wcmVsb2FkIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0i
dmlkZW8iPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0Pgor
dGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidmlkZW8iKS5wcmVsb2FkLAorICAiYXV0byIsCisgICJ2aWRlb0VsZW1lbnQucHJlbG9h
ZCBhYnNlbmNlIHJlZmxlY3RzICdub25lJyB2YWx1ZSIpOworfSk7CisgIDwvc2NyaXB0PgorIDwv
Ym9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2Fk
L3ByZWxvYWRfcmVmbGVjdHNfbm9uZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJlbG9hZF9yZWZsZWN0c19ub25lLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVs
b2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTEgQEAKK3ZpZGVvLnByZWxvYWQgLSByZWZsZWN0aW9uIHRlc3QKKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgIm5vbmUiIGlzICJub25lIgorCitURVNUIENPTVBM
RVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZS5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3ByZWxvYWQvcHJl
bG9hZF9yZWZsZWN0c19ub25lLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwh
ZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlby5wcmVsb2FkIC0g
cmVmbGVjdGlvbiB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIu
anMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rl
di53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1wcmVsb2FkIj5zcGVj
IHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idmlkZW8iIHByZWxvYWQ9Im5vbmUiPgor
ICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5j
dGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAorICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidmlk
ZW8iKS5wcmVsb2FkLAorICAibm9uZSIsCisgICJ2aWRlb0VsZW1lbnQucHJlbG9hZCByZWZsZWN0
cyAnbm9uZScgdmFsdWUiKTsKK30pOworICA8L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3Rz
X25vbmVfYXV0b3BsYXktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21l
ZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZV9hdXRvcGxheS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJl
bG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vbmVfYXV0b3BsYXktZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDExIEBACit2aWRlby5wcmVsb2FkIC0gcmVmbGVjdGlvbiB0ZXN0CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICJub25lIiBpcyAibm9uZSIKKwor
VEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRp
YS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2FkX3JlZmxlY3RzX25vbmVfYXV0b3BsYXkuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcHJlbG9hZC9wcmVsb2Fk
X3JlZmxlY3RzX25vbmVfYXV0b3BsYXkuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L21lZGlhL1czQy92aWRlby9wcmVsb2FkL3ByZWxvYWRfcmVmbGVjdHNfbm9uZV9hdXRvcGxheS5o
dG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1s
PgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8ucHJlbG9hZCAtIHJlZmxlY3Rpb24gdGVzdDwvdGl0
bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48L3NjcmlwdD4KKyA8L2hl
YWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMv
T3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtcHJlbG9hZCI+c3BlYyByZWZlcmVuY2U8L2E+PC9wPgor
ICA8dmlkZW8gaWQ9InZpZGVvIiBhdXRvcGxheSBwcmVsb2FkPSJub25lIj4KKyAgPC92aWRlbz4K
KyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7Cisg
YXNzZXJ0X2VxdWFscygKKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZpZGVvIikucHJlbG9h
ZCwKKyAgIm5vbmUiLAorICAidmlkZW9FbGVtZW50LnByZWxvYWQgcmVmbGVjdHMgJ25vbmUnIHZh
bHVlIGV2ZW4gaWYgYXV0b3BsYXkgYXR0cmlidXRlIGlzIHByZXNlbnQiKTsKK30pOworICA8L3Nj
cmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5LWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0
YXRlX2R1cmluZ19jYW5wbGF5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL21lZGlhL1czQy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXkt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2aWRlby5yZWFkeVN0
YXRlIHNob3VsZCBiZSA+PSBIQVZFX0ZVVFVSRV9EQVRBIGR1cmluZyBjYW5wbGF5IGV2ZW50CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXkuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRl
X2R1cmluZ19jYW5wbGF5Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9X
M0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5Lmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+
CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSByZWFkeVN0YXRlIHByb3BlcnR5IGR1cmluZyBjYW5w
bGF5PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2NyaXB0
PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRt
bDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5jZTwvYT48L3A+
CisgIDx2aWRlbyBpZD0idiIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+CisgIDxkaXYg
aWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3QoInZpZGVvLnJl
YWR5U3RhdGUgc2hvdWxkIGJlID49IEhBVkVfRlVUVVJFX0RBVEEgZHVyaW5nIGNhbnBsYXkgZXZl
bnQiLCB7dGltZW91dDozMDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
diIpOwordi5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5IiwgZnVuY3Rpb24oKSB7CisgIHQuc3Rl
cChmdW5jdGlvbigpIHsKKyAgIGFzc2VydF90cnVlKHYucmVhZHlTdGF0ZSA+PSB2LkhBVkVfRlVU
VVJFX0RBVEEpOworICB9KTsKKyAgdC5kb25lKCk7CisgIHYucGF1c2UoKTsKK30pOwordi5zcmMg
PSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmllXzMw
MCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwv
Ym9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9yZWFkeVN0
YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXl0aHJvdWdoLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRl
X2R1cmluZ19jYW5wbGF5dGhyb3VnaC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5w
bGF5dGhyb3VnaC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3Zp
ZGVvLnJlYWR5U3RhdGUgc2hvdWxkIGJlIEhBVkVfRU5PVUdIX0RBVEEgZHVyaW5nIGNhbnBsYXl0
aHJvdWdoIGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICI0IiBp
cyAiNCIKKworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5
dGhyb3VnaC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9y
ZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXl0aHJvdWdoLmh0bWwJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRl
X2R1cmluZ19jYW5wbGF5dGhyb3VnaC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBA
Cis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRz
IC0gcmVhZHlTdGF0ZSBwcm9wZXJ0eSBkdXJpbmcgY2FucGxheXRocm91Z2g8L3RpdGxlPgorICA8
c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxi
b2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3
Lmh0bWwjbWVkaWFldmVudHMiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2
IiBhdXRvcGxheSBjb250cm9scz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4K
KyAgPHNjcmlwdD4KK3ZhciB0ID0gYXN5bmNfdGVzdCgidmlkZW8ucmVhZHlTdGF0ZSBzaG91bGQg
YmUgSEFWRV9FTk9VR0hfREFUQSBkdXJpbmcgY2FucGxheXRocm91Z2ggZXZlbnQiLCB7dGltZW91
dDozMDAwMH0pOwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOwordi5hZGRF
dmVudExpc3RlbmVyKCJjYW5wbGF5dGhyb3VnaCIsIGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVu
Y3Rpb24oKSB7CisgICBhc3NlcnRfZXF1YWxzKHYucmVhZHlTdGF0ZSwKKyAgICB2LkhBVkVfRU5P
VUdIX0RBVEEpOworICB9KTsKKyAgdC5kb25lKCk7CisgIHYucGF1c2UoKTsKK30pOwordi5zcmMg
PSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8yMDEwLzA1L3ZpZGVvL21vdmllXzMw
MCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9tKCk7CisgIDwvc2NyaXB0PgorIDwv
Ym9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9yZWFkeVN0
YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVy
aW5nX2xvYWRlZGRhdGEtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkZGF0YS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLnJlYWR5U3Rh
dGUgc2hvdWxkIGJlID49IEhBVkVfQ1VSUkVOVF9EQVRBIGR1cmluZyBsb2FkZWRkYXRhIGV2ZW50
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRydWUgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZGRhdGEuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFk
eVN0YXRlX2R1cmluZ19sb2FkZWRkYXRhLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19sb2FkZWRkYXRh
Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0
bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlbyBldmVudHMgLSByZWFkeVN0YXRlIHByb3BlcnR5
IGR1cmluZyBsb2FkZWRkYXRhPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBw
ZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDov
L2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJl
ZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwv
dmlkZW8+CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5j
X3Rlc3QoInZpZGVvLnJlYWR5U3RhdGUgc2hvdWxkIGJlID49IEhBVkVfQ1VSUkVOVF9EQVRBIGR1
cmluZyBsb2FkZWRkYXRhIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciB2ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInYiKTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkZGF0YSIs
IGZ1bmN0aW9uKCkgeworICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh2LnJl
YWR5U3RhdGUgPj0gdi5IQVZFX0NVUlJFTlRfREFUQSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAg
di5wYXVzZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMub3Jn
LzIwMTAvMDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5k
b20oKTsKKyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRh
dGEtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRl
by9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZG1ldGFkYXRhLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9yZWFkeVN0YXRl
L3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZG1ldGFkYXRhLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8ucmVhZHlTdGF0ZSBzaG91bGQgYmUgPj0gSEFWRV9N
RVRBREFUQSBkdXJpbmcgbG9hZGVkbWV0YWRhdGEgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVm
ZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUv
cmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRhdGEuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19sb2Fk
ZWRtZXRhZGF0YS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRhdGEuaHRtbAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwyNSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVh
ZD4KKyAgPHRpdGxlPnZpZGVvIGV2ZW50cyAtIHJlYWR5U3RhdGUgcHJvcGVydHkgZHVyaW5nIGxv
YWRlZG1ldGFkYXRhPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMi
Pjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53
My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI21lZGlhZXZlbnRzIj5zcGVjIHJlZmVyZW5j
ZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiIgYXV0b3BsYXkgY29udHJvbHM+CisgIDwvdmlkZW8+
CisgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit2YXIgdCA9IGFzeW5jX3Rlc3Qo
InZpZGVvLnJlYWR5U3RhdGUgc2hvdWxkIGJlID49IEhBVkVfTUVUQURBVEEgZHVyaW5nIGxvYWRl
ZG1ldGFkYXRhIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInYiKTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkbWV0YWRhdGEiLCBm
dW5jdGlvbigpIHsKKyAgdC5zdGVwKGZ1bmN0aW9uKCkgeworICAgYXNzZXJ0X3RydWUodi5yZWFk
eVN0YXRlID49IHYuSEFWRV9NRVRBREFUQSk7CisgIH0pOworICB0LmRvbmUoKTsKKyAgdi5wYXVz
ZSgpOworfSk7Cit2LnNyYyA9IGdldFZpZGVvVVJJKCJodHRwOi8vbWVkaWEudzMub3JnLzIwMTAv
MDUvdmlkZW8vbW92aWVfMzAwIikgKyAiPyIgKyBuZXcgRGF0ZSgpICsgTWF0aC5yYW5kb20oKTsK
KyAgPC9zY3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEv
VzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfcGxheWluZy1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUv
cmVhZHlTdGF0ZV9kdXJpbmdfcGxheWluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19w
bGF5aW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordmlkZW8u
cmVhZHlTdGF0ZSBzaG91bGQgYmUgPj0gSEFWRV9GVVRVUkVfREFUQSBkdXJpbmcgcGxheWluZyBl
dmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9t
ZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2R1cmluZ19wbGF5aW5nLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVh
ZHlTdGF0ZV9kdXJpbmdfcGxheWluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
bWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9kdXJpbmdfcGxheWluZy5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
IDxoZWFkPgorICA8dGl0bGU+dmlkZW8gZXZlbnRzIC0gcmVhZHlTdGF0ZSBwcm9wZXJ0eSBkdXJp
bmcgcGxheWluZzwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48
L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMu
b3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNtZWRpYWV2ZW50cyI+c3BlYyByZWZlcmVuY2U8
L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiIGF1dG9wbGF5IGNvbnRyb2xzPgorICA8L3ZpZGVvPgor
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJ2
aWRlby5yZWFkeVN0YXRlIHNob3VsZCBiZSA+PSBIQVZFX0ZVVFVSRV9EQVRBIGR1cmluZyBwbGF5
aW5nIGV2ZW50Iiwge3RpbWVvdXQ6MzAwMDB9KTsKK3ZhciB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInYiKTsKK3YuYWRkRXZlbnRMaXN0ZW5lcigicGxheWluZyIsIGZ1bmN0aW9uKCkgewor
ICB0LnN0ZXAoZnVuY3Rpb24oKSB7CisgICBhc3NlcnRfdHJ1ZSh2LnJlYWR5U3RhdGUgPj0gdi5I
QVZFX0ZVVFVSRV9EQVRBKTsKKyAgfSk7CisgIHQuZG9uZSgpOworICB2LnBhdXNlKCk7Cit9KTsK
K3Yuc3JjID0gZ2V0VmlkZW9VUkkoImh0dHA6Ly9tZWRpYS53My5vcmcvMjAxMC8wNS92aWRlby9t
b3ZpZV8zMDAiKSArICI/IiArIG5ldyBEYXRlKCkgKyBNYXRoLnJhbmRvbSgpOworICA8L3Njcmlw
dD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8v
cmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2luaXRpYWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9yZWFkeVN0YXRlL3JlYWR5U3RhdGVfaW5pdGlh
bC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX2luaXRpYWwtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDExIEBACit2aWRlby5yZWFkeVN0YXRlIC0gZGVmYXVsdCBzdGF0ZQorCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyAiMCIgaXMgIjAiCisKK1RFU1QgQ09N
UExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3Zp
ZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9pbml0aWFsLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9pbml0aWFsLmh0
bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vcmVhZHlTdGF0
ZS9yZWFkeVN0YXRlX2luaXRpYWwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMiBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLnJlYWR5U3Rh
dGUgLSBkZWZhdWx0IHN0YXRlPC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBw
ZXIuanMiPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDov
L2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1uZXR3b3Jrc3Rh
dGUiPnNwZWMgcmVmZXJlbmNlPC9hPjwvcD4KKyAgPHZpZGVvIGlkPSJ2Ij4KKyAgPC92aWRlbz4K
KyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7Cisg
dmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpOworIGFzc2VydF9lcXVhbHMoCisg
IHYucmVhZHlTdGF0ZSwKKyAgdi5IQVZFX05PVEhJTkcsCisgICJ2aWRlb0VsZW1lbnQucmVhZHlT
dGF0ZSBzaG91bGQgYmUgSEFWRV9OT1RISU5HIHRvIGJlZ2luIHdpdGgiKTsKK30pOworICA8L3Nj
cmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX3Byb3BlcnR5X2V4aXN0cy1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlT
dGF0ZV9wcm9wZXJ0eV9leGlzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9wcm9wZXJ0eV9leGlz
dHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACit2aWRlby5yZWFk
eVN0YXRlIC0gZXhpc3RlbmNlIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1BBU1MgdHJ1ZSBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJ
bmRleDogTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0ZV9w
cm9wZXJ0eV9leGlzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vcmVhZHlTdGF0ZS9yZWFkeVN0YXRlX3Byb3BlcnR5X2V4aXN0cy5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3JlYWR5U3RhdGUvcmVhZHlTdGF0
ZV9wcm9wZXJ0eV9leGlzdHMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMCBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLnJlYWR5U3RhdGUg
LSBleGlzdGVuY2UgdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVy
LmpzIj48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9k
ZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtbmV0d29ya3N0YXRl
Ij5zcGVjIHJlZmVyZW5jZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idiI+CisgIDwvdmlkZW8+Cisg
IDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisgIDxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworIGFz
c2VydF90cnVlKAorICAicmVhZHlTdGF0ZSIgaW4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInYi
KSwKKyAgInZpZGVvRWxlbWVudC5yZWFkeVN0YXRlIHByb3BlcnR5IGV4aXN0cyIpOworfSk7Cisg
IDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL21lZGlhL1cz
Qy92aWRlby9zcmMvc3JjX3JlZmxlY3RzX2F0dHJpYnV0ZV9ub3Rfc291cmNlX2VsZW1lbnRzLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vc3Jj
L3NyY19yZWZsZWN0c19hdHRyaWJ1dGVfbm90X3NvdXJjZV9lbGVtZW50cy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vc3JjL3NyY19yZWZs
ZWN0c19hdHRyaWJ1dGVfbm90X3NvdXJjZV9lbGVtZW50cy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLnNyYyAtIHJlZmxlY3Rpb24gdGVzdAorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0cnVlIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorc3BlYyByZWZlcmVuY2UKKworCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mvdmlk
ZW8vc3JjL3NyY19yZWZsZWN0c19hdHRyaWJ1dGVfbm90X3NvdXJjZV9lbGVtZW50cy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9zcmMvc3JjX3JlZmxlY3Rz
X2F0dHJpYnV0ZV9ub3Rfc291cmNlX2VsZW1lbnRzLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vc3JjL3NyY19yZWZsZWN0c19hdHRyaWJ1dGVfbm90X3Nv
dXJjZV9lbGVtZW50cy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACis8IWRvY3R5
cGUgaHRtbD4KKzxodG1sPgorIDxoZWFkPgorICA8dGl0bGU+dmlkZW8uc3JjIC0gcmVmbGVjdGlv
biB0ZXN0PC90aXRsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL3czY3dyYXBwZXIuanMiPjwvc2Ny
aXB0PgorIDwvaGVhZD4KKyA8Ym9keT4KKyAgPHA+PGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcv
aHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2RvbS1tZWRpYS1zcmMiPnNwZWMgcmVmZXJlbmNlPC9h
PjwvcD4KKyAgPHZpZGVvIGlkPSJ2aWRlbyIgc3JjPSJmb28iPgorICAgPHNvdXJjZSBzcmM9ImJh
cmJheiIgLz4KKyAgPC92aWRlbz4KKyAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKyAgPHNjcmlwdD4K
K3Rlc3QoZnVuY3Rpb24oKSB7CisgYXNzZXJ0X3RydWUoCisgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ2aWRlbyIpLnNyYy5pbmRleE9mKCJiYXJiYXoiKSA9PSAtMSwKKyAgInZpZGVvRWxlbWVu
dC5zcmMgc2hvdWxkIHJlZmxlY3Qgc3JjIGF0dHJpYnV0ZSwgbm90IHNvdXJjZSBjaGlsZCBlbGVt
ZW50cyIpOworfSk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL21lZGlhL1czQy92aWRlby9zcmMvc3JjX3JlZmxlY3RzX25vX3ZhbHVlLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vc3JjL3NyY19y
ZWZsZWN0c19ub192YWx1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9XM0MvdmlkZW8vc3JjL3NyY19yZWZsZWN0c19ub192YWx1ZS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEgQEAKK3ZpZGVvLnNyYyAtIGVtcHR5IGlmIG5vIHNv
dXJjZQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyAiIiBpcyAiIgorCitU
RVNUIENPTVBMRVRFCitzcGVjIHJlZmVyZW5jZQorCisKSW5kZXg6IExheW91dFRlc3RzL21lZGlh
L1czQy92aWRlby9zcmMvc3JjX3JlZmxlY3RzX25vX3ZhbHVlLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvbWVkaWEvVzNDL3ZpZGVvL3NyYy9zcmNfcmVmbGVjdHNfbm9fdmFsdWUuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9zcmMvc3JjX3Jl
ZmxlY3RzX25vX3ZhbHVlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+CisgPGhlYWQ+CisgIDx0aXRsZT52aWRlby5zcmMgLSBlbXB0eSBp
ZiBubyBzb3VyY2U8L3RpdGxlPgorICA8c2NyaXB0IHNyYz0iLi4vLi4vdzNjd3JhcHBlci5qcyI+
PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5PgorICA8cD48YSBocmVmPSJodHRwOi8vZGV2Lncz
Lm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3Lmh0bWwjZG9tLW1lZGlhLXNyYyI+c3BlYyByZWZlcmVu
Y2U8L2E+PC9wPgorICA8dmlkZW8gaWQ9InYiPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorICA8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyBhc3NlcnRfZXF1YWxzKAor
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidiIpLnNyYywKKyAgIiIsCisgICJ2aWRlb0VsZW1l
bnQuc3JjIHNob3VsZCBiZSBlbXB0eSBpZiB0aGVyZSBpcyBubyBzb3VyY2UiKTsKK30pOworICA8
L3NjcmlwdD4KKyA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9XM0Mv
dmlkZW8vc3JjL3NyY19yZW1vdmFsX2RvZXNfbm90X3RyaWdnZXJfbG9hZHN0YXJ0LWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9XM0MvdmlkZW8vc3JjL3NyY19y
ZW1vdmFsX2RvZXNfbm90X3RyaWdnZXJfbG9hZHN0YXJ0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9zcmMvc3JjX3JlbW92YWxfZG9lc19u
b3RfdHJpZ2dlcl9sb2Fkc3RhcnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDExIEBACityZW1vdmluZyBzcmMgYXR0cmlidXRlIHNob3VsZCBub3QgdHJpZ2dlciBsb2Fkc3Rh
cnQgZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHJ1ZSBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKK3NwZWMgcmVmZXJlbmNlCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvbWVkaWEvVzNDL3ZpZGVvL3NyYy9zcmNfcmVtb3ZhbF9kb2VzX25vdF90cmlnZ2VyX2xvYWRz
dGFydC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9zcmMv
c3JjX3JlbW92YWxfZG9lc19ub3RfdHJpZ2dlcl9sb2Fkc3RhcnQuaHRtbAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL21lZGlhL1czQy92aWRlby9zcmMvc3JjX3JlbW92YWxfZG9lc19ub3Rf
dHJpZ2dlcl9sb2Fkc3RhcnQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOSBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyA8aGVhZD4KKyAgPHRpdGxlPnZpZGVvLnNyYyAtIHJlZmxl
Y3Rpb24gdGVzdDwvdGl0bGU+CisgIDxzY3JpcHQgc3JjPSIuLi8uLi93M2N3cmFwcGVyLmpzIj48
L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHk+CisgIDxwPjxhIGhyZWY9Imh0dHA6Ly9kZXYudzMu
b3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkb20tbWVkaWEtc3JjIj5zcGVjIHJlZmVyZW5j
ZTwvYT48L3A+CisgIDx2aWRlbyBpZD0idmlkZW8iPgorICA8L3ZpZGVvPgorICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorICA8c2NyaXB0PgordmFyIHQgPSBhc3luY190ZXN0KCJyZW1vdmluZyBzcmMg
YXR0cmlidXRlIHNob3VsZCBub3QgdHJpZ2dlciBsb2Fkc3RhcnQgZXZlbnQiLCB7dGltZW91dDox
MDAwMH0pOwordmFyIHJlbW92ZWRfYXR0ciA9IGZhbHNlOwordmFyIHRlc3RfZG9uZSA9IGZhbHNl
OwordmFyIHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidmlkZW8iKTsKK3YuYWRkRXZlbnRM
aXN0ZW5lcigibG9hZHN0YXJ0IiwgZnVuY3Rpb24oKSB7CisgIGlmICghcmVtb3ZlZF9hdHRyKSB7
IAorICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICByZW1vdmVkX2F0dHIg
PSB0cnVlOworICAgICB2LnJlbW92ZUF0dHJpYnV0ZSgic3JjIik7CisgICAgfSwgMCk7CisgICAg
d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgIGlmICh0ZXN0X2RvbmUpIHsgcmV0
dXJuOyB9CisgICAgIHRlc3RfZG9uZSA9IHRydWU7CisgICAgIHQuc3RlcChmdW5jdGlvbigpeyBh
c3NlcnRfdHJ1ZSh0cnVlKTsgfSk7CisgICAgIHQuZG9uZSgpOworICAgIH0sIDEwMDApOworICAg
cmV0dXJuOworICB9CisgIGlmICh0ZXN0X2RvbmUpIHsgcmV0dXJuOyB9CisgIHRlc3RfZG9uZSA9
IHRydWU7CisgIHQuc3RlcChmdW5jdGlvbigpeyBhc3NlcnRfZmFsc2UodHJ1ZSk7IH0pOworICB0
LmRvbmUoKTsKK30pOwordi5zcmMgPSBnZXRWaWRlb1VSSSgiaHR0cDovL21lZGlhLnczLm9yZy8y
MDEwLzA1L3ZpZGVvL21vdmllXzMwMCIpICsgIj8iICsgbmV3IERhdGUoKSArIE1hdGgucmFuZG9t
KCk7CisgIDwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>