<?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>138974</bug_id>
          
          <creation_ts>2014-11-21 11:41:47 -0800</creation_ts>
          <short_desc>Remove the Timer parameters from timer callbacks</short_desc>
          <delta_ts>2014-11-22 01:46:08 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>clopez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>koivisto</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1050520</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-11-21 11:41:47 -0800</bug_when>
    <thetext>Remove the Timer parameters from timer callbacks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050526</commentid>
    <comment_count>1</comment_count>
      <attachid>242059</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-11-21 11:50:06 -0800</bug_when>
    <thetext>Created attachment 242059
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050527</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-21 11:51:57 -0800</bug_when>
    <thetext>Attachment 242059 did not pass style-queue:


ERROR: Source/WebCore/html/canvas/WebGLRenderingContext.cpp:490:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/html/canvas/WebGLRenderingContext.cpp:492:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/page/Frame.cpp:165:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/Modules/geolocation/Geolocation.h:189:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
ERROR: Source/WebCore/platform/Scrollbar.cpp:79:  Wrong number of spaces before statement. (expected: 25)  [whitespace/indent] [4]
Total errors found: 5 in 240 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>1050531</commentid>
    <comment_count>3</comment_count>
      <attachid>242062</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-11-21 12:00:39 -0800</bug_when>
    <thetext>Created attachment 242062
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050532</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-21 12:03:17 -0800</bug_when>
    <thetext>Attachment 242062 did not pass style-queue:


ERROR: Source/WebCore/html/canvas/WebGLRenderingContext.cpp:490:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/html/canvas/WebGLRenderingContext.cpp:492:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/page/Frame.cpp:165:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/Modules/geolocation/Geolocation.h:189:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
ERROR: Source/WebCore/platform/Scrollbar.cpp:79:  Wrong number of spaces before statement. (expected: 25)  [whitespace/indent] [4]
Total errors found: 5 in 242 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>1050533</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-11-21 12:10:02 -0800</bug_when>
    <thetext>Committed r176459: &lt;http://trac.webkit.org/changeset/176459&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050550</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2014-11-21 13:19:36 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Committed r176459: &lt;http://trac.webkit.org/changeset/176459&gt;

This broke both the GTK and EFL builds: https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release%20%28Build%29/builds/52986</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050666</commentid>
    <comment_count>7</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2014-11-21 19:28:13 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; Committed r176459: &lt;http://trac.webkit.org/changeset/176459&gt;
&gt; 
&gt; This broke both the GTK and EFL builds:
&gt; https://build.webkit.org/builders/GTK%20Linux%2064-
&gt; bit%20Release%20%28Build%29/builds/52986

I fix this build break on EFL port - &lt;http://trac.webkit.org/changeset/176495&gt;

I hope this commit will fix GTK port as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050708</commentid>
    <comment_count>8</comment_count>
      <attachid>242062</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-11-22 01:18:29 -0800</bug_when>
    <thetext>Comment on attachment 242062
Patch

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

&gt; Source/WebCore/Modules/mediastream/MediaStream.cpp:89
&gt; -    , m_scheduledEventTimer(this, &amp;MediaStream::scheduledEventTimerFired)
&gt; +    , m_scheduledEventtimer(*this, &amp;MediaStream::scheduledEventTimerFired)

Why did you change the camal case?

&gt; Source/WebCore/Modules/mediastream/RTCDTMFSender.cpp:68
&gt; -    , m_scheduledEventTimer(this, &amp;RTCDTMFSender::scheduledEventTimerFired)
&gt; +    , m_scheduledEventtimer(*this, &amp;RTCDTMFSender::scheduledEventTimerFired)

ditto

&gt; Source/WebCore/Modules/mediastream/RTCDataChannel.cpp:98
&gt; -    , m_scheduledEventTimer(this, &amp;RTCDataChannel::scheduledEventTimerFired)
&gt; +    , m_scheduledEventtimer(*this, &amp;RTCDataChannel::scheduledEventTimerFired)

ditto

&gt; Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp:177
&gt; -    , m_scheduledEventTimer(this, &amp;RTCPeerConnection::scheduledEventTimerFired)
&gt; +    , m_scheduledEventtimer(*this, &amp;RTCPeerConnection::scheduledEventTimerFired)

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050709</commentid>
    <comment_count>9</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-11-22 01:27:34 -0800</bug_when>
    <thetext>(In reply to comment #3) - 2014-11-21 12:00:39 PST 
&gt; Created attachment 242062 [details]
&gt; Patch

(In reply to comment #5) - 2014-11-21 12:10:02 PST 
&gt; Committed r176459: &lt;http://trac.webkit.org/changeset/176459&gt;

Common, was it really necessary to land this huge patch in 9.5 minutes 
after uploading and breaking GTK/EFL builds with trivial typos and not
complete grepping? And then just let it broken. :((

https://trac.webkit.org/changeset/176495 fixed many issues in WebCore.
Is there a new rule that you are allowed to break WebCore build too?
As far as I know, it is for WebKit2 only, not for WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050712</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-11-22 01:46:08 -0800</bug_when>
    <thetext>GTK fix landed in https://trac.webkit.org/changeset/176503</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242059</attachid>
            <date>2014-11-21 11:50:06 -0800</date>
            <delta_ts>2014-11-21 12:00:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138974-20141121115022.patch</filename>
            <type>text/plain</type>
            <size>265954</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDU1MWE2YjZkOTY5MzhmOGJjM2I2MDNh
MTNlMTAwZDg2NGMxZGI4M2UuLmY4MDMxZjgwOGVlZGMxZGNhYzllOWZjNzg4OGQ5Mjk4MjhjYzI2
NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMTEtMjEgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdGhlIFRpbWVyIHBhcmFtZXRlcnMg
ZnJvbSB0aW1lciBjYWxsYmFja3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEzODk3NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogd3RmL1J1bkxvb3BUaW1lci5oOgorICAgICAgICAoV1RGOjpSdW5Mb29w
VGltZXI6OlJ1bkxvb3BUaW1lcik6CisgICAgICAgIChXVEY6OlJ1bkxvb3BUaW1lcjo6ZmlyZWQp
OgorCiAyMDE0LTExLTE4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgSGF2ZSBWZWN0b3I6OmNhcGFjaXR5KCkgcmV0dXJuIGFuIHVuc2lnbmVkIGluc3RlYWQgb2Yg
YSBzaXplX3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MTViMDJhZmNhN2U5ZjM4NTkwNmRkYTQ3OTAzNDBkNWU0
MDc4MTI2Li42MTY2MWZjMWZhMzBmMjYyMmZiM2M3MTg2MzM0MzM1ZDYyZWU3YWU0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDUgKzEsNTAxIEBACiAyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVtb3ZlIHRoZSBUaW1lciBwYXJhbWV0ZXJzIGZy
b20gdGltZXIgY2FsbGJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzg5NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIE1vZHVsZXMvZW5jcnlwdGVkbWVkaWEvTWVkaWFLZXlTZXNzaW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhS2V5U2Vzc2lvbjo6TWVkaWFLZXlTZXNzaW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhS2V5U2Vzc2lvbjo6a2V5UmVxdWVzdFRpbWVyRmlyZWQpOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFLZXlTZXNzaW9uOjphZGRLZXlUaW1lckZpcmVkKToKKyAg
ICAgICAgKiBNb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5oOgorICAgICAg
ICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6R2VvbG9jYXRpb246Okdlb05vdGlmaWVyOjpHZW9Ob3RpZmllcik6CisgICAgICAgIChXZWJD
b3JlOjpHZW9sb2NhdGlvbjo6R2VvTm90aWZpZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6R2VvbG9jYXRpb246Okdlb2xvY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xv
Y2F0aW9uOjpyZXN1bWVUaW1lckZpcmVkKToKKyAgICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9u
L0dlb2xvY2F0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rp
b25CYWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0aW9uQmFja2VuZDo6
SURCVHJhbnNhY3Rpb25CYWNrZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0aW9u
QmFja2VuZDo6dGFza1RpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lE
QlRyYW5zYWN0aW9uQmFja2VuZC5oOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2UvU291
cmNlQnVmZmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlcjo6U291cmNlQnVm
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlcjo6YXBwZW5kQnVmZmVyVGltZXJG
aXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OnJlbW92ZVRpbWVyRmlyZWQp
OgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmg6CisgICAgICAg
ICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYVN0cmVhbTo6TWVkaWFTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJl
YW06OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYVN0cmVhbS5oOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRN
RlNlbmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENEVE1GU2VuZGVyOjpSVENEVE1GU2Vu
ZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ0RUTUZTZW5kZXI6OnNjaGVkdWxlZEV2ZW50VGlt
ZXJGaXJlZCk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmg6
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSVENEYXRhQ2hhbm5lbDo6UlRDRGF0YUNoYW5uZWwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDRGF0YUNoYW5uZWw6OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCk6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5oOgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UlRDUGVlckNvbm5lY3Rpb246OlJUQ1BlZXJDb25uZWN0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OlJUQ1BlZXJDb25uZWN0aW9uOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBN
b2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Ok5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNh
dGlvbjo6dGFza1RpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0
aW9uQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90
aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjpOb3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpOb3RpZmljYXRpb25SZXF1ZXN0
Q2FsbGJhY2s6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb25DZW50ZXIuaDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29j
a2V0Q2hhbm5lbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRDaGFubmVsOjpXZWJT
b2NrZXRDaGFubmVsKToKKyAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldENoYW5uZWw6OnJlc3Vt
ZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hhbm5lbDo6Y2xvc2lu
Z1RpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRDaGFu
bmVsLmg6CisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OkFYT2JqZWN0Q2FjaGUpOgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6bm90aWZpY2F0aW9uUG9zdFRpbWVyRmlyZWQpOgorICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0dDQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHQ0NvbnRyb2xsZXI6OkdDQ29u
dHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpHQ0NvbnRyb2xsZXI6OmdjVGltZXJGaXJlZCk6
CisgICAgICAgICogYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmg6CisgICAgICAgICogY3NzL0NT
U0ZvbnRGYWNlU291cmNlLmg6CisgICAgICAgICogY3NzL0NTU0ZvbnRTZWxlY3Rvci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDU1NGb250U2VsZWN0b3I6OkNTU0ZvbnRTZWxlY3Rvcik6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NGb250U2VsZWN0b3I6OmJlZ2luTG9hZFRpbWVyRmlyZWQpOgorICAg
ICAgICAqIGNzcy9DU1NGb250U2VsZWN0b3IuaDoKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VHZW5l
cmF0b3JWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJbWFnZUdlbmVyYXRvclZhbHVl
OjpDYWNoZWRHZW5lcmF0ZWRJbWFnZTo6Q2FjaGVkR2VuZXJhdGVkSW1hZ2UpOgorICAgICAgICAq
IGNzcy9TdHlsZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6
OlN0eWxlUmVzb2x2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNvbHZlcjo6c3dlZXBN
YXRjaGVkUHJvcGVydGllc0NhY2hlKToKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5oOgor
ICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6
RG9jdW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnZpc3VhbFVwZGF0ZXNTdXBw
cmVzc2lvblRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnN0eWxlUmVj
YWxjVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6b3B0aW1pemVkU3R5
bGVTaGVldFVwZGF0ZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnNo
YXJlZE9iamVjdFBvb2xDbGVhclRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnQ6OnVwZGF0ZUZvY3VzQXBwZWFyYW5jZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OndlYmtpdFdpbGxFbnRlckZ1bGxTY3JlZW5Gb3JFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50Ojp3ZWJraXREaWRFeGl0RnVsbFNjcmVlbkZvckVsZW1lbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQp
OgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmxvYWRFdmVudERlbGF5VGltZXJGaXJlZCk6
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGlt
ZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZG9tQ29va2llQ2FjaGVFeHBp
cnlUaW1lckZpcmVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKyAgICAgICAgKiBkb20v
RXZlbnRTZW5kZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50U2VuZGVyOjp0aW1lckZpcmVk
KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50U2VuZGVyPFQ+OjpFdmVudFNlbmRlcik6CisgICAg
ICAgICogZG9tL1NjcmlwdFJ1bm5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRSdW5u
ZXI6OlNjcmlwdFJ1bm5lcik6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRSdW5uZXI6OnRpbWVy
RmlyZWQpOgorICAgICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuaDoKKyAgICAgICAgKiBkb20vU2Ny
aXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdGVk
QW5pbWF0aW9uQ29udHJvbGxlcjo6U2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcjo6YW5pbWF0aW9uVGltZXJG
aXJlZCk6CisgICAgICAgICogZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oOgorICAg
ICAgICAqIGRvbS9TdHlsZWRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByZXNlbnRh
dGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5lcjo6UHJlc2VudGF0aW9uQXR0cmlidXRlQ2FjaGVDbGVh
bmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5l
cjo6Y2xlYW5DYWNoZSk6CisgICAgICAgICogZWRpdGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9s
bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFsdGVybmF0aXZlVGV4dENvbnRyb2xsZXI6OkFs
dGVybmF0aXZlVGV4dENvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29yZTo6QWx0ZXJuYXRpdmVU
ZXh0Q29udHJvbGxlcjo6dGltZXJGaXJlZCk6CisgICAgICAgICogZWRpdGluZy9BbHRlcm5hdGl2
ZVRleHRDb250cm9sbGVyLmg6CisgICAgICAgICogZWRpdGluZy9FZGl0b3IuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RWRpdG9yOjpFZGl0b3IpOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjp1
cGRhdGVFZGl0b3JVSU5vd0lmU2NoZWR1bGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6
ZWRpdG9yVUlVcGRhdGVUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6c2Nh
blNlbGVjdGlvbkZvclRlbGVwaG9uZU51bWJlcnMpOiBEZWxldGVkLgorICAgICAgICAqIGVkaXRp
bmcvRWRpdG9yLmg6CisgICAgICAgICogZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbjo6RnJhbWVTZWxlY3Rpb24pOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVTZWxlY3Rpb246OmNhcmV0QmxpbmtUaW1lckZpcmVkKToKKyAgICAgICAg
KiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmg6CisgICAgICAgICogZWRpdGluZy9TcGVsbENoZWNr
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3BlbGxDaGVja2VyOjpTcGVsbENoZWNrZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6U3BlbGxDaGVja2VyOjp0aW1lckZpcmVkVG9Qcm9jZXNzUXVldWVk
UmVxdWVzdCk6CisgICAgICAgICogZWRpdGluZy9TcGVsbENoZWNrZXIuaDoKKyAgICAgICAgKiBo
dG1sL0hUTUxGb3JtRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1l
bnQ6OkhUTUxGb3JtRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6
OnJlcXVlc3RBdXRvY29tcGxldGVUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL0hUTUxGb3Jt
RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKToKKyAgICAgICAgKiBo
dG1sL0hUTUxNZWRpYUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1Z0luRWxl
bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6c3dhcFJlbmRlcmVy
VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oOgorICAgICAg
ICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbW92ZVNuYXBzaG90VGltZXJGaXJl
ZCk6CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50Lmg6CisgICAgICAgICog
aHRtbC9IVE1MU291cmNlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNl
RWxlbWVudDo6SFRNTFNvdXJjZUVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNvdXJj
ZUVsZW1lbnQ6OmVycm9yRXZlbnRUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL0hUTUxTb3Vy
Y2VFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxUcmFja0VsZW1lbnQ6OkhUTUxUcmFja0VsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQpOgorICAgICAgICAq
IGh0bWwvSFRNTFRyYWNrRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvTWVkaWFDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKE1lZGlhQ29udHJvbGxlcjo6TWVkaWFDb250cm9sbGVyKToKKyAgICAg
ICAgKE1lZGlhQ29udHJvbGxlcjo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAoTWVk
aWFDb250cm9sbGVyOjpjbGVhclBvc2l0aW9uVGltZXJGaXJlZCk6CisgICAgICAgIChNZWRpYUNv
bnRyb2xsZXI6OnRpbWV1cGRhdGVUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL01lZGlhQ29u
dHJvbGxlci5oOgorICAgICAgICAqIGh0bWwvTWVkaWFEb2N1bWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYURvY3VtZW50OjpNZWRpYURvY3VtZW50KToKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhRG9jdW1lbnQ6OnJlcGxhY2VNZWRpYUVsZW1lbnRUaW1lckZpcmVkKToKKyAgICAgICAg
KiBodG1sL01lZGlhRG9jdW1lbnQuaDoKKyAgICAgICAgKiBodG1sL1NlYXJjaElucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTZWFyY2hJbnB1dFR5cGU6OlNlYXJjaElucHV0VHlwZSk6
CisgICAgICAgIChXZWJDb3JlOjpTZWFyY2hJbnB1dFR5cGU6OnNlYXJjaEV2ZW50VGltZXJGaXJl
ZCk6CisgICAgICAgICogaHRtbC9TZWFyY2hJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1Zh
bGlkYXRpb25NZXNzYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlZhbGlkYXRpb25NZXNzYWdl
OjpzZXRNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlZhbGlkYXRpb25NZXNzYWdlOjpzZXRN
ZXNzYWdlRE9NQW5kU3RhcnRUaW1lcik6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9uTWVz
c2FnZTo6YnVpbGRCdWJibGVUcmVlKToKKyAgICAgICAgKFdlYkNvcmU6OlZhbGlkYXRpb25NZXNz
YWdlOjpyZXF1ZXN0VG9IaWRlTWVzc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9u
TWVzc2FnZTo6ZGVsZXRlQnViYmxlVHJlZSk6CisgICAgICAgICogaHRtbC9WYWxpZGF0aW9uTWVz
c2FnZS5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5n
Q29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmRpc3Bh
dGNoQ29udGV4dExvc3RFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0Nv
bnRleHQ6Om1heWJlUmVzdG9yZUNvbnRleHQpOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdM
UmVuZGVyaW5nQ29udGV4dC5oOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hl
ZHVsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBhcnNlclNjaGVkdWxlcjo6SFRNTFBh
cnNlclNjaGVkdWxlcik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGFyc2VyU2NoZWR1bGVyOjpj
b250aW51ZU5leHRDaHVua1RpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxQ
YXJzZXJTY2hlZHVsZXIuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVt
ZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6Ok1l
ZGlhQ29udHJvbFBhbmVsRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQ6OnRyYW5zaXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFj
a0NvbnRhaW5lckVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sVGV4dFRy
YWNrQ29udGFpbmVyRWxlbWVudDo6dXBkYXRlVGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9z
aGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbHM6Ok1lZGlhQ29u
dHJvbHMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sczo6aGlkZUZ1bGxzY3JlZW5D
b250cm9sc1RpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbHMu
aDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTcGluQnV0dG9uRWxlbWVudDo6U3BpbkJ1dHRvbkVsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6U3BpbkJ1dHRvbkVsZW1lbnQ6OnJlcGVhdGluZ1RpbWVyRmlyZWQpOgorICAg
ICAgICAqIGh0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50Lmg6CisgICAgICAgICogaHRtbC90
cmFjay9Mb2FkYWJsZVRleHRUcmFjay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkYWJsZVRl
eHRUcmFjazo6TG9hZGFibGVUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGFibGVU
ZXh0VHJhY2s6OmxvYWRUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3RyYWNrL0xvYWRhYmxl
VGV4dFRyYWNrLmg6CisgICAgICAgICogaHRtbC90cmFjay9WVFRSZWdpb24uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VlRUUmVnaW9uOjpWVFRSZWdpb24pOgorICAgICAgICAoV2ViQ29yZTo6VlRU
UmVnaW9uOjpzY3JvbGxUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1ZUVFJlZ2lv
bi5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDaGFuZ2VSZWdpb25PdmVyc2V0VGFzazo6Q2hhbmdlUmVnaW9uT3ZlcnNldFRh
c2spOgorICAgICAgICAoV2ViQ29yZTo6Q2hhbmdlUmVnaW9uT3ZlcnNldFRhc2s6OnRpbWVyRmly
ZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjpSZXZhbGlkYXRlU3R5bGVB
dHRyaWJ1dGVUYXNrKToKKyAgICAgICAgKFdlYkNvcmU6OlJldmFsaWRhdGVTdHlsZUF0dHJpYnV0
ZVRhc2s6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZENsaWVudExvY2FsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhY2tlbmREaXNw
YXRjaFRhc2s6Okluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2spOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzazo6dGltZXJGaXJlZCk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3Rvck92ZXJsYXkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yT3ZlcmxheTo6SW5zcGVjdG9yT3ZlcmxheSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JPdmVybGF5Ojp1cGRhdGVQYWludFJlY3RzVGltZXJGaXJlZCk6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3Rvck92ZXJsYXkuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKToK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpoYW5kbGVTdWJzdGl0dXRlRGF0YUxv
YWROb3cpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1
dGVEYXRhTG9hZFNvb24pOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpGcmFtZUxvYWRlcik6CisgICAgICAgIChXZWJDb3JlOjpG
cmFtZUxvYWRlcjo6Y2hlY2tUaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2Fk
ZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvSW1hZ2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VMb2FkZXI6OkltYWdlTG9hZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9h
ZGVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvSW1hZ2VMb2FkZXIuaDoKKyAgICAg
ICAgKiBsb2FkZXIvTGlua0xvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMaW5rTG9hZGVy
OjpMaW5rTG9hZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkxpbmtMb2FkZXI6OmxpbmtMb2FkVGlt
ZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpMaW5rTG9hZGVyOjpsaW5rTG9hZGluZ0Vycm9y
VGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL0xpbmtMb2FkZXIuaDoKKyAgICAgICAgKiBs
b2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0
aW9uU2NoZWR1bGVyOjpOYXZpZ2F0aW9uU2NoZWR1bGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok5h
dmlnYXRpb25TY2hlZHVsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0
aW9uU2NoZWR1bGVyLmg6CisgICAgICAgICogbG9hZGVyL1BpbmdMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UGluZ0xvYWRlcjo6UGluZ0xvYWRlcik6CisgICAgICAgICogbG9hZGVyL1Bp
bmdMb2FkZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnRpbWVvdXRUaW1lckZp
cmVkKToKKyAgICAgICAgKiBsb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlByb2dyZXNzVHJhY2tlcjo6UHJvZ3Jlc3NUcmFja2VyKToKKyAgICAgICAgKFdlYkNv
cmU6OlByb2dyZXNzVHJhY2tlcjo6cHJvZ3Jlc3NIZWFydGJlYXRUaW1lckZpcmVkKToKKyAgICAg
ICAgKiBsb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNl
TG9hZFNjaGVkdWxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRTY2hlZHVs
ZXI6OlJlc291cmNlTG9hZFNjaGVkdWxlcik6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRTY2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvUmVzb3Vy
Y2VMb2FkU2NoZWR1bGVyLmg6CisgICAgICAgICogbG9hZGVyL1RleHRUcmFja0xvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2tMb2FkZXI6OlRleHRUcmFja0xvYWRlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2tMb2FkZXI6OmN1ZUxvYWRUaW1lckZpcmVkKToKKyAg
ICAgICAgKiBsb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpD
YWNoZWRSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6Q2FsbGJh
Y2s6OkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpDYWxsYmFj
azo6dGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmg6
CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpDYWNoZWRSZXNvdXJjZUxvYWRlcik6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Z2FyYmFnZUNvbGxlY3RE
b2N1bWVudFJlc291cmNlc1RpbWVyRmlyZWQpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpJY29uRGF0YWJhc2U6Okljb25EYXRhYmFzZSk6CisgICAg
ICAgIChXZWJDb3JlOjpJY29uRGF0YWJhc2U6OnN5bmNUaW1lckZpcmVkKToKKyAgICAgICAgKiBs
b2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaDoKKyAgICAgICAgKiBwYWdlL0F1dG9zY3JvbGxDb250
cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dG9zY3JvbGxDb250cm9sbGVyOjpBdXRv
c2Nyb2xsQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpBdXRvc2Nyb2xsQ29udHJvbGxl
cjo6YXV0b3Njcm9sbFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBhZ2UvQXV0b3Njcm9sbENvbnRy
b2xsZXIuaDoKKyAgICAgICAgKiBwYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FwdGlvblVzZXJQcmVmZXJlbmNlczo6Q2FwdGlvblVzZXJQcmVmZXJl
bmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0aW9uVXNlclByZWZlcmVuY2VzOjp0aW1lckZp
cmVkKToKKyAgICAgICAgKiBwYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaDoKKyAgICAgICAg
KiBwYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGOjpDYXB0aW9uVXNlclByZWZlcmVuY2Vz
TWVkaWFBRik6CisgICAgICAgIChXZWJDb3JlOjpDYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFB
Rjo6dXBkYXRlVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9DYXB0aW9uVXNlclByZWZlcmVu
Y2VzTWVkaWFBRi5oOgorICAgICAgICAqIHBhZ2UvRGV2aWNlQ29udHJvbGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpEZXZpY2VDb250cm9sbGVyOjpEZXZpY2VDb250cm9sbGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudCk6CisgICAgICAg
ICogcGFnZS9EZXZpY2VDb250cm9sbGVyLmg6CisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpFdmVudEhhbmRsZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpjdXJzb3JVcGRhdGVUaW1lckZpcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6YXV0b0hpZGVDdXJzb3JUaW1lckZpcmVkKToK
KyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6cmVjb2duaXplTG9uZ01vdXNlUHJlc3Mp
OgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpmYWtlTW91c2VNb3ZlRXZlbnRUaW1l
ckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aG92ZXJUaW1lckZpcmVk
KToKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICAqIHBhZ2UvRXZlbnRT
b3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRTb3VyY2U6OkV2ZW50U291cmNlKToK
KyAgICAgICAgKFdlYkNvcmU6OkV2ZW50U291cmNlOjpjb25uZWN0VGltZXJGaXJlZCk6CisgICAg
ICAgICogcGFnZS9FdmVudFNvdXJjZS5oOgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6Rm9jdXNDb250cm9sbGVy
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6Zm9jdXNSZXBhaW50VGltZXJG
aXJlZCk6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBwYWdl
L0ZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjpGcmFtZSk6CisgICAgICAgIChX
ZWJDb3JlOjpGcmFtZTo6b3ZlcmZsb3dBdXRvU2Nyb2xsVGltZXJGaXJlZCk6CisgICAgICAgICog
cGFnZS9GcmFtZS5oOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZyYW1lVmlldzo6RnJhbWVWaWV3KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmll
dzo6ZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZVZpZXc6OnNwZWN1bGF0aXZlVGlsaW5nRW5hYmxlVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJD
b3JlOjpGcmFtZVZpZXc6OmxheW91dFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RnJh
bWVWaWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHNUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNv
cmU6OkZyYW1lVmlldzo6Zmx1c2hBbnlQZW5kaW5nUG9zdExheW91dFRhc2tzKToKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lVmlldzo6cG9zdExheW91dFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBh
Z2UvRnJhbWVWaWV3Lmg6CisgICAgICAgICogcGFnZS9QYWdlT3ZlcmxheS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXkpOgorICAgICAgICAoV2ViQ29yZTo6
UGFnZU92ZXJsYXk6OmZhZGVBbmltYXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwYWdlL1Bh
Z2VPdmVybGF5Lmg6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6Omlt
YWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5o
OgorICAgICAgICAqIHBhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OkFuaW1hdGlvbkNvbnRy
b2xsZXJQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvbkNvbnRyb2xsZXJQcml2
YXRlOjp1cGRhdGVTdHlsZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKToKKyAgICAgICAgKFdlYkNv
cmU6OkFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjphbmltYXRpb25UaW1lckZpcmVkKToKKyAg
ICAgICAgKiBwYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZS5oOgorICAg
ICAgICAqIHBhZ2UvbWFjL1NlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBw
YWdlL21hYy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLm1tOgorICAgICAgICAoV2ViQ29yZTo6
U2VydmljZXNPdmVybGF5Q29udHJvbGxlcjo6U2VydmljZXNPdmVybGF5Q29udHJvbGxlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpkZXRlcm1pbmVBY3Rp
dmVIaWdobGlnaHRUaW1lckZpcmVkKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9Bc3luY1Nj
cm9sbGluZ0Nvb3JkaW5hdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xsaW5n
Q29vcmRpbmF0b3I6OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IpOgorICAgICAgICAoV2ViQ29y
ZTo6QXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6dXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFz
eW5jU2Nyb2xsVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3Jv
bGxpbmdDb29yZGluYXRvci5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxp
bmdDb29yZGluYXRvcklPUy5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxp
bmdDb29yZGluYXRvcklPUy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5h
dG9ySU9TOjpTY3JvbGxpbmdDb29yZGluYXRvcklPUyk6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxpbmdDb29yZGluYXRvcklPUzo6c2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJl
ZCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFj
Lmg6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFj
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWM6OlNjcm9sbGlu
Z0Nvb3JkaW5hdG9yTWFjKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5hdG9y
TWFjOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9IeXN0ZXJlc2lzQWN0aXZpdHkuaDoKKyAgICAgICAgKFdlYkNvcmU6Okh5c3RlcmVz
aXNBY3Rpdml0eTo6SHlzdGVyZXNpc0FjdGl2aXR5KToKKyAgICAgICAgKFdlYkNvcmU6Okh5c3Rl
cmVzaXNBY3Rpdml0eTo6aHlzdGVyZXNpc1RpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3Jt
L1Njcm9sbEFuaW1hdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjp1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
QW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6CisgICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3Jv
bGxiYXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjpTY3JvbGxiYXIpOgorICAg
ICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjphdXRvc2Nyb2xsVGltZXJGaXJlZCk6CisgICAgICAg
ICogcGxhdGZvcm0vU2Nyb2xsYmFyLmg6CisgICAgICAgICogcGxhdGZvcm0vVGltZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRlZmVycmFibGVPbmVTaG90VGltZXI6OkRlZmVycmFibGVPbmVTaG90
VGltZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGltZXI6OlRpbWVyKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFTZXNzaW9uOjpNZWRpYVNlc3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTZXNz
aW9uOjpjbGllbnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vTWVkaWFTZXNzaW9uLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFw
SW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwSW1hZ2U6OnN0YXJ0QW5pbWF0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcEltYWdlOjphZHZhbmNlQW5pbWF0aW9uKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxh
eWVyOjpNZWRpYVBsYXllcik6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6cmVsb2Fk
VGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNjcmF0Y2hCdWZmZXI6OlNjcmF0Y2hCdWZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6
U2NyYXRjaEJ1ZmZlcjo6dGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL01lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLm1t
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakM6Ok1lZGlhU2Vs
ZWN0aW9uR3JvdXBBVkZPYmpDKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2VsZWN0aW9uR3Jv
dXBBVkZPYmpDOjpzZWxlY3Rpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6Ok1lZGlhUGxheWVyUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jYS9MYXllclBvb2wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5ZXJQb29sOjpM
YXllclBvb2wpOgorICAgICAgICAoV2ViQ29yZTo6TGF5ZXJQb29sOjpwcnVuZVRpbWVyRmlyZWQp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlRpbGVDb250cm9sbGVyOjpUaWxlQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpU
aWxlQ29udHJvbGxlcjo6dGlsZVJldmFsaWRhdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVDb250cm9sbGVyLmg6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2EvVGlsZUdyaWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGlsZUdyaWQ6OlRp
bGVHcmlkKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVHcmlkOjpjb2hvcnRSZW1vdmFsVGltZXJG
aXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdyaWQuaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9JT1N1cmZhY2VQb29sLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OklPU3VyZmFjZVBvb2w6OklPU3VyZmFjZVBvb2wpOgorICAgICAgICAoV2ViQ29yZTo6
SU9TdXJmYWNlUG9vbDo6Y29sbGVjdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2NnL0lPU3VyZmFjZVBvb2wuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jZy9TdWJpbWFnZUNhY2hlV2l0aFRpbWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN1Ymlt
YWdlQ2FjaGVXaXRoVGltZXI6OlN1YmltYWdlQ2FjaGVXaXRoVGltZXIpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpNZWRpYVBsYXllclByaXZhdGVR
VEtpdCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6c2Vla1Rp
bWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9pb3MvTGVnYWN5VGlsZUNhY2hlLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6TGVnYWN5VGlsZUNhY2hlOjpMZWdhY3lUaWxlQ2FjaGUpOgorICAgICAgICAoV2ViQ29yZTo6
TGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3JlYXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhJREdh
bWVwYWRQcm92aWRlcjo6SElER2FtZXBhZFByb3ZpZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkhJ
REdhbWVwYWRQcm92aWRlcjo6Y29ubmVjdGlvbkRlbGF5VGltZXJGaXJlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpISURHYW1lcGFkUHJvdmlkZXI6OmlucHV0Tm90aWZpY2F0aW9uVGltZXJGaXJlZCk6
CisgICAgICAgICogcGxhdGZvcm0vbWFjL0hJREdhbWVwYWRQcm92aWRlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21h
Yy9TY3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9y
TWFjOjpTY3JvbGxBbmltYXRvck1hYyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
ck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZpcmVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVy
RmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRN
b2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6
RGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uQ2xpZW50TW9jazo6dGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vbW9j
ay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2Nr
L1BsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBs
YXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrOjpQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9j
ayk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jazo6c3Bl
YWtpbmdGaW5pc2hlZCk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVyTW9jay5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvRE5TUmVzb2x2ZVF1
ZXVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkROU1Jlc29sdmVRdWV1ZTo6RE5TUmVzb2x2ZVF1
ZXVlKToKKyAgICAgICAgKFdlYkNvcmU6OkROU1Jlc29sdmVRdWV1ZTo6dGltZXJGaXJlZCk6Cisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9ETlNSZXNvbHZlUXVldWUuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdGF0ZU5vdGlmaWVyLmg6CisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUhhbmRsZTo6ZmFpbHVyZVRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
UmVzb3VyY2VIYW5kbGUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFu
ZGxlSW50ZXJuYWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlSW50ZXJuYWw6
OlJlc291cmNlSGFuZGxlSW50ZXJuYWwpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvbWFj
L05ldHdvcmtTdGF0ZU5vdGlmaWVyTWFjLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtT
dGF0ZU5vdGlmaWVyOjpuZXR3b3JrU3RhdGVDaGFuZ2VUaW1lckZpcmVkKToKKyAgICAgICAgKFdl
YkNvcmU6Ok5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpOZXR3b3JrU3RhdGVOb3RpZmllcik6CisgICAg
ICAgICogcmVuZGVyaW5nL0ltYWdlUXVhbGl0eUNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VRdWFsaXR5Q29udHJvbGxlcjo6SW1hZ2VRdWFsaXR5Q29udHJvbGxlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZVF1YWxpdHlDb250cm9sbGVyOjpoaWdoUXVhbGl0eVJlcGFp
bnRUaW1lckZpcmVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvSW1hZ2VRdWFsaXR5Q29udHJvbGxl
ci5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCdXR0b24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyQnV0dG9uOjpzdHlsZURpZENoYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCdXR0b246OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCdXR0
b24uaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6UmVuZGVyTGF5ZXJDb21wb3Np
dG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6dXBkYXRlQ29t
cG9zaXRpbmdMYXllcnNUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVy
Q29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjpwYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXJGaXJlZCk6Cisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJNYXJxdWVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hcnF1
ZWU6OlJlbmRlck1hcnF1ZWUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWFycXVlZTo6dGlt
ZXJGaXJlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUuaDoKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlck5hbWVkRmxvd1RocmVhZDo6UmVuZGVyTmFtZWRGbG93VGhyZWFkKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlck5hbWVkRmxvd1RocmVhZDo6cmVnaW9uT3ZlcnNldENoYW5nZUV2ZW50
VGltZXJGaXJlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5o
OgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJQcm9ncmVzcy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJQcm9ncmVzczo6UmVuZGVyUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJQcm9ncmVzcy5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJWaWV3LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclZpZXc6OlJlbmRlclZpZXcpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVmlldzo6bGF6eVJlcGFpbnRUaW1lckZpcmVkKToKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVmlldy5oOgorICAgICAgICAqIHJlcGxheS9FdmVudExvb3BJbnB1dERpc3Bh
dGNoZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRMb29wSW5wdXREaXNwYXRjaGVyOjpF
dmVudExvb3BJbnB1dERpc3BhdGNoZXIpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRMb29wSW5w
dXREaXNwYXRjaGVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiByZXBsYXkvRXZlbnRMb29wSW5w
dXREaXNwYXRjaGVyLmg6CisgICAgICAgICogc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFJbXBsOjpTdG9yYWdlQXJlYUltcGwpOgorICAg
ICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFJbXBsOjpjbG9zZURhdGFiYXNlVGltZXJGaXJlZCk6
CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlQXJlYUltcGw6OmNsb3NlRGF0YWJhc2VJZklkbGUp
OgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmg6CisgICAgICAgICogc3RvcmFn
ZS9TdG9yYWdlQXJlYVN5bmMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFTeW5j
OjpTdG9yYWdlQXJlYVN5bmMpOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFTeW5jOjpz
Y2hlZHVsZUZpbmFsU3luYyk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlQXJlYVN5bmM6OnN5
bmNUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VBcmVhU3luYzo6c2NoZWR1
bGVTeW5jKToKKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5oOgorICAgICAgICAq
IHN2Zy9TVkdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0VsZW1lbnQ6OnN2Z0xv
YWRFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIHN2Zy9TVkdFbGVtZW50Lmg6CisgICAgICAg
ICogc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU2NyaXB0
RWxlbWVudDo6U1ZHU2NyaXB0RWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR1N0eWxlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTdHlsZUVsZW1lbnQ6OlNWR1N0eWxlRWxlbWVu
dCk6CisgICAgICAgICogc3ZnL1NWR1VzZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHVXNlRWxlbWVudDo6U1ZHVXNlRWxlbWVudCk6CisgICAgICAgICogc3ZnL2FuaW1hdGlvbi9T
TUlMVGltZUNvbnRhaW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTTUlMVGltZUNvbnRhaW5l
cjo6U01JTFRpbWVDb250YWluZXIpOgorICAgICAgICAoV2ViQ29yZTo6U01JTFRpbWVDb250YWlu
ZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHN2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWlu
ZXIuaDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0
bGU6OlhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlKToKKyAgICAgICAgKFdlYkNv
cmU6OlhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlOjpkaXNwYXRjaERlZmVycmVk
RXZlbnRzKToKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0
bGUuaDoKKworMjAxNC0xMS0yMSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29t
PgorCiAgICAgICAgIE1ha2UgbWVtb3J5Q2FjaGUoKSByZXR1cm4gYSByZWZlcmVuY2UKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODkzOQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9D
aGFuZ2VMb2cKaW5kZXggMDJhNTBkOWI0ZTZkYmZmMDYzZDVjNGMzNTE3OTBmMmFlNzU4NjdiMy4u
MTg0NDRiYzFlODRmMWQ0YTU4MzBlNjVjM2NkZDViODJlMGY4ZjA4ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxv
ZwpAQCAtMSw1ICsxLDIxIEBACiAyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNj
YUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVtb3ZlIHRoZSBUaW1lciBwYXJhbWV0ZXJzIGZyb20g
dGltZXIgY2FsbGJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMzg5NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5oOgor
ICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbToK
KyAgICAgICAgKFdlYktpdDo6TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5OjpOZXRzY2FwZVBs
dWdpbkluc3RhbmNlUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbkluc3Rh
bmNlUHJveHk6OnJlcXVlc3RUaW1lckZpcmVkKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYk5ldHNj
YXBlUGx1Z2luU3RyZWFtLmg6CisgICAgICAgICogUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblN0
cmVhbS5tbToKKyAgICAgICAgKFdlYk5ldHNjYXBlUGx1Z2luU3RyZWFtOjpXZWJOZXRzY2FwZVBs
dWdpblN0cmVhbSk6CisgICAgICAgIChXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVsaXZlckRh
dGFUaW1lckZpcmVkKToKKworMjAxNC0xMS0yMSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FA
YXBwbGUuY29tPgorCiAgICAgICAgIE1ha2UgbWVtb3J5Q2FjaGUoKSByZXR1cm4gYSByZWZlcmVu
Y2UKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODkz
OQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggOThlMDAyYjBjZGI1M2U4OThmZWNlMjdhYTg4MTcxNGNh
MzkxZjNmYy4uZDE2MTFjMzAxNjNhNjgzMDJmNTIyMjg0N2NmZWZkZWFlOWY3N2JkZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2lu
L0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE2IEBACiAyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNzb24g
IDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVtb3ZlIHRoZSBUaW1lciBwYXJhbWV0
ZXJzIGZyb20gdGltZXIgY2FsbGJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzg5NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIEZ1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXIuY3BwOgorICAgICAg
ICAoRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlcjo6dGltZXJGaXJlZCk6CisgICAgICAgICogRnVs
bHNjcmVlblZpZGVvQ29udHJvbGxlci5oOgorCisyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNzb24g
IDxhbmRlcnNjYUBhcHBsZS5jb20+CisKICAgICAgICAgTWFrZSBtZW1vcnlDYWNoZSgpIHJldHVy
biBhIHJlZmVyZW5jZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTM4OTM5CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA4NTkxYWQ1ZTA2Mzg5OGUxNDFkZGQ1ZjM4OTJj
OWIxMDM2ZWUwMDY0Li45ODdjODk1ZmNhZjBhYmE0ZWUzMDAxMDk5NjM3YTc0NDVjODc3YjRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCkBAIC0xLDUgKzEsMzcgQEAKIDIwMTQtMTEtMjEgIEFuZGVycyBDYXJsc3NvbiAg
PGFuZGVyc2NhQGFwcGxlLmNvbT4KIAorICAgICAgICBSZW1vdmUgdGhlIFRpbWVyIHBhcmFtZXRl
cnMgZnJvbSB0aW1lciBjYWxsYmFja3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzODk3NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZGVyOjpOZXR3b3JrUmVzb3Vy
Y2VMb2FkZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmJ1ZmZl
cmluZ1RpbWVyRmlyZWQpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJj
ZUxvYWRlci5oOgorICAgICAgICAqIFNoYXJlZC9XZWJNZW1vcnlTYW1wbGVyLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViTWVtb3J5U2FtcGxlcjo6V2ViTWVtb3J5U2FtcGxlcik6CisgICAgICAg
IChXZWJLaXQ6OldlYk1lbW9yeVNhbXBsZXI6OnNhbXBsZVRpbWVyRmlyZWQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJNZW1vcnlTYW1wbGVyOjpzdG9wVGltZXJGaXJlZCk6CisgICAgICAgICogU2hh
cmVkL1dlYk1lbW9yeVNhbXBsZXIuaDoKKyAgICAgICAgKiBTaGFyZWQvbWFjL1JlbW90ZUxheWVy
QmFja2luZ1N0b3JlQ29sbGVjdGlvbi5oOgorICAgICAgICAqIFNoYXJlZC9tYWMvUmVtb3RlTGF5
ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXll
ckJhY2tpbmdTdG9yZUNvbGxlY3Rpb246OlJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlv
bik6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6
dm9sYXRpbGl0eVRpbWVyRmlyZWQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVn
aW5WaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6UGx1Z2luVmlldyk6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJl
YS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvUmVtb3RlTGF5ZXJUcmVlRHJh
d2luZ0FyZWEubW06CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVh
OjpSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxh
eWVyVHJlZURyYXdpbmdBcmVhOjpsYXllckZsdXNoVGltZXJGaXJlZCk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6V2Vi
UHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OnByb2Nlc3NTdXNwZW5zaW9u
Q2xlYW51cFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpub25WaXNp
YmxlUHJvY2Vzc0NsZWFudXBUaW1lckZpcmVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuaDoKKworMjAxNC0xMS0yMSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgorCiAgICAgICAgIE1ha2UgbWVtb3J5Q2FjaGUoKSByZXR1cm4gYSByZWZlcmVuY2UKICAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODkzOQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXIuaCBiL1NvdXJjZS9XVEYvd3Rm
L1J1bkxvb3BUaW1lci5oCmluZGV4IGQ4Zjk0YjRiMzNkMmNlY2M3YTRiYzcxOGE0OTYyMWE0ODE2
MDE5ZGYuLjM3ODBlNzZjMDMxMzEwNGFlYzdmZDc5NzMyM2ViNDEwNGY4M2U1OTcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1J1
bkxvb3BUaW1lci5oCkBAIC02MSwxNCArNjEsMTUgQEAgcHJpdmF0ZToKICNlbmRpZgogfTsKIAor
Ly8gRklYTUU6IFRoaXMgZG9lc24ndCBoYXZlIHRvIGJlIGEgY2xhc3MgdGVtcGxhdGUuCiB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVGltZXJGaXJlZENsYXNzPiBjbGFzcyBSdW5Mb29wVGltZXIgOiBwdWJs
aWMgUnVuTG9vcFRpbWVyQmFzZSB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiB2b2lkIChUaW1lckZp
cmVkQ2xhc3M6OipUaW1lckZpcmVkRnVuY3Rpb24pKFJ1bkxvb3BUaW1lciopOworICAgIHR5cGVk
ZWYgdm9pZCAoVGltZXJGaXJlZENsYXNzOjoqVGltZXJGaXJlZEZ1bmN0aW9uKSgpOwogCi0gICAg
UnVuTG9vcFRpbWVyKFRpbWVyRmlyZWRDbGFzcyogbywgVGltZXJGaXJlZEZ1bmN0aW9uIGYpCi0g
ICAgICAgIDogbV9vYmplY3QobyksIG1fZnVuY3Rpb24oZikgeyB9CisgICAgUnVuTG9vcFRpbWVy
KFRpbWVyRmlyZWRDbGFzcyYgbywgVGltZXJGaXJlZEZ1bmN0aW9uIGYpCisgICAgICAgIDogbV9v
YmplY3QoJm8pLCBtX2Z1bmN0aW9uKGYpIHsgfQogCi0gICAgdmlydHVhbCB2b2lkIGZpcmVkKCkg
eyAobV9vYmplY3QtPiptX2Z1bmN0aW9uKSh0aGlzKTsgfQorICAgIHZpcnR1YWwgdm9pZCBmaXJl
ZCgpIHsgKG1fb2JqZWN0LT4qbV9mdW5jdGlvbikoKTsgfQogCiBwcml2YXRlOgogICAgIFRpbWVy
RmlyZWRDbGFzcyogbV9vYmplY3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5jcHAKaW5kZXggMDYwZDc3ZTUzYzQ3
OTBhYjFhMTc0NWFkYzJhNWFhN2QyY2RhMWZlMS4uYzY3MmRlMDdkY2JlNTExZmIzZTFiYmZmMTM4
NDAzNzU1N2IyMDY0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbmNyeXB0
ZWRtZWRpYS9NZWRpYUtleVNlc3Npb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZW5jcnlwdGVkbWVkaWEvTWVkaWFLZXlTZXNzaW9uLmNwcApAQCAtNTEsOCArNTEsOCBAQCBNZWRp
YUtleVNlc3Npb246Ok1lZGlhS2V5U2Vzc2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0LCBNZWRpYUtleXMqIGtleQogICAgICwgbV9rZXlTeXN0ZW0oa2V5U3lzdGVtKQogICAgICwg
bV9hc3luY0V2ZW50UXVldWUoKnRoaXMpCiAgICAgLCBtX3Nlc3Npb24oa2V5cy0+Y2RtKCktPmNy
ZWF0ZVNlc3Npb24oKSkKLSAgICAsIG1fa2V5UmVxdWVzdFRpbWVyKHRoaXMsICZNZWRpYUtleVNl
c3Npb246OmtleVJlcXVlc3RUaW1lckZpcmVkKQotICAgICwgbV9hZGRLZXlUaW1lcih0aGlzLCAm
TWVkaWFLZXlTZXNzaW9uOjphZGRLZXlUaW1lckZpcmVkKQorICAgICwgbV9rZXlSZXF1ZXN0VGlt
ZXIoKnRoaXMsICZNZWRpYUtleVNlc3Npb246OmtleVJlcXVlc3RUaW1lckZpcmVkKQorICAgICwg
bV9hZGRLZXlUaW1lcigqdGhpcywgJk1lZGlhS2V5U2Vzc2lvbjo6YWRkS2V5VGltZXJGaXJlZCkK
IHsKICAgICBtX3Nlc3Npb24tPnNldENsaWVudCh0aGlzKTsKIH0KQEAgLTg5LDcgKzg5LDcgQEAg
dm9pZCBNZWRpYUtleVNlc3Npb246OmdlbmVyYXRlS2V5UmVxdWVzdChjb25zdCBTdHJpbmcmIG1p
bWVUeXBlLCBVaW50OEFycmF5KiBpbmkKICAgICBtX2tleVJlcXVlc3RUaW1lci5zdGFydE9uZVNo
b3QoMCk7CiB9CiAKLXZvaWQgTWVkaWFLZXlTZXNzaW9uOjprZXlSZXF1ZXN0VGltZXJGaXJlZChU
aW1lciYpCit2b2lkIE1lZGlhS2V5U2Vzc2lvbjo6a2V5UmVxdWVzdFRpbWVyRmlyZWQoKQogewog
ICAgIEFTU0VSVChtX3BlbmRpbmdLZXlSZXF1ZXN0cy5zaXplKCkpOwogICAgIGlmICghbV9zZXNz
aW9uKQpAQCAtMTQ3LDcgKzE0Nyw3IEBAIHZvaWQgTWVkaWFLZXlTZXNzaW9uOjp1cGRhdGUoVWlu
dDhBcnJheSoga2V5LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICBtX2FkZEtleVRpbWVyLnN0YXJ0
T25lU2hvdCgwKTsKIH0KIAotdm9pZCBNZWRpYUtleVNlc3Npb246OmFkZEtleVRpbWVyRmlyZWQo
VGltZXImKQordm9pZCBNZWRpYUtleVNlc3Npb246OmFkZEtleVRpbWVyRmlyZWQoKQogewogICAg
IEFTU0VSVChtX3BlbmRpbmdLZXlzLnNpemUoKSk7CiAgICAgaWYgKCFtX3Nlc3Npb24pCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vz
c2lvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtleVNl
c3Npb24uaAppbmRleCA5YzMxMWFkMmY2NDFkMTBkMzBhOTVhNGEzMTJhOTc0NDNjYjgwZTBjLi40
ZjU3MzJiMmY0YjgxYjY2MDA1ZmE3ZWViMzBiMDBiNWFhMmU2NTVlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW5jcnlwdGVkbWVkaWEvTWVkaWFLZXlTZXNzaW9uLmgK
QEAgLTg0LDggKzg0LDggQEAgcHVibGljOgogCiBwcm90ZWN0ZWQ6CiAgICAgTWVkaWFLZXlTZXNz
aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBNZWRpYUtleXMqLCBjb25zdCBTdHJpbmcmIGtl
eVN5c3RlbSk7Ci0gICAgdm9pZCBrZXlSZXF1ZXN0VGltZXJGaXJlZChUaW1lciYpOwotICAgIHZv
aWQgYWRkS2V5VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQga2V5UmVxdWVzdFRpbWVyRmly
ZWQoKTsKKyAgICB2b2lkIGFkZEtleVRpbWVyRmlyZWQoKTsKIAogICAgIC8vIENETVNlc3Npb25D
bGllbnQKICAgICB2aXJ0dWFsIHZvaWQgc2VuZE1lc3NhZ2UoVWludDhBcnJheSosIFN0cmluZyBk
ZXN0aW5hdGlvblVSTCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xv
Y2F0aW9uL0dlb2xvY2F0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRp
b24vR2VvbG9jYXRpb24uY3BwCmluZGV4IDgxZDYxMzZlMTQzYzU5MzdiNTQ3ZDhhMjEyMjE3YzYz
YWJiNWU1NTguLjE3ZGYyNjg0MmJhMWExNjAwZTYzNGI0NzEzMTZlMDlkMDc0NGZhZDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3Bw
CkBAIC04MCw3ICs4MCw3IEBAIEdlb2xvY2F0aW9uOjpHZW9Ob3RpZmllcjo6R2VvTm90aWZpZXIo
R2VvbG9jYXRpb24qIGdlb2xvY2F0aW9uLCBQYXNzUmVmUHRyPFBvc2l0CiAgICAgLCBtX3N1Y2Nl
c3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JD
YWxsYmFjaykKICAgICAsIG1fb3B0aW9ucyhvcHRpb25zKQotICAgICwgbV90aW1lcih0aGlzLCAm
R2VvbG9jYXRpb246Okdlb05vdGlmaWVyOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhp
cywgJkdlb2xvY2F0aW9uOjpHZW9Ob3RpZmllcjo6dGltZXJGaXJlZCkKICAgICAsIG1fdXNlQ2Fj
aGVkUG9zaXRpb24oZmFsc2UpCiB7CiAgICAgQVNTRVJUKG1fZ2VvbG9jYXRpb24pOwpAQCAtMTQy
LDcgKzE0Miw3IEBAIHZvaWQgR2VvbG9jYXRpb246Okdlb05vdGlmaWVyOjpzdG9wVGltZXIoKQog
ICAgIG1fdGltZXIuc3RvcCgpOwogfQogCi12b2lkIEdlb2xvY2F0aW9uOjpHZW9Ob3RpZmllcjo6
dGltZXJGaXJlZChUaW1lciYpCit2b2lkIEdlb2xvY2F0aW9uOjpHZW9Ob3RpZmllcjo6dGltZXJG
aXJlZCgpCiB7CiAgICAgbV90aW1lci5zdG9wKCk7CiAKQEAgLTIzOCw3ICsyMzgsNyBAQCBHZW9s
b2NhdGlvbjo6R2VvbG9jYXRpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKICNp
ZiBQTEFURk9STShJT1MpCiAgICAgLCBtX2lzU3VzcGVuZGVkKGZhbHNlKQogICAgICwgbV9oYXND
aGFuZ2VkUG9zaXRpb24oZmFsc2UpCi0gICAgLCBtX3Jlc3VtZVRpbWVyKHRoaXMsICZHZW9sb2Nh
dGlvbjo6cmVzdW1lVGltZXJGaXJlZCkKKyAgICAsIG1fcmVzdW1lVGltZXIoKnRoaXMsICZHZW9s
b2NhdGlvbjo6cmVzdW1lVGltZXJGaXJlZCkKICNlbmRpZgogewogfQpAQCAtMjk3LDcgKzI5Nyw3
IEBAIHZvaWQgR2VvbG9jYXRpb246OnJlc3VtZSgpCiAgICAgICAgIG1fcmVzdW1lVGltZXIuc3Rh
cnRPbmVTaG90KDApOwogfQogCi12b2lkIEdlb2xvY2F0aW9uOjpyZXN1bWVUaW1lckZpcmVkKFRp
bWVyJikKK3ZvaWQgR2VvbG9jYXRpb246OnJlc3VtZVRpbWVyRmlyZWQoKQogewogICAgIG1faXNT
dXNwZW5kZWQgPSBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9n
ZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2Nh
dGlvbi9HZW9sb2NhdGlvbi5oCmluZGV4IDU1NjIzZDBlMTFkNzIwODBiMDMwNmQ5MGM3OThiNTFh
ZWRjMzk4NTQuLjUyNmRkYzBjYTJlZjcwNGIxNzc5ZDZiOTkwMTI3ZDNjYmE1NTY5OTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgKQEAg
LTEwMCw3ICsxMDAsNyBAQCBwcml2YXRlOgogCiAgICAgICAgIHZvaWQgc3RhcnRUaW1lcklmTmVl
ZGVkKCk7CiAgICAgICAgIHZvaWQgc3RvcFRpbWVyKCk7Ci0gICAgICAgIHZvaWQgdGltZXJGaXJl
ZChUaW1lciYpOworICAgICAgICB2b2lkIHRpbWVyRmlyZWQoKTsKICAgICAgICAgYm9vbCBoYXNa
ZXJvVGltZW91dCgpIGNvbnN0OwogCiAgICAgcHJpdmF0ZToKQEAgLTE4Niw3ICsxODYsNyBAQCBw
cml2YXRlOgogICAgIGJvb2wgbV9oYXNDaGFuZ2VkUG9zaXRpb247CiAgICAgUmVmUHRyPFBvc2l0
aW9uRXJyb3I+IG1fZXJyb3JXYWl0aW5nRm9yUmVzdW1lOwogCi0gICAgdm9pZCByZXN1bWVUaW1l
ckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCByZXN1bWVUaW1lckZpcmVkKCk7CiAgICAgVGltZXIg
bV9yZXN1bWVUaW1lcjsKICNlbmRpZiAvLyBQTEFURk9STShJT1MpCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbkJhY2tlbmQu
Y3BwCmluZGV4IGE4NjllMTMwOGViNDQzNTczYjMyZTAwMTdiZWQ0YjdlOTM0ZTIzN2IuLjI4NDA5
Y2I3OGNlYjkzZmY2NzJhZDRjNmRiNThhODQxNWUwYzdhY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb25CYWNrZW5kLmNw
cApAQCAtNTcsNyArNTcsNyBAQCBJREJUcmFuc2FjdGlvbkJhY2tlbmQ6OklEQlRyYW5zYWN0aW9u
QmFja2VuZChJREJEYXRhYmFzZUJhY2tlbmQqIGRhdGFiYXNlQmFja2VuZAogICAgICwgbV9jb21t
aXRQZW5kaW5nKGZhbHNlKQogICAgICwgbV9jYWxsYmFja3MoY2FsbGJhY2tzKQogICAgICwgbV9k
YXRhYmFzZShkYXRhYmFzZUJhY2tlbmQpCi0gICAgLCBtX3Rhc2tUaW1lcih0aGlzLCAmSURCVHJh
bnNhY3Rpb25CYWNrZW5kOjp0YXNrVGltZXJGaXJlZCkKKyAgICAsIG1fdGFza1RpbWVyKCp0aGlz
LCAmSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0YXNrVGltZXJGaXJlZCkKICAgICAsIG1fcGVuZGlu
Z1ByZWVtcHRpdmVFdmVudHMoMCkKICAgICAsIG1faWQoaWQpCiB7CkBAIC0yNzAsNyArMjcwLDcg
QEAgdm9pZCBJREJUcmFuc2FjdGlvbkJhY2tlbmQ6OmNvbW1pdCgpCiAgICAgfSk7CiB9CiAKLXZv
aWQgSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0YXNrVGltZXJGaXJlZChUaW1lciYpCit2b2lkIElE
QlRyYW5zYWN0aW9uQmFja2VuZDo6dGFza1RpbWVyRmlyZWQoKQogewogICAgIExPRyhTdG9yYWdl
QVBJLCAiSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0YXNrVGltZXJGaXJlZCIpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbkJhY2tl
bmQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFj
a2VuZC5oCmluZGV4IGJhNWVhNGY4YTgxNjA0MzBkZTM2ZTgwYjAxYjM3OGZmNTJmMGI1ZmEuLmU2
MDJmMjQ3ZDZhNDg5YWRlNTQwMmY4NTk3MTg2OGMzOTQ5ZGIxNTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5o
CkBAIC05Niw3ICs5Niw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBpc1Rhc2tRdWV1ZUVtcHR5KCkg
Y29uc3Q7CiAgICAgYm9vbCBoYXNQZW5kaW5nVGFza3MoKSBjb25zdDsKIAotICAgIHZvaWQgdGFz
a1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRhc2tUaW1lckZpcmVkKCk7CiAgICAgdm9p
ZCBjbG9zZU9wZW5DdXJzb3JzKCk7CiAKICAgICBjb25zdCBIYXNoU2V0PGludDY0X3Q+IG1fb2Jq
ZWN0U3RvcmVJZHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291
cmNlL1NvdXJjZUJ1ZmZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNl
L1NvdXJjZUJ1ZmZlci5jcHAKaW5kZXggNzY1OTU3N2QzNmQzMzFkMGQ2YTYxNGZmMzQ1YzcwZDk4
ODhiOGFjYi4uOTIyZmFmZGMwODRlMGJmMTQ2MjRmMTA0MGZmZWUyODE3OGQ4M2Q5MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNw
cApAQCAtMTA5LDcgKzEwOSw3IEBAIFNvdXJjZUJ1ZmZlcjo6U291cmNlQnVmZmVyKFBhc3NSZWY8
U291cmNlQnVmZmVyUHJpdmF0ZT4gc291cmNlQnVmZmVyUHJpdmF0ZSwgTWVkCiAgICAgLCBtX3By
aXZhdGUoV1RGOjptb3ZlKHNvdXJjZUJ1ZmZlclByaXZhdGUpKQogICAgICwgbV9zb3VyY2Uoc291
cmNlKQogICAgICwgbV9hc3luY0V2ZW50UXVldWUoKnRoaXMpCi0gICAgLCBtX2FwcGVuZEJ1ZmZl
clRpbWVyKHRoaXMsICZTb3VyY2VCdWZmZXI6OmFwcGVuZEJ1ZmZlclRpbWVyRmlyZWQpCisgICAg
LCBtX2FwcGVuZEJ1ZmZlclRpbWVyKCp0aGlzLCAmU291cmNlQnVmZmVyOjphcHBlbmRCdWZmZXJU
aW1lckZpcmVkKQogICAgICwgbV9oaWdoZXN0UHJlc2VudGF0aW9uRW5kVGltZXN0YW1wKE1lZGlh
VGltZTo6aW52YWxpZFRpbWUoKSkKICAgICAsIG1fYnVmZmVyZWQoVGltZVJhbmdlczo6Y3JlYXRl
KCkpCiAgICAgLCBtX2FwcGVuZFN0YXRlKFdhaXRpbmdGb3JTZWdtZW50KQpAQCAtMTE5LDcgKzEx
OSw3IEBAIFNvdXJjZUJ1ZmZlcjo6U291cmNlQnVmZmVyKFBhc3NSZWY8U291cmNlQnVmZmVyUHJp
dmF0ZT4gc291cmNlQnVmZmVyUHJpdmF0ZSwgTWVkCiAgICAgLCBtX3JlcG9ydGVkRXh0cmFNZW1v
cnlDb3N0KDApCiAgICAgLCBtX3BlbmRpbmdSZW1vdmVTdGFydChNZWRpYVRpbWU6OmludmFsaWRU
aW1lKCkpCiAgICAgLCBtX3BlbmRpbmdSZW1vdmVFbmQoTWVkaWFUaW1lOjppbnZhbGlkVGltZSgp
KQotICAgICwgbV9yZW1vdmVUaW1lcih0aGlzLCAmU291cmNlQnVmZmVyOjpyZW1vdmVUaW1lckZp
cmVkKQorICAgICwgbV9yZW1vdmVUaW1lcigqdGhpcywgJlNvdXJjZUJ1ZmZlcjo6cmVtb3ZlVGlt
ZXJGaXJlZCkKICAgICAsIG1fdXBkYXRpbmcoZmFsc2UpCiAgICAgLCBtX3JlY2VpdmVkRmlyc3RJ
bml0aWFsaXphdGlvblNlZ21lbnQoZmFsc2UpCiAgICAgLCBtX2FjdGl2ZShmYWxzZSkKQEAgLTQ0
Nyw3ICs0NDcsNyBAQCB2b2lkIFNvdXJjZUJ1ZmZlcjo6YXBwZW5kQnVmZmVySW50ZXJuYWwodW5z
aWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgc2l6ZSwgRXhjZQogICAgIHJlcG9ydEV4dHJhTWVt
b3J5Q29zdCgpOwogfQogCi12b2lkIFNvdXJjZUJ1ZmZlcjo6YXBwZW5kQnVmZmVyVGltZXJGaXJl
ZChUaW1lciYpCit2b2lkIFNvdXJjZUJ1ZmZlcjo6YXBwZW5kQnVmZmVyVGltZXJGaXJlZCgpCiB7
CiAgICAgaWYgKGlzUmVtb3ZlZCgpKQogICAgICAgICByZXR1cm47CkBAIC02NzIsNyArNjcyLDcg
QEAgdm9pZCBTb3VyY2VCdWZmZXI6OnJlbW92ZUNvZGVkRnJhbWVzKGNvbnN0IE1lZGlhVGltZSYg
c3RhcnQsIGNvbnN0IE1lZGlhVGltZSYgZW4KICAgICBMT0coTWVkaWEsICJTb3VyY2VCdWZmZXI6
OnJlbW92ZUNvZGVkRnJhbWVzKCVwKSAtIGJ1ZmZlcmVkID0gJXMiLCB0aGlzLCB0b1N0cmluZyht
X2J1ZmZlcmVkLT5yYW5nZXMoKSkudXRmOCgpLmRhdGEoKSk7CiB9CiAKLXZvaWQgU291cmNlQnVm
ZmVyOjpyZW1vdmVUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU291cmNlQnVmZmVyOjpyZW1vdmVU
aW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQobV91cGRhdGluZyk7CiAgICAgQVNTRVJUKG1fcGVu
ZGluZ1JlbW92ZVN0YXJ0LmlzVmFsaWQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuaAppbmRleCBkMzY4MDJjZWM5ZjA2YTk3MmM4ZDM5
ZDY4MTVlZTdjMzFjMTkyMTU4Li4wNjYxMDM4M2ZlMDM1YzYzNTY2NjBjMGNlZDI5OTc2ZTBhZmZj
MjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJj
ZUJ1ZmZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNl
QnVmZmVyLmgKQEAgLTE1Miw3ICsxNTIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2NoZWR1bGVF
dmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50TmFtZSk7CiAKICAgICB2b2lkIGFwcGVuZEJ1
ZmZlckludGVybmFsKHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCwgRXhjZXB0aW9uQ29kZSYpOwot
ICAgIHZvaWQgYXBwZW5kQnVmZmVyVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgYXBwZW5k
QnVmZmVyVGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCBzZXRBY3RpdmUoYm9vbCk7CiAKQEAgLTE2
Niw3ICsxNjYsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBtb25pdG9yQnVmZmVyaW5nUmF0ZSgp
OwogCi0gICAgdm9pZCByZW1vdmVUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCByZW1vdmVU
aW1lckZpcmVkKCk7CiAgICAgdm9pZCByZW1vdmVDb2RlZEZyYW1lcyhjb25zdCBNZWRpYVRpbWUm
IHN0YXJ0LCBjb25zdCBNZWRpYVRpbWUmIGVuZCk7CiAKICAgICBzaXplX3QgZXh0cmFNZW1vcnlD
b3N0KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL01lZGlhU3RyZWFtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
TWVkaWFTdHJlYW0uY3BwCmluZGV4IDVhYzUxNzZlZGVjZmI3NTg4OTMyYjA4MWFmNTkyMDMxY2Fi
MTQxODkuLmYwOTY1MGU1ZTNjMDY4MDU4MjJjNmY1ZTUxMmQ3NTljZjI3NDJiNjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCkBA
IC04Niw3ICs4Niw3IEBAIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IE1lZGlhU3RyZWFtOjpjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgUGFzCiBNZWRpYVN0cmVhbTo6TWVk
aWFTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgUGFzc1JlZlB0cjxNZWRp
YVN0cmVhbVByaXZhdGU+IHByaXZhdGVTdHJlYW0pCiAgICAgOiBDb250ZXh0RGVzdHJ1Y3Rpb25P
YnNlcnZlcigmY29udGV4dCkKICAgICAsIG1fcHJpdmF0ZShwcml2YXRlU3RyZWFtKQotICAgICwg
bV9zY2hlZHVsZWRFdmVudFRpbWVyKHRoaXMsICZNZWRpYVN0cmVhbTo6c2NoZWR1bGVkRXZlbnRU
aW1lckZpcmVkKQorICAgICwgbV9zY2hlZHVsZWRFdmVudHRpbWVyKCp0aGlzLCAmTWVkaWFTdHJl
YW06OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCkKIHsKICAgICBBU1NFUlQobV9wcml2YXRlKTsK
ICAgICBtX3ByaXZhdGUtPnNldENsaWVudCh0aGlzKTsKQEAgLTM2MSw3ICszNjEsNyBAQCB2b2lk
IE1lZGlhU3RyZWFtOjpzY2hlZHVsZURpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZl
bnQpCiAgICAgICAgIG1fc2NoZWR1bGVkRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAK
LXZvaWQgTWVkaWFTdHJlYW06OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZChUaW1lciopCit2b2lk
IE1lZGlhU3RyZWFtOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKQogewogICAgIFZlY3RvcjxS
ZWZQdHI8RXZlbnQ+PiBldmVudHM7CiAgICAgZXZlbnRzLnN3YXAobV9zY2hlZHVsZWRFdmVudHMp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0
cmVhbS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5o
CmluZGV4IDgwNmZkY2NhNWM4NWNmZjdmYTc3OWQ5MWQ1MWUwZmJmYmNkNmNmMDYuLmQ0OWFmNjE2
NDBmZjQzZTNhNGY3NGRkZGM5ZTlhYTU3MGIzYTRkY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmgKQEAgLTEyMCw3ICsxMjAsNyBAQCBw
cml2YXRlOgogICAgIGJvb2wgaGF2ZVRyYWNrV2l0aFNvdXJjZShQYXNzUmVmUHRyPE1lZGlhU3Ry
ZWFtU291cmNlPik7CiAKICAgICB2b2lkIHNjaGVkdWxlRGlzcGF0Y2hFdmVudChQYXNzUmVmUHRy
PEV2ZW50Pik7Ci0gICAgdm9pZCBzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoVGltZXIqKTsKKyAg
ICB2b2lkIHNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCBjbG9uZU1lZGlh
U3RyZWFtVHJhY2tWZWN0b3IoVmVjdG9yPFJlZlB0cjxNZWRpYVN0cmVhbVRyYWNrPj4mLCBjb25z
dCBWZWN0b3I8UmVmUHRyPE1lZGlhU3RyZWFtVHJhY2s+PiYpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmNwcAppbmRleCBlMjQy
YzQwZDI1YzZlZjA4ZWMyOGY0NzE3ZWI5M2MyZjBhNDM5ZGI0Li4wNDMxZTU0Yzc0MjdhYzNhZjEy
ZWYwOGZiNmQ3ZmQ4ZTQ3M2ViNGZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5jcHAKQEAgLTY1LDcgKzY1LDcgQEAgUlRDRFRN
RlNlbmRlcjo6UlRDRFRNRlNlbmRlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQ
YXNzUmVmUHRyPE1lZGlhU3QKICAgICAsIG1faW50ZXJUb25lR2FwKGRlZmF1bHRJbnRlclRvbmVH
YXBNcykKICAgICAsIG1faGFuZGxlcihXVEY6Om1vdmUoaGFuZGxlcikpCiAgICAgLCBtX3N0b3Bw
ZWQoZmFsc2UpCi0gICAgLCBtX3NjaGVkdWxlZEV2ZW50VGltZXIodGhpcywgJlJUQ0RUTUZTZW5k
ZXI6OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fc2NoZWR1bGVkRXZlbnR0aW1l
cigqdGhpcywgJlJUQ0RUTUZTZW5kZXI6OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCkKIHsKICAg
ICBtX2hhbmRsZXItPnNldENsaWVudCh0aGlzKTsKIH0KQEAgLTE0Miw3ICsxNDIsNyBAQCB2b2lk
IFJUQ0RUTUZTZW5kZXI6OnNjaGVkdWxlRGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBl
dmVudCkKICAgICAgICAgbV9zY2hlZHVsZWRFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0K
IAotdm9pZCBSVENEVE1GU2VuZGVyOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoVGltZXIqKQor
dm9pZCBSVENEVE1GU2VuZGVyOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKQogewogICAgIGlm
IChtX3N0b3BwZWQpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmgKaW5kZXggYmVkMmE2MjEyOTVlNGNhNDY5
MWVkOTRjNDE0Zjc5OTQzZWQ5YzhmZC4uNGQ2MDAzNTcxNzQ4ZTZlNmE4ZDU2NGRiMzkxYjBiY2I1
ZWY0ZTdkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENEVE1GU2VuZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENEVE1GU2VuZGVyLmgKQEAgLTcyLDcgKzcyLDcgQEAgcHJpdmF0ZToKICAgICBSVENEVE1GU2Vu
ZGVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtVHJhY2s+
LCBzdGQ6OnVuaXF1ZV9wdHI8UlRDRFRNRlNlbmRlckhhbmRsZXI+KTsKIAogICAgIHZvaWQgc2No
ZWR1bGVEaXNwYXRjaEV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+KTsKLSAgICB2b2lkIHNjaGVkdWxl
ZEV2ZW50VGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgc2NoZWR1bGVkRXZlbnRUaW1lckZp
cmVkKCk7CiAKICAgICAvLyBFdmVudFRhcmdldAogICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRh
cmdldCgpIG92ZXJyaWRlIHsgcmVmKCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHAKaW5kZXggNDIzM2ZkNDljYWY2NTgx
ODFiYWRhZjc4NTY2MTI3MTg3YTM5YzMwZC4uNzJmNjU4NDBlMzRlNDMzMWQ3MGMxM2NlMjlmODFi
ZjMxNjQzYzY4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENEYXRhQ2hhbm5lbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHAKQEAgLTk1LDcgKzk1LDcgQEAgUlRDRGF0YUNoYW5uZWw6
OlJUQ0RhdGFDaGFubmVsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIHN0ZDo6dW5p
cXVlX3B0cjwKICAgICAsIG1fc3RvcHBlZChmYWxzZSkKICAgICAsIG1fcmVhZHlTdGF0ZShSZWFk
eVN0YXRlQ29ubmVjdGluZykKICAgICAsIG1fYmluYXJ5VHlwZShCaW5hcnlUeXBlQXJyYXlCdWZm
ZXIpCi0gICAgLCBtX3NjaGVkdWxlZEV2ZW50VGltZXIodGhpcywgJlJUQ0RhdGFDaGFubmVsOjpz
Y2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpCisgICAgLCBtX3NjaGVkdWxlZEV2ZW50dGltZXIoKnRo
aXMsICZSVENEYXRhQ2hhbm5lbDo6c2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKQogewogICAgIG1f
aGFuZGxlci0+c2V0Q2xpZW50KHRoaXMpOwogfQpAQCAtMzEyLDcgKzMxMiw3IEBAIHZvaWQgUlRD
RGF0YUNoYW5uZWw6OnNjaGVkdWxlRGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBldmVu
dCkKICAgICAgICAgbV9zY2hlZHVsZWRFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAot
dm9pZCBSVENEYXRhQ2hhbm5lbDo6c2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKFRpbWVyKikKK3Zv
aWQgUlRDRGF0YUNoYW5uZWw6OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgaWYg
KG1fc3RvcHBlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5oCmluZGV4IDZmODAzOGUyOGI2NDhlMTcy
OWNkYzAzZmZkNTQ5YWYyNDRjMGQ0ZTcuLjU2ZTIwMWZhMDgxNTQ0MGI2YmZjNDIwNDBlOGIyYWFk
NWYxZjdkMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDRGF0YUNoYW5uZWwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ0RhdGFDaGFubmVsLmgKQEAgLTg5LDcgKzg5LDcgQEAgcHJpdmF0ZToKICAgICBSVENEYXRh
Q2hhbm5lbChTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwgc3RkOjp1bmlxdWVfcHRyPFJUQ0RhdGFD
aGFubmVsSGFuZGxlcj4pOwogCiAgICAgdm9pZCBzY2hlZHVsZURpc3BhdGNoRXZlbnQoUGFzc1Jl
ZlB0cjxFdmVudD4pOwotICAgIHZvaWQgc2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKFRpbWVyKik7
CisgICAgdm9pZCBzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKTsKIAogICAgIC8vIEV2ZW50VGFy
Z2V0CiAgICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgb3ZlcnJpZGUgeyByZWYoKTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLmNwcAppbmRleCAyNDdiNjJmM2FmOTc2OTk1ZjU0ZjBkNDRiMWY4Nzk2Mzc1
ODUwMGZiLi4zZmY1NTA0YzVkODJlN2I5NjRiYTY1YTc4ZTE3ODk1OWY1YTcyMjY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25u
ZWN0aW9uLmNwcApAQCAtMTc0LDcgKzE3NCw3IEBAIFJUQ1BlZXJDb25uZWN0aW9uOjpSVENQZWVy
Q29ubmVjdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBQYXNzUmVmUHRyCiAg
ICAgLCBtX3NpZ25hbGluZ1N0YXRlKFNpZ25hbGluZ1N0YXRlU3RhYmxlKQogICAgICwgbV9pY2VH
YXRoZXJpbmdTdGF0ZShJY2VHYXRoZXJpbmdTdGF0ZU5ldykKICAgICAsIG1faWNlQ29ubmVjdGlv
blN0YXRlKEljZUNvbm5lY3Rpb25TdGF0ZU5ldykKLSAgICAsIG1fc2NoZWR1bGVkRXZlbnRUaW1l
cih0aGlzLCAmUlRDUGVlckNvbm5lY3Rpb246OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCkKKyAg
ICAsIG1fc2NoZWR1bGVkRXZlbnR0aW1lcigqdGhpcywgJlJUQ1BlZXJDb25uZWN0aW9uOjpzY2hl
ZHVsZWRFdmVudFRpbWVyRmlyZWQpCiAgICAgLCBtX2NvbmZpZ3VyYXRpb24oY29uZmlndXJhdGlv
bikKICAgICAsIG1fc3RvcHBlZChmYWxzZSkKIHsKQEAgLTcyNCw3ICs3MjQsNyBAQCB2b2lkIFJU
Q1BlZXJDb25uZWN0aW9uOjpzY2hlZHVsZURpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4g
ZXZlbnQpCiAgICAgICAgIG1fc2NoZWR1bGVkRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9
CiAKLXZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZChUaW1l
ciopCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKQog
ewogICAgIGlmIChtX3N0b3BwZWQpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaAppbmRleCBh
YWJmY2RjMmMyMTgwMjMwYTFhZTZlZTJmYWVjNTFkMDY3ZDYyN2QyLi5kMzQxNmFjZmRkNmJjOWRm
Y2M2MDQyNjEzNTljNzJjNTA2MjRmMDM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCkBAIC0xMzksNyArMTM5LDcg
QEAgcHJpdmF0ZToKIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ0NvbmZpZ3VyYXRpb24+IHBh
cnNlQ29uZmlndXJhdGlvbihjb25zdCBEaWN0aW9uYXJ5JiBjb25maWd1cmF0aW9uLCBFeGNlcHRp
b25Db2RlJik7CiAgICAgdm9pZCBzY2hlZHVsZURpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVu
dD4pOwotICAgIHZvaWQgc2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9p
ZCBzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKTsKICAgICBib29sIGhhc0xvY2FsU3RyZWFtV2l0
aFRyYWNrSWQoY29uc3QgU3RyaW5nJiB0cmFja0lkKTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0IGlt
cGxlbWVudGF0aW9uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNh
dGlvbnMvTm90aWZpY2F0aW9uLmNwcAppbmRleCA0ZTgzODMwMDY3MjAyMmEzNjkxZjA0NDRmYjRi
NWYyMWYxMmQ4MTdkLi5kMDg2ZTk3ODdmYWJjYzEyMzQ1OWMyZTVhY2M1ODY5Y2Y3YzUzNTQ4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uLmNwcApAQCAtODQsNyArODQsNyBAQCBOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHRpdGxlKQogICAg
IDogQWN0aXZlRE9NT2JqZWN0KCZjb250ZXh0KQogICAgICwgbV90aXRsZSh0aXRsZSkKICAgICAs
IG1fc3RhdGUoSWRsZSkKLSAgICAsIG1fdGFza1RpbWVyKHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+
KHRoaXMsICZOb3RpZmljYXRpb246OnRhc2tUaW1lckZpcmVkKSkKKyAgICAsIG1fdGFza1RpbWVy
KHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmTm90aWZpY2F0aW9uOjp0YXNrVGltZXJG
aXJlZCkpCiB7CiAgICAgbV9ub3RpZmljYXRpb25DZW50ZXIgPSBET01XaW5kb3dOb3RpZmljYXRp
b25zOjp3ZWJraXROb3RpZmljYXRpb25zKGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0KS5kb21X
aW5kb3coKSk7CiAgICAgCkBAIC0yMDEsMTAgKzIwMSw5IEBAIHZvaWQgTm90aWZpY2F0aW9uOjpk
aXNwYXRjaEVycm9yRXZlbnQoKQogfQogCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCi12b2lk
IE5vdGlmaWNhdGlvbjo6dGFza1RpbWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBOb3RpZmlj
YXRpb246OnRhc2tUaW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQoc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLT5pc0RvY3VtZW50KCkpOwotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9
PSBtX3Rhc2tUaW1lci5nZXQoKSk7CiAgICAgc2hvdygpOwogfQogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgKaW5kZXgg
MzhiYWE2ODgyMTExMmU2YzVjYmQyODY2ZWNlNjc0ZTRiYzg2ZjUzOC4uNTA3OTdhZTNiYWVjZWFl
ZDU0NjNiNzcyNWIxNTZiZjYwOGIzYTJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaApAQCAtMTU3LDcgKzE1Nyw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBmaW5pc2hMb2FkaW5nSWNvbigpOwogCiAjaWYgRU5BQkxFKE5PVElG
SUNBVElPTlMpCi0gICAgdm9pZCB0YXNrVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGFz
a1RpbWVyRmlyZWQoKTsKICNlbmRpZgogCiAgICAgLy8gVGV4dCBub3RpZmljYXRpb25zLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bkNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uQ2VudGVyLmNwcAppbmRleCBiYWZiNWNhMzU5N2QzYTUwYTNiYzAyNzMxNzBhOWZlMjVk
Mzc4ZDNmLi4zYTVhMDA3Yzc3YmRlMmVhZGM0ZGZhODg3MzI2ZTBjYTM1NmY4ZWFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2Vu
dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uQ2VudGVyLmNwcApAQCAtMTE5LDcgKzExOSw3IEBAIFBhc3NSZWZQdHI8Tm90aWZpY2F0
aW9uQ2VudGVyOjpOb3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2s+IE5vdGlmaWNhdGlvbkNlbnRl
cjo6CiAKIE5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjpO
b3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2soTm90aWZpY2F0aW9uQ2VudGVyKiBjZW50ZXIsIFBh
c3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBjYWxsYmFjaykKICAgICA6IG1fbm90aWZpY2F0aW9uQ2Vu
dGVyKGNlbnRlcikKLSAgICAsIG1fdGltZXIodGhpcywgJk5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90
aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhp
cywgJk5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjp0aW1l
ckZpcmVkKQogICAgICwgbV9jYWxsYmFjayhjYWxsYmFjaykKIHsKIH0KQEAgLTEyOSw3ICsxMjks
NyBAQCB2b2lkIE5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNr
OjpzdGFydFRpbWVyKCkKICAgICBtX3RpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBO
b3RpZmljYXRpb25DZW50ZXI6Ok5vdGlmaWNhdGlvblJlcXVlc3RDYWxsYmFjazo6dGltZXJGaXJl
ZChUaW1lciYpCit2b2lkIE5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENh
bGxiYWNrOjp0aW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9jYWxsYmFjaykKICAgICAgICAgbV9j
YWxsYmFjay0+aGFuZGxlRXZlbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaAppbmRleCBlZGFiYjYyYWRm
MzA1NDAyZDYyNmFjZWFjZjMyOTE4ZTY1YzEyYWY2Li5kM2NkYTNiMDcwMDk4Zjc1MTM0NjNjZDFk
NGM5ODE5ZjQ4N2RhYmU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oCkBAIC04MCw3ICs4MCw3IEBAIHBy
aXZhdGU6CiAgICAgcHVibGljOgogICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxOb3RpZmljYXRp
b25SZXF1ZXN0Q2FsbGJhY2s+IGNyZWF0ZUFuZFN0YXJ0VGltZXIoTm90aWZpY2F0aW9uQ2VudGVy
KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+KTsKICAgICAgICAgdm9pZCBzdGFydFRpbWVyKCk7
Ci0gICAgICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgICAgICB2b2lkIHRpbWVyRmly
ZWQoKTsKICAgICBwcml2YXRlOgogICAgICAgICBOb3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2so
Tm90aWZpY2F0aW9uQ2VudGVyKiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+KTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwu
Y3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwu
Y3BwCmluZGV4IGQ5YzZhYmQyNzcyMGEyMjdhYTAyNjJhYzk3MDZkMDEzNmM1YzE2ZDYuLmIwNDk4
YWZiMjllOTc0NWM0MTBhZjE3OGJkNTk4MWU4MjQ2N2E3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRDaGFubmVsLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5jcHAKQEAgLTY3
LDExICs2NywxMSBAQCBjb25zdCBkb3VibGUgVENQTWF4aW11bVNlZ21lbnRMaWZldGltZSA9IDIg
KiA2MC4wOwogV2ViU29ja2V0Q2hhbm5lbDo6V2ViU29ja2V0Q2hhbm5lbChEb2N1bWVudCogZG9j
dW1lbnQsIFdlYlNvY2tldENoYW5uZWxDbGllbnQqIGNsaWVudCkKICAgICA6IG1fZG9jdW1lbnQo
ZG9jdW1lbnQpCiAgICAgLCBtX2NsaWVudChjbGllbnQpCi0gICAgLCBtX3Jlc3VtZVRpbWVyKHRo
aXMsICZXZWJTb2NrZXRDaGFubmVsOjpyZXN1bWVUaW1lckZpcmVkKQorICAgICwgbV9yZXN1bWVU
aW1lcigqdGhpcywgJldlYlNvY2tldENoYW5uZWw6OnJlc3VtZVRpbWVyRmlyZWQpCiAgICAgLCBt
X3N1c3BlbmRlZChmYWxzZSkKICAgICAsIG1fY2xvc2luZyhmYWxzZSkKICAgICAsIG1fcmVjZWl2
ZWRDbG9zaW5nSGFuZHNoYWtlKGZhbHNlKQotICAgICwgbV9jbG9zaW5nVGltZXIodGhpcywgJldl
YlNvY2tldENoYW5uZWw6OmNsb3NpbmdUaW1lckZpcmVkKQorICAgICwgbV9jbG9zaW5nVGltZXIo
KnRoaXMsICZXZWJTb2NrZXRDaGFubmVsOjpjbG9zaW5nVGltZXJGaXJlZCkKICAgICAsIG1fY2xv
c2VkKGZhbHNlKQogICAgICwgbV9zaG91bGREaXNjYXJkUmVjZWl2ZWREYXRhKGZhbHNlKQogICAg
ICwgbV91bmhhbmRsZWRCdWZmZXJlZEFtb3VudCgwKQpAQCAtNDQ3LDEwICs0NDcsOCBAQCBib29s
IFdlYlNvY2tldENoYW5uZWw6OnByb2Nlc3NCdWZmZXIoKQogICAgIHJldHVybiBwcm9jZXNzRnJh
bWUoKTsKIH0KIAotdm9pZCBXZWJTb2NrZXRDaGFubmVsOjpyZXN1bWVUaW1lckZpcmVkKFRpbWVy
KiB0aW1lcikKK3ZvaWQgV2ViU29ja2V0Q2hhbm5lbDo6cmVzdW1lVGltZXJGaXJlZCgpCiB7Ci0g
ICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0gJm1fcmVzdW1lVGltZXIpOwotCiAgICAg
UmVmPFdlYlNvY2tldENoYW5uZWw+IHByb3RlY3QoKnRoaXMpOyAvLyBUaGUgY2xpZW50IGNhbiBj
bG9zZSB0aGUgY2hhbm5lbCwgcG90ZW50aWFsbHkgcmVtb3ZpbmcgdGhlIGxhc3QgcmVmZXJlbmNl
LgogICAgIHdoaWxlICghbV9zdXNwZW5kZWQgJiYgbV9jbGllbnQgJiYgIW1fYnVmZmVyLmlzRW1w
dHkoKSkKICAgICAgICAgaWYgKCFwcm9jZXNzQnVmZmVyKCkpCkBAIC00ODksMTAgKzQ4Nyw5IEBA
IHZvaWQgV2ViU29ja2V0Q2hhbm5lbDo6c3RhcnRDbG9zaW5nSGFuZHNoYWtlKGludCBjb2RlLCBj
b25zdCBTdHJpbmcmIHJlYXNvbikKICAgICAgICAgbV9jbGllbnQtPmRpZFN0YXJ0Q2xvc2luZ0hh
bmRzaGFrZSgpOwogfQogCi12b2lkIFdlYlNvY2tldENoYW5uZWw6OmNsb3NpbmdUaW1lckZpcmVk
KFRpbWVyKiB0aW1lcikKK3ZvaWQgV2ViU29ja2V0Q2hhbm5lbDo6Y2xvc2luZ1RpbWVyRmlyZWQo
KQogewogICAgIExPRyhOZXR3b3JrLCAiV2ViU29ja2V0Q2hhbm5lbCAlcCBjbG9zaW5nVGltZXJG
aXJlZCgpIiwgdGhpcyk7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJm1fY2xvc2luZ1RpbWVy
ID09IHRpbWVyKTsKICAgICBpZiAobV9oYW5kbGUpCiAgICAgICAgIG1faGFuZGxlLT5kaXNjb25u
ZWN0KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0Q2hhbm5lbC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dl
YlNvY2tldENoYW5uZWwuaAppbmRleCBiZTc1ZDMzNDQ5NjQ2YTFlMjhkZTI5NWM3MWExMDc1NjZh
NDY3ZDAzLi45ZWU1YzhhY2NiMzRmZWZhZDAyNTAxOWUyMTM1NjlhYzczYTc1MzBiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRDaGFubmVs
LmgKQEAgLTEyNyw5ICsxMjcsOSBAQCBwcml2YXRlOgogICAgIGJvb2wgYXBwZW5kVG9CdWZmZXIo
Y29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxlbik7CiAgICAgdm9pZCBza2lwQnVmZmVyKHNpemVf
dCBsZW4pOwogICAgIGJvb2wgcHJvY2Vzc0J1ZmZlcigpOwotICAgIHZvaWQgcmVzdW1lVGltZXJG
aXJlZChUaW1lciopOworICAgIHZvaWQgcmVzdW1lVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3Rh
cnRDbG9zaW5nSGFuZHNoYWtlKGludCBjb2RlLCBjb25zdCBTdHJpbmcmIHJlYXNvbik7Ci0gICAg
dm9pZCBjbG9zaW5nVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgY2xvc2luZ1RpbWVyRmly
ZWQoKTsKIAogICAgIGJvb2wgcHJvY2Vzc0ZyYW1lKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwCmluZGV4IGQ4YWZiMjU3ZmFiOGY5OTg5YjQx
NGYzYTlhOTM0MTZlZTlkMDUzNDguLjA5N2IzYjNiOWMzM2FhOWZmZjNhMTVlOTQ3NzU5MTM1MTQ0
ZGE5ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RD
YWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hl
LmNwcApAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgQVhPYmplY3RDYWNoZTo6c2V0RW5oYW5jZWRV
c2VySW50ZXJmYWNlQWNjZXNzaWJpbGl0eShib29sIGZsYWcpCiAKIEFYT2JqZWN0Q2FjaGU6OkFY
T2JqZWN0Q2FjaGUoRG9jdW1lbnQmIGRvY3VtZW50KQogICAgIDogbV9kb2N1bWVudChkb2N1bWVu
dCkKLSAgICAsIG1fbm90aWZpY2F0aW9uUG9zdFRpbWVyKHRoaXMsICZBWE9iamVjdENhY2hlOjpu
b3RpZmljYXRpb25Qb3N0VGltZXJGaXJlZCkKKyAgICAsIG1fbm90aWZpY2F0aW9uUG9zdFRpbWVy
KCp0aGlzLCAmQVhPYmplY3RDYWNoZTo6bm90aWZpY2F0aW9uUG9zdFRpbWVyRmlyZWQpCiB7CiB9
CiAKQEAgLTcwMCw3ICs3MDAsNyBAQCB2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdl
ZChBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmopCiAgICAgb2JqLT5jaGlsZHJlbkNoYW5nZWQoKTsK
IH0KICAgICAKLXZvaWQgQVhPYmplY3RDYWNoZTo6bm90aWZpY2F0aW9uUG9zdFRpbWVyRmlyZWQo
VGltZXImKQordm9pZCBBWE9iamVjdENhY2hlOjpub3RpZmljYXRpb25Qb3N0VGltZXJGaXJlZCgp
CiB7CiAgICAgUmVmPERvY3VtZW50PiBwcm90ZWN0b3JGb3JDYWNoZU93bmVyKG1fZG9jdW1lbnQp
OwogICAgIG1fbm90aWZpY2F0aW9uUG9zdFRpbWVyLnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgKaW5kZXggYjRiNWMzN2Y2YTEyYjU1YjZjZGU1
NjRmYzljYmFlNmNkYjExZjY4NS4uZjgzZWE3ZDRhODdlZmNmZDFiZjFlMGY3YmIzMDBiZDQ5YTQz
YWE0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENh
Y2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgK
QEAgLTI0NCw3ICsyNDQsNyBAQCBwcml2YXRlOgogICAgIAogICAgIFRpbWVyIG1fbm90aWZpY2F0
aW9uUG9zdFRpbWVyOwogICAgIFZlY3RvcjxzdGQ6OnBhaXI8UmVmUHRyPEFjY2Vzc2liaWxpdHlP
YmplY3Q+LCBBWE5vdGlmaWNhdGlvbj4+IG1fbm90aWZpY2F0aW9uc1RvUG9zdDsKLSAgICB2b2lk
IG5vdGlmaWNhdGlvblBvc3RUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBub3RpZmljYXRp
b25Qb3N0VGltZXJGaXJlZCgpOwogICAgIHZvaWQgaGFuZGxlTWVudU9wZW5lZChOb2RlKik7CiAg
ICAgdm9pZCBoYW5kbGVMaXZlUmVnaW9uQ3JlYXRlZChOb2RlKik7CiAgICAgdm9pZCBoYW5kbGVN
ZW51SXRlbVNlbGVjdGVkKE5vZGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0dDQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9HQ0Nv
bnRyb2xsZXIuY3BwCmluZGV4IGM2OTE1NmNjNDNiMDQwYmM0N2JmN2RhNTAyMzc3NDZjZmY5Y2Fh
MzYuLjE4ZWNmNzY5OTYzZTUyOTQ3NWEzMDFlOGNmNTAzYzBiNmMyNjM5ZWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmNwcApAQCAtNTEsNyArNTEsNyBAQCBH
Q0NvbnRyb2xsZXImIGdjQ29udHJvbGxlcigpCiAKIEdDQ29udHJvbGxlcjo6R0NDb250cm9sbGVy
KCkKICNpZiAhVVNFKENGKQotICAgIDogbV9HQ1RpbWVyKHRoaXMsICZHQ0NvbnRyb2xsZXI6Omdj
VGltZXJGaXJlZCkKKyAgICA6IG1fR0N0aW1lcigqdGhpcywgJkdDQ29udHJvbGxlcjo6Z2NUaW1l
ckZpcmVkKQogI2VuZGlmCiB7CiB9CkBAIC03Myw3ICs3Myw3IEBAIHZvaWQgR0NDb250cm9sbGVy
OjpnYXJiYWdlQ29sbGVjdFNvb24oKQogfQogCiAjaWYgIVVTRShDRikKLXZvaWQgR0NDb250cm9s
bGVyOjpnY1RpbWVyRmlyZWQoVGltZXIqKQordm9pZCBHQ0NvbnRyb2xsZXI6OmdjVGltZXJGaXJl
ZCgpCiB7CiAgICAgY29sbGVjdChudWxscHRyKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvR0NDb250cm9sbGVyLmgKaW5kZXggYTM3MTUxMGE0ZDJkZWMwMDU5MTg0MGM2OTVkODYzZjcz
NGNlNmY1OC4uZWViZTEwN2JlNjNjNzI0YmUzMmFhODFhOWViMjU3MzUyOGMyY2QyMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmgKQEAgLTUyLDcgKzUyLDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBHQ0NvbnRyb2xsZXIoKTsgLy8gVXNlIGdjQ29u
dHJvbGxlcigpIGluc3RlYWQKIAogI2lmICFVU0UoQ0YpCi0gICAgICAgIHZvaWQgZ2NUaW1lckZp
cmVkKFRpbWVyKik7CisgICAgICAgIHZvaWQgZ2NUaW1lckZpcmVkKCk7CiAgICAgICAgIFRpbWVy
IG1fR0NUaW1lcjsKICNlbmRpZgogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTRm9udEZhY2VTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNv
dXJjZS5oCmluZGV4IDZiMTY0MTA0NzM1NjE1ZGUzMDBiNzU1NmRkMmYwZDRjMDQwNjNhNmMuLjgz
NGI2ZTUwOGNlMWU4ZDBjZTBhNTRkODU2OWYzZDQwYzgwMDFmNWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZVNvdXJjZS5oCkBAIC03Niw3ICs3Niw3IEBAIHB1YmxpYzoKICNlbmRpZgog
CiBwcml2YXRlOgotICAgIHZvaWQgc3RhcnRMb2FkaW5nVGltZXJGaXJlZChUaW1lciopOworICAg
IHZvaWQgc3RhcnRMb2FkaW5nVGltZXJGaXJlZCgpOwogCiAgICAgQXRvbWljU3RyaW5nIG1fc3Ry
aW5nOyAvLyBVUkkgZm9yIHJlbW90ZSwgYnVpbHQtaW4gZm9udCBuYW1lIGZvciBsb2NhbC4KICAg
ICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRGb250PiBtX2ZvbnQ7IC8vIEZvciByZW1vdGUg
Zm9udHMsIGEgcG9pbnRlciB0byBvdXIgY2FjaGVkIHJlc291cmNlLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRTZWxlY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTRm9udFNlbGVjdG9yLmNwcAppbmRleCAxYmFhZWZjMjUwNDU3NTk5M2RiZGRhNTkzNzg4MzVh
ZDA5Zjk1OTBjLi40MzY5MjkwZjE5NTk5NmI1YTM1MjFmYTE2MWM0OWM3MDRmNGIyYzQ0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9yLmNwcApAQCAtNjAsNyArNjAsNyBAQCBzdGF0
aWMgdW5zaWduZWQgZm9udFNlbGVjdG9ySWQ7CiAKIENTU0ZvbnRTZWxlY3Rvcjo6Q1NTRm9udFNl
bGVjdG9yKERvY3VtZW50KiBkb2N1bWVudCkKICAgICA6IG1fZG9jdW1lbnQoZG9jdW1lbnQpCi0g
ICAgLCBtX2JlZ2luTG9hZGluZ1RpbWVyKHRoaXMsICZDU1NGb250U2VsZWN0b3I6OmJlZ2luTG9h
ZFRpbWVyRmlyZWQpCisgICAgLCBtX2JlZ2luTG9hZGluZ1RpbWVyKCp0aGlzLCAmQ1NTRm9udFNl
bGVjdG9yOjpiZWdpbkxvYWRUaW1lckZpcmVkKQogICAgICwgbV91bmlxdWVJZCgrK2ZvbnRTZWxl
Y3RvcklkKQogICAgICwgbV92ZXJzaW9uKDApCiAgICAgCkBAIC01ODcsNyArNTg3LDcgQEAgdm9p
ZCBDU1NGb250U2VsZWN0b3I6OmJlZ2luTG9hZGluZ0ZvbnRTb29uKENhY2hlZEZvbnQqIGZvbnQp
CiAgICAgbV9iZWdpbkxvYWRpbmdUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgQ1NT
Rm9udFNlbGVjdG9yOjpiZWdpbkxvYWRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgQ1NTRm9udFNl
bGVjdG9yOjpiZWdpbkxvYWRUaW1lckZpcmVkKCkKIHsKICAgICBWZWN0b3I8Q2FjaGVkUmVzb3Vy
Y2VIYW5kbGU8Q2FjaGVkRm9udD4+IGZvbnRzVG9CZWdpbkxvYWRpbmc7CiAgICAgZm9udHNUb0Jl
Z2luTG9hZGluZy5zd2FwKG1fZm9udHNUb0JlZ2luTG9hZGluZyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Rm9udFNlbGVjdG9yLmgKaW5kZXggMThiZjE4OTZiODAzYTVhMGViYTNlYWY4Y2YwOWNmMzJkMzU3
MDFiOS4uYzU0MWM0NTM4NTQyY2Y4OTNkMmU2YmFmZTAzZGM0OGM1YTljZTViZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRTZWxlY3Rvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NGb250U2VsZWN0b3IuaApAQCAtODYsNyArODYsNyBAQCBwcml2YXRlOgogCiAg
ICAgdm9pZCBkaXNwYXRjaEludmFsaWRhdGlvbkNhbGxiYWNrcygpOwogCi0gICAgdm9pZCBiZWdp
bkxvYWRUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBiZWdpbkxvYWRUaW1lckZpcmVkKCk7
CiAKICAgICBEb2N1bWVudCogbV9kb2N1bWVudDsKICAgICBIYXNoTWFwPFN0cmluZywgc3RkOjp1
bmlxdWVfcHRyPFZlY3RvcjxSZWZQdHI8Q1NTRm9udEZhY2U+Pj4sIENhc2VGb2xkaW5nSGFzaD4g
bV9mb250RmFjZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5l
cmF0b3JWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1
ZS5jcHAKaW5kZXggZmI4OTk1NTcxNzU1NjNiOTU1ZDM4MTc4NzRlZDRiNzc4YzAyNDdjNS4uZDJm
MDQyZGQwYjExMDZmYmMyZGVkY2FmOTEyMGJjZmRlMmZhYmYzZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ltYWdlR2VuZXJhdG9yVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NJbWFnZUdlbmVyYXRvclZhbHVlLmNwcApAQCAtOTQsNyArOTQsNyBAQCBDU1NJ
bWFnZUdlbmVyYXRvclZhbHVlOjpDYWNoZWRHZW5lcmF0ZWRJbWFnZTo6Q2FjaGVkR2VuZXJhdGVk
SW1hZ2UoQ1NTSW1hZ2VHZW5lcgogICAgIDogbV9vd25lcihvd25lcikKICAgICAsIG1fc2l6ZShz
aXplKQogICAgICwgbV9pbWFnZShpbWFnZSkKLSAgICAsIG1fZXZpY3Rpb25UaW1lcih0aGlzLCAm
Q1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZTo6Q2FjaGVkR2VuZXJhdGVkSW1hZ2U6OmV2aWN0aW9uVGlt
ZXJGaXJlZCwgdGltZVRvS2VlcENhY2hlZEdlbmVyYXRlZEltYWdlcykKKyAgICAsIG1fZXZpY3Rp
b25UaW1lcigqdGhpcywgJkNTU0ltYWdlR2VuZXJhdG9yVmFsdWU6OkNhY2hlZEdlbmVyYXRlZElt
YWdlOjpldmljdGlvblRpbWVyRmlyZWQsIHRpbWVUb0tlZXBDYWNoZWRHZW5lcmF0ZWRJbWFnZXMp
CiB7CiAgICAgbV9ldmljdGlvblRpbWVyLnJlc3RhcnQoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmNwcAppbmRleCA4Y2M3YTMxMDIzZTZhNWYwNmNiY2VjZGQ2YjE2ZjBmOGE4YTMw
Y2JjLi43MjRmZjNjMmNkMjg0ZGQ0OGIwMjcxZDA2ZGY1NDEyMTkwNDIyZDg2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0yNTEsNyArMjUxLDcgQEAgdm9pZCBTdHlsZVJl
c29sdmVyOjpNYXRjaFJlc3VsdDo6YWRkTWF0Y2hlZFByb3BlcnRpZXMoY29uc3QgU3R5bGVQcm9w
ZXJ0aWVzJiBwcm8KIAogU3R5bGVSZXNvbHZlcjo6U3R5bGVSZXNvbHZlcihEb2N1bWVudCYgZG9j
dW1lbnQsIGJvb2wgbWF0Y2hBdXRob3JBbmRVc2VyU3R5bGVzKQogICAgIDogbV9tYXRjaGVkUHJv
cGVydGllc0NhY2hlQWRkaXRpb25zU2luY2VMYXN0U3dlZXAoMCkKLSAgICAsIG1fbWF0Y2hlZFBy
b3BlcnRpZXNDYWNoZVN3ZWVwVGltZXIodGhpcywgJlN0eWxlUmVzb2x2ZXI6OnN3ZWVwTWF0Y2hl
ZFByb3BlcnRpZXNDYWNoZSkKKyAgICAsIG1fbWF0Y2hlZFByb3BlcnRpZXNDYWNoZVN3ZWVwVGlt
ZXIoKnRoaXMsICZTdHlsZVJlc29sdmVyOjpzd2VlcE1hdGNoZWRQcm9wZXJ0aWVzQ2FjaGUpCiAg
ICAgLCBtX2RvY3VtZW50KGRvY3VtZW50KQogICAgICwgbV9tYXRjaEF1dGhvckFuZFVzZXJTdHls
ZXMobWF0Y2hBdXRob3JBbmRVc2VyU3R5bGVzKQogICAgICwgbV9mb250U2VsZWN0b3IoQ1NTRm9u
dFNlbGVjdG9yOjpjcmVhdGUoJm1fZG9jdW1lbnQpKQpAQCAtMzQ5LDcgKzM0OSw3IEBAIFN0eWxl
UmVzb2x2ZXI6On5TdHlsZVJlc29sdmVyKCkKICNlbmRpZgogfQogCi12b2lkIFN0eWxlUmVzb2x2
ZXI6OnN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZShUaW1lciopCit2b2lkIFN0eWxlUmVzb2x2
ZXI6OnN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZSgpCiB7CiAgICAgLy8gTG9vayBmb3IgY2Fj
aGUgZW50cmllcyBjb250YWluaW5nIGEgc3R5bGUgZGVjbGFyYXRpb24gd2l0aCBhIHNpbmdsZSBy
ZWYgYW5kIHJlbW92ZSB0aGVtLgogICAgIC8vIFRoaXMgbWF5IGhhcHBlbiB3aGVuIGFuIGVsZW1l
bnQgYXR0cmlidXRlIG11dGF0aW9uIGNhdXNlcyBpdCB0byBnZW5lcmF0ZSBhIG5ldyBpbmxpbmVT
dHlsZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oIGIv
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAppbmRleCBjOTk1OGY5YzkxYmMyMTdk
NjIzMjkyZWQyZTQzMDM1MDRmNzllMmMwLi41NWNhMGY2ZWRlOTc2NDYxOGExZTYzYjEwMzFhODI1
OTE3NDU3Yzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKQEAgLTQ5Niw3ICs0OTYs
NyBAQCBwcml2YXRlOgogCiAgICAgLy8gRXZlcnkgTiBhZGRpdGlvbnMgdG8gdGhlIG1hdGNoZWQg
ZGVjbGFyYXRpb24gY2FjaGUgdHJpZ2dlciBhIHN3ZWVwIHdoZXJlIGVudHJpZXMgaG9sZGluZwog
ICAgIC8vIHRoZSBsYXN0IHJlZmVyZW5jZSB0byBhIHN0eWxlIGRlY2xhcmF0aW9uIGFyZSBnYXJi
YWdlIGNvbGxlY3RlZC4KLSAgICB2b2lkIHN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZShUaW1l
ciopOworICAgIHZvaWQgc3dlZXBNYXRjaGVkUHJvcGVydGllc0NhY2hlKCk7CiAKICAgICBib29s
IGNsYXNzTmFtZXNBZmZlY3RlZEJ5UnVsZXMoY29uc3QgU3BhY2VTcGxpdFN0cmluZyYpIGNvbnN0
OwogICAgIGJvb2wgc2hhcmluZ0NhbmRpZGF0ZUhhc0lkZW50aWNhbFN0eWxlQWZmZWN0aW5nQXR0
cmlidXRlcyhTdHlsZWRFbGVtZW50KikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRl
eCAwMmQxZmE0YTY4MTFmYmQ1ZDgxNmY2NjY5ZWE1YTQ1MWMxMmU3OWVlLi4zNzQ4M2NlMjI4ZjU3
NDAxNTY3NzZhODk5M2ZhNGJjNTYwOWZlMmNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAg
LTQwOCw3ICs0MDgsNyBAQCBEb2N1bWVudDo6RG9jdW1lbnQoRnJhbWUqIGZyYW1lLCBjb25zdCBV
UkwmIHVybCwgdW5zaWduZWQgZG9jdW1lbnRDbGFzc2VzLCB1bnNpZwogI2lmIEVOQUJMRShJT1Nf
VE9VQ0hfRVZFTlRTKQogICAgICwgbV9oYW5kbGluZ1RvdWNoRXZlbnQoZmFsc2UpCiAgICAgLCBt
X3RvdWNoRXZlbnRSZWdpb25zRGlydHkoZmFsc2UpCi0gICAgLCBtX3RvdWNoRXZlbnRzQ2hhbmdl
ZFRpbWVyKHRoaXMsICZEb2N1bWVudDo6dG91Y2hFdmVudHNDaGFuZ2VkVGltZXJGaXJlZCkKKyAg
ICAsIG1fdG91Y2hFdmVudHNDaGFuZ2VkVGltZXIoKnRoaXMsICZEb2N1bWVudDo6dG91Y2hFdmVu
dHNDaGFuZ2VkVGltZXJGaXJlZCkKICNlbmRpZgogICAgICwgbV9yZWZlcmVuY2luZ05vZGVDb3Vu
dCgwKQogICAgICwgbV9kaWRDYWxjdWxhdGVTdHlsZVJlc29sdmVyKGZhbHNlKQpAQCAtNDMzLDgg
KzQzMyw4IEBAIERvY3VtZW50OjpEb2N1bWVudChGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgdXJs
LCB1bnNpZ25lZCBkb2N1bWVudENsYXNzZXMsIHVuc2lnCiAgICAgLCBtX3Zpc3VhbGx5T3JkZXJl
ZChmYWxzZSkKICAgICAsIG1fcmVhZHlTdGF0ZShDb21wbGV0ZSkKICAgICAsIG1fYlBhcnNpbmco
ZmFsc2UpCi0gICAgLCBtX29wdGltaXplZFN0eWxlU2hlZXRVcGRhdGVUaW1lcih0aGlzLCAmRG9j
dW1lbnQ6Om9wdGltaXplZFN0eWxlU2hlZXRVcGRhdGVUaW1lckZpcmVkKQotICAgICwgbV9zdHls
ZVJlY2FsY1RpbWVyKHRoaXMsICZEb2N1bWVudDo6c3R5bGVSZWNhbGNUaW1lckZpcmVkKQorICAg
ICwgbV9vcHRpbWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXIoKnRoaXMsICZEb2N1bWVudDo6b3B0
aW1pemVkU3R5bGVTaGVldFVwZGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX3N0eWxlUmVjYWxjVGlt
ZXIoKnRoaXMsICZEb2N1bWVudDo6c3R5bGVSZWNhbGNUaW1lckZpcmVkKQogICAgICwgbV9wZW5k
aW5nU3R5bGVSZWNhbGNTaG91bGRGb3JjZShmYWxzZSkKICAgICAsIG1faW5TdHlsZVJlY2FsYyhm
YWxzZSkKICAgICAsIG1fY2xvc2VBZnRlclN0eWxlUmVjYWxjKGZhbHNlKQpAQCAtNDQ0LDcgKzQ0
NCw3IEBAIERvY3VtZW50OjpEb2N1bWVudChGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgdXJsLCB1
bnNpZ25lZCBkb2N1bWVudENsYXNzZXMsIHVuc2lnCiAgICAgLCBtX2lnbm9yZURlc3RydWN0aXZl
V3JpdGVDb3VudCgwKQogICAgICwgbV90aXRsZVNldEV4cGxpY2l0bHkoZmFsc2UpCiAgICAgLCBt
X21hcmtlcnMoc3RkOjptYWtlX3VuaXF1ZTxEb2N1bWVudE1hcmtlckNvbnRyb2xsZXI+KCkpCi0g
ICAgLCBtX3VwZGF0ZUZvY3VzQXBwZWFyYW5jZVRpbWVyKHRoaXMsICZEb2N1bWVudDo6dXBkYXRl
Rm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCkKKyAgICAsIG1fdXBkYXRlRm9jdXNBcHBlYXJhbmNl
VGltZXIoKnRoaXMsICZEb2N1bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCkK
ICAgICAsIG1fY3NzVGFyZ2V0KG51bGxwdHIpCiAgICAgLCBtX3Byb2Nlc3NpbmdMb2FkRXZlbnQo
ZmFsc2UpCiAgICAgLCBtX2xvYWRFdmVudEZpbmlzaGVkKGZhbHNlKQpAQCAtNDc1LDExICs0NzUs
MTEgQEAgRG9jdW1lbnQ6OkRvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiB1cmwsIHVu
c2lnbmVkIGRvY3VtZW50Q2xhc3NlcywgdW5zaWcKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkp
CiAgICAgLCBtX2FyZUtleXNFbmFibGVkSW5GdWxsU2NyZWVuKDApCiAgICAgLCBtX2Z1bGxTY3Jl
ZW5SZW5kZXJlcihudWxscHRyKQotICAgICwgbV9mdWxsU2NyZWVuQ2hhbmdlRGVsYXlUaW1lcih0
aGlzLCAmRG9jdW1lbnQ6OmZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQpCisgICAgLCBt
X2Z1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyKCp0aGlzLCAmRG9jdW1lbnQ6OmZ1bGxTY3JlZW5D
aGFuZ2VEZWxheVRpbWVyRmlyZWQpCiAgICAgLCBtX2lzQW5pbWF0aW5nRnVsbFNjcmVlbihmYWxz
ZSkKICNlbmRpZgogICAgICwgbV9sb2FkRXZlbnREZWxheUNvdW50KDApCi0gICAgLCBtX2xvYWRF
dmVudERlbGF5VGltZXIodGhpcywgJkRvY3VtZW50Ojpsb2FkRXZlbnREZWxheVRpbWVyRmlyZWQp
CisgICAgLCBtX2xvYWRFdmVudERlbGF5VGltZXIoKnRoaXMsICZEb2N1bWVudDo6bG9hZEV2ZW50
RGVsYXlUaW1lckZpcmVkKQogICAgICwgbV9yZWZlcnJlclBvbGljeShSZWZlcnJlclBvbGljeURl
ZmF1bHQpCiAgICAgLCBtX2RpcmVjdGlvblNldE9uRG9jdW1lbnRFbGVtZW50KGZhbHNlKQogICAg
ICwgbV93cml0aW5nTW9kZVNldE9uRG9jdW1lbnRFbGVtZW50KGZhbHNlKQpAQCAtNDk4LDExICs0
OTgsMTEgQEAgRG9jdW1lbnQ6OkRvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiB1cmws
IHVuc2lnbmVkIGRvY3VtZW50Q2xhc3NlcywgdW5zaWcKICNpZiBFTkFCTEUoVEVMRVBIT05FX05V
TUJFUl9ERVRFQ1RJT04pCiAgICAgLCBtX2lzVGVsZXBob25lTnVtYmVyUGFyc2luZ0FsbG93ZWQo
dHJ1ZSkKICNlbmRpZgotICAgICwgbV9wZW5kaW5nVGFza3NUaW1lcih0aGlzLCAmRG9jdW1lbnQ6
OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQpCisgICAgLCBtX3BlbmRpbmdUYXNrc1RpbWVyKCp0aGlz
LCAmRG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQpCiAgICAgLCBtX3NjaGVkdWxlZFRh
c2tzQXJlU3VzcGVuZGVkKGZhbHNlKQogICAgICwgbV92aXN1YWxVcGRhdGVzQWxsb3dlZCh0cnVl
KQotICAgICwgbV92aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25UaW1lcih0aGlzLCAmRG9jdW1lbnQ6
OnZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQpCi0gICAgLCBtX3NoYXJlZE9iamVj
dFBvb2xDbGVhclRpbWVyKHRoaXMsICZEb2N1bWVudDo6c2hhcmVkT2JqZWN0UG9vbENsZWFyVGlt
ZXJGaXJlZCkKKyAgICAsIG1fdmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGltZXIoKnRoaXMsICZE
b2N1bWVudDo6dmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGltZXJGaXJlZCkKKyAgICAsIG1fc2hh
cmVkT2JqZWN0UG9vbENsZWFyVGltZXIoKnRoaXMsICZEb2N1bWVudDo6c2hhcmVkT2JqZWN0UG9v
bENsZWFyVGltZXJGaXJlZCkKICNpZm5kZWYgTkRFQlVHCiAgICAgLCBtX2RpZERpc3BhdGNoVmll
d3BvcnRQcm9wZXJ0aWVzQ2hhbmdlZChmYWxzZSkKICNlbmRpZgpAQCAtNTEyLDggKzUxMiw4IEBA
IERvY3VtZW50OjpEb2N1bWVudChGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgdXJsLCB1bnNpZ25l
ZCBkb2N1bWVudENsYXNzZXMsIHVuc2lnCiAjaWYgRU5BQkxFKFdFQl9SRVBMQVkpCiAgICAgLCBt
X2lucHV0Q3Vyc29yKEVtcHR5SW5wdXRDdXJzb3I6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBt
X2RpZEFzc29jaWF0ZUZvcm1Db250cm9sc1RpbWVyKHRoaXMsICZEb2N1bWVudDo6ZGlkQXNzb2Np
YXRlRm9ybUNvbnRyb2xzVGltZXJGaXJlZCkKLSAgICAsIG1fY29va2llQ2FjaGVFeHBpcnlUaW1l
cih0aGlzLCAmRG9jdW1lbnQ6OmRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJGaXJlZCkKKyAgICAs
IG1fZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXIoKnRoaXMsICZEb2N1bWVudDo6ZGlkQXNz
b2NpYXRlRm9ybUNvbnRyb2xzVGltZXJGaXJlZCkKKyAgICAsIG1fY29va2llQ2FjaGVFeHBpcnlU
aW1lcigqdGhpcywgJkRvY3VtZW50Ojpkb21Db29raWVDYWNoZUV4cGlyeVRpbWVyRmlyZWQpCiAg
ICAgLCBtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50KDApCiAgICAgLCBtX2hhc0luamVj
dGVkUGx1Z0luc1NjcmlwdChmYWxzZSkKICAgICAsIG1fcmVuZGVyVHJlZUJlaW5nRGVzdHJveWVk
KGZhbHNlKQpAQCAtMTI2NCw3ICsxMjY0LDcgQEAgdm9pZCBEb2N1bWVudDo6c2V0VmlzdWFsVXBk
YXRlc0FsbG93ZWQoYm9vbCB2aXN1YWxVcGRhdGVzQWxsb3dlZCkKICAgICAgICAgZnJhbWUtPmxv
YWRlcigpLmZvcmNlUGFnZVRyYW5zaXRpb25JZk5lZWRlZCgpOwogfQogCi12b2lkIERvY3VtZW50
Ojp2aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25UaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgRG9jdW1l
bnQ6OnZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQoKQogewogICAgIEFTU0VSVCgh
bV92aXN1YWxVcGRhdGVzQWxsb3dlZCk7CiAKQEAgLTE3NDUsNyArMTc0NSw3IEBAIGJvb2wgRG9j
dW1lbnQ6Omhhc1BlbmRpbmdGb3JjZWRTdHlsZVJlY2FsYygpIGNvbnN0CiAgICAgcmV0dXJuIG1f
c3R5bGVSZWNhbGNUaW1lci5pc0FjdGl2ZSgpICYmIG1fcGVuZGluZ1N0eWxlUmVjYWxjU2hvdWxk
Rm9yY2U7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OnN0eWxlUmVjYWxjVGltZXJGaXJlZChUaW1lciYp
Cit2b2lkIERvY3VtZW50OjpzdHlsZVJlY2FsY1RpbWVyRmlyZWQoKQogewogICAgIHVwZGF0ZVN0
eWxlSWZOZWVkZWQoKTsKIH0KQEAgLTMyNDQsNyArMzI0NCw3IEBAIHZvaWQgRG9jdW1lbnQ6OmV2
YWx1YXRlTWVkaWFRdWVyeUxpc3QoKQogICAgICAgICBtX21lZGlhUXVlcnlNYXRjaGVyLT5zdHls
ZVJlc29sdmVyQ2hhbmdlZCgpOwogfQogCi12b2lkIERvY3VtZW50OjpvcHRpbWl6ZWRTdHlsZVNo
ZWV0VXBkYXRlVGltZXJGaXJlZChUaW1lciYpCit2b2lkIERvY3VtZW50OjpvcHRpbWl6ZWRTdHls
ZVNoZWV0VXBkYXRlVGltZXJGaXJlZCgpCiB7CiAgICAgc3R5bGVSZXNvbHZlckNoYW5nZWQoUmVj
YWxjU3R5bGVJZk5lZWRlZCk7CiB9CkBAIC00NjI5LDcgKzQ2MjksNyBAQCB2b2lkIERvY3VtZW50
OjpmaW5pc2hlZFBhcnNpbmcoKQogICAgIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFyUHJl
bG9hZHMoKTsKIH0KIAotdm9pZCBEb2N1bWVudDo6c2hhcmVkT2JqZWN0UG9vbENsZWFyVGltZXJG
aXJlZChUaW1lciYpCit2b2lkIERvY3VtZW50OjpzaGFyZWRPYmplY3RQb29sQ2xlYXJUaW1lckZp
cmVkKCkKIHsKICAgICBtX3NoYXJlZE9iamVjdFBvb2wgPSBudWxscHRyOwogfQpAQCAtNDg2OCw3
ICs0ODY4LDcgQEAgdm9pZCBEb2N1bWVudDo6Y2FuY2VsRm9jdXNBcHBlYXJhbmNlVXBkYXRlKCkK
ICAgICBtX3VwZGF0ZUZvY3VzQXBwZWFyYW5jZVRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBEb2N1
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZChUaW1lciYpCit2b2lkIERvY3Vt
ZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKCkKIHsKICAgICBFbGVtZW50KiBl
bGVtZW50ID0gZm9jdXNlZEVsZW1lbnQoKTsKICAgICBpZiAoIWVsZW1lbnQpCkBAIC01MDIzLDcg
KzUwMjMsNyBAQCB2b2lkIERvY3VtZW50Ojpwb3N0VGFzayhUYXNrIHRhc2spCiAgICAgfSk7CiB9
CiAKLXZvaWQgRG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBE
b2N1bWVudDo6cGVuZGluZ1Rhc2tzVGltZXJGaXJlZCgpCiB7CiAgICAgVmVjdG9yPFRhc2s+IHBl
bmRpbmdUYXNrcyA9IFdURjo6bW92ZShtX3BlbmRpbmdUYXNrcyk7CiAgICAgZm9yIChhdXRvJiB0
YXNrIDogcGVuZGluZ1Rhc2tzKQpAQCAtNTQ3NCw3ICs1NDc0LDcgQEAgdm9pZCBEb2N1bWVudDo6
d2Via2l0V2lsbEVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoRWxlbWVudCogZWxlbWVudCkKICAg
ICByZWNhbGNTdHlsZShTdHlsZTo6Rm9yY2UpOwogCiAgICAgaWYgKHNldHRpbmdzKCkgJiYgc2V0
dGluZ3MoKS0+bmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoKSAmJiBob3N0SXNZb3VUdWJlKHVybCgp
Lmhvc3QoKSkpCi0gICAgICAgIGZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQobV9mdWxs
U2NyZWVuQ2hhbmdlRGVsYXlUaW1lcik7CisgICAgICAgIGZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRp
bWVyRmlyZWQoKTsKIH0KIAogdm9pZCBEb2N1bWVudDo6d2Via2l0RGlkRW50ZXJGdWxsU2NyZWVu
Rm9yRWxlbWVudChFbGVtZW50KikKQEAgLTU1MjgsNyArNTUyOCw3IEBAIHZvaWQgRG9jdW1lbnQ6
OndlYmtpdERpZEV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChFbGVtZW50KikKICAgICAvLyBGSVhN
RSgxMzY2MDUpOiBSZW1vdmUgdGhpcyBxdWlyayBvbmNlIFlvdVR1YmUgbW92ZXMgdG8gcmVsYXRp
dmUgd2lkdGhzIGFuZCBoZWlnaHRzIGZvcgogICAgIC8vIGZ1bGxzY3JlZW4gbW9kZS4KICAgICBp
ZiAoc2V0dGluZ3MoKSAmJiBzZXR0aW5ncygpLT5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpICYm
IGhvc3RJc1lvdVR1YmUodXJsKCkuaG9zdCgpKSkKLSAgICAgICAgZXhpdGluZ0RvY3VtZW50LmZ1
bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQoZXhpdGluZ0RvY3VtZW50Lm1fZnVsbFNjcmVl
bkNoYW5nZURlbGF5VGltZXIpOworICAgICAgICBleGl0aW5nRG9jdW1lbnQuZnVsbFNjcmVlbkNo
YW5nZURlbGF5VGltZXJGaXJlZCgpOwogICAgIGVsc2UKICAgICAgICAgZXhpdGluZ0RvY3VtZW50
Lm1fZnVsbFNjcmVlbkNoYW5nZURlbGF5VGltZXIuc3RhcnRPbmVTaG90KDApOwogCkBAIC01NTU4
LDcgKzU1NTgsNyBAQCB2b2lkIERvY3VtZW50OjpmdWxsU2NyZWVuUmVuZGVyZXJEZXN0cm95ZWQo
KQogICAgIG1fZnVsbFNjcmVlblJlbmRlcmVyID0gbnVsbHB0cjsKIH0KIAotdm9pZCBEb2N1bWVu
dDo6ZnVsbFNjcmVlbkNoYW5nZURlbGF5VGltZXJGaXJlZChUaW1lciYpCit2b2lkIERvY3VtZW50
OjpmdWxsU2NyZWVuQ2hhbmdlRGVsYXlUaW1lckZpcmVkKCkKIHsKICAgICAvLyBTaW5jZSB3ZSBk
aXNwYXRjaCBldmVudHMgaW4gdGhpcyBmdW5jdGlvbiwgaXQncyBwb3NzaWJsZSB0aGF0IHRoZQog
ICAgIC8vIGRvY3VtZW50IHdpbGwgYmUgZGV0YWNoZWQgYW5kIEdDJ2QuIFdlIHByb3RlY3QgaXQg
aGVyZSB0byBtYWtlIHN1cmUgd2UKQEAgLTU2OTYsNyArNTY5Niw3IEBAIHZvaWQgRG9jdW1lbnQ6
OmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKQogICAgICAgICBtX2xvYWRFdmVudERlbGF5
VGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIERvY3VtZW50Ojpsb2FkRXZlbnREZWxh
eVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBEb2N1bWVudDo6bG9hZEV2ZW50RGVsYXlUaW1lckZp
cmVkKCkKIHsKICAgICBpZiAoZnJhbWUoKSkKICAgICAgICAgZnJhbWUoKS0+bG9hZGVyKCkuY2hl
Y2tDb21wbGV0ZWQoKTsKQEAgLTYyMTIsMTAgKzYyMTIsOCBAQCB2b2lkIERvY3VtZW50OjpkaWRB
c3NvY2lhdGVGb3JtQ29udHJvbChFbGVtZW50KiBlbGVtZW50KQogICAgICAgICBtX2RpZEFzc29j
aWF0ZUZvcm1Db250cm9sc1RpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBEb2N1bWVu
dDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXJGaXJlZChUaW1lciYgdGltZXIpCit2b2lk
IERvY3VtZW50OjpkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHNUaW1lckZpcmVkKCkKIHsKLSAgICBB
U1NFUlRfVU5VU0VEKHRpbWVyLCAmdGltZXIgPT0gJm1fZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xz
VGltZXIpOwotCiAgICAgaWYgKCFmcmFtZSgpIHx8ICFmcmFtZSgpLT5wYWdlKCkpCiAgICAgICAg
IHJldHVybjsKIApAQCAtNjI0MCw3ICs2MjM4LDcgQEAgdm9pZCBEb2N1bWVudDo6aW52YWxpZGF0
ZURPTUNvb2tpZUNhY2hlKCkKICAgICBtX2NhY2hlZERPTUNvb2tpZXMgPSBTdHJpbmcoKTsKIH0K
IAotdm9pZCBEb2N1bWVudDo6ZG9tQ29va2llQ2FjaGVFeHBpcnlUaW1lckZpcmVkKFRpbWVyJikK
K3ZvaWQgRG9jdW1lbnQ6OmRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJGaXJlZCgpCiB7CiAgICAg
aW52YWxpZGF0ZURPTUNvb2tpZUNhY2hlKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDhi
NDEzZTYyNjMyYWZlMzE3MzY1OTBlNWEyMTIzY2Q4MTdmYWNjNmQuLjI2MDk2NzBiYjczMjQ1ODIw
MmQwZDZlMzQ0Y2E2ZmZhODUyNGM2YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC03NzMsOCAr
NzczLDggQEAgcHVibGljOgogICAgIHZvaWQgdW5zY2hlZHVsZVN0eWxlUmVjYWxjKCk7CiAgICAg
Ym9vbCBoYXNQZW5kaW5nU3R5bGVSZWNhbGMoKSBjb25zdDsKICAgICBib29sIGhhc1BlbmRpbmdG
b3JjZWRTdHlsZVJlY2FsYygpIGNvbnN0OwotICAgIHZvaWQgc3R5bGVSZWNhbGNUaW1lckZpcmVk
KFRpbWVyJik7Ci0gICAgdm9pZCBvcHRpbWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXJGaXJlZChU
aW1lciYpOworICAgIHZvaWQgc3R5bGVSZWNhbGNUaW1lckZpcmVkKCk7CisgICAgdm9pZCBvcHRp
bWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCByZWdpc3Rlck5v
ZGVMaXN0Rm9ySW52YWxpZGF0aW9uKExpdmVOb2RlTGlzdCYpOwogICAgIHZvaWQgdW5yZWdpc3Rl
ck5vZGVMaXN0Rm9ySW52YWxpZGF0aW9uKExpdmVOb2RlTGlzdCYpOwpAQCAtMTE0Miw3ICsxMTQy
LDcgQEAgcHVibGljOgogICAgIFJlbmRlckZ1bGxTY3JlZW4qIGZ1bGxTY3JlZW5SZW5kZXJlcigp
IGNvbnN0IHsgcmV0dXJuIG1fZnVsbFNjcmVlblJlbmRlcmVyOyB9CiAgICAgdm9pZCBmdWxsU2Ny
ZWVuUmVuZGVyZXJEZXN0cm95ZWQoKTsKICAgICAKLSAgICB2b2lkIGZ1bGxTY3JlZW5DaGFuZ2VE
ZWxheVRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRp
bWVyRmlyZWQoKTsKICAgICBib29sIGZ1bGxTY3JlZW5Jc0FsbG93ZWRGb3JFbGVtZW50KEVsZW1l
bnQqKSBjb25zdDsKICAgICB2b2lkIGZ1bGxTY3JlZW5FbGVtZW50UmVtb3ZlZCgpOwogICAgIHZv
aWQgcmVtb3ZlRnVsbFNjcmVlbkVsZW1lbnRPZlN1YnRyZWUoTm9kZSosIGJvb2wgYW1vbmdDaGls
ZHJlbk9ubHkgPSBmYWxzZSk7CkBAIC0xMzM0LDE2ICsxMzM0LDE2IEBAIHByaXZhdGU6CiAgICAg
dmlydHVhbCBkb3VibGUgdGltZXJBbGlnbm1lbnRJbnRlcnZhbCgpIGNvbnN0IG92ZXJyaWRlIGZp
bmFsOwogCiAgICAgdm9pZCB1cGRhdGVUaXRsZShjb25zdCBTdHJpbmdXaXRoRGlyZWN0aW9uJik7
Ci0gICAgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKFRpbWVyJik7CisgICAg
dm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKCk7CiAgICAgdm9pZCB1cGRhdGVC
YXNlVVJMKCk7CiAKICAgICB2b2lkIGJ1aWxkQWNjZXNzS2V5TWFwKFRyZWVTY29wZSogcm9vdCk7
CiAKICAgICB2b2lkIGNyZWF0ZVN0eWxlUmVzb2x2ZXIoKTsKIAotICAgIHZvaWQgbG9hZEV2ZW50
RGVsYXlUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBsb2FkRXZlbnREZWxheVRpbWVyRmly
ZWQoKTsKIAotICAgIHZvaWQgcGVuZGluZ1Rhc2tzVGltZXJGaXJlZChUaW1lciYpOworICAgIHZv
aWQgcGVuZGluZ1Rhc2tzVGltZXJGaXJlZCgpOwogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIENo
YXJhY3RlclR5cGU+CiAgICAgdm9pZCBkaXNwbGF5QnVmZmVyTW9kaWZpZWRCeUVuY29kaW5nSW50
ZXJuYWwoQ2hhcmFjdGVyVHlwZSosIHVuc2lnbmVkKSBjb25zdDsKQEAgLTEzNjQsMTggKzEzNjQs
MTggQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgc2V0VmlzdWFsVXBkYXRlc0FsbG93ZWQoUmVhZHlT
dGF0ZSk7CiAgICAgdm9pZCBzZXRWaXN1YWxVcGRhdGVzQWxsb3dlZChib29sKTsKLSAgICB2b2lk
IHZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHZp
c3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQoKTsKIAogICAgIHZvaWQgYWRkTGlzdGVu
ZXJUeXBlKExpc3RlbmVyVHlwZSBsaXN0ZW5lclR5cGUpIHsgbV9saXN0ZW5lclR5cGVzIHw9IGxp
c3RlbmVyVHlwZTsgfQogCi0gICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHNUaW1lckZp
cmVkKFRpbWVyJik7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHNUaW1lckZpcmVk
KCk7CiAKICAgICAvLyBET00gQ29va2llcyBjYWNoaW5nLgogICAgIGNvbnN0IFN0cmluZyYgY2Fj
aGVkRE9NQ29va2llcygpIGNvbnN0IHsgcmV0dXJuIG1fY2FjaGVkRE9NQ29va2llczsgfQogICAg
IHZvaWQgc2V0Q2FjaGVkRE9NQ29va2llcyhjb25zdCBTdHJpbmcmKTsKICAgICBib29sIGlzRE9N
Q29va2llQ2FjaGVWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fY29va2llQ2FjaGVFeHBpcnlUaW1l
ci5pc0FjdGl2ZSgpOyB9CiAgICAgdm9pZCBpbnZhbGlkYXRlRE9NQ29va2llQ2FjaGUoKTsKLSAg
ICB2b2lkIGRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQg
ZG9tQ29va2llQ2FjaGVFeHBpcnlUaW1lckZpcmVkKCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZExv
YWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGUg
ZmluYWw7CiAKICAgICB1bnNpZ25lZCBtX3JlZmVyZW5jaW5nTm9kZUNvdW50OwpAQCAtMTY4Myw3
ICsxNjgzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RE9NU2VjdXJpdHlQb2xpY3k+IG1fZG9t
U2VjdXJpdHlQb2xpY3k7CiAjZW5kaWYKIAotICAgIHZvaWQgc2hhcmVkT2JqZWN0UG9vbENsZWFy
VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgc2hhcmVkT2JqZWN0UG9vbENsZWFyVGltZXJG
aXJlZCgpOwogICAgIFRpbWVyIG1fc2hhcmVkT2JqZWN0UG9vbENsZWFyVGltZXI7CiAKICAgICBz
dGQ6OnVuaXF1ZV9wdHI8RG9jdW1lbnRTaGFyZWRPYmplY3RQb29sPiBtX3NoYXJlZE9iamVjdFBv
b2w7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRTZW5kZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FdmVudFNlbmRlci5oCmluZGV4IDU1MDAyMWFiMTk4NmUyMDM2ZmNkNDRj
MDI5YWNjNDNmYTg5YTc3M2EuLjdjZDgyZTExNDkxOGQ1NzJiMWE2Mjk2YjUzZWU5NGI3ZmY0MzA3
YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFNlbmRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudFNlbmRlci5oCkBAIC00OSw3ICs0OSw3IEBAIHB1YmxpYzoK
ICNlbmRpZgogCiBwcml2YXRlOgotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpIHsgZGlzcGF0
Y2hQZW5kaW5nRXZlbnRzKCk7IH0KKyAgICB2b2lkIHRpbWVyRmlyZWQoKSB7IGRpc3BhdGNoUGVu
ZGluZ0V2ZW50cygpOyB9CiAKICAgICBBdG9taWNTdHJpbmcgbV9ldmVudFR5cGU7CiAgICAgVGlt
ZXIgbV90aW1lcjsKQEAgLTU5LDcgKzU5LDcgQEAgcHJpdmF0ZToKIAogdGVtcGxhdGU8dHlwZW5h
bWUgVD4gRXZlbnRTZW5kZXI8VD46OkV2ZW50U2VuZGVyKGNvbnN0IEF0b21pY1N0cmluZyYgZXZl
bnRUeXBlKQogICAgIDogbV9ldmVudFR5cGUoZXZlbnRUeXBlKQotICAgICwgbV90aW1lcih0aGlz
LCAmRXZlbnRTZW5kZXI6OnRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWVyKCp0aGlzLCAmRXZlbnRT
ZW5kZXI6OnRpbWVyRmlyZWQpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9TY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAK
aW5kZXggMDk2ZTNjNTE3YzlmMGZmODBiYzRjNzhiYjI4MTkxMjkzMTQ1YjdhYS4uZWQ5NGRhM2U3
M2RiMTMwMTc4Yjk5ZWE0YjdmOTJiNWFjMTk4MDlkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1
bm5lci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBTY3JpcHRS
dW5uZXI6OlNjcmlwdFJ1bm5lcihEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBtX2RvY3VtZW50
KGRvY3VtZW50KQotICAgICwgbV90aW1lcih0aGlzLCAmU2NyaXB0UnVubmVyOjp0aW1lckZpcmVk
KQorICAgICwgbV90aW1lcigqdGhpcywgJlNjcmlwdFJ1bm5lcjo6dGltZXJGaXJlZCkKIHsKIH0K
IApAQCAtOTYsMTAgKzk2LDggQEAgdm9pZCBTY3JpcHRSdW5uZXI6Om5vdGlmeVNjcmlwdFJlYWR5
KFNjcmlwdEVsZW1lbnQqIHNjcmlwdEVsZW1lbnQsIEV4ZWN1dGlvblR5cGUKICAgICBtX3RpbWVy
LnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQoVGlt
ZXImIHRpbWVyKQordm9pZCBTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQoKQogewotICAgIEFTU0VS
VF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV90aW1lcik7Ci0KICAgICBSZWY8RG9jdW1lbnQ+
IHByb3RlY3QobV9kb2N1bWVudCk7CiAKICAgICBWZWN0b3I8UGVuZGluZ1NjcmlwdD4gc2NyaXB0
czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuaAppbmRleCBlMTNkZjhlMDdjMzExYTVhYzdhMDNl
ODg4NDhiZjQxN2RmYmNiNTE2Li4yN2NkYmY4YjNhZjU2OTQ2MmU1YjlhZWIxNmNkNzY1MDUwODkx
ZTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5oCkBAIC01NCw3ICs1NCw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIG5vdGlmeVNjcmlwdFJlYWR5KFNjcmlwdEVsZW1lbnQqLCBFeGVjdXRpb25U
eXBlKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHRpbWVyRmlyZWQoKTsKIAogICAgIERvY3VtZW50JiBtX2RvY3VtZW50OwogICAgIFZlY3RvcjxQ
ZW5kaW5nU2NyaXB0PiBtX3NjcmlwdHNUb0V4ZWN1dGVJbk9yZGVyOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcAppbmRleCA3ODU2MmU3
MGNiMTA3OTM4MWFjZTBmODVhZDdjYmIxOWU3Mzg1MmU1Li5kZjRkNDQ2ZWQ5YzUzMjcxMTI4OTEw
OTUyOTRkMTllZjdjNjFiNzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0
ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0
ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcApAQCAtNTQsNyArNTQsNyBAQCBTY3JpcHRlZEFuaW1h
dGlvbkNvbnRyb2xsZXI6OlNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcihEb2N1bWVudCogZG9j
dW1lbnQsIFBsYQogICAgICwgbV9uZXh0Q2FsbGJhY2tJZCgwKQogICAgICwgbV9zdXNwZW5kQ291
bnQoMCkKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAgLCBtX2Fu
aW1hdGlvblRpbWVyKHRoaXMsICZTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXI6OmFuaW1hdGlv
blRpbWVyRmlyZWQpCisgICAgLCBtX2FuaW1hdGlvblRpbWVyKCp0aGlzLCAmU2NyaXB0ZWRBbmlt
YXRpb25Db250cm9sbGVyOjphbmltYXRpb25UaW1lckZpcmVkKQogICAgICwgbV9sYXN0QW5pbWF0
aW9uRnJhbWVUaW1lTW9ub3RvbmljKDApCiAjaWYgVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1F
X0RJU1BMQVlfTU9OSVRPUikKICAgICAsIG1faXNVc2luZ1RpbWVyKGZhbHNlKQpAQCAtMjExLDcg
KzIxMSw3IEBAIHZvaWQgU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyOjpzY2hlZHVsZUFuaW1h
dGlvbigpCiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi12b2lk
IFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcjo6YW5pbWF0aW9uVGltZXJGaXJlZChUaW1lciYp
Cit2b2lkIFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcjo6YW5pbWF0aW9uVGltZXJGaXJlZCgp
CiB7CiAgICAgbV9sYXN0QW5pbWF0aW9uRnJhbWVUaW1lTW9ub3RvbmljID0gbW9ub3RvbmljYWxs
eUluY3JlYXNpbmdUaW1lKCk7CiAgICAgc2VydmljZVNjcmlwdGVkQW5pbWF0aW9ucyhtX2xhc3RB
bmltYXRpb25GcmFtZVRpbWVNb25vdG9uaWMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1Nj
cmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oCmluZGV4IDAwMmM3MWVmYmRmYmEzNDAyNzdjYjYy
MWNhNzE2NGI2ZGQ2MDhlNDIuLjY5YjZkYzJjNDQzMWE4ZmJhMjNlODQzNjZmMmQxYmUxNTk5NmJl
YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRlZEFuaW1hdGlvbkNvbnRy
b2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0ZWRBbmltYXRpb25Db250cm9s
bGVyLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNjaGVkdWxlQW5pbWF0
aW9uKCk7CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAgdm9p
ZCBhbmltYXRpb25UaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBhbmltYXRpb25UaW1lckZp
cmVkKCk7CiAgICAgVGltZXIgbV9hbmltYXRpb25UaW1lcjsKICAgICBkb3VibGUgbV9sYXN0QW5p
bWF0aW9uRnJhbWVUaW1lTW9ub3RvbmljOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5j
cHAKaW5kZXggM2EyNDZiNDI2YzA0Zjg4NzcxZDY5ZTRhOGViNzkzZWEyMDI0N2RmMy4uYThkM2U2
ZjdkNmYyZDJhNjVlNjVkY2JkYmFiNjUxNGVkNWM1MmYxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHls
ZWRFbGVtZW50LmNwcApAQCAtNzksNyArNzksNyBAQCBjbGFzcyBQcmVzZW50YXRpb25BdHRyaWJ1
dGVDYWNoZUNsZWFuZXIgewogcHVibGljOgogICAgIFByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hl
Q2xlYW5lcigpCiAgICAgICAgIDogbV9oaXRDb3VudCgwKQotICAgICAgICAsIG1fY2xlYW5UaW1l
cih0aGlzLCAmUHJlc2VudGF0aW9uQXR0cmlidXRlQ2FjaGVDbGVhbmVyOjpjbGVhbkNhY2hlKQor
ICAgICAgICAsIG1fY2xlYW5UaW1lcigqdGhpcywgJlByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hl
Q2xlYW5lcjo6Y2xlYW5DYWNoZSkKICAgICB7CiAgICAgfQogCkBAIC05OSw5ICs5OSw4IEBAIHBy
aXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGludCBtaW5pbXVtUHJlc2VudGF0aW9uQXR0cmlidXRl
Q2FjaGVTaXplRm9yQ2xlYW5pbmcgPSAxMDA7CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIG1p
bmltdW1QcmVzZW50YXRpb25BdHRyaWJ1dGVDYWNoZUhpdENvdW50UGVyTWludXRlID0gKDEwMCAq
IHByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5UaW1lSW5TZWNvbmRzKSAvIDYwOwogCi0g
ICAgdm9pZCBjbGVhbkNhY2hlKFRpbWVyKiB0aW1lcikKKyAgICB2b2lkIGNsZWFuQ2FjaGUoKQog
ICAgIHsKLSAgICAgICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0gJm1fY2xlYW5UaW1l
cik7CiAgICAgICAgIHVuc2lnbmVkIGhpdENvdW50ID0gbV9oaXRDb3VudDsKICAgICAgICAgbV9o
aXRDb3VudCA9IDA7CiAgICAgICAgIGlmIChoaXRDb3VudCA+IG1pbmltdW1QcmVzZW50YXRpb25B
dHRyaWJ1dGVDYWNoZUhpdENvdW50UGVyTWludXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5jcHAKaW5kZXggOTczNjEzZDRhZjU2
YzMyNzVkZWJiMjU2ZmUwZjMyZTdjYTQwNzcyNi4uMGVmN2JkYTgzNDUwMjUwZjBkYWMwMGNmZmMw
MTlkMTVmMTJiODExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9BbHRlcm5h
dGl2ZVRleHRDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0FsdGVy
bmF0aXZlVGV4dENvbnRyb2xsZXIuY3BwCkBAIC0xMjksNyArMTI5LDcgQEAgc3RhdGljIGJvb2wg
bWFya2Vyc0hhdmVJZGVudGljYWxEZXNjcmlwdGlvbihjb25zdCBWZWN0b3I8UmVuZGVyZWREb2N1
bWVudE1hcmtlcioKIH0KIAogQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlcjo6QWx0ZXJuYXRpdmVU
ZXh0Q29udHJvbGxlcihGcmFtZSYgZnJhbWUpCi0gICAgOiBtX3RpbWVyKHRoaXMsICZBbHRlcm5h
dGl2ZVRleHRDb250cm9sbGVyOjp0aW1lckZpcmVkKQorICAgIDogbV90aW1lcigqdGhpcywgJkFs
dGVybmF0aXZlVGV4dENvbnRyb2xsZXI6OnRpbWVyRmlyZWQpCiAgICAgLCBtX2ZyYW1lKGZyYW1l
KQogewogfQpAQCAtMzI3LDcgKzMyNyw3IEBAIHZvaWQgQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxl
cjo6cmVzcG9uZFRvVW5hcHBsaWVkU3BlbGxDb3JyZWN0aW9uKGNvbnN0IFZpc2libGVTCiAgICAg
bWFya2Vycy5hZGRNYXJrZXIocmFuZ2UuZ2V0KCksIERvY3VtZW50TWFya2VyOjpTcGVsbENoZWNr
aW5nRXhlbXB0aW9uKTsKIH0KIAotdm9pZCBBbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyOjp0aW1l
ckZpcmVkKFRpbWVyJikKK3ZvaWQgQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlcjo6dGltZXJGaXJl
ZCgpCiB7CiAgICAgbV9pc0Rpc21pc3NlZEJ5RWRpdGluZyA9IGZhbHNlOwogICAgIHN3aXRjaCAo
bV9hbHRlcm5hdGl2ZVRleHRJbmZvLnR5cGUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmgKaW5kZXggZjEyZjgxYTgwN2I4MzZlODdi
MzI4MzIyYzk2ZmM1ZDM1ZGYzMDY4OC4uYjEwNmFjNTUyMTk4ZmVmZjEyZjAwNmNkYzMzMjAzMTdk
YTA0OWZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9BbHRlcm5hdGl2ZVRl
eHRDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9BbHRlcm5hdGl2ZVRl
eHRDb250cm9sbGVyLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBwcml2YXRlOgogI2lmIFVTRShBVVRP
Q09SUkVDVElPTl9QQU5FTCkKICAgICBTdHJpbmcgZGlzbWlzc1Nvb24oUmVhc29uRm9yRGlzbWlz
c2luZ0FsdGVybmF0aXZlVGV4dCk7CiAgICAgdm9pZCBhcHBseUFsdGVybmF0aXZlVGV4dFRvUmFu
Z2UoY29uc3QgUmFuZ2UqLCBjb25zdCBTdHJpbmcmIGFsdGVybmF0aXZlLCBBbHRlcm5hdGl2ZVRl
eHRUeXBlLCBjb25zdCBWZWN0b3I8RG9jdW1lbnRNYXJrZXI6Ok1hcmtlclR5cGU+Jik7Ci0gICAg
dm9pZCB0aW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB0aW1lckZpcmVkKCk7CiAgICAgdm9p
ZCByZWNvcmRBdXRvY29ycmVjdGlvblJlc3BvbnNlUmV2ZXJzZWQoY29uc3QgU3RyaW5nJiByZXBs
YWNlZFN0cmluZywgY29uc3QgU3RyaW5nJiByZXBsYWNlbWVudFN0cmluZyk7CiAgICAgdm9pZCBy
ZWNvcmRTcGVsbGNoZWNrZXJSZXNwb25zZUZvck1vZGlmaWVkQ29ycmVjdGlvbihSYW5nZSogcmFu
Z2VPZkNvcnJlY3Rpb24sIGNvbnN0IFN0cmluZyYgY29ycmVjdGVkLCBjb25zdCBTdHJpbmcmIGNv
cnJlY3Rpb24pOwogICAgIFN0cmluZyBtYXJrZXJEZXNjcmlwdGlvbkZvckFwcGxpZWRBbHRlcm5h
dGl2ZVRleHQoQWx0ZXJuYXRpdmVUZXh0VHlwZSwgRG9jdW1lbnRNYXJrZXI6Ok1hcmtlclR5cGUp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IGI4MmUyY2MxMTljNTQ4NTZkMTg1ZGJm
ODBiNTE0ZmY0NDE0MDg2MTcuLmVkNjNhMjg3M2YwZjhmN2IxM2ZiNTg4ZjMzMzFjMDA3N2U1ODU0
Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTEwNzYsMTEgKzEwNzYsMTEgQEAg
RWRpdG9yOjpFZGl0b3IoRnJhbWUmIGZyYW1lKQogICAgICwgbV9hcmVNYXJrZWRUZXh0TWF0Y2hl
c0hpZ2hsaWdodGVkKGZhbHNlKQogICAgICwgbV9kZWZhdWx0UGFyYWdyYXBoU2VwYXJhdG9yKEVk
aXRvclBhcmFncmFwaFNlcGFyYXRvcklzRGl2KQogICAgICwgbV9vdmVyd3JpdGVNb2RlRW5hYmxl
ZChmYWxzZSkKLSAgICAsIG1fZWRpdG9yVUlVcGRhdGVUaW1lcih0aGlzLCAmRWRpdG9yOjplZGl0
b3JVSVVwZGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX2VkaXRvclVJVXBkYXRlVGltZXIoKnRoaXMs
ICZFZGl0b3I6OmVkaXRvclVJVXBkYXRlVGltZXJGaXJlZCkKICAgICAsIG1fZWRpdG9yVUlVcGRh
dGVUaW1lclNob3VsZENoZWNrU3BlbGxpbmdBbmRHcmFtbWFyKGZhbHNlKQogICAgICwgbV9lZGl0
b3JVSVVwZGF0ZVRpbWVyV2FzVHJpZ2dlcmVkQnlEaWN0YXRpb24oZmFsc2UpCiAjaWYgRU5BQkxF
KFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiAhUExBVEZPUk0oSU9TKQotICAgICwgbV90
ZWxlcGhvbmVOdW1iZXJEZXRlY3Rpb25VcGRhdGVUaW1lcih0aGlzLCAmRWRpdG9yOjpzY2FuU2Vs
ZWN0aW9uRm9yVGVsZXBob25lTnVtYmVycykKKyAgICAsIG1fdGVsZXBob25lTnVtYmVyRGV0ZWN0
aW9uVXBkYXRlVGltZXIoKnRoaXMsICZFZGl0b3I6OnNjYW5TZWxlY3Rpb25Gb3JUZWxlcGhvbmVO
dW1iZXJzKQogI2VuZGlmCiB7CiB9CkBAIC0zMjcwLDExICszMjcwLDYgQEAgYm9vbCBFZGl0b3I6
OnNob3VsZERldGVjdFRlbGVwaG9uZU51bWJlcnMoKQogICAgIHJldHVybiBkb2N1bWVudCgpLmlz
VGVsZXBob25lTnVtYmVyUGFyc2luZ0VuYWJsZWQoKSAmJiBUZWxlcGhvbmVOdW1iZXJEZXRlY3Rv
cjo6aXNTdXBwb3J0ZWQoKTsKIH0KIAotdm9pZCBFZGl0b3I6OnNjYW5TZWxlY3Rpb25Gb3JUZWxl
cGhvbmVOdW1iZXJzKFRpbWVyJikKLXsKLSAgICBzY2FuU2VsZWN0aW9uRm9yVGVsZXBob25lTnVt
YmVycygpOwotfQotCiB2b2lkIEVkaXRvcjo6c2NhblNlbGVjdGlvbkZvclRlbGVwaG9uZU51bWJl
cnMoKQogewogICAgIGlmICghc2hvdWxkRGV0ZWN0VGVsZXBob25lTnVtYmVycygpIHx8ICFjbGll
bnQoKSkKQEAgLTMzNzQsMTAgKzMzNjksMTAgQEAgdm9pZCBFZGl0b3I6OnVwZGF0ZUVkaXRvclVJ
Tm93SWZTY2hlZHVsZWQoKQogICAgIGlmICghbV9lZGl0b3JVSVVwZGF0ZVRpbWVyLmlzQWN0aXZl
KCkpCiAgICAgICAgIHJldHVybjsKICAgICBtX2VkaXRvclVJVXBkYXRlVGltZXIuc3RvcCgpOwot
ICAgIGVkaXRvclVJVXBkYXRlVGltZXJGaXJlZChtX2VkaXRvclVJVXBkYXRlVGltZXIpOworICAg
IGVkaXRvclVJVXBkYXRlVGltZXJGaXJlZCgpOwogfQogCi12b2lkIEVkaXRvcjo6ZWRpdG9yVUlV
cGRhdGVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgRWRpdG9yOjplZGl0b3JVSVVwZGF0ZVRpbWVy
RmlyZWQoKQogewogICAgIFZpc2libGVTZWxlY3Rpb24gb2xkU2VsZWN0aW9uID0gbV9vbGRTZWxl
Y3Rpb25Gb3JFZGl0b3JVSVVwZGF0ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKaW5kZXggOGJl
MWY3M2I5YTA0M2Q4ZGNkNDgxNmI4MDlkODFlNTU4YzBjZjcwNy4uNjcxZjRjM2M1NzNiODMzY2Q0
YzBmMTU5NjBiZTIyNzRlMmQwMDY3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCkBAIC00NzIs
NyArNDcyLDcgQEAgcHJpdmF0ZToKICAgICBlbnVtIEVkaXRvckFjdGlvblNwZWNpZmllciB7IEN1
dEFjdGlvbiwgQ29weUFjdGlvbiB9OwogICAgIHZvaWQgcGVyZm9ybUN1dE9yQ29weShFZGl0b3JB
Y3Rpb25TcGVjaWZpZXIpOwogCi0gICAgdm9pZCBlZGl0b3JVSVVwZGF0ZVRpbWVyRmlyZWQoVGlt
ZXImKTsKKyAgICB2b2lkIGVkaXRvclVJVXBkYXRlVGltZXJGaXJlZCgpOwogCiAgICAgTm9kZSog
ZmluZEV2ZW50VGFyZ2V0RnJvbVNlbGVjdGlvbigpIGNvbnN0OwogCkBAIC01MTAsNyArNTEwLDYg
QEAgcHJpdmF0ZToKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJiYg
IVBMQVRGT1JNKElPUykKICAgICBib29sIHNob3VsZERldGVjdFRlbGVwaG9uZU51bWJlcnMoKTsK
LSAgICB2b2lkIHNjYW5TZWxlY3Rpb25Gb3JUZWxlcGhvbmVOdW1iZXJzKFRpbWVyJik7CiAgICAg
dm9pZCBzY2FuUmFuZ2VGb3JUZWxlcGhvbmVOdW1iZXJzKFJhbmdlJiwgY29uc3QgU3RyaW5nVmll
dyYsIFZlY3RvcjxSZWZQdHI8UmFuZ2U+PiYgbWFya2VkUmFuZ2VzKTsKIAogICAgIFRpbWVyIG1f
dGVsZXBob25lTnVtYmVyRGV0ZWN0aW9uVXBkYXRlVGltZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRnJhbWVTZWxlY3Rpb24uY3BwCmluZGV4IDhmNjBkMDI5NTZkOGFjOTA2NjE1ZGEyY2FlMDI4
MWQwZGQ0OGEyNTYuLmFmNGJkMTc4YmRkZjI0NmZlNzc4NWUxOGE4NzA5OThmYzI1MDJjNmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCkBAIC0xMTEsNyArMTEx
LDcgQEAgRnJhbWVTZWxlY3Rpb246OkZyYW1lU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICA6
IG1fZnJhbWUoZnJhbWUpCiAgICAgLCBtX3hQb3NGb3JWZXJ0aWNhbEFycm93TmF2aWdhdGlvbihO
b1hQb3NGb3JWZXJ0aWNhbEFycm93TmF2aWdhdGlvbigpKQogICAgICwgbV9ncmFudWxhcml0eShD
aGFyYWN0ZXJHcmFudWxhcml0eSkKLSAgICAsIG1fY2FyZXRCbGlua1RpbWVyKHRoaXMsICZGcmFt
ZVNlbGVjdGlvbjo6Y2FyZXRCbGlua1RpbWVyRmlyZWQpCisgICAgLCBtX2NhcmV0QmxpbmtUaW1l
cigqdGhpcywgJkZyYW1lU2VsZWN0aW9uOjpjYXJldEJsaW5rVGltZXJGaXJlZCkKICAgICAsIG1f
YWJzQ2FyZXRCb3VuZHNEaXJ0eSh0cnVlKQogICAgICwgbV9jYXJldFBhaW50KHRydWUpCiAgICAg
LCBtX2lzQ2FyZXRCbGlua2luZ1N1c3BlbmRlZChmYWxzZSkKQEAgLTE4OTAsNyArMTg5MCw3IEBA
IHZvaWQgRnJhbWVTZWxlY3Rpb246OnNldENhcmV0VmlzaWJpbGl0eShDYXJldFZpc2liaWxpdHkg
dmlzaWJpbGl0eSkKICAgICB1cGRhdGVBcHBlYXJhbmNlKCk7CiB9CiAKLXZvaWQgRnJhbWVTZWxl
Y3Rpb246OmNhcmV0QmxpbmtUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgRnJhbWVTZWxlY3Rpb246
OmNhcmV0QmxpbmtUaW1lckZpcmVkKCkKIHsKICNpZiBFTkFCTEUoVEVYVF9DQVJFVCkKICAgICBB
U1NFUlQoY2FyZXRJc1Zpc2libGUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL0ZyYW1lU2VsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0
aW9uLmgKaW5kZXggNmE4Nzc2MGU5MGExZDA4MDFmMDc3N2E5Y2MyY2VhZmNmYzJiMWE2My4uZTUy
ZTc5YTY1OWYwYWZlOGQ5NjFmZjFhNDQ0M2M3NGQ2ODVhNWQ0NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvRnJhbWVTZWxlY3Rpb24uaApAQCAtMzEwLDcgKzMxMCw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBzZXRGb2N1c2VkRWxlbWVudElmTmVlZGVkKCk7CiAgICAgdm9pZCBmb2N1c2VkT3JBY3Rp
dmVTdGF0ZUNoYW5nZWQoKTsKIAotICAgIHZvaWQgY2FyZXRCbGlua1RpbWVyRmlyZWQoVGltZXIm
KTsKKyAgICB2b2lkIGNhcmV0QmxpbmtUaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHNldENhcmV0
VmlzaWJpbGl0eShDYXJldFZpc2liaWxpdHkpOwogICAgIGJvb2wgcmVjb21wdXRlQ2FyZXRSZWN0
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1NwZWxsQ2hlY2tlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1NwZWxsQ2hlY2tlci5jcHAKaW5kZXggYWU4MzIxMjEz
OTc2NzA2NmUwMWIyOWNmMDU5ZDg5NGY2NmUyNmVjNy4uN2NlMjk2ODk2ZGM5NjQyNGI0ZDMwNWU2
NjQzZjkzYTdlNjFhMzJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9TcGVs
bENoZWNrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvU3BlbGxDaGVja2VyLmNw
cApAQCAtMTA3LDcgKzEwNyw3IEBAIFNwZWxsQ2hlY2tlcjo6U3BlbGxDaGVja2VyKEZyYW1lJiBm
cmFtZSkKICAgICA6IG1fZnJhbWUoZnJhbWUpCiAgICAgLCBtX2xhc3RSZXF1ZXN0U2VxdWVuY2Uo
MCkKICAgICAsIG1fbGFzdFByb2Nlc3NlZFNlcXVlbmNlKDApCi0gICAgLCBtX3RpbWVyVG9Qcm9j
ZXNzUXVldWVkUmVxdWVzdCh0aGlzLCAmU3BlbGxDaGVja2VyOjp0aW1lckZpcmVkVG9Qcm9jZXNz
UXVldWVkUmVxdWVzdCkKKyAgICAsIG1fdGltZXJUb1Byb2Nlc3NRdWV1ZWRSZXF1ZXN0KCp0aGlz
LCAmU3BlbGxDaGVja2VyOjp0aW1lckZpcmVkVG9Qcm9jZXNzUXVldWVkUmVxdWVzdCkKIHsKIH0K
IApAQCAtMTI3LDcgKzEyNyw3IEBAIFRleHRDaGVja2VyQ2xpZW50KiBTcGVsbENoZWNrZXI6OmNs
aWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIHBhZ2UtPmVkaXRvckNsaWVudCgpLT50ZXh0Q2hlY2tl
cigpOwogfQogCi12b2lkIFNwZWxsQ2hlY2tlcjo6dGltZXJGaXJlZFRvUHJvY2Vzc1F1ZXVlZFJl
cXVlc3QoVGltZXIqKQordm9pZCBTcGVsbENoZWNrZXI6OnRpbWVyRmlyZWRUb1Byb2Nlc3NRdWV1
ZWRSZXF1ZXN0KCkKIHsKICAgICBBU1NFUlQoIW1fcmVxdWVzdFF1ZXVlLmlzRW1wdHkoKSk7CiAg
ICAgaWYgKG1fcmVxdWVzdFF1ZXVlLmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvU3BlbGxDaGVja2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1NwZWxs
Q2hlY2tlci5oCmluZGV4IDAwOGUzMjhmNjQ0ODAyMGUyYjY5ZGU2YWJkNDgyMDc3OGNlZWJmMTku
LjYzNTNmNzA5NDgzMGM4ZjI3NmQxOTNmYzI1M2QzNzBlYjA4MjgxZDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvU3BlbGxDaGVja2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9TcGVsbENoZWNrZXIuaApAQCAtOTgsNyArOTgsNyBAQCBwcml2YXRlOgogCiAgICAg
Ym9vbCBjYW5DaGVja0FzeW5jaHJvbm91c2x5KFJhbmdlKikgY29uc3Q7CiAgICAgVGV4dENoZWNr
ZXJDbGllbnQqIGNsaWVudCgpIGNvbnN0OwotICAgIHZvaWQgdGltZXJGaXJlZFRvUHJvY2Vzc1F1
ZXVlZFJlcXVlc3QoVGltZXIqKTsKKyAgICB2b2lkIHRpbWVyRmlyZWRUb1Byb2Nlc3NRdWV1ZWRS
ZXF1ZXN0KCk7CiAgICAgdm9pZCBpbnZva2VSZXF1ZXN0KFBhc3NSZWZQdHI8U3BlbGxDaGVja1Jl
cXVlc3Q+KTsKICAgICB2b2lkIGVucXVldWVSZXF1ZXN0KFBhc3NSZWZQdHI8U3BlbGxDaGVja1Jl
cXVlc3Q+KTsKICAgICB2b2lkIGRpZENoZWNrU3VjY2VlZChpbnQgc2VxdWVuY2UsIGNvbnN0IFZl
Y3RvcjxUZXh0Q2hlY2tpbmdSZXN1bHQ+Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxl
bWVudC5jcHAKaW5kZXggZjY2ZTlkZDVhZWMxOTlmM2M5MzcwZmY4ZDkwYjMzZmJmZjE5NDkxZC4u
ZTM0OTdlZTI3NThiNzZlNWQxZDFiMjA4MmUzZWNkMGIxMjliNTBlYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcApAQCAtNjUsNyArNjUsNyBAQCBIVE1MRm9ybUVsZW1l
bnQ6OkhUTUxGb3JtRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVu
dCYgZG9jdW1lbgogICAgICwgbV9pc0luUmVzZXRGdW5jdGlvbihmYWxzZSkKICAgICAsIG1fd2Fz
RGVtb3RlZChmYWxzZSkKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgLCBt
X3JlcXVlc3RBdXRvY29tcGxldGVUaW1lcih0aGlzLCAmSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0
QXV0b2NvbXBsZXRlVGltZXJGaXJlZCkKKyAgICAsIG1fcmVxdWVzdEF1dG9jb21wbGV0ZXRpbWVy
KCp0aGlzLCAmSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRlVGltZXJGaXJlZCkK
ICNlbmRpZgogewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGZvcm1UYWcpKTsKQEAgLTQ3Miw3ICs0
NzIsNyBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6ZmluaXNoUmVxdWVzdEF1dG9jb21wbGV0ZShB
dXRvY29tcGxldGVSZXN1bHQgcmVzdWx0KQogICAgICAgICBtX3JlcXVlc3RBdXRvY29tcGxldGVU
aW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0
QXV0b2NvbXBsZXRlVGltZXJGaXJlZChUaW1lciopCit2b2lkIEhUTUxGb3JtRWxlbWVudDo6cmVx
dWVzdEF1dG9jb21wbGV0ZVRpbWVyRmlyZWQoKQogewogICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+
PiBwZW5kaW5nRXZlbnRzOwogICAgIG1fcGVuZGluZ0F1dG9jb21wbGV0ZUV2ZW50cy5zd2FwKHBl
bmRpbmdFdmVudHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKaW5kZXggZTU0
NWM3NzQyNTMwZmY2ODUxODFmYmZiYzc0Y2M3MWZiMTk4OGQ2ZS4uOGNiZTkyMDdiYzM5ZGMyZmE2
YzlkM2U5OTYyNzBkZTdiZTU2ZTY4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVu
dC5oCkBAIC0xOTQsNyArMTk0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fd2FzRGVtb3RlZDsK
IAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIHJlcXVlc3RBdXRv
Y29tcGxldGVUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCByZXF1ZXN0QXV0b2NvbXBsZXRl
VGltZXJGaXJlZCgpOwogCiAgICAgVmVjdG9yPFJlZlB0cjxFdmVudD4+IG1fcGVuZGluZ0F1dG9j
b21wbGV0ZUV2ZW50czsKICAgICBUaW1lciBtX3JlcXVlc3RBdXRvY29tcGxldGVUaW1lcjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGNhNWYwYWUxNDI4NWQ1
ZDM1YzUyMzg2OGRlNDAwNmZhNDJkYWNhNDguLjg3ZGZiMWQ3MjZkNzMzNjU5ZTUyYjNmMTEwNjU2
MGRjOWNiNTZlMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApA
QCAtMjU0LDExICsyNTQsMTEgQEAgcHJpdmF0ZToKIEhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRp
YUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50
LCBib29sIGNyZWF0ZWRCeVBhcnNlcikKICAgICA6IEhUTUxFbGVtZW50KHRhZ05hbWUsIGRvY3Vt
ZW50KQogICAgICwgQWN0aXZlRE9NT2JqZWN0KCZkb2N1bWVudCkKLSAgICAsIG1fbG9hZFRpbWVy
KHRoaXMsICZIVE1MTWVkaWFFbGVtZW50Ojpsb2FkVGltZXJGaXJlZCkKLSAgICAsIG1fcHJvZ3Jl
c3NFdmVudFRpbWVyKHRoaXMsICZIVE1MTWVkaWFFbGVtZW50Ojpwcm9ncmVzc0V2ZW50VGltZXJG
aXJlZCkKLSAgICAsIG1fcGxheWJhY2tQcm9ncmVzc1RpbWVyKHRoaXMsICZIVE1MTWVkaWFFbGVt
ZW50OjpwbGF5YmFja1Byb2dyZXNzVGltZXJGaXJlZCkKLSAgICAsIG1fc2NhblRpbWVyKHRoaXMs
ICZIVE1MTWVkaWFFbGVtZW50OjpzY2FuVGltZXJGaXJlZCkKLSAgICAsIG1fc2Vla1RpbWVyKHRo
aXMsICZIVE1MTWVkaWFFbGVtZW50OjpzZWVrVGltZXJGaXJlZCkKKyAgICAsIG1fbG9hZFRpbWVy
KCp0aGlzLCAmSFRNTE1lZGlhRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQpCisgICAgLCBtX3Byb2dy
ZXNzRXZlbnRUaW1lcigqdGhpcywgJkhUTUxNZWRpYUVsZW1lbnQ6OnByb2dyZXNzRXZlbnRUaW1l
ckZpcmVkKQorICAgICwgbV9wbGF5YmFja1Byb2dyZXNzVGltZXIoKnRoaXMsICZIVE1MTWVkaWFF
bGVtZW50OjpwbGF5YmFja1Byb2dyZXNzVGltZXJGaXJlZCkKKyAgICAsIG1fc2NhblRpbWVyKCp0
aGlzLCAmSFRNTE1lZGlhRWxlbWVudDo6c2NhblRpbWVyRmlyZWQpCisgICAgLCBtX3NlZWtUaW1l
cigqdGhpcywgJkhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUaW1lckZpcmVkKQogICAgICwgbV9wbGF5
ZWRUaW1lUmFuZ2VzKCkKICAgICAsIG1fYXN5bmNFdmVudFF1ZXVlKCp0aGlzKQogICAgICwgbV9w
bGF5YmFja1JhdGUoMS4wZikKQEAgLTc1Nyw3ICs3NTcsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OnNjaGVkdWxlRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudE5hbWUpCiAgICAgbV9h
c3luY0V2ZW50UXVldWUuZW5xdWV1ZUV2ZW50KGV2ZW50LnJlbGVhc2UoKSk7CiB9CiAKLXZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBIVE1MTWVkaWFF
bGVtZW50Ojpsb2FkVGltZXJGaXJlZCgpCiB7CiAgICAgUmVmPEhUTUxNZWRpYUVsZW1lbnQ+IHBy
b3RlY3QoKnRoaXMpOyAvLyBsb2FkTmV4dFNvdXJjZUNoaWxkIG1heSBmaXJlICdiZWZvcmVsb2Fk
Jywgd2hpY2ggY2FuIG1ha2UgYXJiaXRyYXJ5IERPTSBtdXRhdGlvbnMuCiAKQEAgLTIyMjUsNyAr
MjIyNSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0TWVkaWFLZXlzKE1lZGlhS2V5cyog
bWVkaWFLZXlzKQogfQogI2VuZGlmCiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cHJvZ3Jlc3NF
dmVudFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpwcm9ncmVzc0V2
ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKG1fcGxheWVyKTsKICAgICBpZiAobV9uZXR3
b3JrU3RhdGUgIT0gTkVUV09SS19MT0FESU5HKQpAQCAtMjM2MCwxMCArMjM2MCwxMCBAQCB2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtXaXRoVG9sZXJhbmNlKGNvbnN0IE1lZGlhVGltZSYgaW5U
aW1lLCBjb25zdCBNZWRpYVRpbQogICAgIGlmIChmcm9tRE9NKQogICAgICAgICBtX3NlZWtUaW1l
ci5zdGFydE9uZVNob3QoMCk7CiAgICAgZWxzZQotICAgICAgICBzZWVrVGltZXJGaXJlZChtX3Nl
ZWtUaW1lcik7CisgICAgICAgIHNlZWtUaW1lckZpcmVkKCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6c2Vla1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpz
ZWVrVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX3BsYXllcikgewogICAgICAgICBtX3NlZWtp
bmcgPSBmYWxzZTsKQEAgLTMxMDcsNyArMzEwNyw3IEBAIGRvdWJsZSBIVE1MTWVkaWFFbGVtZW50
OjpuZXh0U2NhblJhdGUoKQogICAgIHJldHVybiByYXRlOwogfQogCi12b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OnNjYW5UaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2Nh
blRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX3NjYW5UeXBlID09IFNlZWspIHsKICAgICAgICAg
ZG91YmxlIHNlZWtUaW1lID0gbV9zY2FuRGlyZWN0aW9uID09IEZvcndhcmQgPyBTZWVrVGltZSA6
IC1TZWVrVGltZTsKQEAgLTMxMjksNyArMzEyOSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
c3RhcnRQbGF5YmFja1Byb2dyZXNzVGltZXIoKQogICAgIG1fcGxheWJhY2tQcm9ncmVzc1RpbWVy
LnN0YXJ0UmVwZWF0aW5nKG1heFRpbWV1cGRhdGVFdmVudEZyZXF1ZW5jeSk7CiB9CiAKLXZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6cGxheWJhY2tQcm9ncmVzc1RpbWVyRmlyZWQoVGltZXImKQordm9p
ZCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5YmFja1Byb2dyZXNzVGltZXJGaXJlZCgpCiB7CiAgICAg
QVNTRVJUKG1fcGxheWVyKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaApp
bmRleCA3MTlkNzE2Yzg3ZDdhYjkzOWZmOTU1MTg5OTdkOGM2NzZmNmE5ZTRlLi40ODI5ZTBkNTVj
MzE5ZGFhMTY3MzdmMDhkMmRjOGRhNzJjZTU3YmRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuaApAQCAtNTk1LDExICs1OTUsMTEgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFs
IGJvb2wgbWVkaWFQbGF5ZXJJc0luTWVkaWFEb2N1bWVudCgpIGNvbnN0IG92ZXJyaWRlIGZpbmFs
OwogICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckVuZ2luZUZhaWxlZFRvTG9hZCgpIGNvbnN0
IG92ZXJyaWRlIGZpbmFsOwogCi0gICAgdm9pZCBsb2FkVGltZXJGaXJlZChUaW1lciYpOwotICAg
IHZvaWQgcHJvZ3Jlc3NFdmVudFRpbWVyRmlyZWQoVGltZXImKTsKLSAgICB2b2lkIHBsYXliYWNr
UHJvZ3Jlc3NUaW1lckZpcmVkKFRpbWVyJik7Ci0gICAgdm9pZCBzY2FuVGltZXJGaXJlZChUaW1l
ciYpOwotICAgIHZvaWQgc2Vla1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGxvYWRUaW1l
ckZpcmVkKCk7CisgICAgdm9pZCBwcm9ncmVzc0V2ZW50VGltZXJGaXJlZCgpOworICAgIHZvaWQg
cGxheWJhY2tQcm9ncmVzc1RpbWVyRmlyZWQoKTsKKyAgICB2b2lkIHNjYW5UaW1lckZpcmVkKCk7
CisgICAgdm9pZCBzZWVrVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRQbGF5YmFja1Byb2dy
ZXNzVGltZXIoKTsKICAgICB2b2lkIHN0YXJ0UHJvZ3Jlc3NFdmVudFRpbWVyKCk7CiAgICAgdm9p
ZCBzdG9wUGVyaW9kaWNUaW1lcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFBsdWdJbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxl
bWVudC5jcHAKaW5kZXggNTI0MGU5ZjMyNjdhZjQxOTYwM2ZlOTQyYWYxOWExMTY1MWFjZTI3NS4u
ZWNiZGU0YjEwNTdhODM0YTA5ZWZmOTFmYTgzOTI3ZWM3YjAzMGRlNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAKQEAgLTY3LDcgKzY3LDcgQEAgdXNpbmcgbmFt
ZXNwYWNlIEhUTUxOYW1lczsKIEhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1Z0luRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBI
VE1MRnJhbWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCiAgICAgLCBtX2luQmVmb3Jl
TG9hZEV2ZW50SGFuZGxlcihmYWxzZSkKLSAgICAsIG1fc3dhcFJlbmRlcmVyVGltZXIodGhpcywg
JkhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQorICAgICwgbV9zd2Fw
UmVuZGVyZXJUaW1lcigqdGhpcywgJkhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1l
ckZpcmVkKQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICwgbV9OUE9iamVj
dCgwKQogI2VuZGlmCkBAIC0zMDAsNyArMzAwLDcgQEAgUmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+
IEhUTUxQbHVnSW5FbGVtZW50OjpjcmVhdGVFbGVtZW50UmVuZGVyZXIoUGFzc1JlZjxSZW5kZXIK
ICAgICByZXR1cm4gY3JlYXRlUmVuZGVyZXI8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KCp0aGlzLCBX
VEY6Om1vdmUoc3R5bGUpKTsKIH0KIAotdm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6c3dhcFJlbmRl
cmVyVGltZXJGaXJlZChUaW1lciYpCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVy
ZXJUaW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQoZGlzcGxheVN0YXRlKCkgPT0gUHJlcGFyaW5n
UGx1Z2luUmVwbGFjZW1lbnQgfHwgZGlzcGxheVN0YXRlKCkgPT0gRGlzcGxheWluZ1NuYXBzaG90
KTsKICAgICBpZiAodXNlckFnZW50U2hhZG93Um9vdCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
UGx1Z0luRWxlbWVudC5oCmluZGV4IGQ3ZTM2NzU3NGY0MTQ0MmE1MTMxZTI4ODgxOWEwMzBlMWVi
ZWQyOTEuLjhjMTk1Zjg0ZDRjOGU2YjI5NGRiM2MyYjUzNTJiZDFiNTU1ZDA2MDQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgKQEAgLTExMiw3ICsxMTIsNyBAQCBwcm90
ZWN0ZWQ6CiAgICAgYm9vbCBtX2luQmVmb3JlTG9hZEV2ZW50SGFuZGxlcjsKIAogcHJpdmF0ZToK
LSAgICB2b2lkIHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHN3YXBS
ZW5kZXJlclRpbWVyRmlyZWQoKTsKICAgICBib29sIHNob3VsZE92ZXJyaWRlUGx1Z2luKGNvbnN0
IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAogICAgIGJvb2wgZGlzcGF0
Y2hCZWZvcmVMb2FkRXZlbnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOyAvLyBOb3QgaW1wbGVt
ZW50ZWQsIGdlbmVyYXRlcyBhIGNvbXBpbGUgZXJyb3IgaWYgc3ViY2xhc3NlcyBjYWxsIHRoaXMg
YnkgbWlzdGFrZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbklt
YWdlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1l
bnQuY3BwCmluZGV4IDY3MjA4ODU1OTQ4MDM1OTgxYWJiZTg2MDhkOGI5MWE1ZmYyMzRjMmQuLmZh
YzY2YjhiYTcwMGM0ODkyMmFhOWMxN2I3NTNmOTRlYjI2MTFkYmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcApAQCAtMTA3LDggKzEwNyw4IEBA
IEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQoY29uc3QgUXVh
bGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jCiAgICAgLCBtX25lZWRzV2lkZ2V0VXBkYXRlKCFjcmVh
dGVkQnlQYXJzZXIpCiAgICAgLCBtX3Nob3VsZFByZWZlclBsdWdJbnNGb3JJbWFnZXMocHJlZmVy
UGx1Z0luc0ZvckltYWdlc09wdGlvbiA9PSBTaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2VzKQog
ICAgICwgbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNrcyhmYWxzZSkKLSAgICAsIG1f
c2ltdWxhdGVkTW91c2VDbGlja1RpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojpz
aW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZCwgc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRGVs
YXkpCi0gICAgLCBtX3JlbW92ZVNuYXBzaG90VGltZXIodGhpcywgJkhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OnJlbW92ZVNuYXBzaG90VGltZXJGaXJlZCkKKyAgICAsIG1fc2ltdWxhdGVkTW91c2VD
bGlja1RpbWVyKCp0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2ltdWxhdGVkTW91c2VD
bGlja1RpbWVyRmlyZWQsIHNpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lckRlbGF5KQorICAgICwgbV9y
ZW1vdmVTbmFwc2hvdFRpbWVyKCp0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVtb3Zl
U25hcHNob3RUaW1lckZpcmVkKQogICAgICwgbV9jcmVhdGVkRHVyaW5nVXNlckdlc3R1cmUoU2Ny
aXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgLCBtX2lzUmVzdGFy
dGVkUGx1Z2luKGZhbHNlKQogICAgICwgbV9uZWVkc0NoZWNrRm9yU2l6ZUNoYW5nZShmYWxzZSkK
QEAgLTM5OSw3ICszOTksNyBAQCBib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnBhcnRPZlNu
YXBzaG90T3ZlcmxheShOb2RlKiBub2RlKQogICAgIHJldHVybiBub2RlICYmIHNuYXBzaG90TGFi
ZWwgJiYgKG5vZGUgPT0gc25hcHNob3RMYWJlbC5nZXQoKSB8fCBub2RlLT5pc0Rlc2NlbmRhbnRP
ZihzbmFwc2hvdExhYmVsLmdldCgpKSk7CiB9CiAKLXZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVu
dDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSFRNTFBsdWdJbkltYWdl
RWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKCkKIHsKICAgICBtX3NuYXBzaG90SW1h
Z2UgPSBudWxscHRyOwogICAgIG1faXNSZXN0YXJ0ZWRQbHVnaW4gPSBmYWxzZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgKaW5kZXggZjE3ZWY2ZTg4ZWQw
MDU0YjVhZTJlNzVlYWMxNTQwMjQzOGFlZThiYi4uODIwZmI3MjJhZDI2NzQ0NTBmOTFiYmJlMWU3
MjA1ZDQ5MmRjMzIzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VF
bGVtZW50LmgKQEAgLTEzNiw3ICsxMzYsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2ltdWxhdGVk
TW91c2VDbGlja1RpbWVyRmlyZWQoKTsKIAogICAgIHZvaWQgcmVzdGFydFNpbWlsYXJQbHVnSW5z
KCk7Ci0gICAgdm9pZCByZW1vdmVTbmFwc2hvdFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHJlbW92ZVNuYXBzaG90VGltZXJGaXJlZCgpOwogICAgIGJvb2wgaXNUb3BMZXZlbEZ1bGxQYWdl
UGx1Z2luKGNvbnN0IFJlbmRlckVtYmVkZGVkT2JqZWN0JikgY29uc3Q7CiAKICAgICBVUkwgbV9s
b2FkZWRVcmw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTb3VyY2VFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwCmluZGV4
IGZkMTk2Mzk5MjcwZmQ2YjFhZmZhODQ0OTc4Y2E4MmNlMTZlNjJjNzMuLmYwYjdlNGE0M2RiMTY1
M2Q3N2NmMGY1NzViOGVjODkyOTE3NDRlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNv
dXJjZUVsZW1lbnQuY3BwCkBAIC00MCw3ICs0MCw3IEBAIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFt
ZXM7CiAKIGlubGluZSBIVE1MU291cmNlRWxlbWVudDo6SFRNTFNvdXJjZUVsZW1lbnQoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50KQogICAgIDogSFRNTEVs
ZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCi0gICAgLCBtX2Vycm9yRXZlbnRUaW1lcih0aGlzLCAm
SFRNTFNvdXJjZUVsZW1lbnQ6OmVycm9yRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9lcnJvckV2
ZW50VGltZXIoKnRoaXMsICZIVE1MU291cmNlRWxlbWVudDo6ZXJyb3JFdmVudFRpbWVyRmlyZWQp
CiB7CiAgICAgTE9HKE1lZGlhLCAiSFRNTFNvdXJjZUVsZW1lbnQ6OkhUTUxTb3VyY2VFbGVtZW50
IC0gJXAiLCB0aGlzKTsKICAgICBBU1NFUlQoaGFzVGFnTmFtZShzb3VyY2VUYWcpKTsKQEAgLTEx
MCw3ICsxMTAsNyBAQCB2b2lkIEhUTUxTb3VyY2VFbGVtZW50OjpjYW5jZWxQZW5kaW5nRXJyb3JF
dmVudCgpCiAgICAgbV9lcnJvckV2ZW50VGltZXIuc3RvcCgpOwogfQogCi12b2lkIEhUTUxTb3Vy
Y2VFbGVtZW50OjplcnJvckV2ZW50VGltZXJGaXJlZChUaW1lciYpCit2b2lkIEhUTUxTb3VyY2VF
bGVtZW50OjplcnJvckV2ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgTE9HKE1lZGlhLCAiSFRNTFNv
dXJjZUVsZW1lbnQ6OmVycm9yRXZlbnRUaW1lckZpcmVkIC0gJXAiLCB0aGlzKTsKICAgICBkaXNw
YXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGZhbHNlLCB0
cnVlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTb3VyY2VFbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTb3VyY2VFbGVtZW50LmgKaW5kZXggMTFjNTVh
MGY4OTRkODBmZDEyMTAwZGNhMDA4Yjk5MjZiZmNkOGQzYi4uNGNhNTI4ZDI4MWI2ZDVlY2I2ZTMw
MmFmYmVhMGQ1YmQwOTk5YTIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
U291cmNlRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1l
bnQuaApAQCAtNTIsNyArNTIsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCByZW1vdmVk
RnJvbShDb250YWluZXJOb2RlJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBib29sIGlzVVJMQXR0
cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdm9pZCBlcnJv
ckV2ZW50VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgZXJyb3JFdmVudFRpbWVyRmlyZWQo
KTsKIAogICAgIFRpbWVyIG1fZXJyb3JFdmVudFRpbWVyOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxUcmFja0VsZW1lbnQuY3BwCmluZGV4IDc0OTEzODhhYWJiZjk1NDI2ZWFhMWIzM2JmMTQx
ZTc0NTQ4MjQ2YWIuLjA3YzJjYzg2ZmJmZmMxNTI0YzVjNjQ4MWNlOWEzMzZiOWUzZGU4NDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcApAQCAtNTIsNyArNTIsNyBA
QCBzdGF0aWMgU3RyaW5nIHVybEZvckxvZ2dpbmdUcmFjayhjb25zdCBVUkwmIHVybCkKICAgICAK
IGlubGluZSBIVE1MVHJhY2tFbGVtZW50OjpIVE1MVHJhY2tFbGVtZW50KGNvbnN0IFF1YWxpZmll
ZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkKICAgICA6IEhUTUxFbGVtZW50KHRh
Z05hbWUsIGRvY3VtZW50KQotICAgICwgbV9sb2FkVGltZXIodGhpcywgJkhUTUxUcmFja0VsZW1l
bnQ6OmxvYWRUaW1lckZpcmVkKQorICAgICwgbV9sb2FkVGltZXIoKnRoaXMsICZIVE1MVHJhY2tF
bGVtZW50Ojpsb2FkVGltZXJGaXJlZCkKIHsKICAgICBMT0coTWVkaWEsICJIVE1MVHJhY2tFbGVt
ZW50OjpIVE1MVHJhY2tFbGVtZW50IC0gJXAiLCB0aGlzKTsKICAgICBBU1NFUlQoaGFzVGFnTmFt
ZSh0cmFja1RhZykpOwpAQCAtMjAwLDcgKzIwMCw3IEBAIHZvaWQgSFRNTFRyYWNrRWxlbWVudDo6
c2NoZWR1bGVMb2FkKCkKICAgICBtX2xvYWRUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZv
aWQgSFRNTFRyYWNrRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBIVE1MVHJh
Y2tFbGVtZW50Ojpsb2FkVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFmYXN0SGFzQXR0cmlidXRl
KHNyY0F0dHIpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxUcmFja0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxl
bWVudC5oCmluZGV4IDEyMWI5YzM2MDVmZmZjZWJmNGMwNTcxZmYzYTc4NmVjYjRiY2M5MDkuLjQ0
ODg5YTVkODY4ZjVlY2ZmNTJkMWE5YzE3NjdiNmU0YTA2YmNiNDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFRyYWNrRWxlbWVudC5oCkBAIC03NSw3ICs3NSw3IEBAIHByaXZhdGU6CiAKICAgICB2
aXJ0dWFsIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3Qgb3ZlcnJp
ZGU7CiAKLSAgICB2b2lkIGxvYWRUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBsb2FkVGlt
ZXJGaXJlZCgpOwogCiAgICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgY29uc3Q7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmNwcAppbmRleCA0MTMxNjc0NDhm
ZGZmYjAxNTkxOWVjYTI3NWNkMGU2ZWY3MGU4YTc2Li45OTBkYWVhMGI5ZjAxNWI4ZDk5ZTc0NDFm
ZGU0YTVjYWY0NDM2NDFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhQ29u
dHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUNvbnRyb2xsZXIuY3Bw
CkBAIC01MCwxMiArNTAsMTIgQEAgTWVkaWFDb250cm9sbGVyOjpNZWRpYUNvbnRyb2xsZXIoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICAsIG1fbXV0ZWQoZmFsc2UpCiAgICAg
LCBtX3JlYWR5U3RhdGUoSEFWRV9OT1RISU5HKQogICAgICwgbV9wbGF5YmFja1N0YXRlKFdBSVRJ
TkcpCi0gICAgLCBtX2FzeW5jRXZlbnRUaW1lcih0aGlzLCAmTWVkaWFDb250cm9sbGVyOjphc3lu
Y0V2ZW50VGltZXJGaXJlZCkKLSAgICAsIG1fY2xlYXJQb3NpdGlvblRpbWVyKHRoaXMsICZNZWRp
YUNvbnRyb2xsZXI6OmNsZWFyUG9zaXRpb25UaW1lckZpcmVkKQorICAgICwgbV9hc3luY0V2ZW50
VGltZXIoKnRoaXMsICZNZWRpYUNvbnRyb2xsZXI6OmFzeW5jRXZlbnRUaW1lckZpcmVkKQorICAg
ICwgbV9jbGVhclBvc2l0aW9uVGltZXIoKnRoaXMsICZNZWRpYUNvbnRyb2xsZXI6OmNsZWFyUG9z
aXRpb25UaW1lckZpcmVkKQogICAgICwgbV9jbG9zZWRDYXB0aW9uc1Zpc2libGUoZmFsc2UpCiAg
ICAgLCBtX2Nsb2NrKENsb2NrOjpjcmVhdGUoKSkKICAgICAsIG1fc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dChjb250ZXh0KQotICAgICwgbV90aW1ldXBkYXRlVGltZXIodGhpcywgJk1lZGlhQ29udHJv
bGxlcjo6dGltZXVwZGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWV1cGRhdGVUaW1lcigqdGhp
cywgJk1lZGlhQ29udHJvbGxlcjo6dGltZXVwZGF0ZVRpbWVyRmlyZWQpCiAgICAgLCBtX3ByZXZp
b3VzVGltZXVwZGF0ZVRpbWUoMCkKIHsKIH0KQEAgLTUzOCw3ICs1MzgsNyBAQCB2b2lkIE1lZGlh
Q29udHJvbGxlcjo6c2NoZWR1bGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50TmFtZSkK
ICAgICAgICAgbV9hc3luY0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIE1l
ZGlhQ29udHJvbGxlcjo6YXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBNZWRpYUNv
bnRyb2xsZXI6OmFzeW5jRXZlbnRUaW1lckZpcmVkKCkKIHsKICAgICBWZWN0b3I8UmVmUHRyPEV2
ZW50Pj4gcGVuZGluZ0V2ZW50czsKIApAQCAtNTQ4LDcgKzU0OCw3IEBAIHZvaWQgTWVkaWFDb250
cm9sbGVyOjphc3luY0V2ZW50VGltZXJGaXJlZChUaW1lciYpCiAgICAgICAgIGRpc3BhdGNoRXZl
bnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9OKTsKIH0K
IAotdm9pZCBNZWRpYUNvbnRyb2xsZXI6OmNsZWFyUG9zaXRpb25UaW1lckZpcmVkKFRpbWVyJikK
K3ZvaWQgTWVkaWFDb250cm9sbGVyOjpjbGVhclBvc2l0aW9uVGltZXJGaXJlZCgpCiB7CiAgICAg
bV9wb3NpdGlvbiA9IE1lZGlhUGxheWVyOjppbnZhbGlkVGltZSgpOwogfQpAQCAtNjcyLDcgKzY3
Miw3IEBAIHZvaWQgTWVkaWFDb250cm9sbGVyOjpzdGFydFRpbWV1cGRhdGVUaW1lcigpCiAgICAg
bV90aW1ldXBkYXRlVGltZXIuc3RhcnRSZXBlYXRpbmcobWF4VGltZXVwZGF0ZUV2ZW50RnJlcXVl
bmN5KTsKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xsZXI6OnRpbWV1cGRhdGVUaW1lckZpcmVkKFRp
bWVyJikKK3ZvaWQgTWVkaWFDb250cm9sbGVyOjp0aW1ldXBkYXRlVGltZXJGaXJlZCgpCiB7CiAg
ICAgc2NoZWR1bGVUaW1ldXBkYXRlRXZlbnQoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhQ29u
dHJvbGxlci5oCmluZGV4IDI1NDE5Y2JiODM4NDRiYTQ0NDIxNTM3NGE1NTNmNmZlY2NlNzU4ZTEu
LjFkOWMxYjNlMTAwNTRmZmFmMTE5M2YwYTdkMzZlN2EzNTkwYWZmZjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9NZWRpYUNvbnRyb2xsZXIuaApAQCAtMTIzLDExICsxMjMsMTEgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIHVwZGF0ZU1lZGlhRWxlbWVudHMoKTsKICAgICB2b2lkIGJyaW5nRWxlbWVudFVwVG9T
cGVlZChIVE1MTWVkaWFFbGVtZW50Kik7CiAgICAgdm9pZCBzY2hlZHVsZUV2ZW50KGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnROYW1lKTsKLSAgICB2b2lkIGFzeW5jRXZlbnRUaW1lckZpcmVkKFRp
bWVyJik7Ci0gICAgdm9pZCBjbGVhclBvc2l0aW9uVGltZXJGaXJlZChUaW1lciYpOworICAgIHZv
aWQgYXN5bmNFdmVudFRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIGNsZWFyUG9zaXRpb25UaW1lckZp
cmVkKCk7CiAgICAgYm9vbCBoYXNFbmRlZCgpIGNvbnN0OwogICAgIHZvaWQgc2NoZWR1bGVUaW1l
dXBkYXRlRXZlbnQoKTsKLSAgICB2b2lkIHRpbWV1cGRhdGVUaW1lckZpcmVkKFRpbWVyJik7Cisg
ICAgdm9pZCB0aW1ldXBkYXRlVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRUaW1ldXBkYXRl
VGltZXIoKTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL01lZGlhRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYURvY3Vt
ZW50LmNwcAppbmRleCBkNjU2OWE0M2JhZWNkMzAzNjg3MTIxMWI1ZjllYWE0Mzk1M2U1ZGIzLi5k
MmM3YTVmM2NmYTI3YjhjMzc2YTlmYTk0YWU5ZWEzM2E2NzQ5NDMyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL01lZGlhRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTWVkaWFEb2N1bWVudC5jcHAKQEAgLTE0MCw3ICsxNDAsNyBAQCB2b2lkIE1lZGlhRG9jdW1l
bnRQYXJzZXI6OmFwcGVuZEJ5dGVzKERvY3VtZW50V3JpdGVyJiwgY29uc3QgY2hhciosIHNpemVf
dCkKICAgICAKIE1lZGlhRG9jdW1lbnQ6Ok1lZGlhRG9jdW1lbnQoRnJhbWUqIGZyYW1lLCBjb25z
dCBVUkwmIHVybCkKICAgICA6IEhUTUxEb2N1bWVudChmcmFtZSwgdXJsLCBNZWRpYURvY3VtZW50
Q2xhc3MpCi0gICAgLCBtX3JlcGxhY2VNZWRpYUVsZW1lbnRUaW1lcih0aGlzLCAmTWVkaWFEb2N1
bWVudDo6cmVwbGFjZU1lZGlhRWxlbWVudFRpbWVyRmlyZWQpCisgICAgLCBtX3JlcGxhY2VNZWRp
YUVsZW1lbnRUaW1lcigqdGhpcywgJk1lZGlhRG9jdW1lbnQ6OnJlcGxhY2VNZWRpYUVsZW1lbnRU
aW1lckZpcmVkKQogewogICAgIHNldENvbXBhdGliaWxpdHlNb2RlKERvY3VtZW50Q29tcGF0aWJp
bGl0eU1vZGU6OlF1aXJrc01vZGUpOwogICAgIGxvY2tDb21wYXRpYmlsaXR5TW9kZSgpOwpAQCAt
MjMxLDcgKzIzMSw3IEBAIHZvaWQgTWVkaWFEb2N1bWVudDo6bWVkaWFFbGVtZW50U2F3VW5zdXBw
b3J0ZWRUcmFja3MoKQogICAgIG1fcmVwbGFjZU1lZGlhRWxlbWVudFRpbWVyLnN0YXJ0T25lU2hv
dCgwKTsKIH0KIAotdm9pZCBNZWRpYURvY3VtZW50OjpyZXBsYWNlTWVkaWFFbGVtZW50VGltZXJG
aXJlZChUaW1lciYpCit2b2lkIE1lZGlhRG9jdW1lbnQ6OnJlcGxhY2VNZWRpYUVsZW1lbnRUaW1l
ckZpcmVkKCkKIHsKICAgICBIVE1MRWxlbWVudCogaHRtbEJvZHkgPSBib2R5KCk7CiAgICAgaWYg
KCFodG1sQm9keSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFEb2N1bWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYURvY3VtZW50LmgKaW5kZXggNDNiNWY0NmM2
MmRkMGYxYzlmMzg3MzM2YzQ4ZTM3NmMyYmMyNDE5OS4uOWQ3MWNlMjhkZjlhZWY4ZTUxNzM5ZGE5
M2UxNjBmZjI4NDQ0ZmJjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYURv
Y3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYURvY3VtZW50LmgKQEAgLTUw
LDcgKzUwLDcgQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1YWwgdm9pZCBkZWZhdWx0RXZlbnRIYW5k
bGVyKEV2ZW50Kikgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIHJlcGxhY2VNZWRpYUVsZW1lbnRUaW1l
ckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCByZXBsYWNlTWVkaWFFbGVtZW50VGltZXJGaXJlZCgp
OwogCiAgICAgVGltZXIgbV9yZXBsYWNlTWVkaWFFbGVtZW50VGltZXI7CiAgICAgU3RyaW5nIG1f
b3V0Z29pbmdSZWZlcnJlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvU2VhcmNo
SW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmNwcApp
bmRleCAwYmY5ZGZjMzRhYjVhZmQyNjMwOTgwMzJiOWMwZmRjMTYzMTM3ZDEzLi5mYTY4YjI0MzRj
ZDU4MGYzYTg3MDViZjNjZmY2ODA3NDhiM2M2Mjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1NlYXJjaElucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9TZWFy
Y2hJbnB1dFR5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIFNlYXJjaElucHV0VHlwZTo6U2VhcmNo
SW5wdXRUeXBlKEhUTUxJbnB1dEVsZW1lbnQmIGVsZW1lbnQpCiAgICAgOiBCYXNlVGV4dElucHV0
VHlwZShlbGVtZW50KQogICAgICwgbV9yZXN1bHRzQnV0dG9uKG51bGxwdHIpCiAgICAgLCBtX2Nh
bmNlbEJ1dHRvbihudWxscHRyKQotICAgICwgbV9zZWFyY2hFdmVudFRpbWVyKHRoaXMsICZTZWFy
Y2hJbnB1dFR5cGU6OnNlYXJjaEV2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fc2VhcmNoRXZlbnRU
aW1lcigqdGhpcywgJlNlYXJjaElucHV0VHlwZTo6c2VhcmNoRXZlbnRUaW1lckZpcmVkKQogewog
fQogCkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBTZWFyY2hJbnB1dFR5cGU6OnN0b3BTZWFyY2hF
dmVudFRpbWVyKCkKICAgICBtX3NlYXJjaEV2ZW50VGltZXIuc3RvcCgpOwogfQogCi12b2lkIFNl
YXJjaElucHV0VHlwZTo6c2VhcmNoRXZlbnRUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU2VhcmNo
SW5wdXRUeXBlOjpzZWFyY2hFdmVudFRpbWVyRmlyZWQoKQogewogICAgIGVsZW1lbnQoKS5vblNl
YXJjaCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9TZWFyY2hJbnB1dFR5
cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmgKaW5kZXggODgzYTEy
YjE3NjBiZDZhZTk2Y2E2ODk2YmFiMmUxOWIwNTlkOTIzOC4uMTVkZGY5MjhkMzg0N2Q2MGRjZTMz
ODVmOWJkZDFiMjMyNGNiY2QzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9TZWFy
Y2hJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1NlYXJjaElucHV0VHlwZS5o
CkBAIC02MSw3ICs2MSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIHNpemVTaG91bGRJ
bmNsdWRlRGVjb3JhdGlvbihpbnQgZGVmYXVsdFNpemUsIGludCYgcHJlZmVycmVkU2l6ZSkgY29u
c3Qgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBmbG9hdCBkZWNvcmF0aW9uV2lkdGgoKSBjb25zdCBv
dmVycmlkZTsKIAotICAgIHZvaWQgc2VhcmNoRXZlbnRUaW1lckZpcmVkKFRpbWVyKik7CisgICAg
dm9pZCBzZWFyY2hFdmVudFRpbWVyRmlyZWQoKTsKICAgICBib29sIHNlYXJjaEV2ZW50c1Nob3Vs
ZEJlRGlzcGF0Y2hlZCgpIGNvbnN0OwogICAgIHZvaWQgc3RhcnRTZWFyY2hFdmVudFRpbWVyKCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVmFsaWRhdGlvbk1lc3NhZ2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9WYWxpZGF0aW9uTWVzc2FnZS5jcHAKaW5kZXggYWI5NjE4
ZDlkODk4MjAyYmFhOGI3YTEzMWRjN2NlNWVmYzE3NzA3Ni4uOGZiYzBlODkzZWI5NjQyZmNlZGYz
MDRjOTU2OTVmY2ZkZjUwZjZlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9WYWxp
ZGF0aW9uTWVzc2FnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9WYWxpZGF0aW9uTWVz
c2FnZS5jcHAKQEAgLTEwNywxMyArMTA3LDEzIEBAIHZvaWQgVmFsaWRhdGlvbk1lc3NhZ2U6OnNl
dE1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIEFTU0VSVCghbWVzc2FnZS5pc0Vt
cHR5KCkpOwogICAgIG1fbWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgaWYgKCFtX2J1YmJsZSkKLSAg
ICAgICAgbV90aW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KHRoaXMsICZWYWxpZGF0aW9u
TWVzc2FnZTo6YnVpbGRCdWJibGVUcmVlKTsKKyAgICAgICAgbV90aW1lciA9IHN0ZDo6bWFrZV91
bmlxdWU8VGltZXI+KCp0aGlzLCAmVmFsaWRhdGlvbk1lc3NhZ2U6OmJ1aWxkQnViYmxlVHJlZSk7
CiAgICAgZWxzZQotICAgICAgICBtX3RpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4odGhp
cywgJlZhbGlkYXRpb25NZXNzYWdlOjpzZXRNZXNzYWdlRE9NQW5kU3RhcnRUaW1lcik7CisgICAg
ICAgIG1fdGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlZhbGlkYXRpb25N
ZXNzYWdlOjpzZXRNZXNzYWdlRE9NQW5kU3RhcnRUaW1lcik7CiAgICAgbV90aW1lci0+c3RhcnRP
bmVTaG90KDApOwogfQogCi12b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpzZXRNZXNzYWdlRE9NQW5k
U3RhcnRUaW1lcihUaW1lciopCit2b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpzZXRNZXNzYWdlRE9N
QW5kU3RhcnRUaW1lcigpCiB7CiAgICAgQVNTRVJUKCF2YWxpZGF0aW9uTWVzc2FnZUNsaWVudCgp
KTsKICAgICBBU1NFUlQobV9tZXNzYWdlSGVhZGluZyk7CkBAIC0xMzYsNyArMTM2LDcgQEAgdm9p
ZCBWYWxpZGF0aW9uTWVzc2FnZTo6c2V0TWVzc2FnZURPTUFuZFN0YXJ0VGltZXIoVGltZXIqKQog
ICAgIGlmIChtYWduaWZpY2F0aW9uIDw9IDApCiAgICAgICAgIG1fdGltZXIgPSBudWxscHRyOwog
ICAgIGVsc2UgewotICAgICAgICBtX3RpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4odGhp
cywgJlZhbGlkYXRpb25NZXNzYWdlOjpkZWxldGVCdWJibGVUcmVlKTsKKyAgICAgICAgbV90aW1l
ciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmVmFsaWRhdGlvbk1lc3NhZ2U6OmRl
bGV0ZUJ1YmJsZVRyZWUpOwogICAgICAgICBtX3RpbWVyLT5zdGFydE9uZVNob3Qoc3RkOjptYXgo
NS4wLCBzdGF0aWNfY2FzdDxkb3VibGU+KG1fbWVzc2FnZS5sZW5ndGgoKSkgKiBtYWduaWZpY2F0
aW9uIC8gMTAwMCkpOwogICAgIH0KIH0KQEAgLTE2NSw3ICsxNjUsNyBAQCBzdGF0aWMgdm9pZCBh
ZGp1c3RCdWJibGVQb3NpdGlvbihjb25zdCBMYXlvdXRSZWN0JiBob3N0UmVjdCwgSFRNTEVsZW1l
bnQqIGJ1YmJsZQogICAgIGJ1YmJsZS0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0
eUxlZnQsIGJ1YmJsZVgsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfUFgpOwogfQogCi12b2lkIFZh
bGlkYXRpb25NZXNzYWdlOjpidWlsZEJ1YmJsZVRyZWUoVGltZXIqKQordm9pZCBWYWxpZGF0aW9u
TWVzc2FnZTo6YnVpbGRCdWJibGVUcmVlKCkKIHsKICAgICBBU1NFUlQoIXZhbGlkYXRpb25NZXNz
YWdlQ2xpZW50KCkpOwogICAgIFNoYWRvd1Jvb3QmIHNoYWRvd1Jvb3QgPSBtX2VsZW1lbnQtPmVu
c3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsKQEAgLTIxNiw3ICsyMTYsNyBAQCB2b2lkIFZhbGlk
YXRpb25NZXNzYWdlOjpyZXF1ZXN0VG9IaWRlTWVzc2FnZSgpCiAgICAgfQogCiAgICAgLy8gV2Ug
bXVzdCBub3QgbW9kaWZ5IHRoZSBET00gdHJlZSBpbiB0aGlzIGNvbnRleHQgYnkgdGhlIHNhbWUg
cmVhc29uIGFzIHNldE1lc3NhZ2UoKS4KLSAgICBtX3RpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxU
aW1lcj4odGhpcywgJlZhbGlkYXRpb25NZXNzYWdlOjpkZWxldGVCdWJibGVUcmVlKTsKKyAgICBt
X3RpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZWYWxpZGF0aW9uTWVzc2Fn
ZTo6ZGVsZXRlQnViYmxlVHJlZSk7CiAgICAgbV90aW1lci0+c3RhcnRPbmVTaG90KDApOwogfQog
CkBAIC0yMjcsNyArMjI3LDcgQEAgYm9vbCBWYWxpZGF0aW9uTWVzc2FnZTo6c2hhZG93VHJlZUNv
bnRhaW5zKGNvbnN0IE5vZGUmIG5vZGUpIGNvbnN0CiAgICAgcmV0dXJuICZtX2J1YmJsZS0+dHJl
ZVNjb3BlKCkgPT0gJm5vZGUudHJlZVNjb3BlKCk7CiB9CiAKLXZvaWQgVmFsaWRhdGlvbk1lc3Nh
Z2U6OmRlbGV0ZUJ1YmJsZVRyZWUoVGltZXIqKQordm9pZCBWYWxpZGF0aW9uTWVzc2FnZTo6ZGVs
ZXRlQnViYmxlVHJlZSgpCiB7CiAgICAgQVNTRVJUKCF2YWxpZGF0aW9uTWVzc2FnZUNsaWVudCgp
KTsKICAgICBpZiAobV9idWJibGUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
VmFsaWRhdGlvbk1lc3NhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVmFsaWRhdGlvbk1lc3Nh
Z2UuaAppbmRleCA5ZDYxODU3YzdmNDY5Y2ViM2ZlYTJkZGMwZDg1ODU4NDQ4NzlhZjkyLi4yODIw
YjJmOWNjM2NmNGYxMjllNTcyZWZhMTViMWUzNTRkOGEwOTQ2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1ZhbGlkYXRpb25NZXNzYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9WYWxpZGF0aW9uTWVzc2FnZS5oCkBAIC02MCw5ICs2MCw5IEBAIHB1YmxpYzoKIHByaXZhdGU6
CiAgICAgVmFsaWRhdGlvbk1lc3NhZ2VDbGllbnQqIHZhbGlkYXRpb25NZXNzYWdlQ2xpZW50KCkg
Y29uc3Q7CiAgICAgdm9pZCBzZXRNZXNzYWdlKGNvbnN0IFN0cmluZyYpOwotICAgIHZvaWQgc2V0
TWVzc2FnZURPTUFuZFN0YXJ0VGltZXIoVGltZXIqID0gMCk7Ci0gICAgdm9pZCBidWlsZEJ1YmJs
ZVRyZWUoVGltZXIqKTsKLSAgICB2b2lkIGRlbGV0ZUJ1YmJsZVRyZWUoVGltZXIqID0gMCk7Cisg
ICAgdm9pZCBzZXRNZXNzYWdlRE9NQW5kU3RhcnRUaW1lcigpOworICAgIHZvaWQgYnVpbGRCdWJi
bGVUcmVlKCk7CisgICAgdm9pZCBkZWxldGVCdWJibGVUcmVlKCk7CiAKICAgICBIVE1MRm9ybUNv
bnRyb2xFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgU3RyaW5nIG1fbWVzc2FnZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwCmlu
ZGV4IDBiZTFkNDAyNzFmNWUxZjQxODA2YzA2NDEyZDc0Yjc4NDgxMzY3ZDkuLmU5NWJkNmE5Zjk1
YWUwZTBmYjdhZTBmZjk2NjJkMzJkNTcxY2NkY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcApAQCAtNDY3LDkgKzQ2Nyw5
IEBAIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6V2ViR0xSZW5kZXJpbmdDb250ZXh0KEhUTUxDYW52
YXNFbGVtZW50KiBwYXNzZWRDYW52YXMsIEdyCiAgICAgLCBBY3RpdmVET01PYmplY3QoJnBhc3Nl
ZENhbnZhcy0+ZG9jdW1lbnQoKSkKICAgICAsIG1fY29udGV4dCgwKQogICAgICwgbV9kcmF3aW5n
QnVmZmVyKDApCi0gICAgLCBtX2Rpc3BhdGNoQ29udGV4dExvc3RFdmVudFRpbWVyKHRoaXMsICZX
ZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmRpc3BhdGNoQ29udGV4dExvc3RFdmVudCkKKyAgICAsIG1f
ZGlzcGF0Y2hDb250ZXh0TG9zdEV2ZW50VGltZXIoKnRoaXMsICZXZWJHTFJlbmRlcmluZ0NvbnRl
eHQ6OmRpc3BhdGNoQ29udGV4dExvc3RFdmVudCkKICAgICAsIG1fcmVzdG9yZUFsbG93ZWQoZmFs
c2UpCi0gICAgLCBtX3Jlc3RvcmVUaW1lcih0aGlzLCAmV2ViR0xSZW5kZXJpbmdDb250ZXh0Ojpt
YXliZVJlc3RvcmVDb250ZXh0KQorICAgICwgbV9yZXN0b3JlVGltZXIoKnRoaXMsICZXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6Om1heWJlUmVzdG9yZUNvbnRleHQpCiAgICAgLCBtX2dlbmVyYXRlZElt
YWdlQ2FjaGUoMCkKICAgICAsIG1fY29udGV4dExvc3QoZmFsc2UpCiAgICAgLCBtX2NvbnRleHRM
b3N0TW9kZShTeW50aGV0aWNMb3N0Q29udGV4dCkKQEAgLTQ4Nyw5ICs0ODcsOSBAQCBXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4dChIVE1MQ2FudmFzRWxlbWVudCog
cGFzc2VkQ2FudmFzLCBQYQogICAgICwgQWN0aXZlRE9NT2JqZWN0KCZwYXNzZWRDYW52YXMtPmRv
Y3VtZW50KCkpCiAgICAgLCBtX2NvbnRleHQoY29udGV4dCkKICAgICAsIG1fZHJhd2luZ0J1ZmZl
cigwKQotICAgICwgbV9kaXNwYXRjaENvbnRleHRMb3N0RXZlbnRUaW1lcih0aGlzLCAmV2ViR0xS
ZW5kZXJpbmdDb250ZXh0OjpkaXNwYXRjaENvbnRleHRMb3N0RXZlbnQpCisgICAgLCBtX2Rpc3Bh
dGNoQ29udGV4dExvc3RFdmVudFRpbWVyKCp0aGlzLCAmV2ViR0xSZW5kZXJpbmdDb250ZXh0Ojpk
aXNwYXRjaENvbnRleHRMb3N0RXZlbnQpCiAgICAgLCBtX3Jlc3RvcmVBbGxvd2VkKGZhbHNlKQot
ICAgICwgbV9yZXN0b3JlVGltZXIodGhpcywgJldlYkdMUmVuZGVyaW5nQ29udGV4dDo6bWF5YmVS
ZXN0b3JlQ29udGV4dCkKKyAgICAsIG1fcmVzdG9yZVRpbWVyKCp0aGlzLCAmV2ViR0xSZW5kZXJp
bmdDb250ZXh0OjptYXliZVJlc3RvcmVDb250ZXh0KQogICAgICwgbV9nZW5lcmF0ZWRJbWFnZUNh
Y2hlKDQpCiAgICAgLCBtX2NvbnRleHRMb3N0KGZhbHNlKQogICAgICwgbV9jb250ZXh0TG9zdE1v
ZGUoU3ludGhldGljTG9zdENvbnRleHQpCkBAIC01OTIzLDcgKzU5MjMsNyBAQCB2b2lkIFdlYkdM
UmVuZGVyaW5nQ29udGV4dDo6cmVzdG9yZVN0YXRlc0FmdGVyVmVydGV4QXR0cmliMFNpbXVsYXRp
b24oKQogICAgIG1fY29udGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6QVJSQVlf
QlVGRkVSLCBvYmplY3RPclplcm8obV9ib3VuZEFycmF5QnVmZmVyLmdldCgpKSk7CiB9CiAKLXZv
aWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpkaXNwYXRjaENvbnRleHRMb3N0RXZlbnQoVGltZXIq
KQordm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmRpc3BhdGNoQ29udGV4dExvc3RFdmVudCgp
CiB7CiAgICAgUmVmUHRyPFdlYkdMQ29udGV4dEV2ZW50PiBldmVudCA9IFdlYkdMQ29udGV4dEV2
ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLndlYmdsY29udGV4dGxvc3RFdmVudCwgZmFsc2UsIHRy
dWUsICIiKTsKICAgICBjYW52YXMoKS0+ZGlzcGF0Y2hFdmVudChldmVudCk7CkBAIC01OTMyLDcg
KzU5MzIsNyBAQCB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6ZGlzcGF0Y2hDb250ZXh0TG9z
dEV2ZW50KFRpbWVyKikKICAgICAgICAgbV9yZXN0b3JlVGltZXIuc3RhcnRPbmVTaG90KDApOwog
fQogCi12b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6bWF5YmVSZXN0b3JlQ29udGV4dChUaW1l
ciopCit2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6bWF5YmVSZXN0b3JlQ29udGV4dCgpCiB7
CiAgICAgQVNTRVJUKG1fY29udGV4dExvc3QpOwogICAgIGlmICghbV9jb250ZXh0TG9zdCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4
dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmgK
aW5kZXggMzQ4YmVmYjQ0ZTMxMTRkYTZlNWI0MGUwOTUzMjY1ZjMxMWEzZWY3MC4uZmFmNTg0Njgw
NjNkZTJkYmY4MGRlZTRkY2EyYjdkZjNiOGY4Y2FiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmgKQEAgLTc2MSw5ICs3NjEsOSBA
QCBwcml2YXRlOgogICAgIGJvb2wgc2ltdWxhdGVWZXJ0ZXhBdHRyaWIwKEdDM0RzaXplaSBudW1W
ZXJ0ZXgpOwogICAgIHZvaWQgcmVzdG9yZVN0YXRlc0FmdGVyVmVydGV4QXR0cmliMFNpbXVsYXRp
b24oKTsKIAotICAgIHZvaWQgZGlzcGF0Y2hDb250ZXh0TG9zdEV2ZW50KFRpbWVyKik7CisgICAg
dm9pZCBkaXNwYXRjaENvbnRleHRMb3N0RXZlbnQoKTsKICAgICAvLyBIZWxwZXIgZm9yIHJlc3Rv
cmF0aW9uIGFmdGVyIGNvbnRleHQgbG9zdC4KLSAgICB2b2lkIG1heWJlUmVzdG9yZUNvbnRleHQo
VGltZXIqKTsKKyAgICB2b2lkIG1heWJlUmVzdG9yZUNvbnRleHQoKTsKIAogICAgIC8vIERldGVy
bWluZSBpZiB3ZSBhcmUgcnVubmluZyBwcml2aWxlZ2VkIGNvZGUgaW4gdGhlIGJyb3dzZXIsIGZv
ciBleGFtcGxlLAogICAgIC8vIGEgU2FmYXJpIG9yIENocm9tZSBleHRlbnNpb24uCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUGFyc2VyU2NoZWR1bGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVsZXIuY3BwCmluZGV4
IDgyNzgxMTAwOTA1Y2EwNDE0NTRhMjliOGFhODJkMDhjNWE0MGQwNWQuLjBlNDJmZGVmMGIyNmMz
MWI1MjE2NDY0NWM5ZDk5MWVhZWI0ODA1NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVsZXIuY3BwCkBAIC04OCw3ICs4OCw3IEBAIEhUTUxQ
YXJzZXJTY2hlZHVsZXI6OkhUTUxQYXJzZXJTY2hlZHVsZXIoSFRNTERvY3VtZW50UGFyc2VyJiBw
YXJzZXIpCiAgICAgOiBtX3BhcnNlcihwYXJzZXIpCiAgICAgLCBtX3BhcnNlclRpbWVMaW1pdChw
YXJzZXJUaW1lTGltaXQobV9wYXJzZXIuZG9jdW1lbnQoKS0+cGFnZSgpKSkKICAgICAsIG1fcGFy
c2VyQ2h1bmtTaXplKGRlZmF1bHRQYXJzZXJDaHVua1NpemUpCi0gICAgLCBtX2NvbnRpbnVlTmV4
dENodW5rVGltZXIodGhpcywgJkhUTUxQYXJzZXJTY2hlZHVsZXI6OmNvbnRpbnVlTmV4dENodW5r
VGltZXJGaXJlZCkKKyAgICAsIG1fY29udGludWVOZXh0Q2h1bmtUaW1lcigqdGhpcywgJkhUTUxQ
YXJzZXJTY2hlZHVsZXI6OmNvbnRpbnVlTmV4dENodW5rVGltZXJGaXJlZCkKICAgICAsIG1faXNT
dXNwZW5kZWRXaXRoQWN0aXZlVGltZXIoZmFsc2UpCiAjaWYgIUFTU0VSVF9ESVNBQkxFRAogICAg
ICwgbV9zdXNwZW5kZWQoZmFsc2UpCkBAIC0xMDEsMTAgKzEwMSw5IEBAIEhUTUxQYXJzZXJTY2hl
ZHVsZXI6On5IVE1MUGFyc2VyU2NoZWR1bGVyKCkKICAgICBtX2NvbnRpbnVlTmV4dENodW5rVGlt
ZXIuc3RvcCgpOwogfQogCi12b2lkIEhUTUxQYXJzZXJTY2hlZHVsZXI6OmNvbnRpbnVlTmV4dENo
dW5rVGltZXJGaXJlZChUaW1lciYgdGltZXIpCit2b2lkIEhUTUxQYXJzZXJTY2hlZHVsZXI6OmNv
bnRpbnVlTmV4dENodW5rVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKCFtX3N1c3BlbmRlZCk7
Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2NvbnRpbnVlTmV4dENodW5r
VGltZXIpOwogCiAgICAgLy8gRklYTUU6IFRoZSB0aW1lciBjbGFzcyBzaG91bGQgaGFuZGxlIHRp
bWVyIHByaW9yaXRpZXMgaW5zdGVhZCBvZiB0aGlzIGNvZGUuCiAgICAgLy8gSWYgYSBsYXlvdXQg
aXMgc2NoZWR1bGVkLCB3YWl0IGFnYWluIHRvIGxldCB0aGUgbGF5b3V0IHRpbWVyIHJ1biBmaXJz
dC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hl
ZHVsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVsZXIu
aAppbmRleCBhYjdlMmVkODFkMWQ5MGQ3MjBlNzdhNTM0ZjFkOGIzYjIwYjY3ZjZkLi44YmZkY2Mw
Y2FmNjRhNTFmODkwNTE0ZTU5OTBiNmI5ZTAxY2ZkYTZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9IVE1MUGFyc2VyU2NoZWR1bGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlclNjaGVkdWxlci5oCkBAIC05Nyw3ICs5Nyw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIHJlc3VtZSgpOwogCiBwcml2YXRlOgotICAgIHZvaWQgY29udGludWVO
ZXh0Q2h1bmtUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBjb250aW51ZU5leHRDaHVua1Rp
bWVyRmlyZWQoKTsKIAogICAgIEhUTUxEb2N1bWVudFBhcnNlciYgbV9wYXJzZXI7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcApp
bmRleCBmYzM1ODMyMzU5YmQ5YjhjNjFmODRlN2QxMmM0ZTAwNzkzNmYwZDRjLi5jMDM0MTQxYjAy
OGI1YWQxZmY5NDFlZjFiYTAwNTUwNWNlYjY5MmYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCkBAIC03NCw3ICs3NCw3IEBA
IE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6TWVkaWFDb250cm9sUGFuZWxFbGVtZW50KERvY3Vt
ZW50JiBkb2N1bWVudCkKICAgICAsIG1faXNCZWluZ0RyYWdnZWQoZmFsc2UpCiAgICAgLCBtX2lz
RGlzcGxheWVkKGZhbHNlKQogICAgICwgbV9vcGFxdWUodHJ1ZSkKLSAgICAsIG1fdHJhbnNpdGlv
blRpbWVyKHRoaXMsICZNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6OnRyYW5zaXRpb25UaW1lckZp
cmVkKQorICAgICwgbV90cmFuc2l0aW9uVGltZXIoKnRoaXMsICZNZWRpYUNvbnRyb2xQYW5lbEVs
ZW1lbnQ6OnRyYW5zaXRpb25UaW1lckZpcmVkKQogewogICAgIHNldFBzZXVkbyhBdG9taWNTdHJp
bmcoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVj
dEZyb21MaXRlcmFsKSk7CiB9CkBAIC0xNDksNyArMTQ5LDcgQEAgdm9pZCBNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQ6OnN0b3BUaW1lcigpCiAgICAgICAgIG1fdHJhbnNpdGlvblRpbWVyLnN0b3Ao
KTsKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6OnRyYW5zaXRpb25UaW1lckZp
cmVkKFRpbWVyJikKK3ZvaWQgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50Ojp0cmFuc2l0aW9uVGlt
ZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX29wYXF1ZSkKICAgICAgICAgaGlkZSgpOwpAQCAtMTA3
Myw3ICsxMDczLDcgQEAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgZ2V0TWVkaWFDb250cm9s
Q3VycmVudFRpbWVEaXNwbGF5RWxlbWVudFNoYWRvd1BzZXVkb0kKIAogTWVkaWFDb250cm9sVGV4
dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxl
bWVudChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xEaXZFbGVtZW50KGRv
Y3VtZW50LCBNZWRpYVRleHRUcmFja0Rpc3BsYXlDb250YWluZXIpCi0gICAgLCBtX3VwZGF0ZVRp
bWVyKHRoaXMsICZNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50Ojp1cGRhdGVU
aW1lckZpcmVkKQorICAgICwgbV91cGRhdGVUaW1lcigqdGhpcywgJk1lZGlhQ29udHJvbFRleHRU
cmFja0NvbnRhaW5lckVsZW1lbnQ6OnVwZGF0ZVRpbWVyRmlyZWQpCiAgICAgLCBtX2ZvbnRTaXpl
KDApCiAgICAgLCBtX2ZvbnRTaXplSXNJbXBvcnRhbnQoZmFsc2UpCiAgICAgLCBtX3VwZGF0ZVRl
eHRUcmFja1JlcHJlc2VudGF0aW9uU3R5bGUoZmFsc2UpCkBAIC0xMjQzLDcgKzEyNDMsNyBAQCB2
b2lkIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVwZGF0ZUFjdGl2ZUN1
ZXNGb250U2l6ZSgpCiAKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJF
bGVtZW50Ojp1cGRhdGVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTWVkaWFDb250cm9sVGV4dFRy
YWNrQ29udGFpbmVyRWxlbWVudDo6dXBkYXRlVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFkb2N1
bWVudCgpLnBhZ2UoKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKaW5kZXggY2NiNDk5NjgzYmZjNzU0OWE1
NjUwY2NhZTE1ZjI0M2M5YjY2YTNiZC4uZTQ1MmMzMjVjZDJjNjk0OWViNGQyODMyMmNjYzA2YTJi
MmMyMTYyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250
cm9sRWxlbWVudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5oCkBAIC02NSw3ICs2NSw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHN0YXJ0
VGltZXIoKTsKICAgICB2b2lkIHN0b3BUaW1lcigpOwotICAgIHZvaWQgdHJhbnNpdGlvblRpbWVy
RmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRyYW5zaXRpb25UaW1lckZpcmVkKCk7CiAKICAgICB2
b2lkIHNldFBvc2l0aW9uKGNvbnN0IExheW91dFBvaW50Jik7CiAKQEAgLTQ1MSw3ICs0NTEsNyBA
QCBwdWJsaWM6CiAgICAgdm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CiAKIHByaXZhdGU6Ci0gICAg
dm9pZCB1cGRhdGVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB1cGRhdGVUaW1lckZpcmVk
KCk7CiAgICAgdm9pZCB1cGRhdGVBY3RpdmVDdWVzRm9udFNpemUoKTsKIAogICAgIGV4cGxpY2l0
IE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQoRG9jdW1lbnQmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHAKaW5kZXggNzg3MjIwZmVl
MGJjZmY3MTA4N2EyYjNhYzBkNTU0M2MxODI4MTVjNS4uM2RkNmRlODZkYTFmY2NkMWZlMWEwNjA4
NTNkNDcxMjNhNGE3MGQ5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9scy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9scy5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgTWVkaWFDb250cm9sczo6TWVkaWFDb250cm9s
cyhEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgLCBtX3ZvbHVtZVNsaWRlcigwKQogICAgICwgbV90
b2dnbGVDbG9zZWRDYXB0aW9uc0J1dHRvbigwKQogICAgICwgbV9mdWxsU2NyZWVuQnV0dG9uKDAp
Ci0gICAgLCBtX2hpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcih0aGlzLCAmTWVkaWFDb250cm9s
czo6aGlkZUZ1bGxzY3JlZW5Db250cm9sc1RpbWVyRmlyZWQpCisgICAgLCBtX2hpZGVGdWxsc2Ny
ZWVuQ29udHJvbHNUaW1lcigqdGhpcywgJk1lZGlhQ29udHJvbHM6OmhpZGVGdWxsc2NyZWVuQ29u
dHJvbHNUaW1lckZpcmVkKQogICAgICwgbV9pc0Z1bGxzY3JlZW4oZmFsc2UpCiAgICAgLCBtX2lz
TW91c2VPdmVyQ29udHJvbHMoZmFsc2UpCiB7CkBAIC0zMzAsNyArMzMwLDcgQEAgdm9pZCBNZWRp
YUNvbnRyb2xzOjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkKICAgICB9CiB9CiAK
LXZvaWQgTWVkaWFDb250cm9sczo6aGlkZUZ1bGxzY3JlZW5Db250cm9sc1RpbWVyRmlyZWQoVGlt
ZXImKQordm9pZCBNZWRpYUNvbnRyb2xzOjpoaWRlRnVsbHNjcmVlbkNvbnRyb2xzVGltZXJGaXJl
ZCgpCiB7CiAgICAgaWYgKG1fbWVkaWFDb250cm9sbGVyLT5wYXVzZWQoKSkKICAgICAgICAgcmV0
dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
cy5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5oCmluZGV4IGE2
NDRjOGVhOTI3YTM3MTM5MDYyNDM2ZTEzZjM5NGM0NTkwYjE2OWIuLjQxYWVlNTM4N2I5OTc4OGY2
NDgxZDlkMzJjYTNkZGUxYjY1ZjMwODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L01lZGlhQ29udHJvbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9N
ZWRpYUNvbnRyb2xzLmgKQEAgLTk3LDcgKzk3LDcgQEAgY2xhc3MgTWVkaWFDb250cm9scyA6IHB1
YmxpYyBIVE1MRGl2RWxlbWVudCB7CiAgICAgdmlydHVhbCBib29sIHdpbGxSZXNwb25kVG9Nb3Vz
ZU1vdmVFdmVudHMoKSBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9CiAjZW5kaWYKIAotICAgIHZp
cnR1YWwgdm9pZCBoaWRlRnVsbHNjcmVlbkNvbnRyb2xzVGltZXJGaXJlZChUaW1lciYpOworICAg
IHZpcnR1YWwgdm9pZCBoaWRlRnVsbHNjcmVlbkNvbnRyb2xzVGltZXJGaXJlZCgpOwogICAgIHZp
cnR1YWwgdm9pZCBzdGFydEhpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcigpOwogICAgIHZpcnR1
YWwgdm9pZCBzdG9wSGlkZUZ1bGxzY3JlZW5Db250cm9sc1RpbWVyKCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmNwcAppbmRleCA5ODM2OTY1
ZjcxZDQ1ZTgxNDJmNTEwNmMwNjUyYjdjMjUyNTkzNGMzLi5jZjUwNmE4OTdjNTc4ODE3MDU4OGMy
ZDY0NDc3MGI3M2YzNTA1NTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9TcGluQnV0dG9uRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
U3BpbkJ1dHRvbkVsZW1lbnQuY3BwCkBAIC00OSw3ICs0OSw3IEBAIGlubGluZSBTcGluQnV0dG9u
RWxlbWVudDo6U3BpbkJ1dHRvbkVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBTcGluQnV0dG9u
T3duZXImCiAgICAgLCBtX2NhcHR1cmluZyhmYWxzZSkKICAgICAsIG1fdXBEb3duU3RhdGUoSW5k
ZXRlcm1pbmF0ZSkKICAgICAsIG1fcHJlc3NTdGFydGluZ1N0YXRlKEluZGV0ZXJtaW5hdGUpCi0g
ICAgLCBtX3JlcGVhdGluZ1RpbWVyKHRoaXMsICZTcGluQnV0dG9uRWxlbWVudDo6cmVwZWF0aW5n
VGltZXJGaXJlZCkKKyAgICAsIG1fcmVwZWF0aW5nVGltZXIoKnRoaXMsICZTcGluQnV0dG9uRWxl
bWVudDo6cmVwZWF0aW5nVGltZXJGaXJlZCkKIHsKICAgICBzZXRIYXNDdXN0b21TdHlsZVJlc29s
dmVDYWxsYmFja3MoKTsKICAgICBzZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LWlubmVy
LXNwaW4tYnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwpAQCAt
MjMwLDcgKzIzMCw3IEBAIHZvaWQgU3BpbkJ1dHRvbkVsZW1lbnQ6OnN0ZXAoaW50IGFtb3VudCkK
ICAgICBkb1N0ZXBBY3Rpb24oYW1vdW50KTsKIH0KICAgICAKLXZvaWQgU3BpbkJ1dHRvbkVsZW1l
bnQ6OnJlcGVhdGluZ1RpbWVyRmlyZWQoVGltZXIqKQordm9pZCBTcGluQnV0dG9uRWxlbWVudDo6
cmVwZWF0aW5nVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fdXBEb3duU3RhdGUgIT0gSW5kZXRl
cm1pbmF0ZSkKICAgICAgICAgc3RlcChtX3VwRG93blN0YXRlID09IFVwID8gMSA6IC0xKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oCmluZGV4IDE4
Y2ZhMmQ1ZWNiNDBiNjZlMWRjYjJiY2EzYTZiYWMxZjE4MjgzNDMuLmFlMWVmMWVjMDkwMTBiMTE3
NTczYTE3MWUxMzIyNjMxODYxNzk2MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvU3BpbkJ1dHRvbkVsZW1lbnQuaApAQCAtNzgsNyArNzgsNyBAQCBwcml2YXRlOgogICAgIHZv
aWQgZG9TdGVwQWN0aW9uKGludCk7CiAgICAgdm9pZCBzdGFydFJlcGVhdGluZ1RpbWVyKCk7CiAg
ICAgdm9pZCBzdG9wUmVwZWF0aW5nVGltZXIoKTsKLSAgICB2b2lkIHJlcGVhdGluZ1RpbWVyRmly
ZWQoVGltZXIqKTsKKyAgICB2b2lkIHJlcGVhdGluZ1RpbWVyRmlyZWQoKTsKICAgICB2aXJ0dWFs
IHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzaG91bGRS
ZXNwb25kVG9Nb3VzZUV2ZW50cygpOwogICAgIHZpcnR1YWwgYm9vbCBpc01vdXNlRm9jdXNhYmxl
KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svTG9hZGFibGVUZXh0VHJhY2suY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9Mb2FkYWJsZVRleHRUcmFjay5jcHAKaW5kZXggYmRjNGRmYTBkMWVmNzVmZTZh
MDUwOWMzMjhmYzU0ODhiM2MxODlmZi4uNWZmMTJiNzZmZWU0ZTk1NmI0NjJhMDgxNzk2OTVkODgy
MjZjMmVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9Mb2FkYWJsZVRl
eHRUcmFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9Mb2FkYWJsZVRleHRU
cmFjay5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogTG9hZGFibGVU
ZXh0VHJhY2s6OkxvYWRhYmxlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrLCBjb25z
dCBTdHJpbmcmIGtpbmQsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IFN0cmluZyYgbGFuZ3Vh
Z2UpCiAgICAgOiBUZXh0VHJhY2soJnRyYWNrLT5kb2N1bWVudCgpLCB0cmFjaywga2luZCwgZW1w
dHlTdHJpbmcoKSwgbGFiZWwsIGxhbmd1YWdlLCBUcmFja0VsZW1lbnQpCiAgICAgLCBtX3RyYWNr
RWxlbWVudCh0cmFjaykKLSAgICAsIG1fbG9hZFRpbWVyKHRoaXMsICZMb2FkYWJsZVRleHRUcmFj
azo6bG9hZFRpbWVyRmlyZWQpCisgICAgLCBtX2xvYWRUaW1lcigqdGhpcywgJkxvYWRhYmxlVGV4
dFRyYWNrOjpsb2FkVGltZXJGaXJlZCkKICAgICAsIG1faXNEZWZhdWx0KGZhbHNlKQogewogfQpA
QCAtODUsNyArODUsNyBAQCB2b2lkIExvYWRhYmxlVGV4dFRyYWNrOjpzZXRUcmFja0VsZW1lbnQo
SFRNTFRyYWNrRWxlbWVudCogZWxlbWVudCkKICAgICBtX3RyYWNrRWxlbWVudCA9IGVsZW1lbnQ7
CiB9CiAKLXZvaWQgTG9hZGFibGVUZXh0VHJhY2s6OmxvYWRUaW1lckZpcmVkKFRpbWVyJikKK3Zv
aWQgTG9hZGFibGVUZXh0VHJhY2s6OmxvYWRUaW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9sb2Fk
ZXIpCiAgICAgICAgIG1fbG9hZGVyLT5jYW5jZWxMb2FkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmgKaW5kZXggYWFkMmEwODI2ZmVhNmIwNDM0YmY5
ZjY1ZWE4NDYzNjExMTJkMGJlYy4uMTdjNjdkZmMzYWZiOTM1NTJkYjNhZDI2NzY1N2Q2ZTZlZTQ3
NWFjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9Mb2FkYWJsZVRleHRU
cmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svTG9hZGFibGVUZXh0VHJhY2su
aApAQCAtNzAsNyArNzAsNyBAQCBwcml2YXRlOgogCiAgICAgTG9hZGFibGVUZXh0VHJhY2soSFRN
TFRyYWNrRWxlbWVudCosIGNvbnN0IFN0cmluZyYga2luZCwgY29uc3QgU3RyaW5nJiBsYWJlbCwg
Y29uc3QgU3RyaW5nJiBsYW5ndWFnZSk7CiAKLSAgICB2b2lkIGxvYWRUaW1lckZpcmVkKFRpbWVy
Jik7CisgICAgdm9pZCBsb2FkVGltZXJGaXJlZCgpOwogCiAgICAgSFRNTFRyYWNrRWxlbWVudCog
bV90cmFja0VsZW1lbnQ7CiAgICAgVGltZXIgbV9sb2FkVGltZXI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJlZ2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1ZUVFJlZ2lvbi5jcHAKaW5kZXggMzhhMWM2YWUxYWQyM2YwYWExNGQ3NzczZDk5Y2Yy
NWQ2ZDI2NDA4OS4uN2EwNDlmYzc3MzBkYjkxODYwYTg0Nzg2YzBjYzI1MDEzNGIzZmMyOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WVFRSZWdpb24uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUUmVnaW9uLmNwcApAQCAtODMsNyArODMsNyBAQCBW
VFRSZWdpb246OlZUVFJlZ2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAg
ICwgbV9yZWdpb25EaXNwbGF5VHJlZShudWxscHRyKQogICAgICwgbV90cmFjayhudWxscHRyKQog
ICAgICwgbV9jdXJyZW50VG9wKDApCi0gICAgLCBtX3Njcm9sbFRpbWVyKHRoaXMsICZWVFRSZWdp
b246OnNjcm9sbFRpbWVyRmlyZWQpCisgICAgLCBtX3Njcm9sbFRpbWVyKCp0aGlzLCAmVlRUUmVn
aW9uOjpzY3JvbGxUaW1lckZpcmVkKQogewogfQogCkBAIC00NzgsNyArNDc4LDcgQEAgdm9pZCBW
VFRSZWdpb246OnN0b3BUaW1lcigpCiAgICAgICAgIG1fc2Nyb2xsVGltZXIuc3RvcCgpOwogfQog
Ci12b2lkIFZUVFJlZ2lvbjo6c2Nyb2xsVGltZXJGaXJlZChUaW1lciopCit2b2lkIFZUVFJlZ2lv
bjo6c2Nyb2xsVGltZXJGaXJlZCgpCiB7CiAgICAgTE9HKE1lZGlhLCAiVlRUUmVnaW9uOjpzY3Jv
bGxUaW1lckZpcmVkIik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VlRUUmVnaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJlZ2lvbi5oCmluZGV4
IDA0MTMzODUxZDZjODliY2QyNjcxNTg1ZDQzYTRjY2Q1OWFkZWFlNDAuLmVhNThiODQyYWZkNDBl
Y2Q4NTc0MTU0NGUzMzRkMjM5ZDIxMzgxMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVlRUUmVnaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WVFRS
ZWdpb24uaApAQCAtMTA1LDcgKzEwNSw3IEBAIHByaXZhdGU6CiAgICAgLy8gVGhlIHRpbWVyIGlz
IG5lZWRlZCB0byBjb250aW51ZSBwcm9jZXNzaW5nIHdoZW4gY3VlIHNjcm9sbGluZyBlbmRlZC4K
ICAgICB2b2lkIHN0YXJ0VGltZXIoKTsKICAgICB2b2lkIHN0b3BUaW1lcigpOwotICAgIHZvaWQg
c2Nyb2xsVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgc2Nyb2xsVGltZXJGaXJlZCgpOwog
CiAgICAgZW51bSBSZWdpb25TZXR0aW5nIHsKICAgICAgICAgTm9uZSwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCmluZGV4IDQxNTMxNjQ4NDE0YTEz
MTIxZjk3MWEyMjViM2MwZmVmYWM4MjM4MjguLmY4MTRiZTQ0ZjllMTcxMjgxZWUzY2M3ZmQ4NDg5
ODBkODFhOGIwOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JDU1NBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNT
U0FnZW50LmNwcApAQCAtMTEwLDcgKzExMCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNjaGVkdWxl
Rm9yKFdlYktpdE5hbWVkRmxvdyosIGludCBkb2N1bWVudE5vZGVJZCk7CiAgICAgdm9pZCB1bnNj
aGVkdWxlKFdlYktpdE5hbWVkRmxvdyopOwogICAgIHZvaWQgcmVzZXQoKTsKLSAgICB2b2lkIHRp
bWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsKIAogcHJpdmF0ZToKICAg
ICBJbnNwZWN0b3JDU1NBZ2VudCogbV9jc3NBZ2VudDsKQEAgLTEyMCw3ICsxMjAsNyBAQCBwcml2
YXRlOgogCiBDaGFuZ2VSZWdpb25PdmVyc2V0VGFzazo6Q2hhbmdlUmVnaW9uT3ZlcnNldFRhc2so
SW5zcGVjdG9yQ1NTQWdlbnQqIGNzc0FnZW50KQogICAgIDogbV9jc3NBZ2VudChjc3NBZ2VudCkK
LSAgICAsIG1fdGltZXIodGhpcywgJkNoYW5nZVJlZ2lvbk92ZXJzZXRUYXNrOjp0aW1lckZpcmVk
KQorICAgICwgbV90aW1lcigqdGhpcywgJkNoYW5nZVJlZ2lvbk92ZXJzZXRUYXNrOjp0aW1lckZp
cmVkKQogewogfQogCkBAIC0xNDMsNyArMTQzLDcgQEAgdm9pZCBDaGFuZ2VSZWdpb25PdmVyc2V0
VGFzazo6cmVzZXQoKQogICAgIG1fbmFtZWRGbG93cy5jbGVhcigpOwogfQogCi12b2lkIENoYW5n
ZVJlZ2lvbk92ZXJzZXRUYXNrOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgQ2hhbmdlUmVnaW9u
T3ZlcnNldFRhc2s6OnRpbWVyRmlyZWQoKQogewogICAgIC8vIFRoZSB0aW1lciBpcyBzdG9wcGVk
IG9uIG1fY3NzQWdlbnQgZGVzdHJ1Y3Rpb24sIHNvIHRoaXMgbWV0aG9kIHdpbGwgbmV2ZXIgYmUg
Y2FsbGVkIGFmdGVyIG1fY3NzQWdlbnQgaGFzIGJlZW4gZGVzdHJveWVkLgogICAgIGZvciAoSGFz
aE1hcDxXZWJLaXROYW1lZEZsb3cqLCBpbnQ+OjppdGVyYXRvciBpdCA9IG1fbmFtZWRGbG93cy5i
ZWdpbigpLCBlbmQgPSBtX25hbWVkRmxvd3MuZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwCmluZGV4IDMzNzU0
NzNjOWI0Mzg5Yzc1MDkzOTY5MjAwOGFkNDVlYTJhMGRjMGMuLjhiYzRjZDc5OTFjODg4ZmRmODFh
ZjhhYmFiYTE4YjliZmY3NmExN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JET01BZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckRPTUFnZW50LmNwcApAQCAtMTYyLDcgKzE2Miw3IEBAIHB1YmxpYzoKICAgICBSZXZh
bGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrKEluc3BlY3RvckRPTUFnZW50Kik7CiAgICAgdm9pZCBz
Y2hlZHVsZUZvcihFbGVtZW50Kik7CiAgICAgdm9pZCByZXNldCgpIHsgbV90aW1lci5zdG9wKCk7
IH0KLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsK
IAogcHJpdmF0ZToKICAgICBJbnNwZWN0b3JET01BZ2VudCogbV9kb21BZ2VudDsKQEAgLTE3Miw3
ICsxNzIsNyBAQCBwcml2YXRlOgogCiBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjpSZXZh
bGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrKEluc3BlY3RvckRPTUFnZW50KiBkb21BZ2VudCkKICAg
ICA6IG1fZG9tQWdlbnQoZG9tQWdlbnQpCi0gICAgLCBtX3RpbWVyKHRoaXMsICZSZXZhbGlkYXRl
U3R5bGVBdHRyaWJ1dGVUYXNrOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJlJl
dmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6OnRpbWVyRmlyZWQpCiB7CiB9CiAKQEAgLTE4Myw3
ICsxODMsNyBAQCB2b2lkIFJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6OnNjaGVkdWxlRm9y
KEVsZW1lbnQqIGVsZW1lbnQpCiAgICAgICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KDApOwogfQog
Ci12b2lkIFJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6OnRpbWVyRmlyZWQoVGltZXImKQor
dm9pZCBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjp0aW1lckZpcmVkKCkKIHsKICAgICAv
LyBUaGUgdGltZXIgaXMgc3RvcHBlZCBvbiBtX2RvbUFnZW50IGRlc3RydWN0aW9uLCBzbyB0aGlz
IG1ldGhvZCB3aWxsIG5ldmVyIGJlIGNhbGxlZCBhZnRlciBtX2RvbUFnZW50IGhhcyBiZWVuIGRl
c3Ryb3llZC4KICAgICBWZWN0b3I8RWxlbWVudCo+IGVsZW1lbnRzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwuY3BwIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwuY3Bw
CmluZGV4IDZiOTc4MjNjYmRjY2U2NDk5NzE1ZWUyMzRhYTVmY2ZhYjJkZjczZjkuLjNlNzA4MTlh
ZWUxYjNiZDFlNWQ0ZDVhZTE1OTg5NzJiN2Y3YmZmYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRMb2NhbC5jcHAKQEAg
LTc0LDcgKzc0LDcgQEAgY2xhc3MgSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzayB7CiBwdWJs
aWM6CiAgICAgSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzayhJbnNwZWN0b3JDb250cm9sbGVy
KiBpbnNwZWN0b3JDb250cm9sbGVyKQogICAgICAgICA6IG1faW5zcGVjdG9yQ29udHJvbGxlcihp
bnNwZWN0b3JDb250cm9sbGVyKQotICAgICAgICAsIG1fdGltZXIodGhpcywgJkluc3BlY3RvckJh
Y2tlbmREaXNwYXRjaFRhc2s6OnRpbWVyRmlyZWQpCisgICAgICAgICwgbV90aW1lcigqdGhpcywg
Jkluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2s6OnRpbWVyRmlyZWQpCiAgICAgewogICAgIH0K
IApAQCAtOTEsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAgICAgIG1fdGltZXIuc3RvcCgpOwogICAg
IH0KIAotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpCisgICAgdm9pZCB0aW1lckZpcmVkKCkK
ICAgICB7CiAgICAgICAgIGlmICghbV9tZXNzYWdlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgICAg
IC8vIERpc3BhdGNoIGNhbiBsZWFkIHRvIHRoZSB0aW1lciBkZXN0cnVjdGlvbiAtPiBzY2hlZHVs
ZSB0aGUgbmV4dCBzaG90IGZpcnN0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvck92ZXJsYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3Rvck92ZXJsYXkuY3BwCmluZGV4IDFlZDFlOTc0NzQ5YmEyZDlhM2IwNDI0ZTE0MGVhNTFmNjdl
MmQ4MmIuLjcyNWY2OThiOWVkNDc2MzFiOGJkYzIxOWEwNmI0NWU1YjhmNzU0ODIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yT3ZlcmxheS5jcHAKQEAgLTIwMyw3ICsy
MDMsNyBAQCBzdGF0aWMgdm9pZCBidWlsZFF1YWRIaWdobGlnaHQoY29uc3QgRmxvYXRRdWFkJiBx
dWFkLCBjb25zdCBIaWdobGlnaHRDb25maWcmIGhpZwogSW5zcGVjdG9yT3ZlcmxheTo6SW5zcGVj
dG9yT3ZlcmxheShQYWdlJiBwYWdlLCBJbnNwZWN0b3JDbGllbnQqIGNsaWVudCkKICAgICA6IG1f
cGFnZShwYWdlKQogICAgICwgbV9jbGllbnQoY2xpZW50KQotICAgICwgbV9wYWludFJlY3RVcGRh
dGVUaW1lcih0aGlzLCAmSW5zcGVjdG9yT3ZlcmxheTo6dXBkYXRlUGFpbnRSZWN0c1RpbWVyRmly
ZWQpCisgICAgLCBtX3BhaW50UmVjdFVwZGF0ZVRpbWVyKCp0aGlzLCAmSW5zcGVjdG9yT3Zlcmxh
eTo6dXBkYXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQpCiAgICAgLCBtX2luZGljYXRpbmcoZmFsc2Up
CiAgICAgLCBtX3Nob3dpbmdQYWludFJlY3RzKGZhbHNlKQogewpAQCAtNTA1LDcgKzUwNSw3IEBA
IHZvaWQgSW5zcGVjdG9yT3ZlcmxheTo6c2hvd1BhaW50UmVjdChjb25zdCBGbG9hdFJlY3QmIHJl
Y3QpCiAgICAgZm9yY2VQYWludCgpOwogfQogCi12b2lkIEluc3BlY3Rvck92ZXJsYXk6OnVwZGF0
ZVBhaW50UmVjdHNUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSW5zcGVjdG9yT3ZlcmxheTo6dXBk
YXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQoKQogewogICAgIHN0ZDo6Y2hyb25vOjpzdGVhZHlfY2xv
Y2s6OnRpbWVfcG9pbnQgbm93ID0gc3RkOjpjaHJvbm86OnN0ZWFkeV9jbG9jazo6bm93KCk7CiAg
ICAgYm9vbCByZWN0c0NoYW5nZWQgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yT3ZlcmxheS5oCmluZGV4IDg5MDgyOTJjOGY2NjBiN2M5MTJjZDg4NTM4MTRmYTk4
NjQ2MjcyNWIuLjRlZmI0NTg1ZTcyYWFmZjJhYTZiNTkyODc0N2JmMWQ4NWEyMzExMWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvck92ZXJsYXkuaApAQCAtMTM5LDcgKzEz
OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkcmF3UXVhZEhpZ2hsaWdodCgpOwogICAgIHZvaWQg
ZHJhd1BhdXNlZEluRGVidWdnZXJNZXNzYWdlKCk7CiAgICAgdm9pZCBkcmF3UGFpbnRSZWN0cygp
OwotICAgIHZvaWQgdXBkYXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHVwZGF0ZVBhaW50UmVjdHNUaW1lckZpcmVkKCk7CiAKICAgICBQYWdlKiBvdmVybGF5UGFnZSgp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCBlM2NhYjc4
YTZkMmViMGY3YzFhODc4ZDYwNWJjMWIyZmFjOWJjYjhhLi5mOTExNmMwZDRmZGFlZGUzM2Y4OWI2
MWQ4OGI5NzIwMTA3YzEyNzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHAKQEAgLTEzNCwxMiArMTM0LDEyIEBAIERvY3VtZW50TG9hZGVyOjpEb2N1bWVudExvYWRl
cihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcSwgY29uc3QgU3Vic3RpdHV0ZURhdGEmCiAgICAg
LCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQoZmFsc2UpCiAgICAgLCBtX3dhc09ubG9hZEhh
bmRsZWQoZmFsc2UpCiAgICAgLCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMoZmFsc2UpCi0gICAg
LCBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIodGhpcywgJkRvY3VtZW50TG9hZGVy
OjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQpCisgICAgLCBtX3N1YnN0aXR1
dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0
ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKQogICAgICwgbV9kaWRDcmVhdGVHbG9iYWxIaXN0
b3J5RW50cnkoZmFsc2UpCiAgICAgLCBtX2xvYWRpbmdNYWluUmVzb3VyY2UoZmFsc2UpCiAgICAg
LCBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQoMC4wKQogICAgICwgbV9pZGVudGlmaWVyRm9yTG9h
ZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigwKQotICAgICwgbV9kYXRhTG9hZFRpbWVyKHRoaXMsICZE
b2N1bWVudExvYWRlcjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQorICAgICwgbV9kYXRh
TG9hZFRpbWVyKCp0aGlzLCAmRG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1dGVEYXRhTG9h
ZE5vdykKICAgICAsIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xpY3koZmFsc2UpCiAgICAgLCBtX3N1
YnJlc291cmNlTG9hZGVyc0FyZVBhZ2VDYWNoZUFjY2VwdGFibGUoZmFsc2UpCiAgICAgLCBtX2Fw
cGxpY2F0aW9uQ2FjaGVIb3N0KGFkb3B0UHRyKG5ldyBBcHBsaWNhdGlvbkNhY2hlSG9zdCgqdGhp
cykpKQpAQCAtNDY2LDcgKzQ2Niw3IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzUG9zdE9yUmVk
aXJlY3RBZnRlclBvc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBuZXdSZXF1ZXN0CiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpoYW5kbGVTdWJzdGl0dXRlRGF0
YUxvYWROb3coRG9jdW1lbnRMb2FkZXJUaW1lciopCit2b2lkIERvY3VtZW50TG9hZGVyOjpoYW5k
bGVTdWJzdGl0dXRlRGF0YUxvYWROb3coKQogewogICAgIFVSTCB1cmwgPSBtX3N1YnN0aXR1dGVE
YXRhLnJlc3BvbnNlVVJMKCk7CiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCkBAIC00ODgsNyArNDg4
LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3RhcnREYXRhTG9hZFRpbWVyKCkKIHZvaWQgRG9j
dW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZFNvb24oKQogewogICAgIGlmICgh
bV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkIHx8IGZyYW1lTG9hZGVyKCktPmxvYWRzU3luY2hy
b25vdXNseSgpKQotICAgICAgICBoYW5kbGVTdWJzdGl0dXRlRGF0YUxvYWROb3coMCk7CisgICAg
ICAgIGhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZE5vdygpOwogICAgIGVsc2UKICAgICAgICAgc3Rh
cnREYXRhTG9hZFRpbWVyKCk7CiB9CkBAIC0xMTI1LDcgKzExMjUsNyBAQCB2b2lkIERvY3VtZW50
TG9hZGVyOjpkZWxpdmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVyRGVsYXkoKQogICAgICAgICBt
X3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12
b2lkIERvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQo
VGltZXImKQordm9pZCBEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlU
aW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0Vt
cHR5KCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVy
LmgKaW5kZXggNTBmMDRhMWNlODIyYmE2M2YwMzExNjczNmMzMDUwODkxMGIwYTFmYS4uN2EwNmFj
MjY5YzBmYWUwNTUwYjYzNzc1OWNjZmE4MDQ5NDk0ZTk4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmgKQEAgLTMxNiwxMSArMzE2LDExIEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgdHlwZWRlZiBUaW1lciBEb2N1bWVudExvYWRlclRpbWVyOwogI2VuZGlmCiAg
ICAgICAgIHZvaWQgaGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkU29vbigpOwotICAgICAgICB2b2lk
IGhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZE5vdyhEb2N1bWVudExvYWRlclRpbWVyKik7CisgICAg
ICAgIHZvaWQgaGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KCk7CiAgICAgICAgIHZvaWQgc3Rh
cnREYXRhTG9hZFRpbWVyKCk7CiAKICAgICAgICAgdm9pZCBkZWxpdmVyU3Vic3RpdHV0ZVJlc291
cmNlc0FmdGVyRGVsYXkoKTsKLSAgICAgICAgdm9pZCBzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVy
eVRpbWVyRmlyZWQoVGltZXImKTsKKyAgICAgICAgdm9pZCBzdWJzdGl0dXRlUmVzb3VyY2VEZWxp
dmVyeVRpbWVyRmlyZWQoKTsKIAogICAgICAgICB2b2lkIGNsZWFyTWFpblJlc291cmNlKCk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IGY2ZDg2MTRjMDY3Y2E0ZGFm
MmVjZjRkYTA3N2E3MGMzYmVjZDdjNzMuLjhlNGRhYTcyMDM2NzYyZmUzOWVhZWIyYmFhZDIxMGI1
MDI0YjY3ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcApAQCAtMjM2LDcg
KzIzNiw3IEBAIEZyYW1lTG9hZGVyOjpGcmFtZUxvYWRlcihGcmFtZSYgZnJhbWUsIEZyYW1lTG9h
ZGVyQ2xpZW50JiBjbGllbnQpCiAgICAgLCBtX3BhZ2VEaXNtaXNzYWxFdmVudEJlaW5nRGlzcGF0
Y2hlZChOb0Rpc21pc3NhbCkKICAgICAsIG1faXNDb21wbGV0ZShmYWxzZSkKICAgICAsIG1fbmVl
ZHNDbGVhcihmYWxzZSkKLSAgICAsIG1fY2hlY2tUaW1lcih0aGlzLCAmRnJhbWVMb2FkZXI6OmNo
ZWNrVGltZXJGaXJlZCkKKyAgICAsIG1fY2hlY2tUaW1lcigqdGhpcywgJkZyYW1lTG9hZGVyOjpj
aGVja1RpbWVyRmlyZWQpCiAgICAgLCBtX3Nob3VsZENhbGxDaGVja0NvbXBsZXRlZChmYWxzZSkK
ICAgICAsIG1fc2hvdWxkQ2FsbENoZWNrTG9hZENvbXBsZXRlKGZhbHNlKQogICAgICwgbV9vcGVu
ZXIobnVsbHB0cikKQEAgLTg1MCw3ICs4NTAsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjaGVja0Nv
bXBsZXRlZCgpCiAgICAgICAgIGNoZWNrTG9hZENvbXBsZXRlKCk7CiB9CiAKLXZvaWQgRnJhbWVM
b2FkZXI6OmNoZWNrVGltZXJGaXJlZChUaW1lciYpCit2b2lkIEZyYW1lTG9hZGVyOjpjaGVja1Rp
bWVyRmlyZWQoKQogewogICAgIFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1lKTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAppbmRleCAxNTYwY2ExODdhZDI0ZDQ1NWE4NGY4NWQwMWU5
NzA2ZTQ1ODI3MTIzLi42ZGU3ZDBlZGI1NWQxMDc3MjNiYzJiZmNhYjhmMWIwN2ExZGMwOWI2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaApAQCAtMjk5LDcgKzI5OSw3IEBAIHByaXZh
dGU6CiAKICAgICBib29sIGFsbENoaWxkcmVuQXJlQ29tcGxldGUoKSBjb25zdDsgLy8gaW1tZWRp
YXRlIGNoaWxkcmVuLCBub3QgYWxsIGRlc2NlbmRhbnRzCiAKLSAgICB2b2lkIGNoZWNrVGltZXJG
aXJlZChUaW1lciYpOworICAgIHZvaWQgY2hlY2tUaW1lckZpcmVkKCk7CiAgICAgCiAgICAgdm9p
ZCBsb2FkU2FtZURvY3VtZW50SXRlbShIaXN0b3J5SXRlbSopOwogICAgIHZvaWQgbG9hZERpZmZl
cmVudERvY3VtZW50SXRlbShIaXN0b3J5SXRlbSosIEZyYW1lTG9hZFR5cGUsIEZvcm1TdWJtaXNz
aW9uQ2FjaGVMb2FkUG9saWN5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9J
bWFnZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCmlu
ZGV4IDYwMmZiOWRiMWM2YzE5ZjI5Mzc4MDQ1MzFmMGI2ZDY5ZTgwMDNjZGYuLjhiNTU2YWQzMmVh
ODJlNzI4Zjk1NzljOTE5NTVjNzU4ZjJjMDAyZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9JbWFnZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdl
TG9hZGVyLmNwcApAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgcGFnZUlzQmVp
bmdEaXNtaXNzZWQoRG9jdW1lbnQmIGRvY3VtZW50KQogSW1hZ2VMb2FkZXI6OkltYWdlTG9hZGVy
KEVsZW1lbnQmIGVsZW1lbnQpCiAgICAgOiBtX2VsZW1lbnQoZWxlbWVudCkKICAgICAsIG1faW1h
Z2UoMCkKLSAgICAsIG1fZGVyZWZFbGVtZW50VGltZXIodGhpcywgJkltYWdlTG9hZGVyOjp0aW1l
ckZpcmVkKQorICAgICwgbV9kZXJlZkVsZW1lbnRUaW1lcigqdGhpcywgJkltYWdlTG9hZGVyOjp0
aW1lckZpcmVkKQogICAgICwgbV9oYXNQZW5kaW5nQmVmb3JlTG9hZEV2ZW50KGZhbHNlKQogICAg
ICwgbV9oYXNQZW5kaW5nTG9hZEV2ZW50KGZhbHNlKQogICAgICwgbV9oYXNQZW5kaW5nRXJyb3JF
dmVudChmYWxzZSkKQEAgLTM3NCw3ICszNzQsNyBAQCB2b2lkIEltYWdlTG9hZGVyOjp1cGRhdGVk
SGFzUGVuZGluZ0V2ZW50KCkKICAgICB9ICAgCiB9CiAKLXZvaWQgSW1hZ2VMb2FkZXI6OnRpbWVy
RmlyZWQoVGltZXImKQordm9pZCBJbWFnZUxvYWRlcjo6dGltZXJGaXJlZCgpCiB7CiAgICAgZWxl
bWVudCgpLmRlcmVmKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1h
Z2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5oCmluZGV4IDgz
YWQ4ZGNmMDUzMWFkZDhmMGIwOTNiNDRkM2FhM2U4NDFhYTRhMmUuLmNmYjQ4YzNlODhmNDUyZDQw
MmYxOWI3MGU2MWVkYmQ5ZGI1OGZjMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9JbWFnZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5o
CkBAIC05MSw3ICs5MSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRJbWFnZVdpdGhvdXRDb25z
aWRlcmluZ1BlbmRpbmdMb2FkRXZlbnQoQ2FjaGVkSW1hZ2UqKTsKICAgICB2b2lkIGNsZWFyRmFp
bGVkTG9hZFVSTCgpOwogCi0gICAgdm9pZCB0aW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB0
aW1lckZpcmVkKCk7CiAKICAgICBFbGVtZW50JiBtX2VsZW1lbnQ7CiAgICAgQ2FjaGVkUmVzb3Vy
Y2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IG1faW1hZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvTGlua0xvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTGlua0xvYWRl
ci5jcHAKaW5kZXggOTk1ZmM3MDU1MDBlNTI1Y2RlYTQ4YTA1NWYwZWU0NWU0ZDcyOTIwZi4uYWI5
ZWJlYWY4YzZiZjA2NTZlZmE4YjJlYTZjMzYwZmRhNGUyMmMwZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0xpbmtMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9MaW5rTG9hZGVyLmNwcApAQCAtNDksOCArNDksOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IExpbmtMb2FkZXI6OkxpbmtMb2FkZXIoTGlua0xvYWRlckNsaWVudCogY2xpZW50KQogICAgIDog
bV9jbGllbnQoY2xpZW50KQotICAgICwgbV9saW5rTG9hZFRpbWVyKHRoaXMsICZMaW5rTG9hZGVy
OjpsaW5rTG9hZFRpbWVyRmlyZWQpCi0gICAgLCBtX2xpbmtMb2FkaW5nRXJyb3JUaW1lcih0aGlz
LCAmTGlua0xvYWRlcjo6bGlua0xvYWRpbmdFcnJvclRpbWVyRmlyZWQpCisgICAgLCBtX2xpbmtM
b2FkVGltZXIoKnRoaXMsICZMaW5rTG9hZGVyOjpsaW5rTG9hZFRpbWVyRmlyZWQpCisgICAgLCBt
X2xpbmtMb2FkaW5nRXJyb3JUaW1lcigqdGhpcywgJkxpbmtMb2FkZXI6OmxpbmtMb2FkaW5nRXJy
b3JUaW1lckZpcmVkKQogewogfQogCkBAIC02MCwxNSArNjAsMTMgQEAgTGlua0xvYWRlcjo6fkxp
bmtMb2FkZXIoKQogICAgICAgICBtX2NhY2hlZExpbmtSZXNvdXJjZS0+cmVtb3ZlQ2xpZW50KHRo
aXMpOwogfQogCi12b2lkIExpbmtMb2FkZXI6OmxpbmtMb2FkVGltZXJGaXJlZChUaW1lciYgdGlt
ZXIpCit2b2lkIExpbmtMb2FkZXI6OmxpbmtMb2FkVGltZXJGaXJlZCgpCiB7Ci0gICAgQVNTRVJU
X1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2xpbmtMb2FkVGltZXIpOwogICAgIG1fY2xpZW50
LT5saW5rTG9hZGVkKCk7CiB9CiAKLXZvaWQgTGlua0xvYWRlcjo6bGlua0xvYWRpbmdFcnJvclRp
bWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBMaW5rTG9hZGVyOjpsaW5rTG9hZGluZ0Vycm9y
VGltZXJGaXJlZCgpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2xp
bmtMb2FkaW5nRXJyb3JUaW1lcik7CiAgICAgbV9jbGllbnQtPmxpbmtMb2FkaW5nRXJyb3JlZCgp
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTGlua0xvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0xpbmtMb2FkZXIuaAppbmRleCBhZDRkNTc5ZjA4Y2NlMzM3
NTNjYWU3MDVjYzlmYTljYzM2YjMxOWIyLi43NDBkMmJjYzkzOTcyMTkwYmVhYzVkMjdkZWE4ODE3
MDc2NzFjMjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTGlua0xvYWRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9MaW5rTG9hZGVyLmgKQEAgLTU5LDggKzU5LDgg
QEAgcHVibGljOgogICAgIGJvb2wgbG9hZExpbmsoY29uc3QgTGlua1JlbEF0dHJpYnV0ZSYsIGNv
bnN0IFN0cmluZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBzaXplcywgY29uc3QgVVJMJiwgRG9jdW1l
bnQqKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIGxpbmtMb2FkVGltZXJGaXJlZChUaW1lciYpOwot
ICAgIHZvaWQgbGlua0xvYWRpbmdFcnJvclRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGxp
bmtMb2FkVGltZXJGaXJlZCgpOworICAgIHZvaWQgbGlua0xvYWRpbmdFcnJvclRpbWVyRmlyZWQo
KTsKIAogICAgIExpbmtMb2FkZXJDbGllbnQqIG1fY2xpZW50OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKaW5kZXggYWM2ZTA4YTg3MjU1YWQ5MTk3
N2M3OTAzMzRlNTU5ZWU5NjFlYzhmMi4uOTFjYmEwNjZkMTA0ODExNzQ2MTBlYjYzNDc4YzhhZTdk
ODllZDkyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hl
ZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVy
LmNwcApAQCAtMjgwLDcgKzI4MCw3IEBAIHByaXZhdGU6CiAKIE5hdmlnYXRpb25TY2hlZHVsZXI6
Ok5hdmlnYXRpb25TY2hlZHVsZXIoRnJhbWUmIGZyYW1lKQogICAgIDogbV9mcmFtZShmcmFtZSkK
LSAgICAsIG1fdGltZXIodGhpcywgJk5hdmlnYXRpb25TY2hlZHVsZXI6OnRpbWVyRmlyZWQpCisg
ICAgLCBtX3RpbWVyKCp0aGlzLCAmTmF2aWdhdGlvblNjaGVkdWxlcjo6dGltZXJGaXJlZCkKIHsK
IH0KIApAQCAtNDMwLDcgKzQzMCw3IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1
bGVIaXN0b3J5TmF2aWdhdGlvbihpbnQgc3RlcHMpCiAgICAgc2NoZWR1bGUoc3RkOjptYWtlX3Vu
aXF1ZTxTY2hlZHVsZWRIaXN0b3J5TmF2aWdhdGlvbj4oc3RlcHMpKTsKIH0KIAotdm9pZCBOYXZp
Z2F0aW9uU2NoZWR1bGVyOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTmF2aWdhdGlvblNjaGVk
dWxlcjo6dGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX2ZyYW1lLnBhZ2UoKSkKICAgICAgICAg
cmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hl
ZHVsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmgKaW5k
ZXggMzU2ZjE4OGZiMjAzYjUwODM4ZTEwMTdhMDExODQ0ODU2YzllYjYyYi4uODUyMjg0MGFmMzI0
MmMyNzA3MmMwY2NhNDM4Nzg2MTRiMzBmMTdmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
TmF2aWdhdGlvblNjaGVkdWxlci5oCkBAIC04Myw3ICs4Myw3IEBAIHByaXZhdGU6CiAgICAgYm9v
bCBzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24oKSBjb25zdDsKICAgICBib29sIHNob3VsZFNjaGVk
dWxlTmF2aWdhdGlvbihjb25zdCBVUkwmKSBjb25zdDsKIAotICAgIHZvaWQgdGltZXJGaXJlZChU
aW1lciYpOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwogICAgIHZvaWQgc2NoZWR1bGUoc3RkOjp1
bmlxdWVfcHRyPFNjaGVkdWxlZE5hdmlnYXRpb24+KTsKIAogICAgIHN0YXRpYyBMb2NrQmFja0Zv
cndhcmRMaXN0IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KEZyYW1lJiB0YXJnZXRGcmFtZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKaW5kZXggZmI2OWE3NTIxNzAyMWI2NTczMmJl
ZjE0MTNlMzBiZTI4NDk4ZDIzNy4uNWIzYjk5MWE4NDIyZWY2YzQzMzVmMzEyM2ExNzNlMWI5OTk5
NjE1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMTE1LDcgKzExNSw3
IEBAIHZvaWQgUGluZ0xvYWRlcjo6Y3JlYXRlUGluZ0xvYWRlcihGcmFtZSYgZnJhbWUsIFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCkKIH0KIAogUGluZ0xvYWRlcjo6UGluZ0xvYWRlcihGcmFtZSYg
ZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKLSAgICA6IG1fdGltZW91dCh0aGlzLCAm
UGluZ0xvYWRlcjo6dGltZW91dFRpbWVyRmlyZWQpCisgICAgOiBtX3RpbWVvdXQoKnRoaXMsICZQ
aW5nTG9hZGVyOjp0aW1lb3V0VGltZXJGaXJlZCkKIHsKICAgICB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIgPSBmcmFtZS5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigp
OwogICAgIC8vIEZJWE1FOiBXaHkgYWN0aXZlRG9jdW1lbnRMb2FkZXI/IEkgd291bGQgaGF2ZSBl
eHBlY3RlZCBkb2N1bWVudExvYWRlcigpLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1BpbmdMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmgKaW5k
ZXggYjdiODVlZmIzYjJmZjBmZmZlNzBhMzgyZjMzZTVlYTc4YzMyOWQ2NS4uNTE1ZDk3ZDc0ZTNl
OTFmOGQxMmFmOTg1ZWFlYWE1Njg4ZDEwZTFkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1BpbmdMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRl
ci5oCkBAIC02OSw3ICs2OSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBkb3VibGUpIG92ZXJyaWRlIHsgZGVsZXRlIHRoaXM7
IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291
cmNlRXJyb3ImKSBvdmVycmlkZSB7IGRlbGV0ZSB0aGlzOyB9CiAgICAgdmlydHVhbCBib29sIHNo
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFJlc291cmNlSGFuZGxlKikgIG92ZXJyaWRlIHsgcmV0
dXJuIG1fc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2U7IH0KLSAgICB2b2lkIHRpbWVvdXRUaW1l
ckZpcmVkKFRpbWVyJikgeyBkZWxldGUgdGhpczsgfQorICAgIHZvaWQgdGltZW91dFRpbWVyRmly
ZWQoKSB7IGRlbGV0ZSB0aGlzOyB9CiAKICAgICBSZWZQdHI8UmVzb3VyY2VIYW5kbGU+IG1faGFu
ZGxlOwogICAgIFRpbWVyIG1fdGltZW91dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNz
VHJhY2tlci5jcHAKaW5kZXggZTllOTUwNDAwY2ViNjU0OWVjNjhlM2FkY2Q2OGQxY2M3ZDY3YTYx
MC4uMDQwNTRkZTRlYWIzOTUxZjk1ZTA3ZTlkZWQzMmRjOTE2ZmQ3ZWUwNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgUHJvZ3Jl
c3NUcmFja2VyOjpQcm9ncmVzc1RyYWNrZXIoUHJvZ3Jlc3NUcmFja2VyQ2xpZW50JiBjbGllbnQp
CiAgICAgLCBtX2ZpbmFsUHJvZ3Jlc3NDaGFuZ2VkU2VudChmYWxzZSkKICAgICAsIG1fcHJvZ3Jl
c3NWYWx1ZSgwKQogICAgICwgbV9udW1Qcm9ncmVzc1RyYWNrZWRGcmFtZXMoMCkKLSAgICAsIG1f
cHJvZ3Jlc3NIZWFydGJlYXRUaW1lcih0aGlzLCAmUHJvZ3Jlc3NUcmFja2VyOjpwcm9ncmVzc0hl
YXJ0YmVhdFRpbWVyRmlyZWQpCisgICAgLCBtX3Byb2dyZXNzSGVhcnRiZWF0VGltZXIoKnRoaXMs
ICZQcm9ncmVzc1RyYWNrZXI6OnByb2dyZXNzSGVhcnRiZWF0VGltZXJGaXJlZCkKICAgICAsIG1f
aGVhcnRiZWF0c1dpdGhOb1Byb2dyZXNzKDApCiAgICAgLCBtX3RvdGFsQnl0ZXNSZWNlaXZlZEJl
Zm9yZVByZXZpb3VzSGVhcnRiZWF0KDApCiAgICAgLCBtX2lzTWFpbkxvYWQoZmFsc2UpCkBAIC0z
MDUsNyArMzA1LDcgQEAgYm9vbCBQcm9ncmVzc1RyYWNrZXI6OmlzTWFpbkxvYWRQcm9ncmVzc2lu
ZygpIGNvbnN0CiAgICAgcmV0dXJuIG1fcHJvZ3Jlc3NWYWx1ZSAmJiBtX3Byb2dyZXNzVmFsdWUg
PCBmaW5hbFByb2dyZXNzVmFsdWUgJiYgbV9oZWFydGJlYXRzV2l0aE5vUHJvZ3Jlc3MgPCBsb2Fk
U3RhbGxlZEhlYXJ0YmVhdENvdW50OwogfQogCi12b2lkIFByb2dyZXNzVHJhY2tlcjo6cHJvZ3Jl
c3NIZWFydGJlYXRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUHJvZ3Jlc3NUcmFja2VyOjpwcm9n
cmVzc0hlYXJ0YmVhdFRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX3RvdGFsQnl0ZXNSZWNlaXZl
ZCA8IG1fdG90YWxCeXRlc1JlY2VpdmVkQmVmb3JlUHJldmlvdXNIZWFydGJlYXQgKyBtaW51bXVt
Qnl0ZXNQZXJIZWFydGJlYXRGb3JQcm9ncmVzcykKICAgICAgICAgKyttX2hlYXJ0YmVhdHNXaXRo
Tm9Qcm9ncmVzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1Ry
YWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuaAppbmRleCA4
YTM5YTExNTE3ZGVmNTQ4YTZiNDRlZTk2MTNlZGRiMDFjMjhiNzMyLi43ZDlkY2E0YzE0YTQyYjE2
M2ViNzFhNzg3NjM3Y2VhMmNjZWFmYmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUHJvZ3Jlc3NUcmFja2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNz
VHJhY2tlci5oCkBAIC02Niw3ICs2Niw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXNldCgpOwog
ICAgIHZvaWQgZmluYWxQcm9ncmVzc0NvbXBsZXRlKCk7CiAKLSAgICB2b2lkIHByb2dyZXNzSGVh
cnRiZWF0VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgcHJvZ3Jlc3NIZWFydGJlYXRUaW1l
ckZpcmVkKCk7CiAgICAgCiAgICAgc3RhdGljIHVuc2lnbmVkIGxvbmcgc191bmlxdWVJZGVudGlm
aWVyOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9h
ZFNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU2NoZWR1
bGVyLmNwcAppbmRleCA2ZDhiOWU3ZmU0OTZiYTk1NWExODg4N2ZlOWI2MDVkNzA2YzI4ZTk0Li5k
MjIzM2QwMjViNTM1NDJlY2Y0MmJjMzQ2MzM0NThhYzRmOGNjYzY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcApAQCAtMTAxLDcgKzEwMSw3
IEBAIFJlc291cmNlTG9hZFNjaGVkdWxlciogcmVzb3VyY2VMb2FkU2NoZWR1bGVyKCkKIAogUmVz
b3VyY2VMb2FkU2NoZWR1bGVyOjpSZXNvdXJjZUxvYWRTY2hlZHVsZXIoKQogICAgIDogbV9ub25I
VFRQUHJvdG9jb2xIb3N0KG5ldyBIb3N0SW5mb3JtYXRpb24oU3RyaW5nKCksIG1heFJlcXVlc3Rz
SW5GbGlnaHRGb3JOb25IVFRQUHJvdG9jb2xzKSkKLSAgICAsIG1fcmVxdWVzdFRpbWVyKHRoaXMs
ICZSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVkKQorICAgICwgbV9yZXF1
ZXN0VGltZXIoKnRoaXMsICZSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVk
KQogICAgICwgbV9zdXNwZW5kUGVuZGluZ1JlcXVlc3RzQ291bnQoMCkKICAgICAsIG1faXNTZXJp
YWxMb2FkaW5nRW5hYmxlZChmYWxzZSkKIHsKQEAgLTMzMiw3ICszMzIsNyBAQCB2b2lkIFJlc291
cmNlTG9hZFNjaGVkdWxlcjo6c2NoZWR1bGVTZXJ2ZVBlbmRpbmdSZXF1ZXN0cygpCiAgICAgICAg
IG1fcmVxdWVzdFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWRT
Y2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVzb3VyY2VMb2FkU2No
ZWR1bGVyOjpyZXF1ZXN0VGltZXJGaXJlZCgpCiB7CiAgICAgTE9HKFJlc291cmNlTG9hZGluZywg
IlJlc291cmNlTG9hZFNjaGVkdWxlcjo6cmVxdWVzdFRpbWVyRmlyZWRcbiIpOwogICAgIHNlcnZl
UGVuZGluZ1JlcXVlc3RzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
U2NoZWR1bGVyLmgKaW5kZXggNWIzNzQyZjM5MzFmMDlmYzM1YTkxNmI2NTFiMjYxOTk0MWFlMzM0
ZC4uMzcwMzQzODRkNzc5OWE4ZmVkNTA4NzE3NjA4ZTIzYzQ4YmJkM2I5OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZFNjaGVkdWxlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRTY2hlZHVsZXIuaApAQCAtODQsNyArODQsNyBA
QCBwcm90ZWN0ZWQ6CiBwcml2YXRlOgogICAgIHZvaWQgc2NoZWR1bGVMb2FkKFJlc291cmNlTG9h
ZGVyKik7CiAgICAgdm9pZCBzY2hlZHVsZVNlcnZlUGVuZGluZ1JlcXVlc3RzKCk7Ci0gICAgdm9p
ZCByZXF1ZXN0VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgcmVxdWVzdFRpbWVyRmlyZWQo
KTsKIAogICAgIGJvb2wgaXNTdXNwZW5kaW5nUGVuZGluZ1JlcXVlc3RzKCkgY29uc3QgeyByZXR1
cm4gISFtX3N1c3BlbmRQZW5kaW5nUmVxdWVzdHNDb3VudDsgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9UZXh0VHJhY2tMb2FkZXIuY3BwCmluZGV4IGVkMGNiNzViN2IxNjgyZTNiZDVlOGRlMTQ0
ZTNmZTIxNmI1MzljYWUuLjk5NGNlZGQ5Njg0MTI3NzAyNTE4OTU5NWQ1YzZkODY5Y2Q2MDgzNzMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tMb2FkZXIuY3BwCkBAIC00Niw3ICs0
Niw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIFRleHRUcmFja0xvYWRlcjo6VGV4dFRyYWNrTG9h
ZGVyKFRleHRUcmFja0xvYWRlckNsaWVudCYgY2xpZW50LCBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBjb250ZXh0KQogICAgIDogbV9jbGllbnQoY2xpZW50KQogICAgICwgbV9zY3JpcHRFeGVjdXRp
b25Db250ZXh0KGNvbnRleHQpCi0gICAgLCBtX2N1ZUxvYWRUaW1lcih0aGlzLCAmVGV4dFRyYWNr
TG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCkKKyAgICAsIG1fY3VlTG9hZFRpbWVyKCp0aGlzLCAm
VGV4dFRyYWNrTG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGUoSWRsZSkK
ICAgICAsIG1fcGFyc2VPZmZzZXQoMCkKICAgICAsIG1fbmV3Q3Vlc0F2YWlsYWJsZShmYWxzZSkK
QEAgLTU5LDEwICs1OSw4IEBAIFRleHRUcmFja0xvYWRlcjo6flRleHRUcmFja0xvYWRlcigpCiAg
ICAgICAgIG1fcmVzb3VyY2UtPnJlbW92ZUNsaWVudCh0aGlzKTsKIH0KIAotdm9pZCBUZXh0VHJh
Y2tMb2FkZXI6OmN1ZUxvYWRUaW1lckZpcmVkKFRpbWVyKiB0aW1lcikKK3ZvaWQgVGV4dFRyYWNr
TG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCgpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwg
dGltZXIgPT0gJm1fY3VlTG9hZFRpbWVyKTsKLSAgICAKICAgICBpZiAobV9uZXdDdWVzQXZhaWxh
YmxlKSB7CiAgICAgICAgIG1fbmV3Q3Vlc0F2YWlsYWJsZSA9IGZhbHNlOwogICAgICAgICBtX2Ns
aWVudC5uZXdDdWVzQXZhaWxhYmxlKHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1RleHRUcmFja0xvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRUcmFj
a0xvYWRlci5oCmluZGV4IDgyNzU0ZGZlNTAxMDI5OGExZjcwNDRkMmQ1Y2RiZmY0OTBhZTE3MWIu
Ljc2OGNiZTk0ZGRmM2MyM2Y0MzZiYzA3M2M3MGJmMjZhYTE0YmRlYzYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmgKQEAgLTc5LDcgKzc5LDcgQEAgcHJpdmF0ZToKICAg
ICB2aXJ0dWFsIHZvaWQgZmlsZUZhaWxlZFRvUGFyc2UoKSBvdmVycmlkZTsKICAgICAKICAgICB2
b2lkIHByb2Nlc3NOZXdDdWVEYXRhKENhY2hlZFJlc291cmNlKik7Ci0gICAgdm9pZCBjdWVMb2Fk
VGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgY3VlTG9hZFRpbWVyRmlyZWQoKTsKICAgICB2
b2lkIGNvcnNQb2xpY3lQcmV2ZW50ZWRMb2FkKCk7CiAKICAgICBlbnVtIFN0YXRlIHsgSWRsZSwg
TG9hZGluZywgRmluaXNoZWQsIEZhaWxlZCB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggZDNmODg2ZThjMGU1MjEyZTdhNWI5ZjQ3ZGZl
YzYxNzg5ZDI1Nzc4Ni4uMDJkM2ZlODZiY2E2ZWFiYjhhOTEyODRkN2FkMDhlNGY1ZTJiNTU4YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCkBA
IC0xMTAsNyArMTEwLDcgQEAgREVGSU5FX0RFQlVHX09OTFlfR0xPQkFMKFJlZkNvdW50ZWRMZWFr
Q291bnRlciwgY2FjaGVkUmVzb3VyY2VMZWFrQ291bnRlciwgKCJDYWMKIAogQ2FjaGVkUmVzb3Vy
Y2U6OkNhY2hlZFJlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgVHlwZSB0
eXBlLCBTZXNzaW9uSUQgc2Vzc2lvbklEKQogICAgIDogbV9yZXNvdXJjZVJlcXVlc3QocmVxdWVz
dCkKLSAgICAsIG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyKHRoaXMsICZDYWNoZWRSZXNvdXJj
ZTo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQsIGRlYWREZWNvZGVkRGF0YURlbGV0aW9u
SW50ZXJ2YWxGb3JSZXNvdXJjZVR5cGUodHlwZSkpCisgICAgLCBtX2RlY29kZWREYXRhRGVsZXRp
b25UaW1lcigqdGhpcywgJkNhY2hlZFJlc291cmNlOjpkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJG
aXJlZCwgZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbEZvclJlc291cmNlVHlwZSh0eXBl
KSkKICAgICAsIG1fc2Vzc2lvbklEKHNlc3Npb25JRCkKICAgICAsIG1fbG9hZFByaW9yaXR5KGRl
ZmF1bHRQcmlvcml0eUZvclJlc291cmNlVHlwZSh0eXBlKSkKICAgICAsIG1fcmVzcG9uc2VUaW1l
c3RhbXAoY3VycmVudFRpbWUoKSkKQEAgLTcyNiw3ICs3MjYsNyBAQCB2b2lkIENhY2hlZFJlc291
cmNlOjpzZXRMb2FkUHJpb3JpdHkoUmVzb3VyY2VMb2FkUHJpb3JpdHkgbG9hZFByaW9yaXR5KQog
aW5saW5lIENhY2hlZFJlc291cmNlOjpDYWxsYmFjazo6Q2FsbGJhY2soQ2FjaGVkUmVzb3VyY2Um
IHJlc291cmNlLCBDYWNoZWRSZXNvdXJjZUNsaWVudCYgY2xpZW50KQogICAgIDogbV9yZXNvdXJj
ZShyZXNvdXJjZSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1fdGltZXIodGhpcywg
JkNhbGxiYWNrOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJkNhbGxiYWNrOjp0
aW1lckZpcmVkKQogewogICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KDApOwogfQpAQCAtNzM3LDcg
KzczNyw3IEBAIGlubGluZSB2b2lkIENhY2hlZFJlc291cmNlOjpDYWxsYmFjazo6Y2FuY2VsKCkK
ICAgICAgICAgbV90aW1lci5zdG9wKCk7CiB9CiAKLXZvaWQgQ2FjaGVkUmVzb3VyY2U6OkNhbGxi
YWNrOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgQ2FjaGVkUmVzb3VyY2U6OkNhbGxiYWNrOjp0
aW1lckZpcmVkKCkKIHsKICAgICBtX3Jlc291cmNlLmRpZEFkZENsaWVudCgmbV9jbGllbnQpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaAppbmRleCA1
YTI0N2Q1NDg1MDhjMWQ5MDAzYjdhYmZlNTBlNTQ5YTc5YTdjYWM4Li5kODZhMWQ0YzNiYjRmYmUy
Y2ZjODExYjg0ODQ3YjU5ZjA0NDRhMDE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2UuaApAQCAtMzUyLDcgKzM1Miw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGNhbmNlbCgpOwogCiBwcml2YXRlOgotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAg
IHZvaWQgdGltZXJGaXJlZCgpOwogCiAgICAgQ2FjaGVkUmVzb3VyY2UmIG1fcmVzb3VyY2U7CiAg
ICAgQ2FjaGVkUmVzb3VyY2VDbGllbnQmIG1fY2xpZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggNDA1OTAyYzAx
Zjc4NmNlOWY4NmFiZGFkNzk1NmIxYWE4ZWQzNjQ5MC4uMzY5MmY4ZWZjOTZhZWM4NTBkN2RhMjhk
ODYyYzViYmViMjdhZGM2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC0xMTcsNyArMTE3LDcgQEAgQ2FjaGVkUmVz
b3VyY2VMb2FkZXI6OkNhY2hlZFJlc291cmNlTG9hZGVyKERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlcikKICAgICA6IG1fZG9jdW1lbnQoMCkKICAgICAsIG1fZG9jdW1lbnRMb2FkZXIoZG9j
dW1lbnRMb2FkZXIpCiAgICAgLCBtX3JlcXVlc3RDb3VudCgwKQotICAgICwgbV9nYXJiYWdlQ29s
bGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXIodGhpcywgJkNhY2hlZFJlc291cmNlTG9hZGVyOjpn
YXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXJGaXJlZCkKKyAgICAsIG1fZ2FyYmFn
ZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyKCp0aGlzLCAmQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OmdhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lckZpcmVkKQogICAgICwgbV9h
dXRvTG9hZEltYWdlcyh0cnVlKQogICAgICwgbV9pbWFnZXNFbmFibGVkKHRydWUpCiAgICAgLCBt
X2FsbG93U3RhbGVSZXNvdXJjZXMoZmFsc2UpCkBAIC03OTgsOSArNzk4LDggQEAgdm9pZCBDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29s
IHNob3VsZFBlcmZvcm0KIC8vIGJvb2trZWVwaW5nIG9uIENhY2hlZFJlc291cmNlcywgc28gaW5z
dGVhZCBwc2V1ZG8tR0MgdGhlbSAtLSB3aGVuIHRoZQogLy8gcmVmZXJlbmNlIGNvdW50IHJlYWNo
ZXMgMSwgbV9kb2N1bWVudFJlc291cmNlcyBpcyB0aGUgb25seSByZWZlcmVuY2UsIHNvCiAvLyBy
ZW1vdmUgaXQgZnJvbSB0aGUgbWFwLgotdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Z2FyYmFn
ZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBD
YWNoZWRSZXNvdXJjZUxvYWRlcjo6Z2FyYmFnZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVy
RmlyZWQoKQogewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV9nYXJiYWdl
Q29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXIpOwogICAgIGdhcmJhZ2VDb2xsZWN0RG9jdW1l
bnRSZXNvdXJjZXMoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2VMb2FkZXIuaAppbmRleCBhZWJhMjU0NGYxZjU5Y2U2YWQ5MDQzMjZmMTIw
MDU1MTUyZDI3YzU1Li43OTU4ZTYyZWFmMmNiM2QxZjMyMTU5MWE2NWM2MmQ5MDViMzRiMmFjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuaApAQCAtMTUyLDcgKzE1Miw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRDb250aW51
ZUFmdGVyTm90aWZ5aW5nTG9hZGVkRnJvbU1lbW9yeUNhY2hlKGNvbnN0IENhY2hlZFJlc291cmNl
UmVxdWVzdCYsIENhY2hlZFJlc291cmNlKik7CiAgICAgYm9vbCBjaGVja0luc2VjdXJlQ29udGVu
dChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgY29uc3QgVVJMJikgY29uc3Q7CiAKLSAgICB2b2lkIGdh
cmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9p
ZCBnYXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXJGaXJlZCgpOwogICAgIHZvaWQg
cGVyZm9ybVBvc3RMb2FkQWN0aW9ucygpOwogCiAgICAgYm9vbCBjbGllbnREZWZlcnNJbWFnZShj
b25zdCBVUkwmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29u
L0ljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJh
c2UuY3BwCmluZGV4IGYxMGM0MTNkMzRhMTgxNWQ0MjZiNzBkZmEwZWJhMWE5Y2RlNjY2YWUuLjk4
MzhlYTY1NTU4YmNlYTZjMjliNGQ0N2NmMTY1NzQ0NDZhZDM0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcApAQCAtNzg2LDcgKzc4Niw3IEBAIHNpemVf
dCBJY29uRGF0YWJhc2U6Omljb25SZWNvcmRDb3VudFdpdGhEYXRhKCkKIH0KIAogSWNvbkRhdGFi
YXNlOjpJY29uRGF0YWJhc2UoKQotICAgIDogbV9zeW5jVGltZXIodGhpcywgJkljb25EYXRhYmFz
ZTo6c3luY1RpbWVyRmlyZWQpCisgICAgOiBtX3N5bmNUaW1lcigqdGhpcywgJkljb25EYXRhYmFz
ZTo6c3luY1RpbWVyRmlyZWQpCiAgICAgLCBtX3N5bmNUaHJlYWRSdW5uaW5nKGZhbHNlKQogICAg
ICwgbV9zY2hlZHVsZU9yRGVmZXJTeW5jVGltZXJSZXF1ZXN0ZWQoZmFsc2UpCiAgICAgLCBtX2lz
RW5hYmxlZChmYWxzZSkKQEAgLTg1NSw3ICs4NTUsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6c2No
ZWR1bGVPckRlZmVyU3luY1RpbWVyKCkKICAgICB9KTsKIH0KIAotdm9pZCBJY29uRGF0YWJhc2U6
OnN5bmNUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSWNvbkRhdGFiYXNlOjpzeW5jVGltZXJGaXJl
ZCgpCiB7CiAgICAgQVNTRVJUX05PVF9TWU5DX1RIUkVBRCgpOwogICAgIHdha2VTeW5jVGhyZWFk
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oCmluZGV4IGM3ZDky
ZjJkZDkyMWY3ZTM5NDk4Zjg1NzQyNDcwMDc1YmZhZTAzYmUuLjcxYjE3ZWRjNzliZDU1MGY2NmU1
YWViYzVhYzg5ZjI4MjAzNTA1N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
Y29uL0ljb25EYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25E
YXRhYmFzZS5oCkBAIC0xMTUsNyArMTE1LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgd2FrZVN5
bmNUaHJlYWQoKTsKICAgICB2b2lkIHNjaGVkdWxlT3JEZWZlclN5bmNUaW1lcigpOwotICAgIHZv
aWQgc3luY1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHN5bmNUaW1lckZpcmVkKCk7CiAg
ICAgCiAgICAgVGltZXIgbV9zeW5jVGltZXI7CiAgICAgVGhyZWFkSWRlbnRpZmllciBtX3N5bmNU
aHJlYWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0F1dG9zY3JvbGxDb250cm9s
bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQXV0b3Njcm9sbENvbnRyb2xsZXIuY3BwCmlu
ZGV4IGIxZGNmZjI1YmRjMzAxMDEzZDcyOWJmOWU4NjFjNWFhODU4NTY5Y2EuLmE2NzQxOWJhMzc0
MzVmOTgwNGJlMGQzODg1OTZlNTM4MGUzN2FhOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQXV0b3Njcm9sbENvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
QXV0b3Njcm9sbENvbnRyb2xsZXIuY3BwCkBAIC01Niw3ICs1Niw3IEBAIHN0YXRpYyBGcmFtZSog
Z2V0TWFpbkZyYW1lKEZyYW1lKiBmcmFtZSkKICNlbmRpZgogCiBBdXRvc2Nyb2xsQ29udHJvbGxl
cjo6QXV0b3Njcm9sbENvbnRyb2xsZXIoKQotICAgIDogbV9hdXRvc2Nyb2xsVGltZXIodGhpcywg
JkF1dG9zY3JvbGxDb250cm9sbGVyOjphdXRvc2Nyb2xsVGltZXJGaXJlZCkKKyAgICA6IG1fYXV0
b3Njcm9sbFRpbWVyKCp0aGlzLCAmQXV0b3Njcm9sbENvbnRyb2xsZXI6OmF1dG9zY3JvbGxUaW1l
ckZpcmVkKQogICAgICwgbV9hdXRvc2Nyb2xsUmVuZGVyZXIoMCkKICAgICAsIG1fYXV0b3Njcm9s
bFR5cGUoTm9BdXRvc2Nyb2xsKQogICAgICwgbV9kcmFnQW5kRHJvcEF1dG9zY3JvbGxTdGFydFRp
bWUoMCkKQEAgLTIzMSw3ICsyMzEsNyBAQCBib29sIEF1dG9zY3JvbGxDb250cm9sbGVyOjpwYW5T
Y3JvbGxJblByb2dyZXNzKCkgY29uc3QKIH0KICNlbmRpZgogCi12b2lkIEF1dG9zY3JvbGxDb250
cm9sbGVyOjphdXRvc2Nyb2xsVGltZXJGaXJlZChUaW1lciYpCit2b2lkIEF1dG9zY3JvbGxDb250
cm9sbGVyOjphdXRvc2Nyb2xsVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX2F1dG9zY3JvbGxS
ZW5kZXJlcikgewogICAgICAgICBzdG9wQXV0b3Njcm9sbFRpbWVyKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0F1dG9zY3JvbGxDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0F1dG9zY3JvbGxDb250cm9sbGVyLmgKaW5kZXggYTA2MGY5YTRkNGVlZWZmZDZhMmEx
MDRmMjgwNzQ2MjhhZGE3YzJmZS4uMjBlNzA5Y2MwMjI0ZTdmYjBkMmE0MjEzMzE5MmM3MDhhYmM1
YTliZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9BdXRvc2Nyb2xsQ29udHJvbGxl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQXV0b3Njcm9sbENvbnRyb2xsZXIuaApAQCAt
NjksNyArNjksNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHJpdmF0ZToKLSAgICB2b2lkIGF1dG9z
Y3JvbGxUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBhdXRvc2Nyb2xsVGltZXJGaXJlZCgp
OwogICAgIHZvaWQgc3RhcnRBdXRvc2Nyb2xsVGltZXIoKTsKICNpZiBFTkFCTEUoUEFOX1NDUk9M
TElORykKICAgICB2b2lkIHVwZGF0ZVBhblNjcm9sbFN0YXRlKEZyYW1lVmlldyosIGNvbnN0IElu
dFBvaW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJl
ZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2Vz
LmNwcAppbmRleCA5ZWMwNWQ3NDUxZTg4YWRiNDIwYjM0M2EyNTE5M2NkODYxYWQ5ZTM1Li4zNDBm
ZDdlMmZjYTg0MTBlNGFiZDczYzE1YjQxYzM2OGUxMTYwZTAzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogQ2FwdGlvblVzZXJQcmVmZXJlbmNlczo6Q2FwdGlvblVzZXJQcmVm
ZXJlbmNlcyhQYWdlR3JvdXAmIGdyb3VwKQogICAgIDogbV9wYWdlR3JvdXAoZ3JvdXApCiAgICAg
LCBtX2Rpc3BsYXlNb2RlKEZvcmNlZE9ubHkpCi0gICAgLCBtX3RpbWVyKHRoaXMsICZDYXB0aW9u
VXNlclByZWZlcmVuY2VzOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJkNhcHRp
b25Vc2VyUHJlZmVyZW5jZXM6OnRpbWVyRmlyZWQpCiAgICAgLCBtX3Rlc3RpbmdNb2RlKGZhbHNl
KQogICAgICwgbV9oYXZlUHJlZmVyZW5jZXMoZmFsc2UpCiB7CkBAIC01Miw3ICs1Miw3IEBAIENh
cHRpb25Vc2VyUHJlZmVyZW5jZXM6On5DYXB0aW9uVXNlclByZWZlcmVuY2VzKCkKIHsKIH0KIAot
dm9pZCBDYXB0aW9uVXNlclByZWZlcmVuY2VzOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgQ2Fw
dGlvblVzZXJQcmVmZXJlbmNlczo6dGltZXJGaXJlZCgpCiB7CiAgICAgY2FwdGlvblByZWZlcmVu
Y2VzQ2hhbmdlZCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9u
VXNlclByZWZlcmVuY2VzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVy
ZW5jZXMuaAppbmRleCA2ZjAyYjU3ZDAzY2VlZTUxYWIyOGZjY2IzZjQyZDdhMTE3MjY5ZWMyLi5k
ZmU2ZDQ5ZjMzMGI0YmNkYmU1OTUwMmIzZDY3ZTM1NGVlZWFlNWRmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaApAQCAtOTcsNyArOTcsNyBAQCBwcm90
ZWN0ZWQ6CiAgICAgdm9pZCB1cGRhdGVDYXB0aW9uU3R5bGVTaGVldE92ZXJpZGUoKTsKIAogcHJp
dmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRpbWVyRmlyZWQo
KTsKICAgICB2b2lkIG5vdGlmeSgpOwogCiAgICAgUGFnZUdyb3VwJiBtX3BhZ2VHcm91cDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlh
QUYuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFB
Ri5jcHAKaW5kZXggM2JiNzYyOGFiYWYyYzA3ODU0M2VhMzQ5MjQ1NzEwYWVhZjMxNTY3YS4uYTQ4
YzRiNGY1MTg2YWVlNGQyZDQ3Njk0YTliNzE0YzFjNGVmZjEwYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFBRi5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFBRi5jcHAKQEAgLTE0
MSw3ICsxNDEsNyBAQCBzdGF0aWMgdm9pZCB1c2VyQ2FwdGlvblByZWZlcmVuY2VzQ2hhbmdlZE5v
dGlmaWNhdGlvbkNhbGxiYWNrKENGTm90aWZpY2F0aW9uQ2VudAogQ2FwdGlvblVzZXJQcmVmZXJl
bmNlc01lZGlhQUY6OkNhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGKFBhZ2VHcm91cCYgZ3Jv
dXApCiAgICAgOiBDYXB0aW9uVXNlclByZWZlcmVuY2VzKGdyb3VwKQogI2lmIEhBVkUoTUVESUFf
QUNDRVNTSUJJTElUWV9GUkFNRVdPUkspCi0gICAgLCBtX3VwZGF0ZVN0eWxlU2hlZXRUaW1lcih0
aGlzLCAmQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVwZGF0ZVRpbWVyRmlyZWQpCisg
ICAgLCBtX3VwZGF0ZVN0eWxlU2hlZXRUaW1lcigqdGhpcywgJkNhcHRpb25Vc2VyUHJlZmVyZW5j
ZXNNZWRpYUFGOjp1cGRhdGVUaW1lckZpcmVkKQogICAgICwgbV9saXN0ZW5pbmdGb3JQcmVmZXJl
bmNlQ2hhbmdlcyhmYWxzZSkKICNlbmRpZgogewpAQCAtMjI0LDcgKzIyNCw3IEBAIGJvb2wgQ2Fw
dGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVzZXJQcmVmZXJzU3VidGl0bGVzKCkgY29uc3QK
ICAgICByZXR1cm4gIShjYXB0aW9uaW5nTWVkaWFDaGFyYWN0ZXJpc3RpY3MgJiYgQ0ZBcnJheUdl
dENvdW50KGNhcHRpb25pbmdNZWRpYUNoYXJhY3RlcmlzdGljcy5nZXQoKSkpOwogfQogCi12b2lk
IENhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGOjp1cGRhdGVUaW1lckZpcmVkKFRpbWVyJikK
K3ZvaWQgQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVwZGF0ZVRpbWVyRmlyZWQoKQog
ewogICAgIHVwZGF0ZUNhcHRpb25TdHlsZVNoZWV0T3ZlcmlkZSgpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFBRi5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFBRi5oCmluZGV4IDhi
MGJiYzczNGM0YWU3ZGQ5NDQyODhjYjJiNGNkZDY2OWE3OGM3NmIuLjQzZmM5MzMxYTg4OGM2Y2M3
YmM4MDJkYTM0NjgzYWZjOGE0NzM2YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Q2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUYuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0NhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmgKQEAgLTY4LDcgKzY4LDcgQEAgcHVibGlj
OgogCiBwcml2YXRlOgogI2lmIEhBVkUoTUVESUFfQUNDRVNTSUJJTElUWV9GUkFNRVdPUkspCi0g
ICAgdm9pZCB1cGRhdGVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB1cGRhdGVUaW1lckZp
cmVkKCk7CiAKICAgICBTdHJpbmcgY2FwdGlvbnNXaW5kb3dDU1MoKSBjb25zdDsKICAgICBTdHJp
bmcgY2FwdGlvbnNCYWNrZ3JvdW5kQ1NTKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0RldmljZUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9EZXZp
Y2VDb250cm9sbGVyLmNwcAppbmRleCA2YTBlMDExN2JiNmM3YzkxNjc5NWNhZDVmNWQ0MTA5YTEy
MWIwMDkyLi5iZDViYTE5MjNlNzU5ZGM2YmI5NDMxZWVkNDJmYTczYWJjZmI5ZjdiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RldmljZUNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRGV2aWNlQ29udHJvbGxlci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBEZXZpY2VDb250cm9sbGVyOjpEZXZpY2VDb250cm9sbGVyKERl
dmljZUNsaWVudCogY2xpZW50KQogICAgIDogbV9jbGllbnQoY2xpZW50KQotICAgICwgbV90aW1l
cih0aGlzLCAmRGV2aWNlQ29udHJvbGxlcjo6ZmlyZURldmljZUV2ZW50KQorICAgICwgbV90aW1l
cigqdGhpcywgJkRldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudCkKIHsKICAgICBBU1NF
UlQobV9jbGllbnQpOwogfQpAQCAtODQsOSArODQsOCBAQCB2b2lkIERldmljZUNvbnRyb2xsZXI6
OmRpc3BhdGNoRGV2aWNlRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gcHJwRXZlbnQpCiAgICAgfQog
fQogCi12b2lkIERldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudChUaW1lciYgdGltZXIp
Cit2b2lkIERldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudCgpCiB7Ci0gICAgQVNTRVJU
X1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX3RpbWVyKTsKICAgICBBU1NFUlQoaGFzTGFzdERh
dGEoKSk7CiAKICAgICBtX3RpbWVyLnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRGV2aWNlQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9EZXZpY2VDb250
cm9sbGVyLmgKaW5kZXggYzQ2NDAzZDRmNDI3YTc1ZmU5ODI4ZWRhYWU3NmQ2Y2ZjNzhkY2UzNC4u
ZmRmNWQxZDk2ZDE1Nzc2NzZjYTkwOWY5MTg5M2M1N2Y5ODA4YTVjZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9EZXZpY2VDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9EZXZpY2VDb250cm9sbGVyLmgKQEAgLTU2LDcgKzU2LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgUGFzc1JlZlB0cjxFdmVudD4gZ2V0TGFzdEV2ZW50KCkgeyByZXR1cm4gMDsgfQogCiBw
cm90ZWN0ZWQ6Ci0gICAgdm9pZCBmaXJlRGV2aWNlRXZlbnQoVGltZXImKTsKKyAgICB2b2lkIGZp
cmVEZXZpY2VFdmVudCgpOwogCiAgICAgSGFzaENvdW50ZWRTZXQ8UmVmUHRyPERPTVdpbmRvdz4+
IG1fbGlzdGVuZXJzOwogICAgIEhhc2hDb3VudGVkU2V0PFJlZlB0cjxET01XaW5kb3c+PiBtX2xh
c3RFdmVudExpc3RlbmVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBk
MDlkZDYwMzU5M2YwZGMzNDIzZDA4MTQ3YmY1Yzk2ZDljODk0Mzk3Li5jZjk0M2RhMTMzZjI3MGQ2
NmI4MmMyMzI4YjJmMzVjNzEwZGYxMWViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0V2ZW50SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwCkBAIC0zNzYsMTcgKzM3NiwxNyBAQCBFdmVudEhhbmRsZXI6OkV2ZW50SGFuZGxlcihGcmFt
ZSYgZnJhbWUpCiAjZW5kaWYKICAgICAsIG1fbW91c2VEb3duV2FzU2luZ2xlQ2xpY2tJblNlbGVj
dGlvbihmYWxzZSkKICAgICAsIG1fc2VsZWN0aW9uSW5pdGlhdGlvblN0YXRlKEhhdmVOb3RTdGFy
dGVkU2VsZWN0aW9uKQotICAgICwgbV9ob3ZlclRpbWVyKHRoaXMsICZFdmVudEhhbmRsZXI6Omhv
dmVyVGltZXJGaXJlZCkKKyAgICAsIG1faG92ZXJUaW1lcigqdGhpcywgJkV2ZW50SGFuZGxlcjo6
aG92ZXJUaW1lckZpcmVkKQogI2lmIEVOQUJMRShDVVJTT1JfU1VQUE9SVCkKLSAgICAsIG1fY3Vy
c29yVXBkYXRlVGltZXIodGhpcywgJkV2ZW50SGFuZGxlcjo6Y3Vyc29yVXBkYXRlVGltZXJGaXJl
ZCkKKyAgICAsIG1fY3Vyc29yVXBkYXRlVGltZXIoKnRoaXMsICZFdmVudEhhbmRsZXI6OmN1cnNv
clVwZGF0ZVRpbWVyRmlyZWQpCiAjZW5kaWYKLSAgICAsIG1fbG9uZ01vdXNlUHJlc3NUaW1lcih0
aGlzLCAmRXZlbnRIYW5kbGVyOjpyZWNvZ25pemVMb25nTW91c2VQcmVzcykKKyAgICAsIG1fbG9u
Z01vdXNlUHJlc3NUaW1lcigqdGhpcywgJkV2ZW50SGFuZGxlcjo6cmVjb2duaXplTG9uZ01vdXNl
UHJlc3MpCiAgICAgLCBtX2RpZFJlY29nbml6ZUxvbmdNb3VzZVByZXNzKGZhbHNlKQogICAgICwg
bV9hdXRvc2Nyb2xsQ29udHJvbGxlcihzdGQ6Om1ha2VfdW5pcXVlPEF1dG9zY3JvbGxDb250cm9s
bGVyPigpKQogICAgICwgbV9tb3VzZURvd25NYXlTdGFydEF1dG9zY3JvbGwoZmFsc2UpCiAgICAg
LCBtX21vdXNlRG93bldhc0luU3ViZnJhbWUoZmFsc2UpCiAjaWYgIUVOQUJMRShJT1NfVE9VQ0hf
RVZFTlRTKQotICAgICwgbV9mYWtlTW91c2VNb3ZlRXZlbnRUaW1lcih0aGlzLCAmRXZlbnRIYW5k
bGVyOjpmYWtlTW91c2VNb3ZlRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9mYWtlTW91c2VNb3Zl
RXZlbnRUaW1lcigqdGhpcywgJkV2ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJG
aXJlZCkKICNlbmRpZgogICAgICwgbV9zdmdQYW4oZmFsc2UpCiAgICAgLCBtX3Jlc2l6ZUxheWVy
KDApCkBAIC00MjAsNyArNDIwLDcgQEAgRXZlbnRIYW5kbGVyOjpFdmVudEhhbmRsZXIoRnJhbWUm
IGZyYW1lKQogICAgICwgbV9kaWRMb25nUHJlc3NJbnZva2VDb250ZXh0TWVudShmYWxzZSkKICAg
ICAsIG1faXNIYW5kbGluZ1doZWVsRXZlbnQoZmFsc2UpCiAjaWYgRU5BQkxFKENVUlNPUl9WSVNJ
QklMSVRZKQotICAgICwgbV9hdXRvSGlkZUN1cnNvclRpbWVyKHRoaXMsICZFdmVudEhhbmRsZXI6
OmF1dG9IaWRlQ3Vyc29yVGltZXJGaXJlZCkKKyAgICAsIG1fYXV0b0hpZGVDdXJzb3JUaW1lcigq
dGhpcywgJkV2ZW50SGFuZGxlcjo6YXV0b0hpZGVDdXJzb3JUaW1lckZpcmVkKQogI2VuZGlmCiB7
CiB9CkBAIC0xMzEwLDcgKzEzMTAsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6dXNlSGFuZEN1cnNv
cihOb2RlKiBub2RlLCBib29sIGlzT3ZlckxpbmssIGJvb2wgc2hpZnRLZXkpCiAgICAgcmV0dXJu
ICgoaXNPdmVyTGluayB8fCBpc1N1Ym1pdEltYWdlKG5vZGUpKSAmJiAoIWVkaXRhYmxlIHx8IGVk
aXRhYmxlTGlua0VuYWJsZWQpKTsKIH0KIAotdm9pZCBFdmVudEhhbmRsZXI6OmN1cnNvclVwZGF0
ZVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBFdmVudEhhbmRsZXI6OmN1cnNvclVwZGF0ZVRpbWVy
RmlyZWQoKQogewogICAgIEFTU0VSVChtX2ZyYW1lLmRvY3VtZW50KCkpOwogICAgIHVwZGF0ZUN1
cnNvcigpOwpAQCAtMTU1Myw5ICsxNTUzLDggQEAgdm9pZCBFdmVudEhhbmRsZXI6OmNhbmNlbEF1
dG9IaWRlQ3Vyc29yVGltZXIoKQogICAgICAgICBtX2F1dG9IaWRlQ3Vyc29yVGltZXIuc3RvcCgp
OwogfQogCi12b2lkIEV2ZW50SGFuZGxlcjo6YXV0b0hpZGVDdXJzb3JUaW1lckZpcmVkKFRpbWVy
JiB0aW1lcikKK3ZvaWQgRXZlbnRIYW5kbGVyOjphdXRvSGlkZUN1cnNvclRpbWVyRmlyZWQoKQog
ewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV9hdXRvSGlkZUN1cnNvclRp
bWVyKTsKICAgICBtX2N1cnJlbnRNb3VzZUN1cnNvciA9IG5vbmVDdXJzb3IoKTsKICAgICBGcmFt
ZVZpZXcqIHZpZXcgPSBtX2ZyYW1lLnZpZXcoKTsKICAgICBpZiAodmlldyAmJiB2aWV3LT5pc0Fj
dGl2ZSgpKQpAQCAtMTU3NiwxMCArMTU3NSw4IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpiZWdpblRy
YWNraW5nUG90ZW50aWFsTG9uZ01vdXNlUHJlc3MoY29uc3QgSGl0VGVzdFJlc3VsdCYgaGl0CiAg
ICAgcGFnZS0+Y2hyb21lKCkuZGlkQmVnaW5UcmFja2luZ1BvdGVudGlhbExvbmdNb3VzZVByZXNz
KG1fbW91c2VEb3duUG9zLCBoaXRUZXN0UmVzdWx0KTsKIH0KICAgICAKLXZvaWQgRXZlbnRIYW5k
bGVyOjpyZWNvZ25pemVMb25nTW91c2VQcmVzcyhUaW1lciYgdGltZXIpCit2b2lkIEV2ZW50SGFu
ZGxlcjo6cmVjb2duaXplTG9uZ01vdXNlUHJlc3MoKQogewotICAgIEFTU0VSVF9VTlVTRUQodGlt
ZXIsICZ0aW1lciA9PSAmbV9sb25nTW91c2VQcmVzc1RpbWVyKTsKLQogICAgIFBhZ2UqIHBhZ2Ug
PSBtX2ZyYW1lLnBhZ2UoKTsKICAgICBpZiAoIXBhZ2UpCiAgICAgICAgIHJldHVybjsKQEAgLTI5
NDQsOSArMjk0MSw4IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpjYW5jZWxGYWtlTW91c2VNb3ZlRXZl
bnQoKQogICAgIG1fZmFrZU1vdXNlTW92ZUV2ZW50VGltZXIuc3RvcCgpOwogfQogCi12b2lkIEV2
ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZChUaW1lciYgdGltZXIpCit2
b2lkIEV2ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZCgpCiB7Ci0gICAg
QVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2Zha2VNb3VzZU1vdmVFdmVudFRpbWVy
KTsKICAgICBBU1NFUlQoIW1fbW91c2VQcmVzc2VkKTsKIAogICAgIGlmICghbV9mcmFtZS5zZXR0
aW5ncygpLmRldmljZVN1cHBvcnRzTW91c2UoKSkKQEAgLTI5ODAsNyArMjk3Niw3IEBAIHZvaWQg
RXZlbnRIYW5kbGVyOjpyZXNpemVMYXllckRlc3Ryb3llZCgpCiAgICAgbV9yZXNpemVMYXllciA9
IDA7CiB9CiAKLXZvaWQgRXZlbnRIYW5kbGVyOjpob3ZlclRpbWVyRmlyZWQoVGltZXImKQordm9p
ZCBFdmVudEhhbmRsZXI6OmhvdmVyVGltZXJGaXJlZCgpCiB7CiAgICAgbV9ob3ZlclRpbWVyLnN0
b3AoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggNTlkZmUwYTI0ZWFkZTNj
ZmVlZTcxNjk1MzFiMDMwMWU4M2I1Mjg3Ny4uODgwZDYyOTRmNTQ4YzRmY2YxMjYxNGQzYmJlN2Yw
NGMxMzcyOWRmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0zMjYsOSArMzI2
LDkgQEAgcHJpdmF0ZToKIAogICAgIE9wdGlvbmFsQ3Vyc29yIHNlbGVjdEN1cnNvcihjb25zdCBI
aXRUZXN0UmVzdWx0JiwgYm9vbCBzaGlmdEtleSk7CiAKLSAgICB2b2lkIGhvdmVyVGltZXJGaXJl
ZChUaW1lciYpOworICAgIHZvaWQgaG92ZXJUaW1lckZpcmVkKCk7CiAjaWYgRU5BQkxFKENVUlNP
Ul9TVVBQT1JUKQotICAgIHZvaWQgY3Vyc29yVXBkYXRlVGltZXJGaXJlZChUaW1lciYpOworICAg
IHZvaWQgY3Vyc29yVXBkYXRlVGltZXJGaXJlZCgpOwogI2VuZGlmCiAKICAgICBib29sIGxvZ2lj
YWxTY3JvbGxPdmVyZmxvdyhTY3JvbGxMb2dpY2FsRGlyZWN0aW9uLCBTY3JvbGxHcmFudWxhcml0
eSwgTm9kZSogc3RhcnRpbmdOb2RlID0gMCk7CkBAIC0zNDEsNyArMzQxLDcgQEAgcHJpdmF0ZToK
ICAgICBzdGF0aWMgYm9vbCBldmVudEludmVydHNUYWJzVG9MaW5rc0NsaWVudENhbGxSZXN1bHQo
S2V5Ym9hcmRFdmVudCopOwogCiAjaWYgIUVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAgIHZv
aWQgZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgZmFrZU1v
dXNlTW92ZUV2ZW50VGltZXJGaXJlZCgpOwogICAgIHZvaWQgY2FuY2VsRmFrZU1vdXNlTW92ZUV2
ZW50KCk7CiAjZW5kaWYKIApAQCAtNDM3LDExICs0MzcsMTEgQEAgcHJpdmF0ZToKICNpZiBFTkFC
TEUoQ1VSU09SX1ZJU0lCSUxJVFkpCiAgICAgdm9pZCBzdGFydEF1dG9IaWRlQ3Vyc29yVGltZXIo
KTsKICAgICB2b2lkIGNhbmNlbEF1dG9IaWRlQ3Vyc29yVGltZXIoKTsKLSAgICB2b2lkIGF1dG9I
aWRlQ3Vyc29yVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgYXV0b0hpZGVDdXJzb3JUaW1l
ckZpcmVkKCk7CiAjZW5kaWYKIAogICAgIHZvaWQgYmVnaW5UcmFja2luZ1BvdGVudGlhbExvbmdN
b3VzZVByZXNzKGNvbnN0IEhpdFRlc3RSZXN1bHQmKTsKLSAgICB2b2lkIHJlY29nbml6ZUxvbmdN
b3VzZVByZXNzKFRpbWVyJik7CisgICAgdm9pZCByZWNvZ25pemVMb25nTW91c2VQcmVzcygpOwog
ICAgIHZvaWQgY2FuY2VsVHJhY2tpbmdQb3RlbnRpYWxMb25nTW91c2VQcmVzcygpOwogICAgIGJv
b2wgbG9uZ01vdXNlUHJlc3NIeXN0ZXJlc2lzRXhjZWVkZWQoKTsKICAgICB2b2lkIGNsZWFyTG9u
Z01vdXNlUHJlc3NTdGF0ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNwcAppbmRleCA2
MzVjOGVhZDBhYmZiNjYwYWM2NjQzOTQ3ZTQyZmFlNzM0NDk3MTVhLi43MWFkODJjNTZiYmRiMjMz
ZjJlODU0ODIwYzY2YThmMGNmOWUxN2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0V2ZW50U291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNw
cApAQCAtNjUsNyArNjUsNyBAQCBpbmxpbmUgRXZlbnRTb3VyY2U6OkV2ZW50U291cmNlKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFVSTCYgdXJsLAogICAgICwgbV93aXRo
Q3JlZGVudGlhbHMoZmFsc2UpCiAgICAgLCBtX3N0YXRlKENPTk5FQ1RJTkcpCiAgICAgLCBtX2Rl
Y29kZXIoVGV4dFJlc291cmNlRGVjb2Rlcjo6Y3JlYXRlKCJ0ZXh0L3BsYWluIiwgIlVURi04Iikp
Ci0gICAgLCBtX2Nvbm5lY3RUaW1lcih0aGlzLCAmRXZlbnRTb3VyY2U6OmNvbm5lY3RUaW1lckZp
cmVkKQorICAgICwgbV9jb25uZWN0VGltZXIoKnRoaXMsICZFdmVudFNvdXJjZTo6Y29ubmVjdFRp
bWVyRmlyZWQpCiAgICAgLCBtX2Rpc2NhcmRUcmFpbGluZ05ld2xpbmUoZmFsc2UpCiAgICAgLCBt
X3JlcXVlc3RJbkZsaWdodChmYWxzZSkKICAgICAsIG1fcmVjb25uZWN0RGVsYXkoZGVmYXVsdFJl
Y29ubmVjdERlbGF5KQpAQCAtMTcwLDcgKzE3MCw3IEBAIHZvaWQgRXZlbnRTb3VyY2U6OnNjaGVk
dWxlUmVjb25uZWN0KCkKICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1l
cygpLmVycm9yRXZlbnQsIGZhbHNlLCBmYWxzZSkpOwogfQogCi12b2lkIEV2ZW50U291cmNlOjpj
b25uZWN0VGltZXJGaXJlZChUaW1lciYpCit2b2lkIEV2ZW50U291cmNlOjpjb25uZWN0VGltZXJG
aXJlZCgpCiB7CiAgICAgY29ubmVjdCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudFNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oCmlu
ZGV4IGE0NTI1ZjQyM2NmYzJlMTI1ZTNjZjVmM2U5MzQ5Nzc1M2NmMzdjZjQuLmZhYzczMzJlNTI3
ZGY1ZTdiZDJlZWJhYzMyZDgxZjRlMmU4YWUxNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRXZlbnRTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNl
LmgKQEAgLTk3LDcgKzk3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIG5ldHdvcmtSZXF1ZXN0RW5k
ZWQoKTsKICAgICB2b2lkIHNjaGVkdWxlSW5pdGlhbENvbm5lY3QoKTsKICAgICB2b2lkIHNjaGVk
dWxlUmVjb25uZWN0KCk7Ci0gICAgdm9pZCBjb25uZWN0VGltZXJGaXJlZChUaW1lciYpOworICAg
IHZvaWQgY29ubmVjdFRpbWVyRmlyZWQoKTsKICAgICB2b2lkIGFib3J0Q29ubmVjdGlvbkF0dGVt
cHQoKTsKICAgICB2b2lkIHBhcnNlRXZlbnRTdHJlYW0oKTsKICAgICB2b2lkIHBhcnNlRXZlbnRT
dHJlYW1MaW5lKHVuc2lnbmVkIHBvcywgaW50IGZpZWxkTGVuZ3RoLCBpbnQgbGluZUxlbmd0aCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggN2E1ZjVkNGFkMTI2
ODMyZWZjNGU5OTdhODY1OTgyOThmMzA0MTYyNi4uZGJjNzkzYThiODBiZGUxMTZlZDQ4Zjk2YTdj
ZDFjODk4ODhmNTYyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRy
b2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcApA
QCAtMTY0LDcgKzE2NCw3IEBAIEZvY3VzQ29udHJvbGxlcjo6Rm9jdXNDb250cm9sbGVyKFBhZ2Um
IHBhZ2UsIFZpZXdTdGF0ZTo6RmxhZ3Mgdmlld1N0YXRlKQogICAgIDogbV9wYWdlKHBhZ2UpCiAg
ICAgLCBtX2lzQ2hhbmdpbmdGb2N1c2VkRnJhbWUoZmFsc2UpCiAgICAgLCBtX3ZpZXdTdGF0ZSh2
aWV3U3RhdGUpCi0gICAgLCBtX2ZvY3VzUmVwYWludFRpbWVyKHRoaXMsICZGb2N1c0NvbnRyb2xs
ZXI6OmZvY3VzUmVwYWludFRpbWVyRmlyZWQpCisgICAgLCBtX2ZvY3VzUmVwYWludFRpbWVyKCp0
aGlzLCAmRm9jdXNDb250cm9sbGVyOjpmb2N1c1JlcGFpbnRUaW1lckZpcmVkKQogewogfQogCkBA
IC05MTIsNyArOTEyLDcgQEAgdm9pZCBGb2N1c0NvbnRyb2xsZXI6OnNldEZvY3VzZWRFbGVtZW50
TmVlZHNSZXBhaW50KCkKICAgICBtX2ZvY3VzUmVwYWludFRpbWVyLnN0YXJ0T25lU2hvdCgwLjAz
Myk7CiB9CiAKLXZvaWQgRm9jdXNDb250cm9sbGVyOjpmb2N1c1JlcGFpbnRUaW1lckZpcmVkKFRp
bWVyJikKK3ZvaWQgRm9jdXNDb250cm9sbGVyOjpmb2N1c1JlcGFpbnRUaW1lckZpcmVkKCkKIHsK
ICAgICBEb2N1bWVudCogZm9jdXNlZERvY3VtZW50ID0gZm9jdXNlZE9yTWFpbkZyYW1lKCkuZG9j
dW1lbnQoKTsKICAgICBpZiAoIWZvY3VzZWREb2N1bWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3Vz
Q29udHJvbGxlci5oCmluZGV4IDM2ZjEyMDA4NDk3Y2E1ZThmNzE5OTc1NWJjMzUzYWM2NGY5Mzlj
OTcuLjJmYjFmYTU0MDJjNTZlOWQxYTgzMzhkOWZjYjIwZWE2YzhjYzI2ZGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuaApAQCAtMTIwLDcgKzEyMCw3IEBAIHByaXZhdGU6CiAg
ICAgYm9vbCBhZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5SW5Db250YWluZXIoTm9kZSogY29udGFp
bmVyLCBjb25zdCBMYXlvdXRSZWN0JiBzdGFydGluZ1JlY3QsIEZvY3VzRGlyZWN0aW9uLCBLZXli
b2FyZEV2ZW50Kik7CiAgICAgdm9pZCBmaW5kRm9jdXNDYW5kaWRhdGVJbkNvbnRhaW5lcihOb2Rl
KiBjb250YWluZXIsIGNvbnN0IExheW91dFJlY3QmIHN0YXJ0aW5nUmVjdCwgRm9jdXNEaXJlY3Rp
b24sIEtleWJvYXJkRXZlbnQqLCBGb2N1c0NhbmRpZGF0ZSYgY2xvc2VzdCk7CiAKLSAgICB2b2lk
IGZvY3VzUmVwYWludFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGZvY3VzUmVwYWludFRp
bWVyRmlyZWQoKTsKIAogICAgIFBhZ2UmIG1fcGFnZTsKICAgICBSZWZQdHI8RnJhbWU+IG1fZm9j
dXNlZEZyYW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAppbmRleCA5YzM3NmE5MDUzZDkwNjJkZDAzZGMz
ZjQyMjUwMzA5MDdiYzI1MmVlLi40OThiZDZkNzgxOTFkZjE3NjY3MWExZDNkMGMxMjE3OTU4MzI1
NDQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMTYyLDcgKzE2Miw3IEBAIEZyYW1lOjpGcmFt
ZShQYWdlJiBwYWdlLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxlbWVudCwgRnJhbWVM
b2FkZXJDbGllbnQmCiAgICAgLCBtX2V2ZW50SGFuZGxlcihzdGQ6Om1ha2VfdW5pcXVlPEV2ZW50
SGFuZGxlcj4oKnRoaXMpKQogICAgICwgbV9hbmltYXRpb25Db250cm9sbGVyKHN0ZDo6bWFrZV91
bmlxdWU8QW5pbWF0aW9uQ29udHJvbGxlcj4oKnRoaXMpKQogI2lmIFBMQVRGT1JNKElPUykKLSAg
ICAsIG1fb3ZlcmZsb3dBdXRvU2Nyb2xsVGltZXIodGhpcywgJkZyYW1lOjpvdmVyZmxvd0F1dG9T
Y3JvbGxUaW1lckZpcmVkKQorICAgICwgbV9vdmVyZmxvd0F1dG9TY3JvbGxUaW1lcigqdGhpcywg
JkZyYW1lOjpvdmVyZmxvd0F1dG9TY3JvbGxUaW1lckZpcmVkKQogICAgICwgbV9zZWxlY3Rpb25D
aGFuZ2VDYWxsYmFja3NEaXNhYmxlZChmYWxzZSkKICAgICAsIG1fdGltZXJzUGF1c2VkQ291bnQo
MCkKICNlbmRpZgpAQCAtNTE2LDcgKzUxNiw3IEBAIHZvaWQgRnJhbWU6OnNjcm9sbE92ZXJmbG93
TGF5ZXIoUmVuZGVyTGF5ZXIqIGxheWVyLCBjb25zdCBJbnRSZWN0JiB2aXNpYmxlUmVjdCwKICAg
ICBzZWxlY3Rpb24oKS51cGRhdGVBcHBlYXJhbmNlKCk7CiB9CiAKLXZvaWQgRnJhbWU6Om92ZXJm
bG93QXV0b1Njcm9sbFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBGcmFtZTo6b3ZlcmZsb3dBdXRv
U2Nyb2xsVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFldmVudEhhbmRsZXIoKS5tb3VzZVByZXNz
ZWQoKSB8fCBjaGVja092ZXJmbG93U2Nyb2xsKFBlcmZvcm1PdmVyZmxvd1Njcm9sbCkgPT0gT3Zl
cmZsb3dTY3JvbGxOb25lKSB7CiAgICAgICAgIGlmIChtX292ZXJmbG93QXV0b1Njcm9sbFRpbWVy
LmlzQWN0aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmggYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmgKaW5kZXggYmU3NDk0MjU5N2FhMzBkMGZlZTM5MWQ4
ZTU3ZjI1ZTBhYjQwNmM2My4uZWExNmFhZGUwZTA2OTdkYzc0M2ZjYzBiNjA4YzZhYjI3Y2VhZDQ3
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRnJhbWUuaApAQCAtMjk1LDcgKzI5NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgYm9vbCBoaXRUZXN0UmVzdWx0QXRWaWV3cG9ydExvY2F0aW9uKGNvbnN0IEZs
b2F0UG9pbnQmIHZpZXdwb3J0TG9jYXRpb24sIEhpdFRlc3RSZXN1bHQmLCBJbnRQb2ludCYgY2Vu
dGVyKTsKICAgICAgICAgTm9kZSogcXVhbGlmeWluZ05vZGVBdFZpZXdwb3J0TG9jYXRpb24oY29u
c3QgRmxvYXRQb2ludCYgdmlld3BvcnRMb2NhdGlvbiwgRmxvYXRQb2ludCYgYWRqdXN0ZWRWaWV3
cG9ydExvY2F0aW9uLCBOb2RlUXVhbGlmaWVyLCBib29sIHNob3VsZEFwcHJveGltYXRlKTsKIAot
ICAgICAgICB2b2lkIG92ZXJmbG93QXV0b1Njcm9sbFRpbWVyRmlyZWQoVGltZXIqKTsKKyAgICAg
ICAgdm9pZCBvdmVyZmxvd0F1dG9TY3JvbGxUaW1lckZpcmVkKCk7CiAgICAgICAgIHZvaWQgc3Rh
cnRPdmVyZmxvd0F1dG9TY3JvbGwoY29uc3QgSW50UG9pbnQmKTsKICAgICAgICAgaW50IGNoZWNr
T3ZlcmZsb3dTY3JvbGwoT3ZlcmZsb3dTY3JvbGxBY3Rpb24pOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1l
Vmlldy5jcHAKaW5kZXggNGE2Y2RiN2EwNjJiOGE4OWJiYzFhZTA0MjAwZGVlNDk1NGY1NzAwNS4u
ODM0ZTllOGZmZmRlNWI3NDRhYzA3ZjVkOWI1Njc2MWE1ZTgxMWIwOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RnJhbWVWaWV3LmNwcApAQCAtMTYzLDEyICsxNjMsMTIgQEAgUGFnaW5hdGlvbjo6TW9kZSBwYWdp
bmF0aW9uTW9kZUZvclJlbmRlclN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIEZyYW1l
Vmlldzo6RnJhbWVWaWV3KEZyYW1lJiBmcmFtZSkKICAgICA6IG1fZnJhbWUoJmZyYW1lKQogICAg
ICwgbV9jYW5IYXZlU2Nyb2xsYmFycyh0cnVlKQotICAgICwgbV9sYXlvdXRUaW1lcih0aGlzLCAm
RnJhbWVWaWV3OjpsYXlvdXRUaW1lckZpcmVkKQorICAgICwgbV9sYXlvdXRUaW1lcigqdGhpcywg
JkZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZCkKICAgICAsIG1fbGF5b3V0Um9vdCgwKQogICAg
ICwgbV9sYXlvdXRQaGFzZShPdXRzaWRlTGF5b3V0KQogICAgICwgbV9pblN5bmNocm9ub3VzUG9z
dExheW91dChmYWxzZSkKLSAgICAsIG1fcG9zdExheW91dFRhc2tzVGltZXIodGhpcywgJkZyYW1l
Vmlldzo6cG9zdExheW91dFRpbWVyRmlyZWQpCi0gICAgLCBtX3VwZGF0ZUVtYmVkZGVkT2JqZWN0
c1RpbWVyKHRoaXMsICZGcmFtZVZpZXc6OnVwZGF0ZUVtYmVkZGVkT2JqZWN0c1RpbWVyRmlyZWQp
CisgICAgLCBtX3Bvc3RMYXlvdXRUYXNrc1RpbWVyKCp0aGlzLCAmRnJhbWVWaWV3Ojpwb3N0TGF5
b3V0VGltZXJGaXJlZCkKKyAgICAsIG1fdXBkYXRlRW1iZWRkZWRPYmplY3RzVGltZXIoKnRoaXMs
ICZGcmFtZVZpZXc6OnVwZGF0ZUVtYmVkZGVkT2JqZWN0c1RpbWVyRmlyZWQpCiAgICAgLCBtX2lz
VHJhbnNwYXJlbnQoZmFsc2UpCiAgICAgLCBtX2Jhc2VCYWNrZ3JvdW5kQ29sb3IoQ29sb3I6Ondo
aXRlKQogICAgICwgbV9tZWRpYVR5cGUoInNjcmVlbiIpCkBAIC0xNzcsMTQgKzE3NywxNCBAQCBG
cmFtZVZpZXc6OkZyYW1lVmlldyhGcmFtZSYgZnJhbWUpCiAgICAgLCBtX3dhc1Njcm9sbGVkQnlV
c2VyKGZhbHNlKQogICAgICwgbV9pblByb2dyYW1tYXRpY1Njcm9sbChmYWxzZSkKICAgICAsIG1f
c2FmZVRvUHJvcGFnYXRlU2Nyb2xsVG9QYXJlbnQodHJ1ZSkKLSAgICAsIG1fZGVsYXllZFNjcm9s
bEV2ZW50VGltZXIodGhpcywgJkZyYW1lVmlldzo6ZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJl
ZCkKKyAgICAsIG1fZGVsYXllZFNjcm9sbEV2ZW50VGltZXIoKnRoaXMsICZGcmFtZVZpZXc6OmRl
bGF5ZWRTY3JvbGxFdmVudFRpbWVyRmlyZWQpCiAgICAgLCBtX2lzVHJhY2tpbmdSZXBhaW50cyhm
YWxzZSkKICAgICAsIG1fc2hvdWxkVXBkYXRlV2hpbGVPZmZzY3JlZW4odHJ1ZSkKICAgICAsIG1f
ZXhwb3NlZFJlY3QoRmxvYXRSZWN0OjppbmZpbml0ZVJlY3QoKSkKICAgICAsIG1fZGVmZXJTZXRO
ZWVkc0xheW91dHMoMCkKICAgICAsIG1fc2V0TmVlZHNMYXlvdXRXYXNEZWZlcnJlZChmYWxzZSkK
ICAgICAsIG1fc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVkKGZhbHNlKQotICAgICwgbV9zcGVjdWxh
dGl2ZVRpbGluZ0VuYWJsZVRpbWVyKHRoaXMsICZGcmFtZVZpZXc6OnNwZWN1bGF0aXZlVGlsaW5n
RW5hYmxlVGltZXJGaXJlZCkKKyAgICAsIG1fc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVUaW1lcigq
dGhpcywgJkZyYW1lVmlldzo6c3BlY3VsYXRpdmVUaWxpbmdFbmFibGVUaW1lckZpcmVkKQogI2lm
IFBMQVRGT1JNKElPUykKICAgICAsIG1fdXNlQ3VzdG9tRml4ZWRQb3NpdGlvbkxheW91dFJlY3Qo
ZmFsc2UpCiAgICAgLCBtX3VzZUN1c3RvbVNpemVGb3JSZXNpemVFdmVudChmYWxzZSkKQEAgLTE3
NDMsNyArMTc0Myw3IEBAIEludFBvaW50IEZyYW1lVmlldzo6bWF4aW11bVNjcm9sbFBvc2l0aW9u
KCkgY29uc3QKICAgICByZXR1cm4gbWF4aW11bU9mZnNldDsKIH0KIAotdm9pZCBGcmFtZVZpZXc6
OmRlbGF5ZWRTY3JvbGxFdmVudFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBGcmFtZVZpZXc6OmRl
bGF5ZWRTY3JvbGxFdmVudFRpbWVyRmlyZWQoKQogewogICAgIHNlbmRTY3JvbGxFdmVudCgpOwog
fQpAQCAtMjQwNiw3ICsyNDA2LDcgQEAgdm9pZCBGcmFtZVZpZXc6OmVuYWJsZVNwZWN1bGF0aXZl
VGlsaW5nSWZOZWVkZWQoKQogICAgIG1fc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVUaW1lci5zdGFy
dE9uZVNob3Qoc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVEZWxheSk7CiB9CiAKLXZvaWQgRnJhbWVW
aWV3OjpzcGVjdWxhdGl2ZVRpbGluZ0VuYWJsZVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBGcmFt
ZVZpZXc6OnNwZWN1bGF0aXZlVGlsaW5nRW5hYmxlVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1f
c3BlY3VsYXRpdmVUaWxpbmdFbmFibGVkKQogICAgICAgICByZXR1cm47CkBAIC0yNDE0LDcgKzI0
MTQsNyBAQCB2b2lkIEZyYW1lVmlldzo6c3BlY3VsYXRpdmVUaWxpbmdFbmFibGVUaW1lckZpcmVk
KFRpbWVyJikKICAgICBhZGp1c3RUaWxlZEJhY2tpbmdDb3ZlcmFnZSgpOwogfQogCi12b2lkIEZy
YW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZChUaW1lciYpCit2b2lkIEZyYW1lVmlldzo6bGF5b3V0
VGltZXJGaXJlZCgpCiB7CiAjaWZkZWYgSU5TVFJVTUVOVF9MQVlPVVRfU0NIRURVTElORwogICAg
IGlmICghZnJhbWUoKS5kb2N1bWVudCgpLT5vd25lckVsZW1lbnQoKSkKQEAgLTI4NTYsNyArMjg1
Niw3IEBAIGJvb2wgRnJhbWVWaWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHMoKQogICAgIHJldHVy
biBtX2VtYmVkZGVkT2JqZWN0c1RvVXBkYXRlLT5pc0VtcHR5KCk7CiB9CiAKLXZvaWQgRnJhbWVW
aWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHNUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgRnJhbWVW
aWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHNUaW1lckZpcmVkKCkKIHsKICAgICBSZWZQdHI8RnJh
bWVWaWV3PiBwcm90ZWN0KHRoaXMpOwogICAgIG1fdXBkYXRlRW1iZWRkZWRPYmplY3RzVGltZXIu
c3RvcCgpOwpAQCAtMjg3MSw3ICsyODcxLDcgQEAgdm9pZCBGcmFtZVZpZXc6OmZsdXNoQW55UGVu
ZGluZ1Bvc3RMYXlvdXRUYXNrcygpCiAgICAgaWYgKG1fcG9zdExheW91dFRhc2tzVGltZXIuaXNB
Y3RpdmUoKSkKICAgICAgICAgcGVyZm9ybVBvc3RMYXlvdXRUYXNrcygpOwogICAgIGlmIChtX3Vw
ZGF0ZUVtYmVkZGVkT2JqZWN0c1RpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIHVwZGF0ZUVtYmVk
ZGVkT2JqZWN0c1RpbWVyRmlyZWQobnVsbHB0cik7CisgICAgICAgIHVwZGF0ZUVtYmVkZGVkT2Jq
ZWN0c1RpbWVyRmlyZWQoKTsKIH0KIAogdm9pZCBGcmFtZVZpZXc6OnBlcmZvcm1Qb3N0TGF5b3V0
VGFza3MoKQpAQCAtMzAwOSw3ICszMDA5LDcgQEAgdm9pZCBGcmFtZVZpZXc6OndpbGxFbmRMaXZl
UmVzaXplKCkKICAgICBhZGp1c3RUaWxlZEJhY2tpbmdDb3ZlcmFnZSgpOwogfQogCi12b2lkIEZy
YW1lVmlldzo6cG9zdExheW91dFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBGcmFtZVZpZXc6OnBv
c3RMYXlvdXRUaW1lckZpcmVkKCkKIHsKICAgICBwZXJmb3JtUG9zdExheW91dFRhc2tzKCk7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9GcmFtZVZpZXcuaAppbmRleCBiYzE4ZmUxOWFlMTMyNzIxOTk0M2YxMTc5MTJl
ZGYwNjRmMzMyOGIyLi5mNWI1ZTVkMTA3MTYyZmY0ZDdmMjI4M2NmNTEzMGM4MjM3ODE4MmNiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgKQEAgLTEwNiw3ICsxMDYsNyBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIGxheW91dChib29sIGFsbG93U3VidHJlZSA9IHRydWUpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgZGlkRmlyc3RMYXlvdXQoKSBjb25zdDsKLSAgICB2b2lkIGxheW91dFRpbWVyRmly
ZWQoVGltZXImKTsKKyAgICB2b2lkIGxheW91dFRpbWVyRmlyZWQoKTsKICAgICB2b2lkIHNjaGVk
dWxlUmVsYXlvdXQoKTsKICAgICB2b2lkIHNjaGVkdWxlUmVsYXlvdXRPZlN1YnRyZWUoUmVuZGVy
RWxlbWVudCYpOwogICAgIHZvaWQgdW5zY2hlZHVsZVJlbGF5b3V0KCk7CkBAIC0yNDEsNyArMjQx
LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkg
Y29uc3Qgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCBJbnRQb2ludCBtaW5p
bXVtU2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKICAgICBXRUJDT1JFX0VYUE9SVCB2
aXJ0dWFsIEludFBvaW50IG1heGltdW1TY3JvbGxQb3NpdGlvbigpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIHZvaWQgZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQg
ZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCByZXN1bWVWaXNpYmxl
SW1hZ2VBbmltYXRpb25zSW5jbHVkaW5nU3ViZnJhbWVzKCk7CiAKQEAgLTMwMyw3ICszMDMsNyBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIHJlc3RvcmVTY3JvbGxiYXIoKTsKIAotICAgIHZvaWQgcG9z
dExheW91dFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHBvc3RMYXlvdXRUaW1lckZpcmVk
KCk7CiAKICAgICB2b2lkIHJlZ2lzdGVyVGhyb3R0bGVkRE9NVGltZXIoRE9NVGltZXIqKTsKICAg
ICB2b2lkIHVucmVnaXN0ZXJUaHJvdHRsZWRET01UaW1lcihET01UaW1lciopOwpAQCAtNjEzLDkg
KzYxMyw5IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeVBhZ2VUaGF0Q29udGVu
dEFyZWFXaWxsUGFpbnQoKSBjb25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgZW5hYmxlU3BlY3Vs
YXRpdmVUaWxpbmdJZk5lZWRlZCgpOwotICAgIHZvaWQgc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVU
aW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBzcGVjdWxhdGl2ZVRpbGluZ0VuYWJsZVRpbWVy
RmlyZWQoKTsKIAotICAgIHZvaWQgdXBkYXRlRW1iZWRkZWRPYmplY3RzVGltZXJGaXJlZChUaW1l
ciopOworICAgIHZvaWQgdXBkYXRlRW1iZWRkZWRPYmplY3RzVGltZXJGaXJlZCgpOwogICAgIGJv
b2wgdXBkYXRlRW1iZWRkZWRPYmplY3RzKCk7CiAgICAgdm9pZCB1cGRhdGVFbWJlZGRlZE9iamVj
dChSZW5kZXJFbWJlZGRlZE9iamVjdCYpOwogICAgIHZvaWQgc2Nyb2xsVG9BbmNob3IoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZU92ZXJsYXkuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5jcHAKaW5kZXggMjU0ZDg5YjY3ZjMzZDBlNGM5MTRjMmIy
ODZlODI0YzVjZmQ4OTMzYS4uM2JiZDg0OWRlN2Q1OGZjZThkZTg5ZDdjNmFkZjBhZWNjOTc1Njhk
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgUGFz
c1JlZlB0cjxQYWdlT3ZlcmxheT4gUGFnZU92ZXJsYXk6OmNyZWF0ZShDbGllbnQmIGNsaWVudCwg
T3ZlcmxheVR5cGUgb3ZlcmxheVQKIFBhZ2VPdmVybGF5OjpQYWdlT3ZlcmxheShDbGllbnQmIGNs
aWVudCwgT3ZlcmxheVR5cGUgb3ZlcmxheVR5cGUpCiAgICAgOiBtX2NsaWVudChjbGllbnQpCiAg
ICAgLCBtX3BhZ2UobnVsbHB0cikKLSAgICAsIG1fZmFkZUFuaW1hdGlvblRpbWVyKHRoaXMsICZQ
YWdlT3ZlcmxheTo6ZmFkZUFuaW1hdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX2ZhZGVBbmltYXRp
b25UaW1lcigqdGhpcywgJlBhZ2VPdmVybGF5OjpmYWRlQW5pbWF0aW9uVGltZXJGaXJlZCkKICAg
ICAsIG1fZmFkZUFuaW1hdGlvblN0YXJ0VGltZSgwKQogICAgICwgbV9mYWRlQW5pbWF0aW9uRHVy
YXRpb24oZmFkZUFuaW1hdGlvbkR1cmF0aW9uKQogICAgICwgbV9mYWRlQW5pbWF0aW9uVHlwZShO
b0FuaW1hdGlvbikKQEAgLTIzMiw3ICsyMzIsNyBAQCB2b2lkIFBhZ2VPdmVybGF5OjpzdGFydEZh
ZGVBbmltYXRpb24oKQogICAgIG1fZmFkZUFuaW1hdGlvblRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEg
LyBmYWRlQW5pbWF0aW9uRnJhbWVSYXRlKTsKIH0KIAotdm9pZCBQYWdlT3ZlcmxheTo6ZmFkZUFu
aW1hdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9pZCBQYWdlT3ZlcmxheTo6ZmFkZUFuaW1hdGlv
blRpbWVyRmlyZWQoKQogewogICAgIGZsb2F0IGFuaW1hdGlvblByb2dyZXNzID0gKGN1cnJlbnRU
aW1lKCkgLSBtX2ZhZGVBbmltYXRpb25TdGFydFRpbWUpIC8gbV9mYWRlQW5pbWF0aW9uRHVyYXRp
b247CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZU92ZXJsYXkuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGFnZU92ZXJsYXkuaAppbmRleCBlOGRhNzc5NzIzNmYyNTBiNzdh
MjQyYjk4ODNhNmEyYjhjYzg4ZmRkLi44N2Y1NmUwMmI4NGU3NDlkMDVmZmExYWQ2OGYwNjIwYmQz
Y2Q5ZmQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VPdmVybGF5LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5oCkBAIC0xMTUsNyArMTE1LDcgQEAg
cHJpdmF0ZToKICAgICBleHBsaWNpdCBQYWdlT3ZlcmxheShDbGllbnQmLCBPdmVybGF5VHlwZSk7
CiAKICAgICB2b2lkIHN0YXJ0RmFkZUFuaW1hdGlvbigpOwotICAgIHZvaWQgZmFkZUFuaW1hdGlv
blRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGZhZGVBbmltYXRpb25UaW1lckZpcmVkKCk7
CiAKICAgICBDbGllbnQmIG1fY2xpZW50OwogICAgIFBhZ2UqIG1fcGFnZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5jcHAKaW5kZXggN2Q3NWUwMjdlODllNjYzYTYxYzIyYTMxZWE1MmQxNjlmZjQ0MWY0
Yy4uNDdiY2E3MDVhNGVhMmZhZDcyOWQ0ODhlOGQ0Mjg1ODg2YzllYTBmZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9TZXR0aW5ncy5jcHAKQEAgLTE5NSw3ICsxOTUsNyBAQCBTZXR0aW5nczo6U2V0dGluZ3MoUGFn
ZSogcGFnZSkKICNlbmRpZgogICAgICwgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFi
bGVkKGZhbHNlKQogICAgICwgbV90aW1lV2l0aG91dE1vdXNlTW92ZW1lbnRCZWZvcmVIaWRpbmdD
b250cm9scygzKQotICAgICwgbV9zZXRJbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyKHRoaXMsICZT
ZXR0aW5nczo6aW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lckZpcmVkKQorICAgICwgbV9zZXRJbWFn
ZUxvYWRpbmdTZXR0aW5nc1RpbWVyKCp0aGlzLCAmU2V0dGluZ3M6OmltYWdlTG9hZGluZ1NldHRp
bmdzVGltZXJGaXJlZCkKICNpZiBFTkFCTEUoSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJ
TkcpCiAgICAgLCBtX2hpZGRlblBhZ2VET01UaW1lclRocm90dGxpbmdFbmFibGVkKGZhbHNlKQog
I2VuZGlmCkBAIC0zOTYsNyArMzk2LDcgQEAgdm9pZCBTZXR0aW5nczo6c2V0TG9hZHNJbWFnZXNB
dXRvbWF0aWNhbGx5KGJvb2wgbG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5KQogICAgIG1fc2V0SW1h
Z2VMb2FkaW5nU2V0dGluZ3NUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgU2V0dGlu
Z3M6OmltYWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZChUaW1lciopCit2b2lkIFNldHRpbmdz
OjppbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQoKQogewogICAgIHNldEltYWdlTG9hZGlu
Z1NldHRpbmdzKG1fcGFnZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKaW5kZXggNTE1N2FkMzU1
ZThkMDJlYzgyYmU0ODVhMTEyNTI0MDkyZjlhYmUyYi4uY2JjMjhhYzdmYjY3MjA1ZjgwYmU4N2E3
ZGY2ZDMwZTAzYmMzODU5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaApAQCAtMzIyLDcgKzMyMiw3
IEBAIHByaXZhdGU6CiAgICAgZG91YmxlIG1fdGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3Jl
SGlkaW5nQ29udHJvbHM7CiAKICAgICBUaW1lciBtX3NldEltYWdlTG9hZGluZ1NldHRpbmdzVGlt
ZXI7Ci0gICAgdm9pZCBpbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQoVGltZXIqKTsKKyAg
ICB2b2lkIGltYWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCgpOwogCiAjaWYgRU5BQkxFKEhJ
RERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKQogICAgIGJvb2wgbV9oaWRkZW5QYWdlRE9N
VGltZXJUaHJvdHRsaW5nRW5hYmxlZCA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IGRjOWE0YTc5N2E3ZTRi
NDNhYWRiNDQzMzliMWYxYWI2NDI5ZWZjYTcuLjczYmEzNjEzYzRjZDVjOGM2YThhNjVjZWQ0NjQ5
ZDIxODM4OWMzNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0Fu
aW1hdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9u
L0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC01Miw4ICs1Miw4IEBAIHN0YXRpYyBjb25zdCBk
b3VibGUgY0FuaW1hdGlvblRpbWVyRGVsYXkgPSAwLjAyNTsKIHN0YXRpYyBjb25zdCBkb3VibGUg
Y0JlZ2luQW5pbWF0aW9uVXBkYXRlVGltZU5vdFNldCA9IC0xOwogCiBBbmltYXRpb25Db250cm9s
bGVyUHJpdmF0ZTo6QW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGUoRnJhbWUmIGZyYW1lKQotICAg
IDogbV9hbmltYXRpb25UaW1lcih0aGlzLCAmQW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OmFu
aW1hdGlvblRpbWVyRmlyZWQpCi0gICAgLCBtX3VwZGF0ZVN0eWxlSWZOZWVkZWREaXNwYXRjaGVy
KHRoaXMsICZBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlU3R5bGVJZk5lZWRlZERp
c3BhdGNoZXJGaXJlZCkKKyAgICA6IG1fYW5pbWF0aW9uVGltZXIoKnRoaXMsICZBbmltYXRpb25D
b250cm9sbGVyUHJpdmF0ZTo6YW5pbWF0aW9uVGltZXJGaXJlZCkKKyAgICAsIG1fdXBkYXRlU3R5
bGVJZk5lZWRlZERpc3BhdGNoZXIoKnRoaXMsICZBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6
dXBkYXRlU3R5bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZCkKICAgICAsIG1fZnJhbWUoZnJhbWUp
CiAgICAgLCBtX2JlZ2luQW5pbWF0aW9uVXBkYXRlVGltZShjQmVnaW5BbmltYXRpb25VcGRhdGVU
aW1lTm90U2V0KQogICAgICwgbV9hbmltYXRpb25zV2FpdGluZ0ZvclN0eWxlKCkKQEAgLTE1OSw3
ICsxNTksNyBAQCB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjp1cGRhdGVBbmltYXRp
b25UaW1lcihTZXRDaGFuZ2VkIGNhbGxTZXRDaGFuZ2VkLwogICAgIG1fYW5pbWF0aW9uVGltZXIu
c3RhcnRPbmVTaG90KHRpbWVUb05leHRTZXJ2aWNlKTsKIH0KIAotdm9pZCBBbmltYXRpb25Db250
cm9sbGVyUHJpdmF0ZTo6dXBkYXRlU3R5bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZChUaW1lciYp
Cit2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjp1cGRhdGVTdHlsZUlmTmVlZGVkRGlz
cGF0Y2hlckZpcmVkKCkKIHsKICAgICBmaXJlRXZlbnRzQW5kVXBkYXRlU3R5bGUoKTsKIH0KQEAg
LTIyNiw3ICsyMjYsNyBAQCB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjphbmltYXRp
b25GcmFtZUNhbGxiYWNrRmlyZWQoKQogfQogI2VuZGlmCiAKLXZvaWQgQW5pbWF0aW9uQ29udHJv
bGxlclByaXZhdGU6OmFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9pZCBBbmltYXRpb25D
b250cm9sbGVyUHJpdmF0ZTo6YW5pbWF0aW9uVGltZXJGaXJlZCgpCiB7CiAgICAgLy8gTWFrZSBz
dXJlIGFuaW1hdGlvblVwZGF0ZVRpbWUgaXMgdXBkYXRlZCwgc28gdGhhdCBpdCBpcyBjdXJyZW50
IGV2ZW4gaWYgbm8KICAgICAvLyBzdHlsZUNoYW5nZSBoYXMgaGFwcGVuZWQgKGUuZy4gYWNjZWxl
cmF0ZWQgYW5pbWF0aW9ucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0
aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2Fu
aW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZS5oCmluZGV4IDVhNDU0ZjhjYTRlNDU4
OTQ4OGNmYjFlZWNmOGM3OTU4NGY0NWE0MjAuLmVmMWVkZDNmZTIyOGJkOTYwYWZkOWJjNWRhZjVm
NWFlNjY4YzgwYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0Fu
aW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmlt
YXRpb24vQW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGUuaApAQCAtNjgsNyArNjgsNyBAQCBwdWJs
aWM6CiAgICAgQ29tcG9zaXRlQW5pbWF0aW9uJiBlbnN1cmVDb21wb3NpdGVBbmltYXRpb24oUmVu
ZGVyRWxlbWVudCYpOwogICAgIGJvb2wgY2xlYXIoUmVuZGVyRWxlbWVudCYpOwogCi0gICAgdm9p
ZCB1cGRhdGVTdHlsZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB1
cGRhdGVTdHlsZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKCk7CiAgICAgdm9pZCBzdGFydFVwZGF0
ZVN0eWxlSWZOZWVkZWREaXNwYXRjaGVyKCk7CiAgICAgdm9pZCBhZGRFdmVudFRvRGlzcGF0Y2go
UGFzc1JlZlB0cjxFbGVtZW50PiBlbGVtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlw
ZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgZWxhcHNlZFRpbWUpOwogICAgIHZvaWQgYWRk
RWxlbWVudENoYW5nZVRvRGlzcGF0Y2goUGFzc1JlZjxFbGVtZW50Pik7CkBAIC0xMTQsNyArMTE0
LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0QWxsb3dzTmV3QW5pbWF0aW9uc1doaWxlU3VzcGVu
ZGVkKGJvb2wpOwogCiBwcml2YXRlOgotICAgIHZvaWQgYW5pbWF0aW9uVGltZXJGaXJlZChUaW1l
ciYpOworICAgIHZvaWQgYW5pbWF0aW9uVGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCBzdHlsZUF2
YWlsYWJsZSgpOwogICAgIHZvaWQgZmlyZUV2ZW50c0FuZFVwZGF0ZVN0eWxlKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLmgKaW5k
ZXggOGFhZjkxMmUwMzI1Njg5OWFmOWVkNzY2YWQxMjA1ZDJhNjgxNTBhMi4uNTgxZjFkZjY3NmNk
MmUzOTdjNDVlZTdiN2Q2NGMxYzQwM2Q5MDExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9tYWMvU2VydmljZXNPdmVybGF5Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvbWFjL1NlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIuaApAQCAtMTIzLDcgKzEyMyw3IEBA
IHByaXZhdGU6CiAKICAgICBib29sIG1vdXNlSXNPdmVySGlnaGxpZ2h0KEhpZ2hsaWdodCYsIGJv
b2wmIG1vdXNlSXNPdmVyQnV0dG9uKSBjb25zdDsKICAgICBzdGQ6OmNocm9ubzo6bWlsbGlzZWNv
bmRzIHJlbWFpbmluZ1RpbWVVbnRpbEhpZ2hsaWdodFNob3VsZEJlU2hvd24oSGlnaGxpZ2h0Kikg
Y29uc3Q7Ci0gICAgdm9pZCBkZXRlcm1pbmVBY3RpdmVIaWdobGlnaHRUaW1lckZpcmVkKFRpbWVy
Jik7CisgICAgdm9pZCBkZXRlcm1pbmVBY3RpdmVIaWdobGlnaHRUaW1lckZpcmVkKCk7CiAKICAg
ICBzdGF0aWMgYm9vbCBoaWdobGlnaHRzQXJlRXF1aXZhbGVudChjb25zdCBIaWdobGlnaHQqIGEs
IGNvbnN0IEhpZ2hsaWdodCogYik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
bWFjL1NlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL21h
Yy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLm1tCmluZGV4IDAwOThjNzYzMTNmNGNjNjYwZTk2
OGE5MGQzZTkzOGE4YjFiYmM5ZGUuLjg0M2I4YmY1ZjNiZmQzMWIxNzk4YWE5NDBmOTRjZWFjMTQ3
MTlmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL1NlcnZpY2VzT3Zlcmxh
eUNvbnRyb2xsZXIubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvU2VydmljZXNPdmVy
bGF5Q29udHJvbGxlci5tbQpAQCAtMjI1LDcgKzIyNSw3IEBAIFNlcnZpY2VzT3ZlcmxheUNvbnRy
b2xsZXI6OlNlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIoTWFpbkZyYW1lJiBtYWluRnJhbWUpCiAg
ICAgOiBtX21haW5GcmFtZShtYWluRnJhbWUpCiAgICAgLCBtX3NlcnZpY2VzT3ZlcmxheShudWxs
cHRyKQogICAgICwgbV9pc1RleHRPbmx5KGZhbHNlKQotICAgICwgbV9kZXRlcm1pbmVBY3RpdmVI
aWdobGlnaHRUaW1lcih0aGlzLCAmU2VydmljZXNPdmVybGF5Q29udHJvbGxlcjo6ZGV0ZXJtaW5l
QWN0aXZlSGlnaGxpZ2h0VGltZXJGaXJlZCkKKyAgICAsIG1fZGV0ZXJtaW5lQWN0aXZlSGlnaGxp
Z2h0VGltZXIoKnRoaXMsICZTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpkZXRlcm1pbmVBY3Rp
dmVIaWdobGlnaHRUaW1lckZpcmVkKQogewogfQogCkBAIC00NTAsNyArNDUwLDcgQEAgc3RkOjpj
aHJvbm86Om1pbGxpc2Vjb25kcyBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpyZW1haW5pbmdU
aW1lVW50aWxIaWdobGlnaHQKICAgICByZXR1cm4gc3RkOjpjaHJvbm86OmR1cmF0aW9uX2Nhc3Q8
c3RkOjpjaHJvbm86Om1pbGxpc2Vjb25kcz4ocmVtYWluaW5nRGVsYXkpOwogfQogCi12b2lkIFNl
cnZpY2VzT3ZlcmxheUNvbnRyb2xsZXI6OmRldGVybWluZUFjdGl2ZUhpZ2hsaWdodFRpbWVyRmly
ZWQoVGltZXImKQordm9pZCBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpkZXRlcm1pbmVBY3Rp
dmVIaWdobGlnaHRUaW1lckZpcmVkKCkKIHsKICAgICBib29sIG1vdXNlSXNPdmVyQnV0dG9uOwog
ICAgIGRldGVybWluZUFjdGl2ZUhpZ2hsaWdodChtb3VzZUlzT3ZlckJ1dHRvbik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5h
dG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29v
cmRpbmF0b3IuY3BwCmluZGV4IGFjZDJkZjIyNWViM2ZjZDRmODBjNjBkYzk3YTZmMWVlNzEwZjU5
MWYuLjFmODIzMDNkNmU0YWI2ZWQyZmY3MzVlMTJlMTFiM2E3MjJhNjQ4ZTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29v
cmRpbmF0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQXN5
bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6QXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcihQYWdlKiBw
YWdlKQogICAgIDogU2Nyb2xsaW5nQ29vcmRpbmF0b3IocGFnZSkKLSAgICAsIG1fdXBkYXRlTm9k
ZVNjcm9sbFBvc2l0aW9uVGltZXIodGhpcywgJkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnVw
ZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbFRpbWVyRmlyZWQpCisgICAgLCBtX3Vw
ZGF0ZU5vZGVTY3JvbGxQb3NpdGlvblRpbWVyKCp0aGlzLCAmQXN5bmNTY3JvbGxpbmdDb29yZGlu
YXRvcjo6dXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFzeW5jU2Nyb2xsVGltZXJGaXJlZCkKICAg
ICAsIG1fc2Nyb2xsaW5nU3RhdGVUcmVlKFNjcm9sbGluZ1N0YXRlVHJlZTo6Y3JlYXRlKHRoaXMp
KQogewogfQpAQCAtMjEzLDcgKzIxMyw3IEBAIHZvaWQgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRv
cjo6c2NoZWR1bGVVcGRhdGVTY3JvbGxQb3NpdGlvbkFmdGVyQXN5bmNTY3JvbGwoU2NyCiAgICAg
bV91cGRhdGVOb2RlU2Nyb2xsUG9zaXRpb25UaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZv
aWQgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6dXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFz
eW5jU2Nyb2xsVGltZXJGaXJlZChUaW1lciopCit2b2lkIEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0
b3I6OnVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbFRpbWVyRmlyZWQoKQogewog
ICAgIHVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbChtX3NjaGVkdWxlZFNjcm9s
bFVwZGF0ZS5ub2RlSUQsIG1fc2NoZWR1bGVkU2Nyb2xsVXBkYXRlLnNjcm9sbFBvc2l0aW9uLCBt
X3NjaGVkdWxlZFNjcm9sbFVwZGF0ZS5pc1Byb2dyYW1tYXRpY1Njcm9sbCwgbV9zY2hlZHVsZWRT
Y3JvbGxVcGRhdGUudXBkYXRlTGF5ZXJQb3NpdGlvbkFjdGlvbik7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9y
LmgKaW5kZXggM2Y0ZDdiYzkyZjllNWJkMWU1Zjg0NjRlZjc1NjIxNDkxMmYwYWM0MS4uN2VjNzVm
N2NmNzdjMDgzZGRmM2FkNmI4ZDU1ODg4ODFkNDY2NTcyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaApA
QCAtMTA1LDcgKzEwNSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBlbnN1cmVSb290U3RhdGVOb2Rl
Rm9yRnJhbWVWaWV3KEZyYW1lVmlldyopOwogICAgIHZvaWQgdXBkYXRlTWFpbkZyYW1lU2Nyb2xs
TGF5ZXJQb3NpdGlvbigpOwogCi0gICAgdm9pZCB1cGRhdGVTY3JvbGxQb3NpdGlvbkFmdGVyQXN5
bmNTY3JvbGxUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCB1cGRhdGVTY3JvbGxQb3NpdGlv
bkFmdGVyQXN5bmNTY3JvbGxUaW1lckZpcmVkKCk7CiAgICAgCiAgICAgRnJhbWVWaWV3KiBmcmFt
ZVZpZXdGb3JTY3JvbGxpbmdOb2RlKFNjcm9sbGluZ05vZGVJRCkgY29uc3Q7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxpbmdDb29yZGluYXRv
cklPUy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Njcm9sbGluZ0Nvb3Jk
aW5hdG9ySU9TLmgKaW5kZXggMDExZmU4ZTIzODJiMzkyMjYxZDZkNmYwMzFkNzNmNTExNWY1OGJl
ZS4uY2NjMTA4MDQ2NGI3MmYxYzkwZWRlOGZhMmJhYTcyYzY4ZjFmNjVhZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Njcm9sbGluZ0Nvb3JkaW5hdG9ySU9T
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Njcm9sbGluZ0Nvb3Jk
aW5hdG9ySU9TLmgKQEAgLTUzLDcgKzUzLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICB2aXJ0
dWFsIHZvaWQgc2NoZWR1bGVUcmVlU3RhdGVDb21taXQoKSBvdmVycmlkZTsKIAotICAgIHZvaWQg
c2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQg
c2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJlZCgpOwogICAgIHZvaWQgY29tbWl0
VHJlZVN0YXRlKCk7CiAKICAgICBUaW1lciBtX3Njcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRp
bWVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Njcm9s
bGluZ0Nvb3JkaW5hdG9ySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9z
L1Njcm9sbGluZ0Nvb3JkaW5hdG9ySU9TLm1tCmluZGV4IDg5MjdlOTkyM2FhZTc4NjhjZjkwMjdk
NGY5Y2UyZjIwZWExYzQ2NDMuLjMwM2I5YjIwMjFiZDQ0OTVlZjZjYzI1NGEyODY0NmNkZTRjNzc4
M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxp
bmdDb29yZGluYXRvcklPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9p
b3MvU2Nyb2xsaW5nQ29vcmRpbmF0b3JJT1MubW0KQEAgLTUyLDcgKzUyLDcgQEAgUGFzc1JlZlB0
cjxTY3JvbGxpbmdDb29yZGluYXRvcj4gU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmNyZWF0ZShQYWdl
KiBwYWdlKQogCiBTY3JvbGxpbmdDb29yZGluYXRvcklPUzo6U2Nyb2xsaW5nQ29vcmRpbmF0b3JJ
T1MoUGFnZSogcGFnZSkKICAgICA6IEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IocGFnZSkKLSAg
ICAsIG1fc2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXIodGhpcywgJlNjcm9sbGluZ0Nv
b3JkaW5hdG9ySU9TOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKQorICAg
ICwgbV9zY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lcigqdGhpcywgJlNjcm9sbGluZ0Nv
b3JkaW5hdG9ySU9TOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKQogewog
ICAgIHNldFNjcm9sbGluZ1RyZWUoU2Nyb2xsaW5nVHJlZUlPUzo6Y3JlYXRlKHRoaXMpKTsKIH0K
QEAgLTkxLDcgKzkxLDcgQEAgdm9pZCBTY3JvbGxpbmdDb29yZGluYXRvcklPUzo6c2NoZWR1bGVU
cmVlU3RhdGVDb21taXQoKQogICAgIG1fc2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXIu
c3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIFNjcm9sbGluZ0Nvb3JkaW5hdG9ySU9TOjpzY3Jv
bGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU2Nyb2xsaW5n
Q29vcmRpbmF0b3JJT1M6OnNjcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyRmlyZWQoKQog
ewogICAgIGNvbW1pdFRyZWVTdGF0ZSgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMuaAppbmRleCBm
NzFlY2MzNDY5ZTJjMGFkMDc3NjI5Y2Y4ZDUwY2JmYWY4NWVlNjkwLi5mYzgyOWE0ZDU5ODVlOTZj
ODVhN2ExMWM1ODE1ZWIyMzRiZTY5ODA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMuaApAQCAtNTMs
NyArNTMsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBzY2hlZHVsZVRy
ZWVTdGF0ZUNvbW1pdCgpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBzY3JvbGxpbmdTdGF0ZVRyZWVD
b21taXR0ZXJUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCBzY3JvbGxpbmdTdGF0ZVRyZWVD
b21taXR0ZXJUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBjb21taXRUcmVlU3RhdGUoKTsKICAgICAK
ICAgICB2b2lkIHVwZGF0ZVRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0
b3JNYWMubW0KaW5kZXggMGJjNTE5OTdkMGUyMTFlMWIyYzc1OGYxNjk5MzgwZDhjMDNlYzE3Ni4u
ZmM4NGNhYmE5ZTc3ZTlmOTQ1YmZhN2M4YjBkNzE4NjE0ZDIzODY3OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdDb29yZGlu
YXRvck1hYy5tbQpAQCAtNTQsNyArNTQsNyBAQCBQYXNzUmVmUHRyPFNjcm9sbGluZ0Nvb3JkaW5h
dG9yPiBTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKFBhZ2UqIHBhZ2UpCiAKIFNjcm9sbGlu
Z0Nvb3JkaW5hdG9yTWFjOjpTY3JvbGxpbmdDb29yZGluYXRvck1hYyhQYWdlKiBwYWdlKQogICAg
IDogQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcihwYWdlKQotICAgICwgbV9zY3JvbGxpbmdTdGF0
ZVRyZWVDb21taXR0ZXJUaW1lcih0aGlzLCAmU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWM6OnNjcm9s
bGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyRmlyZWQpCisgICAgLCBtX3Njcm9sbGluZ1N0YXRl
VHJlZUNvbW1pdHRlclRpbWVyKCp0aGlzLCAmU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWM6OnNjcm9s
bGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyRmlyZWQpCiB7CiAgICAgc2V0U2Nyb2xsaW5nVHJl
ZShTY3JvbGxpbmdUcmVlTWFjOjpjcmVhdGUodGhpcykpOwogfQpAQCAtMTA2LDcgKzEwNiw3IEBA
IHZvaWQgU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWM6OnNjaGVkdWxlVHJlZVN0YXRlQ29tbWl0KCkK
ICAgICBtX3Njcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyLnN0YXJ0T25lU2hvdCgwKTsK
IH0KIAotdm9pZCBTY3JvbGxpbmdDb29yZGluYXRvck1hYzo6c2Nyb2xsaW5nU3RhdGVUcmVlQ29t
bWl0dGVyVGltZXJGaXJlZChUaW1lciopCit2b2lkIFNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjOjpz
Y3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKCkKIHsKICAgICBjb21taXRUcmVl
U3RhdGUoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0h5c3RlcmVz
aXNBY3Rpdml0eS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vSHlzdGVyZXNpc0FjdGl2aXR5
LmgKaW5kZXggY2E5MDgzNGU4OTU0NjJjMmIzYTAyMDM4ZGI4MjRlMDU3N2VkMTczMi4uYTNjOTIy
ZjZkZTk3M2E3NjJhMDJiYjVkZTAwZjA0Y2I0OWJmNDBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vSHlzdGVyZXNpc0FjdGl2aXR5LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vSHlzdGVyZXNpc0FjdGl2aXR5LmgKQEAgLTQ1LDcgKzQ1LDcgQEAgcHVibGljOgog
ICAgICAgICA6IG1fZGVsZWdhdGUoZGVsZWdhdGUpCiAgICAgICAgICwgbV9oeXN0ZXJlc2lzU2Vj
b25kcyhoeXN0ZXJlc2lzU2Vjb25kcykKICAgICAgICAgLCBtX2FjdGl2ZShmYWxzZSkKLSAgICAg
ICAgLCBtX3RpbWVyKHRoaXMsICZIeXN0ZXJlc2lzQWN0aXZpdHk8RGVsZWdhdGU+OjpoeXN0ZXJl
c2lzVGltZXJGaXJlZCkKKyAgICAgICAgLCBtX3RpbWVyKCp0aGlzLCAmSHlzdGVyZXNpc0FjdGl2
aXR5PERlbGVnYXRlPjo6aHlzdGVyZXNpc1RpbWVyRmlyZWQpCiAgICAgewogICAgIH0KIApAQCAt
ODgsNyArODgsNyBAQCBwdWJsaWM6CiAgICAgfQogICAgIAogcHJpdmF0ZToKLSAgICB2b2lkIGh5
c3RlcmVzaXNUaW1lckZpcmVkKFRpbWVyJikKKyAgICB2b2lkIGh5c3RlcmVzaXNUaW1lckZpcmVk
KCkKICAgICB7CiAgICAgICAgIG1fZGVsZWdhdGUuc3RvcHBlZCgpOwogICAgICAgICBtX3RpbWVy
LnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAppbmRl
eCBlYTNjMzk3N2I1ODFkODcwZWVjMjMxODZlZjA0NmEzZWY2MjUzYTVmLi4yYzQzMjFiMzkzNTcz
NTE4YzMxZjAxMWIyNjcwZTczNjA0MGZhZGNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsQW5pbWF0b3IuY3BwCkBAIC0xNzYsMTQgKzE3NiwxNCBAQCB2b2lkIFNjcm9sbEFuaW1h
dG9yOjp1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKQogICAgIC8vIEZJWE1FOiBDdXJy
ZW50bHksIHNjcm9sbCBzbmFwIGFuaW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRo
ZSBzbmFwIG9mZnNldHMgYWxvbmUgY2FuIGJlIHVwZGF0ZWQuCiAgICAgaWYgKG1fc2Nyb2xsYWJs
ZUFyZWEtPmhvcml6b250YWxTbmFwT2Zmc2V0cygpKSB7CiAgICAgICAgIG1faG9yaXpvbnRhbFNj
cm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRv
cj4odGhpcywgbV9zY3JvbGxhYmxlQXJlYS0+aG9yaXpvbnRhbFNuYXBPZmZzZXRzKCksIFNjcm9s
bEV2ZW50QXhpczo6SG9yaXpvbnRhbCk7Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBU
aW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KHRoaXMsICZTY3JvbGxBbmltYXRvcjo6aG9y
aXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xs
U25hcFRpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3JvbGxBbmltYXRv
cjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKICAgICB9IGVsc2UgaWYgKG1faG9y
aXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikgewogICAgICAgICBtX2hvcml6b250YWxTY3JvbGxT
bmFwQW5pbWF0b3IgPSBudWxscHRyOwogICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGlt
ZXIgPSBudWxscHRyOwogICAgIH0KICAgICBpZiAobV9zY3JvbGxhYmxlQXJlYS0+dmVydGljYWxT
bmFwT2Zmc2V0cygpKSB7CiAgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBz
dGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIG1fc2Nyb2xsYWJs
ZUFyZWEtPnZlcnRpY2FsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7
Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRp
bWVyPih0aGlzLCAmU2Nyb2xsQW5pbWF0b3I6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQp
OworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxU
aW1lcj4oKnRoaXMsICZTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJl
ZCk7CiAgICAgfSBlbHNlIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7CiAgICAg
ICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOwogICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsU25hcFRpbWVyID0gbnVsbHB0cjsKQEAgLTIxOSwxMiArMjE5LDEyIEBAIHZv
aWQgU2Nyb2xsQW5pbWF0b3I6OnN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzIGF4
aXMpCiAgICAgICAgIHNjcm9sbFNuYXBUaW1lci0+c3RvcCgpOwogfQogCi12b2lkIFNjcm9sbEFu
aW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBTY3Jv
bGxBbmltYXRvcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKIHsKICAgICBtX2hv
cml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsK
IH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZChU
aW1lciYpCit2b2lkIFNjcm9sbEFuaW1hdG9yOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVk
KCkKIHsKICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3JvbGxTbmFwQW5pbWF0
aW9uVXBkYXRlKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3Jv
bGxBbmltYXRvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaApp
bmRleCBlYjE1MGZjZGZiNTA2NzFhNzNmZWQ0ZTY3NzFmNWQ5YTg5MTQ4YjBkLi5lZTZjM2I1Y2M1
Y2EyYzIxZWFkZTc4MzVhZDVjODNhNTMwZTk5ZTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbEFuaW1hdG9yLmgKQEAgLTEzMCw4ICsxMzAsOCBAQCBwcm90ZWN0ZWQ6CiAKICNpZiBF
TkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCiAgICAgLy8gVHJpdmlhbCB3
cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1cGRhdGUgbG9vcCBpbiBBeGlzU2Nyb2xsU25hcEFu
aW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVyIHJlcXVpcmVzIGEgVGltZXIgYXJndW1lbnQuCi0g
ICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoVGltZXImKTsKLSAgICB2b2lk
IHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGhvcml6b250
YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpOworICAgIHZvaWQgdmVydGljYWxTY3JvbGxTbmFwVGlt
ZXJGaXJlZCgpOwogI2VuZGlmCiAKICAgICBTY3JvbGxhYmxlQXJlYSogbV9zY3JvbGxhYmxlQXJl
YTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuY3BwCmluZGV4IGM2M2ZiMDE1OTg5NTI4
MTI1ZGNhMTg3MTdhODZjNTI5NTJlMzNlZGYuLmE1Zjc0MjA4NWEyMjM1YTU3YzhjZmJlZjcwODQ5
OWQ5MDZjMzQ1MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJh
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcApAQCAtNzYs
NyArNzYsNyBAQCBTY3JvbGxiYXI6OlNjcm9sbGJhcihTY3JvbGxhYmxlQXJlYSogc2Nyb2xsYWJs
ZUFyZWEsIFNjcm9sbGJhck9yaWVudGF0aW9uIG9yaWVudAogICAgICwgbV9kcmFnZ2luZ0RvY3Vt
ZW50KGZhbHNlKQogICAgICwgbV9kb2N1bWVudERyYWdQb3MoMCkKICAgICAsIG1fZW5hYmxlZCh0
cnVlKQotICAgICwgbV9zY3JvbGxUaW1lcih0aGlzLCAmU2Nyb2xsYmFyOjphdXRvc2Nyb2xsVGlt
ZXJGaXJlZCkKKyAgICAsIG1fc2Nyb2xsVGltZXIoKnRoaXMsICZTY3JvbGxiYXI6OmF1dG9zY3Jv
bGxUaW1lckZpcmVkKQogICAgICwgbV9vdmVybGFwc1Jlc2l6ZXIoZmFsc2UpCiAgICAgLCBtX3N1
cHByZXNzSW52YWxpZGF0aW9uKGZhbHNlKQogICAgICwgbV9pc0FscGhhTG9ja2VkKGZhbHNlKQpA
QCAtMTg1LDcgKzE4NSw3IEBAIHZvaWQgU2Nyb2xsYmFyOjpwYWludChHcmFwaGljc0NvbnRleHQq
IGNvbnRleHQsIGNvbnN0IEludFJlY3QmIGRhbWFnZVJlY3QpCiAgICAgICAgIFdpZGdldDo6cGFp
bnQoY29udGV4dCwgZGFtYWdlUmVjdCk7CiB9CiAKLXZvaWQgU2Nyb2xsYmFyOjphdXRvc2Nyb2xs
VGltZXJGaXJlZChUaW1lciYpCit2b2lkIFNjcm9sbGJhcjo6YXV0b3Njcm9sbFRpbWVyRmlyZWQo
KQogewogICAgIGF1dG9zY3JvbGxQcmVzc2VkUGFydCh0aGVtZSgpLT5hdXRvc2Nyb2xsVGltZXJE
ZWxheSgpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJh
ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmgKaW5kZXggNzMxZGU1ZDNm
ZTMzYjNjODNlZTI3NjAwYTcyNDM4Y2FkYTY3MDUxNi4uMWZjMzRlZDBmNTA4NWE4NTJiYjE4NDVm
ZjRkOTJlNWExZDU4NjgyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsYmFyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmgKQEAgLTE2
NSw3ICsxNjUsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVRodW1iUG9z
aXRpb24oKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlVGh1bWJQcm9wb3J0aW9uKCk7CiAKLSAg
ICB2b2lkIGF1dG9zY3JvbGxUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBhdXRvc2Nyb2xs
VGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRUaW1lcklmTmVlZGVkKGRvdWJsZSBkZWxheSk7
CiAgICAgdm9pZCBzdG9wVGltZXJJZk5lZWRlZCgpOwogICAgIHZvaWQgYXV0b3Njcm9sbFByZXNz
ZWRQYXJ0KGRvdWJsZSBkZWxheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9UaW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGltZXIuaAppbmRleCBlYWM4ODNm
NDExMDJhYjAxNzk1NTJhMjQyZGJmMDUwNjE0MzQ2MDliLi5mNGMzZDExNTdiNTk3Mzc4NmY5MWM0
YTIyNmMzNWM2NjdkMTg2YjcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9U
aW1lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RpbWVyLmgKQEAgLTExNiwxOCAr
MTE2LDYgQEAgcHJpdmF0ZToKIGNsYXNzIFRpbWVyIDogcHVibGljIFRpbWVyQmFzZSB7CiBwdWJs
aWM6CiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFRpbWVyRmlyZWRDbGFzcywgdHlwZW5hbWUgVGlt
ZXJGaXJlZEJhc2VDbGFzcz4KLSAgICBUaW1lcihUaW1lckZpcmVkQ2xhc3MqIG9iamVjdCwgdm9p
ZCAoVGltZXJGaXJlZEJhc2VDbGFzczo6KmZ1bmN0aW9uKShUaW1lciYpKQotICAgICAgICA6IG1f
ZnVuY3Rpb24oc3RkOjpiaW5kKGZ1bmN0aW9uLCBvYmplY3QsIHN0ZDo6cmVmKCp0aGlzKSkpCi0g
ICAgewotICAgIH0KLQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUaW1lckZpcmVkQ2xhc3MsIHR5
cGVuYW1lIFRpbWVyRmlyZWRCYXNlQ2xhc3M+Ci0gICAgVGltZXIoVGltZXJGaXJlZENsYXNzKiBv
YmplY3QsIHZvaWQgKFRpbWVyRmlyZWRCYXNlQ2xhc3M6OipmdW5jdGlvbikoVGltZXIqKSkKLSAg
ICAgICAgOiBtX2Z1bmN0aW9uKHN0ZDo6YmluZChmdW5jdGlvbiwgb2JqZWN0LCB0aGlzKSkKLSAg
ICB7Ci0gICAgfQotCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIFRpbWVyRmlyZWRDbGFzcywgdHlw
ZW5hbWUgVGltZXJGaXJlZEJhc2VDbGFzcz4KICAgICBUaW1lcihUaW1lckZpcmVkQ2xhc3MmIG9i
amVjdCwgdm9pZCAoVGltZXJGaXJlZEJhc2VDbGFzczo6KmZ1bmN0aW9uKSgpKQogICAgICAgICA6
IG1fZnVuY3Rpb24oc3RkOjpiaW5kKGZ1bmN0aW9uLCAmb2JqZWN0KSkKICAgICB7CkBAIC0xNjEs
OCArMTQ5LDggQEAgaW5saW5lIGJvb2wgVGltZXJCYXNlOjppc0FjdGl2ZSgpIGNvbnN0CiBjbGFz
cyBEZWZlcnJhYmxlT25lU2hvdFRpbWVyIDogcHJvdGVjdGVkIFRpbWVyQmFzZSB7CiBwdWJsaWM6
CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVGltZXJGaXJlZENsYXNzPgotICAgIERlZmVycmFibGVP
bmVTaG90VGltZXIoVGltZXJGaXJlZENsYXNzKiBvYmplY3QsIHZvaWQgKFRpbWVyRmlyZWRDbGFz
czo6KmZ1bmN0aW9uKSgpLCBzdGQ6OmNocm9ubzo6bWlsbGlzZWNvbmRzIGRlbGF5KQotICAgICAg
ICA6IERlZmVycmFibGVPbmVTaG90VGltZXIoc3RkOjpiaW5kKGZ1bmN0aW9uLCBvYmplY3QpLCBk
ZWxheSkKKyAgICBEZWZlcnJhYmxlT25lU2hvdFRpbWVyKFRpbWVyRmlyZWRDbGFzcyYgb2JqZWN0
LCB2b2lkIChUaW1lckZpcmVkQ2xhc3M6OipmdW5jdGlvbikoKSwgc3RkOjpjaHJvbm86Om1pbGxp
c2Vjb25kcyBkZWxheSkKKyAgICAgICAgOiBEZWZlcnJhYmxlT25lU2hvdFRpbWVyKHN0ZDo6Ymlu
ZChmdW5jdGlvbiwgJm9iamVjdCksIGRlbGF5KQogICAgIHsKICAgICB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb24uY3BwCmluZGV4IDgwMjFjNGJkZDg3
MGNjZWY0YmZjNmRlN2JkMDAyYjY5N2Q2MTYyNzIuLmM3OGI5MjE5MmE2YjI5Y2Q5MzU0Y2I4M2Vk
ZGE1ODgxOWQ3YWY3MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L01lZGlhU2Vzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vTWVk
aWFTZXNzaW9uLmNwcApAQCAtNTksNyArNTksNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8TWVkaWFTZXNz
aW9uPiBNZWRpYVNlc3Npb246OmNyZWF0ZShNZWRpYVNlc3Npb25DbGllbnQmIGNsaWVudCkKIAog
TWVkaWFTZXNzaW9uOjpNZWRpYVNlc3Npb24oTWVkaWFTZXNzaW9uQ2xpZW50JiBjbGllbnQpCiAg
ICAgOiBtX2NsaWVudChjbGllbnQpCi0gICAgLCBtX2NsaWVudERhdGFCdWZmZXJpbmdUaW1lcih0
aGlzLCAmTWVkaWFTZXNzaW9uOjpjbGllbnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZCkKKyAgICAs
IG1fY2xpZW50RGF0YUJ1ZmZlcmluZ1RpbWVyKCp0aGlzLCAmTWVkaWFTZXNzaW9uOjpjbGllbnRE
YXRhQnVmZmVyaW5nVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGUoSWRsZSkKICAgICAsIG1fc3Rh
dGVUb1Jlc3RvcmUoSWRsZSkKICAgICAsIG1fbm90aWZ5aW5nQ2xpZW50KGZhbHNlKQpAQCAtMTgw
LDcgKzE4MCw3IEBAIHZvaWQgTWVkaWFTZXNzaW9uOjp2aXNpYmlsaXR5Q2hhbmdlZCgpCiAgICAg
ICAgIG1fY2xpZW50RGF0YUJ1ZmZlcmluZ1RpbWVyLnN0YXJ0T25lU2hvdChrQ2xpZW50RGF0YUJ1
ZmZlcmluZ1RpbWVyVGhyb3R0bGVEZWxheSk7CiB9CiAKLXZvaWQgTWVkaWFTZXNzaW9uOjpjbGll
bnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZChUaW1lciAmKQordm9pZCBNZWRpYVNlc3Npb246OmNs
aWVudERhdGFCdWZmZXJpbmdUaW1lckZpcmVkKCkKIHsKICAgICB1cGRhdGVDbGllbnREYXRhQnVm
ZmVyaW5nKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9N
ZWRpYVNlc3Npb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lv
bi5oCmluZGV4IGJlMDcyOTgxMDA4MmY1YWNkZmI3Y2FiNGEzMDlmMTZkNGE5NTQ5MTIuLjk5NTQ1
NjIzMWJiOGU2NmUwMTVjZTZkZTY3ZmZmNzU5YzExMDAzZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5oCkBAIC0xMTUsNyArMTE1LDcgQEAgcHJvdGVj
dGVkOgogICAgIE1lZGlhU2Vzc2lvbkNsaWVudCYgY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9j
bGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGNsaWVudERhdGFCdWZmZXJpbmdUaW1lckZp
cmVkKFRpbWVyJik7CisgICAgdm9pZCBjbGllbnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZCgpOwog
ICAgIHZvaWQgdXBkYXRlQ2xpZW50RGF0YUJ1ZmZlcmluZygpOwogCiAgICAgTWVkaWFTZXNzaW9u
Q2xpZW50JiBtX2NsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0JpdG1hcEltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0JpdG1hcEltYWdlLmNwcAppbmRleCBlOGJmNTU0MzhhMjQ4NzkxODY0MjlkZTYwYTMzNDUwOTIw
YmNmNmY3Li44NzkwYWE0NGU0MTQ1MWVmMjUyMDdiYzBlODUwYjg5YWRjMTUxZDM3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuY3BwCkBAIC01
NDAsNyArNTQwLDcgQEAgdm9pZCBCaXRtYXBJbWFnZTo6c3RhcnRBbmltYXRpb24oQ2F0Y2hVcEFu
aW1hdGlvbiBjYXRjaFVwSWZOZWNlc3NhcnkpCiAKICAgICBpZiAoY2F0Y2hVcElmTmVjZXNzYXJ5
ID09IERvTm90Q2F0Y2hVcCB8fCB0aW1lIDwgbV9kZXNpcmVkRnJhbWVTdGFydFRpbWUpIHsKICAg
ICAgICAgLy8gSGF2ZW4ndCB5ZXQgcmVhY2hlZCB0aW1lIGZvciBuZXh0IGZyYW1lIHRvIHN0YXJ0
OyBkZWxheSB1bnRpbCB0aGVuLgotICAgICAgICBtX2ZyYW1lVGltZXIgPSBzdGQ6Om1ha2VfdW5p
cXVlPFRpbWVyPih0aGlzLCAmQml0bWFwSW1hZ2U6OmFkdmFuY2VBbmltYXRpb24pOworICAgICAg
ICBtX2ZyYW1lVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJkJpdG1hcElt
YWdlOjphZHZhbmNlQW5pbWF0aW9uKTsKICAgICAgICAgbV9mcmFtZVRpbWVyLT5zdGFydE9uZVNo
b3Qoc3RkOjptYXgobV9kZXNpcmVkRnJhbWVTdGFydFRpbWUgLSB0aW1lLCAwLikpOwogICAgIH0g
ZWxzZSB7CiAgICAgICAgIC8vIFdlJ3ZlIGFscmVhZHkgcmVhY2hlZCBvciBwYXNzZWQgdGhlIHRp
bWUgZm9yIHRoZSBuZXh0IGZyYW1lIHRvIHN0YXJ0LgpAQCAtNjQxLDcgKzY0MSw3IEBAIHZvaWQg
Qml0bWFwSW1hZ2U6OmRyYXdQYXR0ZXJuKEdyYXBoaWNzQ29udGV4dCogY3R4dCwgY29uc3QgRmxv
YXRSZWN0JiB0aWxlUmVjdCwKIH0KIAogCi12b2lkIEJpdG1hcEltYWdlOjphZHZhbmNlQW5pbWF0
aW9uKFRpbWVyJikKK3ZvaWQgQml0bWFwSW1hZ2U6OmFkdmFuY2VBbmltYXRpb24oKQogewogICAg
IGludGVybmFsQWR2YW5jZUFuaW1hdGlvbihmYWxzZSk7CiAgICAgLy8gQXQgdGhpcyBwb2ludCB0
aGUgaW1hZ2UgcmVnaW9uIGhhcyBiZWVuIG1hcmtlZCBkaXJ0eSwgYW5kIGlmIGl0J3MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5oCmluZGV4IDMyNzEy
YmU2MmQ2YmUwMTc5MTM5ZmMwZmYxYzRiNjA1OWJiMmY1NTAuLjgyNDZmNDdjMzZlZWY1NWE0Njcw
NWQwMGFjZDhhM2Y5NjNkOWNkNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0JpdG1hcEltYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvQml0bWFwSW1hZ2UuaApAQCAtMjU4LDcgKzI1OCw3IEBAIHByb3RlY3RlZDoKICAgICBp
bnQgcmVwZXRpdGlvbkNvdW50KGJvb2wgaW1hZ2VLbm93blRvQmVDb21wbGV0ZSk7ICAvLyB8aW1h
Z2VLbm93blRvQmVDb21wbGV0ZXwgc2hvdWxkIGJlIHNldCBpZiB0aGUgY2FsbGVyIGtub3dzIHRo
ZSBlbnRpcmUgaW1hZ2UgaGFzIGJlZW4gZGVjb2RlZC4KICAgICBib29sIHNob3VsZEFuaW1hdGUo
KTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRBbmltYXRpb24oQ2F0Y2hVcEFuaW1hdGlvbiA9IENh
dGNoVXApIG92ZXJyaWRlOwotICAgIHZvaWQgYWR2YW5jZUFuaW1hdGlvbihUaW1lciYpOworICAg
IHZvaWQgYWR2YW5jZUFuaW1hdGlvbigpOwogCiAgICAgLy8gRnVuY3Rpb24gdGhhdCBkb2VzIHRo
ZSByZWFsIHdvcmsgb2YgYWR2YW5jaW5nIHRoZSBhbmltYXRpb24uICBXaGVuCiAgICAgLy8gc2tp
cHBpbmdGcmFtZXMgaXMgdHJ1ZSwgd2UncmUgaW4gdGhlIG1pZGRsZSBvZiBhIGxvb3AgdHJ5aW5n
IHRvIHNraXAgb3ZlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVk
aWFQbGF5ZXIuY3BwCmluZGV4IGZkMzFlN2EyOGY0ZGNjYTdlY2VkYWUzZjM0ZWM4MDMyMDE5Yzg1
ZDMuLmYxMTM2NWUxM2QzYTUyNjdiYzY1ZWFhNTdjZDhhZDYwNGZkZTk2YmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKQEAgLTMwNyw3
ICszMDcsNyBAQCBzdGF0aWMgTWVkaWFQbGF5ZXJGYWN0b3J5KiBuZXh0TWVkaWFFbmdpbmUoTWVk
aWFQbGF5ZXJGYWN0b3J5KiBjdXJyZW50KQogCiBNZWRpYVBsYXllcjo6TWVkaWFQbGF5ZXIoTWVk
aWFQbGF5ZXJDbGllbnQmIGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1f
cmVsb2FkVGltZXIodGhpcywgJk1lZGlhUGxheWVyOjpyZWxvYWRUaW1lckZpcmVkKQorICAgICwg
bV9yZWxvYWRUaW1lcigqdGhpcywgJk1lZGlhUGxheWVyOjpyZWxvYWRUaW1lckZpcmVkKQogICAg
ICwgbV9wcml2YXRlKGNyZWF0ZU51bGxNZWRpYVBsYXllcih0aGlzKSkKICAgICAsIG1fY3VycmVu
dE1lZGlhRW5naW5lKDApCiAgICAgLCBtX3ByZWxvYWQoQXV0bykKQEAgLTk1NSw3ICs5NTUsNyBA
QCB1bnNpZ25lZCBNZWRpYVBsYXllcjo6dmlkZW9EZWNvZGVkQnl0ZUNvdW50KCkgY29uc3QKICAg
ICByZXR1cm4gbV9wcml2YXRlLT52aWRlb0RlY29kZWRCeXRlQ291bnQoKTsKIH0KIAotdm9pZCBN
ZWRpYVBsYXllcjo6cmVsb2FkVGltZXJGaXJlZChUaW1lciYpCit2b2lkIE1lZGlhUGxheWVyOjpy
ZWxvYWRUaW1lckZpcmVkKCkKIHsKICAgICBtX3ByaXZhdGUtPmNhbmNlbExvYWQoKTsKICAgICBs
b2FkV2l0aE5leHRNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRleCBkNGI4OWMxNTEy
MjcyODkxMWIxZjA4MDA0NTQ0MmRjMjVmMTNiNDg3Li40M2Q5NjUzMWMyZjczY2UzMWRkNWVlNmRl
NTJmM2QzMWMxYWQ0NTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L01lZGlhUGxheWVyLmgKQEAgLTU4MCw3ICs1ODAsNyBAQCBwcml2YXRlOgogICAgIE1lZGlhUGxh
eWVyKE1lZGlhUGxheWVyQ2xpZW50Jik7CiAgICAgTWVkaWFQbGF5ZXJGYWN0b3J5KiBuZXh0QmVz
dE1lZGlhRW5naW5lKE1lZGlhUGxheWVyRmFjdG9yeSopIGNvbnN0OwogICAgIHZvaWQgbG9hZFdp
dGhOZXh0TWVkaWFFbmdpbmUoTWVkaWFQbGF5ZXJGYWN0b3J5Kik7Ci0gICAgdm9pZCByZWxvYWRU
aW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCByZWxvYWRUaW1lckZpcmVkKCk7CiAKICAgICBz
dGF0aWMgdm9pZCBpbml0aWFsaXplTWVkaWFFbmdpbmVzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKaW5kZXggNjZkZjZiZjJiYzE0MWU2
ZTNhNGZjZTcyMmI0NTcyMDU5OTBlOTE4Ny4uNGZiZDk5OWQ2Zjc5NDkwNDk2NjBmOWFkN2U4Zjc5
NDY4Y2JhYzgyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
U2hhZG93Qmx1ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hh
ZG93Qmx1ci5jcHAKQEAgLTU3LDcgKzU3LDcgQEAgY2xhc3MgU2NyYXRjaEJ1ZmZlciB7CiAgICAg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgU2NyYXRjaEJ1ZmZlcigpCi0g
ICAgICAgIDogbV9wdXJnZVRpbWVyKHRoaXMsICZTY3JhdGNoQnVmZmVyOjp0aW1lckZpcmVkKQor
ICAgICAgICA6IG1fcHVyZ2VUaW1lcigqdGhpcywgJlNjcmF0Y2hCdWZmZXI6OnRpbWVyRmlyZWQp
CiAgICAgICAgICwgbV9sYXN0V2FzSW5zZXQoZmFsc2UpCiAjaWYgIUFTU0VSVF9ESVNBQkxFRAog
ICAgICAgICAsIG1fYnVmZmVySW5Vc2UoZmFsc2UpCkBAIC0xMzAsNyArMTMwLDcgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBTY3JhdGNoQnVmZmVyJiBzaGFyZWQoKTsKIAogcHJpdmF0ZToKLSAgICB2
b2lkIHRpbWVyRmlyZWQoVGltZXIqKQorICAgIHZvaWQgdGltZXJGaXJlZCgpCiAgICAgewogICAg
ICAgICBjbGVhclNjcmF0Y2hCdWZmZXIoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFTZWxlY3Rpb25Hcm91cEFW
Rk9iakMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9N
ZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oCmluZGV4IDQ3MTc0MGRhZTg5YTU5NjU2NjU4Yzk4
NzVmMzI2YjgzODgwMzI5ZDQuLmJlM2RhYzc0YzllOGUxMDA1MzIxZDU5MjZhZmE3Zjk1NWU0MThm
OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5o
CkBAIC04NCw3ICs4NCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgTWVkaWFTZWxlY3Rpb25H
cm91cEFWRk9iakMoQVZQbGF5ZXJJdGVtKiwgQVZNZWRpYVNlbGVjdGlvbkdyb3VwKik7CiAKLSAg
ICB2b2lkIHNlbGVjdGlvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHNlbGVjdGlvblRp
bWVyRmlyZWQoKTsKIAogICAgIFJldGFpblB0cjxBVlBsYXllckl0ZW0+IG1fcGxheWVySXRlbTsK
ICAgICBSZXRhaW5QdHI8QVZNZWRpYVNlbGVjdGlvbkdyb3VwPiBtX21lZGlhU2VsZWN0aW9uR3Jv
dXA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vTWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakMubW0K
aW5kZXggYjdmZGU4ZWJiYjAyYmMyMDRkNzFmMjkzMTc2MmMyZmZjMjg1NThiNC4uZTdhMTZiZjhl
ZTlhYTFlZTMzZGEwZjIyYmI3NjYxZTJhNTg5YWMyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhU2VsZWN0aW9uR3JvdXBBVkZP
YmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5tbQpAQCAtODksNyArODksNyBAQCBNZWRpYVNl
bGVjdGlvbkdyb3VwQVZGT2JqQzo6TWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakMoQVZQbGF5ZXJJ
dGVtICppdGVtLCBBVk1lZAogICAgIDogbV9wbGF5ZXJJdGVtKGl0ZW0pCiAgICAgLCBtX21lZGlh
U2VsZWN0aW9uR3JvdXAoZ3JvdXApCiAgICAgLCBtX3NlbGVjdGVkT3B0aW9uKG51bGxwdHIpCi0g
ICAgLCBtX3NlbGVjdGlvblRpbWVyKHRoaXMsICZNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQzo6
c2VsZWN0aW9uVGltZXJGaXJlZCkKKyAgICAsIG1fc2VsZWN0aW9uVGltZXIoKnRoaXMsICZNZWRp
YVNlbGVjdGlvbkdyb3VwQVZGT2JqQzo6c2VsZWN0aW9uVGltZXJGaXJlZCkKIHsKICAgICB1cGRh
dGVPcHRpb25zKCk7CiB9CkBAIC0xNDEsNyArMTQxLDcgQEAgdm9pZCBNZWRpYVNlbGVjdGlvbkdy
b3VwQVZGT2JqQzo6c2V0U2VsZWN0ZWRPcHRpb24oTWVkaWFTZWxlY3Rpb25PcHRpb25BVkZPYmpD
KgogICAgIG1fc2VsZWN0aW9uVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIE1lZGlh
U2VsZWN0aW9uR3JvdXBBVkZPYmpDOjpzZWxlY3Rpb25UaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQg
TWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakM6OnNlbGVjdGlvblRpbWVyRmlyZWQoKQogewogICAg
IFttX3BsYXllckl0ZW0gc2VsZWN0TWVkaWFPcHRpb246KG1fc2VsZWN0ZWRPcHRpb24gPyBtX3Nl
bGVjdGVkT3B0aW9uLT5hdk1lZGlhU2VsZWN0aW9uT3B0aW9uKCkgOiBuaWwpIGluTWVkaWFTZWxl
Y3Rpb25Hcm91cDptX21lZGlhU2VsZWN0aW9uR3JvdXAuZ2V0KCldOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJj
ZUFWRk9iakMuaAppbmRleCBmNzJhY2M5OTdkYjlhYTY0M2RlOWI1Njk3NGVkNzExZDI0MmYwOTQ5
Li5lNjAxNzZkYjVmZWQ4NmRhMDBkMzc4ZTBmOTAxZjYyNWYxNjhjOWU1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBs
YXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNv
dXJjZUFWRk9iakMuaApAQCAtMTY4LDcgKzE2OCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBlbnN1
cmVMYXllcigpOwogICAgIHZvaWQgZGVzdHJveUxheWVyKCk7CiAgICAgYm9vbCBzaG91bGRCZVBs
YXlpbmcoKSBjb25zdDsKLSAgICB2b2lkIHNlZWtUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9p
ZCBzZWVrVGltZXJGaXJlZCgpOwogCiAgICAgZnJpZW5kIGNsYXNzIE1lZGlhU291cmNlUHJpdmF0
ZUFWRk9iakM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01l
ZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbQppbmRleCA1MmQ4YTJlMGViMDQw
NGNkYzc3OWY4N2Q3NDkzMTQ2MmU4Yzg1NWYxLi42MjVjNzE1MTg4MzQwZTgwZTgzZGFlMmM2YTJh
YmRjODMzNDE3MjdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCkBAIC0xNDQsNyArMTQ0
LDcgQEAgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpNZWRpYVBsYXllclBy
aXZhdGVNZWRpYVNvdXJjZUFWRk9iakMoTWVkaWEKICAgICA6IG1fcGxheWVyKHBsYXllcikKICAg
ICAsIG1fd2Vha1B0ckZhY3RvcnkodGhpcykKICAgICAsIG1fc3luY2hyb25pemVyKGFkb3B0TlMo
W1tnZXRBVlNhbXBsZUJ1ZmZlclJlbmRlclN5bmNocm9uaXplckNsYXNzKCkgYWxsb2NdIGluaXRd
KSkKLSAgICAsIG1fc2Vla1RpbWVyKHRoaXMsICZNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJj
ZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKQorICAgICwgbV9zZWVrVGltZXIoKnRoaXMsICZNZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKQogICAgICwg
bV9zZXNzaW9uKG51bGxwdHIpCiAgICAgLCBtX25ldHdvcmtTdGF0ZShNZWRpYVBsYXllcjo6RW1w
dHkpCiAgICAgLCBtX3JlYWR5U3RhdGUoTWVkaWFQbGF5ZXI6OkhhdmVOb3RoaW5nKQpAQCAtNDIz
LDcgKzQyMyw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpz
ZWVrV2l0aFRvbGVyYW5jZShjb25zdCBNZWRpYVRpbWUmIHRpCiAgICAgbV9zZWVrVGltZXIuc3Rh
cnRPbmVTaG90KDApOwogfQogCi12b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZG
T2JqQzo6c2Vla1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBNZWRpYVBsYXllclByaXZhdGVNZWRp
YVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKCkKIHsKICAgICBzZWVrSW50ZXJuYWwoKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVy
UG9vbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9MYXllclBvb2wu
Y3BwCmluZGV4IDZmNGJlMWQ5ZGM2OGU1ZTQyMmViMTJiYmJlYzlhM2EwMTNlNTg0NDEuLjM0NGU5
NjQzNWMwMWFhNDBmNTMxNDgwMDdmNWU3OWFiOWE0ODA4MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvTGF5ZXJQb29sLmNwcApAQCAtMzcsNyArMzcsNyBA
QCBzdGF0aWMgY29uc3QgZG91YmxlIGNhcGFjaXR5RGVjYXlUaW1lID0gNTsKIExheWVyUG9vbDo6
TGF5ZXJQb29sKCkKICAgICA6IG1fdG90YWxCeXRlcygwKQogICAgICwgbV9tYXhCeXRlc0ZvclBv
b2woNDggKiAxMDI0ICogMTAyNCkKLSAgICAsIG1fcHJ1bmVUaW1lcih0aGlzLCAmTGF5ZXJQb29s
OjpwcnVuZVRpbWVyRmlyZWQpCisgICAgLCBtX3BydW5lVGltZXIoKnRoaXMsICZMYXllclBvb2w6
OnBydW5lVGltZXJGaXJlZCkKICAgICAsIG1fbGFzdEFkZFRpbWUoMCkKIHsKICAgICBhbGxMYXll
clBvb2xzKCkuYWRkKHRoaXMpOwpAQCAtMTEzLDcgKzExMyw3IEBAIHZvaWQgTGF5ZXJQb29sOjpz
Y2hlZHVsZVBydW5lKCkKICAgICBtX3BydW5lVGltZXIuc3RhcnRPbmVTaG90KDEpOwogfQogCi12
b2lkIExheWVyUG9vbDo6cHJ1bmVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTGF5ZXJQb29sOjpw
cnVuZVRpbWVyRmlyZWQoKQogewogICAgIHVuc2lnbmVkIHNocmlua1RvID0gZGVjYXllZENhcGFj
aXR5KCk7CiAgICAgd2hpbGUgKG1fdG90YWxCeXRlcyA+IHNocmlua1RvKSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9MYXllclBvb2wuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5oCmluZGV4IDhiY2JlNTYw
ZmNhYTg2MDgxYTJjZDFkNjI1Yjc4YTI3YWI2ZWM4MjAuLmIzN2Y3MmMxMGJjYjM1NDM1MjgyODg1
YTQxYWU4ZmE2ZDZkZmFhYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhL0xheWVyUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL0xheWVyUG9vbC5oCkBAIC02MSw3ICs2MSw3IEBAIHByaXZhdGU6CiAKICAgICBib29s
IGNhblJldXNlTGF5ZXJXaXRoU2l6ZShjb25zdCBJbnRTaXplJiBzaXplKSBjb25zdCB7IHJldHVy
biBtX21heEJ5dGVzRm9yUG9vbCAmJiAhc2l6ZS5pc0VtcHR5KCk7IH0KICAgICB2b2lkIHNjaGVk
dWxlUHJ1bmUoKTsKLSAgICB2b2lkIHBydW5lVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQg
cHJ1bmVUaW1lckZpcmVkKCk7CiAKICAgICB0eXBlZGVmIGVudW0geyBMZWF2ZVVuY2hhbmdlZCwg
TWFya0FzVXNlZCB9IEFjY2Vzc1R5cGU7CiAgICAgTGF5ZXJMaXN0JiBsaXN0T2ZMYXllcnNXaXRo
U2l6ZShjb25zdCBJbnRTaXplJiwgQWNjZXNzVHlwZSA9IExlYXZlVW5jaGFuZ2VkKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVDb250cm9sbGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVDb250cm9sbGVy
LmNwcAppbmRleCBmNGNhOTEwM2RiMTg2MmFlYTg4Y2QwZjMzNGIwZGIwMTg4NGUyNmQxLi4zZGY4
MDNjOGFhZDcwMGE0MzMyNDdhZTVjYTZkMTZjZmIzMWU4YzE1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlQ29udHJvbGxlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUNvbnRyb2xsZXIuY3BwCkBAIC00
NCw3ICs0NCw3IEBAIFRpbGVDb250cm9sbGVyOjpUaWxlQ29udHJvbGxlcihQbGF0Zm9ybUNBTGF5
ZXIqIHJvb3RQbGF0Zm9ybUxheWVyKQogICAgIDogbV90aWxlQ2FjaGVMYXllcihyb290UGxhdGZv
cm1MYXllcikKICAgICAsIG1fdGlsZUdyaWQoc3RkOjptYWtlX3VuaXF1ZTxUaWxlR3JpZD4oKnRo
aXMpKQogICAgICwgbV90aWxlU2l6ZShkZWZhdWx0VGlsZVdpZHRoLCBkZWZhdWx0VGlsZUhlaWdo
dCkKLSAgICAsIG1fdGlsZVJldmFsaWRhdGlvblRpbWVyKHRoaXMsICZUaWxlQ29udHJvbGxlcjo6
dGlsZVJldmFsaWRhdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX3RpbGVSZXZhbGlkYXRpb25UaW1l
cigqdGhpcywgJlRpbGVDb250cm9sbGVyOjp0aWxlUmV2YWxpZGF0aW9uVGltZXJGaXJlZCkKICAg
ICAsIG1fem9vbWVkT3V0Q29udGVudHNTY2FsZSgwKQogICAgICwgbV9kZXZpY2VTY2FsZUZhY3Rv
cihvd25pbmdHcmFwaGljc0xheWVyKCktPnBsYXRmb3JtQ0FMYXllckRldmljZVNjYWxlRmFjdG9y
KCkpCiAgICAgLCBtX3RpbGVDb3ZlcmFnZShDb3ZlcmFnZUZvclZpc2libGVBcmVhKQpAQCAtMzQw
LDcgKzM0MCw3IEBAIGJvb2wgVGlsZUNvbnRyb2xsZXI6OnNob3VsZFRlbXBvcmFyaWx5UmV0YWlu
VGlsZUNvaG9ydHMoKSBjb25zdAogICAgIHJldHVybiBvd25pbmdHcmFwaGljc0xheWVyKCktPnBs
YXRmb3JtQ0FMYXllclNob3VsZFRlbXBvcmFyaWx5UmV0YWluVGlsZUNvaG9ydHMobV90aWxlQ2Fj
aGVMYXllcik7CiB9CiAKLXZvaWQgVGlsZUNvbnRyb2xsZXI6OnRpbGVSZXZhbGlkYXRpb25UaW1l
ckZpcmVkKFRpbWVyKikKK3ZvaWQgVGlsZUNvbnRyb2xsZXI6OnRpbGVSZXZhbGlkYXRpb25UaW1l
ckZpcmVkKCkKIHsKICAgICBpZiAoIW93bmluZ0dyYXBoaWNzTGF5ZXIoKSkKICAgICAgICAgcmV0
dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGls
ZUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVD
b250cm9sbGVyLmgKaW5kZXggNGFlMWExYjgxMjZiMDQxZTY4ZWFkZDM4YWUwNGJjNjk2NjdhNTJm
Zi4uODIyZDJjNDhhYzMxMGQwZmYyNzgyYzU2MDA0Y2NjZjlkZjU4YjVjZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUNvbnRyb2xsZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlQ29udHJvbGxlci5oCkBA
IC0xNTYsNyArMTU2LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGZsb2F0IHpvb21lZE91dENv
bnRlbnRzU2NhbGUoKSBjb25zdCBvdmVycmlkZTsKIAogCi0gICAgdm9pZCB0aWxlUmV2YWxpZGF0
aW9uVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgdGlsZVJldmFsaWRhdGlvblRpbWVyRmly
ZWQoKTsKIAogICAgIHZvaWQgc2V0TmVlZHNSZXZhbGlkYXRlVGlsZXMoKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdyaWQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdyaWQuY3BwCmluZGV4IGE3NzY0
M2JhMDQwNjI1YzYyOWU4YWEyYzQ5ZWE3YTQzNTI5NDY2ODQuLmQ1MWUwYjNlZjk3MjIxM2Y3MTQ1
NWYyYmE0NWZkYTgxZjI3ODdmYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NhL1RpbGVHcmlkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYS9UaWxlR3JpZC5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgVGlsZUdyaWQ6OlRpbGVH
cmlkKFRpbGVDb250cm9sbGVyJiBjb250cm9sbGVyKQogICAgIDogbV9jb250cm9sbGVyKGNvbnRy
b2xsZXIpCiAgICAgLCBtX2NvbnRhaW5lckxheWVyKCpjb250cm9sbGVyLnJvb3RMYXllcigpLmNy
ZWF0ZUNvbXBhdGlibGVMYXllcihQbGF0Zm9ybUNBTGF5ZXI6OkxheWVyVHlwZUxheWVyLCBudWxs
cHRyKSkKICAgICAsIG1fc2NhbGUoMSkKLSAgICAsIG1fY29ob3J0UmVtb3ZhbFRpbWVyKHRoaXMs
ICZUaWxlR3JpZDo6Y29ob3J0UmVtb3ZhbFRpbWVyRmlyZWQpCisgICAgLCBtX2NvaG9ydFJlbW92
YWxUaW1lcigqdGhpcywgJlRpbGVHcmlkOjpjb2hvcnRSZW1vdmFsVGltZXJGaXJlZCkKIHsKICNp
Zm5kZWYgTkRFQlVHCiAgICAgbV9jb250YWluZXJMYXllci5nZXQoKS5zZXROYW1lKCJUaWxlR3Jp
ZCBDb250YWluZXIgTGF5ZXIiKTsKQEAgLTQ3Niw3ICs0NzYsNyBAQCBkb3VibGUgVGlsZUdyaWQ6
OlRpbGVDb2hvcnRJbmZvOjp0aW1lVW50aWxFeHBpcmF0aW9uKCkKICAgICByZXR1cm4gY3JlYXRp
b25UaW1lIC0gdGltZVRocmVzaG9sZDsKIH0KIAotdm9pZCBUaWxlR3JpZDo6Y29ob3J0UmVtb3Zh
bFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBUaWxlR3JpZDo6Y29ob3J0UmVtb3ZhbFRpbWVyRmly
ZWQoKQogewogICAgIGlmIChtX2NvaG9ydExpc3QuaXNFbXB0eSgpKSB7CiAgICAgICAgIG1fY29o
b3J0UmVtb3ZhbFRpbWVyLnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jYS9UaWxlR3JpZC5oCmluZGV4IDU2ZjUyOGRlN2EzNzhlNGQyNGEwMjkzYzRjZmUwZWVh
MmMxZjI5YjkuLmM1OWFlMDk5MmVmYjMyZWI1OTM4NDk5MWQzN2U2ZTdlNmJhMWU0NTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdyaWQuaApAQCAtMTIz
LDcgKzEyMyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZW1vdmVUaWxlc0luQ29ob3J0KFRpbGVD
b2hvcnQpOwogCiAgICAgdm9pZCBzY2hlZHVsZUNvaG9ydFJlbW92YWwoKTsKLSAgICB2b2lkIGNv
aG9ydFJlbW92YWxUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCBjb2hvcnRSZW1vdmFsVGlt
ZXJGaXJlZCgpOwogICAgIFRpbGVDb2hvcnQgbmV4dFRpbGVDb2hvcnQoKSBjb25zdDsKICAgICB2
b2lkIHN0YXJ0ZWROZXdDb2hvcnQoVGlsZUNvaG9ydCk7CiAgICAgVGlsZUNvaG9ydCBuZXdlc3RU
aWxlQ29ob3J0KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jZy9JT1N1cmZhY2VQb29sLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NnL0lPU3VyZmFjZVBvb2wuY3BwCmluZGV4IDUyODVkY2U2ZTdmNDc3YzE3ZWQ5NTcw
NGE1OGEyY2MxMDcyZGRjNWYuLjJlYThkY2ZjMjE1NDY2ODVmNDU1YWZmZDYxYWE1NTdhMGVmNmVm
NDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0lPU3Vy
ZmFjZVBvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0lP
U3VyZmFjZVBvb2wuY3BwCkBAIC01Miw3ICs1Miw3IEBAIGNvbnN0IHNpemVfdCBtYXhpbXVtSW5V
c2VCeXRlcyA9IGRlZmF1bHRNYXhpbXVtQnl0ZXNDYWNoZWQgLyAyOwogbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBJT1N1cmZhY2VQb29sOjpJT1N1cmZhY2VQb29sKCkKLSAgICA6IG1fY29sbGVjdGlv
blRpbWVyKHRoaXMsICZJT1N1cmZhY2VQb29sOjpjb2xsZWN0aW9uVGltZXJGaXJlZCkKKyAgICA6
IG1fY29sbGVjdGlvblRpbWVyKCp0aGlzLCAmSU9TdXJmYWNlUG9vbDo6Y29sbGVjdGlvblRpbWVy
RmlyZWQpCiAgICAgLCBtX2J5dGVzQ2FjaGVkKDApCiAgICAgLCBtX2luVXNlQnl0ZXNDYWNoZWQo
MCkKICAgICAsIG1fbWF4aW11bUJ5dGVzQ2FjaGVkKGRlZmF1bHRNYXhpbXVtQnl0ZXNDYWNoZWQp
CkBAIC0yOTIsNyArMjkyLDcgQEAgYm9vbCBJT1N1cmZhY2VQb29sOjptYXJrT2xkZXJTdXJmYWNl
c1B1cmdlYWJsZSgpCiAgICAgcmV0dXJuIG1hcmtlZEFsbFN1cmZhY2VzOwogfQogCi12b2lkIElP
U3VyZmFjZVBvb2w6OmNvbGxlY3Rpb25UaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSU9TdXJmYWNl
UG9vbDo6Y29sbGVjdGlvblRpbWVyRmlyZWQoKQogewogICAgIGNvbGxlY3RJblVzZVN1cmZhY2Vz
KCk7CiAgICAgYm9vbCBtYXJrZWRBbGxTdXJmYWNlcyA9IG1hcmtPbGRlclN1cmZhY2VzUHVyZ2Vh
YmxlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9J
T1N1cmZhY2VQb29sLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9JT1N1
cmZhY2VQb29sLmgKaW5kZXggYmE0NDExNjhjZmQ3NTZhMTU1Y2Q2Y2U2MDcyZjU2NzUxZGFmNzNi
Zi4uOThlYTllOTk1YmE5NzhhMmQ0N2Y5MWEzMmYxNTZlYmVhYWFmNDEyNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvSU9TdXJmYWNlUG9vbC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0lPU3VyZmFjZVBvb2wuaApAQCAt
ODcsNyArODcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdHJ5RXZpY3RPbGRlc3RDYWNoZWRTdXJm
YWNlKCk7CiAKICAgICB2b2lkIHNjaGVkdWxlQ29sbGVjdGlvblRpbWVyKCk7Ci0gICAgdm9pZCBj
b2xsZWN0aW9uVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgY29sbGVjdGlvblRpbWVyRmly
ZWQoKTsKICAgICB2b2lkIGNvbGxlY3RJblVzZVN1cmZhY2VzKCk7CiAgICAgYm9vbCBtYXJrT2xk
ZXJTdXJmYWNlc1B1cmdlYWJsZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jZy9TdWJpbWFnZUNhY2hlV2l0aFRpbWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1N1YmltYWdlQ2FjaGVXaXRoVGltZXIuY3BwCmluZGV4
IDg2NzE0ZTMyODgxY2MzYzg4ZTUyMzMzN2VmNjlmY2VkOTNkNzM1NGYuLmIzOTgxNzk3YTNmMDQz
NzE4ZWUzMjEzNWU1Mzc3ZjYyZGFlN2M1NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NnL1N1YmltYWdlQ2FjaGVXaXRoVGltZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1N1YmltYWdlQ2FjaGVXaXRoVGltZXIuY3Bw
CkBAIC02MSw3ICs2MSw3IEBAIHN0cnVjdCBTdWJpbWFnZUNhY2hlQWRkZXIgewogfTsKIAogU3Vi
aW1hZ2VDYWNoZVdpdGhUaW1lcjo6U3ViaW1hZ2VDYWNoZVdpdGhUaW1lcigpCi0gICAgOiBtX3Rp
bWVyKHRoaXMsICZTdWJpbWFnZUNhY2hlV2l0aFRpbWVyOjppbnZhbGlkYXRlQ2FjaGVUaW1lckZp
cmVkLCBzdWJpbWFnZUNhY2hlQ2xlYXJEZWxheSkKKyAgICA6IG1fdGltZXIoKnRoaXMsICZTdWJp
bWFnZUNhY2hlV2l0aFRpbWVyOjppbnZhbGlkYXRlQ2FjaGVUaW1lckZpcmVkLCBzdWJpbWFnZUNh
Y2hlQ2xlYXJEZWxheSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0LmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaAppbmRleCBl
YTM1ZTIwMDBiOGVjZGVjMjkwOGJiMTdjNWFjZWUxNWYxNGY0ZTQ4Li4xMWI2YTA2YjRkNTI5ZTRi
NjQ2MTJmZmMxZThiNmFhNTM3NDFkZTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaApA
QCAtMTU4LDcgKzE1OCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB1cGRhdGVTdGF0ZXMoKTsKICAg
ICB2b2lkIGRvU2VlaygpOwogICAgIHZvaWQgY2FuY2VsU2VlaygpOwotICAgIHZvaWQgc2Vla1Rp
bWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHNlZWtUaW1lckZpcmVkKCk7CiAgICAgTWVkaWFU
aW1lIG1heE1lZGlhVGltZUxvYWRlZCgpIGNvbnN0OwogICAgIHZvaWQgZGlzYWJsZVVuc3VwcG9y
dGVkVHJhY2tzKCk7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0KaW5kZXggNTZi
M2QyZjYwYTFiZDIxMzU3Y2MzYWFjYzdjMjU1NjgyNDdjOWFkOC4uMjVmNjgwODY4ZTk3NDNjYjBh
ZWRjOTY3MDEwYjBmNGQ3YzNiOWQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbQpA
QCAtMTgzLDcgKzE4Myw3IEBAIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpNZWRpYVBsYXllclBy
aXZhdGVRVEtpdChNZWRpYVBsYXllciogcGxheWVyKQogICAgIDogbV9wbGF5ZXIocGxheWVyKQog
ICAgICwgbV9vYmpjT2JzZXJ2ZXIoYWRvcHROUyhbW1dlYkNvcmVNb3ZpZU9ic2VydmVyIGFsbG9j
XSBpbml0V2l0aENhbGxiYWNrOnRoaXNdKSkKICAgICAsIG1fc2Vla1RvKE1lZGlhVGltZTo6aW52
YWxpZFRpbWUoKSkKLSAgICAsIG1fc2Vla1RpbWVyKHRoaXMsICZNZWRpYVBsYXllclByaXZhdGVR
VEtpdDo6c2Vla1RpbWVyRmlyZWQpCisgICAgLCBtX3NlZWtUaW1lcigqdGhpcywgJk1lZGlhUGxh
eWVyUHJpdmF0ZVFUS2l0OjpzZWVrVGltZXJGaXJlZCkKICAgICAsIG1fbmV0d29ya1N0YXRlKE1l
ZGlhUGxheWVyOjpFbXB0eSkKICAgICAsIG1fcmVhZHlTdGF0ZShNZWRpYVBsYXllcjo6SGF2ZU5v
dGhpbmcpCiAgICAgLCBtX3JlY3QoKQpAQCAtNjc4LDcgKzY3OCw3IEBAIHZvaWQgTWVkaWFQbGF5
ZXJQcml2YXRlUVRLaXQ6OmNhbmNlbFNlZWsoKQogICAgIG1fc2Vla1RpbWVyLnN0b3AoKTsKIH0K
IAotdm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6c2Vla1RpbWVyRmlyZWQoVGltZXImKQor
dm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6c2Vla1RpbWVyRmlyZWQoKQogeyAgICAgICAg
CiAgICAgaWYgKCFtZXRhRGF0YUF2YWlsYWJsZSgpIHx8ICFzZWVraW5nKCkgfHwgY3VycmVudE1l
ZGlhVGltZSgpID09IG1fc2Vla1RvKSB7CiAgICAgICAgIGNhbmNlbFNlZWsoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUuaAppbmRleCBmODc1OWE0NDJm
NjJhZTc4NGM1NDA3YmIyMzQwOTQxNWJjODRlODAwLi40ZjNhNTQyODEwNDIwZGY3NjIxZmFhNzYx
YWEzMzc1NTk5NmM1NDc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
TGVnYWN5VGlsZUNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL0xlZ2Fj
eVRpbGVDYWNoZS5oCkBAIC0xNjksNyArMTY5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGNyZWF0
ZVRpbGVzSW5BY3RpdmVHcmlkKFN5bmNocm9ub3VzVGlsZUNyZWF0aW9uTW9kZSk7CiAgICAgdm9p
ZCBzY2hlZHVsZUxheWVyRmx1c2hGb3JQZW5kaW5nUmVwYWludCgpOwogCi0gICAgdm9pZCB0aWxl
Q3JlYXRpb25UaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCB0aWxlQ3JlYXRpb25UaW1lckZp
cmVkKCk7CiAKICAgICB2b2lkIGRyYXdSZXBsYWNlbWVudEltYWdlKExlZ2FjeVRpbGVMYXllcios
IENHQ29udGV4dFJlZiwgQ0dJbWFnZVJlZik7CiAgICAgdm9pZCBkcmF3V2luZG93Q29udGVudChM
ZWdhY3lUaWxlTGF5ZXIqLCBDR0NvbnRleHRSZWYsIENHUmVjdCBkaXJ0eVJlY3QpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL0xlZ2FjeVRpbGVDYWNoZS5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUubW0KaW5kZXggN2ZhOGE2
ZWZkOTA1ZmU4ZTJmMDVmOWFmMDQ4MmNjNWJjZDdjZmUwMS4uMzJlOTczNjg5NTcwYjQwY2Q0ZDFj
ZjVmNzdkOTY3Y2M4MTFmMzIxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL0xlZ2FjeVRpbGVDYWNoZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
TGVnYWN5VGlsZUNhY2hlLm1tCkBAIC04Myw3ICs4Myw3IEBAIExlZ2FjeVRpbGVDYWNoZTo6TGVn
YWN5VGlsZUNhY2hlKFdBS1dpbmRvdyogd2luZG93KQogICAgICwgbV9kaWRDYWxsV2lsbFN0YXJ0
U2Nyb2xsaW5nT3Jab29taW5nKGZhbHNlKQogICAgICwgbV96b29tZWRPdXRUaWxlR3JpZChQYXNz
T3duUHRyPExlZ2FjeVRpbGVHcmlkPigpKQogICAgICwgbV96b29tZWRJblRpbGVHcmlkKFBhc3NP
d25QdHI8TGVnYWN5VGlsZUdyaWQ+KCkpCi0gICAgLCBtX3RpbGVDcmVhdGlvblRpbWVyKHRoaXMs
ICZMZWdhY3lUaWxlQ2FjaGU6OnRpbGVDcmVhdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX3RpbGVD
cmVhdGlvblRpbWVyKCp0aGlzLCAmTGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3JlYXRpb25UaW1lckZp
cmVkKQogICAgICwgbV9jdXJyZW50U2NhbGUoMS5mKQogICAgICwgbV9wZW5kaW5nU2NhbGUoMCkK
ICAgICAsIG1fcGVuZGluZ1pvb21lZE91dFNjYWxlKDApCkBAIC00MTUsNyArNDE1LDcgQEAgdm9p
ZCBMZWdhY3lUaWxlQ2FjaGU6OmZpbmlzaGVkQ3JlYXRpbmdUaWxlcyhib29sIGRpZENyZWF0ZVRp
bGVzLCBib29sIGNyZWF0ZU1vcmUKICAgICAgICAgbV90aWxlQ3JlYXRpb25UaW1lci5zdGFydE9u
ZVNob3QoMCk7CiB9CiAKLXZvaWQgTGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3JlYXRpb25UaW1lckZp
cmVkKFRpbWVyKikKK3ZvaWQgTGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3JlYXRpb25UaW1lckZpcmVk
KCkKIHsKICAgICBpZiAoaXNUaWxlQ3JlYXRpb25TdXNwZW5kZWQoKSkKICAgICAgICAgcmV0dXJu
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0hJREdhbWVwYWRQcm92
aWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVy
LmNwcAppbmRleCBjNDkxY2RkYmRhNDE2NWNiNzY1OWVkN2JmYzU2NmE1NDg3NGM4OWY4Li4yNGYx
YjA4NDc1Yzc1YzQ5MTM0NjM5NDFmYTBlNWZhMmIwMWM1ZGJiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmNwcApAQCAtODEsOCArODEs
OCBAQCBISURHYW1lcGFkUHJvdmlkZXImIEhJREdhbWVwYWRQcm92aWRlcjo6c2hhcmVkKCkKIAog
SElER2FtZXBhZFByb3ZpZGVyOjpISURHYW1lcGFkUHJvdmlkZXIoKQogICAgIDogbV9zaG91bGRE
aXNwYXRjaENhbGxiYWNrcyhmYWxzZSkKLSAgICAsIG1fY29ubmVjdGlvbkRlbGF5VGltZXIodGhp
cywgJkhJREdhbWVwYWRQcm92aWRlcjo6Y29ubmVjdGlvbkRlbGF5VGltZXJGaXJlZCkKLSAgICAs
IG1faW5wdXROb3RpZmljYXRpb25UaW1lcih0aGlzLCAmSElER2FtZXBhZFByb3ZpZGVyOjppbnB1
dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX2Nvbm5lY3Rpb25EZWxheVRpbWVyKCp0
aGlzLCAmSElER2FtZXBhZFByb3ZpZGVyOjpjb25uZWN0aW9uRGVsYXlUaW1lckZpcmVkKQorICAg
ICwgbV9pbnB1dE5vdGlmaWNhdGlvblRpbWVyKCp0aGlzLCAmSElER2FtZXBhZFByb3ZpZGVyOjpp
bnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQpCiB7CiAgICAgbV9tYW5hZ2VyID0gYWRvcHRDRihJ
T0hJRE1hbmFnZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0lPSElET3B0aW9uc1R5cGVO
b25lKSk7CiAKQEAgLTEwOCw3ICsxMDgsNyBAQCB1bnNpZ25lZCBISURHYW1lcGFkUHJvdmlkZXI6
OmluZGV4Rm9yTmV3bHlDb25uZWN0ZWREZXZpY2UoKQogICAgIHJldHVybiBpbmRleDsKIH0KIAot
dm9pZCBISURHYW1lcGFkUHJvdmlkZXI6OmNvbm5lY3Rpb25EZWxheVRpbWVyRmlyZWQoVGltZXIm
KQordm9pZCBISURHYW1lcGFkUHJvdmlkZXI6OmNvbm5lY3Rpb25EZWxheVRpbWVyRmlyZWQoKQog
ewogICAgIG1fc2hvdWxkRGlzcGF0Y2hDYWxsYmFja3MgPSB0cnVlOwogfQpAQCAtMjI4LDcgKzIy
OCw3IEBAIHZvaWQgSElER2FtZXBhZFByb3ZpZGVyOjp2YWx1ZXNDaGFuZ2VkKElPSElEVmFsdWVS
ZWYgdmFsdWUpCiAgICAgICAgIG1faW5wdXROb3RpZmljYXRpb25UaW1lci5zdGFydE9uZVNob3Qo
SW5wdXROb3RpZmljYXRpb25EZWxheSk7CiB9CiAKLXZvaWQgSElER2FtZXBhZFByb3ZpZGVyOjpp
bnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9pZCBISURHYW1lcGFkUHJvdmlk
ZXI6OmlucHV0Tm90aWZpY2F0aW9uVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX3Nob3VsZERp
c3BhdGNoQ2FsbGJhY2tzKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmgKaW5kZXggZmZlNzVhZGYwNGU5ZWNhZTUy
Mzg3ZjJjNzY2Yzk5YjFiOTE4ZDViNS4uODBlMzBlZWNiMDUzMTY1OTU2MDIxMGYzYmVjYzdkODZl
YzI1MjljZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0hJREdhbWVw
YWRQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9ISURHYW1lcGFk
UHJvdmlkZXIuaApAQCAtNjQsOCArNjQsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgb3BlbkFuZFNj
aGVkdWxlTWFuYWdlcigpOwogICAgIHZvaWQgY2xvc2VBbmRVbnNjaGVkdWxlTWFuYWdlcigpOwog
Ci0gICAgdm9pZCBjb25uZWN0aW9uRGVsYXlUaW1lckZpcmVkKFRpbWVyJik7Ci0gICAgdm9pZCBp
bnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25E
ZWxheVRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIGlucHV0Tm90aWZpY2F0aW9uVGltZXJGaXJlZCgp
OwogCiAgICAgdW5zaWduZWQgaW5kZXhGb3JOZXdseUNvbm5lY3RlZERldmljZSgpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oCmluZGV4IGIw
NmNkZWU5ZjZiOWE5NTFkZmViYzJjNmViYmJjZjQ1ODQ5OGNiNGMuLjk5YTFiYjlhNWQwNDU1Y2Ji
OWZiODlmYzMwYzMyOTdiY2NhMjMzYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9TY3JvbGxBbmltYXRvck1hYy5oCkBAIC03OCwxMCArNzgsMTAgQEAgcHJpdmF0ZToKICAg
ICBSZXRhaW5QdHI8V2ViU2Nyb2xsYmFyUGFpbnRlckRlbGVnYXRlPiBtX2hvcml6b250YWxTY3Jv
bGxiYXJQYWludGVyRGVsZWdhdGU7CiAgICAgUmV0YWluUHRyPFdlYlNjcm9sbGJhclBhaW50ZXJE
ZWxlZ2F0ZT4gbV92ZXJ0aWNhbFNjcm9sbGJhclBhaW50ZXJEZWxlZ2F0ZTsKIAotICAgIHZvaWQg
aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgaW5pdGlh
bFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCgpOwogICAgIFRpbWVyIG1faW5pdGlhbFNjcm9sbGJh
clBhaW50VGltZXI7CiAKLSAgICB2b2lkIHNlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJl
ZChUaW1lciYpOworICAgIHZvaWQgc2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lckZpcmVkKCk7
CiAgICAgVGltZXIgbV9zZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyOwogICAgIEZsb2F0U2l6
ZSBtX2NvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lclNjcm9sbERlbHRhOwogCkBAIC0xNTUsNyArMTU1
LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0Jv
dW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICBib29sIHBpbm5lZEluRGlyZWN0aW9u
KGZsb2F0IGRlbHRhWCwgZmxvYXQgZGVsdGFZKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGlt
ZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAK
ICAgICBib29sIGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0dXJlKGNvbnN0IFBsYXRm
b3JtV2hlZWxFdmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQppbmRleCA2YWZjZTFjNThhZDczMDU3
YWYyNTVhMjZhZDAwODY2YjA3MjY0Y2VkLi4wYTM2MTBlZjVhYmIzNThjODA2Nzk4NzEzNDU1YzA0
MzFkZTQ0ZTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xs
QW5pbWF0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFu
aW1hdG9yTWFjLm1tCkBAIC02NDEsMTEgKzY0MSwxMSBAQCBQYXNzT3duUHRyPFNjcm9sbEFuaW1h
dG9yPiBTY3JvbGxBbmltYXRvcjo6Y3JlYXRlKFNjcm9sbGFibGVBcmVhKiBzY3JvbGxhYmxlQXJl
YQogCiBTY3JvbGxBbmltYXRvck1hYzo6U2Nyb2xsQW5pbWF0b3JNYWMoU2Nyb2xsYWJsZUFyZWEq
IHNjcm9sbGFibGVBcmVhKQogICAgIDogU2Nyb2xsQW5pbWF0b3Ioc2Nyb2xsYWJsZUFyZWEpCi0g
ICAgLCBtX2luaXRpYWxTY3JvbGxiYXJQYWludFRpbWVyKHRoaXMsICZTY3JvbGxBbmltYXRvck1h
Yzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCkKLSAgICAsIG1fc2VuZENvbnRlbnRB
cmVhU2Nyb2xsZWRUaW1lcih0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OnNlbmRDb250ZW50QXJl
YVNjcm9sbGVkVGltZXJGaXJlZCkKKyAgICAsIG1faW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXIo
KnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJl
ZCkKKyAgICAsIG1fc2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lcigqdGhpcywgJlNjcm9sbEFu
aW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyRmlyZWQpCiAjaWYgRU5BQkxF
KFJVQkJFUl9CQU5ESU5HKQogICAgICwgbV9zY3JvbGxFbGFzdGljaXR5Q29udHJvbGxlcih0aGlz
KQotICAgICwgbV9zbmFwUnViYmVyQmFuZFRpbWVyKHRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6
c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKQorICAgICwgbV9zbmFwUnViYmVyQmFuZFRpbWVyKCp0
aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCkKICNlbmRp
ZgogICAgICwgbV9oYXZlU2Nyb2xsZWRTaW5jZVBhZ2VMb2FkKGZhbHNlKQogICAgICwgbV9uZWVk
c1Njcm9sbGVyU3R5bGVVcGRhdGUoZmFsc2UpCkBAIC0xMjU4LDcgKzEyNTgsNyBAQCB2b2lkIFNj
cm9sbEFuaW1hdG9yTWFjOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCiAgICAgbV9zbmFwUnVi
YmVyQmFuZFRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1
YmJlckJhbmRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBS
dWJiZXJCYW5kVGltZXJGaXJlZCgpCiB7CiAgICAgbV9zY3JvbGxFbGFzdGljaXR5Q29udHJvbGxl
ci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKIH0KQEAgLTEzMzksNyArMTMzOSw3IEBAIHZv
aWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnN0b3BTY3JvbGxiYXJQYWludFRpbWVyKCkKICAgICBtX2lu
aXRpYWxTY3JvbGxiYXJQYWludFRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRv
ck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZChUaW1lciYpCit2b2lkIFNjcm9s
bEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZpcmVkKCkKIHsKICAgICAv
LyBUbyBmb3JjZSB0aGUgc2Nyb2xsYmFycyB0byBmbGFzaCwgd2UgaGF2ZSB0byBjYWxsIGhpZGUg
Zmlyc3QuIE90aGVyd2lzZSwgdGhlIFNjcm9sbGJhclBhaW50ZXJDb250cm9sbGVyCiAgICAgLy8g
bWlnaHQgdGhpbmsgdGhhdCB0aGUgc2Nyb2xsYmFycyBhcmUgYWxyZWFkeSBzaG93aW5nIGFuZCBi
YWlsIGVhcmx5LgpAQCAtMTM2Myw3ICsxMzYzLDcgQEAgdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6
c2VuZENvbnRlbnRBcmVhU2Nyb2xsZWQoY29uc3QgRmxvYXRTaXplJiBkZWx0YSkKICAgICAgICAg
W21fc2Nyb2xsYmFyUGFpbnRlckNvbnRyb2xsZXIgY29udGVudEFyZWFTY3JvbGxlZF07CiB9CiAK
LXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnNlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJl
ZChUaW1lciYpCit2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxl
ZFRpbWVyRmlyZWQoKQogewogICAgIHNlbmRDb250ZW50QXJlYVNjcm9sbGVkKG1fY29udGVudEFy
ZWFTY3JvbGxlZFRpbWVyU2Nyb2xsRGVsdGEpOwogICAgIG1fY29udGVudEFyZWFTY3JvbGxlZFRp
bWVyU2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcAppbmRl
eCAzYTdhMWU3MjBkYjgwN2RmZjdiNjdkYzliMzg3MTc1OTQwZGZkNmNhLi5hZjBhODM0YzMyMDQy
MmIzZTFmYTQzMGVlMWUyNjcyZDhkNjEwMWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwCkBA
IC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2soKQogICAgIDogbV9jb250cm9s
bGVyKDApCi0gICAgLCBtX3RpbWVyKHRoaXMsICZEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6
OnRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWVyKCp0aGlzLCAmRGV2aWNlT3JpZW50YXRpb25DbGll
bnRNb2NrOjp0aW1lckZpcmVkKQogICAgICwgbV9pc1VwZGF0aW5nKGZhbHNlKQogewogfQpAQCAt
NjIsOSArNjIsOCBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50
YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdAogICAgICAgICBtX3RpbWVyLnN0
YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6OnRp
bWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6
OnRpbWVyRmlyZWQoKQogewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV90
aW1lcik7CiAgICAgbV90aW1lci5zdG9wKCk7CiAgICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VE
ZXZpY2VPcmllbnRhdGlvbihtX29yaWVudGF0aW9uLmdldCgpKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
ay5oCmluZGV4IDY5NDhiOTI1YTM3MmFhODUwYjVkNjcxNjE3MmI5NDAxNDlhNmNhYzMuLjMzYWRi
ZTcyZjgyYzYxMzcyNmZiOGFjNDM4ODMyYjhmZTNlNmJkMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2su
aApAQCAtNTQsNyArNTQsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRP
cmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4pOwogCiBwcml2YXRl
OgotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwog
CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlvbjsKICAgICBE
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2su
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5bnRoZXNp
emVyTW9jay5jcHAKaW5kZXggZWVjYmE3NzQ2YTYzZWI1ZmU5ZDI1MTdjNzJmMjg3YzJhMGY3ZmRh
Yy4uMzgzODM3MmM1Nzc4ZWMyNzJjOGI1NWY4MzE1MDY1Mzg0ZDljZjg3NCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9j
ay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVyTW9jay5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jazo6UGxhdGZvcm1TcGVlY2hTeW50aGVzaXpl
ck1vY2soUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplckNsaWVudCogY2xpZW50KQogICAgIDogUGxh
dGZvcm1TcGVlY2hTeW50aGVzaXplcihjbGllbnQpCi0gICAgLCBtX3NwZWFraW5nRmluaXNoZWRU
aW1lcih0aGlzLCAmUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2s6OnNwZWFraW5nRmluaXNo
ZWQpCisgICAgLCBtX3NwZWFraW5nRmluaXNoZWRUaW1lcigqdGhpcywgJlBsYXRmb3JtU3BlZWNo
U3ludGhlc2l6ZXJNb2NrOjpzcGVha2luZ0ZpbmlzaGVkKQogewogfQogICAgIApAQCAtNDEsNyAr
NDEsNyBAQCBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jazo6flBsYXRmb3JtU3BlZWNoU3lu
dGhlc2l6ZXJNb2NrKCkKIHsKIH0KIAotdm9pZCBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9j
azo6c3BlYWtpbmdGaW5pc2hlZChUaW1lciopCit2b2lkIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6
ZXJNb2NrOjpzcGVha2luZ0ZpbmlzaGVkKCkKIHsKICAgICBBU1NFUlQobV91dHRlcmFuY2UuZ2V0
KCkpOwogICAgIFJlZlB0cjxQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZT4gcHJvdGVj
dChtX3V0dGVyYW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L1BsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL1BsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmgKaW5kZXggODI5NDBhOGVjY2Mw
ZDc1YjBlZjFhNTZjZWUwZGVmZDQ5MDAyNDY3NS4uOGQ5NzQ4OGIwMmQwZDIxM2I4NTU2ZTUzMzRi
NTdhMjhiMjkzN2UwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Q
bGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suaApAQCAtNDUsNyArNDUsNyBA
QCBwdWJsaWM6CiAgICAgCiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBpbml0aWFsaXplVm9p
Y2VMaXN0KCk7Ci0gICAgdm9pZCBzcGVha2luZ0ZpbmlzaGVkKFRpbWVyKik7CisgICAgdm9pZCBz
cGVha2luZ0ZpbmlzaGVkKCk7CiAgICAgCiAgICAgVGltZXIgbV9zcGVha2luZ0ZpbmlzaGVkVGlt
ZXI7CiAgICAgUmVmUHRyPFBsYXRmb3JtU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlPiBtX3V0dGVy
YW5jZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRE5TUmVz
b2x2ZVF1ZXVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRE5TUmVzb2x2
ZVF1ZXVlLmNwcAppbmRleCA2YzEwMzI3ODhlOTk3NWJhN2VmYjk5YWY0ZmEwNWIyNzNhMThlYWI2
Li44NWVhNjY3MWMwMjA3OTc0MTlhNWQ0YWMzNDZlNWM4NTMzYjg1YmMyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0ROU1Jlc29sdmVRdWV1ZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ETlNSZXNvbHZlUXVldWUuY3BwCkBAIC01
OCw3ICs1OCw3IEBAIEROU1Jlc29sdmVRdWV1ZSYgRE5TUmVzb2x2ZVF1ZXVlOjpzaGFyZWQoKQog
fQogCiBETlNSZXNvbHZlUXVldWU6OkROU1Jlc29sdmVRdWV1ZSgpCi0gICAgOiBtX3RpbWVyKHRo
aXMsICZETlNSZXNvbHZlUXVldWU6OnRpbWVyRmlyZWQpCisgICAgOiBtX3RpbWVyKCp0aGlzLCAm
RE5TUmVzb2x2ZVF1ZXVlOjp0aW1lckZpcmVkKQogICAgICwgbV9yZXF1ZXN0c0luRmxpZ2h0KDAp
CiAgICAgLCBtX2NhY2hlZFByb3h5RW5hYmxlZFN0YXR1cyhmYWxzZSkKICAgICAsIG1fbGFzdFBy
b3h5RW5hYmxlZFN0YXR1c0NoZWNrVGltZSgwKQpAQCAtOTgsNyArOTgsNyBAQCB2b2lkIEROU1Jl
c29sdmVRdWV1ZTo6YWRkKGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCiAgICAgfQogfQogCi12b2lk
IEROU1Jlc29sdmVRdWV1ZTo6dGltZXJGaXJlZChUaW1lciYpCit2b2lkIEROU1Jlc29sdmVRdWV1
ZTo6dGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKGlzVXNpbmdQcm94eSgpKSB7CiAgICAgICAgIG1f
bmFtZXMuY2xlYXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvRE5TUmVzb2x2ZVF1ZXVlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0RO
U1Jlc29sdmVRdWV1ZS5oCmluZGV4IGFkNmYxOGJmYjBiODI0YzAxODEzNThjNWYxZjYwMWQ3ODUz
MTlkOTkuLmNkOWJhMGZjMGUyYTU2ZWY0ZGFhNGZiOTY2ZDdjOWU0MzI5NDBjYmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRE5TUmVzb2x2ZVF1ZXVlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ETlNSZXNvbHZlUXVldWUuaApAQCAt
NTUsNyArNTUsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgcGxhdGZvcm1Qcm94eUlzRW5hYmxlZElu
U3lzdGVtUHJlZmVyZW5jZXMoKTsKICAgICB2b2lkIHBsYXRmb3JtUmVzb2x2ZShjb25zdCBTdHJp
bmcmKTsKIAotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGltZXJGaXJl
ZCgpOwogCiAgICAgVGltZXIgbV90aW1lcjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RhdGVOb3RpZmllci5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RhdGVOb3RpZmllci5oCmluZGV4IDExMzU0NGJkZjE3
MTdjNzUwZWMwMDljNjE4ZjM2NzYwYWJjZjk5Y2IuLmUyMmE0YTAwODExMTJkMmFhZDYwOWVhOGNl
ZmM1ODM3MmExOThiMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvTmV0d29ya1N0YXRlTm90aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL05ldHdvcmtTdGF0ZU5vdGlmaWVyLmgKQEAgLTczLDcgKzczLDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHVwZGF0ZVN0YXRlKCk7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgdm9pZCBu
ZXR3b3JrU3RhdGVDaGFuZ2VUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBuZXR3b3JrU3Rh
dGVDaGFuZ2VUaW1lckZpcmVkKCk7CiAKICAgICBzdGF0aWMgdm9pZCBkeW5hbWljU3RvcmVDYWxs
YmFjayhTQ0R5bmFtaWNTdG9yZVJlZiwgQ0ZBcnJheVJlZiBjaGFuZ2VkS2V5cywgdm9pZCAqaW5m
byk7IAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291
cmNlSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VI
YW5kbGUuY3BwCmluZGV4IDNhZTUyMDBlOWQwNDZiMzFkNGFlZTZkYzExYzkwOTEyNTIyYTQzMjcu
LmQ2YzMxNWZhYjQ5NThlYjAxYzQxZmFiMjg3ODU4MDJmMjk3YjA4NDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUuY3BwCkBAIC0xMDgs
NyArMTA4LDcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZTo6c2NoZWR1bGVGYWlsdXJlKEZhaWx1cmVU
eXBlIHR5cGUpCiAgICAgZC0+bV9mYWlsdXJlVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12
b2lkIFJlc291cmNlSGFuZGxlOjpmYWlsdXJlVGltZXJGaXJlZChUaW1lciYpCit2b2lkIFJlc291
cmNlSGFuZGxlOjpmYWlsdXJlVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFjbGllbnQoKSkKICAg
ICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNv
dXJjZUhhbmRsZS5oCmluZGV4IDYwN2YzOGQzNTg3NWQwMWE4Yjk1Mjg2MGU0YmI0MjE0ZmY3NTky
NjEuLjYwNzNmMTAyNTA1ZWI1ODQ0MDM2ZDg1MjJjZGZhMjgxYjEyYjdmMTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlLmgKQEAgLTI0MCw3
ICsyNDAsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgUmVzb3VyY2VSZXF1ZXN0JiBm
aXJzdFJlcXVlc3QoKTsKICAgICBjb25zdCBTdHJpbmcmIGxhc3RIVFRQTWV0aG9kKCkgY29uc3Q7
CiAKLSAgICB2b2lkIGZhaWx1cmVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBmYWlsdXJl
VGltZXJGaXJlZCgpOwogCiAgICAgTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQoKSBjb25zdDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhh
bmRsZUludGVybmFsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNl
SGFuZGxlSW50ZXJuYWwuaAppbmRleCAxYWE0Y2Q1YjI3ZmNmYzM4ZGI2NjU3NjQ5Y2ViMDc1OGNk
NDE1ZmM5Li5jNThjMzQ3YWZkZTRmY2QyMGNmN2FhY2E3OGQyY2U0MzJiMzg5NjViIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlSW50ZXJu
YWwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxl
SW50ZXJuYWwuaApAQCAtMTE5LDcgKzExOSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgICAgICwgbV9jdXJyZW50TWFjQ2hhbGxlbmdlKG5pbCkKICNlbmRpZgogICAgICAgICAgICAg
LCBtX3NjaGVkdWxlZEZhaWx1cmVUeXBlKFJlc291cmNlSGFuZGxlOjpOb0ZhaWx1cmUpCi0gICAg
ICAgICAgICAsIG1fZmFpbHVyZVRpbWVyKGxvYWRlciwgJlJlc291cmNlSGFuZGxlOjpmYWlsdXJl
VGltZXJGaXJlZCkKKyAgICAgICAgICAgICwgbV9mYWlsdXJlVGltZXIoKmxvYWRlciwgJlJlc291
cmNlSGFuZGxlOjpmYWlsdXJlVGltZXJGaXJlZCkKICAgICAgICAgewogICAgICAgICAgICAgY29u
c3QgVVJMJiB1cmwgPSBtX2ZpcnN0UmVxdWVzdC51cmwoKTsKICAgICAgICAgICAgIG1fdXNlciA9
IHVybC51c2VyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L21hYy9OZXR3b3JrU3RhdGVOb3RpZmllck1hYy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL21hYy9OZXR3b3JrU3RhdGVOb3RpZmllck1hYy5jcHAKaW5kZXggMDA1MzhiZjMy
YWIxMjQyM2I0MjRjZTJiOTdlZmY1NjQ5NjRlOTc3Mi4uNTVhZGUyMThjMTM4ODhjMGNjMjZlYmVj
Yjc5MjYzZGNhNzAwOTE2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9tYWMvTmV0d29ya1N0YXRlTm90aWZpZXJNYWMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvbWFjL05ldHdvcmtTdGF0ZU5vdGlmaWVyTWFjLmNwcApAQCAtODEs
NyArODEsNyBAQCB2b2lkIE5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpkeW5hbWljU3RvcmVDYWxsYmFj
ayhTQ0R5bmFtaWNTdG9yZVJlZiwgQ0ZBcnJheVJlZiwgdgogICAgIG5vdGlmaWVyLT5tX25ldHdv
cmtTdGF0ZUNoYW5nZVRpbWVyLnN0YXJ0T25lU2hvdChTdGF0ZUNoYW5nZVRpbWVySW50ZXJ2YWwp
OwogfQogCi12b2lkIE5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpuZXR3b3JrU3RhdGVDaGFuZ2VUaW1l
ckZpcmVkKFRpbWVyJikKK3ZvaWQgTmV0d29ya1N0YXRlTm90aWZpZXI6Om5ldHdvcmtTdGF0ZUNo
YW5nZVRpbWVyRmlyZWQoKQogewogICAgIGJvb2wgb2xkT25MaW5lID0gbV9pc09uTGluZTsKICAg
ICAKQEAgLTk1LDcgKzk1LDcgQEAgdm9pZCBOZXR3b3JrU3RhdGVOb3RpZmllcjo6bmV0d29ya1N0
YXRlQ2hhbmdlVGltZXJGaXJlZChUaW1lciYpCiAKIE5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpOZXR3
b3JrU3RhdGVOb3RpZmllcigpCiAgICAgOiBtX2lzT25MaW5lKGZhbHNlKQotICAgICwgbV9uZXR3
b3JrU3RhdGVDaGFuZ2VUaW1lcih0aGlzLCAmTmV0d29ya1N0YXRlTm90aWZpZXI6Om5ldHdvcmtT
dGF0ZUNoYW5nZVRpbWVyRmlyZWQpCisgICAgLCBtX25ldHdvcmtTdGF0ZUNoYW5nZVRpbWVyKCp0
aGlzLCAmTmV0d29ya1N0YXRlTm90aWZpZXI6Om5ldHdvcmtTdGF0ZUNoYW5nZVRpbWVyRmlyZWQp
CiB7CiAgICAgU0NEeW5hbWljU3RvcmVDb250ZXh0IGNvbnRleHQgPSB7IDAsIHRoaXMsIDAsIDAs
IDAgfTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbWFnZVF1
YWxpdHlDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbWFnZVF1YWxp
dHlDb250cm9sbGVyLmNwcAppbmRleCAyN2MwNTFjMTVkZWNmMzhmODViOTczYTEwYThiNDdhYTVk
ZGQwMjlkLi5jNGE2ZTQzYzY3MjJmNDEwZjdiZjkwZDEwOGI4YzU2MGMzMjAwMDljIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ltYWdlUXVhbGl0eUNvbnRyb2xsZXIuY3Bw
CkBAIC0zOSw3ICszOSw3IEBAIHN0YXRpYyBjb25zdCBkb3VibGUgY0xvd1F1YWxpdHlUaW1lVGhy
ZXNob2xkID0gMC41MDA7IC8vIDUwMCBtcwogCiBJbWFnZVF1YWxpdHlDb250cm9sbGVyOjpJbWFn
ZVF1YWxpdHlDb250cm9sbGVyKGNvbnN0IFJlbmRlclZpZXcmIHJlbmRlclZpZXcpCiAgICAgOiBt
X3JlbmRlclZpZXcocmVuZGVyVmlldykKLSAgICAsIG1fdGltZXIodGhpcywgJkltYWdlUXVhbGl0
eUNvbnRyb2xsZXI6OmhpZ2hRdWFsaXR5UmVwYWludFRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWVy
KCp0aGlzLCAmSW1hZ2VRdWFsaXR5Q29udHJvbGxlcjo6aGlnaFF1YWxpdHlSZXBhaW50VGltZXJG
aXJlZCkKICAgICAsIG1fYW5pbWF0ZWRSZXNpemVJc0FjdGl2ZShmYWxzZSkKICAgICAsIG1fbGl2
ZVJlc2l6ZU9wdGltaXphdGlvbklzQWN0aXZlKGZhbHNlKQogewpAQCAtNzQsNyArNzQsNyBAQCB2
b2lkIEltYWdlUXVhbGl0eUNvbnRyb2xsZXI6OnJlbW92ZU9iamVjdChSZW5kZXJCb3hNb2RlbE9i
amVjdCogb2JqZWN0KQogICAgIH0KIH0KIAotdm9pZCBJbWFnZVF1YWxpdHlDb250cm9sbGVyOjpo
aWdoUXVhbGl0eVJlcGFpbnRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSW1hZ2VRdWFsaXR5Q29u
dHJvbGxlcjo6aGlnaFF1YWxpdHlSZXBhaW50VGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fcmVu
ZGVyVmlldy5kb2N1bWVudEJlaW5nRGVzdHJveWVkKCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbWFnZVF1YWxpdHlDb250cm9sbGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5oCmluZGV4
IGE1YjZmMDFhNmRmZDFjMzk5NzQwM2Q5MTZiZDI3ZTQ4MDZlODM1NTcuLmRjZWUwZjk2Zjg4Yzhh
YzJhMWIxMzM2MDg1YmViNGVhN2MzMDRjYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9JbWFnZVF1YWxpdHlDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL0ltYWdlUXVhbGl0eUNvbnRyb2xsZXIuaApAQCAtNTIsNyArNTIsNyBAQCBwcml2YXRl
OgogCiAgICAgdm9pZCByZW1vdmVMYXllcihSZW5kZXJCb3hNb2RlbE9iamVjdCosIExheWVyU2l6
ZU1hcCogaW5uZXJNYXAsIGNvbnN0IHZvaWQqIGxheWVyKTsKICAgICB2b2lkIHNldChSZW5kZXJC
b3hNb2RlbE9iamVjdCosIExheWVyU2l6ZU1hcCogaW5uZXJNYXAsIGNvbnN0IHZvaWQqIGxheWVy
LCBjb25zdCBMYXlvdXRTaXplJik7Ci0gICAgdm9pZCBoaWdoUXVhbGl0eVJlcGFpbnRUaW1lckZp
cmVkKFRpbWVyJik7CisgICAgdm9pZCBoaWdoUXVhbGl0eVJlcGFpbnRUaW1lckZpcmVkKCk7CiAg
ICAgdm9pZCByZXN0YXJ0VGltZXIoKTsKICAgICB2b2lkIHJlbW92ZU9iamVjdChSZW5kZXJCb3hN
b2RlbE9iamVjdCopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQnV0dG9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCdXR0b24uY3Bw
CmluZGV4IDllZjRlMTFiZjJmODEwOTFjZTVjODQ4MDNlNDhkN2IzZjY4YTgyNTAuLmI4MzYxZGQx
NDBmMDA2OTdmNWEzMzBiNGU1NDUzZTM5Y2M1MTY1YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCdXR0b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCdXR0b24uY3BwCkBAIC0xMTYsNyArMTE2LDcgQEAgdm9pZCBSZW5kZXJCdXR0
b246OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHls
ZSogb2xkU3QKICAgICBpZiAoIW1fZGVmYXVsdCAmJiB0aGVtZSgpLmlzRGVmYXVsdCgqdGhpcykp
IHsKICAgICAgICAgaWYgKHRoZW1lKCkuZGVmYXVsdEJ1dHRvbkhhc0FuaW1hdGlvbigpKSB7CiAg
ICAgICAgICAgICBpZiAoIW1fdGltZXIpCi0gICAgICAgICAgICAgICAgbV90aW1lciA9IHN0ZDo6
bWFrZV91bmlxdWU8VGltZXI+KHRoaXMsICZSZW5kZXJCdXR0b246OnRpbWVyRmlyZWQpOworICAg
ICAgICAgICAgICAgIG1fdGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlJl
bmRlckJ1dHRvbjo6dGltZXJGaXJlZCk7CiAgICAgICAgICAgICBtX3RpbWVyLT5zdGFydFJlcGVh
dGluZygwLjAzKTsKICAgICAgICAgfQogICAgICAgICBtX2RlZmF1bHQgPSB0cnVlOwpAQCAtMTg3
LDcgKzE4Nyw3IEBAIExheW91dFJlY3QgUmVuZGVyQnV0dG9uOjpjb250cm9sQ2xpcFJlY3QoY29u
c3QgTGF5b3V0UG9pbnQmIGFkZGl0aW9uYWxPZmZzZXQpIGNvCiAgICAgcmV0dXJuIExheW91dFJl
Y3QoYWRkaXRpb25hbE9mZnNldC54KCkgKyBib3JkZXJMZWZ0KCksIGFkZGl0aW9uYWxPZmZzZXQu
eSgpICsgYm9yZGVyVG9wKCksIHdpZHRoKCkgLSBib3JkZXJMZWZ0KCkgLSBib3JkZXJSaWdodCgp
LCBoZWlnaHQoKSAtIGJvcmRlclRvcCgpIC0gYm9yZGVyQm90dG9tKCkpOwogfQogCi12b2lkIFJl
bmRlckJ1dHRvbjo6dGltZXJGaXJlZChUaW1lciYpCit2b2lkIFJlbmRlckJ1dHRvbjo6dGltZXJG
aXJlZCgpCiB7CiAgICAgLy8gRklYTUUgQnVnIDI1MTEwOiBJZGVhbGx5IHdlIHdvdWxkIHN0b3Ag
b3VyIHRpbWVyIHdoZW4gb3VyIERvY3VtZW50CiAgICAgLy8gZW50ZXJzIHRoZSBwYWdlIGNhY2hl
LiBCdXQgd2UgY3VycmVudGx5IGhhdmUgbm8gd2F5IG9mIGJlaW5nIG5vdGlmaWVkCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmggYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmgKaW5kZXggMGRiZjUxZjY4MjM1NjQ3OWI2MmRh
MTM0OWQyYTRkOWNlYTAzMGI1Ny4uMDYxMzZiOGM5ZTBjOTg2OTk5NGJjMDVjYmQ3OTk2NGUzYmI5
YmNkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJ1dHRvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCdXR0b24uaApAQCAtNzQsNyAr
NzQsNyBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCBib29sIHJlcXVpcmVzRm9yY2VkU3R5bGVS
ZWNhbGNQcm9wYWdhdGlvbigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KIAotICAg
IHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwogCiAgICAg
UmVuZGVyVGV4dEZyYWdtZW50KiBtX2J1dHRvblRleHQ7CiAgICAgUmVuZGVyQmxvY2sqIG1faW5u
ZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21w
b3NpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0
b3IuY3BwCmluZGV4IDBmOWM0OTViMGM3YWFlNDE3NWI3YWU5NDZiN2NlMjFlOGIxYmIwYWUuLjNl
NmM2NWQwY2YzZjM5NWVjNjcwZDYxZDBhMDVkNDE3MmI0NDEyNjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC0yNjUsNyAr
MjY1LDcgQEAgc3RhdGljIGlubGluZSBib29sIGNvbXBvc2l0aW5nTG9nRW5hYmxlZCgpCiAKIFJl
bmRlckxheWVyQ29tcG9zaXRvcjo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yKFJlbmRlclZpZXcmIHJl
bmRlclZpZXcpCiAgICAgOiBtX3JlbmRlclZpZXcocmVuZGVyVmlldykKLSAgICAsIG1fdXBkYXRl
Q29tcG9zaXRpbmdMYXllcnNUaW1lcih0aGlzLCAmUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRh
dGVDb21wb3NpdGluZ0xheWVyc1RpbWVyRmlyZWQpCisgICAgLCBtX3VwZGF0ZUNvbXBvc2l0aW5n
TGF5ZXJzVGltZXIoKnRoaXMsICZSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZUNvbXBvc2l0
aW5nTGF5ZXJzVGltZXJGaXJlZCkKICAgICAsIG1faGFzQWNjZWxlcmF0ZWRDb21wb3NpdGluZyh0
cnVlKQogICAgICwgbV9jb21wb3NpdGluZ1RyaWdnZXJzKHN0YXRpY19jYXN0PENocm9tZUNsaWVu
dDo6Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KENocm9tZUNsaWVudDo6QWxsVHJpZ2dlcnMpKQog
ICAgICwgbV9jb21wb3NpdGVkTGF5ZXJDb3VudCgwKQpAQCAtMjgzLDExICsyODMsMTEgQEAgUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjpSZW5kZXJMYXllckNvbXBvc2l0b3IoUmVuZGVyVmlldyYgcmVu
ZGVyVmlldykKICAgICAsIG1faXNUcmFja2luZ1JlcGFpbnRzKGZhbHNlKQogICAgICwgbV9sYXll
cnNXaXRoVGlsZWRCYWNraW5nQ291bnQoMCkKICAgICAsIG1fcm9vdExheWVyQXR0YWNobWVudChS
b290TGF5ZXJVbmF0dGFjaGVkKQotICAgICwgbV9sYXllckZsdXNoVGltZXIodGhpcywgJlJlbmRl
ckxheWVyQ29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQpCisgICAgLCBtX2xheWVyRmx1
c2hUaW1lcigqdGhpcywgJlJlbmRlckxheWVyQ29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmly
ZWQpCiAgICAgLCBtX2xheWVyRmx1c2hUaHJvdHRsaW5nRW5hYmxlZChmYWxzZSkKICAgICAsIG1f
bGF5ZXJGbHVzaFRocm90dGxpbmdUZW1wb3JhcmlseURpc2FibGVkRm9ySW50ZXJhY3Rpb24oZmFs
c2UpCiAgICAgLCBtX2hhc1BlbmRpbmdMYXllckZsdXNoKGZhbHNlKQotICAgICwgbV9wYWludFJl
bGF0ZWRNaWxlc3RvbmVzVGltZXIodGhpcywgJlJlbmRlckxheWVyQ29tcG9zaXRvcjo6cGFpbnRS
ZWxhdGVkTWlsZXN0b25lc1RpbWVyRmlyZWQpCisgICAgLCBtX3BhaW50UmVsYXRlZE1pbGVzdG9u
ZXNUaW1lcigqdGhpcywgJlJlbmRlckxheWVyQ29tcG9zaXRvcjo6cGFpbnRSZWxhdGVkTWlsZXN0
b25lc1RpbWVyRmlyZWQpCiAjaWYgIUxPR19ESVNBQkxFRAogICAgICwgbV9yb290TGF5ZXJVcGRh
dGVDb3VudCgwKQogICAgICwgbV9vYmxpZ2F0ZUNvbXBvc2l0ZWRMYXllckNvdW50KDApCkBAIC02
MzcsNyArNjM3LDcgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNjaGVkdWxlQ29tcG9z
aXRpbmdMYXllclVwZGF0ZSgpCiAgICAgICAgIG1fdXBkYXRlQ29tcG9zaXRpbmdMYXllcnNUaW1l
ci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRh
dGVDb21wb3NpdGluZ0xheWVyc1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBSZW5kZXJMYXllckNv
bXBvc2l0b3I6OnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzVGltZXJGaXJlZCgpCiB7CiAgICAgdXBk
YXRlQ29tcG9zaXRpbmdMYXllcnMoQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dCk7CiB9CkBA
IC00MDc2LDE0ICs0MDc2LDE0IEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpzdGFydElu
aXRpYWxMYXllckZsdXNoVGltZXJJZk5lZWRlZCgpCiAgICAgbV9sYXllckZsdXNoVGltZXIuc3Rh
cnRPbmVTaG90KHRocm90dGxlZExheWVyRmx1c2hJbml0aWFsRGVsYXkpOwogfQogCi12b2lkIFJl
bmRlckxheWVyQ29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OmxheWVyRmx1c2hUaW1lckZpcmVkKCkKIHsKICAgICBpZiAo
IW1faGFzUGVuZGluZ0xheWVyRmx1c2gpCiAgICAgICAgIHJldHVybjsKICAgICBzY2hlZHVsZUxh
eWVyRmx1c2hOb3coKTsKIH0KIAotdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnBhaW50UmVs
YXRlZE1pbGVzdG9uZXNUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpwYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXJGaXJlZCgpCiB7CiAgICAgRnJhbWUmIGZy
YW1lID0gbV9yZW5kZXJWaWV3LmZyYW1lVmlldygpLmZyYW1lKCk7CiAgICAgUGFnZSogcGFnZSA9
IGZyYW1lLnBhZ2UoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllckNvbXBvc2l0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ckNvbXBvc2l0b3IuaAppbmRleCBjNGEyY2ZjNTM3MjgwYmYzNzBmYzg3MWRkY2FjMjM5MmNiYTI2
OWE0Li4wZGQ5NzcyZWRjMmYxNWQyNGJiZTZlYThkMmQ5MTA5MTYxYzBmYjgyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oCkBAIC0zMzYs
NyArMzM2LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGFkZFRvT3ZlcmxhcE1hcChPdmVybGFwTWFw
JiwgUmVuZGVyTGF5ZXImLCBJbnRSZWN0JiBsYXllckJvdW5kcywgYm9vbCYgYm91bmRzQ29tcHV0
ZWQpOwogICAgIHZvaWQgYWRkVG9PdmVybGFwTWFwUmVjdXJzaXZlKE92ZXJsYXBNYXAmLCBSZW5k
ZXJMYXllciYsIFJlbmRlckxheWVyKiBhbmNlc3RvckxheWVyID0gbnVsbHB0cik7CiAKLSAgICB2
b2lkIHVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQg
dXBkYXRlQ29tcG9zaXRpbmdMYXllcnNUaW1lckZpcmVkKCk7CiAKICAgICAvLyBSZXR1cm5zIHRy
dWUgaWYgYW55IGxheWVyJ3MgY29tcG9zaXRpbmcgY2hhbmdlZAogICAgIHZvaWQgY29tcHV0ZUNv
bXBvc2l0aW5nUmVxdWlyZW1lbnRzKFJlbmRlckxheWVyKiBhbmNlc3RvckxheWVyLCBSZW5kZXJM
YXllciYsIE92ZXJsYXBNYXAmLCBzdHJ1Y3QgQ29tcG9zaXRpbmdTdGF0ZSYsIGJvb2wmIGxheWVy
c0NoYW5nZWQsIGJvb2wmIGRlc2NlbmRhbnRIYXMzRFRyYW5zZm9ybSk7CkBAIC00NTQsOSArNDU0
LDkgQEAgcHJpdmF0ZToKICAgICBib29sIGlzVGhyb3R0bGluZ0xheWVyRmx1c2hlcygpIGNvbnN0
OwogICAgIHZvaWQgc3RhcnRJbml0aWFsTGF5ZXJGbHVzaFRpbWVySWZOZWVkZWQoKTsKICAgICB2
b2lkIHN0YXJ0TGF5ZXJGbHVzaFRpbWVySWZOZWVkZWQoKTsKLSAgICB2b2lkIGxheWVyRmx1c2hU
aW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBsYXllckZsdXNoVGltZXJGaXJlZCgpOwogCi0g
ICAgdm9pZCBwYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXJGaXJlZChUaW1lciYpOworICAgIHZv
aWQgcGFpbnRSZWxhdGVkTWlsZXN0b25lc1RpbWVyRmlyZWQoKTsKIAogI2lmICFMT0dfRElTQUJM
RUQKICAgICBjb25zdCBjaGFyKiBsb2dSZWFzb25zRm9yQ29tcG9zaXRpbmcoY29uc3QgUmVuZGVy
TGF5ZXImKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNYXJx
dWVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNYXJxdWVlLmNwcAppbmRl
eCBmMWIzNjU4YzFhNjY2ODE2OTI0YWY3MDk0Y2FkOTNmZDkxNmE3ZTNiLi4yNmUzMGU0ZDQ2NWNl
NDdiYmEwYTI4YTBlYmVmOGUzYzU5ZDBlN2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlck1hcnF1ZWUuY3BwCkBAIC01OSw3ICs1OSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBIVE1M
TmFtZXM7CiBSZW5kZXJNYXJxdWVlOjpSZW5kZXJNYXJxdWVlKFJlbmRlckxheWVyKiBsKQogICAg
IDogbV9sYXllcihsKSwgbV9jdXJyZW50TG9vcCgwKQogICAgICwgbV90b3RhbExvb3BzKDApCi0g
ICAgLCBtX3RpbWVyKHRoaXMsICZSZW5kZXJNYXJxdWVlOjp0aW1lckZpcmVkKQorICAgICwgbV90
aW1lcigqdGhpcywgJlJlbmRlck1hcnF1ZWU6OnRpbWVyRmlyZWQpCiAgICAgLCBtX3N0YXJ0KDAp
LCBtX2VuZCgwKSwgbV9zcGVlZCgwKSwgbV9yZXNldChmYWxzZSkKICAgICAsIG1fc3VzcGVuZGVk
KGZhbHNlKSwgbV9zdG9wcGVkKGZhbHNlKSwgbV9kaXJlY3Rpb24oTUFVVE8pCiB7CkBAIC0yNDAs
NyArMjQwLDcgQEAgdm9pZCBSZW5kZXJNYXJxdWVlOjp1cGRhdGVNYXJxdWVlU3R5bGUoKQogICAg
ICAgICBtX3RpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBSZW5kZXJNYXJxdWVlOjp0aW1lckZpcmVk
KFRpbWVyJikKK3ZvaWQgUmVuZGVyTWFycXVlZTo6dGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1f
bGF5ZXItPnJlbmRlcmVyKCkudmlldygpLm5lZWRzTGF5b3V0KCkpCiAgICAgICAgIHJldHVybjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNYXJxdWVlLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5oCmluZGV4IGFkOWYxNmUzMzU2
Y2VlYThmMGMyMWVmMGJhNzIyMGRhM2JjYmM5NDguLjU3YmI3NDUzOWE0MTBiOWM3MDRkNDVlNGZh
YzY0Y2Q1MmUyNWY2ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJNYXJxdWVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUu
aApAQCAtNzksNyArNzksNyBAQCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVNYXJxdWVlUG9zaXRp
b24oKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHRpbWVyRmlyZWQoKTsKIAogICAgIFJlbmRlckxheWVyKiBtX2xheWVyOwogICAgIGludCBtX2N1
cnJlbnRMb29wOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5h
bWVkRmxvd1RocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRG
bG93VGhyZWFkLmNwcAppbmRleCBjMjVjZWJhMjUyMTkxOGVkODg0YzYxODcwMzEwOGVkZTBmOTEy
NWE1Li5mNWU4ODI1MjY3NWRlNjQzYjQwMzUzMWU0YjExNmYyMzRhZTJjZTA4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcApAQCAt
NTEsNyArNTEsNyBAQCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OlJlbmRlck5hbWVkRmxvd1RocmVh
ZChEb2N1bWVudCYgZG9jdW1lbnQsIFBhc3NSZWY8UmVuZGVyUwogICAgICwgbV9oYXNSZWdpb25z
V2l0aFN0eWxpbmcoZmFsc2UpCiAgICAgLCBtX2Rpc3BhdGNoUmVnaW9uT3ZlcnNldENoYW5nZUV2
ZW50KGZhbHNlKQogICAgICwgbV9uYW1lZEZsb3coV1RGOjptb3ZlKG5hbWVkRmxvdykpCi0gICAg
LCBtX3JlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyKHRoaXMsICZSZW5kZXJOYW1lZEZsb3dU
aHJlYWQ6OnJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQpCisgICAgLCBtX3JlZ2lv
bk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyKCp0aGlzLCAmUmVuZGVyTmFtZWRGbG93VGhyZWFkOjpy
ZWdpb25PdmVyc2V0Q2hhbmdlRXZlbnRUaW1lckZpcmVkKQogewogfQogCkBAIC01NjYsNyArNTY2
LDcgQEAgdm9pZCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OmRpc3BhdGNoUmVnaW9uT3ZlcnNldENo
YW5nZUV2ZW50SWZOZWVkZWQoKQogICAgICAgICBtX3JlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRp
bWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OnJl
Z2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBSZW5kZXJOYW1l
ZEZsb3dUaHJlYWQ6OnJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoKQogewogICAg
IG5hbWVkRmxvdygpLmRpc3BhdGNoUmVnaW9uT3ZlcnNldENoYW5nZUV2ZW50KCk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmgKaW5kZXgg
N2RlYmZmOGE1NjYwZGQ1MjJjMzQxMjUxNzY1NjJiMDQ0ODFkZDE5Mi4uYjVmMTY0YjY3N2E3MmE0
YzBiNWUwYTIyZGI5YTc2NGVmMDUyM2Y5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuaApAQCAtMTI0LDcgKzEyNCw3IEBAIHByaXZhdGU6
CiAgICAgdm9pZCBjaGVja0ludmFsaWRSZWdpb25zKCk7CiAKICAgICBib29sIGNhbkJlRGVzdHJv
eWVkKCkgY29uc3QgeyByZXR1cm4gbV9pbnZhbGlkUmVnaW9uTGlzdC5pc0VtcHR5KCkgJiYgbV9y
ZWdpb25MaXN0LmlzRW1wdHkoKSAmJiBtX2NvbnRlbnRFbGVtZW50cy5pc0VtcHR5KCk7IH0KLSAg
ICB2b2lkIHJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2
b2lkIHJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoKTsKICAgICB2b2lkIGNsZWFy
Q29udGVudEVsZW1lbnRzKCk7CiAgICAgdm9pZCB1cGRhdGVXcml0aW5nTW9kZSgpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclByb2dyZXNzLmNwcAppbmRleCA2ODEzNTNmZWVm
NGUxNTM3NWJkNDViNmI2MWI4ZDU0NDBmMzAxMzZmLi5iMjVhYTAxZWU5NmE4NTQ5YWE5MTViM2Vl
MjA1NjgwOTBlMjQ1NzI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyUHJvZ3Jlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQcm9n
cmVzcy5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgUmVuZGVyUHJvZ3Jlc3M6OlJlbmRlclByb2dyZXNz
KEhUTUxFbGVtZW50JiBlbGVtZW50LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKICAgICAs
IG1fYW5pbWF0aW9uUmVwZWF0SW50ZXJ2YWwoMCkKICAgICAsIG1fYW5pbWF0aW9uRHVyYXRpb24o
MCkKICAgICAsIG1fYW5pbWF0aW5nKGZhbHNlKQotICAgICwgbV9hbmltYXRpb25UaW1lcih0aGlz
LCAmUmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX2FuaW1hdGlv
blRpbWVyKCp0aGlzLCAmUmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRpbWVyRmlyZWQpCiB7CiB9
CiAKQEAgLTgxLDcgKzgxLDcgQEAgYm9vbCBSZW5kZXJQcm9ncmVzczo6aXNEZXRlcm1pbmF0ZSgp
IGNvbnN0CiAgICAgICAgICAgICAmJiBIVE1MUHJvZ3Jlc3NFbGVtZW50OjpJbnZhbGlkUG9zaXRp
b24gIT0gcG9zaXRpb24oKSk7CiB9CiAKLXZvaWQgUmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRp
bWVyRmlyZWQoVGltZXImKQordm9pZCBSZW5kZXJQcm9ncmVzczo6YW5pbWF0aW9uVGltZXJGaXJl
ZCgpCiB7CiAgICAgcmVwYWludCgpOwogICAgIGlmICghbV9hbmltYXRpb25UaW1lci5pc0FjdGl2
ZSgpICYmIG1fYW5pbWF0aW5nKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclByb2dyZXNzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUHJvZ3Jl
c3MuaAppbmRleCAwZTNkZTAwYjZiODEwMmRjMGI5YjM0Yzc2ZThkMDY1Y2VkYjczODJhLi43N2Ni
NDRjMDMyYzI1NjAxNmYzNzIyNDg5ODJiZjljZGUwYzgxYWZlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuaApAQCAtNDcsNyArNDcsNyBAQCBwcml2YXRlOgogICAg
IHZpcnR1YWwgYm9vbCByZXF1aXJlc0ZvcmNlZFN0eWxlUmVjYWxjUHJvcGFnYXRpb24oKSBjb25z
dCBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCB2b2lkIGNvbXB1dGVMb2dp
Y2FsSGVpZ2h0KExheW91dFVuaXQgbG9naWNhbEhlaWdodCwgTGF5b3V0VW5pdCBsb2dpY2FsVG9w
LCBMb2dpY2FsRXh0ZW50Q29tcHV0ZWRWYWx1ZXMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZv
aWQgYW5pbWF0aW9uVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgYW5pbWF0aW9uVGltZXJG
aXJlZCgpOwogICAgIHZvaWQgdXBkYXRlQW5pbWF0aW9uU3RhdGUoKTsKIAogICAgIGRvdWJsZSBt
X3Bvc2l0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZp
ZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCmluZGV4IDA5
ZGVmNjM0MzY1OTBhNzc1MTZjZTU4MjFlMmEwNzFlN2QxZjBhMGUuLmQxZDUzMzY3ZGZmOGYxMWMx
MDgyMzU2MjM1YjZjZTRlZmVlZTk0NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Vmlldy5jcHAKQEAgLTEwMiw3ICsxMDIsNyBAQCBSZW5kZXJWaWV3OjpSZW5kZXJWaWV3KERvY3Vt
ZW50JiBkb2N1bWVudCwgUGFzc1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCiAgICAgLCBtX3NlbGVj
dGlvblVuc3BsaXRFbmRQb3MoLTEpCiAgICAgLCBtX3JlbmRlcmVyQ291bnQoMCkKICAgICAsIG1f
bWF4aW1hbE91dGxpbmVTaXplKDApCi0gICAgLCBtX2xhenlSZXBhaW50VGltZXIodGhpcywgJlJl
bmRlclZpZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCkKKyAgICAsIG1fbGF6eVJlcGFpbnRUaW1l
cigqdGhpcywgJlJlbmRlclZpZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCkKICAgICAsIG1fcGFn
ZUxvZ2ljYWxIZWlnaHQoMCkKICAgICAsIG1fcGFnZUxvZ2ljYWxIZWlnaHRDaGFuZ2VkKGZhbHNl
KQogICAgICwgbV9sYXlvdXRTdGF0ZShudWxscHRyKQpAQCAtMTU1LDcgKzE1NSw3IEBAIHZvaWQg
UmVuZGVyVmlldzo6dW5zY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJveCYgcmVuZGVyZXIpCiAg
ICAgICAgIG1fbGF6eVJlcGFpbnRUaW1lci5zdG9wKCk7CiB9CiAKLXZvaWQgUmVuZGVyVmlldzo6
bGF6eVJlcGFpbnRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVuZGVyVmlldzo6bGF6eVJlcGFp
bnRUaW1lckZpcmVkKCkKIHsKICAgICBib29sIHNob3VsZFJlcGFpbnQgPSAhZG9jdW1lbnQoKS5p
blBhZ2VDYWNoZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaAppbmRleCA5
NjhiZjNmYWZhNWM4MGVmZjlhZjFmYzY5YzA1Mjg1NDg5ZmY0YTFmLi5lNzVjOWU0NDc4ODhkN2Mx
N2FkM2RjNDFiZTg5NTVhM2RhMjI3ODA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJW
aWV3LmgKQEAgLTMzOSw3ICszMzksNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBzaG91bGRVc2VQ
cmludGluZ0xheW91dCgpIGNvbnN0OwogCi0gICAgdm9pZCBsYXp5UmVwYWludFRpbWVyRmlyZWQo
VGltZXImKTsKKyAgICB2b2lkIGxhenlSZXBhaW50VGltZXJGaXJlZCgpOwogCiAgICAgVGltZXIg
bV9sYXp5UmVwYWludFRpbWVyOwogICAgIEhhc2hTZXQ8UmVuZGVyQm94Kj4gbV9yZW5kZXJlcnNO
ZWVkaW5nTGF6eVJlcGFpbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvRXZl
bnRMb29wSW5wdXREaXNwYXRjaGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExv
b3BJbnB1dERpc3BhdGNoZXIuY3BwCmluZGV4IGJkZjU4MmRmMTE5ZjEzYWI0YzcxOTMxOGQ0Mzk1
MmFhM2Q5MzNjN2MuLjhmNDM2MThhMWZkZGQxMmJlMDViMjdlOWZiNjM0ZTU4MTYxMzc4MmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExvb3BJbnB1dERpc3BhdGNoZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExvb3BJbnB1dERpc3BhdGNoZXIu
Y3BwCkBAIC00OCw3ICs0OCw3IEBAIEV2ZW50TG9vcElucHV0RGlzcGF0Y2hlcjo6RXZlbnRMb29w
SW5wdXREaXNwYXRjaGVyKFBhZ2UmIHBhZ2UsIFJlcGxheWluZ0lucHV0Q3VyCiAgICAgOiBtX3Bh
Z2UocGFnZSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAgICAsIG1fY3Vyc29yKGN1cnNvcikK
LSAgICAsIG1fdGltZXIodGhpcywgJkV2ZW50TG9vcElucHV0RGlzcGF0Y2hlcjo6dGltZXJGaXJl
ZCkKKyAgICAsIG1fdGltZXIoKnRoaXMsICZFdmVudExvb3BJbnB1dERpc3BhdGNoZXI6OnRpbWVy
RmlyZWQpCiAgICAgLCBtX2Rpc3BhdGNoaW5nKGZhbHNlKQogICAgICwgbV9ydW5uaW5nKGZhbHNl
KQogICAgICwgbV9zcGVlZChEaXNwYXRjaFNwZWVkOjpGYXN0Rm9yd2FyZCkKQEAgLTc5LDcgKzc5
LDcgQEAgdm9pZCBFdmVudExvb3BJbnB1dERpc3BhdGNoZXI6OnBhdXNlKCkKICAgICAgICAgbV90
aW1lci5zdG9wKCk7CiB9CiAKLXZvaWQgRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyOjp0aW1lckZp
cmVkKFRpbWVyKikKK3ZvaWQgRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyOjp0aW1lckZpcmVkKCkK
IHsKICAgICBkaXNwYXRjaElucHV0KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZXBsYXkvRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkv
RXZlbnRMb29wSW5wdXREaXNwYXRjaGVyLmgKaW5kZXggMmE4YTA3MGRlMTdlNTBkZGUxMGQyZjQ5
NmQ2ODliYmMzYTJiNzAzNi4uNTkzNGM0MGE5MDBmNzI1Zjg5YTRmNzZhMzljMmYxZTI1ODNlZTYy
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L0V2ZW50TG9vcElucHV0RGlzcGF0
Y2hlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExvb3BJbnB1dERpc3BhdGNo
ZXIuaApAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZvaWQgZGlzcGF0
Y2hJbnB1dFNvb24oKTsKICAgICB2b2lkIGRpc3BhdGNoSW5wdXQoKTsKLSAgICB2b2lkIHRpbWVy
RmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsKIAogICAgIFBhZ2UmIG1fcGFn
ZTsKICAgICBFdmVudExvb3BJbnB1dERpc3BhdGNoZXJDbGllbnQqIG1fY2xpZW50OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuY3BwIGIvU291cmNl
L1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuY3BwCmluZGV4IDMxMzk4MmQzZGIxOGRh
MzlhNDUyZWEzNDkwZTYwZDhhZDdlYmRhNDQuLmJiYjZmMWFjMGMyZjRkYmExYjc3ZmU0YmE4MGU5
NGQ3N2NhNTI3NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZUFy
ZWFJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5j
cHAKQEAgLTU2LDcgKzU2LDcgQEAgaW5saW5lIFN0b3JhZ2VBcmVhSW1wbDo6U3RvcmFnZUFyZWFJ
bXBsKFN0b3JhZ2VUeXBlIHN0b3JhZ2VUeXBlLCBQYXNzUmVmUHRyPFNlY3UKICAgICAsIG1faXNT
aHV0ZG93bihmYWxzZSkKICNlbmRpZgogICAgICwgbV9hY2Nlc3NDb3VudCgwKQotICAgICwgbV9j
bG9zZURhdGFiYXNlVGltZXIodGhpcywgJlN0b3JhZ2VBcmVhSW1wbDo6Y2xvc2VEYXRhYmFzZVRp
bWVyRmlyZWQpCisgICAgLCBtX2Nsb3NlRGF0YWJhc2VUaW1lcigqdGhpcywgJlN0b3JhZ2VBcmVh
SW1wbDo6Y2xvc2VEYXRhYmFzZVRpbWVyRmlyZWQpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKICAgICBBU1NFUlQobV9zZWN1cml0eU9yaWdpbik7CkBAIC05Niw3ICs5Niw3IEBAIFN0
b3JhZ2VBcmVhSW1wbDo6U3RvcmFnZUFyZWFJbXBsKFN0b3JhZ2VBcmVhSW1wbCogYXJlYSkKICAg
ICAsIG1faXNTaHV0ZG93bihhcmVhLT5tX2lzU2h1dGRvd24pCiAjZW5kaWYKICAgICAsIG1fYWNj
ZXNzQ291bnQoMCkKLSAgICAsIG1fY2xvc2VEYXRhYmFzZVRpbWVyKHRoaXMsICZTdG9yYWdlQXJl
YUltcGw6OmNsb3NlRGF0YWJhc2VUaW1lckZpcmVkKQorICAgICwgbV9jbG9zZURhdGFiYXNlVGlt
ZXIoKnRoaXMsICZTdG9yYWdlQXJlYUltcGw6OmNsb3NlRGF0YWJhc2VUaW1lckZpcmVkKQogewog
ICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgQVNTRVJUKG1fc2VjdXJpdHlPcmlnaW4p
OwpAQCAtMjc4LDcgKzI3OCw3IEBAIHZvaWQgU3RvcmFnZUFyZWFJbXBsOjpkZWNyZW1lbnRBY2Nl
c3NDb3VudCgpCiAgICAgfQogfQogCi12b2lkIFN0b3JhZ2VBcmVhSW1wbDo6Y2xvc2VEYXRhYmFz
ZVRpbWVyRmlyZWQoVGltZXIgKikKK3ZvaWQgU3RvcmFnZUFyZWFJbXBsOjpjbG9zZURhdGFiYXNl
VGltZXJGaXJlZCgpCiB7CiAgICAgYmxvY2tVbnRpbEltcG9ydENvbXBsZXRlKCk7CiAgICAgaWYg
KG1fc3RvcmFnZUFyZWFTeW5jKQpAQCAtMjkxLDcgKzI5MSw3IEBAIHZvaWQgU3RvcmFnZUFyZWFJ
bXBsOjpjbG9zZURhdGFiYXNlSWZJZGxlKCkKICAgICAgICAgQVNTRVJUKCFtX2FjY2Vzc0NvdW50
KTsKICAgICAgICAgbV9jbG9zZURhdGFiYXNlVGltZXIuc3RvcCgpOwogCi0gICAgICAgIGNsb3Nl
RGF0YWJhc2VUaW1lckZpcmVkKCZtX2Nsb3NlRGF0YWJhc2VUaW1lcik7CisgICAgICAgIGNsb3Nl
RGF0YWJhc2VUaW1lckZpcmVkKCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9T
dG9yYWdlQXJlYUltcGwuaAppbmRleCA1NTZkNWMwZmQ2YTNjNjc5OGU0NmY4NjE1NWYxYzg3MmZh
ODgzMmZkLi45MjNhNmY1MGQ4ODk0YmJkNWRkMDIxZmU5OTJlODAxZTI5YWU4YzY2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmgKQEAgLTc3LDcgKzc3LDcgQEAgcHJp
dmF0ZToKICAgICBleHBsaWNpdCBTdG9yYWdlQXJlYUltcGwoU3RvcmFnZUFyZWFJbXBsKik7CiAK
ICAgICB2b2lkIGJsb2NrVW50aWxJbXBvcnRDb21wbGV0ZSgpIGNvbnN0OwotICAgIHZvaWQgY2xv
c2VEYXRhYmFzZVRpbWVyRmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIGNsb3NlRGF0YWJhc2VUaW1l
ckZpcmVkKCk7CiAKICAgICB2b2lkIGRpc3BhdGNoU3RvcmFnZUV2ZW50KGNvbnN0IFN0cmluZyYg
a2V5LCBjb25zdCBTdHJpbmcmIG9sZFZhbHVlLCBjb25zdCBTdHJpbmcmIG5ld1ZhbHVlLCBGcmFt
ZSogc291cmNlRnJhbWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0
b3JhZ2VBcmVhU3luYy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhU3lu
Yy5jcHAKaW5kZXggMGJkODE3NDRjYmI1YWUwMjhlY2Y1Zjc5YzQ5OTM5MTk4NmM3YjU0MC4uZDQ5
M2UwZDIyMTU2NzE4N2IwYzE5MmIzYzc1MzY4MDhiMjEzNjc5YyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYVN5bmMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N0b3JhZ2UvU3RvcmFnZUFyZWFTeW5jLmNwcApAQCAtNTIsNyArNTIsNyBAQCBzdGF0aWMgY29u
c3QgZG91YmxlIFN0b3JhZ2VTeW5jSW50ZXJ2YWwgPSAxLjA7CiBzdGF0aWMgY29uc3QgaW50IE1h
eGl1bUl0ZW1zVG9TeW5jID0gMTAwOwogCiBpbmxpbmUgU3RvcmFnZUFyZWFTeW5jOjpTdG9yYWdl
QXJlYVN5bmMoUGFzc1JlZlB0cjxTdG9yYWdlU3luY01hbmFnZXI+IHN0b3JhZ2VTeW5jTWFuYWdl
ciwgUGFzc1JlZlB0cjxTdG9yYWdlQXJlYUltcGw+IHN0b3JhZ2VBcmVhLCBjb25zdCBTdHJpbmcm
IGRhdGFiYXNlSWRlbnRpZmllcikKLSAgICA6IG1fc3luY1RpbWVyKHRoaXMsICZTdG9yYWdlQXJl
YVN5bmM6OnN5bmNUaW1lckZpcmVkKQorICAgIDogbV9zeW5jVGltZXIoKnRoaXMsICZTdG9yYWdl
QXJlYVN5bmM6OnN5bmNUaW1lckZpcmVkKQogICAgICwgbV9pdGVtc0NsZWFyZWQoZmFsc2UpCiAg
ICAgLCBtX2ZpbmFsU3luY1NjaGVkdWxlZChmYWxzZSkKICAgICAsIG1fc3RvcmFnZUFyZWEoc3Rv
cmFnZUFyZWEpCkBAIC0xMDgsNyArMTA4LDcgQEAgdm9pZCBTdG9yYWdlQXJlYVN5bmM6OnNjaGVk
dWxlRmluYWxTeW5jKCkKICAgICAvLyBGSVhNRTogVGhpcyBpcyBzeW5jaHJvbm91cy4gIFdlIHNo
b3VsZCBkbyBpdCBvbiB0aGUgYmFja2dyb3VuZCBwcm9jZXNzLCBidXQKICAgICAvLyB3ZSBzaG91
bGQgZG8gaXQgc2FmZWx5LgogICAgIG1fZmluYWxTeW5jU2NoZWR1bGVkID0gdHJ1ZTsKLSAgICBz
eW5jVGltZXJGaXJlZCgmbV9zeW5jVGltZXIpOworICAgIHN5bmNUaW1lckZpcmVkKCk7CiAKICAg
ICBSZWZQdHI8U3RvcmFnZUFyZWFTeW5jPiBwcm90ZWN0b3IodGhpcyk7CiAgICAgbV9zeW5jTWFu
YWdlci0+ZGlzcGF0Y2goW3Byb3RlY3Rvcl0gewpAQCAtMTY2LDcgKzE2Niw3IEBAIHZvaWQgU3Rv
cmFnZUFyZWFTeW5jOjpzY2hlZHVsZUNsb3NlRGF0YWJhc2UoKQogICAgIH0KIH0KIAotdm9pZCBT
dG9yYWdlQXJlYVN5bmM6OnN5bmNUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU3RvcmFnZUFyZWFT
eW5jOjpzeW5jVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIApA
QCAtNTM3LDcgKzUzNyw3IEBAIHZvaWQgU3RvcmFnZUFyZWFTeW5jOjpkZWxldGVFbXB0eURhdGFi
YXNlKCkKIAogdm9pZCBTdG9yYWdlQXJlYVN5bmM6OnNjaGVkdWxlU3luYygpCiB7Ci0gICAgc3lu
Y1RpbWVyRmlyZWQoJm1fc3luY1RpbWVyKTsKKyAgICBzeW5jVGltZXJGaXJlZCgpOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L1N0b3JhZ2VBcmVhU3luYy5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYVN5
bmMuaAppbmRleCA2YWU4ZmNiNjYyOGM2NWVmMjEwNGUyNTRlOWU2ODkyZTA1MjAzZGI2Li5iNWFh
NTA1ZmM3ZDg0MjJkYTJhY2IzNjQ5YzczNmQ5ZTEyYTM2YzBhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0
b3JhZ2UvU3RvcmFnZUFyZWFTeW5jLmgKQEAgLTc5LDcgKzc5LDcgQEAgcHJpdmF0ZToKICAgICAg
IFNraXBJZk5vbkV4aXN0ZW50CiAgICAgfTsKIAotICAgIHZvaWQgc3luY1RpbWVyRmlyZWQoVGlt
ZXIqKTsKKyAgICB2b2lkIHN5bmNUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBvcGVuRGF0YWJhc2Uo
T3BlbkRhdGFiYXNlUGFyYW1UeXBlIG9wZW5pbmdTdHJhdGVneSk7CiAgICAgdm9pZCBzeW5jKGJv
b2wgY2xlYXJJdGVtcywgY29uc3QgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4mIGl0ZW1zKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwCmluZGV4IGFlYTAyZWU5YmEyNTNiNzMwNDQwM2ExMWY3
NmNiMzBjZGU0OTMzMjguLjE1NzQ3NWEyYTliOTY3MDBkN2VhY2U4ZDhmOWRiM2MzMGViZDU3YWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAKQEAgLTY4Niw3ICs2ODYsNyBAQCB2b2lkIFNW
R0VsZW1lbnQ6OnNlbmRTVkdMb2FkRXZlbnRJZlBvc3NpYmxlQXN5bmNocm9ub3VzbHkoKQogICAg
IHN2Z0xvYWRFdmVudFRpbWVyKCktPnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBTVkdFbGVt
ZW50OjpzdmdMb2FkRXZlbnRUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU1ZHRWxlbWVudDo6c3Zn
TG9hZEV2ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgc2VuZFNWR0xvYWRFdmVudElmUG9zc2libGUo
KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5oCmluZGV4IDczZjMwM2Y2N2NkMzg4OTBkOTgzYmYy
YmUyZDJkYjVmMzIxN2EzNGIuLjczNDI1YTFlNGNjNjY3YjQ0NGYwNDdiMThmMzNmZWEzZTVlYTAx
ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuaApAQCAtODksNyArODksNyBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIHNlbmRTVkdMb2FkRXZlbnRJZlBvc3NpYmxlKGJvb2wgc2VuZFBhcmVudExvYWRF
dmVudHMgPSBmYWxzZSk7CiAgICAgdm9pZCBzZW5kU1ZHTG9hZEV2ZW50SWZQb3NzaWJsZUFzeW5j
aHJvbm91c2x5KCk7Ci0gICAgdm9pZCBzdmdMb2FkRXZlbnRUaW1lckZpcmVkKFRpbWVyKik7Cisg
ICAgdm9pZCBzdmdMb2FkRXZlbnRUaW1lckZpcmVkKCk7CiAgICAgdmlydHVhbCBUaW1lciogc3Zn
TG9hZEV2ZW50VGltZXIoKTsKIAogICAgIHZpcnR1YWwgQWZmaW5lVHJhbnNmb3JtKiBzdXBwbGVt
ZW50YWxUcmFuc2Zvcm0oKSB7IHJldHVybiAwOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHU2NyaXB0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU2NyaXB0
RWxlbWVudC5jcHAKaW5kZXggNjA5YzY3ODA1MDQ2ZDU3ZGZlYTE0MzM1YjgyYjcwN2Y3NzA4ODQ2
MS4uYjRiM2ZiZGQ5NzRhMGQ2MGM5MmQ3NWMyNWVlNjk3OGMzYzZjMmFmZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdTY3JpcHRFbGVtZW50LmNwcApAQCAtNDUsNyArNDUsNyBAQCBFTkRfUkVHSVNU
RVJfQU5JTUFURURfUFJPUEVSVElFUwogaW5saW5lIFNWR1NjcmlwdEVsZW1lbnQ6OlNWR1Njcmlw
dEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50
LCBib29sIHdhc0luc2VydGVkQnlQYXJzZXIsIGJvb2wgYWxyZWFkeVN0YXJ0ZWQpCiAgICAgOiBT
VkdFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KQogICAgICwgU2NyaXB0RWxlbWVudCgqdGhpcywg
d2FzSW5zZXJ0ZWRCeVBhcnNlciwgYWxyZWFkeVN0YXJ0ZWQpCi0gICAgLCBtX3N2Z0xvYWRFdmVu
dFRpbWVyKHRoaXMsICZTVkdFbGVtZW50OjpzdmdMb2FkRXZlbnRUaW1lckZpcmVkKQorICAgICwg
bV9zdmdMb2FkRXZlbnRUaW1lcigqdGhpcywgJlNWR0VsZW1lbnQ6OnN2Z0xvYWRFdmVudFRpbWVy
RmlyZWQpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05hbWUoU1ZHTmFtZXM6OnNjcmlwdFRhZykpOwog
ICAgIHJlZ2lzdGVyQW5pbWF0ZWRQcm9wZXJ0aWVzRm9yU1ZHU2NyaXB0RWxlbWVudCgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1N0eWxlRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVtZW50LmNwcAppbmRleCA0ZmM0MWQzMzJiYWQwZjMzM2Nl
NGE3NzU1Y2U0ODJkMjlhMTBmY2UxLi5jYjA3NzJlN2JiN2YyZTQ1MDA5MDk4YTE4N2RhMzYzOTVh
YmExNTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVtZW50LmNwcApAQCAtMzYsNyAr
MzYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBpbmxpbmUgU1ZHU3R5bGVFbGVtZW50OjpTVkdT
dHlsZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3Vt
ZW50LCBib29sIGNyZWF0ZWRCeVBhcnNlcikKICAgICA6IFNWR0VsZW1lbnQodGFnTmFtZSwgZG9j
dW1lbnQpCiAgICAgLCBtX3N0eWxlU2hlZXRPd25lcihkb2N1bWVudCwgY3JlYXRlZEJ5UGFyc2Vy
KQotICAgICwgbV9zdmdMb2FkRXZlbnRUaW1lcih0aGlzLCAmU1ZHRWxlbWVudDo6c3ZnTG9hZEV2
ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fc3ZnTG9hZEV2ZW50VGltZXIoKnRoaXMsICZTVkdFbGVt
ZW50OjpzdmdMb2FkRXZlbnRUaW1lckZpcmVkKQogewogICAgIEFTU0VSVChoYXNUYWdOYW1lKFNW
R05hbWVzOjpzdHlsZVRhZykpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1VzZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCmlu
ZGV4IGVlZmM3NzE1NTY5MzE3ZjcyNTRkNjFlOWVmMWNjYmUxMjRiZTk0ZDAuLjUyOTUxYmNkN2Fk
OWNmN2M5Y2FmZWY0OGJiMjc1MGIwYzY1ODE1ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdVc2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxl
bWVudC5jcHAKQEAgLTg4LDcgKzg4LDcgQEAgaW5saW5lIFNWR1VzZUVsZW1lbnQ6OlNWR1VzZUVs
ZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3UKICAgICAs
IG1fd2FzSW5zZXJ0ZWRCeVBhcnNlcih3YXNJbnNlcnRlZEJ5UGFyc2VyKQogICAgICwgbV9oYXZl
RmlyZWRMb2FkRXZlbnQoZmFsc2UpCiAgICAgLCBtX25lZWRzU2hhZG93VHJlZVJlY3JlYXRpb24o
ZmFsc2UpCi0gICAgLCBtX3N2Z0xvYWRFdmVudFRpbWVyKHRoaXMsICZTVkdFbGVtZW50OjpzdmdM
b2FkRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9zdmdMb2FkRXZlbnRUaW1lcigqdGhpcywgJlNW
R0VsZW1lbnQ6OnN2Z0xvYWRFdmVudFRpbWVyRmlyZWQpCiB7CiAgICAgQVNTRVJUKGhhc0N1c3Rv
bVN0eWxlUmVzb2x2ZUNhbGxiYWNrcygpKTsKICAgICBBU1NFUlQoaGFzVGFnTmFtZShTVkdOYW1l
czo6dXNlVGFnKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvYW5pbWF0aW9uL1NN
SUxUaW1lQ29udGFpbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRp
bWVDb250YWluZXIuY3BwCmluZGV4IDRjNDc2MjlkOGIyMjRlNmE1ZGI2ZjEwMjU3MzkyNTAwYTcz
MzQzMjcuLjZiY2QyNWQ1MzY0ZDJjMmZiMDU0NjVlMDI1Y2ZlNjhhZGM4N2QwNjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWluZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWluZXIuY3BwCkBA
IC00NCw3ICs0NCw3IEBAIFNNSUxUaW1lQ29udGFpbmVyOjpTTUlMVGltZUNvbnRhaW5lcihTVkdT
VkdFbGVtZW50KiBvd25lcikKICAgICAsIG1fcmVzdW1lVGltZSgwKQogICAgICwgbV9wcmVzZXRT
dGFydFRpbWUoMCkKICAgICAsIG1fZG9jdW1lbnRPcmRlckluZGV4ZXNEaXJ0eShmYWxzZSkKLSAg
ICAsIG1fdGltZXIodGhpcywgJlNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZpcmVkKQorICAgICwg
bV90aW1lcigqdGhpcywgJlNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZpcmVkKQogICAgICwgbV9v
d25lclNWR0VsZW1lbnQob3duZXIpCiAjaWZuZGVmIE5ERUJVRwogICAgICwgbV9wcmV2ZW50U2No
ZWR1bGVkQW5pbWF0aW9uc0NoYW5nZXMoZmFsc2UpCkBAIC0yMTMsNyArMjEzLDcgQEAgdm9pZCBT
TUlMVGltZUNvbnRhaW5lcjo6c3RhcnRUaW1lcihTTUlMVGltZSBmaXJlVGltZSwgU01JTFRpbWUg
bWluaW11bURlbGF5KQogICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KGRlbGF5LnZhbHVlKCkpOwog
fQogCi12b2lkIFNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU01J
TFRpbWVDb250YWluZXI6OnRpbWVyRmlyZWQoKQogewogICAgIEFTU0VSVChtX2JlZ2luVGltZSk7
CiAgICAgQVNTRVJUKCFtX3BhdXNlVGltZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvYW5pbWF0aW9uL1NNSUxUaW1lQ29udGFpbmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvYW5p
bWF0aW9uL1NNSUxUaW1lQ29udGFpbmVyLmgKaW5kZXggNDBhMGZlYTY0NDY1YWRkN2YxM2UwZWI5
YWFiMDI0NGU3ZDZkMjQ5OC4uMDEyNWEyY2VlMzBkMTNmZjJhOTcxNmM4M2VlYmQwMjQxZWI1YjUx
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL2FuaW1hdGlvbi9TTUlMVGltZUNvbnRh
aW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWlu
ZXIuaApAQCAtNjcsNyArNjcsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFNNSUxUaW1lQ29u
dGFpbmVyKFNWR1NWR0VsZW1lbnQqIG93bmVyKTsKIAotICAgIHZvaWQgdGltZXJGaXJlZChUaW1l
ciopOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRUaW1lcihTTUlMVGlt
ZSBmaXJlVGltZSwgU01JTFRpbWUgbWluaW11bURlbGF5ID0gMCk7CiAgICAgdm9pZCB1cGRhdGVB
bmltYXRpb25zKFNNSUxUaW1lIGVsYXBzZWQsIGJvb2wgc2Vla1RvVGltZSA9IGZhbHNlKTsKICAg
ICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFByb2dyZXNz
RXZlbnRUaHJvdHRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RQcm9n
cmVzc0V2ZW50VGhyb3R0bGUuY3BwCmluZGV4IGNiMzYwMzRjNTg2NjY1Y2M2ZWE0OTY1NzkwNTZi
YTY2Y2JkZDI5Y2QuLjBmNjI0YTAwZDdmZDFkOGE3MGVkYzBiMmY4ZmYwNGRlYTIxYTQxMTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRU
aHJvdHRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0UHJvZ3Jl
c3NFdmVudFRocm90dGxlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBYTUxIdHRwUmVxdWVzdFByb2dy
ZXNzRXZlbnRUaHJvdHRsZTo6WE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUoRXZl
bnRUYQogICAgICwgbV9sb2FkZWQoMCkKICAgICAsIG1fdG90YWwoMCkKICAgICAsIG1fZGVmZXJF
dmVudHMoZmFsc2UpCi0gICAgLCBtX2Rpc3BhdGNoRGVmZXJyZWRFdmVudHNUaW1lcih0aGlzLCAm
WE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGU6OmRpc3BhdGNoRGVmZXJyZWRFdmVu
dHMpCisgICAgLCBtX2Rpc3BhdGNoRGVmZXJyZWRFdmVudHNUaW1lcigqdGhpcywgJlhNTEh0dHBS
ZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlOjpkaXNwYXRjaERlZmVycmVkRXZlbnRzKQogewog
ICAgIEFTU0VSVCh0YXJnZXQpOwogfQpAQCAtMTM3LDkgKzEzNyw4IEBAIHZvaWQgWE1MSHR0cFJl
cXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGU6OmZsdXNoUHJvZ3Jlc3NFdmVudCgpCiAgICAgZGlz
cGF0Y2hFdmVudChldmVudCk7CiB9CiAKLXZvaWQgWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50
VGhyb3R0bGU6OmRpc3BhdGNoRGVmZXJyZWRFdmVudHMoVGltZXIqIHRpbWVyKQordm9pZCBYTUxI
dHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZTo6ZGlzcGF0Y2hEZWZlcnJlZEV2ZW50cygp
CiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0gJm1fZGlzcGF0Y2hEZWZlcnJl
ZEV2ZW50c1RpbWVyKTsKICAgICBBU1NFUlQobV9kZWZlckV2ZW50cyk7CiAgICAgbV9kZWZlckV2
ZW50cyA9IGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJl
cXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRw
UmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5oCmluZGV4IDk5ZTk5M2E5NWU4ZmJkNjAzNmVl
NDI3YjhjMWU5ZDc1YWVjZDhhZWYuLmU2NTM0MGYxOWI1ODU2MTEwZjEwZjYzMDBiMjQ2MGUzYzEx
ZDE3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFByb2dy
ZXNzRXZlbnRUaHJvdHRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVz
dFByb2dyZXNzRXZlbnRUaHJvdHRsZS5oCkBAIC02MCw3ICs2MCw3IEBAIHByaXZhdGU6CiAgICAg
c3RhdGljIGNvbnN0IGRvdWJsZSBtaW5pbXVtUHJvZ3Jlc3NFdmVudERpc3BhdGNoaW5nSW50ZXJ2
YWxJblNlY29uZHM7CiAKICAgICB2aXJ0dWFsIHZvaWQgZmlyZWQoKTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGVmZXJyZWRFdmVudHMoVGltZXIqKTsKKyAgICB2b2lkIGRpc3BhdGNoRGVmZXJyZWRFdmVu
dHMoKTsKICAgICB2b2lkIGZsdXNoUHJvZ3Jlc3NFdmVudCgpOwogICAgIHZvaWQgZGlzcGF0Y2hF
dmVudChQYXNzUmVmUHRyPEV2ZW50Pik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5oIGIvU291cmNlL1dl
YktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5LmgKaW5k
ZXggZjQ0MDRlMjU0MjljYTU0NjYyYmYxMWU3ZjZkMzIxYmIxMjNjMjYwMy4uMGRiMjUyYmI2MWUy
YzdlNzAwMmY5MDJlZGZjZGU0ODBhMTM5MWU0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9t
YWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5LmgKKysrIGIvU291
cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5
LmgKQEAgLTI5NSw3ICsyOTUsNyBAQCBwcml2YXRlOgogICAgIE5ldHNjYXBlUGx1Z2luSG9zdFBy
b3h5KiBtX3BsdWdpbkhvc3RQcm94eTsKICAgICBXZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcg
Km1fcGx1Z2luVmlldzsKIAotICAgIHZvaWQgcmVxdWVzdFRpbWVyRmlyZWQoV2ViQ29yZTo6VGlt
ZXIqKTsKKyAgICB2b2lkIHJlcXVlc3RUaW1lckZpcmVkKCk7CiAgICAgV2ViQ29yZTo6VGltZXIg
bV9yZXF1ZXN0VGltZXI7CiAgICAgRGVxdWU8UmVmUHRyPFBsdWdpblJlcXVlc3Q+PiBtX3BsdWdp
blJlcXVlc3RzOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tIGIvU291cmNlL1dlYktpdC9tYWMv
UGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCmluZGV4IDIyNDU5
YTYzNGI3YjExZTg2ODA2MGZjYjJmNGM2OTFlNWJkOGMwN2EuLmNhZGU5ZTFlOWZkZjdiNmY2NDEw
ODVkYjQ3MDNhYjg0MzM4NTNhNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdp
bnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KQEAg
LTIxNyw3ICsyMTcsNyBAQCBERUZJTkVfREVCVUdfT05MWV9HTE9CQUwoV1RGOjpSZWZDb3VudGVk
TGVha0NvdW50ZXIsIG5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eQogTmV0c2NhcGVQbHVnaW5J
bnN0YW5jZVByb3h5OjpOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkoTmV0c2NhcGVQbHVnaW5I
b3N0UHJveHkqIHBsdWdpbkhvc3RQcm94eSwgV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3ICpw
bHVnaW5WaWV3LCBib29sIGZ1bGxGcmFtZVBsdWdpbikKICAgICA6IG1fcGx1Z2luSG9zdFByb3h5
KHBsdWdpbkhvc3RQcm94eSkKICAgICAsIG1fcGx1Z2luVmlldyhwbHVnaW5WaWV3KQotICAgICwg
bV9yZXF1ZXN0VGltZXIodGhpcywgJk5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6cmVxdWVz
dFRpbWVyRmlyZWQpCisgICAgLCBtX3JlcXVlc3RUaW1lcigqdGhpcywgJk5ldHNjYXBlUGx1Z2lu
SW5zdGFuY2VQcm94eTo6cmVxdWVzdFRpbWVyRmlyZWQpCiAgICAgLCBtX2N1cnJlbnRVUkxSZXF1
ZXN0SUQoMCkKICAgICAsIG1fcmVuZGVyQ29udGV4dElEKDApCiAgICAgLCBtX3JlbmRlcmVyVHlw
ZShVc2VTb2Z0d2FyZVJlbmRlcmVyKQpAQCAtNzM1LDcgKzczNSw3IEBAIHZvaWQgTmV0c2NhcGVQ
bHVnaW5JbnN0YW5jZVByb3h5OjpldmFsdWF0ZUphdmFTY3JpcHQoUGx1Z2luUmVxdWVzdCogcGx1
Z2luUmVxdWVzCiAgICAgfQogfQogCi12b2lkIE5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6
cmVxdWVzdFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJv
eHk6OnJlcXVlc3RUaW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQoIW1fcGx1Z2luUmVxdWVzdHMu
aXNFbXB0eSgpKTsKICAgICBBU1NFUlQobV9wbHVnaW5WaWV3KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0uaCBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0uaAppbmRleCA3M2JlNWM0
NDc2MWFhMDU3ZDgxNmNlYTk0MTZiYmViOTA3MmEwZTg2Li4yZWI5YWJmZDA2YzFkOGI3MzgxZDhh
YjhkMjMzYjJiZTYyY2E5YThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5z
L1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFtLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lu
cy9XZWJOZXRzY2FwZVBsdWdpblN0cmVhbS5oCkBAIC0xMjMsNyArMTIzLDcgQEAgcHJpdmF0ZToK
ICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlVVJMUmVxdWVzdD4gbV9yZXF1ZXN0OwogICAgIE5QUGx1
Z2luRnVuY3MgKm1fcGx1Z2luRnVuY3M7CiAKLSAgICB2b2lkIGRlbGl2ZXJEYXRhVGltZXJGaXJl
ZChXZWJDb3JlOjpUaW1lciopOworICAgIHZvaWQgZGVsaXZlckRhdGFUaW1lckZpcmVkKCk7CiAg
ICAgV2ViQ29yZTo6VGltZXIgbV9kZWxpdmVyRGF0YVRpbWVyOwogICAgIAogICAgIFdlYk5ldHNj
YXBlUGx1Z2luU3RyZWFtKFdlYkNvcmU6OkZyYW1lTG9hZGVyKik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFtLm1tIGIvU291cmNl
L1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblN0cmVhbS5tbQppbmRleCBjNTk5
ZjgwOTc0MDU0YjhiZGNiOGNjZGM1NDJhZmU5M2ExYWRiNWQxLi5mODczNDVmOWFjMDhkMzdmNzI0
MzRmZDhjZjAzZWZkY2MxMTE2NDdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVn
aW5zL1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFtLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1Bs
dWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0KQEAgLTEzNSw3ICsxMzUsNyBAQCBXZWJO
ZXRzY2FwZVBsdWdpblN0cmVhbTo6V2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0oRnJhbWVMb2FkZXIq
IGZyYW1lTG9hZGVyKQogICAgICwgbV9uZXdTdHJlYW1TdWNjZXNzZnVsKGZhbHNlKQogICAgICwg
bV9mcmFtZUxvYWRlcihmcmFtZUxvYWRlcikKICAgICAsIG1fcGx1Z2luRnVuY3MoMCkKLSAgICAs
IG1fZGVsaXZlckRhdGFUaW1lcih0aGlzLCAmV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06OmRlbGl2
ZXJEYXRhVGltZXJGaXJlZCkKKyAgICAsIG1fZGVsaXZlckRhdGFUaW1lcigqdGhpcywgJldlYk5l
dHNjYXBlUGx1Z2luU3RyZWFtOjpkZWxpdmVyRGF0YVRpbWVyRmlyZWQpCiB7CiAgICAgbWVtc2V0
KCZtX3N0cmVhbSwgMCwgc2l6ZW9mKE5QU3RyZWFtKSk7CiB9CkBAIC0xNTUsNyArMTU1LDcgQEAg
V2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06OldlYk5ldHNjYXBlUGx1Z2luU3RyZWFtKE5TVVJMUmVx
dWVzdCAqcmVxdWVzdCwgTlBQIHBsdWcKICAgICAsIG1fZnJhbWVMb2FkZXIoMCkKICAgICAsIG1f
cmVxdWVzdChhZG9wdE5TKFtyZXF1ZXN0IG11dGFibGVDb3B5XSkpCiAgICAgLCBtX3BsdWdpbkZ1
bmNzKDApCi0gICAgLCBtX2RlbGl2ZXJEYXRhVGltZXIodGhpcywgJldlYk5ldHNjYXBlUGx1Z2lu
U3RyZWFtOjpkZWxpdmVyRGF0YVRpbWVyRmlyZWQpCisgICAgLCBtX2RlbGl2ZXJEYXRhVGltZXIo
KnRoaXMsICZXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVsaXZlckRhdGFUaW1lckZpcmVkKQog
ewogICAgIG1lbXNldCgmbV9zdHJlYW0sIDAsIHNpemVvZihOUFN0cmVhbSkpOwogCkBAIC01NTIs
NyArNTUyLDcgQEAgdm9pZCBXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVsaXZlckRhdGEoKQog
ICAgIH0KIH0KIAotdm9pZCBXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVsaXZlckRhdGFUaW1l
ckZpcmVkKFdlYkNvcmU6OlRpbWVyKiB0aW1lcikKK3ZvaWQgV2ViTmV0c2NhcGVQbHVnaW5TdHJl
YW06OmRlbGl2ZXJEYXRhVGltZXJGaXJlZCgpCiB7CiAgICAgZGVsaXZlckRhdGEoKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0Z1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXIuY3Bw
IGIvU291cmNlL1dlYktpdC93aW4vRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlci5jcHAKaW5kZXgg
NjA2ODgxY2JjNjNmY2M2NzFlMGM0MWQzNGIzYzdlYWMyNjJlZjMyZC4uZjY2OTFhZmI5NTVmN2U5
OWRiODk1MTQ4Y2UzZDYzYmQ1ZDk4ODMzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4v
RnVsbHNjcmVlblZpZGVvQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vRnVs
bHNjcmVlblZpZGVvQ29udHJvbGxlci5jcHAKQEAgLTU5NSw3ICs1OTUsNyBAQCB2b2lkIEZ1bGxz
Y3JlZW5WaWRlb0NvbnRyb2xsZXI6Om9uS2V5RG93bihpbnQgdmlydHVhbEtleSkKICAgICB9CiB9
CiAKLXZvaWQgRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlcjo6dGltZXJGaXJlZChUaW1lciopCit2
b2lkIEZ1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXI6OnRpbWVyRmlyZWQoKQogewogICAgIC8vIFVw
ZGF0ZSB0aGUgdGltZSBzbGlkZXIKICAgICBtX3RpbWVTbGlkZXIuc2V0VmFsdWUoY3VycmVudFRp
bWUoKSAvIGR1cmF0aW9uKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vRnVsbHNj
cmVlblZpZGVvQ29udHJvbGxlci5oIGIvU291cmNlL1dlYktpdC93aW4vRnVsbHNjcmVlblZpZGVv
Q29udHJvbGxlci5oCmluZGV4IGM3ZjYxZGUzYTA3ZjY3OTA1ZDEzOWUyMWE0OTUxMDQ3NjJiZWEx
MzIuLmVhOGNmMjY5YTIxMzEyYzIzYzVjOTFiY2I4YzUyMzExODliOTc4MjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvd2luL0Z1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L3dpbi9GdWxsc2NyZWVuVmlkZW9Db250cm9sbGVyLmgKQEAgLTEzOCw3ICsxMzgs
NyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVySFVEV2luZG93Q2xhc3MoKTsK
ICAgICBzdGF0aWMgTFJFU1VMVCBDQUxMQkFDSyBodWRXbmRQcm9jKEhXTkQsIFVJTlQgbWVzc2Fn
ZSwgV1BBUkFNLCBMUEFSQU0pOwogICAgIHZvaWQgY3JlYXRlSFVEV2luZG93KCk7Ci0gICAgdm9p
ZCB0aW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyKik7CisgICAgdm9pZCB0aW1lckZpcmVkKCk7CiAK
ICAgICB2b2lkIHRvZ2dsZVBsYXkoKTsKICAgICB2b2lkIGRyYXcoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCmlu
ZGV4IGY2MmI5NTkwNjllMDYxNThiMWRlNTIyNWM1ZmFkYjYwNWE1M2M0ODIuLjFiMDEzNTZjZGNk
YmI3NjIwYWVhMDdlZGFiMDFmMzE5NDg4Njc4NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcApAQCAtODgsNyAr
ODgsNyBAQCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcihjb25z
dCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycwogICAgICwgbV9kaWRDb252ZXJ0SGFuZGxl
VG9Eb3dubG9hZChmYWxzZSkKICAgICAsIG1fZGlkQ29uc3VtZVNhbmRib3hFeHRlbnNpb25zKGZh
bHNlKQogICAgICwgbV9kZWZlcnNMb2FkaW5nKHBhcmFtZXRlcnMuZGVmZXJzTG9hZGluZykKLSAg
ICAsIG1fYnVmZmVyaW5nVGltZXIodGhpcywgJk5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6YnVmZmVy
aW5nVGltZXJGaXJlZCkKKyAgICAsIG1fYnVmZmVyaW5nVGltZXIoKnRoaXMsICZOZXR3b3JrUmVz
b3VyY2VMb2FkZXI6OmJ1ZmZlcmluZ1RpbWVyRmlyZWQpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6
OmlzTWFpbigpKTsKICAgICAvLyBGSVhNRTogVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSBvZiB0
aGUgZXhpc3RlbmNlIG9mIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgaW4gV2ViQ29yZS4KQEAgLTM5
Myw3ICszOTMsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c3RhcnRCdWZmZXJpbmdU
aW1lcklmTmVlZGVkKCkKICAgICBtX2J1ZmZlcmluZ1RpbWVyLnN0YXJ0T25lU2hvdChtX3BhcmFt
ZXRlcnMubWF4aW11bUJ1ZmZlcmluZ1RpbWUpOwogfQogCi12b2lkIE5ldHdvcmtSZXNvdXJjZUxv
YWRlcjo6YnVmZmVyaW5nVGltZXJGaXJlZChUaW1lciYpCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxv
YWRlcjo6YnVmZmVyaW5nVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKG1fYnVmZmVyZWREYXRh
KTsKICAgICBBU1NFUlQobV9oYW5kbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAppbmRleCA5MjlhOGRmYThmMTAxNDI3
YzMwMjAzMzQyZmUzMmQxOGNkMjUwMTdjLi5hMjcxNmRmZTMxMGJlYzQ4MzNiNzk5NmRmNGQ4M2Mw
YzZiMWQ4MDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUmVzb3VyY2VMb2FkZXIuaApAQCAtMTQ4LDcgKzE0OCw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBwbGF0Zm9ybURpZFJlY2VpdmVSZXNwb25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJik7CiAKICAgICB2b2lkIHN0YXJ0QnVmZmVyaW5nVGltZXJJZk5lZWRlZCgpOwotICAg
IHZvaWQgYnVmZmVyaW5nVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciYpOworICAgIHZvaWQgYnVm
ZmVyaW5nVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc2VuZEJ1ZmZlcihXZWJDb3JlOjpTaGFyZWRC
dWZmZXIqLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOwogCiAgICAgYm9vbCBpc1N5bmNocm9ub3Vz
KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViTWVtb3J5U2Ft
cGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViTWVtb3J5U2FtcGxlci5jcHAKaW5k
ZXggOGY2NWVjZWNiZjEzMzIxOWFlMTViMTAxOGQ0NTg0ZDQ0NGUyZmMyZC4uODI0ODg3Nzc4ZDkx
ZmUxNTYyNzQ2M2IxM2JjMTY5N2ViN2Y0MjIyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9X
ZWJNZW1vcnlTYW1wbGVyLmNwcApAQCAtNDgsOCArNDgsOCBAQCBXZWJNZW1vcnlTYW1wbGVyKiBX
ZWJNZW1vcnlTYW1wbGVyOjpzaGFyZWQoKQogfQogCiBXZWJNZW1vcnlTYW1wbGVyOjpXZWJNZW1v
cnlTYW1wbGVyKCkgCi0gICAgOiBtX3NhbXBsZVRpbWVyKHRoaXMsICZXZWJNZW1vcnlTYW1wbGVy
OjpzYW1wbGVUaW1lckZpcmVkKQotICAgICwgbV9zdG9wVGltZXIodGhpcywgJldlYk1lbW9yeVNh
bXBsZXI6OnN0b3BUaW1lckZpcmVkKQorICAgIDogbV9zYW1wbGVUaW1lcigqdGhpcywgJldlYk1l
bW9yeVNhbXBsZXI6OnNhbXBsZVRpbWVyRmlyZWQpCisgICAgLCBtX3N0b3BUaW1lcigqdGhpcywg
JldlYk1lbW9yeVNhbXBsZXI6OnN0b3BUaW1lckZpcmVkKQogICAgICwgbV9pc1J1bm5pbmcoZmFs
c2UpCiAgICAgLCBtX3J1bm5pbmdUaW1lKDApCiB7CkBAIC0xNTQsMTMgKzE1NCwxMyBAQCB2b2lk
IFdlYk1lbW9yeVNhbXBsZXI6OndyaXRlSGVhZGVycygpCiAgICAgd3JpdGVUb0ZpbGUobV9zYW1w
bGVMb2dGaWxlLCB1dGY4U3RyaW5nLmRhdGEoKSwgdXRmOFN0cmluZy5sZW5ndGgoKSk7CiB9CiAK
LXZvaWQgV2ViTWVtb3J5U2FtcGxlcjo6c2FtcGxlVGltZXJGaXJlZChUaW1lciopCit2b2lkIFdl
Yk1lbW9yeVNhbXBsZXI6OnNhbXBsZVRpbWVyRmlyZWQoKQogewogICAgIHNlbmRNZW1vcnlQcmVz
c3VyZUV2ZW50KCk7CiAgICAgYXBwZW5kQ3VycmVudE1lbW9yeVVzYWdlVG9GaWxlKG1fc2FtcGxl
TG9nRmlsZSk7CiB9CiAKLXZvaWQgV2ViTWVtb3J5U2FtcGxlcjo6c3RvcFRpbWVyRmlyZWQoVGlt
ZXIqKQordm9pZCBXZWJNZW1vcnlTYW1wbGVyOjpzdG9wVGltZXJGaXJlZCgpCiB7CiAgICAgaWYg
KCFtX2lzUnVubmluZykKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJN
ZW1vcnlTYW1wbGVyLmgKaW5kZXggZjBhNWUwZmQzZDZiOTFkNzk1NWM5NTc4N2I4MDY1OWMwMTlh
NTg1OS4uZWMyNDQxMDVjOGZkNTQzYTAwZDBkYTk2ZWMyYWI2NDkxOTU2NjllNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViTWVtb3J5U2FtcGxlci5oCkBAIC04NSw4ICs4NSw4IEBAIHByaXZh
dGU6CiAgICAgdm9pZCBpbml0aWFsaXplU2FuZGJveGVkTG9nRmlsZShjb25zdCBTYW5kYm94RXh0
ZW5zaW9uOjpIYW5kbGUmLCBjb25zdCBTdHJpbmcmKTsKICAgICB2b2lkIHdyaXRlSGVhZGVycygp
OwogICAgIHZvaWQgaW5pdGlhbGl6ZVRpbWVycyhkb3VibGUpOwotICAgIHZvaWQgc2FtcGxlVGlt
ZXJGaXJlZChXZWJDb3JlOjpUaW1lciopOwotICAgIHZvaWQgc3RvcFRpbWVyRmlyZWQoV2ViQ29y
ZTo6VGltZXIqKTsKKyAgICB2b2lkIHNhbXBsZVRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIHN0b3BU
aW1lckZpcmVkKCk7CiAgICAgdm9pZCBhcHBlbmRDdXJyZW50TWVtb3J5VXNhZ2VUb0ZpbGUoV2Vi
Q29yZTo6UGxhdGZvcm1GaWxlSGFuZGxlJik7CiAgICAgdm9pZCBzZW5kTWVtb3J5UHJlc3N1cmVF
dmVudCgpOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1v
dGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9t
YWMvUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLmgKaW5kZXggNGMwMGE4ZGM2YzAy
YmVhMmJhMjQ4OTBlNjdjMGNlYzlmYTNmMjFkZi4uYTgyOTQyZDNkMTA2MTk1NzA1ZTNiYmM2MjE5
OWNjOGExZWU2MmQ0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1v
dGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvbWFjL1JlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbi5oCkBAIC01Miw3ICs1Miw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHdpbGxDb21taXRMYXllclRyZWUoUmVtb3RlTGF5ZXJUcmVl
VHJhbnNhY3Rpb24mKTsKICAgICB2b2lkIGRpZEZsdXNoTGF5ZXJzKCk7CiAKLSAgICB2b2lkIHZv
bGF0aWxpdHlUaW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyJik7CisgICAgdm9pZCB2b2xhdGlsaXR5
VGltZXJGaXJlZCgpOwogICAgIGJvb2wgbWFya0FsbEJhY2tpbmdTdG9yZVZvbGF0aWxlSW1tZWRp
YXRlbHlJZlBvc3NpYmxlKCk7CiAKICAgICB2b2lkIHNjaGVkdWxlVm9sYXRpbGl0eVRpbWVyKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyQmFja2lu
Z1N0b3JlQ29sbGVjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5
ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLm1tCmluZGV4IGJhOTEwNjRiZThhY2JmNjQ2NDE2OThj
ZjlkY2NmZjJlZDVmNjA2NjQuLmZkY2MzMzAyNzQzY2ZhZTY1MTBmZTgyM2ZlZDU0YTg0ZmUyNzEy
MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJCYWNr
aW5nU3RvcmVDb2xsZWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVt
b3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLm1tCkBAIC0zNyw3ICszNyw3IEBAIGNvbnN0
IHN0ZDo6Y2hyb25vOjptaWxsaXNlY29uZHMgdm9sYXRpbGl0eVRpbWVySW50ZXJ2YWwgPSAyMDBf
bXM7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0
aW9uOjpSZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24oKQotICAgIDogbV92b2xhdGls
aXR5VGltZXIodGhpcywgJlJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6dm9sYXRp
bGl0eVRpbWVyRmlyZWQpCisgICAgOiBtX3ZvbGF0aWxpdHlUaW1lcigqdGhpcywgJlJlbW90ZUxh
eWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6dm9sYXRpbGl0eVRpbWVyRmlyZWQpCiAgICAgLCBt
X2luTGF5ZXJGbHVzaChmYWxzZSkKIHsKIH0KQEAgLTE2Myw3ICsxNjMsNyBAQCBib29sIFJlbW90
ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6bWFya0FsbEJhY2tpbmdTdG9yZVZvbGF0aWxl
SW1tZWRpYXRlbHlJZgogICAgIHJldHVybiBzdWNjZXNzZnVsbHlNYWRlQmFja2luZ1N0b3JlVm9s
YXRpbGU7CiB9CiAKLXZvaWQgUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uOjp2b2xh
dGlsaXR5VGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciYpCit2b2lkIFJlbW90ZUxheWVyQmFja2lu
Z1N0b3JlQ29sbGVjdGlvbjo6dm9sYXRpbGl0eVRpbWVyRmlyZWQoKQogewogICAgIGJvb2wgc3Vj
Y2Vzc2Z1bGx5TWFkZUJhY2tpbmdTdG9yZVZvbGF0aWxlID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCmluZGV4IDcxMDBhOGY5
ZTAzYmE1NDhhNjA1NWZiMzk1ZjhjOTcwYTAyYzdkY2UuLjEyOTI5OTBjOTc2OTAzZDczZTQ1N2Q4
M2QxMGMxZmQ5NGNiMjMzNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
UGx1Z2lucy9QbHVnaW5WaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1Bs
dWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTI5Myw3ICsyOTMsNyBAQCBQbHVnaW5WaWV3OjpQbHVn
aW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NS
ZWZQdHI8UAogICAgICwgbV9ucFJ1bnRpbWVPYmplY3RNYXAodGhpcykKICNlbmRpZgogICAgICwg
bV9tYW51YWxTdHJlYW1TdGF0ZShTdHJlYW1TdGF0ZUluaXRpYWwpCi0gICAgLCBtX3BsdWdpblNu
YXBzaG90VGltZXIodGhpcywgJlBsdWdpblZpZXc6OnBsdWdpblNuYXBzaG90VGltZXJGaXJlZCwg
cGx1Z2luU25hcHNob3RUaW1lckRlbGF5KQorICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0
aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2luU25hcHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hv
dFRpbWVyRGVsYXkpCiAgICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCiAgICAgLCBtX2Rp
ZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24oZmFsc2UpCiAgICAgLCBtX3BhZ2VTY2FsZUZhY3Rvcigx
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1v
dGVMYXllclRyZWVEcmF3aW5nQXJlYS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5oCmluZGV4IGEzYWUwMjIzYmY0OTQx
M2Q3Y2NmNmYzOTFhNWZlOTM2Njk3NTVkNmMuLmZjZTVjMTQ2OWQ4NmZjNWFhZGNkODZlMWVlY2Zk
YTFjOGFlMmQ2ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmgKQEAgLTEx
MCw3ICsxMTAsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdXBkYXRlU2Nyb2xsZWRFeHBvc2VkUmVj
dCgpOwogICAgIHZvaWQgdXBkYXRlUm9vdExheWVycygpOwogCi0gICAgdm9pZCBsYXllckZsdXNo
VGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopOworICAgIHZvaWQgbGF5ZXJGbHVzaFRpbWVyRmly
ZWQoKTsKICAgICB2b2lkIGZsdXNoTGF5ZXJzKCk7CiAKICAgICBXZWJDb3JlOjpUaWxlZEJhY2tp
bmcqIG1haW5GcmFtZVRpbGVkQmFja2luZygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5t
bSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvUmVtb3RlTGF5ZXJUcmVl
RHJhd2luZ0FyZWEubW0KaW5kZXggYWNjMmVmNGUwYzNlMjU1ZDU4MmNmYjcxYTYxMDQyNDI3MDBj
YzVjZC4uOTcwMzI2NmMzZjMzZTZkN2MwODA1YTNjM2YxZDhkOTVjYmY1NGFlZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVE
cmF3aW5nQXJlYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFj
L1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLm1tCkBAIC01OCw3ICs1OCw3IEBAIFJlbW90ZUxh
eWVyVHJlZURyYXdpbmdBcmVhOjpSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYShXZWJQYWdlJiB3
ZWJQYWdlLCBjb25zdCBXCiAgICAgLCBtX3Jvb3RMYXllcihHcmFwaGljc0xheWVyOjpjcmVhdGUo
Z3JhcGhpY3NMYXllckZhY3RvcnkoKSwgKnRoaXMpKQogICAgICwgbV9leHBvc2VkUmVjdChGbG9h
dFJlY3Q6OmluZmluaXRlUmVjdCgpKQogICAgICwgbV9zY3JvbGxlZEV4cG9zZWRSZWN0KEZsb2F0
UmVjdDo6aW5maW5pdGVSZWN0KCkpCi0gICAgLCBtX2xheWVyRmx1c2hUaW1lcih0aGlzLCAmUmVt
b3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmxheWVyRmx1c2hUaW1lckZpcmVkKQorICAgICwgbV9s
YXllckZsdXNoVGltZXIoKnRoaXMsICZSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYTo6bGF5ZXJG
bHVzaFRpbWVyRmlyZWQpCiAgICAgLCBtX2lzRmx1c2hpbmdTdXNwZW5kZWQoZmFsc2UpCiAgICAg
LCBtX2hhc0RlZmVycmVkRmx1c2goZmFsc2UpCiAgICAgLCBtX2lzVGhyb3R0bGluZ0xheWVyRmx1
c2hlcyhmYWxzZSkKQEAgLTMxMyw3ICszMTMsNyBAQCBib29sIFJlbW90ZUxheWVyVHJlZURyYXdp
bmdBcmVhOjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3JlOjpMYXllckZsdXNoVAog
ICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjps
YXllckZsdXNoVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopCit2b2lkIFJlbW90ZUxheWVyVHJl
ZURyYXdpbmdBcmVhOjpsYXllckZsdXNoVGltZXJGaXJlZCgpCiB7CiAgICAgZmx1c2hMYXllcnMo
KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IDIwZTYz
OTM3Y2M1NWYyYzFhZmViNDYzNzZiNDNhZmQ3MDhjZDViZTcuLmQwNGMzNjg4NTNjY2M3NTM3ZDhk
ZTQxZDEwZjFjYTkyNjNjZjk1ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lm
IFBMQVRGT1JNKElPUykKICAgICAsIG1fdmlld1VwZGF0ZURpc3BhdGNoZXIoVmlld1VwZGF0ZURp
c3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBtX3Byb2Nlc3NTdXNwZW5zaW9uQ2xl
YW51cFRpbWVyKHRoaXMsICZXZWJQcm9jZXNzOjpwcm9jZXNzU3VzcGVuc2lvbkNsZWFudXBUaW1l
ckZpcmVkKQorICAgICwgbV9wcm9jZXNzU3VzcGVuc2lvbkNsZWFudXBUaW1lcigqdGhpcywgJldl
YlByb2Nlc3M6OnByb2Nlc3NTdXNwZW5zaW9uQ2xlYW51cFRpbWVyRmlyZWQpCiAgICAgLCBtX2lu
RGlkQ2xvc2UoZmFsc2UpCiAgICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFsc2UpCiAgICAgLCBt
X2NhY2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyKQpAQCAtMTc5LDcgKzE3OSw3IEBA
IFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogICAgICwgbV9oYXNTZWxlY3Rpb25TZXJ2aWNlcyhm
YWxzZSkKICAgICAsIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyhmYWxzZSkKICNlbmRpZgotICAg
ICwgbV9ub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lcih0aGlzLCAmV2ViUHJvY2Vzczo6bm9u
VmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCkKKyAgICAsIG1fbm9uVmlzaWJsZVByb2Nl
c3NDbGVhbnVwVGltZXIoKnRoaXMsICZXZWJQcm9jZXNzOjpub25WaXNpYmxlUHJvY2Vzc0NsZWFu
dXBUaW1lckZpcmVkKQogICAgICwgbV93ZWJPcmlnaW5EYXRhTWFuYWdlcihzdGQ6Om1ha2VfdW5p
cXVlPFdlYk9yaWdpbkRhdGFNYW5hZ2VyPigqdGhpcywgKnRoaXMpKQogewogICAgIC8vIEluaXRp
YWxpemUgb3VyIHBsYXRmb3JtIHN0cmF0ZWdpZXMuCkBAIC0xMTk3LDExICsxMTk3LDEwIEBAIGJv
b2wgV2ViUHJvY2Vzczo6bWFya0FsbExheWVyc1ZvbGF0aWxlSWZQb3NzaWJsZSgpCiAgICAgcmV0
dXJuIHN1Y2Nlc3NmdWxseU1hcmtlZEFsbExheWVyc1ZvbGF0aWxlOwogfQogCi12b2lkIFdlYlBy
b2Nlc3M6OnByb2Nlc3NTdXNwZW5zaW9uQ2xlYW51cFRpbWVyRmlyZWQoVGltZXIqIHRpbWVyKQor
dm9pZCBXZWJQcm9jZXNzOjpwcm9jZXNzU3VzcGVuc2lvbkNsZWFudXBUaW1lckZpcmVkKCkKIHsK
ICAgICBpZiAobWFya0FsbExheWVyc1ZvbGF0aWxlSWZQb3NzaWJsZSgpKSB7CiAgICAgICAgIHBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6
UHJvY2Vzc1JlYWR5VG9TdXNwZW5kKCksIDApOwotICAgICAgICB0aW1lci0+c3RvcCgpOwogICAg
IH0KIH0KIApAQCAtMTIxOSw3ICsxMjE4LDcgQEAgdm9pZCBXZWJQcm9jZXNzOjpwYWdlV2lsbExl
YXZlV2luZG93KHVpbnQ2NF90IHBhZ2VJRCkKICAgICAgICAgbV9ub25WaXNpYmxlUHJvY2Vzc0Ns
ZWFudXBUaW1lci5zdGFydE9uZVNob3Qobm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwRGVsYXkpOwog
fQogICAgIAotdm9pZCBXZWJQcm9jZXNzOjpub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lckZp
cmVkKFRpbWVyKikKK3ZvaWQgV2ViUHJvY2Vzczo6bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGlt
ZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKG1fcGFnZXNJbldpbmRvd3MuaXNFbXB0eSgpKTsKICAg
ICBpZiAoIW1fcGFnZXNJbldpbmRvd3MuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuaAppbmRleCBmOTI3N2EwODk0ZmU2NWE2OGI4N2RkYmI5YjMyNTg1Y2RjMDY2
YjJmLi40ZGY5Njg3ZWY5Yzk2ODI0ZDU4ZDQ2NmE5Y2EzMzBhY2FiZWJiODcxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAtMTczLDcgKzE3Myw3IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHBhZ2VEaWRFbnRlcldpbmRvdyh1aW50NjRfdCBwYWdlSUQpOwogICAgIHZvaWQg
cGFnZVdpbGxMZWF2ZVdpbmRvdyh1aW50NjRfdCBwYWdlSUQpOwogCi0gICAgdm9pZCBub25WaXNp
YmxlUHJvY2Vzc0NsZWFudXBUaW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyKik7CisgICAgdm9pZCBu
b25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHVwZGF0ZUFj
dGl2ZVBhZ2VzKCk7CiAKQEAgLTE4NCw3ICsxODQsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBwcm9j
ZXNzV2lsbFN1c3BlbmQoKTsKICAgICB2b2lkIGNhbmNlbFByb2Nlc3NXaWxsU3VzcGVuZCgpOwog
ICAgIGJvb2wgbWFya0FsbExheWVyc1ZvbGF0aWxlSWZQb3NzaWJsZSgpOwotICAgIHZvaWQgcHJv
Y2Vzc1N1c3BlbnNpb25DbGVhbnVwVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopOworICAgIHZv
aWQgcHJvY2Vzc1N1c3BlbnNpb25DbGVhbnVwVGltZXJGaXJlZCgpOwogCiAjaWYgUExBVEZPUk0o
SU9TKQogICAgIHZvaWQgcmVzZXRBbGxHZW9sb2NhdGlvblBlcm1pc3Npb25zKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242062</attachid>
            <date>2014-11-21 12:00:39 -0800</date>
            <delta_ts>2014-11-21 12:06:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138974-20141121120055.patch</filename>
            <type>text/plain</type>
            <size>294580</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NDU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDU1MWE2YjZkOTY5MzhmOGJjM2I2MDNh
MTNlMTAwZDg2NGMxZGI4M2UuLmY4MDMxZjgwOGVlZGMxZGNhYzllOWZjNzg4OGQ5Mjk4MjhjYzI2
NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMTEtMjEgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdGhlIFRpbWVyIHBhcmFtZXRlcnMg
ZnJvbSB0aW1lciBjYWxsYmFja3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEzODk3NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogd3RmL1J1bkxvb3BUaW1lci5oOgorICAgICAgICAoV1RGOjpSdW5Mb29w
VGltZXI6OlJ1bkxvb3BUaW1lcik6CisgICAgICAgIChXVEY6OlJ1bkxvb3BUaW1lcjo6ZmlyZWQp
OgorCiAyMDE0LTExLTE4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgSGF2ZSBWZWN0b3I6OmNhcGFjaXR5KCkgcmV0dXJuIGFuIHVuc2lnbmVkIGluc3RlYWQgb2Yg
YSBzaXplX3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCAwYjk3MzNjNmQ5N2ZhZDVhMTc3ZmU4YjhjYWNiNGQwNTli
NTFiYzNiLi5lMDUwNDlkYWVhNzU4ZTg4YTFlNWJkNzk5YzA4YTkyMTZlZjFhZDkzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsOTk1IEBACisyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHRoZSBUaW1lciBwYXJhbWV0ZXJzIGZy
b20gdGltZXIgY2FsbGJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzg5NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIE1vZHVsZXMvZW5jcnlwdGVkbWVkaWEvTWVkaWFLZXlTZXNzaW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhS2V5U2Vzc2lvbjo6TWVkaWFLZXlTZXNzaW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhS2V5U2Vzc2lvbjo6a2V5UmVxdWVzdFRpbWVyRmlyZWQpOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFLZXlTZXNzaW9uOjphZGRLZXlUaW1lckZpcmVkKToKKyAg
ICAgICAgKiBNb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5oOgorICAgICAg
ICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6R2VvbG9jYXRpb246Okdlb05vdGlmaWVyOjpHZW9Ob3RpZmllcik6CisgICAgICAgIChXZWJD
b3JlOjpHZW9sb2NhdGlvbjo6R2VvTm90aWZpZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6R2VvbG9jYXRpb246Okdlb2xvY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xv
Y2F0aW9uOjpyZXN1bWVUaW1lckZpcmVkKToKKyAgICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9u
L0dlb2xvY2F0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rp
b25CYWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0aW9uQmFja2VuZDo6
SURCVHJhbnNhY3Rpb25CYWNrZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0aW9u
QmFja2VuZDo6dGFza1RpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lE
QlRyYW5zYWN0aW9uQmFja2VuZC5oOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2UvU291
cmNlQnVmZmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlcjo6U291cmNlQnVm
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlcjo6YXBwZW5kQnVmZmVyVGltZXJG
aXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OnJlbW92ZVRpbWVyRmlyZWQp
OgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmg6CisgICAgICAg
ICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYVN0cmVhbTo6TWVkaWFTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJl
YW06OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYVN0cmVhbS5oOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRN
RlNlbmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENEVE1GU2VuZGVyOjpSVENEVE1GU2Vu
ZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ0RUTUZTZW5kZXI6OnNjaGVkdWxlZEV2ZW50VGlt
ZXJGaXJlZCk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmg6
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSVENEYXRhQ2hhbm5lbDo6UlRDRGF0YUNoYW5uZWwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDRGF0YUNoYW5uZWw6OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCk6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5oOgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UlRDUGVlckNvbm5lY3Rpb246OlJUQ1BlZXJDb25uZWN0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OlJUQ1BlZXJDb25uZWN0aW9uOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBN
b2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Ok5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNh
dGlvbjo6dGFza1RpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0
aW9uQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90
aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjpOb3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpOb3RpZmljYXRpb25SZXF1ZXN0
Q2FsbGJhY2s6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb25DZW50ZXIuaDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29j
a2V0Q2hhbm5lbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRDaGFubmVsOjpXZWJT
b2NrZXRDaGFubmVsKToKKyAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldENoYW5uZWw6OnJlc3Vt
ZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hhbm5lbDo6Y2xvc2lu
Z1RpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRDaGFu
bmVsLmg6CisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OkFYT2JqZWN0Q2FjaGUpOgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6bm90aWZpY2F0aW9uUG9zdFRpbWVyRmlyZWQpOgorICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0dDQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHQ0NvbnRyb2xsZXI6OkdDQ29u
dHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpHQ0NvbnRyb2xsZXI6OmdjVGltZXJGaXJlZCk6
CisgICAgICAgICogYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmg6CisgICAgICAgICogY3NzL0NT
U0ZvbnRGYWNlU291cmNlLmg6CisgICAgICAgICogY3NzL0NTU0ZvbnRTZWxlY3Rvci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDU1NGb250U2VsZWN0b3I6OkNTU0ZvbnRTZWxlY3Rvcik6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NGb250U2VsZWN0b3I6OmJlZ2luTG9hZFRpbWVyRmlyZWQpOgorICAg
ICAgICAqIGNzcy9DU1NGb250U2VsZWN0b3IuaDoKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VHZW5l
cmF0b3JWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJbWFnZUdlbmVyYXRvclZhbHVl
OjpDYWNoZWRHZW5lcmF0ZWRJbWFnZTo6Q2FjaGVkR2VuZXJhdGVkSW1hZ2UpOgorICAgICAgICAq
IGNzcy9TdHlsZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6
OlN0eWxlUmVzb2x2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNvbHZlcjo6c3dlZXBN
YXRjaGVkUHJvcGVydGllc0NhY2hlKToKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5oOgor
ICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6
RG9jdW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnZpc3VhbFVwZGF0ZXNTdXBw
cmVzc2lvblRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnN0eWxlUmVj
YWxjVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6b3B0aW1pemVkU3R5
bGVTaGVldFVwZGF0ZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnNo
YXJlZE9iamVjdFBvb2xDbGVhclRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnQ6OnVwZGF0ZUZvY3VzQXBwZWFyYW5jZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OndlYmtpdFdpbGxFbnRlckZ1bGxTY3JlZW5Gb3JFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50Ojp3ZWJraXREaWRFeGl0RnVsbFNjcmVlbkZvckVsZW1lbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQp
OgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmxvYWRFdmVudERlbGF5VGltZXJGaXJlZCk6
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGlt
ZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZG9tQ29va2llQ2FjaGVFeHBp
cnlUaW1lckZpcmVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKyAgICAgICAgKiBkb20v
RXZlbnRTZW5kZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50U2VuZGVyOjp0aW1lckZpcmVk
KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50U2VuZGVyPFQ+OjpFdmVudFNlbmRlcik6CisgICAg
ICAgICogZG9tL1NjcmlwdFJ1bm5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRSdW5u
ZXI6OlNjcmlwdFJ1bm5lcik6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRSdW5uZXI6OnRpbWVy
RmlyZWQpOgorICAgICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuaDoKKyAgICAgICAgKiBkb20vU2Ny
aXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdGVk
QW5pbWF0aW9uQ29udHJvbGxlcjo6U2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcjo6YW5pbWF0aW9uVGltZXJG
aXJlZCk6CisgICAgICAgICogZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oOgorICAg
ICAgICAqIGRvbS9TdHlsZWRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByZXNlbnRh
dGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5lcjo6UHJlc2VudGF0aW9uQXR0cmlidXRlQ2FjaGVDbGVh
bmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5l
cjo6Y2xlYW5DYWNoZSk6CisgICAgICAgICogZWRpdGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9s
bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFsdGVybmF0aXZlVGV4dENvbnRyb2xsZXI6OkFs
dGVybmF0aXZlVGV4dENvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29yZTo6QWx0ZXJuYXRpdmVU
ZXh0Q29udHJvbGxlcjo6dGltZXJGaXJlZCk6CisgICAgICAgICogZWRpdGluZy9BbHRlcm5hdGl2
ZVRleHRDb250cm9sbGVyLmg6CisgICAgICAgICogZWRpdGluZy9FZGl0b3IuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RWRpdG9yOjpFZGl0b3IpOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjp1
cGRhdGVFZGl0b3JVSU5vd0lmU2NoZWR1bGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6
ZWRpdG9yVUlVcGRhdGVUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6c2Nh
blNlbGVjdGlvbkZvclRlbGVwaG9uZU51bWJlcnMpOiBEZWxldGVkLgorICAgICAgICAqIGVkaXRp
bmcvRWRpdG9yLmg6CisgICAgICAgICogZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbjo6RnJhbWVTZWxlY3Rpb24pOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVTZWxlY3Rpb246OmNhcmV0QmxpbmtUaW1lckZpcmVkKToKKyAgICAgICAg
KiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmg6CisgICAgICAgICogZWRpdGluZy9TcGVsbENoZWNr
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3BlbGxDaGVja2VyOjpTcGVsbENoZWNrZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6U3BlbGxDaGVja2VyOjp0aW1lckZpcmVkVG9Qcm9jZXNzUXVldWVk
UmVxdWVzdCk6CisgICAgICAgICogZWRpdGluZy9TcGVsbENoZWNrZXIuaDoKKyAgICAgICAgKiBo
dG1sL0hUTUxGb3JtRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1l
bnQ6OkhUTUxGb3JtRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6
OnJlcXVlc3RBdXRvY29tcGxldGVUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL0hUTUxGb3Jt
RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKToKKyAgICAgICAgKiBo
dG1sL0hUTUxNZWRpYUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1Z0luRWxl
bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6c3dhcFJlbmRlcmVy
VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oOgorICAgICAg
ICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbW92ZVNuYXBzaG90VGltZXJGaXJl
ZCk6CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50Lmg6CisgICAgICAgICog
aHRtbC9IVE1MU291cmNlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNl
RWxlbWVudDo6SFRNTFNvdXJjZUVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNvdXJj
ZUVsZW1lbnQ6OmVycm9yRXZlbnRUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL0hUTUxTb3Vy
Y2VFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxUcmFja0VsZW1lbnQ6OkhUTUxUcmFja0VsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQpOgorICAgICAgICAq
IGh0bWwvSFRNTFRyYWNrRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvTWVkaWFDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKE1lZGlhQ29udHJvbGxlcjo6TWVkaWFDb250cm9sbGVyKToKKyAgICAg
ICAgKE1lZGlhQ29udHJvbGxlcjo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAoTWVk
aWFDb250cm9sbGVyOjpjbGVhclBvc2l0aW9uVGltZXJGaXJlZCk6CisgICAgICAgIChNZWRpYUNv
bnRyb2xsZXI6OnRpbWV1cGRhdGVUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL01lZGlhQ29u
dHJvbGxlci5oOgorICAgICAgICAqIGh0bWwvTWVkaWFEb2N1bWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYURvY3VtZW50OjpNZWRpYURvY3VtZW50KToKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhRG9jdW1lbnQ6OnJlcGxhY2VNZWRpYUVsZW1lbnRUaW1lckZpcmVkKToKKyAgICAgICAg
KiBodG1sL01lZGlhRG9jdW1lbnQuaDoKKyAgICAgICAgKiBodG1sL1NlYXJjaElucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTZWFyY2hJbnB1dFR5cGU6OlNlYXJjaElucHV0VHlwZSk6
CisgICAgICAgIChXZWJDb3JlOjpTZWFyY2hJbnB1dFR5cGU6OnNlYXJjaEV2ZW50VGltZXJGaXJl
ZCk6CisgICAgICAgICogaHRtbC9TZWFyY2hJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1Zh
bGlkYXRpb25NZXNzYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlZhbGlkYXRpb25NZXNzYWdl
OjpzZXRNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlZhbGlkYXRpb25NZXNzYWdlOjpzZXRN
ZXNzYWdlRE9NQW5kU3RhcnRUaW1lcik6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9uTWVz
c2FnZTo6YnVpbGRCdWJibGVUcmVlKToKKyAgICAgICAgKFdlYkNvcmU6OlZhbGlkYXRpb25NZXNz
YWdlOjpyZXF1ZXN0VG9IaWRlTWVzc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9u
TWVzc2FnZTo6ZGVsZXRlQnViYmxlVHJlZSk6CisgICAgICAgICogaHRtbC9WYWxpZGF0aW9uTWVz
c2FnZS5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5n
Q29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmRpc3Bh
dGNoQ29udGV4dExvc3RFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0Nv
bnRleHQ6Om1heWJlUmVzdG9yZUNvbnRleHQpOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdM
UmVuZGVyaW5nQ29udGV4dC5oOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hl
ZHVsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBhcnNlclNjaGVkdWxlcjo6SFRNTFBh
cnNlclNjaGVkdWxlcik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGFyc2VyU2NoZWR1bGVyOjpj
b250aW51ZU5leHRDaHVua1RpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxQ
YXJzZXJTY2hlZHVsZXIuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVt
ZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6Ok1l
ZGlhQ29udHJvbFBhbmVsRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQ6OnRyYW5zaXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFj
a0NvbnRhaW5lckVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sVGV4dFRy
YWNrQ29udGFpbmVyRWxlbWVudDo6dXBkYXRlVGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9z
aGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbHM6Ok1lZGlhQ29u
dHJvbHMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sczo6aGlkZUZ1bGxzY3JlZW5D
b250cm9sc1RpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbHMu
aDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTcGluQnV0dG9uRWxlbWVudDo6U3BpbkJ1dHRvbkVsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6U3BpbkJ1dHRvbkVsZW1lbnQ6OnJlcGVhdGluZ1RpbWVyRmlyZWQpOgorICAg
ICAgICAqIGh0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50Lmg6CisgICAgICAgICogaHRtbC90
cmFjay9Mb2FkYWJsZVRleHRUcmFjay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkYWJsZVRl
eHRUcmFjazo6TG9hZGFibGVUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGFibGVU
ZXh0VHJhY2s6OmxvYWRUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3RyYWNrL0xvYWRhYmxl
VGV4dFRyYWNrLmg6CisgICAgICAgICogaHRtbC90cmFjay9WVFRSZWdpb24uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VlRUUmVnaW9uOjpWVFRSZWdpb24pOgorICAgICAgICAoV2ViQ29yZTo6VlRU
UmVnaW9uOjpzY3JvbGxUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1ZUVFJlZ2lv
bi5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDaGFuZ2VSZWdpb25PdmVyc2V0VGFzazo6Q2hhbmdlUmVnaW9uT3ZlcnNldFRh
c2spOgorICAgICAgICAoV2ViQ29yZTo6Q2hhbmdlUmVnaW9uT3ZlcnNldFRhc2s6OnRpbWVyRmly
ZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjpSZXZhbGlkYXRlU3R5bGVB
dHRyaWJ1dGVUYXNrKToKKyAgICAgICAgKFdlYkNvcmU6OlJldmFsaWRhdGVTdHlsZUF0dHJpYnV0
ZVRhc2s6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZENsaWVudExvY2FsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhY2tlbmREaXNw
YXRjaFRhc2s6Okluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2spOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzazo6dGltZXJGaXJlZCk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3Rvck92ZXJsYXkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yT3ZlcmxheTo6SW5zcGVjdG9yT3ZlcmxheSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JPdmVybGF5Ojp1cGRhdGVQYWludFJlY3RzVGltZXJGaXJlZCk6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3Rvck92ZXJsYXkuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKToK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpoYW5kbGVTdWJzdGl0dXRlRGF0YUxv
YWROb3cpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1
dGVEYXRhTG9hZFNvb24pOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpGcmFtZUxvYWRlcik6CisgICAgICAgIChXZWJDb3JlOjpG
cmFtZUxvYWRlcjo6Y2hlY2tUaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2Fk
ZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvSW1hZ2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VMb2FkZXI6OkltYWdlTG9hZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9h
ZGVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvSW1hZ2VMb2FkZXIuaDoKKyAgICAg
ICAgKiBsb2FkZXIvTGlua0xvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMaW5rTG9hZGVy
OjpMaW5rTG9hZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkxpbmtMb2FkZXI6OmxpbmtMb2FkVGlt
ZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpMaW5rTG9hZGVyOjpsaW5rTG9hZGluZ0Vycm9y
VGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL0xpbmtMb2FkZXIuaDoKKyAgICAgICAgKiBs
b2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0
aW9uU2NoZWR1bGVyOjpOYXZpZ2F0aW9uU2NoZWR1bGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok5h
dmlnYXRpb25TY2hlZHVsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0
aW9uU2NoZWR1bGVyLmg6CisgICAgICAgICogbG9hZGVyL1BpbmdMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UGluZ0xvYWRlcjo6UGluZ0xvYWRlcik6CisgICAgICAgICogbG9hZGVyL1Bp
bmdMb2FkZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnRpbWVvdXRUaW1lckZp
cmVkKToKKyAgICAgICAgKiBsb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlByb2dyZXNzVHJhY2tlcjo6UHJvZ3Jlc3NUcmFja2VyKToKKyAgICAgICAgKFdlYkNv
cmU6OlByb2dyZXNzVHJhY2tlcjo6cHJvZ3Jlc3NIZWFydGJlYXRUaW1lckZpcmVkKToKKyAgICAg
ICAgKiBsb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNl
TG9hZFNjaGVkdWxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRTY2hlZHVs
ZXI6OlJlc291cmNlTG9hZFNjaGVkdWxlcik6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRTY2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvUmVzb3Vy
Y2VMb2FkU2NoZWR1bGVyLmg6CisgICAgICAgICogbG9hZGVyL1RleHRUcmFja0xvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2tMb2FkZXI6OlRleHRUcmFja0xvYWRlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2tMb2FkZXI6OmN1ZUxvYWRUaW1lckZpcmVkKToKKyAg
ICAgICAgKiBsb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpD
YWNoZWRSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6Q2FsbGJh
Y2s6OkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpDYWxsYmFj
azo6dGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmg6
CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpDYWNoZWRSZXNvdXJjZUxvYWRlcik6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Z2FyYmFnZUNvbGxlY3RE
b2N1bWVudFJlc291cmNlc1RpbWVyRmlyZWQpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpJY29uRGF0YWJhc2U6Okljb25EYXRhYmFzZSk6CisgICAg
ICAgIChXZWJDb3JlOjpJY29uRGF0YWJhc2U6OnN5bmNUaW1lckZpcmVkKToKKyAgICAgICAgKiBs
b2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaDoKKyAgICAgICAgKiBwYWdlL0F1dG9zY3JvbGxDb250
cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dG9zY3JvbGxDb250cm9sbGVyOjpBdXRv
c2Nyb2xsQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpBdXRvc2Nyb2xsQ29udHJvbGxl
cjo6YXV0b3Njcm9sbFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBhZ2UvQXV0b3Njcm9sbENvbnRy
b2xsZXIuaDoKKyAgICAgICAgKiBwYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FwdGlvblVzZXJQcmVmZXJlbmNlczo6Q2FwdGlvblVzZXJQcmVmZXJl
bmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0aW9uVXNlclByZWZlcmVuY2VzOjp0aW1lckZp
cmVkKToKKyAgICAgICAgKiBwYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaDoKKyAgICAgICAg
KiBwYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGOjpDYXB0aW9uVXNlclByZWZlcmVuY2Vz
TWVkaWFBRik6CisgICAgICAgIChXZWJDb3JlOjpDYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFB
Rjo6dXBkYXRlVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9DYXB0aW9uVXNlclByZWZlcmVu
Y2VzTWVkaWFBRi5oOgorICAgICAgICAqIHBhZ2UvRGV2aWNlQ29udHJvbGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpEZXZpY2VDb250cm9sbGVyOjpEZXZpY2VDb250cm9sbGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudCk6CisgICAgICAg
ICogcGFnZS9EZXZpY2VDb250cm9sbGVyLmg6CisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpFdmVudEhhbmRsZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpjdXJzb3JVcGRhdGVUaW1lckZpcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6YXV0b0hpZGVDdXJzb3JUaW1lckZpcmVkKToK
KyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6cmVjb2duaXplTG9uZ01vdXNlUHJlc3Mp
OgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpmYWtlTW91c2VNb3ZlRXZlbnRUaW1l
ckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aG92ZXJUaW1lckZpcmVk
KToKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICAqIHBhZ2UvRXZlbnRT
b3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRTb3VyY2U6OkV2ZW50U291cmNlKToK
KyAgICAgICAgKFdlYkNvcmU6OkV2ZW50U291cmNlOjpjb25uZWN0VGltZXJGaXJlZCk6CisgICAg
ICAgICogcGFnZS9FdmVudFNvdXJjZS5oOgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6Rm9jdXNDb250cm9sbGVy
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6Zm9jdXNSZXBhaW50VGltZXJG
aXJlZCk6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBwYWdl
L0ZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjpGcmFtZSk6CisgICAgICAgIChX
ZWJDb3JlOjpGcmFtZTo6b3ZlcmZsb3dBdXRvU2Nyb2xsVGltZXJGaXJlZCk6CisgICAgICAgICog
cGFnZS9GcmFtZS5oOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZyYW1lVmlldzo6RnJhbWVWaWV3KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmll
dzo6ZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZVZpZXc6OnNwZWN1bGF0aXZlVGlsaW5nRW5hYmxlVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJD
b3JlOjpGcmFtZVZpZXc6OmxheW91dFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RnJh
bWVWaWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHNUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNv
cmU6OkZyYW1lVmlldzo6Zmx1c2hBbnlQZW5kaW5nUG9zdExheW91dFRhc2tzKToKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lVmlldzo6cG9zdExheW91dFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBh
Z2UvRnJhbWVWaWV3Lmg6CisgICAgICAgICogcGFnZS9QYWdlT3ZlcmxheS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXkpOgorICAgICAgICAoV2ViQ29yZTo6
UGFnZU92ZXJsYXk6OmZhZGVBbmltYXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwYWdlL1Bh
Z2VPdmVybGF5Lmg6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6Omlt
YWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5o
OgorICAgICAgICAqIHBhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OkFuaW1hdGlvbkNvbnRy
b2xsZXJQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvbkNvbnRyb2xsZXJQcml2
YXRlOjp1cGRhdGVTdHlsZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKToKKyAgICAgICAgKFdlYkNv
cmU6OkFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjphbmltYXRpb25UaW1lckZpcmVkKToKKyAg
ICAgICAgKiBwYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZS5oOgorICAg
ICAgICAqIHBhZ2UvbWFjL1NlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBw
YWdlL21hYy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLm1tOgorICAgICAgICAoV2ViQ29yZTo6
U2VydmljZXNPdmVybGF5Q29udHJvbGxlcjo6U2VydmljZXNPdmVybGF5Q29udHJvbGxlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpkZXRlcm1pbmVBY3Rp
dmVIaWdobGlnaHRUaW1lckZpcmVkKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9Bc3luY1Nj
cm9sbGluZ0Nvb3JkaW5hdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xsaW5n
Q29vcmRpbmF0b3I6OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IpOgorICAgICAgICAoV2ViQ29y
ZTo6QXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6dXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFz
eW5jU2Nyb2xsVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3Jv
bGxpbmdDb29yZGluYXRvci5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxp
bmdDb29yZGluYXRvcklPUy5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxp
bmdDb29yZGluYXRvcklPUy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5h
dG9ySU9TOjpTY3JvbGxpbmdDb29yZGluYXRvcklPUyk6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxpbmdDb29yZGluYXRvcklPUzo6c2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJl
ZCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFj
Lmg6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFj
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWM6OlNjcm9sbGlu
Z0Nvb3JkaW5hdG9yTWFjKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5hdG9y
TWFjOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9IeXN0ZXJlc2lzQWN0aXZpdHkuaDoKKyAgICAgICAgKFdlYkNvcmU6Okh5c3RlcmVz
aXNBY3Rpdml0eTo6SHlzdGVyZXNpc0FjdGl2aXR5KToKKyAgICAgICAgKFdlYkNvcmU6Okh5c3Rl
cmVzaXNBY3Rpdml0eTo6aHlzdGVyZXNpc1RpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3Jt
L1Njcm9sbEFuaW1hdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjp1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
QW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6CisgICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3Jv
bGxiYXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjpTY3JvbGxiYXIpOgorICAg
ICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjphdXRvc2Nyb2xsVGltZXJGaXJlZCk6CisgICAgICAg
ICogcGxhdGZvcm0vU2Nyb2xsYmFyLmg6CisgICAgICAgICogcGxhdGZvcm0vVGltZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRlZmVycmFibGVPbmVTaG90VGltZXI6OkRlZmVycmFibGVPbmVTaG90
VGltZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGltZXI6OlRpbWVyKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFTZXNzaW9uOjpNZWRpYVNlc3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTZXNz
aW9uOjpjbGllbnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vTWVkaWFTZXNzaW9uLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFw
SW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwSW1hZ2U6OnN0YXJ0QW5pbWF0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcEltYWdlOjphZHZhbmNlQW5pbWF0aW9uKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxh
eWVyOjpNZWRpYVBsYXllcik6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6cmVsb2Fk
VGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNjcmF0Y2hCdWZmZXI6OlNjcmF0Y2hCdWZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6
U2NyYXRjaEJ1ZmZlcjo6dGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL01lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLm1t
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakM6Ok1lZGlhU2Vs
ZWN0aW9uR3JvdXBBVkZPYmpDKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2VsZWN0aW9uR3Jv
dXBBVkZPYmpDOjpzZWxlY3Rpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6Ok1lZGlhUGxheWVyUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jYS9MYXllclBvb2wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5ZXJQb29sOjpM
YXllclBvb2wpOgorICAgICAgICAoV2ViQ29yZTo6TGF5ZXJQb29sOjpwcnVuZVRpbWVyRmlyZWQp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlRpbGVDb250cm9sbGVyOjpUaWxlQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpU
aWxlQ29udHJvbGxlcjo6dGlsZVJldmFsaWRhdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVDb250cm9sbGVyLmg6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2EvVGlsZUdyaWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGlsZUdyaWQ6OlRp
bGVHcmlkKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVHcmlkOjpjb2hvcnRSZW1vdmFsVGltZXJG
aXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdyaWQuaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9JT1N1cmZhY2VQb29sLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OklPU3VyZmFjZVBvb2w6OklPU3VyZmFjZVBvb2wpOgorICAgICAgICAoV2ViQ29yZTo6
SU9TdXJmYWNlUG9vbDo6Y29sbGVjdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2NnL0lPU3VyZmFjZVBvb2wuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jZy9TdWJpbWFnZUNhY2hlV2l0aFRpbWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN1Ymlt
YWdlQ2FjaGVXaXRoVGltZXI6OlN1YmltYWdlQ2FjaGVXaXRoVGltZXIpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpNZWRpYVBsYXllclByaXZhdGVR
VEtpdCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6c2Vla1Rp
bWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9pb3MvTGVnYWN5VGlsZUNhY2hlLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6TGVnYWN5VGlsZUNhY2hlOjpMZWdhY3lUaWxlQ2FjaGUpOgorICAgICAgICAoV2ViQ29yZTo6
TGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3JlYXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhJREdh
bWVwYWRQcm92aWRlcjo6SElER2FtZXBhZFByb3ZpZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkhJ
REdhbWVwYWRQcm92aWRlcjo6Y29ubmVjdGlvbkRlbGF5VGltZXJGaXJlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpISURHYW1lcGFkUHJvdmlkZXI6OmlucHV0Tm90aWZpY2F0aW9uVGltZXJGaXJlZCk6
CisgICAgICAgICogcGxhdGZvcm0vbWFjL0hJREdhbWVwYWRQcm92aWRlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21h
Yy9TY3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9y
TWFjOjpTY3JvbGxBbmltYXRvck1hYyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
ck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZpcmVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVy
RmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRN
b2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6
RGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uQ2xpZW50TW9jazo6dGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vbW9j
ay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2Nr
L1BsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBs
YXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrOjpQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9j
ayk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jazo6c3Bl
YWtpbmdGaW5pc2hlZCk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVyTW9jay5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvRE5TUmVzb2x2ZVF1
ZXVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkROU1Jlc29sdmVRdWV1ZTo6RE5TUmVzb2x2ZVF1
ZXVlKToKKyAgICAgICAgKFdlYkNvcmU6OkROU1Jlc29sdmVRdWV1ZTo6dGltZXJGaXJlZCk6Cisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9ETlNSZXNvbHZlUXVldWUuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdGF0ZU5vdGlmaWVyLmg6CisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUhhbmRsZTo6ZmFpbHVyZVRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
UmVzb3VyY2VIYW5kbGUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFu
ZGxlSW50ZXJuYWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlSW50ZXJuYWw6
OlJlc291cmNlSGFuZGxlSW50ZXJuYWwpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvbWFj
L05ldHdvcmtTdGF0ZU5vdGlmaWVyTWFjLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtT
dGF0ZU5vdGlmaWVyOjpuZXR3b3JrU3RhdGVDaGFuZ2VUaW1lckZpcmVkKToKKyAgICAgICAgKFdl
YkNvcmU6Ok5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpOZXR3b3JrU3RhdGVOb3RpZmllcik6CisgICAg
ICAgICogcmVuZGVyaW5nL0ltYWdlUXVhbGl0eUNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VRdWFsaXR5Q29udHJvbGxlcjo6SW1hZ2VRdWFsaXR5Q29udHJvbGxlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZVF1YWxpdHlDb250cm9sbGVyOjpoaWdoUXVhbGl0eVJlcGFp
bnRUaW1lckZpcmVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvSW1hZ2VRdWFsaXR5Q29udHJvbGxl
ci5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCdXR0b24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyQnV0dG9uOjpzdHlsZURpZENoYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCdXR0b246OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCdXR0
b24uaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6UmVuZGVyTGF5ZXJDb21wb3Np
dG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6dXBkYXRlQ29t
cG9zaXRpbmdMYXllcnNUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVy
Q29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjpwYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXJGaXJlZCk6Cisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJNYXJxdWVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hcnF1
ZWU6OlJlbmRlck1hcnF1ZWUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWFycXVlZTo6dGlt
ZXJGaXJlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUuaDoKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlck5hbWVkRmxvd1RocmVhZDo6UmVuZGVyTmFtZWRGbG93VGhyZWFkKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlck5hbWVkRmxvd1RocmVhZDo6cmVnaW9uT3ZlcnNldENoYW5nZUV2ZW50
VGltZXJGaXJlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5o
OgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJQcm9ncmVzcy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJQcm9ncmVzczo6UmVuZGVyUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJQcm9ncmVzcy5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJWaWV3LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclZpZXc6OlJlbmRlclZpZXcpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVmlldzo6bGF6eVJlcGFpbnRUaW1lckZpcmVkKToKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVmlldy5oOgorICAgICAgICAqIHJlcGxheS9FdmVudExvb3BJbnB1dERpc3Bh
dGNoZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRMb29wSW5wdXREaXNwYXRjaGVyOjpF
dmVudExvb3BJbnB1dERpc3BhdGNoZXIpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRMb29wSW5w
dXREaXNwYXRjaGVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiByZXBsYXkvRXZlbnRMb29wSW5w
dXREaXNwYXRjaGVyLmg6CisgICAgICAgICogc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFJbXBsOjpTdG9yYWdlQXJlYUltcGwpOgorICAg
ICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFJbXBsOjpjbG9zZURhdGFiYXNlVGltZXJGaXJlZCk6
CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlQXJlYUltcGw6OmNsb3NlRGF0YWJhc2VJZklkbGUp
OgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmg6CisgICAgICAgICogc3RvcmFn
ZS9TdG9yYWdlQXJlYVN5bmMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFTeW5j
OjpTdG9yYWdlQXJlYVN5bmMpOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFTeW5jOjpz
Y2hlZHVsZUZpbmFsU3luYyk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlQXJlYVN5bmM6OnN5
bmNUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VBcmVhU3luYzo6c2NoZWR1
bGVTeW5jKToKKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5oOgorICAgICAgICAq
IHN2Zy9TVkdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0VsZW1lbnQ6OnN2Z0xv
YWRFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIHN2Zy9TVkdFbGVtZW50Lmg6CisgICAgICAg
ICogc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU2NyaXB0
RWxlbWVudDo6U1ZHU2NyaXB0RWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR1N0eWxlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTdHlsZUVsZW1lbnQ6OlNWR1N0eWxlRWxlbWVu
dCk6CisgICAgICAgICogc3ZnL1NWR1VzZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHVXNlRWxlbWVudDo6U1ZHVXNlRWxlbWVudCk6CisgICAgICAgICogc3ZnL2FuaW1hdGlvbi9T
TUlMVGltZUNvbnRhaW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTTUlMVGltZUNvbnRhaW5l
cjo6U01JTFRpbWVDb250YWluZXIpOgorICAgICAgICAoV2ViQ29yZTo6U01JTFRpbWVDb250YWlu
ZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHN2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWlu
ZXIuaDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0
bGU6OlhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlKToKKyAgICAgICAgKFdlYkNv
cmU6OlhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlOjpkaXNwYXRjaERlZmVycmVk
RXZlbnRzKToKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0
bGUuaDoKKworMjAxNC0xMS0yMSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29t
PgorCisgICAgICAgIFJlbW92ZSB0aGUgVGltZXIgcGFyYW1ldGVycyBmcm9tIHRpbWVyIGNhbGxi
YWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4
OTc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBN
b2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYUtleVNlc3Npb246Ok1lZGlhS2V5U2Vzc2lvbik6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUtleVNlc3Npb246OmtleVJlcXVlc3RUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNv
cmU6Ok1lZGlhS2V5U2Vzc2lvbjo6YWRkS2V5VGltZXJGaXJlZCk6CisgICAgICAgICogTW9kdWxl
cy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtleVNlc3Npb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL2dl
b2xvY2F0aW9uL0dlb2xvY2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9u
OjpHZW9Ob3RpZmllcjo6R2VvTm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRp
b246Okdlb05vdGlmaWVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uOjpHZW9sb2NhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbjo6cmVzdW1l
VGltZXJGaXJlZCk6CisgICAgICAgICogTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5o
OgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpJREJUcmFuc2FjdGlvbkJhY2tlbmQ6OklEQlRyYW5zYWN0aW9u
QmFja2VuZCk6CisgICAgICAgIChXZWJDb3JlOjpJREJUcmFuc2FjdGlvbkJhY2tlbmQ6OnRhc2tU
aW1lckZpcmVkKToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbkJh
Y2tlbmQuaDoKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OlNvdXJjZUJ1ZmZlcik6CisgICAgICAg
IChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmFwcGVuZEJ1ZmZlclRpbWVyRmlyZWQpOgorICAgICAg
ICAoV2ViQ29yZTo6U291cmNlQnVmZmVyOjpyZW1vdmVUaW1lckZpcmVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5oOgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW06
Ok1lZGlhU3RyZWFtKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtOjpzY2hlZHVsZWRF
dmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJl
YW0uaDoKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UlRDRFRNRlNlbmRlcjo6UlRDRFRNRlNlbmRlcik6CisgICAgICAg
IChXZWJDb3JlOjpSVENEVE1GU2VuZGVyOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpOgorICAg
ICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5oOgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UlRDRGF0YUNoYW5uZWw6OlJUQ0RhdGFDaGFubmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ0Rh
dGFDaGFubmVsOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIE1vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuaDoKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25u
ZWN0aW9uOjpSVENQZWVyQ29ubmVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29u
bmVjdGlvbjo6c2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKToKKyAgICAgICAgKiBNb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9ub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb246
Ok5vdGlmaWNhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb246OnRhc2tUaW1l
ckZpcmVkKToKKyAgICAgICAgKiBNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmg6
CisgICAgICAgICogTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25DZW50ZXI6Ok5vdGlmaWNhdGlvblJlcXVl
c3RDYWxsYmFjazo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNv
cmU6Ok5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjp0aW1l
ckZpcmVkKToKKyAgICAgICAgKiBNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2Vu
dGVyLmg6CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hhbm5lbDo6V2ViU29ja2V0Q2hhbm5lbCk6
CisgICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRDaGFubmVsOjpyZXN1bWVUaW1lckZpcmVkKToK
KyAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldENoYW5uZWw6OmNsb3NpbmdUaW1lckZpcmVkKToK
KyAgICAgICAgKiBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oOgorICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpB
WE9iamVjdENhY2hlOjpBWE9iamVjdENhY2hlKToKKyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0
Q2FjaGU6Om5vdGlmaWNhdGlvblBvc3RUaW1lckZpcmVkKToKKyAgICAgICAgKiBhY2Nlc3NpYmls
aXR5L0FYT2JqZWN0Q2FjaGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6R0NDb250cm9sbGVyOjpHQ0NvbnRyb2xsZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6R0NDb250cm9sbGVyOjpnY1RpbWVyRmlyZWQpOgorICAgICAgICAqIGJp
bmRpbmdzL2pzL0dDQ29udHJvbGxlci5oOgorICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJj
ZS5oOgorICAgICAgICAqIGNzcy9DU1NGb250U2VsZWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTRm9udFNlbGVjdG9yOjpDU1NGb250U2VsZWN0b3IpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTRm9udFNlbGVjdG9yOjpiZWdpbkxvYWRUaW1lckZpcmVkKToKKyAgICAgICAgKiBjc3MvQ1NT
Rm9udFNlbGVjdG9yLmg6CisgICAgICAgICogY3NzL0NTU0ltYWdlR2VuZXJhdG9yVmFsdWUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZTo6Q2FjaGVkR2VuZXJh
dGVkSW1hZ2U6OkNhY2hlZEdlbmVyYXRlZEltYWdlKToKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNv
bHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjpTdHlsZVJlc29sdmVy
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OnN3ZWVwTWF0Y2hlZFByb3BlcnRp
ZXNDYWNoZSk6CisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuaDoKKyAgICAgICAgKiBkb20v
RG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OkRvY3VtZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojp2aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25UaW1lckZp
cmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpzdHlsZVJlY2FsY1RpbWVyRmlyZWQp
OgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6Om9wdGltaXplZFN0eWxlU2hlZXRVcGRhdGVU
aW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpzaGFyZWRPYmplY3RQb29s
Q2xlYXJUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojp1cGRhdGVGb2N1
c0FwcGVhcmFuY2VUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpwZW5k
aW5nVGFza3NUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojp3ZWJraXRX
aWxsRW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dDo6d2Via2l0RGlkRXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50OjpmdWxsU2NyZWVuQ2hhbmdlRGVsYXlUaW1lckZpcmVkKToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50Ojpsb2FkRXZlbnREZWxheVRpbWVyRmlyZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnQ6OmRpZEFzc29jaWF0ZUZvcm1Db250cm9sc1RpbWVyRmlyZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJGaXJlZCk6
CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50U2VuZGVyLmg6
CisgICAgICAgIChXZWJDb3JlOjpFdmVudFNlbmRlcjo6dGltZXJGaXJlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpFdmVudFNlbmRlcjxUPjo6RXZlbnRTZW5kZXIpOgorICAgICAgICAqIGRvbS9TY3Jp
cHRSdW5uZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0UnVubmVyOjpTY3JpcHRSdW5u
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKToKKyAgICAg
ICAgKiBkb20vU2NyaXB0UnVubmVyLmg6CisgICAgICAgICogZG9tL1NjcmlwdGVkQW5pbWF0aW9u
Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRlZEFuaW1hdGlvbkNvbnRy
b2xsZXI6OlNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXI6OmFuaW1hdGlvblRpbWVyRmlyZWQpOgorICAgICAg
ICAqIGRvbS9TY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBkb20vU3R5
bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQcmVzZW50YXRpb25BdHRyaWJ1dGVD
YWNoZUNsZWFuZXI6OlByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5lcik6CisgICAgICAg
IChXZWJDb3JlOjpQcmVzZW50YXRpb25BdHRyaWJ1dGVDYWNoZUNsZWFuZXI6OmNsZWFuQ2FjaGUp
OgorICAgICAgICAqIGVkaXRpbmcvQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyOjpBbHRlcm5hdGl2ZVRleHRD
b250cm9sbGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkFsdGVybmF0aXZlVGV4dENvbnRyb2xsZXI6
OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGVkaXRpbmcvQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxl
ci5oOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVk
aXRvcjo6RWRpdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6dXBkYXRlRWRpdG9yVUlO
b3dJZlNjaGVkdWxlZCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmVkaXRvclVJVXBkYXRl
VGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnNjYW5TZWxlY3Rpb25Gb3JU
ZWxlcGhvbmVOdW1iZXJzKTogRGVsZXRlZC4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOgor
ICAgICAgICAqIGVkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RnJhbWVTZWxlY3Rpb246OkZyYW1lU2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1l
U2VsZWN0aW9uOjpjYXJldEJsaW5rVGltZXJGaXJlZCk6CisgICAgICAgICogZWRpdGluZy9GcmFt
ZVNlbGVjdGlvbi5oOgorICAgICAgICAqIGVkaXRpbmcvU3BlbGxDaGVja2VyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNwZWxsQ2hlY2tlcjo6U3BlbGxDaGVja2VyKToKKyAgICAgICAgKFdlYkNv
cmU6OlNwZWxsQ2hlY2tlcjo6dGltZXJGaXJlZFRvUHJvY2Vzc1F1ZXVlZFJlcXVlc3QpOgorICAg
ICAgICAqIGVkaXRpbmcvU3BlbGxDaGVja2VyLmg6CisgICAgICAgICogaHRtbC9IVE1MRm9ybUVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpIVE1MRm9ybUVs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0b2Nv
bXBsZXRlVGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuaDoKKyAg
ICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudDo6SFRNTE1lZGlhRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFF
bGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6SFRNTFBsdWdJbkVsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQpOgor
ICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdl
RWxlbWVudDo6SFRNTFBsdWdJbkltYWdlRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVTbmFwc2hvdFRpbWVyRmlyZWQpOgorICAgICAgICAq
IGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFNvdXJj
ZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNvdXJjZUVsZW1lbnQ6OkhUTUxT
b3VyY2VFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTb3VyY2VFbGVtZW50OjplcnJv
ckV2ZW50VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9IVE1MU291cmNlRWxlbWVudC5oOgor
ICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MVHJhY2tFbGVtZW50OjpIVE1MVHJhY2tFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxUcmFja0VsZW1lbnQ6OmxvYWRUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL0hUTUxUcmFj
a0VsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL01lZGlhQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChNZWRpYUNvbnRyb2xsZXI6Ok1lZGlhQ29udHJvbGxlcik6CisgICAgICAgIChNZWRpYUNvbnRy
b2xsZXI6OmFzeW5jRXZlbnRUaW1lckZpcmVkKToKKyAgICAgICAgKE1lZGlhQ29udHJvbGxlcjo6
Y2xlYXJQb3NpdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAoTWVkaWFDb250cm9sbGVyOjp0aW1l
dXBkYXRlVGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9NZWRpYUNvbnRyb2xsZXIuaDoKKyAg
ICAgICAgKiBodG1sL01lZGlhRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFE
b2N1bWVudDo6TWVkaWFEb2N1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYURvY3VtZW50
OjpyZXBsYWNlTWVkaWFFbGVtZW50VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC9NZWRpYURv
Y3VtZW50Lmg6CisgICAgICAgICogaHRtbC9TZWFyY2hJbnB1dFR5cGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U2VhcmNoSW5wdXRUeXBlOjpTZWFyY2hJbnB1dFR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6U2VhcmNoSW5wdXRUeXBlOjpzZWFyY2hFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAq
IGh0bWwvU2VhcmNoSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9WYWxpZGF0aW9uTWVzc2Fn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9uTWVzc2FnZTo6c2V0TWVzc2FnZSk6
CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9uTWVzc2FnZTo6c2V0TWVzc2FnZURPTUFuZFN0
YXJ0VGltZXIpOgorICAgICAgICAoV2ViQ29yZTo6VmFsaWRhdGlvbk1lc3NhZ2U6OmJ1aWxkQnVi
YmxlVHJlZSk6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9uTWVzc2FnZTo6cmVxdWVzdFRv
SGlkZU1lc3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6VmFsaWRhdGlvbk1lc3NhZ2U6OmRlbGV0
ZUJ1YmJsZVRyZWUpOgorICAgICAgICAqIGh0bWwvVmFsaWRhdGlvbk1lc3NhZ2UuaDoKKyAgICAg
ICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpXZWJHTFJlbmRlcmluZ0NvbnRleHQpOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpkaXNwYXRjaENvbnRleHRMb3N0
RXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjptYXliZVJl
c3RvcmVDb250ZXh0KToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRl
eHQuaDoKKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MUGFyc2VyU2NoZWR1bGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxQYXJzZXJTY2hlZHVsZXI6OkhUTUxQYXJzZXJTY2hlZHVsZXIp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBhcnNlclNjaGVkdWxlcjo6Y29udGludWVOZXh0Q2h1
bmtUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MUGFyc2VyU2NoZWR1bGVy
Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUGFuZWxFbGVtZW50OjpNZWRpYUNvbnRyb2xQYW5l
bEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUGFuZWxFbGVtZW50Ojp0
cmFuc2l0aW9uVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUZXh0
VHJhY2tDb250YWluZXJFbGVtZW50OjpNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVt
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQ6OnVwZGF0ZVRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29u
dHJvbEVsZW1lbnRzLmg6CisgICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xzOjpNZWRpYUNvbnRyb2xzKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbHM6OmhpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lckZp
cmVkKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzLmg6CisgICAgICAgICog
aHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3Bp
bkJ1dHRvbkVsZW1lbnQ6OlNwaW5CdXR0b25FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlNw
aW5CdXR0b25FbGVtZW50OjpyZXBlYXRpbmdUaW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3No
YWRvdy9TcGluQnV0dG9uRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvdHJhY2svTG9hZGFibGVU
ZXh0VHJhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGFibGVUZXh0VHJhY2s6OkxvYWRh
YmxlVGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkxvYWRhYmxlVGV4dFRyYWNrOjpsb2Fk
VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC90cmFjay9Mb2FkYWJsZVRleHRUcmFjay5oOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVlRUUmVnaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlZU
VFJlZ2lvbjo6VlRUUmVnaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlZUVFJlZ2lvbjo6c2Nyb2xs
VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC90cmFjay9WVFRSZWdpb24uaDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2hh
bmdlUmVnaW9uT3ZlcnNldFRhc2s6OkNoYW5nZVJlZ2lvbk92ZXJzZXRUYXNrKToKKyAgICAgICAg
KFdlYkNvcmU6OkNoYW5nZVJlZ2lvbk92ZXJzZXRUYXNrOjp0aW1lckZpcmVkKToKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmV2
YWxpZGF0ZVN0eWxlQXR0cmlidXRlVGFzazo6UmV2YWxpZGF0ZVN0eWxlQXR0cmlidXRlVGFzayk6
CisgICAgICAgIChXZWJDb3JlOjpSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjp0aW1lckZp
cmVkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRMb2NhbC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hUYXNrOjpJbnNw
ZWN0b3JCYWNrZW5kRGlzcGF0Y2hUYXNrKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJh
Y2tlbmREaXNwYXRjaFRhc2s6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JPdmVybGF5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck92ZXJsYXk6Oklu
c3BlY3Rvck92ZXJsYXkpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yT3ZlcmxheTo6dXBk
YXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JP
dmVybGF5Lmg6CisgICAgICAgICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpEb2N1bWVudExvYWRlcik6CisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudExvYWRlcjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KToKKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpoYW5kbGVTdWJzdGl0dXRlRGF0YUxvYWRTb29u
KToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VE
ZWxpdmVyeVRpbWVyRmlyZWQpOgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRlci5oOgor
ICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZUxvYWRlcjo6RnJhbWVMb2FkZXIpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNo
ZWNrVGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmg6CisgICAgICAg
ICogbG9hZGVyL0ltYWdlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVy
OjpJbWFnZUxvYWRlcik6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6dGltZXJGaXJl
ZCk6CisgICAgICAgICogbG9hZGVyL0ltYWdlTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL0xp
bmtMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGlua0xvYWRlcjo6TGlua0xvYWRlcik6
CisgICAgICAgIChXZWJDb3JlOjpMaW5rTG9hZGVyOjpsaW5rTG9hZFRpbWVyRmlyZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6TGlua0xvYWRlcjo6bGlua0xvYWRpbmdFcnJvclRpbWVyRmlyZWQpOgor
ICAgICAgICAqIGxvYWRlci9MaW5rTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL05hdmlnYXRp
b25TY2hlZHVsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TmF2aWdhdGlvblNjaGVkdWxlcjo6
TmF2aWdhdGlvblNjaGVkdWxlcik6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0aW9uU2NoZWR1
bGVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5o
OgorICAgICAgICAqIGxvYWRlci9QaW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBp
bmdMb2FkZXI6OlBpbmdMb2FkZXIpOgorICAgICAgICAqIGxvYWRlci9QaW5nTG9hZGVyLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpQaW5nTG9hZGVyOjp0aW1lb3V0VGltZXJGaXJlZCk6CisgICAgICAg
ICogbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQcm9ncmVz
c1RyYWNrZXI6OlByb2dyZXNzVHJhY2tlcik6CisgICAgICAgIChXZWJDb3JlOjpQcm9ncmVzc1Ry
YWNrZXI6OnByb2dyZXNzSGVhcnRiZWF0VGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL1By
b2dyZXNzVHJhY2tlci5oOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRTY2hlZHVsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpSZXNvdXJjZUxv
YWRTY2hlZHVsZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpy
ZXF1ZXN0VGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZFNjaGVkdWxl
ci5oOgorICAgICAgICAqIGxvYWRlci9UZXh0VHJhY2tMb2FkZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VGV4dFRyYWNrTG9hZGVyOjpUZXh0VHJhY2tMb2FkZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6VGV4dFRyYWNrTG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVy
L1RleHRUcmFja0xvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6Q2FjaGVkUmVzb3VyY2Up
OgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6OkNhbGxiYWNrOjpDYWxsYmFjayk6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6Q2FsbGJhY2s6OnRpbWVyRmlyZWQp
OgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oOgorICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
YWNoZWRSZXNvdXJjZUxvYWRlcjo6Q2FjaGVkUmVzb3VyY2VMb2FkZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmdhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJj
ZXNUaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SWNvbkRhdGFiYXNlOjpJY29uRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6
SWNvbkRhdGFiYXNlOjpzeW5jVGltZXJGaXJlZCk6CisgICAgICAgICogbG9hZGVyL2ljb24vSWNv
bkRhdGFiYXNlLmg6CisgICAgICAgICogcGFnZS9BdXRvc2Nyb2xsQ29udHJvbGxlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpBdXRvc2Nyb2xsQ29udHJvbGxlcjo6QXV0b3Njcm9sbENvbnRyb2xs
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXV0b3Njcm9sbENvbnRyb2xsZXI6OmF1dG9zY3JvbGxU
aW1lckZpcmVkKToKKyAgICAgICAgKiBwYWdlL0F1dG9zY3JvbGxDb250cm9sbGVyLmg6CisgICAg
ICAgICogcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhcHRpb25Vc2VyUHJlZmVyZW5jZXM6OkNhcHRpb25Vc2VyUHJlZmVyZW5jZXMpOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FwdGlvblVzZXJQcmVmZXJlbmNlczo6dGltZXJGaXJlZCk6CisgICAgICAg
ICogcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzLmg6CisgICAgICAgICogcGFnZS9DYXB0aW9u
VXNlclByZWZlcmVuY2VzTWVkaWFBRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYXB0aW9uVXNl
clByZWZlcmVuY2VzTWVkaWFBRjo6Q2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUYpOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVwZGF0ZVRpbWVy
RmlyZWQpOgorICAgICAgICAqIHBhZ2UvQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUYuaDoK
KyAgICAgICAgKiBwYWdlL0RldmljZUNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlQ29udHJvbGxlcjo6RGV2aWNlQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VDb250cm9sbGVyOjpmaXJlRGV2aWNlRXZlbnQpOgorICAgICAgICAqIHBhZ2UvRGV2aWNl
Q29udHJvbGxlci5oOgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6RXZlbnRIYW5kbGVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50SGFuZGxlcjo6Y3Vyc29yVXBkYXRlVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmF1dG9IaWRlQ3Vyc29yVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudEhhbmRsZXI6OnJlY29nbml6ZUxvbmdNb3VzZVByZXNzKToKKyAgICAgICAgKFdl
YkNvcmU6OkV2ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZCk6CisgICAg
ICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhvdmVyVGltZXJGaXJlZCk6CisgICAgICAgICog
cGFnZS9FdmVudEhhbmRsZXIuaDoKKyAgICAgICAgKiBwYWdlL0V2ZW50U291cmNlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkV2ZW50U291cmNlOjpFdmVudFNvdXJjZSk6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudFNvdXJjZTo6Y29ubmVjdFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBhZ2UvRXZl
bnRTb3VyY2UuaDoKKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OkZvY3VzQ29udHJvbGxlcik6CisgICAgICAgIChX
ZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OmZvY3VzUmVwYWludFRpbWVyRmlyZWQpOgorICAgICAg
ICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmg6CisgICAgICAgICogcGFnZS9GcmFtZS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpGcmFtZTo6RnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6
Om92ZXJmbG93QXV0b1Njcm9sbFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBhZ2UvRnJhbWUuaDoK
KyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZp
ZXc6OkZyYW1lVmlldyk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OmRlbGF5ZWRTY3Jv
bGxFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzcGVjdWxh
dGl2ZVRpbGluZ0VuYWJsZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3
OjpsYXlvdXRUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6dXBkYXRl
RW1iZWRkZWRPYmplY3RzVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6
OmZsdXNoQW55UGVuZGluZ1Bvc3RMYXlvdXRUYXNrcyk6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZVZpZXc6OnBvc3RMYXlvdXRUaW1lckZpcmVkKToKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5o
OgorICAgICAgICAqIHBhZ2UvUGFnZU92ZXJsYXkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFn
ZU92ZXJsYXk6OlBhZ2VPdmVybGF5KToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VPdmVybGF5Ojpm
YWRlQW5pbWF0aW9uVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9QYWdlT3ZlcmxheS5oOgor
ICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6
OlNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjppbWFnZUxvYWRpbmdTZXR0
aW5nc1RpbWVyRmlyZWQpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAgICAgKiBw
YWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjpBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlU3R5
bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25D
b250cm9sbGVyUHJpdmF0ZTo6YW5pbWF0aW9uVGltZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9h
bmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGUuaDoKKyAgICAgICAgKiBwYWdlL21h
Yy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLmg6CisgICAgICAgICogcGFnZS9tYWMvU2Vydmlj
ZXNPdmVybGF5Q29udHJvbGxlci5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNlcnZpY2VzT3Zlcmxh
eUNvbnRyb2xsZXI6OlNlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6U2VydmljZXNPdmVybGF5Q29udHJvbGxlcjo6ZGV0ZXJtaW5lQWN0aXZlSGlnaGxpZ2h0VGlt
ZXJGaXJlZCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGlu
YXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yOjpB
c3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3I6OnVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbFRpbWVy
RmlyZWQpOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0
b3IuaDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9pb3MvU2Nyb2xsaW5nQ29vcmRpbmF0b3JJ
T1MuaDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9pb3MvU2Nyb2xsaW5nQ29vcmRpbmF0b3JJ
T1MubW06CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcklPUzo6U2Nyb2xs
aW5nQ29vcmRpbmF0b3JJT1MpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0
b3JJT1M6OnNjcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyRmlyZWQpOgorICAgICAgICAq
IHBhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdDb29yZGluYXRvck1hYy5oOgorICAgICAgICAq
IHBhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdDb29yZGluYXRvck1hYy5tbToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjOjpTY3JvbGxpbmdDb29yZGluYXRvck1h
Yyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvck1hYzo6c2Nyb2xsaW5n
U3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vSHlzdGVy
ZXNpc0FjdGl2aXR5Lmg6CisgICAgICAgIChXZWJDb3JlOjpIeXN0ZXJlc2lzQWN0aXZpdHk6Okh5
c3RlcmVzaXNBY3Rpdml0eSk6CisgICAgICAgIChXZWJDb3JlOjpIeXN0ZXJlc2lzQWN0aXZpdHk6
Omh5c3RlcmVzaXNUaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxBbmltYXRv
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dXBkYXRlU2Nyb2xsQW5p
bWF0b3JzQW5kVGltZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3Jt
L1Njcm9sbEFuaW1hdG9yLmg6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhcjo6U2Nyb2xsYmFyKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbGJhcjo6YXV0b3Njcm9sbFRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL1Nj
cm9sbGJhci5oOgorICAgICAgICAqIHBsYXRmb3JtL1RpbWVyLmg6CisgICAgICAgIChXZWJDb3Jl
OjpEZWZlcnJhYmxlT25lU2hvdFRpbWVyOjpEZWZlcnJhYmxlT25lU2hvdFRpbWVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlRpbWVyOjpUaW1lcik6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vTWVkaWFTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbjo6
TWVkaWFTZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbjo6Y2xpZW50RGF0
YUJ1ZmZlcmluZ1RpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL01lZGlhU2Vz
c2lvbi5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkJpdG1hcEltYWdlOjpzdGFydEFuaW1hdGlvbik6CisgICAgICAgIChX
ZWJDb3JlOjpCaXRtYXBJbWFnZTo6YWR2YW5jZUFuaW1hdGlvbik6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6TWVkaWFQbGF5
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbG9hZFRpbWVyRmlyZWQpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JhdGNo
QnVmZmVyOjpTY3JhdGNoQnVmZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcmF0Y2hCdWZmZXI6
OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9N
ZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5tbToKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDOjpNZWRpYVNlbGVjdGlvbkdyb3VwQVZG
T2JqQyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQzo6c2Vs
ZWN0aW9uVGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRl
TWVkaWFTb3VyY2VBVkZPYmpDLm1tOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2
YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZP
YmpDOjpzZWVrVGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvTGF5
ZXJQb29sLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheWVyUG9vbDo6TGF5ZXJQb29sKToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheWVyUG9vbDo6cHJ1bmVUaW1lckZpcmVkKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9MYXllclBvb2wuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9jYS9UaWxlQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUaWxlQ29udHJv
bGxlcjo6VGlsZUNvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGlsZUNvbnRyb2xsZXI6
OnRpbGVSZXZhbGlkYXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jYS9UaWxlQ29udHJvbGxlci5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL1Rp
bGVHcmlkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVHcmlkOjpUaWxlR3JpZCk6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlR3JpZDo6Y29ob3J0UmVtb3ZhbFRpbWVyRmlyZWQpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmg6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2cvSU9TdXJmYWNlUG9vbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJT1N1cmZh
Y2VQb29sOjpJT1N1cmZhY2VQb29sKToKKyAgICAgICAgKFdlYkNvcmU6OklPU3VyZmFjZVBvb2w6
OmNvbGxlY3Rpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9J
T1N1cmZhY2VQb29sLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvU3ViaW1hZ2VD
YWNoZVdpdGhUaW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdWJpbWFnZUNhY2hlV2l0aFRp
bWVyOjpTdWJpbWFnZUNhY2hlV2l0aFRpbWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW06CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVBsYXllclByaXZhdGVRVEtpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQpOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OnNlZWtUaW1lckZpcmVkKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9pb3MvTGVnYWN5VGlsZUNhY2hlLmg6CisgICAgICAgICogcGxhdGZv
cm0vaW9zL0xlZ2FjeVRpbGVDYWNoZS5tbToKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVRpbGVD
YWNoZTo6TGVnYWN5VGlsZUNhY2hlKToKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVRpbGVDYWNo
ZTo6dGlsZUNyZWF0aW9uVGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL0hJREdh
bWVwYWRQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpISURHYW1lcGFkUHJvdmlkZXI6
OkhJREdhbWVwYWRQcm92aWRlcik6CisgICAgICAgIChXZWJDb3JlOjpISURHYW1lcGFkUHJvdmlk
ZXI6OmNvbm5lY3Rpb25EZWxheVRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6SElER2Ft
ZXBhZFByb3ZpZGVyOjppbnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9ISURHYW1lcGFkUHJvdmlkZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
U2Nyb2xsQW5pbWF0b3JNYWMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0
b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvck1hYzo6U2Nyb2xsQW5p
bWF0b3JNYWMpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJi
ZXJCYW5kVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvck1hYzo6
aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxBbmltYXRvck1hYzo6c2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lckZpcmVkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6OkRldmljZU9yaWVudGF0
aW9uQ2xpZW50TW9jayk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVu
dE1vY2s6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50
YXRpb25DbGllbnRNb2NrLmg6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVj
aFN5bnRoZXNpemVyTW9jay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVyTW9jazo6UGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2spOgorICAgICAgICAo
V2ViQ29yZTo6UGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2s6OnNwZWFraW5nRmluaXNoZWQp
OgorICAgICAgICAqIHBsYXRmb3JtL21vY2svUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2su
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0ROU1Jlc29sdmVRdWV1ZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpETlNSZXNvbHZlUXVldWU6OkROU1Jlc29sdmVRdWV1ZSk6CisgICAgICAg
IChXZWJDb3JlOjpETlNSZXNvbHZlUXVldWU6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIHBsYXRm
b3JtL25ldHdvcmsvRE5TUmVzb2x2ZVF1ZXVlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9OZXR3b3JrU3RhdGVOb3RpZmllci5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VIYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGU6OmZhaWx1
cmVUaW1lckZpcmVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxl
Lmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUludGVybmFsLmg6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUludGVybmFsOjpSZXNvdXJjZUhhbmRs
ZUludGVybmFsKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9OZXR3b3JrU3RhdGVO
b3RpZmllck1hYy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RhdGVOb3RpZmllcjo6
bmV0d29ya1N0YXRlQ2hhbmdlVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3Jr
U3RhdGVOb3RpZmllcjo6TmV0d29ya1N0YXRlTm90aWZpZXIpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9JbWFnZVF1YWxpdHlDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUXVh
bGl0eUNvbnRyb2xsZXI6OkltYWdlUXVhbGl0eUNvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VRdWFsaXR5Q29udHJvbGxlcjo6aGlnaFF1YWxpdHlSZXBhaW50VGltZXJGaXJlZCk6
CisgICAgICAgICogcmVuZGVyaW5nL0ltYWdlUXVhbGl0eUNvbnRyb2xsZXIuaDoKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJ1
dHRvbjo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQnV0dG9uOjp0
aW1lckZpcmVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmg6CisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OlJlbmRlckxheWVyQ29tcG9zaXRvcik6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJz
VGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6Omxh
eWVyRmx1c2hUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9z
aXRvcjo6cGFpbnRSZWxhdGVkTWlsZXN0b25lc1RpbWVyRmlyZWQpOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
TWFycXVlZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNYXJxdWVlOjpSZW5kZXJNYXJx
dWVlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hcnF1ZWU6OnRpbWVyRmlyZWQpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJNYXJxdWVlLmg6CisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlck5hbWVkRmxvd1RocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJOYW1lZEZs
b3dUaHJlYWQ6OlJlbmRlck5hbWVkRmxvd1RocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJOYW1lZEZsb3dUaHJlYWQ6OnJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUHJv
Z3Jlc3M6OlJlbmRlclByb2dyZXNzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclByb2dyZXNz
OjphbmltYXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyUHJvZ3Jl
c3MuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVmlldy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJWaWV3OjpSZW5kZXJWaWV3KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclZp
ZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclZp
ZXcuaDoKKyAgICAgICAgKiByZXBsYXkvRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkV2ZW50TG9vcElucHV0RGlzcGF0Y2hlcjo6RXZlbnRMb29wSW5wdXRE
aXNwYXRjaGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50TG9vcElucHV0RGlzcGF0Y2hlcjo6
dGltZXJGaXJlZCk6CisgICAgICAgICogcmVwbGF5L0V2ZW50TG9vcElucHV0RGlzcGF0Y2hlci5o
OgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0b3JhZ2VBcmVhSW1wbDo6U3RvcmFnZUFyZWFJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VBcmVhSW1wbDo6Y2xvc2VEYXRhYmFzZVRpbWVyRmlyZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6U3RvcmFnZUFyZWFJbXBsOjpjbG9zZURhdGFiYXNlSWZJZGxlKToKKyAgICAgICAgKiBz
dG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oOgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFT
eW5jLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VBcmVhU3luYzo6U3RvcmFnZUFyZWFT
eW5jKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VBcmVhU3luYzo6c2NoZWR1bGVGaW5hbFN5
bmMpOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZUFyZWFTeW5jOjpzeW5jVGltZXJGaXJlZCk6
CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlQXJlYVN5bmM6OnNjaGVkdWxlU3luYyk6CisgICAg
ICAgICogc3RvcmFnZS9TdG9yYWdlQXJlYVN5bmMuaDoKKyAgICAgICAgKiBzdmcvU1ZHRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGVtZW50OjpzdmdMb2FkRXZlbnRUaW1lckZp
cmVkKToKKyAgICAgICAgKiBzdmcvU1ZHRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdTY3Jp
cHRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NjcmlwdEVsZW1lbnQ6OlNWR1Nj
cmlwdEVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdTdHlsZUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U1ZHU3R5bGVFbGVtZW50OjpTVkdTdHlsZUVsZW1lbnQpOgorICAgICAgICAq
IHN2Zy9TVkdVc2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1VzZUVsZW1lbnQ6
OlNWR1VzZUVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWlu
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U01JTFRpbWVDb250YWluZXI6OlNNSUxUaW1lQ29u
dGFpbmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZpcmVk
KToKKyAgICAgICAgKiBzdmcvYW5pbWF0aW9uL1NNSUxUaW1lQ29udGFpbmVyLmg6CisgICAgICAg
ICogeG1sL1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlOjpYTUxIdHRwUmVx
dWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZSk6CisgICAgICAgIChXZWJDb3JlOjpYTUxIdHRwUmVx
dWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZTo6ZGlzcGF0Y2hEZWZlcnJlZEV2ZW50cyk6CisgICAg
ICAgICogeG1sL1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlLmg6CisKIDIwMTQt
MTEtMjEgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCB3
aGVuIHNldHRpbmcgJ3RyYW5zaXRpb24tZGVsYXknIENTUyBwcm9wZXJ0eSB0byBhIGNhbGN1bGF0
ZWQgdmFsdWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCAwMmE1MGQ5YjRlNmRiZmYwNjNkNWM0YzM1MTc5
MGYyYWU3NTg2N2IzLi4xODQ0NGJjMWU4NGYxZDRhNTgzMGU2NWMzY2RkNWI4MmUwZjhmMDhmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjEgQEAKIDIwMTQtMTEtMjEgIEFuZGVycyBDYXJs
c3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAorICAgICAgICBSZW1vdmUgdGhlIFRpbWVyIHBh
cmFtZXRlcnMgZnJvbSB0aW1lciBjYWxsYmFja3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODk3NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0
YW5jZVByb3h5Lmg6CisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0
YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJv
eHk6Ok5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHNj
YXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6cmVxdWVzdFRpbWVyRmlyZWQpOgorICAgICAgICAqIFBs
dWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0uaDoKKyAgICAgICAgKiBQbHVnaW5zL1dlYk5l
dHNjYXBlUGx1Z2luU3RyZWFtLm1tOgorICAgICAgICAoV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06
OldlYk5ldHNjYXBlUGx1Z2luU3RyZWFtKToKKyAgICAgICAgKFdlYk5ldHNjYXBlUGx1Z2luU3Ry
ZWFtOjpkZWxpdmVyRGF0YVRpbWVyRmlyZWQpOgorCisyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNz
b24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKICAgICAgICAgTWFrZSBtZW1vcnlDYWNoZSgpIHJl
dHVybiBhIHJlZmVyZW5jZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTM4OTM5CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwppbmRleCA5OGUwMDJiMGNkYjUzZTg5OGZl
Y2UyN2FhODgxNzE0Y2EzOTFmM2ZjLi5kMTYxMWMzMDE2M2E2ODMwMmY1MjIyODQ3Y2ZlZmRlYWU5
Zjc3YmRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTYgQEAKIDIwMTQtMTEtMjEgIEFu
ZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAorICAgICAgICBSZW1vdmUgdGhl
IFRpbWVyIHBhcmFtZXRlcnMgZnJvbSB0aW1lciBjYWxsYmFja3MKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODk3NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogRnVsbHNjcmVlblZpZGVvQ29udHJvbGxl
ci5jcHA6CisgICAgICAgIChGdWxsc2NyZWVuVmlkZW9Db250cm9sbGVyOjp0aW1lckZpcmVkKToK
KyAgICAgICAgKiBGdWxsc2NyZWVuVmlkZW9Db250cm9sbGVyLmg6CisKKzIwMTQtMTEtMjEgIEFu
ZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAgICBNYWtlIG1lbW9y
eUNhY2hlKCkgcmV0dXJuIGEgcmVmZXJlbmNlCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzg5MzkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDJmZTYwNTRiOWM5NGRj
MDBjMThiZWU2MWYzM2E5NjJmODgyMDU2YzcuLmQzNjg2MzEwZGJjYjg4ZTgzNjJkODlkYjBmZGM2
YzgwM2UwNWU5YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2NyBAQAorMjAxNC0xMS0yMSAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSB0aGUg
VGltZXIgcGFyYW1ldGVycyBmcm9tIHRpbWVyIGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4OTc0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVz
b3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkZXI6
Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJj
ZUxvYWRlcjo6YnVmZmVyaW5nVGltZXJGaXJlZCk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogU2hhcmVkL1dlYk1lbW9yeVNhbXBs
ZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJNZW1vcnlTYW1wbGVyOjpXZWJNZW1vcnlTYW1w
bGVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViTWVtb3J5U2FtcGxlcjo6c2FtcGxlVGltZXJGaXJl
ZCk6CisgICAgICAgIChXZWJLaXQ6OldlYk1lbW9yeVNhbXBsZXI6OnN0b3BUaW1lckZpcmVkKToK
KyAgICAgICAgKiBTaGFyZWQvV2ViTWVtb3J5U2FtcGxlci5oOgorICAgICAgICAqIFNoYXJlZC9t
YWMvUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLmg6CisgICAgICAgICogU2hhcmVk
L21hYy9SZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24ubW06CisgICAgICAgIChXZWJL
aXQ6OlJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6UmVtb3RlTGF5ZXJCYWNraW5n
U3RvcmVDb2xsZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJCYWNraW5nU3Rv
cmVDb2xsZWN0aW9uOjp2b2xhdGlsaXR5VGltZXJGaXJlZCk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpQ
bHVnaW5WaWV3KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVy
VHJlZURyYXdpbmdBcmVhLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1v
dGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJU
cmVlRHJhd2luZ0FyZWE6OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhKToKKyAgICAgICAgKFdl
YktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmxheWVyRmx1c2hUaW1lckZpcmVkKToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQcm9jZXNzOjpXZWJQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6cHJv
Y2Vzc1N1c3BlbnNpb25DbGVhbnVwVGltZXJGaXJlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBy
b2Nlc3M6Om5vblZpc2libGVQcm9jZXNzQ2xlYW51cFRpbWVyRmlyZWQpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5oOgorCisyMDE0LTExLTIxICBBbmRlcnMgQ2FybHNzb24gIDxh
bmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHRoZSBUaW1lciBwYXJhbWV0ZXJz
IGZyb20gdGltZXIgY2FsbGJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMzg5NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6TmV0d29ya1Jlc291cmNl
TG9hZGVyKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZGVyOjpidWZmZXJp
bmdUaW1lckZpcmVkKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkZXIuaDoKKyAgICAgICAgKiBTaGFyZWQvV2ViTWVtb3J5U2FtcGxlci5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYk1lbW9yeVNhbXBsZXI6OldlYk1lbW9yeVNhbXBsZXIpOgorICAgICAgICAo
V2ViS2l0OjpXZWJNZW1vcnlTYW1wbGVyOjpzYW1wbGVUaW1lckZpcmVkKToKKyAgICAgICAgKFdl
YktpdDo6V2ViTWVtb3J5U2FtcGxlcjo6c3RvcFRpbWVyRmlyZWQpOgorICAgICAgICAqIFNoYXJl
ZC9XZWJNZW1vcnlTYW1wbGVyLmg6CisgICAgICAgICogU2hhcmVkL21hYy9SZW1vdGVMYXllckJh
Y2tpbmdTdG9yZUNvbGxlY3Rpb24uaDoKKyAgICAgICAgKiBTaGFyZWQvbWFjL1JlbW90ZUxheWVy
QmFja2luZ1N0b3JlQ29sbGVjdGlvbi5tbToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJC
YWNraW5nU3RvcmVDb2xsZWN0aW9uOjpSZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24p
OgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb246OnZv
bGF0aWxpdHlUaW1lckZpcmVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2lu
Vmlldy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OlBsdWdpblZpZXcpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEu
aDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVyVHJlZURyYXdp
bmdBcmVhLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYTo6
UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXll
clRyZWVEcmF3aW5nQXJlYTo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OldlYlBy
b2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpwcm9jZXNzU3VzcGVuc2lvbkNs
ZWFudXBUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6bm9uVmlzaWJs
ZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmg6CisKIDIwMTQtMTEtMjEgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgog
CiAgICAgICAgIEZpeCBpT1MgYnVpbGQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9SdW5M
b29wVGltZXIuaCBiL1NvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCmluZGV4IGQ4Zjk0YjRi
MzNkMmNlY2M3YTRiYzcxOGE0OTYyMWE0ODE2MDE5ZGYuLjM3ODBlNzZjMDMxMzEwNGFlYzdmZDc5
NzMyM2ViNDEwNGY4M2U1OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1l
ci5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCkBAIC02MSwxNCArNjEsMTUg
QEAgcHJpdmF0ZToKICNlbmRpZgogfTsKIAorLy8gRklYTUU6IFRoaXMgZG9lc24ndCBoYXZlIHRv
IGJlIGEgY2xhc3MgdGVtcGxhdGUuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVGltZXJGaXJlZENsYXNz
PiBjbGFzcyBSdW5Mb29wVGltZXIgOiBwdWJsaWMgUnVuTG9vcFRpbWVyQmFzZSB7CiBwdWJsaWM6
Ci0gICAgdHlwZWRlZiB2b2lkIChUaW1lckZpcmVkQ2xhc3M6OipUaW1lckZpcmVkRnVuY3Rpb24p
KFJ1bkxvb3BUaW1lciopOworICAgIHR5cGVkZWYgdm9pZCAoVGltZXJGaXJlZENsYXNzOjoqVGlt
ZXJGaXJlZEZ1bmN0aW9uKSgpOwogCi0gICAgUnVuTG9vcFRpbWVyKFRpbWVyRmlyZWRDbGFzcyog
bywgVGltZXJGaXJlZEZ1bmN0aW9uIGYpCi0gICAgICAgIDogbV9vYmplY3QobyksIG1fZnVuY3Rp
b24oZikgeyB9CisgICAgUnVuTG9vcFRpbWVyKFRpbWVyRmlyZWRDbGFzcyYgbywgVGltZXJGaXJl
ZEZ1bmN0aW9uIGYpCisgICAgICAgIDogbV9vYmplY3QoJm8pLCBtX2Z1bmN0aW9uKGYpIHsgfQog
Ci0gICAgdmlydHVhbCB2b2lkIGZpcmVkKCkgeyAobV9vYmplY3QtPiptX2Z1bmN0aW9uKSh0aGlz
KTsgfQorICAgIHZpcnR1YWwgdm9pZCBmaXJlZCgpIHsgKG1fb2JqZWN0LT4qbV9mdW5jdGlvbiko
KTsgfQogCiBwcml2YXRlOgogICAgIFRpbWVyRmlyZWRDbGFzcyogbV9vYmplY3Q7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vz
c2lvbi5jcHAKaW5kZXggMDYwZDc3ZTUzYzQ3OTBhYjFhMTc0NWFkYzJhNWFhN2QyY2RhMWZlMS4u
YzY3MmRlMDdkY2JlNTExZmIzZTFiYmZmMTM4NDAzNzU1N2IyMDY0OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtleVNlc3Npb24uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW5jcnlwdGVkbWVkaWEvTWVkaWFLZXlTZXNzaW9u
LmNwcApAQCAtNTEsOCArNTEsOCBAQCBNZWRpYUtleVNlc3Npb246Ok1lZGlhS2V5U2Vzc2lvbihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBNZWRpYUtleXMqIGtleQogICAgICwgbV9r
ZXlTeXN0ZW0oa2V5U3lzdGVtKQogICAgICwgbV9hc3luY0V2ZW50UXVldWUoKnRoaXMpCiAgICAg
LCBtX3Nlc3Npb24oa2V5cy0+Y2RtKCktPmNyZWF0ZVNlc3Npb24oKSkKLSAgICAsIG1fa2V5UmVx
dWVzdFRpbWVyKHRoaXMsICZNZWRpYUtleVNlc3Npb246OmtleVJlcXVlc3RUaW1lckZpcmVkKQot
ICAgICwgbV9hZGRLZXlUaW1lcih0aGlzLCAmTWVkaWFLZXlTZXNzaW9uOjphZGRLZXlUaW1lckZp
cmVkKQorICAgICwgbV9rZXlSZXF1ZXN0VGltZXIoKnRoaXMsICZNZWRpYUtleVNlc3Npb246Omtl
eVJlcXVlc3RUaW1lckZpcmVkKQorICAgICwgbV9hZGRLZXlUaW1lcigqdGhpcywgJk1lZGlhS2V5
U2Vzc2lvbjo6YWRkS2V5VGltZXJGaXJlZCkKIHsKICAgICBtX3Nlc3Npb24tPnNldENsaWVudCh0
aGlzKTsKIH0KQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBNZWRpYUtleVNlc3Npb246OmdlbmVyYXRl
S2V5UmVxdWVzdChjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBVaW50OEFycmF5KiBpbmkKICAgICBt
X2tleVJlcXVlc3RUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgTWVkaWFLZXlTZXNz
aW9uOjprZXlSZXF1ZXN0VGltZXJGaXJlZChUaW1lciYpCit2b2lkIE1lZGlhS2V5U2Vzc2lvbjo6
a2V5UmVxdWVzdFRpbWVyRmlyZWQoKQogewogICAgIEFTU0VSVChtX3BlbmRpbmdLZXlSZXF1ZXN0
cy5zaXplKCkpOwogICAgIGlmICghbV9zZXNzaW9uKQpAQCAtMTQ3LDcgKzE0Nyw3IEBAIHZvaWQg
TWVkaWFLZXlTZXNzaW9uOjp1cGRhdGUoVWludDhBcnJheSoga2V5LCBFeGNlcHRpb25Db2RlJiBl
YykKICAgICBtX2FkZEtleVRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBNZWRpYUtl
eVNlc3Npb246OmFkZEtleVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBNZWRpYUtleVNlc3Npb246
OmFkZEtleVRpbWVyRmlyZWQoKQogewogICAgIEFTU0VSVChtX3BlbmRpbmdLZXlzLnNpemUoKSk7
CiAgICAgaWYgKCFtX3Nlc3Npb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtleVNlc3Npb24uaAppbmRleCA5YzMxMWFkMmY2NDFkMTBk
MzBhOTVhNGEzMTJhOTc0NDNjYjgwZTBjLi40ZjU3MzJiMmY0YjgxYjY2MDA1ZmE3ZWViMzBiMDBi
NWFhMmU2NTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1l
ZGlhL01lZGlhS2V5U2Vzc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW5jcnlw
dGVkbWVkaWEvTWVkaWFLZXlTZXNzaW9uLmgKQEAgLTg0LDggKzg0LDggQEAgcHVibGljOgogCiBw
cm90ZWN0ZWQ6CiAgICAgTWVkaWFLZXlTZXNzaW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBN
ZWRpYUtleXMqLCBjb25zdCBTdHJpbmcmIGtleVN5c3RlbSk7Ci0gICAgdm9pZCBrZXlSZXF1ZXN0
VGltZXJGaXJlZChUaW1lciYpOwotICAgIHZvaWQgYWRkS2V5VGltZXJGaXJlZChUaW1lciYpOwor
ICAgIHZvaWQga2V5UmVxdWVzdFRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIGFkZEtleVRpbWVyRmly
ZWQoKTsKIAogICAgIC8vIENETVNlc3Npb25DbGllbnQKICAgICB2aXJ0dWFsIHZvaWQgc2VuZE1l
c3NhZ2UoVWludDhBcnJheSosIFN0cmluZyBkZXN0aW5hdGlvblVSTCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCmluZGV4IDgxZDYx
MzZlMTQzYzU5MzdiNTQ3ZDhhMjEyMjE3YzYzYWJiNWU1NTguLjE3ZGYyNjg0MmJhMWExNjAwZTYz
NGI0NzEzMTZlMDlkMDc0NGZhZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
Z2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
Z2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCkBAIC04MCw3ICs4MCw3IEBAIEdlb2xvY2F0aW9u
OjpHZW9Ob3RpZmllcjo6R2VvTm90aWZpZXIoR2VvbG9jYXRpb24qIGdlb2xvY2F0aW9uLCBQYXNz
UmVmUHRyPFBvc2l0CiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCiAg
ICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKICAgICAsIG1fb3B0aW9ucyhvcHRp
b25zKQotICAgICwgbV90aW1lcih0aGlzLCAmR2VvbG9jYXRpb246Okdlb05vdGlmaWVyOjp0aW1l
ckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJkdlb2xvY2F0aW9uOjpHZW9Ob3RpZmllcjo6
dGltZXJGaXJlZCkKICAgICAsIG1fdXNlQ2FjaGVkUG9zaXRpb24oZmFsc2UpCiB7CiAgICAgQVNT
RVJUKG1fZ2VvbG9jYXRpb24pOwpAQCAtMTQyLDcgKzE0Miw3IEBAIHZvaWQgR2VvbG9jYXRpb246
Okdlb05vdGlmaWVyOjpzdG9wVGltZXIoKQogICAgIG1fdGltZXIuc3RvcCgpOwogfQogCi12b2lk
IEdlb2xvY2F0aW9uOjpHZW9Ob3RpZmllcjo6dGltZXJGaXJlZChUaW1lciYpCit2b2lkIEdlb2xv
Y2F0aW9uOjpHZW9Ob3RpZmllcjo6dGltZXJGaXJlZCgpCiB7CiAgICAgbV90aW1lci5zdG9wKCk7
CiAKQEAgLTIzOCw3ICsyMzgsNyBAQCBHZW9sb2NhdGlvbjo6R2VvbG9jYXRpb24oU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogY29udGV4dCkKICNpZiBQTEFURk9STShJT1MpCiAgICAgLCBtX2lzU3Vz
cGVuZGVkKGZhbHNlKQogICAgICwgbV9oYXNDaGFuZ2VkUG9zaXRpb24oZmFsc2UpCi0gICAgLCBt
X3Jlc3VtZVRpbWVyKHRoaXMsICZHZW9sb2NhdGlvbjo6cmVzdW1lVGltZXJGaXJlZCkKKyAgICAs
IG1fcmVzdW1lVGltZXIoKnRoaXMsICZHZW9sb2NhdGlvbjo6cmVzdW1lVGltZXJGaXJlZCkKICNl
bmRpZgogewogfQpAQCAtMjk3LDcgKzI5Nyw3IEBAIHZvaWQgR2VvbG9jYXRpb246OnJlc3VtZSgp
CiAgICAgICAgIG1fcmVzdW1lVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIEdlb2xv
Y2F0aW9uOjpyZXN1bWVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgR2VvbG9jYXRpb246OnJlc3Vt
ZVRpbWVyRmlyZWQoKQogewogICAgIG1faXNTdXNwZW5kZWQgPSBmYWxzZTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oCmluZGV4IDU1NjIz
ZDBlMTFkNzIwODBiMDMwNmQ5MGM3OThiNTFhZWRjMzk4NTQuLjUyNmRkYzBjYTJlZjcwNGIxNzc5
ZDZiOTkwMTI3ZDNjYmE1NTY5OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
Z2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dl
b2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgKQEAgLTEwMCw3ICsxMDAsNyBAQCBwcml2YXRlOgogCiAg
ICAgICAgIHZvaWQgc3RhcnRUaW1lcklmTmVlZGVkKCk7CiAgICAgICAgIHZvaWQgc3RvcFRpbWVy
KCk7Ci0gICAgICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgICAgICB2b2lkIHRpbWVy
RmlyZWQoKTsKICAgICAgICAgYm9vbCBoYXNaZXJvVGltZW91dCgpIGNvbnN0OwogCiAgICAgcHJp
dmF0ZToKQEAgLTE4Niw3ICsxODYsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9oYXNDaGFuZ2Vk
UG9zaXRpb247CiAgICAgUmVmUHRyPFBvc2l0aW9uRXJyb3I+IG1fZXJyb3JXYWl0aW5nRm9yUmVz
dW1lOwogCi0gICAgdm9pZCByZXN1bWVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCByZXN1
bWVUaW1lckZpcmVkKCk7CiAgICAgVGltZXIgbV9yZXN1bWVUaW1lcjsKICNlbmRpZiAvLyBQTEFU
Rk9STShJT1MpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQlRyYW5zYWN0aW9uQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJUcmFuc2FjdGlvbkJhY2tlbmQuY3BwCmluZGV4IGE4NjllMTMwOGViNDQzNTczYjMy
ZTAwMTdiZWQ0YjdlOTM0ZTIzN2IuLjI4NDA5Y2I3OGNlYjkzZmY2NzJhZDRjNmRiNThhODQxNWUw
YzdhY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRy
YW5zYWN0aW9uQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCVHJhbnNhY3Rpb25CYWNrZW5kLmNwcApAQCAtNTcsNyArNTcsNyBAQCBJREJUcmFuc2Fj
dGlvbkJhY2tlbmQ6OklEQlRyYW5zYWN0aW9uQmFja2VuZChJREJEYXRhYmFzZUJhY2tlbmQqIGRh
dGFiYXNlQmFja2VuZAogICAgICwgbV9jb21taXRQZW5kaW5nKGZhbHNlKQogICAgICwgbV9jYWxs
YmFja3MoY2FsbGJhY2tzKQogICAgICwgbV9kYXRhYmFzZShkYXRhYmFzZUJhY2tlbmQpCi0gICAg
LCBtX3Rhc2tUaW1lcih0aGlzLCAmSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0YXNrVGltZXJGaXJl
ZCkKKyAgICAsIG1fdGFza1RpbWVyKCp0aGlzLCAmSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0YXNr
VGltZXJGaXJlZCkKICAgICAsIG1fcGVuZGluZ1ByZWVtcHRpdmVFdmVudHMoMCkKICAgICAsIG1f
aWQoaWQpCiB7CkBAIC0yNzAsNyArMjcwLDcgQEAgdm9pZCBJREJUcmFuc2FjdGlvbkJhY2tlbmQ6
OmNvbW1pdCgpCiAgICAgfSk7CiB9CiAKLXZvaWQgSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0YXNr
VGltZXJGaXJlZChUaW1lciYpCit2b2lkIElEQlRyYW5zYWN0aW9uQmFja2VuZDo6dGFza1RpbWVy
RmlyZWQoKQogewogICAgIExPRyhTdG9yYWdlQVBJLCAiSURCVHJhbnNhY3Rpb25CYWNrZW5kOjp0
YXNrVGltZXJGaXJlZCIpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJUcmFuc2FjdGlvbkJhY2tlbmQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5oCmluZGV4IGJhNWVhNGY4YTgxNjA0MzBk
ZTM2ZTgwYjAxYjM3OGZmNTJmMGI1ZmEuLmU2MDJmMjQ3ZDZhNDg5YWRlNTQwMmY4NTk3MTg2OGMz
OTQ5ZGIxNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QlRyYW5zYWN0aW9uQmFja2VuZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5oCkBAIC05Niw3ICs5Niw3IEBAIHByaXZhdGU6CiAg
ICAgYm9vbCBpc1Rhc2tRdWV1ZUVtcHR5KCkgY29uc3Q7CiAgICAgYm9vbCBoYXNQZW5kaW5nVGFz
a3MoKSBjb25zdDsKIAotICAgIHZvaWQgdGFza1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHRhc2tUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBjbG9zZU9wZW5DdXJzb3JzKCk7CiAKICAgICBj
b25zdCBIYXNoU2V0PGludDY0X3Q+IG1fb2JqZWN0U3RvcmVJZHM7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHAKaW5kZXggNzY1OTU3
N2QzNmQzMzFkMGQ2YTYxNGZmMzQ1YzcwZDk4ODhiOGFjYi4uOTIyZmFmZGMwODRlMGJmMTQ2MjRm
MTA0MGZmZWUyODE3OGQ4M2Q5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcApAQCAtMTA5LDcgKzEwOSw3IEBAIFNvdXJjZUJ1
ZmZlcjo6U291cmNlQnVmZmVyKFBhc3NSZWY8U291cmNlQnVmZmVyUHJpdmF0ZT4gc291cmNlQnVm
ZmVyUHJpdmF0ZSwgTWVkCiAgICAgLCBtX3ByaXZhdGUoV1RGOjptb3ZlKHNvdXJjZUJ1ZmZlclBy
aXZhdGUpKQogICAgICwgbV9zb3VyY2Uoc291cmNlKQogICAgICwgbV9hc3luY0V2ZW50UXVldWUo
KnRoaXMpCi0gICAgLCBtX2FwcGVuZEJ1ZmZlclRpbWVyKHRoaXMsICZTb3VyY2VCdWZmZXI6OmFw
cGVuZEJ1ZmZlclRpbWVyRmlyZWQpCisgICAgLCBtX2FwcGVuZEJ1ZmZlclRpbWVyKCp0aGlzLCAm
U291cmNlQnVmZmVyOjphcHBlbmRCdWZmZXJUaW1lckZpcmVkKQogICAgICwgbV9oaWdoZXN0UHJl
c2VudGF0aW9uRW5kVGltZXN0YW1wKE1lZGlhVGltZTo6aW52YWxpZFRpbWUoKSkKICAgICAsIG1f
YnVmZmVyZWQoVGltZVJhbmdlczo6Y3JlYXRlKCkpCiAgICAgLCBtX2FwcGVuZFN0YXRlKFdhaXRp
bmdGb3JTZWdtZW50KQpAQCAtMTE5LDcgKzExOSw3IEBAIFNvdXJjZUJ1ZmZlcjo6U291cmNlQnVm
ZmVyKFBhc3NSZWY8U291cmNlQnVmZmVyUHJpdmF0ZT4gc291cmNlQnVmZmVyUHJpdmF0ZSwgTWVk
CiAgICAgLCBtX3JlcG9ydGVkRXh0cmFNZW1vcnlDb3N0KDApCiAgICAgLCBtX3BlbmRpbmdSZW1v
dmVTdGFydChNZWRpYVRpbWU6OmludmFsaWRUaW1lKCkpCiAgICAgLCBtX3BlbmRpbmdSZW1vdmVF
bmQoTWVkaWFUaW1lOjppbnZhbGlkVGltZSgpKQotICAgICwgbV9yZW1vdmVUaW1lcih0aGlzLCAm
U291cmNlQnVmZmVyOjpyZW1vdmVUaW1lckZpcmVkKQorICAgICwgbV9yZW1vdmVUaW1lcigqdGhp
cywgJlNvdXJjZUJ1ZmZlcjo6cmVtb3ZlVGltZXJGaXJlZCkKICAgICAsIG1fdXBkYXRpbmcoZmFs
c2UpCiAgICAgLCBtX3JlY2VpdmVkRmlyc3RJbml0aWFsaXphdGlvblNlZ21lbnQoZmFsc2UpCiAg
ICAgLCBtX2FjdGl2ZShmYWxzZSkKQEAgLTQ0Nyw3ICs0NDcsNyBAQCB2b2lkIFNvdXJjZUJ1ZmZl
cjo6YXBwZW5kQnVmZmVySW50ZXJuYWwodW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgc2l6
ZSwgRXhjZQogICAgIHJlcG9ydEV4dHJhTWVtb3J5Q29zdCgpOwogfQogCi12b2lkIFNvdXJjZUJ1
ZmZlcjo6YXBwZW5kQnVmZmVyVGltZXJGaXJlZChUaW1lciYpCit2b2lkIFNvdXJjZUJ1ZmZlcjo6
YXBwZW5kQnVmZmVyVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKGlzUmVtb3ZlZCgpKQogICAgICAg
ICByZXR1cm47CkBAIC02NzIsNyArNjcyLDcgQEAgdm9pZCBTb3VyY2VCdWZmZXI6OnJlbW92ZUNv
ZGVkRnJhbWVzKGNvbnN0IE1lZGlhVGltZSYgc3RhcnQsIGNvbnN0IE1lZGlhVGltZSYgZW4KICAg
ICBMT0coTWVkaWEsICJTb3VyY2VCdWZmZXI6OnJlbW92ZUNvZGVkRnJhbWVzKCVwKSAtIGJ1ZmZl
cmVkID0gJXMiLCB0aGlzLCB0b1N0cmluZyhtX2J1ZmZlcmVkLT5yYW5nZXMoKSkudXRmOCgpLmRh
dGEoKSk7CiB9CiAKLXZvaWQgU291cmNlQnVmZmVyOjpyZW1vdmVUaW1lckZpcmVkKFRpbWVyKikK
K3ZvaWQgU291cmNlQnVmZmVyOjpyZW1vdmVUaW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQobV91
cGRhdGluZyk7CiAgICAgQVNTRVJUKG1fcGVuZGluZ1JlbW92ZVN0YXJ0LmlzVmFsaWQoKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuaApp
bmRleCBkMzY4MDJjZWM5ZjA2YTk3MmM4ZDM5ZDY4MTVlZTdjMzFjMTkyMTU4Li4wNjYxMDM4M2Zl
MDM1YzYzNTY2NjBjMGNlZDI5OTc2ZTBhZmZjMjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmgKQEAgLTE1Miw3ICsxNTIsNyBAQCBw
cml2YXRlOgogICAgIHZvaWQgc2NoZWR1bGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50
TmFtZSk7CiAKICAgICB2b2lkIGFwcGVuZEJ1ZmZlckludGVybmFsKHVuc2lnbmVkIGNoYXIqLCB1
bnNpZ25lZCwgRXhjZXB0aW9uQ29kZSYpOwotICAgIHZvaWQgYXBwZW5kQnVmZmVyVGltZXJGaXJl
ZChUaW1lciYpOworICAgIHZvaWQgYXBwZW5kQnVmZmVyVGltZXJGaXJlZCgpOwogCiAgICAgdm9p
ZCBzZXRBY3RpdmUoYm9vbCk7CiAKQEAgLTE2Niw3ICsxNjYsNyBAQCBwcml2YXRlOgogCiAgICAg
dm9pZCBtb25pdG9yQnVmZmVyaW5nUmF0ZSgpOwogCi0gICAgdm9pZCByZW1vdmVUaW1lckZpcmVk
KFRpbWVyKik7CisgICAgdm9pZCByZW1vdmVUaW1lckZpcmVkKCk7CiAgICAgdm9pZCByZW1vdmVD
b2RlZEZyYW1lcyhjb25zdCBNZWRpYVRpbWUmIHN0YXJ0LCBjb25zdCBNZWRpYVRpbWUmIGVuZCk7
CiAKICAgICBzaXplX3QgZXh0cmFNZW1vcnlDb3N0KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCmluZGV4IDVhYzUxNzZl
ZGVjZmI3NTg4OTMyYjA4MWFmNTkyMDMxY2FiMTQxODkuLmYwOTY1MGU1ZTNjMDY4MDU4MjJjNmY1
ZTUxMmQ3NTljZjI3NDJiNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCkBAIC04Niw3ICs4Niw3IEBAIFBhc3NSZWZQdHI8TWVk
aWFTdHJlYW0+IE1lZGlhU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29u
dGV4dCwgUGFzCiBNZWRpYVN0cmVhbTo6TWVkaWFTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYgY29udGV4dCwgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbVByaXZhdGU+IHByaXZhdGVTdHJlYW0p
CiAgICAgOiBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcigmY29udGV4dCkKICAgICAsIG1fcHJp
dmF0ZShwcml2YXRlU3RyZWFtKQotICAgICwgbV9zY2hlZHVsZWRFdmVudFRpbWVyKHRoaXMsICZN
ZWRpYVN0cmVhbTo6c2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9zY2hlZHVsZWRF
dmVudHRpbWVyKCp0aGlzLCAmTWVkaWFTdHJlYW06OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCkK
IHsKICAgICBBU1NFUlQobV9wcml2YXRlKTsKICAgICBtX3ByaXZhdGUtPnNldENsaWVudCh0aGlz
KTsKQEAgLTM2MSw3ICszNjEsNyBAQCB2b2lkIE1lZGlhU3RyZWFtOjpzY2hlZHVsZURpc3BhdGNo
RXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCiAgICAgICAgIG1fc2NoZWR1bGVkRXZlbnRU
aW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgTWVkaWFTdHJlYW06OnNjaGVkdWxlZEV2
ZW50VGltZXJGaXJlZChUaW1lciopCit2b2lkIE1lZGlhU3RyZWFtOjpzY2hlZHVsZWRFdmVudFRp
bWVyRmlyZWQoKQogewogICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+PiBldmVudHM7CiAgICAgZXZl
bnRzLnN3YXAobV9zY2hlZHVsZWRFdmVudHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5oCmluZGV4IDgwNmZkY2NhNWM4NWNmZjdmYTc3OWQ5
MWQ1MWUwZmJmYmNkNmNmMDYuLmQ0OWFmNjE2NDBmZjQzZTNhNGY3NGRkZGM5ZTlhYTU3MGIzYTRk
Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFT
dHJlYW0uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3Ry
ZWFtLmgKQEAgLTEyMCw3ICsxMjAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgaGF2ZVRyYWNrV2l0
aFNvdXJjZShQYXNzUmVmUHRyPE1lZGlhU3RyZWFtU291cmNlPik7CiAKICAgICB2b2lkIHNjaGVk
dWxlRGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50Pik7Ci0gICAgdm9pZCBzY2hlZHVsZWRF
dmVudFRpbWVyRmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIHNjaGVkdWxlZEV2ZW50VGltZXJGaXJl
ZCgpOwogCiAgICAgdm9pZCBjbG9uZU1lZGlhU3RyZWFtVHJhY2tWZWN0b3IoVmVjdG9yPFJlZlB0
cjxNZWRpYVN0cmVhbVRyYWNrPj4mLCBjb25zdCBWZWN0b3I8UmVmUHRyPE1lZGlhU3RyZWFtVHJh
Y2s+PiYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ0RUTUZTZW5kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENEVE1GU2VuZGVyLmNwcAppbmRleCBlMjQyYzQwZDI1YzZlZjA4ZWMyOGY0NzE3ZWI5M2MyZjBh
NDM5ZGI0Li4wNDMxZTU0Yzc0MjdhYzNhZjEyZWYwOGZiNmQ3ZmQ4ZTQ3M2ViNGZhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5j
cHAKQEAgLTY1LDcgKzY1LDcgQEAgUlRDRFRNRlNlbmRlcjo6UlRDRFRNRlNlbmRlcihTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPE1lZGlhU3QKICAgICAsIG1faW50
ZXJUb25lR2FwKGRlZmF1bHRJbnRlclRvbmVHYXBNcykKICAgICAsIG1faGFuZGxlcihXVEY6Om1v
dmUoaGFuZGxlcikpCiAgICAgLCBtX3N0b3BwZWQoZmFsc2UpCi0gICAgLCBtX3NjaGVkdWxlZEV2
ZW50VGltZXIodGhpcywgJlJUQ0RUTUZTZW5kZXI6OnNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZCkK
KyAgICAsIG1fc2NoZWR1bGVkRXZlbnR0aW1lcigqdGhpcywgJlJUQ0RUTUZTZW5kZXI6OnNjaGVk
dWxlZEV2ZW50VGltZXJGaXJlZCkKIHsKICAgICBtX2hhbmRsZXItPnNldENsaWVudCh0aGlzKTsK
IH0KQEAgLTE0Miw3ICsxNDIsNyBAQCB2b2lkIFJUQ0RUTUZTZW5kZXI6OnNjaGVkdWxlRGlzcGF0
Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKICAgICAgICAgbV9zY2hlZHVsZWRFdmVu
dFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBSVENEVE1GU2VuZGVyOjpzY2hlZHVs
ZWRFdmVudFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBSVENEVE1GU2VuZGVyOjpzY2hlZHVsZWRF
dmVudFRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX3N0b3BwZWQpCiAgICAgICAgIHJldHVybjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNl
bmRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVy
LmgKaW5kZXggYmVkMmE2MjEyOTVlNGNhNDY5MWVkOTRjNDE0Zjc5OTQzZWQ5YzhmZC4uNGQ2MDAz
NTcxNzQ4ZTZlNmE4ZDU2NGRiMzkxYjBiY2I1ZWY0ZTdkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmgKQEAgLTcyLDcgKzcyLDcg
QEAgcHJpdmF0ZToKICAgICBSVENEVE1GU2VuZGVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQ
YXNzUmVmUHRyPE1lZGlhU3RyZWFtVHJhY2s+LCBzdGQ6OnVuaXF1ZV9wdHI8UlRDRFRNRlNlbmRl
ckhhbmRsZXI+KTsKIAogICAgIHZvaWQgc2NoZWR1bGVEaXNwYXRjaEV2ZW50KFBhc3NSZWZQdHI8
RXZlbnQ+KTsKLSAgICB2b2lkIHNjaGVkdWxlZEV2ZW50VGltZXJGaXJlZChUaW1lciopOworICAg
IHZvaWQgc2NoZWR1bGVkRXZlbnRUaW1lckZpcmVkKCk7CiAKICAgICAvLyBFdmVudFRhcmdldAog
ICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgcmVmKCk7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5u
ZWwuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5l
bC5jcHAKaW5kZXggNDIzM2ZkNDljYWY2NTgxODFiYWRhZjc4NTY2MTI3MTg3YTM5YzMwZC4uNzJm
NjU4NDBlMzRlNDMzMWQ3MGMxM2NlMjlmODFiZjMxNjQzYzY4YyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHAKQEAgLTk1
LDcgKzk1LDcgQEAgUlRDRGF0YUNoYW5uZWw6OlJUQ0RhdGFDaGFubmVsKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnRleHQsIHN0ZDo6dW5pcXVlX3B0cjwKICAgICAsIG1fc3RvcHBlZChmYWxz
ZSkKICAgICAsIG1fcmVhZHlTdGF0ZShSZWFkeVN0YXRlQ29ubmVjdGluZykKICAgICAsIG1fYmlu
YXJ5VHlwZShCaW5hcnlUeXBlQXJyYXlCdWZmZXIpCi0gICAgLCBtX3NjaGVkdWxlZEV2ZW50VGlt
ZXIodGhpcywgJlJUQ0RhdGFDaGFubmVsOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpCisgICAg
LCBtX3NjaGVkdWxlZEV2ZW50dGltZXIoKnRoaXMsICZSVENEYXRhQ2hhbm5lbDo6c2NoZWR1bGVk
RXZlbnRUaW1lckZpcmVkKQogewogICAgIG1faGFuZGxlci0+c2V0Q2xpZW50KHRoaXMpOwogfQpA
QCAtMzEyLDcgKzMxMiw3IEBAIHZvaWQgUlRDRGF0YUNoYW5uZWw6OnNjaGVkdWxlRGlzcGF0Y2hF
dmVudChQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKICAgICAgICAgbV9zY2hlZHVsZWRFdmVudFRp
bWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBSVENEYXRhQ2hhbm5lbDo6c2NoZWR1bGVk
RXZlbnRUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgUlRDRGF0YUNoYW5uZWw6OnNjaGVkdWxlZEV2
ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fc3RvcHBlZCkKICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hh
bm5lbC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5l
bC5oCmluZGV4IDZmODAzOGUyOGI2NDhlMTcyOWNkYzAzZmZkNTQ5YWYyNDRjMGQ0ZTcuLjU2ZTIw
MWZhMDgxNTQ0MGI2YmZjNDIwNDBlOGIyYWFkNWYxZjdkMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmgKQEAgLTg5LDcgKzg5
LDcgQEAgcHJpdmF0ZToKICAgICBSVENEYXRhQ2hhbm5lbChTY3JpcHRFeGVjdXRpb25Db250ZXh0
Kiwgc3RkOjp1bmlxdWVfcHRyPFJUQ0RhdGFDaGFubmVsSGFuZGxlcj4pOwogCiAgICAgdm9pZCBz
Y2hlZHVsZURpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4pOwotICAgIHZvaWQgc2NoZWR1
bGVkRXZlbnRUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCBzY2hlZHVsZWRFdmVudFRpbWVy
RmlyZWQoKTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0CiAgICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50
VGFyZ2V0KCkgb3ZlcnJpZGUgeyByZWYoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcAppbmRleCAyNDdiNjJm
M2FmOTc2OTk1ZjU0ZjBkNDRiMWY4Nzk2Mzc1ODUwMGZiLi4zZmY1NTA0YzVkODJlN2I5NjRiYTY1
YTc4ZTE3ODk1OWY1YTcyMjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcApAQCAtMTc0LDcgKzE3NCw3IEBA
IFJUQ1BlZXJDb25uZWN0aW9uOjpSVENQZWVyQ29ubmVjdGlvbihTY3JpcHRFeGVjdXRpb25Db250
ZXh0JiBjb250ZXh0LCBQYXNzUmVmUHRyCiAgICAgLCBtX3NpZ25hbGluZ1N0YXRlKFNpZ25hbGlu
Z1N0YXRlU3RhYmxlKQogICAgICwgbV9pY2VHYXRoZXJpbmdTdGF0ZShJY2VHYXRoZXJpbmdTdGF0
ZU5ldykKICAgICAsIG1faWNlQ29ubmVjdGlvblN0YXRlKEljZUNvbm5lY3Rpb25TdGF0ZU5ldykK
LSAgICAsIG1fc2NoZWR1bGVkRXZlbnRUaW1lcih0aGlzLCAmUlRDUGVlckNvbm5lY3Rpb246OnNj
aGVkdWxlZEV2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fc2NoZWR1bGVkRXZlbnR0aW1lcigqdGhp
cywgJlJUQ1BlZXJDb25uZWN0aW9uOjpzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQpCiAgICAgLCBt
X2NvbmZpZ3VyYXRpb24oY29uZmlndXJhdGlvbikKICAgICAsIG1fc3RvcHBlZChmYWxzZSkKIHsK
QEAgLTcyNCw3ICs3MjQsNyBAQCB2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzY2hlZHVsZURpc3Bh
dGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCiAgICAgICAgIG1fc2NoZWR1bGVkRXZl
bnRUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnNj
aGVkdWxlZEV2ZW50VGltZXJGaXJlZChUaW1lciopCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpz
Y2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX3N0b3BwZWQpCiAgICAgICAg
IHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDUGVlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDUGVlckNvbm5lY3Rpb24uaAppbmRleCBhYWJmY2RjMmMyMTgwMjMwYTFhZTZlZTJmYWVjNTFk
MDY3ZDYyN2QyLi5kMzQxNmFjZmRkNmJjOWRmY2M2MDQyNjEzNTljNzJjNTA2MjRmMDM4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5oCkBAIC0xMzksNyArMTM5LDcgQEAgcHJpdmF0ZToKIAogICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFJUQ0NvbmZpZ3VyYXRpb24+IHBhcnNlQ29uZmlndXJhdGlvbihjb25zdCBEaWN0aW9u
YXJ5JiBjb25maWd1cmF0aW9uLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzY2hlZHVsZURp
c3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4pOwotICAgIHZvaWQgc2NoZWR1bGVkRXZlbnRU
aW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCBzY2hlZHVsZWRFdmVudFRpbWVyRmlyZWQoKTsK
ICAgICBib29sIGhhc0xvY2FsU3RyZWFtV2l0aFRyYWNrSWQoY29uc3QgU3RyaW5nJiB0cmFja0lk
KTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0IGltcGxlbWVudGF0aW9uLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAppbmRleCA0
ZTgzODMwMDY3MjAyMmEzNjkxZjA0NDRmYjRiNWYyMWYxMmQ4MTdkLi5kMDg2ZTk3ODdmYWJjYzEy
MzQ1OWMyZTVhY2M1ODY5Y2Y3YzUzNTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcApAQCAtODQsNyArODQsNyBAQCBO
b3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0
LCBjb25zdCBTdHJpbmcmIHRpdGxlKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZjb250ZXh0KQog
ICAgICwgbV90aXRsZSh0aXRsZSkKICAgICAsIG1fc3RhdGUoSWRsZSkKLSAgICAsIG1fdGFza1Rp
bWVyKHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KHRoaXMsICZOb3RpZmljYXRpb246OnRhc2tUaW1l
ckZpcmVkKSkKKyAgICAsIG1fdGFza1RpbWVyKHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlz
LCAmTm90aWZpY2F0aW9uOjp0YXNrVGltZXJGaXJlZCkpCiB7CiAgICAgbV9ub3RpZmljYXRpb25D
ZW50ZXIgPSBET01XaW5kb3dOb3RpZmljYXRpb25zOjp3ZWJraXROb3RpZmljYXRpb25zKGRvd25j
YXN0PERvY3VtZW50Pihjb250ZXh0KS5kb21XaW5kb3coKSk7CiAgICAgCkBAIC0yMDEsMTAgKzIw
MSw5IEBAIHZvaWQgTm90aWZpY2F0aW9uOjpkaXNwYXRjaEVycm9yRXZlbnQoKQogfQogCiAjaWYg
RU5BQkxFKE5PVElGSUNBVElPTlMpCi12b2lkIE5vdGlmaWNhdGlvbjo6dGFza1RpbWVyRmlyZWQo
VGltZXImIHRpbWVyKQordm9pZCBOb3RpZmljYXRpb246OnRhc2tUaW1lckZpcmVkKCkKIHsKICAg
ICBBU1NFUlQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5pc0RvY3VtZW50KCkpOwotICAgIEFT
U0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSBtX3Rhc2tUaW1lci5nZXQoKSk7CiAgICAgc2hv
dygpOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNh
dGlvbnMvTm90aWZpY2F0aW9uLmgKaW5kZXggMzhiYWE2ODgyMTExMmU2YzVjYmQyODY2ZWNlNjc0
ZTRiYzg2ZjUzOC4uNTA3OTdhZTNiYWVjZWFlZDU0NjNiNzcyNWIxNTZiZjYwOGIzYTJlNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b24uaApAQCAtMTU3LDcgKzE1Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5pc2hMb2FkaW5n
SWNvbigpOwogCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCi0gICAgdm9pZCB0YXNrVGltZXJG
aXJlZChUaW1lciYpOworICAgIHZvaWQgdGFza1RpbWVyRmlyZWQoKTsKICNlbmRpZgogCiAgICAg
Ly8gVGV4dCBub3RpZmljYXRpb25zLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmNwcAppbmRleCBiYWZiNWNh
MzU5N2QzYTUwYTNiYzAyNzMxNzBhOWZlMjVkMzc4ZDNmLi4zYTVhMDA3Yzc3YmRlMmVhZGM0ZGZh
ODg3MzI2ZTBjYTM1NmY4ZWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25v
dGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmNwcApAQCAtMTE5LDcgKzEx
OSw3IEBAIFBhc3NSZWZQdHI8Tm90aWZpY2F0aW9uQ2VudGVyOjpOb3RpZmljYXRpb25SZXF1ZXN0
Q2FsbGJhY2s+IE5vdGlmaWNhdGlvbkNlbnRlcjo6CiAKIE5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90
aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjpOb3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2soTm90
aWZpY2F0aW9uQ2VudGVyKiBjZW50ZXIsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBjYWxsYmFj
aykKICAgICA6IG1fbm90aWZpY2F0aW9uQ2VudGVyKGNlbnRlcikKLSAgICAsIG1fdGltZXIodGhp
cywgJk5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjp0aW1l
ckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJk5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZp
Y2F0aW9uUmVxdWVzdENhbGxiYWNrOjp0aW1lckZpcmVkKQogICAgICwgbV9jYWxsYmFjayhjYWxs
YmFjaykKIHsKIH0KQEAgLTEyOSw3ICsxMjksNyBAQCB2b2lkIE5vdGlmaWNhdGlvbkNlbnRlcjo6
Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjpzdGFydFRpbWVyKCkKICAgICBtX3RpbWVyLnN0
YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBOb3RpZmljYXRpb25DZW50ZXI6Ok5vdGlmaWNhdGlv
blJlcXVlc3RDYWxsYmFjazo6dGltZXJGaXJlZChUaW1lciYpCit2b2lkIE5vdGlmaWNhdGlvbkNl
bnRlcjo6Tm90aWZpY2F0aW9uUmVxdWVzdENhbGxiYWNrOjp0aW1lckZpcmVkKCkKIHsKICAgICBp
ZiAobV9jYWxsYmFjaykKICAgICAgICAgbV9jYWxsYmFjay0+aGFuZGxlRXZlbnQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25D
ZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b25DZW50ZXIuaAppbmRleCBlZGFiYjYyYWRmMzA1NDAyZDYyNmFjZWFjZjMyOTE4ZTY1YzEyYWY2
Li5kM2NkYTNiMDcwMDk4Zjc1MTM0NjNjZDFkNGM5ODE5ZjQ4N2RhYmU2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5oCkBAIC04MCw3ICs4MCw3IEBAIHByaXZhdGU6CiAgICAgcHVibGljOgogICAgICAgICBz
dGF0aWMgUGFzc1JlZlB0cjxOb3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2s+IGNyZWF0ZUFuZFN0
YXJ0VGltZXIoTm90aWZpY2F0aW9uQ2VudGVyKiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+KTsK
ICAgICAgICAgdm9pZCBzdGFydFRpbWVyKCk7Ci0gICAgICAgIHZvaWQgdGltZXJGaXJlZChUaW1l
ciYpOworICAgICAgICB2b2lkIHRpbWVyRmlyZWQoKTsKICAgICBwcml2YXRlOgogICAgICAgICBO
b3RpZmljYXRpb25SZXF1ZXN0Q2FsbGJhY2soTm90aWZpY2F0aW9uQ2VudGVyKiwgUGFzc1JlZlB0
cjxWb2lkQ2FsbGJhY2s+KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwuY3BwCmluZGV4IGQ5YzZhYmQyNzcyMGEyMjdhYTAy
NjJhYzk3MDZkMDEzNmM1YzE2ZDYuLmIwNDk4YWZiMjllOTc0NWM0MTBhZjE3OGJkNTk4MWU4MjQ2
N2E3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJT
b2NrZXRDaGFubmVsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0Q2hhbm5lbC5jcHAKQEAgLTY3LDExICs2NywxMSBAQCBjb25zdCBkb3VibGUgVENQ
TWF4aW11bVNlZ21lbnRMaWZldGltZSA9IDIgKiA2MC4wOwogV2ViU29ja2V0Q2hhbm5lbDo6V2Vi
U29ja2V0Q2hhbm5lbChEb2N1bWVudCogZG9jdW1lbnQsIFdlYlNvY2tldENoYW5uZWxDbGllbnQq
IGNsaWVudCkKICAgICA6IG1fZG9jdW1lbnQoZG9jdW1lbnQpCiAgICAgLCBtX2NsaWVudChjbGll
bnQpCi0gICAgLCBtX3Jlc3VtZVRpbWVyKHRoaXMsICZXZWJTb2NrZXRDaGFubmVsOjpyZXN1bWVU
aW1lckZpcmVkKQorICAgICwgbV9yZXN1bWVUaW1lcigqdGhpcywgJldlYlNvY2tldENoYW5uZWw6
OnJlc3VtZVRpbWVyRmlyZWQpCiAgICAgLCBtX3N1c3BlbmRlZChmYWxzZSkKICAgICAsIG1fY2xv
c2luZyhmYWxzZSkKICAgICAsIG1fcmVjZWl2ZWRDbG9zaW5nSGFuZHNoYWtlKGZhbHNlKQotICAg
ICwgbV9jbG9zaW5nVGltZXIodGhpcywgJldlYlNvY2tldENoYW5uZWw6OmNsb3NpbmdUaW1lckZp
cmVkKQorICAgICwgbV9jbG9zaW5nVGltZXIoKnRoaXMsICZXZWJTb2NrZXRDaGFubmVsOjpjbG9z
aW5nVGltZXJGaXJlZCkKICAgICAsIG1fY2xvc2VkKGZhbHNlKQogICAgICwgbV9zaG91bGREaXNj
YXJkUmVjZWl2ZWREYXRhKGZhbHNlKQogICAgICwgbV91bmhhbmRsZWRCdWZmZXJlZEFtb3VudCgw
KQpAQCAtNDQ3LDEwICs0NDcsOCBAQCBib29sIFdlYlNvY2tldENoYW5uZWw6OnByb2Nlc3NCdWZm
ZXIoKQogICAgIHJldHVybiBwcm9jZXNzRnJhbWUoKTsKIH0KIAotdm9pZCBXZWJTb2NrZXRDaGFu
bmVsOjpyZXN1bWVUaW1lckZpcmVkKFRpbWVyKiB0aW1lcikKK3ZvaWQgV2ViU29ja2V0Q2hhbm5l
bDo6cmVzdW1lVGltZXJGaXJlZCgpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIg
PT0gJm1fcmVzdW1lVGltZXIpOwotCiAgICAgUmVmPFdlYlNvY2tldENoYW5uZWw+IHByb3RlY3Qo
KnRoaXMpOyAvLyBUaGUgY2xpZW50IGNhbiBjbG9zZSB0aGUgY2hhbm5lbCwgcG90ZW50aWFsbHkg
cmVtb3ZpbmcgdGhlIGxhc3QgcmVmZXJlbmNlLgogICAgIHdoaWxlICghbV9zdXNwZW5kZWQgJiYg
bV9jbGllbnQgJiYgIW1fYnVmZmVyLmlzRW1wdHkoKSkKICAgICAgICAgaWYgKCFwcm9jZXNzQnVm
ZmVyKCkpCkBAIC00ODksMTAgKzQ4Nyw5IEBAIHZvaWQgV2ViU29ja2V0Q2hhbm5lbDo6c3RhcnRD
bG9zaW5nSGFuZHNoYWtlKGludCBjb2RlLCBjb25zdCBTdHJpbmcmIHJlYXNvbikKICAgICAgICAg
bV9jbGllbnQtPmRpZFN0YXJ0Q2xvc2luZ0hhbmRzaGFrZSgpOwogfQogCi12b2lkIFdlYlNvY2tl
dENoYW5uZWw6OmNsb3NpbmdUaW1lckZpcmVkKFRpbWVyKiB0aW1lcikKK3ZvaWQgV2ViU29ja2V0
Q2hhbm5lbDo6Y2xvc2luZ1RpbWVyRmlyZWQoKQogewogICAgIExPRyhOZXR3b3JrLCAiV2ViU29j
a2V0Q2hhbm5lbCAlcCBjbG9zaW5nVGltZXJGaXJlZCgpIiwgdGhpcyk7Ci0gICAgQVNTRVJUX1VO
VVNFRCh0aW1lciwgJm1fY2xvc2luZ1RpbWVyID09IHRpbWVyKTsKICAgICBpZiAobV9oYW5kbGUp
CiAgICAgICAgIG1faGFuZGxlLT5kaXNjb25uZWN0KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwuaAppbmRleCBiZTc1ZDMz
NDQ5NjQ2YTFlMjhkZTI5NWM3MWExMDc1NjZhNDY3ZDAzLi45ZWU1YzhhY2NiMzRmZWZhZDAyNTAx
OWUyMTM1NjlhYzczYTc1MzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2Vic29ja2V0cy9XZWJTb2NrZXRDaGFubmVsLmgKQEAgLTEyNyw5ICsxMjcsOSBAQCBwcml2YXRl
OgogICAgIGJvb2wgYXBwZW5kVG9CdWZmZXIoY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxlbik7
CiAgICAgdm9pZCBza2lwQnVmZmVyKHNpemVfdCBsZW4pOwogICAgIGJvb2wgcHJvY2Vzc0J1ZmZl
cigpOwotICAgIHZvaWQgcmVzdW1lVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgcmVzdW1l
VGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRDbG9zaW5nSGFuZHNoYWtlKGludCBjb2RlLCBj
b25zdCBTdHJpbmcmIHJlYXNvbik7Ci0gICAgdm9pZCBjbG9zaW5nVGltZXJGaXJlZChUaW1lciop
OworICAgIHZvaWQgY2xvc2luZ1RpbWVyRmlyZWQoKTsKIAogICAgIGJvb2wgcHJvY2Vzc0ZyYW1l
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RD
YWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3Bw
CmluZGV4IGQ4YWZiMjU3ZmFiOGY5OTg5YjQxNGYzYTlhOTM0MTZlZTlkMDUzNDguLjA5N2IzYjNi
OWMzM2FhOWZmZjNhMTVlOTQ3NzU5MTM1MTQ0ZGE5ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcApAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQg
QVhPYmplY3RDYWNoZTo6c2V0RW5oYW5jZWRVc2VySW50ZXJmYWNlQWNjZXNzaWJpbGl0eShib29s
IGZsYWcpCiAKIEFYT2JqZWN0Q2FjaGU6OkFYT2JqZWN0Q2FjaGUoRG9jdW1lbnQmIGRvY3VtZW50
KQogICAgIDogbV9kb2N1bWVudChkb2N1bWVudCkKLSAgICAsIG1fbm90aWZpY2F0aW9uUG9zdFRp
bWVyKHRoaXMsICZBWE9iamVjdENhY2hlOjpub3RpZmljYXRpb25Qb3N0VGltZXJGaXJlZCkKKyAg
ICAsIG1fbm90aWZpY2F0aW9uUG9zdFRpbWVyKCp0aGlzLCAmQVhPYmplY3RDYWNoZTo6bm90aWZp
Y2F0aW9uUG9zdFRpbWVyRmlyZWQpCiB7CiB9CiAKQEAgLTcwMCw3ICs3MDAsNyBAQCB2b2lkIEFY
T2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmopCiAg
ICAgb2JqLT5jaGlsZHJlbkNoYW5nZWQoKTsKIH0KICAgICAKLXZvaWQgQVhPYmplY3RDYWNoZTo6
bm90aWZpY2F0aW9uUG9zdFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBBWE9iamVjdENhY2hlOjpu
b3RpZmljYXRpb25Qb3N0VGltZXJGaXJlZCgpCiB7CiAgICAgUmVmPERvY3VtZW50PiBwcm90ZWN0
b3JGb3JDYWNoZU93bmVyKG1fZG9jdW1lbnQpOwogICAgIG1fbm90aWZpY2F0aW9uUG9zdFRpbWVy
LnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmpl
Y3RDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgK
aW5kZXggYjRiNWMzN2Y2YTEyYjU1YjZjZGU1NjRmYzljYmFlNmNkYjExZjY4NS4uZjgzZWE3ZDRh
ODdlZmNmZDFiZjFlMGY3YmIzMDBiZDQ5YTQzYWE0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgKQEAgLTI0NCw3ICsyNDQsNyBAQCBwcml2YXRlOgog
ICAgIAogICAgIFRpbWVyIG1fbm90aWZpY2F0aW9uUG9zdFRpbWVyOwogICAgIFZlY3RvcjxzdGQ6
OnBhaXI8UmVmUHRyPEFjY2Vzc2liaWxpdHlPYmplY3Q+LCBBWE5vdGlmaWNhdGlvbj4+IG1fbm90
aWZpY2F0aW9uc1RvUG9zdDsKLSAgICB2b2lkIG5vdGlmaWNhdGlvblBvc3RUaW1lckZpcmVkKFRp
bWVyJik7CisgICAgdm9pZCBub3RpZmljYXRpb25Qb3N0VGltZXJGaXJlZCgpOwogICAgIHZvaWQg
aGFuZGxlTWVudU9wZW5lZChOb2RlKik7CiAgICAgdm9pZCBoYW5kbGVMaXZlUmVnaW9uQ3JlYXRl
ZChOb2RlKik7CiAgICAgdm9pZCBoYW5kbGVNZW51SXRlbVNlbGVjdGVkKE5vZGUqKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIuY3BwCmluZGV4IGM2OTE1NmNjNDNi
MDQwYmM0N2JmN2RhNTAyMzc3NDZjZmY5Y2FhMzYuLjE4ZWNmNzY5OTYzZTUyOTQ3NWEzMDFlOGNm
NTAzYzBiNmMyNjM5ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0dD
Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvR0NDb250cm9s
bGVyLmNwcApAQCAtNTEsNyArNTEsNyBAQCBHQ0NvbnRyb2xsZXImIGdjQ29udHJvbGxlcigpCiAK
IEdDQ29udHJvbGxlcjo6R0NDb250cm9sbGVyKCkKICNpZiAhVVNFKENGKQotICAgIDogbV9HQ1Rp
bWVyKHRoaXMsICZHQ0NvbnRyb2xsZXI6OmdjVGltZXJGaXJlZCkKKyAgICA6IG1fR0N0aW1lcigq
dGhpcywgJkdDQ29udHJvbGxlcjo6Z2NUaW1lckZpcmVkKQogI2VuZGlmCiB7CiB9CkBAIC03Myw3
ICs3Myw3IEBAIHZvaWQgR0NDb250cm9sbGVyOjpnYXJiYWdlQ29sbGVjdFNvb24oKQogfQogCiAj
aWYgIVVTRShDRikKLXZvaWQgR0NDb250cm9sbGVyOjpnY1RpbWVyRmlyZWQoVGltZXIqKQordm9p
ZCBHQ0NvbnRyb2xsZXI6OmdjVGltZXJGaXJlZCgpCiB7CiAgICAgY29sbGVjdChudWxscHRyKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmgKaW5kZXggYTM3MTUx
MGE0ZDJkZWMwMDU5MTg0MGM2OTVkODYzZjczNGNlNmY1OC4uZWViZTEwN2JlNjNjNzI0YmUzMmFh
ODFhOWViMjU3MzUyOGMyY2QyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvR0NDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvR0NDb250
cm9sbGVyLmgKQEAgLTUyLDcgKzUyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBH
Q0NvbnRyb2xsZXIoKTsgLy8gVXNlIGdjQ29udHJvbGxlcigpIGluc3RlYWQKIAogI2lmICFVU0Uo
Q0YpCi0gICAgICAgIHZvaWQgZ2NUaW1lckZpcmVkKFRpbWVyKik7CisgICAgICAgIHZvaWQgZ2NU
aW1lckZpcmVkKCk7CiAgICAgICAgIFRpbWVyIG1fR0NUaW1lcjsKICNlbmRpZgogICAgIH07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5oCmluZGV4IDZiMTY0MTA0NzM1NjE1ZGUz
MDBiNzU1NmRkMmYwZDRjMDQwNjNhNmMuLjgzNGI2ZTUwOGNlMWU4ZDBjZTBhNTRkODU2OWYzZDQw
YzgwMDFmNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJj
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5oCkBAIC03Niw3
ICs3Niw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIHZvaWQgc3RhcnRMb2Fk
aW5nVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgc3RhcnRMb2FkaW5nVGltZXJGaXJlZCgp
OwogCiAgICAgQXRvbWljU3RyaW5nIG1fc3RyaW5nOyAvLyBVUkkgZm9yIHJlbW90ZSwgYnVpbHQt
aW4gZm9udCBuYW1lIGZvciBsb2NhbC4KICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRG
b250PiBtX2ZvbnQ7IC8vIEZvciByZW1vdGUgZm9udHMsIGEgcG9pbnRlciB0byBvdXIgY2FjaGVk
IHJlc291cmNlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRTZWxlY3Rv
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9yLmNwcAppbmRleCAxYmFh
ZWZjMjUwNDU3NTk5M2RiZGRhNTkzNzg4MzVhZDA5Zjk1OTBjLi40MzY5MjkwZjE5NTk5NmI1YTM1
MjFmYTE2MWM0OWM3MDRmNGIyYzQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Rm9udFNlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9y
LmNwcApAQCAtNjAsNyArNjAsNyBAQCBzdGF0aWMgdW5zaWduZWQgZm9udFNlbGVjdG9ySWQ7CiAK
IENTU0ZvbnRTZWxlY3Rvcjo6Q1NTRm9udFNlbGVjdG9yKERvY3VtZW50KiBkb2N1bWVudCkKICAg
ICA6IG1fZG9jdW1lbnQoZG9jdW1lbnQpCi0gICAgLCBtX2JlZ2luTG9hZGluZ1RpbWVyKHRoaXMs
ICZDU1NGb250U2VsZWN0b3I6OmJlZ2luTG9hZFRpbWVyRmlyZWQpCisgICAgLCBtX2JlZ2luTG9h
ZGluZ1RpbWVyKCp0aGlzLCAmQ1NTRm9udFNlbGVjdG9yOjpiZWdpbkxvYWRUaW1lckZpcmVkKQog
ICAgICwgbV91bmlxdWVJZCgrK2ZvbnRTZWxlY3RvcklkKQogICAgICwgbV92ZXJzaW9uKDApCiAg
ICAgCkBAIC01ODcsNyArNTg3LDcgQEAgdm9pZCBDU1NGb250U2VsZWN0b3I6OmJlZ2luTG9hZGlu
Z0ZvbnRTb29uKENhY2hlZEZvbnQqIGZvbnQpCiAgICAgbV9iZWdpbkxvYWRpbmdUaW1lci5zdGFy
dE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgQ1NTRm9udFNlbGVjdG9yOjpiZWdpbkxvYWRUaW1lckZp
cmVkKFRpbWVyJikKK3ZvaWQgQ1NTRm9udFNlbGVjdG9yOjpiZWdpbkxvYWRUaW1lckZpcmVkKCkK
IHsKICAgICBWZWN0b3I8Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkRm9udD4+IGZvbnRzVG9C
ZWdpbkxvYWRpbmc7CiAgICAgZm9udHNUb0JlZ2luTG9hZGluZy5zd2FwKG1fZm9udHNUb0JlZ2lu
TG9hZGluZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9y
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9yLmgKaW5kZXggMThiZjE4OTZi
ODAzYTVhMGViYTNlYWY4Y2YwOWNmMzJkMzU3MDFiOS4uYzU0MWM0NTM4NTQyY2Y4OTNkMmU2YmFm
ZTAzZGM0OGM1YTljZTViZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRT
ZWxlY3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250U2VsZWN0b3IuaApAQCAt
ODYsNyArODYsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBkaXNwYXRjaEludmFsaWRhdGlvbkNh
bGxiYWNrcygpOwogCi0gICAgdm9pZCBiZWdpbkxvYWRUaW1lckZpcmVkKFRpbWVyJik7CisgICAg
dm9pZCBiZWdpbkxvYWRUaW1lckZpcmVkKCk7CiAKICAgICBEb2N1bWVudCogbV9kb2N1bWVudDsK
ICAgICBIYXNoTWFwPFN0cmluZywgc3RkOjp1bmlxdWVfcHRyPFZlY3RvcjxSZWZQdHI8Q1NTRm9u
dEZhY2U+Pj4sIENhc2VGb2xkaW5nSGFzaD4gbV9mb250RmFjZXM7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5jcHAKaW5kZXggZmI4OTk1NTcxNzU1NjNiOTU1
ZDM4MTc4NzRlZDRiNzc4YzAyNDdjNS4uZDJmMDQyZGQwYjExMDZmYmMyZGVkY2FmOTEyMGJjZmRl
MmZhYmYzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlR2VuZXJhdG9y
VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZUdlbmVyYXRvclZhbHVl
LmNwcApAQCAtOTQsNyArOTQsNyBAQCBDU1NJbWFnZUdlbmVyYXRvclZhbHVlOjpDYWNoZWRHZW5l
cmF0ZWRJbWFnZTo6Q2FjaGVkR2VuZXJhdGVkSW1hZ2UoQ1NTSW1hZ2VHZW5lcgogICAgIDogbV9v
d25lcihvd25lcikKICAgICAsIG1fc2l6ZShzaXplKQogICAgICwgbV9pbWFnZShpbWFnZSkKLSAg
ICAsIG1fZXZpY3Rpb25UaW1lcih0aGlzLCAmQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZTo6Q2FjaGVk
R2VuZXJhdGVkSW1hZ2U6OmV2aWN0aW9uVGltZXJGaXJlZCwgdGltZVRvS2VlcENhY2hlZEdlbmVy
YXRlZEltYWdlcykKKyAgICAsIG1fZXZpY3Rpb25UaW1lcigqdGhpcywgJkNTU0ltYWdlR2VuZXJh
dG9yVmFsdWU6OkNhY2hlZEdlbmVyYXRlZEltYWdlOjpldmljdGlvblRpbWVyRmlyZWQsIHRpbWVU
b0tlZXBDYWNoZWRHZW5lcmF0ZWRJbWFnZXMpCiB7CiAgICAgbV9ldmljdGlvblRpbWVyLnJlc3Rh
cnQoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250TG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250TG9hZGVyLmNwcAppbmRleCBlZWEzNTJkNDg5ZTg0ZGVj
MTY5ZTYyNjg1MzkzNjYzMzgzODVmN2IzLi45MDNjY2ZhZTNmZGZmNTgyNzhkMWYwODZjZTk1YjIw
ODk1NzBkZWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udExvYWRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRMb2FkZXIuY3BwCkBAIC0xMjIsNyArMTIyLDcg
QEAgRm9udExvYWRlcjo6Rm9udExvYWRlcihEb2N1bWVudCogZG9jdW1lbnQpCiAgICAgLCBtX2Rv
Y3VtZW50KGRvY3VtZW50KQogICAgICwgbV9udW1Mb2FkaW5nRnJvbUNTUygwKQogICAgICwgbV9u
dW1Mb2FkaW5nRnJvbUpTKDApCi0gICAgLCBtX3BlbmRpbmdFdmVudHNUaW1lcih0aGlzLCAmRm9u
dExvYWRlcjo6cGVuZGluZ0V2ZW50c1RpbWVyRmlyZWQpCisgICAgLCBtX3BlbmRpbmdFdmVudHNU
aW1lcigqdGhpcywgJkZvbnRMb2FkZXI6OnBlbmRpbmdFdmVudHNUaW1lckZpcmVkKQogewogICAg
IHN1c3BlbmRJZk5lZWRlZCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0Zv
bnRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250TG9hZGVyLmgKaW5kZXggNjRkMmMy
NmI5ZjBkZDYzYmIzNzA3MTZkOGY1NWM5MGVmOTlhMDNlZS4uYjZkNmQ5MTFhMTRjYzRjODgyNjRj
YzIzMjI1ZWUzODQ0MzUwYzVkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRM
b2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udExvYWRlci5oCkBAIC05NSw3ICs5
NSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0
RGF0YSgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhJiBlbnN1cmVFdmVu
dFRhcmdldERhdGEoKSBvdmVycmlkZTsKIAotICAgIHZvaWQgcGVuZGluZ0V2ZW50c1RpbWVyRmly
ZWQoVGltZXImKSB7IGZpcmVQZW5kaW5nRXZlbnRzKCk7IH0KKyAgICB2b2lkIHBlbmRpbmdFdmVu
dHNUaW1lckZpcmVkKCkgeyBmaXJlUGVuZGluZ0V2ZW50cygpOyB9CiAgICAgdm9pZCBzY2hlZHVs
ZUV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+KTsKICAgICB2b2lkIGZpcmVQZW5kaW5nRXZlbnRzKCk7
CiAgICAgYm9vbCByZXNvbHZlRm9udFN0eWxlKGNvbnN0IFN0cmluZyYsIEZvbnQmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCA4Y2M3YTMxMDIzZTZhNWYwNmNiY2VjZGQ2
YjE2ZjBmOGE4YTMwY2JjLi43MjRmZjNjMmNkMjg0ZGQ0OGIwMjcxZDA2ZGY1NDEyMTkwNDIyZDg2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0yNTEsNyArMjUxLDcgQEAg
dm9pZCBTdHlsZVJlc29sdmVyOjpNYXRjaFJlc3VsdDo6YWRkTWF0Y2hlZFByb3BlcnRpZXMoY29u
c3QgU3R5bGVQcm9wZXJ0aWVzJiBwcm8KIAogU3R5bGVSZXNvbHZlcjo6U3R5bGVSZXNvbHZlcihE
b2N1bWVudCYgZG9jdW1lbnQsIGJvb2wgbWF0Y2hBdXRob3JBbmRVc2VyU3R5bGVzKQogICAgIDog
bV9tYXRjaGVkUHJvcGVydGllc0NhY2hlQWRkaXRpb25zU2luY2VMYXN0U3dlZXAoMCkKLSAgICAs
IG1fbWF0Y2hlZFByb3BlcnRpZXNDYWNoZVN3ZWVwVGltZXIodGhpcywgJlN0eWxlUmVzb2x2ZXI6
OnN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZSkKKyAgICAsIG1fbWF0Y2hlZFByb3BlcnRpZXND
YWNoZVN3ZWVwVGltZXIoKnRoaXMsICZTdHlsZVJlc29sdmVyOjpzd2VlcE1hdGNoZWRQcm9wZXJ0
aWVzQ2FjaGUpCiAgICAgLCBtX2RvY3VtZW50KGRvY3VtZW50KQogICAgICwgbV9tYXRjaEF1dGhv
ckFuZFVzZXJTdHlsZXMobWF0Y2hBdXRob3JBbmRVc2VyU3R5bGVzKQogICAgICwgbV9mb250U2Vs
ZWN0b3IoQ1NTRm9udFNlbGVjdG9yOjpjcmVhdGUoJm1fZG9jdW1lbnQpKQpAQCAtMzQ5LDcgKzM0
OSw3IEBAIFN0eWxlUmVzb2x2ZXI6On5TdHlsZVJlc29sdmVyKCkKICNlbmRpZgogfQogCi12b2lk
IFN0eWxlUmVzb2x2ZXI6OnN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZShUaW1lciopCit2b2lk
IFN0eWxlUmVzb2x2ZXI6OnN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZSgpCiB7CiAgICAgLy8g
TG9vayBmb3IgY2FjaGUgZW50cmllcyBjb250YWluaW5nIGEgc3R5bGUgZGVjbGFyYXRpb24gd2l0
aCBhIHNpbmdsZSByZWYgYW5kIHJlbW92ZSB0aGVtLgogICAgIC8vIFRoaXMgbWF5IGhhcHBlbiB3
aGVuIGFuIGVsZW1lbnQgYXR0cmlidXRlIG11dGF0aW9uIGNhdXNlcyBpdCB0byBnZW5lcmF0ZSBh
IG5ldyBpbmxpbmVTdHlsZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVS
ZXNvbHZlci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAppbmRleCBjOTk1
OGY5YzkxYmMyMTdkNjIzMjkyZWQyZTQzMDM1MDRmNzllMmMwLi41NWNhMGY2ZWRlOTc2NDYxOGEx
ZTYzYjEwMzFhODI1OTE3NDU3Yzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVSZXNvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKQEAg
LTQ5Niw3ICs0OTYsNyBAQCBwcml2YXRlOgogCiAgICAgLy8gRXZlcnkgTiBhZGRpdGlvbnMgdG8g
dGhlIG1hdGNoZWQgZGVjbGFyYXRpb24gY2FjaGUgdHJpZ2dlciBhIHN3ZWVwIHdoZXJlIGVudHJp
ZXMgaG9sZGluZwogICAgIC8vIHRoZSBsYXN0IHJlZmVyZW5jZSB0byBhIHN0eWxlIGRlY2xhcmF0
aW9uIGFyZSBnYXJiYWdlIGNvbGxlY3RlZC4KLSAgICB2b2lkIHN3ZWVwTWF0Y2hlZFByb3BlcnRp
ZXNDYWNoZShUaW1lciopOworICAgIHZvaWQgc3dlZXBNYXRjaGVkUHJvcGVydGllc0NhY2hlKCk7
CiAKICAgICBib29sIGNsYXNzTmFtZXNBZmZlY3RlZEJ5UnVsZXMoY29uc3QgU3BhY2VTcGxpdFN0
cmluZyYpIGNvbnN0OwogICAgIGJvb2wgc2hhcmluZ0NhbmRpZGF0ZUhhc0lkZW50aWNhbFN0eWxl
QWZmZWN0aW5nQXR0cmlidXRlcyhTdHlsZWRFbGVtZW50KikgY29uc3Q7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmNwcAppbmRleCAwMmQxZmE0YTY4MTFmYmQ1ZDgxNmY2NjY5ZWE1YTQ1MWMxMmU3OWVlLi4z
NzQ4M2NlMjI4ZjU3NDAxNTY3NzZhODk5M2ZhNGJjNTYwOWZlMmNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5jcHAKQEAgLTQwOCw3ICs0MDgsNyBAQCBEb2N1bWVudDo6RG9jdW1lbnQoRnJhbWUqIGZy
YW1lLCBjb25zdCBVUkwmIHVybCwgdW5zaWduZWQgZG9jdW1lbnRDbGFzc2VzLCB1bnNpZwogI2lm
IEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQogICAgICwgbV9oYW5kbGluZ1RvdWNoRXZlbnQoZmFs
c2UpCiAgICAgLCBtX3RvdWNoRXZlbnRSZWdpb25zRGlydHkoZmFsc2UpCi0gICAgLCBtX3RvdWNo
RXZlbnRzQ2hhbmdlZFRpbWVyKHRoaXMsICZEb2N1bWVudDo6dG91Y2hFdmVudHNDaGFuZ2VkVGlt
ZXJGaXJlZCkKKyAgICAsIG1fdG91Y2hFdmVudHNDaGFuZ2VkVGltZXIoKnRoaXMsICZEb2N1bWVu
dDo6dG91Y2hFdmVudHNDaGFuZ2VkVGltZXJGaXJlZCkKICNlbmRpZgogICAgICwgbV9yZWZlcmVu
Y2luZ05vZGVDb3VudCgwKQogICAgICwgbV9kaWRDYWxjdWxhdGVTdHlsZVJlc29sdmVyKGZhbHNl
KQpAQCAtNDMzLDggKzQzMyw4IEBAIERvY3VtZW50OjpEb2N1bWVudChGcmFtZSogZnJhbWUsIGNv
bnN0IFVSTCYgdXJsLCB1bnNpZ25lZCBkb2N1bWVudENsYXNzZXMsIHVuc2lnCiAgICAgLCBtX3Zp
c3VhbGx5T3JkZXJlZChmYWxzZSkKICAgICAsIG1fcmVhZHlTdGF0ZShDb21wbGV0ZSkKICAgICAs
IG1fYlBhcnNpbmcoZmFsc2UpCi0gICAgLCBtX29wdGltaXplZFN0eWxlU2hlZXRVcGRhdGVUaW1l
cih0aGlzLCAmRG9jdW1lbnQ6Om9wdGltaXplZFN0eWxlU2hlZXRVcGRhdGVUaW1lckZpcmVkKQot
ICAgICwgbV9zdHlsZVJlY2FsY1RpbWVyKHRoaXMsICZEb2N1bWVudDo6c3R5bGVSZWNhbGNUaW1l
ckZpcmVkKQorICAgICwgbV9vcHRpbWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXIoKnRoaXMsICZE
b2N1bWVudDo6b3B0aW1pemVkU3R5bGVTaGVldFVwZGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX3N0
eWxlUmVjYWxjVGltZXIoKnRoaXMsICZEb2N1bWVudDo6c3R5bGVSZWNhbGNUaW1lckZpcmVkKQog
ICAgICwgbV9wZW5kaW5nU3R5bGVSZWNhbGNTaG91bGRGb3JjZShmYWxzZSkKICAgICAsIG1faW5T
dHlsZVJlY2FsYyhmYWxzZSkKICAgICAsIG1fY2xvc2VBZnRlclN0eWxlUmVjYWxjKGZhbHNlKQpA
QCAtNDQ0LDcgKzQ0NCw3IEBAIERvY3VtZW50OjpEb2N1bWVudChGcmFtZSogZnJhbWUsIGNvbnN0
IFVSTCYgdXJsLCB1bnNpZ25lZCBkb2N1bWVudENsYXNzZXMsIHVuc2lnCiAgICAgLCBtX2lnbm9y
ZURlc3RydWN0aXZlV3JpdGVDb3VudCgwKQogICAgICwgbV90aXRsZVNldEV4cGxpY2l0bHkoZmFs
c2UpCiAgICAgLCBtX21hcmtlcnMoc3RkOjptYWtlX3VuaXF1ZTxEb2N1bWVudE1hcmtlckNvbnRy
b2xsZXI+KCkpCi0gICAgLCBtX3VwZGF0ZUZvY3VzQXBwZWFyYW5jZVRpbWVyKHRoaXMsICZEb2N1
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCkKKyAgICAsIG1fdXBkYXRlRm9j
dXNBcHBlYXJhbmNlVGltZXIoKnRoaXMsICZEb2N1bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNl
VGltZXJGaXJlZCkKICAgICAsIG1fY3NzVGFyZ2V0KG51bGxwdHIpCiAgICAgLCBtX3Byb2Nlc3Np
bmdMb2FkRXZlbnQoZmFsc2UpCiAgICAgLCBtX2xvYWRFdmVudEZpbmlzaGVkKGZhbHNlKQpAQCAt
NDc1LDExICs0NzUsMTEgQEAgRG9jdW1lbnQ6OkRvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29uc3Qg
VVJMJiB1cmwsIHVuc2lnbmVkIGRvY3VtZW50Q2xhc3NlcywgdW5zaWcKICNpZiBFTkFCTEUoRlVM
TFNDUkVFTl9BUEkpCiAgICAgLCBtX2FyZUtleXNFbmFibGVkSW5GdWxsU2NyZWVuKDApCiAgICAg
LCBtX2Z1bGxTY3JlZW5SZW5kZXJlcihudWxscHRyKQotICAgICwgbV9mdWxsU2NyZWVuQ2hhbmdl
RGVsYXlUaW1lcih0aGlzLCAmRG9jdW1lbnQ6OmZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmly
ZWQpCisgICAgLCBtX2Z1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyKCp0aGlzLCAmRG9jdW1lbnQ6
OmZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQpCiAgICAgLCBtX2lzQW5pbWF0aW5nRnVs
bFNjcmVlbihmYWxzZSkKICNlbmRpZgogICAgICwgbV9sb2FkRXZlbnREZWxheUNvdW50KDApCi0g
ICAgLCBtX2xvYWRFdmVudERlbGF5VGltZXIodGhpcywgJkRvY3VtZW50Ojpsb2FkRXZlbnREZWxh
eVRpbWVyRmlyZWQpCisgICAgLCBtX2xvYWRFdmVudERlbGF5VGltZXIoKnRoaXMsICZEb2N1bWVu
dDo6bG9hZEV2ZW50RGVsYXlUaW1lckZpcmVkKQogICAgICwgbV9yZWZlcnJlclBvbGljeShSZWZl
cnJlclBvbGljeURlZmF1bHQpCiAgICAgLCBtX2RpcmVjdGlvblNldE9uRG9jdW1lbnRFbGVtZW50
KGZhbHNlKQogICAgICwgbV93cml0aW5nTW9kZVNldE9uRG9jdW1lbnRFbGVtZW50KGZhbHNlKQpA
QCAtNDk4LDExICs0OTgsMTEgQEAgRG9jdW1lbnQ6OkRvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29u
c3QgVVJMJiB1cmwsIHVuc2lnbmVkIGRvY3VtZW50Q2xhc3NlcywgdW5zaWcKICNpZiBFTkFCTEUo
VEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pCiAgICAgLCBtX2lzVGVsZXBob25lTnVtYmVyUGFy
c2luZ0FsbG93ZWQodHJ1ZSkKICNlbmRpZgotICAgICwgbV9wZW5kaW5nVGFza3NUaW1lcih0aGlz
LCAmRG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQpCisgICAgLCBtX3BlbmRpbmdUYXNr
c1RpbWVyKCp0aGlzLCAmRG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQpCiAgICAgLCBt
X3NjaGVkdWxlZFRhc2tzQXJlU3VzcGVuZGVkKGZhbHNlKQogICAgICwgbV92aXN1YWxVcGRhdGVz
QWxsb3dlZCh0cnVlKQotICAgICwgbV92aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25UaW1lcih0aGlz
LCAmRG9jdW1lbnQ6OnZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQpCi0gICAgLCBt
X3NoYXJlZE9iamVjdFBvb2xDbGVhclRpbWVyKHRoaXMsICZEb2N1bWVudDo6c2hhcmVkT2JqZWN0
UG9vbENsZWFyVGltZXJGaXJlZCkKKyAgICAsIG1fdmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGlt
ZXIoKnRoaXMsICZEb2N1bWVudDo6dmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGltZXJGaXJlZCkK
KyAgICAsIG1fc2hhcmVkT2JqZWN0UG9vbENsZWFyVGltZXIoKnRoaXMsICZEb2N1bWVudDo6c2hh
cmVkT2JqZWN0UG9vbENsZWFyVGltZXJGaXJlZCkKICNpZm5kZWYgTkRFQlVHCiAgICAgLCBtX2Rp
ZERpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVzQ2hhbmdlZChmYWxzZSkKICNlbmRpZgpAQCAtNTEy
LDggKzUxMiw4IEBAIERvY3VtZW50OjpEb2N1bWVudChGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYg
dXJsLCB1bnNpZ25lZCBkb2N1bWVudENsYXNzZXMsIHVuc2lnCiAjaWYgRU5BQkxFKFdFQl9SRVBM
QVkpCiAgICAgLCBtX2lucHV0Q3Vyc29yKEVtcHR5SW5wdXRDdXJzb3I6OmNyZWF0ZSgpKQogI2Vu
ZGlmCi0gICAgLCBtX2RpZEFzc29jaWF0ZUZvcm1Db250cm9sc1RpbWVyKHRoaXMsICZEb2N1bWVu
dDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXJGaXJlZCkKLSAgICAsIG1fY29va2llQ2Fj
aGVFeHBpcnlUaW1lcih0aGlzLCAmRG9jdW1lbnQ6OmRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJG
aXJlZCkKKyAgICAsIG1fZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXIoKnRoaXMsICZEb2N1
bWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXJGaXJlZCkKKyAgICAsIG1fY29va2ll
Q2FjaGVFeHBpcnlUaW1lcigqdGhpcywgJkRvY3VtZW50Ojpkb21Db29raWVDYWNoZUV4cGlyeVRp
bWVyRmlyZWQpCiAgICAgLCBtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50KDApCiAgICAg
LCBtX2hhc0luamVjdGVkUGx1Z0luc1NjcmlwdChmYWxzZSkKICAgICAsIG1fcmVuZGVyVHJlZUJl
aW5nRGVzdHJveWVkKGZhbHNlKQpAQCAtMTI2NCw3ICsxMjY0LDcgQEAgdm9pZCBEb2N1bWVudDo6
c2V0VmlzdWFsVXBkYXRlc0FsbG93ZWQoYm9vbCB2aXN1YWxVcGRhdGVzQWxsb3dlZCkKICAgICAg
ICAgZnJhbWUtPmxvYWRlcigpLmZvcmNlUGFnZVRyYW5zaXRpb25JZk5lZWRlZCgpOwogfQogCi12
b2lkIERvY3VtZW50Ojp2aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25UaW1lckZpcmVkKFRpbWVyJikK
K3ZvaWQgRG9jdW1lbnQ6OnZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQoKQogewog
ICAgIEFTU0VSVCghbV92aXN1YWxVcGRhdGVzQWxsb3dlZCk7CiAKQEAgLTE3NDUsNyArMTc0NSw3
IEBAIGJvb2wgRG9jdW1lbnQ6Omhhc1BlbmRpbmdGb3JjZWRTdHlsZVJlY2FsYygpIGNvbnN0CiAg
ICAgcmV0dXJuIG1fc3R5bGVSZWNhbGNUaW1lci5pc0FjdGl2ZSgpICYmIG1fcGVuZGluZ1N0eWxl
UmVjYWxjU2hvdWxkRm9yY2U7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OnN0eWxlUmVjYWxjVGltZXJG
aXJlZChUaW1lciYpCit2b2lkIERvY3VtZW50OjpzdHlsZVJlY2FsY1RpbWVyRmlyZWQoKQogewog
ICAgIHVwZGF0ZVN0eWxlSWZOZWVkZWQoKTsKIH0KQEAgLTMyNDQsNyArMzI0NCw3IEBAIHZvaWQg
RG9jdW1lbnQ6OmV2YWx1YXRlTWVkaWFRdWVyeUxpc3QoKQogICAgICAgICBtX21lZGlhUXVlcnlN
YXRjaGVyLT5zdHlsZVJlc29sdmVyQ2hhbmdlZCgpOwogfQogCi12b2lkIERvY3VtZW50OjpvcHRp
bWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXJGaXJlZChUaW1lciYpCit2b2lkIERvY3VtZW50Ojpv
cHRpbWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXJGaXJlZCgpCiB7CiAgICAgc3R5bGVSZXNvbHZl
ckNoYW5nZWQoUmVjYWxjU3R5bGVJZk5lZWRlZCk7CiB9CkBAIC00NjI5LDcgKzQ2MjksNyBAQCB2
b2lkIERvY3VtZW50OjpmaW5pc2hlZFBhcnNpbmcoKQogICAgIG1fY2FjaGVkUmVzb3VyY2VMb2Fk
ZXItPmNsZWFyUHJlbG9hZHMoKTsKIH0KIAotdm9pZCBEb2N1bWVudDo6c2hhcmVkT2JqZWN0UG9v
bENsZWFyVGltZXJGaXJlZChUaW1lciYpCit2b2lkIERvY3VtZW50OjpzaGFyZWRPYmplY3RQb29s
Q2xlYXJUaW1lckZpcmVkKCkKIHsKICAgICBtX3NoYXJlZE9iamVjdFBvb2wgPSBudWxscHRyOwog
fQpAQCAtNDg2OCw3ICs0ODY4LDcgQEAgdm9pZCBEb2N1bWVudDo6Y2FuY2VsRm9jdXNBcHBlYXJh
bmNlVXBkYXRlKCkKICAgICBtX3VwZGF0ZUZvY3VzQXBwZWFyYW5jZVRpbWVyLnN0b3AoKTsKIH0K
IAotdm9pZCBEb2N1bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZChUaW1lciYp
Cit2b2lkIERvY3VtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKCkKIHsKICAg
ICBFbGVtZW50KiBlbGVtZW50ID0gZm9jdXNlZEVsZW1lbnQoKTsKICAgICBpZiAoIWVsZW1lbnQp
CkBAIC01MDIzLDcgKzUwMjMsNyBAQCB2b2lkIERvY3VtZW50Ojpwb3N0VGFzayhUYXNrIHRhc2sp
CiAgICAgfSk7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVyRmlyZWQoVGlt
ZXImKQordm9pZCBEb2N1bWVudDo6cGVuZGluZ1Rhc2tzVGltZXJGaXJlZCgpCiB7CiAgICAgVmVj
dG9yPFRhc2s+IHBlbmRpbmdUYXNrcyA9IFdURjo6bW92ZShtX3BlbmRpbmdUYXNrcyk7CiAgICAg
Zm9yIChhdXRvJiB0YXNrIDogcGVuZGluZ1Rhc2tzKQpAQCAtNTQ3NCw3ICs1NDc0LDcgQEAgdm9p
ZCBEb2N1bWVudDo6d2Via2l0V2lsbEVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoRWxlbWVudCog
ZWxlbWVudCkKICAgICByZWNhbGNTdHlsZShTdHlsZTo6Rm9yY2UpOwogCiAgICAgaWYgKHNldHRp
bmdzKCkgJiYgc2V0dGluZ3MoKS0+bmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoKSAmJiBob3N0SXNZ
b3VUdWJlKHVybCgpLmhvc3QoKSkpCi0gICAgICAgIGZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVy
RmlyZWQobV9mdWxsU2NyZWVuQ2hhbmdlRGVsYXlUaW1lcik7CisgICAgICAgIGZ1bGxTY3JlZW5D
aGFuZ2VEZWxheVRpbWVyRmlyZWQoKTsKIH0KIAogdm9pZCBEb2N1bWVudDo6d2Via2l0RGlkRW50
ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChFbGVtZW50KikKQEAgLTU1MjgsNyArNTUyOCw3IEBAIHZv
aWQgRG9jdW1lbnQ6OndlYmtpdERpZEV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChFbGVtZW50KikK
ICAgICAvLyBGSVhNRSgxMzY2MDUpOiBSZW1vdmUgdGhpcyBxdWlyayBvbmNlIFlvdVR1YmUgbW92
ZXMgdG8gcmVsYXRpdmUgd2lkdGhzIGFuZCBoZWlnaHRzIGZvcgogICAgIC8vIGZ1bGxzY3JlZW4g
bW9kZS4KICAgICBpZiAoc2V0dGluZ3MoKSAmJiBzZXR0aW5ncygpLT5uZWVkc1NpdGVTcGVjaWZp
Y1F1aXJrcygpICYmIGhvc3RJc1lvdVR1YmUodXJsKCkuaG9zdCgpKSkKLSAgICAgICAgZXhpdGlu
Z0RvY3VtZW50LmZ1bGxTY3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQoZXhpdGluZ0RvY3VtZW50
Lm1fZnVsbFNjcmVlbkNoYW5nZURlbGF5VGltZXIpOworICAgICAgICBleGl0aW5nRG9jdW1lbnQu
ZnVsbFNjcmVlbkNoYW5nZURlbGF5VGltZXJGaXJlZCgpOwogICAgIGVsc2UKICAgICAgICAgZXhp
dGluZ0RvY3VtZW50Lm1fZnVsbFNjcmVlbkNoYW5nZURlbGF5VGltZXIuc3RhcnRPbmVTaG90KDAp
OwogCkBAIC01NTU4LDcgKzU1NTgsNyBAQCB2b2lkIERvY3VtZW50OjpmdWxsU2NyZWVuUmVuZGVy
ZXJEZXN0cm95ZWQoKQogICAgIG1fZnVsbFNjcmVlblJlbmRlcmVyID0gbnVsbHB0cjsKIH0KIAot
dm9pZCBEb2N1bWVudDo6ZnVsbFNjcmVlbkNoYW5nZURlbGF5VGltZXJGaXJlZChUaW1lciYpCit2
b2lkIERvY3VtZW50OjpmdWxsU2NyZWVuQ2hhbmdlRGVsYXlUaW1lckZpcmVkKCkKIHsKICAgICAv
LyBTaW5jZSB3ZSBkaXNwYXRjaCBldmVudHMgaW4gdGhpcyBmdW5jdGlvbiwgaXQncyBwb3NzaWJs
ZSB0aGF0IHRoZQogICAgIC8vIGRvY3VtZW50IHdpbGwgYmUgZGV0YWNoZWQgYW5kIEdDJ2QuIFdl
IHByb3RlY3QgaXQgaGVyZSB0byBtYWtlIHN1cmUgd2UKQEAgLTU2OTYsNyArNTY5Niw3IEBAIHZv
aWQgRG9jdW1lbnQ6OmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKQogICAgICAgICBtX2xv
YWRFdmVudERlbGF5VGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIERvY3VtZW50Ojps
b2FkRXZlbnREZWxheVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBEb2N1bWVudDo6bG9hZEV2ZW50
RGVsYXlUaW1lckZpcmVkKCkKIHsKICAgICBpZiAoZnJhbWUoKSkKICAgICAgICAgZnJhbWUoKS0+
bG9hZGVyKCkuY2hlY2tDb21wbGV0ZWQoKTsKQEAgLTYyMTIsMTAgKzYyMTIsOCBAQCB2b2lkIERv
Y3VtZW50OjpkaWRBc3NvY2lhdGVGb3JtQ29udHJvbChFbGVtZW50KiBlbGVtZW50KQogICAgICAg
ICBtX2RpZEFzc29jaWF0ZUZvcm1Db250cm9sc1RpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAot
dm9pZCBEb2N1bWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXJGaXJlZChUaW1lciYg
dGltZXIpCit2b2lkIERvY3VtZW50OjpkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHNUaW1lckZpcmVk
KCkKIHsKLSAgICBBU1NFUlRfVU5VU0VEKHRpbWVyLCAmdGltZXIgPT0gJm1fZGlkQXNzb2NpYXRl
Rm9ybUNvbnRyb2xzVGltZXIpOwotCiAgICAgaWYgKCFmcmFtZSgpIHx8ICFmcmFtZSgpLT5wYWdl
KCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtNjI0MCw3ICs2MjM4LDcgQEAgdm9pZCBEb2N1bWVu
dDo6aW52YWxpZGF0ZURPTUNvb2tpZUNhY2hlKCkKICAgICBtX2NhY2hlZERPTUNvb2tpZXMgPSBT
dHJpbmcoKTsKIH0KIAotdm9pZCBEb2N1bWVudDo6ZG9tQ29va2llQ2FjaGVFeHBpcnlUaW1lckZp
cmVkKFRpbWVyJikKK3ZvaWQgRG9jdW1lbnQ6OmRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJGaXJl
ZCgpCiB7CiAgICAgaW52YWxpZGF0ZURPTUNvb2tpZUNhY2hlKCk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oCmluZGV4IDhiNDEzZTYyNjMyYWZlMzE3MzY1OTBlNWEyMTIzY2Q4MTdmYWNjNmQuLjI2MDk2
NzBiYjczMjQ1ODIwMmQwZDZlMzQ0Y2E2ZmZhODUyNGM2YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5o
CkBAIC03NzMsOCArNzczLDggQEAgcHVibGljOgogICAgIHZvaWQgdW5zY2hlZHVsZVN0eWxlUmVj
YWxjKCk7CiAgICAgYm9vbCBoYXNQZW5kaW5nU3R5bGVSZWNhbGMoKSBjb25zdDsKICAgICBib29s
IGhhc1BlbmRpbmdGb3JjZWRTdHlsZVJlY2FsYygpIGNvbnN0OwotICAgIHZvaWQgc3R5bGVSZWNh
bGNUaW1lckZpcmVkKFRpbWVyJik7Ci0gICAgdm9pZCBvcHRpbWl6ZWRTdHlsZVNoZWV0VXBkYXRl
VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgc3R5bGVSZWNhbGNUaW1lckZpcmVkKCk7Cisg
ICAgdm9pZCBvcHRpbWl6ZWRTdHlsZVNoZWV0VXBkYXRlVGltZXJGaXJlZCgpOwogCiAgICAgdm9p
ZCByZWdpc3Rlck5vZGVMaXN0Rm9ySW52YWxpZGF0aW9uKExpdmVOb2RlTGlzdCYpOwogICAgIHZv
aWQgdW5yZWdpc3Rlck5vZGVMaXN0Rm9ySW52YWxpZGF0aW9uKExpdmVOb2RlTGlzdCYpOwpAQCAt
MTE0Miw3ICsxMTQyLDcgQEAgcHVibGljOgogICAgIFJlbmRlckZ1bGxTY3JlZW4qIGZ1bGxTY3Jl
ZW5SZW5kZXJlcigpIGNvbnN0IHsgcmV0dXJuIG1fZnVsbFNjcmVlblJlbmRlcmVyOyB9CiAgICAg
dm9pZCBmdWxsU2NyZWVuUmVuZGVyZXJEZXN0cm95ZWQoKTsKICAgICAKLSAgICB2b2lkIGZ1bGxT
Y3JlZW5DaGFuZ2VEZWxheVRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGZ1bGxTY3JlZW5D
aGFuZ2VEZWxheVRpbWVyRmlyZWQoKTsKICAgICBib29sIGZ1bGxTY3JlZW5Jc0FsbG93ZWRGb3JF
bGVtZW50KEVsZW1lbnQqKSBjb25zdDsKICAgICB2b2lkIGZ1bGxTY3JlZW5FbGVtZW50UmVtb3Zl
ZCgpOwogICAgIHZvaWQgcmVtb3ZlRnVsbFNjcmVlbkVsZW1lbnRPZlN1YnRyZWUoTm9kZSosIGJv
b2wgYW1vbmdDaGlsZHJlbk9ubHkgPSBmYWxzZSk7CkBAIC0xMzM0LDE2ICsxMzM0LDE2IEBAIHBy
aXZhdGU6CiAgICAgdmlydHVhbCBkb3VibGUgdGltZXJBbGlnbm1lbnRJbnRlcnZhbCgpIGNvbnN0
IG92ZXJyaWRlIGZpbmFsOwogCiAgICAgdm9pZCB1cGRhdGVUaXRsZShjb25zdCBTdHJpbmdXaXRo
RGlyZWN0aW9uJik7Ci0gICAgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKFRp
bWVyJik7CisgICAgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKCk7CiAgICAg
dm9pZCB1cGRhdGVCYXNlVVJMKCk7CiAKICAgICB2b2lkIGJ1aWxkQWNjZXNzS2V5TWFwKFRyZWVT
Y29wZSogcm9vdCk7CiAKICAgICB2b2lkIGNyZWF0ZVN0eWxlUmVzb2x2ZXIoKTsKIAotICAgIHZv
aWQgbG9hZEV2ZW50RGVsYXlUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBsb2FkRXZlbnRE
ZWxheVRpbWVyRmlyZWQoKTsKIAotICAgIHZvaWQgcGVuZGluZ1Rhc2tzVGltZXJGaXJlZChUaW1l
ciYpOworICAgIHZvaWQgcGVuZGluZ1Rhc2tzVGltZXJGaXJlZCgpOwogCiAgICAgdGVtcGxhdGUg
PHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CiAgICAgdm9pZCBkaXNwbGF5QnVmZmVyTW9kaWZpZWRC
eUVuY29kaW5nSW50ZXJuYWwoQ2hhcmFjdGVyVHlwZSosIHVuc2lnbmVkKSBjb25zdDsKQEAgLTEz
NjQsMTggKzEzNjQsMTggQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgc2V0VmlzdWFsVXBkYXRlc0Fs
bG93ZWQoUmVhZHlTdGF0ZSk7CiAgICAgdm9pZCBzZXRWaXN1YWxVcGRhdGVzQWxsb3dlZChib29s
KTsKLSAgICB2b2lkIHZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQoVGltZXImKTsK
KyAgICB2b2lkIHZpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyRmlyZWQoKTsKIAogICAgIHZv
aWQgYWRkTGlzdGVuZXJUeXBlKExpc3RlbmVyVHlwZSBsaXN0ZW5lclR5cGUpIHsgbV9saXN0ZW5l
clR5cGVzIHw9IGxpc3RlbmVyVHlwZTsgfQogCi0gICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29u
dHJvbHNUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJv
bHNUaW1lckZpcmVkKCk7CiAKICAgICAvLyBET00gQ29va2llcyBjYWNoaW5nLgogICAgIGNvbnN0
IFN0cmluZyYgY2FjaGVkRE9NQ29va2llcygpIGNvbnN0IHsgcmV0dXJuIG1fY2FjaGVkRE9NQ29v
a2llczsgfQogICAgIHZvaWQgc2V0Q2FjaGVkRE9NQ29va2llcyhjb25zdCBTdHJpbmcmKTsKICAg
ICBib29sIGlzRE9NQ29va2llQ2FjaGVWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fY29va2llQ2Fj
aGVFeHBpcnlUaW1lci5pc0FjdGl2ZSgpOyB9CiAgICAgdm9pZCBpbnZhbGlkYXRlRE9NQ29va2ll
Q2FjaGUoKTsKLSAgICB2b2lkIGRvbUNvb2tpZUNhY2hlRXhwaXJ5VGltZXJGaXJlZChUaW1lciYp
OworICAgIHZvaWQgZG9tQ29va2llQ2FjaGVFeHBpcnlUaW1lckZpcmVkKCk7CiAgICAgdmlydHVh
bCB2b2lkIGRpZExvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGUgZmluYWw7CiAKICAgICB1bnNpZ25lZCBtX3JlZmVyZW5jaW5nTm9kZUNvdW50
OwpAQCAtMTY4Myw3ICsxNjgzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RE9NU2VjdXJpdHlQ
b2xpY3k+IG1fZG9tU2VjdXJpdHlQb2xpY3k7CiAjZW5kaWYKIAotICAgIHZvaWQgc2hhcmVkT2Jq
ZWN0UG9vbENsZWFyVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgc2hhcmVkT2JqZWN0UG9v
bENsZWFyVGltZXJGaXJlZCgpOwogICAgIFRpbWVyIG1fc2hhcmVkT2JqZWN0UG9vbENsZWFyVGlt
ZXI7CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8RG9jdW1lbnRTaGFyZWRPYmplY3RQb29sPiBtX3No
YXJlZE9iamVjdFBvb2w7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRTZW5k
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFNlbmRlci5oCmluZGV4IDU1MDAyMWFiMTk4
NmUyMDM2ZmNkNDRjMDI5YWNjNDNmYTg5YTc3M2EuLjdjZDgyZTExNDkxOGQ1NzJiMWE2Mjk2YjUz
ZWU5NGI3ZmY0MzA3YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFNlbmRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFNlbmRlci5oCkBAIC00OSw3ICs0OSw3
IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIHZvaWQgdGltZXJGaXJlZChUaW1l
ciYpIHsgZGlzcGF0Y2hQZW5kaW5nRXZlbnRzKCk7IH0KKyAgICB2b2lkIHRpbWVyRmlyZWQoKSB7
IGRpc3BhdGNoUGVuZGluZ0V2ZW50cygpOyB9CiAKICAgICBBdG9taWNTdHJpbmcgbV9ldmVudFR5
cGU7CiAgICAgVGltZXIgbV90aW1lcjsKQEAgLTU5LDcgKzU5LDcgQEAgcHJpdmF0ZToKIAogdGVt
cGxhdGU8dHlwZW5hbWUgVD4gRXZlbnRTZW5kZXI8VD46OkV2ZW50U2VuZGVyKGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlKQogICAgIDogbV9ldmVudFR5cGUoZXZlbnRUeXBlKQotICAgICwg
bV90aW1lcih0aGlzLCAmRXZlbnRTZW5kZXI6OnRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWVyKCp0
aGlzLCAmRXZlbnRTZW5kZXI6OnRpbWVyRmlyZWQpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1Njcmlw
dFJ1bm5lci5jcHAKaW5kZXggMDk2ZTNjNTE3YzlmMGZmODBiYzRjNzhiYjI4MTkxMjkzMTQ1Yjdh
YS4uZWQ5NGRhM2U3M2RiMTMwMTc4Yjk5ZWE0YjdmOTJiNWFjMTk4MDlkNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdFJ1bm5lci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBTY3JpcHRSdW5uZXI6OlNjcmlwdFJ1bm5lcihEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAg
OiBtX2RvY3VtZW50KGRvY3VtZW50KQotICAgICwgbV90aW1lcih0aGlzLCAmU2NyaXB0UnVubmVy
Ojp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJlNjcmlwdFJ1bm5lcjo6dGltZXJG
aXJlZCkKIHsKIH0KIApAQCAtOTYsMTAgKzk2LDggQEAgdm9pZCBTY3JpcHRSdW5uZXI6Om5vdGlm
eVNjcmlwdFJlYWR5KFNjcmlwdEVsZW1lbnQqIHNjcmlwdEVsZW1lbnQsIEV4ZWN1dGlvblR5cGUK
ICAgICBtX3RpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBTY3JpcHRSdW5uZXI6OnRp
bWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQoKQog
ewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV90aW1lcik7Ci0KICAgICBS
ZWY8RG9jdW1lbnQ+IHByb3RlY3QobV9kb2N1bWVudCk7CiAKICAgICBWZWN0b3I8UGVuZGluZ1Nj
cmlwdD4gc2NyaXB0czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5u
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuaAppbmRleCBlMTNkZjhlMDdj
MzExYTVhYzdhMDNlODg4NDhiZjQxN2RmYmNiNTE2Li4yN2NkYmY4YjNhZjU2OTQ2MmU1YjlhZWIx
NmNkNzY1MDUwODkxZTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVu
bmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5oCkBAIC01NCw3ICs1
NCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIG5vdGlmeVNjcmlwdFJlYWR5KFNjcmlwdEVsZW1lbnQq
LCBFeGVjdXRpb25UeXBlKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXIm
KTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsKIAogICAgIERvY3VtZW50JiBtX2RvY3VtZW50Owog
ICAgIFZlY3RvcjxQZW5kaW5nU2NyaXB0PiBtX3NjcmlwdHNUb0V4ZWN1dGVJbk9yZGVyOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcApp
bmRleCA3ODU2MmU3MGNiMTA3OTM4MWFjZTBmODVhZDdjYmIxOWU3Mzg1MmU1Li5kZjRkNDQ2ZWQ5
YzUzMjcxMTI4OTEwOTUyOTRkMTllZjdjNjFiNzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcApAQCAtNTQsNyArNTQsNyBAQCBT
Y3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXI6OlNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcihE
b2N1bWVudCogZG9jdW1lbnQsIFBsYQogICAgICwgbV9uZXh0Q2FsbGJhY2tJZCgwKQogICAgICwg
bV9zdXNwZW5kQ291bnQoMCkKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIp
Ci0gICAgLCBtX2FuaW1hdGlvblRpbWVyKHRoaXMsICZTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xs
ZXI6OmFuaW1hdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX2FuaW1hdGlvblRpbWVyKCp0aGlzLCAm
U2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyOjphbmltYXRpb25UaW1lckZpcmVkKQogICAgICwg
bV9sYXN0QW5pbWF0aW9uRnJhbWVUaW1lTW9ub3RvbmljKDApCiAjaWYgVVNFKFJFUVVFU1RfQU5J
TUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKICAgICAsIG1faXNVc2luZ1RpbWVyKGZhbHNl
KQpAQCAtMjExLDcgKzIxMSw3IEBAIHZvaWQgU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyOjpz
Y2hlZHVsZUFuaW1hdGlvbigpCiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVf
VElNRVIpCi12b2lkIFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcjo6YW5pbWF0aW9uVGltZXJG
aXJlZChUaW1lciYpCit2b2lkIFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcjo6YW5pbWF0aW9u
VGltZXJGaXJlZCgpCiB7CiAgICAgbV9sYXN0QW5pbWF0aW9uRnJhbWVUaW1lTW9ub3RvbmljID0g
bW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCk7CiAgICAgc2VydmljZVNjcmlwdGVkQW5pbWF0
aW9ucyhtX2xhc3RBbmltYXRpb25GcmFtZVRpbWVNb25vdG9uaWMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL1NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oCmluZGV4IDAwMmM3MWVmYmRm
YmEzNDAyNzdjYjYyMWNhNzE2NGI2ZGQ2MDhlNDIuLjY5YjZkYzJjNDQzMWE4ZmJhMjNlODQzNjZm
MmQxYmUxNTk5NmJlYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRlZEFu
aW1hdGlvbkNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0ZWRBbmlt
YXRpb25Db250cm9sbGVyLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNj
aGVkdWxlQW5pbWF0aW9uKCk7CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElN
RVIpCi0gICAgdm9pZCBhbmltYXRpb25UaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBhbmlt
YXRpb25UaW1lckZpcmVkKCk7CiAgICAgVGltZXIgbV9hbmltYXRpb25UaW1lcjsKICAgICBkb3Vi
bGUgbV9sYXN0QW5pbWF0aW9uRnJhbWVUaW1lTW9ub3RvbmljOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5
bGVkRWxlbWVudC5jcHAKaW5kZXggM2EyNDZiNDI2YzA0Zjg4NzcxZDY5ZTRhOGViNzkzZWEyMDI0
N2RmMy4uYThkM2U2ZjdkNmYyZDJhNjVlNjVkY2JkYmFiNjUxNGVkNWM1MmYxZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcApAQCAtNzksNyArNzksNyBAQCBjbGFzcyBQcmVzZW50
YXRpb25BdHRyaWJ1dGVDYWNoZUNsZWFuZXIgewogcHVibGljOgogICAgIFByZXNlbnRhdGlvbkF0
dHJpYnV0ZUNhY2hlQ2xlYW5lcigpCiAgICAgICAgIDogbV9oaXRDb3VudCgwKQotICAgICAgICAs
IG1fY2xlYW5UaW1lcih0aGlzLCAmUHJlc2VudGF0aW9uQXR0cmlidXRlQ2FjaGVDbGVhbmVyOjpj
bGVhbkNhY2hlKQorICAgICAgICAsIG1fY2xlYW5UaW1lcigqdGhpcywgJlByZXNlbnRhdGlvbkF0
dHJpYnV0ZUNhY2hlQ2xlYW5lcjo6Y2xlYW5DYWNoZSkKICAgICB7CiAgICAgfQogCkBAIC05OSw5
ICs5OSw4IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGludCBtaW5pbXVtUHJlc2VudGF0
aW9uQXR0cmlidXRlQ2FjaGVTaXplRm9yQ2xlYW5pbmcgPSAxMDA7CiAgICAgc3RhdGljIGNvbnN0
IHVuc2lnbmVkIG1pbmltdW1QcmVzZW50YXRpb25BdHRyaWJ1dGVDYWNoZUhpdENvdW50UGVyTWlu
dXRlID0gKDEwMCAqIHByZXNlbnRhdGlvbkF0dHJpYnV0ZUNhY2hlQ2xlYW5UaW1lSW5TZWNvbmRz
KSAvIDYwOwogCi0gICAgdm9pZCBjbGVhbkNhY2hlKFRpbWVyKiB0aW1lcikKKyAgICB2b2lkIGNs
ZWFuQ2FjaGUoKQogICAgIHsKLSAgICAgICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0g
Jm1fY2xlYW5UaW1lcik7CiAgICAgICAgIHVuc2lnbmVkIGhpdENvdW50ID0gbV9oaXRDb3VudDsK
ICAgICAgICAgbV9oaXRDb3VudCA9IDA7CiAgICAgICAgIGlmIChoaXRDb3VudCA+IG1pbmltdW1Q
cmVzZW50YXRpb25BdHRyaWJ1dGVDYWNoZUhpdENvdW50UGVyTWludXRlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5jcHAKaW5kZXgg
OTczNjEzZDRhZjU2YzMyNzVkZWJiMjU2ZmUwZjMyZTdjYTQwNzcyNi4uMGVmN2JkYTgzNDUwMjUw
ZjBkYWMwMGNmZmMwMTlkMTVmMTJiODExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0FsdGVybmF0aXZlVGV4dENvbnRyb2xsZXIuY3BwCkBAIC0xMjksNyArMTI5LDcgQEAg
c3RhdGljIGJvb2wgbWFya2Vyc0hhdmVJZGVudGljYWxEZXNjcmlwdGlvbihjb25zdCBWZWN0b3I8
UmVuZGVyZWREb2N1bWVudE1hcmtlcioKIH0KIAogQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlcjo6
QWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlcihGcmFtZSYgZnJhbWUpCi0gICAgOiBtX3RpbWVyKHRo
aXMsICZBbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyOjp0aW1lckZpcmVkKQorICAgIDogbV90aW1l
cigqdGhpcywgJkFsdGVybmF0aXZlVGV4dENvbnRyb2xsZXI6OnRpbWVyRmlyZWQpCiAgICAgLCBt
X2ZyYW1lKGZyYW1lKQogewogfQpAQCAtMzI3LDcgKzMyNyw3IEBAIHZvaWQgQWx0ZXJuYXRpdmVU
ZXh0Q29udHJvbGxlcjo6cmVzcG9uZFRvVW5hcHBsaWVkU3BlbGxDb3JyZWN0aW9uKGNvbnN0IFZp
c2libGVTCiAgICAgbWFya2Vycy5hZGRNYXJrZXIocmFuZ2UuZ2V0KCksIERvY3VtZW50TWFya2Vy
OjpTcGVsbENoZWNraW5nRXhlbXB0aW9uKTsKIH0KIAotdm9pZCBBbHRlcm5hdGl2ZVRleHRDb250
cm9sbGVyOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxl
cjo6dGltZXJGaXJlZCgpCiB7CiAgICAgbV9pc0Rpc21pc3NlZEJ5RWRpdGluZyA9IGZhbHNlOwog
ICAgIHN3aXRjaCAobV9hbHRlcm5hdGl2ZVRleHRJbmZvLnR5cGUpIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5oIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9BbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmgKaW5kZXggZjEyZjgx
YTgwN2I4MzZlODdiMzI4MzIyYzk2ZmM1ZDM1ZGYzMDY4OC4uYjEwNmFjNTUyMTk4ZmVmZjEyZjAw
NmNkYzMzMjAzMTdkYTA0OWZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9B
bHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9B
bHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBwcml2YXRlOgog
I2lmIFVTRShBVVRPQ09SUkVDVElPTl9QQU5FTCkKICAgICBTdHJpbmcgZGlzbWlzc1Nvb24oUmVh
c29uRm9yRGlzbWlzc2luZ0FsdGVybmF0aXZlVGV4dCk7CiAgICAgdm9pZCBhcHBseUFsdGVybmF0
aXZlVGV4dFRvUmFuZ2UoY29uc3QgUmFuZ2UqLCBjb25zdCBTdHJpbmcmIGFsdGVybmF0aXZlLCBB
bHRlcm5hdGl2ZVRleHRUeXBlLCBjb25zdCBWZWN0b3I8RG9jdW1lbnRNYXJrZXI6Ok1hcmtlclR5
cGU+Jik7Ci0gICAgdm9pZCB0aW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB0aW1lckZpcmVk
KCk7CiAgICAgdm9pZCByZWNvcmRBdXRvY29ycmVjdGlvblJlc3BvbnNlUmV2ZXJzZWQoY29uc3Qg
U3RyaW5nJiByZXBsYWNlZFN0cmluZywgY29uc3QgU3RyaW5nJiByZXBsYWNlbWVudFN0cmluZyk7
CiAgICAgdm9pZCByZWNvcmRTcGVsbGNoZWNrZXJSZXNwb25zZUZvck1vZGlmaWVkQ29ycmVjdGlv
bihSYW5nZSogcmFuZ2VPZkNvcnJlY3Rpb24sIGNvbnN0IFN0cmluZyYgY29ycmVjdGVkLCBjb25z
dCBTdHJpbmcmIGNvcnJlY3Rpb24pOwogICAgIFN0cmluZyBtYXJrZXJEZXNjcmlwdGlvbkZvckFw
cGxpZWRBbHRlcm5hdGl2ZVRleHQoQWx0ZXJuYXRpdmVUZXh0VHlwZSwgRG9jdW1lbnRNYXJrZXI6
Ok1hcmtlclR5cGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3Iu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IGI4MmUyY2MxMTlj
NTQ4NTZkMTg1ZGJmODBiNTE0ZmY0NDE0MDg2MTcuLmVkNjNhMjg3M2YwZjhmN2IxM2ZiNTg4ZjMz
MzFjMDA3N2U1ODU0Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTEwNzYsMTEg
KzEwNzYsMTEgQEAgRWRpdG9yOjpFZGl0b3IoRnJhbWUmIGZyYW1lKQogICAgICwgbV9hcmVNYXJr
ZWRUZXh0TWF0Y2hlc0hpZ2hsaWdodGVkKGZhbHNlKQogICAgICwgbV9kZWZhdWx0UGFyYWdyYXBo
U2VwYXJhdG9yKEVkaXRvclBhcmFncmFwaFNlcGFyYXRvcklzRGl2KQogICAgICwgbV9vdmVyd3Jp
dGVNb2RlRW5hYmxlZChmYWxzZSkKLSAgICAsIG1fZWRpdG9yVUlVcGRhdGVUaW1lcih0aGlzLCAm
RWRpdG9yOjplZGl0b3JVSVVwZGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX2VkaXRvclVJVXBkYXRl
VGltZXIoKnRoaXMsICZFZGl0b3I6OmVkaXRvclVJVXBkYXRlVGltZXJGaXJlZCkKICAgICAsIG1f
ZWRpdG9yVUlVcGRhdGVUaW1lclNob3VsZENoZWNrU3BlbGxpbmdBbmRHcmFtbWFyKGZhbHNlKQog
ICAgICwgbV9lZGl0b3JVSVVwZGF0ZVRpbWVyV2FzVHJpZ2dlcmVkQnlEaWN0YXRpb24oZmFsc2Up
CiAjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiAhUExBVEZPUk0oSU9T
KQotICAgICwgbV90ZWxlcGhvbmVOdW1iZXJEZXRlY3Rpb25VcGRhdGVUaW1lcih0aGlzLCAmRWRp
dG9yOjpzY2FuU2VsZWN0aW9uRm9yVGVsZXBob25lTnVtYmVycykKKyAgICAsIG1fdGVsZXBob25l
TnVtYmVyRGV0ZWN0aW9uVXBkYXRlVGltZXIoKnRoaXMsICZFZGl0b3I6OnNjYW5TZWxlY3Rpb25G
b3JUZWxlcGhvbmVOdW1iZXJzKQogI2VuZGlmCiB7CiB9CkBAIC0zMjcwLDExICszMjcwLDYgQEAg
Ym9vbCBFZGl0b3I6OnNob3VsZERldGVjdFRlbGVwaG9uZU51bWJlcnMoKQogICAgIHJldHVybiBk
b2N1bWVudCgpLmlzVGVsZXBob25lTnVtYmVyUGFyc2luZ0VuYWJsZWQoKSAmJiBUZWxlcGhvbmVO
dW1iZXJEZXRlY3Rvcjo6aXNTdXBwb3J0ZWQoKTsKIH0KIAotdm9pZCBFZGl0b3I6OnNjYW5TZWxl
Y3Rpb25Gb3JUZWxlcGhvbmVOdW1iZXJzKFRpbWVyJikKLXsKLSAgICBzY2FuU2VsZWN0aW9uRm9y
VGVsZXBob25lTnVtYmVycygpOwotfQotCiB2b2lkIEVkaXRvcjo6c2NhblNlbGVjdGlvbkZvclRl
bGVwaG9uZU51bWJlcnMoKQogewogICAgIGlmICghc2hvdWxkRGV0ZWN0VGVsZXBob25lTnVtYmVy
cygpIHx8ICFjbGllbnQoKSkKQEAgLTMzNzQsMTAgKzMzNjksMTAgQEAgdm9pZCBFZGl0b3I6OnVw
ZGF0ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKQogICAgIGlmICghbV9lZGl0b3JVSVVwZGF0ZVRp
bWVyLmlzQWN0aXZlKCkpCiAgICAgICAgIHJldHVybjsKICAgICBtX2VkaXRvclVJVXBkYXRlVGlt
ZXIuc3RvcCgpOwotICAgIGVkaXRvclVJVXBkYXRlVGltZXJGaXJlZChtX2VkaXRvclVJVXBkYXRl
VGltZXIpOworICAgIGVkaXRvclVJVXBkYXRlVGltZXJGaXJlZCgpOwogfQogCi12b2lkIEVkaXRv
cjo6ZWRpdG9yVUlVcGRhdGVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgRWRpdG9yOjplZGl0b3JV
SVVwZGF0ZVRpbWVyRmlyZWQoKQogewogICAgIFZpc2libGVTZWxlY3Rpb24gb2xkU2VsZWN0aW9u
ID0gbV9vbGRTZWxlY3Rpb25Gb3JFZGl0b3JVSVVwZGF0ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmgKaW5kZXggOGJlMWY3M2I5YTA0M2Q4ZGNkNDgxNmI4MDlkODFlNTU4YzBjZjcwNy4uNjcxZjRj
M2M1NzNiODMzY2Q0YzBmMTU5NjBiZTIyNzRlMmQwMDY3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZWRpdGluZy9FZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRv
ci5oCkBAIC00NzIsNyArNDcyLDcgQEAgcHJpdmF0ZToKICAgICBlbnVtIEVkaXRvckFjdGlvblNw
ZWNpZmllciB7IEN1dEFjdGlvbiwgQ29weUFjdGlvbiB9OwogICAgIHZvaWQgcGVyZm9ybUN1dE9y
Q29weShFZGl0b3JBY3Rpb25TcGVjaWZpZXIpOwogCi0gICAgdm9pZCBlZGl0b3JVSVVwZGF0ZVRp
bWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGVkaXRvclVJVXBkYXRlVGltZXJGaXJlZCgpOwog
CiAgICAgTm9kZSogZmluZEV2ZW50VGFyZ2V0RnJvbVNlbGVjdGlvbigpIGNvbnN0OwogCkBAIC01
MTAsNyArNTEwLDYgQEAgcHJpdmF0ZToKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RF
VEVDVElPTikgJiYgIVBMQVRGT1JNKElPUykKICAgICBib29sIHNob3VsZERldGVjdFRlbGVwaG9u
ZU51bWJlcnMoKTsKLSAgICB2b2lkIHNjYW5TZWxlY3Rpb25Gb3JUZWxlcGhvbmVOdW1iZXJzKFRp
bWVyJik7CiAgICAgdm9pZCBzY2FuUmFuZ2VGb3JUZWxlcGhvbmVOdW1iZXJzKFJhbmdlJiwgY29u
c3QgU3RyaW5nVmlldyYsIFZlY3RvcjxSZWZQdHI8UmFuZ2U+PiYgbWFya2VkUmFuZ2VzKTsKIAog
ICAgIFRpbWVyIG1fdGVsZXBob25lTnVtYmVyRGV0ZWN0aW9uVXBkYXRlVGltZXI7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCmluZGV4IDhmNjBkMDI5NTZkOGFjOTA2
NjE1ZGEyY2FlMDI4MWQwZGQ0OGEyNTYuLmFmNGJkMTc4YmRkZjI0NmZlNzc4NWUxOGE4NzA5OThm
YzI1MDJjNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCkBA
IC0xMTEsNyArMTExLDcgQEAgRnJhbWVTZWxlY3Rpb246OkZyYW1lU2VsZWN0aW9uKEZyYW1lKiBm
cmFtZSkKICAgICA6IG1fZnJhbWUoZnJhbWUpCiAgICAgLCBtX3hQb3NGb3JWZXJ0aWNhbEFycm93
TmF2aWdhdGlvbihOb1hQb3NGb3JWZXJ0aWNhbEFycm93TmF2aWdhdGlvbigpKQogICAgICwgbV9n
cmFudWxhcml0eShDaGFyYWN0ZXJHcmFudWxhcml0eSkKLSAgICAsIG1fY2FyZXRCbGlua1RpbWVy
KHRoaXMsICZGcmFtZVNlbGVjdGlvbjo6Y2FyZXRCbGlua1RpbWVyRmlyZWQpCisgICAgLCBtX2Nh
cmV0QmxpbmtUaW1lcigqdGhpcywgJkZyYW1lU2VsZWN0aW9uOjpjYXJldEJsaW5rVGltZXJGaXJl
ZCkKICAgICAsIG1fYWJzQ2FyZXRCb3VuZHNEaXJ0eSh0cnVlKQogICAgICwgbV9jYXJldFBhaW50
KHRydWUpCiAgICAgLCBtX2lzQ2FyZXRCbGlua2luZ1N1c3BlbmRlZChmYWxzZSkKQEAgLTE4OTAs
NyArMTg5MCw3IEBAIHZvaWQgRnJhbWVTZWxlY3Rpb246OnNldENhcmV0VmlzaWJpbGl0eShDYXJl
dFZpc2liaWxpdHkgdmlzaWJpbGl0eSkKICAgICB1cGRhdGVBcHBlYXJhbmNlKCk7CiB9CiAKLXZv
aWQgRnJhbWVTZWxlY3Rpb246OmNhcmV0QmxpbmtUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgRnJh
bWVTZWxlY3Rpb246OmNhcmV0QmxpbmtUaW1lckZpcmVkKCkKIHsKICNpZiBFTkFCTEUoVEVYVF9D
QVJFVCkKICAgICBBU1NFUlQoY2FyZXRJc1Zpc2libGUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmgKaW5kZXggNmE4Nzc2MGU5MGExZDA4MDFmMDc3N2E5Y2MyY2VhZmNm
YzJiMWE2My4uZTUyZTc5YTY1OWYwYWZlOGQ5NjFmZjFhNDQ0M2M3NGQ2ODVhNWQ0NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uaApAQCAtMzEwLDcgKzMxMCw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBzZXRGb2N1c2VkRWxlbWVudElmTmVlZGVkKCk7CiAgICAgdm9pZCBm
b2N1c2VkT3JBY3RpdmVTdGF0ZUNoYW5nZWQoKTsKIAotICAgIHZvaWQgY2FyZXRCbGlua1RpbWVy
RmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGNhcmV0QmxpbmtUaW1lckZpcmVkKCk7CiAKICAgICB2
b2lkIHNldENhcmV0VmlzaWJpbGl0eShDYXJldFZpc2liaWxpdHkpOwogICAgIGJvb2wgcmVjb21w
dXRlQ2FyZXRSZWN0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1NwZWxs
Q2hlY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1NwZWxsQ2hlY2tlci5jcHAKaW5k
ZXggYWU4MzIxMjEzOTc2NzA2NmUwMWIyOWNmMDU5ZDg5NGY2NmUyNmVjNy4uN2NlMjk2ODk2ZGM5
NjQyNGI0ZDMwNWU2NjQzZjkzYTdlNjFhMzJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9TcGVsbENoZWNrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvU3Bl
bGxDaGVja2VyLmNwcApAQCAtMTA3LDcgKzEwNyw3IEBAIFNwZWxsQ2hlY2tlcjo6U3BlbGxDaGVj
a2VyKEZyYW1lJiBmcmFtZSkKICAgICA6IG1fZnJhbWUoZnJhbWUpCiAgICAgLCBtX2xhc3RSZXF1
ZXN0U2VxdWVuY2UoMCkKICAgICAsIG1fbGFzdFByb2Nlc3NlZFNlcXVlbmNlKDApCi0gICAgLCBt
X3RpbWVyVG9Qcm9jZXNzUXVldWVkUmVxdWVzdCh0aGlzLCAmU3BlbGxDaGVja2VyOjp0aW1lckZp
cmVkVG9Qcm9jZXNzUXVldWVkUmVxdWVzdCkKKyAgICAsIG1fdGltZXJUb1Byb2Nlc3NRdWV1ZWRS
ZXF1ZXN0KCp0aGlzLCAmU3BlbGxDaGVja2VyOjp0aW1lckZpcmVkVG9Qcm9jZXNzUXVldWVkUmVx
dWVzdCkKIHsKIH0KIApAQCAtMTI3LDcgKzEyNyw3IEBAIFRleHRDaGVja2VyQ2xpZW50KiBTcGVs
bENoZWNrZXI6OmNsaWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIHBhZ2UtPmVkaXRvckNsaWVudCgp
LT50ZXh0Q2hlY2tlcigpOwogfQogCi12b2lkIFNwZWxsQ2hlY2tlcjo6dGltZXJGaXJlZFRvUHJv
Y2Vzc1F1ZXVlZFJlcXVlc3QoVGltZXIqKQordm9pZCBTcGVsbENoZWNrZXI6OnRpbWVyRmlyZWRU
b1Byb2Nlc3NRdWV1ZWRSZXF1ZXN0KCkKIHsKICAgICBBU1NFUlQoIW1fcmVxdWVzdFF1ZXVlLmlz
RW1wdHkoKSk7CiAgICAgaWYgKG1fcmVxdWVzdFF1ZXVlLmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvU3BlbGxDaGVja2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL1NwZWxsQ2hlY2tlci5oCmluZGV4IDAwOGUzMjhmNjQ0ODAyMGUyYjY5ZGU2YWJkNDgy
MDc3OGNlZWJmMTkuLjYzNTNmNzA5NDgzMGM4ZjI3NmQxOTNmYzI1M2QzNzBlYjA4MjgxZDMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvU3BlbGxDaGVja2VyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9TcGVsbENoZWNrZXIuaApAQCAtOTgsNyArOTgsNyBAQCBwcml2
YXRlOgogCiAgICAgYm9vbCBjYW5DaGVja0FzeW5jaHJvbm91c2x5KFJhbmdlKikgY29uc3Q7CiAg
ICAgVGV4dENoZWNrZXJDbGllbnQqIGNsaWVudCgpIGNvbnN0OwotICAgIHZvaWQgdGltZXJGaXJl
ZFRvUHJvY2Vzc1F1ZXVlZFJlcXVlc3QoVGltZXIqKTsKKyAgICB2b2lkIHRpbWVyRmlyZWRUb1By
b2Nlc3NRdWV1ZWRSZXF1ZXN0KCk7CiAgICAgdm9pZCBpbnZva2VSZXF1ZXN0KFBhc3NSZWZQdHI8
U3BlbGxDaGVja1JlcXVlc3Q+KTsKICAgICB2b2lkIGVucXVldWVSZXF1ZXN0KFBhc3NSZWZQdHI8
U3BlbGxDaGVja1JlcXVlc3Q+KTsKICAgICB2b2lkIGRpZENoZWNrU3VjY2VlZChpbnQgc2VxdWVu
Y2UsIGNvbnN0IFZlY3RvcjxUZXh0Q2hlY2tpbmdSZXN1bHQ+Jik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGb3JtRWxlbWVudC5jcHAKaW5kZXggZjY2ZTlkZDVhZWMxOTlmM2M5MzcwZmY4ZDkwYjMz
ZmJmZjE5NDkxZC4uZTM0OTdlZTI3NThiNzZlNWQxZDFiMjA4MmUzZWNkMGIxMjliNTBlYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcApAQCAtNjUsNyArNjUsNyBAQCBI
VE1MRm9ybUVsZW1lbnQ6OkhUTUxGb3JtRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdO
YW1lLCBEb2N1bWVudCYgZG9jdW1lbgogICAgICwgbV9pc0luUmVzZXRGdW5jdGlvbihmYWxzZSkK
ICAgICAsIG1fd2FzRGVtb3RlZChmYWxzZSkKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExF
VEUpCi0gICAgLCBtX3JlcXVlc3RBdXRvY29tcGxldGVUaW1lcih0aGlzLCAmSFRNTEZvcm1FbGVt
ZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRlVGltZXJGaXJlZCkKKyAgICAsIG1fcmVxdWVzdEF1dG9j
b21wbGV0ZXRpbWVyKCp0aGlzLCAmSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRl
VGltZXJGaXJlZCkKICNlbmRpZgogewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGZvcm1UYWcpKTsK
QEAgLTQ3Miw3ICs0NzIsNyBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6ZmluaXNoUmVxdWVzdEF1
dG9jb21wbGV0ZShBdXRvY29tcGxldGVSZXN1bHQgcmVzdWx0KQogICAgICAgICBtX3JlcXVlc3RB
dXRvY29tcGxldGVUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgSFRNTEZvcm1FbGVt
ZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRlVGltZXJGaXJlZChUaW1lciopCit2b2lkIEhUTUxGb3Jt
RWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZVRpbWVyRmlyZWQoKQogewogICAgIFZlY3RvcjxS
ZWZQdHI8RXZlbnQ+PiBwZW5kaW5nRXZlbnRzOwogICAgIG1fcGVuZGluZ0F1dG9jb21wbGV0ZUV2
ZW50cy5zd2FwKHBlbmRpbmdFdmVudHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRm9ybUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50
LmgKaW5kZXggZTU0NWM3NzQyNTMwZmY2ODUxODFmYmZiYzc0Y2M3MWZiMTk4OGQ2ZS4uOGNiZTky
MDdiYzM5ZGMyZmE2YzlkM2U5OTYyNzBkZTdiZTU2ZTY4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGb3JtRWxlbWVudC5oCkBAIC0xOTQsNyArMTk0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1f
d2FzRGVtb3RlZDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lk
IHJlcXVlc3RBdXRvY29tcGxldGVUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCByZXF1ZXN0
QXV0b2NvbXBsZXRlVGltZXJGaXJlZCgpOwogCiAgICAgVmVjdG9yPFJlZlB0cjxFdmVudD4+IG1f
cGVuZGluZ0F1dG9jb21wbGV0ZUV2ZW50czsKICAgICBUaW1lciBtX3JlcXVlc3RBdXRvY29tcGxl
dGVUaW1lcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGNh
NWYwYWUxNDI4NWQ1ZDM1YzUyMzg2OGRlNDAwNmZhNDJkYWNhNDguLjg3ZGZiMWQ3MjZkNzMzNjU5
ZTUyYjNmMTEwNjU2MGRjOWNiNTZlMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcApAQCAtMjU0LDExICsyNTQsMTEgQEAgcHJpdmF0ZToKIEhUTUxNZWRpYUVsZW1l
bnQ6OkhUTUxNZWRpYUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1l
bnQmIGRvY3VtZW50LCBib29sIGNyZWF0ZWRCeVBhcnNlcikKICAgICA6IEhUTUxFbGVtZW50KHRh
Z05hbWUsIGRvY3VtZW50KQogICAgICwgQWN0aXZlRE9NT2JqZWN0KCZkb2N1bWVudCkKLSAgICAs
IG1fbG9hZFRpbWVyKHRoaXMsICZIVE1MTWVkaWFFbGVtZW50Ojpsb2FkVGltZXJGaXJlZCkKLSAg
ICAsIG1fcHJvZ3Jlc3NFdmVudFRpbWVyKHRoaXMsICZIVE1MTWVkaWFFbGVtZW50Ojpwcm9ncmVz
c0V2ZW50VGltZXJGaXJlZCkKLSAgICAsIG1fcGxheWJhY2tQcm9ncmVzc1RpbWVyKHRoaXMsICZI
VE1MTWVkaWFFbGVtZW50OjpwbGF5YmFja1Byb2dyZXNzVGltZXJGaXJlZCkKLSAgICAsIG1fc2Nh
blRpbWVyKHRoaXMsICZIVE1MTWVkaWFFbGVtZW50OjpzY2FuVGltZXJGaXJlZCkKLSAgICAsIG1f
c2Vla1RpbWVyKHRoaXMsICZIVE1MTWVkaWFFbGVtZW50OjpzZWVrVGltZXJGaXJlZCkKKyAgICAs
IG1fbG9hZFRpbWVyKCp0aGlzLCAmSFRNTE1lZGlhRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQpCisg
ICAgLCBtX3Byb2dyZXNzRXZlbnRUaW1lcigqdGhpcywgJkhUTUxNZWRpYUVsZW1lbnQ6OnByb2dy
ZXNzRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9wbGF5YmFja1Byb2dyZXNzVGltZXIoKnRoaXMs
ICZIVE1MTWVkaWFFbGVtZW50OjpwbGF5YmFja1Byb2dyZXNzVGltZXJGaXJlZCkKKyAgICAsIG1f
c2NhblRpbWVyKCp0aGlzLCAmSFRNTE1lZGlhRWxlbWVudDo6c2NhblRpbWVyRmlyZWQpCisgICAg
LCBtX3NlZWtUaW1lcigqdGhpcywgJkhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUaW1lckZpcmVkKQog
ICAgICwgbV9wbGF5ZWRUaW1lUmFuZ2VzKCkKICAgICAsIG1fYXN5bmNFdmVudFF1ZXVlKCp0aGlz
KQogICAgICwgbV9wbGF5YmFja1JhdGUoMS4wZikKQEAgLTc1Nyw3ICs3NTcsNyBAQCB2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6OnNjaGVkdWxlRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudE5h
bWUpCiAgICAgbV9hc3luY0V2ZW50UXVldWUuZW5xdWV1ZUV2ZW50KGV2ZW50LnJlbGVhc2UoKSk7
CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQoVGltZXImKQordm9p
ZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkVGltZXJGaXJlZCgpCiB7CiAgICAgUmVmPEhUTUxNZWRp
YUVsZW1lbnQ+IHByb3RlY3QoKnRoaXMpOyAvLyBsb2FkTmV4dFNvdXJjZUNoaWxkIG1heSBmaXJl
ICdiZWZvcmVsb2FkJywgd2hpY2ggY2FuIG1ha2UgYXJiaXRyYXJ5IERPTSBtdXRhdGlvbnMuCiAK
QEAgLTIyMjUsNyArMjIyNSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0TWVkaWFLZXlz
KE1lZGlhS2V5cyogbWVkaWFLZXlzKQogfQogI2VuZGlmCiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVu
dDo6cHJvZ3Jlc3NFdmVudFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBIVE1MTWVkaWFFbGVtZW50
Ojpwcm9ncmVzc0V2ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKG1fcGxheWVyKTsKICAg
ICBpZiAobV9uZXR3b3JrU3RhdGUgIT0gTkVUV09SS19MT0FESU5HKQpAQCAtMjM2MCwxMCArMjM2
MCwxMCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtXaXRoVG9sZXJhbmNlKGNvbnN0IE1l
ZGlhVGltZSYgaW5UaW1lLCBjb25zdCBNZWRpYVRpbQogICAgIGlmIChmcm9tRE9NKQogICAgICAg
ICBtX3NlZWtUaW1lci5zdGFydE9uZVNob3QoMCk7CiAgICAgZWxzZQotICAgICAgICBzZWVrVGlt
ZXJGaXJlZChtX3NlZWtUaW1lcik7CisgICAgICAgIHNlZWtUaW1lckZpcmVkKCk7CiB9CiAKLXZv
aWQgSFRNTE1lZGlhRWxlbWVudDo6c2Vla1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBIVE1MTWVk
aWFFbGVtZW50OjpzZWVrVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX3BsYXllcikgewogICAg
ICAgICBtX3NlZWtpbmcgPSBmYWxzZTsKQEAgLTMxMDcsNyArMzEwNyw3IEBAIGRvdWJsZSBIVE1M
TWVkaWFFbGVtZW50OjpuZXh0U2NhblJhdGUoKQogICAgIHJldHVybiByYXRlOwogfQogCi12b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6OnNjYW5UaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6c2NhblRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX3NjYW5UeXBlID09IFNlZWsp
IHsKICAgICAgICAgZG91YmxlIHNlZWtUaW1lID0gbV9zY2FuRGlyZWN0aW9uID09IEZvcndhcmQg
PyBTZWVrVGltZSA6IC1TZWVrVGltZTsKQEAgLTMxMjksNyArMzEyOSw3IEBAIHZvaWQgSFRNTE1l
ZGlhRWxlbWVudDo6c3RhcnRQbGF5YmFja1Byb2dyZXNzVGltZXIoKQogICAgIG1fcGxheWJhY2tQ
cm9ncmVzc1RpbWVyLnN0YXJ0UmVwZWF0aW5nKG1heFRpbWV1cGRhdGVFdmVudEZyZXF1ZW5jeSk7
CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cGxheWJhY2tQcm9ncmVzc1RpbWVyRmlyZWQo
VGltZXImKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5YmFja1Byb2dyZXNzVGltZXJGaXJl
ZCgpCiB7CiAgICAgQVNTRVJUKG1fcGxheWVyKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuaAppbmRleCA3MTlkNzE2Yzg3ZDdhYjkzOWZmOTU1MTg5OTdkOGM2NzZmNmE5ZTRl
Li40ODI5ZTBkNTVjMzE5ZGFhMTY3MzdmMDhkMmRjOGRhNzJjZTU3YmRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaApAQCAtNTk1LDExICs1OTUsMTEgQEAgcHJpdmF0ZToK
ICAgICB2aXJ0dWFsIGJvb2wgbWVkaWFQbGF5ZXJJc0luTWVkaWFEb2N1bWVudCgpIGNvbnN0IG92
ZXJyaWRlIGZpbmFsOwogICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckVuZ2luZUZhaWxlZFRv
TG9hZCgpIGNvbnN0IG92ZXJyaWRlIGZpbmFsOwogCi0gICAgdm9pZCBsb2FkVGltZXJGaXJlZChU
aW1lciYpOwotICAgIHZvaWQgcHJvZ3Jlc3NFdmVudFRpbWVyRmlyZWQoVGltZXImKTsKLSAgICB2
b2lkIHBsYXliYWNrUHJvZ3Jlc3NUaW1lckZpcmVkKFRpbWVyJik7Ci0gICAgdm9pZCBzY2FuVGlt
ZXJGaXJlZChUaW1lciYpOwotICAgIHZvaWQgc2Vla1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2
b2lkIGxvYWRUaW1lckZpcmVkKCk7CisgICAgdm9pZCBwcm9ncmVzc0V2ZW50VGltZXJGaXJlZCgp
OworICAgIHZvaWQgcGxheWJhY2tQcm9ncmVzc1RpbWVyRmlyZWQoKTsKKyAgICB2b2lkIHNjYW5U
aW1lckZpcmVkKCk7CisgICAgdm9pZCBzZWVrVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRQ
bGF5YmFja1Byb2dyZXNzVGltZXIoKTsKICAgICB2b2lkIHN0YXJ0UHJvZ3Jlc3NFdmVudFRpbWVy
KCk7CiAgICAgdm9pZCBzdG9wUGVyaW9kaWNUaW1lcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MUGx1Z0luRWxlbWVudC5jcHAKaW5kZXggNTI0MGU5ZjMyNjdhZjQxOTYwM2ZlOTQyYWYxOWEx
MTY1MWFjZTI3NS4uZWNiZGU0YjEwNTdhODM0YTA5ZWZmOTFmYTgzOTI3ZWM3YjAzMGRlNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAKQEAgLTY3LDcgKzY3LDcg
QEAgdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIEhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1
Z0luRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1l
bnQpCiAgICAgOiBIVE1MRnJhbWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCiAgICAg
LCBtX2luQmVmb3JlTG9hZEV2ZW50SGFuZGxlcihmYWxzZSkKLSAgICAsIG1fc3dhcFJlbmRlcmVy
VGltZXIodGhpcywgJkhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQor
ICAgICwgbV9zd2FwUmVuZGVyZXJUaW1lcigqdGhpcywgJkhUTUxQbHVnSW5FbGVtZW50Ojpzd2Fw
UmVuZGVyZXJUaW1lckZpcmVkKQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAg
ICwgbV9OUE9iamVjdCgwKQogI2VuZGlmCkBAIC0zMDAsNyArMzAwLDcgQEAgUmVuZGVyUHRyPFJl
bmRlckVsZW1lbnQ+IEhUTUxQbHVnSW5FbGVtZW50OjpjcmVhdGVFbGVtZW50UmVuZGVyZXIoUGFz
c1JlZjxSZW5kZXIKICAgICByZXR1cm4gY3JlYXRlUmVuZGVyZXI8UmVuZGVyRW1iZWRkZWRPYmpl
Y3Q+KCp0aGlzLCBXVEY6Om1vdmUoc3R5bGUpKTsKIH0KIAotdm9pZCBIVE1MUGx1Z0luRWxlbWVu
dDo6c3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1lciYpCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50
Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQoZGlzcGxheVN0YXRlKCkg
PT0gUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQgfHwgZGlzcGxheVN0YXRlKCkgPT0gRGlzcGxh
eWluZ1NuYXBzaG90KTsKICAgICBpZiAodXNlckFnZW50U2hhZG93Um9vdCgpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oCmluZGV4IGQ3ZTM2NzU3NGY0MTQ0MmE1MTMxZTI4
ODgxOWEwMzBlMWViZWQyOTEuLjhjMTk1Zjg0ZDRjOGU2YjI5NGRiM2MyYjUzNTJiZDFiNTU1ZDA2
MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgKQEAgLTExMiw3ICsx
MTIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgYm9vbCBtX2luQmVmb3JlTG9hZEV2ZW50SGFuZGxlcjsK
IAogcHJpdmF0ZToKLSAgICB2b2lkIHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXImKTsKKyAg
ICB2b2lkIHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoKTsKICAgICBib29sIHNob3VsZE92ZXJyaWRl
UGx1Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAogICAg
IGJvb2wgZGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOyAv
LyBOb3QgaW1wbGVtZW50ZWQsIGdlbmVyYXRlcyBhIGNvbXBpbGUgZXJyb3IgaWYgc3ViY2xhc3Nl
cyBjYWxsIHRoaXMgYnkgbWlzdGFrZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVn
SW5JbWFnZUVsZW1lbnQuY3BwCmluZGV4IDY3MjA4ODU1OTQ4MDM1OTgxYWJiZTg2MDhkOGI5MWE1
ZmYyMzRjMmQuLmZhYzY2YjhiYTcwMGM0ODkyMmFhOWMxN2I3NTNmOTRlYjI2MTFkYmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcApAQCAtMTA3
LDggKzEwNyw4IEBAIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OkhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jCiAgICAgLCBtX25lZWRzV2lkZ2V0
VXBkYXRlKCFjcmVhdGVkQnlQYXJzZXIpCiAgICAgLCBtX3Nob3VsZFByZWZlclBsdWdJbnNGb3JJ
bWFnZXMocHJlZmVyUGx1Z0luc0ZvckltYWdlc09wdGlvbiA9PSBTaG91bGRQcmVmZXJQbHVnSW5z
Rm9ySW1hZ2VzKQogICAgICwgbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNrcyhmYWxz
ZSkKLSAgICAsIG1fc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1h
Z2VFbGVtZW50OjpzaW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZCwgc2ltdWxhdGVkTW91c2VD
bGlja1RpbWVyRGVsYXkpCi0gICAgLCBtX3JlbW92ZVNuYXBzaG90VGltZXIodGhpcywgJkhUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQ6OnJlbW92ZVNuYXBzaG90VGltZXJGaXJlZCkKKyAgICAsIG1fc2lt
dWxhdGVkTW91c2VDbGlja1RpbWVyKCp0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2lt
dWxhdGVkTW91c2VDbGlja1RpbWVyRmlyZWQsIHNpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lckRlbGF5
KQorICAgICwgbV9yZW1vdmVTbmFwc2hvdFRpbWVyKCp0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxl
bWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKQogICAgICwgbV9jcmVhdGVkRHVyaW5nVXNl
ckdlc3R1cmUoU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAg
LCBtX2lzUmVzdGFydGVkUGx1Z2luKGZhbHNlKQogICAgICwgbV9uZWVkc0NoZWNrRm9yU2l6ZUNo
YW5nZShmYWxzZSkKQEAgLTM5OSw3ICszOTksNyBAQCBib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQ6OnBhcnRPZlNuYXBzaG90T3ZlcmxheShOb2RlKiBub2RlKQogICAgIHJldHVybiBub2RlICYm
IHNuYXBzaG90TGFiZWwgJiYgKG5vZGUgPT0gc25hcHNob3RMYWJlbC5nZXQoKSB8fCBub2RlLT5p
c0Rlc2NlbmRhbnRPZihzbmFwc2hvdExhYmVsLmdldCgpKSk7CiB9CiAKLXZvaWQgSFRNTFBsdWdJ
bkltYWdlRWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKCkKIHsKICAgICBt
X3NuYXBzaG90SW1hZ2UgPSBudWxscHRyOwogICAgIG1faXNSZXN0YXJ0ZWRQbHVnaW4gPSBmYWxz
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgKaW5kZXgg
ZjE3ZWY2ZTg4ZWQwMDU0YjVhZTJlNzVlYWMxNTQwMjQzOGFlZThiYi4uODIwZmI3MjJhZDI2NzQ0
NTBmOTFiYmJlMWU3MjA1ZDQ5MmRjMzIzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
UGx1Z0luSW1hZ2VFbGVtZW50LmgKQEAgLTEzNiw3ICsxMzYsNyBAQCBwcml2YXRlOgogICAgIHZv
aWQgc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRmlyZWQoKTsKIAogICAgIHZvaWQgcmVzdGFydFNp
bWlsYXJQbHVnSW5zKCk7Ci0gICAgdm9pZCByZW1vdmVTbmFwc2hvdFRpbWVyRmlyZWQoVGltZXIm
KTsKKyAgICB2b2lkIHJlbW92ZVNuYXBzaG90VGltZXJGaXJlZCgpOwogICAgIGJvb2wgaXNUb3BM
ZXZlbEZ1bGxQYWdlUGx1Z2luKGNvbnN0IFJlbmRlckVtYmVkZGVkT2JqZWN0JikgY29uc3Q7CiAK
ICAgICBVUkwgbV9sb2FkZWRVcmw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxTb3VyY2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1l
bnQuY3BwCmluZGV4IGZkMTk2Mzk5MjcwZmQ2YjFhZmZhODQ0OTc4Y2E4MmNlMTZlNjJjNzMuLmYw
YjdlNGE0M2RiMTY1M2Q3N2NmMGY1NzViOGVjODkyOTE3NDRlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwCkBAIC00MCw3ICs0MCw3IEBAIHVzaW5nIG5hbWVz
cGFjZSBIVE1MTmFtZXM7CiAKIGlubGluZSBIVE1MU291cmNlRWxlbWVudDo6SFRNTFNvdXJjZUVs
ZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50KQog
ICAgIDogSFRNTEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCi0gICAgLCBtX2Vycm9yRXZlbnRU
aW1lcih0aGlzLCAmSFRNTFNvdXJjZUVsZW1lbnQ6OmVycm9yRXZlbnRUaW1lckZpcmVkKQorICAg
ICwgbV9lcnJvckV2ZW50VGltZXIoKnRoaXMsICZIVE1MU291cmNlRWxlbWVudDo6ZXJyb3JFdmVu
dFRpbWVyRmlyZWQpCiB7CiAgICAgTE9HKE1lZGlhLCAiSFRNTFNvdXJjZUVsZW1lbnQ6OkhUTUxT
b3VyY2VFbGVtZW50IC0gJXAiLCB0aGlzKTsKICAgICBBU1NFUlQoaGFzVGFnTmFtZShzb3VyY2VU
YWcpKTsKQEAgLTExMCw3ICsxMTAsNyBAQCB2b2lkIEhUTUxTb3VyY2VFbGVtZW50OjpjYW5jZWxQ
ZW5kaW5nRXJyb3JFdmVudCgpCiAgICAgbV9lcnJvckV2ZW50VGltZXIuc3RvcCgpOwogfQogCi12
b2lkIEhUTUxTb3VyY2VFbGVtZW50OjplcnJvckV2ZW50VGltZXJGaXJlZChUaW1lciYpCit2b2lk
IEhUTUxTb3VyY2VFbGVtZW50OjplcnJvckV2ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgTE9HKE1l
ZGlhLCAiSFRNTFNvdXJjZUVsZW1lbnQ6OmVycm9yRXZlbnRUaW1lckZpcmVkIC0gJXAiLCB0aGlz
KTsKICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmVycm9yRXZl
bnQsIGZhbHNlLCB0cnVlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxT
b3VyY2VFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTb3VyY2VFbGVtZW50LmgK
aW5kZXggMTFjNTVhMGY4OTRkODBmZDEyMTAwZGNhMDA4Yjk5MjZiZmNkOGQzYi4uNGNhNTI4ZDI4
MWI2ZDVlY2I2ZTMwMmFmYmVhMGQ1YmQwOTk5YTIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFNvdXJjZUVsZW1lbnQuaApAQCAtNTIsNyArNTIsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwg
dm9pZCByZW1vdmVkRnJvbShDb250YWluZXJOb2RlJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBi
b29sIGlzVVJMQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpIGNvbnN0IG92ZXJyaWRlOwogCi0g
ICAgdm9pZCBlcnJvckV2ZW50VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgZXJyb3JFdmVu
dFRpbWVyRmlyZWQoKTsKIAogICAgIFRpbWVyIG1fZXJyb3JFdmVudFRpbWVyOwogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCmluZGV4IDc0OTEzODhhYWJiZjk1NDI2
ZWFhMWIzM2JmMTQxZTc0NTQ4MjQ2YWIuLjA3YzJjYzg2ZmJmZmMxNTI0YzVjNjQ4MWNlOWEzMzZi
OWUzZGU4NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcApAQCAt
NTIsNyArNTIsNyBAQCBzdGF0aWMgU3RyaW5nIHVybEZvckxvZ2dpbmdUcmFjayhjb25zdCBVUkwm
IHVybCkKICAgICAKIGlubGluZSBIVE1MVHJhY2tFbGVtZW50OjpIVE1MVHJhY2tFbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkKICAgICA6IEhU
TUxFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KQotICAgICwgbV9sb2FkVGltZXIodGhpcywgJkhU
TUxUcmFja0VsZW1lbnQ6OmxvYWRUaW1lckZpcmVkKQorICAgICwgbV9sb2FkVGltZXIoKnRoaXMs
ICZIVE1MVHJhY2tFbGVtZW50Ojpsb2FkVGltZXJGaXJlZCkKIHsKICAgICBMT0coTWVkaWEsICJI
VE1MVHJhY2tFbGVtZW50OjpIVE1MVHJhY2tFbGVtZW50IC0gJXAiLCB0aGlzKTsKICAgICBBU1NF
UlQoaGFzVGFnTmFtZSh0cmFja1RhZykpOwpAQCAtMjAwLDcgKzIwMCw3IEBAIHZvaWQgSFRNTFRy
YWNrRWxlbWVudDo6c2NoZWR1bGVMb2FkKCkKICAgICBtX2xvYWRUaW1lci5zdGFydE9uZVNob3Qo
MCk7CiB9CiAKLXZvaWQgSFRNTFRyYWNrRWxlbWVudDo6bG9hZFRpbWVyRmlyZWQoVGltZXImKQor
dm9pZCBIVE1MVHJhY2tFbGVtZW50Ojpsb2FkVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFmYXN0
SGFzQXR0cmlidXRlKHNyY0F0dHIpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFRyYWNrRWxlbWVudC5oCmluZGV4IDEyMWI5YzM2MDVmZmZjZWJmNGMwNTcxZmYzYTc4NmVj
YjRiY2M5MDkuLjQ0ODg5YTVkODY4ZjVlY2ZmNTJkMWE5YzE3NjdiNmU0YTA2YmNiNDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5oCkBAIC03NSw3ICs3NSw3IEBAIHByaXZh
dGU6CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikg
Y29uc3Qgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGxvYWRUaW1lckZpcmVkKFRpbWVyJik7CisgICAg
dm9pZCBsb2FkVGltZXJGaXJlZCgpOwogCiAgICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVt
ZW50KCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250
cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmNwcAppbmRl
eCA0MTMxNjc0NDhmZGZmYjAxNTkxOWVjYTI3NWNkMGU2ZWY3MGU4YTc2Li45OTBkYWVhMGI5ZjAx
NWI4ZDk5ZTc0NDFmZGU0YTVjYWY0NDM2NDFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL01lZGlhQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUNv
bnRyb2xsZXIuY3BwCkBAIC01MCwxMiArNTAsMTIgQEAgTWVkaWFDb250cm9sbGVyOjpNZWRpYUNv
bnRyb2xsZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICAsIG1fbXV0ZWQo
ZmFsc2UpCiAgICAgLCBtX3JlYWR5U3RhdGUoSEFWRV9OT1RISU5HKQogICAgICwgbV9wbGF5YmFj
a1N0YXRlKFdBSVRJTkcpCi0gICAgLCBtX2FzeW5jRXZlbnRUaW1lcih0aGlzLCAmTWVkaWFDb250
cm9sbGVyOjphc3luY0V2ZW50VGltZXJGaXJlZCkKLSAgICAsIG1fY2xlYXJQb3NpdGlvblRpbWVy
KHRoaXMsICZNZWRpYUNvbnRyb2xsZXI6OmNsZWFyUG9zaXRpb25UaW1lckZpcmVkKQorICAgICwg
bV9hc3luY0V2ZW50VGltZXIoKnRoaXMsICZNZWRpYUNvbnRyb2xsZXI6OmFzeW5jRXZlbnRUaW1l
ckZpcmVkKQorICAgICwgbV9jbGVhclBvc2l0aW9uVGltZXIoKnRoaXMsICZNZWRpYUNvbnRyb2xs
ZXI6OmNsZWFyUG9zaXRpb25UaW1lckZpcmVkKQogICAgICwgbV9jbG9zZWRDYXB0aW9uc1Zpc2li
bGUoZmFsc2UpCiAgICAgLCBtX2Nsb2NrKENsb2NrOjpjcmVhdGUoKSkKICAgICAsIG1fc2NyaXB0
RXhlY3V0aW9uQ29udGV4dChjb250ZXh0KQotICAgICwgbV90aW1ldXBkYXRlVGltZXIodGhpcywg
Jk1lZGlhQ29udHJvbGxlcjo6dGltZXVwZGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWV1cGRh
dGVUaW1lcigqdGhpcywgJk1lZGlhQ29udHJvbGxlcjo6dGltZXVwZGF0ZVRpbWVyRmlyZWQpCiAg
ICAgLCBtX3ByZXZpb3VzVGltZXVwZGF0ZVRpbWUoMCkKIHsKIH0KQEAgLTUzOCw3ICs1MzgsNyBA
QCB2b2lkIE1lZGlhQ29udHJvbGxlcjo6c2NoZWR1bGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcm
IGV2ZW50TmFtZSkKICAgICAgICAgbV9hc3luY0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOwog
fQogCi12b2lkIE1lZGlhQ29udHJvbGxlcjo6YXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXImKQor
dm9pZCBNZWRpYUNvbnRyb2xsZXI6OmFzeW5jRXZlbnRUaW1lckZpcmVkKCkKIHsKICAgICBWZWN0
b3I8UmVmUHRyPEV2ZW50Pj4gcGVuZGluZ0V2ZW50czsKIApAQCAtNTQ4LDcgKzU0OCw3IEBAIHZv
aWQgTWVkaWFDb250cm9sbGVyOjphc3luY0V2ZW50VGltZXJGaXJlZChUaW1lciYpCiAgICAgICAg
IGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhD
RVBUSU9OKTsKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xsZXI6OmNsZWFyUG9zaXRpb25UaW1lckZp
cmVkKFRpbWVyJikKK3ZvaWQgTWVkaWFDb250cm9sbGVyOjpjbGVhclBvc2l0aW9uVGltZXJGaXJl
ZCgpCiB7CiAgICAgbV9wb3NpdGlvbiA9IE1lZGlhUGxheWVyOjppbnZhbGlkVGltZSgpOwogfQpA
QCAtNjcyLDcgKzY3Miw3IEBAIHZvaWQgTWVkaWFDb250cm9sbGVyOjpzdGFydFRpbWV1cGRhdGVU
aW1lcigpCiAgICAgbV90aW1ldXBkYXRlVGltZXIuc3RhcnRSZXBlYXRpbmcobWF4VGltZXVwZGF0
ZUV2ZW50RnJlcXVlbmN5KTsKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xsZXI6OnRpbWV1cGRhdGVU
aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTWVkaWFDb250cm9sbGVyOjp0aW1ldXBkYXRlVGltZXJG
aXJlZCgpCiB7CiAgICAgc2NoZWR1bGVUaW1ldXBkYXRlRXZlbnQoKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL01lZGlhQ29udHJvbGxlci5oCmluZGV4IDI1NDE5Y2JiODM4NDRiYTQ0NDIxNTM3NGE1NTNm
NmZlY2NlNzU4ZTEuLjFkOWMxYjNlMTAwNTRmZmFmMTE5M2YwYTdkMzZlN2EzNTkwYWZmZjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFDb250cm9sbGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUNvbnRyb2xsZXIuaApAQCAtMTIzLDExICsxMjMsMTEgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHVwZGF0ZU1lZGlhRWxlbWVudHMoKTsKICAgICB2b2lkIGJyaW5n
RWxlbWVudFVwVG9TcGVlZChIVE1MTWVkaWFFbGVtZW50Kik7CiAgICAgdm9pZCBzY2hlZHVsZUV2
ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnROYW1lKTsKLSAgICB2b2lkIGFzeW5jRXZlbnRU
aW1lckZpcmVkKFRpbWVyJik7Ci0gICAgdm9pZCBjbGVhclBvc2l0aW9uVGltZXJGaXJlZChUaW1l
ciYpOworICAgIHZvaWQgYXN5bmNFdmVudFRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIGNsZWFyUG9z
aXRpb25UaW1lckZpcmVkKCk7CiAgICAgYm9vbCBoYXNFbmRlZCgpIGNvbnN0OwogICAgIHZvaWQg
c2NoZWR1bGVUaW1ldXBkYXRlRXZlbnQoKTsKLSAgICB2b2lkIHRpbWV1cGRhdGVUaW1lckZpcmVk
KFRpbWVyJik7CisgICAgdm9pZCB0aW1ldXBkYXRlVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3Rh
cnRUaW1ldXBkYXRlVGltZXIoKTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9NZWRpYURvY3VtZW50LmNwcAppbmRleCBkNjU2OWE0M2JhZWNkMzAzNjg3MTIxMWI1ZjllYWE0
Mzk1M2U1ZGIzLi5kMmM3YTVmM2NmYTI3YjhjMzc2YTlmYTk0YWU5ZWEzM2E2NzQ5NDMyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvTWVkaWFEb2N1bWVudC5jcHAKQEAgLTE0MCw3ICsxNDAsNyBAQCB2b2lk
IE1lZGlhRG9jdW1lbnRQYXJzZXI6OmFwcGVuZEJ5dGVzKERvY3VtZW50V3JpdGVyJiwgY29uc3Qg
Y2hhciosIHNpemVfdCkKICAgICAKIE1lZGlhRG9jdW1lbnQ6Ok1lZGlhRG9jdW1lbnQoRnJhbWUq
IGZyYW1lLCBjb25zdCBVUkwmIHVybCkKICAgICA6IEhUTUxEb2N1bWVudChmcmFtZSwgdXJsLCBN
ZWRpYURvY3VtZW50Q2xhc3MpCi0gICAgLCBtX3JlcGxhY2VNZWRpYUVsZW1lbnRUaW1lcih0aGlz
LCAmTWVkaWFEb2N1bWVudDo6cmVwbGFjZU1lZGlhRWxlbWVudFRpbWVyRmlyZWQpCisgICAgLCBt
X3JlcGxhY2VNZWRpYUVsZW1lbnRUaW1lcigqdGhpcywgJk1lZGlhRG9jdW1lbnQ6OnJlcGxhY2VN
ZWRpYUVsZW1lbnRUaW1lckZpcmVkKQogewogICAgIHNldENvbXBhdGliaWxpdHlNb2RlKERvY3Vt
ZW50Q29tcGF0aWJpbGl0eU1vZGU6OlF1aXJrc01vZGUpOwogICAgIGxvY2tDb21wYXRpYmlsaXR5
TW9kZSgpOwpAQCAtMjMxLDcgKzIzMSw3IEBAIHZvaWQgTWVkaWFEb2N1bWVudDo6bWVkaWFFbGVt
ZW50U2F3VW5zdXBwb3J0ZWRUcmFja3MoKQogICAgIG1fcmVwbGFjZU1lZGlhRWxlbWVudFRpbWVy
LnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBNZWRpYURvY3VtZW50OjpyZXBsYWNlTWVkaWFF
bGVtZW50VGltZXJGaXJlZChUaW1lciYpCit2b2lkIE1lZGlhRG9jdW1lbnQ6OnJlcGxhY2VNZWRp
YUVsZW1lbnRUaW1lckZpcmVkKCkKIHsKICAgICBIVE1MRWxlbWVudCogaHRtbEJvZHkgPSBib2R5
KCk7CiAgICAgaWYgKCFodG1sQm9keSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
TWVkaWFEb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYURvY3VtZW50LmgKaW5k
ZXggNDNiNWY0NmM2MmRkMGYxYzlmMzg3MzM2YzQ4ZTM3NmMyYmMyNDE5OS4uOWQ3MWNlMjhkZjlh
ZWY4ZTUxNzM5ZGE5M2UxNjBmZjI4NDQ0ZmJjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9NZWRpYURvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYURvY3Vt
ZW50LmgKQEAgLTUwLDcgKzUwLDcgQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1YWwgdm9pZCBkZWZh
dWx0RXZlbnRIYW5kbGVyKEV2ZW50Kikgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIHJlcGxhY2VNZWRp
YUVsZW1lbnRUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCByZXBsYWNlTWVkaWFFbGVtZW50
VGltZXJGaXJlZCgpOwogCiAgICAgVGltZXIgbV9yZXBsYWNlTWVkaWFFbGVtZW50VGltZXI7CiAg
ICAgU3RyaW5nIG1fb3V0Z29pbmdSZWZlcnJlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvU2VhcmNoSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvU2VhcmNoSW5w
dXRUeXBlLmNwcAppbmRleCAwYmY5ZGZjMzRhYjVhZmQyNjMwOTgwMzJiOWMwZmRjMTYzMTM3ZDEz
Li5mYTY4YjI0MzRjZDU4MGYzYTg3MDViZjNjZmY2ODA3NDhiM2M2Mjc4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL1NlYXJjaElucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9TZWFyY2hJbnB1dFR5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIFNlYXJjaElucHV0
VHlwZTo6U2VhcmNoSW5wdXRUeXBlKEhUTUxJbnB1dEVsZW1lbnQmIGVsZW1lbnQpCiAgICAgOiBC
YXNlVGV4dElucHV0VHlwZShlbGVtZW50KQogICAgICwgbV9yZXN1bHRzQnV0dG9uKG51bGxwdHIp
CiAgICAgLCBtX2NhbmNlbEJ1dHRvbihudWxscHRyKQotICAgICwgbV9zZWFyY2hFdmVudFRpbWVy
KHRoaXMsICZTZWFyY2hJbnB1dFR5cGU6OnNlYXJjaEV2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1f
c2VhcmNoRXZlbnRUaW1lcigqdGhpcywgJlNlYXJjaElucHV0VHlwZTo6c2VhcmNoRXZlbnRUaW1l
ckZpcmVkKQogewogfQogCkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBTZWFyY2hJbnB1dFR5cGU6
OnN0b3BTZWFyY2hFdmVudFRpbWVyKCkKICAgICBtX3NlYXJjaEV2ZW50VGltZXIuc3RvcCgpOwog
fQogCi12b2lkIFNlYXJjaElucHV0VHlwZTo6c2VhcmNoRXZlbnRUaW1lckZpcmVkKFRpbWVyKikK
K3ZvaWQgU2VhcmNoSW5wdXRUeXBlOjpzZWFyY2hFdmVudFRpbWVyRmlyZWQoKQogewogICAgIGVs
ZW1lbnQoKS5vblNlYXJjaCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9T
ZWFyY2hJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmgK
aW5kZXggODgzYTEyYjE3NjBiZDZhZTk2Y2E2ODk2YmFiMmUxOWIwNTlkOTIzOC4uMTVkZGY5Mjhk
Mzg0N2Q2MGRjZTMzODVmOWJkZDFiMjMyNGNiY2QzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9TZWFyY2hJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1NlYXJj
aElucHV0VHlwZS5oCkBAIC02MSw3ICs2MSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29s
IHNpemVTaG91bGRJbmNsdWRlRGVjb3JhdGlvbihpbnQgZGVmYXVsdFNpemUsIGludCYgcHJlZmVy
cmVkU2l6ZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBmbG9hdCBkZWNvcmF0aW9uV2lk
dGgoKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgc2VhcmNoRXZlbnRUaW1lckZpcmVkKFRp
bWVyKik7CisgICAgdm9pZCBzZWFyY2hFdmVudFRpbWVyRmlyZWQoKTsKICAgICBib29sIHNlYXJj
aEV2ZW50c1Nob3VsZEJlRGlzcGF0Y2hlZCgpIGNvbnN0OwogICAgIHZvaWQgc3RhcnRTZWFyY2hF
dmVudFRpbWVyKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVmFsaWRhdGlv
bk1lc3NhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9WYWxpZGF0aW9uTWVzc2FnZS5jcHAK
aW5kZXggYWI5NjE4ZDlkODk4MjAyYmFhOGI3YTEzMWRjN2NlNWVmYzE3NzA3Ni4uOGZiYzBlODkz
ZWI5NjQyZmNlZGYzMDRjOTU2OTVmY2ZkZjUwZjZlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9WYWxpZGF0aW9uTWVzc2FnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9W
YWxpZGF0aW9uTWVzc2FnZS5jcHAKQEAgLTEwNywxMyArMTA3LDEzIEBAIHZvaWQgVmFsaWRhdGlv
bk1lc3NhZ2U6OnNldE1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIEFTU0VSVCgh
bWVzc2FnZS5pc0VtcHR5KCkpOwogICAgIG1fbWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgaWYgKCFt
X2J1YmJsZSkKLSAgICAgICAgbV90aW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KHRoaXMs
ICZWYWxpZGF0aW9uTWVzc2FnZTo6YnVpbGRCdWJibGVUcmVlKTsKKyAgICAgICAgbV90aW1lciA9
IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmVmFsaWRhdGlvbk1lc3NhZ2U6OmJ1aWxk
QnViYmxlVHJlZSk7CiAgICAgZWxzZQotICAgICAgICBtX3RpbWVyID0gc3RkOjptYWtlX3VuaXF1
ZTxUaW1lcj4odGhpcywgJlZhbGlkYXRpb25NZXNzYWdlOjpzZXRNZXNzYWdlRE9NQW5kU3RhcnRU
aW1lcik7CisgICAgICAgIG1fdGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywg
JlZhbGlkYXRpb25NZXNzYWdlOjpzZXRNZXNzYWdlRE9NQW5kU3RhcnRUaW1lcik7CiAgICAgbV90
aW1lci0+c3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpzZXRN
ZXNzYWdlRE9NQW5kU3RhcnRUaW1lcihUaW1lciopCit2b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpz
ZXRNZXNzYWdlRE9NQW5kU3RhcnRUaW1lcigpCiB7CiAgICAgQVNTRVJUKCF2YWxpZGF0aW9uTWVz
c2FnZUNsaWVudCgpKTsKICAgICBBU1NFUlQobV9tZXNzYWdlSGVhZGluZyk7CkBAIC0xMzYsNyAr
MTM2LDcgQEAgdm9pZCBWYWxpZGF0aW9uTWVzc2FnZTo6c2V0TWVzc2FnZURPTUFuZFN0YXJ0VGlt
ZXIoVGltZXIqKQogICAgIGlmIChtYWduaWZpY2F0aW9uIDw9IDApCiAgICAgICAgIG1fdGltZXIg
PSBudWxscHRyOwogICAgIGVsc2UgewotICAgICAgICBtX3RpbWVyID0gc3RkOjptYWtlX3VuaXF1
ZTxUaW1lcj4odGhpcywgJlZhbGlkYXRpb25NZXNzYWdlOjpkZWxldGVCdWJibGVUcmVlKTsKKyAg
ICAgICAgbV90aW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmVmFsaWRhdGlv
bk1lc3NhZ2U6OmRlbGV0ZUJ1YmJsZVRyZWUpOwogICAgICAgICBtX3RpbWVyLT5zdGFydE9uZVNo
b3Qoc3RkOjptYXgoNS4wLCBzdGF0aWNfY2FzdDxkb3VibGU+KG1fbWVzc2FnZS5sZW5ndGgoKSkg
KiBtYWduaWZpY2F0aW9uIC8gMTAwMCkpOwogICAgIH0KIH0KQEAgLTE2NSw3ICsxNjUsNyBAQCBz
dGF0aWMgdm9pZCBhZGp1c3RCdWJibGVQb3NpdGlvbihjb25zdCBMYXlvdXRSZWN0JiBob3N0UmVj
dCwgSFRNTEVsZW1lbnQqIGJ1YmJsZQogICAgIGJ1YmJsZS0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0
eShDU1NQcm9wZXJ0eUxlZnQsIGJ1YmJsZVgsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfUFgpOwog
fQogCi12b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpidWlsZEJ1YmJsZVRyZWUoVGltZXIqKQordm9p
ZCBWYWxpZGF0aW9uTWVzc2FnZTo6YnVpbGRCdWJibGVUcmVlKCkKIHsKICAgICBBU1NFUlQoIXZh
bGlkYXRpb25NZXNzYWdlQ2xpZW50KCkpOwogICAgIFNoYWRvd1Jvb3QmIHNoYWRvd1Jvb3QgPSBt
X2VsZW1lbnQtPmVuc3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsKQEAgLTIxNiw3ICsyMTYsNyBA
QCB2b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpyZXF1ZXN0VG9IaWRlTWVzc2FnZSgpCiAgICAgfQog
CiAgICAgLy8gV2UgbXVzdCBub3QgbW9kaWZ5IHRoZSBET00gdHJlZSBpbiB0aGlzIGNvbnRleHQg
YnkgdGhlIHNhbWUgcmVhc29uIGFzIHNldE1lc3NhZ2UoKS4KLSAgICBtX3RpbWVyID0gc3RkOjpt
YWtlX3VuaXF1ZTxUaW1lcj4odGhpcywgJlZhbGlkYXRpb25NZXNzYWdlOjpkZWxldGVCdWJibGVU
cmVlKTsKKyAgICBtX3RpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZWYWxp
ZGF0aW9uTWVzc2FnZTo6ZGVsZXRlQnViYmxlVHJlZSk7CiAgICAgbV90aW1lci0+c3RhcnRPbmVT
aG90KDApOwogfQogCkBAIC0yMjcsNyArMjI3LDcgQEAgYm9vbCBWYWxpZGF0aW9uTWVzc2FnZTo6
c2hhZG93VHJlZUNvbnRhaW5zKGNvbnN0IE5vZGUmIG5vZGUpIGNvbnN0CiAgICAgcmV0dXJuICZt
X2J1YmJsZS0+dHJlZVNjb3BlKCkgPT0gJm5vZGUudHJlZVNjb3BlKCk7CiB9CiAKLXZvaWQgVmFs
aWRhdGlvbk1lc3NhZ2U6OmRlbGV0ZUJ1YmJsZVRyZWUoVGltZXIqKQordm9pZCBWYWxpZGF0aW9u
TWVzc2FnZTo6ZGVsZXRlQnViYmxlVHJlZSgpCiB7CiAgICAgQVNTRVJUKCF2YWxpZGF0aW9uTWVz
c2FnZUNsaWVudCgpKTsKICAgICBpZiAobV9idWJibGUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvVmFsaWRhdGlvbk1lc3NhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVmFs
aWRhdGlvbk1lc3NhZ2UuaAppbmRleCA5ZDYxODU3YzdmNDY5Y2ViM2ZlYTJkZGMwZDg1ODU4NDQ4
NzlhZjkyLi4yODIwYjJmOWNjM2NmNGYxMjllNTcyZWZhMTViMWUzNTRkOGEwOTQ2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1ZhbGlkYXRpb25NZXNzYWdlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9WYWxpZGF0aW9uTWVzc2FnZS5oCkBAIC02MCw5ICs2MCw5IEBAIHB1Ymxp
YzoKIHByaXZhdGU6CiAgICAgVmFsaWRhdGlvbk1lc3NhZ2VDbGllbnQqIHZhbGlkYXRpb25NZXNz
YWdlQ2xpZW50KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRNZXNzYWdlKGNvbnN0IFN0cmluZyYpOwot
ICAgIHZvaWQgc2V0TWVzc2FnZURPTUFuZFN0YXJ0VGltZXIoVGltZXIqID0gMCk7Ci0gICAgdm9p
ZCBidWlsZEJ1YmJsZVRyZWUoVGltZXIqKTsKLSAgICB2b2lkIGRlbGV0ZUJ1YmJsZVRyZWUoVGlt
ZXIqID0gMCk7CisgICAgdm9pZCBzZXRNZXNzYWdlRE9NQW5kU3RhcnRUaW1lcigpOworICAgIHZv
aWQgYnVpbGRCdWJibGVUcmVlKCk7CisgICAgdm9pZCBkZWxldGVCdWJibGVUcmVlKCk7CiAKICAg
ICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgU3RyaW5nIG1fbWVzc2Fn
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5n
Q29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0Nv
bnRleHQuY3BwCmluZGV4IDBiZTFkNDAyNzFmNWUxZjQxODA2YzA2NDEyZDc0Yjc4NDgxMzY3ZDku
LmU5NWJkNmE5Zjk1YWUwZTBmYjdhZTBmZjk2NjJkMzJkNTcxY2NkY2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcApAQCAt
NDY3LDkgKzQ2Nyw5IEBAIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0KEhUTUxDYW52YXNFbGVtZW50KiBwYXNzZWRDYW52YXMsIEdyCiAgICAgLCBBY3RpdmVET01P
YmplY3QoJnBhc3NlZENhbnZhcy0+ZG9jdW1lbnQoKSkKICAgICAsIG1fY29udGV4dCgwKQogICAg
ICwgbV9kcmF3aW5nQnVmZmVyKDApCi0gICAgLCBtX2Rpc3BhdGNoQ29udGV4dExvc3RFdmVudFRp
bWVyKHRoaXMsICZXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmRpc3BhdGNoQ29udGV4dExvc3RFdmVu
dCkKKyAgICAsIG1fZGlzcGF0Y2hDb250ZXh0TG9zdEV2ZW50VGltZXIoKnRoaXMsICZXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OmRpc3BhdGNoQ29udGV4dExvc3RFdmVudCkKICAgICAsIG1fcmVzdG9y
ZUFsbG93ZWQoZmFsc2UpCi0gICAgLCBtX3Jlc3RvcmVUaW1lcih0aGlzLCAmV2ViR0xSZW5kZXJp
bmdDb250ZXh0OjptYXliZVJlc3RvcmVDb250ZXh0KQorICAgICwgbV9yZXN0b3JlVGltZXIoKnRo
aXMsICZXZWJHTFJlbmRlcmluZ0NvbnRleHQ6Om1heWJlUmVzdG9yZUNvbnRleHQpCiAgICAgLCBt
X2dlbmVyYXRlZEltYWdlQ2FjaGUoMCkKICAgICAsIG1fY29udGV4dExvc3QoZmFsc2UpCiAgICAg
LCBtX2NvbnRleHRMb3N0TW9kZShTeW50aGV0aWNMb3N0Q29udGV4dCkKQEAgLTQ4Nyw5ICs0ODcs
OSBAQCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4dChIVE1MQ2Fu
dmFzRWxlbWVudCogcGFzc2VkQ2FudmFzLCBQYQogICAgICwgQWN0aXZlRE9NT2JqZWN0KCZwYXNz
ZWRDYW52YXMtPmRvY3VtZW50KCkpCiAgICAgLCBtX2NvbnRleHQoY29udGV4dCkKICAgICAsIG1f
ZHJhd2luZ0J1ZmZlcigwKQotICAgICwgbV9kaXNwYXRjaENvbnRleHRMb3N0RXZlbnRUaW1lcih0
aGlzLCAmV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpkaXNwYXRjaENvbnRleHRMb3N0RXZlbnQpCisg
ICAgLCBtX2Rpc3BhdGNoQ29udGV4dExvc3RFdmVudFRpbWVyKCp0aGlzLCAmV2ViR0xSZW5kZXJp
bmdDb250ZXh0OjpkaXNwYXRjaENvbnRleHRMb3N0RXZlbnQpCiAgICAgLCBtX3Jlc3RvcmVBbGxv
d2VkKGZhbHNlKQotICAgICwgbV9yZXN0b3JlVGltZXIodGhpcywgJldlYkdMUmVuZGVyaW5nQ29u
dGV4dDo6bWF5YmVSZXN0b3JlQ29udGV4dCkKKyAgICAsIG1fcmVzdG9yZVRpbWVyKCp0aGlzLCAm
V2ViR0xSZW5kZXJpbmdDb250ZXh0OjptYXliZVJlc3RvcmVDb250ZXh0KQogICAgICwgbV9nZW5l
cmF0ZWRJbWFnZUNhY2hlKDQpCiAgICAgLCBtX2NvbnRleHRMb3N0KGZhbHNlKQogICAgICwgbV9j
b250ZXh0TG9zdE1vZGUoU3ludGhldGljTG9zdENvbnRleHQpCkBAIC01OTIzLDcgKzU5MjMsNyBA
QCB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6cmVzdG9yZVN0YXRlc0FmdGVyVmVydGV4QXR0
cmliMFNpbXVsYXRpb24oKQogICAgIG1fY29udGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0NvbnRl
eHQzRDo6QVJSQVlfQlVGRkVSLCBvYmplY3RPclplcm8obV9ib3VuZEFycmF5QnVmZmVyLmdldCgp
KSk7CiB9CiAKLXZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpkaXNwYXRjaENvbnRleHRMb3N0
RXZlbnQoVGltZXIqKQordm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmRpc3BhdGNoQ29udGV4
dExvc3RFdmVudCgpCiB7CiAgICAgUmVmUHRyPFdlYkdMQ29udGV4dEV2ZW50PiBldmVudCA9IFdl
YkdMQ29udGV4dEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLndlYmdsY29udGV4dGxvc3RFdmVu
dCwgZmFsc2UsIHRydWUsICIiKTsKICAgICBjYW52YXMoKS0+ZGlzcGF0Y2hFdmVudChldmVudCk7
CkBAIC01OTMyLDcgKzU5MzIsNyBAQCB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6ZGlzcGF0
Y2hDb250ZXh0TG9zdEV2ZW50KFRpbWVyKikKICAgICAgICAgbV9yZXN0b3JlVGltZXIuc3RhcnRP
bmVTaG90KDApOwogfQogCi12b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6bWF5YmVSZXN0b3Jl
Q29udGV4dChUaW1lciopCit2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6bWF5YmVSZXN0b3Jl
Q29udGV4dCgpCiB7CiAgICAgQVNTRVJUKG1fY29udGV4dExvc3QpOwogICAgIGlmICghbV9jb250
ZXh0TG9zdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVu
ZGVyaW5nQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJp
bmdDb250ZXh0LmgKaW5kZXggMzQ4YmVmYjQ0ZTMxMTRkYTZlNWI0MGUwOTUzMjY1ZjMxMWEzZWY3
MC4uZmFmNTg0NjgwNjNkZTJkYmY4MGRlZTRkY2EyYjdkZjNiOGY4Y2FiNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmgKQEAgLTc2
MSw5ICs3NjEsOSBAQCBwcml2YXRlOgogICAgIGJvb2wgc2ltdWxhdGVWZXJ0ZXhBdHRyaWIwKEdD
M0RzaXplaSBudW1WZXJ0ZXgpOwogICAgIHZvaWQgcmVzdG9yZVN0YXRlc0FmdGVyVmVydGV4QXR0
cmliMFNpbXVsYXRpb24oKTsKIAotICAgIHZvaWQgZGlzcGF0Y2hDb250ZXh0TG9zdEV2ZW50KFRp
bWVyKik7CisgICAgdm9pZCBkaXNwYXRjaENvbnRleHRMb3N0RXZlbnQoKTsKICAgICAvLyBIZWxw
ZXIgZm9yIHJlc3RvcmF0aW9uIGFmdGVyIGNvbnRleHQgbG9zdC4KLSAgICB2b2lkIG1heWJlUmVz
dG9yZUNvbnRleHQoVGltZXIqKTsKKyAgICB2b2lkIG1heWJlUmVzdG9yZUNvbnRleHQoKTsKIAog
ICAgIC8vIERldGVybWluZSBpZiB3ZSBhcmUgcnVubmluZyBwcml2aWxlZ2VkIGNvZGUgaW4gdGhl
IGJyb3dzZXIsIGZvciBleGFtcGxlLAogICAgIC8vIGEgU2FmYXJpIG9yIENocm9tZSBleHRlbnNp
b24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUGFyc2VyU2No
ZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVs
ZXIuY3BwCmluZGV4IDgyNzgxMTAwOTA1Y2EwNDE0NTRhMjliOGFhODJkMDhjNWE0MGQwNWQuLjBl
NDJmZGVmMGIyNmMzMWI1MjE2NDY0NWM5ZDk5MWVhZWI0ODA1NjggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJTY2hlZHVsZXIuY3BwCkBAIC04OCw3ICs4
OCw3IEBAIEhUTUxQYXJzZXJTY2hlZHVsZXI6OkhUTUxQYXJzZXJTY2hlZHVsZXIoSFRNTERvY3Vt
ZW50UGFyc2VyJiBwYXJzZXIpCiAgICAgOiBtX3BhcnNlcihwYXJzZXIpCiAgICAgLCBtX3BhcnNl
clRpbWVMaW1pdChwYXJzZXJUaW1lTGltaXQobV9wYXJzZXIuZG9jdW1lbnQoKS0+cGFnZSgpKSkK
ICAgICAsIG1fcGFyc2VyQ2h1bmtTaXplKGRlZmF1bHRQYXJzZXJDaHVua1NpemUpCi0gICAgLCBt
X2NvbnRpbnVlTmV4dENodW5rVGltZXIodGhpcywgJkhUTUxQYXJzZXJTY2hlZHVsZXI6OmNvbnRp
bnVlTmV4dENodW5rVGltZXJGaXJlZCkKKyAgICAsIG1fY29udGludWVOZXh0Q2h1bmtUaW1lcigq
dGhpcywgJkhUTUxQYXJzZXJTY2hlZHVsZXI6OmNvbnRpbnVlTmV4dENodW5rVGltZXJGaXJlZCkK
ICAgICAsIG1faXNTdXNwZW5kZWRXaXRoQWN0aXZlVGltZXIoZmFsc2UpCiAjaWYgIUFTU0VSVF9E
SVNBQkxFRAogICAgICwgbV9zdXNwZW5kZWQoZmFsc2UpCkBAIC0xMDEsMTAgKzEwMSw5IEBAIEhU
TUxQYXJzZXJTY2hlZHVsZXI6On5IVE1MUGFyc2VyU2NoZWR1bGVyKCkKICAgICBtX2NvbnRpbnVl
TmV4dENodW5rVGltZXIuc3RvcCgpOwogfQogCi12b2lkIEhUTUxQYXJzZXJTY2hlZHVsZXI6OmNv
bnRpbnVlTmV4dENodW5rVGltZXJGaXJlZChUaW1lciYgdGltZXIpCit2b2lkIEhUTUxQYXJzZXJT
Y2hlZHVsZXI6OmNvbnRpbnVlTmV4dENodW5rVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKCFt
X3N1c3BlbmRlZCk7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2NvbnRp
bnVlTmV4dENodW5rVGltZXIpOwogCiAgICAgLy8gRklYTUU6IFRoZSB0aW1lciBjbGFzcyBzaG91
bGQgaGFuZGxlIHRpbWVyIHByaW9yaXRpZXMgaW5zdGVhZCBvZiB0aGlzIGNvZGUuCiAgICAgLy8g
SWYgYSBsYXlvdXQgaXMgc2NoZWR1bGVkLCB3YWl0IGFnYWluIHRvIGxldCB0aGUgbGF5b3V0IHRp
bWVyIHJ1biBmaXJzdC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hU
TUxQYXJzZXJTY2hlZHVsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJz
ZXJTY2hlZHVsZXIuaAppbmRleCBhYjdlMmVkODFkMWQ5MGQ3MjBlNzdhNTM0ZjFkOGIzYjIwYjY3
ZjZkLi44YmZkY2MwY2FmNjRhNTFmODkwNTE0ZTU5OTBiNmI5ZTAxY2ZkYTZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUGFyc2VyU2NoZWR1bGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlclNjaGVkdWxlci5oCkBAIC05Nyw3
ICs5Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlc3VtZSgpOwogCiBwcml2YXRlOgotICAgIHZv
aWQgY29udGludWVOZXh0Q2h1bmtUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBjb250aW51
ZU5leHRDaHVua1RpbWVyRmlyZWQoKTsKIAogICAgIEhUTUxEb2N1bWVudFBhcnNlciYgbV9wYXJz
ZXI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJv
bEVsZW1lbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVs
ZW1lbnRzLmNwcAppbmRleCBmYzM1ODMyMzU5YmQ5YjhjNjFmODRlN2QxMmM0ZTAwNzkzNmYwZDRj
Li5jMDM0MTQxYjAyOGI1YWQxZmY5NDFlZjFiYTAwNTUwNWNlYjY5MmYwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCkBAIC03
NCw3ICs3NCw3IEBAIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6TWVkaWFDb250cm9sUGFuZWxF
bGVtZW50KERvY3VtZW50JiBkb2N1bWVudCkKICAgICAsIG1faXNCZWluZ0RyYWdnZWQoZmFsc2Up
CiAgICAgLCBtX2lzRGlzcGxheWVkKGZhbHNlKQogICAgICwgbV9vcGFxdWUodHJ1ZSkKLSAgICAs
IG1fdHJhbnNpdGlvblRpbWVyKHRoaXMsICZNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6OnRyYW5z
aXRpb25UaW1lckZpcmVkKQorICAgICwgbV90cmFuc2l0aW9uVGltZXIoKnRoaXMsICZNZWRpYUNv
bnRyb2xQYW5lbEVsZW1lbnQ6OnRyYW5zaXRpb25UaW1lckZpcmVkKQogewogICAgIHNldFBzZXVk
byhBdG9taWNTdHJpbmcoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwiLCBBdG9taWNTdHJp
bmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiB9CkBAIC0xNDksNyArMTQ5LDcgQEAgdm9pZCBN
ZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6OnN0b3BUaW1lcigpCiAgICAgICAgIG1fdHJhbnNpdGlv
blRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6OnRyYW5z
aXRpb25UaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50Ojp0
cmFuc2l0aW9uVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX29wYXF1ZSkKICAgICAgICAgaGlk
ZSgpOwpAQCAtMTA3Myw3ICsxMDczLDcgQEAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgZ2V0
TWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudFNoYWRvd1BzZXVkb0kKIAogTWVk
aWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6TWVkaWFDb250cm9sVGV4dFRyYWNr
Q29udGFpbmVyRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xE
aXZFbGVtZW50KGRvY3VtZW50LCBNZWRpYVRleHRUcmFja0Rpc3BsYXlDb250YWluZXIpCi0gICAg
LCBtX3VwZGF0ZVRpbWVyKHRoaXMsICZNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVt
ZW50Ojp1cGRhdGVUaW1lckZpcmVkKQorICAgICwgbV91cGRhdGVUaW1lcigqdGhpcywgJk1lZGlh
Q29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVwZGF0ZVRpbWVyRmlyZWQpCiAgICAg
LCBtX2ZvbnRTaXplKDApCiAgICAgLCBtX2ZvbnRTaXplSXNJbXBvcnRhbnQoZmFsc2UpCiAgICAg
LCBtX3VwZGF0ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uU3R5bGUoZmFsc2UpCkBAIC0xMjQzLDcg
KzEyNDMsNyBAQCB2b2lkIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVw
ZGF0ZUFjdGl2ZUN1ZXNGb250U2l6ZSgpCiAKIH0KIAotdm9pZCBNZWRpYUNvbnRyb2xUZXh0VHJh
Y2tDb250YWluZXJFbGVtZW50Ojp1cGRhdGVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTWVkaWFD
b250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6dXBkYXRlVGltZXJGaXJlZCgpCiB7CiAg
ICAgaWYgKCFkb2N1bWVudCgpLnBhZ2UoKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKaW5kZXggY2NiNDk5
NjgzYmZjNzU0OWE1NjUwY2NhZTE1ZjI0M2M5YjY2YTNiZC4uZTQ1MmMzMjVjZDJjNjk0OWViNGQy
ODMyMmNjYzA2YTJiMmMyMTYyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvTWVkaWFDb250cm9sRWxlbWVudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oCkBAIC02NSw3ICs2NSw3IEBAIHByaXZhdGU6CiAKICAg
ICB2b2lkIHN0YXJ0VGltZXIoKTsKICAgICB2b2lkIHN0b3BUaW1lcigpOwotICAgIHZvaWQgdHJh
bnNpdGlvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRyYW5zaXRpb25UaW1lckZpcmVk
KCk7CiAKICAgICB2b2lkIHNldFBvc2l0aW9uKGNvbnN0IExheW91dFBvaW50Jik7CiAKQEAgLTQ1
MSw3ICs0NTEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CiAKIHBy
aXZhdGU6Ci0gICAgdm9pZCB1cGRhdGVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB1cGRh
dGVUaW1lckZpcmVkKCk7CiAgICAgdm9pZCB1cGRhdGVBY3RpdmVDdWVzRm9udFNpemUoKTsKIAog
ICAgIGV4cGxpY2l0IE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQoRG9jdW1l
bnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJv
bHMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHAKaW5k
ZXggNzg3MjIwZmVlMGJjZmY3MTA4N2EyYjNhYzBkNTU0M2MxODI4MTVjNS4uM2RkNmRlODZkYTFm
Y2NkMWZlMWEwNjA4NTNkNDcxMjNhNGE3MGQ5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvTWVkaWFDb250cm9scy5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgTWVkaWFDb250cm9sczo6
TWVkaWFDb250cm9scyhEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgLCBtX3ZvbHVtZVNsaWRlcigw
KQogICAgICwgbV90b2dnbGVDbG9zZWRDYXB0aW9uc0J1dHRvbigwKQogICAgICwgbV9mdWxsU2Ny
ZWVuQnV0dG9uKDApCi0gICAgLCBtX2hpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcih0aGlzLCAm
TWVkaWFDb250cm9sczo6aGlkZUZ1bGxzY3JlZW5Db250cm9sc1RpbWVyRmlyZWQpCisgICAgLCBt
X2hpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcigqdGhpcywgJk1lZGlhQ29udHJvbHM6OmhpZGVG
dWxsc2NyZWVuQ29udHJvbHNUaW1lckZpcmVkKQogICAgICwgbV9pc0Z1bGxzY3JlZW4oZmFsc2Up
CiAgICAgLCBtX2lzTW91c2VPdmVyQ29udHJvbHMoZmFsc2UpCiB7CkBAIC0zMzAsNyArMzMwLDcg
QEAgdm9pZCBNZWRpYUNvbnRyb2xzOjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkK
ICAgICB9CiB9CiAKLXZvaWQgTWVkaWFDb250cm9sczo6aGlkZUZ1bGxzY3JlZW5Db250cm9sc1Rp
bWVyRmlyZWQoVGltZXImKQordm9pZCBNZWRpYUNvbnRyb2xzOjpoaWRlRnVsbHNjcmVlbkNvbnRy
b2xzVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fbWVkaWFDb250cm9sbGVyLT5wYXVzZWQoKSkK
ICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9scy5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
cy5oCmluZGV4IGE2NDRjOGVhOTI3YTM3MTM5MDYyNDM2ZTEzZjM5NGM0NTkwYjE2OWIuLjQxYWVl
NTM4N2I5OTc4OGY2NDgxZDlkMzJjYTNkZGUxYjY1ZjMwODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzLmgKQEAgLTk3LDcgKzk3LDcgQEAgY2xhc3MgTWVkaWFD
b250cm9scyA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7CiAgICAgdmlydHVhbCBib29sIHdpbGxS
ZXNwb25kVG9Nb3VzZU1vdmVFdmVudHMoKSBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9CiAjZW5k
aWYKIAotICAgIHZpcnR1YWwgdm9pZCBoaWRlRnVsbHNjcmVlbkNvbnRyb2xzVGltZXJGaXJlZChU
aW1lciYpOworICAgIHZpcnR1YWwgdm9pZCBoaWRlRnVsbHNjcmVlbkNvbnRyb2xzVGltZXJGaXJl
ZCgpOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydEhpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcigp
OwogICAgIHZpcnR1YWwgdm9pZCBzdG9wSGlkZUZ1bGxzY3JlZW5Db250cm9sc1RpbWVyKCk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmNwcApp
bmRleCA5ODM2OTY1ZjcxZDQ1ZTgxNDJmNTEwNmMwNjUyYjdjMjUyNTkzNGMzLi5jZjUwNmE4OTdj
NTc4ODE3MDU4OGMyZDY0NDc3MGI3M2YzNTA1NTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwCkBAIC00OSw3ICs0OSw3IEBAIGlubGlu
ZSBTcGluQnV0dG9uRWxlbWVudDo6U3BpbkJ1dHRvbkVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50
LCBTcGluQnV0dG9uT3duZXImCiAgICAgLCBtX2NhcHR1cmluZyhmYWxzZSkKICAgICAsIG1fdXBE
b3duU3RhdGUoSW5kZXRlcm1pbmF0ZSkKICAgICAsIG1fcHJlc3NTdGFydGluZ1N0YXRlKEluZGV0
ZXJtaW5hdGUpCi0gICAgLCBtX3JlcGVhdGluZ1RpbWVyKHRoaXMsICZTcGluQnV0dG9uRWxlbWVu
dDo6cmVwZWF0aW5nVGltZXJGaXJlZCkKKyAgICAsIG1fcmVwZWF0aW5nVGltZXIoKnRoaXMsICZT
cGluQnV0dG9uRWxlbWVudDo6cmVwZWF0aW5nVGltZXJGaXJlZCkKIHsKICAgICBzZXRIYXNDdXN0
b21TdHlsZVJlc29sdmVDYWxsYmFja3MoKTsKICAgICBzZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCIt
d2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0
ZXJhbCkpOwpAQCAtMjMwLDcgKzIzMCw3IEBAIHZvaWQgU3BpbkJ1dHRvbkVsZW1lbnQ6OnN0ZXAo
aW50IGFtb3VudCkKICAgICBkb1N0ZXBBY3Rpb24oYW1vdW50KTsKIH0KICAgICAKLXZvaWQgU3Bp
bkJ1dHRvbkVsZW1lbnQ6OnJlcGVhdGluZ1RpbWVyRmlyZWQoVGltZXIqKQordm9pZCBTcGluQnV0
dG9uRWxlbWVudDo6cmVwZWF0aW5nVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fdXBEb3duU3Rh
dGUgIT0gSW5kZXRlcm1pbmF0ZSkKICAgICAgICAgc3RlcChtX3VwRG93blN0YXRlID09IFVwID8g
MSA6IC0xKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0
b25FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVu
dC5oCmluZGV4IDE4Y2ZhMmQ1ZWNiNDBiNjZlMWRjYjJiY2EzYTZiYWMxZjE4MjgzNDMuLmFlMWVm
MWVjMDkwMTBiMTE3NTczYTE3MWUxMzIyNjMxODYxNzk2MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuaApAQCAtNzgsNyArNzgsNyBAQCBwcml2
YXRlOgogICAgIHZvaWQgZG9TdGVwQWN0aW9uKGludCk7CiAgICAgdm9pZCBzdGFydFJlcGVhdGlu
Z1RpbWVyKCk7CiAgICAgdm9pZCBzdG9wUmVwZWF0aW5nVGltZXIoKTsKLSAgICB2b2lkIHJlcGVh
dGluZ1RpbWVyRmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIHJlcGVhdGluZ1RpbWVyRmlyZWQoKTsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSkgb3ZlcnJpZGU7CiAgICAg
Ym9vbCBzaG91bGRSZXNwb25kVG9Nb3VzZUV2ZW50cygpOwogICAgIHZpcnR1YWwgYm9vbCBpc01v
dXNlRm9jdXNhYmxlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svTG9hZGFibGVUZXh0VHJhY2suY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC90cmFjay9Mb2FkYWJsZVRleHRUcmFjay5jcHAKaW5kZXggYmRjNGRm
YTBkMWVmNzVmZTZhMDUwOWMzMjhmYzU0ODhiM2MxODlmZi4uNWZmMTJiNzZmZWU0ZTk1NmI0NjJh
MDgxNzk2OTVkODgyMjZjMmVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9Mb2FkYWJsZVRleHRUcmFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9M
b2FkYWJsZVRleHRUcmFjay5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogTG9hZGFibGVUZXh0VHJhY2s6OkxvYWRhYmxlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQq
IHRyYWNrLCBjb25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IFN0
cmluZyYgbGFuZ3VhZ2UpCiAgICAgOiBUZXh0VHJhY2soJnRyYWNrLT5kb2N1bWVudCgpLCB0cmFj
aywga2luZCwgZW1wdHlTdHJpbmcoKSwgbGFiZWwsIGxhbmd1YWdlLCBUcmFja0VsZW1lbnQpCiAg
ICAgLCBtX3RyYWNrRWxlbWVudCh0cmFjaykKLSAgICAsIG1fbG9hZFRpbWVyKHRoaXMsICZMb2Fk
YWJsZVRleHRUcmFjazo6bG9hZFRpbWVyRmlyZWQpCisgICAgLCBtX2xvYWRUaW1lcigqdGhpcywg
JkxvYWRhYmxlVGV4dFRyYWNrOjpsb2FkVGltZXJGaXJlZCkKICAgICAsIG1faXNEZWZhdWx0KGZh
bHNlKQogewogfQpAQCAtODUsNyArODUsNyBAQCB2b2lkIExvYWRhYmxlVGV4dFRyYWNrOjpzZXRU
cmFja0VsZW1lbnQoSFRNTFRyYWNrRWxlbWVudCogZWxlbWVudCkKICAgICBtX3RyYWNrRWxlbWVu
dCA9IGVsZW1lbnQ7CiB9CiAKLXZvaWQgTG9hZGFibGVUZXh0VHJhY2s6OmxvYWRUaW1lckZpcmVk
KFRpbWVyJikKK3ZvaWQgTG9hZGFibGVUZXh0VHJhY2s6OmxvYWRUaW1lckZpcmVkKCkKIHsKICAg
ICBpZiAobV9sb2FkZXIpCiAgICAgICAgIG1fbG9hZGVyLT5jYW5jZWxMb2FkKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmgKaW5kZXggYWFkMmEwODI2
ZmVhNmIwNDM0YmY5ZjY1ZWE4NDYzNjExMTJkMGJlYy4uMTdjNjdkZmMzYWZiOTM1NTJkYjNhZDI2
NzY1N2Q2ZTZlZTQ3NWFjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9M
b2FkYWJsZVRleHRUcmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svTG9hZGFi
bGVUZXh0VHJhY2suaApAQCAtNzAsNyArNzAsNyBAQCBwcml2YXRlOgogCiAgICAgTG9hZGFibGVU
ZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCosIGNvbnN0IFN0cmluZyYga2luZCwgY29uc3QgU3Ry
aW5nJiBsYWJlbCwgY29uc3QgU3RyaW5nJiBsYW5ndWFnZSk7CiAKLSAgICB2b2lkIGxvYWRUaW1l
ckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBsb2FkVGltZXJGaXJlZCgpOwogCiAgICAgSFRNTFRy
YWNrRWxlbWVudCogbV90cmFja0VsZW1lbnQ7CiAgICAgVGltZXIgbV9sb2FkVGltZXI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJlZ2lvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJlZ2lvbi5jcHAKaW5kZXggMzhhMWM2YWUxYWQyM2YwYWEx
NGQ3NzczZDk5Y2YyNWQ2ZDI2NDA4OS4uN2EwNDlmYzc3MzBkYjkxODYwYTg0Nzg2YzBjYzI1MDEz
NGIzZmMyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WVFRSZWdpb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUUmVnaW9uLmNwcApAQCAtODMs
NyArODMsNyBAQCBWVFRSZWdpb246OlZUVFJlZ2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBj
b250ZXh0KQogICAgICwgbV9yZWdpb25EaXNwbGF5VHJlZShudWxscHRyKQogICAgICwgbV90cmFj
ayhudWxscHRyKQogICAgICwgbV9jdXJyZW50VG9wKDApCi0gICAgLCBtX3Njcm9sbFRpbWVyKHRo
aXMsICZWVFRSZWdpb246OnNjcm9sbFRpbWVyRmlyZWQpCisgICAgLCBtX3Njcm9sbFRpbWVyKCp0
aGlzLCAmVlRUUmVnaW9uOjpzY3JvbGxUaW1lckZpcmVkKQogewogfQogCkBAIC00NzgsNyArNDc4
LDcgQEAgdm9pZCBWVFRSZWdpb246OnN0b3BUaW1lcigpCiAgICAgICAgIG1fc2Nyb2xsVGltZXIu
c3RvcCgpOwogfQogCi12b2lkIFZUVFJlZ2lvbjo6c2Nyb2xsVGltZXJGaXJlZChUaW1lciopCit2
b2lkIFZUVFJlZ2lvbjo6c2Nyb2xsVGltZXJGaXJlZCgpCiB7CiAgICAgTE9HKE1lZGlhLCAiVlRU
UmVnaW9uOjpzY3JvbGxUaW1lckZpcmVkIik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVlRUUmVnaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJl
Z2lvbi5oCmluZGV4IDA0MTMzODUxZDZjODliY2QyNjcxNTg1ZDQzYTRjY2Q1OWFkZWFlNDAuLmVh
NThiODQyYWZkNDBlY2Q4NTc0MTU0NGUzMzRkMjM5ZDIxMzgxMDkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUUmVnaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9WVFRSZWdpb24uaApAQCAtMTA1LDcgKzEwNSw3IEBAIHByaXZhdGU6CiAgICAgLy8g
VGhlIHRpbWVyIGlzIG5lZWRlZCB0byBjb250aW51ZSBwcm9jZXNzaW5nIHdoZW4gY3VlIHNjcm9s
bGluZyBlbmRlZC4KICAgICB2b2lkIHN0YXJ0VGltZXIoKTsKICAgICB2b2lkIHN0b3BUaW1lcigp
OwotICAgIHZvaWQgc2Nyb2xsVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgc2Nyb2xsVGlt
ZXJGaXJlZCgpOwogCiAgICAgZW51bSBSZWdpb25TZXR0aW5nIHsKICAgICAgICAgTm9uZSwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCmluZGV4IDQx
NTMxNjQ4NDE0YTEzMTIxZjk3MWEyMjViM2MwZmVmYWM4MjM4MjguLmY4MTRiZTQ0ZjllMTcxMjgx
ZWUzY2M3ZmQ4NDg5ODBkODFhOGIwOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtMTEwLDcgKzExMCw3IEBAIHB1YmxpYzoKICAgICB2
b2lkIHNjaGVkdWxlRm9yKFdlYktpdE5hbWVkRmxvdyosIGludCBkb2N1bWVudE5vZGVJZCk7CiAg
ICAgdm9pZCB1bnNjaGVkdWxlKFdlYktpdE5hbWVkRmxvdyopOwogICAgIHZvaWQgcmVzZXQoKTsK
LSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsKIAog
cHJpdmF0ZToKICAgICBJbnNwZWN0b3JDU1NBZ2VudCogbV9jc3NBZ2VudDsKQEAgLTEyMCw3ICsx
MjAsNyBAQCBwcml2YXRlOgogCiBDaGFuZ2VSZWdpb25PdmVyc2V0VGFzazo6Q2hhbmdlUmVnaW9u
T3ZlcnNldFRhc2soSW5zcGVjdG9yQ1NTQWdlbnQqIGNzc0FnZW50KQogICAgIDogbV9jc3NBZ2Vu
dChjc3NBZ2VudCkKLSAgICAsIG1fdGltZXIodGhpcywgJkNoYW5nZVJlZ2lvbk92ZXJzZXRUYXNr
Ojp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJkNoYW5nZVJlZ2lvbk92ZXJzZXRU
YXNrOjp0aW1lckZpcmVkKQogewogfQogCkBAIC0xNDMsNyArMTQzLDcgQEAgdm9pZCBDaGFuZ2VS
ZWdpb25PdmVyc2V0VGFzazo6cmVzZXQoKQogICAgIG1fbmFtZWRGbG93cy5jbGVhcigpOwogfQog
Ci12b2lkIENoYW5nZVJlZ2lvbk92ZXJzZXRUYXNrOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQg
Q2hhbmdlUmVnaW9uT3ZlcnNldFRhc2s6OnRpbWVyRmlyZWQoKQogewogICAgIC8vIFRoZSB0aW1l
ciBpcyBzdG9wcGVkIG9uIG1fY3NzQWdlbnQgZGVzdHJ1Y3Rpb24sIHNvIHRoaXMgbWV0aG9kIHdp
bGwgbmV2ZXIgYmUgY2FsbGVkIGFmdGVyIG1fY3NzQWdlbnQgaGFzIGJlZW4gZGVzdHJveWVkLgog
ICAgIGZvciAoSGFzaE1hcDxXZWJLaXROYW1lZEZsb3cqLCBpbnQ+OjppdGVyYXRvciBpdCA9IG1f
bmFtZWRGbG93cy5iZWdpbigpLCBlbmQgPSBtX25hbWVkRmxvd3MuZW5kKCk7IGl0ICE9IGVuZDsg
KytpdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01B
Z2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3Bw
CmluZGV4IDMzNzU0NzNjOWI0Mzg5Yzc1MDkzOTY5MjAwOGFkNDVlYTJhMGRjMGMuLjhiYzRjZDc5
OTFjODg4ZmRmODFhZjhhYmFiYTE4YjliZmY3NmExN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcApAQCAtMTYyLDcgKzE2Miw3IEBAIHB1Ymxp
YzoKICAgICBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrKEluc3BlY3RvckRPTUFnZW50Kik7
CiAgICAgdm9pZCBzY2hlZHVsZUZvcihFbGVtZW50Kik7CiAgICAgdm9pZCByZXNldCgpIHsgbV90
aW1lci5zdG9wKCk7IH0KLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHRp
bWVyRmlyZWQoKTsKIAogcHJpdmF0ZToKICAgICBJbnNwZWN0b3JET01BZ2VudCogbV9kb21BZ2Vu
dDsKQEAgLTE3Miw3ICsxNzIsNyBAQCBwcml2YXRlOgogCiBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1
dGVUYXNrOjpSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrKEluc3BlY3RvckRPTUFnZW50KiBk
b21BZ2VudCkKICAgICA6IG1fZG9tQWdlbnQoZG9tQWdlbnQpCi0gICAgLCBtX3RpbWVyKHRoaXMs
ICZSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1l
cigqdGhpcywgJlJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6OnRpbWVyRmlyZWQpCiB7CiB9
CiAKQEAgLTE4Myw3ICsxODMsNyBAQCB2b2lkIFJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6
OnNjaGVkdWxlRm9yKEVsZW1lbnQqIGVsZW1lbnQpCiAgICAgICAgIG1fdGltZXIuc3RhcnRPbmVT
aG90KDApOwogfQogCi12b2lkIFJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6OnRpbWVyRmly
ZWQoVGltZXImKQordm9pZCBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjp0aW1lckZpcmVk
KCkKIHsKICAgICAvLyBUaGUgdGltZXIgaXMgc3RvcHBlZCBvbiBtX2RvbUFnZW50IGRlc3RydWN0
aW9uLCBzbyB0aGlzIG1ldGhvZCB3aWxsIG5ldmVyIGJlIGNhbGxlZCBhZnRlciBtX2RvbUFnZW50
IGhhcyBiZWVuIGRlc3Ryb3llZC4KICAgICBWZWN0b3I8RWxlbWVudCo+IGVsZW1lbnRzOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xpZW50
TG9jYWwuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xp
ZW50TG9jYWwuY3BwCmluZGV4IDZiOTc4MjNjYmRjY2U2NDk5NzE1ZWUyMzRhYTVmY2ZhYjJkZjcz
ZjkuLjNlNzA4MTlhZWUxYjNiZDFlNWQ0ZDVhZTE1OTg5NzJiN2Y3YmZmYmYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRM
b2NhbC5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgY2xhc3MgSW5zcGVjdG9yQmFja2VuZERpc3BhdGNo
VGFzayB7CiBwdWJsaWM6CiAgICAgSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzayhJbnNwZWN0
b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyKQogICAgICAgICA6IG1faW5zcGVjdG9y
Q29udHJvbGxlcihpbnNwZWN0b3JDb250cm9sbGVyKQotICAgICAgICAsIG1fdGltZXIodGhpcywg
Jkluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2s6OnRpbWVyRmlyZWQpCisgICAgICAgICwgbV90
aW1lcigqdGhpcywgJkluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2s6OnRpbWVyRmlyZWQpCiAg
ICAgewogICAgIH0KIApAQCAtOTEsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAgICAgIG1fdGltZXIu
c3RvcCgpOwogICAgIH0KIAotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpCisgICAgdm9pZCB0
aW1lckZpcmVkKCkKICAgICB7CiAgICAgICAgIGlmICghbV9tZXNzYWdlcy5pc0VtcHR5KCkpIHsK
ICAgICAgICAgICAgIC8vIERpc3BhdGNoIGNhbiBsZWFkIHRvIHRoZSB0aW1lciBkZXN0cnVjdGlv
biAtPiBzY2hlZHVsZSB0aGUgbmV4dCBzaG90IGZpcnN0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvck92ZXJsYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvck92ZXJsYXkuY3BwCmluZGV4IDFlZDFlOTc0NzQ5YmEyZDlhM2IwNDI0
ZTE0MGVhNTFmNjdlMmQ4MmIuLjcyNWY2OThiOWVkNDc2MzFiOGJkYzIxOWEwNmI0NWU1YjhmNzU0
ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yT3ZlcmxheS5jcHAK
QEAgLTIwMyw3ICsyMDMsNyBAQCBzdGF0aWMgdm9pZCBidWlsZFF1YWRIaWdobGlnaHQoY29uc3Qg
RmxvYXRRdWFkJiBxdWFkLCBjb25zdCBIaWdobGlnaHRDb25maWcmIGhpZwogSW5zcGVjdG9yT3Zl
cmxheTo6SW5zcGVjdG9yT3ZlcmxheShQYWdlJiBwYWdlLCBJbnNwZWN0b3JDbGllbnQqIGNsaWVu
dCkKICAgICA6IG1fcGFnZShwYWdlKQogICAgICwgbV9jbGllbnQoY2xpZW50KQotICAgICwgbV9w
YWludFJlY3RVcGRhdGVUaW1lcih0aGlzLCAmSW5zcGVjdG9yT3ZlcmxheTo6dXBkYXRlUGFpbnRS
ZWN0c1RpbWVyRmlyZWQpCisgICAgLCBtX3BhaW50UmVjdFVwZGF0ZVRpbWVyKCp0aGlzLCAmSW5z
cGVjdG9yT3ZlcmxheTo6dXBkYXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQpCiAgICAgLCBtX2luZGlj
YXRpbmcoZmFsc2UpCiAgICAgLCBtX3Nob3dpbmdQYWludFJlY3RzKGZhbHNlKQogewpAQCAtNTA1
LDcgKzUwNSw3IEBAIHZvaWQgSW5zcGVjdG9yT3ZlcmxheTo6c2hvd1BhaW50UmVjdChjb25zdCBG
bG9hdFJlY3QmIHJlY3QpCiAgICAgZm9yY2VQYWludCgpOwogfQogCi12b2lkIEluc3BlY3Rvck92
ZXJsYXk6OnVwZGF0ZVBhaW50UmVjdHNUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSW5zcGVjdG9y
T3ZlcmxheTo6dXBkYXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQoKQogewogICAgIHN0ZDo6Y2hyb25v
OjpzdGVhZHlfY2xvY2s6OnRpbWVfcG9pbnQgbm93ID0gc3RkOjpjaHJvbm86OnN0ZWFkeV9jbG9j
azo6bm93KCk7CiAgICAgYm9vbCByZWN0c0NoYW5nZWQgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5LmggYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yT3ZlcmxheS5oCmluZGV4IDg5MDgyOTJjOGY2NjBiN2M5MTJj
ZDg4NTM4MTRmYTk4NjQ2MjcyNWIuLjRlZmI0NTg1ZTcyYWFmZjJhYTZiNTkyODc0N2JmMWQ4NWEy
MzExMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVy
bGF5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvck92ZXJsYXkuaApA
QCAtMTM5LDcgKzEzOSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkcmF3UXVhZEhpZ2hsaWdodCgp
OwogICAgIHZvaWQgZHJhd1BhdXNlZEluRGVidWdnZXJNZXNzYWdlKCk7CiAgICAgdm9pZCBkcmF3
UGFpbnRSZWN0cygpOwotICAgIHZvaWQgdXBkYXRlUGFpbnRSZWN0c1RpbWVyRmlyZWQoVGltZXIm
KTsKKyAgICB2b2lkIHVwZGF0ZVBhaW50UmVjdHNUaW1lckZpcmVkKCk7CiAKICAgICBQYWdlKiBv
dmVybGF5UGFnZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1l
bnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcApp
bmRleCBlM2NhYjc4YTZkMmViMGY3YzFhODc4ZDYwNWJjMWIyZmFjOWJjYjhhLi5mOTExNmMwZDRm
ZGFlZGUzM2Y4OWI2MWQ4OGI5NzIwMTA3YzEyNzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9E
b2N1bWVudExvYWRlci5jcHAKQEAgLTEzNCwxMiArMTM0LDEyIEBAIERvY3VtZW50TG9hZGVyOjpE
b2N1bWVudExvYWRlcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcSwgY29uc3QgU3Vic3RpdHV0
ZURhdGEmCiAgICAgLCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQoZmFsc2UpCiAgICAgLCBt
X3dhc09ubG9hZEhhbmRsZWQoZmFsc2UpCiAgICAgLCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMo
ZmFsc2UpCi0gICAgLCBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIodGhpcywgJkRv
Y3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQpCisgICAg
LCBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRl
cjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKQogICAgICwgbV9kaWRDcmVh
dGVHbG9iYWxIaXN0b3J5RW50cnkoZmFsc2UpCiAgICAgLCBtX2xvYWRpbmdNYWluUmVzb3VyY2Uo
ZmFsc2UpCiAgICAgLCBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQoMC4wKQogICAgICwgbV9pZGVu
dGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigwKQotICAgICwgbV9kYXRhTG9hZFRp
bWVyKHRoaXMsICZEb2N1bWVudExvYWRlcjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQor
ICAgICwgbV9kYXRhTG9hZFRpbWVyKCp0aGlzLCAmRG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0
aXR1dGVEYXRhTG9hZE5vdykKICAgICAsIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xpY3koZmFsc2Up
CiAgICAgLCBtX3N1YnJlc291cmNlTG9hZGVyc0FyZVBhZ2VDYWNoZUFjY2VwdGFibGUoZmFsc2Up
CiAgICAgLCBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0KGFkb3B0UHRyKG5ldyBBcHBsaWNhdGlvbkNh
Y2hlSG9zdCgqdGhpcykpKQpAQCAtNDY2LDcgKzQ2Niw3IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6
OmlzUG9zdE9yUmVkaXJlY3RBZnRlclBvc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBuZXdSZXF1
ZXN0CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpoYW5kbGVT
dWJzdGl0dXRlRGF0YUxvYWROb3coRG9jdW1lbnRMb2FkZXJUaW1lciopCit2b2lkIERvY3VtZW50
TG9hZGVyOjpoYW5kbGVTdWJzdGl0dXRlRGF0YUxvYWROb3coKQogewogICAgIFVSTCB1cmwgPSBt
X3N1YnN0aXR1dGVEYXRhLnJlc3BvbnNlVVJMKCk7CiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCkBA
IC00ODgsNyArNDg4LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3RhcnREYXRhTG9hZFRpbWVy
KCkKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZFNvb24oKQog
ewogICAgIGlmICghbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkIHx8IGZyYW1lTG9hZGVyKCkt
PmxvYWRzU3luY2hyb25vdXNseSgpKQotICAgICAgICBoYW5kbGVTdWJzdGl0dXRlRGF0YUxvYWRO
b3coMCk7CisgICAgICAgIGhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZE5vdygpOwogICAgIGVsc2UK
ICAgICAgICAgc3RhcnREYXRhTG9hZFRpbWVyKCk7CiB9CkBAIC0xMTI1LDcgKzExMjUsNyBAQCB2
b2lkIERvY3VtZW50TG9hZGVyOjpkZWxpdmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVyRGVsYXko
KQogICAgICAgICBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIuc3RhcnRPbmVTaG90
KDApOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVy
eVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291
cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJl
c291cmNlcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmgKaW5kZXggNTBmMDRhMWNlODIyYmE2M2YwMzExNjczNmMzMDUwODkxMGIw
YTFmYS4uN2EwNmFjMjY5YzBmYWUwNTUwYjYzNzc1OWNjZmE4MDQ5NDk0ZTk4ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTMxNiwxMSArMzE2LDExIEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgdHlwZWRlZiBUaW1lciBEb2N1bWVudExvYWRlclRpbWVy
OwogI2VuZGlmCiAgICAgICAgIHZvaWQgaGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkU29vbigpOwot
ICAgICAgICB2b2lkIGhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZE5vdyhEb2N1bWVudExvYWRlclRp
bWVyKik7CisgICAgICAgIHZvaWQgaGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KCk7CiAgICAg
ICAgIHZvaWQgc3RhcnREYXRhTG9hZFRpbWVyKCk7CiAKICAgICAgICAgdm9pZCBkZWxpdmVyU3Vi
c3RpdHV0ZVJlc291cmNlc0FmdGVyRGVsYXkoKTsKLSAgICAgICAgdm9pZCBzdWJzdGl0dXRlUmVz
b3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQoVGltZXImKTsKKyAgICAgICAgdm9pZCBzdWJzdGl0dXRl
UmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQoKTsKIAogICAgICAgICB2b2lkIGNsZWFyTWFpblJl
c291cmNlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IGY2ZDg2
MTRjMDY3Y2E0ZGFmMmVjZjRkYTA3N2E3MGMzYmVjZDdjNzMuLjhlNGRhYTcyMDM2NzYyZmUzOWVh
ZWIyYmFhZDIxMGI1MDI0YjY3ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cApAQCAtMjM2LDcgKzIzNiw3IEBAIEZyYW1lTG9hZGVyOjpGcmFtZUxvYWRlcihGcmFtZSYgZnJh
bWUsIEZyYW1lTG9hZGVyQ2xpZW50JiBjbGllbnQpCiAgICAgLCBtX3BhZ2VEaXNtaXNzYWxFdmVu
dEJlaW5nRGlzcGF0Y2hlZChOb0Rpc21pc3NhbCkKICAgICAsIG1faXNDb21wbGV0ZShmYWxzZSkK
ICAgICAsIG1fbmVlZHNDbGVhcihmYWxzZSkKLSAgICAsIG1fY2hlY2tUaW1lcih0aGlzLCAmRnJh
bWVMb2FkZXI6OmNoZWNrVGltZXJGaXJlZCkKKyAgICAsIG1fY2hlY2tUaW1lcigqdGhpcywgJkZy
YW1lTG9hZGVyOjpjaGVja1RpbWVyRmlyZWQpCiAgICAgLCBtX3Nob3VsZENhbGxDaGVja0NvbXBs
ZXRlZChmYWxzZSkKICAgICAsIG1fc2hvdWxkQ2FsbENoZWNrTG9hZENvbXBsZXRlKGZhbHNlKQog
ICAgICwgbV9vcGVuZXIobnVsbHB0cikKQEAgLTg1MCw3ICs4NTAsNyBAQCB2b2lkIEZyYW1lTG9h
ZGVyOjpjaGVja0NvbXBsZXRlZCgpCiAgICAgICAgIGNoZWNrTG9hZENvbXBsZXRlKCk7CiB9CiAK
LXZvaWQgRnJhbWVMb2FkZXI6OmNoZWNrVGltZXJGaXJlZChUaW1lciYpCit2b2lkIEZyYW1lTG9h
ZGVyOjpjaGVja1RpbWVyRmlyZWQoKQogewogICAgIFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1l
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAppbmRleCAxNTYwY2ExODdhZDI0ZDQ1
NWE4NGY4NWQwMWU5NzA2ZTQ1ODI3MTIzLi42ZGU3ZDBlZGI1NWQxMDc3MjNiYzJiZmNhYjhmMWIw
N2ExZGMwOWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaApAQCAtMjk5LDcgKzI5
OSw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIGFsbENoaWxkcmVuQXJlQ29tcGxldGUoKSBjb25z
dDsgLy8gaW1tZWRpYXRlIGNoaWxkcmVuLCBub3QgYWxsIGRlc2NlbmRhbnRzCiAKLSAgICB2b2lk
IGNoZWNrVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgY2hlY2tUaW1lckZpcmVkKCk7CiAg
ICAgCiAgICAgdm9pZCBsb2FkU2FtZURvY3VtZW50SXRlbShIaXN0b3J5SXRlbSopOwogICAgIHZv
aWQgbG9hZERpZmZlcmVudERvY3VtZW50SXRlbShIaXN0b3J5SXRlbSosIEZyYW1lTG9hZFR5cGUs
IEZvcm1TdWJtaXNzaW9uQ2FjaGVMb2FkUG9saWN5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VM
b2FkZXIuY3BwCmluZGV4IDYwMmZiOWRiMWM2YzE5ZjI5Mzc4MDQ1MzFmMGI2ZDY5ZTgwMDNjZGYu
LjhiNTU2YWQzMmVhODJlNzI4Zjk1NzljOTE5NTVjNzU4ZjJjMDAyZjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0ltYWdlTG9hZGVyLmNwcApAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgaW5saW5lIGJv
b2wgcGFnZUlzQmVpbmdEaXNtaXNzZWQoRG9jdW1lbnQmIGRvY3VtZW50KQogSW1hZ2VMb2FkZXI6
OkltYWdlTG9hZGVyKEVsZW1lbnQmIGVsZW1lbnQpCiAgICAgOiBtX2VsZW1lbnQoZWxlbWVudCkK
ICAgICAsIG1faW1hZ2UoMCkKLSAgICAsIG1fZGVyZWZFbGVtZW50VGltZXIodGhpcywgJkltYWdl
TG9hZGVyOjp0aW1lckZpcmVkKQorICAgICwgbV9kZXJlZkVsZW1lbnRUaW1lcigqdGhpcywgJklt
YWdlTG9hZGVyOjp0aW1lckZpcmVkKQogICAgICwgbV9oYXNQZW5kaW5nQmVmb3JlTG9hZEV2ZW50
KGZhbHNlKQogICAgICwgbV9oYXNQZW5kaW5nTG9hZEV2ZW50KGZhbHNlKQogICAgICwgbV9oYXNQ
ZW5kaW5nRXJyb3JFdmVudChmYWxzZSkKQEAgLTM3NCw3ICszNzQsNyBAQCB2b2lkIEltYWdlTG9h
ZGVyOjp1cGRhdGVkSGFzUGVuZGluZ0V2ZW50KCkKICAgICB9ICAgCiB9CiAKLXZvaWQgSW1hZ2VM
b2FkZXI6OnRpbWVyRmlyZWQoVGltZXImKQordm9pZCBJbWFnZUxvYWRlcjo6dGltZXJGaXJlZCgp
CiB7CiAgICAgZWxlbWVudCgpLmRlcmVmKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSW1hZ2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRl
ci5oCmluZGV4IDgzYWQ4ZGNmMDUzMWFkZDhmMGIwOTNiNDRkM2FhM2U4NDFhYTRhMmUuLmNmYjQ4
YzNlODhmNDUyZDQwMmYxOWI3MGU2MWVkYmQ5ZGI1OGZjMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9J
bWFnZUxvYWRlci5oCkBAIC05MSw3ICs5MSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRJbWFn
ZVdpdGhvdXRDb25zaWRlcmluZ1BlbmRpbmdMb2FkRXZlbnQoQ2FjaGVkSW1hZ2UqKTsKICAgICB2
b2lkIGNsZWFyRmFpbGVkTG9hZFVSTCgpOwogCi0gICAgdm9pZCB0aW1lckZpcmVkKFRpbWVyJik7
CisgICAgdm9pZCB0aW1lckZpcmVkKCk7CiAKICAgICBFbGVtZW50JiBtX2VsZW1lbnQ7CiAgICAg
Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IG1faW1hZ2U7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTGlua0xvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvTGlua0xvYWRlci5jcHAKaW5kZXggOTk1ZmM3MDU1MDBlNTI1Y2RlYTQ4YTA1NWYwZWU0NWU0
ZDcyOTIwZi4uYWI5ZWJlYWY4YzZiZjA2NTZlZmE4YjJlYTZjMzYwZmRhNGUyMmMwZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xpbmtMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9MaW5rTG9hZGVyLmNwcApAQCAtNDksOCArNDksOCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIExpbmtMb2FkZXI6OkxpbmtMb2FkZXIoTGlua0xvYWRlckNsaWVudCogY2xp
ZW50KQogICAgIDogbV9jbGllbnQoY2xpZW50KQotICAgICwgbV9saW5rTG9hZFRpbWVyKHRoaXMs
ICZMaW5rTG9hZGVyOjpsaW5rTG9hZFRpbWVyRmlyZWQpCi0gICAgLCBtX2xpbmtMb2FkaW5nRXJy
b3JUaW1lcih0aGlzLCAmTGlua0xvYWRlcjo6bGlua0xvYWRpbmdFcnJvclRpbWVyRmlyZWQpCisg
ICAgLCBtX2xpbmtMb2FkVGltZXIoKnRoaXMsICZMaW5rTG9hZGVyOjpsaW5rTG9hZFRpbWVyRmly
ZWQpCisgICAgLCBtX2xpbmtMb2FkaW5nRXJyb3JUaW1lcigqdGhpcywgJkxpbmtMb2FkZXI6Omxp
bmtMb2FkaW5nRXJyb3JUaW1lckZpcmVkKQogewogfQogCkBAIC02MCwxNSArNjAsMTMgQEAgTGlu
a0xvYWRlcjo6fkxpbmtMb2FkZXIoKQogICAgICAgICBtX2NhY2hlZExpbmtSZXNvdXJjZS0+cmVt
b3ZlQ2xpZW50KHRoaXMpOwogfQogCi12b2lkIExpbmtMb2FkZXI6OmxpbmtMb2FkVGltZXJGaXJl
ZChUaW1lciYgdGltZXIpCit2b2lkIExpbmtMb2FkZXI6OmxpbmtMb2FkVGltZXJGaXJlZCgpCiB7
Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2xpbmtMb2FkVGltZXIpOwog
ICAgIG1fY2xpZW50LT5saW5rTG9hZGVkKCk7CiB9CiAKLXZvaWQgTGlua0xvYWRlcjo6bGlua0xv
YWRpbmdFcnJvclRpbWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBMaW5rTG9hZGVyOjpsaW5r
TG9hZGluZ0Vycm9yVGltZXJGaXJlZCgpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRp
bWVyID09ICZtX2xpbmtMb2FkaW5nRXJyb3JUaW1lcik7CiAgICAgbV9jbGllbnQtPmxpbmtMb2Fk
aW5nRXJyb3JlZCgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTGlu
a0xvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xpbmtMb2FkZXIuaAppbmRleCBhZDRk
NTc5ZjA4Y2NlMzM3NTNjYWU3MDVjYzlmYTljYzM2YjMxOWIyLi43NDBkMmJjYzkzOTcyMTkwYmVh
YzVkMjdkZWE4ODE3MDc2NzFjMjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
TGlua0xvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9MaW5rTG9hZGVyLmgKQEAg
LTU5LDggKzU5LDggQEAgcHVibGljOgogICAgIGJvb2wgbG9hZExpbmsoY29uc3QgTGlua1JlbEF0
dHJpYnV0ZSYsIGNvbnN0IFN0cmluZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBzaXplcywgY29uc3Qg
VVJMJiwgRG9jdW1lbnQqKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIGxpbmtMb2FkVGltZXJGaXJl
ZChUaW1lciYpOwotICAgIHZvaWQgbGlua0xvYWRpbmdFcnJvclRpbWVyRmlyZWQoVGltZXImKTsK
KyAgICB2b2lkIGxpbmtMb2FkVGltZXJGaXJlZCgpOworICAgIHZvaWQgbGlua0xvYWRpbmdFcnJv
clRpbWVyRmlyZWQoKTsKIAogICAgIExpbmtMb2FkZXJDbGllbnQqIG1fY2xpZW50OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKaW5kZXggYWM2ZTA4
YTg3MjU1YWQ5MTk3N2M3OTAzMzRlNTU5ZWU5NjFlYzhmMi4uOTFjYmEwNjZkMTA0ODExNzQ2MTBl
YjYzNDc4YzhhZTdkODllZDkyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05h
dmlnYXRpb25TY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0
aW9uU2NoZWR1bGVyLmNwcApAQCAtMjgwLDcgKzI4MCw3IEBAIHByaXZhdGU6CiAKIE5hdmlnYXRp
b25TY2hlZHVsZXI6Ok5hdmlnYXRpb25TY2hlZHVsZXIoRnJhbWUmIGZyYW1lKQogICAgIDogbV9m
cmFtZShmcmFtZSkKLSAgICAsIG1fdGltZXIodGhpcywgJk5hdmlnYXRpb25TY2hlZHVsZXI6OnRp
bWVyRmlyZWQpCisgICAgLCBtX3RpbWVyKCp0aGlzLCAmTmF2aWdhdGlvblNjaGVkdWxlcjo6dGlt
ZXJGaXJlZCkKIHsKIH0KIApAQCAtNDMwLDcgKzQzMCw3IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVk
dWxlcjo6c2NoZWR1bGVIaXN0b3J5TmF2aWdhdGlvbihpbnQgc3RlcHMpCiAgICAgc2NoZWR1bGUo
c3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRIaXN0b3J5TmF2aWdhdGlvbj4oc3RlcHMpKTsKIH0K
IAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTmF2
aWdhdGlvblNjaGVkdWxlcjo6dGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFtX2ZyYW1lLnBhZ2Uo
KSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05h
dmlnYXRpb25TY2hlZHVsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2No
ZWR1bGVyLmgKaW5kZXggMzU2ZjE4OGZiMjAzYjUwODM4ZTEwMTdhMDExODQ0ODU2YzllYjYyYi4u
ODUyMjg0MGFmMzI0MmMyNzA3MmMwY2NhNDM4Nzg2MTRiMzBmMTdmZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCkBAIC04Myw3ICs4Myw3IEBAIHByaXZh
dGU6CiAgICAgYm9vbCBzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24oKSBjb25zdDsKICAgICBib29s
IHNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbihjb25zdCBVUkwmKSBjb25zdDsKIAotICAgIHZvaWQg
dGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwogICAgIHZvaWQgc2No
ZWR1bGUoc3RkOjp1bmlxdWVfcHRyPFNjaGVkdWxlZE5hdmlnYXRpb24+KTsKIAogICAgIHN0YXRp
YyBMb2NrQmFja0ZvcndhcmRMaXN0IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KEZyYW1lJiB0YXJn
ZXRGcmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKaW5kZXggZmI2OWE3NTIx
NzAyMWI2NTczMmJlZjE0MTNlMzBiZTI4NDk4ZDIzNy4uNWIzYjk5MWE4NDIyZWY2YzQzMzVmMzEy
M2ExNzNlMWI5OTk5NjE1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdM
b2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAt
MTE1LDcgKzExNSw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6Y3JlYXRlUGluZ0xvYWRlcihGcmFtZSYg
ZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIH0KIAogUGluZ0xvYWRlcjo6UGluZ0xv
YWRlcihGcmFtZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKLSAgICA6IG1fdGlt
ZW91dCh0aGlzLCAmUGluZ0xvYWRlcjo6dGltZW91dFRpbWVyRmlyZWQpCisgICAgOiBtX3RpbWVv
dXQoKnRoaXMsICZQaW5nTG9hZGVyOjp0aW1lb3V0VGltZXJGaXJlZCkKIHsKICAgICB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIgPSBmcmFtZS5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVl
SWRlbnRpZmllcigpOwogICAgIC8vIEZJWE1FOiBXaHkgYWN0aXZlRG9jdW1lbnRMb2FkZXI/IEkg
d291bGQgaGF2ZSBleHBlY3RlZCBkb2N1bWVudExvYWRlcigpLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5n
TG9hZGVyLmgKaW5kZXggYjdiODVlZmIzYjJmZjBmZmZlNzBhMzgyZjMzZTVlYTc4YzMyOWQ2NS4u
NTE1ZDk3ZDc0ZTNlOTFmOGQxMmFmOTg1ZWFlYWE1Njg4ZDEwZTFkOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUGluZ0xvYWRlci5oCkBAIC02OSw3ICs2OSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2
b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBkb3VibGUpIG92ZXJyaWRlIHsg
ZGVsZXRlIHRoaXM7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRsZSos
IGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZSB7IGRlbGV0ZSB0aGlzOyB9CiAgICAgdmly
dHVhbCBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFJlc291cmNlSGFuZGxlKikgIG92
ZXJyaWRlIHsgcmV0dXJuIG1fc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2U7IH0KLSAgICB2b2lk
IHRpbWVvdXRUaW1lckZpcmVkKFRpbWVyJikgeyBkZWxldGUgdGhpczsgfQorICAgIHZvaWQgdGlt
ZW91dFRpbWVyRmlyZWQoKSB7IGRlbGV0ZSB0aGlzOyB9CiAKICAgICBSZWZQdHI8UmVzb3VyY2VI
YW5kbGU+IG1faGFuZGxlOwogICAgIFRpbWVyIG1fdGltZW91dDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAKaW5kZXggZTllOTUwNDAwY2ViNjU0OWVjNjhlM2FkY2Q2
OGQxY2M3ZDY3YTYxMC4uMDQwNTRkZTRlYWIzOTUxZjk1ZTA3ZTlkZWQzMmRjOTE2ZmQ3ZWUwNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAKQEAgLTg1LDcgKzg1
LDcgQEAgUHJvZ3Jlc3NUcmFja2VyOjpQcm9ncmVzc1RyYWNrZXIoUHJvZ3Jlc3NUcmFja2VyQ2xp
ZW50JiBjbGllbnQpCiAgICAgLCBtX2ZpbmFsUHJvZ3Jlc3NDaGFuZ2VkU2VudChmYWxzZSkKICAg
ICAsIG1fcHJvZ3Jlc3NWYWx1ZSgwKQogICAgICwgbV9udW1Qcm9ncmVzc1RyYWNrZWRGcmFtZXMo
MCkKLSAgICAsIG1fcHJvZ3Jlc3NIZWFydGJlYXRUaW1lcih0aGlzLCAmUHJvZ3Jlc3NUcmFja2Vy
Ojpwcm9ncmVzc0hlYXJ0YmVhdFRpbWVyRmlyZWQpCisgICAgLCBtX3Byb2dyZXNzSGVhcnRiZWF0
VGltZXIoKnRoaXMsICZQcm9ncmVzc1RyYWNrZXI6OnByb2dyZXNzSGVhcnRiZWF0VGltZXJGaXJl
ZCkKICAgICAsIG1faGVhcnRiZWF0c1dpdGhOb1Byb2dyZXNzKDApCiAgICAgLCBtX3RvdGFsQnl0
ZXNSZWNlaXZlZEJlZm9yZVByZXZpb3VzSGVhcnRiZWF0KDApCiAgICAgLCBtX2lzTWFpbkxvYWQo
ZmFsc2UpCkBAIC0zMDUsNyArMzA1LDcgQEAgYm9vbCBQcm9ncmVzc1RyYWNrZXI6OmlzTWFpbkxv
YWRQcm9ncmVzc2luZygpIGNvbnN0CiAgICAgcmV0dXJuIG1fcHJvZ3Jlc3NWYWx1ZSAmJiBtX3By
b2dyZXNzVmFsdWUgPCBmaW5hbFByb2dyZXNzVmFsdWUgJiYgbV9oZWFydGJlYXRzV2l0aE5vUHJv
Z3Jlc3MgPCBsb2FkU3RhbGxlZEhlYXJ0YmVhdENvdW50OwogfQogCi12b2lkIFByb2dyZXNzVHJh
Y2tlcjo6cHJvZ3Jlc3NIZWFydGJlYXRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUHJvZ3Jlc3NU
cmFja2VyOjpwcm9ncmVzc0hlYXJ0YmVhdFRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX3RvdGFs
Qnl0ZXNSZWNlaXZlZCA8IG1fdG90YWxCeXRlc1JlY2VpdmVkQmVmb3JlUHJldmlvdXNIZWFydGJl
YXQgKyBtaW51bXVtQnl0ZXNQZXJIZWFydGJlYXRGb3JQcm9ncmVzcykKICAgICAgICAgKyttX2hl
YXJ0YmVhdHNXaXRoTm9Qcm9ncmVzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Qcm9ncmVzc1RyYWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNr
ZXIuaAppbmRleCA4YTM5YTExNTE3ZGVmNTQ4YTZiNDRlZTk2MTNlZGRiMDFjMjhiNzMyLi43ZDlk
Y2E0YzE0YTQyYjE2M2ViNzFhNzg3NjM3Y2VhMmNjZWFmYmFjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Byb2dyZXNzVHJhY2tlci5oCkBAIC02Niw3ICs2Niw3IEBAIHByaXZhdGU6CiAgICAgdm9p
ZCByZXNldCgpOwogICAgIHZvaWQgZmluYWxQcm9ncmVzc0NvbXBsZXRlKCk7CiAKLSAgICB2b2lk
IHByb2dyZXNzSGVhcnRiZWF0VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgcHJvZ3Jlc3NI
ZWFydGJlYXRUaW1lckZpcmVkKCk7CiAgICAgCiAgICAgc3RhdGljIHVuc2lnbmVkIGxvbmcgc191
bmlxdWVJZGVudGlmaWVyOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1Jlc291cmNlTG9hZFNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3Vy
Y2VMb2FkU2NoZWR1bGVyLmNwcAppbmRleCA2ZDhiOWU3ZmU0OTZiYTk1NWExODg4N2ZlOWI2MDVk
NzA2YzI4ZTk0Li5kMjIzM2QwMjViNTM1NDJlY2Y0MmJjMzQ2MzM0NThhYzRmOGNjYzY2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcApAQCAt
MTAxLDcgKzEwMSw3IEBAIFJlc291cmNlTG9hZFNjaGVkdWxlciogcmVzb3VyY2VMb2FkU2NoZWR1
bGVyKCkKIAogUmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpSZXNvdXJjZUxvYWRTY2hlZHVsZXIoKQog
ICAgIDogbV9ub25IVFRQUHJvdG9jb2xIb3N0KG5ldyBIb3N0SW5mb3JtYXRpb24oU3RyaW5nKCks
IG1heFJlcXVlc3RzSW5GbGlnaHRGb3JOb25IVFRQUHJvdG9jb2xzKSkKLSAgICAsIG1fcmVxdWVz
dFRpbWVyKHRoaXMsICZSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVkKQor
ICAgICwgbV9yZXF1ZXN0VGltZXIoKnRoaXMsICZSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OnJlcXVl
c3RUaW1lckZpcmVkKQogICAgICwgbV9zdXNwZW5kUGVuZGluZ1JlcXVlc3RzQ291bnQoMCkKICAg
ICAsIG1faXNTZXJpYWxMb2FkaW5nRW5hYmxlZChmYWxzZSkKIHsKQEAgLTMzMiw3ICszMzIsNyBA
QCB2b2lkIFJlc291cmNlTG9hZFNjaGVkdWxlcjo6c2NoZWR1bGVTZXJ2ZVBlbmRpbmdSZXF1ZXN0
cygpCiAgICAgICAgIG1fcmVxdWVzdFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBS
ZXNvdXJjZUxvYWRTY2hlZHVsZXI6OnJlcXVlc3RUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVz
b3VyY2VMb2FkU2NoZWR1bGVyOjpyZXF1ZXN0VGltZXJGaXJlZCgpCiB7CiAgICAgTE9HKFJlc291
cmNlTG9hZGluZywgIlJlc291cmNlTG9hZFNjaGVkdWxlcjo6cmVxdWVzdFRpbWVyRmlyZWRcbiIp
OwogICAgIHNlcnZlUGVuZGluZ1JlcXVlc3RzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkU2NoZWR1bGVyLmgKaW5kZXggNWIzNzQyZjM5MzFmMDlmYzM1YTkxNmI2NTFi
MjYxOTk0MWFlMzM0ZC4uMzcwMzQzODRkNzc5OWE4ZmVkNTA4NzE3NjA4ZTIzYzQ4YmJkM2I5OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZFNjaGVkdWxlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRTY2hlZHVsZXIuaApAQCAt
ODQsNyArODQsNyBAQCBwcm90ZWN0ZWQ6CiBwcml2YXRlOgogICAgIHZvaWQgc2NoZWR1bGVMb2Fk
KFJlc291cmNlTG9hZGVyKik7CiAgICAgdm9pZCBzY2hlZHVsZVNlcnZlUGVuZGluZ1JlcXVlc3Rz
KCk7Ci0gICAgdm9pZCByZXF1ZXN0VGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgcmVxdWVz
dFRpbWVyRmlyZWQoKTsKIAogICAgIGJvb2wgaXNTdXNwZW5kaW5nUGVuZGluZ1JlcXVlc3RzKCkg
Y29uc3QgeyByZXR1cm4gISFtX3N1c3BlbmRQZW5kaW5nUmVxdWVzdHNDb3VudDsgfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tMb2FkZXIuY3BwCmluZGV4IGVkMGNiNzViN2IxNjgy
ZTNiZDVlOGRlMTQ0ZTNmZTIxNmI1MzljYWUuLjk5NGNlZGQ5Njg0MTI3NzAyNTE4OTU5NWQ1YzZk
ODY5Y2Q2MDgzNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tM
b2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tMb2FkZXIuY3Bw
CkBAIC00Niw3ICs0Niw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIFRleHRUcmFja0xvYWRlcjo6
VGV4dFRyYWNrTG9hZGVyKFRleHRUcmFja0xvYWRlckNsaWVudCYgY2xpZW50LCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0KQogICAgIDogbV9jbGllbnQoY2xpZW50KQogICAgICwgbV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQpCi0gICAgLCBtX2N1ZUxvYWRUaW1lcih0aGlz
LCAmVGV4dFRyYWNrTG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCkKKyAgICAsIG1fY3VlTG9hZFRp
bWVyKCp0aGlzLCAmVGV4dFRyYWNrTG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCkKICAgICAsIG1f
c3RhdGUoSWRsZSkKICAgICAsIG1fcGFyc2VPZmZzZXQoMCkKICAgICAsIG1fbmV3Q3Vlc0F2YWls
YWJsZShmYWxzZSkKQEAgLTU5LDEwICs1OSw4IEBAIFRleHRUcmFja0xvYWRlcjo6flRleHRUcmFj
a0xvYWRlcigpCiAgICAgICAgIG1fcmVzb3VyY2UtPnJlbW92ZUNsaWVudCh0aGlzKTsKIH0KIAot
dm9pZCBUZXh0VHJhY2tMb2FkZXI6OmN1ZUxvYWRUaW1lckZpcmVkKFRpbWVyKiB0aW1lcikKK3Zv
aWQgVGV4dFRyYWNrTG9hZGVyOjpjdWVMb2FkVGltZXJGaXJlZCgpCiB7Ci0gICAgQVNTRVJUX1VO
VVNFRCh0aW1lciwgdGltZXIgPT0gJm1fY3VlTG9hZFRpbWVyKTsKLSAgICAKICAgICBpZiAobV9u
ZXdDdWVzQXZhaWxhYmxlKSB7CiAgICAgICAgIG1fbmV3Q3Vlc0F2YWlsYWJsZSA9IGZhbHNlOwog
ICAgICAgICBtX2NsaWVudC5uZXdDdWVzQXZhaWxhYmxlKHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRUcmFja0xvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1RleHRUcmFja0xvYWRlci5oCmluZGV4IDgyNzU0ZGZlNTAxMDI5OGExZjcwNDRkMmQ1Y2Ri
ZmY0OTBhZTE3MWIuLjc2OGNiZTk0ZGRmM2MyM2Y0MzZiYzA3M2M3MGJmMjZhYTE0YmRlYzYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0VHJhY2tMb2FkZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmgKQEAgLTc5LDcgKzc5LDcgQEAg
cHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgZmlsZUZhaWxlZFRvUGFyc2UoKSBvdmVycmlkZTsK
ICAgICAKICAgICB2b2lkIHByb2Nlc3NOZXdDdWVEYXRhKENhY2hlZFJlc291cmNlKik7Ci0gICAg
dm9pZCBjdWVMb2FkVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgY3VlTG9hZFRpbWVyRmly
ZWQoKTsKICAgICB2b2lkIGNvcnNQb2xpY3lQcmV2ZW50ZWRMb2FkKCk7CiAKICAgICBlbnVtIFN0
YXRlIHsgSWRsZSwgTG9hZGluZywgRmluaXNoZWQsIEZhaWxlZCB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggZDNmODg2ZThjMGU1MjEy
ZTdhNWI5ZjQ3ZGZlYzYxNzg5ZDI1Nzc4Ni4uMDJkM2ZlODZiY2E2ZWFiYjhhOTEyODRkN2FkMDhl
NGY1ZTJiNTU4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2UuY3BwCkBAIC0xMTAsNyArMTEwLDcgQEAgREVGSU5FX0RFQlVHX09OTFlfR0xPQkFMKFJl
ZkNvdW50ZWRMZWFrQ291bnRlciwgY2FjaGVkUmVzb3VyY2VMZWFrQ291bnRlciwgKCJDYWMKIAog
Q2FjaGVkUmVzb3VyY2U6OkNhY2hlZFJlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgVHlwZSB0eXBlLCBTZXNzaW9uSUQgc2Vzc2lvbklEKQogICAgIDogbV9yZXNvdXJjZVJl
cXVlc3QocmVxdWVzdCkKLSAgICAsIG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyKHRoaXMsICZD
YWNoZWRSZXNvdXJjZTo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQsIGRlYWREZWNvZGVk
RGF0YURlbGV0aW9uSW50ZXJ2YWxGb3JSZXNvdXJjZVR5cGUodHlwZSkpCisgICAgLCBtX2RlY29k
ZWREYXRhRGVsZXRpb25UaW1lcigqdGhpcywgJkNhY2hlZFJlc291cmNlOjpkZWNvZGVkRGF0YURl
bGV0aW9uVGltZXJGaXJlZCwgZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbEZvclJlc291
cmNlVHlwZSh0eXBlKSkKICAgICAsIG1fc2Vzc2lvbklEKHNlc3Npb25JRCkKICAgICAsIG1fbG9h
ZFByaW9yaXR5KGRlZmF1bHRQcmlvcml0eUZvclJlc291cmNlVHlwZSh0eXBlKSkKICAgICAsIG1f
cmVzcG9uc2VUaW1lc3RhbXAoY3VycmVudFRpbWUoKSkKQEAgLTcyNiw3ICs3MjYsNyBAQCB2b2lk
IENhY2hlZFJlc291cmNlOjpzZXRMb2FkUHJpb3JpdHkoUmVzb3VyY2VMb2FkUHJpb3JpdHkgbG9h
ZFByaW9yaXR5KQogaW5saW5lIENhY2hlZFJlc291cmNlOjpDYWxsYmFjazo6Q2FsbGJhY2soQ2Fj
aGVkUmVzb3VyY2UmIHJlc291cmNlLCBDYWNoZWRSZXNvdXJjZUNsaWVudCYgY2xpZW50KQogICAg
IDogbV9yZXNvdXJjZShyZXNvdXJjZSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1f
dGltZXIodGhpcywgJkNhbGxiYWNrOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigqdGhpcywg
JkNhbGxiYWNrOjp0aW1lckZpcmVkKQogewogICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KDApOwog
fQpAQCAtNzM3LDcgKzczNyw3IEBAIGlubGluZSB2b2lkIENhY2hlZFJlc291cmNlOjpDYWxsYmFj
azo6Y2FuY2VsKCkKICAgICAgICAgbV90aW1lci5zdG9wKCk7CiB9CiAKLXZvaWQgQ2FjaGVkUmVz
b3VyY2U6OkNhbGxiYWNrOjp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgQ2FjaGVkUmVzb3VyY2U6
OkNhbGxiYWNrOjp0aW1lckZpcmVkKCkKIHsKICAgICBtX3Jlc291cmNlLmRpZEFkZENsaWVudCgm
bV9jbGllbnQpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3Vy
Y2UuaAppbmRleCA1YTI0N2Q1NDg1MDhjMWQ5MDAzYjdhYmZlNTBlNTQ5YTc5YTdjYWM4Li5kODZh
MWQ0YzNiYjRmYmUyY2ZjODExYjg0ODQ3YjU5ZjA0NDRhMDE4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaApAQCAtMzUyLDcgKzM1Miw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGNhbmNlbCgpOwogCiBwcml2YXRlOgotICAgIHZvaWQgdGltZXJGaXJlZChU
aW1lciYpOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwogCiAgICAgQ2FjaGVkUmVzb3VyY2UmIG1f
cmVzb3VyY2U7CiAgICAgQ2FjaGVkUmVzb3VyY2VDbGllbnQmIG1fY2xpZW50OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5k
ZXggNDA1OTAyYzAxZjc4NmNlOWY4NmFiZGFkNzk1NmIxYWE4ZWQzNjQ5MC4uMzY5MmY4ZWZjOTZh
ZWM4NTBkN2RhMjhkODYyYzViYmViMjdhZGM2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC0xMTcsNyArMTE3LDcg
QEAgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OkNhY2hlZFJlc291cmNlTG9hZGVyKERvY3VtZW50TG9h
ZGVyKiBkb2N1bWVudExvYWRlcikKICAgICA6IG1fZG9jdW1lbnQoMCkKICAgICAsIG1fZG9jdW1l
bnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIpCiAgICAgLCBtX3JlcXVlc3RDb3VudCgwKQotICAgICwg
bV9nYXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXIodGhpcywgJkNhY2hlZFJlc291
cmNlTG9hZGVyOjpnYXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXJGaXJlZCkKKyAg
ICAsIG1fZ2FyYmFnZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyKCp0aGlzLCAmQ2FjaGVk
UmVzb3VyY2VMb2FkZXI6OmdhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lckZpcmVk
KQogICAgICwgbV9hdXRvTG9hZEltYWdlcyh0cnVlKQogICAgICwgbV9pbWFnZXNFbmFibGVkKHRy
dWUpCiAgICAgLCBtX2FsbG93U3RhbGVSZXNvdXJjZXMoZmFsc2UpCkBAIC03OTgsOSArNzk4LDgg
QEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJl
c291cmNlLCBib29sIHNob3VsZFBlcmZvcm0KIC8vIGJvb2trZWVwaW5nIG9uIENhY2hlZFJlc291
cmNlcywgc28gaW5zdGVhZCBwc2V1ZG8tR0MgdGhlbSAtLSB3aGVuIHRoZQogLy8gcmVmZXJlbmNl
IGNvdW50IHJlYWNoZXMgMSwgbV9kb2N1bWVudFJlc291cmNlcyBpcyB0aGUgb25seSByZWZlcmVu
Y2UsIHNvCiAvLyByZW1vdmUgaXQgZnJvbSB0aGUgbWFwLgotdm9pZCBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6Z2FyYmFnZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyRmlyZWQoVGltZXImIHRp
bWVyKQordm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Z2FyYmFnZUNvbGxlY3REb2N1bWVudFJl
c291cmNlc1RpbWVyRmlyZWQoKQogewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9
PSAmbV9nYXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXIpOwogICAgIGdhcmJhZ2VD
b2xsZWN0RG9jdW1lbnRSZXNvdXJjZXMoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAppbmRleCBhZWJhMjU0NGYxZjU5Y2U2
YWQ5MDQzMjZmMTIwMDU1MTUyZDI3YzU1Li43OTU4ZTYyZWFmMmNiM2QxZjMyMTU5MWE2NWM2MmQ5
MDViMzRiMmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuaApAQCAtMTUyLDcgKzE1Miw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBz
aG91bGRDb250aW51ZUFmdGVyTm90aWZ5aW5nTG9hZGVkRnJvbU1lbW9yeUNhY2hlKGNvbnN0IENh
Y2hlZFJlc291cmNlUmVxdWVzdCYsIENhY2hlZFJlc291cmNlKik7CiAgICAgYm9vbCBjaGVja0lu
c2VjdXJlQ29udGVudChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgY29uc3QgVVJMJikgY29uc3Q7CiAK
LSAgICB2b2lkIGdhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lckZpcmVkKFRpbWVy
Jik7CisgICAgdm9pZCBnYXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXJGaXJlZCgp
OwogICAgIHZvaWQgcGVyZm9ybVBvc3RMb2FkQWN0aW9ucygpOwogCiAgICAgYm9vbCBjbGllbnRE
ZWZlcnNJbWFnZShjb25zdCBVUkwmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNv
bi9JY29uRGF0YWJhc2UuY3BwCmluZGV4IGYxMGM0MTNkMzRhMTgxNWQ0MjZiNzBkZmEwZWJhMWE5
Y2RlNjY2YWUuLjk4MzhlYTY1NTU4YmNlYTZjMjliNGQ0N2NmMTY1NzQ0NDZhZDM0N2IgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcApAQCAtNzg2LDcgKzc4
Niw3IEBAIHNpemVfdCBJY29uRGF0YWJhc2U6Omljb25SZWNvcmRDb3VudFdpdGhEYXRhKCkKIH0K
IAogSWNvbkRhdGFiYXNlOjpJY29uRGF0YWJhc2UoKQotICAgIDogbV9zeW5jVGltZXIodGhpcywg
Jkljb25EYXRhYmFzZTo6c3luY1RpbWVyRmlyZWQpCisgICAgOiBtX3N5bmNUaW1lcigqdGhpcywg
Jkljb25EYXRhYmFzZTo6c3luY1RpbWVyRmlyZWQpCiAgICAgLCBtX3N5bmNUaHJlYWRSdW5uaW5n
KGZhbHNlKQogICAgICwgbV9zY2hlZHVsZU9yRGVmZXJTeW5jVGltZXJSZXF1ZXN0ZWQoZmFsc2Up
CiAgICAgLCBtX2lzRW5hYmxlZChmYWxzZSkKQEAgLTg1NSw3ICs4NTUsNyBAQCB2b2lkIEljb25E
YXRhYmFzZTo6c2NoZWR1bGVPckRlZmVyU3luY1RpbWVyKCkKICAgICB9KTsKIH0KIAotdm9pZCBJ
Y29uRGF0YWJhc2U6OnN5bmNUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSWNvbkRhdGFiYXNlOjpz
eW5jVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUX05PVF9TWU5DX1RIUkVBRCgpOwogICAgIHdh
a2VTeW5jVGhyZWFkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9J
Y29uRGF0YWJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5o
CmluZGV4IGM3ZDkyZjJkZDkyMWY3ZTM5NDk4Zjg1NzQyNDcwMDc1YmZhZTAzYmUuLjcxYjE3ZWRj
NzliZDU1MGY2NmU1YWViYzVhYzg5ZjI4MjAzNTA1N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9pY29uL0ljb25EYXRhYmFzZS5oCkBAIC0xMTUsNyArMTE1LDcgQEAgcHJpdmF0ZToKIAogICAg
IHZvaWQgd2FrZVN5bmNUaHJlYWQoKTsKICAgICB2b2lkIHNjaGVkdWxlT3JEZWZlclN5bmNUaW1l
cigpOwotICAgIHZvaWQgc3luY1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHN5bmNUaW1l
ckZpcmVkKCk7CiAgICAgCiAgICAgVGltZXIgbV9zeW5jVGltZXI7CiAgICAgVGhyZWFkSWRlbnRp
ZmllciBtX3N5bmNUaHJlYWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0F1dG9z
Y3JvbGxDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQXV0b3Njcm9sbENvbnRy
b2xsZXIuY3BwCmluZGV4IGIxZGNmZjI1YmRjMzAxMDEzZDcyOWJmOWU4NjFjNWFhODU4NTY5Y2Eu
LmE2NzQxOWJhMzc0MzVmOTgwNGJlMGQzODg1OTZlNTM4MGUzN2FhOTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQXV0b3Njcm9sbENvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQXV0b3Njcm9sbENvbnRyb2xsZXIuY3BwCkBAIC01Niw3ICs1Niw3IEBAIHN0
YXRpYyBGcmFtZSogZ2V0TWFpbkZyYW1lKEZyYW1lKiBmcmFtZSkKICNlbmRpZgogCiBBdXRvc2Ny
b2xsQ29udHJvbGxlcjo6QXV0b3Njcm9sbENvbnRyb2xsZXIoKQotICAgIDogbV9hdXRvc2Nyb2xs
VGltZXIodGhpcywgJkF1dG9zY3JvbGxDb250cm9sbGVyOjphdXRvc2Nyb2xsVGltZXJGaXJlZCkK
KyAgICA6IG1fYXV0b3Njcm9sbFRpbWVyKCp0aGlzLCAmQXV0b3Njcm9sbENvbnRyb2xsZXI6OmF1
dG9zY3JvbGxUaW1lckZpcmVkKQogICAgICwgbV9hdXRvc2Nyb2xsUmVuZGVyZXIoMCkKICAgICAs
IG1fYXV0b3Njcm9sbFR5cGUoTm9BdXRvc2Nyb2xsKQogICAgICwgbV9kcmFnQW5kRHJvcEF1dG9z
Y3JvbGxTdGFydFRpbWUoMCkKQEAgLTIzMSw3ICsyMzEsNyBAQCBib29sIEF1dG9zY3JvbGxDb250
cm9sbGVyOjpwYW5TY3JvbGxJblByb2dyZXNzKCkgY29uc3QKIH0KICNlbmRpZgogCi12b2lkIEF1
dG9zY3JvbGxDb250cm9sbGVyOjphdXRvc2Nyb2xsVGltZXJGaXJlZChUaW1lciYpCit2b2lkIEF1
dG9zY3JvbGxDb250cm9sbGVyOjphdXRvc2Nyb2xsVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFt
X2F1dG9zY3JvbGxSZW5kZXJlcikgewogICAgICAgICBzdG9wQXV0b3Njcm9sbFRpbWVyKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0F1dG9zY3JvbGxDb250cm9sbGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0F1dG9zY3JvbGxDb250cm9sbGVyLmgKaW5kZXggYTA2MGY5YTRk
NGVlZWZmZDZhMmExMDRmMjgwNzQ2MjhhZGE3YzJmZS4uMjBlNzA5Y2MwMjI0ZTdmYjBkMmE0MjEz
MzE5MmM3MDhhYmM1YTliZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9BdXRvc2Ny
b2xsQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQXV0b3Njcm9sbENvbnRy
b2xsZXIuaApAQCAtNjksNyArNjksNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHJpdmF0ZToKLSAg
ICB2b2lkIGF1dG9zY3JvbGxUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBhdXRvc2Nyb2xs
VGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRBdXRvc2Nyb2xsVGltZXIoKTsKICNpZiBFTkFC
TEUoUEFOX1NDUk9MTElORykKICAgICB2b2lkIHVwZGF0ZVBhblNjcm9sbFN0YXRlKEZyYW1lVmll
dyosIGNvbnN0IEludFBvaW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nh
cHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNl
clByZWZlcmVuY2VzLmNwcAppbmRleCA5ZWMwNWQ3NDUxZTg4YWRiNDIwYjM0M2EyNTE5M2NkODYx
YWQ5ZTM1Li4zNDBmZDdlMmZjYTg0MTBlNGFiZDczYzE1YjQxYzM2OGUxMTYwZTAzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAKQEAgLTQyLDcg
KzQyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogQ2FwdGlvblVzZXJQcmVmZXJlbmNlczo6Q2Fw
dGlvblVzZXJQcmVmZXJlbmNlcyhQYWdlR3JvdXAmIGdyb3VwKQogICAgIDogbV9wYWdlR3JvdXAo
Z3JvdXApCiAgICAgLCBtX2Rpc3BsYXlNb2RlKEZvcmNlZE9ubHkpCi0gICAgLCBtX3RpbWVyKHRo
aXMsICZDYXB0aW9uVXNlclByZWZlcmVuY2VzOjp0aW1lckZpcmVkKQorICAgICwgbV90aW1lcigq
dGhpcywgJkNhcHRpb25Vc2VyUHJlZmVyZW5jZXM6OnRpbWVyRmlyZWQpCiAgICAgLCBtX3Rlc3Rp
bmdNb2RlKGZhbHNlKQogICAgICwgbV9oYXZlUHJlZmVyZW5jZXMoZmFsc2UpCiB7CkBAIC01Miw3
ICs1Miw3IEBAIENhcHRpb25Vc2VyUHJlZmVyZW5jZXM6On5DYXB0aW9uVXNlclByZWZlcmVuY2Vz
KCkKIHsKIH0KIAotdm9pZCBDYXB0aW9uVXNlclByZWZlcmVuY2VzOjp0aW1lckZpcmVkKFRpbWVy
JikKK3ZvaWQgQ2FwdGlvblVzZXJQcmVmZXJlbmNlczo6dGltZXJGaXJlZCgpCiB7CiAgICAgY2Fw
dGlvblByZWZlcmVuY2VzQ2hhbmdlZCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NhcHRp
b25Vc2VyUHJlZmVyZW5jZXMuaAppbmRleCA2ZjAyYjU3ZDAzY2VlZTUxYWIyOGZjY2IzZjQyZDdh
MTE3MjY5ZWMyLi5kZmU2ZDQ5ZjMzMGI0YmNkYmU1OTUwMmIzZDY3ZTM1NGVlZWFlNWRmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaApAQCAtOTcsNyAr
OTcsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCB1cGRhdGVDYXB0aW9uU3R5bGVTaGVldE92ZXJp
ZGUoKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHRpbWVyRmlyZWQoKTsKICAgICB2b2lkIG5vdGlmeSgpOwogCiAgICAgUGFnZUdyb3VwJiBtX3Bh
Z2VHcm91cDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2FwdGlvblVzZXJQcmVm
ZXJlbmNlc01lZGlhQUYuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZl
cmVuY2VzTWVkaWFBRi5jcHAKaW5kZXggM2JiNzYyOGFiYWYyYzA3ODU0M2VhMzQ5MjQ1NzEwYWVh
ZjMxNTY3YS4uYTQ4YzRiNGY1MTg2YWVlNGQyZDQ3Njk0YTliNzE0YzFjNGVmZjEwYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFBRi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFB
Ri5jcHAKQEAgLTE0MSw3ICsxNDEsNyBAQCBzdGF0aWMgdm9pZCB1c2VyQ2FwdGlvblByZWZlcmVu
Y2VzQ2hhbmdlZE5vdGlmaWNhdGlvbkNhbGxiYWNrKENGTm90aWZpY2F0aW9uQ2VudAogQ2FwdGlv
blVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OkNhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGKFBh
Z2VHcm91cCYgZ3JvdXApCiAgICAgOiBDYXB0aW9uVXNlclByZWZlcmVuY2VzKGdyb3VwKQogI2lm
IEhBVkUoTUVESUFfQUNDRVNTSUJJTElUWV9GUkFNRVdPUkspCi0gICAgLCBtX3VwZGF0ZVN0eWxl
U2hlZXRUaW1lcih0aGlzLCAmQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVwZGF0ZVRp
bWVyRmlyZWQpCisgICAgLCBtX3VwZGF0ZVN0eWxlU2hlZXRUaW1lcigqdGhpcywgJkNhcHRpb25V
c2VyUHJlZmVyZW5jZXNNZWRpYUFGOjp1cGRhdGVUaW1lckZpcmVkKQogICAgICwgbV9saXN0ZW5p
bmdGb3JQcmVmZXJlbmNlQ2hhbmdlcyhmYWxzZSkKICNlbmRpZgogewpAQCAtMjI0LDcgKzIyNCw3
IEBAIGJvb2wgQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVzZXJQcmVmZXJzU3VidGl0
bGVzKCkgY29uc3QKICAgICByZXR1cm4gIShjYXB0aW9uaW5nTWVkaWFDaGFyYWN0ZXJpc3RpY3Mg
JiYgQ0ZBcnJheUdldENvdW50KGNhcHRpb25pbmdNZWRpYUNoYXJhY3RlcmlzdGljcy5nZXQoKSkp
OwogfQogCi12b2lkIENhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGOjp1cGRhdGVUaW1lckZp
cmVkKFRpbWVyJikKK3ZvaWQgQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUY6OnVwZGF0ZVRp
bWVyRmlyZWQoKQogewogICAgIHVwZGF0ZUNhcHRpb25TdHlsZVNoZWV0T3ZlcmlkZSgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVk
aWFBRi5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFB
Ri5oCmluZGV4IDhiMGJiYzczNGM0YWU3ZGQ5NDQyODhjYjJiNGNkZDY2OWE3OGM3NmIuLjQzZmM5
MzMxYTg4OGM2Y2M3YmM4MDJkYTM0NjgzYWZjOGE0NzM2YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUYuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmgKQEAgLTY4LDcgKzY4
LDcgQEAgcHVibGljOgogCiBwcml2YXRlOgogI2lmIEhBVkUoTUVESUFfQUNDRVNTSUJJTElUWV9G
UkFNRVdPUkspCi0gICAgdm9pZCB1cGRhdGVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCB1
cGRhdGVUaW1lckZpcmVkKCk7CiAKICAgICBTdHJpbmcgY2FwdGlvbnNXaW5kb3dDU1MoKSBjb25z
dDsKICAgICBTdHJpbmcgY2FwdGlvbnNCYWNrZ3JvdW5kQ1NTKCkgY29uc3Q7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RldmljZUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9EZXZpY2VDb250cm9sbGVyLmNwcAppbmRleCA2YTBlMDExN2JiNmM3YzkxNjc5NWNh
ZDVmNWQ0MTA5YTEyMWIwMDkyLi5iZDViYTE5MjNlNzU5ZGM2YmI5NDMxZWVkNDJmYTczYWJjZmI5
ZjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RldmljZUNvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRGV2aWNlQ29udHJvbGxlci5jcHAKQEAgLTM1LDcg
KzM1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBEZXZpY2VDb250cm9sbGVyOjpEZXZpY2VD
b250cm9sbGVyKERldmljZUNsaWVudCogY2xpZW50KQogICAgIDogbV9jbGllbnQoY2xpZW50KQot
ICAgICwgbV90aW1lcih0aGlzLCAmRGV2aWNlQ29udHJvbGxlcjo6ZmlyZURldmljZUV2ZW50KQor
ICAgICwgbV90aW1lcigqdGhpcywgJkRldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudCkK
IHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogfQpAQCAtODQsOSArODQsOCBAQCB2b2lkIERldmlj
ZUNvbnRyb2xsZXI6OmRpc3BhdGNoRGV2aWNlRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gcHJwRXZl
bnQpCiAgICAgfQogfQogCi12b2lkIERldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudChU
aW1lciYgdGltZXIpCit2b2lkIERldmljZUNvbnRyb2xsZXI6OmZpcmVEZXZpY2VFdmVudCgpCiB7
Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX3RpbWVyKTsKICAgICBBU1NF
UlQoaGFzTGFzdERhdGEoKSk7CiAKICAgICBtX3RpbWVyLnN0b3AoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRGV2aWNlQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9EZXZpY2VDb250cm9sbGVyLmgKaW5kZXggYzQ2NDAzZDRmNDI3YTc1ZmU5ODI4ZWRhYWU3NmQ2
Y2ZjNzhkY2UzNC4uZmRmNWQxZDk2ZDE1Nzc2NzZjYTkwOWY5MTg5M2M1N2Y5ODA4YTVjZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9EZXZpY2VDb250cm9sbGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9EZXZpY2VDb250cm9sbGVyLmgKQEAgLTU2LDcgKzU2LDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxFdmVudD4gZ2V0TGFzdEV2ZW50KCkgeyByZXR1
cm4gMDsgfQogCiBwcm90ZWN0ZWQ6Ci0gICAgdm9pZCBmaXJlRGV2aWNlRXZlbnQoVGltZXImKTsK
KyAgICB2b2lkIGZpcmVEZXZpY2VFdmVudCgpOwogCiAgICAgSGFzaENvdW50ZWRTZXQ8UmVmUHRy
PERPTVdpbmRvdz4+IG1fbGlzdGVuZXJzOwogICAgIEhhc2hDb3VudGVkU2V0PFJlZlB0cjxET01X
aW5kb3c+PiBtX2xhc3RFdmVudExpc3RlbmVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmNwcAppbmRleCBkMDlkZDYwMzU5M2YwZGMzNDIzZDA4MTQ3YmY1Yzk2ZDljODk0Mzk3Li5jZjk0
M2RhMTMzZjI3MGQ2NmI4MmMyMzI4YjJmMzVjNzEwZGYxMWViIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9F
dmVudEhhbmRsZXIuY3BwCkBAIC0zNzYsMTcgKzM3NiwxNyBAQCBFdmVudEhhbmRsZXI6OkV2ZW50
SGFuZGxlcihGcmFtZSYgZnJhbWUpCiAjZW5kaWYKICAgICAsIG1fbW91c2VEb3duV2FzU2luZ2xl
Q2xpY2tJblNlbGVjdGlvbihmYWxzZSkKICAgICAsIG1fc2VsZWN0aW9uSW5pdGlhdGlvblN0YXRl
KEhhdmVOb3RTdGFydGVkU2VsZWN0aW9uKQotICAgICwgbV9ob3ZlclRpbWVyKHRoaXMsICZFdmVu
dEhhbmRsZXI6OmhvdmVyVGltZXJGaXJlZCkKKyAgICAsIG1faG92ZXJUaW1lcigqdGhpcywgJkV2
ZW50SGFuZGxlcjo6aG92ZXJUaW1lckZpcmVkKQogI2lmIEVOQUJMRShDVVJTT1JfU1VQUE9SVCkK
LSAgICAsIG1fY3Vyc29yVXBkYXRlVGltZXIodGhpcywgJkV2ZW50SGFuZGxlcjo6Y3Vyc29yVXBk
YXRlVGltZXJGaXJlZCkKKyAgICAsIG1fY3Vyc29yVXBkYXRlVGltZXIoKnRoaXMsICZFdmVudEhh
bmRsZXI6OmN1cnNvclVwZGF0ZVRpbWVyRmlyZWQpCiAjZW5kaWYKLSAgICAsIG1fbG9uZ01vdXNl
UHJlc3NUaW1lcih0aGlzLCAmRXZlbnRIYW5kbGVyOjpyZWNvZ25pemVMb25nTW91c2VQcmVzcykK
KyAgICAsIG1fbG9uZ01vdXNlUHJlc3NUaW1lcigqdGhpcywgJkV2ZW50SGFuZGxlcjo6cmVjb2du
aXplTG9uZ01vdXNlUHJlc3MpCiAgICAgLCBtX2RpZFJlY29nbml6ZUxvbmdNb3VzZVByZXNzKGZh
bHNlKQogICAgICwgbV9hdXRvc2Nyb2xsQ29udHJvbGxlcihzdGQ6Om1ha2VfdW5pcXVlPEF1dG9z
Y3JvbGxDb250cm9sbGVyPigpKQogICAgICwgbV9tb3VzZURvd25NYXlTdGFydEF1dG9zY3JvbGwo
ZmFsc2UpCiAgICAgLCBtX21vdXNlRG93bldhc0luU3ViZnJhbWUoZmFsc2UpCiAjaWYgIUVOQUJM
RShJT1NfVE9VQ0hfRVZFTlRTKQotICAgICwgbV9mYWtlTW91c2VNb3ZlRXZlbnRUaW1lcih0aGlz
LCAmRXZlbnRIYW5kbGVyOjpmYWtlTW91c2VNb3ZlRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9m
YWtlTW91c2VNb3ZlRXZlbnRUaW1lcigqdGhpcywgJkV2ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92
ZUV2ZW50VGltZXJGaXJlZCkKICNlbmRpZgogICAgICwgbV9zdmdQYW4oZmFsc2UpCiAgICAgLCBt
X3Jlc2l6ZUxheWVyKDApCkBAIC00MjAsNyArNDIwLDcgQEAgRXZlbnRIYW5kbGVyOjpFdmVudEhh
bmRsZXIoRnJhbWUmIGZyYW1lKQogICAgICwgbV9kaWRMb25nUHJlc3NJbnZva2VDb250ZXh0TWVu
dShmYWxzZSkKICAgICAsIG1faXNIYW5kbGluZ1doZWVsRXZlbnQoZmFsc2UpCiAjaWYgRU5BQkxF
KENVUlNPUl9WSVNJQklMSVRZKQotICAgICwgbV9hdXRvSGlkZUN1cnNvclRpbWVyKHRoaXMsICZF
dmVudEhhbmRsZXI6OmF1dG9IaWRlQ3Vyc29yVGltZXJGaXJlZCkKKyAgICAsIG1fYXV0b0hpZGVD
dXJzb3JUaW1lcigqdGhpcywgJkV2ZW50SGFuZGxlcjo6YXV0b0hpZGVDdXJzb3JUaW1lckZpcmVk
KQogI2VuZGlmCiB7CiB9CkBAIC0xMzEwLDcgKzEzMTAsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6
dXNlSGFuZEN1cnNvcihOb2RlKiBub2RlLCBib29sIGlzT3ZlckxpbmssIGJvb2wgc2hpZnRLZXkp
CiAgICAgcmV0dXJuICgoaXNPdmVyTGluayB8fCBpc1N1Ym1pdEltYWdlKG5vZGUpKSAmJiAoIWVk
aXRhYmxlIHx8IGVkaXRhYmxlTGlua0VuYWJsZWQpKTsKIH0KIAotdm9pZCBFdmVudEhhbmRsZXI6
OmN1cnNvclVwZGF0ZVRpbWVyRmlyZWQoVGltZXImKQordm9pZCBFdmVudEhhbmRsZXI6OmN1cnNv
clVwZGF0ZVRpbWVyRmlyZWQoKQogewogICAgIEFTU0VSVChtX2ZyYW1lLmRvY3VtZW50KCkpOwog
ICAgIHVwZGF0ZUN1cnNvcigpOwpAQCAtMTU1Myw5ICsxNTUzLDggQEAgdm9pZCBFdmVudEhhbmRs
ZXI6OmNhbmNlbEF1dG9IaWRlQ3Vyc29yVGltZXIoKQogICAgICAgICBtX2F1dG9IaWRlQ3Vyc29y
VGltZXIuc3RvcCgpOwogfQogCi12b2lkIEV2ZW50SGFuZGxlcjo6YXV0b0hpZGVDdXJzb3JUaW1l
ckZpcmVkKFRpbWVyJiB0aW1lcikKK3ZvaWQgRXZlbnRIYW5kbGVyOjphdXRvSGlkZUN1cnNvclRp
bWVyRmlyZWQoKQogewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV9hdXRv
SGlkZUN1cnNvclRpbWVyKTsKICAgICBtX2N1cnJlbnRNb3VzZUN1cnNvciA9IG5vbmVDdXJzb3Io
KTsKICAgICBGcmFtZVZpZXcqIHZpZXcgPSBtX2ZyYW1lLnZpZXcoKTsKICAgICBpZiAodmlldyAm
JiB2aWV3LT5pc0FjdGl2ZSgpKQpAQCAtMTU3NiwxMCArMTU3NSw4IEBAIHZvaWQgRXZlbnRIYW5k
bGVyOjpiZWdpblRyYWNraW5nUG90ZW50aWFsTG9uZ01vdXNlUHJlc3MoY29uc3QgSGl0VGVzdFJl
c3VsdCYgaGl0CiAgICAgcGFnZS0+Y2hyb21lKCkuZGlkQmVnaW5UcmFja2luZ1BvdGVudGlhbExv
bmdNb3VzZVByZXNzKG1fbW91c2VEb3duUG9zLCBoaXRUZXN0UmVzdWx0KTsKIH0KICAgICAKLXZv
aWQgRXZlbnRIYW5kbGVyOjpyZWNvZ25pemVMb25nTW91c2VQcmVzcyhUaW1lciYgdGltZXIpCit2
b2lkIEV2ZW50SGFuZGxlcjo6cmVjb2duaXplTG9uZ01vdXNlUHJlc3MoKQogewotICAgIEFTU0VS
VF9VTlVTRUQodGltZXIsICZ0aW1lciA9PSAmbV9sb25nTW91c2VQcmVzc1RpbWVyKTsKLQogICAg
IFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLnBhZ2UoKTsKICAgICBpZiAoIXBhZ2UpCiAgICAgICAgIHJl
dHVybjsKQEAgLTI5NDQsOSArMjk0MSw4IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpjYW5jZWxGYWtl
TW91c2VNb3ZlRXZlbnQoKQogICAgIG1fZmFrZU1vdXNlTW92ZUV2ZW50VGltZXIuc3RvcCgpOwog
fQogCi12b2lkIEV2ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZChUaW1l
ciYgdGltZXIpCit2b2lkIEV2ZW50SGFuZGxlcjo6ZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJl
ZCgpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgJnRpbWVyID09ICZtX2Zha2VNb3VzZU1v
dmVFdmVudFRpbWVyKTsKICAgICBBU1NFUlQoIW1fbW91c2VQcmVzc2VkKTsKIAogICAgIGlmICgh
bV9mcmFtZS5zZXR0aW5ncygpLmRldmljZVN1cHBvcnRzTW91c2UoKSkKQEAgLTI5ODAsNyArMjk3
Niw3IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpyZXNpemVMYXllckRlc3Ryb3llZCgpCiAgICAgbV9y
ZXNpemVMYXllciA9IDA7CiB9CiAKLXZvaWQgRXZlbnRIYW5kbGVyOjpob3ZlclRpbWVyRmlyZWQo
VGltZXImKQordm9pZCBFdmVudEhhbmRsZXI6OmhvdmVyVGltZXJGaXJlZCgpCiB7CiAgICAgbV9o
b3ZlclRpbWVyLnN0b3AoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dEhhbmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggNTlk
ZmUwYTI0ZWFkZTNjZmVlZTcxNjk1MzFiMDMwMWU4M2I1Mjg3Ny4uODgwZDYyOTRmNTQ4YzRmY2Yx
MjYxNGQzYmJlN2YwNGMxMzcyOWRmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9F
dmVudEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBA
IC0zMjYsOSArMzI2LDkgQEAgcHJpdmF0ZToKIAogICAgIE9wdGlvbmFsQ3Vyc29yIHNlbGVjdEN1
cnNvcihjb25zdCBIaXRUZXN0UmVzdWx0JiwgYm9vbCBzaGlmdEtleSk7CiAKLSAgICB2b2lkIGhv
dmVyVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgaG92ZXJUaW1lckZpcmVkKCk7CiAjaWYg
RU5BQkxFKENVUlNPUl9TVVBQT1JUKQotICAgIHZvaWQgY3Vyc29yVXBkYXRlVGltZXJGaXJlZChU
aW1lciYpOworICAgIHZvaWQgY3Vyc29yVXBkYXRlVGltZXJGaXJlZCgpOwogI2VuZGlmCiAKICAg
ICBib29sIGxvZ2ljYWxTY3JvbGxPdmVyZmxvdyhTY3JvbGxMb2dpY2FsRGlyZWN0aW9uLCBTY3Jv
bGxHcmFudWxhcml0eSwgTm9kZSogc3RhcnRpbmdOb2RlID0gMCk7CkBAIC0zNDEsNyArMzQxLDcg
QEAgcHJpdmF0ZToKICAgICBzdGF0aWMgYm9vbCBldmVudEludmVydHNUYWJzVG9MaW5rc0NsaWVu
dENhbGxSZXN1bHQoS2V5Ym9hcmRFdmVudCopOwogCiAjaWYgIUVOQUJMRShJT1NfVE9VQ0hfRVZF
TlRTKQotICAgIHZvaWQgZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZChUaW1lciYpOworICAg
IHZvaWQgZmFrZU1vdXNlTW92ZUV2ZW50VGltZXJGaXJlZCgpOwogICAgIHZvaWQgY2FuY2VsRmFr
ZU1vdXNlTW92ZUV2ZW50KCk7CiAjZW5kaWYKIApAQCAtNDM3LDExICs0MzcsMTEgQEAgcHJpdmF0
ZToKICNpZiBFTkFCTEUoQ1VSU09SX1ZJU0lCSUxJVFkpCiAgICAgdm9pZCBzdGFydEF1dG9IaWRl
Q3Vyc29yVGltZXIoKTsKICAgICB2b2lkIGNhbmNlbEF1dG9IaWRlQ3Vyc29yVGltZXIoKTsKLSAg
ICB2b2lkIGF1dG9IaWRlQ3Vyc29yVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgYXV0b0hp
ZGVDdXJzb3JUaW1lckZpcmVkKCk7CiAjZW5kaWYKIAogICAgIHZvaWQgYmVnaW5UcmFja2luZ1Bv
dGVudGlhbExvbmdNb3VzZVByZXNzKGNvbnN0IEhpdFRlc3RSZXN1bHQmKTsKLSAgICB2b2lkIHJl
Y29nbml6ZUxvbmdNb3VzZVByZXNzKFRpbWVyJik7CisgICAgdm9pZCByZWNvZ25pemVMb25nTW91
c2VQcmVzcygpOwogICAgIHZvaWQgY2FuY2VsVHJhY2tpbmdQb3RlbnRpYWxMb25nTW91c2VQcmVz
cygpOwogICAgIGJvb2wgbG9uZ01vdXNlUHJlc3NIeXN0ZXJlc2lzRXhjZWVkZWQoKTsKICAgICB2
b2lkIGNsZWFyTG9uZ01vdXNlUHJlc3NTdGF0ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9FdmVudFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNl
LmNwcAppbmRleCA2MzVjOGVhZDBhYmZiNjYwYWM2NjQzOTQ3ZTQyZmFlNzM0NDk3MTVhLi43MWFk
ODJjNTZiYmRiMjMzZjJlODU0ODIwYzY2YThmMGNmOWUxN2JiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50U291cmNlLmNwcApAQCAtNjUsNyArNjUsNyBAQCBpbmxpbmUgRXZlbnRTb3VyY2U6OkV2ZW50
U291cmNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFVSTCYgdXJsLAog
ICAgICwgbV93aXRoQ3JlZGVudGlhbHMoZmFsc2UpCiAgICAgLCBtX3N0YXRlKENPTk5FQ1RJTkcp
CiAgICAgLCBtX2RlY29kZXIoVGV4dFJlc291cmNlRGVjb2Rlcjo6Y3JlYXRlKCJ0ZXh0L3BsYWlu
IiwgIlVURi04IikpCi0gICAgLCBtX2Nvbm5lY3RUaW1lcih0aGlzLCAmRXZlbnRTb3VyY2U6OmNv
bm5lY3RUaW1lckZpcmVkKQorICAgICwgbV9jb25uZWN0VGltZXIoKnRoaXMsICZFdmVudFNvdXJj
ZTo6Y29ubmVjdFRpbWVyRmlyZWQpCiAgICAgLCBtX2Rpc2NhcmRUcmFpbGluZ05ld2xpbmUoZmFs
c2UpCiAgICAgLCBtX3JlcXVlc3RJbkZsaWdodChmYWxzZSkKICAgICAsIG1fcmVjb25uZWN0RGVs
YXkoZGVmYXVsdFJlY29ubmVjdERlbGF5KQpAQCAtMTcwLDcgKzE3MCw3IEBAIHZvaWQgRXZlbnRT
b3VyY2U6OnNjaGVkdWxlUmVjb25uZWN0KCkKICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGZhbHNlLCBmYWxzZSkpOwogfQogCi12b2lkIEV2
ZW50U291cmNlOjpjb25uZWN0VGltZXJGaXJlZChUaW1lciYpCit2b2lkIEV2ZW50U291cmNlOjpj
b25uZWN0VGltZXJGaXJlZCgpCiB7CiAgICAgY29ubmVjdCgpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dFNvdXJjZS5oCmluZGV4IGE0NTI1ZjQyM2NmYzJlMTI1ZTNjZjVmM2U5MzQ5Nzc1M2NmMzdjZjQu
LmZhYzczMzJlNTI3ZGY1ZTdiZDJlZWJhYzMyZDgxZjRlMmU4YWUxNmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0V2ZW50U291cmNlLmgKQEAgLTk3LDcgKzk3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIG5ldHdv
cmtSZXF1ZXN0RW5kZWQoKTsKICAgICB2b2lkIHNjaGVkdWxlSW5pdGlhbENvbm5lY3QoKTsKICAg
ICB2b2lkIHNjaGVkdWxlUmVjb25uZWN0KCk7Ci0gICAgdm9pZCBjb25uZWN0VGltZXJGaXJlZChU
aW1lciYpOworICAgIHZvaWQgY29ubmVjdFRpbWVyRmlyZWQoKTsKICAgICB2b2lkIGFib3J0Q29u
bmVjdGlvbkF0dGVtcHQoKTsKICAgICB2b2lkIHBhcnNlRXZlbnRTdHJlYW0oKTsKICAgICB2b2lk
IHBhcnNlRXZlbnRTdHJlYW1MaW5lKHVuc2lnbmVkIHBvcywgaW50IGZpZWxkTGVuZ3RoLCBpbnQg
bGluZUxlbmd0aCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJv
bGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXgg
N2E1ZjVkNGFkMTI2ODMyZWZjNGU5OTdhODY1OTgyOThmMzA0MTYyNi4uZGJjNzkzYThiODBiZGUx
MTZlZDQ4Zjk2YTdjZDFjODk4ODhmNTYyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250
cm9sbGVyLmNwcApAQCAtMTY0LDcgKzE2NCw3IEBAIEZvY3VzQ29udHJvbGxlcjo6Rm9jdXNDb250
cm9sbGVyKFBhZ2UmIHBhZ2UsIFZpZXdTdGF0ZTo6RmxhZ3Mgdmlld1N0YXRlKQogICAgIDogbV9w
YWdlKHBhZ2UpCiAgICAgLCBtX2lzQ2hhbmdpbmdGb2N1c2VkRnJhbWUoZmFsc2UpCiAgICAgLCBt
X3ZpZXdTdGF0ZSh2aWV3U3RhdGUpCi0gICAgLCBtX2ZvY3VzUmVwYWludFRpbWVyKHRoaXMsICZG
b2N1c0NvbnRyb2xsZXI6OmZvY3VzUmVwYWludFRpbWVyRmlyZWQpCisgICAgLCBtX2ZvY3VzUmVw
YWludFRpbWVyKCp0aGlzLCAmRm9jdXNDb250cm9sbGVyOjpmb2N1c1JlcGFpbnRUaW1lckZpcmVk
KQogewogfQogCkBAIC05MTIsNyArOTEyLDcgQEAgdm9pZCBGb2N1c0NvbnRyb2xsZXI6OnNldEZv
Y3VzZWRFbGVtZW50TmVlZHNSZXBhaW50KCkKICAgICBtX2ZvY3VzUmVwYWludFRpbWVyLnN0YXJ0
T25lU2hvdCgwLjAzMyk7CiB9CiAKLXZvaWQgRm9jdXNDb250cm9sbGVyOjpmb2N1c1JlcGFpbnRU
aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgRm9jdXNDb250cm9sbGVyOjpmb2N1c1JlcGFpbnRUaW1l
ckZpcmVkKCkKIHsKICAgICBEb2N1bWVudCogZm9jdXNlZERvY3VtZW50ID0gZm9jdXNlZE9yTWFp
bkZyYW1lKCkuZG9jdW1lbnQoKTsKICAgICBpZiAoIWZvY3VzZWREb2N1bWVudCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5oCmluZGV4IDM2ZjEyMDA4NDk3Y2E1ZThmNzE5OTc1NWJj
MzUzYWM2NGY5MzljOTcuLjJmYjFmYTU0MDJjNTZlOWQxYTgzMzhkOWZjYjIwZWE2YzhjYzI2ZGMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuaApAQCAtMTIwLDcgKzEyMCw3IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBhZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5SW5Db250YWluZXIo
Tm9kZSogY29udGFpbmVyLCBjb25zdCBMYXlvdXRSZWN0JiBzdGFydGluZ1JlY3QsIEZvY3VzRGly
ZWN0aW9uLCBLZXlib2FyZEV2ZW50Kik7CiAgICAgdm9pZCBmaW5kRm9jdXNDYW5kaWRhdGVJbkNv
bnRhaW5lcihOb2RlKiBjb250YWluZXIsIGNvbnN0IExheW91dFJlY3QmIHN0YXJ0aW5nUmVjdCwg
Rm9jdXNEaXJlY3Rpb24sIEtleWJvYXJkRXZlbnQqLCBGb2N1c0NhbmRpZGF0ZSYgY2xvc2VzdCk7
CiAKLSAgICB2b2lkIGZvY3VzUmVwYWludFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGZv
Y3VzUmVwYWludFRpbWVyRmlyZWQoKTsKIAogICAgIFBhZ2UmIG1fcGFnZTsKICAgICBSZWZQdHI8
RnJhbWU+IG1fZm9jdXNlZEZyYW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9G
cmFtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAppbmRleCA5YzM3NmE5MDUz
ZDkwNjJkZDAzZGMzZjQyMjUwMzA5MDdiYzI1MmVlLi40OThiZDZkNzgxOTFkZjE3NjY3MWExZDNk
MGMxMjE3OTU4MzI1NDQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMTYyLDcgKzE2Miw3IEBA
IEZyYW1lOjpGcmFtZShQYWdlJiBwYWdlLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxl
bWVudCwgRnJhbWVMb2FkZXJDbGllbnQmCiAgICAgLCBtX2V2ZW50SGFuZGxlcihzdGQ6Om1ha2Vf
dW5pcXVlPEV2ZW50SGFuZGxlcj4oKnRoaXMpKQogICAgICwgbV9hbmltYXRpb25Db250cm9sbGVy
KHN0ZDo6bWFrZV91bmlxdWU8QW5pbWF0aW9uQ29udHJvbGxlcj4oKnRoaXMpKQogI2lmIFBMQVRG
T1JNKElPUykKLSAgICAsIG1fb3ZlcmZsb3dBdXRvU2Nyb2xsVGltZXIodGhpcywgJkZyYW1lOjpv
dmVyZmxvd0F1dG9TY3JvbGxUaW1lckZpcmVkKQorICAgICwgbV9vdmVyZmxvd0F1dG9TY3JvbGxU
aW1lcigqdGhpcywgJkZyYW1lOjpvdmVyZmxvd0F1dG9TY3JvbGxUaW1lckZpcmVkKQogICAgICwg
bV9zZWxlY3Rpb25DaGFuZ2VDYWxsYmFja3NEaXNhYmxlZChmYWxzZSkKICAgICAsIG1fdGltZXJz
UGF1c2VkQ291bnQoMCkKICNlbmRpZgpAQCAtNTE2LDcgKzUxNiw3IEBAIHZvaWQgRnJhbWU6OnNj
cm9sbE92ZXJmbG93TGF5ZXIoUmVuZGVyTGF5ZXIqIGxheWVyLCBjb25zdCBJbnRSZWN0JiB2aXNp
YmxlUmVjdCwKICAgICBzZWxlY3Rpb24oKS51cGRhdGVBcHBlYXJhbmNlKCk7CiB9CiAKLXZvaWQg
RnJhbWU6Om92ZXJmbG93QXV0b1Njcm9sbFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBGcmFtZTo6
b3ZlcmZsb3dBdXRvU2Nyb2xsVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFldmVudEhhbmRsZXIo
KS5tb3VzZVByZXNzZWQoKSB8fCBjaGVja092ZXJmbG93U2Nyb2xsKFBlcmZvcm1PdmVyZmxvd1Nj
cm9sbCkgPT0gT3ZlcmZsb3dTY3JvbGxOb25lKSB7CiAgICAgICAgIGlmIChtX292ZXJmbG93QXV0
b1Njcm9sbFRpbWVyLmlzQWN0aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0ZyYW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmgKaW5kZXggYmU3NDk0MjU5N2Fh
MzBkMGZlZTM5MWQ4ZTU3ZjI1ZTBhYjQwNmM2My4uZWExNmFhZGUwZTA2OTdkYzc0M2ZjYzBiNjA4
YzZhYjI3Y2VhZDQ3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuaApAQCAtMjk1LDcgKzI5NSw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBoaXRUZXN0UmVzdWx0QXRWaWV3cG9ydExvY2F0
aW9uKGNvbnN0IEZsb2F0UG9pbnQmIHZpZXdwb3J0TG9jYXRpb24sIEhpdFRlc3RSZXN1bHQmLCBJ
bnRQb2ludCYgY2VudGVyKTsKICAgICAgICAgTm9kZSogcXVhbGlmeWluZ05vZGVBdFZpZXdwb3J0
TG9jYXRpb24oY29uc3QgRmxvYXRQb2ludCYgdmlld3BvcnRMb2NhdGlvbiwgRmxvYXRQb2ludCYg
YWRqdXN0ZWRWaWV3cG9ydExvY2F0aW9uLCBOb2RlUXVhbGlmaWVyLCBib29sIHNob3VsZEFwcHJv
eGltYXRlKTsKIAotICAgICAgICB2b2lkIG92ZXJmbG93QXV0b1Njcm9sbFRpbWVyRmlyZWQoVGlt
ZXIqKTsKKyAgICAgICAgdm9pZCBvdmVyZmxvd0F1dG9TY3JvbGxUaW1lckZpcmVkKCk7CiAgICAg
ICAgIHZvaWQgc3RhcnRPdmVyZmxvd0F1dG9TY3JvbGwoY29uc3QgSW50UG9pbnQmKTsKICAgICAg
ICAgaW50IGNoZWNrT3ZlcmZsb3dTY3JvbGwoT3ZlcmZsb3dTY3JvbGxBY3Rpb24pOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggNGE2Y2RiN2EwNjJiOGE4OWJiYzFhZTA0MjAwZGVl
NDk1NGY1NzAwNS4uODM0ZTllOGZmZmRlNWI3NDRhYzA3ZjVkOWI1Njc2MWE1ZTgxMWIwOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMTYzLDEyICsxNjMsMTIgQEAgUGFnaW5hdGlv
bjo6TW9kZSBwYWdpbmF0aW9uTW9kZUZvclJlbmRlclN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBz
dHlsZSkKIEZyYW1lVmlldzo6RnJhbWVWaWV3KEZyYW1lJiBmcmFtZSkKICAgICA6IG1fZnJhbWUo
JmZyYW1lKQogICAgICwgbV9jYW5IYXZlU2Nyb2xsYmFycyh0cnVlKQotICAgICwgbV9sYXlvdXRU
aW1lcih0aGlzLCAmRnJhbWVWaWV3OjpsYXlvdXRUaW1lckZpcmVkKQorICAgICwgbV9sYXlvdXRU
aW1lcigqdGhpcywgJkZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZCkKICAgICAsIG1fbGF5b3V0
Um9vdCgwKQogICAgICwgbV9sYXlvdXRQaGFzZShPdXRzaWRlTGF5b3V0KQogICAgICwgbV9pblN5
bmNocm9ub3VzUG9zdExheW91dChmYWxzZSkKLSAgICAsIG1fcG9zdExheW91dFRhc2tzVGltZXIo
dGhpcywgJkZyYW1lVmlldzo6cG9zdExheW91dFRpbWVyRmlyZWQpCi0gICAgLCBtX3VwZGF0ZUVt
YmVkZGVkT2JqZWN0c1RpbWVyKHRoaXMsICZGcmFtZVZpZXc6OnVwZGF0ZUVtYmVkZGVkT2JqZWN0
c1RpbWVyRmlyZWQpCisgICAgLCBtX3Bvc3RMYXlvdXRUYXNrc1RpbWVyKCp0aGlzLCAmRnJhbWVW
aWV3Ojpwb3N0TGF5b3V0VGltZXJGaXJlZCkKKyAgICAsIG1fdXBkYXRlRW1iZWRkZWRPYmplY3Rz
VGltZXIoKnRoaXMsICZGcmFtZVZpZXc6OnVwZGF0ZUVtYmVkZGVkT2JqZWN0c1RpbWVyRmlyZWQp
CiAgICAgLCBtX2lzVHJhbnNwYXJlbnQoZmFsc2UpCiAgICAgLCBtX2Jhc2VCYWNrZ3JvdW5kQ29s
b3IoQ29sb3I6OndoaXRlKQogICAgICwgbV9tZWRpYVR5cGUoInNjcmVlbiIpCkBAIC0xNzcsMTQg
KzE3NywxNCBAQCBGcmFtZVZpZXc6OkZyYW1lVmlldyhGcmFtZSYgZnJhbWUpCiAgICAgLCBtX3dh
c1Njcm9sbGVkQnlVc2VyKGZhbHNlKQogICAgICwgbV9pblByb2dyYW1tYXRpY1Njcm9sbChmYWxz
ZSkKICAgICAsIG1fc2FmZVRvUHJvcGFnYXRlU2Nyb2xsVG9QYXJlbnQodHJ1ZSkKLSAgICAsIG1f
ZGVsYXllZFNjcm9sbEV2ZW50VGltZXIodGhpcywgJkZyYW1lVmlldzo6ZGVsYXllZFNjcm9sbEV2
ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fZGVsYXllZFNjcm9sbEV2ZW50VGltZXIoKnRoaXMsICZG
cmFtZVZpZXc6OmRlbGF5ZWRTY3JvbGxFdmVudFRpbWVyRmlyZWQpCiAgICAgLCBtX2lzVHJhY2tp
bmdSZXBhaW50cyhmYWxzZSkKICAgICAsIG1fc2hvdWxkVXBkYXRlV2hpbGVPZmZzY3JlZW4odHJ1
ZSkKICAgICAsIG1fZXhwb3NlZFJlY3QoRmxvYXRSZWN0OjppbmZpbml0ZVJlY3QoKSkKICAgICAs
IG1fZGVmZXJTZXROZWVkc0xheW91dHMoMCkKICAgICAsIG1fc2V0TmVlZHNMYXlvdXRXYXNEZWZl
cnJlZChmYWxzZSkKICAgICAsIG1fc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVkKGZhbHNlKQotICAg
ICwgbV9zcGVjdWxhdGl2ZVRpbGluZ0VuYWJsZVRpbWVyKHRoaXMsICZGcmFtZVZpZXc6OnNwZWN1
bGF0aXZlVGlsaW5nRW5hYmxlVGltZXJGaXJlZCkKKyAgICAsIG1fc3BlY3VsYXRpdmVUaWxpbmdF
bmFibGVUaW1lcigqdGhpcywgJkZyYW1lVmlldzo6c3BlY3VsYXRpdmVUaWxpbmdFbmFibGVUaW1l
ckZpcmVkKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdXNlQ3VzdG9tRml4ZWRQb3NpdGlv
bkxheW91dFJlY3QoZmFsc2UpCiAgICAgLCBtX3VzZUN1c3RvbVNpemVGb3JSZXNpemVFdmVudChm
YWxzZSkKQEAgLTE3NDMsNyArMTc0Myw3IEBAIEludFBvaW50IEZyYW1lVmlldzo6bWF4aW11bVNj
cm9sbFBvc2l0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbWF4aW11bU9mZnNldDsKIH0KIAotdm9p
ZCBGcmFtZVZpZXc6OmRlbGF5ZWRTY3JvbGxFdmVudFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBG
cmFtZVZpZXc6OmRlbGF5ZWRTY3JvbGxFdmVudFRpbWVyRmlyZWQoKQogewogICAgIHNlbmRTY3Jv
bGxFdmVudCgpOwogfQpAQCAtMjQwNiw3ICsyNDA2LDcgQEAgdm9pZCBGcmFtZVZpZXc6OmVuYWJs
ZVNwZWN1bGF0aXZlVGlsaW5nSWZOZWVkZWQoKQogICAgIG1fc3BlY3VsYXRpdmVUaWxpbmdFbmFi
bGVUaW1lci5zdGFydE9uZVNob3Qoc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVEZWxheSk7CiB9CiAK
LXZvaWQgRnJhbWVWaWV3OjpzcGVjdWxhdGl2ZVRpbGluZ0VuYWJsZVRpbWVyRmlyZWQoVGltZXIm
KQordm9pZCBGcmFtZVZpZXc6OnNwZWN1bGF0aXZlVGlsaW5nRW5hYmxlVGltZXJGaXJlZCgpCiB7
CiAgICAgaWYgKG1fc3BlY3VsYXRpdmVUaWxpbmdFbmFibGVkKQogICAgICAgICByZXR1cm47CkBA
IC0yNDE0LDcgKzI0MTQsNyBAQCB2b2lkIEZyYW1lVmlldzo6c3BlY3VsYXRpdmVUaWxpbmdFbmFi
bGVUaW1lckZpcmVkKFRpbWVyJikKICAgICBhZGp1c3RUaWxlZEJhY2tpbmdDb3ZlcmFnZSgpOwog
fQogCi12b2lkIEZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZChUaW1lciYpCit2b2lkIEZyYW1l
Vmlldzo6bGF5b3V0VGltZXJGaXJlZCgpCiB7CiAjaWZkZWYgSU5TVFJVTUVOVF9MQVlPVVRfU0NI
RURVTElORwogICAgIGlmICghZnJhbWUoKS5kb2N1bWVudCgpLT5vd25lckVsZW1lbnQoKSkKQEAg
LTI4NTYsNyArMjg1Niw3IEBAIGJvb2wgRnJhbWVWaWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHMo
KQogICAgIHJldHVybiBtX2VtYmVkZGVkT2JqZWN0c1RvVXBkYXRlLT5pc0VtcHR5KCk7CiB9CiAK
LXZvaWQgRnJhbWVWaWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHNUaW1lckZpcmVkKFRpbWVyKikK
K3ZvaWQgRnJhbWVWaWV3Ojp1cGRhdGVFbWJlZGRlZE9iamVjdHNUaW1lckZpcmVkKCkKIHsKICAg
ICBSZWZQdHI8RnJhbWVWaWV3PiBwcm90ZWN0KHRoaXMpOwogICAgIG1fdXBkYXRlRW1iZWRkZWRP
YmplY3RzVGltZXIuc3RvcCgpOwpAQCAtMjg3MSw3ICsyODcxLDcgQEAgdm9pZCBGcmFtZVZpZXc6
OmZsdXNoQW55UGVuZGluZ1Bvc3RMYXlvdXRUYXNrcygpCiAgICAgaWYgKG1fcG9zdExheW91dFRh
c2tzVGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgcGVyZm9ybVBvc3RMYXlvdXRUYXNrcygpOwog
ICAgIGlmIChtX3VwZGF0ZUVtYmVkZGVkT2JqZWN0c1RpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAg
IHVwZGF0ZUVtYmVkZGVkT2JqZWN0c1RpbWVyRmlyZWQobnVsbHB0cik7CisgICAgICAgIHVwZGF0
ZUVtYmVkZGVkT2JqZWN0c1RpbWVyRmlyZWQoKTsKIH0KIAogdm9pZCBGcmFtZVZpZXc6OnBlcmZv
cm1Qb3N0TGF5b3V0VGFza3MoKQpAQCAtMzAwOSw3ICszMDA5LDcgQEAgdm9pZCBGcmFtZVZpZXc6
OndpbGxFbmRMaXZlUmVzaXplKCkKICAgICBhZGp1c3RUaWxlZEJhY2tpbmdDb3ZlcmFnZSgpOwog
fQogCi12b2lkIEZyYW1lVmlldzo6cG9zdExheW91dFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBG
cmFtZVZpZXc6OnBvc3RMYXlvdXRUaW1lckZpcmVkKCkKIHsKICAgICBwZXJmb3JtUG9zdExheW91
dFRhc2tzKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAppbmRleCBiYzE4ZmUxOWFlMTMyNzIx
OTk0M2YxMTc5MTJlZGYwNjRmMzMyOGIyLi5mNWI1ZTVkMTA3MTYyZmY0ZDdmMjI4M2NmNTEzMGM4
MjM3ODE4MmNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgKQEAgLTEwNiw3ICsxMDYsNyBAQCBw
dWJsaWM6CiAKICAgICB2b2lkIGxheW91dChib29sIGFsbG93U3VidHJlZSA9IHRydWUpOwogICAg
IFdFQkNPUkVfRVhQT1JUIGJvb2wgZGlkRmlyc3RMYXlvdXQoKSBjb25zdDsKLSAgICB2b2lkIGxh
eW91dFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGxheW91dFRpbWVyRmlyZWQoKTsKICAg
ICB2b2lkIHNjaGVkdWxlUmVsYXlvdXQoKTsKICAgICB2b2lkIHNjaGVkdWxlUmVsYXlvdXRPZlN1
YnRyZWUoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgdW5zY2hlZHVsZVJlbGF5b3V0KCk7CkBA
IC0yNDEsNyArMjQxLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1J1YmJlckJhbmRJ
blByb2dyZXNzKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCBJ
bnRQb2ludCBtaW5pbXVtU2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKICAgICBXRUJD
T1JFX0VYUE9SVCB2aXJ0dWFsIEludFBvaW50IG1heGltdW1TY3JvbGxQb3NpdGlvbigpIGNvbnN0
IG92ZXJyaWRlOwotICAgIHZvaWQgZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJlZChUaW1lciYp
OworICAgIHZvaWQgZGVsYXllZFNjcm9sbEV2ZW50VGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCBy
ZXN1bWVWaXNpYmxlSW1hZ2VBbmltYXRpb25zSW5jbHVkaW5nU3ViZnJhbWVzKCk7CiAKQEAgLTMw
Myw3ICszMDMsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHJlc3RvcmVTY3JvbGxiYXIoKTsKIAot
ICAgIHZvaWQgcG9zdExheW91dFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHBvc3RMYXlv
dXRUaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHJlZ2lzdGVyVGhyb3R0bGVkRE9NVGltZXIoRE9N
VGltZXIqKTsKICAgICB2b2lkIHVucmVnaXN0ZXJUaHJvdHRsZWRET01UaW1lcihET01UaW1lciop
OwpAQCAtNjEzLDkgKzYxMyw5IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeVBh
Z2VUaGF0Q29udGVudEFyZWFXaWxsUGFpbnQoKSBjb25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQg
ZW5hYmxlU3BlY3VsYXRpdmVUaWxpbmdJZk5lZWRlZCgpOwotICAgIHZvaWQgc3BlY3VsYXRpdmVU
aWxpbmdFbmFibGVUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBzcGVjdWxhdGl2ZVRpbGlu
Z0VuYWJsZVRpbWVyRmlyZWQoKTsKIAotICAgIHZvaWQgdXBkYXRlRW1iZWRkZWRPYmplY3RzVGlt
ZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgdXBkYXRlRW1iZWRkZWRPYmplY3RzVGltZXJGaXJl
ZCgpOwogICAgIGJvb2wgdXBkYXRlRW1iZWRkZWRPYmplY3RzKCk7CiAgICAgdm9pZCB1cGRhdGVF
bWJlZGRlZE9iamVjdChSZW5kZXJFbWJlZGRlZE9iamVjdCYpOwogICAgIHZvaWQgc2Nyb2xsVG9B
bmNob3IoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZU92ZXJsYXkuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5jcHAKaW5kZXggMjU0ZDg5YjY3ZjMz
ZDBlNGM5MTRjMmIyODZlODI0YzVjZmQ4OTMzYS4uM2JiZDg0OWRlN2Q1OGZjZThkZTg5ZDdjNmFk
ZjBhZWNjOTc1NjhkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3Zlcmxh
eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5jcHAKQEAgLTU0LDcg
KzU0LDcgQEAgUGFzc1JlZlB0cjxQYWdlT3ZlcmxheT4gUGFnZU92ZXJsYXk6OmNyZWF0ZShDbGll
bnQmIGNsaWVudCwgT3ZlcmxheVR5cGUgb3ZlcmxheVQKIFBhZ2VPdmVybGF5OjpQYWdlT3Zlcmxh
eShDbGllbnQmIGNsaWVudCwgT3ZlcmxheVR5cGUgb3ZlcmxheVR5cGUpCiAgICAgOiBtX2NsaWVu
dChjbGllbnQpCiAgICAgLCBtX3BhZ2UobnVsbHB0cikKLSAgICAsIG1fZmFkZUFuaW1hdGlvblRp
bWVyKHRoaXMsICZQYWdlT3ZlcmxheTo6ZmFkZUFuaW1hdGlvblRpbWVyRmlyZWQpCisgICAgLCBt
X2ZhZGVBbmltYXRpb25UaW1lcigqdGhpcywgJlBhZ2VPdmVybGF5OjpmYWRlQW5pbWF0aW9uVGlt
ZXJGaXJlZCkKICAgICAsIG1fZmFkZUFuaW1hdGlvblN0YXJ0VGltZSgwKQogICAgICwgbV9mYWRl
QW5pbWF0aW9uRHVyYXRpb24oZmFkZUFuaW1hdGlvbkR1cmF0aW9uKQogICAgICwgbV9mYWRlQW5p
bWF0aW9uVHlwZShOb0FuaW1hdGlvbikKQEAgLTIzMiw3ICsyMzIsNyBAQCB2b2lkIFBhZ2VPdmVy
bGF5OjpzdGFydEZhZGVBbmltYXRpb24oKQogICAgIG1fZmFkZUFuaW1hdGlvblRpbWVyLnN0YXJ0
UmVwZWF0aW5nKDEgLyBmYWRlQW5pbWF0aW9uRnJhbWVSYXRlKTsKIH0KIAotdm9pZCBQYWdlT3Zl
cmxheTo6ZmFkZUFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9pZCBQYWdlT3ZlcmxheTo6
ZmFkZUFuaW1hdGlvblRpbWVyRmlyZWQoKQogewogICAgIGZsb2F0IGFuaW1hdGlvblByb2dyZXNz
ID0gKGN1cnJlbnRUaW1lKCkgLSBtX2ZhZGVBbmltYXRpb25TdGFydFRpbWUpIC8gbV9mYWRlQW5p
bWF0aW9uRHVyYXRpb247CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZU92
ZXJsYXkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZU92ZXJsYXkuaAppbmRleCBlOGRhNzc5
NzIzNmYyNTBiNzdhMjQyYjk4ODNhNmEyYjhjYzg4ZmRkLi44N2Y1NmUwMmI4NGU3NDlkMDVmZmEx
YWQ2OGYwNjIwYmQzY2Q5ZmQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VP
dmVybGF5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheS5oCkBAIC0xMTUs
NyArMTE1LDcgQEAgcHJpdmF0ZToKICAgICBleHBsaWNpdCBQYWdlT3ZlcmxheShDbGllbnQmLCBP
dmVybGF5VHlwZSk7CiAKICAgICB2b2lkIHN0YXJ0RmFkZUFuaW1hdGlvbigpOwotICAgIHZvaWQg
ZmFkZUFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGZhZGVBbmltYXRpb25U
aW1lckZpcmVkKCk7CiAKICAgICBDbGllbnQmIG1fY2xpZW50OwogICAgIFBhZ2UqIG1fcGFnZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKaW5kZXggN2Q3NWUwMjdlODllNjYzYTYxYzIyYTMxZWE1
MmQxNjlmZjQ0MWY0Yy4uNDdiY2E3MDVhNGVhMmZhZDcyOWQ0ODhlOGQ0Mjg1ODg2YzllYTBmZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKQEAgLTE5NSw3ICsxOTUsNyBAQCBTZXR0aW5nczo6
U2V0dGluZ3MoUGFnZSogcGFnZSkKICNlbmRpZgogICAgICwgbV9zY3JvbGxpbmdQZXJmb3JtYW5j
ZUxvZ2dpbmdFbmFibGVkKGZhbHNlKQogICAgICwgbV90aW1lV2l0aG91dE1vdXNlTW92ZW1lbnRC
ZWZvcmVIaWRpbmdDb250cm9scygzKQotICAgICwgbV9zZXRJbWFnZUxvYWRpbmdTZXR0aW5nc1Rp
bWVyKHRoaXMsICZTZXR0aW5nczo6aW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lckZpcmVkKQorICAg
ICwgbV9zZXRJbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyKCp0aGlzLCAmU2V0dGluZ3M6OmltYWdl
TG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCkKICNpZiBFTkFCTEUoSElEREVOX1BBR0VfRE9NX1RJ
TUVSX1RIUk9UVExJTkcpCiAgICAgLCBtX2hpZGRlblBhZ2VET01UaW1lclRocm90dGxpbmdFbmFi
bGVkKGZhbHNlKQogI2VuZGlmCkBAIC0zOTYsNyArMzk2LDcgQEAgdm9pZCBTZXR0aW5nczo6c2V0
TG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5KGJvb2wgbG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5KQog
ICAgIG1fc2V0SW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAK
LXZvaWQgU2V0dGluZ3M6OmltYWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZChUaW1lciopCit2
b2lkIFNldHRpbmdzOjppbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQoKQogewogICAgIHNl
dEltYWdlTG9hZGluZ1NldHRpbmdzKG1fcGFnZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1NldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKaW5k
ZXggNTE1N2FkMzU1ZThkMDJlYzgyYmU0ODVhMTEyNTI0MDkyZjlhYmUyYi4uY2JjMjhhYzdmYjY3
MjA1ZjgwYmU4N2E3ZGY2ZDMwZTAzYmMzODU5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9TZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaApAQCAt
MzIyLDcgKzMyMiw3IEBAIHByaXZhdGU6CiAgICAgZG91YmxlIG1fdGltZVdpdGhvdXRNb3VzZU1v
dmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHM7CiAKICAgICBUaW1lciBtX3NldEltYWdlTG9hZGlu
Z1NldHRpbmdzVGltZXI7Ci0gICAgdm9pZCBpbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQo
VGltZXIqKTsKKyAgICB2b2lkIGltYWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCgpOwogCiAj
aWYgRU5BQkxFKEhJRERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKQogICAgIGJvb2wgbV9o
aWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nRW5hYmxlZCA6IDE7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IGRj
OWE0YTc5N2E3ZTRiNDNhYWRiNDQzMzliMWYxYWI2NDI5ZWZjYTcuLjczYmEzNjEzYzRjZDVjOGM2
YThhNjVjZWQ0NjQ5ZDIxODM4OWMzNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
YW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC01Miw4ICs1Miw4IEBAIHN0
YXRpYyBjb25zdCBkb3VibGUgY0FuaW1hdGlvblRpbWVyRGVsYXkgPSAwLjAyNTsKIHN0YXRpYyBj
b25zdCBkb3VibGUgY0JlZ2luQW5pbWF0aW9uVXBkYXRlVGltZU5vdFNldCA9IC0xOwogCiBBbmlt
YXRpb25Db250cm9sbGVyUHJpdmF0ZTo6QW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGUoRnJhbWUm
IGZyYW1lKQotICAgIDogbV9hbmltYXRpb25UaW1lcih0aGlzLCAmQW5pbWF0aW9uQ29udHJvbGxl
clByaXZhdGU6OmFuaW1hdGlvblRpbWVyRmlyZWQpCi0gICAgLCBtX3VwZGF0ZVN0eWxlSWZOZWVk
ZWREaXNwYXRjaGVyKHRoaXMsICZBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlU3R5
bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZCkKKyAgICA6IG1fYW5pbWF0aW9uVGltZXIoKnRoaXMs
ICZBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6YW5pbWF0aW9uVGltZXJGaXJlZCkKKyAgICAs
IG1fdXBkYXRlU3R5bGVJZk5lZWRlZERpc3BhdGNoZXIoKnRoaXMsICZBbmltYXRpb25Db250cm9s
bGVyUHJpdmF0ZTo6dXBkYXRlU3R5bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZCkKICAgICAsIG1f
ZnJhbWUoZnJhbWUpCiAgICAgLCBtX2JlZ2luQW5pbWF0aW9uVXBkYXRlVGltZShjQmVnaW5Bbmlt
YXRpb25VcGRhdGVUaW1lTm90U2V0KQogICAgICwgbV9hbmltYXRpb25zV2FpdGluZ0ZvclN0eWxl
KCkKQEAgLTE1OSw3ICsxNTksNyBAQCB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjp1
cGRhdGVBbmltYXRpb25UaW1lcihTZXRDaGFuZ2VkIGNhbGxTZXRDaGFuZ2VkLwogICAgIG1fYW5p
bWF0aW9uVGltZXIuc3RhcnRPbmVTaG90KHRpbWVUb05leHRTZXJ2aWNlKTsKIH0KIAotdm9pZCBB
bmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlU3R5bGVJZk5lZWRlZERpc3BhdGNoZXJG
aXJlZChUaW1lciYpCit2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjp1cGRhdGVTdHls
ZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKCkKIHsKICAgICBmaXJlRXZlbnRzQW5kVXBkYXRlU3R5
bGUoKTsKIH0KQEAgLTIyNiw3ICsyMjYsNyBAQCB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2
YXRlOjphbmltYXRpb25GcmFtZUNhbGxiYWNrRmlyZWQoKQogfQogI2VuZGlmCiAKLXZvaWQgQW5p
bWF0aW9uQ29udHJvbGxlclByaXZhdGU6OmFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9p
ZCBBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6YW5pbWF0aW9uVGltZXJGaXJlZCgpCiB7CiAg
ICAgLy8gTWFrZSBzdXJlIGFuaW1hdGlvblVwZGF0ZVRpbWUgaXMgdXBkYXRlZCwgc28gdGhhdCBp
dCBpcyBjdXJyZW50IGV2ZW4gaWYgbm8KICAgICAvLyBzdHlsZUNoYW5nZSBoYXMgaGFwcGVuZWQg
KGUuZy4gYWNjZWxlcmF0ZWQgYW5pbWF0aW9ucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZS5oCmluZGV4IDVh
NDU0ZjhjYTRlNDU4OTQ4OGNmYjFlZWNmOGM3OTU4NGY0NWE0MjAuLmVmMWVkZDNmZTIyOGJkOTYw
YWZkOWJjNWRhZjVmNWFlNjY4YzgwYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
YW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGUuaApAQCAtNjgsNyAr
NjgsNyBAQCBwdWJsaWM6CiAgICAgQ29tcG9zaXRlQW5pbWF0aW9uJiBlbnN1cmVDb21wb3NpdGVB
bmltYXRpb24oUmVuZGVyRWxlbWVudCYpOwogICAgIGJvb2wgY2xlYXIoUmVuZGVyRWxlbWVudCYp
OwogCi0gICAgdm9pZCB1cGRhdGVTdHlsZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKFRpbWVyJik7
CisgICAgdm9pZCB1cGRhdGVTdHlsZUlmTmVlZGVkRGlzcGF0Y2hlckZpcmVkKCk7CiAgICAgdm9p
ZCBzdGFydFVwZGF0ZVN0eWxlSWZOZWVkZWREaXNwYXRjaGVyKCk7CiAgICAgdm9pZCBhZGRFdmVu
dFRvRGlzcGF0Y2goUGFzc1JlZlB0cjxFbGVtZW50PiBlbGVtZW50LCBjb25zdCBBdG9taWNTdHJp
bmcmIGV2ZW50VHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgZWxhcHNlZFRpbWUpOwog
ICAgIHZvaWQgYWRkRWxlbWVudENoYW5nZVRvRGlzcGF0Y2goUGFzc1JlZjxFbGVtZW50Pik7CkBA
IC0xMTQsNyArMTE0LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0QWxsb3dzTmV3QW5pbWF0aW9u
c1doaWxlU3VzcGVuZGVkKGJvb2wpOwogCiBwcml2YXRlOgotICAgIHZvaWQgYW5pbWF0aW9uVGlt
ZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgYW5pbWF0aW9uVGltZXJGaXJlZCgpOwogCiAgICAg
dm9pZCBzdHlsZUF2YWlsYWJsZSgpOwogICAgIHZvaWQgZmlyZUV2ZW50c0FuZFVwZGF0ZVN0eWxl
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9TZXJ2aWNlc092ZXJsYXlD
b250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9TZXJ2aWNlc092ZXJsYXlDb250
cm9sbGVyLmgKaW5kZXggOGFhZjkxMmUwMzI1Njg5OWFmOWVkNzY2YWQxMjA1ZDJhNjgxNTBhMi4u
NTgxZjFkZjY3NmNkMmUzOTdjNDVlZTdiN2Q2NGMxYzQwM2Q5MDExYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9tYWMvU2VydmljZXNPdmVybGF5Q29udHJvbGxlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvbWFjL1NlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIuaApAQCAtMTIz
LDcgKzEyMyw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1vdXNlSXNPdmVySGlnaGxpZ2h0KEhp
Z2hsaWdodCYsIGJvb2wmIG1vdXNlSXNPdmVyQnV0dG9uKSBjb25zdDsKICAgICBzdGQ6OmNocm9u
bzo6bWlsbGlzZWNvbmRzIHJlbWFpbmluZ1RpbWVVbnRpbEhpZ2hsaWdodFNob3VsZEJlU2hvd24o
SGlnaGxpZ2h0KikgY29uc3Q7Ci0gICAgdm9pZCBkZXRlcm1pbmVBY3RpdmVIaWdobGlnaHRUaW1l
ckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBkZXRlcm1pbmVBY3RpdmVIaWdobGlnaHRUaW1lckZp
cmVkKCk7CiAKICAgICBzdGF0aWMgYm9vbCBoaWdobGlnaHRzQXJlRXF1aXZhbGVudChjb25zdCBI
aWdobGlnaHQqIGEsIGNvbnN0IEhpZ2hsaWdodCogYik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvbWFjL1NlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL21hYy9TZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLm1tCmluZGV4IDAwOThjNzYz
MTNmNGNjNjYwZTk2OGE5MGQzZTkzOGE4YjFiYmM5ZGUuLjg0M2I4YmY1ZjNiZmQzMWIxNzk4YWE5
NDBmOTRjZWFjMTQ3MTlmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL1Nl
cnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9tYWMv
U2VydmljZXNPdmVybGF5Q29udHJvbGxlci5tbQpAQCAtMjI1LDcgKzIyNSw3IEBAIFNlcnZpY2Vz
T3ZlcmxheUNvbnRyb2xsZXI6OlNlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIoTWFpbkZyYW1lJiBt
YWluRnJhbWUpCiAgICAgOiBtX21haW5GcmFtZShtYWluRnJhbWUpCiAgICAgLCBtX3NlcnZpY2Vz
T3ZlcmxheShudWxscHRyKQogICAgICwgbV9pc1RleHRPbmx5KGZhbHNlKQotICAgICwgbV9kZXRl
cm1pbmVBY3RpdmVIaWdobGlnaHRUaW1lcih0aGlzLCAmU2VydmljZXNPdmVybGF5Q29udHJvbGxl
cjo6ZGV0ZXJtaW5lQWN0aXZlSGlnaGxpZ2h0VGltZXJGaXJlZCkKKyAgICAsIG1fZGV0ZXJtaW5l
QWN0aXZlSGlnaGxpZ2h0VGltZXIoKnRoaXMsICZTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpk
ZXRlcm1pbmVBY3RpdmVIaWdobGlnaHRUaW1lckZpcmVkKQogewogfQogCkBAIC00NTAsNyArNDUw
LDcgQEAgc3RkOjpjaHJvbm86Om1pbGxpc2Vjb25kcyBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVy
OjpyZW1haW5pbmdUaW1lVW50aWxIaWdobGlnaHQKICAgICByZXR1cm4gc3RkOjpjaHJvbm86OmR1
cmF0aW9uX2Nhc3Q8c3RkOjpjaHJvbm86Om1pbGxpc2Vjb25kcz4ocmVtYWluaW5nRGVsYXkpOwog
fQogCi12b2lkIFNlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXI6OmRldGVybWluZUFjdGl2ZUhpZ2hs
aWdodFRpbWVyRmlyZWQoVGltZXImKQordm9pZCBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyOjpk
ZXRlcm1pbmVBY3RpdmVIaWdobGlnaHRUaW1lckZpcmVkKCkKIHsKICAgICBib29sIG1vdXNlSXNP
dmVyQnV0dG9uOwogICAgIGRldGVybWluZUFjdGl2ZUhpZ2hsaWdodChtb3VzZUlzT3ZlckJ1dHRv
bik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9s
bGluZ0Nvb3JkaW5hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5j
U2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCmluZGV4IGFjZDJkZjIyNWViM2ZjZDRmODBjNjBkYzk3
YTZmMWVlNzEwZjU5MWYuLjFmODIzMDNkNmU0YWI2ZWQyZmY3MzVlMTJlMTFiM2E3MjJhNjQ4ZTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5n
Q29vcmRpbmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5j
U2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6QXN5bmNTY3JvbGxpbmdDb29yZGlu
YXRvcihQYWdlKiBwYWdlKQogICAgIDogU2Nyb2xsaW5nQ29vcmRpbmF0b3IocGFnZSkKLSAgICAs
IG1fdXBkYXRlTm9kZVNjcm9sbFBvc2l0aW9uVGltZXIodGhpcywgJkFzeW5jU2Nyb2xsaW5nQ29v
cmRpbmF0b3I6OnVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbFRpbWVyRmlyZWQp
CisgICAgLCBtX3VwZGF0ZU5vZGVTY3JvbGxQb3NpdGlvblRpbWVyKCp0aGlzLCAmQXN5bmNTY3Jv
bGxpbmdDb29yZGluYXRvcjo6dXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFzeW5jU2Nyb2xsVGlt
ZXJGaXJlZCkKICAgICAsIG1fc2Nyb2xsaW5nU3RhdGVUcmVlKFNjcm9sbGluZ1N0YXRlVHJlZTo6
Y3JlYXRlKHRoaXMpKQogewogfQpAQCAtMjEzLDcgKzIxMyw3IEBAIHZvaWQgQXN5bmNTY3JvbGxp
bmdDb29yZGluYXRvcjo6c2NoZWR1bGVVcGRhdGVTY3JvbGxQb3NpdGlvbkFmdGVyQXN5bmNTY3Jv
bGwoU2NyCiAgICAgbV91cGRhdGVOb2RlU2Nyb2xsUG9zaXRpb25UaW1lci5zdGFydE9uZVNob3Qo
MCk7CiB9CiAKLXZvaWQgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6dXBkYXRlU2Nyb2xsUG9z
aXRpb25BZnRlckFzeW5jU2Nyb2xsVGltZXJGaXJlZChUaW1lciopCit2b2lkIEFzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3I6OnVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbFRpbWVy
RmlyZWQoKQogewogICAgIHVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbChtX3Nj
aGVkdWxlZFNjcm9sbFVwZGF0ZS5ub2RlSUQsIG1fc2NoZWR1bGVkU2Nyb2xsVXBkYXRlLnNjcm9s
bFBvc2l0aW9uLCBtX3NjaGVkdWxlZFNjcm9sbFVwZGF0ZS5pc1Byb2dyYW1tYXRpY1Njcm9sbCwg
bV9zY2hlZHVsZWRTY3JvbGxVcGRhdGUudXBkYXRlTGF5ZXJQb3NpdGlvbkFjdGlvbik7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nv
b3JkaW5hdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yLmgKaW5kZXggM2Y0ZDdiYzkyZjllNWJkMWU1Zjg0NjRlZjc1NjIxNDkxMmYw
YWM0MS4uN2VjNzVmN2NmNzdjMDgzZGRmM2FkNmI4ZDU1ODg4ODFkNDY2NTcyNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRv
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29v
cmRpbmF0b3IuaApAQCAtMTA1LDcgKzEwNSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBlbnN1cmVS
b290U3RhdGVOb2RlRm9yRnJhbWVWaWV3KEZyYW1lVmlldyopOwogICAgIHZvaWQgdXBkYXRlTWFp
bkZyYW1lU2Nyb2xsTGF5ZXJQb3NpdGlvbigpOwogCi0gICAgdm9pZCB1cGRhdGVTY3JvbGxQb3Np
dGlvbkFmdGVyQXN5bmNTY3JvbGxUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCB1cGRhdGVT
Y3JvbGxQb3NpdGlvbkFmdGVyQXN5bmNTY3JvbGxUaW1lckZpcmVkKCk7CiAgICAgCiAgICAgRnJh
bWVWaWV3KiBmcmFtZVZpZXdGb3JTY3JvbGxpbmdOb2RlKFNjcm9sbGluZ05vZGVJRCkgY29uc3Q7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL2lvcy9TY3JvbGxp
bmdDb29yZGluYXRvcklPUy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Nj
cm9sbGluZ0Nvb3JkaW5hdG9ySU9TLmgKaW5kZXggMDExZmU4ZTIzODJiMzkyMjYxZDZkNmYwMzFk
NzNmNTExNWY1OGJlZS4uY2NjMTA4MDQ2NGI3MmYxYzkwZWRlOGZhMmJhYTcyYzY4ZjFmNjVhZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Njcm9sbGluZ0Nv
b3JkaW5hdG9ySU9TLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvaW9zL1Nj
cm9sbGluZ0Nvb3JkaW5hdG9ySU9TLmgKQEAgLTUzLDcgKzUzLDcgQEAgcHVibGljOgogcHJpdmF0
ZToKICAgICB2aXJ0dWFsIHZvaWQgc2NoZWR1bGVUcmVlU3RhdGVDb21taXQoKSBvdmVycmlkZTsK
IAotICAgIHZvaWQgc2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJlZChUaW1lciop
OworICAgIHZvaWQgc2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJlZCgpOwogICAg
IHZvaWQgY29tbWl0VHJlZVN0YXRlKCk7CiAKICAgICBUaW1lciBtX3Njcm9sbGluZ1N0YXRlVHJl
ZUNvbW1pdHRlclRpbWVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxp
bmcvaW9zL1Njcm9sbGluZ0Nvb3JkaW5hdG9ySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvaW9zL1Njcm9sbGluZ0Nvb3JkaW5hdG9ySU9TLm1tCmluZGV4IDg5MjdlOTkyM2Fh
ZTc4NjhjZjkwMjdkNGY5Y2UyZjIwZWExYzQ2NDMuLjMwM2I5YjIwMjFiZDQ0OTVlZjZjYzI1NGEy
ODY0NmNkZTRjNzc4M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L2lvcy9TY3JvbGxpbmdDb29yZGluYXRvcklPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9pb3MvU2Nyb2xsaW5nQ29vcmRpbmF0b3JJT1MubW0KQEAgLTUyLDcgKzUyLDcg
QEAgUGFzc1JlZlB0cjxTY3JvbGxpbmdDb29yZGluYXRvcj4gU2Nyb2xsaW5nQ29vcmRpbmF0b3I6
OmNyZWF0ZShQYWdlKiBwYWdlKQogCiBTY3JvbGxpbmdDb29yZGluYXRvcklPUzo6U2Nyb2xsaW5n
Q29vcmRpbmF0b3JJT1MoUGFnZSogcGFnZSkKICAgICA6IEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0
b3IocGFnZSkKLSAgICAsIG1fc2Nyb2xsaW5nU3RhdGVUcmVlQ29tbWl0dGVyVGltZXIodGhpcywg
JlNjcm9sbGluZ0Nvb3JkaW5hdG9ySU9TOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1l
ckZpcmVkKQorICAgICwgbV9zY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lcigqdGhpcywg
JlNjcm9sbGluZ0Nvb3JkaW5hdG9ySU9TOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1l
ckZpcmVkKQogewogICAgIHNldFNjcm9sbGluZ1RyZWUoU2Nyb2xsaW5nVHJlZUlPUzo6Y3JlYXRl
KHRoaXMpKTsKIH0KQEAgLTkxLDcgKzkxLDcgQEAgdm9pZCBTY3JvbGxpbmdDb29yZGluYXRvcklP
Uzo6c2NoZWR1bGVUcmVlU3RhdGVDb21taXQoKQogICAgIG1fc2Nyb2xsaW5nU3RhdGVUcmVlQ29t
bWl0dGVyVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIFNjcm9sbGluZ0Nvb3JkaW5h
dG9ySU9TOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKFRpbWVyKikKK3Zv
aWQgU2Nyb2xsaW5nQ29vcmRpbmF0b3JJT1M6OnNjcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRp
bWVyRmlyZWQoKQogewogICAgIGNvbW1pdFRyZWVTdGF0ZSgpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JN
YWMuaAppbmRleCBmNzFlY2MzNDY5ZTJjMGFkMDc3NjI5Y2Y4ZDUwY2JmYWY4NWVlNjkwLi5mYzgy
OWE0ZDU5ODVlOTZjODVhN2ExMWM1ODE1ZWIyMzRiZTY5ODA5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JN
YWMuaApAQCAtNTMsNyArNTMsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9p
ZCBzY2hlZHVsZVRyZWVTdGF0ZUNvbW1pdCgpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBzY3JvbGxp
bmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCBzY3JvbGxp
bmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBjb21taXRUcmVlU3Rh
dGUoKTsKICAgICAKICAgICB2b2lkIHVwZGF0ZVRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29v
cmRpbmF0b3JNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xs
aW5nQ29vcmRpbmF0b3JNYWMubW0KaW5kZXggMGJjNTE5OTdkMGUyMTFlMWIyYzc1OGYxNjk5Mzgw
ZDhjMDNlYzE3Ni4uZmM4NGNhYmE5ZTc3ZTlmOTQ1YmZhN2M4YjBkNzE4NjE0ZDIzODY3OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3Jk
aW5hdG9yTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3Jv
bGxpbmdDb29yZGluYXRvck1hYy5tbQpAQCAtNTQsNyArNTQsNyBAQCBQYXNzUmVmUHRyPFNjcm9s
bGluZ0Nvb3JkaW5hdG9yPiBTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKFBhZ2UqIHBhZ2Up
CiAKIFNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjOjpTY3JvbGxpbmdDb29yZGluYXRvck1hYyhQYWdl
KiBwYWdlKQogICAgIDogQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcihwYWdlKQotICAgICwgbV9z
Y3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lcih0aGlzLCAmU2Nyb2xsaW5nQ29vcmRpbmF0
b3JNYWM6OnNjcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyRmlyZWQpCisgICAgLCBtX3Nj
cm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyKCp0aGlzLCAmU2Nyb2xsaW5nQ29vcmRpbmF0
b3JNYWM6OnNjcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyRmlyZWQpCiB7CiAgICAgc2V0
U2Nyb2xsaW5nVHJlZShTY3JvbGxpbmdUcmVlTWFjOjpjcmVhdGUodGhpcykpOwogfQpAQCAtMTA2
LDcgKzEwNiw3IEBAIHZvaWQgU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWM6OnNjaGVkdWxlVHJlZVN0
YXRlQ29tbWl0KCkKICAgICBtX3Njcm9sbGluZ1N0YXRlVHJlZUNvbW1pdHRlclRpbWVyLnN0YXJ0
T25lU2hvdCgwKTsKIH0KIAotdm9pZCBTY3JvbGxpbmdDb29yZGluYXRvck1hYzo6c2Nyb2xsaW5n
U3RhdGVUcmVlQ29tbWl0dGVyVGltZXJGaXJlZChUaW1lciopCit2b2lkIFNjcm9sbGluZ0Nvb3Jk
aW5hdG9yTWFjOjpzY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lckZpcmVkKCkKIHsKICAg
ICBjb21taXRUcmVlU3RhdGUoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL0h5c3RlcmVzaXNBY3Rpdml0eS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vSHlzdGVy
ZXNpc0FjdGl2aXR5LmgKaW5kZXggY2E5MDgzNGU4OTU0NjJjMmIzYTAyMDM4ZGI4MjRlMDU3N2Vk
MTczMi4uYTNjOTIyZjZkZTk3M2E3NjJhMDJiYjVkZTAwZjA0Y2I0OWJmNDBiNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vSHlzdGVyZXNpc0FjdGl2aXR5LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vSHlzdGVyZXNpc0FjdGl2aXR5LmgKQEAgLTQ1LDcgKzQ1LDcg
QEAgcHVibGljOgogICAgICAgICA6IG1fZGVsZWdhdGUoZGVsZWdhdGUpCiAgICAgICAgICwgbV9o
eXN0ZXJlc2lzU2Vjb25kcyhoeXN0ZXJlc2lzU2Vjb25kcykKICAgICAgICAgLCBtX2FjdGl2ZShm
YWxzZSkKLSAgICAgICAgLCBtX3RpbWVyKHRoaXMsICZIeXN0ZXJlc2lzQWN0aXZpdHk8RGVsZWdh
dGU+OjpoeXN0ZXJlc2lzVGltZXJGaXJlZCkKKyAgICAgICAgLCBtX3RpbWVyKCp0aGlzLCAmSHlz
dGVyZXNpc0FjdGl2aXR5PERlbGVnYXRlPjo6aHlzdGVyZXNpc1RpbWVyRmlyZWQpCiAgICAgewog
ICAgIH0KIApAQCAtODgsNyArODgsNyBAQCBwdWJsaWM6CiAgICAgfQogICAgIAogcHJpdmF0ZToK
LSAgICB2b2lkIGh5c3RlcmVzaXNUaW1lckZpcmVkKFRpbWVyJikKKyAgICB2b2lkIGh5c3RlcmVz
aXNUaW1lckZpcmVkKCkKICAgICB7CiAgICAgICAgIG1fZGVsZWdhdGUuc3RvcHBlZCgpOwogICAg
ICAgICBtX3RpbWVyLnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbEFuaW1hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmNwcAppbmRleCBlYTNjMzk3N2I1ODFkODcwZWVjMjMxODZlZjA0NmEzZWY2MjUzYTVmLi4y
YzQzMjFiMzkzNTczNTE4YzMxZjAxMWIyNjcwZTczNjA0MGZhZGNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCkBAIC0xNzYsMTQgKzE3NiwxNCBAQCB2b2lk
IFNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKQogICAgIC8v
IEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFuaW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2
ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUgY2FuIGJlIHVwZGF0ZWQuCiAgICAgaWYg
KG1fc2Nyb2xsYWJsZUFyZWEtPmhvcml6b250YWxTbmFwT2Zmc2V0cygpKSB7CiAgICAgICAgIG1f
aG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9s
bFNuYXBBbmltYXRvcj4odGhpcywgbV9zY3JvbGxhYmxlQXJlYS0+aG9yaXpvbnRhbFNuYXBPZmZz
ZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCk7Ci0gICAgICAgIG1faG9yaXpvbnRh
bFNjcm9sbFNuYXBUaW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KHRoaXMsICZTY3JvbGxB
bmltYXRvcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKKyAgICAgICAgbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZT
Y3JvbGxBbmltYXRvcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKICAgICB9IGVs
c2UgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikgewogICAgICAgICBtX2hvcml6
b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOwogICAgICAgICBtX2hvcml6b250YWxT
Y3JvbGxTbmFwVGltZXIgPSBudWxscHRyOwogICAgIH0KICAgICBpZiAobV9zY3JvbGxhYmxlQXJl
YS0+dmVydGljYWxTbmFwT2Zmc2V0cygpKSB7CiAgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFw
QW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMs
IG1fc2Nyb2xsYWJsZUFyZWEtPnZlcnRpY2FsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRBeGlz
OjpWZXJ0aWNhbCk7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1h
a2VfdW5pcXVlPFRpbWVyPih0aGlzLCAmU2Nyb2xsQW5pbWF0b3I6OnZlcnRpY2FsU2Nyb2xsU25h
cFRpbWVyRmlyZWQpOworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyID0gc3RkOjpt
YWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxT
bmFwVGltZXJGaXJlZCk7CiAgICAgfSBlbHNlIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1h
dG9yKSB7CiAgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOwog
ICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyID0gbnVsbHB0cjsKQEAgLTIxOSwxMiAr
MjE5LDEyIEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OnN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzIGF4aXMpCiAgICAgICAgIHNjcm9sbFNuYXBUaW1lci0+c3RvcCgpOwogfQogCi12
b2lkIFNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoVGltZXIm
KQordm9pZCBTY3JvbGxBbmltYXRvcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkK
IHsKICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRp
b25VcGRhdGUoKTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFw
VGltZXJGaXJlZChUaW1lciYpCit2b2lkIFNjcm9sbEFuaW1hdG9yOjp2ZXJ0aWNhbFNjcm9sbFNu
YXBUaW1lckZpcmVkKCkKIHsKICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3Jv
bGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xs
QW5pbWF0b3IuaAppbmRleCBlYjE1MGZjZGZiNTA2NzFhNzNmZWQ0ZTY3NzFmNWQ5YTg5MTQ4YjBk
Li5lZTZjM2I1Y2M1Y2EyYzIxZWFkZTc4MzVhZDVjODNhNTMwZTk5ZTFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmgKQEAgLTEzMCw4ICsxMzAsOCBAQCBwcm90ZWN0
ZWQ6CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCiAgICAg
Ly8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1cGRhdGUgbG9vcCBpbiBBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVyIHJlcXVpcmVzIGEgVGltZXIg
YXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoVGltZXIm
KTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2
b2lkIGhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpOworICAgIHZvaWQgdmVydGljYWxT
Y3JvbGxTbmFwVGltZXJGaXJlZCgpOwogI2VuZGlmCiAKICAgICBTY3JvbGxhYmxlQXJlYSogbV9z
Y3JvbGxhYmxlQXJlYTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bGJhci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuY3BwCmluZGV4IGM2
M2ZiMDE1OTg5NTI4MTI1ZGNhMTg3MTdhODZjNTI5NTJlMzNlZGYuLmE1Zjc0MjA4NWEyMjM1YTU3
YzhjZmJlZjcwODQ5OWQ5MDZjMzQ1MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbGJhci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFy
LmNwcApAQCAtNzYsNyArNzYsNyBAQCBTY3JvbGxiYXI6OlNjcm9sbGJhcihTY3JvbGxhYmxlQXJl
YSogc2Nyb2xsYWJsZUFyZWEsIFNjcm9sbGJhck9yaWVudGF0aW9uIG9yaWVudAogICAgICwgbV9k
cmFnZ2luZ0RvY3VtZW50KGZhbHNlKQogICAgICwgbV9kb2N1bWVudERyYWdQb3MoMCkKICAgICAs
IG1fZW5hYmxlZCh0cnVlKQotICAgICwgbV9zY3JvbGxUaW1lcih0aGlzLCAmU2Nyb2xsYmFyOjph
dXRvc2Nyb2xsVGltZXJGaXJlZCkKKyAgICAsIG1fc2Nyb2xsVGltZXIoKnRoaXMsICZTY3JvbGxi
YXI6OmF1dG9zY3JvbGxUaW1lckZpcmVkKQogICAgICwgbV9vdmVybGFwc1Jlc2l6ZXIoZmFsc2Up
CiAgICAgLCBtX3N1cHByZXNzSW52YWxpZGF0aW9uKGZhbHNlKQogICAgICwgbV9pc0FscGhhTG9j
a2VkKGZhbHNlKQpAQCAtMTg1LDcgKzE4NSw3IEBAIHZvaWQgU2Nyb2xsYmFyOjpwYWludChHcmFw
aGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIGRhbWFnZVJlY3QpCiAgICAgICAg
IFdpZGdldDo6cGFpbnQoY29udGV4dCwgZGFtYWdlUmVjdCk7CiB9CiAKLXZvaWQgU2Nyb2xsYmFy
OjphdXRvc2Nyb2xsVGltZXJGaXJlZChUaW1lciYpCit2b2lkIFNjcm9sbGJhcjo6YXV0b3Njcm9s
bFRpbWVyRmlyZWQoKQogewogICAgIGF1dG9zY3JvbGxQcmVzc2VkUGFydCh0aGVtZSgpLT5hdXRv
c2Nyb2xsVGltZXJEZWxheSgpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbGJhci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmgKaW5k
ZXggNzMxZGU1ZDNmZTMzYjNjODNlZTI3NjAwYTcyNDM4Y2FkYTY3MDUxNi4uMWZjMzRlZDBmNTA4
NWE4NTJiYjE4NDVmZjRkOTJlNWExZDU4NjgyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsYmFyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xs
YmFyLmgKQEAgLTE2NSw3ICsxNjUsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZVRodW1iUG9zaXRpb24oKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlVGh1bWJQcm9wb3J0
aW9uKCk7CiAKLSAgICB2b2lkIGF1dG9zY3JvbGxUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9p
ZCBhdXRvc2Nyb2xsVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRUaW1lcklmTmVlZGVkKGRv
dWJsZSBkZWxheSk7CiAgICAgdm9pZCBzdG9wVGltZXJJZk5lZWRlZCgpOwogICAgIHZvaWQgYXV0
b3Njcm9sbFByZXNzZWRQYXJ0KGRvdWJsZSBkZWxheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9UaW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGltZXIuaApp
bmRleCBlYWM4ODNmNDExMDJhYjAxNzk1NTJhMjQyZGJmMDUwNjE0MzQ2MDliLi5mNGMzZDExNTdi
NTk3Mzc4NmY5MWM0YTIyNmMzNWM2NjdkMTg2YjcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9UaW1lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RpbWVyLmgK
QEAgLTExNiwxOCArMTE2LDYgQEAgcHJpdmF0ZToKIGNsYXNzIFRpbWVyIDogcHVibGljIFRpbWVy
QmFzZSB7CiBwdWJsaWM6CiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFRpbWVyRmlyZWRDbGFzcywg
dHlwZW5hbWUgVGltZXJGaXJlZEJhc2VDbGFzcz4KLSAgICBUaW1lcihUaW1lckZpcmVkQ2xhc3Mq
IG9iamVjdCwgdm9pZCAoVGltZXJGaXJlZEJhc2VDbGFzczo6KmZ1bmN0aW9uKShUaW1lciYpKQot
ICAgICAgICA6IG1fZnVuY3Rpb24oc3RkOjpiaW5kKGZ1bmN0aW9uLCBvYmplY3QsIHN0ZDo6cmVm
KCp0aGlzKSkpCi0gICAgewotICAgIH0KLQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUaW1lckZp
cmVkQ2xhc3MsIHR5cGVuYW1lIFRpbWVyRmlyZWRCYXNlQ2xhc3M+Ci0gICAgVGltZXIoVGltZXJG
aXJlZENsYXNzKiBvYmplY3QsIHZvaWQgKFRpbWVyRmlyZWRCYXNlQ2xhc3M6OipmdW5jdGlvbiko
VGltZXIqKSkKLSAgICAgICAgOiBtX2Z1bmN0aW9uKHN0ZDo6YmluZChmdW5jdGlvbiwgb2JqZWN0
LCB0aGlzKSkKLSAgICB7Ci0gICAgfQotCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIFRpbWVyRmly
ZWRDbGFzcywgdHlwZW5hbWUgVGltZXJGaXJlZEJhc2VDbGFzcz4KICAgICBUaW1lcihUaW1lckZp
cmVkQ2xhc3MmIG9iamVjdCwgdm9pZCAoVGltZXJGaXJlZEJhc2VDbGFzczo6KmZ1bmN0aW9uKSgp
KQogICAgICAgICA6IG1fZnVuY3Rpb24oc3RkOjpiaW5kKGZ1bmN0aW9uLCAmb2JqZWN0KSkKICAg
ICB7CkBAIC0xNjEsOCArMTQ5LDggQEAgaW5saW5lIGJvb2wgVGltZXJCYXNlOjppc0FjdGl2ZSgp
IGNvbnN0CiBjbGFzcyBEZWZlcnJhYmxlT25lU2hvdFRpbWVyIDogcHJvdGVjdGVkIFRpbWVyQmFz
ZSB7CiBwdWJsaWM6CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVGltZXJGaXJlZENsYXNzPgotICAg
IERlZmVycmFibGVPbmVTaG90VGltZXIoVGltZXJGaXJlZENsYXNzKiBvYmplY3QsIHZvaWQgKFRp
bWVyRmlyZWRDbGFzczo6KmZ1bmN0aW9uKSgpLCBzdGQ6OmNocm9ubzo6bWlsbGlzZWNvbmRzIGRl
bGF5KQotICAgICAgICA6IERlZmVycmFibGVPbmVTaG90VGltZXIoc3RkOjpiaW5kKGZ1bmN0aW9u
LCBvYmplY3QpLCBkZWxheSkKKyAgICBEZWZlcnJhYmxlT25lU2hvdFRpbWVyKFRpbWVyRmlyZWRD
bGFzcyYgb2JqZWN0LCB2b2lkIChUaW1lckZpcmVkQ2xhc3M6OipmdW5jdGlvbikoKSwgc3RkOjpj
aHJvbm86Om1pbGxpc2Vjb25kcyBkZWxheSkKKyAgICAgICAgOiBEZWZlcnJhYmxlT25lU2hvdFRp
bWVyKHN0ZDo6YmluZChmdW5jdGlvbiwgJm9iamVjdCksIGRlbGF5KQogICAgIHsKICAgICB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb24uY3BwCmluZGV4
IDgwMjFjNGJkZDg3MGNjZWY0YmZjNmRlN2JkMDAyYjY5N2Q2MTYyNzIuLmM3OGI5MjE5MmE2YjI5
Y2Q5MzU0Y2I4M2VkZGE1ODgxOWQ3YWY3MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vTWVkaWFTZXNzaW9uLmNwcApAQCAtNTksNyArNTksNyBAQCBzdGQ6OnVuaXF1ZV9w
dHI8TWVkaWFTZXNzaW9uPiBNZWRpYVNlc3Npb246OmNyZWF0ZShNZWRpYVNlc3Npb25DbGllbnQm
IGNsaWVudCkKIAogTWVkaWFTZXNzaW9uOjpNZWRpYVNlc3Npb24oTWVkaWFTZXNzaW9uQ2xpZW50
JiBjbGllbnQpCiAgICAgOiBtX2NsaWVudChjbGllbnQpCi0gICAgLCBtX2NsaWVudERhdGFCdWZm
ZXJpbmdUaW1lcih0aGlzLCAmTWVkaWFTZXNzaW9uOjpjbGllbnREYXRhQnVmZmVyaW5nVGltZXJG
aXJlZCkKKyAgICAsIG1fY2xpZW50RGF0YUJ1ZmZlcmluZ1RpbWVyKCp0aGlzLCAmTWVkaWFTZXNz
aW9uOjpjbGllbnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGUoSWRsZSkK
ICAgICAsIG1fc3RhdGVUb1Jlc3RvcmUoSWRsZSkKICAgICAsIG1fbm90aWZ5aW5nQ2xpZW50KGZh
bHNlKQpAQCAtMTgwLDcgKzE4MCw3IEBAIHZvaWQgTWVkaWFTZXNzaW9uOjp2aXNpYmlsaXR5Q2hh
bmdlZCgpCiAgICAgICAgIG1fY2xpZW50RGF0YUJ1ZmZlcmluZ1RpbWVyLnN0YXJ0T25lU2hvdChr
Q2xpZW50RGF0YUJ1ZmZlcmluZ1RpbWVyVGhyb3R0bGVEZWxheSk7CiB9CiAKLXZvaWQgTWVkaWFT
ZXNzaW9uOjpjbGllbnREYXRhQnVmZmVyaW5nVGltZXJGaXJlZChUaW1lciAmKQordm9pZCBNZWRp
YVNlc3Npb246OmNsaWVudERhdGFCdWZmZXJpbmdUaW1lckZpcmVkKCkKIHsKICAgICB1cGRhdGVD
bGllbnREYXRhQnVmZmVyaW5nKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9NZWRpYVNlc3Npb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L01lZGlhU2Vzc2lvbi5oCmluZGV4IGJlMDcyOTgxMDA4MmY1YWNkZmI3Y2FiNGEzMDlmMTZkNGE5
NTQ5MTIuLjk5NTQ1NjIzMWJiOGU2NmUwMTVjZTZkZTY3ZmZmNzU5YzExMDAzZDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5oCkBAIC0xMTUsNyArMTE1
LDcgQEAgcHJvdGVjdGVkOgogICAgIE1lZGlhU2Vzc2lvbkNsaWVudCYgY2xpZW50KCkgY29uc3Qg
eyByZXR1cm4gbV9jbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGNsaWVudERhdGFCdWZm
ZXJpbmdUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBjbGllbnREYXRhQnVmZmVyaW5nVGlt
ZXJGaXJlZCgpOwogICAgIHZvaWQgdXBkYXRlQ2xpZW50RGF0YUJ1ZmZlcmluZygpOwogCiAgICAg
TWVkaWFTZXNzaW9uQ2xpZW50JiBtX2NsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNwcAppbmRleCBlOGJmNTU0MzhhMjQ4NzkxODY0Mjlk
ZTYwYTMzNDUwOTIwYmNmNmY3Li44NzkwYWE0NGU0MTQ1MWVmMjUyMDdiYzBlODUwYjg5YWRjMTUx
ZDM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJ
bWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1h
Z2UuY3BwCkBAIC01NDAsNyArNTQwLDcgQEAgdm9pZCBCaXRtYXBJbWFnZTo6c3RhcnRBbmltYXRp
b24oQ2F0Y2hVcEFuaW1hdGlvbiBjYXRjaFVwSWZOZWNlc3NhcnkpCiAKICAgICBpZiAoY2F0Y2hV
cElmTmVjZXNzYXJ5ID09IERvTm90Q2F0Y2hVcCB8fCB0aW1lIDwgbV9kZXNpcmVkRnJhbWVTdGFy
dFRpbWUpIHsKICAgICAgICAgLy8gSGF2ZW4ndCB5ZXQgcmVhY2hlZCB0aW1lIGZvciBuZXh0IGZy
YW1lIHRvIHN0YXJ0OyBkZWxheSB1bnRpbCB0aGVuLgotICAgICAgICBtX2ZyYW1lVGltZXIgPSBz
dGQ6Om1ha2VfdW5pcXVlPFRpbWVyPih0aGlzLCAmQml0bWFwSW1hZ2U6OmFkdmFuY2VBbmltYXRp
b24pOworICAgICAgICBtX2ZyYW1lVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhp
cywgJkJpdG1hcEltYWdlOjphZHZhbmNlQW5pbWF0aW9uKTsKICAgICAgICAgbV9mcmFtZVRpbWVy
LT5zdGFydE9uZVNob3Qoc3RkOjptYXgobV9kZXNpcmVkRnJhbWVTdGFydFRpbWUgLSB0aW1lLCAw
LikpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8vIFdlJ3ZlIGFscmVhZHkgcmVhY2hlZCBvciBw
YXNzZWQgdGhlIHRpbWUgZm9yIHRoZSBuZXh0IGZyYW1lIHRvIHN0YXJ0LgpAQCAtNjQxLDcgKzY0
MSw3IEBAIHZvaWQgQml0bWFwSW1hZ2U6OmRyYXdQYXR0ZXJuKEdyYXBoaWNzQ29udGV4dCogY3R4
dCwgY29uc3QgRmxvYXRSZWN0JiB0aWxlUmVjdCwKIH0KIAogCi12b2lkIEJpdG1hcEltYWdlOjph
ZHZhbmNlQW5pbWF0aW9uKFRpbWVyJikKK3ZvaWQgQml0bWFwSW1hZ2U6OmFkdmFuY2VBbmltYXRp
b24oKQogewogICAgIGludGVybmFsQWR2YW5jZUFuaW1hdGlvbihmYWxzZSk7CiAgICAgLy8gQXQg
dGhpcyBwb2ludCB0aGUgaW1hZ2UgcmVnaW9uIGhhcyBiZWVuIG1hcmtlZCBkaXJ0eSwgYW5kIGlm
IGl0J3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1h
cEltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5o
CmluZGV4IDMyNzEyYmU2MmQ2YmUwMTc5MTM5ZmMwZmYxYzRiNjA1OWJiMmY1NTAuLjgyNDZmNDdj
MzZlZWY1NWE0NjcwNWQwMGFjZDhhM2Y5NjNkOWNkNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuaApAQCAtMjU4LDcgKzI1OCw3IEBAIHByb3Rl
Y3RlZDoKICAgICBpbnQgcmVwZXRpdGlvbkNvdW50KGJvb2wgaW1hZ2VLbm93blRvQmVDb21wbGV0
ZSk7ICAvLyB8aW1hZ2VLbm93blRvQmVDb21wbGV0ZXwgc2hvdWxkIGJlIHNldCBpZiB0aGUgY2Fs
bGVyIGtub3dzIHRoZSBlbnRpcmUgaW1hZ2UgaGFzIGJlZW4gZGVjb2RlZC4KICAgICBib29sIHNo
b3VsZEFuaW1hdGUoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRBbmltYXRpb24oQ2F0Y2hVcEFu
aW1hdGlvbiA9IENhdGNoVXApIG92ZXJyaWRlOwotICAgIHZvaWQgYWR2YW5jZUFuaW1hdGlvbihU
aW1lciYpOworICAgIHZvaWQgYWR2YW5jZUFuaW1hdGlvbigpOwogCiAgICAgLy8gRnVuY3Rpb24g
dGhhdCBkb2VzIHRoZSByZWFsIHdvcmsgb2YgYWR2YW5jaW5nIHRoZSBhbmltYXRpb24uICBXaGVu
CiAgICAgLy8gc2tpcHBpbmdGcmFtZXMgaXMgdHJ1ZSwgd2UncmUgaW4gdGhlIG1pZGRsZSBvZiBh
IGxvb3AgdHJ5aW5nIHRvIHNraXAgb3ZlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCmluZGV4IGZkMzFlN2EyOGY0ZGNjYTdlY2VkYWUzZjM0
ZWM4MDMyMDE5Yzg1ZDMuLmYxMTM2NWUxM2QzYTUyNjdiYzY1ZWFhNTdjZDhhZDYwNGZkZTk2YmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5j
cHAKQEAgLTMwNyw3ICszMDcsNyBAQCBzdGF0aWMgTWVkaWFQbGF5ZXJGYWN0b3J5KiBuZXh0TWVk
aWFFbmdpbmUoTWVkaWFQbGF5ZXJGYWN0b3J5KiBjdXJyZW50KQogCiBNZWRpYVBsYXllcjo6TWVk
aWFQbGF5ZXIoTWVkaWFQbGF5ZXJDbGllbnQmIGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVu
dCkKLSAgICAsIG1fcmVsb2FkVGltZXIodGhpcywgJk1lZGlhUGxheWVyOjpyZWxvYWRUaW1lckZp
cmVkKQorICAgICwgbV9yZWxvYWRUaW1lcigqdGhpcywgJk1lZGlhUGxheWVyOjpyZWxvYWRUaW1l
ckZpcmVkKQogICAgICwgbV9wcml2YXRlKGNyZWF0ZU51bGxNZWRpYVBsYXllcih0aGlzKSkKICAg
ICAsIG1fY3VycmVudE1lZGlhRW5naW5lKDApCiAgICAgLCBtX3ByZWxvYWQoQXV0bykKQEAgLTk1
NSw3ICs5NTUsNyBAQCB1bnNpZ25lZCBNZWRpYVBsYXllcjo6dmlkZW9EZWNvZGVkQnl0ZUNvdW50
KCkgY29uc3QKICAgICByZXR1cm4gbV9wcml2YXRlLT52aWRlb0RlY29kZWRCeXRlQ291bnQoKTsK
IH0KIAotdm9pZCBNZWRpYVBsYXllcjo6cmVsb2FkVGltZXJGaXJlZChUaW1lciYpCit2b2lkIE1l
ZGlhUGxheWVyOjpyZWxvYWRUaW1lckZpcmVkKCkKIHsKICAgICBtX3ByaXZhdGUtPmNhbmNlbExv
YWQoKTsKICAgICBsb2FkV2l0aE5leHRNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRl
eCBkNGI4OWMxNTEyMjcyODkxMWIxZjA4MDA0NTQ0MmRjMjVmMTNiNDg3Li40M2Q5NjUzMWMyZjcz
Y2UzMWRkNWVlNmRlNTJmM2QzMWMxYWQ0NTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKQEAgLTU4MCw3ICs1ODAsNyBAQCBwcml2YXRlOgog
ICAgIE1lZGlhUGxheWVyKE1lZGlhUGxheWVyQ2xpZW50Jik7CiAgICAgTWVkaWFQbGF5ZXJGYWN0
b3J5KiBuZXh0QmVzdE1lZGlhRW5naW5lKE1lZGlhUGxheWVyRmFjdG9yeSopIGNvbnN0OwogICAg
IHZvaWQgbG9hZFdpdGhOZXh0TWVkaWFFbmdpbmUoTWVkaWFQbGF5ZXJGYWN0b3J5Kik7Ci0gICAg
dm9pZCByZWxvYWRUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCByZWxvYWRUaW1lckZpcmVk
KCk7CiAKICAgICBzdGF0aWMgdm9pZCBpbml0aWFsaXplTWVkaWFFbmdpbmVzKCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKaW5kZXggNjZk
ZjZiZjJiYzE0MWU2ZTNhNGZjZTcyMmI0NTcyMDU5OTBlOTE4Ny4uNGZiZDk5OWQ2Zjc5NDkwNDk2
NjBmOWFkN2U4Zjc5NDY4Y2JhYzgyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKQEAgLTU3LDcgKzU3LDcgQEAgY2xhc3MgU2NyYXRjaEJ1
ZmZlciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgU2NyYXRj
aEJ1ZmZlcigpCi0gICAgICAgIDogbV9wdXJnZVRpbWVyKHRoaXMsICZTY3JhdGNoQnVmZmVyOjp0
aW1lckZpcmVkKQorICAgICAgICA6IG1fcHVyZ2VUaW1lcigqdGhpcywgJlNjcmF0Y2hCdWZmZXI6
OnRpbWVyRmlyZWQpCiAgICAgICAgICwgbV9sYXN0V2FzSW5zZXQoZmFsc2UpCiAjaWYgIUFTU0VS
VF9ESVNBQkxFRAogICAgICAgICAsIG1fYnVmZmVySW5Vc2UoZmFsc2UpCkBAIC0xMzAsNyArMTMw
LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBTY3JhdGNoQnVmZmVyJiBzaGFyZWQoKTsKIAogcHJp
dmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXIqKQorICAgIHZvaWQgdGltZXJGaXJlZCgp
CiAgICAgewogICAgICAgICBjbGVhclNjcmF0Y2hCdWZmZXIoKTsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFTZWxl
Y3Rpb25Hcm91cEFWRk9iakMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oCmluZGV4IDQ3MTc0MGRhZTg5
YTU5NjU2NjU4Yzk4NzVmMzI2YjgzODgwMzI5ZDQuLmJlM2RhYzc0YzllOGUxMDA1MzIxZDU5MjZh
ZmE3Zjk1NWU0MThmOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVNlbGVjdGlvbkdy
b3VwQVZGT2JqQy5oCkBAIC04NCw3ICs4NCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgTWVk
aWFTZWxlY3Rpb25Hcm91cEFWRk9iakMoQVZQbGF5ZXJJdGVtKiwgQVZNZWRpYVNlbGVjdGlvbkdy
b3VwKik7CiAKLSAgICB2b2lkIHNlbGVjdGlvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IHNlbGVjdGlvblRpbWVyRmlyZWQoKTsKIAogICAgIFJldGFpblB0cjxBVlBsYXllckl0ZW0+IG1f
cGxheWVySXRlbTsKICAgICBSZXRhaW5QdHI8QVZNZWRpYVNlbGVjdGlvbkdyb3VwPiBtX21lZGlh
U2VsZWN0aW9uR3JvdXA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vTWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakMubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFTZWxlY3Rpb25Hcm91
cEFWRk9iakMubW0KaW5kZXggYjdmZGU4ZWJiYjAyYmMyMDRkNzFmMjkzMTc2MmMyZmZjMjg1NThi
NC4uZTdhMTZiZjhlZTlhYTFlZTMzZGEwZjIyYmI3NjYxZTJhNTg5YWMyMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhU2VsZWN0
aW9uR3JvdXBBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9NZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5tbQpAQCAtODksNyArODks
NyBAQCBNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQzo6TWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9i
akMoQVZQbGF5ZXJJdGVtICppdGVtLCBBVk1lZAogICAgIDogbV9wbGF5ZXJJdGVtKGl0ZW0pCiAg
ICAgLCBtX21lZGlhU2VsZWN0aW9uR3JvdXAoZ3JvdXApCiAgICAgLCBtX3NlbGVjdGVkT3B0aW9u
KG51bGxwdHIpCi0gICAgLCBtX3NlbGVjdGlvblRpbWVyKHRoaXMsICZNZWRpYVNlbGVjdGlvbkdy
b3VwQVZGT2JqQzo6c2VsZWN0aW9uVGltZXJGaXJlZCkKKyAgICAsIG1fc2VsZWN0aW9uVGltZXIo
KnRoaXMsICZNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQzo6c2VsZWN0aW9uVGltZXJGaXJlZCkK
IHsKICAgICB1cGRhdGVPcHRpb25zKCk7CiB9CkBAIC0xNDEsNyArMTQxLDcgQEAgdm9pZCBNZWRp
YVNlbGVjdGlvbkdyb3VwQVZGT2JqQzo6c2V0U2VsZWN0ZWRPcHRpb24oTWVkaWFTZWxlY3Rpb25P
cHRpb25BVkZPYmpDKgogICAgIG1fc2VsZWN0aW9uVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQog
Ci12b2lkIE1lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDOjpzZWxlY3Rpb25UaW1lckZpcmVkKFRp
bWVyJikKK3ZvaWQgTWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakM6OnNlbGVjdGlvblRpbWVyRmly
ZWQoKQogewogICAgIFttX3BsYXllckl0ZW0gc2VsZWN0TWVkaWFPcHRpb246KG1fc2VsZWN0ZWRP
cHRpb24gPyBtX3NlbGVjdGVkT3B0aW9uLT5hdk1lZGlhU2VsZWN0aW9uT3B0aW9uKCkgOiBuaWwp
IGluTWVkaWFTZWxlY3Rpb25Hcm91cDptX21lZGlhU2VsZWN0aW9uR3JvdXAuZ2V0KCldOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZh
dGVNZWRpYVNvdXJjZUFWRk9iakMuaAppbmRleCBmNzJhY2M5OTdkYjlhYTY0M2RlOWI1Njk3NGVk
NzExZDI0MmYwOTQ5Li5lNjAxNzZkYjVmZWQ4NmRhMDBkMzc4ZTBmOTAxZjYyNWYxNjhjOWU1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclBy
aXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaApAQCAtMTY4LDcgKzE2OCw3IEBAIHByaXZhdGU6CiAg
ICAgdm9pZCBlbnN1cmVMYXllcigpOwogICAgIHZvaWQgZGVzdHJveUxheWVyKCk7CiAgICAgYm9v
bCBzaG91bGRCZVBsYXlpbmcoKSBjb25zdDsKLSAgICB2b2lkIHNlZWtUaW1lckZpcmVkKFRpbWVy
Jik7CisgICAgdm9pZCBzZWVrVGltZXJGaXJlZCgpOwogCiAgICAgZnJpZW5kIGNsYXNzIE1lZGlh
U291cmNlUHJpdmF0ZUFWRk9iakM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291
cmNlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbQppbmRleCA1
MmQ4YTJlMGViMDQwNGNkYzc3OWY4N2Q3NDkzMTQ2MmU4Yzg1NWYxLi42MjVjNzE1MTg4MzQwZTgw
ZTgzZGFlMmM2YTJhYmRjODMzNDE3MjdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNv
dXJjZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCkBA
IC0xNDQsNyArMTQ0LDcgQEAgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpN
ZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMoTWVkaWEKICAgICA6IG1fcGxheWVy
KHBsYXllcikKICAgICAsIG1fd2Vha1B0ckZhY3RvcnkodGhpcykKICAgICAsIG1fc3luY2hyb25p
emVyKGFkb3B0TlMoW1tnZXRBVlNhbXBsZUJ1ZmZlclJlbmRlclN5bmNocm9uaXplckNsYXNzKCkg
YWxsb2NdIGluaXRdKSkKLSAgICAsIG1fc2Vla1RpbWVyKHRoaXMsICZNZWRpYVBsYXllclByaXZh
dGVNZWRpYVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKQorICAgICwgbV9zZWVrVGltZXIo
KnRoaXMsICZNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZp
cmVkKQogICAgICwgbV9zZXNzaW9uKG51bGxwdHIpCiAgICAgLCBtX25ldHdvcmtTdGF0ZShNZWRp
YVBsYXllcjo6RW1wdHkpCiAgICAgLCBtX3JlYWR5U3RhdGUoTWVkaWFQbGF5ZXI6OkhhdmVOb3Ro
aW5nKQpAQCAtNDIzLDcgKzQyMyw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmpDOjpzZWVrV2l0aFRvbGVyYW5jZShjb25zdCBNZWRpYVRpbWUmIHRpCiAgICAgbV9z
ZWVrVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCi12b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQzo6c2Vla1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBNZWRpYVBsYXll
clByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OnNlZWtUaW1lckZpcmVkKCkKIHsKICAgICBzZWVr
SW50ZXJuYWwoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL0xheWVyUG9vbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
YS9MYXllclBvb2wuY3BwCmluZGV4IDZmNGJlMWQ5ZGM2OGU1ZTQyMmViMTJiYmJlYzlhM2EwMTNl
NTg0NDEuLjM0NGU5NjQzNWMwMWFhNDBmNTMxNDgwMDdmNWU3OWFiOWE0ODA4MGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvTGF5ZXJQb29sLmNwcApAQCAt
MzcsNyArMzcsNyBAQCBzdGF0aWMgY29uc3QgZG91YmxlIGNhcGFjaXR5RGVjYXlUaW1lID0gNTsK
IExheWVyUG9vbDo6TGF5ZXJQb29sKCkKICAgICA6IG1fdG90YWxCeXRlcygwKQogICAgICwgbV9t
YXhCeXRlc0ZvclBvb2woNDggKiAxMDI0ICogMTAyNCkKLSAgICAsIG1fcHJ1bmVUaW1lcih0aGlz
LCAmTGF5ZXJQb29sOjpwcnVuZVRpbWVyRmlyZWQpCisgICAgLCBtX3BydW5lVGltZXIoKnRoaXMs
ICZMYXllclBvb2w6OnBydW5lVGltZXJGaXJlZCkKICAgICAsIG1fbGFzdEFkZFRpbWUoMCkKIHsK
ICAgICBhbGxMYXllclBvb2xzKCkuYWRkKHRoaXMpOwpAQCAtMTEzLDcgKzExMyw3IEBAIHZvaWQg
TGF5ZXJQb29sOjpzY2hlZHVsZVBydW5lKCkKICAgICBtX3BydW5lVGltZXIuc3RhcnRPbmVTaG90
KDEpOwogfQogCi12b2lkIExheWVyUG9vbDo6cHJ1bmVUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQg
TGF5ZXJQb29sOjpwcnVuZVRpbWVyRmlyZWQoKQogewogICAgIHVuc2lnbmVkIHNocmlua1RvID0g
ZGVjYXllZENhcGFjaXR5KCk7CiAgICAgd2hpbGUgKG1fdG90YWxCeXRlcyA+IHNocmlua1RvKSB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9MYXllclBv
b2wuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5oCmlu
ZGV4IDhiY2JlNTYwZmNhYTg2MDgxYTJjZDFkNjI1Yjc4YTI3YWI2ZWM4MjAuLmIzN2Y3MmMxMGJj
YjM1NDM1MjgyODg1YTQxYWU4ZmE2ZDZkZmFhYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NhL0xheWVyUG9vbC5oCkBAIC02MSw3ICs2MSw3IEBAIHByaXZhdGU6
CiAKICAgICBib29sIGNhblJldXNlTGF5ZXJXaXRoU2l6ZShjb25zdCBJbnRTaXplJiBzaXplKSBj
b25zdCB7IHJldHVybiBtX21heEJ5dGVzRm9yUG9vbCAmJiAhc2l6ZS5pc0VtcHR5KCk7IH0KICAg
ICB2b2lkIHNjaGVkdWxlUHJ1bmUoKTsKLSAgICB2b2lkIHBydW5lVGltZXJGaXJlZChUaW1lciYp
OworICAgIHZvaWQgcHJ1bmVUaW1lckZpcmVkKCk7CiAKICAgICB0eXBlZGVmIGVudW0geyBMZWF2
ZVVuY2hhbmdlZCwgTWFya0FzVXNlZCB9IEFjY2Vzc1R5cGU7CiAgICAgTGF5ZXJMaXN0JiBsaXN0
T2ZMYXllcnNXaXRoU2l6ZShjb25zdCBJbnRTaXplJiwgQWNjZXNzVHlwZSA9IExlYXZlVW5jaGFu
Z2VkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1Rp
bGVDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1Rp
bGVDb250cm9sbGVyLmNwcAppbmRleCBmNGNhOTEwM2RiMTg2MmFlYTg4Y2QwZjMzNGIwZGIwMTg4
NGUyNmQxLi4zZGY4MDNjOGFhZDcwMGE0MzMyNDdhZTVjYTZkMTZjZmIzMWU4YzE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlQ29udHJvbGxlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUNvbnRyb2xs
ZXIuY3BwCkBAIC00NCw3ICs0NCw3IEBAIFRpbGVDb250cm9sbGVyOjpUaWxlQ29udHJvbGxlcihQ
bGF0Zm9ybUNBTGF5ZXIqIHJvb3RQbGF0Zm9ybUxheWVyKQogICAgIDogbV90aWxlQ2FjaGVMYXll
cihyb290UGxhdGZvcm1MYXllcikKICAgICAsIG1fdGlsZUdyaWQoc3RkOjptYWtlX3VuaXF1ZTxU
aWxlR3JpZD4oKnRoaXMpKQogICAgICwgbV90aWxlU2l6ZShkZWZhdWx0VGlsZVdpZHRoLCBkZWZh
dWx0VGlsZUhlaWdodCkKLSAgICAsIG1fdGlsZVJldmFsaWRhdGlvblRpbWVyKHRoaXMsICZUaWxl
Q29udHJvbGxlcjo6dGlsZVJldmFsaWRhdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX3RpbGVSZXZh
bGlkYXRpb25UaW1lcigqdGhpcywgJlRpbGVDb250cm9sbGVyOjp0aWxlUmV2YWxpZGF0aW9uVGlt
ZXJGaXJlZCkKICAgICAsIG1fem9vbWVkT3V0Q29udGVudHNTY2FsZSgwKQogICAgICwgbV9kZXZp
Y2VTY2FsZUZhY3Rvcihvd25pbmdHcmFwaGljc0xheWVyKCktPnBsYXRmb3JtQ0FMYXllckRldmlj
ZVNjYWxlRmFjdG9yKCkpCiAgICAgLCBtX3RpbGVDb3ZlcmFnZShDb3ZlcmFnZUZvclZpc2libGVB
cmVhKQpAQCAtMzQwLDcgKzM0MCw3IEBAIGJvb2wgVGlsZUNvbnRyb2xsZXI6OnNob3VsZFRlbXBv
cmFyaWx5UmV0YWluVGlsZUNvaG9ydHMoKSBjb25zdAogICAgIHJldHVybiBvd25pbmdHcmFwaGlj
c0xheWVyKCktPnBsYXRmb3JtQ0FMYXllclNob3VsZFRlbXBvcmFyaWx5UmV0YWluVGlsZUNvaG9y
dHMobV90aWxlQ2FjaGVMYXllcik7CiB9CiAKLXZvaWQgVGlsZUNvbnRyb2xsZXI6OnRpbGVSZXZh
bGlkYXRpb25UaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgVGlsZUNvbnRyb2xsZXI6OnRpbGVSZXZh
bGlkYXRpb25UaW1lckZpcmVkKCkKIHsKICAgICBpZiAoIW93bmluZ0dyYXBoaWNzTGF5ZXIoKSkK
ICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2EvVGlsZUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL1RpbGVDb250cm9sbGVyLmgKaW5kZXggNGFlMWExYjgxMjZiMDQxZTY4ZWFkZDM4YWUw
NGJjNjk2NjdhNTJmZi4uODIyZDJjNDhhYzMxMGQwZmYyNzgyYzU2MDA0Y2NjZjlkZjU4YjVjZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUNvbnRy
b2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlQ29u
dHJvbGxlci5oCkBAIC0xNTYsNyArMTU2LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGZsb2F0
IHpvb21lZE91dENvbnRlbnRzU2NhbGUoKSBjb25zdCBvdmVycmlkZTsKIAogCi0gICAgdm9pZCB0
aWxlUmV2YWxpZGF0aW9uVGltZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgdGlsZVJldmFsaWRh
dGlvblRpbWVyRmlyZWQoKTsKIAogICAgIHZvaWQgc2V0TmVlZHNSZXZhbGlkYXRlVGlsZXMoKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdy
aWQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdyaWQuY3Bw
CmluZGV4IGE3NzY0M2JhMDQwNjI1YzYyOWU4YWEyYzQ5ZWE3YTQzNTI5NDY2ODQuLmQ1MWUwYjNl
Zjk3MjIxM2Y3MTQ1NWYyYmE0NWZkYTgxZjI3ODdmYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlR3JpZC5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgVGls
ZUdyaWQ6OlRpbGVHcmlkKFRpbGVDb250cm9sbGVyJiBjb250cm9sbGVyKQogICAgIDogbV9jb250
cm9sbGVyKGNvbnRyb2xsZXIpCiAgICAgLCBtX2NvbnRhaW5lckxheWVyKCpjb250cm9sbGVyLnJv
b3RMYXllcigpLmNyZWF0ZUNvbXBhdGlibGVMYXllcihQbGF0Zm9ybUNBTGF5ZXI6OkxheWVyVHlw
ZUxheWVyLCBudWxscHRyKSkKICAgICAsIG1fc2NhbGUoMSkKLSAgICAsIG1fY29ob3J0UmVtb3Zh
bFRpbWVyKHRoaXMsICZUaWxlR3JpZDo6Y29ob3J0UmVtb3ZhbFRpbWVyRmlyZWQpCisgICAgLCBt
X2NvaG9ydFJlbW92YWxUaW1lcigqdGhpcywgJlRpbGVHcmlkOjpjb2hvcnRSZW1vdmFsVGltZXJG
aXJlZCkKIHsKICNpZm5kZWYgTkRFQlVHCiAgICAgbV9jb250YWluZXJMYXllci5nZXQoKS5zZXRO
YW1lKCJUaWxlR3JpZCBDb250YWluZXIgTGF5ZXIiKTsKQEAgLTQ3Niw3ICs0NzYsNyBAQCBkb3Vi
bGUgVGlsZUdyaWQ6OlRpbGVDb2hvcnRJbmZvOjp0aW1lVW50aWxFeHBpcmF0aW9uKCkKICAgICBy
ZXR1cm4gY3JlYXRpb25UaW1lIC0gdGltZVRocmVzaG9sZDsKIH0KIAotdm9pZCBUaWxlR3JpZDo6
Y29ob3J0UmVtb3ZhbFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBUaWxlR3JpZDo6Y29ob3J0UmVt
b3ZhbFRpbWVyRmlyZWQoKQogewogICAgIGlmIChtX2NvaG9ydExpc3QuaXNFbXB0eSgpKSB7CiAg
ICAgICAgIG1fY29ob3J0UmVtb3ZhbFRpbWVyLnN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlR3JpZC5oCmluZGV4IDU2ZjUyOGRlN2EzNzhlNGQyNGEw
MjkzYzRjZmUwZWVhMmMxZjI5YjkuLmM1OWFlMDk5MmVmYjMyZWI1OTM4NDk5MWQzN2U2ZTdlNmJh
MWU0NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1Rp
bGVHcmlkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVGlsZUdy
aWQuaApAQCAtMTIzLDcgKzEyMyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZW1vdmVUaWxlc0lu
Q29ob3J0KFRpbGVDb2hvcnQpOwogCiAgICAgdm9pZCBzY2hlZHVsZUNvaG9ydFJlbW92YWwoKTsK
LSAgICB2b2lkIGNvaG9ydFJlbW92YWxUaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCBjb2hv
cnRSZW1vdmFsVGltZXJGaXJlZCgpOwogICAgIFRpbGVDb2hvcnQgbmV4dFRpbGVDb2hvcnQoKSBj
b25zdDsKICAgICB2b2lkIHN0YXJ0ZWROZXdDb2hvcnQoVGlsZUNvaG9ydCk7CiAgICAgVGlsZUNv
aG9ydCBuZXdlc3RUaWxlQ29ob3J0KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9JT1N1cmZhY2VQb29sLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NnL0lPU3VyZmFjZVBvb2wuY3BwCmluZGV4IDUyODVkY2U2ZTdm
NDc3YzE3ZWQ5NTcwNGE1OGEyY2MxMDcyZGRjNWYuLjJlYThkY2ZjMjE1NDY2ODVmNDU1YWZmZDYx
YWE1NTdhMGVmNmVmNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NnL0lPU3VyZmFjZVBvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NnL0lPU3VyZmFjZVBvb2wuY3BwCkBAIC01Miw3ICs1Miw3IEBAIGNvbnN0IHNpemVf
dCBtYXhpbXVtSW5Vc2VCeXRlcyA9IGRlZmF1bHRNYXhpbXVtQnl0ZXNDYWNoZWQgLyAyOwogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBJT1N1cmZhY2VQb29sOjpJT1N1cmZhY2VQb29sKCkKLSAgICA6
IG1fY29sbGVjdGlvblRpbWVyKHRoaXMsICZJT1N1cmZhY2VQb29sOjpjb2xsZWN0aW9uVGltZXJG
aXJlZCkKKyAgICA6IG1fY29sbGVjdGlvblRpbWVyKCp0aGlzLCAmSU9TdXJmYWNlUG9vbDo6Y29s
bGVjdGlvblRpbWVyRmlyZWQpCiAgICAgLCBtX2J5dGVzQ2FjaGVkKDApCiAgICAgLCBtX2luVXNl
Qnl0ZXNDYWNoZWQoMCkKICAgICAsIG1fbWF4aW11bUJ5dGVzQ2FjaGVkKGRlZmF1bHRNYXhpbXVt
Qnl0ZXNDYWNoZWQpCkBAIC0yOTIsNyArMjkyLDcgQEAgYm9vbCBJT1N1cmZhY2VQb29sOjptYXJr
T2xkZXJTdXJmYWNlc1B1cmdlYWJsZSgpCiAgICAgcmV0dXJuIG1hcmtlZEFsbFN1cmZhY2VzOwog
fQogCi12b2lkIElPU3VyZmFjZVBvb2w6OmNvbGxlY3Rpb25UaW1lckZpcmVkKFRpbWVyJikKK3Zv
aWQgSU9TdXJmYWNlUG9vbDo6Y29sbGVjdGlvblRpbWVyRmlyZWQoKQogewogICAgIGNvbGxlY3RJ
blVzZVN1cmZhY2VzKCk7CiAgICAgYm9vbCBtYXJrZWRBbGxTdXJmYWNlcyA9IG1hcmtPbGRlclN1
cmZhY2VzUHVyZ2VhYmxlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jZy9JT1N1cmZhY2VQb29sLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jZy9JT1N1cmZhY2VQb29sLmgKaW5kZXggYmE0NDExNjhjZmQ3NTZhMTU1Y2Q2Y2U2MDcy
ZjU2NzUxZGFmNzNiZi4uOThlYTllOTk1YmE5NzhhMmQ0N2Y5MWEzMmYxNTZlYmVhYWFmNDEyNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvSU9TdXJmYWNl
UG9vbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0lPU3VyZmFj
ZVBvb2wuaApAQCAtODcsNyArODcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdHJ5RXZpY3RPbGRl
c3RDYWNoZWRTdXJmYWNlKCk7CiAKICAgICB2b2lkIHNjaGVkdWxlQ29sbGVjdGlvblRpbWVyKCk7
Ci0gICAgdm9pZCBjb2xsZWN0aW9uVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgY29sbGVj
dGlvblRpbWVyRmlyZWQoKTsKICAgICB2b2lkIGNvbGxlY3RJblVzZVN1cmZhY2VzKCk7CiAgICAg
Ym9vbCBtYXJrT2xkZXJTdXJmYWNlc1B1cmdlYWJsZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9TdWJpbWFnZUNhY2hlV2l0aFRpbWVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1N1YmltYWdlQ2FjaGVXaXRoVGlt
ZXIuY3BwCmluZGV4IDg2NzE0ZTMyODgxY2MzYzg4ZTUyMzMzN2VmNjlmY2VkOTNkNzM1NGYuLmIz
OTgxNzk3YTNmMDQzNzE4ZWUzMjEzNWU1Mzc3ZjYyZGFlN2M1NmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1N1YmltYWdlQ2FjaGVXaXRoVGltZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1N1YmltYWdlQ2FjaGVX
aXRoVGltZXIuY3BwCkBAIC02MSw3ICs2MSw3IEBAIHN0cnVjdCBTdWJpbWFnZUNhY2hlQWRkZXIg
ewogfTsKIAogU3ViaW1hZ2VDYWNoZVdpdGhUaW1lcjo6U3ViaW1hZ2VDYWNoZVdpdGhUaW1lcigp
Ci0gICAgOiBtX3RpbWVyKHRoaXMsICZTdWJpbWFnZUNhY2hlV2l0aFRpbWVyOjppbnZhbGlkYXRl
Q2FjaGVUaW1lckZpcmVkLCBzdWJpbWFnZUNhY2hlQ2xlYXJEZWxheSkKKyAgICA6IG1fdGltZXIo
KnRoaXMsICZTdWJpbWFnZUNhY2hlV2l0aFRpbWVyOjppbnZhbGlkYXRlQ2FjaGVUaW1lckZpcmVk
LCBzdWJpbWFnZUNhY2hlQ2xlYXJEZWxheSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0LmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRL
aXQuaAppbmRleCBlYTM1ZTIwMDBiOGVjZGVjMjkwOGJiMTdjNWFjZWUxNWYxNGY0ZTQ4Li4xMWI2
YTA2YjRkNTI5ZTRiNjQ2MTJmZmMxZThiNmFhNTM3NDFkZTZhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2
YXRlUVRLaXQuaApAQCAtMTU4LDcgKzE1OCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB1cGRhdGVT
dGF0ZXMoKTsKICAgICB2b2lkIGRvU2VlaygpOwogICAgIHZvaWQgY2FuY2VsU2VlaygpOwotICAg
IHZvaWQgc2Vla1RpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIHNlZWtUaW1lckZpcmVkKCk7
CiAgICAgTWVkaWFUaW1lIG1heE1lZGlhVGltZUxvYWRlZCgpIGNvbnN0OwogICAgIHZvaWQgZGlz
YWJsZVVuc3VwcG9ydGVkVHJhY2tzKCk7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQu
bW0KaW5kZXggNTZiM2QyZjYwYTFiZDIxMzU3Y2MzYWFjYzdjMjU1NjgyNDdjOWFkOC4uMjVmNjgw
ODY4ZTk3NDNjYjBhZWRjOTY3MDEwYjBmNGQ3YzNiOWQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZh
dGVRVEtpdC5tbQpAQCAtMTgzLDcgKzE4Myw3IEBAIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpN
ZWRpYVBsYXllclByaXZhdGVRVEtpdChNZWRpYVBsYXllciogcGxheWVyKQogICAgIDogbV9wbGF5
ZXIocGxheWVyKQogICAgICwgbV9vYmpjT2JzZXJ2ZXIoYWRvcHROUyhbW1dlYkNvcmVNb3ZpZU9i
c2VydmVyIGFsbG9jXSBpbml0V2l0aENhbGxiYWNrOnRoaXNdKSkKICAgICAsIG1fc2Vla1RvKE1l
ZGlhVGltZTo6aW52YWxpZFRpbWUoKSkKLSAgICAsIG1fc2Vla1RpbWVyKHRoaXMsICZNZWRpYVBs
YXllclByaXZhdGVRVEtpdDo6c2Vla1RpbWVyRmlyZWQpCisgICAgLCBtX3NlZWtUaW1lcigqdGhp
cywgJk1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpzZWVrVGltZXJGaXJlZCkKICAgICAsIG1fbmV0
d29ya1N0YXRlKE1lZGlhUGxheWVyOjpFbXB0eSkKICAgICAsIG1fcmVhZHlTdGF0ZShNZWRpYVBs
YXllcjo6SGF2ZU5vdGhpbmcpCiAgICAgLCBtX3JlY3QoKQpAQCAtNjc4LDcgKzY3OCw3IEBAIHZv
aWQgTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OmNhbmNlbFNlZWsoKQogICAgIG1fc2Vla1RpbWVy
LnN0b3AoKTsKIH0KIAotdm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6c2Vla1RpbWVyRmly
ZWQoVGltZXImKQordm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6c2Vla1RpbWVyRmlyZWQo
KQogeyAgICAgICAgCiAgICAgaWYgKCFtZXRhRGF0YUF2YWlsYWJsZSgpIHx8ICFzZWVraW5nKCkg
fHwgY3VycmVudE1lZGlhVGltZSgpID09IG1fc2Vla1RvKSB7CiAgICAgICAgIGNhbmNlbFNlZWso
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2Fj
aGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUuaAppbmRl
eCBmODc1OWE0NDJmNjJhZTc4NGM1NDA3YmIyMzQwOTQxNWJjODRlODAwLi40ZjNhNTQyODEwNDIw
ZGY3NjIxZmFhNzYxYWEzMzc1NTk5NmM1NDc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvTGVnYWN5VGlsZUNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL0xlZ2FjeVRpbGVDYWNoZS5oCkBAIC0xNjksNyArMTY5LDcgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGNyZWF0ZVRpbGVzSW5BY3RpdmVHcmlkKFN5bmNocm9ub3VzVGlsZUNyZWF0aW9uTW9k
ZSk7CiAgICAgdm9pZCBzY2hlZHVsZUxheWVyRmx1c2hGb3JQZW5kaW5nUmVwYWludCgpOwogCi0g
ICAgdm9pZCB0aWxlQ3JlYXRpb25UaW1lckZpcmVkKFRpbWVyKik7CisgICAgdm9pZCB0aWxlQ3Jl
YXRpb25UaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIGRyYXdSZXBsYWNlbWVudEltYWdlKExlZ2Fj
eVRpbGVMYXllciosIENHQ29udGV4dFJlZiwgQ0dJbWFnZVJlZik7CiAgICAgdm9pZCBkcmF3V2lu
ZG93Q29udGVudChMZWdhY3lUaWxlTGF5ZXIqLCBDR0NvbnRleHRSZWYsIENHUmVjdCBkaXJ0eVJl
Y3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL0xlZ2FjeVRpbGVD
YWNoZS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9MZWdhY3lUaWxlQ2FjaGUubW0K
aW5kZXggN2ZhOGE2ZWZkOTA1ZmU4ZTJmMDVmOWFmMDQ4MmNjNWJjZDdjZmUwMS4uMzJlOTczNjg5
NTcwYjQwY2Q0ZDFjZjVmNzdkOTY3Y2M4MTFmMzIxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vaW9zL0xlZ2FjeVRpbGVDYWNoZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvTGVnYWN5VGlsZUNhY2hlLm1tCkBAIC04Myw3ICs4Myw3IEBAIExlZ2FjeVRp
bGVDYWNoZTo6TGVnYWN5VGlsZUNhY2hlKFdBS1dpbmRvdyogd2luZG93KQogICAgICwgbV9kaWRD
YWxsV2lsbFN0YXJ0U2Nyb2xsaW5nT3Jab29taW5nKGZhbHNlKQogICAgICwgbV96b29tZWRPdXRU
aWxlR3JpZChQYXNzT3duUHRyPExlZ2FjeVRpbGVHcmlkPigpKQogICAgICwgbV96b29tZWRJblRp
bGVHcmlkKFBhc3NPd25QdHI8TGVnYWN5VGlsZUdyaWQ+KCkpCi0gICAgLCBtX3RpbGVDcmVhdGlv
blRpbWVyKHRoaXMsICZMZWdhY3lUaWxlQ2FjaGU6OnRpbGVDcmVhdGlvblRpbWVyRmlyZWQpCisg
ICAgLCBtX3RpbGVDcmVhdGlvblRpbWVyKCp0aGlzLCAmTGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3Jl
YXRpb25UaW1lckZpcmVkKQogICAgICwgbV9jdXJyZW50U2NhbGUoMS5mKQogICAgICwgbV9wZW5k
aW5nU2NhbGUoMCkKICAgICAsIG1fcGVuZGluZ1pvb21lZE91dFNjYWxlKDApCkBAIC00MTUsNyAr
NDE1LDcgQEAgdm9pZCBMZWdhY3lUaWxlQ2FjaGU6OmZpbmlzaGVkQ3JlYXRpbmdUaWxlcyhib29s
IGRpZENyZWF0ZVRpbGVzLCBib29sIGNyZWF0ZU1vcmUKICAgICAgICAgbV90aWxlQ3JlYXRpb25U
aW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgTGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3Jl
YXRpb25UaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgTGVnYWN5VGlsZUNhY2hlOjp0aWxlQ3JlYXRp
b25UaW1lckZpcmVkKCkKIHsKICAgICBpZiAoaXNUaWxlQ3JlYXRpb25TdXNwZW5kZWQoKSkKICAg
ICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0hJ
REdhbWVwYWRQcm92aWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2Ft
ZXBhZFByb3ZpZGVyLmNwcAppbmRleCBjNDkxY2RkYmRhNDE2NWNiNzY1OWVkN2JmYzU2NmE1NDg3
NGM4OWY4Li4yNGYxYjA4NDc1Yzc1YzQ5MTM0NjM5NDFmYTBlNWZhMmIwMWM1ZGJiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmNwcApA
QCAtODEsOCArODEsOCBAQCBISURHYW1lcGFkUHJvdmlkZXImIEhJREdhbWVwYWRQcm92aWRlcjo6
c2hhcmVkKCkKIAogSElER2FtZXBhZFByb3ZpZGVyOjpISURHYW1lcGFkUHJvdmlkZXIoKQogICAg
IDogbV9zaG91bGREaXNwYXRjaENhbGxiYWNrcyhmYWxzZSkKLSAgICAsIG1fY29ubmVjdGlvbkRl
bGF5VGltZXIodGhpcywgJkhJREdhbWVwYWRQcm92aWRlcjo6Y29ubmVjdGlvbkRlbGF5VGltZXJG
aXJlZCkKLSAgICAsIG1faW5wdXROb3RpZmljYXRpb25UaW1lcih0aGlzLCAmSElER2FtZXBhZFBy
b3ZpZGVyOjppbnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQpCisgICAgLCBtX2Nvbm5lY3Rpb25E
ZWxheVRpbWVyKCp0aGlzLCAmSElER2FtZXBhZFByb3ZpZGVyOjpjb25uZWN0aW9uRGVsYXlUaW1l
ckZpcmVkKQorICAgICwgbV9pbnB1dE5vdGlmaWNhdGlvblRpbWVyKCp0aGlzLCAmSElER2FtZXBh
ZFByb3ZpZGVyOjppbnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQpCiB7CiAgICAgbV9tYW5hZ2Vy
ID0gYWRvcHRDRihJT0hJRE1hbmFnZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0lPSElE
T3B0aW9uc1R5cGVOb25lKSk7CiAKQEAgLTEwOCw3ICsxMDgsNyBAQCB1bnNpZ25lZCBISURHYW1l
cGFkUHJvdmlkZXI6OmluZGV4Rm9yTmV3bHlDb25uZWN0ZWREZXZpY2UoKQogICAgIHJldHVybiBp
bmRleDsKIH0KIAotdm9pZCBISURHYW1lcGFkUHJvdmlkZXI6OmNvbm5lY3Rpb25EZWxheVRpbWVy
RmlyZWQoVGltZXImKQordm9pZCBISURHYW1lcGFkUHJvdmlkZXI6OmNvbm5lY3Rpb25EZWxheVRp
bWVyRmlyZWQoKQogewogICAgIG1fc2hvdWxkRGlzcGF0Y2hDYWxsYmFja3MgPSB0cnVlOwogfQpA
QCAtMjI4LDcgKzIyOCw3IEBAIHZvaWQgSElER2FtZXBhZFByb3ZpZGVyOjp2YWx1ZXNDaGFuZ2Vk
KElPSElEVmFsdWVSZWYgdmFsdWUpCiAgICAgICAgIG1faW5wdXROb3RpZmljYXRpb25UaW1lci5z
dGFydE9uZVNob3QoSW5wdXROb3RpZmljYXRpb25EZWxheSk7CiB9CiAKLXZvaWQgSElER2FtZXBh
ZFByb3ZpZGVyOjppbnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9pZCBISURH
YW1lcGFkUHJvdmlkZXI6OmlucHV0Tm90aWZpY2F0aW9uVGltZXJGaXJlZCgpCiB7CiAgICAgaWYg
KCFtX3Nob3VsZERpc3BhdGNoQ2FsbGJhY2tzKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvSElER2FtZXBhZFByb3ZpZGVyLmgKaW5kZXggZmZlNzVh
ZGYwNGU5ZWNhZTUyMzg3ZjJjNzY2Yzk5YjFiOTE4ZDViNS4uODBlMzBlZWNiMDUzMTY1OTU2MDIx
MGYzYmVjYzdkODZlYzI1MjljZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL0hJREdhbWVwYWRQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9ISURHYW1lcGFkUHJvdmlkZXIuaApAQCAtNjQsOCArNjQsOCBAQCBwcml2YXRlOgogICAgIHZv
aWQgb3BlbkFuZFNjaGVkdWxlTWFuYWdlcigpOwogICAgIHZvaWQgY2xvc2VBbmRVbnNjaGVkdWxl
TWFuYWdlcigpOwogCi0gICAgdm9pZCBjb25uZWN0aW9uRGVsYXlUaW1lckZpcmVkKFRpbWVyJik7
Ci0gICAgdm9pZCBpbnB1dE5vdGlmaWNhdGlvblRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lk
IGNvbm5lY3Rpb25EZWxheVRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIGlucHV0Tm90aWZpY2F0aW9u
VGltZXJGaXJlZCgpOwogCiAgICAgdW5zaWduZWQgaW5kZXhGb3JOZXdseUNvbm5lY3RlZERldmlj
ZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5p
bWF0b3JNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1h
Yy5oCmluZGV4IGIwNmNkZWU5ZjZiOWE5NTFkZmViYzJjNmViYmJjZjQ1ODQ5OGNiNGMuLjk5YTFi
YjlhNWQwNDU1Y2JiOWZiODlmYzMwYzMyOTdiY2NhMjMzYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oCkBAIC03OCwxMCArNzgsMTAgQEAg
cHJpdmF0ZToKICAgICBSZXRhaW5QdHI8V2ViU2Nyb2xsYmFyUGFpbnRlckRlbGVnYXRlPiBtX2hv
cml6b250YWxTY3JvbGxiYXJQYWludGVyRGVsZWdhdGU7CiAgICAgUmV0YWluUHRyPFdlYlNjcm9s
bGJhclBhaW50ZXJEZWxlZ2F0ZT4gbV92ZXJ0aWNhbFNjcm9sbGJhclBhaW50ZXJEZWxlZ2F0ZTsK
IAotICAgIHZvaWQgaW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZChUaW1lciYpOworICAg
IHZvaWQgaW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCgpOwogICAgIFRpbWVyIG1faW5p
dGlhbFNjcm9sbGJhclBhaW50VGltZXI7CiAKLSAgICB2b2lkIHNlbmRDb250ZW50QXJlYVNjcm9s
bGVkVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgc2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRU
aW1lckZpcmVkKCk7CiAgICAgVGltZXIgbV9zZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyOwog
ICAgIEZsb2F0U2l6ZSBtX2NvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lclNjcm9sbERlbHRhOwogCkBA
IC0xNTUsNyArMTU1LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xs
UG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICBib29sIHBpbm5l
ZEluRGlyZWN0aW9uKGZsb2F0IGRlbHRhWCwgZmxvYXQgZGVsdGFZKTsKLSAgICB2b2lkIHNuYXBS
dWJiZXJCYW5kVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1l
ckZpcmVkKCk7CiAKICAgICBib29sIGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0dXJl
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQppbmRleCA2YWZj
ZTFjNThhZDczMDU3YWYyNTVhMjZhZDAwODY2YjA3MjY0Y2VkLi4wYTM2MTBlZjVhYmIzNThjODA2
Nzk4NzEzNDU1YzA0MzFkZTQ0ZTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tCkBAIC02NDEsMTEgKzY0MSwxMSBAQCBQYXNzT3duUHRy
PFNjcm9sbEFuaW1hdG9yPiBTY3JvbGxBbmltYXRvcjo6Y3JlYXRlKFNjcm9sbGFibGVBcmVhKiBz
Y3JvbGxhYmxlQXJlYQogCiBTY3JvbGxBbmltYXRvck1hYzo6U2Nyb2xsQW5pbWF0b3JNYWMoU2Ny
b2xsYWJsZUFyZWEqIHNjcm9sbGFibGVBcmVhKQogICAgIDogU2Nyb2xsQW5pbWF0b3Ioc2Nyb2xs
YWJsZUFyZWEpCi0gICAgLCBtX2luaXRpYWxTY3JvbGxiYXJQYWludFRpbWVyKHRoaXMsICZTY3Jv
bGxBbmltYXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCkKLSAgICAsIG1f
c2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lcih0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OnNl
bmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJlZCkKKyAgICAsIG1faW5pdGlhbFNjcm9sbGJh
clBhaW50VGltZXIoKnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBh
aW50VGltZXJGaXJlZCkKKyAgICAsIG1fc2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lcigqdGhp
cywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyRmlyZWQp
CiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQogICAgICwgbV9zY3JvbGxFbGFzdGljaXR5Q29u
dHJvbGxlcih0aGlzKQotICAgICwgbV9zbmFwUnViYmVyQmFuZFRpbWVyKHRoaXMsICZTY3JvbGxB
bmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKQorICAgICwgbV9zbmFwUnViYmVy
QmFuZFRpbWVyKCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGltZXJG
aXJlZCkKICNlbmRpZgogICAgICwgbV9oYXZlU2Nyb2xsZWRTaW5jZVBhZ2VMb2FkKGZhbHNlKQog
ICAgICwgbV9uZWVkc1Njcm9sbGVyU3R5bGVVcGRhdGUoZmFsc2UpCkBAIC0xMjU4LDcgKzEyNTgs
NyBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCiAg
ICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRv
ck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgU2Nyb2xsQW5pbWF0
b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCiB7CiAgICAgbV9zY3JvbGxFbGFzdGlj
aXR5Q29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKIH0KQEAgLTEzMzksNyAr
MTMzOSw3IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnN0b3BTY3JvbGxiYXJQYWludFRpbWVy
KCkKICAgICBtX2luaXRpYWxTY3JvbGxiYXJQYWludFRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBT
Y3JvbGxBbmltYXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZChUaW1lciYp
Cit2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZpcmVk
KCkKIHsKICAgICAvLyBUbyBmb3JjZSB0aGUgc2Nyb2xsYmFycyB0byBmbGFzaCwgd2UgaGF2ZSB0
byBjYWxsIGhpZGUgZmlyc3QuIE90aGVyd2lzZSwgdGhlIFNjcm9sbGJhclBhaW50ZXJDb250cm9s
bGVyCiAgICAgLy8gbWlnaHQgdGhpbmsgdGhhdCB0aGUgc2Nyb2xsYmFycyBhcmUgYWxyZWFkeSBz
aG93aW5nIGFuZCBiYWlsIGVhcmx5LgpAQCAtMTM2Myw3ICsxMzYzLDcgQEAgdm9pZCBTY3JvbGxB
bmltYXRvck1hYzo6c2VuZENvbnRlbnRBcmVhU2Nyb2xsZWQoY29uc3QgRmxvYXRTaXplJiBkZWx0
YSkKICAgICAgICAgW21fc2Nyb2xsYmFyUGFpbnRlckNvbnRyb2xsZXIgY29udGVudEFyZWFTY3Jv
bGxlZF07CiB9CiAKLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnNlbmRDb250ZW50QXJlYVNjcm9s
bGVkVGltZXJGaXJlZChUaW1lciYpCit2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVu
dEFyZWFTY3JvbGxlZFRpbWVyRmlyZWQoKQogewogICAgIHNlbmRDb250ZW50QXJlYVNjcm9sbGVk
KG1fY29udGVudEFyZWFTY3JvbGxlZFRpbWVyU2Nyb2xsRGVsdGEpOwogICAgIG1fY29udGVudEFy
ZWFTY3JvbGxlZFRpbWVyU2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRN
b2NrLmNwcAppbmRleCAzYTdhMWU3MjBkYjgwN2RmZjdiNjdkYzliMzg3MTc1OTQwZGZkNmNhLi5h
ZjBhODM0YzMyMDQyMmIzZTFmYTQzMGVlMWUyNjcyZDhkNjEwMWMyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dE1vY2suY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogRGV2aWNl
T3JpZW50YXRpb25DbGllbnRNb2NrOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2soKQogICAg
IDogbV9jb250cm9sbGVyKDApCi0gICAgLCBtX3RpbWVyKHRoaXMsICZEZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2s6OnRpbWVyRmlyZWQpCisgICAgLCBtX3RpbWVyKCp0aGlzLCAmRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRNb2NrOjp0aW1lckZpcmVkKQogICAgICwgbV9pc1VwZGF0aW5nKGZhbHNl
KQogewogfQpAQCAtNjIsOSArNjIsOCBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
azo6c2V0T3JpZW50YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdAogICAgICAg
ICBtX3RpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2s6OnRpbWVyRmlyZWQoVGltZXImIHRpbWVyKQordm9pZCBEZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2s6OnRpbWVyRmlyZWQoKQogewotICAgIEFTU0VSVF9VTlVTRUQodGltZXIsICZ0
aW1lciA9PSAmbV90aW1lcik7CiAgICAgbV90aW1lci5zdG9wKCk7CiAgICAgbV9jb250cm9sbGVy
LT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihtX29yaWVudGF0aW9uLmdldCgpKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0
aW9uQ2xpZW50TW9jay5oCmluZGV4IDY5NDhiOTI1YTM3MmFhODUwYjVkNjcxNjE3MmI5NDAxNDlh
NmNhYzMuLjMzYWRiZTcyZjgyYzYxMzcyNmZiOGFjNDM4ODMyYjhmZTNlNmJkMmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRN
b2NrLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2suaApAQCAtNTQsNyArNTQsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBzZXRPcmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4p
OwogCiBwcml2YXRlOgotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGlt
ZXJGaXJlZCgpOwogCiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRh
dGlvbjsKICAgICBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUGxhdGZvcm1TcGVlY2hTeW50
aGVzaXplck1vY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNw
ZWVjaFN5bnRoZXNpemVyTW9jay5jcHAKaW5kZXggZWVjYmE3NzQ2YTYzZWI1ZmU5ZDI1MTdjNzJm
Mjg3YzJhMGY3ZmRhYy4uMzgzODM3MmM1Nzc4ZWMyNzJjOGI1NWY4MzE1MDY1Mzg0ZDljZjg3NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVyTW9jay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9QbGF0
Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jazo6UGxhdGZvcm1TcGVl
Y2hTeW50aGVzaXplck1vY2soUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplckNsaWVudCogY2xpZW50
KQogICAgIDogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplcihjbGllbnQpCi0gICAgLCBtX3NwZWFr
aW5nRmluaXNoZWRUaW1lcih0aGlzLCAmUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2s6OnNw
ZWFraW5nRmluaXNoZWQpCisgICAgLCBtX3NwZWFraW5nRmluaXNoZWRUaW1lcigqdGhpcywgJlBs
YXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrOjpzcGVha2luZ0ZpbmlzaGVkKQogewogfQogICAg
IApAQCAtNDEsNyArNDEsNyBAQCBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jazo6flBsYXRm
b3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrKCkKIHsKIH0KIAotdm9pZCBQbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVyTW9jazo6c3BlYWtpbmdGaW5pc2hlZChUaW1lciopCit2b2lkIFBsYXRmb3JtU3Bl
ZWNoU3ludGhlc2l6ZXJNb2NrOjpzcGVha2luZ0ZpbmlzaGVkKCkKIHsKICAgICBBU1NFUlQobV91
dHRlcmFuY2UuZ2V0KCkpOwogICAgIFJlZlB0cjxQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1V0dGVy
YW5jZT4gcHJvdGVjdChtX3V0dGVyYW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL1BsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tb2NrL1BsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmgKaW5kZXgg
ODI5NDBhOGVjY2MwZDc1YjBlZjFhNTZjZWUwZGVmZDQ5MDAyNDY3NS4uOGQ5NzQ4OGIwMmQwZDIx
M2I4NTU2ZTUzMzRiNTdhMjhiMjkzN2UwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbW9jay9QbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suaApAQCAt
NDUsNyArNDUsNyBAQCBwdWJsaWM6CiAgICAgCiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBp
bml0aWFsaXplVm9pY2VMaXN0KCk7Ci0gICAgdm9pZCBzcGVha2luZ0ZpbmlzaGVkKFRpbWVyKik7
CisgICAgdm9pZCBzcGVha2luZ0ZpbmlzaGVkKCk7CiAgICAgCiAgICAgVGltZXIgbV9zcGVha2lu
Z0ZpbmlzaGVkVGltZXI7CiAgICAgUmVmUHRyPFBsYXRmb3JtU3BlZWNoU3ludGhlc2lzVXR0ZXJh
bmNlPiBtX3V0dGVyYW5jZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvRE5TUmVzb2x2ZVF1ZXVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvRE5TUmVzb2x2ZVF1ZXVlLmNwcAppbmRleCA2YzEwMzI3ODhlOTk3NWJhN2VmYjk5YWY0ZmEw
NWIyNzNhMThlYWI2Li44NWVhNjY3MWMwMjA3OTc0MTlhNWQ0YWMzNDZlNWM4NTMzYjg1YmMyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0ROU1Jlc29sdmVRdWV1
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ETlNSZXNvbHZlUXVl
dWUuY3BwCkBAIC01OCw3ICs1OCw3IEBAIEROU1Jlc29sdmVRdWV1ZSYgRE5TUmVzb2x2ZVF1ZXVl
OjpzaGFyZWQoKQogfQogCiBETlNSZXNvbHZlUXVldWU6OkROU1Jlc29sdmVRdWV1ZSgpCi0gICAg
OiBtX3RpbWVyKHRoaXMsICZETlNSZXNvbHZlUXVldWU6OnRpbWVyRmlyZWQpCisgICAgOiBtX3Rp
bWVyKCp0aGlzLCAmRE5TUmVzb2x2ZVF1ZXVlOjp0aW1lckZpcmVkKQogICAgICwgbV9yZXF1ZXN0
c0luRmxpZ2h0KDApCiAgICAgLCBtX2NhY2hlZFByb3h5RW5hYmxlZFN0YXR1cyhmYWxzZSkKICAg
ICAsIG1fbGFzdFByb3h5RW5hYmxlZFN0YXR1c0NoZWNrVGltZSgwKQpAQCAtOTgsNyArOTgsNyBA
QCB2b2lkIEROU1Jlc29sdmVRdWV1ZTo6YWRkKGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCiAgICAg
fQogfQogCi12b2lkIEROU1Jlc29sdmVRdWV1ZTo6dGltZXJGaXJlZChUaW1lciYpCit2b2lkIERO
U1Jlc29sdmVRdWV1ZTo6dGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKGlzVXNpbmdQcm94eSgpKSB7
CiAgICAgICAgIG1fbmFtZXMuY2xlYXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvRE5TUmVzb2x2ZVF1ZXVlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL0ROU1Jlc29sdmVRdWV1ZS5oCmluZGV4IGFkNmYxOGJmYjBiODI0YzAxODEzNThj
NWYxZjYwMWQ3ODUzMTlkOTkuLmNkOWJhMGZjMGUyYTU2ZWY0ZGFhNGZiOTY2ZDdjOWU0MzI5NDBj
YmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRE5TUmVzb2x2
ZVF1ZXVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ETlNSZXNvbHZl
UXVldWUuaApAQCAtNTUsNyArNTUsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgcGxhdGZvcm1Qcm94
eUlzRW5hYmxlZEluU3lzdGVtUHJlZmVyZW5jZXMoKTsKICAgICB2b2lkIHBsYXRmb3JtUmVzb2x2
ZShjb25zdCBTdHJpbmcmKTsKIAotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgIHZv
aWQgdGltZXJGaXJlZCgpOwogCiAgICAgVGltZXIgbV90aW1lcjsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RhdGVOb3RpZmllci5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RhdGVOb3RpZmllci5oCmluZGV4
IDExMzU0NGJkZjE3MTdjNzUwZWMwMDljNjE4ZjM2NzYwYWJjZjk5Y2IuLmUyMmE0YTAwODExMTJk
MmFhZDYwOWVhOGNlZmM1ODM3MmExOThiMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvTmV0d29ya1N0YXRlTm90aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdGF0ZU5vdGlmaWVyLmgKQEAgLTczLDcgKzczLDcg
QEAgcHJpdmF0ZToKICAgICB2b2lkIHVwZGF0ZVN0YXRlKCk7CiAKICNpZiBQTEFURk9STShNQUMp
Ci0gICAgdm9pZCBuZXR3b3JrU3RhdGVDaGFuZ2VUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9p
ZCBuZXR3b3JrU3RhdGVDaGFuZ2VUaW1lckZpcmVkKCk7CiAKICAgICBzdGF0aWMgdm9pZCBkeW5h
bWljU3RvcmVDYWxsYmFjayhTQ0R5bmFtaWNTdG9yZVJlZiwgQ0ZBcnJheVJlZiBjaGFuZ2VkS2V5
cywgdm9pZCAqaW5mbyk7IAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL1Jlc291cmNlSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGUuY3BwCmluZGV4IDNhZTUyMDBlOWQwNDZiMzFkNGFlZTZkYzExYzkw
OTEyNTIyYTQzMjcuLmQ2YzMxNWZhYjQ5NThlYjAxYzQxZmFiMjg3ODU4MDJmMjk3YjA4NDcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUu
Y3BwCkBAIC0xMDgsNyArMTA4LDcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZTo6c2NoZWR1bGVGYWls
dXJlKEZhaWx1cmVUeXBlIHR5cGUpCiAgICAgZC0+bV9mYWlsdXJlVGltZXIuc3RhcnRPbmVTaG90
KDApOwogfQogCi12b2lkIFJlc291cmNlSGFuZGxlOjpmYWlsdXJlVGltZXJGaXJlZChUaW1lciYp
Cit2b2lkIFJlc291cmNlSGFuZGxlOjpmYWlsdXJlVGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKCFj
bGllbnQoKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9SZXNvdXJjZUhhbmRsZS5oCmluZGV4IDYwN2YzOGQzNTg3NWQwMWE4Yjk1Mjg2MGU0
YmI0MjE0ZmY3NTkyNjEuLjYwNzNmMTAyNTA1ZWI1ODQ0MDM2ZDg1MjJjZGZhMjgxYjEyYjdmMTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5k
bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxl
LmgKQEAgLTI0MCw3ICsyNDAsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgUmVzb3Vy
Y2VSZXF1ZXN0JiBmaXJzdFJlcXVlc3QoKTsKICAgICBjb25zdCBTdHJpbmcmIGxhc3RIVFRQTWV0
aG9kKCkgY29uc3Q7CiAKLSAgICB2b2lkIGZhaWx1cmVUaW1lckZpcmVkKFRpbWVyJik7CisgICAg
dm9pZCBmYWlsdXJlVGltZXJGaXJlZCgpOwogCiAgICAgTmV0d29ya2luZ0NvbnRleHQqIGNvbnRl
eHQoKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZUhhbmRsZUludGVybmFsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL1Jlc291cmNlSGFuZGxlSW50ZXJuYWwuaAppbmRleCAxYWE0Y2Q1YjI3ZmNmYzM4ZGI2NjU3
NjQ5Y2ViMDc1OGNkNDE1ZmM5Li5jNThjMzQ3YWZkZTRmY2QyMGNmN2FhY2E3OGQyY2U0MzJiMzg5
NjViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNl
SGFuZGxlSW50ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jl
c291cmNlSGFuZGxlSW50ZXJuYWwuaApAQCAtMTE5LDcgKzExOSw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICAgICAgICAgICwgbV9jdXJyZW50TWFjQ2hhbGxlbmdlKG5pbCkKICNlbmRpZgog
ICAgICAgICAgICAgLCBtX3NjaGVkdWxlZEZhaWx1cmVUeXBlKFJlc291cmNlSGFuZGxlOjpOb0Zh
aWx1cmUpCi0gICAgICAgICAgICAsIG1fZmFpbHVyZVRpbWVyKGxvYWRlciwgJlJlc291cmNlSGFu
ZGxlOjpmYWlsdXJlVGltZXJGaXJlZCkKKyAgICAgICAgICAgICwgbV9mYWlsdXJlVGltZXIoKmxv
YWRlciwgJlJlc291cmNlSGFuZGxlOjpmYWlsdXJlVGltZXJGaXJlZCkKICAgICAgICAgewogICAg
ICAgICAgICAgY29uc3QgVVJMJiB1cmwgPSBtX2ZpcnN0UmVxdWVzdC51cmwoKTsKICAgICAgICAg
ICAgIG1fdXNlciA9IHVybC51c2VyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL21hYy9OZXR3b3JrU3RhdGVOb3RpZmllck1hYy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9OZXR3b3JrU3RhdGVOb3RpZmllck1hYy5jcHAKaW5k
ZXggMDA1MzhiZjMyYWIxMjQyM2I0MjRjZTJiOTdlZmY1NjQ5NjRlOTc3Mi4uNTVhZGUyMThjMTM4
ODhjMGNjMjZlYmVjYjc5MjYzZGNhNzAwOTE2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9tYWMvTmV0d29ya1N0YXRlTm90aWZpZXJNYWMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL05ldHdvcmtTdGF0ZU5vdGlmaWVyTWFj
LmNwcApAQCAtODEsNyArODEsNyBAQCB2b2lkIE5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpkeW5hbWlj
U3RvcmVDYWxsYmFjayhTQ0R5bmFtaWNTdG9yZVJlZiwgQ0ZBcnJheVJlZiwgdgogICAgIG5vdGlm
aWVyLT5tX25ldHdvcmtTdGF0ZUNoYW5nZVRpbWVyLnN0YXJ0T25lU2hvdChTdGF0ZUNoYW5nZVRp
bWVySW50ZXJ2YWwpOwogfQogCi12b2lkIE5ldHdvcmtTdGF0ZU5vdGlmaWVyOjpuZXR3b3JrU3Rh
dGVDaGFuZ2VUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgTmV0d29ya1N0YXRlTm90aWZpZXI6Om5l
dHdvcmtTdGF0ZUNoYW5nZVRpbWVyRmlyZWQoKQogewogICAgIGJvb2wgb2xkT25MaW5lID0gbV9p
c09uTGluZTsKICAgICAKQEAgLTk1LDcgKzk1LDcgQEAgdm9pZCBOZXR3b3JrU3RhdGVOb3RpZmll
cjo6bmV0d29ya1N0YXRlQ2hhbmdlVGltZXJGaXJlZChUaW1lciYpCiAKIE5ldHdvcmtTdGF0ZU5v
dGlmaWVyOjpOZXR3b3JrU3RhdGVOb3RpZmllcigpCiAgICAgOiBtX2lzT25MaW5lKGZhbHNlKQot
ICAgICwgbV9uZXR3b3JrU3RhdGVDaGFuZ2VUaW1lcih0aGlzLCAmTmV0d29ya1N0YXRlTm90aWZp
ZXI6Om5ldHdvcmtTdGF0ZUNoYW5nZVRpbWVyRmlyZWQpCisgICAgLCBtX25ldHdvcmtTdGF0ZUNo
YW5nZVRpbWVyKCp0aGlzLCAmTmV0d29ya1N0YXRlTm90aWZpZXI6Om5ldHdvcmtTdGF0ZUNoYW5n
ZVRpbWVyRmlyZWQpCiB7CiAgICAgU0NEeW5hbWljU3RvcmVDb250ZXh0IGNvbnRleHQgPSB7IDAs
IHRoaXMsIDAsIDAsIDAgfTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9JbWFnZVF1YWxpdHlDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9JbWFnZVF1YWxpdHlDb250cm9sbGVyLmNwcAppbmRleCAyN2MwNTFjMTVkZWNmMzhmODViOTcz
YTEwYThiNDdhYTVkZGQwMjlkLi5jNGE2ZTQzYzY3MjJmNDEwZjdiZjkwZDEwOGI4YzU2MGMzMjAw
MDljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW1hZ2VRdWFsaXR5Q29u
dHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ltYWdlUXVhbGl0eUNv
bnRyb2xsZXIuY3BwCkBAIC0zOSw3ICszOSw3IEBAIHN0YXRpYyBjb25zdCBkb3VibGUgY0xvd1F1
YWxpdHlUaW1lVGhyZXNob2xkID0gMC41MDA7IC8vIDUwMCBtcwogCiBJbWFnZVF1YWxpdHlDb250
cm9sbGVyOjpJbWFnZVF1YWxpdHlDb250cm9sbGVyKGNvbnN0IFJlbmRlclZpZXcmIHJlbmRlclZp
ZXcpCiAgICAgOiBtX3JlbmRlclZpZXcocmVuZGVyVmlldykKLSAgICAsIG1fdGltZXIodGhpcywg
JkltYWdlUXVhbGl0eUNvbnRyb2xsZXI6OmhpZ2hRdWFsaXR5UmVwYWludFRpbWVyRmlyZWQpCisg
ICAgLCBtX3RpbWVyKCp0aGlzLCAmSW1hZ2VRdWFsaXR5Q29udHJvbGxlcjo6aGlnaFF1YWxpdHlS
ZXBhaW50VGltZXJGaXJlZCkKICAgICAsIG1fYW5pbWF0ZWRSZXNpemVJc0FjdGl2ZShmYWxzZSkK
ICAgICAsIG1fbGl2ZVJlc2l6ZU9wdGltaXphdGlvbklzQWN0aXZlKGZhbHNlKQogewpAQCAtNzQs
NyArNzQsNyBAQCB2b2lkIEltYWdlUXVhbGl0eUNvbnRyb2xsZXI6OnJlbW92ZU9iamVjdChSZW5k
ZXJCb3hNb2RlbE9iamVjdCogb2JqZWN0KQogICAgIH0KIH0KIAotdm9pZCBJbWFnZVF1YWxpdHlD
b250cm9sbGVyOjpoaWdoUXVhbGl0eVJlcGFpbnRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgSW1h
Z2VRdWFsaXR5Q29udHJvbGxlcjo6aGlnaFF1YWxpdHlSZXBhaW50VGltZXJGaXJlZCgpCiB7CiAg
ICAgaWYgKG1fcmVuZGVyVmlldy5kb2N1bWVudEJlaW5nRGVzdHJveWVkKCkpCiAgICAgICAgIHJl
dHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbWFnZVF1YWxpdHlD
b250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW1hZ2VRdWFsaXR5Q29udHJv
bGxlci5oCmluZGV4IGE1YjZmMDFhNmRmZDFjMzk5NzQwM2Q5MTZiZDI3ZTQ4MDZlODM1NTcuLmRj
ZWUwZjk2Zjg4YzhhYzJhMWIxMzM2MDg1YmViNGVhN2MzMDRjYWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9JbWFnZVF1YWxpdHlDb250cm9sbGVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL0ltYWdlUXVhbGl0eUNvbnRyb2xsZXIuaApAQCAtNTIsNyArNTIs
NyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCByZW1vdmVMYXllcihSZW5kZXJCb3hNb2RlbE9iamVj
dCosIExheWVyU2l6ZU1hcCogaW5uZXJNYXAsIGNvbnN0IHZvaWQqIGxheWVyKTsKICAgICB2b2lk
IHNldChSZW5kZXJCb3hNb2RlbE9iamVjdCosIExheWVyU2l6ZU1hcCogaW5uZXJNYXAsIGNvbnN0
IHZvaWQqIGxheWVyLCBjb25zdCBMYXlvdXRTaXplJik7Ci0gICAgdm9pZCBoaWdoUXVhbGl0eVJl
cGFpbnRUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBoaWdoUXVhbGl0eVJlcGFpbnRUaW1l
ckZpcmVkKCk7CiAgICAgdm9pZCByZXN0YXJ0VGltZXIoKTsKICAgICB2b2lkIHJlbW92ZU9iamVj
dChSZW5kZXJCb3hNb2RlbE9iamVjdCopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCdXR0b24uY3BwCmluZGV4IDllZjRlMTFiZjJmODEwOTFjZTVjODQ4MDNlNDhkN2IzZjY4YTgy
NTAuLmI4MzYxZGQxNDBmMDA2OTdmNWEzMzBiNGU1NDUzZTM5Y2M1MTY1YjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCdXR0b24uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCdXR0b24uY3BwCkBAIC0xMTYsNyArMTE2LDcgQEAgdm9p
ZCBSZW5kZXJCdXR0b246OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25z
dCBSZW5kZXJTdHlsZSogb2xkU3QKICAgICBpZiAoIW1fZGVmYXVsdCAmJiB0aGVtZSgpLmlzRGVm
YXVsdCgqdGhpcykpIHsKICAgICAgICAgaWYgKHRoZW1lKCkuZGVmYXVsdEJ1dHRvbkhhc0FuaW1h
dGlvbigpKSB7CiAgICAgICAgICAgICBpZiAoIW1fdGltZXIpCi0gICAgICAgICAgICAgICAgbV90
aW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KHRoaXMsICZSZW5kZXJCdXR0b246OnRpbWVy
RmlyZWQpOworICAgICAgICAgICAgICAgIG1fdGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVy
PigqdGhpcywgJlJlbmRlckJ1dHRvbjo6dGltZXJGaXJlZCk7CiAgICAgICAgICAgICBtX3RpbWVy
LT5zdGFydFJlcGVhdGluZygwLjAzKTsKICAgICAgICAgfQogICAgICAgICBtX2RlZmF1bHQgPSB0
cnVlOwpAQCAtMTg3LDcgKzE4Nyw3IEBAIExheW91dFJlY3QgUmVuZGVyQnV0dG9uOjpjb250cm9s
Q2xpcFJlY3QoY29uc3QgTGF5b3V0UG9pbnQmIGFkZGl0aW9uYWxPZmZzZXQpIGNvCiAgICAgcmV0
dXJuIExheW91dFJlY3QoYWRkaXRpb25hbE9mZnNldC54KCkgKyBib3JkZXJMZWZ0KCksIGFkZGl0
aW9uYWxPZmZzZXQueSgpICsgYm9yZGVyVG9wKCksIHdpZHRoKCkgLSBib3JkZXJMZWZ0KCkgLSBi
b3JkZXJSaWdodCgpLCBoZWlnaHQoKSAtIGJvcmRlclRvcCgpIC0gYm9yZGVyQm90dG9tKCkpOwog
fQogCi12b2lkIFJlbmRlckJ1dHRvbjo6dGltZXJGaXJlZChUaW1lciYpCit2b2lkIFJlbmRlckJ1
dHRvbjo6dGltZXJGaXJlZCgpCiB7CiAgICAgLy8gRklYTUUgQnVnIDI1MTEwOiBJZGVhbGx5IHdl
IHdvdWxkIHN0b3Agb3VyIHRpbWVyIHdoZW4gb3VyIERvY3VtZW50CiAgICAgLy8gZW50ZXJzIHRo
ZSBwYWdlIGNhY2hlLiBCdXQgd2UgY3VycmVudGx5IGhhdmUgbm8gd2F5IG9mIGJlaW5nIG5vdGlm
aWVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmgKaW5kZXggMGRiZjUxZjY4
MjM1NjQ3OWI2MmRhMTM0OWQyYTRkOWNlYTAzMGI1Ny4uMDYxMzZiOGM5ZTBjOTg2OTk5NGJjMDVj
YmQ3OTk2NGUzYmI5YmNkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJ1dHRvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCdXR0b24u
aApAQCAtNzQsNyArNzQsNyBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCBib29sIHJlcXVpcmVz
Rm9yY2VkU3R5bGVSZWNhbGNQcm9wYWdhdGlvbigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRy
dWU7IH0KIAotICAgIHZvaWQgdGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgdGltZXJGaXJl
ZCgpOwogCiAgICAgUmVuZGVyVGV4dEZyYWdtZW50KiBtX2J1dHRvblRleHQ7CiAgICAgUmVuZGVy
QmxvY2sqIG1faW5uZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJM
YXllckNvbXBvc2l0b3IuY3BwCmluZGV4IDBmOWM0OTViMGM3YWFlNDE3NWI3YWU5NDZiN2NlMjFl
OGIxYmIwYWUuLjNlNmM2NWQwY2YzZjM5NWVjNjcwZDYxZDBhMDVkNDE3MmI0NDEyNjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3Bw
CkBAIC0yNjUsNyArMjY1LDcgQEAgc3RhdGljIGlubGluZSBib29sIGNvbXBvc2l0aW5nTG9nRW5h
YmxlZCgpCiAKIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yKFJl
bmRlclZpZXcmIHJlbmRlclZpZXcpCiAgICAgOiBtX3JlbmRlclZpZXcocmVuZGVyVmlldykKLSAg
ICAsIG1fdXBkYXRlQ29tcG9zaXRpbmdMYXllcnNUaW1lcih0aGlzLCAmUmVuZGVyTGF5ZXJDb21w
b3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVyc1RpbWVyRmlyZWQpCisgICAgLCBtX3VwZGF0
ZUNvbXBvc2l0aW5nTGF5ZXJzVGltZXIoKnRoaXMsICZSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVw
ZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzVGltZXJGaXJlZCkKICAgICAsIG1faGFzQWNjZWxlcmF0ZWRD
b21wb3NpdGluZyh0cnVlKQogICAgICwgbV9jb21wb3NpdGluZ1RyaWdnZXJzKHN0YXRpY19jYXN0
PENocm9tZUNsaWVudDo6Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KENocm9tZUNsaWVudDo6QWxs
VHJpZ2dlcnMpKQogICAgICwgbV9jb21wb3NpdGVkTGF5ZXJDb3VudCgwKQpAQCAtMjgzLDExICsy
ODMsMTEgQEAgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpSZW5kZXJMYXllckNvbXBvc2l0b3IoUmVu
ZGVyVmlldyYgcmVuZGVyVmlldykKICAgICAsIG1faXNUcmFja2luZ1JlcGFpbnRzKGZhbHNlKQog
ICAgICwgbV9sYXllcnNXaXRoVGlsZWRCYWNraW5nQ291bnQoMCkKICAgICAsIG1fcm9vdExheWVy
QXR0YWNobWVudChSb290TGF5ZXJVbmF0dGFjaGVkKQotICAgICwgbV9sYXllckZsdXNoVGltZXIo
dGhpcywgJlJlbmRlckxheWVyQ29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQpCisgICAg
LCBtX2xheWVyRmx1c2hUaW1lcigqdGhpcywgJlJlbmRlckxheWVyQ29tcG9zaXRvcjo6bGF5ZXJG
bHVzaFRpbWVyRmlyZWQpCiAgICAgLCBtX2xheWVyRmx1c2hUaHJvdHRsaW5nRW5hYmxlZChmYWxz
ZSkKICAgICAsIG1fbGF5ZXJGbHVzaFRocm90dGxpbmdUZW1wb3JhcmlseURpc2FibGVkRm9ySW50
ZXJhY3Rpb24oZmFsc2UpCiAgICAgLCBtX2hhc1BlbmRpbmdMYXllckZsdXNoKGZhbHNlKQotICAg
ICwgbV9wYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXIodGhpcywgJlJlbmRlckxheWVyQ29tcG9z
aXRvcjo6cGFpbnRSZWxhdGVkTWlsZXN0b25lc1RpbWVyRmlyZWQpCisgICAgLCBtX3BhaW50UmVs
YXRlZE1pbGVzdG9uZXNUaW1lcigqdGhpcywgJlJlbmRlckxheWVyQ29tcG9zaXRvcjo6cGFpbnRS
ZWxhdGVkTWlsZXN0b25lc1RpbWVyRmlyZWQpCiAjaWYgIUxPR19ESVNBQkxFRAogICAgICwgbV9y
b290TGF5ZXJVcGRhdGVDb3VudCgwKQogICAgICwgbV9vYmxpZ2F0ZUNvbXBvc2l0ZWRMYXllckNv
dW50KDApCkBAIC02MzcsNyArNjM3LDcgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNj
aGVkdWxlQ29tcG9zaXRpbmdMYXllclVwZGF0ZSgpCiAgICAgICAgIG1fdXBkYXRlQ29tcG9zaXRp
bmdMYXllcnNUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CiAKLXZvaWQgUmVuZGVyTGF5ZXJDb21w
b3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVyc1RpbWVyRmlyZWQoVGltZXImKQordm9pZCBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzVGltZXJGaXJlZCgp
CiB7CiAgICAgdXBkYXRlQ29tcG9zaXRpbmdMYXllcnMoQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxh
eW91dCk7CiB9CkBAIC00MDc2LDE0ICs0MDc2LDE0IEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpzdGFydEluaXRpYWxMYXllckZsdXNoVGltZXJJZk5lZWRlZCgpCiAgICAgbV9sYXllckZs
dXNoVGltZXIuc3RhcnRPbmVTaG90KHRocm90dGxlZExheWVyRmx1c2hJbml0aWFsRGVsYXkpOwog
fQogCi12b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQoVGlt
ZXImKQordm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmxheWVyRmx1c2hUaW1lckZpcmVkKCkK
IHsKICAgICBpZiAoIW1faGFzUGVuZGluZ0xheWVyRmx1c2gpCiAgICAgICAgIHJldHVybjsKICAg
ICBzY2hlZHVsZUxheWVyRmx1c2hOb3coKTsKIH0KIAotdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0
b3I6OnBhaW50UmVsYXRlZE1pbGVzdG9uZXNUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjpwYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXJGaXJlZCgpCiB7CiAg
ICAgRnJhbWUmIGZyYW1lID0gbV9yZW5kZXJWaWV3LmZyYW1lVmlldygpLmZyYW1lKCk7CiAgICAg
UGFnZSogcGFnZSA9IGZyYW1lLnBhZ2UoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAppbmRleCBjNGEyY2ZjNTM3MjgwYmYzNzBmYzg3MWRk
Y2FjMjM5MmNiYTI2OWE0Li4wZGQ5NzcyZWRjMmYxNWQyNGJiZTZlYThkMmQ5MTA5MTYxYzBmYjgy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3Np
dG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRv
ci5oCkBAIC0zMzYsNyArMzM2LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGFkZFRvT3ZlcmxhcE1h
cChPdmVybGFwTWFwJiwgUmVuZGVyTGF5ZXImLCBJbnRSZWN0JiBsYXllckJvdW5kcywgYm9vbCYg
Ym91bmRzQ29tcHV0ZWQpOwogICAgIHZvaWQgYWRkVG9PdmVybGFwTWFwUmVjdXJzaXZlKE92ZXJs
YXBNYXAmLCBSZW5kZXJMYXllciYsIFJlbmRlckxheWVyKiBhbmNlc3RvckxheWVyID0gbnVsbHB0
cik7CiAKLSAgICB2b2lkIHVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzVGltZXJGaXJlZChUaW1lciYp
OworICAgIHZvaWQgdXBkYXRlQ29tcG9zaXRpbmdMYXllcnNUaW1lckZpcmVkKCk7CiAKICAgICAv
LyBSZXR1cm5zIHRydWUgaWYgYW55IGxheWVyJ3MgY29tcG9zaXRpbmcgY2hhbmdlZAogICAgIHZv
aWQgY29tcHV0ZUNvbXBvc2l0aW5nUmVxdWlyZW1lbnRzKFJlbmRlckxheWVyKiBhbmNlc3Rvckxh
eWVyLCBSZW5kZXJMYXllciYsIE92ZXJsYXBNYXAmLCBzdHJ1Y3QgQ29tcG9zaXRpbmdTdGF0ZSYs
IGJvb2wmIGxheWVyc0NoYW5nZWQsIGJvb2wmIGRlc2NlbmRhbnRIYXMzRFRyYW5zZm9ybSk7CkBA
IC00NTQsOSArNDU0LDkgQEAgcHJpdmF0ZToKICAgICBib29sIGlzVGhyb3R0bGluZ0xheWVyRmx1
c2hlcygpIGNvbnN0OwogICAgIHZvaWQgc3RhcnRJbml0aWFsTGF5ZXJGbHVzaFRpbWVySWZOZWVk
ZWQoKTsKICAgICB2b2lkIHN0YXJ0TGF5ZXJGbHVzaFRpbWVySWZOZWVkZWQoKTsKLSAgICB2b2lk
IGxheWVyRmx1c2hUaW1lckZpcmVkKFRpbWVyJik7CisgICAgdm9pZCBsYXllckZsdXNoVGltZXJG
aXJlZCgpOwogCi0gICAgdm9pZCBwYWludFJlbGF0ZWRNaWxlc3RvbmVzVGltZXJGaXJlZChUaW1l
ciYpOworICAgIHZvaWQgcGFpbnRSZWxhdGVkTWlsZXN0b25lc1RpbWVyRmlyZWQoKTsKIAogI2lm
ICFMT0dfRElTQUJMRUQKICAgICBjb25zdCBjaGFyKiBsb2dSZWFzb25zRm9yQ29tcG9zaXRpbmco
Y29uc3QgUmVuZGVyTGF5ZXImKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJNYXJxdWVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNYXJx
dWVlLmNwcAppbmRleCBmMWIzNjU4YzFhNjY2ODE2OTI0YWY3MDk0Y2FkOTNmZDkxNmE3ZTNiLi4y
NmUzMGU0ZDQ2NWNlNDdiYmEwYTI4YTBlYmVmOGUzYzU5ZDBlN2FhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUuY3BwCkBAIC01OSw3ICs1OSw3IEBAIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CiBSZW5kZXJNYXJxdWVlOjpSZW5kZXJNYXJxdWVlKFJlbmRlckxh
eWVyKiBsKQogICAgIDogbV9sYXllcihsKSwgbV9jdXJyZW50TG9vcCgwKQogICAgICwgbV90b3Rh
bExvb3BzKDApCi0gICAgLCBtX3RpbWVyKHRoaXMsICZSZW5kZXJNYXJxdWVlOjp0aW1lckZpcmVk
KQorICAgICwgbV90aW1lcigqdGhpcywgJlJlbmRlck1hcnF1ZWU6OnRpbWVyRmlyZWQpCiAgICAg
LCBtX3N0YXJ0KDApLCBtX2VuZCgwKSwgbV9zcGVlZCgwKSwgbV9yZXNldChmYWxzZSkKICAgICAs
IG1fc3VzcGVuZGVkKGZhbHNlKSwgbV9zdG9wcGVkKGZhbHNlKSwgbV9kaXJlY3Rpb24oTUFVVE8p
CiB7CkBAIC0yNDAsNyArMjQwLDcgQEAgdm9pZCBSZW5kZXJNYXJxdWVlOjp1cGRhdGVNYXJxdWVl
U3R5bGUoKQogICAgICAgICBtX3RpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBSZW5kZXJNYXJxdWVl
Ojp0aW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVuZGVyTWFycXVlZTo6dGltZXJGaXJlZCgpCiB7
CiAgICAgaWYgKG1fbGF5ZXItPnJlbmRlcmVyKCkudmlldygpLm5lZWRzTGF5b3V0KCkpCiAgICAg
ICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJN
YXJxdWVlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5oCmluZGV4
IGFkOWYxNmUzMzU2Y2VlYThmMGMyMWVmMGJhNzIyMGRhM2JjYmM5NDguLjU3YmI3NDUzOWE0MTBi
OWM3MDRkNDVlNGZhYzY0Y2Q1MmUyNWY2ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJNYXJxdWVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlck1hcnF1ZWUuaApAQCAtNzksNyArNzksNyBAQCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVN
YXJxdWVlUG9zaXRpb24oKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXIm
KTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsKIAogICAgIFJlbmRlckxheWVyKiBtX2xheWVyOwog
ICAgIGludCBtX2N1cnJlbnRMb29wOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcAppbmRleCBjMjVjZWJhMjUyMTkxOGVkODg0YzYxODcw
MzEwOGVkZTBmOTEyNWE1Li5mNWU4ODI1MjY3NWRlNjQzYjQwMzUzMWU0YjExNmYyMzRhZTJjZTA4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhy
ZWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhy
ZWFkLmNwcApAQCAtNTEsNyArNTEsNyBAQCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OlJlbmRlck5h
bWVkRmxvd1RocmVhZChEb2N1bWVudCYgZG9jdW1lbnQsIFBhc3NSZWY8UmVuZGVyUwogICAgICwg
bV9oYXNSZWdpb25zV2l0aFN0eWxpbmcoZmFsc2UpCiAgICAgLCBtX2Rpc3BhdGNoUmVnaW9uT3Zl
cnNldENoYW5nZUV2ZW50KGZhbHNlKQogICAgICwgbV9uYW1lZEZsb3coV1RGOjptb3ZlKG5hbWVk
RmxvdykpCi0gICAgLCBtX3JlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyKHRoaXMsICZSZW5k
ZXJOYW1lZEZsb3dUaHJlYWQ6OnJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQpCisg
ICAgLCBtX3JlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyKCp0aGlzLCAmUmVuZGVyTmFtZWRG
bG93VGhyZWFkOjpyZWdpb25PdmVyc2V0Q2hhbmdlRXZlbnRUaW1lckZpcmVkKQogewogfQogCkBA
IC01NjYsNyArNTY2LDcgQEAgdm9pZCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OmRpc3BhdGNoUmVn
aW9uT3ZlcnNldENoYW5nZUV2ZW50SWZOZWVkZWQoKQogICAgICAgICBtX3JlZ2lvbk92ZXJzZXRD
aGFuZ2VFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAotdm9pZCBSZW5kZXJOYW1lZEZs
b3dUaHJlYWQ6OnJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoVGltZXImKQordm9p
ZCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OnJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmly
ZWQoKQogewogICAgIG5hbWVkRmxvdygpLmRpc3BhdGNoUmVnaW9uT3ZlcnNldENoYW5nZUV2ZW50
KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRG
bG93VGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhy
ZWFkLmgKaW5kZXggN2RlYmZmOGE1NjYwZGQ1MjJjMzQxMjUxNzY1NjJiMDQ0ODFkZDE5Mi4uYjVm
MTY0YjY3N2E3MmE0YzBiNWUwYTIyZGI5YTc2NGVmMDUyM2Y5NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuaApAQCAtMTI0LDcgKzEyNCw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjaGVja0ludmFsaWRSZWdpb25zKCk7CiAKICAgICBib29s
IGNhbkJlRGVzdHJveWVkKCkgY29uc3QgeyByZXR1cm4gbV9pbnZhbGlkUmVnaW9uTGlzdC5pc0Vt
cHR5KCkgJiYgbV9yZWdpb25MaXN0LmlzRW1wdHkoKSAmJiBtX2NvbnRlbnRFbGVtZW50cy5pc0Vt
cHR5KCk7IH0KLSAgICB2b2lkIHJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoVGlt
ZXImKTsKKyAgICB2b2lkIHJlZ2lvbk92ZXJzZXRDaGFuZ2VFdmVudFRpbWVyRmlyZWQoKTsKICAg
ICB2b2lkIGNsZWFyQ29udGVudEVsZW1lbnRzKCk7CiAgICAgdm9pZCB1cGRhdGVXcml0aW5nTW9k
ZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUHJvZ3Jl
c3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclByb2dyZXNzLmNwcAppbmRl
eCA2ODEzNTNmZWVmNGUxNTM3NWJkNDViNmI2MWI4ZDU0NDBmMzAxMzZmLi5iMjVhYTAxZWU5NmE4
NTQ5YWE5MTViM2VlMjA1NjgwOTBlMjQ1NzI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJQcm9ncmVzcy5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgUmVuZGVyUHJvZ3Jlc3M6OlJl
bmRlclByb2dyZXNzKEhUTUxFbGVtZW50JiBlbGVtZW50LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBz
dHlsZSkKICAgICAsIG1fYW5pbWF0aW9uUmVwZWF0SW50ZXJ2YWwoMCkKICAgICAsIG1fYW5pbWF0
aW9uRHVyYXRpb24oMCkKICAgICAsIG1fYW5pbWF0aW5nKGZhbHNlKQotICAgICwgbV9hbmltYXRp
b25UaW1lcih0aGlzLCAmUmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRpbWVyRmlyZWQpCisgICAg
LCBtX2FuaW1hdGlvblRpbWVyKCp0aGlzLCAmUmVuZGVyUHJvZ3Jlc3M6OmFuaW1hdGlvblRpbWVy
RmlyZWQpCiB7CiB9CiAKQEAgLTgxLDcgKzgxLDcgQEAgYm9vbCBSZW5kZXJQcm9ncmVzczo6aXNE
ZXRlcm1pbmF0ZSgpIGNvbnN0CiAgICAgICAgICAgICAmJiBIVE1MUHJvZ3Jlc3NFbGVtZW50OjpJ
bnZhbGlkUG9zaXRpb24gIT0gcG9zaXRpb24oKSk7CiB9CiAKLXZvaWQgUmVuZGVyUHJvZ3Jlc3M6
OmFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXImKQordm9pZCBSZW5kZXJQcm9ncmVzczo6YW5pbWF0
aW9uVGltZXJGaXJlZCgpCiB7CiAgICAgcmVwYWludCgpOwogICAgIGlmICghbV9hbmltYXRpb25U
aW1lci5pc0FjdGl2ZSgpICYmIG1fYW5pbWF0aW5nKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclByb2dyZXNzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyUHJvZ3Jlc3MuaAppbmRleCAwZTNkZTAwYjZiODEwMmRjMGI5YjM0Yzc2ZThkMDY1Y2Vk
YjczODJhLi43N2NiNDRjMDMyYzI1NjAxNmYzNzIyNDg5ODJiZjljZGUwYzgxYWZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUHJvZ3Jlc3MuaApAQCAtNDcsNyArNDcsNyBAQCBw
cml2YXRlOgogICAgIHZpcnR1YWwgYm9vbCByZXF1aXJlc0ZvcmNlZFN0eWxlUmVjYWxjUHJvcGFn
YXRpb24oKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCB2b2lk
IGNvbXB1dGVMb2dpY2FsSGVpZ2h0KExheW91dFVuaXQgbG9naWNhbEhlaWdodCwgTGF5b3V0VW5p
dCBsb2dpY2FsVG9wLCBMb2dpY2FsRXh0ZW50Q29tcHV0ZWRWYWx1ZXMmKSBjb25zdCBvdmVycmlk
ZTsKIAotICAgIHZvaWQgYW5pbWF0aW9uVGltZXJGaXJlZChUaW1lciYpOworICAgIHZvaWQgYW5p
bWF0aW9uVGltZXJGaXJlZCgpOwogICAgIHZvaWQgdXBkYXRlQW5pbWF0aW9uU3RhdGUoKTsKIAog
ICAgIGRvdWJsZSBtX3Bvc2l0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcu
Y3BwCmluZGV4IDA5ZGVmNjM0MzY1OTBhNzc1MTZjZTU4MjFlMmEwNzFlN2QxZjBhMGUuLmQxZDUz
MzY3ZGZmOGYxMWMxMDgyMzU2MjM1YjZjZTRlZmVlZTk0NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVmlldy5jcHAKQEAgLTEwMiw3ICsxMDIsNyBAQCBSZW5kZXJWaWV3OjpSZW5k
ZXJWaWV3KERvY3VtZW50JiBkb2N1bWVudCwgUGFzc1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCiAg
ICAgLCBtX3NlbGVjdGlvblVuc3BsaXRFbmRQb3MoLTEpCiAgICAgLCBtX3JlbmRlcmVyQ291bnQo
MCkKICAgICAsIG1fbWF4aW1hbE91dGxpbmVTaXplKDApCi0gICAgLCBtX2xhenlSZXBhaW50VGlt
ZXIodGhpcywgJlJlbmRlclZpZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCkKKyAgICAsIG1fbGF6
eVJlcGFpbnRUaW1lcigqdGhpcywgJlJlbmRlclZpZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCkK
ICAgICAsIG1fcGFnZUxvZ2ljYWxIZWlnaHQoMCkKICAgICAsIG1fcGFnZUxvZ2ljYWxIZWlnaHRD
aGFuZ2VkKGZhbHNlKQogICAgICwgbV9sYXlvdXRTdGF0ZShudWxscHRyKQpAQCAtMTU1LDcgKzE1
NSw3IEBAIHZvaWQgUmVuZGVyVmlldzo6dW5zY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJveCYg
cmVuZGVyZXIpCiAgICAgICAgIG1fbGF6eVJlcGFpbnRUaW1lci5zdG9wKCk7CiB9CiAKLXZvaWQg
UmVuZGVyVmlldzo6bGF6eVJlcGFpbnRUaW1lckZpcmVkKFRpbWVyJikKK3ZvaWQgUmVuZGVyVmll
dzo6bGF6eVJlcGFpbnRUaW1lckZpcmVkKCkKIHsKICAgICBib29sIHNob3VsZFJlcGFpbnQgPSAh
ZG9jdW1lbnQoKS5pblBhZ2VDYWNoZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZp
ZXcuaAppbmRleCA5NjhiZjNmYWZhNWM4MGVmZjlhZjFmYzY5YzA1Mjg1NDg5ZmY0YTFmLi5lNzVj
OWU0NDc4ODhkN2MxN2FkM2RjNDFiZTg5NTVhM2RhMjI3ODA0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJWaWV3LmgKQEAgLTMzOSw3ICszMzksNyBAQCBwcml2YXRlOgogCiAgICAgYm9v
bCBzaG91bGRVc2VQcmludGluZ0xheW91dCgpIGNvbnN0OwogCi0gICAgdm9pZCBsYXp5UmVwYWlu
dFRpbWVyRmlyZWQoVGltZXImKTsKKyAgICB2b2lkIGxhenlSZXBhaW50VGltZXJGaXJlZCgpOwog
CiAgICAgVGltZXIgbV9sYXp5UmVwYWludFRpbWVyOwogICAgIEhhc2hTZXQ8UmVuZGVyQm94Kj4g
bV9yZW5kZXJlcnNOZWVkaW5nTGF6eVJlcGFpbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZXBsYXkvRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
cGxheS9FdmVudExvb3BJbnB1dERpc3BhdGNoZXIuY3BwCmluZGV4IGJkZjU4MmRmMTE5ZjEzYWI0
YzcxOTMxOGQ0Mzk1MmFhM2Q5MzNjN2MuLjhmNDM2MThhMWZkZGQxMmJlMDViMjdlOWZiNjM0ZTU4
MTYxMzc4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExvb3BJbnB1
dERpc3BhdGNoZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExvb3BJbnB1
dERpc3BhdGNoZXIuY3BwCkBAIC00OCw3ICs0OCw3IEBAIEV2ZW50TG9vcElucHV0RGlzcGF0Y2hl
cjo6RXZlbnRMb29wSW5wdXREaXNwYXRjaGVyKFBhZ2UmIHBhZ2UsIFJlcGxheWluZ0lucHV0Q3Vy
CiAgICAgOiBtX3BhZ2UocGFnZSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAgICAsIG1fY3Vy
c29yKGN1cnNvcikKLSAgICAsIG1fdGltZXIodGhpcywgJkV2ZW50TG9vcElucHV0RGlzcGF0Y2hl
cjo6dGltZXJGaXJlZCkKKyAgICAsIG1fdGltZXIoKnRoaXMsICZFdmVudExvb3BJbnB1dERpc3Bh
dGNoZXI6OnRpbWVyRmlyZWQpCiAgICAgLCBtX2Rpc3BhdGNoaW5nKGZhbHNlKQogICAgICwgbV9y
dW5uaW5nKGZhbHNlKQogICAgICwgbV9zcGVlZChEaXNwYXRjaFNwZWVkOjpGYXN0Rm9yd2FyZCkK
QEAgLTc5LDcgKzc5LDcgQEAgdm9pZCBFdmVudExvb3BJbnB1dERpc3BhdGNoZXI6OnBhdXNlKCkK
ICAgICAgICAgbV90aW1lci5zdG9wKCk7CiB9CiAKLXZvaWQgRXZlbnRMb29wSW5wdXREaXNwYXRj
aGVyOjp0aW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyOjp0
aW1lckZpcmVkKCkKIHsKICAgICBkaXNwYXRjaElucHV0KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZXBsYXkvRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9yZXBsYXkvRXZlbnRMb29wSW5wdXREaXNwYXRjaGVyLmgKaW5kZXggMmE4YTA3MGRlMTdl
NTBkZGUxMGQyZjQ5NmQ2ODliYmMzYTJiNzAzNi4uNTkzNGM0MGE5MDBmNzI1Zjg5YTRmNzZhMzlj
MmYxZTI1ODNlZTYyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L0V2ZW50TG9v
cElucHV0RGlzcGF0Y2hlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9FdmVudExvb3BJ
bnB1dERpc3BhdGNoZXIuaApAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAg
IHZvaWQgZGlzcGF0Y2hJbnB1dFNvb24oKTsKICAgICB2b2lkIGRpc3BhdGNoSW5wdXQoKTsKLSAg
ICB2b2lkIHRpbWVyRmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIHRpbWVyRmlyZWQoKTsKIAogICAg
IFBhZ2UmIG1fcGFnZTsKICAgICBFdmVudExvb3BJbnB1dERpc3BhdGNoZXJDbGllbnQqIG1fY2xp
ZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwu
Y3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuY3BwCmluZGV4IDMx
Mzk4MmQzZGIxOGRhMzlhNDUyZWEzNDkwZTYwZDhhZDdlYmRhNDQuLmJiYjZmMWFjMGMyZjRkYmEx
Yjc3ZmU0YmE4MGU5NGQ3N2NhNTI3NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0b3Jh
Z2UvU3RvcmFnZUFyZWFJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3Jh
Z2VBcmVhSW1wbC5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgaW5saW5lIFN0b3JhZ2VBcmVhSW1wbDo6
U3RvcmFnZUFyZWFJbXBsKFN0b3JhZ2VUeXBlIHN0b3JhZ2VUeXBlLCBQYXNzUmVmUHRyPFNlY3UK
ICAgICAsIG1faXNTaHV0ZG93bihmYWxzZSkKICNlbmRpZgogICAgICwgbV9hY2Nlc3NDb3VudCgw
KQotICAgICwgbV9jbG9zZURhdGFiYXNlVGltZXIodGhpcywgJlN0b3JhZ2VBcmVhSW1wbDo6Y2xv
c2VEYXRhYmFzZVRpbWVyRmlyZWQpCisgICAgLCBtX2Nsb3NlRGF0YWJhc2VUaW1lcigqdGhpcywg
JlN0b3JhZ2VBcmVhSW1wbDo6Y2xvc2VEYXRhYmFzZVRpbWVyRmlyZWQpCiB7CiAgICAgQVNTRVJU
KGlzTWFpblRocmVhZCgpKTsKICAgICBBU1NFUlQobV9zZWN1cml0eU9yaWdpbik7CkBAIC05Niw3
ICs5Niw3IEBAIFN0b3JhZ2VBcmVhSW1wbDo6U3RvcmFnZUFyZWFJbXBsKFN0b3JhZ2VBcmVhSW1w
bCogYXJlYSkKICAgICAsIG1faXNTaHV0ZG93bihhcmVhLT5tX2lzU2h1dGRvd24pCiAjZW5kaWYK
ICAgICAsIG1fYWNjZXNzQ291bnQoMCkKLSAgICAsIG1fY2xvc2VEYXRhYmFzZVRpbWVyKHRoaXMs
ICZTdG9yYWdlQXJlYUltcGw6OmNsb3NlRGF0YWJhc2VUaW1lckZpcmVkKQorICAgICwgbV9jbG9z
ZURhdGFiYXNlVGltZXIoKnRoaXMsICZTdG9yYWdlQXJlYUltcGw6OmNsb3NlRGF0YWJhc2VUaW1l
ckZpcmVkKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgQVNTRVJUKG1fc2Vj
dXJpdHlPcmlnaW4pOwpAQCAtMjc4LDcgKzI3OCw3IEBAIHZvaWQgU3RvcmFnZUFyZWFJbXBsOjpk
ZWNyZW1lbnRBY2Nlc3NDb3VudCgpCiAgICAgfQogfQogCi12b2lkIFN0b3JhZ2VBcmVhSW1wbDo6
Y2xvc2VEYXRhYmFzZVRpbWVyRmlyZWQoVGltZXIgKikKK3ZvaWQgU3RvcmFnZUFyZWFJbXBsOjpj
bG9zZURhdGFiYXNlVGltZXJGaXJlZCgpCiB7CiAgICAgYmxvY2tVbnRpbEltcG9ydENvbXBsZXRl
KCk7CiAgICAgaWYgKG1fc3RvcmFnZUFyZWFTeW5jKQpAQCAtMjkxLDcgKzI5MSw3IEBAIHZvaWQg
U3RvcmFnZUFyZWFJbXBsOjpjbG9zZURhdGFiYXNlSWZJZGxlKCkKICAgICAgICAgQVNTRVJUKCFt
X2FjY2Vzc0NvdW50KTsKICAgICAgICAgbV9jbG9zZURhdGFiYXNlVGltZXIuc3RvcCgpOwogCi0g
ICAgICAgIGNsb3NlRGF0YWJhc2VUaW1lckZpcmVkKCZtX2Nsb3NlRGF0YWJhc2VUaW1lcik7Cisg
ICAgICAgIGNsb3NlRGF0YWJhc2VUaW1lckZpcmVkKCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oIGIvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuaAppbmRleCA1NTZkNWMwZmQ2YTNjNjc5OGU0NmY4
NjE1NWYxYzg3MmZhODgzMmZkLi45MjNhNmY1MGQ4ODk0YmJkNWRkMDIxZmU5OTJlODAxZTI5YWU4
YzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmgKQEAgLTc3LDcg
Kzc3LDcgQEAgcHJpdmF0ZToKICAgICBleHBsaWNpdCBTdG9yYWdlQXJlYUltcGwoU3RvcmFnZUFy
ZWFJbXBsKik7CiAKICAgICB2b2lkIGJsb2NrVW50aWxJbXBvcnRDb21wbGV0ZSgpIGNvbnN0Owot
ICAgIHZvaWQgY2xvc2VEYXRhYmFzZVRpbWVyRmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIGNsb3Nl
RGF0YWJhc2VUaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIGRpc3BhdGNoU3RvcmFnZUV2ZW50KGNv
bnN0IFN0cmluZyYga2V5LCBjb25zdCBTdHJpbmcmIG9sZFZhbHVlLCBjb25zdCBTdHJpbmcmIG5l
d1ZhbHVlLCBGcmFtZSogc291cmNlRnJhbWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0
b3JhZ2VBcmVhU3luYy5jcHAKaW5kZXggMGJkODE3NDRjYmI1YWUwMjhlY2Y1Zjc5YzQ5OTM5MTk4
NmM3YjU0MC4uZDQ5M2UwZDIyMTU2NzE4N2IwYzE5MmIzYzc1MzY4MDhiMjEzNjc5YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYVN5bmMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZUFyZWFTeW5jLmNwcApAQCAtNTIsNyArNTIsNyBA
QCBzdGF0aWMgY29uc3QgZG91YmxlIFN0b3JhZ2VTeW5jSW50ZXJ2YWwgPSAxLjA7CiBzdGF0aWMg
Y29uc3QgaW50IE1heGl1bUl0ZW1zVG9TeW5jID0gMTAwOwogCiBpbmxpbmUgU3RvcmFnZUFyZWFT
eW5jOjpTdG9yYWdlQXJlYVN5bmMoUGFzc1JlZlB0cjxTdG9yYWdlU3luY01hbmFnZXI+IHN0b3Jh
Z2VTeW5jTWFuYWdlciwgUGFzc1JlZlB0cjxTdG9yYWdlQXJlYUltcGw+IHN0b3JhZ2VBcmVhLCBj
b25zdCBTdHJpbmcmIGRhdGFiYXNlSWRlbnRpZmllcikKLSAgICA6IG1fc3luY1RpbWVyKHRoaXMs
ICZTdG9yYWdlQXJlYVN5bmM6OnN5bmNUaW1lckZpcmVkKQorICAgIDogbV9zeW5jVGltZXIoKnRo
aXMsICZTdG9yYWdlQXJlYVN5bmM6OnN5bmNUaW1lckZpcmVkKQogICAgICwgbV9pdGVtc0NsZWFy
ZWQoZmFsc2UpCiAgICAgLCBtX2ZpbmFsU3luY1NjaGVkdWxlZChmYWxzZSkKICAgICAsIG1fc3Rv
cmFnZUFyZWEoc3RvcmFnZUFyZWEpCkBAIC0xMDgsNyArMTA4LDcgQEAgdm9pZCBTdG9yYWdlQXJl
YVN5bmM6OnNjaGVkdWxlRmluYWxTeW5jKCkKICAgICAvLyBGSVhNRTogVGhpcyBpcyBzeW5jaHJv
bm91cy4gIFdlIHNob3VsZCBkbyBpdCBvbiB0aGUgYmFja2dyb3VuZCBwcm9jZXNzLCBidXQKICAg
ICAvLyB3ZSBzaG91bGQgZG8gaXQgc2FmZWx5LgogICAgIG1fZmluYWxTeW5jU2NoZWR1bGVkID0g
dHJ1ZTsKLSAgICBzeW5jVGltZXJGaXJlZCgmbV9zeW5jVGltZXIpOworICAgIHN5bmNUaW1lckZp
cmVkKCk7CiAKICAgICBSZWZQdHI8U3RvcmFnZUFyZWFTeW5jPiBwcm90ZWN0b3IodGhpcyk7CiAg
ICAgbV9zeW5jTWFuYWdlci0+ZGlzcGF0Y2goW3Byb3RlY3Rvcl0gewpAQCAtMTY2LDcgKzE2Niw3
IEBAIHZvaWQgU3RvcmFnZUFyZWFTeW5jOjpzY2hlZHVsZUNsb3NlRGF0YWJhc2UoKQogICAgIH0K
IH0KIAotdm9pZCBTdG9yYWdlQXJlYVN5bmM6OnN5bmNUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQg
U3RvcmFnZUFyZWFTeW5jOjpzeW5jVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKIApAQCAtNTM3LDcgKzUzNyw3IEBAIHZvaWQgU3RvcmFnZUFyZWFTeW5jOjpkZWxl
dGVFbXB0eURhdGFiYXNlKCkKIAogdm9pZCBTdG9yYWdlQXJlYVN5bmM6OnNjaGVkdWxlU3luYygp
CiB7Ci0gICAgc3luY1RpbWVyRmlyZWQoJm1fc3luY1RpbWVyKTsKKyAgICBzeW5jVGltZXJGaXJl
ZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9T
dG9yYWdlQXJlYVN5bmMuaAppbmRleCA2YWU4ZmNiNjYyOGM2NWVmMjEwNGUyNTRlOWU2ODkyZTA1
MjAzZGI2Li5iNWFhNTA1ZmM3ZDg0MjJkYTJhY2IzNjQ5YzczNmQ5ZTEyYTM2YzBhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZUFyZWFTeW5jLmgKQEAgLTc5LDcgKzc5LDcgQEAgcHJp
dmF0ZToKICAgICAgIFNraXBJZk5vbkV4aXN0ZW50CiAgICAgfTsKIAotICAgIHZvaWQgc3luY1Rp
bWVyRmlyZWQoVGltZXIqKTsKKyAgICB2b2lkIHN5bmNUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBv
cGVuRGF0YWJhc2UoT3BlbkRhdGFiYXNlUGFyYW1UeXBlIG9wZW5pbmdTdHJhdGVneSk7CiAgICAg
dm9pZCBzeW5jKGJvb2wgY2xlYXJJdGVtcywgY29uc3QgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4m
IGl0ZW1zKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwCmluZGV4IGFlYTAyZWU5YmEyNTNi
NzMwNDQwM2ExMWY3NmNiMzBjZGU0OTMzMjguLjE1NzQ3NWEyYTliOTY3MDBkN2VhY2U4ZDhmOWRi
M2MzMGViZDU3YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAKQEAgLTY4Niw3ICs2ODYs
NyBAQCB2b2lkIFNWR0VsZW1lbnQ6OnNlbmRTVkdMb2FkRXZlbnRJZlBvc3NpYmxlQXN5bmNocm9u
b3VzbHkoKQogICAgIHN2Z0xvYWRFdmVudFRpbWVyKCktPnN0YXJ0T25lU2hvdCgwKTsKIH0KIAot
dm9pZCBTVkdFbGVtZW50OjpzdmdMb2FkRXZlbnRUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgU1ZH
RWxlbWVudDo6c3ZnTG9hZEV2ZW50VGltZXJGaXJlZCgpCiB7CiAgICAgc2VuZFNWR0xvYWRFdmVu
dElmUG9zc2libGUoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5oCmluZGV4IDczZjMwM2Y2N2Nk
Mzg4OTBkOTgzYmYyYmUyZDJkYjVmMzIxN2EzNGIuLjczNDI1YTFlNGNjNjY3YjQ0NGYwNDdiMThm
MzNmZWEzZTVlYTAxZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuaApAQCAtODksNyArODksNyBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIHNlbmRTVkdMb2FkRXZlbnRJZlBvc3NpYmxlKGJvb2wgc2Vu
ZFBhcmVudExvYWRFdmVudHMgPSBmYWxzZSk7CiAgICAgdm9pZCBzZW5kU1ZHTG9hZEV2ZW50SWZQ
b3NzaWJsZUFzeW5jaHJvbm91c2x5KCk7Ci0gICAgdm9pZCBzdmdMb2FkRXZlbnRUaW1lckZpcmVk
KFRpbWVyKik7CisgICAgdm9pZCBzdmdMb2FkRXZlbnRUaW1lckZpcmVkKCk7CiAgICAgdmlydHVh
bCBUaW1lciogc3ZnTG9hZEV2ZW50VGltZXIoKTsKIAogICAgIHZpcnR1YWwgQWZmaW5lVHJhbnNm
b3JtKiBzdXBwbGVtZW50YWxUcmFuc2Zvcm0oKSB7IHJldHVybiAwOyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHU2NyaXB0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggNjA5YzY3ODA1MDQ2ZDU3ZGZlYTE0MzM1Yjgy
YjcwN2Y3NzA4ODQ2MS4uYjRiM2ZiZGQ5NzRhMGQ2MGM5MmQ3NWMyNWVlNjk3OGMzYzZjMmFmZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTY3JpcHRFbGVtZW50LmNwcApAQCAtNDUsNyArNDUsNyBA
QCBFTkRfUkVHSVNURVJfQU5JTUFURURfUFJPUEVSVElFUwogaW5saW5lIFNWR1NjcmlwdEVsZW1l
bnQ6OlNWR1NjcmlwdEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1l
bnQmIGRvY3VtZW50LCBib29sIHdhc0luc2VydGVkQnlQYXJzZXIsIGJvb2wgYWxyZWFkeVN0YXJ0
ZWQpCiAgICAgOiBTVkdFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KQogICAgICwgU2NyaXB0RWxl
bWVudCgqdGhpcywgd2FzSW5zZXJ0ZWRCeVBhcnNlciwgYWxyZWFkeVN0YXJ0ZWQpCi0gICAgLCBt
X3N2Z0xvYWRFdmVudFRpbWVyKHRoaXMsICZTVkdFbGVtZW50OjpzdmdMb2FkRXZlbnRUaW1lckZp
cmVkKQorICAgICwgbV9zdmdMb2FkRXZlbnRUaW1lcigqdGhpcywgJlNWR0VsZW1lbnQ6OnN2Z0xv
YWRFdmVudFRpbWVyRmlyZWQpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05hbWUoU1ZHTmFtZXM6OnNj
cmlwdFRhZykpOwogICAgIHJlZ2lzdGVyQW5pbWF0ZWRQcm9wZXJ0aWVzRm9yU1ZHU2NyaXB0RWxl
bWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1N0eWxlRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVtZW50LmNwcAppbmRleCA0ZmM0MWQz
MzJiYWQwZjMzM2NlNGE3NzU1Y2U0ODJkMjlhMTBmY2UxLi5jYjA3NzJlN2JiN2YyZTQ1MDA5MDk4
YTE4N2RhMzYzOTVhYmExNTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5
bGVFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVtZW50LmNw
cApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBpbmxpbmUgU1ZHU3R5bGVF
bGVtZW50OjpTVkdTdHlsZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9j
dW1lbnQmIGRvY3VtZW50LCBib29sIGNyZWF0ZWRCeVBhcnNlcikKICAgICA6IFNWR0VsZW1lbnQo
dGFnTmFtZSwgZG9jdW1lbnQpCiAgICAgLCBtX3N0eWxlU2hlZXRPd25lcihkb2N1bWVudCwgY3Jl
YXRlZEJ5UGFyc2VyKQotICAgICwgbV9zdmdMb2FkRXZlbnRUaW1lcih0aGlzLCAmU1ZHRWxlbWVu
dDo6c3ZnTG9hZEV2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fc3ZnTG9hZEV2ZW50VGltZXIoKnRo
aXMsICZTVkdFbGVtZW50OjpzdmdMb2FkRXZlbnRUaW1lckZpcmVkKQogewogICAgIEFTU0VSVCho
YXNUYWdOYW1lKFNWR05hbWVzOjpzdHlsZVRhZykpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVs
ZW1lbnQuY3BwCmluZGV4IGVlZmM3NzE1NTY5MzE3ZjcyNTRkNjFlOWVmMWNjYmUxMjRiZTk0ZDAu
LjUyOTUxYmNkN2FkOWNmN2M5Y2FmZWY0OGJiMjc1MGIwYzY1ODE1ZWIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHVXNlRWxlbWVudC5jcHAKQEAgLTg4LDcgKzg4LDcgQEAgaW5saW5lIFNWR1VzZUVsZW1l
bnQ6OlNWR1VzZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQm
IGRvY3UKICAgICAsIG1fd2FzSW5zZXJ0ZWRCeVBhcnNlcih3YXNJbnNlcnRlZEJ5UGFyc2VyKQog
ICAgICwgbV9oYXZlRmlyZWRMb2FkRXZlbnQoZmFsc2UpCiAgICAgLCBtX25lZWRzU2hhZG93VHJl
ZVJlY3JlYXRpb24oZmFsc2UpCi0gICAgLCBtX3N2Z0xvYWRFdmVudFRpbWVyKHRoaXMsICZTVkdF
bGVtZW50OjpzdmdMb2FkRXZlbnRUaW1lckZpcmVkKQorICAgICwgbV9zdmdMb2FkRXZlbnRUaW1l
cigqdGhpcywgJlNWR0VsZW1lbnQ6OnN2Z0xvYWRFdmVudFRpbWVyRmlyZWQpCiB7CiAgICAgQVNT
RVJUKGhhc0N1c3RvbVN0eWxlUmVzb2x2ZUNhbGxiYWNrcygpKTsKICAgICBBU1NFUlQoaGFzVGFn
TmFtZShTVkdOYW1lczo6dXNlVGFnKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
YW5pbWF0aW9uL1NNSUxUaW1lQ29udGFpbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmlt
YXRpb24vU01JTFRpbWVDb250YWluZXIuY3BwCmluZGV4IDRjNDc2MjlkOGIyMjRlNmE1ZGI2ZjEw
MjU3MzkyNTAwYTczMzQzMjcuLjZiY2QyNWQ1MzY0ZDJjMmZiMDU0NjVlMDI1Y2ZlNjhhZGM4N2Qw
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRpbWVDb250
YWluZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRpbWVDb250
YWluZXIuY3BwCkBAIC00NCw3ICs0NCw3IEBAIFNNSUxUaW1lQ29udGFpbmVyOjpTTUlMVGltZUNv
bnRhaW5lcihTVkdTVkdFbGVtZW50KiBvd25lcikKICAgICAsIG1fcmVzdW1lVGltZSgwKQogICAg
ICwgbV9wcmVzZXRTdGFydFRpbWUoMCkKICAgICAsIG1fZG9jdW1lbnRPcmRlckluZGV4ZXNEaXJ0
eShmYWxzZSkKLSAgICAsIG1fdGltZXIodGhpcywgJlNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZp
cmVkKQorICAgICwgbV90aW1lcigqdGhpcywgJlNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZpcmVk
KQogICAgICwgbV9vd25lclNWR0VsZW1lbnQob3duZXIpCiAjaWZuZGVmIE5ERUJVRwogICAgICwg
bV9wcmV2ZW50U2NoZWR1bGVkQW5pbWF0aW9uc0NoYW5nZXMoZmFsc2UpCkBAIC0yMTMsNyArMjEz
LDcgQEAgdm9pZCBTTUlMVGltZUNvbnRhaW5lcjo6c3RhcnRUaW1lcihTTUlMVGltZSBmaXJlVGlt
ZSwgU01JTFRpbWUgbWluaW11bURlbGF5KQogICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KGRlbGF5
LnZhbHVlKCkpOwogfQogCi12b2lkIFNNSUxUaW1lQ29udGFpbmVyOjp0aW1lckZpcmVkKFRpbWVy
KikKK3ZvaWQgU01JTFRpbWVDb250YWluZXI6OnRpbWVyRmlyZWQoKQogewogICAgIEFTU0VSVCht
X2JlZ2luVGltZSk7CiAgICAgQVNTRVJUKCFtX3BhdXNlVGltZSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvYW5pbWF0aW9uL1NNSUxUaW1lQ29udGFpbmVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvYW5pbWF0aW9uL1NNSUxUaW1lQ29udGFpbmVyLmgKaW5kZXggNDBhMGZlYTY0NDY1
YWRkN2YxM2UwZWI5YWFiMDI0NGU3ZDZkMjQ5OC4uMDEyNWEyY2VlMzBkMTNmZjJhOTcxNmM4M2Vl
YmQwMjQxZWI1YjUxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL2FuaW1hdGlvbi9T
TUlMVGltZUNvbnRhaW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01J
TFRpbWVDb250YWluZXIuaApAQCAtNjcsNyArNjcsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAg
IFNNSUxUaW1lQ29udGFpbmVyKFNWR1NWR0VsZW1lbnQqIG93bmVyKTsKIAotICAgIHZvaWQgdGlt
ZXJGaXJlZChUaW1lciopOworICAgIHZvaWQgdGltZXJGaXJlZCgpOwogICAgIHZvaWQgc3RhcnRU
aW1lcihTTUlMVGltZSBmaXJlVGltZSwgU01JTFRpbWUgbWluaW11bURlbGF5ID0gMCk7CiAgICAg
dm9pZCB1cGRhdGVBbmltYXRpb25zKFNNSUxUaW1lIGVsYXBzZWQsIGJvb2wgc2Vla1RvVGltZSA9
IGZhbHNlKTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVx
dWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0
cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUuY3BwCmluZGV4IGNiMzYwMzRjNTg2NjY1Y2M2
ZWE0OTY1NzkwNTZiYTY2Y2JkZDI5Y2QuLjBmNjI0YTAwZDdmZDFkOGE3MGVkYzBiMmY4ZmYwNGRl
YTIxYTQxMTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFBy
b2dyZXNzRXZlbnRUaHJvdHRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBS
ZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBYTUxIdHRw
UmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZTo6WE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50
VGhyb3R0bGUoRXZlbnRUYQogICAgICwgbV9sb2FkZWQoMCkKICAgICAsIG1fdG90YWwoMCkKICAg
ICAsIG1fZGVmZXJFdmVudHMoZmFsc2UpCi0gICAgLCBtX2Rpc3BhdGNoRGVmZXJyZWRFdmVudHNU
aW1lcih0aGlzLCAmWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGU6OmRpc3BhdGNo
RGVmZXJyZWRFdmVudHMpCisgICAgLCBtX2Rpc3BhdGNoRGVmZXJyZWRFdmVudHNUaW1lcigqdGhp
cywgJlhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlOjpkaXNwYXRjaERlZmVycmVk
RXZlbnRzKQogewogICAgIEFTU0VSVCh0YXJnZXQpOwogfQpAQCAtMTM3LDkgKzEzNyw4IEBAIHZv
aWQgWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGU6OmZsdXNoUHJvZ3Jlc3NFdmVu
dCgpCiAgICAgZGlzcGF0Y2hFdmVudChldmVudCk7CiB9CiAKLXZvaWQgWE1MSHR0cFJlcXVlc3RQ
cm9ncmVzc0V2ZW50VGhyb3R0bGU6OmRpc3BhdGNoRGVmZXJyZWRFdmVudHMoVGltZXIqIHRpbWVy
KQordm9pZCBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZTo6ZGlzcGF0Y2hEZWZl
cnJlZEV2ZW50cygpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0gJm1fZGlz
cGF0Y2hEZWZlcnJlZEV2ZW50c1RpbWVyKTsKICAgICBBU1NFUlQobV9kZWZlckV2ZW50cyk7CiAg
ICAgbV9kZWZlckV2ZW50cyA9IGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94
bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L3htbC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5oCmluZGV4IDk5ZTk5M2E5
NWU4ZmJkNjAzNmVlNDI3YjhjMWU5ZDc1YWVjZDhhZWYuLmU2NTM0MGYxOWI1ODU2MTEwZjEwZjYz
MDBiMjQ2MGUzYzExZDE3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRw
UmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9Y
TUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5oCkBAIC02MCw3ICs2MCw3IEBAIHBy
aXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGRvdWJsZSBtaW5pbXVtUHJvZ3Jlc3NFdmVudERpc3Bh
dGNoaW5nSW50ZXJ2YWxJblNlY29uZHM7CiAKICAgICB2aXJ0dWFsIHZvaWQgZmlyZWQoKTsKLSAg
ICB2b2lkIGRpc3BhdGNoRGVmZXJyZWRFdmVudHMoVGltZXIqKTsKKyAgICB2b2lkIGRpc3BhdGNo
RGVmZXJyZWRFdmVudHMoKTsKICAgICB2b2lkIGZsdXNoUHJvZ3Jlc3NFdmVudCgpOwogICAgIHZv
aWQgZGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50Pik7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5o
IGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5j
ZVByb3h5LmgKaW5kZXggZjQ0MDRlMjU0MjljYTU0NjYyYmYxMWU3ZjZkMzIxYmIxMjNjMjYwMy4u
MGRiMjUyYmI2MWUyYzdlNzAwMmY5MDJlZGZjZGU0ODBhMTM5MWU0YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5J
bnN0YW5jZVByb3h5LmgKQEAgLTI5NSw3ICsyOTUsNyBAQCBwcml2YXRlOgogICAgIE5ldHNjYXBl
UGx1Z2luSG9zdFByb3h5KiBtX3BsdWdpbkhvc3RQcm94eTsKICAgICBXZWJIb3N0ZWROZXRzY2Fw
ZVBsdWdpblZpZXcgKm1fcGx1Z2luVmlldzsKIAotICAgIHZvaWQgcmVxdWVzdFRpbWVyRmlyZWQo
V2ViQ29yZTo6VGltZXIqKTsKKyAgICB2b2lkIHJlcXVlc3RUaW1lckZpcmVkKCk7CiAgICAgV2Vi
Q29yZTo6VGltZXIgbV9yZXF1ZXN0VGltZXI7CiAgICAgRGVxdWU8UmVmUHRyPFBsdWdpblJlcXVl
c3Q+PiBtX3BsdWdpblJlcXVlc3RzOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9t
YWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tIGIvU291cmNl
L1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1t
CmluZGV4IDIyNDU5YTYzNGI3YjExZTg2ODA2MGZjYjJmNGM2OTFlNWJkOGMwN2EuLmNhZGU5ZTFl
OWZkZjdiNmY2NDEwODVkYjQ3MDNhYjg0MzM4NTNhNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNl
UHJveHkubW0KQEAgLTIxNyw3ICsyMTcsNyBAQCBERUZJTkVfREVCVUdfT05MWV9HTE9CQUwoV1RG
OjpSZWZDb3VudGVkTGVha0NvdW50ZXIsIG5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eQogTmV0
c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5OjpOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkoTmV0
c2NhcGVQbHVnaW5Ib3N0UHJveHkqIHBsdWdpbkhvc3RQcm94eSwgV2ViSG9zdGVkTmV0c2NhcGVQ
bHVnaW5WaWV3ICpwbHVnaW5WaWV3LCBib29sIGZ1bGxGcmFtZVBsdWdpbikKICAgICA6IG1fcGx1
Z2luSG9zdFByb3h5KHBsdWdpbkhvc3RQcm94eSkKICAgICAsIG1fcGx1Z2luVmlldyhwbHVnaW5W
aWV3KQotICAgICwgbV9yZXF1ZXN0VGltZXIodGhpcywgJk5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQ
cm94eTo6cmVxdWVzdFRpbWVyRmlyZWQpCisgICAgLCBtX3JlcXVlc3RUaW1lcigqdGhpcywgJk5l
dHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6cmVxdWVzdFRpbWVyRmlyZWQpCiAgICAgLCBtX2N1
cnJlbnRVUkxSZXF1ZXN0SUQoMCkKICAgICAsIG1fcmVuZGVyQ29udGV4dElEKDApCiAgICAgLCBt
X3JlbmRlcmVyVHlwZShVc2VTb2Z0d2FyZVJlbmRlcmVyKQpAQCAtNzM1LDcgKzczNSw3IEBAIHZv
aWQgTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5OjpldmFsdWF0ZUphdmFTY3JpcHQoUGx1Z2lu
UmVxdWVzdCogcGx1Z2luUmVxdWVzCiAgICAgfQogfQogCi12b2lkIE5ldHNjYXBlUGx1Z2luSW5z
dGFuY2VQcm94eTo6cmVxdWVzdFRpbWVyRmlyZWQoVGltZXIqKQordm9pZCBOZXRzY2FwZVBsdWdp
bkluc3RhbmNlUHJveHk6OnJlcXVlc3RUaW1lckZpcmVkKCkKIHsKICAgICBBU1NFUlQoIW1fcGx1
Z2luUmVxdWVzdHMuaXNFbXB0eSgpKTsKICAgICBBU1NFUlQobV9wbHVnaW5WaWV3KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0u
aCBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0uaApp
bmRleCA3M2JlNWM0NDc2MWFhMDU3ZDgxNmNlYTk0MTZiYmViOTA3MmEwZTg2Li4yZWI5YWJmZDA2
YzFkOGI3MzgxZDhhYjhkMjMzYjJiZTYyY2E5YThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFtLmgKKysrIGIvU291cmNlL1dlYktp
dC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblN0cmVhbS5oCkBAIC0xMjMsNyArMTIzLDcg
QEAgcHJpdmF0ZToKICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlVVJMUmVxdWVzdD4gbV9yZXF1ZXN0
OwogICAgIE5QUGx1Z2luRnVuY3MgKm1fcGx1Z2luRnVuY3M7CiAKLSAgICB2b2lkIGRlbGl2ZXJE
YXRhVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopOworICAgIHZvaWQgZGVsaXZlckRhdGFUaW1l
ckZpcmVkKCk7CiAgICAgV2ViQ29yZTo6VGltZXIgbV9kZWxpdmVyRGF0YVRpbWVyOwogICAgIAog
ICAgIFdlYk5ldHNjYXBlUGx1Z2luU3RyZWFtKFdlYkNvcmU6OkZyYW1lTG9hZGVyKik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFt
Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblN0cmVhbS5t
bQppbmRleCBjNTk5ZjgwOTc0MDU0YjhiZGNiOGNjZGM1NDJhZmU5M2ExYWRiNWQxLi5mODczNDVm
OWFjMDhkMzdmNzI0MzRmZDhjZjAzZWZkY2MxMTE2NDdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFtLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0KQEAgLTEzNSw3ICsx
MzUsNyBAQCBXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6V2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0o
RnJhbWVMb2FkZXIqIGZyYW1lTG9hZGVyKQogICAgICwgbV9uZXdTdHJlYW1TdWNjZXNzZnVsKGZh
bHNlKQogICAgICwgbV9mcmFtZUxvYWRlcihmcmFtZUxvYWRlcikKICAgICAsIG1fcGx1Z2luRnVu
Y3MoMCkKLSAgICAsIG1fZGVsaXZlckRhdGFUaW1lcih0aGlzLCAmV2ViTmV0c2NhcGVQbHVnaW5T
dHJlYW06OmRlbGl2ZXJEYXRhVGltZXJGaXJlZCkKKyAgICAsIG1fZGVsaXZlckRhdGFUaW1lcigq
dGhpcywgJldlYk5ldHNjYXBlUGx1Z2luU3RyZWFtOjpkZWxpdmVyRGF0YVRpbWVyRmlyZWQpCiB7
CiAgICAgbWVtc2V0KCZtX3N0cmVhbSwgMCwgc2l6ZW9mKE5QU3RyZWFtKSk7CiB9CkBAIC0xNTUs
NyArMTU1LDcgQEAgV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06OldlYk5ldHNjYXBlUGx1Z2luU3Ry
ZWFtKE5TVVJMUmVxdWVzdCAqcmVxdWVzdCwgTlBQIHBsdWcKICAgICAsIG1fZnJhbWVMb2FkZXIo
MCkKICAgICAsIG1fcmVxdWVzdChhZG9wdE5TKFtyZXF1ZXN0IG11dGFibGVDb3B5XSkpCiAgICAg
LCBtX3BsdWdpbkZ1bmNzKDApCi0gICAgLCBtX2RlbGl2ZXJEYXRhVGltZXIodGhpcywgJldlYk5l
dHNjYXBlUGx1Z2luU3RyZWFtOjpkZWxpdmVyRGF0YVRpbWVyRmlyZWQpCisgICAgLCBtX2RlbGl2
ZXJEYXRhVGltZXIoKnRoaXMsICZXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVsaXZlckRhdGFU
aW1lckZpcmVkKQogewogICAgIG1lbXNldCgmbV9zdHJlYW0sIDAsIHNpemVvZihOUFN0cmVhbSkp
OwogCkBAIC01NTIsNyArNTUyLDcgQEAgdm9pZCBXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVs
aXZlckRhdGEoKQogICAgIH0KIH0KIAotdm9pZCBXZWJOZXRzY2FwZVBsdWdpblN0cmVhbTo6ZGVs
aXZlckRhdGFUaW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyKiB0aW1lcikKK3ZvaWQgV2ViTmV0c2Nh
cGVQbHVnaW5TdHJlYW06OmRlbGl2ZXJEYXRhVGltZXJGaXJlZCgpCiB7CiAgICAgZGVsaXZlckRh
dGEoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0Z1bGxzY3JlZW5WaWRlb0Nv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYktpdC93aW4vRnVsbHNjcmVlblZpZGVvQ29udHJvbGxl
ci5jcHAKaW5kZXggNjA2ODgxY2JjNjNmY2M2NzFlMGM0MWQzNGIzYzdlYWMyNjJlZjMyZC4uZjY2
OTFhZmI5NTVmN2U5OWRiODk1MTQ4Y2UzZDYzYmQ1ZDk4ODMzMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC93aW4vRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dl
YktpdC93aW4vRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlci5jcHAKQEAgLTU5NSw3ICs1OTUsNyBA
QCB2b2lkIEZ1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXI6Om9uS2V5RG93bihpbnQgdmlydHVhbEtl
eSkKICAgICB9CiB9CiAKLXZvaWQgRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlcjo6dGltZXJGaXJl
ZChUaW1lciopCit2b2lkIEZ1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXI6OnRpbWVyRmlyZWQoKQog
ewogICAgIC8vIFVwZGF0ZSB0aGUgdGltZSBzbGlkZXIKICAgICBtX3RpbWVTbGlkZXIuc2V0VmFs
dWUoY3VycmVudFRpbWUoKSAvIGR1cmF0aW9uKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC93aW4vRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlci5oIGIvU291cmNlL1dlYktpdC93aW4vRnVs
bHNjcmVlblZpZGVvQ29udHJvbGxlci5oCmluZGV4IGM3ZjYxZGUzYTA3ZjY3OTA1ZDEzOWUyMWE0
OTUxMDQ3NjJiZWExMzIuLmVhOGNmMjY5YTIxMzEyYzIzYzVjOTFiY2I4YzUyMzExODliOTc4MjQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0Z1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXIu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9GdWxsc2NyZWVuVmlkZW9Db250cm9sbGVyLmgKQEAg
LTEzOCw3ICsxMzgsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVySFVEV2lu
ZG93Q2xhc3MoKTsKICAgICBzdGF0aWMgTFJFU1VMVCBDQUxMQkFDSyBodWRXbmRQcm9jKEhXTkQs
IFVJTlQgbWVzc2FnZSwgV1BBUkFNLCBMUEFSQU0pOwogICAgIHZvaWQgY3JlYXRlSFVEV2luZG93
KCk7Ci0gICAgdm9pZCB0aW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyKik7CisgICAgdm9pZCB0aW1l
ckZpcmVkKCk7CiAKICAgICB2b2lkIHRvZ2dsZVBsYXkoKTsKICAgICB2b2lkIGRyYXcoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkZXIuY3BwCmluZGV4IGY2MmI5NTkwNjllMDYxNThiMWRlNTIyNWM1ZmFkYjYwNWE1M2M0ODIu
LjFiMDEzNTZjZGNkYmI3NjIwYWVhMDdlZGFiMDFmMzE5NDg4Njc4NzQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNw
cApAQCAtODgsNyArODgsNyBAQCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6Ok5ldHdvcmtSZXNvdXJj
ZUxvYWRlcihjb25zdCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycwogICAgICwgbV9kaWRD
b252ZXJ0SGFuZGxlVG9Eb3dubG9hZChmYWxzZSkKICAgICAsIG1fZGlkQ29uc3VtZVNhbmRib3hF
eHRlbnNpb25zKGZhbHNlKQogICAgICwgbV9kZWZlcnNMb2FkaW5nKHBhcmFtZXRlcnMuZGVmZXJz
TG9hZGluZykKLSAgICAsIG1fYnVmZmVyaW5nVGltZXIodGhpcywgJk5ldHdvcmtSZXNvdXJjZUxv
YWRlcjo6YnVmZmVyaW5nVGltZXJGaXJlZCkKKyAgICAsIG1fYnVmZmVyaW5nVGltZXIoKnRoaXMs
ICZOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmJ1ZmZlcmluZ1RpbWVyRmlyZWQpCiB7CiAgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICAvLyBGSVhNRTogVGhpcyBpcyBuZWNlc3Nhcnkg
YmVjYXVzZSBvZiB0aGUgZXhpc3RlbmNlIG9mIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgaW4gV2Vi
Q29yZS4KQEAgLTM5Myw3ICszOTMsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c3Rh
cnRCdWZmZXJpbmdUaW1lcklmTmVlZGVkKCkKICAgICBtX2J1ZmZlcmluZ1RpbWVyLnN0YXJ0T25l
U2hvdChtX3BhcmFtZXRlcnMubWF4aW11bUJ1ZmZlcmluZ1RpbWUpOwogfQogCi12b2lkIE5ldHdv
cmtSZXNvdXJjZUxvYWRlcjo6YnVmZmVyaW5nVGltZXJGaXJlZChUaW1lciYpCit2b2lkIE5ldHdv
cmtSZXNvdXJjZUxvYWRlcjo6YnVmZmVyaW5nVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKG1f
YnVmZmVyZWREYXRhKTsKICAgICBBU1NFUlQobV9oYW5kbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAppbmRleCA5Mjlh
OGRmYThmMTAxNDI3YzMwMjAzMzQyZmUzMmQxOGNkMjUwMTdjLi5hMjcxNmRmZTMxMGJlYzQ4MzNi
Nzk5NmRmNGQ4M2MwYzZiMWQ4MDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaApAQCAtMTQ4LDcgKzE0OCw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBwbGF0Zm9ybURpZFJlY2VpdmVSZXNwb25zZShjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJik7CiAKICAgICB2b2lkIHN0YXJ0QnVmZmVyaW5nVGltZXJJZk5l
ZWRlZCgpOwotICAgIHZvaWQgYnVmZmVyaW5nVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciYpOwor
ICAgIHZvaWQgYnVmZmVyaW5nVGltZXJGaXJlZCgpOwogICAgIHZvaWQgc2VuZEJ1ZmZlcihXZWJD
b3JlOjpTaGFyZWRCdWZmZXIqLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOwogCiAgICAgYm9vbCBp
c1N5bmNocm9ub3VzKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViTWVtb3J5U2FtcGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViTWVtb3J5U2Ft
cGxlci5jcHAKaW5kZXggOGY2NWVjZWNiZjEzMzIxOWFlMTViMTAxOGQ0NTg0ZDQ0NGUyZmMyZC4u
ODI0ODg3Nzc4ZDkxZmUxNTYyNzQ2M2IxM2JjMTY5N2ViN2Y0MjIyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJNZW1vcnlTYW1wbGVyLmNwcApAQCAtNDgsOCArNDgsOCBAQCBXZWJNZW1v
cnlTYW1wbGVyKiBXZWJNZW1vcnlTYW1wbGVyOjpzaGFyZWQoKQogfQogCiBXZWJNZW1vcnlTYW1w
bGVyOjpXZWJNZW1vcnlTYW1wbGVyKCkgCi0gICAgOiBtX3NhbXBsZVRpbWVyKHRoaXMsICZXZWJN
ZW1vcnlTYW1wbGVyOjpzYW1wbGVUaW1lckZpcmVkKQotICAgICwgbV9zdG9wVGltZXIodGhpcywg
JldlYk1lbW9yeVNhbXBsZXI6OnN0b3BUaW1lckZpcmVkKQorICAgIDogbV9zYW1wbGVUaW1lcigq
dGhpcywgJldlYk1lbW9yeVNhbXBsZXI6OnNhbXBsZVRpbWVyRmlyZWQpCisgICAgLCBtX3N0b3BU
aW1lcigqdGhpcywgJldlYk1lbW9yeVNhbXBsZXI6OnN0b3BUaW1lckZpcmVkKQogICAgICwgbV9p
c1J1bm5pbmcoZmFsc2UpCiAgICAgLCBtX3J1bm5pbmdUaW1lKDApCiB7CkBAIC0xNTQsMTMgKzE1
NCwxMyBAQCB2b2lkIFdlYk1lbW9yeVNhbXBsZXI6OndyaXRlSGVhZGVycygpCiAgICAgd3JpdGVU
b0ZpbGUobV9zYW1wbGVMb2dGaWxlLCB1dGY4U3RyaW5nLmRhdGEoKSwgdXRmOFN0cmluZy5sZW5n
dGgoKSk7CiB9CiAKLXZvaWQgV2ViTWVtb3J5U2FtcGxlcjo6c2FtcGxlVGltZXJGaXJlZChUaW1l
ciopCit2b2lkIFdlYk1lbW9yeVNhbXBsZXI6OnNhbXBsZVRpbWVyRmlyZWQoKQogewogICAgIHNl
bmRNZW1vcnlQcmVzc3VyZUV2ZW50KCk7CiAgICAgYXBwZW5kQ3VycmVudE1lbW9yeVVzYWdlVG9G
aWxlKG1fc2FtcGxlTG9nRmlsZSk7CiB9CiAKLXZvaWQgV2ViTWVtb3J5U2FtcGxlcjo6c3RvcFRp
bWVyRmlyZWQoVGltZXIqKQordm9pZCBXZWJNZW1vcnlTYW1wbGVyOjpzdG9wVGltZXJGaXJlZCgp
CiB7CiAgICAgaWYgKCFtX2lzUnVubmluZykKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuaCBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJNZW1vcnlTYW1wbGVyLmgKaW5kZXggZjBhNWUwZmQzZDZiOTFkNzk1NWM5NTc4
N2I4MDY1OWMwMTlhNTg1OS4uZWMyNDQxMDVjOGZkNTQzYTAwZDBkYTk2ZWMyYWI2NDkxOTU2Njll
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViTWVtb3J5U2FtcGxlci5oCkBAIC04NSw4ICs4
NSw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBpbml0aWFsaXplU2FuZGJveGVkTG9nRmlsZShjb25z
dCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmLCBjb25zdCBTdHJpbmcmKTsKICAgICB2b2lkIHdy
aXRlSGVhZGVycygpOwogICAgIHZvaWQgaW5pdGlhbGl6ZVRpbWVycyhkb3VibGUpOwotICAgIHZv
aWQgc2FtcGxlVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopOwotICAgIHZvaWQgc3RvcFRpbWVy
RmlyZWQoV2ViQ29yZTo6VGltZXIqKTsKKyAgICB2b2lkIHNhbXBsZVRpbWVyRmlyZWQoKTsKKyAg
ICB2b2lkIHN0b3BUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBhcHBlbmRDdXJyZW50TWVtb3J5VXNh
Z2VUb0ZpbGUoV2ViQ29yZTo6UGxhdGZvcm1GaWxlSGFuZGxlJik7CiAgICAgdm9pZCBzZW5kTWVt
b3J5UHJlc3N1cmVFdmVudCgpOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL21hYy9SZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24uaCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLmgKaW5kZXgg
NGMwMGE4ZGM2YzAyYmVhMmJhMjQ4OTBlNjdjMGNlYzlmYTNmMjFkZi4uYTgyOTQyZDNkMTA2MTk1
NzA1ZTNiYmM2MjE5OWNjOGExZWU2MmQ0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL21hYy9SZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24uaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbi5oCkBA
IC01Miw3ICs1Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHdpbGxDb21taXRMYXllclRyZWUoUmVt
b3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24mKTsKICAgICB2b2lkIGRpZEZsdXNoTGF5ZXJzKCk7CiAK
LSAgICB2b2lkIHZvbGF0aWxpdHlUaW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyJik7CisgICAgdm9p
ZCB2b2xhdGlsaXR5VGltZXJGaXJlZCgpOwogICAgIGJvb2wgbWFya0FsbEJhY2tpbmdTdG9yZVZv
bGF0aWxlSW1tZWRpYXRlbHlJZlBvc3NpYmxlKCk7CiAKICAgICB2b2lkIHNjaGVkdWxlVm9sYXRp
bGl0eVRpbWVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90
ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9t
YWMvUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLm1tCmluZGV4IGJhOTEwNjRiZThh
Y2JmNjQ2NDE2OThjZjlkY2NmZjJlZDVmNjA2NjQuLmZkY2MzMzAyNzQzY2ZhZTY1MTBmZTgyM2Zl
ZDU0YTg0ZmUyNzEyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVt
b3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9tYWMvUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xsZWN0aW9uLm1tCkBAIC0zNyw3ICsz
Nyw3IEBAIGNvbnN0IHN0ZDo6Y2hyb25vOjptaWxsaXNlY29uZHMgdm9sYXRpbGl0eVRpbWVySW50
ZXJ2YWwgPSAyMDBfbXM7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogUmVtb3RlTGF5ZXJCYWNraW5n
U3RvcmVDb2xsZWN0aW9uOjpSZW1vdGVMYXllckJhY2tpbmdTdG9yZUNvbGxlY3Rpb24oKQotICAg
IDogbV92b2xhdGlsaXR5VGltZXIodGhpcywgJlJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVj
dGlvbjo6dm9sYXRpbGl0eVRpbWVyRmlyZWQpCisgICAgOiBtX3ZvbGF0aWxpdHlUaW1lcigqdGhp
cywgJlJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6dm9sYXRpbGl0eVRpbWVyRmly
ZWQpCiAgICAgLCBtX2luTGF5ZXJGbHVzaChmYWxzZSkKIHsKIH0KQEAgLTE2Myw3ICsxNjMsNyBA
QCBib29sIFJlbW90ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6bWFya0FsbEJhY2tpbmdT
dG9yZVZvbGF0aWxlSW1tZWRpYXRlbHlJZgogICAgIHJldHVybiBzdWNjZXNzZnVsbHlNYWRlQmFj
a2luZ1N0b3JlVm9sYXRpbGU7CiB9CiAKLXZvaWQgUmVtb3RlTGF5ZXJCYWNraW5nU3RvcmVDb2xs
ZWN0aW9uOjp2b2xhdGlsaXR5VGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciYpCit2b2lkIFJlbW90
ZUxheWVyQmFja2luZ1N0b3JlQ29sbGVjdGlvbjo6dm9sYXRpbGl0eVRpbWVyRmlyZWQoKQogewog
ICAgIGJvb2wgc3VjY2Vzc2Z1bGx5TWFkZUJhY2tpbmdTdG9yZVZvbGF0aWxlID0gdHJ1ZTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCmlu
ZGV4IDcxMDBhOGY5ZTAzYmE1NDhhNjA1NWZiMzk1ZjhjOTcwYTAyYzdkY2UuLjEyOTI5OTBjOTc2
OTAzZDczZTQ1N2Q4M2QxMGMxZmQ5NGNiMjMzNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTI5Myw3ICsyOTMsNyBAQCBQbHVn
aW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVs
ZW1lbnQsIFBhc3NSZWZQdHI8UAogICAgICwgbV9ucFJ1bnRpbWVPYmplY3RNYXAodGhpcykKICNl
bmRpZgogICAgICwgbV9tYW51YWxTdHJlYW1TdGF0ZShTdHJlYW1TdGF0ZUluaXRpYWwpCi0gICAg
LCBtX3BsdWdpblNuYXBzaG90VGltZXIodGhpcywgJlBsdWdpblZpZXc6OnBsdWdpblNuYXBzaG90
VGltZXJGaXJlZCwgcGx1Z2luU25hcHNob3RUaW1lckRlbGF5KQorICAgICwgbV9wbHVnaW5TbmFw
c2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2luU25hcHNob3RUaW1lckZpcmVkLCBw
bHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCiAgICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDAp
CiAgICAgLCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24oZmFsc2UpCiAgICAgLCBtX3BhZ2VT
Y2FsZUZhY3RvcigxKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5oIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5oCmluZGV4IGEz
YWUwMjIzYmY0OTQxM2Q3Y2NmNmYzOTFhNWZlOTM2Njk3NTVkNmMuLmZjZTVjMTQ2OWQ4NmZjNWFh
ZGNkODZlMWVlY2ZkYTFjOGFlMmQ2ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9tYWMvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVyVHJlZURyYXdpbmdB
cmVhLmgKQEAgLTExMCw3ICsxMTAsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdXBkYXRlU2Nyb2xs
ZWRFeHBvc2VkUmVjdCgpOwogICAgIHZvaWQgdXBkYXRlUm9vdExheWVycygpOwogCi0gICAgdm9p
ZCBsYXllckZsdXNoVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopOworICAgIHZvaWQgbGF5ZXJG
bHVzaFRpbWVyRmlyZWQoKTsKICAgICB2b2lkIGZsdXNoTGF5ZXJzKCk7CiAKICAgICBXZWJDb3Jl
OjpUaWxlZEJhY2tpbmcqIG1haW5GcmFtZVRpbGVkQmFja2luZygpIGNvbnN0OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVE
cmF3aW5nQXJlYS5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvUmVt
b3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEubW0KaW5kZXggYWNjMmVmNGUwYzNlMjU1ZDU4MmNmYjcx
YTYxMDQyNDI3MDBjYzVjZC4uOTcwMzI2NmMzZjMzZTZkN2MwODA1YTNjM2YxZDhkOTVjYmY1NGFl
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1v
dGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLm1tCkBAIC01OCw3ICs1OCw3
IEBAIFJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjpSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJl
YShXZWJQYWdlJiB3ZWJQYWdlLCBjb25zdCBXCiAgICAgLCBtX3Jvb3RMYXllcihHcmFwaGljc0xh
eWVyOjpjcmVhdGUoZ3JhcGhpY3NMYXllckZhY3RvcnkoKSwgKnRoaXMpKQogICAgICwgbV9leHBv
c2VkUmVjdChGbG9hdFJlY3Q6OmluZmluaXRlUmVjdCgpKQogICAgICwgbV9zY3JvbGxlZEV4cG9z
ZWRSZWN0KEZsb2F0UmVjdDo6aW5maW5pdGVSZWN0KCkpCi0gICAgLCBtX2xheWVyRmx1c2hUaW1l
cih0aGlzLCAmUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmxheWVyRmx1c2hUaW1lckZpcmVk
KQorICAgICwgbV9sYXllckZsdXNoVGltZXIoKnRoaXMsICZSZW1vdGVMYXllclRyZWVEcmF3aW5n
QXJlYTo6bGF5ZXJGbHVzaFRpbWVyRmlyZWQpCiAgICAgLCBtX2lzRmx1c2hpbmdTdXNwZW5kZWQo
ZmFsc2UpCiAgICAgLCBtX2hhc0RlZmVycmVkRmx1c2goZmFsc2UpCiAgICAgLCBtX2lzVGhyb3R0
bGluZ0xheWVyRmx1c2hlcyhmYWxzZSkKQEAgLTMxMyw3ICszMTMsNyBAQCBib29sIFJlbW90ZUxh
eWVyVHJlZURyYXdpbmdBcmVhOjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3JlOjpM
YXllckZsdXNoVAogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFJlbW90ZUxheWVyVHJlZURy
YXdpbmdBcmVhOjpsYXllckZsdXNoVGltZXJGaXJlZChXZWJDb3JlOjpUaW1lciopCit2b2lkIFJl
bW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjpsYXllckZsdXNoVGltZXJGaXJlZCgpCiB7CiAgICAg
Zmx1c2hMYXllcnMoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3Bw
CmluZGV4IDIwZTYzOTM3Y2M1NWYyYzFhZmViNDYzNzZiNDNhZmQ3MDhjZDViZTcuLmQwNGMzNjg4
NTNjY2M3NTM3ZDhkZTQxZDEwZjFjYTkyNjNjZjk1ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIFdlYlByb2Nlc3M6OldlYlBy
b2Nlc3MoKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdmlld1VwZGF0ZURpc3BhdGNoZXIo
Vmlld1VwZGF0ZURpc3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBtX3Byb2Nlc3NT
dXNwZW5zaW9uQ2xlYW51cFRpbWVyKHRoaXMsICZXZWJQcm9jZXNzOjpwcm9jZXNzU3VzcGVuc2lv
bkNsZWFudXBUaW1lckZpcmVkKQorICAgICwgbV9wcm9jZXNzU3VzcGVuc2lvbkNsZWFudXBUaW1l
cigqdGhpcywgJldlYlByb2Nlc3M6OnByb2Nlc3NTdXNwZW5zaW9uQ2xlYW51cFRpbWVyRmlyZWQp
CiAgICAgLCBtX2luRGlkQ2xvc2UoZmFsc2UpCiAgICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFs
c2UpCiAgICAgLCBtX2NhY2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyKQpAQCAtMTc5
LDcgKzE3OSw3IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogICAgICwgbV9oYXNTZWxlY3Rp
b25TZXJ2aWNlcyhmYWxzZSkKICAgICAsIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyhmYWxzZSkK
ICNlbmRpZgotICAgICwgbV9ub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lcih0aGlzLCAmV2Vi
UHJvY2Vzczo6bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCkKKyAgICAsIG1fbm9u
VmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXIoKnRoaXMsICZXZWJQcm9jZXNzOjpub25WaXNpYmxl
UHJvY2Vzc0NsZWFudXBUaW1lckZpcmVkKQogICAgICwgbV93ZWJPcmlnaW5EYXRhTWFuYWdlcihz
dGQ6Om1ha2VfdW5pcXVlPFdlYk9yaWdpbkRhdGFNYW5hZ2VyPigqdGhpcywgKnRoaXMpKQogewog
ICAgIC8vIEluaXRpYWxpemUgb3VyIHBsYXRmb3JtIHN0cmF0ZWdpZXMuCkBAIC0xMTk3LDExICsx
MTk3LDEwIEBAIGJvb2wgV2ViUHJvY2Vzczo6bWFya0FsbExheWVyc1ZvbGF0aWxlSWZQb3NzaWJs
ZSgpCiAgICAgcmV0dXJuIHN1Y2Nlc3NmdWxseU1hcmtlZEFsbExheWVyc1ZvbGF0aWxlOwogfQog
Ci12b2lkIFdlYlByb2Nlc3M6OnByb2Nlc3NTdXNwZW5zaW9uQ2xlYW51cFRpbWVyRmlyZWQoVGlt
ZXIqIHRpbWVyKQordm9pZCBXZWJQcm9jZXNzOjpwcm9jZXNzU3VzcGVuc2lvbkNsZWFudXBUaW1l
ckZpcmVkKCkKIHsKICAgICBpZiAobWFya0FsbExheWVyc1ZvbGF0aWxlSWZQb3NzaWJsZSgpKSB7
CiAgICAgICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBy
b2Nlc3NQcm94eTo6UHJvY2Vzc1JlYWR5VG9TdXNwZW5kKCksIDApOwotICAgICAgICB0aW1lci0+
c3RvcCgpOwogICAgIH0KIH0KIApAQCAtMTIxOSw3ICsxMjE4LDcgQEAgdm9pZCBXZWJQcm9jZXNz
OjpwYWdlV2lsbExlYXZlV2luZG93KHVpbnQ2NF90IHBhZ2VJRCkKICAgICAgICAgbV9ub25WaXNp
YmxlUHJvY2Vzc0NsZWFudXBUaW1lci5zdGFydE9uZVNob3Qobm9uVmlzaWJsZVByb2Nlc3NDbGVh
bnVwRGVsYXkpOwogfQogICAgIAotdm9pZCBXZWJQcm9jZXNzOjpub25WaXNpYmxlUHJvY2Vzc0Ns
ZWFudXBUaW1lckZpcmVkKFRpbWVyKikKK3ZvaWQgV2ViUHJvY2Vzczo6bm9uVmlzaWJsZVByb2Nl
c3NDbGVhbnVwVGltZXJGaXJlZCgpCiB7CiAgICAgQVNTRVJUKG1fcGFnZXNJbldpbmRvd3MuaXNF
bXB0eSgpKTsKICAgICBpZiAoIW1fcGFnZXNJbldpbmRvd3MuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCBmOTI3N2EwODk0ZmU2NWE2OGI4N2RkYmI5
YjMyNTg1Y2RjMDY2YjJmLi40ZGY5Njg3ZWY5Yzk2ODI0ZDU4ZDQ2NmE5Y2EzMzBhY2FiZWJiODcx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAtMTczLDcgKzE3Myw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHBhZ2VEaWRFbnRlcldpbmRvdyh1aW50NjRfdCBwYWdlSUQp
OwogICAgIHZvaWQgcGFnZVdpbGxMZWF2ZVdpbmRvdyh1aW50NjRfdCBwYWdlSUQpOwogCi0gICAg
dm9pZCBub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lckZpcmVkKFdlYkNvcmU6OlRpbWVyKik7
CisgICAgdm9pZCBub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lckZpcmVkKCk7CiAKICAgICB2
b2lkIHVwZGF0ZUFjdGl2ZVBhZ2VzKCk7CiAKQEAgLTE4NCw3ICsxODQsNyBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBwcm9jZXNzV2lsbFN1c3BlbmQoKTsKICAgICB2b2lkIGNhbmNlbFByb2Nlc3NXaWxs
U3VzcGVuZCgpOwogICAgIGJvb2wgbWFya0FsbExheWVyc1ZvbGF0aWxlSWZQb3NzaWJsZSgpOwot
ICAgIHZvaWQgcHJvY2Vzc1N1c3BlbnNpb25DbGVhbnVwVGltZXJGaXJlZChXZWJDb3JlOjpUaW1l
ciopOworICAgIHZvaWQgcHJvY2Vzc1N1c3BlbnNpb25DbGVhbnVwVGltZXJGaXJlZCgpOwogCiAj
aWYgUExBVEZPUk0oSU9TKQogICAgIHZvaWQgcmVzZXRBbGxHZW9sb2NhdGlvblBlcm1pc3Npb25z
KCk7Cg==
</data>
<flag name="review"
          id="266939"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>