<?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>221303</bug_id>
          
          <creation_ts>2021-02-02 15:43:07 -0800</creation_ts>
          <short_desc>PCM: earliestTimeToSend should be treated as an independent time value, not relative to timeOfAdClick</short_desc>
          <delta_ts>2021-02-03 15:58:51 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kate Cheney">katherine_cheney</reporter>
          <assigned_to name="Kate Cheney">katherine_cheney</assigned_to>
          <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1724937</commentid>
    <comment_count>0</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2021-02-02 15:43:07 -0800</bug_when>
    <thetext>Currently the persistent PCM implementation updates earliestTimeToSend after the session is closed. This is not necessary, because earliestTimeToSend is an independent time value and should not need to be updated after a session end/start.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724938</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-02 15:43:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/73902668&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724958</commentid>
    <comment_count>2</comment_count>
      <attachid>419080</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2021-02-02 16:53:26 -0800</bug_when>
    <thetext>Created attachment 419080
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725240</commentid>
    <comment_count>3</comment_count>
      <attachid>419080</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2021-02-03 11:35:10 -0800</bug_when>
    <thetext>Comment on attachment 419080
Patch

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

&gt; Source/WebKit/ChangeLog:14
&gt; +        need any adjustment after a new session.

Just to make sure, we are now going to send the report 24-48 hours after the triggering event, not after the click, right?

&gt; Source/WebKit/ChangeLog:16
&gt; +        No new tests, this will be covered by 

Will be or is?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725256</commentid>
    <comment_count>4</comment_count>
      <attachid>419080</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2021-02-03 11:54:51 -0800</bug_when>
    <thetext>Comment on attachment 419080
Patch

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

&gt;&gt; Source/WebKit/ChangeLog:14
&gt;&gt; +        need any adjustment after a new session.
&gt; 
&gt; Just to make sure, we are now going to send the report 24-48 hours after the triggering event, not after the click, right?

Yes, the time calculation happens when we insert an attributed report into the DB. We call attributeAndGetEarliestTimeToSend() which calculates now + 24-48 hours.

&gt;&gt; Source/WebKit/ChangeLog:16
&gt;&gt; +        No new tests, this will be covered by 
&gt; 
&gt; Will be or is?

Is. This test now marks an attribution as having an earliest time to send of (now - 1hr) and tests that it sends immediately after a session start. I can update the wording.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725277</commentid>
    <comment_count>5</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2021-02-03 12:25:17 -0800</bug_when>
    <thetext>(In reply to katherine_cheney from comment #4)
&gt; Comment on attachment 419080 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=419080&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/ChangeLog:14
&gt; &gt;&gt; +        need any adjustment after a new session.
&gt; &gt; 
&gt; &gt; Just to make sure, we are now going to send the report 24-48 hours after the triggering event, not after the click, right?
&gt; 
&gt; Yes, the time calculation happens when we insert an attributed report into
&gt; the DB. We call attributeAndGetEarliestTimeToSend() which calculates now +
&gt; 24-48 hours.

Good.

&gt; &gt;&gt; Source/WebKit/ChangeLog:16
&gt; &gt;&gt; +        No new tests, this will be covered by 
&gt; &gt; 
&gt; &gt; Will be or is?
&gt; 
&gt; Is. This test now marks an attribution as having an earliest time to send of
&gt; (now - 1hr) and tests that it sends immediately after a session start. I can
&gt; update the wording.

OK, please point out that this patch makes the test check this. Otherwise it sounds like you will have a follow-up patch with a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725278</commentid>
    <comment_count>6</comment_count>
      <attachid>419080</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2021-02-03 12:25:38 -0800</bug_when>
    <thetext>Comment on attachment 419080
Patch

r=me with minor comment on change log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725358</commentid>
    <comment_count>7</comment_count>
      <attachid>419188</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2021-02-03 15:15:38 -0800</bug_when>
    <thetext>Created attachment 419188
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725389</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-03 15:58:51 -0800</bug_when>
    <thetext>Committed r272346: &lt;https://trac.webkit.org/changeset/272346&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 419188.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419080</attachid>
            <date>2021-02-02 16:53:26 -0800</date>
            <delta_ts>2021-02-03 15:15:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221303-20210202165325.patch</filename>
            <type>text/plain</type>
            <size>19706</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMjM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM4MjcxYjMwOGEwMWM1ZjM3
NGZiNGU5MzE1ZTI4YzRlMzFmODRlZTEuLmY4MDlhNzA3ODY5NGY2ODY4YmQ1N2NmMDQ2NDQ0OTA1
YjQyYTZiZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjEtMDItMDIgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgUENNOiBlYXJsaWVz
dFRpbWVUb1NlbmQgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYW4gaW5kZXBlbmRlbnQgdGltZSB2YWx1
ZSwgbm90IHJlbGF0aXZlIHRvIHRpbWVPZkFkQ2xpY2sKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTMwMworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NzM5MDI2Njg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgcjI3MDEzNiBhc3N1bWVkIHRoYXQgUENNJ3MgZWFybGllc3RUaW1lVG9TZW5kIGF0dHJpYnV0
ZSB3YXMgdGhlCisgICAgICAgIGRpZmZlcmVuY2UgYmV0d2VlbiB0aW1lT2ZBZENsaWNrIGFuZCB3
aGVuIHRoZSBhdHRyaWJ1dGlvbiBzaG91bGQgYmUKKyAgICAgICAgc2VudC4gQXMgYSByZXN1bHQs
IGl0IGJlZ2FuIGVhY2ggbmV3IGJyb3dzZXIgc2Vzc2lvbiBieSBhZGp1c3RpbmcKKyAgICAgICAg
dGhpcyB2YWx1ZSBiYXNlZCBvbiB0aGUgYW1vdW50IG9mIHRpbWUgdGhlIHNlc3Npb24gd2FzIGNs
b3NlZC4gCisgICAgICAgIEluIHJlYWxpdHksIGVhcmxpZXN0VGltZVRvU2VuZCBpcyBhIHJhdyBz
ZWNvbmRzU2luY2VFcG9jaCgpIHZhbHVlLCBzbyB3ZSBkb24ndAorICAgICAgICBuZWVkIGFueSBh
ZGp1c3RtZW50IGFmdGVyIGEgbmV3IHNlc3Npb24uCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCB0
aGlzIHdpbGwgYmUgY292ZXJlZCBieSAKKyAgICAgICAgaHR0cC90ZXN0cy9wcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudC9leHBpcmVkLWF0dHJpYnV0aW9uLXJlcG9ydC1nZXRzLXNlbnQtb24tc2Vzc2lv
bi1zdGFydC5odG1sCisgICAgICAgIG5vdyB0aGF0IHRoZSBjb3JyZXNwb25kaW5nIHRlc3QgU1BJ
IGhhcyBiZWVuIHVwZGF0ZWQuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVy
L1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6Y3JlYXRlVGFibGVRdWVyaWVzKToKKyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0RhdGFiYXNlU3RvcmU6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3Jl
KToKKyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6
OmNyZWF0ZVNjaGVtYSk6CisgICAgICAgIChXZWJLaXQ6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NE
YXRhYmFzZVN0b3JlOjpkZXN0cm95U3RhdGVtZW50cyk6CisgICAgICAgIChXZWJLaXQ6OlJlc291
cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlOjptYXJrQXR0cmlidXRlZFByaXZhdGVDbGlj
a01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcpOgorICAgICAgICBVcGRhdGUgdGhlIHRl
c3RpbmcgU1BJIHRvIGluc2VydCBhbiBleHBpcmVkIHRpbWUgb2Ygbm93IG1pbnVzIG9uZQorICAg
ICAgICBob3VyIGFzIHRoZSBlYXJsaWVzdFRpbWVUb1NlbmQuCisKKyAgICAgICAgKFdlYktpdDo6
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVwZGF0ZVRpbWVyTGFzdEZpcmVk
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFi
YXNlU3RvcmU6OnRpbWVyTGFzdEZpcmVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVwZGF0ZVByaXZhdGVDbGlja01lYXN1
cmVtZW50QXR0cmlidXRpb25UaW1lcyk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5oOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc01l
bW9yeVN0b3JlLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmUuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lm
aWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6dXBkYXRlVGltZXJMYXN0RmlyZWQpOiBE
ZWxldGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1N0b3JlLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNs
aWNrTWVhc3VyZW1lbnRNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJpdmF0ZUNsaWNr
TWVhc3VyZW1lbnRNYW5hZ2VyOjpmaXJlUGVuZGluZ0F0dHJpYnV0aW9uUmVxdWVzdHMpOgorICAg
ICAgICAoV2ViS2l0OjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1hbmFnZXI6OnVwZGF0ZVRpbWVy
TGFzdEZpcmVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9Qcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudE1hbmFnZXIuaDoKKwogMjAyMS0wMi0wMiAgQWxleCBDaHJpc3RlbnNlbiAg
PGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlbW92ZSBhbGwgdXNlIG9mIF9V
SUV2ZW50QXR0cmlidXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlz
dGljc0RhdGFiYXNlU3RvcmUuY3BwCmluZGV4IGUzZDQyZGU0NTVlYjIxOThmZDY1YWY5MTYxNGFl
NjZhYzgzNzliMWMuLjU1NjQ2MTI0NmE3NDE5Mzg2MGY2YWNhZWU0YTEyYWZiNzQ5ZGIyMzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3Jl
LmNwcApAQCAtODUsNyArODUsNiBAQCBjb25zdGV4cHIgYXV0byBpbnNlcnRVbmF0dHJpYnV0ZWRQ
cml2YXRlQ2xpY2tNZWFzdXJlbWVudFF1ZXJ5ID0gIklOU0VSVCBPUiBSRVBMQQogICAgICJzb3Vy
Y2VJRCwgdGltZU9mQWRDbGljaykgVkFMVUVTICg/LCA/LCA/LCA/KSJfczsKIGNvbnN0ZXhwciBh
dXRvIGluc2VydEF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudFF1ZXJ5ID0gIklOU0VS
VCBPUiBSRVBMQUNFIElOVE8gQXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50IChzb3Vy
Y2VTaXRlRG9tYWluSUQsIGF0dHJpYnV0ZU9uU2l0ZURvbWFpbklELCAiCiAgICAgInNvdXJjZUlE
LCBhdHRyaWJ1dGlvblRyaWdnZXJEYXRhLCBwcmlvcml0eSwgdGltZU9mQWRDbGljaywgZWFybGll
c3RUaW1lVG9TZW5kKSBWQUxVRVMgKD8sID8sID8sID8sID8sID8sID8pIl9zOwotY29uc3RleHBy
IGF1dG8gdXBkYXRlVGltZXJMYXN0RmlyZWRRdWVyeSA9ICJJTlNFUlQgT1IgUkVQTEFDRSBJTlRP
IFRpbWVyTGFzdEZpcmVkIChrZXksIHRpbWVMYXN0RmlyZWRTZWNvbmRzKSBWQUxVRVMgKDEsID8p
Il9zOwogCiAvLyBJTlNFUlQgT1IgUkVQTEFDRSBRdWVyaWVzCiBjb25zdGV4cHIgYXV0byBzdWJm
cmFtZVVuZGVyVG9wRnJhbWVEb21haW5zUXVlcnkgPSAiSU5TRVJUIE9SIFJFUExBQ0UgaW50byBT
dWJmcmFtZVVuZGVyVG9wRnJhbWVEb21haW5zIChzdWJGcmFtZURvbWFpbklELCBsYXN0VXBkYXRl
ZCwgdG9wRnJhbWVEb21haW5JRCkgU0VMRUNUID8sID8sIGRvbWFpbklEIEZST00gT2JzZXJ2ZWRE
b21haW5zIHdoZXJlIHJlZ2lzdHJhYmxlRG9tYWluIGluICggIl9zOwpAQCAtMTQzLDcgKzE0Miw2
IEBAIGNvbnN0ZXhwciBhdXRvIGFsbFVuYXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50
QXR0cmlidXRpb25zUXVlcnkgPSAiU0VMRUNUCiBjb25zdGV4cHIgYXV0byBhbGxBdHRyaWJ1dGVk
UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRRdWVyeSA9ICJTRUxFQ1QgKiBGUk9NIEF0dHJpYnV0ZWRQ
cml2YXRlQ2xpY2tNZWFzdXJlbWVudCJfczsKIGNvbnN0ZXhwciBhdXRvIGZpbmRVbmF0dHJpYnV0
ZWRRdWVyeSA9ICJTRUxFQ1QgKiBGUk9NIFVuYXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVt
ZW50IFdIRVJFIHNvdXJjZVNpdGVEb21haW5JRCA9ID8gQU5EIGF0dHJpYnV0ZU9uU2l0ZURvbWFp
bklEID0gPyJfczsKIGNvbnN0ZXhwciBhdXRvIGZpbmRBdHRyaWJ1dGVkUXVlcnkgPSAiU0VMRUNU
ICogRlJPTSBBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQgV0hFUkUgc291cmNlU2l0
ZURvbWFpbklEID0gPyBBTkQgYXR0cmlidXRlT25TaXRlRG9tYWluSUQgPSA/Il9zOwotY29uc3Rl
eHByIGF1dG8gdGltZXJMYXN0RmlyZWRRdWVyeSA9ICJTRUxFQ1QgdGltZUxhc3RGaXJlZFNlY29u
ZHMgRlJPTSBUaW1lckxhc3RGaXJlZCBXSEVSRSBrZXkgPSAxIl9zOwogCiAvLyBFWElTVFMgZm9y
IHRlc3RpbmcgcXVlcmllcwogY29uc3RleHByIGF1dG8gbGlua0RlY29yYXRpb25FeGlzdHNRdWVy
eSA9ICJTRUxFQ1QgRVhJU1RTIChTRUxFQ1QgKiBGUk9NIFRvcEZyYW1lTGlua0RlY29yYXRpb25z
RnJvbSBXSEVSRSB0b0RvbWFpbklEID0gPyBPUiBmcm9tRG9tYWluSUQgPSA/KSJfczsKQEAgLTI1
MCw5ICsyNDgsNiBAQCBjb25zdGV4cHIgYXV0byBjcmVhdGVBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNr
TWVhc3VyZW1lbnQgPSAiQ1JFQVRFIFRBQkxFIEF0dHJpYnV0ZQogICAgICJGT1JFSUdOIEtFWShz
b3VyY2VTaXRlRG9tYWluSUQpIFJFRkVSRU5DRVMgT2JzZXJ2ZWREb21haW5zKGRvbWFpbklEKSBP
TiBERUxFVEUgQ0FTQ0FERSwgIgogICAgICJGT1JFSUdOIEtFWShhdHRyaWJ1dGVPblNpdGVEb21h
aW5JRCkgUkVGRVJFTkNFUyBPYnNlcnZlZERvbWFpbnMoZG9tYWluSUQpIE9OIERFTEVURSBDQVND
QURFKTsiX3M7CiAKLWNvbnN0ZXhwciBhdXRvIGNyZWF0ZVRpbWVyTGFzdEZpcmVkID0gIkNSRUFU
RSBUQUJMRSBUaW1lckxhc3RGaXJlZCAoIGtleSBJTlRFR0VSIFBSSU1BUlkgS0VZLCAiCi0gICAg
IiB0aW1lTGFzdEZpcmVkU2Vjb25kcyBSRUFMIE5PVCBOVUxMICkiX3M7Ci0KIC8vIENSRUFURSBV
TklRVUUgSU5ERVggUXVlcmllcy4KIGNvbnN0ZXhwciBhdXRvIGNyZWF0ZVVuaXF1ZUluZGV4U3Rv
cmFnZUFjY2Vzc1VuZGVyVG9wRnJhbWVEb21haW5zID0gIkNSRUFURSBVTklRVUUgSU5ERVggSUYg
Tk9UIEVYSVNUUyBTdG9yYWdlQWNjZXNzVW5kZXJUb3BGcmFtZURvbWFpbnNfZG9tYWluSURfdG9w
TGV2ZWxEb21haW5JRCBvbiBTdG9yYWdlQWNjZXNzVW5kZXJUb3BGcmFtZURvbWFpbnMgKCBkb21h
aW5JRCwgdG9wTGV2ZWxEb21haW5JRCApOyJfczsKIGNvbnN0ZXhwciBhdXRvIGNyZWF0ZVVuaXF1
ZUluZGV4VG9wRnJhbWVVbmlxdWVSZWRpcmVjdHNUbyA9ICJDUkVBVEUgVU5JUVVFIElOREVYIElG
IE5PVCBFWElTVFMgVG9wRnJhbWVVbmlxdWVSZWRpcmVjdHNUb19zb3VyY2VEb21haW5JRF90b0Rv
bWFpbklEIG9uIFRvcEZyYW1lVW5pcXVlUmVkaXJlY3RzVG8gKCBzb3VyY2VEb21haW5JRCwgdG9E
b21haW5JRCApOyJfczsKQEAgLTMwMCw4ICsyOTUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4mIGNyZWF0ZVRhYmxlUXVlcmllcygpCiAgICAgICAgIHsgIlN1YnJlc291
cmNlVW5pcXVlUmVkaXJlY3RzRnJvbSJfcywgY3JlYXRlU3VicmVzb3VyY2VVbmlxdWVSZWRpcmVj
dHNGcm9tfSwKICAgICAgICAgeyAiT3BlcmF0aW5nRGF0ZXMiX3MsIGNyZWF0ZU9wZXJhdGluZ0Rh
dGVzfSwKICAgICAgICAgeyAiVW5hdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQiX3Ms
IGNyZWF0ZVVuYXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50fSwKLSAgICAgICAgeyAi
QXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50Il9zLCBjcmVhdGVBdHRyaWJ1dGVkUHJp
dmF0ZUNsaWNrTWVhc3VyZW1lbnR9LAotICAgICAgICB7ICJUaW1lckxhc3RGaXJlZCJfcywgY3Jl
YXRlVGltZXJMYXN0RmlyZWR9CisgICAgICAgIHsgIkF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFz
dXJlbWVudCJfcywgY3JlYXRlQXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50fQogICAg
IH0pOwogICAgIAogICAgIHJldHVybiBjcmVhdGVUYWJsZVF1ZXJpZXM7CkBAIC0zMzIsNyArMzI2
LDYgQEAgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OlJlc291cmNlTG9hZFN0
YXRpc3RpY3NEYXRhYmFzZVN0b3JlKFdlYlJlc28KICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1Io
TmV0d29yaywgIiVwIC0gUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnR1cm5P
bkluY3JlbWVudGFsQXV0b1ZhY3V1bSBmYWlsZWQsIGVycm9yIG1lc3NhZ2U6ICUiIFBVQkxJQ19M
T0dfU1RSSU5HLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsKIAogICAgIGluY2x1
ZGVUb2RheUFzT3BlcmF0aW5nRGF0ZUlmTmVjZXNzYXJ5KCk7Ci0gICAgdXBkYXRlUHJpdmF0ZUNs
aWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblRpbWVzKCk7CiAgICAgYWxsU3RvcmVzKCkuYWRkKHRo
aXMpOwogfQogCkBAIC02ODEsMTEgKzY3NCw2IEBAIGJvb2wgUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0RhdGFiYXNlU3RvcmU6OmNyZWF0ZVNjaGVtYSgpCiAgICAgICAgIExPR19FUlJPUigiQ291bGQg
bm90IGNyZWF0ZSBBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQgdGFibGUgaW4gZGF0
YWJhc2UgKCVpKSAtICVzIiwgbV9kYXRhYmFzZS5sYXN0RXJyb3IoKSwgbV9kYXRhYmFzZS5sYXN0
RXJyb3JNc2coKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgaWYg
KCFtX2RhdGFiYXNlLmV4ZWN1dGVDb21tYW5kKGNyZWF0ZVRpbWVyTGFzdEZpcmVkKSkgewotICAg
ICAgICBMT0dfRVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgVGltZXJMYXN0RmlyZWQgdGFibGUgaW4g
ZGF0YWJhc2UgKCVpKSAtICVzIiwgbV9kYXRhYmFzZS5sYXN0RXJyb3IoKSwgbV9kYXRhYmFzZS5s
YXN0RXJyb3JNc2coKSk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9CiAKICAgICBpZiAo
IWNyZWF0ZVVuaXF1ZUluZGljZXMoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNzQ0LDgg
KzczMiw2IEBAIHZvaWQgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OmRlc3Ry
b3lTdGF0ZW1lbnRzKCkKICAgICBtX2FsbEF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dFN0YXRlbWVudCA9IG51bGxwdHI7CiAgICAgbV9maW5kVW5hdHRyaWJ1dGVkU3RhdGVtZW50ID0g
bnVsbHB0cjsKICAgICBtX2ZpbmRBdHRyaWJ1dGVkU3RhdGVtZW50ID0gbnVsbHB0cjsKLSAgICBt
X3VwZGF0ZVRpbWVyTGFzdEZpcmVkU3RhdGVtZW50ID0gbnVsbHB0cjsKLSAgICBtX3RpbWVyTGFz
dEZpcmVkU3RhdGVtZW50ID0gbnVsbHB0cjsKICAgICBtX3VwZGF0ZUF0dHJpYnV0aW9uc0Vhcmxp
ZXN0VGltZVRvU2VuZFN0YXRlbWVudCA9IG51bGxwdHI7CiAgICAgbV9yZW1vdmVVbmF0dHJpYnV0
ZWRTdGF0ZW1lbnQgPSBudWxscHRyOwogfQpAQCAtMjg5MCw1NCArMjg3Niw2IEBAIHZvaWQgUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6Omluc2VydEV4cGlyZWRTdGF0aXN0aWNG
b3JUZXN0aW5nKGNvbnN0CiAgICAgfQogfQogCi12b2lkIFJlc291cmNlTG9hZFN0YXRpc3RpY3NE
YXRhYmFzZVN0b3JlOjp1cGRhdGVUaW1lckxhc3RGaXJlZCgpCi17Ci0gICAgYXV0byBzY29wZWRT
dGF0ZW1lbnQgPSB0aGlzLT5zY29wZWRTdGF0ZW1lbnQobV91cGRhdGVUaW1lckxhc3RGaXJlZFN0
YXRlbWVudCwgdXBkYXRlVGltZXJMYXN0RmlyZWRRdWVyeSwgInVwZGF0ZVRpbWVyTGFzdEZpcmVk
Il9zKTsKLQotICAgIGF1dG8gbm93ID0gV2FsbFRpbWU6Om5vdygpLnNlY29uZHNTaW5jZUVwb2No
KCkudmFsdWUoKTsKLQotICAgIGlmICghc2NvcGVkU3RhdGVtZW50Ci0gICAgICAgIHx8IHNjb3Bl
ZFN0YXRlbWVudC0+YmluZERvdWJsZSgxLCBub3cpICE9IFNRTElURV9PSwotICAgICAgICB8fCBz
Y29wZWRTdGF0ZW1lbnQtPnN0ZXAoKSAhPSBTUUxJVEVfRE9ORSkgewotICAgICAgICBSRUxFQVNF
X0xPR19FUlJPUihOZXR3b3JrLCAiJXAgLSBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VT
dG9yZTo6dXBkYXRlVGltZXJMYXN0RmlyZWQgZmFpbGVkLCBlcnJvciBtZXNzYWdlOiAle3ByaXZh
dGV9cyIsIHRoaXMsIG1fZGF0YWJhc2UubGFzdEVycm9yTXNnKCkpOwotICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKLSAgICB9Ci19Ci0KLVdhbGxUaW1lIFJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NEYXRhYmFzZVN0b3JlOjp0aW1lckxhc3RGaXJlZCgpCi17Ci0gICAgYXV0byBzY29wZWRTdGF0
ZW1lbnQgPSB0aGlzLT5zY29wZWRTdGF0ZW1lbnQobV90aW1lckxhc3RGaXJlZFN0YXRlbWVudCwg
dGltZXJMYXN0RmlyZWRRdWVyeSwgInRpbWVyTGFzdEZpcmVkIl9zKTsKLQotICAgIGlmICghc2Nv
cGVkU3RhdGVtZW50KSB7Ci0gICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQobV9z
ZXNzaW9uSUQsICIlcCAtIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlOjp0aW1l
ckxhc3RGaXJlZCwgZXJyb3IgbWVzc2FnZTogJXtwcml2YXRlfXMiLCB0aGlzLCBtX2RhdGFiYXNl
Lmxhc3RFcnJvck1zZygpKTsKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgfQot
Ci0gICAgaWYgKHNjb3BlZFN0YXRlbWVudC0+c3RlcCgpID09IFNRTElURV9ST1cpCi0gICAgICAg
IHJldHVybiBXYWxsVGltZTo6ZnJvbVJhd1NlY29uZHMoc2NvcGVkU3RhdGVtZW50LT5nZXRDb2x1
bW5Eb3VibGUoMCkpOwotICAgIAotICAgIHJldHVybiBXYWxsVGltZTo6bm93KCk7Ci19Ci0KLXZv
aWQgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVwZGF0ZVByaXZhdGVDbGlj
a01lYXN1cmVtZW50QXR0cmlidXRpb25UaW1lcygpCi17Ci0gICAgLy8gV2Ugc2hvdWxkIHVwZGF0
ZSBhdHRyaWJ1dGlvbnMgb24gc2Vzc2lvbi1zdGFydCB0byBhY2NvdW50IGZvciB0aGUgdGltZQot
ICAgIC8vIHRoYXQgcGFzc2VkIHdoaWxlIHRoZSBzZXNzaW9uIHdhcyBjbG9zZWQuIElmIHRoZSBh
bW91bnQgb2YgdGltZSBzaW5jZSB0aGUgbGFzdAotICAgIC8vIHRpbWVyIGZpcmUgaXMgZ3JlYXRl
ciB0aGFuIHRoZSBlYXJsaWVzdFRpbWVUb1NlbmQsIHdlIHNob3VsZCBzZXQgZWFybGllc3RUaW1l
VG9TZW5kCi0gICAgLy8gdG8gYmUgaW1tZWRpYXRlbHkuCi0gICAgYXV0byBsYXN0RmlyZWQgPSB0
aW1lckxhc3RGaXJlZCgpOwotICAgIGF1dG8gdGltZVBhc3NlZCA9IFdhbGxUaW1lOjpub3coKSAt
IGxhc3RGaXJlZDsKLQotICAgIGF1dG8gc2NvcGVkU3RhdGVtZW50ID0gdGhpcy0+c2NvcGVkU3Rh
dGVtZW50KG1fdXBkYXRlQXR0cmlidXRpb25zRWFybGllc3RUaW1lVG9TZW5kU3RhdGVtZW50LCB1
cGRhdGVBdHRyaWJ1dGlvbnNFYXJsaWVzdFRpbWVUb1NlbmRRdWVyeSwgInVwZGF0ZVByaXZhdGVD
bGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UaW1lcyJfcyk7Ci0KLSAgICBpZiAoIXNjb3BlZFN0
YXRlbWVudAotICAgICAgICB8fCBzY29wZWRTdGF0ZW1lbnQtPmJpbmREb3VibGUoMSwgdGltZVBh
c3NlZC52YWx1ZSgpKSAhPSBTUUxJVEVfT0sKLSAgICAgICAgfHwgc2NvcGVkU3RhdGVtZW50LT5z
dGVwKCkgIT0gU1FMSVRFX0RPTkUpIHsKLSAgICAgICAgUkVMRUFTRV9MT0dfRVJST1JfSUZfQUxM
T1dFRChtX3Nlc3Npb25JRCwgIiVwIC0gUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3Rv
cmU6OnVwZGF0ZVByaXZhdGVDbGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UaW1lcywgZXJyb3Ig
bWVzc2FnZTogJXtwcml2YXRlfXMiLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsK
LSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgfQotfQotCiBQcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudCBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZTo6YnVpbGRQcml2
YXRlQ2xpY2tNZWFzdXJlbWVudEZyb21EYXRhYmFzZShXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQq
IHN0YXRlbWVudCwgUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblR5cGUgYXR0cmli
dXRpb25UeXBlKQogewogICAgIGF1dG8gc291cmNlU2l0ZURvbWFpbiA9IGdldERvbWFpblN0cmlu
Z0Zyb21Eb21haW5JRChzdGF0ZW1lbnQtPmdldENvbHVtbkludCgwKSk7CkBAIC0zMzE1LDIxICsz
MjUzLDExIEBAIHZvaWQgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OmNsZWFy
U2VudEF0dHJpYnV0aW9ucyhWZWN0b3I8V2ViQ29yZTo6CiAKIHZvaWQgUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0RhdGFiYXNlU3RvcmU6Om1hcmtBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1l
bnRzQXNFeHBpcmVkRm9yVGVzdGluZygpCiB7Ci0gICAgLy8gVXBkYXRlIHRoZSBsYXN0IHRpbWVy
IGZpcmVkIHRpbWUgdG8gYmUgb25lIGRheSBhZ28uCi0gICAgYXV0byB5ZXN0ZXJkYXkgPSAoV2Fs
bFRpbWU6Om5vdygpIC0gMjRfaCkuc2Vjb25kc1NpbmNlRXBvY2goKS52YWx1ZSgpOwotICAgIGF1
dG8gc2NvcGVkU3RhdGVtZW50ID0gdGhpcy0+c2NvcGVkU3RhdGVtZW50KG1fdXBkYXRlVGltZXJM
YXN0RmlyZWRTdGF0ZW1lbnQsIHVwZGF0ZVRpbWVyTGFzdEZpcmVkUXVlcnksICJpbnNlcnRFeHBp
cmVkQXR0cmlidXRpb25UZXN0aW5nIl9zKTsKLSAgICBpZiAoIXNjb3BlZFN0YXRlbWVudAotICAg
ICAgICB8fCBzY29wZWRTdGF0ZW1lbnQtPmJpbmREb3VibGUoMSwgeWVzdGVyZGF5KSAhPSBTUUxJ
VEVfT0sKLSAgICAgICAgfHwgc2NvcGVkU3RhdGVtZW50LT5zdGVwKCkgIT0gU1FMSVRFX0RPTkUp
IHsKLSAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgIiVwIC0gUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6Omluc2VydEV4cGlyZWRBdHRyaWJ1dGlvblRlc3Rpbmcg
ZmFpbGVkLCBlcnJvciBtZXNzYWdlOiAle3ByaXZhdGV9cyIsIHRoaXMsIG1fZGF0YWJhc2UubGFz
dEVycm9yTXNnKCkpOwotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9Ci0KLSAg
ICBhdXRvIGV4cGlyZWRUaW1lVG9TZW5kID0gMV9oOyAvLyBNdXN0IGJlIGxlc3MgdGhhbiAxIGRh
eS4KKyAgICBhdXRvIGV4cGlyZWRUaW1lVG9TZW5kID0gV2FsbFRpbWU6Om5vdygpIC0gMV9oOwog
ICAgIAogICAgIGF1dG8gc3RhdGVtZW50ID0gU1FMaXRlU3RhdGVtZW50KG1fZGF0YWJhc2UsICJV
UERBVEUgQXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50IFNFVCBlYXJsaWVzdFRpbWVU
b1NlbmQgPSA/Iik7CiAgICAgaWYgKHN0YXRlbWVudC5wcmVwYXJlKCkgIT0gU1FMSVRFX09LCi0g
ICAgICAgIHx8IHN0YXRlbWVudC5iaW5kSW50KDEsIGV4cGlyZWRUaW1lVG9TZW5kLnZhbHVlKCkp
ICE9IFNRTElURV9PSworICAgICAgICB8fCBzdGF0ZW1lbnQuYmluZEludCgxLCBleHBpcmVkVGlt
ZVRvU2VuZC5zZWNvbmRzU2luY2VFcG9jaCgpLnZhbHVlKCkpICE9IFNRTElURV9PSwogICAgICAg
ICB8fCBzdGF0ZW1lbnQuc3RlcCgpICE9IFNRTElURV9ET05FKSB7CiAgICAgICAgIFJFTEVBU0Vf
TE9HX0VSUk9SX0lGX0FMTE9XRUQobV9zZXNzaW9uSUQsICIlcCAtIFJlc291cmNlTG9hZFN0YXRp
c3RpY3NEYXRhYmFzZVN0b3JlOjppbnNlcnRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudCwgZXJyb3Ig
bWVzc2FnZTogJXtwcml2YXRlfXMiLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsK
ICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNl
U3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5oCmluZGV4IGJhZGM3ZWU2YTFjZmQ0MzJhNjU1
ODY4NzNmYTEwOGNiODdjNzczNDEuLmNhZjU0NzMxOTRmNTE0YTY4MTI4ZWZlZWQxMzk2NzRjN2Ji
ZDEwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmll
ci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJh
c2VTdG9yZS5oCkBAIC0xNDAsOSArMTQwLDcgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXJFeHBp
cmVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQoKSBvdmVycmlkZTsKICAgICBTdHJpbmcgcHJpdmF0
ZUNsaWNrTWVhc3VyZW1lbnRUb1N0cmluZygpIG92ZXJyaWRlOwogICAgIHZvaWQgY2xlYXJTZW50
QXR0cmlidXRpb25zKFZlY3RvcjxXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4mJikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVUaW1lckxhc3RGaXJlZCgpIG92ZXJyaWRlOwogICAg
IHZvaWQgbWFya0F0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGlyZWRGb3JU
ZXN0aW5nKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVQcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dEF0dHJpYnV0aW9uVGltZXMoKTsKIAogcHJpdmF0ZToKICAgICB2b2lkIGluY2x1ZGVUb2RheUFz
T3BlcmF0aW5nRGF0ZUlmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CkBAIC0yMzcsNyArMjM1LDYgQEAg
cHJpdmF0ZToKICAgICBXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudCBidWlsZFByaXZh
dGVDbGlja01lYXN1cmVtZW50RnJvbURhdGFiYXNlKFdlYkNvcmU6OlNRTGl0ZVN0YXRlbWVudCos
IFByaXZhdGVDbGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UeXBlKTsKICAgICBTdHJpbmcgYXR0
cmlidXRpb25Ub1N0cmluZyhXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQqLCBQcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudEF0dHJpYnV0aW9uVHlwZSk7CiAgICAgc3RkOjpwYWlyPE9wdGlvbmFsPFVuYXR0
cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50PiwgT3B0aW9uYWw8QXR0cmlidXRlZFByaXZh
dGVDbGlja01lYXN1cmVtZW50Pj4gZmluZFByaXZhdGVDbGlja01lYXN1cmVtZW50KGNvbnN0IFdl
YkNvcmU6OlByaXZhdGVDbGlja01lYXN1cmVtZW50OjpTb3VyY2VTaXRlJiwgY29uc3QgV2ViQ29y
ZTo6UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQ6OkF0dHJpYnV0ZU9uU2l0ZSYpOwotICAgIFdhbGxU
aW1lIHRpbWVyTGFzdEZpcmVkKCk7CiAKICAgICBjb25zdCBTdHJpbmcgbV9zdG9yYWdlRGlyZWN0
b3J5UGF0aDsKICAgICBtdXRhYmxlIFdlYkNvcmU6OlNRTGl0ZURhdGFiYXNlIG1fZGF0YWJhc2U7
CkBAIC0yODgsOCArMjg1LDYgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29y
ZTo6U1FMaXRlU3RhdGVtZW50PiBtX2FsbEF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dFN0YXRlbWVudDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6U1FMaXRlU3RhdGVtZW50
PiBtX2ZpbmRVbmF0dHJpYnV0ZWRTdGF0ZW1lbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNv
cmU6OlNRTGl0ZVN0YXRlbWVudD4gbV9maW5kQXR0cmlidXRlZFN0YXRlbWVudDsKLSAgICBzdGQ6
OnVuaXF1ZV9wdHI8V2ViQ29yZTo6U1FMaXRlU3RhdGVtZW50PiBtX3VwZGF0ZVRpbWVyTGFzdEZp
cmVkU3RhdGVtZW50OwotICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpTUUxpdGVTdGF0ZW1l
bnQ+IG1fdGltZXJMYXN0RmlyZWRTdGF0ZW1lbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNv
cmU6OlNRTGl0ZVN0YXRlbWVudD4gbV91cGRhdGVBdHRyaWJ1dGlvbnNFYXJsaWVzdFRpbWVUb1Nl
bmRTdGF0ZW1lbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlNRTGl0ZVN0YXRlbWVu
dD4gbV9yZW1vdmVVbmF0dHJpYnV0ZWRTdGF0ZW1lbnQ7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c01lbW9yeVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIv
UmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmgKaW5kZXggZjg1YTE1ZGM0ZmE2MzVj
Njk1MzM2MGY0YTRhZTdjNzhlYWNmOTY1MC4uMmFkYzE1NzlkNWEyYzIwN2VjOThiOGFjYWVkOTZj
MDUwMjIwN2UwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFz
c2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVt
b3J5U3RvcmUuaApAQCAtMTE4LDcgKzExOCw2IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgcHJpdmF0
ZUNsaWNrTWVhc3VyZW1lbnRUb1N0cmluZygpIG92ZXJyaWRlIHsgcmV0dXJuIFN0cmluZygpOyB9
OwogICAgIHZvaWQgY2xlYXJTZW50QXR0cmlidXRpb25zKFZlY3RvcjxXZWJDb3JlOjpQcml2YXRl
Q2xpY2tNZWFzdXJlbWVudD4mJikgb3ZlcnJpZGUgeyB9OwogICAgIHZvaWQgbWFya0F0dHJpYnV0
ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGlyZWRGb3JUZXN0aW5nKCkgb3ZlcnJpZGUg
eyB9OwotICAgIHZvaWQgdXBkYXRlVGltZXJMYXN0RmlyZWQoKSBvdmVycmlkZSB7IH07CiAKIHBy
aXZhdGU6CiAgICAgdm9pZCBpbmNsdWRlVG9kYXlBc09wZXJhdGluZ0RhdGVJZk5lY2Vzc2FyeSgp
IG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFz
c2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCmluZGV4
IDYyZTAzNWJlMDBkMDE4NjYyYTc1MjZjZjhmOTcxMDAxMGZkNDFjNzguLjViZmU3N2NhYTUwZWZm
OTljZjBhYjZmYzYyZjZhNDM2N2U1YTM2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlLmgKQEAgLTIxMyw3ICsyMTMsNiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBT
dHJpbmcgcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRUb1N0cmluZygpID0gMDsKICAgICB2aXJ0dWFs
IHZvaWQgY2xlYXJTZW50QXR0cmlidXRpb25zKFZlY3RvcjxXZWJDb3JlOjpQcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudD4mJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBtYXJrQXR0cmlidXRlZFByaXZh
dGVDbGlja01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcoKSA9IDA7Ci0gICAgdmlydHVh
bCB2b2lkIHVwZGF0ZVRpbWVyTGFzdEZpcmVkKCkgPSAwOwogCiBwcm90ZWN0ZWQ6CiAgICAgc3Rh
dGljIHVuc2lnbmVkIGNvbXB1dGVJbXBvcnRhbmNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9h
ZFN0YXRpc3RpY3MmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Q2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZS5jcHAKaW5kZXggZjQwNjBlZTI4YTVjNDE5YjBiNjYyYjI2NmFkOTAzOGFhNTM1MjI3ZS4u
NGU4OGU2NzYwMDY4NDljMWE2NTNjMzFmYmM1YTJjODNmMTczNzJmMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lm
aWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKQEAgLTE0NzUsMjEgKzE0NzUs
NiBAQCB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6aW5zZXJ0RXhwaXJlZFN0
YXRpc3RpY0ZvclRlc3RpbmcoY29uc3QgUmVnaQogICAgIH0pOwogfQogCi12b2lkIFdlYlJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6dXBkYXRlVGltZXJMYXN0RmlyZWQoKQotewotICAgIEFT
U0VSVChSdW5Mb29wOjppc01haW4oKSk7Ci0KLSAgICBpZiAoaXNFcGhlbWVyYWwoKSkKLSAgICAg
ICAgcmV0dXJuOwotCi0gICAgcG9zdFRhc2soW3RoaXNdKCkgbXV0YWJsZSB7Ci0gICAgICAgIGlm
ICghbV9zdGF0aXN0aWNzU3RvcmUpCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgbV9z
dGF0aXN0aWNzU3RvcmUtPnVwZGF0ZVRpbWVyTGFzdEZpcmVkKCk7Ci0gICAgfSk7Ci19Ci0KIHZv
aWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjppbnNlcnRQcml2YXRlQ2xpY2tNZWFz
dXJlbWVudChQcml2YXRlQ2xpY2tNZWFzdXJlbWVudCYmIGF0dHJpYnV0aW9uLCBQcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudEF0dHJpYnV0aW9uVHlwZSBhdHRyaWJ1dGlvblR5cGUpCiB7CiAgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzU3RvcmUuaAppbmRleCAzNWQyNGM3YTNmOWY2NDczYTJlZTFiNjQ0ODY5YTQ3MjcxMTI1
YzY2Li43ZjViNTdiODllYTQwYWI4ZDcyZDY3ZjZiZjAzMmM0NjE3M2M0NWU4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFz
c2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCkBAIC0zMTYsNyArMzE2LDYg
QEAgc3RydWN0IFRoaXJkUGFydHlEYXRhIHsKICAgICB2b2lkIGNsZWFyRXhwaXJlZFByaXZhdGVD
bGlja01lYXN1cmVtZW50KCk7CiAgICAgdm9pZCBwcml2YXRlQ2xpY2tNZWFzdXJlbWVudFRvU3Ry
aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoU3RyaW5nKT4mJik7CiAgICAgdm9pZCBjbGVhclNl
bnRBdHRyaWJ1dGlvbnMoVmVjdG9yPFdlYkNvcmU6OlByaXZhdGVDbGlja01lYXN1cmVtZW50PiYm
KTsKLSAgICB2b2lkIHVwZGF0ZVRpbWVyTGFzdEZpcmVkKCk7CiAgICAgdm9pZCBtYXJrQXR0cmli
dXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2VyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2Vy
LmNwcAppbmRleCBkNmY0YzYyNTBiODA0NmE5Y2ZhZTYxYjEyNzZkMmM5NzJlZDAzNzkxLi41YzY5
YTRjN2FmNzgxODMyMjhhZWE0YmZjYzU5ZTY2ZGJkYjNlZmNjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL1ByaXZhdGVDbGlja01lYXN1cmVtZW50TWFuYWdlci5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Qcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dE1hbmFnZXIuY3BwCkBAIC0xODgsMTcgKzE4OCw2IEBAIHZvaWQgUHJpdmF0ZUNsaWNrTWVhc3Vy
ZW1lbnRNYW5hZ2VyOjpjbGVhclNlbnRBdHRyaWJ1dGlvbnMoVmVjdG9yPFByaXZhdGVDbGlja01l
CiAjZW5kaWYKIH0KIAotdm9pZCBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1hbmFnZXI6OnVwZGF0
ZVRpbWVyTGFzdEZpcmVkKCkKLXsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNT
KQotICAgIGlmICghZmVhdHVyZUVuYWJsZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYg
KGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX25ldHdvcmtTZXNzaW9uLT5yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzKCkpCi0gICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnVwZGF0
ZVRpbWVyTGFzdEZpcmVkKCk7Ci0jZW5kaWYKLX0KLQogdm9pZCBQcml2YXRlQ2xpY2tNZWFzdXJl
bWVudE1hbmFnZXI6OmZpcmVQZW5kaW5nQXR0cmlidXRpb25SZXF1ZXN0cygpCiB7CiAjaWYgRU5B
QkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKQEAgLTIzMiw3ICsyMjEsNiBAQCB2b2lkIFBy
aXZhdGVDbGlja01lYXN1cmVtZW50TWFuYWdlcjo6ZmlyZVBlbmRpbmdBdHRyaWJ1dGlvblJlcXVl
c3RzKCkKICAgICAgICAgfQogICAgICAgICAKICAgICAgICAgY2xlYXJTZW50QXR0cmlidXRpb25z
KFdURk1vdmUoc2VudEF0dHJpYnV0aW9ucykpOwotICAgICAgICB1cGRhdGVUaW1lckxhc3RGaXJl
ZCgpOwogCiAgICAgICAgIGlmIChuZXh0VGltZVRvRmlyZSA8IFNlY29uZHM6OmluZmluaXR5KCkp
CiAgICAgICAgICAgICBzdGFydFRpbWVyKG5leHRUaW1lVG9GaXJlKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2Vy
LmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1ByaXZhdGVDbGlja01lYXN1cmVtZW50
TWFuYWdlci5oCmluZGV4IDhhM2U4NjQ5ZjU5NDgxYTlkY2JjZWFiM2IyYTZkMTdkZmFjZWRhZGEu
LjJmZmNhNDFiN2E2ZDE1Zjk2MjI2NTdiNTZkNTBiNTlmYjY0OGNhNjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2Vy
LmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Qcml2YXRlQ2xpY2tNZWFzdXJl
bWVudE1hbmFnZXIuaApAQCAtNzQsNyArNzQsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY2xlYXJF
eHBpcmVkKCk7CiAgICAgYm9vbCBmZWF0dXJlRW5hYmxlZCgpIGNvbnN0OwogICAgIGJvb2wgZGVi
dWdNb2RlRW5hYmxlZCgpIGNvbnN0OwotICAgIHZvaWQgdXBkYXRlVGltZXJMYXN0RmlyZWQoKTsK
IAogICAgIFdlYkNvcmU6OlRpbWVyIG1fZmlyZVBlbmRpbmdBdHRyaWJ1dGlvblJlcXVlc3RzVGlt
ZXI7CiAgICAgYm9vbCBtX2lzUnVubmluZ1Rlc3QgeyBmYWxzZSB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419188</attachid>
            <date>2021-02-03 15:15:38 -0800</date>
            <delta_ts>2021-02-03 15:58:51 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-221303-20210203151537.patch</filename>
            <type>text/plain</type>
            <size>19700</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMjM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM4MjcxYjMwOGEwMWM1ZjM3
NGZiNGU5MzE1ZTI4YzRlMzFmODRlZTEuLmI3OGM4ZGQ4NGIyMDI2NTk3MGVjOGQzNGNiZTE5ODA4
NTEzNDZhMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjEtMDItMDIgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgUENNOiBlYXJsaWVz
dFRpbWVUb1NlbmQgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYW4gaW5kZXBlbmRlbnQgdGltZSB2YWx1
ZSwgbm90IHJlbGF0aXZlIHRvIHRpbWVPZkFkQ2xpY2sKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTMwMworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NzM5MDI2Njg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgSm9obiBXaWxhbmRlci4KKworICAgICAg
ICByMjcwMTM2IGFzc3VtZWQgdGhhdCBQQ00ncyBlYXJsaWVzdFRpbWVUb1NlbmQgYXR0cmlidXRl
IHdhcyB0aGUKKyAgICAgICAgZGlmZmVyZW5jZSBiZXR3ZWVuIHRpbWVPZkFkQ2xpY2sgYW5kIHdo
ZW4gdGhlIGF0dHJpYnV0aW9uIHNob3VsZCBiZQorICAgICAgICBzZW50LiBBcyBhIHJlc3VsdCwg
aXQgYmVnYW4gZWFjaCBuZXcgYnJvd3NlciBzZXNzaW9uIGJ5IGFkanVzdGluZworICAgICAgICB0
aGlzIHZhbHVlIGJhc2VkIG9uIHRoZSBhbW91bnQgb2YgdGltZSB0aGUgc2Vzc2lvbiB3YXMgY2xv
c2VkLiAKKyAgICAgICAgSW4gcmVhbGl0eSwgZWFybGllc3RUaW1lVG9TZW5kIGlzIGEgcmF3IHNl
Y29uZHNTaW5jZUVwb2NoKCkgdmFsdWUsIHNvIHdlIGRvbid0CisgICAgICAgIG5lZWQgYW55IGFk
anVzdG1lbnQgYWZ0ZXIgYSBuZXcgc2Vzc2lvbi4KKworICAgICAgICBObyBuZXcgdGVzdHMsIHRo
aXMgaXMgY292ZXJlZCBieSAKKyAgICAgICAgaHR0cC90ZXN0cy9wcml2YXRlQ2xpY2tNZWFzdXJl
bWVudC9leHBpcmVkLWF0dHJpYnV0aW9uLXJlcG9ydC1nZXRzLXNlbnQtb24tc2Vzc2lvbi1zdGFy
dC5odG1sCisgICAgICAgIG5vdyB0aGF0IHRoZSBjb3JyZXNwb25kaW5nIHRlc3QgU1BJIGhhcyBi
ZWVuIHVwZGF0ZWQuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291
cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Y3Jl
YXRlVGFibGVRdWVyaWVzKToKKyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0RhdGFiYXNlU3RvcmU6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlKToKKyAg
ICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OmNyZWF0
ZVNjaGVtYSk6CisgICAgICAgIChXZWJLaXQ6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFz
ZVN0b3JlOjpkZXN0cm95U3RhdGVtZW50cyk6CisgICAgICAgIChXZWJLaXQ6OlJlc291cmNlTG9h
ZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlOjptYXJrQXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1
cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcpOgorICAgICAgICBVcGRhdGUgdGhlIHRlc3Rpbmcg
U1BJIHRvIGluc2VydCBhbiBleHBpcmVkIHRpbWUgb2Ygbm93IG1pbnVzIG9uZQorICAgICAgICBo
b3VyIGFzIHRoZSBlYXJsaWVzdFRpbWVUb1NlbmQuCisKKyAgICAgICAgKFdlYktpdDo6UmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVwZGF0ZVRpbWVyTGFzdEZpcmVkKTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3Rv
cmU6OnRpbWVyTGFzdEZpcmVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVwZGF0ZVByaXZhdGVDbGlja01lYXN1cmVtZW50
QXR0cmlidXRpb25UaW1lcyk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xh
c3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5oOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0
b3JlLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzU3RvcmUuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6dXBkYXRlVGltZXJMYXN0RmlyZWQpOiBEZWxldGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVh
c3VyZW1lbnRNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJpdmF0ZUNsaWNrTWVhc3Vy
ZW1lbnRNYW5hZ2VyOjpmaXJlUGVuZGluZ0F0dHJpYnV0aW9uUmVxdWVzdHMpOgorICAgICAgICAo
V2ViS2l0OjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1hbmFnZXI6OnVwZGF0ZVRpbWVyTGFzdEZp
cmVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9Qcml2YXRlQ2xpY2tNZWFz
dXJlbWVudE1hbmFnZXIuaDoKKwogMjAyMS0wMi0wMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlbW92ZSBhbGwgdXNlIG9mIF9VSUV2ZW50
QXR0cmlidXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xh
c3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0Rh
dGFiYXNlU3RvcmUuY3BwCmluZGV4IGUzZDQyZGU0NTVlYjIxOThmZDY1YWY5MTYxNGFlNjZhYzgz
NzliMWMuLjU1NjQ2MTI0NmE3NDE5Mzg2MGY2YWNhZWU0YTEyYWZiNzQ5ZGIyMzIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcApA
QCAtODUsNyArODUsNiBAQCBjb25zdGV4cHIgYXV0byBpbnNlcnRVbmF0dHJpYnV0ZWRQcml2YXRl
Q2xpY2tNZWFzdXJlbWVudFF1ZXJ5ID0gIklOU0VSVCBPUiBSRVBMQQogICAgICJzb3VyY2VJRCwg
dGltZU9mQWRDbGljaykgVkFMVUVTICg/LCA/LCA/LCA/KSJfczsKIGNvbnN0ZXhwciBhdXRvIGlu
c2VydEF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudFF1ZXJ5ID0gIklOU0VSVCBPUiBS
RVBMQUNFIElOVE8gQXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50IChzb3VyY2VTaXRl
RG9tYWluSUQsIGF0dHJpYnV0ZU9uU2l0ZURvbWFpbklELCAiCiAgICAgInNvdXJjZUlELCBhdHRy
aWJ1dGlvblRyaWdnZXJEYXRhLCBwcmlvcml0eSwgdGltZU9mQWRDbGljaywgZWFybGllc3RUaW1l
VG9TZW5kKSBWQUxVRVMgKD8sID8sID8sID8sID8sID8sID8pIl9zOwotY29uc3RleHByIGF1dG8g
dXBkYXRlVGltZXJMYXN0RmlyZWRRdWVyeSA9ICJJTlNFUlQgT1IgUkVQTEFDRSBJTlRPIFRpbWVy
TGFzdEZpcmVkIChrZXksIHRpbWVMYXN0RmlyZWRTZWNvbmRzKSBWQUxVRVMgKDEsID8pIl9zOwog
CiAvLyBJTlNFUlQgT1IgUkVQTEFDRSBRdWVyaWVzCiBjb25zdGV4cHIgYXV0byBzdWJmcmFtZVVu
ZGVyVG9wRnJhbWVEb21haW5zUXVlcnkgPSAiSU5TRVJUIE9SIFJFUExBQ0UgaW50byBTdWJmcmFt
ZVVuZGVyVG9wRnJhbWVEb21haW5zIChzdWJGcmFtZURvbWFpbklELCBsYXN0VXBkYXRlZCwgdG9w
RnJhbWVEb21haW5JRCkgU0VMRUNUID8sID8sIGRvbWFpbklEIEZST00gT2JzZXJ2ZWREb21haW5z
IHdoZXJlIHJlZ2lzdHJhYmxlRG9tYWluIGluICggIl9zOwpAQCAtMTQzLDcgKzE0Miw2IEBAIGNv
bnN0ZXhwciBhdXRvIGFsbFVuYXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50QXR0cmli
dXRpb25zUXVlcnkgPSAiU0VMRUNUCiBjb25zdGV4cHIgYXV0byBhbGxBdHRyaWJ1dGVkUHJpdmF0
ZUNsaWNrTWVhc3VyZW1lbnRRdWVyeSA9ICJTRUxFQ1QgKiBGUk9NIEF0dHJpYnV0ZWRQcml2YXRl
Q2xpY2tNZWFzdXJlbWVudCJfczsKIGNvbnN0ZXhwciBhdXRvIGZpbmRVbmF0dHJpYnV0ZWRRdWVy
eSA9ICJTRUxFQ1QgKiBGUk9NIFVuYXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50IFdI
RVJFIHNvdXJjZVNpdGVEb21haW5JRCA9ID8gQU5EIGF0dHJpYnV0ZU9uU2l0ZURvbWFpbklEID0g
PyJfczsKIGNvbnN0ZXhwciBhdXRvIGZpbmRBdHRyaWJ1dGVkUXVlcnkgPSAiU0VMRUNUICogRlJP
TSBBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQgV0hFUkUgc291cmNlU2l0ZURvbWFp
bklEID0gPyBBTkQgYXR0cmlidXRlT25TaXRlRG9tYWluSUQgPSA/Il9zOwotY29uc3RleHByIGF1
dG8gdGltZXJMYXN0RmlyZWRRdWVyeSA9ICJTRUxFQ1QgdGltZUxhc3RGaXJlZFNlY29uZHMgRlJP
TSBUaW1lckxhc3RGaXJlZCBXSEVSRSBrZXkgPSAxIl9zOwogCiAvLyBFWElTVFMgZm9yIHRlc3Rp
bmcgcXVlcmllcwogY29uc3RleHByIGF1dG8gbGlua0RlY29yYXRpb25FeGlzdHNRdWVyeSA9ICJT
RUxFQ1QgRVhJU1RTIChTRUxFQ1QgKiBGUk9NIFRvcEZyYW1lTGlua0RlY29yYXRpb25zRnJvbSBX
SEVSRSB0b0RvbWFpbklEID0gPyBPUiBmcm9tRG9tYWluSUQgPSA/KSJfczsKQEAgLTI1MCw5ICsy
NDgsNiBAQCBjb25zdGV4cHIgYXV0byBjcmVhdGVBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3Vy
ZW1lbnQgPSAiQ1JFQVRFIFRBQkxFIEF0dHJpYnV0ZQogICAgICJGT1JFSUdOIEtFWShzb3VyY2VT
aXRlRG9tYWluSUQpIFJFRkVSRU5DRVMgT2JzZXJ2ZWREb21haW5zKGRvbWFpbklEKSBPTiBERUxF
VEUgQ0FTQ0FERSwgIgogICAgICJGT1JFSUdOIEtFWShhdHRyaWJ1dGVPblNpdGVEb21haW5JRCkg
UkVGRVJFTkNFUyBPYnNlcnZlZERvbWFpbnMoZG9tYWluSUQpIE9OIERFTEVURSBDQVNDQURFKTsi
X3M7CiAKLWNvbnN0ZXhwciBhdXRvIGNyZWF0ZVRpbWVyTGFzdEZpcmVkID0gIkNSRUFURSBUQUJM
RSBUaW1lckxhc3RGaXJlZCAoIGtleSBJTlRFR0VSIFBSSU1BUlkgS0VZLCAiCi0gICAgIiB0aW1l
TGFzdEZpcmVkU2Vjb25kcyBSRUFMIE5PVCBOVUxMICkiX3M7Ci0KIC8vIENSRUFURSBVTklRVUUg
SU5ERVggUXVlcmllcy4KIGNvbnN0ZXhwciBhdXRvIGNyZWF0ZVVuaXF1ZUluZGV4U3RvcmFnZUFj
Y2Vzc1VuZGVyVG9wRnJhbWVEb21haW5zID0gIkNSRUFURSBVTklRVUUgSU5ERVggSUYgTk9UIEVY
SVNUUyBTdG9yYWdlQWNjZXNzVW5kZXJUb3BGcmFtZURvbWFpbnNfZG9tYWluSURfdG9wTGV2ZWxE
b21haW5JRCBvbiBTdG9yYWdlQWNjZXNzVW5kZXJUb3BGcmFtZURvbWFpbnMgKCBkb21haW5JRCwg
dG9wTGV2ZWxEb21haW5JRCApOyJfczsKIGNvbnN0ZXhwciBhdXRvIGNyZWF0ZVVuaXF1ZUluZGV4
VG9wRnJhbWVVbmlxdWVSZWRpcmVjdHNUbyA9ICJDUkVBVEUgVU5JUVVFIElOREVYIElGIE5PVCBF
WElTVFMgVG9wRnJhbWVVbmlxdWVSZWRpcmVjdHNUb19zb3VyY2VEb21haW5JRF90b0RvbWFpbklE
IG9uIFRvcEZyYW1lVW5pcXVlUmVkaXJlY3RzVG8gKCBzb3VyY2VEb21haW5JRCwgdG9Eb21haW5J
RCApOyJfczsKQEAgLTMwMCw4ICsyOTUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaE1hcDxTdHJpbmcs
IFN0cmluZz4mIGNyZWF0ZVRhYmxlUXVlcmllcygpCiAgICAgICAgIHsgIlN1YnJlc291cmNlVW5p
cXVlUmVkaXJlY3RzRnJvbSJfcywgY3JlYXRlU3VicmVzb3VyY2VVbmlxdWVSZWRpcmVjdHNGcm9t
fSwKICAgICAgICAgeyAiT3BlcmF0aW5nRGF0ZXMiX3MsIGNyZWF0ZU9wZXJhdGluZ0RhdGVzfSwK
ICAgICAgICAgeyAiVW5hdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQiX3MsIGNyZWF0
ZVVuYXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50fSwKLSAgICAgICAgeyAiQXR0cmli
dXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50Il9zLCBjcmVhdGVBdHRyaWJ1dGVkUHJpdmF0ZUNs
aWNrTWVhc3VyZW1lbnR9LAotICAgICAgICB7ICJUaW1lckxhc3RGaXJlZCJfcywgY3JlYXRlVGlt
ZXJMYXN0RmlyZWR9CisgICAgICAgIHsgIkF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dCJfcywgY3JlYXRlQXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50fQogICAgIH0pOwog
ICAgIAogICAgIHJldHVybiBjcmVhdGVUYWJsZVF1ZXJpZXM7CkBAIC0zMzIsNyArMzI2LDYgQEAg
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OlJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NEYXRhYmFzZVN0b3JlKFdlYlJlc28KICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29y
aywgIiVwIC0gUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnR1cm5PbkluY3Jl
bWVudGFsQXV0b1ZhY3V1bSBmYWlsZWQsIGVycm9yIG1lc3NhZ2U6ICUiIFBVQkxJQ19MT0dfU1RS
SU5HLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsKIAogICAgIGluY2x1ZGVUb2Rh
eUFzT3BlcmF0aW5nRGF0ZUlmTmVjZXNzYXJ5KCk7Ci0gICAgdXBkYXRlUHJpdmF0ZUNsaWNrTWVh
c3VyZW1lbnRBdHRyaWJ1dGlvblRpbWVzKCk7CiAgICAgYWxsU3RvcmVzKCkuYWRkKHRoaXMpOwog
fQogCkBAIC02ODEsMTEgKzY3NCw2IEBAIGJvb2wgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFi
YXNlU3RvcmU6OmNyZWF0ZVNjaGVtYSgpCiAgICAgICAgIExPR19FUlJPUigiQ291bGQgbm90IGNy
ZWF0ZSBBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQgdGFibGUgaW4gZGF0YWJhc2Ug
KCVpKSAtICVzIiwgbV9kYXRhYmFzZS5sYXN0RXJyb3IoKSwgbV9kYXRhYmFzZS5sYXN0RXJyb3JN
c2coKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgaWYgKCFtX2Rh
dGFiYXNlLmV4ZWN1dGVDb21tYW5kKGNyZWF0ZVRpbWVyTGFzdEZpcmVkKSkgewotICAgICAgICBM
T0dfRVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgVGltZXJMYXN0RmlyZWQgdGFibGUgaW4gZGF0YWJh
c2UgKCVpKSAtICVzIiwgbV9kYXRhYmFzZS5sYXN0RXJyb3IoKSwgbV9kYXRhYmFzZS5sYXN0RXJy
b3JNc2coKSk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9CiAKICAgICBpZiAoIWNyZWF0
ZVVuaXF1ZUluZGljZXMoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNzQ0LDggKzczMiw2
IEBAIHZvaWQgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OmRlc3Ryb3lTdGF0
ZW1lbnRzKCkKICAgICBtX2FsbEF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudFN0YXRl
bWVudCA9IG51bGxwdHI7CiAgICAgbV9maW5kVW5hdHRyaWJ1dGVkU3RhdGVtZW50ID0gbnVsbHB0
cjsKICAgICBtX2ZpbmRBdHRyaWJ1dGVkU3RhdGVtZW50ID0gbnVsbHB0cjsKLSAgICBtX3VwZGF0
ZVRpbWVyTGFzdEZpcmVkU3RhdGVtZW50ID0gbnVsbHB0cjsKLSAgICBtX3RpbWVyTGFzdEZpcmVk
U3RhdGVtZW50ID0gbnVsbHB0cjsKICAgICBtX3VwZGF0ZUF0dHJpYnV0aW9uc0VhcmxpZXN0VGlt
ZVRvU2VuZFN0YXRlbWVudCA9IG51bGxwdHI7CiAgICAgbV9yZW1vdmVVbmF0dHJpYnV0ZWRTdGF0
ZW1lbnQgPSBudWxscHRyOwogfQpAQCAtMjg5MCw1NCArMjg3Niw2IEBAIHZvaWQgUmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6Omluc2VydEV4cGlyZWRTdGF0aXN0aWNGb3JUZXN0
aW5nKGNvbnN0CiAgICAgfQogfQogCi12b2lkIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFz
ZVN0b3JlOjp1cGRhdGVUaW1lckxhc3RGaXJlZCgpCi17Ci0gICAgYXV0byBzY29wZWRTdGF0ZW1l
bnQgPSB0aGlzLT5zY29wZWRTdGF0ZW1lbnQobV91cGRhdGVUaW1lckxhc3RGaXJlZFN0YXRlbWVu
dCwgdXBkYXRlVGltZXJMYXN0RmlyZWRRdWVyeSwgInVwZGF0ZVRpbWVyTGFzdEZpcmVkIl9zKTsK
LQotICAgIGF1dG8gbm93ID0gV2FsbFRpbWU6Om5vdygpLnNlY29uZHNTaW5jZUVwb2NoKCkudmFs
dWUoKTsKLQotICAgIGlmICghc2NvcGVkU3RhdGVtZW50Ci0gICAgICAgIHx8IHNjb3BlZFN0YXRl
bWVudC0+YmluZERvdWJsZSgxLCBub3cpICE9IFNRTElURV9PSwotICAgICAgICB8fCBzY29wZWRT
dGF0ZW1lbnQtPnN0ZXAoKSAhPSBTUUxJVEVfRE9ORSkgewotICAgICAgICBSRUxFQVNFX0xPR19F
UlJPUihOZXR3b3JrLCAiJXAgLSBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZTo6
dXBkYXRlVGltZXJMYXN0RmlyZWQgZmFpbGVkLCBlcnJvciBtZXNzYWdlOiAle3ByaXZhdGV9cyIs
IHRoaXMsIG1fZGF0YWJhc2UubGFzdEVycm9yTXNnKCkpOwotICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKLSAgICB9Ci19Ci0KLVdhbGxUaW1lIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRh
YmFzZVN0b3JlOjp0aW1lckxhc3RGaXJlZCgpCi17Ci0gICAgYXV0byBzY29wZWRTdGF0ZW1lbnQg
PSB0aGlzLT5zY29wZWRTdGF0ZW1lbnQobV90aW1lckxhc3RGaXJlZFN0YXRlbWVudCwgdGltZXJM
YXN0RmlyZWRRdWVyeSwgInRpbWVyTGFzdEZpcmVkIl9zKTsKLQotICAgIGlmICghc2NvcGVkU3Rh
dGVtZW50KSB7Ci0gICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQobV9zZXNzaW9u
SUQsICIlcCAtIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlOjp0aW1lckxhc3RG
aXJlZCwgZXJyb3IgbWVzc2FnZTogJXtwcml2YXRlfXMiLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RF
cnJvck1zZygpKTsKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgfQotCi0gICAg
aWYgKHNjb3BlZFN0YXRlbWVudC0+c3RlcCgpID09IFNRTElURV9ST1cpCi0gICAgICAgIHJldHVy
biBXYWxsVGltZTo6ZnJvbVJhd1NlY29uZHMoc2NvcGVkU3RhdGVtZW50LT5nZXRDb2x1bW5Eb3Vi
bGUoMCkpOwotICAgIAotICAgIHJldHVybiBXYWxsVGltZTo6bm93KCk7Ci19Ci0KLXZvaWQgUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVwZGF0ZVByaXZhdGVDbGlja01lYXN1
cmVtZW50QXR0cmlidXRpb25UaW1lcygpCi17Ci0gICAgLy8gV2Ugc2hvdWxkIHVwZGF0ZSBhdHRy
aWJ1dGlvbnMgb24gc2Vzc2lvbi1zdGFydCB0byBhY2NvdW50IGZvciB0aGUgdGltZQotICAgIC8v
IHRoYXQgcGFzc2VkIHdoaWxlIHRoZSBzZXNzaW9uIHdhcyBjbG9zZWQuIElmIHRoZSBhbW91bnQg
b2YgdGltZSBzaW5jZSB0aGUgbGFzdAotICAgIC8vIHRpbWVyIGZpcmUgaXMgZ3JlYXRlciB0aGFu
IHRoZSBlYXJsaWVzdFRpbWVUb1NlbmQsIHdlIHNob3VsZCBzZXQgZWFybGllc3RUaW1lVG9TZW5k
Ci0gICAgLy8gdG8gYmUgaW1tZWRpYXRlbHkuCi0gICAgYXV0byBsYXN0RmlyZWQgPSB0aW1lckxh
c3RGaXJlZCgpOwotICAgIGF1dG8gdGltZVBhc3NlZCA9IFdhbGxUaW1lOjpub3coKSAtIGxhc3RG
aXJlZDsKLQotICAgIGF1dG8gc2NvcGVkU3RhdGVtZW50ID0gdGhpcy0+c2NvcGVkU3RhdGVtZW50
KG1fdXBkYXRlQXR0cmlidXRpb25zRWFybGllc3RUaW1lVG9TZW5kU3RhdGVtZW50LCB1cGRhdGVB
dHRyaWJ1dGlvbnNFYXJsaWVzdFRpbWVUb1NlbmRRdWVyeSwgInVwZGF0ZVByaXZhdGVDbGlja01l
YXN1cmVtZW50QXR0cmlidXRpb25UaW1lcyJfcyk7Ci0KLSAgICBpZiAoIXNjb3BlZFN0YXRlbWVu
dAotICAgICAgICB8fCBzY29wZWRTdGF0ZW1lbnQtPmJpbmREb3VibGUoMSwgdGltZVBhc3NlZC52
YWx1ZSgpKSAhPSBTUUxJVEVfT0sKLSAgICAgICAgfHwgc2NvcGVkU3RhdGVtZW50LT5zdGVwKCkg
IT0gU1FMSVRFX0RPTkUpIHsKLSAgICAgICAgUkVMRUFTRV9MT0dfRVJST1JfSUZfQUxMT1dFRCht
X3Nlc3Npb25JRCwgIiVwIC0gUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnVw
ZGF0ZVByaXZhdGVDbGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UaW1lcywgZXJyb3IgbWVzc2Fn
ZTogJXtwcml2YXRlfXMiLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsKLSAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgfQotfQotCiBQcml2YXRlQ2xpY2tNZWFzdXJl
bWVudCBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZTo6YnVpbGRQcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudEZyb21EYXRhYmFzZShXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQqIHN0YXRl
bWVudCwgUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblR5cGUgYXR0cmlidXRpb25U
eXBlKQogewogICAgIGF1dG8gc291cmNlU2l0ZURvbWFpbiA9IGdldERvbWFpblN0cmluZ0Zyb21E
b21haW5JRChzdGF0ZW1lbnQtPmdldENvbHVtbkludCgwKSk7CkBAIC0zMzE1LDIxICszMjUzLDEx
IEBAIHZvaWQgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OmNsZWFyU2VudEF0
dHJpYnV0aW9ucyhWZWN0b3I8V2ViQ29yZTo6CiAKIHZvaWQgUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0RhdGFiYXNlU3RvcmU6Om1hcmtBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRzQXNF
eHBpcmVkRm9yVGVzdGluZygpCiB7Ci0gICAgLy8gVXBkYXRlIHRoZSBsYXN0IHRpbWVyIGZpcmVk
IHRpbWUgdG8gYmUgb25lIGRheSBhZ28uCi0gICAgYXV0byB5ZXN0ZXJkYXkgPSAoV2FsbFRpbWU6
Om5vdygpIC0gMjRfaCkuc2Vjb25kc1NpbmNlRXBvY2goKS52YWx1ZSgpOwotICAgIGF1dG8gc2Nv
cGVkU3RhdGVtZW50ID0gdGhpcy0+c2NvcGVkU3RhdGVtZW50KG1fdXBkYXRlVGltZXJMYXN0Rmly
ZWRTdGF0ZW1lbnQsIHVwZGF0ZVRpbWVyTGFzdEZpcmVkUXVlcnksICJpbnNlcnRFeHBpcmVkQXR0
cmlidXRpb25UZXN0aW5nIl9zKTsKLSAgICBpZiAoIXNjb3BlZFN0YXRlbWVudAotICAgICAgICB8
fCBzY29wZWRTdGF0ZW1lbnQtPmJpbmREb3VibGUoMSwgeWVzdGVyZGF5KSAhPSBTUUxJVEVfT0sK
LSAgICAgICAgfHwgc2NvcGVkU3RhdGVtZW50LT5zdGVwKCkgIT0gU1FMSVRFX0RPTkUpIHsKLSAg
ICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgIiVwIC0gUmVzb3VyY2VMb2FkU3RhdGlz
dGljc0RhdGFiYXNlU3RvcmU6Omluc2VydEV4cGlyZWRBdHRyaWJ1dGlvblRlc3RpbmcgZmFpbGVk
LCBlcnJvciBtZXNzYWdlOiAle3ByaXZhdGV9cyIsIHRoaXMsIG1fZGF0YWJhc2UubGFzdEVycm9y
TXNnKCkpOwotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9Ci0KLSAgICBhdXRv
IGV4cGlyZWRUaW1lVG9TZW5kID0gMV9oOyAvLyBNdXN0IGJlIGxlc3MgdGhhbiAxIGRheS4KKyAg
ICBhdXRvIGV4cGlyZWRUaW1lVG9TZW5kID0gV2FsbFRpbWU6Om5vdygpIC0gMV9oOwogICAgIAog
ICAgIGF1dG8gc3RhdGVtZW50ID0gU1FMaXRlU3RhdGVtZW50KG1fZGF0YWJhc2UsICJVUERBVEUg
QXR0cmlidXRlZFByaXZhdGVDbGlja01lYXN1cmVtZW50IFNFVCBlYXJsaWVzdFRpbWVUb1NlbmQg
PSA/Iik7CiAgICAgaWYgKHN0YXRlbWVudC5wcmVwYXJlKCkgIT0gU1FMSVRFX09LCi0gICAgICAg
IHx8IHN0YXRlbWVudC5iaW5kSW50KDEsIGV4cGlyZWRUaW1lVG9TZW5kLnZhbHVlKCkpICE9IFNR
TElURV9PSworICAgICAgICB8fCBzdGF0ZW1lbnQuYmluZEludCgxLCBleHBpcmVkVGltZVRvU2Vu
ZC5zZWNvbmRzU2luY2VFcG9jaCgpLnZhbHVlKCkpICE9IFNRTElURV9PSwogICAgICAgICB8fCBz
dGF0ZW1lbnQuc3RlcCgpICE9IFNRTElURV9ET05FKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VS
Uk9SX0lGX0FMTE9XRUQobV9zZXNzaW9uSUQsICIlcCAtIFJlc291cmNlTG9hZFN0YXRpc3RpY3NE
YXRhYmFzZVN0b3JlOjppbnNlcnRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudCwgZXJyb3IgbWVzc2Fn
ZTogJXtwcml2YXRlfXMiLCB0aGlzLCBtX2RhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsKICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmUu
aCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5oCmluZGV4IGJhZGM3ZWU2YTFjZmQ0MzJhNjU1ODY4NzNm
YTEwOGNiODdjNzczNDEuLmNhZjU0NzMxOTRmNTE0YTY4MTI4ZWZlZWQxMzk2NzRjN2JiZDEwYjQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9y
ZS5oCkBAIC0xNDAsOSArMTQwLDcgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXJFeHBpcmVkUHJp
dmF0ZUNsaWNrTWVhc3VyZW1lbnQoKSBvdmVycmlkZTsKICAgICBTdHJpbmcgcHJpdmF0ZUNsaWNr
TWVhc3VyZW1lbnRUb1N0cmluZygpIG92ZXJyaWRlOwogICAgIHZvaWQgY2xlYXJTZW50QXR0cmli
dXRpb25zKFZlY3RvcjxXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4mJikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCB1cGRhdGVUaW1lckxhc3RGaXJlZCgpIG92ZXJyaWRlOwogICAgIHZvaWQg
bWFya0F0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGlyZWRGb3JUZXN0aW5n
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVQcml2YXRlQ2xpY2tNZWFzdXJlbWVudEF0dHJp
YnV0aW9uVGltZXMoKTsKIAogcHJpdmF0ZToKICAgICB2b2lkIGluY2x1ZGVUb2RheUFzT3BlcmF0
aW5nRGF0ZUlmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CkBAIC0yMzcsNyArMjM1LDYgQEAgcHJpdmF0
ZToKICAgICBXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudCBidWlsZFByaXZhdGVDbGlj
a01lYXN1cmVtZW50RnJvbURhdGFiYXNlKFdlYkNvcmU6OlNRTGl0ZVN0YXRlbWVudCosIFByaXZh
dGVDbGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UeXBlKTsKICAgICBTdHJpbmcgYXR0cmlidXRp
b25Ub1N0cmluZyhXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQqLCBQcml2YXRlQ2xpY2tNZWFzdXJl
bWVudEF0dHJpYnV0aW9uVHlwZSk7CiAgICAgc3RkOjpwYWlyPE9wdGlvbmFsPFVuYXR0cmlidXRl
ZFByaXZhdGVDbGlja01lYXN1cmVtZW50PiwgT3B0aW9uYWw8QXR0cmlidXRlZFByaXZhdGVDbGlj
a01lYXN1cmVtZW50Pj4gZmluZFByaXZhdGVDbGlja01lYXN1cmVtZW50KGNvbnN0IFdlYkNvcmU6
OlByaXZhdGVDbGlja01lYXN1cmVtZW50OjpTb3VyY2VTaXRlJiwgY29uc3QgV2ViQ29yZTo6UHJp
dmF0ZUNsaWNrTWVhc3VyZW1lbnQ6OkF0dHJpYnV0ZU9uU2l0ZSYpOwotICAgIFdhbGxUaW1lIHRp
bWVyTGFzdEZpcmVkKCk7CiAKICAgICBjb25zdCBTdHJpbmcgbV9zdG9yYWdlRGlyZWN0b3J5UGF0
aDsKICAgICBtdXRhYmxlIFdlYkNvcmU6OlNRTGl0ZURhdGFiYXNlIG1fZGF0YWJhc2U7CkBAIC0y
ODgsOCArMjg1LDYgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6U1FM
aXRlU3RhdGVtZW50PiBtX2FsbEF0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudFN0YXRl
bWVudDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6U1FMaXRlU3RhdGVtZW50PiBtX2Zp
bmRVbmF0dHJpYnV0ZWRTdGF0ZW1lbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlNR
TGl0ZVN0YXRlbWVudD4gbV9maW5kQXR0cmlidXRlZFN0YXRlbWVudDsKLSAgICBzdGQ6OnVuaXF1
ZV9wdHI8V2ViQ29yZTo6U1FMaXRlU3RhdGVtZW50PiBtX3VwZGF0ZVRpbWVyTGFzdEZpcmVkU3Rh
dGVtZW50OwotICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ+IG1f
dGltZXJMYXN0RmlyZWRTdGF0ZW1lbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlNR
TGl0ZVN0YXRlbWVudD4gbV91cGRhdGVBdHRyaWJ1dGlvbnNFYXJsaWVzdFRpbWVUb1NlbmRTdGF0
ZW1lbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlNRTGl0ZVN0YXRlbWVudD4gbV9y
ZW1vdmVVbmF0dHJpYnV0ZWRTdGF0ZW1lbnQ7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9y
eVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmgKaW5kZXggZjg1YTE1ZGM0ZmE2MzVjNjk1MzM2
MGY0YTRhZTdjNzhlYWNmOTY1MC4uMmFkYzE1NzlkNWEyYzIwN2VjOThiOGFjYWVkOTZjMDUwMjIw
N2UwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVy
L1Jlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3Rv
cmUuaApAQCAtMTE4LDcgKzExOCw2IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgcHJpdmF0ZUNsaWNr
TWVhc3VyZW1lbnRUb1N0cmluZygpIG92ZXJyaWRlIHsgcmV0dXJuIFN0cmluZygpOyB9OwogICAg
IHZvaWQgY2xlYXJTZW50QXR0cmlidXRpb25zKFZlY3RvcjxXZWJDb3JlOjpQcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudD4mJikgb3ZlcnJpZGUgeyB9OwogICAgIHZvaWQgbWFya0F0dHJpYnV0ZWRQcml2
YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGlyZWRGb3JUZXN0aW5nKCkgb3ZlcnJpZGUgeyB9Owot
ICAgIHZvaWQgdXBkYXRlVGltZXJMYXN0RmlyZWQoKSBvdmVycmlkZSB7IH07CiAKIHByaXZhdGU6
CiAgICAgdm9pZCBpbmNsdWRlVG9kYXlBc09wZXJhdGluZ0RhdGVJZk5lY2Vzc2FyeSgpIG92ZXJy
aWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVy
L1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCmluZGV4IDYyZTAz
NWJlMDBkMDE4NjYyYTc1MjZjZjhmOTcxMDAxMGZkNDFjNzguLjViZmU3N2NhYTUwZWZmOTljZjBh
YjZmYzYyZjZhNDM2N2U1YTM2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlLmgKQEAgLTIxMyw3ICsyMTMsNiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcg
cHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRUb1N0cmluZygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
Y2xlYXJTZW50QXR0cmlidXRpb25zKFZlY3RvcjxXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJl
bWVudD4mJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBtYXJrQXR0cmlidXRlZFByaXZhdGVDbGlj
a01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lk
IHVwZGF0ZVRpbWVyTGFzdEZpcmVkKCkgPSAwOwogCiBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIHVu
c2lnbmVkIGNvbXB1dGVJbXBvcnRhbmNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9hZFN0YXRp
c3RpY3MmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3Np
Zmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5j
cHAKaW5kZXggZjQwNjBlZTI4YTVjNDE5YjBiNjYyYjI2NmFkOTAzOGFhNTM1MjI3ZS4uNGU4OGU2
NzYwMDY4NDljMWE2NTNjMzFmYmM1YTJjODNmMTczNzJmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKQEAgLTE0NzUsMjEgKzE0NzUsNiBAQCB2
b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6aW5zZXJ0RXhwaXJlZFN0YXRpc3Rp
Y0ZvclRlc3RpbmcoY29uc3QgUmVnaQogICAgIH0pOwogfQogCi12b2lkIFdlYlJlc291cmNlTG9h
ZFN0YXRpc3RpY3NTdG9yZTo6dXBkYXRlVGltZXJMYXN0RmlyZWQoKQotewotICAgIEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7Ci0KLSAgICBpZiAoaXNFcGhlbWVyYWwoKSkKLSAgICAgICAgcmV0
dXJuOwotCi0gICAgcG9zdFRhc2soW3RoaXNdKCkgbXV0YWJsZSB7Ci0gICAgICAgIGlmICghbV9z
dGF0aXN0aWNzU3RvcmUpCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgbV9zdGF0aXN0
aWNzU3RvcmUtPnVwZGF0ZVRpbWVyTGFzdEZpcmVkKCk7Ci0gICAgfSk7Ci19Ci0KIHZvaWQgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjppbnNlcnRQcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dChQcml2YXRlQ2xpY2tNZWFzdXJlbWVudCYmIGF0dHJpYnV0aW9uLCBQcml2YXRlQ2xpY2tNZWFz
dXJlbWVudEF0dHJpYnV0aW9uVHlwZSBhdHRyaWJ1dGlvblR5cGUpCiB7CiAgICAgQVNTRVJUKFJ1
bkxvb3A6OmlzTWFpbigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmUuaAppbmRleCAzNWQyNGM3YTNmOWY2NDczYTJlZTFiNjQ0ODY5YTQ3MjcxMTI1YzY2Li43
ZjViNTdiODllYTQwYWI4ZDcyZDY3ZjZiZjAzMmM0NjE3M2M0NWU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVy
L1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCkBAIC0zMTYsNyArMzE2LDYgQEAgc3Ry
dWN0IFRoaXJkUGFydHlEYXRhIHsKICAgICB2b2lkIGNsZWFyRXhwaXJlZFByaXZhdGVDbGlja01l
YXN1cmVtZW50KCk7CiAgICAgdm9pZCBwcml2YXRlQ2xpY2tNZWFzdXJlbWVudFRvU3RyaW5nKENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoU3RyaW5nKT4mJik7CiAgICAgdm9pZCBjbGVhclNlbnRBdHRy
aWJ1dGlvbnMoVmVjdG9yPFdlYkNvcmU6OlByaXZhdGVDbGlja01lYXN1cmVtZW50PiYmKTsKLSAg
ICB2b2lkIHVwZGF0ZVRpbWVyTGFzdEZpcmVkKCk7CiAgICAgdm9pZCBtYXJrQXR0cmlidXRlZFBy
aXZhdGVDbGlja01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2VyLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2VyLmNwcApp
bmRleCBkNmY0YzYyNTBiODA0NmE5Y2ZhZTYxYjEyNzZkMmM5NzJlZDAzNzkxLi41YzY5YTRjN2Fm
NzgxODMyMjhhZWE0YmZjYzU5ZTY2ZGJkYjNlZmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1ByaXZhdGVDbGlja01lYXN1cmVtZW50TWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Qcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1hbmFn
ZXIuY3BwCkBAIC0xODgsMTcgKzE4OCw2IEBAIHZvaWQgUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRN
YW5hZ2VyOjpjbGVhclNlbnRBdHRyaWJ1dGlvbnMoVmVjdG9yPFByaXZhdGVDbGlja01lCiAjZW5k
aWYKIH0KIAotdm9pZCBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1hbmFnZXI6OnVwZGF0ZVRpbWVy
TGFzdEZpcmVkKCkKLXsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQotICAg
IGlmICghZmVhdHVyZUVuYWJsZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKGF1dG8q
IHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBtX25ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzKCkpCi0gICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnVwZGF0ZVRpbWVy
TGFzdEZpcmVkKCk7Ci0jZW5kaWYKLX0KLQogdm9pZCBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1h
bmFnZXI6OmZpcmVQZW5kaW5nQXR0cmlidXRpb25SZXF1ZXN0cygpCiB7CiAjaWYgRU5BQkxFKFJF
U09VUkNFX0xPQURfU1RBVElTVElDUykKQEAgLTIzMiw3ICsyMjEsNiBAQCB2b2lkIFByaXZhdGVD
bGlja01lYXN1cmVtZW50TWFuYWdlcjo6ZmlyZVBlbmRpbmdBdHRyaWJ1dGlvblJlcXVlc3RzKCkK
ICAgICAgICAgfQogICAgICAgICAKICAgICAgICAgY2xlYXJTZW50QXR0cmlidXRpb25zKFdURk1v
dmUoc2VudEF0dHJpYnV0aW9ucykpOwotICAgICAgICB1cGRhdGVUaW1lckxhc3RGaXJlZCgpOwog
CiAgICAgICAgIGlmIChuZXh0VGltZVRvRmlyZSA8IFNlY29uZHM6OmluZmluaXR5KCkpCiAgICAg
ICAgICAgICBzdGFydFRpbWVyKG5leHRUaW1lVG9GaXJlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2VyLmggYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1ByaXZhdGVDbGlja01lYXN1cmVtZW50TWFuYWdl
ci5oCmluZGV4IDhhM2U4NjQ5ZjU5NDgxYTlkY2JjZWFiM2IyYTZkMTdkZmFjZWRhZGEuLjJmZmNh
NDFiN2E2ZDE1Zjk2MjI2NTdiNTZkNTBiNTlmYjY0OGNhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRNYW5hZ2VyLmgKKysr
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Qcml2YXRlQ2xpY2tNZWFzdXJlbWVudE1h
bmFnZXIuaApAQCAtNzQsNyArNzQsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY2xlYXJFeHBpcmVk
KCk7CiAgICAgYm9vbCBmZWF0dXJlRW5hYmxlZCgpIGNvbnN0OwogICAgIGJvb2wgZGVidWdNb2Rl
RW5hYmxlZCgpIGNvbnN0OwotICAgIHZvaWQgdXBkYXRlVGltZXJMYXN0RmlyZWQoKTsKIAogICAg
IFdlYkNvcmU6OlRpbWVyIG1fZmlyZVBlbmRpbmdBdHRyaWJ1dGlvblJlcXVlc3RzVGltZXI7CiAg
ICAgYm9vbCBtX2lzUnVubmluZ1Rlc3QgeyBmYWxzZSB9Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>