<?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>214889</bug_id>
          
          <creation_ts>2020-07-28 12:24:36 -0700</creation_ts>
          <short_desc>Migrate App-Bound Domains code from WebKit Additions</short_desc>
          <delta_ts>2020-07-29 15:24:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=214916</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>214917</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kate Cheney">katherine_cheney</reporter>
          <assigned_to name="Kate Cheney">katherine_cheney</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1675730</commentid>
    <comment_count>0</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 12:24:36 -0700</bug_when>
    <thetext>We should migrate some additional app-bound domains code to WebKit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675731</commentid>
    <comment_count>1</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 12:25:05 -0700</bug_when>
    <thetext>rdar://problem/66075857</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675759</commentid>
    <comment_count>2</comment_count>
      <attachid>405399</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 13:20:53 -0700</bug_when>
    <thetext>Created attachment 405399
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675764</commentid>
    <comment_count>3</comment_count>
      <attachid>405400</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 13:25:27 -0700</bug_when>
    <thetext>Created attachment 405400
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675775</commentid>
    <comment_count>4</comment_count>
      <attachid>405402</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 13:40:06 -0700</bug_when>
    <thetext>Created attachment 405402
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675779</commentid>
    <comment_count>5</comment_count>
      <attachid>405405</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 13:48:47 -0700</bug_when>
    <thetext>Created attachment 405405
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675780</commentid>
    <comment_count>6</comment_count>
      <attachid>405406</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 13:54:45 -0700</bug_when>
    <thetext>Created attachment 405406
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675783</commentid>
    <comment_count>7</comment_count>
      <attachid>405409</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 14:01:13 -0700</bug_when>
    <thetext>Created attachment 405409
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675787</commentid>
    <comment_count>8</comment_count>
      <attachid>405411</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 14:05:37 -0700</bug_when>
    <thetext>Created attachment 405411
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675788</commentid>
    <comment_count>9</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 14:06:12 -0700</bug_when>
    <thetext>Having some trouble making EWS happy, hopefully this one does it...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675801</commentid>
    <comment_count>10</comment_count>
      <attachid>405414</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 14:27:19 -0700</bug_when>
    <thetext>Created attachment 405414
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675828</commentid>
    <comment_count>11</comment_count>
      <attachid>405419</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 15:01:52 -0700</bug_when>
    <thetext>Created attachment 405419
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675832</commentid>
    <comment_count>12</comment_count>
      <attachid>405419</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-07-28 15:33:06 -0700</bug_when>
    <thetext>Comment on attachment 405419
Patch

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

r=me, but please correct the ChangeLog that includes Ryan&apos;s description, too.

&gt; Source/WebKit/Shared/Cocoa/DefaultWebBrowserChecks.mm:192
&gt; +        @&quot;NSRemindersUsageDescription&quot;,

Can you please remove the &quot;NSRemindersUsageDescription&quot;, we are not restricting this one anymore.

&gt; LayoutTests/ChangeLog:11
&gt; +

Oops! Two ChangeLog entries.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675837</commentid>
    <comment_count>13</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 15:39:36 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #12)
&gt; Comment on attachment 405419 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=405419&amp;action=review
&gt; 
&gt; r=me, but please correct the ChangeLog that includes Ryan&apos;s description, too.
&gt; 

Whoops -- accidentally absorbed that along the way. Will fix.

&gt; &gt; Source/WebKit/Shared/Cocoa/DefaultWebBrowserChecks.mm:192
&gt; &gt; +        @&quot;NSRemindersUsageDescription&quot;,
&gt; 

Yes, will do.

&gt; Can you please remove the &quot;NSRemindersUsageDescription&quot;, we are not
&gt; restricting this one anymore.
&gt; 
&gt; &gt; LayoutTests/ChangeLog:11
&gt; &gt; +
&gt; 
&gt; Oops! Two ChangeLog entries.

Good catch!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675839</commentid>
    <comment_count>14</comment_count>
      <attachid>405422</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-28 15:49:30 -0700</bug_when>
    <thetext>Created attachment 405422
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675850</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-28 16:14:14 -0700</bug_when>
    <thetext>Committed r265018: &lt;https://trac.webkit.org/changeset/265018&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 405422.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675950</commentid>
    <comment_count>16</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-07-29 04:51:42 -0700</bug_when>
    <thetext>This (In reply to EWS from comment #15)
&gt; Committed r265018: &lt;https://trac.webkit.org/changeset/265018&gt;
This seems to have broken various ios-wk2 tests. Tracked in Bug 214916. 

Please make sure to run the patches through EWS before landing. In this case there were 10 patches uploaded within ~2 hours, and none of the patches were run through ios-wk2, api-ios, mac-debug-wk1, win EWSes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1675953</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-07-29 04:52:54 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 214917</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676058</commentid>
    <comment_count>18</comment_count>
      <attachid>405476</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-29 11:11:34 -0700</bug_when>
    <thetext>Created attachment 405476
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676059</commentid>
    <comment_count>19</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-29 11:12:33 -0700</bug_when>
    <thetext>Thanks Aakash -- my bad on not letting EWS finish. I am unable to reproduce these failures locally, so I am uploading this patch with some logging to try and figure out what is going on on EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676089</commentid>
    <comment_count>20</comment_count>
      <attachid>405484</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-29 12:27:28 -0700</bug_when>
    <thetext>Created attachment 405484
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676169</commentid>
    <comment_count>21</comment_count>
      <attachid>405484</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-07-29 15:16:50 -0700</bug_when>
    <thetext>Comment on attachment 405484
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676177</commentid>
    <comment_count>22</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-29 15:24:25 -0700</bug_when>
    <thetext>Committed r265063: &lt;https://trac.webkit.org/changeset/265063&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 405484.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405399</attachid>
            <date>2020-07-28 13:20:53 -0700</date>
            <delta_ts>2020-07-28 13:25:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728132052.patch</filename>
            <type>text/plain</type>
            <size>35337</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjY1ODgzZGMzZDc4NjAxM2NmZjdkOWJiMjY0YjA4MWYwMzU5NDkyMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTYzLDcgKzYzLDYgQEAKICNpbXBvcnQgPFdlYktpdEFk
ZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmluZSBO
RVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNkZWZpbmUgTkVUV09SS19TRVNTSU9O
X0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAjaW1wb3J0ICJEZXZpY2VNYW5hZ2Vt
ZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MSwyOSBAQCB2b2lkIFNlc3Npb25XcmFwcGVy
Ojppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24sIE5l
dHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNlc3Npb25XaXRoQ29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdldCgpIGRlbGVnYXRlUXVldWU6W05T
T3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNpZiBIQVZFKFNFU1NJT05fQ0xFQU5V
UCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFudXAoTmV0d29ya1Nlc3Npb25Db2Nv
YSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBEb24ndCBvdmVycmlkZSBhbiBleHBs
aWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNldCkKKyAgICAgICAgcmV0dXJuOwor
CisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQorICAgIGF1dG8gcGFyZW50QXVk
aXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9BU1NFUlQocGFyZW50QXVkaXRUb2tl
bik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisKKyAgICBib29sIGl0cEVuYWJsZWQg
PSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBhcmVudEF1ZGl0VG9rZW4pOworICAg
IGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5pc1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAhPSBwYXNzZWRFbmFibGVkU3RhdGUp
CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBlbmFibGVkIHN0YXRlICglZCkgZG9l
cyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRwRW5hYmxlZCwgcGFzc2VkRW5hYmxl
ZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKHBh
c3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgorfQorI2VuZGlmCisKIE5ldHdvcmtT
ZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdvcmtQ
cm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAg
ICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycykKICAgICAsIG1f
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMuYm91bmRJbnRlcmZhY2VJZGVudGlm
aWVyKQpAQCAtMTI5Miw3ICsxMzE0LDcgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNvY29hOjppbml0
aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZpZ2F0aW5nVG9BcHBCb3UKIFNlc3Np
b25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2soY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBXZWJDb3JlOjpTdG9yZWRDcmVk
ZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgT3B0aW9uYWw8TmF2aWdhdGlu
Z1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAgICAg
YXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA6IE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElPTlNf
MikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKG5ldHdvcmtQcm9jZXNz
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkKICAgICAgICAg
c2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6
Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoYXV0byog
c3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Npb24oKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZkN2U0M2YxM2JlZgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hl
Y2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWluOwor
fQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdz
KCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRBcHBC
b3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOworYm9vbCBzaG91bGRCZVRyZWF0ZWRB
c0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpOwordm9pZCBkZXRlcm1pbmVJVFBT
dGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKK2Jvb2wgZG9lc1BhcmVudFBy
b2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90Pik7Citib29sIGlzRnVs
bFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlv
bmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjUwNzI4NjMyMWJlNDMxOGMzZGNjN2E2ZDYyMzAyNDI0YmUxMzFkOGIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZp
Zy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKworI2ltcG9ydCAiVmVy
c2lvbkNoZWNrcy5oIgorI2ltcG9ydCA8VENDL1RDQy5oPgorI2ltcG9ydCA8V2ViQ29yZS9SZWdp
c3RyYWJsZURvbWFpbi5oPgorI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVj
a3MuaD4KKyNpbXBvcnQgPHd0Zi9IYXNoTWFwLmg+CisjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgor
I2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisjaW1wb3J0IDx3dGYvY29jb2EvRW50aXRsZW1l
bnRzLmg+CisjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CisKK1NPRlRfTElOS19QUklW
QVRFX0ZSQU1FV09SSyhUQ0MpCitTT0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHQsIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCwgKENGU3RyaW5nUmVmIHNlcnZpY2UsIENGRGljdGlvbmFy
eVJlZiBvcHRpb25zKSwgKHNlcnZpY2UsIG9wdGlvbnMpKQorU09GVF9MSU5LKFRDQywgVENDQWNj
ZXNzUHJlZmxpZ2h0V2l0aEF1ZGl0VG9rZW4sIFRDQ0FjY2Vzc1ByZWZsaWdodFJlc3VsdCwgKENG
U3RyaW5nUmVmIHNlcnZpY2UsIGF1ZGl0X3Rva2VuX3QgdG9rZW4sIENGRGljdGlvbmFyeVJlZiBv
cHRpb25zKSwgKHNlcnZpY2UsIHRva2VuLCBvcHRpb25zKSkKK1NPRlRfTElOS19DT05TVEFOVChU
Q0MsIGtUQ0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24sIENGU3Ry
aW5nUmVmKQorCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdGF0aWMgYm9vbCBpc0Z1bGxXZWJC
cm93c2VyKGNvbnN0IFN0cmluZyYpOworCitib29sIHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dz
ZXIoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICByZXR1cm4gYnVuZGxlSUQgPT0gImNv
bS5hcHBsZS5XZWJLaXQuVGVzdFdlYktpdEFQSSJfcyB8fCBidW5kbGVJRCA9PSAiY29tLmFwcGxl
LldlYktpdC5XZWJLaXRUZXN0UnVubmVyIl9zOworfQorCitPcHRpb25hbDxWZWN0b3I8V2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0
cmluZyYgYnVuZGxlSUQpCit7CisgICAgaWYgKGJ1bmRsZUlELmlzTnVsbCgpKQorICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgc3RhdGljIGF1dG8gYXBwQm91bmREb21haW5MaXN0
ID0gbWFrZU5ldmVyRGVzdHJveWVkKEhhc2hNYXA8U3RyaW5nLCBWZWN0b3I8V2ViQ29yZTo6UmVn
aXN0cmFibGVEb21haW4+PiB7CisgICAgICAgIHsiaW5BcHBCcm93c2VyUHJpdmFjeVRlc3RJZGVu
dGlmaWVyIl9zLCBWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+IHsgV2ViQ29yZTo6
UmVnaXN0cmFibGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21SZWdpc3RyYWJsZURvbWFpblN0
cmluZygiMTI3LjAuMC4xIikgfX0sCisgICAgfSk7CisKKyAgICBhdXRvIGFwcEJvdW5kRG9tYWlu
SXRlciA9IGFwcEJvdW5kRG9tYWluTGlzdC0+ZmluZChidW5kbGVJRCk7CisgICAgaWYgKGFwcEJv
dW5kRG9tYWluSXRlciAhPSBhcHBCb3VuZERvbWFpbkxpc3QtPmVuZCgpKQorICAgICAgICByZXR1
cm4gYXBwQm91bmREb21haW5JdGVyLT52YWx1ZTsKKworICAgIHJldHVybiBXVEY6Om51bGxvcHQ7
Cit9CisKKyNpZiBBU1NFUlRfRU5BQkxFRAorc3RhdGljIGJvb2wgaXNJbldlYktpdENoaWxkUHJv
Y2VzcygpCit7CisgICAgc3RhdGljIGJvb2wgaXNJblN1YlByb2Nlc3M7CisKKyAgICBzdGF0aWMg
ZGlzcGF0Y2hfb25jZV90IG9uY2U7CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAgICAg
ICAgTlNTdHJpbmcgKmJ1bmRsZUlkZW50aWZpZXIgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1
bmRsZUlkZW50aWZpZXJdOworICAgICAgICBpc0luU3ViUHJvY2VzcyA9IFtidW5kbGVJZGVudGlm
aWVyIGhhc1ByZWZpeDpAImNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudCJdCisgICAgICAgICAg
ICB8fCBbYnVuZGxlSWRlbnRpZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0Lk5ldHdv
cmtpbmciXQorICAgICAgICAgICAgfHwgW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29t
LmFwcGxlLldlYktpdC5HUFUiXTsKKyAgICB9KTsKKworICAgIHJldHVybiBpc0luU3ViUHJvY2Vz
czsKK30KKyNlbmRpZgorCitlbnVtIGNsYXNzIElUUFN0YXRlIDogdWludDhfdCB7CisgICAgVW5p
bml0aWFsaXplZCwKKyAgICBJbml0aWFsaXppbmcsCisgICAgRW5hYmxlZCwKKyAgICBEaXNhYmxl
ZAorfTsKKworc3RhdGljIHN0ZDo6YXRvbWljPElUUFN0YXRlPiBnX2N1cnJlbnRJVFBTdGF0ZSA9
IElUUFN0YXRlOjpVbmluaXRpYWxpemVkOworCitzdGF0aWMgYm9vbCBoYXNSZXF1ZXN0ZWRDcm9z
c1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKQoreworICAgIEFTU0VSVCghaXNJbldlYktpdENo
aWxkUHJvY2VzcygpKTsKKworICAgIHN0YXRpYyBzdGQ6OmF0b21pYzxib29sPiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb24gPSBbW05TQnVuZGxlIG1haW5CdW5kbGVd
IG9iamVjdEZvckluZm9EaWN0aW9uYXJ5S2V5OkAiTlNDcm9zc1dlYnNpdGVUcmFja2luZ1VzYWdl
RGVzY3JpcHRpb24iXTsKKyAgICByZXR1cm4gaGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRlVHJhY2tp
bmdQZXJtaXNzaW9uOworfQorCitzdGF0aWMgYm9vbCBkZXRlcm1pbmVJVFBTdGF0ZUludGVybmFs
KGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyLCBjb25zdCBTdHJpbmcmIGJ1bmRsZUlkZW50aWZp
ZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKCFpc0lu
V2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgaWYgKCFhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIp
CisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICghaXNGdWxsV2ViQnJvd3NlcihidW5k
bGVJZGVudGlmaWVyKSAmJiAhaGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRlVHJhY2tpbmdQZXJtaXNz
aW9uKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgVENDQWNjZXNzUHJlZmxpZ2h0UmVz
dWx0IHJlc3VsdCA9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7CisjaWYgKFBMQVRGT1JNKElP
UykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExB
VEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkK
KyAgICByZXN1bHQgPSBUQ0NBY2Nlc3NQcmVmbGlnaHQoZ2V0a1RDQ1NlcnZpY2VXZWJLaXRJbnRl
bGxpZ2VudFRyYWNraW5nUHJldmVudGlvbigpLCBudWxscHRyKTsKKyNlbmRpZgorICAgIHJldHVy
biByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKK30KKworc3RhdGljIGRpc3Bh
dGNoX3F1ZXVlX3QgZ19pdHBRdWV1ZTsKKwordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpCit7Cisg
ICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBpZiAoZ19jdXJyZW50SVRQU3RhdGUg
IT0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQpCisgICAgICAgIHJldHVybjsKKworICAgIGdfY3Vy
cmVudElUUFN0YXRlID0gSVRQU3RhdGU6OkluaXRpYWxpemluZzsKKyAgICBib29sIGFwcFdhc0xp
bmtlZE9uT3JBZnRlciA9IGxpbmtlZE9uT3JBZnRlcihTREtWZXJzaW9uOjpGaXJzdFdpdGhTZXNz
aW9uQ2xlYW51cEJ5RGVmYXVsdCwgQXNzdW1lU2FmYXJpSXNBbHdheXNMaW5rZWRPbkFmdGVyOjpZ
ZXMpOworCisgICAgZ19pdHBRdWV1ZSA9IGRpc3BhdGNoX3F1ZXVlX2NyZWF0ZSgiY29tLmFwcGxl
LldlYktpdC5pdHBDaGVja1F1ZXVlIiwgTlVMTCk7CisKKyAgICBkaXNwYXRjaF9hc3luYyhnX2l0
cFF1ZXVlLCBbYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyID0gV2ViQ29y
ZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkuaXNvbGF0ZWRDb3B5KCldIHsKKyAgICAg
ICAgZ19jdXJyZW50SVRQU3RhdGUgPSBkZXRlcm1pbmVJVFBTdGF0ZUludGVybmFsKGFwcFdhc0xp
bmtlZE9uT3JBZnRlciwgYnVuZGxlSWRlbnRpZmllcikgPyBJVFBTdGF0ZTo6RW5hYmxlZCA6IElU
UFN0YXRlOjpEaXNhYmxlZDsKKworICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRf
bWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgZGlzcGF0Y2hfcmVsZWFzZShnX2l0cFF1ZXVl
KTsKKyAgICAgICAgICAgIGdfaXRwUXVldWUgPSBudWxscHRyOworICAgICAgICB9KTsKKyAgICB9
KTsKK30KKworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKQoreworICAgIEFTU0VSVCghaXNJ
bldlYktpdENoaWxkUHJvY2VzcygpKTsKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwor
ICAgIGlmIChnX2N1cnJlbnRJVFBTdGF0ZSA+IElUUFN0YXRlOjpJbml0aWFsaXppbmcpCisgICAg
ICAgIHJldHVybiBnX2N1cnJlbnRJVFBTdGF0ZSA9PSBJVFBTdGF0ZTo6RW5hYmxlZDsKKworICAg
IFJFTEVBU0VfQVNTRVJUKGdfaXRwUXVldWUpOworCisgICAgX19ibG9jayBib29sIGlzSVRQRW5h
YmxlZDsKKyAgICBkaXNwYXRjaF9zeW5jKGdfaXRwUXVldWUsIF57CisgICAgICAgIGlzSVRQRW5h
YmxlZCA9IGdfY3VycmVudElUUFN0YXRlID09IElUUFN0YXRlOjpFbmFibGVkOworICAgIH0pOwor
ICAgIHJldHVybiBpc0lUUEVuYWJsZWQ7Cit9CisKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZl
SVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90PiBhdWRpdFRva2VuKQoreworICAgIEFT
U0VSVChpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7CisKKyAgICBpZiAoIWlzUGFyZW50UHJvY2Vzc0FGdWxsV2ViQnJvd3NlcihhdWRpdFRv
a2VuKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBUQ0NBY2Nlc3NQcmVmbGlnaHRSZXN1
bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKKyNpZiAoUExBVEZPUk0oSU9T
KSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApIHx8IChQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwKQor
ICAgIGlmIChhdWRpdFRva2VuKQorICAgICAgICByZXN1bHQgPSBUQ0NBY2Nlc3NQcmVmbGlnaHRX
aXRoQXVkaXRUb2tlbihnZXRrVENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2
ZW50aW9uKCksIGF1ZGl0VG9rZW4udmFsdWUoKSwgbnVsbHB0cik7CisjZW5kaWYKKyAgICByZXR1
cm4gcmVzdWx0ICE9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7Cit9CisKK3N0YXRpYyBzdGQ6
OmF0b21pYzxib29sPiBoYXNDaGVja2VkVXNhZ2VTdHJpbmdzID0gZmFsc2U7Citib29sIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MoKQoreworICAgIEFTU0VSVCghaXNJbldlYktpdENoaWxkUHJv
Y2VzcygpKTsKKworICAgIHN0YXRpYyBib29sIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MgPSBm
YWxzZTsKKworICAgIGlmIChoYXNDaGVja2VkVXNhZ2VTdHJpbmdzKQorICAgICAgICByZXR1cm4g
aGFzUHJvaGliaXRlZFVzYWdlU3RyaW5nczsKKworICAgIE5TRGljdGlvbmFyeSAqaW5mb0RpY3Rp
b25hcnkgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGluZm9EaWN0aW9uYXJ5XTsKKyAgICBSRUxF
QVNFX0FTU0VSVChpbmZvRGljdGlvbmFyeSk7CisKKyAgICAvLyBTZWUgPHJkYXI6Ly9wcm9ibGVt
LzU5OTc5NDY4PiBmb3IgZGV0YWlscyBhYm91dCBob3cgdGhpcyBsaXN0IHdhcyBzZWxlY3RlZC4K
KyAgICBhdXRvIHByb2hpYml0ZWRTdHJpbmdzID0gQFsKKyAgICAgICAgQCJOU1JlbWluZGVyc1Vz
YWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TSG9tZUtpdFVzYWdlRGVzY3JpcHRpb24iLAor
ICAgICAgICBAIk5TQmx1ZXRvb3RoQWx3YXlzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAi
TlNQaG90b0xpYnJhcnlVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0aFNoYXJl
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIZWFsdGhVcGRhdGVVc2FnZURlc2NyaXB0
aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAg
ICAgIEAiTlNMb2NhdGlvbkFsd2F5c0FuZFdoZW5JblVzZVVzYWdlRGVzY3JpcHRpb24iCisgICAg
XTsKKworICAgIGZvciAoTlNTdHJpbmcgKnByb2hpYml0ZWRTdHJpbmcgOiBwcm9oaWJpdGVkU3Ry
aW5ncykgeworICAgICAgICBpZiAoW2luZm9EaWN0aW9uYXJ5IG9iamVjdEZvcktleTpwcm9oaWJp
dGVkU3RyaW5nXSkgeworICAgICAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aEZvcm1hdDpAIltJbi1BcHAgQnJvd3NlciBQcml2YWN5XSAlQCB1c2VkIHByb2hpYml0
ZWQgdXNhZ2Ugc3RyaW5nICVALiIsIFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRp
Zmllcl0sIHByb2hpYml0ZWRTdHJpbmddOworICAgICAgICAgICAgV1RGTG9nQWx3YXlzKG1lc3Nh
Z2UudXRmOCgpLmRhdGEoKSk7CisgICAgICAgICAgICBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdz
ID0gdHJ1ZTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorICAgIGhhc0No
ZWNrZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VT
dHJpbmdzOworfQorCitib29sIGlzUGFyZW50UHJvY2Vzc0FGdWxsV2ViQnJvd3NlcihPcHRpb25h
bDxhdWRpdF90b2tlbl90PiBhdWRpdFRva2VuKQoreworICAgIEFTU0VSVChpc0luV2ViS2l0Q2hp
bGRQcm9jZXNzKCkpOworICAgIFJFTEVBU0VfQVNTRVJUKGF1ZGl0VG9rZW4pOworCisgICAgc3Rh
dGljIGJvb2wgZnVsbFdlYkJyb3dzZXI7CisKKyAgICBzdGF0aWMgZGlzcGF0Y2hfb25jZV90IG9u
Y2U7CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAgICAgICAgZnVsbFdlYkJyb3dzZXIg
PSBXVEY6Omhhc0VudGl0bGVtZW50KGF1ZGl0VG9rZW4udmFsdWUoKSwgImNvbS5hcHBsZS5kZXZl
bG9wZXIud2ViLWJyb3dzZXIiKTsKKyAgICB9KTsKKworICAgIHJldHVybiBmdWxsV2ViQnJvd3Nl
ciB8fCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVu
ZGxlSWRlbnRpZmllcigpKTsKK30KKworc3RhdGljIGJvb2wgaXNGdWxsV2ViQnJvd3Nlcihjb25z
dCBTdHJpbmcmIGJ1bmRsZUlkZW50aWZpZXIpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hp
bGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgZnVsbFdlYkJyb3dzZXIgPSBXVEY6OnBy
b2Nlc3NIYXNFbnRpdGxlbWVudCgiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOwor
CisgICAgLy8gRklYTUU6IFRoZSBidW5kbGUgY2hlY2sgc2hvdWxkIGdvIGF3YXkgb25jZSBleHRl
cm5hbCBhcHBzIGFkb3B0IHRoZSBuZXcgQVBJcy4KKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIg
fHwgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKwor
Ym9vbCBpc0Z1bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFBy
b2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBp
c0Z1bGxXZWJCcm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMy
NDNiMTU1OTQwNDY1OWM5YjUxM2EuLjI4YTI3OTQyMmIzNTYyZjMyYmU5OWFhMzA1YzY3YmI4NjRk
ZGM5ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29v
a2llU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29v
a2llU3RvcmUuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5j
bHVkZSAiQVBJSFRUUENvb2tpZVN0b3JlLmgiCiAKKyNpbmNsdWRlICJEZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5oIgogI2luY2x1ZGUgIldlYkNvb2tpZU1hbmFnZXJQcm94eS5oIgogI2luY2x1ZGUg
IldlYlByb2Nlc3NQb29sLmgiCiAjaW5jbHVkZSAiV2Vic2l0ZURhdGFTdG9yZS5oIgpAQCAtMzUs
MTIgKzM2LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0hUVFBDb29raWVBY2NlcHRQb2xpY3kuaD4K
ICNpbmNsdWRlIDxXZWJDb3JlL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oPgogCi0jaWYgVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMvSFRUUENvb2tpZVN0
b3JlQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmluZSBJTVBMRU1FTlRfSU5fQVBQX0JST1dTRVJf
UFJJVkFDWV9FTkFCTEVEIGZhbHNlCi0jZW5kaWYKLQogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsK
IAogbmFtZXNwYWNlIEFQSSB7CkBAIC02Niw3ICs2MSw3IEBAIHZvaWQgSFRUUENvb2tpZVN0b3Jl
OjpmaWx0ZXJBcHBCb3VuZENvb2tpZXMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkNvb2tpZT4mIGNv
b2tpCiAgICAgVmVjdG9yPFdlYkNvcmU6OkNvb2tpZT4gYXBwQm91bmRDb29raWVzOwogI2lmIFBM
QVRGT1JNKElPU19GQU1JTFkpCiAgICAgbV9vd25pbmdEYXRhU3RvcmUtPmdldEFwcEJvdW5kRG9t
YWlucyhbY29va2llcywgYXBwQm91bmRDb29raWVzID0gV1RGTW92ZShhcHBCb3VuZENvb2tpZXMp
LCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoYXV0byYg
ZG9tYWlucykgbXV0YWJsZSB7Ci0gICAgICAgIGlmICghZG9tYWlucy5pc0VtcHR5KCkgJiYgSU1Q
TEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCkgeworICAgICAgICBpZiAoIWRv
bWFpbnMuaXNFbXB0eSgpICYmICFpc0Z1bGxXZWJCcm93c2VyKCkpIHsKICAgICAgICAgICAgIGZv
ciAoYXV0byYgY29va2llIDogY29va2llcykgewogICAgICAgICAgICAgICAgIGlmIChkb21haW5z
LmNvbnRhaW5zKFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9t
SG9zdChjb29raWUuZG9tYWluKSkpCiAgICAgICAgICAgICAgICAgICAgIGFwcEJvdW5kQ29va2ll
cy5hcHBlbmQoY29va2llKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
QVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCmluZGV4IDQzMWZjZWY3ODZjOWI1YzMwMDQ3NmEzMTJh
NDc4OGUwOTQwNDRlNDkuLjcwMjc4ZmJkZTAyZjczZGVkNDBkNzkzZDAxOGU0OGFlOWI1NWZiMzAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJh
dGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1
cmF0aW9uLmNwcApAQCAtMzUsMTIgKzM1LDYgQEAKICNpbmNsdWRlICJXZWJVUkxTY2hlbWVIYW5k
bGVyLmgiCiAjaW5jbHVkZSAiV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHkuaCIKIAotI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1BhZ2VD
b25maWd1cmF0aW9uQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmluZSBQQUdFX0NPTkZJR1VSQVRJ
T05fQURESVRJT05TCi0jZW5kaWYKLQogI2lmIEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkK
ICNpbmNsdWRlICJBUElBcHBsaWNhdGlvbk1hbmlmZXN0LmgiCiAjZW5kaWYKQEAgLTU0LDcgKzQ4
LDYgQEAgUmVmPFBhZ2VDb25maWd1cmF0aW9uPiBQYWdlQ29uZmlndXJhdGlvbjo6Y3JlYXRlKCkK
IH0KIAogUGFnZUNvbmZpZ3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKCkKLVBBR0VfQ09ORklH
VVJBVElPTl9BRERJVElPTlMKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKaW5kZXggMmJhZDFkNmU1Mzg4NjEyNTQ3MmM2MGU5MTQ4NzFmODIxODVlNGViMy4u
ZGQyMzIwMDVkMGJkNGU3NGYxNDM2NDZjZjZlMGQ1MjYwNmM0Y2U2NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAi
QXV0aGVudGljYXRpb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiQXV0aGVudGljYXRvck1hbmFnZXIu
aCIKICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgiCisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dz
ZXJDaGVja3MuaCIKICNpbmNsdWRlICJEb3dubG9hZFByb3h5LmgiCiAjaW5jbHVkZSAiRHJhd2lu
Z0FyZWFNZXNzYWdlcy5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVhUHJveHkuaCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCA5MjgxZTFjZTQzMjliMzQy
YzMzYWQ4OTA3ZTM4NzMxNmJmZGYwMjFkLi5lODlmMDY5ZjRiNjM2ODRhMmEzMjliMjU5YmY0Mzk0
ZjcyZDk2MjIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
CkBAIC0xNDEsMTUgKzE0MSw2IEBACiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWRMZWFrQ291bnRl
ci5oPgogI2VuZGlmCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2luY2x1ZGUgPFdl
YktpdEFkZGl0aW9ucy9XZWJQcm9jZXNzUG9vbEFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUg
V0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlMKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJ
VElPTlNfMgotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18zCi0jZGVmaW5lIFdF
Ql9QUk9DRVNTX1BPT0xfQURESVRJT05TXzQKLSNlbmRpZgotCiAjZGVmaW5lIFdFQlBST0NFU1NQ
T09MX1JFTEVBU0VfTE9HKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhjaGFubmVsLCAi
JXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCiAjZGVmaW5l
IFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HX0VSUk9SKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxF
QVNFX0xPR19FUlJPUihjaGFubmVsLCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMs
ICMjX19WQV9BUkdTX18pCiAjZGVmaW5lIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HX0lGX0FM
TE9XRUQoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0lGKHNlc3Npb25JRC5pc0Fsd2F5
c09uTG9nZ2luZ0FsbG93ZWQoKSwgY2hhbm5lbCwgIiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10
LCB0aGlzLCAjI19fVkFfQVJHU19fKQpAQCAtMjU1LDcgKzI0Niw2IEBAIFdlYlByb2Nlc3NQb29s
OjpXZWJQcm9jZXNzUG9vbChBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiYgY29uZmlndXJh
dGlvbikKICNlbmRpZgogICAgICwgbV9hbHdheXNSdW5zQXRCYWNrZ3JvdW5kUHJpb3JpdHkobV9j
b25maWd1cmF0aW9uLT5hbHdheXNSdW5zQXRCYWNrZ3JvdW5kUHJpb3JpdHkoKSkKICAgICAsIG1f
c2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlvbihtX2NvbmZpZ3VyYXRpb24tPnNob3VsZFRh
a2VVSUJhY2tncm91bmRBc3NlcnRpb24oKSkKLSAgICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9O
UwogICAgICwgbV91c2VyT2JzZXJ2YWJsZVBhZ2VDb3VudGVyKFt0aGlzXShSZWZDb3VudGVyRXZl
bnQpIHsgdXBkYXRlUHJvY2Vzc1N1cHByZXNzaW9uU3RhdGUoKTsgfSkKICAgICAsIG1fcHJvY2Vz
c1N1cHByZXNzaW9uRGlzYWJsZWRGb3JQYWdlQ291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50
KSB7IHVwZGF0ZVByb2Nlc3NTdXBwcmVzc2lvblN0YXRlKCk7IH0pCiAgICAgLCBtX2hpZGRlblBh
Z2VUaHJvdHRsaW5nQXV0b0luY3JlYXNlc0NvdW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkg
eyBtX2hpZGRlblBhZ2VUaHJvdHRsaW5nVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7IH0pCkBAIC0y
NzEsNyArMjYxLDcgQEAgV2ViUHJvY2Vzc1Bvb2w6OldlYlByb2Nlc3NQb29sKEFQSTo6UHJvY2Vz
c1Bvb2xDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogICAgICAgICBXVEY6OnNldFByb2Nl
c3NQcml2aWxlZ2VzKGFsbFByaXZpbGVnZXMoKSk7CiAgICAgICAgIFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6cGVybWl0UHJvY2Vzc1RvVXNlQ29va2llQVBJKHRydWUpOwogICAgICAg
ICBQcm9jZXNzOjpzZXRJZGVudGlmaWVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyOjpnZW5l
cmF0ZSgpKTsKLSAgICAgICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfNAorICAgICAgICBk
ZXRlcm1pbmVJVFBTdGF0ZSgpOwogICAgIH0pOwogCiAgICAgaWYgKCFtX3dlYnNpdGVEYXRhU3Rv
cmUgJiYgV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlRXhpc3RzKCkp
CkBAIC02MTMsNyArNjAzLDIwIEBAIE5ldHdvcmtQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29s
OjplbnN1cmVOZXR3b3JrUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3JlKiB3aXRoCiAgICAgV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4gc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluOwogICAgIEhh
c2hTZXQ8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+IGFwcEJvdW5kRG9tYWluczsKICAgICBX
ZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBtYW51YWxQcmV2YWxlbnRSZXNvdXJjZTsKLSAgICBX
RUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18yCisKKyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVk
ID0gZG9lc0FwcEhhdmVJVFBFbmFibGVkKCk7CisgICAgaWYgKHdpdGhXZWJzaXRlRGF0YVN0b3Jl
ICYmICF3aXRoV2Vic2l0ZURhdGFTdG9yZS0+aXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkgewor
ICAgICAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNlRW5h
YmxlZDsKKyAgICAgICAgd2l0aFdlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRp
c3RpY3NFbmFibGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBp
ZiAobV93ZWJzaXRlRGF0YVN0b3JlICYmICFtX3dlYnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVF
eHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9
IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIG1fd2Vic2l0ZURhdGFTdG9yZS0+c2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGlj
cyk7CisgICAgfSBlbHNlIGlmIChXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlRXhp
c3RzKCkgJiYgIVdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+aXNJdHBTdGF0
ZUV4cGxpY2l0bHlTZXQoKSkgeworICAgICAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
ID0gbV90Y2NQcmVmZXJlbmNlRW5hYmxlZDsKKyAgICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZGVm
YXVsdERhdGFTdG9yZSgpLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UKKyAgICAgICAgZW5hYmxlUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisKICAgICBpZiAod2l0
aFdlYnNpdGVEYXRhU3RvcmUpIHsKICAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGlj
cyA9IHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgp
OwogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCkBAIC04ODQsNyArODg3LDEw
IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlc29sdmVQYXRoc0ZvclNhbmRib3hFeHRlbnNpb25z
KCkKIAogV2ViUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2ViUHJvY2Vz
cyhXZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0YVN0b3JlLCBXZWJQcm9jZXNzUHJveHk6Oklz
UHJld2FybWVkIGlzUHJld2FybWVkKQogewotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05T
XzMKKyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVkID0gZG9lc0FwcEhhdmVJVFBFbmFibGVkKCk7
CisgICAgaWYgKHdlYnNpdGVEYXRhU3RvcmUgJiYgIXdlYnNpdGVEYXRhU3RvcmUtPmlzSXRwU3Rh
dGVFeHBsaWNpdGx5U2V0KCkpCisgICAgICAgIHdlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNl
TG9hZFN0YXRpc3RpY3NFbmFibGVkKG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQpOworCiAgICAgYXV0
byBwcm9jZXNzUHJveHkgPSBXZWJQcm9jZXNzUHJveHk6OmNyZWF0ZSgqdGhpcywgd2Vic2l0ZURh
dGFTdG9yZSwgaXNQcmV3YXJtZWQpOwogICAgIGF1dG8mIHByb2Nlc3MgPSBwcm9jZXNzUHJveHku
Z2V0KCk7CiAgICAgaW5pdGlhbGl6ZU5ld1dlYlByb2Nlc3MocHJvY2Vzcywgd2Vic2l0ZURhdGFT
dG9yZSwgaXNQcmV3YXJtZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCmlu
ZGV4IDY4NTEzMTVjYWM1MDY5MDY4YTY3NjQzNjk0NjQyOTdiNjFkMTAyYzEuLmZiM2IyMWZkOTM2
MjhhMzRhZTNkNGRlY2ZkNGU3OTdjZjY1MzFmNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0
b3JlQ29jb2EubW0KQEAgLTI3LDYgKzI3LDcgQEAKICNpbXBvcnQgIldlYnNpdGVEYXRhU3RvcmUu
aCIKIAogI2ltcG9ydCAiQ29va2llU3RvcmFnZVV0aWxzQ0YuaCIKKyNpbXBvcnQgIkRlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLmgiCiAjaW1wb3J0ICJTYW5kYm94VXRpbGl0aWVzLmgiCiAjaW1wb3J0
ICJTdG9yYWdlTWFuYWdlci5oIgogI2ltcG9ydCAiV2ViRnJhbWVQb2xpY3lMaXN0ZW5lclByb3h5
LmgiCkBAIC00NSwxMiArNDYsNiBAQAogI2ltcG9ydCA8d3RmL1VSTC5oPgogI2ltcG9ydCA8d3Rm
L3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNp
bXBvcnQgPFdlYktpdEFkZGl0aW9ucy9XZWJzaXRlRGF0YVN0b3JlQWRkaXRpb25zLmg+Ci0jZWxz
ZQotI2RlZmluZSBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TCi0jZW5kaWYKLQogI2lmIFBM
QVRGT1JNKElPU19GQU1JTFkpCiAjaW1wb3J0IDxVSUtpdC9VSUFwcGxpY2F0aW9uLmg+CiAjaW1w
b3J0IDxwYWwvaW9zL01hbmFnZWRDb25maWd1cmF0aW9uU29mdExpbmsuaD4KQEAgLTQ2MywxMSAr
NDU4LDIzIEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6aW5pdGlhbGl6ZUFwcEJvdW5kRG9tYWlu
cyhGb3JjZVJlaW5pdGlhbGl6YXRpb24gZm9yY2VSZWluCiAgICAgfSk7CiB9CiAKK3ZvaWQgV2Vi
c2l0ZURhdGFTdG9yZTo6YWRkVGVzdERvbWFpbnMoKSBjb25zdAoreworICAgIGlmIChhcHBCb3Vu
ZERvbWFpbnMoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byBidW5kbGVJRCA9IFdlYkNvcmU6
OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpOworICAgICAgICBhdXRvIGFwcEJvdW5kRG9t
YWluc1Rlc3RpbmcgPSBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGJ1bmRsZUlEKTsKKyAgICAg
ICAgaWYgKGFwcEJvdW5kRG9tYWluc1Rlc3RpbmcpIHsKKyAgICAgICAgICAgIGZvciAoYXV0byYg
ZG9tYWluIDogKmFwcEJvdW5kRG9tYWluc1Rlc3RpbmcpCisgICAgICAgICAgICAgICAgYXBwQm91
bmREb21haW5zKCkuYWRkKGRvbWFpbik7CisgICAgICAgIH0KKyAgICB9Cit9CisKIHZvaWQgV2Vi
c2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmREb21haW5zKENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgSGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4mLCBjb25zdCBIYXNo
U2V0PFN0cmluZz4mKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKIHsKICAgICBpZiAoaGFz
SW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFpbnMpIHsKICAgICAgICAgaWYgKG1faXNJbkFwcEJyb3dz
ZXJQcml2YWN5VGVzdE1vZGVFbmFibGVkKSB7Ci0gICAgICAgICAgICBXRUJTSVRFX0RBVEFfU1RP
UkVfQURESVRJT05TOworICAgICAgICAgICAgYWRkVGVzdERvbWFpbnMoKTsKICAgICAgICAgfQog
ICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihhcHBCb3VuZERvbWFpbnMoKSwgYXBwQm91bmRTY2hl
bWVzKCkpOwogICAgICAgICByZXR1cm47CkBAIC00NzksNyArNDg2LDcgQEAgdm9pZCBXZWJzaXRl
RGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChj
b25zdCBIYXNoU2UKICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0gKCkgbXV0YWJsZSB7CiAgICAgICAgICAgICBBU1NF
UlQoaGFzSW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFpbnMpOwogICAgICAgICAgICAgaWYgKG1faXNJ
bkFwcEJyb3dzZXJQcml2YWN5VGVzdE1vZGVFbmFibGVkKSB7Ci0gICAgICAgICAgICAgICAgV0VC
U0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgICAgICAgICBhZGRUZXN0RG9tYWlu
cygpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoYXBwQm91
bmREb21haW5zKCksIGFwcEJvdW5kU2NoZW1lcygpKTsKICAgICAgICAgfSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgK
aW5kZXggYzZmYmJjNDkyMzlmNjk1YThiYTM0MWVmNjkzMDU3Y2VmMWVhYjZkMC4uMGE3ZjgzZDJi
N2RjNjM1MzhjODU3ODgwMGU2MTdhZmZjNWQzZjE5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaApAQCAtMzEyLDYg
KzMxMiw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgZW51bSBjbGFzcyBGb3JjZVJlaW5pdGlh
bGl6YXRpb24gOiBib29sIHsgTm8sIFllcyB9OwogICAgIHZvaWQgaW5pdGlhbGl6ZUFwcEJvdW5k
RG9tYWlucyhGb3JjZVJlaW5pdGlhbGl6YXRpb24gPSBGb3JjZVJlaW5pdGlhbGl6YXRpb246Ok5v
KTsKKyAgICB2b2lkIGFkZFRlc3REb21haW5zKCkgY29uc3Q7CiAKICAgICB2b2lkIGZldGNoRGF0
YUFuZEFwcGx5KE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBPcHRpb25TZXQ8V2Vic2l0ZURh
dGFGZXRjaE9wdGlvbj4sIFJlZlB0cjxXb3JrUXVldWU+JiYsIEZ1bmN0aW9uPHZvaWQoVmVjdG9y
PFdlYnNpdGVEYXRhUmVjb3JkPik+JiYgYXBwbHkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJL
aXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAzMDQyMGQ5MDZjMDJkM2M4ZmVjZTBh
ZGNhZGJiZjliNGEwMDg3ZDZiLi44YThhN2JlZDliYWM1YTI2MTNmM2Q4OWYwZDcwZTY5ZjRlOTVi
YzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTk2Myw2ICs5NjMsNyBAQAogCQk0OUJDQTE5MjIzQTE3NzY2MDAyOEE4MzYgLyogQVBJ
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTkxMjNBMTc3NjYwMDI4QTgzNiAvKiBBUElS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovOyB9OwogCQk0OUJDQTE5NTIzQTE4
Q0ZEMDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5h
bC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0Ex
OTAyM0ExNzU0OTAwMjhBODM2IC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5
SW50ZXJuYWwuaCAqLzsgfTsKIAkJNDlCQ0ExOTcyM0ExOTMwRDAwMjhBODM2IC8qIEFQSVJlc291
cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJDQTE5NjIzQTE4RjYyMDAyOEE4MzYgLyogQVBJUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLzsgfTsKKwkJNDlEQUEzOEMyNENCQTFBODAw
NzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERl
ZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovOyB9OwogCQk0OUVDQTQxQzIzRkNBNUQ4MDAyMzM1
OEQgLyogUG9saWN5RGVjaXNpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQ5RUNBNDFCMjNGQ0E0ODYwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5o
ICovOyB9OwogCQk0OUZCRUZGRDIzOUIwMTFEMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0ZpcnN0UGFydHkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0OUZCRUZGQzIzOUIwMTFEMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0ZpcnN0UGFydHkubW0gKi87IH07CiAJCTQ5RkJFRkZGMjM5QjAxMkYwMEJEMDMyRiAv
KiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RkJFRkZFMjM5QjAxMkYwMEJEMDMyRiAv
KiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5tbSAqLzsgfTsKQEAgLTM1ODYs
NiArMzU4Nyw4IEBACiAJCTQ5QkNBMTkwMjNBMTc1NDkwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Jlc291
cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNDlCQ0ExOTEyM0ExNzc2NjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0
YXRpc3RpY3NGaXJzdFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSVJlc291cmNlTG9hZFN0YXRp
c3RpY3NGaXJzdFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5QkNBMTk2
MjNBMThGNjIwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OURBQTM4QjI0Q0JBMUE4MDA3OTNENzUgLyog
RGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlEQUEz
OEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTQ5RUNBNDFCMjNGQ0E0ODYwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQb2xpY3lEZWNpc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk0OUZCRUZGQTIzOUFEOTc4MDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Ro
aXJkUGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJk
UGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlGQkVGRkIyMzlBREIxODAw
QkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC03NTIzLDYgKzc1MjYsOCBAQAogCQkJCUMxNEQzMDY1MjRCNzk0
RTcwMDQ4MDM4NyAvKiBYUENFbmRwb2ludC5tbSAqLywKIAkJCQlDMTREMzA2ODI0Qjc5NEU3MDA0
ODAzODcgLyogWFBDRW5kcG9pbnRDbGllbnQuaCAqLywKIAkJCQlDMTREMzA2NjI0Qjc5NEU3MDA0
ODAzODcgLyogWFBDRW5kcG9pbnRDbGllbnQubW0gKi8sCisJCQkJNDlEQUEzOEIyNENCQTFBODAw
NzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovLAorCQkJCTQ5REFBMzhEMjRD
QkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oICovLAogCQkJKTsKIAkJ
CW5hbWUgPSBjb2NvYTsKIAkJCXBhdGggPSBDb2NvYTsKQEAgLTEyOTc5LDYgKzEyOTg0LDcgQEAK
IAkJCQkyRDExQjdEMzIxMjZBMjgzMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTcwLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTJEMTFCN0Q0MjEyNkEyODMwMDZGODg3OCAvKiBVbmlmaWVkU291cmNl
NzEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQ1NEMzMTgyMTJGM0IzMzAwNDlDMTc0IC8qIFVu
aWZpZWRTb3VyY2U3MS1tbS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTQ5REFBMzhDMjRDQkExQTgw
MDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTJEMTFCN0Q1MjEyNkEyODMwMDZGODg3OCAvKiBVbmlmaWVkU291cmNlNzIuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMkQ1NEMzMTEyMTJGM0IzMzAwNDlDMTc0IC8qIFVuaWZpZWRTb3VyY2U3Mi1t
bS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTJENTRDMzEwMjEyRjNCMzMwMDQ5QzE3NCAvKiBVbmlm
aWVkU291cmNlNzMtbW0ubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3ZDRiOTRjMmQ0NmNhNmExOWJjZDBhZTRkZTQ3
YjU5ZGQ3MDg4Yzg2Li5iMTM1YjEwODNlNTJjOGFjZTFiNjM0NDRhMGU5YmUxMzE2MjE3MzQ1IDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjAgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBs
ZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2Vi
S2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXBsYWNlIFdlYktpdCBB
ZGRpdGlvbnMgbWFjcm9zIHdpdGggY29kZSB0byBzZXQgYSBkaWZmZXJlbnQgYnVuZGxlCisgICAg
ICAgIGlkZW50aWZpZXIgaW5kaWNhdGluZyB0aGF0IHdlIHdhbnQgdG8gcnVuIGFuIEFwcC1Cb3Vu
ZCBEb21haW5zIHRlc3QuCisKKyAgICAgICAgUmVtb3ZlICNpZiBVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKSBjaGVjayBzbyB3ZSBydW4gdGhlc2UgdGVzdHMgb24gRVdTLgorCisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tOgorICAg
ICAgICAoY2xlYW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MpOgorICAgICAgICAo
aW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MpOgorCiAyMDIwLTA3LTI4
ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAogICAgICAgICBbd2Via2l0
Y29yZXB5XSBBZGQgc3RyaW5nX3V0aWxzIChQYXJ0IDMpCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW0gYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW0K
aW5kZXggZTc1MDA5YjVlYTQ4YjU0ZThhNjYxMzNkMjU4Yzg2MzBmZTU0OWNkNy4uMzY5ZmZlNTIz
MThlMDc0YjBmNDRmMWNkMDYzNmUzODk5NmQzMTczNCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tCisrKyBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2VyUHJpdmFjeS5t
bQpAQCAtNDUsOSArNDUsNiBAQAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAotI2lmIFVT
RShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvSW5BcHBCcm93
c2VyUHJpdmFjeVRlc3RBZGRpdGlvbnMuaD4KLQogc3RhdGljIGJvb2wgaXNEb25lOwogCiBAaW50
ZXJmYWNlIEFwcEJvdW5kRG9tYWluRGVsZWdhdGUgOiBOU09iamVjdCA8V0tOYXZpZ2F0aW9uRGVs
ZWdhdGU+CkBAIC0xMzEsMTQgKzEyOCwxNCBAQCBAZW5kCiBzdGF0aWMgdm9pZCBjbGVhblVwSW5B
cHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV2ViQ29yZTo6Y2xlYXJBcHBs
aWNhdGlvbkJ1bmRsZUlkZW50aWZpZXJUZXN0aW5nT3ZlcnJpZGUoKTsKLSAgICBJTl9BUFBfQlJP
V1NFUl9QUklWQUNZX0FERElUSU9OU18yCisgICAgV2ViQ29yZTo6c2V0QXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKCJjb20uYXBwbGUuV2ViS2l0LlRlc3RXZWJLaXRBUEkiKTsKIH0KIAogc3Rh
dGljIHZvaWQgaW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MoKQogewog
ICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKICAgICBXZWJDb3JlOjpjbGVhckFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgpOwotICAgIElOX0FQUF9CUk9X
U0VSX1BSSVZBQ1lfQURESVRJT05TCisgICAgV2ViQ29yZTo6c2V0QXBwbGljYXRpb25CdW5kbGVJ
ZGVudGlmaWVyKCJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiKTsKIH0KIAogVEVT
VChJbkFwcEJyb3dzZXJQcml2YWN5LCBOb25BcHBCb3VuZERvbWFpbkZhaWxlZFVzZXJTY3JpcHRB
dFN0YXJ0KQpAQCAtMTMzOCw2ICsxMzM1LDQgQEAgVEVTVChJbkFwcEJyb3dzZXJQcml2YWN5LCBB
cHBCb3VuZEN1c3RvbVNjaGVtZSkKICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9u
ZSk7CiB9CiAKLSNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotCiAjZW5kaWYgLy8g
UExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjMGVlODY0ZjRhMWFkNjZiNDM1M2U4MGI5Y2Y3
ZjhlZDY0NjYyZmY0Li40Y2Y2YTcyYWMzNTA3ZGYwMjllMzllZWZkMDc4YjUwNjk4NzAyZTJlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5l
X2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBj
b2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1
Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRl
c3RFeHBlY3RhdGlvbnM6CisgICAgICAgIFRoZXNlIHRlc3RzIGFyZSBub3cgZXhwZWN0ZWQgdG8g
cGFzcy4KKwogMjAyMC0wNy0yOCAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4K
IAogICAgICAgICBBZGQgdGVzdCBleHBlY3RhdGlvbnMgYW5kIGJhc2VsaW5lcyBmb3IgaU9TIDE0
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCBkYTBmNWVmYmIwMmQyZGE4YmNlZTQ0MzY1NDMyNDU3ZWEx
YTRhYjE5Li45NTEzNjNmNTkwYjhjOGJlYTRkYjM0OGUzZWQ1ZWIxZjllODRkZTliIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMKQEAgLTE2NSw3ICsxNjUsNyBAQCBodHRwL3Rlc3RzL25hdmlnYXRpb24vdXNl
cmFnZW50LXJlbG9hZC5waHAgWyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9vcGVu
ZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgU2tpcCBdCiBzdG9yYWdlL2luZGV4
ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsgU2tpcCBdCiBmYXN0L2Zvcm1zL2NhbGwtdGV4dC1k
aWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRtbCBbIFNraXAgXQotaHR0cC90
ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFNraXAgXQoraHR0cC90ZXN0cy9pbi1hcHAt
YnJvd3Nlci1wcml2YWN5LyBbIFBhc3MgXQogCiAKICMgT25seSBNYWMgYW5kIGlPUyBoYXZlIGFu
IGltcGxlbWVudGF0aW9uIG9mIFVJU2NyaXB0Q29udHJvbGxlcjo6ZG9Bc3luY1Rhc2soKS4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405400</attachid>
            <date>2020-07-28 13:25:27 -0700</date>
            <delta_ts>2020-07-28 13:40:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728132526.patch</filename>
            <type>text/plain</type>
            <size>35417</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjY1ODgzZGMzZDc4NjAxM2NmZjdkOWJiMjY0YjA4MWYwMzU5NDkyMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTYzLDcgKzYzLDYgQEAKICNpbXBvcnQgPFdlYktpdEFk
ZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmluZSBO
RVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNkZWZpbmUgTkVUV09SS19TRVNTSU9O
X0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAjaW1wb3J0ICJEZXZpY2VNYW5hZ2Vt
ZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MSwyOSBAQCB2b2lkIFNlc3Npb25XcmFwcGVy
Ojppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24sIE5l
dHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNlc3Npb25XaXRoQ29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdldCgpIGRlbGVnYXRlUXVldWU6W05T
T3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNpZiBIQVZFKFNFU1NJT05fQ0xFQU5V
UCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFudXAoTmV0d29ya1Nlc3Npb25Db2Nv
YSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBEb24ndCBvdmVycmlkZSBhbiBleHBs
aWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNldCkKKyAgICAgICAgcmV0dXJuOwor
CisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQorICAgIGF1dG8gcGFyZW50QXVk
aXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9BU1NFUlQocGFyZW50QXVkaXRUb2tl
bik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisKKyAgICBib29sIGl0cEVuYWJsZWQg
PSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBhcmVudEF1ZGl0VG9rZW4pOworICAg
IGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5pc1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAhPSBwYXNzZWRFbmFibGVkU3RhdGUp
CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBlbmFibGVkIHN0YXRlICglZCkgZG9l
cyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRwRW5hYmxlZCwgcGFzc2VkRW5hYmxl
ZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKHBh
c3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgorfQorI2VuZGlmCisKIE5ldHdvcmtT
ZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdvcmtQ
cm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAg
ICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycykKICAgICAsIG1f
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMuYm91bmRJbnRlcmZhY2VJZGVudGlm
aWVyKQpAQCAtMTI5Miw3ICsxMzE0LDcgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNvY29hOjppbml0
aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZpZ2F0aW5nVG9BcHBCb3UKIFNlc3Np
b25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2soY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBXZWJDb3JlOjpTdG9yZWRDcmVk
ZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgT3B0aW9uYWw8TmF2aWdhdGlu
Z1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAgICAg
YXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA6IE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElPTlNf
MikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKG5ldHdvcmtQcm9jZXNz
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkKICAgICAgICAg
c2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6
Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoYXV0byog
c3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Npb24oKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZkN2U0M2YxM2JlZgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hl
Y2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWluOwor
fQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdz
KCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRBcHBC
b3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOworYm9vbCBzaG91bGRCZVRyZWF0ZWRB
c0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpOwordm9pZCBkZXRlcm1pbmVJVFBT
dGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKK2Jvb2wgZG9lc1BhcmVudFBy
b2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90Pik7Citib29sIGlzRnVs
bFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlv
bmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjUzMWNmYTg3YzliYmYwODk0Mzc0NTllOTNjZTE3ZjdmMmQ4MzUzNDIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZp
Zy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKworI2ltcG9ydCAiVmVy
c2lvbkNoZWNrcy5oIgorI2ltcG9ydCA8VENDL1RDQy5oPgorI2ltcG9ydCA8V2ViQ29yZS9SZWdp
c3RyYWJsZURvbWFpbi5oPgorI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVj
a3MuaD4KKyNpbXBvcnQgPHd0Zi9IYXNoTWFwLmg+CisjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgor
I2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisjaW1wb3J0IDx3dGYvY29jb2EvRW50aXRsZW1l
bnRzLmg+CisjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CisKK1NPRlRfTElOS19QUklW
QVRFX0ZSQU1FV09SSyhUQ0MpCitTT0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHQsIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCwgKENGU3RyaW5nUmVmIHNlcnZpY2UsIENGRGljdGlvbmFy
eVJlZiBvcHRpb25zKSwgKHNlcnZpY2UsIG9wdGlvbnMpKQorU09GVF9MSU5LKFRDQywgVENDQWNj
ZXNzUHJlZmxpZ2h0V2l0aEF1ZGl0VG9rZW4sIFRDQ0FjY2Vzc1ByZWZsaWdodFJlc3VsdCwgKENG
U3RyaW5nUmVmIHNlcnZpY2UsIGF1ZGl0X3Rva2VuX3QgdG9rZW4sIENGRGljdGlvbmFyeVJlZiBv
cHRpb25zKSwgKHNlcnZpY2UsIHRva2VuLCBvcHRpb25zKSkKK1NPRlRfTElOS19DT05TVEFOVChU
Q0MsIGtUQ0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24sIENGU3Ry
aW5nUmVmKQorCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdGF0aWMgYm9vbCBpc0Z1bGxXZWJC
cm93c2VyKGNvbnN0IFN0cmluZyYpOworCitib29sIHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dz
ZXIoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICByZXR1cm4gYnVuZGxlSUQgPT0gImNv
bS5hcHBsZS5XZWJLaXQuVGVzdFdlYktpdEFQSSJfcyB8fCBidW5kbGVJRCA9PSAiY29tLmFwcGxl
LldlYktpdC5XZWJLaXRUZXN0UnVubmVyIl9zOworfQorCitPcHRpb25hbDxWZWN0b3I8V2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0
cmluZyYgYnVuZGxlSUQpCit7CisgICAgaWYgKGJ1bmRsZUlELmlzTnVsbCgpKQorICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgc3RhdGljIGF1dG8gYXBwQm91bmREb21haW5MaXN0
ID0gbWFrZU5ldmVyRGVzdHJveWVkKEhhc2hNYXA8U3RyaW5nLCBWZWN0b3I8V2ViQ29yZTo6UmVn
aXN0cmFibGVEb21haW4+PiB7CisgICAgICAgIHsiaW5BcHBCcm93c2VyUHJpdmFjeVRlc3RJZGVu
dGlmaWVyIl9zLCBWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+IHsgV2ViQ29yZTo6
UmVnaXN0cmFibGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21SZWdpc3RyYWJsZURvbWFpblN0
cmluZygiMTI3LjAuMC4xIikgfX0sCisgICAgfSk7CisKKyAgICBhdXRvIGFwcEJvdW5kRG9tYWlu
SXRlciA9IGFwcEJvdW5kRG9tYWluTGlzdC0+ZmluZChidW5kbGVJRCk7CisgICAgaWYgKGFwcEJv
dW5kRG9tYWluSXRlciAhPSBhcHBCb3VuZERvbWFpbkxpc3QtPmVuZCgpKQorICAgICAgICByZXR1
cm4gYXBwQm91bmREb21haW5JdGVyLT52YWx1ZTsKKworICAgIHJldHVybiBXVEY6Om51bGxvcHQ7
Cit9CisKKyNpZiBBU1NFUlRfRU5BQkxFRAorc3RhdGljIGJvb2wgaXNJbldlYktpdENoaWxkUHJv
Y2VzcygpCit7CisgICAgc3RhdGljIGJvb2wgaXNJblN1YlByb2Nlc3M7CisKKyAgICBzdGF0aWMg
ZGlzcGF0Y2hfb25jZV90IG9uY2U7CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAgICAg
ICAgTlNTdHJpbmcgKmJ1bmRsZUlkZW50aWZpZXIgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1
bmRsZUlkZW50aWZpZXJdOworICAgICAgICBpc0luU3ViUHJvY2VzcyA9IFtidW5kbGVJZGVudGlm
aWVyIGhhc1ByZWZpeDpAImNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudCJdCisgICAgICAgICAg
ICB8fCBbYnVuZGxlSWRlbnRpZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0Lk5ldHdv
cmtpbmciXQorICAgICAgICAgICAgfHwgW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29t
LmFwcGxlLldlYktpdC5HUFUiXTsKKyAgICB9KTsKKworICAgIHJldHVybiBpc0luU3ViUHJvY2Vz
czsKK30KKyNlbmRpZgorCitlbnVtIGNsYXNzIElUUFN0YXRlIDogdWludDhfdCB7CisgICAgVW5p
bml0aWFsaXplZCwKKyAgICBJbml0aWFsaXppbmcsCisgICAgRW5hYmxlZCwKKyAgICBEaXNhYmxl
ZAorfTsKKworc3RhdGljIHN0ZDo6YXRvbWljPElUUFN0YXRlPiBnX2N1cnJlbnRJVFBTdGF0ZSA9
IElUUFN0YXRlOjpVbmluaXRpYWxpemVkOworCitzdGF0aWMgYm9vbCBoYXNSZXF1ZXN0ZWRDcm9z
c1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKQoreworICAgIEFTU0VSVCghaXNJbldlYktpdENo
aWxkUHJvY2VzcygpKTsKKworICAgIHN0YXRpYyBzdGQ6OmF0b21pYzxib29sPiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb24gPSBbW05TQnVuZGxlIG1haW5CdW5kbGVd
IG9iamVjdEZvckluZm9EaWN0aW9uYXJ5S2V5OkAiTlNDcm9zc1dlYnNpdGVUcmFja2luZ1VzYWdl
RGVzY3JpcHRpb24iXTsKKyAgICByZXR1cm4gaGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRlVHJhY2tp
bmdQZXJtaXNzaW9uOworfQorCitzdGF0aWMgYm9vbCBkZXRlcm1pbmVJVFBTdGF0ZUludGVybmFs
KGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyLCBjb25zdCBTdHJpbmcmIGJ1bmRsZUlkZW50aWZp
ZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKCFpc0lu
V2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgaWYgKCFhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIp
CisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICghaXNGdWxsV2ViQnJvd3NlcihidW5k
bGVJZGVudGlmaWVyKSAmJiAhaGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRlVHJhY2tpbmdQZXJtaXNz
aW9uKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgVENDQWNjZXNzUHJlZmxpZ2h0UmVz
dWx0IHJlc3VsdCA9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7CisjaWYgKFBMQVRGT1JNKElP
UykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExB
VEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkK
KyAgICByZXN1bHQgPSBUQ0NBY2Nlc3NQcmVmbGlnaHQoZ2V0a1RDQ1NlcnZpY2VXZWJLaXRJbnRl
bGxpZ2VudFRyYWNraW5nUHJldmVudGlvbigpLCBudWxscHRyKTsKKyNlbmRpZgorICAgIHJldHVy
biByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKK30KKworc3RhdGljIGRpc3Bh
dGNoX3F1ZXVlX3QgZ19pdHBRdWV1ZTsKKwordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpCit7Cisg
ICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBpZiAoZ19jdXJyZW50SVRQU3RhdGUg
IT0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQpCisgICAgICAgIHJldHVybjsKKworICAgIGdfY3Vy
cmVudElUUFN0YXRlID0gSVRQU3RhdGU6OkluaXRpYWxpemluZzsKKyAgICBib29sIGFwcFdhc0xp
bmtlZE9uT3JBZnRlciA9IGxpbmtlZE9uT3JBZnRlcihTREtWZXJzaW9uOjpGaXJzdFdpdGhTZXNz
aW9uQ2xlYW51cEJ5RGVmYXVsdCwgQXNzdW1lU2FmYXJpSXNBbHdheXNMaW5rZWRPbkFmdGVyOjpZ
ZXMpOworCisgICAgZ19pdHBRdWV1ZSA9IGRpc3BhdGNoX3F1ZXVlX2NyZWF0ZSgiY29tLmFwcGxl
LldlYktpdC5pdHBDaGVja1F1ZXVlIiwgTlVMTCk7CisKKyAgICBkaXNwYXRjaF9hc3luYyhnX2l0
cFF1ZXVlLCBbYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyID0gV2ViQ29y
ZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkuaXNvbGF0ZWRDb3B5KCldIHsKKyAgICAg
ICAgZ19jdXJyZW50SVRQU3RhdGUgPSBkZXRlcm1pbmVJVFBTdGF0ZUludGVybmFsKGFwcFdhc0xp
bmtlZE9uT3JBZnRlciwgYnVuZGxlSWRlbnRpZmllcikgPyBJVFBTdGF0ZTo6RW5hYmxlZCA6IElU
UFN0YXRlOjpEaXNhYmxlZDsKKworICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRf
bWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgZGlzcGF0Y2hfcmVsZWFzZShnX2l0cFF1ZXVl
KTsKKyAgICAgICAgICAgIGdfaXRwUXVldWUgPSBudWxscHRyOworICAgICAgICB9KTsKKyAgICB9
KTsKK30KKworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKQoreworICAgIEFTU0VSVCghaXNJ
bldlYktpdENoaWxkUHJvY2VzcygpKTsKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwor
ICAgIGlmIChnX2N1cnJlbnRJVFBTdGF0ZSA+IElUUFN0YXRlOjpJbml0aWFsaXppbmcpCisgICAg
ICAgIHJldHVybiBnX2N1cnJlbnRJVFBTdGF0ZSA9PSBJVFBTdGF0ZTo6RW5hYmxlZDsKKworICAg
IFJFTEVBU0VfQVNTRVJUKGdfaXRwUXVldWUpOworCisgICAgX19ibG9jayBib29sIGlzSVRQRW5h
YmxlZDsKKyAgICBkaXNwYXRjaF9zeW5jKGdfaXRwUXVldWUsIF57CisgICAgICAgIGlzSVRQRW5h
YmxlZCA9IGdfY3VycmVudElUUFN0YXRlID09IElUUFN0YXRlOjpFbmFibGVkOworICAgIH0pOwor
ICAgIHJldHVybiBpc0lUUEVuYWJsZWQ7Cit9CisKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZl
SVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90PiBhdWRpdFRva2VuKQoreworICAgIEFT
U0VSVChpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7CisKKyAgICBpZiAoIWlzUGFyZW50UHJvY2Vzc0FGdWxsV2ViQnJvd3NlcihhdWRpdFRv
a2VuKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBUQ0NBY2Nlc3NQcmVmbGlnaHRSZXN1
bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKKyNpZiAoUExBVEZPUk0oSU9T
KSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApIHx8IChQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwKQor
ICAgIGlmIChhdWRpdFRva2VuKQorICAgICAgICByZXN1bHQgPSBUQ0NBY2Nlc3NQcmVmbGlnaHRX
aXRoQXVkaXRUb2tlbihnZXRrVENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2
ZW50aW9uKCksIGF1ZGl0VG9rZW4udmFsdWUoKSwgbnVsbHB0cik7CisjZW5kaWYKKyAgICByZXR1
cm4gcmVzdWx0ICE9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7Cit9CisKK3N0YXRpYyBzdGQ6
OmF0b21pYzxib29sPiBoYXNDaGVja2VkVXNhZ2VTdHJpbmdzID0gZmFsc2U7Citib29sIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MoKQoreworICAgIEFTU0VSVCghaXNJbldlYktpdENoaWxkUHJv
Y2VzcygpKTsKKworICAgIHN0YXRpYyBib29sIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MgPSBm
YWxzZTsKKworICAgIGlmIChoYXNDaGVja2VkVXNhZ2VTdHJpbmdzKQorICAgICAgICByZXR1cm4g
aGFzUHJvaGliaXRlZFVzYWdlU3RyaW5nczsKKworICAgIE5TRGljdGlvbmFyeSAqaW5mb0RpY3Rp
b25hcnkgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGluZm9EaWN0aW9uYXJ5XTsKKyAgICBSRUxF
QVNFX0FTU0VSVChpbmZvRGljdGlvbmFyeSk7CisKKyAgICAvLyBTZWUgPHJkYXI6Ly9wcm9ibGVt
LzU5OTc5NDY4PiBmb3IgZGV0YWlscyBhYm91dCBob3cgdGhpcyBsaXN0IHdhcyBzZWxlY3RlZC4K
KyAgICBhdXRvIHByb2hpYml0ZWRTdHJpbmdzID0gQFsKKyAgICAgICAgQCJOU1JlbWluZGVyc1Vz
YWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TSG9tZUtpdFVzYWdlRGVzY3JpcHRpb24iLAor
ICAgICAgICBAIk5TQmx1ZXRvb3RoQWx3YXlzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAi
TlNQaG90b0xpYnJhcnlVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0aFNoYXJl
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIZWFsdGhVcGRhdGVVc2FnZURlc2NyaXB0
aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAg
ICAgIEAiTlNMb2NhdGlvbkFsd2F5c0FuZFdoZW5JblVzZVVzYWdlRGVzY3JpcHRpb24iCisgICAg
XTsKKworICAgIGZvciAoTlNTdHJpbmcgKnByb2hpYml0ZWRTdHJpbmcgOiBwcm9oaWJpdGVkU3Ry
aW5ncykgeworICAgICAgICBpZiAoW2luZm9EaWN0aW9uYXJ5IG9iamVjdEZvcktleTpwcm9oaWJp
dGVkU3RyaW5nXSkgeworICAgICAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aEZvcm1hdDpAIltJbi1BcHAgQnJvd3NlciBQcml2YWN5XSAlQCB1c2VkIHByb2hpYml0
ZWQgdXNhZ2Ugc3RyaW5nICVALiIsIFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRp
Zmllcl0sIHByb2hpYml0ZWRTdHJpbmddOworICAgICAgICAgICAgV1RGTG9nQWx3YXlzKG1lc3Nh
Z2UudXRmOCgpLmRhdGEoKSk7CisgICAgICAgICAgICBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdz
ID0gdHJ1ZTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorICAgIGhhc0No
ZWNrZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VT
dHJpbmdzOworfQorCitib29sIGlzUGFyZW50UHJvY2Vzc0FGdWxsV2ViQnJvd3NlcihPcHRpb25h
bDxhdWRpdF90b2tlbl90PiBhdWRpdFRva2VuKQoreworICAgIEFTU0VSVChpc0luV2ViS2l0Q2hp
bGRQcm9jZXNzKCkpOworICAgIFJFTEVBU0VfQVNTRVJUKGF1ZGl0VG9rZW4pOworCisgICAgc3Rh
dGljIGJvb2wgZnVsbFdlYkJyb3dzZXI7CisKKyAgICBzdGF0aWMgZGlzcGF0Y2hfb25jZV90IG9u
Y2U7CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAgICAgICAgZnVsbFdlYkJyb3dzZXIg
PSBXVEY6Omhhc0VudGl0bGVtZW50KGF1ZGl0VG9rZW4udmFsdWUoKSwgImNvbS5hcHBsZS5kZXZl
bG9wZXIud2ViLWJyb3dzZXIiKTsKKyAgICB9KTsKKworICAgIHJldHVybiBmdWxsV2ViQnJvd3Nl
ciB8fCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVu
ZGxlSWRlbnRpZmllcigpKTsKK30KKworc3RhdGljIGJvb2wgaXNGdWxsV2ViQnJvd3Nlcihjb25z
dCBTdHJpbmcmIGJ1bmRsZUlkZW50aWZpZXIpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hp
bGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgZnVsbFdlYkJyb3dzZXIgPSBXVEY6OnBy
b2Nlc3NIYXNFbnRpdGxlbWVudCgiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOwor
CisgICAgcmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dz
ZXIoYnVuZGxlSWRlbnRpZmllcik7Cit9CisKK2Jvb2wgaXNGdWxsV2ViQnJvd3NlcigpCit7Cisg
ICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29w
Ojppc01haW4oKSk7CisKKyAgICByZXR1cm4gaXNGdWxsV2ViQnJvd3NlcihXZWJDb3JlOjphcHBs
aWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9y
ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNw
cAppbmRleCAyMzQwNzYzZTc3ZTFhMzVjZjJjMjQzYjE1NTk0MDQ2NTljOWI1MTNhLi4yOGEyNzk0
MjJiMzU2MmYzMmJlOTlhYTMwNWM2N2JiODY0ZGRjOTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcApAQCAtMjYsNiArMjYsNyBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQSUhUVFBDb29raWVTdG9yZS5oIgog
CisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbmNsdWRlICJXZWJDb29r
aWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUg
IldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszNiw2IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8
V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlm
Ci0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyAr
NjEsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0
IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3du
aW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2ll
cyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBp
ZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZ
X0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2Vi
QnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsK
ICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAg
ICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRl
eCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3
M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBA
CiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250
ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2lu
Y2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vs
c2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5p
ZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4g
UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdl
Q29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYx
MjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLmRkMjMyMDA1ZDBiZDRlNzRmMTQzNjQ2Y2Y2ZTBk
NTI2MDZjNGNlNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2lu
Y2x1ZGUgIkF1dGhlbnRpY2F0b3JNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5o
IgorI2luY2x1ZGUgIkRlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgiCiAjaW5jbHVkZSAiRG93bmxv
YWRQcm94eS5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZXMuaCIKICNpbmNsdWRlICJE
cmF3aW5nQXJlYVByb3h5LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9v
bC5jcHAKaW5kZXggOTI4MWUxY2U0MzI5YjM0MmMzM2FkODkwN2UzODczMTZiZmRmMDIxZC4uZTg5
ZjA2OWY0YjYzNjg0YTJhMzI5YjI1OWJmNDM5NGY3MmQ5NjIyMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtMTQxLDE1ICsxNDEsNiBAQAogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuaD4KICNlbmRpZgogCi0jaWYgVVNFKEFQUExF
X0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMvV2ViUHJvY2Vzc1Bvb2xB
ZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TCi0j
ZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzIKLSNkZWZpbmUgV0VCX1BST0NFU1Nf
UE9PTF9BRERJVElPTlNfMwotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180Ci0j
ZW5kaWYKLQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPRyhjaGFubmVsLCBmbXQs
IC4uLikgUkVMRUFTRV9MT0coY2hhbm5lbCwgIiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0
aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPR19F
UlJPUihjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgIiVwIC0g
V2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJQ
Uk9DRVNTUE9PTF9SRUxFQVNFX0xPR19JRl9BTExPV0VEKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxF
QVNFX0xPR19JRihzZXNzaW9uSUQuaXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCksIGNoYW5uZWws
ICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKQEAgLTI1
NSw3ICsyNDYsNiBAQCBXZWJQcm9jZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNz
UG9vbENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCiAjZW5kaWYKICAgICAsIG1fYWx3YXlz
UnVuc0F0QmFja2dyb3VuZFByaW9yaXR5KG1fY29uZmlndXJhdGlvbi0+YWx3YXlzUnVuc0F0QmFj
a2dyb3VuZFByaW9yaXR5KCkpCiAgICAgLCBtX3Nob3VsZFRha2VVSUJhY2tncm91bmRBc3NlcnRp
b24obV9jb25maWd1cmF0aW9uLT5zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKCkpCi0g
ICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlMKICAgICAsIG1fdXNlck9ic2VydmFibGVQYWdl
Q291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IHVwZGF0ZVByb2Nlc3NTdXBwcmVzc2lv
blN0YXRlKCk7IH0pCiAgICAgLCBtX3Byb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkRm9yUGFnZUNv
dW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25T
dGF0ZSgpOyB9KQogICAgICwgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ0F1dG9JbmNyZWFzZXNDb3Vu
dGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ1RpbWVy
LnN0YXJ0T25lU2hvdCgwX3MpOyB9KQpAQCAtMjcxLDcgKzI2MSw3IEBAIFdlYlByb2Nlc3NQb29s
OjpXZWJQcm9jZXNzUG9vbChBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiYgY29uZmlndXJh
dGlvbikKICAgICAgICAgV1RGOjpzZXRQcm9jZXNzUHJpdmlsZWdlcyhhbGxQcml2aWxlZ2VzKCkp
OwogICAgICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnBlcm1pdFByb2Nlc3NU
b1VzZUNvb2tpZUFQSSh0cnVlKTsKICAgICAgICAgUHJvY2Vzczo6c2V0SWRlbnRpZmllcihXZWJD
b3JlOjpQcm9jZXNzSWRlbnRpZmllcjo6Z2VuZXJhdGUoKSk7Ci0gICAgICAgIFdFQl9QUk9DRVNT
X1BPT0xfQURESVRJT05TXzQKKyAgICAgICAgZGV0ZXJtaW5lSVRQU3RhdGUoKTsKICAgICB9KTsK
IAogICAgIGlmICghbV93ZWJzaXRlRGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFTdG9y
ZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpKQpAQCAtNjEzLDcgKzYwMywyMCBAQCBOZXR3b3Jr
UHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0
ZURhdGFTdG9yZSogd2l0aAogICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5kYWxv
bmVBcHBsaWNhdGlvbkRvbWFpbjsKICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9t
YWluPiBhcHBCb3VuZERvbWFpbnM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFu
dWFsUHJldmFsZW50UmVzb3VyY2U7Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgor
CisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOwor
ICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUtPmlz
SXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRlRGF0
YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAhbV93
ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVu
YWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAg
ICAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVk
KGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0ZURh
dGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3JlOjpk
ZWZhdWx0RGF0YVN0b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAg
ZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7Cisg
ICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3VyY2VM
b2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7CisgICAg
fSBlbHNlCisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZl
cmVuY2VFbmFibGVkOworCiAgICAgaWYgKHdpdGhXZWJzaXRlRGF0YVN0b3JlKSB7CiAgICAgICAg
IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSB3aXRoV2Vic2l0ZURhdGFTdG9yZS0+cmVz
b3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKTsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9T
VEFUSVNUSUNTKQpAQCAtODg0LDcgKzg4NywxMCBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpyZXNv
bHZlUGF0aHNGb3JTYW5kYm94RXh0ZW5zaW9ucygpCiAKIFdlYlByb2Nlc3NQcm94eSYgV2ViUHJv
Y2Vzc1Bvb2w6OmNyZWF0ZU5ld1dlYlByb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2Vic2l0ZURh
dGFTdG9yZSwgV2ViUHJvY2Vzc1Byb3h5OjpJc1ByZXdhcm1lZCBpc1ByZXdhcm1lZCkKIHsKLSAg
ICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18zCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxl
ZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOworICAgIGlmICh3ZWJzaXRlRGF0YVN0b3JlICYm
ICF3ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKQorICAgICAgICB3
ZWJzaXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChtX3RjY1By
ZWZlcmVuY2VFbmFibGVkKTsKKwogICAgIGF1dG8gcHJvY2Vzc1Byb3h5ID0gV2ViUHJvY2Vzc1By
b3h5OjpjcmVhdGUoKnRoaXMsIHdlYnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKICAgICBh
dXRvJiBwcm9jZXNzID0gcHJvY2Vzc1Byb3h5LmdldCgpOwogICAgIGluaXRpYWxpemVOZXdXZWJQ
cm9jZXNzKHByb2Nlc3MsIHdlYnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRh
U3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29h
L1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCA2ODUxMzE1Y2FjNTA2OTA2OGE2NzY0MzY5
NDY0Mjk3YjYxZDEwMmMxLi5mYjNiMjFmZDkzNjI4YTM0YWUzZDRkZWNmZDRlNzk3Y2Y2NTMxZjY1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9X
ZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCkBAIC0yNyw2ICsyNyw3IEBA
CiAjaW1wb3J0ICJXZWJzaXRlRGF0YVN0b3JlLmgiCiAKICNpbXBvcnQgIkNvb2tpZVN0b3JhZ2VV
dGlsc0NGLmgiCisjaW1wb3J0ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2ltcG9ydCAi
U2FuZGJveFV0aWxpdGllcy5oIgogI2ltcG9ydCAiU3RvcmFnZU1hbmFnZXIuaCIKICNpbXBvcnQg
IldlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eS5oIgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNpbXBv
cnQgPHd0Zi9VUkwuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KIAotI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvV2Vic2l0
ZURhdGFTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgV0VCU0lURV9EQVRBX1NUT1JF
X0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCA8
VUlLaXQvVUlBcHBsaWNhdGlvbi5oPgogI2ltcG9ydCA8cGFsL2lvcy9NYW5hZ2VkQ29uZmlndXJh
dGlvblNvZnRMaW5rLmg+CkBAIC00NjMsMTEgKzQ1OCwyMyBAQCB2b2lkIFdlYnNpdGVEYXRhU3Rv
cmU6OmluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9uIGZvcmNl
UmVpbgogICAgIH0pOwogfQogCit2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmFkZFRlc3REb21haW5z
KCkgY29uc3QKK3sKKyAgICBpZiAoYXBwQm91bmREb21haW5zKCkuaXNFbXB0eSgpKSB7CisgICAg
ICAgIGF1dG8gYnVuZGxlSUQgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIo
KTsKKyAgICAgICAgYXV0byBhcHBCb3VuZERvbWFpbnNUZXN0aW5nID0gZ2V0QXBwQm91bmREb21h
aW5zVGVzdGluZyhidW5kbGVJRCk7CisgICAgICAgIGlmIChhcHBCb3VuZERvbWFpbnNUZXN0aW5n
KSB7CisgICAgICAgICAgICBmb3IgKGF1dG8mIGRvbWFpbiA6ICphcHBCb3VuZERvbWFpbnNUZXN0
aW5nKQorICAgICAgICAgICAgICAgIGFwcEJvdW5kRG9tYWlucygpLmFkZChkb21haW4pOworICAg
ICAgICB9CisgICAgfQorfQorCiB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5k
RG9tYWlucyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEhhc2hTZXQ8V2ViQ29yZTo6UmVn
aXN0cmFibGVEb21haW4+JiwgY29uc3QgSGFzaFNldDxTdHJpbmc+Jik+JiYgY29tcGxldGlvbkhh
bmRsZXIpIGNvbnN0CiB7CiAgICAgaWYgKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zKSB7
CiAgICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCkgewot
ICAgICAgICAgICAgV0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgICAgIGFk
ZFRlc3REb21haW5zKCk7CiAgICAgICAgIH0KICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoYXBw
Qm91bmREb21haW5zKCksIGFwcEJvdW5kU2NoZW1lcygpKTsKICAgICAgICAgcmV0dXJuOwpAQCAt
NDc5LDcgKzQ4Niw3IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmREb21h
aW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSGFzaFNlCiAgICAgICAgIFJ1bkxvb3A6
Om1haW4oKS5kaXNwYXRjaChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVk
VGhpcyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildICgp
IG11dGFibGUgewogICAgICAgICAgICAgQVNTRVJUKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21h
aW5zKTsKICAgICAgICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5h
YmxlZCkgewotICAgICAgICAgICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlM7Cisg
ICAgICAgICAgICAgICAgYWRkVGVzdERvbWFpbnMoKTsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBhcHBCb3VuZFNjaGVtZXMo
KSk7CiAgICAgICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IGM2ZmJiYzQ5MjM5ZjY5NWE4YmEzNDFl
ZjY5MzA1N2NlZjFlYWI2ZDAuLjBhN2Y4M2QyYjdkYzYzNTM4Yzg1Nzg4MDBlNjE3YWZmYzVkM2Yx
OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNp
dGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9X
ZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTMxMiw2ICszMTIsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgog
ICAgIGVudW0gY2xhc3MgRm9yY2VSZWluaXRpYWxpemF0aW9uIDogYm9vbCB7IE5vLCBZZXMgfTsK
ICAgICB2b2lkIGluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9u
ID0gRm9yY2VSZWluaXRpYWxpemF0aW9uOjpObyk7CisgICAgdm9pZCBhZGRUZXN0RG9tYWlucygp
IGNvbnN0OwogCiAgICAgdm9pZCBmZXRjaERhdGFBbmRBcHBseShPcHRpb25TZXQ8V2Vic2l0ZURh
dGFUeXBlPiwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhRmV0Y2hPcHRpb24+LCBSZWZQdHI8V29ya1F1
ZXVlPiYmLCBGdW5jdGlvbjx2b2lkKFZlY3RvcjxXZWJzaXRlRGF0YVJlY29yZD4pPiYmIGFwcGx5
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggMzA0MjBkOTA2YzAyZDNjOGZlY2UwYWRjYWRiYmY5YjRhMDA4N2Q2Yi4uZmU4M2M0MjUy
YmJjNjA3ZTE2ODIzYzhkNGNhYjFhNTBjMGUxMWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05NjMsNiArOTYzLDcgQEAKIAkJNDlC
Q0ExOTIyM0ExNzc2NjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBh
cnR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJD
QTE5MTIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFy
dHkuaCAqLzsgfTsKIAkJNDlCQ0ExOTUyM0ExOENGRDAwMjhBODM2IC8qIF9XS1Jlc291cmNlTG9h
ZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTkwMjNBMTc1NDkwMDI4QTgzNiAvKiBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmggKi87IH07CiAJCTQ5QkNBMTk3
MjNBMTkzMEQwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTYy
M0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmgg
Ki87IH07CisJCTQ5REFBMzhDMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNo
ZWNrcy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5
REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLzsg
fTsKIAkJNDlFQ0E0MUMyM0ZDQTVEODAwMjMzNThEIC8qIFBvbGljeURlY2lzaW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVDQTQxQjIzRkNBNDg2
MDAyMzM1OEQgLyogUG9saWN5RGVjaXNpb24uaCAqLzsgfTsKIAkJNDlGQkVGRkQyMzlCMDExRDAw
QkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkMyMzlCMDExRDAw
QkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tICovOyB9Owog
CQk0OUZCRUZGRjIzOUIwMTJGMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Ro
aXJkUGFydHkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0OUZCRUZGRTIzOUIwMTJGMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Ro
aXJkUGFydHkubW0gKi87IH07CkBAIC0zNTg2LDYgKzM1ODcsOCBAQAogCQk0OUJDQTE5MDIzQTE3
NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5h
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUlu
dGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5QkNBMTkxMjNBMTc3NjYw
MDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5NjIzQTE4RjYyMDAyOEE4MzYgLyogQVBJUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWZhdWx0V2ViQnJvd3NlckNoZWNr
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUVDQTQxQjIzRkNBNDg2MDAyMzM1
OEQgLyogUG9saWN5RGVjaXNpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9saWN5RGVjaXNpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlGQkVGRkEyMzlBRDk3ODAwQkQwMzJGIC8q
IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9X
S1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTQ5RkJFRkZCMjM5QURCMTgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRmlyc3RQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ4Myw2ICs3
NDg2LDggQEAKIAkJCQkxQzczOUU4NTIzNDdCQ0Y2MDBDNjIxRUMgLyogQ29yZVRleHRIZWxwZXJz
Lm1tICovLAogCQkJCUM1NUY5MTZDMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVz
dWx0LmggKi8sCiAJCQkJQzU1RjkxNkQxQzU5NUU0NDAwMjlFOTJEIC8qIERhdGFEZXRlY3Rpb25S
ZXN1bHQubW0gKi8sCisJCQkJNDlEQUEzOEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmggKi8sCisJCQkJNDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1
bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovLAogCQkJCUNFNTUwRTEzMjI4Mzc0NDQwMEQyODc5MSAv
KiBJbnNlcnRUZXh0T3B0aW9ucy5jcHAgKi8sCiAJCQkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4Nzkx
IC8qIEluc2VydFRleHRPcHRpb25zLmggKi8sCiAJCQkJQzE2NjNFNUEyNEFFQTc0MjAwQzZBM0Iy
IC8qIExhdW5jaFNlcnZpY2VzRGF0YWJhc2VYUENDb25zdGFudHMuaCAqLywKQEAgLTEyNzMwLDYg
KzEyNzM1LDcgQEAKIAkJCQkyRDkyQTc3RDIxMkI2QTcxMDBGNDkzRkQgLyogQ29ubmVjdGlvbi5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc3RTIxMkI2QTcxMDBGNDkzRkQgLyogRGF0YVJl
ZmVyZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc3RjIxMkI2QTcxMDBGNDkzRkQg
LyogRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0OURBQTM4QzI0Q0JBMUE4MDA3OTNE
NzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDBD
NTZGRTIyOUYxREVBMDBCRDMzRTcgLyogRGV2aWNlTWFuYWdlbWVudFNvZnRMaW5rLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJMUFCN0Q2MTkxMjg4QjlEOTAwQ0ZEMDhDIC8qIERvd25sb2FkUHJveHlN
ZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUE2NDIyOTkxMkREMDI5MjAw
Q0FBRTJDIC8qIERyYXdpbmdBcmVhTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLApk
aWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDdkNGI5
NGMyZDQ2Y2E2YTE5YmNkMGFlNGRlNDdiNTlkZDcwODhjODYuLmIxMzViMTA4M2U1MmM4YWNlMWI2
MzQ0NGEwZTliZTEzMTYyMTczNDUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMC0wNy0yOCAgS2F0ZSBDaGVuZXkg
IDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIEFwcC1Cb3Vu
ZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlcGxhY2UgV2ViS2l0IEFkZGl0aW9ucyBtYWNyb3Mgd2l0aCBjb2RlIHRvIHNldCBh
IGRpZmZlcmVudCBidW5kbGUKKyAgICAgICAgaWRlbnRpZmllciBpbmRpY2F0aW5nIHRoYXQgd2Ug
d2FudCB0byBydW4gYW4gQXBwLUJvdW5kIERvbWFpbnMgdGVzdC4KKworICAgICAgICBSZW1vdmUg
I2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspIGNoZWNrIHNvIHdlIHJ1biB0aGVzZSB0ZXN0cyBv
biBFV1MuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBw
QnJvd3NlclByaXZhY3kubW06CisgICAgICAgIChjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRl
c3RTZXR0aW5ncyk6CisgICAgICAgIChpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RT
ZXR0aW5ncyk6CisKIDIwMjAtMDctMjggIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUu
Y29tPgogCiAgICAgICAgIFt3ZWJraXRjb3JlcHldIEFkZCBzdHJpbmdfdXRpbHMgKFBhcnQgMykK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBC
cm93c2VyUHJpdmFjeS5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
SW5BcHBCcm93c2VyUHJpdmFjeS5tbQppbmRleCBlNzUwMDliNWVhNDhiNTRlOGE2NjEzM2QyNThj
ODYzMGZlNTQ5Y2Q3Li4zNjlmZmU1MjMxOGUwNzRiMGY0NGYxY2QwNjM2ZTM4OTk2ZDMxNzM0IDEw
MDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJv
d3NlclByaXZhY3kubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tCkBAIC00NSw5ICs0NSw2IEBACiAKICNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQgPFdl
YktpdEFkZGl0aW9ucy9JbkFwcEJyb3dzZXJQcml2YWN5VGVzdEFkZGl0aW9ucy5oPgotCiBzdGF0
aWMgYm9vbCBpc0RvbmU7CiAKIEBpbnRlcmZhY2UgQXBwQm91bmREb21haW5EZWxlZ2F0ZSA6IE5T
T2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0ZT4KQEAgLTEzMSwxNCArMTI4LDE0IEBAIEBlbmQK
IHN0YXRpYyB2b2lkIGNsZWFuVXBJbkFwcEJyb3dzZXJQcml2YWN5VGVzdFNldHRpbmdzKCkKIHsK
ICAgICBXZWJDb3JlOjpjbGVhckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVy
cmlkZSgpOwotICAgIElOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TXzIKKyAgICBXZWJD
b3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImNvbS5hcHBsZS5XZWJLaXQuVGVz
dFdlYktpdEFQSSIpOwogfQogCiBzdGF0aWMgdm9pZCBpbml0aWFsaXplSW5BcHBCcm93c2VyUHJp
dmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwog
ICAgIFdlYkNvcmU6OmNsZWFyQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJy
aWRlKCk7Ci0gICAgSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlMKKyAgICBXZWJDb3Jl
OjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImluQXBwQnJvd3NlclByaXZhY3lUZXN0
SWRlbnRpZmllciIpOwogfQogCiBURVNUKEluQXBwQnJvd3NlclByaXZhY3ksIE5vbkFwcEJvdW5k
RG9tYWluRmFpbGVkVXNlclNjcmlwdEF0U3RhcnQpCkBAIC0xMzM4LDYgKzEzMzUsNCBAQCBURVNU
KEluQXBwQnJvd3NlclByaXZhY3ksIEFwcEJvdW5kQ3VzdG9tU2NoZW1lKQogICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKIH0KIAotI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspCi0KICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGMwZWU4
NjRmNGExYWQ2NmI0MzUzZTgwYjljZjdmOGVkNjQ2NjJmZjQuLjRjZjZhNzJhYzM1MDdkZjAyOWUz
OWVlZmQwNzhiNTA2OTg3MDJlMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wNy0yOCAg
S2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdy
YXRlIEFwcC1Cb3VuZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgVGhlc2UgdGVz
dHMgYXJlIG5vdyBleHBlY3RlZCB0byBwYXNzLgorCiAyMDIwLTA3LTI4ICBSeWFuIEhhZGRhZCAg
PHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCB0ZXN0IGV4cGVjdGF0aW9ucyBh
bmQgYmFzZWxpbmVzIGZvciBpT1MgMTQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGRhMGY1ZWZiYjAy
ZDJkYThiY2VlNDQzNjU0MzI0NTdlYTFhNGFiMTkuLjk1MTM2M2Y1OTBiOGM4YmVhNGRiMzQ4ZTNl
ZDVlYjFmOWU4NGRlOWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTY1LDcgKzE2NSw3IEBAIGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi91c2VyYWdlbnQtcmVsb2FkLnBocCBbIFNraXAgXQogc3RvcmFn
ZS9pbmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFzZS1hZnRlci1zdG9yYWdlLWNyYXNoLmh0bWwg
WyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBTa2lwIF0K
IGZhc3QvZm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5cGlu
Zy5odG1sIFsgU2tpcCBdCi1odHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgU2tp
cCBdCitodHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgUGFzcyBdCiAKIAogIyBP
bmx5IE1hYyBhbmQgaU9TIGhhdmUgYW4gaW1wbGVtZW50YXRpb24gb2YgVUlTY3JpcHRDb250cm9s
bGVyOjpkb0FzeW5jVGFzaygpLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405402</attachid>
            <date>2020-07-28 13:40:06 -0700</date>
            <delta_ts>2020-07-28 13:48:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728134005.patch</filename>
            <type>text/plain</type>
            <size>35416</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjY1ODgzZGMzZDc4NjAxM2NmZjdkOWJiMjY0YjA4MWYwMzU5NDkyMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTYzLDcgKzYzLDYgQEAKICNpbXBvcnQgPFdlYktpdEFk
ZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmluZSBO
RVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNkZWZpbmUgTkVUV09SS19TRVNTSU9O
X0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAjaW1wb3J0ICJEZXZpY2VNYW5hZ2Vt
ZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MSwyOSBAQCB2b2lkIFNlc3Npb25XcmFwcGVy
Ojppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24sIE5l
dHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNlc3Npb25XaXRoQ29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdldCgpIGRlbGVnYXRlUXVldWU6W05T
T3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNpZiBIQVZFKFNFU1NJT05fQ0xFQU5V
UCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFudXAoTmV0d29ya1Nlc3Npb25Db2Nv
YSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBEb24ndCBvdmVycmlkZSBhbiBleHBs
aWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNldCkKKyAgICAgICAgcmV0dXJuOwor
CisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQorICAgIGF1dG8gcGFyZW50QXVk
aXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9BU1NFUlQocGFyZW50QXVkaXRUb2tl
bik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisKKyAgICBib29sIGl0cEVuYWJsZWQg
PSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBhcmVudEF1ZGl0VG9rZW4pOworICAg
IGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5pc1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAhPSBwYXNzZWRFbmFibGVkU3RhdGUp
CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBlbmFibGVkIHN0YXRlICglZCkgZG9l
cyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRwRW5hYmxlZCwgcGFzc2VkRW5hYmxl
ZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKHBh
c3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgorfQorI2VuZGlmCisKIE5ldHdvcmtT
ZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdvcmtQ
cm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAg
ICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycykKICAgICAsIG1f
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMuYm91bmRJbnRlcmZhY2VJZGVudGlm
aWVyKQpAQCAtMTI5Miw3ICsxMzE0LDcgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNvY29hOjppbml0
aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZpZ2F0aW5nVG9BcHBCb3UKIFNlc3Np
b25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2soY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBXZWJDb3JlOjpTdG9yZWRDcmVk
ZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgT3B0aW9uYWw8TmF2aWdhdGlu
Z1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAgICAg
YXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA6IE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElPTlNf
MikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKG5ldHdvcmtQcm9jZXNz
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkKICAgICAgICAg
c2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6
Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoYXV0byog
c3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Npb24oKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZkN2U0M2YxM2JlZgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hl
Y2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWluOwor
fQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdz
KCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRBcHBC
b3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOworYm9vbCBzaG91bGRCZVRyZWF0ZWRB
c0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpOwordm9pZCBkZXRlcm1pbmVJVFBT
dGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKK2Jvb2wgZG9lc1BhcmVudFBy
b2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90Pik7Citib29sIGlzRnVs
bFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlv
bmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmIyNzY3OTc1Y2FjYTdjMWNmY2FmZGZiNjI1ZWI0MGI0ZDk0YWJhNDAKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZp
Zy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKworI2ltcG9ydCAiVmVy
c2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiVENDU1BJLmgiCisjaW1wb3J0IDxXZWJDb3JlL1JlZ2lz
dHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNr
cy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+Cisj
aW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQgPHd0Zi9jb2NvYS9FbnRpdGxlbWVu
dHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KKworU09GVF9MSU5LX1BSSVZB
VEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRDQ0FjY2Vzc1ByZWZsaWdodCwgVEND
QWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgQ0ZEaWN0aW9uYXJ5
UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitTT0ZUX0xJTksoVENDLCBUQ0NBY2Nl
c3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZT
dHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tlbiwgQ0ZEaWN0aW9uYXJ5UmVmIG9w
dGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQorU09GVF9MSU5LX0NPTlNUQU5UKFRD
Qywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNraW5nUHJldmVudGlvbiwgQ0ZTdHJp
bmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0YXRpYyBib29sIGlzRnVsbFdlYkJy
b3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nl
cihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJldHVybiBidW5kbGVJRCA9PSAiY29t
LmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1bmRsZUlEID09ICJjb20uYXBwbGUu
V2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09wdGlvbmFsPFZlY3RvcjxXZWJDb3Jl
OjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoY29uc3QgU3Ry
aW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQuaXNOdWxsKCkpCisgICAgICAgIHJl
dHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0byBhcHBCb3VuZERvbWFpbkxpc3Qg
PSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcsIFZlY3RvcjxXZWJDb3JlOjpSZWdp
c3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElkZW50
aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4geyBXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbVJlZ2lzdHJhYmxlRG9tYWluU3Ry
aW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAgIGF1dG8gYXBwQm91bmREb21haW5J
dGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRsZUlEKTsKKyAgICBpZiAoYXBwQm91
bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+ZW5kKCkpCisgICAgICAgIHJldHVy
biBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsK
K30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9vbCBpc0luV2ViS2l0Q2hpbGRQcm9j
ZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJvY2VzczsKKworICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAg
ICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVu
ZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9jZXNzID0gW2J1bmRsZUlkZW50aWZp
ZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50Il0KKyAgICAgICAgICAg
IHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNvbS5hcHBsZS5XZWJLaXQuTmV0d29y
a2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRpZmllciBoYXNQcmVmaXg6QCJjb20u
YXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAgcmV0dXJuIGlzSW5TdWJQcm9jZXNz
OworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUgOiB1aW50OF90IHsKKyAgICBVbmlu
aXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBFbmFibGVkLAorICAgIERpc2FibGVk
Cit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+IGdfY3VycmVudElUUFN0YXRlID0g
SVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBib29sIGhhc1JlcXVlc3RlZENyb3Nz
V2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hp
bGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc1JlcXVlc3Rl
ZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0g
b2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3NzV2Vic2l0ZVRyYWNraW5nVXNhZ2VE
ZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVUcmFja2lu
Z1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVybWluZUlUUFN0YXRlSW50ZXJuYWwo
Ym9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmll
cikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBBU1NFUlQoIWlzSW5X
ZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFwcFdhc0xpbmtlZE9uT3JBZnRlcikK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFpc0Z1bGxXZWJCcm93c2VyKGJ1bmRs
ZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Np
b24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBUQ0NBY2Nlc3NQcmVmbGlnaHRSZXN1
bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKKyNpZiAoUExBVEZPUk0oSU9T
KSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApIHx8IChQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwKQor
ICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRrVENDU2VydmljZVdlYktpdEludGVs
bGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIpOworI2VuZGlmCisgICAgcmV0dXJu
IHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworfQorCitzdGF0aWMgZGlzcGF0
Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVybWluZUlUUFN0YXRlKCkKK3sKKyAg
ICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlmIChnX2N1cnJlbnRJVFBTdGF0ZSAh
PSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZ19jdXJy
ZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5nOworICAgIGJvb2wgYXBwV2FzTGlu
a2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1ZlcnNpb246OkZpcnN0V2l0aFNlc3Np
b25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fsd2F5c0xpbmtlZE9uQWZ0ZXI6Olll
cyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVldWVfY3JlYXRlKCJjb20uYXBwbGUu
V2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAgIGRpc3BhdGNoX2FzeW5jKGdfaXRw
UXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRsZUlkZW50aWZpZXIgPSBXZWJDb3Jl
OjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29sYXRlZENvcHkoKV0geworICAgICAg
ICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0YXRlSW50ZXJuYWwoYXBwV2FzTGlu
a2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElUUFN0YXRlOjpFbmFibGVkIDogSVRQ
U3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9t
YWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRjaF9yZWxlYXNlKGdfaXRwUXVldWUp
OworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7CisgICAgICAgIH0pOworICAgIH0p
OworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpCit7CisgICAgQVNTRVJUKCFpc0lu
V2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7Cisg
ICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6OkluaXRpYWxpemluZykKKyAgICAg
ICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0YXRlOjpFbmFibGVkOworCisgICAg
UkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBfX2Jsb2NrIGJvb2wgaXNJVFBFbmFi
bGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwgXnsKKyAgICAgICAgaXNJVFBFbmFi
bGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6OkVuYWJsZWQ7CisgICAgfSk7Cisg
ICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJ
VFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAgQVNT
RVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFp
bigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKGF1ZGl0VG9r
ZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRDQ0FjY2Vzc1ByZWZsaWdodFJlc3Vs
dCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworI2lmIChQTEFURk9STShJT1Mp
ICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkgfHwgKFBMQVRG
T1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMTAwMDApCisg
ICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodFdp
dGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdlbnRUcmFja2luZ1ByZXZl
bnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRyKTsKKyNlbmRpZgorICAgIHJldHVy
biByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKK30KKworc3RhdGljIHN0ZDo6
YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MgPSBmYWxzZTsKK2Jvb2wgaGFzUHJv
aGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9j
ZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncyA9IGZh
bHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MpCisgICAgICAgIHJldHVybiBo
YXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNEaWN0aW9uYXJ5ICppbmZvRGljdGlv
bmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0RpY3Rpb25hcnldOworICAgIFJFTEVB
U0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8vIFNlZSA8cmRhcjovL3Byb2JsZW0v
NTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlzIGxpc3Qgd2FzIHNlbGVjdGVkLgor
ICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAgICAgICBAIk5TUmVtaW5kZXJzVXNh
Z2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0VXNhZ2VEZXNjcmlwdGlvbiIsCisg
ICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJO
U1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TSGVhbHRoU2hhcmVV
c2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0aFVwZGF0ZVVzYWdlRGVzY3JpcHRp
b24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAg
ICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNhZ2VEZXNjcmlwdGlvbiIKKyAgICBd
OworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0cmluZyA6IHByb2hpYml0ZWRTdHJp
bmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OnByb2hpYml0
ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9IFtOU1N0cmluZyBzdHJp
bmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZhY3ldICVAIHVzZWQgcHJvaGliaXRl
ZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlm
aWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAgICBXVEZMb2dBbHdheXMobWVzc2Fn
ZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3Mg
PSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgaGFzQ2hl
Y2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJuIGhhc1Byb2hpYml0ZWRVc2FnZVN0
cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFs
PGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGls
ZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVkaXRUb2tlbik7CisKKyAgICBzdGF0
aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25j
ZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICBmdWxsV2ViQnJvd3NlciA9
IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1ZSgpLCAiY29tLmFwcGxlLmRldmVs
b3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAgcmV0dXJuIGZ1bGxXZWJCcm93c2Vy
IHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2ViQ29yZTo6YXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBpc0Z1bGxXZWJCcm93c2VyKGNvbnN0
IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGls
ZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlciA9IFdURjo6cHJv
Y2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxvcGVyLndlYi1icm93c2VyIik7CisK
KyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nl
cihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1bGxXZWJCcm93c2VyKCkKK3sKKyAg
ICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6
OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJCcm93c2VyKFdlYkNvcmU6OmFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3Jl
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3Bw
CmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQwNDY1OWM5YjUxM2EuLjI4YTI3OTQy
MmIzNTYyZjMyYmU5OWFhMzA1YzY3YmI4NjRkZGM5ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCkBAIC0yNiw2ICsyNiw3IEBA
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQVBJSFRUUENvb2tpZVN0b3JlLmgiCiAK
KyNpbmNsdWRlICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2luY2x1ZGUgIldlYkNvb2tp
ZU1hbmFnZXJQcm94eS5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NQb29sLmgiCiAjaW5jbHVkZSAi
V2Vic2l0ZURhdGFTdG9yZS5oIgpAQCAtMzUsMTIgKzM2LDYgQEAKICNpbmNsdWRlIDxXZWJDb3Jl
L0hUVFBDb29raWVBY2NlcHRQb2xpY3kuaD4KICNpbmNsdWRlIDxXZWJDb3JlL05ldHdvcmtTdG9y
YWdlU2Vzc2lvbi5oPgogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxX
ZWJLaXRBZGRpdGlvbnMvSFRUUENvb2tpZVN0b3JlQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmlu
ZSBJTVBMRU1FTlRfSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9FTkFCTEVEIGZhbHNlCi0jZW5kaWYK
LQogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIAogbmFtZXNwYWNlIEFQSSB7CkBAIC02Niw3ICs2
MSw3IEBAIHZvaWQgSFRUUENvb2tpZVN0b3JlOjpmaWx0ZXJBcHBCb3VuZENvb2tpZXMoY29uc3Qg
VmVjdG9yPFdlYkNvcmU6OkNvb2tpZT4mIGNvb2tpCiAgICAgVmVjdG9yPFdlYkNvcmU6OkNvb2tp
ZT4gYXBwQm91bmRDb29raWVzOwogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgbV9vd25p
bmdEYXRhU3RvcmUtPmdldEFwcEJvdW5kRG9tYWlucyhbY29va2llcywgYXBwQm91bmRDb29raWVz
ID0gV1RGTW92ZShhcHBCb3VuZENvb2tpZXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpXSAoYXV0byYgZG9tYWlucykgbXV0YWJsZSB7Ci0gICAgICAgIGlm
ICghZG9tYWlucy5pc0VtcHR5KCkgJiYgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lf
RU5BQkxFRCkgeworICAgICAgICBpZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmICFpc0Z1bGxXZWJC
cm93c2VyKCkpIHsKICAgICAgICAgICAgIGZvciAoYXV0byYgY29va2llIDogY29va2llcykgewog
ICAgICAgICAgICAgICAgIGlmIChkb21haW5zLmNvbnRhaW5zKFdlYkNvcmU6OlJlZ2lzdHJhYmxl
RG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChjb29raWUuZG9tYWluKSkpCiAgICAgICAg
ICAgICAgICAgICAgIGFwcEJvdW5kQ29va2llcy5hcHBlbmQoY29va2llKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCmluZGV4
IDQzMWZjZWY3ODZjOWI1YzMwMDQ3NmEzMTJhNDc4OGUwOTQwNDRlNDkuLjcwMjc4ZmJkZTAyZjcz
ZGVkNDBkNzkzZDAxOGU0OGFlOWI1NWZiMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcApAQCAtMzUsMTIgKzM1LDYgQEAK
ICNpbmNsdWRlICJXZWJVUkxTY2hlbWVIYW5kbGVyLmgiCiAjaW5jbHVkZSAiV2ViVXNlckNvbnRl
bnRDb250cm9sbGVyUHJveHkuaCIKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5j
bHVkZSA8V2ViS2l0QWRkaXRpb25zL1BhZ2VDb25maWd1cmF0aW9uQWRkaXRpb25zLmg+Ci0jZWxz
ZQotI2RlZmluZSBQQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCi0jZW5kaWYKLQogI2lmIEVO
QUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkKICNpbmNsdWRlICJBUElBcHBsaWNhdGlvbk1hbmlm
ZXN0LmgiCiAjZW5kaWYKQEAgLTU0LDcgKzQ4LDYgQEAgUmVmPFBhZ2VDb25maWd1cmF0aW9uPiBQ
YWdlQ29uZmlndXJhdGlvbjo6Y3JlYXRlKCkKIH0KIAogUGFnZUNvbmZpZ3VyYXRpb246OlBhZ2VD
b25maWd1cmF0aW9uKCkKLVBBR0VfQ09ORklHVVJBVElPTl9BRERJVElPTlMKIHsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggMmJhZDFkNmU1Mzg4NjEy
NTQ3MmM2MGU5MTQ4NzFmODIxODVlNGViMy4uZGQyMzIwMDVkMGJkNGU3NGYxNDM2NDZjZjZlMGQ1
MjYwNmM0Y2U2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBA
IC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiQXV0aGVudGljYXRpb25NYW5hZ2VyLmgiCiAjaW5j
bHVkZSAiQXV0aGVudGljYXRvck1hbmFnZXIuaCIKICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgi
CisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbmNsdWRlICJEb3dubG9h
ZFByb3h5LmgiCiAjaW5jbHVkZSAiRHJhd2luZ0FyZWFNZXNzYWdlcy5oIgogI2luY2x1ZGUgIkRy
YXdpbmdBcmVhUHJveHkuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29s
LmNwcAppbmRleCA5MjgxZTFjZTQzMjliMzQyYzMzYWQ4OTA3ZTM4NzMxNmJmZGYwMjFkLi5lODlm
MDY5ZjRiNjM2ODRhMmEzMjliMjU5YmY0Mzk0ZjcyZDk2MjIzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC0xNDEsMTUgKzE0MSw2IEBACiAjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5oPgogI2VuZGlmCiAKLSNpZiBVU0UoQVBQTEVf
SU5URVJOQUxfU0RLKQotI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9XZWJQcm9jZXNzUG9vbEFk
ZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlMKLSNk
ZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgotI2RlZmluZSBXRUJfUFJPQ0VTU19Q
T09MX0FERElUSU9OU18zCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzQKLSNl
bmRpZgotCiAjZGVmaW5lIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HKGNoYW5uZWwsIGZtdCwg
Li4uKSBSRUxFQVNFX0xPRyhjaGFubmVsLCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRo
aXMsICMjX19WQV9BUkdTX18pCiAjZGVmaW5lIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HX0VS
Uk9SKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxFQVNFX0xPR19FUlJPUihjaGFubmVsLCAiJXAgLSBX
ZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCiAjZGVmaW5lIFdFQlBS
T0NFU1NQT09MX1JFTEVBU0VfTE9HX0lGX0FMTE9XRUQoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVB
U0VfTE9HX0lGKHNlc3Npb25JRC5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSwgY2hhbm5lbCwg
IiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQpAQCAtMjU1
LDcgKzI0Niw2IEBAIFdlYlByb2Nlc3NQb29sOjpXZWJQcm9jZXNzUG9vbChBUEk6OlByb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbikKICNlbmRpZgogICAgICwgbV9hbHdheXNS
dW5zQXRCYWNrZ3JvdW5kUHJpb3JpdHkobV9jb25maWd1cmF0aW9uLT5hbHdheXNSdW5zQXRCYWNr
Z3JvdW5kUHJpb3JpdHkoKSkKICAgICAsIG1fc2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlv
bihtX2NvbmZpZ3VyYXRpb24tPnNob3VsZFRha2VVSUJhY2tncm91bmRBc3NlcnRpb24oKSkKLSAg
ICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OUwogICAgICwgbV91c2VyT2JzZXJ2YWJsZVBhZ2VD
b3VudGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgdXBkYXRlUHJvY2Vzc1N1cHByZXNzaW9u
U3RhdGUoKTsgfSkKICAgICAsIG1fcHJvY2Vzc1N1cHByZXNzaW9uRGlzYWJsZWRGb3JQYWdlQ291
bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IHVwZGF0ZVByb2Nlc3NTdXBwcmVzc2lvblN0
YXRlKCk7IH0pCiAgICAgLCBtX2hpZGRlblBhZ2VUaHJvdHRsaW5nQXV0b0luY3JlYXNlc0NvdW50
ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyBtX2hpZGRlblBhZ2VUaHJvdHRsaW5nVGltZXIu
c3RhcnRPbmVTaG90KDBfcyk7IH0pCkBAIC0yNzEsNyArMjYxLDcgQEAgV2ViUHJvY2Vzc1Bvb2w6
OldlYlByb2Nlc3NQb29sKEFQSTo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uJiBjb25maWd1cmF0
aW9uKQogICAgICAgICBXVEY6OnNldFByb2Nlc3NQcml2aWxlZ2VzKGFsbFByaXZpbGVnZXMoKSk7
CiAgICAgICAgIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6cGVybWl0UHJvY2Vzc1Rv
VXNlQ29va2llQVBJKHRydWUpOwogICAgICAgICBQcm9jZXNzOjpzZXRJZGVudGlmaWVyKFdlYkNv
cmU6OlByb2Nlc3NJZGVudGlmaWVyOjpnZW5lcmF0ZSgpKTsKLSAgICAgICAgV0VCX1BST0NFU1Nf
UE9PTF9BRERJVElPTlNfNAorICAgICAgICBkZXRlcm1pbmVJVFBTdGF0ZSgpOwogICAgIH0pOwog
CiAgICAgaWYgKCFtX3dlYnNpdGVEYXRhU3RvcmUgJiYgV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3Jl
OjpkZWZhdWx0RGF0YVN0b3JlRXhpc3RzKCkpCkBAIC02MTMsNyArNjAzLDIwIEBAIE5ldHdvcmtQ
cm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjplbnN1cmVOZXR3b3JrUHJvY2VzcyhXZWJzaXRl
RGF0YVN0b3JlKiB3aXRoCiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gc3RhbmRhbG9u
ZUFwcGxpY2F0aW9uRG9tYWluOwogICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21h
aW4+IGFwcEJvdW5kRG9tYWluczsKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBtYW51
YWxQcmV2YWxlbnRSZXNvdXJjZTsKLSAgICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18yCisK
KyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVkID0gZG9lc0FwcEhhdmVJVFBFbmFibGVkKCk7Cisg
ICAgaWYgKHdpdGhXZWJzaXRlRGF0YVN0b3JlICYmICF3aXRoV2Vic2l0ZURhdGFTdG9yZS0+aXNJ
dHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkgeworICAgICAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNlRW5hYmxlZDsKKyAgICAgICAgd2l0aFdlYnNpdGVEYXRh
U3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKGVuYWJsZVJlc291cmNlTG9h
ZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAobV93ZWJzaXRlRGF0YVN0b3JlICYmICFtX3dl
YnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5h
YmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAg
ICAgIG1fd2Vic2l0ZURhdGFTdG9yZS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQo
ZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7CisgICAgfSBlbHNlIGlmIChXZWJzaXRlRGF0
YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlRXhpc3RzKCkgJiYgIVdlYnNpdGVEYXRhU3RvcmU6OmRl
ZmF1bHREYXRhU3RvcmUoKS0+aXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkgeworICAgICAgICBl
bmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNlRW5hYmxlZDsKKyAg
ICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZSgpLT5zZXRSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9
IGVsc2UKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVy
ZW5jZUVuYWJsZWQ7CisKICAgICBpZiAod2l0aFdlYnNpdGVEYXRhU3RvcmUpIHsKICAgICAgICAg
ZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5yZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpOwogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NU
QVRJU1RJQ1MpCkBAIC04ODQsNyArODg3LDEwIEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlc29s
dmVQYXRoc0ZvclNhbmRib3hFeHRlbnNpb25zKCkKIAogV2ViUHJvY2Vzc1Byb3h5JiBXZWJQcm9j
ZXNzUG9vbDo6Y3JlYXRlTmV3V2ViUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0
YVN0b3JlLCBXZWJQcm9jZXNzUHJveHk6OklzUHJld2FybWVkIGlzUHJld2FybWVkKQogewotICAg
IFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKKyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVk
ID0gZG9lc0FwcEhhdmVJVFBFbmFibGVkKCk7CisgICAgaWYgKHdlYnNpdGVEYXRhU3RvcmUgJiYg
IXdlYnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpCisgICAgICAgIHdl
YnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKG1fdGNjUHJl
ZmVyZW5jZUVuYWJsZWQpOworCiAgICAgYXV0byBwcm9jZXNzUHJveHkgPSBXZWJQcm9jZXNzUHJv
eHk6OmNyZWF0ZSgqdGhpcywgd2Vic2l0ZURhdGFTdG9yZSwgaXNQcmV3YXJtZWQpOwogICAgIGF1
dG8mIHByb2Nlc3MgPSBwcm9jZXNzUHJveHkuZ2V0KCk7CiAgICAgaW5pdGlhbGl6ZU5ld1dlYlBy
b2Nlc3MocHJvY2Vzcywgd2Vic2l0ZURhdGFTdG9yZSwgaXNQcmV3YXJtZWQpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFT
dG9yZUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2Ev
V2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCmluZGV4IDY4NTEzMTVjYWM1MDY5MDY4YTY3NjQzNjk0
NjQyOTdiNjFkMTAyYzEuLmZiM2IyMWZkOTM2MjhhMzRhZTNkNGRlY2ZkNGU3OTdjZjY1MzFmNjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dl
YnNpdGVEYXRhU3RvcmVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KQEAgLTI3LDYgKzI3LDcgQEAK
ICNpbXBvcnQgIldlYnNpdGVEYXRhU3RvcmUuaCIKIAogI2ltcG9ydCAiQ29va2llU3RvcmFnZVV0
aWxzQ0YuaCIKKyNpbXBvcnQgIkRlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgiCiAjaW1wb3J0ICJT
YW5kYm94VXRpbGl0aWVzLmgiCiAjaW1wb3J0ICJTdG9yYWdlTWFuYWdlci5oIgogI2ltcG9ydCAi
V2ViRnJhbWVQb2xpY3lMaXN0ZW5lclByb3h5LmgiCkBAIC00NSwxMiArNDYsNiBAQAogI2ltcG9y
dCA8d3RmL1VSTC5oPgogI2ltcG9ydCA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0jaWYg
VVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9XZWJzaXRl
RGF0YVN0b3JlQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmluZSBXRUJTSVRFX0RBVEFfU1RPUkVf
QURESVRJT05TCi0jZW5kaWYKLQogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW1wb3J0IDxV
SUtpdC9VSUFwcGxpY2F0aW9uLmg+CiAjaW1wb3J0IDxwYWwvaW9zL01hbmFnZWRDb25maWd1cmF0
aW9uU29mdExpbmsuaD4KQEAgLTQ2MywxMSArNDU4LDIzIEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9y
ZTo6aW5pdGlhbGl6ZUFwcEJvdW5kRG9tYWlucyhGb3JjZVJlaW5pdGlhbGl6YXRpb24gZm9yY2VS
ZWluCiAgICAgfSk7CiB9CiAKK3ZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6YWRkVGVzdERvbWFpbnMo
KSBjb25zdAoreworICAgIGlmIChhcHBCb3VuZERvbWFpbnMoKS5pc0VtcHR5KCkpIHsKKyAgICAg
ICAgYXV0byBidW5kbGVJRCA9IFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigp
OworICAgICAgICBhdXRvIGFwcEJvdW5kRG9tYWluc1Rlc3RpbmcgPSBnZXRBcHBCb3VuZERvbWFp
bnNUZXN0aW5nKGJ1bmRsZUlEKTsKKyAgICAgICAgaWYgKGFwcEJvdW5kRG9tYWluc1Rlc3Rpbmcp
IHsKKyAgICAgICAgICAgIGZvciAoYXV0byYgZG9tYWluIDogKmFwcEJvdW5kRG9tYWluc1Rlc3Rp
bmcpCisgICAgICAgICAgICAgICAgYXBwQm91bmREb21haW5zKCkuYWRkKGRvbWFpbik7CisgICAg
ICAgIH0KKyAgICB9Cit9CisKIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmRE
b21haW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSGFzaFNldDxXZWJDb3JlOjpSZWdp
c3RyYWJsZURvbWFpbj4mLCBjb25zdCBIYXNoU2V0PFN0cmluZz4mKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikgY29uc3QKIHsKICAgICBpZiAoaGFzSW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFpbnMpIHsK
ICAgICAgICAgaWYgKG1faXNJbkFwcEJyb3dzZXJQcml2YWN5VGVzdE1vZGVFbmFibGVkKSB7Ci0g
ICAgICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICAgICAgYWRk
VGVzdERvbWFpbnMoKTsKICAgICAgICAgfQogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihhcHBC
b3VuZERvbWFpbnMoKSwgYXBwQm91bmRTY2hlbWVzKCkpOwogICAgICAgICByZXR1cm47CkBAIC00
NzksNyArNDg2LDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFp
bnMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBIYXNoU2UKICAgICAgICAgUnVuTG9vcDo6
bWFpbigpLmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRU
aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0gKCkg
bXV0YWJsZSB7CiAgICAgICAgICAgICBBU1NFUlQoaGFzSW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFp
bnMpOwogICAgICAgICAgICAgaWYgKG1faXNJbkFwcEJyb3dzZXJQcml2YWN5VGVzdE1vZGVFbmFi
bGVkKSB7Ci0gICAgICAgICAgICAgICAgV0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAg
ICAgICAgICAgICAgICBhZGRUZXN0RG9tYWlucygpOwogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoYXBwQm91bmREb21haW5zKCksIGFwcEJvdW5kU2NoZW1lcygp
KTsKICAgICAgICAgfSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKaW5kZXggYzZmYmJjNDkyMzlmNjk1YThiYTM0MWVm
NjkzMDU3Y2VmMWVhYjZkMC4uMGE3ZjgzZDJiN2RjNjM1MzhjODU3ODgwMGU2MTdhZmZjNWQzZjE5
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0
ZURhdGFTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dl
YnNpdGVEYXRhU3RvcmUuaApAQCAtMzEyLDYgKzMxMiw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAg
ICAgZW51bSBjbGFzcyBGb3JjZVJlaW5pdGlhbGl6YXRpb24gOiBib29sIHsgTm8sIFllcyB9Owog
ICAgIHZvaWQgaW5pdGlhbGl6ZUFwcEJvdW5kRG9tYWlucyhGb3JjZVJlaW5pdGlhbGl6YXRpb24g
PSBGb3JjZVJlaW5pdGlhbGl6YXRpb246Ok5vKTsKKyAgICB2b2lkIGFkZFRlc3REb21haW5zKCkg
Y29uc3Q7CiAKICAgICB2b2lkIGZldGNoRGF0YUFuZEFwcGx5KE9wdGlvblNldDxXZWJzaXRlRGF0
YVR5cGU+LCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4sIFJlZlB0cjxXb3JrUXVl
dWU+JiYsIEZ1bmN0aW9uPHZvaWQoVmVjdG9yPFdlYnNpdGVEYXRhUmVjb3JkPik+JiYgYXBwbHkp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAzMDQyMGQ5MDZjMDJkM2M4ZmVjZTBhZGNhZGJiZjliNGEwMDg3ZDZiLi5mZTgzYzQyNTJi
YmM2MDdlMTY4MjNjOGQ0Y2FiMWE1MGMwZTExZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTk2Myw2ICs5NjMsNyBAQAogCQk0OUJD
QTE5MjIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFy
dHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNB
MTkxMjNBMTc3NjYwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0
eS5oICovOyB9OwogCQk0OUJDQTE5NTIzQTE4Q0ZEMDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTAyM0ExNzU0OTAwMjhBODM2IC8qIF9XS1Jlc291
cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAqLzsgfTsKIAkJNDlCQ0ExOTcy
M0ExOTMwRDAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJDQTE5NjIz
QTE4RjYyMDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAq
LzsgfTsKKwkJNDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hl
Y2tzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlE
QUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovOyB9
OwogCQk0OUVDQTQxQzIzRkNBNUQ4MDAyMzM1OEQgLyogUG9saWN5RGVjaXNpb24uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RUNBNDFCMjNGQ0E0ODYw
MDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oICovOyB9OwogCQk0OUZCRUZGRDIzOUIwMTFEMDBC
RDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUZCRUZGQzIzOUIwMTFEMDBC
RDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkubW0gKi87IH07CiAJ
CTQ5RkJFRkZGMjM5QjAxMkYwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhp
cmRQYXJ0eS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ5RkJFRkZFMjM5QjAxMkYwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhp
cmRQYXJ0eS5tbSAqLzsgfTsKQEAgLTM1ODYsNiArMzU4Nyw4IEBACiAJCTQ5QkNBMTkwMjNBMTc1
NDkwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFs
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50
ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlCQ0ExOTEyM0ExNzc2NjAw
MjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQ5QkNBMTk2MjNBMThGNjIwMDI4QTgzNiAvKiBBUElSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
OURBQTM4QjI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlEQUEzOEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5RUNBNDFCMjNGQ0E0ODYwMDIzMzU4
RCAvKiBQb2xpY3lEZWNpc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQb2xpY3lEZWNpc2lvbi5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUZCRUZGQTIzOUFEOTc4MDBCRDAzMkYgLyog
X1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dL
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDlGQkVGRkIyMzlBREIxODAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NGaXJzdFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NGaXJzdFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03NDgzLDYgKzc0
ODYsOCBAQAogCQkJCTFDNzM5RTg1MjM0N0JDRjYwMEM2MjFFQyAvKiBDb3JlVGV4dEhlbHBlcnMu
bW0gKi8sCiAJCQkJQzU1RjkxNkMxQzU5NUU0NDAwMjlFOTJEIC8qIERhdGFEZXRlY3Rpb25SZXN1
bHQuaCAqLywKIAkJCQlDNTVGOTE2RDFDNTk1RTQ0MDAyOUU5MkQgLyogRGF0YURldGVjdGlvblJl
c3VsdC5tbSAqLywKKwkJCQk0OURBQTM4RDI0Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCAqLywKKwkJCQk0OURBQTM4QjI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVs
dFdlYkJyb3dzZXJDaGVja3MubW0gKi8sCiAJCQkJQ0U1NTBFMTMyMjgzNzQ0NDAwRDI4NzkxIC8q
IEluc2VydFRleHRPcHRpb25zLmNwcCAqLywKIAkJCQlDRTU1MEUxMjIyODM3M0M4MDBEMjg3OTEg
LyogSW5zZXJ0VGV4dE9wdGlvbnMuaCAqLywKIAkJCQlDMTY2M0U1QTI0QUVBNzQyMDBDNkEzQjIg
LyogTGF1bmNoU2VydmljZXNEYXRhYmFzZVhQQ0NvbnN0YW50cy5oICovLApAQCAtMTI3MzAsNiAr
MTI3MzUsNyBAQAogCQkJCTJEOTJBNzdEMjEyQjZBNzEwMEY0OTNGRCAvKiBDb25uZWN0aW9uLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTJEOTJBNzdFMjEyQjZBNzEwMEY0OTNGRCAvKiBEYXRhUmVm
ZXJlbmNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJEOTJBNzdGMjEyQjZBNzEwMEY0OTNGRCAv
KiBEZWNvZGVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQ5REFBMzhDMjRDQkExQTgwMDc5M0Q3
NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTJEMEM1
NkZFMjI5RjFERUEwMEJEMzNFNyAvKiBEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsubW0gaW4gU291
cmNlcyAqLywKIAkJCQkxQUI3RDYxOTEyODhCOUQ5MDBDRkQwOEMgLyogRG93bmxvYWRQcm94eU1l
c3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQTY0MjI5OTEyREQwMjkyMDBD
QUFFMkMgLyogRHJhd2luZ0FyZWFNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2Q0Yjk0
YzJkNDZjYTZhMTliY2QwYWU0ZGU0N2I1OWRkNzA4OGM4Ni4uYjEzNWIxMDgzZTUyYzhhY2UxYjYz
NDQ0YTBlOWJlMTMxNjIxNzM0NSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rv
b2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA3LTI4ICBLYXRlIENoZW5leSAg
PGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIE1pZ3JhdGUgQXBwLUJvdW5k
IERvbWFpbnMgY29kZSBmcm9tIFdlYktpdCBBZGRpdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDg4OQorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNjYwNzU4NTc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmVwbGFjZSBXZWJLaXQgQWRkaXRpb25zIG1hY3JvcyB3aXRoIGNvZGUgdG8gc2V0IGEg
ZGlmZmVyZW50IGJ1bmRsZQorICAgICAgICBpZGVudGlmaWVyIGluZGljYXRpbmcgdGhhdCB3ZSB3
YW50IHRvIHJ1biBhbiBBcHAtQm91bmQgRG9tYWlucyB0ZXN0LgorCisgICAgICAgIFJlbW92ZSAj
aWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykgY2hlY2sgc28gd2UgcnVuIHRoZXNlIHRlc3RzIG9u
IEVXUy4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBC
cm93c2VyUHJpdmFjeS5tbToKKyAgICAgICAgKGNsZWFuVXBJbkFwcEJyb3dzZXJQcml2YWN5VGVz
dFNldHRpbmdzKToKKyAgICAgICAgKGluaXRpYWxpemVJbkFwcEJyb3dzZXJQcml2YWN5VGVzdFNl
dHRpbmdzKToKKwogMjAyMC0wNy0yOCAgSm9uYXRoYW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5j
b20+CiAKICAgICAgICAgW3dlYmtpdGNvcmVweV0gQWRkIHN0cmluZ191dGlscyAoUGFydCAzKQpk
aWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJy
b3dzZXJQcml2YWN5Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9J
bkFwcEJyb3dzZXJQcml2YWN5Lm1tCmluZGV4IGU3NTAwOWI1ZWE0OGI1NGU4YTY2MTMzZDI1OGM4
NjMwZmU1NDljZDcuLjM2OWZmZTUyMzE4ZTA3NGIwZjQ0ZjFjZDA2MzZlMzg5OTZkMzE3MzQgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93
c2VyUHJpdmFjeS5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L0luQXBwQnJvd3NlclByaXZhY3kubW0KQEAgLTQ1LDkgKzQ1LDYgQEAKIAogI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2ltcG9ydCA8V2Vi
S2l0QWRkaXRpb25zL0luQXBwQnJvd3NlclByaXZhY3lUZXN0QWRkaXRpb25zLmg+Ci0KIHN0YXRp
YyBib29sIGlzRG9uZTsKIAogQGludGVyZmFjZSBBcHBCb3VuZERvbWFpbkRlbGVnYXRlIDogTlNP
YmplY3QgPFdLTmF2aWdhdGlvbkRlbGVnYXRlPgpAQCAtMTMxLDE0ICsxMjgsMTQgQEAgQGVuZAog
c3RhdGljIHZvaWQgY2xlYW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MoKQogewog
ICAgIFdlYkNvcmU6OmNsZWFyQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJy
aWRlKCk7Ci0gICAgSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlNfMgorICAgIFdlYkNv
cmU6OnNldEFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigiY29tLmFwcGxlLldlYktpdC5UZXN0
V2ViS2l0QVBJIik7CiB9CiAKIHN0YXRpYyB2b2lkIGluaXRpYWxpemVJbkFwcEJyb3dzZXJQcml2
YWN5VGVzdFNldHRpbmdzKCkKIHsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CiAg
ICAgV2ViQ29yZTo6Y2xlYXJBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXJUZXN0aW5nT3ZlcnJp
ZGUoKTsKLSAgICBJTl9BUFBfQlJPV1NFUl9QUklWQUNZX0FERElUSU9OUworICAgIFdlYkNvcmU6
OnNldEFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigiaW5BcHBCcm93c2VyUHJpdmFjeVRlc3RJ
ZGVudGlmaWVyIik7CiB9CiAKIFRFU1QoSW5BcHBCcm93c2VyUHJpdmFjeSwgTm9uQXBwQm91bmRE
b21haW5GYWlsZWRVc2VyU2NyaXB0QXRTdGFydCkKQEAgLTEzMzgsNiArMTMzNSw0IEBAIFRFU1Qo
SW5BcHBCcm93c2VyUHJpdmFjeSwgQXBwQm91bmRDdXN0b21TY2hlbWUpCiAgICAgVGVzdFdlYktp
dEFQSTo6VXRpbDo6cnVuKCZpc0RvbmUpOwogfQogCi0jZW5kaWYgLy8gVVNFKEFQUExFX0lOVEVS
TkFMX1NESykKLQogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzBlZTg2
NGY0YTFhZDY2YjQzNTNlODBiOWNmN2Y4ZWQ2NDY2MmZmNC4uNGNmNmE3MmFjMzUwN2RmMDI5ZTM5
ZWVmZDA3OGI1MDY5ODcwMmUyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA3LTI4ICBL
YXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIE1pZ3Jh
dGUgQXBwLUJvdW5kIERvbWFpbnMgY29kZSBmcm9tIFdlYktpdCBBZGRpdGlvbnMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDg4OQorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNjYwNzU4NTc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAgICBUaGVzZSB0ZXN0
cyBhcmUgbm93IGV4cGVjdGVkIHRvIHBhc3MuCisKIDIwMjAtMDctMjggIFJ5YW4gSGFkZGFkICA8
cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHRlc3QgZXhwZWN0YXRpb25zIGFu
ZCBiYXNlbGluZXMgZm9yIGlPUyAxNApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZGEwZjVlZmJiMDJk
MmRhOGJjZWU0NDM2NTQzMjQ1N2VhMWE0YWIxOS4uOTUxMzYzZjU5MGI4YzhiZWE0ZGIzNDhlM2Vk
NWViMWY5ZTg0ZGU5YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNjUsNyArMTY1LDcgQEAgaHR0
cC90ZXN0cy9uYXZpZ2F0aW9uL3VzZXJhZ2VudC1yZWxvYWQucGhwIFsgU2tpcCBdCiBzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vb3BlbmRhdGFiYXNlLWFmdGVyLXN0b3JhZ2UtY3Jhc2guaHRtbCBb
IFNraXAgXQogc3RvcmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbCBbIFNraXAgXQog
ZmFzdC9mb3Jtcy9jYWxsLXRleHQtZGlkLWNoYW5nZS1pbi10ZXh0LWZpZWxkLXdoZW4tdHlwaW5n
Lmh0bWwgWyBTa2lwIF0KLWh0dHAvdGVzdHMvaW4tYXBwLWJyb3dzZXItcHJpdmFjeS8gWyBTa2lw
IF0KK2h0dHAvdGVzdHMvaW4tYXBwLWJyb3dzZXItcHJpdmFjeS8gWyBQYXNzIF0KIAogCiAjIE9u
bHkgTWFjIGFuZCBpT1MgaGF2ZSBhbiBpbXBsZW1lbnRhdGlvbiBvZiBVSVNjcmlwdENvbnRyb2xs
ZXI6OmRvQXN5bmNUYXNrKCkuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405405</attachid>
            <date>2020-07-28 13:48:47 -0700</date>
            <delta_ts>2020-07-28 13:54:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728134846.patch</filename>
            <type>text/plain</type>
            <size>35453</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjY1ODgzZGMzZDc4NjAxM2NmZjdkOWJiMjY0YjA4MWYwMzU5NDkyMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTYzLDcgKzYzLDYgQEAKICNpbXBvcnQgPFdlYktpdEFk
ZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmluZSBO
RVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNkZWZpbmUgTkVUV09SS19TRVNTSU9O
X0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAjaW1wb3J0ICJEZXZpY2VNYW5hZ2Vt
ZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MSwyOSBAQCB2b2lkIFNlc3Npb25XcmFwcGVy
Ojppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24sIE5l
dHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNlc3Npb25XaXRoQ29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdldCgpIGRlbGVnYXRlUXVldWU6W05T
T3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNpZiBIQVZFKFNFU1NJT05fQ0xFQU5V
UCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFudXAoTmV0d29ya1Nlc3Npb25Db2Nv
YSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBEb24ndCBvdmVycmlkZSBhbiBleHBs
aWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNldCkKKyAgICAgICAgcmV0dXJuOwor
CisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQorICAgIGF1dG8gcGFyZW50QXVk
aXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9BU1NFUlQocGFyZW50QXVkaXRUb2tl
bik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisKKyAgICBib29sIGl0cEVuYWJsZWQg
PSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBhcmVudEF1ZGl0VG9rZW4pOworICAg
IGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5pc1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAhPSBwYXNzZWRFbmFibGVkU3RhdGUp
CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBlbmFibGVkIHN0YXRlICglZCkgZG9l
cyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRwRW5hYmxlZCwgcGFzc2VkRW5hYmxl
ZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKHBh
c3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgorfQorI2VuZGlmCisKIE5ldHdvcmtT
ZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdvcmtQ
cm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAg
ICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycykKICAgICAsIG1f
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMuYm91bmRJbnRlcmZhY2VJZGVudGlm
aWVyKQpAQCAtMTI5Miw3ICsxMzE0LDcgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNvY29hOjppbml0
aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZpZ2F0aW5nVG9BcHBCb3UKIFNlc3Np
b25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2soY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBXZWJDb3JlOjpTdG9yZWRDcmVk
ZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgT3B0aW9uYWw8TmF2aWdhdGlu
Z1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAgICAg
YXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA6IE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElPTlNf
MikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKG5ldHdvcmtQcm9jZXNz
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkKICAgICAgICAg
c2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6
Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoYXV0byog
c3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Npb24oKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZkN2U0M2YxM2JlZgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hl
Y2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWluOwor
fQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdz
KCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRBcHBC
b3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOworYm9vbCBzaG91bGRCZVRyZWF0ZWRB
c0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpOwordm9pZCBkZXRlcm1pbmVJVFBT
dGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKK2Jvb2wgZG9lc1BhcmVudFBy
b2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90Pik7Citib29sIGlzRnVs
bFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlv
bmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmIyNzY3OTc1Y2FjYTdjMWNmY2FmZGZiNjI1ZWI0MGI0ZDk0YWJhNDAKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZp
Zy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKworI2ltcG9ydCAiVmVy
c2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiVENDU1BJLmgiCisjaW1wb3J0IDxXZWJDb3JlL1JlZ2lz
dHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNr
cy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+Cisj
aW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQgPHd0Zi9jb2NvYS9FbnRpdGxlbWVu
dHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KKworU09GVF9MSU5LX1BSSVZB
VEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRDQ0FjY2Vzc1ByZWZsaWdodCwgVEND
QWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgQ0ZEaWN0aW9uYXJ5
UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitTT0ZUX0xJTksoVENDLCBUQ0NBY2Nl
c3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZT
dHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tlbiwgQ0ZEaWN0aW9uYXJ5UmVmIG9w
dGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQorU09GVF9MSU5LX0NPTlNUQU5UKFRD
Qywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNraW5nUHJldmVudGlvbiwgQ0ZTdHJp
bmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0YXRpYyBib29sIGlzRnVsbFdlYkJy
b3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nl
cihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJldHVybiBidW5kbGVJRCA9PSAiY29t
LmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1bmRsZUlEID09ICJjb20uYXBwbGUu
V2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09wdGlvbmFsPFZlY3RvcjxXZWJDb3Jl
OjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoY29uc3QgU3Ry
aW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQuaXNOdWxsKCkpCisgICAgICAgIHJl
dHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0byBhcHBCb3VuZERvbWFpbkxpc3Qg
PSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcsIFZlY3RvcjxXZWJDb3JlOjpSZWdp
c3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElkZW50
aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4geyBXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbVJlZ2lzdHJhYmxlRG9tYWluU3Ry
aW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAgIGF1dG8gYXBwQm91bmREb21haW5J
dGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRsZUlEKTsKKyAgICBpZiAoYXBwQm91
bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+ZW5kKCkpCisgICAgICAgIHJldHVy
biBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsK
K30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9vbCBpc0luV2ViS2l0Q2hpbGRQcm9j
ZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJvY2VzczsKKworICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAg
ICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVu
ZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9jZXNzID0gW2J1bmRsZUlkZW50aWZp
ZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50Il0KKyAgICAgICAgICAg
IHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNvbS5hcHBsZS5XZWJLaXQuTmV0d29y
a2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRpZmllciBoYXNQcmVmaXg6QCJjb20u
YXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAgcmV0dXJuIGlzSW5TdWJQcm9jZXNz
OworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUgOiB1aW50OF90IHsKKyAgICBVbmlu
aXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBFbmFibGVkLAorICAgIERpc2FibGVk
Cit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+IGdfY3VycmVudElUUFN0YXRlID0g
SVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBib29sIGhhc1JlcXVlc3RlZENyb3Nz
V2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hp
bGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc1JlcXVlc3Rl
ZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0g
b2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3NzV2Vic2l0ZVRyYWNraW5nVXNhZ2VE
ZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVUcmFja2lu
Z1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVybWluZUlUUFN0YXRlSW50ZXJuYWwo
Ym9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmll
cikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBBU1NFUlQoIWlzSW5X
ZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFwcFdhc0xpbmtlZE9uT3JBZnRlcikK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFpc0Z1bGxXZWJCcm93c2VyKGJ1bmRs
ZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Np
b24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBUQ0NBY2Nlc3NQcmVmbGlnaHRSZXN1
bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKKyNpZiAoUExBVEZPUk0oSU9T
KSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApIHx8IChQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwKQor
ICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRrVENDU2VydmljZVdlYktpdEludGVs
bGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIpOworI2VuZGlmCisgICAgcmV0dXJu
IHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworfQorCitzdGF0aWMgZGlzcGF0
Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVybWluZUlUUFN0YXRlKCkKK3sKKyAg
ICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlmIChnX2N1cnJlbnRJVFBTdGF0ZSAh
PSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZ19jdXJy
ZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5nOworICAgIGJvb2wgYXBwV2FzTGlu
a2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1ZlcnNpb246OkZpcnN0V2l0aFNlc3Np
b25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fsd2F5c0xpbmtlZE9uQWZ0ZXI6Olll
cyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVldWVfY3JlYXRlKCJjb20uYXBwbGUu
V2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAgIGRpc3BhdGNoX2FzeW5jKGdfaXRw
UXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRsZUlkZW50aWZpZXIgPSBXZWJDb3Jl
OjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29sYXRlZENvcHkoKV0geworICAgICAg
ICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0YXRlSW50ZXJuYWwoYXBwV2FzTGlu
a2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElUUFN0YXRlOjpFbmFibGVkIDogSVRQ
U3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9t
YWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRjaF9yZWxlYXNlKGdfaXRwUXVldWUp
OworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7CisgICAgICAgIH0pOworICAgIH0p
OworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpCit7CisgICAgQVNTRVJUKCFpc0lu
V2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7Cisg
ICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6OkluaXRpYWxpemluZykKKyAgICAg
ICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0YXRlOjpFbmFibGVkOworCisgICAg
UkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBfX2Jsb2NrIGJvb2wgaXNJVFBFbmFi
bGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwgXnsKKyAgICAgICAgaXNJVFBFbmFi
bGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6OkVuYWJsZWQ7CisgICAgfSk7Cisg
ICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJ
VFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAgQVNT
RVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFp
bigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKGF1ZGl0VG9r
ZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRDQ0FjY2Vzc1ByZWZsaWdodFJlc3Vs
dCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworI2lmIChQTEFURk9STShJT1Mp
ICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkgfHwgKFBMQVRG
T1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMTAwMDApCisg
ICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodFdp
dGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdlbnRUcmFja2luZ1ByZXZl
bnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRyKTsKKyNlbmRpZgorICAgIHJldHVy
biByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKK30KKworc3RhdGljIHN0ZDo6
YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MgPSBmYWxzZTsKK2Jvb2wgaGFzUHJv
aGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9j
ZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncyA9IGZh
bHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MpCisgICAgICAgIHJldHVybiBo
YXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNEaWN0aW9uYXJ5ICppbmZvRGljdGlv
bmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0RpY3Rpb25hcnldOworICAgIFJFTEVB
U0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8vIFNlZSA8cmRhcjovL3Byb2JsZW0v
NTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlzIGxpc3Qgd2FzIHNlbGVjdGVkLgor
ICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAgICAgICBAIk5TUmVtaW5kZXJzVXNh
Z2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0VXNhZ2VEZXNjcmlwdGlvbiIsCisg
ICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJO
U1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TSGVhbHRoU2hhcmVV
c2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0aFVwZGF0ZVVzYWdlRGVzY3JpcHRp
b24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAg
ICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNhZ2VEZXNjcmlwdGlvbiIKKyAgICBd
OworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0cmluZyA6IHByb2hpYml0ZWRTdHJp
bmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OnByb2hpYml0
ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9IFtOU1N0cmluZyBzdHJp
bmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZhY3ldICVAIHVzZWQgcHJvaGliaXRl
ZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlm
aWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAgICBXVEZMb2dBbHdheXMobWVzc2Fn
ZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3Mg
PSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgaGFzQ2hl
Y2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJuIGhhc1Byb2hpYml0ZWRVc2FnZVN0
cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFs
PGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGls
ZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVkaXRUb2tlbik7CisKKyAgICBzdGF0
aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25j
ZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICBmdWxsV2ViQnJvd3NlciA9
IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1ZSgpLCAiY29tLmFwcGxlLmRldmVs
b3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAgcmV0dXJuIGZ1bGxXZWJCcm93c2Vy
IHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2ViQ29yZTo6YXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBpc0Z1bGxXZWJCcm93c2VyKGNvbnN0
IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGls
ZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlciA9IFdURjo6cHJv
Y2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxvcGVyLndlYi1icm93c2VyIik7CisK
KyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nl
cihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1bGxXZWJCcm93c2VyKCkKK3sKKyAg
ICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6
OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJCcm93c2VyKFdlYkNvcmU6OmFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3Jl
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3Bw
CmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQwNDY1OWM5YjUxM2EuLmE2ZTE1OTFl
NTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCkBAIC0yNiw2ICsyNiwxMCBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQSUhUVFBDb29raWVTdG9yZS5oIgog
CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRlICJEZWZhdWx0V2ViQnJvd3NlckNo
ZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29raWVNYW5hZ2VyUHJveHkuaCIKICNp
bmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUgIldlYnNpdGVEYXRhU3RvcmUuaCIK
QEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9IVFRQQ29va2llQWNjZXB0UG9s
aWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaD4KIAotI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL0hUVFBD
b29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgSU1QTEVNRU5UX0lOX0FQUF9C
Uk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlmCi0KIHVzaW5nIG5hbWVzcGFjZSBX
ZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyArNjQsNyBAQCB2b2lkIEhUVFBDb29r
aWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29raWU+IGFwcEJvdW5kQ29va2llczsK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3duaW5nRGF0YVN0b3JlLT5nZXRBcHBC
b3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2llcyA9IFdURk1vdmUoYXBwQm91bmRD
b29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0g
KGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBpZiAoIWRvbWFpbnMuaXNFbXB0eSgp
ICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZX0VOQUJMRUQpIHsKKyAgICAgICAg
aWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2ViQnJvd3NlcigpKSB7CiAgICAgICAg
ICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsKICAgICAgICAgICAgICAgICBpZiAo
ZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3Jl
YXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAgICAgICAgICAgICAgICBhcHBCb3Vu
ZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRleCA0MzFmY2VmNzg2YzliNWMzMDA0
NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3M2RlZDQwZDc5M2QwMThlNDhhZTli
NTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNv
bmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQYWdl
Q29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBACiAjaW5jbHVkZSAiV2ViVVJMU2No
ZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250ZW50Q29udHJvbGxlclByb3h5Lmgi
CiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9u
cy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgUEFHRV9DT05G
SUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFO
SUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5pZmVzdC5oIgogI2VuZGlmCkBAIC01
NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4gUGFnZUNvbmZpZ3VyYXRpb246OmNy
ZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdlQ29uZmlndXJhdGlvbigpCi1QQUdF
X0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYxMjU0NzJjNjBlOTE0ODcxZjgyMTg1
ZTRlYjMuLmRkMjMyMDA1ZDBiZDRlNzRmMTQzNjQ2Y2Y2ZTBkNTI2MDZjNGNlNjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNjAsNiArNjAsNyBAQAogI2lu
Y2x1ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2luY2x1ZGUgIkF1dGhlbnRpY2F0b3JN
YW5hZ2VyLmgiCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5oIgorI2luY2x1ZGUgIkRlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLmgiCiAjaW5jbHVkZSAiRG93bmxvYWRQcm94eS5oIgogI2luY2x1ZGUg
IkRyYXdpbmdBcmVhTWVzc2FnZXMuaCIKICNpbmNsdWRlICJEcmF3aW5nQXJlYVByb3h5LmgiCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKaW5kZXggOTI4MWUxY2U0
MzI5YjM0MmMzM2FkODkwN2UzODczMTZiZmRmMDIxZC4uZTg5ZjA2OWY0YjYzNjg0YTJhMzI5YjI1
OWJmNDM5NGY3MmQ5NjIyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcApAQCAtMTQxLDE1ICsxNDEsNiBAQAogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkTGVh
a0NvdW50ZXIuaD4KICNlbmRpZgogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbmNs
dWRlIDxXZWJLaXRBZGRpdGlvbnMvV2ViUHJvY2Vzc1Bvb2xBZGRpdGlvbnMuaD4KLSNlbHNlCi0j
ZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BP
T0xfQURESVRJT05TXzIKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMwotI2Rl
ZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180Ci0jZW5kaWYKLQogI2RlZmluZSBXRUJQ
Uk9DRVNTUE9PTF9SRUxFQVNFX0xPRyhjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0coY2hh
bm5lbCwgIiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQog
I2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPR19FUlJPUihjaGFubmVsLCBmbXQsIC4u
LikgUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgIiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10
LCB0aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xP
R19JRl9BTExPV0VEKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxFQVNFX0xPR19JRihzZXNzaW9uSUQu
aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCksIGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29s
OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKQEAgLTI1NSw3ICsyNDYsNiBAQCBXZWJQcm9j
ZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24mIGNv
bmZpZ3VyYXRpb24pCiAjZW5kaWYKICAgICAsIG1fYWx3YXlzUnVuc0F0QmFja2dyb3VuZFByaW9y
aXR5KG1fY29uZmlndXJhdGlvbi0+YWx3YXlzUnVuc0F0QmFja2dyb3VuZFByaW9yaXR5KCkpCiAg
ICAgLCBtX3Nob3VsZFRha2VVSUJhY2tncm91bmRBc3NlcnRpb24obV9jb25maWd1cmF0aW9uLT5z
aG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKCkpCi0gICAgV0VCX1BST0NFU1NfUE9PTF9B
RERJVElPTlMKICAgICAsIG1fdXNlck9ic2VydmFibGVQYWdlQ291bnRlcihbdGhpc10oUmVmQ291
bnRlckV2ZW50KSB7IHVwZGF0ZVByb2Nlc3NTdXBwcmVzc2lvblN0YXRlKCk7IH0pCiAgICAgLCBt
X3Byb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkRm9yUGFnZUNvdW50ZXIoW3RoaXNdKFJlZkNvdW50
ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25TdGF0ZSgpOyB9KQogICAgICwgbV9o
aWRkZW5QYWdlVGhyb3R0bGluZ0F1dG9JbmNyZWFzZXNDb3VudGVyKFt0aGlzXShSZWZDb3VudGVy
RXZlbnQpIHsgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ1RpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOyB9
KQpAQCAtMjcxLDcgKzI2MSw3IEBAIFdlYlByb2Nlc3NQb29sOjpXZWJQcm9jZXNzUG9vbChBUEk6
OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbikKICAgICAgICAgV1RGOjpz
ZXRQcm9jZXNzUHJpdmlsZWdlcyhhbGxQcml2aWxlZ2VzKCkpOwogICAgICAgICBXZWJDb3JlOjpO
ZXR3b3JrU3RvcmFnZVNlc3Npb246OnBlcm1pdFByb2Nlc3NUb1VzZUNvb2tpZUFQSSh0cnVlKTsK
ICAgICAgICAgUHJvY2Vzczo6c2V0SWRlbnRpZmllcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmll
cjo6Z2VuZXJhdGUoKSk7Ci0gICAgICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzQKKyAg
ICAgICAgZGV0ZXJtaW5lSVRQU3RhdGUoKTsKICAgICB9KTsKIAogICAgIGlmICghbV93ZWJzaXRl
RGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4
aXN0cygpKQpAQCAtNjEzLDcgKzYwMywyMCBAQCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQcm9j
ZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2l0aAogICAg
IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFpbjsK
ICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBhcHBCb3VuZERvbWFpbnM7
CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFudWFsUHJldmFsZW50UmVzb3VyY2U7
Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgorCisgICAgbV90Y2NQcmVmZXJlbmNl
RW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOworICAgIGlmICh3aXRoV2Vic2l0ZURh
dGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0
KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVy
ZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9
IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAhbV93ZWJzaXRlRGF0YVN0b3JlLT5pc0l0
cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRp
c3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAgICAgICBtX3dlYnNpdGVEYXRhU3Rv
cmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKGVuYWJsZVJlc291cmNlTG9hZFN0
YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFT
dG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlKCktPmlz
SXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIFdlYnNpdGVEYXRhU3Rv
cmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQo
ZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7CisgICAgfSBlbHNlCisgICAgICAgIGVuYWJs
ZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworCiAgICAg
aWYgKHdpdGhXZWJzaXRlRGF0YVN0b3JlKSB7CiAgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0
YXRpc3RpY3MgPSB3aXRoV2Vic2l0ZURhdGFTdG9yZS0+cmVzb3VyY2VMb2FkU3RhdGlzdGljc0Vu
YWJsZWQoKTsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQpAQCAtODg0LDcg
Kzg4NywxMCBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpyZXNvbHZlUGF0aHNGb3JTYW5kYm94RXh0
ZW5zaW9ucygpCiAKIFdlYlByb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2Vic2l0ZURhdGFTdG9yZSwgV2ViUHJvY2Vzc1By
b3h5OjpJc1ByZXdhcm1lZCBpc1ByZXdhcm1lZCkKIHsKLSAgICBXRUJfUFJPQ0VTU19QT09MX0FE
RElUSU9OU18zCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5h
YmxlZCgpOworICAgIGlmICh3ZWJzaXRlRGF0YVN0b3JlICYmICF3ZWJzaXRlRGF0YVN0b3JlLT5p
c0l0cFN0YXRlRXhwbGljaXRseVNldCgpKQorICAgICAgICB3ZWJzaXRlRGF0YVN0b3JlLT5zZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChtX3RjY1ByZWZlcmVuY2VFbmFibGVkKTsKKwog
ICAgIGF1dG8gcHJvY2Vzc1Byb3h5ID0gV2ViUHJvY2Vzc1Byb3h5OjpjcmVhdGUoKnRoaXMsIHdl
YnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKICAgICBhdXRvJiBwcm9jZXNzID0gcHJvY2Vz
c1Byb3h5LmdldCgpOwogICAgIGluaXRpYWxpemVOZXdXZWJQcm9jZXNzKHByb2Nlc3MsIHdlYnNp
dGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbSBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2Nv
YS5tbQppbmRleCA2ODUxMzE1Y2FjNTA2OTA2OGE2NzY0MzY5NDY0Mjk3YjYxZDEwMmMxLi5mYjNi
MjFmZDkzNjI4YTM0YWUzZDRkZWNmZDRlNzk3Y2Y2NTMxZjY1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2Eu
bW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0
ZURhdGFTdG9yZUNvY29hLm1tCkBAIC0yNyw2ICsyNyw3IEBACiAjaW1wb3J0ICJXZWJzaXRlRGF0
YVN0b3JlLmgiCiAKICNpbXBvcnQgIkNvb2tpZVN0b3JhZ2VVdGlsc0NGLmgiCisjaW1wb3J0ICJE
ZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2ltcG9ydCAiU2FuZGJveFV0aWxpdGllcy5oIgog
I2ltcG9ydCAiU3RvcmFnZU1hbmFnZXIuaCIKICNpbXBvcnQgIldlYkZyYW1lUG9saWN5TGlzdGVu
ZXJQcm94eS5oIgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNpbXBvcnQgPHd0Zi9VUkwuaD4KICNpbXBv
cnQgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9T
REspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvV2Vic2l0ZURhdGFTdG9yZUFkZGl0aW9ucy5o
PgotI2Vsc2UKLSNkZWZpbmUgV0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUwotI2VuZGlmCi0K
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCA8VUlLaXQvVUlBcHBsaWNhdGlvbi5o
PgogI2ltcG9ydCA8cGFsL2lvcy9NYW5hZ2VkQ29uZmlndXJhdGlvblNvZnRMaW5rLmg+CkBAIC00
NjMsMTEgKzQ1OCwyMyBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmluaXRpYWxpemVBcHBCb3Vu
ZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9uIGZvcmNlUmVpbgogICAgIH0pOwogfQogCit2
b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmFkZFRlc3REb21haW5zKCkgY29uc3QKK3sKKyAgICBpZiAo
YXBwQm91bmREb21haW5zKCkuaXNFbXB0eSgpKSB7CisgICAgICAgIGF1dG8gYnVuZGxlSUQgPSBX
ZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKTsKKyAgICAgICAgYXV0byBhcHBC
b3VuZERvbWFpbnNUZXN0aW5nID0gZ2V0QXBwQm91bmREb21haW5zVGVzdGluZyhidW5kbGVJRCk7
CisgICAgICAgIGlmIChhcHBCb3VuZERvbWFpbnNUZXN0aW5nKSB7CisgICAgICAgICAgICBmb3Ig
KGF1dG8mIGRvbWFpbiA6ICphcHBCb3VuZERvbWFpbnNUZXN0aW5nKQorICAgICAgICAgICAgICAg
IGFwcEJvdW5kRG9tYWlucygpLmFkZChkb21haW4pOworICAgICAgICB9CisgICAgfQorfQorCiB2
b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IEhhc2hTZXQ8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+JiwgY29u
c3QgSGFzaFNldDxTdHJpbmc+Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0CiB7CiAgICAg
aWYgKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zKSB7CiAgICAgICAgIGlmIChtX2lzSW5B
cHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCkgewotICAgICAgICAgICAgV0VCU0lURV9E
QVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgICAgIGFkZFRlc3REb21haW5zKCk7CiAgICAg
ICAgIH0KICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoYXBwQm91bmREb21haW5zKCksIGFwcEJv
dW5kU2NoZW1lcygpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNDc5LDcgKzQ4Niw3IEBAIHZvaWQg
V2Vic2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmREb21haW5zKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgSGFzaFNlCiAgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildICgpIG11dGFibGUgewogICAgICAgICAg
ICAgQVNTRVJUKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zKTsKICAgICAgICAgICAgIGlm
IChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCkgewotICAgICAgICAgICAg
ICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlM7CisgICAgICAgICAgICAgICAgYWRkVGVz
dERvbWFpbnMoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KGFwcEJvdW5kRG9tYWlucygpLCBhcHBCb3VuZFNjaGVtZXMoKSk7CiAgICAgICAgIH0pOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFT
dG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFT
dG9yZS5oCmluZGV4IGM2ZmJiYzQ5MjM5ZjY5NWE4YmEzNDFlZjY5MzA1N2NlZjFlYWI2ZDAuLjBh
N2Y4M2QyYjdkYzYzNTM4Yzg1Nzg4MDBlNjE3YWZmYzVkM2YxOWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAg
LTMxMiw2ICszMTIsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgRm9yY2VS
ZWluaXRpYWxpemF0aW9uIDogYm9vbCB7IE5vLCBZZXMgfTsKICAgICB2b2lkIGluaXRpYWxpemVB
cHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9uID0gRm9yY2VSZWluaXRpYWxpemF0
aW9uOjpObyk7CisgICAgdm9pZCBhZGRUZXN0RG9tYWlucygpIGNvbnN0OwogCiAgICAgdm9pZCBm
ZXRjaERhdGFBbmRBcHBseShPcHRpb25TZXQ8V2Vic2l0ZURhdGFUeXBlPiwgT3B0aW9uU2V0PFdl
YnNpdGVEYXRhRmV0Y2hPcHRpb24+LCBSZWZQdHI8V29ya1F1ZXVlPiYmLCBGdW5jdGlvbjx2b2lk
KFZlY3RvcjxXZWJzaXRlRGF0YVJlY29yZD4pPiYmIGFwcGx5KTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJL
aXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzA0MjBkOTA2YzAyZDNj
OGZlY2UwYWRjYWRiYmY5YjRhMDA4N2Q2Yi4uZmU4M2M0MjUyYmJjNjA3ZTE2ODIzYzhkNGNhYjFh
NTBjMGUxMWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCkBAIC05NjMsNiArOTYzLDcgQEAKIAkJNDlCQ0ExOTIyM0ExNzc2NjAwMjhBODM2
IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJDQTE5MTIzQTE3NzY2MDAyOEE4MzYg
LyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCAqLzsgfTsKIAkJNDlCQ0Ex
OTUyM0ExOENGRDAwMjhBODM2IC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5
SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ5QkNBMTkwMjNBMTc1NDkwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmly
c3RQYXJ0eUludGVybmFsLmggKi87IH07CiAJCTQ5QkNBMTk3MjNBMTkzMEQwMDI4QTgzNiAvKiBB
UElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTYyM0ExOEY2MjAwMjhBODM2IC8qIEFQ
SVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggKi87IH07CisJCTQ5REFBMzhDMjRD
QkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3
NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLzsgfTsKIAkJNDlFQ0E0MUMyM0ZDQTVE
ODAwMjMzNThEIC8qIFBvbGljeURlY2lzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVDQTQxQjIzRkNBNDg2MDAyMzM1OEQgLyogUG9saWN5RGVj
aXNpb24uaCAqLzsgfTsKIAkJNDlGQkVGRkQyMzlCMDExRDAwQkQwMzJGIC8qIF9XS1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkMyMzlCMDExRDAwQkQwMzJGIC8qIF9XS1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tICovOyB9OwogCQk0OUZCRUZGRjIzOUIwMTJGMDBC
RDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUZCRUZGRTIzOUIwMTJGMDBC
RDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkubW0gKi87IH07CkBA
IC0zNTg2LDYgKzM1ODcsOCBAQAogCQk0OUJDQTE5MDIzQTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBf
V0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQ5QkNBMTkxMjNBMTc3NjYwMDI4QTgzNiAvKiBBUElSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
OUJDQTE5NjIzQTE4RjYyMDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJk
UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFy
dHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlEQUEzOEIyNENCQTFBODAwNzkz
RDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0g
RGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0OUVDQTQxQjIzRkNBNDg2MDAyMzM1OEQgLyogUG9saWN5RGVjaXNpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUG9saWN5RGVjaXNpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDlGQkVGRkEyMzlBRDk3ODAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NUaGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NUaGlyZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5RkJFRkZCMjM5
QURCMTgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ4Myw2ICs3NDg2LDggQEAKIAkJCQkxQzczOUU4
NTIzNDdCQ0Y2MDBDNjIxRUMgLyogQ29yZVRleHRIZWxwZXJzLm1tICovLAogCQkJCUM1NUY5MTZD
MUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0LmggKi8sCiAJCQkJQzU1Rjkx
NkQxQzU5NUU0NDAwMjlFOTJEIC8qIERhdGFEZXRlY3Rpb25SZXN1bHQubW0gKi8sCisJCQkJNDlE
QUEzOEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmggKi8sCisJ
CQkJNDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1t
ICovLAogCQkJCUNFNTUwRTEzMjI4Mzc0NDQwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5j
cHAgKi8sCiAJCQkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25z
LmggKi8sCiAJCQkJQzE2NjNFNUEyNEFFQTc0MjAwQzZBM0IyIC8qIExhdW5jaFNlcnZpY2VzRGF0
YWJhc2VYUENDb25zdGFudHMuaCAqLywKQEAgLTEyNzMwLDYgKzEyNzM1LDcgQEAKIAkJCQkyRDky
QTc3RDIxMkI2QTcxMDBGNDkzRkQgLyogQ29ubmVjdGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkyRDkyQTc3RTIxMkI2QTcxMDBGNDkzRkQgLyogRGF0YVJlZmVyZW5jZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkyRDkyQTc3RjIxMkI2QTcxMDBGNDkzRkQgLyogRGVjb2Rlci5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQk0OURBQTM4QzI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dz
ZXJDaGVja3MubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDBDNTZGRTIyOUYxREVBMDBCRDMzRTcg
LyogRGV2aWNlTWFuYWdlbWVudFNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFCN0Q2
MTkxMjg4QjlEOTAwQ0ZEMDhDIC8qIERvd25sb2FkUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMUE2NDIyOTkxMkREMDI5MjAwQ0FBRTJDIC8qIERyYXdpbmdBcmVh
TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hh
bmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDdkNGI5NGMyZDQ2Y2E2YTE5YmNkMGFlNGRl
NDdiNTlkZDcwODhjODYuLmIxMzViMTA4M2U1MmM4YWNlMWI2MzQ0NGEwZTliZTEzMTYyMTczNDUg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMCBAQAorMjAyMC0wNy0yOCAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFw
cGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIEFwcC1Cb3VuZCBEb21haW5zIGNvZGUgZnJvbSBX
ZWJLaXQgQWRkaXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTQ4ODkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY2MDc1ODU3PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2UgV2ViS2l0
IEFkZGl0aW9ucyBtYWNyb3Mgd2l0aCBjb2RlIHRvIHNldCBhIGRpZmZlcmVudCBidW5kbGUKKyAg
ICAgICAgaWRlbnRpZmllciBpbmRpY2F0aW5nIHRoYXQgd2Ugd2FudCB0byBydW4gYW4gQXBwLUJv
dW5kIERvbWFpbnMgdGVzdC4KKworICAgICAgICBSZW1vdmUgI2lmIFVTRShBUFBMRV9JTlRFUk5B
TF9TREspIGNoZWNrIHNvIHdlIHJ1biB0aGVzZSB0ZXN0cyBvbiBFV1MuCisKKyAgICAgICAgKiBU
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW06Cisg
ICAgICAgIChjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncyk6CisgICAgICAg
IChpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncyk6CisKIDIwMjAtMDct
MjggIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJr
aXRjb3JlcHldIEFkZCBzdHJpbmdfdXRpbHMgKFBhcnQgMykKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2VyUHJpdmFjeS5tbSBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2VyUHJpdmFjeS5t
bQppbmRleCBlNzUwMDliNWVhNDhiNTRlOGE2NjEzM2QyNThjODYzMGZlNTQ5Y2Q3Li4zNjlmZmU1
MjMxOGUwNzRiMGY0NGYxY2QwNjM2ZTM4OTk2ZDMxNzM0IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW0KKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5
Lm1tCkBAIC00NSw5ICs0NSw2IEBACiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogCi0jaWYg
VVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9JbkFwcEJy
b3dzZXJQcml2YWN5VGVzdEFkZGl0aW9ucy5oPgotCiBzdGF0aWMgYm9vbCBpc0RvbmU7CiAKIEBp
bnRlcmZhY2UgQXBwQm91bmREb21haW5EZWxlZ2F0ZSA6IE5TT2JqZWN0IDxXS05hdmlnYXRpb25E
ZWxlZ2F0ZT4KQEAgLTEzMSwxNCArMTI4LDE0IEBAIEBlbmQKIHN0YXRpYyB2b2lkIGNsZWFuVXBJ
bkFwcEJyb3dzZXJQcml2YWN5VGVzdFNldHRpbmdzKCkKIHsKICAgICBXZWJDb3JlOjpjbGVhckFw
cGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgpOwotICAgIElOX0FQUF9C
Uk9XU0VSX1BSSVZBQ1lfQURESVRJT05TXzIKKyAgICBXZWJDb3JlOjpzZXRBcHBsaWNhdGlvbkJ1
bmRsZUlkZW50aWZpZXIoImNvbS5hcHBsZS5XZWJLaXQuVGVzdFdlYktpdEFQSSIpOwogfQogCiBz
dGF0aWMgdm9pZCBpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7
CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwogICAgIFdlYkNvcmU6OmNsZWFyQXBw
bGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJyaWRlKCk7Ci0gICAgSU5fQVBQX0JS
T1dTRVJfUFJJVkFDWV9BRERJVElPTlMKKyAgICBXZWJDb3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRs
ZUlkZW50aWZpZXIoImluQXBwQnJvd3NlclByaXZhY3lUZXN0SWRlbnRpZmllciIpOwogfQogCiBU
RVNUKEluQXBwQnJvd3NlclByaXZhY3ksIE5vbkFwcEJvdW5kRG9tYWluRmFpbGVkVXNlclNjcmlw
dEF0U3RhcnQpCkBAIC0xMzM4LDYgKzEzMzUsNCBAQCBURVNUKEluQXBwQnJvd3NlclByaXZhY3ks
IEFwcEJvdW5kQ3VzdG9tU2NoZW1lKQogICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNE
b25lKTsKIH0KIAotI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0KICNlbmRpZiAv
LyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGMwZWU4NjRmNGExYWQ2NmI0MzUzZTgwYjlj
ZjdmOGVkNjQ2NjJmZjQuLjRjZjZhNzJhYzM1MDdkZjAyOWUzOWVlZmQwNzhiNTA2OTg3MDJlMmUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wNy0yOCAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJp
bmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIEFwcC1Cb3VuZCBEb21haW5z
IGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY2MDc1
ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
VGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgVGhlc2UgdGVzdHMgYXJlIG5vdyBleHBlY3RlZCB0
byBwYXNzLgorCiAyMDIwLTA3LTI4ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29t
PgogCiAgICAgICAgIEFkZCB0ZXN0IGV4cGVjdGF0aW9ucyBhbmQgYmFzZWxpbmVzIGZvciBpT1Mg
MTQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGRhMGY1ZWZiYjAyZDJkYThiY2VlNDQzNjU0MzI0NTdl
YTFhNGFiMTkuLjk1MTM2M2Y1OTBiOGM4YmVhNGRiMzQ4ZTNlZDVlYjFmOWU4NGRlOWIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVz
dEV4cGVjdGF0aW9ucwpAQCAtMTY1LDcgKzE2NSw3IEBAIGh0dHAvdGVzdHMvbmF2aWdhdGlvbi91
c2VyYWdlbnQtcmVsb2FkLnBocCBbIFNraXAgXQogc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL29w
ZW5kYXRhYmFzZS1hZnRlci1zdG9yYWdlLWNyYXNoLmh0bWwgWyBTa2lwIF0KIHN0b3JhZ2UvaW5k
ZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBTa2lwIF0KIGZhc3QvZm9ybXMvY2FsbC10ZXh0
LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5cGluZy5odG1sIFsgU2tpcCBdCi1odHRw
L3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgU2tpcCBdCitodHRwL3Rlc3RzL2luLWFw
cC1icm93c2VyLXByaXZhY3kvIFsgUGFzcyBdCiAKIAogIyBPbmx5IE1hYyBhbmQgaU9TIGhhdmUg
YW4gaW1wbGVtZW50YXRpb24gb2YgVUlTY3JpcHRDb250cm9sbGVyOjpkb0FzeW5jVGFzaygpLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405406</attachid>
            <date>2020-07-28 13:54:45 -0700</date>
            <delta_ts>2020-07-28 14:01:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728135444.patch</filename>
            <type>text/plain</type>
            <size>35702</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjkzMWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlRGlzcG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFu
YWdlci5oIgogI2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0
b21Qcm90b2NvbE1hbmFnZXIuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYg
QEAKICNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25z
Lmg+CiAjZWxzZQogI2RlZmluZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNk
ZWZpbmUgTkVUV09SS19TRVNTSU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAj
aW1wb3J0ICJEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBA
QCB2b2lkIFNlc3Npb25XcmFwcGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRp
b24gKmNvbmZpZ3VyYXRpb24sIE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNl
c3Npb25XaXRoQ29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdl
dCgpIGRlbGVnYXRlUXVldWU6W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNp
ZiBIQVZFKFNFU1NJT05fQ0xFQU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFu
dXAoTmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVh
dGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19J
UEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBE
b24ndCBvdmVycmlkZSBhbiBleHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVy
cy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNl
dCkKKyAgICAgICAgcmV0dXJuOworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9S
KQorICAgIGF1dG8gcGFyZW50QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9B
U1NFUlQocGFyZW50QXVkaXRUb2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisK
KyAgICBib29sIGl0cEVuYWJsZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBh
cmVudEF1ZGl0VG9rZW4pOworICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5p
c1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAh
PSBwYXNzZWRFbmFibGVkU3RhdGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBl
bmFibGVkIHN0YXRlICglZCkgZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRw
RW5hYmxlZCwgcGFzc2VkRW5hYmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgor
fQorI2VuZGlmCisKIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0
d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMpCiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2Vzcywg
cGFyYW1ldGVycykKICAgICAsIG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMu
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3
b3JrU2Vzc2lvbkNvY29hOjppbml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZp
Z2F0aW5nVG9BcHBCb3UKIFNlc3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNz
aW9uV3JhcHBlckZvclRhc2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGlj
eSwgT3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4pCiB7CiAgICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
biA6IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VT
U0lPTl9DT0NPQV9BRERJVElPTlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJC
cm93c2VyKG5ldHdvcmtQcm9jZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVk
aXRUb2tlbigpKSkKICAgICAgICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKICAgICBpZiAoYXV0byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Np
b24oKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdl
YkJyb3dzZXJDaGVja3MuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZk
N2U0M2YxM2JlZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29h
L0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNz
IFJlZ2lzdHJhYmxlRG9tYWluOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQ
cm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOwor
Ym9vbCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQp
Owordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQo
KTsKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90
b2tlbl90Pik7Citib29sIGlzRnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNz
QUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIyNzY3OTc1Y2FjYTdjMWNmY2FmZGZiNjI1
ZWI0MGI0ZDk0YWJhNDAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9D
b2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVj
a3MuaCIKKworI2ltcG9ydCAiVmVyc2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiVENDU1BJLmgiCisj
aW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBv
cnQgPHd0Zi9SdW5Mb29wLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQg
PHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2gu
aD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRD
Q0FjY2Vzc1ByZWZsaWdodCwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYg
c2VydmljZSwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitT
T0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNz
UHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tl
biwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQor
U09GVF9MSU5LX0NPTlNUQU5UKFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNr
aW5nUHJldmVudGlvbiwgQ0ZTdHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0
YXRpYyBib29sIGlzRnVsbFdlYkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJl
dHVybiBidW5kbGVJRCA9PSAiY29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1
bmRsZUlEID09ICJjb20uYXBwbGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09w
dGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9t
YWluc1Rlc3RpbmcoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQu
aXNOdWxsKCkpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0
byBhcHBCb3VuZERvbWFpbkxpc3QgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcs
IFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJy
b3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbj4geyBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJv
bVJlZ2lzdHJhYmxlRG9tYWluU3RyaW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAg
IGF1dG8gYXBwQm91bmREb21haW5JdGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRs
ZUlEKTsKKyAgICBpZiAoYXBwQm91bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+
ZW5kKCkpCisgICAgICAgIHJldHVybiBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKK30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9v
bCBpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJv
Y2VzczsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9v
bmNlKCZvbmNlLCBeeworICAgICAgICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9j
ZXNzID0gW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50Il0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNv
bS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRp
ZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAg
cmV0dXJuIGlzSW5TdWJQcm9jZXNzOworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUg
OiB1aW50OF90IHsKKyAgICBVbmluaXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBF
bmFibGVkLAorICAgIERpc2FibGVkCit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+
IGdfY3VycmVudElUUFN0YXRlID0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBi
b29sIGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAg
QVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRv
bWljPGJvb2w+IGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3Nz
V2Vic2l0ZVRyYWNraW5nVXNhZ2VEZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVy
bWluZUlUUFN0YXRlSW50ZXJuYWwoYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0
cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFw
cFdhc0xpbmtlZE9uT3JBZnRlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFp
c0Z1bGxXZWJCcm93c2VyKGJ1bmRsZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dl
YnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBU
Q0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKKyNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxNDAwMDApIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTEwMDAwKQorICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRr
VENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIp
OworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworfQorCitzdGF0aWMgZGlzcGF0Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVy
bWluZUlUUFN0YXRlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlm
IChnX2N1cnJlbnRJVFBTdGF0ZSAhPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZ19jdXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5n
OworICAgIGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1Zl
cnNpb246OkZpcnN0V2l0aFNlc3Npb25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fs
d2F5c0xpbmtlZE9uQWZ0ZXI6Olllcyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVl
dWVfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAg
IGRpc3BhdGNoX2FzeW5jKGdfaXRwUXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRs
ZUlkZW50aWZpZXIgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29s
YXRlZENvcHkoKV0geworICAgICAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0
YXRlSW50ZXJuYWwoYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElU
UFN0YXRlOjpFbmFibGVkIDogSVRQU3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNo
X2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRj
aF9yZWxlYXNlKGdfaXRwUXVldWUpOworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7
CisgICAgICAgIH0pOworICAgIH0pOworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
Cit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6
OkluaXRpYWxpemluZykKKyAgICAgICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0
YXRlOjpFbmFibGVkOworCisgICAgUkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBf
X2Jsb2NrIGJvb2wgaXNJVFBFbmFibGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwg
XnsKKyAgICAgICAgaXNJVFBFbmFibGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6
OkVuYWJsZWQ7CisgICAgfSk7CisgICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBk
b2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1
ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAg
QVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKGF1ZGl0VG9rZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworI2lmIChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDE0MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMTAwMDApCisgICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9
IFRDQ0FjY2Vzc1ByZWZsaWdodFdpdGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50
ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRy
KTsKKyNlbmRpZgorICAgIHJldHVybiByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKK30KKworc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3Mg
PSBmYWxzZTsKK2Jvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJU
KCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGli
aXRlZFVzYWdlU3RyaW5ncyA9IGZhbHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmlu
Z3MpCisgICAgICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNE
aWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0Rp
Y3Rpb25hcnldOworICAgIFJFTEVBU0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8v
IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlz
IGxpc3Qgd2FzIHNlbGVjdGVkLgorICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAg
ICAgICBAIk5TUmVtaW5kZXJzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2Ny
aXB0aW9uIiwKKyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAg
ICAgICBAIk5TSGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0
aFVwZGF0ZVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2Fn
ZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNh
Z2VEZXNjcmlwdGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0
cmluZyA6IHByb2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVz
c2FnZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZh
Y3ldICVAIHVzZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWlu
QnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAg
ICBXVEZMb2dBbHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IH0KKyAgICB9CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJu
IGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAg
QVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVk
aXRUb2tlbik7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRp
YyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAg
ICAgICBmdWxsV2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1
ZSgpLCAiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAg
cmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2Vi
Q29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBp
c0Z1bGxXZWJCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBB
U1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxs
V2ViQnJvd3NlciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxv
cGVyLndlYi1icm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1
bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7
CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJC
cm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQw
NDY1OWM5YjUxM2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQ
SUhUVFBDb29raWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRl
ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29r
aWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUg
IldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8
V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlm
Ci0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyAr
NjQsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0
IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3du
aW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2ll
cyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBp
ZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZ
X0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2Vi
QnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsK
ICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAg
ICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRl
eCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3
M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBA
CiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250
ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2lu
Y2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vs
c2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5p
ZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4g
UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdl
Q29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYx
MjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLmRkMjMyMDA1ZDBiZDRlNzRmMTQzNjQ2Y2Y2ZTBk
NTI2MDZjNGNlNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2lu
Y2x1ZGUgIkF1dGhlbnRpY2F0b3JNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5o
IgorI2luY2x1ZGUgIkRlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgiCiAjaW5jbHVkZSAiRG93bmxv
YWRQcm94eS5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZXMuaCIKICNpbmNsdWRlICJE
cmF3aW5nQXJlYVByb3h5LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9v
bC5jcHAKaW5kZXggOTI4MWUxY2U0MzI5YjM0MmMzM2FkODkwN2UzODczMTZiZmRmMDIxZC4uZTg5
ZjA2OWY0YjYzNjg0YTJhMzI5YjI1OWJmNDM5NGY3MmQ5NjIyMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtMTQxLDE1ICsxNDEsNiBAQAogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuaD4KICNlbmRpZgogCi0jaWYgVVNFKEFQUExF
X0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMvV2ViUHJvY2Vzc1Bvb2xB
ZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TCi0j
ZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzIKLSNkZWZpbmUgV0VCX1BST0NFU1Nf
UE9PTF9BRERJVElPTlNfMwotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180Ci0j
ZW5kaWYKLQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPRyhjaGFubmVsLCBmbXQs
IC4uLikgUkVMRUFTRV9MT0coY2hhbm5lbCwgIiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0
aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPR19F
UlJPUihjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgIiVwIC0g
V2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJQ
Uk9DRVNTUE9PTF9SRUxFQVNFX0xPR19JRl9BTExPV0VEKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxF
QVNFX0xPR19JRihzZXNzaW9uSUQuaXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCksIGNoYW5uZWws
ICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKQEAgLTI1
NSw3ICsyNDYsNiBAQCBXZWJQcm9jZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNz
UG9vbENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCiAjZW5kaWYKICAgICAsIG1fYWx3YXlz
UnVuc0F0QmFja2dyb3VuZFByaW9yaXR5KG1fY29uZmlndXJhdGlvbi0+YWx3YXlzUnVuc0F0QmFj
a2dyb3VuZFByaW9yaXR5KCkpCiAgICAgLCBtX3Nob3VsZFRha2VVSUJhY2tncm91bmRBc3NlcnRp
b24obV9jb25maWd1cmF0aW9uLT5zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKCkpCi0g
ICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlMKICAgICAsIG1fdXNlck9ic2VydmFibGVQYWdl
Q291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IHVwZGF0ZVByb2Nlc3NTdXBwcmVzc2lv
blN0YXRlKCk7IH0pCiAgICAgLCBtX3Byb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkRm9yUGFnZUNv
dW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25T
dGF0ZSgpOyB9KQogICAgICwgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ0F1dG9JbmNyZWFzZXNDb3Vu
dGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ1RpbWVy
LnN0YXJ0T25lU2hvdCgwX3MpOyB9KQpAQCAtMjcxLDcgKzI2MSw3IEBAIFdlYlByb2Nlc3NQb29s
OjpXZWJQcm9jZXNzUG9vbChBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiYgY29uZmlndXJh
dGlvbikKICAgICAgICAgV1RGOjpzZXRQcm9jZXNzUHJpdmlsZWdlcyhhbGxQcml2aWxlZ2VzKCkp
OwogICAgICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnBlcm1pdFByb2Nlc3NU
b1VzZUNvb2tpZUFQSSh0cnVlKTsKICAgICAgICAgUHJvY2Vzczo6c2V0SWRlbnRpZmllcihXZWJD
b3JlOjpQcm9jZXNzSWRlbnRpZmllcjo6Z2VuZXJhdGUoKSk7Ci0gICAgICAgIFdFQl9QUk9DRVNT
X1BPT0xfQURESVRJT05TXzQKKyAgICAgICAgZGV0ZXJtaW5lSVRQU3RhdGUoKTsKICAgICB9KTsK
IAogICAgIGlmICghbV93ZWJzaXRlRGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFTdG9y
ZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpKQpAQCAtNjEzLDcgKzYwMywyMCBAQCBOZXR3b3Jr
UHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0
ZURhdGFTdG9yZSogd2l0aAogICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5kYWxv
bmVBcHBsaWNhdGlvbkRvbWFpbjsKICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9t
YWluPiBhcHBCb3VuZERvbWFpbnM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFu
dWFsUHJldmFsZW50UmVzb3VyY2U7Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgor
CisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOwor
ICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUtPmlz
SXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRlRGF0
YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAhbV93
ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVu
YWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAg
ICAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVk
KGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0ZURh
dGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3JlOjpk
ZWZhdWx0RGF0YVN0b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAg
ZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7Cisg
ICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3VyY2VM
b2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7CisgICAg
fSBlbHNlCisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZl
cmVuY2VFbmFibGVkOworCiAgICAgaWYgKHdpdGhXZWJzaXRlRGF0YVN0b3JlKSB7CiAgICAgICAg
IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSB3aXRoV2Vic2l0ZURhdGFTdG9yZS0+cmVz
b3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKTsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9T
VEFUSVNUSUNTKQpAQCAtODg0LDcgKzg4NywxMCBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpyZXNv
bHZlUGF0aHNGb3JTYW5kYm94RXh0ZW5zaW9ucygpCiAKIFdlYlByb2Nlc3NQcm94eSYgV2ViUHJv
Y2Vzc1Bvb2w6OmNyZWF0ZU5ld1dlYlByb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2Vic2l0ZURh
dGFTdG9yZSwgV2ViUHJvY2Vzc1Byb3h5OjpJc1ByZXdhcm1lZCBpc1ByZXdhcm1lZCkKIHsKLSAg
ICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18zCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxl
ZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOworICAgIGlmICh3ZWJzaXRlRGF0YVN0b3JlICYm
ICF3ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKQorICAgICAgICB3
ZWJzaXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChtX3RjY1By
ZWZlcmVuY2VFbmFibGVkKTsKKwogICAgIGF1dG8gcHJvY2Vzc1Byb3h5ID0gV2ViUHJvY2Vzc1By
b3h5OjpjcmVhdGUoKnRoaXMsIHdlYnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKICAgICBh
dXRvJiBwcm9jZXNzID0gcHJvY2Vzc1Byb3h5LmdldCgpOwogICAgIGluaXRpYWxpemVOZXdXZWJQ
cm9jZXNzKHByb2Nlc3MsIHdlYnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRh
U3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29h
L1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCA2ODUxMzE1Y2FjNTA2OTA2OGE2NzY0MzY5
NDY0Mjk3YjYxZDEwMmMxLi5mYjNiMjFmZDkzNjI4YTM0YWUzZDRkZWNmZDRlNzk3Y2Y2NTMxZjY1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9X
ZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCkBAIC0yNyw2ICsyNyw3IEBA
CiAjaW1wb3J0ICJXZWJzaXRlRGF0YVN0b3JlLmgiCiAKICNpbXBvcnQgIkNvb2tpZVN0b3JhZ2VV
dGlsc0NGLmgiCisjaW1wb3J0ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2ltcG9ydCAi
U2FuZGJveFV0aWxpdGllcy5oIgogI2ltcG9ydCAiU3RvcmFnZU1hbmFnZXIuaCIKICNpbXBvcnQg
IldlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eS5oIgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNpbXBv
cnQgPHd0Zi9VUkwuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KIAotI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvV2Vic2l0
ZURhdGFTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgV0VCU0lURV9EQVRBX1NUT1JF
X0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCA8
VUlLaXQvVUlBcHBsaWNhdGlvbi5oPgogI2ltcG9ydCA8cGFsL2lvcy9NYW5hZ2VkQ29uZmlndXJh
dGlvblNvZnRMaW5rLmg+CkBAIC00NjMsMTEgKzQ1OCwyMyBAQCB2b2lkIFdlYnNpdGVEYXRhU3Rv
cmU6OmluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9uIGZvcmNl
UmVpbgogICAgIH0pOwogfQogCit2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmFkZFRlc3REb21haW5z
KCkgY29uc3QKK3sKKyAgICBpZiAoYXBwQm91bmREb21haW5zKCkuaXNFbXB0eSgpKSB7CisgICAg
ICAgIGF1dG8gYnVuZGxlSUQgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIo
KTsKKyAgICAgICAgYXV0byBhcHBCb3VuZERvbWFpbnNUZXN0aW5nID0gZ2V0QXBwQm91bmREb21h
aW5zVGVzdGluZyhidW5kbGVJRCk7CisgICAgICAgIGlmIChhcHBCb3VuZERvbWFpbnNUZXN0aW5n
KSB7CisgICAgICAgICAgICBmb3IgKGF1dG8mIGRvbWFpbiA6ICphcHBCb3VuZERvbWFpbnNUZXN0
aW5nKQorICAgICAgICAgICAgICAgIGFwcEJvdW5kRG9tYWlucygpLmFkZChkb21haW4pOworICAg
ICAgICB9CisgICAgfQorfQorCiB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5k
RG9tYWlucyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEhhc2hTZXQ8V2ViQ29yZTo6UmVn
aXN0cmFibGVEb21haW4+JiwgY29uc3QgSGFzaFNldDxTdHJpbmc+Jik+JiYgY29tcGxldGlvbkhh
bmRsZXIpIGNvbnN0CiB7CiAgICAgaWYgKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zKSB7
CiAgICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCkgewot
ICAgICAgICAgICAgV0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgICAgIGFk
ZFRlc3REb21haW5zKCk7CiAgICAgICAgIH0KICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoYXBw
Qm91bmREb21haW5zKCksIGFwcEJvdW5kU2NoZW1lcygpKTsKICAgICAgICAgcmV0dXJuOwpAQCAt
NDc5LDcgKzQ4Niw3IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmREb21h
aW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSGFzaFNlCiAgICAgICAgIFJ1bkxvb3A6
Om1haW4oKS5kaXNwYXRjaChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVk
VGhpcyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildICgp
IG11dGFibGUgewogICAgICAgICAgICAgQVNTRVJUKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21h
aW5zKTsKICAgICAgICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5h
YmxlZCkgewotICAgICAgICAgICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlM7Cisg
ICAgICAgICAgICAgICAgYWRkVGVzdERvbWFpbnMoKTsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBhcHBCb3VuZFNjaGVtZXMo
KSk7CiAgICAgICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IGM2ZmJiYzQ5MjM5ZjY5NWE4YmEzNDFl
ZjY5MzA1N2NlZjFlYWI2ZDAuLjBhN2Y4M2QyYjdkYzYzNTM4Yzg1Nzg4MDBlNjE3YWZmYzVkM2Yx
OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNp
dGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9X
ZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTMxMiw2ICszMTIsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgog
ICAgIGVudW0gY2xhc3MgRm9yY2VSZWluaXRpYWxpemF0aW9uIDogYm9vbCB7IE5vLCBZZXMgfTsK
ICAgICB2b2lkIGluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9u
ID0gRm9yY2VSZWluaXRpYWxpemF0aW9uOjpObyk7CisgICAgdm9pZCBhZGRUZXN0RG9tYWlucygp
IGNvbnN0OwogCiAgICAgdm9pZCBmZXRjaERhdGFBbmRBcHBseShPcHRpb25TZXQ8V2Vic2l0ZURh
dGFUeXBlPiwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhRmV0Y2hPcHRpb24+LCBSZWZQdHI8V29ya1F1
ZXVlPiYmLCBGdW5jdGlvbjx2b2lkKFZlY3RvcjxXZWJzaXRlRGF0YVJlY29yZD4pPiYmIGFwcGx5
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggMzA0MjBkOTA2YzAyZDNjOGZlY2UwYWRjYWRiYmY5YjRhMDA4N2Q2Yi4uZmU4M2M0MjUy
YmJjNjA3ZTE2ODIzYzhkNGNhYjFhNTBjMGUxMWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05NjMsNiArOTYzLDcgQEAKIAkJNDlC
Q0ExOTIyM0ExNzc2NjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBh
cnR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJD
QTE5MTIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFy
dHkuaCAqLzsgfTsKIAkJNDlCQ0ExOTUyM0ExOENGRDAwMjhBODM2IC8qIF9XS1Jlc291cmNlTG9h
ZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTkwMjNBMTc1NDkwMDI4QTgzNiAvKiBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmggKi87IH07CiAJCTQ5QkNBMTk3
MjNBMTkzMEQwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTYy
M0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmgg
Ki87IH07CisJCTQ5REFBMzhDMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNo
ZWNrcy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5
REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLzsg
fTsKIAkJNDlFQ0E0MUMyM0ZDQTVEODAwMjMzNThEIC8qIFBvbGljeURlY2lzaW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVDQTQxQjIzRkNBNDg2
MDAyMzM1OEQgLyogUG9saWN5RGVjaXNpb24uaCAqLzsgfTsKIAkJNDlGQkVGRkQyMzlCMDExRDAw
QkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkMyMzlCMDExRDAw
QkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tICovOyB9Owog
CQk0OUZCRUZGRjIzOUIwMTJGMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Ro
aXJkUGFydHkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0OUZCRUZGRTIzOUIwMTJGMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Ro
aXJkUGFydHkubW0gKi87IH07CkBAIC0zNTg2LDYgKzM1ODcsOCBAQAogCQk0OUJDQTE5MDIzQTE3
NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5h
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUlu
dGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5QkNBMTkxMjNBMTc3NjYw
MDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5NjIzQTE4RjYyMDAyOEE4MzYgLyogQVBJUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWZhdWx0V2ViQnJvd3NlckNoZWNr
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUVDQTQxQjIzRkNBNDg2MDAyMzM1
OEQgLyogUG9saWN5RGVjaXNpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9saWN5RGVjaXNpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlGQkVGRkEyMzlBRDk3ODAwQkQwMzJGIC8q
IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9X
S1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTQ5RkJFRkZCMjM5QURCMTgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRmlyc3RQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ4Myw2ICs3
NDg2LDggQEAKIAkJCQkxQzczOUU4NTIzNDdCQ0Y2MDBDNjIxRUMgLyogQ29yZVRleHRIZWxwZXJz
Lm1tICovLAogCQkJCUM1NUY5MTZDMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVz
dWx0LmggKi8sCiAJCQkJQzU1RjkxNkQxQzU5NUU0NDAwMjlFOTJEIC8qIERhdGFEZXRlY3Rpb25S
ZXN1bHQubW0gKi8sCisJCQkJNDlEQUEzOEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmggKi8sCisJCQkJNDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1
bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovLAogCQkJCUNFNTUwRTEzMjI4Mzc0NDQwMEQyODc5MSAv
KiBJbnNlcnRUZXh0T3B0aW9ucy5jcHAgKi8sCiAJCQkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4Nzkx
IC8qIEluc2VydFRleHRPcHRpb25zLmggKi8sCiAJCQkJQzE2NjNFNUEyNEFFQTc0MjAwQzZBM0Iy
IC8qIExhdW5jaFNlcnZpY2VzRGF0YWJhc2VYUENDb25zdGFudHMuaCAqLywKQEAgLTEyNzMwLDYg
KzEyNzM1LDcgQEAKIAkJCQkyRDkyQTc3RDIxMkI2QTcxMDBGNDkzRkQgLyogQ29ubmVjdGlvbi5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc3RTIxMkI2QTcxMDBGNDkzRkQgLyogRGF0YVJl
ZmVyZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc3RjIxMkI2QTcxMDBGNDkzRkQg
LyogRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0OURBQTM4QzI0Q0JBMUE4MDA3OTNE
NzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDBD
NTZGRTIyOUYxREVBMDBCRDMzRTcgLyogRGV2aWNlTWFuYWdlbWVudFNvZnRMaW5rLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJMUFCN0Q2MTkxMjg4QjlEOTAwQ0ZEMDhDIC8qIERvd25sb2FkUHJveHlN
ZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUE2NDIyOTkxMkREMDI5MjAw
Q0FBRTJDIC8qIERyYXdpbmdBcmVhTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLApk
aWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDdkNGI5
NGMyZDQ2Y2E2YTE5YmNkMGFlNGRlNDdiNTlkZDcwODhjODYuLmIxMzViMTA4M2U1MmM4YWNlMWI2
MzQ0NGEwZTliZTEzMTYyMTczNDUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMC0wNy0yOCAgS2F0ZSBDaGVuZXkg
IDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIEFwcC1Cb3Vu
ZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlcGxhY2UgV2ViS2l0IEFkZGl0aW9ucyBtYWNyb3Mgd2l0aCBjb2RlIHRvIHNldCBh
IGRpZmZlcmVudCBidW5kbGUKKyAgICAgICAgaWRlbnRpZmllciBpbmRpY2F0aW5nIHRoYXQgd2Ug
d2FudCB0byBydW4gYW4gQXBwLUJvdW5kIERvbWFpbnMgdGVzdC4KKworICAgICAgICBSZW1vdmUg
I2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspIGNoZWNrIHNvIHdlIHJ1biB0aGVzZSB0ZXN0cyBv
biBFV1MuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBw
QnJvd3NlclByaXZhY3kubW06CisgICAgICAgIChjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRl
c3RTZXR0aW5ncyk6CisgICAgICAgIChpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RT
ZXR0aW5ncyk6CisKIDIwMjAtMDctMjggIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUu
Y29tPgogCiAgICAgICAgIFt3ZWJraXRjb3JlcHldIEFkZCBzdHJpbmdfdXRpbHMgKFBhcnQgMykK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBC
cm93c2VyUHJpdmFjeS5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
SW5BcHBCcm93c2VyUHJpdmFjeS5tbQppbmRleCBlNzUwMDliNWVhNDhiNTRlOGE2NjEzM2QyNThj
ODYzMGZlNTQ5Y2Q3Li4zNjlmZmU1MjMxOGUwNzRiMGY0NGYxY2QwNjM2ZTM4OTk2ZDMxNzM0IDEw
MDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJv
d3NlclByaXZhY3kubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tCkBAIC00NSw5ICs0NSw2IEBACiAKICNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQgPFdl
YktpdEFkZGl0aW9ucy9JbkFwcEJyb3dzZXJQcml2YWN5VGVzdEFkZGl0aW9ucy5oPgotCiBzdGF0
aWMgYm9vbCBpc0RvbmU7CiAKIEBpbnRlcmZhY2UgQXBwQm91bmREb21haW5EZWxlZ2F0ZSA6IE5T
T2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0ZT4KQEAgLTEzMSwxNCArMTI4LDE0IEBAIEBlbmQK
IHN0YXRpYyB2b2lkIGNsZWFuVXBJbkFwcEJyb3dzZXJQcml2YWN5VGVzdFNldHRpbmdzKCkKIHsK
ICAgICBXZWJDb3JlOjpjbGVhckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVy
cmlkZSgpOwotICAgIElOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TXzIKKyAgICBXZWJD
b3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImNvbS5hcHBsZS5XZWJLaXQuVGVz
dFdlYktpdEFQSSIpOwogfQogCiBzdGF0aWMgdm9pZCBpbml0aWFsaXplSW5BcHBCcm93c2VyUHJp
dmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwog
ICAgIFdlYkNvcmU6OmNsZWFyQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJy
aWRlKCk7Ci0gICAgSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlMKKyAgICBXZWJDb3Jl
OjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImluQXBwQnJvd3NlclByaXZhY3lUZXN0
SWRlbnRpZmllciIpOwogfQogCiBURVNUKEluQXBwQnJvd3NlclByaXZhY3ksIE5vbkFwcEJvdW5k
RG9tYWluRmFpbGVkVXNlclNjcmlwdEF0U3RhcnQpCkBAIC0xMzM4LDYgKzEzMzUsNCBAQCBURVNU
KEluQXBwQnJvd3NlclByaXZhY3ksIEFwcEJvdW5kQ3VzdG9tU2NoZW1lKQogICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKIH0KIAotI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspCi0KICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGMwZWU4
NjRmNGExYWQ2NmI0MzUzZTgwYjljZjdmOGVkNjQ2NjJmZjQuLjRjZjZhNzJhYzM1MDdkZjAyOWUz
OWVlZmQwNzhiNTA2OTg3MDJlMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wNy0yOCAg
S2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdy
YXRlIEFwcC1Cb3VuZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgVGhlc2UgdGVz
dHMgYXJlIG5vdyBleHBlY3RlZCB0byBwYXNzLgorCiAyMDIwLTA3LTI4ICBSeWFuIEhhZGRhZCAg
PHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCB0ZXN0IGV4cGVjdGF0aW9ucyBh
bmQgYmFzZWxpbmVzIGZvciBpT1MgMTQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGRhMGY1ZWZiYjAy
ZDJkYThiY2VlNDQzNjU0MzI0NTdlYTFhNGFiMTkuLjk1MTM2M2Y1OTBiOGM4YmVhNGRiMzQ4ZTNl
ZDVlYjFmOWU4NGRlOWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTY1LDcgKzE2NSw3IEBAIGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi91c2VyYWdlbnQtcmVsb2FkLnBocCBbIFNraXAgXQogc3RvcmFn
ZS9pbmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFzZS1hZnRlci1zdG9yYWdlLWNyYXNoLmh0bWwg
WyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBTa2lwIF0K
IGZhc3QvZm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5cGlu
Zy5odG1sIFsgU2tpcCBdCi1odHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgU2tp
cCBdCitodHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgUGFzcyBdCiAKIAogIyBP
bmx5IE1hYyBhbmQgaU9TIGhhdmUgYW4gaW1wbGVtZW50YXRpb24gb2YgVUlTY3JpcHRDb250cm9s
bGVyOjpkb0FzeW5jVGFzaygpLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405409</attachid>
            <date>2020-07-28 14:01:13 -0700</date>
            <delta_ts>2020-07-28 14:05:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728140112.patch</filename>
            <type>text/plain</type>
            <size>36104</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjkzMWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlRGlzcG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFu
YWdlci5oIgogI2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0
b21Qcm90b2NvbE1hbmFnZXIuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYg
QEAKICNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25z
Lmg+CiAjZWxzZQogI2RlZmluZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNk
ZWZpbmUgTkVUV09SS19TRVNTSU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAj
aW1wb3J0ICJEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBA
QCB2b2lkIFNlc3Npb25XcmFwcGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRp
b24gKmNvbmZpZ3VyYXRpb24sIE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNl
c3Npb25XaXRoQ29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdl
dCgpIGRlbGVnYXRlUXVldWU6W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNp
ZiBIQVZFKFNFU1NJT05fQ0xFQU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFu
dXAoTmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVh
dGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19J
UEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBE
b24ndCBvdmVycmlkZSBhbiBleHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVy
cy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNl
dCkKKyAgICAgICAgcmV0dXJuOworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9S
KQorICAgIGF1dG8gcGFyZW50QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9B
U1NFUlQocGFyZW50QXVkaXRUb2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisK
KyAgICBib29sIGl0cEVuYWJsZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBh
cmVudEF1ZGl0VG9rZW4pOworICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5p
c1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAh
PSBwYXNzZWRFbmFibGVkU3RhdGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBl
bmFibGVkIHN0YXRlICglZCkgZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRw
RW5hYmxlZCwgcGFzc2VkRW5hYmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgor
fQorI2VuZGlmCisKIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0
d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMpCiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2Vzcywg
cGFyYW1ldGVycykKICAgICAsIG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMu
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3
b3JrU2Vzc2lvbkNvY29hOjppbml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZp
Z2F0aW5nVG9BcHBCb3UKIFNlc3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNz
aW9uV3JhcHBlckZvclRhc2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGlj
eSwgT3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4pCiB7CiAgICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
biA6IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VT
U0lPTl9DT0NPQV9BRERJVElPTlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJC
cm93c2VyKG5ldHdvcmtQcm9jZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVk
aXRUb2tlbigpKSkKICAgICAgICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKICAgICBpZiAoYXV0byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Np
b24oKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdl
YkJyb3dzZXJDaGVja3MuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZk
N2U0M2YxM2JlZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29h
L0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNz
IFJlZ2lzdHJhYmxlRG9tYWluOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQ
cm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOwor
Ym9vbCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQp
Owordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQo
KTsKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90
b2tlbl90Pik7Citib29sIGlzRnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNz
QUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIyNzY3OTc1Y2FjYTdjMWNmY2FmZGZiNjI1
ZWI0MGI0ZDk0YWJhNDAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9D
b2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVj
a3MuaCIKKworI2ltcG9ydCAiVmVyc2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiVENDU1BJLmgiCisj
aW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBv
cnQgPHd0Zi9SdW5Mb29wLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQg
PHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2gu
aD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRD
Q0FjY2Vzc1ByZWZsaWdodCwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYg
c2VydmljZSwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitT
T0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNz
UHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tl
biwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQor
U09GVF9MSU5LX0NPTlNUQU5UKFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNr
aW5nUHJldmVudGlvbiwgQ0ZTdHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0
YXRpYyBib29sIGlzRnVsbFdlYkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJl
dHVybiBidW5kbGVJRCA9PSAiY29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1
bmRsZUlEID09ICJjb20uYXBwbGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09w
dGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9t
YWluc1Rlc3RpbmcoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQu
aXNOdWxsKCkpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0
byBhcHBCb3VuZERvbWFpbkxpc3QgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcs
IFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJy
b3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbj4geyBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJv
bVJlZ2lzdHJhYmxlRG9tYWluU3RyaW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAg
IGF1dG8gYXBwQm91bmREb21haW5JdGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRs
ZUlEKTsKKyAgICBpZiAoYXBwQm91bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+
ZW5kKCkpCisgICAgICAgIHJldHVybiBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKK30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9v
bCBpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJv
Y2VzczsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9v
bmNlKCZvbmNlLCBeeworICAgICAgICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9j
ZXNzID0gW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50Il0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNv
bS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRp
ZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAg
cmV0dXJuIGlzSW5TdWJQcm9jZXNzOworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUg
OiB1aW50OF90IHsKKyAgICBVbmluaXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBF
bmFibGVkLAorICAgIERpc2FibGVkCit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+
IGdfY3VycmVudElUUFN0YXRlID0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBi
b29sIGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAg
QVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRv
bWljPGJvb2w+IGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3Nz
V2Vic2l0ZVRyYWNraW5nVXNhZ2VEZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVy
bWluZUlUUFN0YXRlSW50ZXJuYWwoYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0
cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFw
cFdhc0xpbmtlZE9uT3JBZnRlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFp
c0Z1bGxXZWJCcm93c2VyKGJ1bmRsZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dl
YnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBU
Q0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKKyNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxNDAwMDApIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTEwMDAwKQorICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRr
VENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIp
OworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworfQorCitzdGF0aWMgZGlzcGF0Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVy
bWluZUlUUFN0YXRlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlm
IChnX2N1cnJlbnRJVFBTdGF0ZSAhPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZ19jdXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5n
OworICAgIGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1Zl
cnNpb246OkZpcnN0V2l0aFNlc3Npb25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fs
d2F5c0xpbmtlZE9uQWZ0ZXI6Olllcyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVl
dWVfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAg
IGRpc3BhdGNoX2FzeW5jKGdfaXRwUXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRs
ZUlkZW50aWZpZXIgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29s
YXRlZENvcHkoKV0geworICAgICAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0
YXRlSW50ZXJuYWwoYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElU
UFN0YXRlOjpFbmFibGVkIDogSVRQU3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNo
X2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRj
aF9yZWxlYXNlKGdfaXRwUXVldWUpOworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7
CisgICAgICAgIH0pOworICAgIH0pOworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
Cit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6
OkluaXRpYWxpemluZykKKyAgICAgICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0
YXRlOjpFbmFibGVkOworCisgICAgUkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBf
X2Jsb2NrIGJvb2wgaXNJVFBFbmFibGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwg
XnsKKyAgICAgICAgaXNJVFBFbmFibGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6
OkVuYWJsZWQ7CisgICAgfSk7CisgICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBk
b2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1
ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAg
QVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKGF1ZGl0VG9rZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworI2lmIChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDE0MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMTAwMDApCisgICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9
IFRDQ0FjY2Vzc1ByZWZsaWdodFdpdGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50
ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRy
KTsKKyNlbmRpZgorICAgIHJldHVybiByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKK30KKworc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3Mg
PSBmYWxzZTsKK2Jvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJU
KCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGli
aXRlZFVzYWdlU3RyaW5ncyA9IGZhbHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmlu
Z3MpCisgICAgICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNE
aWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0Rp
Y3Rpb25hcnldOworICAgIFJFTEVBU0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8v
IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlz
IGxpc3Qgd2FzIHNlbGVjdGVkLgorICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAg
ICAgICBAIk5TUmVtaW5kZXJzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2Ny
aXB0aW9uIiwKKyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAg
ICAgICBAIk5TSGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0
aFVwZGF0ZVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2Fn
ZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNh
Z2VEZXNjcmlwdGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0
cmluZyA6IHByb2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVz
c2FnZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZh
Y3ldICVAIHVzZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWlu
QnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAg
ICBXVEZMb2dBbHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IH0KKyAgICB9CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJu
IGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAg
QVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVk
aXRUb2tlbik7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRp
YyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAg
ICAgICBmdWxsV2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1
ZSgpLCAiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAg
cmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2Vi
Q29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBp
c0Z1bGxXZWJCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBB
U1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxs
V2ViQnJvd3NlciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxv
cGVyLndlYi1icm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1
bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7
CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJC
cm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQw
NDY1OWM5YjUxM2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQ
SUhUVFBDb29raWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRl
ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29r
aWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUg
IldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8
V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlm
Ci0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyAr
NjQsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0
IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3du
aW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2ll
cyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBp
ZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZ
X0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2Vi
QnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsK
ICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAg
ICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRl
eCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3
M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBA
CiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250
ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2lu
Y2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vs
c2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5p
ZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4g
UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdl
Q29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYx
MjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLjc1Y2I2NTFiOTcxMzE2M2VmYWU5NjE0YmFkYThi
MjAwZDgzZDI3MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2lu
Y2x1ZGUgIkF1dGhlbnRpY2F0b3JNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5o
IgorI2luY2x1ZGUgIkRlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgiCiAjaW5jbHVkZSAiRG93bmxv
YWRQcm94eS5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZXMuaCIKICNpbmNsdWRlICJE
cmF3aW5nQXJlYVByb3h5LmgiCkBAIC0yODgsMTUgKzI4OSw2IEBACiAjaW5jbHVkZSAiTWVkaWFV
c2FnZU1hbmFnZXIuaCIKICNlbmRpZgogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNp
bmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMvV2ViUGFnZVByb3h5QWRkaXRpb25zLmg+Ci0jZWxzZQot
c3RhdGljIGJvb2wgaXNGdWxsV2ViQnJvd3NlcigpIHsgcmV0dXJuIHRydWU7IH0KLSNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQotc3RhdGljIGJvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygp
IHsgcmV0dXJuIGZhbHNlOyB9Ci0jZW5kaWYKLSNlbmRpZgotCiAvLyBUaGlzIGNvbnRyb2xzIHdo
YXQgc3RyYXRlZ3kgd2UgdXNlIGZvciBtb3VzZSB3aGVlbCBjb2FsZXNjaW5nLgogI2RlZmluZSBN
RVJHRV9XSEVFTF9FVkVOVFMgMQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5jcHAKaW5kZXggOTI4MWUxY2U0MzI5YjM0MmMzM2FkODkwN2UzODczMTZiZmRmMDIxZC4u
ZTg5ZjA2OWY0YjYzNjg0YTJhMzI5YjI1OWJmNDM5NGY3MmQ5NjIyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtMTQxLDE1ICsxNDEsNiBAQAogI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuaD4KICNlbmRpZgogCi0jaWYgVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMvV2ViUHJvY2Vzc1Bv
b2xBZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05T
Ci0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzIKLSNkZWZpbmUgV0VCX1BST0NF
U1NfUE9PTF9BRERJVElPTlNfMwotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180
Ci0jZW5kaWYKLQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPRyhjaGFubmVsLCBm
bXQsIC4uLikgUkVMRUFTRV9MT0coY2hhbm5lbCwgIiVwIC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10
LCB0aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xP
R19FUlJPUihjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgIiVw
IC0gV2ViUHJvY2Vzc1Bvb2w6OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBX
RUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPR19JRl9BTExPV0VEKGNoYW5uZWwsIGZtdCwgLi4uKSBS
RUxFQVNFX0xPR19JRihzZXNzaW9uSUQuaXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCksIGNoYW5u
ZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKQEAg
LTI1NSw3ICsyNDYsNiBAQCBXZWJQcm9jZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9j
ZXNzUG9vbENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCiAjZW5kaWYKICAgICAsIG1fYWx3
YXlzUnVuc0F0QmFja2dyb3VuZFByaW9yaXR5KG1fY29uZmlndXJhdGlvbi0+YWx3YXlzUnVuc0F0
QmFja2dyb3VuZFByaW9yaXR5KCkpCiAgICAgLCBtX3Nob3VsZFRha2VVSUJhY2tncm91bmRBc3Nl
cnRpb24obV9jb25maWd1cmF0aW9uLT5zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKCkp
Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlMKICAgICAsIG1fdXNlck9ic2VydmFibGVQ
YWdlQ291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IHVwZGF0ZVByb2Nlc3NTdXBwcmVz
c2lvblN0YXRlKCk7IH0pCiAgICAgLCBtX3Byb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkRm9yUGFn
ZUNvdW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Np
b25TdGF0ZSgpOyB9KQogICAgICwgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ0F1dG9JbmNyZWFzZXND
b3VudGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgbV9oaWRkZW5QYWdlVGhyb3R0bGluZ1Rp
bWVyLnN0YXJ0T25lU2hvdCgwX3MpOyB9KQpAQCAtMjcxLDcgKzI2MSw3IEBAIFdlYlByb2Nlc3NQ
b29sOjpXZWJQcm9jZXNzUG9vbChBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiYgY29uZmln
dXJhdGlvbikKICAgICAgICAgV1RGOjpzZXRQcm9jZXNzUHJpdmlsZWdlcyhhbGxQcml2aWxlZ2Vz
KCkpOwogICAgICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnBlcm1pdFByb2Nl
c3NUb1VzZUNvb2tpZUFQSSh0cnVlKTsKICAgICAgICAgUHJvY2Vzczo6c2V0SWRlbnRpZmllcihX
ZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllcjo6Z2VuZXJhdGUoKSk7Ci0gICAgICAgIFdFQl9QUk9D
RVNTX1BPT0xfQURESVRJT05TXzQKKyAgICAgICAgZGV0ZXJtaW5lSVRQU3RhdGUoKTsKICAgICB9
KTsKIAogICAgIGlmICghbV93ZWJzaXRlRGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFT
dG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpKQpAQCAtNjEzLDcgKzYwMywyMCBAQCBOZXR3
b3JrUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vi
c2l0ZURhdGFTdG9yZSogd2l0aAogICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5k
YWxvbmVBcHBsaWNhdGlvbkRvbWFpbjsKICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxl
RG9tYWluPiBhcHBCb3VuZERvbWFpbnM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4g
bWFudWFsUHJldmFsZW50UmVzb3VyY2U7Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNf
MgorCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
OworICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUt
PmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRl
RGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAh
bV93ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAg
IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOwor
ICAgICAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFi
bGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0
ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3Jl
OjpkZWZhdWx0RGF0YVN0b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAg
ICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7
CisgICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7Cisg
ICAgfSBlbHNlCisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1By
ZWZlcmVuY2VFbmFibGVkOworCiAgICAgaWYgKHdpdGhXZWJzaXRlRGF0YVN0b3JlKSB7CiAgICAg
ICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSB3aXRoV2Vic2l0ZURhdGFTdG9yZS0+
cmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKTsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9B
RF9TVEFUSVNUSUNTKQpAQCAtODg0LDcgKzg4NywxMCBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpy
ZXNvbHZlUGF0aHNGb3JTYW5kYm94RXh0ZW5zaW9ucygpCiAKIFdlYlByb2Nlc3NQcm94eSYgV2Vi
UHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dlYlByb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2Vic2l0
ZURhdGFTdG9yZSwgV2ViUHJvY2Vzc1Byb3h5OjpJc1ByZXdhcm1lZCBpc1ByZXdhcm1lZCkKIHsK
LSAgICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18zCisgICAgbV90Y2NQcmVmZXJlbmNlRW5h
YmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOworICAgIGlmICh3ZWJzaXRlRGF0YVN0b3Jl
ICYmICF3ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKQorICAgICAg
ICB3ZWJzaXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChtX3Rj
Y1ByZWZlcmVuY2VFbmFibGVkKTsKKwogICAgIGF1dG8gcHJvY2Vzc1Byb3h5ID0gV2ViUHJvY2Vz
c1Byb3h5OjpjcmVhdGUoKnRoaXMsIHdlYnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKICAg
ICBhdXRvJiBwcm9jZXNzID0gcHJvY2Vzc1Byb3h5LmdldCgpOwogICAgIGluaXRpYWxpemVOZXdX
ZWJQcm9jZXNzKHByb2Nlc3MsIHdlYnNpdGVEYXRhU3RvcmUsIGlzUHJld2FybWVkKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0Nv
Y29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCA2ODUxMzE1Y2FjNTA2OTA2OGE2NzY0
MzY5NDY0Mjk3YjYxZDEwMmMxLi5mYjNiMjFmZDkzNjI4YTM0YWUzZDRkZWNmZDRlNzk3Y2Y2NTMx
ZjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2Nv
YS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCkBAIC0yNyw2ICsyNyw3
IEBACiAjaW1wb3J0ICJXZWJzaXRlRGF0YVN0b3JlLmgiCiAKICNpbXBvcnQgIkNvb2tpZVN0b3Jh
Z2VVdGlsc0NGLmgiCisjaW1wb3J0ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2ltcG9y
dCAiU2FuZGJveFV0aWxpdGllcy5oIgogI2ltcG9ydCAiU3RvcmFnZU1hbmFnZXIuaCIKICNpbXBv
cnQgIldlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eS5oIgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNp
bXBvcnQgPHd0Zi9VUkwuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KIAot
I2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvV2Vi
c2l0ZURhdGFTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgV0VCU0lURV9EQVRBX1NU
T1JFX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9y
dCA8VUlLaXQvVUlBcHBsaWNhdGlvbi5oPgogI2ltcG9ydCA8cGFsL2lvcy9NYW5hZ2VkQ29uZmln
dXJhdGlvblNvZnRMaW5rLmg+CkBAIC00NjMsMTEgKzQ1OCwyMyBAQCB2b2lkIFdlYnNpdGVEYXRh
U3RvcmU6OmluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9uIGZv
cmNlUmVpbgogICAgIH0pOwogfQogCit2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmFkZFRlc3REb21h
aW5zKCkgY29uc3QKK3sKKyAgICBpZiAoYXBwQm91bmREb21haW5zKCkuaXNFbXB0eSgpKSB7Cisg
ICAgICAgIGF1dG8gYnVuZGxlSUQgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIoKTsKKyAgICAgICAgYXV0byBhcHBCb3VuZERvbWFpbnNUZXN0aW5nID0gZ2V0QXBwQm91bmRE
b21haW5zVGVzdGluZyhidW5kbGVJRCk7CisgICAgICAgIGlmIChhcHBCb3VuZERvbWFpbnNUZXN0
aW5nKSB7CisgICAgICAgICAgICBmb3IgKGF1dG8mIGRvbWFpbiA6ICphcHBCb3VuZERvbWFpbnNU
ZXN0aW5nKQorICAgICAgICAgICAgICAgIGFwcEJvdW5kRG9tYWlucygpLmFkZChkb21haW4pOwor
ICAgICAgICB9CisgICAgfQorfQorCiB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJv
dW5kRG9tYWlucyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEhhc2hTZXQ8V2ViQ29yZTo6
UmVnaXN0cmFibGVEb21haW4+JiwgY29uc3QgSGFzaFNldDxTdHJpbmc+Jik+JiYgY29tcGxldGlv
bkhhbmRsZXIpIGNvbnN0CiB7CiAgICAgaWYgKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5z
KSB7CiAgICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCkg
ewotICAgICAgICAgICAgV0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgICAg
IGFkZFRlc3REb21haW5zKCk7CiAgICAgICAgIH0KICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
YXBwQm91bmREb21haW5zKCksIGFwcEJvdW5kU2NoZW1lcygpKTsKICAgICAgICAgcmV0dXJuOwpA
QCAtNDc5LDcgKzQ4Niw3IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmRE
b21haW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSGFzaFNlCiAgICAgICAgIFJ1bkxv
b3A6Om1haW4oKS5kaXNwYXRjaChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVj
dGVkVGhpcyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcild
ICgpIG11dGFibGUgewogICAgICAgICAgICAgQVNTRVJUKGhhc0luaXRpYWxpemVkQXBwQm91bmRE
b21haW5zKTsKICAgICAgICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2Rl
RW5hYmxlZCkgewotICAgICAgICAgICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlM7
CisgICAgICAgICAgICAgICAgYWRkVGVzdERvbWFpbnMoKTsKICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBhcHBCb3VuZFNjaGVt
ZXMoKSk7CiAgICAgICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IGM2ZmJiYzQ5MjM5ZjY5NWE4YmEz
NDFlZjY5MzA1N2NlZjFlYWI2ZDAuLjBhN2Y4M2QyYjdkYzYzNTM4Yzg1Nzg4MDBlNjE3YWZmYzVk
M2YxOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dl
YnNpdGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0
YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTMxMiw2ICszMTIsNyBAQCBwdWJsaWM6CiBwcml2YXRl
OgogICAgIGVudW0gY2xhc3MgRm9yY2VSZWluaXRpYWxpemF0aW9uIDogYm9vbCB7IE5vLCBZZXMg
fTsKICAgICB2b2lkIGluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0
aW9uID0gRm9yY2VSZWluaXRpYWxpemF0aW9uOjpObyk7CisgICAgdm9pZCBhZGRUZXN0RG9tYWlu
cygpIGNvbnN0OwogCiAgICAgdm9pZCBmZXRjaERhdGFBbmRBcHBseShPcHRpb25TZXQ8V2Vic2l0
ZURhdGFUeXBlPiwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhRmV0Y2hPcHRpb24+LCBSZWZQdHI8V29y
a1F1ZXVlPiYmLCBGdW5jdGlvbjx2b2lkKFZlY3RvcjxXZWJzaXRlRGF0YVJlY29yZD4pPiYmIGFw
cGx5KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKaW5kZXggMzA0MjBkOTA2YzAyZDNjOGZlY2UwYWRjYWRiYmY5YjRhMDA4N2Q2Yi4uZmU4M2M0
MjUyYmJjNjA3ZTE2ODIzYzhkNGNhYjFhNTBjMGUxMWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05NjMsNiArOTYzLDcgQEAKIAkJ
NDlCQ0ExOTIyM0ExNzc2NjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJz
dFBhcnR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
OUJDQTE5MTIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0
UGFydHkuaCAqLzsgfTsKIAkJNDlCQ0ExOTUyM0ExOENGRDAwMjhBODM2IC8qIF9XS1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTkwMjNBMTc1NDkwMDI4QTgzNiAvKiBfV0tS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmggKi87IH07CiAJCTQ5QkNB
MTk3MjNBMTkzMEQwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0Ex
OTYyM0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5
LmggKi87IH07CisJCTQ5REFBMzhDMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAq
LzsgfTsKIAkJNDlFQ0E0MUMyM0ZDQTVEODAwMjMzNThEIC8qIFBvbGljeURlY2lzaW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVDQTQxQjIzRkNB
NDg2MDAyMzM1OEQgLyogUG9saWN5RGVjaXNpb24uaCAqLzsgfTsKIAkJNDlGQkVGRkQyMzlCMDEx
RDAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkMyMzlCMDEx
RDAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lm1tICovOyB9
OwogCQk0OUZCRUZGRjIzOUIwMTJGMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1RoaXJkUGFydHkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0OUZCRUZGRTIzOUIwMTJGMDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1RoaXJkUGFydHkubW0gKi87IH07CkBAIC0zNTg2LDYgKzM1ODcsOCBAQAogCQk0OUJDQTE5MDIz
QTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRl
cm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0
eUludGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5QkNBMTkxMjNBMTc3
NjYwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5NjIzQTE4RjYyMDAyOEE4MzYgLyogQVBJUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZh
dWx0V2ViQnJvd3NlckNoZWNrcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWZhdWx0V2ViQnJvd3NlckNo
ZWNrcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUVDQTQxQjIzRkNBNDg2MDAy
MzM1OEQgLyogUG9saWN5RGVjaXNpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9saWN5RGVjaXNpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlGQkVGRkEyMzlBRDk3ODAwQkQwMzJG
IC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQ5RkJFRkZCMjM5QURCMTgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRmlyc3RQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ4Myw2
ICs3NDg2LDggQEAKIAkJCQkxQzczOUU4NTIzNDdCQ0Y2MDBDNjIxRUMgLyogQ29yZVRleHRIZWxw
ZXJzLm1tICovLAogCQkJCUM1NUY5MTZDMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9u
UmVzdWx0LmggKi8sCiAJCQkJQzU1RjkxNkQxQzU5NUU0NDAwMjlFOTJEIC8qIERhdGFEZXRlY3Rp
b25SZXN1bHQubW0gKi8sCisJCQkJNDlEQUEzOEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLmggKi8sCisJCQkJNDlEQUEzOEIyNENCQTFBODAwNzkzRDc1IC8qIERl
ZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovLAogCQkJCUNFNTUwRTEzMjI4Mzc0NDQwMEQyODc5
MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5jcHAgKi8sCiAJCQkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4
NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggKi8sCiAJCQkJQzE2NjNFNUEyNEFFQTc0MjAwQzZB
M0IyIC8qIExhdW5jaFNlcnZpY2VzRGF0YWJhc2VYUENDb25zdGFudHMuaCAqLywKQEAgLTEyNzMw
LDYgKzEyNzM1LDcgQEAKIAkJCQkyRDkyQTc3RDIxMkI2QTcxMDBGNDkzRkQgLyogQ29ubmVjdGlv
bi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc3RTIxMkI2QTcxMDBGNDkzRkQgLyogRGF0
YVJlZmVyZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc3RjIxMkI2QTcxMDBGNDkz
RkQgLyogRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0OURBQTM4QzI0Q0JBMUE4MDA3
OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4gU291cmNlcyAqLywKIAkJCQky
RDBDNTZGRTIyOUYxREVBMDBCRDMzRTcgLyogRGV2aWNlTWFuYWdlbWVudFNvZnRMaW5rLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMUFCN0Q2MTkxMjg4QjlEOTAwQ0ZEMDhDIC8qIERvd25sb2FkUHJv
eHlNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUE2NDIyOTkxMkREMDI5
MjAwQ0FBRTJDIC8qIERyYXdpbmdBcmVhTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDdk
NGI5NGMyZDQ2Y2E2YTE5YmNkMGFlNGRlNDdiNTlkZDcwODhjODYuLmIxMzViMTA4M2U1MmM4YWNl
MWI2MzQ0NGEwZTliZTEzMTYyMTczNDUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysg
Yi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMC0wNy0yOCAgS2F0ZSBDaGVu
ZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIEFwcC1C
b3VuZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFJlcGxhY2UgV2ViS2l0IEFkZGl0aW9ucyBtYWNyb3Mgd2l0aCBjb2RlIHRvIHNl
dCBhIGRpZmZlcmVudCBidW5kbGUKKyAgICAgICAgaWRlbnRpZmllciBpbmRpY2F0aW5nIHRoYXQg
d2Ugd2FudCB0byBydW4gYW4gQXBwLUJvdW5kIERvbWFpbnMgdGVzdC4KKworICAgICAgICBSZW1v
dmUgI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspIGNoZWNrIHNvIHdlIHJ1biB0aGVzZSB0ZXN0
cyBvbiBFV1MuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0lu
QXBwQnJvd3NlclByaXZhY3kubW06CisgICAgICAgIChjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFj
eVRlc3RTZXR0aW5ncyk6CisgICAgICAgIChpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRl
c3RTZXR0aW5ncyk6CisKIDIwMjAtMDctMjggIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBw
bGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRjb3JlcHldIEFkZCBzdHJpbmdfdXRpbHMgKFBhcnQg
MykKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5B
cHBCcm93c2VyUHJpdmFjeS5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvSW5BcHBCcm93c2VyUHJpdmFjeS5tbQppbmRleCBlNzUwMDliNWVhNDhiNTRlOGE2NjEzM2Qy
NThjODYzMGZlNTQ5Y2Q3Li4zNjlmZmU1MjMxOGUwNzRiMGY0NGYxY2QwNjM2ZTM4OTk2ZDMxNzM0
IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBw
QnJvd3NlclByaXZhY3kubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tCkBAIC00NSw5ICs0NSw2IEBACiAKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQg
PFdlYktpdEFkZGl0aW9ucy9JbkFwcEJyb3dzZXJQcml2YWN5VGVzdEFkZGl0aW9ucy5oPgotCiBz
dGF0aWMgYm9vbCBpc0RvbmU7CiAKIEBpbnRlcmZhY2UgQXBwQm91bmREb21haW5EZWxlZ2F0ZSA6
IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0ZT4KQEAgLTEzMSwxNCArMTI4LDE0IEBAIEBl
bmQKIHN0YXRpYyB2b2lkIGNsZWFuVXBJbkFwcEJyb3dzZXJQcml2YWN5VGVzdFNldHRpbmdzKCkK
IHsKICAgICBXZWJDb3JlOjpjbGVhckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdP
dmVycmlkZSgpOwotICAgIElOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TXzIKKyAgICBX
ZWJDb3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImNvbS5hcHBsZS5XZWJLaXQu
VGVzdFdlYktpdEFQSSIpOwogfQogCiBzdGF0aWMgdm9pZCBpbml0aWFsaXplSW5BcHBCcm93c2Vy
UHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgp
OwogICAgIFdlYkNvcmU6OmNsZWFyQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092
ZXJyaWRlKCk7Ci0gICAgSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlMKKyAgICBXZWJD
b3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImluQXBwQnJvd3NlclByaXZhY3lU
ZXN0SWRlbnRpZmllciIpOwogfQogCiBURVNUKEluQXBwQnJvd3NlclByaXZhY3ksIE5vbkFwcEJv
dW5kRG9tYWluRmFpbGVkVXNlclNjcmlwdEF0U3RhcnQpCkBAIC0xMzM4LDYgKzEzMzUsNCBAQCBU
RVNUKEluQXBwQnJvd3NlclByaXZhY3ksIEFwcEJvdW5kQ3VzdG9tU2NoZW1lKQogICAgIFRlc3RX
ZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKIH0KIAotI2VuZGlmIC8vIFVTRShBUFBMRV9J
TlRFUk5BTF9TREspCi0KICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGMw
ZWU4NjRmNGExYWQ2NmI0MzUzZTgwYjljZjdmOGVkNjQ2NjJmZjQuLjRjZjZhNzJhYzM1MDdkZjAy
OWUzOWVlZmQwNzhiNTA2OTg3MDJlMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wNy0y
OCAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBN
aWdyYXRlIEFwcC1Cb3VuZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgVGhlc2Ug
dGVzdHMgYXJlIG5vdyBleHBlY3RlZCB0byBwYXNzLgorCiAyMDIwLTA3LTI4ICBSeWFuIEhhZGRh
ZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCB0ZXN0IGV4cGVjdGF0aW9u
cyBhbmQgYmFzZWxpbmVzIGZvciBpT1MgMTQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGRhMGY1ZWZi
YjAyZDJkYThiY2VlNDQzNjU0MzI0NTdlYTFhNGFiMTkuLjk1MTM2M2Y1OTBiOGM4YmVhNGRiMzQ4
ZTNlZDVlYjFmOWU4NGRlOWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTY1LDcgKzE2NSw3IEBA
IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi91c2VyYWdlbnQtcmVsb2FkLnBocCBbIFNraXAgXQogc3Rv
cmFnZS9pbmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFzZS1hZnRlci1zdG9yYWdlLWNyYXNoLmh0
bWwgWyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBTa2lw
IF0KIGZhc3QvZm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5
cGluZy5odG1sIFsgU2tpcCBdCi1odHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsg
U2tpcCBdCitodHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgUGFzcyBdCiAKIAog
IyBPbmx5IE1hYyBhbmQgaU9TIGhhdmUgYW4gaW1wbGVtZW50YXRpb24gb2YgVUlTY3JpcHRDb250
cm9sbGVyOjpkb0FzeW5jVGFzaygpLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405411</attachid>
            <date>2020-07-28 14:05:37 -0700</date>
            <delta_ts>2020-07-28 14:27:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728140537.patch</filename>
            <type>text/plain</type>
            <size>35862</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjkzMWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlRGlzcG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFu
YWdlci5oIgogI2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0
b21Qcm90b2NvbE1hbmFnZXIuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYg
QEAKICNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25z
Lmg+CiAjZWxzZQogI2RlZmluZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNk
ZWZpbmUgTkVUV09SS19TRVNTSU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAj
aW1wb3J0ICJEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBA
QCB2b2lkIFNlc3Npb25XcmFwcGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRp
b24gKmNvbmZpZ3VyYXRpb24sIE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNl
c3Npb25XaXRoQ29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdl
dCgpIGRlbGVnYXRlUXVldWU6W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNp
ZiBIQVZFKFNFU1NJT05fQ0xFQU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFu
dXAoTmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVh
dGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19J
UEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBE
b24ndCBvdmVycmlkZSBhbiBleHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVy
cy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNl
dCkKKyAgICAgICAgcmV0dXJuOworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9S
KQorICAgIGF1dG8gcGFyZW50QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9B
U1NFUlQocGFyZW50QXVkaXRUb2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisK
KyAgICBib29sIGl0cEVuYWJsZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBh
cmVudEF1ZGl0VG9rZW4pOworICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5p
c1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAh
PSBwYXNzZWRFbmFibGVkU3RhdGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBl
bmFibGVkIHN0YXRlICglZCkgZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRw
RW5hYmxlZCwgcGFzc2VkRW5hYmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgor
fQorI2VuZGlmCisKIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0
d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMpCiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2Vzcywg
cGFyYW1ldGVycykKICAgICAsIG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMu
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3
b3JrU2Vzc2lvbkNvY29hOjppbml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZp
Z2F0aW5nVG9BcHBCb3UKIFNlc3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNz
aW9uV3JhcHBlckZvclRhc2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGlj
eSwgT3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4pCiB7CiAgICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
biA6IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VT
U0lPTl9DT0NPQV9BRERJVElPTlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJC
cm93c2VyKG5ldHdvcmtQcm9jZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVk
aXRUb2tlbigpKSkKICAgICAgICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKICAgICBpZiAoYXV0byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Np
b24oKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdl
YkJyb3dzZXJDaGVja3MuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZk
N2U0M2YxM2JlZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29h
L0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNz
IFJlZ2lzdHJhYmxlRG9tYWluOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQ
cm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOwor
Ym9vbCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQp
Owordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQo
KTsKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90
b2tlbl90Pik7Citib29sIGlzRnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNz
QUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIyNzY3OTc1Y2FjYTdjMWNmY2FmZGZiNjI1
ZWI0MGI0ZDk0YWJhNDAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9D
b2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVj
a3MuaCIKKworI2ltcG9ydCAiVmVyc2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiVENDU1BJLmgiCisj
aW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBv
cnQgPHd0Zi9SdW5Mb29wLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQg
PHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2gu
aD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRD
Q0FjY2Vzc1ByZWZsaWdodCwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYg
c2VydmljZSwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitT
T0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNz
UHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tl
biwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQor
U09GVF9MSU5LX0NPTlNUQU5UKFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNr
aW5nUHJldmVudGlvbiwgQ0ZTdHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0
YXRpYyBib29sIGlzRnVsbFdlYkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJl
dHVybiBidW5kbGVJRCA9PSAiY29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1
bmRsZUlEID09ICJjb20uYXBwbGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09w
dGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9t
YWluc1Rlc3RpbmcoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQu
aXNOdWxsKCkpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0
byBhcHBCb3VuZERvbWFpbkxpc3QgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcs
IFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJy
b3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbj4geyBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJv
bVJlZ2lzdHJhYmxlRG9tYWluU3RyaW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAg
IGF1dG8gYXBwQm91bmREb21haW5JdGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRs
ZUlEKTsKKyAgICBpZiAoYXBwQm91bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+
ZW5kKCkpCisgICAgICAgIHJldHVybiBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKK30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9v
bCBpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJv
Y2VzczsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9v
bmNlKCZvbmNlLCBeeworICAgICAgICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9j
ZXNzID0gW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50Il0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNv
bS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRp
ZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAg
cmV0dXJuIGlzSW5TdWJQcm9jZXNzOworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUg
OiB1aW50OF90IHsKKyAgICBVbmluaXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBF
bmFibGVkLAorICAgIERpc2FibGVkCit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+
IGdfY3VycmVudElUUFN0YXRlID0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBi
b29sIGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAg
QVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRv
bWljPGJvb2w+IGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3Nz
V2Vic2l0ZVRyYWNraW5nVXNhZ2VEZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVy
bWluZUlUUFN0YXRlSW50ZXJuYWwoYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0
cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFw
cFdhc0xpbmtlZE9uT3JBZnRlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFp
c0Z1bGxXZWJCcm93c2VyKGJ1bmRsZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dl
YnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBU
Q0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKKyNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxNDAwMDApIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTEwMDAwKQorICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRr
VENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIp
OworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworfQorCitzdGF0aWMgZGlzcGF0Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVy
bWluZUlUUFN0YXRlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlm
IChnX2N1cnJlbnRJVFBTdGF0ZSAhPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZ19jdXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5n
OworICAgIGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1Zl
cnNpb246OkZpcnN0V2l0aFNlc3Npb25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fs
d2F5c0xpbmtlZE9uQWZ0ZXI6Olllcyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVl
dWVfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAg
IGRpc3BhdGNoX2FzeW5jKGdfaXRwUXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRs
ZUlkZW50aWZpZXIgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29s
YXRlZENvcHkoKV0geworICAgICAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0
YXRlSW50ZXJuYWwoYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElU
UFN0YXRlOjpFbmFibGVkIDogSVRQU3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNo
X2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRj
aF9yZWxlYXNlKGdfaXRwUXVldWUpOworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7
CisgICAgICAgIH0pOworICAgIH0pOworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
Cit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6
OkluaXRpYWxpemluZykKKyAgICAgICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0
YXRlOjpFbmFibGVkOworCisgICAgUkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBf
X2Jsb2NrIGJvb2wgaXNJVFBFbmFibGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwg
XnsKKyAgICAgICAgaXNJVFBFbmFibGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6
OkVuYWJsZWQ7CisgICAgfSk7CisgICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBk
b2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1
ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAg
QVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKGF1ZGl0VG9rZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworI2lmIChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDE0MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMTAwMDApCisgICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9
IFRDQ0FjY2Vzc1ByZWZsaWdodFdpdGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50
ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRy
KTsKKyNlbmRpZgorICAgIHJldHVybiByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKK30KKworc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3Mg
PSBmYWxzZTsKK2Jvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJU
KCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGli
aXRlZFVzYWdlU3RyaW5ncyA9IGZhbHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmlu
Z3MpCisgICAgICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNE
aWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0Rp
Y3Rpb25hcnldOworICAgIFJFTEVBU0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8v
IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlz
IGxpc3Qgd2FzIHNlbGVjdGVkLgorICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAg
ICAgICBAIk5TUmVtaW5kZXJzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2Ny
aXB0aW9uIiwKKyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAg
ICAgICBAIk5TSGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0
aFVwZGF0ZVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2Fn
ZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNh
Z2VEZXNjcmlwdGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0
cmluZyA6IHByb2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVz
c2FnZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZh
Y3ldICVAIHVzZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWlu
QnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAg
ICBXVEZMb2dBbHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IH0KKyAgICB9CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJu
IGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAg
QVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVk
aXRUb2tlbik7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRp
YyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAg
ICAgICBmdWxsV2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1
ZSgpLCAiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAg
cmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2Vi
Q29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBp
c0Z1bGxXZWJCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBB
U1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxs
V2ViQnJvd3NlciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxv
cGVyLndlYi1icm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1
bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7
CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJC
cm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQw
NDY1OWM5YjUxM2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQ
SUhUVFBDb29raWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRl
ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29r
aWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUg
IldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8
V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlm
Ci0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyAr
NjQsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0
IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3du
aW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2ll
cyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBp
ZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZ
X0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2Vi
QnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsK
ICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAg
ICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRl
eCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3
M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBA
CiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250
ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2lu
Y2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vs
c2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5p
ZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4g
UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdl
Q29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYx
MjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLjcxMmQyM2JiZDMzNzQ1ZDk5Y2ZjZTY5MWQzMGQ0
NjYxYmU1YTlhMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtMjg4LDEzICsyODgsOCBAQAogI2luY2x1ZGUgIk1lZGlhVXNhZ2VNYW5hZ2VyLmgiCiAjZW5k
aWYKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRp
b25zL1dlYlBhZ2VQcm94eUFkZGl0aW9ucy5oPgotI2Vsc2UKLXN0YXRpYyBib29sIGlzRnVsbFdl
YkJyb3dzZXIoKSB7IHJldHVybiB0cnVlOyB9CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLXN0
YXRpYyBib29sIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MoKSB7IHJldHVybiBmYWxzZTsgfQot
I2VuZGlmCisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNlbmRpZgogCiAv
LyBUaGlzIGNvbnRyb2xzIHdoYXQgc3RyYXRlZ3kgd2UgdXNlIGZvciBtb3VzZSB3aGVlbCBjb2Fs
ZXNjaW5nLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bv
b2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4
IDkyODFlMWNlNDMyOWIzNDJjMzNhZDg5MDdlMzg3MzE2YmZkZjAyMWQuLmU4OWYwNjlmNGI2MzY4
NGEyYTMyOWIyNTliZjQzOTRmNzJkOTYyMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTE0MSwxNSArMTQxLDYgQEAKICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZExlYWtDb3VudGVyLmg+CiAjZW5kaWYKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9T
REspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1dlYlByb2Nlc3NQb29sQWRkaXRpb25zLmg+
Ci0jZWxzZQotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OUwotI2RlZmluZSBXRUJf
UFJPQ0VTU19QT09MX0FERElUSU9OU18yCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJ
T05TXzMKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfNAotI2VuZGlmCi0KICNk
ZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0coY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVB
U0VfTE9HKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZB
X0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5l
bCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQ
b29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xf
UkVMRUFTRV9MT0dfSUZfQUxMT1dFRChjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0dfSUYo
c2Vzc2lvbklELmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpLCBjaGFubmVsLCAiJXAgLSBXZWJQ
cm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCkBAIC0yNTUsNyArMjQ2LDYg
QEAgV2ViUHJvY2Vzc1Bvb2w6OldlYlByb2Nlc3NQb29sKEFQSTo6UHJvY2Vzc1Bvb2xDb25maWd1
cmF0aW9uJiBjb25maWd1cmF0aW9uKQogI2VuZGlmCiAgICAgLCBtX2Fsd2F5c1J1bnNBdEJhY2tn
cm91bmRQcmlvcml0eShtX2NvbmZpZ3VyYXRpb24tPmFsd2F5c1J1bnNBdEJhY2tncm91bmRQcmlv
cml0eSgpKQogICAgICwgbV9zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKG1fY29uZmln
dXJhdGlvbi0+c2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlvbigpKQotICAgIFdFQl9QUk9D
RVNTX1BPT0xfQURESVRJT05TCiAgICAgLCBtX3VzZXJPYnNlcnZhYmxlUGFnZUNvdW50ZXIoW3Ro
aXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25TdGF0ZSgpOyB9
KQogICAgICwgbV9wcm9jZXNzU3VwcHJlc3Npb25EaXNhYmxlZEZvclBhZ2VDb3VudGVyKFt0aGlz
XShSZWZDb3VudGVyRXZlbnQpIHsgdXBkYXRlUHJvY2Vzc1N1cHByZXNzaW9uU3RhdGUoKTsgfSkK
ICAgICAsIG1faGlkZGVuUGFnZVRocm90dGxpbmdBdXRvSW5jcmVhc2VzQ291bnRlcihbdGhpc10o
UmVmQ291bnRlckV2ZW50KSB7IG1faGlkZGVuUGFnZVRocm90dGxpbmdUaW1lci5zdGFydE9uZVNo
b3QoMF9zKTsgfSkKQEAgLTI3MSw3ICsyNjEsNyBAQCBXZWJQcm9jZXNzUG9vbDo6V2ViUHJvY2Vz
c1Bvb2woQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCiAgICAg
ICAgIFdURjo6c2V0UHJvY2Vzc1ByaXZpbGVnZXMoYWxsUHJpdmlsZWdlcygpKTsKICAgICAgICAg
V2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9Vc2VDb29raWVB
UEkodHJ1ZSk7CiAgICAgICAgIFByb2Nlc3M6OnNldElkZW50aWZpZXIoV2ViQ29yZTo6UHJvY2Vz
c0lkZW50aWZpZXI6OmdlbmVyYXRlKCkpOwotICAgICAgICBXRUJfUFJPQ0VTU19QT09MX0FERElU
SU9OU180CisgICAgICAgIGRldGVybWluZUlUUFN0YXRlKCk7CiAgICAgfSk7CiAKICAgICBpZiAo
IW1fd2Vic2l0ZURhdGFTdG9yZSAmJiBXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHRE
YXRhU3RvcmVFeGlzdHMoKSkKQEAgLTYxMyw3ICs2MDMsMjAgQEAgTmV0d29ya1Byb2Nlc3NQcm94
eSYgV2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUq
IHdpdGgKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBzdGFuZGFsb25lQXBwbGljYXRp
b25Eb21haW47CiAgICAgSGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4gYXBwQm91
bmREb21haW5zOwogICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIG1hbnVhbFByZXZhbGVu
dFJlc291cmNlOwotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzIKKworICAgIG1fdGNj
UHJlZmVyZW5jZUVuYWJsZWQgPSBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKKyAgICBpZiAod2l0
aFdlYnNpdGVEYXRhU3RvcmUgJiYgIXdpdGhXZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhw
bGljaXRseVNldCgpKSB7CisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBt
X3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAgICAgICB3aXRoV2Vic2l0ZURhdGFTdG9yZS0+c2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGlj
cyk7CisgICAgfSBlbHNlIGlmIChtX3dlYnNpdGVEYXRhU3RvcmUgJiYgIW1fd2Vic2l0ZURhdGFT
dG9yZS0+aXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkgeworICAgICAgICBlbmFibGVSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNlRW5hYmxlZDsKKyAgICAgICAgbV93ZWJz
aXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKFdlYnNpdGVEYXRhU3RvcmU6OmRl
ZmF1bHREYXRhU3RvcmVFeGlzdHMoKSAmJiAhV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFT
dG9yZSgpLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVuYWJsZVJlc291
cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAgICAgICBXZWJz
aXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlKCktPnNldFJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NFbmFibGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZQorICAg
ICAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNlRW5hYmxl
ZDsKKwogICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSkgewogICAgICAgICBlbmFibGVSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzID0gd2l0aFdlYnNpdGVEYXRhU3RvcmUtPnJlc291cmNlTG9hZFN0
YXRpc3RpY3NFbmFibGVkKCk7CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykK
QEAgLTg4NCw3ICs4ODcsMTAgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVzb2x2ZVBhdGhzRm9y
U2FuZGJveEV4dGVuc2lvbnMoKQogCiBXZWJQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjpj
cmVhdGVOZXdXZWJQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdlYnNpdGVEYXRhU3RvcmUsIFdl
YlByb2Nlc3NQcm94eTo6SXNQcmV3YXJtZWQgaXNQcmV3YXJtZWQpCiB7Ci0gICAgV0VCX1BST0NF
U1NfUE9PTF9BRERJVElPTlNfMworICAgIG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQgPSBkb2VzQXBw
SGF2ZUlUUEVuYWJsZWQoKTsKKyAgICBpZiAod2Vic2l0ZURhdGFTdG9yZSAmJiAhd2Vic2l0ZURh
dGFTdG9yZS0+aXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkKKyAgICAgICAgd2Vic2l0ZURhdGFT
dG9yZS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQobV90Y2NQcmVmZXJlbmNlRW5h
YmxlZCk7CisKICAgICBhdXRvIHByb2Nlc3NQcm94eSA9IFdlYlByb2Nlc3NQcm94eTo6Y3JlYXRl
KCp0aGlzLCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CiAgICAgYXV0byYgcHJvY2Vz
cyA9IHByb2Nlc3NQcm94eS5nZXQoKTsKICAgICBpbml0aWFsaXplTmV3V2ViUHJvY2Vzcyhwcm9j
ZXNzLCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2Eu
bW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0
YVN0b3JlQ29jb2EubW0KaW5kZXggNjg1MTMxNWNhYzUwNjkwNjhhNjc2NDM2OTQ2NDI5N2I2MWQx
MDJjMS4uZmIzYjIxZmQ5MzYyOGEzNGFlM2Q0ZGVjZmQ0ZTc5N2NmNjUzMWY2NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFT
dG9yZUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0Nv
Y29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtMjcsNiArMjcsNyBAQAogI2ltcG9ydCAi
V2Vic2l0ZURhdGFTdG9yZS5oIgogCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRpbHNDRi5oIgor
I2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIlNhbmRib3hVdGls
aXRpZXMuaCIKICNpbXBvcnQgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJGcmFtZVBv
bGljeUxpc3RlbmVyUHJveHkuaCIKQEAgLTQ1LDEyICs0Niw2IEBACiAjaW1wb3J0IDx3dGYvVVJM
Lmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBVU0UoQVBQTEVf
SU5URVJOQUxfU0RLKQotI2ltcG9ydCA8V2ViS2l0QWRkaXRpb25zL1dlYnNpdGVEYXRhU3RvcmVB
ZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlMK
LSNlbmRpZgotCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbXBvcnQgPFVJS2l0L1VJQXBw
bGljYXRpb24uaD4KICNpbXBvcnQgPHBhbC9pb3MvTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGlu
ay5oPgpAQCAtNDYzLDExICs0NTgsMjMgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjppbml0aWFs
aXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4KICAgICB9
KTsKIH0KIAordm9pZCBXZWJzaXRlRGF0YVN0b3JlOjphZGRUZXN0RG9tYWlucygpIGNvbnN0Cit7
CisgICAgaWYgKGFwcEJvdW5kRG9tYWlucygpLmlzRW1wdHkoKSkgeworICAgICAgICBhdXRvIGJ1
bmRsZUlEID0gV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7CisgICAgICAg
IGF1dG8gYXBwQm91bmREb21haW5zVGVzdGluZyA9IGdldEFwcEJvdW5kRG9tYWluc1Rlc3Rpbmco
YnVuZGxlSUQpOworICAgICAgICBpZiAoYXBwQm91bmREb21haW5zVGVzdGluZykgeworICAgICAg
ICAgICAgZm9yIChhdXRvJiBkb21haW4gOiAqYXBwQm91bmREb21haW5zVGVzdGluZykKKyAgICAg
ICAgICAgICAgICBhcHBCb3VuZERvbWFpbnMoKS5hZGQoZG9tYWluKTsKKyAgICAgICAgfQorICAg
IH0KK30KKwogdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9t
YWluPiYsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25z
dAogewogICAgIGlmIChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucykgewogICAgICAgICBp
ZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAg
IFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlM7CisgICAgICAgICAgICBhZGRUZXN0RG9tYWlu
cygpOwogICAgICAgICB9CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlu
cygpLCBhcHBCb3VuZFNjaGVtZXMoKSk7CiAgICAgICAgIHJldHVybjsKQEAgLTQ3OSw3ICs0ODYs
NyBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEhhc2hTZQogICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlz
cGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpLCBjb21w
bGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsK
ICAgICAgICAgICAgIEFTU0VSVChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7CiAgICAg
ICAgICAgICBpZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAg
ICAgICAgICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICAgICAg
ICAgIGFkZFRlc3REb21haW5zKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjb21wbGV0
aW9uSGFuZGxlcihhcHBCb3VuZERvbWFpbnMoKSwgYXBwQm91bmRTY2hlbWVzKCkpOwogICAgICAg
ICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dl
YnNpdGVEYXRhU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dl
YnNpdGVEYXRhU3RvcmUuaAppbmRleCBjNmZiYmM0OTIzOWY2OTVhOGJhMzQxZWY2OTMwNTdjZWYx
ZWFiNmQwLi4wYTdmODNkMmI3ZGM2MzUzOGM4NTc4ODAwZTYxN2FmZmM1ZDNmMTlkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3Jl
LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFT
dG9yZS5oCkBAIC0zMTIsNiArMzEyLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBlbnVtIGNs
YXNzIEZvcmNlUmVpbml0aWFsaXphdGlvbiA6IGJvb2wgeyBObywgWWVzIH07CiAgICAgdm9pZCBp
bml0aWFsaXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiA9IEZvcmNlUmVp
bml0aWFsaXphdGlvbjo6Tm8pOworICAgIHZvaWQgYWRkVGVzdERvbWFpbnMoKSBjb25zdDsKIAog
ICAgIHZvaWQgZmV0Y2hEYXRhQW5kQXBwbHkoT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4sIE9w
dGlvblNldDxXZWJzaXRlRGF0YUZldGNoT3B0aW9uPiwgUmVmUHRyPFdvcmtRdWV1ZT4mJiwgRnVu
Y3Rpb248dm9pZChWZWN0b3I8V2Vic2l0ZURhdGFSZWNvcmQ+KT4mJiBhcHBseSk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDMwNDIw
ZDkwNmMwMmQzYzhmZWNlMGFkY2FkYmJmOWI0YTAwODdkNmIuLmZlODNjNDI1MmJiYzYwN2UxNjgy
M2M4ZDRjYWIxYTUwYzBlMTFkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTYzLDYgKzk2Myw3IEBACiAJCTQ5QkNBMTkyMjNBMTc3
NjYwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTEyM0ExNzc2
NjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi87IH07
CiAJCTQ5QkNBMTk1MjNBMThDRkQwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
Rmlyc3RQYXJ0eUludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0OUJDQTE5MDIzQTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oICovOyB9OwogCQk0OUJDQTE5NzIzQTE5MzBEMDAy
OEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTk2MjNBMThGNjIwMDI4
QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovOyB9OworCQk0
OURBQTM4QzI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OURBQTM4QjI0Q0JB
MUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi87IH07CiAJCTQ5RUNB
NDFDMjNGQ0E1RDgwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8q
IFBvbGljeURlY2lzaW9uLmggKi87IH07CiAJCTQ5RkJFRkZEMjM5QjAxMUQwMEJEMDMyRiAvKiBf
V0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RkJFRkZDMjM5QjAxMUQwMEJEMDMyRiAvKiBf
V0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSAqLzsgfTsKIAkJNDlGQkVGRkYy
MzlCMDEyRjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkUy
MzlCMDEyRjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1t
ICovOyB9OwpAQCAtMzU4Niw2ICszNTg3LDggQEAKIAkJNDlCQ0ExOTAyM0ExNzU0OTAwMjhBODM2
IC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5MTIzQTE3NzY2MDAyOEE4MzYgLyog
QVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJ
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDlCQ0ExOTYyM0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRp
c3RpY3NUaGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSVJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NUaGlyZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhCMjRD
QkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0OURBQTM4RDI0Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJD
aGVja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGlj
eURlY2lzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvbGljeURlY2lzaW9uLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQ5RkJFRkZBMjM5QUQ5NzgwMEJEMDMyRiAvKiBfV0tSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
OUZCRUZGQjIzOUFEQjE4MDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0
UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFy
dHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0ODMsNiArNzQ4Niw4IEBACiAJ
CQkJMUM3MzlFODUyMzQ3QkNGNjAwQzYyMUVDIC8qIENvcmVUZXh0SGVscGVycy5tbSAqLywKIAkJ
CQlDNTVGOTE2QzFDNTk1RTQ0MDAyOUU5MkQgLyogRGF0YURldGVjdGlvblJlc3VsdC5oICovLAog
CQkJCUM1NUY5MTZEMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0Lm1tICov
LAorCQkJCTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNr
cy5oICovLAorCQkJCTQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5tbSAqLywKIAkJCQlDRTU1MEUxMzIyODM3NDQ0MDBEMjg3OTEgLyogSW5zZXJ0VGV4
dE9wdGlvbnMuY3BwICovLAogCQkJCUNFNTUwRTEyMjI4MzczQzgwMEQyODc5MSAvKiBJbnNlcnRU
ZXh0T3B0aW9ucy5oICovLAogCQkJCUMxNjYzRTVBMjRBRUE3NDIwMEM2QTNCMiAvKiBMYXVuY2hT
ZXJ2aWNlc0RhdGFiYXNlWFBDQ29uc3RhbnRzLmggKi8sCkBAIC0xMjczMCw2ICsxMjczNSw3IEBA
CiAJCQkJMkQ5MkE3N0QyMTJCNkE3MTAwRjQ5M0ZEIC8qIENvbm5lY3Rpb24uY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMkQ5MkE3N0UyMTJCNkE3MTAwRjQ5M0ZEIC8qIERhdGFSZWZlcmVuY2UuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMkQ5MkE3N0YyMTJCNkE3MTAwRjQ5M0ZEIC8qIERlY29kZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1
bHRXZWJCcm93c2VyQ2hlY2tzLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQwQzU2RkUyMjlGMURF
QTAwQkQzM0U3IC8qIERldmljZU1hbmFnZW1lbnRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTFBQjdENjE5MTI4OEI5RDkwMENGRDA4QyAvKiBEb3dubG9hZFByb3h5TWVzc2FnZVJlY2Vp
dmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBNjQyMjk5MTJERDAyOTIwMENBQUUyQyAvKiBE
cmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBh
L1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3ZDRiOTRjMmQ0NmNhNmEx
OWJjZDBhZTRkZTQ3YjU5ZGQ3MDg4Yzg2Li5iMTM1YjEwODNlNTJjOGFjZTFiNjM0NDRhMGU5YmUx
MzE2MjE3MzQ1IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5l
X2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBj
b2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1
Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXBs
YWNlIFdlYktpdCBBZGRpdGlvbnMgbWFjcm9zIHdpdGggY29kZSB0byBzZXQgYSBkaWZmZXJlbnQg
YnVuZGxlCisgICAgICAgIGlkZW50aWZpZXIgaW5kaWNhdGluZyB0aGF0IHdlIHdhbnQgdG8gcnVu
IGFuIEFwcC1Cb3VuZCBEb21haW5zIHRlc3QuCisKKyAgICAgICAgUmVtb3ZlICNpZiBVU0UoQVBQ
TEVfSU5URVJOQUxfU0RLKSBjaGVjayBzbyB3ZSBydW4gdGhlc2UgdGVzdHMgb24gRVdTLgorCisg
ICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2
YWN5Lm1tOgorICAgICAgICAoY2xlYW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3Mp
OgorICAgICAgICAoaW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MpOgor
CiAyMDIwLTA3LTI4ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbd2Via2l0Y29yZXB5XSBBZGQgc3RyaW5nX3V0aWxzIChQYXJ0IDMpCmRpZmYgLS1naXQg
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZh
Y3kubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3Nl
clByaXZhY3kubW0KaW5kZXggZTc1MDA5YjVlYTQ4YjU0ZThhNjYxMzNkMjU4Yzg2MzBmZTU0OWNk
Ny4uMzY5ZmZlNTIzMThlMDc0YjBmNDRmMWNkMDYzNmUzODk5NmQzMTczNCAxMDA2NDQKLS0tIGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5
Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93
c2VyUHJpdmFjeS5tbQpAQCAtNDUsOSArNDUsNiBAQAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlM
WSkKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlv
bnMvSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RBZGRpdGlvbnMuaD4KLQogc3RhdGljIGJvb2wgaXNE
b25lOwogCiBAaW50ZXJmYWNlIEFwcEJvdW5kRG9tYWluRGVsZWdhdGUgOiBOU09iamVjdCA8V0tO
YXZpZ2F0aW9uRGVsZWdhdGU+CkBAIC0xMzEsMTQgKzEyOCwxNCBAQCBAZW5kCiBzdGF0aWMgdm9p
ZCBjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV2ViQ29y
ZTo6Y2xlYXJBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXJUZXN0aW5nT3ZlcnJpZGUoKTsKLSAg
ICBJTl9BUFBfQlJPV1NFUl9QUklWQUNZX0FERElUSU9OU18yCisgICAgV2ViQ29yZTo6c2V0QXBw
bGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCJjb20uYXBwbGUuV2ViS2l0LlRlc3RXZWJLaXRBUEki
KTsKIH0KIAogc3RhdGljIHZvaWQgaW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0
dGluZ3MoKQogewogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKICAgICBXZWJDb3Jl
OjpjbGVhckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgpOwotICAg
IElOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TCisgICAgV2ViQ29yZTo6c2V0QXBwbGlj
YXRpb25CdW5kbGVJZGVudGlmaWVyKCJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIi
KTsKIH0KIAogVEVTVChJbkFwcEJyb3dzZXJQcml2YWN5LCBOb25BcHBCb3VuZERvbWFpbkZhaWxl
ZFVzZXJTY3JpcHRBdFN0YXJ0KQpAQCAtMTMzOCw2ICsxMzM1LDQgQEAgVEVTVChJbkFwcEJyb3dz
ZXJQcml2YWN5LCBBcHBCb3VuZEN1c3RvbVNjaGVtZSkKICAgICBUZXN0V2ViS2l0QVBJOjpVdGls
OjpydW4oJmlzRG9uZSk7CiB9CiAKLSNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQot
CiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjMGVlODY0ZjRhMWFkNjZi
NDM1M2U4MGI5Y2Y3ZjhlZDY0NjYyZmY0Li40Y2Y2YTcyYWMzNTA3ZGYwMjllMzllZWZkMDc4YjUw
Njk4NzAyZTJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5
ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91
bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgIFRoZXNlIHRlc3RzIGFyZSBub3cg
ZXhwZWN0ZWQgdG8gcGFzcy4KKwogMjAyMC0wNy0yOCAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFk
QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgdGVzdCBleHBlY3RhdGlvbnMgYW5kIGJhc2VsaW5l
cyBmb3IgaU9TIDE0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkYTBmNWVmYmIwMmQyZGE4YmNlZTQ0
MzY1NDMyNDU3ZWExYTRhYjE5Li45NTEzNjNmNTkwYjhjOGJlYTRkYjM0OGUzZWQ1ZWIxZjllODRk
ZTliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE2NSw3ICsxNjUsNyBAQCBodHRwL3Rlc3RzL25h
dmlnYXRpb24vdXNlcmFnZW50LXJlbG9hZC5waHAgWyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhlZGRi
L21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgU2tpcCBdCiBz
dG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsgU2tpcCBdCiBmYXN0L2Zvcm1z
L2NhbGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRtbCBbIFNr
aXAgXQotaHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFNraXAgXQoraHR0cC90
ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFBhc3MgXQogCiAKICMgT25seSBNYWMgYW5k
IGlPUyBoYXZlIGFuIGltcGxlbWVudGF0aW9uIG9mIFVJU2NyaXB0Q29udHJvbGxlcjo6ZG9Bc3lu
Y1Rhc2soKS4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405414</attachid>
            <date>2020-07-28 14:27:19 -0700</date>
            <delta_ts>2020-07-28 15:01:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728142718.patch</filename>
            <type>text/plain</type>
            <size>177344</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjkzMWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlRGlzcG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFu
YWdlci5oIgogI2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0
b21Qcm90b2NvbE1hbmFnZXIuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYg
QEAKICNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25z
Lmg+CiAjZWxzZQogI2RlZmluZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNk
ZWZpbmUgTkVUV09SS19TRVNTSU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAj
aW1wb3J0ICJEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBA
QCB2b2lkIFNlc3Npb25XcmFwcGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRp
b24gKmNvbmZpZ3VyYXRpb24sIE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNl
c3Npb25XaXRoQ29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdl
dCgpIGRlbGVnYXRlUXVldWU6W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNp
ZiBIQVZFKFNFU1NJT05fQ0xFQU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFu
dXAoTmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVh
dGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19J
UEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBE
b24ndCBvdmVycmlkZSBhbiBleHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVy
cy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNl
dCkKKyAgICAgICAgcmV0dXJuOworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9S
KQorICAgIGF1dG8gcGFyZW50QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9B
U1NFUlQocGFyZW50QXVkaXRUb2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisK
KyAgICBib29sIGl0cEVuYWJsZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBh
cmVudEF1ZGl0VG9rZW4pOworICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5p
c1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAh
PSBwYXNzZWRFbmFibGVkU3RhdGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBl
bmFibGVkIHN0YXRlICglZCkgZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRw
RW5hYmxlZCwgcGFzc2VkRW5hYmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgor
fQorI2VuZGlmCisKIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0
d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMpCiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2Vzcywg
cGFyYW1ldGVycykKICAgICAsIG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMu
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3
b3JrU2Vzc2lvbkNvY29hOjppbml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZp
Z2F0aW5nVG9BcHBCb3UKIFNlc3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNz
aW9uV3JhcHBlckZvclRhc2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGlj
eSwgT3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4pCiB7CiAgICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
biA6IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VT
U0lPTl9DT0NPQV9BRERJVElPTlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJC
cm93c2VyKG5ldHdvcmtQcm9jZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVk
aXRUb2tlbigpKSkKICAgICAgICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKICAgICBpZiAoYXV0byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Np
b24oKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdl
YkJyb3dzZXJDaGVja3MuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZk
N2U0M2YxM2JlZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29h
L0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNz
IFJlZ2lzdHJhYmxlRG9tYWluOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQ
cm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOwor
Ym9vbCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQp
Owordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQo
KTsKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90
b2tlbl90Pik7Citib29sIGlzRnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNz
QUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI0MzlkMDk2NGQ0NWI2Mjk2N2E1NzAzOTcx
YTBkMmJkNjc0OTMzNmYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9D
b2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVj
a3MuaCIKKworI2ltcG9ydCAiVENDU1BJLmgiCisjaW1wb3J0ICJWZXJzaW9uQ2hlY2tzLmgiCisj
aW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBv
cnQgPHd0Zi9SdW5Mb29wLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQg
PHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2gu
aD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRD
Q0FjY2Vzc1ByZWZsaWdodCwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYg
c2VydmljZSwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitT
T0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNz
UHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tl
biwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQor
U09GVF9MSU5LX0NPTlNUQU5UKFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNr
aW5nUHJldmVudGlvbiwgQ0ZTdHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0
YXRpYyBib29sIGlzRnVsbFdlYkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJl
dHVybiBidW5kbGVJRCA9PSAiY29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1
bmRsZUlEID09ICJjb20uYXBwbGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09w
dGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9t
YWluc1Rlc3RpbmcoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQu
aXNOdWxsKCkpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0
byBhcHBCb3VuZERvbWFpbkxpc3QgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcs
IFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJy
b3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbj4geyBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJv
bVJlZ2lzdHJhYmxlRG9tYWluU3RyaW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAg
IGF1dG8gYXBwQm91bmREb21haW5JdGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRs
ZUlEKTsKKyAgICBpZiAoYXBwQm91bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+
ZW5kKCkpCisgICAgICAgIHJldHVybiBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKK30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9v
bCBpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJv
Y2VzczsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9v
bmNlKCZvbmNlLCBeeworICAgICAgICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9j
ZXNzID0gW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50Il0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNv
bS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRp
ZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAg
cmV0dXJuIGlzSW5TdWJQcm9jZXNzOworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUg
OiB1aW50OF90IHsKKyAgICBVbmluaXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBF
bmFibGVkLAorICAgIERpc2FibGVkCit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+
IGdfY3VycmVudElUUFN0YXRlID0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBi
b29sIGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAg
QVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRv
bWljPGJvb2w+IGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3Nz
V2Vic2l0ZVRyYWNraW5nVXNhZ2VEZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVy
bWluZUlUUFN0YXRlSW50ZXJuYWwoYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0
cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFw
cFdhc0xpbmtlZE9uT3JBZnRlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFp
c0Z1bGxXZWJCcm93c2VyKGJ1bmRsZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dl
YnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBU
Q0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKKyNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxNDAwMDApIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTEwMDAwKQorICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRr
VENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIp
OworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworfQorCitzdGF0aWMgZGlzcGF0Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVy
bWluZUlUUFN0YXRlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlm
IChnX2N1cnJlbnRJVFBTdGF0ZSAhPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZ19jdXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5n
OworICAgIGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1Zl
cnNpb246OkZpcnN0V2l0aFNlc3Npb25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fs
d2F5c0xpbmtlZE9uQWZ0ZXI6Olllcyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVl
dWVfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAg
IGRpc3BhdGNoX2FzeW5jKGdfaXRwUXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRs
ZUlkZW50aWZpZXIgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29s
YXRlZENvcHkoKV0geworICAgICAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0
YXRlSW50ZXJuYWwoYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElU
UFN0YXRlOjpFbmFibGVkIDogSVRQU3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNo
X2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRj
aF9yZWxlYXNlKGdfaXRwUXVldWUpOworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7
CisgICAgICAgIH0pOworICAgIH0pOworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
Cit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6
OkluaXRpYWxpemluZykKKyAgICAgICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0
YXRlOjpFbmFibGVkOworCisgICAgUkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBf
X2Jsb2NrIGJvb2wgaXNJVFBFbmFibGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwg
XnsKKyAgICAgICAgaXNJVFBFbmFibGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6
OkVuYWJsZWQ7CisgICAgfSk7CisgICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBk
b2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1
ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAg
QVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKGF1ZGl0VG9rZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworI2lmIChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDE0MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMTAwMDApCisgICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9
IFRDQ0FjY2Vzc1ByZWZsaWdodFdpdGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50
ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRy
KTsKKyNlbmRpZgorICAgIHJldHVybiByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKK30KKworc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3Mg
PSBmYWxzZTsKK2Jvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJU
KCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGli
aXRlZFVzYWdlU3RyaW5ncyA9IGZhbHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmlu
Z3MpCisgICAgICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNE
aWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0Rp
Y3Rpb25hcnldOworICAgIFJFTEVBU0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8v
IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlz
IGxpc3Qgd2FzIHNlbGVjdGVkLgorICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAg
ICAgICBAIk5TUmVtaW5kZXJzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2Ny
aXB0aW9uIiwKKyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAg
ICAgICBAIk5TSGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0
aFVwZGF0ZVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2Fn
ZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNh
Z2VEZXNjcmlwdGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0
cmluZyA6IHByb2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVz
c2FnZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZh
Y3ldICVAIHVzZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWlu
QnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAg
ICBXVEZMb2dBbHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IH0KKyAgICB9CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJu
IGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAg
QVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVk
aXRUb2tlbik7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRp
YyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAg
ICAgICBmdWxsV2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1
ZSgpLCAiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAg
cmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2Vi
Q29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBp
c0Z1bGxXZWJCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBB
U1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxs
V2ViQnJvd3NlciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxv
cGVyLndlYi1icm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1
bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7
CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJC
cm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQw
NDY1OWM5YjUxM2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQ
SUhUVFBDb29raWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRl
ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29r
aWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUg
IldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8
V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlm
Ci0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyAr
NjQsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0
IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3du
aW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2ll
cyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBp
ZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZ
X0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2Vi
QnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsK
ICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAg
ICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRl
eCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3
M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBA
CiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250
ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2lu
Y2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vs
c2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5p
ZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4g
UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdl
Q29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYx
MjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLjZlNjEwOTUzZTIzOTI0YWQ2NzgwOTBiYjI3MTcx
ZTQ1YzExOTIxYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtMjg4LDEzICsyODgsOCBAQAogI2luY2x1ZGUgIk1lZGlhVXNhZ2VNYW5hZ2VyLmgiCiAjZW5k
aWYKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRp
b25zL1dlYlBhZ2VQcm94eUFkZGl0aW9ucy5oPgotI2Vsc2UKLXN0YXRpYyBib29sIGlzRnVsbFdl
YkJyb3dzZXIoKSB7IHJldHVybiB0cnVlOyB9Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLXN0
YXRpYyBib29sIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MoKSB7IHJldHVybiBmYWxzZTsgfQot
I2VuZGlmCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dzZXJD
aGVja3MuaCIKICNlbmRpZgogCiAvLyBUaGlzIGNvbnRyb2xzIHdoYXQgc3RyYXRlZ3kgd2UgdXNl
IGZvciBtb3VzZSB3aGVlbCBjb2FsZXNjaW5nLgpAQCAtMTM5Niw4ICsxMzkxLDEwIEBAIFJlZlB0
cjxBUEk6Ok5hdmlnYXRpb24+IFdlYlBhZ2VQcm94eTo6bG9hZERhdGEoY29uc3QgSVBDOjpEYXRh
UmVmZXJlbmNlJiBkYXRhLCBjCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChMb2FkaW5n
LCAibG9hZERhdGE6Iik7CiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGlmIChNSU1F
VHlwZSA9PSAidGV4dC9odG1sIl9zICYmICFpc0Z1bGxXZWJCcm93c2VyKCkpCiAgICAgICAgIG1f
bGltaXRzTmF2aWdhdGlvbnNUb0FwcEJvdW5kRG9tYWlucyA9IHRydWU7CisjZW5kaWYKIAogICAg
IGlmIChtX2lzQ2xvc2VkKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoTG9hZGlu
ZywgImxvYWREYXRhOiBwYWdlIGlzIGNsb3NlZCIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDkyODFlMWNlNDMyOWIzNDJjMzNhZDg5MDdlMzg3MzE2
YmZkZjAyMWQuLmI3ZjMyZDE0ZGUyZTMzOTE4MmFjN2RhNmQ0M2RkZTM4NmI1Yjk1MmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTEyNiw2ICsxMjYs
NyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNsdWRlICJEZWZhdWx0V2Vi
QnJvd3NlckNoZWNrcy5oIgogI2luY2x1ZGUgIlZlcnNpb25DaGVja3MuaCIKICNpbmNsdWRlIDxX
ZWJDb3JlL0dhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9ISURHYW1lcGFkUHJvdmlkZXIuaD4KQEAgLTE0MSwxNSArMTQyLDYgQEAKICNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+CiAjZW5kaWYKIAotI2lmIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1dlYlByb2Nlc3NQb29sQWRkaXRp
b25zLmg+Ci0jZWxzZQotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OUwotI2RlZmlu
ZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18yCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xf
QURESVRJT05TXzMKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfNAotI2VuZGlm
Ci0KICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0coY2hhbm5lbCwgZm10LCAuLi4p
IFJFTEVBU0VfTE9HKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywg
IyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfRVJST1Io
Y2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5uZWwsICIlcCAtIFdlYlBy
b2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VT
U1BPT0xfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9M
T0dfSUYoc2Vzc2lvbklELmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpLCBjaGFubmVsLCAiJXAg
LSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCkBAIC0yNTUsNyAr
MjQ3LDYgQEAgV2ViUHJvY2Vzc1Bvb2w6OldlYlByb2Nlc3NQb29sKEFQSTo6UHJvY2Vzc1Bvb2xD
b25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogI2VuZGlmCiAgICAgLCBtX2Fsd2F5c1J1bnNB
dEJhY2tncm91bmRQcmlvcml0eShtX2NvbmZpZ3VyYXRpb24tPmFsd2F5c1J1bnNBdEJhY2tncm91
bmRQcmlvcml0eSgpKQogICAgICwgbV9zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKG1f
Y29uZmlndXJhdGlvbi0+c2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlvbigpKQotICAgIFdF
Ql9QUk9DRVNTX1BPT0xfQURESVRJT05TCiAgICAgLCBtX3VzZXJPYnNlcnZhYmxlUGFnZUNvdW50
ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25TdGF0
ZSgpOyB9KQogICAgICwgbV9wcm9jZXNzU3VwcHJlc3Npb25EaXNhYmxlZEZvclBhZ2VDb3VudGVy
KFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgdXBkYXRlUHJvY2Vzc1N1cHByZXNzaW9uU3RhdGUo
KTsgfSkKICAgICAsIG1faGlkZGVuUGFnZVRocm90dGxpbmdBdXRvSW5jcmVhc2VzQ291bnRlcihb
dGhpc10oUmVmQ291bnRlckV2ZW50KSB7IG1faGlkZGVuUGFnZVRocm90dGxpbmdUaW1lci5zdGFy
dE9uZVNob3QoMF9zKTsgfSkKQEAgLTI3MSw3ICsyNjIsNyBAQCBXZWJQcm9jZXNzUG9vbDo6V2Vi
UHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24p
CiAgICAgICAgIFdURjo6c2V0UHJvY2Vzc1ByaXZpbGVnZXMoYWxsUHJpdmlsZWdlcygpKTsKICAg
ICAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9Vc2VD
b29raWVBUEkodHJ1ZSk7CiAgICAgICAgIFByb2Nlc3M6OnNldElkZW50aWZpZXIoV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXI6OmdlbmVyYXRlKCkpOwotICAgICAgICBXRUJfUFJPQ0VTU19QT09M
X0FERElUSU9OU180CisgICAgICAgIGRldGVybWluZUlUUFN0YXRlKCk7CiAgICAgfSk7CiAKICAg
ICBpZiAoIW1fd2Vic2l0ZURhdGFTdG9yZSAmJiBXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmRl
ZmF1bHREYXRhU3RvcmVFeGlzdHMoKSkKQEAgLTYxMyw3ICs2MDQsMjAgQEAgTmV0d29ya1Byb2Nl
c3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRh
U3RvcmUqIHdpdGgKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBzdGFuZGFsb25lQXBw
bGljYXRpb25Eb21haW47CiAgICAgSGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4g
YXBwQm91bmREb21haW5zOwogICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIG1hbnVhbFBy
ZXZhbGVudFJlc291cmNlOwotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzIKKworICAg
IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQgPSBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKKyAgICBp
ZiAod2l0aFdlYnNpdGVEYXRhU3RvcmUgJiYgIXdpdGhXZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0
YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3Rp
Y3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAgICAgICB3aXRoV2Vic2l0ZURhdGFTdG9y
ZS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyk7CisgICAgfSBlbHNlIGlmIChtX3dlYnNpdGVEYXRhU3RvcmUgJiYgIW1fd2Vic2l0
ZURhdGFTdG9yZS0+aXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkgeworICAgICAgICBlbmFibGVS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNlRW5hYmxlZDsKKyAgICAgICAg
bV93ZWJzaXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFi
bGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKFdlYnNpdGVEYXRhU3Rv
cmU6OmRlZmF1bHREYXRhU3RvcmVFeGlzdHMoKSAmJiAhV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVs
dERhdGFTdG9yZSgpLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVuYWJs
ZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAgICAg
ICBXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlKCktPnNldFJlc291cmNlTG9hZFN0
YXRpc3RpY3NFbmFibGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxz
ZQorICAgICAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbV90Y2NQcmVmZXJlbmNl
RW5hYmxlZDsKKwogICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSkgewogICAgICAgICBlbmFi
bGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gd2l0aFdlYnNpdGVEYXRhU3RvcmUtPnJlc291cmNl
TG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKQEAgLTg4NCw3ICs4ODgsMTAgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVzb2x2ZVBh
dGhzRm9yU2FuZGJveEV4dGVuc2lvbnMoKQogCiBXZWJQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQ
b29sOjpjcmVhdGVOZXdXZWJQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdlYnNpdGVEYXRhU3Rv
cmUsIFdlYlByb2Nlc3NQcm94eTo6SXNQcmV3YXJtZWQgaXNQcmV3YXJtZWQpCiB7Ci0gICAgV0VC
X1BST0NFU1NfUE9PTF9BRERJVElPTlNfMworICAgIG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQgPSBk
b2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKKyAgICBpZiAod2Vic2l0ZURhdGFTdG9yZSAmJiAhd2Vi
c2l0ZURhdGFTdG9yZS0+aXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSkKKyAgICAgICAgd2Vic2l0
ZURhdGFTdG9yZS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQobV90Y2NQcmVmZXJl
bmNlRW5hYmxlZCk7CisKICAgICBhdXRvIHByb2Nlc3NQcm94eSA9IFdlYlByb2Nlc3NQcm94eTo6
Y3JlYXRlKCp0aGlzLCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CiAgICAgYXV0byYg
cHJvY2VzcyA9IHByb2Nlc3NQcm94eS5nZXQoKTsKICAgICBpbml0aWFsaXplTmV3V2ViUHJvY2Vz
cyhwcm9jZXNzLCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3Jl
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJz
aXRlRGF0YVN0b3JlQ29jb2EubW0KaW5kZXggNjg1MTMxNWNhYzUwNjkwNjhhNjc2NDM2OTQ2NDI5
N2I2MWQxMDJjMS4uZmIzYjIxZmQ5MzYyOGEzNGFlM2Q0ZGVjZmQ0ZTc5N2NmNjUzMWY2NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0
ZURhdGFTdG9yZUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtMjcsNiArMjcsNyBAQAogI2lt
cG9ydCAiV2Vic2l0ZURhdGFTdG9yZS5oIgogCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRpbHND
Ri5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIlNhbmRi
b3hVdGlsaXRpZXMuaCIKICNpbXBvcnQgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJG
cmFtZVBvbGljeUxpc3RlbmVyUHJveHkuaCIKQEAgLTQ1LDEyICs0Niw2IEBACiAjaW1wb3J0IDx3
dGYvVVJMLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBVU0Uo
QVBQTEVfSU5URVJOQUxfU0RLKQotI2ltcG9ydCA8V2ViS2l0QWRkaXRpb25zL1dlYnNpdGVEYXRh
U3RvcmVBZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJ
VElPTlMKLSNlbmRpZgotCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbXBvcnQgPFVJS2l0
L1VJQXBwbGljYXRpb24uaD4KICNpbXBvcnQgPHBhbC9pb3MvTWFuYWdlZENvbmZpZ3VyYXRpb25T
b2Z0TGluay5oPgpAQCAtNDYzLDExICs0NTgsMjMgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpp
bml0aWFsaXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4K
ICAgICB9KTsKIH0KIAordm9pZCBXZWJzaXRlRGF0YVN0b3JlOjphZGRUZXN0RG9tYWlucygpIGNv
bnN0Cit7CisgICAgaWYgKGFwcEJvdW5kRG9tYWlucygpLmlzRW1wdHkoKSkgeworICAgICAgICBh
dXRvIGJ1bmRsZUlEID0gV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7Cisg
ICAgICAgIGF1dG8gYXBwQm91bmREb21haW5zVGVzdGluZyA9IGdldEFwcEJvdW5kRG9tYWluc1Rl
c3RpbmcoYnVuZGxlSUQpOworICAgICAgICBpZiAoYXBwQm91bmREb21haW5zVGVzdGluZykgewor
ICAgICAgICAgICAgZm9yIChhdXRvJiBkb21haW4gOiAqYXBwQm91bmREb21haW5zVGVzdGluZykK
KyAgICAgICAgICAgICAgICBhcHBCb3VuZERvbWFpbnMoKS5hZGQoZG9tYWluKTsKKyAgICAgICAg
fQorICAgIH0KK30KKwogdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFp
bnMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJh
YmxlRG9tYWluPiYsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KSBjb25zdAogewogICAgIGlmIChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucykgewogICAg
ICAgICBpZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAg
ICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlM7CisgICAgICAgICAgICBhZGRUZXN0
RG9tYWlucygpOwogICAgICAgICB9CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5k
RG9tYWlucygpLCBhcHBCb3VuZFNjaGVtZXMoKSk7CiAgICAgICAgIHJldHVybjsKQEAgLTQ3OSw3
ICs0ODYsNyBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEhhc2hTZQogICAgICAgICBSdW5Mb29wOjptYWlu
KCkuZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMp
LCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRh
YmxlIHsKICAgICAgICAgICAgIEFTU0VSVChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7
CiAgICAgICAgICAgICBpZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQp
IHsKLSAgICAgICAgICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAg
ICAgICAgICAgIGFkZFRlc3REb21haW5zKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBj
b21wbGV0aW9uSGFuZGxlcihhcHBCb3VuZERvbWFpbnMoKSwgYXBwQm91bmRTY2hlbWVzKCkpOwog
ICAgICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL1dlYnNpdGVEYXRhU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL1dlYnNpdGVEYXRhU3RvcmUuaAppbmRleCBjNmZiYmM0OTIzOWY2OTVhOGJhMzQxZWY2OTMw
NTdjZWYxZWFiNmQwLi4wYTdmODNkMmI3ZGM2MzUzOGM4NTc4ODAwZTYxN2FmZmM1ZDNmMTlkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0
YVN0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0
ZURhdGFTdG9yZS5oCkBAIC0zMTIsNiArMzEyLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBl
bnVtIGNsYXNzIEZvcmNlUmVpbml0aWFsaXphdGlvbiA6IGJvb2wgeyBObywgWWVzIH07CiAgICAg
dm9pZCBpbml0aWFsaXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiA9IEZv
cmNlUmVpbml0aWFsaXphdGlvbjo6Tm8pOworICAgIHZvaWQgYWRkVGVzdERvbWFpbnMoKSBjb25z
dDsKIAogICAgIHZvaWQgZmV0Y2hEYXRhQW5kQXBwbHkoT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlw
ZT4sIE9wdGlvblNldDxXZWJzaXRlRGF0YUZldGNoT3B0aW9uPiwgUmVmUHRyPFdvcmtRdWV1ZT4m
JiwgRnVuY3Rpb248dm9pZChWZWN0b3I8V2Vic2l0ZURhdGFSZWNvcmQ+KT4mJiBhcHBseSk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDMwNDIwZDkwNmMwMmQzYzhmZWNlMGFkY2FkYmJmOWI0YTAwODdkNmIuLmZlODNjNDI1MmJiYzYw
N2UxNjgyM2M4ZDRjYWIxYTUwYzBlMTFkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTYzLDYgKzk2Myw3IEBACiAJCTQ5QkNBMTky
MjNBMTc3NjYwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTEy
M0ExNzc2NjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lmgg
Ki87IH07CiAJCTQ5QkNBMTk1MjNBMThDRkQwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0OUJDQTE5MDIzQTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VM
b2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oICovOyB9OwogCQk0OUJDQTE5NzIzQTE5
MzBEMDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTk2MjNBMThG
NjIwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovOyB9
OworCQk0OURBQTM4QzI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3Mu
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OURBQTM4
QjI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi87IH07CiAJ
CTQ5RUNBNDFDMjNGQ0E1RDgwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMz
NThEIC8qIFBvbGljeURlY2lzaW9uLmggKi87IH07CiAJCTQ5RkJFRkZEMjM5QjAxMUQwMEJEMDMy
RiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RkJFRkZDMjM5QjAxMUQwMEJEMDMy
RiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSAqLzsgfTsKIAkJNDlG
QkVGRkYyMzlCMDEyRjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBh
cnR5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlG
QkVGRkUyMzlCMDEyRjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBh
cnR5Lm1tICovOyB9OwpAQCAtMzU4Niw2ICszNTg3LDggQEAKIAkJNDlCQ0ExOTAyM0ExNzU0OTAw
MjhBODM2IC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5h
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5MTIzQTE3NzY2MDAyOEE4
MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNDlCQ0ExOTYyM0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9h
ZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSVJlc291cmNlTG9hZFN0
YXRpc3RpY3NUaGlyZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFB
MzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0OURBQTM4RDI0Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8q
IFBvbGljeURlY2lzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvbGljeURlY2lzaW9uLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5RkJFRkZBMjM5QUQ5NzgwMEJEMDMyRiAvKiBfV0tS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0OUZCRUZGQjIzOUFEQjE4MDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0Zp
cnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0ODMsNiArNzQ4Niw4
IEBACiAJCQkJMUM3MzlFODUyMzQ3QkNGNjAwQzYyMUVDIC8qIENvcmVUZXh0SGVscGVycy5tbSAq
LywKIAkJCQlDNTVGOTE2QzFDNTk1RTQ0MDAyOUU5MkQgLyogRGF0YURldGVjdGlvblJlc3VsdC5o
ICovLAogCQkJCUM1NUY5MTZEMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0
Lm1tICovLAorCQkJCTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5oICovLAorCQkJCTQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2Vi
QnJvd3NlckNoZWNrcy5tbSAqLywKIAkJCQlDRTU1MEUxMzIyODM3NDQ0MDBEMjg3OTEgLyogSW5z
ZXJ0VGV4dE9wdGlvbnMuY3BwICovLAogCQkJCUNFNTUwRTEyMjI4MzczQzgwMEQyODc5MSAvKiBJ
bnNlcnRUZXh0T3B0aW9ucy5oICovLAogCQkJCUMxNjYzRTVBMjRBRUE3NDIwMEM2QTNCMiAvKiBM
YXVuY2hTZXJ2aWNlc0RhdGFiYXNlWFBDQ29uc3RhbnRzLmggKi8sCkBAIC0xMjczMCw2ICsxMjcz
NSw3IEBACiAJCQkJMkQ5MkE3N0QyMTJCNkE3MTAwRjQ5M0ZEIC8qIENvbm5lY3Rpb24uY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMkQ5MkE3N0UyMTJCNkE3MTAwRjQ5M0ZEIC8qIERhdGFSZWZlcmVu
Y2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQ5MkE3N0YyMTJCNkE3MTAwRjQ5M0ZEIC8qIERl
Y29kZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8q
IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQwQzU2RkUy
MjlGMURFQTAwQkQzM0U3IC8qIERldmljZU1hbmFnZW1lbnRTb2Z0TGluay5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCTFBQjdENjE5MTI4OEI5RDkwMENGRDA4QyAvKiBEb3dubG9hZFByb3h5TWVzc2Fn
ZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBNjQyMjk5MTJERDAyOTIwMENBQUUy
QyAvKiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3ZDRiOTRjMmQ0
NmNhNmExOWJjZDBhZTRkZTQ3YjU5ZGQ3MDg4Yzg2Li5iMTM1YjEwODNlNTJjOGFjZTFiNjM0NDRh
MGU5YmUxMzE2MjE3MzQ1IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0
aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9t
YWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82
NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBSZXBsYWNlIFdlYktpdCBBZGRpdGlvbnMgbWFjcm9zIHdpdGggY29kZSB0byBzZXQgYSBkaWZm
ZXJlbnQgYnVuZGxlCisgICAgICAgIGlkZW50aWZpZXIgaW5kaWNhdGluZyB0aGF0IHdlIHdhbnQg
dG8gcnVuIGFuIEFwcC1Cb3VuZCBEb21haW5zIHRlc3QuCisKKyAgICAgICAgUmVtb3ZlICNpZiBV
U0UoQVBQTEVfSU5URVJOQUxfU0RLKSBjaGVjayBzbyB3ZSBydW4gdGhlc2UgdGVzdHMgb24gRVdT
LgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dz
ZXJQcml2YWN5Lm1tOgorICAgICAgICAoY2xlYW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0
dGluZ3MpOgorICAgICAgICAoaW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGlu
Z3MpOgorCiAyMDIwLTA3LTI4ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4K
IAogICAgICAgICBbd2Via2l0Y29yZXB5XSBBZGQgc3RyaW5nX3V0aWxzIChQYXJ0IDMpCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3Nl
clByaXZhY3kubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBw
QnJvd3NlclByaXZhY3kubW0KaW5kZXggZTc1MDA5YjVlYTQ4YjU0ZThhNjYxMzNkMjU4Yzg2MzBm
ZTU0OWNkNy4uMzY5ZmZlNTIzMThlMDc0YjBmNDRmMWNkMDYzNmUzODk5NmQzMTczNCAxMDA2NDQK
LS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQ
cml2YWN5Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5B
cHBCcm93c2VyUHJpdmFjeS5tbQpAQCAtNDUsOSArNDUsNiBAQAogCiAjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRB
ZGRpdGlvbnMvSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RBZGRpdGlvbnMuaD4KLQogc3RhdGljIGJv
b2wgaXNEb25lOwogCiBAaW50ZXJmYWNlIEFwcEJvdW5kRG9tYWluRGVsZWdhdGUgOiBOU09iamVj
dCA8V0tOYXZpZ2F0aW9uRGVsZWdhdGU+CkBAIC0xMzEsMTQgKzEyOCwxNCBAQCBAZW5kCiBzdGF0
aWMgdm9pZCBjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAg
V2ViQ29yZTo6Y2xlYXJBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXJUZXN0aW5nT3ZlcnJpZGUo
KTsKLSAgICBJTl9BUFBfQlJPV1NFUl9QUklWQUNZX0FERElUSU9OU18yCisgICAgV2ViQ29yZTo6
c2V0QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCJjb20uYXBwbGUuV2ViS2l0LlRlc3RXZWJL
aXRBUEkiKTsKIH0KIAogc3RhdGljIHZvaWQgaW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lU
ZXN0U2V0dGluZ3MoKQogewogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKICAgICBX
ZWJDb3JlOjpjbGVhckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgp
OwotICAgIElOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TCisgICAgV2ViQ29yZTo6c2V0
QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElkZW50
aWZpZXIiKTsKIH0KIAogVEVTVChJbkFwcEJyb3dzZXJQcml2YWN5LCBOb25BcHBCb3VuZERvbWFp
bkZhaWxlZFVzZXJTY3JpcHRBdFN0YXJ0KQpAQCAtMTMzOCw2ICsxMzM1LDQgQEAgVEVTVChJbkFw
cEJyb3dzZXJQcml2YWN5LCBBcHBCb3VuZEN1c3RvbVNjaGVtZSkKICAgICBUZXN0V2ViS2l0QVBJ
OjpVdGlsOjpydW4oJmlzRG9uZSk7CiB9CiAKLSNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKQotCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjMGVlODY0ZjRh
MWFkNjZiNDM1M2U4MGI5Y2Y3ZjhlZDY0NjYyZmY0Li40Y2Y2YTcyYWMzNTA3ZGYwMjllMzllZWZk
MDc4YjUwNjk4NzAyZTJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDctMjggIEthdGUg
Q2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBB
cHAtQm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgIFRoZXNlIHRlc3RzIGFy
ZSBub3cgZXhwZWN0ZWQgdG8gcGFzcy4KKwogMjAyMC0wNy0yOCAgUnlhbiBIYWRkYWQgIDxyeWFu
aGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgdGVzdCBleHBlY3RhdGlvbnMgYW5kIGJh
c2VsaW5lcyBmb3IgaU9TIDE0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkYTBmNWVmYmIwMmQyZGE4
YmNlZTQ0MzY1NDMyNDU3ZWExYTRhYjE5Li45NTEzNjNmNTkwYjhjOGJlYTRkYjM0OGUzZWQ1ZWIx
ZjllODRkZTliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE2NSw3ICsxNjUsNyBAQCBodHRwL3Rl
c3RzL25hdmlnYXRpb24vdXNlcmFnZW50LXJlbG9hZC5waHAgWyBTa2lwIF0KIHN0b3JhZ2UvaW5k
ZXhlZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgU2tp
cCBdCiBzdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsgU2tpcCBdCiBmYXN0
L2Zvcm1zL2NhbGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRt
bCBbIFNraXAgXQotaHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFNraXAgXQor
aHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFBhc3MgXQogCiAKICMgT25seSBN
YWMgYW5kIGlPUyBoYXZlIGFuIGltcGxlbWVudGF0aW9uIG9mIFVJU2NyaXB0Q29udHJvbGxlcjo6
ZG9Bc3luY1Rhc2soKS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N5c3RlbS1wcmV2aWV3L2Jh
ZGdlLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9zeXN0ZW0tcHJldmlldy9iYWRnZS1leHBl
Y3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZjM1OTEyNDhhMWYwOWFj
M2QxYjA5M2U1NjY5MTFjYzZlM2E2NmQ3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3N5c3RlbS1wcmV2aWV3L2JhZGdlLWV4cGVjdGVk
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxt
ZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgotPHN0eWxl
PgotICAgIGEgewotICAgICAgICAtd2Via2l0LWNsaXAtcGF0aDogcGF0aCgiTSA4MiAxNCBMIDg0
IDE0IEwgODQgMTYgTCA4MiAxNiB6Iik7Ci0gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsK
LSAgICB9Ci0gICAgaW1nIHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgIH0KLTwvc3R5bGU+Ci08c2NyaXB0Pgotd2luZG93LmFkZEV2ZW50TGlzdGVu
ZXIoImxvYWQiLCAoKSA9PiB7Ci0gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiY2FudmFzIik7Ci0gICAgY2FudmFzLndpZHRoID0gMTA7Ci0gICAgY2FudmFzLmhlaWdo
dCA9IDEwOwotICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCIyZCIpOwotICAgIGNv
bnN0IGltYWdlcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImltZyIpOwotICAgIGltYWdl
cy5mb3JFYWNoKGltYWdlID0+IHsKLSAgICAgICAgY3R4LmNsZWFyUmVjdCgwLCAwLCAxMCwgMTAp
OwotICAgICAgICBjb25zdCBjb2xvciA9IGltYWdlLmdldEF0dHJpYnV0ZSgiZGF0YS1jb2xvciIp
OwotICAgICAgICBjdHguZmlsbFN0eWxlID0gY29sb3I7Ci0gICAgICAgIGN0eC5maWxsUmVjdCgw
LCAwLCAxMCwgMTApOwotICAgICAgICBpbWFnZS5zcmMgPSBjYW52YXMudG9EYXRhVVJMKCk7Ci0g
ICAgfSk7Ci19LCBmYWxzZSk7Ci08L3NjcmlwdD4KLTxhIGhyZWY9Ii8iPgotICAgIDxpbWcgZGF0
YS1jb2xvcj0icmdiKDI1NSwgNTcsIDU3KSI+Ci08L2E+Ci08YSBocmVmPSIvIj4KLSAgICA8aW1n
IGRhdGEtY29sb3I9InJnYig4MCwgMTY5LCA3OSkiPgotPC9hPgotPGEgaHJlZj0iLyI+Ci0gICAg
PGltZyBkYXRhLWNvbG9yPSJyZ2IoMTAyLCAxMDIsIDI1NSkiPgotPC9hPgotPGEgaHJlZj0iLyI+
Ci0gICAgPGltZyBkYXRhLWNvbG9yPSJyZ2IoMCwgMjU1LCAyNTUpIj4KLTwvYT4KLTxhIGhyZWY9
Ii8iPgotICAgIDxpbWcgZGF0YS1jb2xvcj0icmdiKDE1NiwgMTU2LCAxNTYpIj4KLTwvYT4KLTxh
IGhyZWY9Ii8iPgotICAgIDxpbWcgZGF0YS1jb2xvcj0icmdiKDI1NSwgMTc0LCAxMDQpIj4KLTwv
YT4KLTxhIGhyZWY9Ii8iPgotICAgIDxpbWcgZGF0YS1jb2xvcj0id2hpdGUiPgotPC9hPgotPGEg
aHJlZj0iLyI+Ci0gICAgPGltZyBkYXRhLWNvbG9yPSJyZ2IoMTE4LCAxMTgsIDExOCkiPgotPC9h
PgotPGEgaHJlZj0iLyI+Ci0gICAgPGltZyBkYXRhLWNvbG9yPSJyZ2JhKDAsIDAsIDAsIDAuMCki
PgotPC9hPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3lzdGVtLXByZXZpZXcvYmFkZ2UuaHRt
bCBiL0xheW91dFRlc3RzL3N5c3RlbS1wcmV2aWV3L2JhZGdlLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGUxNjIwYzA3ODRiNWI4NWQ2NTZmNmFkOTUzMTI4YjU1NjllNDQ1ZTMu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvc3lzdGVtLXByZXZpZXcvYmFkZ2UuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDU1ICswLDAg
QEAKLTwhRE9DVFlQRSBodG1sPgotPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRo
PWRldmljZS13aWR0aCI+Ci08c3R5bGU+Ci0gICAgYSB7Ci0gICAgICAgIC13ZWJraXQtY2xpcC1w
YXRoOiBwYXRoKCJNIDgyIDE0IEwgODQgMTQgTCA4NCAxNiBMIDgyIDE2IHoiKTsKLSAgICAgICAg
dGV4dC1kZWNvcmF0aW9uOiBub25lOwotICAgIH0KLSAgICBpbWcgewotICAgICAgICB3aWR0aDog
MTAwcHg7Ci0gICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgfQotPC9zdHlsZT4KLTxzY3JpcHQ+
Ci13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKLSAgICBjb25zdCBjYW52
YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTsKLSAgICBjYW52YXMud2lkdGgg
PSAxMDsKLSAgICBjYW52YXMuaGVpZ2h0ID0gMTA7Ci0gICAgY29uc3QgY3R4ID0gY2FudmFzLmdl
dENvbnRleHQoIjJkIik7Ci0gICAgY29uc3QgaW1hZ2VzID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rv
ckFsbCgiaW1nIik7Ci0gICAgaW1hZ2VzLmZvckVhY2goaW1hZ2UgPT4gewotICAgICAgICBjdHgu
Y2xlYXJSZWN0KDAsIDAsIDEwLCAxMCk7Ci0gICAgICAgIGNvbnN0IGNvbG9yID0gaW1hZ2UuZ2V0
QXR0cmlidXRlKCJkYXRhLWNvbG9yIik7Ci0gICAgICAgIGN0eC5maWxsU3R5bGUgPSBjb2xvcjsK
LSAgICAgICAgY3R4LmZpbGxSZWN0KDAsIDAsIDEwLCAxMCk7Ci0gICAgICAgIGltYWdlLnNyYyA9
IGNhbnZhcy50b0RhdGFVUkwoKTsKLSAgICB9KTsKLX0sIGZhbHNlKTsKLTwvc2NyaXB0PgotPGEg
aHJlZj0iLyIgcmVsPSJhciI+Ci0gICAgPGltZyBkYXRhLWNvbG9yPSJyZWQiPgotPC9hPgotPGEg
aHJlZj0iLyIgcmVsPSJhciI+Ci0gICAgPGltZyBkYXRhLWNvbG9yPSJncmVlbiI+Ci08L2E+Ci08
YSBocmVmPSIvIiByZWw9ImFyIj4KLSAgICA8aW1nIGRhdGEtY29sb3I9ImJsdWUiPgotPC9hPgot
PGEgaHJlZj0iLyIgcmVsPSJhciI+Ci0gICAgPGltZyBkYXRhLWNvbG9yPSJjeWFuIj4KLTwvYT4K
LTxhIGhyZWY9Ii8iIHJlbD0iYXIiPgotICAgIDxpbWcgZGF0YS1jb2xvcj0iIzc3Nzc3NyI+Ci08
L2E+Ci08YSBocmVmPSIvIiByZWw9ImFyIj4KLSAgICA8aW1nIGRhdGEtY29sb3I9InJnYmEoMjU1
LCAxMjgsIDAsIDAuNSkiPgotPC9hPgotPGEgaHJlZj0iLyIgcmVsPSJhciI+Ci0gICAgPGltZyBk
YXRhLWNvbG9yPSJ3aGl0ZSI+Ci08L2E+Ci08YSBocmVmPSIvIiByZWw9ImFyIj4KLSAgICA8aW1n
IGRhdGEtY29sb3I9ImJsYWNrIj4KLTwvYT4KLTxhIGhyZWY9Ii8iIHJlbD0iYXIiPgotICAgIDxp
bWcgZGF0YS1jb2xvcj0icmdiYSgwLCAwLCAwLCAwLjApIj4KLTwvYT4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3N5c3RlbS1wcmV2aWV3L2RldGVjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvc3lz
dGVtLXByZXZpZXcvZGV0ZWN0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGExYmJiOWFjMDk2ODlmNWEwMWRjZmUyYTcyYWVjZTBjZTIwYmFlNzIuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvc3lzdGVtLXByZXZp
ZXcvZGV0ZWN0aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjIgKzAsMCBAQAotPCFET0NU
WVBFIGh0bWw+Ci08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLQotZnVuY3Rpb24gZ2V0U3lzdGVtUHJldmlld0RhdGEo
aWQpCi17Ci0gICAgY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQp
OwotICAgIGNvbnN0IGxpbmsgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcigiYSIpOwotICAgIGxl
dCBjaGlsZHJlbiA9IFtdOwotICAgIGlmIChsaW5rKQotICAgICAgICBjaGlsZHJlbiA9IGxpbmsu
Y2hpbGRyZW47Ci0gICAgY29uc3QgcmVzdWx0ID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGwo
InAiKVsxXTsKLSAgICByZXR1cm4gW2xpbmssIGNoaWxkcmVuLCByZXN1bHRdOwotfQotCi1mdW5j
dGlvbiBhZGRSZXN1bHQocmVzdWx0RWxlbWVudCwgdHh0KQotewotICAgIHJlc3VsdEVsZW1lbnQu
dGV4dENvbnRlbnQgKz0gdHh0OwotfQotCi1jb25zdCBURVNUUyA9IFsidmFsaWQtMSIsICJ2YWxp
ZC0yIiwgInZhbGlkLTMiLCAiaW52YWxpZC0xIiwgImludmFsaWQtMiIsICJpbnZhbGlkLTMiLCAi
aW52YWxpZC00IiwgImludmFsaWQtNSJdOwotCi13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsICgpID0+IHsKLSAgICBpZiAoIXdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgIHJldHVybjsK
LQotICAgIFRFU1RTLmZvckVhY2goaWQgPT4gewotICAgICAgICBjb25zdCBbbGluaywgY2hpbGRy
ZW4sIHJlc3VsdF0gPSBnZXRTeXN0ZW1QcmV2aWV3RGF0YShpZCk7Ci0gICAgICAgIGlmIChsaW5r
KSB7Ci0gICAgICAgICAgICBhZGRSZXN1bHQocmVzdWx0LCAiTGluayBlbGVtZW50IHByZXNlbnQu
Iik7Ci0KLSAgICAgICAgICAgIGlmIChpbnRlcm5hbHMuaXNTeXN0ZW1QcmV2aWV3TGluayhsaW5r
KSkKLSAgICAgICAgICAgICAgICBhZGRSZXN1bHQocmVzdWx0LCAiIElkZW50aWZpZWQgYXMgc3lz
dGVtIHByZXZpZXcuIik7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgYWRkUmVz
dWx0KHJlc3VsdCwgIiBOb3QgaWRlbnRpZmllZCBhcyBzeXN0ZW0gcHJldmlldy4iKTsKLQotICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgIGFkZFJlc3VsdChyZXN1bHQsICJObyBsaW5rLiIpOwot
Ci0gICAgICAgIGlmIChjaGlsZHJlbiAmJiBjaGlsZHJlbi5sZW5ndGggPiAwKSB7Ci0gICAgICAg
ICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7Ci0gICAgICAg
ICAgICAgICAgaWYgKGludGVybmFscy5pc1N5c3RlbVByZXZpZXdJbWFnZShjaGlsZHJlbltpXSkp
Ci0gICAgICAgICAgICAgICAgICAgIGFkZFJlc3VsdChyZXN1bHQsIGAgQ2hpbGQgJHtpfSBpcyBh
biBpbWFnZSBpbnNpZGUgYSBzeXN0ZW0gcHJldmlldy5gKTsKLSAgICAgICAgICAgICAgICBlbHNl
Ci0gICAgICAgICAgICAgICAgICAgIGFkZFJlc3VsdChyZXN1bHQsIGAgQ2hpbGQgJHtpfSBpcyBu
b3QgYW4gaW1hZ2UgaW5zaWRlIGEgc3lzdGVtIHByZXZpZXcuYCk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIH0KLQotICAgICAgICAvLyBTcGVjaWZpYyB0ZXN0IGZvciB0aGUgY2FzZSB0aGF0IGlz
IGp1c3QgYW4gaW1hZ2UuCi0gICAgICAgIGlmIChpZCA9PSAiaW52YWxpZC01IikgewotICAgICAg
ICAgICAgY29uc3QgY2hpbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCkuY2hpbGRyZW5b
MF07Ci0gICAgICAgICAgICBpZiAoaW50ZXJuYWxzLmlzU3lzdGVtUHJldmlld0ltYWdlKGNoaWxk
KSkKLSAgICAgICAgICAgICAgICBhZGRSZXN1bHQocmVzdWx0LCBgIENoaWxkIGlzIGFuIGltYWdl
IGluc2lkZSBhIHN5c3RlbSBwcmV2aWV3LmApOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgICAgIGFkZFJlc3VsdChyZXN1bHQsIGAgQ2hpbGQgaXMgbm90IGFuIGltYWdlIGluc2lkZSBh
IHN5c3RlbSBwcmV2aWV3LmApOwotICAgICAgICB9Ci0gICAgfSk7Ci19LCBmYWxzZSk7Ci08L3Nj
cmlwdD4KLTxwPlRoaXMgdGVzdCBvbmx5IHdvcmtzIGluIFdLVFIgb3IgRFJULjwvcD4KLTxkaXYg
aWQ9InZhbGlkLTEiPgotPHA+VmFsaWQgc3lzdGVtIHByZXZpZXc8L3A+Ci08YSBocmVmPSIvIiBy
ZWw9ImFyIj4KLSAgICA8aW1nPgotPC9hPgotPHA+UmVzdWx0OiA8L3A+Ci08L2Rpdj4KLQotPGRp
diBpZD0idmFsaWQtMiI+Ci08cD5WYWxpZCBzeXN0ZW0gcHJldmlldyAobXVsdGlwbGUgcmVsIHZh
bHVlcyk8L3A+Ci08YSBocmVmPSIvIiByZWw9ImZvbyBhciI+Ci0gICAgPGltZz4KLTwvYT4KLTxw
PlJlc3VsdDogPC9wPgotPC9kaXY+Ci0KLTxkaXYgaWQ9InZhbGlkLTMiPgotPHA+VmFsaWQgc3lz
dGVtIHByZXZpZXcgKHBpY3R1cmUgY2hpbGQpPC9wPgotPGEgaHJlZj0iLyIgcmVsPSJhciI+Ci0g
ICAgPHBpY3R1cmU+PC9waWN0dXJlPgotPC9hPgotPHA+UmVzdWx0OiA8L3A+Ci08L2Rpdj4KLQot
PGRpdiBpZD0iaW52YWxpZC0xIj4KLTxwPkludmFsaWQgc3lzdGVtIHByZXZpZXcgKHdyb25nIHJl
bCB2YWx1ZSk8L3A+Ci08YSBocmVmPSIvIiByZWw9ImFyZm9vIj4KLSAgICA8aW1nPgotPC9hPgot
PHA+UmVzdWx0OiA8L3A+Ci08L2Rpdj4KLQotPGRpdiBpZD0iaW52YWxpZC0yIj4KLTxwPkludmFs
aWQgc3lzdGVtIHByZXZpZXcgKHdyb25nIGNoaWxkcmVuKTwvcD4KLTxhIGhyZWY9Ii8iIHJlbD0i
YXIiPgotICAgIDxzcGFuPmhlbGxvPC9zcGFuPgotPC9hPgotPHA+UmVzdWx0OiA8L3A+Ci08L2Rp
dj4KLQotPGRpdiBpZD0iaW52YWxpZC0zIj4KLTxwPkludmFsaWQgc3lzdGVtIHByZXZpZXcgKHRv
byBtYW55IGNoaWxkcmVuKTwvcD4KLTxhIGhyZWY9Ii8iIHJlbD0iYXIiPgotICAgIDxzcGFuPmhl
bGxvPC9zcGFuPgotICAgIDxpbWc+Ci08L2E+Ci08cD5SZXN1bHQ6IDwvcD4KLTwvZGl2PgotCi08
ZGl2IGlkPSJpbnZhbGlkLTQiPgotPHA+SW52YWxpZCBzeXN0ZW0gcHJldmlldyAobm8gY2hpbGRy
ZW4pPC9wPgotPGEgaHJlZj0iLyIgcmVsPSJhciI+Ci08L2E+Ci08cD5SZXN1bHQ6IDwvcD4KLTwv
ZGl2PgotCi08ZGl2IGlkPSJpbnZhbGlkLTUiPgotPHA+SW52YWxpZCBzeXN0ZW0gcHJldmlldyAo
anVzdCBhbiBpbWFnZSk8L3A+Ci08aW1nPgotPHA+UmVzdWx0OiA8L3A+Ci08L2Rpdj4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3Rlc3RzLW9wdGlvbnMuanNvbiBiL0xheW91dFRlc3RzL3Rlc3Rz
LW9wdGlvbnMuanNvbgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGJlNjFlNjcwOWMz
ZjgxMzdkMjVhNTM5MjI2Yzg4OTE0ZDM4ODlmMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy90ZXN0cy1vcHRpb25zLmpzb24KKysrIC9k
ZXYvbnVsbApAQCAtMSwzMDgwICswLDAgQEAKLXsKLSAgICAiaHR0cC90ZXN0cy9wYXltZW50cmVx
dWVzdC9wYXltZW50LXJlc3BvbnNlLXJlZmVyZW5jZS1jeWNsZS1sZWFrLmh0dHBzLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
b24tbmV0d29yay10aW1lb3V0LWVycm9yLWR1cmluZy1wcmVmbGlnaHQuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNldHRp
bmctdGltZW91dC10by16ZXJvLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
Imh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvdGltZW91dC1ncmVhdGVyLXRoYW4tZGVmYXVsdC1u
ZXR3b3JrLXRpbWVvdXQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL2Nzcy9jc3MtY29sb3IvY29sb3ItcmVzb2x2aW5nLWhzbC5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvY3NzL2Nzcy12YWx1ZXMvdmhf
bm90X3JlZnJlc2hpbmdfb25fY2hyb21lLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy9lbmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXBsYXliYWNr
LXRlbXBvcmFyeS1lbmNyeXB0ZWQtY2xlYXItc291cmNlcy5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2NsZWFy
a2V5LW1wNC1wbGF5YmFjay10ZW1wb3JhcnktbXVsdGlrZXktc2VxdWVudGlhbC1yZWFkeVN0YXRl
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy9lbmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aWtl
eS1zZXF1ZW50aWFsLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy9lbmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXBsYXliYWNrLXRlbXBv
cmFyeS10d28tdmlkZW9zLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy9lbmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXJlcXVlc3RtZWRp
YWtleXN5c3RlbWFjY2Vzcy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1ldmVudHMuaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1t
ZWRpYS9kcm0tZXhwaXJhdGlvbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1rZXlzdGF0dXNlcy1tdWx0
aXBsZS1zZXNzaW9ucy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1rZXlzdGF0dXNlcy5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVk
LW1lZGlhL2RybS1tcDQtcGxheWJhY2stZGVzdHJveS1wZXJzaXN0ZW50LWxpY2Vuc2UuaHR0cHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5
cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXBlcnNpc3RlbnQtbGljZW5zZS1ldmVudHMuaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2Vu
Y3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXBlcnNpc3RlbnQtbGljZW5zZS5odHRwcy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlw
dGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stcGVyc2lzdGVudC11c2FnZS1yZWNvcmQtZXZlbnRz
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay1wZXJzaXN0ZW50LXVzYWdlLXJlY29y
ZC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stcmV0cmlldmUtZGVzdHJveS1wZXJz
aXN0ZW50LWxpY2Vuc2UuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXJldHJpZXZl
LXBlcnNpc3RlbnQtbGljZW5zZS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stcmV0
cmlldmUtcGVyc2lzdGVudC11c2FnZS1yZWNvcmQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBs
YXliYWNrLXRlbXBvcmFyeS1jbGVhci1lbmNyeXB0ZWQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0
LXBsYXliYWNrLXRlbXBvcmFyeS1lbmNyeXB0ZWQtY2xlYXItc291cmNlcy5odHRwcy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1l
ZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LWVuY3J5cHRlZC1jbGVhci5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVk
LW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LWV2ZW50cy5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlh
L2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LWV4cGlyZWQuaHR0cHMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRpYS9kcm0t
bXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aWtleS1zZXF1ZW50aWFsLXJlYWR5U3RhdGUuaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2Vu
Y3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aWtleS1zZXF1ZW50
aWFsLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktbXVsdGlrZXku
aHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aXNlc3Npb24u
aHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1zZXRNZWRpYUtleXMt
YWZ0ZXItc3JjLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3Jhcnktc2V0
TWVkaWFLZXlzLWFmdGVyLXVwZGF0ZS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2st
dGVtcG9yYXJ5LXNldE1lZGlhS2V5cy1pbW1lZGlhdGVseS5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1t
cDQtcGxheWJhY2stdGVtcG9yYXJ5LXNldE1lZGlhS2V5cy1vbmVuY3J5cHRlZC5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVk
LW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LXR3by12aWRlb3MuaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1t
ZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS13YWl0aW5nZm9ya2V5Lmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy9lbmNyeXB0ZWQt
bWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnkuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0
LXNldG1lZGlha2V5cy1hZ2Fpbi1hZnRlci1wbGF5YmFjay5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1t
cDQtc2V0bWVkaWFrZXlzLWFnYWluLWFmdGVyLXJlc2V0dGluZy1zcmMuaHR0cHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRp
YS9kcm0tbXA0LXNldG1lZGlha2V5cy1hdC1zYW1lLXRpbWUuaHR0cHMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL2VuY3J5cHRlZC1tZWRpYS9kcm0t
bXA0LXNldG1lZGlha2V5cy1tdWx0aXBsZS10aW1lcy13aXRoLWRpZmZlcmVudC1tZWRpYWtleXMu
aHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXNldG1lZGlha2V5cy1tdWx0aXBsZS10aW1lcy13aXRo
LXRoZS1zYW1lLW1lZGlha2V5cy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtc2V0bWVkaWFrZXlz
LXRvLW11bHRpcGxlLXZpZGVvLWVsZW1lbnRzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC13YWl0
aW5nLWZvci1hLWtleS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2MvZW5jcnlwdGVkLW1lZGlhL2RybS10ZW1wb3JhcnktbGljZW5zZS10eXBl
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItYW5pbWF0aW9ucy90aW1pbmctbW9kZWwvYW5pbWF0aW9ucy91cGRhdGluZy10aGUtZmlu
aXNoZWQtc3RhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1hbmltYXRpb25zL3RpbWluZy1tb2RlbC90aW1lbGluZXMvdXBkYXRlLWFuZC1z
ZW5kLWV2ZW50cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvdXJsL3NhbmRib3hlZC1pZnJhbWUuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiLWJpbmFyeS1rZXktcm91bmR0cmlwLmh0bSI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9JbmRleGVkREIvaWRiY3Vyc29yLWNvbnRpbnVlUHJpbWFyeUtleS1leGNlcHRpb24tb3JkZXIu
aHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJkYXRhYmFzZV9jcmVhdGVPYmplY3RTdG9yZTEwLTEw
MDBlbmRzLmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiZGF0YWJhc2VfY3JlYXRlT2JqZWN0U3Rv
cmU4LXBhcmFtZXRlcnMuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJpbmRleC1tdWx0aWVudHJ5
LWJpZy5odG0iOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYmluZGV4LXJlbmFtZS5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L0luZGV4ZWREQi9pZGJvYmplY3RzdG9yZS1yZW5hbWUtc3RvcmUuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRl
eGVkREIvaWRib2JqZWN0c3RvcmVfY3JlYXRlSW5kZXgxNS1hdXRvaW5jcmVtZW50Lmh0bSI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9JbmRleGVkREIvaWRib2JqZWN0c3RvcmVfY3JlYXRlSW5kZXgzLXVzYWJsZS1yaWdodC1h
d2F5Lmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRib2JqZWN0c3RvcmVfY3JlYXRlSW5kZXg4LXZh
bGlkX2tleXMuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJvYmplY3RzdG9yZV9nZXRLZXkuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9JbmRleGVkREIvaW50ZXJsZWF2ZWQtY3Vyc29ycy1sYXJnZS5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0luZGV4ZWREQi9pbnRlcmxlYXZlZC1jdXJzb3JzLXNtYWxsLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5k
ZXhlZERCL2ludGVybGVhdmVkLWN1cnNvcnMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIva2V5LWNv
bnZlcnNpb24tZXhjZXB0aW9ucy5odG0iOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2tleV92YWxpZC5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL0luZGV4ZWREQi9rZXlwYXRoX21heHNpemUuaHRtIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWRE
Qi9sYXJnZS1uZXN0ZWQtY2xvbmluZy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9sYXJnZS1yZXF1
ZXN0cy1hYm9ydC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9uZXN0ZWQtY2xvbmluZy1sYXJnZS1t
dWx0aXBsZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9uZXN0ZWQtY2xvbmluZy1sYXJnZS5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL0luZGV4ZWREQi9uZXN0ZWQtY2xvbmluZy1zbWFsbC5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0lu
ZGV4ZWREQi9wYXJhbGxlbC1jdXJzb3JzLXVwZ3JhZGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIv
cmVxdWVzdC1hYm9ydC1vcmRlcmluZy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9yZXF1ZXN0LWV2
ZW50LW9yZGVyaW5nLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL3dhc20tbW9kdWxlLXZhbHVlLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvSW5kZXhlZERCL3dyaXRlci1zdGFydmF0aW9uLmh0bSI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJD
cnlwdG9BUEkvZGVyaXZlX2JpdHNfa2V5cy90ZXN0X2VjZGhfYml0cy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dl
YkNyeXB0b0FQSS9kZXJpdmVfYml0c19rZXlzL3Rlc3RfZWNkaF9iaXRzLmh0dHBzLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvV2ViQ3J5cHRvQVBJL2Rlcml2ZV9iaXRzX2tleXMvdGVzdF9lY2RoX2tleXMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9XZWJDcnlwdG9BUEkvZGVyaXZlX2JpdHNfa2V5cy90ZXN0X2VjZGhfa2V5cy5odHRw
cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9kZXJpdmVfYml0c19rZXlzL3Rlc3RfaGtkZi5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9kZXJpdmVfYml0c19rZXlzL3Rlc3RfaGtkZi5odHRw
cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9kZXJpdmVfYml0c19rZXlzL3Rlc3RfcGJrZGYy
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2Rlcml2ZV9iaXRzX2tleXMvdGVzdF9wYmtkZjJf
ZW1wdHlfZW1wdHkuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZGVyaXZlX2JpdHNf
a2V5cy90ZXN0X3Bia2RmMl9lbXB0eV9sb25nLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRv
QVBJL2Rlcml2ZV9iaXRzX2tleXMvdGVzdF9wYmtkZjJfZW1wdHlfc2hvcnQuaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9XZWJDcnlwdG9BUEkvZGVyaXZlX2JpdHNfa2V5cy90ZXN0X3Bia2RmMl9sb25nX2Vt
cHR5Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2Rlcml2ZV9iaXRzX2tleXMvdGVz
dF9wYmtkZjJfbG9uZ19sb25nLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2Rlcml2
ZV9iaXRzX2tleXMvdGVzdF9wYmtkZjJfbG9uZ19zaG9ydC5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dl
YkNyeXB0b0FQSS9kZXJpdmVfYml0c19rZXlzL3Rlc3RfcGJrZGYyX3Nob3J0X2VtcHR5Lmh0dHBz
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2Rlcml2ZV9iaXRzX2tleXMvdGVzdF9wYmtkZjJf
c2hvcnRfbG9uZy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9kZXJpdmVfYml0c19r
ZXlzL3Rlc3RfcGJrZGYyX3Nob3J0X3Nob3J0Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRv
QVBJL2RpZ2VzdC90ZXN0X2RpZ2VzdC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9kaWdlc3Qv
dGVzdF9kaWdlc3QuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZW5jcnlwdF9kZWNy
eXB0L3Rlc3RfYWVzX2NiYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9lbmNyeXB0X2RlY3J5
cHQvdGVzdF9hZXNfY2JjLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2VuY3J5cHRf
ZGVjcnlwdC90ZXN0X2Flc19jdHIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZW5jcnlwdF9k
ZWNyeXB0L3Rlc3RfYWVzX2N0ci5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9lbmNy
eXB0X2RlY3J5cHQvdGVzdF9hZXNfZ2NtLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2VuY3J5
cHRfZGVjcnlwdC90ZXN0X2Flc19nY20uaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkv
ZW5jcnlwdF9kZWNyeXB0L3Rlc3RfcnNhX29hZXAuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkv
ZW5jcnlwdF9kZWNyeXB0L3Rlc3RfcnNhX29hZXAuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlw
dG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9hZXMtY2JjLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJ
L2dlbmVyYXRlS2V5L3Rlc3RfYWVzLWNiYy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQ
SS9nZW5lcmF0ZUtleS90ZXN0X2Flcy1jdHIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2Vu
ZXJhdGVLZXkvdGVzdF9hZXMtY3RyLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dl
bmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJh
dGVLZXkvdGVzdF9mYWlsdXJlcy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5l
cmF0ZUtleS90ZXN0X2ZhaWx1cmVzX0FFUy1DQkMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkv
Z2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19BRVMtQ0JDLmh0dHBzLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2Vi
Q3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXNfQUVTLUNUUi5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX0FFUy1DVFIuaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19BRVMtR0NN
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXNfQUVT
LUdDTS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2Zh
aWx1cmVzX0FFUy1LVy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0
X2ZhaWx1cmVzX0FFUy1LVy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0
ZUtleS90ZXN0X2ZhaWx1cmVzX0VDREguaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJh
dGVLZXkvdGVzdF9mYWlsdXJlc19FQ0RILmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJ
L2dlbmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXNfRUNEU0EuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9B
UEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19FQ0RTQS5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dl
YkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX0hNQUMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9X
ZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19ITUFDLmh0dHBzLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXNfUlNBLU9BRVAuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19SU0EtT0FF
UC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1
cmVzX1JTQS1QU1MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9m
YWlsdXJlc19SU0EtUFNTLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRl
S2V5L3Rlc3RfZmFpbHVyZXNfUlNBU1NBLVBLQ1MxLXYxXzUuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlw
dG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19SU0FTU0EtUEtDUzEtdjFfNS5odHRwcy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X3N1Y2Nlc3Nlcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X3N1Y2Nlc3Nlc19BRVMtQ0JD
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3Rfc3VjY2Vzc2VzX0FF
Uy1DQkMuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9z
dWNjZXNzZXNfQUVTLUNUUi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90
ZXN0X3N1Y2Nlc3Nlc19BRVMtQ1RSLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dl
bmVyYXRlS2V5L3Rlc3Rfc3VjY2Vzc2VzX0FFUy1HQ00uaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9B
UEkvZ2VuZXJhdGVLZXkvdGVzdF9zdWNjZXNzZXNfQUVTLUdDTS5odHRwcy5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X3N1Y2Nlc3Nlc19BRVMtS1cuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9zdWNjZXNzZXNfQUVTLUtXLmh0dHBz
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3Rfc3VjY2Vzc2VzX0VD
REguaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9zdWNjZXNzZXNf
RUNESC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X3N1
Y2Nlc3Nlc19FQ0RTQS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0
X3N1Y2Nlc3Nlc19FQ0RTQS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0
ZUtleS90ZXN0X3N1Y2Nlc3Nlc19ITUFDLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVy
YXRlS2V5L3Rlc3Rfc3VjY2Vzc2VzX0hNQUMuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9B
UEkvZ2VuZXJhdGVLZXkvdGVzdF9zdWNjZXNzZXNfUlNBLU9BRVAuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJD
cnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9zdWNjZXNzZXNfUlNBLU9BRVAuaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9zdWNjZXNzZXNfUlNBLVBTUy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X3N1Y2Nlc3Nlc19SU0Et
UFNTLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3Rfc3Vj
Y2Vzc2VzX1JTQVNTQS1QS0NTMS12MV81Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVy
YXRlS2V5L3Rlc3Rfc3VjY2Vzc2VzX1JTQVNTQS1QS0NTMS12MV81Lmh0dHBzLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvV2ViQ3J5cHRvQVBJL3NpZ25fdmVyaWZ5L3Rlc3RfZWNkc2EuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJD
cnlwdG9BUEkvc2lnbl92ZXJpZnkvdGVzdF9lY2RzYS5odHRwcy5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNy
eXB0b0FQSS9zaWduX3ZlcmlmeS90ZXN0X2htYWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkv
c2lnbl92ZXJpZnkvdGVzdF9obWFjLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL3Np
Z25fdmVyaWZ5L3Rlc3RfcnNhX3BrY3MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvc2lnbl92
ZXJpZnkvdGVzdF9yc2FfcGtjcy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9zaWdu
X3ZlcmlmeS90ZXN0X3JzYV9wc3MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvc2lnbl92ZXJp
ZnkvdGVzdF9yc2FfcHNzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL3dyYXBLZXlf
dW53cmFwS2V5L3Rlc3Rfd3JhcEtleV91bndyYXBLZXkuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9B
UEkvd3JhcEtleV91bndyYXBLZXkvdGVzdF93cmFwS2V5X3Vud3JhcEtleS5odHRwcy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3Byb2dyZXNzLWV2ZW50cy1yZXNwb25zZS1kYXRhLWd6aXAu
aHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3NlbmQtcmVkaXJlY3QtYm9ndXMuaHRtIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL1hNTEh0dHBSZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtYWJvcnRlZC5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtYWJvcnRlZG9ubWFp
bi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtb3Zl
cnJpZGVzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvWE1MSHR0cFJlcXVlc3QveG1saHR0cHJlcXVlc3QtdGltZW91
dC1vdmVycmlkZXNleHBpcmVzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvWE1MSHR0cFJlcXVlc3QveG1saHR0cHJl
cXVlc3QtdGltZW91dC1yZXVzZWQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9YTUxIdHRwUmVxdWVzdC94bWxodHRw
cmVxdWVzdC10aW1lb3V0LXNpbXBsZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3htbGh0
dHByZXF1ZXN0LXRpbWVvdXQtc3luY29ubWFpbi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1hNTEh0dHBSZXF1ZXN0
L3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtdHdpY2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9YTUxIdHRwUmVxdWVz
dC94bWxodHRwcmVxdWVzdC10aW1lb3V0LXdvcmtlci1hYm9ydGVkLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvWE1M
SHR0cFJlcXVlc3QveG1saHR0cHJlcXVlc3QtdGltZW91dC13b3JrZXItb3ZlcnJpZGVzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvWE1MSHR0cFJlcXVlc3QveG1saHR0cHJlcXVlc3QtdGltZW91dC13b3JrZXItb3Zl
cnJpZGVzZXhwaXJlcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3htbGh0dHByZXF1ZXN0
LXRpbWVvdXQtd29ya2VyLXNpbXBsZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1hNTEh0dHBSZXF1ZXN0L3htbGh0
dHByZXF1ZXN0LXRpbWVvdXQtd29ya2VyLXN5bmNvbndvcmtlci5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1hNTEh0
dHBSZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtd29ya2VyLXR3aWNlLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvYWNpZC9hY2lkMy9udW1iZXJlZC10ZXN0cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2F1ZGlvLW91dHB1dC9z
ZXRTaW5rSWQtbWFudWFsLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvYmVhY29uL2JlYWNvbi1iYXNpYy1i
bG9iLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvYmVhY29uL2JlYWNvbi1iYXNpYy1ibG9iTWF4Lmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvYmVhY29uL2JlYWNvbi1iYXNpYy1idWZmZXJzb3VyY2UuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9iZWFjb24v
YmVhY29uLWJhc2ljLWJ1ZmZlcnNvdXJjZU1heC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2JlYWNvbi9iZWFjb24t
YmFzaWMtZm9ybWRhdGEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9iZWFjb24vYmVhY29uLWJhc2ljLWZvcm1kYXRh
TWF4Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvYmVhY29uL2JlYWNvbi1iYXNpYy1zdHJpbmcuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9iZWFjb24vYmVhY29uLWJhc2ljLXN0cmluZ01heC5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2JlYWNvbi9iZWFj
b24tbmF2aWdhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jbGlwYm9hcmQtYXBpcy9hc3luYy1pZGxoYXJuZXNz
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvZW1iZWRkZWQtZW5m
b3JjZW1lbnQvcmVxdWlyZWRfY3NwLWhlYWRlci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJp
dHktcG9saWN5L2ZyYW1lLWFuY2VzdG9ycy9yZXBvcnQtYmxvY2tlZC1mcmFtZS5zdWIuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9mcmFtZS1hbmNlc3RvcnMvcmVwb3J0LW9u
bHktZnJhbWUuc3ViLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvZ2VuZXJp
Yy9uby1kZWZhdWx0LXNyYy5zdWIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGlj
eS9uYXZpZ2F0ZS10by9jaGlsZC1uYXZpZ2F0ZXMtcGFyZW50LWFsbG93ZWQuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9uYXZpZ2F0ZS10by9saW5rLWNsaWNrLWFsbG93ZWQu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9uYXZpZ2F0ZS10by9saW5rLWNs
aWNrLWNyb3NzLW9yaWdpbi1hbGxvd2VkLnN1Yi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJp
dHktcG9saWN5L25hdmlnYXRlLXRvL2xpbmstY2xpY2stY3Jvc3Mtb3JpZ2luLWJsb2NrZWQuc3Vi
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvbmF2aWdhdGUtdG8vbGluay1j
bGljay1yZWRpcmVjdGVkLWFsbG93ZWQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBv
bGljeS9uYXZpZ2F0ZS10by9saW5rLWNsaWNrLXJlZGlyZWN0ZWQtYmxvY2tlZC5zdWIuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9vYmplY3Qtc3JjL29iamVjdC1zcmMtMl8x
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvb2JqZWN0LXNyYy9vYmplY3Qt
c3JjLTJfMi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3JlcG9ydGluZy1h
cGkvcmVwb3J0aW5nLWFwaS1yZXBvcnQtdG8tb3ZlcnJpZGVzLXJlcG9ydC11cmktMi5odHRwcy5z
dWIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9yZXBvcnRpbmcvcmVwb3J0
LWNyb3NzLW9yaWdpbi1uby1jb29raWVzLnN1Yi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJp
dHktcG9saWN5L3JlcG9ydGluZy9yZXBvcnQtb25seS1pbi1tZXRhLnN1Yi5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3N0eWxlLXNyYy9zdHlsZS1zcmMtbXVsdGlwbGUtcG9s
aWNpZXMtbXVsdGlwbGUtaGFzaGluZy1hbGdvcml0aG1zLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29ycy8zMDQu
aHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2NvcnMvb3JpZ2luLmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb3JzL3ByZWZsaWdodC1jYWNo
ZS5odG0iOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY29ycy9zdGF0dXMtYXN5bmMuaHRtIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5p
bWF0aW9ucy9DU1NBbmltYXRpb24tZWZmZWN0LnRlbnRhdGl2ZS5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtYW5pbWF0aW9ucy9hbmltYXRpb25ldmVudC10eXBlcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
YW5pbWF0aW9ucy9ldmVudC1kaXNwYXRjaC50ZW50YXRpdmUuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LWNvbG9yL2NvbG9yLXJlc29sdmluZy1oc2wuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZvbnRzL2Zv
bnQtZGlzcGxheS9mb250LWRpc3BsYXkuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZvbnRzL3Zhcmlh
dGlvbnMvYXQtZm9udC1mYWNlLWZvbnQtbWF0Y2hpbmcuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZv
bnRzL3ZhcmlhdGlvbnMvZm9udC1zdHlsZS1pbnRlcnBvbGF0aW9uLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy10cmFuc2l0aW9ucy9wcm9wZXJ0aWVzLXZhbHVlLTAwMS5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdHJhbnNpdGlvbnMvcHJvcGVydGllcy12YWx1ZS0wMDMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXRyYW5zaXRpb25zL3Byb3BlcnRpZXMtdmFsdWUtaW1wbGljaXQtMDAxLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy10cmFuc2l0aW9ucy9wcm9wZXJ0aWVzLXZhbHVlLWluaGVyaXQtMDAxLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9wcm9wZXJ0aWVzLXZhbHVlLWluaGVyaXQtMDAyLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy90cmFuc2l0aW9uY2FuY2VsLTAwMS5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS12aWV3L3Njcm9sbC1iZWhhdmlvci1kZWZhdWx0LWNzcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS12aWV3L3Njcm9sbC1iZWhhdmlvci1lbGVtZW50Lmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tLXZpZXcvc2Nyb2xsLWJlaGF2aW9yLW1haW4tZnJhbWUtcm9vdC5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS12aWV3L3Njcm9sbC1iZWhhdmlvci1tYWluLWZyYW1lLXdpbmRv
dy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS12aWV3L3Njcm9sbC1iZWhhdmlvci1zY3JvbGxpbnRv
dmlldy1uZXN0ZWQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20tdmlldy9zY3JvbGwtYmVoYXZpb3It
c21vb3RoLXBvc2l0aW9ucy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS12aWV3L3Njcm9sbC1iZWhh
dmlvci1zbW9vdGguaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20tdmlldy9zY3JvbGwtYmVoYXZpb3It
c3ViZnJhbWUtcm9vdC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS12aWV3L3Njcm9sbC1iZWhhdmlv
ci1zdWJmcmFtZS13aW5kb3cuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNo
LW9uLWRpc2FibGVkLWVsZW1lbnRzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcv
c2Nyb2xsZW5kLWV2ZW50LWZpcmVkLWZvci1wcm9ncmFtbWF0aWMtc2Nyb2xsLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvc2Nyb2xsZW5kLWV2ZW50LWZpcmVkLWZvci1zY3JvbGxJ
bnRvVmlldy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Eb2N1bWVudC1jaGFyYWN0ZXJTZXQtbm9y
bWFsaXphdGlvbi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9QYXJlbnROb2RlLXF1ZXJ5U2VsZWN0
b3ItQWxsLXhodC54aHQiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL1BhcmVudE5vZGUtcXVlcnlTZWxlY3Rv
ci1BbGwuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWF0dHJpYnV0ZXMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWNsb25lQ29udGVudHMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFu
Z2VzL1JhbmdlLWNsb25lUmFuZ2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWNvbGxh
cHNlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1jb21tb25BbmNlc3RvckNvbnRhaW5l
ci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtY29tcGFyZUJvdW5kYXJ5UG9pbnRzLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1jb21wYXJlUG9pbnQtMi5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9yYW5nZXMvUmFuZ2UtY29tcGFyZVBvaW50Lmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9S
YW5nZS1kZWxldGVDb250ZW50cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtZGV0YWNo
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1leHRyYWN0Q29udGVudHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWluc2VydE5vZGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2Vz
L1JhbmdlLWludGVyc2VjdHNOb2RlLWJpbmRpbmcuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1Jh
bmdlLWludGVyc2VjdHNOb2RlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1pc1BvaW50
SW5SYW5nZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtbXV0YXRpb25zLWFwcGVuZENo
aWxkLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1tdXRhdGlvbnMtYXBwZW5kRGF0YS5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtbXV0YXRpb25zLWRhdGFDaGFuZ2UuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLW11dGF0aW9ucy1kZWxldGVEYXRhLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL3Jhbmdlcy9SYW5nZS1tdXRhdGlvbnMtaW5zZXJ0QmVmb3JlLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL3Jhbmdlcy9SYW5nZS1tdXRhdGlvbnMtaW5zZXJ0RGF0YS5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9y
YW5nZXMvUmFuZ2UtbXV0YXRpb25zLXJlbW92ZUNoaWxkLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdl
cy9SYW5nZS1tdXRhdGlvbnMtcmVwbGFjZUNoaWxkLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9S
YW5nZS1tdXRhdGlvbnMtcmVwbGFjZURhdGEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1Jhbmdl
LW11dGF0aW9ucy1zcGxpdFRleHQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLW11dGF0
aW9ucy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2Utc2VsZWN0Tm9kZS5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS9yYW5nZXMvUmFuZ2Utc2V0Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1z
dXJyb3VuZENvbnRlbnRzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9Ob2RlSXRlcmF0b3It
cmVtb3ZhbC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvTm9kZUl0ZXJhdG9yLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvYXBp
LWludmFsaWQtbGFiZWwuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2Uv
ZXVjLWpwL2V1Y2pwLWRlY29kZS1jc2V1Y3BrZGZtdGphcGFuZXNlLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5j
b2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL2V1Yy1qcC9ldWNqcC1kZWNvZGUtZXJyb3JzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL2V1Yy1qcC9ldWNqcC1kZWNvZGUt
eC1ldWMtanAuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2UvZXVjLWpw
L2V1Y2pwLWRlY29kZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9l
dWMtanAvZXVjanAtZW5jb2RlLWZvcm0tY3NldWNwa2RmbXRqYXBhbmVzZS5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9ldWMtanAvZXVjanAtZW5jb2RlLWZvcm0tZXJy
b3JzLWhhbi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9ldWMtanAv
ZXVjanAtZW5jb2RlLWZvcm0tZXJyb3JzLWhhbmd1bC5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xl
Z2FjeS1tYi1qYXBhbmVzZS9ldWMtanAvZXVjanAtZW5jb2RlLWZvcm0tZXJyb3JzLW1pc2MuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2UvZXVjLWpwL2V1Y2pwLWVuY29k
ZS1mb3JtLXgtZXVjLWpwLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNl
L2V1Yy1qcC9ldWNqcC1lbmNvZGUtZm9ybS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1t
Yi1qYXBhbmVzZS9ldWMtanAvZXVjanAtZW5jb2RlLWhyZWYtZXJyb3JzLWhhbi5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9ldWMtanAvZXVjanAtZW5jb2RlLWhyZWYt
ZXJyb3JzLWhhbmd1bC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9l
dWMtanAvZXVjanAtZW5jb2RlLWhyZWYtZXJyb3JzLW1pc2MuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGlu
Zy9sZWdhY3ktbWItamFwYW5lc2UvZXVjLWpwL2V1Y2pwLWVuY29kZS1ocmVmLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL2lzby0yMDIyLWpwL2lzbzIwMjJqcC1kZWNv
ZGUtY3Npc28yMDIyanAuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2Uv
aXNvLTIwMjItanAvaXNvMjAyMmpwLWRlY29kZS1lcnJvcnMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGlu
Zy9sZWdhY3ktbWItamFwYW5lc2UvaXNvLTIwMjItanAvaXNvMjAyMmpwLWRlY29kZS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9pc28tMjAyMi1qcC9pc28yMDIyanAt
ZW5jb2RlLWZvcm0tY3Npc28yMDIyanAuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIt
amFwYW5lc2UvaXNvLTIwMjItanAvaXNvMjAyMmpwLWVuY29kZS1mb3JtLWVycm9ycy1oYW4uaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2UvaXNvLTIwMjItanAvaXNvMjAy
MmpwLWVuY29kZS1mb3JtLWVycm9ycy1oYW5ndWwuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdh
Y3ktbWItamFwYW5lc2UvaXNvLTIwMjItanAvaXNvMjAyMmpwLWVuY29kZS1mb3JtLWVycm9ycy1t
aXNjLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL2lzby0yMDIyLWpw
L2lzbzIwMjJqcC1lbmNvZGUtZm9ybS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1q
YXBhbmVzZS9pc28tMjAyMi1qcC9pc28yMDIyanAtZW5jb2RlLWhyZWYtZXJyb3JzLWhhbi5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9pc28tMjAyMi1qcC9pc28yMDIy
anAtZW5jb2RlLWhyZWYtZXJyb3JzLWhhbmd1bC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2Fj
eS1tYi1qYXBhbmVzZS9pc28tMjAyMi1qcC9pc28yMDIyanAtZW5jb2RlLWhyZWYtZXJyb3JzLW1p
c2MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2UvaXNvLTIwMjItanAv
aXNvMjAyMmpwLWVuY29kZS1ocmVmLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWph
cGFuZXNlL3NoaWZ0X2ppcy9zamlzLWRlY29kZS1jc3NoaWZ0amlzLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5j
b2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9zamlzLWRlY29kZS1lcnJvcnMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItamFwYW5lc2Uvc2hpZnRfamlzL3NqaXMtZGVj
b2RlLW1zOTMyLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL3NoaWZ0
X2ppcy9zamlzLWRlY29kZS1tc19rYW5qaS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1t
Yi1qYXBhbmVzZS9zaGlmdF9qaXMvc2ppcy1kZWNvZGUtc2hpZnQtamlzLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9zamlzLWRlY29kZS1zamlzLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9zamlzLWRl
Y29kZS13aW5kb3dzLTMxai5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVz
ZS9zaGlmdF9qaXMvc2ppcy1kZWNvZGUteC1zamlzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVn
YWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9zamlzLWRlY29kZS5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29k
aW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9qaXMvc2ppcy1lbmNvZGUtZm9ybS1jc3NoaWZ0
amlzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9z
amlzLWVuY29kZS1mb3JtLWVycm9ycy1oYW4uaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3kt
bWItamFwYW5lc2Uvc2hpZnRfamlzL3NqaXMtZW5jb2RlLWZvcm0tZXJyb3JzLWhhbmd1bC5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9qaXMvc2ppcy1lbmNv
ZGUtZm9ybS1lcnJvcnMtbWlzYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBh
bmVzZS9zaGlmdF9qaXMvc2ppcy1lbmNvZGUtZm9ybS1tczkzMi5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29k
aW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9qaXMvc2ppcy1lbmNvZGUtZm9ybS1tc19rYW5q
aS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9qaXMvc2pp
cy1lbmNvZGUtZm9ybS1zaGlmdC1qaXMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIt
amFwYW5lc2Uvc2hpZnRfamlzL3NqaXMtZW5jb2RlLWZvcm0tc2ppcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Vu
Y29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9qaXMvc2ppcy1lbmNvZGUtZm9ybS13aW5k
b3dzLTMxai5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9q
aXMvc2ppcy1lbmNvZGUtZm9ybS14LXNqaXMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3kt
bWItamFwYW5lc2Uvc2hpZnRfamlzL3NqaXMtZW5jb2RlLWZvcm0uaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNv
ZGluZy9sZWdhY3ktbWItamFwYW5lc2Uvc2hpZnRfamlzL3NqaXMtZW5jb2RlLWhyZWYtZXJyb3Jz
LWhhbi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1qYXBhbmVzZS9zaGlmdF9qaXMv
c2ppcy1lbmNvZGUtaHJlZi1lcnJvcnMtaGFuZ3VsLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVn
YWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9zamlzLWVuY29kZS1ocmVmLWVycm9ycy1taXNjLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWphcGFuZXNlL3NoaWZ0X2ppcy9zamlzLWVu
Y29kZS1ocmVmLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWtvcmVhbi9ldWMta3Iv
ZXVja3ItZGVjb2RlLWNzZXVja3IuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29y
ZWFuL2V1Yy1rci9ldWNrci1kZWNvZGUtY3Nrc2M1NjAxMTk4Ny5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29k
aW5nL2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWRlY29kZS1lcnJvcnMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1kZWNvZGUtaXNvLWly
LTE0OS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2ty
LWRlY29kZS1rb3JlYW4uaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1
Yy1rci9ldWNrci1kZWNvZGUta3NfY181NjAxLTE5ODcuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9s
ZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1kZWNvZGUta3NfY181NjAxLTE5ODkuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1kZWNvZGUta3Nj
NTYwMS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2ty
LWRlY29kZS1rc2NfNTYwMS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3JlYW4v
ZXVjLWtyL2V1Y2tyLWRlY29kZS13aW5kb3dzLTk0OS5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xl
Z2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWRlY29kZS5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5n
L2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWVuY29kZS1mb3JtLWNzZXVja3IuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1lbmNvZGUtZm9y
bS1jc2tzYzU2MDExOTg3Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWtvcmVhbi9l
dWMta3IvZXVja3ItZW5jb2RlLWZvcm0tZXJyb3JzLWhhbi5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5n
L2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWVuY29kZS1mb3JtLWVycm9ycy1oYW5ndWwu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1lbmNv
ZGUtZm9ybS1lcnJvcnMtbWlzYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3Jl
YW4vZXVjLWtyL2V1Y2tyLWVuY29kZS1mb3JtLWlzby1pci0xNDkuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNv
ZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1lbmNvZGUtZm9ybS1rb3JlYW4uaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1lbmNvZGUt
Zm9ybS1rc19jXzU2MDEtMTk4Ny5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3Jl
YW4vZXVjLWtyL2V1Y2tyLWVuY29kZS1mb3JtLWtzX2NfNTYwMS0xOTg5Lmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZW5jb2RpbmcvbGVnYWN5LW1iLWtvcmVhbi9ldWMta3IvZXVja3ItZW5jb2RlLWZvcm0ta3NjNTYw
MS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWVu
Y29kZS1mb3JtLWtzY181NjAxLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLWtvcmVh
bi9ldWMta3IvZXVja3ItZW5jb2RlLWZvcm0td2luZG93cy05NDkuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNv
ZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9ldWNrci1lbmNvZGUtZm9ybS5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2VuY29kaW5nL2xlZ2FjeS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWVuY29kZS1ocmVmLWVy
cm9ycy1oYW4uaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWIta29yZWFuL2V1Yy1rci9l
dWNrci1lbmNvZGUtaHJlZi1lcnJvcnMtbWlzYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2Fj
eS1tYi1rb3JlYW4vZXVjLWtyL2V1Y2tyLWVuY29kZS1ocmVmLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2Rp
bmcvbGVnYWN5LW1iLXRjaGluZXNlL2JpZzUvYmlnNS1kZWNvZGUtYmlnNS1oa3Njcy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUtZGVjb2RlLWNuLWJp
ZzUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItdGNoaW5lc2UvYmlnNS9iaWc1LWRl
Y29kZS1jc2JpZzUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItdGNoaW5lc2UvYmln
NS9iaWc1LWRlY29kZS1lcnJvcnMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItdGNo
aW5lc2UvYmlnNS9iaWc1LWRlY29kZS1leHRyYS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2Fj
eS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUtZGVjb2RlLXgteC1iaWc1Lmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5j
b2RpbmcvbGVnYWN5LW1iLXRjaGluZXNlL2JpZzUvYmlnNS1kZWNvZGUuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9l
bmNvZGluZy9sZWdhY3ktbWItdGNoaW5lc2UvYmlnNS9iaWc1LWVuYy1hc2NpaS5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUtZW5jb2RlLWZvcm0tYmln
NS1oa3Njcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2Jp
ZzUtZW5jb2RlLWZvcm0tY24tYmlnNS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10
Y2hpbmVzZS9iaWc1L2JpZzUtZW5jb2RlLWZvcm0tY3NiaWc1Lmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2Rp
bmcvbGVnYWN5LW1iLXRjaGluZXNlL2JpZzUvYmlnNS1lbmNvZGUtZm9ybS1lcnJvcnMtZXh0QmEu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItdGNoaW5lc2UvYmlnNS9iaWc1LWVuY29k
ZS1mb3JtLWVycm9ycy1leHRCYi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hp
bmVzZS9iaWc1L2JpZzUtZW5jb2RlLWZvcm0tZXJyb3JzLWhhbi5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29k
aW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUtZW5jb2RlLWZvcm0tZXJyb3JzLWhhbmd1
bC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUtZW5j
b2RlLWZvcm0tZXJyb3JzLW1pc2MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItdGNo
aW5lc2UvYmlnNS9iaWc1LWVuY29kZS1mb3JtLWVycm9ycy1wdWEuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNv
ZGluZy9sZWdhY3ktbWItdGNoaW5lc2UvYmlnNS9iaWc1LWVuY29kZS1mb3JtLXgteC1iaWc1Lmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZW5jb2RpbmcvbGVnYWN5LW1iLXRjaGluZXNlL2JpZzUvYmlnNS1lbmNvZGUt
Zm9ybS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUt
ZW5jb2RlLWhyZWYtZXJyb3JzLWhhbi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2xlZ2FjeS1tYi10
Y2hpbmVzZS9iaWc1L2JpZzUtZW5jb2RlLWhyZWYtZXJyb3JzLWhhbmd1bC5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2VuY29kaW5nL2xlZ2FjeS1tYi10Y2hpbmVzZS9iaWc1L2JpZzUtZW5jb2RlLWhyZWYtZXJyb3Jz
LW1pc2MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9sZWdhY3ktbWItdGNoaW5lc2UvYmlnNS9iaWc1
LWVuY29kZS1ocmVmLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2Rpbmcvc2luZ2xlLWJ5dGUtZGVjb2Rlci5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9jbGVhcmtleS1tcDQtcGxheWJhY2stdGVtcG9y
YXJ5LWVuY3J5cHRlZC1jbGVhci1zb3VyY2VzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlh
L2NsZWFya2V5LW1wNC1wbGF5YmFjay10ZW1wb3JhcnktZW5jcnlwdGVkLWNsZWFyLXNvdXJjZXMu
aHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXBsYXliYWNr
LXRlbXBvcmFyeS1tdWx0aWtleS1zZXF1ZW50aWFsLXJlYWR5U3RhdGUuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9l
bmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aWtleS1z
ZXF1ZW50aWFsLXJlYWR5U3RhdGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEv
Y2xlYXJrZXktbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aWtleS1zZXF1ZW50aWFsLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2NsZWFya2V5LW1wNC1wbGF5YmFjay10ZW1wb3Jhcnkt
bXVsdGlrZXktc2VxdWVudGlhbC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9j
bGVhcmtleS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LXR3by12aWRlb3MuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9l
bmNyeXB0ZWQtbWVkaWEvY2xlYXJrZXktbXA0LXBsYXliYWNrLXRlbXBvcmFyeS10d28tdmlkZW9z
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2NsZWFya2V5LW1wNC1yZXF1ZXN0
bWVkaWFrZXlzeXN0ZW1hY2Nlc3MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvY2xlYXJr
ZXktbXA0LXJlcXVlc3RtZWRpYWtleXN5c3RlbWFjY2Vzcy5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Vu
Y3J5cHRlZC1tZWRpYS9kcm0tZXZlbnRzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2Ry
bS1ldmVudHMuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLWV4cGlyYXRp
b24uaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLWV4cGlyYXRpb24uaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLWtleXN0YXR1c2VzLW11bHRpcGxlLXNlc3Np
b25zLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1rZXlzdGF0dXNlcy1tdWx0aXBs
ZS1zZXNzaW9ucy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0ta2V5c3Rh
dHVzZXMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLWtleXN0YXR1c2VzLmh0dHBz
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stZGVzdHJveS1w
ZXJzaXN0ZW50LWxpY2Vuc2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1w
bGF5YmFjay1kZXN0cm95LXBlcnNpc3RlbnQtbGljZW5zZS5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Vu
Y3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXBlcnNpc3RlbnQtbGljZW5zZS1ldmVudHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay1wZXJzaXN0ZW50
LWxpY2Vuc2UtZXZlbnRzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1t
cDQtcGxheWJhY2stcGVyc2lzdGVudC1saWNlbnNlLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1l
ZGlhL2RybS1tcDQtcGxheWJhY2stcGVyc2lzdGVudC1saWNlbnNlLmh0dHBzLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stcGVyc2lzdGVudC11c2FnZS1yZWNv
cmQtZXZlbnRzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2st
cGVyc2lzdGVudC11c2FnZS1yZWNvcmQtZXZlbnRzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlw
dGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stcGVyc2lzdGVudC11c2FnZS1yZWNvcmQuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay1wZXJzaXN0ZW50LXVzYWdl
LXJlY29yZC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXli
YWNrLXJldHJpZXZlLWRlc3Ryb3ktcGVyc2lzdGVudC1saWNlbnNlLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5j
cnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stcmV0cmlldmUtZGVzdHJveS1wZXJzaXN0ZW50
LWxpY2Vuc2UuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5
YmFjay1yZXRyaWV2ZS1wZXJzaXN0ZW50LWxpY2Vuc2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQt
bWVkaWEvZHJtLW1wNC1wbGF5YmFjay1yZXRyaWV2ZS1wZXJzaXN0ZW50LWxpY2Vuc2UuaHR0cHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay1yZXRyaWV2ZS1w
ZXJzaXN0ZW50LXVzYWdlLXJlY29yZC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0t
bXA0LXBsYXliYWNrLXJldHJpZXZlLXBlcnNpc3RlbnQtdXNhZ2UtcmVjb3JkLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LWNsZWFy
LWVuY3J5cHRlZC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNr
LXRlbXBvcmFyeS1jbGVhci1lbmNyeXB0ZWQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQt
bWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktZW5jcnlwdGVkLWNsZWFyLXNvdXJjZXMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3Jhcnkt
ZW5jcnlwdGVkLWNsZWFyLXNvdXJjZXMuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVk
aWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktZW5jcnlwdGVkLWNsZWFyLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LWVuY3J5cHRlZC1j
bGVhci5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNr
LXRlbXBvcmFyeS1ldmVudHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1w
bGF5YmFjay10ZW1wb3JhcnktZXZlbnRzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1l
ZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LWV4cGlyZWQuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNy
eXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktZXhwaXJlZC5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0
aWtleS1zZXF1ZW50aWFsLXJlYWR5U3RhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEv
ZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktbXVsdGlrZXktc2VxdWVudGlhbC1yZWFkeVN0YXRl
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVt
cG9yYXJ5LW11bHRpa2V5LXNlcXVlbnRpYWwuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEv
ZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktbXVsdGlrZXktc2VxdWVudGlhbC5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0
aWtleS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBv
cmFyeS1tdWx0aWtleS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0
LXBsYXliYWNrLXRlbXBvcmFyeS1tdWx0aXNlc3Npb24uaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQt
bWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnktbXVsdGlzZXNzaW9uLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LXNldE1l
ZGlhS2V5cy1hZnRlci1zcmMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1w
bGF5YmFjay10ZW1wb3Jhcnktc2V0TWVkaWFLZXlzLWFmdGVyLXNyYy5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1zZXRNZWRpYUtl
eXMtYWZ0ZXItdXBkYXRlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxh
eWJhY2stdGVtcG9yYXJ5LXNldE1lZGlhS2V5cy1hZnRlci11cGRhdGUuaHR0cHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3Jhcnktc2V0TWVkaWFL
ZXlzLWltbWVkaWF0ZWx5Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxh
eWJhY2stdGVtcG9yYXJ5LXNldE1lZGlhS2V5cy1pbW1lZGlhdGVseS5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBsYXliYWNrLXRlbXBvcmFyeS1zZXRNZWRpYUtl
eXMtb25lbmNyeXB0ZWQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5
YmFjay10ZW1wb3Jhcnktc2V0TWVkaWFLZXlzLW9uZW5jcnlwdGVkLmh0dHBzLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LXR3by12aWRlb3Mu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3Jhcnkt
dHdvLXZpZGVvcy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXBs
YXliYWNrLXRlbXBvcmFyeS13YWl0aW5nZm9ya2V5Lmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1l
ZGlhL2RybS1tcDQtcGxheWJhY2stdGVtcG9yYXJ5LXdhaXRpbmdmb3JrZXkuaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnkuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1wbGF5YmFjay10ZW1wb3JhcnkuaHR0cHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1yZXF1ZXN0bWVkaWFrZXlzeXN0
ZW1hY2Nlc3MuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1zZXRtZWRpYWtl
eXMtYWdhaW4tYWZ0ZXItcGxheWJhY2suaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJt
LW1wNC1zZXRtZWRpYWtleXMtYWdhaW4tYWZ0ZXItcGxheWJhY2suaHR0cHMuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1zZXRtZWRpYWtleXMtYWdhaW4tYWZ0ZXItcmVzZXR0
aW5nLXNyYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXNldG1lZGlha2V5
cy1hZ2Fpbi1hZnRlci1yZXNldHRpbmctc3JjLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVk
LW1lZGlhL2RybS1tcDQtc2V0bWVkaWFrZXlzLWF0LXNhbWUtdGltZS5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Vu
Y3J5cHRlZC1tZWRpYS9kcm0tbXA0LXNldG1lZGlha2V5cy1hdC1zYW1lLXRpbWUuaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJtLW1wNC1zZXRtZWRpYWtleXMtbXVsdGlwbGUt
dGltZXMtd2l0aC1kaWZmZXJlbnQtbWVkaWFrZXlzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1l
ZGlhL2RybS1tcDQtc2V0bWVkaWFrZXlzLW11bHRpcGxlLXRpbWVzLXdpdGgtZGlmZmVyZW50LW1l
ZGlha2V5cy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXNldG1l
ZGlha2V5cy1tdWx0aXBsZS10aW1lcy13aXRoLXRoZS1zYW1lLW1lZGlha2V5cy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXNldG1lZGlha2V5cy1tdWx0aXBsZS10aW1lcy13
aXRoLXRoZS1zYW1lLW1lZGlha2V5cy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRp
YS9kcm0tbXA0LXNldG1lZGlha2V5cy10by1tdWx0aXBsZS12aWRlby1lbGVtZW50cy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0LXNldG1lZGlha2V5cy10by1tdWx0aXBsZS12
aWRlby1lbGVtZW50cy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY3J5cHRlZC1tZWRpYS9kcm0tbXA0
LXdhaXRpbmctZm9yLWEta2V5Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jcnlwdGVkLW1lZGlhL2RybS1tcDQt
d2FpdGluZy1mb3ItYS1rZXkuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJt
LXRlbXBvcmFyeS1saWNlbnNlLXR5cGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNyeXB0ZWQtbWVkaWEvZHJt
LXRlbXBvcmFyeS1saWNlbnNlLXR5cGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9ldmVudHNvdXJjZS9k
ZWRpY2F0ZWQtd29ya2VyL2V2ZW50c291cmNlLWNvbnN0cnVjdG9yLW5vbi1zYW1lLW9yaWdpbi5o
dG0iOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZXZlbnRzb3VyY2UvZXZlbnRzb3VyY2UtY29uc3RydWN0b3Itbm9uLXNhbWUt
b3JpZ2luLmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9ldmVudHNvdXJjZS9mb3JtYXQtZmllbGQtcmV0cnktYm9ndXMu
aHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2V2ZW50c291cmNlL2Zvcm1hdC1maWVsZC1yZXRyeS5odG0iOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZXZlbnRzb3VyY2Uvc2hhcmVkLXdvcmtlci9ldmVudHNvdXJjZS1jb25zdHJ1Y3Rvci1ub24tc2Ft
ZS1vcmlnaW4uaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9iYXNpYy9lcnJvci1hZnRlci1yZXNwb25z
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9oZWFkZXJzL2hlYWRlci12YWx1ZXMtbm9ybWFsaXpl
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2hlYWRlcnMvaGVhZGVyLXZhbHVlcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZldGNoL2FwaS9yZWRpcmVjdC9yZWRpcmVjdC1jb3VudC13b3JrZXIuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9mZXRjaC9hcGkvcmVkaXJlY3QvcmVkaXJlY3QtY291bnQuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9h
cGkvcmVxdWVzdC9yZXF1ZXN0LWNhY2hlLWRlZmF1bHQtY29uZGl0aW9uYWwuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9mZXRjaC9hcGkvcmVxdWVzdC9yZXF1ZXN0LWNhY2hlLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBp
L3JlcXVlc3QvcmVxdWVzdC1rZWVwYWxpdmUtcXVvdGEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkv
cmVzcG9uc2UvcmVzcG9uc2UtY2xvbmUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9odHRwLWNhY2hlLzMw
NC11cGRhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9odHRwLWNhY2hlL2NjLXJlcXVlc3QuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9mZXRjaC9odHRwLWNhY2hlL2ZyZXNobmVzcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2h0
dHAtY2FjaGUvaGV1cmlzdGljLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvaHR0cC1jYWNoZS9pbnZhbGlk
YXRlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvaHR0cC1jYWNoZS9wYXJ0aWFsLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmV0Y2gvaHR0cC1jYWNoZS9wb3N0LXBhdGNoLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvaHR0cC1jYWNo
ZS9zdGF0dXMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9tZXRhZGF0YS9wcmVsb2FkLmh0dHBzLnN1Yi5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZldGNoL3JlZGlyZWN0LW5hdmlnYXRlL3ByZXNlcnZlLWZyYWdtZW50Lmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9icm93c2luZy10aGUtd2ViL2hpc3RvcnktdHJhdmVy
c2FsL3BlcnNpc3RlZC11c2VyLXN0YXRlLXJlc3RvcmF0aW9uL3Jlc3VtZS10aW1lci1vbi1oaXN0
b3J5LWJhY2suaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL2Jyb3dzaW5nLXRoZS13ZWIvaGlz
dG9yeS10cmF2ZXJzYWwvcGVyc2lzdGVkLXVzZXItc3RhdGUtcmVzdG9yYXRpb24vc2Nyb2xsLXJl
c3RvcmF0aW9uLWZyYWdtZW50LXNjcm9sbGluZy1jcm9zcy1vcmlnaW4uaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2Jyb3dzZXJzL2Jyb3dzaW5nLXRoZS13ZWIvaGlzdG9yeS10cmF2ZXJzYWwvcGVyc2lzdGVk
LXVzZXItc3RhdGUtcmVzdG9yYXRpb24vc2Nyb2xsLXJlc3RvcmF0aW9uLW5hdmlnYXRpb24tY3Jv
c3Mtb3JpZ2luLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9icm93c2luZy10aGUtd2ViL3Nj
cm9sbC10by1mcmFnaWQvMDA3Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9icm93c2luZy10
aGUtd2ViL3Njcm9sbC10by1mcmFnaWQvc2Nyb2xsLWZyYWctbm9uLXV0ZjgtZW5jb2RlZC1kb2N1
bWVudC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvYnJvd3NpbmctdGhlLXdlYi9zY3JvbGwt
dG8tZnJhZ2lkL3Njcm9sbC1mcmFnLXBlcmNlbnQtZW5jb2RlZC5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
YnJvd3NlcnMvYnJvd3NpbmctdGhlLXdlYi9zY3JvbGwtdG8tZnJhZ2lkL3Njcm9sbC10by1hbmNo
b3ItbmFtZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvYnJvd3NpbmctdGhlLXdlYi9zY3Jv
bGwtdG8tZnJhZ2lkL3Njcm9sbC10by1pZC10b3AuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJz
L2Jyb3dzaW5nLXRoZS13ZWIvc2Nyb2xsLXRvLWZyYWdpZC9zY3JvbGwtdG8tdG9wLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9icm93c2Vycy9icm93c2luZy10aGUtd2ViL3VubG9hZGluZy1kb2N1bWVudHMv
cHJvbXB0LWFuZC11bmxvYWQtc2NyaXB0LWNsb3NlYWJsZS5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJv
d3NlcnMvaGlzdG9yeS9qb2ludC1zZXNzaW9uLWhpc3Rvcnkvam9pbnQtc2Vzc2lvbi1oaXN0b3J5
LWlmcmFtZS1zdGF0ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlzdG9yeS9qb2ludC1z
ZXNzaW9uLWhpc3Rvcnkvam9pbnQtc2Vzc2lvbi1oaXN0b3J5LXJlbW92ZS1pZnJhbWUuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2Jyb3dzZXJzL2hpc3RvcnkvdGhlLWhpc3RvcnktaW50ZXJmYWNlLzAwNy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvb2ZmbGluZS9hcHBsaWNhdGlvbi1jYWNoZS1hcGkv
YXBpX3N0YXR1c19pZGxlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9vcmlnaW4v
Y3Jvc3Mtb3JpZ2luLW9iamVjdHMvY3Jvc3Mtb3JpZ2luLW9iamVjdHMtZXhjZXB0aW9ucy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvb3JpZ2luL2Nyb3NzLW9yaWdpbi1vYmplY3RzL2Nyb3Nz
LW9yaWdpbi1vYmplY3RzLW9uLW5ldy13aW5kb3cuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJz
L29yaWdpbi9jcm9zcy1vcmlnaW4tb2JqZWN0cy9jcm9zcy1vcmlnaW4tb2JqZWN0cy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvYnJvd3NlcnMvdGhlLXdpbmRvdy1vYmplY3QvYXBpcy1mb3ItY3JlYXRpbmct
YW5kLW5hdmlnYXRpbmctYnJvd3NpbmctY29udGV4dHMtYnktbmFtZS9jcmVhdGluZ19icm93c2lu
Z19jb250ZXh0X3Rlc3RfMDEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL3RoZS13aW5kb3ct
b2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5nLWFuZC1uYXZpZ2F0aW5nLWJyb3dzaW5nLWNvbnRleHRz
LWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy1uZWdhdGl2ZS1pbm5lcndpZHRoLWlubmVyaGVpZ2h0Lmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy90aGUtd2luZG93LW9iamVjdC9hcGlzLWZvci1jcmVh
dGluZy1hbmQtbmF2aWdhdGluZy1icm93c2luZy1jb250ZXh0cy1ieS1uYW1lL29wZW4tZmVhdHVy
ZXMtbmVnYXRpdmUtc2NyZWVueC1zY3JlZW55Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy90
aGUtd2luZG93LW9iamVjdC9hcGlzLWZvci1jcmVhdGluZy1hbmQtbmF2aWdhdGluZy1icm93c2lu
Zy1jb250ZXh0cy1ieS1uYW1lL29wZW4tZmVhdHVyZXMtbmVnYXRpdmUtdG9wLWxlZnQuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2Jyb3dzZXJzL3RoZS13aW5kb3ctb2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5n
LWFuZC1uYXZpZ2F0aW5nLWJyb3dzaW5nLWNvbnRleHRzLWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy1u
ZWdhdGl2ZS13aWR0aC1oZWlnaHQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL3RoZS13aW5k
b3ctb2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5nLWFuZC1uYXZpZ2F0aW5nLWJyb3dzaW5nLWNvbnRl
eHRzLWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy1ub24taW50ZWdlci1oZWlnaHQuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2Jyb3dzZXJzL3RoZS13aW5kb3ctb2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5nLWFuZC1u
YXZpZ2F0aW5nLWJyb3dzaW5nLWNvbnRleHRzLWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy1ub24taW50
ZWdlci1pbm5lcmhlaWdodC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvdGhlLXdpbmRvdy1v
YmplY3QvYXBpcy1mb3ItY3JlYXRpbmctYW5kLW5hdmlnYXRpbmctYnJvd3NpbmctY29udGV4dHMt
YnktbmFtZS9vcGVuLWZlYXR1cmVzLW5vbi1pbnRlZ2VyLWlubmVyd2lkdGguaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2Jyb3dzZXJzL3RoZS13aW5kb3ctb2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5nLWFuZC1u
YXZpZ2F0aW5nLWJyb3dzaW5nLWNvbnRleHRzLWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy1ub24taW50
ZWdlci1sZWZ0Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy90aGUtd2luZG93LW9iamVjdC9h
cGlzLWZvci1jcmVhdGluZy1hbmQtbmF2aWdhdGluZy1icm93c2luZy1jb250ZXh0cy1ieS1uYW1l
L29wZW4tZmVhdHVyZXMtbm9uLWludGVnZXItc2NyZWVueC5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJv
d3NlcnMvdGhlLXdpbmRvdy1vYmplY3QvYXBpcy1mb3ItY3JlYXRpbmctYW5kLW5hdmlnYXRpbmct
YnJvd3NpbmctY29udGV4dHMtYnktbmFtZS9vcGVuLWZlYXR1cmVzLW5vbi1pbnRlZ2VyLXNjcmVl
bnkuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL3RoZS13aW5kb3ctb2JqZWN0L2FwaXMtZm9y
LWNyZWF0aW5nLWFuZC1uYXZpZ2F0aW5nLWJyb3dzaW5nLWNvbnRleHRzLWJ5LW5hbWUvb3Blbi1m
ZWF0dXJlcy1ub24taW50ZWdlci10b3AuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL3RoZS13
aW5kb3ctb2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5nLWFuZC1uYXZpZ2F0aW5nLWJyb3dzaW5nLWNv
bnRleHRzLWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy1ub24taW50ZWdlci13aWR0aC5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvYnJvd3NlcnMvdGhlLXdpbmRvdy1vYmplY3QvYXBpcy1mb3ItY3JlYXRpbmctYW5k
LW5hdmlnYXRpbmctYnJvd3NpbmctY29udGV4dHMtYnktbmFtZS9vcGVuLWZlYXR1cmVzLXRva2Vu
aXphdGlvbi1pbm5lcmhlaWdodC1pbm5lcndpZHRoLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vy
cy90aGUtd2luZG93LW9iamVjdC9hcGlzLWZvci1jcmVhdGluZy1hbmQtbmF2aWdhdGluZy1icm93
c2luZy1jb250ZXh0cy1ieS1uYW1lL29wZW4tZmVhdHVyZXMtdG9rZW5pemF0aW9uLW5vb3BlbmVy
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy90aGUtd2luZG93LW9iamVjdC9hcGlzLWZvci1j
cmVhdGluZy1hbmQtbmF2aWdhdGluZy1icm93c2luZy1jb250ZXh0cy1ieS1uYW1lL29wZW4tZmVh
dHVyZXMtdG9rZW5pemF0aW9uLW5vcmVmZXJyZXIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJz
L3RoZS13aW5kb3ctb2JqZWN0L2FwaXMtZm9yLWNyZWF0aW5nLWFuZC1uYXZpZ2F0aW5nLWJyb3dz
aW5nLWNvbnRleHRzLWJ5LW5hbWUvb3Blbi1mZWF0dXJlcy10b2tlbml6YXRpb24tc2NyZWVueC1z
Y3JlZW55Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy90aGUtd2luZG93LW9iamVjdC9hcGlz
LWZvci1jcmVhdGluZy1hbmQtbmF2aWdhdGluZy1icm93c2luZy1jb250ZXh0cy1ieS1uYW1lL29w
ZW4tZmVhdHVyZXMtdG9rZW5pemF0aW9uLXRvcC1sZWZ0Lmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93
c2Vycy90aGUtd2luZG93LW9iamVjdC9hcGlzLWZvci1jcmVhdGluZy1hbmQtbmF2aWdhdGluZy1i
cm93c2luZy1jb250ZXh0cy1ieS1uYW1lL29wZW4tZmVhdHVyZXMtdG9rZW5pemF0aW9uLXdpZHRo
LWhlaWdodC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvdGhlLXdpbmRvdy1vYmplY3Qvd2lu
ZG93LW9wZW4tbm9vcGVuZXIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL3dpbmRvd3MvYXV4
aWxpYXJ5LWJyb3dzaW5nLWNvbnRleHRzL29wZW5lci1zZXR0ZXIuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2Jyb3dzZXJzL3dpbmRvd3Mvbm9yZWZlcnJlci13aW5kb3ctbmFtZS5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi9jb21wb3NpdGluZy8yZC5jb21wb3NpdGUudW5jb3ZlcmVkLmZp
bGwuZGVzdGluYXRpb24taW4uaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJh
d2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5kcmF3SW1hZ2UuM2FyZy5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi9kcmF3aW5nLWltYWdlcy10by10aGUtY2FudmFzLzJkLmRy
YXdJbWFnZS41YXJnLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdpbmct
aW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0ltYWdlLjlhcmcuYmFzaWMuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5k
cmF3SW1hZ2UuOWFyZy5kZXN0cG9zLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0ltYWdlLjlhcmcuZGVzdHNpemUu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhl
LWNhbnZhcy8yZC5kcmF3SW1hZ2UuOWFyZy5zb3VyY2Vwb3MuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5kcmF3SW1hZ2Uu
OWFyZy5zb3VyY2VzaXplLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdp
bmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0ltYWdlLmFscGhhLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJh
d0ltYWdlLmFuaW1hdGVkLnBvc3Rlci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi9kcmF3aW5nLWltYWdlcy10by10aGUtY2FudmFzLzJkLmRyYXdJbWFnZS5icm9rZW4uaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhlLWNhbnZh
cy8yZC5kcmF3SW1hZ2UuY2FudmFzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0ltYWdlLmNsaXAuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8y
ZC5kcmF3SW1hZ2UuY29tcG9zaXRlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0ltYWdlLmZsb2F0c291cmNlLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1j
YW52YXMvMmQuZHJhd0ltYWdlLm5lZ2F0aXZlZGVzdC5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi9kcmF3aW5nLWltYWdlcy10by10aGUtY2FudmFzLzJkLmRyYXdJbWFnZS5uZWdh
dGl2ZWRpci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi9kcmF3aW5nLWltYWdl
cy10by10aGUtY2FudmFzLzJkLmRyYXdJbWFnZS5uZWdhdGl2ZXNvdXJjZS5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi9kcmF3aW5nLWltYWdlcy10by10aGUtY2FudmFzLzJkLmRy
YXdJbWFnZS5ub25maW5pdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJh
d2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5kcmF3SW1hZ2Uubm93cmFwLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQu
ZHJhd0ltYWdlLm51bGwuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2lu
Zy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5kcmF3SW1hZ2UucGF0aC5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi9kcmF3aW5nLWltYWdlcy10by10aGUtY2FudmFzLzJkLmRyYXdJ
bWFnZS5zZWxmLjEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1p
bWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5kcmF3SW1hZ2Uuc2VsZi4yLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdpbmctaW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0lt
YWdlLnN2Zy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi9kcmF3aW5nLWltYWdl
cy10by10aGUtY2FudmFzLzJkLmRyYXdJbWFnZS50cmFuc2Zvcm0uaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5kcmF3SW1h
Z2Uud3Jvbmd0eXBlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL2RyYXdpbmct
aW1hZ2VzLXRvLXRoZS1jYW52YXMvMmQuZHJhd0ltYWdlLnplcm9jYW52YXMuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vZHJhd2luZy1pbWFnZXMtdG8tdGhlLWNhbnZhcy8yZC5k
cmF3SW1hZ2UuemVyb3NvdXJjZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi9k
cmF3aW5nLWltYWdlcy10by10aGUtY2FudmFzLzJkLmRyYXdJbWFnZS56ZXJvc291cmNlLmltYWdl
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tZW1iZWRkZXItcG9saWN5L2NhY2hlLXN0
b3JhZ2UtcmVwb3J0aW5nLWRlZGljYXRlZC13b3JrZXIuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2Nyb3NzLW9yaWdpbi1lbWJlZGRlci1wb2xpY3kvY2FjaGUtc3RvcmFnZS1yZXBvcnRpbmctZG9j
dW1lbnQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1lbWJlZGRlci1wb2xp
Y3kvY2FjaGUtc3RvcmFnZS1yZXBvcnRpbmctc2hhcmVkLXdvcmtlci5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLWVtYmVkZGVyLXBvbGljeS9ub25lLmh0dHBzLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tZW1iZWRkZXItcG9saWN5L3JlcG9ydC1vbmx5LXJlcXVp
cmUtY29ycC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLWVtYmVkZGVyLXBv
bGljeS9yZXBvcnRpbmctbmF2aWdhdGlvbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mt
b3JpZ2luLWVtYmVkZGVyLXBvbGljeS9yZXBvcnRpbmctc3VicmVzb3VyY2UtY29ycC5odHRwcy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLWVtYmVkZGVyLXBvbGljeS9yZXBvcnRpbmct
dG8tZW5kcG9pbnQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1lbWJlZGRl
ci1wb2xpY3kvcmVxdWlyZS1jb3JwLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmln
aW4tb3BlbmVyLXBvbGljeS9jb2VwLW5hdmlnYXRlLXBvcHVwLmh0dHBzLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9jb2VwLXJlZGlyZWN0Lmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9jb2VwLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9jb29wLW5hdmlnYXRlZC1o
aXN0b3J5LXBvcHVwLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVy
LXBvbGljeS9oaXN0b3JpY2FsL2NvZXAtbmF2aWdhdGUtcG9wdXAtdW5zYWZlLWluaGVyaXQuaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L2hpc3Rvcmlj
YWwvcG9wdXAtc2FtZS1vcmlnaW4tdW5zYWZlLWFsbG93LW91dGdvaW5nLXdpdGgtY3Jvc3Mtb3Jp
Z2luLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9o
aXN0b3JpY2FsL3BvcHVwLXNhbWUtb3JpZ2luLXVuc2FmZS1hbGxvdy1vdXRnb2luZy13aXRoLXNh
bWUtb3JpZ2luLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBv
bGljeS9oaXN0b3JpY2FsL3BvcHVwLXNhbWUtb3JpZ2luLXVuc2FmZS1hbGxvdy1vdXRnb2luZy13
aXRoLXNhbWUtc2l0ZS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5l
ci1wb2xpY3kvaGlzdG9yaWNhbC9wb3B1cC1zYW1lLXNpdGUtdW5zYWZlLWFsbG93LW91dGdvaW5n
LXdpdGgtY3Jvc3Mtb3JpZ2luLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4t
b3BlbmVyLXBvbGljeS9oaXN0b3JpY2FsL3BvcHVwLXNhbWUtc2l0ZS11bnNhZmUtYWxsb3ctb3V0
Z29pbmctd2l0aC1zYW1lLW9yaWdpbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3Jp
Z2luLW9wZW5lci1wb2xpY3kvaGlzdG9yaWNhbC9wb3B1cC1zYW1lLXNpdGUtdW5zYWZlLWFsbG93
LW91dGdvaW5nLXdpdGgtc2FtZS1zaXRlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1v
cmlnaW4tb3BlbmVyLXBvbGljeS9oaXN0b3JpY2FsL3BvcHVwLXNhbWUtc2l0ZS13aXRoLWNyb3Nz
LW9yaWdpbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xp
Y3kvaGlzdG9yaWNhbC9wb3B1cC1zYW1lLXNpdGUtd2l0aC1zYW1lLW9yaWdpbi5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvaGlzdG9yaWNhbC9wb3B1
cC1zYW1lLXNpdGUtd2l0aC1zYW1lLXNpdGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3Nz
LW9yaWdpbi1vcGVuZXItcG9saWN5L2lmcmFtZS1wb3B1cC1zYW1lLW9yaWdpbi1hbGxvdy1wb3B1
cHMtdG8tc2FtZS1vcmlnaW4tYWxsb3ctcG9wdXBzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
cm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9pZnJhbWUtcG9wdXAtc2FtZS1vcmlnaW4tYWxsb3ct
cG9wdXBzLXRvLXNhbWUtb3JpZ2luLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmln
aW4tb3BlbmVyLXBvbGljeS9pZnJhbWUtcG9wdXAtc2FtZS1vcmlnaW4tYWxsb3ctcG9wdXBzLXRv
LXVuc2FmZS1ub25lLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVy
LXBvbGljeS9pZnJhbWUtcG9wdXAtc2FtZS1vcmlnaW4tdG8tc2FtZS1vcmlnaW4uaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L2lmcmFtZS1wb3B1cC1z
YW1lLW9yaWdpbi10by11bnNhZmUtbm9uZS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mt
b3JpZ2luLW9wZW5lci1wb2xpY3kvaWZyYW1lLXBvcHVwLXVuc2FmZS1ub25lLXRvLXNhbWUtb3Jp
Z2luLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9p
ZnJhbWUtcG9wdXAtdW5zYWZlLW5vbmUtdG8tdW5zYWZlLW5vbmUuaHR0cHMuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L25vLWh0dHBzLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1yZWRpcmVjdC1jYWNoZS5odHRw
cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvcG9wdXAtc2Ft
ZS1vcmlnaW4tYWxsb3ctcG9wdXBzLXdpdGgtY3Jvc3Mtb3JpZ2luLmh0dHBzLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1zYW1lLW9yaWdpbi1hbGxv
dy1wb3B1cHMtd2l0aC1zYW1lLW9yaWdpbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mt
b3JpZ2luLW9wZW5lci1wb2xpY3kvcG9wdXAtc2FtZS1vcmlnaW4tYWxsb3ctcG9wdXBzLXdpdGgt
c2FtZS1zaXRlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBv
bGljeS9wb3B1cC1zYW1lLW9yaWdpbi13aXRoLWNyb3NzLW9yaWdpbi5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvcG9wdXAtc2FtZS1vcmlnaW4td2l0
aC1zYW1lLW9yaWdpbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5l
ci1wb2xpY3kvcG9wdXAtc2FtZS1vcmlnaW4td2l0aC1zYW1lLXNpdGUuaHR0cHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLXVuc2FmZS1ub25lLXdp
dGgtY3Jvc3Mtb3JpZ2luLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3Bl
bmVyLXBvbGljeS9wb3B1cC11bnNhZmUtbm9uZS13aXRoLXNhbWUtb3JpZ2luLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC11bnNhZmUtbm9u
ZS13aXRoLXNhbWUtc2l0ZS5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9w
ZW5lci1wb2xpY3kvcG9wdXAtdW5zcGVjaWZpZWQtd2l0aC1jcm9zcy1vcmlnaW4uaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLXVuc3BlY2lm
aWVkLXdpdGgtc2FtZS1vcmlnaW4uaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdp
bi1vcGVuZXItcG9saWN5L3BvcHVwLXVuc3BlY2lmaWVkLXdpdGgtc2FtZS1zaXRlLmh0dHBzLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC13aXRoLXN0
cnVjdHVyZWQtaGVhZGVyLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3Bl
bmVyLXBvbGljeS9yZXBvcnRpbmcvYWNjZXNzLXJlcG9ydGluZy9vcGVuZWUtYWNjZXNzZWRfb3Bl
bmVlLWNvb3Atcm8uaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXIt
cG9saWN5L3JlcG9ydGluZy9hY2Nlc3MtcmVwb3J0aW5nL29wZW5lZS1hY2Nlc3NlZF9vcGVuZWUt
Y29vcC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kv
cmVwb3J0aW5nL2FjY2Vzcy1yZXBvcnRpbmcvb3BlbmVlLWFjY2Vzc2VkX29wZW5lci1jb29wLXJv
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9yZXBv
cnRpbmcvYWNjZXNzLXJlcG9ydGluZy9vcGVuZWUtYWNjZXNzZWRfb3BlbmVyLWNvb3AuaHR0cHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3JlcG9ydGluZy9h
Y2Nlc3MtcmVwb3J0aW5nL29wZW5lci1hY2Nlc3NlZF9vcGVuZWUtY29vcC1yby5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvcmVwb3J0aW5nL2FjY2Vz
cy1yZXBvcnRpbmcvb3BlbmVyLWFjY2Vzc2VkX29wZW5lZS1jb29wLmh0dHBzLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9yZXBvcnRpbmcvYWNjZXNzLXJlcG9y
dGluZy9vcGVuZXItYWNjZXNzZWRfb3BlbmVyLWNvb3Atcm8uaHR0cHMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3JlcG9ydGluZy9hY2Nlc3MtcmVwb3J0aW5n
L29wZW5lci1hY2Nlc3NlZF9vcGVuZXItY29vcC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jv
c3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvcmVwb3J0aW5nL2FjY2Vzcy1yZXBvcnRpbmcvcHJvcGVy
dHkuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3Jl
cG9ydGluZy9uYXZpZ2F0aW9uLXJlcG9ydGluZy9yZXBvcnQtb25seS1mb3VyLXJlcG9ydHMuaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3JlcG9ydGlu
Zy9uYXZpZ2F0aW9uLXJlcG9ydGluZy9yZXBvcnQtb25seS1mcm9tLXVuc2FmZS1ub25lLmh0dHBz
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9yZXBvcnRpbmcv
bmF2aWdhdGlvbi1yZXBvcnRpbmcvcmVwb3J0LW9ubHktc2FtZS1vcmlnaW4tcmVwb3J0LXRvLmh0
dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9yZXBvcnRp
bmcvbmF2aWdhdGlvbi1yZXBvcnRpbmcvcmVwb3J0LW9ubHktc2FtZS1vcmlnaW4td2l0aC1jb2Vw
LXJlcG9ydC1vbmx5Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVy
LXBvbGljeS9yZXBvcnRpbmcvbmF2aWdhdGlvbi1yZXBvcnRpbmcvcmVwb3J0LW9ubHktc2FtZS1v
cmlnaW4td2l0aC1jb2VwLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3Bl
bmVyLXBvbGljeS9yZXBvcnRpbmcvbmF2aWdhdGlvbi1yZXBvcnRpbmcvcmVwb3J0LW9ubHktc2Ft
ZS1vcmlnaW4uaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9s
aWN5L3JlcG9ydGluZy9uYXZpZ2F0aW9uLXJlcG9ydGluZy9yZXBvcnRpbmctcG9wdXAtc2FtZS1v
cmlnaW4tYWxsb3ctcG9wdXBzLXJlcG9ydC10by5odHRwcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jv
c3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvcmVwb3J0aW5nL25hdmlnYXRpb24tcmVwb3J0aW5nL3Jl
cG9ydGluZy1wb3B1cC1zYW1lLW9yaWdpbi1jb2VwLXJlcG9ydC10by5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvcmVwb3J0aW5nL25hdmlnYXRpb24t
cmVwb3J0aW5nL3JlcG9ydGluZy1wb3B1cC1zYW1lLW9yaWdpbi1yZXBvcnQtdG8uaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3JlcG9ydGluZy9uYXZp
Z2F0aW9uLXJlcG9ydGluZy9yZXBvcnRpbmctcG9wdXAtc2FtZS1vcmlnaW4uaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3JlcG9ydGluZy9uYXZpZ2F0
aW9uLXJlcG9ydGluZy9yZXBvcnRpbmctcG9wdXAtdW5hZmUtbm9uZS1yZXBvcnQtdG8uaHR0cHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2RvbS9kb2N1bWVudHMvcmVzb3VyY2UtbWV0YWRhdGEtbWFuYWdl
bWVudC9kb2N1bWVudC1sYXN0TW9kaWZpZWQtMDEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2RvbS9pZGxo
YXJuZXNzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9kb20vcmVmbGVjdGlvbi1lbWJlZGRlZC5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvZG9tL3JlZmxlY3Rpb24tZm9ybXMuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2RvbS9yZWZsZWN0aW9uLWdyb3VwaW5nLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9kb20vcmVmbGVjdGlv
bi1tZXRhZGF0YS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvZG9tL3JlZmxlY3Rpb24tbWlzYy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvZG9tL3JlZmxlY3Rpb24tb2Jzb2xldGUuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Rv
bS9yZWZsZWN0aW9uLXNlY3Rpb25zLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9kb20vcmVmbGVjdGlvbi10
YWJ1bGFyLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9kb20vcmVmbGVjdGlvbi10ZXh0Lmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9pbmZyYXN0cnVjdHVyZS91cmxzL3Jlc29sdmluZy11cmxzL3F1ZXJ5LWVuY29kaW5n
L3V0Zi0xNmxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbmZyYXN0cnVjdHVyZS91cmxzL3Jlc29sdmlu
Zy11cmxzL3F1ZXJ5LWVuY29kaW5nL3V0Zi04Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbmZyYXN0cnVj
dHVyZS91cmxzL3Jlc29sdmluZy11cmxzL3F1ZXJ5LWVuY29kaW5nL3dpbmRvd3MtMTI1MS5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvaW5mcmFzdHJ1Y3R1cmUvdXJscy9yZXNvbHZpbmctdXJscy9xdWVyeS1l
bmNvZGluZy93aW5kb3dzLTEyNTIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3Vz
L2ZvY3VzLTAxLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9mb2N1cy0wMi5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvc2VxdWVudGlhbC1mb2N1cy1uYXZp
Z2F0aW9uLWFuZC10aGUtdGFiaW5kZXgtYXR0cmlidXRlL2ZvY3VzLXRhYmluZGV4LW5lZ2F0aXZl
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9zZXF1ZW50aWFsLWZvY3VzLW5h
dmlnYXRpb24tYW5kLXRoZS10YWJpbmRleC1hdHRyaWJ1dGUvZm9jdXMtdGFiaW5kZXgtb3JkZXIu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3NlcXVlbnRpYWwtZm9jdXMtbmF2
aWdhdGlvbi1hbmQtdGhlLXRhYmluZGV4LWF0dHJpYnV0ZS9mb2N1cy10YWJpbmRleC1wb3NpdGl2
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvc2VxdWVudGlhbC1mb2N1cy1u
YXZpZ2F0aW9uLWFuZC10aGUtdGFiaW5kZXgtYXR0cmlidXRlL2ZvY3VzLXRhYmluZGV4LXplcm8u
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3JlbmRlcmluZy9waXhlbC1sZW5ndGgtYXR0cmlidXRlcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvcmVuZGVyaW5nL3JlcGxhY2VkLWVsZW1lbnRzL3N2Zy1lbWJlZGRlZC1z
aXppbmcvc3ZnLWluLWlmcmFtZS1hdXRvLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9yZW5kZXJpbmcvcmVw
bGFjZWQtZWxlbWVudHMvc3ZnLWVtYmVkZGVkLXNpemluZy9zdmctaW4taWZyYW1lLWZpeGVkLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9yZW5kZXJpbmcvcmVwbGFjZWQtZWxlbWVudHMvc3ZnLWVtYmVkZGVk
LXNpemluZy9zdmctaW4taWZyYW1lLXBlcmNlbnRhZ2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3JlbmRl
cmluZy9yZXBsYWNlZC1lbGVtZW50cy9zdmctZW1iZWRkZWQtc2l6aW5nL3N2Zy1pbi1pbWctYXV0
by5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvcmVuZGVyaW5nL3JlcGxhY2VkLWVsZW1lbnRzL3N2Zy1lbWJl
ZGRlZC1zaXppbmcvc3ZnLWluLWltZy1maXhlZC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvcmVuZGVyaW5n
L3JlcGxhY2VkLWVsZW1lbnRzL3N2Zy1lbWJlZGRlZC1zaXppbmcvc3ZnLWluLWltZy1wZXJjZW50
YWdlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9yZW5kZXJpbmcvcmVwbGFjZWQtZWxlbWVudHMvc3ZnLWVt
YmVkZGVkLXNpemluZy9zdmctaW4tb2JqZWN0LWF1dG8uaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3JlbmRl
cmluZy9yZXBsYWNlZC1lbGVtZW50cy9zdmctZW1iZWRkZWQtc2l6aW5nL3N2Zy1pbi1vYmplY3Qt
Zml4ZWQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3JlbmRlcmluZy9yZXBsYWNlZC1lbGVtZW50cy9zdmct
ZW1iZWRkZWQtc2l6aW5nL3N2Zy1pbi1vYmplY3QtcGVyY2VudGFnZS5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvc2VtYW50aWNzL2RvY3VtZW50LW1ldGFkYXRhL3RoZS1tZXRhLWVsZW1lbnQvcHJhZ21hLWRp
cmVjdGl2ZXMvYXR0ci1tZXRhLWh0dHAtZXF1aXYtcmVmcmVzaC9ub3QtaW4tc2hhZG93LXRyZWUu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9kb2N1bWVudC1tZXRhZGF0YS90aGUtbWV0YS1l
bGVtZW50L3ByYWdtYS1kaXJlY3RpdmVzL2F0dHItbWV0YS1odHRwLWVxdWl2LXJlZnJlc2gvcGFy
c2luZy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEt
ZWxlbWVudHMvbWVkaWFfZnJhZ21lbnRfc2Vlay5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcGxheWluZy10aGUtbWVkaWEtcmVzb3Vy
Y2UvcGF1c2UtcmVtb3ZlLWZyb20tZG9jdW1lbnQtbmV0d29ya1N0YXRlLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9zZWVraW5nL3Nl
ZWstdG8tY3VycmVudFRpbWUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1j
b250ZW50L21lZGlhLWVsZW1lbnRzL3RyYWNrL3RyYWNrLWVsZW1lbnQvdHJhY2stY3Vlcy1jdWVj
aGFuZ2UtZHluYW1pY2FsbHktY3JlYXRlZC10cmFjay1lbGVtZW50Lmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy90cmFjay90cmFjay1l
bGVtZW50L3RyYWNrLWN1ZXMtY3VlY2hhbmdlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
ZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy90cmFjay90cmFjay1lbGVtZW50L3RyYWNr
LWN1ZXMtZW50ZXItZXhpdC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNv
bnRlbnQvbWVkaWEtZWxlbWVudHMvdHJhY2svdHJhY2stZWxlbWVudC90cmFjay13ZWJ2dHQtY2xh
c3MtbWFya3VwLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9t
ZWRpYS1lbGVtZW50cy90cmFjay90cmFjay1lbGVtZW50L3RyYWNrLXdlYnZ0dC1tYXJrdXAuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L3RoZS1pZnJhbWUtZWxl
bWVudC9pZnJhbWVfc2FuZGJveF9uYXZpZ2F0aW9uX2Rvd25sb2FkX2FsbG93X2Rvd25sb2Fkcy5z
dWIudGVudGF0aXZlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVu
dC90aGUtaWZyYW1lLWVsZW1lbnQvaWZyYW1lX3NhbmRib3hfbmF2aWdhdGlvbl9kb3dubG9hZF9h
bGxvd19kb3dubG9hZHNfd2l0aG91dF91c2VyX2FjdGl2YXRpb24uc3ViLnRlbnRhdGl2ZS5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvdGhlLWlmcmFtZS1lbGVt
ZW50L3NhbmRib3hfMDAyLmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L3RoZS1pZnJhbWUtZWxlbWVudC9zYW5kYm94XzAwNS5odG0iOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZW1iZWRkZWQtY29udGVudC90aGUtaW1nLWVsZW1lbnQvZGVjb2RlL2ltYWdlLWRlY29k
ZS1pZnJhbWUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L3Ro
ZS1pbWctZWxlbWVudC9kZWNvZGUvaW1hZ2UtZGVjb2RlLXBhdGgtY2hhbmdlcy1zdmcudGVudGF0
aXZlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC90aGUtaW1n
LWVsZW1lbnQvZGVjb2RlL2ltYWdlLWRlY29kZS1wYXRoLWNoYW5nZXMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L3RoZS1pbWctZWxlbWVudC9kZWNvZGUvaW1h
Z2UtZGVjb2RlLXBpY3R1cmUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1j
b250ZW50L3RoZS1pbWctZWxlbWVudC9kZWNvZGUvaW1hZ2UtZGVjb2RlLXN2Zy50ZW50YXRpdmUu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L3RoZS1pbWctZWxl
bWVudC9kZWNvZGUvaW1hZ2UtZGVjb2RlLXdpdGgtcXVpY2stYXR0YWNoLXN2Zy50ZW50YXRpdmUu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L3RoZS1pbWctZWxl
bWVudC9kZWNvZGUvaW1hZ2UtZGVjb2RlLXdpdGgtcXVpY2stYXR0YWNoLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC90aGUtaW1nLWVsZW1lbnQvZGVjb2RlL2lt
YWdlLWRlY29kZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQv
dGhlLWltZy1lbGVtZW50L3JlbGV2YW50LW11dGF0aW9ucy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvdGhlLWltZy1lbGVtZW50L3NpemVzL3BhcnNlLWEtc2l6
ZXMtYXR0cmlidXRlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVu
dC90aGUtb2JqZWN0LWVsZW1lbnQvb2JqZWN0LWV2ZW50cy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL2Zvcm1zL2Zvcm0tc3VibWlzc2lvbi0wL3N1Ym1pdC1lbnRpdHktYm9keS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3QtZXZl
bnQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24v
c2VsZWN0aW9uLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvbGlua3MvbGlua3MtY3JlYXRl
ZC1ieS1hLWFuZC1hcmVhLWVsZW1lbnRzL3RhcmdldF9ibGFua19pbXBsaWNpdF9ub29wZW5lci5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2xpbmtzL2xpbmtzLWNyZWF0ZWQtYnktYS1hbmQt
YXJlYS1lbGVtZW50cy90YXJnZXRfYmxhbmtfaW1wbGljaXRfbm9vcGVuZXJfYmFzZS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9hc3lu
Y18wMDMuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQt
ZWxlbWVudC9hc3luY18wMDQuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0x
L3RoZS1zY3JpcHQtZWxlbWVudC9hc3luY18wMDUuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9hc3luY18wMDYuaHRtIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9hc3luY18wMDcuaHRt
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9h
c3luY18wMTAuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3Jp
cHQtZWxlbWVudC9leGVjdXRpb24tdGltaW5nLzAxNWEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFu
dGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvZXhlY3V0aW9uLXRpbWluZy8wNTAu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1l
bnQvZXhlY3V0aW9uLXRpbWluZy8wNzguaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3Jp
cHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvZXhlY3V0aW9uLXRpbWluZy8wODIuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvZXhlY3V0
aW9uLXRpbWluZy8xMTEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90
aGUtc2NyaXB0LWVsZW1lbnQvZXhlY3V0aW9uLXRpbWluZy8xMTIuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW9kdWxlL2V4ZWNvcmRl
ci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxl
bWVudC9tb2R1bGUvaW5saW5lLWFzeW5jLWV4ZWNvcmRlci5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1
bWVudHMvYWZ0ZXItcHJlcGFyZS1jcmVhdGVIVE1MRG9jdW1lbnQtZmV0Y2gtZXJyb3ItZXh0ZXJu
YWwtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1z
Y3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYWZ0ZXItcHJlcGFyZS1jcmVh
dGVIVE1MRG9jdW1lbnQtZmV0Y2gtZXJyb3ItZXh0ZXJuYWwtbW9kdWxlLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3
ZWVuLWRvY3VtZW50cy9hZnRlci1wcmVwYXJlLWNyZWF0ZUhUTUxEb2N1bWVudC1wYXJzZS1lcnJv
ci1leHRlcm5hbC1jbGFzc2ljLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5n
LTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9hZnRlci1wcmVw
YXJlLWNyZWF0ZUhUTUxEb2N1bWVudC1wYXJzZS1lcnJvci1leHRlcm5hbC1tb2R1bGUuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92
aW5nLWJldHdlZW4tZG9jdW1lbnRzL2FmdGVyLXByZXBhcmUtY3JlYXRlSFRNTERvY3VtZW50LXN1
Y2Nlc3MtZXh0ZXJuYWwtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3Njcmlw
dGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYWZ0ZXIt
cHJlcGFyZS1jcmVhdGVIVE1MRG9jdW1lbnQtc3VjY2Vzcy1leHRlcm5hbC1tb2R1bGUuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92
aW5nLWJldHdlZW4tZG9jdW1lbnRzL2FmdGVyLXByZXBhcmUtaWZyYW1lLWZldGNoLWVycm9yLWV4
dGVybmFsLWNsYXNzaWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90
aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL2FmdGVyLXByZXBhcmUt
aWZyYW1lLWZldGNoLWVycm9yLWV4dGVybmFsLW1vZHVsZS5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1
bWVudHMvYWZ0ZXItcHJlcGFyZS1pZnJhbWUtcGFyc2UtZXJyb3ItZXh0ZXJuYWwtY2xhc3NpYy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVu
dC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYWZ0ZXItcHJlcGFyZS1pZnJhbWUtcGFyc2UtZXJy
b3ItZXh0ZXJuYWwtbW9kdWxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5n
LTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9hZnRlci1wcmVw
YXJlLWlmcmFtZS1wYXJzZS1lcnJvci1pbmxpbmUtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
c2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1k
b2N1bWVudHMvYWZ0ZXItcHJlcGFyZS1pZnJhbWUtc3VjY2Vzcy1leHRlcm5hbC1jbGFzc2ljLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50
L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9hZnRlci1wcmVwYXJlLWlmcmFtZS1zdWNjZXNzLWV4
dGVybmFsLW1vZHVsZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3Ro
ZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYWZ0ZXItcHJlcGFyZS1p
ZnJhbWUtc3VjY2Vzcy1pbmxpbmUtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMv
YmVmb3JlLXByZXBhcmUtY3JlYXRlSFRNTERvY3VtZW50LWZldGNoLWVycm9yLWV4dGVybmFsLWNs
YXNzaWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0
LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL2JlZm9yZS1wcmVwYXJlLWNyZWF0ZUhU
TUxEb2N1bWVudC1mZXRjaC1lcnJvci1leHRlcm5hbC1tb2R1bGUuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4t
ZG9jdW1lbnRzL2JlZm9yZS1wcmVwYXJlLWNyZWF0ZUhUTUxEb2N1bWVudC1wYXJzZS1lcnJvci1l
eHRlcm5hbC1jbGFzc2ljLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEv
dGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9iZWZvcmUtcHJlcGFy
ZS1jcmVhdGVIVE1MRG9jdW1lbnQtcGFyc2UtZXJyb3ItZXh0ZXJuYWwtbW9kdWxlLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmlu
Zy1iZXR3ZWVuLWRvY3VtZW50cy9iZWZvcmUtcHJlcGFyZS1jcmVhdGVIVE1MRG9jdW1lbnQtcGFy
c2UtZXJyb3ItaW5saW5lLWNsYXNzaWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3Jp
cHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL2JlZm9y
ZS1wcmVwYXJlLWNyZWF0ZUhUTUxEb2N1bWVudC1wYXJzZS1lcnJvci1pbmxpbmUtbW9kdWxlLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50
L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9iZWZvcmUtcHJlcGFyZS1jcmVhdGVIVE1MRG9jdW1l
bnQtc3VjY2Vzcy1lbXB0eS1zcmMtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMv
YmVmb3JlLXByZXBhcmUtY3JlYXRlSFRNTERvY3VtZW50LXN1Y2Nlc3MtZW1wdHktc3JjLW1vZHVs
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxl
bWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYmVmb3JlLXByZXBhcmUtY3JlYXRlSFRNTERv
Y3VtZW50LXN1Y2Nlc3MtZXh0ZXJuYWwtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVu
dHMvYmVmb3JlLXByZXBhcmUtY3JlYXRlSFRNTERvY3VtZW50LXN1Y2Nlc3MtZXh0ZXJuYWwtbW9k
dWxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1l
bGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9iZWZvcmUtcHJlcGFyZS1jcmVhdGVIVE1M
RG9jdW1lbnQtc3VjY2Vzcy1pbmxpbmUtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVu
dHMvYmVmb3JlLXByZXBhcmUtY3JlYXRlSFRNTERvY3VtZW50LXN1Y2Nlc3MtaW5saW5lLW1vZHVs
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxl
bWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYmVmb3JlLXByZXBhcmUtaWZyYW1lLWZldGNo
LWVycm9yLWV4dGVybmFsLWNsYXNzaWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3Jp
cHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL2JlZm9y
ZS1wcmVwYXJlLWlmcmFtZS1mZXRjaC1lcnJvci1leHRlcm5hbC1tb2R1bGUuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJl
dHdlZW4tZG9jdW1lbnRzL2JlZm9yZS1wcmVwYXJlLWlmcmFtZS1wYXJzZS1lcnJvci1leHRlcm5h
bC1jbGFzc2ljLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNj
cmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9iZWZvcmUtcHJlcGFyZS1pZnJh
bWUtcGFyc2UtZXJyb3ItZXh0ZXJuYWwtbW9kdWxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50
cy9iZWZvcmUtcHJlcGFyZS1pZnJhbWUtcGFyc2UtZXJyb3ItaW5saW5lLWNsYXNzaWMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92
aW5nLWJldHdlZW4tZG9jdW1lbnRzL2JlZm9yZS1wcmVwYXJlLWlmcmFtZS1wYXJzZS1lcnJvci1p
bmxpbmUtbW9kdWxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhl
LXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9iZWZvcmUtcHJlcGFyZS1p
ZnJhbWUtc3VjY2Vzcy1lbXB0eS1zcmMtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVu
dHMvYmVmb3JlLXByZXBhcmUtaWZyYW1lLXN1Y2Nlc3MtZW1wdHktc3JjLW1vZHVsZS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3Zp
bmctYmV0d2Vlbi1kb2N1bWVudHMvYmVmb3JlLXByZXBhcmUtaWZyYW1lLXN1Y2Nlc3MtZXh0ZXJu
YWwtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1z
Y3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvYmVmb3JlLXByZXBhcmUtaWZy
YW1lLXN1Y2Nlc3MtZXh0ZXJuYWwtbW9kdWxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
c2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50cy9i
ZWZvcmUtcHJlcGFyZS1pZnJhbWUtc3VjY2Vzcy1pbmxpbmUtY2xhc3NpYy5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0
d2Vlbi1kb2N1bWVudHMvYmVmb3JlLXByZXBhcmUtaWZyYW1lLXN1Y2Nlc3MtaW5saW5lLW1vZHVs
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxl
bWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvbW92ZS1iYWNrLWNyZWF0ZUhUTUxEb2N1bWVu
dC1mZXRjaC1lcnJvci1leHRlcm5hbC1jbGFzc2ljLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50
cy9tb3ZlLWJhY2stY3JlYXRlSFRNTERvY3VtZW50LWZldGNoLWVycm9yLWV4dGVybmFsLW1vZHVs
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxl
bWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvbW92ZS1iYWNrLWNyZWF0ZUhUTUxEb2N1bWVu
dC1wYXJzZS1lcnJvci1leHRlcm5hbC1jbGFzc2ljLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50
cy9tb3ZlLWJhY2stY3JlYXRlSFRNTERvY3VtZW50LXBhcnNlLWVycm9yLWV4dGVybmFsLW1vZHVs
ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxl
bWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvbW92ZS1iYWNrLWNyZWF0ZUhUTUxEb2N1bWVu
dC1zdWNjZXNzLWV4dGVybmFsLWNsYXNzaWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9z
Y3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL21v
dmUtYmFjay1jcmVhdGVIVE1MRG9jdW1lbnQtc3VjY2Vzcy1leHRlcm5hbC1tb2R1bGUuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92
aW5nLWJldHdlZW4tZG9jdW1lbnRzL21vdmUtYmFjay1pZnJhbWUtZmV0Y2gtZXJyb3ItZXh0ZXJu
YWwtY2xhc3NpYy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1z
Y3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0d2Vlbi1kb2N1bWVudHMvbW92ZS1iYWNrLWlmcmFtZS1m
ZXRjaC1lcnJvci1leHRlcm5hbC1tb2R1bGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9z
Y3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL21v
dmUtYmFjay1pZnJhbWUtcGFyc2UtZXJyb3ItZXh0ZXJuYWwtY2xhc3NpYy5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL3NjcmlwdGluZy0xL3RoZS1zY3JpcHQtZWxlbWVudC9tb3ZpbmctYmV0
d2Vlbi1kb2N1bWVudHMvbW92ZS1iYWNrLWlmcmFtZS1wYXJzZS1lcnJvci1leHRlcm5hbC1tb2R1
bGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVs
ZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL21vdmUtYmFjay1pZnJhbWUtcGFyc2UtZXJy
b3ItaW5saW5lLWNsYXNzaWMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmct
MS90aGUtc2NyaXB0LWVsZW1lbnQvbW92aW5nLWJldHdlZW4tZG9jdW1lbnRzL21vdmUtYmFjay1p
ZnJhbWUtc3VjY2Vzcy1leHRlcm5hbC1jbGFzc2ljLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3ZWVuLWRvY3VtZW50
cy9tb3ZlLWJhY2staWZyYW1lLXN1Y2Nlc3MtZXh0ZXJuYWwtbW9kdWxlLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlwdC1lbGVtZW50L21vdmluZy1iZXR3
ZWVuLWRvY3VtZW50cy9tb3ZlLWJhY2staWZyYW1lLXN1Y2Nlc3MtaW5saW5lLWNsYXNzaWMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9zY3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQv
c2NyaXB0LW5vdC1leGVjdXRlZC1hZnRlci1zaHV0ZG93bi5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL3RhYnVsYXItZGF0YS9wcm9jZXNzaW5nLW1vZGVsLTEvc3Bhbi1saW1pdHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX2Fkb3B0aW9uMDEuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX2Fkb3B0aW9uMDIuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX2Jsb2Nrcy5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
c3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfY29tbWVudHMwMS5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3lu
dGF4L3BhcnNpbmcvaHRtbDVsaWJfZG9jdHlwZTAxLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zeW50YXgv
cGFyc2luZy9odG1sNWxpYl9kb21qcy11bnNhZmUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9w
YXJzaW5nL2h0bWw1bGliX2VudGl0aWVzMDEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJz
aW5nL2h0bWw1bGliX2VudGl0aWVzMDIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5n
L2h0bWw1bGliX2h0bWw1dGVzdC1jb20uaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5n
L2h0bWw1bGliX2luYm9keTAxLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1s
NWxpYl9pbm5lckhUTUxfYWRvcHRpb24wMS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNp
bmcvaHRtbDVsaWJfaW5uZXJIVE1MX2ZvcmVpZ24tZnJhZ21lbnQuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX2lubmVySFRNTF9tYXRoLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9pbm5lckhUTUxfdGVzdHM0Lmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9pbm5lckhUTUxfdGVzdHM2Lmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9pbm5lckhUTUxfdGVzdHM3Lmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9pbm5lckhUTUxfdGVzdHNfaW5uZXJI
VE1MXzEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX2lubmVySFRN
TF93ZWJraXQwMi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfaXNp
bmRleC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfbWFpbi1lbGVt
ZW50Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9tZW51aXRlbS1l
bGVtZW50Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9uYW1lc3Bh
Y2Utc2Vuc2l0aXZpdHkuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGli
X3BlbmRpbmctc3BlYy1jaGFuZ2VzLXBsYWluLXRleHQtdW5zYWZlLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9wZW5kaW5nLXNwZWMtY2hhbmdlcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfcGxhaW4tdGV4dC11bnNhZmUuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3J1YnkuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3NjcmlwdGRhdGEwMS5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfc2NyaXB0ZWRfYWRvcHRpb24wMS5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfc2NyaXB0ZWRfYXJrLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl9zY3JpcHRlZF93ZWJraXQwMS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdGFibGVzMDEuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3RlbXBsYXRlLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl90ZXN0czEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRh
eC9wYXJzaW5nL2h0bWw1bGliX3Rlc3RzMTAuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJz
aW5nL2h0bWw1bGliX3Rlc3RzMTEuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0
bWw1bGliX3Rlc3RzMTIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGli
X3Rlc3RzMTQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3Rz
MTUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3RzMTYuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3RzMTcuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3RzMTguaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3RzMTkuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5
bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3RzMi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3Bh
cnNpbmcvaHRtbDVsaWJfdGVzdHMyMC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcv
aHRtbDVsaWJfdGVzdHMyMS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVs
aWJfdGVzdHMyMi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdGVz
dHMyMy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdGVzdHMyNC5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdGVzdHMyNS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdGVzdHMyNi5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdGVzdHMzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
eW50YXgvcGFyc2luZy9odG1sNWxpYl90ZXN0czUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9w
YXJzaW5nL2h0bWw1bGliX3Rlc3RzNi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcv
aHRtbDVsaWJfdGVzdHM3Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxp
Yl90ZXN0czguaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3Rlc3Rz
OS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc3ludGF4L3BhcnNpbmcvaHRtbDVsaWJfdHJpY2t5MDEuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3N5bnRheC9wYXJzaW5nL2h0bWw1bGliX3dlYmtpdDAxLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zeW50YXgvcGFyc2luZy9odG1sNWxpYl93ZWJraXQwMi5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc3ludGF4L3BhcnNpbmcvdGVtcGxhdGUvY3JlYXRpbmctYW4tZWxlbWVudC1mb3ItdGhl
LXRva2VuL3RlbXBsYXRlLW93bmVyLWRvY3VtZW50Lmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC90aGUteGh0
bWwtc3ludGF4L3BhcnNpbmcteGh0bWwtZG9jdW1lbnRzL3hodG1sLW1hdGhtbC1kdGQtZW50aXR5
LTEuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvdGhlLXhodG1sLXN5bnRheC9wYXJzaW5nLXhodG1sLWRvY3Vt
ZW50cy94aHRtbC1tYXRobWwtZHRkLWVudGl0eS0xMC5odG0iOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC90aGUteGh0
bWwtc3ludGF4L3BhcnNpbmcteGh0bWwtZG9jdW1lbnRzL3hodG1sLW1hdGhtbC1kdGQtZW50aXR5
LTIuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvdGhlLXhodG1sLXN5bnRheC9wYXJzaW5nLXhodG1sLWRvY3Vt
ZW50cy94aHRtbC1tYXRobWwtZHRkLWVudGl0eS0zLmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3RoZS14aHRt
bC1zeW50YXgvcGFyc2luZy14aHRtbC1kb2N1bWVudHMveGh0bWwtbWF0aG1sLWR0ZC1lbnRpdHkt
NC5odG0iOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC90aGUteGh0bWwtc3ludGF4L3BhcnNpbmcteGh0bWwtZG9jdW1l
bnRzL3hodG1sLW1hdGhtbC1kdGQtZW50aXR5LTUuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvdGhlLXhodG1s
LXN5bnRheC9wYXJzaW5nLXhodG1sLWRvY3VtZW50cy94aHRtbC1tYXRobWwtZHRkLWVudGl0eS02
Lmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3RoZS14aHRtbC1zeW50YXgvcGFyc2luZy14aHRtbC1kb2N1bWVu
dHMveGh0bWwtbWF0aG1sLWR0ZC1lbnRpdHktNy5odG0iOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC90aGUteGh0bWwt
c3ludGF4L3BhcnNpbmcteGh0bWwtZG9jdW1lbnRzL3hodG1sLW1hdGhtbC1kdGQtZW50aXR5LTgu
aHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvdGhlLXhodG1sLXN5bnRheC9wYXJzaW5nLXhodG1sLWRvY3VtZW50
cy94aHRtbC1tYXRobWwtZHRkLWVudGl0eS05Lmh0bSI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3Rvb2xzL2h0bWw1
bGliX3Rlc3QueG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvdG9vbHMvaHRtbDVsaWJfdGVzdF9mcmFnbWVudC54
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaW1hZ2UtZGVjb2Rlcy9pbWFnZS1kZWNvZGUtaWZyYW1lLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaW1hZ2UtZGVjb2Rlcy9pbWFnZS1kZWNvZGUtcGF0aC1jaGFuZ2VzLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aW1hZ2UtZGVjb2Rlcy9pbWFnZS1kZWNvZGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tYXRobWwvcHJlc2VudGF0
aW9uLW1hcmt1cC9vcGVyYXRvcnMvb3BlcmF0b3ItZGljdGlvbmFyeS0wMDEuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9tYXRobWwvcmVsYXRpb25zL2h0bWw1LXRyZWUvdGFiaW5kZXgtMDAyLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bWVkaWEtc291cmNlL1NvdXJjZUJ1ZmZlci1hYm9ydC1yZWFkeVN0YXRlLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bWVkaWEtc291cmNlL21lZGlhc291cmNlLWFwcGVuZC1idWZmZXIuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRp
YS1zb3VyY2UvbWVkaWFzb3VyY2UtYXBwZW5kYnVmZmVyLXF1b3RhLWV4Y2VlZGVkLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNoYW5nZXR5cGUtcGxheS1pbXBsaWNpdC5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jaGFuZ2V0eXBlLXBsYXktbmVn
YXRpdmUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtY2hhbmdldHlwZS1w
bGF5LXdpdGhvdXQtY29kZWNzLXBhcmFtZXRlci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9t
ZWRpYXNvdXJjZS1jaGFuZ2V0eXBlLXBsYXkuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVk
aWFzb3VyY2UtY29uZmlnLWNoYW5nZS1tcDQtYS1iaXRyYXRlLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEt
c291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2UtbXA0LWF2LWF1ZGlvLWJpdHJhdGUuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtY29uZmlnLWNoYW5nZS1tcDQtYXYt
ZnJhbWVzaXplLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1j
aGFuZ2UtbXA0LWF2LXZpZGVvLWJpdHJhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVk
aWFzb3VyY2UtY29uZmlnLWNoYW5nZS1tcDQtdi1mcmFtZXJhdGUuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRp
YS1zb3VyY2UvbWVkaWFzb3VyY2UtY29uZmlnLWNoYW5nZS1tcDQtdi1mcmFtZXNpemUuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtY29uZmlnLWNoYW5nZS13ZWJtLWF2LWF1
ZGlvLWJpdHJhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtY29uZmln
LWNoYW5nZS13ZWJtLWF2LXZpZGVvLWJpdHJhdGUuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2Uv
bWVkaWFzb3VyY2UtY29uZmlnLWNoYW5nZS13ZWJtLXYtZnJhbWVyYXRlLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvcnJlY3QtZnJhbWVzLWFmdGVyLXJlYXBwZW5kLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvcnJlY3QtZnJhbWVzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWdldHZpZGVvcGxheWJhY2txdWFsaXR5
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLXBsYXkuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtcmVkdW5kYW50LXNlZWsuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9t
ZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtcmVwbGF5Lmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJl
LXJlY29yZC9NZWRpYVJlY29yZGVyLXBlZXJjb25uZWN0aW9uLmh0dHBzLmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bWVkaWFjYXB0dXJlLXN0cmVhbXMvTWVkaWFTdHJlYW1UcmFjay1nZXRTZXR0aW5ncy5odHRwcy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BheW1lbnQtcmVxdWVzdC9hbGxvd3BheW1lbnRyZXF1ZXN0L3NldHRpbmct
YWxsb3dwYXltZW50cmVxdWVzdC10aW1pbmcuaHR0cHMuc3ViLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGF5bWVu
dC1yZXF1ZXN0L3BheW1lbnQtaXMtc2hvd2luZy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BheW1lbnQt
cmVxdWVzdC9wYXltZW50LXJlcXVlc3QtY29uc3RydWN0b3ItY3Jhc2guaHR0cHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wYXltZW50LXJlcXVlc3QvcGF5bWVudC1yZXF1ZXN0LWNvbnN0cnVjdG9yLXRoY3Jhc2gu
aHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9waWN0dXJlLWluLXBpY3R1cmUvbGVhdmUtcGljdHVyZS1pbi1w
aWN0dXJlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGljdHVyZS1pbi1waWN0dXJlL3BpY3R1cmUtaW4tcGljdHVy
ZS13aW5kb3cuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9waWN0dXJlLWluLXBpY3R1cmUvcmVxdWVzdC1waWN0dXJl
LWluLXBpY3R1cmUtdHdpY2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVu
dF9wb2ludGVyb3V0X3JlY2VpdmVkX29uY2UuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3Bv
aW50ZXJldmVudF9yZWxlYXNlcG9pbnRlcmNhcHR1cmVfaW52YWxpZF9wb2ludGVyaWQuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24ta2V5Ym9hcmQu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFu
LXktY3NzX3RvdWNoLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91
Y2gtYWN0aW9uLXNwYW4tbm9uZS10ZXN0X3RvdWNoLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50
cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXN2Zy1ub25lLXRlc3RfdG91Y2guaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tdGFibGUtbm9uZS10
ZXN0X3RvdWNoLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVybG9jay9wb2ludGVy
ZXZlbnRfbW92ZW1lbnR4eS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3F1aXJrcy9oYXNobGVzcy1oZXgtY29sb3Iu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9yZXF1ZXN0aWRsZWNhbGxiYWNrL2NhbGxiYWNrLWlmcmFtZS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3JlcXVlc3RpZGxlY2FsbGJhY2svY2FsbGJhY2stc3VzcGVuZGVkLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcmVxdWVzdGlkbGVjYWxsYmFjay9jYWxsYmFjay10aW1lb3V0LXdoZW4tYnVzeS5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3JlcXVlc3RpZGxlY2FsbGJhY2svY2FsbGJhY2stdGltZW91dC5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3JlcXVlc3RpZGxlY2FsbGJhY2svY2FsbGJhY2steGhyLXN5bmMuaHRtbCI6IFsKLSAgICAgICAg
InNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNv
dXJjZS10aW1pbmcvbmVzdGVkLWNvbnRleHQtbmF2aWdhdGlvbnMtZW1iZWQuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9yZXNvdXJjZS10aW1pbmcvbmVzdGVkLWNvbnRleHQtbmF2aWdhdGlvbnMtaWZyYW1lLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL25lc3RlZC1jb250ZXh0LW5hdmlnYXRpb25zLW9iamVj
dC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9uZXh0SG9wUHJvdG9jb2wtdGFvLXByb3Rl
Y3RlZC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9yZXNvdXJjZS10aW1pbmct
bGV2ZWwxLnN1Yi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9yZXNvdXJjZV90aW1pbmdf
YnVmZmVyX2Z1bGxfZXZlbnR1YWxseS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9zaW5n
bGUtZW50cnktcGVyLXJlc291cmNlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL3dvcmtl
clN0YXJ0LXRhby1wcm90ZWN0ZWQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdC90
ZXN0cy91bml0L2V4Y2VwdGlvbmFsLWNhc2VzLXRpbWVvdXRzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3Vy
Y2VzL3Rlc3QvdGVzdHMvdW5pdC9leGNlcHRpb25hbC1jYXNlcy5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291
cmNlcy90ZXN0L3Rlc3RzL3VuaXQvcHJvbWlzZV9zZXR1cC10aW1lb3V0Lmh0bWwiOiBbCi0gICAg
ICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cmVzb3VyY2VzL3Rlc3QvdGVzdHMvdW5pdC9zaW5nbGVfdGVzdC5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291
cmNlcy90ZXN0L3Rlc3RzL3VuaXQvdGhyb3dpbmctYXNzZXJ0aW9ucy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL2NvbW1vbi5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtYWJvcnQuaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29y
a2VyL2NhY2hlLWFkZC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtZGVsZXRlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1rZXlzLmh0dHBz
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtl
ci9jYWNoZS1tYXRjaC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2hBbGwuaHR0cHMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRw
cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3Jr
ZXIvY2FjaGUtc3RvcmFnZS1rZXlzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1zdG9yYWdlLW1hdGNoLmh0dHBzLmh0
bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9j
YWNoZS1zdG9yYWdlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvd2luZG93L2NhY2hlLWFib3J0Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLWFkZC5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1kZWxldGUuaHR0cHMuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUta2V5
cy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRv
dy9jYWNoZS1tYXRjaC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaEFsbC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtc3RvcmFnZS1rZXlz
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93
L2NhY2hlLXN0b3JhZ2UtbWF0Y2guaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
Y2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtc3RvcmFnZS5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9zYW5kYm94ZWQtaWZyYW1lcy5odHRw
cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNo
ZS1hYm9ydC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdl
L3dvcmtlci9jYWNoZS1hZGQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2Fj
aGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtZGVsZXRlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLWtleXMuaHR0cHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2Fj
aGUtbWF0Y2hBbGwuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3Rv
cmFnZS93b3JrZXIvY2FjaGUtcHV0Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLXN0b3JhZ2Uta2V5cy5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1zdG9yYWdlLW1h
dGNoLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29y
a2VyL2NhY2hlLXN0b3JhZ2UuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwK
LSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvYWJvdXQtYmxhbmstcmVwbGFjZW1lbnQuaHR0cHMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvYWN0aXZhdGlvbi5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLW9yZGVy
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2V4dGVu
ZGFibGUtZXZlbnQtYXN5bmMtd2FpdHVudGlsLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93
IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNhbnZhcy10YWludGluZy12aWRlby1jYWNoZS5o
dHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1j
YW52YXMtdGFpbnRpbmctdmlkZW8uaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAg
XSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVkaXJlY3QuaHR0cHMuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVzcG9uZC13aXRoLWJv
ZHktbG9hZGVkLWluLWNodW5rLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC5odHRwcy5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1mcmFtZS1yZXNvdXJjZS5o
dHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1t
aXhlZC1jb250ZW50LXRvLWluc2NvcGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtbWl4ZWQtY29udGVudC10by1vdXRzY29wZS5odHRwcy5o
dG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0
LXJlZGlyZWN0Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLXJlc3BvbnNlLXRhaW50Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93Igot
ICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbnRlcmZhY2UtcmVxdWlyZW1l
bnRzLXN3Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ludGVyZmFjZXMtd2luZG93Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2xvY2FsLXVybC1pbmhlcml0LWNvbnRyb2xsZXIuaHR0cHMuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1wcmVsb2FkL3Nh
bWVzaXRlLWNvb2tpZXMuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xv
dyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0ZXIt
Y2xvc2VkLXdpbmRvdy5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZWdpc3RyYXRpb24tbWltZS10eXBlcy5odHRwcy5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tdXBkYXRldmlhY2FjaGUuaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvc2FuZGJveGVk
LWlmcmFtZS1mZXRjaC1ldmVudC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBd
LAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9za2lwLXdhaXRpbmctdXNpbmctcmVnaXN0cmF0aW9uLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3NraXAtd2FpdGluZy13aXRo
b3V0LXVzaW5nLXJlZ2lzdHJhdGlvbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItbmF2aWdhdGlvbi1mZXRjaC1ldmVudC5odHRw
cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0
ZXItbmF2aWdhdGlvbi1yZWRpcmVjdC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAg
ICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLmh0dHBzLmh0bWwiOiBbCi0gICAgICAg
ICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93aW5kb3djbGllbnQtbmF2aWdhdGUuaHR0cHMu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd29ya2VyLWludGVy
Y2VwdGlvbi5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N2Zy9hbmltYXRpb25zL3N2Z2xlbmd0aGxpc3Qt
YW5pbWF0aW9uLTMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy91cmwvZmFpbHVyZS5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1h
bmltYXRpb25zL3RpbWluZy1tb2RlbC9hbmltYXRpb25zL3VwZGF0aW5nLXRoZS1maW5pc2hlZC1z
dGF0ZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL3RpbWluZy1tb2RlbC90aW1lbGluZXMv
dXBkYXRlLWFuZC1zZW5kLWV2ZW50cy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRlcmZhY2UvdGVzdC1hbmFseXNlci1taW5pbXVtLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYW5hbHlzZXJub2RlLWludGVyZmFj
ZS90ZXN0LWFuYWx5c2VyLW91dHB1dC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAot
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENEVE1GU2VuZGVy
LW9udG9uZWNoYW5nZS1sb25nLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ0RUTUZTZW5kZXItb250
b25lY2hhbmdlLWxvbmcuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDRFRNRlNlbmRlci1v
bnRvbmVjaGFuZ2UuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAi
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDRGF0YUNoYW5uZWwtYnVm
ZmVyZWRBbW91bnQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDRGF0YUNoYW5uZWwtY2xvc2UuaHRt
bCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJydGMvUlRDRGF0YUNoYW5uZWwtc2VuZC5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0
Yy9SVENJY2VDb25uZWN0aW9uU3RhdGUtY2FuZGlkYXRlLXBhaXIuaHR0cHMuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJydGMvUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlRGF0YUNoYW5uZWwuaHRtbCI6IFsKLSAg
ICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJydGMvUlRDUGVlckNvbm5lY3Rpb24taWNlQ29ubmVjdGlvblN0YXRlLWRpc2Nvbm5lY3Rl
ZC5odHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1pY2VDb25uZWN0
aW9uU3RhdGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUGVlckNvbm5lY3Rpb24tbWFu
ZGF0b3J5LWdldFN0YXRzLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0
aW9uLXBlcmZlY3QtbmVnb3RpYXRpb24uaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0g
ICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUGVl
ckNvbm5lY3Rpb24tcmVtb3RlLXRyYWNrLW11dGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMv
UlRDUGVlckNvbm5lY3Rpb24tc2V0UmVtb3RlRGVzY3JpcHRpb24tdHJhY2tzLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLXRyYWNrLXN0YXRzLmh0dHBzLmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLXRyYW5zY2VpdmVycy5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi12aWRlb0RldGVjdG9yVGVzdC5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBSZWNlaXZlci1nZXRTeW5jaHJvbml6YXRpb25Tb3VyY2Vz
Lmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1J0cFNlbmRlci1yZXBsYWNlVHJhY2suaHR0
cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVyLXRyYW5zcG9ydC5odHRwcy5odG1s
IjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBUcmFuc2NlaXZlci5odHRwcy5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YnJ0Yy9sZWdhY3kvUlRDUGVlckNvbm5lY3Rpb24tYWRkU3RyZWFtLmh0dHBzLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2VicnRjL3Byb3RvY29sL2NhbmRpZGF0ZS1leGNoYW5nZS5odHRwcy5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYnJ0Yy9wcm90b2NvbC9pY2Utc3RhdGUuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ci
Ci0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvcHJv
dG9jb2wvaWNlLXVmcmFncHdkLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL3NpbXVsY2FzdC9iYXNpYy5o
dHRwcy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9zaW11bGNhc3QvZ2V0U3RhdHMuaHR0cHMuaHRtbCI6
IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJydGMvc2ltdWxjYXN0L2gyNjQuaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMv
c2ltdWxjYXN0L3NldFBhcmFtZXRlcnMtYWN0aXZlLmh0dHBzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRj
L3NpbXVsY2FzdC92cDguaHR0cHMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJzb2NrZXRzL2JpbmFyeS8wMDIu
aHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJzb2NrZXRzL2JpbmFyeS8wMDQuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJzb2Nr
ZXRzL2NvbnN0cnVjdG9yLzAxMy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAg
ICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnNvY2tldHMvY29uc3RydWN0b3Iv
MDE0Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2Vic29ja2V0cy9jb29raWVzLzAwNS5odG1sIjogWwotICAgICAg
ICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YnNvY2tldHMvY29va2llcy8wMDcuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAg
ICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJzb2NrZXRzL2V4dGVuZGVkLXBh
eWxvYWQtbGVuZ3RoLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vic29ja2V0cy9pbnRlcmZhY2VzL1dlYlNvY2tl
dC9idWZmZXJlZEFtb3VudC9idWZmZXJlZEFtb3VudC1sYXJnZS5odG1sIjogWwotICAgICAgICAi
c2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnNv
Y2tldHMvaW50ZXJmYWNlcy9XZWJTb2NrZXQvY2xvc2UvY2xvc2UtY29ubmVjdGluZy5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYnNvY2tldHMvaW50ZXJmYWNlcy9XZWJTb2NrZXQvZXZlbnRzLzAxNi5odG1sIjog
WwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYnNvY2tldHMvaW50ZXJmYWNlcy9XZWJTb2NrZXQvc2VuZC8wMDUuaHRtbCI6IFsK
LSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJzb2NrZXRzL2ludGVyZmFjZXMvV2ViU29ja2V0L3NlbmQvMDEwLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2Vic29ja2V0cy9rZWVwaW5nLWNvbm5lY3Rpb24tb3Blbi8wMDEuaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJzb2NrZXRzL29wZW5pbmctaGFuZHNoYWtlLzAwMi5odG1sIjogWwotICAgICAgICAic2xvdyIK
LSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnNvY2tldHMv
b3BlbmluZy1oYW5kc2hha2UvMDAzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0g
ICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vic29ja2V0cy91bmxvYWQtYS1k
b2N1bWVudC8wMDIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJzb2NrZXRzL3VubG9hZC1hLWRvY3VtZW50LzAw
NC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYnNvY2tldHMvdW5sb2FkLWEtZG9jdW1lbnQvMDA1Lmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd29ya2Vycy9Xb3JrZXJfY3Jvc3Nfb3JpZ2luX3NlY3VyaXR5X2Vyci5odG0iOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd29ya2Vycy9jb25zdHJ1Y3RvcnMvU2hhcmVkV29ya2VyL3NhbWUtb3JpZ2luLmh0bWwiOiBb
Ci0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd29ya2Vycy9jb25zdHJ1Y3RvcnMvV29ya2VyL3NhbWUtb3JpZ2luLmh0bWwiOiBbCi0g
ICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd29ya2Vycy9pbnRlcmZhY2VzL1dvcmtlclV0aWxzL2ltcG9ydFNjcmlwdHMvMDA2Lmh0bWwi
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd29ya2Vycy9tb2R1bGVzL2RlZGljYXRlZC13b3JrZXItaW1wb3J0LXJlZmVycmVy
Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd29ya2Vycy9tb2R1bGVzL2RlZGljYXRlZC13b3JrZXItb3B0aW9ucy1j
cmVkZW50aWFscy5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvbW9kdWxlcy9zaGFyZWQtd29ya2VyLWlt
cG9ydC1jc3AuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL21vZHVsZXMvc2hhcmVkLXdvcmtlci1pbXBv
cnQtcmVmZXJyZXIuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL21vZHVsZXMvc2hhcmVkLXdvcmtlci1v
cHRpb25zLWNyZWRlbnRpYWxzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd29ya2Vycy9zZW1hbnRpY3MvbXVsdGlw
bGUtd29ya2Vycy8wMDMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL3NlbWFudGljcy9tdWx0aXBsZS13
b3JrZXJzLzAwNC5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvc2VtYW50aWNzL211bHRpcGxlLXdvcmtl
cnMvMDA3Lmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL292ZXJyaWRlbWltZXR5cGUtYmxvYi5odG1sIjogWwot
ICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3hoci9wcm9ncmVzcy1ldmVudHMtcmVzcG9uc2UtZGF0YS1nemlwLmh0bSI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94
aHIvcmVzcG9uc2UtZGF0YS1wcm9ncmVzcy5odG0iOiBbCi0gICAgICAgICJzbG93IgotICAgIF0s
Ci0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3NlbmQtcmVkaXJlY3Qt
Ym9ndXMuaHRtIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3hoci9zZXRyZXF1ZXN0aGVhZGVyLWNvbnRlbnQtdHlwZS5odG0i
OiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMveGhyL3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtYWJvcnRlZC5odG1sIjogWwotICAg
ICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3hoci94bWxodHRwcmVxdWVzdC10aW1lb3V0LWFib3J0ZWRvbm1haW4uaHRtbCI6IFsKLSAgICAg
ICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94
aHIveG1saHR0cHJlcXVlc3QtdGltZW91dC1vdmVycmlkZXMuaHRtbCI6IFsKLSAgICAgICAgInNs
b3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIveG1s
aHR0cHJlcXVlc3QtdGltZW91dC1vdmVycmlkZXNleHBpcmVzLmh0bWwiOiBbCi0gICAgICAgICJz
bG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3ht
bGh0dHByZXF1ZXN0LXRpbWVvdXQtcmV1c2VkLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAg
IF0sCi0gICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3htbGh0dHByZXF1
ZXN0LXRpbWVvdXQtc2ltcGxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3htbGh0dHByZXF1ZXN0LXRpbWVv
dXQtc3luY29ubWFpbi5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci94bWxodHRwcmVxdWVzdC10aW1lb3V0LXR3
aWNlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMveGhyL3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtd29ya2VyLWFib3J0
ZWQuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy94aHIveG1saHR0cHJlcXVlc3QtdGltZW91dC13b3JrZXItb3ZlcnJp
ZGVzLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMveGhyL3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtd29ya2VyLW92ZXJy
aWRlc2V4cGlyZXMuaHRtbCI6IFsKLSAgICAgICAgInNsb3ciCi0gICAgXSwKLSAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIveG1saHR0cHJlcXVlc3QtdGltZW91dC13b3Jr
ZXItc2ltcGxlLmh0bWwiOiBbCi0gICAgICAgICJzbG93IgotICAgIF0sCi0gICAgImltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3htbGh0dHByZXF1ZXN0LXRpbWVvdXQtd29ya2Vy
LXN5bmNvbndvcmtlci5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdLAotICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci94bWxodHRwcmVxdWVzdC10aW1lb3V0LXdv
cmtlci10d2ljZS5odG1sIjogWwotICAgICAgICAic2xvdyIKLSAgICBdCi19ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405419</attachid>
            <date>2020-07-28 15:01:52 -0700</date>
            <delta_ts>2020-07-28 15:49:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200728150151.patch</filename>
            <type>text/plain</type>
            <size>44226</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLmRkNTdlYmU4ZjRjOWEyMGQwOWFkZTFkMTA5MWE4MTU4
OTE3NTM5ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMsIHRoaXMgaXMganVzdCBjb2RlIG1pZ3JhdGlvbiBhbmQg
d2lsbCBiZSB0ZXN0ZWQKKyAgICAgICAgYnkgZXhpc3RpbmcgQXBwLUJvdW5kIERvbWFpbnMgdGVz
dHMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjphY3RpdmF0ZVNlc3Npb25DbGVhbnVwKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Nlc3Npb25Db2NvYTo6c2Vzc2lvbldyYXBwZXJGb3JUYXNrKToKKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDogQWRkZWQuCisg
ICAgICAgICogU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOiBBZGRlZC4K
KyAgICAgICAgSG9sZHMgYWxsIGZ1bmN0aW9ucyByZWxhdGVkIHRvIGZ1bGwgYnJvd3NlciBjaGVj
a3MgYW5kCisgICAgICAgIEFwcC1Cb3VuZCBEb21haW5zLgorCisgICAgICAgIChXZWJLaXQ6OnNo
b3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0OjpnZXRBcHBCb3Vu
ZERvbWFpbnNUZXN0aW5nKToKKyAgICAgICAgVGhlc2UgZnVuY3Rpb25zIGFsbG93IHVzIHRvIHRy
ZWF0IG91ciB0ZXN0IHJ1bm5lcnMgYXMgZnVsbCBicm93c2VycworICAgICAgICB3aGlsZSB0cmln
Z2VyaW5nIG5vbi1icm93c2VyIG1vZGUgZm9yIHRlc3Rpbmcgb3RoZXIgQXBwLUJvdW5kIERvbWFp
bnMKKyAgICAgICAgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAoV2ViS2l0Ojppc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6aGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRl
VHJhY2tpbmdQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGVJ
bnRlcm5hbCk6CisgICAgICAgIChXZWJLaXQ6OmRldGVybWluZUlUUFN0YXRlKToKKyAgICAgICAg
KFdlYktpdDo6ZG9lc0FwcEhhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6ZG9lc1Bh
cmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6Omhhc1Byb2hpYml0
ZWRVc2FnZVN0cmluZ3MpOgorICAgICAgICAoV2ViS2l0Ojppc1BhcmVudFByb2Nlc3NBRnVsbFdl
YkJyb3dzZXIpOgorICAgICAgICAoV2ViS2l0Ojppc0Z1bGxXZWJCcm93c2VyKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHA6CisgICAgICAgIChBUEk6OkhU
VFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UGFnZUNvbmZp
Z3VyYXRpb246OlBhZ2VDb25maWd1cmF0aW9uKToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OldlYlBy
b2Nlc3NQb29sKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdv
cmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dl
YlByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmFk
ZFRlc3REb21haW5zIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorCiAyMDIwLTA3LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cHBvcnQgZm9yIGJhY2tkcm9w
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVm
ODkxN2M0MjU5NWE1YTkuLjkzMWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlRGlzcG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFu
YWdlci5oIgogI2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0
b21Qcm90b2NvbE1hbmFnZXIuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYg
QEAKICNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25z
Lmg+CiAjZWxzZQogI2RlZmluZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNk
ZWZpbmUgTkVUV09SS19TRVNTSU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAj
aW1wb3J0ICJEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBA
QCB2b2lkIFNlc3Npb25XcmFwcGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRp
b24gKmNvbmZpZ3VyYXRpb24sIE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNl
c3Npb25XaXRoQ29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdl
dCgpIGRlbGVnYXRlUXVldWU6W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNp
ZiBIQVZFKFNFU1NJT05fQ0xFQU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFu
dXAoTmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVh
dGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19J
UEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBE
b24ndCBvdmVycmlkZSBhbiBleHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVy
cy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNl
dCkKKyAgICAgICAgcmV0dXJuOworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9S
KQorICAgIGF1dG8gcGFyZW50QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9B
U1NFUlQocGFyZW50QXVkaXRUb2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisK
KyAgICBib29sIGl0cEVuYWJsZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBh
cmVudEF1ZGl0VG9rZW4pOworICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5p
c1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAh
PSBwYXNzZWRFbmFibGVkU3RhdGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBl
bmFibGVkIHN0YXRlICglZCkgZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRw
RW5hYmxlZCwgcGFzc2VkRW5hYmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgor
fQorI2VuZGlmCisKIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0
d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMpCiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2Vzcywg
cGFyYW1ldGVycykKICAgICAsIG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMu
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3
b3JrU2Vzc2lvbkNvY29hOjppbml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZp
Z2F0aW5nVG9BcHBCb3UKIFNlc3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNz
aW9uV3JhcHBlckZvclRhc2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGlj
eSwgT3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4pCiB7CiAgICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
biA6IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VT
U0lPTl9DT0NPQV9BRERJVElPTlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJC
cm93c2VyKG5ldHdvcmtQcm9jZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVk
aXRUb2tlbigpKSkKICAgICAgICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKICAgICBpZiAoYXV0byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Np
b24oKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdl
YkJyb3dzZXJDaGVja3MuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZk
N2U0M2YxM2JlZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29h
L0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNz
IFJlZ2lzdHJhYmxlRG9tYWluOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQ
cm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4+PiBnZXRBcHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOwor
Ym9vbCBzaG91bGRCZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQp
Owordm9pZCBkZXRlcm1pbmVJVFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQo
KTsKK2Jvb2wgZG9lc1BhcmVudFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90
b2tlbl90Pik7Citib29sIGlzRnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNz
QUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI0MzlkMDk2NGQ0NWI2Mjk2N2E1NzAzOTcx
YTBkMmJkNjc0OTMzNmYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9D
b2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVj
a3MuaCIKKworI2ltcG9ydCAiVENDU1BJLmgiCisjaW1wb3J0ICJWZXJzaW9uQ2hlY2tzLmgiCisj
aW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBv
cnQgPHd0Zi9SdW5Mb29wLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQg
PHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2gu
aD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRD
Q0FjY2Vzc1ByZWZsaWdodCwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYg
c2VydmljZSwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitT
T0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNz
UHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tl
biwgQ0ZEaWN0aW9uYXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQor
U09GVF9MSU5LX0NPTlNUQU5UKFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNr
aW5nUHJldmVudGlvbiwgQ0ZTdHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0
YXRpYyBib29sIGlzRnVsbFdlYkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJl
dHVybiBidW5kbGVJRCA9PSAiY29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1
bmRsZUlEID09ICJjb20uYXBwbGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09w
dGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9t
YWluc1Rlc3RpbmcoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQu
aXNOdWxsKCkpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0
byBhcHBCb3VuZERvbWFpbkxpc3QgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcs
IFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJy
b3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbj4geyBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJv
bVJlZ2lzdHJhYmxlRG9tYWluU3RyaW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAg
IGF1dG8gYXBwQm91bmREb21haW5JdGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRs
ZUlEKTsKKyAgICBpZiAoYXBwQm91bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+
ZW5kKCkpCisgICAgICAgIHJldHVybiBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKK30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9v
bCBpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJv
Y2VzczsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9v
bmNlKCZvbmNlLCBeeworICAgICAgICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9j
ZXNzID0gW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50Il0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNv
bS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRp
ZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAg
cmV0dXJuIGlzSW5TdWJQcm9jZXNzOworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUg
OiB1aW50OF90IHsKKyAgICBVbmluaXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBF
bmFibGVkLAorICAgIERpc2FibGVkCit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+
IGdfY3VycmVudElUUFN0YXRlID0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBi
b29sIGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAg
QVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRv
bWljPGJvb2w+IGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3Nz
V2Vic2l0ZVRyYWNraW5nVXNhZ2VEZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0
ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVy
bWluZUlUUFN0YXRlSW50ZXJuYWwoYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0
cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFw
cFdhc0xpbmtlZE9uT3JBZnRlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFp
c0Z1bGxXZWJCcm93c2VyKGJ1bmRsZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dl
YnNpdGVUcmFja2luZ1Blcm1pc3Npb24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBU
Q0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKKyNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxNDAwMDApIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTEwMDAwKQorICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRr
VENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIp
OworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworfQorCitzdGF0aWMgZGlzcGF0Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVy
bWluZUlUUFN0YXRlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlm
IChnX2N1cnJlbnRJVFBTdGF0ZSAhPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZ19jdXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5n
OworICAgIGJvb2wgYXBwV2FzTGlua2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1Zl
cnNpb246OkZpcnN0V2l0aFNlc3Npb25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fs
d2F5c0xpbmtlZE9uQWZ0ZXI6Olllcyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVl
dWVfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAg
IGRpc3BhdGNoX2FzeW5jKGdfaXRwUXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRs
ZUlkZW50aWZpZXIgPSBXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29s
YXRlZENvcHkoKV0geworICAgICAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0
YXRlSW50ZXJuYWwoYXBwV2FzTGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElU
UFN0YXRlOjpFbmFibGVkIDogSVRQU3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNo
X2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRj
aF9yZWxlYXNlKGdfaXRwUXVldWUpOworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7
CisgICAgICAgIH0pOworICAgIH0pOworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
Cit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6
OkluaXRpYWxpemluZykKKyAgICAgICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0
YXRlOjpFbmFibGVkOworCisgICAgUkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBf
X2Jsb2NrIGJvb2wgaXNJVFBFbmFibGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwg
XnsKKyAgICAgICAgaXNJVFBFbmFibGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6
OkVuYWJsZWQ7CisgICAgfSk7CisgICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBk
b2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1
ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAg
QVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKGF1ZGl0VG9rZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworI2lmIChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDE0MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMTAwMDApCisgICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9
IFRDQ0FjY2Vzc1ByZWZsaWdodFdpdGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50
ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRy
KTsKKyNlbmRpZgorICAgIHJldHVybiByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmll
ZDsKK30KKworc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3Mg
PSBmYWxzZTsKK2Jvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJU
KCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGli
aXRlZFVzYWdlU3RyaW5ncyA9IGZhbHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmlu
Z3MpCisgICAgICAgIHJldHVybiBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNE
aWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0Rp
Y3Rpb25hcnldOworICAgIFJFTEVBU0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8v
IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlz
IGxpc3Qgd2FzIHNlbGVjdGVkLgorICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAg
ICAgICBAIk5TUmVtaW5kZXJzVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIb21lS2l0
VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2Ny
aXB0aW9uIiwKKyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAg
ICAgICBAIk5TSGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0
aFVwZGF0ZVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2Fn
ZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNh
Z2VEZXNjcmlwdGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0
cmluZyA6IHByb2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVz
c2FnZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZh
Y3ldICVAIHVzZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWlu
QnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAg
ICBXVEZMb2dBbHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IH0KKyAgICB9CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJu
IGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1
bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAg
QVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVk
aXRUb2tlbik7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRp
YyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAg
ICAgICBmdWxsV2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1
ZSgpLCAiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAg
cmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2Vi
Q29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBp
c0Z1bGxXZWJCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBB
U1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxs
V2ViQnJvd3NlciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxv
cGVyLndlYi1icm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxk
QmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1
bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7
CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJC
cm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQw
NDY1OWM5YjUxM2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUu
Y3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQ
SUhUVFBDb29raWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRl
ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29r
aWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUg
IldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8
V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlm
Ci0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyAr
NjQsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0
IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29r
aWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3du
aW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2ll
cyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBp
ZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZ
X0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2Vi
QnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsK
ICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAg
ICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRl
eCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3
M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBA
CiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250
ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2lu
Y2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vs
c2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5p
ZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4g
UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdl
Q29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYx
MjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLjZlNjEwOTUzZTIzOTI0YWQ2NzgwOTBiYjI3MTcx
ZTQ1YzExOTIxYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtMjg4LDEzICsyODgsOCBAQAogI2luY2x1ZGUgIk1lZGlhVXNhZ2VNYW5hZ2VyLmgiCiAjZW5k
aWYKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRp
b25zL1dlYlBhZ2VQcm94eUFkZGl0aW9ucy5oPgotI2Vsc2UKLXN0YXRpYyBib29sIGlzRnVsbFdl
YkJyb3dzZXIoKSB7IHJldHVybiB0cnVlOyB9Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLXN0
YXRpYyBib29sIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MoKSB7IHJldHVybiBmYWxzZTsgfQot
I2VuZGlmCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dzZXJD
aGVja3MuaCIKICNlbmRpZgogCiAvLyBUaGlzIGNvbnRyb2xzIHdoYXQgc3RyYXRlZ3kgd2UgdXNl
IGZvciBtb3VzZSB3aGVlbCBjb2FsZXNjaW5nLgpAQCAtMTM5Niw4ICsxMzkxLDEwIEBAIFJlZlB0
cjxBUEk6Ok5hdmlnYXRpb24+IFdlYlBhZ2VQcm94eTo6bG9hZERhdGEoY29uc3QgSVBDOjpEYXRh
UmVmZXJlbmNlJiBkYXRhLCBjCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChMb2FkaW5n
LCAibG9hZERhdGE6Iik7CiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGlmIChNSU1F
VHlwZSA9PSAidGV4dC9odG1sIl9zICYmICFpc0Z1bGxXZWJCcm93c2VyKCkpCiAgICAgICAgIG1f
bGltaXRzTmF2aWdhdGlvbnNUb0FwcEJvdW5kRG9tYWlucyA9IHRydWU7CisjZW5kaWYKIAogICAg
IGlmIChtX2lzQ2xvc2VkKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoTG9hZGlu
ZywgImxvYWREYXRhOiBwYWdlIGlzIGNsb3NlZCIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDkyODFlMWNlNDMyOWIzNDJjMzNhZDg5MDdlMzg3MzE2
YmZkZjAyMWQuLmI4ODA4MGI5Njc4ODI3ZmZkZWNiYmY3ZjEwZmNiZTUxMGMxNWI5NWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTEyNiw2ICsxMjYs
NyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNsdWRlICJEZWZhdWx0V2Vi
QnJvd3NlckNoZWNrcy5oIgogI2luY2x1ZGUgIlZlcnNpb25DaGVja3MuaCIKICNpbmNsdWRlIDxX
ZWJDb3JlL0dhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9ISURHYW1lcGFkUHJvdmlkZXIuaD4KQEAgLTE0MSwxNSArMTQyLDYgQEAKICNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+CiAjZW5kaWYKIAotI2lmIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1dlYlByb2Nlc3NQb29sQWRkaXRp
b25zLmg+Ci0jZWxzZQotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OUwotI2RlZmlu
ZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18yCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xf
QURESVRJT05TXzMKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfNAotI2VuZGlm
Ci0KICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0coY2hhbm5lbCwgZm10LCAuLi4p
IFJFTEVBU0VfTE9HKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywg
IyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfRVJST1Io
Y2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5uZWwsICIlcCAtIFdlYlBy
b2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VT
U1BPT0xfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9M
T0dfSUYoc2Vzc2lvbklELmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpLCBjaGFubmVsLCAiJXAg
LSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCkBAIC0yNTUsNyAr
MjQ3LDYgQEAgV2ViUHJvY2Vzc1Bvb2w6OldlYlByb2Nlc3NQb29sKEFQSTo6UHJvY2Vzc1Bvb2xD
b25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogI2VuZGlmCiAgICAgLCBtX2Fsd2F5c1J1bnNB
dEJhY2tncm91bmRQcmlvcml0eShtX2NvbmZpZ3VyYXRpb24tPmFsd2F5c1J1bnNBdEJhY2tncm91
bmRQcmlvcml0eSgpKQogICAgICwgbV9zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKG1f
Y29uZmlndXJhdGlvbi0+c2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlvbigpKQotICAgIFdF
Ql9QUk9DRVNTX1BPT0xfQURESVRJT05TCiAgICAgLCBtX3VzZXJPYnNlcnZhYmxlUGFnZUNvdW50
ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25TdGF0
ZSgpOyB9KQogICAgICwgbV9wcm9jZXNzU3VwcHJlc3Npb25EaXNhYmxlZEZvclBhZ2VDb3VudGVy
KFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgdXBkYXRlUHJvY2Vzc1N1cHByZXNzaW9uU3RhdGUo
KTsgfSkKICAgICAsIG1faGlkZGVuUGFnZVRocm90dGxpbmdBdXRvSW5jcmVhc2VzQ291bnRlcihb
dGhpc10oUmVmQ291bnRlckV2ZW50KSB7IG1faGlkZGVuUGFnZVRocm90dGxpbmdUaW1lci5zdGFy
dE9uZVNob3QoMF9zKTsgfSkKQEAgLTI3MSw3ICsyNjIsOSBAQCBXZWJQcm9jZXNzUG9vbDo6V2Vi
UHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24p
CiAgICAgICAgIFdURjo6c2V0UHJvY2Vzc1ByaXZpbGVnZXMoYWxsUHJpdmlsZWdlcygpKTsKICAg
ICAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9Vc2VD
b29raWVBUEkodHJ1ZSk7CiAgICAgICAgIFByb2Nlc3M6OnNldElkZW50aWZpZXIoV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXI6OmdlbmVyYXRlKCkpOwotICAgICAgICBXRUJfUFJPQ0VTU19QT09M
X0FERElUSU9OU180CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgICAgIGRldGVybWluZUlUUFN0
YXRlKCk7CisjZW5kaWYKICAgICB9KTsKIAogICAgIGlmICghbV93ZWJzaXRlRGF0YVN0b3JlICYm
IFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpKQpAQCAt
NjEzLDcgKzYwNiwyMiBAQCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5z
dXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2l0aAogICAgIFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluIHN0YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFpbjsKICAgICBIYXNoU2V0
PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBhcHBCb3VuZERvbWFpbnM7CiAgICAgV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4gbWFudWFsUHJldmFsZW50UmVzb3VyY2U7Ci0gICAgV0VCX1BS
T0NFU1NfUE9PTF9BRERJVElPTlNfMgorCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgbV90Y2NQ
cmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpOworICAgIGlmICh3aXRo
V2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBs
aWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1f
dGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5zZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
KTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAhbV93ZWJzaXRlRGF0YVN0
b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAgIGVuYWJsZVJlc291cmNl
TG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworICAgICAgICBtX3dlYnNp
dGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKGVuYWJsZVJlc291
cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0ZURhdGFTdG9yZTo6ZGVm
YXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0
b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIFdlYnNp
dGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7CisgICAgfSBlbHNlCisgICAg
ICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVk
OworI2VuZGlmCisKICAgICBpZiAod2l0aFdlYnNpdGVEYXRhU3RvcmUpIHsKICAgICAgICAgZW5h
YmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpOwogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJ
U1RJQ1MpCkBAIC04ODQsNyArODkyLDEyIEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlc29sdmVQ
YXRoc0ZvclNhbmRib3hFeHRlbnNpb25zKCkKIAogV2ViUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNz
UG9vbDo6Y3JlYXRlTmV3V2ViUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0YVN0
b3JlLCBXZWJQcm9jZXNzUHJveHk6OklzUHJld2FybWVkIGlzUHJld2FybWVkKQogewotICAgIFdF
Ql9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBtX3Rj
Y1ByZWZlcmVuY2VFbmFibGVkID0gZG9lc0FwcEhhdmVJVFBFbmFibGVkKCk7CisgICAgaWYgKHdl
YnNpdGVEYXRhU3RvcmUgJiYgIXdlYnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBsaWNpdGx5
U2V0KCkpCisgICAgICAgIHdlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NFbmFibGVkKG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQpOworI2VuZGlmCisKICAgICBhdXRvIHBy
b2Nlc3NQcm94eSA9IFdlYlByb2Nlc3NQcm94eTo6Y3JlYXRlKCp0aGlzLCB3ZWJzaXRlRGF0YVN0
b3JlLCBpc1ByZXdhcm1lZCk7CiAgICAgYXV0byYgcHJvY2VzcyA9IHByb2Nlc3NQcm94eS5nZXQo
KTsKICAgICBpbml0aWFsaXplTmV3V2ViUHJvY2Vzcyhwcm9jZXNzLCB3ZWJzaXRlRGF0YVN0b3Jl
LCBpc1ByZXdhcm1lZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KaW5kZXgg
Njg1MTMxNWNhYzUwNjkwNjhhNjc2NDM2OTQ2NDI5N2I2MWQxMDJjMS4uZmIzYjIxZmQ5MzYyOGEz
NGFlM2Q0ZGVjZmQ0ZTc5N2NmNjUzMWY2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVD
b2NvYS5tbQpAQCAtMjcsNiArMjcsNyBAQAogI2ltcG9ydCAiV2Vic2l0ZURhdGFTdG9yZS5oIgog
CiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRpbHNDRi5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIlNhbmRib3hVdGlsaXRpZXMuaCIKICNpbXBvcnQgIlN0
b3JhZ2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJveHkuaCIK
QEAgLTQ1LDEyICs0Niw2IEBACiAjaW1wb3J0IDx3dGYvVVJMLmg+CiAjaW1wb3J0IDx3dGYvdGV4
dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2ltcG9y
dCA8V2ViS2l0QWRkaXRpb25zL1dlYnNpdGVEYXRhU3RvcmVBZGRpdGlvbnMuaD4KLSNlbHNlCi0j
ZGVmaW5lIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlMKLSNlbmRpZgotCiAjaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkKICNpbXBvcnQgPFVJS2l0L1VJQXBwbGljYXRpb24uaD4KICNpbXBvcnQg
PHBhbC9pb3MvTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGluay5oPgpAQCAtNDYzLDExICs0NTgs
MjMgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjppbml0aWFsaXplQXBwQm91bmREb21haW5zKEZv
cmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4KICAgICB9KTsKIH0KIAordm9pZCBXZWJzaXRl
RGF0YVN0b3JlOjphZGRUZXN0RG9tYWlucygpIGNvbnN0Cit7CisgICAgaWYgKGFwcEJvdW5kRG9t
YWlucygpLmlzRW1wdHkoKSkgeworICAgICAgICBhdXRvIGJ1bmRsZUlEID0gV2ViQ29yZTo6YXBw
bGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8gYXBwQm91bmREb21haW5z
VGVzdGluZyA9IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoYnVuZGxlSUQpOworICAgICAgICBp
ZiAoYXBwQm91bmREb21haW5zVGVzdGluZykgeworICAgICAgICAgICAgZm9yIChhdXRvJiBkb21h
aW4gOiAqYXBwQm91bmREb21haW5zVGVzdGluZykKKyAgICAgICAgICAgICAgICBhcHBCb3VuZERv
bWFpbnMoKS5hZGQoZG9tYWluKTsKKyAgICAgICAgfQorICAgIH0KK30KKwogdm9pZCBXZWJzaXRl
RGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChj
b25zdCBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiYsIGNvbnN0IEhhc2hTZXQ8
U3RyaW5nPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAogewogICAgIGlmIChoYXNJbml0
aWFsaXplZEFwcEJvdW5kRG9tYWlucykgewogICAgICAgICBpZiAobV9pc0luQXBwQnJvd3NlclBy
aXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9B
RERJVElPTlM7CisgICAgICAgICAgICBhZGRUZXN0RG9tYWlucygpOwogICAgICAgICB9CiAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBhcHBCb3VuZFNjaGVtZXMo
KSk7CiAgICAgICAgIHJldHVybjsKQEAgLTQ3OSw3ICs0ODYsNyBAQCB2b2lkIFdlYnNpdGVEYXRh
U3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IEhhc2hTZQogICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3RoaXMsIHByb3RlY3Rl
ZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKICAgICAgICAgICAgIEFTU0VSVCho
YXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7CiAgICAgICAgICAgICBpZiAobV9pc0luQXBw
QnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAgICAgICBXRUJTSVRF
X0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICAgICAgICAgIGFkZFRlc3REb21haW5zKCk7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihhcHBCb3VuZERv
bWFpbnMoKSwgYXBwQm91bmRTY2hlbWVzKCkpOwogICAgICAgICB9KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAppbmRl
eCBjNmZiYmM0OTIzOWY2OTVhOGJhMzQxZWY2OTMwNTdjZWYxZWFiNmQwLi4wYTdmODNkMmI3ZGM2
MzUzOGM4NTc4ODAwZTYxN2FmZmM1ZDNmMTlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCkBAIC0zMTIsNiArMzEy
LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIEZvcmNlUmVpbml0aWFsaXph
dGlvbiA6IGJvb2wgeyBObywgWWVzIH07CiAgICAgdm9pZCBpbml0aWFsaXplQXBwQm91bmREb21h
aW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiA9IEZvcmNlUmVpbml0aWFsaXphdGlvbjo6Tm8pOwor
ICAgIHZvaWQgYWRkVGVzdERvbWFpbnMoKSBjb25zdDsKIAogICAgIHZvaWQgZmV0Y2hEYXRhQW5k
QXBwbHkoT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4sIE9wdGlvblNldDxXZWJzaXRlRGF0YUZl
dGNoT3B0aW9uPiwgUmVmUHRyPFdvcmtRdWV1ZT4mJiwgRnVuY3Rpb248dm9pZChWZWN0b3I8V2Vi
c2l0ZURhdGFSZWNvcmQ+KT4mJiBhcHBseSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDMwNDIwZDkwNmMwMmQzYzhmZWNlMGFkY2Fk
YmJmOWI0YTAwODdkNmIuLmZlODNjNDI1MmJiYzYwN2UxNjgyM2M4ZDRjYWIxYTUwYzBlMTFkNzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtOTYzLDYgKzk2Myw3IEBACiAJCTQ5QkNBMTkyMjNBMTc3NjYwMDI4QTgzNiAvKiBBUElSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTEyM0ExNzc2NjAwMjhBODM2IC8qIEFQSVJlc291
cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi87IH07CiAJCTQ5QkNBMTk1MjNBMThDRkQw
MDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJDQTE5MDIz
QTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRl
cm5hbC5oICovOyB9OwogCQk0OUJDQTE5NzIzQTE5MzBEMDAyOEE4MzYgLyogQVBJUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTk2MjNBMThGNjIwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovOyB9OworCQk0OURBQTM4QzI0Q0JBMUE4MDA3OTNE
NzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OURBQTM4QjI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVs
dFdlYkJyb3dzZXJDaGVja3MubW0gKi87IH07CiAJCTQ5RUNBNDFDMjNGQ0E1RDgwMDIzMzU4RCAv
KiBQb2xpY3lEZWNpc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGljeURlY2lzaW9uLmggKi87
IH07CiAJCTQ5RkJFRkZEMjM5QjAxMUQwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRmlyc3RQYXJ0eS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQ5RkJFRkZDMjM5QjAxMUQwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRmlyc3RQYXJ0eS5tbSAqLzsgfTsKIAkJNDlGQkVGRkYyMzlCMDEyRjAwQkQwMzJGIC8qIF9X
S1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkUyMzlCMDEyRjAwQkQwMzJGIC8qIF9X
S1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1tICovOyB9OwpAQCAtMzU4Niw2ICsz
NTg3LDggQEAKIAkJNDlCQ0ExOTAyM0ExNzU0OTAwMjhBODM2IC8qIF9XS1Jlc291cmNlTG9hZFN0
YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VM
b2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0OUJDQTE5MTIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlz
dGljc0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0ZpcnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlCQ0ExOTYyM0Ex
OEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZh
dWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OURBQTM4RDI0
Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGljeURlY2lzaW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBvbGljeURlY2lzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5
RkJFRkZBMjM5QUQ5NzgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQ
YXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUZCRUZGQjIzOUFEQjE4MDBCRDAz
MkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTc0ODMsNiArNzQ4Niw4IEBACiAJCQkJMUM3MzlFODUyMzQ3QkNGNjAw
QzYyMUVDIC8qIENvcmVUZXh0SGVscGVycy5tbSAqLywKIAkJCQlDNTVGOTE2QzFDNTk1RTQ0MDAy
OUU5MkQgLyogRGF0YURldGVjdGlvblJlc3VsdC5oICovLAogCQkJCUM1NUY5MTZEMUM1OTVFNDQw
MDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0Lm1tICovLAorCQkJCTQ5REFBMzhEMjRDQkEx
QkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oICovLAorCQkJCTQ5REFBMzhC
MjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLywKIAkJCQlD
RTU1MEUxMzIyODM3NDQ0MDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9wdGlvbnMuY3BwICovLAogCQkJ
CUNFNTUwRTEyMjI4MzczQzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5oICovLAogCQkJ
CUMxNjYzRTVBMjRBRUE3NDIwMEM2QTNCMiAvKiBMYXVuY2hTZXJ2aWNlc0RhdGFiYXNlWFBDQ29u
c3RhbnRzLmggKi8sCkBAIC0xMjczMCw2ICsxMjczNSw3IEBACiAJCQkJMkQ5MkE3N0QyMTJCNkE3
MTAwRjQ5M0ZEIC8qIENvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQ5MkE3N0Uy
MTJCNkE3MTAwRjQ5M0ZEIC8qIERhdGFSZWZlcmVuY2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MkQ5MkE3N0YyMTJCNkE3MTAwRjQ5M0ZEIC8qIERlY29kZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkJNDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMkQwQzU2RkUyMjlGMURFQTAwQkQzM0U3IC8qIERldmljZU1h
bmFnZW1lbnRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAogCQkJCTFBQjdENjE5MTI4OEI5RDkw
MENGRDA4QyAvKiBEb3dubG9hZFByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTFBNjQyMjk5MTJERDAyOTIwMENBQUUyQyAvKiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNl
aXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rv
b2xzL0NoYW5nZUxvZwppbmRleCA3ZDRiOTRjMmQ0NmNhNmExOWJjZDBhZTRkZTQ3YjU5ZGQ3MDg4
Yzg2Li5iMTM1YjEwODNlNTJjOGFjZTFiNjM0NDRhMGU5YmUxMzE2MjE3MzQ1IDEwMDY0NAotLS0g
YS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisK
KyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0
ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXBsYWNlIFdlYktpdCBBZGRpdGlvbnMg
bWFjcm9zIHdpdGggY29kZSB0byBzZXQgYSBkaWZmZXJlbnQgYnVuZGxlCisgICAgICAgIGlkZW50
aWZpZXIgaW5kaWNhdGluZyB0aGF0IHdlIHdhbnQgdG8gcnVuIGFuIEFwcC1Cb3VuZCBEb21haW5z
IHRlc3QuCisKKyAgICAgICAgUmVtb3ZlICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSBjaGVj
ayBzbyB3ZSBydW4gdGhlc2UgdGVzdHMgb24gRVdTLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tOgorICAgICAgICAoY2xl
YW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MpOgorICAgICAgICAoaW5pdGlhbGl6
ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MpOgorCiAyMDIwLTA3LTI4ICBKb25hdGhh
biBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAogICAgICAgICBbd2Via2l0Y29yZXB5XSBB
ZGQgc3RyaW5nX3V0aWxzIChQYXJ0IDMpCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW0gYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW0KaW5kZXggZTc1
MDA5YjVlYTQ4YjU0ZThhNjYxMzNkMjU4Yzg2MzBmZTU0OWNkNy4uMzY5ZmZlNTIzMThlMDc0YjBm
NDRmMWNkMDYzNmUzODk5NmQzMTczNCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tCisrKyBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2VyUHJpdmFjeS5tbQpAQCAtNDUs
OSArNDUsNiBAQAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAotI2lmIFVTRShBUFBMRV9J
TlRFUk5BTF9TREspCi0jaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvSW5BcHBCcm93c2VyUHJpdmFj
eVRlc3RBZGRpdGlvbnMuaD4KLQogc3RhdGljIGJvb2wgaXNEb25lOwogCiBAaW50ZXJmYWNlIEFw
cEJvdW5kRG9tYWluRGVsZWdhdGUgOiBOU09iamVjdCA8V0tOYXZpZ2F0aW9uRGVsZWdhdGU+CkBA
IC0xMzEsMTQgKzEyOCwxNCBAQCBAZW5kCiBzdGF0aWMgdm9pZCBjbGVhblVwSW5BcHBCcm93c2Vy
UHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV2ViQ29yZTo6Y2xlYXJBcHBsaWNhdGlvbkJ1
bmRsZUlkZW50aWZpZXJUZXN0aW5nT3ZlcnJpZGUoKTsKLSAgICBJTl9BUFBfQlJPV1NFUl9QUklW
QUNZX0FERElUSU9OU18yCisgICAgV2ViQ29yZTo6c2V0QXBwbGljYXRpb25CdW5kbGVJZGVudGlm
aWVyKCJjb20uYXBwbGUuV2ViS2l0LlRlc3RXZWJLaXRBUEkiKTsKIH0KIAogc3RhdGljIHZvaWQg
aW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MoKQogewogICAgIFdURjo6
aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKICAgICBXZWJDb3JlOjpjbGVhckFwcGxpY2F0aW9uQnVu
ZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgpOwotICAgIElOX0FQUF9CUk9XU0VSX1BSSVZB
Q1lfQURESVRJT05TCisgICAgV2ViQ29yZTo6c2V0QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVy
KCJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElkZW50aWZpZXIiKTsKIH0KIAogVEVTVChJbkFwcEJy
b3dzZXJQcml2YWN5LCBOb25BcHBCb3VuZERvbWFpbkZhaWxlZFVzZXJTY3JpcHRBdFN0YXJ0KQpA
QCAtMTMzOCw2ICsxMzM1LDQgQEAgVEVTVChJbkFwcEJyb3dzZXJQcml2YWN5LCBBcHBCb3VuZEN1
c3RvbVNjaGVtZSkKICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7CiB9CiAK
LSNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotCiAjZW5kaWYgLy8gUExBVEZPUk0o
SU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCAyOWQxYWFlYmM4ZDRmM2NiNzgyYTIwZDgyOGJjZTQ0NzkxOGNh
MWE0Li42YmM1ZDQ0ZTRjMzU1NmVmOGFmOGQ4YTY3NDI2MzI5MDNlZWRhNTkyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjkgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBh
cHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBjb2RlIGZyb20g
V2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1Nz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2lv
cy13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgVGhlc2UgdGVzdHMgYXJlIG5vdyBleHBl
Y3RlZCB0byBwYXNzLgorCisyMDIwLTA3LTI4ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBw
bGUuY29tPgorCisgICAgICAgIEFkZCB0ZXN0IGV4cGVjdGF0aW9ucyBhbmQgYmFzZWxpbmVzIGZv
ciBpT1MgMTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNDcwOQorCisgICAgICAgIFVucmV2aWV3ZWQgdGVzdCBnYXJkZW5pbmcuCisKKyAgICAgICAg
QWRkIGEgZmV3IG1pc3NpbmcgYmFzZWxpbmVzIGZvciBmYWlsdXJlcyB0aGF0IHdlcmVuJ3QgY2F1
Z2h0IGJ5IEVXUworICAgICAgICBkdWUgdG8gcHJlLWV4aXN0aW5nIGZsYWt5IGV4cGVjdGF0aW9u
cy4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy0xMy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L21ldGhvZHMtYXN5bmMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9p
b3MtMTMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9tZXRob2RzLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vaW9zLTEzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
d29ya2Vycy9tZXRob2RzLWFzeW5jLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxh
dGZvcm0vaW9zLTEzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qvd29ya2Vycy9tZXRob2RzLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMjAtMDctMjggIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtp
QGFwcGxlLmNvbT4KIAogICAgICAgICBJbmRleGVkREIgYmluZGluZyB1dGlsaXRpZXMgbWlzcyBl
eGNlcHRpb24gY2hlY2tzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MtMTMv
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9tZXRob2RzLWFzeW5jLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2lvcy0xMy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L21ldGhv
ZHMtYXN5bmMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNjYTRlNDEyYzY0NWQ1ODU0MDJjMGNj
MjJjNmI3MGNiMDI4YjM0YTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3MtMTMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9tZXRob2RzLWFzeW5jLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDIzIEBACitUZXN0cyBmb3IgYnVnIDM4MTIgLSBHRVQgYW5kIFBPU1Qg
c2hvdWxkIG5vdCBiZSB0aGUgb25seSBIVFRQIG1ldGhvZHMgaW1wbGVtZW50ZWQgaW4gWE1MSHR0
cFJlcXVlc3QuCisKK0dFVCgiIik6IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxs
CitHRVQobnVsbCk6IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitHRVQoIjEy
MyIpOiBHRVQobnVsbCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorUE9TVCgiIik6IFBPU1Qo
MCBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitQT1NUKG51
bGwpOiBQT1NUKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IG51bGwKK1BPU1QoIjEyMyIpOiBQT1NU
KDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorUFVUKCIi
KTogUFVUKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAor
UFVUKG51bGwpOiBQVVQoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorUFVUKCIxMjMiKTog
UFVUKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorREVM
RVRFKCIiKTogREVMRVRFKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNl
dD1VVEYtOAorREVMRVRFKG51bGwpOiBERUxFVEUoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVs
bAorREVMRVRFKCIxMjMiKTogREVMRVRFKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47Y2hhcnNldD1VVEYtOAorSEVBRCgiIik6IEhFQUQoMCBieXRlcyksIENvbnRlbnQtVHlwZTog
bnVsbAorSEVBRChudWxsKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitIRUFE
KCIxMjMiKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitXS0ZPT0JBUigiIik6
IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYt
OAorV0tGT09CQVIobnVsbCk6IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IG51bGwK
K1dLRk9PQkFSKCIxMjMiKTogV0tGT09CQVIoMyBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9w
bGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0goIiIpOiBTRUFSQ0goMCBieXRlcyksIENvbnRlbnQt
VHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0gobnVsbCk6IFNFQVJDSCgwIGJ5
dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitTRUFSQ0goIjEyMyIpOiBTRUFSQ0goMyBieXRlcyks
IENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9pb3MtMTMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9tZXRob2Rz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy0xMy9odHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L21ldGhvZHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNjYTRlNDEyYzY0
NWQ1ODU0MDJjMGNjMjJjNmI3MGNiMDI4YjM0YTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3MtMTMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9tZXRob2RzLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDIzIEBACitUZXN0cyBmb3IgYnVnIDM4MTIgLSBHRVQgYW5k
IFBPU1Qgc2hvdWxkIG5vdCBiZSB0aGUgb25seSBIVFRQIG1ldGhvZHMgaW1wbGVtZW50ZWQgaW4g
WE1MSHR0cFJlcXVlc3QuCisKK0dFVCgiIik6IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBl
OiBudWxsCitHRVQobnVsbCk6IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitH
RVQoIjEyMyIpOiBHRVQobnVsbCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorUE9TVCgiIik6
IFBPU1QoMCBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitQ
T1NUKG51bGwpOiBQT1NUKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IG51bGwKK1BPU1QoIjEyMyIp
OiBQT1NUKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAor
UFVUKCIiKTogUFVUKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1V
VEYtOAorUFVUKG51bGwpOiBQVVQoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorUFVUKCIx
MjMiKTogUFVUKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYt
OAorREVMRVRFKCIiKTogREVMRVRFKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47
Y2hhcnNldD1VVEYtOAorREVMRVRFKG51bGwpOiBERUxFVEUoMCBieXRlcyksIENvbnRlbnQtVHlw
ZTogbnVsbAorREVMRVRFKCIxMjMiKTogREVMRVRFKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRl
eHQvcGxhaW47Y2hhcnNldD1VVEYtOAorSEVBRCgiIik6IEhFQUQoMCBieXRlcyksIENvbnRlbnQt
VHlwZTogbnVsbAorSEVBRChudWxsKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxs
CitIRUFEKCIxMjMiKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitXS0ZPT0JB
UigiIik6IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNl
dD1VVEYtOAorV0tGT09CQVIobnVsbCk6IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6
IG51bGwKK1dLRk9PQkFSKCIxMjMiKTogV0tGT09CQVIoMyBieXRlcyksIENvbnRlbnQtVHlwZTog
dGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0goIiIpOiBTRUFSQ0goMCBieXRlcyksIENv
bnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0gobnVsbCk6IFNFQVJD
SCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitTRUFSQ0goIjEyMyIpOiBTRUFSQ0goMyBi
eXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MtMTMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC93
b3JrZXJzL21ldGhvZHMtYXN5bmMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zLTEzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qvd29ya2Vycy9tZXRob2RzLWFzeW5jLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YjVjOTk5MGYzMDUwNjExYjk2ZDJiM2ZjMjA5ZDhjYjBh
NzMyMGIwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLTEzL2h0
dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qvd29ya2Vycy9tZXRob2RzLWFzeW5jLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDI0IEBACitHRVQgYW5kIFBPU1Qgc2hvdWxkIG5vdCBiZSB0aGUgb25seSBI
VFRQIG1ldGhvZHMgaW1wbGVtZW50ZWQgaW4gWE1MSHR0cFJlcXVlc3QgZm9yIFdvcmtlcnMuCisK
K0dFVCgiIik6IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitHRVQobnVsbCk6
IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitHRVQoIjEyMyIpOiBHRVQobnVs
bCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorUE9TVCgiIik6IFBPU1QoMCBieXRlcyksIENv
bnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitQT1NUKG51bGwpOiBQT1NUKDAg
Ynl0ZXMpLCBDb250ZW50LVR5cGU6IG51bGwKK1BPU1QoIjEyMyIpOiBQT1NUKDMgYnl0ZXMpLCBD
b250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorUFVUKCIiKTogUFVUKDAgYnl0
ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorUFVUKG51bGwpOiBQ
VVQoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorUFVUKCIxMjMiKTogUFVUKDMgYnl0ZXMp
LCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorREVMRVRFKCIiKTogREVM
RVRFKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorREVM
RVRFKG51bGwpOiBERUxFVEUoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorREVMRVRFKCIx
MjMiKTogREVMRVRFKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1V
VEYtOAorSEVBRCgiIik6IEhFQUQoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAorSEVBRChu
dWxsKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitIRUFEKCIxMjMiKTogSEVB
RCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitXS0ZPT0JBUigiIik6IFdLRk9PQkFSKDAg
Ynl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorV0tGT09CQVIo
bnVsbCk6IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IG51bGwKK1dLRk9PQkFSKCIx
MjMiKTogV0tGT09CQVIoMyBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0
PVVURi04CitTRUFSQ0goIiIpOiBTRUFSQ0goMCBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9w
bGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0gobnVsbCk6IFNFQVJDSCgwIGJ5dGVzKSwgQ29udGVu
dC1UeXBlOiBudWxsCitTRUFSQ0goIjEyMyIpOiBTRUFSQ0goMyBieXRlcyksIENvbnRlbnQtVHlw
ZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitET05FCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9pb3MtMTMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC93b3JrZXJzL21ldGhv
ZHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLTEzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3Qvd29ya2Vycy9tZXRob2RzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
YjVjOTk5MGYzMDUwNjExYjk2ZDJiM2ZjMjA5ZDhjYjBhNzMyMGIwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLTEzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
d29ya2Vycy9tZXRob2RzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI0IEBACitHRVQgYW5kIFBP
U1Qgc2hvdWxkIG5vdCBiZSB0aGUgb25seSBIVFRQIG1ldGhvZHMgaW1wbGVtZW50ZWQgaW4gWE1M
SHR0cFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKK0dFVCgiIik6IEdFVChudWxsIGJ5dGVzKSwgQ29u
dGVudC1UeXBlOiBudWxsCitHRVQobnVsbCk6IEdFVChudWxsIGJ5dGVzKSwgQ29udGVudC1UeXBl
OiBudWxsCitHRVQoIjEyMyIpOiBHRVQobnVsbCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVsbAor
UE9TVCgiIik6IFBPU1QoMCBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0
PVVURi04CitQT1NUKG51bGwpOiBQT1NUKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IG51bGwKK1BP
U1QoIjEyMyIpOiBQT1NUKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNl
dD1VVEYtOAorUFVUKCIiKTogUFVUKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47
Y2hhcnNldD1VVEYtOAorUFVUKG51bGwpOiBQVVQoMCBieXRlcyksIENvbnRlbnQtVHlwZTogbnVs
bAorUFVUKCIxMjMiKTogUFVUKDMgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47Y2hh
cnNldD1VVEYtOAorREVMRVRFKCIiKTogREVMRVRFKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRl
eHQvcGxhaW47Y2hhcnNldD1VVEYtOAorREVMRVRFKG51bGwpOiBERUxFVEUoMCBieXRlcyksIENv
bnRlbnQtVHlwZTogbnVsbAorREVMRVRFKCIxMjMiKTogREVMRVRFKDMgYnl0ZXMpLCBDb250ZW50
LVR5cGU6IHRleHQvcGxhaW47Y2hhcnNldD1VVEYtOAorSEVBRCgiIik6IEhFQUQoMCBieXRlcyks
IENvbnRlbnQtVHlwZTogbnVsbAorSEVBRChudWxsKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1U
eXBlOiBudWxsCitIRUFEKCIxMjMiKTogSEVBRCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxs
CitXS0ZPT0JBUigiIik6IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47Y2hhcnNldD1VVEYtOAorV0tGT09CQVIobnVsbCk6IFdLRk9PQkFSKDAgYnl0ZXMpLCBDb250
ZW50LVR5cGU6IG51bGwKK1dLRk9PQkFSKCIxMjMiKTogV0tGT09CQVIoMyBieXRlcyksIENvbnRl
bnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0goIiIpOiBTRUFSQ0goMCBi
eXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitTRUFSQ0gobnVs
bCk6IFNFQVJDSCgwIGJ5dGVzKSwgQ29udGVudC1UeXBlOiBudWxsCitTRUFSQ0goIjEyMyIpOiBT
RUFSQ0goMyBieXRlcyksIENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04CitE
T05FCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggZTM1ZTFmNWY5ZmFhZGI5OGIwM2ZiZmIxNGVhMzFlMGNkMDU1MzQ2ZS4uODk4OTQzOTY2MTdh
OGQ5MWM0YjBiNDYxMmZjNWMxMWI1MGEyMWM2ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTc5NywzICsxNzk3LDUgQEAgd2Via2l0Lm9y
Zy9iLzIxNDQ2OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVz
L2NoLXVuaXQtMDAyLmgKIHdlYmtpdC5vcmcvYi8yMTQ1MTIgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvZ2VvbWV0cnkvRE9NTWF0cml4MkRJbml0LXZhbGlkYXRlLWZpeHVwLmh0
bWwgWyBQYXNzIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMjE0NTk4IGZhc3Qvc2Nyb2xsaW5n
L2lvcy9hdXRvc2Nyb2xsLWlucHV0LXdoZW4tdmVyeS16b29tZWQuaHRtbCBbIFBhc3MgRmFpbHVy
ZSBdCisKK2h0dHAvdGVzdHMvaW4tYXBwLWJyb3dzZXItcHJpdmFjeS8gWyBQYXNzIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405422</attachid>
            <date>2020-07-28 15:49:30 -0700</date>
            <delta_ts>2020-07-29 11:11:33 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-214889-20200728154930.patch</filename>
            <type>text/plain</type>
            <size>36551</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0OTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1Nzc2YTEwMWFkNzRkOGJk
MTFlOTZmNGUzOWViOWNjMjBjNmFhMzkuLjJkNzhiNWMyYTdlNGM0NTFhZDQxNTQ0ZjA2ZjcwMzM5
YTg4YzVhZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgdGhpcyBpcyBqdXN0IGNvZGUgbWlncmF0aW9uIGFuZCB3
aWxsIGJlIHRlc3RlZAorICAgICAgICBieSBleGlzdGluZyBBcHAtQm91bmQgRG9tYWlucyB0ZXN0
cy4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OmFjdGl2YXRlU2Vzc2lvbkNsZWFudXApOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2spOgorICAg
ICAgICAqIFNoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oOiBBZGRlZC4KKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW06IEFkZGVkLgor
ICAgICAgICBIb2xkcyBhbGwgZnVuY3Rpb25zIHJlbGF0ZWQgdG8gZnVsbCBicm93c2VyIGNoZWNr
cyBhbmQKKyAgICAgICAgQXBwLUJvdW5kIERvbWFpbnMuCisKKyAgICAgICAgKFdlYktpdDo6c2hv
dWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nlcik6CisgICAgICAgIChXZWJLaXQ6OmdldEFwcEJvdW5k
RG9tYWluc1Rlc3RpbmcpOgorICAgICAgICBUaGVzZSBmdW5jdGlvbnMgYWxsb3cgdXMgdG8gdHJl
YXQgb3VyIHRlc3QgcnVubmVycyBhcyBmdWxsIGJyb3dzZXJzCisgICAgICAgIHdoaWxlIHRyaWdn
ZXJpbmcgbm9uLWJyb3dzZXIgbW9kZSBmb3IgdGVzdGluZyBvdGhlciBBcHAtQm91bmQgRG9tYWlu
cworICAgICAgICBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgIChXZWJLaXQ6OmlzSW5XZWJLaXRD
aGlsZFByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVU
cmFja2luZ1Blcm1pc3Npb24pOgorICAgICAgICAoV2ViS2l0OjpkZXRlcm1pbmVJVFBTdGF0ZUlu
dGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGUpOgorICAgICAgICAo
V2ViS2l0Ojpkb2VzQXBwSGF2ZUlUUEVuYWJsZWQpOgorICAgICAgICAoV2ViS2l0Ojpkb2VzUGFy
ZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6aGFzUHJvaGliaXRl
ZFVzYWdlU3RyaW5ncyk6CisgICAgICAgIChXZWJLaXQ6OmlzUGFyZW50UHJvY2Vzc0FGdWxsV2Vi
QnJvd3Nlcik6CisgICAgICAgIChXZWJLaXQ6OmlzRnVsbFdlYkJyb3dzZXIpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcDoKKyAgICAgICAgKEFQSTo6SFRU
UENvb2tpZVN0b3JlOjpmaWx0ZXJBcHBCb3VuZENvb2tpZXMpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAoQVBJOjpQYWdlQ29uZmln
dXJhdGlvbjo6UGFnZUNvbmZpZ3VyYXRpb24pOgorICAgICAgICAoKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6V2ViUHJv
Y2Vzc1Bvb2wpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29y
a1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2Vi
UHJvY2Vzcyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6YWRk
VGVzdERvbWFpbnMgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpl
bnN1cmVBcHBCb3VuZERvbWFpbnMgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRl
RGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisKIDIwMjAtMDctMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNp
YUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW1dQRV0gU3VwcG9ydCBmb3IgYmFja2Ryb3At
ZmlsdGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtTZXNzaW9uQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29h
L05ldHdvcmtTZXNzaW9uQ29jb2EubW0KaW5kZXggNzhmZDJkMjM1ZThjNjhiNTFkMGUwMmU4NWY4
OTE3YzQyNTk1YTVhOS4uOTMxYjk1NjNiZjVjNzI1MjkxNGRmMGQxNTI1ZjBmNjg5ZmNkNDQzYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vz
c2lvbkNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0
d29ya1Nlc3Npb25Db2NvYS5tbQpAQCAtMjksNiArMjksNyBAQAogI2ltcG9ydCAiQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2VEaXNwb3NpdGlvbi5oIgogI2ltcG9ydCAiQXV0aGVudGljYXRpb25NYW5h
Z2VyLmgiCiAjaW1wb3J0ICJEYXRhUmVmZXJlbmNlLmgiCisjaW1wb3J0ICJEZWZhdWx0V2ViQnJv
d3NlckNoZWNrcy5oIgogI2ltcG9ydCAiRG93bmxvYWQuaCIKICNpbXBvcnQgIkxlZ2FjeUN1c3Rv
bVByb3RvY29sTWFuYWdlci5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgpAQCAtNjMsNyArNjQsNiBA
QAogI2ltcG9ydCA8V2ViS2l0QWRkaXRpb25zL05ldHdvcmtTZXNzaW9uQ29jb2FBZGRpdGlvbnMu
aD4KICNlbHNlCiAjZGVmaW5lIE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElPTlNfMQotI2Rl
ZmluZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzIgdHJ1ZQogI2VuZGlmCiAKICNp
bXBvcnQgIkRldmljZU1hbmFnZW1lbnRTb2Z0TGluay5oIgpAQCAtMTE1Miw2ICsxMTUyLDI5IEBA
IHZvaWQgU2Vzc2lvbldyYXBwZXI6OmluaXRpYWxpemUoTlNVUkxTZXNzaW9uQ29uZmlndXJhdGlv
biAqY29uZmlndXJhdGlvbiwgTmV0d29yCiAgICAgc2Vzc2lvbiA9IFtOU1VSTFNlc3Npb24gc2Vz
c2lvbldpdGhDb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24gZGVsZWdhdGU6ZGVsZWdhdGUuZ2V0
KCkgZGVsZWdhdGVRdWV1ZTpbTlNPcGVyYXRpb25RdWV1ZSBtYWluUXVldWVdXTsKIH0KIAorI2lm
IEhBVkUoU0VTU0lPTl9DTEVBTlVQKQorc3RhdGljIHZvaWQgYWN0aXZhdGVTZXNzaW9uQ2xlYW51
cChOZXR3b3JrU2Vzc2lvbkNvY29hJiBzZXNzaW9uLCBjb25zdCBOZXR3b3JrU2Vzc2lvbkNyZWF0
aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKK3sKKyNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQ
SE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApIHx8IChQTEFURk9STShNQUMp
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwKQorICAgIC8vIERv
bid0IG92ZXJyaWRlIGFuIGV4cGxpY2l0bHkgc2V0IHZhbHVlLgorICAgIGlmIChwYXJhbWV0ZXJz
LnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0
KQorICAgICAgICByZXR1cm47CisKKyNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1Ip
CisgICAgYXV0byBwYXJlbnRBdWRpdFRva2VuID0gc2Vzc2lvbi5uZXR3b3JrUHJvY2VzcygpLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPmdldEF1ZGl0VG9rZW4oKTsKKyAgICBSRUxFQVNFX0FT
U0VSVChwYXJlbnRBdWRpdFRva2VuKTsgLy8gVGhpcyBzaG91bGQgYmUgaW1wb3NzaWJsZS4KKwor
ICAgIGJvb2wgaXRwRW5hYmxlZCA9IGRvZXNQYXJlbnRQcm9jZXNzSGF2ZUlUUEVuYWJsZWQocGFy
ZW50QXVkaXRUb2tlbik7CisgICAgYm9vbCBwYXNzZWRFbmFibGVkU3RhdGUgPSBzZXNzaW9uLmlz
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKTsKKworICAgIGlmIChpdHBFbmFibGVkICE9
IHBhc3NlZEVuYWJsZWRTdGF0ZSkKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJQYXNzZWQgSVRQIGVu
YWJsZWQgc3RhdGUgKCVkKSBkb2VzIG5vdCBtYXRjaCBUQ0Mgc2V0dGluZyAoJWQpXG4iLCBpdHBF
bmFibGVkLCBwYXNzZWRFbmFibGVkU3RhdGUpOworICAgIHNlc3Npb24uc2V0UmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0VuYWJsZWQocGFzc2VkRW5hYmxlZFN0YXRlKTsKKyNlbmRpZgorI2VuZGlmCit9
CisjZW5kaWYKKwogTmV0d29ya1Nlc3Npb25Db2NvYTo6TmV0d29ya1Nlc3Npb25Db2NvYShOZXR3
b3JrUHJvY2VzcyYgbmV0d29ya1Byb2Nlc3MsIE5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0
ZXJzJiYgcGFyYW1ldGVycykKICAgICA6IE5ldHdvcmtTZXNzaW9uKG5ldHdvcmtQcm9jZXNzLCBw
YXJhbWV0ZXJzKQogICAgICwgbV9ib3VuZEludGVyZmFjZUlkZW50aWZpZXIocGFyYW1ldGVycy5i
b3VuZEludGVyZmFjZUlkZW50aWZpZXIpCkBAIC0xMjkyLDcgKzEzMTUsNyBAQCB2b2lkIE5ldHdv
cmtTZXNzaW9uQ29jb2E6OmluaXRpYWxpemVFcGhlbWVyYWxTdGF0ZWxlc3NTZXNzaW9uKE5hdmln
YXRpbmdUb0FwcEJvdQogU2Vzc2lvbldyYXBwZXImIE5ldHdvcmtTZXNzaW9uQ29jb2E6OnNlc3Np
b25XcmFwcGVyRm9yVGFzayhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzUG9saWN5IHN0b3JlZENyZWRlbnRpYWxzUG9saWN5
LCBPcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBC
b3VuZERvbWFpbikKIHsKICAgICBhdXRvIHNob3VsZEJlQ29uc2lkZXJlZEFwcEJvdW5kID0gaXNO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA/ICppc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWlu
IDogTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW46OlllczsKLSAgICBpZiAoTkVUV09SS19TRVNT
SU9OX0NPQ09BX0FERElUSU9OU18yKQorICAgIGlmIChpc1BhcmVudFByb2Nlc3NBRnVsbFdlYkJy
b3dzZXIobmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5nZXRBdWRp
dFRva2VuKCkpKQogICAgICAgICBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IE5hdmlnYXRp
bmdUb0FwcEJvdW5kRG9tYWluOjpObzsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNU
SUNTKQogICAgIGlmIChhdXRvKiBzdG9yYWdlU2Vzc2lvbiA9IG5ldHdvcmtTdG9yYWdlU2Vzc2lv
bigpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2Vi
QnJvd3NlckNoZWNrcy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJy
b3dzZXJDaGVja3MuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45N2MyZDUwOTc5MTg0NzNhMzU2MDNiYTdiYTQ4ZmQ3
ZTQzZjEzYmVmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2Ev
RGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvc3BpL2Rhcndpbi9YUENTUEkuaD4KKyNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3Mg
UmVnaXN0cmFibGVEb21haW47Cit9CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitib29sIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3MoKTsKK09wdGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpSZWdpc3Ry
YWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoY29uc3QgU3RyaW5nJik7Citi
b29sIHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoY29uc3QgU3RyaW5nJiBidW5kbGVJRCk7
Cit2b2lkIGRldGVybWluZUlUUFN0YXRlKCk7Citib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
OworYm9vbCBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rv
a2VuX3Q+KTsKK2Jvb2wgaXNGdWxsV2ViQnJvd3NlcigpOworYm9vbCBpc1BhcmVudFByb2Nlc3NB
RnVsbFdlYkJyb3dzZXIoT3B0aW9uYWw8YXVkaXRfdG9rZW5fdD4pOworCit9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRX
ZWJCcm93c2VyQ2hlY2tzLm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdl
YkJyb3dzZXJDaGVja3MubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmFkYjQ2YjkyNzE4ZTkwMjVmZjRiZTMwYTE0
Mjk2NTQyNWMyMmQ1MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nv
Y29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tCkBAIC0wLDAgKzEsMjQ1IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJEZWZhdWx0V2ViQnJvd3NlckNoZWNr
cy5oIgorCisjaW1wb3J0ICJUQ0NTUEkuaCIKKyNpbXBvcnQgIlZlcnNpb25DaGVja3MuaCIKKyNp
bXBvcnQgPFdlYkNvcmUvUmVnaXN0cmFibGVEb21haW4uaD4KKyNpbXBvcnQgPFdlYkNvcmUvUnVu
dGltZUFwcGxpY2F0aW9uQ2hlY2tzLmg+CisjaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgorI2ltcG9y
dCA8d3RmL1J1bkxvb3AuaD4KKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgorI2ltcG9ydCA8
d3RmL2NvY29hL0VudGl0bGVtZW50cy5oPgorI2ltcG9ydCA8d3RmL3RleHQvU3RyaW5nSGFzaC5o
PgorCitTT0ZUX0xJTktfUFJJVkFURV9GUkFNRVdPUksoVENDKQorU09GVF9MSU5LKFRDQywgVEND
QWNjZXNzUHJlZmxpZ2h0LCBUQ0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQsIChDRlN0cmluZ1JlZiBz
ZXJ2aWNlLCBDRkRpY3Rpb25hcnlSZWYgb3B0aW9ucyksIChzZXJ2aWNlLCBvcHRpb25zKSkKK1NP
RlRfTElOSyhUQ0MsIFRDQ0FjY2Vzc1ByZWZsaWdodFdpdGhBdWRpdFRva2VuLCBUQ0NBY2Nlc3NQ
cmVmbGlnaHRSZXN1bHQsIChDRlN0cmluZ1JlZiBzZXJ2aWNlLCBhdWRpdF90b2tlbl90IHRva2Vu
LCBDRkRpY3Rpb25hcnlSZWYgb3B0aW9ucyksIChzZXJ2aWNlLCB0b2tlbiwgb3B0aW9ucykpCitT
T0ZUX0xJTktfQ09OU1RBTlQoVENDLCBrVENDU2VydmljZVdlYktpdEludGVsbGlnZW50VHJhY2tp
bmdQcmV2ZW50aW9uLCBDRlN0cmluZ1JlZikKKworCituYW1lc3BhY2UgV2ViS2l0IHsKKworc3Rh
dGljIGJvb2wgaXNGdWxsV2ViQnJvd3Nlcihjb25zdCBTdHJpbmcmKTsKKworYm9vbCBzaG91bGRC
ZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpCit7CisgICAgcmV0
dXJuIGJ1bmRsZUlEID09ICJjb20uYXBwbGUuV2ViS2l0LlRlc3RXZWJLaXRBUEkiX3MgfHwgYnVu
ZGxlSUQgPT0gImNvbS5hcHBsZS5XZWJLaXQuV2ViS2l0VGVzdFJ1bm5lciJfczsKK30KKworT3B0
aW9uYWw8VmVjdG9yPFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPj4gZ2V0QXBwQm91bmREb21h
aW5zVGVzdGluZyhjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIGlmIChidW5kbGVJRC5p
c051bGwoKSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgIHN0YXRpYyBhdXRv
IGFwcEJvdW5kRG9tYWluTGlzdCA9IG1ha2VOZXZlckRlc3Ryb3llZChIYXNoTWFwPFN0cmluZywg
VmVjdG9yPFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPj4geworICAgICAgICB7ImluQXBwQnJv
d3NlclByaXZhY3lUZXN0SWRlbnRpZmllciJfcywgVmVjdG9yPFdlYkNvcmU6OlJlZ2lzdHJhYmxl
RG9tYWluPiB7IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9t
UmVnaXN0cmFibGVEb21haW5TdHJpbmcoIjEyNy4wLjAuMSIpIH19LAorICAgIH0pOworCisgICAg
YXV0byBhcHBCb3VuZERvbWFpbkl0ZXIgPSBhcHBCb3VuZERvbWFpbkxpc3QtPmZpbmQoYnVuZGxl
SUQpOworICAgIGlmIChhcHBCb3VuZERvbWFpbkl0ZXIgIT0gYXBwQm91bmREb21haW5MaXN0LT5l
bmQoKSkKKyAgICAgICAgcmV0dXJuIGFwcEJvdW5kRG9tYWluSXRlci0+dmFsdWU7CisKKyAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OworfQorCisjaWYgQVNTRVJUX0VOQUJMRUQKK3N0YXRpYyBib29s
IGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKQoreworICAgIHN0YXRpYyBib29sIGlzSW5TdWJQcm9j
ZXNzOworCisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAgIGRpc3BhdGNoX29u
Y2UoJm9uY2UsIF57CisgICAgICAgIE5TU3RyaW5nICpidW5kbGVJZGVudGlmaWVyID0gW1tOU0J1
bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXTsKKyAgICAgICAgaXNJblN1YlByb2Nl
c3MgPSBbYnVuZGxlSWRlbnRpZmllciBoYXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LldlYkNv
bnRlbnQiXQorICAgICAgICAgICAgfHwgW2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29t
LmFwcGxlLldlYktpdC5OZXR3b3JraW5nIl0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlm
aWVyIGhhc1ByZWZpeDpAImNvbS5hcHBsZS5XZWJLaXQuR1BVIl07CisgICAgfSk7CisKKyAgICBy
ZXR1cm4gaXNJblN1YlByb2Nlc3M7Cit9CisjZW5kaWYKKworZW51bSBjbGFzcyBJVFBTdGF0ZSA6
IHVpbnQ4X3QgeworICAgIFVuaW5pdGlhbGl6ZWQsCisgICAgSW5pdGlhbGl6aW5nLAorICAgIEVu
YWJsZWQsCisgICAgRGlzYWJsZWQKK307CisKK3N0YXRpYyBzdGQ6OmF0b21pYzxJVFBTdGF0ZT4g
Z19jdXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZDsKKworc3RhdGljIGJv
b2wgaGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRlVHJhY2tpbmdQZXJtaXNzaW9uKCkKK3sKKyAgICBB
U1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgc3RkOjphdG9t
aWM8Ym9vbD4gaGFzUmVxdWVzdGVkQ3Jvc3NXZWJzaXRlVHJhY2tpbmdQZXJtaXNzaW9uID0gW1tO
U0J1bmRsZSBtYWluQnVuZGxlXSBvYmplY3RGb3JJbmZvRGljdGlvbmFyeUtleTpAIk5TQ3Jvc3NX
ZWJzaXRlVHJhY2tpbmdVc2FnZURlc2NyaXB0aW9uIl07CisgICAgcmV0dXJuIGhhc1JlcXVlc3Rl
ZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbjsKK30KKworc3RhdGljIGJvb2wgZGV0ZXJt
aW5lSVRQU3RhdGVJbnRlcm5hbChib29sIGFwcFdhc0xpbmtlZE9uT3JBZnRlciwgY29uc3QgU3Ry
aW5nJiBidW5kbGVJZGVudGlmaWVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkp
OworICAgIEFTU0VSVCghaXNJbldlYktpdENoaWxkUHJvY2VzcygpKTsKKworICAgIGlmICghYXBw
V2FzTGlua2VkT25PckFmdGVyKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoIWlz
RnVsbFdlYkJyb3dzZXIoYnVuZGxlSWRlbnRpZmllcikgJiYgIWhhc1JlcXVlc3RlZENyb3NzV2Vi
c2l0ZVRyYWNraW5nUGVybWlzc2lvbigpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRD
Q0FjY2Vzc1ByZWZsaWdodFJlc3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworI2lmIChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDE0MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMTAwMDApCisgICAgcmVzdWx0ID0gVENDQWNjZXNzUHJlZmxpZ2h0KGdldGtU
Q0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdlbnRUcmFja2luZ1ByZXZlbnRpb24oKSwgbnVsbHB0cik7
CisjZW5kaWYKKyAgICByZXR1cm4gcmVzdWx0ICE9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7
Cit9CisKK3N0YXRpYyBkaXNwYXRjaF9xdWV1ZV90IGdfaXRwUXVldWU7CisKK3ZvaWQgZGV0ZXJt
aW5lSVRQU3RhdGUoKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgaWYg
KGdfY3VycmVudElUUFN0YXRlICE9IElUUFN0YXRlOjpVbmluaXRpYWxpemVkKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IElUUFN0YXRlOjpJbml0aWFsaXppbmc7
CisgICAgYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIgPSBsaW5rZWRPbk9yQWZ0ZXIoU0RLVmVy
c2lvbjo6Rmlyc3RXaXRoU2Vzc2lvbkNsZWFudXBCeURlZmF1bHQsIEFzc3VtZVNhZmFyaUlzQWx3
YXlzTGlua2VkT25BZnRlcjo6WWVzKTsKKworICAgIGdfaXRwUXVldWUgPSBkaXNwYXRjaF9xdWV1
ZV9jcmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuaXRwQ2hlY2tRdWV1ZSIsIE5VTEwpOworCisgICAg
ZGlzcGF0Y2hfYXN5bmMoZ19pdHBRdWV1ZSwgW2FwcFdhc0xpbmtlZE9uT3JBZnRlciwgYnVuZGxl
SWRlbnRpZmllciA9IFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpLmlzb2xh
dGVkQ29weSgpXSB7CisgICAgICAgIGdfY3VycmVudElUUFN0YXRlID0gZGV0ZXJtaW5lSVRQU3Rh
dGVJbnRlcm5hbChhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRsZUlkZW50aWZpZXIpID8gSVRQ
U3RhdGU6OkVuYWJsZWQgOiBJVFBTdGF0ZTo6RGlzYWJsZWQ7CisKKyAgICAgICAgZGlzcGF0Y2hf
YXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAgICAgICAgIGRpc3BhdGNo
X3JlbGVhc2UoZ19pdHBRdWV1ZSk7CisgICAgICAgICAgICBnX2l0cFF1ZXVlID0gbnVsbHB0cjsK
KyAgICAgICAgfSk7CisgICAgfSk7Cit9CisKK2Jvb2wgZG9lc0FwcEhhdmVJVFBFbmFibGVkKCkK
K3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1
bkxvb3A6OmlzTWFpbigpKTsKKyAgICBpZiAoZ19jdXJyZW50SVRQU3RhdGUgPiBJVFBTdGF0ZTo6
SW5pdGlhbGl6aW5nKQorICAgICAgICByZXR1cm4gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3Rh
dGU6OkVuYWJsZWQ7CisKKyAgICBSRUxFQVNFX0FTU0VSVChnX2l0cFF1ZXVlKTsKKworICAgIF9f
YmxvY2sgYm9vbCBpc0lUUEVuYWJsZWQ7CisgICAgZGlzcGF0Y2hfc3luYyhnX2l0cFF1ZXVlLCBe
eworICAgICAgICBpc0lUUEVuYWJsZWQgPSBnX2N1cnJlbnRJVFBTdGF0ZSA9PSBJVFBTdGF0ZTo6
RW5hYmxlZDsKKyAgICB9KTsKKyAgICByZXR1cm4gaXNJVFBFbmFibGVkOworfQorCitib29sIGRv
ZXNQYXJlbnRQcm9jZXNzSGF2ZUlUUEVuYWJsZWQoT3B0aW9uYWw8YXVkaXRfdG9rZW5fdD4gYXVk
aXRUb2tlbikKK3sKKyAgICBBU1NFUlQoaXNJbldlYktpdENoaWxkUHJvY2VzcygpKTsKKyAgICBB
U1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgaWYgKCFpc1BhcmVudFByb2Nlc3NBRnVs
bFdlYkJyb3dzZXIoYXVkaXRUb2tlbikpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgVEND
QWNjZXNzUHJlZmxpZ2h0UmVzdWx0IHJlc3VsdCA9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7
CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
Pj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JF
UVVJUkVEID49IDExMDAwMCkKKyAgICBpZiAoYXVkaXRUb2tlbikKKyAgICAgICAgcmVzdWx0ID0g
VENDQWNjZXNzUHJlZmxpZ2h0V2l0aEF1ZGl0VG9rZW4oZ2V0a1RDQ1NlcnZpY2VXZWJLaXRJbnRl
bGxpZ2VudFRyYWNraW5nUHJldmVudGlvbigpLCBhdWRpdFRva2VuLnZhbHVlKCksIG51bGxwdHIp
OworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVk
OworfQorCitzdGF0aWMgc3RkOjphdG9taWM8Ym9vbD4gaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9
IGZhbHNlOworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCkKK3sKKyAgICBBU1NFUlQo
IWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBoYXNQcm9oaWJp
dGVkVXNhZ2VTdHJpbmdzID0gZmFsc2U7CisKKyAgICBpZiAoaGFzQ2hlY2tlZFVzYWdlU3RyaW5n
cykKKyAgICAgICAgcmV0dXJuIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7CisKKyAgICBOU0Rp
Y3Rpb25hcnkgKmluZm9EaWN0aW9uYXJ5ID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBpbmZvRGlj
dGlvbmFyeV07CisgICAgUkVMRUFTRV9BU1NFUlQoaW5mb0RpY3Rpb25hcnkpOworCisgICAgLy8g
U2VlIDxyZGFyOi8vcHJvYmxlbS81OTk3OTQ2OD4gZm9yIGRldGFpbHMgYWJvdXQgaG93IHRoaXMg
bGlzdCB3YXMgc2VsZWN0ZWQuCisgICAgYXV0byBwcm9oaWJpdGVkU3RyaW5ncyA9IEBbCisgICAg
ICAgIEAiTlNIb21lS2l0VXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhB
bHdheXNVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVz
Y3JpcHRpb24iLAorICAgICAgICBAIk5TSGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAg
ICAgICAgQCJOU0hlYWx0aFVwZGF0ZVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9j
YXRpb25BbHdheXNVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlz
QW5kV2hlbkluVXNlVXNhZ2VEZXNjcmlwdGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmlu
ZyAqcHJvaGliaXRlZFN0cmluZyA6IHByb2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChb
aW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAg
ICAgICBTdHJpbmcgbWVzc2FnZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFw
cCBCcm93c2VyIFByaXZhY3ldICVAIHVzZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwg
W1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmlu
Z107CisgICAgICAgICAgICBXVEZMb2dBbHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAg
ICAgICAgICAgIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRy
dWU7CisgICAgcmV0dXJuIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQ
YXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0
VG9rZW4pCit7CisgICAgQVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVM
RUFTRV9BU1NFUlQoYXVkaXRUb2tlbik7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3Nl
cjsKKworICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNl
KCZvbmNlLCBeeworICAgICAgICBmdWxsV2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQo
YXVkaXRUb2tlbi52YWx1ZSgpLCAiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOwor
ICAgIH0pOworCisgICAgcmV0dXJuIGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFz
RnVsbEJyb3dzZXIoV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQor
CitzdGF0aWMgYm9vbCBpc0Z1bGxXZWJCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRp
ZmllcikKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBz
dGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJj
b20uYXBwbGUuZGV2ZWxvcGVyLndlYi1icm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJy
b3dzZXIgfHwgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsK
K30KKworYm9vbCBpc0Z1bGxXZWJCcm93c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRD
aGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJl
dHVybiBpc0Z1bGxXZWJCcm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmll
cigpKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEz
NWNmMmMyNDNiMTU1OTQwNDY1OWM5YjUxM2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4
ZGYwMGE0Nzc5OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElI
VFRQQ29va2llU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElI
VFRQQ29va2llU3RvcmUuY3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIkFQSUhUVFBDb29raWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKKyNpbmNsdWRlICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNp
bmNsdWRlICJXZWJDb29raWVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9v
bC5oIgogI2luY2x1ZGUgIldlYnNpdGVEYXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAj
aW5jbHVkZSA8V2ViQ29yZS9IVFRQQ29va2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9T
REspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5o
PgotI2Vsc2UKLSNkZWZpbmUgSU1QTEVNRU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxF
RCBmYWxzZQotI2VuZGlmCi0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBB
UEkgewpAQCAtNjYsNyArNjQsNyBAQCB2b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91
bmRDb29raWVzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3Rv
cjxXZWJDb3JlOjpDb29raWU+IGFwcEJvdW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIG1fb3duaW5nRGF0YVN0b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMs
IGFwcEJvdW5kQ29va2llcyA9IFdURk1vdmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFi
bGUgewotICAgICAgICBpZiAoIWRvbWFpbnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBf
QlJPV1NFUl9QUklWQUNZX0VOQUJMRUQpIHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHko
KSAmJiAhaXNGdWxsV2ViQnJvd3NlcigpKSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tp
ZSA6IGNvb2tpZXMpIHsKICAgICAgICAgICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJD
b3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRv
bWFpbikpKQogICAgICAgICAgICAgICAgICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tp
ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZp
Z3VyYXRpb24uY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1
cmF0aW9uLmNwcAppbmRleCA0MzFmY2VmNzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5
Li43MDI3OGZiZGUwMmY3M2RlZDQwZDc5M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAg
LTM1LDEyICszNSw2IEBACiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1
ZGUgIldlYlVzZXJDb250ZW50Q29udHJvbGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5U
RVJOQUxfU0RLKQotI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFk
ZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwot
I2VuZGlmCi0KICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJ
QXBwbGljYXRpb25NYW5pZmVzdC5oIgogI2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdl
Q29uZmlndXJhdGlvbj4gUGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25m
aWd1cmF0aW9uOjpQYWdlQ29uZmlndXJhdGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJ
T05TCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4
IDJiYWQxZDZlNTM4ODYxMjU0NzJjNjBlOTE0ODcxZjgyMTg1ZTRlYjMuLjZlNjEwOTUzZTIzOTI0
YWQ2NzgwOTBiYjI3MTcxZTQ1YzExOTIxYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcApAQCAtMjg4LDEzICsyODgsOCBAQAogI2luY2x1ZGUgIk1lZGlhVXNhZ2VN
YW5hZ2VyLmgiCiAjZW5kaWYKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVk
ZSA8V2ViS2l0QWRkaXRpb25zL1dlYlBhZ2VQcm94eUFkZGl0aW9ucy5oPgotI2Vsc2UKLXN0YXRp
YyBib29sIGlzRnVsbFdlYkJyb3dzZXIoKSB7IHJldHVybiB0cnVlOyB9Ci0jaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKLXN0YXRpYyBib29sIGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MoKSB7IHJl
dHVybiBmYWxzZTsgfQotI2VuZGlmCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiRGVm
YXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNlbmRpZgogCiAvLyBUaGlzIGNvbnRyb2xzIHdoYXQg
c3RyYXRlZ3kgd2UgdXNlIGZvciBtb3VzZSB3aGVlbCBjb2FsZXNjaW5nLgpAQCAtMTM5Niw4ICsx
MzkxLDEwIEBAIFJlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IFdlYlBhZ2VQcm94eTo6bG9hZERhdGEo
Y29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBkYXRhLCBjCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZf
QUxMT1dFRChMb2FkaW5nLCAibG9hZERhdGE6Iik7CiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZ
KQogICAgIGlmIChNSU1FVHlwZSA9PSAidGV4dC9odG1sIl9zICYmICFpc0Z1bGxXZWJCcm93c2Vy
KCkpCiAgICAgICAgIG1fbGltaXRzTmF2aWdhdGlvbnNUb0FwcEJvdW5kRG9tYWlucyA9IHRydWU7
CisjZW5kaWYKIAogICAgIGlmIChtX2lzQ2xvc2VkKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lG
X0FMTE9XRUQoTG9hZGluZywgImxvYWREYXRhOiBwYWdlIGlzIGNsb3NlZCIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDkyODFlMWNlNDMyOWIzNDJj
MzNhZDg5MDdlMzg3MzE2YmZkZjAyMWQuLmI4ODA4MGI5Njc4ODI3ZmZkZWNiYmY3ZjEwZmNiZTUx
MGMxNWI5NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAK
QEAgLTEyNiw2ICsxMjYsNyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNs
dWRlICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2luY2x1ZGUgIlZlcnNpb25DaGVja3Mu
aCIKICNpbmNsdWRlIDxXZWJDb3JlL0dhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9ISURHYW1lcGFkUHJvdmlkZXIuaD4KQEAgLTE0MSwxNSArMTQyLDYg
QEAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+CiAjZW5kaWYKIAotI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1dlYlBy
b2Nlc3NQb29sQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FE
RElUSU9OUwotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18yCi0jZGVmaW5lIFdF
Ql9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJ
VElPTlNfNAotI2VuZGlmCi0KICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0coY2hh
bm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29s
OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVM
RUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5u
ZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNk
ZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChjaGFubmVsLCBmbXQs
IC4uLikgUkVMRUFTRV9MT0dfSUYoc2Vzc2lvbklELmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgp
LCBjaGFubmVsLCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdT
X18pCkBAIC0yNTUsNyArMjQ3LDYgQEAgV2ViUHJvY2Vzc1Bvb2w6OldlYlByb2Nlc3NQb29sKEFQ
STo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogI2VuZGlmCiAgICAg
LCBtX2Fsd2F5c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eShtX2NvbmZpZ3VyYXRpb24tPmFsd2F5
c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eSgpKQogICAgICwgbV9zaG91bGRUYWtlVUlCYWNrZ3Jv
dW5kQXNzZXJ0aW9uKG1fY29uZmlndXJhdGlvbi0+c2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2Vy
dGlvbigpKQotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TCiAgICAgLCBtX3VzZXJPYnNl
cnZhYmxlUGFnZUNvdW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNz
U3VwcHJlc3Npb25TdGF0ZSgpOyB9KQogICAgICwgbV9wcm9jZXNzU3VwcHJlc3Npb25EaXNhYmxl
ZEZvclBhZ2VDb3VudGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgdXBkYXRlUHJvY2Vzc1N1
cHByZXNzaW9uU3RhdGUoKTsgfSkKICAgICAsIG1faGlkZGVuUGFnZVRocm90dGxpbmdBdXRvSW5j
cmVhc2VzQ291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IG1faGlkZGVuUGFnZVRocm90
dGxpbmdUaW1lci5zdGFydE9uZVNob3QoMF9zKTsgfSkKQEAgLTI3MSw3ICsyNjIsOSBAQCBXZWJQ
cm9jZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24m
IGNvbmZpZ3VyYXRpb24pCiAgICAgICAgIFdURjo6c2V0UHJvY2Vzc1ByaXZpbGVnZXMoYWxsUHJp
dmlsZWdlcygpKTsKICAgICAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJt
aXRQcm9jZXNzVG9Vc2VDb29raWVBUEkodHJ1ZSk7CiAgICAgICAgIFByb2Nlc3M6OnNldElkZW50
aWZpZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXI6OmdlbmVyYXRlKCkpOwotICAgICAgICBX
RUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgICAg
IGRldGVybWluZUlUUFN0YXRlKCk7CisjZW5kaWYKICAgICB9KTsKIAogICAgIGlmICghbV93ZWJz
aXRlRGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9y
ZUV4aXN0cygpKQpAQCAtNjEzLDcgKzYwNiwyMiBAQCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQ
cm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2l0aAog
ICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFp
bjsKICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBhcHBCb3VuZERvbWFp
bnM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFudWFsUHJldmFsZW50UmVzb3Vy
Y2U7Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgorCisjaWYgUExBVEZPUk0oQ09D
T0EpCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
OworICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUt
PmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRl
RGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAh
bV93ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAg
IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOwor
ICAgICAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFi
bGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0
ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3Jl
OjpkZWZhdWx0RGF0YVN0b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAg
ICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7
CisgICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7Cisg
ICAgfSBlbHNlCisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1By
ZWZlcmVuY2VFbmFibGVkOworI2VuZGlmCisKICAgICBpZiAod2l0aFdlYnNpdGVEYXRhU3RvcmUp
IHsKICAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IHdpdGhXZWJzaXRlRGF0
YVN0b3JlLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpOwogI2lmIEVOQUJMRShSRVNP
VVJDRV9MT0FEX1NUQVRJU1RJQ1MpCkBAIC04ODQsNyArODkyLDEyIEBAIHZvaWQgV2ViUHJvY2Vz
c1Bvb2w6OnJlc29sdmVQYXRoc0ZvclNhbmRib3hFeHRlbnNpb25zKCkKIAogV2ViUHJvY2Vzc1By
b3h5JiBXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2ViUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3Jl
KiB3ZWJzaXRlRGF0YVN0b3JlLCBXZWJQcm9jZXNzUHJveHk6OklzUHJld2FybWVkIGlzUHJld2Fy
bWVkKQogewotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKKyNpZiBQTEFURk9STShD
T0NPQSkKKyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVkID0gZG9lc0FwcEhhdmVJVFBFbmFibGVk
KCk7CisgICAgaWYgKHdlYnNpdGVEYXRhU3RvcmUgJiYgIXdlYnNpdGVEYXRhU3RvcmUtPmlzSXRw
U3RhdGVFeHBsaWNpdGx5U2V0KCkpCisgICAgICAgIHdlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291
cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQpOworI2VuZGlm
CisKICAgICBhdXRvIHByb2Nlc3NQcm94eSA9IFdlYlByb2Nlc3NQcm94eTo6Y3JlYXRlKCp0aGlz
LCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CiAgICAgYXV0byYgcHJvY2VzcyA9IHBy
b2Nlc3NQcm94eS5nZXQoKTsKICAgICBpbml0aWFsaXplTmV3V2ViUHJvY2Vzcyhwcm9jZXNzLCB3
ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0gYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3Jl
Q29jb2EubW0KaW5kZXggNjg1MTMxNWNhYzUwNjkwNjhhNjc2NDM2OTQ2NDI5N2I2MWQxMDJjMS4u
ZmIzYjIxZmQ5MzYyOGEzNGFlM2Q0ZGVjZmQ0ZTc5N2NmNjUzMWY2NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dl
YnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtMjcsNiArMjcsNyBAQAogI2ltcG9ydCAiV2Vic2l0
ZURhdGFTdG9yZS5oIgogCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRpbHNDRi5oIgorI2ltcG9y
dCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIlNhbmRib3hVdGlsaXRpZXMu
aCIKICNpbXBvcnQgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJGcmFtZVBvbGljeUxp
c3RlbmVyUHJveHkuaCIKQEAgLTQ1LDEyICs0Niw2IEBACiAjaW1wb3J0IDx3dGYvVVJMLmg+CiAj
aW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQotI2ltcG9ydCA8V2ViS2l0QWRkaXRpb25zL1dlYnNpdGVEYXRhU3RvcmVBZGRpdGlv
bnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlMKLSNlbmRp
ZgotCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbXBvcnQgPFVJS2l0L1VJQXBwbGljYXRp
b24uaD4KICNpbXBvcnQgPHBhbC9pb3MvTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGluay5oPgpA
QCAtNDYzLDExICs0NTgsMjMgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjppbml0aWFsaXplQXBw
Qm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4KICAgICB9KTsKIH0K
IAordm9pZCBXZWJzaXRlRGF0YVN0b3JlOjphZGRUZXN0RG9tYWlucygpIGNvbnN0Cit7CisgICAg
aWYgKGFwcEJvdW5kRG9tYWlucygpLmlzRW1wdHkoKSkgeworICAgICAgICBhdXRvIGJ1bmRsZUlE
ID0gV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8g
YXBwQm91bmREb21haW5zVGVzdGluZyA9IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoYnVuZGxl
SUQpOworICAgICAgICBpZiAoYXBwQm91bmREb21haW5zVGVzdGluZykgeworICAgICAgICAgICAg
Zm9yIChhdXRvJiBkb21haW4gOiAqYXBwQm91bmREb21haW5zVGVzdGluZykKKyAgICAgICAgICAg
ICAgICBhcHBCb3VuZERvbWFpbnMoKS5hZGQoZG9tYWluKTsKKyAgICAgICAgfQorICAgIH0KK30K
Kwogdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiYs
IGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAogewog
ICAgIGlmIChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucykgewogICAgICAgICBpZiAobV9p
c0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAgIFdFQlNJ
VEVfREFUQV9TVE9SRV9BRERJVElPTlM7CisgICAgICAgICAgICBhZGRUZXN0RG9tYWlucygpOwog
ICAgICAgICB9CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBh
cHBCb3VuZFNjaGVtZXMoKSk7CiAgICAgICAgIHJldHVybjsKQEAgLTQ3OSw3ICs0ODYsNyBAQCB2
b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IEhhc2hTZQogICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2go
W3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKICAgICAg
ICAgICAgIEFTU0VSVChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7CiAgICAgICAgICAg
ICBpZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAg
ICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICAgICAgICAgIGFk
ZFRlc3REb21haW5zKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFu
ZGxlcihhcHBCb3VuZERvbWFpbnMoKSwgYXBwQm91bmRTY2hlbWVzKCkpOwogICAgICAgICB9KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuaAppbmRleCBjNmZiYmM0OTIzOWY2OTVhOGJhMzQxZWY2OTMwNTdjZWYxZWFiNmQw
Li4wYTdmODNkMmI3ZGM2MzUzOGM4NTc4ODAwZTYxN2FmZmM1ZDNmMTlkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5o
CkBAIC0zMTIsNiArMzEyLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIEZv
cmNlUmVpbml0aWFsaXphdGlvbiA6IGJvb2wgeyBObywgWWVzIH07CiAgICAgdm9pZCBpbml0aWFs
aXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiA9IEZvcmNlUmVpbml0aWFs
aXphdGlvbjo6Tm8pOworICAgIHZvaWQgYWRkVGVzdERvbWFpbnMoKSBjb25zdDsKIAogICAgIHZv
aWQgZmV0Y2hEYXRhQW5kQXBwbHkoT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4sIE9wdGlvblNl
dDxXZWJzaXRlRGF0YUZldGNoT3B0aW9uPiwgUmVmUHRyPFdvcmtRdWV1ZT4mJiwgRnVuY3Rpb248
dm9pZChWZWN0b3I8V2Vic2l0ZURhdGFSZWNvcmQ+KT4mJiBhcHBseSk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDMwNDIwZDkwNmMw
MmQzYzhmZWNlMGFkY2FkYmJmOWI0YTAwODdkNmIuLmZlODNjNDI1MmJiYzYwN2UxNjgyM2M4ZDRj
YWIxYTUwYzBlMTFkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtOTYzLDYgKzk2Myw3IEBACiAJCTQ5QkNBMTkyMjNBMTc3NjYwMDI4
QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTEyM0ExNzc2NjAwMjhB
ODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi87IH07CiAJCTQ5
QkNBMTk1MjNBMThDRkQwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQ
YXJ0eUludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0OUJDQTE5MDIzQTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0ZpcnN0UGFydHlJbnRlcm5hbC5oICovOyB9OwogCQk0OUJDQTE5NzIzQTE5MzBEMDAyOEE4MzYg
LyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTk2MjNBMThGNjIwMDI4QTgzNiAv
KiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovOyB9OworCQk0OURBQTM4
QzI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OURBQTM4QjI0Q0JBMUE4MDA3
OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi87IH07CiAJCTQ5RUNBNDFDMjNG
Q0E1RDgwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGlj
eURlY2lzaW9uLmggKi87IH07CiAJCTQ5RkJFRkZEMjM5QjAxMUQwMEJEMDMyRiAvKiBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RkJFRkZDMjM5QjAxMUQwMEJEMDMyRiAvKiBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSAqLzsgfTsKIAkJNDlGQkVGRkYyMzlCMDEy
RjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkUyMzlCMDEy
RjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1tICovOyB9
OwpAQCAtMzU4Niw2ICszNTg3LDggQEAKIAkJNDlCQ0ExOTAyM0ExNzU0OTAwMjhBODM2IC8qIF9X
S1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5MTIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDlCQ0ExOTYyM0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NU
aGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGly
ZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhCMjRDQkExQTgw
MDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0OURBQTM4RDI0Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3Mu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGljeURlY2lz
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvbGljeURlY2lzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQ5RkJFRkZBMjM5QUQ5NzgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzVGhpcmRQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUZCRUZG
QjIzOUFEQjE4MDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0ODMsNiArNzQ4Niw4IEBACiAJCQkJMUM3
MzlFODUyMzQ3QkNGNjAwQzYyMUVDIC8qIENvcmVUZXh0SGVscGVycy5tbSAqLywKIAkJCQlDNTVG
OTE2QzFDNTk1RTQ0MDAyOUU5MkQgLyogRGF0YURldGVjdGlvblJlc3VsdC5oICovLAogCQkJCUM1
NUY5MTZEMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0Lm1tICovLAorCQkJ
CTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oICov
LAorCQkJCTQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNr
cy5tbSAqLywKIAkJCQlDRTU1MEUxMzIyODM3NDQ0MDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9wdGlv
bnMuY3BwICovLAogCQkJCUNFNTUwRTEyMjI4MzczQzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0
aW9ucy5oICovLAogCQkJCUMxNjYzRTVBMjRBRUE3NDIwMEM2QTNCMiAvKiBMYXVuY2hTZXJ2aWNl
c0RhdGFiYXNlWFBDQ29uc3RhbnRzLmggKi8sCkBAIC0xMjczMCw2ICsxMjczNSw3IEBACiAJCQkJ
MkQ5MkE3N0QyMTJCNkE3MTAwRjQ5M0ZEIC8qIENvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMkQ5MkE3N0UyMTJCNkE3MTAwRjQ5M0ZEIC8qIERhdGFSZWZlcmVuY2UuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMkQ5MkE3N0YyMTJCNkE3MTAwRjQ5M0ZEIC8qIERlY29kZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQwQzU2RkUyMjlGMURFQTAwQkQz
M0U3IC8qIERldmljZU1hbmFnZW1lbnRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAogCQkJCTFB
QjdENjE5MTI4OEI5RDkwMENGRDA4QyAvKiBEb3dubG9hZFByb3h5TWVzc2FnZVJlY2VpdmVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTFBNjQyMjk5MTJERDAyOTIwMENBQUUyQyAvKiBEcmF3aW5n
QXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3ZDRiOTRjMmQ0NmNhNmExOWJjZDBh
ZTRkZTQ3YjU5ZGQ3MDg4Yzg2Li5lM2E3N2IyMmFjODQyZjdmNTdkODk0OGU4MTg0NDhhODY4Y2Yx
NzA4IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMjAtMDctMjggIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5l
eUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBjb2RlIGZy
b20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1Nz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAgIFJlcGxhY2UgV2Vi
S2l0IEFkZGl0aW9ucyBtYWNyb3Mgd2l0aCBjb2RlIHRvIHNldCBhIGRpZmZlcmVudCBidW5kbGUK
KyAgICAgICAgaWRlbnRpZmllciBpbmRpY2F0aW5nIHRoYXQgd2Ugd2FudCB0byBydW4gYW4gQXBw
LUJvdW5kIERvbWFpbnMgdGVzdC4KKworICAgICAgICBSZW1vdmUgI2lmIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspIGNoZWNrIHNvIHdlIHJ1biB0aGVzZSB0ZXN0cyBvbiBFV1MuCisKKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW06
CisgICAgICAgIChjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncyk6CisgICAg
ICAgIChpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncyk6CisKIDIwMjAt
MDctMjggIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3
ZWJraXRjb3JlcHldIEFkZCBzdHJpbmdfdXRpbHMgKFBhcnQgMykKZGlmZiAtLWdpdCBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2VyUHJpdmFjeS5tbSBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2VyUHJpdmFj
eS5tbQppbmRleCBlNzUwMDliNWVhNDhiNTRlOGE2NjEzM2QyNThjODYzMGZlNTQ5Y2Q3Li4zNjlm
ZmU1MjMxOGUwNzRiMGY0NGYxY2QwNjM2ZTM4OTk2ZDMxNzM0IDEwMDY0NAotLS0gYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW0KKysr
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2
YWN5Lm1tCkBAIC00NSw5ICs0NSw2IEBACiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogCi0j
aWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQgPFdlYktpdEFkZGl0aW9ucy9JbkFw
cEJyb3dzZXJQcml2YWN5VGVzdEFkZGl0aW9ucy5oPgotCiBzdGF0aWMgYm9vbCBpc0RvbmU7CiAK
IEBpbnRlcmZhY2UgQXBwQm91bmREb21haW5EZWxlZ2F0ZSA6IE5TT2JqZWN0IDxXS05hdmlnYXRp
b25EZWxlZ2F0ZT4KQEAgLTEzMSwxNCArMTI4LDE0IEBAIEBlbmQKIHN0YXRpYyB2b2lkIGNsZWFu
VXBJbkFwcEJyb3dzZXJQcml2YWN5VGVzdFNldHRpbmdzKCkKIHsKICAgICBXZWJDb3JlOjpjbGVh
ckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgpOwotICAgIElOX0FQ
UF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TXzIKKyAgICBXZWJDb3JlOjpzZXRBcHBsaWNhdGlv
bkJ1bmRsZUlkZW50aWZpZXIoImNvbS5hcHBsZS5XZWJLaXQuVGVzdFdlYktpdEFQSSIpOwogfQog
CiBzdGF0aWMgdm9pZCBpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncygp
CiB7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwogICAgIFdlYkNvcmU6OmNsZWFy
QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJyaWRlKCk7Ci0gICAgSU5fQVBQ
X0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlMKKyAgICBXZWJDb3JlOjpzZXRBcHBsaWNhdGlvbkJ1
bmRsZUlkZW50aWZpZXIoImluQXBwQnJvd3NlclByaXZhY3lUZXN0SWRlbnRpZmllciIpOwogfQog
CiBURVNUKEluQXBwQnJvd3NlclByaXZhY3ksIE5vbkFwcEJvdW5kRG9tYWluRmFpbGVkVXNlclNj
cmlwdEF0U3RhcnQpCkBAIC0xMzM4LDYgKzEzMzUsNCBAQCBURVNUKEluQXBwQnJvd3NlclByaXZh
Y3ksIEFwcEJvdW5kQ3VzdG9tU2NoZW1lKQogICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigm
aXNEb25lKTsKIH0KIAotI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0KICNlbmRp
ZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDI5ZDFhYWViYzhkNGYzY2I3ODJhMjBk
ODI4YmNlNDQ3OTE4Y2ExYTQuLjI0YzlhYWY3MmQwNzYzYTZiOTY0NmM4ZWJmNDliMjFkNGE4YTc2
YTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wNy0yOCAgS2F0ZSBDaGVuZXkgIDxrYXRo
ZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIEFwcC1Cb3VuZCBEb21h
aW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY2
MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgIFRoZXNlIHRlc3Rz
IGFyZSBub3cgZXhwZWN0ZWQgdG8gcGFzcy4KKwogMjAyMC0wNy0yOCAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIEluZGV4ZWREQiBiaW5kaW5nIHV0aWxpdGll
cyBtaXNzIGV4Y2VwdGlvbiBjaGVja3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCBlMzVlMWY1ZjlmYWFkYjk4YjAzZmJmYjE0ZWEzMWUwY2Qw
NTUzNDZlLi44OTg5NDM5NjYxN2E4ZDkxYzRiMGI0NjEyZmM1YzExYjUwYTIxYzZmIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNzk3LDMg
KzE3OTcsNSBAQCB3ZWJraXQub3JnL2IvMjE0NDY4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy12YWx1ZXMvY2gtdW5pdC0wMDIuaAogd2Via2l0Lm9yZy9iLzIxNDUxMiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9nZW9tZXRyeS9ET01NYXRyaXgyRElu
aXQtdmFsaWRhdGUtZml4dXAuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8y
MTQ1OTggZmFzdC9zY3JvbGxpbmcvaW9zL2F1dG9zY3JvbGwtaW5wdXQtd2hlbi12ZXJ5LXpvb21l
ZC5odG1sIFsgUGFzcyBGYWlsdXJlIF0KKworaHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2
YWN5LyBbIFBhc3MgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405476</attachid>
            <date>2020-07-29 11:11:34 -0700</date>
            <delta_ts>2020-07-29 12:27:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200729111134.patch</filename>
            <type>text/plain</type>
            <size>39351</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1MDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM0YjAyYjU2N2Y3YzA4NDg2
ZDM2N2Y5MDg0MDc5ZjRlYWU1YmM2ZWQuLmE3NGViOGUwZGFhNTkxZjYwMTA1MTIwMmEzM2UyMGZl
OGYzNmEyN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjkgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgdGhpcyBpcyBqdXN0IGNvZGUgbWlncmF0aW9uIGFuZCB3
aWxsIGJlIHRlc3RlZAorICAgICAgICBieSBleGlzdGluZyBBcHAtQm91bmQgRG9tYWlucyB0ZXN0
cy4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OmFjdGl2YXRlU2Vzc2lvbkNsZWFudXApOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2spOgorICAg
ICAgICAqIFNoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oOiBBZGRlZC4KKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW06IEFkZGVkLgor
ICAgICAgICBIb2xkcyBhbGwgZnVuY3Rpb25zIHJlbGF0ZWQgdG8gZnVsbCBicm93c2VyIGNoZWNr
cyBhbmQKKyAgICAgICAgQXBwLUJvdW5kIERvbWFpbnMuCisKKyAgICAgICAgKFdlYktpdDo6c2hv
dWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nlcik6CisgICAgICAgIChXZWJLaXQ6OmdldEFwcEJvdW5k
RG9tYWluc1Rlc3RpbmcpOgorICAgICAgICBUaGVzZSBmdW5jdGlvbnMgYWxsb3cgdXMgdG8gdHJl
YXQgb3VyIHRlc3QgcnVubmVycyBhcyBmdWxsIGJyb3dzZXJzCisgICAgICAgIHdoaWxlIHRyaWdn
ZXJpbmcgbm9uLWJyb3dzZXIgbW9kZSBmb3IgdGVzdGluZyBvdGhlciBBcHAtQm91bmQgRG9tYWlu
cworICAgICAgICBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgIChXZWJLaXQ6OmlzSW5XZWJLaXRD
aGlsZFByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVU
cmFja2luZ1Blcm1pc3Npb24pOgorICAgICAgICAoV2ViS2l0OjpkZXRlcm1pbmVJVFBTdGF0ZUlu
dGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGUpOgorICAgICAgICAo
V2ViS2l0Ojpkb2VzQXBwSGF2ZUlUUEVuYWJsZWQpOgorICAgICAgICAoV2ViS2l0Ojpkb2VzUGFy
ZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6aGFzUHJvaGliaXRl
ZFVzYWdlU3RyaW5ncyk6CisgICAgICAgIChXZWJLaXQ6OmlzUGFyZW50UHJvY2Vzc0FGdWxsV2Vi
QnJvd3Nlcik6CisgICAgICAgIChXZWJLaXQ6OmlzRnVsbFdlYkJyb3dzZXIpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcDoKKyAgICAgICAgKEFQSTo6SFRU
UENvb2tpZVN0b3JlOjpmaWx0ZXJBcHBCb3VuZENvb2tpZXMpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAoQVBJOjpQYWdlQ29uZmln
dXJhdGlvbjo6UGFnZUNvbmZpZ3VyYXRpb24pOgorICAgICAgICAoKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6V2ViUHJv
Y2Vzc1Bvb2wpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29y
a1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2Vi
UHJvY2Vzcyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6YWRk
VGVzdERvbWFpbnMgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpl
bnN1cmVBcHBCb3VuZERvbWFpbnMgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRl
RGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisKIDIwMjAtMDctMjkgIE5vYW0gUm9zZW50aGFsICA8bm9hbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEVuYWJsZSBwYWludCB0aW1pbmcgYnkgZGVmYXVsdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVmODkxN2M0MjU5NWE1YTkuLjkz
MWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2Eu
bW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlRGlz
cG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2ltcG9ydCAi
RGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNp
bXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXIu
aCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYgQEAKICNpbXBvcnQgPFdlYktp
dEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmlu
ZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNkZWZpbmUgTkVUV09SS19TRVNT
SU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAjaW1wb3J0ICJEZXZpY2VNYW5h
Z2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBAQCB2b2lkIFNlc3Npb25XcmFw
cGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24s
IE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNlc3Npb25XaXRoQ29uZmlndXJh
dGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdldCgpIGRlbGVnYXRlUXVldWU6
W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNpZiBIQVZFKFNFU1NJT05fQ0xF
QU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFudXAoTmV0d29ya1Nlc3Npb25D
b2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMmIHBh
cmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBEb24ndCBvdmVycmlkZSBhbiBl
eHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNldCkKKyAgICAgICAgcmV0dXJu
OworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQorICAgIGF1dG8gcGFyZW50
QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9BU1NFUlQocGFyZW50QXVkaXRU
b2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisKKyAgICBib29sIGl0cEVuYWJs
ZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBhcmVudEF1ZGl0VG9rZW4pOwor
ICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5pc1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAhPSBwYXNzZWRFbmFibGVkU3Rh
dGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBlbmFibGVkIHN0YXRlICglZCkg
ZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRwRW5hYmxlZCwgcGFzc2VkRW5h
YmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVk
KHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgorfQorI2VuZGlmCisKIE5ldHdv
cmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdv
cmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMp
CiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycykKICAgICAs
IG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMuYm91bmRJbnRlcmZhY2VJZGVu
dGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNvY29hOjpp
bml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZpZ2F0aW5nVG9BcHBCb3UKIFNl
c3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2so
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBXZWJDb3JlOjpTdG9yZWRD
cmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgT3B0aW9uYWw8TmF2aWdh
dGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAg
ICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlzTmF2aWdhdGluZ1RvQXBwQm91
bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA6IE5hdmlnYXRpbmdUb0Fw
cEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElP
TlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKG5ldHdvcmtQcm9j
ZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkKICAgICAg
ICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
bjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoYXV0
byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Npb24oKSkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZkN2U0M2YxM2JlZgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2Vy
Q2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWlu
OworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJp
bmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRB
cHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOworYm9vbCBzaG91bGRCZVRyZWF0
ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpOwordm9pZCBkZXRlcm1pbmVJ
VFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKK2Jvb2wgZG9lc1BhcmVu
dFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90Pik7Citib29sIGlz
RnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9w
dGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5t
bSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1t
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjY1NDJmZDdhM2NiMjI2YjFlMjc1YTQ0YTVjZjg1NjIzZWNkYWU2YmIKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJv
d3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKworI2ltcG9ydCAi
VENDU1BJLmgiCisjaW1wb3J0ICJWZXJzaW9uQ2hlY2tzLmgiCisjaW1wb3J0IDxXZWJDb3JlL1Jl
Z2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNo
ZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+
CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQgPHd0Zi9jb2NvYS9FbnRpdGxl
bWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KKworU09GVF9MSU5LX1BS
SVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRDQ0FjY2Vzc1ByZWZsaWdodCwg
VENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgQ0ZEaWN0aW9u
YXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitTT0ZUX0xJTksoVENDLCBUQ0NB
Y2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAo
Q0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tlbiwgQ0ZEaWN0aW9uYXJ5UmVm
IG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQorU09GVF9MSU5LX0NPTlNUQU5U
KFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNraW5nUHJldmVudGlvbiwgQ0ZT
dHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0YXRpYyBib29sIGlzRnVsbFdl
YkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJv
d3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJldHVybiBidW5kbGVJRCA9PSAi
Y29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1bmRsZUlEID09ICJjb20uYXBw
bGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3M7Cit9CisKK09wdGlvbmFsPFZlY3RvcjxXZWJD
b3JlOjpSZWdpc3RyYWJsZURvbWFpbj4+IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoY29uc3Qg
U3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBpZiAoYnVuZGxlSUQuaXNOdWxsKCkpCisgICAgICAg
IHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBzdGF0aWMgYXV0byBhcHBCb3VuZERvbWFpbkxp
c3QgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoSGFzaE1hcDxTdHJpbmcsIFZlY3RvcjxXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbj4+IHsKKyAgICAgICAgeyJpbkFwcEJyb3dzZXJQcml2YWN5VGVzdElk
ZW50aWZpZXIiX3MsIFZlY3RvcjxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4geyBXZWJDb3Jl
OjpSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbVJlZ2lzdHJhYmxlRG9tYWlu
U3RyaW5nKCIxMjcuMC4wLjEiKSB9fSwKKyAgICB9KTsKKworICAgIGF1dG8gYXBwQm91bmREb21h
aW5JdGVyID0gYXBwQm91bmREb21haW5MaXN0LT5maW5kKGJ1bmRsZUlEKTsKKyAgICBpZiAoYXBw
Qm91bmREb21haW5JdGVyICE9IGFwcEJvdW5kRG9tYWluTGlzdC0+ZW5kKCkpCisgICAgICAgIHJl
dHVybiBhcHBCb3VuZERvbWFpbkl0ZXItPnZhbHVlOworCisgICAgcmV0dXJuIFdURjo6bnVsbG9w
dDsKK30KKworI2lmIEFTU0VSVF9FTkFCTEVECitzdGF0aWMgYm9vbCBpc0luV2ViS2l0Q2hpbGRQ
cm9jZXNzKCkKK3sKKyAgICBzdGF0aWMgYm9vbCBpc0luU3ViUHJvY2VzczsKKworICAgIHN0YXRp
YyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAg
ICAgICBOU1N0cmluZyAqYnVuZGxlSWRlbnRpZmllciA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0g
YnVuZGxlSWRlbnRpZmllcl07CisgICAgICAgIGlzSW5TdWJQcm9jZXNzID0gW2J1bmRsZUlkZW50
aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50Il0KKyAgICAgICAg
ICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNvbS5hcHBsZS5XZWJLaXQuTmV0
d29ya2luZyJdCisgICAgICAgICAgICB8fCBbYnVuZGxlSWRlbnRpZmllciBoYXNQcmVmaXg6QCJj
b20uYXBwbGUuV2ViS2l0LkdQVSJdOworICAgIH0pOworCisgICAgcmV0dXJuIGlzSW5TdWJQcm9j
ZXNzOworfQorI2VuZGlmCisKK2VudW0gY2xhc3MgSVRQU3RhdGUgOiB1aW50OF90IHsKKyAgICBV
bmluaXRpYWxpemVkLAorICAgIEluaXRpYWxpemluZywKKyAgICBFbmFibGVkLAorICAgIERpc2Fi
bGVkCit9OworCitzdGF0aWMgc3RkOjphdG9taWM8SVRQU3RhdGU+IGdfY3VycmVudElUUFN0YXRl
ID0gSVRQU3RhdGU6OlVuaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBib29sIGhhc1JlcXVlc3RlZENy
b3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0
Q2hpbGRQcm9jZXNzKCkpOworCisgICAgc3RhdGljIHN0ZDo6YXRvbWljPGJvb2w+IGhhc1JlcXVl
c3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbiA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRs
ZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJOU0Nyb3NzV2Vic2l0ZVRyYWNraW5nVXNh
Z2VEZXNjcmlwdGlvbiJdOworICAgIHJldHVybiBoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVUcmFj
a2luZ1Blcm1pc3Npb247Cit9CisKK3N0YXRpYyBib29sIGRldGVybWluZUlUUFN0YXRlSW50ZXJu
YWwoYm9vbCBhcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRp
ZmllcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBBU1NFUlQoIWlz
SW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBpZiAoIWFwcFdhc0xpbmtlZE9uT3JBZnRl
cikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFpc0Z1bGxXZWJCcm93c2VyKGJ1
bmRsZUlkZW50aWZpZXIpICYmICFoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVUcmFja2luZ1Blcm1p
c3Npb24oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBUQ0NBY2Nlc3NQcmVmbGlnaHRS
ZXN1bHQgcmVzdWx0ID0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKKyNpZiAoUExBVEZPUk0o
SU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApIHx8IChQ
TEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAw
KQorICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdodChnZXRrVENDU2VydmljZVdlYktpdElu
dGVsbGlnZW50VHJhY2tpbmdQcmV2ZW50aW9uKCksIG51bGxwdHIpOworI2VuZGlmCisgICAgcmV0
dXJuIHJlc3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworfQorCitzdGF0aWMgZGlz
cGF0Y2hfcXVldWVfdCBnX2l0cFF1ZXVlOworCit2b2lkIGRldGVybWluZUlUUFN0YXRlKCkKK3sK
KyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIGlmIChnX2N1cnJlbnRJVFBTdGF0
ZSAhPSBJVFBTdGF0ZTo6VW5pbml0aWFsaXplZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZ19j
dXJyZW50SVRQU3RhdGUgPSBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5nOworICAgIGJvb2wgYXBwV2Fz
TGlua2VkT25PckFmdGVyID0gbGlua2VkT25PckFmdGVyKFNES1ZlcnNpb246OkZpcnN0V2l0aFNl
c3Npb25DbGVhbnVwQnlEZWZhdWx0LCBBc3N1bWVTYWZhcmlJc0Fsd2F5c0xpbmtlZE9uQWZ0ZXI6
Olllcyk7CisKKyAgICBnX2l0cFF1ZXVlID0gZGlzcGF0Y2hfcXVldWVfY3JlYXRlKCJjb20uYXBw
bGUuV2ViS2l0Lml0cENoZWNrUXVldWUiLCBOVUxMKTsKKworICAgIGRpc3BhdGNoX2FzeW5jKGdf
aXRwUXVldWUsIFthcHBXYXNMaW5rZWRPbk9yQWZ0ZXIsIGJ1bmRsZUlkZW50aWZpZXIgPSBXZWJD
b3JlOjphcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc29sYXRlZENvcHkoKV0geworICAg
ICAgICBnX2N1cnJlbnRJVFBTdGF0ZSA9IGRldGVybWluZUlUUFN0YXRlSW50ZXJuYWwoYXBwV2Fz
TGlua2VkT25PckFmdGVyLCBidW5kbGVJZGVudGlmaWVyKSA/IElUUFN0YXRlOjpFbmFibGVkIDog
SVRQU3RhdGU6OkRpc2FibGVkOworCisgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dl
dF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBkaXNwYXRjaF9yZWxlYXNlKGdfaXRwUXVl
dWUpOworICAgICAgICAgICAgZ19pdHBRdWV1ZSA9IG51bGxwdHI7CisgICAgICAgIH0pOworICAg
IH0pOworfQorCitib29sIGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgpCit7CisgICAgQVNTRVJUKCFp
c0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7
CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlID4gSVRQU3RhdGU6OkluaXRpYWxpemluZykKKyAg
ICAgICAgcmV0dXJuIGdfY3VycmVudElUUFN0YXRlID09IElUUFN0YXRlOjpFbmFibGVkOworCisg
ICAgUkVMRUFTRV9BU1NFUlQoZ19pdHBRdWV1ZSk7CisKKyAgICBfX2Jsb2NrIGJvb2wgaXNJVFBF
bmFibGVkOworICAgIGRpc3BhdGNoX3N5bmMoZ19pdHBRdWV1ZSwgXnsKKyAgICAgICAgaXNJVFBF
bmFibGVkID0gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6OkVuYWJsZWQ7CisgICAgfSk7
CisgICAgcmV0dXJuIGlzSVRQRW5hYmxlZDsKK30KKworYm9vbCBkb2VzUGFyZW50UHJvY2Vzc0hh
dmVJVFBFbmFibGVkKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAg
QVNTRVJUKGlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6Omlz
TWFpbigpKTsKKworICAgIGlmICghaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKGF1ZGl0
VG9rZW4pKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRDQ0FjY2Vzc1ByZWZsaWdodFJl
c3VsdCByZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworI2lmIChQTEFURk9STShJ
T1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkgfHwgKFBM
QVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMTAwMDAp
CisgICAgaWYgKGF1ZGl0VG9rZW4pCisgICAgICAgIHJlc3VsdCA9IFRDQ0FjY2Vzc1ByZWZsaWdo
dFdpdGhBdWRpdFRva2VuKGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdlbnRUcmFja2luZ1By
ZXZlbnRpb24oKSwgYXVkaXRUb2tlbi52YWx1ZSgpLCBudWxscHRyKTsKKyNlbmRpZgorICAgIHJl
dHVybiByZXN1bHQgIT0ga1RDQ0FjY2Vzc1ByZWZsaWdodERlbmllZDsKK30KKworc3RhdGljIHN0
ZDo6YXRvbWljPGJvb2w+IGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MgPSBmYWxzZTsKK2Jvb2wgaGFz
UHJvaGliaXRlZFVzYWdlU3RyaW5ncygpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQ
cm9jZXNzKCkpOworCisgICAgc3RhdGljIGJvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncyA9
IGZhbHNlOworCisgICAgaWYgKGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MpCisgICAgICAgIHJldHVy
biBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworCisgICAgTlNEaWN0aW9uYXJ5ICppbmZvRGlj
dGlvbmFyeSA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gaW5mb0RpY3Rpb25hcnldOworICAgIFJF
TEVBU0VfQVNTRVJUKGluZm9EaWN0aW9uYXJ5KTsKKworICAgIC8vIFNlZSA8cmRhcjovL3Byb2Js
ZW0vNTk5Nzk0Njg+IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0aGlzIGxpc3Qgd2FzIHNlbGVjdGVk
LgorICAgIGF1dG8gcHJvaGliaXRlZFN0cmluZ3MgPSBAWworICAgICAgICBAIk5TSG9tZUtpdFVz
YWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TQmx1ZXRvb3RoQWx3YXlzVXNhZ2VEZXNjcmlw
dGlvbiIsCisgICAgICAgIEAiTlNQaG90b0xpYnJhcnlVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAg
ICAgQCJOU0hlYWx0aFNoYXJlVXNhZ2VEZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNIZWFsdGhV
cGRhdGVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzVXNhZ2VE
ZXNjcmlwdGlvbiIsCisgICAgICAgIEAiTlNMb2NhdGlvbkFsd2F5c0FuZFdoZW5JblVzZVVzYWdl
RGVzY3JpcHRpb24iCisgICAgXTsKKworICAgIGZvciAoTlNTdHJpbmcgKnByb2hpYml0ZWRTdHJp
bmcgOiBwcm9oaWJpdGVkU3RyaW5ncykgeworICAgICAgICBpZiAoW2luZm9EaWN0aW9uYXJ5IG9i
amVjdEZvcktleTpwcm9oaWJpdGVkU3RyaW5nXSkgeworICAgICAgICAgICAgU3RyaW5nIG1lc3Nh
Z2UgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIltJbi1BcHAgQnJvd3NlciBQcml2YWN5
XSAlQCB1c2VkIHByb2hpYml0ZWQgdXNhZ2Ugc3RyaW5nICVALiIsIFtbTlNCdW5kbGUgbWFpbkJ1
bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0sIHByb2hpYml0ZWRTdHJpbmddOworICAgICAgICAgICAg
V1RGTG9nQWx3YXlzKG1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7CisgICAgICAgICAgICBoYXNQcm9o
aWJpdGVkVXNhZ2VTdHJpbmdzID0gdHJ1ZTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9
CisgICAgfQorICAgIGhhc0NoZWNrZWRVc2FnZVN0cmluZ3MgPSB0cnVlOworICAgIHJldHVybiBo
YXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzOworfQorCitib29sIGlzUGFyZW50UHJvY2Vzc0FGdWxs
V2ViQnJvd3NlcihPcHRpb25hbDxhdWRpdF90b2tlbl90PiBhdWRpdFRva2VuKQoreworICAgIEFT
U0VSVChpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIFJFTEVBU0VfQVNTRVJUKGF1ZGl0
VG9rZW4pOworCisgICAgc3RhdGljIGJvb2wgZnVsbFdlYkJyb3dzZXI7CisKKyAgICBzdGF0aWMg
ZGlzcGF0Y2hfb25jZV90IG9uY2U7CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAgICAg
ICAgZnVsbFdlYkJyb3dzZXIgPSBXVEY6Omhhc0VudGl0bGVtZW50KGF1ZGl0VG9rZW4udmFsdWUo
KSwgImNvbS5hcHBsZS5kZXZlbG9wZXIud2ViLWJyb3dzZXIiKTsKKyAgICB9KTsKKworICAgIFdU
RkxvZ0Fsd2F5cygiaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyIGJ1bmRsZUlEICVzIC0t
ICVkIiwgV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkuYXNjaWkoKS5kYXRh
KCksIHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2ViQ29yZTo6YXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKCkpKTsKKworICAgIHJldHVybiBmdWxsV2ViQnJvd3NlciB8fCBzaG91bGRC
ZVRyZWF0ZWRBc0Z1bGxCcm93c2VyKFdlYkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmll
cigpKTsKK30KKworc3RhdGljIGJvb2wgaXNGdWxsV2ViQnJvd3Nlcihjb25zdCBTdHJpbmcmIGJ1
bmRsZUlkZW50aWZpZXIpCit7CisgICAgQVNTRVJUKCFpc0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkp
OworCisgICAgc3RhdGljIGJvb2wgZnVsbFdlYkJyb3dzZXIgPSBXVEY6OnByb2Nlc3NIYXNFbnRp
dGxlbWVudCgiY29tLmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworCisgICAgcmV0dXJu
IGZ1bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoYnVuZGxlSWRl
bnRpZmllcik7Cit9CisKK2Jvb2wgaXNGdWxsV2ViQnJvd3NlcigpCit7CisgICAgQVNTRVJUKCFp
c0luV2ViS2l0Q2hpbGRQcm9jZXNzKCkpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7
CisKKyAgICByZXR1cm4gaXNGdWxsV2ViQnJvd3NlcihXZWJDb3JlOjphcHBsaWNhdGlvbkJ1bmRs
ZUlkZW50aWZpZXIoKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSUhUVFBDb29raWVTdG9yZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcAppbmRleCAyMzQw
NzYzZTc3ZTFhMzVjZjJjMjQzYjE1NTk0MDQ2NTljOWI1MTNhLi5hNmUxNTkxZTU1MDQ5ZDI5ZTc3
NjE0MTlhYTMxOGRmMDBhNDc3OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcApAQCAtMjYsNiArMjYsMTAgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJBUElIVFRQQ29va2llU3RvcmUuaCIKIAorI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKyNl
bmRpZgorCiAjaW5jbHVkZSAiV2ViQ29va2llTWFuYWdlclByb3h5LmgiCiAjaW5jbHVkZSAiV2Vi
UHJvY2Vzc1Bvb2wuaCIKICNpbmNsdWRlICJXZWJzaXRlRGF0YVN0b3JlLmgiCkBAIC0zNSwxMiAr
MzksNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvSFRUUENvb2tpZUFjY2VwdFBvbGljeS5oPgogI2lu
Y2x1ZGUgPFdlYkNvcmUvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg+CiAKLSNpZiBVU0UoQVBQTEVf
SU5URVJOQUxfU0RLKQotI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9IVFRQQ29va2llU3RvcmVB
ZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklW
QUNZX0VOQUJMRUQgZmFsc2UKLSNlbmRpZgotCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogCiBu
YW1lc3BhY2UgQVBJIHsKQEAgLTY2LDcgKzY0LDcgQEAgdm9pZCBIVFRQQ29va2llU3RvcmU6OmZp
bHRlckFwcEJvdW5kQ29va2llcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6Q29va2llPiYgY29va2kK
ICAgICBWZWN0b3I8V2ViQ29yZTo6Q29va2llPiBhcHBCb3VuZENvb2tpZXM7CiAjaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkKICAgICBtX293bmluZ0RhdGFTdG9yZS0+Z2V0QXBwQm91bmREb21haW5z
KFtjb29raWVzLCBhcHBCb3VuZENvb2tpZXMgPSBXVEZNb3ZlKGFwcEJvdW5kQ29va2llcyksIGNv
bXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildIChhdXRvJiBkb21h
aW5zKSBtdXRhYmxlIHsKLSAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiBJTVBMRU1F
TlRfSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9FTkFCTEVEKSB7CisgICAgICAgIGlmICghZG9tYWlu
cy5pc0VtcHR5KCkgJiYgIWlzRnVsbFdlYkJyb3dzZXIoKSkgewogICAgICAgICAgICAgZm9yIChh
dXRvJiBjb29raWUgOiBjb29raWVzKSB7CiAgICAgICAgICAgICAgICAgaWYgKGRvbWFpbnMuY29u
dGFpbnMoV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0
KGNvb2tpZS5kb21haW4pKSkKICAgICAgICAgICAgICAgICAgICAgYXBwQm91bmRDb29raWVzLmFw
cGVuZChjb29raWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVBhZ2VDb25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQ
YWdlQ29uZmlndXJhdGlvbi5jcHAKaW5kZXggNDMxZmNlZjc4NmM5YjVjMzAwNDc2YTMxMmE0Nzg4
ZTA5NDA0NGU0OS4uNzAyNzhmYmRlMDJmNzNkZWQ0MGQ3OTNkMDE4ZTQ4YWU5YjU1ZmIzMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRp
b24uY3BwCkBAIC0zNSwxMiArMzUsNiBAQAogI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXIu
aCIKICNpbmNsdWRlICJXZWJVc2VyQ29udGVudENvbnRyb2xsZXJQcm94eS5oIgogCi0jaWYgVVNF
KEFQUExFX0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMvUGFnZUNvbmZp
Z3VyYXRpb25BZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFBBR0VfQ09ORklHVVJBVElPTl9B
RERJVElPTlMKLSNlbmRpZgotCiAjaWYgRU5BQkxFKEFQUExJQ0FUSU9OX01BTklGRVNUKQogI2lu
Y2x1ZGUgIkFQSUFwcGxpY2F0aW9uTWFuaWZlc3QuaCIKICNlbmRpZgpAQCAtNTQsNyArNDgsNiBA
QCBSZWY8UGFnZUNvbmZpZ3VyYXRpb24+IFBhZ2VDb25maWd1cmF0aW9uOjpjcmVhdGUoKQogfQog
CiBQYWdlQ29uZmlndXJhdGlvbjo6UGFnZUNvbmZpZ3VyYXRpb24oKQotUEFHRV9DT05GSUdVUkFU
SU9OX0FERElUSU9OUwogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAppbmRleCAyYmFkMWQ2ZTUzODg2MTI1NDcyYzYwZTkxNDg3MWY4MjE4NWU0ZWIzLi5jM2Nj
YzU4ZGE3Zjk5MWE0MDc1M2U0OWE5MTkwYzFiMWJlNzQ0MWYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTE2Niw2ICsxNjYsNyBAQAogI2luY2x1ZGUgPFdl
YkNvcmUvUHVibGljU3VmZml4Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZW5kZXJFbWJlZGRlZE9i
amVjdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TU0xLZXlH
ZW5lcmF0b3IuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NlcmlhbGl6ZWRDcnlwdG9LZXlXcmFwLmg+
CkBAIC0yODgsMTMgKzI4OSw4IEBACiAjaW5jbHVkZSAiTWVkaWFVc2FnZU1hbmFnZXIuaCIKICNl
bmRpZgogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbmNsdWRlIDxXZWJLaXRBZGRp
dGlvbnMvV2ViUGFnZVByb3h5QWRkaXRpb25zLmg+Ci0jZWxzZQotc3RhdGljIGJvb2wgaXNGdWxs
V2ViQnJvd3NlcigpIHsgcmV0dXJuIHRydWU7IH0KLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQot
c3RhdGljIGJvb2wgaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncygpIHsgcmV0dXJuIGZhbHNlOyB9
Ci0jZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNsdWRlICJEZWZhdWx0V2ViQnJvd3Nl
ckNoZWNrcy5oIgogI2VuZGlmCiAKIC8vIFRoaXMgY29udHJvbHMgd2hhdCBzdHJhdGVneSB3ZSB1
c2UgZm9yIG1vdXNlIHdoZWVsIGNvYWxlc2NpbmcuCkBAIC0xMzk2LDggKzEzOTIsMTAgQEAgUmVm
UHRyPEFQSTo6TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojpsb2FkRGF0YShjb25zdCBJUEM6OkRh
dGFSZWZlcmVuY2UmIGRhdGEsIGMKIHsKICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKExvYWRp
bmcsICJsb2FkRGF0YToiKTsKIAorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgaWYgKE1J
TUVUeXBlID09ICJ0ZXh0L2h0bWwiX3MgJiYgIWlzRnVsbFdlYkJyb3dzZXIoKSkKICAgICAgICAg
bV9saW1pdHNOYXZpZ2F0aW9uc1RvQXBwQm91bmREb21haW5zID0gdHJ1ZTsKKyNlbmRpZgogCiAg
ICAgaWYgKG1faXNDbG9zZWQpIHsKICAgICAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChMb2Fk
aW5nLCAibG9hZERhdGE6IHBhZ2UgaXMgY2xvc2VkIik7CkBAIC0zMTM3LDExICszMTM1LDE2IEBA
IHN0YXRpYyBib29sIHNob3VsZFRyZWF0VVJMUHJvdG9jb2xBc0FwcEJvdW5kKGNvbnN0IFVSTCYg
cmVxdWVzdFVSTCkKIGJvb2wgV2ViUGFnZVByb3h5OjpzZXRJc05hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluQW5kQ2hlY2tJZlBlcm1pdHRlZChib29sIGlzTWFpbkZyYW1lLCBjb25zdCBVUkwmIHJl
cXVlc3RVUkwsIE9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRp
bmdUb0FwcEJvdW5kRG9tYWluKQogewogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgV1RG
TG9nQWx3YXlzKCJXZWJQYWdlUHJveHk6OnNldElzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW5B
bmRDaGVja0lmUGVybWl0dGVkIHVybCAlcywgaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiAl
ZCwgaXNGdWxsQnJvd3NlciAlZCwgYnVuZGxlSUQgJXMiLCByZXF1ZXN0VVJMLnN0cmluZygpLmFz
Y2lpKCkuZGF0YSgpLCBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluID09IE5hdmlnYXRpbmdU
b0FwcEJvdW5kRG9tYWluOjpZZXMsIGlzRnVsbFdlYkJyb3dzZXIoKSwgV2ViQ29yZTo6YXBwbGlj
YXRpb25CdW5kbGVJZGVudGlmaWVyKCkuYXNjaWkoKS5kYXRhKCkpOwogICAgIGlmIChpc0Z1bGxX
ZWJCcm93c2VyKCkpIHsKLSAgICAgICAgaWYgKGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MoKSkK
KyAgICAgICAgaWYgKGhhc1Byb2hpYml0ZWRVc2FnZVN0cmluZ3MoKSkgeworICAgICAgICAgICAg
V1RGTG9nQWx3YXlzKCJXZWJQYWdlUHJveHk6OnNldElzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW5BbmRDaGVja0lmUGVybWl0dGVkICgoaGFzUHJvaGliaXRlZFVzYWdlU3RyaW5ncykpIHVybCAl
cy4gcmVzdHJpY3RpbmcgQVBJcyIsIHJlcXVlc3RVUkwuc3RyaW5nKCkuYXNjaWkoKS5kYXRhKCkp
OwogICAgICAgICAgICAgbV9pc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluID0gTmF2aWdhdGlu
Z1RvQXBwQm91bmREb21haW46Ok5vOworICAgICAgICB9CiAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KKyAgICBXVEZMb2dBbHdheXMoIldlYlBhZ2VQcm94eTo6c2V0SXNOYXZpZ2F0aW5nVG9B
cHBCb3VuZERvbWFpbkFuZENoZWNrSWZQZXJtaXR0ZWQgKChOT1QgRlVMTCBCUk9XU0VSKSkgdXJs
ICVzLCBidW5kbGVJRCAlcyIsIHJlcXVlc3RVUkwuc3RyaW5nKCkuYXNjaWkoKS5kYXRhKCksIFdl
YkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpLmFzY2lpKCkuZGF0YSgpKTsKKwog
ICAgIGlmICghaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikgewogICAgICAgICBtX2lzTmF2
aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSBXVEY6Om51bGxvcHQ7CiAgICAgICAgIHJldHVybiB0
cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wu
Y3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDky
ODFlMWNlNDMyOWIzNDJjMzNhZDg5MDdlMzg3MzE2YmZkZjAyMWQuLmI4ODA4MGI5Njc4ODI3ZmZk
ZWNiYmY3ZjEwZmNiZTUxMGMxNWI5NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5jcHAKQEAgLTEyNiw2ICsxMjYsNyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9S
TShDT0NPQSkKKyNpbmNsdWRlICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2luY2x1ZGUg
IlZlcnNpb25DaGVja3MuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0dhbWVDb250cm9sbGVyR2FtZXBh
ZFByb3ZpZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9ISURHYW1lcGFkUHJvdmlkZXIuaD4KQEAg
LTE0MSwxNSArMTQyLDYgQEAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+
CiAjZW5kaWYKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0
QWRkaXRpb25zL1dlYlByb2Nlc3NQb29sQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmluZSBXRUJf
UFJPQ0VTU19QT09MX0FERElUSU9OUwotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9O
U18yCi0jZGVmaW5lIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKLSNkZWZpbmUgV0VCX1BS
T0NFU1NfUE9PTF9BRERJVElPTlNfNAotI2VuZGlmCi0KICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xf
UkVMRUFTRV9MT0coY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HKGNoYW5uZWwsICIlcCAt
IFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VC
UFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0Vf
TE9HX0VSUk9SKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNf
X1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfSUZfQUxMT1dF
RChjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0dfSUYoc2Vzc2lvbklELmlzQWx3YXlzT25M
b2dnaW5nQWxsb3dlZCgpLCBjaGFubmVsLCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRo
aXMsICMjX19WQV9BUkdTX18pCkBAIC0yNTUsNyArMjQ3LDYgQEAgV2ViUHJvY2Vzc1Bvb2w6Oldl
YlByb2Nlc3NQb29sKEFQSTo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9u
KQogI2VuZGlmCiAgICAgLCBtX2Fsd2F5c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eShtX2NvbmZp
Z3VyYXRpb24tPmFsd2F5c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eSgpKQogICAgICwgbV9zaG91
bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uKG1fY29uZmlndXJhdGlvbi0+c2hvdWxkVGFrZVVJ
QmFja2dyb3VuZEFzc2VydGlvbigpKQotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TCiAg
ICAgLCBtX3VzZXJPYnNlcnZhYmxlUGFnZUNvdW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkg
eyB1cGRhdGVQcm9jZXNzU3VwcHJlc3Npb25TdGF0ZSgpOyB9KQogICAgICwgbV9wcm9jZXNzU3Vw
cHJlc3Npb25EaXNhYmxlZEZvclBhZ2VDb3VudGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsg
dXBkYXRlUHJvY2Vzc1N1cHByZXNzaW9uU3RhdGUoKTsgfSkKICAgICAsIG1faGlkZGVuUGFnZVRo
cm90dGxpbmdBdXRvSW5jcmVhc2VzQ291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IG1f
aGlkZGVuUGFnZVRocm90dGxpbmdUaW1lci5zdGFydE9uZVNob3QoMF9zKTsgfSkKQEAgLTI3MSw3
ICsyNjIsOSBAQCBXZWJQcm9jZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCiAgICAgICAgIFdURjo6c2V0UHJvY2Vzc1By
aXZpbGVnZXMoYWxsUHJpdmlsZWdlcygpKTsKICAgICAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3Jh
Z2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9Vc2VDb29raWVBUEkodHJ1ZSk7CiAgICAgICAgIFBy
b2Nlc3M6OnNldElkZW50aWZpZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXI6OmdlbmVyYXRl
KCkpOwotICAgICAgICBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180CisjaWYgUExBVEZPUk0o
Q09DT0EpCisgICAgICAgIGRldGVybWluZUlUUFN0YXRlKCk7CisjZW5kaWYKICAgICB9KTsKIAog
ICAgIGlmICghbV93ZWJzaXRlRGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6
ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpKQpAQCAtNjEzLDcgKzYwNiwyMiBAQCBOZXR3b3JrUHJv
Y2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURh
dGFTdG9yZSogd2l0aAogICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5kYWxvbmVB
cHBsaWNhdGlvbkRvbWFpbjsKICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWlu
PiBhcHBCb3VuZERvbWFpbnM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFudWFs
UHJldmFsZW50UmVzb3VyY2U7Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgorCisj
aWYgUExBVEZPUk0oQ09DT0EpCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBI
YXZlSVRQRW5hYmxlZCgpOworICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdl
YnNpdGVEYXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5h
YmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAg
ICAgIHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxl
ZChlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0
ZURhdGFTdG9yZSAmJiAhbV93ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNl
dCgpKSB7CisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZl
cmVuY2VFbmFibGVkOworICAgICAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0g
ZWxzZSBpZiAoV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFX
ZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0RGF0YVN0b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5
U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJl
ZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3Rv
cmUoKS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyk7CisgICAgfSBlbHNlCisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRp
c3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOworI2VuZGlmCisKICAgICBpZiAod2l0aFdl
YnNpdGVEYXRhU3RvcmUpIHsKICAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9
IHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpOwog
I2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCkBAIC04ODQsNyArODkyLDEyIEBA
IHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlc29sdmVQYXRoc0ZvclNhbmRib3hFeHRlbnNpb25zKCkK
IAogV2ViUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2ViUHJvY2VzcyhX
ZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0YVN0b3JlLCBXZWJQcm9jZXNzUHJveHk6OklzUHJl
d2FybWVkIGlzUHJld2FybWVkKQogewotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMK
KyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVkID0gZG9lc0Fw
cEhhdmVJVFBFbmFibGVkKCk7CisgICAgaWYgKHdlYnNpdGVEYXRhU3RvcmUgJiYgIXdlYnNpdGVE
YXRhU3RvcmUtPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpCisgICAgICAgIHdlYnNpdGVEYXRh
U3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKG1fdGNjUHJlZmVyZW5jZUVu
YWJsZWQpOworI2VuZGlmCisKICAgICBhdXRvIHByb2Nlc3NQcm94eSA9IFdlYlByb2Nlc3NQcm94
eTo6Y3JlYXRlKCp0aGlzLCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CiAgICAgYXV0
byYgcHJvY2VzcyA9IHByb2Nlc3NQcm94eS5nZXQoKTsKICAgICBpbml0aWFsaXplTmV3V2ViUHJv
Y2Vzcyhwcm9jZXNzLCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0
b3JlQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9X
ZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KaW5kZXggNjg1MTMxNWNhYzUwNjkwNjhhNjc2NDM2OTQ2
NDI5N2I2MWQxMDJjMS4uMzA4MWMwMjcxODdiZDc3MDJlODZmM2YwZmQ0NWIwZGJlN2QwZmM2NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vi
c2l0ZURhdGFTdG9yZUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNp
dGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtMjcsNiArMjcsNyBAQAog
I2ltcG9ydCAiV2Vic2l0ZURhdGFTdG9yZS5oIgogCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRp
bHNDRi5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIlNh
bmRib3hVdGlsaXRpZXMuaCIKICNpbXBvcnQgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJX
ZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJveHkuaCIKQEAgLTQ1LDEyICs0Niw2IEBACiAjaW1wb3J0
IDx3dGYvVVJMLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBV
U0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2ltcG9ydCA8V2ViS2l0QWRkaXRpb25zL1dlYnNpdGVE
YXRhU3RvcmVBZGRpdGlvbnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQlNJVEVfREFUQV9TVE9SRV9B
RERJVElPTlMKLSNlbmRpZgotCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbXBvcnQgPFVJ
S2l0L1VJQXBwbGljYXRpb24uaD4KICNpbXBvcnQgPHBhbC9pb3MvTWFuYWdlZENvbmZpZ3VyYXRp
b25Tb2Z0TGluay5oPgpAQCAtNDYzLDExICs0NTgsMjUgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3Jl
Ojppbml0aWFsaXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJl
aW4KICAgICB9KTsKIH0KIAordm9pZCBXZWJzaXRlRGF0YVN0b3JlOjphZGRUZXN0RG9tYWlucygp
IGNvbnN0Cit7CisgICAgaWYgKGFwcEJvdW5kRG9tYWlucygpLmlzRW1wdHkoKSkgeworICAgICAg
ICBhdXRvIGJ1bmRsZUlEID0gV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7
CisgICAgICAgIGF1dG8gYXBwQm91bmREb21haW5zVGVzdGluZyA9IGdldEFwcEJvdW5kRG9tYWlu
c1Rlc3RpbmcoYnVuZGxlSUQpOworICAgICAgICBpZiAoYXBwQm91bmREb21haW5zVGVzdGluZykg
eworICAgICAgICAgICAgZm9yIChhdXRvJiBkb21haW4gOiAqYXBwQm91bmREb21haW5zVGVzdGlu
ZykgeworICAgICAgICAgICAgICAgIFdURkxvZ0Fsd2F5cygiV2Vic2l0ZURhdGFTdG9yZTo6YWRk
VGVzdERvbWFpbnMoKSBhZGRpbmcgZG9tYWluICVzIiwgZG9tYWluLnN0cmluZygpLmFzY2lpKCku
ZGF0YSgpKTsKKyAgICAgICAgICAgICAgICBhcHBCb3VuZERvbWFpbnMoKS5hZGQoZG9tYWluKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KK30KKwogdm9pZCBXZWJzaXRlRGF0YVN0
b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBI
YXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiYsIGNvbnN0IEhhc2hTZXQ8U3RyaW5n
PiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAogewogICAgIGlmIChoYXNJbml0aWFsaXpl
ZEFwcEJvdW5kRG9tYWlucykgewogICAgICAgICBpZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lU
ZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElP
TlM7CisgICAgICAgICAgICBhZGRUZXN0RG9tYWlucygpOwogICAgICAgICB9CiAgICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBhcHBCb3VuZFNjaGVtZXMoKSk7CiAg
ICAgICAgIHJldHVybjsKQEAgLTQ3OSw3ICs0ODgsNyBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6
OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEhhc2hT
ZQogICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMg
PSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKICAgICAgICAgICAgIEFTU0VSVChoYXNJbml0
aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7CiAgICAgICAgICAgICBpZiAobV9pc0luQXBwQnJvd3Nl
clByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAgICAgICBXRUJTSVRFX0RBVEFf
U1RPUkVfQURESVRJT05TOworICAgICAgICAgICAgICAgIGFkZFRlc3REb21haW5zKCk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihhcHBCb3VuZERvbWFpbnMo
KSwgYXBwQm91bmRTY2hlbWVzKCkpOwogICAgICAgICB9KTsKQEAgLTUwMyw5ICs1MTIsMTEgQEAg
dm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpiZWdpbkFwcEJvdW5kRG9tYWluQ2hlY2soY29uc3QgVVJM
JiByZXF1ZXN0VVJMLCBXZWJGcmFtZVAKICAgICAgICAgLy8gYmVjYXVzZSB0ZXN0IGNhc2VzIG1h
eSBoYXZlIGFwcCBib3VuZCBkb21haW5zIGJ1dCBubyBrZXkuCiAgICAgICAgIGJvb2wgaGFzQXBw
Qm91bmREb21haW5zID0ga2V5RXhpc3RzIHx8ICFkb21haW5zLmlzRW1wdHkoKTsKICAgICAgICAg
aWYgKCFoYXNBcHBCb3VuZERvbWFpbnMpIHsKKyAgICAgICAgICAgIFdURkxvZ0Fsd2F5cygiV2Vi
c2l0ZURhdGFTdG9yZTo6YmVnaW5BcHBCb3VuZERvbWFpbkNoZWNrKCkgcmV0dXJuaW5nIGlzIGFw
cCBib3VuZCBkb21haW4gbnVsbG9wdCIpOwogICAgICAgICAgICAgbGlzdGVuZXItPmRpZFJlY2Vp
dmVBcHBCb3VuZERvbWFpblJlc3VsdChXVEY6Om51bGxvcHQpOwogICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICB9CisgICAgICAgIFdURkxvZ0Fsd2F5cygiV2Vic2l0ZURhdGFTdG9yZTo6YmVn
aW5BcHBCb3VuZERvbWFpbkNoZWNrKCkgcmV0dXJuaW5nIGlzIGFwcCBib3VuZCBkb21haW4gJWQi
LCBzY2hlbWVPckRvbWFpbklzQXBwQm91bmQocmVxdWVzdFVSTCwgZG9tYWlucywgc2NoZW1lcykp
OwogICAgICAgICBsaXN0ZW5lci0+ZGlkUmVjZWl2ZUFwcEJvdW5kRG9tYWluUmVzdWx0KHNjaGVt
ZU9yRG9tYWluSXNBcHBCb3VuZChyZXF1ZXN0VVJMLCBkb21haW5zLCBzY2hlbWVzKSk7CiAgICAg
fSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9X
ZWJzaXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9X
ZWJzaXRlRGF0YVN0b3JlLmgKaW5kZXggYzZmYmJjNDkyMzlmNjk1YThiYTM0MWVmNjkzMDU3Y2Vm
MWVhYjZkMC4uMGE3ZjgzZDJiN2RjNjM1MzhjODU3ODgwMGU2MTdhZmZjNWQzZjE5ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9y
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRh
U3RvcmUuaApAQCAtMzEyLDYgKzMxMiw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgZW51bSBj
bGFzcyBGb3JjZVJlaW5pdGlhbGl6YXRpb24gOiBib29sIHsgTm8sIFllcyB9OwogICAgIHZvaWQg
aW5pdGlhbGl6ZUFwcEJvdW5kRG9tYWlucyhGb3JjZVJlaW5pdGlhbGl6YXRpb24gPSBGb3JjZVJl
aW5pdGlhbGl6YXRpb246Ok5vKTsKKyAgICB2b2lkIGFkZFRlc3REb21haW5zKCkgY29uc3Q7CiAK
ICAgICB2b2lkIGZldGNoRGF0YUFuZEFwcGx5KE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBP
cHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4sIFJlZlB0cjxXb3JrUXVldWU+JiYsIEZ1
bmN0aW9uPHZvaWQoVmVjdG9yPFdlYnNpdGVEYXRhUmVjb3JkPik+JiYgYXBwbHkpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAzMDQy
MGQ5MDZjMDJkM2M4ZmVjZTBhZGNhZGJiZjliNGEwMDg3ZDZiLi5mZTgzYzQyNTJiYmM2MDdlMTY4
MjNjOGQ0Y2FiMWE1MGMwZTExZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTk2Myw2ICs5NjMsNyBAQAogCQk0OUJDQTE5MjIzQTE3
NzY2MDAyOEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTkxMjNBMTc3
NjYwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oICovOyB9
OwogCQk0OUJDQTE5NTIzQTE4Q0ZEMDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0ZpcnN0UGFydHlJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDlCQ0ExOTAyM0ExNzU0OTAwMjhBODM2IC8qIF9XS1Jlc291cmNlTG9hZFN0
YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAqLzsgfTsKIAkJNDlCQ0ExOTcyM0ExOTMwRDAw
MjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUJDQTE5NjIzQTE4RjYyMDAy
OEE4MzYgLyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLzsgfTsKKwkJ
NDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlEQUEzOEIyNENC
QTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tICovOyB9OwogCQk0OUVD
QTQxQzIzRkNBNUQ4MDAyMzM1OEQgLyogUG9saWN5RGVjaXNpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RUNBNDFCMjNGQ0E0ODYwMDIzMzU4RCAv
KiBQb2xpY3lEZWNpc2lvbi5oICovOyB9OwogCQk0OUZCRUZGRDIzOUIwMTFEMDBCRDAzMkYgLyog
X1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUZCRUZGQzIzOUIwMTFEMDBCRDAzMkYgLyog
X1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkubW0gKi87IH07CiAJCTQ5RkJFRkZG
MjM5QjAxMkYwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RkJFRkZF
MjM5QjAxMkYwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5t
bSAqLzsgfTsKQEAgLTM1ODYsNiArMzU4Nyw4IEBACiAJCTQ5QkNBMTkwMjNBMTc1NDkwMDI4QTgz
NiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eUludGVybmFsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDlCQ0ExOTEyM0ExNzc2NjAwMjhBODM2IC8q
IEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQ
SVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTQ5QkNBMTk2MjNBMThGNjIwMDI4QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzVGhpcmRQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzVGhpcmRQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OURBQTM4QjI0
Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDlEQUEzOEQyNENCQTFCRDAwNzkzRDc1IC8qIERlZmF1bHRXZWJCcm93c2Vy
Q2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5RUNBNDFCMjNGQ0E0ODYwMDIzMzU4RCAvKiBQb2xp
Y3lEZWNpc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQb2xpY3lEZWNpc2lvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0OUZCRUZGQTIzOUFEOTc4MDBCRDAzMkYgLyogX1dLUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NDlGQkVGRkIyMzlBREIxODAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJz
dFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBh
cnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03NDgzLDYgKzc0ODYsOCBAQAog
CQkJCTFDNzM5RTg1MjM0N0JDRjYwMEM2MjFFQyAvKiBDb3JlVGV4dEhlbHBlcnMubW0gKi8sCiAJ
CQkJQzU1RjkxNkMxQzU5NUU0NDAwMjlFOTJEIC8qIERhdGFEZXRlY3Rpb25SZXN1bHQuaCAqLywK
IAkJCQlDNTVGOTE2RDFDNTk1RTQ0MDAyOUU5MkQgLyogRGF0YURldGVjdGlvblJlc3VsdC5tbSAq
LywKKwkJCQk0OURBQTM4RDI0Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVj
a3MuaCAqLywKKwkJCQk0OURBQTM4QjI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dz
ZXJDaGVja3MubW0gKi8sCiAJCQkJQ0U1NTBFMTMyMjgzNzQ0NDAwRDI4NzkxIC8qIEluc2VydFRl
eHRPcHRpb25zLmNwcCAqLywKIAkJCQlDRTU1MEUxMjIyODM3M0M4MDBEMjg3OTEgLyogSW5zZXJ0
VGV4dE9wdGlvbnMuaCAqLywKIAkJCQlDMTY2M0U1QTI0QUVBNzQyMDBDNkEzQjIgLyogTGF1bmNo
U2VydmljZXNEYXRhYmFzZVhQQ0NvbnN0YW50cy5oICovLApAQCAtMTI3MzAsNiArMTI3MzUsNyBA
QAogCQkJCTJEOTJBNzdEMjEyQjZBNzEwMEY0OTNGRCAvKiBDb25uZWN0aW9uLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTJEOTJBNzdFMjEyQjZBNzEwMEY0OTNGRCAvKiBEYXRhUmVmZXJlbmNlLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTJEOTJBNzdGMjEyQjZBNzEwMEY0OTNGRCAvKiBEZWNvZGVy
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQ5REFBMzhDMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZh
dWx0V2ViQnJvd3NlckNoZWNrcy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTJEMEM1NkZFMjI5RjFE
RUEwMEJEMzNFNyAvKiBEZXZpY2VNYW5hZ2VtZW50U29mdExpbmsubW0gaW4gU291cmNlcyAqLywK
IAkJCQkxQUI3RDYxOTEyODhCOUQ5MDBDRkQwOEMgLyogRG93bmxvYWRQcm94eU1lc3NhZ2VSZWNl
aXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQTY0MjI5OTEyREQwMjkyMDBDQUFFMkMgLyog
RHJhd2luZ0FyZWFNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMzUzNmM1Y2IyZDM0MTkz
MzJkODlhZGI2NzI2NDk1YzhhZGJiYjUyZi4uZDJhZWQxMGFhNGM0YTdjOTBlMDcxNGIxZGU4ZGQ3
NjI3YjIyMzJmNCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA3LTI5ICBLYXRlIENoZW5leSAgPGthdGhlcmlu
ZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIE1pZ3JhdGUgQXBwLUJvdW5kIERvbWFpbnMg
Y29kZSBmcm9tIFdlYktpdCBBZGRpdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNDg4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjYwNzU4
NTc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICBSZXBs
YWNlIFdlYktpdCBBZGRpdGlvbnMgbWFjcm9zIHdpdGggY29kZSB0byBzZXQgYSBkaWZmZXJlbnQg
YnVuZGxlCisgICAgICAgIGlkZW50aWZpZXIgaW5kaWNhdGluZyB0aGF0IHdlIHdhbnQgdG8gcnVu
IGFuIEFwcC1Cb3VuZCBEb21haW5zIHRlc3QuCisKKyAgICAgICAgUmVtb3ZlICNpZiBVU0UoQVBQ
TEVfSU5URVJOQUxfU0RLKSBjaGVjayBzbyB3ZSBydW4gdGhlc2UgdGVzdHMgb24gRVdTLgorCisg
ICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dzZXJQcml2
YWN5Lm1tOgorICAgICAgICAoY2xlYW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3Mp
OgorICAgICAgICAoaW5pdGlhbGl6ZUluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MpOgor
CiAyMDIwLTA3LTI5ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbYnVpbGQud2Via2l0Lm9yZ10gQWRkIEJpZyBTdXIgYnVpbGRlciAoRm9sbG93LXVwIEZp
eCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5B
cHBCcm93c2VyUHJpdmFjeS5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvSW5BcHBCcm93c2VyUHJpdmFjeS5tbQppbmRleCBlNzUwMDliNWVhNDhiNTRlOGE2NjEzM2Qy
NThjODYzMGZlNTQ5Y2Q3Li4zNjlmZmU1MjMxOGUwNzRiMGY0NGYxY2QwNjM2ZTM4OTk2ZDMxNzM0
IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBw
QnJvd3NlclByaXZhY3kubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9JbkFwcEJyb3dzZXJQcml2YWN5Lm1tCkBAIC00NSw5ICs0NSw2IEBACiAKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSNpbXBvcnQg
PFdlYktpdEFkZGl0aW9ucy9JbkFwcEJyb3dzZXJQcml2YWN5VGVzdEFkZGl0aW9ucy5oPgotCiBz
dGF0aWMgYm9vbCBpc0RvbmU7CiAKIEBpbnRlcmZhY2UgQXBwQm91bmREb21haW5EZWxlZ2F0ZSA6
IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0ZT4KQEAgLTEzMSwxNCArMTI4LDE0IEBAIEBl
bmQKIHN0YXRpYyB2b2lkIGNsZWFuVXBJbkFwcEJyb3dzZXJQcml2YWN5VGVzdFNldHRpbmdzKCkK
IHsKICAgICBXZWJDb3JlOjpjbGVhckFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdP
dmVycmlkZSgpOwotICAgIElOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfQURESVRJT05TXzIKKyAgICBX
ZWJDb3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImNvbS5hcHBsZS5XZWJLaXQu
VGVzdFdlYktpdEFQSSIpOwogfQogCiBzdGF0aWMgdm9pZCBpbml0aWFsaXplSW5BcHBCcm93c2Vy
UHJpdmFjeVRlc3RTZXR0aW5ncygpCiB7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgp
OwogICAgIFdlYkNvcmU6OmNsZWFyQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092
ZXJyaWRlKCk7Ci0gICAgSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlMKKyAgICBXZWJD
b3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoImluQXBwQnJvd3NlclByaXZhY3lU
ZXN0SWRlbnRpZmllciIpOwogfQogCiBURVNUKEluQXBwQnJvd3NlclByaXZhY3ksIE5vbkFwcEJv
dW5kRG9tYWluRmFpbGVkVXNlclNjcmlwdEF0U3RhcnQpCkBAIC0xMzM4LDYgKzEzMzUsNCBAQCBU
RVNUKEluQXBwQnJvd3NlclByaXZhY3ksIEFwcEJvdW5kQ3VzdG9tU2NoZW1lKQogICAgIFRlc3RX
ZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKIH0KIAotI2VuZGlmIC8vIFVTRShBUFBMRV9J
TlRFUk5BTF9TREspCi0KICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGE2
YzVhYmRiYTgyNjFkMDY3OTU2N2Q1N2YyYjk1MDA1YTBkZTZhOWUuLjZhNDc4MmU0YjgyYTcyMjJh
ZTM0YTc1NzNjYTViM2Y2NDdkNjRiZjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wNy0y
OSAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBN
aWdyYXRlIEFwcC1Cb3VuZCBEb21haW5zIGNvZGUgZnJvbSBXZWJLaXQgQWRkaXRpb25zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ4ODkKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzY2MDc1ODU3PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50
IEZ1bGdoYW0uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnM6
CisgICAgICAgIFRoZXNlIHRlc3RzIGFyZSBub3cgZXhwZWN0ZWQgdG8gcGFzcy4KKwogMjAyMC0w
Ny0yOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
VW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNjUwMTguCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9p
b3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZTM1ZTFmNWY5ZmFhZGI5OGIwM2ZiZmIxNGVh
MzFlMGNkMDU1MzQ2ZS4uODk4OTQzOTY2MTdhOGQ5MWM0YjBiNDYxMmZjNWMxMWI1MGEyMWM2ZiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAt
MTc5NywzICsxNzk3LDUgQEAgd2Via2l0Lm9yZy9iLzIxNDQ2OCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2NoLXVuaXQtMDAyLmgKIHdlYmtpdC5vcmcvYi8y
MTQ1MTIgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvZ2VvbWV0cnkvRE9NTWF0
cml4MkRJbml0LXZhbGlkYXRlLWZpeHVwLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiB3ZWJraXQu
b3JnL2IvMjE0NTk4IGZhc3Qvc2Nyb2xsaW5nL2lvcy9hdXRvc2Nyb2xsLWlucHV0LXdoZW4tdmVy
eS16b29tZWQuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCisKK2h0dHAvdGVzdHMvaW4tYXBwLWJyb3dz
ZXItcHJpdmFjeS8gWyBQYXNzIF0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405484</attachid>
            <date>2020-07-29 12:27:28 -0700</date>
            <delta_ts>2020-07-29 15:24:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214889-20200729122727.patch</filename>
            <type>text/plain</type>
            <size>37235</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1MDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM0YjAyYjU2N2Y3YzA4NDg2
ZDM2N2Y5MDg0MDc5ZjRlYWU1YmM2ZWQuLmE3NGViOGUwZGFhNTkxZjYwMTA1MTIwMmEzM2UyMGZl
OGYzNmEyN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjAtMDctMjkgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAt
Qm91bmQgRG9tYWlucyBjb2RlIGZyb20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NjA3NTg1Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgdGhpcyBpcyBqdXN0IGNvZGUgbWlncmF0aW9uIGFuZCB3
aWxsIGJlIHRlc3RlZAorICAgICAgICBieSBleGlzdGluZyBBcHAtQm91bmQgRG9tYWlucyB0ZXN0
cy4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OmFjdGl2YXRlU2Vzc2lvbkNsZWFudXApOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2spOgorICAg
ICAgICAqIFNoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oOiBBZGRlZC4KKyAg
ICAgICAgKiBTaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW06IEFkZGVkLgor
ICAgICAgICBIb2xkcyBhbGwgZnVuY3Rpb25zIHJlbGF0ZWQgdG8gZnVsbCBicm93c2VyIGNoZWNr
cyBhbmQKKyAgICAgICAgQXBwLUJvdW5kIERvbWFpbnMuCisKKyAgICAgICAgKFdlYktpdDo6c2hv
dWxkQmVUcmVhdGVkQXNGdWxsQnJvd3Nlcik6CisgICAgICAgIChXZWJLaXQ6OmdldEFwcEJvdW5k
RG9tYWluc1Rlc3RpbmcpOgorICAgICAgICBUaGVzZSBmdW5jdGlvbnMgYWxsb3cgdXMgdG8gdHJl
YXQgb3VyIHRlc3QgcnVubmVycyBhcyBmdWxsIGJyb3dzZXJzCisgICAgICAgIHdoaWxlIHRyaWdn
ZXJpbmcgbm9uLWJyb3dzZXIgbW9kZSBmb3IgdGVzdGluZyBvdGhlciBBcHAtQm91bmQgRG9tYWlu
cworICAgICAgICBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgIChXZWJLaXQ6OmlzSW5XZWJLaXRD
aGlsZFByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpoYXNSZXF1ZXN0ZWRDcm9zc1dlYnNpdGVU
cmFja2luZ1Blcm1pc3Npb24pOgorICAgICAgICAoV2ViS2l0OjpkZXRlcm1pbmVJVFBTdGF0ZUlu
dGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6ZGV0ZXJtaW5lSVRQU3RhdGUpOgorICAgICAgICAo
V2ViS2l0Ojpkb2VzQXBwSGF2ZUlUUEVuYWJsZWQpOgorICAgICAgICAoV2ViS2l0Ojpkb2VzUGFy
ZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKToKKyAgICAgICAgKFdlYktpdDo6aGFzUHJvaGliaXRl
ZFVzYWdlU3RyaW5ncyk6CisgICAgICAgIChXZWJLaXQ6OmlzUGFyZW50UHJvY2Vzc0FGdWxsV2Vi
QnJvd3Nlcik6CisgICAgICAgIChXZWJLaXQ6OmlzRnVsbFdlYkJyb3dzZXIpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQVBJSFRUUENvb2tpZVN0b3JlLmNwcDoKKyAgICAgICAgKEFQSTo6SFRU
UENvb2tpZVN0b3JlOjpmaWx0ZXJBcHBCb3VuZENvb2tpZXMpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAoQVBJOjpQYWdlQ29uZmln
dXJhdGlvbjo6UGFnZUNvbmZpZ3VyYXRpb24pOgorICAgICAgICAoKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6V2ViUHJv
Y2Vzc1Bvb2wpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29y
a1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2Vi
UHJvY2Vzcyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6YWRk
VGVzdERvbWFpbnMgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpl
bnN1cmVBcHBCb3VuZERvbWFpbnMgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRl
RGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisKIDIwMjAtMDctMjkgIE5vYW0gUm9zZW50aGFsICA8bm9hbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEVuYWJsZSBwYWludCB0aW1pbmcgYnkgZGVmYXVsdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tCmluZGV4IDc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVmODkxN2M0MjU5NWE1YTkuLjkz
MWI5NTYzYmY1YzcyNTI5MTRkZjBkMTUyNWYwZjY4OWZjZDQ0M2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2Eu
bW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlRGlz
cG9zaXRpb24uaCIKICNpbXBvcnQgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2ltcG9ydCAi
RGF0YVJlZmVyZW5jZS5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNp
bXBvcnQgIkRvd25sb2FkLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXIu
aCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKQEAgLTYzLDcgKzY0LDYgQEAKICNpbXBvcnQgPFdlYktp
dEFkZGl0aW9ucy9OZXR3b3JrU2Vzc2lvbkNvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmlu
ZSBORVRXT1JLX1NFU1NJT05fQ09DT0FfQURESVRJT05TXzEKLSNkZWZpbmUgTkVUV09SS19TRVNT
SU9OX0NPQ09BX0FERElUSU9OU18yIHRydWUKICNlbmRpZgogCiAjaW1wb3J0ICJEZXZpY2VNYW5h
Z2VtZW50U29mdExpbmsuaCIKQEAgLTExNTIsNiArMTE1MiwyOSBAQCB2b2lkIFNlc3Npb25XcmFw
cGVyOjppbml0aWFsaXplKE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24s
IE5ldHdvcgogICAgIHNlc3Npb24gPSBbTlNVUkxTZXNzaW9uIHNlc3Npb25XaXRoQ29uZmlndXJh
dGlvbjpjb25maWd1cmF0aW9uIGRlbGVnYXRlOmRlbGVnYXRlLmdldCgpIGRlbGVnYXRlUXVldWU6
W05TT3BlcmF0aW9uUXVldWUgbWFpblF1ZXVlXV07CiB9CiAKKyNpZiBIQVZFKFNFU1NJT05fQ0xF
QU5VUCkKK3N0YXRpYyB2b2lkIGFjdGl2YXRlU2Vzc2lvbkNsZWFudXAoTmV0d29ya1Nlc3Npb25D
b2NvYSYgc2Vzc2lvbiwgY29uc3QgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMmIHBh
cmFtZXRlcnMpCit7CisjaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICAvLyBEb24ndCBvdmVycmlkZSBhbiBl
eHBsaWNpdGx5IHNldCB2YWx1ZS4KKyAgICBpZiAocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzUGFyYW1ldGVycy5pc0l0cFN0YXRlRXhwbGljaXRseVNldCkKKyAgICAgICAgcmV0dXJu
OworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQorICAgIGF1dG8gcGFyZW50
QXVkaXRUb2tlbiA9IHNlc3Npb24ubmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5nZXRBdWRpdFRva2VuKCk7CisgICAgUkVMRUFTRV9BU1NFUlQocGFyZW50QXVkaXRU
b2tlbik7IC8vIFRoaXMgc2hvdWxkIGJlIGltcG9zc2libGUuCisKKyAgICBib29sIGl0cEVuYWJs
ZWQgPSBkb2VzUGFyZW50UHJvY2Vzc0hhdmVJVFBFbmFibGVkKHBhcmVudEF1ZGl0VG9rZW4pOwor
ICAgIGJvb2wgcGFzc2VkRW5hYmxlZFN0YXRlID0gc2Vzc2lvbi5pc1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NFbmFibGVkKCk7CisKKyAgICBpZiAoaXRwRW5hYmxlZCAhPSBwYXNzZWRFbmFibGVkU3Rh
dGUpCisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFzc2VkIElUUCBlbmFibGVkIHN0YXRlICglZCkg
ZG9lcyBub3QgbWF0Y2ggVENDIHNldHRpbmcgKCVkKVxuIiwgaXRwRW5hYmxlZCwgcGFzc2VkRW5h
YmxlZFN0YXRlKTsKKyAgICBzZXNzaW9uLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVk
KHBhc3NlZEVuYWJsZWRTdGF0ZSk7CisjZW5kaWYKKyNlbmRpZgorfQorI2VuZGlmCisKIE5ldHdv
cmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdv
cmtQcm9jZXNzLCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMp
CiAgICAgOiBOZXR3b3JrU2Vzc2lvbihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycykKICAgICAs
IG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyKHBhcmFtZXRlcnMuYm91bmRJbnRlcmZhY2VJZGVu
dGlmaWVyKQpAQCAtMTI5Miw3ICsxMzE1LDcgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNvY29hOjpp
bml0aWFsaXplRXBoZW1lcmFsU3RhdGVsZXNzU2Vzc2lvbihOYXZpZ2F0aW5nVG9BcHBCb3UKIFNl
c3Npb25XcmFwcGVyJiBOZXR3b3JrU2Vzc2lvbkNvY29hOjpzZXNzaW9uV3JhcHBlckZvclRhc2so
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBXZWJDb3JlOjpTdG9yZWRD
cmVkZW50aWFsc1BvbGljeSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgT3B0aW9uYWw8TmF2aWdh
dGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAg
ICAgYXV0byBzaG91bGRCZUNvbnNpZGVyZWRBcHBCb3VuZCA9IGlzTmF2aWdhdGluZ1RvQXBwQm91
bmREb21haW4gPyAqaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA6IE5hdmlnYXRpbmdUb0Fw
cEJvdW5kRG9tYWluOjpZZXM7Ci0gICAgaWYgKE5FVFdPUktfU0VTU0lPTl9DT0NPQV9BRERJVElP
TlNfMikKKyAgICBpZiAoaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKG5ldHdvcmtQcm9j
ZXNzKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkKICAgICAg
ICAgc2hvdWxkQmVDb25zaWRlcmVkQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
bjo6Tm87CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoYXV0
byogc3RvcmFnZVNlc3Npb24gPSBuZXR3b3JrU3RvcmFnZVNlc3Npb24oKSkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTdjMmQ1MDk3OTE4NDczYTM1NjAzYmE3YmE0OGZkN2U0M2YxM2JlZgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2Vy
Q2hlY2tzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWlu
OworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJp
bmdzKCk7CitPcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+PiBnZXRB
cHBCb3VuZERvbWFpbnNUZXN0aW5nKGNvbnN0IFN0cmluZyYpOworYm9vbCBzaG91bGRCZVRyZWF0
ZWRBc0Z1bGxCcm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpOwordm9pZCBkZXRlcm1pbmVJ
VFBTdGF0ZSgpOworYm9vbCBkb2VzQXBwSGF2ZUlUUEVuYWJsZWQoKTsKK2Jvb2wgZG9lc1BhcmVu
dFByb2Nlc3NIYXZlSVRQRW5hYmxlZChPcHRpb25hbDxhdWRpdF90b2tlbl90Pik7Citib29sIGlz
RnVsbFdlYkJyb3dzZXIoKTsKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93c2VyKE9w
dGlvbmFsPGF1ZGl0X3Rva2VuX3Q+KTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5t
bSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0RlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1t
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjJiNDUxODY4MDgzYmY3MjdkNDJlM2RhZGZjMThjMTZlNzIwMGNiNGEKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9EZWZhdWx0V2ViQnJv
d3NlckNoZWNrcy5tbQpAQCAtMCwwICsxLDI0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorI2ltcG9ydCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKKworI2ltcG9ydCAi
VENDU1BJLmgiCisjaW1wb3J0ICJWZXJzaW9uQ2hlY2tzLmgiCisjaW1wb3J0IDxXZWJDb3JlL1Jl
Z2lzdHJhYmxlRG9tYWluLmg+CisjaW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNo
ZWNrcy5oPgorI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+
CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQgPHd0Zi9jb2NvYS9FbnRpdGxl
bWVudHMuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KKworU09GVF9MSU5LX1BS
SVZBVEVfRlJBTUVXT1JLKFRDQykKK1NPRlRfTElOSyhUQ0MsIFRDQ0FjY2Vzc1ByZWZsaWdodCwg
VENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAoQ0ZTdHJpbmdSZWYgc2VydmljZSwgQ0ZEaWN0aW9u
YXJ5UmVmIG9wdGlvbnMpLCAoc2VydmljZSwgb3B0aW9ucykpCitTT0ZUX0xJTksoVENDLCBUQ0NB
Y2Nlc3NQcmVmbGlnaHRXaXRoQXVkaXRUb2tlbiwgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0LCAo
Q0ZTdHJpbmdSZWYgc2VydmljZSwgYXVkaXRfdG9rZW5fdCB0b2tlbiwgQ0ZEaWN0aW9uYXJ5UmVm
IG9wdGlvbnMpLCAoc2VydmljZSwgdG9rZW4sIG9wdGlvbnMpKQorU09GVF9MSU5LX0NPTlNUQU5U
KFRDQywga1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNraW5nUHJldmVudGlvbiwgQ0ZT
dHJpbmdSZWYpCisKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0YXRpYyBib29sIGlzRnVsbFdl
YkJyb3dzZXIoY29uc3QgU3RyaW5nJik7CisKK2Jvb2wgc2hvdWxkQmVUcmVhdGVkQXNGdWxsQnJv
d3Nlcihjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHJldHVybiBidW5kbGVJRCA9PSAi
Y29tLmFwcGxlLldlYktpdC5UZXN0V2ViS2l0QVBJIl9zIHx8IGJ1bmRsZUlEID09ICJjb20uYXBw
bGUuV2ViS2l0LldlYktpdFRlc3RSdW5uZXIiX3MgfHwgYnVuZGxlSUQgPT0gIm9yZy53ZWJraXQu
V2ViS2l0VGVzdFJ1bm5lckFwcCJfczsKK30KKworT3B0aW9uYWw8VmVjdG9yPFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluPj4gZ2V0QXBwQm91bmREb21haW5zVGVzdGluZyhjb25zdCBTdHJpbmcm
IGJ1bmRsZUlEKQoreworICAgIGlmIChidW5kbGVJRC5pc051bGwoKSkKKyAgICAgICAgcmV0dXJu
IFdURjo6bnVsbG9wdDsKKworICAgIHN0YXRpYyBhdXRvIGFwcEJvdW5kRG9tYWluTGlzdCA9IG1h
a2VOZXZlckRlc3Ryb3llZChIYXNoTWFwPFN0cmluZywgVmVjdG9yPFdlYkNvcmU6OlJlZ2lzdHJh
YmxlRG9tYWluPj4geworICAgICAgICB7ImluQXBwQnJvd3NlclByaXZhY3lUZXN0SWRlbnRpZmll
ciJfcywgVmVjdG9yPFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiB7IFdlYkNvcmU6OlJlZ2lz
dHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tUmVnaXN0cmFibGVEb21haW5TdHJpbmco
IjEyNy4wLjAuMSIpIH19LAorICAgIH0pOworCisgICAgYXV0byBhcHBCb3VuZERvbWFpbkl0ZXIg
PSBhcHBCb3VuZERvbWFpbkxpc3QtPmZpbmQoYnVuZGxlSUQpOworICAgIGlmIChhcHBCb3VuZERv
bWFpbkl0ZXIgIT0gYXBwQm91bmREb21haW5MaXN0LT5lbmQoKSkKKyAgICAgICAgcmV0dXJuIGFw
cEJvdW5kRG9tYWluSXRlci0+dmFsdWU7CisKKyAgICByZXR1cm4gV1RGOjpudWxsb3B0OworfQor
CisjaWYgQVNTRVJUX0VOQUJMRUQKK3N0YXRpYyBib29sIGlzSW5XZWJLaXRDaGlsZFByb2Nlc3Mo
KQoreworICAgIHN0YXRpYyBib29sIGlzSW5TdWJQcm9jZXNzOworCisgICAgc3RhdGljIGRpc3Bh
dGNoX29uY2VfdCBvbmNlOworICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57CisgICAgICAgIE5T
U3RyaW5nICpidW5kbGVJZGVudGlmaWVyID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJ
ZGVudGlmaWVyXTsKKyAgICAgICAgaXNJblN1YlByb2Nlc3MgPSBbYnVuZGxlSWRlbnRpZmllciBo
YXNQcmVmaXg6QCJjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQiXQorICAgICAgICAgICAgfHwg
W2J1bmRsZUlkZW50aWZpZXIgaGFzUHJlZml4OkAiY29tLmFwcGxlLldlYktpdC5OZXR3b3JraW5n
Il0KKyAgICAgICAgICAgIHx8IFtidW5kbGVJZGVudGlmaWVyIGhhc1ByZWZpeDpAImNvbS5hcHBs
ZS5XZWJLaXQuR1BVIl07CisgICAgfSk7CisKKyAgICByZXR1cm4gaXNJblN1YlByb2Nlc3M7Cit9
CisjZW5kaWYKKworZW51bSBjbGFzcyBJVFBTdGF0ZSA6IHVpbnQ4X3QgeworICAgIFVuaW5pdGlh
bGl6ZWQsCisgICAgSW5pdGlhbGl6aW5nLAorICAgIEVuYWJsZWQsCisgICAgRGlzYWJsZWQKK307
CisKK3N0YXRpYyBzdGQ6OmF0b21pYzxJVFBTdGF0ZT4gZ19jdXJyZW50SVRQU3RhdGUgPSBJVFBT
dGF0ZTo6VW5pbml0aWFsaXplZDsKKworc3RhdGljIGJvb2wgaGFzUmVxdWVzdGVkQ3Jvc3NXZWJz
aXRlVHJhY2tpbmdQZXJtaXNzaW9uKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFBy
b2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgc3RkOjphdG9taWM8Ym9vbD4gaGFzUmVxdWVzdGVkQ3Jv
c3NXZWJzaXRlVHJhY2tpbmdQZXJtaXNzaW9uID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBvYmpl
Y3RGb3JJbmZvRGljdGlvbmFyeUtleTpAIk5TQ3Jvc3NXZWJzaXRlVHJhY2tpbmdVc2FnZURlc2Ny
aXB0aW9uIl07CisgICAgcmV0dXJuIGhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVy
bWlzc2lvbjsKK30KKworc3RhdGljIGJvb2wgZGV0ZXJtaW5lSVRQU3RhdGVJbnRlcm5hbChib29s
IGFwcFdhc0xpbmtlZE9uT3JBZnRlciwgY29uc3QgU3RyaW5nJiBidW5kbGVJZGVudGlmaWVyKQor
eworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworICAgIEFTU0VSVCghaXNJbldlYktp
dENoaWxkUHJvY2VzcygpKTsKKworICAgIGlmICghYXBwV2FzTGlua2VkT25PckFmdGVyKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoIWlzRnVsbFdlYkJyb3dzZXIoYnVuZGxlSWRl
bnRpZmllcikgJiYgIWhhc1JlcXVlc3RlZENyb3NzV2Vic2l0ZVRyYWNraW5nUGVybWlzc2lvbigp
KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFRDQ0FjY2Vzc1ByZWZsaWdodFJlc3VsdCBy
ZXN1bHQgPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworI2lmIChQTEFURk9STShJT1MpICYm
IF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkgfHwgKFBMQVRGT1JN
KE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMTAwMDApCisgICAg
cmVzdWx0ID0gVENDQWNjZXNzUHJlZmxpZ2h0KGdldGtUQ0NTZXJ2aWNlV2ViS2l0SW50ZWxsaWdl
bnRUcmFja2luZ1ByZXZlbnRpb24oKSwgbnVsbHB0cik7CisjZW5kaWYKKyAgICByZXR1cm4gcmVz
dWx0ICE9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7Cit9CisKK3N0YXRpYyBkaXNwYXRjaF9x
dWV1ZV90IGdfaXRwUXVldWU7CisKK3ZvaWQgZGV0ZXJtaW5lSVRQU3RhdGUoKQoreworICAgIEFT
U0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGdfY3VycmVudElUUFN0YXRlICE9IElU
UFN0YXRlOjpVbmluaXRpYWxpemVkKQorICAgICAgICByZXR1cm47CisKKyAgICBnX2N1cnJlbnRJ
VFBTdGF0ZSA9IElUUFN0YXRlOjpJbml0aWFsaXppbmc7CisgICAgYm9vbCBhcHBXYXNMaW5rZWRP
bk9yQWZ0ZXIgPSBsaW5rZWRPbk9yQWZ0ZXIoU0RLVmVyc2lvbjo6Rmlyc3RXaXRoU2Vzc2lvbkNs
ZWFudXBCeURlZmF1bHQsIEFzc3VtZVNhZmFyaUlzQWx3YXlzTGlua2VkT25BZnRlcjo6WWVzKTsK
KworICAgIGdfaXRwUXVldWUgPSBkaXNwYXRjaF9xdWV1ZV9jcmVhdGUoImNvbS5hcHBsZS5XZWJL
aXQuaXRwQ2hlY2tRdWV1ZSIsIE5VTEwpOworCisgICAgZGlzcGF0Y2hfYXN5bmMoZ19pdHBRdWV1
ZSwgW2FwcFdhc0xpbmtlZE9uT3JBZnRlciwgYnVuZGxlSWRlbnRpZmllciA9IFdlYkNvcmU6OmFw
cGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpLmlzb2xhdGVkQ29weSgpXSB7CisgICAgICAgIGdf
Y3VycmVudElUUFN0YXRlID0gZGV0ZXJtaW5lSVRQU3RhdGVJbnRlcm5hbChhcHBXYXNMaW5rZWRP
bk9yQWZ0ZXIsIGJ1bmRsZUlkZW50aWZpZXIpID8gSVRQU3RhdGU6OkVuYWJsZWQgOiBJVFBTdGF0
ZTo6RGlzYWJsZWQ7CisKKyAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5f
cXVldWUoKSwgXnsKKyAgICAgICAgICAgIGRpc3BhdGNoX3JlbGVhc2UoZ19pdHBRdWV1ZSk7Cisg
ICAgICAgICAgICBnX2l0cFF1ZXVlID0gbnVsbHB0cjsKKyAgICAgICAgfSk7CisgICAgfSk7Cit9
CisKK2Jvb2wgZG9lc0FwcEhhdmVJVFBFbmFibGVkKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJL
aXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBp
ZiAoZ19jdXJyZW50SVRQU3RhdGUgPiBJVFBTdGF0ZTo6SW5pdGlhbGl6aW5nKQorICAgICAgICBy
ZXR1cm4gZ19jdXJyZW50SVRQU3RhdGUgPT0gSVRQU3RhdGU6OkVuYWJsZWQ7CisKKyAgICBSRUxF
QVNFX0FTU0VSVChnX2l0cFF1ZXVlKTsKKworICAgIF9fYmxvY2sgYm9vbCBpc0lUUEVuYWJsZWQ7
CisgICAgZGlzcGF0Y2hfc3luYyhnX2l0cFF1ZXVlLCBeeworICAgICAgICBpc0lUUEVuYWJsZWQg
PSBnX2N1cnJlbnRJVFBTdGF0ZSA9PSBJVFBTdGF0ZTo6RW5hYmxlZDsKKyAgICB9KTsKKyAgICBy
ZXR1cm4gaXNJVFBFbmFibGVkOworfQorCitib29sIGRvZXNQYXJlbnRQcm9jZXNzSGF2ZUlUUEVu
YWJsZWQoT3B0aW9uYWw8YXVkaXRfdG9rZW5fdD4gYXVkaXRUb2tlbikKK3sKKyAgICBBU1NFUlQo
aXNJbldlYktpdENoaWxkUHJvY2VzcygpKTsKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OworCisgICAgaWYgKCFpc1BhcmVudFByb2Nlc3NBRnVsbFdlYkJyb3dzZXIoYXVkaXRUb2tlbikp
CisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgVENDQWNjZXNzUHJlZmxpZ2h0UmVzdWx0IHJl
c3VsdCA9IGtUQ0NBY2Nlc3NQcmVmbGlnaHREZW5pZWQ7CisjaWYgKFBMQVRGT1JNKElPUykgJiYg
X19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSB8fCAoUExBVEZPUk0o
TUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMCkKKyAgICBp
ZiAoYXVkaXRUb2tlbikKKyAgICAgICAgcmVzdWx0ID0gVENDQWNjZXNzUHJlZmxpZ2h0V2l0aEF1
ZGl0VG9rZW4oZ2V0a1RDQ1NlcnZpY2VXZWJLaXRJbnRlbGxpZ2VudFRyYWNraW5nUHJldmVudGlv
bigpLCBhdWRpdFRva2VuLnZhbHVlKCksIG51bGxwdHIpOworI2VuZGlmCisgICAgcmV0dXJuIHJl
c3VsdCAhPSBrVENDQWNjZXNzUHJlZmxpZ2h0RGVuaWVkOworfQorCitzdGF0aWMgc3RkOjphdG9t
aWM8Ym9vbD4gaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IGZhbHNlOworYm9vbCBoYXNQcm9oaWJp
dGVkVXNhZ2VTdHJpbmdzKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3Mo
KSk7CisKKyAgICBzdGF0aWMgYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzID0gZmFsc2U7
CisKKyAgICBpZiAoaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncykKKyAgICAgICAgcmV0dXJuIGhhc1By
b2hpYml0ZWRVc2FnZVN0cmluZ3M7CisKKyAgICBOU0RpY3Rpb25hcnkgKmluZm9EaWN0aW9uYXJ5
ID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBpbmZvRGljdGlvbmFyeV07CisgICAgUkVMRUFTRV9B
U1NFUlQoaW5mb0RpY3Rpb25hcnkpOworCisgICAgLy8gU2VlIDxyZGFyOi8vcHJvYmxlbS81OTk3
OTQ2OD4gZm9yIGRldGFpbHMgYWJvdXQgaG93IHRoaXMgbGlzdCB3YXMgc2VsZWN0ZWQuCisgICAg
YXV0byBwcm9oaWJpdGVkU3RyaW5ncyA9IEBbCisgICAgICAgIEAiTlNIb21lS2l0VXNhZ2VEZXNj
cmlwdGlvbiIsCisgICAgICAgIEAiTlNCbHVldG9vdGhBbHdheXNVc2FnZURlc2NyaXB0aW9uIiwK
KyAgICAgICAgQCJOU1Bob3RvTGlicmFyeVVzYWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5T
SGVhbHRoU2hhcmVVc2FnZURlc2NyaXB0aW9uIiwKKyAgICAgICAgQCJOU0hlYWx0aFVwZGF0ZVVz
YWdlRGVzY3JpcHRpb24iLAorICAgICAgICBAIk5TTG9jYXRpb25BbHdheXNVc2FnZURlc2NyaXB0
aW9uIiwKKyAgICAgICAgQCJOU0xvY2F0aW9uQWx3YXlzQW5kV2hlbkluVXNlVXNhZ2VEZXNjcmlw
dGlvbiIKKyAgICBdOworCisgICAgZm9yIChOU1N0cmluZyAqcHJvaGliaXRlZFN0cmluZyA6IHBy
b2hpYml0ZWRTdHJpbmdzKSB7CisgICAgICAgIGlmIChbaW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9y
S2V5OnByb2hpYml0ZWRTdHJpbmddKSB7CisgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9IFtO
U1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiW0luLUFwcCBCcm93c2VyIFByaXZhY3ldICVAIHVz
ZWQgcHJvaGliaXRlZCB1c2FnZSBzdHJpbmcgJUAuIiwgW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBi
dW5kbGVJZGVudGlmaWVyXSwgcHJvaGliaXRlZFN0cmluZ107CisgICAgICAgICAgICBXVEZMb2dB
bHdheXMobWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgIGhhc1Byb2hpYml0ZWRV
c2FnZVN0cmluZ3MgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9
CisgICAgaGFzQ2hlY2tlZFVzYWdlU3RyaW5ncyA9IHRydWU7CisgICAgcmV0dXJuIGhhc1Byb2hp
Yml0ZWRVc2FnZVN0cmluZ3M7Cit9CisKK2Jvb2wgaXNQYXJlbnRQcm9jZXNzQUZ1bGxXZWJCcm93
c2VyKE9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+IGF1ZGl0VG9rZW4pCit7CisgICAgQVNTRVJUKGlz
SW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoYXVkaXRUb2tlbik7
CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3NlcjsKKworICAgIHN0YXRpYyBkaXNwYXRj
aF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICBmdWxs
V2ViQnJvd3NlciA9IFdURjo6aGFzRW50aXRsZW1lbnQoYXVkaXRUb2tlbi52YWx1ZSgpLCAiY29t
LmFwcGxlLmRldmVsb3Blci53ZWItYnJvd3NlciIpOworICAgIH0pOworCisgICAgcmV0dXJuIGZ1
bGxXZWJCcm93c2VyIHx8IHNob3VsZEJlVHJlYXRlZEFzRnVsbEJyb3dzZXIoV2ViQ29yZTo6YXBw
bGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpOworfQorCitzdGF0aWMgYm9vbCBpc0Z1bGxXZWJC
cm93c2VyKGNvbnN0IFN0cmluZyYgYnVuZGxlSWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoIWlz
SW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisKKyAgICBzdGF0aWMgYm9vbCBmdWxsV2ViQnJvd3Nl
ciA9IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxvcGVyLndlYi1i
cm93c2VyIik7CisKKyAgICByZXR1cm4gZnVsbFdlYkJyb3dzZXIgfHwgc2hvdWxkQmVUcmVhdGVk
QXNGdWxsQnJvd3NlcihidW5kbGVJZGVudGlmaWVyKTsKK30KKworYm9vbCBpc0Z1bGxXZWJCcm93
c2VyKCkKK3sKKyAgICBBU1NFUlQoIWlzSW5XZWJLaXRDaGlsZFByb2Nlc3MoKSk7CisgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBpc0Z1bGxXZWJCcm93c2VyKFdl
YkNvcmU6OmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKTsKK30KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJSFRU
UENvb2tpZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29v
a2llU3RvcmUuY3BwCmluZGV4IDIzNDA3NjNlNzdlMWEzNWNmMmMyNDNiMTU1OTQwNDY1OWM5YjUx
M2EuLmE2ZTE1OTFlNTUwNDlkMjllNzc2MTQxOWFhMzE4ZGYwMGE0Nzc5OGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElIVFRQQ29va2llU3RvcmUuY3BwCkBAIC0y
Niw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkFQSUhUVFBDb29r
aWVTdG9yZS5oIgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRlICJEZWZhdWx0
V2ViQnJvd3NlckNoZWNrcy5oIgorI2VuZGlmCisKICNpbmNsdWRlICJXZWJDb29raWVNYW5hZ2Vy
UHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUgIldlYnNpdGVE
YXRhU3RvcmUuaCIKQEAgLTM1LDEyICszOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9IVFRQQ29v
a2llQWNjZXB0UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3RvcmFnZVNlc3Np
b24uaD4KIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRk
aXRpb25zL0hUVFBDb29raWVTdG9yZUFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZpbmUgSU1QTEVN
RU5UX0lOX0FQUF9CUk9XU0VSX1BSSVZBQ1lfRU5BQkxFRCBmYWxzZQotI2VuZGlmCi0KIHVzaW5n
IG5hbWVzcGFjZSBXZWJLaXQ7CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNjYsNyArNjQsNyBAQCB2
b2lkIEhUVFBDb29raWVTdG9yZTo6ZmlsdGVyQXBwQm91bmRDb29raWVzKGNvbnN0IFZlY3RvcjxX
ZWJDb3JlOjpDb29raWU+JiBjb29raQogICAgIFZlY3RvcjxXZWJDb3JlOjpDb29raWU+IGFwcEJv
dW5kQ29va2llczsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIG1fb3duaW5nRGF0YVN0
b3JlLT5nZXRBcHBCb3VuZERvbWFpbnMoW2Nvb2tpZXMsIGFwcEJvdW5kQ29va2llcyA9IFdURk1v
dmUoYXBwQm91bmRDb29raWVzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKV0gKGF1dG8mIGRvbWFpbnMpIG11dGFibGUgewotICAgICAgICBpZiAoIWRvbWFp
bnMuaXNFbXB0eSgpICYmIElNUExFTUVOVF9JTl9BUFBfQlJPV1NFUl9QUklWQUNZX0VOQUJMRUQp
IHsKKyAgICAgICAgaWYgKCFkb21haW5zLmlzRW1wdHkoKSAmJiAhaXNGdWxsV2ViQnJvd3Nlcigp
KSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvb2tpZSA6IGNvb2tpZXMpIHsKICAgICAgICAg
ICAgICAgICBpZiAoZG9tYWlucy5jb250YWlucyhXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbjo6
dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llLmRvbWFpbikpKQogICAgICAgICAgICAgICAg
ICAgICBhcHBCb3VuZENvb2tpZXMuYXBwZW5kKGNvb2tpZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmNwcAppbmRleCA0MzFmY2Vm
Nzg2YzliNWMzMDA0NzZhMzEyYTQ3ODhlMDk0MDQ0ZTQ5Li43MDI3OGZiZGUwMmY3M2RlZDQwZDc5
M2QwMThlNDhhZTliNTVmYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDEyICszNSw2IEBACiAjaW5jbHVk
ZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgogI2luY2x1ZGUgIldlYlVzZXJDb250ZW50Q29udHJv
bGxlclByb3h5LmgiCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2luY2x1ZGUgPFdl
YktpdEFkZGl0aW9ucy9QYWdlQ29uZmlndXJhdGlvbkFkZGl0aW9ucy5oPgotI2Vsc2UKLSNkZWZp
bmUgUEFHRV9DT05GSUdVUkFUSU9OX0FERElUSU9OUwotI2VuZGlmCi0KICNpZiBFTkFCTEUoQVBQ
TElDQVRJT05fTUFOSUZFU1QpCiAjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5pZmVzdC5oIgog
I2VuZGlmCkBAIC01NCw3ICs0OCw2IEBAIFJlZjxQYWdlQ29uZmlndXJhdGlvbj4gUGFnZUNvbmZp
Z3VyYXRpb246OmNyZWF0ZSgpCiB9CiAKIFBhZ2VDb25maWd1cmF0aW9uOjpQYWdlQ29uZmlndXJh
dGlvbigpCi1QQUdFX0NPTkZJR1VSQVRJT05fQURESVRJT05TCiB7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDJiYWQxZDZlNTM4ODYxMjU0NzJjNjBl
OTE0ODcxZjgyMTg1ZTRlYjMuLjA3NzBiMTMxYTEwY2M2ZDM5NDEzY2E4MDViMmEwZTE3MzVkMzg4
ZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtMTY2LDYg
KzE2Niw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9QdWJsaWNTdWZmaXguaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL1JlbmRlckVtYmVkZGVkT2JqZWN0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25D
aGVja3MuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1NTTEtleUdlbmVyYXRvci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2Vy
aWFsaXplZENyeXB0b0tleVdyYXAuaD4KQEAgLTI4OCwxMyArMjg5LDggQEAKICNpbmNsdWRlICJN
ZWRpYVVzYWdlTWFuYWdlci5oIgogI2VuZGlmCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RL
KQotI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9XZWJQYWdlUHJveHlBZGRpdGlvbnMuaD4KLSNl
bHNlCi1zdGF0aWMgYm9vbCBpc0Z1bGxXZWJCcm93c2VyKCkgeyByZXR1cm4gdHJ1ZTsgfQotI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCi1zdGF0aWMgYm9vbCBoYXNQcm9oaWJpdGVkVXNhZ2VTdHJp
bmdzKCkgeyByZXR1cm4gZmFsc2U7IH0KLSNlbmRpZgorI2lmIFBMQVRGT1JNKENPQ09BKQorI2lu
Y2x1ZGUgIkRlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgiCiAjZW5kaWYKIAogLy8gVGhpcyBjb250
cm9scyB3aGF0IHN0cmF0ZWd5IHdlIHVzZSBmb3IgbW91c2Ugd2hlZWwgY29hbGVzY2luZy4KQEAg
LTEzOTYsOCArMTM5MiwxMCBAQCBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBXZWJQYWdlUHJveHk6
OmxvYWREYXRhKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSwgYwogewogICAgIFJFTEVB
U0VfTE9HX0lGX0FMTE9XRUQoTG9hZGluZywgImxvYWREYXRhOiIpOwogCisjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKICAgICBpZiAoTUlNRVR5cGUgPT0gInRleHQvaHRtbCJfcyAmJiAhaXNGdWxs
V2ViQnJvd3NlcigpKQogICAgICAgICBtX2xpbWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFp
bnMgPSB0cnVlOworI2VuZGlmCiAKICAgICBpZiAobV9pc0Nsb3NlZCkgewogICAgICAgICBSRUxF
QVNFX0xPR19JRl9BTExPV0VEKExvYWRpbmcsICJsb2FkRGF0YTogcGFnZSBpcyBjbG9zZWQiKTsK
QEAgLTMxNDIsNiArMzE0MCw3IEBAIGJvb2wgV2ViUGFnZVByb3h5OjpzZXRJc05hdmlnYXRpbmdU
b0FwcEJvdW5kRG9tYWluQW5kQ2hlY2tJZlBlcm1pdHRlZChib29sIGlzTWFpCiAgICAgICAgICAg
ICBtX2lzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERv
bWFpbjo6Tm87CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KKwogICAgIGlmICghaXNOYXZp
Z2F0aW5nVG9BcHBCb3VuZERvbWFpbikgewogICAgICAgICBtX2lzTmF2aWdhdGluZ1RvQXBwQm91
bmREb21haW4gPSBXVEY6Om51bGxvcHQ7CiAgICAgICAgIHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDkyODFlMWNlNDMyOWIzNDJj
MzNhZDg5MDdlMzg3MzE2YmZkZjAyMWQuLmI4ODA4MGI5Njc4ODI3ZmZkZWNiYmY3ZjEwZmNiZTUx
MGMxNWI5NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAK
QEAgLTEyNiw2ICsxMjYsNyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNs
dWRlICJEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oIgogI2luY2x1ZGUgIlZlcnNpb25DaGVja3Mu
aCIKICNpbmNsdWRlIDxXZWJDb3JlL0dhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9ISURHYW1lcGFkUHJvdmlkZXIuaD4KQEAgLTE0MSwxNSArMTQyLDYg
QEAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+CiAjZW5kaWYKIAotI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0jaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1dlYlBy
b2Nlc3NQb29sQWRkaXRpb25zLmg+Ci0jZWxzZQotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FE
RElUSU9OUwotI2RlZmluZSBXRUJfUFJPQ0VTU19QT09MX0FERElUSU9OU18yCi0jZGVmaW5lIFdF
Ql9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKLSNkZWZpbmUgV0VCX1BST0NFU1NfUE9PTF9BRERJ
VElPTlNfNAotI2VuZGlmCi0KICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0coY2hh
bm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HKGNoYW5uZWwsICIlcCAtIFdlYlByb2Nlc3NQb29s
OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVM
RUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5u
ZWwsICIlcCAtIFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKICNk
ZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChjaGFubmVsLCBmbXQs
IC4uLikgUkVMRUFTRV9MT0dfSUYoc2Vzc2lvbklELmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgp
LCBjaGFubmVsLCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdT
X18pCkBAIC0yNTUsNyArMjQ3LDYgQEAgV2ViUHJvY2Vzc1Bvb2w6OldlYlByb2Nlc3NQb29sKEFQ
STo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogI2VuZGlmCiAgICAg
LCBtX2Fsd2F5c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eShtX2NvbmZpZ3VyYXRpb24tPmFsd2F5
c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eSgpKQogICAgICwgbV9zaG91bGRUYWtlVUlCYWNrZ3Jv
dW5kQXNzZXJ0aW9uKG1fY29uZmlndXJhdGlvbi0+c2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2Vy
dGlvbigpKQotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TCiAgICAgLCBtX3VzZXJPYnNl
cnZhYmxlUGFnZUNvdW50ZXIoW3RoaXNdKFJlZkNvdW50ZXJFdmVudCkgeyB1cGRhdGVQcm9jZXNz
U3VwcHJlc3Npb25TdGF0ZSgpOyB9KQogICAgICwgbV9wcm9jZXNzU3VwcHJlc3Npb25EaXNhYmxl
ZEZvclBhZ2VDb3VudGVyKFt0aGlzXShSZWZDb3VudGVyRXZlbnQpIHsgdXBkYXRlUHJvY2Vzc1N1
cHByZXNzaW9uU3RhdGUoKTsgfSkKICAgICAsIG1faGlkZGVuUGFnZVRocm90dGxpbmdBdXRvSW5j
cmVhc2VzQ291bnRlcihbdGhpc10oUmVmQ291bnRlckV2ZW50KSB7IG1faGlkZGVuUGFnZVRocm90
dGxpbmdUaW1lci5zdGFydE9uZVNob3QoMF9zKTsgfSkKQEAgLTI3MSw3ICsyNjIsOSBAQCBXZWJQ
cm9jZXNzUG9vbDo6V2ViUHJvY2Vzc1Bvb2woQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24m
IGNvbmZpZ3VyYXRpb24pCiAgICAgICAgIFdURjo6c2V0UHJvY2Vzc1ByaXZpbGVnZXMoYWxsUHJp
dmlsZWdlcygpKTsKICAgICAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJt
aXRQcm9jZXNzVG9Vc2VDb29raWVBUEkodHJ1ZSk7CiAgICAgICAgIFByb2Nlc3M6OnNldElkZW50
aWZpZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXI6OmdlbmVyYXRlKCkpOwotICAgICAgICBX
RUJfUFJPQ0VTU19QT09MX0FERElUSU9OU180CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgICAg
IGRldGVybWluZUlUUFN0YXRlKCk7CisjZW5kaWYKICAgICB9KTsKIAogICAgIGlmICghbV93ZWJz
aXRlRGF0YVN0b3JlICYmIFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9y
ZUV4aXN0cygpKQpAQCAtNjEzLDcgKzYwNiwyMiBAQCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQ
cm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2l0aAog
ICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHN0YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFp
bjsKICAgICBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBhcHBCb3VuZERvbWFp
bnM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFudWFsUHJldmFsZW50UmVzb3Vy
Y2U7Ci0gICAgV0VCX1BST0NFU1NfUE9PTF9BRERJVElPTlNfMgorCisjaWYgUExBVEZPUk0oQ09D
T0EpCisgICAgbV90Y2NQcmVmZXJlbmNlRW5hYmxlZCA9IGRvZXNBcHBIYXZlSVRQRW5hYmxlZCgp
OworICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSAmJiAhd2l0aFdlYnNpdGVEYXRhU3RvcmUt
PmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7CisgICAgICAgIHdpdGhXZWJzaXRl
RGF0YVN0b3JlLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChlbmFibGVSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzKTsKKyAgICB9IGVsc2UgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSAmJiAh
bV93ZWJzaXRlRGF0YVN0b3JlLT5pc0l0cFN0YXRlRXhwbGljaXRseVNldCgpKSB7CisgICAgICAg
IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1ByZWZlcmVuY2VFbmFibGVkOwor
ICAgICAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFi
bGVkKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOworICAgIH0gZWxzZSBpZiAoV2Vic2l0
ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUV4aXN0cygpICYmICFXZWJzaXRlRGF0YVN0b3Jl
OjpkZWZhdWx0RGF0YVN0b3JlKCktPmlzSXRwU3RhdGVFeHBsaWNpdGx5U2V0KCkpIHsKKyAgICAg
ICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQ7
CisgICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHREYXRhU3RvcmUoKS0+c2V0UmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk7Cisg
ICAgfSBlbHNlCisgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX3RjY1By
ZWZlcmVuY2VFbmFibGVkOworI2VuZGlmCisKICAgICBpZiAod2l0aFdlYnNpdGVEYXRhU3RvcmUp
IHsKICAgICAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IHdpdGhXZWJzaXRlRGF0
YVN0b3JlLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpOwogI2lmIEVOQUJMRShSRVNP
VVJDRV9MT0FEX1NUQVRJU1RJQ1MpCkBAIC04ODQsNyArODkyLDEyIEBAIHZvaWQgV2ViUHJvY2Vz
c1Bvb2w6OnJlc29sdmVQYXRoc0ZvclNhbmRib3hFeHRlbnNpb25zKCkKIAogV2ViUHJvY2Vzc1By
b3h5JiBXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3V2ViUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3Jl
KiB3ZWJzaXRlRGF0YVN0b3JlLCBXZWJQcm9jZXNzUHJveHk6OklzUHJld2FybWVkIGlzUHJld2Fy
bWVkKQogewotICAgIFdFQl9QUk9DRVNTX1BPT0xfQURESVRJT05TXzMKKyNpZiBQTEFURk9STShD
T0NPQSkKKyAgICBtX3RjY1ByZWZlcmVuY2VFbmFibGVkID0gZG9lc0FwcEhhdmVJVFBFbmFibGVk
KCk7CisgICAgaWYgKHdlYnNpdGVEYXRhU3RvcmUgJiYgIXdlYnNpdGVEYXRhU3RvcmUtPmlzSXRw
U3RhdGVFeHBsaWNpdGx5U2V0KCkpCisgICAgICAgIHdlYnNpdGVEYXRhU3RvcmUtPnNldFJlc291
cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKG1fdGNjUHJlZmVyZW5jZUVuYWJsZWQpOworI2VuZGlm
CisKICAgICBhdXRvIHByb2Nlc3NQcm94eSA9IFdlYlByb2Nlc3NQcm94eTo6Y3JlYXRlKCp0aGlz
LCB3ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CiAgICAgYXV0byYgcHJvY2VzcyA9IHBy
b2Nlc3NQcm94eS5nZXQoKTsKICAgICBpbml0aWFsaXplTmV3V2ViUHJvY2Vzcyhwcm9jZXNzLCB3
ZWJzaXRlRGF0YVN0b3JlLCBpc1ByZXdhcm1lZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0gYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3Jl
Q29jb2EubW0KaW5kZXggNjg1MTMxNWNhYzUwNjkwNjhhNjc2NDM2OTQ2NDI5N2I2MWQxMDJjMS4u
ZmIzYjIxZmQ5MzYyOGEzNGFlM2Q0ZGVjZmQ0ZTc5N2NmNjUzMWY2NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dl
YnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtMjcsNiArMjcsNyBAQAogI2ltcG9ydCAiV2Vic2l0
ZURhdGFTdG9yZS5oIgogCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRpbHNDRi5oIgorI2ltcG9y
dCAiRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaCIKICNpbXBvcnQgIlNhbmRib3hVdGlsaXRpZXMu
aCIKICNpbXBvcnQgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJGcmFtZVBvbGljeUxp
c3RlbmVyUHJveHkuaCIKQEAgLTQ1LDEyICs0Niw2IEBACiAjaW1wb3J0IDx3dGYvVVJMLmg+CiAj
aW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQotI2ltcG9ydCA8V2ViS2l0QWRkaXRpb25zL1dlYnNpdGVEYXRhU3RvcmVBZGRpdGlv
bnMuaD4KLSNlbHNlCi0jZGVmaW5lIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlMKLSNlbmRp
ZgotCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbXBvcnQgPFVJS2l0L1VJQXBwbGljYXRp
b24uaD4KICNpbXBvcnQgPHBhbC9pb3MvTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGluay5oPgpA
QCAtNDYzLDExICs0NTgsMjMgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjppbml0aWFsaXplQXBw
Qm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4KICAgICB9KTsKIH0K
IAordm9pZCBXZWJzaXRlRGF0YVN0b3JlOjphZGRUZXN0RG9tYWlucygpIGNvbnN0Cit7CisgICAg
aWYgKGFwcEJvdW5kRG9tYWlucygpLmlzRW1wdHkoKSkgeworICAgICAgICBhdXRvIGJ1bmRsZUlE
ID0gV2ViQ29yZTo6YXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8g
YXBwQm91bmREb21haW5zVGVzdGluZyA9IGdldEFwcEJvdW5kRG9tYWluc1Rlc3RpbmcoYnVuZGxl
SUQpOworICAgICAgICBpZiAoYXBwQm91bmREb21haW5zVGVzdGluZykgeworICAgICAgICAgICAg
Zm9yIChhdXRvJiBkb21haW4gOiAqYXBwQm91bmREb21haW5zVGVzdGluZykKKyAgICAgICAgICAg
ICAgICBhcHBCb3VuZERvbWFpbnMoKS5hZGQoZG9tYWluKTsKKyAgICAgICAgfQorICAgIH0KK30K
Kwogdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiYs
IGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAogewog
ICAgIGlmIChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucykgewogICAgICAgICBpZiAobV9p
c0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAgICAgIFdFQlNJ
VEVfREFUQV9TVE9SRV9BRERJVElPTlM7CisgICAgICAgICAgICBhZGRUZXN0RG9tYWlucygpOwog
ICAgICAgICB9CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpLCBh
cHBCb3VuZFNjaGVtZXMoKSk7CiAgICAgICAgIHJldHVybjsKQEAgLTQ3OSw3ICs0ODYsNyBAQCB2
b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IEhhc2hTZQogICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2go
W3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKICAgICAg
ICAgICAgIEFTU0VSVChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7CiAgICAgICAgICAg
ICBpZiAobV9pc0luQXBwQnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKLSAgICAgICAg
ICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICAgICAgICAgIGFk
ZFRlc3REb21haW5zKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFu
ZGxlcihhcHBCb3VuZERvbWFpbnMoKSwgYXBwQm91bmRTY2hlbWVzKCkpOwogICAgICAgICB9KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuaAppbmRleCBjNmZiYmM0OTIzOWY2OTVhOGJhMzQxZWY2OTMwNTdjZWYxZWFiNmQw
Li4wYTdmODNkMmI3ZGM2MzUzOGM4NTc4ODAwZTYxN2FmZmM1ZDNmMTlkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5o
CkBAIC0zMTIsNiArMzEyLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIEZv
cmNlUmVpbml0aWFsaXphdGlvbiA6IGJvb2wgeyBObywgWWVzIH07CiAgICAgdm9pZCBpbml0aWFs
aXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiA9IEZvcmNlUmVpbml0aWFs
aXphdGlvbjo6Tm8pOworICAgIHZvaWQgYWRkVGVzdERvbWFpbnMoKSBjb25zdDsKIAogICAgIHZv
aWQgZmV0Y2hEYXRhQW5kQXBwbHkoT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4sIE9wdGlvblNl
dDxXZWJzaXRlRGF0YUZldGNoT3B0aW9uPiwgUmVmUHRyPFdvcmtRdWV1ZT4mJiwgRnVuY3Rpb248
dm9pZChWZWN0b3I8V2Vic2l0ZURhdGFSZWNvcmQ+KT4mJiBhcHBseSk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDMwNDIwZDkwNmMw
MmQzYzhmZWNlMGFkY2FkYmJmOWI0YTAwODdkNmIuLmZlODNjNDI1MmJiYzYwN2UxNjgyM2M4ZDRj
YWIxYTUwYzBlMTFkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtOTYzLDYgKzk2Myw3IEBACiAJCTQ5QkNBMTkyMjNBMTc3NjYwMDI4
QTgzNiAvKiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlCQ0ExOTEyM0ExNzc2NjAwMjhB
ODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5LmggKi87IH07CiAJCTQ5
QkNBMTk1MjNBMThDRkQwMDI4QTgzNiAvKiBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQ
YXJ0eUludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0OUJDQTE5MDIzQTE3NTQ5MDAyOEE4MzYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0ZpcnN0UGFydHlJbnRlcm5hbC5oICovOyB9OwogCQk0OUJDQTE5NzIzQTE5MzBEMDAyOEE4MzYg
LyogQVBJUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QkNBMTk2MjNBMThGNjIwMDI4QTgzNiAv
KiBBUElSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovOyB9OworCQk0OURBQTM4
QzI0Q0JBMUE4MDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OURBQTM4QjI0Q0JBMUE4MDA3
OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MubW0gKi87IH07CiAJCTQ5RUNBNDFDMjNG
Q0E1RDgwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGlj
eURlY2lzaW9uLmggKi87IH07CiAJCTQ5RkJFRkZEMjM5QjAxMUQwMEJEMDMyRiAvKiBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RkJFRkZDMjM5QjAxMUQwMEJEMDMyRiAvKiBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eS5tbSAqLzsgfTsKIAkJNDlGQkVGRkYyMzlCMDEy
RjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlGQkVGRkUyMzlCMDEy
RjAwQkQwMzJGIC8qIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5Lm1tICovOyB9
OwpAQCAtMzU4Niw2ICszNTg3LDggQEAKIAkJNDlCQ0ExOTAyM0ExNzU0OTAwMjhBODM2IC8qIF9X
S1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5SW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlJbnRlcm5hbC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0OUJDQTE5MTIzQTE3NzY2MDAyOEE4MzYgLyogQVBJUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDlCQ0ExOTYyM0ExOEY2MjAwMjhBODM2IC8qIEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NU
aGlyZFBhcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSVJlc291cmNlTG9hZFN0YXRpc3RpY3NUaGly
ZFBhcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5REFBMzhCMjRDQkExQTgw
MDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IERlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0OURBQTM4RDI0Q0JBMUJEMDA3OTNENzUgLyogRGVmYXVsdFdlYkJyb3dzZXJDaGVja3Mu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGVmYXVsdFdlYkJyb3dzZXJDaGVja3MuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNDlFQ0E0MUIyM0ZDQTQ4NjAwMjMzNThEIC8qIFBvbGljeURlY2lz
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvbGljeURlY2lzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQ5RkJFRkZBMjM5QUQ5NzgwMEJEMDMyRiAvKiBfV0tSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzVGhpcmRQYXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzVGhpcmRQYXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUZCRUZG
QjIzOUFEQjE4MDBCRDAzMkYgLyogX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gX1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0ODMsNiArNzQ4Niw4IEBACiAJCQkJMUM3
MzlFODUyMzQ3QkNGNjAwQzYyMUVDIC8qIENvcmVUZXh0SGVscGVycy5tbSAqLywKIAkJCQlDNTVG
OTE2QzFDNTk1RTQ0MDAyOUU5MkQgLyogRGF0YURldGVjdGlvblJlc3VsdC5oICovLAogCQkJCUM1
NUY5MTZEMUM1OTVFNDQwMDI5RTkyRCAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0Lm1tICovLAorCQkJ
CTQ5REFBMzhEMjRDQkExQkQwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNrcy5oICov
LAorCQkJCTQ5REFBMzhCMjRDQkExQTgwMDc5M0Q3NSAvKiBEZWZhdWx0V2ViQnJvd3NlckNoZWNr
cy5tbSAqLywKIAkJCQlDRTU1MEUxMzIyODM3NDQ0MDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9wdGlv
bnMuY3BwICovLAogCQkJCUNFNTUwRTEyMjI4MzczQzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0
aW9ucy5oICovLAogCQkJCUMxNjYzRTVBMjRBRUE3NDIwMEM2QTNCMiAvKiBMYXVuY2hTZXJ2aWNl
c0RhdGFiYXNlWFBDQ29uc3RhbnRzLmggKi8sCkBAIC0xMjczMCw2ICsxMjczNSw3IEBACiAJCQkJ
MkQ5MkE3N0QyMTJCNkE3MTAwRjQ5M0ZEIC8qIENvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMkQ5MkE3N0UyMTJCNkE3MTAwRjQ5M0ZEIC8qIERhdGFSZWZlcmVuY2UuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMkQ5MkE3N0YyMTJCNkE3MTAwRjQ5M0ZEIC8qIERlY29kZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNDlEQUEzOEMyNENCQTFBODAwNzkzRDc1IC8qIERlZmF1bHRXZWJC
cm93c2VyQ2hlY2tzLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQwQzU2RkUyMjlGMURFQTAwQkQz
M0U3IC8qIERldmljZU1hbmFnZW1lbnRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAogCQkJCTFB
QjdENjE5MTI4OEI5RDkwMENGRDA4QyAvKiBEb3dubG9hZFByb3h5TWVzc2FnZVJlY2VpdmVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTFBNjQyMjk5MTJERDAyOTIwMENBQUUyQyAvKiBEcmF3aW5n
QXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzNTM2YzVjYjJkMzQxOTMzMmQ4OWFk
YjY3MjY0OTVjOGFkYmJiNTJmLi5kMmFlZDEwYWE0YzRhN2M5MGUwNzE0YjFkZThkZDc2MjdiMjIz
MmY0IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMjAtMDctMjkgIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5l
eUBhcHBsZS5jb20+CisKKyAgICAgICAgTWlncmF0ZSBBcHAtQm91bmQgRG9tYWlucyBjb2RlIGZy
b20gV2ViS2l0IEFkZGl0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE0ODg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjA3NTg1Nz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAgIFJlcGxhY2UgV2Vi
S2l0IEFkZGl0aW9ucyBtYWNyb3Mgd2l0aCBjb2RlIHRvIHNldCBhIGRpZmZlcmVudCBidW5kbGUK
KyAgICAgICAgaWRlbnRpZmllciBpbmRpY2F0aW5nIHRoYXQgd2Ugd2FudCB0byBydW4gYW4gQXBw
LUJvdW5kIERvbWFpbnMgdGVzdC4KKworICAgICAgICBSZW1vdmUgI2lmIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspIGNoZWNrIHNvIHdlIHJ1biB0aGVzZSB0ZXN0cyBvbiBFV1MuCisKKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luQXBwQnJvd3NlclByaXZhY3kubW06
CisgICAgICAgIChjbGVhblVwSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncyk6CisgICAg
ICAgIChpbml0aWFsaXplSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RTZXR0aW5ncyk6CisKIDIwMjAt
MDctMjkgIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFti
dWlsZC53ZWJraXQub3JnXSBBZGQgQmlnIFN1ciBidWlsZGVyIChGb2xsb3ctdXAgRml4KQpkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFwcEJyb3dz
ZXJQcml2YWN5Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbkFw
cEJyb3dzZXJQcml2YWN5Lm1tCmluZGV4IGU3NTAwOWI1ZWE0OGI1NGU4YTY2MTMzZDI1OGM4NjMw
ZmU1NDljZDcuLjM2OWZmZTUyMzE4ZTA3NGIwZjQ0ZjFjZDA2MzZlMzg5OTZkMzE3MzQgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvSW5BcHBCcm93c2Vy
UHJpdmFjeS5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0lu
QXBwQnJvd3NlclByaXZhY3kubW0KQEAgLTQ1LDkgKzQ1LDYgQEAKIAogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCiAKLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotI2ltcG9ydCA8V2ViS2l0
QWRkaXRpb25zL0luQXBwQnJvd3NlclByaXZhY3lUZXN0QWRkaXRpb25zLmg+Ci0KIHN0YXRpYyBi
b29sIGlzRG9uZTsKIAogQGludGVyZmFjZSBBcHBCb3VuZERvbWFpbkRlbGVnYXRlIDogTlNPYmpl
Y3QgPFdLTmF2aWdhdGlvbkRlbGVnYXRlPgpAQCAtMTMxLDE0ICsxMjgsMTQgQEAgQGVuZAogc3Rh
dGljIHZvaWQgY2xlYW5VcEluQXBwQnJvd3NlclByaXZhY3lUZXN0U2V0dGluZ3MoKQogewogICAg
IFdlYkNvcmU6OmNsZWFyQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJyaWRl
KCk7Ci0gICAgSU5fQVBQX0JST1dTRVJfUFJJVkFDWV9BRERJVElPTlNfMgorICAgIFdlYkNvcmU6
OnNldEFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigiY29tLmFwcGxlLldlYktpdC5UZXN0V2Vi
S2l0QVBJIik7CiB9CiAKIHN0YXRpYyB2b2lkIGluaXRpYWxpemVJbkFwcEJyb3dzZXJQcml2YWN5
VGVzdFNldHRpbmdzKCkKIHsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CiAgICAg
V2ViQ29yZTo6Y2xlYXJBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXJUZXN0aW5nT3ZlcnJpZGUo
KTsKLSAgICBJTl9BUFBfQlJPV1NFUl9QUklWQUNZX0FERElUSU9OUworICAgIFdlYkNvcmU6OnNl
dEFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigiaW5BcHBCcm93c2VyUHJpdmFjeVRlc3RJZGVu
dGlmaWVyIik7CiB9CiAKIFRFU1QoSW5BcHBCcm93c2VyUHJpdmFjeSwgTm9uQXBwQm91bmREb21h
aW5GYWlsZWRVc2VyU2NyaXB0QXRTdGFydCkKQEAgLTEzMzgsNiArMTMzNSw0IEBAIFRFU1QoSW5B
cHBCcm93c2VyUHJpdmFjeSwgQXBwQm91bmRDdXN0b21TY2hlbWUpCiAgICAgVGVzdFdlYktpdEFQ
STo6VXRpbDo6cnVuKCZpc0RvbmUpOwogfQogCi0jZW5kaWYgLy8gVVNFKEFQUExFX0lOVEVSTkFM
X1NESykKLQogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTZjNWFiZGJh
ODI2MWQwNjc5NTY3ZDU3ZjJiOTUwMDVhMGRlNmE5ZS4uNmE0NzgyZTRiODJhNzIyMmFlMzRhNzU3
M2NhNWIzZjY0N2Q2NGJmNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA3LTI5ICBLYXRl
IENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIE1pZ3JhdGUg
QXBwLUJvdW5kIERvbWFpbnMgY29kZSBmcm9tIFdlYktpdCBBZGRpdGlvbnMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDg4OQorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNjYwNzU4NTc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hh
bS4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAg
ICAgVGhlc2UgdGVzdHMgYXJlIG5vdyBleHBlY3RlZCB0byBwYXNzLgorCiAyMDIwLTA3LTI5ICBD
b21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmll
d2VkLCByZXZlcnRpbmcgcjI2NTAxOC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCBlMzVlMWY1ZjlmYWFkYjk4YjAzZmJmYjE0ZWEzMWUwY2Qw
NTUzNDZlLi44OTg5NDM5NjYxN2E4ZDkxYzRiMGI0NjEyZmM1YzExYjUwYTIxYzZmIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNzk3LDMg
KzE3OTcsNSBAQCB3ZWJraXQub3JnL2IvMjE0NDY4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy12YWx1ZXMvY2gtdW5pdC0wMDIuaAogd2Via2l0Lm9yZy9iLzIxNDUxMiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9nZW9tZXRyeS9ET01NYXRyaXgyRElu
aXQtdmFsaWRhdGUtZml4dXAuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8y
MTQ1OTggZmFzdC9zY3JvbGxpbmcvaW9zL2F1dG9zY3JvbGwtaW5wdXQtd2hlbi12ZXJ5LXpvb21l
ZC5odG1sIFsgUGFzcyBGYWlsdXJlIF0KKworaHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2
YWN5LyBbIFBhc3MgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>