<?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>188779</bug_id>
          
          <creation_ts>2018-08-20 23:02:30 -0700</creation_ts>
          <short_desc>Support &quot;name&quot; option for dedicated workers</short_desc>
          <delta_ts>2018-08-21 21:59:14 -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>New Bugs</component>
          <version>WebKit Nightly 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=164678</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>
          
          <blocked>164678</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>d</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>joepeck</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>sam</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1451977</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-20 23:02:30 -0700</bug_when>
    <thetext>Support &quot;name&quot; option for dedicated workers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451981</commentid>
    <comment_count>1</comment_count>
      <attachid>347613</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-20 23:09:34 -0700</bug_when>
    <thetext>Created attachment 347613
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451982</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-08-20 23:12:11 -0700</bug_when>
    <thetext>Attachment 347613 did not pass style-queue:


ERROR: Source/WebCore/workers/service/context/ServiceWorkerThread.cpp:75:  Missing spaces around :  [whitespace/init] [4]
Total errors found: 1 in 18 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451983</commentid>
    <comment_count>3</comment_count>
      <attachid>347614</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-20 23:12:31 -0700</bug_when>
    <thetext>Created attachment 347614
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451984</commentid>
    <comment_count>4</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-08-20 23:15:12 -0700</bug_when>
    <thetext>Attachment 347614 did not pass style-queue:


ERROR: Source/WebCore/workers/service/context/ServiceWorkerThread.cpp:75:  Missing spaces around :  [whitespace/init] [4]
Total errors found: 1 in 18 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451995</commentid>
    <comment_count>5</comment_count>
      <attachid>347618</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-21 00:25:39 -0700</bug_when>
    <thetext>Created attachment 347618
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451999</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-21 00:27:59 -0700</bug_when>
    <thetext>*** Bug 172016 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452000</commentid>
    <comment_count>7</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-08-21 00:28:08 -0700</bug_when>
    <thetext>Attachment 347618 did not pass style-queue:


ERROR: Source/WebCore/workers/service/context/ServiceWorkerThread.cpp:75:  Missing spaces around :  [whitespace/init] [4]
Total errors found: 1 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452172</commentid>
    <comment_count>8</comment_count>
      <attachid>347618</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-08-21 11:22:33 -0700</bug_when>
    <thetext>Comment on attachment 347618
Patch

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

r=me!

&gt; Source/WebCore/ChangeLog:14
&gt; +        [2]: https://bugs.webkit.org/show_bug.cgi?id=164678

Yep! I have been looking forward to this for a while, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452175</commentid>
    <comment_count>9</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-08-21 11:23:46 -0700</bug_when>
    <thetext>Would it be worth a test of our own for Worker names, or should we just rely on the WPTs?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452177</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-21 11:27:04 -0700</bug_when>
    <thetext>(In reply to Joseph Pecoraro from comment #9)
&gt; Would it be worth a test of our own for Worker names, or should we just rely
&gt; on the WPTs?

We can add tests additionally! I&apos;ll add several ones :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452180</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-21 11:40:08 -0700</bug_when>
    <thetext>Committed r235128: &lt;https://trac.webkit.org/changeset/235128&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452183</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-21 11:42:29 -0700</bug_when>
    <thetext>&lt;rdar://problem/43570680&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452266</commentid>
    <comment_count>13</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2018-08-21 14:05:37 -0700</bug_when>
    <thetext>The new test:
http/wpt/workers/name-property-enhanced.html

From patch:
&lt;https://trac.webkit.org/changeset/235128&gt;

Is flakey and failed on most builds:
https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=http%2Fwpt%2Fworkers%2Fname-property-enhanced.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452298</commentid>
    <comment_count>14</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-08-21 14:29:51 -0700</bug_when>
    <thetext>&gt; Is flakey and failed on most builds:
&gt; https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.
&gt; html#showAllRuns=true&amp;tests=http%2Fwpt%2Fworkers%2Fname-property-enhanced.
&gt; html

Thanks for the heads up.

Do you file bugzilla bugs on these failures? What is the failure diff? It requires a lot of clicks from the slow loading flakiness dashboard to act!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452300</commentid>
    <comment_count>15</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-08-21 14:31:54 -0700</bug_when>
    <thetext>Looks like the failure is out of order results:
https://build.webkit.org/results/Apple%20Sierra%20Release%20WK1%20(Tests)/r235128%20(12237)/results.html

&gt; --- /Volumes/Data/slave/sierra-release-tests-wk1/build/layout-test-results/http/wpt/workers/name-property-enhanced-expected.txt
&gt; +++ /Volumes/Data/slave/sierra-release-tests-wk1/build/layout-test-results/http/wpt/workers/name-property-enhanced-actual.txt
&gt; @@ -2,7 +2,7 @@
&gt;  Harness Error (FAIL), message = 2 duplicate test names: &quot;name property value for DedicatedWorkerGlobalScope&quot;, &quot;name property is replaceable for DedicatedWorkerGlobalScope&quot;
&gt;  
&gt;  PASS name property value for DedicatedWorkerGlobalScope 
&gt; -PASS name property is replaceable for DedicatedWorkerGlobalScope 
&gt;  PASS name property value for DedicatedWorkerGlobalScope 
&gt;  PASS name property is replaceable for DedicatedWorkerGlobalScope 
&gt; +PASS name property is replaceable for DedicatedWorkerGlobalScope</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452301</commentid>
    <comment_count>16</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-08-21 14:33:19 -0700</bug_when>
    <thetext>Maybe in WPT fetch_tests_from_worker(...) might run tests in parallel instead of serial?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452483</commentid>
    <comment_count>17</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-08-21 19:04:07 -0700</bug_when>
    <thetext>This test is failing more often than it is passing on the bots and is slowing down EWS.

We should roll this out if it needs more investigation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452489</commentid>
    <comment_count>18</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-08-21 19:22:54 -0700</bug_when>
    <thetext>Reverted r235128 for reason:

The test added with this change is frequently failing.

Committed r235155: &lt;https://trac.webkit.org/changeset/235155&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452526</commentid>
    <comment_count>19</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-21 21:58:32 -0700</bug_when>
    <thetext>Committed r235159: &lt;https://trac.webkit.org/changeset/235159&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452527</commentid>
    <comment_count>20</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-08-21 21:59:14 -0700</bug_when>
    <thetext>Thanks, I&apos;ve relanded the patch by splitting the test into 2 files to make it deterministic!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347613</attachid>
            <date>2018-08-20 23:09:34 -0700</date>
            <delta_ts>2018-08-20 23:12:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188779-20180821150933.patch</filename>
            <type>text/plain</type>
            <size>40607</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDMzZWQwYTA4OTFhZWM1
ZmM5MmE2M2Y4ODUzYWQ4MjFlNGIyOGI0Mi4uMzU5OWExMzkxNTNmYjlkMmM2ZjhkMTEwZDQ1NTZj
YTMxNTUxMzg4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUzIEBACisyMDE4LTA4LTIwICBZdXN1
a2UgU3V6dWtpICA8eXVzdWtlc3V6dWtpQHNsb3dzdGFydC5vcmc+CisKKyAgICAgICAgU3VwcG9y
dCAibmFtZSIgb3B0aW9uIGZvciBkZWRpY2F0ZWQgd29ya2VycworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Nzc5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGBuZXcgV29ya2Vy
KHVybCwgeyBuYW1lOiAiV29ya2VyIE5hbWUiIH0pYCBvcHRpb24gc3VwcG9ydFsxXS4KKyAgICAg
ICAgVGhpcyBuYW1lIGNhbiBiZSBhY2Nlc3NpYmxlIGZyb20gYHNlbGYubmFtZWAgb2YgRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUuCisgICAgICAgIEl0IGlzIHVzZWZ1bCBmb3IgZGVidWdnaW5n
IGRlZGljYXRlZCB3b3JrZXJzIGlmIHRoZSBpbnNwZWN0b3IgY2FuIHNob3cgdGhlCisgICAgICAg
IG5hbWVzIG9mIHRoZSB3b3JrZXJzLiBUaGlzIGVuaGFuY2VtZW50IGlzIHRyYWNrZWQgYnkgWzJd
LgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIuY29tL3doYXR3Zy9odG1sL2lzc3Vlcy8y
NDc3CisgICAgICAgIFsyXTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2NDY3OAorCisgICAgICAgICogd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSk6CisgICAgICAgIEhvbGQgYG5hbWVgIG1lbWJlci4KKworICAg
ICAgICAqIHdvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiB3
b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgQWRkIGBuYW1l
YCBhdHRyaWJ1dGUuCisKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OkRlZGljYXRlZFdv
cmtlclRocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OmNy
ZWF0ZVdvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtl
clRocmVhZC5oOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Oldvcmtlcjo6V29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlcjo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6Oldvcmtlcjo6bm90aWZ5RmluaXNoZWQpOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuaWRsOgorICAgICAgICBB
ZGQgV29ya2VyT3B0aW9ucyBmb3IgZGVkaWNhdGVkIHdvcmtlciBjcmVhdGlvbi4KKworICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGVQcm94eS5oOgorICAgICAgICAqIHdvcmtlcnMv
V29ya2VyTWVzc2FnaW5nUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyTWVzc2Fn
aW5nUHJveHk6OnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyTWVzc2FnaW5nUHJveHkuaDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclRocmVhZC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6V29ya2VyVGhyZWFk
U3RhcnR1cERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkOjpXb3JrZXJUaHJl
YWQpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkOjp3b3JrZXJUaHJlYWQpOgorICAg
ICAgICAqIHdvcmtlcnMvV29ya2VyVGhyZWFkLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNl
L2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXJ2
aWNlV29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKToKKyAgICAgICAgKFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmg6CisKIDIwMTgt
MDgtMjAgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJ
bnNwZWN0b3I6IGFsbG93IGJyZWFrcG9pbnRzIHRvIGJlIHNldCBmb3Igc3BlY2lmaWMgZXZlbnQg
bGlzdGVuZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdv
cmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4IDIxZGRlZGIzZDAzYTVjZDE1MjA0ODc0MjQ1NDAxNmZj
OGU4MjAyZTEuLmRiN2Q3NzcwYzQ0NWM4ZGZhNmJmMDIyNWNiODA5NGNkMDAxZTBiODggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGUuY3BwCkBAIC00MSwxNiArNDEsMTcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1SZWY8
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU+IERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpj
cmVhdGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNvbnN0
IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxp
bmUsIERlZGljYXRlZFdvcmtlclRocmVhZCYgdGhyZWFkLCBjb25zdCBDb250ZW50U2VjdXJpdHlQ
b2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVy
cywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxT
ZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURC
Q2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwgU29ja2V0UHJvdmlk
ZXIqIHNvY2tldFByb3ZpZGVyLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitSZWY8RGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGU+IERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUo
Y29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2Vu
dCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiB0aHJlYWQsIGNvbnN0IENv
bnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5
UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0
eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0
aW1lT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5
LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25J
RCkKIHsKLSAgICBhdXRvIGNvbnRleHQgPSBhZG9wdFJlZigqbmV3IERlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlKHVybCwgV1RGTW92ZShvcmlnaW4pLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlz
T25saW5lLCB0aHJlYWQsIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGlj
eSwgV1RGTW92ZSh0b3BPcmlnaW4pLCB0aW1lT3JpZ2luLCBjb25uZWN0aW9uUHJveHksIHNvY2tl
dFByb3ZpZGVyLCBzZXNzaW9uSUQpKTsKKyAgICBhdXRvIGNvbnRleHQgPSBhZG9wdFJlZigqbmV3
IERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlKHVybCwgV1RGTW92ZShvcmlnaW4pLCBuYW1lLCBp
ZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCB0aHJlYWQsIHNob3VsZEJ5cGFzc01haW5X
b3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgV1RGTW92ZSh0b3BPcmlnaW4pLCB0aW1lT3JpZ2lu
LCBjb25uZWN0aW9uUHJveHksIHNvY2tldFByb3ZpZGVyLCBzZXNzaW9uSUQpKTsKICAgICBpZiAo
IXNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSkKICAgICAgICAgY29u
dGV4dC0+YXBwbHlDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMoY29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzKTsKICAgICByZXR1cm4gY29udGV4dDsKIH0KIAot
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlKGNv
bnN0IFVSTCYgdXJsLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBjb25zdCBTdHJpbmcm
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRp
Y2F0ZWRXb3JrZXJUaHJlYWQmIHRocmVhZCwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250
ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90
b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5l
Y3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyLCBQQUw6OlNlc3Npb25J
RCBzZXNzaW9uSUQpCitEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6RGVkaWNhdGVkV29ya2Vy
R2xvYmFsU2NvcGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4s
IGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJp
bmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiB0aHJl
YWQsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8
U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElE
QkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3Zp
ZGVyKiBzb2NrZXRQcm92aWRlciwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogICAgIDogV29y
a2VyR2xvYmFsU2NvcGUodXJsLCBXVEZNb3ZlKG9yaWdpbiksIGlkZW50aWZpZXIsIHVzZXJBZ2Vu
dCwgaXNPbmxpbmUsIHRocmVhZCwgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5
UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Qcm94eSwg
c29ja2V0UHJvdmlkZXIsIHNlc3Npb25JRCkKKyAgICAsIG1fbmFtZShuYW1lKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3Bl
LmgKaW5kZXggNTIxYmE0MDhhMTJlN2ZkYmVhM2ZjMzJmMGFmNmVlMGMzNTAyMDA4YS4uNTVhOTll
NTc2NDRjNWQ3ODQ4MzQzNTQ2YmUwMDdiOGYzMDdjNTk2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtNDgsOSArNDgs
MTEgQEAgY2xhc3MgU2VyaWFsaXplZFNjcmlwdFZhbHVlOwogCiBjbGFzcyBEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZSBmaW5hbCA6IHB1YmxpYyBXb3JrZXJHbG9iYWxTY29wZSB7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIFJlZjxEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZT4gY3JlYXRlKGNvbnN0
IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhy
ZWFkJiwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBz
aG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxTZWN1cml0eU9y
aWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJ
REJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIFBBTDo6U2Vzc2lvbklEKTsKKyAg
ICBzdGF0aWMgUmVmPERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGUoY29uc3QgVVJM
JiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmlu
ZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIERl
ZGljYXRlZFdvcmtlclRocmVhZCYsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNl
SGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5
LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBQQUw6
OlNlc3Npb25JRCk7CiAgICAgdmlydHVhbCB+RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUoKTsK
IAorICAgIGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQorCiAg
ICAgRXhjZXB0aW9uT3I8dm9pZD4gcG9zdE1lc3NhZ2UoSlNDOjpFeGVjU3RhdGUmLCBKU0M6OkpT
VmFsdWUgbWVzc2FnZSwgVmVjdG9yPEpTQzo6U3Ryb25nPEpTQzo6SlNPYmplY3Q+PiYmKTsKIAog
ICAgIERlZGljYXRlZFdvcmtlclRocmVhZCYgdGhyZWFkKCk7CkBAIC01OCwxMSArNjAsMTMgQEAg
Y2xhc3MgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgZmluYWwgOiBwdWJsaWMgV29ya2VyR2xv
YmFsU2NvcGUgewogcHJpdmF0ZToKICAgICB1c2luZyBCYXNlID0gV29ya2VyR2xvYmFsU2NvcGU7
CiAKLSAgICBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJp
dHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2Vy
QWdlbnQsIGJvb2wgaXNPbmxpbmUsIERlZGljYXRlZFdvcmtlclRocmVhZCYsIGJvb2wgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+
JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURCQ29u
bmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBQQUw6OlNlc3Npb25JRCk7CisgICAgRGVk
aWNhdGVkV29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYm
LCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIERlZGljYXRlZFdvcmtlclRocmVhZCYsIGJv
b2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJp
dHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVu
dDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBQQUw6OlNlc3Npb25JRCk7
CiAKICAgICBib29sIGlzRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUoKSBjb25zdCBmaW5hbCB7
IHJldHVybiB0cnVlOyB9CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gaW1wb3J0U2NyaXB0cyhjb25z
dCBWZWN0b3I8U3RyaW5nPiYgdXJscykgZmluYWw7CiAgICAgRXZlbnRUYXJnZXRJbnRlcmZhY2Ug
ZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBjb25zdCBmaW5hbDsKKworICAgIFN0cmluZyBtX25hbWU7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsCmluZGV4IDNiYWVkZjA1OWVh
MjQ3OWEwODkwMzUxYjI5MGIxZjE5ZTU4MDQ0OWUuLmNlYTY5YmZhZmExNzhkOGY5ZjUwY2VlZDAz
MzY0M2MzMDliYzYxYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVk
aWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0zNyw2ICszNyw4IEBACiAgICAgSXNJbW11
dGFibGVQcm90b3R5cGVFeG90aWNPYmplY3QsCiAgICAgSXNJbW11dGFibGVQcm90b3R5cGVFeG90
aWNPYmplY3RPblByb3RvdHlwZSwKIF0gaW50ZXJmYWNlIERlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlIDogV29ya2VyR2xvYmFsU2NvcGUgeworICAgIFtSZXBsYWNlYWJsZV0gcmVhZG9ubHkgYXR0
cmlidXRlIERPTVN0cmluZyBuYW1lOworCiAgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBNYXlU
aHJvd0V4Y2VwdGlvbl0gdm9pZCBwb3N0TWVzc2FnZShhbnkgbWVzc2FnZSwgb3B0aW9uYWwgc2Vx
dWVuY2U8b2JqZWN0PiB0cmFuc2ZlciA9IFtdKTsKIAogICAgIHZvaWQgY2xvc2UoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcAppbmRleCBk
ZmM2Nzc2NTA5YzI1NTZkMjlkMDMzNWZjMTI4ODhmY2I4M2ZmYTFiLi43M2EzZGE0YmFhYWU0OTgx
ZjdkYjc1YjNhMTU5OGY4YThkNGRiZWU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9EZWRpY2F0ZWRXb3JrZXJUaHJlYWQuY3BwCkBAIC0zOCwxNyArMzgsMTcgQEAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi1EZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OkRlZGljYXRlZFdvcmtlclRo
cmVhZChjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJp
bmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBX
b3JrZXJMb2FkZXJQcm94eSYgd29ya2VyTG9hZGVyUHJveHksIFdvcmtlckRlYnVnZ2VyUHJveHkm
IHdvcmtlckRlYnVnZ2VyUHJveHksIFdvcmtlck9iamVjdFByb3h5JiB3b3JrZXJPYmplY3RQcm94
eSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlIHN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5
UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRl
cnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25z
dCBTZWN1cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElE
QkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3Zp
ZGVyKiBzb2NrZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdzLCBQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQpCi0gICAgOiBXb3JrZXJUaHJlYWQodXJsLCBpZGVudGlmaWVy
LCB1c2VyQWdlbnQsIGlzT25saW5lLCBzb3VyY2VDb2RlLCB3b3JrZXJMb2FkZXJQcm94eSwgd29y
a2VyRGVidWdnZXJQcm94eSwgd29ya2VyT2JqZWN0UHJveHksIHN0YXJ0TW9kZSwgY29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50
U2VjdXJpdHlQb2xpY3ksIHRvcE9yaWdpbiwgdGltZU9yaWdpbiwgY29ubmVjdGlvblByb3h5LCBz
b2NrZXRQcm92aWRlciwgcnVudGltZUZsYWdzLCBzZXNzaW9uSUQpCitEZWRpY2F0ZWRXb3JrZXJU
aHJlYWQ6OkRlZGljYXRlZFdvcmtlclRocmVhZChjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50
LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIFdvcmtlckxvYWRlclBy
b3h5JiB3b3JrZXJMb2FkZXJQcm94eSwgV29ya2VyRGVidWdnZXJQcm94eSYgd29ya2VyRGVidWdn
ZXJQcm94eSwgV29ya2VyT2JqZWN0UHJveHkmIHdvcmtlck9iamVjdFByb3h5LCBXb3JrZXJUaHJl
YWRTdGFydE1vZGUgc3RhcnRNb2RlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25z
ZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgYm9vbCBzaG91
bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3VyaXR5T3Jp
Z2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJD
b25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFBy
b3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MsIFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCkKKyAgICA6IFdvcmtlclRocmVhZCh1cmwsIG5hbWUsIGlkZW50aWZpZXIsIHVzZXJB
Z2VudCwgaXNPbmxpbmUsIHNvdXJjZUNvZGUsIHdvcmtlckxvYWRlclByb3h5LCB3b3JrZXJEZWJ1
Z2dlclByb3h5LCB3b3JrZXJPYmplY3RQcm94eSwgc3RhcnRNb2RlLCBjb250ZW50U2VjdXJpdHlQ
b2xpY3lSZXNwb25zZUhlYWRlcnMsIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0
eVBvbGljeSwgdG9wT3JpZ2luLCB0aW1lT3JpZ2luLCBjb25uZWN0aW9uUHJveHksIHNvY2tldFBy
b3ZpZGVyLCBydW50aW1lRmxhZ3MsIHNlc3Npb25JRCkKICAgICAsIG1fd29ya2VyT2JqZWN0UHJv
eHkod29ya2VyT2JqZWN0UHJveHkpCiB7CiB9CiAKIERlZGljYXRlZFdvcmtlclRocmVhZDo6fkRl
ZGljYXRlZFdvcmtlclRocmVhZCgpID0gZGVmYXVsdDsKIAotUmVmPFdvcmtlckdsb2JhbFNjb3Bl
PiBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVS
TCYgdXJsLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBjb25zdCBTdHJpbmcmIGlkZW50
aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBDb250
ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQorUmVmPFdvcmtlckdsb2JhbFNjb3Bl
PiBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVS
TCYgdXJsLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBjb25zdCBTdHJpbmcmIG5hbWUs
IGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wg
aXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29u
dGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5X
b3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdp
biwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7
Ci0gICAgcmV0dXJuIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUodXJsLCBXVEZN
b3ZlKG9yaWdpbiksIGlkZW50aWZpZXIsIHVzZXJBZ2VudCwgaXNPbmxpbmUsICp0aGlzLCBjb250
ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIHNob3VsZEJ5cGFzc01haW5Xb3JsZENv
bnRlbnRTZWN1cml0eVBvbGljeSwgV1RGTW92ZSh0b3BPcmlnaW4pLCB0aW1lT3JpZ2luLCBpZGJD
b25uZWN0aW9uUHJveHkoKSwgc29ja2V0UHJvdmlkZXIoKSwgc2Vzc2lvbklEKTsKKyAgICByZXR1
cm4gRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmNyZWF0ZSh1cmwsIFdURk1vdmUob3JpZ2lu
KSwgbmFtZSwgaWRlbnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgKnRoaXMsIGNvbnRlbnRT
ZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVu
dFNlY3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVPcmlnaW4sIGlkYkNvbm5l
Y3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpLCBzZXNzaW9uSUQpOwogfQogCiB2b2lkIERl
ZGljYXRlZFdvcmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5oCmluZGV4IGQ0Njg3OWI3MTM4YjhlMjU0NTgz
YTUzN2JiMDRhY2JlYzMzNWRlNjAuLmYxYzk2MjRiMThhYzE4OTMyOTg4NDYzMzk2MTYzNTJjYWMw
YzdkZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2Vy
VGhyZWFkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJUaHJl
YWQuaApAQCAtNDksMTEgKzQ5LDExIEBAIGNsYXNzIERlZGljYXRlZFdvcmtlclRocmVhZCA6IHB1
YmxpYyBXb3JrZXJUaHJlYWQgewogICAgIFdvcmtlck9iamVjdFByb3h5JiB3b3JrZXJPYmplY3RQ
cm94eSgpIGNvbnN0IHsgcmV0dXJuIG1fd29ya2VyT2JqZWN0UHJveHk7IH0KIAogcHJvdGVjdGVk
OgotICAgIFJlZjxXb3JrZXJHbG9iYWxTY29wZT4gY3JlYXRlV29ya2VyR2xvYmFsU2NvcGUoY29u
c3QgVVJMJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBDb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENv
bnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCkgb3ZlcnJpZGU7CisgICAgUmVm
PFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmLCBS
ZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBp
ZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3Qg
Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NN
YWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BP
cmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUEFMOjpTZXNzaW9uSUQpIG92ZXJyaWRl
OwogICAgIHZvaWQgcnVuRXZlbnRMb29wKCkgb3ZlcnJpZGU7CiAKIHByaXZhdGU6Ci0gICAgRGVk
aWNhdGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291
cmNlQ29kZSwgV29ya2VyTG9hZGVyUHJveHkmLCBXb3JrZXJEZWJ1Z2dlclByb3h5JiwgV29ya2Vy
T2JqZWN0UHJveHkmLCBXb3JrZXJUaHJlYWRTdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0
eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVu
dFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9u
aWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0
UHJvdmlkZXIqLCBKU0M6OlJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQpOworICAgIERlZGlj
YXRlZFdvcmtlclRocmVhZChjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0
cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUs
IGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9hZGVyUHJveHkmLCBXb3JrZXJEZWJ1
Z2dlclByb3h5JiwgV29ya2VyT2JqZWN0UHJveHkmLCBXb3JrZXJUaHJlYWRTdGFydE1vZGUsIGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlw
YXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1cml0eU9yaWdpbiYg
dG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVj
dGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBKU0M6OlJ1bnRpbWVGbGFncywgUEFMOjpTZXNz
aW9uSUQpOwogCiAgICAgV29ya2VyT2JqZWN0UHJveHkmIG1fd29ya2VyT2JqZWN0UHJveHk7CiB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3BwCmluZGV4IDQwOWVlMWFjY2Q5NzBiMmRkOTYxNzY5
ZTlmNmNmYTlmOTA0Y2I5NDguLjA4ZTZkZjdlMDBmMTZmZDZlODkzNjVmNTNlOTVhOTllMWFmZWM3
MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKQEAgLTU3LDggKzU3LDkgQEAgdm9pZCBX
b3JrZXI6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoYm9vbCBpc09uTGluZSkKICAgICAgICAgd29ya2Vy
LT5ub3RpZnlOZXR3b3JrU3RhdGVDaGFuZ2UoaXNPbkxpbmUpOwogfQogCi1pbmxpbmUgV29ya2Vy
OjpXb3JrZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgSlNDOjpSdW50aW1lRmxh
Z3MgcnVudGltZUZsYWdzKQoraW5saW5lIFdvcmtlcjo6V29ya2VyKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQsIEpTQzo6UnVudGltZUZsYWdzIHJ1bnRpbWVGbGFncywgY29uc3QgT3B0
aW9ucyYgb3B0aW9ucykKICAgICA6IEFjdGl2ZURPTU9iamVjdCgmY29udGV4dCkKKyAgICAsIG1f
bmFtZShvcHRpb25zLm5hbWUpCiAgICAgLCBtX2lkZW50aWZpZXIoIndvcmtlcjoiICsgSW5zcGVj
dG9yOjpJZGVudGlmaWVyc0ZhY3Rvcnk6OmNyZWF0ZUlkZW50aWZpZXIoKSkKICAgICAsIG1fY29u
dGV4dFByb3h5KFdvcmtlckdsb2JhbFNjb3BlUHJveHk6OmNyZWF0ZSgqdGhpcykpCiAgICAgLCBt
X3J1bnRpbWVGbGFncyhydW50aW1lRmxhZ3MpCkBAIC03MywxNCArNzQsMTUgQEAgaW5saW5lIFdv
cmtlcjo6V29ya2VyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEpTQzo6UnVudGlt
ZUZsYWdzIHJ1bnRpbWUKICAgICBBU1NFUlRfVU5VU0VEKGFkZFJlc3VsdCwgYWRkUmVzdWx0Lmlz
TmV3RW50cnkpOwogfQogCi1FeGNlcHRpb25PcjxSZWY8V29ya2VyPj4gV29ya2VyOjpjcmVhdGUo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGlt
ZUZsYWdzLCBjb25zdCBTdHJpbmcmIHVybCkKK0V4Y2VwdGlvbk9yPFJlZjxXb3JrZXI+PiBXb3Jr
ZXI6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBKU0M6OlJ1bnRpbWVG
bGFncyBydW50aW1lRmxhZ3MsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBPcHRpb25zJiBvcHRp
b25zKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgVU5VU0VEX1BBUkFNKG9w
dGlvbnMpOwogCiAgICAgLy8gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgbmVzdGVkIHdvcmtl
cnMsIHNvIHdvcmtlcnMgY2FuIG9ubHkgYmUgY3JlYXRlZCBmcm9tIGRvY3VtZW50cy4KICAgICBB
U1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihjb250ZXh0LmlzRG9jdW1lbnQoKSk7CiAK
LSAgICBhdXRvIHdvcmtlciA9IGFkb3B0UmVmKCpuZXcgV29ya2VyKGNvbnRleHQsIHJ1bnRpbWVG
bGFncykpOworICAgIGF1dG8gd29ya2VyID0gYWRvcHRSZWYoKm5ldyBXb3JrZXIoY29udGV4dCwg
cnVudGltZUZsYWdzLCBvcHRpb25zKSk7CiAKICAgICB3b3JrZXItPnN1c3BlbmRJZk5lZWRlZCgp
OwogCkBAIC0xMDMsMTIgKzEwNSwxMiBAQCBFeGNlcHRpb25PcjxSZWY8V29ya2VyPj4gV29ya2Vy
OjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgSlNDOjpSdQogICAgIFJl
c291cmNlUmVxdWVzdCByZXF1ZXN0IHsgc2NyaXB0VVJMLnJlbGVhc2VSZXR1cm5WYWx1ZSgpIH07
CiAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3JJZGVudGlmaWVyKHdvcmtlci0+bV9pZGVudGlmaWVy
KTsKIAotICAgIEZldGNoT3B0aW9ucyBvcHRpb25zOwotICAgIG9wdGlvbnMubW9kZSA9IEZldGNo
T3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKLSAgICBvcHRpb25zLmNhY2hlID0gRmV0Y2hPcHRp
b25zOjpDYWNoZTo6RGVmYXVsdDsKLSAgICBvcHRpb25zLnJlZGlyZWN0ID0gRmV0Y2hPcHRpb25z
OjpSZWRpcmVjdDo6Rm9sbG93OwotICAgIG9wdGlvbnMuZGVzdGluYXRpb24gPSBGZXRjaE9wdGlv
bnM6OkRlc3RpbmF0aW9uOjpXb3JrZXI7Ci0gICAgd29ya2VyLT5tX3NjcmlwdExvYWRlci0+bG9h
ZEFzeW5jaHJvbm91c2x5KGNvbnRleHQsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUob3B0aW9u
cyksIGNvbnRlbnRTZWN1cml0eVBvbGljeUVuZm9yY2VtZW50LCBTZXJ2aWNlV29ya2Vyc01vZGU6
OkFsbCwgd29ya2VyKTsKKyAgICBGZXRjaE9wdGlvbnMgZmV0Y2hPcHRpb25zOworICAgIGZldGNo
T3B0aW9ucy5tb2RlID0gRmV0Y2hPcHRpb25zOjpNb2RlOjpTYW1lT3JpZ2luOworICAgIGZldGNo
T3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6Q2FjaGU6OkRlZmF1bHQ7CisgICAgZmV0Y2hP
cHRpb25zLnJlZGlyZWN0ID0gRmV0Y2hPcHRpb25zOjpSZWRpcmVjdDo6Rm9sbG93OworICAgIGZl
dGNoT3B0aW9ucy5kZXN0aW5hdGlvbiA9IEZldGNoT3B0aW9uczo6RGVzdGluYXRpb246Oldvcmtl
cjsKKyAgICB3b3JrZXItPm1fc2NyaXB0TG9hZGVyLT5sb2FkQXN5bmNocm9ub3VzbHkoY29udGV4
dCwgV1RGTW92ZShyZXF1ZXN0KSwgV1RGTW92ZShmZXRjaE9wdGlvbnMpLCBjb250ZW50U2VjdXJp
dHlQb2xpY3lFbmZvcmNlbWVudCwgU2VydmljZVdvcmtlcnNNb2RlOjpBbGwsIHdvcmtlcik7CiAg
ICAgcmV0dXJuIFdURk1vdmUod29ya2VyKTsKIH0KIApAQCAtMTg1LDcgKzE4Nyw3IEBAIHZvaWQg
V29ya2VyOjpub3RpZnlGaW5pc2hlZCgpCiAgICAgZWxzZSB7CiAgICAgICAgIGJvb2wgaXNPbmxp
bmUgPSBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bG9hZGVyU3RyYXRlZ3koKS0+aXNPbkxpbmUoKTsK
ICAgICAgICAgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250
ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMgPSBtX2NvbnRlbnRTZWN1cml0eVBvbGlj
eVJlc3BvbnNlSGVhZGVycyA/IG1fY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJz
LnZhbHVlKCkgOiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmNvbnRlbnRTZWN1cml0eVBvbGlj
eSgpLT5yZXNwb25zZUhlYWRlcnMoKTsKLSAgICAgICAgbV9jb250ZXh0UHJveHkuc3RhcnRXb3Jr
ZXJHbG9iYWxTY29wZShtX3NjcmlwdExvYWRlci0+dXJsKCksIHNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKS0+dXNlckFnZW50KG1fc2NyaXB0TG9hZGVyLT51cmwoKSksIGlzT25saW5lLCBtX3Njcmlw
dExvYWRlci0+c2NyaXB0KCksIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywg
bV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIG1fd29ya2VyQ3Jl
YXRpb25UaW1lLCBtX3J1bnRpbWVGbGFncywgc2Vzc2lvbklEKTsKKyAgICAgICAgbV9jb250ZXh0
UHJveHkuc3RhcnRXb3JrZXJHbG9iYWxTY29wZShtX3NjcmlwdExvYWRlci0+dXJsKCksIG1fbmFt
ZSwgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT51c2VyQWdlbnQobV9zY3JpcHRMb2FkZXItPnVy
bCgpKSwgaXNPbmxpbmUsIG1fc2NyaXB0TG9hZGVyLT5zY3JpcHQoKSwgY29udGVudFNlY3VyaXR5
UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBtX3Nob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1
cml0eVBvbGljeSwgbV93b3JrZXJDcmVhdGlvblRpbWUsIG1fcnVudGltZUZsYWdzLCBzZXNzaW9u
SUQpOwogICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnNjcmlwdEltcG9ydGVkKCpz
Y3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1fc2NyaXB0TG9hZGVyLT5pZGVudGlmaWVyKCksIG1f
c2NyaXB0TG9hZGVyLT5zY3JpcHQoKSk7CiAgICAgfQogICAgIG1fc2NyaXB0TG9hZGVyID0gbnVs
bHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5oCmluZGV4IGMyMjhkZWE0MzM2NjI2YWQ4ZmRjMGI1
YTA1ZTIwNWUxMTAwODJiZWMuLjJkY2NmMjA2MmYyY2RmNzQwYzBkMzQyOGExZWNmYmEyZWI1YjNi
ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaApAQCAtNTAsNyArNTAsMTAgQEAgY2xhc3MgV29y
a2VyU2NyaXB0TG9hZGVyOwogCiBjbGFzcyBXb3JrZXIgZmluYWwgOiBwdWJsaWMgQWJzdHJhY3RX
b3JrZXIsIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHByaXZhdGUgV29ya2VyU2NyaXB0TG9hZGVy
Q2xpZW50IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVmPFdvcmtlcj4+IGNy
ZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgSlNDOjpSdW50aW1lRmxhZ3MsIGNvbnN0IFN0
cmluZyYgdXJsKTsKKyAgICBzdHJ1Y3QgT3B0aW9ucyB7CisgICAgICAgIFN0cmluZyBuYW1lOwor
ICAgIH07CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxXb3JrZXI+PiBjcmVhdGUoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYsIEpTQzo6UnVudGltZUZsYWdzLCBjb25zdCBTdHJpbmcmIHVybCwg
Y29uc3QgT3B0aW9ucyYpOwogICAgIHZpcnR1YWwgfldvcmtlcigpOwogCiAgICAgRXhjZXB0aW9u
T3I8dm9pZD4gcG9zdE1lc3NhZ2UoSlNDOjpFeGVjU3RhdGUmLCBKU0M6OkpTVmFsdWUgbWVzc2Fn
ZSwgVmVjdG9yPEpTQzo6U3Ryb25nPEpTQzo6SlNPYmplY3Q+PiYmKTsKQEAgLTY0LDcgKzY3LDcg
QEAgY2xhc3MgV29ya2VyIGZpbmFsIDogcHVibGljIEFic3RyYWN0V29ya2VyLCBwdWJsaWMgQWN0
aXZlRE9NT2JqZWN0LCBwcml2YXRlIFdvcmsKICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgZmluYWwgeyByZXR1cm4gQWN0aXZlRE9NT2Jq
ZWN0OjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7IH0KIAogcHJpdmF0ZToKLSAgICBleHBsaWNp
dCBXb3JrZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIEpTQzo6UnVudGltZUZsYWdzKTsKKyAg
ICBleHBsaWNpdCBXb3JrZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIEpTQzo6UnVudGltZUZs
YWdzLCBjb25zdCBPcHRpb25zJik7CiAKICAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVudFRh
cmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFdvcmtlckV2ZW50VGFyZ2V0SW50
ZXJmYWNlVHlwZTsgfQogCkBAIC04MCw2ICs4Myw3IEBAIGNsYXNzIFdvcmtlciBmaW5hbCA6IHB1
YmxpYyBBYnN0cmFjdFdvcmtlciwgcHVibGljIEFjdGl2ZURPTU9iamVjdCwgcHJpdmF0ZSBXb3Jr
CiAgICAgc3RhdGljIHZvaWQgbmV0d29ya1N0YXRlQ2hhbmdlZChib29sIGlzT25MaW5lKTsKIAog
ICAgIFJlZlB0cjxXb3JrZXJTY3JpcHRMb2FkZXI+IG1fc2NyaXB0TG9hZGVyOworICAgIFN0cmlu
ZyBtX25hbWU7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKICAgICBXb3JrZXJHbG9iYWxTY29w
ZVByb3h5JiBtX2NvbnRleHRQcm94eTsgLy8gVGhlIHByb3h5IG91dGxpdmVzIHRoZSB3b3JrZXIg
dG8gcGVyZm9ybSB0aHJlYWQgc2h1dGRvd24uCiAgICAgc3RkOjpvcHRpb25hbDxDb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnM+IG1fY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaWRs
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaWRsCmluZGV4IDZjNTE3NzgzNTc0MDg3
MDI2ZmZhNmQzYWMxNjE5ZmZjNTVhNGZjMTUuLjk1MzE1MDM4OTU5OGYxMzUwM2I2NWNlZDhkNGU5
MmNlMmRjYTYzZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5pZGwKQEAgLTI2LDcgKzI2LDcg
QEAKIAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKLSAgICBDb25zdHJ1Y3RvcihVU1ZTdHJpbmcg
c2NyaXB0VXJsKSwKKyAgICBDb25zdHJ1Y3RvcihVU1ZTdHJpbmcgc2NyaXB0VXJsLCBvcHRpb25h
bCBXb3JrZXJPcHRpb25zIG9wdGlvbnMpLAogICAgIENvbnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0
RXhlY3V0aW9uQ29udGV4dCZSdW50aW1lRmxhZ3MsCiAgICAgQ29uc3RydWN0b3JNYXlUaHJvd0V4
Y2VwdGlvbgogXSBpbnRlcmZhY2UgV29ya2VyIDogRXZlbnRUYXJnZXQgewpAQCAtMzYsNCArMzYs
OCBAQAogICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25tZXNzYWdlOwogfTsKIAorZGljdGlv
bmFyeSBXb3JrZXJPcHRpb25zIHsKKyAgICBET01TdHJpbmcgbmFtZSA9ICIiOworfTsKKwogV29y
a2VyIGltcGxlbWVudHMgQWJzdHJhY3RXb3JrZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlUHJveHkuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyR2xvYmFsU2NvcGVQcm94eS5oCmluZGV4IDQ3OTQzZmY1Yjk3YjEwOGY5ZTZiMWQz
NjJhZmY1NWM3OWM2NDNjNjkuLjM2YmQwMDcwN2QwYTY4ZGIzMDc2MjcyYmE2NWYzMGEzYTkyN2Yx
ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGVQ
cm94eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGVQcm94
eS5oCkBAIC01MCw3ICs1MCw3IEBAIGNsYXNzIFdvcmtlckdsb2JhbFNjb3BlUHJveHkgewogcHVi
bGljOgogICAgIHN0YXRpYyBXb3JrZXJHbG9iYWxTY29wZVByb3h5JiBjcmVhdGUoV29ya2VyJik7
CiAKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHNj
cmlwdFVSTCwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0
cmluZyYgc291cmNlQ29kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFk
ZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIE1v
bm90b25pY1RpbWUgdGltZU9yaWdpbiwgSlNDOjpSdW50aW1lRmxhZ3MsIFBBTDo6U2Vzc2lvbklE
KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJM
JiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQs
IGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgY29uc3QgQ29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRD
b250ZW50U2VjdXJpdHlQb2xpY3ksIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSlNDOjpSdW50
aW1lRmxhZ3MsIFBBTDo6U2Vzc2lvbklEKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHRlcm1pbmF0
ZVdvcmtlckdsb2JhbFNjb3BlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBwb3N0TWVzc2FnZVRv
V29ya2VyR2xvYmFsU2NvcGUoTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmJikgPSAwOwogICAgIHZp
cnR1YWwgYm9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdCA9IDA7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuY3BwCmluZGV4IGYzNjY0NjJkMzkz
NjIyNTIyMzc5YjcwZGZhYmJmNGZiODU3ZGIyNTkuLmE3NWMwMTU2YzU5ZTM4ZGQ5OTlkNmNlYzFk
ZGVlZGUyM2JlMTg3YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
TWVzc2FnaW5nUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVz
c2FnaW5nUHJveHkuY3BwCkBAIC03Miw3ICs3Miw3IEBAIFdvcmtlck1lc3NhZ2luZ1Byb3h5Ojp+
V29ya2VyTWVzc2FnaW5nUHJveHkoKQogICAgICAgICB8fCAoaXM8V29ya2VyR2xvYmFsU2NvcGU+
KCptX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQpICYmIGRvd25jYXN0PFdvcmtlckdsb2JhbFNjb3Bl
PigqbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KS50aHJlYWQoKS50aHJlYWQoKSA9PSAmVGhyZWFk
OjpjdXJyZW50KCkpKTsKIH0KIAotdm9pZCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3Jr
ZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHNjcmlwdFVSTCwgY29uc3QgU3RyaW5nJiB1c2VyQWdl
bnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgY29uc3QgQ29udGVu
dFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNw
b25zZUhlYWRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9s
aWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdzIHJ1bnRpbWVG
bGFncywgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQordm9pZCBXb3JrZXJNZXNzYWdpbmdQcm94
eTo6c3RhcnRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHNjcmlwdFVSTCwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VDb2RlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhl
YWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgYm9vbCBzaG91bGRC
eXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIE1vbm90b25pY1RpbWUgdGltZU9y
aWdpbiwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQpCiB7CiAgICAgLy8gRklYTUU6IFRoaXMgbmVlZCB0byBiZSByZXZpc2l0ZWQgd2hlbiB3
ZSBzdXBwb3J0IG5lc3RlZCB3b3JrZXIgb25lIGRheQogICAgIEFTU0VSVChtX3NjcmlwdEV4ZWN1
dGlvbkNvbnRleHQpOwpAQCAtODgsNyArODgsNyBAQCB2b2lkIFdvcmtlck1lc3NhZ2luZ1Byb3h5
OjpzdGFydFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdAog
CiAgICAgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyID0gZG9jdW1lbnQuc29ja2V0UHJv
dmlkZXIoKTsKIAotICAgIGF1dG8gdGhyZWFkID0gRGVkaWNhdGVkV29ya2VyVGhyZWFkOjpjcmVh
dGUoc2NyaXB0VVJMLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCBzb3VyY2VDb2Rl
LCAqdGhpcywgKnRoaXMsICp0aGlzLCBzdGFydE1vZGUsIGNvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5
LCBkb2N1bWVudC50b3BPcmlnaW4oKSwgdGltZU9yaWdpbiwgcHJveHksIHNvY2tldFByb3ZpZGVy
LCBydW50aW1lRmxhZ3MsIHNlc3Npb25JRCk7CisgICAgYXV0byB0aHJlYWQgPSBEZWRpY2F0ZWRX
b3JrZXJUaHJlYWQ6OmNyZWF0ZShzY3JpcHRVUkwsIG5hbWUsIGlkZW50aWZpZXIsIHVzZXJBZ2Vu
dCwgaXNPbmxpbmUsIHNvdXJjZUNvZGUsICp0aGlzLCAqdGhpcywgKnRoaXMsIHN0YXJ0TW9kZSwg
Y29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBzaG91bGRCeXBhc3NNYWluV29y
bGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIGRvY3VtZW50LnRvcE9yaWdpbigpLCB0aW1lT3JpZ2lu
LCBwcm94eSwgc29ja2V0UHJvdmlkZXIsIHJ1bnRpbWVGbGFncywgc2Vzc2lvbklEKTsKIAogICAg
IHdvcmtlclRocmVhZENyZWF0ZWQodGhyZWFkLmdldCgpKTsKICAgICB0aHJlYWQtPnN0YXJ0KG51
bGxwdHIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNzYWdp
bmdQcm94eS5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5o
CmluZGV4IDRlZmYyZmE0YTI0M2VjZmMxNGY0NjQ1ZWFkNmNmZjYxMGVhNDRiZWMuLmVjZWRiNDgz
OTU2YzEyMWJmODZkMDVmMjJiYWJhNDM4MTRiY2QzMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmgKQEAgLTQ2LDcgKzQ2LDcgQEAgY2xhc3MgV29y
a2VyTWVzc2FnaW5nUHJveHkgZmluYWwgOiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNvdW50ZWQ8V29y
a2VyTWVzc2FnaW5nUHIKIHByaXZhdGU6CiAgICAgLy8gSW1wbGVtZW50YXRpb25zIG9mIFdvcmtl
ckdsb2JhbFNjb3BlUHJveHkuCiAgICAgLy8gKE9ubHkgdXNlIHRoZXNlIGZ1bmN0aW9ucyBpbiB0
aGUgd29ya2VyIG9iamVjdCB0aHJlYWQuKQotICAgIHZvaWQgc3RhcnRXb3JrZXJHbG9iYWxTY29w
ZShjb25zdCBVUkwmIHNjcmlwdFVSTCwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNP
bmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2Vj
dXJpdHlQb2xpY3ksIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSlNDOjpSdW50aW1lRmxhZ3Ms
IFBBTDo6U2Vzc2lvbklEKSBmaW5hbDsKKyAgICB2b2lkIHN0YXJ0V29ya2VyR2xvYmFsU2NvcGUo
Y29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiB1
c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgY29uc3Qg
Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NN
YWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
SlNDOjpSdW50aW1lRmxhZ3MsIFBBTDo6U2Vzc2lvbklEKSBmaW5hbDsKICAgICB2b2lkIHRlcm1p
bmF0ZVdvcmtlckdsb2JhbFNjb3BlKCkgZmluYWw7CiAgICAgdm9pZCBwb3N0TWVzc2FnZVRvV29y
a2VyR2xvYmFsU2NvcGUoTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmJikgZmluYWw7CiAgICAgYm9v
bCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyVGhyZWFkLmNwcAppbmRleCBmMzg5MTg1NDJlOTRkYzI2NWY1NTljM2I3MTk2M2FmZGQ5
YWQxNWVkLi4xYzZhYTE2NWI1OTE4NzE0N2M4YmE4MDk1NjFiMzAzMTVjODRiMGI3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwCkBAIC03MiwxMCArNzIsMTEgQEAgdW5z
aWduZWQgV29ya2VyVGhyZWFkOjp3b3JrZXJUaHJlYWRDb3VudCgpCiBzdHJ1Y3QgV29ya2VyVGhy
ZWFkU3RhcnR1cERhdGEgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFdvcmtlclRocmVhZFN0
YXJ0dXBEYXRhKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6Ci0gICAgV29ya2Vy
VGhyZWFkU3RhcnR1cERhdGEoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgaWRl
bnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0
cmluZyYgc291cmNlQ29kZSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlLCBjb25zdCBDb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENv
bnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCk7CisgICAgV29ya2VyVGhyZWFk
U3RhcnR1cERhdGEoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29u
c3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09u
bGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJUaHJlYWRTdGFydE1vZGUsIGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlw
YXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1cml0eU9yaWdpbiYg
dG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKTsKIAog
ICAgIFVSTCBtX3NjcmlwdFVSTDsKICAgICBSZWY8U2VjdXJpdHlPcmlnaW4+IG1fb3JpZ2luOwor
ICAgIFN0cmluZyBtX25hbWU7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKICAgICBTdHJpbmcg
bV91c2VyQWdlbnQ7CiAgICAgU3RyaW5nIG1fc291cmNlQ29kZTsKQEAgLTg4LDkgKzg5LDEwIEBA
IHN0cnVjdCBXb3JrZXJUaHJlYWRTdGFydHVwRGF0YSB7CiAgICAgUEFMOjpTZXNzaW9uSUQgbV9z
ZXNzaW9uSUQ7CiB9OwogCi1Xb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6V29ya2VyVGhyZWFkU3Rh
cnR1cERhdGEoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291
cmNlQ29kZSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlIHN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25z
ZUhlYWRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5
LCBjb25zdCBTZWN1cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK1dvcmtlclRocmVhZFN0YXJ0dXBEYXRhOjpX
b3JrZXJUaHJlYWRTdGFydHVwRGF0YShjb25zdCBVUkwmIHNjcmlwdFVSTCwgY29uc3QgU3RyaW5n
JiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50
LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIFdvcmtlclRocmVhZFN0
YXJ0TW9kZSBzdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVh
ZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5
cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlPcmlnaW4m
IHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQpCiAgICAgOiBtX3NjcmlwdFVSTChzY3JpcHRVUkwuaXNvbGF0ZWRDb3B5KCkpCiAgICAg
LCBtX29yaWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1fc2NyaXB0VVJMKS0+aXNvbGF0ZWRD
b3B5KCkpCisgICAgLCBtX25hbWUobmFtZS5pc29sYXRlZENvcHkoKSkKICAgICAsIG1faWRlbnRp
ZmllcihpZGVudGlmaWVyLmlzb2xhdGVkQ29weSgpKQogICAgICwgbV91c2VyQWdlbnQodXNlckFn
ZW50Lmlzb2xhdGVkQ29weSgpKQogICAgICwgbV9zb3VyY2VDb2RlKHNvdXJjZUNvZGUuaXNvbGF0
ZWRDb3B5KCkpCkBAIC0xMDQsMTIgKzEwNiwxMiBAQCBXb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6
V29ya2VyVGhyZWFkU3RhcnR1cERhdGEoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cgog
ewogfQogCi1Xb3JrZXJUaHJlYWQ6OldvcmtlclRocmVhZChjb25zdCBVUkwmIHNjcmlwdFVSTCwg
Y29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBp
c09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYgd29y
a2VyTG9hZGVyUHJveHksIFdvcmtlckRlYnVnZ2VyUHJveHkmIHdvcmtlckRlYnVnZ2VyUHJveHks
IFdvcmtlclJlcG9ydGluZ1Byb3h5JiB3b3JrZXJSZXBvcnRpbmdQcm94eSwgV29ya2VyVGhyZWFk
U3RhcnRNb2RlIHN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VI
ZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1cml0eU9yaWdp
biYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURCQ29u
bmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92
aWRlciwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQpCitXb3JrZXJUaHJlYWQ6OldvcmtlclRocmVhZChjb25zdCBVUkwmIHNjcmlwdFVSTCwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIFdv
cmtlckxvYWRlclByb3h5JiB3b3JrZXJMb2FkZXJQcm94eSwgV29ya2VyRGVidWdnZXJQcm94eSYg
d29ya2VyRGVidWdnZXJQcm94eSwgV29ya2VyUmVwb3J0aW5nUHJveHkmIHdvcmtlclJlcG9ydGlu
Z1Byb3h5LCBXb3JrZXJUaHJlYWRTdGFydE1vZGUgc3RhcnRNb2RlLCBjb25zdCBDb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNl
SGVhZGVycywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ks
IGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdp
biwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwgU29ja2V0
UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3Ms
IFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKICAgICA6IG1fd29ya2VyTG9hZGVyUHJveHkod29y
a2VyTG9hZGVyUHJveHkpCiAgICAgLCBtX3dvcmtlckRlYnVnZ2VyUHJveHkod29ya2VyRGVidWdn
ZXJQcm94eSkKICAgICAsIG1fd29ya2VyUmVwb3J0aW5nUHJveHkod29ya2VyUmVwb3J0aW5nUHJv
eHkpCiAgICAgLCBtX3J1bnRpbWVGbGFncyhydW50aW1lRmxhZ3MpCi0gICAgLCBtX3N0YXJ0dXBE
YXRhKHN0ZDo6bWFrZV91bmlxdWU8V29ya2VyVGhyZWFkU3RhcnR1cERhdGE+KHNjcmlwdFVSTCwg
aWRlbnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgc291cmNlQ29kZSwgc3RhcnRNb2RlLCBj
b250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIHNob3VsZEJ5cGFzc01haW5Xb3Js
ZENvbnRlbnRTZWN1cml0eVBvbGljeSwgdG9wT3JpZ2luLCB0aW1lT3JpZ2luLCBzZXNzaW9uSUQp
KQorICAgICwgbV9zdGFydHVwRGF0YShzdGQ6Om1ha2VfdW5pcXVlPFdvcmtlclRocmVhZFN0YXJ0
dXBEYXRhPihzY3JpcHRVUkwsIG5hbWUsIGlkZW50aWZpZXIsIHVzZXJBZ2VudCwgaXNPbmxpbmUs
IHNvdXJjZUNvZGUsIHN0YXJ0TW9kZSwgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFk
ZXJzLCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIHRvcE9yaWdp
biwgdGltZU9yaWdpbiwgc2Vzc2lvbklEKSkKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
ICAgICAsIG1faWRiQ29ubmVjdGlvblByb3h5KGNvbm5lY3Rpb25Qcm94eSkKICNlbmRpZgpAQCAt
MTY3LDcgKzE2OSw3IEBAIHZvaWQgV29ya2VyVGhyZWFkOjp3b3JrZXJUaHJlYWQoKQogICAgICAg
ICAvLyB3aGlsZSBXb3JrZXJUaHJlYWQ6OnN0b3AoKSBpcyBhY2Nlc3NpbmcgaXQuIE5vdGUgdGhh
dCBXb3JrZXJUaHJlYWQ6OnN0b3AoKSBjYW4KICAgICAgICAgLy8gYmUgY2FsbGVkIGJlZm9yZSB3
ZSd2ZSBmaW5pc2hlZCBjcmVhdGluZyB0aGUgV29ya2VyR2xvYmFsU2NvcGUuCiAgICAgICAgIExv
Y2tIb2xkZXIgbG9jayhtX3RocmVhZENyZWF0aW9uQW5kV29ya2VyR2xvYmFsU2NvcGVNdXRleCk7
Ci0gICAgICAgIG1fd29ya2VyR2xvYmFsU2NvcGUgPSBjcmVhdGVXb3JrZXJHbG9iYWxTY29wZSht
X3N0YXJ0dXBEYXRhLT5tX3NjcmlwdFVSTCwgV1RGTW92ZShtX3N0YXJ0dXBEYXRhLT5tX29yaWdp
biksIG1fc3RhcnR1cERhdGEtPm1faWRlbnRpZmllciwgbV9zdGFydHVwRGF0YS0+bV91c2VyQWdl
bnQsIG1fc3RhcnR1cERhdGEtPm1faXNPbmxpbmUsIG1fc3RhcnR1cERhdGEtPm1fY29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBtX3N0YXJ0dXBEYXRhLT5tX3Nob3VsZEJ5cGFz
c01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgV1RGTW92ZShtX3N0YXJ0dXBEYXRhLT5t
X3RvcE9yaWdpbiksIG1fc3RhcnR1cERhdGEtPm1fdGltZU9yaWdpbiwgbV9zdGFydHVwRGF0YS0+
bV9zZXNzaW9uSUQpOworICAgICAgICBtX3dvcmtlckdsb2JhbFNjb3BlID0gY3JlYXRlV29ya2Vy
R2xvYmFsU2NvcGUobV9zdGFydHVwRGF0YS0+bV9zY3JpcHRVUkwsIFdURk1vdmUobV9zdGFydHVw
RGF0YS0+bV9vcmlnaW4pLCBtX3N0YXJ0dXBEYXRhLT5tX25hbWUsIG1fc3RhcnR1cERhdGEtPm1f
aWRlbnRpZmllciwgbV9zdGFydHVwRGF0YS0+bV91c2VyQWdlbnQsIG1fc3RhcnR1cERhdGEtPm1f
aXNPbmxpbmUsIG1fc3RhcnR1cERhdGEtPm1fY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VI
ZWFkZXJzLCBtX3N0YXJ0dXBEYXRhLT5tX3Nob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1
cml0eVBvbGljeSwgV1RGTW92ZShtX3N0YXJ0dXBEYXRhLT5tX3RvcE9yaWdpbiksIG1fc3RhcnR1
cERhdGEtPm1fdGltZU9yaWdpbiwgbV9zdGFydHVwRGF0YS0+bV9zZXNzaW9uSUQpOwogCiAgICAg
ICAgIHNjcmlwdENvbnRyb2xsZXIgPSBtX3dvcmtlckdsb2JhbFNjb3BlLT5zY3JpcHQoKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmgKaW5kZXggZWRlNzBlZjAyYWZhMGQ0OTQ0
ZDBhYWRlYzk5YmYwYjYyZTk5ZWQ0ZS4uZDcxNDEyNDg1YTk2OTA0OWFkYjQ5NjU5NzRkYmU5MWY1
ZWUxOTE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCkBAIC04NywxMCAr
ODcsMTAgQEAgY2xhc3MgV29ya2VyVGhyZWFkIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVk
PFdvcmtlclRocmVhZD4gewogICAgIEpTQzo6UnVudGltZUZsYWdzIHJ1bnRpbWVGbGFncygpIGNv
bnN0IHsgcmV0dXJuIG1fcnVudGltZUZsYWdzOyB9CiAKIHByb3RlY3RlZDoKLSAgICBXb3JrZXJU
aHJlYWQoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcm
IHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3Jr
ZXJMb2FkZXJQcm94eSYsIFdvcmtlckRlYnVnZ2VyUHJveHkmLCBXb3JrZXJSZXBvcnRpbmdQcm94
eSYsIFdvcmtlclRocmVhZFN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVz
cG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlcios
IEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCk7CisgICAgV29ya2VyVGhyZWFkKGNv
bnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3Vy
Y2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYsIFdvcmtlckRlYnVnZ2VyUHJveHkmLCBXb3JrZXJS
ZXBvcnRpbmdQcm94eSYsIFdvcmtlclRocmVhZFN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3Vy
aXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250
ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90
b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2Nr
ZXRQcm92aWRlciosIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCk7CiAKICAgICAv
LyBGYWN0b3J5IG1ldGhvZCBmb3IgY3JlYXRpbmcgYSBuZXcgd29ya2VyIGNvbnRleHQgZm9yIHRo
ZSB0aHJlYWQuCi0gICAgdmlydHVhbCBSZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtl
ckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3Ry
aW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwg
Y29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRC
eXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4m
JiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUEFMOjpTZXNzaW9uSUQpID0g
MDsKKyAgICB2aXJ0dWFsIFJlZjxXb3JrZXJHbG9iYWxTY29wZT4gY3JlYXRlV29ya2VyR2xvYmFs
U2NvcGUoY29uc3QgVVJMJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBjb25zdCBTdHJpbmcmIG5h
bWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJv
b2wgaXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYs
IGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2Vj
dXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6
U2Vzc2lvbklEKSA9IDA7CiAKICAgICAvLyBFeGVjdXRlcyB0aGUgZXZlbnQgbG9vcCBmb3IgdGhl
IHdvcmtlciB0aHJlYWQuIERlcml2ZWQgY2xhc3NlcyBjYW4gb3ZlcnJpZGUgdG8gcGVyZm9ybSBh
Y3Rpb25zIGJlZm9yZS9hZnRlciBlbnRlcmluZyB0aGUgZXZlbnQgbG9vcC4KICAgICB2aXJ0dWFs
IHZvaWQgcnVuRXZlbnRMb29wKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuY3BwCmluZGV4IDll
NmRjMzU0NjA1YmE3ZmJmYWEyNWJiNDVmOTQzMDMxYzY1N2I3NDEuLjUxNzYwYWE3OTY3OGQyYjdi
YTZmNzcxYzYyMjIwNmJlMDNmNWRlNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuY3BwCkBA
IC03Miw3ICs3Miw3IEBAIGNsYXNzIER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5IDogcHVi
bGljIFdvcmtlck9iamVjdFByb3h5IHsKIC8vIEZJWE1FOiBVc2UgdmFsaWQgcnVudGltZSBmbGFn
cwogCiBTZXJ2aWNlV29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKGNvbnN0IFNlcnZp
Y2VXb3JrZXJDb250ZXh0RGF0YSYgZGF0YSwgUEFMOjpTZXNzaW9uSUQsIFN0cmluZyYmIHVzZXJB
Z2VudCwgV29ya2VyTG9hZGVyUHJveHkmIGxvYWRlclByb3h5LCBXb3JrZXJEZWJ1Z2dlclByb3h5
JiBkZWJ1Z2dlclByb3h5LCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogaWRiQ29ubmVj
dGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIpCi0gICAgOiBXb3JrZXJU
aHJlYWQoZGF0YS5zY3JpcHRVUkwsICJzZXJ2aWNld29ya2VyOiIgKyBJbnNwZWN0b3I6OklkZW50
aWZpZXJzRmFjdG9yeTo6Y3JlYXRlSWRlbnRpZmllcigpLCBXVEZNb3ZlKHVzZXJBZ2VudCksIHBs
YXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVneSgpLT5pc09uTGluZSgpLCBkYXRhLnNj
cmlwdCwgbG9hZGVyUHJveHksIGRlYnVnZ2VyUHJveHksIER1bW15U2VydmljZVdvcmtlclRocmVh
ZFByb3h5OjpzaGFyZWQoKSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlOjpOb3JtYWwsIGRhdGEuY29u
dGVudFNlY3VyaXR5UG9saWN5LCBmYWxzZSwgZGF0YS5yZWdpc3RyYXRpb24ua2V5LnRvcE9yaWdp
bigpLnNlY3VyaXR5T3JpZ2luKCkuZ2V0KCksIE1vbm90b25pY1RpbWU6Om5vdygpLCBpZGJDb25u
ZWN0aW9uUHJveHksIHNvY2tldFByb3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFnczo6Y3JlYXRlQWxs
RW5hYmxlZCgpLCBkYXRhLnNlc3Npb25JRCkKKyAgICA6IFdvcmtlclRocmVhZChkYXRhLnNjcmlw
dFVSTCwgZW1wdHlTdHJpbmcoKSwgInNlcnZpY2V3b3JrZXI6IiArIEluc3BlY3Rvcjo6SWRlbnRp
ZmllcnNGYWN0b3J5OjpjcmVhdGVJZGVudGlmaWVyKCksIFdURk1vdmUodXNlckFnZW50KSwgcGxh
dGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmlzT25MaW5lKCksIGRhdGEuc2Ny
aXB0LCBsb2FkZXJQcm94eSwgZGVidWdnZXJQcm94eSwgRHVtbXlTZXJ2aWNlV29ya2VyVGhyZWFk
UHJveHk6OnNoYXJlZCgpLCBXb3JrZXJUaHJlYWRTdGFydE1vZGU6Ok5vcm1hbCwgZGF0YS5jb250
ZW50U2VjdXJpdHlQb2xpY3ksIGZhbHNlLCBkYXRhLnJlZ2lzdHJhdGlvbi5rZXkudG9wT3JpZ2lu
KCkuc2VjdXJpdHlPcmlnaW4oKS5nZXQoKSwgTW9ub3RvbmljVGltZTo6bm93KCksIGlkYkNvbm5l
Y3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGltZUZsYWdzOjpjcmVhdGVBbGxF
bmFibGVkKCksIGRhdGEuc2Vzc2lvbklEKQogICAgICwgbV9kYXRhKGRhdGEuaXNvbGF0ZWRDb3B5
KCkpCiAgICAgLCBtX3dvcmtlck9iamVjdFByb3h5KER1bW15U2VydmljZVdvcmtlclRocmVhZFBy
b3h5OjpzaGFyZWQoKSkKIHsKQEAgLTgxLDggKzgxLDkgQEAgU2VydmljZVdvcmtlclRocmVhZDo6
U2VydmljZVdvcmtlclRocmVhZChjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmIGRhdGEs
IFAKIAogU2VydmljZVdvcmtlclRocmVhZDo6flNlcnZpY2VXb3JrZXJUaHJlYWQoKSA9IGRlZmF1
bHQ7CiAKLVJlZjxXb3JrZXJHbG9iYWxTY29wZT4gU2VydmljZVdvcmtlclRocmVhZDo6Y3JlYXRl
V29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBv
cmlnaW4sIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQs
IGJvb2wgaXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVy
cyYgY29udGVudFNlY3VyaXR5UG9saWN5LCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRl
bnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3Rv
bmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitSZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3Bl
KGNvbnN0IFVSTCYgdXJsLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBjb25zdCBTdHJp
bmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdl
bnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVh
ZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5LCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENv
bnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7CisgICAg
VU5VU0VEX1BBUkFNKG5hbWUpOwogICAgIHJldHVybiBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6
OmNyZWF0ZShtX2RhdGEsIHVybCwgV1RGTW92ZShvcmlnaW4pLCBpZGVudGlmaWVyLCB1c2VyQWdl
bnQsIGlzT25saW5lLCAqdGhpcywgY29udGVudFNlY3VyaXR5UG9saWN5LCBzaG91bGRCeXBhc3NN
YWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUodG9wT3JpZ2luKSwgdGltZU9y
aWdpbiwgaWRiQ29ubmVjdGlvblByb3h5KCksIHNvY2tldFByb3ZpZGVyKCksIHNlc3Npb25JRCk7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0
L1NlcnZpY2VXb3JrZXJUaHJlYWQuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9j
b250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuaAppbmRleCAzNTgyMjExZjBiZDZkZWY2MDU0ZjQw
ZjZkMGQ0MWFjOTNiMDFjZDQxLi4zNDkyYTM5ZmUwYmZiYzAwZWY2YzQ4YTdlMWNmNjI2MGFkMzI0
ZTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9T
ZXJ2aWNlV29ya2VyVGhyZWFkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5oCkBAIC02Niw3ICs2Niw3IEBAIGNsYXNzIFNl
cnZpY2VXb3JrZXJUaHJlYWQgOiBwdWJsaWMgV29ya2VyVGhyZWFkIHsKICAgICBTZXJ2aWNlV29y
a2VySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLnNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyOyB9CiAKIHByb3RlY3RlZDoKLSAgICBSZWY8V29ya2VyR2xvYmFsU2Nv
cGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdp
bj4mJiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwg
Ym9vbCBpc09ubGluZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJz
JiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxT
ZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUEFM
OjpTZXNzaW9uSUQpIGZpbmFsOworICAgIFJlZjxXb3JrZXJHbG9iYWxTY29wZT4gY3JlYXRlV29y
a2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2Vy
QWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNl
SGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5
LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIFBBTDo6U2Vzc2lvbklEKSBmaW5hbDsKICAgICB2b2lkIHJ1bkV2ZW50TG9vcCgpIG92ZXJy
aWRlOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggZTI1ZjZm
ZGM2NDk0ODJmZjVhNGQ0YjkyNzIyMTBmOWI5ZWUyYTk2Mi4uZDBlZTEyNmZmMDFhMzVkMzJjMDVi
MWY5MzU0MmUwZDQwMDY4NGU3ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTIgQEAKKzIwMTgtMDgtMjAgIFl1c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xv
d3N0YXJ0Lm9yZz4KKworICAgICAgICBTdXBwb3J0ICJuYW1lIiBvcHRpb24gZm9yIGRlZGljYXRl
ZCB3b3JrZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODg3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL25hbWUtcHJvcGVydHktZXhwZWN0ZWQudHh0
OgorCiAyMDE4LTA4LTIwICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAg
VGhyb3cgYW4gZXhjZXB0aW9uIGlmIHdpbmRvdy5vcGVuKCkgZ2V0cyBwYXNzZWQgYSBVUkwgdGhh
dCBjYW5ub3QgYmUgcGFyc2VkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvbmFtZS1wcm9wZXJ0eS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvbmFtZS1w
cm9wZXJ0eS1leHBlY3RlZC50eHQKaW5kZXggMDVhNTFmODIxNmQzZmMzZjlkMjYxMjc3ZDE3OTFh
Yjg1Mjg5NWJlMi4uYmM0MTFhODg4MDgzZThjNDQyMDYxZGM5MmRmYTRmNjRjZmRkOGYyMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3Jr
ZXJzL25hbWUtcHJvcGVydHktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd29ya2Vycy9uYW1lLXByb3BlcnR5LWV4cGVjdGVkLnR4
dApAQCAtMSw3ICsxLDcgQEAKIENPTlNPTEUgTUVTU0FHRTogbGluZSAyMDogUmVmZXJlbmNlRXJy
b3I6IENhbid0IGZpbmQgdmFyaWFibGU6IFNoYXJlZFdvcmtlcgogCiBGQUlMIFRlc3QgdGhlIG5h
bWUgcHJvcGVydHkgb2Ygc2hhcmVkIGFuZCBkZWRpY2F0ZWQgd29ya2VycyB2aWEgdGhlIG5hbWUg
Y29uc3RydWN0b3Igb3B0aW9uIFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBT
aGFyZWRXb3JrZXIKLVBBU1MgRGVjbGFyaW5nIG5hbWUgYXMgYW4gYWNjaWRlbnRhbCBnbG9iYWwg
bXVzdCBub3QgY2F1c2UgYSBoYXJuZXNzIGVycm9yIGZvciBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZSAKLUZBSUwgbmFtZSBwcm9wZXJ0eSB2YWx1ZSBmb3IgRGVkaWNhdGVkV29ya2VyR2xvYmFs
U2NvcGUgYXNzZXJ0X3RydWU6IHByb3BlcnR5IGV4aXN0cyBvbiB0aGUgZ2xvYmFsIGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitQQVNTIG5hbWUgcHJvcGVydHkgdmFsdWUgZm9yIERlZGljYXRlZFdv
cmtlckdsb2JhbFNjb3BlIAogUEFTUyBuYW1lIHByb3BlcnR5IGlzIHJlcGxhY2VhYmxlIGZvciBE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSAKK1BBU1MgRGVjbGFyaW5nIG5hbWUgYXMgYW4gYWNj
aWRlbnRhbCBnbG9iYWwgbXVzdCBub3QgY2F1c2UgYSBoYXJuZXNzIGVycm9yIGZvciBEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347614</attachid>
            <date>2018-08-20 23:12:31 -0700</date>
            <delta_ts>2018-08-21 00:25:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188779-20180821151230.patch</filename>
            <type>text/plain</type>
            <size>40647</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDMzZWQwYTA4OTFhZWM1
ZmM5MmE2M2Y4ODUzYWQ4MjFlNGIyOGI0Mi4uYzhjZDEyNWVlYjI4NjEwODNhMGE3MTUzNmY2ZmNk
ZjdkMzYzZWMxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDE4LTA4LTIwICBZdXN1
a2UgU3V6dWtpICA8eXVzdWtlc3V6dWtpQHNsb3dzdGFydC5vcmc+CisKKyAgICAgICAgU3VwcG9y
dCAibmFtZSIgb3B0aW9uIGZvciBkZWRpY2F0ZWQgd29ya2VycworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Nzc5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGBuZXcgV29ya2Vy
KHVybCwgeyBuYW1lOiAiV29ya2VyIE5hbWUiIH0pYCBvcHRpb24gc3VwcG9ydFsxXS4KKyAgICAg
ICAgVGhpcyBuYW1lIGNhbiBiZSBhY2Nlc3NpYmxlIGZyb20gYHNlbGYubmFtZWAgb2YgRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUuCisgICAgICAgIEl0IGlzIHVzZWZ1bCBmb3IgZGVidWdnaW5n
IGRlZGljYXRlZCB3b3JrZXJzIGlmIHRoZSBpbnNwZWN0b3IgY2FuIHNob3cgdGhlCisgICAgICAg
IG5hbWVzIG9mIHRoZSB3b3JrZXJzLiBUaGlzIGVuaGFuY2VtZW50IGlzIHRyYWNrZWQgYnkgWzJd
LgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIuY29tL3doYXR3Zy9odG1sL2lzc3Vlcy8y
NDc3CisgICAgICAgIFsyXTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2NDY3OAorCisgICAgICAgICogd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSk6CisgICAgICAgIEhvbGQgYG5hbWVgIG1lbWJlci4KKworICAg
ICAgICAqIHdvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiB3
b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgQWRkIGBuYW1l
YCBhdHRyaWJ1dGUuCisKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OkRlZGljYXRlZFdv
cmtlclRocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OmNy
ZWF0ZVdvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtl
clRocmVhZC5oOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Oldvcmtlcjo6V29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlcjo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6Oldvcmtlcjo6bm90aWZ5RmluaXNoZWQpOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuaWRsOgorICAgICAgICBB
ZGQgV29ya2VyT3B0aW9ucyBmb3IgZGVkaWNhdGVkIHdvcmtlciBjcmVhdGlvbi4KKworICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGVQcm94eS5oOgorICAgICAgICAqIHdvcmtlcnMv
V29ya2VyTWVzc2FnaW5nUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyTWVzc2Fn
aW5nUHJveHk6OnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyTWVzc2FnaW5nUHJveHkuaDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclRocmVhZC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6V29ya2VyVGhyZWFk
U3RhcnR1cERhdGEpOgorICAgICAgICBJc29sYXRlIGNvcHkgdGhlIGdpdmVuIGBuYW1lYCB0byBw
YXNzIHRoZSB3b3JrZXIgdGhyZWFkLgorCisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6
OldvcmtlclRocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRo
cmVhZCk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJUaHJlYWQuaDoKKyAgICAgICAgKiB3b3Jr
ZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJUaHJlYWQ6OlNlcnZpY2VXb3JrZXJUaHJlYWQpOgorICAgICAg
ICAoV2ViQ29yZTo6U2VydmljZVdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2NvcGUp
OgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQu
aDoKKwogMjAxOC0wOC0yMCAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAg
ICAgICAgV2ViIEluc3BlY3RvcjogYWxsb3cgYnJlYWtwb2ludHMgdG8gYmUgc2V0IGZvciBzcGVj
aWZpYyBldmVudCBsaXN0ZW5lcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9E
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggMjFkZGVkYjNkMDNhNWNkMTUyMDQ4
NzQyNDU0MDE2ZmM4ZTgyMDJlMS4uZGI3ZDc3NzBjNDQ1YzhkZmE2YmYwMjI1Y2I4MDk0Y2QwMDFl
MGI4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZS5jcHAKQEAgLTQxLDE2ICs0MSwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLVJlZjxEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZT4gRGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGU6OmNyZWF0ZShjb25zdCBVUkwmIHVybCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9y
aWdpbiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwg
Ym9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiB0aHJlYWQsIGNvbnN0IENvbnRl
bnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVz
cG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBv
bGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1l
T3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5LCBT
b2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkK
K1JlZjxEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZT4gRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGU6OmNyZWF0ZShjb25zdCBVUkwmIHVybCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQmIHRocmVh
ZCwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25u
ZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlciwgUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklEKQogewotICAgIGF1dG8gY29udGV4dCA9IGFkb3B0UmVmKCpuZXcgRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUodXJsLCBXVEZNb3ZlKG9yaWdpbiksIGlkZW50aWZpZXIsIHVz
ZXJBZ2VudCwgaXNPbmxpbmUsIHRocmVhZCwgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNl
Y3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Q
cm94eSwgc29ja2V0UHJvdmlkZXIsIHNlc3Npb25JRCkpOworICAgIGF1dG8gY29udGV4dCA9IGFk
b3B0UmVmKCpuZXcgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUodXJsLCBXVEZNb3ZlKG9yaWdp
biksIG5hbWUsIGlkZW50aWZpZXIsIHVzZXJBZ2VudCwgaXNPbmxpbmUsIHRocmVhZCwgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiks
IHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIsIHNlc3Npb25JRCkp
OwogICAgIGlmICghc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KQog
ICAgICAgICBjb250ZXh0LT5hcHBseUNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVy
cyhjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMpOwogICAgIHJldHVybiBjb250
ZXh0OwogfQogCi1EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6RGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNv
bnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNP
bmxpbmUsIERlZGljYXRlZFdvcmtlclRocmVhZCYgdGhyZWFkLCBib29sIHNob3VsZEJ5cGFzc01h
aW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9y
aWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Q
cm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHVybCwgUmVmPFNlY3VyaXR5T3JpZ2lu
PiYmIG9yaWdpbiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRpY2F0ZWRXb3JrZXJU
aHJlYWQmIHRocmVhZCwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwg
U29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQp
CiAgICAgOiBXb3JrZXJHbG9iYWxTY29wZSh1cmwsIFdURk1vdmUob3JpZ2luKSwgaWRlbnRpZmll
ciwgdXNlckFnZW50LCBpc09ubGluZSwgdGhyZWFkLCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250
ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUodG9wT3JpZ2luKSwgdGltZU9yaWdpbiwgY29ubmVj
dGlvblByb3h5LCBzb2NrZXRQcm92aWRlciwgc2Vzc2lvbklEKQorICAgICwgbV9uYW1lKG5hbWUp
CiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2Vy
R2xvYmFsU2NvcGUuaAppbmRleCA1MjFiYTQwOGExMmU3ZmRiZWEzZmMzMmYwYWY2ZWUwYzM1MDIw
MDhhLi41NWE5OWU1NzY0NGM1ZDc4NDgzNDM1NDZiZTAwN2I4ZjMwN2M1OTYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oCkBA
IC00OCw5ICs0OCwxMSBAQCBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7CiAKIGNsYXNzIERl
ZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIGZpbmFsIDogcHVibGljIFdvcmtlckdsb2JhbFNjb3Bl
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlPiBj
cmVhdGUoY29uc3QgVVJMJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBjb25zdCBTdHJpbmcmIGlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRpY2F0
ZWRXb3JrZXJUaHJlYWQmLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRl
cnMmLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVm
PFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBJ
REJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKiwgUEFMOjpTZXNz
aW9uSUQpOworICAgIHN0YXRpYyBSZWY8RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0
ZShjb25zdCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgbmFtZSwg
Y29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBp
c09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2Vj
dXJpdHlQb2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1Rp
bWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92
aWRlciosIFBBTDo6U2Vzc2lvbklEKTsKICAgICB2aXJ0dWFsIH5EZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZSgpOwogCisgICAgY29uc3QgU3RyaW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9u
YW1lOyB9CisKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBwb3N0TWVzc2FnZShKU0M6OkV4ZWNTdGF0
ZSYsIEpTQzo6SlNWYWx1ZSBtZXNzYWdlLCBWZWN0b3I8SlNDOjpTdHJvbmc8SlNDOjpKU09iamVj
dD4+JiYpOwogCiAgICAgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiB0aHJlYWQoKTsKQEAgLTU4LDEx
ICs2MCwxMyBAQCBjbGFzcyBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSBmaW5hbCA6IHB1Ymxp
YyBXb3JrZXJHbG9iYWxTY29wZSB7CiBwcml2YXRlOgogICAgIHVzaW5nIEJhc2UgPSBXb3JrZXJH
bG9iYWxTY29wZTsKIAotICAgIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYs
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBT
dHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiwg
Ym9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxTZWN1
cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xp
ZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIFBBTDo6U2Vzc2lvbklE
KTsKKyAgICBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJp
dHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVy
LCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2Vy
VGhyZWFkJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ks
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdp
biwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIFBBTDo6
U2Vzc2lvbklEKTsKIAogICAgIGJvb2wgaXNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBFeGNlcHRpb25Pcjx2b2lkPiBpbXBvcnRT
Y3JpcHRzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB1cmxzKSBmaW5hbDsKICAgICBFdmVudFRhcmdl
dEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsOworCisgICAgU3Ry
aW5nIG1fbmFtZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXgg
M2JhZWRmMDU5ZWEyNDc5YTA4OTAzNTFiMjkwYjFmMTllNTgwNDQ5ZS4uY2VhNjliZmFmYTE3OGQ4
ZjlmNTBjZWVkMDMzNjQzYzMwOWJjNjFhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTM3LDYgKzM3LDggQEAK
ICAgICBJc0ltbXV0YWJsZVByb3RvdHlwZUV4b3RpY09iamVjdCwKICAgICBJc0ltbXV0YWJsZVBy
b3RvdHlwZUV4b3RpY09iamVjdE9uUHJvdG90eXBlLAogXSBpbnRlcmZhY2UgRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CisgICAgW1JlcGxhY2VhYmxlXSBy
ZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CisKICAgICBbQ2FsbFdpdGg9U2NyaXB0
U3RhdGUsIE1heVRocm93RXhjZXB0aW9uXSB2b2lkIHBvc3RNZXNzYWdlKGFueSBtZXNzYWdlLCBv
cHRpb25hbCBzZXF1ZW5jZTxvYmplY3Q+IHRyYW5zZmVyID0gW10pOwogCiAgICAgdm9pZCBjbG9z
ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJU
aHJlYWQuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJUaHJlYWQu
Y3BwCmluZGV4IGRmYzY3NzY1MDljMjU1NmQyOWQwMzM1ZmMxMjg4OGZjYjgzZmZhMWIuLjczYTNk
YTRiYWFhZTQ5ODFmN2RiNzViM2ExNTk4ZjhhOGQ0ZGJlZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5jcHAKQEAgLTM4LDE3ICszOCwxNyBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLURlZGljYXRlZFdvcmtlclRocmVhZDo6RGVkaWNh
dGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNv
dXJjZUNvZGUsIFdvcmtlckxvYWRlclByb3h5JiB3b3JrZXJMb2FkZXJQcm94eSwgV29ya2VyRGVi
dWdnZXJQcm94eSYgd29ya2VyRGVidWdnZXJQcm94eSwgV29ya2VyT2JqZWN0UHJveHkmIHdvcmtl
ck9iamVjdFByb3h5LCBXb3JrZXJUaHJlYWRTdGFydE1vZGUgc3RhcnRNb2RlLCBjb25zdCBDb250
ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwg
U29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1l
RmxhZ3MsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKLSAgICA6IFdvcmtlclRocmVhZCh1cmws
IGlkZW50aWZpZXIsIHVzZXJBZ2VudCwgaXNPbmxpbmUsIHNvdXJjZUNvZGUsIHdvcmtlckxvYWRl
clByb3h5LCB3b3JrZXJEZWJ1Z2dlclByb3h5LCB3b3JrZXJPYmplY3RQcm94eSwgc3RhcnRNb2Rl
LCBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIHNob3VsZEJ5cGFzc01haW5X
b3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgdG9wT3JpZ2luLCB0aW1lT3JpZ2luLCBjb25uZWN0
aW9uUHJveHksIHNvY2tldFByb3ZpZGVyLCBydW50aW1lRmxhZ3MsIHNlc3Npb25JRCkKK0RlZGlj
YXRlZFdvcmtlclRocmVhZDo6RGVkaWNhdGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYgdXJsLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5n
JiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29y
a2VyTG9hZGVyUHJveHkmIHdvcmtlckxvYWRlclByb3h5LCBXb3JrZXJEZWJ1Z2dlclByb3h5JiB3
b3JrZXJEZWJ1Z2dlclByb3h5LCBXb3JrZXJPYmplY3RQcm94eSYgd29ya2VyT2JqZWN0UHJveHks
IFdvcmtlclRocmVhZFN0YXJ0TW9kZSBzdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJz
LCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3Qg
U2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBJREJD
bGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRl
ciogc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGltZUZsYWdzIHJ1bnRpbWVGbGFncywgUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklEKQorICAgIDogV29ya2VyVGhyZWFkKHVybCwgbmFtZSwgaWRlbnRp
ZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgc291cmNlQ29kZSwgd29ya2VyTG9hZGVyUHJveHks
IHdvcmtlckRlYnVnZ2VyUHJveHksIHdvcmtlck9iamVjdFByb3h5LCBzdGFydE1vZGUsIGNvbnRl
bnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCB0b3BPcmlnaW4sIHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Qcm94
eSwgc29ja2V0UHJvdmlkZXIsIHJ1bnRpbWVGbGFncywgc2Vzc2lvbklEKQogICAgICwgbV93b3Jr
ZXJPYmplY3RQcm94eSh3b3JrZXJPYmplY3RQcm94eSkKIHsKIH0KIAogRGVkaWNhdGVkV29ya2Vy
VGhyZWFkOjp+RGVkaWNhdGVkV29ya2VyVGhyZWFkKCkgPSBkZWZhdWx0OwogCi1SZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IERlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2Nv
cGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNvbnN0IFN0
cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUs
IGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3Vy
aXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRl
bnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3Rv
bmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitSZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IERlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2Nv
cGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNvbnN0IFN0
cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJB
Z2VudCwgYm9vbCBpc09ubGluZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VI
ZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+
JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCkKIHsKLSAgICByZXR1cm4gRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmNyZWF0
ZSh1cmwsIFdURk1vdmUob3JpZ2luKSwgaWRlbnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwg
KnRoaXMsIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNz
TWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVP
cmlnaW4sIGlkYkNvbm5lY3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpLCBzZXNzaW9uSUQp
OworICAgIHJldHVybiBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKHVybCwgV1RG
TW92ZShvcmlnaW4pLCBuYW1lLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCAqdGhp
cywgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBzaG91bGRCeXBhc3NNYWlu
V29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUodG9wT3JpZ2luKSwgdGltZU9yaWdp
biwgaWRiQ29ubmVjdGlvblByb3h5KCksIHNvY2tldFByb3ZpZGVyKCksIHNlc3Npb25JRCk7CiB9
CiAKIHZvaWQgRGVkaWNhdGVkV29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJUaHJlYWQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmgKaW5kZXggZDQ2ODc5Yjcx
MzhiOGUyNTQ1ODNhNTM3YmIwNGFjYmVjMzM1ZGU2MC4uZjFjOTYyNGIxOGFjMTg5MzI5ODg0NjMz
OTYxNjM1MmNhYzBjN2RkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRp
Y2F0ZWRXb3JrZXJUaHJlYWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRl
ZFdvcmtlclRocmVhZC5oCkBAIC00OSwxMSArNDksMTEgQEAgY2xhc3MgRGVkaWNhdGVkV29ya2Vy
VGhyZWFkIDogcHVibGljIFdvcmtlclRocmVhZCB7CiAgICAgV29ya2VyT2JqZWN0UHJveHkmIHdv
cmtlck9iamVjdFByb3h5KCkgY29uc3QgeyByZXR1cm4gbV93b3JrZXJPYmplY3RQcm94eTsgfQog
CiBwcm90ZWN0ZWQ6Ci0gICAgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJHbG9i
YWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYg
aWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0
IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNz
TWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9w
T3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKSBvdmVycmlk
ZTsKKyAgICBSZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNv
bnN0IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25z
dCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25s
aW5lLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25J
RCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBydW5FdmVudExvb3AoKSBvdmVycmlkZTsKIAogcHJpdmF0
ZToKLSAgICBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBp
ZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYsIFdvcmtlckRlYnVnZ2VyUHJv
eHkmLCBXb3JrZXJPYmplY3RQcm94eSYsIFdvcmtlclRocmVhZFN0YXJ0TW9kZSwgY29uc3QgQ29u
dGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWlu
V29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmln
aW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJv
eHkqLCBTb2NrZXRQcm92aWRlciosIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCk7
CisgICAgRGVkaWNhdGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9v
bCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYs
IFdvcmtlckRlYnVnZ2VyUHJveHkmLCBXb3JrZXJPYmplY3RQcm94eSYsIFdvcmtlclRocmVhZFN0
YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9v
bCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50
OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIEpTQzo6UnVudGltZUZsYWdz
LCBQQUw6OlNlc3Npb25JRCk7CiAKICAgICBXb3JrZXJPYmplY3RQcm94eSYgbV93b3JrZXJPYmpl
Y3RQcm94eTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKaW5kZXggNDA5ZWUxYWNjZDk3
MGIyZGQ5NjE3NjllOWY2Y2ZhOWY5MDRjYjk0OC4uNDk0NzRjNzA0MmQzZjBmOWE0YmE2ZmUzNjZh
MzBhMzgzODQwYmQ4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmNwcApAQCAtNTcsOCArNTcs
OSBAQCB2b2lkIFdvcmtlcjo6bmV0d29ya1N0YXRlQ2hhbmdlZChib29sIGlzT25MaW5lKQogICAg
ICAgICB3b3JrZXItPm5vdGlmeU5ldHdvcmtTdGF0ZUNoYW5nZShpc09uTGluZSk7CiB9CiAKLWlu
bGluZSBXb3JrZXI6OldvcmtlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBKU0M6
OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MpCitpbmxpbmUgV29ya2VyOjpXb3JrZXIoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdz
LCBjb25zdCBPcHRpb25zJiBvcHRpb25zKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZjb250ZXh0
KQorICAgICwgbV9uYW1lKG9wdGlvbnMubmFtZSkKICAgICAsIG1faWRlbnRpZmllcigid29ya2Vy
OiIgKyBJbnNwZWN0b3I6OklkZW50aWZpZXJzRmFjdG9yeTo6Y3JlYXRlSWRlbnRpZmllcigpKQog
ICAgICwgbV9jb250ZXh0UHJveHkoV29ya2VyR2xvYmFsU2NvcGVQcm94eTo6Y3JlYXRlKCp0aGlz
KSkKICAgICAsIG1fcnVudGltZUZsYWdzKHJ1bnRpbWVGbGFncykKQEAgLTczLDE0ICs3NCwxNCBA
QCBpbmxpbmUgV29ya2VyOjpXb3JrZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwg
SlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZQogICAgIEFTU0VSVF9VTlVTRUQoYWRkUmVzdWx0LCBh
ZGRSZXN1bHQuaXNOZXdFbnRyeSk7CiB9CiAKLUV4Y2VwdGlvbk9yPFJlZjxXb3JrZXI+PiBXb3Jr
ZXI6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBKU0M6OlJ1bnRpbWVG
bGFncyBydW50aW1lRmxhZ3MsIGNvbnN0IFN0cmluZyYgdXJsKQorRXhjZXB0aW9uT3I8UmVmPFdv
cmtlcj4+IFdvcmtlcjo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEpT
Qzo6UnVudGltZUZsYWdzIHJ1bnRpbWVGbGFncywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IE9w
dGlvbnMmIG9wdGlvbnMpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIAogICAgIC8v
IFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IG5lc3RlZCB3b3JrZXJzLCBzbyB3b3JrZXJzIGNh
biBvbmx5IGJlIGNyZWF0ZWQgZnJvbSBkb2N1bWVudHMuCiAgICAgQVNTRVJUX1dJVEhfU0VDVVJJ
VFlfSU1QTElDQVRJT04oY29udGV4dC5pc0RvY3VtZW50KCkpOwogCi0gICAgYXV0byB3b3JrZXIg
PSBhZG9wdFJlZigqbmV3IFdvcmtlcihjb250ZXh0LCBydW50aW1lRmxhZ3MpKTsKKyAgICBhdXRv
IHdvcmtlciA9IGFkb3B0UmVmKCpuZXcgV29ya2VyKGNvbnRleHQsIHJ1bnRpbWVGbGFncywgb3B0
aW9ucykpOwogCiAgICAgd29ya2VyLT5zdXNwZW5kSWZOZWVkZWQoKTsKIApAQCAtMTAzLDEyICsx
MDQsMTIgQEAgRXhjZXB0aW9uT3I8UmVmPFdvcmtlcj4+IFdvcmtlcjo6Y3JlYXRlKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEpTQzo6UnUKICAgICBSZXNvdXJjZVJlcXVlc3QgcmVx
dWVzdCB7IHNjcmlwdFVSTC5yZWxlYXNlUmV0dXJuVmFsdWUoKSB9OwogICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9ySWRlbnRpZmllcih3b3JrZXItPm1faWRlbnRpZmllcik7CiAKLSAgICBGZXRjaE9w
dGlvbnMgb3B0aW9uczsKLSAgICBvcHRpb25zLm1vZGUgPSBGZXRjaE9wdGlvbnM6Ok1vZGU6OlNh
bWVPcmlnaW47Ci0gICAgb3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6Q2FjaGU6OkRlZmF1
bHQ7Ci0gICAgb3B0aW9ucy5yZWRpcmVjdCA9IEZldGNoT3B0aW9uczo6UmVkaXJlY3Q6OkZvbGxv
dzsKLSAgICBvcHRpb25zLmRlc3RpbmF0aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6
V29ya2VyOwotICAgIHdvcmtlci0+bV9zY3JpcHRMb2FkZXItPmxvYWRBc3luY2hyb25vdXNseShj
b250ZXh0LCBXVEZNb3ZlKHJlcXVlc3QpLCBXVEZNb3ZlKG9wdGlvbnMpLCBjb250ZW50U2VjdXJp
dHlQb2xpY3lFbmZvcmNlbWVudCwgU2VydmljZVdvcmtlcnNNb2RlOjpBbGwsIHdvcmtlcik7Cisg
ICAgRmV0Y2hPcHRpb25zIGZldGNoT3B0aW9uczsKKyAgICBmZXRjaE9wdGlvbnMubW9kZSA9IEZl
dGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKKyAgICBmZXRjaE9wdGlvbnMuY2FjaGUgPSBG
ZXRjaE9wdGlvbnM6OkNhY2hlOjpEZWZhdWx0OworICAgIGZldGNoT3B0aW9ucy5yZWRpcmVjdCA9
IEZldGNoT3B0aW9uczo6UmVkaXJlY3Q6OkZvbGxvdzsKKyAgICBmZXRjaE9wdGlvbnMuZGVzdGlu
YXRpb24gPSBGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpXb3JrZXI7CisgICAgd29ya2VyLT5t
X3NjcmlwdExvYWRlci0+bG9hZEFzeW5jaHJvbm91c2x5KGNvbnRleHQsIFdURk1vdmUocmVxdWVz
dCksIFdURk1vdmUoZmV0Y2hPcHRpb25zKSwgY29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1l
bnQsIFNlcnZpY2VXb3JrZXJzTW9kZTo6QWxsLCB3b3JrZXIpOwogICAgIHJldHVybiBXVEZNb3Zl
KHdvcmtlcik7CiB9CiAKQEAgLTE4NSw3ICsxODYsNyBAQCB2b2lkIFdvcmtlcjo6bm90aWZ5Rmlu
aXNoZWQoKQogICAgIGVsc2UgewogICAgICAgICBib29sIGlzT25saW5lID0gcGxhdGZvcm1TdHJh
dGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmlzT25MaW5lKCk7CiAgICAgICAgIGNvbnN0IENv
bnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5
UmVzcG9uc2VIZWFkZXJzID0gbV9jb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMg
PyBtX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycy52YWx1ZSgpIDogc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+cmVzcG9uc2VIZWFk
ZXJzKCk7Ci0gICAgICAgIG1fY29udGV4dFByb3h5LnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUobV9z
Y3JpcHRMb2FkZXItPnVybCgpLCBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnVzZXJBZ2VudCht
X3NjcmlwdExvYWRlci0+dXJsKCkpLCBpc09ubGluZSwgbV9zY3JpcHRMb2FkZXItPnNjcmlwdCgp
LCBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIG1fc2hvdWxkQnlwYXNzTWFp
bldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBtX3dvcmtlckNyZWF0aW9uVGltZSwgbV9ydW50
aW1lRmxhZ3MsIHNlc3Npb25JRCk7CisgICAgICAgIG1fY29udGV4dFByb3h5LnN0YXJ0V29ya2Vy
R2xvYmFsU2NvcGUobV9zY3JpcHRMb2FkZXItPnVybCgpLCBtX25hbWUsIHNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+dXNlckFnZW50KG1fc2NyaXB0TG9hZGVyLT51cmwoKSksIGlzT25saW5lLCBt
X3NjcmlwdExvYWRlci0+c2NyaXB0KCksIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVh
ZGVycywgbV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIG1fd29y
a2VyQ3JlYXRpb25UaW1lLCBtX3J1bnRpbWVGbGFncywgc2Vzc2lvbklEKTsKICAgICAgICAgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCgqc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLCBtX3NjcmlwdExvYWRlci0+aWRlbnRpZmllcigpLCBtX3NjcmlwdExvYWRlci0+c2Ny
aXB0KCkpOwogICAgIH0KICAgICBtX3NjcmlwdExvYWRlciA9IG51bGxwdHI7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXIuaAppbmRleCBjMjI4ZGVhNDMzNjYyNmFkOGZkYzBiNWEwNWUyMDVlMTEwMDgyYmVj
Li4yZGNjZjIwNjJmMmNkZjc0MGMwZDM0MjhhMWVjZmJhMmViNWIzYmRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyLmgKQEAgLTUwLDcgKzUwLDEwIEBAIGNsYXNzIFdvcmtlclNjcmlwdExvYWRlcjsK
IAogY2xhc3MgV29ya2VyIGZpbmFsIDogcHVibGljIEFic3RyYWN0V29ya2VyLCBwdWJsaWMgQWN0
aXZlRE9NT2JqZWN0LCBwcml2YXRlIFdvcmtlclNjcmlwdExvYWRlckNsaWVudCB7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxXb3JrZXI+PiBjcmVhdGUoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYsIEpTQzo6UnVudGltZUZsYWdzLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAg
c3RydWN0IE9wdGlvbnMgeworICAgICAgICBTdHJpbmcgbmFtZTsKKyAgICB9OworICAgIHN0YXRp
YyBFeGNlcHRpb25PcjxSZWY8V29ya2VyPj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
LCBKU0M6OlJ1bnRpbWVGbGFncywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IE9wdGlvbnMmKTsK
ICAgICB2aXJ0dWFsIH5Xb3JrZXIoKTsKIAogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHBvc3RNZXNz
YWdlKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1ZhbHVlIG1lc3NhZ2UsIFZlY3RvcjxKU0M6OlN0
cm9uZzxKU0M6OkpTT2JqZWN0Pj4mJik7CkBAIC02NCw3ICs2Nyw3IEBAIGNsYXNzIFdvcmtlciBm
aW5hbCA6IHB1YmxpYyBBYnN0cmFjdFdvcmtlciwgcHVibGljIEFjdGl2ZURPTU9iamVjdCwgcHJp
dmF0ZSBXb3JrCiAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIEFjdGl2ZURPTU9iamVjdDo6c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgV29ya2VyKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmLCBKU0M6OlJ1bnRpbWVGbGFncyk7CisgICAgZXhwbGljaXQgV29ya2Vy
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBKU0M6OlJ1bnRpbWVGbGFncywgY29uc3QgT3B0aW9u
cyYpOwogCiAgICAgRXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBXb3JrZXJFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KIApA
QCAtODAsNiArODMsNyBAQCBjbGFzcyBXb3JrZXIgZmluYWwgOiBwdWJsaWMgQWJzdHJhY3RXb3Jr
ZXIsIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHByaXZhdGUgV29yawogICAgIHN0YXRpYyB2b2lk
IG5ldHdvcmtTdGF0ZUNoYW5nZWQoYm9vbCBpc09uTGluZSk7CiAKICAgICBSZWZQdHI8V29ya2Vy
U2NyaXB0TG9hZGVyPiBtX3NjcmlwdExvYWRlcjsKKyAgICBTdHJpbmcgbV9uYW1lOwogICAgIFN0
cmluZyBtX2lkZW50aWZpZXI7CiAgICAgV29ya2VyR2xvYmFsU2NvcGVQcm94eSYgbV9jb250ZXh0
UHJveHk7IC8vIFRoZSBwcm94eSBvdXRsaXZlcyB0aGUgd29ya2VyIHRvIHBlcmZvcm0gdGhyZWFk
IHNodXRkb3duLgogICAgIHN0ZDo6b3B0aW9uYWw8Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzPiBtX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVyczsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyLmlkbAppbmRleCA2YzUxNzc4MzU3NDA4NzAyNmZmYTZkM2FjMTYxOWZm
YzU1YTRmYzE1Li45NTMxNTAzODk1OThmMTM1MDNiNjVjZWQ4ZDRlOTJjZTJkY2E2M2YxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXIuaWRsCkBAIC0yNiw3ICsyNiw3IEBACiAKIFsKICAgICBBY3Rp
dmVET01PYmplY3QsCi0gICAgQ29uc3RydWN0b3IoVVNWU3RyaW5nIHNjcmlwdFVybCksCisgICAg
Q29uc3RydWN0b3IoVVNWU3RyaW5nIHNjcmlwdFVybCwgb3B0aW9uYWwgV29ya2VyT3B0aW9ucyBv
cHRpb25zKSwKICAgICBDb25zdHJ1Y3RvckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
UnVudGltZUZsYWdzLAogICAgIENvbnN0cnVjdG9yTWF5VGhyb3dFeGNlcHRpb24KIF0gaW50ZXJm
YWNlIFdvcmtlciA6IEV2ZW50VGFyZ2V0IHsKQEAgLTM2LDQgKzM2LDggQEAKICAgICBhdHRyaWJ1
dGUgRXZlbnRIYW5kbGVyIG9ubWVzc2FnZTsKIH07CiAKK2RpY3Rpb25hcnkgV29ya2VyT3B0aW9u
cyB7CisgICAgRE9NU3RyaW5nIG5hbWUgPSAiIjsKK307CisKIFdvcmtlciBpbXBsZW1lbnRzIEFi
c3RyYWN0V29ya2VyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJH
bG9iYWxTY29wZVByb3h5LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlUHJveHkuaAppbmRleCA0Nzk0M2ZmNWI5N2IxMDhmOWU2YjFkMzYyYWZmNTVjNzljNjQzYzY5
Li4zNmJkMDA3MDdkMGE2OGRiMzA3NjI3MmJhNjVmMzBhM2E5MjdmMWU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlUHJveHkuaApAQCAtNTAsNyArNTAs
NyBAQCBjbGFzcyBXb3JrZXJHbG9iYWxTY29wZVByb3h5IHsKIHB1YmxpYzoKICAgICBzdGF0aWMg
V29ya2VyR2xvYmFsU2NvcGVQcm94eSYgY3JlYXRlKFdvcmtlciYpOwogCi0gICAgdmlydHVhbCB2
b2lkIHN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0
cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUs
IGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBNb25vdG9uaWNUaW1lIHRpbWVP
cmlnaW4sIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCkgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBzdGFydFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBj
b25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9s
aWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNl
c3Npb25JRCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCB0ZXJtaW5hdGVXb3JrZXJHbG9iYWxTY29w
ZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcG9zdE1lc3NhZ2VUb1dvcmtlckdsb2JhbFNjb3Bl
KE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzJiYpID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgaGFzUGVu
ZGluZ0FjdGl2aXR5KCkgY29uc3QgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlck1lc3NhZ2luZ1Byb3h5LmNwcAppbmRleCBmMzY2NDYyZDM5MzYyMjUyMjM3OWI3MGRmYWJi
ZjRmYjg1N2RiMjU5Li5hNzVjMDE1NmM1OWUzOGRkOTk5ZDZjZWMxZGRlZWRlMjNiZTE4N2IzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNwcApA
QCAtNzIsNyArNzIsNyBAQCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6fldvcmtlck1lc3NhZ2luZ1By
b3h5KCkKICAgICAgICAgfHwgKGlzPFdvcmtlckdsb2JhbFNjb3BlPigqbV9zY3JpcHRFeGVjdXRp
b25Db250ZXh0KSAmJiBkb3duY2FzdDxXb3JrZXJHbG9iYWxTY29wZT4oKm1fc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCkudGhyZWFkKCkudGhyZWFkKCkgPT0gJlRocmVhZDo6Y3VycmVudCgpKSk7CiB9
CiAKLXZvaWQgV29ya2VyTWVzc2FnaW5nUHJveHk6OnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29u
c3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5l
LCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29s
IHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgTW9ub3RvbmljVGlt
ZSB0aW1lT3JpZ2luLCBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MsIFBBTDo6U2Vzc2lv
bklEIHNlc3Npb25JRCkKK3ZvaWQgV29ya2VyTWVzc2FnaW5nUHJveHk6OnN0YXJ0V29ya2VyR2xv
YmFsU2NvcGUoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3Qg
U3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29k
ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGlt
ZUZsYWdzIHJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogewogICAgIC8v
IEZJWE1FOiBUaGlzIG5lZWQgdG8gYmUgcmV2aXNpdGVkIHdoZW4gd2Ugc3VwcG9ydCBuZXN0ZWQg
d29ya2VyIG9uZSBkYXkKICAgICBBU1NFUlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KTsKQEAg
LTg4LDcgKzg4LDcgQEAgdm9pZCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3JrZXJHbG9i
YWxTY29wZShjb25zdCBVUkwmIHNjcmlwdFVSTCwgY29uc3QgU3QKIAogICAgIFNvY2tldFByb3Zp
ZGVyKiBzb2NrZXRQcm92aWRlciA9IGRvY3VtZW50LnNvY2tldFByb3ZpZGVyKCk7CiAKLSAgICBh
dXRvIHRocmVhZCA9IERlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlKHNjcmlwdFVSTCwgaWRl
bnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgc291cmNlQ29kZSwgKnRoaXMsICp0aGlzLCAq
dGhpcywgc3RhcnRNb2RlLCBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgZG9jdW1lbnQudG9wT3Jp
Z2luKCksIHRpbWVPcmlnaW4sIHByb3h5LCBzb2NrZXRQcm92aWRlciwgcnVudGltZUZsYWdzLCBz
ZXNzaW9uSUQpOworICAgIGF1dG8gdGhyZWFkID0gRGVkaWNhdGVkV29ya2VyVGhyZWFkOjpjcmVh
dGUoc2NyaXB0VVJMLCBuYW1lLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCBzb3Vy
Y2VDb2RlLCAqdGhpcywgKnRoaXMsICp0aGlzLCBzdGFydE1vZGUsIGNvbnRlbnRTZWN1cml0eVBv
bGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5
UG9saWN5LCBkb2N1bWVudC50b3BPcmlnaW4oKSwgdGltZU9yaWdpbiwgcHJveHksIHNvY2tldFBy
b3ZpZGVyLCBydW50aW1lRmxhZ3MsIHNlc3Npb25JRCk7CiAKICAgICB3b3JrZXJUaHJlYWRDcmVh
dGVkKHRocmVhZC5nZXQoKSk7CiAgICAgdGhyZWFkLT5zdGFydChudWxscHRyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaAppbmRleCA0ZWZmMmZhNGEy
NDNlY2ZjMTRmNDY0NWVhZDZjZmY2MTBlYTQ0YmVjLi5lY2VkYjQ4Mzk1NmMxMjFiZjg2ZDA1ZjIy
YmFiYTQzODE0YmNkMzA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
ck1lc3NhZ2luZ1Byb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNz
YWdpbmdQcm94eS5oCkBAIC00Niw3ICs0Niw3IEBAIGNsYXNzIFdvcmtlck1lc3NhZ2luZ1Byb3h5
IGZpbmFsIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPFdvcmtlck1lc3NhZ2luZ1ByCiBw
cml2YXRlOgogICAgIC8vIEltcGxlbWVudGF0aW9ucyBvZiBXb3JrZXJHbG9iYWxTY29wZVByb3h5
LgogICAgIC8vIChPbmx5IHVzZSB0aGVzZSBmdW5jdGlvbnMgaW4gdGhlIHdvcmtlciBvYmplY3Qg
dGhyZWFkLikKLSAgICB2b2lkIHN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiBzY3Jp
cHRVUkwsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJp
bmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVy
cyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCkg
ZmluYWw7CisgICAgdm9pZCBzdGFydFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYgc2NyaXB0
VVJMLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlz
T25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNl
Y3VyaXR5UG9saWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdz
LCBQQUw6OlNlc3Npb25JRCkgZmluYWw7CiAgICAgdm9pZCB0ZXJtaW5hdGVXb3JrZXJHbG9iYWxT
Y29wZSgpIGZpbmFsOwogICAgIHZvaWQgcG9zdE1lc3NhZ2VUb1dvcmtlckdsb2JhbFNjb3BlKE1l
c3NhZ2VXaXRoTWVzc2FnZVBvcnRzJiYpIGZpbmFsOwogICAgIGJvb2wgaGFzUGVuZGluZ0FjdGl2
aXR5KCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5jcHAK
aW5kZXggZjM4OTE4NTQyZTk0ZGMyNjVmNTU5YzNiNzE5NjNhZmRkOWFkMTVlZC4uMWM2YWExNjVi
NTkxODcxNDdjOGJhODA5NTYxYjMwMzE1Yzg0YjBiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyVGhyZWFkLmNwcApAQCAtNzIsMTAgKzcyLDExIEBAIHVuc2lnbmVkIFdvcmtlclRocmVh
ZDo6d29ya2VyVGhyZWFkQ291bnQoKQogc3RydWN0IFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhIHsK
ICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXb3JrZXJUaHJlYWRTdGFydHVwRGF0YSk7IFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIFdvcmtlclRocmVhZFN0YXJ0dXBEYXRh
KGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUs
IFdvcmtlclRocmVhZFN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xp
Y3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9y
aWdpbiwgUEFMOjpTZXNzaW9uSUQpOworICAgIFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhKGNvbnN0
IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmlu
ZyYgc291cmNlQ29kZSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlLCBjb25zdCBDb250ZW50U2VjdXJp
dHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRl
bnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9ub3Rv
bmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCk7CiAKICAgICBVUkwgbV9zY3JpcHRV
Ukw7CiAgICAgUmVmPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsKKyAgICBTdHJpbmcgbV9uYW1l
OwogICAgIFN0cmluZyBtX2lkZW50aWZpZXI7CiAgICAgU3RyaW5nIG1fdXNlckFnZW50OwogICAg
IFN0cmluZyBtX3NvdXJjZUNvZGU7CkBAIC04OCw5ICs4OSwxMCBAQCBzdHJ1Y3QgV29ya2VyVGhy
ZWFkU3RhcnR1cERhdGEgewogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogfTsKIAot
V29ya2VyVGhyZWFkU3RhcnR1cERhdGE6OldvcmtlclRocmVhZFN0YXJ0dXBEYXRhKGNvbnN0IFVS
TCYgc2NyaXB0VVJMLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNl
ckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIFdvcmtlclRo
cmVhZFN0YXJ0TW9kZSBzdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlP
cmlnaW4mIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25J
RCBzZXNzaW9uSUQpCitXb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6V29ya2VyVGhyZWFkU3RhcnR1
cERhdGEoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3Ry
aW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJUaHJlYWRTdGFydE1vZGUgc3RhcnRNb2Rl
LCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1
cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250
ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90
b25pY1RpbWUgdGltZU9yaWdpbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogICAgIDogbV9z
Y3JpcHRVUkwoc2NyaXB0VVJMLmlzb2xhdGVkQ29weSgpKQogICAgICwgbV9vcmlnaW4oU2VjdXJp
dHlPcmlnaW46OmNyZWF0ZShtX3NjcmlwdFVSTCktPmlzb2xhdGVkQ29weSgpKQorICAgICwgbV9u
YW1lKG5hbWUuaXNvbGF0ZWRDb3B5KCkpCiAgICAgLCBtX2lkZW50aWZpZXIoaWRlbnRpZmllci5p
c29sYXRlZENvcHkoKSkKICAgICAsIG1fdXNlckFnZW50KHVzZXJBZ2VudC5pc29sYXRlZENvcHko
KSkKICAgICAsIG1fc291cmNlQ29kZShzb3VyY2VDb2RlLmlzb2xhdGVkQ29weSgpKQpAQCAtMTA0
LDEyICsxMDYsMTIgQEAgV29ya2VyVGhyZWFkU3RhcnR1cERhdGE6OldvcmtlclRocmVhZFN0YXJ0
dXBEYXRhKGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdHIKIHsKIH0KIAotV29ya2VyVGhy
ZWFkOjpXb3JrZXJUaHJlYWQoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgaWRl
bnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0
cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9hZGVyUHJveHkmIHdvcmtlckxvYWRlclByb3h5LCBX
b3JrZXJEZWJ1Z2dlclByb3h5JiB3b3JrZXJEZWJ1Z2dlclByb3h5LCBXb3JrZXJSZXBvcnRpbmdQ
cm94eSYgd29ya2VyUmVwb3J0aW5nUHJveHksIFdvcmtlclRocmVhZFN0YXJ0TW9kZSBzdGFydE1v
ZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENv
bnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29u
bmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGlt
ZUZsYWdzIHJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQorV29ya2VyVGhy
ZWFkOjpXb3JrZXJUaHJlYWQoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9v
bCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYg
d29ya2VyTG9hZGVyUHJveHksIFdvcmtlckRlYnVnZ2VyUHJveHkmIHdvcmtlckRlYnVnZ2VyUHJv
eHksIFdvcmtlclJlcG9ydGluZ1Byb3h5JiB3b3JrZXJSZXBvcnRpbmdQcm94eSwgV29ya2VyVGhy
ZWFkU3RhcnRNb2RlIHN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hv
dWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1cml0eU9y
aWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURC
Q29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQ
cm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCBz
ZXNzaW9uSUQpCiAgICAgOiBtX3dvcmtlckxvYWRlclByb3h5KHdvcmtlckxvYWRlclByb3h5KQog
ICAgICwgbV93b3JrZXJEZWJ1Z2dlclByb3h5KHdvcmtlckRlYnVnZ2VyUHJveHkpCiAgICAgLCBt
X3dvcmtlclJlcG9ydGluZ1Byb3h5KHdvcmtlclJlcG9ydGluZ1Byb3h5KQogICAgICwgbV9ydW50
aW1lRmxhZ3MocnVudGltZUZsYWdzKQotICAgICwgbV9zdGFydHVwRGF0YShzdGQ6Om1ha2VfdW5p
cXVlPFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhPihzY3JpcHRVUkwsIGlkZW50aWZpZXIsIHVzZXJB
Z2VudCwgaXNPbmxpbmUsIHNvdXJjZUNvZGUsIHN0YXJ0TW9kZSwgY29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzLCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIHRvcE9yaWdpbiwgdGltZU9yaWdpbiwgc2Vzc2lvbklEKSkKKyAgICAsIG1fc3RhcnR1
cERhdGEoc3RkOjptYWtlX3VuaXF1ZTxXb3JrZXJUaHJlYWRTdGFydHVwRGF0YT4oc2NyaXB0VVJM
LCBuYW1lLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCBzb3VyY2VDb2RlLCBzdGFy
dE1vZGUsIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNz
TWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCB0b3BPcmlnaW4sIHRpbWVPcmlnaW4sIHNl
c3Npb25JRCkpCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgLCBtX2lkYkNvbm5l
Y3Rpb25Qcm94eShjb25uZWN0aW9uUHJveHkpCiAjZW5kaWYKQEAgLTE2Nyw3ICsxNjksNyBAQCB2
b2lkIFdvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkKCkKICAgICAgICAgLy8gd2hpbGUgV29ya2Vy
VGhyZWFkOjpzdG9wKCkgaXMgYWNjZXNzaW5nIGl0LiBOb3RlIHRoYXQgV29ya2VyVGhyZWFkOjpz
dG9wKCkgY2FuCiAgICAgICAgIC8vIGJlIGNhbGxlZCBiZWZvcmUgd2UndmUgZmluaXNoZWQgY3Jl
YXRpbmcgdGhlIFdvcmtlckdsb2JhbFNjb3BlLgogICAgICAgICBMb2NrSG9sZGVyIGxvY2sobV90
aHJlYWRDcmVhdGlvbkFuZFdvcmtlckdsb2JhbFNjb3BlTXV0ZXgpOwotICAgICAgICBtX3dvcmtl
ckdsb2JhbFNjb3BlID0gY3JlYXRlV29ya2VyR2xvYmFsU2NvcGUobV9zdGFydHVwRGF0YS0+bV9z
Y3JpcHRVUkwsIFdURk1vdmUobV9zdGFydHVwRGF0YS0+bV9vcmlnaW4pLCBtX3N0YXJ0dXBEYXRh
LT5tX2lkZW50aWZpZXIsIG1fc3RhcnR1cERhdGEtPm1fdXNlckFnZW50LCBtX3N0YXJ0dXBEYXRh
LT5tX2lzT25saW5lLCBtX3N0YXJ0dXBEYXRhLT5tX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycywgbV9zdGFydHVwRGF0YS0+bV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50
U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUobV9zdGFydHVwRGF0YS0+bV90b3BPcmlnaW4pLCBtX3N0
YXJ0dXBEYXRhLT5tX3RpbWVPcmlnaW4sIG1fc3RhcnR1cERhdGEtPm1fc2Vzc2lvbklEKTsKKyAg
ICAgICAgbV93b3JrZXJHbG9iYWxTY29wZSA9IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKG1fc3Rh
cnR1cERhdGEtPm1fc2NyaXB0VVJMLCBXVEZNb3ZlKG1fc3RhcnR1cERhdGEtPm1fb3JpZ2luKSwg
bV9zdGFydHVwRGF0YS0+bV9uYW1lLCBtX3N0YXJ0dXBEYXRhLT5tX2lkZW50aWZpZXIsIG1fc3Rh
cnR1cERhdGEtPm1fdXNlckFnZW50LCBtX3N0YXJ0dXBEYXRhLT5tX2lzT25saW5lLCBtX3N0YXJ0
dXBEYXRhLT5tX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgbV9zdGFydHVw
RGF0YS0+bV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1v
dmUobV9zdGFydHVwRGF0YS0+bV90b3BPcmlnaW4pLCBtX3N0YXJ0dXBEYXRhLT5tX3RpbWVPcmln
aW4sIG1fc3RhcnR1cERhdGEtPm1fc2Vzc2lvbklEKTsKIAogICAgICAgICBzY3JpcHRDb250cm9s
bGVyID0gbV93b3JrZXJHbG9iYWxTY29wZS0+c2NyaXB0KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlclRocmVhZC5oCmluZGV4IGVkZTcwZWYwMmFmYTBkNDk0NGQwYWFkZWM5OWJmMGI2MmU5
OWVkNGUuLmQ3MTQxMjQ4NWE5NjkwNDlhZGI0OTY1OTc0ZGJlOTFmNWVlMTkxODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuaApAQCAtODcsMTAgKzg3LDEwIEBAIGNsYXNzIFdv
cmtlclRocmVhZCA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxXb3JrZXJUaHJlYWQ+IHsK
ICAgICBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MoKSBjb25zdCB7IHJldHVybiBtX3J1
bnRpbWVGbGFnczsgfQogCiBwcm90ZWN0ZWQ6Ci0gICAgV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wg
aXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9hZGVyUHJveHkmLCBX
b3JrZXJEZWJ1Z2dlclByb3h5JiwgV29ya2VyUmVwb3J0aW5nUHJveHkmLCBXb3JrZXJUaHJlYWRT
dGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJv
b2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1
cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVu
dDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBKU0M6OlJ1bnRpbWVGbGFn
cywgUEFMOjpTZXNzaW9uSUQpOworICAgIFdvcmtlclRocmVhZChjb25zdCBVUkwmLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2Vy
QWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9h
ZGVyUHJveHkmLCBXb3JrZXJEZWJ1Z2dlclByb3h5JiwgV29ya2VyUmVwb3J0aW5nUHJveHkmLCBX
b3JrZXJUaHJlYWRTdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNl
SGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5
LCBjb25zdCBTZWN1cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBKU0M6
OlJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQpOwogCiAgICAgLy8gRmFjdG9yeSBtZXRob2Qg
Zm9yIGNyZWF0aW5nIGEgbmV3IHdvcmtlciBjb250ZXh0IGZvciB0aGUgdGhyZWFkLgotICAgIHZp
cnR1YWwgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJHbG9iYWxTY29wZShjb25z
dCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1
cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKSA9IDA7CisgICAgdmlydHVhbCBS
ZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYs
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcm
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25z
dCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNob3VsZEJ5cGFz
c01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRv
cE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCkgPSAwOwog
CiAgICAgLy8gRXhlY3V0ZXMgdGhlIGV2ZW50IGxvb3AgZm9yIHRoZSB3b3JrZXIgdGhyZWFkLiBE
ZXJpdmVkIGNsYXNzZXMgY2FuIG92ZXJyaWRlIHRvIHBlcmZvcm0gYWN0aW9ucyBiZWZvcmUvYWZ0
ZXIgZW50ZXJpbmcgdGhlIGV2ZW50IGxvb3AuCiAgICAgdmlydHVhbCB2b2lkIHJ1bkV2ZW50TG9v
cCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQv
U2VydmljZVdvcmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
Y29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAppbmRleCA5ZTZkYzM1NDYwNWJhN2ZiZmFh
MjViYjQ1Zjk0MzAzMWM2NTdiNzQxLi41MTc2MGFhNzk2NzhkMmI3YmE2Zjc3MWM2MjIyMDZiZTAz
ZjVkZTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4
dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcApAQCAtNzIsNyArNzIsNyBAQCBj
bGFzcyBEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSA6IHB1YmxpYyBXb3JrZXJPYmplY3RQ
cm94eSB7CiAvLyBGSVhNRTogVXNlIHZhbGlkIHJ1bnRpbWUgZmxhZ3MKIAogU2VydmljZVdvcmtl
clRocmVhZDo6U2VydmljZVdvcmtlclRocmVhZChjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERh
dGEmIGRhdGEsIFBBTDo6U2Vzc2lvbklELCBTdHJpbmcmJiB1c2VyQWdlbnQsIFdvcmtlckxvYWRl
clByb3h5JiBsb2FkZXJQcm94eSwgV29ya2VyRGVidWdnZXJQcm94eSYgZGVidWdnZXJQcm94eSwg
SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSwgU29ja2V0
UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQotICAgIDogV29ya2VyVGhyZWFkKGRhdGEuc2NyaXB0
VVJMLCAic2VydmljZXdvcmtlcjoiICsgSW5zcGVjdG9yOjpJZGVudGlmaWVyc0ZhY3Rvcnk6OmNy
ZWF0ZUlkZW50aWZpZXIoKSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+aXNPbkxpbmUoKSwgZGF0YS5zY3JpcHQsIGxvYWRlclByb3h5
LCBkZWJ1Z2dlclByb3h5LCBEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCks
IFdvcmtlclRocmVhZFN0YXJ0TW9kZTo6Tm9ybWFsLCBkYXRhLmNvbnRlbnRTZWN1cml0eVBvbGlj
eSwgZmFsc2UsIGRhdGEucmVnaXN0cmF0aW9uLmtleS50b3BPcmlnaW4oKS5zZWN1cml0eU9yaWdp
bigpLmdldCgpLCBNb25vdG9uaWNUaW1lOjpub3coKSwgaWRiQ29ubmVjdGlvblByb3h5LCBzb2Nr
ZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3M6OmNyZWF0ZUFsbEVuYWJsZWQoKSwgZGF0YS5z
ZXNzaW9uSUQpCisgICAgOiBXb3JrZXJUaHJlYWQoZGF0YS5zY3JpcHRVUkwsIGVtcHR5U3RyaW5n
KCksICJzZXJ2aWNld29ya2VyOiIgKyBJbnNwZWN0b3I6OklkZW50aWZpZXJzRmFjdG9yeTo6Y3Jl
YXRlSWRlbnRpZmllcigpLCBXVEZNb3ZlKHVzZXJBZ2VudCksIHBsYXRmb3JtU3RyYXRlZ2llcygp
LT5sb2FkZXJTdHJhdGVneSgpLT5pc09uTGluZSgpLCBkYXRhLnNjcmlwdCwgbG9hZGVyUHJveHks
IGRlYnVnZ2VyUHJveHksIER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpzaGFyZWQoKSwg
V29ya2VyVGhyZWFkU3RhcnRNb2RlOjpOb3JtYWwsIGRhdGEuY29udGVudFNlY3VyaXR5UG9saWN5
LCBmYWxzZSwgZGF0YS5yZWdpc3RyYXRpb24ua2V5LnRvcE9yaWdpbigpLnNlY3VyaXR5T3JpZ2lu
KCkuZ2V0KCksIE1vbm90b25pY1RpbWU6Om5vdygpLCBpZGJDb25uZWN0aW9uUHJveHksIHNvY2tl
dFByb3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFnczo6Y3JlYXRlQWxsRW5hYmxlZCgpLCBkYXRhLnNl
c3Npb25JRCkKICAgICAsIG1fZGF0YShkYXRhLmlzb2xhdGVkQ29weSgpKQogICAgICwgbV93b3Jr
ZXJPYmplY3RQcm94eShEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCkpCiB7
CkBAIC04MSw4ICs4MSw5IEBAIFNlcnZpY2VXb3JrZXJUaHJlYWQ6OlNlcnZpY2VXb3JrZXJUaHJl
YWQoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiBkYXRhLCBQCiAKIFNlcnZpY2VXb3Jr
ZXJUaHJlYWQ6On5TZXJ2aWNlV29ya2VyVGhyZWFkKCkgPSBkZWZhdWx0OwogCi1SZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3Bl
KGNvbnN0IFVSTCYgdXJsLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBjb25zdCBTdHJp
bmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBj
b25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0
eVBvbGljeSwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ks
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdp
biwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQorUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBTZXJ2
aWNlV29ya2VyVGhyZWFkOjpjcmVhdGVXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHVybCwg
UmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBT
dHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5l
LCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1
cml0eVBvbGljeSwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xp
Y3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9y
aWdpbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogeworICAgIFVOVVNFRF9QQVJBTShuYW1l
KTsKICAgICByZXR1cm4gU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUobV9kYXRhLCB1
cmwsIFdURk1vdmUob3JpZ2luKSwgaWRlbnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgKnRo
aXMsIGNvbnRlbnRTZWN1cml0eVBvbGljeSwgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNl
Y3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVPcmlnaW4sIGlkYkNvbm5lY3Rp
b25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpLCBzZXNzaW9uSUQpOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhy
ZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29y
a2VyVGhyZWFkLmgKaW5kZXggMzU4MjIxMWYwYmQ2ZGVmNjA1NGY0MGY2ZDBkNDFhYzkzYjAxY2Q0
MS4uMzQ5MmEzOWZlMGJmYmMwMGVmNmM0OGE3ZTFjZjYyNjBhZDMyNGU5MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVh
ZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VX
b3JrZXJUaHJlYWQuaApAQCAtNjYsNyArNjYsNyBAQCBjbGFzcyBTZXJ2aWNlV29ya2VyVGhyZWFk
IDogcHVibGljIFdvcmtlclRocmVhZCB7CiAgICAgU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YS5zZXJ2aWNlV29ya2VySWRlbnRpZmllcjsg
fQogCiBwcm90ZWN0ZWQ6Ci0gICAgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJH
bG9iYWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmlu
ZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlw
YXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYg
dG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKSBmaW5h
bDsKKyAgICBSZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNv
bnN0IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25z
dCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25s
aW5lLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25J
RCkgZmluYWw7CiAgICAgdm9pZCBydW5FdmVudExvb3AoKSBvdmVycmlkZTsKIAogcHJpdmF0ZToK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGUyNWY2ZmRjNjQ5NDgyZmY1YTRkNGI5
MjcyMjEwZjliOWVlMmE5NjIuLmQwZWUxMjZmZjAxYTM1ZDMyYzA1YjFmOTM1NDJlMGQ0MDA2ODRl
N2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE4
LTA4LTIwICBZdXN1a2UgU3V6dWtpICA8eXVzdWtlc3V6dWtpQHNsb3dzdGFydC5vcmc+CisKKyAg
ICAgICAgU3VwcG9ydCAibmFtZSIgb3B0aW9uIGZvciBkZWRpY2F0ZWQgd29ya2VycworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Nzc5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvd29ya2Vycy9uYW1lLXByb3BlcnR5LWV4cGVjdGVkLnR4dDoKKwogMjAxOC0wOC0yMCAg
Um9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFRocm93IGFuIGV4Y2VwdGlv
biBpZiB3aW5kb3cub3BlbigpIGdldHMgcGFzc2VkIGEgVVJMIHRoYXQgY2Fubm90IGJlIHBhcnNl
ZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93b3JrZXJzL25hbWUtcHJvcGVydHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL25hbWUtcHJvcGVydHktZXhwZWN0ZWQu
dHh0CmluZGV4IDA1YTUxZjgyMTZkM2ZjM2Y5ZDI2MTI3N2QxNzkxYWI4NTI4OTViZTIuLmJjNDEx
YTg4ODA4M2U4YzQ0MjA2MWRjOTJkZmE0ZjY0Y2ZkZDhmMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd29ya2Vycy9uYW1lLXByb3BlcnR5
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dvcmtlcnMvbmFtZS1wcm9wZXJ0eS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBA
CiBDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjA6IFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBTaGFyZWRXb3JrZXIKIAogRkFJTCBUZXN0IHRoZSBuYW1lIHByb3BlcnR5IG9mIHNo
YXJlZCBhbmQgZGVkaWNhdGVkIHdvcmtlcnMgdmlhIHRoZSBuYW1lIGNvbnN0cnVjdG9yIG9wdGlv
biBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogU2hhcmVkV29ya2VyCi1QQVNT
IERlY2xhcmluZyBuYW1lIGFzIGFuIGFjY2lkZW50YWwgZ2xvYmFsIG11c3Qgbm90IGNhdXNlIGEg
aGFybmVzcyBlcnJvciBmb3IgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgCi1GQUlMIG5hbWUg
cHJvcGVydHkgdmFsdWUgZm9yIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIGFzc2VydF90cnVl
OiBwcm9wZXJ0eSBleGlzdHMgb24gdGhlIGdsb2JhbCBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
UEFTUyBuYW1lIHByb3BlcnR5IHZhbHVlIGZvciBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSAK
IFBBU1MgbmFtZSBwcm9wZXJ0eSBpcyByZXBsYWNlYWJsZSBmb3IgRGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGUgCitQQVNTIERlY2xhcmluZyBuYW1lIGFzIGFuIGFjY2lkZW50YWwgZ2xvYmFsIG11
c3Qgbm90IGNhdXNlIGEgaGFybmVzcyBlcnJvciBmb3IgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGUgCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347618</attachid>
            <date>2018-08-21 00:25:39 -0700</date>
            <delta_ts>2018-08-21 11:22:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188779-20180821162537.patch</filename>
            <type>text/plain</type>
            <size>43211</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDMzZWQwYTA4OTFhZWM1
ZmM5MmE2M2Y4ODUzYWQ4MjFlNGIyOGI0Mi4uNGUzYTIzMDc5MzYwNzdkOTdiNzAxOGY1NmVjYTRj
Y2VlYmZhYjgzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDE4LTA4LTIxICBZdXN1
a2UgU3V6dWtpICA8eXVzdWtlc3V6dWtpQHNsb3dzdGFydC5vcmc+CisKKyAgICAgICAgU3VwcG9y
dCAibmFtZSIgb3B0aW9uIGZvciBkZWRpY2F0ZWQgd29ya2VycworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Nzc5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGBuZXcgV29ya2Vy
KHVybCwgeyBuYW1lOiAiV29ya2VyIE5hbWUiIH0pYCBvcHRpb24gc3VwcG9ydFsxXS4KKyAgICAg
ICAgVGhpcyBuYW1lIGNhbiBiZSBhY2Nlc3NpYmxlIGZyb20gYHNlbGYubmFtZWAgb2YgRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUuCisgICAgICAgIEl0IGlzIHVzZWZ1bCBmb3IgZGVidWdnaW5n
IGRlZGljYXRlZCB3b3JrZXJzIGlmIHRoZSBpbnNwZWN0b3IgY2FuIHNob3cgdGhlCisgICAgICAg
IG5hbWVzIG9mIHRoZSB3b3JrZXJzLiBUaGlzIGVuaGFuY2VtZW50IGlzIHRyYWNrZWQgYnkgWzJd
LgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9naXRodWIuY29tL3doYXR3Zy9odG1sL2lzc3Vlcy8y
NDc3CisgICAgICAgIFsyXTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2NDY3OAorCisgICAgICAgICogd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSk6CisgICAgICAgIEhvbGQgYG5hbWVgIG1lbWJlci4KKworICAg
ICAgICAqIHdvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiB3
b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgQWRkIGBuYW1l
YCBhdHRyaWJ1dGUuCisKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OkRlZGljYXRlZFdv
cmtlclRocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OmNy
ZWF0ZVdvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtl
clRocmVhZC5oOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Oldvcmtlcjo6V29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlcjo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6Oldvcmtlcjo6bm90aWZ5RmluaXNoZWQpOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuaWRsOgorICAgICAgICBB
ZGQgV29ya2VyT3B0aW9ucyBmb3IgZGVkaWNhdGVkIHdvcmtlciBjcmVhdGlvbi4KKworICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGVQcm94eS5oOgorICAgICAgICAqIHdvcmtlcnMv
V29ya2VyTWVzc2FnaW5nUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyTWVzc2Fn
aW5nUHJveHk6OnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyTWVzc2FnaW5nUHJveHkuaDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclRocmVhZC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6V29ya2VyVGhyZWFk
U3RhcnR1cERhdGEpOgorICAgICAgICBJc29sYXRlIGNvcHkgdGhlIGdpdmVuIGBuYW1lYCB0byBw
YXNzIHRoZSB3b3JrZXIgdGhyZWFkLgorCisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6
OldvcmtlclRocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRo
cmVhZCk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJUaHJlYWQuaDoKKyAgICAgICAgKiB3b3Jr
ZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJUaHJlYWQ6OlNlcnZpY2VXb3JrZXJUaHJlYWQpOgorICAgICAg
ICAoV2ViQ29yZTo6U2VydmljZVdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2NvcGUp
OgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQu
aDoKKwogMjAxOC0wOC0yMCAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAg
ICAgICAgV2ViIEluc3BlY3RvcjogYWxsb3cgYnJlYWtwb2ludHMgdG8gYmUgc2V0IGZvciBzcGVj
aWZpYyBldmVudCBsaXN0ZW5lcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9E
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggMjFkZGVkYjNkMDNhNWNkMTUyMDQ4
NzQyNDU0MDE2ZmM4ZTgyMDJlMS4uZGI3ZDc3NzBjNDQ1YzhkZmE2YmYwMjI1Y2I4MDk0Y2QwMDFl
MGI4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZS5jcHAKQEAgLTQxLDE2ICs0MSwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLVJlZjxEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZT4gRGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGU6OmNyZWF0ZShjb25zdCBVUkwmIHVybCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9y
aWdpbiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwg
Ym9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiB0aHJlYWQsIGNvbnN0IENvbnRl
bnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVz
cG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBv
bGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1l
T3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5LCBT
b2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkK
K1JlZjxEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZT4gRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGU6OmNyZWF0ZShjb25zdCBVUkwmIHVybCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQmIHRocmVh
ZCwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25u
ZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlciwgUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklEKQogewotICAgIGF1dG8gY29udGV4dCA9IGFkb3B0UmVmKCpuZXcgRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUodXJsLCBXVEZNb3ZlKG9yaWdpbiksIGlkZW50aWZpZXIsIHVz
ZXJBZ2VudCwgaXNPbmxpbmUsIHRocmVhZCwgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNl
Y3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Q
cm94eSwgc29ja2V0UHJvdmlkZXIsIHNlc3Npb25JRCkpOworICAgIGF1dG8gY29udGV4dCA9IGFk
b3B0UmVmKCpuZXcgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUodXJsLCBXVEZNb3ZlKG9yaWdp
biksIG5hbWUsIGlkZW50aWZpZXIsIHVzZXJBZ2VudCwgaXNPbmxpbmUsIHRocmVhZCwgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiks
IHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIsIHNlc3Npb25JRCkp
OwogICAgIGlmICghc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KQog
ICAgICAgICBjb250ZXh0LT5hcHBseUNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVy
cyhjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMpOwogICAgIHJldHVybiBjb250
ZXh0OwogfQogCi1EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6RGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNv
bnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNP
bmxpbmUsIERlZGljYXRlZFdvcmtlclRocmVhZCYgdGhyZWFkLCBib29sIHNob3VsZEJ5cGFzc01h
aW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9y
aWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Q
cm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHVybCwgUmVmPFNlY3VyaXR5T3JpZ2lu
PiYmIG9yaWdpbiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRpY2F0ZWRXb3JrZXJU
aHJlYWQmIHRocmVhZCwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwg
U29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQp
CiAgICAgOiBXb3JrZXJHbG9iYWxTY29wZSh1cmwsIFdURk1vdmUob3JpZ2luKSwgaWRlbnRpZmll
ciwgdXNlckFnZW50LCBpc09ubGluZSwgdGhyZWFkLCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250
ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUodG9wT3JpZ2luKSwgdGltZU9yaWdpbiwgY29ubmVj
dGlvblByb3h5LCBzb2NrZXRQcm92aWRlciwgc2Vzc2lvbklEKQorICAgICwgbV9uYW1lKG5hbWUp
CiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2Vy
R2xvYmFsU2NvcGUuaAppbmRleCA1MjFiYTQwOGExMmU3ZmRiZWEzZmMzMmYwYWY2ZWUwYzM1MDIw
MDhhLi41NWE5OWU1NzY0NGM1ZDc4NDgzNDM1NDZiZTAwN2I4ZjMwN2M1OTYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oCkBA
IC00OCw5ICs0OCwxMSBAQCBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7CiAKIGNsYXNzIERl
ZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIGZpbmFsIDogcHVibGljIFdvcmtlckdsb2JhbFNjb3Bl
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlPiBj
cmVhdGUoY29uc3QgVVJMJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBjb25zdCBTdHJpbmcmIGlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBEZWRpY2F0
ZWRXb3JrZXJUaHJlYWQmLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRl
cnMmLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVm
PFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBJ
REJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKiwgUEFMOjpTZXNz
aW9uSUQpOworICAgIHN0YXRpYyBSZWY8RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0
ZShjb25zdCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgbmFtZSwg
Y29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBp
c09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2Vj
dXJpdHlQb2xpY3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1Rp
bWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92
aWRlciosIFBBTDo6U2Vzc2lvbklEKTsKICAgICB2aXJ0dWFsIH5EZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZSgpOwogCisgICAgY29uc3QgU3RyaW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9u
YW1lOyB9CisKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBwb3N0TWVzc2FnZShKU0M6OkV4ZWNTdGF0
ZSYsIEpTQzo6SlNWYWx1ZSBtZXNzYWdlLCBWZWN0b3I8SlNDOjpTdHJvbmc8SlNDOjpKU09iamVj
dD4+JiYpOwogCiAgICAgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiB0aHJlYWQoKTsKQEAgLTU4LDEx
ICs2MCwxMyBAQCBjbGFzcyBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSBmaW5hbCA6IHB1Ymxp
YyBXb3JrZXJHbG9iYWxTY29wZSB7CiBwcml2YXRlOgogICAgIHVzaW5nIEJhc2UgPSBXb3JrZXJH
bG9iYWxTY29wZTsKIAotICAgIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYs
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBT
dHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2VyVGhyZWFkJiwg
Ym9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFJlZjxTZWN1
cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xp
ZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIFBBTDo6U2Vzc2lvbklE
KTsKKyAgICBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJp
dHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVy
LCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgRGVkaWNhdGVkV29ya2Vy
VGhyZWFkJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ks
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdp
biwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIFBBTDo6
U2Vzc2lvbklEKTsKIAogICAgIGJvb2wgaXNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBFeGNlcHRpb25Pcjx2b2lkPiBpbXBvcnRT
Y3JpcHRzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB1cmxzKSBmaW5hbDsKICAgICBFdmVudFRhcmdl
dEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsOworCisgICAgU3Ry
aW5nIG1fbmFtZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXgg
M2JhZWRmMDU5ZWEyNDc5YTA4OTAzNTFiMjkwYjFmMTllNTgwNDQ5ZS4uY2VhNjliZmFmYTE3OGQ4
ZjlmNTBjZWVkMDMzNjQzYzMwOWJjNjFhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTM3LDYgKzM3LDggQEAK
ICAgICBJc0ltbXV0YWJsZVByb3RvdHlwZUV4b3RpY09iamVjdCwKICAgICBJc0ltbXV0YWJsZVBy
b3RvdHlwZUV4b3RpY09iamVjdE9uUHJvdG90eXBlLAogXSBpbnRlcmZhY2UgRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CisgICAgW1JlcGxhY2VhYmxlXSBy
ZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CisKICAgICBbQ2FsbFdpdGg9U2NyaXB0
U3RhdGUsIE1heVRocm93RXhjZXB0aW9uXSB2b2lkIHBvc3RNZXNzYWdlKGFueSBtZXNzYWdlLCBv
cHRpb25hbCBzZXF1ZW5jZTxvYmplY3Q+IHRyYW5zZmVyID0gW10pOwogCiAgICAgdm9pZCBjbG9z
ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJU
aHJlYWQuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJUaHJlYWQu
Y3BwCmluZGV4IGRmYzY3NzY1MDljMjU1NmQyOWQwMzM1ZmMxMjg4OGZjYjgzZmZhMWIuLjczYTNk
YTRiYWFhZTQ5ODFmN2RiNzViM2ExNTk4ZjhhOGQ0ZGJlZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlclRocmVhZC5jcHAKQEAgLTM4LDE3ICszOCwxNyBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLURlZGljYXRlZFdvcmtlclRocmVhZDo6RGVkaWNh
dGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNv
dXJjZUNvZGUsIFdvcmtlckxvYWRlclByb3h5JiB3b3JrZXJMb2FkZXJQcm94eSwgV29ya2VyRGVi
dWdnZXJQcm94eSYgd29ya2VyRGVidWdnZXJQcm94eSwgV29ya2VyT2JqZWN0UHJveHkmIHdvcmtl
ck9iamVjdFByb3h5LCBXb3JrZXJUaHJlYWRTdGFydE1vZGUgc3RhcnRNb2RlLCBjb25zdCBDb250
ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwg
U29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1l
RmxhZ3MsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKLSAgICA6IFdvcmtlclRocmVhZCh1cmws
IGlkZW50aWZpZXIsIHVzZXJBZ2VudCwgaXNPbmxpbmUsIHNvdXJjZUNvZGUsIHdvcmtlckxvYWRl
clByb3h5LCB3b3JrZXJEZWJ1Z2dlclByb3h5LCB3b3JrZXJPYmplY3RQcm94eSwgc3RhcnRNb2Rl
LCBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIHNob3VsZEJ5cGFzc01haW5X
b3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgdG9wT3JpZ2luLCB0aW1lT3JpZ2luLCBjb25uZWN0
aW9uUHJveHksIHNvY2tldFByb3ZpZGVyLCBydW50aW1lRmxhZ3MsIHNlc3Npb25JRCkKK0RlZGlj
YXRlZFdvcmtlclRocmVhZDo6RGVkaWNhdGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYgdXJsLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5n
JiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29y
a2VyTG9hZGVyUHJveHkmIHdvcmtlckxvYWRlclByb3h5LCBXb3JrZXJEZWJ1Z2dlclByb3h5JiB3
b3JrZXJEZWJ1Z2dlclByb3h5LCBXb3JrZXJPYmplY3RQcm94eSYgd29ya2VyT2JqZWN0UHJveHks
IFdvcmtlclRocmVhZFN0YXJ0TW9kZSBzdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJz
LCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3Qg
U2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBJREJD
bGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRl
ciogc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGltZUZsYWdzIHJ1bnRpbWVGbGFncywgUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklEKQorICAgIDogV29ya2VyVGhyZWFkKHVybCwgbmFtZSwgaWRlbnRp
ZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgc291cmNlQ29kZSwgd29ya2VyTG9hZGVyUHJveHks
IHdvcmtlckRlYnVnZ2VyUHJveHksIHdvcmtlck9iamVjdFByb3h5LCBzdGFydE1vZGUsIGNvbnRl
bnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCB0b3BPcmlnaW4sIHRpbWVPcmlnaW4sIGNvbm5lY3Rpb25Qcm94
eSwgc29ja2V0UHJvdmlkZXIsIHJ1bnRpbWVGbGFncywgc2Vzc2lvbklEKQogICAgICwgbV93b3Jr
ZXJPYmplY3RQcm94eSh3b3JrZXJPYmplY3RQcm94eSkKIHsKIH0KIAogRGVkaWNhdGVkV29ya2Vy
VGhyZWFkOjp+RGVkaWNhdGVkV29ya2VyVGhyZWFkKCkgPSBkZWZhdWx0OwogCi1SZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IERlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2Nv
cGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNvbnN0IFN0
cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUs
IGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3Vy
aXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRl
bnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgTW9ub3Rv
bmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitSZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IERlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2Nv
cGUoY29uc3QgVVJMJiB1cmwsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIGNvbnN0IFN0
cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJB
Z2VudCwgYm9vbCBpc09ubGluZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VI
ZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+
JiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCkKIHsKLSAgICByZXR1cm4gRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmNyZWF0
ZSh1cmwsIFdURk1vdmUob3JpZ2luKSwgaWRlbnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwg
KnRoaXMsIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNz
TWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVP
cmlnaW4sIGlkYkNvbm5lY3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpLCBzZXNzaW9uSUQp
OworICAgIHJldHVybiBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKHVybCwgV1RG
TW92ZShvcmlnaW4pLCBuYW1lLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCAqdGhp
cywgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBzaG91bGRCeXBhc3NNYWlu
V29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUodG9wT3JpZ2luKSwgdGltZU9yaWdp
biwgaWRiQ29ubmVjdGlvblByb3h5KCksIHNvY2tldFByb3ZpZGVyKCksIHNlc3Npb25JRCk7CiB9
CiAKIHZvaWQgRGVkaWNhdGVkV29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJUaHJlYWQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmgKaW5kZXggZDQ2ODc5Yjcx
MzhiOGUyNTQ1ODNhNTM3YmIwNGFjYmVjMzM1ZGU2MC4uZjFjOTYyNGIxOGFjMTg5MzI5ODg0NjMz
OTYxNjM1MmNhYzBjN2RkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRp
Y2F0ZWRXb3JrZXJUaHJlYWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRl
ZFdvcmtlclRocmVhZC5oCkBAIC00OSwxMSArNDksMTEgQEAgY2xhc3MgRGVkaWNhdGVkV29ya2Vy
VGhyZWFkIDogcHVibGljIFdvcmtlclRocmVhZCB7CiAgICAgV29ya2VyT2JqZWN0UHJveHkmIHdv
cmtlck9iamVjdFByb3h5KCkgY29uc3QgeyByZXR1cm4gbV93b3JrZXJPYmplY3RQcm94eTsgfQog
CiBwcm90ZWN0ZWQ6Ci0gICAgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJHbG9i
YWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYg
aWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0
IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNz
TWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9w
T3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKSBvdmVycmlk
ZTsKKyAgICBSZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNv
bnN0IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25z
dCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25s
aW5lLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25J
RCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBydW5FdmVudExvb3AoKSBvdmVycmlkZTsKIAogcHJpdmF0
ZToKLSAgICBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBp
ZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYsIFdvcmtlckRlYnVnZ2VyUHJv
eHkmLCBXb3JrZXJPYmplY3RQcm94eSYsIFdvcmtlclRocmVhZFN0YXJ0TW9kZSwgY29uc3QgQ29u
dGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWlu
V29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmln
aW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJv
eHkqLCBTb2NrZXRQcm92aWRlciosIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCk7
CisgICAgRGVkaWNhdGVkV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9v
bCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYs
IFdvcmtlckRlYnVnZ2VyUHJveHkmLCBXb3JrZXJPYmplY3RQcm94eSYsIFdvcmtlclRocmVhZFN0
YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiwgYm9v
bCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgSURCQ2xpZW50
OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciosIEpTQzo6UnVudGltZUZsYWdz
LCBQQUw6OlNlc3Npb25JRCk7CiAKICAgICBXb3JrZXJPYmplY3RQcm94eSYgbV93b3JrZXJPYmpl
Y3RQcm94eTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKaW5kZXggNDA5ZWUxYWNjZDk3
MGIyZGQ5NjE3NjllOWY2Y2ZhOWY5MDRjYjk0OC4uNDk0NzRjNzA0MmQzZjBmOWE0YmE2ZmUzNjZh
MzBhMzgzODQwYmQ4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmNwcApAQCAtNTcsOCArNTcs
OSBAQCB2b2lkIFdvcmtlcjo6bmV0d29ya1N0YXRlQ2hhbmdlZChib29sIGlzT25MaW5lKQogICAg
ICAgICB3b3JrZXItPm5vdGlmeU5ldHdvcmtTdGF0ZUNoYW5nZShpc09uTGluZSk7CiB9CiAKLWlu
bGluZSBXb3JrZXI6OldvcmtlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBKU0M6
OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MpCitpbmxpbmUgV29ya2VyOjpXb3JrZXIoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdz
LCBjb25zdCBPcHRpb25zJiBvcHRpb25zKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZjb250ZXh0
KQorICAgICwgbV9uYW1lKG9wdGlvbnMubmFtZSkKICAgICAsIG1faWRlbnRpZmllcigid29ya2Vy
OiIgKyBJbnNwZWN0b3I6OklkZW50aWZpZXJzRmFjdG9yeTo6Y3JlYXRlSWRlbnRpZmllcigpKQog
ICAgICwgbV9jb250ZXh0UHJveHkoV29ya2VyR2xvYmFsU2NvcGVQcm94eTo6Y3JlYXRlKCp0aGlz
KSkKICAgICAsIG1fcnVudGltZUZsYWdzKHJ1bnRpbWVGbGFncykKQEAgLTczLDE0ICs3NCwxNCBA
QCBpbmxpbmUgV29ya2VyOjpXb3JrZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwg
SlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZQogICAgIEFTU0VSVF9VTlVTRUQoYWRkUmVzdWx0LCBh
ZGRSZXN1bHQuaXNOZXdFbnRyeSk7CiB9CiAKLUV4Y2VwdGlvbk9yPFJlZjxXb3JrZXI+PiBXb3Jr
ZXI6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBKU0M6OlJ1bnRpbWVG
bGFncyBydW50aW1lRmxhZ3MsIGNvbnN0IFN0cmluZyYgdXJsKQorRXhjZXB0aW9uT3I8UmVmPFdv
cmtlcj4+IFdvcmtlcjo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEpT
Qzo6UnVudGltZUZsYWdzIHJ1bnRpbWVGbGFncywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IE9w
dGlvbnMmIG9wdGlvbnMpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIAogICAgIC8v
IFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IG5lc3RlZCB3b3JrZXJzLCBzbyB3b3JrZXJzIGNh
biBvbmx5IGJlIGNyZWF0ZWQgZnJvbSBkb2N1bWVudHMuCiAgICAgQVNTRVJUX1dJVEhfU0VDVVJJ
VFlfSU1QTElDQVRJT04oY29udGV4dC5pc0RvY3VtZW50KCkpOwogCi0gICAgYXV0byB3b3JrZXIg
PSBhZG9wdFJlZigqbmV3IFdvcmtlcihjb250ZXh0LCBydW50aW1lRmxhZ3MpKTsKKyAgICBhdXRv
IHdvcmtlciA9IGFkb3B0UmVmKCpuZXcgV29ya2VyKGNvbnRleHQsIHJ1bnRpbWVGbGFncywgb3B0
aW9ucykpOwogCiAgICAgd29ya2VyLT5zdXNwZW5kSWZOZWVkZWQoKTsKIApAQCAtMTAzLDEyICsx
MDQsMTIgQEAgRXhjZXB0aW9uT3I8UmVmPFdvcmtlcj4+IFdvcmtlcjo6Y3JlYXRlKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEpTQzo6UnUKICAgICBSZXNvdXJjZVJlcXVlc3QgcmVx
dWVzdCB7IHNjcmlwdFVSTC5yZWxlYXNlUmV0dXJuVmFsdWUoKSB9OwogICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9ySWRlbnRpZmllcih3b3JrZXItPm1faWRlbnRpZmllcik7CiAKLSAgICBGZXRjaE9w
dGlvbnMgb3B0aW9uczsKLSAgICBvcHRpb25zLm1vZGUgPSBGZXRjaE9wdGlvbnM6Ok1vZGU6OlNh
bWVPcmlnaW47Ci0gICAgb3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6Q2FjaGU6OkRlZmF1
bHQ7Ci0gICAgb3B0aW9ucy5yZWRpcmVjdCA9IEZldGNoT3B0aW9uczo6UmVkaXJlY3Q6OkZvbGxv
dzsKLSAgICBvcHRpb25zLmRlc3RpbmF0aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6
V29ya2VyOwotICAgIHdvcmtlci0+bV9zY3JpcHRMb2FkZXItPmxvYWRBc3luY2hyb25vdXNseShj
b250ZXh0LCBXVEZNb3ZlKHJlcXVlc3QpLCBXVEZNb3ZlKG9wdGlvbnMpLCBjb250ZW50U2VjdXJp
dHlQb2xpY3lFbmZvcmNlbWVudCwgU2VydmljZVdvcmtlcnNNb2RlOjpBbGwsIHdvcmtlcik7Cisg
ICAgRmV0Y2hPcHRpb25zIGZldGNoT3B0aW9uczsKKyAgICBmZXRjaE9wdGlvbnMubW9kZSA9IEZl
dGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKKyAgICBmZXRjaE9wdGlvbnMuY2FjaGUgPSBG
ZXRjaE9wdGlvbnM6OkNhY2hlOjpEZWZhdWx0OworICAgIGZldGNoT3B0aW9ucy5yZWRpcmVjdCA9
IEZldGNoT3B0aW9uczo6UmVkaXJlY3Q6OkZvbGxvdzsKKyAgICBmZXRjaE9wdGlvbnMuZGVzdGlu
YXRpb24gPSBGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpXb3JrZXI7CisgICAgd29ya2VyLT5t
X3NjcmlwdExvYWRlci0+bG9hZEFzeW5jaHJvbm91c2x5KGNvbnRleHQsIFdURk1vdmUocmVxdWVz
dCksIFdURk1vdmUoZmV0Y2hPcHRpb25zKSwgY29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1l
bnQsIFNlcnZpY2VXb3JrZXJzTW9kZTo6QWxsLCB3b3JrZXIpOwogICAgIHJldHVybiBXVEZNb3Zl
KHdvcmtlcik7CiB9CiAKQEAgLTE4NSw3ICsxODYsNyBAQCB2b2lkIFdvcmtlcjo6bm90aWZ5Rmlu
aXNoZWQoKQogICAgIGVsc2UgewogICAgICAgICBib29sIGlzT25saW5lID0gcGxhdGZvcm1TdHJh
dGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmlzT25MaW5lKCk7CiAgICAgICAgIGNvbnN0IENv
bnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5
UmVzcG9uc2VIZWFkZXJzID0gbV9jb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMg
PyBtX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycy52YWx1ZSgpIDogc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+cmVzcG9uc2VIZWFk
ZXJzKCk7Ci0gICAgICAgIG1fY29udGV4dFByb3h5LnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUobV9z
Y3JpcHRMb2FkZXItPnVybCgpLCBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnVzZXJBZ2VudCht
X3NjcmlwdExvYWRlci0+dXJsKCkpLCBpc09ubGluZSwgbV9zY3JpcHRMb2FkZXItPnNjcmlwdCgp
LCBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIG1fc2hvdWxkQnlwYXNzTWFp
bldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBtX3dvcmtlckNyZWF0aW9uVGltZSwgbV9ydW50
aW1lRmxhZ3MsIHNlc3Npb25JRCk7CisgICAgICAgIG1fY29udGV4dFByb3h5LnN0YXJ0V29ya2Vy
R2xvYmFsU2NvcGUobV9zY3JpcHRMb2FkZXItPnVybCgpLCBtX25hbWUsIHNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+dXNlckFnZW50KG1fc2NyaXB0TG9hZGVyLT51cmwoKSksIGlzT25saW5lLCBt
X3NjcmlwdExvYWRlci0+c2NyaXB0KCksIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVh
ZGVycywgbV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIG1fd29y
a2VyQ3JlYXRpb25UaW1lLCBtX3J1bnRpbWVGbGFncywgc2Vzc2lvbklEKTsKICAgICAgICAgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCgqc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLCBtX3NjcmlwdExvYWRlci0+aWRlbnRpZmllcigpLCBtX3NjcmlwdExvYWRlci0+c2Ny
aXB0KCkpOwogICAgIH0KICAgICBtX3NjcmlwdExvYWRlciA9IG51bGxwdHI7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXIuaAppbmRleCBjMjI4ZGVhNDMzNjYyNmFkOGZkYzBiNWEwNWUyMDVlMTEwMDgyYmVj
Li4yZGNjZjIwNjJmMmNkZjc0MGMwZDM0MjhhMWVjZmJhMmViNWIzYmRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyLmgKQEAgLTUwLDcgKzUwLDEwIEBAIGNsYXNzIFdvcmtlclNjcmlwdExvYWRlcjsK
IAogY2xhc3MgV29ya2VyIGZpbmFsIDogcHVibGljIEFic3RyYWN0V29ya2VyLCBwdWJsaWMgQWN0
aXZlRE9NT2JqZWN0LCBwcml2YXRlIFdvcmtlclNjcmlwdExvYWRlckNsaWVudCB7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxXb3JrZXI+PiBjcmVhdGUoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYsIEpTQzo6UnVudGltZUZsYWdzLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAg
c3RydWN0IE9wdGlvbnMgeworICAgICAgICBTdHJpbmcgbmFtZTsKKyAgICB9OworICAgIHN0YXRp
YyBFeGNlcHRpb25PcjxSZWY8V29ya2VyPj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
LCBKU0M6OlJ1bnRpbWVGbGFncywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IE9wdGlvbnMmKTsK
ICAgICB2aXJ0dWFsIH5Xb3JrZXIoKTsKIAogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHBvc3RNZXNz
YWdlKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1ZhbHVlIG1lc3NhZ2UsIFZlY3RvcjxKU0M6OlN0
cm9uZzxKU0M6OkpTT2JqZWN0Pj4mJik7CkBAIC02NCw3ICs2Nyw3IEBAIGNsYXNzIFdvcmtlciBm
aW5hbCA6IHB1YmxpYyBBYnN0cmFjdFdvcmtlciwgcHVibGljIEFjdGl2ZURPTU9iamVjdCwgcHJp
dmF0ZSBXb3JrCiAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIEFjdGl2ZURPTU9iamVjdDo6c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgV29ya2VyKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmLCBKU0M6OlJ1bnRpbWVGbGFncyk7CisgICAgZXhwbGljaXQgV29ya2Vy
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBKU0M6OlJ1bnRpbWVGbGFncywgY29uc3QgT3B0aW9u
cyYpOwogCiAgICAgRXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBXb3JrZXJFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KIApA
QCAtODAsNiArODMsNyBAQCBjbGFzcyBXb3JrZXIgZmluYWwgOiBwdWJsaWMgQWJzdHJhY3RXb3Jr
ZXIsIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHByaXZhdGUgV29yawogICAgIHN0YXRpYyB2b2lk
IG5ldHdvcmtTdGF0ZUNoYW5nZWQoYm9vbCBpc09uTGluZSk7CiAKICAgICBSZWZQdHI8V29ya2Vy
U2NyaXB0TG9hZGVyPiBtX3NjcmlwdExvYWRlcjsKKyAgICBTdHJpbmcgbV9uYW1lOwogICAgIFN0
cmluZyBtX2lkZW50aWZpZXI7CiAgICAgV29ya2VyR2xvYmFsU2NvcGVQcm94eSYgbV9jb250ZXh0
UHJveHk7IC8vIFRoZSBwcm94eSBvdXRsaXZlcyB0aGUgd29ya2VyIHRvIHBlcmZvcm0gdGhyZWFk
IHNodXRkb3duLgogICAgIHN0ZDo6b3B0aW9uYWw8Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzPiBtX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVyczsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyLmlkbAppbmRleCA2YzUxNzc4MzU3NDA4NzAyNmZmYTZkM2FjMTYxOWZm
YzU1YTRmYzE1Li45NTMxNTAzODk1OThmMTM1MDNiNjVjZWQ4ZDRlOTJjZTJkY2E2M2YxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXIuaWRsCkBAIC0yNiw3ICsyNiw3IEBACiAKIFsKICAgICBBY3Rp
dmVET01PYmplY3QsCi0gICAgQ29uc3RydWN0b3IoVVNWU3RyaW5nIHNjcmlwdFVybCksCisgICAg
Q29uc3RydWN0b3IoVVNWU3RyaW5nIHNjcmlwdFVybCwgb3B0aW9uYWwgV29ya2VyT3B0aW9ucyBv
cHRpb25zKSwKICAgICBDb25zdHJ1Y3RvckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
UnVudGltZUZsYWdzLAogICAgIENvbnN0cnVjdG9yTWF5VGhyb3dFeGNlcHRpb24KIF0gaW50ZXJm
YWNlIFdvcmtlciA6IEV2ZW50VGFyZ2V0IHsKQEAgLTM2LDQgKzM2LDggQEAKICAgICBhdHRyaWJ1
dGUgRXZlbnRIYW5kbGVyIG9ubWVzc2FnZTsKIH07CiAKK2RpY3Rpb25hcnkgV29ya2VyT3B0aW9u
cyB7CisgICAgRE9NU3RyaW5nIG5hbWUgPSAiIjsKK307CisKIFdvcmtlciBpbXBsZW1lbnRzIEFi
c3RyYWN0V29ya2VyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJH
bG9iYWxTY29wZVByb3h5LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlUHJveHkuaAppbmRleCA0Nzk0M2ZmNWI5N2IxMDhmOWU2YjFkMzYyYWZmNTVjNzljNjQzYzY5
Li4zNmJkMDA3MDdkMGE2OGRiMzA3NjI3MmJhNjVmMzBhM2E5MjdmMWU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlUHJveHkuaApAQCAtNTAsNyArNTAs
NyBAQCBjbGFzcyBXb3JrZXJHbG9iYWxTY29wZVByb3h5IHsKIHB1YmxpYzoKICAgICBzdGF0aWMg
V29ya2VyR2xvYmFsU2NvcGVQcm94eSYgY3JlYXRlKFdvcmtlciYpOwogCi0gICAgdmlydHVhbCB2
b2lkIHN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0
cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUs
IGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBNb25vdG9uaWNUaW1lIHRpbWVP
cmlnaW4sIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCkgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBzdGFydFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBj
b25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9s
aWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNl
c3Npb25JRCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCB0ZXJtaW5hdGVXb3JrZXJHbG9iYWxTY29w
ZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcG9zdE1lc3NhZ2VUb1dvcmtlckdsb2JhbFNjb3Bl
KE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzJiYpID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgaGFzUGVu
ZGluZ0FjdGl2aXR5KCkgY29uc3QgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlck1lc3NhZ2luZ1Byb3h5LmNwcAppbmRleCBmMzY2NDYyZDM5MzYyMjUyMjM3OWI3MGRmYWJi
ZjRmYjg1N2RiMjU5Li5hNzVjMDE1NmM1OWUzOGRkOTk5ZDZjZWMxZGRlZWRlMjNiZTE4N2IzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNwcApA
QCAtNzIsNyArNzIsNyBAQCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6fldvcmtlck1lc3NhZ2luZ1By
b3h5KCkKICAgICAgICAgfHwgKGlzPFdvcmtlckdsb2JhbFNjb3BlPigqbV9zY3JpcHRFeGVjdXRp
b25Db250ZXh0KSAmJiBkb3duY2FzdDxXb3JrZXJHbG9iYWxTY29wZT4oKm1fc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCkudGhyZWFkKCkudGhyZWFkKCkgPT0gJlRocmVhZDo6Y3VycmVudCgpKSk7CiB9
CiAKLXZvaWQgV29ya2VyTWVzc2FnaW5nUHJveHk6OnN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29u
c3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5l
LCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29s
IHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgTW9ub3RvbmljVGlt
ZSB0aW1lT3JpZ2luLCBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MsIFBBTDo6U2Vzc2lv
bklEIHNlc3Npb25JRCkKK3ZvaWQgV29ya2VyTWVzc2FnaW5nUHJveHk6OnN0YXJ0V29ya2VyR2xv
YmFsU2NvcGUoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3Qg
U3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29k
ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzJiBjb250ZW50U2Vj
dXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGlt
ZUZsYWdzIHJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogewogICAgIC8v
IEZJWE1FOiBUaGlzIG5lZWQgdG8gYmUgcmV2aXNpdGVkIHdoZW4gd2Ugc3VwcG9ydCBuZXN0ZWQg
d29ya2VyIG9uZSBkYXkKICAgICBBU1NFUlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KTsKQEAg
LTg4LDcgKzg4LDcgQEAgdm9pZCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3JrZXJHbG9i
YWxTY29wZShjb25zdCBVUkwmIHNjcmlwdFVSTCwgY29uc3QgU3QKIAogICAgIFNvY2tldFByb3Zp
ZGVyKiBzb2NrZXRQcm92aWRlciA9IGRvY3VtZW50LnNvY2tldFByb3ZpZGVyKCk7CiAKLSAgICBh
dXRvIHRocmVhZCA9IERlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlKHNjcmlwdFVSTCwgaWRl
bnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgc291cmNlQ29kZSwgKnRoaXMsICp0aGlzLCAq
dGhpcywgc3RhcnRNb2RlLCBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgZG9jdW1lbnQudG9wT3Jp
Z2luKCksIHRpbWVPcmlnaW4sIHByb3h5LCBzb2NrZXRQcm92aWRlciwgcnVudGltZUZsYWdzLCBz
ZXNzaW9uSUQpOworICAgIGF1dG8gdGhyZWFkID0gRGVkaWNhdGVkV29ya2VyVGhyZWFkOjpjcmVh
dGUoc2NyaXB0VVJMLCBuYW1lLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCBzb3Vy
Y2VDb2RlLCAqdGhpcywgKnRoaXMsICp0aGlzLCBzdGFydE1vZGUsIGNvbnRlbnRTZWN1cml0eVBv
bGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5
UG9saWN5LCBkb2N1bWVudC50b3BPcmlnaW4oKSwgdGltZU9yaWdpbiwgcHJveHksIHNvY2tldFBy
b3ZpZGVyLCBydW50aW1lRmxhZ3MsIHNlc3Npb25JRCk7CiAKICAgICB3b3JrZXJUaHJlYWRDcmVh
dGVkKHRocmVhZC5nZXQoKSk7CiAgICAgdGhyZWFkLT5zdGFydChudWxscHRyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaAppbmRleCA0ZWZmMmZhNGEy
NDNlY2ZjMTRmNDY0NWVhZDZjZmY2MTBlYTQ0YmVjLi5lY2VkYjQ4Mzk1NmMxMjFiZjg2ZDA1ZjIy
YmFiYTQzODE0YmNkMzA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
ck1lc3NhZ2luZ1Byb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNz
YWdpbmdQcm94eS5oCkBAIC00Niw3ICs0Niw3IEBAIGNsYXNzIFdvcmtlck1lc3NhZ2luZ1Byb3h5
IGZpbmFsIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPFdvcmtlck1lc3NhZ2luZ1ByCiBw
cml2YXRlOgogICAgIC8vIEltcGxlbWVudGF0aW9ucyBvZiBXb3JrZXJHbG9iYWxTY29wZVByb3h5
LgogICAgIC8vIChPbmx5IHVzZSB0aGVzZSBmdW5jdGlvbnMgaW4gdGhlIHdvcmtlciBvYmplY3Qg
dGhyZWFkLikKLSAgICB2b2lkIHN0YXJ0V29ya2VyR2xvYmFsU2NvcGUoY29uc3QgVVJMJiBzY3Jp
cHRVUkwsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJp
bmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVy
cyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCkg
ZmluYWw7CisgICAgdm9pZCBzdGFydFdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYgc2NyaXB0
VVJMLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlz
T25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNl
Y3VyaXR5UG9saWN5LCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIEpTQzo6UnVudGltZUZsYWdz
LCBQQUw6OlNlc3Npb25JRCkgZmluYWw7CiAgICAgdm9pZCB0ZXJtaW5hdGVXb3JrZXJHbG9iYWxT
Y29wZSgpIGZpbmFsOwogICAgIHZvaWQgcG9zdE1lc3NhZ2VUb1dvcmtlckdsb2JhbFNjb3BlKE1l
c3NhZ2VXaXRoTWVzc2FnZVBvcnRzJiYpIGZpbmFsOwogICAgIGJvb2wgaGFzUGVuZGluZ0FjdGl2
aXR5KCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5jcHAK
aW5kZXggZjM4OTE4NTQyZTk0ZGMyNjVmNTU5YzNiNzE5NjNhZmRkOWFkMTVlZC4uMWM2YWExNjVi
NTkxODcxNDdjOGJhODA5NTYxYjMwMzE1Yzg0YjBiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyVGhyZWFkLmNwcApAQCAtNzIsMTAgKzcyLDExIEBAIHVuc2lnbmVkIFdvcmtlclRocmVh
ZDo6d29ya2VyVGhyZWFkQ291bnQoKQogc3RydWN0IFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhIHsK
ICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXb3JrZXJUaHJlYWRTdGFydHVwRGF0YSk7IFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIFdvcmtlclRocmVhZFN0YXJ0dXBEYXRh
KGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUs
IFdvcmtlclRocmVhZFN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzJiwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xp
Y3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9y
aWdpbiwgUEFMOjpTZXNzaW9uSUQpOworICAgIFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhKGNvbnN0
IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmlu
ZyYgc291cmNlQ29kZSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlLCBjb25zdCBDb250ZW50U2VjdXJp
dHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRl
bnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9ub3Rv
bmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCk7CiAKICAgICBVUkwgbV9zY3JpcHRV
Ukw7CiAgICAgUmVmPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsKKyAgICBTdHJpbmcgbV9uYW1l
OwogICAgIFN0cmluZyBtX2lkZW50aWZpZXI7CiAgICAgU3RyaW5nIG1fdXNlckFnZW50OwogICAg
IFN0cmluZyBtX3NvdXJjZUNvZGU7CkBAIC04OCw5ICs4OSwxMCBAQCBzdHJ1Y3QgV29ya2VyVGhy
ZWFkU3RhcnR1cERhdGEgewogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogfTsKIAot
V29ya2VyVGhyZWFkU3RhcnR1cERhdGE6OldvcmtlclRocmVhZFN0YXJ0dXBEYXRhKGNvbnN0IFVS
TCYgc2NyaXB0VVJMLCBjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNl
ckFnZW50LCBib29sIGlzT25saW5lLCBjb25zdCBTdHJpbmcmIHNvdXJjZUNvZGUsIFdvcmtlclRo
cmVhZFN0YXJ0TW9kZSBzdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycyYgY29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlP
cmlnaW4mIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25J
RCBzZXNzaW9uSUQpCitXb3JrZXJUaHJlYWRTdGFydHVwRGF0YTo6V29ya2VyVGhyZWFkU3RhcnR1
cERhdGEoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3Ry
aW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9vbCBpc09ubGluZSwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJUaHJlYWRTdGFydE1vZGUgc3RhcnRNb2Rl
LCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1
cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250
ZW50U2VjdXJpdHlQb2xpY3ksIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIE1vbm90
b25pY1RpbWUgdGltZU9yaWdpbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogICAgIDogbV9z
Y3JpcHRVUkwoc2NyaXB0VVJMLmlzb2xhdGVkQ29weSgpKQogICAgICwgbV9vcmlnaW4oU2VjdXJp
dHlPcmlnaW46OmNyZWF0ZShtX3NjcmlwdFVSTCktPmlzb2xhdGVkQ29weSgpKQorICAgICwgbV9u
YW1lKG5hbWUuaXNvbGF0ZWRDb3B5KCkpCiAgICAgLCBtX2lkZW50aWZpZXIoaWRlbnRpZmllci5p
c29sYXRlZENvcHkoKSkKICAgICAsIG1fdXNlckFnZW50KHVzZXJBZ2VudC5pc29sYXRlZENvcHko
KSkKICAgICAsIG1fc291cmNlQ29kZShzb3VyY2VDb2RlLmlzb2xhdGVkQ29weSgpKQpAQCAtMTA0
LDEyICsxMDYsMTIgQEAgV29ya2VyVGhyZWFkU3RhcnR1cERhdGE6OldvcmtlclRocmVhZFN0YXJ0
dXBEYXRhKGNvbnN0IFVSTCYgc2NyaXB0VVJMLCBjb25zdCBTdHIKIHsKIH0KIAotV29ya2VyVGhy
ZWFkOjpXb3JrZXJUaHJlYWQoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgaWRl
bnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0
cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9hZGVyUHJveHkmIHdvcmtlckxvYWRlclByb3h5LCBX
b3JrZXJEZWJ1Z2dlclByb3h5JiB3b3JrZXJEZWJ1Z2dlclByb3h5LCBXb3JrZXJSZXBvcnRpbmdQ
cm94eSYgd29ya2VyUmVwb3J0aW5nUHJveHksIFdvcmtlclRocmVhZFN0YXJ0TW9kZSBzdGFydE1v
ZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYgY29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLCBib29sIHNob3VsZEJ5cGFzc01haW5Xb3JsZENv
bnRlbnRTZWN1cml0eVBvbGljeSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHRvcE9yaWdpbiwgTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29u
bmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGlt
ZUZsYWdzIHJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQorV29ya2VyVGhy
ZWFkOjpXb3JrZXJUaHJlYWQoY29uc3QgVVJMJiBzY3JpcHRVUkwsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCwgYm9v
bCBpc09ubGluZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VDb2RlLCBXb3JrZXJMb2FkZXJQcm94eSYg
d29ya2VyTG9hZGVyUHJveHksIFdvcmtlckRlYnVnZ2VyUHJveHkmIHdvcmtlckRlYnVnZ2VyUHJv
eHksIFdvcmtlclJlcG9ydGluZ1Byb3h5JiB3b3JrZXJSZXBvcnRpbmdQcm94eSwgV29ya2VyVGhy
ZWFkU3RhcnRNb2RlIHN0YXJ0TW9kZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9u
c2VIZWFkZXJzJiBjb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMsIGJvb2wgc2hv
dWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1cml0eU9y
aWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVudDo6SURC
Q29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQ
cm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3MgcnVudGltZUZsYWdzLCBQQUw6OlNlc3Npb25JRCBz
ZXNzaW9uSUQpCiAgICAgOiBtX3dvcmtlckxvYWRlclByb3h5KHdvcmtlckxvYWRlclByb3h5KQog
ICAgICwgbV93b3JrZXJEZWJ1Z2dlclByb3h5KHdvcmtlckRlYnVnZ2VyUHJveHkpCiAgICAgLCBt
X3dvcmtlclJlcG9ydGluZ1Byb3h5KHdvcmtlclJlcG9ydGluZ1Byb3h5KQogICAgICwgbV9ydW50
aW1lRmxhZ3MocnVudGltZUZsYWdzKQotICAgICwgbV9zdGFydHVwRGF0YShzdGQ6Om1ha2VfdW5p
cXVlPFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhPihzY3JpcHRVUkwsIGlkZW50aWZpZXIsIHVzZXJB
Z2VudCwgaXNPbmxpbmUsIHNvdXJjZUNvZGUsIHN0YXJ0TW9kZSwgY29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzLCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3ksIHRvcE9yaWdpbiwgdGltZU9yaWdpbiwgc2Vzc2lvbklEKSkKKyAgICAsIG1fc3RhcnR1
cERhdGEoc3RkOjptYWtlX3VuaXF1ZTxXb3JrZXJUaHJlYWRTdGFydHVwRGF0YT4oc2NyaXB0VVJM
LCBuYW1lLCBpZGVudGlmaWVyLCB1c2VyQWdlbnQsIGlzT25saW5lLCBzb3VyY2VDb2RlLCBzdGFy
dE1vZGUsIGNvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgc2hvdWxkQnlwYXNz
TWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCB0b3BPcmlnaW4sIHRpbWVPcmlnaW4sIHNl
c3Npb25JRCkpCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgLCBtX2lkYkNvbm5l
Y3Rpb25Qcm94eShjb25uZWN0aW9uUHJveHkpCiAjZW5kaWYKQEAgLTE2Nyw3ICsxNjksNyBAQCB2
b2lkIFdvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkKCkKICAgICAgICAgLy8gd2hpbGUgV29ya2Vy
VGhyZWFkOjpzdG9wKCkgaXMgYWNjZXNzaW5nIGl0LiBOb3RlIHRoYXQgV29ya2VyVGhyZWFkOjpz
dG9wKCkgY2FuCiAgICAgICAgIC8vIGJlIGNhbGxlZCBiZWZvcmUgd2UndmUgZmluaXNoZWQgY3Jl
YXRpbmcgdGhlIFdvcmtlckdsb2JhbFNjb3BlLgogICAgICAgICBMb2NrSG9sZGVyIGxvY2sobV90
aHJlYWRDcmVhdGlvbkFuZFdvcmtlckdsb2JhbFNjb3BlTXV0ZXgpOwotICAgICAgICBtX3dvcmtl
ckdsb2JhbFNjb3BlID0gY3JlYXRlV29ya2VyR2xvYmFsU2NvcGUobV9zdGFydHVwRGF0YS0+bV9z
Y3JpcHRVUkwsIFdURk1vdmUobV9zdGFydHVwRGF0YS0+bV9vcmlnaW4pLCBtX3N0YXJ0dXBEYXRh
LT5tX2lkZW50aWZpZXIsIG1fc3RhcnR1cERhdGEtPm1fdXNlckFnZW50LCBtX3N0YXJ0dXBEYXRh
LT5tX2lzT25saW5lLCBtX3N0YXJ0dXBEYXRhLT5tX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycywgbV9zdGFydHVwRGF0YS0+bV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50
U2VjdXJpdHlQb2xpY3ksIFdURk1vdmUobV9zdGFydHVwRGF0YS0+bV90b3BPcmlnaW4pLCBtX3N0
YXJ0dXBEYXRhLT5tX3RpbWVPcmlnaW4sIG1fc3RhcnR1cERhdGEtPm1fc2Vzc2lvbklEKTsKKyAg
ICAgICAgbV93b3JrZXJHbG9iYWxTY29wZSA9IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKG1fc3Rh
cnR1cERhdGEtPm1fc2NyaXB0VVJMLCBXVEZNb3ZlKG1fc3RhcnR1cERhdGEtPm1fb3JpZ2luKSwg
bV9zdGFydHVwRGF0YS0+bV9uYW1lLCBtX3N0YXJ0dXBEYXRhLT5tX2lkZW50aWZpZXIsIG1fc3Rh
cnR1cERhdGEtPm1fdXNlckFnZW50LCBtX3N0YXJ0dXBEYXRhLT5tX2lzT25saW5lLCBtX3N0YXJ0
dXBEYXRhLT5tX2NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycywgbV9zdGFydHVw
RGF0YS0+bV9zaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ksIFdURk1v
dmUobV9zdGFydHVwRGF0YS0+bV90b3BPcmlnaW4pLCBtX3N0YXJ0dXBEYXRhLT5tX3RpbWVPcmln
aW4sIG1fc3RhcnR1cERhdGEtPm1fc2Vzc2lvbklEKTsKIAogICAgICAgICBzY3JpcHRDb250cm9s
bGVyID0gbV93b3JrZXJHbG9iYWxTY29wZS0+c2NyaXB0KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlclRocmVhZC5oCmluZGV4IGVkZTcwZWYwMmFmYTBkNDk0NGQwYWFkZWM5OWJmMGI2MmU5
OWVkNGUuLmQ3MTQxMjQ4NWE5NjkwNDlhZGI0OTY1OTc0ZGJlOTFmNWVlMTkxODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuaApAQCAtODcsMTAgKzg3LDEwIEBAIGNsYXNzIFdv
cmtlclRocmVhZCA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxXb3JrZXJUaHJlYWQ+IHsK
ICAgICBKU0M6OlJ1bnRpbWVGbGFncyBydW50aW1lRmxhZ3MoKSBjb25zdCB7IHJldHVybiBtX3J1
bnRpbWVGbGFnczsgfQogCiBwcm90ZWN0ZWQ6Ci0gICAgV29ya2VyVGhyZWFkKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wg
aXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9hZGVyUHJveHkmLCBX
b3JrZXJEZWJ1Z2dlclByb3h5JiwgV29ya2VyUmVwb3J0aW5nUHJveHkmLCBXb3JrZXJUaHJlYWRT
dGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJv
b2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBjb25zdCBTZWN1
cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIElEQkNsaWVu
dDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBKU0M6OlJ1bnRpbWVGbGFn
cywgUEFMOjpTZXNzaW9uSUQpOworICAgIFdvcmtlclRocmVhZChjb25zdCBVUkwmLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2Vy
QWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IFN0cmluZyYgc291cmNlQ29kZSwgV29ya2VyTG9h
ZGVyUHJveHkmLCBXb3JrZXJEZWJ1Z2dlclByb3h5JiwgV29ya2VyUmVwb3J0aW5nUHJveHkmLCBX
b3JrZXJUaHJlYWRTdGFydE1vZGUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNl
SGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5
LCBjb25zdCBTZWN1cml0eU9yaWdpbiYgdG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqLCBKU0M6
OlJ1bnRpbWVGbGFncywgUEFMOjpTZXNzaW9uSUQpOwogCiAgICAgLy8gRmFjdG9yeSBtZXRob2Qg
Zm9yIGNyZWF0aW5nIGEgbmV3IHdvcmtlciBjb250ZXh0IGZvciB0aGUgdGhyZWFkLgotICAgIHZp
cnR1YWwgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJHbG9iYWxTY29wZShjb25z
dCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNvbnN0IENvbnRlbnRTZWN1
cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKSA9IDA7CisgICAgdmlydHVhbCBS
ZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNvbnN0IFVSTCYs
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcm
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBjb25z
dCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNob3VsZEJ5cGFz
c01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRv
cE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25JRCkgPSAwOwog
CiAgICAgLy8gRXhlY3V0ZXMgdGhlIGV2ZW50IGxvb3AgZm9yIHRoZSB3b3JrZXIgdGhyZWFkLiBE
ZXJpdmVkIGNsYXNzZXMgY2FuIG92ZXJyaWRlIHRvIHBlcmZvcm0gYWN0aW9ucyBiZWZvcmUvYWZ0
ZXIgZW50ZXJpbmcgdGhlIGV2ZW50IGxvb3AuCiAgICAgdmlydHVhbCB2b2lkIHJ1bkV2ZW50TG9v
cCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQv
U2VydmljZVdvcmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
Y29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAppbmRleCA5ZTZkYzM1NDYwNWJhN2ZiZmFh
MjViYjQ1Zjk0MzAzMWM2NTdiNzQxLi41MTc2MGFhNzk2NzhkMmI3YmE2Zjc3MWM2MjIyMDZiZTAz
ZjVkZTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4
dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcApAQCAtNzIsNyArNzIsNyBAQCBj
bGFzcyBEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSA6IHB1YmxpYyBXb3JrZXJPYmplY3RQ
cm94eSB7CiAvLyBGSVhNRTogVXNlIHZhbGlkIHJ1bnRpbWUgZmxhZ3MKIAogU2VydmljZVdvcmtl
clRocmVhZDo6U2VydmljZVdvcmtlclRocmVhZChjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERh
dGEmIGRhdGEsIFBBTDo6U2Vzc2lvbklELCBTdHJpbmcmJiB1c2VyQWdlbnQsIFdvcmtlckxvYWRl
clByb3h5JiBsb2FkZXJQcm94eSwgV29ya2VyRGVidWdnZXJQcm94eSYgZGVidWdnZXJQcm94eSwg
SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSwgU29ja2V0
UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQotICAgIDogV29ya2VyVGhyZWFkKGRhdGEuc2NyaXB0
VVJMLCAic2VydmljZXdvcmtlcjoiICsgSW5zcGVjdG9yOjpJZGVudGlmaWVyc0ZhY3Rvcnk6OmNy
ZWF0ZUlkZW50aWZpZXIoKSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+aXNPbkxpbmUoKSwgZGF0YS5zY3JpcHQsIGxvYWRlclByb3h5
LCBkZWJ1Z2dlclByb3h5LCBEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCks
IFdvcmtlclRocmVhZFN0YXJ0TW9kZTo6Tm9ybWFsLCBkYXRhLmNvbnRlbnRTZWN1cml0eVBvbGlj
eSwgZmFsc2UsIGRhdGEucmVnaXN0cmF0aW9uLmtleS50b3BPcmlnaW4oKS5zZWN1cml0eU9yaWdp
bigpLmdldCgpLCBNb25vdG9uaWNUaW1lOjpub3coKSwgaWRiQ29ubmVjdGlvblByb3h5LCBzb2Nr
ZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3M6OmNyZWF0ZUFsbEVuYWJsZWQoKSwgZGF0YS5z
ZXNzaW9uSUQpCisgICAgOiBXb3JrZXJUaHJlYWQoZGF0YS5zY3JpcHRVUkwsIGVtcHR5U3RyaW5n
KCksICJzZXJ2aWNld29ya2VyOiIgKyBJbnNwZWN0b3I6OklkZW50aWZpZXJzRmFjdG9yeTo6Y3Jl
YXRlSWRlbnRpZmllcigpLCBXVEZNb3ZlKHVzZXJBZ2VudCksIHBsYXRmb3JtU3RyYXRlZ2llcygp
LT5sb2FkZXJTdHJhdGVneSgpLT5pc09uTGluZSgpLCBkYXRhLnNjcmlwdCwgbG9hZGVyUHJveHks
IGRlYnVnZ2VyUHJveHksIER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpzaGFyZWQoKSwg
V29ya2VyVGhyZWFkU3RhcnRNb2RlOjpOb3JtYWwsIGRhdGEuY29udGVudFNlY3VyaXR5UG9saWN5
LCBmYWxzZSwgZGF0YS5yZWdpc3RyYXRpb24ua2V5LnRvcE9yaWdpbigpLnNlY3VyaXR5T3JpZ2lu
KCkuZ2V0KCksIE1vbm90b25pY1RpbWU6Om5vdygpLCBpZGJDb25uZWN0aW9uUHJveHksIHNvY2tl
dFByb3ZpZGVyLCBKU0M6OlJ1bnRpbWVGbGFnczo6Y3JlYXRlQWxsRW5hYmxlZCgpLCBkYXRhLnNl
c3Npb25JRCkKICAgICAsIG1fZGF0YShkYXRhLmlzb2xhdGVkQ29weSgpKQogICAgICwgbV93b3Jr
ZXJPYmplY3RQcm94eShEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCkpCiB7
CkBAIC04MSw4ICs4MSw5IEBAIFNlcnZpY2VXb3JrZXJUaHJlYWQ6OlNlcnZpY2VXb3JrZXJUaHJl
YWQoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiBkYXRhLCBQCiAKIFNlcnZpY2VXb3Jr
ZXJUaHJlYWQ6On5TZXJ2aWNlV29ya2VyVGhyZWFkKCkgPSBkZWZhdWx0OwogCi1SZWY8V29ya2Vy
R2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3Bl
KGNvbnN0IFVSTCYgdXJsLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBjb25zdCBTdHJp
bmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5lLCBj
b25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1cml0
eVBvbGljeSwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3ks
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9yaWdp
biwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQorUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBTZXJ2
aWNlV29ya2VyVGhyZWFkOjpjcmVhdGVXb3JrZXJHbG9iYWxTY29wZShjb25zdCBVUkwmIHVybCwg
UmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBT
dHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25saW5l
LCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmIGNvbnRlbnRTZWN1
cml0eVBvbGljeSwgYm9vbCBzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQb2xp
Y3ksIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIE1vbm90b25pY1RpbWUgdGltZU9y
aWdpbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogeworICAgIFVOVVNFRF9QQVJBTShuYW1l
KTsKICAgICByZXR1cm4gU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUobV9kYXRhLCB1
cmwsIFdURk1vdmUob3JpZ2luKSwgaWRlbnRpZmllciwgdXNlckFnZW50LCBpc09ubGluZSwgKnRo
aXMsIGNvbnRlbnRTZWN1cml0eVBvbGljeSwgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNl
Y3VyaXR5UG9saWN5LCBXVEZNb3ZlKHRvcE9yaWdpbiksIHRpbWVPcmlnaW4sIGlkYkNvbm5lY3Rp
b25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpLCBzZXNzaW9uSUQpOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhy
ZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29y
a2VyVGhyZWFkLmgKaW5kZXggMzU4MjIxMWYwYmQ2ZGVmNjA1NGY0MGY2ZDBkNDFhYzkzYjAxY2Q0
MS4uMzQ5MmEzOWZlMGJmYmMwMGVmNmM0OGE3ZTFjZjYyNjBhZDMyNGU5MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVh
ZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VX
b3JrZXJUaHJlYWQuaApAQCAtNjYsNyArNjYsNyBAQCBjbGFzcyBTZXJ2aWNlV29ya2VyVGhyZWFk
IDogcHVibGljIFdvcmtlclRocmVhZCB7CiAgICAgU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YS5zZXJ2aWNlV29ya2VySWRlbnRpZmllcjsg
fQogCiBwcm90ZWN0ZWQ6Ci0gICAgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiBjcmVhdGVXb3JrZXJH
bG9iYWxTY29wZShjb25zdCBVUkwmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIGNvbnN0IFN0cmlu
ZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIGJvb2wgaXNPbmxpbmUsIGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyYsIGJvb2wgc2hvdWxkQnlw
YXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYg
dG9wT3JpZ2luLCBNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFBBTDo6U2Vzc2lvbklEKSBmaW5h
bDsKKyAgICBSZWY8V29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKGNv
bnN0IFVSTCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25z
dCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50LCBib29sIGlzT25s
aW5lLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMmLCBib29sIHNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSwgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIHRvcE9yaWdpbiwgTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBQQUw6OlNlc3Npb25J
RCkgZmluYWw7CiAgICAgdm9pZCBydW5FdmVudExvb3AoKSBvdmVycmlkZTsKIAogcHJpdmF0ZToK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGUyNWY2ZmRjNjQ5NDgyZmY1YTRkNGI5
MjcyMjEwZjliOWVlMmE5NjIuLjczNThiMWNiMTZhNTI1MmNlNjk4MDcyNzExNDExZDMyZjIzN2Y3
YTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4
LTA4LTIxICBZdXN1a2UgU3V6dWtpICA8eXVzdWtlc3V6dWtpQHNsb3dzdGFydC5vcmc+CisKKyAg
ICAgICAgU3VwcG9ydCAibmFtZSIgb3B0aW9uIGZvciBkZWRpY2F0ZWQgd29ya2VycworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Nzc5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvd29ya2Vycy9pbnRlcmZhY2VzLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvbmFtZS1wcm9wZXJ0eS1leHBlY3RlZC50eHQ6CisK
IDIwMTgtMDgtMjAgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBUaHJv
dyBhbiBleGNlcHRpb24gaWYgd2luZG93Lm9wZW4oKSBnZXRzIHBhc3NlZCBhIFVSTCB0aGF0IGNh
bm5vdCBiZSBwYXJzZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd29ya2Vycy9pbnRlcmZhY2VzLndvcmtlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvaW50ZXJm
YWNlcy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDEyMDRhODQxMjUxMTc5OWU2NTI3YmM5N2Uz
NzY1NWY2M2I1ODJlY2IuLmY3MjdiYzQ3ZjNmOWEwMGVjZGU1MDZkMDY1NjdlOWQ4ZDJiMjY2MjEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d29ya2Vycy9pbnRlcmZhY2VzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL2ludGVyZmFjZXMud29ya2Vy
LWV4cGVjdGVkLnR4dApAQCAtNjgsNyArNjgsNyBAQCBQQVNTIERlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlIGludGVyZmFjZTogaW50ZXJuYWwgW1tTZXRQcm90b3R5cGVPZl1dIG1ldGhvZCBvZgog
UEFTUyBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSBpbnRlcmZhY2U6IGludGVybmFsIFtbU2V0
UHJvdG90eXBlT2ZdXSBtZXRob2Qgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgLSBzZXR0
aW5nIHRvIGl0cyBvcmlnaW5hbCB2YWx1ZSB2aWEgUmVmbGVjdC5zZXRQcm90b3R5cGVPZiBzaG91
bGQgcmV0dXJuIHRydWUgCiBQQVNTIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIGludGVyZmFj
ZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0
J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSAKIFBBU1MgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3Rv
dHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IAotRkFJTCBEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBuYW1lIGFzc2VydF9vd25fcHJvcGVy
dHk6IFRoZSBnbG9iYWwgb2JqZWN0IG11c3QgaGF2ZSBhIHByb3BlcnR5ICJuYW1lIiBleHBlY3Rl
ZCBwcm9wZXJ0eSAibmFtZSIgbWlzc2luZworUEFTUyBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBuYW1lIAogUEFTUyBVbnNjb3BhYmxlIGhhbmRsZWQgY29y
cmVjdGx5IGZvciBuYW1lIHByb3BlcnR5IG9uIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIAog
UEFTUyBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSBpbnRlcmZhY2U6IG9wZXJhdGlvbiBwb3N0
TWVzc2FnZShhbnksIFtvYmplY3QgT2JqZWN0XSkgCiBQQVNTIFVuc2NvcGFibGUgaGFuZGxlZCBj
b3JyZWN0bHkgZm9yIHBvc3RNZXNzYWdlKGFueSwgW29iamVjdCBPYmplY3RdKSBvbiBEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSAKQEAgLTg2LDcgKzg2LDcgQEAgUEFTUyBEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZSBpbnRlcmZhY2U6IGludGVybmFsIFtbU2V0UHJvdG90eXBlT2ZdXSBtZXRo
b2Qgb2YKIFBBU1MgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgaW50ZXJmYWNlOiBpbnRlcm5h
bCBbW1NldFByb3RvdHlwZU9mXV0gbWV0aG9kIG9mIGdsb2JhbCBwbGF0Zm9ybSBvYmplY3QgLSBz
ZXR0aW5nIHRvIGl0cyBvcmlnaW5hbCB2YWx1ZSB2aWEgUmVmbGVjdC5zZXRQcm90b3R5cGVPZiBz
aG91bGQgcmV0dXJuIHRydWUgCiBQQVNTIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIG11c3Qg
YmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2Ygc2VsZiAKIFBBU1MgU3RyaW5naWZpY2F0aW9uIG9mIHNl
bGYgCi1GQUlMIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIGludGVyZmFjZTogc2VsZiBtdXN0
IGluaGVyaXQgcHJvcGVydHkgIm5hbWUiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9vd25f
cHJvcGVydHk6IGV4cGVjdGVkIHByb3BlcnR5ICJuYW1lIiBtaXNzaW5nCitQQVNTIERlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlIGludGVyZmFjZTogc2VsZiBtdXN0IGluaGVyaXQgcHJvcGVydHkg
Im5hbWUiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZSBpbnRlcmZhY2U6IHNlbGYgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJwb3N0TWVzc2FnZShh
bnksIFtvYmplY3QgT2JqZWN0XSkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSBpbnRlcmZhY2U6IGNhbGxpbmcgcG9zdE1lc3NhZ2UoYW55LCBb
b2JqZWN0IE9iamVjdF0pIG9uIHNlbGYgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93
IFR5cGVFcnJvciAKIFBBU1MgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgaW50ZXJmYWNlOiBz
ZWxmIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2xvc2UoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dvcmtlcnMvbmFtZS1wcm9wZXJ0eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dvcmtlcnMvbmFtZS1wcm9wZXJ0eS1leHBlY3RlZC50
eHQKaW5kZXggMDVhNTFmODIxNmQzZmMzZjlkMjYxMjc3ZDE3OTFhYjg1Mjg5NWJlMi4uYmM0MTFh
ODg4MDgzZThjNDQyMDYxZGM5MmRmYTRmNjRjZmRkOGYyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrZXJzL25hbWUtcHJvcGVydHkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd29ya2Vycy9uYW1lLXByb3BlcnR5LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAK
IENPTlNPTEUgTUVTU0FHRTogbGluZSAyMDogUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFy
aWFibGU6IFNoYXJlZFdvcmtlcgogCiBGQUlMIFRlc3QgdGhlIG5hbWUgcHJvcGVydHkgb2Ygc2hh
cmVkIGFuZCBkZWRpY2F0ZWQgd29ya2VycyB2aWEgdGhlIG5hbWUgY29uc3RydWN0b3Igb3B0aW9u
IFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBTaGFyZWRXb3JrZXIKLVBBU1Mg
RGVjbGFyaW5nIG5hbWUgYXMgYW4gYWNjaWRlbnRhbCBnbG9iYWwgbXVzdCBub3QgY2F1c2UgYSBo
YXJuZXNzIGVycm9yIGZvciBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSAKLUZBSUwgbmFtZSBw
cm9wZXJ0eSB2YWx1ZSBmb3IgRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgYXNzZXJ0X3RydWU6
IHByb3BlcnR5IGV4aXN0cyBvbiB0aGUgZ2xvYmFsIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQ
QVNTIG5hbWUgcHJvcGVydHkgdmFsdWUgZm9yIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIAog
UEFTUyBuYW1lIHByb3BlcnR5IGlzIHJlcGxhY2VhYmxlIGZvciBEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZSAKK1BBU1MgRGVjbGFyaW5nIG5hbWUgYXMgYW4gYWNjaWRlbnRhbCBnbG9iYWwgbXVz
dCBub3QgY2F1c2UgYSBoYXJuZXNzIGVycm9yIGZvciBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZSAKIAo=
</data>
<flag name="review"
          id="365361"
          type_id="1"
          status="+"
          setter="joepeck"
    />
          </attachment>
      

    </bug>

</bugzilla>