<?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>41279</bug_id>
          
          <creation_ts>2010-06-28 06:47:20 -0700</creation_ts>
          <short_desc>LayoutTests/canvas/philip/tests/security.drawImage.image.html Failed and skipped</short_desc>
          <delta_ts>2010-11-10 06:36:47 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>42573</dependson>
    
    <dependson>49317</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chang Shu">cshu</reporter>
          <assigned_to name="Chang Shu">cshu</assigned_to>
          <cc>cjerdonek</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>eric</cc>
    
    <cc>kenneth</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>243680</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-06-28 06:47:20 -0700</bug_when>
    <thetext>The following security related canvas tests fail to pass and are put in the skipped list.
LayoutTests/canvas/philip/tests/security.drawImage.image.html
LayoutTests/canvas/philip/tests/security.drawImage.canvas.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243713</commentid>
    <comment_count>1</comment_count>
      <attachid>59900</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-06-28 08:43:40 -0700</bug_when>
    <thetext>Created attachment 59900
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243727</commentid>
    <comment_count>2</comment_count>
      <attachid>59902</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-06-28 09:14:16 -0700</bug_when>
    <thetext>Created attachment 59902
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243767</commentid>
    <comment_count>3</comment_count>
      <attachid>59911</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-06-28 10:41:48 -0700</bug_when>
    <thetext>Created attachment 59911
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243828</commentid>
    <comment_count>4</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-06-28 12:46:51 -0700</bug_when>
    <thetext>The script failed to patch the patch file but it seems to be a false-alarm to me. I don&apos;t understand why it tries to remove &apos;LayoutTests/canvas&apos;. The log is here:
fatal: not removing &apos;LayoutTests/canvas&apos; recursively without -r
Failed to git rm --force --ignore-unmatch LayoutTests/canvas. at /home/webkit/WebKit-qt-ews/WebKitTools/Scripts/svn-apply line 451.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243851</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-28 13:14:59 -0700</bug_when>
    <thetext>I suspect svn-apply is getting confused.

https://trac.webkit.org/browser/trunk/WebKitTools/Scripts/VCSUtils.pm
or
https://trac.webkit.org/browser/trunk/WebKitTools/Scripts/svn-apply</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244512</commentid>
    <comment_count>6</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-06-29 15:03:41 -0700</bug_when>
    <thetext>Am I the only one who has this problem? Is there a work-around so I can have my patch reviewed? thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253241</commentid>
    <comment_count>7</comment_count>
      <attachid>61959</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-19 08:44:43 -0700</bug_when>
    <thetext>Created attachment 61959
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253248</commentid>
    <comment_count>8</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-19 09:06:55 -0700</bug_when>
    <thetext>The problem could be that in the patch, file tests.js has the wrong line-ending. I plan to commit a quick patch that does the following on this file:
svn propset svn:eol-style native tests.js
Does this sound ok?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253286</commentid>
    <comment_count>9</comment_count>
      <attachid>61968</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-19 10:40:49 -0700</bug_when>
    <thetext>Created attachment 61968
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253302</commentid>
    <comment_count>10</comment_count>
      <attachid>61971</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-19 11:39:03 -0700</bug_when>
    <thetext>Created attachment 61971
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253323</commentid>
    <comment_count>11</comment_count>
      <attachid>61976</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-19 12:15:42 -0700</bug_when>
    <thetext>Created attachment 61976
fix patch 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253346</commentid>
    <comment_count>12</comment_count>
      <attachid>61983</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-19 12:51:36 -0700</bug_when>
    <thetext>Created attachment 61983
fix patch 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253359</commentid>
    <comment_count>13</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-07-19 13:12:32 -0700</bug_when>
    <thetext>Darin, what do you think about this change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253388</commentid>
    <comment_count>14</comment_count>
      <attachid>61983</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-07-19 14:19:04 -0700</bug_when>
    <thetext>Comment on attachment 61983
fix patch 1

Seems OK to move these. But why are we skipping all these tests on all platforms?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253691</commentid>
    <comment_count>15</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-20 06:36:45 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (From update of attachment 61983 [details])
&gt; Seems OK to move these. But why are we skipping all these tests on all platforms?

This is the 1st part of the patch. I split it because I thought it could solve the problem that my patch failed to be applied (see all the pink buttons above). Actually, the complete patch is attached already. I can re-enable it and if you think it&apos;s good, I will commit it manually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253695</commentid>
    <comment_count>16</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-20 06:38:11 -0700</bug_when>
    <thetext>The 5th patch has the complete code change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253803</commentid>
    <comment_count>17</comment_count>
      <attachid>61968</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2010-07-20 10:33:22 -0700</bug_when>
    <thetext>Comment on attachment 61968
fix patch

manually committed attachment 61968
webkit trunk r63752.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59900</attachid>
            <date>2010-06-28 08:43:40 -0700</date>
            <delta_ts>2010-06-28 09:14:16 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>41279_1.patch</filename>
            <type>text/plain</type>
            <size>75523</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYyMDA2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjQgQEAKKzIwMTAtMDYtMjggIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgc28g
dGhhdCB0aGUgdGVzdHMgY2FuIHNpbXVsYXRlCisgICAgICAgIHJlbW90ZSBob3N0IGFjY2Vzcy4g
UmVtb3ZlIHRoZSB0ZXN0cyBmcm9tIE1hYyBhbmQgUXQncyBza2lwcGVkIGZpbGVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQu
dHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVz
ZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRt
bDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
a2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZv
cm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDYtMjggIE1pa2hhaWwgTmFnYW5vdiAgPG1uYWdhbm92
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIHRlc3QgZXhwZWN0YXRpb25zIHVw
ZGF0ZS4gUmVtb3ZlIG5vdyBwYXNzaW5nIGZhc3QvZXZlbnRzL3BvcHVwLWFsbG93ZWQtZnJvbS1n
ZXN0dXJlLWluaXRpYXRlZC1mb3JtLXN1Ym1pdC5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYxNzY2KQorKysgTGF5b3V0VGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4
dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtp
bmRleF0gPgotc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotZHJhd0ltYWdlIG9mIHVuY2xlYW4g
Y2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNpb24gNjE3NjYpCisrKyBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSw0MSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhczwvdGl0bGU+Ci08c2NyaXB0IHNyYz0i
Li4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90
ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1h
Z2UuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Ci08bGluayByZWw9Im5l
eHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmNyZWF0ZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJl
Zj0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9Iltw
XSBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRt
bCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiBh
Y2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZndDs8L2E+
Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9
ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmNhbnZhczwvaDE+
Ci08cCBjbGFzcz0iZGVzYyI+ZHJhd0ltYWdlIG9mIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBj
YW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgot
PHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzIj5zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC9hPgotCi08L3VsPgotPC9kaXY+Ci0K
LTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xh
c3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5G
QUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgot
PHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBjYW52YXMy
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7Ci1jYW52YXMyLndpZHRoID0gMTAw
OwotY2FudmFzMi5oZWlnaHQgPSA1MDsKLXZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcy
ZCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcn
KSwgMCwgMCk7Ci1jdHguZHJhd0ltYWdlKGNhbnZhczIsIDAsIDApOwotdHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0
cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9u
OiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsg
fSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcg
c3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93
LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjE3NjYpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQJKHdvcmtp
bmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwg
aHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNl
Y3VyaXR5LmRyYXdJbWFnZS5pbWFnZQotZHJhd0ltYWdlIG9mIGRpZmZlcmVudC1vcmlnaW4gaW1h
Z2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHku
ZHJhd0ltYWdlLmltYWdlIHNlY3VyaXR5LnRvRGF0YVVSTCBzZWN1cml0eS5nZXRJbWFnZURhdGEK
LUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0
bWwJKHJldmlzaW9uIDYxNzY2KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCww
IEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlPC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08
bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InBy
ZXYiIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIHRpdGxl
PSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Ci08bGluayByZWw9Im5leHQi
IGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRy
YXdJbWFnZS5jYW52YXMiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhy
ZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIGFjY2Vzc2tleT0i
cCIgdGl0bGU9IltwXSB0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Jmx0Ozwv
YT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5
LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5
LmRyYXdJbWFnZS5jYW52YXMiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
aHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1s
Ij5kcmF3SW1hZ2U8L2E+LmltYWdlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2Yg
ZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9w
PgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVj
Lmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj5zZWN1cml0eS5kcmF3SW1h
Z2UuaW1hZ2U8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnRv
RGF0YVVSTCI+c2VjdXJpdHkudG9EYXRhVVJMPC9hPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0
ZXN0cmVmcy5zZWN1cml0eS5nZXRJbWFnZURhdGEiPnNlY3VyaXR5LmdldEltYWdlRGF0YTwvYT4K
LQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4K
LTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxw
IGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0K
LTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0
eCkgewotCi1jdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5n
JyksIDAsIDApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9
Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2Vz
LmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRl
eDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gNjE3NjYpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0
cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZQotU2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0
ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4K
LVJlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMgQnVnemlsbGEKLUFjdHVhbCBv
dXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWwJKHJldmlzaW9uIDYxNzY2KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVz
dDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlPC90aXRsZT4KLTxzY3JpcHQgc3Jj
PSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4u
L3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1h
Z2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tl
U3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPgot
PGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5
bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVy
bjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFz
PC9hPi5maWxsU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgZmlsbFN0eWxlIHRv
IGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBo
cmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyI+c2VjdXJp
dHkuZmlsbFN0eWxlLmNhbnZhczwvYT4KLTxsaT48YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLm1v
emlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgotPC91bD4KLTwv
ZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9
ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxs
YmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+
PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIg
Y2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0
aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29u
dGV4dCgnMmQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxs
b3cucG5nJyksIDAsIDApOwotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVw
ZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUgPSAncmVkJzsKLXRyeSB7
IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBf
dGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93
IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0g
ZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93
biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNl
cHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwotPC9zY3Jp
cHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIg
aWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biA2MTc2NikKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5zdHJva2VTdHlsZQotU2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRlcm4gb2Yg
YW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJl
bmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFzIEJ1Z3ppbGxhCi1BY3R1YWwgb3V0cHV0
OgotUGFzc2VkCi0KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tl
U3R5bGUuaHRtbAkocmV2aXNpb24gNjE3NjYpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNDMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2FudmFzIHRl
c3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlPC90aXRsZT4KLTxzY3JpcHQg
c3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
aW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwi
IHRpdGxlPSJzZWN1cml0eS5kYXRhVVJJIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Ci08
cD4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFj
Y2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxl
Ij4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0i
c2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHku
ZGF0YVVSSSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1
cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9h
Pi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+
LnN0cm9rZVN0eWxlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIHN0cm9rZVN0eWxlIHRv
IGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBo
cmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFzIj5zZWN1
cml0eS5zdHJva2VTdHlsZS5jYW52YXM8L2E+Ci08bGk+PGEgaHJlZj0iaHR0cHM6Ly9idWd6aWxs
YS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwvYT4KLTwvdWw+
Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFz
IGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0i
ZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9
ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQot
dmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKLWNhbnZhczIu
d2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBjYW52YXMyLmdl
dENvbnRleHQoJzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
eWVsbG93LnBuZycpLCAwLCAwKTsKLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwg
J3JlcGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHlsZSA9ICdyZWQn
OwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkg
eyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRo
cm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7
Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmct
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
NjE3NjYpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCww
IEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVw
YWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnRpbWluZwotUGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2Fz
IG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW4KLVJlZmVyZW5j
ZXM6IHNlY3VyaXR5LnN0YXJ0IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMKLURpc2FncmVlcyB3
aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCkluZGV4
OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnRpbWluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDYxNzY2KQor
KysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy50aW1pbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0NyArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5n
PC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9
InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxT
dHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPgotPGJv
ZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVm
PSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRp
dGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZndDs8L2E+Ci08aDE+
PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4
LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJp
dHkucGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFzPC9hPi50aW1pbmc8L2gxPgotPHAgY2xhc3M9
ImRlc2MiPlBhdHRlcm4gc2FmZXR5IGRlcGVuZHMgb24gd2hldGhlciB0aGUgc291cmNlIHdhcyBv
cmlnaW4tY2xlYW4sIG5vdCBvbiB3aGV0aGVyIGl0IHN0aWxsIGlzIGNsZWFuPC9wPgotPGRpdiBj
bGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVz
dHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgotPGxpPjxhIGhyZWY9InNw
ZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxs
U3R5bGUuY2FudmFzPC9hPgotCi08L3VsPgotPC9kaXY+Ci08cCBjbGFzcz0ibm90ZXMiPkRpc2Fn
cmVlcyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFs
IG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9w
PjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rp
b24oY2FudmFzLCBjdHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdjYW52YXMnKTsKLWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwot
dmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmZpbGxTdHlsZSA9ICcj
MGYwJzsKLWN0eDIuZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Ci12YXIgcCA9IGN0eC5jcmVhdGVQ
YXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOyAvLyBtYWtlIGNhbnZhczIgb3JpZ2luLXVu
Y2xlYW4KLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOwot
Y2FudmFzLnRvRGF0YVVSTCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKLV9hc3Nl
cnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCi0KLQot
fSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95
ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYxNzY2KQorKysg
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1l
eHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOCArMCwwIEBACi1CbG9ja2VkIGFjY2Vz
cyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBu
ZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlCi1DcmVhdGluZyBhbiB1bmNs
ZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZl
cmVuY2VzOiBzZWN1cml0eS5zdGFydAotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCkluZGV4OiBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCShyZXZpc2lvbiA2MTc2NikKKysrIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMSwzNyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVz
dDogc2VjdXJpdHkucGF0dGVybi5jcmVhdGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3Rz
LmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3Nz
Ij4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1s
IiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Ci08bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2lu
ZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIGFjY2Vzc2tl
eT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyb3NzIj4mZ3Q7PC9hPgotPGgxPjxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5z
ZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LmNyZWF0ZTwvaDE+Ci08cCBjbGFzcz0i
ZGVzYyI+Q3JlYXRpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhlIGNhbnZh
cyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+
Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0
eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwg
b3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhl
aWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+
PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlv
bihjYW52YXMsIGN0eCkgewotCi12YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKLWNhbnZhcy50b0RhdGFVUkwo
KTsKLWN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7Ci1fYXNzZXJ0KHRydWUsICJ0cnVlIik7
IC8vIG9rYXkgaWYgdGhlcmUgd2FzIG5vIGV4Y2VwdGlvbgotCi0KLX0pOwotPC9zY3JpcHQ+Ci08
aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
b3NzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjE3NjYpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1
cml0eS5wYXR0ZXJuLmNyb3NzCi1Vc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMgdGhlIHRh
cmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXMKLVJlZmVy
ZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KLQpJbmRleDog
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNyb3NzLmh0bWwJKHJldmlzaW9uIDYxNzY2KQorKysgTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTEsNDQgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2FudmFzIHRlc3Q6
IHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3M8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpz
Ij48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4K
LTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmciPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9Iltw
XSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGlt
aW5nIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5
PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LmNy
b3NzPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5Vc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMg
dGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXM8
L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNw
ZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+Ci0KLTwv
dWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2Fu
dmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFz
cz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwg
aWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsK
LQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKLWNhbnZh
czIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBjYW52YXMy
LmdldENvbnRleHQoJzJkJyk7Ci12YXIgcCA9IGN0eDIuY3JlYXRlUGF0dGVybihkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0g
cDsKLWN0eC5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFs
c2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBm
aW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFz
LnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFn
ZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxs
eSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFn
ZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotY2FudmFzMi50b0RhdGFVUkwoKTsKLWN0eDIuZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOwotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDov
L2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNz
PSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MTc2NikKKysrIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8g
ZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwg
W2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZQotU2V0dGluZyBmaWxs
U3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUg
Y2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5maWxsU3R5bGUuaW1h
Z2UKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZS5odG1sCShyZXZpc2lvbiA2MTc2NikKKysrIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5D
YW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGU8L3RpdGxlPgotPHNj
cmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmciPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+
Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+
W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUu
aHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZp
bGxTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1
cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9h
Pi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmh0bWwiPmltYWdlPC9hPi5m
aWxsU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgZmlsbFN0eWxlIHRvIGEgcGF0
dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4t
dW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEg
aHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZSI+c2VjdXJp
dHkuZmlsbFN0eWxlLmltYWdlPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRw
dXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lk
dGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBj
b250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRU
ZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4o
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwotY3R4LmZp
bGxTdHlsZSA9IHA7Ci1jdHguZmlsbFN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2YXIgX3Rocm93biA9
IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7
IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNh
bnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0
SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZp
bmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0
SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9
Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5n
IiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYxNzY2KQorKysgTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9r
ZVN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2Nr
ZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95
ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZQotU2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2lu
IGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3Vy
aXR5LnN0cm9rZVN0eWxlLmltYWdlCi1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KLQpJbmRleDog
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlzaW9uIDYx
NzY2KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsMzggKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uaW1h
Z2Uuc3Ryb2tlU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Njcmlw
dD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJl
bD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIHRp
dGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPgotPGxpbmsgcmVsPSJuZXh0
IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0i
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPgotPGJvZHkgY2xhc3M9InNob3df
b3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
ZmlsbFN0eWxlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0g
PGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNz
a2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlIj4m
Z3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9
ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LnN0cm9rZVN0eWxl
PC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBv
ZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVh
bjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0i
c3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlIj5zZWN1cml0eS5z
dHJva2VTdHlsZS5pbWFnZTwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0
Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRo
PSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29u
dGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVz
dChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKLWN0eC5zdHJv
a2VTdHlsZSA9IHA7Ci1jdHguc3Ryb2tlU3R5bGUgPSAncmVkJzsKLXRyeSB7IHZhciBfdGhyb3du
ID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1
ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjog
Y2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNy
Yz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5w
bmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiA2MTc2NikKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cmVzZXQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tl
ZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3ll
bGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5yZXNldAotUmVzZXR0aW5nIHRoZSBjYW52
YXMgc3RhdGUgZG9lcyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVhbiBmbGFnCi1SZWZlcmVuY2Vz
OiBpbml0aWFsLnJlc2V0Ci1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KLQpJbmRleDogTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAko
cmV2aXNpb24gNjE3NjYpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnJlc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsMzggKzAsMCBAQAotPCFET0NUWVBF
IGh0bWw+Ci08dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnJlc2V0PC90aXRsZT4KLTxzY3Jp
cHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRhdGFV
UkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVm
PSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiB0aXRsZT0iMmQuZ2V0Y29udGV4dC5leGlzdHMi
PgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LmRh
dGFVUkkuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRhdGFVUkkiPiZs
dDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSIyZC5n
ZXRjb250ZXh0LmV4aXN0cy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gMmQuZ2V0Y29u
dGV4dC5leGlzdHMiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LnJlc2V0PC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5SZXNldHRpbmcgdGhlIGNh
bnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWc8L3A+Ci08ZGl2
IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0
ZXN0cmVmcy5pbml0aWFsLnJlc2V0Ij5pbml0aWFsLnJlc2V0PC9hPgotCi08L3VsPgotPC9kaXY+
Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIg
Y2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNr
Ij5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3Vs
PgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWNhbnZhcy53
aWR0aCA9IDUwOwotY3R4LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93
LnBuZycpLCAwLCAwKTsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFV
UkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChf
dGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0K
LWNhbnZhcy53aWR0aCA9IDEwMDsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50
b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fz
c2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgp
Iik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xl
cGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgot
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMuY3NzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5j
c3MJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMuY3NzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzNCBAQAoraHRtbC5mYWlsIHsKKwli
YWNrZ3JvdW5kOiAjZjY2OworfQoraHRtbC5wYXNzIHsKKwliYWNrZ3JvdW5kOiAjNmY2OworfQor
aHRtbC5uZWVkc19jaGVjayB7CisJYmFja2dyb3VuZDogIzk5ZjsKK30KKworYm9keSB7CisJZm9u
dC1zaXplOiBzbWFsbDsKKwlmb250LWZhbWlseTogc2Fucy1zZXJpZjsKKwljb2xvcjogYmxhY2s7
Cit9CisKK2E6bGluayB7CisJY29sb3I6ICMwMGM7Cit9CithOnZpc2l0ZWQgeworCWNvbG9yOiAj
ODA4OworfQorCitib2R5LmZyYW1lZCB7CisJZm9udC1zaXplOiB4LXNtYWxsOworfQorCitoMSB7
CisJZm9udC1zaXplOiBsYXJnZXI7CisJbWFyZ2luOiAwOworCXBhZGRpbmctbGVmdDogMC41ZW07
CisJdGV4dC1pbmRlbnQ6IC0wLjVlbTsKK30KKworcCB7CisJbWFyZ2luOiAwOworfQorCitwLm5v
dGVzIHsKKwltYXJnaW4tYm90dG9tOiAwLjVlbTsKKwlmb250LXN0eWxlOiBpdGFsaWM7Cit9CisK
K3VsIHsKKwltYXJnaW46IDA7CisJbWFyZ2luLWJvdHRvbTogMC41ZW07CisJcGFkZGluZzogMDsK
KwlwYWRkaW5nLWxlZnQ6IDFlbTsKK30KKworLnJlZnMgeworCWZvbnQtc3R5bGU6IGl0YWxpYzsK
KwltYXJnaW4tYm90dG9tOiAwLjVlbTsKK30KKworLnJlZnMgdWwgeworCWRpc3BsYXk6IGlubGlu
ZTsKKwltYXJnaW46IDA7CisJcGFkZGluZzogMDsKK30KKworLnJlZnMgbGkgeworCWRpc3BsYXk6
IGlubGluZTsKKwlsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CisJbWFyZ2luOiAwOworCXBhZGRpbmc6
IDA7Cit9CisKK2NhbnZhcyB7CisJZGlzcGxheTogbm9uZTsKKwl2aXNpYmlsaXR5OiBoaWRkZW47
CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2JhY2tn
cm91bmQucG5nKTsKK30KKworaW1nLmV4cGVjdGVkIHsKKwlkaXNwbGF5OiBub25lOworCWJvcmRl
cjogMnB4ICNmMGYgc29saWQ7CisJYmFja2dyb3VuZDogdXJsKGltYWdlcy9iYWNrZ3JvdW5kLnBu
Zyk7Cit9CisKK2lmcmFtZSB7CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKK30KKworLm91dHB1
dCB7CisJZGlzcGxheTogbm9uZTsKK30KKworLnNob3dfb3V0cHV0IC5vdXRwdXQsIC5uZWVkc19j
aGVjayAub3V0cHV0ICB7CisJZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsKKwl2aXNpYmlsaXR5
OiB2aXNpYmxlICFpbXBvcnRhbnQ7Cit9CisKKy5zaG93X291dHB1dCAjc2hvd19vdXRwdXQgewor
CWRpc3BsYXk6IG5vbmU7Cit9CisKKy5yZXNvdXJjZSB7CisJdmlzaWJpbGl0eTogaGlkZGVuOwor
CWhlaWdodDogMDsKK30KKworLmZhbGxiYWNrIHsKKwlmb250LXNpemU6IDJlbTsKKwlmb250LXdl
aWdodDogYm9sZDsKKwljb2xvcjogI2EwMDsKK30KKworCitodG1sLm1pbmltYWwgYm9keSB7CisJ
Y29sb3I6IHdoaXRlOworfQoraHRtbC5mYWlsLm1pbmltYWwgeworCWJhY2tncm91bmQ6ICNmMDA7
Cit9CitodG1sLnBhc3MubWluaW1hbCB7CisJYmFja2dyb3VuZDogIzA4MDsKK30KK2h0bWwubmVl
ZHNfY2hlY2subWluaW1hbCB7CisJYmFja2dyb3VuZDogIzAwODsKK30KKy5taW5pbWFsICNkIHsK
KwlkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cit9CisubWluaW1hbCAuZXhwZWN0ZWR0ZXh0IHsK
Kwl2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsKK30KKyNwYXNzdGV4dCwgI2ZhaWx0ZXh0
IHsKKwlkaXNwbGF5OiBub25lOworfQorLm1pbmltYWwucGFzcyAjcGFzc3RleHQsIC5taW5pbWFs
LmZhaWwgI2ZhaWx0ZXh0IHsKKwlkaXNwbGF5OiBibG9jazsKK30KSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMuanMJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMuanMJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjYxIEBACitmdW5jdGlvbiBfdmFsVG9TdHJpbmcodmFsKQ0KK3sNCisgICAg
aWYgKHZhbCA9PT0gdW5kZWZpbmVkIHx8IHZhbCA9PT0gbnVsbCkNCisgICAgICAgIHJldHVybiAn
WycgKyB0eXBlb2YodmFsKSArICddJzsNCisgICAgcmV0dXJuIHZhbC50b1N0cmluZygpICsgJ1sn
ICsgdHlwZW9mKHZhbCkgKyAnXSc7DQorfQ0KKw0KK3ZhciBfaGV4MmRlY190YWJsZSA9IHsNCisg
ICAgMDowLCAxOjEsIDI6MiwgMzozLCA0OjQsIDU6NSwgNjo2LCA3OjcsIDg6OCwgOTo5LA0KKyAg
ICBhOjEwLCBiOjExLCBjOjEyLCBkOjEzLCBlOjE0LCBmOjE1LA0KKyAgICBBOjEwLCBCOjExLCBD
OjEyLCBEOjEzLCBFOjE0LCBGOjE1DQorfTsNCitmdW5jdGlvbiBfaGV4MmRlYyhoZXgpDQorew0K
KyAgICByZXR1cm4gX2hleDJkZWNfdGFibGVbaGV4LmNoYXJBdCgwKV0qMTYgKyBfaGV4MmRlY190
YWJsZVtoZXguY2hhckF0KDEpXTsNCit9DQorDQordmFyIF9mYWlsZWQgPSBmYWxzZTsNCit2YXIg
X2Fzc2VydGVkID0gZmFsc2U7DQorZnVuY3Rpb24gX3dhcm4odGV4dCkNCit7DQorICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCdkJykuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgnbGknKSkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodGV4dCkpOw0KK30N
CitmdW5jdGlvbiBfZmFpbCh0ZXh0KQ0KK3sNCisgICAgX3dhcm4odGV4dCk7DQorICAgIF9mYWls
ZWQgPSB0cnVlOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0KGNvbmQsIHRleHQpDQorew0KKyAg
ICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBpZiAoISBjb25kKQ0KKyAgICAgICAgX2ZhaWwoJ0Zh
aWxlZCBhc3NlcnRpb246ICcgKyB0ZXh0KTsNCit9DQorDQorZnVuY3Rpb24gX2Fzc2VydFNhbWUo
YSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0KKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBp
ZiAoYSAhPT0gYikNCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0ZXh0X2Eg
KyAnID09PSAnICsgdGV4dF9iICsNCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9T
dHJpbmcoYSkgKyAnLCBleHBlY3RlZCAnICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsNCit9DQor
DQorZnVuY3Rpb24gX2Fzc2VydERpZmZlcmVudChhLCBiLCB0ZXh0X2EsIHRleHRfYikNCit7DQor
ICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmIChhID09PSBiKQ0KKyAgICAgICAgX2ZhaWwo
J0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgIT09ICcgKyB0ZXh0X2IgKw0KKyAgICAg
ICAgICAgICAgICAnIChnb3QgJyArIF92YWxUb1N0cmluZyhhKSArICcsIGV4cGVjdGVkIG5vdCAn
ICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsNCit9DQorDQorZnVuY3Rpb24gX2Fzc2VydEVxdWFs
KGEsIGIsIHRleHRfYSwgdGV4dF9iKQ0KK3sNCisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisgICAg
aWYgKGEgIT0gYikNCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0ZXh0X2Eg
KyAnID09ICcgKyB0ZXh0X2IgKw0KKyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92YWxUb1N0
cmluZyhhKSArICcsIGV4cGVjdGVkICcgKyBfdmFsVG9TdHJpbmcoYikgKyAnKScpOw0KK30NCisN
CitmdW5jdGlvbiBfYXNzZXJ0TWF0Y2goYSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0KKyAgICBf
YXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBpZiAoISBhLm1hdGNoKGIpKQ0KKyAgICAgICAgX2ZhaWwo
J0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgbWF0Y2hlcyAnICsgdGV4dF9iICsNCisg
ICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnKScpOw0KK30NCisN
CisNCit2YXIgX21hbnVhbF9jaGVjayA9IGZhbHNlOw0KKw0KK2Z1bmN0aW9uIF9yZXF1aXJlTWFu
dWFsQ2hlY2soKQ0KK3sNCisgICAgX21hbnVhbF9jaGVjayA9IHRydWU7DQorfQ0KKw0KK2Z1bmN0
aW9uIF9jcmFzaCgpDQorew0KKyAgICBfZmFpbCgnQWJvcnRlZCBkdWUgdG8gcHJlZGljdGVkIGNy
YXNoJyk7DQorfQ0KKw0KK3ZhciBfZ2V0SW1hZ2VEYXRhQ2FsaWJyYXRlZCA9IGZhbHNlOw0KK3Zh
ciBfZ2V0SW1hZ2VEYXRhSXNQcmVtdWwsIF9nZXRJbWFnZURhdGFJc0JHUkE7DQorDQorZnVuY3Rp
b24gX2dldFBpeGVsKGNhbnZhcywgeCx5KQ0KK3sNCisgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRD
b250ZXh0KCcyZCcpOw0KKyAgICBpZiAoY3R4ICYmIHR5cGVvZihjdHguZ2V0SW1hZ2VEYXRhKSAh
PSAndW5kZWZpbmVkJykNCisgICAgew0KKyAgICAgICAgdHJ5IHsNCisgICAgICAgICAgICB2YXIg
aW1nZGF0YSA9IGN0eC5nZXRJbWFnZURhdGEoeCwgeSwgMSwgMSk7DQorICAgICAgICB9IGNhdGNo
IChlKSB7DQorICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24gY2F1
c2VkIGJ5IGhhdmluZyBkcmF3bg0KKyAgICAgICAgICAgIC8vIGRhdGE6IFVSTHMgb250byB0aGUg
Y2FudmFzDQorICAgICAgICAgICAgaW1nZGF0YSA9IG51bGw7DQorICAgICAgICB9DQorICAgICAg
ICBpZiAoaW1nZGF0YSkNCisgICAgICAgIHsNCisgICAgICAgICAgICAvLyBXb3JrIGFyb3VuZCBn
ZXRJbWFnZURhdGEgYnVncywgc2luY2Ugd2Ugd2FudCB0aGUgb3RoZXIgdGVzdHMgdG8NCisgICAg
ICAgICAgICAvLyBjYXJyeSBvbiB3b3JraW5nIGFzIHdlbGwgYXMgcG9zc2libGUNCisgICAgICAg
ICAgICBpZiAoISBfZ2V0SW1hZ2VEYXRhQ2FsaWJyYXRlZCkNCisgICAgICAgICAgICB7DQorICAg
ICAgICAgICAgICAgIHZhciBjMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOw0K
KyAgICAgICAgICAgICAgICBjMi53aWR0aCA9IGMyLmhlaWdodCA9IDE7DQorICAgICAgICAgICAg
ICAgIHZhciBjdHgyID0gYzIuZ2V0Q29udGV4dCgnMmQnKTsNCisgICAgICAgICAgICAgICAgY3R4
Mi5maWxsU3R5bGUgPSAncmdiYSgwLCAyNTUsIDI1NSwgMC41KSc7DQorICAgICAgICAgICAgICAg
IGN0eDIuZmlsbFJlY3QoMCwgMCwgMSwgMSk7DQorICAgICAgICAgICAgICAgIHZhciBkYXRhMiA9
IGN0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpLmRhdGE7DQorDQorICAgICAgICAgICAgICAg
IC8vIEZpcmVmb3ggcmV0dXJucyBwcmVtdWx0aXBsaWVkIGFscGhhDQorDQorICAgICAgICAgICAg
ICAgIGlmIChkYXRhMlsxXSA+IDEwMCAmJiBkYXRhMlsxXSA8IDE1MCkNCisgICAgICAgICAgICAg
ICAgICAgIF9nZXRJbWFnZURhdGFJc1ByZW11bCA9IHRydWU7DQorICAgICAgICAgICAgICAgIGVs
c2UNCisgICAgICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFJc1ByZW11bCA9IGZhbHNlOw0K
Kw0KKyAgICAgICAgICAgICAgICAvLyBPcGVyYSBNaW5pIDQgQmV0YSByZXR1cm5zIEJHUkEgaW5z
dGVhZCBvZiBSR0JBDQorDQorICAgICAgICAgICAgICAgIGlmIChkYXRhMlswXSA+IDI1MCAmJiBk
YXRhMlsyXSA8IDUpDQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNCR1JBID0g
dHJ1ZTsNCisgICAgICAgICAgICAgICAgZWxzZQ0KKyAgICAgICAgICAgICAgICAgICAgX2dldElt
YWdlRGF0YUlzQkdSQSA9IGZhbHNlOw0KKw0KKyAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRh
Q2FsaWJyYXRlZCA9IHRydWU7DQorICAgICAgICAgICAgfQ0KKw0KKyAgICAgICAgICAgIC8vIFVu
ZG8gdGhlIEJHUkEgZmxpcHBpbmcNCisgICAgICAgICAgICB2YXIgcmdiYSA9IChfZ2V0SW1hZ2VE
YXRhSXNCR1JBDQorICAgICAgICAgICAgICAgID8gWyBpbWdkYXRhLmRhdGFbMl0sIGltZ2RhdGEu
ZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzBdLCBpbWdkYXRhLmRhdGFbM10gXQ0KKyAgICAgICAgICAg
ICAgICA6IFsgaW1nZGF0YS5kYXRhWzBdLCBpbWdkYXRhLmRhdGFbMV0sIGltZ2RhdGEuZGF0YVsy
XSwgaW1nZGF0YS5kYXRhWzNdIF0pOw0KKw0KKyAgICAgICAgICAgIGlmICghIF9nZXRJbWFnZURh
dGFJc1ByZW11bCkNCisgICAgICAgICAgICAgICAgcmV0dXJuIHJnYmE7DQorDQorICAgICAgICAg
ICAgLy8gVW5kbyB0aGUgcHJlbXVsdGlwbHlpbmcNCisgICAgICAgICAgICBpZiAocmdiYVszXSA9
PSAwKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gWyAwLCAwLCAwLCAwIF07DQorICAgICAgICAg
ICAgZWxzZQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgdmFyIGEgPSByZ2JhWzNd
IC8gMjU1Ow0KKyAgICAgICAgICAgICAgICByZXR1cm4gWw0KKyAgICAgICAgICAgICAgICAgICAg
TWF0aC5yb3VuZChyZ2JhWzBdL2EpLA0KKyAgICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChy
Z2JhWzFdL2EpLA0KKyAgICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChyZ2JhWzJdL2EpLA0K
KyAgICAgICAgICAgICAgICAgICAgcmdiYVszXQ0KKyAgICAgICAgICAgICAgICBdOw0KKyAgICAg
ICAgICAgIH0NCisgICAgICAgIH0NCisgICAgfQ0KKw0KKyAgICB0cnkgeyBjdHggPSBjYW52YXMu
Z2V0Q29udGV4dCgnb3BlcmEtMmRnYW1lJyk7IH0gY2F0Y2ggKGUpIHsgLyogRmlyZWZveCB0aHJv
d3MgKi8gfQ0KKyAgICBpZiAoY3R4ICYmIHR5cGVvZihjdHguZ2V0UGl4ZWwpICE9ICd1bmRlZmlu
ZWQnKQ0KKyAgICB7DQorICAgICAgICB0cnkgew0KKyAgICAgICAgICAgIHZhciBjID0gY3R4Lmdl
dFBpeGVsKHgsIHkpOw0KKyAgICAgICAgfSBjYXRjaCAoZSkgew0KKyAgICAgICAgICAgIC8vIHBy
b2JhYmx5IGEgc2VjdXJpdHkgZXhjZXB0aW9uIGNhdXNlZCBieSBoYXZpbmcgZHJhd24NCisgICAg
ICAgICAgICAvLyBkYXRhOiBVUkxzIG9udG8gdGhlIGNhbnZhcw0KKyAgICAgICAgICAgIGMgPSBu
dWxsOw0KKyAgICAgICAgfQ0KKyAgICAgICAgaWYgKGMpDQorICAgICAgICB7DQorICAgICAgICAg
ICAgdmFyIG1hdGNoZXMgPSAvXnJnYmFcKChcZCspLCAoXGQrKSwgKFxkKyksIChbXGRcLl0rKVwp
JC8uZXhlYyhjKTsNCisgICAgICAgICAgICBpZiAobWF0Y2hlcykNCisgICAgICAgICAgICAgICAg
cmV0dXJuIFsgbWF0Y2hlc1sxXSwgbWF0Y2hlc1syXSwgbWF0Y2hlc1szXSwgTWF0aC5yb3VuZCht
YXRjaGVzWzRdKjI1NSkgXTsNCisgICAgICAgICAgICBtYXRjaGVzID0gL14jKC4uKSguLikoLi4p
JC8uZXhlYyhjKTsNCisgICAgICAgICAgICBpZiAobWF0Y2hlcykNCisgICAgICAgICAgICAgICAg
cmV0dXJuIFsgX2hleDJkZWMobWF0Y2hlc1sxXSksIF9oZXgyZGVjKG1hdGNoZXNbMl0pLCBfaGV4
MmRlYyhtYXRjaGVzWzNdKSwgMjU1IF07DQorICAgICAgICB9DQorICAgIH0NCisgICAgLy9fd2Fy
bigiKENhbid0IHRlc3QgcGl4ZWwgdmFsdWUpIik7DQorICAgIF9tYW51YWxfY2hlY2sgPSB0cnVl
Ow0KKyAgICByZXR1cm4gdW5kZWZpbmVkOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0UGl4ZWwo
Y2FudmFzLCB4LHksIHIsZyxiLGEsIHBvcywgY29sb3VyKQ0KK3sNCisgICAgX2Fzc2VydGVkID0g
dHJ1ZTsNCisgICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpOw0KKyAgICBpZiAoYyAm
JiAhIChjWzBdID09IHIgJiYgY1sxXSA9PSBnICYmIGNbMl0gPT0gYiAmJiBjWzNdID09IGEpKQ0K
KyAgICAgICAgX2ZhaWwoJ0ZhaWxlZCBhc3NlcnRpb246IGdvdCBwaXhlbCBbJyArIGMgKyAnXSBh
dCAoJyt4KycsJyt5KycpLCBleHBlY3RlZCBbJytyKycsJytnKycsJytiKycsJythKyddJyk7DQor
fQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRQaXhlbEFwcHJveChjYW52YXMsIHgseSwgcixnLGIsYSwg
cG9zLCBjb2xvdXIsIHRvbGVyYW5jZSkNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAg
IHZhciBjID0gX2dldFBpeGVsKGNhbnZhcywgeCx5KTsNCisgICAgaWYgKGMpDQorICAgIHsNCisg
ICAgICAgIHZhciBkaWZmID0gTWF0aC5tYXgoTWF0aC5hYnMoY1swXS1yKSwgTWF0aC5hYnMoY1sx
XS1nKSwgTWF0aC5hYnMoY1syXS1iKSwgTWF0aC5hYnMoY1szXS1hKSk7DQorICAgICAgICBpZiAo
ZGlmZiA+IHRvbGVyYW5jZSkNCisgICAgICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjog
Z290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywn
K2crJywnK2IrJywnK2ErJ10gKy8tICcrdG9sZXJhbmNlKTsNCisgICAgfQ0KK30NCisNCitmdW5j
dGlvbiBfYWRkVGVzdCh0ZXN0KQ0KK3sNCisgICAgdmFyIGRlZmVycmVkID0gZmFsc2U7DQorICAg
IHdpbmRvdy5kZWZlclRlc3QgPSBmdW5jdGlvbiAoKSB7IGRlZmVycmVkID0gdHJ1ZTsgfTsNCisg
ICAgZnVuY3Rpb24gZW5kVGVzdCgpDQorICAgIHsNCisgICAgICAgIGlmIChfZmFpbGVkKSAvLyB0
ZXN0IGZhaWxlZA0KKyAgICAgICAgew0KKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxl
bWVudC5jbGFzc05hbWUgKz0gJyBmYWlsJzsNCisgICAgICAgICAgICB3aW5kb3cuX3Rlc3RTdGF0
dXMgPSBbJ2ZhaWwnLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZCcpLmlubmVySFRNTF07DQor
ICAgICAgICB9DQorICAgICAgICBlbHNlIGlmIChfbWFudWFsX2NoZWNrIHx8ICFfYXNzZXJ0ZWQp
DQorICAgICAgICB7IC8vIHRlc3QgY2FzZSBleHBsaWNpdGx5IGFza2VkIGZvciBhIG1hbnVhbCBj
aGVjaywgb3Igbm8gYXV0b21hdGljIGFzc2VydGlvbnMgd2VyZSBwZXJmb3JtZWQNCisgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZCcpLmlubmVySFRNTCArPSAnPGxpPkNhbm5v
dCBhdXRvbWF0aWNhbGx5IHZlcmlmeSByZXN1bHQnOw0KKyAgICAgICAgICAgIGRvY3VtZW50LmRv
Y3VtZW50RWxlbWVudC5jbGFzc05hbWUgKz0gJyBuZWVkc19jaGVjayc7DQorICAgICAgICAgICAg
d2luZG93Ll90ZXN0U3RhdHVzID0gWydjaGVjaycsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdk
JykuaW5uZXJIVE1MXTsNCisgICAgICAgIH0NCisgICAgICAgIGVsc2UgLy8gdGVzdCBzdWNjZWVk
ZWQNCisgICAgICAgIHsNCisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZCcp
LmlubmVySFRNTCArPSAnPGxpPlBhc3NlZCc7DQorICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1l
bnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIHBhc3MnOw0KKyAgICAgICAgICAgIHdpbmRvdy5fdGVz
dFN0YXR1cyA9IFsncGFzcycsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1M
XTsNCisgICAgICAgIH0NCisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
DQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOw0KKyAgICB9
DQorICAgIHdpbmRvdy5lbmRUZXN0ID0gZW5kVGVzdDsNCisgICAgd2luZG93LndyYXBGdW5jdGlv
biA9IGZ1bmN0aW9uIChmKQ0KKyAgICB7DQorICAgICAgICByZXR1cm4gZnVuY3Rpb24oKQ0KKyAg
ICAgICAgew0KKyAgICAgICAgICAgIHRyeQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAg
ICAgZi5hcHBseShudWxsLCBhcmd1bWVudHMpOw0KKyAgICAgICAgICAgIH0NCisgICAgICAgICAg
ICBjYXRjaCAoZSkNCisgICAgICAgICAgICB7DQorICAgICAgICAgICAgICAgIF9mYWlsKCdBYm9y
dGVkIHdpdGggZXhjZXB0aW9uOiAnICsgZS5tZXNzYWdlKTsNCisgICAgICAgICAgICB9DQorICAg
ICAgICAgICAgZW5kVGVzdCgpOw0KKyAgICAgICAgfQ0KKyAgICB9DQorDQorICAgIHdpbmRvdy5v
bmxvYWQgPSBmdW5jdGlvbiAoKQ0KKyAgICB7DQorICAgICAgICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKSB7DQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFz
VGV4dCgpOw0KKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUo
KTsNCisgICAgICAgIH0NCisgICAgICAgIHRyeQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIHZh
ciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYycpOw0KKyAgICAgICAgICAgIHZh
ciBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTsNCisgICAgICAgICAgICB0ZXN0KGNhbnZh
cywgY3R4KTsNCisgICAgICAgIH0NCisgICAgICAgIGNhdGNoIChlKQ0KKyAgICAgICAgew0KKyAg
ICAgICAgICAgIF9mYWlsKCdBYm9ydGVkIHdpdGggZXhjZXB0aW9uOiAnICsgZS5tZXNzYWdlKTsN
CisgICAgICAgICAgICBkZWZlcnJlZCA9IGZhbHNlOyAvLyBjYW5jZWwgYW55IGRlZmVyZW5jZQ0K
KyAgICAgICAgfQ0KKw0KKyAgICAgICAgaWYgKCEgZGVmZXJyZWQpDQorICAgICAgICAgICAgZW5k
VGVzdCgpOw0KKyAgICB9Ow0KK30NCisNCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJ
bWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKKzwg
W2luZGV4XSA+CitzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCitkcmF3SW1hZ2Ugb2YgdW5jbGVh
biBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcworQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQxIEBACis8
IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmNh
bnZhczwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBo
cmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJ
bWFnZS5pbWFnZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jl
YXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Cis8Ym9keSBjbGFzcz0i
c2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0
bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPiZs
dDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
aHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1s
Ij5kcmF3SW1hZ2U8L2E+LmNhbnZhczwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+ZHJhd0ltYWdlIG9m
IHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2
IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0
ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj5zZWN1cml0eS5kcmF3SW1hZ2UuY2Fu
dmFzPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRw
dXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0
PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2Nh
bnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNh
bnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2Fu
dmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBj
dHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7CitjdHguZHJhd0ltYWdlKGNhbnZh
czIsIDAsIDApOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9
CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2Fu
dmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNv
dXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1h
Z2UuaW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5
LmRyYXdJbWFnZS5pbWFnZQorZHJhd0ltYWdlIG9mIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlIHNlY3VyaXR5LnRvRGF0YVVSTCBzZWN1cml0eS5nZXRJbWFnZURhdGEKK0FjdHVh
bCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRl
c3Q6IHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVz
dHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5j
c3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNp
ZGVyYW5nZS5odG1sIiB0aXRsZT0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2Ui
PgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwi
IHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KKzxib2R5IGNsYXNzPSJzaG93X291
dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5n
ZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gdG9EYXRhVVJMLmpwZWcucXVhbGl0eS5v
dXRzaWRlcmFuZ2UiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4K
KyA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIGFjY2Vzc2tleT0ibiIg
dGl0bGU9IltuXSBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4mZ3Q7PC9hPgorPGgxPjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5kcmF3SW1hZ2UuaHRtbCI+ZHJhd0ltYWdlPC9hPi5pbWFnZTwvaDE+Cis8cCBjbGFzcz0i
ZGVzYyI+ZHJhd0ltYWdlIG9mIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZh
cyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+
Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFn
ZSI+c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlPC9hPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0
ZXN0cmVmcy5zZWN1cml0eS50b0RhdGFVUkwiPnNlY3VyaXR5LnRvRGF0YVVSTDwvYT4KKzxsaT48
YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZ2V0SW1hZ2VEYXRhIj5zZWN1cml0
eS5nZXRJbWFnZURhdGE8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+
QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0i
MTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRl
bnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3Qo
ZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKworY3R4LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7
IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5h
bGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRv
RGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURh
dGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7
IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURh
dGEoMCwgMCwgMSwgMSkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDov
L2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxs
b3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5maWxsU3R5bGUKK1NldHRpbmcgZmlsbFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNs
ZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBz
ZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIEJ1Z3ppbGxhCitBY3R1YWwgb3V0cHV0OgorUGFzc2Vk
CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDMgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxl
PkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGU8L3RpdGxlPgor
PHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHku
cGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1h
Z2UuZmlsbFN0eWxlIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJv
a2VTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0i
W3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4mbHQ7PC9hPgorIDxhIGhyZWY9
ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5o
dG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5o
dG1sIj5jYW52YXM8L2E+LmZpbGxTdHlsZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBm
aWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52
YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVs
PgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2Fu
dmFzIj5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgorPGxpPjxhIGhyZWY9Imh0dHBzOi8v
YnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+
Cis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgor
PGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAg
Y2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKwor
PHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4
KSB7CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7Citj
YW52YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2Fu
dmFzMi5nZXRDb250ZXh0KCcyZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Cit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNh
bnZhczIsICdyZXBlYXQnKTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxTdHlsZSA9ICdy
ZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNh
dGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJz
aG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAo
ZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxk
IHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKwor
fSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3Bo
aWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+
CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCitT
ZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtl
cyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VT
dHlsZS5jYW52YXMgQnVnemlsbGEKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFz
IHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlPC90aXRsZT4KKzxzY3Jp
cHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0
bWwiIHRpdGxlPSJzZWN1cml0eS5kYXRhVVJJIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+
Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwi
IGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0
eWxlIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJl
Zj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJp
dHkuZGF0YVVSSSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5z
ZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJu
PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8
L2E+LnN0cm9rZVN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIHN0cm9rZVN0eWxl
IHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48
YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFzIj5z
ZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXM8L2E+Cis8bGk+PGEgaHJlZj0iaHR0cHM6Ly9idWd6
aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwvYT4KKzwv
dWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2Fu
dmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFz
cz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwg
aWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsK
KwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZh
czIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMy
LmdldENvbnRleHQoJzJkJyk7CitjdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFz
MiwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0eWxlID0gcDsKK2N0eC5zdHJva2VTdHlsZSA9ICdy
ZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNh
dGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJz
aG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAo
ZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxk
IHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKwor
fSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3Bo
aWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+
CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRp
bWluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsOCBAQAorPCBbaW5kZXhd
ID4KK3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZworUGF0dGVybiBzYWZldHkgZGVwZW5k
cyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIg
aXQgc3RpbGwgaXMgY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0IHNlY3VyaXR5LmZp
bGxTdHlsZS5jYW52YXMKK0Rpc2FncmVlcyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgorQWN0
dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnRpbWluZy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ3IEBACis8IURPQ1RZUEUgaHRt
bD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nPC90
aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mi
PgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPgorPGJvZHkg
Y2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mi
PiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJz
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxl
PSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEg
aHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFzPC9hPi50aW1pbmc8L2gxPgorPHAgY2xhc3M9ImRl
c2MiPlBhdHRlcm4gc2FmZXR5IGRlcGVuZHMgb24gd2hldGhlciB0aGUgc291cmNlIHdhcyBvcmln
aW4tY2xlYW4sIG5vdCBvbiB3aGV0aGVyIGl0IHN0aWxsIGlzIGNsZWFuPC9wPgorPGRpdiBjbGFz
cz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJl
ZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5
bGUuY2FudmFzPC9hPgorCis8L3VsPgorPC9kaXY+Cis8cCBjbGFzcz0ibm90ZXMiPkRpc2FncmVl
cyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgorPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91
dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWln
aHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwv
Y2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24o
Y2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdj
YW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFy
IGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmZpbGxTdHlsZSA9ICcjMGYw
JzsKK2N0eDIuZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Cit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0
ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKK2N0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOyAvLyBtYWtlIGNhbnZhczIgb3JpZ2luLXVuY2xl
YW4KK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOworY2Fu
dmFzLnRvRGF0YVVSTCgpOworY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKK19hc3NlcnQo
dHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCisKKworfSk7
Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxp
cC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY3Jl
YXRlCitDcmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFz
IG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdGFydAorQWN0dWFsIG91dHB1
dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVh
dGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDM3IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJp
dHkucGF0dGVybi5jcmVhdGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Nj
cmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5r
IHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiB0aXRsZT0i
c2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3Vy
aXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPgor
PGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LmRyYXdJ
bWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJ
bWFnZS5jYW52YXMiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4K
KyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0
bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyb3NzIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5w
YXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LmNyZWF0ZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+Q3Jl
YXRpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhlIGNhbnZhcyBvcmlnaW4t
dW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEg
aHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0eS5zdGFydDwv
YT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0Ojwv
cD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAi
PjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+
CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMs
IGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2NhbnZhcy50b0RhdGFVUkwoKTsKK2N0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7CitfYXNzZXJ0KHRydWUsICJ0cnVlIik7IC8vIG9rYXkg
aWYgdGhlcmUgd2FzIG5vIGV4Y2VwdGlvbgorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0i
aHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlk
PSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKKzwg
W2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNyb3NzCitVc2luZyBhbiB1bmNsZWFuIHBhdHRl
cm4gbWFrZXMgdGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVy
biBjYW52YXMKK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0cHV0OgorUGFz
c2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDQg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJu
LmNyb3NzPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0
ZXJuLmNyZWF0ZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4K
Kzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmNyZWF0ZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVy
bi5jcmVhdGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8
YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNjZXNza2V5PSJu
IiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmd0OzwvYT4KKzxo
MT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi5jcm9zczwvaDE+Cis8cCBjbGFz
cz0iZGVzYyI+VXNpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIG1ha2VzIHRoZSB0YXJnZXQgY2FudmFz
IG9yaWdpbi11bmNsZWFuLCBub3QgdGhlIHBhdHRlcm4gY2FudmFzPC9wPgorPGRpdiBjbGFzcz0i
cmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMu
c2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxw
IGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9
Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlM
IChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNj
cmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOwor
Y2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcp
OwordmFyIHAgPSBjdHgyLmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ll
bGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY3R4LmZpbGxTdHlsZSA9IHA7CitjdHguZmlsbFJlY3Qo
MCwgMCwgMTAwLCA1MCk7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRh
VVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQo
X3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9
Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEp
Iik7IH0KK2NhbnZhczIudG9EYXRhVVJMKCk7CitjdHgyLmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KTsKKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9j
YW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJl
c291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3
IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUKK1NldHRp
bmcgZmlsbFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0
eWxlLmltYWdlCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxT
dHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MzggQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLmZpbGxTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwv
c2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxp
bmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIg
dGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Cis8bGluayByZWw9Im5leHQi
IGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1
dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIg
YWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+
Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxl
PSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mZ3Q7PC9hPgorPGgxPjxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5z
ZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LmZpbGxTdHlsZTwvaDE+Cis8cCBjbGFzcz0i
ZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdp
biBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0i
cmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMu
c2VjdXJpdHkuZmlsbFN0eWxlLmltYWdlIj5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2U8L2E+CisK
KzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8
Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBj
bGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8
dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgp
IHsKKwordmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
eWVsbG93LnBuZycpLCAncmVwZWF0Jyk7CitjdHguZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsU3R5
bGUgPSAncmVkJzsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwo
KTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhy
b3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3Ry
eSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0g
Y2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwg
InNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsg
fQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nh
bnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVz
b3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDcgQEAKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxl
CitTZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4g
aW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJp
dHkuc3Ryb2tlU3R5bGUuaW1hZ2UKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
aW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRl
c3Q6IHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGU8L3RpdGxlPgorPHNjcmlwdCBz
cmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5j
YW52YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxs
U3R5bGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5z
dHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5
bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0g
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mbHQ7PC9hPgorIDxhIGhyZWY9Imlu
ZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnN0cm9rZVN0eWxlIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3Vy
aXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0
bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuaHRt
bCI+aW1hZ2U8L2E+LnN0cm9rZVN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIHN0
cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMg
dGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5j
ZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0cm9r
ZVN0eWxlLmltYWdlIj5zZWN1cml0eS5zdHJva2VTdHlsZS5pbWFnZTwvYT4KKworPC91bD4KKzwv
ZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9
ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxs
YmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+
PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIg
cCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5n
JyksICdyZXBlYXQnKTsKK2N0eC5zdHJva2VTdHlsZSA9IHA7CitjdHguc3Ryb2tlU3R5bGUgPSAn
cmVkJzsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZh
ciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2gg
KGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3Vs
ZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorCisK
K30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9w
aGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2Ui
PgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAK
KzwgW2luZGV4XSA+CitzZWN1cml0eS5yZXNldAorUmVzZXR0aW5nIHRoZSBjYW52YXMgc3RhdGUg
ZG9lcyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVhbiBmbGFnCitSZWZlcmVuY2VzOiBpbml0aWFs
LnJlc2V0CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5y
ZXNldC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MzggQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5yZXNl
dDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVm
PSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kYXRhVVJJIj4KKzxsaW5r
IHJlbD0ibmV4dCIgaHJlZj0iMmQuZ2V0Y29udGV4dC5leGlzdHMuaHRtbCIgdGl0bGU9IjJkLmdl
dGNvbnRleHQuZXhpc3RzIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBo
cmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1
cml0eS5kYXRhVVJJIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+
CisgPGEgaHJlZj0iMmQuZ2V0Y29udGV4dC5leGlzdHMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRs
ZT0iW25dIDJkLmdldGNvbnRleHQuZXhpc3RzIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4
LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi5yZXNldDwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+
UmVzZXR0aW5nIHRoZSBjYW52YXMgc3RhdGUgZG9lcyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVh
biBmbGFnPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBo
cmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuaW5pdGlhbC5yZXNldCI+aW5pdGlhbC5yZXNldDwvYT4K
KworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4K
KzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxw
IGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisK
Kzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0
eCkgeworCitjYW52YXMud2lkdGggPSA1MDsKK2N0eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmlu
YWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50
b0RhdGFVUkwoKSIpOyB9CitjYW52YXMud2lkdGggPSAxMDA7Cit0cnkgeyB2YXIgX3Rocm93biA9
IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7
IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNh
bnZhcy50b0RhdGFVUkwoKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRw
Oi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3Jt
L2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHJldmlzaW9uIDYxNzY2
KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0yODA0LDYgKzI4MDQsNyBAQCBCVUc0NDE1MCBMSU5VWCBERUJV
RyA6IGZhc3QvZm9ybXMvaW5wdXQtCiAKIC8vIE5ldyBjYW52YXMgdGVzdCBzdWl0ZSBmcm9tIGh0
dHA6Ly9waGlsaXAuaHRtbDUub3JnL3Rlc3RzL2NhbnZhcy9zdWl0ZS90ZXN0cy8KIEJVRzIwNTUz
IFNLSVAgREVGRVIgOiBjYW52YXMvcGhpbGlwID0gVEVYVAorQlVHMjA1NTMgU0tJUCBERUZFUiA6
IGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcCA9IFRFWFQKIAogLy8gTmVlZCB0byBkdW1wIGNvbnRl
eHQgbWVudSBpdGVtcyBvbiBldmVudFNlbmRlci5jb250ZXh0Q2xpY2sodHJ1ZSkuCiBCVUdXSzM5
MTA1IDogZWRpdGluZy9zcGVsbGluZy9jb250ZXh0LW1lbnUtc3VnZ2VzdGlvbnMuaHRtbCA9IFRF
WFQKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCShyZXZpc2lvbiA2MTc2NikKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC01ODM4LDYg
KzU4MzgsNyBAQCBmYXN0L2xvYWRlci9yZWN1cnNpdmUtYmVmb3JlLXVubG9hZC1jcmFzCiAKICMg
TmV3IGNhbnZhcyB0ZXN0IHN1aXRlIGZyb20gaHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMv
Y2FudmFzL3N1aXRlL3Rlc3RzLwogY2FudmFzL3BoaWxpcAoraHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwCiAKICMgU2tpcCB0aGlzLCBpdCdzIHBlbmRpbmcgb24gb25lIHBhdGNoIGluIHRoZSBjb21t
aXQgcXVldWUKIGFjY2Vzc2liaWxpdHkvYXJpYS1jb250cm9scy13aXRoLXRhYnMuaHRtbApJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHJldmlzaW9uIDYxNzY2KQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTI3MCwxNCArMjcwLDYg
QEAgY2FudmFzL3BoaWxpcC90ZXN0cy8yZC50ZXh0LmZvbnQucGFyc2UucwogY2FudmFzL3BoaWxp
cC90ZXN0cy8yZC50ZXh0LmZvbnQucGFyc2Uuc2l6ZS5wZXJjZW50YWdlLmRlZmF1bHQuaHRtbAog
Y2FudmFzL3BoaWxpcC90ZXN0cy8yZC50ZXh0LmZvbnQucGFyc2Uuc3lzdGVtLmh0bWwKIGNhbnZh
cy9waGlsaXAvdGVzdHMvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLmh0bWwKLWNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCi1jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvc2l6ZS5hdHRy
aWJ1dGVzLnBhcnNlLm1pbnVzLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvc2l6ZS5hdHRyaWJ1
dGVzLnNldEF0dHJpYnV0ZS5taW51cy5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzL3RvRGF0YVVS
TC5qcGVnLmFscGhhLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2aXNpb24g
NjE3NjYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkp
CkBAIC01MzQ4LDE2ICs1MzQ4LDYgQEAgY2FudmFzL3BoaWxpcC90ZXN0cy9zaXplLmF0dHJpYnV0
ZXMucGFycwogY2FudmFzL3BoaWxpcC90ZXN0cy9zaXplLmF0dHJpYnV0ZXMuc2V0QXR0cmlidXRl
Lm1pbnVzLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvdG9EYXRhVVJMLmpwZWcucXVhbGl0eS5i
YXNpYy5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzL3R5cGUucHJvdG90eXBlLmh0bWwKLWNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCi1jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKLWNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAotY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucmVzZXQuaHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy8yZC5kcmF3SW1hZ2Uu
bm9uZmluaXRlLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvMmQuZHJhd0ltYWdlLmJyb2tlbi5o
dG1sCiAKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCShyZXZpc2lvbiA2MTc2NikKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC04ODgs
NiArODg4LDcgQEAgaW5zcGVjdG9yL3RpbWVsaW5lLXBhaW50Lmh0bWwKIAogIyBOZXcgY2FudmFz
IHRlc3Qgc3VpdGUgZnJvbSBodHRwOi8vcGhpbGlwLmh0bWw1Lm9yZy90ZXN0cy9jYW52YXMvc3Vp
dGUvdGVzdHMvCiBjYW52YXMvcGhpbGlwCitodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAKIAogIyBO
ZWVkIHRvIGR1bXAgY29udGV4dCBtZW51IGl0ZW1zIG9uIGV2ZW50U2VuZGVyLmNvbnRleHRDbGlj
ayh0cnVlKS4gVE9ETzogYWRkIGJ1ZyBudW1iZXIKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM5MTA0CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmls
ZSBtYXJrZWQgYXMgYSBiaW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29j
dGV0LXN0cmVhbQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjptaW1l
LXR5cGUKICAgKyBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCgppVkJPUncwS0dnb0FBQUFOU1Vo
RVVnQUFBR1FBQUFBeUFRTUFBQUNRKyt6OUFBQUFBMUJNVkVYLy93Q0t4dlJGQUFBQUYwbEVRVlI0
Clh1M0FBUTBBQUFCQU1QMVR5MkZ6b2pZQkFyd0FBVU54ak1rQUFBQUFTVVZPUks1Q1lJST0KCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59902</attachid>
            <date>2010-06-28 09:14:16 -0700</date>
            <delta_ts>2010-06-28 10:41:48 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>41279_1.patch</filename>
            <type>text/plain</type>
            <size>74946</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjQgQEAKKzIwMTAtMDYtMjggIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgdG8g
c2ltdWxhdGUgcmVtb3RlIGhvc3QKKyAgICAgICAgYWNjZXNzIGFuZCBwYXNzIHRoZSB0ZXN0cy4g
UmVtb3ZlIHRoZSB0ZXN0cyBmcm9tIE1hYyBhbmQgUXQncyBza2lwcGVkIGZpbGVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQu
dHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVz
ZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRt
bDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
a2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZv
cm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDYtMjggIFNhbSBNYWdudXNvbiAgPHNtYWdudXNvbkBu
ZXRmbGl4LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlh
bnNlbi4KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkg
KzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29v
Z2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzCi1kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotQWN0dWFs
IG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShy
ZXZpc2lvbiA2MjAxMCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQxICswLDAgQEAK
LTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzPC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJh
d0ltYWdlLmltYWdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KLTxib2R5IGNsYXNz
PSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Uu
aHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+
Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0
bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ug
b2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91
dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWln
aHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwv
Y2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24o
Y2FudmFzLCBjdHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdj
YW52YXMnKTsKLWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFy
IGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKLWN0eC5kcmF3SW1hZ2UoY2Fu
dmFzMiwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJM
KCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Ro
cm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10
cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7
IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFn
ZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCklu
ZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5p
bWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2
MjAxMCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJs
b2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNv
bS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCi1kcmF3
SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9E
YXRhVVJMIHNlY3VyaXR5LmdldEltYWdlRGF0YQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0K
SW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdl
LmltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNpb24gNjIwMTApCisrKyBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxl
PkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8L3RpdGxlPgotPHNjcmlwdCBz
cmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVh
bGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgdGl0bGU9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0
c2lkZXJhbmdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNh
bnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Ci08Ym9keSBjbGFz
cz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5v
dXRzaWRlcmFuZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVn
LnF1YWxpdHkub3V0c2lkZXJhbmdlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltp
bmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4K
LTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgot
PHAgY2xhc3M9ImRlc2MiPmRyYXdJbWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVu
Y2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3
SW1hZ2UuaW1hZ2UiPnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvYT4KLTxsaT48YSBocmVmPSJz
cGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkudG9EYXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8
L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0
YSI+c2VjdXJpdHkuZ2V0SW1hZ2VEYXRhPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4K
LV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWN0eC5kcmF3SW1hZ2UoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93
biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBz
cmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cu
cG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MjAxMCkKKysrIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2Nr
ZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95
ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxl
Ci1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0
eWxlLmNhbnZhcyBCdWd6aWxsYQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjIwMTAp
CisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQzICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJl
diIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgot
PHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNj
ZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4m
bHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxl
PSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmd0OzwvYT4KLTxoMT48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFz
cz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2Fu
dmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1
cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgotPGxp
PjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1
NDEyNyI+QnVnemlsbGE8L2E+Ci08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFj
dHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50
KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1
bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgnY2FudmFzJyk7Ci1jYW52YXMyLndpZHRoID0gMTAwOwotY2FudmFzMi5oZWlnaHQgPSA1
MDsKLXZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOwotY3R4Mi5kcmF3SW1hZ2Uo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci12YXIgcCA9IGN0
eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwot
Y3R4LmZpbGxTdHlsZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFz
LnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJM
KCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2Vy
dChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3Jz
Lmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291
cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0
byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwot
PCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCi1TZXR0aW5n
IHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUg
Y2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5j
YW52YXMgQnVnemlsbGEKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiA2MjAxMCkK
KysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURP
Q1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4K
LTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0i
cHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRs
ZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08bGluayByZWw9Im5leHQi
IGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgot
PGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXgu
aHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgotPGgxPjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9
ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2Fu
dmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1
cml0eS5zdHJva2VTdHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwvYT4K
LTxsaT48YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0
Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRo
PSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29u
dGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVz
dChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0
ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZHJhd0lt
YWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdmFyIHAg
PSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7Ci1jdHguc3Ryb2tlU3R5bGUg
PSBwOwotY3R4LnN0cm9rZVN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmlu
YWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50
b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkg
eyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6
Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFz
cz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MjAxMCkKKysrIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVy
bmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRl
eF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nCi1QYXR0ZXJuIHNhZmV0eSBkZXBl
bmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhl
ciBpdCBzdGlsbCBpcyBjbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHku
ZmlsbFN0eWxlLmNhbnZhcwotRGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi1B
Y3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmcuaHRtbAkocmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDQ3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rl
c3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMu
Y3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9
InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+
Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRp
dGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRl
eC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLmZpbGxTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0
ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52
YXM8L2E+LnRpbWluZzwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5k
cyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIg
aXQgc3RpbGwgaXMgY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVs
PgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJp
dHkuc3RhcnQ8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZp
bGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08
L2Rpdj4KLTxwIGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3
YXMiCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMi
IGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFj
ayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91
bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2Fu
dmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9
IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4
dCgnMmQnKTsKLWN0eDIuZmlsbFN0eWxlID0gJyMwZjAnOwotY3R4Mi5maWxsUmVjdCgwLCAwLCAx
MDAsIDUwKTsKLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOwot
Y3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwg
MCk7IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgotY3R4LmZpbGxTdHlsZSA9IHA7Ci1j
dHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Ci1jYW52YXMudG9EYXRhVVJMKCk7Ci1jdHguZ2V0
SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOwotX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlm
IHRoZXJlIHdhcyBubyBleGNlcHRpb24KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBj
bGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw4ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhj
b3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0
dGVybi5jcmVhdGUKLUNyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1
YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlz
aW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNyZWF0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM3ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwv
dGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJz
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19v
dXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBh
Y2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0Ozwv
YT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVy
bjwvYT4uY3JlYXRlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBh
dHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBj
bGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVz
dHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgotCi08L3VsPgotPC9kaXY+
Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIg
Y2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNr
Ij5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3Vs
PgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0g
Y3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwg
J3JlcGVhdCcpOwotY2FudmFzLnRvRGF0YVVSTCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAx
LCAxKTsKLV9hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhj
ZXB0aW9uCi0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
LQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2
MjAxMCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jcm9zcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9j
a2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20v
eWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MKLVVzaW5nIGFu
IHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwg
bm90IHRoZSBwYXR0ZXJuIGNhbnZhcwotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKLUFjdHVh
bCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNp
b24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0NCArMCwwIEBACi08IURPQ1RZ
UEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcm9zczwvdGl0
bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUi
PgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcu
aHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08Ym9keSBjbGFz
cz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUu
aHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4m
bHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9Iltu
XSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5
LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jvc3M8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlVz
aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5j
bGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhczwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVy
ZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0
YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0
cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdp
ZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sg
Y29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRk
VGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVp
Z2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLXZhciBwID0g
Y3R4Mi5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyks
ICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwg
NTApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNh
dGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJz
aG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAo
ZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxk
IHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci1jYW52
YXMyLnRvRGF0YVVSTCgpOwotY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7Ci0KLQotfSk7
Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEs
OSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZm
ZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVy
ZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAot
Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5maWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlz
aW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAg
QEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2Ny
aXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsg
cmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJp
dHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+
Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNj
ZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmx0
OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJb
bl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mZ3Q7PC9hPgotPGgxPjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVz
YyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBp
bWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVm
cyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2Vj
dXJpdHkuZmlsbFN0eWxlLmltYWdlIj5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2U8L2E+Ci0KLTwv
dWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2Fu
dmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFz
cz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwg
aWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsK
LQotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVs
bG93LnBuZycpLCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUg
PSAncmVkJzsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsg
fSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3du
LCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7
IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0
Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNo
b3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQot
Ci0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5j
b20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEg
cGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UKLUFjdHVh
bCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Ci08c2Ny
aXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LmZpbGxTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9
IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJl
Zj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRl
cm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRp
bmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBt
YWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVm
ZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHku
c3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlPC9hPgotCi08L3Vs
PgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZh
cyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9
ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlk
PSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0K
LXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxv
dy5wbmcnKSwgJ3JlcGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHls
ZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9
Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2Vz
LmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRl
eDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0
cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3Vy
aXR5LnJlc2V0Ci1SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUg
b3JpZ2luLWNsZWFuIGZsYWcKLVJlZmVyZW5jZXM6IGluaXRpYWwucmVzZXQKLUFjdHVhbCBvdXRw
dXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCShyZXZpc2lvbiA2MjAxMCkKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDog
c2VjdXJpdHkucmVzZXQ8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Njcmlw
dD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJl
bD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0
YVVSSSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwi
IHRpdGxlPSIyZC5nZXRjb250ZXh0LmV4aXN0cyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQi
PgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRp
dGxlPSJbcF0gc2VjdXJpdHkuZGF0YVVSSSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgotIDxhIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSAyZC5nZXRjb250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KLTxoMT48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgotPHAg
Y2xhc3M9ImRlc2MiPlJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRo
ZSBvcmlnaW4tY2xlYW4gZmxhZzwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08
dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRp
YWwucmVzZXQ8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFs
IG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9w
PjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rp
b24oY2FudmFzLCBjdHgpIHsKLQotY2FudmFzLndpZHRoID0gNTA7Ci1jdHguZHJhd0ltYWdlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24g
PSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0
aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotY2FudmFzLndpZHRoID0gMTAwOwotdHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90
aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cg
ZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08
aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmNzcwkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTM0IEBACitodG1sLmZhaWwgeworCWJhY2tncm91bmQ6ICNmNjY7Cit9CitodG1sLnBh
c3MgeworCWJhY2tncm91bmQ6ICM2ZjY7Cit9CitodG1sLm5lZWRzX2NoZWNrIHsKKwliYWNrZ3Jv
dW5kOiAjOTlmOworfQorCitib2R5IHsKKwlmb250LXNpemU6IHNtYWxsOworCWZvbnQtZmFtaWx5
OiBzYW5zLXNlcmlmOworCWNvbG9yOiBibGFjazsKK30KKworYTpsaW5rIHsKKwljb2xvcjogIzAw
YzsKK30KK2E6dmlzaXRlZCB7CisJY29sb3I6ICM4MDg7Cit9CisKK2JvZHkuZnJhbWVkIHsKKwlm
b250LXNpemU6IHgtc21hbGw7Cit9CisKK2gxIHsKKwlmb250LXNpemU6IGxhcmdlcjsKKwltYXJn
aW46IDA7CisJcGFkZGluZy1sZWZ0OiAwLjVlbTsKKwl0ZXh0LWluZGVudDogLTAuNWVtOworfQor
CitwIHsKKwltYXJnaW46IDA7Cit9CisKK3Aubm90ZXMgeworCW1hcmdpbi1ib3R0b206IDAuNWVt
OworCWZvbnQtc3R5bGU6IGl0YWxpYzsKK30KKwordWwgeworCW1hcmdpbjogMDsKKwltYXJnaW4t
Ym90dG9tOiAwLjVlbTsKKwlwYWRkaW5nOiAwOworCXBhZGRpbmctbGVmdDogMWVtOworfQorCisu
cmVmcyB7CisJZm9udC1zdHlsZTogaXRhbGljOworCW1hcmdpbi1ib3R0b206IDAuNWVtOworfQor
CisucmVmcyB1bCB7CisJZGlzcGxheTogaW5saW5lOworCW1hcmdpbjogMDsKKwlwYWRkaW5nOiAw
OworfQorCisucmVmcyBsaSB7CisJZGlzcGxheTogaW5saW5lOworCWxpc3Qtc3R5bGUtdHlwZTog
bm9uZTsKKwltYXJnaW46IDA7CisJcGFkZGluZzogMDsKK30KKworY2FudmFzIHsKKwlkaXNwbGF5
OiBub25lOworCXZpc2liaWxpdHk6IGhpZGRlbjsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOwor
CWJhY2tncm91bmQ6IHVybChpbWFnZXMvYmFja2dyb3VuZC5wbmcpOworfQorCitpbWcuZXhwZWN0
ZWQgeworCWRpc3BsYXk6IG5vbmU7CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3Jv
dW5kOiB1cmwoaW1hZ2VzL2JhY2tncm91bmQucG5nKTsKK30KKworaWZyYW1lIHsKKwlib3JkZXI6
IDJweCAjZjBmIHNvbGlkOworfQorCisub3V0cHV0IHsKKwlkaXNwbGF5OiBub25lOworfQorCisu
c2hvd19vdXRwdXQgLm91dHB1dCwgLm5lZWRzX2NoZWNrIC5vdXRwdXQgIHsKKwlkaXNwbGF5OiBi
bG9jayAhaW1wb3J0YW50OworCXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKK30KKwor
LnNob3dfb3V0cHV0ICNzaG93X291dHB1dCB7CisJZGlzcGxheTogbm9uZTsKK30KKworLnJlc291
cmNlIHsKKwl2aXNpYmlsaXR5OiBoaWRkZW47CisJaGVpZ2h0OiAwOworfQorCisuZmFsbGJhY2sg
eworCWZvbnQtc2l6ZTogMmVtOworCWZvbnQtd2VpZ2h0OiBib2xkOworCWNvbG9yOiAjYTAwOwor
fQorCisKK2h0bWwubWluaW1hbCBib2R5IHsKKwljb2xvcjogd2hpdGU7Cit9CitodG1sLmZhaWwu
bWluaW1hbCB7CisJYmFja2dyb3VuZDogI2YwMDsKK30KK2h0bWwucGFzcy5taW5pbWFsIHsKKwli
YWNrZ3JvdW5kOiAjMDgwOworfQoraHRtbC5uZWVkc19jaGVjay5taW5pbWFsIHsKKwliYWNrZ3Jv
dW5kOiAjMDA4OworfQorLm1pbmltYWwgI2QgeworCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsK
K30KKy5taW5pbWFsIC5leHBlY3RlZHRleHQgeworCXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0
YW50OworfQorI3Bhc3N0ZXh0LCAjZmFpbHRleHQgeworCWRpc3BsYXk6IG5vbmU7Cit9CisubWlu
aW1hbC5wYXNzICNwYXNzdGV4dCwgLm1pbmltYWwuZmFpbCAjZmFpbHRleHQgeworCWRpc3BsYXk6
IGJsb2NrOworfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNjEgQEAKK2Z1bmN0aW9u
IF92YWxUb1N0cmluZyh2YWwpDQorew0KKyAgICBpZiAodmFsID09PSB1bmRlZmluZWQgfHwgdmFs
ID09PSBudWxsKQ0KKyAgICAgICAgcmV0dXJuICdbJyArIHR5cGVvZih2YWwpICsgJ10nOw0KKyAg
ICByZXR1cm4gdmFsLnRvU3RyaW5nKCkgKyAnWycgKyB0eXBlb2YodmFsKSArICddJzsNCit9DQor
DQordmFyIF9oZXgyZGVjX3RhYmxlID0gew0KKyAgICAwOjAsIDE6MSwgMjoyLCAzOjMsIDQ6NCwg
NTo1LCA2OjYsIDc6NywgODo4LCA5OjksDQorICAgIGE6MTAsIGI6MTEsIGM6MTIsIGQ6MTMsIGU6
MTQsIGY6MTUsDQorICAgIEE6MTAsIEI6MTEsIEM6MTIsIEQ6MTMsIEU6MTQsIEY6MTUNCit9Ow0K
K2Z1bmN0aW9uIF9oZXgyZGVjKGhleCkNCit7DQorICAgIHJldHVybiBfaGV4MmRlY190YWJsZVto
ZXguY2hhckF0KDApXSoxNiArIF9oZXgyZGVjX3RhYmxlW2hleC5jaGFyQXQoMSldOw0KK30NCisN
Cit2YXIgX2ZhaWxlZCA9IGZhbHNlOw0KK3ZhciBfYXNzZXJ0ZWQgPSBmYWxzZTsNCitmdW5jdGlv
biBfd2Fybih0ZXh0KQ0KK3sNCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaScpKS5hcHBlbmRDaGlsZChkb2N1bWVu
dC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSk7DQorfQ0KK2Z1bmN0aW9uIF9mYWlsKHRleHQpDQorew0K
KyAgICBfd2Fybih0ZXh0KTsNCisgICAgX2ZhaWxlZCA9IHRydWU7DQorfQ0KKw0KK2Z1bmN0aW9u
IF9hc3NlcnQoY29uZCwgdGV4dCkNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlm
ICghIGNvbmQpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogJyArIHRleHQpOw0K
K30NCisNCitmdW5jdGlvbiBfYXNzZXJ0U2FtZShhLCBiLCB0ZXh0X2EsIHRleHRfYikNCit7DQor
ICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmIChhICE9PSBiKQ0KKyAgICAgICAgX2ZhaWwo
J0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgPT09ICcgKyB0ZXh0X2IgKw0KKyAgICAg
ICAgICAgICAgICAnIChnb3QgJyArIF92YWxUb1N0cmluZyhhKSArICcsIGV4cGVjdGVkICcgKyBf
dmFsVG9TdHJpbmcoYikgKyAnKScpOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0RGlmZmVyZW50
KGEsIGIsIHRleHRfYSwgdGV4dF9iKQ0KK3sNCisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisgICAg
aWYgKGEgPT09IGIpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9h
ICsgJyAhPT0gJyArIHRleHRfYiArDQorICAgICAgICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRv
U3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgbm90ICcgKyBfdmFsVG9TdHJpbmcoYikgKyAnKScpOw0K
K30NCisNCitmdW5jdGlvbiBfYXNzZXJ0RXF1YWwoYSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0K
KyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBpZiAoYSAhPSBiKQ0KKyAgICAgICAgX2ZhaWwo
J0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgPT0gJyArIHRleHRfYiArDQorICAgICAg
ICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRvU3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgJyArIF92
YWxUb1N0cmluZyhiKSArICcpJyk7DQorfQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRNYXRjaChhLCBi
LCB0ZXh0X2EsIHRleHRfYikNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmICgh
IGEubWF0Y2goYikpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9h
ICsgJyBtYXRjaGVzICcgKyB0ZXh0X2IgKw0KKyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92
YWxUb1N0cmluZyhhKSArICcpJyk7DQorfQ0KKw0KKw0KK3ZhciBfbWFudWFsX2NoZWNrID0gZmFs
c2U7DQorDQorZnVuY3Rpb24gX3JlcXVpcmVNYW51YWxDaGVjaygpDQorew0KKyAgICBfbWFudWFs
X2NoZWNrID0gdHJ1ZTsNCit9DQorDQorZnVuY3Rpb24gX2NyYXNoKCkNCit7DQorICAgIF9mYWls
KCdBYm9ydGVkIGR1ZSB0byBwcmVkaWN0ZWQgY3Jhc2gnKTsNCit9DQorDQordmFyIF9nZXRJbWFn
ZURhdGFDYWxpYnJhdGVkID0gZmFsc2U7DQordmFyIF9nZXRJbWFnZURhdGFJc1ByZW11bCwgX2dl
dEltYWdlRGF0YUlzQkdSQTsNCisNCitmdW5jdGlvbiBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpDQor
ew0KKyAgICB2YXIgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7DQorICAgIGlmIChjdHgg
JiYgdHlwZW9mKGN0eC5nZXRJbWFnZURhdGEpICE9ICd1bmRlZmluZWQnKQ0KKyAgICB7DQorICAg
ICAgICB0cnkgew0KKyAgICAgICAgICAgIHZhciBpbWdkYXRhID0gY3R4LmdldEltYWdlRGF0YSh4
LCB5LCAxLCAxKTsNCisgICAgICAgIH0gY2F0Y2ggKGUpIHsNCisgICAgICAgICAgICAvLyBwcm9i
YWJseSBhIHNlY3VyaXR5IGV4Y2VwdGlvbiBjYXVzZWQgYnkgaGF2aW5nIGRyYXduDQorICAgICAg
ICAgICAgLy8gZGF0YTogVVJMcyBvbnRvIHRoZSBjYW52YXMNCisgICAgICAgICAgICBpbWdkYXRh
ID0gbnVsbDsNCisgICAgICAgIH0NCisgICAgICAgIGlmIChpbWdkYXRhKQ0KKyAgICAgICAgew0K
KyAgICAgICAgICAgIC8vIFdvcmsgYXJvdW5kIGdldEltYWdlRGF0YSBidWdzLCBzaW5jZSB3ZSB3
YW50IHRoZSBvdGhlciB0ZXN0cyB0bw0KKyAgICAgICAgICAgIC8vIGNhcnJ5IG9uIHdvcmtpbmcg
YXMgd2VsbCBhcyBwb3NzaWJsZQ0KKyAgICAgICAgICAgIGlmICghIF9nZXRJbWFnZURhdGFDYWxp
YnJhdGVkKQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgdmFyIGMyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7DQorICAgICAgICAgICAgICAgIGMyLndpZHRoID0g
YzIuaGVpZ2h0ID0gMTsNCisgICAgICAgICAgICAgICAgdmFyIGN0eDIgPSBjMi5nZXRDb250ZXh0
KCcyZCcpOw0KKyAgICAgICAgICAgICAgICBjdHgyLmZpbGxTdHlsZSA9ICdyZ2JhKDAsIDI1NSwg
MjU1LCAwLjUpJzsNCisgICAgICAgICAgICAgICAgY3R4Mi5maWxsUmVjdCgwLCAwLCAxLCAxKTsN
CisgICAgICAgICAgICAgICAgdmFyIGRhdGEyID0gY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwg
MSkuZGF0YTsNCisNCisgICAgICAgICAgICAgICAgLy8gRmlyZWZveCByZXR1cm5zIHByZW11bHRp
cGxpZWQgYWxwaGENCisNCisgICAgICAgICAgICAgICAgaWYgKGRhdGEyWzFdID4gMTAwICYmIGRh
dGEyWzFdIDwgMTUwKQ0KKyAgICAgICAgICAgICAgICAgICAgX2dldEltYWdlRGF0YUlzUHJlbXVs
ID0gdHJ1ZTsNCisgICAgICAgICAgICAgICAgZWxzZQ0KKyAgICAgICAgICAgICAgICAgICAgX2dl
dEltYWdlRGF0YUlzUHJlbXVsID0gZmFsc2U7DQorDQorICAgICAgICAgICAgICAgIC8vIE9wZXJh
IE1pbmkgNCBCZXRhIHJldHVybnMgQkdSQSBpbnN0ZWFkIG9mIFJHQkENCisNCisgICAgICAgICAg
ICAgICAgaWYgKGRhdGEyWzBdID4gMjUwICYmIGRhdGEyWzJdIDwgNSkNCisgICAgICAgICAgICAg
ICAgICAgIF9nZXRJbWFnZURhdGFJc0JHUkEgPSB0cnVlOw0KKyAgICAgICAgICAgICAgICBlbHNl
DQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNCR1JBID0gZmFsc2U7DQorDQor
ICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gdHJ1ZTsNCisgICAgICAg
ICAgICB9DQorDQorICAgICAgICAgICAgLy8gVW5kbyB0aGUgQkdSQSBmbGlwcGluZw0KKyAgICAg
ICAgICAgIHZhciByZ2JhID0gKF9nZXRJbWFnZURhdGFJc0JHUkENCisgICAgICAgICAgICAgICAg
PyBbIGltZ2RhdGEuZGF0YVsyXSwgaW1nZGF0YS5kYXRhWzFdLCBpbWdkYXRhLmRhdGFbMF0sIGlt
Z2RhdGEuZGF0YVszXSBdDQorICAgICAgICAgICAgICAgIDogWyBpbWdkYXRhLmRhdGFbMF0sIGlt
Z2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzJdLCBpbWdkYXRhLmRhdGFbM10gXSk7DQorDQor
ICAgICAgICAgICAgaWYgKCEgX2dldEltYWdlRGF0YUlzUHJlbXVsKQ0KKyAgICAgICAgICAgICAg
ICByZXR1cm4gcmdiYTsNCisNCisgICAgICAgICAgICAvLyBVbmRvIHRoZSBwcmVtdWx0aXBseWlu
Zw0KKyAgICAgICAgICAgIGlmIChyZ2JhWzNdID09IDApDQorICAgICAgICAgICAgICAgIHJldHVy
biBbIDAsIDAsIDAsIDAgXTsNCisgICAgICAgICAgICBlbHNlDQorICAgICAgICAgICAgew0KKyAg
ICAgICAgICAgICAgICB2YXIgYSA9IHJnYmFbM10gLyAyNTU7DQorICAgICAgICAgICAgICAgIHJl
dHVybiBbDQorICAgICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHJnYmFbMF0vYSksDQorICAg
ICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHJnYmFbMV0vYSksDQorICAgICAgICAgICAgICAg
ICAgICBNYXRoLnJvdW5kKHJnYmFbMl0vYSksDQorICAgICAgICAgICAgICAgICAgICByZ2JhWzNd
DQorICAgICAgICAgICAgICAgIF07DQorICAgICAgICAgICAgfQ0KKyAgICAgICAgfQ0KKyAgICB9
DQorDQorICAgIHRyeSB7IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCdvcGVyYS0yZGdhbWUnKTsg
fSBjYXRjaCAoZSkgeyAvKiBGaXJlZm94IHRocm93cyAqLyB9DQorICAgIGlmIChjdHggJiYgdHlw
ZW9mKGN0eC5nZXRQaXhlbCkgIT0gJ3VuZGVmaW5lZCcpDQorICAgIHsNCisgICAgICAgIHRyeSB7
DQorICAgICAgICAgICAgdmFyIGMgPSBjdHguZ2V0UGl4ZWwoeCwgeSk7DQorICAgICAgICB9IGNh
dGNoIChlKSB7DQorICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24g
Y2F1c2VkIGJ5IGhhdmluZyBkcmF3bg0KKyAgICAgICAgICAgIC8vIGRhdGE6IFVSTHMgb250byB0
aGUgY2FudmFzDQorICAgICAgICAgICAgYyA9IG51bGw7DQorICAgICAgICB9DQorICAgICAgICBp
ZiAoYykNCisgICAgICAgIHsNCisgICAgICAgICAgICB2YXIgbWF0Y2hlcyA9IC9ecmdiYVwoKFxk
KyksIChcZCspLCAoXGQrKSwgKFtcZFwuXSspXCkkLy5leGVjKGMpOw0KKyAgICAgICAgICAgIGlm
IChtYXRjaGVzKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gWyBtYXRjaGVzWzFdLCBtYXRjaGVz
WzJdLCBtYXRjaGVzWzNdLCBNYXRoLnJvdW5kKG1hdGNoZXNbNF0qMjU1KSBdOw0KKyAgICAgICAg
ICAgIG1hdGNoZXMgPSAvXiMoLi4pKC4uKSguLikkLy5leGVjKGMpOw0KKyAgICAgICAgICAgIGlm
IChtYXRjaGVzKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gWyBfaGV4MmRlYyhtYXRjaGVzWzFd
KSwgX2hleDJkZWMobWF0Y2hlc1syXSksIF9oZXgyZGVjKG1hdGNoZXNbM10pLCAyNTUgXTsNCisg
ICAgICAgIH0NCisgICAgfQ0KKyAgICAvL193YXJuKCIoQ2FuJ3QgdGVzdCBwaXhlbCB2YWx1ZSki
KTsNCisgICAgX21hbnVhbF9jaGVjayA9IHRydWU7DQorICAgIHJldHVybiB1bmRlZmluZWQ7DQor
fQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRQaXhlbChjYW52YXMsIHgseSwgcixnLGIsYSwgcG9zLCBj
b2xvdXIpDQorew0KKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICB2YXIgYyA9IF9nZXRQaXhl
bChjYW52YXMsIHgseSk7DQorICAgIGlmIChjICYmICEgKGNbMF0gPT0gciAmJiBjWzFdID09IGcg
JiYgY1syXSA9PSBiICYmIGNbM10gPT0gYSkpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2Vy
dGlvbjogZ290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsn
K3IrJywnK2crJywnK2IrJywnK2ErJ10nKTsNCit9DQorDQorZnVuY3Rpb24gX2Fzc2VydFBpeGVs
QXBwcm94KGNhbnZhcywgeCx5LCByLGcsYixhLCBwb3MsIGNvbG91ciwgdG9sZXJhbmNlKQ0KK3sN
CisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisgICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4
LHkpOw0KKyAgICBpZiAoYykNCisgICAgew0KKyAgICAgICAgdmFyIGRpZmYgPSBNYXRoLm1heChN
YXRoLmFicyhjWzBdLXIpLCBNYXRoLmFicyhjWzFdLWcpLCBNYXRoLmFicyhjWzJdLWIpLCBNYXRo
LmFicyhjWzNdLWEpKTsNCisgICAgICAgIGlmIChkaWZmID4gdG9sZXJhbmNlKQ0KKyAgICAgICAg
ICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uOiBnb3QgcGl4ZWwgWycgKyBjICsgJ10gYXQgKCcr
eCsnLCcreSsnKSwgZXhwZWN0ZWQgWycrcisnLCcrZysnLCcrYisnLCcrYSsnXSArLy0gJyt0b2xl
cmFuY2UpOw0KKyAgICB9DQorfQ0KKw0KK2Z1bmN0aW9uIF9hZGRUZXN0KHRlc3QpDQorew0KKyAg
ICB2YXIgZGVmZXJyZWQgPSBmYWxzZTsNCisgICAgd2luZG93LmRlZmVyVGVzdCA9IGZ1bmN0aW9u
ICgpIHsgZGVmZXJyZWQgPSB0cnVlOyB9Ow0KKyAgICBmdW5jdGlvbiBlbmRUZXN0KCkNCisgICAg
ew0KKyAgICAgICAgaWYgKF9mYWlsZWQpIC8vIHRlc3QgZmFpbGVkDQorICAgICAgICB7DQorICAg
ICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIGZhaWwnOw0K
KyAgICAgICAgICAgIHdpbmRvdy5fdGVzdFN0YXR1cyA9IFsnZmFpbCcsIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MXTsNCisgICAgICAgIH0NCisgICAgICAgIGVsc2UgaWYg
KF9tYW51YWxfY2hlY2sgfHwgIV9hc3NlcnRlZCkNCisgICAgICAgIHsgLy8gdGVzdCBjYXNlIGV4
cGxpY2l0bHkgYXNrZWQgZm9yIGEgbWFudWFsIGNoZWNrLCBvciBubyBhdXRvbWF0aWMgYXNzZXJ0
aW9ucyB3ZXJlIHBlcmZvcm1lZA0KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdkJykuaW5uZXJIVE1MICs9ICc8bGk+Q2Fubm90IGF1dG9tYXRpY2FsbHkgdmVyaWZ5IHJlc3Vs
dCc7DQorICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAn
IG5lZWRzX2NoZWNrJzsNCisgICAgICAgICAgICB3aW5kb3cuX3Rlc3RTdGF0dXMgPSBbJ2NoZWNr
JywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOw0KKyAgICAgICAgfQ0K
KyAgICAgICAgZWxzZSAvLyB0ZXN0IHN1Y2NlZWRlZA0KKyAgICAgICAgew0KKyAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MICs9ICc8bGk+UGFzc2VkJzsN
CisgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NOYW1lICs9ICcgcGFz
cyc7DQorICAgICAgICAgICAgd2luZG93Ll90ZXN0U3RhdHVzID0gWydwYXNzJywgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOw0KKyAgICAgICAgfQ0KKyAgICAgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikNCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5ub3RpZnlEb25lKCk7DQorICAgIH0NCisgICAgd2luZG93LmVuZFRlc3QgPSBlbmRU
ZXN0Ow0KKyAgICB3aW5kb3cud3JhcEZ1bmN0aW9uID0gZnVuY3Rpb24gKGYpDQorICAgIHsNCisg
ICAgICAgIHJldHVybiBmdW5jdGlvbigpDQorICAgICAgICB7DQorICAgICAgICAgICAgdHJ5DQor
ICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgICBmLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7
DQorICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgIGNhdGNoIChlKQ0KKyAgICAgICAgICAgIHsN
CisgICAgICAgICAgICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1l
c3NhZ2UpOw0KKyAgICAgICAgICAgIH0NCisgICAgICAgICAgICBlbmRUZXN0KCk7DQorICAgICAg
ICB9DQorICAgIH0NCisNCisgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgpDQorICAgIHsN
CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsNCisgICAgICAgICAg
ICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7DQorICAgICAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOw0KKyAgICAgICAgfQ0KKyAgICAgICAgdHJ5
DQorICAgICAgICB7DQorICAgICAgICAgICAgdmFyIGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdjJyk7DQorICAgICAgICAgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcy
ZCcpOw0KKyAgICAgICAgICAgIHRlc3QoY2FudmFzLCBjdHgpOw0KKyAgICAgICAgfQ0KKyAgICAg
ICAgY2F0Y2ggKGUpDQorICAgICAgICB7DQorICAgICAgICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0
aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2UpOw0KKyAgICAgICAgICAgIGRlZmVycmVkID0gZmFs
c2U7IC8vIGNhbmNlbCBhbnkgZGVmZXJlbmNlDQorICAgICAgICB9DQorDQorICAgICAgICBpZiAo
ISBkZWZlcnJlZCkNCisgICAgICAgICAgICBlbmRUZXN0KCk7DQorICAgIH07DQorfQ0KKw0KSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMKK2RyYXdJbWFnZSBvZiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9y
aWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCitBY3R1
YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRy
YXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZh
cyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIu
Li90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rl
c3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFn
ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVm
PSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3Bd
IHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4K
KzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4K
KzxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8
dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXM8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKwor
PHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFz
cz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZB
SUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8
c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7
CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJk
Jyk7CitjdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycp
LCAwLCAwKTsKK2N0eC5kcmF3SW1hZ2UoY2FudmFzMiwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93
biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBz
cmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5n
IiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCitkcmF3SW1hZ2Ug
b2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFu
CitSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJM
IHNlY3VyaXR5LmdldEltYWdlRGF0YQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LmRyYXdJbWFnZS5pbWFnZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8IURP
Q1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdl
PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9
InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIHRpdGxlPSJ0b0RhdGFV
UkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXMiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InRvRGF0
YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9
IltwXSB0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Jmx0OzwvYT4KKyA8YSBo
cmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2Vj
dXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1h
Z2U8L2E+LmltYWdlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgZGlmZmVyZW50
LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBj
bGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVz
dHJlZnMuc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8
L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnRvRGF0YVVSTCI+
c2VjdXJpdHkudG9EYXRhVVJMPC9hPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5z
ZWN1cml0eS5nZXRJbWFnZURhdGEiPnNlY3VyaXR5LmdldEltYWdlRGF0YTwvYT4KKworPC91bD4K
KzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMg
aWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJm
YWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0i
ZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCitj
dHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDAp
OwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkg
eyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRo
cm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7
Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxp
cC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBb
aW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZQorU2V0dGluZyBmaWxs
U3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMg
b3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMgQnVn
emlsbGEKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLmZpbGxTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwv
c2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxp
bmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPgorPGxpbmsgcmVsPSJu
ZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4KKzxib2R5IGNsYXNzPSJzaG93
X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8
YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFjY2Vzc2tl
eT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4mZ3Q7
PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uZmlsbFN0eWxlPC9o
MT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4g
dW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYg
Y2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rl
c3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52
YXM8L2E+Cis8bGk+PGEgaHJlZj0iaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwvYT4KKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9
Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0
IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxi
YWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0Pgor
X2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMy
LmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgy
LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsK
K3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4LmZpbGxT
dHlsZSA9IHA7CitjdHguZmlsbFN0eWxlID0gJ3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZh
bHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZh
cy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFs
bHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUKK1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0
ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4K
K1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhcyBCdWd6aWxsYQorQWN0dWFs
IG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQzIEBACis8
IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Njcmlw
dD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJl
bD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0
aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Cis8bGluayByZWw9Im5l
eHQiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkki
PgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5k
ZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgorPGgxPjxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5z
ZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5bGU8L2gxPgorPHAgY2xh
c3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4g
Y2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJy
ZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5z
ZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwv
YT4KKzxsaT48YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNn
aT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgorPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0
cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdp
ZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sg
Y29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRk
VGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgY2FudmFzMiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2FudmFzMi53aWR0aCA9IDEwMDsKK2NhbnZhczIuaGVp
Z2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKK2N0eDIuZHJh
d0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwordmFy
IHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7CitjdHguc3Ryb2tlU3R5
bGUgPSBwOworY3R4LnN0cm9rZVN0eWxlID0gJ3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZh
bHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZh
cy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFs
bHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw4IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
dGltaW5nCitQYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMg
b3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBjbGVhbgorUmVmZXJlbmNl
czogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcworRGlzYWdyZWVzIHdp
dGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0
bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDcgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3Rz
LmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3Nz
Ij4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0
aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLmZpbGxTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+Cisg
PGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxl
PSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5o
dG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5z
ZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJu
PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8
L2E+LnRpbWluZzwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5kcyBv
biB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQg
c3RpbGwgaXMgY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgor
PGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHku
c3RhcnQ8L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxT
dHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+CisKKzwvdWw+Cis8L2Rp
dj4KKzxwIGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMi
Cis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNs
YXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+
RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4K
KzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgY2FudmFz
MiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2FudmFzMi53aWR0aCA9IDEw
MDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgn
MmQnKTsKK2N0eDIuZmlsbFN0eWxlID0gJyMwZjAnOworY3R4Mi5maWxsUmVjdCgwLCAwLCAxMDAs
IDUwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4
Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7
IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgorY3R4LmZpbGxTdHlsZSA9IHA7CitjdHgu
ZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7CitjYW52YXMudG9EYXRhVVJMKCk7CitjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOworX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRo
ZXJlIHdhcyBubyBleGNlcHRpb24KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVs
bG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IFtp
bmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jcmVhdGUKK0NyZWF0aW5nIGFuIHVuY2xlYW4gcGF0
dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6
IHNlY3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3JlYXRlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1s
PgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Cis8
c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4K
KzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRs
ZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgor
PHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9
InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0OzwvYT4KKyA8YSBo
cmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8
L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jl
YXRlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9l
cyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVm
cyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2Vj
dXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNs
YXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91
dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChm
YWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlw
dD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0
ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcp
OworY2FudmFzLnRvRGF0YVVSTCgpOworY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKK19h
c3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCisK
KworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFz
L3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJj
ZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9z
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MKK1VzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBv
cmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhcworUmVmZXJlbmNlczogc2VjdXJp
dHkuc3RhcnQKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRt
bAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+
Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3M8L3RpdGxlPgorPHNjcmlwdCBzcmM9
Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
dGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVh
dGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4K
KzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0i
cCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmx0OzwvYT4KKyA8YSBocmVm
PSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0
bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBh
dHRlcm48L2E+LmNyb3NzPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5Vc2luZyBhbiB1bmNsZWFuIHBh
dHRlcm4gbWFrZXMgdGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0
dGVybiBjYW52YXM8L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3Rh
cnQ8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1
dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9
IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2Fu
dmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2Fu
dmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52
YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0
eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Cit2YXIgcCA9IGN0eDIuY3JlYXRlUGF0dGVy
bihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7CitjdHgu
ZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKK3RyeSB7IHZhciBf
dGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3du
ID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2Vw
dGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorY2FudmFzMi50b0RhdGFVUkwoKTsK
K2N0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOworCisKK30pOworPC9zY3JpcHQ+Cis8aW1n
IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5w
bmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKKzwgW2luZGV4XSA+CitzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZQorU2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9m
IGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFu
CitSZWZlcmVuY2VzOiBzZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UKK0FjdHVhbCBvdXRwdXQ6CitQ
YXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlPC90aXRsZT4K
KzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52
YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5
bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0
bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0
eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVy
bjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwv
YT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBh
IHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3Jp
Z2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UiPnNl
Y3VyaXR5LmZpbGxTdHlsZS5pbWFnZTwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0i
b3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQi
IHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJh
Y2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+Citf
YWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0
ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0
eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0
cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9u
OiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsg
fSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcg
c3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBu
ZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUKK1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBw
YXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5pbWFnZQorQWN0dWFs
IG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8IURP
Q1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0Pgor
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJw
cmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9
InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRw
dXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxs
U3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBo
cmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9
Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8
L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gx
PgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEg
ZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9w
PgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVj
Lmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9r
ZVN0eWxlLmltYWdlPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFj
dHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50
KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1
bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0
eWxlID0gcDsKK2N0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBm
YWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52
YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5h
bGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9
InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnJlc2V0
CitSZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNs
ZWFuIGZsYWcKK1JlZmVyZW5jZXM6IGluaXRpYWwucmVzZXQKK0FjdHVhbCBvdXRwdXQ6CitQYXNz
ZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnJlc2V0PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90
ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3Rz
LmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LmRhdGFVUkkiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSIyZC5nZXRjb250
ZXh0LmV4aXN0cy5odG1sIiB0aXRsZT0iMmQuZ2V0Y29udGV4dC5leGlzdHMiPgorPGJvZHkgY2xh
c3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIg
YWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRhdGFVUkkiPiZsdDs8L2E+CisgPGEg
aHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSIyZC5nZXRjb250ZXh0LmV4
aXN0cy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gMmQuZ2V0Y29udGV4dC5leGlzdHMi
PiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+
LnJlc2V0PC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBk
b2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWc8L3A+Cis8ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5pbml0
aWFsLnJlc2V0Ij5pbml0aWFsLnJlc2V0PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4K
K19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK2NhbnZhcy53aWR0aCA9IDUwOwor
Y3R4LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAw
KTsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRj
aCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hv
dWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK2NhbnZhcy53aWR0
aCA9IDEwMDsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsg
fSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3du
LCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KKworCit9
KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhp
bGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dAkocmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTI4MDMsNiAr
MjgwMyw3IEBAIEJVRzQ0MTUwIExJTlVYIERFQlVHIDogZmFzdC9mb3Jtcy9pbnB1dC0KIAogLy8g
TmV3IGNhbnZhcyB0ZXN0IHN1aXRlIGZyb20gaHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMv
Y2FudmFzL3N1aXRlL3Rlc3RzLwogQlVHMjA1NTMgU0tJUCBERUZFUiA6IGNhbnZhcy9waGlsaXAg
PSBURVhUCitCVUcyMDU1MyBTS0lQIERFRkVSIDogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwID0g
VEVYVAogCiAvLyBOZWVkIHRvIGR1bXAgY29udGV4dCBtZW51IGl0ZW1zIG9uIGV2ZW50U2VuZGVy
LmNvbnRleHRDbGljayh0cnVlKS4KIEJVR1dLMzkxMDUgOiBlZGl0aW5nL3NwZWxsaW5nL2NvbnRl
eHQtbWVudS1zdWdnZXN0aW9ucy5odG1sID0gVEVYVApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Nr
aXBwZWQJKHJldmlzaW9uIDYyMDEwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBw
ZWQJKHdvcmtpbmcgY29weSkKQEAgLTU3MjksNiArNTcyOSw3IEBAIGZhc3QvbG9hZGVyL251bGwt
cmVxdWVzdC1hZnRlci13aWxsU2VuZFIKIAogIyBOZXcgY2FudmFzIHRlc3Qgc3VpdGUgZnJvbSBo
dHRwOi8vcGhpbGlwLmh0bWw1Lm9yZy90ZXN0cy9jYW52YXMvc3VpdGUvdGVzdHMvCiBjYW52YXMv
cGhpbGlwCitodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAKIAogIyBTa2lwIHRoaXMsIGl0J3MgcGVu
ZGluZyBvbiBvbmUgcGF0Y2ggaW4gdGhlIGNvbW1pdCBxdWV1ZQogYWNjZXNzaWJpbGl0eS9hcmlh
LWNvbnRyb2xzLXdpdGgtdGFicy5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
U2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAko
cmV2aXNpb24gNjIwMTApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAkod29y
a2luZyBjb3B5KQpAQCAtMjcwLDE0ICsyNzAsNiBAQCBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRl
eHQuZm9udC5wYXJzZS5zCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQuZm9udC5wYXJzZS5z
aXplLnBlcmNlbnRhZ2UuZGVmYXVsdC5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQu
Zm9udC5wYXJzZS5zeXN0ZW0uaHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy8yZC50ZXh0Lm1lYXN1
cmUud2lkdGguc3BhY2UuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1h
Z2UuY2FudmFzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
b3NzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxs
U3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAog
Y2FudmFzL3BoaWxpcC90ZXN0cy9zaXplLmF0dHJpYnV0ZXMucGFyc2UubWludXMuaHRtbAogY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zaXplLmF0dHJpYnV0ZXMuc2V0QXR0cmlidXRlLm1pbnVzLmh0bWwK
IGNhbnZhcy9waGlsaXAvdGVzdHMvdG9EYXRhVVJMLmpwZWcuYWxwaGEuaHRtbApJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA2MjAxMCkKKysrIExheW91dFRlc3RzL3BsYXRm
b3JtL3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTUzNDIsMTYgKzUzNDIsNiBAQCBjYW52
YXMvcGhpbGlwL3Rlc3RzL3NpemUuYXR0cmlidXRlcy5wYXJzCiBjYW52YXMvcGhpbGlwL3Rlc3Rz
L3NpemUuYXR0cmlidXRlcy5zZXRBdHRyaWJ1dGUubWludXMuaHRtbAogY2FudmFzL3BoaWxpcC90
ZXN0cy90b0RhdGFVUkwuanBlZy5xdWFsaXR5LmJhc2ljLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVz
dHMvdHlwZS5wcm90b3R5cGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdl
LmltYWdlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
ZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmcuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNyZWF0ZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mu
aHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tl
U3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCiBjYW52
YXMvcGhpbGlwL3Rlc3RzLzJkLmRyYXdJbWFnZS5icm9rZW4uaHRtbAogCiAjIFtRdF0gY2FudmFz
L3BoaWxpcC90ZXN0cy8yZC5wYXRoLnN0cm9rZS5vdmVybGFwLmh0bWwgZmFpbHMgd2l0aCBRdC00
LjYuMiBvciBoaWdoZXIKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC9pbWFnZXMveWVsbG93LnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtl
ZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3Ry
ZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvaW1hZ2VzL3llbGxvdy5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOm1pbWUtdHlwZQog
ICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFH
UUFBQUF5QVFNQUFBQ1ErK3o5QUFBQUExQk1WRVgvL3dDS3h2UkZBQUFBRjBsRVFWUjQKWHUzQUFR
MEFBQUJBTVAxVHkyRnpvallCQXJ3QUFVTnhqTWtBQUFBQVNVVk9SSzVDWUlJPQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59911</attachid>
            <date>2010-06-28 10:41:48 -0700</date>
            <delta_ts>2010-07-19 08:44:43 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>41279_1.patch</filename>
            <type>text/plain</type>
            <size>74946</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjQgQEAKKzIwMTAtMDYtMjggIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgdG8g
c2ltdWxhdGUgcmVtb3RlIGhvc3QKKyAgICAgICAgYWNjZXNzIGFuZCBwYXNzIHRoZSB0ZXN0cy4g
UmVtb3ZlIHRoZSB0ZXN0cyBmcm9tIE1hYyBhbmQgUXQncyBza2lwcGVkIGZpbGVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQu
dHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVz
ZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRt
bDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
a2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZv
cm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDYtMjggIFNhbSBNYWdudXNvbiAgPHNtYWdudXNvbkBu
ZXRmbGl4LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlh
bnNlbi4KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkg
KzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29v
Z2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzCi1kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotQWN0dWFs
IG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShy
ZXZpc2lvbiA2MjAxNykKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQxICswLDAgQEAK
LTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzPC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJh
d0ltYWdlLmltYWdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KLTxib2R5IGNsYXNz
PSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Uu
aHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+
Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0
bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ug
b2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91
dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWln
aHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwv
Y2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24o
Y2FudmFzLCBjdHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdj
YW52YXMnKTsKLWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFy
IGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKLWN0eC5kcmF3SW1hZ2UoY2Fu
dmFzMiwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJM
KCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Ro
cm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10
cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7
IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFn
ZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCklu
ZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5p
bWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2
MjAxNykKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJs
b2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNv
bS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCi1kcmF3
SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9E
YXRhVVJMIHNlY3VyaXR5LmdldEltYWdlRGF0YQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0K
SW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdl
LmltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNpb24gNjIwMTcpCisrKyBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxl
PkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8L3RpdGxlPgotPHNjcmlwdCBz
cmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVh
bGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgdGl0bGU9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0
c2lkZXJhbmdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNh
bnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Ci08Ym9keSBjbGFz
cz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5v
dXRzaWRlcmFuZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVn
LnF1YWxpdHkub3V0c2lkZXJhbmdlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltp
bmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4K
LTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgot
PHAgY2xhc3M9ImRlc2MiPmRyYXdJbWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVu
Y2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3
SW1hZ2UuaW1hZ2UiPnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvYT4KLTxsaT48YSBocmVmPSJz
cGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkudG9EYXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8
L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0
YSI+c2VjdXJpdHkuZ2V0SW1hZ2VEYXRhPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4K
LV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWN0eC5kcmF3SW1hZ2UoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93
biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBz
cmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cu
cG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MjAxNykKKysrIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2Nr
ZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95
ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxl
Ci1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0
eWxlLmNhbnZhcyBCdWd6aWxsYQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjIwMTcp
CisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQzICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJl
diIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgot
PHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNj
ZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4m
bHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxl
PSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmd0OzwvYT4KLTxoMT48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFz
cz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2Fu
dmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1
cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgotPGxp
PjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1
NDEyNyI+QnVnemlsbGE8L2E+Ci08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFj
dHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50
KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1
bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgnY2FudmFzJyk7Ci1jYW52YXMyLndpZHRoID0gMTAwOwotY2FudmFzMi5oZWlnaHQgPSA1
MDsKLXZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOwotY3R4Mi5kcmF3SW1hZ2Uo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci12YXIgcCA9IGN0
eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwot
Y3R4LmZpbGxTdHlsZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFz
LnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJM
KCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2Vy
dChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3Jz
Lmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291
cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0
byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwot
PCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCi1TZXR0aW5n
IHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUg
Y2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5j
YW52YXMgQnVnemlsbGEKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiA2MjAxNykK
KysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURP
Q1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4K
LTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0i
cHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRs
ZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08bGluayByZWw9Im5leHQi
IGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgot
PGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXgu
aHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgotPGgxPjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9
ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2Fu
dmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1
cml0eS5zdHJva2VTdHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwvYT4K
LTxsaT48YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0
Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRo
PSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29u
dGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVz
dChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0
ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZHJhd0lt
YWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdmFyIHAg
PSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7Ci1jdHguc3Ryb2tlU3R5bGUg
PSBwOwotY3R4LnN0cm9rZVN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmlu
YWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50
b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkg
eyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6
Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFz
cz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MjAxNykKKysrIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVy
bmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRl
eF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nCi1QYXR0ZXJuIHNhZmV0eSBkZXBl
bmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhl
ciBpdCBzdGlsbCBpcyBjbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHku
ZmlsbFN0eWxlLmNhbnZhcwotRGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi1B
Y3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmcuaHRtbAkocmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDQ3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rl
c3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMu
Y3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9
InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+
Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRp
dGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRl
eC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLmZpbGxTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0
ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52
YXM8L2E+LnRpbWluZzwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5k
cyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIg
aXQgc3RpbGwgaXMgY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVs
PgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJp
dHkuc3RhcnQ8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZp
bGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08
L2Rpdj4KLTxwIGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3
YXMiCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMi
IGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFj
ayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91
bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2Fu
dmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9
IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4
dCgnMmQnKTsKLWN0eDIuZmlsbFN0eWxlID0gJyMwZjAnOwotY3R4Mi5maWxsUmVjdCgwLCAwLCAx
MDAsIDUwKTsKLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOwot
Y3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwg
MCk7IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgotY3R4LmZpbGxTdHlsZSA9IHA7Ci1j
dHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Ci1jYW52YXMudG9EYXRhVVJMKCk7Ci1jdHguZ2V0
SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOwotX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlm
IHRoZXJlIHdhcyBubyBleGNlcHRpb24KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBj
bGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw4ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhj
b3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0
dGVybi5jcmVhdGUKLUNyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1
YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlz
aW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNyZWF0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM3ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwv
dGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJz
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19v
dXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBh
Y2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0Ozwv
YT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVy
bjwvYT4uY3JlYXRlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBh
dHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBj
bGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVz
dHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgotCi08L3VsPgotPC9kaXY+
Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIg
Y2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNr
Ij5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3Vs
PgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0g
Y3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwg
J3JlcGVhdCcpOwotY2FudmFzLnRvRGF0YVVSTCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAx
LCAxKTsKLV9hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhj
ZXB0aW9uCi0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
LQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2
MjAxNykKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jcm9zcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9j
a2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20v
eWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MKLVVzaW5nIGFu
IHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwg
bm90IHRoZSBwYXR0ZXJuIGNhbnZhcwotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKLUFjdHVh
bCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNp
b24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0NCArMCwwIEBACi08IURPQ1RZ
UEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcm9zczwvdGl0
bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUi
PgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcu
aHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08Ym9keSBjbGFz
cz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUu
aHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4m
bHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9Iltu
XSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5
LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jvc3M8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlVz
aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5j
bGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhczwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVy
ZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0
YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0
cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdp
ZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sg
Y29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRk
VGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVp
Z2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLXZhciBwID0g
Y3R4Mi5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyks
ICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwg
NTApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNh
dGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJz
aG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAo
ZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxk
IHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci1jYW52
YXMyLnRvRGF0YVVSTCgpOwotY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7Ci0KLQotfSk7
Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEs
OSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZm
ZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVy
ZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAot
Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5maWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlz
aW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAg
QEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2Ny
aXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsg
cmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJp
dHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+
Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNj
ZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmx0
OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJb
bl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mZ3Q7PC9hPgotPGgxPjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVz
YyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBp
bWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVm
cyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2Vj
dXJpdHkuZmlsbFN0eWxlLmltYWdlIj5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2U8L2E+Ci0KLTwv
dWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2Fu
dmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFz
cz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwg
aWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsK
LQotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVs
bG93LnBuZycpLCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUg
PSAncmVkJzsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsg
fSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3du
LCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7
IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0
Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNo
b3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQot
Ci0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5j
b20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEg
cGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UKLUFjdHVh
bCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Ci08c2Ny
aXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LmZpbGxTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9
IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJl
Zj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRl
cm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRp
bmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBt
YWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVm
ZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHku
c3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlPC9hPgotCi08L3Vs
PgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZh
cyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9
ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlk
PSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0K
LXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxv
dy5wbmcnKSwgJ3JlcGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHls
ZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9
Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2Vz
LmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRl
eDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0
cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3Vy
aXR5LnJlc2V0Ci1SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUg
b3JpZ2luLWNsZWFuIGZsYWcKLVJlZmVyZW5jZXM6IGluaXRpYWwucmVzZXQKLUFjdHVhbCBvdXRw
dXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCShyZXZpc2lvbiA2MjAxNykKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDog
c2VjdXJpdHkucmVzZXQ8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Njcmlw
dD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJl
bD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0
YVVSSSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwi
IHRpdGxlPSIyZC5nZXRjb250ZXh0LmV4aXN0cyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQi
PgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRp
dGxlPSJbcF0gc2VjdXJpdHkuZGF0YVVSSSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgotIDxhIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSAyZC5nZXRjb250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KLTxoMT48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgotPHAg
Y2xhc3M9ImRlc2MiPlJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRo
ZSBvcmlnaW4tY2xlYW4gZmxhZzwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08
dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRp
YWwucmVzZXQ8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFs
IG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9w
PjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rp
b24oY2FudmFzLCBjdHgpIHsKLQotY2FudmFzLndpZHRoID0gNTA7Ci1jdHguZHJhd0ltYWdlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24g
PSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0
aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotY2FudmFzLndpZHRoID0gMTAwOwotdHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90
aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cg
ZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08
aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmNzcwkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTM0IEBACitodG1sLmZhaWwgeworCWJhY2tncm91bmQ6ICNmNjY7Cit9CitodG1sLnBh
c3MgeworCWJhY2tncm91bmQ6ICM2ZjY7Cit9CitodG1sLm5lZWRzX2NoZWNrIHsKKwliYWNrZ3Jv
dW5kOiAjOTlmOworfQorCitib2R5IHsKKwlmb250LXNpemU6IHNtYWxsOworCWZvbnQtZmFtaWx5
OiBzYW5zLXNlcmlmOworCWNvbG9yOiBibGFjazsKK30KKworYTpsaW5rIHsKKwljb2xvcjogIzAw
YzsKK30KK2E6dmlzaXRlZCB7CisJY29sb3I6ICM4MDg7Cit9CisKK2JvZHkuZnJhbWVkIHsKKwlm
b250LXNpemU6IHgtc21hbGw7Cit9CisKK2gxIHsKKwlmb250LXNpemU6IGxhcmdlcjsKKwltYXJn
aW46IDA7CisJcGFkZGluZy1sZWZ0OiAwLjVlbTsKKwl0ZXh0LWluZGVudDogLTAuNWVtOworfQor
CitwIHsKKwltYXJnaW46IDA7Cit9CisKK3Aubm90ZXMgeworCW1hcmdpbi1ib3R0b206IDAuNWVt
OworCWZvbnQtc3R5bGU6IGl0YWxpYzsKK30KKwordWwgeworCW1hcmdpbjogMDsKKwltYXJnaW4t
Ym90dG9tOiAwLjVlbTsKKwlwYWRkaW5nOiAwOworCXBhZGRpbmctbGVmdDogMWVtOworfQorCisu
cmVmcyB7CisJZm9udC1zdHlsZTogaXRhbGljOworCW1hcmdpbi1ib3R0b206IDAuNWVtOworfQor
CisucmVmcyB1bCB7CisJZGlzcGxheTogaW5saW5lOworCW1hcmdpbjogMDsKKwlwYWRkaW5nOiAw
OworfQorCisucmVmcyBsaSB7CisJZGlzcGxheTogaW5saW5lOworCWxpc3Qtc3R5bGUtdHlwZTog
bm9uZTsKKwltYXJnaW46IDA7CisJcGFkZGluZzogMDsKK30KKworY2FudmFzIHsKKwlkaXNwbGF5
OiBub25lOworCXZpc2liaWxpdHk6IGhpZGRlbjsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOwor
CWJhY2tncm91bmQ6IHVybChpbWFnZXMvYmFja2dyb3VuZC5wbmcpOworfQorCitpbWcuZXhwZWN0
ZWQgeworCWRpc3BsYXk6IG5vbmU7CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3Jv
dW5kOiB1cmwoaW1hZ2VzL2JhY2tncm91bmQucG5nKTsKK30KKworaWZyYW1lIHsKKwlib3JkZXI6
IDJweCAjZjBmIHNvbGlkOworfQorCisub3V0cHV0IHsKKwlkaXNwbGF5OiBub25lOworfQorCisu
c2hvd19vdXRwdXQgLm91dHB1dCwgLm5lZWRzX2NoZWNrIC5vdXRwdXQgIHsKKwlkaXNwbGF5OiBi
bG9jayAhaW1wb3J0YW50OworCXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKK30KKwor
LnNob3dfb3V0cHV0ICNzaG93X291dHB1dCB7CisJZGlzcGxheTogbm9uZTsKK30KKworLnJlc291
cmNlIHsKKwl2aXNpYmlsaXR5OiBoaWRkZW47CisJaGVpZ2h0OiAwOworfQorCisuZmFsbGJhY2sg
eworCWZvbnQtc2l6ZTogMmVtOworCWZvbnQtd2VpZ2h0OiBib2xkOworCWNvbG9yOiAjYTAwOwor
fQorCisKK2h0bWwubWluaW1hbCBib2R5IHsKKwljb2xvcjogd2hpdGU7Cit9CitodG1sLmZhaWwu
bWluaW1hbCB7CisJYmFja2dyb3VuZDogI2YwMDsKK30KK2h0bWwucGFzcy5taW5pbWFsIHsKKwli
YWNrZ3JvdW5kOiAjMDgwOworfQoraHRtbC5uZWVkc19jaGVjay5taW5pbWFsIHsKKwliYWNrZ3Jv
dW5kOiAjMDA4OworfQorLm1pbmltYWwgI2QgeworCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsK
K30KKy5taW5pbWFsIC5leHBlY3RlZHRleHQgeworCXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0
YW50OworfQorI3Bhc3N0ZXh0LCAjZmFpbHRleHQgeworCWRpc3BsYXk6IG5vbmU7Cit9CisubWlu
aW1hbC5wYXNzICNwYXNzdGV4dCwgLm1pbmltYWwuZmFpbCAjZmFpbHRleHQgeworCWRpc3BsYXk6
IGJsb2NrOworfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNjEgQEAKK2Z1bmN0aW9u
IF92YWxUb1N0cmluZyh2YWwpDQorew0KKyAgICBpZiAodmFsID09PSB1bmRlZmluZWQgfHwgdmFs
ID09PSBudWxsKQ0KKyAgICAgICAgcmV0dXJuICdbJyArIHR5cGVvZih2YWwpICsgJ10nOw0KKyAg
ICByZXR1cm4gdmFsLnRvU3RyaW5nKCkgKyAnWycgKyB0eXBlb2YodmFsKSArICddJzsNCit9DQor
DQordmFyIF9oZXgyZGVjX3RhYmxlID0gew0KKyAgICAwOjAsIDE6MSwgMjoyLCAzOjMsIDQ6NCwg
NTo1LCA2OjYsIDc6NywgODo4LCA5OjksDQorICAgIGE6MTAsIGI6MTEsIGM6MTIsIGQ6MTMsIGU6
MTQsIGY6MTUsDQorICAgIEE6MTAsIEI6MTEsIEM6MTIsIEQ6MTMsIEU6MTQsIEY6MTUNCit9Ow0K
K2Z1bmN0aW9uIF9oZXgyZGVjKGhleCkNCit7DQorICAgIHJldHVybiBfaGV4MmRlY190YWJsZVto
ZXguY2hhckF0KDApXSoxNiArIF9oZXgyZGVjX3RhYmxlW2hleC5jaGFyQXQoMSldOw0KK30NCisN
Cit2YXIgX2ZhaWxlZCA9IGZhbHNlOw0KK3ZhciBfYXNzZXJ0ZWQgPSBmYWxzZTsNCitmdW5jdGlv
biBfd2Fybih0ZXh0KQ0KK3sNCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaScpKS5hcHBlbmRDaGlsZChkb2N1bWVu
dC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSk7DQorfQ0KK2Z1bmN0aW9uIF9mYWlsKHRleHQpDQorew0K
KyAgICBfd2Fybih0ZXh0KTsNCisgICAgX2ZhaWxlZCA9IHRydWU7DQorfQ0KKw0KK2Z1bmN0aW9u
IF9hc3NlcnQoY29uZCwgdGV4dCkNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlm
ICghIGNvbmQpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogJyArIHRleHQpOw0K
K30NCisNCitmdW5jdGlvbiBfYXNzZXJ0U2FtZShhLCBiLCB0ZXh0X2EsIHRleHRfYikNCit7DQor
ICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmIChhICE9PSBiKQ0KKyAgICAgICAgX2ZhaWwo
J0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgPT09ICcgKyB0ZXh0X2IgKw0KKyAgICAg
ICAgICAgICAgICAnIChnb3QgJyArIF92YWxUb1N0cmluZyhhKSArICcsIGV4cGVjdGVkICcgKyBf
dmFsVG9TdHJpbmcoYikgKyAnKScpOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0RGlmZmVyZW50
KGEsIGIsIHRleHRfYSwgdGV4dF9iKQ0KK3sNCisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisgICAg
aWYgKGEgPT09IGIpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9h
ICsgJyAhPT0gJyArIHRleHRfYiArDQorICAgICAgICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRv
U3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgbm90ICcgKyBfdmFsVG9TdHJpbmcoYikgKyAnKScpOw0K
K30NCisNCitmdW5jdGlvbiBfYXNzZXJ0RXF1YWwoYSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0K
KyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBpZiAoYSAhPSBiKQ0KKyAgICAgICAgX2ZhaWwo
J0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgPT0gJyArIHRleHRfYiArDQorICAgICAg
ICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRvU3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgJyArIF92
YWxUb1N0cmluZyhiKSArICcpJyk7DQorfQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRNYXRjaChhLCBi
LCB0ZXh0X2EsIHRleHRfYikNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmICgh
IGEubWF0Y2goYikpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9h
ICsgJyBtYXRjaGVzICcgKyB0ZXh0X2IgKw0KKyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92
YWxUb1N0cmluZyhhKSArICcpJyk7DQorfQ0KKw0KKw0KK3ZhciBfbWFudWFsX2NoZWNrID0gZmFs
c2U7DQorDQorZnVuY3Rpb24gX3JlcXVpcmVNYW51YWxDaGVjaygpDQorew0KKyAgICBfbWFudWFs
X2NoZWNrID0gdHJ1ZTsNCit9DQorDQorZnVuY3Rpb24gX2NyYXNoKCkNCit7DQorICAgIF9mYWls
KCdBYm9ydGVkIGR1ZSB0byBwcmVkaWN0ZWQgY3Jhc2gnKTsNCit9DQorDQordmFyIF9nZXRJbWFn
ZURhdGFDYWxpYnJhdGVkID0gZmFsc2U7DQordmFyIF9nZXRJbWFnZURhdGFJc1ByZW11bCwgX2dl
dEltYWdlRGF0YUlzQkdSQTsNCisNCitmdW5jdGlvbiBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpDQor
ew0KKyAgICB2YXIgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7DQorICAgIGlmIChjdHgg
JiYgdHlwZW9mKGN0eC5nZXRJbWFnZURhdGEpICE9ICd1bmRlZmluZWQnKQ0KKyAgICB7DQorICAg
ICAgICB0cnkgew0KKyAgICAgICAgICAgIHZhciBpbWdkYXRhID0gY3R4LmdldEltYWdlRGF0YSh4
LCB5LCAxLCAxKTsNCisgICAgICAgIH0gY2F0Y2ggKGUpIHsNCisgICAgICAgICAgICAvLyBwcm9i
YWJseSBhIHNlY3VyaXR5IGV4Y2VwdGlvbiBjYXVzZWQgYnkgaGF2aW5nIGRyYXduDQorICAgICAg
ICAgICAgLy8gZGF0YTogVVJMcyBvbnRvIHRoZSBjYW52YXMNCisgICAgICAgICAgICBpbWdkYXRh
ID0gbnVsbDsNCisgICAgICAgIH0NCisgICAgICAgIGlmIChpbWdkYXRhKQ0KKyAgICAgICAgew0K
KyAgICAgICAgICAgIC8vIFdvcmsgYXJvdW5kIGdldEltYWdlRGF0YSBidWdzLCBzaW5jZSB3ZSB3
YW50IHRoZSBvdGhlciB0ZXN0cyB0bw0KKyAgICAgICAgICAgIC8vIGNhcnJ5IG9uIHdvcmtpbmcg
YXMgd2VsbCBhcyBwb3NzaWJsZQ0KKyAgICAgICAgICAgIGlmICghIF9nZXRJbWFnZURhdGFDYWxp
YnJhdGVkKQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgdmFyIGMyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7DQorICAgICAgICAgICAgICAgIGMyLndpZHRoID0g
YzIuaGVpZ2h0ID0gMTsNCisgICAgICAgICAgICAgICAgdmFyIGN0eDIgPSBjMi5nZXRDb250ZXh0
KCcyZCcpOw0KKyAgICAgICAgICAgICAgICBjdHgyLmZpbGxTdHlsZSA9ICdyZ2JhKDAsIDI1NSwg
MjU1LCAwLjUpJzsNCisgICAgICAgICAgICAgICAgY3R4Mi5maWxsUmVjdCgwLCAwLCAxLCAxKTsN
CisgICAgICAgICAgICAgICAgdmFyIGRhdGEyID0gY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwg
MSkuZGF0YTsNCisNCisgICAgICAgICAgICAgICAgLy8gRmlyZWZveCByZXR1cm5zIHByZW11bHRp
cGxpZWQgYWxwaGENCisNCisgICAgICAgICAgICAgICAgaWYgKGRhdGEyWzFdID4gMTAwICYmIGRh
dGEyWzFdIDwgMTUwKQ0KKyAgICAgICAgICAgICAgICAgICAgX2dldEltYWdlRGF0YUlzUHJlbXVs
ID0gdHJ1ZTsNCisgICAgICAgICAgICAgICAgZWxzZQ0KKyAgICAgICAgICAgICAgICAgICAgX2dl
dEltYWdlRGF0YUlzUHJlbXVsID0gZmFsc2U7DQorDQorICAgICAgICAgICAgICAgIC8vIE9wZXJh
IE1pbmkgNCBCZXRhIHJldHVybnMgQkdSQSBpbnN0ZWFkIG9mIFJHQkENCisNCisgICAgICAgICAg
ICAgICAgaWYgKGRhdGEyWzBdID4gMjUwICYmIGRhdGEyWzJdIDwgNSkNCisgICAgICAgICAgICAg
ICAgICAgIF9nZXRJbWFnZURhdGFJc0JHUkEgPSB0cnVlOw0KKyAgICAgICAgICAgICAgICBlbHNl
DQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNCR1JBID0gZmFsc2U7DQorDQor
ICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gdHJ1ZTsNCisgICAgICAg
ICAgICB9DQorDQorICAgICAgICAgICAgLy8gVW5kbyB0aGUgQkdSQSBmbGlwcGluZw0KKyAgICAg
ICAgICAgIHZhciByZ2JhID0gKF9nZXRJbWFnZURhdGFJc0JHUkENCisgICAgICAgICAgICAgICAg
PyBbIGltZ2RhdGEuZGF0YVsyXSwgaW1nZGF0YS5kYXRhWzFdLCBpbWdkYXRhLmRhdGFbMF0sIGlt
Z2RhdGEuZGF0YVszXSBdDQorICAgICAgICAgICAgICAgIDogWyBpbWdkYXRhLmRhdGFbMF0sIGlt
Z2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzJdLCBpbWdkYXRhLmRhdGFbM10gXSk7DQorDQor
ICAgICAgICAgICAgaWYgKCEgX2dldEltYWdlRGF0YUlzUHJlbXVsKQ0KKyAgICAgICAgICAgICAg
ICByZXR1cm4gcmdiYTsNCisNCisgICAgICAgICAgICAvLyBVbmRvIHRoZSBwcmVtdWx0aXBseWlu
Zw0KKyAgICAgICAgICAgIGlmIChyZ2JhWzNdID09IDApDQorICAgICAgICAgICAgICAgIHJldHVy
biBbIDAsIDAsIDAsIDAgXTsNCisgICAgICAgICAgICBlbHNlDQorICAgICAgICAgICAgew0KKyAg
ICAgICAgICAgICAgICB2YXIgYSA9IHJnYmFbM10gLyAyNTU7DQorICAgICAgICAgICAgICAgIHJl
dHVybiBbDQorICAgICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHJnYmFbMF0vYSksDQorICAg
ICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHJnYmFbMV0vYSksDQorICAgICAgICAgICAgICAg
ICAgICBNYXRoLnJvdW5kKHJnYmFbMl0vYSksDQorICAgICAgICAgICAgICAgICAgICByZ2JhWzNd
DQorICAgICAgICAgICAgICAgIF07DQorICAgICAgICAgICAgfQ0KKyAgICAgICAgfQ0KKyAgICB9
DQorDQorICAgIHRyeSB7IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCdvcGVyYS0yZGdhbWUnKTsg
fSBjYXRjaCAoZSkgeyAvKiBGaXJlZm94IHRocm93cyAqLyB9DQorICAgIGlmIChjdHggJiYgdHlw
ZW9mKGN0eC5nZXRQaXhlbCkgIT0gJ3VuZGVmaW5lZCcpDQorICAgIHsNCisgICAgICAgIHRyeSB7
DQorICAgICAgICAgICAgdmFyIGMgPSBjdHguZ2V0UGl4ZWwoeCwgeSk7DQorICAgICAgICB9IGNh
dGNoIChlKSB7DQorICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24g
Y2F1c2VkIGJ5IGhhdmluZyBkcmF3bg0KKyAgICAgICAgICAgIC8vIGRhdGE6IFVSTHMgb250byB0
aGUgY2FudmFzDQorICAgICAgICAgICAgYyA9IG51bGw7DQorICAgICAgICB9DQorICAgICAgICBp
ZiAoYykNCisgICAgICAgIHsNCisgICAgICAgICAgICB2YXIgbWF0Y2hlcyA9IC9ecmdiYVwoKFxk
KyksIChcZCspLCAoXGQrKSwgKFtcZFwuXSspXCkkLy5leGVjKGMpOw0KKyAgICAgICAgICAgIGlm
IChtYXRjaGVzKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gWyBtYXRjaGVzWzFdLCBtYXRjaGVz
WzJdLCBtYXRjaGVzWzNdLCBNYXRoLnJvdW5kKG1hdGNoZXNbNF0qMjU1KSBdOw0KKyAgICAgICAg
ICAgIG1hdGNoZXMgPSAvXiMoLi4pKC4uKSguLikkLy5leGVjKGMpOw0KKyAgICAgICAgICAgIGlm
IChtYXRjaGVzKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gWyBfaGV4MmRlYyhtYXRjaGVzWzFd
KSwgX2hleDJkZWMobWF0Y2hlc1syXSksIF9oZXgyZGVjKG1hdGNoZXNbM10pLCAyNTUgXTsNCisg
ICAgICAgIH0NCisgICAgfQ0KKyAgICAvL193YXJuKCIoQ2FuJ3QgdGVzdCBwaXhlbCB2YWx1ZSki
KTsNCisgICAgX21hbnVhbF9jaGVjayA9IHRydWU7DQorICAgIHJldHVybiB1bmRlZmluZWQ7DQor
fQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRQaXhlbChjYW52YXMsIHgseSwgcixnLGIsYSwgcG9zLCBj
b2xvdXIpDQorew0KKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICB2YXIgYyA9IF9nZXRQaXhl
bChjYW52YXMsIHgseSk7DQorICAgIGlmIChjICYmICEgKGNbMF0gPT0gciAmJiBjWzFdID09IGcg
JiYgY1syXSA9PSBiICYmIGNbM10gPT0gYSkpDQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2Vy
dGlvbjogZ290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsn
K3IrJywnK2crJywnK2IrJywnK2ErJ10nKTsNCit9DQorDQorZnVuY3Rpb24gX2Fzc2VydFBpeGVs
QXBwcm94KGNhbnZhcywgeCx5LCByLGcsYixhLCBwb3MsIGNvbG91ciwgdG9sZXJhbmNlKQ0KK3sN
CisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisgICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4
LHkpOw0KKyAgICBpZiAoYykNCisgICAgew0KKyAgICAgICAgdmFyIGRpZmYgPSBNYXRoLm1heChN
YXRoLmFicyhjWzBdLXIpLCBNYXRoLmFicyhjWzFdLWcpLCBNYXRoLmFicyhjWzJdLWIpLCBNYXRo
LmFicyhjWzNdLWEpKTsNCisgICAgICAgIGlmIChkaWZmID4gdG9sZXJhbmNlKQ0KKyAgICAgICAg
ICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uOiBnb3QgcGl4ZWwgWycgKyBjICsgJ10gYXQgKCcr
eCsnLCcreSsnKSwgZXhwZWN0ZWQgWycrcisnLCcrZysnLCcrYisnLCcrYSsnXSArLy0gJyt0b2xl
cmFuY2UpOw0KKyAgICB9DQorfQ0KKw0KK2Z1bmN0aW9uIF9hZGRUZXN0KHRlc3QpDQorew0KKyAg
ICB2YXIgZGVmZXJyZWQgPSBmYWxzZTsNCisgICAgd2luZG93LmRlZmVyVGVzdCA9IGZ1bmN0aW9u
ICgpIHsgZGVmZXJyZWQgPSB0cnVlOyB9Ow0KKyAgICBmdW5jdGlvbiBlbmRUZXN0KCkNCisgICAg
ew0KKyAgICAgICAgaWYgKF9mYWlsZWQpIC8vIHRlc3QgZmFpbGVkDQorICAgICAgICB7DQorICAg
ICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIGZhaWwnOw0K
KyAgICAgICAgICAgIHdpbmRvdy5fdGVzdFN0YXR1cyA9IFsnZmFpbCcsIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MXTsNCisgICAgICAgIH0NCisgICAgICAgIGVsc2UgaWYg
KF9tYW51YWxfY2hlY2sgfHwgIV9hc3NlcnRlZCkNCisgICAgICAgIHsgLy8gdGVzdCBjYXNlIGV4
cGxpY2l0bHkgYXNrZWQgZm9yIGEgbWFudWFsIGNoZWNrLCBvciBubyBhdXRvbWF0aWMgYXNzZXJ0
aW9ucyB3ZXJlIHBlcmZvcm1lZA0KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdkJykuaW5uZXJIVE1MICs9ICc8bGk+Q2Fubm90IGF1dG9tYXRpY2FsbHkgdmVyaWZ5IHJlc3Vs
dCc7DQorICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAn
IG5lZWRzX2NoZWNrJzsNCisgICAgICAgICAgICB3aW5kb3cuX3Rlc3RTdGF0dXMgPSBbJ2NoZWNr
JywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOw0KKyAgICAgICAgfQ0K
KyAgICAgICAgZWxzZSAvLyB0ZXN0IHN1Y2NlZWRlZA0KKyAgICAgICAgew0KKyAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MICs9ICc8bGk+UGFzc2VkJzsN
CisgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NOYW1lICs9ICcgcGFz
cyc7DQorICAgICAgICAgICAgd2luZG93Ll90ZXN0U3RhdHVzID0gWydwYXNzJywgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOw0KKyAgICAgICAgfQ0KKyAgICAgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikNCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5ub3RpZnlEb25lKCk7DQorICAgIH0NCisgICAgd2luZG93LmVuZFRlc3QgPSBlbmRU
ZXN0Ow0KKyAgICB3aW5kb3cud3JhcEZ1bmN0aW9uID0gZnVuY3Rpb24gKGYpDQorICAgIHsNCisg
ICAgICAgIHJldHVybiBmdW5jdGlvbigpDQorICAgICAgICB7DQorICAgICAgICAgICAgdHJ5DQor
ICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgICBmLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7
DQorICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgIGNhdGNoIChlKQ0KKyAgICAgICAgICAgIHsN
CisgICAgICAgICAgICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1l
c3NhZ2UpOw0KKyAgICAgICAgICAgIH0NCisgICAgICAgICAgICBlbmRUZXN0KCk7DQorICAgICAg
ICB9DQorICAgIH0NCisNCisgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgpDQorICAgIHsN
CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsNCisgICAgICAgICAg
ICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7DQorICAgICAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOw0KKyAgICAgICAgfQ0KKyAgICAgICAgdHJ5
DQorICAgICAgICB7DQorICAgICAgICAgICAgdmFyIGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdjJyk7DQorICAgICAgICAgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcy
ZCcpOw0KKyAgICAgICAgICAgIHRlc3QoY2FudmFzLCBjdHgpOw0KKyAgICAgICAgfQ0KKyAgICAg
ICAgY2F0Y2ggKGUpDQorICAgICAgICB7DQorICAgICAgICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0
aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2UpOw0KKyAgICAgICAgICAgIGRlZmVycmVkID0gZmFs
c2U7IC8vIGNhbmNlbCBhbnkgZGVmZXJlbmNlDQorICAgICAgICB9DQorDQorICAgICAgICBpZiAo
ISBkZWZlcnJlZCkNCisgICAgICAgICAgICBlbmRUZXN0KCk7DQorICAgIH07DQorfQ0KKw0KSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMKK2RyYXdJbWFnZSBvZiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9y
aWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCitBY3R1
YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRy
YXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZh
cyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIu
Li90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rl
c3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFn
ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVm
PSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3Bd
IHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4K
KzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4K
KzxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8
dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXM8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKwor
PHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFz
cz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZB
SUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8
c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7
CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJk
Jyk7CitjdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycp
LCAwLCAwKTsKK2N0eC5kcmF3SW1hZ2UoY2FudmFzMiwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93
biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBz
cmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5n
IiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCitkcmF3SW1hZ2Ug
b2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFu
CitSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJM
IHNlY3VyaXR5LmdldEltYWdlRGF0YQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LmRyYXdJbWFnZS5pbWFnZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8IURP
Q1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdl
PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9
InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIHRpdGxlPSJ0b0RhdGFV
UkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXMiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InRvRGF0
YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9
IltwXSB0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Jmx0OzwvYT4KKyA8YSBo
cmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2Vj
dXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1h
Z2U8L2E+LmltYWdlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgZGlmZmVyZW50
LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBj
bGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVz
dHJlZnMuc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8
L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnRvRGF0YVVSTCI+
c2VjdXJpdHkudG9EYXRhVVJMPC9hPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5z
ZWN1cml0eS5nZXRJbWFnZURhdGEiPnNlY3VyaXR5LmdldEltYWdlRGF0YTwvYT4KKworPC91bD4K
KzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMg
aWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJm
YWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0i
ZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCitj
dHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDAp
OwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkg
eyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRo
cm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7
Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxp
cC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBb
aW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZQorU2V0dGluZyBmaWxs
U3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMg
b3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMgQnVn
emlsbGEKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLmZpbGxTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwv
c2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxp
bmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPgorPGxpbmsgcmVsPSJu
ZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4KKzxib2R5IGNsYXNzPSJzaG93
X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8
YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFjY2Vzc2tl
eT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4mZ3Q7
PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uZmlsbFN0eWxlPC9o
MT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4g
dW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYg
Y2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rl
c3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52
YXM8L2E+Cis8bGk+PGEgaHJlZj0iaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwvYT4KKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9
Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0
IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxi
YWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0Pgor
X2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMy
LmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgy
LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsK
K3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4LmZpbGxT
dHlsZSA9IHA7CitjdHguZmlsbFN0eWxlID0gJ3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZh
bHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZh
cy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFs
bHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUKK1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0
ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4K
K1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhcyBCdWd6aWxsYQorQWN0dWFs
IG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQzIEBACis8
IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Njcmlw
dD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJl
bD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0
aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Cis8bGluayByZWw9Im5l
eHQiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkki
PgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5k
ZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgorPGgxPjxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5z
ZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5bGU8L2gxPgorPHAgY2xh
c3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4g
Y2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJy
ZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5z
ZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwv
YT4KKzxsaT48YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNn
aT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgorPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0
cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdp
ZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sg
Y29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRk
VGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgY2FudmFzMiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2FudmFzMi53aWR0aCA9IDEwMDsKK2NhbnZhczIuaGVp
Z2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKK2N0eDIuZHJh
d0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwordmFy
IHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7CitjdHguc3Ryb2tlU3R5
bGUgPSBwOworY3R4LnN0cm9rZVN0eWxlID0gJ3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZh
bHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZh
cy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFs
bHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw4IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
dGltaW5nCitQYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMg
b3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBjbGVhbgorUmVmZXJlbmNl
czogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcworRGlzYWdyZWVzIHdp
dGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0
bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDcgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3Rz
LmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3Nz
Ij4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0
aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLmZpbGxTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+Cisg
PGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxl
PSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5o
dG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5z
ZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJu
PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8
L2E+LnRpbWluZzwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5kcyBv
biB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQg
c3RpbGwgaXMgY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgor
PGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHku
c3RhcnQ8L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxT
dHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+CisKKzwvdWw+Cis8L2Rp
dj4KKzxwIGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMi
Cis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNs
YXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+
RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4K
KzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgY2FudmFz
MiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2FudmFzMi53aWR0aCA9IDEw
MDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgn
MmQnKTsKK2N0eDIuZmlsbFN0eWxlID0gJyMwZjAnOworY3R4Mi5maWxsUmVjdCgwLCAwLCAxMDAs
IDUwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4
Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7
IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgorY3R4LmZpbGxTdHlsZSA9IHA7CitjdHgu
ZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7CitjYW52YXMudG9EYXRhVVJMKCk7CitjdHguZ2V0SW1h
Z2VEYXRhKDAsIDAsIDEsIDEpOworX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRo
ZXJlIHdhcyBubyBleGNlcHRpb24KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVs
bG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IFtp
bmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jcmVhdGUKK0NyZWF0aW5nIGFuIHVuY2xlYW4gcGF0
dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6
IHNlY3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3JlYXRlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1s
PgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Cis8
c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4K
KzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRs
ZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgor
PHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9
InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0OzwvYT4KKyA8YSBo
cmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8
L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jl
YXRlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9l
cyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVm
cyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2Vj
dXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNs
YXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91
dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChm
YWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlw
dD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0
ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcp
OworY2FudmFzLnRvRGF0YVVSTCgpOworY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKK19h
c3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCisK
KworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFz
L3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJj
ZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9z
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MKK1VzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBv
cmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhcworUmVmZXJlbmNlczogc2VjdXJp
dHkuc3RhcnQKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRt
bAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+
Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3M8L3RpdGxlPgorPHNjcmlwdCBzcmM9
Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
dGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVh
dGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4K
KzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0i
cCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmx0OzwvYT4KKyA8YSBocmVm
PSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0
bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBh
dHRlcm48L2E+LmNyb3NzPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5Vc2luZyBhbiB1bmNsZWFuIHBh
dHRlcm4gbWFrZXMgdGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0
dGVybiBjYW52YXM8L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3Rh
cnQ8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1
dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9
IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2Fu
dmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2Fu
dmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52
YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0
eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Cit2YXIgcCA9IGN0eDIuY3JlYXRlUGF0dGVy
bihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7CitjdHgu
ZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKK3RyeSB7IHZhciBf
dGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3du
ID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2Vw
dGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorY2FudmFzMi50b0RhdGFVUkwoKTsK
K2N0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOworCisKK30pOworPC9zY3JpcHQ+Cis8aW1n
IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5w
bmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKKzwgW2luZGV4XSA+CitzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZQorU2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9m
IGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFu
CitSZWZlcmVuY2VzOiBzZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UKK0FjdHVhbCBvdXRwdXQ6CitQ
YXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlPC90aXRsZT4K
KzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52
YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5
bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0
bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0
eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVy
bjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwv
YT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBh
IHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3Jp
Z2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UiPnNl
Y3VyaXR5LmZpbGxTdHlsZS5pbWFnZTwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0i
b3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQi
IHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJh
Y2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+Citf
YWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0
ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0
eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0
cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9u
OiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsg
fSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcg
c3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBu
ZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUKK1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBw
YXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5pbWFnZQorQWN0dWFs
IG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8IURP
Q1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0Pgor
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJw
cmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9
InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRw
dXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxs
U3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBo
cmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9
Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8
L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gx
PgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEg
ZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9w
PgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVj
Lmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9r
ZVN0eWxlLmltYWdlPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFj
dHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50
KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1
bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0
eWxlID0gcDsKK2N0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBm
YWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52
YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5h
bGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9
InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnJlc2V0
CitSZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNs
ZWFuIGZsYWcKK1JlZmVyZW5jZXM6IGluaXRpYWwucmVzZXQKK0FjdHVhbCBvdXRwdXQ6CitQYXNz
ZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnJlc2V0PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90
ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3Rz
LmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LmRhdGFVUkkiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSIyZC5nZXRjb250
ZXh0LmV4aXN0cy5odG1sIiB0aXRsZT0iMmQuZ2V0Y29udGV4dC5leGlzdHMiPgorPGJvZHkgY2xh
c3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIg
YWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRhdGFVUkkiPiZsdDs8L2E+CisgPGEg
aHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSIyZC5nZXRjb250ZXh0LmV4
aXN0cy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gMmQuZ2V0Y29udGV4dC5leGlzdHMi
PiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+
LnJlc2V0PC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBk
b2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWc8L3A+Cis8ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5pbml0
aWFsLnJlc2V0Ij5pbml0aWFsLnJlc2V0PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4K
K19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK2NhbnZhcy53aWR0aCA9IDUwOwor
Y3R4LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAw
KTsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRj
aCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hv
dWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK2NhbnZhcy53aWR0
aCA9IDEwMDsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsg
fSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3du
LCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KKworCit9
KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhp
bGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dAkocmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTI4MDMsNiAr
MjgwMyw3IEBAIEJVRzQ0MTUwIExJTlVYIERFQlVHIDogZmFzdC9mb3Jtcy9pbnB1dC0KIAogLy8g
TmV3IGNhbnZhcyB0ZXN0IHN1aXRlIGZyb20gaHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMv
Y2FudmFzL3N1aXRlL3Rlc3RzLwogQlVHMjA1NTMgU0tJUCBERUZFUiA6IGNhbnZhcy9waGlsaXAg
PSBURVhUCitCVUcyMDU1MyBTS0lQIERFRkVSIDogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwID0g
VEVYVAogCiAvLyBOZWVkIHRvIGR1bXAgY29udGV4dCBtZW51IGl0ZW1zIG9uIGV2ZW50U2VuZGVy
LmNvbnRleHRDbGljayh0cnVlKS4KIEJVR1dLMzkxMDUgOiBlZGl0aW5nL3NwZWxsaW5nL2NvbnRl
eHQtbWVudS1zdWdnZXN0aW9ucy5odG1sID0gVEVYVApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Nr
aXBwZWQJKHJldmlzaW9uIDYyMDE3KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBw
ZWQJKHdvcmtpbmcgY29weSkKQEAgLTU3MjksNiArNTcyOSw3IEBAIGZhc3QvbG9hZGVyL251bGwt
cmVxdWVzdC1hZnRlci13aWxsU2VuZFIKIAogIyBOZXcgY2FudmFzIHRlc3Qgc3VpdGUgZnJvbSBo
dHRwOi8vcGhpbGlwLmh0bWw1Lm9yZy90ZXN0cy9jYW52YXMvc3VpdGUvdGVzdHMvCiBjYW52YXMv
cGhpbGlwCitodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAKIAogIyBTa2lwIHRoaXMsIGl0J3MgcGVu
ZGluZyBvbiBvbmUgcGF0Y2ggaW4gdGhlIGNvbW1pdCBxdWV1ZQogYWNjZXNzaWJpbGl0eS9hcmlh
LWNvbnRyb2xzLXdpdGgtdGFicy5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
U2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAko
cmV2aXNpb24gNjIwMTcpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAkod29y
a2luZyBjb3B5KQpAQCAtMjcwLDE0ICsyNzAsNiBAQCBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRl
eHQuZm9udC5wYXJzZS5zCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQuZm9udC5wYXJzZS5z
aXplLnBlcmNlbnRhZ2UuZGVmYXVsdC5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQu
Zm9udC5wYXJzZS5zeXN0ZW0uaHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy8yZC50ZXh0Lm1lYXN1
cmUud2lkdGguc3BhY2UuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1h
Z2UuY2FudmFzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
b3NzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxs
U3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAog
Y2FudmFzL3BoaWxpcC90ZXN0cy9zaXplLmF0dHJpYnV0ZXMucGFyc2UubWludXMuaHRtbAogY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zaXplLmF0dHJpYnV0ZXMuc2V0QXR0cmlidXRlLm1pbnVzLmh0bWwK
IGNhbnZhcy9waGlsaXAvdGVzdHMvdG9EYXRhVVJMLmpwZWcuYWxwaGEuaHRtbApJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA2MjAxNykKKysrIExheW91dFRlc3RzL3BsYXRm
b3JtL3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTUzNDIsMTYgKzUzNDIsNiBAQCBjYW52
YXMvcGhpbGlwL3Rlc3RzL3NpemUuYXR0cmlidXRlcy5wYXJzCiBjYW52YXMvcGhpbGlwL3Rlc3Rz
L3NpemUuYXR0cmlidXRlcy5zZXRBdHRyaWJ1dGUubWludXMuaHRtbAogY2FudmFzL3BoaWxpcC90
ZXN0cy90b0RhdGFVUkwuanBlZy5xdWFsaXR5LmJhc2ljLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVz
dHMvdHlwZS5wcm90b3R5cGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdl
LmltYWdlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
ZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmcuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNyZWF0ZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mu
aHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tl
U3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCiBjYW52
YXMvcGhpbGlwL3Rlc3RzLzJkLmRyYXdJbWFnZS5icm9rZW4uaHRtbAogCiAjIFtRdF0gY2FudmFz
L3BoaWxpcC90ZXN0cy8yZC5wYXRoLnN0cm9rZS5vdmVybGFwLmh0bWwgZmFpbHMgd2l0aCBRdC00
LjYuMiBvciBoaWdoZXIKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC9pbWFnZXMveWVsbG93LnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtl
ZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3Ry
ZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvaW1hZ2VzL3llbGxvdy5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOm1pbWUtdHlwZQog
ICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFH
UUFBQUF5QVFNQUFBQ1ErK3o5QUFBQUExQk1WRVgvL3dDS3h2UkZBQUFBRjBsRVFWUjQKWHUzQUFR
MEFBQUJBTVAxVHkyRnpvallCQXJ3QUFVTnhqTWtBQUFBQVNVVk9SSzVDWUlJPQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61959</attachid>
            <date>2010-07-19 08:44:43 -0700</date>
            <delta_ts>2010-07-19 10:40:49 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>41279_2.patch</filename>
            <type>text/plain</type>
            <size>91100</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYzNjY0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjIgQEAKKzIwMTAtMDctMTkgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgdG8g
c2ltdWxhdGUgcmVtb3RlIGhvc3QKKyAgICAgICAgYWNjZXNzIGFuZCB0aGVuIHBhc3MgdGhlIHRl
c3RzLiBSZW1vdmUgdGhlbSBmcm9tIE1hYyBhbmQgUXQncyBza2lwcGVkIGZpbGVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQu
dHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVz
ZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0OiBD
b3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJ
bWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWw6IENvcGllZCBmcm9tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5o
dG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFn
ZS5pbWFnZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0
ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxT
dHlsZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0LgorICAg
ICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwuCisgICAg
ICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwuCisgICAgICAgICog
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4
cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWw6IENvcGll
ZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3Jvc3MuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVk
LnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxl
Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICog
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwuCisgICAgICAgICogaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dDog
Q29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNl
dC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnJlc2V0Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6
CisgICAgICAgICogcGxhdGZvcm0vbWFjL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQv
U2tpcHBlZDoKKwogMjAxMC0wNy0xOSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCkluZGV4OiBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjU1KQorKysgTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4
cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNz
IHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5n
Ci08IFtpbmRleF0gPgotc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotZHJhd0ltYWdlIG9mIHVu
Y2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6
IHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCklu
ZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNpb24gNjM2NTUpCisrKyBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMSw0MSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRs
ZT5DYW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhczwvdGl0bGU+Ci08c2NyaXB0
IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1h
Z2UuaW1hZ2UuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Ci08bGluayBy
ZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0g
PGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0
bGU9IltwXSBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5k
ZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5o
dG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZn
dDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+Ljxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmNhbnZh
czwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+ZHJhd0ltYWdlIG9mIHVuY2xlYW4gY2FudmFzIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVu
Y2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzIj5zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC9hPgotCi08L3VsPgotPC9k
aXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0i
YyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxi
YWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48
L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBj
YW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7Ci1jYW52YXMyLndpZHRo
ID0gMTAwOwotY2FudmFzMi5oZWlnaHQgPSA1MDsKLXZhciBjdHgyID0gY2FudmFzMi5nZXRDb250
ZXh0KCcyZCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxv
dy5wbmcnKSwgMCwgMCk7Ci1jdHguZHJhd0ltYWdlKGNhbnZhczIsIDAsIDApOwotdHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJv
d24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhj
ZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxz
ZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0g
dHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlv
bjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4K
LTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCisrKyBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5h
bCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhd
ID4KLXNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZQotZHJhd0ltYWdlIG9mIGRpZmZlcmVudC1vcmln
aW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2Vj
dXJpdHkuZHJhd0ltYWdlLmltYWdlIHNlY3VyaXR5LnRvRGF0YVVSTCBzZWN1cml0eS5nZXRJbWFn
ZURhdGEKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlLmh0bWwJKHJldmlzaW9uIDYzNjU1KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwz
OCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHku
ZHJhd0ltYWdlLmltYWdlPC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3Jp
cHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayBy
ZWw9InByZXYiIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwi
IHRpdGxlPSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Ci08bGluayByZWw9
Im5leHQiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgdGl0bGU9InNlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgot
IDxhIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIGFjY2Vz
c2tleT0icCIgdGl0bGU9IltwXSB0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+
Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFn
ZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmltYWdlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1h
Z2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNs
ZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVm
PSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj5zZWN1cml0eS5k
cmF3SW1hZ2UuaW1hZ2U8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3Vy
aXR5LnRvRGF0YVVSTCI+c2VjdXJpdHkudG9EYXRhVVJMPC9hPgotPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5nZXRJbWFnZURhdGEiPnNlY3VyaXR5LmdldEltYWdlRGF0
YTwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0
OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0i
NTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52
YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52
YXMsIGN0eCkgewotCi1jdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxs
b3cucG5nJyksIDAsIDApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0
YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsg
fQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhy
b3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
LQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4K
LXNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZQotU2V0dGluZyBmaWxsU3R5bGUgdG8g
YSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVu
Y2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMgQnVnemlsbGEKLUFj
dHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDYzNjU1KQorKysgTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlPC90aXRsZT4KLTxzY3Jp
cHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZp
bGxTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5
bGUiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBz
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRl
eC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4u
aW1hZ2Uuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
aHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+
cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5jYW52YXMuaHRtbCI+
Y2FudmFzPC9hPi5maWxsU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgZmlsbFN0
eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9y
aWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxs
aT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyI+
c2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhczwvYT4KLTxsaT48YSBocmVmPSJodHRwczovL2J1Z3pp
bGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgotPC91
bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52
YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNz
PSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBp
ZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewot
Ci12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFz
Mi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIu
Z2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd5ZWxsb3cucG5nJyksIDAsIDApOwotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMy
LCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUgPSAncmVkJzsK
LXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAo
ZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxk
IHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhy
b3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsg
X3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJv
dyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwot
PC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93
LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5
bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiA2MzY1NSkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9l
eGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZQotU2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRl
cm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgot
UmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFzIEJ1Z3ppbGxhCi1BY3R1YWwg
b3V0cHV0OgotUGFzc2VkCi0KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NTUpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEsNDMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2Fu
dmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlPC90aXRsZT4KLTxz
Y3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1h
Z2Uuc3Ryb2tlU3R5bGUiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5kYXRhVVJJ
Lmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kYXRhVVJJIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1
dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0
bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9r
ZVN0eWxlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEg
aHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2Vj
dXJpdHkuZGF0YVVSSSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0
ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52
YXM8L2E+LnN0cm9rZVN0eWxlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIHN0cm9rZVN0
eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9y
aWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxs
aT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFz
Ij5zZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXM8L2E+Ci08bGk+PGEgaHJlZj0iaHR0cHM6Ly9i
dWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwvYT4K
LTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08
Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBj
bGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08
dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgp
IHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKLWNh
bnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBjYW52
YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2Fu
dmFzMiwgJ3JlcGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHlsZSA9
ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRj
aCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hv
dWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0K
LQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNv
bS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDog
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gNjM2NTUpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEs
OSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLnRpbWluZwotUGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3Vy
Y2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW4KLVJl
ZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMKLURpc2Fn
cmVlcyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAot
CkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLnRpbWluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDYz
NjU1KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0NyArMCwwIEBACi08IURP
Q1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
dGltaW5nPC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRl
cm4uY3Jvc3MiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUi
PgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRl
cm4uY3Jvc3MiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8
YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9
Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZndDs8L2E+
Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9
ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFzPC9hPi50aW1pbmc8L2gxPgotPHAg
Y2xhc3M9ImRlc2MiPlBhdHRlcm4gc2FmZXR5IGRlcGVuZHMgb24gd2hldGhlciB0aGUgc291cmNl
IHdhcyBvcmlnaW4tY2xlYW4sIG5vdCBvbiB3aGV0aGVyIGl0IHN0aWxsIGlzIGNsZWFuPC9wPgot
PGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0
bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgotPGxpPjxhIGhy
ZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0
eS5maWxsU3R5bGUuY2FudmFzPC9hPgotCi08L3VsPgotPC9kaXY+Ci08cCBjbGFzcz0ibm90ZXMi
PkRpc2FncmVlcyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgotPHAgY2xhc3M9Im91dHB1dCI+
QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0i
MTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRl
bnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3Qo
ZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCdjYW52YXMnKTsKLWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9
IDUwOwotdmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmZpbGxTdHls
ZSA9ICcjMGYwJzsKLWN0eDIuZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Ci12YXIgcCA9IGN0eC5j
cmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOyAvLyBtYWtlIGNhbnZhczIgb3Jp
Z2luLXVuY2xlYW4KLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwg
NTApOwotY2FudmFzLnRvRGF0YVVSTCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsK
LV9hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9u
Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2Vz
LmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRl
eDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjU1
KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
ZWF0ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOCArMCwwIEBACi1CbG9ja2Vk
IGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVs
bG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlCi1DcmVhdGluZyBh
biB1bmNsZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFu
Ci1SZWZlcmVuY2VzOiBzZWN1cml0eS5zdGFydAotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCklu
ZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jl
YXRlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCShyZXZpc2lvbiA2MzY1NSkKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSwzNyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcmVhdGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4u
L3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVz
dHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZh
cy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Ci08bGluayByZWw9Im5l
eHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9
InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3Bd
IHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRt
bCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyb3NzIj4mZ3Q7PC9hPgot
PGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LmNyZWF0ZTwvaDE+Ci08cCBj
bGFzcz0iZGVzYyI+Q3JlYXRpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhl
IGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6
Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5z
ZWN1cml0eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5B
Y3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIx
MDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVu
dCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChm
dW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKLWNhbnZhcy50b0Rh
dGFVUkwoKTsKLWN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7Ci1fYXNzZXJ0KHRydWUsICJ0
cnVlIik7IC8vIG9rYXkgaWYgdGhlcmUgd2FzIG5vIGV4Y2VwdGlvbgotCi0KLX0pOwotPC9zY3Jp
cHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIg
aWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCisrKyBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CSh3
b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwg
VVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+
Ci1zZWN1cml0eS5wYXR0ZXJuLmNyb3NzCi1Vc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMg
dGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXMK
LVJlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KLQpJ
bmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
b3NzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwJKHJldmlzaW9uIDYzNjU1KQorKysgTGF5b3V0VGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTEsNDQgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2FudmFz
IHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3M8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rl
c3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMu
Y3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRt
bCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmciPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgot
IDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0
bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRl
eC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRp
bWluZy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNl
Y3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48
L2E+LmNyb3NzPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5Vc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4g
bWFrZXMgdGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBj
YW52YXM8L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhy
ZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+
Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+
Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48
cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgot
Ci08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBj
dHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsK
LWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBj
YW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci12YXIgcCA9IGN0eDIuY3JlYXRlUGF0dGVybihkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0
eWxlID0gcDsKLWN0eC5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKLXRyeSB7IHZhciBfdGhyb3du
ID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1
ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjog
Y2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotY2FudmFzMi50b0RhdGFVUkwoKTsKLWN0eDIu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOwotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0i
aHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmci
IGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY1NSkKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nl
c3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5w
bmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZQotU2V0dGlu
ZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtl
cyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5maWxsU3R5
bGUuaW1hZ2UKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCShyZXZpc2lvbiA2MzY1NSkKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0
aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGU8L3RpdGxl
PgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy50aW1pbmciPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxT
dHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXgu
aHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxs
U3R5bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0
ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmh0bWwiPmltYWdl
PC9hPi5maWxsU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgZmlsbFN0eWxlIHRv
IGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBv
cmlnaW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08
bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZSI+
c2VjdXJpdHkuZmlsbFN0eWxlLmltYWdlPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4K
LV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBh
dHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwot
Y3R4LmZpbGxTdHlsZSA9IHA7Ci1jdHguZmlsbFN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2YXIgX3Ro
cm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9
IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRp
b246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBj
dHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVl
OyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBj
dHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGlt
ZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxs
b3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjU1KQor
KysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdl
LnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAK
LUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2Vz
LmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJv
a2VTdHlsZQotU2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQt
b3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6
IHNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlCi1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KLQpJ
bmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlz
aW9uIDYzNjU1KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsMzggKzAs
MCBAQAotPCFET0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48
L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxs
aW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPgotPGxpbmsgcmVs
PSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiB0
aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPgotPGJvZHkgY2xhc3M9
InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZp
bGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5j
YW52YXMuZmlsbFN0eWxlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08
L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbCIg
YWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5
PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+Ljxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LnN0cm9r
ZVN0eWxlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0
dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4t
dW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEg
aHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlIj5zZWN1
cml0eS5zdHJva2VTdHlsZS5pbWFnZTwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0i
b3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQi
IHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJh
Y2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1f
YWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgcCA9IGN0eC5jcmVhdGVQYXR0
ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKLWN0
eC5zdHJva2VTdHlsZSA9IHA7Ci1jdHguc3Ryb2tlU3R5bGUgPSAncmVkJzsKLXRyeSB7IHZhciBf
dGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3du
ID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2Vw
dGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08
aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiA2MzY1NSkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAot
QmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMu
Y29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5yZXNldAotUmVzZXR0aW5nIHRo
ZSBjYW52YXMgc3RhdGUgZG9lcyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVhbiBmbGFnCi1SZWZl
cmVuY2VzOiBpbml0aWFsLnJlc2V0Ci1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KLQpJbmRleDog
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQu
aHRtbAkocmV2aXNpb24gNjM2NTUpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsMzggKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+Ci08dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnJlc2V0PC90aXRsZT4K
LTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5
LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgotPGxpbmsgcmVsPSJuZXh0
IiBocmVmPSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiB0aXRsZT0iMmQuZ2V0Y29udGV4dC5l
eGlzdHMiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3Vy
aXR5LmRhdGFVUkkuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRhdGFV
UkkiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVm
PSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gMmQu
Z2V0Y29udGV4dC5leGlzdHMiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
aHRtbCI+c2VjdXJpdHk8L2E+LnJlc2V0PC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5SZXNldHRpbmcg
dGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWc8L3A+
Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5pbml0aWFsLnJlc2V0Ij5pbml0aWFsLnJlc2V0PC9hPgotCi08L3VsPgot
PC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBp
ZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZh
bGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJk
Ij48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWNh
bnZhcy53aWR0aCA9IDUwOwotY3R4LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
eWVsbG93LnBuZycpLCAwLCAwKTsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50
b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fz
c2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgp
Iik7IH0KLWNhbnZhcy53aWR0aCA9IDEwMDsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNh
bnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5
IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0
YVVSTCgpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3Vy
Y2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMu
Y3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy5jc3MJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMuY3NzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzNCBAQAoraHRtbC5mYWls
IHsKKwliYWNrZ3JvdW5kOiAjZjY2OworfQoraHRtbC5wYXNzIHsKKwliYWNrZ3JvdW5kOiAjNmY2
OworfQoraHRtbC5uZWVkc19jaGVjayB7CisJYmFja2dyb3VuZDogIzk5ZjsKK30KKworYm9keSB7
CisJZm9udC1zaXplOiBzbWFsbDsKKwlmb250LWZhbWlseTogc2Fucy1zZXJpZjsKKwljb2xvcjog
YmxhY2s7Cit9CisKK2E6bGluayB7CisJY29sb3I6ICMwMGM7Cit9CithOnZpc2l0ZWQgeworCWNv
bG9yOiAjODA4OworfQorCitib2R5LmZyYW1lZCB7CisJZm9udC1zaXplOiB4LXNtYWxsOworfQor
CitoMSB7CisJZm9udC1zaXplOiBsYXJnZXI7CisJbWFyZ2luOiAwOworCXBhZGRpbmctbGVmdDog
MC41ZW07CisJdGV4dC1pbmRlbnQ6IC0wLjVlbTsKK30KKworcCB7CisJbWFyZ2luOiAwOworfQor
CitwLm5vdGVzIHsKKwltYXJnaW4tYm90dG9tOiAwLjVlbTsKKwlmb250LXN0eWxlOiBpdGFsaWM7
Cit9CisKK3VsIHsKKwltYXJnaW46IDA7CisJbWFyZ2luLWJvdHRvbTogMC41ZW07CisJcGFkZGlu
ZzogMDsKKwlwYWRkaW5nLWxlZnQ6IDFlbTsKK30KKworLnJlZnMgeworCWZvbnQtc3R5bGU6IGl0
YWxpYzsKKwltYXJnaW4tYm90dG9tOiAwLjVlbTsKK30KKworLnJlZnMgdWwgeworCWRpc3BsYXk6
IGlubGluZTsKKwltYXJnaW46IDA7CisJcGFkZGluZzogMDsKK30KKworLnJlZnMgbGkgeworCWRp
c3BsYXk6IGlubGluZTsKKwlsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CisJbWFyZ2luOiAwOworCXBh
ZGRpbmc6IDA7Cit9CisKK2NhbnZhcyB7CisJZGlzcGxheTogbm9uZTsKKwl2aXNpYmlsaXR5OiBo
aWRkZW47CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3JvdW5kOiB1cmwoaW1hZ2Vz
L2JhY2tncm91bmQucG5nKTsKK30KKworaW1nLmV4cGVjdGVkIHsKKwlkaXNwbGF5OiBub25lOwor
CWJvcmRlcjogMnB4ICNmMGYgc29saWQ7CisJYmFja2dyb3VuZDogdXJsKGltYWdlcy9iYWNrZ3Jv
dW5kLnBuZyk7Cit9CisKK2lmcmFtZSB7CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKK30KKwor
Lm91dHB1dCB7CisJZGlzcGxheTogbm9uZTsKK30KKworLnNob3dfb3V0cHV0IC5vdXRwdXQsIC5u
ZWVkc19jaGVjayAub3V0cHV0ICB7CisJZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsKKwl2aXNp
YmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7Cit9CisKKy5zaG93X291dHB1dCAjc2hvd19vdXRw
dXQgeworCWRpc3BsYXk6IG5vbmU7Cit9CisKKy5yZXNvdXJjZSB7CisJdmlzaWJpbGl0eTogaGlk
ZGVuOworCWhlaWdodDogMDsKK30KKworLmZhbGxiYWNrIHsKKwlmb250LXNpemU6IDJlbTsKKwlm
b250LXdlaWdodDogYm9sZDsKKwljb2xvcjogI2EwMDsKK30KKworCitodG1sLm1pbmltYWwgYm9k
eSB7CisJY29sb3I6IHdoaXRlOworfQoraHRtbC5mYWlsLm1pbmltYWwgeworCWJhY2tncm91bmQ6
ICNmMDA7Cit9CitodG1sLnBhc3MubWluaW1hbCB7CisJYmFja2dyb3VuZDogIzA4MDsKK30KK2h0
bWwubmVlZHNfY2hlY2subWluaW1hbCB7CisJYmFja2dyb3VuZDogIzAwODsKK30KKy5taW5pbWFs
ICNkIHsKKwlkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cit9CisubWluaW1hbCAuZXhwZWN0ZWR0
ZXh0IHsKKwl2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsKK30KKyNwYXNzdGV4dCwgI2Zh
aWx0ZXh0IHsKKwlkaXNwbGF5OiBub25lOworfQorLm1pbmltYWwucGFzcyAjcGFzc3RleHQsIC5t
aW5pbWFsLmZhaWwgI2ZhaWx0ZXh0IHsKKwlkaXNwbGF5OiBibG9jazsKK30KSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMuanMJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMuanMJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMjYxIEBACitmdW5jdGlvbiBfdmFsVG9TdHJpbmcodmFsKQ0KK3sN
CisgICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkIHx8IHZhbCA9PT0gbnVsbCkNCisgICAgICAgIHJl
dHVybiAnWycgKyB0eXBlb2YodmFsKSArICddJzsNCisgICAgcmV0dXJuIHZhbC50b1N0cmluZygp
ICsgJ1snICsgdHlwZW9mKHZhbCkgKyAnXSc7DQorfQ0KKw0KK3ZhciBfaGV4MmRlY190YWJsZSA9
IHsNCisgICAgMDowLCAxOjEsIDI6MiwgMzozLCA0OjQsIDU6NSwgNjo2LCA3OjcsIDg6OCwgOTo5
LA0KKyAgICBhOjEwLCBiOjExLCBjOjEyLCBkOjEzLCBlOjE0LCBmOjE1LA0KKyAgICBBOjEwLCBC
OjExLCBDOjEyLCBEOjEzLCBFOjE0LCBGOjE1DQorfTsNCitmdW5jdGlvbiBfaGV4MmRlYyhoZXgp
DQorew0KKyAgICByZXR1cm4gX2hleDJkZWNfdGFibGVbaGV4LmNoYXJBdCgwKV0qMTYgKyBfaGV4
MmRlY190YWJsZVtoZXguY2hhckF0KDEpXTsNCit9DQorDQordmFyIF9mYWlsZWQgPSBmYWxzZTsN
Cit2YXIgX2Fzc2VydGVkID0gZmFsc2U7DQorZnVuY3Rpb24gX3dhcm4odGV4dCkNCit7DQorICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgnbGknKSkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodGV4dCkp
Ow0KK30NCitmdW5jdGlvbiBfZmFpbCh0ZXh0KQ0KK3sNCisgICAgX3dhcm4odGV4dCk7DQorICAg
IF9mYWlsZWQgPSB0cnVlOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0KGNvbmQsIHRleHQpDQor
ew0KKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBpZiAoISBjb25kKQ0KKyAgICAgICAgX2Zh
aWwoJ0ZhaWxlZCBhc3NlcnRpb246ICcgKyB0ZXh0KTsNCit9DQorDQorZnVuY3Rpb24gX2Fzc2Vy
dFNhbWUoYSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0KKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0K
KyAgICBpZiAoYSAhPT0gYikNCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0
ZXh0X2EgKyAnID09PSAnICsgdGV4dF9iICsNCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBf
dmFsVG9TdHJpbmcoYSkgKyAnLCBleHBlY3RlZCAnICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsN
Cit9DQorDQorZnVuY3Rpb24gX2Fzc2VydERpZmZlcmVudChhLCBiLCB0ZXh0X2EsIHRleHRfYikN
Cit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmIChhID09PSBiKQ0KKyAgICAgICAg
X2ZhaWwoJ0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgIT09ICcgKyB0ZXh0X2IgKw0K
KyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92YWxUb1N0cmluZyhhKSArICcsIGV4cGVjdGVk
IG5vdCAnICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsNCit9DQorDQorZnVuY3Rpb24gX2Fzc2Vy
dEVxdWFsKGEsIGIsIHRleHRfYSwgdGV4dF9iKQ0KK3sNCisgICAgX2Fzc2VydGVkID0gdHJ1ZTsN
CisgICAgaWYgKGEgIT0gYikNCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0
ZXh0X2EgKyAnID09ICcgKyB0ZXh0X2IgKw0KKyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92
YWxUb1N0cmluZyhhKSArICcsIGV4cGVjdGVkICcgKyBfdmFsVG9TdHJpbmcoYikgKyAnKScpOw0K
K30NCisNCitmdW5jdGlvbiBfYXNzZXJ0TWF0Y2goYSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0K
KyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAgICBpZiAoISBhLm1hdGNoKGIpKQ0KKyAgICAgICAg
X2ZhaWwoJ0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRfYSArICcgbWF0Y2hlcyAnICsgdGV4dF9i
ICsNCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnKScpOw0K
K30NCisNCisNCit2YXIgX21hbnVhbF9jaGVjayA9IGZhbHNlOw0KKw0KK2Z1bmN0aW9uIF9yZXF1
aXJlTWFudWFsQ2hlY2soKQ0KK3sNCisgICAgX21hbnVhbF9jaGVjayA9IHRydWU7DQorfQ0KKw0K
K2Z1bmN0aW9uIF9jcmFzaCgpDQorew0KKyAgICBfZmFpbCgnQWJvcnRlZCBkdWUgdG8gcHJlZGlj
dGVkIGNyYXNoJyk7DQorfQ0KKw0KK3ZhciBfZ2V0SW1hZ2VEYXRhQ2FsaWJyYXRlZCA9IGZhbHNl
Ow0KK3ZhciBfZ2V0SW1hZ2VEYXRhSXNQcmVtdWwsIF9nZXRJbWFnZURhdGFJc0JHUkE7DQorDQor
ZnVuY3Rpb24gX2dldFBpeGVsKGNhbnZhcywgeCx5KQ0KK3sNCisgICAgdmFyIGN0eCA9IGNhbnZh
cy5nZXRDb250ZXh0KCcyZCcpOw0KKyAgICBpZiAoY3R4ICYmIHR5cGVvZihjdHguZ2V0SW1hZ2VE
YXRhKSAhPSAndW5kZWZpbmVkJykNCisgICAgew0KKyAgICAgICAgdHJ5IHsNCisgICAgICAgICAg
ICB2YXIgaW1nZGF0YSA9IGN0eC5nZXRJbWFnZURhdGEoeCwgeSwgMSwgMSk7DQorICAgICAgICB9
IGNhdGNoIChlKSB7DQorICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRp
b24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3bg0KKyAgICAgICAgICAgIC8vIGRhdGE6IFVSTHMgb250
byB0aGUgY2FudmFzDQorICAgICAgICAgICAgaW1nZGF0YSA9IG51bGw7DQorICAgICAgICB9DQor
ICAgICAgICBpZiAoaW1nZGF0YSkNCisgICAgICAgIHsNCisgICAgICAgICAgICAvLyBXb3JrIGFy
b3VuZCBnZXRJbWFnZURhdGEgYnVncywgc2luY2Ugd2Ugd2FudCB0aGUgb3RoZXIgdGVzdHMgdG8N
CisgICAgICAgICAgICAvLyBjYXJyeSBvbiB3b3JraW5nIGFzIHdlbGwgYXMgcG9zc2libGUNCisg
ICAgICAgICAgICBpZiAoISBfZ2V0SW1hZ2VEYXRhQ2FsaWJyYXRlZCkNCisgICAgICAgICAgICB7
DQorICAgICAgICAgICAgICAgIHZhciBjMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZh
cycpOw0KKyAgICAgICAgICAgICAgICBjMi53aWR0aCA9IGMyLmhlaWdodCA9IDE7DQorICAgICAg
ICAgICAgICAgIHZhciBjdHgyID0gYzIuZ2V0Q29udGV4dCgnMmQnKTsNCisgICAgICAgICAgICAg
ICAgY3R4Mi5maWxsU3R5bGUgPSAncmdiYSgwLCAyNTUsIDI1NSwgMC41KSc7DQorICAgICAgICAg
ICAgICAgIGN0eDIuZmlsbFJlY3QoMCwgMCwgMSwgMSk7DQorICAgICAgICAgICAgICAgIHZhciBk
YXRhMiA9IGN0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpLmRhdGE7DQorDQorICAgICAgICAg
ICAgICAgIC8vIEZpcmVmb3ggcmV0dXJucyBwcmVtdWx0aXBsaWVkIGFscGhhDQorDQorICAgICAg
ICAgICAgICAgIGlmIChkYXRhMlsxXSA+IDEwMCAmJiBkYXRhMlsxXSA8IDE1MCkNCisgICAgICAg
ICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFJc1ByZW11bCA9IHRydWU7DQorICAgICAgICAgICAg
ICAgIGVsc2UNCisgICAgICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFJc1ByZW11bCA9IGZh
bHNlOw0KKw0KKyAgICAgICAgICAgICAgICAvLyBPcGVyYSBNaW5pIDQgQmV0YSByZXR1cm5zIEJH
UkEgaW5zdGVhZCBvZiBSR0JBDQorDQorICAgICAgICAgICAgICAgIGlmIChkYXRhMlswXSA+IDI1
MCAmJiBkYXRhMlsyXSA8IDUpDQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNC
R1JBID0gdHJ1ZTsNCisgICAgICAgICAgICAgICAgZWxzZQ0KKyAgICAgICAgICAgICAgICAgICAg
X2dldEltYWdlRGF0YUlzQkdSQSA9IGZhbHNlOw0KKw0KKyAgICAgICAgICAgICAgICBfZ2V0SW1h
Z2VEYXRhQ2FsaWJyYXRlZCA9IHRydWU7DQorICAgICAgICAgICAgfQ0KKw0KKyAgICAgICAgICAg
IC8vIFVuZG8gdGhlIEJHUkEgZmxpcHBpbmcNCisgICAgICAgICAgICB2YXIgcmdiYSA9IChfZ2V0
SW1hZ2VEYXRhSXNCR1JBDQorICAgICAgICAgICAgICAgID8gWyBpbWdkYXRhLmRhdGFbMl0sIGlt
Z2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzBdLCBpbWdkYXRhLmRhdGFbM10gXQ0KKyAgICAg
ICAgICAgICAgICA6IFsgaW1nZGF0YS5kYXRhWzBdLCBpbWdkYXRhLmRhdGFbMV0sIGltZ2RhdGEu
ZGF0YVsyXSwgaW1nZGF0YS5kYXRhWzNdIF0pOw0KKw0KKyAgICAgICAgICAgIGlmICghIF9nZXRJ
bWFnZURhdGFJc1ByZW11bCkNCisgICAgICAgICAgICAgICAgcmV0dXJuIHJnYmE7DQorDQorICAg
ICAgICAgICAgLy8gVW5kbyB0aGUgcHJlbXVsdGlwbHlpbmcNCisgICAgICAgICAgICBpZiAocmdi
YVszXSA9PSAwKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gWyAwLCAwLCAwLCAwIF07DQorICAg
ICAgICAgICAgZWxzZQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgdmFyIGEgPSBy
Z2JhWzNdIC8gMjU1Ow0KKyAgICAgICAgICAgICAgICByZXR1cm4gWw0KKyAgICAgICAgICAgICAg
ICAgICAgTWF0aC5yb3VuZChyZ2JhWzBdL2EpLA0KKyAgICAgICAgICAgICAgICAgICAgTWF0aC5y
b3VuZChyZ2JhWzFdL2EpLA0KKyAgICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChyZ2JhWzJd
L2EpLA0KKyAgICAgICAgICAgICAgICAgICAgcmdiYVszXQ0KKyAgICAgICAgICAgICAgICBdOw0K
KyAgICAgICAgICAgIH0NCisgICAgICAgIH0NCisgICAgfQ0KKw0KKyAgICB0cnkgeyBjdHggPSBj
YW52YXMuZ2V0Q29udGV4dCgnb3BlcmEtMmRnYW1lJyk7IH0gY2F0Y2ggKGUpIHsgLyogRmlyZWZv
eCB0aHJvd3MgKi8gfQ0KKyAgICBpZiAoY3R4ICYmIHR5cGVvZihjdHguZ2V0UGl4ZWwpICE9ICd1
bmRlZmluZWQnKQ0KKyAgICB7DQorICAgICAgICB0cnkgew0KKyAgICAgICAgICAgIHZhciBjID0g
Y3R4LmdldFBpeGVsKHgsIHkpOw0KKyAgICAgICAgfSBjYXRjaCAoZSkgew0KKyAgICAgICAgICAg
IC8vIHByb2JhYmx5IGEgc2VjdXJpdHkgZXhjZXB0aW9uIGNhdXNlZCBieSBoYXZpbmcgZHJhd24N
CisgICAgICAgICAgICAvLyBkYXRhOiBVUkxzIG9udG8gdGhlIGNhbnZhcw0KKyAgICAgICAgICAg
IGMgPSBudWxsOw0KKyAgICAgICAgfQ0KKyAgICAgICAgaWYgKGMpDQorICAgICAgICB7DQorICAg
ICAgICAgICAgdmFyIG1hdGNoZXMgPSAvXnJnYmFcKChcZCspLCAoXGQrKSwgKFxkKyksIChbXGRc
Ll0rKVwpJC8uZXhlYyhjKTsNCisgICAgICAgICAgICBpZiAobWF0Y2hlcykNCisgICAgICAgICAg
ICAgICAgcmV0dXJuIFsgbWF0Y2hlc1sxXSwgbWF0Y2hlc1syXSwgbWF0Y2hlc1szXSwgTWF0aC5y
b3VuZChtYXRjaGVzWzRdKjI1NSkgXTsNCisgICAgICAgICAgICBtYXRjaGVzID0gL14jKC4uKSgu
LikoLi4pJC8uZXhlYyhjKTsNCisgICAgICAgICAgICBpZiAobWF0Y2hlcykNCisgICAgICAgICAg
ICAgICAgcmV0dXJuIFsgX2hleDJkZWMobWF0Y2hlc1sxXSksIF9oZXgyZGVjKG1hdGNoZXNbMl0p
LCBfaGV4MmRlYyhtYXRjaGVzWzNdKSwgMjU1IF07DQorICAgICAgICB9DQorICAgIH0NCisgICAg
Ly9fd2FybigiKENhbid0IHRlc3QgcGl4ZWwgdmFsdWUpIik7DQorICAgIF9tYW51YWxfY2hlY2sg
PSB0cnVlOw0KKyAgICByZXR1cm4gdW5kZWZpbmVkOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0
UGl4ZWwoY2FudmFzLCB4LHksIHIsZyxiLGEsIHBvcywgY29sb3VyKQ0KK3sNCisgICAgX2Fzc2Vy
dGVkID0gdHJ1ZTsNCisgICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpOw0KKyAgICBp
ZiAoYyAmJiAhIChjWzBdID09IHIgJiYgY1sxXSA9PSBnICYmIGNbMl0gPT0gYiAmJiBjWzNdID09
IGEpKQ0KKyAgICAgICAgX2ZhaWwoJ0ZhaWxlZCBhc3NlcnRpb246IGdvdCBwaXhlbCBbJyArIGMg
KyAnXSBhdCAoJyt4KycsJyt5KycpLCBleHBlY3RlZCBbJytyKycsJytnKycsJytiKycsJythKydd
Jyk7DQorfQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRQaXhlbEFwcHJveChjYW52YXMsIHgseSwgcixn
LGIsYSwgcG9zLCBjb2xvdXIsIHRvbGVyYW5jZSkNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7
DQorICAgIHZhciBjID0gX2dldFBpeGVsKGNhbnZhcywgeCx5KTsNCisgICAgaWYgKGMpDQorICAg
IHsNCisgICAgICAgIHZhciBkaWZmID0gTWF0aC5tYXgoTWF0aC5hYnMoY1swXS1yKSwgTWF0aC5h
YnMoY1sxXS1nKSwgTWF0aC5hYnMoY1syXS1iKSwgTWF0aC5hYnMoY1szXS1hKSk7DQorICAgICAg
ICBpZiAoZGlmZiA+IHRvbGVyYW5jZSkNCisgICAgICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2Vy
dGlvbjogZ290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsn
K3IrJywnK2crJywnK2IrJywnK2ErJ10gKy8tICcrdG9sZXJhbmNlKTsNCisgICAgfQ0KK30NCisN
CitmdW5jdGlvbiBfYWRkVGVzdCh0ZXN0KQ0KK3sNCisgICAgdmFyIGRlZmVycmVkID0gZmFsc2U7
DQorICAgIHdpbmRvdy5kZWZlclRlc3QgPSBmdW5jdGlvbiAoKSB7IGRlZmVycmVkID0gdHJ1ZTsg
fTsNCisgICAgZnVuY3Rpb24gZW5kVGVzdCgpDQorICAgIHsNCisgICAgICAgIGlmIChfZmFpbGVk
KSAvLyB0ZXN0IGZhaWxlZA0KKyAgICAgICAgew0KKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3Vt
ZW50RWxlbWVudC5jbGFzc05hbWUgKz0gJyBmYWlsJzsNCisgICAgICAgICAgICB3aW5kb3cuX3Rl
c3RTdGF0dXMgPSBbJ2ZhaWwnLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZCcpLmlubmVySFRN
TF07DQorICAgICAgICB9DQorICAgICAgICBlbHNlIGlmIChfbWFudWFsX2NoZWNrIHx8ICFfYXNz
ZXJ0ZWQpDQorICAgICAgICB7IC8vIHRlc3QgY2FzZSBleHBsaWNpdGx5IGFza2VkIGZvciBhIG1h
bnVhbCBjaGVjaywgb3Igbm8gYXV0b21hdGljIGFzc2VydGlvbnMgd2VyZSBwZXJmb3JtZWQNCisg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZCcpLmlubmVySFRNTCArPSAnPGxp
PkNhbm5vdCBhdXRvbWF0aWNhbGx5IHZlcmlmeSByZXN1bHQnOw0KKyAgICAgICAgICAgIGRvY3Vt
ZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05hbWUgKz0gJyBuZWVkc19jaGVjayc7DQorICAgICAg
ICAgICAgd2luZG93Ll90ZXN0U3RhdHVzID0gWydjaGVjaycsIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdkJykuaW5uZXJIVE1MXTsNCisgICAgICAgIH0NCisgICAgICAgIGVsc2UgLy8gdGVzdCBz
dWNjZWVkZWQNCisgICAgICAgIHsNCisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnZCcpLmlubmVySFRNTCArPSAnPGxpPlBhc3NlZCc7DQorICAgICAgICAgICAgZG9jdW1lbnQu
ZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIHBhc3MnOw0KKyAgICAgICAgICAgIHdpbmRv
dy5fdGVzdFN0YXR1cyA9IFsncGFzcycsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5u
ZXJIVE1MXTsNCisgICAgICAgIH0NCisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpDQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOw0K
KyAgICB9DQorICAgIHdpbmRvdy5lbmRUZXN0ID0gZW5kVGVzdDsNCisgICAgd2luZG93LndyYXBG
dW5jdGlvbiA9IGZ1bmN0aW9uIChmKQ0KKyAgICB7DQorICAgICAgICByZXR1cm4gZnVuY3Rpb24o
KQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIHRyeQ0KKyAgICAgICAgICAgIHsNCisgICAgICAg
ICAgICAgICAgZi5hcHBseShudWxsLCBhcmd1bWVudHMpOw0KKyAgICAgICAgICAgIH0NCisgICAg
ICAgICAgICBjYXRjaCAoZSkNCisgICAgICAgICAgICB7DQorICAgICAgICAgICAgICAgIF9mYWls
KCdBYm9ydGVkIHdpdGggZXhjZXB0aW9uOiAnICsgZS5tZXNzYWdlKTsNCisgICAgICAgICAgICB9
DQorICAgICAgICAgICAgZW5kVGVzdCgpOw0KKyAgICAgICAgfQ0KKyAgICB9DQorDQorICAgIHdp
bmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKQ0KKyAgICB7DQorICAgICAgICBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKSB7DQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOw0KKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsNCisgICAgICAgIH0NCisgICAgICAgIHRyeQ0KKyAgICAgICAgew0KKyAgICAgICAg
ICAgIHZhciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYycpOw0KKyAgICAgICAg
ICAgIHZhciBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTsNCisgICAgICAgICAgICB0ZXN0
KGNhbnZhcywgY3R4KTsNCisgICAgICAgIH0NCisgICAgICAgIGNhdGNoIChlKQ0KKyAgICAgICAg
ew0KKyAgICAgICAgICAgIF9mYWlsKCdBYm9ydGVkIHdpdGggZXhjZXB0aW9uOiAnICsgZS5tZXNz
YWdlKTsNCisgICAgICAgICAgICBkZWZlcnJlZCA9IGZhbHNlOyAvLyBjYW5jZWwgYW55IGRlZmVy
ZW5jZQ0KKyAgICAgICAgfQ0KKw0KKyAgICAgICAgaWYgKCEgZGVmZXJyZWQpDQorICAgICAgICAg
ICAgZW5kVGVzdCgpOw0KKyAgICB9Ow0KK30NCisNCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2
MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4
dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCis8IFtp
bmRleF0gPgorc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcworZHJhd0ltYWdlIG9mIHVuY2xlYW4g
Y2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKworCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDQgKzEsMyBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKIDwgW2luZGV4XSA+CiBzZWN1
cml0eS5kcmF3SW1hZ2UuY2FudmFzCiBkcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMg
dGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgpAQCAtNiw0ICs1LDMgQEAgUmVmZXJlbmNlczogc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcwogQWN0dWFsIG91dHB1dDoKIFBhc3NlZAogCi0KSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNp
b24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
ZHJhd0ltYWdlLmNhbnZhcy5odG1sOjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDQxIEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMg
dGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhczwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4v
dGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0
cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Uu
aHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Cis8bGluayByZWw9Im5leHQi
IGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0
ZXJuLmNyZWF0ZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0i
c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBz
ZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+
W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZndDs8L2E+Cis8
aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmNhbnZhczwvaDE+Cis8
cCBjbGFzcz0iZGVzYyI+ZHJhd0ltYWdlIG9mIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52
YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVs
PgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuY2Fu
dmFzIj5zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxw
IGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9
Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlM
IChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNj
cmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOwor
Y2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcp
OworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwg
MCwgMCk7CitjdHguZHJhd0ltYWdlKGNhbnZhczIsIDAsIDApOwordHJ5IHsgdmFyIF90aHJvd24g
PSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVl
OyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBj
YW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4Lmdl
dEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBm
aW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4Lmdl
dEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3Jj
PSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBu
ZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
ZHJhd0ltYWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMzcsNSArMzcsNSBAQCB0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjdHguZ2V0SW1hZ2VECiAKIH0pOwogPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29y
cy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNv
dXJjZSI+Cis8aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1h
Z2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dDo2MzY1NSkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1h
Z2UuaW1hZ2UtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxv
Y2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29t
L3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UKK2RyYXdJ
bWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVu
Y2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSBzZWN1cml0eS50b0Rh
dGFVUkwgc2VjdXJpdHkuZ2V0SW1hZ2VEYXRhCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVS
TCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtpbmRleF0gPgog
c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCiBkcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBp
bWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCkBAIC02LDQgKzUsMyBAQCBSZWZl
cmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjCiBBY3R1YWwgb3V0cHV0OgogUGFz
c2VkCiAKLQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Uu
aHRtbAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6NjM2NTUpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvdGl0bGU+Cis8c2NyaXB0
IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJ0b0RhdGFVUkwuanBlZy5x
dWFsaXR5Lm91dHNpZGVyYW5nZS5odG1sIiB0aXRsZT0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5v
dXRzaWRlcmFuZ2UiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KKzxib2R5IGNs
YXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5
Lm91dHNpZGVyYW5nZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gdG9EYXRhVVJMLmpw
ZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+
W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4mZ3Q7PC9h
PgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVm
PSJpbmRleC5zZWN1cml0eS5kcmF3SW1hZ2UuaHRtbCI+ZHJhd0ltYWdlPC9hPi5pbWFnZTwvaDE+
Cis8cCBjbGFzcz0iZGVzYyI+ZHJhd0ltYWdlIG9mIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVy
ZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRy
YXdJbWFnZS5pbWFnZSI+c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlPC9hPgorPGxpPjxhIGhyZWY9
InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS50b0RhdGFVUkwiPnNlY3VyaXR5LnRvRGF0YVVS
TDwvYT4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZ2V0SW1hZ2VE
YXRhIj5zZWN1cml0eS5nZXRJbWFnZURhdGE8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xh
c3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0
cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZh
bGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0
PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKworY3R4LmRyYXdJbWFnZShkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3RyeSB7IHZhciBfdGhy
b3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0g
dHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlv
bjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0
eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7
IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0
eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1n
IHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxv
dy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmltYWdlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTM0LDUgKzM0LDUgQEAgdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxz
ZTsgY3R4LmdldEltYWdlRAogCiB9KTsKIDwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVz
b3VyY2UiPgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2lt
YWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KIApJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS1leHBlY3RlZC50eHQ6NjM2NTUpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4dGVy
bmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCis8IFtpbmRl
eF0gPgorc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlCitTZXR0aW5nIGZpbGxTdHls
ZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyBCdWd6aWxs
YQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwogPCBbaW5kZXhdID4K
IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZQogU2V0dGluZyBmaWxsU3R5bGUgdG8g
YSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVu
Y2xlYW4KQEAgLTYsNCArNSwzIEBAIFJlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52
YXMgQnUKIEFjdHVhbCBvdXRwdXQ6CiBQYXNzZWQKIAotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0
eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCShyZXZpc2lv
biA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5
bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQzIEBACis8IURPQ1RZUEUgaHRtbD4K
Kzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlPC90
aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLmZpbGxTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1h
Z2Uuc3Ryb2tlU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIg
dGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Jmx0OzwvYT4KKyA8
YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5j
YW52YXMuaHRtbCI+Y2FudmFzPC9hPi5maWxsU3R5bGU8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlNl
dHRpbmcgZmlsbFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0
aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNl
czoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0
eWxlLmNhbnZhcyI+c2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhczwvYT4KKzxsaT48YSBocmVmPSJo
dHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1Z3pp
bGxhPC9hPgorPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0
OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0i
NTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52
YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52
YXMsIGN0eCkgeworCit2YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZh
cycpOworY2FudmFzMi53aWR0aCA9IDEwMDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2YXIgY3R4
MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKK2N0eDIuZHJhd0ltYWdlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwordmFyIHAgPSBjdHguY3JlYXRlUGF0
dGVybihjYW52YXMyLCAncmVwZWF0Jyk7CitjdHguZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsU3R5
bGUgPSAncmVkJzsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwo
KTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhy
b3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3Ry
eSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0g
Y2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwg
InNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsg
fQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdl
cy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTM5LDUgKzM5LDUgQEAgdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsg
Y3R4LmdldEltYWdlRAogCiB9KTsKIDwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3Vy
Y2UiPgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdl
cy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KIApJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VT
dHlsZS1leHBlY3RlZC50eHQ6NjM2NTUpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8g
ZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwg
W2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZQorU2V0dGluZyBz
dHJva2VTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2Fu
dmFzIEJ1Z3ppbGxhCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tl
U3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxl
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNj
ZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cu
cG5nCiA8IFtpbmRleF0gPgogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUKIFNl
dHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KQEAgLTYsNCArNSwzIEBAIFJlZmVyZW5jZXM6IHNl
Y3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhcyAKIEFjdHVhbCBvdXRwdXQ6CiBQYXNzZWQKIAotCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbDo2
MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsNDMgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVz
dHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5j
c3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9r
ZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4K
KzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2Vj
dXJpdHkuZGF0YVVSSSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9InAi
IHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmx0OzwvYT4K
KyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LmRh
dGFVUkkuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LmRhdGFVUkkiPiZn
dDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+Ljxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkucGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFzPC9hPi5zdHJva2VTdHls
ZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRlcm4g
b2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4K
KzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5o
dG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhcyI+c2VjdXJpdHkuc3Ryb2tl
U3R5bGUuY2FudmFzPC9hPgorPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5v
cmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+Cis8L3VsPgorPC9kaXY+CisK
KzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xh
c3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5G
QUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgor
PHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMy
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAw
OworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcy
ZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcn
KSwgMCwgMCk7Cit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsK
K2N0eC5zdHJva2VTdHlsZSA9IHA7CitjdHguc3Ryb2tlU3R5bGUgPSAncmVkJzsKK3RyeSB7IHZh
ciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhy
b3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4
Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFs
c2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9
IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRp
b246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+
Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9
InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VT
dHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTM5LDUgKzM5LDUgQEAgdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRAog
CiB9KTsKIDwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29t
L3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorPGltZyBzcmM9
Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBp
ZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWlu
Zy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQ6NjM2NTUpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkg
QEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBh
Z2VzLmNvbS95ZWxsb3cucG5nCis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
dGltaW5nCitQYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMg
b3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBjbGVhbgorUmVmZXJlbmNl
czogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcworRGlzYWdyZWVzIHdp
dGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBACi1CbG9ja2VkIGFjY2VzcyB0
byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwog
PCBbaW5kZXhdID4KIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZwogUGF0dGVybiBzYWZl
dHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9u
IHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDYzNjU1KQkoZnJv
bSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnRpbWluZy5odG1sOjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsNDcgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0
OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4u
L3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVz
dHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Cis8bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgor
PHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAi
IHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KKyA8YSBocmVmPSJp
bmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
ZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5o
dG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5w
YXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5j
YW52YXM8L2E+LnRpbWluZzwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVw
ZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRo
ZXIgaXQgc3RpbGwgaXMgY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgor
PHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2Vj
dXJpdHkuc3RhcnQ8L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5
LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+CisKKzwvdWw+
Cis8L2Rpdj4KKzxwIGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZz
ICJ3YXMiCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9
ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxs
YmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+
PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIg
Y2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2FudmFzMi53aWR0
aCA9IDEwMDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29u
dGV4dCgnMmQnKTsKK2N0eDIuZmlsbFN0eWxlID0gJyMwZjAnOworY3R4Mi5maWxsUmVjdCgwLCAw
LCAxMDAsIDUwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcp
OworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwg
MCwgMCk7IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgorY3R4LmZpbGxTdHlsZSA9IHA7
CitjdHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7CitjYW52YXMudG9EYXRhVVJMKCk7CitjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOworX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5
IGlmIHRoZXJlIHdhcyBubyBleGNlcHRpb24KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9
Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5n
IiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnRpbWluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC00Myw1ICs0Myw1IEBAIF9hc3NlcnQodHJ1
ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSAKIAogfSk7CiA8L3NjcmlwdD4KLTxpbWcgc3Jj
PSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBu
ZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2Fu
dmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNv
dXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OjYz
NjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDggQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nCis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jcmVh
dGUKK0NyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMg
b3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0cHV0
OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBACi1CbG9ja2VkIGFjY2VzcyB0byBl
eHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwogPCBb
aW5kZXhdID4KIHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlCiBDcmVhdGluZyBhbiB1bmNsZWFuIHBh
dHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAkocmV2aXNpb24gNjM2NTUp
CShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0
eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2Ny
aXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsg
cmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJz
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Cis8
Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcyI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgor
IDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRs
ZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3JlYXRlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5DcmVh
dGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBo
cmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9h
PgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9w
PgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+
PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4K
KworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywg
Y3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY2FudmFzLnRvRGF0YVVSTCgpOworY3R4Lmdl
dEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKK19hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBp
ZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJo
dHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIg
Y2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMzMsNSArMzMsNSBAQCBfYXNzZXJ0KHRydWUsICJ0cnVlIik7IC8vIG9rYXkgaWYg
dGhlcmUgCiAKIH0pOwogPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVw
YWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Cis8
aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxv
dy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9z
cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4
dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCis8IFtp
bmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jcm9zcworVXNpbmcgYW4gdW5jbGVhbiBwYXR0ZXJu
IG1ha2VzIHRoZSB0YXJnZXQgY2FudmFzIG9yaWdpbi11bmNsZWFuLCBub3QgdGhlIHBhdHRlcm4g
Y2FudmFzCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdGFydAorQWN0dWFsIG91dHB1dDoKK1Bhc3Nl
ZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9z
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwogPCBbaW5kZXhdID4K
IHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MKIFVzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0
aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhcwpA
QCAtNiw0ICs1LDMgQEAgUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKIEFjdHVhbCBvdXRwdXQ6
CiBQYXNzZWQKIAotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3Nz
Lmh0bWwJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+
Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3M8L3RpdGxlPgorPHNjcmlwdCBzcmM9
Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
dGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVh
dGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4K
KzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0i
cCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmx0OzwvYT4KKyA8YSBocmVm
PSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0
bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBh
dHRlcm48L2E+LmNyb3NzPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5Vc2luZyBhbiB1bmNsZWFuIHBh
dHRlcm4gbWFrZXMgdGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0
dGVybiBjYW52YXM8L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3Rh
cnQ8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1
dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9
IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2Fu
dmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2Fu
dmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52
YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0
eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Cit2YXIgcCA9IGN0eDIuY3JlYXRlUGF0dGVy
bihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7CitjdHgu
ZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKK3RyeSB7IHZhciBf
dGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3du
ID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2Vw
dGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorY2FudmFzMi50b0RhdGFVUkwoKTsK
K2N0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOworCisKK30pOworPC9zY3JpcHQ+Cis8aW1n
IHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxv
dy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTQwLDUgKzQwLDUgQEAgY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7
CiAKIH0pOwogPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5j
b20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Cis8aW1nIHNy
Yz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmci
IGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxs
U3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dDo2MzY1
NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29y
cy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2UuZmlsbFN0eWxlCitTZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBk
aWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1Jl
ZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZQorQWN0dWFsIG91dHB1dDoKK1Bhc3Nl
ZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBA
Ci1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdl
cy5jb20veWVsbG93LnBuZwogPCBbaW5kZXhdID4KIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlCiBTZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3Jp
Z2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KQEAgLTYsNCArNSwzIEBA
IFJlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZQogQWN0dWFsIG91dHB1dDoKIFBh
c3NlZAogCi0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZS5odG1sCShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1s
OjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5q
cyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+
Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4KKzxsaW5rIHJlbD0i
bmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3df
b3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGlt
aW5nIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIg
dGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZndDs8L2E+Cis8
aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNs
YXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQt
b3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNs
YXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0
cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZTwv
YT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0Ojwv
cD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAi
PjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+
CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMs
IGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZp
bGxTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0
YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsg
fQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhy
b3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
ZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMzQsNSArMzQsNSBAQCB0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjdHguZ2V0SW1hZ2VECiAKIH0pOwogPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29y
cy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNv
dXJjZSI+Cis8aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1h
Z2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1h
Z2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0
eWxlLWV4cGVjdGVkLnR4dDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4
dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCis8IFtp
bmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZQorU2V0dGluZyBzdHJv
a2VTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0cm9rZVN0eWxl
LmltYWdlCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tl
U3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4
dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtp
bmRleF0gPgogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZQogU2V0dGluZyBzdHJv
a2VTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KQEAgLTYsNCArNSwzIEBAIFJlZmVyZW5jZXM6IHNlY3Vy
aXR5LnN0cm9rZVN0eWxlLmltYWdlCiBBY3R1YWwgb3V0cHV0OgogUGFzc2VkCiAKLQpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VT
dHlsZS5odG1sCShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWw6NjM2NTUpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzgg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLnN0cm9rZVN0eWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9z
Y3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGlu
ayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4KKzxsaW5rIHJlbD0i
bmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlIj4KKzxib2R5IGNsYXNzPSJz
aG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxs
U3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9h
PgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwv
YT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmh0bWwiPmltYWdlPC9hPi5zdHJva2VT
dHlsZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRl
cm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVu
Y2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhy
ZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdHJva2VTdHlsZS5pbWFnZSI+c2VjdXJp
dHkuc3Ryb2tlU3R5bGUuaW1hZ2U8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91
dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3
aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNr
IGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2Fk
ZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIHAgPSBjdHguY3JlYXRlUGF0dGVy
bihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7CitjdHgu
c3Ryb2tlU3R5bGUgPSBwOworY3R4LnN0cm9rZVN0eWxlID0gJ3JlZCc7Cit0cnkgeyB2YXIgX3Ro
cm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9
IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRp
b246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBj
dHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVl
OyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBj
dHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGlt
ZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxs
b3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw1ICsz
NCw1IEBAIHRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZUQKIAogfSk7CiA8
L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cu
cG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRwOi8v
bG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxv
dy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnJlc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0OjYzNjU1KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQgYWNj
ZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cu
cG5nCis8IFtpbmRleF0gPgorc2VjdXJpdHkucmVzZXQKK1Jlc2V0dGluZyB0aGUgY2FudmFzIHN0
YXRlIGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4tY2xlYW4gZmxhZworUmVmZXJlbmNlczogaW5p
dGlhbC5yZXNldAorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBACi1CbG9ja2VkIGFjY2VzcyB0byBl
eHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwogPCBb
aW5kZXhdID4KIHNlY3VyaXR5LnJlc2V0CiBSZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2Vz
IG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWcKQEAgLTYsNCArNSwzIEBAIFJlZmVyZW5j
ZXM6IGluaXRpYWwucmVzZXQKIEFjdHVhbCBvdXRwdXQ6CiBQYXNzZWQKIAotCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucmVzZXQuaHRtbAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbDo2MzY1NSkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzggQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxl
PkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5yZXNldDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVz
dHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5j
c3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5kYXRhVVJJIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0iMmQuZ2V0Y29udGV4
dC5leGlzdHMuaHRtbCIgdGl0bGU9IjJkLmdldGNvbnRleHQuZXhpc3RzIj4KKzxib2R5IGNsYXNz
PSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFj
Y2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5kYXRhVVJJIj4mbHQ7PC9hPgorIDxhIGhy
ZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0iMmQuZ2V0Y29udGV4dC5leGlz
dHMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIDJkLmdldGNvbnRleHQuZXhpc3RzIj4m
Z3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi5y
ZXNldDwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+UmVzZXR0aW5nIHRoZSBjYW52YXMgc3RhdGUgZG9l
cyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVhbiBmbGFnPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+
UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuaW5pdGlh
bC5yZXNldCI+aW5pdGlhbC5yZXNldDwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0i
b3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQi
IHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJh
Y2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+Citf
YWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCitjYW52YXMud2lkdGggPSA1MDsKK2N0
eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7
Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2gg
KGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3Vs
ZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9CitjYW52YXMud2lkdGgg
PSAxMDA7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0g
Y2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwg
InNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9CisKKworfSk7
Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMzQsNSArMzQsNSBAQCB0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9E
YXRhCiAKIH0pOwogPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdl
cy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Cis8aW1n
IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5w
bmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4OiBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CShyZXZp
c2lvbiA2MzY1NSkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0
YXRpb25zLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjgwMiw2ICsyODAyLDcgQEAgQlVHNDQxNTAg
TElOVVggREVCVUcgOiBmYXN0L2Zvcm1zL2lucHV0LQogCiAvLyBOZXcgY2FudmFzIHRlc3Qgc3Vp
dGUgZnJvbSBodHRwOi8vcGhpbGlwLmh0bWw1Lm9yZy90ZXN0cy9jYW52YXMvc3VpdGUvdGVzdHMv
CiBCVUcyMDU1MyBTS0lQIERFRkVSIDogY2FudmFzL3BoaWxpcCA9IFRFWFQKK0JVRzIwNTUzIFNL
SVAgREVGRVIgOiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAgPSBURVhUCiAKIC8vIE5lZWQgdG8g
ZHVtcCBjb250ZXh0IG1lbnUgaXRlbXMgb24gZXZlbnRTZW5kZXIuY29udGV4dENsaWNrKHRydWUp
LgogQlVHV0szOTEwNSA6IGVkaXRpbmcvc3BlbGxpbmcvY29udGV4dC1tZW51LXN1Z2dlc3Rpb25z
Lmh0bWwgPSBURVhUCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkocmV2aXNpb24gNjM2
NTUpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkod29ya2luZyBjb3B5KQpA
QCAtNTY3Niw2ICs1Njc2LDcgQEAgZmFzdC9sb2FkZXIvbnVsbC1yZXF1ZXN0LWFmdGVyLXdpbGxT
ZW5kUgogCiAjIE5ldyBjYW52YXMgdGVzdCBzdWl0ZSBmcm9tIGh0dHA6Ly9waGlsaXAuaHRtbDUu
b3JnL3Rlc3RzL2NhbnZhcy9zdWl0ZS90ZXN0cy8KIGNhbnZhcy9waGlsaXAKK2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcAogCiAjIFNraXAgdGhpcywgaXQncyBwZW5kaW5nIG9uIG9uZSBwYXRjaCBp
biB0aGUgY29tbWl0IHF1ZXVlCiBhY2Nlc3NpYmlsaXR5L2FyaWEtY29udHJvbHMtd2l0aC10YWJz
Lmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCShyZXZpc2lvbiA2MzY1NSkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC0yNDIs
MTQgKzI0Miw2IEBAIGNhbnZhcy9waGlsaXAvdGVzdHMvMmQudGV4dC5mb250LnBhcnNlLnMKIGNh
bnZhcy9waGlsaXAvdGVzdHMvMmQudGV4dC5mb250LnBhcnNlLnNpemUucGVyY2VudGFnZS5kZWZh
dWx0Lmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvMmQudGV4dC5mb250LnBhcnNlLnN5c3RlbS5o
dG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS5odG1s
Ci1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAotY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAotY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAotY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCi1j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAotY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCi1jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAotY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3Rz
L3RvRGF0YVVSTC5qcGVnLmFscGhhLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvdHlwZS5wcm90
b3R5cGUuaHRtbAogCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJKHJldmlzaW9uIDYzNjU1
KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAt
NTMxOCwxNiArNTMxOCw2IEBAIGNhbnZhcy9waGlsaXAvdGVzdHMvMmQudHJhbnNmb3JtYXRpb24u
c2UKIGNhbnZhcy9waGlsaXAvdGVzdHMvMmQudHJhbnNmb3JtYXRpb24udHJhbnNmb3JtLnNrZXdl
ZC5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzL3RvRGF0YVVSTC5qcGVnLnF1YWxpdHkuYmFzaWMu
aHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy90eXBlLnByb3RvdHlwZS5odG1sCi1jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAotY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCi1jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0Lmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvMmQuZHJhd0ltYWdlLmJyb2tl
bi5odG1sCiAKICMgW1F0XSBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnBhdGguc3Ryb2tlLm92ZXJs
YXAuaHRtbCBmYWlscyB3aXRoIFF0LTQuNi4yIG9yIGhpZ2hlcgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ2Fu
bm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2bjptaW1lLXR5cGUg
PSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZwpfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
CkFkZGVkOiBzdm46bWltZS10eXBlCiAgICsgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgoKaVZC
T1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFBQXlBUU1BQUFDUSsrejlBQUFBQTFCTVZFWC8vd0NL
eHZSRkFBQUFGMGxFUVZSNApYdTNBQVEwQUFBQkFNUDFUeTJGem9qWUJBcndBQVVOeGpNa0FBQUFB
U1VWT1JLNUNZSUk9Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61968</attachid>
            <date>2010-07-19 10:40:49 -0700</date>
            <delta_ts>2010-07-20 10:33:22 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>41279_2.patch</filename>
            <type>text/plain</type>
            <size>90850</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYzNjczKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjIgQEAKKzIwMTAtMDctMTkgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgdG8g
c2ltdWxhdGUgcmVtb3RlIGhvc3QKKyAgICAgICAgYWNjZXNzIGFuZCB0aGVuIHBhc3MgdGhlIHRl
c3RzLiBSZW1vdmUgdGhlbSBmcm9tIE1hYyBhbmQgUXQncyBza2lwcGVkIGZpbGVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQu
dHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVz
ZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0OiBD
b3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJ
bWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWw6IENvcGllZCBmcm9tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5o
dG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFn
ZS5pbWFnZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0
ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxT
dHlsZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0LgorICAg
ICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwuCisgICAg
ICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwuCisgICAgICAgICog
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4
cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWw6IENvcGll
ZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3Jvc3MuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVk
LnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxl
Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICog
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwuCisgICAgICAgICogaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dDog
Q29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNl
dC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnJlc2V0Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6
CisgICAgICAgICogcGxhdGZvcm0vbWFjL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQv
U2tpcHBlZDoKKwogMjAxMC0wNy0xOSAgQ2hhbmcgU2h1ICA8Y2hhbmcuc2h1QG5va2lhLmNvbT4K
IAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KSW5kZXg6
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZh
cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2
NzMpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxv
Y2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29t
L3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCi1kcmF3
SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgot
UmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotQWN0dWFsIG91dHB1dDoKLVBh
c3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
ZHJhd0ltYWdlLmNhbnZhcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiA2MzY3
MykKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdl
LmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQxICswLDAgQEAKLTwhRE9DVFlQRSBo
dG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC90aXRs
ZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxl
c2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3Vy
aXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdl
Ij4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIg
dGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1
dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgYWNjZXNz
a2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Jmx0OzwvYT4KLSA8
YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJu
LmNyZWF0ZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1
cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFn
ZTwvYT4uY2FudmFzPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBj
YW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJl
ZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXM8L2E+Ci0K
LTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08
Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBj
bGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08
dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgp
IHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKLWNh
bnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBjYW52
YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKLWN0eC5kcmF3SW1hZ2UoY2FudmFzMiwgMCwgMCk7
Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2gg
KGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3Vs
ZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Ro
cm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7
IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhy
b3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsK
LTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxv
dy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3MykKKysrIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4
cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNz
IHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5n
Ci08IFtpbmRleF0gPgotc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCi1kcmF3SW1hZ2Ugb2YgZGlm
ZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZl
cmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJMIHNlY3Vy
aXR5LmdldEltYWdlRGF0YQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91
dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNpb24gNjM2NzMpCisrKyBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0
OiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3Rz
LmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3Nz
Ij4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRl
cmFuZ2UuaHRtbCIgdGl0bGU9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4K
LTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiB0
aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRw
dXQiPgotPHA+Ci0gPGEgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2Uu
aHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0
c2lkZXJhbmdlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0g
PGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRp
dGxlPSJbbl0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4KLTxoMT48YSBocmVm
PSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJp
dHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgotPHAgY2xhc3M9ImRl
c2MiPmRyYXdJbWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMg
b3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgot
PGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ui
PnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvYT4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVz
dHJlZnMuc2VjdXJpdHkudG9EYXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8L2E+Ci08bGk+PGEg
aHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0YSI+c2VjdXJpdHku
Z2V0SW1hZ2VEYXRhPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFj
dHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50
KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1
bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWN0eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBj
YW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxs
eSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0Rh
dGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRh
KDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRh
KDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9l
eGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0i
cmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3MykKKysrIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRv
IGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08
IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlCi1TZXR0aW5nIGZp
bGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZh
cyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyBC
dWd6aWxsYQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzMpCisrKyBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQzICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgot
PHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGU8L3Rp
dGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2UuZmlsbFN0eWxlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0
aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4mbHQ7PC9hPgotIDxh
IGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRl
eC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0
dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5odG1sIj5jYW52YXM8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0
dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2Vz
OgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5
bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgotPGxpPjxhIGhyZWY9Imh0
dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemls
bGE8L2E+Ci08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6
PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1
MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZh
cz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZh
cywgY3R4KSB7Ci0KLXZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFz
Jyk7Ci1jYW52YXMyLndpZHRoID0gMTAwOwotY2FudmFzMi5oZWlnaHQgPSA1MDsKLXZhciBjdHgy
ID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci12YXIgcCA9IGN0eC5jcmVhdGVQYXR0
ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxTdHls
ZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9
Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2Vz
LmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRl
eDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDYzNjczKQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4K
LXNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxl
IHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMgQnVnemls
bGEKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiA2MzY3MykKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5
bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGU8
L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3Vy
aXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgotPGJvZHkgY2xhc3M9
InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4u
aW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4
XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0
bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
Lmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
Lmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRp
bmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2Vz
OgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdHJva2VT
dHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwvYT4KLTxsaT48YSBocmVm
PSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1
Z3ppbGxhPC9hPgotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0
cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdo
dD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9j
YW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihj
YW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Nh
bnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIg
Y3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdmFyIHAgPSBjdHguY3JlYXRl
UGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7Ci1jdHguc3Ryb2tlU3R5bGUgPSBwOwotY3R4LnN0
cm9rZVN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9E
YXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3Nl
cnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIp
OyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEs
IDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90
aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEs
IDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29v
Z2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2Ui
PgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA2MzY3MykKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBj
b3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRw
Oi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJp
dHkucGF0dGVybi5jYW52YXMudGltaW5nCi1QYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRo
ZXIgdGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBp
cyBjbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxlLmNh
bnZhcwotRGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi1BY3R1YWwgb3V0cHV0
OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAko
cmV2aXNpb24gNjM2NzMpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQ3ICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Nj
cmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5r
IHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2Vj
dXJpdHkucGF0dGVybi5jcm9zcyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2Vj
dXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5k
ZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwi
IGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwv
YT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LnRpbWlu
ZzwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVy
IHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMg
Y2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhy
ZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+
Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52
YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLTxwIGNs
YXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi08cCBjbGFz
cz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRw
dXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFs
bGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+
Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZh
czIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0
eDIuZmlsbFN0eWxlID0gJyMwZjAnOwotY3R4Mi5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKLXZh
ciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOwotY3R4Mi5kcmF3SW1h
Z2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7IC8vIG1ha2Ug
Y2FudmFzMiBvcmlnaW4tdW5jbGVhbgotY3R4LmZpbGxTdHlsZSA9IHA7Ci1jdHguZmlsbFJlY3Qo
MCwgMCwgMTAwLCA1MCk7Ci1jYW52YXMudG9EYXRhVVJMKCk7Ci1jdHguZ2V0SW1hZ2VEYXRhKDAs
IDAsIDEsIDEpOwotX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRoZXJlIHdhcyBu
byBleGNlcHRpb24KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3Vy
Y2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gNjM2NzMpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw4ICswLDAg
QEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBh
Z2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jcmVhdGUK
LUNyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMgb3Jp
Z2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1YWwgb3V0cHV0Ogot
UGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlzaW9uIDYzNjczKQor
KysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0
ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgot
PHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Ci08c2Ny
aXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KLTxs
aW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0i
c2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+
Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9InAi
IHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0OzwvYT4KLSA8YSBocmVm
PSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mi
PiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+
LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3JlYXRl
PC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9lcyBu
b3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+
UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJp
dHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4K
LV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBh
dHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwot
Y2FudmFzLnRvRGF0YVVSTCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKLV9hc3Nl
cnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCi0KLQot
fSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95
ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3MykKKysrIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0
byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwot
PCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MKLVVzaW5nIGFuIHVuY2xlYW4gcGF0
dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0
ZXJuIGNhbnZhcwotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKLUFjdHVhbCBvdXRwdXQ6Ci1Q
YXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNpb24gNjM2NzMpCisr
KyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0NCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0
aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcm9zczwvdGl0bGU+Ci08c2NyaXB0
IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmNyZWF0ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPgotPGxpbmsgcmVs
PSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9
InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRw
dXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgYWNjZXNz
a2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4mbHQ7PC9hPgotIDxh
IGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmciPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJp
dHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRt
bCI+cGF0dGVybjwvYT4uY3Jvc3M8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlVzaW5nIGFuIHVuY2xl
YW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRo
ZSBwYXR0ZXJuIGNhbnZhczwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+
Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0
eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwg
b3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhl
aWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+
PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlv
bihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12
YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLXZhciBwID0gY3R4Mi5jcmVhdGVQ
YXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsK
LWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOwotdHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90
aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cg
ZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBm
YWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3du
ID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2Vw
dGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci1jYW52YXMyLnRvRGF0YVVS
TCgpOwotY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7Ci0KLQotfSk7Ci08L3NjcmlwdD4K
LTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjczKQor
KysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1C
bG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5j
b20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2lu
IGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3Vy
aXR5LmZpbGxTdHlsZS5pbWFnZQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxs
U3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDYzNjczKQor
KysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQ
RSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxT
dHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBo
cmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5j
YW52YXMuZmlsbFN0eWxlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBo
cmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNjZXNza2V5PSJwIiB0
aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmx0OzwvYT4KLSA8YSBo
cmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
Lmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
aHRtbCI+aW1hZ2U8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBm
aWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0
aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNl
czoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0
eWxlLmltYWdlIj5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2U8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4K
LQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBj
bGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2si
PkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+
Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotdmFyIHAgPSBj
dHguY3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAn
cmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUgPSAncmVkJzsKLXRy
eSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkg
eyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRo
cm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3du
ID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Ro
cm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBl
eGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwotPC9z
Y3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBu
ZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gNjM2NzMpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0ZXJu
LmltYWdlLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBh
IGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgot
UmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UKLUFjdHVhbCBvdXRwdXQ6Ci1Q
YXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUu
aHRtbAkocmV2aXNpb24gNjM2NzMpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4v
dGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0
cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+
Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+Ci08
Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRt
bCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VT
dHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRt
bCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0
dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFn
ZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5
bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2Fu
dmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1
bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUu
aW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlPC9hPgotCi08L3VsPgotPC9kaXY+Ci0K
LTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xh
c3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5G
QUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgot
PHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4
LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3Jl
cGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwot
dHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChl
KSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQg
dGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBf
dGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93
IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08
L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cu
cG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjczKQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEs
OSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnJlc2V0Ci1S
ZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFu
IGZsYWcKLVJlZmVyZW5jZXM6IGluaXRpYWwucmVzZXQKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQK
LQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5yZXNldC5odG1sCShyZXZpc2lvbiA2MzY3MykKKysrIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucmVz
ZXQ8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJl
Zj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+Ci08bGlu
ayByZWw9Im5leHQiIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIHRpdGxlPSIyZC5n
ZXRjb250ZXh0LmV4aXN0cyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEg
aHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2Vj
dXJpdHkuZGF0YVVSSSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9h
PgotIDxhIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0
bGU9IltuXSAyZC5nZXRjb250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRl
eC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgotPHAgY2xhc3M9ImRlc2Mi
PlJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4tY2xl
YW4gZmxhZzwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEg
aHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRpYWwucmVzZXQ8L2E+
Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+
Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48
cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgot
Ci08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBj
dHgpIHsKLQotY2FudmFzLndpZHRoID0gNTA7Ci1jdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxz
ZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZp
bmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMu
dG9EYXRhVVJMKCkiKTsgfQotY2FudmFzLndpZHRoID0gMTAwOwotdHJ5IHsgdmFyIF90aHJvd24g
PSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVl
OyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBj
YW52YXMudG9EYXRhVVJMKCkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0
cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNs
YXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy5jc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzLmNzcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTM0IEBA
CitodG1sLmZhaWwgeworCWJhY2tncm91bmQ6ICNmNjY7Cit9CitodG1sLnBhc3MgeworCWJhY2tn
cm91bmQ6ICM2ZjY7Cit9CitodG1sLm5lZWRzX2NoZWNrIHsKKwliYWNrZ3JvdW5kOiAjOTlmOwor
fQorCitib2R5IHsKKwlmb250LXNpemU6IHNtYWxsOworCWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlm
OworCWNvbG9yOiBibGFjazsKK30KKworYTpsaW5rIHsKKwljb2xvcjogIzAwYzsKK30KK2E6dmlz
aXRlZCB7CisJY29sb3I6ICM4MDg7Cit9CisKK2JvZHkuZnJhbWVkIHsKKwlmb250LXNpemU6IHgt
c21hbGw7Cit9CisKK2gxIHsKKwlmb250LXNpemU6IGxhcmdlcjsKKwltYXJnaW46IDA7CisJcGFk
ZGluZy1sZWZ0OiAwLjVlbTsKKwl0ZXh0LWluZGVudDogLTAuNWVtOworfQorCitwIHsKKwltYXJn
aW46IDA7Cit9CisKK3Aubm90ZXMgeworCW1hcmdpbi1ib3R0b206IDAuNWVtOworCWZvbnQtc3R5
bGU6IGl0YWxpYzsKK30KKwordWwgeworCW1hcmdpbjogMDsKKwltYXJnaW4tYm90dG9tOiAwLjVl
bTsKKwlwYWRkaW5nOiAwOworCXBhZGRpbmctbGVmdDogMWVtOworfQorCisucmVmcyB7CisJZm9u
dC1zdHlsZTogaXRhbGljOworCW1hcmdpbi1ib3R0b206IDAuNWVtOworfQorCisucmVmcyB1bCB7
CisJZGlzcGxheTogaW5saW5lOworCW1hcmdpbjogMDsKKwlwYWRkaW5nOiAwOworfQorCisucmVm
cyBsaSB7CisJZGlzcGxheTogaW5saW5lOworCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKKwltYXJn
aW46IDA7CisJcGFkZGluZzogMDsKK30KKworY2FudmFzIHsKKwlkaXNwbGF5OiBub25lOworCXZp
c2liaWxpdHk6IGhpZGRlbjsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOworCWJhY2tncm91bmQ6
IHVybChpbWFnZXMvYmFja2dyb3VuZC5wbmcpOworfQorCitpbWcuZXhwZWN0ZWQgeworCWRpc3Bs
YXk6IG5vbmU7CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3JvdW5kOiB1cmwoaW1h
Z2VzL2JhY2tncm91bmQucG5nKTsKK30KKworaWZyYW1lIHsKKwlib3JkZXI6IDJweCAjZjBmIHNv
bGlkOworfQorCisub3V0cHV0IHsKKwlkaXNwbGF5OiBub25lOworfQorCisuc2hvd19vdXRwdXQg
Lm91dHB1dCwgLm5lZWRzX2NoZWNrIC5vdXRwdXQgIHsKKwlkaXNwbGF5OiBibG9jayAhaW1wb3J0
YW50OworCXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKK30KKworLnNob3dfb3V0cHV0
ICNzaG93X291dHB1dCB7CisJZGlzcGxheTogbm9uZTsKK30KKworLnJlc291cmNlIHsKKwl2aXNp
YmlsaXR5OiBoaWRkZW47CisJaGVpZ2h0OiAwOworfQorCisuZmFsbGJhY2sgeworCWZvbnQtc2l6
ZTogMmVtOworCWZvbnQtd2VpZ2h0OiBib2xkOworCWNvbG9yOiAjYTAwOworfQorCisKK2h0bWwu
bWluaW1hbCBib2R5IHsKKwljb2xvcjogd2hpdGU7Cit9CitodG1sLmZhaWwubWluaW1hbCB7CisJ
YmFja2dyb3VuZDogI2YwMDsKK30KK2h0bWwucGFzcy5taW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAj
MDgwOworfQoraHRtbC5uZWVkc19jaGVjay5taW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAjMDA4Owor
fQorLm1pbmltYWwgI2QgeworCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKK30KKy5taW5pbWFs
IC5leHBlY3RlZHRleHQgeworCXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OworfQorI3Bh
c3N0ZXh0LCAjZmFpbHRleHQgeworCWRpc3BsYXk6IG5vbmU7Cit9CisubWluaW1hbC5wYXNzICNw
YXNzdGV4dCwgLm1pbmltYWwuZmFpbCAjZmFpbHRleHQgeworCWRpc3BsYXk6IGJsb2NrOworfQpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmpzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNjEgQEAKK2Z1bmN0aW9uIF92YWxUb1N0cmlu
Zyh2YWwpCit7CisgICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkIHx8IHZhbCA9PT0gbnVsbCkKKyAg
ICAgICAgcmV0dXJuICdbJyArIHR5cGVvZih2YWwpICsgJ10nOworICAgIHJldHVybiB2YWwudG9T
dHJpbmcoKSArICdbJyArIHR5cGVvZih2YWwpICsgJ10nOworfQorCit2YXIgX2hleDJkZWNfdGFi
bGUgPSB7CisgICAgMDowLCAxOjEsIDI6MiwgMzozLCA0OjQsIDU6NSwgNjo2LCA3OjcsIDg6OCwg
OTo5LAorICAgIGE6MTAsIGI6MTEsIGM6MTIsIGQ6MTMsIGU6MTQsIGY6MTUsCisgICAgQToxMCwg
QjoxMSwgQzoxMiwgRDoxMywgRToxNCwgRjoxNQorfTsKK2Z1bmN0aW9uIF9oZXgyZGVjKGhleCkK
K3sKKyAgICByZXR1cm4gX2hleDJkZWNfdGFibGVbaGV4LmNoYXJBdCgwKV0qMTYgKyBfaGV4MmRl
Y190YWJsZVtoZXguY2hhckF0KDEpXTsKK30KKwordmFyIF9mYWlsZWQgPSBmYWxzZTsKK3ZhciBf
YXNzZXJ0ZWQgPSBmYWxzZTsKK2Z1bmN0aW9uIF93YXJuKHRleHQpCit7CisgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2QnKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCds
aScpKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSk7Cit9CitmdW5j
dGlvbiBfZmFpbCh0ZXh0KQoreworICAgIF93YXJuKHRleHQpOworICAgIF9mYWlsZWQgPSB0cnVl
OworfQorCitmdW5jdGlvbiBfYXNzZXJ0KGNvbmQsIHRleHQpCit7CisgICAgX2Fzc2VydGVkID0g
dHJ1ZTsKKyAgICBpZiAoISBjb25kKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjog
JyArIHRleHQpOworfQorCitmdW5jdGlvbiBfYXNzZXJ0U2FtZShhLCBiLCB0ZXh0X2EsIHRleHRf
YikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmIChhICE9PSBiKQorICAgICAgICBf
ZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9hICsgJyA9PT0gJyArIHRleHRfYiArCisg
ICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnLCBleHBlY3RlZCAn
ICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsKK30KKworZnVuY3Rpb24gX2Fzc2VydERpZmZlcmVu
dChhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlm
IChhID09PSBiKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9hICsg
JyAhPT0gJyArIHRleHRfYiArCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJp
bmcoYSkgKyAnLCBleHBlY3RlZCBub3QgJyArIF92YWxUb1N0cmluZyhiKSArICcpJyk7Cit9CisK
K2Z1bmN0aW9uIF9hc3NlcnRFcXVhbChhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBfYXNz
ZXJ0ZWQgPSB0cnVlOworICAgIGlmIChhICE9IGIpCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNz
ZXJ0aW9uICcgKyB0ZXh0X2EgKyAnID09ICcgKyB0ZXh0X2IgKworICAgICAgICAgICAgICAgICcg
KGdvdCAnICsgX3ZhbFRvU3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgJyArIF92YWxUb1N0cmluZyhi
KSArICcpJyk7Cit9CisKK2Z1bmN0aW9uIF9hc3NlcnRNYXRjaChhLCBiLCB0ZXh0X2EsIHRleHRf
YikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmICghIGEubWF0Y2goYikpCisgICAg
ICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0ZXh0X2EgKyAnIG1hdGNoZXMgJyArIHRl
eHRfYiArCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnKScp
OworfQorCisKK3ZhciBfbWFudWFsX2NoZWNrID0gZmFsc2U7CisKK2Z1bmN0aW9uIF9yZXF1aXJl
TWFudWFsQ2hlY2soKQoreworICAgIF9tYW51YWxfY2hlY2sgPSB0cnVlOworfQorCitmdW5jdGlv
biBfY3Jhc2goKQoreworICAgIF9mYWlsKCdBYm9ydGVkIGR1ZSB0byBwcmVkaWN0ZWQgY3Jhc2gn
KTsKK30KKwordmFyIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gZmFsc2U7Cit2YXIgX2dldElt
YWdlRGF0YUlzUHJlbXVsLCBfZ2V0SW1hZ2VEYXRhSXNCR1JBOworCitmdW5jdGlvbiBfZ2V0UGl4
ZWwoY2FudmFzLCB4LHkpCit7CisgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcp
OworICAgIGlmIChjdHggJiYgdHlwZW9mKGN0eC5nZXRJbWFnZURhdGEpICE9ICd1bmRlZmluZWQn
KQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgIHZhciBpbWdkYXRhID0gY3R4Lmdl
dEltYWdlRGF0YSh4LCB5LCAxLCAxKTsKKyAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAg
ICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3
bgorICAgICAgICAgICAgLy8gZGF0YTogVVJMcyBvbnRvIHRoZSBjYW52YXMKKyAgICAgICAgICAg
IGltZ2RhdGEgPSBudWxsOworICAgICAgICB9CisgICAgICAgIGlmIChpbWdkYXRhKQorICAgICAg
ICB7CisgICAgICAgICAgICAvLyBXb3JrIGFyb3VuZCBnZXRJbWFnZURhdGEgYnVncywgc2luY2Ug
d2Ugd2FudCB0aGUgb3RoZXIgdGVzdHMgdG8KKyAgICAgICAgICAgIC8vIGNhcnJ5IG9uIHdvcmtp
bmcgYXMgd2VsbCBhcyBwb3NzaWJsZQorICAgICAgICAgICAgaWYgKCEgX2dldEltYWdlRGF0YUNh
bGlicmF0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIGMyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CisgICAgICAgICAgICAgICAgYzIud2lkdGggPSBj
Mi5oZWlnaHQgPSAxOworICAgICAgICAgICAgICAgIHZhciBjdHgyID0gYzIuZ2V0Q29udGV4dCgn
MmQnKTsKKyAgICAgICAgICAgICAgICBjdHgyLmZpbGxTdHlsZSA9ICdyZ2JhKDAsIDI1NSwgMjU1
LCAwLjUpJzsKKyAgICAgICAgICAgICAgICBjdHgyLmZpbGxSZWN0KDAsIDAsIDEsIDEpOworICAg
ICAgICAgICAgICAgIHZhciBkYXRhMiA9IGN0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpLmRh
dGE7CisKKyAgICAgICAgICAgICAgICAvLyBGaXJlZm94IHJldHVybnMgcHJlbXVsdGlwbGllZCBh
bHBoYQorCisgICAgICAgICAgICAgICAgaWYgKGRhdGEyWzFdID4gMTAwICYmIGRhdGEyWzFdIDwg
MTUwKQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNQcmVtdWwgPSB0cnVlOwor
ICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgX2dldEltYWdlRGF0YUlz
UHJlbXVsID0gZmFsc2U7CisKKyAgICAgICAgICAgICAgICAvLyBPcGVyYSBNaW5pIDQgQmV0YSBy
ZXR1cm5zIEJHUkEgaW5zdGVhZCBvZiBSR0JBCisKKyAgICAgICAgICAgICAgICBpZiAoZGF0YTJb
MF0gPiAyNTAgJiYgZGF0YTJbMl0gPCA1KQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VE
YXRhSXNCR1JBID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
ICAgIF9nZXRJbWFnZURhdGFJc0JHUkEgPSBmYWxzZTsKKworICAgICAgICAgICAgICAgIF9nZXRJ
bWFnZURhdGFDYWxpYnJhdGVkID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
Ly8gVW5kbyB0aGUgQkdSQSBmbGlwcGluZworICAgICAgICAgICAgdmFyIHJnYmEgPSAoX2dldElt
YWdlRGF0YUlzQkdSQQorICAgICAgICAgICAgICAgID8gWyBpbWdkYXRhLmRhdGFbMl0sIGltZ2Rh
dGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzBdLCBpbWdkYXRhLmRhdGFbM10gXQorICAgICAgICAg
ICAgICAgIDogWyBpbWdkYXRhLmRhdGFbMF0sIGltZ2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRh
WzJdLCBpbWdkYXRhLmRhdGFbM10gXSk7CisKKyAgICAgICAgICAgIGlmICghIF9nZXRJbWFnZURh
dGFJc1ByZW11bCkKKyAgICAgICAgICAgICAgICByZXR1cm4gcmdiYTsKKworICAgICAgICAgICAg
Ly8gVW5kbyB0aGUgcHJlbXVsdGlwbHlpbmcKKyAgICAgICAgICAgIGlmIChyZ2JhWzNdID09IDAp
CisgICAgICAgICAgICAgICAgcmV0dXJuIFsgMCwgMCwgMCwgMCBdOworICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHZhciBhID0gcmdiYVszXSAvIDI1NTsK
KyAgICAgICAgICAgICAgICByZXR1cm4gWworICAgICAgICAgICAgICAgICAgICBNYXRoLnJvdW5k
KHJnYmFbMF0vYSksCisgICAgICAgICAgICAgICAgICAgIE1hdGgucm91bmQocmdiYVsxXS9hKSwK
KyAgICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChyZ2JhWzJdL2EpLAorICAgICAgICAgICAg
ICAgICAgICByZ2JhWzNdCisgICAgICAgICAgICAgICAgXTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgfQorICAgIH0KKworICAgIHRyeSB7IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCdvcGVyYS0y
ZGdhbWUnKTsgfSBjYXRjaCAoZSkgeyAvKiBGaXJlZm94IHRocm93cyAqLyB9CisgICAgaWYgKGN0
eCAmJiB0eXBlb2YoY3R4LmdldFBpeGVsKSAhPSAndW5kZWZpbmVkJykKKyAgICB7CisgICAgICAg
IHRyeSB7CisgICAgICAgICAgICB2YXIgYyA9IGN0eC5nZXRQaXhlbCh4LCB5KTsKKyAgICAgICAg
fSBjYXRjaCAoZSkgeworICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRp
b24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3bgorICAgICAgICAgICAgLy8gZGF0YTogVVJMcyBvbnRv
IHRoZSBjYW52YXMKKyAgICAgICAgICAgIGMgPSBudWxsOworICAgICAgICB9CisgICAgICAgIGlm
IChjKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgbWF0Y2hlcyA9IC9ecmdiYVwoKFxkKyks
IChcZCspLCAoXGQrKSwgKFtcZFwuXSspXCkkLy5leGVjKGMpOworICAgICAgICAgICAgaWYgKG1h
dGNoZXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIFsgbWF0Y2hlc1sxXSwgbWF0Y2hlc1syXSwg
bWF0Y2hlc1szXSwgTWF0aC5yb3VuZChtYXRjaGVzWzRdKjI1NSkgXTsKKyAgICAgICAgICAgIG1h
dGNoZXMgPSAvXiMoLi4pKC4uKSguLikkLy5leGVjKGMpOworICAgICAgICAgICAgaWYgKG1hdGNo
ZXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIFsgX2hleDJkZWMobWF0Y2hlc1sxXSksIF9oZXgy
ZGVjKG1hdGNoZXNbMl0pLCBfaGV4MmRlYyhtYXRjaGVzWzNdKSwgMjU1IF07CisgICAgICAgIH0K
KyAgICB9CisgICAgLy9fd2FybigiKENhbid0IHRlc3QgcGl4ZWwgdmFsdWUpIik7CisgICAgX21h
bnVhbF9jaGVjayA9IHRydWU7CisgICAgcmV0dXJuIHVuZGVmaW5lZDsKK30KKworZnVuY3Rpb24g
X2Fzc2VydFBpeGVsKGNhbnZhcywgeCx5LCByLGcsYixhLCBwb3MsIGNvbG91cikKK3sKKyAgICBf
YXNzZXJ0ZWQgPSB0cnVlOworICAgIHZhciBjID0gX2dldFBpeGVsKGNhbnZhcywgeCx5KTsKKyAg
ICBpZiAoYyAmJiAhIChjWzBdID09IHIgJiYgY1sxXSA9PSBnICYmIGNbMl0gPT0gYiAmJiBjWzNd
ID09IGEpKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogZ290IHBpeGVsIFsnICsg
YyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywnK2crJywnK2IrJywnK2Er
J10nKTsKK30KKworZnVuY3Rpb24gX2Fzc2VydFBpeGVsQXBwcm94KGNhbnZhcywgeCx5LCByLGcs
YixhLCBwb3MsIGNvbG91ciwgdG9sZXJhbmNlKQoreworICAgIF9hc3NlcnRlZCA9IHRydWU7Cisg
ICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpOworICAgIGlmIChjKQorICAgIHsKKyAg
ICAgICAgdmFyIGRpZmYgPSBNYXRoLm1heChNYXRoLmFicyhjWzBdLXIpLCBNYXRoLmFicyhjWzFd
LWcpLCBNYXRoLmFicyhjWzJdLWIpLCBNYXRoLmFicyhjWzNdLWEpKTsKKyAgICAgICAgaWYgKGRp
ZmYgPiB0b2xlcmFuY2UpCisgICAgICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogZ290
IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywnK2cr
JywnK2IrJywnK2ErJ10gKy8tICcrdG9sZXJhbmNlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIF9h
ZGRUZXN0KHRlc3QpCit7CisgICAgdmFyIGRlZmVycmVkID0gZmFsc2U7CisgICAgd2luZG93LmRl
ZmVyVGVzdCA9IGZ1bmN0aW9uICgpIHsgZGVmZXJyZWQgPSB0cnVlOyB9OworICAgIGZ1bmN0aW9u
IGVuZFRlc3QoKQorICAgIHsKKyAgICAgICAgaWYgKF9mYWlsZWQpIC8vIHRlc3QgZmFpbGVkCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05hbWUg
Kz0gJyBmYWlsJzsKKyAgICAgICAgICAgIHdpbmRvdy5fdGVzdFN0YXR1cyA9IFsnZmFpbCcsIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MXTsKKyAgICAgICAgfQorICAgICAg
ICBlbHNlIGlmIChfbWFudWFsX2NoZWNrIHx8ICFfYXNzZXJ0ZWQpCisgICAgICAgIHsgLy8gdGVz
dCBjYXNlIGV4cGxpY2l0bHkgYXNrZWQgZm9yIGEgbWFudWFsIGNoZWNrLCBvciBubyBhdXRvbWF0
aWMgYXNzZXJ0aW9ucyB3ZXJlIHBlcmZvcm1lZAorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ2QnKS5pbm5lckhUTUwgKz0gJzxsaT5DYW5ub3QgYXV0b21hdGljYWxseSB2ZXJp
ZnkgcmVzdWx0JzsKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05h
bWUgKz0gJyBuZWVkc19jaGVjayc7CisgICAgICAgICAgICB3aW5kb3cuX3Rlc3RTdGF0dXMgPSBb
J2NoZWNrJywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOworICAgICAg
ICB9CisgICAgICAgIGVsc2UgLy8gdGVzdCBzdWNjZWVkZWQKKyAgICAgICAgeworICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUwgKz0gJzxsaT5QYXNzZWQn
OworICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIHBh
c3MnOworICAgICAgICAgICAgd2luZG93Ll90ZXN0U3RhdHVzID0gWydwYXNzJywgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOworICAgICAgICB9CisgICAgICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci5ub3RpZnlEb25lKCk7CisgICAgfQorICAgIHdpbmRvdy5lbmRUZXN0ID0gZW5kVGVzdDsK
KyAgICB3aW5kb3cud3JhcEZ1bmN0aW9uID0gZnVuY3Rpb24gKGYpCisgICAgeworICAgICAgICBy
ZXR1cm4gZnVuY3Rpb24oKQorICAgICAgICB7CisgICAgICAgICAgICB0cnkKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBmLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBjYXRjaCAoZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBfZmFpbCgnQWJvcnRlZCB3aXRoIGV4Y2VwdGlvbjogJyArIGUubWVzc2FnZSk7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBlbmRUZXN0KCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB3
aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkKKyAgICB7CisgICAgICAgIGlmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1
bXBBc1RleHQoKTsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICAgICAgfQorICAgICAgICB0cnkKKyAgICAgICAgeworICAgICAgICAgICAgdmFy
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjJyk7CisgICAgICAgICAgICB2YXIg
Y3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7CisgICAgICAgICAgICB0ZXN0KGNhbnZhcywg
Y3R4KTsKKyAgICAgICAgfQorICAgICAgICBjYXRjaCAoZSkKKyAgICAgICAgeworICAgICAgICAg
ICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2UpOworICAgICAg
ICAgICAgZGVmZXJyZWQgPSBmYWxzZTsgLy8gY2FuY2VsIGFueSBkZWZlcmVuY2UKKyAgICAgICAg
fQorCisgICAgICAgIGlmICghIGRlZmVycmVkKQorICAgICAgICAgICAgZW5kVGVzdCgpOworICAg
IH07Cit9CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQu
dHh0OjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzCitkcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZh
cyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwor
QWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBA
Ci1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdl
cy5jb20veWVsbG93LnBuZwogPCBbaW5kZXhdID4KIHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMK
IGRyYXdJbWFnZSBvZiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNs
ZWFuCkBAIC02LDQgKzUsMyBAQCBSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFz
CiBBY3R1YWwgb3V0cHV0OgogUGFzc2VkCiAKLQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWw6
NjM2NTUpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDEg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1h
Z2UuY2FudmFzPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8
bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InBy
ZXYiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHku
ZHJhd0ltYWdlLmltYWdlIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5jcmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KKzxib2R5IGNs
YXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1h
Z2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFn
ZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9
InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBz
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdl
Lmh0bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5kcmF3SW1h
Z2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4K
KzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5o
dG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXM8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFs
IG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9w
PjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rp
b24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwor
dmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmRyYXdJbWFnZShkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK2N0eC5kcmF3SW1hZ2Uo
Y2FudmFzMiwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRh
VVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQo
X3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9
Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEp
Iik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xl
cGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgor
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zNyw1
ICszNyw1IEBAIHRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZUQKIAogfSk7
CiA8L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRw
Oi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY1
NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1h
Z2UuaW1hZ2UtZXhwZWN0ZWQudHh0OjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5h
bCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhd
ID4KK3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZQorZHJhd0ltYWdlIG9mIGRpZmZlcmVudC1vcmln
aW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2Vj
dXJpdHkuZHJhd0ltYWdlLmltYWdlIHNlY3VyaXR5LnRvRGF0YVVSTCBzZWN1cml0eS5nZXRJbWFn
ZURhdGEKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKworCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDQgKzEs
MyBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xl
cGFnZXMuY29tL3llbGxvdy5wbmcKIDwgW2luZGV4XSA+CiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1h
Z2UKIGRyYXdJbWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMg
b3JpZ2luLXVuY2xlYW4KQEAgLTYsNCArNSwzIEBAIFJlZmVyZW5jZXM6IHNlY3VyaXR5LmRyYXdJ
bWFnZS5pbWFnZSBzZWMKIEFjdHVhbCBvdXRwdXQ6CiBQYXNzZWQKIAotCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCShyZXZpc2lvbiA2MzY1NSkJ
KGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2Uu
aW1hZ2UuaHRtbDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJp
dHkuZHJhd0ltYWdlLmltYWdlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9z
Y3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGlu
ayByZWw9InByZXYiIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0
bWwiIHRpdGxlPSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5nZSI+Cis8bGluayBy
ZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgdGl0bGU9InNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxw
PgorIDxhIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlLmh0bWwiIGFj
Y2Vzc2tleT0icCIgdGl0bGU9IltwXSB0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5n
ZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9
InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25d
IHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJ
bWFnZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmltYWdlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5kcmF3
SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBo
cmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj5zZWN1cml0
eS5kcmF3SW1hZ2UuaW1hZ2U8L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNl
Y3VyaXR5LnRvRGF0YVVSTCI+c2VjdXJpdHkudG9EYXRhVVJMPC9hPgorPGxpPjxhIGhyZWY9InNw
ZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5nZXRJbWFnZURhdGEiPnNlY3VyaXR5LmdldEltYWdl
RGF0YTwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0
cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdo
dD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9j
YW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihj
YW52YXMsIGN0eCkgeworCitjdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5
ZWxsb3cucG5nJyksIDAsIDApOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRv
RGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNz
ZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCki
KTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAx
LCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChf
dGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAx
LCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdv
b2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNl
Ij4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMzQs
NSArMzQsNSBAQCB0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VECiAKIH0p
OwogPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVs
bG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Cis8aW1nIHNyYz0iaHR0
cDovL2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5
ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxl
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dDo2MzY1NSkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUKK1NldHRpbmcgZmlsbFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1
bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2Vz
OiBzZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIEJ1Z3ppbGxhCitBY3R1YWwgb3V0cHV0OgorUGFz
c2VkCisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsx
LDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtpbmRleF0gPgogc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuZmlsbFN0eWxlCiBTZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVh
biBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgpAQCAtNiw0ICs1LDMgQEAg
UmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyBCdQogQWN0dWFsIG91dHB1dDoK
IFBhc3NlZAogCi0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sOjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsNDMgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4u
L3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVz
dHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4K
KzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Cis8Ym9k
eSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltp
bmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5o
dG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJv
a2VTdHlsZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1
cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9h
Pi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+
LmZpbGxTdHlsZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBw
YXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xl
YW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9
InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5m
aWxsU3R5bGUuY2FudmFzPC9hPgorPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEubW96aWxs
YS5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+Cis8L3VsPgorPC9kaXY+
CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIg
Y2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNr
Ij5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3Vs
PgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52
YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0g
MTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0
KCcyZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5w
bmcnKSwgMCwgMCk7Cit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQn
KTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJv
d24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhj
ZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxz
ZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0g
dHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlv
bjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4K
KzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMzksNSAr
MzksNSBAQCB0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VECiAKIH0pOwog
PC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93
LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Cis8aW1nIHNyYz0iaHR0cDov
L2xvY2FsaG9zdDo4MDAwL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxs
b3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dDo2MzY1
NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4
Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCitTZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVy
biBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitS
ZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMgQnVnemlsbGEKK0FjdHVhbCBv
dXRwdXQ6CitQYXNzZWQKKworCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDQgKzEsMyBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKIDwgW2luZGV4XSA+CiBzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZQogU2V0dGluZyBzdHJva2VTdHlsZSB0byBh
IHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5j
bGVhbgpAQCAtNiw0ICs1LDMgQEAgUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2Fu
dmFzIAogQWN0dWFsIG91dHB1dDoKIFBhc3NlZAogCi0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VT
dHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZp
c2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOjYzNjU1KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0
cm9rZVN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBF
IGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9r
ZVN0eWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgdGl0bGU9InNl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVm
PSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kYXRhVVJJIj4KKzxib2R5
IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwi
PltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9
Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkuZGF0YVVSSSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
cGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LnN0cm9rZVN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNj
Ij5TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBt
YWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVm
ZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHku
c3Ryb2tlU3R5bGUuY2FudmFzIj5zZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXM8L2E+Cis8bGk+
PGEgaHJlZj0iaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU0
MTI3Ij5CdWd6aWxsYTwvYT4KKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0
dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAw
IiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQp
PC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVu
Y3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUw
OwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmRyYXdJbWFnZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3ZhciBwID0gY3R4
LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0eWxlID0gcDsK
K2N0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2Fu
dmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkg
eyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRh
VVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgw
LCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fz
c2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgw
LCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhj
b3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJl
c291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMzksNSArMzksNSBAQCB0cnkgeyB2
YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VECiAKIH0pOwogPC9zY3JpcHQ+Ci08aW1n
IHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxv
dy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Cis8aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAw
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0i
cmVzb3VyY2UiPgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NTUpCShm
cm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nLWV4cGVjdGVkLnR4dDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8g
ZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwg
W2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcKK1BhdHRlcm4gc2FmZXR5
IGRlcGVuZHMgb24gd2hldGhlciB0aGUgc291cmNlIHdhcyBvcmlnaW4tY2xlYW4sIG5vdCBvbiB3
aGV0aGVyIGl0IHN0aWxsIGlzIGNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdGFydCBzZWN1
cml0eS5maWxsU3R5bGUuY2FudmFzCitEaXNhZ3JlZXMgd2l0aCBzcGVjIG9uICJpcyIgdnMgIndh
cyIKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5
KQpAQCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8v
ZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtpbmRleF0gPgogc2VjdXJpdHku
cGF0dGVybi5jYW52YXMudGltaW5nCiBQYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIg
dGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBj
bGVhbgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy50aW1pbmcuaHRtbAkocmV2aXNpb24gNjM2NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWw6NjM2NTUpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0NyBAQAor
PCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZzwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0Pgor
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJw
cmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmNyb3NzIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0
eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5w
YXR0ZXJuLmNyb3NzIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+
CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNjZXNz
a2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4mZ3Q7
PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4udGltaW5nPC9oMT4K
KzxwIGNsYXNzPSJkZXNjIj5QYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHNv
dXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBjbGVhbjwv
cD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3Bl
Yy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KKzxsaT48
YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyI+c2Vj
dXJpdHkuZmlsbFN0eWxlLmNhbnZhczwvYT4KKworPC91bD4KKzwvZGl2PgorPHAgY2xhc3M9Im5v
dGVzIj5EaXNhZ3JlZXMgd2l0aCBzcGVjIG9uICJpcyIgdnMgIndhcyIKKzxwIGNsYXNzPSJvdXRw
dXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lk
dGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBj
b250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRU
ZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWln
aHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOworY3R4Mi5maWxs
U3R5bGUgPSAnIzBmMCc7CitjdHgyLmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOwordmFyIHAgPSBj
dHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7CitjdHgyLmRyYXdJbWFnZShkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsgLy8gbWFrZSBjYW52YXMy
IG9yaWdpbi11bmNsZWFuCitjdHguZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsUmVjdCgwLCAwLCAx
MDAsIDUwKTsKK2NhbnZhcy50b0RhdGFVUkwoKTsKK2N0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwg
MSk7CitfYXNzZXJ0KHRydWUsICJ0cnVlIik7IC8vIG9rYXkgaWYgdGhlcmUgd2FzIG5vIGV4Y2Vw
dGlvbgorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVw
YWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGlt
aW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTQzLDUgKzQzLDUgQEAgX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlm
IHRoZXJlIAogCiB9KTsKIDwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xl
cGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgor
PGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KIApJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jl
YXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQ6NjM2NTUpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAorQmxvY2tlZCBhY2Nlc3Mg
dG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcK
KzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZQorQ3JlYXRpbmcgYW4gdW5jbGVh
biBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJl
bmNlczogc2VjdXJpdHkuc3RhcnQKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhj
b3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtpbmRleF0gPgogc2VjdXJpdHkucGF0
dGVybi5jcmVhdGUKIENyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNyZWF0ZS5odG1sCShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sOjYzNjU1KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzNyBAQAorPCFET0NUWVBF
IGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlPC90aXRs
ZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxl
c2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52
YXMiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwi
IHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1
dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIGFjY2Vz
c2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4mbHQ7PC9hPgor
IDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVy
bi5jcm9zcyI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1
cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9h
Pi5jcmVhdGU8L2gxPgorPHAgY2xhc3M9ImRlc2MiPkNyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVy
biBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNz
PSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVm
cy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKwor
PHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFz
cz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZB
SUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8
c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIHAgPSBjdHgu
Y3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVw
ZWF0Jyk7CitjYW52YXMudG9EYXRhVVJMKCk7CitjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEp
OworX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRoZXJlIHdhcyBubyBleGNlcHRp
b24KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFn
ZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw1ICszMyw1IEBA
IF9hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSAKIAogfSk7CiA8L3Njcmlw
dD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBp
ZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmci
IGNsYXNzPSJyZXNvdXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0
ZWQudHh0OjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0
ZXJuLmNyb3NzCitVc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMgdGhlIHRhcmdldCBjYW52
YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXMKK1JlZmVyZW5jZXM6IHNl
Y3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsx
LDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtpbmRleF0gPgogc2VjdXJpdHkucGF0dGVybi5jcm9z
cwogVXNpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIG1ha2VzIHRoZSB0YXJnZXQgY2FudmFzIG9yaWdp
bi11bmNsZWFuLCBub3QgdGhlIHBhdHRlcm4gY2FudmFzCkBAIC02LDQgKzUsMyBAQCBSZWZlcmVu
Y2VzOiBzZWN1cml0eS5zdGFydAogQWN0dWFsIG91dHB1dDoKIFBhc3NlZAogCi0KSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNyb3NzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNpb24gNjM2NTUp
CShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
cm9zcy5odG1sOjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCww
ICsxLDQ0IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHku
cGF0dGVybi5jcm9zczwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0
PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVs
PSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiB0aXRsZT0ic2VjdXJp
dHkucGF0dGVybi5jcmVhdGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRp
bWluZyI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5
LnBhdHRlcm4uY3JlYXRlIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08
L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZndDs8
L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jvc3M8L2gxPgor
PHAgY2xhc3M9ImRlc2MiPlVzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0
IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhczwvcD4KKzxkaXYg
Y2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rl
c3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KKworPC91bD4KKzwvZGl2
PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMi
IGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFj
ayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91
bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgY2Fu
dmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2FudmFzMi53aWR0aCA9
IDEwMDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4
dCgnMmQnKTsKK3ZhciBwID0gY3R4Mi5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZp
bGxSZWN0KDAsIDAsIDEwMCwgNTApOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFz
LnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJM
KCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2Vy
dChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKSIpOyB9CitjYW52YXMyLnRvRGF0YVVSTCgpOworY3R4Mi5nZXRJbWFnZURhdGEoMCwg
MCwgMSwgMSk7CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdv
b2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNl
Ij4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNDAsNSArNDAs
NSBAQCBjdHgyLmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKIAogfSk7CiA8L3NjcmlwdD4KLTxp
bWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVs
bG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0Ojgw
MDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNz
PSJyZXNvdXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2
NTUpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQg
YWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nCis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUKK1Nl
dHRpbmcgZmlsbFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2Ug
bWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuZmls
bFN0eWxlLmltYWdlCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
ZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4
dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtp
bmRleF0gPgogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUKIFNldHRpbmcgZmlsbFN0
eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbgpAQCAtNiw0ICs1LDMgQEAgUmVmZXJlbmNlczogc2VjdXJpdHku
ZmlsbFN0eWxlLmltYWdlCiBBY3R1YWwgb3V0cHV0OgogUGFzc2VkCiAKLQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1h
Z2UuZmlsbFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJ
KHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWw6NjM2NTUpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUg
aHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5
bGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmciPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0
bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZsdDs8L2E+CisgPGEgaHJl
Zj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5maWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5o
dG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmh0
bWwiPmltYWdlPC9hPi5maWxsU3R5bGU8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgZmls
bFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhl
IGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6
Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHls
ZS5pbWFnZSI+c2VjdXJpdHkuZmlsbFN0eWxlLmltYWdlPC9hPgorCis8L3VsPgorPC9kaXY+CisK
KzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xh
c3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5G
QUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgor
PHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBwID0gY3R4
LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3Jl
cGVhdCcpOworY3R4LmZpbGxTdHlsZSA9IHA7CitjdHguZmlsbFN0eWxlID0gJ3JlZCc7Cit0cnkg
eyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsg
X3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJv
dyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9
IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJv
d24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhj
ZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2Ny
aXB0PgorPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmci
IGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxs
U3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw1
ICszNCw1IEBAIHRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZUQKIAogfSk7
CiA8L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRw
Oi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxl
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDYzNjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OjYzNjU1
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlCitTZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBv
ZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVh
bgorUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UKK0FjdHVhbCBvdXRwdXQ6
CitQYXNzZWQKKworCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0xLDQgKzEsMyBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKIDwgW2luZGV4XSA+CiBzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlCiBTZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBv
ZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVh
bgpAQCAtNiw0ICs1LDMgQEAgUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UK
IEFjdHVhbCBvdXRwdXQ6CiBQYXNzZWQKIAotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwJKHJldmlzaW9uIDYz
NjU1KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbDo2MzY1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxl
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8
dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGU8L3Rp
dGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5maWxsU3R5bGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5j
YW52YXMuc3Ryb2tlU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxh
IGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9
InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mbHQ7PC9h
PgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25d
IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlIj4mZ3Q7PC9hPgorPGgxPjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LnN0cm9rZVN0eWxlPC9oMT4KKzxwIGNsYXNzPSJk
ZXNjIj5TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmln
aW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9
InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZz
LnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlIj5zZWN1cml0eS5zdHJva2VTdHlsZS5pbWFnZTwv
YT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0Ojwv
cD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAi
PjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+
CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMs
IGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0eC5zdHJva2VTdHlsZSA9IHA7CitjdHgu
c3Ryb2tlU3R5bGUgPSAncmVkJzsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50
b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fz
c2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgp
Iik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwg
MSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQo
X3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwg
MSwgMSkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJj
ZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
aW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0
eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTM0LDUgKzM0LDUgQEAgdHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY3R4LmdldEltYWdlRAogCiB9KTsKIDwvc2NyaXB0PgotPGltZyBzcmM9Imh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBj
bGFzcz0icmVzb3VyY2UiPgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMv
cGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNl
Ij4KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5yZXNldC1leHBlY3RlZC50eHQ6NjM2NTUpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0
dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1
cml0eS5yZXNldAorUmVzZXR0aW5nIHRoZSBjYW52YXMgc3RhdGUgZG9lcyBub3QgcmVzZXQgdGhl
IG9yaWdpbi1jbGVhbiBmbGFnCitSZWZlcmVuY2VzOiBpbml0aWFsLnJlc2V0CitBY3R1YWwgb3V0
cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw0ICsxLDMgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhj
b3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCiA8IFtpbmRleF0gPgogc2VjdXJpdHkucmVz
ZXQKIFJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4t
Y2xlYW4gZmxhZwpAQCAtNiw0ICs1LDMgQEAgUmVmZXJlbmNlczogaW5pdGlhbC5yZXNldAogQWN0
dWFsIG91dHB1dDoKIFBhc3NlZAogCi0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1s
CShyZXZpc2lvbiA2MzY1NSkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5yZXNldC5odG1sOjYzNjU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5
LnJlc2V0PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgor
PGxpbmsgcmVsPSJuZXh0IiBocmVmPSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiB0aXRsZT0i
MmQuZ2V0Y29udGV4dC5leGlzdHMiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgor
IDxhIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3Bd
IHNlY3VyaXR5LmRhdGFVUkkiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4
XTwvYT4KKyA8YSBocmVmPSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiBhY2Nlc3NrZXk9Im4i
IHRpdGxlPSJbbl0gMmQuZ2V0Y29udGV4dC5leGlzdHMiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LnJlc2V0PC9oMT4KKzxwIGNsYXNzPSJk
ZXNjIj5SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2lu
LWNsZWFuIGZsYWc8L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5pbml0aWFsLnJlc2V0Ij5pbml0aWFsLnJlc2V0
PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6
PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1
MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZh
cz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZh
cywgY3R4KSB7CisKK2NhbnZhcy53aWR0aCA9IDUwOworY3R4LmRyYXdJbWFnZShkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3RyeSB7IHZhciBfdGhyb3duID0g
ZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsg
fSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2Fu
dmFzLnRvRGF0YVVSTCgpIik7IH0KK2NhbnZhcy53aWR0aCA9IDEwMDsKK3RyeSB7IHZhciBfdGhy
b3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0g
dHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlv
bjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9
Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5n
IiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5yZXNldC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw1ICszNCw1IEBAIHRy
eSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGEKIAogfSk7CiA8L3NjcmlwdD4K
LTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0
OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNs
YXNzPSJyZXNvdXJjZSI+CiAKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rl
c3RfZXhwZWN0YXRpb25zLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHJldmlzaW9uIDYzNjczKQorKysgTGF5b3V0
VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC0yODAyLDYgKzI4MDIsNyBAQCBCVUc0NDE1MCBMSU5VWCBERUJVRyA6IGZhc3QvZm9y
bXMvaW5wdXQtCiAKIC8vIE5ldyBjYW52YXMgdGVzdCBzdWl0ZSBmcm9tIGh0dHA6Ly9waGlsaXAu
aHRtbDUub3JnL3Rlc3RzL2NhbnZhcy9zdWl0ZS90ZXN0cy8KIEJVRzIwNTUzIFNLSVAgREVGRVIg
OiBjYW52YXMvcGhpbGlwID0gVEVYVAorQlVHMjA1NTMgU0tJUCBERUZFUiA6IGh0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcCA9IFRFWFQKIAogLy8gTmVlZCB0byBkdW1wIGNvbnRleHQgbWVudSBpdGVt
cyBvbiBldmVudFNlbmRlci5jb250ZXh0Q2xpY2sodHJ1ZSkuCiBCVUdXSzM5MTA1IDogZWRpdGlu
Zy9zcGVsbGluZy9jb250ZXh0LW1lbnUtc3VnZ2VzdGlvbnMuaHRtbCA9IFRFWFQKSW5kZXg6IExh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9Ta2lwcGVkCShyZXZpc2lvbiA2MzY3MykKKysrIExheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC01Njc2LDYgKzU2NzYsNyBAQCBm
YXN0L2xvYWRlci9udWxsLXJlcXVlc3QtYWZ0ZXItd2lsbFNlbmRSCiAKICMgTmV3IGNhbnZhcyB0
ZXN0IHN1aXRlIGZyb20gaHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMvY2FudmFzL3N1aXRl
L3Rlc3RzLwogY2FudmFzL3BoaWxpcAoraHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwCiAKICMgU2tp
cCB0aGlzLCBpdCdzIHBlbmRpbmcgb24gb25lIHBhdGNoIGluIHRoZSBjb21taXQgcXVldWUKIGFj
Y2Vzc2liaWxpdHkvYXJpYS1jb250cm9scy13aXRoLXRhYnMuaHRtbApJbmRleDogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL1NraXBwZWQJKHJldmlzaW9uIDYzNjczKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTI0MiwxNCArMjQyLDYgQEAgY2FudmFzL3Bo
aWxpcC90ZXN0cy8yZC50ZXh0LmZvbnQucGFyc2UucwogY2FudmFzL3BoaWxpcC90ZXN0cy8yZC50
ZXh0LmZvbnQucGFyc2Uuc2l6ZS5wZXJjZW50YWdlLmRlZmF1bHQuaHRtbAogY2FudmFzL3BoaWxp
cC90ZXN0cy8yZC50ZXh0LmZvbnQucGFyc2Uuc3lzdGVtLmh0bWwKIGNhbnZhcy9waGlsaXAvdGVz
dHMvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jcm9zcy5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnJlc2V0Lmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvdG9EYXRhVVJMLmpwZWcuYWxwaGEu
aHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy90eXBlLnByb3RvdHlwZS5odG1sCiAKSW5kZXg6IExh
eW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
cGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2aXNpb24gNjM2NzMpCisrKyBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC01MzEwLDE2ICs1MzEwLDYgQEAgY2Fu
dmFzL3BoaWxpcC90ZXN0cy8yZC50cmFuc2Zvcm1hdGlvbi5zZQogY2FudmFzL3BoaWxpcC90ZXN0
cy8yZC50cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0uc2tld2VkLmh0bWwKIGNhbnZhcy9waGlsaXAv
dGVzdHMvdG9EYXRhVVJMLmpwZWcucXVhbGl0eS5iYXNpYy5odG1sCiBjYW52YXMvcGhpbGlwL3Rl
c3RzL3R5cGUucHJvdG90eXBlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFn
ZS5pbWFnZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LmZpbGxTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnN0cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jcmVhdGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3Nz
Lmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5
bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9r
ZVN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAogY2Fu
dmFzL3BoaWxpcC90ZXN0cy8yZC5kcmF3SW1hZ2UuYnJva2VuLmh0bWwKIAogIyBbUXRdIGNhbnZh
cy9waGlsaXAvdGVzdHMvMmQucGF0aC5zdHJva2Uub3ZlcmxhcC5odG1sIGZhaWxzIHdpdGggUXQt
NC42LjIgb3IgaGlnaGVyCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvaW1hZ2VzL3llbGxvdy5wbmcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBtYXJr
ZWQgYXMgYSBiaW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0LXN0
cmVhbQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjptaW1lLXR5cGUK
ICAgKyBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCgppVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFB
R1FBQUFBeUFRTUFBQUNRKyt6OUFBQUFBMUJNVkVYLy93Q0t4dlJGQUFBQUYwbEVRVlI0Clh1M0FB
UTBBQUFCQU1QMVR5MkZ6b2pZQkFyd0FBVU54ak1rQUFBQUFTVVZPUks1Q1lJST0KCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61971</attachid>
            <date>2010-07-19 11:39:03 -0700</date>
            <delta_ts>2010-07-19 12:16:29 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>41279_3.patch</filename>
            <type>text/plain</type>
            <size>74904</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjQgQEAKKzIwMTAtMDctMTkgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgdG8g
c2ltdWxhdGUgcmVtb3RlIGhvc3QKKyAgICAgICAgYWNjZXNzIGFuZCBwYXNzIHRoZSB0ZXN0cy4g
UmVtb3ZlIHRoZSB0ZXN0cyBmcm9tIE1hYyBhbmQgUXQncyBza2lwcGVkIGZpbGVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQu
dHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVz
ZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRt
bDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
a2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZv
cm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDctMTkgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBVcGRhdGUgZXhwZWN0YXRpb25zIGZyb20gaHR0
cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjM2NzIKSW5kZXg6IExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8g
ZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwg
W2luZGV4XSA+Ci1zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCi1kcmF3SW1hZ2Ugb2YgdW5jbGVh
biBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZh
cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDQxICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNh
bnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC90aXRsZT4KLTxzY3JpcHQgc3Jj
PSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4u
L3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5p
bWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj4KLTxsaW5rIHJlbD0i
bmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5
LnBhdHRlcm4uY3JlYXRlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBo
cmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0i
W3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5o
dG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwi
IGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0Ozwv
YT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJl
Zj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9o
MT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhl
IGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6
Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFn
ZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4K
LQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBj
bGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2si
PkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+
Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotdmFyIGNhbnZh
czIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKLWNhbnZhczIud2lkdGggPSAx
MDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQo
JzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBu
ZycpLCAwLCAwKTsKLWN0eC5kcmF3SW1hZ2UoY2FudmFzMiwgMCwgMCk7Ci10cnkgeyB2YXIgX3Ro
cm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9
IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRp
b246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBj
dHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVl
OyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBj
dHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGlt
ZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxs
b3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2Uu
aW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVS
TCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgot
c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCi1kcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBp
bWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0
eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJMIHNlY3VyaXR5LmdldEltYWdlRGF0
YQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Uu
aHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3
SW1hZ2UuaW1hZ2U8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4K
LTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0i
cHJldiIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgdGl0
bGU9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4KLTxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHku
ZHJhd0ltYWdlLmNhbnZhcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEg
aHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgYWNjZXNza2V5
PSJwIiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4mbHQ7
PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0
bWwiPmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgotPHAgY2xhc3M9ImRlc2MiPmRyYXdJbWFnZSBv
ZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48
L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNw
ZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPnNlY3VyaXR5LmRyYXdJ
bWFnZS5pbWFnZTwvYT4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHku
dG9EYXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0YSI+c2VjdXJpdHkuZ2V0SW1hZ2VEYXRhPC9h
PgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9w
PgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+
PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4K
LQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywg
Y3R4KSB7Ci0KLWN0eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5w
bmcnKSwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJM
KCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Ro
cm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10
cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7
IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFn
ZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCklu
ZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBo
dHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBh
dHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVh
bgotUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyBCdWd6aWxsYQotQWN0dWFs
IG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDQzICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0
ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBz
cmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJv
a2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+
Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0
bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VT
dHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0
ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52
YXM8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUg
dG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2lu
LXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxh
IGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1
cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgotPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEu
bW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+Ci08L3VsPgot
PC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBp
ZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZh
bGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJk
Ij48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZh
ciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7Ci1jYW52YXMyLndp
ZHRoID0gMTAwOwotY2FudmFzMi5oZWlnaHQgPSA1MDsKLXZhciBjdHgyID0gY2FudmFzMi5nZXRD
b250ZXh0KCcyZCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ll
bGxvdy5wbmcnKSwgMCwgMCk7Ci12YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdy
ZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxTdHlsZSA9ICdyZWQnOwotdHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7
IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhy
b3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24g
PSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhy
b3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4
Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3Nj
cmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5n
IiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29y
cy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBv
ZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZl
cmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMgQnVnemlsbGEKLUFjdHVhbCBvdXRw
dXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZS5odG1sCShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMg
dGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGU8L3RpdGxlPgotPHNjcmlw
dCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRt
bCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4K
LTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIg
YWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5
bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVm
PSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0
eS5kYXRhVVJJIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNl
Y3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48
L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwv
YT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUg
dG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2lu
LXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxh
IGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMiPnNl
Y3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwvYT4KLTxsaT48YSBocmVmPSJodHRwczovL2J1Z3pp
bGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgotPC91
bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52
YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNz
PSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBp
ZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewot
Ci12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFz
Mi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIu
Z2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd5ZWxsb3cucG5nJyksIDAsIDApOwotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMy
LCAncmVwZWF0Jyk7Ci1jdHguc3Ryb2tlU3R5bGUgPSBwOwotY3R4LnN0cm9rZVN0eWxlID0gJ3Jl
ZCc7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0
Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNo
b3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIg
X3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChl
KSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQg
dGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19
KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3ll
bGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWlu
Zy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lv
biA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICsw
LDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nCi1QYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3
YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBjbGVhbgotUmVmZXJl
bmNlczogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcwotRGlzYWdyZWVz
IHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5k
ZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAkocmV2aXNpb24gNjM2Nzgp
CisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQ3ICswLDAgQEAKLTwhRE9DVFlQ
RSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1p
bmc8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5j
cm9zcyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Ci08
Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5j
cm9zcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIg
dGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Jmd0OzwvYT4KLTxo
MT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LnRpbWluZzwvaDE+Ci08cCBjbGFz
cz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2Fz
IG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW48L3A+Ci08ZGl2
IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0
ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+Ci08bGk+PGEgaHJlZj0i
c3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZp
bGxTdHlsZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLTxwIGNsYXNzPSJub3RlcyI+RGlz
YWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1
YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAi
IGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8
L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5j
dGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7
Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZmlsbFN0eWxlID0g
JyMwZjAnOwotY3R4Mi5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKLXZhciBwID0gY3R4LmNyZWF0
ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4t
dW5jbGVhbgotY3R4LmZpbGxTdHlsZSA9IHA7Ci1jdHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7
Ci1jYW52YXMudG9EYXRhVVJMKCk7Ci1jdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOwotX2Fz
c2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRoZXJlIHdhcyBubyBleGNlcHRpb24KLQot
Ci19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29t
L3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCisr
KyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRl
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw4ICswLDAgQEAKLUJsb2NrZWQgYWNj
ZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cu
cG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jcmVhdGUKLUNyZWF0aW5nIGFuIHVu
Y2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJl
ZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDM3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0
ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVz
dHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5j
c3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0
bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KLTxsaW5rIHJlbD0ibmV4dCIg
aHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVy
bi5jcm9zcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5b
aW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNz
a2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPiZndDs8L2E+Ci08aDE+
PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4
LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3JlYXRlPC9oMT4KLTxwIGNsYXNz
PSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2Fu
dmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1
bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3Vy
aXR5LnN0YXJ0PC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVh
bCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIg
aGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwv
cD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0
aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwotY2FudmFzLnRvRGF0YVVS
TCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKLV9hc3NlcnQodHJ1ZSwgInRydWUi
KTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCi0KLQotfSk7Ci08L3NjcmlwdD4K
LTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHdvcmtp
bmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwg
aHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNl
Y3VyaXR5LnBhdHRlcm4uY3Jvc3MKLVVzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUg
dGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhcwotUmVm
ZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4
OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3Mu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMSw0NCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVz
dDogc2VjdXJpdHkucGF0dGVybi5jcm9zczwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMu
anMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3Mi
PgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiB0
aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnRpbWluZyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEg
aHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0i
W3BdIHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0
bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5n
Lmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50
aW1pbmciPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJp
dHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4u
Y3Jvc3M8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlVzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtl
cyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZh
czwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0i
c3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KLQot
PC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxj
YW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNs
YXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1
bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkg
ewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2Fu
dmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZh
czIuZ2V0Q29udGV4dCgnMmQnKTsKLXZhciBwID0gY3R4Mi5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUg
PSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBm
YWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52
YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5h
bGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci1jYW52YXMyLnRvRGF0YVVSTCgpOwotY3R4Mi5nZXRJ
bWFnZURhdGEoMCwgMCwgMSwgMSk7Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRw
Oi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xh
c3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0
byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwot
PCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlCi1TZXR0aW5nIGZp
bGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5p
bWFnZQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxl
PkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZTwvdGl0bGU+Ci08
c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnRpbWluZyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxl
Ij4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
ZmlsbFN0eWxlIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNl
Y3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48
L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+
LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBw
YXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48
YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0eWxlLmltYWdlIj5zZWN1
cml0eS5maWxsU3R5bGUuaW1hZ2U8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91
dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3
aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNr
IGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2Fk
ZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVy
bihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7Ci1jdHgu
ZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUgPSAncmVkJzsKLXRyeSB7IHZhciBfdGhyb3du
ID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1
ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjog
Y2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0g
ZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5n
ZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNy
Yz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5w
bmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCisrKyBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxv
Y2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29t
L3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0
eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmln
aW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2Vj
dXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4
OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24g
NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBA
Ci08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2Ny
aXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsg
cmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIg
dGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+Ci08bGluayByZWw9Im5l
eHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hv
d19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0
eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4K
LSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUi
PiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+
LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJl
Zj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5
bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJu
IG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNs
ZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVm
PSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5
LnN0cm9rZVN0eWxlLmltYWdlPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRw
dXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lk
dGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBj
b250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRU
ZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4o
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwotY3R4LnN0
cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0
cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9u
OiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsg
fSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcg
c3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93
LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5yZXNldC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9j
a2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20v
eWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnJlc2V0Ci1SZXNldHRpbmcgdGhlIGNh
bnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWcKLVJlZmVyZW5j
ZXM6IGluaXRpYWwucmVzZXQKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1s
CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZ
UEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucmVzZXQ8L3RpdGxlPgotPHNj
cmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZGF0
YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+Ci08bGluayByZWw9Im5leHQiIGhy
ZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIHRpdGxlPSIyZC5nZXRjb250ZXh0LmV4aXN0
cyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHku
ZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZGF0YVVSSSI+
Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9IjJk
LmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSAyZC5nZXRj
b250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlJlc2V0dGluZyB0aGUg
Y2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4tY2xlYW4gZmxhZzwvcD4KLTxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRpYWwucmVzZXQ8L2E+Ci0KLTwvdWw+Ci08L2Rp
dj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJj
IiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJh
Y2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwv
dWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotY2FudmFz
LndpZHRoID0gNTA7Ci1jdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxs
b3cucG5nJyksIDAsIDApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0
YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsg
fQotY2FudmFzLndpZHRoID0gMTAwOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFz
LnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJM
KCkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29n
bGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+
Ci0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
LmNzcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy5jc3MJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTM0IEBACitodG1sLmZhaWwgewor
CWJhY2tncm91bmQ6ICNmNjY7Cit9CitodG1sLnBhc3MgeworCWJhY2tncm91bmQ6ICM2ZjY7Cit9
CitodG1sLm5lZWRzX2NoZWNrIHsKKwliYWNrZ3JvdW5kOiAjOTlmOworfQorCitib2R5IHsKKwlm
b250LXNpemU6IHNtYWxsOworCWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOworCWNvbG9yOiBibGFj
azsKK30KKworYTpsaW5rIHsKKwljb2xvcjogIzAwYzsKK30KK2E6dmlzaXRlZCB7CisJY29sb3I6
ICM4MDg7Cit9CisKK2JvZHkuZnJhbWVkIHsKKwlmb250LXNpemU6IHgtc21hbGw7Cit9CisKK2gx
IHsKKwlmb250LXNpemU6IGxhcmdlcjsKKwltYXJnaW46IDA7CisJcGFkZGluZy1sZWZ0OiAwLjVl
bTsKKwl0ZXh0LWluZGVudDogLTAuNWVtOworfQorCitwIHsKKwltYXJnaW46IDA7Cit9CisKK3Au
bm90ZXMgeworCW1hcmdpbi1ib3R0b206IDAuNWVtOworCWZvbnQtc3R5bGU6IGl0YWxpYzsKK30K
KwordWwgeworCW1hcmdpbjogMDsKKwltYXJnaW4tYm90dG9tOiAwLjVlbTsKKwlwYWRkaW5nOiAw
OworCXBhZGRpbmctbGVmdDogMWVtOworfQorCisucmVmcyB7CisJZm9udC1zdHlsZTogaXRhbGlj
OworCW1hcmdpbi1ib3R0b206IDAuNWVtOworfQorCisucmVmcyB1bCB7CisJZGlzcGxheTogaW5s
aW5lOworCW1hcmdpbjogMDsKKwlwYWRkaW5nOiAwOworfQorCisucmVmcyBsaSB7CisJZGlzcGxh
eTogaW5saW5lOworCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKKwltYXJnaW46IDA7CisJcGFkZGlu
ZzogMDsKK30KKworY2FudmFzIHsKKwlkaXNwbGF5OiBub25lOworCXZpc2liaWxpdHk6IGhpZGRl
bjsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOworCWJhY2tncm91bmQ6IHVybChpbWFnZXMvYmFj
a2dyb3VuZC5wbmcpOworfQorCitpbWcuZXhwZWN0ZWQgeworCWRpc3BsYXk6IG5vbmU7CisJYm9y
ZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2JhY2tncm91bmQu
cG5nKTsKK30KKworaWZyYW1lIHsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOworfQorCisub3V0
cHV0IHsKKwlkaXNwbGF5OiBub25lOworfQorCisuc2hvd19vdXRwdXQgLm91dHB1dCwgLm5lZWRz
X2NoZWNrIC5vdXRwdXQgIHsKKwlkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OworCXZpc2liaWxp
dHk6IHZpc2libGUgIWltcG9ydGFudDsKK30KKworLnNob3dfb3V0cHV0ICNzaG93X291dHB1dCB7
CisJZGlzcGxheTogbm9uZTsKK30KKworLnJlc291cmNlIHsKKwl2aXNpYmlsaXR5OiBoaWRkZW47
CisJaGVpZ2h0OiAwOworfQorCisuZmFsbGJhY2sgeworCWZvbnQtc2l6ZTogMmVtOworCWZvbnQt
d2VpZ2h0OiBib2xkOworCWNvbG9yOiAjYTAwOworfQorCisKK2h0bWwubWluaW1hbCBib2R5IHsK
Kwljb2xvcjogd2hpdGU7Cit9CitodG1sLmZhaWwubWluaW1hbCB7CisJYmFja2dyb3VuZDogI2Yw
MDsKK30KK2h0bWwucGFzcy5taW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAjMDgwOworfQoraHRtbC5u
ZWVkc19jaGVjay5taW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAjMDA4OworfQorLm1pbmltYWwgI2Qg
eworCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKK30KKy5taW5pbWFsIC5leHBlY3RlZHRleHQg
eworCXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OworfQorI3Bhc3N0ZXh0LCAjZmFpbHRl
eHQgeworCWRpc3BsYXk6IG5vbmU7Cit9CisubWluaW1hbC5wYXNzICNwYXNzdGV4dCwgLm1pbmlt
YWwuZmFpbCAjZmFpbHRleHQgeworCWRpc3BsYXk6IGJsb2NrOworfQpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmpzCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwyNjEgQEAKK2Z1bmN0aW9uIF92YWxUb1N0cmluZyh2YWwpDQorew0KKyAg
ICBpZiAodmFsID09PSB1bmRlZmluZWQgfHwgdmFsID09PSBudWxsKQ0KKyAgICAgICAgcmV0dXJu
ICdbJyArIHR5cGVvZih2YWwpICsgJ10nOw0KKyAgICByZXR1cm4gdmFsLnRvU3RyaW5nKCkgKyAn
WycgKyB0eXBlb2YodmFsKSArICddJzsNCit9DQorDQordmFyIF9oZXgyZGVjX3RhYmxlID0gew0K
KyAgICAwOjAsIDE6MSwgMjoyLCAzOjMsIDQ6NCwgNTo1LCA2OjYsIDc6NywgODo4LCA5OjksDQor
ICAgIGE6MTAsIGI6MTEsIGM6MTIsIGQ6MTMsIGU6MTQsIGY6MTUsDQorICAgIEE6MTAsIEI6MTEs
IEM6MTIsIEQ6MTMsIEU6MTQsIEY6MTUNCit9Ow0KK2Z1bmN0aW9uIF9oZXgyZGVjKGhleCkNCit7
DQorICAgIHJldHVybiBfaGV4MmRlY190YWJsZVtoZXguY2hhckF0KDApXSoxNiArIF9oZXgyZGVj
X3RhYmxlW2hleC5jaGFyQXQoMSldOw0KK30NCisNCit2YXIgX2ZhaWxlZCA9IGZhbHNlOw0KK3Zh
ciBfYXNzZXJ0ZWQgPSBmYWxzZTsNCitmdW5jdGlvbiBfd2Fybih0ZXh0KQ0KK3sNCisgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdsaScpKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSk7DQor
fQ0KK2Z1bmN0aW9uIF9mYWlsKHRleHQpDQorew0KKyAgICBfd2Fybih0ZXh0KTsNCisgICAgX2Zh
aWxlZCA9IHRydWU7DQorfQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnQoY29uZCwgdGV4dCkNCit7DQor
ICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmICghIGNvbmQpDQorICAgICAgICBfZmFpbCgn
RmFpbGVkIGFzc2VydGlvbjogJyArIHRleHQpOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0U2Ft
ZShhLCBiLCB0ZXh0X2EsIHRleHRfYikNCit7DQorICAgIF9hc3NlcnRlZCA9IHRydWU7DQorICAg
IGlmIChhICE9PSBiKQ0KKyAgICAgICAgX2ZhaWwoJ0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRf
YSArICcgPT09ICcgKyB0ZXh0X2IgKw0KKyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92YWxU
b1N0cmluZyhhKSArICcsIGV4cGVjdGVkICcgKyBfdmFsVG9TdHJpbmcoYikgKyAnKScpOw0KK30N
CisNCitmdW5jdGlvbiBfYXNzZXJ0RGlmZmVyZW50KGEsIGIsIHRleHRfYSwgdGV4dF9iKQ0KK3sN
CisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisgICAgaWYgKGEgPT09IGIpDQorICAgICAgICBfZmFp
bCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9hICsgJyAhPT0gJyArIHRleHRfYiArDQorICAg
ICAgICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRvU3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgbm90
ICcgKyBfdmFsVG9TdHJpbmcoYikgKyAnKScpOw0KK30NCisNCitmdW5jdGlvbiBfYXNzZXJ0RXF1
YWwoYSwgYiwgdGV4dF9hLCB0ZXh0X2IpDQorew0KKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOw0KKyAg
ICBpZiAoYSAhPSBiKQ0KKyAgICAgICAgX2ZhaWwoJ0ZhaWxlZCBhc3NlcnRpb24gJyArIHRleHRf
YSArICcgPT0gJyArIHRleHRfYiArDQorICAgICAgICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRv
U3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgJyArIF92YWxUb1N0cmluZyhiKSArICcpJyk7DQorfQ0K
Kw0KK2Z1bmN0aW9uIF9hc3NlcnRNYXRjaChhLCBiLCB0ZXh0X2EsIHRleHRfYikNCit7DQorICAg
IF9hc3NlcnRlZCA9IHRydWU7DQorICAgIGlmICghIGEubWF0Y2goYikpDQorICAgICAgICBfZmFp
bCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9hICsgJyBtYXRjaGVzICcgKyB0ZXh0X2IgKw0K
KyAgICAgICAgICAgICAgICAnIChnb3QgJyArIF92YWxUb1N0cmluZyhhKSArICcpJyk7DQorfQ0K
Kw0KKw0KK3ZhciBfbWFudWFsX2NoZWNrID0gZmFsc2U7DQorDQorZnVuY3Rpb24gX3JlcXVpcmVN
YW51YWxDaGVjaygpDQorew0KKyAgICBfbWFudWFsX2NoZWNrID0gdHJ1ZTsNCit9DQorDQorZnVu
Y3Rpb24gX2NyYXNoKCkNCit7DQorICAgIF9mYWlsKCdBYm9ydGVkIGR1ZSB0byBwcmVkaWN0ZWQg
Y3Jhc2gnKTsNCit9DQorDQordmFyIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gZmFsc2U7DQor
dmFyIF9nZXRJbWFnZURhdGFJc1ByZW11bCwgX2dldEltYWdlRGF0YUlzQkdSQTsNCisNCitmdW5j
dGlvbiBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpDQorew0KKyAgICB2YXIgY3R4ID0gY2FudmFzLmdl
dENvbnRleHQoJzJkJyk7DQorICAgIGlmIChjdHggJiYgdHlwZW9mKGN0eC5nZXRJbWFnZURhdGEp
ICE9ICd1bmRlZmluZWQnKQ0KKyAgICB7DQorICAgICAgICB0cnkgew0KKyAgICAgICAgICAgIHZh
ciBpbWdkYXRhID0gY3R4LmdldEltYWdlRGF0YSh4LCB5LCAxLCAxKTsNCisgICAgICAgIH0gY2F0
Y2ggKGUpIHsNCisgICAgICAgICAgICAvLyBwcm9iYWJseSBhIHNlY3VyaXR5IGV4Y2VwdGlvbiBj
YXVzZWQgYnkgaGF2aW5nIGRyYXduDQorICAgICAgICAgICAgLy8gZGF0YTogVVJMcyBvbnRvIHRo
ZSBjYW52YXMNCisgICAgICAgICAgICBpbWdkYXRhID0gbnVsbDsNCisgICAgICAgIH0NCisgICAg
ICAgIGlmIChpbWdkYXRhKQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIC8vIFdvcmsgYXJvdW5k
IGdldEltYWdlRGF0YSBidWdzLCBzaW5jZSB3ZSB3YW50IHRoZSBvdGhlciB0ZXN0cyB0bw0KKyAg
ICAgICAgICAgIC8vIGNhcnJ5IG9uIHdvcmtpbmcgYXMgd2VsbCBhcyBwb3NzaWJsZQ0KKyAgICAg
ICAgICAgIGlmICghIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkKQ0KKyAgICAgICAgICAgIHsNCisg
ICAgICAgICAgICAgICAgdmFyIGMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7
DQorICAgICAgICAgICAgICAgIGMyLndpZHRoID0gYzIuaGVpZ2h0ID0gMTsNCisgICAgICAgICAg
ICAgICAgdmFyIGN0eDIgPSBjMi5nZXRDb250ZXh0KCcyZCcpOw0KKyAgICAgICAgICAgICAgICBj
dHgyLmZpbGxTdHlsZSA9ICdyZ2JhKDAsIDI1NSwgMjU1LCAwLjUpJzsNCisgICAgICAgICAgICAg
ICAgY3R4Mi5maWxsUmVjdCgwLCAwLCAxLCAxKTsNCisgICAgICAgICAgICAgICAgdmFyIGRhdGEy
ID0gY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkuZGF0YTsNCisNCisgICAgICAgICAgICAg
ICAgLy8gRmlyZWZveCByZXR1cm5zIHByZW11bHRpcGxpZWQgYWxwaGENCisNCisgICAgICAgICAg
ICAgICAgaWYgKGRhdGEyWzFdID4gMTAwICYmIGRhdGEyWzFdIDwgMTUwKQ0KKyAgICAgICAgICAg
ICAgICAgICAgX2dldEltYWdlRGF0YUlzUHJlbXVsID0gdHJ1ZTsNCisgICAgICAgICAgICAgICAg
ZWxzZQ0KKyAgICAgICAgICAgICAgICAgICAgX2dldEltYWdlRGF0YUlzUHJlbXVsID0gZmFsc2U7
DQorDQorICAgICAgICAgICAgICAgIC8vIE9wZXJhIE1pbmkgNCBCZXRhIHJldHVybnMgQkdSQSBp
bnN0ZWFkIG9mIFJHQkENCisNCisgICAgICAgICAgICAgICAgaWYgKGRhdGEyWzBdID4gMjUwICYm
IGRhdGEyWzJdIDwgNSkNCisgICAgICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFJc0JHUkEg
PSB0cnVlOw0KKyAgICAgICAgICAgICAgICBlbHNlDQorICAgICAgICAgICAgICAgICAgICBfZ2V0
SW1hZ2VEYXRhSXNCR1JBID0gZmFsc2U7DQorDQorICAgICAgICAgICAgICAgIF9nZXRJbWFnZURh
dGFDYWxpYnJhdGVkID0gdHJ1ZTsNCisgICAgICAgICAgICB9DQorDQorICAgICAgICAgICAgLy8g
VW5kbyB0aGUgQkdSQSBmbGlwcGluZw0KKyAgICAgICAgICAgIHZhciByZ2JhID0gKF9nZXRJbWFn
ZURhdGFJc0JHUkENCisgICAgICAgICAgICAgICAgPyBbIGltZ2RhdGEuZGF0YVsyXSwgaW1nZGF0
YS5kYXRhWzFdLCBpbWdkYXRhLmRhdGFbMF0sIGltZ2RhdGEuZGF0YVszXSBdDQorICAgICAgICAg
ICAgICAgIDogWyBpbWdkYXRhLmRhdGFbMF0sIGltZ2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRh
WzJdLCBpbWdkYXRhLmRhdGFbM10gXSk7DQorDQorICAgICAgICAgICAgaWYgKCEgX2dldEltYWdl
RGF0YUlzUHJlbXVsKQ0KKyAgICAgICAgICAgICAgICByZXR1cm4gcmdiYTsNCisNCisgICAgICAg
ICAgICAvLyBVbmRvIHRoZSBwcmVtdWx0aXBseWluZw0KKyAgICAgICAgICAgIGlmIChyZ2JhWzNd
ID09IDApDQorICAgICAgICAgICAgICAgIHJldHVybiBbIDAsIDAsIDAsIDAgXTsNCisgICAgICAg
ICAgICBlbHNlDQorICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgICB2YXIgYSA9IHJnYmFb
M10gLyAyNTU7DQorICAgICAgICAgICAgICAgIHJldHVybiBbDQorICAgICAgICAgICAgICAgICAg
ICBNYXRoLnJvdW5kKHJnYmFbMF0vYSksDQorICAgICAgICAgICAgICAgICAgICBNYXRoLnJvdW5k
KHJnYmFbMV0vYSksDQorICAgICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHJnYmFbMl0vYSks
DQorICAgICAgICAgICAgICAgICAgICByZ2JhWzNdDQorICAgICAgICAgICAgICAgIF07DQorICAg
ICAgICAgICAgfQ0KKyAgICAgICAgfQ0KKyAgICB9DQorDQorICAgIHRyeSB7IGN0eCA9IGNhbnZh
cy5nZXRDb250ZXh0KCdvcGVyYS0yZGdhbWUnKTsgfSBjYXRjaCAoZSkgeyAvKiBGaXJlZm94IHRo
cm93cyAqLyB9DQorICAgIGlmIChjdHggJiYgdHlwZW9mKGN0eC5nZXRQaXhlbCkgIT0gJ3VuZGVm
aW5lZCcpDQorICAgIHsNCisgICAgICAgIHRyeSB7DQorICAgICAgICAgICAgdmFyIGMgPSBjdHgu
Z2V0UGl4ZWwoeCwgeSk7DQorICAgICAgICB9IGNhdGNoIChlKSB7DQorICAgICAgICAgICAgLy8g
cHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3bg0KKyAg
ICAgICAgICAgIC8vIGRhdGE6IFVSTHMgb250byB0aGUgY2FudmFzDQorICAgICAgICAgICAgYyA9
IG51bGw7DQorICAgICAgICB9DQorICAgICAgICBpZiAoYykNCisgICAgICAgIHsNCisgICAgICAg
ICAgICB2YXIgbWF0Y2hlcyA9IC9ecmdiYVwoKFxkKyksIChcZCspLCAoXGQrKSwgKFtcZFwuXSsp
XCkkLy5leGVjKGMpOw0KKyAgICAgICAgICAgIGlmIChtYXRjaGVzKQ0KKyAgICAgICAgICAgICAg
ICByZXR1cm4gWyBtYXRjaGVzWzFdLCBtYXRjaGVzWzJdLCBtYXRjaGVzWzNdLCBNYXRoLnJvdW5k
KG1hdGNoZXNbNF0qMjU1KSBdOw0KKyAgICAgICAgICAgIG1hdGNoZXMgPSAvXiMoLi4pKC4uKSgu
LikkLy5leGVjKGMpOw0KKyAgICAgICAgICAgIGlmIChtYXRjaGVzKQ0KKyAgICAgICAgICAgICAg
ICByZXR1cm4gWyBfaGV4MmRlYyhtYXRjaGVzWzFdKSwgX2hleDJkZWMobWF0Y2hlc1syXSksIF9o
ZXgyZGVjKG1hdGNoZXNbM10pLCAyNTUgXTsNCisgICAgICAgIH0NCisgICAgfQ0KKyAgICAvL193
YXJuKCIoQ2FuJ3QgdGVzdCBwaXhlbCB2YWx1ZSkiKTsNCisgICAgX21hbnVhbF9jaGVjayA9IHRy
dWU7DQorICAgIHJldHVybiB1bmRlZmluZWQ7DQorfQ0KKw0KK2Z1bmN0aW9uIF9hc3NlcnRQaXhl
bChjYW52YXMsIHgseSwgcixnLGIsYSwgcG9zLCBjb2xvdXIpDQorew0KKyAgICBfYXNzZXJ0ZWQg
PSB0cnVlOw0KKyAgICB2YXIgYyA9IF9nZXRQaXhlbChjYW52YXMsIHgseSk7DQorICAgIGlmIChj
ICYmICEgKGNbMF0gPT0gciAmJiBjWzFdID09IGcgJiYgY1syXSA9PSBiICYmIGNbM10gPT0gYSkp
DQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogZ290IHBpeGVsIFsnICsgYyArICdd
IGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywnK2crJywnK2IrJywnK2ErJ10nKTsN
Cit9DQorDQorZnVuY3Rpb24gX2Fzc2VydFBpeGVsQXBwcm94KGNhbnZhcywgeCx5LCByLGcsYixh
LCBwb3MsIGNvbG91ciwgdG9sZXJhbmNlKQ0KK3sNCisgICAgX2Fzc2VydGVkID0gdHJ1ZTsNCisg
ICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpOw0KKyAgICBpZiAoYykNCisgICAgew0K
KyAgICAgICAgdmFyIGRpZmYgPSBNYXRoLm1heChNYXRoLmFicyhjWzBdLXIpLCBNYXRoLmFicyhj
WzFdLWcpLCBNYXRoLmFicyhjWzJdLWIpLCBNYXRoLmFicyhjWzNdLWEpKTsNCisgICAgICAgIGlm
IChkaWZmID4gdG9sZXJhbmNlKQ0KKyAgICAgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9u
OiBnb3QgcGl4ZWwgWycgKyBjICsgJ10gYXQgKCcreCsnLCcreSsnKSwgZXhwZWN0ZWQgWycrcisn
LCcrZysnLCcrYisnLCcrYSsnXSArLy0gJyt0b2xlcmFuY2UpOw0KKyAgICB9DQorfQ0KKw0KK2Z1
bmN0aW9uIF9hZGRUZXN0KHRlc3QpDQorew0KKyAgICB2YXIgZGVmZXJyZWQgPSBmYWxzZTsNCisg
ICAgd2luZG93LmRlZmVyVGVzdCA9IGZ1bmN0aW9uICgpIHsgZGVmZXJyZWQgPSB0cnVlOyB9Ow0K
KyAgICBmdW5jdGlvbiBlbmRUZXN0KCkNCisgICAgew0KKyAgICAgICAgaWYgKF9mYWlsZWQpIC8v
IHRlc3QgZmFpbGVkDQorICAgICAgICB7DQorICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRF
bGVtZW50LmNsYXNzTmFtZSArPSAnIGZhaWwnOw0KKyAgICAgICAgICAgIHdpbmRvdy5fdGVzdFN0
YXR1cyA9IFsnZmFpbCcsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MXTsN
CisgICAgICAgIH0NCisgICAgICAgIGVsc2UgaWYgKF9tYW51YWxfY2hlY2sgfHwgIV9hc3NlcnRl
ZCkNCisgICAgICAgIHsgLy8gdGVzdCBjYXNlIGV4cGxpY2l0bHkgYXNrZWQgZm9yIGEgbWFudWFs
IGNoZWNrLCBvciBubyBhdXRvbWF0aWMgYXNzZXJ0aW9ucyB3ZXJlIHBlcmZvcm1lZA0KKyAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MICs9ICc8bGk+Q2Fu
bm90IGF1dG9tYXRpY2FsbHkgdmVyaWZ5IHJlc3VsdCc7DQorICAgICAgICAgICAgZG9jdW1lbnQu
ZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIG5lZWRzX2NoZWNrJzsNCisgICAgICAgICAg
ICB3aW5kb3cuX3Rlc3RTdGF0dXMgPSBbJ2NoZWNrJywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2QnKS5pbm5lckhUTUxdOw0KKyAgICAgICAgfQ0KKyAgICAgICAgZWxzZSAvLyB0ZXN0IHN1Y2Nl
ZWRlZA0KKyAgICAgICAgew0KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdk
JykuaW5uZXJIVE1MICs9ICc8bGk+UGFzc2VkJzsNCisgICAgICAgICAgICBkb2N1bWVudC5kb2N1
bWVudEVsZW1lbnQuY2xhc3NOYW1lICs9ICcgcGFzcyc7DQorICAgICAgICAgICAgd2luZG93Ll90
ZXN0U3RhdHVzID0gWydwYXNzJywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhU
TUxdOw0KKyAgICAgICAgfQ0KKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikNCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7DQorICAg
IH0NCisgICAgd2luZG93LmVuZFRlc3QgPSBlbmRUZXN0Ow0KKyAgICB3aW5kb3cud3JhcEZ1bmN0
aW9uID0gZnVuY3Rpb24gKGYpDQorICAgIHsNCisgICAgICAgIHJldHVybiBmdW5jdGlvbigpDQor
ICAgICAgICB7DQorICAgICAgICAgICAgdHJ5DQorICAgICAgICAgICAgew0KKyAgICAgICAgICAg
ICAgICBmLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7DQorICAgICAgICAgICAgfQ0KKyAgICAgICAg
ICAgIGNhdGNoIChlKQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgX2ZhaWwoJ0Fi
b3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2UpOw0KKyAgICAgICAgICAgIH0NCisg
ICAgICAgICAgICBlbmRUZXN0KCk7DQorICAgICAgICB9DQorICAgIH0NCisNCisgICAgd2luZG93
Lm9ubG9hZCA9IGZ1bmN0aW9uICgpDQorICAgIHsNCisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsNCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7DQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9u
ZSgpOw0KKyAgICAgICAgfQ0KKyAgICAgICAgdHJ5DQorICAgICAgICB7DQorICAgICAgICAgICAg
dmFyIGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjJyk7DQorICAgICAgICAgICAg
dmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpOw0KKyAgICAgICAgICAgIHRlc3QoY2Fu
dmFzLCBjdHgpOw0KKyAgICAgICAgfQ0KKyAgICAgICAgY2F0Y2ggKGUpDQorICAgICAgICB7DQor
ICAgICAgICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2Up
Ow0KKyAgICAgICAgICAgIGRlZmVycmVkID0gZmFsc2U7IC8vIGNhbmNlbCBhbnkgZGVmZXJlbmNl
DQorICAgICAgICB9DQorDQorICAgICAgICBpZiAoISBkZWZlcnJlZCkNCisgICAgICAgICAgICBl
bmRUZXN0KCk7DQorICAgIH07DQorfQ0KKw0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAor
PCBbaW5kZXhdID4KK3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMKK2RyYXdJbWFnZSBvZiB1bmNs
ZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBz
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3
SW1hZ2UuY2FudmFzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDEgQEAK
KzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2Uu
Y2FudmFzPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYi
IGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJh
d0ltYWdlLmltYWdlIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5j
cmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KKzxib2R5IGNsYXNz
PSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Uu
aHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+
Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0
bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ug
b2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5j
YW52YXM8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91
dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWln
aHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwv
Y2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24o
Y2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdj
YW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFy
IGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmRyYXdJbWFnZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK2N0eC5kcmF3SW1hZ2UoY2Fu
dmFzMiwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJM
KCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Ro
cm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0
cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7
IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9j
YW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJl
c291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJ
bWFnZS5pbWFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJp
dHkuZHJhd0ltYWdlLmltYWdlCitkcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBt
YWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3
SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJMIHNlY3VyaXR5LmdldEltYWdlRGF0YQorQWN0
dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRy
YXdJbWFnZS5pbWFnZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMg
dGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90
ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3Rz
LmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0
c2lkZXJhbmdlLmh0bWwiIHRpdGxlPSJ0b0RhdGFVUkwuanBlZy5xdWFsaXR5Lm91dHNpZGVyYW5n
ZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRt
bCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPgorPGJvZHkgY2xhc3M9InNob3df
b3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJh
bmdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSB0b0RhdGFVUkwuanBlZy5xdWFsaXR5
Lm91dHNpZGVyYW5nZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9h
PgorIDxhIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJu
IiB0aXRsZT0iW25dIHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPiZndDs8L2E+Cis8aDE+PGEg
aHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmltYWdlPC9oMT4KKzxwIGNsYXNz
PSJkZXNjIj5kcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2Fu
dmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1
bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlIj5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LnRvRGF0YVVSTCI+c2VjdXJpdHkudG9EYXRhVVJMPC9hPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5nZXRJbWFnZURhdGEiPnNlY3Vy
aXR5LmdldEltYWdlRGF0YTwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0
Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRo
PSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29u
dGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVz
dChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCitjdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxz
ZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZp
bmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMu
dG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdl
RGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5
IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdl
RGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRw
Oi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLmZpbGxTdHlsZQorU2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVu
Y2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6
IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMgQnVnemlsbGEKK0FjdHVhbCBvdXRwdXQ6CitQYXNz
ZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZTwvdGl0bGU+
Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJz
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxl
PSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJl
Zj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
Lmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
Lmh0bWwiPmNhbnZhczwvYT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5n
IGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8
dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5j
YW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+Cis8bGk+PGEgaHJlZj0iaHR0cHM6
Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwv
YT4KKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+
Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48
cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgor
Cis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBj
dHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsK
K2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBj
YW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4o
Y2FudmFzMiwgJ3JlcGVhdCcpOworY3R4LmZpbGxTdHlsZSA9IHA7CitjdHguZmlsbFN0eWxlID0g
J3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0g
Y2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwg
InNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2
YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKwor
Cit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMv
cGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNl
Ij4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUK
K1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1h
a2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0cm9r
ZVN0eWxlLmNhbnZhcyBCdWd6aWxsYQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tl
U3R5bGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQzIEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGU8L3RpdGxlPgorPHNj
cmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5zdHJva2VTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkku
aHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0
Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRt
bCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tl
U3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBo
cmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1
cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwi
PnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRl
cm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZh
czwvYT4uc3Ryb2tlU3R5bGU8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5
bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3Jp
Z2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMi
PnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwvYT4KKzxsaT48YSBocmVmPSJodHRwczovL2J1
Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgor
PC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxj
YW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNs
YXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1
bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkg
eworCit2YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOworY2Fu
dmFzMi53aWR0aCA9IDEwMDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2YXIgY3R4MiA9IGNhbnZh
czIuZ2V0Q29udGV4dCgnMmQnKTsKK2N0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwordmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52
YXMyLCAncmVwZWF0Jyk7CitjdHguc3Ryb2tlU3R5bGUgPSBwOworY3R4LnN0cm9rZVN0eWxlID0g
J3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0g
Y2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwg
InNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2
YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKwor
Cit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMv
cGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNl
Ij4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
dGltaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw4IEBACis8IFtpbmRl
eF0gPgorc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nCitQYXR0ZXJuIHNhZmV0eSBkZXBl
bmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhl
ciBpdCBzdGlsbCBpcyBjbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHku
ZmlsbFN0eWxlLmNhbnZhcworRGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCitB
Y3R1YWwgb3V0cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMudGltaW5nLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDcgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8
L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9z
cyI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Cis8Ym9k
eSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5j
cm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9z
cyI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9
InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0
bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Jmd0OzwvYT4KKzxoMT48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXgu
c2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LnRpbWluZzwvaDE+Cis8cCBjbGFzcz0i
ZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9y
aWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW48L3A+Cis8ZGl2IGNs
YXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0
cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+Cis8bGk+PGEgaHJlZj0ic3Bl
Yy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxT
dHlsZS5jYW52YXM8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKzxwIGNsYXNzPSJub3RlcyI+RGlzYWdy
ZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwg
b3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhl
aWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+
PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlv
bihjYW52YXMsIGN0eCkgeworCit2YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2NhbnZhcycpOworY2FudmFzMi53aWR0aCA9IDEwMDsKK2NhbnZhczIuaGVpZ2h0ID0gNTA7Cit2
YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKK2N0eDIuZmlsbFN0eWxlID0gJyMw
ZjAnOworY3R4Mi5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBh
dHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5j
bGVhbgorY3R4LmZpbGxTdHlsZSA9IHA7CitjdHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Citj
YW52YXMudG9EYXRhVVJMKCk7CitjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOworX2Fzc2Vy
dCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRoZXJlIHdhcyBubyBleGNlcHRpb24KKworCit9
KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhp
bGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IFtpbmRleF0gPgorc2VjdXJpdHkucGF0dGVybi5j
cmVhdGUKK0NyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52
YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0
cHV0OgorUGFzc2VkCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
ZWF0ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1
cml0eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwv
c2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxp
bmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2Vj
dXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+
Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcyI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9h
PgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0
aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5
LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3JlYXRlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5D
cmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48
YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0
PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6
PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1
MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZh
cz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZh
cywgY3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY2FudmFzLnRvRGF0YVVSTCgpOworY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKK19hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2th
eSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3Jj
PSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIg
aWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAor
PCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MKK1VzaW5nIGFuIHVuY2xlYW4gcGF0
dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0
ZXJuIGNhbnZhcworUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKK0FjdHVhbCBvdXRwdXQ6CitQ
YXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0
NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRl
cm4uY3Jvc3M8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJl
diIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmci
PgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0
ZXJuLmNyZWF0ZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgor
IDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9
Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4mZ3Q7PC9hPgor
PGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LmNyb3NzPC9oMT4KKzxwIGNs
YXNzPSJkZXNjIj5Vc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMgdGhlIHRhcmdldCBjYW52
YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXM8L3A+Cis8ZGl2IGNsYXNz
PSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVm
cy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKwor
PHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFz
cz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZB
SUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8
c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7
CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJk
Jyk7Cit2YXIgcCA9IGN0eDIuY3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
eWVsbG93LnBuZycpLCAncmVwZWF0Jyk7CitjdHguZmlsbFN0eWxlID0gcDsKK2N0eC5maWxsUmVj
dCgwLCAwLCAxMDAsIDUwKTsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0Rh
dGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2Vy
dChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7
IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwg
MSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Ro
cm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwg
MSkiKTsgfQorY2FudmFzMi50b0RhdGFVUkwoKTsKK2N0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEs
IDEpOworCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAw
L2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0i
cmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDcgQEAKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZQorU2V0
dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBt
YWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5maWxs
U3R5bGUuaW1hZ2UKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+
PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8
bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0
cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
IiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5n
Ij4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0
bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZndDs8L2E+Cis8aDE+
PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4
LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNsYXNz
PSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3Jp
Z2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNz
PSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVm
cy5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZTwvYT4K
KworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4K
KzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxw
IGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisK
Kzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0
eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxT
dHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVS
TCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90
aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQor
dHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsg
fSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3du
LCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIp
OyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAv
Y2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJy
ZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsNyBAQAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5
bGUKK1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdp
biBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1
cml0eS5zdHJva2VTdHlsZS5pbWFnZQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0
eWxlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMg
dGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0
IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZp
bGxTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VT
dHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9Iltw
XSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0i
aW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0
dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4u
aHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5o
dG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcg
c3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtl
cyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJl
bmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ry
b2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlPC9hPgorCis8L3VsPgor
PC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBp
ZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZh
bGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJk
Ij48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3Zh
ciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5w
bmcnKSwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0eWxlID0gcDsKK2N0eC5zdHJva2VTdHlsZSA9
ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRj
aCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hv
dWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisK
KworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvY2FudmFz
L3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJj
ZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBA
QAorPCBbaW5kZXhdID4KK3NlY3VyaXR5LnJlc2V0CitSZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0
ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWcKK1JlZmVyZW5jZXM6IGluaXRp
YWwucmVzZXQKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnJlc2V0Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnJl
c2V0PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhy
ZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgorPGxp
bmsgcmVsPSJuZXh0IiBocmVmPSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiB0aXRsZT0iMmQu
Z2V0Y29udGV4dC5leGlzdHMiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxh
IGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNl
Y3VyaXR5LmRhdGFVUkkiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwv
YT4KKyA8YSBocmVmPSIyZC5nZXRjb250ZXh0LmV4aXN0cy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRp
dGxlPSJbbl0gMmQuZ2V0Y29udGV4dC5leGlzdHMiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LnJlc2V0PC9oMT4KKzxwIGNsYXNzPSJkZXNj
Ij5SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNs
ZWFuIGZsYWc8L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxh
IGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5pbml0aWFsLnJlc2V0Ij5pbml0aWFsLnJlc2V0PC9h
PgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9w
PgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+
PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4K
KworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywg
Y3R4KSB7CisKK2NhbnZhcy53aWR0aCA9IDUwOworY3R4LmRyYXdJbWFnZShkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFs
c2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBm
aW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFz
LnRvRGF0YVVSTCgpIik7IH0KK2NhbnZhcy53aWR0aCA9IDEwMDsKK3RyeSB7IHZhciBfdGhyb3du
ID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1
ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjog
Y2FudmFzLnRvRGF0YVVSTCgpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jYW52YXMvcGhpbGlwL2ltYWdlcy95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZv
cm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkocmV2aXNpb24gNjM2
NzgpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTI4MDAsNiArMjgwMCw3IEBAIEJVRzQ0MTUwIExJTlVYIERF
QlVHIDogZmFzdC9mb3Jtcy9pbnB1dC0KIAogLy8gTmV3IGNhbnZhcyB0ZXN0IHN1aXRlIGZyb20g
aHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMvY2FudmFzL3N1aXRlL3Rlc3RzLwogQlVHMjA1
NTMgU0tJUCBERUZFUiA6IGNhbnZhcy9waGlsaXAgPSBURVhUCitCVUcyMDU1MyBTS0lQIERFRkVS
IDogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwID0gVEVYVAogCiAvLyBOZWVkIHRvIGR1bXAgY29u
dGV4dCBtZW51IGl0ZW1zIG9uIGV2ZW50U2VuZGVyLmNvbnRleHRDbGljayh0cnVlKS4KIEJVR1dL
MzkxMDUgOiBlZGl0aW5nL3NwZWxsaW5nL2NvbnRleHQtbWVudS1zdWdnZXN0aW9ucy5odG1sID0g
VEVYVApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHJldmlzaW9uIDYzNjc4KQorKysg
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTU2NzYs
NiArNTY3Niw3IEBAIGZhc3QvbG9hZGVyL251bGwtcmVxdWVzdC1hZnRlci13aWxsU2VuZFIKIAog
IyBOZXcgY2FudmFzIHRlc3Qgc3VpdGUgZnJvbSBodHRwOi8vcGhpbGlwLmh0bWw1Lm9yZy90ZXN0
cy9jYW52YXMvc3VpdGUvdGVzdHMvCiBjYW52YXMvcGhpbGlwCitodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAKIAogIyBTa2lwIHRoaXMsIGl0J3MgcGVuZGluZyBvbiBvbmUgcGF0Y2ggaW4gdGhlIGNv
bW1pdCBxdWV1ZQogYWNjZXNzaWJpbGl0eS9hcmlhLWNvbnRyb2xzLXdpdGgtdGFicy5odG1sCklu
ZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAtMjQyLDE0ICsyNDIs
NiBAQCBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQuZm9udC5wYXJzZS5zCiBjYW52YXMvcGhp
bGlwL3Rlc3RzLzJkLnRleHQuZm9udC5wYXJzZS5zaXplLnBlcmNlbnRhZ2UuZGVmYXVsdC5odG1s
CiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRleHQuZm9udC5wYXJzZS5zeXN0ZW0uaHRtbAogY2Fu
dmFzL3BoaWxpcC90ZXN0cy8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2UuaHRtbAotY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwKLWNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwKLWNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy90b0RhdGFV
UkwuanBlZy5hbHBoYS5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzL3R5cGUucHJvdG90eXBlLmh0
bWwKIApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA2MzY3OCkKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTUzMTAsMTYg
KzUzMTAsNiBAQCBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnRyYW5zZm9ybWF0aW9uLnNlCiBjYW52
YXMvcGhpbGlwL3Rlc3RzLzJkLnRyYW5zZm9ybWF0aW9uLnRyYW5zZm9ybS5za2V3ZWQuaHRtbAog
Y2FudmFzL3BoaWxpcC90ZXN0cy90b0RhdGFVUkwuanBlZy5xdWFsaXR5LmJhc2ljLmh0bWwKIGNh
bnZhcy9waGlsaXAvdGVzdHMvdHlwZS5wcm90b3R5cGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwKLWNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZS5odG1sCi1jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAotY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5y
ZXNldC5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLmRyYXdJbWFnZS5icm9rZW4uaHRtbAog
CiAjIFtRdF0gY2FudmFzL3BoaWxpcC90ZXN0cy8yZC5wYXRoLnN0cm9rZS5vdmVybGFwLmh0bWwg
ZmFpbHMgd2l0aCBRdC00LjYuMiBvciBoaWdoZXIKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNw
bGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGlj
YXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmcKX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDog
c3ZuOm1pbWUtdHlwZQogICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dv
QUFBQU5TVWhFVWdBQUFHUUFBQUF5QVFNQUFBQ1ErK3o5QUFBQUExQk1WRVgvL3dDS3h2UkZBQUFB
RjBsRVFWUjQKWHUzQUFRMEFBQUJBTVAxVHkyRnpvallCQXJ3QUFVTnhqTWtBQUFBQVNVVk9SSzVD
WUlJPQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61976</attachid>
            <date>2010-07-19 12:15:42 -0700</date>
            <delta_ts>2010-07-19 12:51:36 -0700</delta_ts>
            <desc>fix patch 1</desc>
            <filename>41279_4.patch</filename>
            <type>text/plain</type>
            <size>77307</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYzNjgwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjEgQEAKKzIwMTAtMDctMTkgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQmVjYXVzZSBvZiBzb21lIGRpZmZpY3VsdHkgZm9yIGFwcGx5aW5nIHBhdGNoZXMs
IG1vdmUgdGhlIGZpbGVzIGFzIHRoZSBmaXJzdCBzdGVwLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEyNzkKKworICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQ6IFJlbW92ZWQu
CisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFz
Lmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5k
cmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWw6IFJlbW92ZWQuCisgICAg
ICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5
bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVkLgorICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4
cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OiBSZW1v
dmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVh
dGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sOiBSZW1vdmVkLgorICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUt
ZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBj
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhczogQWRkZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
aW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0czogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzLmNzczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhw
ZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sLgorICAgICAgICAq
IGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ut
ZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sOiBD
b3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJ
bWFnZS5pbWFnZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBDb3BpZWQg
ZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sOiBDb3Bp
ZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLmZpbGxTdHlsZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6
IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHls
ZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBl
Y3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5n
Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dDogQ29w
aWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNyZWF0ZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5j
cm9zcy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbDog
Q29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNyb3NzLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dDogQ29waWVkIGZy
b20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdl
LmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWw6IENvcGllZCBm
cm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5maWxsU3R5bGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IENvcGll
ZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5p
bWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbDog
Q29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5
b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0
Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucmVzZXQuaHRtbC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0
aW9ucy50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisgICAgICAgICogcGxh
dGZvcm0vbWFjL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKwogMjAx
MC0wNy0xOSAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2Fu
dmFzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJM
IGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1z
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCi1kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcwotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDQxICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBz
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC90aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5q
cyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+
Ci08bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0
aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3Jl
YXRlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0
eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5
LmRyYXdJbWFnZS5pbWFnZSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhd
PC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0i
biIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4KLTxoMT48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uY2FudmFzPC9oMT4KLTxwIGNsYXNz
PSJkZXNjIj5kcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+
PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9
Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0
IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxi
YWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0Pgot
X2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKLWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMy
LmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgy
LmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsK
LWN0eC5kcmF3SW1hZ2UoY2FudmFzMiwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmlu
YWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50
b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkg
eyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6
Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFz
cz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhj
b3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkuZHJh
d0ltYWdlLmltYWdlCi1kcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0
aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2Uu
aW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJMIHNlY3VyaXR5LmdldEltYWdlRGF0YQotQWN0dWFsIG91
dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNp
b24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRy
YXdJbWFnZS5pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8
L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0i
dG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgdGl0bGU9InRvRGF0YVVS
TC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNh
bnZhcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0idG9EYXRh
VVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0i
W3BdIHRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4mbHQ7PC9hPgotIDxhIGhy
ZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdl
LmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkuZHJhd0ltYWdl
LmNhbnZhcyI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1
cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFn
ZTwvYT4uaW1hZ2U8L2gxPgotPHAgY2xhc3M9ImRlc2MiPmRyYXdJbWFnZSBvZiBkaWZmZXJlbnQt
b3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNs
YXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0
cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwv
YT4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkudG9EYXRhVVJMIj5z
ZWN1cml0eS50b0RhdGFVUkw8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNl
Y3VyaXR5LmdldEltYWdlRGF0YSI+c2VjdXJpdHkuZ2V0SW1hZ2VEYXRhPC9hPgotCi08L3VsPgot
PC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBp
ZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZh
bGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJk
Ij48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWN0
eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7
Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2gg
KGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3Vs
ZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Ro
cm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7
IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhy
b3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsK
LTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxv
dy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
MSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3Jz
Lmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuZmlsbFN0eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4g
dW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNl
czogc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcyBCdWd6aWxsYQotQWN0dWFsIG91dHB1dDoKLVBh
c3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRt
bAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDQzICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3Rz
LmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3Nz
Ij4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5
bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4KLTxsaW5r
IHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFz
cz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08
L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBh
Y2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwv
YT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LmZpbGxT
dHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJu
IG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+
Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5
bGUuY2FudmFzPC9hPgotPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcv
c2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+Ci08L3VsPgotPC9kaXY+Ci0KLTxw
IGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9
Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlM
IChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNj
cmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBjYW52YXMyID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7Ci1jYW52YXMyLndpZHRoID0gMTAwOwot
Y2FudmFzMi5oZWlnaHQgPSA1MDsKLXZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcp
OwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwg
MCwgMCk7Ci12YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0
eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxTdHlsZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0
cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9u
OiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsg
fSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4
LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcg
c3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93
LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQor
KysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBA
Ci1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdl
cy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0
cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFu
IGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1
cml0eS5zdHJva2VTdHlsZS5jYW52YXMgQnVnemlsbGEKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQK
LQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1s
CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MSw0MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJp
dHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rl
c3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMu
Y3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJv
a2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+
Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNl
Y3VyaXR5LmRhdGFVUkkiPgotPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJw
IiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+
Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5k
YXRhVVJJLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4m
Z3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9
ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5
bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJu
IG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+
Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9r
ZVN0eWxlLmNhbnZhczwvYT4KLTxsaT48YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjciPkJ1Z3ppbGxhPC9hPgotPC91bD4KLTwvZGl2Pgot
Ci08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNs
YXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+
RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4K
LTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFz
MiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEw
MDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgn
MmQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5n
JyksIDAsIDApOwotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7
Ci1jdHguc3Ryb2tlU3R5bGUgPSBwOwotY3R4LnN0cm9rZVN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2
YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Ro
cm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBl
eGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZh
bHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24g
PSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0
aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0
PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlk
PSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysr
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
dGltaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2Nr
ZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95
ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nCi1Q
YXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNs
ZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGlsbCBpcyBjbGVhbgotUmVmZXJlbmNlczogc2VjdXJp
dHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZhcwotRGlzYWdyZWVzIHdpdGggc3BlYyBv
biAiaXMiIHZzICJ3YXMiCi1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQ3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRp
dGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgot
PHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHku
cGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08bGlu
ayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwi
IHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Ci08Ym9keSBjbGFzcz0i
c2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1s
IiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0Ozwv
YT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBz
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
cGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LnRpbWluZzwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+UGF0
dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVh
biwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZz
Ij5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1
cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rl
c3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52
YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLTxwIGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGgg
c3BlYyBvbiAiaXMiIHZzICJ3YXMiCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0Ojwv
cD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAi
PjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+
Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMs
IGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycp
OwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9
IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZmlsbFN0eWxlID0gJyMwZjAnOwotY3R4
Mi5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsKLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2Fu
dmFzMiwgJ3JlcGVhdCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3llbGxvdy5wbmcnKSwgMCwgMCk7IC8vIG1ha2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgotY3R4
LmZpbGxTdHlsZSA9IHA7Ci1jdHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Ci1jYW52YXMudG9E
YXRhVVJMKCk7Ci1jdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOwotX2Fzc2VydCh0cnVlLCAi
dHJ1ZSIpOyAvLyBva2F5IGlmIHRoZXJlIHdhcyBubyBleGNlcHRpb24KLQotCi19KTsKLTwvc2Ny
aXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmci
IGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMSw4ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVy
bmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRl
eF0gPgotc2VjdXJpdHkucGF0dGVybi5jcmVhdGUKLUNyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVy
biBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNl
Y3VyaXR5LnN0YXJ0Ci1BY3R1YWwgb3V0cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3JlYXRlLmh0bWwJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDM3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0
eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2Ny
aXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsg
cmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJz
ZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08
Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgot
IDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRs
ZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBh
dHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3JlYXRlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5DcmVh
dGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9lcyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11
bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBo
cmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9h
PgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9w
PgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+
PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4K
LQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywg
Y3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwotY2FudmFzLnRvRGF0YVVSTCgpOwotY3R4Lmdl
dEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKLV9hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBp
ZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCi0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJo
dHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIg
Y2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29y
cy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRl
cm4uY3Jvc3MKLVVzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZh
cyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhcwotUmVmZXJlbmNlczogc2Vj
dXJpdHkuc3RhcnQKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0
NCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHku
cGF0dGVybi5jcm9zczwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0
PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVs
PSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiB0aXRsZT0ic2VjdXJp
dHkucGF0dGVybi5jcmVhdGUiPgotPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRp
bWluZyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5
LnBhdHRlcm4uY3JlYXRlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08
L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZndDs8
L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jvc3M8L2gxPgot
PHAgY2xhc3M9ImRlc2MiPlVzaW5nIGFuIHVuY2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0
IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBwYXR0ZXJuIGNhbnZhczwvcD4KLTxkaXYg
Y2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rl
c3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2
PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMi
IGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFj
ayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91
bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2Fu
dmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9
IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4
dCgnMmQnKTsKLXZhciBwID0gY3R4Mi5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZp
bGxSZWN0KDAsIDAsIDEwMCwgNTApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFz
LnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJM
KCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2Vy
dChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAw
LCAxLCAxKSIpOyB9Ci1jYW52YXMyLnRvRGF0YVVSTCgpOwotY3R4Mi5nZXRJbWFnZURhdGEoMCwg
MCwgMSwgMSk7Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdv
b2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNl
Ij4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4K
LXNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBh
IHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3Jp
Z2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZQotQWN0dWFs
IG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlLmh0bWwJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0
OiBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0i
Li4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90
ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08
bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4KLTxib2R5IGNs
YXNzPSJzaG93X291dHB1dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy50aW1pbmcuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLnRpbWluZyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9h
PgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4m
Z3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9
ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuaHRtbCI+aW1hZ2U8L2E+LmZpbGxTdHlsZTwv
aDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEg
ZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9w
PgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVj
Lmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmlsbFN0eWxlLmltYWdlIj5zZWN1cml0eS5maWxsU3R5
bGUuaW1hZ2U8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFs
IG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9w
PjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rp
b24oY2FudmFzLCBjdHgpIHsKLQotdmFyIHAgPSBjdHguY3JlYXRlUGF0dGVybihkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0g
cDsKLWN0eC5maWxsU3R5bGUgPSAncmVkJzsKLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNh
bnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5
IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0
YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEo
MCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9h
c3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEo
MCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4
Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJy
ZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3Mg
dG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcK
LTwgW2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlCi1TZXR0aW5n
IHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFr
ZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tl
U3R5bGUuaW1hZ2UKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ry
b2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VT
dHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBo
cmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgot
PHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFj
Y2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUi
PiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJz
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRp
dGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08
aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAg
Y2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVy
ZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRp
diBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwj
dGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxl
LmltYWdlPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBv
dXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVp
Z2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48
L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9u
KGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0g
cDsKLWN0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsg
Y2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFs
bHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9E
YXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0
YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsg
X2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0
YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8v
ZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9
InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4
KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0
byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwot
PCBbaW5kZXhdID4KLXNlY3VyaXR5LnJlc2V0Ci1SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBk
b2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNsZWFuIGZsYWcKLVJlZmVyZW5jZXM6IGluaXRpYWwu
cmVzZXQKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCShyZXZpc2lvbiA2
MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0
aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucmVzZXQ8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4u
L3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVz
dHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0
aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9IjJkLmdldGNv
bnRleHQuZXhpc3RzLmh0bWwiIHRpdGxlPSIyZC5nZXRjb250ZXh0LmV4aXN0cyI+Ci08Ym9keSBj
bGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1s
IiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZGF0YVVSSSI+Jmx0OzwvYT4KLSA8
YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9IjJkLmdldGNvbnRleHQu
ZXhpc3RzLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSAyZC5nZXRjb250ZXh0LmV4aXN0
cyI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwv
YT4ucmVzZXQ8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRl
IGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4tY2xlYW4gZmxhZzwvcD4KLTxkaXYgY2xhc3M9InJl
ZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLmlu
aXRpYWwucmVzZXQiPmluaXRpYWwucmVzZXQ8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xh
c3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0
cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZh
bGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0
PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotY2FudmFzLndpZHRoID0gNTA7
Ci1jdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAs
IDApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNh
dGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJz
aG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotY2FudmFzLndp
ZHRoID0gMTAwOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgp
OyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJv
d24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotCi0K
LX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20v
eWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmNzcwkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTM0IEBACitodG1sLmZhaWwgeworCWJhY2tncm91bmQ6
ICNmNjY7Cit9CitodG1sLnBhc3MgeworCWJhY2tncm91bmQ6ICM2ZjY7Cit9CitodG1sLm5lZWRz
X2NoZWNrIHsKKwliYWNrZ3JvdW5kOiAjOTlmOworfQorCitib2R5IHsKKwlmb250LXNpemU6IHNt
YWxsOworCWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOworCWNvbG9yOiBibGFjazsKK30KKworYTps
aW5rIHsKKwljb2xvcjogIzAwYzsKK30KK2E6dmlzaXRlZCB7CisJY29sb3I6ICM4MDg7Cit9CisK
K2JvZHkuZnJhbWVkIHsKKwlmb250LXNpemU6IHgtc21hbGw7Cit9CisKK2gxIHsKKwlmb250LXNp
emU6IGxhcmdlcjsKKwltYXJnaW46IDA7CisJcGFkZGluZy1sZWZ0OiAwLjVlbTsKKwl0ZXh0LWlu
ZGVudDogLTAuNWVtOworfQorCitwIHsKKwltYXJnaW46IDA7Cit9CisKK3Aubm90ZXMgeworCW1h
cmdpbi1ib3R0b206IDAuNWVtOworCWZvbnQtc3R5bGU6IGl0YWxpYzsKK30KKwordWwgeworCW1h
cmdpbjogMDsKKwltYXJnaW4tYm90dG9tOiAwLjVlbTsKKwlwYWRkaW5nOiAwOworCXBhZGRpbmct
bGVmdDogMWVtOworfQorCisucmVmcyB7CisJZm9udC1zdHlsZTogaXRhbGljOworCW1hcmdpbi1i
b3R0b206IDAuNWVtOworfQorCisucmVmcyB1bCB7CisJZGlzcGxheTogaW5saW5lOworCW1hcmdp
bjogMDsKKwlwYWRkaW5nOiAwOworfQorCisucmVmcyBsaSB7CisJZGlzcGxheTogaW5saW5lOwor
CWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKKwltYXJnaW46IDA7CisJcGFkZGluZzogMDsKK30KKwor
Y2FudmFzIHsKKwlkaXNwbGF5OiBub25lOworCXZpc2liaWxpdHk6IGhpZGRlbjsKKwlib3JkZXI6
IDJweCAjZjBmIHNvbGlkOworCWJhY2tncm91bmQ6IHVybChpbWFnZXMvYmFja2dyb3VuZC5wbmcp
OworfQorCitpbWcuZXhwZWN0ZWQgeworCWRpc3BsYXk6IG5vbmU7CisJYm9yZGVyOiAycHggI2Yw
ZiBzb2xpZDsKKwliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2JhY2tncm91bmQucG5nKTsKK30KKwor
aWZyYW1lIHsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOworfQorCisub3V0cHV0IHsKKwlkaXNw
bGF5OiBub25lOworfQorCisuc2hvd19vdXRwdXQgLm91dHB1dCwgLm5lZWRzX2NoZWNrIC5vdXRw
dXQgIHsKKwlkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OworCXZpc2liaWxpdHk6IHZpc2libGUg
IWltcG9ydGFudDsKK30KKworLnNob3dfb3V0cHV0ICNzaG93X291dHB1dCB7CisJZGlzcGxheTog
bm9uZTsKK30KKworLnJlc291cmNlIHsKKwl2aXNpYmlsaXR5OiBoaWRkZW47CisJaGVpZ2h0OiAw
OworfQorCisuZmFsbGJhY2sgeworCWZvbnQtc2l6ZTogMmVtOworCWZvbnQtd2VpZ2h0OiBib2xk
OworCWNvbG9yOiAjYTAwOworfQorCisKK2h0bWwubWluaW1hbCBib2R5IHsKKwljb2xvcjogd2hp
dGU7Cit9CitodG1sLmZhaWwubWluaW1hbCB7CisJYmFja2dyb3VuZDogI2YwMDsKK30KK2h0bWwu
cGFzcy5taW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAjMDgwOworfQoraHRtbC5uZWVkc19jaGVjay5t
aW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAjMDA4OworfQorLm1pbmltYWwgI2QgeworCWRpc3BsYXk6
IG5vbmUgIWltcG9ydGFudDsKK30KKy5taW5pbWFsIC5leHBlY3RlZHRleHQgeworCXZpc2liaWxp
dHk6IGhpZGRlbiAhaW1wb3J0YW50OworfQorI3Bhc3N0ZXh0LCAjZmFpbHRleHQgeworCWRpc3Bs
YXk6IG5vbmU7Cit9CisubWluaW1hbC5wYXNzICNwYXNzdGV4dCwgLm1pbmltYWwuZmFpbCAjZmFp
bHRleHQgeworCWRpc3BsYXk6IGJsb2NrOworfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwyNjEgQEAKK2Z1bmN0aW9uIF92YWxUb1N0cmluZyh2YWwpCit7CisgICAgaWYgKHZhbCA9PT0g
dW5kZWZpbmVkIHx8IHZhbCA9PT0gbnVsbCkKKyAgICAgICAgcmV0dXJuICdbJyArIHR5cGVvZih2
YWwpICsgJ10nOworICAgIHJldHVybiB2YWwudG9TdHJpbmcoKSArICdbJyArIHR5cGVvZih2YWwp
ICsgJ10nOworfQorCit2YXIgX2hleDJkZWNfdGFibGUgPSB7CisgICAgMDowLCAxOjEsIDI6Miwg
MzozLCA0OjQsIDU6NSwgNjo2LCA3OjcsIDg6OCwgOTo5LAorICAgIGE6MTAsIGI6MTEsIGM6MTIs
IGQ6MTMsIGU6MTQsIGY6MTUsCisgICAgQToxMCwgQjoxMSwgQzoxMiwgRDoxMywgRToxNCwgRjox
NQorfTsKK2Z1bmN0aW9uIF9oZXgyZGVjKGhleCkKK3sKKyAgICByZXR1cm4gX2hleDJkZWNfdGFi
bGVbaGV4LmNoYXJBdCgwKV0qMTYgKyBfaGV4MmRlY190YWJsZVtoZXguY2hhckF0KDEpXTsKK30K
KwordmFyIF9mYWlsZWQgPSBmYWxzZTsKK3ZhciBfYXNzZXJ0ZWQgPSBmYWxzZTsKK2Z1bmN0aW9u
IF93YXJuKHRleHQpCit7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaScpKS5hcHBlbmRDaGlsZChkb2N1bWVudC5j
cmVhdGVUZXh0Tm9kZSh0ZXh0KSk7Cit9CitmdW5jdGlvbiBfZmFpbCh0ZXh0KQoreworICAgIF93
YXJuKHRleHQpOworICAgIF9mYWlsZWQgPSB0cnVlOworfQorCitmdW5jdGlvbiBfYXNzZXJ0KGNv
bmQsIHRleHQpCit7CisgICAgX2Fzc2VydGVkID0gdHJ1ZTsKKyAgICBpZiAoISBjb25kKQorICAg
ICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogJyArIHRleHQpOworfQorCitmdW5jdGlvbiBf
YXNzZXJ0U2FtZShhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVl
OworICAgIGlmIChhICE9PSBiKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsg
dGV4dF9hICsgJyA9PT0gJyArIHRleHRfYiArCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBf
dmFsVG9TdHJpbmcoYSkgKyAnLCBleHBlY3RlZCAnICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsK
K30KKworZnVuY3Rpb24gX2Fzc2VydERpZmZlcmVudChhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sK
KyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmIChhID09PSBiKQorICAgICAgICBfZmFpbCgn
RmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9hICsgJyAhPT0gJyArIHRleHRfYiArCisgICAgICAg
ICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnLCBleHBlY3RlZCBub3QgJyAr
IF92YWxUb1N0cmluZyhiKSArICcpJyk7Cit9CisKK2Z1bmN0aW9uIF9hc3NlcnRFcXVhbChhLCBi
LCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmIChhICE9
IGIpCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0ZXh0X2EgKyAnID09ICcg
KyB0ZXh0X2IgKworICAgICAgICAgICAgICAgICcgKGdvdCAnICsgX3ZhbFRvU3RyaW5nKGEpICsg
JywgZXhwZWN0ZWQgJyArIF92YWxUb1N0cmluZyhiKSArICcpJyk7Cit9CisKK2Z1bmN0aW9uIF9h
c3NlcnRNYXRjaChhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVl
OworICAgIGlmICghIGEubWF0Y2goYikpCisgICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9u
ICcgKyB0ZXh0X2EgKyAnIG1hdGNoZXMgJyArIHRleHRfYiArCisgICAgICAgICAgICAgICAgJyAo
Z290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnKScpOworfQorCisKK3ZhciBfbWFudWFsX2NoZWNr
ID0gZmFsc2U7CisKK2Z1bmN0aW9uIF9yZXF1aXJlTWFudWFsQ2hlY2soKQoreworICAgIF9tYW51
YWxfY2hlY2sgPSB0cnVlOworfQorCitmdW5jdGlvbiBfY3Jhc2goKQoreworICAgIF9mYWlsKCdB
Ym9ydGVkIGR1ZSB0byBwcmVkaWN0ZWQgY3Jhc2gnKTsKK30KKwordmFyIF9nZXRJbWFnZURhdGFD
YWxpYnJhdGVkID0gZmFsc2U7Cit2YXIgX2dldEltYWdlRGF0YUlzUHJlbXVsLCBfZ2V0SW1hZ2VE
YXRhSXNCR1JBOworCitmdW5jdGlvbiBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpCit7CisgICAgdmFy
IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpOworICAgIGlmIChjdHggJiYgdHlwZW9mKGN0
eC5nZXRJbWFnZURhdGEpICE9ICd1bmRlZmluZWQnKQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAg
ICAgICAgICAgIHZhciBpbWdkYXRhID0gY3R4LmdldEltYWdlRGF0YSh4LCB5LCAxLCAxKTsKKyAg
ICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBl
eGNlcHRpb24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3bgorICAgICAgICAgICAgLy8gZGF0YTogVVJM
cyBvbnRvIHRoZSBjYW52YXMKKyAgICAgICAgICAgIGltZ2RhdGEgPSBudWxsOworICAgICAgICB9
CisgICAgICAgIGlmIChpbWdkYXRhKQorICAgICAgICB7CisgICAgICAgICAgICAvLyBXb3JrIGFy
b3VuZCBnZXRJbWFnZURhdGEgYnVncywgc2luY2Ugd2Ugd2FudCB0aGUgb3RoZXIgdGVzdHMgdG8K
KyAgICAgICAgICAgIC8vIGNhcnJ5IG9uIHdvcmtpbmcgYXMgd2VsbCBhcyBwb3NzaWJsZQorICAg
ICAgICAgICAgaWYgKCEgX2dldEltYWdlRGF0YUNhbGlicmF0ZWQpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgdmFyIGMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7
CisgICAgICAgICAgICAgICAgYzIud2lkdGggPSBjMi5oZWlnaHQgPSAxOworICAgICAgICAgICAg
ICAgIHZhciBjdHgyID0gYzIuZ2V0Q29udGV4dCgnMmQnKTsKKyAgICAgICAgICAgICAgICBjdHgy
LmZpbGxTdHlsZSA9ICdyZ2JhKDAsIDI1NSwgMjU1LCAwLjUpJzsKKyAgICAgICAgICAgICAgICBj
dHgyLmZpbGxSZWN0KDAsIDAsIDEsIDEpOworICAgICAgICAgICAgICAgIHZhciBkYXRhMiA9IGN0
eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpLmRhdGE7CisKKyAgICAgICAgICAgICAgICAvLyBG
aXJlZm94IHJldHVybnMgcHJlbXVsdGlwbGllZCBhbHBoYQorCisgICAgICAgICAgICAgICAgaWYg
KGRhdGEyWzFdID4gMTAwICYmIGRhdGEyWzFdIDwgMTUwKQorICAgICAgICAgICAgICAgICAgICBf
Z2V0SW1hZ2VEYXRhSXNQcmVtdWwgPSB0cnVlOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgX2dldEltYWdlRGF0YUlzUHJlbXVsID0gZmFsc2U7CisKKyAgICAgICAg
ICAgICAgICAvLyBPcGVyYSBNaW5pIDQgQmV0YSByZXR1cm5zIEJHUkEgaW5zdGVhZCBvZiBSR0JB
CisKKyAgICAgICAgICAgICAgICBpZiAoZGF0YTJbMF0gPiAyNTAgJiYgZGF0YTJbMl0gPCA1KQor
ICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNCR1JBID0gdHJ1ZTsKKyAgICAgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFJc0JHUkEgPSBm
YWxzZTsKKworICAgICAgICAgICAgICAgIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gdHJ1ZTsK
KyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLy8gVW5kbyB0aGUgQkdSQSBmbGlwcGluZwor
ICAgICAgICAgICAgdmFyIHJnYmEgPSAoX2dldEltYWdlRGF0YUlzQkdSQQorICAgICAgICAgICAg
ICAgID8gWyBpbWdkYXRhLmRhdGFbMl0sIGltZ2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzBd
LCBpbWdkYXRhLmRhdGFbM10gXQorICAgICAgICAgICAgICAgIDogWyBpbWdkYXRhLmRhdGFbMF0s
IGltZ2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzJdLCBpbWdkYXRhLmRhdGFbM10gXSk7CisK
KyAgICAgICAgICAgIGlmICghIF9nZXRJbWFnZURhdGFJc1ByZW11bCkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gcmdiYTsKKworICAgICAgICAgICAgLy8gVW5kbyB0aGUgcHJlbXVsdGlwbHlpbmcK
KyAgICAgICAgICAgIGlmIChyZ2JhWzNdID09IDApCisgICAgICAgICAgICAgICAgcmV0dXJuIFsg
MCwgMCwgMCwgMCBdOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIHZhciBhID0gcmdiYVszXSAvIDI1NTsKKyAgICAgICAgICAgICAgICByZXR1cm4gWwor
ICAgICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHJnYmFbMF0vYSksCisgICAgICAgICAgICAg
ICAgICAgIE1hdGgucm91bmQocmdiYVsxXS9hKSwKKyAgICAgICAgICAgICAgICAgICAgTWF0aC5y
b3VuZChyZ2JhWzJdL2EpLAorICAgICAgICAgICAgICAgICAgICByZ2JhWzNdCisgICAgICAgICAg
ICAgICAgXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIHRyeSB7IGN0
eCA9IGNhbnZhcy5nZXRDb250ZXh0KCdvcGVyYS0yZGdhbWUnKTsgfSBjYXRjaCAoZSkgeyAvKiBG
aXJlZm94IHRocm93cyAqLyB9CisgICAgaWYgKGN0eCAmJiB0eXBlb2YoY3R4LmdldFBpeGVsKSAh
PSAndW5kZWZpbmVkJykKKyAgICB7CisgICAgICAgIHRyeSB7CisgICAgICAgICAgICB2YXIgYyA9
IGN0eC5nZXRQaXhlbCh4LCB5KTsKKyAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAg
Ly8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3bgor
ICAgICAgICAgICAgLy8gZGF0YTogVVJMcyBvbnRvIHRoZSBjYW52YXMKKyAgICAgICAgICAgIGMg
PSBudWxsOworICAgICAgICB9CisgICAgICAgIGlmIChjKQorICAgICAgICB7CisgICAgICAgICAg
ICB2YXIgbWF0Y2hlcyA9IC9ecmdiYVwoKFxkKyksIChcZCspLCAoXGQrKSwgKFtcZFwuXSspXCkk
Ly5leGVjKGMpOworICAgICAgICAgICAgaWYgKG1hdGNoZXMpCisgICAgICAgICAgICAgICAgcmV0
dXJuIFsgbWF0Y2hlc1sxXSwgbWF0Y2hlc1syXSwgbWF0Y2hlc1szXSwgTWF0aC5yb3VuZChtYXRj
aGVzWzRdKjI1NSkgXTsKKyAgICAgICAgICAgIG1hdGNoZXMgPSAvXiMoLi4pKC4uKSguLikkLy5l
eGVjKGMpOworICAgICAgICAgICAgaWYgKG1hdGNoZXMpCisgICAgICAgICAgICAgICAgcmV0dXJu
IFsgX2hleDJkZWMobWF0Y2hlc1sxXSksIF9oZXgyZGVjKG1hdGNoZXNbMl0pLCBfaGV4MmRlYyht
YXRjaGVzWzNdKSwgMjU1IF07CisgICAgICAgIH0KKyAgICB9CisgICAgLy9fd2FybigiKENhbid0
IHRlc3QgcGl4ZWwgdmFsdWUpIik7CisgICAgX21hbnVhbF9jaGVjayA9IHRydWU7CisgICAgcmV0
dXJuIHVuZGVmaW5lZDsKK30KKworZnVuY3Rpb24gX2Fzc2VydFBpeGVsKGNhbnZhcywgeCx5LCBy
LGcsYixhLCBwb3MsIGNvbG91cikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIHZhciBj
ID0gX2dldFBpeGVsKGNhbnZhcywgeCx5KTsKKyAgICBpZiAoYyAmJiAhIChjWzBdID09IHIgJiYg
Y1sxXSA9PSBnICYmIGNbMl0gPT0gYiAmJiBjWzNdID09IGEpKQorICAgICAgICBfZmFpbCgnRmFp
bGVkIGFzc2VydGlvbjogZ290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4
cGVjdGVkIFsnK3IrJywnK2crJywnK2IrJywnK2ErJ10nKTsKK30KKworZnVuY3Rpb24gX2Fzc2Vy
dFBpeGVsQXBwcm94KGNhbnZhcywgeCx5LCByLGcsYixhLCBwb3MsIGNvbG91ciwgdG9sZXJhbmNl
KQoreworICAgIF9hc3NlcnRlZCA9IHRydWU7CisgICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFz
LCB4LHkpOworICAgIGlmIChjKQorICAgIHsKKyAgICAgICAgdmFyIGRpZmYgPSBNYXRoLm1heChN
YXRoLmFicyhjWzBdLXIpLCBNYXRoLmFicyhjWzFdLWcpLCBNYXRoLmFicyhjWzJdLWIpLCBNYXRo
LmFicyhjWzNdLWEpKTsKKyAgICAgICAgaWYgKGRpZmYgPiB0b2xlcmFuY2UpCisgICAgICAgICAg
ICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogZ290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3gr
JywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywnK2crJywnK2IrJywnK2ErJ10gKy8tICcrdG9sZXJh
bmNlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIF9hZGRUZXN0KHRlc3QpCit7CisgICAgdmFyIGRl
ZmVycmVkID0gZmFsc2U7CisgICAgd2luZG93LmRlZmVyVGVzdCA9IGZ1bmN0aW9uICgpIHsgZGVm
ZXJyZWQgPSB0cnVlOyB9OworICAgIGZ1bmN0aW9uIGVuZFRlc3QoKQorICAgIHsKKyAgICAgICAg
aWYgKF9mYWlsZWQpIC8vIHRlc3QgZmFpbGVkCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvY3Vt
ZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05hbWUgKz0gJyBmYWlsJzsKKyAgICAgICAgICAgIHdp
bmRvdy5fdGVzdFN0YXR1cyA9IFsnZmFpbCcsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJyku
aW5uZXJIVE1MXTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChfbWFudWFsX2NoZWNrIHx8
ICFfYXNzZXJ0ZWQpCisgICAgICAgIHsgLy8gdGVzdCBjYXNlIGV4cGxpY2l0bHkgYXNrZWQgZm9y
IGEgbWFudWFsIGNoZWNrLCBvciBubyBhdXRvbWF0aWMgYXNzZXJ0aW9ucyB3ZXJlIHBlcmZvcm1l
ZAorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUwgKz0g
JzxsaT5DYW5ub3QgYXV0b21hdGljYWxseSB2ZXJpZnkgcmVzdWx0JzsKKyAgICAgICAgICAgIGRv
Y3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05hbWUgKz0gJyBuZWVkc19jaGVjayc7CisgICAg
ICAgICAgICB3aW5kb3cuX3Rlc3RTdGF0dXMgPSBbJ2NoZWNrJywgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ2QnKS5pbm5lckhUTUxdOworICAgICAgICB9CisgICAgICAgIGVsc2UgLy8gdGVzdCBz
dWNjZWVkZWQKKyAgICAgICAgeworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2QnKS5pbm5lckhUTUwgKz0gJzxsaT5QYXNzZWQnOworICAgICAgICAgICAgZG9jdW1lbnQuZG9j
dW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAnIHBhc3MnOworICAgICAgICAgICAgd2luZG93Ll90
ZXN0U3RhdHVzID0gWydwYXNzJywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhU
TUxdOworICAgICAgICB9CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfQor
ICAgIHdpbmRvdy5lbmRUZXN0ID0gZW5kVGVzdDsKKyAgICB3aW5kb3cud3JhcEZ1bmN0aW9uID0g
ZnVuY3Rpb24gKGYpCisgICAgeworICAgICAgICByZXR1cm4gZnVuY3Rpb24oKQorICAgICAgICB7
CisgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBmLmFwcGx5
KG51bGwsIGFyZ3VtZW50cyk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjYXRjaCAoZSkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBfZmFpbCgnQWJvcnRlZCB3aXRoIGV4Y2Vw
dGlvbjogJyArIGUubWVzc2FnZSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbmRUZXN0
KCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkK
KyAgICB7CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAg
ICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgfQorICAgICAgICB0
cnkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdjJyk7CisgICAgICAgICAgICB2YXIgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJk
Jyk7CisgICAgICAgICAgICB0ZXN0KGNhbnZhcywgY3R4KTsKKyAgICAgICAgfQorICAgICAgICBj
YXRjaCAoZSkKKyAgICAgICAgeworICAgICAgICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0aCBleGNl
cHRpb246ICcgKyBlLm1lc3NhZ2UpOworICAgICAgICAgICAgZGVmZXJyZWQgPSBmYWxzZTsgLy8g
Y2FuY2VsIGFueSBkZWZlcmVuY2UKKyAgICAgICAgfQorCisgICAgICAgIGlmICghIGRlZmVycmVk
KQorICAgICAgICAgICAgZW5kVGVzdCgpOworICAgIH07Cit9CisKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFz
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0OjYzNjc4KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nl
c3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5w
bmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCitkcmF3SW1hZ2Ugb2Yg
dW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNl
czogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcworQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAko
cmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sOjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQxIEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5D
YW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhczwvdGl0bGU+Cis8c2NyaXB0IHNy
Yz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2Uu
aW1hZ2UuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Cis8bGluayByZWw9
Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0
eS5wYXR0ZXJuLmNyZWF0ZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEg
aHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9
IltwXSBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXgu
aHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1s
IiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZndDs8
L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFnZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmNhbnZhczwv
aDE+Cis8cCBjbGFzcz0iZGVzYyI+ZHJhd0ltYWdlIG9mIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRo
ZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2Vz
OgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1h
Z2UuY2FudmFzIj5zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC9hPgorCis8L3VsPgorPC9kaXY+
CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIg
Y2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNr
Ij5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3Vs
PgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52
YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0g
MTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0
KCcyZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5w
bmcnKSwgMCwgMCk7CitjdHguZHJhd0ltYWdlKGNhbnZhczIsIDAsIDApOwordHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24g
PSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0
aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsg
Y3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1
ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjog
Y3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxp
bWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVs
bG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4
KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFn
ZS5pbWFnZS1leHBlY3RlZC50eHQ6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkgQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFs
IFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCis8IFtpbmRleF0g
Pgorc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCitkcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdp
biBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1
cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJMIHNlY3VyaXR5LmdldEltYWdl
RGF0YQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0bWwJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1s
OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzgg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1h
Z2UuaW1hZ2U8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJl
diIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgdGl0bGU9
InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4KKzxsaW5rIHJlbD0ibmV4dCIg
aHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcyI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJl
Zj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgYWNjZXNza2V5PSJw
IiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdlIj4mbHQ7PC9h
PgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHku
ZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHku
ZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5o
dG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwi
PmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgorPHAgY2xhc3M9ImRlc2MiPmRyYXdJbWFnZSBvZiBk
aWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+
Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UiPnNlY3VyaXR5LmRyYXdJbWFn
ZS5pbWFnZTwvYT4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkudG9E
YXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rl
c3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0YSI+c2VjdXJpdHkuZ2V0SW1hZ2VEYXRhPC9hPgor
Cis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgor
PGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAg
Y2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKwor
PHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4
KSB7CisKK2N0eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcn
KSwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7
IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93
biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkg
eyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNh
dGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJz
aG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0K
KworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMu
Y29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52
YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxl
LWV4cGVjdGVkLnR4dDo2MzY3OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJu
YWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4
XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUKK1NldHRpbmcgZmlsbFN0eWxl
IHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdp
bi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIEJ1Z3ppbGxh
CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2
NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0
bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZTwvdGl0bGU+
Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5maWxsU3R5bGUiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0
cm9rZVN0eWxlIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJz
ZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxl
PSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJl
Zj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5w
YXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
Lmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
Lmh0bWwiPmNhbnZhczwvYT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5n
IGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8
dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5j
YW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+Cis8bGk+PGEgaHJlZj0iaHR0cHM6
Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwv
YT4KKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+
Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48
cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgor
Cis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBj
dHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsK
K2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBj
YW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4o
Y2FudmFzMiwgJ3JlcGVhdCcpOworY3R4LmZpbGxTdHlsZSA9IHA7CitjdHguZmlsbFN0eWxlID0g
J3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0g
Y2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwg
InNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2
YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKwor
Cit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29t
L3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLWV4cGVjdGVkLnR4dDo2MzY3OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBl
eHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBb
aW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCitTZXR0aW5nIHN0
cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2Fu
dmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5jYW52
YXMgQnVnemlsbGEKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKworCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
c3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRt
bAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbDo2MzY3OCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDMgQEAKKzwh
RE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5zdHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0
PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVs
PSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRp
dGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4KKzxsaW5rIHJlbD0ibmV4
dCIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+
Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRl
eC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgYWNj
ZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LmRhdGFVUkkiPiZndDs8L2E+Cis8aDE+PGEg
aHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNl
Y3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFzPC9hPi5zdHJva2VTdHlsZTwvaDE+Cis8cCBjbGFz
cz0iZGVzYyI+U2V0dGluZyBzdHJva2VTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBj
YW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJl
ZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNl
Y3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhcyI+c2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFzPC9h
PgorPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dp
P2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+Cis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRw
dXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lk
dGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBj
b250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRU
ZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWln
aHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOworY3R4Mi5kcmF3
SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Cit2YXIg
cCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKK2N0eC5zdHJva2VTdHls
ZSA9IHA7CitjdHguc3Ryb2tlU3R5bGUgPSAncmVkJzsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFs
c2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBm
aW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFz
LnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFn
ZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxs
eSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFn
ZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0
cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNs
YXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3
OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1l
eHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2Vz
cyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBu
ZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZworUGF0dGVybiBz
YWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90
IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0
IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMKK0Rpc2FncmVlcyB3aXRoIHNwZWMgb24gImlzIiB2
cyAid2FzIgorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5n
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCShyZXZpc2lvbiA2MzY3
OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmcuaHRtbDo2MzY3OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDQ3IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nPC90aXRsZT4KKzxzY3JpcHQg
c3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPgorPGxpbmsgcmVsPSJu
ZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0i
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0
cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNz
a2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPiZsdDs8L2E+CisgPGEg
aHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHku
cGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4u
aHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5jYW52YXMu
aHRtbCI+Y2FudmFzPC9hPi50aW1pbmc8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlBhdHRlcm4gc2Fm
ZXR5IGRlcGVuZHMgb24gd2hldGhlciB0aGUgc291cmNlIHdhcyBvcmlnaW4tY2xlYW4sIG5vdCBv
biB3aGV0aGVyIGl0IHN0aWxsIGlzIGNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJl
bmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Rh
cnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5z
ZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgor
Cis8L3VsPgorPC9kaXY+Cis8cCBjbGFzcz0ibm90ZXMiPkRpc2FncmVlcyB3aXRoIHNwZWMgb24g
ImlzIiB2cyAid2FzIgorPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2Fu
dmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFz
cz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwg
aWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsK
KwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZh
czIud2lkdGggPSAxMDA7CitjYW52YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMy
LmdldENvbnRleHQoJzJkJyk7CitjdHgyLmZpbGxTdHlsZSA9ICcjMGYwJzsKK2N0eDIuZmlsbFJl
Y3QoMCwgMCwgMTAwLCA1MCk7Cit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdy
ZXBlYXQnKTsKK2N0eDIuZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cu
cG5nJyksIDAsIDApOyAvLyBtYWtlIGNhbnZhczIgb3JpZ2luLXVuY2xlYW4KK2N0eC5maWxsU3R5
bGUgPSBwOworY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOworY2FudmFzLnRvRGF0YVVSTCgp
OworY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKK19hc3NlcnQodHJ1ZSwgInRydWUiKTsg
Ly8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCisKKworfSk7Cis8L3NjcmlwdD4KKzxp
bWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVs
bG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkJ
KGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
ZWF0ZS1leHBlY3RlZC50eHQ6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJM
IGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+Citz
ZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZQorQ3JlYXRpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIGRvZXMg
bm90IG1ha2UgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHku
c3RhcnQKK0FjdHVhbCBvdXRwdXQ6CitQYXNzZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWw6NjM2
NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM3IEBACis8
IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcmVh
dGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJl
Zj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcyI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MiPgorPGJvZHkgY2xhc3M9InNo
b3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRt
bCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPiZs
dDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1
cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0
eS5wYXR0ZXJuLmNyb3NzIj4mZ3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0
bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBh
dHRlcm48L2E+LmNyZWF0ZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+Q3JlYXRpbmcgYW4gdW5jbGVh
biBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1cml0eS5zdGFydDwvYT4KKworPC91bD4KKzwv
ZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9
ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxs
YmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+
PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIg
cCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5n
JyksICdyZXBlYXQnKTsKK2NhbnZhcy50b0RhdGFVUkwoKTsKK2N0eC5nZXRJbWFnZURhdGEoMCwg
MCwgMSwgMSk7CitfYXNzZXJ0KHRydWUsICJ0cnVlIik7IC8vIG9rYXkgaWYgdGhlcmUgd2FzIG5v
IGV4Y2VwdGlvbgorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJj
ZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9z
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0OjYzNjc4KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAor
QmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMu
Y29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNyb3NzCitVc2lu
ZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMgdGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xl
YW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXMKK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0CitB
Y3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jcm9zcy5odG1sCShyZXZpc2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWw6NjM2NzgpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jcm9zcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyb3NzPC90aXRsZT4K
KzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Cis8
bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1s
IiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4KKzxib2R5IGNsYXNzPSJz
aG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1s
IiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZsdDs8
L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRl
eC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0
dGVybi5odG1sIj5wYXR0ZXJuPC9hPi5jcm9zczwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+VXNpbmcg
YW4gdW5jbGVhbiBwYXR0ZXJuIG1ha2VzIHRoZSB0YXJnZXQgY2FudmFzIG9yaWdpbi11bmNsZWFu
LCBub3QgdGhlIHBhdHRlcm4gY2FudmFzPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNl
czoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQi
PnNlY3VyaXR5LnN0YXJ0PC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQi
PkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9
IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250
ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0
KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWlnaHQg
PSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOwordmFyIHAgPSBjdHgy
LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3Jl
cGVhdCcpOworY3R4LmZpbGxTdHlsZSA9IHA7CitjdHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7
Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2gg
KGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3Vs
ZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Ro
cm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7
IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhy
b3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KK2NhbnZhczIu
dG9EYXRhVVJMKCk7CitjdHgyLmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKKworCit9KTsKKzwv
c2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5w
bmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dDo2
MzY3OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4
Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlCitTZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2Yg
YSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4K
K1JlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZQorQWN0dWFsIG91dHB1dDoKK1Bh
c3NlZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZS5odG1sCShyZXZpc2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1s
OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5q
cyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+
Cis8bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4KKzxsaW5rIHJlbD0i
bmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3df
b3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGlt
aW5nIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIg
dGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZndDs8L2E+Cis8
aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9Imlu
ZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNs
YXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQt
b3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNs
YXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0
cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZTwv
YT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0Ojwv
cD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAi
PjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+
CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMs
IGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZp
bGxTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0
YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsg
fQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhy
b3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCShmcm9t
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZS1leHBlY3RlZC50eHQ6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1l
eHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2Vz
cyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBu
ZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUKK1NldHRp
bmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBt
YWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJv
a2VTdHlsZS5pbWFnZQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdl
LnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRt
bAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sOjYzNjc4KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1h
Z2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM4IEBACis8IURP
Q1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0Pgor
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJw
cmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9
InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhy
ZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRw
dXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxs
U3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBo
cmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9
Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8
L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhy
ZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5k
ZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gx
PgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEg
ZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9w
PgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVj
Lmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9r
ZVN0eWxlLmltYWdlPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFj
dHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50
KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1
bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0
eWxlID0gcDsKK2N0eC5zdHJva2VTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBm
YWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52
YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5h
bGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldElt
YWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJo
dHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIg
Y2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQ6NjM2NzgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8g
ZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwg
W2luZGV4XSA+CitzZWN1cml0eS5yZXNldAorUmVzZXR0aW5nIHRoZSBjYW52YXMgc3RhdGUgZG9l
cyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVhbiBmbGFnCitSZWZlcmVuY2VzOiBpbml0aWFsLnJl
c2V0CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJl
c2V0Lmh0bWwJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWw6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDog
c2VjdXJpdHkucmVzZXQ8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3Njcmlw
dD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJl
bD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0
YVVSSSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwi
IHRpdGxlPSIyZC5nZXRjb250ZXh0LmV4aXN0cyI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQi
PgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRp
dGxlPSJbcF0gc2VjdXJpdHkuZGF0YVVSSSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1s
Ij5baW5kZXhdPC9hPgorIDxhIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSAyZC5nZXRjb250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KKzxoMT48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgorPHAg
Y2xhc3M9ImRlc2MiPlJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRo
ZSBvcmlnaW4tY2xlYW4gZmxhZzwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8
dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRp
YWwucmVzZXQ8L2E+CisKKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFs
IG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9w
PjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rp
b24oY2FudmFzLCBjdHgpIHsKKworY2FudmFzLndpZHRoID0gNTA7CitjdHguZHJhd0ltYWdlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwordHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24g
PSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0
aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQorY2FudmFzLndpZHRoID0gMTAwOwordHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90
aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cg
ZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+Cis8
aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9Inll
bGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3Jt
L2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHJldmlzaW9uIDYzNjc4
KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0yODAwLDYgKzI4MDAsNyBAQCBCVUc0NDE1MCBMSU5VWCBERUJV
RyA6IGZhc3QvZm9ybXMvaW5wdXQtCiAKIC8vIE5ldyBjYW52YXMgdGVzdCBzdWl0ZSBmcm9tIGh0
dHA6Ly9waGlsaXAuaHRtbDUub3JnL3Rlc3RzL2NhbnZhcy9zdWl0ZS90ZXN0cy8KIEJVRzIwNTUz
IFNLSVAgREVGRVIgOiBjYW52YXMvcGhpbGlwID0gVEVYVAorQlVHMjA1NTMgU0tJUCBERUZFUiA6
IGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcCA9IFRFWFQKIAogLy8gTmVlZCB0byBkdW1wIGNvbnRl
eHQgbWVudSBpdGVtcyBvbiBldmVudFNlbmRlci5jb250ZXh0Q2xpY2sodHJ1ZSkuCiBCVUdXSzM5
MTA1IDogZWRpdGluZy9zcGVsbGluZy9jb250ZXh0LW1lbnUtc3VnZ2VzdGlvbnMuaHRtbCA9IFRF
WFQKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCShyZXZpc2lvbiA2MzY3OCkKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC01Njc2LDYg
KzU2NzYsNyBAQCBmYXN0L2xvYWRlci9udWxsLXJlcXVlc3QtYWZ0ZXItd2lsbFNlbmRSCiAKICMg
TmV3IGNhbnZhcyB0ZXN0IHN1aXRlIGZyb20gaHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMv
Y2FudmFzL3N1aXRlL3Rlc3RzLwogY2FudmFzL3BoaWxpcAoraHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwCiAKICMgU2tpcCB0aGlzLCBpdCdzIHBlbmRpbmcgb24gb25lIHBhdGNoIGluIHRoZSBjb21t
aXQgcXVldWUKIGFjY2Vzc2liaWxpdHkvYXJpYS1jb250cm9scy13aXRoLXRhYnMuaHRtbApJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTI1Miw2ICsyNTIsNyBA
QCBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hCiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwKIGNhbnZhcy9waGlsaXAvdGVzdHMvdG9EYXRhVVJM
LmpwZWcuYWxwaGEuaHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy90eXBlLnByb3RvdHlwZS5odG1s
CitodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAKIAogIyBJbmRleGVkREIgaXMgbm90IHlldCBlbmFi
bGVkLgogc3RvcmFnZS9pbmRleGVkZGIKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Nr
aXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2
aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5n
IGNvcHkpCkBAIC01MzIxLDYgKzUzMjEsNyBAQCBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hCiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUuaHRtbAogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1s
CiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLmRyYXdJbWFnZS5icm9rZW4uaHRtbAoraHR0cC90ZXN0
cy9jYW52YXMvcGhpbGlwCiAKICMgW1F0XSBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLnBhdGguc3Ry
b2tlLm92ZXJsYXAuaHRtbCBmYWlscyB3aXRoIFF0LTQuNi4yIG9yIGhpZ2hlcgogIyBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAzNjIKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC9pbWFnZXMveWVsbG93LnBuZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNh
bm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBl
ID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmcKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpBZGRlZDogc3ZuOm1pbWUtdHlwZQogICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlW
Qk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFHUUFBQUF5QVFNQUFBQ1ErK3o5QUFBQUExQk1WRVgvL3dD
S3h2UkZBQUFBRjBsRVFWUjQKWHUzQUFRMEFBQUJBTVAxVHkyRnpvallCQXJ3QUFVTnhqTWtBQUFB
QVNVVk9SSzVDWUlJPQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61983</attachid>
            <date>2010-07-19 12:51:36 -0700</date>
            <delta_ts>2010-07-20 10:32:05 -0700</delta_ts>
            <desc>fix patch 1</desc>
            <filename>41279_4.patch</filename>
            <type>text/plain</type>
            <size>77451</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDYzNjgwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNjMgQEAKKzIwMTAtMDctMTkgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTW92ZSB0aGUgY2FudmFzIHNlY3VyaXR5IHRlc3RzIHRvIGh0dHAgdGVzdHMgdG8g
c2ltdWxhdGUgcmVtb3RlIGhvc3QKKyAgICAgICAgYWNjZXNzIGFuZCB0aGVuIHBhc3MgdGhlIHRl
c3RzLiBCZWNhdXNlIG9mIHNvbWUgZGlmZmljdWx0eSBmb3IgYXBwbHlpbmcKKyAgICAgICAgcGF0
Y2hlcywgdGhpcyBwYXRjaCBvbmx5IG1vdmVzIHRoZSBmaWxlcyB3aXRob3V0IGFueSBvdGhlciBj
aGFuZ2VzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDEyNzkKKworICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdl
LmNhbnZhcy1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICog
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0
OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmltYWdlLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgor
ICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmls
bFN0eWxlLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisg
ICAgICAgICogY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5o
dG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAg
KiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0
OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVy
bi5jcm9zcy5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5
bGUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAg
ICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cmVzZXQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNhbnZhcy9waGlsaXAvdGVz
dHMvc2VjdXJpdHkucmVzZXQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nh
bnZhczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzOiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvaW1hZ2VzL3llbGxvdy5wbmc6IEFkZGVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0czogQWRkZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmNzczogQWRkZWQuCisgICAgICAgICog
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMt
ZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWw6
IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBM
YXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1l
eHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sLgorICAgICAgICAq
IGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGUtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLmZpbGxTdHlsZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhw
ZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0
eWxlLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91
dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5n
LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0
bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQuCisgICAg
ICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jl
YXRlLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQ6IENvcGllZCBm
cm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9z
cy1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwuCisgICAgICAgICog
aHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlLWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5z
dHJva2VTdHlsZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2NhbnZhcy9w
aGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50
eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwu
CisgICAgICAgICogaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0
LWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0
cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWw6IENvcGllZCBmcm9tIExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6CisgICAgICAgICogcGxhdGZv
cm0vZ3RrL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1NraXBwZWQ6CisgICAgICAg
ICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKwogMjAxMC0wNy0xOSAgQWxleGV5IFByb3NrdXJ5YWtv
diAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KSW5k
ZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNh
bnZhcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJ
bWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDkgKzAsMCBAQAot
QmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMu
Y29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzCi1k
cmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVh
bgotUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcwotQWN0dWFsIG91dHB1dDoK
LVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sCShyZXZpc2lvbiA2
MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQxICswLDAgQEAKLTwhRE9DVFlQ
RSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzPC90
aXRsZT4KLTxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Ci08bGluayByZWw9InByZXYiIGhyZWY9InNl
Y3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRt
bCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4KLTxib2R5IGNsYXNzPSJzaG93X291
dHB1dCI+Ci08cD4KLSA8YSBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgYWNj
ZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZSI+Jmx0OzwvYT4K
LSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBh
dHRlcm4uY3JlYXRlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0
ZXJuLmNyZWF0ZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5z
ZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJ
bWFnZTwvYT4uY2FudmFzPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5kcmF3SW1hZ2Ugb2YgdW5jbGVh
biBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KLTxkaXYgY2xhc3M9
InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZz
LnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPnNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXM8L2E+
Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+
Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48
cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgot
Ci08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBj
dHgpIHsKLQotdmFyIGNhbnZhczIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsK
LWNhbnZhczIud2lkdGggPSAxMDA7Ci1jYW52YXMyLmhlaWdodCA9IDUwOwotdmFyIGN0eDIgPSBj
YW52YXMyLmdldENvbnRleHQoJzJkJyk7Ci1jdHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAwKTsKLWN0eC5kcmF3SW1hZ2UoY2FudmFzMiwgMCwg
MCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0
Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNo
b3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIg
X3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChl
KSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQg
dGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19
KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3ll
bGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysr
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdl
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNj
ZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cu
cG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlCi1kcmF3SW1hZ2Ugb2Yg
ZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCi1S
ZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJpdHkudG9EYXRhVVJMIHNl
Y3VyaXR5LmdldEltYWdlRGF0YQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0
ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rl
c3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMu
Y3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRz
aWRlcmFuZ2UuaHRtbCIgdGl0bGU9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0c2lkZXJhbmdl
Ij4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1s
IiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19v
dXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5vdXRzaWRlcmFu
Z2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVnLnF1YWxpdHku
b3V0c2lkZXJhbmdlIj4mbHQ7PC9hPgotIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+
Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9Im4i
IHRpdGxlPSJbbl0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4KLTxoMT48YSBo
cmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgotPHAgY2xhc3M9
ImRlc2MiPmRyYXdJbWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52
YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVs
PgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuaW1h
Z2UiPnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvYT4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwj
dGVzdHJlZnMuc2VjdXJpdHkudG9EYXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8L2E+Ci08bGk+
PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0YSI+c2VjdXJp
dHkuZ2V0SW1hZ2VEYXRhPC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQi
PkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9
IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250
ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0
KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLWN0eC5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmlu
YWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50
b0RhdGFVUkwoKSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkg
eyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6
Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFz
cz0icmVzb3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4
cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNz
IHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5n
Ci08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlCi1TZXR0aW5n
IGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuZmlsbFN0eWxlLmNhbnZh
cyBCdWd6aWxsYQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6IExheW91dFRlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlv
dXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxT
dHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQzICswLDAgQEAKLTwhRE9DVFlQRSBodG1s
PgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGU8
L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJlZj0i
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBh
dHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4KLTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHku
cGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5p
bWFnZS5zdHJva2VTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEg
aHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJw
IiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlIj4mbHQ7PC9hPgot
IDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2Vj
dXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
cGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+
U2V0dGluZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVu
Y2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxs
U3R5bGUuY2FudmFzIj5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgotPGxpPjxhIGhyZWY9
Imh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVn
emlsbGE8L2E+Ci08L3VsPgotPC9kaXY+Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRw
dXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0
PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2Nh
bnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNh
bnZhcywgY3R4KSB7Ci0KLXZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2Fu
dmFzJyk7Ci1jYW52YXMyLndpZHRoID0gMTAwOwotY2FudmFzMi5oZWlnaHQgPSA1MDsKLXZhciBj
dHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOwotY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Ci12YXIgcCA9IGN0eC5jcmVhdGVQ
YXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxT
dHlsZSA9ICdyZWQnOwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVS
TCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90
aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQot
dHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsg
fSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3du
LCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIp
OyB9Ci0KLQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBh
Z2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJ
bmRleDogTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNh
bnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5h
bCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhd
ID4KLXNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0
eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9y
aWdpbi11bmNsZWFuCi1SZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMgQnVn
emlsbGEKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52
YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91
dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tl
U3R5bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MyArMCwwIEBACi08IURPQ1RZUEUgaHRt
bD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5
bGU8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJp
dHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNl
Y3VyaXR5LmRhdGFVUkkuaHRtbCIgdGl0bGU9InNlY3VyaXR5LmRhdGFVUkkiPgotPGJvZHkgY2xh
c3M9InNob3dfb3V0cHV0Ij4KLTxwPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uu
c3Ryb2tlU3R5bGUuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRl
cm4uaW1hZ2Uuc3Ryb2tlU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXguaHRtbCI+W2lu
ZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5kYXRhVVJJLmh0bWwiIGFjY2Vzc2tleT0ibiIg
dGl0bGU9IltuXSBzZWN1cml0eS5kYXRhVVJJIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4
LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0
ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLmh0bWwiPmNhbnZhczwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNl
dHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGFuIHVuY2xlYW4gY2FudmFzIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVu
Y2VzOgotPHVsPgotPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdHJv
a2VTdHlsZS5jYW52YXMiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhczwvYT4KLTxsaT48YSBo
cmVmPSJodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQxMjci
PkJ1Z3ppbGxhPC9hPgotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1YWwg
b3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAiIGhl
aWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8L3A+
PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5jdGlv
bihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7Ci12
YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLWN0eDIuZHJhd0ltYWdlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdmFyIHAgPSBjdHguY3Jl
YXRlUGF0dGVybihjYW52YXMyLCAncmVwZWF0Jyk7Ci1jdHguc3Ryb2tlU3R5bGUgPSBwOwotY3R4
LnN0cm9rZVN0eWxlID0gJ3JlZCc7Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjYW52YXMu
dG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9h
c3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50b0RhdGFVUkwo
KSIpOyB9Ci10cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAs
IDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAs
IDEsIDEpIik7IH0KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVzb3Vy
Y2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw5ICswLDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBo
dHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nCi1QYXR0ZXJuIHNhZmV0eSBkZXBlbmRzIG9uIHdo
ZXRoZXIgdGhlIHNvdXJjZSB3YXMgb3JpZ2luLWNsZWFuLCBub3Qgb24gd2hldGhlciBpdCBzdGls
bCBpcyBjbGVhbgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQgc2VjdXJpdHkuZmlsbFN0eWxl
LmNhbnZhcwotRGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi1BY3R1YWwgb3V0
cHV0OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRt
bAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQ3
ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmc8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48
L3NjcmlwdD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxs
aW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRsZT0i
c2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5
LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLmZpbGxTdHlsZSI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJl
Zj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0g
c2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5b
aW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0
bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxT
dHlsZSI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0
eTwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5odG1sIj5jYW52YXM8L2E+LnRp
bWluZzwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+UGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0
aGVyIHRoZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwg
aXMgY2xlYW48L3A+Ci08ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgotPHVsPgotPGxpPjxh
IGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5zdGFydCI+c2VjdXJpdHkuc3RhcnQ8
L2E+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5j
YW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXM8L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLTxw
IGNsYXNzPSJub3RlcyI+RGlzYWdyZWVzIHdpdGggc3BlYyBvbiAiaXMiIHZzICJ3YXMiCi08cCBj
bGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJv
dXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAo
ZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3Jp
cHQ+Ci1fYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNh
bnZhczIuaGVpZ2h0ID0gNTA7Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsK
LWN0eDIuZmlsbFN0eWxlID0gJyMwZjAnOwotY3R4Mi5maWxsUmVjdCgwLCAwLCAxMDAsIDUwKTsK
LXZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOwotY3R4Mi5kcmF3
SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7IC8vIG1h
a2UgY2FudmFzMiBvcmlnaW4tdW5jbGVhbgotY3R4LmZpbGxTdHlsZSA9IHA7Ci1jdHguZmlsbFJl
Y3QoMCwgMCwgMTAwLCA1MCk7Ci1jYW52YXMudG9EYXRhVVJMKCk7Ci1jdHguZ2V0SW1hZ2VEYXRh
KDAsIDAsIDEsIDEpOwotX2Fzc2VydCh0cnVlLCAidHJ1ZSIpOyAvLyBva2F5IGlmIHRoZXJlIHdh
cyBubyBleGNlcHRpb24KLQotCi19KTsKLTwvc2NyaXB0PgotPGltZyBzcmM9Imh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0icmVz
b3VyY2UiPgotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw4ICsw
LDAgQEAKLUJsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nCi08IFtpbmRleF0gPgotc2VjdXJpdHkucGF0dGVybi5jcmVh
dGUKLUNyZWF0aW5nIGFuIHVuY2xlYW4gcGF0dGVybiBkb2VzIG5vdCBtYWtlIHRoZSBjYW52YXMg
b3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0Ci1BY3R1YWwgb3V0cHV0
OgotUGFzc2VkCi0KSW5kZXg6IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jcmVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJKHJldmlzaW9uIDYzNjc4
KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNy
ZWF0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1s
PgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZTwvdGl0bGU+Ci08
c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj4K
LTxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sIiB0aXRs
ZT0ic2VjdXJpdHkucGF0dGVybi5jcm9zcyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgot
PHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nlc3NrZXk9
InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmx0OzwvYT4KLSA8YSBo
cmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4u
Y3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8
L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uY3Jl
YXRlPC9oMT4KLTxwIGNsYXNzPSJkZXNjIj5DcmVhdGluZyBhbiB1bmNsZWFuIHBhdHRlcm4gZG9l
cyBub3QgbWFrZSB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVm
cyI+UmVmZXJlbmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2Vj
dXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgotCi08L3VsPgotPC9kaXY+Ci0KLTxwIGNs
YXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91
dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChm
YWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3VsPgotPHNjcmlw
dD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0gY3R4LmNyZWF0
ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcp
OwotY2FudmFzLnRvRGF0YVVSTCgpOwotY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsKLV9h
c3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhjZXB0aW9uCi0K
LQotfSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNv
bS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDog
TGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkKKysr
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1l
eHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2Vz
cyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBu
ZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MKLVVzaW5nIGFuIHVuY2xlYW4g
cGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90IHRoZSBw
YXR0ZXJuIGNhbnZhcwotUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKLUFjdHVhbCBvdXRwdXQ6
Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbAkocmV2aXNpb24gNjM2Nzgp
CisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jv
c3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0NCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcm9zczwvdGl0bGU+Ci08c2Ny
aXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmNyZWF0ZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPgotPGxpbmsg
cmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0
bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08Ym9keSBjbGFzcz0ic2hvd19v
dXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbCIgYWNj
ZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlIj4mbHQ7PC9hPgot
IDxhIGhyZWY9ImluZGV4Lmh0bWwiPltpbmRleF08L2E+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5jYW52YXMudGltaW5nLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0
eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmciPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4u
aHRtbCI+cGF0dGVybjwvYT4uY3Jvc3M8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlVzaW5nIGFuIHVu
Y2xlYW4gcGF0dGVybiBtYWtlcyB0aGUgdGFyZ2V0IGNhbnZhcyBvcmlnaW4tdW5jbGVhbiwgbm90
IHRoZSBwYXR0ZXJuIGNhbnZhczwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08
dWw+Ci08bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5zZWN1
cml0eS5zdGFydDwvYT4KLQotPC91bD4KLTwvZGl2PgotCi08cCBjbGFzcz0ib3V0cHV0Ij5BY3R1
YWwgb3V0cHV0OjwvcD4KLTxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIxMDAi
IGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVudCk8
L3A+PC9jYW52YXM+Ci0KLTx1bCBpZD0iZCI+PC91bD4KLTxzY3JpcHQ+Ci1fYWRkVGVzdChmdW5j
dGlvbihjYW52YXMsIGN0eCkgewotCi12YXIgY2FudmFzMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ2NhbnZhcycpOwotY2FudmFzMi53aWR0aCA9IDEwMDsKLWNhbnZhczIuaGVpZ2h0ID0gNTA7
Ci12YXIgY3R4MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgnMmQnKTsKLXZhciBwID0gY3R4Mi5jcmVh
dGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQn
KTsKLWN0eC5maWxsU3R5bGUgPSBwOwotY3R4LmZpbGxSZWN0KDAsIDAsIDEwMCwgNTApOwotdHJ5
IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7
IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhy
b3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90aHJvd24g
PSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhy
b3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4
Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci1jYW52YXMyLnRvRGF0
YVVSTCgpOwotY3R4Mi5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7Ci0KLQotfSk7Ci08L3Njcmlw
dD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBp
ZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0VGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4
KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMCwwIEBA
Ci1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdl
cy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmls
bFN0eWxlCi1TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3Jp
Z2luIGltYWdlIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KLVJlZmVyZW5jZXM6IHNl
Y3VyaXR5LmZpbGxTdHlsZS5pbWFnZQotQWN0dWFsIG91dHB1dDoKLVBhc3NlZAotCi0KSW5kZXg6
IExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5m
aWxsU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlLmh0bWwJKHJldmlzaW9uIDYzNjc4
KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmlt
YWdlLmZpbGxTdHlsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDM4ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPHRpdGxlPkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZp
bGxTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2
IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgdGl0bGU9InNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuZmlsbFN0eWxlIj4KLTxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Ci08cD4KLSA8
YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbCIgYWNjZXNza2V5PSJw
IiB0aXRsZT0iW3BdIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZyI+Jmx0OzwvYT4KLSA8
YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgotIDxhIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uY2FudmFzLmZpbGxTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJp
dHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlIj4mZ3Q7PC9hPgotPGgxPjxhIGhyZWY9ImluZGV4
LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0
ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaW1h
Z2UuaHRtbCI+aW1hZ2U8L2E+LmZpbGxTdHlsZTwvaDE+Ci08cCBjbGFzcz0iZGVzYyI+U2V0dGlu
ZyBmaWxsU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtl
cyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJl
bmNlczoKLTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuZmls
bFN0eWxlLmltYWdlIj5zZWN1cml0eS5maWxsU3R5bGUuaW1hZ2U8L2E+Ci0KLTwvdWw+Ci08L2Rp
dj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Ci08Y2FudmFzIGlkPSJj
IiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJh
Y2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgotCi08dWwgaWQ9ImQiPjwv
dWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKLQotdmFyIHAg
PSBjdHguY3JlYXRlUGF0dGVybihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycp
LCAncmVwZWF0Jyk7Ci1jdHguZmlsbFN0eWxlID0gcDsKLWN0eC5maWxsU3R5bGUgPSAncmVkJzsK
LXRyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBjYXRjaCAo
ZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxk
IHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KLXRyeSB7IHZhciBfdGhy
b3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2ggKGUpIHsg
X3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJv
dyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQotCi0KLX0pOwot
PC9zY3JpcHQ+Ci08aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93
LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHls
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0xLDkgKzAsMCBAQAotQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNv
cnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKLTwgW2luZGV4XSA+Ci1zZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlCi1TZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBv
ZiBhIGRpZmZlcmVudC1vcmlnaW4gaW1hZ2UgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVh
bgotUmVmZXJlbmNlczogc2VjdXJpdHkuc3Ryb2tlU3R5bGUuaW1hZ2UKLUFjdHVhbCBvdXRwdXQ6
Ci1QYXNzZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5
bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMSwzOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDog
c2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Ci08c2NyaXB0IHNyYz0i
Li4vdGVzdHMuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90
ZXN0cy5jc3MiPgotPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHls
ZSI+Ci08bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9r
ZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZSI+
Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0gPGEgaHJlZj0ic2VjdXJpdHkucGF0
dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1
cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZsdDs8L2E+Ci0gPGEgaHJlZj0iaW5kZXgu
aHRtbCI+W2luZGV4XTwvYT4KLSA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJv
a2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5j
YW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Ci08aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
aHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+
cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5p
bWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgotPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcgc3Ryb2tl
U3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUg
Y2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgotPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoK
LTx1bD4KLTxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ryb2tlU3R5
bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlPC9hPgotCi08L3VsPgotPC9kaXY+
Ci0KLTxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgotPGNhbnZhcyBpZD0iYyIg
Y2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNr
Ij5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KLQotPHVsIGlkPSJkIj48L3Vs
PgotPHNjcmlwdD4KLV9hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7Ci0KLXZhciBwID0g
Y3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwg
J3JlcGVhdCcpOwotY3R4LnN0cm9rZVN0eWxlID0gcDsKLWN0eC5zdHJva2VTdHlsZSA9ICdyZWQn
OwotdHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNo
IChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91
bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotdHJ5IHsgdmFyIF90
aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkg
eyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRo
cm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9Ci0KLQotfSk7
Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxs
b3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KLQpJbmRleDogTGF5b3V0
VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNl
dC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTEsOSArMCwwIEBACi1CbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29y
cy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZwotPCBbaW5kZXhdID4KLXNlY3VyaXR5LnJlc2V0
Ci1SZXNldHRpbmcgdGhlIGNhbnZhcyBzdGF0ZSBkb2VzIG5vdCByZXNldCB0aGUgb3JpZ2luLWNs
ZWFuIGZsYWcKLVJlZmVyZW5jZXM6IGluaXRpYWwucmVzZXQKLUFjdHVhbCBvdXRwdXQ6Ci1QYXNz
ZWQKLQotCkluZGV4OiBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJl
c2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5yZXNldC5odG1sCShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwz
OCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHku
cmVzZXQ8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KLTxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVzdHMuY3NzIj4KLTxsaW5rIHJlbD0icHJldiIg
aHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+Ci08
bGluayByZWw9Im5leHQiIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIHRpdGxlPSIy
ZC5nZXRjb250ZXh0LmV4aXN0cyI+Ci08Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgotPHA+Ci0g
PGEgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0g
c2VjdXJpdHkuZGF0YVVSSSI+Jmx0OzwvYT4KLSA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhd
PC9hPgotIDxhIGhyZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vzc2tleT0ibiIg
dGl0bGU9IltuXSAyZC5nZXRjb250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KLTxoMT48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgotPHAgY2xhc3M9ImRl
c2MiPlJlc2V0dGluZyB0aGUgY2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4t
Y2xlYW4gZmxhZzwvcD4KLTxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Ci08dWw+Ci08bGk+
PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRpYWwucmVzZXQ8
L2E+Ci0KLTwvdWw+Ci08L2Rpdj4KLQotPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8
L3A+Ci08Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUw
Ij48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFz
PgotCi08dWwgaWQ9ImQiPjwvdWw+Ci08c2NyaXB0PgotX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFz
LCBjdHgpIHsKLQotY2FudmFzLndpZHRoID0gNTA7Ci1jdHguZHJhd0ltYWdlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOwotdHJ5IHsgdmFyIF90aHJvd24gPSBm
YWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52
YXMudG9EYXRhVVJMKCkiKTsgfQotY2FudmFzLndpZHRoID0gMTAwOwotdHJ5IHsgdmFyIF90aHJv
d24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0
cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9u
OiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQotCi0KLX0pOwotPC9zY3JpcHQ+Ci08aW1nIHNyYz0i
aHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmci
IGNsYXNzPSJyZXNvdXJjZSI+Ci0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy5jc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzLmNzcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5jc3MJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTM0
IEBACitodG1sLmZhaWwgeworCWJhY2tncm91bmQ6ICNmNjY7Cit9CitodG1sLnBhc3MgeworCWJh
Y2tncm91bmQ6ICM2ZjY7Cit9CitodG1sLm5lZWRzX2NoZWNrIHsKKwliYWNrZ3JvdW5kOiAjOTlm
OworfQorCitib2R5IHsKKwlmb250LXNpemU6IHNtYWxsOworCWZvbnQtZmFtaWx5OiBzYW5zLXNl
cmlmOworCWNvbG9yOiBibGFjazsKK30KKworYTpsaW5rIHsKKwljb2xvcjogIzAwYzsKK30KK2E6
dmlzaXRlZCB7CisJY29sb3I6ICM4MDg7Cit9CisKK2JvZHkuZnJhbWVkIHsKKwlmb250LXNpemU6
IHgtc21hbGw7Cit9CisKK2gxIHsKKwlmb250LXNpemU6IGxhcmdlcjsKKwltYXJnaW46IDA7CisJ
cGFkZGluZy1sZWZ0OiAwLjVlbTsKKwl0ZXh0LWluZGVudDogLTAuNWVtOworfQorCitwIHsKKwlt
YXJnaW46IDA7Cit9CisKK3Aubm90ZXMgeworCW1hcmdpbi1ib3R0b206IDAuNWVtOworCWZvbnQt
c3R5bGU6IGl0YWxpYzsKK30KKwordWwgeworCW1hcmdpbjogMDsKKwltYXJnaW4tYm90dG9tOiAw
LjVlbTsKKwlwYWRkaW5nOiAwOworCXBhZGRpbmctbGVmdDogMWVtOworfQorCisucmVmcyB7CisJ
Zm9udC1zdHlsZTogaXRhbGljOworCW1hcmdpbi1ib3R0b206IDAuNWVtOworfQorCisucmVmcyB1
bCB7CisJZGlzcGxheTogaW5saW5lOworCW1hcmdpbjogMDsKKwlwYWRkaW5nOiAwOworfQorCisu
cmVmcyBsaSB7CisJZGlzcGxheTogaW5saW5lOworCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKKwlt
YXJnaW46IDA7CisJcGFkZGluZzogMDsKK30KKworY2FudmFzIHsKKwlkaXNwbGF5OiBub25lOwor
CXZpc2liaWxpdHk6IGhpZGRlbjsKKwlib3JkZXI6IDJweCAjZjBmIHNvbGlkOworCWJhY2tncm91
bmQ6IHVybChpbWFnZXMvYmFja2dyb3VuZC5wbmcpOworfQorCitpbWcuZXhwZWN0ZWQgeworCWRp
c3BsYXk6IG5vbmU7CisJYm9yZGVyOiAycHggI2YwZiBzb2xpZDsKKwliYWNrZ3JvdW5kOiB1cmwo
aW1hZ2VzL2JhY2tncm91bmQucG5nKTsKK30KKworaWZyYW1lIHsKKwlib3JkZXI6IDJweCAjZjBm
IHNvbGlkOworfQorCisub3V0cHV0IHsKKwlkaXNwbGF5OiBub25lOworfQorCisuc2hvd19vdXRw
dXQgLm91dHB1dCwgLm5lZWRzX2NoZWNrIC5vdXRwdXQgIHsKKwlkaXNwbGF5OiBibG9jayAhaW1w
b3J0YW50OworCXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKK30KKworLnNob3dfb3V0
cHV0ICNzaG93X291dHB1dCB7CisJZGlzcGxheTogbm9uZTsKK30KKworLnJlc291cmNlIHsKKwl2
aXNpYmlsaXR5OiBoaWRkZW47CisJaGVpZ2h0OiAwOworfQorCisuZmFsbGJhY2sgeworCWZvbnQt
c2l6ZTogMmVtOworCWZvbnQtd2VpZ2h0OiBib2xkOworCWNvbG9yOiAjYTAwOworfQorCisKK2h0
bWwubWluaW1hbCBib2R5IHsKKwljb2xvcjogd2hpdGU7Cit9CitodG1sLmZhaWwubWluaW1hbCB7
CisJYmFja2dyb3VuZDogI2YwMDsKK30KK2h0bWwucGFzcy5taW5pbWFsIHsKKwliYWNrZ3JvdW5k
OiAjMDgwOworfQoraHRtbC5uZWVkc19jaGVjay5taW5pbWFsIHsKKwliYWNrZ3JvdW5kOiAjMDA4
OworfQorLm1pbmltYWwgI2QgeworCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKK30KKy5taW5p
bWFsIC5leHBlY3RlZHRleHQgeworCXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OworfQor
I3Bhc3N0ZXh0LCAjZmFpbHRleHQgeworCWRpc3BsYXk6IG5vbmU7Cit9CisubWluaW1hbC5wYXNz
ICNwYXNzdGV4dCwgLm1pbmltYWwuZmFpbCAjZmFpbHRleHQgeworCWRpc3BsYXk6IGJsb2NrOwor
fQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzLmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy5q
cwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNjEgQEAKK2Z1bmN0aW9uIF92YWxUb1N0
cmluZyh2YWwpCit7CisgICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkIHx8IHZhbCA9PT0gbnVsbCkK
KyAgICAgICAgcmV0dXJuICdbJyArIHR5cGVvZih2YWwpICsgJ10nOworICAgIHJldHVybiB2YWwu
dG9TdHJpbmcoKSArICdbJyArIHR5cGVvZih2YWwpICsgJ10nOworfQorCit2YXIgX2hleDJkZWNf
dGFibGUgPSB7CisgICAgMDowLCAxOjEsIDI6MiwgMzozLCA0OjQsIDU6NSwgNjo2LCA3OjcsIDg6
OCwgOTo5LAorICAgIGE6MTAsIGI6MTEsIGM6MTIsIGQ6MTMsIGU6MTQsIGY6MTUsCisgICAgQTox
MCwgQjoxMSwgQzoxMiwgRDoxMywgRToxNCwgRjoxNQorfTsKK2Z1bmN0aW9uIF9oZXgyZGVjKGhl
eCkKK3sKKyAgICByZXR1cm4gX2hleDJkZWNfdGFibGVbaGV4LmNoYXJBdCgwKV0qMTYgKyBfaGV4
MmRlY190YWJsZVtoZXguY2hhckF0KDEpXTsKK30KKwordmFyIF9mYWlsZWQgPSBmYWxzZTsKK3Zh
ciBfYXNzZXJ0ZWQgPSBmYWxzZTsKK2Z1bmN0aW9uIF93YXJuKHRleHQpCit7CisgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdsaScpKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSk7Cit9Citm
dW5jdGlvbiBfZmFpbCh0ZXh0KQoreworICAgIF93YXJuKHRleHQpOworICAgIF9mYWlsZWQgPSB0
cnVlOworfQorCitmdW5jdGlvbiBfYXNzZXJ0KGNvbmQsIHRleHQpCit7CisgICAgX2Fzc2VydGVk
ID0gdHJ1ZTsKKyAgICBpZiAoISBjb25kKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlv
bjogJyArIHRleHQpOworfQorCitmdW5jdGlvbiBfYXNzZXJ0U2FtZShhLCBiLCB0ZXh0X2EsIHRl
eHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmIChhICE9PSBiKQorICAgICAg
ICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9hICsgJyA9PT0gJyArIHRleHRfYiAr
CisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAnLCBleHBlY3Rl
ZCAnICsgX3ZhbFRvU3RyaW5nKGIpICsgJyknKTsKK30KKworZnVuY3Rpb24gX2Fzc2VydERpZmZl
cmVudChhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAg
IGlmIChhID09PSBiKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbiAnICsgdGV4dF9h
ICsgJyAhPT0gJyArIHRleHRfYiArCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9T
dHJpbmcoYSkgKyAnLCBleHBlY3RlZCBub3QgJyArIF92YWxUb1N0cmluZyhiKSArICcpJyk7Cit9
CisKK2Z1bmN0aW9uIF9hc3NlcnRFcXVhbChhLCBiLCB0ZXh0X2EsIHRleHRfYikKK3sKKyAgICBf
YXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmIChhICE9IGIpCisgICAgICAgIF9mYWlsKCdGYWlsZWQg
YXNzZXJ0aW9uICcgKyB0ZXh0X2EgKyAnID09ICcgKyB0ZXh0X2IgKworICAgICAgICAgICAgICAg
ICcgKGdvdCAnICsgX3ZhbFRvU3RyaW5nKGEpICsgJywgZXhwZWN0ZWQgJyArIF92YWxUb1N0cmlu
ZyhiKSArICcpJyk7Cit9CisKK2Z1bmN0aW9uIF9hc3NlcnRNYXRjaChhLCBiLCB0ZXh0X2EsIHRl
eHRfYikKK3sKKyAgICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIGlmICghIGEubWF0Y2goYikpCisg
ICAgICAgIF9mYWlsKCdGYWlsZWQgYXNzZXJ0aW9uICcgKyB0ZXh0X2EgKyAnIG1hdGNoZXMgJyAr
IHRleHRfYiArCisgICAgICAgICAgICAgICAgJyAoZ290ICcgKyBfdmFsVG9TdHJpbmcoYSkgKyAn
KScpOworfQorCisKK3ZhciBfbWFudWFsX2NoZWNrID0gZmFsc2U7CisKK2Z1bmN0aW9uIF9yZXF1
aXJlTWFudWFsQ2hlY2soKQoreworICAgIF9tYW51YWxfY2hlY2sgPSB0cnVlOworfQorCitmdW5j
dGlvbiBfY3Jhc2goKQoreworICAgIF9mYWlsKCdBYm9ydGVkIGR1ZSB0byBwcmVkaWN0ZWQgY3Jh
c2gnKTsKK30KKwordmFyIF9nZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gZmFsc2U7Cit2YXIgX2dl
dEltYWdlRGF0YUlzUHJlbXVsLCBfZ2V0SW1hZ2VEYXRhSXNCR1JBOworCitmdW5jdGlvbiBfZ2V0
UGl4ZWwoY2FudmFzLCB4LHkpCit7CisgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcy
ZCcpOworICAgIGlmIChjdHggJiYgdHlwZW9mKGN0eC5nZXRJbWFnZURhdGEpICE9ICd1bmRlZmlu
ZWQnKQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgIHZhciBpbWdkYXRhID0gY3R4
LmdldEltYWdlRGF0YSh4LCB5LCAxLCAxKTsKKyAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAg
ICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNlcHRpb24gY2F1c2VkIGJ5IGhhdmluZyBk
cmF3bgorICAgICAgICAgICAgLy8gZGF0YTogVVJMcyBvbnRvIHRoZSBjYW52YXMKKyAgICAgICAg
ICAgIGltZ2RhdGEgPSBudWxsOworICAgICAgICB9CisgICAgICAgIGlmIChpbWdkYXRhKQorICAg
ICAgICB7CisgICAgICAgICAgICAvLyBXb3JrIGFyb3VuZCBnZXRJbWFnZURhdGEgYnVncywgc2lu
Y2Ugd2Ugd2FudCB0aGUgb3RoZXIgdGVzdHMgdG8KKyAgICAgICAgICAgIC8vIGNhcnJ5IG9uIHdv
cmtpbmcgYXMgd2VsbCBhcyBwb3NzaWJsZQorICAgICAgICAgICAgaWYgKCEgX2dldEltYWdlRGF0
YUNhbGlicmF0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIGMyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CisgICAgICAgICAgICAgICAgYzIud2lkdGgg
PSBjMi5oZWlnaHQgPSAxOworICAgICAgICAgICAgICAgIHZhciBjdHgyID0gYzIuZ2V0Q29udGV4
dCgnMmQnKTsKKyAgICAgICAgICAgICAgICBjdHgyLmZpbGxTdHlsZSA9ICdyZ2JhKDAsIDI1NSwg
MjU1LCAwLjUpJzsKKyAgICAgICAgICAgICAgICBjdHgyLmZpbGxSZWN0KDAsIDAsIDEsIDEpOwor
ICAgICAgICAgICAgICAgIHZhciBkYXRhMiA9IGN0eDIuZ2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEp
LmRhdGE7CisKKyAgICAgICAgICAgICAgICAvLyBGaXJlZm94IHJldHVybnMgcHJlbXVsdGlwbGll
ZCBhbHBoYQorCisgICAgICAgICAgICAgICAgaWYgKGRhdGEyWzFdID4gMTAwICYmIGRhdGEyWzFd
IDwgMTUwKQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1hZ2VEYXRhSXNQcmVtdWwgPSB0cnVl
OworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgX2dldEltYWdlRGF0
YUlzUHJlbXVsID0gZmFsc2U7CisKKyAgICAgICAgICAgICAgICAvLyBPcGVyYSBNaW5pIDQgQmV0
YSByZXR1cm5zIEJHUkEgaW5zdGVhZCBvZiBSR0JBCisKKyAgICAgICAgICAgICAgICBpZiAoZGF0
YTJbMF0gPiAyNTAgJiYgZGF0YTJbMl0gPCA1KQorICAgICAgICAgICAgICAgICAgICBfZ2V0SW1h
Z2VEYXRhSXNCR1JBID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICAgICAgIF9nZXRJbWFnZURhdGFJc0JHUkEgPSBmYWxzZTsKKworICAgICAgICAgICAgICAgIF9n
ZXRJbWFnZURhdGFDYWxpYnJhdGVkID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgLy8gVW5kbyB0aGUgQkdSQSBmbGlwcGluZworICAgICAgICAgICAgdmFyIHJnYmEgPSAoX2dl
dEltYWdlRGF0YUlzQkdSQQorICAgICAgICAgICAgICAgID8gWyBpbWdkYXRhLmRhdGFbMl0sIGlt
Z2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5kYXRhWzBdLCBpbWdkYXRhLmRhdGFbM10gXQorICAgICAg
ICAgICAgICAgIDogWyBpbWdkYXRhLmRhdGFbMF0sIGltZ2RhdGEuZGF0YVsxXSwgaW1nZGF0YS5k
YXRhWzJdLCBpbWdkYXRhLmRhdGFbM10gXSk7CisKKyAgICAgICAgICAgIGlmICghIF9nZXRJbWFn
ZURhdGFJc1ByZW11bCkKKyAgICAgICAgICAgICAgICByZXR1cm4gcmdiYTsKKworICAgICAgICAg
ICAgLy8gVW5kbyB0aGUgcHJlbXVsdGlwbHlpbmcKKyAgICAgICAgICAgIGlmIChyZ2JhWzNdID09
IDApCisgICAgICAgICAgICAgICAgcmV0dXJuIFsgMCwgMCwgMCwgMCBdOworICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHZhciBhID0gcmdiYVszXSAvIDI1
NTsKKyAgICAgICAgICAgICAgICByZXR1cm4gWworICAgICAgICAgICAgICAgICAgICBNYXRoLnJv
dW5kKHJnYmFbMF0vYSksCisgICAgICAgICAgICAgICAgICAgIE1hdGgucm91bmQocmdiYVsxXS9h
KSwKKyAgICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChyZ2JhWzJdL2EpLAorICAgICAgICAg
ICAgICAgICAgICByZ2JhWzNdCisgICAgICAgICAgICAgICAgXTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgIH0KKworICAgIHRyeSB7IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCdvcGVy
YS0yZGdhbWUnKTsgfSBjYXRjaCAoZSkgeyAvKiBGaXJlZm94IHRocm93cyAqLyB9CisgICAgaWYg
KGN0eCAmJiB0eXBlb2YoY3R4LmdldFBpeGVsKSAhPSAndW5kZWZpbmVkJykKKyAgICB7CisgICAg
ICAgIHRyeSB7CisgICAgICAgICAgICB2YXIgYyA9IGN0eC5nZXRQaXhlbCh4LCB5KTsKKyAgICAg
ICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAgLy8gcHJvYmFibHkgYSBzZWN1cml0eSBleGNl
cHRpb24gY2F1c2VkIGJ5IGhhdmluZyBkcmF3bgorICAgICAgICAgICAgLy8gZGF0YTogVVJMcyBv
bnRvIHRoZSBjYW52YXMKKyAgICAgICAgICAgIGMgPSBudWxsOworICAgICAgICB9CisgICAgICAg
IGlmIChjKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgbWF0Y2hlcyA9IC9ecmdiYVwoKFxk
KyksIChcZCspLCAoXGQrKSwgKFtcZFwuXSspXCkkLy5leGVjKGMpOworICAgICAgICAgICAgaWYg
KG1hdGNoZXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIFsgbWF0Y2hlc1sxXSwgbWF0Y2hlc1sy
XSwgbWF0Y2hlc1szXSwgTWF0aC5yb3VuZChtYXRjaGVzWzRdKjI1NSkgXTsKKyAgICAgICAgICAg
IG1hdGNoZXMgPSAvXiMoLi4pKC4uKSguLikkLy5leGVjKGMpOworICAgICAgICAgICAgaWYgKG1h
dGNoZXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIFsgX2hleDJkZWMobWF0Y2hlc1sxXSksIF9o
ZXgyZGVjKG1hdGNoZXNbMl0pLCBfaGV4MmRlYyhtYXRjaGVzWzNdKSwgMjU1IF07CisgICAgICAg
IH0KKyAgICB9CisgICAgLy9fd2FybigiKENhbid0IHRlc3QgcGl4ZWwgdmFsdWUpIik7CisgICAg
X21hbnVhbF9jaGVjayA9IHRydWU7CisgICAgcmV0dXJuIHVuZGVmaW5lZDsKK30KKworZnVuY3Rp
b24gX2Fzc2VydFBpeGVsKGNhbnZhcywgeCx5LCByLGcsYixhLCBwb3MsIGNvbG91cikKK3sKKyAg
ICBfYXNzZXJ0ZWQgPSB0cnVlOworICAgIHZhciBjID0gX2dldFBpeGVsKGNhbnZhcywgeCx5KTsK
KyAgICBpZiAoYyAmJiAhIChjWzBdID09IHIgJiYgY1sxXSA9PSBnICYmIGNbMl0gPT0gYiAmJiBj
WzNdID09IGEpKQorICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjogZ290IHBpeGVsIFsn
ICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywnK2crJywnK2IrJywn
K2ErJ10nKTsKK30KKworZnVuY3Rpb24gX2Fzc2VydFBpeGVsQXBwcm94KGNhbnZhcywgeCx5LCBy
LGcsYixhLCBwb3MsIGNvbG91ciwgdG9sZXJhbmNlKQoreworICAgIF9hc3NlcnRlZCA9IHRydWU7
CisgICAgdmFyIGMgPSBfZ2V0UGl4ZWwoY2FudmFzLCB4LHkpOworICAgIGlmIChjKQorICAgIHsK
KyAgICAgICAgdmFyIGRpZmYgPSBNYXRoLm1heChNYXRoLmFicyhjWzBdLXIpLCBNYXRoLmFicyhj
WzFdLWcpLCBNYXRoLmFicyhjWzJdLWIpLCBNYXRoLmFicyhjWzNdLWEpKTsKKyAgICAgICAgaWYg
KGRpZmYgPiB0b2xlcmFuY2UpCisgICAgICAgICAgICBfZmFpbCgnRmFpbGVkIGFzc2VydGlvbjog
Z290IHBpeGVsIFsnICsgYyArICddIGF0ICgnK3grJywnK3krJyksIGV4cGVjdGVkIFsnK3IrJywn
K2crJywnK2IrJywnK2ErJ10gKy8tICcrdG9sZXJhbmNlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9u
IF9hZGRUZXN0KHRlc3QpCit7CisgICAgdmFyIGRlZmVycmVkID0gZmFsc2U7CisgICAgd2luZG93
LmRlZmVyVGVzdCA9IGZ1bmN0aW9uICgpIHsgZGVmZXJyZWQgPSB0cnVlOyB9OworICAgIGZ1bmN0
aW9uIGVuZFRlc3QoKQorICAgIHsKKyAgICAgICAgaWYgKF9mYWlsZWQpIC8vIHRlc3QgZmFpbGVk
CisgICAgICAgIHsKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05h
bWUgKz0gJyBmYWlsJzsKKyAgICAgICAgICAgIHdpbmRvdy5fdGVzdFN0YXR1cyA9IFsnZmFpbCcs
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkJykuaW5uZXJIVE1MXTsKKyAgICAgICAgfQorICAg
ICAgICBlbHNlIGlmIChfbWFudWFsX2NoZWNrIHx8ICFfYXNzZXJ0ZWQpCisgICAgICAgIHsgLy8g
dGVzdCBjYXNlIGV4cGxpY2l0bHkgYXNrZWQgZm9yIGEgbWFudWFsIGNoZWNrLCBvciBubyBhdXRv
bWF0aWMgYXNzZXJ0aW9ucyB3ZXJlIHBlcmZvcm1lZAorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUwgKz0gJzxsaT5DYW5ub3QgYXV0b21hdGljYWxseSB2
ZXJpZnkgcmVzdWx0JzsKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFz
c05hbWUgKz0gJyBuZWVkc19jaGVjayc7CisgICAgICAgICAgICB3aW5kb3cuX3Rlc3RTdGF0dXMg
PSBbJ2NoZWNrJywgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOworICAg
ICAgICB9CisgICAgICAgIGVsc2UgLy8gdGVzdCBzdWNjZWVkZWQKKyAgICAgICAgeworICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUwgKz0gJzxsaT5QYXNz
ZWQnOworICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSArPSAn
IHBhc3MnOworICAgICAgICAgICAgd2luZG93Ll90ZXN0U3RhdHVzID0gWydwYXNzJywgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2QnKS5pbm5lckhUTUxdOworICAgICAgICB9CisgICAgICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfQorICAgIHdpbmRvdy5lbmRUZXN0ID0gZW5kVGVz
dDsKKyAgICB3aW5kb3cud3JhcEZ1bmN0aW9uID0gZnVuY3Rpb24gKGYpCisgICAgeworICAgICAg
ICByZXR1cm4gZnVuY3Rpb24oKQorICAgICAgICB7CisgICAgICAgICAgICB0cnkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBmLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBjYXRjaCAoZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICBfZmFpbCgnQWJvcnRlZCB3aXRoIGV4Y2VwdGlvbjogJyArIGUubWVzc2FnZSk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICBlbmRUZXN0KCk7CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkKKyAgICB7CisgICAgICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsKKyAgICAgICAgfQorICAgICAgICB0cnkKKyAgICAgICAgeworICAgICAgICAgICAg
dmFyIGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjJyk7CisgICAgICAgICAgICB2
YXIgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7CisgICAgICAgICAgICB0ZXN0KGNhbnZh
cywgY3R4KTsKKyAgICAgICAgfQorICAgICAgICBjYXRjaCAoZSkKKyAgICAgICAgeworICAgICAg
ICAgICAgX2ZhaWwoJ0Fib3J0ZWQgd2l0aCBleGNlcHRpb246ICcgKyBlLm1lc3NhZ2UpOworICAg
ICAgICAgICAgZGVmZXJyZWQgPSBmYWxzZTsgLy8gY2FuY2VsIGFueSBkZWZlcmVuY2UKKyAgICAg
ICAgfQorCisgICAgICAgIGlmICghIGRlZmVycmVkKQorICAgICAgICAgICAgZW5kVGVzdCgpOwor
ICAgIH07Cit9CisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90
ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJh
d0ltYWdlLmNhbnZhcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRU
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0
ZWQudHh0OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rl
c3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9l
eGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5k
cmF3SW1hZ2UuY2FudmFzCitkcmF3SW1hZ2Ugb2YgdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNh
bnZhcyBvcmlnaW4tdW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZh
cworQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91
dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1s
OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQx
IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkuZHJhd0lt
YWdlLmNhbnZhczwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0Pgor
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJw
cmV2IiBocmVmPSJzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbCIgdGl0bGU9InNlY3VyaXR5
LmRyYXdJbWFnZS5pbWFnZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRl
cm4uY3JlYXRlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Cis8Ym9keSBj
bGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmlt
YWdlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9IltwXSBzZWN1cml0eS5kcmF3SW1hZ2UuaW1h
Z2UiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVm
PSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0g
c2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LmRyYXdJbWFn
ZS5odG1sIj5kcmF3SW1hZ2U8L2E+LmNhbnZhczwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+ZHJhd0lt
YWdlIG9mIHVuY2xlYW4gY2FudmFzIG1ha2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+
Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMu
aHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3SW1hZ2UuY2FudmFzIj5zZWN1cml0eS5kcmF3SW1h
Z2UuY2FudmFzPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVh
bCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIg
aGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwv
cD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0
aW9uKGNhbnZhcywgY3R4KSB7CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgnY2FudmFzJyk7CitjYW52YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsK
K3ZhciBjdHgyID0gY2FudmFzMi5nZXRDb250ZXh0KCcyZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7CitjdHguZHJhd0ltYWdl
KGNhbnZhczIsIDAsIDApOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0
YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsg
fQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhy
b3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAx
KSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFn
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMv
cGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS1leHBlY3RlZC50eHQ6NjM2Nzgp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
ZHJhd0ltYWdlLmltYWdlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkg
QEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4dGVybmFsIFVSTCBodHRwOi8vZXhjb3JzLmdvb2dsZXBh
Z2VzLmNvbS95ZWxsb3cucG5nCis8IFtpbmRleF0gPgorc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdl
CitkcmF3SW1hZ2Ugb2YgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9y
aWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2Ugc2VjdXJp
dHkudG9EYXRhVVJMIHNlY3VyaXR5LmdldEltYWdlRGF0YQorQWN0dWFsIG91dHB1dDoKK1Bhc3Nl
ZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9z
ZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkuZHJhd0ltYWdlLmltYWdlLmh0
bWwJKHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3Rz
L3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1sOjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzggQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxl
PkNhbnZhcyB0ZXN0OiBzZWN1cml0eS5kcmF3SW1hZ2UuaW1hZ2U8L3RpdGxlPgorPHNjcmlwdCBz
cmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVh
bGl0eS5vdXRzaWRlcmFuZ2UuaHRtbCIgdGl0bGU9InRvRGF0YVVSTC5qcGVnLnF1YWxpdHkub3V0
c2lkZXJhbmdlIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNh
bnZhcy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Cis8Ym9keSBjbGFz
cz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0idG9EYXRhVVJMLmpwZWcucXVhbGl0eS5v
dXRzaWRlcmFuZ2UuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHRvRGF0YVVSTC5qcGVn
LnF1YWxpdHkub3V0c2lkZXJhbmdlIj4mbHQ7PC9hPgorIDxhIGhyZWY9ImluZGV4Lmh0bWwiPltp
bmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcy5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Jmd0OzwvYT4K
KzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkuZHJhd0ltYWdlLmh0bWwiPmRyYXdJbWFnZTwvYT4uaW1hZ2U8L2gxPgor
PHAgY2xhc3M9ImRlc2MiPmRyYXdJbWFnZSBvZiBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2Vz
IHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVu
Y2VzOgorPHVsPgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5kcmF3
SW1hZ2UuaW1hZ2UiPnNlY3VyaXR5LmRyYXdJbWFnZS5pbWFnZTwvYT4KKzxsaT48YSBocmVmPSJz
cGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkudG9EYXRhVVJMIj5zZWN1cml0eS50b0RhdGFVUkw8
L2E+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LmdldEltYWdlRGF0
YSI+c2VjdXJpdHkuZ2V0SW1hZ2VEYXRhPC9hPgorCis8L3VsPgorPC9kaXY+CisKKzxwIGNsYXNz
PSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1
dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZhbGxiYWNrIj5GQUlMIChmYWxs
YmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJkIj48L3VsPgorPHNjcmlwdD4K
K19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK2N0eC5kcmF3SW1hZ2UoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Cit0cnkgeyB2YXIgX3Rocm93
biA9IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRy
dWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246
IGNhbnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9
IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHgu
Z2V0SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBz
cmM9Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cu
cG5nIiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
bnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dDo2MzY3OCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
OSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xl
cGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUKK1NldHRpbmcgZmlsbFN0eWxlIHRvIGEgcGF0dGVybiBvZiBhbiB1bmNsZWFu
IGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVuY2VzOiBzZWN1
cml0eS5maWxsU3R5bGUuY2FudmFzIEJ1Z3ppbGxhCitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisK
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLmZpbGxTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5maWxsU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWw6NjM2
NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLmZpbGxTdHlsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vdGVzdHMuanMi
Pjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi90ZXN0cy5jc3MiPgor
PGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPgorPGxpbmsgcmVs
PSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRp
dGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4KKzxib2R5IGNsYXNzPSJz
aG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxT
dHlsZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFn
ZS5maWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwvYT4K
KyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIGFjY2Vz
c2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlIj4m
Z3Q7PC9hPgorPGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48
YSBocmVmPSJpbmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LjxhIGhyZWY9
ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmh0bWwiPmNhbnZhczwvYT4uZmlsbFN0eWxl
PC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2Yg
YW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLnNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMiPnNlY3VyaXR5LmZpbGxTdHlsZS5j
YW52YXM8L2E+Cis8bGk+PGEgaHJlZj0iaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MzU0MTI3Ij5CdWd6aWxsYTwvYT4KKzwvdWw+Cis8L2Rpdj4KKworPHAgY2xh
c3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0
cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZh
bGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0
PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52
YXMyLmhlaWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7Citj
dHgyLmRyYXdJbWFnZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgneWVsbG93LnBuZycpLCAwLCAw
KTsKK3ZhciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oY2FudmFzMiwgJ3JlcGVhdCcpOworY3R4LmZp
bGxTdHlsZSA9IHA7CitjdHguZmlsbFN0eWxlID0gJ3JlZCc7Cit0cnkgeyB2YXIgX3Rocm93biA9
IGZhbHNlOyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7
IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNh
bnZhcy50b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0
SW1hZ2VEYXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZp
bmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0
SW1hZ2VEYXRhKDAsIDAsIDEsIDEpIik7IH0KKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9
Imh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5n
IiBjbGFzcz0icmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnN0cm9rZVN0eWxlLWV4cGVjdGVkLnR4dDo2MzY3OCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0
ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5n
b29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4u
Y2FudmFzLnN0cm9rZVN0eWxlCitTZXR0aW5nIHN0cm9rZVN0eWxlIHRvIGEgcGF0dGVybiBvZiBh
biB1bmNsZWFuIGNhbnZhcyBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuCitSZWZlcmVu
Y2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5jYW52YXMgQnVnemlsbGEKK0FjdHVhbCBvdXRwdXQ6
CitQYXNzZWQKKworCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHku
cGF0dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jYW52YXMuc3Ry
b2tlU3R5bGUuaHRtbDo2MzY3OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZS5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsNDMgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZh
cyB0ZXN0OiBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VTdHlsZTwvdGl0bGU+Cis8c2Ny
aXB0IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0
ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdl
LnN0cm9rZVN0eWxlIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkuZGF0YVVSSS5o
dG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQi
PgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS5odG1s
IiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VT
dHlsZSI+Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhy
ZWY9InNlY3VyaXR5LmRhdGFVUkkuaHRtbCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3Vy
aXR5LmRhdGFVUkkiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+
c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVy
bjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFz
PC9hPi5zdHJva2VTdHlsZTwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+U2V0dGluZyBzdHJva2VTdHls
ZSB0byBhIHBhdHRlcm4gb2YgYW4gdW5jbGVhbiBjYW52YXMgbWFrZXMgdGhlIGNhbnZhcyBvcmln
aW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+
PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0cm9rZVN0eWxlLmNhbnZhcyI+
c2VjdXJpdHkuc3Ryb2tlU3R5bGUuY2FudmFzPC9hPgorPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVn
emlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDEyNyI+QnVnemlsbGE8L2E+Cis8
L3VsPgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNh
bnZhcyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xh
c3M9ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVs
IGlkPSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7
CisKK3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52
YXMyLndpZHRoID0gMTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFz
Mi5nZXRDb250ZXh0KCcyZCcpOworY3R4Mi5kcmF3SW1hZ2UoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3llbGxvdy5wbmcnKSwgMCwgMCk7Cit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZh
czIsICdyZXBlYXQnKTsKK2N0eC5zdHJva2VTdHlsZSA9IHA7CitjdHguc3Ryb2tlU3R5bGUgPSAn
cmVkJzsKK3RyeSB7IHZhciBfdGhyb3duID0gZmFsc2U7IGNhbnZhcy50b0RhdGFVUkwoKTsgfSBj
YXRjaCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAi
c2hvdWxkIHRocm93IGV4Y2VwdGlvbjogY2FudmFzLnRvRGF0YVVSTCgpIik7IH0KK3RyeSB7IHZh
ciBfdGhyb3duID0gZmFsc2U7IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7IH0gY2F0Y2gg
KGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmluYWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3Vs
ZCB0aHJvdyBleGNlcHRpb246IGN0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSkiKTsgfQorCisK
K30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20v
eWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1p
bmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmctZXhwZWN0ZWQudHh0
OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4
Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBh
dHRlcm4uY2FudmFzLnRpbWluZworUGF0dGVybiBzYWZldHkgZGVwZW5kcyBvbiB3aGV0aGVyIHRo
ZSBzb3VyY2Ugd2FzIG9yaWdpbi1jbGVhbiwgbm90IG9uIHdoZXRoZXIgaXQgc3RpbGwgaXMgY2xl
YW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0IHNlY3VyaXR5LmZpbGxTdHlsZS5jYW52YXMK
K0Rpc2FncmVlcyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgorQWN0dWFsIG91dHB1dDoKK1Bh
c3NlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMv
c2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY2Fu
dmFzLnRpbWluZy5odG1sCShyZXZpc2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbDo2MzY3OCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQ3IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+
Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9
InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MiPgorPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmltYWdlLmZpbGxTdHlsZS5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxs
U3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNlY3Vy
aXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3BdIHNlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+W2luZGV4XTwv
YT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sIiBhY2Nl
c3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUiPiZn
dDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+Ljxh
IGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0i
aW5kZXguc2VjdXJpdHkucGF0dGVybi5jYW52YXMuaHRtbCI+Y2FudmFzPC9hPi50aW1pbmc8L2gx
PgorPHAgY2xhc3M9ImRlc2MiPlBhdHRlcm4gc2FmZXR5IGRlcGVuZHMgb24gd2hldGhlciB0aGUg
c291cmNlIHdhcyBvcmlnaW4tY2xlYW4sIG5vdCBvbiB3aGV0aGVyIGl0IHN0aWxsIGlzIGNsZWFu
PC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJz
cGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorPGxp
PjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuY2FudmFzIj5z
ZWN1cml0eS5maWxsU3R5bGUuY2FudmFzPC9hPgorCis8L3VsPgorPC9kaXY+Cis8cCBjbGFzcz0i
bm90ZXMiPkRpc2FncmVlcyB3aXRoIHNwZWMgb24gImlzIiB2cyAid2FzIgorPHAgY2xhc3M9Im91
dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJjIiBjbGFzcz0ib3V0cHV0IiB3
aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJhY2siPkZBSUwgKGZhbGxiYWNr
IGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwvdWw+Cis8c2NyaXB0PgorX2Fk
ZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCdjYW52YXMnKTsKK2NhbnZhczIud2lkdGggPSAxMDA7CitjYW52YXMyLmhl
aWdodCA9IDUwOwordmFyIGN0eDIgPSBjYW52YXMyLmdldENvbnRleHQoJzJkJyk7CitjdHgyLmZp
bGxTdHlsZSA9ICcjMGYwJzsKK2N0eDIuZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Cit2YXIgcCA9
IGN0eC5jcmVhdGVQYXR0ZXJuKGNhbnZhczIsICdyZXBlYXQnKTsKK2N0eDIuZHJhd0ltYWdlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksIDAsIDApOyAvLyBtYWtlIGNhbnZh
czIgb3JpZ2luLXVuY2xlYW4KK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxSZWN0KDAsIDAs
IDEwMCwgNTApOworY2FudmFzLnRvRGF0YVVSTCgpOworY3R4LmdldEltYWdlRGF0YSgwLCAwLCAx
LCAxKTsKK19hc3NlcnQodHJ1ZSwgInRydWUiKTsgLy8gb2theSBpZiB0aGVyZSB3YXMgbm8gZXhj
ZXB0aW9uCisKKworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2ds
ZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4K
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uY3JlYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS1leHBlY3RlZC50eHQ6NjM2NzgpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0
dGVybi5jcmVhdGUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAor
QmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMu
Y29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZQorQ3Jl
YXRpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhlIGNhbnZhcyBvcmlnaW4t
dW5jbGVhbgorUmVmZXJlbmNlczogc2VjdXJpdHkuc3RhcnQKK0FjdHVhbCBvdXRwdXQ6CitQYXNz
ZWQKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwJ
KHJldmlzaW9uIDYzNjc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWw6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcmVhdGUuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDM3IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52
YXMgdGVzdDogc2VjdXJpdHkucGF0dGVybi5jcmVhdGU8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4u
L3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vdGVz
dHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZh
cy5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZHJhd0ltYWdlLmNhbnZhcyI+Cis8bGluayByZWw9Im5l
eHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3Jvc3MuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBh
dHRlcm4uY3Jvc3MiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9
InNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMuaHRtbCIgYWNjZXNza2V5PSJwIiB0aXRsZT0iW3Bd
IHNlY3VyaXR5LmRyYXdJbWFnZS5jYW52YXMiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRt
bCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNyb3NzLmh0bWwiIGFj
Y2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJuLmNyb3NzIj4mZ3Q7PC9hPgor
PGgxPjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5Lmh0bWwiPnNlY3VyaXR5PC9hPi48YSBocmVmPSJp
bmRleC5zZWN1cml0eS5wYXR0ZXJuLmh0bWwiPnBhdHRlcm48L2E+LmNyZWF0ZTwvaDE+Cis8cCBj
bGFzcz0iZGVzYyI+Q3JlYXRpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIGRvZXMgbm90IG1ha2UgdGhl
IGNhbnZhcyBvcmlnaW4tdW5jbGVhbjwvcD4KKzxkaXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6
Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1sI3Rlc3RyZWZzLnNlY3VyaXR5LnN0YXJ0Ij5z
ZWN1cml0eS5zdGFydDwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBjbGFzcz0ib3V0cHV0Ij5B
Y3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJvdXRwdXQiIHdpZHRoPSIx
MDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAoZmFsbGJhY2sgY29udGVu
dCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3JpcHQ+CitfYWRkVGVzdChm
dW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVhdGVQYXR0ZXJuKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQnKTsKK2NhbnZhcy50b0Rh
dGFVUkwoKTsKK2N0eC5nZXRJbWFnZURhdGEoMCwgMCwgMSwgMSk7CitfYXNzZXJ0KHRydWUsICJ0
cnVlIik7IC8vIG9rYXkgaWYgdGhlcmUgd2FzIG5vIGV4Y2VwdGlvbgorCisKK30pOworPC9zY3Jp
cHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZyIg
aWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+CisKSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmNyb3NzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYz
Njc4KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRl
cm4uY3Jvc3MtZXhwZWN0ZWQudHh0OjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uY3Jvc3MtZXhwZWN0ZWQudHh0CSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwg
VVJMIGh0dHA6Ly9leGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+
CitzZWN1cml0eS5wYXR0ZXJuLmNyb3NzCitVc2luZyBhbiB1bmNsZWFuIHBhdHRlcm4gbWFrZXMg
dGhlIHRhcmdldCBjYW52YXMgb3JpZ2luLXVuY2xlYW4sIG5vdCB0aGUgcGF0dGVybiBjYW52YXMK
K1JlZmVyZW5jZXM6IHNlY3VyaXR5LnN0YXJ0CitBY3R1YWwgb3V0cHV0OgorUGFzc2VkCisKKwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uY3Jvc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCShyZXZpc2lv
biA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5w
YXR0ZXJuLmNyb3NzLmh0bWw6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5jcm9zcy5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNhbnZhcyB0ZXN0OiBz
ZWN1cml0eS5wYXR0ZXJuLmNyb3NzPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+
PC9zY3JpcHQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8
bGluayByZWw9InByZXYiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY3JlYXRlLmh0bWwiIHRpdGxl
PSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3Vy
aXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVybi5j
YW52YXMudGltaW5nIj4KKzxib2R5IGNsYXNzPSJzaG93X291dHB1dCI+Cis8cD4KKyA8YSBocmVm
PSJzZWN1cml0eS5wYXR0ZXJuLmNyZWF0ZS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0g
c2VjdXJpdHkucGF0dGVybi5jcmVhdGUiPiZsdDs8L2E+CisgPGEgaHJlZj0iaW5kZXguaHRtbCI+
W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy50aW1pbmcuaHRt
bCIgYWNjZXNza2V5PSJuIiB0aXRsZT0iW25dIHNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWlu
ZyI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1sIj5zZWN1cml0eTwv
YT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5odG1sIj5wYXR0ZXJuPC9hPi5jcm9z
czwvaDE+Cis8cCBjbGFzcz0iZGVzYyI+VXNpbmcgYW4gdW5jbGVhbiBwYXR0ZXJuIG1ha2VzIHRo
ZSB0YXJnZXQgY2FudmFzIG9yaWdpbi11bmNsZWFuLCBub3QgdGhlIHBhdHRlcm4gY2FudmFzPC9w
PgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJlbmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVj
Lmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3RhcnQiPnNlY3VyaXR5LnN0YXJ0PC9hPgorCis8L3Vs
PgorPC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZh
cyBpZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9
ImZhbGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlk
PSJkIj48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisK
K3ZhciBjYW52YXMyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CitjYW52YXMy
LndpZHRoID0gMTAwOworY2FudmFzMi5oZWlnaHQgPSA1MDsKK3ZhciBjdHgyID0gY2FudmFzMi5n
ZXRDb250ZXh0KCcyZCcpOwordmFyIHAgPSBjdHgyLmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3llbGxvdy5wbmcnKSwgJ3JlcGVhdCcpOworY3R4LmZpbGxTdHlsZSA9IHA7
CitjdHguZmlsbFJlY3QoMCwgMCwgMTAwLCA1MCk7Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNl
OyBjYW52YXMudG9EYXRhVVJMKCk7IH0gY2F0Y2ggKGUpIHsgX3Rocm93biA9IHRydWU7IH0gZmlu
YWxseSB7IF9hc3NlcnQoX3Rocm93biwgInNob3VsZCB0aHJvdyBleGNlcHRpb246IGNhbnZhcy50
b0RhdGFVUkwoKSIpOyB9Cit0cnkgeyB2YXIgX3Rocm93biA9IGZhbHNlOyBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkg
eyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjdHguZ2V0SW1hZ2VE
YXRhKDAsIDAsIDEsIDEpIik7IH0KK2NhbnZhczIudG9EYXRhVVJMKCk7CitjdHgyLmdldEltYWdl
RGF0YSgwLCAwLCAxLCAxKTsKKworCit9KTsKKzwvc2NyaXB0PgorPGltZyBzcmM9Imh0dHA6Ly9l
eGNvcnMuZ29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmciIGlkPSJ5ZWxsb3cucG5nIiBjbGFzcz0i
cmVzb3VyY2UiPgorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5maWxsU3R5bGUtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1
cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDYzNjc4
KQkoZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4u
aW1hZ2UuZmlsbFN0eWxlLWV4cGVjdGVkLnR4dDo2MzY3OCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHls
ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFj
Y2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93
LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlCitTZXR0
aW5nIGZpbGxTdHlsZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1h
a2VzIHRoZSBjYW52YXMgb3JpZ2luLXVuY2xlYW4KK1JlZmVyZW5jZXM6IHNlY3VyaXR5LmZpbGxT
dHlsZS5pbWFnZQorQWN0dWFsIG91dHB1dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZp
bGxTdHlsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFz
L3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sCShyZXZp
c2lvbiA2MzY3OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0
eS5wYXR0ZXJuLmltYWdlLmZpbGxTdHlsZS5odG1sOjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0
eWxlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+
Cis8dGl0bGU+Q2FudmFzIHRlc3Q6IHNlY3VyaXR5LnBhdHRlcm4uaW1hZ2UuZmlsbFN0eWxlPC90
aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi90ZXN0cy5qcyI+PC9zY3JpcHQ+Cis8bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9Ii4uL3Rlc3RzLmNzcyI+Cis8bGluayByZWw9InByZXYiIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiB0aXRsZT0ic2VjdXJpdHkucGF0dGVy
bi5jYW52YXMudGltaW5nIj4KKzxsaW5rIHJlbD0ibmV4dCIgaHJlZj0ic2VjdXJpdHkucGF0dGVy
bi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5m
aWxsU3R5bGUiPgorPGJvZHkgY2xhc3M9InNob3dfb3V0cHV0Ij4KKzxwPgorIDxhIGhyZWY9InNl
Y3VyaXR5LnBhdHRlcm4uY2FudmFzLnRpbWluZy5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJb
cF0gc2VjdXJpdHkucGF0dGVybi5jYW52YXMudGltaW5nIj4mbHQ7PC9hPgorIDxhIGhyZWY9Imlu
ZGV4Lmh0bWwiPltpbmRleF08L2E+CisgPGEgaHJlZj0ic2VjdXJpdHkucGF0dGVybi5jYW52YXMu
ZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSBzZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2VjdXJpdHku
aHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4uaHRtbCI+
cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5odG1sIj5p
bWFnZTwvYT4uZmlsbFN0eWxlPC9oMT4KKzxwIGNsYXNzPSJkZXNjIj5TZXR0aW5nIGZpbGxTdHls
ZSB0byBhIHBhdHRlcm4gb2YgYSBkaWZmZXJlbnQtb3JpZ2luIGltYWdlIG1ha2VzIHRoZSBjYW52
YXMgb3JpZ2luLXVuY2xlYW48L3A+Cis8ZGl2IGNsYXNzPSJyZWZzIj5SZWZlcmVuY2VzOgorPHVs
PgorPGxpPjxhIGhyZWY9InNwZWMuaHRtbCN0ZXN0cmVmcy5zZWN1cml0eS5maWxsU3R5bGUuaW1h
Z2UiPnNlY3VyaXR5LmZpbGxTdHlsZS5pbWFnZTwvYT4KKworPC91bD4KKzwvZGl2PgorCis8cCBj
bGFzcz0ib3V0cHV0Ij5BY3R1YWwgb3V0cHV0OjwvcD4KKzxjYW52YXMgaWQ9ImMiIGNsYXNzPSJv
dXRwdXQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiPjxwIGNsYXNzPSJmYWxsYmFjayI+RkFJTCAo
ZmFsbGJhY2sgY29udGVudCk8L3A+PC9jYW52YXM+CisKKzx1bCBpZD0iZCI+PC91bD4KKzxzY3Jp
cHQ+CitfYWRkVGVzdChmdW5jdGlvbihjYW52YXMsIGN0eCkgeworCit2YXIgcCA9IGN0eC5jcmVh
dGVQYXR0ZXJuKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxsb3cucG5nJyksICdyZXBlYXQn
KTsKK2N0eC5maWxsU3R5bGUgPSBwOworY3R4LmZpbGxTdHlsZSA9ICdyZWQnOwordHJ5IHsgdmFy
IF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJv
d24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhj
ZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxz
ZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRjaCAoZSkgeyBfdGhyb3duID0g
dHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hvdWxkIHRocm93IGV4Y2VwdGlv
bjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisKKworfSk7Cis8L3NjcmlwdD4K
KzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNvbS95ZWxsb3cucG5nIiBpZD0i
eWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5
bGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fu
dmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExheW91dFRlc3RzL2NhbnZhcy9waGlsaXAv
dGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQ6NjM2
NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJp
dHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw5IEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL2V4
Y29ycy5nb29nbGVwYWdlcy5jb20veWVsbG93LnBuZworPCBbaW5kZXhdID4KK3NlY3VyaXR5LnBh
dHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUKK1NldHRpbmcgc3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJu
IG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtlcyB0aGUgY2FudmFzIG9yaWdpbi11bmNs
ZWFuCitSZWZlcmVuY2VzOiBzZWN1cml0eS5zdHJva2VTdHlsZS5pbWFnZQorQWN0dWFsIG91dHB1
dDoKK1Bhc3NlZAorCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxp
cC90ZXN0cy9zZWN1cml0eS5wYXR0ZXJuLmltYWdlLnN0cm9rZVN0eWxlLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5
LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkocmV2aXNpb24gNjM2NzgpCShmcm9tIExh
eW91dFRlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJv
a2VTdHlsZS5odG1sOjYzNjc4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhp
bGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DYW52YXMg
dGVzdDogc2VjdXJpdHkucGF0dGVybi5pbWFnZS5zdHJva2VTdHlsZTwvdGl0bGU+Cis8c2NyaXB0
IHNyYz0iLi4vdGVzdHMuanMiPjwvc2NyaXB0PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi90ZXN0cy5jc3MiPgorPGxpbmsgcmVsPSJwcmV2IiBocmVmPSJzZWN1cml0eS5wYXR0ZXJu
LmNhbnZhcy5maWxsU3R5bGUuaHRtbCIgdGl0bGU9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFzLmZp
bGxTdHlsZSI+Cis8bGluayByZWw9Im5leHQiIGhyZWY9InNlY3VyaXR5LnBhdHRlcm4uY2FudmFz
LnN0cm9rZVN0eWxlLmh0bWwiIHRpdGxlPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5zdHJva2VT
dHlsZSI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJp
dHkucGF0dGVybi5jYW52YXMuZmlsbFN0eWxlLmh0bWwiIGFjY2Vzc2tleT0icCIgdGl0bGU9Iltw
XSBzZWN1cml0eS5wYXR0ZXJuLmNhbnZhcy5maWxsU3R5bGUiPiZsdDs8L2E+CisgPGEgaHJlZj0i
aW5kZXguaHRtbCI+W2luZGV4XTwvYT4KKyA8YSBocmVmPSJzZWN1cml0eS5wYXR0ZXJuLmNhbnZh
cy5zdHJva2VTdHlsZS5odG1sIiBhY2Nlc3NrZXk9Im4iIHRpdGxlPSJbbl0gc2VjdXJpdHkucGF0
dGVybi5jYW52YXMuc3Ryb2tlU3R5bGUiPiZndDs8L2E+Cis8aDE+PGEgaHJlZj0iaW5kZXguc2Vj
dXJpdHkuaHRtbCI+c2VjdXJpdHk8L2E+LjxhIGhyZWY9ImluZGV4LnNlY3VyaXR5LnBhdHRlcm4u
aHRtbCI+cGF0dGVybjwvYT4uPGEgaHJlZj0iaW5kZXguc2VjdXJpdHkucGF0dGVybi5pbWFnZS5o
dG1sIj5pbWFnZTwvYT4uc3Ryb2tlU3R5bGU8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlNldHRpbmcg
c3Ryb2tlU3R5bGUgdG8gYSBwYXR0ZXJuIG9mIGEgZGlmZmVyZW50LW9yaWdpbiBpbWFnZSBtYWtl
cyB0aGUgY2FudmFzIG9yaWdpbi11bmNsZWFuPC9wPgorPGRpdiBjbGFzcz0icmVmcyI+UmVmZXJl
bmNlczoKKzx1bD4KKzxsaT48YSBocmVmPSJzcGVjLmh0bWwjdGVzdHJlZnMuc2VjdXJpdHkuc3Ry
b2tlU3R5bGUuaW1hZ2UiPnNlY3VyaXR5LnN0cm9rZVN0eWxlLmltYWdlPC9hPgorCis8L3VsPgor
PC9kaXY+CisKKzxwIGNsYXNzPSJvdXRwdXQiPkFjdHVhbCBvdXRwdXQ6PC9wPgorPGNhbnZhcyBp
ZD0iYyIgY2xhc3M9Im91dHB1dCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCI+PHAgY2xhc3M9ImZh
bGxiYWNrIj5GQUlMIChmYWxsYmFjayBjb250ZW50KTwvcD48L2NhbnZhcz4KKworPHVsIGlkPSJk
Ij48L3VsPgorPHNjcmlwdD4KK19hZGRUZXN0KGZ1bmN0aW9uKGNhbnZhcywgY3R4KSB7CisKK3Zh
ciBwID0gY3R4LmNyZWF0ZVBhdHRlcm4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3llbGxvdy5w
bmcnKSwgJ3JlcGVhdCcpOworY3R4LnN0cm9rZVN0eWxlID0gcDsKK2N0eC5zdHJva2VTdHlsZSA9
ICdyZWQnOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0YVVSTCgpOyB9
IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0KF90aHJvd24s
ICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsgfQordHJ5IHsg
dmFyIF90aHJvd24gPSBmYWxzZTsgY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKTsgfSBjYXRj
aCAoZSkgeyBfdGhyb3duID0gdHJ1ZTsgfSBmaW5hbGx5IHsgX2Fzc2VydChfdGhyb3duLCAic2hv
dWxkIHRocm93IGV4Y2VwdGlvbjogY3R4LmdldEltYWdlRGF0YSgwLCAwLCAxLCAxKSIpOyB9CisK
KworfSk7Cis8L3NjcmlwdD4KKzxpbWcgc3JjPSJodHRwOi8vZXhjb3JzLmdvb2dsZXBhZ2VzLmNv
bS95ZWxsb3cucG5nIiBpZD0ieWVsbG93LnBuZyIgY2xhc3M9InJlc291cmNlIj4KKwpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZh
cy9waGlsaXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MzY3
OCkJKGZyb20gTGF5b3V0VGVzdHMvY2FudmFzL3BoaWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC1l
eHBlY3RlZC50eHQ6NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvdGVzdHMvc2VjdXJpdHkucmVzZXQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsOSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly9leGNvcnMu
Z29vZ2xlcGFnZXMuY29tL3llbGxvdy5wbmcKKzwgW2luZGV4XSA+CitzZWN1cml0eS5yZXNldAor
UmVzZXR0aW5nIHRoZSBjYW52YXMgc3RhdGUgZG9lcyBub3QgcmVzZXQgdGhlIG9yaWdpbi1jbGVh
biBmbGFnCitSZWZlcmVuY2VzOiBpbml0aWFsLnJlc2V0CitBY3R1YWwgb3V0cHV0OgorUGFzc2Vk
CisKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3Nl
Y3VyaXR5LnJlc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwJKHJldmlzaW9uIDYzNjc4KQko
ZnJvbSBMYXlvdXRUZXN0cy9jYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWw6
NjM2NzgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAvdGVzdHMvc2Vj
dXJpdHkucmVzZXQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzx0aXRsZT5DYW52YXMgdGVzdDogc2VjdXJpdHkucmVzZXQ8L3RpdGxlPgorPHNj
cmlwdCBzcmM9Ii4uL3Rlc3RzLmpzIj48L3NjcmlwdD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vdGVzdHMuY3NzIj4KKzxsaW5rIHJlbD0icHJldiIgaHJlZj0ic2VjdXJpdHkuZGF0
YVVSSS5odG1sIiB0aXRsZT0ic2VjdXJpdHkuZGF0YVVSSSI+Cis8bGluayByZWw9Im5leHQiIGhy
ZWY9IjJkLmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIHRpdGxlPSIyZC5nZXRjb250ZXh0LmV4aXN0
cyI+Cis8Ym9keSBjbGFzcz0ic2hvd19vdXRwdXQiPgorPHA+CisgPGEgaHJlZj0ic2VjdXJpdHku
ZGF0YVVSSS5odG1sIiBhY2Nlc3NrZXk9InAiIHRpdGxlPSJbcF0gc2VjdXJpdHkuZGF0YVVSSSI+
Jmx0OzwvYT4KKyA8YSBocmVmPSJpbmRleC5odG1sIj5baW5kZXhdPC9hPgorIDxhIGhyZWY9IjJk
LmdldGNvbnRleHQuZXhpc3RzLmh0bWwiIGFjY2Vzc2tleT0ibiIgdGl0bGU9IltuXSAyZC5nZXRj
b250ZXh0LmV4aXN0cyI+Jmd0OzwvYT4KKzxoMT48YSBocmVmPSJpbmRleC5zZWN1cml0eS5odG1s
Ij5zZWN1cml0eTwvYT4ucmVzZXQ8L2gxPgorPHAgY2xhc3M9ImRlc2MiPlJlc2V0dGluZyB0aGUg
Y2FudmFzIHN0YXRlIGRvZXMgbm90IHJlc2V0IHRoZSBvcmlnaW4tY2xlYW4gZmxhZzwvcD4KKzxk
aXYgY2xhc3M9InJlZnMiPlJlZmVyZW5jZXM6Cis8dWw+Cis8bGk+PGEgaHJlZj0ic3BlYy5odG1s
I3Rlc3RyZWZzLmluaXRpYWwucmVzZXQiPmluaXRpYWwucmVzZXQ8L2E+CisKKzwvdWw+Cis8L2Rp
dj4KKworPHAgY2xhc3M9Im91dHB1dCI+QWN0dWFsIG91dHB1dDo8L3A+Cis8Y2FudmFzIGlkPSJj
IiBjbGFzcz0ib3V0cHV0IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIj48cCBjbGFzcz0iZmFsbGJh
Y2siPkZBSUwgKGZhbGxiYWNrIGNvbnRlbnQpPC9wPjwvY2FudmFzPgorCis8dWwgaWQ9ImQiPjwv
dWw+Cis8c2NyaXB0PgorX2FkZFRlc3QoZnVuY3Rpb24oY2FudmFzLCBjdHgpIHsKKworY2FudmFz
LndpZHRoID0gNTA7CitjdHguZHJhd0ltYWdlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd5ZWxs
b3cucG5nJyksIDAsIDApOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFzLnRvRGF0
YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBfYXNzZXJ0
KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJMKCkiKTsg
fQorY2FudmFzLndpZHRoID0gMTAwOwordHJ5IHsgdmFyIF90aHJvd24gPSBmYWxzZTsgY2FudmFz
LnRvRGF0YVVSTCgpOyB9IGNhdGNoIChlKSB7IF90aHJvd24gPSB0cnVlOyB9IGZpbmFsbHkgeyBf
YXNzZXJ0KF90aHJvd24sICJzaG91bGQgdGhyb3cgZXhjZXB0aW9uOiBjYW52YXMudG9EYXRhVVJM
KCkiKTsgfQorCisKK30pOworPC9zY3JpcHQ+Cis8aW1nIHNyYz0iaHR0cDovL2V4Y29ycy5nb29n
bGVwYWdlcy5jb20veWVsbG93LnBuZyIgaWQ9InllbGxvdy5wbmciIGNsYXNzPSJyZXNvdXJjZSI+
CisKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25z
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4
cGVjdGF0aW9ucy50eHQJKHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Y2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yODAwLDYg
KzI4MDAsNyBAQCBCVUc0NDE1MCBMSU5VWCBERUJVRyA6IGZhc3QvZm9ybXMvaW5wdXQtCiAKIC8v
IE5ldyBjYW52YXMgdGVzdCBzdWl0ZSBmcm9tIGh0dHA6Ly9waGlsaXAuaHRtbDUub3JnL3Rlc3Rz
L2NhbnZhcy9zdWl0ZS90ZXN0cy8KIEJVRzIwNTUzIFNLSVAgREVGRVIgOiBjYW52YXMvcGhpbGlw
ID0gVEVYVAorQlVHMjA1NTMgU0tJUCBERUZFUiA6IGh0dHAvdGVzdHMvY2FudmFzL3BoaWxpcCA9
IFRFWFQKIAogLy8gTmVlZCB0byBkdW1wIGNvbnRleHQgbWVudSBpdGVtcyBvbiBldmVudFNlbmRl
ci5jb250ZXh0Q2xpY2sodHJ1ZSkuCiBCVUdXSzM5MTA1IDogZWRpdGluZy9zcGVsbGluZy9jb250
ZXh0LW1lbnUtc3VnZ2VzdGlvbnMuaHRtbCA9IFRFWFQKSW5kZXg6IExheW91dFRlc3RzL3BsYXRm
b3JtL2d0ay9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9T
a2lwcGVkCShyZXZpc2lvbiA2MzY3OCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lw
cGVkCSh3b3JraW5nIGNvcHkpCkBAIC01Njc2LDYgKzU2NzYsNyBAQCBmYXN0L2xvYWRlci9udWxs
LXJlcXVlc3QtYWZ0ZXItd2lsbFNlbmRSCiAKICMgTmV3IGNhbnZhcyB0ZXN0IHN1aXRlIGZyb20g
aHR0cDovL3BoaWxpcC5odG1sNS5vcmcvdGVzdHMvY2FudmFzL3N1aXRlL3Rlc3RzLwogY2FudmFz
L3BoaWxpcAoraHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwCiAKICMgU2tpcCB0aGlzLCBpdCdzIHBl
bmRpbmcgb24gb25lIHBhdGNoIGluIHRoZSBjb21taXQgcXVldWUKIGFjY2Vzc2liaWxpdHkvYXJp
YS1jb250cm9scy13aXRoLXRhYnMuaHRtbApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJ
KHJldmlzaW9uIDYzNjc4KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHdv
cmtpbmcgY29weSkKQEAgLTI1Miw2ICsyNTIsNyBAQCBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3Vy
aXR5LnBhdHRlcm4uaW1hCiBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnJlc2V0Lmh0bWwK
IGNhbnZhcy9waGlsaXAvdGVzdHMvdG9EYXRhVVJMLmpwZWcuYWxwaGEuaHRtbAogY2FudmFzL3Bo
aWxpcC90ZXN0cy90eXBlLnByb3RvdHlwZS5odG1sCitodHRwL3Rlc3RzL2NhbnZhcy9waGlsaXAK
IAogIyBJbmRleGVkREIgaXMgbm90IHlldCBlbmFibGVkLgogc3RvcmFnZS9pbmRleGVkZGIKSW5k
ZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2aXNpb24gNjM2NzgpCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC01MzIxLDYgKzUzMjEsNyBA
QCBjYW52YXMvcGhpbGlwL3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hCiBjYW52YXMvcGhpbGlw
L3Rlc3RzL3NlY3VyaXR5LnBhdHRlcm4uaW1hZ2Uuc3Ryb2tlU3R5bGUuaHRtbAogY2FudmFzL3Bo
aWxpcC90ZXN0cy9zZWN1cml0eS5yZXNldC5odG1sCiBjYW52YXMvcGhpbGlwL3Rlc3RzLzJkLmRy
YXdJbWFnZS5icm9rZW4uaHRtbAoraHR0cC90ZXN0cy9jYW52YXMvcGhpbGlwCiAKICMgW1F0XSBj
YW52YXMvcGhpbGlwL3Rlc3RzLzJkLnBhdGguc3Ryb2tlLm92ZXJsYXAuaHRtbCBmYWlscyB3aXRo
IFF0LTQuNi4yIG9yIGhpZ2hlcgogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDAzNjIKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FudmFzL3BoaWxpcC9p
bWFnZXMveWVsbG93LnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBh
cyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFt
CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhbnZhcy9waGls
aXAvaW1hZ2VzL3llbGxvdy5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOm1pbWUtdHlwZQogICAr
IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFHUUFB
QUF5QVFNQUFBQ1ErK3o5QUFBQUExQk1WRVgvL3dDS3h2UkZBQUFBRjBsRVFWUjQKWHUzQUFRMEFB
QUJBTVAxVHkyRnpvallCQXJ3QUFVTnhqTWtBQUFBQVNVVk9SSzVDWUlJPQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>