<?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>36122</bug_id>
          
          <creation_ts>2010-03-15 09:13:30 -0700</creation_ts>
          <short_desc>Web Inspector: Timeline improvements next iteration</short_desc>
          <delta_ts>2010-03-17 07:09:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Ilya Tikhonovsky">loislo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>knorton</cc>
    
    <cc>pfeldman</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>199684</commentid>
    <comment_count>0</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-03-15 09:13:30 -0700</bug_when>
    <thetext>Top level records should be collapsed.
Virtually linked events should be nested in Timeline like Send Request and corresponding Received Responce, Timer Install and Timer Fire etc.
It should be possible to see Main Resource request.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199704</commentid>
    <comment_count>1</comment_count>
      <attachid>50716</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-03-15 09:55:29 -0700</bug_when>
    <thetext>Created attachment 50716
Screenshot</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200057</commentid>
    <comment_count>2</comment_count>
      <attachid>50774</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-03-16 01:00:49 -0700</bug_when>
    <thetext>Created attachment 50774
[Patch]: Initial version of patch.

The patch with Timeline improvements
1) Timer Fire events are connecting to Timer Install events;
2) Receive Response and Finish loading events are connecting to Send Request events;
3) The Receive Response event grab point is moved to ResourceLoader and as result can have nested events like Parse etc;
4) Top Level events are in collapsed state by default;
5) The events can be glued at any level of event hierarchy;
6) new semitransparent bar was added for connected events. As example if timer install event got 10 ms and have timeout 100ms then timer install event will have solid bar for 10ms and semitransparent for 100ms + Timer Fire event length. The same for Send Request and Receive Response etc;
7) Tests were fixed;
8) Timeline panel will not be cleared at page reload. That will allow us to see Send Request for main resource and Event(unload);
9) But with zero based Timer timeout was fixed for Timer Install details popup;
10) Some other properties of Send Request event were added to Details popup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200088</commentid>
    <comment_count>3</comment_count>
      <attachid>50774</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-16 03:05:51 -0700</bug_when>
    <thetext>Comment on attachment 50774
[Patch]: Initial version of patch.

&gt;          if (sendRequestRecord) { // False if we started instrumentation in the middle of request.
&gt;              sendRequestRecord._responseReceivedFormattedTime = this.startTime;
&gt;              record.data.url = sendRequestRecord.data.url;
&gt; -            this.startTime = sendRequestRecord.startTime;
&gt;              this.details = this._getRecordDetails(sendRequestRecord, sendRequestRecords);
&gt;              this.callerScriptName = sendRequestRecord.callerScriptName;
&gt;              this.callerScriptLine = sendRequestRecord.callerScriptLine;
&gt; @@ -647,7 +703,6 @@ WebInspector.TimelinePanel.FormattedRecord = function(record, recordStyles, send
&gt;          var sendRequestRecord = sendRequestRecords[record.data.identifier];
&gt;          if (sendRequestRecord) {// False for main resource.
&gt;              record.data.url = sendRequestRecord.data.url;
&gt; -            this.startTime = sendRequestRecord._responseReceivedFormattedTime;
&gt;              this.callerScriptName = sendRequestRecord.callerScriptName;
&gt;              this.callerScriptLine = sendRequestRecord.callerScriptLine;
&gt;          }

We could get rid of these as a whole.

&gt; +                    recordContentTable.appendChild(this._createRow(WebInspector.UIString(&quot;Is Main Resource&quot;), this.data.isMainResource));
&gt; +                if (typeof this.data.statusCode === &quot;number&quot;)

Not sure we need this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200150</commentid>
    <comment_count>4</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2010-03-16 05:58:08 -0700</bug_when>
    <thetext>(In reply to comment #2)

&gt; 1) Timer Fire events are connecting to Timer Install events;
&gt; 2) Receive Response and Finish loading events are connecting to Send Request
&gt; events;

I&apos;m not sure this makes sense. I would expect a Timer container that has two children &quot;Timer Install&quot; and &quot;Timer Fire&quot;. Similar for Resource loading.

&gt; 6) new semitransparent bar was added for connected events. As example if timer
&gt; install event got 10 ms and have timeout 100ms then timer install event will
&gt; have solid bar for 10ms and semitransparent for 100ms + Timer Fire event
&gt; length. The same for Send Request and Receive Response etc;

I don&apos;t think this makes sense either. I don&apos;t expect a bar to stretch the whole way. Code hasn&apos;t been running that entire time. I only expect to see bars where code actually was running. SO I would expect two bar segments seperated by empty space on one row for the collapsed container. Expending it would show the seperate peices as different rows.

&gt; 8) Timeline panel will not be cleared at page reload. That will allow us to see
&gt; Send Request for main resource and Event(unload);

When and how is the panel cleared now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200193</commentid>
    <comment_count>5</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-03-16 08:16:47 -0700</bug_when>
    <thetext>&gt; &gt; 1) Timer Fire events are connecting to Timer Install events;
&gt; &gt; 2) Receive Response and Finish loading events are connecting to Send Request events;

&gt; I&apos;m not sure this makes sense. I would expect a Timer container that has two
&gt; children &quot;Timer Install&quot; and &quot;Timer Fire&quot;. Similar for Resource loading.

It is not clear for me why we need some additional element as a container for Timer Install and Timer fire events.
Right now there is clear cause and effect relationship between Timer Install and Timer Fire/Timer Remove events.

Some sites use nonrepeatable timers reinstalled each time at Timer Fire event and in that case 
we will have a third more records in the Timeline for the same amount of information.

&gt; &gt; 6) new semitransparent bar was added for connected events. As example if timer
&gt; &gt; install event got 10 ms and have timeout 100ms then timer install event will
&gt; &gt; have solid bar for 10ms and semitransparent for 100ms + Timer Fire event
&gt; &gt; length. The same for Send Request and Receive Response etc;
&gt; 
&gt; I don&apos;t think this makes sense either. I don&apos;t expect a bar to stretch the
&gt; whole way. Code hasn&apos;t been running that entire time. I only expect to see bars
&gt; where code actually was running. SO I would expect two bar segments seperated
&gt; by empty space on one row for the collapsed container. Expending it would show
&gt; the seperate peices as different rows.

We can have two bars on the same row but I think we need something for linking these bars together.
In the other case it will be not clear for users if the second bar is filtered out by Timeline Overview.
I think we can use some gray semitransparent background bar for that.

The last idea about second bar was to have aggregated information about all the children events.
Like: &lt;RecordTime in ms&gt;--gray bar b.g.--&lt;% of loading|% of rendering|% of scripting&gt;---gray bar b.g.-------&gt;

&gt; 
&gt; &gt; 8) Timeline panel will not be cleared at page reload. That will allow us to see
&gt; &gt; Send Request for main resource and Event(unload);
&gt; 
&gt; When and how is the panel cleared now?

Only by Clear button.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200720</commentid>
    <comment_count>6</comment_count>
      <attachid>50898</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-03-17 06:25:19 -0700</bug_when>
    <thetext>Created attachment 50898
[Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200726</commentid>
    <comment_count>7</comment_count>
      <attachid>50899</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-03-17 06:36:12 -0700</bug_when>
    <thetext>Created attachment 50899
[Patch] second revision.

The patch with Timeline improvements
0) rebaselined;
1) _topLevelRecord was renamed to _rootRecord;
2) willResourceReceiveData didResourceReceiveData was added for better grouping of inner events;
3) the size of parent bars is adjusted a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200727</commentid>
    <comment_count>8</comment_count>
      <attachid>50899</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-17 06:40:40 -0700</bug_when>
    <thetext>Comment on attachment 50899
[Patch] second revision.

&gt; +
&gt; +    reset: function()
&gt; +    {
&gt; +    },
&gt; +

Why adding this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200728</commentid>
    <comment_count>9</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-17 06:41:20 -0700</bug_when>
    <thetext>[+knorton] FYI: This is likely to break speed tracer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200752</commentid>
    <comment_count>10</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-17 07:09:05 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	LayoutTests/ChangeLog
	M	LayoutTests/inspector/timeline-enum-stability-expected.txt
	M	LayoutTests/inspector/timeline-network-resource-expected.txt
	M	LayoutTests/inspector/timeline-test.js
	M	WebCore/ChangeLog
	M	WebCore/inspector/InspectorController.cpp
	M	WebCore/inspector/InspectorTimelineAgent.cpp
	M	WebCore/inspector/InspectorTimelineAgent.h
	M	WebCore/inspector/TimelineRecordFactory.cpp
	M	WebCore/inspector/TimelineRecordFactory.h
	M	WebCore/inspector/front-end/TimelineAgent.js
	M	WebCore/inspector/front-end/TimelinePanel.js
	M	WebCore/inspector/front-end/inspector.css
	M	WebCore/loader/ResourceLoader.cpp
Committed r56108</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>50716</attachid>
            <date>2010-03-15 09:55:29 -0700</date>
            <delta_ts>2010-03-15 09:55:29 -0700</delta_ts>
            <desc>Screenshot</desc>
            <filename>CollapsedTopLevelEvents.png</filename>
            <type>image/png</type>
            <size>116330</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">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
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50774</attachid>
            <date>2010-03-16 01:00:49 -0700</date>
            <delta_ts>2010-03-17 06:36:12 -0700</delta_ts>
            <desc>[Patch]: Initial version of patch.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>28031</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0NzczYWYyLi5hYzkxODdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDMt
MTYgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYkluc3BlY3RvcjogVGltZWxp
bmUgaW1wcm92ZW1lbnRzIC0gbmV4dCBpdGVyYXRpb24uCisgICAgICAgIFRoZSB0b3AgbGV2ZWwg
cmVjb3JkcyBzaG91bGQgYmUgY29sbGFwc2VkLgorICAgICAgICBWaXJ0dWFsbHkgbGlua2VkIGV2
ZW50cyBzaG91bGQgYmUgbmVzdGVkIGluIFRpbWVsaW5lIGxpa2UgU2VuZCBSZXF1ZXN0IGFuZAor
ICAgICAgICBjb3JyZXNwb25kaW5nIFJlY2VpdmVkIFJlc3BvbmNlLCBUaW1lciBJbnN0YWxsIGFu
ZCBUaW1lciBGaXJlIGV0Yy4KKyAgICAgICAgSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNlZSBN
YWluIFJlc291cmNlIHJlcXVlc3QuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM2MTIyCisKKyAgICAgICAgKiBpbnNwZWN0b3IvdGltZWxpbmUtbmV0
d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL3RpbWVsaW5l
LXRlc3QuanM6CisgICAgICAgIChmcm9udGVuZF9nZXRUaW1lbGluZVJlc3VsdHMpOgorCiAyMDEw
LTAzLTE1ICBQYXRyaWsgUGVyc3NvbiAgPHBhdHJpay5qLnBlcnNzb25AZXJpY3Nzb24uY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL3RpbWVsaW5lLW5ldHdvcmstcmVzb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lLW5ldHdvcmstcmVzb3VyY2UtZXhwZWN0ZWQudHh0
CmluZGV4IGEzZjczYzAuLmNmYmExYTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rv
ci90aW1lbGluZS1uZXR3b3JrLXJlc291cmNlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvdGltZWxpbmUtbmV0d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQKQEAgLTIw
LDYgKzIwLDggQEAgUmVzb3VyY2VSZWNlaXZlUmVzcG9uc2UgUHJvcGVydGllczoKICstIGV4cGVj
dGVkQ29udGVudExlbmd0aCA6IDIxMAogKy0gdXJsIDogKiBERUZJTkVEICoKICsgfQorKyBjaGls
ZHJlbiA6ICogREVGSU5FRCAqCisrIGVuZFRpbWUgOiAqIERFRklORUQgKgogKyB0eXBlIDogMTMK
IAogUmVzb3VyY2VGaW5pc2ggUHJvcGVydGllczoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci90aW1lbGluZS10ZXN0LmpzIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5l
LXRlc3QuanMKaW5kZXggYjAyMjUyNC4uOTI0OGE1MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL3RpbWVsaW5lLXRlc3QuanMKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3Rp
bWVsaW5lLXRlc3QuanMKQEAgLTEzNiw2ICsxMzYsNiBAQCBmdW5jdGlvbiBmcm9udGVuZF9nZXRU
aW1lbGluZVJlc3VsdHMoKSB7CiAgICAgICAgICAgICBhZGRSZWNvcmRzKHJlY29yZHNbaV0uY2hp
bGRyZW4pOwogICAgICAgICB9CiAgICAgfQotICAgIGFkZFJlY29yZHMoV2ViSW5zcGVjdG9yLnBh
bmVscy50aW1lbGluZS5fcmVjb3Jkcyk7CisgICAgYWRkUmVjb3JkcyhXZWJJbnNwZWN0b3IucGFu
ZWxzLnRpbWVsaW5lLl90b3BMZXZlbFJlY29yZC5jaGlsZHJlbik7CiAgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggYzFiM2Y2MC4uMjgxMzUyYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAxMC0wMy0xNiBJbHlhIFRp
a2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJJbnNwZWN0b3I6IFRpbWVsaW5lIGltcHJvdmVt
ZW50cyAtIG5leHQgaXRlcmF0aW9uLgorICAgICAgICBUaGUgdG9wIGxldmVsIHJlY29yZHMgc2hv
dWxkIGJlIGNvbGxhcHNlZC4KKyAgICAgICAgVmlydHVhbGx5IGxpbmtlZCBldmVudHMgc2hvdWxk
IGJlIG5lc3RlZCBpbiBUaW1lbGluZSBsaWtlIFNlbmQgUmVxdWVzdCBhbmQKKyAgICAgICAgY29y
cmVzcG9uZGluZyBSZWNlaXZlZCBSZXNwb25jZSwgVGltZXIgSW5zdGFsbCBhbmQgVGltZXIgRmly
ZSBldGMuCisgICAgICAgIEl0IHNob3VsZCBiZSBwb3NzaWJsZSB0byBzZWUgTWFpbiBSZXNvdXJj
ZSByZXF1ZXN0LgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0zNjEyMgorCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6cmVzZXRTY3JpcHRPYmpl
Y3RzKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmRpZFJlY2VpdmVS
ZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6d2lsbFJlY2VpdmVS
ZXNvdXJjZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclRpbWVsaW5lQWdl
bnQ6OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5z
cGVjdG9yVGltZWxpbmVBZ2VudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGlt
ZWxpbmVQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZS5fY3JlYXRlU3RhdHVz
YmFyQnV0dG9ucyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5
cGUuYWRkUmVjb3JkVG9UaW1lbGluZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQ
YW5lbC5wcm90b3R5cGUuX2ZpbmRQYXJlbnRSZWNvcmQpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLnJlc2l6ZSk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX2NyZWF0ZVRvcExldmVs
UmVjb3JkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZS5y
ZXNldCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX2Ns
ZWFuKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZS5fcmVm
cmVzaCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX3Jl
ZnJlc2hSZWNvcmRzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3Rv
dHlwZS5fYWRkVG9SZWNvcmRzV2luZG93KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGlu
ZUNhbGN1bGF0b3IucHJvdG90eXBlLmNvbXB1dGVCYXJHcmFwaFBlcmNlbnRhZ2VzKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3IucHJvdG90eXBlLnVwZGF0ZUJvdW5k
YXJpZXMpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cucHJvdG90eXBlLnVw
ZGF0ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNv
cmQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3Jk
LnByb3RvdHlwZS5nZXQgY2hpbGRyZW4pOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5l
UGFuZWwuRm9ybWF0dGVkUmVjb3JkLnByb3RvdHlwZS5fZ2VuZXJhdGVQb3B1cENvbnRlbnQpOgor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzczoKKyAgICAgICAgKiBs
b2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisKIDIwMTAtMDMtMTUgIFBhdHJpayBQZXJzc29uICA8
cGF0cmlrLmoucGVyc3NvbkBlcmljc3Nvbi5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFy
aW4gQWRsZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3Ry
aW5ncy5qcyBiL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4
IDczNTViMzc0NjI4YzI5MjNjMzY1YTQ4NDhmMGZkMTU3M2UzNWM5OWYuLmJiMmVjZWU5ZjdmNmJh
YWJlMTcwYmJkNWIyMmY2NTZkZGM2MWVhNjkgMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVsdGEg
MjMxCnpjbWV3fGdLNVFGclZTLU1sTy02e0NPNm95T3dLRmluUzNnWlp9TnQ7MERlen5WZz5+VVV4
cX02T29sdUxnfl5TIQp6IWpxLUV4dis+XlBmQVp4X1hSNDtXaz5+VDMxTyZZQzsrbVE3LUU0dVRP
ZHtmOFV2TWBFWj1PTD1nTHE0Uip9cTUKajAjdWcqUk4+NSE1M35mdDFDYV8wSzQ0WmxrZXp7STR5
aWg9OE1xaCN5VDM3MQoKZGVsdGEgOQpRY21aMjZtKzh3NHJWUy1NMDJkPCFoNSFIbgoKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKaW5kZXggYjJjYTNhOC4uMzhmYmM0
NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAK
KysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKQEAgLTc2Nyw5
ICs3NjcsNiBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OnJlc2V0U2NyaXB0T2JqZWN0cygp
CiAjaWYgRU5BQkxFKFdPUktFUlMpCiAgICAgbV93b3JrZXJzLmNsZWFyKCk7CiAjZW5kaWYKLSAg
ICBpZiAobV90aW1lbGluZUFnZW50KQotICAgICAgICBtX3RpbWVsaW5lQWdlbnQtPnJlc2V0KCk7
Ci0KICAgICBtX2Zyb250ZW5kLT5yZXNldCgpOwogICAgIG1fZG9tQWdlbnQtPnJlc2V0KCk7CiB9
CkBAIC0xMDM5LDkgKzEwMzYsNiBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OndpbGxTZW5k
UmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cgogCiB2b2lkIElu
c3BlY3RvckNvbnRyb2xsZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAgIGlmIChtX3Rp
bWVsaW5lQWdlbnQpCi0gICAgICAgIG1fdGltZWxpbmVBZ2VudC0+ZGlkUmVjZWl2ZVJlc291cmNl
UmVzcG9uc2UoaWRlbnRpZmllciwgcmVzcG9uc2UpOwotCiAgICAgUmVmUHRyPEluc3BlY3RvclJl
c291cmNlPiByZXNvdXJjZSA9IGdldFRyYWNrZWRSZXNvdXJjZShpZGVudGlmaWVyKTsKICAgICBp
ZiAoIXJlc291cmNlKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvclRpbWVsaW5lQWdlbnQuY3BwCmluZGV4IDA2MjRjODcuLjBiNjI3YjcgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCisrKyBiL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCkBAIC0xODcsMTIgKzE4Nywx
NCBAQCB2b2lkIEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6OndpbGxTZW5kUmVzb3VyY2VSZXF1ZXN0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgYgogICAgIG1fZnJvbnRlbmQtPmFkZFJlY29yZFRv
VGltZWxpbmUocmVjb3JkKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRS
ZWNlaXZlUmVzb3VyY2VSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50Ojp3
aWxsUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKLSAgICBTY3JpcHRPYmplY3QgcmVjb3Jk
ID0gVGltZWxpbmVSZWNvcmRGYWN0b3J5OjpjcmVhdGVHZW5lcmljUmVjb3JkKG1fZnJvbnRlbmQs
IGN1cnJlbnRUaW1lSW5NaWxsaXNlY29uZHMoKSk7Ci0gICAgcmVjb3JkLnNldCgiZGF0YSIsIFRp
bWVsaW5lUmVjb3JkRmFjdG9yeTo6Y3JlYXRlUmVzb3VyY2VSZWNlaXZlUmVzcG9uc2VEYXRhKG1f
ZnJvbnRlbmQsIGlkZW50aWZpZXIsIHJlc3BvbnNlKSk7Ci0gICAgcmVjb3JkLnNldCgidHlwZSIs
IFJlc291cmNlUmVjZWl2ZVJlc3BvbnNlVGltZWxpbmVSZWNvcmRUeXBlKTsKLSAgICBtX2Zyb250
ZW5kLT5hZGRSZWNvcmRUb1RpbWVsaW5lKHJlY29yZCk7CisgICAgcHVzaEN1cnJlbnRSZWNvcmQo
VGltZWxpbmVSZWNvcmRGYWN0b3J5OjpjcmVhdGVSZXNvdXJjZVJlY2VpdmVSZXNwb25zZURhdGEo
bV9mcm9udGVuZCwgaWRlbnRpZmllciwgcmVzcG9uc2UpLCBSZXNvdXJjZVJlY2VpdmVSZXNwb25z
ZVRpbWVsaW5lUmVjb3JkVHlwZSk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6
ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoKQoreworICAgIGRpZENvbXBsZXRlQ3VycmVudFJl
Y29yZChSZXNvdXJjZVJlY2VpdmVSZXNwb25zZVRpbWVsaW5lUmVjb3JkVHlwZSk7CiB9CiAKIHZv
aWQgSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6ZGlkRmluaXNoTG9hZGluZ1Jlc291cmNlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgYm9vbCBkaWRGYWlsKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yVGltZWxpbmVBZ2VudC5oCmluZGV4IDdmNjY0NmMuLmZjYTc5OTggMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaAorKysgYi9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmgKQEAgLTEwOSw3ICsxMDksOCBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgZGlkTWFya1RpbWVsaW5lKGNvbnN0IFN0
cmluZyYpOwogCiAgICAgICAgIHZvaWQgd2lsbFNlbmRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQg
bG9uZywgYm9vbCBpc01haW5SZXNvdXJjZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAg
ICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpOworICAgICAgICB2b2lkIHdpbGxSZWNlaXZlUmVzb3VyY2VSZXNw
b25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgICAgIHZv
aWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoKTsKICAgICAgICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nUmVzb3VyY2UodW5zaWduZWQgbG9uZywgYm9vbCBkaWRGYWlsKTsKIAogICAgICAgICBz
dGF0aWMgaW50IGluc3RhbmNlQ291bnQoKSB7IHJldHVybiBzX2luc3RhbmNlQ291bnQ7IH0KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzIGIv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKaW5kZXggZGRkZGJk
NS4uMGZhYmMxNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVs
aW5lUGFuZWwuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFu
ZWwuanMKQEAgLTc4LDcgKzc4LDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwgPSBmdW5j
dGlvbigpCiAKICAgICB0aGlzLl9jcmVhdGVTdGF0dXNiYXJCdXR0b25zKCk7CiAKLSAgICB0aGlz
Ll9yZWNvcmRzID0gW107CisgICAgdGhpcy5fdG9wTGV2ZWxSZWNvcmQgPSB0aGlzLl9jcmVhdGVU
b3BMZXZlbFJlY29yZCgpOwogICAgIHRoaXMuX3NlbmRSZXF1ZXN0UmVjb3JkcyA9IHt9OwogICAg
IHRoaXMuX3RpbWVyUmVjb3JkcyA9IHt9OwogCkBAIC0xNTEsNyArMTUxLDcgQEAgV2ViSW5zcGVj
dG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnRvZ2dsZVRpbWVs
aW5lQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fdG9nZ2xlVGltZWxpbmVC
dXR0b25DbGlja2VkLmJpbmQodGhpcyksIGZhbHNlKTsKIAogICAgICAgICB0aGlzLmNsZWFyQnV0
dG9uID0gbmV3IFdlYkluc3BlY3Rvci5TdGF0dXNCYXJCdXR0b24oIiIsICJ0aW1lbGluZS1jbGVh
ci1zdGF0dXMtYmFyLWl0ZW0iKTsKLSAgICAgICAgdGhpcy5jbGVhckJ1dHRvbi5hZGRFdmVudExp
c3RlbmVyKCJjbGljayIsIHRoaXMucmVzZXQuYmluZCh0aGlzKSwgZmFsc2UpOworICAgICAgICB0
aGlzLmNsZWFyQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXIuYmlu
ZCh0aGlzKSwgZmFsc2UpOwogICAgIH0sCiAKICAgICBfdG9nZ2xlVGltZWxpbmVCdXR0b25DbGlj
a2VkOiBmdW5jdGlvbigpCkBAIC0xNzQsMzUgKzE3NCw2MSBAQCBXZWJJbnNwZWN0b3IuVGltZWxp
bmVQYW5lbC5wcm90b3R5cGUgPSB7CiAKICAgICBhZGRSZWNvcmRUb1RpbWVsaW5lOiBmdW5jdGlv
bihyZWNvcmQpCiAgICAgewotICAgICAgICB0aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUo
cmVjb3JkLCB0aGlzLl9yZWNvcmRzKTsKKyAgICAgICAgdGhpcy5faW5uZXJBZGRSZWNvcmRUb1Rp
bWVsaW5lKHJlY29yZCwgdGhpcy5fdG9wTGV2ZWxSZWNvcmQpOwogICAgICAgICB0aGlzLl9zY2hl
ZHVsZVJlZnJlc2goKTsKICAgICB9LAogCi0gICAgX2lubmVyQWRkUmVjb3JkVG9UaW1lbGluZTog
ZnVuY3Rpb24ocmVjb3JkLCBjb2xsZWN0aW9uKQorICAgIF9maW5kUGFyZW50UmVjb3JkOiBmdW5j
dGlvbihyZWNvcmQpCiAgICAgewotICAgICAgICB2YXIgZm9ybWF0dGVkUmVjb3JkID0gbmV3IFdl
Ykluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZChyZWNvcmQsIHRoaXMuX3Jl
Y29yZFN0eWxlcywgdGhpcy5fc2VuZFJlcXVlc3RSZWNvcmRzLCB0aGlzLl90aW1lclJlY29yZHMp
OworICAgICAgICB2YXIgcmVjb3JkVHlwZXMgPSBXZWJJbnNwZWN0b3IuVGltZWxpbmVBZ2VudC5S
ZWNvcmRUeXBlOworICAgICAgICB2YXIgcGFyZW50UmVjb3JkOworICAgICAgICBpZiAocmVjb3Jk
LnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlIHx8CisgICAgICAg
ICAgICByZWNvcmQudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VGaW5pc2gpCisgICAgICAg
ICAgICBwYXJlbnRSZWNvcmQgPSB0aGlzLl9zZW5kUmVxdWVzdFJlY29yZHNbcmVjb3JkLmRhdGEu
aWRlbnRpZmllcl07CisgICAgICAgIGVsc2UgaWYgKHJlY29yZC50eXBlID09PSByZWNvcmRUeXBl
cy5UaW1lckZpcmUpCisgICAgICAgICAgICBwYXJlbnRSZWNvcmQgPSB0aGlzLl90aW1lclJlY29y
ZHNbcmVjb3JkLmRhdGEudGltZXJJZF07CisgICAgICAgIHJldHVybiBwYXJlbnRSZWNvcmQ7Cisg
ICAgfSwKKworICAgIF9pbm5lckFkZFJlY29yZFRvVGltZWxpbmU6IGZ1bmN0aW9uKHJlY29yZCwg
cGFyZW50UmVjb3JkKQorICAgIHsKKyAgICAgICAgdmFyIGNvbm5lY3RlZFRvT2xkUmVjb3JkID0g
ZmFsc2U7CisgICAgICAgIGlmIChwYXJlbnRSZWNvcmQgPT09IHRoaXMuX3RvcExldmVsUmVjb3Jk
KSB7CisgICAgICAgICAgICB2YXIgbmV3UGFyZW50UmVjb3JkID0gdGhpcy5fZmluZFBhcmVudFJl
Y29yZChyZWNvcmQpOworICAgICAgICAgICAgaWYgKG5ld1BhcmVudFJlY29yZCkgeworICAgICAg
ICAgICAgICAgIHBhcmVudFJlY29yZCA9IG5ld1BhcmVudFJlY29yZDsKKyAgICAgICAgICAgICAg
ICBjb25uZWN0ZWRUb09sZFJlY29yZCA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KworICAgICAgICB2YXIgZm9ybWF0dGVkUmVjb3JkID0gbmV3IFdlYkluc3BlY3Rvci5UaW1lbGlu
ZVBhbmVsLkZvcm1hdHRlZFJlY29yZChyZWNvcmQsIHBhcmVudFJlY29yZCwgdGhpcy5fcmVjb3Jk
U3R5bGVzLCB0aGlzLl9zZW5kUmVxdWVzdFJlY29yZHMsIHRoaXMuX3RpbWVyUmVjb3Jkcyk7Cisg
ICAgICAgIGlmIChwYXJlbnRSZWNvcmQgPT09IHRoaXMuX3RvcExldmVsUmVjb3JkKQorICAgICAg
ICAgICAgZm9ybWF0dGVkUmVjb3JkLmNvbGxhcHNlZCA9IHRydWU7CiAKICAgICAgICAgLy8gR2x1
ZSBzdWJzZXF1ZW50IHJlY29yZHMgd2l0aCBzYW1lIGNhdGVnb3J5IGFuZCB0aXRsZSB0b2dldGhl
ciBpZiB0aGV5IGFyZSBjbG9zZXIgdGhhbiAxMDBtcyB0byBlYWNoIG90aGVyLgotICAgICAgICBp
ZiAodGhpcy5fbGFzdFJlY29yZCAmJiAoIXJlY29yZC5jaGlsZHJlbiB8fCAhcmVjb3JkLmNoaWxk
cmVuLmxlbmd0aCkgJiYKLSAgICAgICAgICAgICAgICB0aGlzLl9sYXN0UmVjb3JkLmNhdGVnb3J5
ID09IGZvcm1hdHRlZFJlY29yZC5jYXRlZ29yeSAmJgotICAgICAgICAgICAgICAgIHRoaXMuX2xh
c3RSZWNvcmQudGl0bGUgPT0gZm9ybWF0dGVkUmVjb3JkLnRpdGxlICYmCi0gICAgICAgICAgICAg
ICAgdGhpcy5fbGFzdFJlY29yZC5kZXRhaWxzID09IGZvcm1hdHRlZFJlY29yZC5kZXRhaWxzICYm
Ci0gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5jYWxsZXJTY3JpcHROYW1lID09IGZv
cm1hdHRlZFJlY29yZC5jYWxsZXJTY3JpcHROYW1lICYmCi0gICAgICAgICAgICAgICAgdGhpcy5f
bGFzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lID09IGZvcm1hdHRlZFJlY29yZC5jYWxsZXJTY3Jp
cHRMaW5lICYmCi0gICAgICAgICAgICAgICAgZm9ybWF0dGVkUmVjb3JkLnN0YXJ0VGltZSAtIHRo
aXMuX2xhc3RSZWNvcmQuZW5kVGltZSA8IDAuMSkgewotICAgICAgICAgICAgdGhpcy5fbGFzdFJl
Y29yZC5lbmRUaW1lID0gZm9ybWF0dGVkUmVjb3JkLmVuZFRpbWU7Ci0gICAgICAgICAgICB0aGlz
Ll9sYXN0UmVjb3JkLmNvdW50Kys7CisgICAgICAgIHZhciBsYXN0UmVjb3JkID0gcGFyZW50UmVj
b3JkLl9sYXN0UmVjb3JkOworICAgICAgICBpZiAobGFzdFJlY29yZCAmJiAoIXJlY29yZC5jaGls
ZHJlbiB8fCAhcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCkgJiYKKyAgICAgICAgICAgICAgICBsYXN0
UmVjb3JkLmNhdGVnb3J5ID09IGZvcm1hdHRlZFJlY29yZC5jYXRlZ29yeSAmJgorICAgICAgICAg
ICAgICAgIGxhc3RSZWNvcmQudGl0bGUgPT0gZm9ybWF0dGVkUmVjb3JkLnRpdGxlICYmCisgICAg
ICAgICAgICAgICAgbGFzdFJlY29yZC5kZXRhaWxzID09IGZvcm1hdHRlZFJlY29yZC5kZXRhaWxz
ICYmCisgICAgICAgICAgICAgICAgbGFzdFJlY29yZC5jYWxsZXJTY3JpcHROYW1lID09IGZvcm1h
dHRlZFJlY29yZC5jYWxsZXJTY3JpcHROYW1lICYmCisgICAgICAgICAgICAgICAgbGFzdFJlY29y
ZC5jYWxsZXJTY3JpcHRMaW5lID09IGZvcm1hdHRlZFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lICYm
CisgICAgICAgICAgICAgICAgZm9ybWF0dGVkUmVjb3JkLnN0YXJ0VGltZSAtIGxhc3RSZWNvcmQu
ZW5kVGltZSA8IDAuMSkgeworICAgICAgICAgICAgbGFzdFJlY29yZC5lbmRUaW1lID0gZm9ybWF0
dGVkUmVjb3JkLmVuZFRpbWU7CisgICAgICAgICAgICBsYXN0UmVjb3JkLmNvdW50Kys7CiAgICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBjb2xsZWN0aW9uLnB1c2goZm9ybWF0dGVkUmVjb3Jk
KTsKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyByZWNvcmQuY2hpbGRyZW4gJiYgaSA8IHJl
Y29yZC5jaGlsZHJlbi5sZW5ndGg7ICsraSkgewotICAgICAgICAgICAgICAgIGlmICghZm9ybWF0
dGVkUmVjb3JkLmNoaWxkcmVuKQotICAgICAgICAgICAgICAgICAgICBmb3JtYXR0ZWRSZWNvcmQu
Y2hpbGRyZW4gPSBbXTsKLSAgICAgICAgICAgICAgICB2YXIgZm9ybWF0dGVkQ2hpbGQgPSB0aGlz
Ll9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3JkLmNoaWxkcmVuW2ldLCBmb3JtYXR0ZWRS
ZWNvcmQuY2hpbGRyZW4pOwotICAgICAgICAgICAgICAgIGZvcm1hdHRlZENoaWxkLnBhcmVudCA9
IGZvcm1hdHRlZFJlY29yZDsKKyAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyByZWNvcmQuY2hp
bGRyZW4gJiYgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsraSkKKyAgICAgICAgICAgICAg
ICB0aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3JkLmNoaWxkcmVuW2ldLCBmb3Jt
YXR0ZWRSZWNvcmQpOworICAgICAgICAgICAgcGFyZW50UmVjb3JkLl9sYXN0UmVjb3JkID0gcmVj
b3JkLmNoaWxkcmVuICYmIHJlY29yZC5jaGlsZHJlbi5sZW5ndGggPyBudWxsIDogZm9ybWF0dGVk
UmVjb3JkOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGNvbm5lY3RlZFRvT2xkUmVjb3JkKSB7
CisgICAgICAgICAgICB2YXIgcmVjb3JkID0gZm9ybWF0dGVkUmVjb3JkOworICAgICAgICAgICAg
d2hpbGUgKHJlY29yZC5wYXJlbnQgJiYgcmVjb3JkLnBhcmVudC5fbGFzdENoaWxkRW5kVGltZSA8
IHJlY29yZC5fbGFzdENoaWxkRW5kVGltZSkgeworICAgICAgICAgICAgICAgIHJlY29yZC5wYXJl
bnQuX2xhc3RDaGlsZEVuZFRpbWUgPSByZWNvcmQuX2xhc3RDaGlsZEVuZFRpbWU7CisgICAgICAg
ICAgICAgICAgcmVjb3JkID0gcmVjb3JkLnBhcmVudDsKICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIHRoaXMuX2xhc3RSZWNvcmQgPSByZWNvcmQuY2hpbGRyZW4gJiYgcmVjb3JkLmNoaWxkcmVu
Lmxlbmd0aCA/IG51bGwgOiBmb3JtYXR0ZWRSZWNvcmQ7CiAgICAgICAgIH0KLSAgICAgICAgcmV0
dXJuIGZvcm1hdHRlZFJlY29yZDsKICAgICB9LAogCiAgICAgc2V0U2lkZWJhcldpZHRoOiBmdW5j
dGlvbih3aWR0aCkKQEAgLTIxOSwxNyArMjQ1LDI5IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBh
bmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fb3ZlcnZpZXdQYW5lLnVwZGF0ZU1haW5W
aWV3V2lkdGgod2lkdGgpOwogICAgIH0sCiAKLSAgICByZXNpemU6IGZ1bmN0aW9uKCkgeworICAg
IHJlc2l6ZTogZnVuY3Rpb24oKQorICAgIHsKICAgICAgICAgdGhpcy5fY2xvc2VSZWNvcmREZXRh
aWxzKCk7CiAgICAgICAgIHRoaXMuX3NjaGVkdWxlUmVmcmVzaCgpOwogICAgIH0sCiAKKyAgICBf
Y3JlYXRlVG9wTGV2ZWxSZWNvcmQ6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHZhciB0b3BM
ZXZlbFJlY29yZCA9IHt9OworICAgICAgICB0b3BMZXZlbFJlY29yZC5jaGlsZHJlbiA9IFtdOwor
ICAgICAgICB0b3BMZXZlbFJlY29yZC5fbGFzdFJlY29yZCA9IG51bGw7CisgICAgICAgIHJldHVy
biB0b3BMZXZlbFJlY29yZDsKKyAgICB9LAorCiAgICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7
Ci0gICAgICAgIHRoaXMuX2xhc3RSZWNvcmQgPSBudWxsOworICAgIH0sCisKKyAgICBfY2xlYXI6
IGZ1bmN0aW9uKCkKKyAgICB7CiAgICAgICAgIHRoaXMuX3NlbmRSZXF1ZXN0UmVjb3JkcyA9IHt9
OwogICAgICAgICB0aGlzLl90aW1lclJlY29yZHMgPSB7fTsKLSAgICAgICAgdGhpcy5fcmVjb3Jk
cyA9IFtdOworICAgICAgICB0aGlzLl90b3BMZXZlbFJlY29yZCA9IHRoaXMuX2NyZWF0ZVRvcExl
dmVsUmVjb3JkKCk7CiAgICAgICAgIHRoaXMuX2JvdW5kYXJpZXNBcmVWYWxpZCA9IGZhbHNlOwog
ICAgICAgICB0aGlzLl9vdmVydmlld1BhbmUucmVzZXQoKTsKICAgICAgICAgdGhpcy5fYWRqdXN0
U2Nyb2xsUG9zaXRpb24oMCk7CkBAIC0yOTMsNyArMzMxLDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVs
aW5lUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB9CiAKICAgICAgICAgaWYgKCF0aGlzLl9i
b3VuZGFyaWVzQXJlVmFsaWQpCi0gICAgICAgICAgICB0aGlzLl9vdmVydmlld1BhbmUudXBkYXRl
KHRoaXMuX3JlY29yZHMpOworICAgICAgICAgICAgdGhpcy5fb3ZlcnZpZXdQYW5lLnVwZGF0ZSh0
aGlzLl90b3BMZXZlbFJlY29yZC5jaGlsZHJlbik7CiAgICAgICAgIHRoaXMuX3JlZnJlc2hSZWNv
cmRzKCF0aGlzLl9ib3VuZGFyaWVzQXJlVmFsaWQpOwogICAgICAgICB0aGlzLl9ib3VuZGFyaWVz
QXJlVmFsaWQgPSB0cnVlOwogICAgIH0sCkBAIC0zMDUsMTcgKzM0MywxNyBAQCBXZWJJbnNwZWN0
b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB0aGlzLl9jYWxjdWxh
dG9yLndpbmRvd0xlZnQgPSB0aGlzLl9vdmVydmlld1BhbmUud2luZG93TGVmdDsKICAgICAgICAg
ICAgIHRoaXMuX2NhbGN1bGF0b3Iud2luZG93UmlnaHQgPSB0aGlzLl9vdmVydmlld1BhbmUud2lu
ZG93UmlnaHQ7CiAKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fcmVjb3Jk
cy5sZW5ndGg7ICsraSkKLSAgICAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLnVwZGF0ZUJv
dW5kYXJpZXModGhpcy5fcmVjb3Jkc1tpXSk7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IHRoaXMuX3RvcExldmVsUmVjb3JkLmNoaWxkcmVuLmxlbmd0aDsgKytpKQorICAgICAgICAg
ICAgICAgIHRoaXMuX2NhbGN1bGF0b3IudXBkYXRlQm91bmRhcmllcyh0aGlzLl90b3BMZXZlbFJl
Y29yZC5jaGlsZHJlbltpXSk7CiAKICAgICAgICAgICAgIHRoaXMuX2NhbGN1bGF0b3IuY2FsY3Vs
YXRlV2luZG93KCk7CiAgICAgICAgIH0KIAogICAgICAgICB2YXIgcmVjb3Jkc0luV2luZG93ID0g
W107Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fcmVjb3Jkcy5sZW5ndGg7ICsr
aSkgewotICAgICAgICAgICAgdmFyIHJlY29yZCA9IHRoaXMuX3JlY29yZHNbaV07CisgICAgICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fdG9wTGV2ZWxSZWNvcmQuY2hpbGRyZW4ubGVuZ3Ro
OyArK2kpIHsKKyAgICAgICAgICAgIHZhciByZWNvcmQgPSB0aGlzLl90b3BMZXZlbFJlY29yZC5j
aGlsZHJlbltpXTsKICAgICAgICAgICAgIHZhciBwZXJjZW50YWdlcyA9IHRoaXMuX2NhbGN1bGF0
b3IuY29tcHV0ZUJhckdyYXBoUGVyY2VudGFnZXMocmVjb3JkKTsKLSAgICAgICAgICAgIGlmIChw
ZXJjZW50YWdlcy5zdGFydCA8IDEwMCAmJiBwZXJjZW50YWdlcy5lbmQgPj0gMCAmJiAhcmVjb3Jk
LmNhdGVnb3J5LmhpZGRlbikKKyAgICAgICAgICAgIGlmIChwZXJjZW50YWdlcy5zdGFydCA8IDEw
MCAmJiBwZXJjZW50YWdlcy5lbmRXaXRoQ2hpbGRyZW4gPj0gMCAmJiAhcmVjb3JkLmNhdGVnb3J5
LmhpZGRlbikKICAgICAgICAgICAgICAgICB0aGlzLl9hZGRUb1JlY29yZHNXaW5kb3cocmVjb3Jk
LCByZWNvcmRzSW5XaW5kb3cpOwogICAgICAgICB9CiAKQEAgLTM5Niw3ICs0MzQsNyBAQCBXZWJJ
bnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJlY29yZHNXaW5k
b3cucHVzaChyZWNvcmQpOwogICAgICAgICBpZiAoIXJlY29yZC5jb2xsYXBzZWQpIHsKICAgICAg
ICAgICAgIHZhciBpbmRleCA9IHJlY29yZHNXaW5kb3cubGVuZ3RoOwotICAgICAgICAgICAgZm9y
ICh2YXIgaSA9IDA7IHJlY29yZC5jaGlsZHJlbiAmJiBpIDwgcmVjb3JkLmNoaWxkcmVuLmxlbmd0
aDsgKytpKQorICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZWNvcmQuY2hpbGRyZW4u
bGVuZ3RoOyArK2kpCiAgICAgICAgICAgICAgICAgdGhpcy5fYWRkVG9SZWNvcmRzV2luZG93KHJl
Y29yZC5jaGlsZHJlbltpXSwgcmVjb3Jkc1dpbmRvdyk7CiAgICAgICAgICAgICByZWNvcmQudmlz
aWJsZUNoaWxkcmVuQ291bnQgPSByZWNvcmRzV2luZG93Lmxlbmd0aCAtIGluZGV4OwogICAgICAg
ICB9CkBAIC00NTAsNyArNDg4LDIyIEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3Iu
cHJvdG90eXBlID0gewogICAgIHsKICAgICAgICAgdmFyIHN0YXJ0ID0gKHJlY29yZC5zdGFydFRp
bWUgLSB0aGlzLm1pbmltdW1Cb3VuZGFyeSkgLyB0aGlzLmJvdW5kYXJ5U3BhbiAqIDEwMDsKICAg
ICAgICAgdmFyIGVuZCA9IChyZWNvcmQuZW5kVGltZSAtIHRoaXMubWluaW11bUJvdW5kYXJ5KSAv
IHRoaXMuYm91bmRhcnlTcGFuICogMTAwOwotICAgICAgICByZXR1cm4ge3N0YXJ0OiBzdGFydCwg
ZW5kOiBlbmR9OworICAgICAgICB2YXIgZW5kV2l0aENoaWxkcmVuID0gKHJlY29yZC5fbGFzdENo
aWxkRW5kVGltZSAtIHRoaXMubWluaW11bUJvdW5kYXJ5KSAvIHRoaXMuYm91bmRhcnlTcGFuICog
MTAwOworICAgICAgICByZXR1cm4ge3N0YXJ0OiBzdGFydCwgZW5kOiBlbmQsIGVuZFdpdGhDaGls
ZHJlbjogZW5kV2l0aENoaWxkcmVufTsKKyAgICB9LAorCisgICAgY29tcHV0ZUJhckdyYXBoV2lu
ZG93UG9zaXRpb246IGZ1bmN0aW9uKHJlY29yZCwgY2xpZW50V2lkdGgsIGV4cGFuZE9mZnNldCkK
KyAgICB7CisgICAgICAgIGNvbnN0IG1pbldpZHRoID0gNTsKKyAgICAgICAgY29uc3QgYm9yZGVy
V2lkdGggPSA0OworICAgICAgICB2YXIgd29ya2luZ0FyZWEgPSBjbGllbnRXaWR0aCAtIGV4cGFu
ZE9mZnNldCAtIG1pbldpZHRoIC0gYm9yZGVyV2lkdGg7CisgICAgICAgIHZhciBwZXJjZW50YWdl
cyA9IHRoaXMuY29tcHV0ZUJhckdyYXBoUGVyY2VudGFnZXMocmVjb3JkKTsKKyAgICAgICAgdmFy
IGxlZnQgPSBwZXJjZW50YWdlcy5zdGFydCAvIDEwMCAqIHdvcmtpbmdBcmVhOworICAgICAgICB2
YXIgd2lkdGhXaXRoQ2hpbGRyZW4gPSAgKHBlcmNlbnRhZ2VzLmVuZFdpdGhDaGlsZHJlbiAtIHBl
cmNlbnRhZ2VzLnN0YXJ0KSAvIDEwMCAqIHdvcmtpbmdBcmVhOworICAgICAgICB3aWR0aFdpdGhD
aGlsZHJlbiA9IHdpZHRoV2l0aENoaWxkcmVuID4gbWluV2lkdGggPyB3aWR0aFdpdGhDaGlsZHJl
biA6IG1pbldpZHRoOworICAgICAgICB2YXIgd2lkdGggPSAocGVyY2VudGFnZXMuZW5kIC0gcGVy
Y2VudGFnZXMuc3RhcnQpIC8gMTAwICogd29ya2luZ0FyZWE7CisgICAgICAgIHdpZHRoID0gd2lk
dGggPiBtaW5XaWR0aCA/IHdpZHRoIDogbWluV2lkdGg7CisgICAgICAgIHJldHVybiB7bGVmdDog
bGVmdCwgd2lkdGg6IHdpZHRoLCB3aWR0aFdpdGhDaGlsZHJlbjogd2lkdGhXaXRoQ2hpbGRyZW59
OwogICAgIH0sCiAKICAgICBjYWxjdWxhdGVXaW5kb3c6IGZ1bmN0aW9uKCkKQEAgLTQ3Miw3ICs1
MjUsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgaWYgKHRoaXMuX2Fic29sdXRlTWluaW11bUJvdW5kYXJ5ID09PSAtMSB8fCBsb3dlckJv
dW5kIDwgdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkpCiAgICAgICAgICAgICB0aGlzLl9h
YnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSA9IGxvd2VyQm91bmQ7CiAKLSAgICAgICAgdmFyIHVwcGVy
Qm91bmQgPSByZWNvcmQuZW5kVGltZTsKKyAgICAgICAgdmFyIHVwcGVyQm91bmQgPSByZWNvcmQu
X2xhc3RDaGlsZEVuZFRpbWU7CiAgICAgICAgIGlmICh0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3Vu
ZGFyeSA9PT0gLTEgfHwgdXBwZXJCb3VuZCA+IHRoaXMuX2Fic29sdXRlTWF4aW11bUJvdW5kYXJ5
KQogICAgICAgICAgICAgdGhpcy5fYWJzb2x1dGVNYXhpbXVtQm91bmRhcnkgPSB1cHBlckJvdW5k
OwogICAgIH0sCkBAIC01NDgsNiArNjAxLDExIEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVJlY29y
ZEdyYXBoUm93ID0gZnVuY3Rpb24oZ3JhcGhDb250YWluZXIsIHNjaGVkdWxlUmVmcmVzaCwKICAg
ICB0aGlzLl9iYXJBcmVhRWxlbWVudC5jbGFzc05hbWUgPSAidGltZWxpbmUtZ3JhcGgtYmFyLWFy
ZWEiOwogICAgIHRoaXMuZWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl9iYXJBcmVhRWxlbWVudCk7
CiAKKyAgICB0aGlzLl9iYXJXaXRoQ2hpbGRyZW5FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7CisgICAgdGhpcy5fYmFyV2l0aENoaWxkcmVuRWxlbWVudC5jbGFzc05hbWUg
PSAidGltZWxpbmUtZ3JhcGgtYmFyIHdpdGgtY2hpbGRyZW4iOworICAgIHRoaXMuX2JhcldpdGhD
aGlsZHJlbkVsZW1lbnQucm93ID0gdGhpczsKKyAgICB0aGlzLl9iYXJBcmVhRWxlbWVudC5hcHBl
bmRDaGlsZCh0aGlzLl9iYXJXaXRoQ2hpbGRyZW5FbGVtZW50KTsKKwogICAgIHRoaXMuX2JhckVs
ZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICB0aGlzLl9iYXJFbGVt
ZW50LmNsYXNzTmFtZSA9ICJ0aW1lbGluZS1ncmFwaC1iYXIiOwogICAgIHRoaXMuX2JhckVsZW1l
bnQucm93ID0gdGhpczsKQEAgLTU3MCwyMiArNjI4LDE4IEBAIFdlYkluc3BlY3Rvci5UaW1lbGlu
ZVJlY29yZEdyYXBoUm93ID0gZnVuY3Rpb24oZ3JhcGhDb250YWluZXIsIHNjaGVkdWxlUmVmcmVz
aCwKIFdlYkluc3BlY3Rvci5UaW1lbGluZVJlY29yZEdyYXBoUm93LnByb3RvdHlwZSA9IHsKICAg
ICB1cGRhdGU6IGZ1bmN0aW9uKHJlY29yZCwgaXNFdmVuLCBjYWxjdWxhdG9yLCBjbGllbnRXaWR0
aCwgZXhwYW5kT2Zmc2V0LCBpbmRleCkKICAgICB7Ci0gICAgICAgIGNvbnN0IG1pbldpZHRoID0g
NTsKLSAgICAgICAgY29uc3QgYm9yZGVyV2lkdGggPSA0OwotICAgICAgICB2YXIgd29ya2luZ0Fy
ZWEgPSBjbGllbnRXaWR0aCAtIGV4cGFuZE9mZnNldCAtIG1pbldpZHRoIC0gYm9yZGVyV2lkdGg7
CiAgICAgICAgIHRoaXMuX3JlY29yZCA9IHJlY29yZDsKICAgICAgICAgdGhpcy5lbGVtZW50LmNs
YXNzTmFtZSA9ICJ0aW1lbGluZS1ncmFwaC1zaWRlIHRpbWVsaW5lLWNhdGVnb3J5LSIgKyByZWNv
cmQuY2F0ZWdvcnkubmFtZSArIChpc0V2ZW4gPyAiIGV2ZW4iIDogIiIpOwotICAgICAgICB2YXIg
cGVyY2VudGFnZXMgPSBjYWxjdWxhdG9yLmNvbXB1dGVCYXJHcmFwaFBlcmNlbnRhZ2VzKHJlY29y
ZCk7Ci0gICAgICAgIHZhciBsZWZ0ID0gcGVyY2VudGFnZXMuc3RhcnQgLyAxMDAgKiB3b3JraW5n
QXJlYTsKLSAgICAgICAgdmFyIHdpZHRoID0gKHBlcmNlbnRhZ2VzLmVuZCAtIHBlcmNlbnRhZ2Vz
LnN0YXJ0KSAvIDEwMCAqIHdvcmtpbmdBcmVhOwotICAgICAgICB3aWR0aCA9IHdpZHRoID4gbWlu
V2lkdGggPyB3aWR0aCA6IG1pbldpZHRoOwotICAgICAgICB0aGlzLl9iYXJFbGVtZW50LnN0eWxl
LmxlZnQgPSAobGVmdCArIGV4cGFuZE9mZnNldCkgKyAicHgiOwotICAgICAgICB0aGlzLl9iYXJF
bGVtZW50LnN0eWxlLndpZHRoID0gd2lkdGggKyAicHgiOworICAgICAgICB2YXIgYmFyUG9zaXRp
b24gPSBjYWxjdWxhdG9yLmNvbXB1dGVCYXJHcmFwaFdpbmRvd1Bvc2l0aW9uKHJlY29yZCwgY2xp
ZW50V2lkdGgsIGV4cGFuZE9mZnNldCk7CisgICAgICAgIHRoaXMuX2JhcldpdGhDaGlsZHJlbkVs
ZW1lbnQuc3R5bGUubGVmdCA9IGJhclBvc2l0aW9uLmxlZnQgKyBleHBhbmRPZmZzZXQgKyAicHgi
OworICAgICAgICB0aGlzLl9iYXJXaXRoQ2hpbGRyZW5FbGVtZW50LnN0eWxlLndpZHRoID0gYmFy
UG9zaXRpb24ud2lkdGhXaXRoQ2hpbGRyZW4gKyAicHgiOworICAgICAgICB0aGlzLl9iYXJFbGVt
ZW50LnN0eWxlLmxlZnQgPSBiYXJQb3NpdGlvbi5sZWZ0ICsgZXhwYW5kT2Zmc2V0ICsgInB4IjsK
KyAgICAgICAgdGhpcy5fYmFyRWxlbWVudC5zdHlsZS53aWR0aCA9ICBiYXJQb3NpdGlvbi53aWR0
aCArICJweCI7CiAKLSAgICAgICAgaWYgKHJlY29yZC52aXNpYmxlQ2hpbGRyZW5Db3VudCkgewor
ICAgICAgICBpZiAocmVjb3JkLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgICAgICAgdGhpcy5f
ZXhwYW5kRWxlbWVudC5zdHlsZS50b3AgPSBpbmRleCAqIHRoaXMuX3Jvd0hlaWdodCArICJweCI7
Ci0gICAgICAgICAgICB0aGlzLl9leHBhbmRFbGVtZW50LnN0eWxlLmxlZnQgPSBsZWZ0ICsgInB4
IjsKLSAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuc3R5bGUud2lkdGggPSBNYXRoLm1h
eCgxMiwgd2lkdGggKyAyNSkgKyAicHgiOworICAgICAgICAgICAgdGhpcy5fZXhwYW5kRWxlbWVu
dC5zdHlsZS5sZWZ0ID0gYmFyUG9zaXRpb24ubGVmdCArICJweCI7CisgICAgICAgICAgICB0aGlz
Ll9leHBhbmRFbGVtZW50LnN0eWxlLndpZHRoID0gTWF0aC5tYXgoMTIsIGJhclBvc2l0aW9uLndp
ZHRoICsgMjUpICsgInB4IjsKICAgICAgICAgICAgIGlmICghcmVjb3JkLmNvbGxhcHNlZCkgewog
ICAgICAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gKHJlY29y
ZC52aXNpYmxlQ2hpbGRyZW5Db3VudCArIDEpICogdGhpcy5fcm93SGVpZ2h0ICsgInB4IjsKICAg
ICAgICAgICAgICAgICB0aGlzLl9leHBhbmRFbGVtZW50LmFkZFN0eWxlQ2xhc3MoInRpbWVsaW5l
LWV4cGFuZGFibGUtZXhwYW5kZWQiKTsKQEAgLTYxNCwxMSArNjY4LDEzIEBAIFdlYkluc3BlY3Rv
ci5UaW1lbGluZVJlY29yZEdyYXBoUm93LnByb3RvdHlwZSA9IHsKICAgICB9CiB9CiAKLVdlYklu
c3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZCA9IGZ1bmN0aW9uKHJlY29yZCwg
cmVjb3JkU3R5bGVzLCBzZW5kUmVxdWVzdFJlY29yZHMsIHRpbWVyUmVjb3JkcykKK1dlYkluc3Bl
Y3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZCA9IGZ1bmN0aW9uKHJlY29yZCwgcGFy
ZW50UmVjb3JkLCByZWNvcmRTdHlsZXMsIHNlbmRSZXF1ZXN0UmVjb3JkcywgdGltZXJSZWNvcmRz
KQogewogICAgIHZhciByZWNvcmRUeXBlcyA9IFdlYkluc3BlY3Rvci5UaW1lbGluZUFnZW50LlJl
Y29yZFR5cGU7CiAgICAgdmFyIHN0eWxlID0gcmVjb3JkU3R5bGVzW3JlY29yZC50eXBlXTsKIAor
ICAgIHRoaXMucGFyZW50ID0gcGFyZW50UmVjb3JkOworICAgIHBhcmVudFJlY29yZC5jaGlsZHJl
bi5wdXNoKHRoaXMpOwogICAgIHRoaXMuY2F0ZWdvcnkgPSBzdHlsZS5jYXRlZ29yeTsKICAgICB0
aGlzLnRpdGxlID0gc3R5bGUudGl0bGU7CiAgICAgdGhpcy5zdGFydFRpbWUgPSByZWNvcmQuc3Rh
cnRUaW1lIC8gMTAwMDsKQEAgLTYyNiw2ICs2ODIsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQ
YW5lbC5Gb3JtYXR0ZWRSZWNvcmQgPSBmdW5jdGlvbihyZWNvcmQsIHJlY29yZFN0eWxlcywgc2Vu
ZAogICAgIHRoaXMuY291bnQgPSAxOwogICAgIHRoaXMudHlwZSA9IHJlY29yZC50eXBlOwogICAg
IHRoaXMuZW5kVGltZSA9ICh0eXBlb2YgcmVjb3JkLmVuZFRpbWUgIT09ICJ1bmRlZmluZWQiKSA/
IHJlY29yZC5lbmRUaW1lIC8gMTAwMCA6IHRoaXMuc3RhcnRUaW1lOworICAgIHRoaXMuX2xhc3RD
aGlsZEVuZFRpbWUgPSB0aGlzLmVuZFRpbWU7CiAgICAgdGhpcy5vcmlnaW5hbFJlY29yZEZvclRl
c3RzID0gcmVjb3JkOwogICAgIHRoaXMuY2FsbGVyU2NyaXB0TmFtZSA9IHJlY29yZC5jYWxsZXJT
Y3JpcHROYW1lOwogICAgIHRoaXMuY2FsbGVyU2NyaXB0TGluZSA9IHJlY29yZC5jYWxsZXJTY3Jp
cHRMaW5lOwpAQCAtNjM4LDcgKzY5NSw2IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZv
cm1hdHRlZFJlY29yZCA9IGZ1bmN0aW9uKHJlY29yZCwgcmVjb3JkU3R5bGVzLCBzZW5kCiAgICAg
ICAgIGlmIChzZW5kUmVxdWVzdFJlY29yZCkgeyAvLyBGYWxzZSBpZiB3ZSBzdGFydGVkIGluc3Ry
dW1lbnRhdGlvbiBpbiB0aGUgbWlkZGxlIG9mIHJlcXVlc3QuCiAgICAgICAgICAgICBzZW5kUmVx
dWVzdFJlY29yZC5fcmVzcG9uc2VSZWNlaXZlZEZvcm1hdHRlZFRpbWUgPSB0aGlzLnN0YXJ0VGlt
ZTsKICAgICAgICAgICAgIHJlY29yZC5kYXRhLnVybCA9IHNlbmRSZXF1ZXN0UmVjb3JkLmRhdGEu
dXJsOwotICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSBzZW5kUmVxdWVzdFJlY29yZC5zdGFy
dFRpbWU7CiAgICAgICAgICAgICB0aGlzLmRldGFpbHMgPSB0aGlzLl9nZXRSZWNvcmREZXRhaWxz
KHNlbmRSZXF1ZXN0UmVjb3JkLCBzZW5kUmVxdWVzdFJlY29yZHMpOwogICAgICAgICAgICAgdGhp
cy5jYWxsZXJTY3JpcHROYW1lID0gc2VuZFJlcXVlc3RSZWNvcmQuY2FsbGVyU2NyaXB0TmFtZTsK
ICAgICAgICAgICAgIHRoaXMuY2FsbGVyU2NyaXB0TGluZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLmNh
bGxlclNjcmlwdExpbmU7CkBAIC02NDcsNyArNzAzLDYgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5l
UGFuZWwuRm9ybWF0dGVkUmVjb3JkID0gZnVuY3Rpb24ocmVjb3JkLCByZWNvcmRTdHlsZXMsIHNl
bmQKICAgICAgICAgdmFyIHNlbmRSZXF1ZXN0UmVjb3JkID0gc2VuZFJlcXVlc3RSZWNvcmRzW3Jl
Y29yZC5kYXRhLmlkZW50aWZpZXJdOwogICAgICAgICBpZiAoc2VuZFJlcXVlc3RSZWNvcmQpIHsv
LyBGYWxzZSBmb3IgbWFpbiByZXNvdXJjZS4KICAgICAgICAgICAgIHJlY29yZC5kYXRhLnVybCA9
IHNlbmRSZXF1ZXN0UmVjb3JkLmRhdGEudXJsOwotICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUg
PSBzZW5kUmVxdWVzdFJlY29yZC5fcmVzcG9uc2VSZWNlaXZlZEZvcm1hdHRlZFRpbWU7CiAgICAg
ICAgICAgICB0aGlzLmNhbGxlclNjcmlwdE5hbWUgPSBzZW5kUmVxdWVzdFJlY29yZC5jYWxsZXJT
Y3JpcHROYW1lOwogICAgICAgICAgICAgdGhpcy5jYWxsZXJTY3JpcHRMaW5lID0gc2VuZFJlcXVl
c3RSZWNvcmQuY2FsbGVyU2NyaXB0TGluZTsKICAgICAgICAgfQpAQCAtNjgwLDYgKzczNSwxMyBA
QCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQucHJvdG90eXBlID0g
ewogICAgICAgICByZXR1cm4gY2VsbDsKICAgICB9LAogCisgICAgZ2V0IGNoaWxkcmVuKCkKKyAg
ICB7CisgICAgICAgIGlmICghdGhpcy5fY2hpbGRyZW4pCisgICAgICAgICAgICB0aGlzLl9jaGls
ZHJlbiA9IFtdOworICAgICAgICByZXR1cm4gdGhpcy5fY2hpbGRyZW47CisgICAgfSwKKwogICAg
IF9jcmVhdGVSb3c6IGZ1bmN0aW9uKHRpdGxlLCBjb250ZW50KQogICAgIHsKICAgICAgICAgdmFy
IHJvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRyIik7CkBAIC03MTYsMTEgKzc3OCwxMSBA
QCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQucHJvdG90eXBlID0g
ewogICAgICAgICAgICAgICAgIHRoaXMudHlwZSA9PT0gcmVjb3JkVHlwZXMuVGltZXJGaXJlIHx8
CiAgICAgICAgICAgICAgICAgdGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5UaW1lclJlbW92ZSkg
ewogICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9j
cmVhdGVSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJUaW1lciBJZCIpLCB0aGlzLmRhdGEudGlt
ZXJJZCkpOwotICAgICAgICAgICAgICAgIGlmICh0aGlzLnRpbWVvdXQpIHsKKyAgICAgICAgICAg
ICAgICBpZiAodHlwZW9mIHRoaXMudGltZW91dCA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAg
ICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZVJvdyhX
ZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlRpbWVvdXQiKSwgdGhpcy50aW1lb3V0KSk7CiAgICAgICAg
ICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVS
b3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZXBlYXRzIiksICF0aGlzLnNpbmdsZVNob3QpKTsK
ICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKHRoaXMuY2FsbFNpdGVTY3Jp
cHRMaW5lKSB7CisgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNhbGxTaXRlU2NyaXB0
TGluZSA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICAgICAgICAgdmFyIGxpbmsgPSBXZWJJ
bnNwZWN0b3IubGlua2lmeVJlc291cmNlQXNOb2RlKHRoaXMuY2FsbFNpdGVTY3JpcHROYW1lLCAi
c2NyaXB0cyIsIHRoaXMuY2FsbFNpdGVTY3JpcHRMaW5lLCAidGltZWxpbmUtZGV0YWlscyIpOwog
ICAgICAgICAgICAgICAgICAgICByZWNvcmRDb250ZW50VGFibGUuYXBwZW5kQ2hpbGQodGhpcy5f
Y3JlYXRlTGlua1JvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNhbGwgU2l0ZSIpLCBsaW5rKSk7
CiAgICAgICAgICAgICAgICAgfQpAQCAtNzMwLDYgKzc5MiwxNiBAQCBXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQucHJvdG90eXBlID0gewogICAgICAgICAgICAgfSBl
bHNlIGlmICh0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlU2VuZFJlcXVlc3QgfHwg
dGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5SZXNvdXJjZVJlY2VpdmVSZXNwb25zZSB8fCB0aGlz
LnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlRmluaXNoKSB7CiAgICAgICAgICAgICAgICAg
dmFyIGxpbmsgPSBXZWJJbnNwZWN0b3IubGlua2lmeVJlc291cmNlQXNOb2RlKHRoaXMuZGF0YS51
cmwsICJyZXNvdXJjZXMiLCBudWxsLCAidGltZWxpbmUtZGV0YWlscyIpOwogICAgICAgICAgICAg
ICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVMaW5rUm93KFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiUmVzb3VyY2UiKSwgbGluaykpOworICAgICAgICAgICAgICAg
IGlmICh0aGlzLmRhdGEucmVxdWVzdE1ldGhvZCkKKyAgICAgICAgICAgICAgICAgICAgcmVjb3Jk
Q29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZVJvdyhXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIlJlcXVlc3QgTWV0aG9kIiksIHRoaXMuZGF0YS5yZXF1ZXN0TWV0aG9kKSk7CisgICAg
ICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRhdGEuaXNNYWluUmVzb3VyY2UgPT09ICJib29s
ZWFuIikKKyAgICAgICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxk
KHRoaXMuX2NyZWF0ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIklzIE1haW4gUmVzb3VyY2Ui
KSwgdGhpcy5kYXRhLmlzTWFpblJlc291cmNlKSk7CisgICAgICAgICAgICAgICAgaWYgKHR5cGVv
ZiB0aGlzLmRhdGEuc3RhdHVzQ29kZSA9PT0gIm51bWJlciIpCisgICAgICAgICAgICAgICAgICAg
IHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVSb3coV2ViSW5zcGVj
dG9yLlVJU3RyaW5nKCJTdGF0dXMgQ29kZSIpLCB0aGlzLmRhdGEuc3RhdHVzQ29kZSkpOworICAg
ICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEubWltZVR5cGUpCisgICAgICAgICAgICAgICAgICAg
IHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVSb3coV2ViSW5zcGVj
dG9yLlVJU3RyaW5nKCJNaW1lIFR5cGUiKSwgdGhpcy5kYXRhLm1pbWVUeXBlKSk7CisgICAgICAg
ICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRhdGEuZXhwZWN0ZWRDb250ZW50TGVuZ3RoID09PSAi
bnVtYmVyIiAmJiB0aGlzLmRhdGEuZXhwZWN0ZWRDb250ZW50TGVuZ3RoICE9PSAtMSkKKyAgICAg
ICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0
ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkV4cGVjdGVkIENvbnRlbnQgTGVuZ3RoIiksIHRo
aXMuZGF0YS5leHBlY3RlZENvbnRlbnRMZW5ndGgpKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAo
dGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5FdmFsdWF0ZVNjcmlwdCkgewogICAgICAgICAgICAg
ICAgIHZhciBsaW5rID0gV2ViSW5zcGVjdG9yLmxpbmtpZnlSZXNvdXJjZUFzTm9kZSh0aGlzLmRh
dGEudXJsLCAic2NyaXB0cyIsIG51bGwsICJ0aW1lbGluZS1kZXRhaWxzIik7CiAgICAgICAgICAg
ICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUxpbmtSb3co
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTY3JpcHQiKSwgbGluaykpOwpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3MgYi9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwppbmRleCBkYjZmMTdiLi44YzY0NzQxIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcworKysgYi9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwpAQCAtMzU5NSw2ICszNTk1LDEw
IEBAIGJvZHkuaW5hY3RpdmUgLnNpZGViYXItdHJlZS1pdGVtLnNlbGVjdGVkIC5idWJibGUuc2Vh
cmNoLW1hdGNoZXMgewogICAgIHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlRmlsbDsKIH0KIAorLnRp
bWVsaW5lLWdyYXBoLWJhci53aXRoLWNoaWxkcmVuIHsKKyAgICBvcGFjaXR5OiAwLjM7Cit9CisK
IC50aW1lbGluZS1ncmFwaC1zaWRlLmV2ZW4gewogICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEo
MCwgMCwgMCwgMC4wNSk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxv
YWRlci5jcHAgYi9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMWNiYjg0
My4uMDc3MDg5NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcApAQCAtMzQsNiArMzQsNyBA
QAogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNs
dWRlICJGcmFtZUxvYWRlci5oIgorI2luY2x1ZGUgIkluc3BlY3RvclRpbWVsaW5lQWdlbnQuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VIYW5kbGUuaCIKQEAgLTM5NywxMSArMzk4LDI1IEBAIHZvaWQgUmVzb3VyY2VM
b2FkZXI6OmRpZFNlbmREYXRhKFJlc291cmNlSGFuZGxlKiwgdW5zaWduZWQgbG9uZyBsb25nIGJ5
dGVzU2VudCwKIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CisjaWYgRU5B
QkxFKElOU1BFQ1RPUikKKyAgICBpZiAoSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6aW5zdGFuY2VD
b3VudCgpKSB7CisgICAgICAgIEluc3BlY3RvclRpbWVsaW5lQWdlbnQqIHRpbWVsaW5lQWdlbnQg
PSBtX2ZyYW1lLT5wYWdlKCkgPyBtX2ZyYW1lLT5wYWdlKCktPmluc3BlY3RvclRpbWVsaW5lQWdl
bnQoKSA6IDA7CisgICAgICAgIGlmICh0aW1lbGluZUFnZW50KQorICAgICAgICAgICAgdGltZWxp
bmVBZ2VudC0+d2lsbFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKGlkZW50aWZpZXIoKSwgcmVzcG9u
c2UpOworICAgIH0KKyNlbmRpZgogI2lmIEVOQUJMRShPRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMp
CiAgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJl
TG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQogICAgICAgICByZXR1cm47
CiAjZW5kaWYKICAgICBkaWRSZWNlaXZlUmVzcG9uc2UocmVzcG9uc2UpOworI2lmIEVOQUJMRShJ
TlNQRUNUT1IpCisgICAgaWYgKEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6Omluc3RhbmNlQ291bnQo
KSkgeworICAgICAgICBJbnNwZWN0b3JUaW1lbGluZUFnZW50KiB0aW1lbGluZUFnZW50ID0gbV9m
cmFtZS0+cGFnZSgpID8gbV9mcmFtZS0+cGFnZSgpLT5pbnNwZWN0b3JUaW1lbGluZUFnZW50KCkg
OiAwOworICAgICAgICBpZiAodGltZWxpbmVBZ2VudCkKKyAgICAgICAgICAgIHRpbWVsaW5lQWdl
bnQtPmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKCk7CisgICAgfQorI2VuZGlmCiB9CiAKIHZv
aWQgUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3Qg
Y2hhciogZGF0YSwgaW50IGxlbmd0aCwgaW50IGxlbmd0aFJlY2VpdmVkKQo=
</data>
<flag name="review"
          id="33947"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>50898</attachid>
            <date>2010-03-17 06:25:19 -0700</date>
            <delta_ts>2010-03-17 06:26:45 -0700</delta_ts>
            <desc>[Patch</desc>
            <filename>patch</filename>
            <type>application/octet-stream</type>
            <size>33842</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlOTgyZjk3Li42Y2Y1ODRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDMt
MTcgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYkluc3BlY3RvcjogVGltZWxp
bmUgaW1wcm92ZW1lbnRzIC0gbmV4dCBpdGVyYXRpb24uCisgICAgICAgIFRoZSB0b3AgbGV2ZWwg
cmVjb3JkcyBzaG91bGQgYmUgY29sbGFwc2VkLgorICAgICAgICBWaXJ0dWFsbHkgbGlua2VkIGV2
ZW50cyBzaG91bGQgYmUgbmVzdGVkIGluIFRpbWVsaW5lIGxpa2UgU2VuZCBSZXF1ZXN0IGFuZAor
ICAgICAgICBjb3JyZXNwb25kaW5nIFJlY2VpdmVkIFJlc3BvbmNlLCBUaW1lciBJbnN0YWxsIGFu
ZCBUaW1lciBGaXJlIGV0Yy4KKyAgICAgICAgSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNlZSBN
YWluIFJlc291cmNlIHJlcXVlc3QuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM2MTIyCisKKyAgICAgICAgKiBpbnNwZWN0b3IvdGltZWxpbmUtbmV0
d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL3RpbWVsaW5l
LXRlc3QuanM6CisgICAgICAgIChmcm9udGVuZF9nZXRUaW1lbGluZVJlc3VsdHMpOgorCiAyMDEw
LTAzLTE3ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+CiAKICAgICAgICAgRGlz
YWJsZSBuZXcgcGx1Z2luIHRlc3RzIGZyb20gcjU2MDc5IG9uIEd0ayBhbmQgUXQsIHNpbmNlIHRo
ZXkgYXJlIGZhaWxpbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxp
bmUtbmV0d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
dGltZWxpbmUtbmV0d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQKaW5kZXggYTNmNzNjMC4uY2Zi
YTFhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lLW5ldHdvcmst
cmVzb3VyY2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGlu
ZS1uZXR3b3JrLXJlc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMjAsNiArMjAsOCBAQCBSZXNvdXJj
ZVJlY2VpdmVSZXNwb25zZSBQcm9wZXJ0aWVzOgogKy0gZXhwZWN0ZWRDb250ZW50TGVuZ3RoIDog
MjEwCiArLSB1cmwgOiAqIERFRklORUQgKgogKyB9CisrIGNoaWxkcmVuIDogKiBERUZJTkVEICoK
KysgZW5kVGltZSA6ICogREVGSU5FRCAqCiArIHR5cGUgOiAxMwogCiBSZXNvdXJjZUZpbmlzaCBQ
cm9wZXJ0aWVzOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lLXRl
c3QuanMgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUtdGVzdC5qcwppbmRleCBiMDIy
NTI0Li4xODgwYjg0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUt
dGVzdC5qcworKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUtdGVzdC5qcwpAQCAt
MTM2LDYgKzEzNiw2IEBAIGZ1bmN0aW9uIGZyb250ZW5kX2dldFRpbWVsaW5lUmVzdWx0cygpIHsK
ICAgICAgICAgICAgIGFkZFJlY29yZHMocmVjb3Jkc1tpXS5jaGlsZHJlbik7CiAgICAgICAgIH0K
ICAgICB9Ci0gICAgYWRkUmVjb3JkcyhXZWJJbnNwZWN0b3IucGFuZWxzLnRpbWVsaW5lLl9yZWNv
cmRzKTsKKyAgICBhZGRSZWNvcmRzKFdlYkluc3BlY3Rvci5wYW5lbHMudGltZWxpbmUuX3Jvb3RS
ZWNvcmQuY2hpbGRyZW4pOwogICAgIHJldHVybiByZXN1bHQ7CiB9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDJlZTY5YmIuLjM0ZmVkZjgg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsNDYgQEAKKzIwMTAtMDMtMTcgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgV2ViSW5zcGVjdG9yOiBUaW1lbGluZSBpbXByb3ZlbWVudHMgLSBuZXh0IGl0ZXJhdGlvbi4K
KyAgICAgICAgVGhlIHRvcCBsZXZlbCByZWNvcmRzIHNob3VsZCBiZSBjb2xsYXBzZWQuCisgICAg
ICAgIFZpcnR1YWxseSBsaW5rZWQgZXZlbnRzIHNob3VsZCBiZSBuZXN0ZWQgaW4gVGltZWxpbmUg
bGlrZSBTZW5kIFJlcXVlc3QgYW5kCisgICAgICAgIGNvcnJlc3BvbmRpbmcgUmVjZWl2ZWQgUmVz
cG9uY2UsIFRpbWVyIEluc3RhbGwgYW5kIFRpbWVyIEZpcmUgZXRjLgorICAgICAgICBJdCBzaG91
bGQgYmUgcG9zc2libGUgdG8gc2VlIE1haW4gUmVzb3VyY2UgcmVxdWVzdC4KKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYxMjIKKworICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckNvbnRyb2xsZXI6OnJlc2V0U2NyaXB0T2JqZWN0cyk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvclRpbWVsaW5lQWdlbnQ6OndpbGxSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSk6CisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaDoK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVQYW5lbC5wcm90b3R5cGUuX2NyZWF0ZVN0YXR1c2JhckJ1dHRvbnMpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLmFkZFJlY29yZFRvVGltZWxpbmUp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9maW5kUGFy
ZW50UmVjb3JkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlw
ZS5faW5uZXJBZGRSZWNvcmRUb1RpbWVsaW5lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1l
bGluZVBhbmVsLnByb3RvdHlwZS5yZXNpemUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVs
aW5lUGFuZWwucHJvdG90eXBlLl9jcmVhdGVUb3BMZXZlbFJlY29yZCk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUucmVzZXQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9jbGVhbik6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX3JlZnJlc2gpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9yZWZyZXNoUmVjb3Jkcyk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX2FkZFRvUmVjb3Jkc1dpbmRv
dyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3RvdHlwZS5j
b21wdXRlQmFyR3JhcGhQZXJjZW50YWdlcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxp
bmVDYWxjdWxhdG9yLnByb3RvdHlwZS51cGRhdGVCb3VuZGFyaWVzKToKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5UaW1lbGluZVJlY29yZEdyYXBoUm93KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5U
aW1lbGluZVJlY29yZEdyYXBoUm93LnByb3RvdHlwZS51cGRhdGUpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3JkKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUuZ2V0IGNoaWxkcmVu
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5w
cm90b3R5cGUuX2dlbmVyYXRlUG9wdXBDb250ZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL2luc3BlY3Rvci5jc3M6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorCiAyMDEwLTAzLTE3ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGIvV2ViQ29yZS9FbmdsaXNoLmxw
cm9qL2xvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggNzM1NWIzNy4uZDAwYTVjMSAxMDA2NDQKQmlu
YXJ5IGZpbGVzIGEvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMgYW5k
IGIvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMgZGlmZmVyCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCmluZGV4IGU1ZjIyMmYuLjU3ZGM4
NGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3Bw
CisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC02Mjcs
OSArNjI3LDYgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpyZXNldFNjcmlwdE9iamVjdHMo
KQogI2lmIEVOQUJMRShXT1JLRVJTKQogICAgIG1fd29ya2Vycy5jbGVhcigpOwogI2VuZGlmCi0g
ICAgaWYgKG1fdGltZWxpbmVBZ2VudCkKLSAgICAgICAgbV90aW1lbGluZUFnZW50LT5yZXNldCgp
OwotCiAgICAgbV9mcm9udGVuZC0+cmVzZXQoKTsKICAgICBtX2RvbUFnZW50LT5yZXNldCgpOwog
fQpAQCAtOTAwLDkgKzg5Nyw2IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6d2lsbFNlbmRS
ZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyCiAKIHZvaWQgSW5z
cGVjdG9yQ29udHJvbGxlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Ci0gICAgaWYgKG1fdGlt
ZWxpbmVBZ2VudCkKLSAgICAgICAgbV90aW1lbGluZUFnZW50LT5kaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZShpZGVudGlmaWVyLCByZXNwb25zZSk7Ci0KICAgICBSZWZQdHI8SW5zcGVjdG9yUmVz
b3VyY2U+IHJlc291cmNlID0gZ2V0VHJhY2tlZFJlc291cmNlKGlkZW50aWZpZXIpOwogICAgIGlm
ICghcmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKQEAgLTkyOCw5ICs5MjIsNiBAQCB2b2lkIElu
c3BlY3RvckNvbnRyb2xsZXI6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgaW50CiAKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlkRmluaXNoTG9h
ZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiB7Ci0gICAgaWYgKG1fdGltZWxpbmVBZ2Vu
dCkKLSAgICAgICAgbV90aW1lbGluZUFnZW50LT5kaWRGaW5pc2hMb2FkaW5nUmVzb3VyY2UoaWRl
bnRpZmllciwgZmFsc2UpOwotCiAgICAgUmVmUHRyPEluc3BlY3RvclJlc291cmNlPiByZXNvdXJj
ZSA9IGdldFRyYWNrZWRSZXNvdXJjZShpZGVudGlmaWVyKTsKICAgICBpZiAoIXJlc291cmNlKQog
ICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JU
aW1lbGluZUFnZW50LmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdl
bnQuY3BwCmluZGV4IDA2MjRjODcuLjJiZjY2ZWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCkBAIC0xODcsMTIgKzE4NywyNCBAQCB2b2lkIEluc3Bl
Y3RvclRpbWVsaW5lQWdlbnQ6OndpbGxTZW5kUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgYgogICAgIG1fZnJvbnRlbmQtPmFkZFJlY29yZFRvVGltZWxpbmUocmVjb3Jk
KTsKIH0KIAotdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50Ojp3aWxsUmVjZWl2ZVJlc291
cmNlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiB7Ci0gICAgU2NyaXB0T2JqZWN0IHJl
Y29yZCA9IFRpbWVsaW5lUmVjb3JkRmFjdG9yeTo6Y3JlYXRlR2VuZXJpY1JlY29yZChtX2Zyb250
ZW5kLCBjdXJyZW50VGltZUluTWlsbGlzZWNvbmRzKCkpOwotICAgIHJlY29yZC5zZXQoImRhdGEi
LCBUaW1lbGluZVJlY29yZEZhY3Rvcnk6OmNyZWF0ZVJlc291cmNlUmVjZWl2ZVJlc3BvbnNlRGF0
YShtX2Zyb250ZW5kLCBpZGVudGlmaWVyLCByZXNwb25zZSkpOwotICAgIHJlY29yZC5zZXQoInR5
cGUiLCBSZXNvdXJjZVJlY2VpdmVSZXNwb25zZVRpbWVsaW5lUmVjb3JkVHlwZSk7Ci0gICAgbV9m
cm9udGVuZC0+YWRkUmVjb3JkVG9UaW1lbGluZShyZWNvcmQpOworICAgIHB1c2hDdXJyZW50UmVj
b3JkKFRpbWVsaW5lUmVjb3JkRmFjdG9yeTo6Y3JlYXRlUmVjZWl2ZVJlc291cmNlRGF0YShtX2Zy
b250ZW5kLCBpZGVudGlmaWVyKSwgUmVjZWl2ZVJlc291cmNlRGF0YVRpbWVsaW5lUmVjb3JkVHlw
ZSk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6ZGlkUmVjZWl2ZVJlc291cmNl
RGF0YSgpCit7CisgICAgZGlkQ29tcGxldGVDdXJyZW50UmVjb3JkKFJlY2VpdmVSZXNvdXJjZURh
dGFUaW1lbGluZVJlY29yZFR5cGUpOworfQorICAgIAordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFn
ZW50Ojp3aWxsUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3sKKyAgICBwdXNoQ3VycmVudFJl
Y29yZChUaW1lbGluZVJlY29yZEZhY3Rvcnk6OmNyZWF0ZVJlc291cmNlUmVjZWl2ZVJlc3BvbnNl
RGF0YShtX2Zyb250ZW5kLCBpZGVudGlmaWVyLCByZXNwb25zZSksIFJlc291cmNlUmVjZWl2ZVJl
c3BvbnNlVGltZWxpbmVSZWNvcmRUeXBlKTsKK30KKwordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFn
ZW50OjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSgpCit7CisgICAgZGlkQ29tcGxldGVDdXJy
ZW50UmVjb3JkKFJlc291cmNlUmVjZWl2ZVJlc3BvbnNlVGltZWxpbmVSZWNvcmRUeXBlKTsKIH0K
IAogdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRGaW5pc2hMb2FkaW5nUmVzb3VyY2Uo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBib29sIGRpZEZhaWwpCmRpZmYgLS1naXQgYS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmggYi9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmgKaW5kZXggN2Y2NjQ2Yy4uNTZjOTE4YyAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oCisrKyBiL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaApAQCAtNjQsNiArNjQsNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIFJlc291cmNlUmVjZWl2ZVJlc3BvbnNlVGlt
ZWxpbmVSZWNvcmRUeXBlID0gMTMsCiAgICAgICAgIFJlc291cmNlRmluaXNoVGltZWxpbmVSZWNv
cmRUeXBlID0gMTQsCiAgICAgICAgIEZ1bmN0aW9uQ2FsbFRpbWVsaW5lUmVjb3JkVHlwZSA9IDE1
LAorICAgICAgICBSZWNlaXZlUmVzb3VyY2VEYXRhVGltZWxpbmVSZWNvcmRUeXBlID0gMTYsCiAg
ICAgfTsKIAogICAgIGNsYXNzIEluc3BlY3RvclRpbWVsaW5lQWdlbnQgOiBwdWJsaWMgTm9uY29w
eWFibGUgewpAQCAtMTA5LDkgKzExMCwxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZvaWQgZGlkTWFya1RpbWVsaW5lKGNvbnN0IFN0cmluZyYpOwogCiAgICAgICAgIHZvaWQgd2ls
bFNlbmRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZywgYm9vbCBpc01haW5SZXNvdXJjZSwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNl
UmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgICAg
ICB2b2lkIHdpbGxSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9u
c2UoKTsKICAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nUmVzb3VyY2UodW5zaWduZWQgbG9u
ZywgYm9vbCBkaWRGYWlsKTsKLQorICAgICAgICB2b2lkIHdpbGxSZWNlaXZlUmVzb3VyY2VEYXRh
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291
cmNlRGF0YSgpOworICAgICAgICAKICAgICAgICAgc3RhdGljIGludCBpbnN0YW5jZUNvdW50KCkg
eyByZXR1cm4gc19pbnN0YW5jZUNvdW50OyB9CiAgICAgICAgIHN0YXRpYyBJbnNwZWN0b3JUaW1l
bGluZUFnZW50KiByZXRyaWV2ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CiAKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5jcHAgYi9XZWJDb3Jl
L2luc3BlY3Rvci9UaW1lbGluZVJlY29yZEZhY3RvcnkuY3BwCmluZGV4IDczOTgxYTIuLjJhZDA4
OWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5j
cHAKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvVGltZWxpbmVSZWNvcmRGYWN0b3J5LmNwcApAQCAt
MTQ4LDYgKzE0OCwxMyBAQCBTY3JpcHRPYmplY3QgVGltZWxpbmVSZWNvcmRGYWN0b3J5OjpjcmVh
dGVSZXNvdXJjZUZpbmlzaERhdGEoSW5zcGVjdG9yRnJvbnRlbmQqCiAgICAgcmV0dXJuIGRhdGE7
CiB9CiAKK1NjcmlwdE9iamVjdCBUaW1lbGluZVJlY29yZEZhY3Rvcnk6OmNyZWF0ZVJlY2VpdmVS
ZXNvdXJjZURhdGEoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpCit7CisgICAgU2NyaXB0T2JqZWN0IGRhdGEgPSBmcm9udGVuZC0+bmV3U2NyaXB0
T2JqZWN0KCk7CisgICAgZGF0YS5zZXQoImlkZW50aWZpZXIiLCBpZGVudGlmaWVyKTsKKyAgICBy
ZXR1cm4gZGF0YTsKK30KKyAgICAKIFNjcmlwdE9iamVjdCBUaW1lbGluZVJlY29yZEZhY3Rvcnk6
OmNyZWF0ZVBhaW50RGF0YShJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQsIGNvbnN0IEludFJl
Y3QmIHJlY3QpCiB7CiAgICAgU2NyaXB0T2JqZWN0IGRhdGEgPSBmcm9udGVuZC0+bmV3U2NyaXB0
T2JqZWN0KCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9UaW1lbGluZVJlY29yZEZh
Y3RvcnkuaCBiL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5oCmluZGV4
IDkxMGMyOTUuLjhkYWY5MTUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5l
UmVjb3JkRmFjdG9yeS5oCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFj
dG9yeS5oCkBAIC02Nyw2ICs2Nyw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBz
dGF0aWMgU2NyaXB0T2JqZWN0IGNyZWF0ZVJlc291cmNlUmVjZWl2ZVJlc3BvbnNlRGF0YShJbnNw
ZWN0b3JGcm9udGVuZCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYpOwogCisgICAgICAgIHN0YXRpYyBTY3JpcHRPYmplY3QgY3JlYXRlUmVjZWl2ZVJl
c291cmNlRGF0YShJbnNwZWN0b3JGcm9udGVuZCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7
CisgICAgICAgIAogICAgICAgICBzdGF0aWMgU2NyaXB0T2JqZWN0IGNyZWF0ZVJlc291cmNlRmlu
aXNoRGF0YShJbnNwZWN0b3JGcm9udGVuZCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgYm9v
bCBkaWRGYWlsKTsKIAogICAgICAgICBzdGF0aWMgU2NyaXB0T2JqZWN0IGNyZWF0ZVBhaW50RGF0
YShJbnNwZWN0b3JGcm9udGVuZCosIGNvbnN0IEludFJlY3QmKTsKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZUFnZW50LmpzIGIvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1RpbWVsaW5lQWdlbnQuanMKaW5kZXggNTBkY2UxMC4uMTNmOTM3ZiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lQWdlbnQuanMKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lQWdlbnQuanMKQEAgLTQ5LDcg
KzQ5LDggQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZSA9IHsKICAgICBS
ZXNvdXJjZVNlbmRSZXF1ZXN0IDogMTIsCiAgICAgUmVzb3VyY2VSZWNlaXZlUmVzcG9uc2UgOiAx
MywKICAgICBSZXNvdXJjZUZpbmlzaCA6IDE0LAotICAgIEZ1bmN0aW9uQ2FsbCA6IDE1CisgICAg
RnVuY3Rpb25DYWxsIDogMTUsCisgICAgUmVzb3VyY2VSZWNlaXZlRGF0YTogMTYKIH07CiAKIFdl
Ykluc3BlY3Rvci5hZGRSZWNvcmRUb1RpbWVsaW5lID0gZnVuY3Rpb24ocmVjb3JkKSB7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qcyBiL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzCmluZGV4IGVjZDlhMGMu
LjcwMDdjNzMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGlu
ZVBhbmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVs
LmpzCkBAIC03OCw3ICs3OCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsID0gZnVuY3Rp
b24oKQogCiAgICAgdGhpcy5fY3JlYXRlU3RhdHVzYmFyQnV0dG9ucygpOwogCi0gICAgdGhpcy5f
cmVjb3JkcyA9IFtdOworICAgIHRoaXMuX3Jvb3RSZWNvcmQgPSB0aGlzLl9jcmVhdGVSb290UmVj
b3JkKCk7CiAgICAgdGhpcy5fc2VuZFJlcXVlc3RSZWNvcmRzID0ge307CiAgICAgdGhpcy5fdGlt
ZXJSZWNvcmRzID0ge307CiAKQEAgLTE0MCw2ICsxNDAsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxp
bmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZWNvcmRTdHlsZXNbcmVjb3JkVHlw
ZXMuUmVzb3VyY2VSZWNlaXZlUmVzcG9uc2VdID0geyB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKCJSZWNlaXZlIFJlc3BvbnNlIiksIGNhdGVnb3J5OiB0aGlzLmNhdGVnb3JpZXMubG9hZGlu
ZyB9OwogICAgICAgICAgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5cGVzLlJlc291cmNlRmluaXNo
XSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0cmluZygiRmluaXNoIExvYWRpbmciKSwgY2F0
ZWdvcnk6IHRoaXMuY2F0ZWdvcmllcy5sb2FkaW5nIH07CiAgICAgICAgICAgICByZWNvcmRTdHls
ZXNbcmVjb3JkVHlwZXMuRnVuY3Rpb25DYWxsXSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0
cmluZygiRnVuY3Rpb24gQ2FsbCIpLCBjYXRlZ29yeTogdGhpcy5jYXRlZ29yaWVzLnNjcmlwdGlu
ZyB9OworICAgICAgICAgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5cGVzLlJlc291cmNlUmVjZWl2
ZURhdGFdID0geyB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZWNlaXZlIERhdGEiKSwg
Y2F0ZWdvcnk6IHRoaXMuY2F0ZWdvcmllcy5sb2FkaW5nIH07CiAgICAgICAgICAgICB0aGlzLl9y
ZWNvcmRTdHlsZXNBcnJheSA9IHJlY29yZFN0eWxlczsKICAgICAgICAgfQogICAgICAgICByZXR1
cm4gdGhpcy5fcmVjb3JkU3R5bGVzQXJyYXk7CkBAIC0xODUsMzUgKzE4Niw2MiBAQCBXZWJJbnNw
ZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICAgICAgdGhpcy5f
Y2xlYXJQYW5lbCgpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIHRoaXMuX2lu
bmVyQWRkUmVjb3JkVG9UaW1lbGluZShyZWNvcmQsIHRoaXMuX3JlY29yZHMpOworICAgICAgICB0
aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3JkLCB0aGlzLl9yb290UmVjb3JkKTsK
ICAgICAgICAgdGhpcy5fc2NoZWR1bGVSZWZyZXNoKCk7CiAgICAgfSwKIAotICAgIF9pbm5lckFk
ZFJlY29yZFRvVGltZWxpbmU6IGZ1bmN0aW9uKHJlY29yZCwgY29sbGVjdGlvbikKKyAgICBfZmlu
ZFBhcmVudFJlY29yZDogZnVuY3Rpb24ocmVjb3JkKQogICAgIHsKLSAgICAgICAgdmFyIGZvcm1h
dHRlZFJlY29yZCA9IG5ldyBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNv
cmQocmVjb3JkLCB0aGlzLl9yZWNvcmRTdHlsZXMsIHRoaXMuX3NlbmRSZXF1ZXN0UmVjb3Jkcywg
dGhpcy5fdGltZXJSZWNvcmRzKTsKKyAgICAgICAgdmFyIHJlY29yZFR5cGVzID0gV2ViSW5zcGVj
dG9yLlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZTsKKyAgICAgICAgdmFyIHBhcmVudFJlY29yZDsK
KyAgICAgICAgaWYgKHJlY29yZC50eXBlID09PSByZWNvcmRUeXBlcy5SZXNvdXJjZVJlY2VpdmVS
ZXNwb25zZSB8fAorICAgICAgICAgICAgcmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291
cmNlRmluaXNoIHx8CisgICAgICAgICAgICByZWNvcmQudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVz
b3VyY2VSZWNlaXZlRGF0YSkKKyAgICAgICAgICAgIHBhcmVudFJlY29yZCA9IHRoaXMuX3NlbmRS
ZXF1ZXN0UmVjb3Jkc1tyZWNvcmQuZGF0YS5pZGVudGlmaWVyXTsKKyAgICAgICAgZWxzZSBpZiAo
cmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVzLlRpbWVyRmlyZSkKKyAgICAgICAgICAgIHBhcmVu
dFJlY29yZCA9IHRoaXMuX3RpbWVyUmVjb3Jkc1tyZWNvcmQuZGF0YS50aW1lcklkXTsKKyAgICAg
ICAgcmV0dXJuIHBhcmVudFJlY29yZDsKKyAgICB9LAorCisgICAgX2lubmVyQWRkUmVjb3JkVG9U
aW1lbGluZTogZnVuY3Rpb24ocmVjb3JkLCBwYXJlbnRSZWNvcmQpCisgICAgeworICAgICAgICB2
YXIgY29ubmVjdGVkVG9PbGRSZWNvcmQgPSBmYWxzZTsKKyAgICAgICAgaWYgKHBhcmVudFJlY29y
ZCA9PT0gdGhpcy5fcm9vdFJlY29yZCkgeworICAgICAgICAgICAgdmFyIG5ld1BhcmVudFJlY29y
ZCA9IHRoaXMuX2ZpbmRQYXJlbnRSZWNvcmQocmVjb3JkKTsKKyAgICAgICAgICAgIGlmIChuZXdQ
YXJlbnRSZWNvcmQpIHsKKyAgICAgICAgICAgICAgICBwYXJlbnRSZWNvcmQgPSBuZXdQYXJlbnRS
ZWNvcmQ7CisgICAgICAgICAgICAgICAgY29ubmVjdGVkVG9PbGRSZWNvcmQgPSB0cnVlOworICAg
ICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgdmFyIGZvcm1hdHRlZFJlY29yZCA9IG5l
dyBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQocmVjb3JkLCBwYXJl
bnRSZWNvcmQsIHRoaXMuX3JlY29yZFN0eWxlcywgdGhpcy5fc2VuZFJlcXVlc3RSZWNvcmRzLCB0
aGlzLl90aW1lclJlY29yZHMpOworICAgICAgICBpZiAocGFyZW50UmVjb3JkID09PSB0aGlzLl9y
b290UmVjb3JkKQorICAgICAgICAgICAgZm9ybWF0dGVkUmVjb3JkLmNvbGxhcHNlZCA9IHRydWU7
CiAKICAgICAgICAgLy8gR2x1ZSBzdWJzZXF1ZW50IHJlY29yZHMgd2l0aCBzYW1lIGNhdGVnb3J5
IGFuZCB0aXRsZSB0b2dldGhlciBpZiB0aGV5IGFyZSBjbG9zZXIgdGhhbiAxMDBtcyB0byBlYWNo
IG90aGVyLgotICAgICAgICBpZiAodGhpcy5fbGFzdFJlY29yZCAmJiAoIXJlY29yZC5jaGlsZHJl
biB8fCAhcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCkgJiYKLSAgICAgICAgICAgICAgICB0aGlzLl9s
YXN0UmVjb3JkLmNhdGVnb3J5ID09IGZvcm1hdHRlZFJlY29yZC5jYXRlZ29yeSAmJgotICAgICAg
ICAgICAgICAgIHRoaXMuX2xhc3RSZWNvcmQudGl0bGUgPT0gZm9ybWF0dGVkUmVjb3JkLnRpdGxl
ICYmCi0gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5kZXRhaWxzID09IGZvcm1hdHRl
ZFJlY29yZC5kZXRhaWxzICYmCi0gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5jYWxs
ZXJTY3JpcHROYW1lID09IGZvcm1hdHRlZFJlY29yZC5jYWxsZXJTY3JpcHROYW1lICYmCi0gICAg
ICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lID09IGZvcm1hdHRl
ZFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lICYmCi0gICAgICAgICAgICAgICAgZm9ybWF0dGVkUmVj
b3JkLnN0YXJ0VGltZSAtIHRoaXMuX2xhc3RSZWNvcmQuZW5kVGltZSA8IDAuMSkgewotICAgICAg
ICAgICAgdGhpcy5fbGFzdFJlY29yZC5lbmRUaW1lID0gZm9ybWF0dGVkUmVjb3JkLmVuZFRpbWU7
Ci0gICAgICAgICAgICB0aGlzLl9sYXN0UmVjb3JkLmNvdW50Kys7CisgICAgICAgIHZhciBsYXN0
UmVjb3JkID0gcGFyZW50UmVjb3JkLl9sYXN0UmVjb3JkOworICAgICAgICBpZiAobGFzdFJlY29y
ZCAmJiAoIXJlY29yZC5jaGlsZHJlbiB8fCAhcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCkgJiYKKyAg
ICAgICAgICAgICAgICBsYXN0UmVjb3JkLmNhdGVnb3J5ID09IGZvcm1hdHRlZFJlY29yZC5jYXRl
Z29yeSAmJgorICAgICAgICAgICAgICAgIGxhc3RSZWNvcmQudGl0bGUgPT0gZm9ybWF0dGVkUmVj
b3JkLnRpdGxlICYmCisgICAgICAgICAgICAgICAgbGFzdFJlY29yZC5kZXRhaWxzID09IGZvcm1h
dHRlZFJlY29yZC5kZXRhaWxzICYmCisgICAgICAgICAgICAgICAgbGFzdFJlY29yZC5jYWxsZXJT
Y3JpcHROYW1lID09IGZvcm1hdHRlZFJlY29yZC5jYWxsZXJTY3JpcHROYW1lICYmCisgICAgICAg
ICAgICAgICAgbGFzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lID09IGZvcm1hdHRlZFJlY29yZC5j
YWxsZXJTY3JpcHRMaW5lICYmCisgICAgICAgICAgICAgICAgZm9ybWF0dGVkUmVjb3JkLnN0YXJ0
VGltZSAtIGxhc3RSZWNvcmQuZW5kVGltZSA8IDAuMSkgeworICAgICAgICAgICAgbGFzdFJlY29y
ZC5lbmRUaW1lID0gZm9ybWF0dGVkUmVjb3JkLmVuZFRpbWU7CisgICAgICAgICAgICBsYXN0UmVj
b3JkLmNvdW50Kys7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBjb2xsZWN0aW9uLnB1
c2goZm9ybWF0dGVkUmVjb3JkKTsKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyByZWNvcmQu
Y2hpbGRyZW4gJiYgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsraSkgewotICAgICAgICAg
ICAgICAgIGlmICghZm9ybWF0dGVkUmVjb3JkLmNoaWxkcmVuKQotICAgICAgICAgICAgICAgICAg
ICBmb3JtYXR0ZWRSZWNvcmQuY2hpbGRyZW4gPSBbXTsKLSAgICAgICAgICAgICAgICB2YXIgZm9y
bWF0dGVkQ2hpbGQgPSB0aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3JkLmNoaWxk
cmVuW2ldLCBmb3JtYXR0ZWRSZWNvcmQuY2hpbGRyZW4pOwotICAgICAgICAgICAgICAgIGZvcm1h
dHRlZENoaWxkLnBhcmVudCA9IGZvcm1hdHRlZFJlY29yZDsKKyAgICAgICAgICAgIGZvciAodmFy
IGkgPSAwOyByZWNvcmQuY2hpbGRyZW4gJiYgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsr
aSkKKyAgICAgICAgICAgICAgICB0aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3Jk
LmNoaWxkcmVuW2ldLCBmb3JtYXR0ZWRSZWNvcmQpOworICAgICAgICAgICAgcGFyZW50UmVjb3Jk
Ll9sYXN0UmVjb3JkID0gcmVjb3JkLmNoaWxkcmVuICYmIHJlY29yZC5jaGlsZHJlbi5sZW5ndGgg
PyBudWxsIDogZm9ybWF0dGVkUmVjb3JkOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGNvbm5l
Y3RlZFRvT2xkUmVjb3JkKSB7CisgICAgICAgICAgICB2YXIgcmVjb3JkID0gZm9ybWF0dGVkUmVj
b3JkOworICAgICAgICAgICAgd2hpbGUgKHJlY29yZC5wYXJlbnQgJiYgcmVjb3JkLnBhcmVudC5f
bGFzdENoaWxkRW5kVGltZSA8IHJlY29yZC5fbGFzdENoaWxkRW5kVGltZSkgeworICAgICAgICAg
ICAgICAgIHJlY29yZC5wYXJlbnQuX2xhc3RDaGlsZEVuZFRpbWUgPSByZWNvcmQuX2xhc3RDaGls
ZEVuZFRpbWU7CisgICAgICAgICAgICAgICAgcmVjb3JkID0gcmVjb3JkLnBhcmVudDsKICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIHRoaXMuX2xhc3RSZWNvcmQgPSByZWNvcmQuY2hpbGRyZW4g
JiYgcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCA/IG51bGwgOiBmb3JtYXR0ZWRSZWNvcmQ7CiAgICAg
ICAgIH0KLSAgICAgICAgcmV0dXJuIGZvcm1hdHRlZFJlY29yZDsKICAgICB9LAogCiAgICAgc2V0
U2lkZWJhcldpZHRoOiBmdW5jdGlvbih3aWR0aCkKQEAgLTIzMCwxNyArMjU4LDI5IEBAIFdlYklu
c3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fb3ZlcnZp
ZXdQYW5lLnVwZGF0ZU1haW5WaWV3V2lkdGgod2lkdGgpOwogICAgIH0sCiAKLSAgICByZXNpemU6
IGZ1bmN0aW9uKCkgeworICAgIHJlc2l6ZTogZnVuY3Rpb24oKQorICAgIHsKICAgICAgICAgdGhp
cy5fY2xvc2VSZWNvcmREZXRhaWxzKCk7CiAgICAgICAgIHRoaXMuX3NjaGVkdWxlUmVmcmVzaCgp
OwogICAgIH0sCiAKKyAgICBfY3JlYXRlUm9vdFJlY29yZDogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgdmFyIHJvb3RSZWNvcmQgPSB7fTsKKyAgICAgICAgcm9vdFJlY29yZC5jaGlsZHJlbiA9
IFtdOworICAgICAgICByb290UmVjb3JkLl9sYXN0UmVjb3JkID0gbnVsbDsKKyAgICAgICAgcmV0
dXJuIHJvb3RSZWNvcmQ7CisgICAgfSwKKworICAgIHJlc2V0OiBmdW5jdGlvbigpCisgICAgewor
ICAgIH0sCisKICAgICBfY2xlYXJQYW5lbDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgdGhp
cy5fbGFzdFJlY29yZCA9IG51bGw7CiAgICAgICAgIHRoaXMuX3NlbmRSZXF1ZXN0UmVjb3JkcyA9
IHt9OwogICAgICAgICB0aGlzLl90aW1lclJlY29yZHMgPSB7fTsKLSAgICAgICAgdGhpcy5fcmVj
b3JkcyA9IFtdOworICAgICAgICB0aGlzLl9yb290UmVjb3JkID0gdGhpcy5fY3JlYXRlUm9vdFJl
Y29yZCgpOwogICAgICAgICB0aGlzLl9ib3VuZGFyaWVzQXJlVmFsaWQgPSBmYWxzZTsKICAgICAg
ICAgdGhpcy5fb3ZlcnZpZXdQYW5lLnJlc2V0KCk7CiAgICAgICAgIHRoaXMuX2FkanVzdFNjcm9s
bFBvc2l0aW9uKDApOwpAQCAtMzA0LDcgKzM0NCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBh
bmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogCiAgICAgICAgIGlmICghdGhpcy5fYm91bmRh
cmllc0FyZVZhbGlkKQotICAgICAgICAgICAgdGhpcy5fb3ZlcnZpZXdQYW5lLnVwZGF0ZSh0aGlz
Ll9yZWNvcmRzKTsKKyAgICAgICAgICAgIHRoaXMuX292ZXJ2aWV3UGFuZS51cGRhdGUodGhpcy5f
cm9vdFJlY29yZC5jaGlsZHJlbik7CiAgICAgICAgIHRoaXMuX3JlZnJlc2hSZWNvcmRzKCF0aGlz
Ll9ib3VuZGFyaWVzQXJlVmFsaWQpOwogICAgICAgICB0aGlzLl9ib3VuZGFyaWVzQXJlVmFsaWQg
PSB0cnVlOwogICAgIH0sCkBAIC0zMTYsMTcgKzM1NiwxNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxp
bmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLndpbmRv
d0xlZnQgPSB0aGlzLl9vdmVydmlld1BhbmUud2luZG93TGVmdDsKICAgICAgICAgICAgIHRoaXMu
X2NhbGN1bGF0b3Iud2luZG93UmlnaHQgPSB0aGlzLl9vdmVydmlld1BhbmUud2luZG93UmlnaHQ7
CiAKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fcmVjb3Jkcy5sZW5ndGg7
ICsraSkKLSAgICAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLnVwZGF0ZUJvdW5kYXJpZXMo
dGhpcy5fcmVjb3Jkc1tpXSk7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMu
X3Jvb3RSZWNvcmQuY2hpbGRyZW4ubGVuZ3RoOyArK2kpCisgICAgICAgICAgICAgICAgdGhpcy5f
Y2FsY3VsYXRvci51cGRhdGVCb3VuZGFyaWVzKHRoaXMuX3Jvb3RSZWNvcmQuY2hpbGRyZW5baV0p
OwogCiAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLmNhbGN1bGF0ZVdpbmRvdygpOwogICAg
ICAgICB9CiAKICAgICAgICAgdmFyIHJlY29yZHNJbldpbmRvdyA9IFtdOwotICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IHRoaXMuX3JlY29yZHMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAg
IHZhciByZWNvcmQgPSB0aGlzLl9yZWNvcmRzW2ldOworICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IHRoaXMuX3Jvb3RSZWNvcmQuY2hpbGRyZW4ubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAg
IHZhciByZWNvcmQgPSB0aGlzLl9yb290UmVjb3JkLmNoaWxkcmVuW2ldOwogICAgICAgICAgICAg
dmFyIHBlcmNlbnRhZ2VzID0gdGhpcy5fY2FsY3VsYXRvci5jb21wdXRlQmFyR3JhcGhQZXJjZW50
YWdlcyhyZWNvcmQpOwotICAgICAgICAgICAgaWYgKHBlcmNlbnRhZ2VzLnN0YXJ0IDwgMTAwICYm
IHBlcmNlbnRhZ2VzLmVuZCA+PSAwICYmICFyZWNvcmQuY2F0ZWdvcnkuaGlkZGVuKQorICAgICAg
ICAgICAgaWYgKHBlcmNlbnRhZ2VzLnN0YXJ0IDwgMTAwICYmIHBlcmNlbnRhZ2VzLmVuZFdpdGhD
aGlsZHJlbiA+PSAwICYmICFyZWNvcmQuY2F0ZWdvcnkuaGlkZGVuKQogICAgICAgICAgICAgICAg
IHRoaXMuX2FkZFRvUmVjb3Jkc1dpbmRvdyhyZWNvcmQsIHJlY29yZHNJbldpbmRvdyk7CiAgICAg
ICAgIH0KIApAQCAtNDA3LDcgKzQ0Nyw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgcmVjb3Jkc1dpbmRvdy5wdXNoKHJlY29yZCk7CiAgICAgICAg
IGlmICghcmVjb3JkLmNvbGxhcHNlZCkgewogICAgICAgICAgICAgdmFyIGluZGV4ID0gcmVjb3Jk
c1dpbmRvdy5sZW5ndGg7Ci0gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgcmVjb3JkLmNoaWxk
cmVuICYmIGkgPCByZWNvcmQuY2hpbGRyZW4ubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsraSkKICAgICAgICAgICAg
ICAgICB0aGlzLl9hZGRUb1JlY29yZHNXaW5kb3cocmVjb3JkLmNoaWxkcmVuW2ldLCByZWNvcmRz
V2luZG93KTsKICAgICAgICAgICAgIHJlY29yZC52aXNpYmxlQ2hpbGRyZW5Db3VudCA9IHJlY29y
ZHNXaW5kb3cubGVuZ3RoIC0gaW5kZXg7CiAgICAgICAgIH0KQEAgLTQ2MSw3ICs1MDEsMjIgQEAg
V2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUgPSB7CiAgICAgewogICAg
ICAgICB2YXIgc3RhcnQgPSAocmVjb3JkLnN0YXJ0VGltZSAtIHRoaXMubWluaW11bUJvdW5kYXJ5
KSAvIHRoaXMuYm91bmRhcnlTcGFuICogMTAwOwogICAgICAgICB2YXIgZW5kID0gKHJlY29yZC5l
bmRUaW1lIC0gdGhpcy5taW5pbXVtQm91bmRhcnkpIC8gdGhpcy5ib3VuZGFyeVNwYW4gKiAxMDA7
Ci0gICAgICAgIHJldHVybiB7c3RhcnQ6IHN0YXJ0LCBlbmQ6IGVuZH07CisgICAgICAgIHZhciBl
bmRXaXRoQ2hpbGRyZW4gPSAocmVjb3JkLl9sYXN0Q2hpbGRFbmRUaW1lIC0gdGhpcy5taW5pbXVt
Qm91bmRhcnkpIC8gdGhpcy5ib3VuZGFyeVNwYW4gKiAxMDA7CisgICAgICAgIHJldHVybiB7c3Rh
cnQ6IHN0YXJ0LCBlbmQ6IGVuZCwgZW5kV2l0aENoaWxkcmVuOiBlbmRXaXRoQ2hpbGRyZW59Owor
ICAgIH0sCisKKyAgICBjb21wdXRlQmFyR3JhcGhXaW5kb3dQb3NpdGlvbjogZnVuY3Rpb24ocmVj
b3JkLCBjbGllbnRXaWR0aCwgZXhwYW5kT2Zmc2V0KQorICAgIHsKKyAgICAgICAgY29uc3QgbWlu
V2lkdGggPSA1OworICAgICAgICBjb25zdCBib3JkZXJXaWR0aCA9IDQ7CisgICAgICAgIHZhciB3
b3JraW5nQXJlYSA9IGNsaWVudFdpZHRoIC0gZXhwYW5kT2Zmc2V0IC0gbWluV2lkdGggLSBib3Jk
ZXJXaWR0aDsKKyAgICAgICAgdmFyIHBlcmNlbnRhZ2VzID0gdGhpcy5jb21wdXRlQmFyR3JhcGhQ
ZXJjZW50YWdlcyhyZWNvcmQpOworICAgICAgICB2YXIgbGVmdCA9IHBlcmNlbnRhZ2VzLnN0YXJ0
IC8gMTAwICogd29ya2luZ0FyZWE7CisgICAgICAgIHZhciB3aWR0aCA9IChwZXJjZW50YWdlcy5l
bmQgLSBwZXJjZW50YWdlcy5zdGFydCkgLyAxMDAgKiB3b3JraW5nQXJlYSArIG1pbldpZHRoOwor
ICAgICAgICB2YXIgd2lkdGhXaXRoQ2hpbGRyZW4gPSAgKHBlcmNlbnRhZ2VzLmVuZFdpdGhDaGls
ZHJlbiAtIHBlcmNlbnRhZ2VzLnN0YXJ0KSAvIDEwMCAqIHdvcmtpbmdBcmVhOworICAgICAgICBp
ZiAocGVyY2VudGFnZXMuZW5kV2l0aENoaWxkcmVuID4gcGVyY2VudGFnZXMuZW5kKQorICAgICAg
ICAgICAgd2lkdGhXaXRoQ2hpbGRyZW4gKz0gYm9yZGVyV2lkdGggKyBtaW5XaWR0aDsKKyAgICAg
ICAgcmV0dXJuIHtsZWZ0OiBsZWZ0LCB3aWR0aDogd2lkdGgsIHdpZHRoV2l0aENoaWxkcmVuOiB3
aWR0aFdpdGhDaGlsZHJlbn07CiAgICAgfSwKIAogICAgIGNhbGN1bGF0ZVdpbmRvdzogZnVuY3Rp
b24oKQpAQCAtNDgzLDcgKzUzOCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3Iu
cHJvdG90eXBlID0gewogICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkg
PT09IC0xIHx8IGxvd2VyQm91bmQgPCB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSkKICAg
ICAgICAgICAgIHRoaXMuX2Fic29sdXRlTWluaW11bUJvdW5kYXJ5ID0gbG93ZXJCb3VuZDsKIAot
ICAgICAgICB2YXIgdXBwZXJCb3VuZCA9IHJlY29yZC5lbmRUaW1lOworICAgICAgICB2YXIgdXBw
ZXJCb3VuZCA9IHJlY29yZC5fbGFzdENoaWxkRW5kVGltZTsKICAgICAgICAgaWYgKHRoaXMuX2Fi
c29sdXRlTWF4aW11bUJvdW5kYXJ5ID09PSAtMSB8fCB1cHBlckJvdW5kID4gdGhpcy5fYWJzb2x1
dGVNYXhpbXVtQm91bmRhcnkpCiAgICAgICAgICAgICB0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3Vu
ZGFyeSA9IHVwcGVyQm91bmQ7CiAgICAgfSwKQEAgLTU1OSw2ICs2MTQsMTEgQEAgV2ViSW5zcGVj
dG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cgPSBmdW5jdGlvbihncmFwaENvbnRhaW5lciwgc2No
ZWR1bGVSZWZyZXNoLAogICAgIHRoaXMuX2JhckFyZWFFbGVtZW50LmNsYXNzTmFtZSA9ICJ0aW1l
bGluZS1ncmFwaC1iYXItYXJlYSI7CiAgICAgdGhpcy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMu
X2JhckFyZWFFbGVtZW50KTsKIAorICAgIHRoaXMuX2JhcldpdGhDaGlsZHJlbkVsZW1lbnQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICB0aGlzLl9iYXJXaXRoQ2hpbGRyZW5F
bGVtZW50LmNsYXNzTmFtZSA9ICJ0aW1lbGluZS1ncmFwaC1iYXIgd2l0aC1jaGlsZHJlbiI7Cisg
ICAgdGhpcy5fYmFyV2l0aENoaWxkcmVuRWxlbWVudC5yb3cgPSB0aGlzOworICAgIHRoaXMuX2Jh
ckFyZWFFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX2JhcldpdGhDaGlsZHJlbkVsZW1lbnQpOwor
CiAgICAgdGhpcy5fYmFyRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwog
ICAgIHRoaXMuX2JhckVsZW1lbnQuY2xhc3NOYW1lID0gInRpbWVsaW5lLWdyYXBoLWJhciI7CiAg
ICAgdGhpcy5fYmFyRWxlbWVudC5yb3cgPSB0aGlzOwpAQCAtNTgxLDIyICs2NDEsMTggQEAgV2Vi
SW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cgPSBmdW5jdGlvbihncmFwaENvbnRhaW5l
ciwgc2NoZWR1bGVSZWZyZXNoLAogV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cu
cHJvdG90eXBlID0gewogICAgIHVwZGF0ZTogZnVuY3Rpb24ocmVjb3JkLCBpc0V2ZW4sIGNhbGN1
bGF0b3IsIGNsaWVudFdpZHRoLCBleHBhbmRPZmZzZXQsIGluZGV4KQogICAgIHsKLSAgICAgICAg
Y29uc3QgbWluV2lkdGggPSA1OwotICAgICAgICBjb25zdCBib3JkZXJXaWR0aCA9IDQ7Ci0gICAg
ICAgIHZhciB3b3JraW5nQXJlYSA9IGNsaWVudFdpZHRoIC0gZXhwYW5kT2Zmc2V0IC0gbWluV2lk
dGggLSBib3JkZXJXaWR0aDsKICAgICAgICAgdGhpcy5fcmVjb3JkID0gcmVjb3JkOwogICAgICAg
ICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gInRpbWVsaW5lLWdyYXBoLXNpZGUgdGltZWxpbmUt
Y2F0ZWdvcnktIiArIHJlY29yZC5jYXRlZ29yeS5uYW1lICsgKGlzRXZlbiA/ICIgZXZlbiIgOiAi
Iik7Ci0gICAgICAgIHZhciBwZXJjZW50YWdlcyA9IGNhbGN1bGF0b3IuY29tcHV0ZUJhckdyYXBo
UGVyY2VudGFnZXMocmVjb3JkKTsKLSAgICAgICAgdmFyIGxlZnQgPSBwZXJjZW50YWdlcy5zdGFy
dCAvIDEwMCAqIHdvcmtpbmdBcmVhOwotICAgICAgICB2YXIgd2lkdGggPSAocGVyY2VudGFnZXMu
ZW5kIC0gcGVyY2VudGFnZXMuc3RhcnQpIC8gMTAwICogd29ya2luZ0FyZWE7Ci0gICAgICAgIHdp
ZHRoID0gd2lkdGggPiBtaW5XaWR0aCA/IHdpZHRoIDogbWluV2lkdGg7Ci0gICAgICAgIHRoaXMu
X2JhckVsZW1lbnQuc3R5bGUubGVmdCA9IChsZWZ0ICsgZXhwYW5kT2Zmc2V0KSArICJweCI7Ci0g
ICAgICAgIHRoaXMuX2JhckVsZW1lbnQuc3R5bGUud2lkdGggPSB3aWR0aCArICJweCI7CisgICAg
ICAgIHZhciBiYXJQb3NpdGlvbiA9IGNhbGN1bGF0b3IuY29tcHV0ZUJhckdyYXBoV2luZG93UG9z
aXRpb24ocmVjb3JkLCBjbGllbnRXaWR0aCwgZXhwYW5kT2Zmc2V0KTsKKyAgICAgICAgdGhpcy5f
YmFyV2l0aENoaWxkcmVuRWxlbWVudC5zdHlsZS5sZWZ0ID0gYmFyUG9zaXRpb24ubGVmdCArIGV4
cGFuZE9mZnNldCArICJweCI7CisgICAgICAgIHRoaXMuX2JhcldpdGhDaGlsZHJlbkVsZW1lbnQu
c3R5bGUud2lkdGggPSBiYXJQb3NpdGlvbi53aWR0aFdpdGhDaGlsZHJlbiArICJweCI7CisgICAg
ICAgIHRoaXMuX2JhckVsZW1lbnQuc3R5bGUubGVmdCA9IGJhclBvc2l0aW9uLmxlZnQgKyBleHBh
bmRPZmZzZXQgKyAicHgiOworICAgICAgICB0aGlzLl9iYXJFbGVtZW50LnN0eWxlLndpZHRoID0g
IGJhclBvc2l0aW9uLndpZHRoICsgInB4IjsKIAotICAgICAgICBpZiAocmVjb3JkLnZpc2libGVD
aGlsZHJlbkNvdW50KSB7CisgICAgICAgIGlmIChyZWNvcmQuY2hpbGRyZW4ubGVuZ3RoKSB7CiAg
ICAgICAgICAgICB0aGlzLl9leHBhbmRFbGVtZW50LnN0eWxlLnRvcCA9IGluZGV4ICogdGhpcy5f
cm93SGVpZ2h0ICsgInB4IjsKLSAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuc3R5bGUu
bGVmdCA9IGxlZnQgKyAicHgiOwotICAgICAgICAgICAgdGhpcy5fZXhwYW5kRWxlbWVudC5zdHls
ZS53aWR0aCA9IE1hdGgubWF4KDEyLCB3aWR0aCArIDI1KSArICJweCI7CisgICAgICAgICAgICB0
aGlzLl9leHBhbmRFbGVtZW50LnN0eWxlLmxlZnQgPSBiYXJQb3NpdGlvbi5sZWZ0ICsgInB4IjsK
KyAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuc3R5bGUud2lkdGggPSBNYXRoLm1heCgx
MiwgYmFyUG9zaXRpb24ud2lkdGggKyAyNSkgKyAicHgiOwogICAgICAgICAgICAgaWYgKCFyZWNv
cmQuY29sbGFwc2VkKSB7CiAgICAgICAgICAgICAgICAgdGhpcy5fZXhwYW5kRWxlbWVudC5zdHls
ZS5oZWlnaHQgPSAocmVjb3JkLnZpc2libGVDaGlsZHJlbkNvdW50ICsgMSkgKiB0aGlzLl9yb3dI
ZWlnaHQgKyAicHgiOwogICAgICAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuYWRkU3R5
bGVDbGFzcygidGltZWxpbmUtZXhwYW5kYWJsZS1leHBhbmRlZCIpOwpAQCAtNjI1LDExICs2ODEs
MTMgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cucHJvdG90eXBlID0gewog
ICAgIH0KIH0KIAotV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3JkID0g
ZnVuY3Rpb24ocmVjb3JkLCByZWNvcmRTdHlsZXMsIHNlbmRSZXF1ZXN0UmVjb3JkcywgdGltZXJS
ZWNvcmRzKQorV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3JkID0gZnVu
Y3Rpb24ocmVjb3JkLCBwYXJlbnRSZWNvcmQsIHJlY29yZFN0eWxlcywgc2VuZFJlcXVlc3RSZWNv
cmRzLCB0aW1lclJlY29yZHMpCiB7CiAgICAgdmFyIHJlY29yZFR5cGVzID0gV2ViSW5zcGVjdG9y
LlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZTsKICAgICB2YXIgc3R5bGUgPSByZWNvcmRTdHlsZXNb
cmVjb3JkLnR5cGVdOwogCisgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnRSZWNvcmQ7CisgICAgcGFy
ZW50UmVjb3JkLmNoaWxkcmVuLnB1c2godGhpcyk7CiAgICAgdGhpcy5jYXRlZ29yeSA9IHN0eWxl
LmNhdGVnb3J5OwogICAgIHRoaXMudGl0bGUgPSBzdHlsZS50aXRsZTsKICAgICB0aGlzLnN0YXJ0
VGltZSA9IHJlY29yZC5zdGFydFRpbWUgLyAxMDAwOwpAQCAtNjM3LDYgKzY5NSw3IEBAIFdlYklu
c3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZCA9IGZ1bmN0aW9uKHJlY29yZCwg
cmVjb3JkU3R5bGVzLCBzZW5kCiAgICAgdGhpcy5jb3VudCA9IDE7CiAgICAgdGhpcy50eXBlID0g
cmVjb3JkLnR5cGU7CiAgICAgdGhpcy5lbmRUaW1lID0gKHR5cGVvZiByZWNvcmQuZW5kVGltZSAh
PT0gInVuZGVmaW5lZCIpID8gcmVjb3JkLmVuZFRpbWUgLyAxMDAwIDogdGhpcy5zdGFydFRpbWU7
CisgICAgdGhpcy5fbGFzdENoaWxkRW5kVGltZSA9IHRoaXMuZW5kVGltZTsKICAgICB0aGlzLm9y
aWdpbmFsUmVjb3JkRm9yVGVzdHMgPSByZWNvcmQ7CiAgICAgdGhpcy5jYWxsZXJTY3JpcHROYW1l
ID0gcmVjb3JkLmNhbGxlclNjcmlwdE5hbWU7CiAgICAgdGhpcy5jYWxsZXJTY3JpcHRMaW5lID0g
cmVjb3JkLmNhbGxlclNjcmlwdExpbmU7CkBAIC02NDcsMjIgKzcwNiwxOCBAQCBXZWJJbnNwZWN0
b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQgPSBmdW5jdGlvbihyZWNvcmQsIHJlY29y
ZFN0eWxlcywgc2VuZAogICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVz
LlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlKSB7CiAgICAgICAgIHZhciBzZW5kUmVxdWVzdFJlY29y
ZCA9IHNlbmRSZXF1ZXN0UmVjb3Jkc1tyZWNvcmQuZGF0YS5pZGVudGlmaWVyXTsKICAgICAgICAg
aWYgKHNlbmRSZXF1ZXN0UmVjb3JkKSB7IC8vIEZhbHNlIGlmIHdlIHN0YXJ0ZWQgaW5zdHJ1bWVu
dGF0aW9uIGluIHRoZSBtaWRkbGUgb2YgcmVxdWVzdC4KLSAgICAgICAgICAgIHNlbmRSZXF1ZXN0
UmVjb3JkLl9yZXNwb25zZVJlY2VpdmVkRm9ybWF0dGVkVGltZSA9IHRoaXMuc3RhcnRUaW1lOwog
ICAgICAgICAgICAgcmVjb3JkLmRhdGEudXJsID0gc2VuZFJlcXVlc3RSZWNvcmQuZGF0YS51cmw7
Ci0gICAgICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLnN0YXJ0VGlt
ZTsKICAgICAgICAgICAgIC8vIE5vdyB0aGF0IHdlIGhhdmUgcmVzb3VyY2UgaW4gdGhlIGNvbGxl
Y3Rpb24sIHJlY2FsY3VsYXRlIGRldGFpbHMgaW4gb3JkZXIgdG8gZGlzcGxheSBzaG9ydCB1cmwu
CiAgICAgICAgICAgICBzZW5kUmVxdWVzdFJlY29yZC5kZXRhaWxzID0gdGhpcy5fZ2V0UmVjb3Jk
RGV0YWlscyhzZW5kUmVxdWVzdFJlY29yZCwgc2VuZFJlcXVlc3RSZWNvcmRzKTsKLSAgICAgICAg
ICAgIHRoaXMuY2FsbGVyU2NyaXB0TmFtZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLmNhbGxlclNjcmlw
dE5hbWU7Ci0gICAgICAgICAgICB0aGlzLmNhbGxlclNjcmlwdExpbmUgPSBzZW5kUmVxdWVzdFJl
Y29yZC5jYWxsZXJTY3JpcHRMaW5lOwogICAgICAgICB9CisgICAgfSBlbHNlIGlmIChyZWNvcmQu
dHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VSZWNlaXZlRGF0YSkgeworICAgICAgICB2YXIg
c2VuZFJlcXVlc3RSZWNvcmQgPSBzZW5kUmVxdWVzdFJlY29yZHNbcmVjb3JkLmRhdGEuaWRlbnRp
Zmllcl07CisgICAgICAgIGlmIChzZW5kUmVxdWVzdFJlY29yZCkgLy8gRmFsc2UgZm9yIG1haW4g
cmVzb3VyY2UuCisgICAgICAgICAgICByZWNvcmQuZGF0YS51cmwgPSBzZW5kUmVxdWVzdFJlY29y
ZC5kYXRhLnVybDsKICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSByZWNvcmRUeXBlcy5S
ZXNvdXJjZUZpbmlzaCkgewogICAgICAgICB2YXIgc2VuZFJlcXVlc3RSZWNvcmQgPSBzZW5kUmVx
dWVzdFJlY29yZHNbcmVjb3JkLmRhdGEuaWRlbnRpZmllcl07Ci0gICAgICAgIGlmIChzZW5kUmVx
dWVzdFJlY29yZCkgey8vIEZhbHNlIGZvciBtYWluIHJlc291cmNlLgorICAgICAgICBpZiAoc2Vu
ZFJlcXVlc3RSZWNvcmQpIC8vIEZhbHNlIGZvciBtYWluIHJlc291cmNlLgogICAgICAgICAgICAg
cmVjb3JkLmRhdGEudXJsID0gc2VuZFJlcXVlc3RSZWNvcmQuZGF0YS51cmw7Ci0gICAgICAgICAg
ICB0aGlzLnN0YXJ0VGltZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLl9yZXNwb25zZVJlY2VpdmVkRm9y
bWF0dGVkVGltZTsKLSAgICAgICAgICAgIHRoaXMuY2FsbGVyU2NyaXB0TmFtZSA9IHNlbmRSZXF1
ZXN0UmVjb3JkLmNhbGxlclNjcmlwdE5hbWU7Ci0gICAgICAgICAgICB0aGlzLmNhbGxlclNjcmlw
dExpbmUgPSBzZW5kUmVxdWVzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lOwotICAgICAgICB9CiAg
ICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gcmVjb3JkVHlwZXMuVGltZXJJbnN0YWxsKSB7
CiAgICAgICAgIHRoaXMudGltZW91dCA9IHJlY29yZC5kYXRhLnRpbWVvdXQ7CiAgICAgICAgIHRo
aXMuc2luZ2xlU2hvdCA9IHJlY29yZC5kYXRhLnNpbmdsZVNob3Q7CkBAIC02OTIsNiArNzQ3LDEz
IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUg
PSB7CiAgICAgICAgIHJldHVybiBjZWxsOwogICAgIH0sCiAKKyAgICBnZXQgY2hpbGRyZW4oKQor
ICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLl9jaGlsZHJlbikKKyAgICAgICAgICAgIHRoaXMuX2No
aWxkcmVuID0gW107CisgICAgICAgIHJldHVybiB0aGlzLl9jaGlsZHJlbjsKKyAgICB9LAorCiAg
ICAgX2NyZWF0ZVJvdzogZnVuY3Rpb24odGl0bGUsIGNvbnRlbnQpCiAgICAgewogICAgICAgICB2
YXIgcm93ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidHIiKTsKQEAgLTcyOCwyMCArNzkwLDMz
IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUg
PSB7CiAgICAgICAgICAgICAgICAgdGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5UaW1lckZpcmUg
fHwKICAgICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlRpbWVyUmVtb3Zl
KSB7CiAgICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMu
X2NyZWF0ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlRpbWVyIElkIiksIHRoaXMuZGF0YS50
aW1lcklkKSk7Ci0gICAgICAgICAgICAgICAgaWYgKHRoaXMudGltZW91dCkgeworICAgICAgICAg
ICAgICAgIGlmICh0eXBlb2YgdGhpcy50aW1lb3V0ID09PSAibnVtYmVyIikgewogICAgICAgICAg
ICAgICAgICAgICByZWNvcmRDb250ZW50VGFibGUuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlUm93
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiVGltZW91dCIpLCB0aGlzLnRpbWVvdXQpKTsKICAgICAg
ICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0
ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlcGVhdHMiKSwgIXRoaXMuc2luZ2xlU2hvdCkp
OwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAodGhpcy5jYWxsU2l0ZVNj
cmlwdExpbmUpIHsKKyAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2FsbFNpdGVTY3Jp
cHRMaW5lID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICAgICB2YXIgbGluayA9IFdl
Ykluc3BlY3Rvci5saW5raWZ5UmVzb3VyY2VBc05vZGUodGhpcy5jYWxsU2l0ZVNjcmlwdE5hbWUs
ICJzY3JpcHRzIiwgdGhpcy5jYWxsU2l0ZVNjcmlwdExpbmUsICJ0aW1lbGluZS1kZXRhaWxzIik7
CiAgICAgICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlz
Ll9jcmVhdGVMaW5rUm93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2FsbCBTaXRlIiksIGxpbmsp
KTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9
PT0gcmVjb3JkVHlwZXMuRnVuY3Rpb25DYWxsKSB7CiAgICAgICAgICAgICAgICAgdmFyIGxpbmsg
PSBXZWJJbnNwZWN0b3IubGlua2lmeVJlc291cmNlQXNOb2RlKHRoaXMuZGF0YS5zY3JpcHROYW1l
LCAic2NyaXB0cyIsIHRoaXMuZGF0YS5zY3JpcHRMaW5lLCAidGltZWxpbmUtZGV0YWlscyIpOwog
ICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVh
dGVMaW5rUm93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiTG9jYXRpb24iKSwgbGluaykpOwotICAg
ICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlU2Vu
ZFJlcXVlc3QgfHwgdGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5SZXNvdXJjZVJlY2VpdmVSZXNw
b25zZSB8fCB0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlRmluaXNoKSB7CisgICAg
ICAgICAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VTZW5k
UmVxdWVzdCB8fAorICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IHJlY29yZFR5
cGVzLlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlIHx8CisgICAgICAgICAgICAgICAgICAgICAgIHRo
aXMudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VSZWNlaXZlRGF0YSB8fAorICAgICAgICAg
ICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlRmluaXNoKSB7
CisgICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2Ny
ZWF0ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoImlkZW50aWZpZXIiKSwgdGhpcy5kYXRhLmlk
ZW50aWZpZXIpKTsKKyAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIHZhciBsaW5rID0gV2Vi
SW5zcGVjdG9yLmxpbmtpZnlSZXNvdXJjZUFzTm9kZSh0aGlzLmRhdGEudXJsLCAicmVzb3VyY2Vz
IiwgbnVsbCwgInRpbWVsaW5lLWRldGFpbHMiKTsKICAgICAgICAgICAgICAgICByZWNvcmRDb250
ZW50VGFibGUuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlTGlua1JvdyhXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIlJlc291cmNlIiksIGxpbmspKTsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5kYXRh
LnJlcXVlc3RNZXRob2QpCisgICAgICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5h
cHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZXF1ZXN0
IE1ldGhvZCIpLCB0aGlzLmRhdGEucmVxdWVzdE1ldGhvZCkpOworICAgICAgICAgICAgICAgIGlm
ICh0eXBlb2YgdGhpcy5kYXRhLnN0YXR1c0NvZGUgPT09ICJudW1iZXIiKQorICAgICAgICAgICAg
ICAgICAgICByZWNvcmRDb250ZW50VGFibGUuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlUm93KFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiU3RhdHVzIENvZGUiKSwgdGhpcy5kYXRhLnN0YXR1c0NvZGUp
KTsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5kYXRhLm1pbWVUeXBlKQorICAgICAgICAgICAg
ICAgICAgICByZWNvcmRDb250ZW50VGFibGUuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlUm93KFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiTWltZSBUeXBlIiksIHRoaXMuZGF0YS5taW1lVHlwZSkpOwor
ICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5kYXRhLmV4cGVjdGVkQ29udGVudExlbmd0
aCA9PT0gIm51bWJlciIgJiYgdGhpcy5kYXRhLmV4cGVjdGVkQ29udGVudExlbmd0aCAhPT0gLTEp
CisgICAgICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlz
Ll9jcmVhdGVSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJFeHBlY3RlZCBDb250ZW50IExlbmd0
aCIpLCB0aGlzLmRhdGEuZXhwZWN0ZWRDb250ZW50TGVuZ3RoKSk7CiAgICAgICAgICAgICB9IGVs
c2UgaWYgKHRoaXMudHlwZSA9PT0gcmVjb3JkVHlwZXMuRXZhbHVhdGVTY3JpcHQpIHsKICAgICAg
ICAgICAgICAgICB2YXIgbGluayA9IFdlYkluc3BlY3Rvci5saW5raWZ5UmVzb3VyY2VBc05vZGUo
dGhpcy5kYXRhLnVybCwgInNjcmlwdHMiLCBudWxsLCAidGltZWxpbmUtZGV0YWlscyIpOwogICAg
ICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVM
aW5rUm93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiU2NyaXB0IiksIGxpbmspKTsKQEAgLTc3Niw2
ICs4NTEsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQucHJv
dG90eXBlID0gewogICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuVGltZWxpbmVBZ2VudC5S
ZWNvcmRUeXBlLlhIUkxvYWQ6CiAgICAgICAgICAgICBjYXNlIFdlYkluc3BlY3Rvci5UaW1lbGlu
ZUFnZW50LlJlY29yZFR5cGUuRXZhbHVhdGVTY3JpcHQ6CiAgICAgICAgICAgICBjYXNlIFdlYklu
c3BlY3Rvci5UaW1lbGluZUFnZW50LlJlY29yZFR5cGUuUmVzb3VyY2VTZW5kUmVxdWVzdDoKKyAg
ICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZS5SZXNv
dXJjZVJlY2VpdmVEYXRhOgogICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuVGltZWxpbmVB
Z2VudC5SZWNvcmRUeXBlLlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlOgogICAgICAgICAgICAgY2Fz
ZSBXZWJJbnNwZWN0b3IuVGltZWxpbmVBZ2VudC5SZWNvcmRUeXBlLlJlc291cmNlRmluaXNoOgog
ICAgICAgICAgICAgICAgIHJldHVybiBXZWJJbnNwZWN0b3IuZGlzcGxheU5hbWVGb3JVUkwocmVj
b3JkLmRhdGEudXJsKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9p
bnNwZWN0b3IuY3NzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3MK
aW5kZXggZGI2ZjE3Yi4uOGM2NDc0MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL2luc3BlY3Rvci5jc3MKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2lu
c3BlY3Rvci5jc3MKQEAgLTM1OTUsNiArMzU5NSwxMCBAQCBib2R5LmluYWN0aXZlIC5zaWRlYmFy
LXRyZWUtaXRlbS5zZWxlY3RlZCAuYnViYmxlLnNlYXJjaC1tYXRjaGVzIHsKICAgICBwb2ludGVy
LWV2ZW50czogdmlzaWJsZUZpbGw7CiB9CiAKKy50aW1lbGluZS1ncmFwaC1iYXIud2l0aC1jaGls
ZHJlbiB7CisgICAgb3BhY2l0eTogMC4zOworfQorCiAudGltZWxpbmUtZ3JhcGgtc2lkZS5ldmVu
IHsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpOwogfQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDFjYmI4NDMuLjY0MDAxZDEgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJEb2N1bWVudExvYWRl
ci5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKKyNpbmNs
dWRlICJJbnNwZWN0b3JUaW1lbGluZUFnZW50LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1
ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlLmgiCkBAIC0z
OTcsMTYgKzM5OCw0NCBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRTZW5kRGF0YShSZXNvdXJj
ZUhhbmRsZSosIHVuc2lnbmVkIGxvbmcgbG9uZyBieXRlc1NlbnQsCiAKIHZvaWQgUmVzb3VyY2VM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlKQogeworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgaWYgKElu
c3BlY3RvclRpbWVsaW5lQWdlbnQ6Omluc3RhbmNlQ291bnQoKSkgeworICAgICAgICBJbnNwZWN0
b3JUaW1lbGluZUFnZW50KiB0aW1lbGluZUFnZW50ID0gbV9mcmFtZS0+cGFnZSgpID8gbV9mcmFt
ZS0+cGFnZSgpLT5pbnNwZWN0b3JUaW1lbGluZUFnZW50KCkgOiAwOworICAgICAgICBpZiAodGlt
ZWxpbmVBZ2VudCkKKyAgICAgICAgICAgIHRpbWVsaW5lQWdlbnQtPndpbGxSZWNlaXZlUmVzb3Vy
Y2VSZXNwb25zZShpZGVudGlmaWVyKCksIHJlc3BvbnNlKTsKKyAgICB9CisjZW5kaWYKICNpZiBF
TkFCTEUoT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKQogICAgIGlmIChkb2N1bWVudExvYWRlcigp
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKHRo
aXMsIHJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuOwogI2VuZGlmCiAgICAgZGlkUmVjZWl2ZVJl
c3BvbnNlKHJlc3BvbnNlKTsKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIGlmIChJbnNwZWN0
b3JUaW1lbGluZUFnZW50OjppbnN0YW5jZUNvdW50KCkpIHsKKyAgICAgICAgSW5zcGVjdG9yVGlt
ZWxpbmVBZ2VudCogdGltZWxpbmVBZ2VudCA9IG1fZnJhbWUtPnBhZ2UoKSA/IG1fZnJhbWUtPnBh
Z2UoKS0+aW5zcGVjdG9yVGltZWxpbmVBZ2VudCgpIDogMDsKKyAgICAgICAgaWYgKHRpbWVsaW5l
QWdlbnQpCisgICAgICAgICAgICB0aW1lbGluZUFnZW50LT5kaWRSZWNlaXZlUmVzb3VyY2VSZXNw
b25zZSgpOworICAgIH0KKyNlbmRpZgogfQogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIGlu
dCBsZW5ndGhSZWNlaXZlZCkKIHsKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIGlmIChJbnNw
ZWN0b3JUaW1lbGluZUFnZW50OjppbnN0YW5jZUNvdW50KCkpIHsKKyAgICAgICAgSW5zcGVjdG9y
VGltZWxpbmVBZ2VudCogdGltZWxpbmVBZ2VudCA9IG1fZnJhbWUtPnBhZ2UoKSA/IG1fZnJhbWUt
PnBhZ2UoKS0+aW5zcGVjdG9yVGltZWxpbmVBZ2VudCgpIDogMDsKKyAgICAgICAgaWYgKHRpbWVs
aW5lQWdlbnQpCisgICAgICAgICAgICB0aW1lbGluZUFnZW50LT53aWxsUmVjZWl2ZVJlc291cmNl
RGF0YShpZGVudGlmaWVyKCkpOworICAgIH0KKyNlbmRpZgogICAgIGRpZFJlY2VpdmVEYXRhKGRh
dGEsIGxlbmd0aCwgbGVuZ3RoUmVjZWl2ZWQsIGZhbHNlKTsKKyNpZiBFTkFCTEUoSU5TUEVDVE9S
KQorICAgIGlmIChJbnNwZWN0b3JUaW1lbGluZUFnZW50OjppbnN0YW5jZUNvdW50KCkpIHsKKyAg
ICAgICAgSW5zcGVjdG9yVGltZWxpbmVBZ2VudCogdGltZWxpbmVBZ2VudCA9IG1fZnJhbWUtPnBh
Z2UoKSA/IG1fZnJhbWUtPnBhZ2UoKS0+aW5zcGVjdG9yVGltZWxpbmVBZ2VudCgpIDogMDsKKyAg
ICAgICAgaWYgKHRpbWVsaW5lQWdlbnQpCisgICAgICAgICAgICB0aW1lbGluZUFnZW50LT5kaWRS
ZWNlaXZlUmVzb3VyY2VEYXRhKCk7CisgICAgfQorI2VuZGlmCiB9CiAKIHZvaWQgUmVzb3VyY2VM
b2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50899</attachid>
            <date>2010-03-17 06:36:12 -0700</date>
            <delta_ts>2010-03-17 06:40:40 -0700</delta_ts>
            <desc>[Patch] second revision.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>33703</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlOTgyZjk3Li42Y2Y1ODRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDMt
MTcgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYkluc3BlY3RvcjogVGltZWxp
bmUgaW1wcm92ZW1lbnRzIC0gbmV4dCBpdGVyYXRpb24uCisgICAgICAgIFRoZSB0b3AgbGV2ZWwg
cmVjb3JkcyBzaG91bGQgYmUgY29sbGFwc2VkLgorICAgICAgICBWaXJ0dWFsbHkgbGlua2VkIGV2
ZW50cyBzaG91bGQgYmUgbmVzdGVkIGluIFRpbWVsaW5lIGxpa2UgU2VuZCBSZXF1ZXN0IGFuZAor
ICAgICAgICBjb3JyZXNwb25kaW5nIFJlY2VpdmVkIFJlc3BvbmNlLCBUaW1lciBJbnN0YWxsIGFu
ZCBUaW1lciBGaXJlIGV0Yy4KKyAgICAgICAgSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNlZSBN
YWluIFJlc291cmNlIHJlcXVlc3QuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM2MTIyCisKKyAgICAgICAgKiBpbnNwZWN0b3IvdGltZWxpbmUtbmV0
d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL3RpbWVsaW5l
LXRlc3QuanM6CisgICAgICAgIChmcm9udGVuZF9nZXRUaW1lbGluZVJlc3VsdHMpOgorCiAyMDEw
LTAzLTE3ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+CiAKICAgICAgICAgRGlz
YWJsZSBuZXcgcGx1Z2luIHRlc3RzIGZyb20gcjU2MDc5IG9uIEd0ayBhbmQgUXQsIHNpbmNlIHRo
ZXkgYXJlIGZhaWxpbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxp
bmUtbmV0d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
dGltZWxpbmUtbmV0d29yay1yZXNvdXJjZS1leHBlY3RlZC50eHQKaW5kZXggYTNmNzNjMC4uY2Zi
YTFhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lLW5ldHdvcmst
cmVzb3VyY2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGlu
ZS1uZXR3b3JrLXJlc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMjAsNiArMjAsOCBAQCBSZXNvdXJj
ZVJlY2VpdmVSZXNwb25zZSBQcm9wZXJ0aWVzOgogKy0gZXhwZWN0ZWRDb250ZW50TGVuZ3RoIDog
MjEwCiArLSB1cmwgOiAqIERFRklORUQgKgogKyB9CisrIGNoaWxkcmVuIDogKiBERUZJTkVEICoK
KysgZW5kVGltZSA6ICogREVGSU5FRCAqCiArIHR5cGUgOiAxMwogCiBSZXNvdXJjZUZpbmlzaCBQ
cm9wZXJ0aWVzOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lLXRl
c3QuanMgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUtdGVzdC5qcwppbmRleCBiMDIy
NTI0Li4xODgwYjg0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUt
dGVzdC5qcworKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUtdGVzdC5qcwpAQCAt
MTM2LDYgKzEzNiw2IEBAIGZ1bmN0aW9uIGZyb250ZW5kX2dldFRpbWVsaW5lUmVzdWx0cygpIHsK
ICAgICAgICAgICAgIGFkZFJlY29yZHMocmVjb3Jkc1tpXS5jaGlsZHJlbik7CiAgICAgICAgIH0K
ICAgICB9Ci0gICAgYWRkUmVjb3JkcyhXZWJJbnNwZWN0b3IucGFuZWxzLnRpbWVsaW5lLl9yZWNv
cmRzKTsKKyAgICBhZGRSZWNvcmRzKFdlYkluc3BlY3Rvci5wYW5lbHMudGltZWxpbmUuX3Jvb3RS
ZWNvcmQuY2hpbGRyZW4pOwogICAgIHJldHVybiByZXN1bHQ7CiB9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDJlZTY5YmIuLjM0ZmVkZjgg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsNDYgQEAKKzIwMTAtMDMtMTcgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgV2ViSW5zcGVjdG9yOiBUaW1lbGluZSBpbXByb3ZlbWVudHMgLSBuZXh0IGl0ZXJhdGlvbi4K
KyAgICAgICAgVGhlIHRvcCBsZXZlbCByZWNvcmRzIHNob3VsZCBiZSBjb2xsYXBzZWQuCisgICAg
ICAgIFZpcnR1YWxseSBsaW5rZWQgZXZlbnRzIHNob3VsZCBiZSBuZXN0ZWQgaW4gVGltZWxpbmUg
bGlrZSBTZW5kIFJlcXVlc3QgYW5kCisgICAgICAgIGNvcnJlc3BvbmRpbmcgUmVjZWl2ZWQgUmVz
cG9uY2UsIFRpbWVyIEluc3RhbGwgYW5kIFRpbWVyIEZpcmUgZXRjLgorICAgICAgICBJdCBzaG91
bGQgYmUgcG9zc2libGUgdG8gc2VlIE1haW4gUmVzb3VyY2UgcmVxdWVzdC4KKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYxMjIKKworICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckNvbnRyb2xsZXI6OnJlc2V0U2NyaXB0T2JqZWN0cyk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvclRpbWVsaW5lQWdlbnQ6OndpbGxSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSk6CisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaDoK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVQYW5lbC5wcm90b3R5cGUuX2NyZWF0ZVN0YXR1c2JhckJ1dHRvbnMpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLmFkZFJlY29yZFRvVGltZWxpbmUp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9maW5kUGFy
ZW50UmVjb3JkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlw
ZS5faW5uZXJBZGRSZWNvcmRUb1RpbWVsaW5lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1l
bGluZVBhbmVsLnByb3RvdHlwZS5yZXNpemUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVs
aW5lUGFuZWwucHJvdG90eXBlLl9jcmVhdGVUb3BMZXZlbFJlY29yZCk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUucmVzZXQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9jbGVhbik6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX3JlZnJlc2gpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlLl9yZWZyZXNoUmVjb3Jkcyk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX2FkZFRvUmVjb3Jkc1dpbmRv
dyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3RvdHlwZS5j
b21wdXRlQmFyR3JhcGhQZXJjZW50YWdlcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxp
bmVDYWxjdWxhdG9yLnByb3RvdHlwZS51cGRhdGVCb3VuZGFyaWVzKToKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5UaW1lbGluZVJlY29yZEdyYXBoUm93KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5U
aW1lbGluZVJlY29yZEdyYXBoUm93LnByb3RvdHlwZS51cGRhdGUpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3JkKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUuZ2V0IGNoaWxkcmVu
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5w
cm90b3R5cGUuX2dlbmVyYXRlUG9wdXBDb250ZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL2luc3BlY3Rvci5jc3M6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorCiAyMDEwLTAzLTE3ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGIvV2ViQ29yZS9FbmdsaXNoLmxw
cm9qL2xvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggNzM1NWIzNy4uZDAwYTVjMSAxMDA2NDQKQmlu
YXJ5IGZpbGVzIGEvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMgYW5k
IGIvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMgZGlmZmVyCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCmluZGV4IGU1ZjIyMmYuLjU3ZGM4
NGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3Bw
CisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC02Mjcs
OSArNjI3LDYgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpyZXNldFNjcmlwdE9iamVjdHMo
KQogI2lmIEVOQUJMRShXT1JLRVJTKQogICAgIG1fd29ya2Vycy5jbGVhcigpOwogI2VuZGlmCi0g
ICAgaWYgKG1fdGltZWxpbmVBZ2VudCkKLSAgICAgICAgbV90aW1lbGluZUFnZW50LT5yZXNldCgp
OwotCiAgICAgbV9mcm9udGVuZC0+cmVzZXQoKTsKICAgICBtX2RvbUFnZW50LT5yZXNldCgpOwog
fQpAQCAtOTAwLDkgKzg5Nyw2IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6d2lsbFNlbmRS
ZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyCiAKIHZvaWQgSW5z
cGVjdG9yQ29udHJvbGxlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Ci0gICAgaWYgKG1fdGlt
ZWxpbmVBZ2VudCkKLSAgICAgICAgbV90aW1lbGluZUFnZW50LT5kaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZShpZGVudGlmaWVyLCByZXNwb25zZSk7Ci0KICAgICBSZWZQdHI8SW5zcGVjdG9yUmVz
b3VyY2U+IHJlc291cmNlID0gZ2V0VHJhY2tlZFJlc291cmNlKGlkZW50aWZpZXIpOwogICAgIGlm
ICghcmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKQEAgLTkyOCw5ICs5MjIsNiBAQCB2b2lkIElu
c3BlY3RvckNvbnRyb2xsZXI6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgaW50CiAKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlkRmluaXNoTG9h
ZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiB7Ci0gICAgaWYgKG1fdGltZWxpbmVBZ2Vu
dCkKLSAgICAgICAgbV90aW1lbGluZUFnZW50LT5kaWRGaW5pc2hMb2FkaW5nUmVzb3VyY2UoaWRl
bnRpZmllciwgZmFsc2UpOwotCiAgICAgUmVmUHRyPEluc3BlY3RvclJlc291cmNlPiByZXNvdXJj
ZSA9IGdldFRyYWNrZWRSZXNvdXJjZShpZGVudGlmaWVyKTsKICAgICBpZiAoIXJlc291cmNlKQog
ICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JU
aW1lbGluZUFnZW50LmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdl
bnQuY3BwCmluZGV4IDA2MjRjODcuLjJiZjY2ZWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCkBAIC0xODcsMTIgKzE4NywyNCBAQCB2b2lkIEluc3Bl
Y3RvclRpbWVsaW5lQWdlbnQ6OndpbGxTZW5kUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgYgogICAgIG1fZnJvbnRlbmQtPmFkZFJlY29yZFRvVGltZWxpbmUocmVjb3Jk
KTsKIH0KIAotdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50Ojp3aWxsUmVjZWl2ZVJlc291
cmNlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiB7Ci0gICAgU2NyaXB0T2JqZWN0IHJl
Y29yZCA9IFRpbWVsaW5lUmVjb3JkRmFjdG9yeTo6Y3JlYXRlR2VuZXJpY1JlY29yZChtX2Zyb250
ZW5kLCBjdXJyZW50VGltZUluTWlsbGlzZWNvbmRzKCkpOwotICAgIHJlY29yZC5zZXQoImRhdGEi
LCBUaW1lbGluZVJlY29yZEZhY3Rvcnk6OmNyZWF0ZVJlc291cmNlUmVjZWl2ZVJlc3BvbnNlRGF0
YShtX2Zyb250ZW5kLCBpZGVudGlmaWVyLCByZXNwb25zZSkpOwotICAgIHJlY29yZC5zZXQoInR5
cGUiLCBSZXNvdXJjZVJlY2VpdmVSZXNwb25zZVRpbWVsaW5lUmVjb3JkVHlwZSk7Ci0gICAgbV9m
cm9udGVuZC0+YWRkUmVjb3JkVG9UaW1lbGluZShyZWNvcmQpOworICAgIHB1c2hDdXJyZW50UmVj
b3JkKFRpbWVsaW5lUmVjb3JkRmFjdG9yeTo6Y3JlYXRlUmVjZWl2ZVJlc291cmNlRGF0YShtX2Zy
b250ZW5kLCBpZGVudGlmaWVyKSwgUmVjZWl2ZVJlc291cmNlRGF0YVRpbWVsaW5lUmVjb3JkVHlw
ZSk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6ZGlkUmVjZWl2ZVJlc291cmNl
RGF0YSgpCit7CisgICAgZGlkQ29tcGxldGVDdXJyZW50UmVjb3JkKFJlY2VpdmVSZXNvdXJjZURh
dGFUaW1lbGluZVJlY29yZFR5cGUpOworfQorICAgIAordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFn
ZW50Ojp3aWxsUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3sKKyAgICBwdXNoQ3VycmVudFJl
Y29yZChUaW1lbGluZVJlY29yZEZhY3Rvcnk6OmNyZWF0ZVJlc291cmNlUmVjZWl2ZVJlc3BvbnNl
RGF0YShtX2Zyb250ZW5kLCBpZGVudGlmaWVyLCByZXNwb25zZSksIFJlc291cmNlUmVjZWl2ZVJl
c3BvbnNlVGltZWxpbmVSZWNvcmRUeXBlKTsKK30KKwordm9pZCBJbnNwZWN0b3JUaW1lbGluZUFn
ZW50OjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSgpCit7CisgICAgZGlkQ29tcGxldGVDdXJy
ZW50UmVjb3JkKFJlc291cmNlUmVjZWl2ZVJlc3BvbnNlVGltZWxpbmVSZWNvcmRUeXBlKTsKIH0K
IAogdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRGaW5pc2hMb2FkaW5nUmVzb3VyY2Uo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBib29sIGRpZEZhaWwpCmRpZmYgLS1naXQgYS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmggYi9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmgKaW5kZXggN2Y2NjQ2Yy4uNTZjOTE4YyAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oCisrKyBiL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaApAQCAtNjQsNiArNjQsNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIFJlc291cmNlUmVjZWl2ZVJlc3BvbnNlVGlt
ZWxpbmVSZWNvcmRUeXBlID0gMTMsCiAgICAgICAgIFJlc291cmNlRmluaXNoVGltZWxpbmVSZWNv
cmRUeXBlID0gMTQsCiAgICAgICAgIEZ1bmN0aW9uQ2FsbFRpbWVsaW5lUmVjb3JkVHlwZSA9IDE1
LAorICAgICAgICBSZWNlaXZlUmVzb3VyY2VEYXRhVGltZWxpbmVSZWNvcmRUeXBlID0gMTYsCiAg
ICAgfTsKIAogICAgIGNsYXNzIEluc3BlY3RvclRpbWVsaW5lQWdlbnQgOiBwdWJsaWMgTm9uY29w
eWFibGUgewpAQCAtMTA5LDkgKzExMCwxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZvaWQgZGlkTWFya1RpbWVsaW5lKGNvbnN0IFN0cmluZyYpOwogCiAgICAgICAgIHZvaWQgd2ls
bFNlbmRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZywgYm9vbCBpc01haW5SZXNvdXJjZSwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNl
UmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgICAg
ICB2b2lkIHdpbGxSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9u
c2UoKTsKICAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nUmVzb3VyY2UodW5zaWduZWQgbG9u
ZywgYm9vbCBkaWRGYWlsKTsKLQorICAgICAgICB2b2lkIHdpbGxSZWNlaXZlUmVzb3VyY2VEYXRh
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc291
cmNlRGF0YSgpOworICAgICAgICAKICAgICAgICAgc3RhdGljIGludCBpbnN0YW5jZUNvdW50KCkg
eyByZXR1cm4gc19pbnN0YW5jZUNvdW50OyB9CiAgICAgICAgIHN0YXRpYyBJbnNwZWN0b3JUaW1l
bGluZUFnZW50KiByZXRyaWV2ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CiAKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5jcHAgYi9XZWJDb3Jl
L2luc3BlY3Rvci9UaW1lbGluZVJlY29yZEZhY3RvcnkuY3BwCmluZGV4IDczOTgxYTIuLjJhZDA4
OWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5j
cHAKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvVGltZWxpbmVSZWNvcmRGYWN0b3J5LmNwcApAQCAt
MTQ4LDYgKzE0OCwxMyBAQCBTY3JpcHRPYmplY3QgVGltZWxpbmVSZWNvcmRGYWN0b3J5OjpjcmVh
dGVSZXNvdXJjZUZpbmlzaERhdGEoSW5zcGVjdG9yRnJvbnRlbmQqCiAgICAgcmV0dXJuIGRhdGE7
CiB9CiAKK1NjcmlwdE9iamVjdCBUaW1lbGluZVJlY29yZEZhY3Rvcnk6OmNyZWF0ZVJlY2VpdmVS
ZXNvdXJjZURhdGEoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpCit7CisgICAgU2NyaXB0T2JqZWN0IGRhdGEgPSBmcm9udGVuZC0+bmV3U2NyaXB0
T2JqZWN0KCk7CisgICAgZGF0YS5zZXQoImlkZW50aWZpZXIiLCBpZGVudGlmaWVyKTsKKyAgICBy
ZXR1cm4gZGF0YTsKK30KKyAgICAKIFNjcmlwdE9iamVjdCBUaW1lbGluZVJlY29yZEZhY3Rvcnk6
OmNyZWF0ZVBhaW50RGF0YShJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQsIGNvbnN0IEludFJl
Y3QmIHJlY3QpCiB7CiAgICAgU2NyaXB0T2JqZWN0IGRhdGEgPSBmcm9udGVuZC0+bmV3U2NyaXB0
T2JqZWN0KCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9UaW1lbGluZVJlY29yZEZh
Y3RvcnkuaCBiL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5oCmluZGV4
IDkxMGMyOTUuLjhkYWY5MTUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5l
UmVjb3JkRmFjdG9yeS5oCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFj
dG9yeS5oCkBAIC02Nyw2ICs2Nyw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBz
dGF0aWMgU2NyaXB0T2JqZWN0IGNyZWF0ZVJlc291cmNlUmVjZWl2ZVJlc3BvbnNlRGF0YShJbnNw
ZWN0b3JGcm9udGVuZCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYpOwogCisgICAgICAgIHN0YXRpYyBTY3JpcHRPYmplY3QgY3JlYXRlUmVjZWl2ZVJl
c291cmNlRGF0YShJbnNwZWN0b3JGcm9udGVuZCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7
CisgICAgICAgIAogICAgICAgICBzdGF0aWMgU2NyaXB0T2JqZWN0IGNyZWF0ZVJlc291cmNlRmlu
aXNoRGF0YShJbnNwZWN0b3JGcm9udGVuZCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgYm9v
bCBkaWRGYWlsKTsKIAogICAgICAgICBzdGF0aWMgU2NyaXB0T2JqZWN0IGNyZWF0ZVBhaW50RGF0
YShJbnNwZWN0b3JGcm9udGVuZCosIGNvbnN0IEludFJlY3QmKTsKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZUFnZW50LmpzIGIvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1RpbWVsaW5lQWdlbnQuanMKaW5kZXggNTBkY2UxMC4uMTNmOTM3ZiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lQWdlbnQuanMKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lQWdlbnQuanMKQEAgLTQ5LDcg
KzQ5LDggQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZSA9IHsKICAgICBS
ZXNvdXJjZVNlbmRSZXF1ZXN0IDogMTIsCiAgICAgUmVzb3VyY2VSZWNlaXZlUmVzcG9uc2UgOiAx
MywKICAgICBSZXNvdXJjZUZpbmlzaCA6IDE0LAotICAgIEZ1bmN0aW9uQ2FsbCA6IDE1CisgICAg
RnVuY3Rpb25DYWxsIDogMTUsCisgICAgUmVzb3VyY2VSZWNlaXZlRGF0YTogMTYKIH07CiAKIFdl
Ykluc3BlY3Rvci5hZGRSZWNvcmRUb1RpbWVsaW5lID0gZnVuY3Rpb24ocmVjb3JkKSB7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qcyBiL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzCmluZGV4IGVjZDlhMGMu
LjcwNDhlZjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGlu
ZVBhbmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVs
LmpzCkBAIC03OCw3ICs3OCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsID0gZnVuY3Rp
b24oKQogCiAgICAgdGhpcy5fY3JlYXRlU3RhdHVzYmFyQnV0dG9ucygpOwogCi0gICAgdGhpcy5f
cmVjb3JkcyA9IFtdOworICAgIHRoaXMuX3Jvb3RSZWNvcmQgPSB0aGlzLl9jcmVhdGVSb290UmVj
b3JkKCk7CiAgICAgdGhpcy5fc2VuZFJlcXVlc3RSZWNvcmRzID0ge307CiAgICAgdGhpcy5fdGlt
ZXJSZWNvcmRzID0ge307CiAKQEAgLTE0MCw2ICsxNDAsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxp
bmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZWNvcmRTdHlsZXNbcmVjb3JkVHlw
ZXMuUmVzb3VyY2VSZWNlaXZlUmVzcG9uc2VdID0geyB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKCJSZWNlaXZlIFJlc3BvbnNlIiksIGNhdGVnb3J5OiB0aGlzLmNhdGVnb3JpZXMubG9hZGlu
ZyB9OwogICAgICAgICAgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5cGVzLlJlc291cmNlRmluaXNo
XSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0cmluZygiRmluaXNoIExvYWRpbmciKSwgY2F0
ZWdvcnk6IHRoaXMuY2F0ZWdvcmllcy5sb2FkaW5nIH07CiAgICAgICAgICAgICByZWNvcmRTdHls
ZXNbcmVjb3JkVHlwZXMuRnVuY3Rpb25DYWxsXSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0
cmluZygiRnVuY3Rpb24gQ2FsbCIpLCBjYXRlZ29yeTogdGhpcy5jYXRlZ29yaWVzLnNjcmlwdGlu
ZyB9OworICAgICAgICAgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5cGVzLlJlc291cmNlUmVjZWl2
ZURhdGFdID0geyB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZWNlaXZlIERhdGEiKSwg
Y2F0ZWdvcnk6IHRoaXMuY2F0ZWdvcmllcy5sb2FkaW5nIH07CiAgICAgICAgICAgICB0aGlzLl9y
ZWNvcmRTdHlsZXNBcnJheSA9IHJlY29yZFN0eWxlczsKICAgICAgICAgfQogICAgICAgICByZXR1
cm4gdGhpcy5fcmVjb3JkU3R5bGVzQXJyYXk7CkBAIC0xODUsMzUgKzE4Niw2MiBAQCBXZWJJbnNw
ZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICAgICAgdGhpcy5f
Y2xlYXJQYW5lbCgpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIHRoaXMuX2lu
bmVyQWRkUmVjb3JkVG9UaW1lbGluZShyZWNvcmQsIHRoaXMuX3JlY29yZHMpOworICAgICAgICB0
aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3JkLCB0aGlzLl9yb290UmVjb3JkKTsK
ICAgICAgICAgdGhpcy5fc2NoZWR1bGVSZWZyZXNoKCk7CiAgICAgfSwKIAotICAgIF9pbm5lckFk
ZFJlY29yZFRvVGltZWxpbmU6IGZ1bmN0aW9uKHJlY29yZCwgY29sbGVjdGlvbikKKyAgICBfZmlu
ZFBhcmVudFJlY29yZDogZnVuY3Rpb24ocmVjb3JkKQogICAgIHsKLSAgICAgICAgdmFyIGZvcm1h
dHRlZFJlY29yZCA9IG5ldyBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNv
cmQocmVjb3JkLCB0aGlzLl9yZWNvcmRTdHlsZXMsIHRoaXMuX3NlbmRSZXF1ZXN0UmVjb3Jkcywg
dGhpcy5fdGltZXJSZWNvcmRzKTsKKyAgICAgICAgdmFyIHJlY29yZFR5cGVzID0gV2ViSW5zcGVj
dG9yLlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZTsKKyAgICAgICAgdmFyIHBhcmVudFJlY29yZDsK
KyAgICAgICAgaWYgKHJlY29yZC50eXBlID09PSByZWNvcmRUeXBlcy5SZXNvdXJjZVJlY2VpdmVS
ZXNwb25zZSB8fAorICAgICAgICAgICAgcmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291
cmNlRmluaXNoIHx8CisgICAgICAgICAgICByZWNvcmQudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVz
b3VyY2VSZWNlaXZlRGF0YSkKKyAgICAgICAgICAgIHBhcmVudFJlY29yZCA9IHRoaXMuX3NlbmRS
ZXF1ZXN0UmVjb3Jkc1tyZWNvcmQuZGF0YS5pZGVudGlmaWVyXTsKKyAgICAgICAgZWxzZSBpZiAo
cmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVzLlRpbWVyRmlyZSkKKyAgICAgICAgICAgIHBhcmVu
dFJlY29yZCA9IHRoaXMuX3RpbWVyUmVjb3Jkc1tyZWNvcmQuZGF0YS50aW1lcklkXTsKKyAgICAg
ICAgcmV0dXJuIHBhcmVudFJlY29yZDsKKyAgICB9LAorCisgICAgX2lubmVyQWRkUmVjb3JkVG9U
aW1lbGluZTogZnVuY3Rpb24ocmVjb3JkLCBwYXJlbnRSZWNvcmQpCisgICAgeworICAgICAgICB2
YXIgY29ubmVjdGVkVG9PbGRSZWNvcmQgPSBmYWxzZTsKKyAgICAgICAgaWYgKHBhcmVudFJlY29y
ZCA9PT0gdGhpcy5fcm9vdFJlY29yZCkgeworICAgICAgICAgICAgdmFyIG5ld1BhcmVudFJlY29y
ZCA9IHRoaXMuX2ZpbmRQYXJlbnRSZWNvcmQocmVjb3JkKTsKKyAgICAgICAgICAgIGlmIChuZXdQ
YXJlbnRSZWNvcmQpIHsKKyAgICAgICAgICAgICAgICBwYXJlbnRSZWNvcmQgPSBuZXdQYXJlbnRS
ZWNvcmQ7CisgICAgICAgICAgICAgICAgY29ubmVjdGVkVG9PbGRSZWNvcmQgPSB0cnVlOworICAg
ICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgdmFyIGZvcm1hdHRlZFJlY29yZCA9IG5l
dyBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQocmVjb3JkLCBwYXJl
bnRSZWNvcmQsIHRoaXMuX3JlY29yZFN0eWxlcywgdGhpcy5fc2VuZFJlcXVlc3RSZWNvcmRzLCB0
aGlzLl90aW1lclJlY29yZHMpOworICAgICAgICBpZiAocGFyZW50UmVjb3JkID09PSB0aGlzLl9y
b290UmVjb3JkKQorICAgICAgICAgICAgZm9ybWF0dGVkUmVjb3JkLmNvbGxhcHNlZCA9IHRydWU7
CiAKICAgICAgICAgLy8gR2x1ZSBzdWJzZXF1ZW50IHJlY29yZHMgd2l0aCBzYW1lIGNhdGVnb3J5
IGFuZCB0aXRsZSB0b2dldGhlciBpZiB0aGV5IGFyZSBjbG9zZXIgdGhhbiAxMDBtcyB0byBlYWNo
IG90aGVyLgotICAgICAgICBpZiAodGhpcy5fbGFzdFJlY29yZCAmJiAoIXJlY29yZC5jaGlsZHJl
biB8fCAhcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCkgJiYKLSAgICAgICAgICAgICAgICB0aGlzLl9s
YXN0UmVjb3JkLmNhdGVnb3J5ID09IGZvcm1hdHRlZFJlY29yZC5jYXRlZ29yeSAmJgotICAgICAg
ICAgICAgICAgIHRoaXMuX2xhc3RSZWNvcmQudGl0bGUgPT0gZm9ybWF0dGVkUmVjb3JkLnRpdGxl
ICYmCi0gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5kZXRhaWxzID09IGZvcm1hdHRl
ZFJlY29yZC5kZXRhaWxzICYmCi0gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5jYWxs
ZXJTY3JpcHROYW1lID09IGZvcm1hdHRlZFJlY29yZC5jYWxsZXJTY3JpcHROYW1lICYmCi0gICAg
ICAgICAgICAgICAgdGhpcy5fbGFzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lID09IGZvcm1hdHRl
ZFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lICYmCi0gICAgICAgICAgICAgICAgZm9ybWF0dGVkUmVj
b3JkLnN0YXJ0VGltZSAtIHRoaXMuX2xhc3RSZWNvcmQuZW5kVGltZSA8IDAuMSkgewotICAgICAg
ICAgICAgdGhpcy5fbGFzdFJlY29yZC5lbmRUaW1lID0gZm9ybWF0dGVkUmVjb3JkLmVuZFRpbWU7
Ci0gICAgICAgICAgICB0aGlzLl9sYXN0UmVjb3JkLmNvdW50Kys7CisgICAgICAgIHZhciBsYXN0
UmVjb3JkID0gcGFyZW50UmVjb3JkLl9sYXN0UmVjb3JkOworICAgICAgICBpZiAobGFzdFJlY29y
ZCAmJiAoIXJlY29yZC5jaGlsZHJlbiB8fCAhcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCkgJiYKKyAg
ICAgICAgICAgICAgICBsYXN0UmVjb3JkLmNhdGVnb3J5ID09IGZvcm1hdHRlZFJlY29yZC5jYXRl
Z29yeSAmJgorICAgICAgICAgICAgICAgIGxhc3RSZWNvcmQudGl0bGUgPT0gZm9ybWF0dGVkUmVj
b3JkLnRpdGxlICYmCisgICAgICAgICAgICAgICAgbGFzdFJlY29yZC5kZXRhaWxzID09IGZvcm1h
dHRlZFJlY29yZC5kZXRhaWxzICYmCisgICAgICAgICAgICAgICAgbGFzdFJlY29yZC5jYWxsZXJT
Y3JpcHROYW1lID09IGZvcm1hdHRlZFJlY29yZC5jYWxsZXJTY3JpcHROYW1lICYmCisgICAgICAg
ICAgICAgICAgbGFzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lID09IGZvcm1hdHRlZFJlY29yZC5j
YWxsZXJTY3JpcHRMaW5lICYmCisgICAgICAgICAgICAgICAgZm9ybWF0dGVkUmVjb3JkLnN0YXJ0
VGltZSAtIGxhc3RSZWNvcmQuZW5kVGltZSA8IDAuMSkgeworICAgICAgICAgICAgbGFzdFJlY29y
ZC5lbmRUaW1lID0gZm9ybWF0dGVkUmVjb3JkLmVuZFRpbWU7CisgICAgICAgICAgICBsYXN0UmVj
b3JkLmNvdW50Kys7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBjb2xsZWN0aW9uLnB1
c2goZm9ybWF0dGVkUmVjb3JkKTsKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyByZWNvcmQu
Y2hpbGRyZW4gJiYgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsraSkgewotICAgICAgICAg
ICAgICAgIGlmICghZm9ybWF0dGVkUmVjb3JkLmNoaWxkcmVuKQotICAgICAgICAgICAgICAgICAg
ICBmb3JtYXR0ZWRSZWNvcmQuY2hpbGRyZW4gPSBbXTsKLSAgICAgICAgICAgICAgICB2YXIgZm9y
bWF0dGVkQ2hpbGQgPSB0aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3JkLmNoaWxk
cmVuW2ldLCBmb3JtYXR0ZWRSZWNvcmQuY2hpbGRyZW4pOwotICAgICAgICAgICAgICAgIGZvcm1h
dHRlZENoaWxkLnBhcmVudCA9IGZvcm1hdHRlZFJlY29yZDsKKyAgICAgICAgICAgIGZvciAodmFy
IGkgPSAwOyByZWNvcmQuY2hpbGRyZW4gJiYgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsr
aSkKKyAgICAgICAgICAgICAgICB0aGlzLl9pbm5lckFkZFJlY29yZFRvVGltZWxpbmUocmVjb3Jk
LmNoaWxkcmVuW2ldLCBmb3JtYXR0ZWRSZWNvcmQpOworICAgICAgICAgICAgcGFyZW50UmVjb3Jk
Ll9sYXN0UmVjb3JkID0gcmVjb3JkLmNoaWxkcmVuICYmIHJlY29yZC5jaGlsZHJlbi5sZW5ndGgg
PyBudWxsIDogZm9ybWF0dGVkUmVjb3JkOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGNvbm5l
Y3RlZFRvT2xkUmVjb3JkKSB7CisgICAgICAgICAgICB2YXIgcmVjb3JkID0gZm9ybWF0dGVkUmVj
b3JkOworICAgICAgICAgICAgd2hpbGUgKHJlY29yZC5wYXJlbnQgJiYgcmVjb3JkLnBhcmVudC5f
bGFzdENoaWxkRW5kVGltZSA8IHJlY29yZC5fbGFzdENoaWxkRW5kVGltZSkgeworICAgICAgICAg
ICAgICAgIHJlY29yZC5wYXJlbnQuX2xhc3RDaGlsZEVuZFRpbWUgPSByZWNvcmQuX2xhc3RDaGls
ZEVuZFRpbWU7CisgICAgICAgICAgICAgICAgcmVjb3JkID0gcmVjb3JkLnBhcmVudDsKICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIHRoaXMuX2xhc3RSZWNvcmQgPSByZWNvcmQuY2hpbGRyZW4g
JiYgcmVjb3JkLmNoaWxkcmVuLmxlbmd0aCA/IG51bGwgOiBmb3JtYXR0ZWRSZWNvcmQ7CiAgICAg
ICAgIH0KLSAgICAgICAgcmV0dXJuIGZvcm1hdHRlZFJlY29yZDsKICAgICB9LAogCiAgICAgc2V0
U2lkZWJhcldpZHRoOiBmdW5jdGlvbih3aWR0aCkKQEAgLTIzMCwxNyArMjU4LDI5IEBAIFdlYklu
c3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fb3ZlcnZp
ZXdQYW5lLnVwZGF0ZU1haW5WaWV3V2lkdGgod2lkdGgpOwogICAgIH0sCiAKLSAgICByZXNpemU6
IGZ1bmN0aW9uKCkgeworICAgIHJlc2l6ZTogZnVuY3Rpb24oKQorICAgIHsKICAgICAgICAgdGhp
cy5fY2xvc2VSZWNvcmREZXRhaWxzKCk7CiAgICAgICAgIHRoaXMuX3NjaGVkdWxlUmVmcmVzaCgp
OwogICAgIH0sCiAKKyAgICBfY3JlYXRlUm9vdFJlY29yZDogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgdmFyIHJvb3RSZWNvcmQgPSB7fTsKKyAgICAgICAgcm9vdFJlY29yZC5jaGlsZHJlbiA9
IFtdOworICAgICAgICByb290UmVjb3JkLl9sYXN0UmVjb3JkID0gbnVsbDsKKyAgICAgICAgcmV0
dXJuIHJvb3RSZWNvcmQ7CisgICAgfSwKKworICAgIHJlc2V0OiBmdW5jdGlvbigpCisgICAgewor
ICAgIH0sCisKICAgICBfY2xlYXJQYW5lbDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgdGhp
cy5fbGFzdFJlY29yZCA9IG51bGw7CiAgICAgICAgIHRoaXMuX3NlbmRSZXF1ZXN0UmVjb3JkcyA9
IHt9OwogICAgICAgICB0aGlzLl90aW1lclJlY29yZHMgPSB7fTsKLSAgICAgICAgdGhpcy5fcmVj
b3JkcyA9IFtdOworICAgICAgICB0aGlzLl9yb290UmVjb3JkID0gdGhpcy5fY3JlYXRlUm9vdFJl
Y29yZCgpOwogICAgICAgICB0aGlzLl9ib3VuZGFyaWVzQXJlVmFsaWQgPSBmYWxzZTsKICAgICAg
ICAgdGhpcy5fb3ZlcnZpZXdQYW5lLnJlc2V0KCk7CiAgICAgICAgIHRoaXMuX2FkanVzdFNjcm9s
bFBvc2l0aW9uKDApOwpAQCAtMzA0LDcgKzM0NCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBh
bmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogCiAgICAgICAgIGlmICghdGhpcy5fYm91bmRh
cmllc0FyZVZhbGlkKQotICAgICAgICAgICAgdGhpcy5fb3ZlcnZpZXdQYW5lLnVwZGF0ZSh0aGlz
Ll9yZWNvcmRzKTsKKyAgICAgICAgICAgIHRoaXMuX292ZXJ2aWV3UGFuZS51cGRhdGUodGhpcy5f
cm9vdFJlY29yZC5jaGlsZHJlbik7CiAgICAgICAgIHRoaXMuX3JlZnJlc2hSZWNvcmRzKCF0aGlz
Ll9ib3VuZGFyaWVzQXJlVmFsaWQpOwogICAgICAgICB0aGlzLl9ib3VuZGFyaWVzQXJlVmFsaWQg
PSB0cnVlOwogICAgIH0sCkBAIC0zMTYsMTcgKzM1NiwxNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxp
bmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLndpbmRv
d0xlZnQgPSB0aGlzLl9vdmVydmlld1BhbmUud2luZG93TGVmdDsKICAgICAgICAgICAgIHRoaXMu
X2NhbGN1bGF0b3Iud2luZG93UmlnaHQgPSB0aGlzLl9vdmVydmlld1BhbmUud2luZG93UmlnaHQ7
CiAKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fcmVjb3Jkcy5sZW5ndGg7
ICsraSkKLSAgICAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLnVwZGF0ZUJvdW5kYXJpZXMo
dGhpcy5fcmVjb3Jkc1tpXSk7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMu
X3Jvb3RSZWNvcmQuY2hpbGRyZW4ubGVuZ3RoOyArK2kpCisgICAgICAgICAgICAgICAgdGhpcy5f
Y2FsY3VsYXRvci51cGRhdGVCb3VuZGFyaWVzKHRoaXMuX3Jvb3RSZWNvcmQuY2hpbGRyZW5baV0p
OwogCiAgICAgICAgICAgICB0aGlzLl9jYWxjdWxhdG9yLmNhbGN1bGF0ZVdpbmRvdygpOwogICAg
ICAgICB9CiAKICAgICAgICAgdmFyIHJlY29yZHNJbldpbmRvdyA9IFtdOwotICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IHRoaXMuX3JlY29yZHMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAg
IHZhciByZWNvcmQgPSB0aGlzLl9yZWNvcmRzW2ldOworICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IHRoaXMuX3Jvb3RSZWNvcmQuY2hpbGRyZW4ubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAg
IHZhciByZWNvcmQgPSB0aGlzLl9yb290UmVjb3JkLmNoaWxkcmVuW2ldOwogICAgICAgICAgICAg
dmFyIHBlcmNlbnRhZ2VzID0gdGhpcy5fY2FsY3VsYXRvci5jb21wdXRlQmFyR3JhcGhQZXJjZW50
YWdlcyhyZWNvcmQpOwotICAgICAgICAgICAgaWYgKHBlcmNlbnRhZ2VzLnN0YXJ0IDwgMTAwICYm
IHBlcmNlbnRhZ2VzLmVuZCA+PSAwICYmICFyZWNvcmQuY2F0ZWdvcnkuaGlkZGVuKQorICAgICAg
ICAgICAgaWYgKHBlcmNlbnRhZ2VzLnN0YXJ0IDwgMTAwICYmIHBlcmNlbnRhZ2VzLmVuZFdpdGhD
aGlsZHJlbiA+PSAwICYmICFyZWNvcmQuY2F0ZWdvcnkuaGlkZGVuKQogICAgICAgICAgICAgICAg
IHRoaXMuX2FkZFRvUmVjb3Jkc1dpbmRvdyhyZWNvcmQsIHJlY29yZHNJbldpbmRvdyk7CiAgICAg
ICAgIH0KIApAQCAtNDA3LDcgKzQ0Nyw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgcmVjb3Jkc1dpbmRvdy5wdXNoKHJlY29yZCk7CiAgICAgICAg
IGlmICghcmVjb3JkLmNvbGxhcHNlZCkgewogICAgICAgICAgICAgdmFyIGluZGV4ID0gcmVjb3Jk
c1dpbmRvdy5sZW5ndGg7Ci0gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgcmVjb3JkLmNoaWxk
cmVuICYmIGkgPCByZWNvcmQuY2hpbGRyZW4ubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IHJlY29yZC5jaGlsZHJlbi5sZW5ndGg7ICsraSkKICAgICAgICAgICAg
ICAgICB0aGlzLl9hZGRUb1JlY29yZHNXaW5kb3cocmVjb3JkLmNoaWxkcmVuW2ldLCByZWNvcmRz
V2luZG93KTsKICAgICAgICAgICAgIHJlY29yZC52aXNpYmxlQ2hpbGRyZW5Db3VudCA9IHJlY29y
ZHNXaW5kb3cubGVuZ3RoIC0gaW5kZXg7CiAgICAgICAgIH0KQEAgLTQ2MSw3ICs1MDEsMjIgQEAg
V2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUgPSB7CiAgICAgewogICAg
ICAgICB2YXIgc3RhcnQgPSAocmVjb3JkLnN0YXJ0VGltZSAtIHRoaXMubWluaW11bUJvdW5kYXJ5
KSAvIHRoaXMuYm91bmRhcnlTcGFuICogMTAwOwogICAgICAgICB2YXIgZW5kID0gKHJlY29yZC5l
bmRUaW1lIC0gdGhpcy5taW5pbXVtQm91bmRhcnkpIC8gdGhpcy5ib3VuZGFyeVNwYW4gKiAxMDA7
Ci0gICAgICAgIHJldHVybiB7c3RhcnQ6IHN0YXJ0LCBlbmQ6IGVuZH07CisgICAgICAgIHZhciBl
bmRXaXRoQ2hpbGRyZW4gPSAocmVjb3JkLl9sYXN0Q2hpbGRFbmRUaW1lIC0gdGhpcy5taW5pbXVt
Qm91bmRhcnkpIC8gdGhpcy5ib3VuZGFyeVNwYW4gKiAxMDA7CisgICAgICAgIHJldHVybiB7c3Rh
cnQ6IHN0YXJ0LCBlbmQ6IGVuZCwgZW5kV2l0aENoaWxkcmVuOiBlbmRXaXRoQ2hpbGRyZW59Owor
ICAgIH0sCisKKyAgICBjb21wdXRlQmFyR3JhcGhXaW5kb3dQb3NpdGlvbjogZnVuY3Rpb24ocmVj
b3JkLCBjbGllbnRXaWR0aCwgZXhwYW5kT2Zmc2V0KQorICAgIHsKKyAgICAgICAgY29uc3QgbWlu
V2lkdGggPSA1OworICAgICAgICBjb25zdCBib3JkZXJXaWR0aCA9IDQ7CisgICAgICAgIHZhciB3
b3JraW5nQXJlYSA9IGNsaWVudFdpZHRoIC0gZXhwYW5kT2Zmc2V0IC0gbWluV2lkdGggLSBib3Jk
ZXJXaWR0aDsKKyAgICAgICAgdmFyIHBlcmNlbnRhZ2VzID0gdGhpcy5jb21wdXRlQmFyR3JhcGhQ
ZXJjZW50YWdlcyhyZWNvcmQpOworICAgICAgICB2YXIgbGVmdCA9IHBlcmNlbnRhZ2VzLnN0YXJ0
IC8gMTAwICogd29ya2luZ0FyZWE7CisgICAgICAgIHZhciB3aWR0aCA9IChwZXJjZW50YWdlcy5l
bmQgLSBwZXJjZW50YWdlcy5zdGFydCkgLyAxMDAgKiB3b3JraW5nQXJlYSArIG1pbldpZHRoOwor
ICAgICAgICB2YXIgd2lkdGhXaXRoQ2hpbGRyZW4gPSAgKHBlcmNlbnRhZ2VzLmVuZFdpdGhDaGls
ZHJlbiAtIHBlcmNlbnRhZ2VzLnN0YXJ0KSAvIDEwMCAqIHdvcmtpbmdBcmVhOworICAgICAgICBp
ZiAocGVyY2VudGFnZXMuZW5kV2l0aENoaWxkcmVuID4gcGVyY2VudGFnZXMuZW5kKQorICAgICAg
ICAgICAgd2lkdGhXaXRoQ2hpbGRyZW4gKz0gYm9yZGVyV2lkdGggKyBtaW5XaWR0aDsKKyAgICAg
ICAgcmV0dXJuIHtsZWZ0OiBsZWZ0LCB3aWR0aDogd2lkdGgsIHdpZHRoV2l0aENoaWxkcmVuOiB3
aWR0aFdpdGhDaGlsZHJlbn07CiAgICAgfSwKIAogICAgIGNhbGN1bGF0ZVdpbmRvdzogZnVuY3Rp
b24oKQpAQCAtNDgzLDcgKzUzOCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3Iu
cHJvdG90eXBlID0gewogICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkg
PT09IC0xIHx8IGxvd2VyQm91bmQgPCB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSkKICAg
ICAgICAgICAgIHRoaXMuX2Fic29sdXRlTWluaW11bUJvdW5kYXJ5ID0gbG93ZXJCb3VuZDsKIAot
ICAgICAgICB2YXIgdXBwZXJCb3VuZCA9IHJlY29yZC5lbmRUaW1lOworICAgICAgICB2YXIgdXBw
ZXJCb3VuZCA9IHJlY29yZC5fbGFzdENoaWxkRW5kVGltZTsKICAgICAgICAgaWYgKHRoaXMuX2Fi
c29sdXRlTWF4aW11bUJvdW5kYXJ5ID09PSAtMSB8fCB1cHBlckJvdW5kID4gdGhpcy5fYWJzb2x1
dGVNYXhpbXVtQm91bmRhcnkpCiAgICAgICAgICAgICB0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3Vu
ZGFyeSA9IHVwcGVyQm91bmQ7CiAgICAgfSwKQEAgLTU1OSw2ICs2MTQsMTEgQEAgV2ViSW5zcGVj
dG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cgPSBmdW5jdGlvbihncmFwaENvbnRhaW5lciwgc2No
ZWR1bGVSZWZyZXNoLAogICAgIHRoaXMuX2JhckFyZWFFbGVtZW50LmNsYXNzTmFtZSA9ICJ0aW1l
bGluZS1ncmFwaC1iYXItYXJlYSI7CiAgICAgdGhpcy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMu
X2JhckFyZWFFbGVtZW50KTsKIAorICAgIHRoaXMuX2JhcldpdGhDaGlsZHJlbkVsZW1lbnQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICB0aGlzLl9iYXJXaXRoQ2hpbGRyZW5F
bGVtZW50LmNsYXNzTmFtZSA9ICJ0aW1lbGluZS1ncmFwaC1iYXIgd2l0aC1jaGlsZHJlbiI7Cisg
ICAgdGhpcy5fYmFyV2l0aENoaWxkcmVuRWxlbWVudC5yb3cgPSB0aGlzOworICAgIHRoaXMuX2Jh
ckFyZWFFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX2JhcldpdGhDaGlsZHJlbkVsZW1lbnQpOwor
CiAgICAgdGhpcy5fYmFyRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwog
ICAgIHRoaXMuX2JhckVsZW1lbnQuY2xhc3NOYW1lID0gInRpbWVsaW5lLWdyYXBoLWJhciI7CiAg
ICAgdGhpcy5fYmFyRWxlbWVudC5yb3cgPSB0aGlzOwpAQCAtNTgxLDIyICs2NDEsMTggQEAgV2Vi
SW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cgPSBmdW5jdGlvbihncmFwaENvbnRhaW5l
ciwgc2NoZWR1bGVSZWZyZXNoLAogV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cu
cHJvdG90eXBlID0gewogICAgIHVwZGF0ZTogZnVuY3Rpb24ocmVjb3JkLCBpc0V2ZW4sIGNhbGN1
bGF0b3IsIGNsaWVudFdpZHRoLCBleHBhbmRPZmZzZXQsIGluZGV4KQogICAgIHsKLSAgICAgICAg
Y29uc3QgbWluV2lkdGggPSA1OwotICAgICAgICBjb25zdCBib3JkZXJXaWR0aCA9IDQ7Ci0gICAg
ICAgIHZhciB3b3JraW5nQXJlYSA9IGNsaWVudFdpZHRoIC0gZXhwYW5kT2Zmc2V0IC0gbWluV2lk
dGggLSBib3JkZXJXaWR0aDsKICAgICAgICAgdGhpcy5fcmVjb3JkID0gcmVjb3JkOwogICAgICAg
ICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gInRpbWVsaW5lLWdyYXBoLXNpZGUgdGltZWxpbmUt
Y2F0ZWdvcnktIiArIHJlY29yZC5jYXRlZ29yeS5uYW1lICsgKGlzRXZlbiA/ICIgZXZlbiIgOiAi
Iik7Ci0gICAgICAgIHZhciBwZXJjZW50YWdlcyA9IGNhbGN1bGF0b3IuY29tcHV0ZUJhckdyYXBo
UGVyY2VudGFnZXMocmVjb3JkKTsKLSAgICAgICAgdmFyIGxlZnQgPSBwZXJjZW50YWdlcy5zdGFy
dCAvIDEwMCAqIHdvcmtpbmdBcmVhOwotICAgICAgICB2YXIgd2lkdGggPSAocGVyY2VudGFnZXMu
ZW5kIC0gcGVyY2VudGFnZXMuc3RhcnQpIC8gMTAwICogd29ya2luZ0FyZWE7Ci0gICAgICAgIHdp
ZHRoID0gd2lkdGggPiBtaW5XaWR0aCA/IHdpZHRoIDogbWluV2lkdGg7Ci0gICAgICAgIHRoaXMu
X2JhckVsZW1lbnQuc3R5bGUubGVmdCA9IChsZWZ0ICsgZXhwYW5kT2Zmc2V0KSArICJweCI7Ci0g
ICAgICAgIHRoaXMuX2JhckVsZW1lbnQuc3R5bGUud2lkdGggPSB3aWR0aCArICJweCI7CisgICAg
ICAgIHZhciBiYXJQb3NpdGlvbiA9IGNhbGN1bGF0b3IuY29tcHV0ZUJhckdyYXBoV2luZG93UG9z
aXRpb24ocmVjb3JkLCBjbGllbnRXaWR0aCwgZXhwYW5kT2Zmc2V0KTsKKyAgICAgICAgdGhpcy5f
YmFyV2l0aENoaWxkcmVuRWxlbWVudC5zdHlsZS5sZWZ0ID0gYmFyUG9zaXRpb24ubGVmdCArIGV4
cGFuZE9mZnNldCArICJweCI7CisgICAgICAgIHRoaXMuX2JhcldpdGhDaGlsZHJlbkVsZW1lbnQu
c3R5bGUud2lkdGggPSBiYXJQb3NpdGlvbi53aWR0aFdpdGhDaGlsZHJlbiArICJweCI7CisgICAg
ICAgIHRoaXMuX2JhckVsZW1lbnQuc3R5bGUubGVmdCA9IGJhclBvc2l0aW9uLmxlZnQgKyBleHBh
bmRPZmZzZXQgKyAicHgiOworICAgICAgICB0aGlzLl9iYXJFbGVtZW50LnN0eWxlLndpZHRoID0g
IGJhclBvc2l0aW9uLndpZHRoICsgInB4IjsKIAotICAgICAgICBpZiAocmVjb3JkLnZpc2libGVD
aGlsZHJlbkNvdW50KSB7CisgICAgICAgIGlmIChyZWNvcmQuY2hpbGRyZW4ubGVuZ3RoKSB7CiAg
ICAgICAgICAgICB0aGlzLl9leHBhbmRFbGVtZW50LnN0eWxlLnRvcCA9IGluZGV4ICogdGhpcy5f
cm93SGVpZ2h0ICsgInB4IjsKLSAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuc3R5bGUu
bGVmdCA9IGxlZnQgKyAicHgiOwotICAgICAgICAgICAgdGhpcy5fZXhwYW5kRWxlbWVudC5zdHls
ZS53aWR0aCA9IE1hdGgubWF4KDEyLCB3aWR0aCArIDI1KSArICJweCI7CisgICAgICAgICAgICB0
aGlzLl9leHBhbmRFbGVtZW50LnN0eWxlLmxlZnQgPSBiYXJQb3NpdGlvbi5sZWZ0ICsgInB4IjsK
KyAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuc3R5bGUud2lkdGggPSBNYXRoLm1heCgx
MiwgYmFyUG9zaXRpb24ud2lkdGggKyAyNSkgKyAicHgiOwogICAgICAgICAgICAgaWYgKCFyZWNv
cmQuY29sbGFwc2VkKSB7CiAgICAgICAgICAgICAgICAgdGhpcy5fZXhwYW5kRWxlbWVudC5zdHls
ZS5oZWlnaHQgPSAocmVjb3JkLnZpc2libGVDaGlsZHJlbkNvdW50ICsgMSkgKiB0aGlzLl9yb3dI
ZWlnaHQgKyAicHgiOwogICAgICAgICAgICAgICAgIHRoaXMuX2V4cGFuZEVsZW1lbnQuYWRkU3R5
bGVDbGFzcygidGltZWxpbmUtZXhwYW5kYWJsZS1leHBhbmRlZCIpOwpAQCAtNjI1LDExICs2ODEs
MTMgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkR3JhcGhSb3cucHJvdG90eXBlID0gewog
ICAgIH0KIH0KIAotV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3JkID0g
ZnVuY3Rpb24ocmVjb3JkLCByZWNvcmRTdHlsZXMsIHNlbmRSZXF1ZXN0UmVjb3JkcywgdGltZXJS
ZWNvcmRzKQorV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwuRm9ybWF0dGVkUmVjb3JkID0gZnVu
Y3Rpb24ocmVjb3JkLCBwYXJlbnRSZWNvcmQsIHJlY29yZFN0eWxlcywgc2VuZFJlcXVlc3RSZWNv
cmRzLCB0aW1lclJlY29yZHMpCiB7CiAgICAgdmFyIHJlY29yZFR5cGVzID0gV2ViSW5zcGVjdG9y
LlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZTsKICAgICB2YXIgc3R5bGUgPSByZWNvcmRTdHlsZXNb
cmVjb3JkLnR5cGVdOwogCisgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnRSZWNvcmQ7CisgICAgcGFy
ZW50UmVjb3JkLmNoaWxkcmVuLnB1c2godGhpcyk7CiAgICAgdGhpcy5jYXRlZ29yeSA9IHN0eWxl
LmNhdGVnb3J5OwogICAgIHRoaXMudGl0bGUgPSBzdHlsZS50aXRsZTsKICAgICB0aGlzLnN0YXJ0
VGltZSA9IHJlY29yZC5zdGFydFRpbWUgLyAxMDAwOwpAQCAtNjM3LDYgKzY5NSw3IEBAIFdlYklu
c3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZCA9IGZ1bmN0aW9uKHJlY29yZCwg
cmVjb3JkU3R5bGVzLCBzZW5kCiAgICAgdGhpcy5jb3VudCA9IDE7CiAgICAgdGhpcy50eXBlID0g
cmVjb3JkLnR5cGU7CiAgICAgdGhpcy5lbmRUaW1lID0gKHR5cGVvZiByZWNvcmQuZW5kVGltZSAh
PT0gInVuZGVmaW5lZCIpID8gcmVjb3JkLmVuZFRpbWUgLyAxMDAwIDogdGhpcy5zdGFydFRpbWU7
CisgICAgdGhpcy5fbGFzdENoaWxkRW5kVGltZSA9IHRoaXMuZW5kVGltZTsKICAgICB0aGlzLm9y
aWdpbmFsUmVjb3JkRm9yVGVzdHMgPSByZWNvcmQ7CiAgICAgdGhpcy5jYWxsZXJTY3JpcHROYW1l
ID0gcmVjb3JkLmNhbGxlclNjcmlwdE5hbWU7CiAgICAgdGhpcy5jYWxsZXJTY3JpcHRMaW5lID0g
cmVjb3JkLmNhbGxlclNjcmlwdExpbmU7CkBAIC02NDcsMjIgKzcwNiwxOCBAQCBXZWJJbnNwZWN0
b3IuVGltZWxpbmVQYW5lbC5Gb3JtYXR0ZWRSZWNvcmQgPSBmdW5jdGlvbihyZWNvcmQsIHJlY29y
ZFN0eWxlcywgc2VuZAogICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVz
LlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlKSB7CiAgICAgICAgIHZhciBzZW5kUmVxdWVzdFJlY29y
ZCA9IHNlbmRSZXF1ZXN0UmVjb3Jkc1tyZWNvcmQuZGF0YS5pZGVudGlmaWVyXTsKICAgICAgICAg
aWYgKHNlbmRSZXF1ZXN0UmVjb3JkKSB7IC8vIEZhbHNlIGlmIHdlIHN0YXJ0ZWQgaW5zdHJ1bWVu
dGF0aW9uIGluIHRoZSBtaWRkbGUgb2YgcmVxdWVzdC4KLSAgICAgICAgICAgIHNlbmRSZXF1ZXN0
UmVjb3JkLl9yZXNwb25zZVJlY2VpdmVkRm9ybWF0dGVkVGltZSA9IHRoaXMuc3RhcnRUaW1lOwog
ICAgICAgICAgICAgcmVjb3JkLmRhdGEudXJsID0gc2VuZFJlcXVlc3RSZWNvcmQuZGF0YS51cmw7
Ci0gICAgICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLnN0YXJ0VGlt
ZTsKICAgICAgICAgICAgIC8vIE5vdyB0aGF0IHdlIGhhdmUgcmVzb3VyY2UgaW4gdGhlIGNvbGxl
Y3Rpb24sIHJlY2FsY3VsYXRlIGRldGFpbHMgaW4gb3JkZXIgdG8gZGlzcGxheSBzaG9ydCB1cmwu
CiAgICAgICAgICAgICBzZW5kUmVxdWVzdFJlY29yZC5kZXRhaWxzID0gdGhpcy5fZ2V0UmVjb3Jk
RGV0YWlscyhzZW5kUmVxdWVzdFJlY29yZCwgc2VuZFJlcXVlc3RSZWNvcmRzKTsKLSAgICAgICAg
ICAgIHRoaXMuY2FsbGVyU2NyaXB0TmFtZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLmNhbGxlclNjcmlw
dE5hbWU7Ci0gICAgICAgICAgICB0aGlzLmNhbGxlclNjcmlwdExpbmUgPSBzZW5kUmVxdWVzdFJl
Y29yZC5jYWxsZXJTY3JpcHRMaW5lOwogICAgICAgICB9CisgICAgfSBlbHNlIGlmIChyZWNvcmQu
dHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VSZWNlaXZlRGF0YSkgeworICAgICAgICB2YXIg
c2VuZFJlcXVlc3RSZWNvcmQgPSBzZW5kUmVxdWVzdFJlY29yZHNbcmVjb3JkLmRhdGEuaWRlbnRp
Zmllcl07CisgICAgICAgIGlmIChzZW5kUmVxdWVzdFJlY29yZCkgLy8gRmFsc2UgZm9yIG1haW4g
cmVzb3VyY2UuCisgICAgICAgICAgICByZWNvcmQuZGF0YS51cmwgPSBzZW5kUmVxdWVzdFJlY29y
ZC5kYXRhLnVybDsKICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSByZWNvcmRUeXBlcy5S
ZXNvdXJjZUZpbmlzaCkgewogICAgICAgICB2YXIgc2VuZFJlcXVlc3RSZWNvcmQgPSBzZW5kUmVx
dWVzdFJlY29yZHNbcmVjb3JkLmRhdGEuaWRlbnRpZmllcl07Ci0gICAgICAgIGlmIChzZW5kUmVx
dWVzdFJlY29yZCkgey8vIEZhbHNlIGZvciBtYWluIHJlc291cmNlLgorICAgICAgICBpZiAoc2Vu
ZFJlcXVlc3RSZWNvcmQpIC8vIEZhbHNlIGZvciBtYWluIHJlc291cmNlLgogICAgICAgICAgICAg
cmVjb3JkLmRhdGEudXJsID0gc2VuZFJlcXVlc3RSZWNvcmQuZGF0YS51cmw7Ci0gICAgICAgICAg
ICB0aGlzLnN0YXJ0VGltZSA9IHNlbmRSZXF1ZXN0UmVjb3JkLl9yZXNwb25zZVJlY2VpdmVkRm9y
bWF0dGVkVGltZTsKLSAgICAgICAgICAgIHRoaXMuY2FsbGVyU2NyaXB0TmFtZSA9IHNlbmRSZXF1
ZXN0UmVjb3JkLmNhbGxlclNjcmlwdE5hbWU7Ci0gICAgICAgICAgICB0aGlzLmNhbGxlclNjcmlw
dExpbmUgPSBzZW5kUmVxdWVzdFJlY29yZC5jYWxsZXJTY3JpcHRMaW5lOwotICAgICAgICB9CiAg
ICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gcmVjb3JkVHlwZXMuVGltZXJJbnN0YWxsKSB7
CiAgICAgICAgIHRoaXMudGltZW91dCA9IHJlY29yZC5kYXRhLnRpbWVvdXQ7CiAgICAgICAgIHRo
aXMuc2luZ2xlU2hvdCA9IHJlY29yZC5kYXRhLnNpbmdsZVNob3Q7CkBAIC02OTIsNiArNzQ3LDEz
IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUg
PSB7CiAgICAgICAgIHJldHVybiBjZWxsOwogICAgIH0sCiAKKyAgICBnZXQgY2hpbGRyZW4oKQor
ICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLl9jaGlsZHJlbikKKyAgICAgICAgICAgIHRoaXMuX2No
aWxkcmVuID0gW107CisgICAgICAgIHJldHVybiB0aGlzLl9jaGlsZHJlbjsKKyAgICB9LAorCiAg
ICAgX2NyZWF0ZVJvdzogZnVuY3Rpb24odGl0bGUsIGNvbnRlbnQpCiAgICAgewogICAgICAgICB2
YXIgcm93ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidHIiKTsKQEAgLTcyOCwyMCArNzkwLDMx
IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUg
PSB7CiAgICAgICAgICAgICAgICAgdGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5UaW1lckZpcmUg
fHwKICAgICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlRpbWVyUmVtb3Zl
KSB7CiAgICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMu
X2NyZWF0ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlRpbWVyIElkIiksIHRoaXMuZGF0YS50
aW1lcklkKSk7Ci0gICAgICAgICAgICAgICAgaWYgKHRoaXMudGltZW91dCkgeworICAgICAgICAg
ICAgICAgIGlmICh0eXBlb2YgdGhpcy50aW1lb3V0ID09PSAibnVtYmVyIikgewogICAgICAgICAg
ICAgICAgICAgICByZWNvcmRDb250ZW50VGFibGUuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlUm93
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiVGltZW91dCIpLCB0aGlzLnRpbWVvdXQpKTsKICAgICAg
ICAgICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0
ZVJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlcGVhdHMiKSwgIXRoaXMuc2luZ2xlU2hvdCkp
OwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAodGhpcy5jYWxsU2l0ZVNj
cmlwdExpbmUpIHsKKyAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2FsbFNpdGVTY3Jp
cHRMaW5lID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICAgICB2YXIgbGluayA9IFdl
Ykluc3BlY3Rvci5saW5raWZ5UmVzb3VyY2VBc05vZGUodGhpcy5jYWxsU2l0ZVNjcmlwdE5hbWUs
ICJzY3JpcHRzIiwgdGhpcy5jYWxsU2l0ZVNjcmlwdExpbmUsICJ0aW1lbGluZS1kZXRhaWxzIik7
CiAgICAgICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlz
Ll9jcmVhdGVMaW5rUm93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2FsbCBTaXRlIiksIGxpbmsp
KTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9
PT0gcmVjb3JkVHlwZXMuRnVuY3Rpb25DYWxsKSB7CiAgICAgICAgICAgICAgICAgdmFyIGxpbmsg
PSBXZWJJbnNwZWN0b3IubGlua2lmeVJlc291cmNlQXNOb2RlKHRoaXMuZGF0YS5zY3JpcHROYW1l
LCAic2NyaXB0cyIsIHRoaXMuZGF0YS5zY3JpcHRMaW5lLCAidGltZWxpbmUtZGV0YWlscyIpOwog
ICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVh
dGVMaW5rUm93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiTG9jYXRpb24iKSwgbGluaykpOwotICAg
ICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlU2Vu
ZFJlcXVlc3QgfHwgdGhpcy50eXBlID09PSByZWNvcmRUeXBlcy5SZXNvdXJjZVJlY2VpdmVSZXNw
b25zZSB8fCB0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlRmluaXNoKSB7CisgICAg
ICAgICAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VTZW5k
UmVxdWVzdCB8fAorICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IHJlY29yZFR5
cGVzLlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlIHx8CisgICAgICAgICAgICAgICAgICAgICAgIHRo
aXMudHlwZSA9PT0gcmVjb3JkVHlwZXMuUmVzb3VyY2VSZWNlaXZlRGF0YSB8fAorICAgICAgICAg
ICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IHJlY29yZFR5cGVzLlJlc291cmNlRmluaXNoKSB7
CiAgICAgICAgICAgICAgICAgdmFyIGxpbmsgPSBXZWJJbnNwZWN0b3IubGlua2lmeVJlc291cmNl
QXNOb2RlKHRoaXMuZGF0YS51cmwsICJyZXNvdXJjZXMiLCBudWxsLCAidGltZWxpbmUtZGV0YWls
cyIpOwogICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aGlz
Ll9jcmVhdGVMaW5rUm93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVzb3VyY2UiKSwgbGluaykp
OworICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEucmVxdWVzdE1ldGhvZCkKKyAgICAgICAg
ICAgICAgICAgICAgcmVjb3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZVJv
dyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlcXVlc3QgTWV0aG9kIiksIHRoaXMuZGF0YS5yZXF1
ZXN0TWV0aG9kKSk7CisgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRhdGEuc3RhdHVz
Q29kZSA9PT0gIm51bWJlciIpCisgICAgICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJs
ZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTdGF0
dXMgQ29kZSIpLCB0aGlzLmRhdGEuc3RhdHVzQ29kZSkpOworICAgICAgICAgICAgICAgIGlmICh0
aGlzLmRhdGEubWltZVR5cGUpCisgICAgICAgICAgICAgICAgICAgIHJlY29yZENvbnRlbnRUYWJs
ZS5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJNaW1l
IFR5cGUiKSwgdGhpcy5kYXRhLm1pbWVUeXBlKSk7CisgICAgICAgICAgICAgICAgaWYgKHR5cGVv
ZiB0aGlzLmRhdGEuZXhwZWN0ZWRDb250ZW50TGVuZ3RoID09PSAibnVtYmVyIiAmJiB0aGlzLmRh
dGEuZXhwZWN0ZWRDb250ZW50TGVuZ3RoICE9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgcmVj
b3JkQ29udGVudFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZVJvdyhXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcoIkV4cGVjdGVkIENvbnRlbnQgTGVuZ3RoIiksIHRoaXMuZGF0YS5leHBlY3RlZENv
bnRlbnRMZW5ndGgpKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09PSByZWNv
cmRUeXBlcy5FdmFsdWF0ZVNjcmlwdCkgewogICAgICAgICAgICAgICAgIHZhciBsaW5rID0gV2Vi
SW5zcGVjdG9yLmxpbmtpZnlSZXNvdXJjZUFzTm9kZSh0aGlzLmRhdGEudXJsLCAic2NyaXB0cyIs
IG51bGwsICJ0aW1lbGluZS1kZXRhaWxzIik7CiAgICAgICAgICAgICAgICAgcmVjb3JkQ29udGVu
dFRhYmxlLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUxpbmtSb3coV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKCJTY3JpcHQiKSwgbGluaykpOwpAQCAtNzc2LDYgKzg0OSw3IEBAIFdlYkluc3BlY3Rvci5U
aW1lbGluZVBhbmVsLkZvcm1hdHRlZFJlY29yZC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICBj
YXNlIFdlYkluc3BlY3Rvci5UaW1lbGluZUFnZW50LlJlY29yZFR5cGUuWEhSTG9hZDoKICAgICAg
ICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQWdlbnQuUmVjb3JkVHlwZS5FdmFsdWF0
ZVNjcmlwdDoKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQWdlbnQuUmVj
b3JkVHlwZS5SZXNvdXJjZVNlbmRSZXF1ZXN0OgorICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0
b3IuVGltZWxpbmVBZ2VudC5SZWNvcmRUeXBlLlJlc291cmNlUmVjZWl2ZURhdGE6CiAgICAgICAg
ICAgICBjYXNlIFdlYkluc3BlY3Rvci5UaW1lbGluZUFnZW50LlJlY29yZFR5cGUuUmVzb3VyY2VS
ZWNlaXZlUmVzcG9uc2U6CiAgICAgICAgICAgICBjYXNlIFdlYkluc3BlY3Rvci5UaW1lbGluZUFn
ZW50LlJlY29yZFR5cGUuUmVzb3VyY2VGaW5pc2g6CiAgICAgICAgICAgICAgICAgcmV0dXJuIFdl
Ykluc3BlY3Rvci5kaXNwbGF5TmFtZUZvclVSTChyZWNvcmQuZGF0YS51cmwpOwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3MgYi9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwppbmRleCBkYjZmMTdiLi44YzY0NzQxIDEw
MDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwpAQCAtMzU5NSw2ICsz
NTk1LDEwIEBAIGJvZHkuaW5hY3RpdmUgLnNpZGViYXItdHJlZS1pdGVtLnNlbGVjdGVkIC5idWJi
bGUuc2VhcmNoLW1hdGNoZXMgewogICAgIHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlRmlsbDsKIH0K
IAorLnRpbWVsaW5lLWdyYXBoLWJhci53aXRoLWNoaWxkcmVuIHsKKyAgICBvcGFjaXR5OiAwLjM7
Cit9CisKIC50aW1lbGluZS1ncmFwaC1zaWRlLmV2ZW4gewogICAgIGJhY2tncm91bmQtY29sb3I6
IHJnYmEoMCwgMCwgMCwgMC4wNSk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHAgYi9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXgg
MWNiYjg0My4uNjQwMDFkMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
ZXIuY3BwCisrKyBiL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcApAQCAtMzQsNiAr
MzQsNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIK
ICNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgorI2luY2x1ZGUgIkluc3BlY3RvclRpbWVsaW5lQWdl
bnQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKQEAgLTM5NywxNiArMzk4LDQ0IEBAIHZvaWQgUmVz
b3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKFJlc291cmNlSGFuZGxlKiwgdW5zaWduZWQgbG9uZyBs
b25nIGJ5dGVzU2VudCwKIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNl
KFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Cisj
aWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBpZiAoSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6aW5z
dGFuY2VDb3VudCgpKSB7CisgICAgICAgIEluc3BlY3RvclRpbWVsaW5lQWdlbnQqIHRpbWVsaW5l
QWdlbnQgPSBtX2ZyYW1lLT5wYWdlKCkgPyBtX2ZyYW1lLT5wYWdlKCktPmluc3BlY3RvclRpbWVs
aW5lQWdlbnQoKSA6IDA7CisgICAgICAgIGlmICh0aW1lbGluZUFnZW50KQorICAgICAgICAgICAg
dGltZWxpbmVBZ2VudC0+d2lsbFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKGlkZW50aWZpZXIoKSwg
cmVzcG9uc2UpOworICAgIH0KKyNlbmRpZgogI2lmIEVOQUJMRShPRkZMSU5FX1dFQl9BUFBMSUNB
VElPTlMpCiAgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
Pm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQogICAgICAgICBy
ZXR1cm47CiAjZW5kaWYKICAgICBkaWRSZWNlaXZlUmVzcG9uc2UocmVzcG9uc2UpOworI2lmIEVO
QUJMRShJTlNQRUNUT1IpCisgICAgaWYgKEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6Omluc3RhbmNl
Q291bnQoKSkgeworICAgICAgICBJbnNwZWN0b3JUaW1lbGluZUFnZW50KiB0aW1lbGluZUFnZW50
ID0gbV9mcmFtZS0+cGFnZSgpID8gbV9mcmFtZS0+cGFnZSgpLT5pbnNwZWN0b3JUaW1lbGluZUFn
ZW50KCkgOiAwOworICAgICAgICBpZiAodGltZWxpbmVBZ2VudCkKKyAgICAgICAgICAgIHRpbWVs
aW5lQWdlbnQtPmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKCk7CisgICAgfQorI2VuZGlmCiB9
CiAKIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwg
Y29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgaW50IGxlbmd0aFJlY2VpdmVkKQogeworI2lm
IEVOQUJMRShJTlNQRUNUT1IpCisgICAgaWYgKEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6Omluc3Rh
bmNlQ291bnQoKSkgeworICAgICAgICBJbnNwZWN0b3JUaW1lbGluZUFnZW50KiB0aW1lbGluZUFn
ZW50ID0gbV9mcmFtZS0+cGFnZSgpID8gbV9mcmFtZS0+cGFnZSgpLT5pbnNwZWN0b3JUaW1lbGlu
ZUFnZW50KCkgOiAwOworICAgICAgICBpZiAodGltZWxpbmVBZ2VudCkKKyAgICAgICAgICAgIHRp
bWVsaW5lQWdlbnQtPndpbGxSZWNlaXZlUmVzb3VyY2VEYXRhKGlkZW50aWZpZXIoKSk7CisgICAg
fQorI2VuZGlmCiAgICAgZGlkUmVjZWl2ZURhdGEoZGF0YSwgbGVuZ3RoLCBsZW5ndGhSZWNlaXZl
ZCwgZmFsc2UpOworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgaWYgKEluc3BlY3RvclRpbWVs
aW5lQWdlbnQ6Omluc3RhbmNlQ291bnQoKSkgeworICAgICAgICBJbnNwZWN0b3JUaW1lbGluZUFn
ZW50KiB0aW1lbGluZUFnZW50ID0gbV9mcmFtZS0+cGFnZSgpID8gbV9mcmFtZS0+cGFnZSgpLT5p
bnNwZWN0b3JUaW1lbGluZUFnZW50KCkgOiAwOworICAgICAgICBpZiAodGltZWxpbmVBZ2VudCkK
KyAgICAgICAgICAgIHRpbWVsaW5lQWdlbnQtPmRpZFJlY2VpdmVSZXNvdXJjZURhdGEoKTsKKyAg
ICB9CisjZW5kaWYKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhS
ZXNvdXJjZUhhbmRsZSopCg==
</data>
<flag name="review"
          id="34069"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>