<?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>216188</bug_id>
          
          <creation_ts>2020-09-04 13:25:35 -0700</creation_ts>
          <short_desc>[macOS] Add editability to input type=time</short_desc>
          <delta_ts>2020-09-09 19:44:09 -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>Forms</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>216272</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aditya Keerthi">akeerthi</reporter>
          <assigned_to name="Aditya Keerthi">akeerthi</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mifenton</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1685835</commentid>
    <comment_count>0</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-09-04 13:25:35 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685838</commentid>
    <comment_count>1</comment_count>
      <attachid>408017</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-09-04 13:28:56 -0700</bug_when>
    <thetext>Created attachment 408017
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685848</commentid>
    <comment_count>2</comment_count>
      <attachid>408017</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-09-04 13:58:33 -0700</bug_when>
    <thetext>Comment on attachment 408017
Patch

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

&gt; Source/WebCore/html/DateTimeFieldsState.h:39
&gt; +    enum AMPMValue {
&gt; +        AMPMValueAM,
&gt; +        AMPMValuePM,
&gt; +    };

I think this would read cleaner as something like:

enum class Meridiem {
    AM,
    PM
};</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685849</commentid>
    <comment_count>3</comment_count>
      <attachid>408017</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-09-04 13:59:59 -0700</bug_when>
    <thetext>Comment on attachment 408017
Patch

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

This is looking pretty great! Just a couple of minor comments as I continue to look.

&gt; Source/WebCore/html/DateTimeFieldsState.h:36
&gt; +    enum AMPMValue {

Nit - in new code, we typically prefer 8-bit-wide enum classes. For instance,

enum class AMPMValue : bool {
    …
};

&gt; Source/WebCore/html/shadow/DateTimeSymbolicFieldElement.cpp:122
&gt; +    int index = m_typeAhead.handleEvent(&amp;keyboardEvent, TypeAhead::MatchPrefix | TypeAhead::CycleFirstChar | TypeAhead::MatchIndex);

Not specific to this patch or anything, but we should make `TypeAhead::handleEvent` return an `Optional&lt;int&gt;` at some point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685900</commentid>
    <comment_count>4</comment_count>
      <attachid>408017</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-09-04 16:07:12 -0700</bug_when>
    <thetext>Comment on attachment 408017
Patch

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

r=me, nice work!

&gt; Source/WebCore/html/BaseChooserOnlyDateAndTimeInputType.cpp:313
&gt; +    } else if (name == stepAttr &amp;&amp; m_dateTimeEditElement) {
&gt; +        updateInnerTextValue();
&gt;      }

Style: no `{` `}` if the body is a single line

&gt; Source/WebCore/html/DateTimeFieldsState.h:48
&gt; +    Optional&lt;AMPMValue&gt; ampm;

IMO it would be nicer to read as `meridiem` (e.g. `-webkit-datetime-edit-meridiem-field`) than as `ampm`

&gt; Source/WebCore/html/TimeInputType.cpp:121
&gt; +    if (!state.hour || !state.minute || !state.ampm)

is it not possible (perhaps undesirable) to infer the `minute` and/or `meridiem` based on the `hour`?  e.g. if the `hour` is `20`, then `minute` is `0` and `meridien` is `PM`

&gt; Source/WebCore/html/TimeInputType.cpp:140
&gt; +    auto millisecondsPerSecond = Decimal::fromDouble(msPerSecond);
&gt; +    auto millisecondsPerMinute = Decimal::fromDouble(msPerMinute);

&lt;unrelated to this patch&gt; would be neat if `Decimal` were `constexpr` :P

&gt; Source/WebCore/html/TimeInputType.cpp:153
&gt; +        layoutParameters.fallbackDateTimeFormat = &quot;HH:mm:ss&quot;;

`_s`

&gt; Source/WebCore/html/TimeInputType.cpp:156
&gt; +        layoutParameters.fallbackDateTimeFormat = &quot;HH:mm&quot;;

`_s`

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.cpp:110
&gt; +    case 11: {

NIT: none of these `case` actually need the `{` `}` since they don&apos;t declare any variables

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.cpp:111
&gt; +        state.hour = value ? value : 12;

&lt;after reading below&gt; Could we use `value ?: 12` here too?

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.cpp:119
&gt; +        state.hour = (value % 12) ?: 12;

`?:` 🤯

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.cpp:129
&gt; +        state.hour = value == 12 ? 12 : value % 12;

Why not also do `(value % 12) ?: 12` here too?

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.cpp:141
&gt; +    case 11: {

ditto (:110)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685994</commentid>
    <comment_count>5</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-09-04 20:27:56 -0700</bug_when>
    <thetext>(In reply to Devin Rousso from comment #4)
&gt; Comment on attachment 408017 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=408017&amp;action=review
&gt; 
&gt; r=me, nice work!

Thanks for the review! I&apos;m going to address one of the failing WPT tests in a separate patch before landing this one, as it should also apply to date inputs.

&gt; &gt; Source/WebCore/html/TimeInputType.cpp:121
&gt; &gt; +    if (!state.hour || !state.minute || !state.ampm)
&gt; 
&gt; is it not possible (perhaps undesirable) to infer the `minute` and/or
&gt; `meridiem` based on the `hour`?  e.g. if the `hour` is `20`, then `minute`
&gt; is `0` and `meridien` is `PM`

DateTimeFieldsState will always have an `hour` between 1 and 12 (even if the user&apos;s locale has a different format, the value is normalized). If any one of these fields is empty, we return an empty string, matching the behavior of date/time inputs in other browsers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686747</commentid>
    <comment_count>6</comment_count>
      <attachid>408269</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-09-08 14:27:16 -0700</bug_when>
    <thetext>Created attachment 408269
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686962</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-09 07:48:30 -0700</bug_when>
    <thetext>Committed r266779: &lt;https://trac.webkit.org/changeset/266779&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 408269.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686963</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-09 07:49:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/68571901&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687213</commentid>
    <comment_count>9</comment_count>
      <attachid>408269</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-09-09 18:15:40 -0700</bug_when>
    <thetext>Comment on attachment 408269
Patch for landing

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

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.h:61
&gt; +    virtual void populateDateTimeFieldsState(DateTimeFieldsState&amp;);
&gt; +    virtual void setValueAsDate(const DateComponents&amp;);

These should be override instead of virtual.
Also, why are the orders different?

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.h:75
&gt; +    void populateDateTimeFieldsState(DateTimeFieldsState&amp;);
&gt; +    void setValueAsDate(const DateComponents&amp;);

Ditto.

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.h:89
&gt; +    virtual void populateDateTimeFieldsState(DateTimeFieldsState&amp;);
&gt; +    virtual void setValueAsDate(const DateComponents&amp;);

Ditto.

&gt; Source/WebCore/html/shadow/DateTimeFieldElements.h:103
&gt; +    virtual void populateDateTimeFieldsState(DateTimeFieldsState&amp;);
&gt; +    virtual void setValueAsDate(const DateComponents&amp;);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687241</commentid>
    <comment_count>10</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-09-09 19:44:09 -0700</bug_when>
    <thetext>Opened a new bug to address post-review comments: https://bugs.webkit.org/show_bug.cgi?id=216339.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408017</attachid>
            <date>2020-09-04 13:28:56 -0700</date>
            <delta_ts>2020-09-04 16:07:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216188-20200904162855.patch</filename>
            <type>text/plain</type>
            <size>73786</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWVhOWMyZmQyYzE1ZWRl
MjNiY2RlY2UyM2VmODI2MzAwYTI4NTZjYi4uMmFhMTZlZTU0MzdmM2ZkZjMzODAxN2I5NmY2NDk2
NzU4MTJmNGRiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExNSBAQAorMjAyMC0wOS0wNCAgQWRp
dHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBBZGQg
ZWRpdGFiaWxpdHkgdG8gaW5wdXQgdHlwZT10aW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYxODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgZWRpdGFiaWxpdHkgdG8gaW5w
dXQgdHlwZT10aW1lIGJ5IGxldmVyYWdpbmcgZXhpc3RpbmcKKyAgICAgICAgbG9naWMgdG8gYWRk
IGVkaXRhYmxlIGNvbXBvbmVudHMgdG8gZGF0ZS90aW1lIGlucHV0cy4KKworICAgICAgICBEYXRl
VGltZXtIb3VyfE1pbnV0ZXxTZWNvbmR8TWlsbGlzZWNvbmR8QU1QTX1GaWVsZEVsZW1lbnRzIHdl
cmUKKyAgICAgICAgY3JlYXRlZCB0byByZXByZXNlbnQgdGhlIG5ldyBlZGl0YWJsZSBmaWVsZHMu
IEJ5IGRlZmF1bHQsIG9ubHkgdGhlCisgICAgICAgIGhvdXIgYW5kIG1pbnV0ZSBmaWVsZHMgYXJl
IGRpc3BsYXllZC4gSG93ZXZlciwgdGhlIG1pbGxpc2Vjb25kCisgICAgICAgIGFuZCBzZWNvbmQg
ZmllbGRzIG1heSBiZSBhZGRlZCBkZXBlbmRpbmcgb24gdGhlIGluaXRpYWwgdmFsdWUgb2YKKyAg
ICAgICAgdGhlIGVsZW1lbnQsIG9yIHRoZSB2YWx1ZSBvZiB0aGUgc3RlcCBhdHRyaWJ1dGUuCisK
KyAgICAgICAgVGVzdHM6IGZhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMv
dGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWZvY3VzLWFuZC1ibHVyLWV2ZW50cy5odG1sCisgICAg
ICAgICAgICAgICBmYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUt
ZWRpdGFibGUtY29tcG9uZW50cy1rZXlib2FyZC1ldmVudHMuaHRtbAorICAgICAgICAgICAgICAg
ZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNv
bXBvbmVudHMtbW91c2UtZXZlbnRzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZm9ybXMvdGlt
ZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLXNlY29u
ZC1hbmQtbWlsbGlzZWNvbmQtZmllbGQuaHRtbAorCisgICAgICAgICogY3NzL2h0bWwuY3NzOgor
CisgICAgICAgIFVwZGF0ZSBzdHlsZXNoZWV0IHRvIGhhbmRsZSBob3VyLCBtaW51dGUsIHNlY29u
ZCwgbWlsbGlzZWNvbmQgYW5kIEFNL1BNIGZpZWxkcy4KKworICAgICAgICAoaW5wdXQ6Oi13ZWJr
aXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkLCk6CisgICAgICAgIChpbnB1dDo6LXdlYmtpdC1k
YXRldGltZS1lZGl0LXllYXItZmllbGQ6Zm9jdXMsKToKKyAgICAgICAgKGlucHV0W2Rpc2FibGVk
XTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQsKToKKyAgICAgICAgKiBodG1sL0Jh
c2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlOjp1cGRhdGVJbm5lclRleHRWYWx1
ZSk6CisgICAgICAgIChXZWJDb3JlOjpCYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlw
ZTo6YXR0cmlidXRlQ2hhbmdlZCk6CisKKyAgICAgICAgVGhlIHN0ZXAgYXR0cmlidXRlIGNhbiBk
ZXRlcm1pbmUgd2hldGhlciB0aGUgc2Vjb25kIGFuZC9vciBtaWxsaXNlY29uZAorICAgICAgICBm
aWVsZHMgYXJlIGRpc3BsYXllZC4gQ29uc2VxdWVudGx5LCB3ZSBzaG91bGQgdXBkYXRlIHRoZSBm
aWVsZHMgaW4KKyAgICAgICAgbV9kYXRlVGltZUVkaXRFbGVtZW50IHdoZW4gdGhlIHN0ZXAgYXR0
cmlidXRlIGlzIGNoYW5nZWQuCisKKyAgICAgICAgKiBodG1sL0Jhc2VDaG9vc2VyT25seURhdGVB
bmRUaW1lSW5wdXRUeXBlLmg6CisKKyAgICAgICAgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKCkgbm93
IHRha2VzIGFuIGFkZGl0aW9uYWwgRGF0ZUNvbXBvbmVudHMgYXJndW1lbnQuCisgICAgICAgIFRo
aXMgYXJndW1lbnQgaXMgbmVlZGVkIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBzZWNvbmQgYW5k
L29yCisgICAgICAgIG1pbGxpc2Vjb25kIGZpZWxkIGlzIGRpc3BsYXllZC4KKworICAgICAgICAq
IGh0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9EYXRlSW5w
dXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVJbnB1dFR5cGU6OnNldHVwTGF5b3V0
UGFyYW1ldGVycyBjb25zdCk6CisgICAgICAgICogaHRtbC9EYXRlSW5wdXRUeXBlLmg6CisgICAg
ICAgICogaHRtbC9EYXRlVGltZUZpZWxkc1N0YXRlLmg6CisgICAgICAgICogaHRtbC9EYXRlVGlt
ZUxvY2FsSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lTG9jYWxJbnB1
dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVycyBjb25zdCk6CisgICAgICAgICogaHRtbC9EYXRl
VGltZUxvY2FsSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9Nb250aElucHV0VHlwZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNb250aElucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0ZXJz
IGNvbnN0KToKKyAgICAgICAgKiBodG1sL01vbnRoSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRt
bC9UaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbWVJbnB1dFR5cGU6Omlz
VmFsaWRGb3JtYXQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6VGltZUlucHV0VHlwZTo6Zm9y
bWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpUaW1lSW5w
dXRUeXBlOjpzZXR1cExheW91dFBhcmFtZXRlcnMgY29uc3QpOgorCisgICAgICAgIFRoZSBtaWxs
aXNlY29uZCBmaWVsZCBpcyBkaXNwbGF5ZWQgaWYgdGhlIGRhdGUgaGFzIGEgbm9uLXplcm8gdmFs
dWUgZm9yCisgICAgICAgIG1pbGxpc2Vjb25kcywgb3IgaWYgdGhlIHN0ZXAgYXR0cmlidXRlIGhh
cyBzdWItc2Vjb25kIHByZWNpc2lvbi4gVGhlCisgICAgICAgIHNlY29uZCBmaWVsZCBpcyBkaXNw
bGF5ZWQgaWYgdGhlIG1pbGxpc2Vjb25kIGZpZWxkIGlzIGRpc3BsYXllZCwgaWYgdGhlCisgICAg
ICAgIGRhdGUgaGFzIGEgbm9uLXplcm8gdmFsdWUgZm9yIHNlY29uZHMsIG9yIGlmIHRoZSBzdGVw
IGF0dHJpYnV0ZSBoYXMKKyAgICAgICAgc3ViLW1pbnV0ZSBwcmVjaXNpb24uCisKKyAgICAgICAg
KiBodG1sL1RpbWVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1dlZWtJbnB1dFR5cGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6V2Vla0lucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0ZXJz
IGNvbnN0KToKKyAgICAgICAgKiBodG1sL1dlZWtJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1s
L3NoYWRvdy9EYXRlVGltZUVkaXRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVU
aW1lRWRpdEJ1aWxkZXI6OnZpc2l0RmllbGQpOiBVcGRhdGVkIHRvIGFkZCBuZXcgZmllbGQgdHlw
ZXMgdG8gdGhlIGVsZW1lbnQuCisgICAgICAgICogaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxl
bWVudC5oOgorICAgICAgICAqIGh0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50cy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQ6OkRhdGVUaW1lQU1Q
TUZpZWxkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZUFNUE1GaWVsZEVsZW1l
bnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQ6
OnBvcHVsYXRlRGF0ZVRpbWVGaWVsZHNTdGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGlt
ZUFNUE1GaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRh
dGVUaW1lSG91ckZpZWxkRWxlbWVudDo6RGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KToKKyAgICAg
ICAgKFdlYkNvcmU6OkRhdGVUaW1lSG91ckZpZWxkRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAg
KFdlYkNvcmU6OkRhdGVUaW1lSG91ckZpZWxkRWxlbWVudDo6cG9wdWxhdGVEYXRlVGltZUZpZWxk
c1N0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lSG91ckZpZWxkRWxlbWVudDo6c2V0
VmFsdWVBc0RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxk
RWxlbWVudDo6RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxkRWxlbWVudCk6CisgICAgICAgIChXZWJD
b3JlOjpEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50OjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxkRWxlbWVudDo6cG9wdWxhdGVEYXRlVGlt
ZUZpZWxkc1N0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lTWlsbGlzZWNvbmRGaWVs
ZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lTWlu
dXRlRmllbGRFbGVtZW50OjpEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudCk6CisgICAgICAgIChX
ZWJDb3JlOjpEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OkRhdGVUaW1lTWludXRlRmllbGRFbGVtZW50Ojpwb3B1bGF0ZURhdGVUaW1lRmllbGRz
U3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVNaW51dGVGaWVsZEVsZW1lbnQ6OnNl
dFZhbHVlQXNEYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lU2Vjb25kRmllbGRFbGVt
ZW50OjpEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRl
VGltZVNlY29uZEZpZWxkRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVU
aW1lU2Vjb25kRmllbGRFbGVtZW50Ojpwb3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUpOgorICAg
ICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRl
KToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMuaDoKKyAgICAg
ICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50OjptYXhpbXVtIGNvbnN0KToK
KyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQuaDoKKyAg
ICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQ6OkRhdGVUaW1lU3lt
Ym9saWNGaWVsZEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVTeW1ib2xpY0Zp
ZWxkRWxlbWVudDo6aGFuZGxlS2V5Ym9hcmRFdmVudCk6IEltcGxlbWVudCBlZGl0aW5nIHVzaW5n
IHRoZSBzYW1lIHR5cGVhaGVhZCBiZWhhdmlvciBhcyA8c2VsZWN0PiBlbGVtZW50cy4KKyAgICAg
ICAgKFdlYkNvcmU6OkRhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQ6OmluZGV4T2ZTZWxlY3Rl
ZE9wdGlvbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZVN5bWJvbGljRmllbGRF
bGVtZW50OjpvcHRpb25Db3VudCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZVN5
bWJvbGljRmllbGRFbGVtZW50OjpvcHRpb25BdEluZGV4IGNvbnN0KToKKyAgICAgICAgKiBodG1s
L3NoYWRvdy9EYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50Lmg6CisgICAgICAgICogcGxhdGZv
cm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2NhbGU6Omxv
Y2FsaXplZERlY2ltYWxTZXBhcmF0b3IpOgorCisgICAgICAgIEFkZGVkIG1ldGhvZCB0byBlbnN1
cmUgdGhlIGNvcnJlY3QgZGVjaW1hbCBzZXBhcmF0b3IgaXMgZGlzcGxheWVkCisgICAgICAgIGRl
cGVuZGluZyBvbiB0aGUgdXNlcidzIGxvY2FsZS4gVGhpcyBzZXBhcmF0b3IgaXMgdXNlZCB3aGVu
CisgICAgICAgIHRoZSBtaWxsaXNlY29uZCBmaWVsZCBpcyBwcmVzZW50LgorCisgICAgICAgICog
cGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5oOgorCiAyMDIwLTA5LTAzICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgSW1wbGVtZW50IFRl
eHRFbmNvZGVyJ3MgZW5jb2RlSW50bygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
aHRtbC5jc3MgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvaHRtbC5jc3MKaW5kZXggYzU4MGFkMjc4Y2Zh
MzViMTc5ODcyNWU3ZjNhYTM2ZmQwZGRlNjExZC4uYjIwMTI4ZTViMTNiZmE2NmJhM2ZhMjI5M2Jl
ODA2ZjE5MzFiMTdiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9odG1sLmNzcwpAQCAtNTAxLDE0ICs1MDEsMjQgQEAgaW5w
dXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlciB7CiAKIGlucHV0Ojotd2Vi
a2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCwKIGlucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVk
aXQtbW9udGgtZmllbGQsCi1pbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCB7
CitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCwKK2lucHV0Ojotd2Via2l0
LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCwKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQt
bWludXRlLWZpZWxkLAoraW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1zZWNvbmQtZmllbGQs
CitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbGxpc2Vjb25kLWZpZWxkLAoraW5wdXQ6
Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1hbXBtLWZpZWxkIHsKICAgICBkaXNwbGF5OiBpbmxpbmU7
CiAgICAgcGFkZGluZzogMXB4OwogfQogCiBpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXll
YXItZmllbGQ6Zm9jdXMsCiBpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxk
OmZvY3VzLAotaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQ6Zm9jdXMgewor
aW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQ6Zm9jdXMsCitpbnB1dDo6LXdl
YmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQ6Zm9jdXMsCitpbnB1dDo6LXdlYmtpdC1kYXRl
dGltZS1lZGl0LW1pbnV0ZS1maWVsZDpmb2N1cywKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVk
aXQtc2Vjb25kLWZpZWxkOmZvY3VzLAoraW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taWxs
aXNlY29uZC1maWVsZDpmb2N1cywKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtYW1wbS1m
aWVsZDpmb2N1cyB7CiAjaWYgZGVmaW5lZChXVEZfUExBVEZPUk1fQ09DT0EpICYmIFdURl9QTEFU
Rk9STV9DT0NPQQogICAgIGJhY2tncm91bmQtY29sb3I6IC1hcHBsZS1zeXN0ZW0tY29udHJvbC1h
Y2NlbnQ7CiAgICAgY29sb3I6IHdoaXRlOwpAQCAtNTIyLDYgKzUzMiwxMSBAQCBpbnB1dDo6LXdl
YmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZDpmb2N1cyB7CiBpbnB1dFtkaXNhYmxlZF06Oi13
ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkLAogaW5wdXRbZGlzYWJsZWRdOjotd2Via2l0
LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsCiBpbnB1dFtkaXNhYmxlZF06Oi13ZWJraXQtZGF0
ZXRpbWUtZWRpdC1kYXktZmllbGQsCitpbnB1dFtkaXNhYmxlZF06Oi13ZWJraXQtZGF0ZXRpbWUt
ZWRpdC1ob3VyLWZpZWxkLAoraW5wdXRbZGlzYWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQt
bWludXRlLWZpZWxkLAoraW5wdXRbZGlzYWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtc2Vj
b25kLWZpZWxkLAoraW5wdXRbZGlzYWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWlsbGlz
ZWNvbmQtZmllbGQsCitpbnB1dFtkaXNhYmxlZF06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1hbXBt
LWZpZWxkLAogaW5wdXRbZGlzYWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCB7CiAg
ICAgY29sb3I6IEdyYXlUZXh0OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9C
YXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcAppbmRleCA4ZDg3ODNm
OTg4NGYxODFmMmRhN2E4MjA4ZTdhYzhiODBjMzAyMTNkLi5mZTM0NGI1MTUxZjBhZjdiYTIzNjBj
YjA5MTU0NGVkZmRiZTBjMzJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VD
aG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcApAQCAtNDAsNiArNDAs
NyBAQAogI2luY2x1ZGUgIlJlbmRlckVsZW1lbnQuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgog
I2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKKyNpbmNsdWRlICJTdGVwUmFuZ2UuaCIKICNpbmNsdWRl
ICJUZXh0LmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTE5MiwxMiArMTkzLDIxIEBAIHZvaWQgQmFzZUNob29z
ZXJPbmx5RGF0ZUFuZFRpbWVJbnB1dFR5cGU6OnVwZGF0ZUlubmVyVGV4dFZhbHVlKCkKICAgICB9
CiAKICAgICBEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlvdXRQYXJhbWV0ZXJzIGxheW91dFBhcmFt
ZXRlcnMoZWxlbWVudCgpLT5sb2NhbGUoKSk7Ci0gICAgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKGxh
eW91dFBhcmFtZXRlcnMpOworCisgICAgYXV0byBkYXRlID0gcGFyc2VUb0RhdGVDb21wb25lbnRz
KGVsZW1lbnQoKS0+dmFsdWUoKSk7CisgICAgaWYgKGRhdGUpCisgICAgICAgIHNldHVwTGF5b3V0
UGFyYW1ldGVycyhsYXlvdXRQYXJhbWV0ZXJzLCAqZGF0ZSk7CisgICAgZWxzZSB7CisgICAgICAg
IGlmIChhdXRvIGRhdGVGb3JMYXlvdXQgPSBzZXRNaWxsaXNlY29uZFRvRGF0ZUNvbXBvbmVudHMo
Y3JlYXRlU3RlcFJhbmdlKEFueVN0ZXBIYW5kbGluZzo6RGVmYXVsdCkubWluaW11bSgpLnRvRG91
YmxlKCkpKQorICAgICAgICAgICAgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKGxheW91dFBhcmFtZXRl
cnMsICpkYXRlRm9yTGF5b3V0KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2V0dXBMYXlv
dXRQYXJhbWV0ZXJzKGxheW91dFBhcmFtZXRlcnMsIERhdGVDb21wb25lbnRzKCkpOworICAgIH0K
IAogICAgIGlmICghRGF0ZVRpbWVGb3JtYXRWYWxpZGF0b3IoKS52YWxpZGF0ZUZvcm1hdChsYXlv
dXRQYXJhbWV0ZXJzLmRhdGVUaW1lRm9ybWF0LCAqdGhpcykpCiAgICAgICAgIGxheW91dFBhcmFt
ZXRlcnMuZGF0ZVRpbWVGb3JtYXQgPSBsYXlvdXRQYXJhbWV0ZXJzLmZhbGxiYWNrRGF0ZVRpbWVG
b3JtYXQ7CiAKLSAgICBpZiAoYXV0byBkYXRlID0gcGFyc2VUb0RhdGVDb21wb25lbnRzKGVsZW1l
bnQoKS0+dmFsdWUoKSkpCisgICAgaWYgKGRhdGUpCiAgICAgICAgIG1fZGF0ZVRpbWVFZGl0RWxl
bWVudC0+c2V0VmFsdWVBc0RhdGUobGF5b3V0UGFyYW1ldGVycywgKmRhdGUpOwogICAgIGVsc2UK
ICAgICAgICAgbV9kYXRlVGltZUVkaXRFbGVtZW50LT5zZXRFbXB0eVZhbHVlKGxheW91dFBhcmFt
ZXRlcnMpOwpAQCAtMjk4LDcgKzMwOCwxMCBAQCB2b2lkIEJhc2VDaG9vc2VyT25seURhdGVBbmRU
aW1lSW5wdXRUeXBlOjphdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmCiAgICAg
ICAgICAgICBpZiAoIWVsZW1lbnQtPmhhc0RpcnR5VmFsdWUoKSkKICAgICAgICAgICAgICAgICB1
cGRhdGVJbm5lclRleHRWYWx1ZSgpOwogICAgICAgICB9CisgICAgfSBlbHNlIGlmIChuYW1lID09
IHN0ZXBBdHRyICYmIG1fZGF0ZVRpbWVFZGl0RWxlbWVudCkgeworICAgICAgICB1cGRhdGVJbm5l
clRleHRWYWx1ZSgpOwogICAgIH0KKwogICAgIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6YXR0
cmlidXRlQ2hhbmdlZChuYW1lKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5oCmluZGV4IGMyYmQwODA5
NTkxYjU0Yzk1NTMwMjNlNzY3ODY1YzIzOTkzMzY3MmEuLmNlZDBkZmI0ZGU2ZTMyNWZiOTVmZmZk
ZWFiNGMyMTk2NDg1Njg1NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNo
b29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlLmgKQEAgLTU2LDcgKzU2LDcgQEAg
cHJvdGVjdGVkOgogICAgIGV4cGxpY2l0IEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRU
eXBlKEhUTUxJbnB1dEVsZW1lbnQmIGVsZW1lbnQpIDogQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBl
KGVsZW1lbnQpIHsgfQogICAgIH5CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZSgp
OwogCi0gICAgdmlydHVhbCB2b2lkIHNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRF
bGVtZW50OjpMYXlvdXRQYXJhbWV0ZXJzJikgY29uc3QgPSAwOworICAgIHZpcnR1YWwgdm9pZCBz
ZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVy
cyYsIGNvbnN0IERhdGVDb21wb25lbnRzJikgY29uc3QgPSAwOwogCiBwcml2YXRlOgogICAgIHZv
aWQgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oCmluZGV4IDFmY2U1MDk3OGZiZTczNWM3ZDhh
MzFmYzFjZjQyYTYyMTk1OWExNTIuLmZlODU5NTU0ZWVlMjhlYTgxNGU0MmI1ODFmZGViNDNmMmNm
YTY1NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5w
dXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5
cGUuaApAQCAtNTMsMTAgKzUzLDkgQEAgcHJvdGVjdGVkOgogICAgIGJvb2wgaXNLZXlib2FyZEZv
Y3VzYWJsZShLZXlib2FyZEV2ZW50KikgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIE9w
dGlvbmFsPERhdGVDb21wb25lbnRzPiBwYXJzZVRvRGF0ZUNvbXBvbmVudHMoY29uc3QgU3RyaW5n
VmlldyYpIGNvbnN0ID0gMDsKLQotcHJpdmF0ZToKICAgICB2aXJ0dWFsIE9wdGlvbmFsPERhdGVD
b21wb25lbnRzPiBzZXRNaWxsaXNlY29uZFRvRGF0ZUNvbXBvbmVudHMoZG91YmxlKSBjb25zdCA9
IDA7CiAKK3ByaXZhdGU6CiAgICAgZG91YmxlIHZhbHVlQXNEYXRlKCkgY29uc3Qgb3ZlcnJpZGU7
CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWVBc0RhdGUoZG91YmxlKSBjb25zdCBvdmVy
cmlkZTsKICAgICBkb3VibGUgdmFsdWVBc0RvdWJsZSgpIGNvbnN0IG92ZXJyaWRlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvRGF0ZUlucHV0VHlwZS5jcHAKaW5kZXggNjUwMDQ4MGYwNjkxM2I0OWE3M2I0Y2Nl
ODU3ZjFkNTExZTZkOGQ4ZC4uY2Q1ZTM1NzUzNWE1NmUzZjQxMWIyNjhjZGY4YTEzOGY1YmZiNjZj
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlSW5wdXRUeXBlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVJbnB1dFR5cGUuY3BwCkBAIC0xMDIsNyArMTAyLDcg
QEAgU3RyaW5nIERhdGVJbnB1dFR5cGU6OmZvcm1hdERhdGVUaW1lRmllbGRzU3RhdGUoY29uc3Qg
RGF0ZVRpbWVGaWVsZHNTdGF0ZSYgc3RhdGUKICAgICByZXR1cm4gbWFrZVN0cmluZyhwYWQoJzAn
LCA0LCAqc3RhdGUueWVhciksICctJywgcGFkKCcwJywgMiwgKnN0YXRlLm1vbnRoKSwgJy0nLCBw
YWQoJzAnLCAyLCAqc3RhdGUuZGF5T2ZNb250aCkpOwogfQogCi12b2lkIERhdGVJbnB1dFR5cGU6
OnNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlvdXRQYXJhbWV0
ZXJzJiBsYXlvdXRQYXJhbWV0ZXJzKSBjb25zdAordm9pZCBEYXRlSW5wdXRUeXBlOjpzZXR1cExh
eW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYgbGF5
b3V0UGFyYW1ldGVycywgY29uc3QgRGF0ZUNvbXBvbmVudHMmKSBjb25zdAogewogICAgIGxheW91
dFBhcmFtZXRlcnMuZGF0ZVRpbWVGb3JtYXQgPSBsYXlvdXRQYXJhbWV0ZXJzLmxvY2FsZS5kYXRl
Rm9ybWF0KCk7CiAgICAgbGF5b3V0UGFyYW1ldGVycy5mYWxsYmFja0RhdGVUaW1lRm9ybWF0ID0g
Inl5eXktTU0tZGQiX3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVJbnB1
dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZUlucHV0VHlwZS5oCmluZGV4IGY1Mjlh
NjRlYmNiMTc2ZDE2NGFiNjQ2ODc3N2Q0MjlhNTE0YmViZDYuLjY0OGY2ZWU2YTg5ZTRkNGYyOTVj
OGE4ZGEwZjhiNTI2ZWQyMmYwYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0
ZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZUlucHV0VHlwZS5oCkBA
IC01MCw3ICs1MCw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIGlzVmFsaWRGb3JtYXQoT3B0aW9u
U2V0PERhdGVUaW1lRm9ybWF0VmFsaWRhdGlvblJlc3VsdHM+KSBjb25zdCBmaW5hbDsKICAgICBT
dHJpbmcgZm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGltZUZpZWxkc1N0YXRl
JikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVF
ZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2V0
dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMm
LCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNvbnN0IGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUZpZWxk
c1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVUaW1lRmllbGRzU3RhdGUuaAppbmRl
eCA2NGY4NTQ4YWRmZjM5ZDI3MDU1OWIxY2UzMTkwNjIyOTRhZGFjMjRkLi44ZDhmMTYyZjMxNTA2
ODhhZjBmM2QzMmNlNTkzN2NiMjZjZjRjOTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0RhdGVUaW1lRmllbGRzU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVU
aW1lRmllbGRzU3RhdGUuaApAQCAtMzMsOSArMzMsMTkgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogc3RydWN0IERhdGVUaW1lRmllbGRzU3RhdGUgeworICAgIGVudW0gQU1QTVZhbHVlIHsKKyAg
ICAgICAgQU1QTVZhbHVlQU0sCisgICAgICAgIEFNUE1WYWx1ZVBNLAorICAgIH07CisKICAgICBP
cHRpb25hbDx1bnNpZ25lZD4geWVhcjsKICAgICBPcHRpb25hbDx1bnNpZ25lZD4gbW9udGg7CiAg
ICAgT3B0aW9uYWw8dW5zaWduZWQ+IGRheU9mTW9udGg7CisgICAgT3B0aW9uYWw8dW5zaWduZWQ+
IGhvdXI7CisgICAgT3B0aW9uYWw8dW5zaWduZWQ+IG1pbnV0ZTsKKyAgICBPcHRpb25hbDx1bnNp
Z25lZD4gc2Vjb25kOworICAgIE9wdGlvbmFsPHVuc2lnbmVkPiBtaWxsaXNlY29uZDsKKyAgICBP
cHRpb25hbDxBTVBNVmFsdWU+IGFtcG07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBlLmNwcAppbmRleCBj
Y2IyYzMyNDQ2MzViNGU5NjIwM2E0ZWYyYmRmMmNhMzI2MWQ2ODIzLi4wNjgyMjYxY2ZkOWY2MjJl
YjdmYzAwNDNmM2MzN2I2NjU4YWY4NDBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0
ZVRpbWVMb2NhbElucHV0VHlwZS5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBTdHJpbmcgRGF0ZVRp
bWVMb2NhbElucHV0VHlwZTo6Zm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGlt
ZUZpZWxkc1N0YQogICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogfQogCi12b2lkIERhdGVUaW1l
TG9jYWxJbnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50
OjpMYXlvdXRQYXJhbWV0ZXJzJikgY29uc3QKK3ZvaWQgRGF0ZVRpbWVMb2NhbElucHV0VHlwZTo6
c2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRl
cnMmLCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNvbnN0CiB7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvRGF0ZVRpbWVMb2NhbElucHV0VHlwZS5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBlLmgKaW5kZXggZTYzNDc0MjYzZmY4MTBlN2Ez
ZDI1ZmYyYmFlMTNhMDkyNTRjZWYxYS4uMTMxOGNlZjNkZDU5OWU3MzBmMzkxY2VjMzcxM2YzNjY5
NmI1MTUyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5w
dXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBl
LmgKQEAgLTUyLDcgKzUyLDcgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgaXNWYWxpZEZvcm1hdChP
cHRpb25TZXQ8RGF0ZVRpbWVGb3JtYXRWYWxpZGF0aW9uUmVzdWx0cz4pIGNvbnN0IGZpbmFsOwog
ICAgIFN0cmluZyBmb3JtYXREYXRlVGltZUZpZWxkc1N0YXRlKGNvbnN0IERhdGVUaW1lRmllbGRz
U3RhdGUmKSBjb25zdCBmaW5hbDsKLSAgICB2b2lkIHNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRl
VGltZUVkaXRFbGVtZW50OjpMYXlvdXRQYXJhbWV0ZXJzJikgY29uc3QgZmluYWw7CisgICAgdm9p
ZCBzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1l
dGVycyYsIGNvbnN0IERhdGVDb21wb25lbnRzJikgY29uc3QgZmluYWw7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01vbnRoSW5w
dXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTW9udGhJbnB1dFR5cGUuY3BwCmluZGV4
IDVlZjRjODlkMDA1MTRiMTE4MTEzNmM4ZGFmN2IwMDAzMjJjZWQ4ZmEuLjhhNDkyMTAwM2NjY2Mz
MWU5OWI1NDU1MDBmOTEzNjA3NjdmOTU3ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTW9udGhJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTW9udGhJbnB1
dFR5cGUuY3BwCkBAIC0xNDQsNyArMTQ0LDcgQEAgU3RyaW5nIE1vbnRoSW5wdXRUeXBlOjpmb3Jt
YXREYXRlVGltZUZpZWxkc1N0YXRlKGNvbnN0IERhdGVUaW1lRmllbGRzU3RhdGUmKSBjb24KICAg
ICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKIH0KIAotdm9pZCBNb250aElucHV0VHlwZTo6c2V0dXBM
YXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmKSBj
b25zdAordm9pZCBNb250aElucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1l
RWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmLCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNv
bnN0CiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTW9udGhJbnB1dFR5
cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTW9udGhJbnB1dFR5cGUuaAppbmRleCBmNDg5Yjcw
MDQ2Y2FmN2I4NzE0OGE3YmViMzVlYmQxNGM4YjEyZDAyLi45NDE2NTFmYWY5OTRlMjQyYTQzNDc2
ZmRkOTk4ZGUzZTNiOTAxYjVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01vbnRo
SW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Nb250aElucHV0VHlwZS5oCkBA
IC01NSw3ICs1NSw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIGlzVmFsaWRGb3JtYXQoT3B0aW9u
U2V0PERhdGVUaW1lRm9ybWF0VmFsaWRhdGlvblJlc3VsdHM+KSBjb25zdCBmaW5hbDsKICAgICBT
dHJpbmcgZm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGltZUZpZWxkc1N0YXRl
JikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVF
ZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2V0
dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMm
LCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNvbnN0IGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9UaW1lSW5wdXRUeXBl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGltZUlucHV0VHlwZS5jcHAKaW5kZXggMmZlNjU1
NTBjMDIzNjQyMmJmNDUyMTI0Y2M4NjU3NDVjNWJlZGRjMC4uNWQ2NmNkZDFjMGFiY2Q4NmE5Y2Q5
Yjg5OGQzNTcxZjI5MjdlOTdkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9UaW1l
SW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RpbWVJbnB1dFR5cGUuY3Bw
CkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiVGltZUlucHV0VHlwZS5oIgogCiAjaW5jbHVk
ZSAiRGF0ZUNvbXBvbmVudHMuaCIKKyNpbmNsdWRlICJEYXRlVGltZUZpZWxkc1N0YXRlLmgiCiAj
aW5jbHVkZSAiRGVjaW1hbC5oIgogI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNs
dWRlICJIVE1MTmFtZXMuaCIKQEAgLTExMiwxNiArMTEzLDQ4IEBAIHZvaWQgVGltZUlucHV0VHlw
ZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudChFdmVudCYpCiAKIGJvb2wgVGltZUlucHV0VHlwZTo6
aXNWYWxpZEZvcm1hdChPcHRpb25TZXQ8RGF0ZVRpbWVGb3JtYXRWYWxpZGF0aW9uUmVzdWx0cz4g
cmVzdWx0cykgY29uc3QKIHsKLSAgICByZXR1cm4gcmVzdWx0cy5jb250YWluc0FsbCh7IERhdGVU
aW1lRm9ybWF0VmFsaWRhdGlvblJlc3VsdHM6Okhhc0hvdXIsIERhdGVUaW1lRm9ybWF0VmFsaWRh
dGlvblJlc3VsdHM6Okhhc01pbnV0ZSB9KTsKKyAgICByZXR1cm4gcmVzdWx0cy5jb250YWluc0Fs
bCh7IERhdGVUaW1lRm9ybWF0VmFsaWRhdGlvblJlc3VsdHM6Okhhc0hvdXIsIERhdGVUaW1lRm9y
bWF0VmFsaWRhdGlvblJlc3VsdHM6Okhhc01pbnV0ZSwgRGF0ZVRpbWVGb3JtYXRWYWxpZGF0aW9u
UmVzdWx0czo6SGFzQU1QTSB9KTsKIH0KIAotU3RyaW5nIFRpbWVJbnB1dFR5cGU6OmZvcm1hdERh
dGVUaW1lRmllbGRzU3RhdGUoY29uc3QgRGF0ZVRpbWVGaWVsZHNTdGF0ZSYpIGNvbnN0CitTdHJp
bmcgVGltZUlucHV0VHlwZTo6Zm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGlt
ZUZpZWxkc1N0YXRlJiBzdGF0ZSkgY29uc3QKIHsKLSAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsK
KyAgICBpZiAoIXN0YXRlLmhvdXIgfHwgIXN0YXRlLm1pbnV0ZSB8fCAhc3RhdGUuYW1wbSkKKyAg
ICAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CisKKyAgICB1bnNpZ25lZCBob3VyMjMgPSAoKnN0
YXRlLmhvdXIgJSAxMikgKyAoKnN0YXRlLmFtcG0gPT0gRGF0ZVRpbWVGaWVsZHNTdGF0ZTo6QU1Q
TVZhbHVlUE0gPyAxMiA6IDApOworICAgIGF1dG8gaG91ck1pbnV0ZVN0cmluZyA9IG1ha2VTdHJp
bmcocGFkKCcwJywgMiwgaG91cjIzKSwgJzonLCBwYWQoJzAnLCAyLCAqc3RhdGUubWludXRlKSk7
CisKKyAgICBpZiAoc3RhdGUubWlsbGlzZWNvbmQpCisgICAgICAgIHJldHVybiBtYWtlU3RyaW5n
KGhvdXJNaW51dGVTdHJpbmcsICc6JywgcGFkKCcwJywgMiwgc3RhdGUuc2Vjb25kID8gKnN0YXRl
LnNlY29uZCA6IDApLCAnLicsIHBhZCgnMCcsIDMsICpzdGF0ZS5taWxsaXNlY29uZCkpOworCisg
ICAgaWYgKHN0YXRlLnNlY29uZCkKKyAgICAgICAgcmV0dXJuIG1ha2VTdHJpbmcoaG91ck1pbnV0
ZVN0cmluZywgJzonLCBwYWQoJzAnLCAyLCAqc3RhdGUuc2Vjb25kKSk7CisKKyAgICByZXR1cm4g
aG91ck1pbnV0ZVN0cmluZzsKIH0KIAotdm9pZCBUaW1lSW5wdXRUeXBlOjpzZXR1cExheW91dFBh
cmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0Cit2
b2lkIFRpbWVJbnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVt
ZW50OjpMYXlvdXRQYXJhbWV0ZXJzJiBsYXlvdXRQYXJhbWV0ZXJzLCBjb25zdCBEYXRlQ29tcG9u
ZW50cyYgZGF0ZSkgY29uc3QKIHsKKyAgICBhdXRvIHN0ZXBSYW5nZSA9IGNyZWF0ZVN0ZXBSYW5n
ZShBbnlTdGVwSGFuZGxpbmc6OkRlZmF1bHQpOworICAgIGF1dG8gbWlsbGlzZWNvbmRzUGVyU2Vj
b25kID0gRGVjaW1hbDo6ZnJvbURvdWJsZShtc1BlclNlY29uZCk7CisgICAgYXV0byBtaWxsaXNl
Y29uZHNQZXJNaW51dGUgPSBEZWNpbWFsOjpmcm9tRG91YmxlKG1zUGVyTWludXRlKTsKKworICAg
IGxheW91dFBhcmFtZXRlcnMuc2hvdWxkSGF2ZU1pbGxpc2Vjb25kRmllbGQgPSBkYXRlLm1pbGxp
c2Vjb25kKCkKKyAgICAgICAgfHwgIXN0ZXBSYW5nZS5taW5pbXVtKCkucmVtYWluZGVyKG1pbGxp
c2Vjb25kc1BlclNlY29uZCkuaXNaZXJvKCkKKyAgICAgICAgfHwgIXN0ZXBSYW5nZS5zdGVwKCku
cmVtYWluZGVyKG1pbGxpc2Vjb25kc1BlclNlY29uZCkuaXNaZXJvKCk7CisKKyAgICBib29sIHNo
b3VsZEhhdmVTZWNvbmRGaWVsZCA9IGxheW91dFBhcmFtZXRlcnMuc2hvdWxkSGF2ZU1pbGxpc2Vj
b25kRmllbGQKKyAgICAgICAgfHwgZGF0ZS5zZWNvbmQoKQorICAgICAgICB8fCAhc3RlcFJhbmdl
Lm1pbmltdW0oKS5yZW1haW5kZXIobWlsbGlzZWNvbmRzUGVyTWludXRlKS5pc1plcm8oKQorICAg
ICAgICB8fCAhc3RlcFJhbmdlLnN0ZXAoKS5yZW1haW5kZXIobWlsbGlzZWNvbmRzUGVyTWludXRl
KS5pc1plcm8oKTsKKworICAgIGlmIChzaG91bGRIYXZlU2Vjb25kRmllbGQpIHsKKyAgICAgICAg
bGF5b3V0UGFyYW1ldGVycy5kYXRlVGltZUZvcm1hdCA9IGxheW91dFBhcmFtZXRlcnMubG9jYWxl
LnRpbWVGb3JtYXQoKTsKKyAgICAgICAgbGF5b3V0UGFyYW1ldGVycy5mYWxsYmFja0RhdGVUaW1l
Rm9ybWF0ID0gIkhIOm1tOnNzIjsKKyAgICB9IGVsc2UgeworICAgICAgICBsYXlvdXRQYXJhbWV0
ZXJzLmRhdGVUaW1lRm9ybWF0ID0gbGF5b3V0UGFyYW1ldGVycy5sb2NhbGUuc2hvcnRUaW1lRm9y
bWF0KCk7CisgICAgICAgIGxheW91dFBhcmFtZXRlcnMuZmFsbGJhY2tEYXRlVGltZUZvcm1hdCA9
ICJISDptbSI7CisgICAgfQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RpbWVJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvVGltZUlucHV0VHlwZS5oCmluZGV4IGFjODI0ZmQ1Yjk3YmIzZDBiMTQ2ZDYzZTBiNTQ2NDU2
MzIzZjVkMzMuLjJkODhmYWRiZjUwZGY2NDY5MzM5MWZjMGU0Y2IzZTU2MWQwZjc2OGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGltZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvVGltZUlucHV0VHlwZS5oCkBAIC01Miw3ICs1Miw3IEBAIHByaXZhdGU6CiAK
ICAgICBib29sIGlzVmFsaWRGb3JtYXQoT3B0aW9uU2V0PERhdGVUaW1lRm9ybWF0VmFsaWRhdGlv
blJlc3VsdHM+KSBjb25zdCBmaW5hbDsKICAgICBTdHJpbmcgZm9ybWF0RGF0ZVRpbWVGaWVsZHNT
dGF0ZShjb25zdCBEYXRlVGltZUZpZWxkc1N0YXRlJikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBz
ZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVy
cyYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1l
RWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmLCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNv
bnN0IGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9XZWVrSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
V2Vla0lucHV0VHlwZS5jcHAKaW5kZXggYmRjOTJhMTQyNjNhODg1OTY5ODc1ZGEzZjBjMzI5NmVh
ZmUyYTYyNC4uMWZmNjZjM2IzYzVhYThkOTIyZmRkOTczMjQ3YWRmYWU5MjQzYWQ4ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9XZWVrSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1dlZWtJbnB1dFR5cGUuY3BwCkBAIC05Nyw3ICs5Nyw3IEBAIFN0cmluZyBX
ZWVrSW5wdXRUeXBlOjpmb3JtYXREYXRlVGltZUZpZWxkc1N0YXRlKGNvbnN0IERhdGVUaW1lRmll
bGRzU3RhdGUmKSBjb25zCiAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CiB9CiAKLXZvaWQgV2Vl
a0lucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6Okxh
eW91dFBhcmFtZXRlcnMmKSBjb25zdAordm9pZCBXZWVrSW5wdXRUeXBlOjpzZXR1cExheW91dFBh
cmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYsIGNvbnN0IERh
dGVDb21wb25lbnRzJikgY29uc3QKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9XZWVrSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1dlZWtJbnB1dFR5cGUu
aAppbmRleCAwMGEzMWE1OGY4NTBkZDg2OWFkZWE2NTY4ZGQ2MzQyYmRhMTJhZjYxLi5iZmViNzFh
OGIxNmFkOGM0NjNiZWZmMTYwMTcwYTM5M2UzNTc4Mzg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1dlZWtJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1dlZWtJ
bnB1dFR5cGUuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc1ZhbGlk
Rm9ybWF0KE9wdGlvblNldDxEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzPikgY29uc3Qg
ZmluYWw7CiAgICAgU3RyaW5nIGZvcm1hdERhdGVUaW1lRmllbGRzU3RhdGUoY29uc3QgRGF0ZVRp
bWVGaWVsZHNTdGF0ZSYpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0
ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmKSBjb25zdCBmaW5hbDsK
KyAgICB2b2lkIHNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlv
dXRQYXJhbWV0ZXJzJiwgY29uc3QgRGF0ZUNvbXBvbmVudHMmKSBjb25zdCBmaW5hbDsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L0RhdGVUaW1lRWRpdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvRGF0ZVRpbWVFZGl0RWxlbWVudC5jcHAKaW5kZXggZmJkYzkzNDZhNGUwN2UyNDg2ZjNkMWRh
ZDk5NzJhMzMxMWI1NmVjMS4uZGU0MTI4NGQ1YTI5NWViYzJlYjE5MDcxZDIyOThlOGZjZWY5NmU1
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxl
bWVudC5jcHAKQEAgLTg1LDYgKzg1LDM2IEBAIHZvaWQgRGF0ZVRpbWVFZGl0QnVpbGRlcjo6dmlz
aXRGaWVsZChEYXRlVGltZUZvcm1hdDo6RmllbGRUeXBlIGZpZWxkVHlwZSwgaW50IGNvCiAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKKyAgICBjYXNlIERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVG
cmFjdGlvbmFsU2Vjb25kOiB7CisgICAgICAgIG1fZWRpdEVsZW1lbnQuYWRkRmllbGQoRGF0ZVRp
bWVNaWxsaXNlY29uZEZpZWxkRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBtX2VkaXRFbGVtZW50
KSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjYXNlIERhdGVUaW1lRm9ybWF0OjpG
aWVsZFR5cGVIb3VyMTE6IHsKKyAgICAgICAgbV9lZGl0RWxlbWVudC5hZGRGaWVsZChEYXRlVGlt
ZUhvdXJGaWVsZEVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCwgbV9lZGl0RWxlbWVudCwgMCwgMTEp
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZp
ZWxkVHlwZUhvdXIxMjogeworICAgICAgICBtX2VkaXRFbGVtZW50LmFkZEZpZWxkKERhdGVUaW1l
SG91ckZpZWxkRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBtX2VkaXRFbGVtZW50LCAxLCAxMikp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgY2FzZSBEYXRlVGltZUZvcm1hdDo6Rmll
bGRUeXBlSG91cjIzOiB7CisgICAgICAgIG1fZWRpdEVsZW1lbnQuYWRkRmllbGQoRGF0ZVRpbWVI
b3VyRmllbGRFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQsIG1fZWRpdEVsZW1lbnQsIDAsIDIzKSk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjYXNlIERhdGVUaW1lRm9ybWF0OjpGaWVs
ZFR5cGVIb3VyMjQ6IHsKKyAgICAgICAgbV9lZGl0RWxlbWVudC5hZGRGaWVsZChEYXRlVGltZUhv
dXJGaWVsZEVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCwgbV9lZGl0RWxlbWVudCwgMSwgMjQpKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxk
VHlwZU1pbnV0ZTogeworICAgICAgICBtX2VkaXRFbGVtZW50LmFkZEZpZWxkKERhdGVUaW1lTWlu
dXRlRmllbGRFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQsIG1fZWRpdEVsZW1lbnQpKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKwogICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZU1v
bnRoOgogICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZU1vbnRoU3RhbmRBbG9uZTog
ewogICAgICAgICBjb25zdGV4cHIgaW50IGNvdW50Rm9yQWJicmV2aWF0ZWRNb250aCA9IDM7CkBA
IC0xMDksNiArMTM5LDIxIEBAIHZvaWQgRGF0ZVRpbWVFZGl0QnVpbGRlcjo6dmlzaXRGaWVsZChE
YXRlVGltZUZvcm1hdDo6RmllbGRUeXBlIGZpZWxkVHlwZSwgaW50IGNvCiAgICAgICAgIH0KICAg
ICB9CiAKKyAgICBjYXNlIERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVQZXJpb2Q6IHsKKyAgICAg
ICAgbV9lZGl0RWxlbWVudC5hZGRGaWVsZChEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQ6OmNyZWF0
ZShkb2N1bWVudCwgbV9lZGl0RWxlbWVudCwgbV9wYXJhbWV0ZXJzLmxvY2FsZS50aW1lQU1QTUxh
YmVscygpKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjYXNlIERhdGVUaW1lRm9y
bWF0OjpGaWVsZFR5cGVTZWNvbmQ6IHsKKyAgICAgICAgbV9lZGl0RWxlbWVudC5hZGRGaWVsZChE
YXRlVGltZVNlY29uZEZpZWxkRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBtX2VkaXRFbGVtZW50
KSk7CisKKyAgICAgICAgaWYgKG1fcGFyYW1ldGVycy5zaG91bGRIYXZlTWlsbGlzZWNvbmRGaWVs
ZCkgeworICAgICAgICAgICAgdmlzaXRMaXRlcmFsKG1fcGFyYW1ldGVycy5sb2NhbGUubG9jYWxp
emVkRGVjaW1hbFNlcGFyYXRvcigpKTsKKyAgICAgICAgICAgIHZpc2l0RmllbGQoRGF0ZVRpbWVG
b3JtYXQ6OkZpZWxkVHlwZUZyYWN0aW9uYWxTZWNvbmQsIDMpOworICAgICAgICB9CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKICAgICBjYXNlIERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVZZWFy
OiB7CiAgICAgICAgIG1fZWRpdEVsZW1lbnQuYWRkRmllbGQoRGF0ZVRpbWVZZWFyRmllbGRFbGVt
ZW50OjpjcmVhdGUoZG9jdW1lbnQsIG1fZWRpdEVsZW1lbnQpKTsKICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxlbWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxlbWVudC5oCmlu
ZGV4IDNlMzE4NTdjODMwNDJhMDgyZTI2NTZhN2Y5ZmQxMzY4YjBhMDEzZGUuLmJlYjg1YmRiOWZl
OGJlYmVkZTlhMjUyYmU5NTk3MDA3Y2Q2NmQ5ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L0RhdGVUaW1lRWRpdEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9EYXRlVGltZUVkaXRFbGVtZW50LmgKQEAgLTU1LDYgKzU1LDcgQEAgcHVibGlj
OgogICAgICAgICBTdHJpbmcgZGF0ZVRpbWVGb3JtYXQ7CiAgICAgICAgIFN0cmluZyBmYWxsYmFj
a0RhdGVUaW1lRm9ybWF0OwogICAgICAgICBMb2NhbGUmIGxvY2FsZTsKKyAgICAgICAgYm9vbCBz
aG91bGRIYXZlTWlsbGlzZWNvbmRGaWVsZCB7IGZhbHNlIH07CiAKICAgICAgICAgTGF5b3V0UGFy
YW1ldGVycyhMb2NhbGUmIGxvY2FsZSkKICAgICAgICAgICAgIDogbG9jYWxlKGxvY2FsZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMu
Y3BwCmluZGV4IGY1Y2M5ZWUxYjk4MDdlYWJjMTA2YTI3Y2U0MDk2NzE3NDM1MmRkMTguLjViYjBj
YjY5MDNhNGRhZTZlNjQ0MGYxMDU4YmFiZmM4YTFiMmJiODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50cy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnRzLmNwcApAQCAtMzUsNiAr
MzUsMzEgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitXVEZfTUFLRV9JU09fQUxMT0NBVEVE
X0lNUEwoRGF0ZVRpbWVBTVBNRmllbGRFbGVtZW50KTsKKworRGF0ZVRpbWVBTVBNRmllbGRFbGVt
ZW50OjpEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93
bmVyJiBmaWVsZE93bmVyLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgbGFiZWxzKQorICAgIDogRGF0
ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudChkb2N1bWVudCwgZmllbGRPd25lciwgbGFiZWxzKQor
eworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4g
YW1wbVBzZXVkb0lkKCItd2Via2l0LWRhdGV0aW1lLWVkaXQtYW1wbS1maWVsZCIsIEF0b21TdHJp
bmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICBpbml0aWFsaXplKGFtcG1Qc2V1ZG9JZCk7
Cit9CisKK1JlZjxEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQ+IERhdGVUaW1lQU1QTUZpZWxkRWxl
bWVudDo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgRmllbGRPd25lciYgZmllbGRPd25lciwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIGxhYmVscykKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQoZG9jdW1lbnQsIGZpZWxkT3duZXIsIGxhYmVscykp
OworfQorCit2b2lkIERhdGVUaW1lQU1QTUZpZWxkRWxlbWVudDo6cG9wdWxhdGVEYXRlVGltZUZp
ZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUmIHN0YXRlKQoreworICAgIGlmIChoYXNWYWx1
ZSgpKQorICAgICAgICBzdGF0ZS5hbXBtID0gdmFsdWVBc0ludGVnZXIoKSA/IERhdGVUaW1lRmll
bGRzU3RhdGU6OkFNUE1WYWx1ZVBNIDogRGF0ZVRpbWVGaWVsZHNTdGF0ZTo6QU1QTVZhbHVlQU07
Cit9CisKK3ZvaWQgRGF0ZVRpbWVBTVBNRmllbGRFbGVtZW50OjpzZXRWYWx1ZUFzRGF0ZShjb25z
dCBEYXRlQ29tcG9uZW50cyYgZGF0ZSkKK3sKKyAgICBzZXRWYWx1ZUFzSW50ZWdlcihkYXRlLmhv
dXIoKSA+PSAxMiA/IDEgOiAwKTsKK30KKwogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKERh
dGVUaW1lRGF5RmllbGRFbGVtZW50KTsKIAogRGF0ZVRpbWVEYXlGaWVsZEVsZW1lbnQ6OkRhdGVU
aW1lRGF5RmllbGRFbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgRmllbGRPd25lciYgZmllbGRP
d25lcikKQEAgLTYwLDYgKzg1LDEyOCBAQCB2b2lkIERhdGVUaW1lRGF5RmllbGRFbGVtZW50Ojpz
ZXRWYWx1ZUFzRGF0ZShjb25zdCBEYXRlQ29tcG9uZW50cyYgZGF0ZSkKICAgICBzZXRWYWx1ZUFz
SW50ZWdlcihkYXRlLm1vbnRoRGF5KCkpOwogfQogCitXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lN
UEwoRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KTsKKworRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50
OjpEYXRlVGltZUhvdXJGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93bmVy
JiBmaWVsZE93bmVyLCBpbnQgbWluaW11bSwgaW50IG1heGltdW0pCisgICAgOiBEYXRlVGltZU51
bWVyaWNGaWVsZEVsZW1lbnQoZG9jdW1lbnQsIGZpZWxkT3duZXIsIFJhbmdlKG1pbmltdW0sIG1h
eGltdW0pLCAiLS0iX3MpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxj
b25zdCBBdG9tU3RyaW5nPiBob3VyUHNldWRvSWQoIi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3Vy
LWZpZWxkIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIGluaXRpYWxp
emUoaG91clBzZXVkb0lkKTsKK30KKworUmVmPERhdGVUaW1lSG91ckZpZWxkRWxlbWVudD4gRGF0
ZVRpbWVIb3VyRmllbGRFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93
bmVyJiBmaWVsZE93bmVyLCBpbnQgbWluaW11bSwgaW50IG1heGltdW0pCit7CisgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KGRvY3VtZW50LCBmaWVsZE93
bmVyLCBtaW5pbXVtLCBtYXhpbXVtKSk7Cit9CisKK3ZvaWQgRGF0ZVRpbWVIb3VyRmllbGRFbGVt
ZW50Ojpwb3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUoRGF0ZVRpbWVGaWVsZHNTdGF0ZSYgc3Rh
dGUpCit7CisgICAgaWYgKCFoYXNWYWx1ZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBpbnQg
dmFsdWUgPSB2YWx1ZUFzSW50ZWdlcigpOworCisgICAgc3dpdGNoIChtYXhpbXVtKCkpIHsKKyAg
ICBjYXNlIDExOiB7CisgICAgICAgIHN0YXRlLmhvdXIgPSB2YWx1ZSA/IHZhbHVlIDogMTI7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisgICAgY2FzZSAxMjogeworICAgICAgICBzdGF0ZS5ob3Vy
ID0gdmFsdWU7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgY2FzZSAyMzogeworICAgICAg
ICBzdGF0ZS5ob3VyID0gKHZhbHVlICUgMTIpID86IDEyOworICAgICAgICBzdGF0ZS5hbXBtID0g
dmFsdWUgPj0gMTIgPyBEYXRlVGltZUZpZWxkc1N0YXRlOjpBTVBNVmFsdWVQTSA6IERhdGVUaW1l
RmllbGRzU3RhdGU6OkFNUE1WYWx1ZUFNOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNh
c2UgMjQ6IHsKKyAgICAgICAgaWYgKHZhbHVlID09IDI0KSB7CisgICAgICAgICAgICBzdGF0ZS5o
b3VyID0gMTI7CisgICAgICAgICAgICBzdGF0ZS5hbXBtID0gRGF0ZVRpbWVGaWVsZHNTdGF0ZTo6
QU1QTVZhbHVlQU07CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgc3Rh
dGUuaG91ciA9IHZhbHVlID09IDEyID8gMTIgOiB2YWx1ZSAlIDEyOworICAgICAgICBzdGF0ZS5h
bXBtID0gdmFsdWUgPj0gMTIgPyBEYXRlVGltZUZpZWxkc1N0YXRlOjpBTVBNVmFsdWVQTSA6IERh
dGVUaW1lRmllbGRzU3RhdGU6OkFNUE1WYWx1ZUFNOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIH0KK30KKwordm9pZCBEYXRlVGltZUhvdXJGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRl
KGNvbnN0IERhdGVDb21wb25lbnRzJiBkYXRlKQoreworICAgIGludCBob3VyID0gZGF0ZS5ob3Vy
KCk7CisKKyAgICBzd2l0Y2ggKG1heGltdW0oKSkgeworICAgIGNhc2UgMTE6IHsKKyAgICAgICAg
c2V0VmFsdWVBc0ludGVnZXIoaG91ciAlIDEyKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAg
ICBjYXNlIDEyOiB7CisgICAgICAgIHNldFZhbHVlQXNJbnRlZ2VyKChob3VyICUgMTIpID86IDEy
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjYXNlIDIzOiB7CisgICAgICAgIHNldFZh
bHVlQXNJbnRlZ2VyKGhvdXIpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNhc2UgMjQ6
IHsKKyAgICAgICAgc2V0VmFsdWVBc0ludGVnZXIoaG91ciArIDEpOworICAgICAgICByZXR1cm47
CisgICAgfQorICAgIH0KK30KKworV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKERhdGVUaW1l
TWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQpOworCitEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVt
ZW50OjpEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwg
RmllbGRPd25lciYgZmllbGRPd25lcikKKyAgICA6IERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVu
dChkb2N1bWVudCwgZmllbGRPd25lciwgUmFuZ2UoMCwgOTk5KSwgIi0tIl9zKQoreworICAgIHN0
YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gbWlsbGlzZWNv
bmRQc2V1ZG9JZCgiLXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbGxpc2Vjb25kLWZpZWxkIiwgQXRv
bVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIGluaXRpYWxpemUobWlsbGlzZWNv
bmRQc2V1ZG9JZCk7Cit9CisKK1JlZjxEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50PiBE
YXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50
LCBGaWVsZE93bmVyJiBmaWVsZE93bmVyKQoreworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IERh
dGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQoZG9jdW1lbnQsIGZpZWxkT3duZXIpKTsKK30K
Kwordm9pZCBEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50Ojpwb3B1bGF0ZURhdGVUaW1l
RmllbGRzU3RhdGUoRGF0ZVRpbWVGaWVsZHNTdGF0ZSYgc3RhdGUpCit7CisgICAgaWYgKGhhc1Zh
bHVlKCkpCisgICAgICAgIHN0YXRlLm1pbGxpc2Vjb25kID0gdmFsdWVBc0ludGVnZXIoKTsKK30K
Kwordm9pZCBEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50OjpzZXRWYWx1ZUFzRGF0ZShj
b25zdCBEYXRlQ29tcG9uZW50cyYgZGF0ZSkKK3sKKyAgICBzZXRWYWx1ZUFzSW50ZWdlcihkYXRl
Lm1pbGxpc2Vjb25kKCkpOworfQorCitXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRGF0ZVRp
bWVNaW51dGVGaWVsZEVsZW1lbnQpOworCitEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudDo6RGF0
ZVRpbWVNaW51dGVGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93bmVyJiBm
aWVsZE93bmVyKQorICAgIDogRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50KGRvY3VtZW50LCBm
aWVsZE93bmVyLCBSYW5nZSgwLCA1OSksICItLSJfcykKK3sKKyAgICBzdGF0aWMgTWFpblRocmVh
ZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IG1pbnV0ZVBzZXVkb0lkKCItd2Via2l0
LWRhdGV0aW1lLWVkaXQtbWludXRlLWZpZWxkIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpOworICAgIGluaXRpYWxpemUobWludXRlUHNldWRvSWQpOworfQorCitSZWY8RGF0ZVRp
bWVNaW51dGVGaWVsZEVsZW1lbnQ+IERhdGVUaW1lTWludXRlRmllbGRFbGVtZW50OjpjcmVhdGUo
RG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93bmVyJiBmaWVsZE93bmVyKQoreworICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IERhdGVUaW1lTWludXRlRmllbGRFbGVtZW50KGRvY3VtZW50LCBmaWVs
ZE93bmVyKSk7Cit9CisKK3ZvaWQgRGF0ZVRpbWVNaW51dGVGaWVsZEVsZW1lbnQ6OnBvcHVsYXRl
RGF0ZVRpbWVGaWVsZHNTdGF0ZShEYXRlVGltZUZpZWxkc1N0YXRlJiBzdGF0ZSkKK3sKKyAgICBp
ZiAoaGFzVmFsdWUoKSkKKyAgICAgICAgc3RhdGUubWludXRlID0gdmFsdWVBc0ludGVnZXIoKTsK
K30KKwordm9pZCBEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudDo6c2V0VmFsdWVBc0RhdGUoY29u
c3QgRGF0ZUNvbXBvbmVudHMmIGRhdGUpCit7CisgICAgc2V0VmFsdWVBc0ludGVnZXIoZGF0ZS5t
aW51dGUoKSk7Cit9CisKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChEYXRlVGltZU1vbnRo
RmllbGRFbGVtZW50KTsKIAogRGF0ZVRpbWVNb250aEZpZWxkRWxlbWVudDo6RGF0ZVRpbWVNb250
aEZpZWxkRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQsIEZpZWxkT3duZXImIGZpZWxkT3duZXIp
CkBAIC04Niw2ICsyMzMsMzEgQEAgdm9pZCBEYXRlVGltZU1vbnRoRmllbGRFbGVtZW50OjpzZXRW
YWx1ZUFzRGF0ZShjb25zdCBEYXRlQ29tcG9uZW50cyYgZGF0ZSkKICAgICBzZXRWYWx1ZUFzSW50
ZWdlcihkYXRlLm1vbnRoKCkgKyAxKTsKIH0KIAorV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBM
KERhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50KTsKKworRGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1l
bnQ6OkRhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgRmllbGRP
d25lciYgZmllbGRPd25lcikKKyAgICA6IERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudChkb2N1
bWVudCwgZmllbGRPd25lciwgUmFuZ2UoMCwgNTkpLCAiLS0iX3MpCit7CisgICAgc3RhdGljIE1h
aW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBzZWNvbmRQc2V1ZG9JZCgi
LXdlYmtpdC1kYXRldGltZS1lZGl0LXNlY29uZC1maWVsZCIsIEF0b21TdHJpbmc6OkNvbnN0cnVj
dEZyb21MaXRlcmFsKTsKKyAgICBpbml0aWFsaXplKHNlY29uZFBzZXVkb0lkKTsKK30KKworUmVm
PERhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50PiBEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudDo6
Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgRmllbGRPd25lciYgZmllbGRPd25lcikKK3sKKyAg
ICByZXR1cm4gYWRvcHRSZWYoKm5ldyBEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudChkb2N1bWVu
dCwgZmllbGRPd25lcikpOworfQorCit2b2lkIERhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50Ojpw
b3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUoRGF0ZVRpbWVGaWVsZHNTdGF0ZSYgc3RhdGUpCit7
CisgICAgaWYgKGhhc1ZhbHVlKCkpCisgICAgICAgIHN0YXRlLnNlY29uZCA9IHZhbHVlQXNJbnRl
Z2VyKCk7Cit9CisKK3ZvaWQgRGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNE
YXRlKGNvbnN0IERhdGVDb21wb25lbnRzJiBkYXRlKQoreworICAgIHNldFZhbHVlQXNJbnRlZ2Vy
KGRhdGUuc2Vjb25kKCkpOworfQorCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRGF0ZVRp
bWVTeW1ib2xpY01vbnRoRmllbGRFbGVtZW50KTsKIAogRGF0ZVRpbWVTeW1ib2xpY01vbnRoRmll
bGRFbGVtZW50OjpEYXRlVGltZVN5bWJvbGljTW9udGhGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRv
Y3VtZW50LCBGaWVsZE93bmVyJiBmaWVsZE93bmVyLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgbGFi
ZWxzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVGaWVs
ZEVsZW1lbnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxl
bWVudHMuaAppbmRleCBmMTEwMzc4MjliZjdhZDFiZjlhMDNiOWQzNDEwOTg4NWJkMTlkYTMwLi5h
MGVjYzQyZTQwMWU0NTU2NmRjZmQxMDk0ZjA1ZjMzMjhlMDNjODdiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMuaApAQCAtMzMsNiAr
MzMsMjAgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBEYXRlVGltZUFNUE1GaWVs
ZEVsZW1lbnQgZmluYWwgOiBwdWJsaWMgRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudCB7Cisg
ICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQpOworCitw
dWJsaWM6CisgICAgc3RhdGljIFJlZjxEYXRlVGltZUFNUE1GaWVsZEVsZW1lbnQ+IGNyZWF0ZShE
b2N1bWVudCYsIEZpZWxkT3duZXImLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpOworCitwcml2YXRl
OgorICAgIERhdGVUaW1lQU1QTUZpZWxkRWxlbWVudChEb2N1bWVudCYsIEZpZWxkT3duZXImLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYpOworCisgICAgLy8gRGF0ZVRpbWVGaWVsZEVsZW1lbnQgZnVu
Y3Rpb25zOgorICAgIHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmll
bGRzU3RhdGUmKTsKKyAgICB2b2lkIHNldFZhbHVlQXNEYXRlKGNvbnN0IERhdGVDb21wb25lbnRz
Jik7Cit9OworCiBjbGFzcyBEYXRlVGltZURheUZpZWxkRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBE
YXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
RGF0ZVRpbWVEYXlGaWVsZEVsZW1lbnQpOwogCkBAIC00Nyw2ICs2MSw0OCBAQCBwcml2YXRlOgog
ICAgIHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUm
KTsKIH07CiAKK2NsYXNzIERhdGVUaW1lSG91ckZpZWxkRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBE
YXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQgeworICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
RGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KTsKKworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RGF0
ZVRpbWVIb3VyRmllbGRFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmLCBGaWVsZE93bmVyJiwgaW50
IG1pbmltdW0sIGludCBtYXhpbXVtKTsKKworcHJpdmF0ZToKKyAgICBEYXRlVGltZUhvdXJGaWVs
ZEVsZW1lbnQoRG9jdW1lbnQmLCBGaWVsZE93bmVyJiwgaW50IG1pbmltdW0sIGludCBtYXhpbXVt
KTsKKworICAgIC8vIERhdGVUaW1lRmllbGRFbGVtZW50IGZ1bmN0aW9uczoKKyAgICB2aXJ0dWFs
IHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUmKTsK
KyAgICB2aXJ0dWFsIHZvaWQgc2V0VmFsdWVBc0RhdGUoY29uc3QgRGF0ZUNvbXBvbmVudHMmKTsK
K307CisKK2NsYXNzIERhdGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQgZmluYWwgOiBwdWJs
aWMgRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50IHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEKERhdGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQpOworCitwdWJsaWM6CisgICAgc3Rh
dGljIFJlZjxEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQm
LCBGaWVsZE93bmVyJik7CisKK3ByaXZhdGU6CisgICAgRGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxk
RWxlbWVudChEb2N1bWVudCYsIEZpZWxkT3duZXImKTsKKworICAgIC8vIERhdGVUaW1lRmllbGRF
bGVtZW50IGZ1bmN0aW9uczoKKyAgICB2aXJ0dWFsIHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxk
c1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUmKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0VmFsdWVB
c0RhdGUoY29uc3QgRGF0ZUNvbXBvbmVudHMmKTsKK307CisKK2NsYXNzIERhdGVUaW1lTWludXRl
RmllbGRFbGVtZW50IGZpbmFsIDogcHVibGljIERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudCB7
CisgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudCk7
CisKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPERhdGVUaW1lTWludXRlRmllbGRFbGVtZW50PiBj
cmVhdGUoRG9jdW1lbnQmLCBGaWVsZE93bmVyJik7CisKK3ByaXZhdGU6CisgICAgRGF0ZVRpbWVN
aW51dGVGaWVsZEVsZW1lbnQoRG9jdW1lbnQmLCBGaWVsZE93bmVyJik7CisKKyAgICAvLyBEYXRl
VGltZUZpZWxkRWxlbWVudCBmdW5jdGlvbnM6CisgICAgdmlydHVhbCB2b2lkIHBvcHVsYXRlRGF0
ZVRpbWVGaWVsZHNTdGF0ZShEYXRlVGltZUZpZWxkc1N0YXRlJik7CisgICAgdmlydHVhbCB2b2lk
IHNldFZhbHVlQXNEYXRlKGNvbnN0IERhdGVDb21wb25lbnRzJik7Cit9OworCiBjbGFzcyBEYXRl
VGltZU1vbnRoRmllbGRFbGVtZW50IGZpbmFsIDogcHVibGljIERhdGVUaW1lTnVtZXJpY0ZpZWxk
RWxlbWVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChEYXRlVGltZU1vbnRoRmllbGRF
bGVtZW50KTsKIApAQCAtNjEsNiArMTE3LDIwIEBAIHByaXZhdGU6CiAgICAgdm9pZCBwb3B1bGF0
ZURhdGVUaW1lRmllbGRzU3RhdGUoRGF0ZVRpbWVGaWVsZHNTdGF0ZSYpOwogfTsKIAorY2xhc3Mg
RGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1lbnQgZmluYWwgOiBwdWJsaWMgRGF0ZVRpbWVOdW1lcmlj
RmllbGRFbGVtZW50IHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKERhdGVUaW1lU2Vjb25k
RmllbGRFbGVtZW50KTsKKworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RGF0ZVRpbWVTZWNvbmRG
aWVsZEVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYsIEZpZWxkT3duZXImKTsKKworcHJpdmF0ZToK
KyAgICBEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudChEb2N1bWVudCYsIEZpZWxkT3duZXImKTsK
KworICAgIC8vIERhdGVUaW1lRmllbGRFbGVtZW50IGZ1bmN0aW9uczoKKyAgICB2aXJ0dWFsIHZv
aWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUmKTsKKyAg
ICB2aXJ0dWFsIHZvaWQgc2V0VmFsdWVBc0RhdGUoY29uc3QgRGF0ZUNvbXBvbmVudHMmKTsKK307
CisKIGNsYXNzIERhdGVUaW1lU3ltYm9saWNNb250aEZpZWxkRWxlbWVudCBmaW5hbCA6IHB1Ymxp
YyBEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEKERhdGVUaW1lU3ltYm9saWNNb250aEZpZWxkRWxlbWVudCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQu
Y3BwCmluZGV4IDVjNzdhN2E4MWFjYmI1MTEzMTIxNDAwNDExN2QxZTI5ZDExMjUxOWUuLmZjMDcy
NDc2NTcxZTNhY2ZhNjJiZjRmMWE1YzJlMDgxNWRhODFkOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50LmNw
cApAQCAtNTcsNiArNTcsMTEgQEAgRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50OjpEYXRlVGlt
ZU51bWVyaWNGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWUKIHsKIH0KIAoraW50
IERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudDo6bWF4aW11bSgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fcmFuZ2UubWF4aW11bTsKK30KKwogU3RyaW5nIERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxl
bWVudDo6Zm9ybWF0VmFsdWUoaW50IHZhbHVlKSBjb25zdAogewogICAgIExvY2FsZSYgbG9jYWxl
ID0gbG9jYWxlRm9yT3duZXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hh
ZG93L0RhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50LmgKaW5kZXggM2VlYjk1MjNmM2QzMTU4
MjM5MWI1ODY5OTEwZjlkNmQ0M2MzNjhmOC4uYWIyNTdlZTM2Y2Y3NDAwZGQ2ZWYyYjVhZjE5NjRh
NGY1OWEwMzkyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRp
bWVOdW1lcmljRmllbGRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
RGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50LmgKQEAgLTUwLDYgKzUwLDggQEAgcHVibGljOgog
cHJvdGVjdGVkOgogICAgIERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudChEb2N1bWVudCYsIEZp
ZWxkT3duZXImLCBjb25zdCBSYW5nZSYsIGNvbnN0IFN0cmluZyYgcGxhY2Vob2xkZXIpOwogCisg
ICAgaW50IG1heGltdW0oKSBjb25zdDsKKwogICAgIC8vIERhdGVUaW1lRmllbGRFbGVtZW50IGZ1
bmN0aW9uczoKICAgICBib29sIGhhc1ZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgdm9pZCBpbml0
aWFsaXplKGNvbnN0IEF0b21TdHJpbmcmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudC5jcHAKaW5kZXggMjJl
YmQ4OWFlMWExNWE0NzBhNzNhYmIzNjQzYjJmMTNmNzgxMjQ1MS4uY2VjNzcyOTA2NGI2Yzg2NTRj
OTYxODQ2OTE3ZGQ3OWY0MTlkNzZhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudC5jcHAKQEAgLTQ5LDYg
KzQ5LDcgQEAgRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudDo6RGF0ZVRpbWVTeW1ib2xpY0Zp
ZWxkRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQsIEYKICAgICA6IERhdGVUaW1lRmllbGRFbGVt
ZW50KGRvY3VtZW50LCBmaWVsZE93bmVyKQogICAgICwgbV9zeW1ib2xzKHN5bWJvbHMpCiAgICAg
LCBtX3Zpc2libGVFbXB0eVZhbHVlKG1ha2VWaXNpYmxlRW1wdHlWYWx1ZShzeW1ib2xzKSkKKyAg
ICAsIG1fdHlwZUFoZWFkKHRoaXMpCiB7CiAgICAgQVNTRVJUKCFtX3N5bWJvbHMuaXNFbXB0eSgp
KTsKIH0KQEAgLTExMSw5ICsxMTIsMzIgQEAgU3RyaW5nIERhdGVUaW1lU3ltYm9saWNGaWVsZEVs
ZW1lbnQ6OnZpc2libGVWYWx1ZSgpIGNvbnN0CiAgICAgcmV0dXJuIGhhc1ZhbHVlKCkgPyBtX3N5
bWJvbHNbbV9zZWxlY3RlZEluZGV4XSA6IHZpc2libGVFbXB0eVZhbHVlKCk7CiB9CiAKLXZvaWQg
RGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudDo6aGFuZGxlS2V5Ym9hcmRFdmVudChLZXlib2Fy
ZEV2ZW50JikKK3ZvaWQgRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudDo6aGFuZGxlS2V5Ym9h
cmRFdmVudChLZXlib2FyZEV2ZW50JiBrZXlib2FyZEV2ZW50KQogewotICAgIC8vIEZJWE1FOiBJ
bXBsZW1lbnQgYWZ0ZXIgYWRkaW5nIGxheW91dCBmb3IgPGlucHV0IHR5cGU9dGltZT4uCisgICAg
aWYgKGtleWJvYXJkRXZlbnQudHlwZSgpICE9IGV2ZW50TmFtZXMoKS5rZXlwcmVzc0V2ZW50KQor
ICAgICAgICByZXR1cm47CisKKyAgICBrZXlib2FyZEV2ZW50LnNldERlZmF1bHRIYW5kbGVkKCk7
CisKKyAgICBpbnQgaW5kZXggPSBtX3R5cGVBaGVhZC5oYW5kbGVFdmVudCgma2V5Ym9hcmRFdmVu
dCwgVHlwZUFoZWFkOjpNYXRjaFByZWZpeCB8IFR5cGVBaGVhZDo6Q3ljbGVGaXJzdENoYXIgfCBU
eXBlQWhlYWQ6Ok1hdGNoSW5kZXgpOworICAgIGlmIChpbmRleCA8IDApCisgICAgICAgIHJldHVy
bjsKKyAgICBzZXRWYWx1ZUFzSW50ZWdlcihpbmRleCwgRGlzcGF0Y2hJbnB1dEFuZENoYW5nZUV2
ZW50cyk7Cit9CisKK2ludCBEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50OjppbmRleE9mU2Vs
ZWN0ZWRPcHRpb24oKSBjb25zdAoreworICAgIHJldHVybiBtX3NlbGVjdGVkSW5kZXg7Cit9CisK
K2ludCBEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50OjpvcHRpb25Db3VudCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fc3ltYm9scy5zaXplKCk7Cit9CisKK1N0cmluZyBEYXRlVGltZVN5bWJv
bGljRmllbGRFbGVtZW50OjpvcHRpb25BdEluZGV4KGludCBpbmRleCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9zeW1ib2xzW2luZGV4XTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVTeW1ib2xpY0ZpZWxk
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVTeW1ib2xpY0Zp
ZWxkRWxlbWVudC5oCmluZGV4IDgwOWRlMjZkM2RhNmFiODFhNzk2ZmFlZmU5NTcxYTMwYmQ0ZjVm
ZTAuLjFlNWFkZGY5ZTVmOThlOGRiOWNmNWEyYjk2Y2Q2NTRjMDQxMjJiNDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZVN5bWJvbGljRmllbGRF
bGVtZW50LmgKQEAgLTI5LDEwICsyOSwxMSBAQAogI2lmIEVOQUJMRShEQVRFX0FORF9USU1FX0lO
UFVUX1RZUEVTKQogCiAjaW5jbHVkZSAiRGF0ZVRpbWVGaWVsZEVsZW1lbnQuaCIKKyNpbmNsdWRl
ICJUeXBlQWhlYWQuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBEYXRlVGltZVN5
bWJvbGljRmllbGRFbGVtZW50IDogcHVibGljIERhdGVUaW1lRmllbGRFbGVtZW50IHsKK2NsYXNz
IERhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQgOiBwdWJsaWMgRGF0ZVRpbWVGaWVsZEVsZW1l
bnQsIHB1YmxpYyBUeXBlQWhlYWREYXRhU291cmNlIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEKERhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQpOwogcHJvdGVjdGVkOgogICAgIERhdGVU
aW1lU3ltYm9saWNGaWVsZEVsZW1lbnQoRG9jdW1lbnQmLCBGaWVsZE93bmVyJiwgY29uc3QgVmVj
dG9yPFN0cmluZz4mKTsKQEAgLTU1LDkgKzU2LDE1IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIHZp
c2libGVWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChL
ZXlib2FyZEV2ZW50JikgZmluYWw7CiAKKyAgICAvLyBUeXBlQWhlYWREYXRhU291cmNlIGZ1bmN0
aW9uczoKKyAgICBpbnQgaW5kZXhPZlNlbGVjdGVkT3B0aW9uKCkgY29uc3QgZmluYWw7CisgICAg
aW50IG9wdGlvbkNvdW50KCkgY29uc3QgZmluYWw7CisgICAgU3RyaW5nIG9wdGlvbkF0SW5kZXgo
aW50IGluZGV4KSBjb25zdCBmaW5hbDsKKwogICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+IG1fc3lt
Ym9sczsKIAogICAgIGNvbnN0IEF0b21TdHJpbmcgbV92aXNpYmxlRW1wdHlWYWx1ZTsKKyAgICBU
eXBlQWhlYWQgbV90eXBlQWhlYWQ7CiAgICAgaW50IG1fc2VsZWN0ZWRJbmRleCB7IGludmFsaWRJ
bmRleCB9OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Q
bGF0Zm9ybUxvY2FsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1BsYXRmb3Jt
TG9jYWxlLmNwcAppbmRleCBiNWIwZWVhNDYyMDQ5YmQxYjgzMDA3NzMwZWIxOWUzOWU0ZGJkYjE0
Li5mNDcyMDBiNTcyMTY4ZDRlZWZhYTc0ZTkwNzU3MWFkNWM5MmFiMDE5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1BsYXRmb3JtTG9jYWxlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1BsYXRmb3JtTG9jYWxlLmNwcApAQCAtMzU0LDYgKzM1
NCwxMiBAQCBTdHJpbmcgTG9jYWxlOjpmb3JtYXREYXRlVGltZShjb25zdCBEYXRlQ29tcG9uZW50
cyYgZGF0ZSwgRm9ybWF0VHlwZSBmb3JtYXRUeXBlKQogICAgIH0KICAgICByZXR1cm4gYnVpbGRl
ci50b1N0cmluZygpOwogfQorCitTdHJpbmcgTG9jYWxlOjpsb2NhbGl6ZWREZWNpbWFsU2VwYXJh
dG9yKCkKK3sKKyAgICBpbml0aWFsaXplTG9jYWxlRGF0YSgpOworICAgIHJldHVybiBtX2RlY2lt
YWxTeW1ib2xzW0RlY2ltYWxTZXBhcmF0b3JJbmRleF07Cit9CiAjZW5kaWYKIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5oCmluZGV4IGU2M2MwY2Fk
YmFkOWMzMWNjOWI5MDgzMjJjY2Q2NDI5M2JmOTRiYzIuLjRiZjA3NWMxNWNkYTRhZTQyZTUzZGFi
ZDdkZjg2ZWVmY2M2Mjg4M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3Rl
eHQvUGxhdGZvcm1Mb2NhbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1Bs
YXRmb3JtTG9jYWxlLmgKQEAgLTEwOCw2ICsxMDgsOCBAQCBwdWJsaWM6CiAgICAgLy8gbG9jYWxp
emVkIHN0cmluZyBvZiBKYW51YXJ5LCBhbmQgdGhlIGxhc3QgaXRlbSBpcyBhIGxvY2FsaXplZCBz
dHJpbmcgb2YKICAgICAvLyBEZWNlbWJlci4gVGhlc2Ugc3RyaW5ncyBzaG91bGQgbm90IGJlIGFi
YnJldmlhdGlvbnMuCiAgICAgdmlydHVhbCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgbW9udGhMYWJl
bHMoKSA9IDA7CisKKyAgICBTdHJpbmcgbG9jYWxpemVkRGVjaW1hbFNlcGFyYXRvcigpOwogI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoREFURV9BTkRfVElNRV9JTlBVVF9UWVBFUykKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmNzQ3
M2JiN2NmMDM3OTBjMzQ0NmY2Mzc0NjRmMTZkZDU2MjE0N2E4Li5mZDUxYzA1NjcxNDFmMDBjMzcz
OGNhNzcyMjI4M2FjZTEzZjVmZDVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMjAtMDktMDQg
IEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgorCisgICAgICAgIFttYWNPU10g
QWRkIGVkaXRhYmlsaXR5IHRvIGlucHV0IHR5cGU9dGltZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MTg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAq
IGZhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1j
b21wb25lbnRzLWZvY3VzLWFuZC1ibHVyLWV2ZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0
YWJsZS1jb21wb25lbnRzLWZvY3VzLWFuZC1ibHVyLWV2ZW50cy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFi
bGUtY29tcG9uZW50cy1rZXlib2FyZC1ldmVudHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFi
bGUtY29tcG9uZW50cy1rZXlib2FyZC1ldmVudHMuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9mb3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBv
bmVudHMtbW91c2UtZXZlbnRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9m
b3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVu
dHMtbW91c2UtZXZlbnRzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvdGltZS90
aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLXNlY29uZC1h
bmQtbWlsbGlzZWNvbmQtZmllbGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9u
ZW50cy1zZWNvbmQtYW5kLW1pbGxpc2Vjb25kLWZpZWxkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMtd2syL2Zhc3QvZm9ybXMvdGltZS90aW1lLWFwcGVhcmFuY2UtYmFzaWMtZXhwZWN0ZWQudHh0
OiBSZWJhc2VsaW5lZCBmb3IgbmV3IGFwcGVhcmFuY2UuCisgICAgICAgICogcGxhdGZvcm0vbWFj
LXdrMi9mYXN0L2Zvcm1zL3RpbWUvdGltZS1pbnB1dC1yZW5kZXJpbmctYmFzaWMtZXhwZWN0ZWQu
dHh0OiBSZWJhc2VsaW5lZCBmb3IgbmV3IGFwcGVhcmFuY2UuCisKIDIwMjAtMDktMDMgIERldmlu
IFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGFs
bG93IHNwZWNpYWwgSmF2YVNjcmlwdCBicmVha3BvaW50cyB0byBiZSBjb25maWd1cmVkCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4
cGVjdGF0aW9ucwppbmRleCA0YjZjZmYwOTY5OTVhMDI5YjZhMGNkNjZiNjQ4MWFmYTlkNmI1MTFj
Li4yMGNkYTBiYzZhOWZmYzM2NTU1OWE0YzY0NWVlMDI4NzJjMzg5N2EzIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTMxLDYgKzMxLDcgQEAgdGlsZWQtZHJhd2luZyBbIFNraXAgXQogZmFzdC9jc3Mv
aW9zIFsgU2tpcCBdCiBmYXN0L2Nzcy93YXRjaG9zIFsgU2tpcCBdCiBmYXN0L2Zvcm1zL2RhdGUv
ZGF0ZS1lZGl0YWJsZS1jb21wb25lbnRzIFsgU2tpcCBdCitmYXN0L2Zvcm1zL3RpbWUvdGltZS1l
ZGl0YWJsZS1jb21wb25lbnRzIFsgU2tpcCBdCiBmYXN0L2RvbS9XaW5kb3cvd2F0Y2hvcyBbIFNr
aXAgXQogZmFzdC9mb3Jtcy9zZWxlY3QvbWFjLXdrMiBbIFNraXAgXQogZmFzdC9mb3Jtcy90ZXh0
YXJlYS9pb3MgWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGlt
ZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWZvY3Vz
LWFuZC1ibHVyLWV2ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3Rp
bWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1mb2N1
cy1hbmQtYmx1ci1ldmVudHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYwMjBjNmI5YzNkOWNk
MmM2NTJhMTQxOWM0MTU2ZWNkZDdiNWUzZjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUt
Y29tcG9uZW50cy1mb2N1cy1hbmQtYmx1ci1ldmVudHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NjEgQEAKK1Rlc3QgZm9yIGZvY3VzIGFuZCBibHVyIGV2ZW50cyBmb3IgPGlucHV0IHR5cGU9dGlt
ZT4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0ZvY3VzL2JsdXIgdXNpbmcgbW91
c2UKKworUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlz
IDAKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAxCitQQVNTIGJsdXJFdmVudHNGaXJlZCBpcyAw
CitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBibHVyRXZlbnRzRmlyZWQgaXMgMAor
UEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDAKK1BB
U1MgZm9jdXNFdmVudHNGaXJlZCBpcyAxCitQQVNTIGJsdXJFdmVudHNGaXJlZCBpcyAxCisKK0Zv
Y3VzL2JsdXIgdXNpbmcga2V5Ym9hcmQKKworUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BB
U1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDAKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAxCitQQVNT
IGJsdXJFdmVudHNGaXJlZCBpcyAwCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBi
bHVyRXZlbnRzRmlyZWQgaXMgMAorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1
ckV2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAyCitQQVNTIGJsdXJF
dmVudHNGaXJlZCBpcyAxCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMgorUEFTUyBibHVyRXZl
bnRzRmlyZWQgaXMgMQorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDIKK1BBU1MgYmx1ckV2ZW50
c0ZpcmVkIGlzIDEKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAyCitQQVNTIGJsdXJFdmVudHNG
aXJlZCBpcyAyCisKK0ZvY3VzL2JsdXIgb24gZGlzYWJsZWQgaW5wdXQKKworUEFTUyBmb2N1c0V2
ZW50c0ZpcmVkIGlzIDAKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDAKK1BBU1MgZG9jdW1lbnQu
YWN0aXZlRWxlbWVudC5pZCBpcyAiYWZ0ZXIiCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMAor
UEFTUyBibHVyRXZlbnRzRmlyZWQgaXMgMAorUEFTUyBkb2N1bWVudC5hY3RpdmVFbGVtZW50Lmlk
IGlzICJiZWZvcmUiCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMAorUEFTUyBibHVyRXZlbnRz
RmlyZWQgaXMgMAorCitGb2N1cy9ibHVyIG9uIHJlYWRvbmx5IGlucHV0CisKK1BBU1MgZm9jdXNF
dmVudHNGaXJlZCBpcyAxCitQQVNTIGJsdXJFdmVudHNGaXJlZCBpcyAwCitQQVNTIGRvY3VtZW50
LmFjdGl2ZUVsZW1lbnQuaWQgaXMgImFmdGVyIgorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEK
K1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAxCitQ
QVNTIGJsdXJFdmVudHNGaXJlZCBpcyAxCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKyAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1z
L3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1m
b2N1cy1hbmQtYmx1ci1ldmVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90
aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWZvY3VzLWFu
ZC1ibHVyLWV2ZW50cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1OWNiMDE4NjRiMDdiMGY3NjQwZWJhNGE1
OTdlNjIzMWVhNjU2MzgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1z
L3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1m
b2N1cy1hbmQtYmx1ci1ldmVudHMuaHRtbApAQCAtMCwwICsxLDE2OCBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3Vy
Y2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CitpbnB1dCB7CisgICAgd2lkdGg6
IDMwMHB4OworfQorCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQgeworICAgIGZv
bnQtc2l6ZTogMzBweDsKK30KKworaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZp
ZWxkIHsKKyAgICBmb250LXNpemU6IDMwcHg7Cit9CisKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1l
LWVkaXQtbWludXRlLWZpZWxkIHsKKyAgICBmb250LXNpemU6IDMwcHg7Cit9CisKK2lucHV0Ojot
d2Via2l0LWRhdGV0aW1lLWVkaXQtYW1wbS1maWVsZCB7CisgICAgZm9udC1zaXplOiAzMHB4Owor
fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorCis8aW5wdXQgaWQ9ImJlZm9yZSIgdHlwZT0i
dGV4dCI+Cis8aW5wdXQgaWQ9ImlucHV0IiB0eXBlPSJ0aW1lIiB2YWx1ZT0iMTg6MzAiPgorPGlu
cHV0IGlkPSJhZnRlciIgdHlwZT0idGV4dCI+CisKKzxzY3JpcHQ+CisKK2Rlc2NyaXB0aW9uKCJU
ZXN0IGZvciBmb2N1cyBhbmQgYmx1ciBldmVudHMgZm9yICZsdDtpbnB1dCB0eXBlPXRpbWUmZ3Q7
Iik7CisKK2JsdXJFdmVudHNGaXJlZCA9IDA7CitmdW5jdGlvbiBvbkJsdXJFdmVudCgpIHsKKyAg
ICBibHVyRXZlbnRzRmlyZWQrKzsKK30KKworZm9jdXNFdmVudHNGaXJlZCA9IDA7CitmdW5jdGlv
biBvbkZvY3VzRXZlbnQoKSB7CisgICAgZm9jdXNFdmVudHNGaXJlZCsrOworfQorCitmdW5jdGlv
biBhc3NlcnRGb2N1c0FuZEJsdXJDb3VudChudW1Gb2N1c0V2ZW50cywgbnVtQmx1ckV2ZW50cykg
eworICAgIHNob3VsZEJlKCJmb2N1c0V2ZW50c0ZpcmVkIiwgbnVtRm9jdXNFdmVudHMudG9TdHJp
bmcoKSk7CisgICAgc2hvdWxkQmUoImJsdXJFdmVudHNGaXJlZCIsIG51bUJsdXJFdmVudHMudG9T
dHJpbmcoKSk7Cit9CisKK2Z1bmN0aW9uIHJlc2V0Rm9jdXNBbmRCbHVyQ291bnQoKSB7CisgICAg
Ymx1ckV2ZW50c0ZpcmVkID0gMDsKKyAgICBmb2N1c0V2ZW50c0ZpcmVkID0gMDsKK30KKworZnVu
Y3Rpb24gbW91c2VDbGlja09uKHgsIHkpIHsKKyAgICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlcikK
KyAgICAgICAgcmV0dXJuOworICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHggKyBpbnB1dC5v
ZmZzZXRMZWZ0LCB5ICsgaW5wdXQub2Zmc2V0VG9wKTsKKyAgICBldmVudFNlbmRlci5tb3VzZURv
d24oKTsKKyAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7Cit9CisKK2lucHV0LmFkZEV2ZW50TGlz
dGVuZXIoImJsdXIiLCBvbkJsdXJFdmVudCk7CitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1
cyIsIG9uRm9jdXNFdmVudCk7CisKK2NvbnN0IGNlbnRlciA9IGlucHV0Lm9mZnNldEhlaWdodCAv
IDI7CisKK2RlYnVnKCJGb2N1cy9ibHVyIHVzaW5nIG1vdXNlXG4iKTsKKworLy8gQ2xpY2sgb24g
aG91ciBmaWVsZC4KK21vdXNlQ2xpY2tPbigyMCwgY2VudGVyKTsKK2Fzc2VydEZvY3VzQW5kQmx1
ckNvdW50KDEsIDApOworLy8gQ2xpY2sgb24gbWludXRlIGZpZWxkLgorbW91c2VDbGlja09uKDYw
LCBjZW50ZXIpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwgMCk7CisvLyBDbGljayBvbiBB
TS9QTSBmaWVsZC4KK21vdXNlQ2xpY2tPbigxMjAsIGNlbnRlcik7Cithc3NlcnRGb2N1c0FuZEJs
dXJDb3VudCgxLCAwKTsKKy8vIENsaWNrIG9uIGNvbnRyb2wsIGJ1dCBub3QgYSBzcGVjaWZpYyBm
aWVsZC4KK21vdXNlQ2xpY2tPbigyNTAsIGNlbnRlcik7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3Vu
dCgxLCAwKTsKKy8vIENsaWNrIG91dHNpZGUgY29udHJvbC4KK21vdXNlQ2xpY2tPbihpbnB1dC5v
ZmZzZXRXaWR0aCArIDUsIGlucHV0Lm9mZnNldEhlaWdodCArIDUpOworYXNzZXJ0Rm9jdXNBbmRC
bHVyQ291bnQoMSwgMSk7CityZXNldEZvY3VzQW5kQmx1ckNvdW50KCk7CisKK2RlYnVnKCJcbkZv
Y3VzL2JsdXIgdXNpbmcga2V5Ym9hcmRcbiIpOworCitVSUhlbHBlci5hY3RpdmF0ZUVsZW1lbnQo
YmVmb3JlKTsKKy8vIEZvY3VzIG9uIGhvdXIgZmllbGQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIp
OworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwgMCk7CisvLyBGb2N1cyBvbiBtaW51dGUgZmll
bGQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwg
MCk7CisvLyBGb2N1cyBvbiBBTS9QTSBmaWVsZC4KK1VJSGVscGVyLmtleURvd24oIlx0Iik7Cith
c3NlcnRGb2N1c0FuZEJsdXJDb3VudCgxLCAwKTsKKy8vIEZvY3VzIG91dC4KK1VJSGVscGVyLmtl
eURvd24oIlx0Iik7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgxLCAxKTsKKy8vIEZvY3VzIG9u
IGhvdXIgZmllbGQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIsIFsic2hpZnRLZXkiXSk7Cithc3Nl
cnRGb2N1c0FuZEJsdXJDb3VudCgyLCAxKTsKKy8vIEZvY3VzIG9uIG1pbnV0ZSBmaWVsZC4KK1VJ
SGVscGVyLmtleURvd24oIlx0IiwgWyJzaGlmdEtleSJdKTsKK2Fzc2VydEZvY3VzQW5kQmx1ckNv
dW50KDIsIDEpOworLy8gRm9jdXMgb24gQU0vUE0gZmllbGQuCitVSUhlbHBlci5rZXlEb3duKCJc
dCIsIFsic2hpZnRLZXkiXSk7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgyLCAxKTsKKy8vIEZv
Y3VzIG91dC4KK1VJSGVscGVyLmtleURvd24oIlx0IiwgWyJzaGlmdEtleSJdKTsKK2Fzc2VydEZv
Y3VzQW5kQmx1ckNvdW50KDIsIDIpOworcmVzZXRGb2N1c0FuZEJsdXJDb3VudCgpOworCitkZWJ1
ZygiXG5Gb2N1cy9ibHVyIG9uIGRpc2FibGVkIGlucHV0XG4iKQorCitpbnB1dC5kaXNhYmxlZCA9
IHRydWU7CisKK1VJSGVscGVyLmFjdGl2YXRlRWxlbWVudChiZWZvcmUpOworLy8gVGFiIHRvIGZv
Y3VzIHNob3VsZCBza2lwIGRpc2FibGVkIGlucHV0LgorVUlIZWxwZXIua2V5RG93bigiXHQiKTsK
K2Fzc2VydEZvY3VzQW5kQmx1ckNvdW50KDAsIDApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJk
b2N1bWVudC5hY3RpdmVFbGVtZW50LmlkIiwgImFmdGVyIik7CisvLyBTaGlmdCtUYWIgc2hvdWxk
IHNraXAgZGlzYWJsZWQgaW5wdXQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIsIFsic2hpZnRLZXki
XSk7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgwLCAwKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZygiZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5pZCIsICJiZWZvcmUiKTsKKy8vIENsaWNraW5nIG9u
IGFueSBwYXJ0IG9mIHRoZSBjb250cm9sIHNob3VsZCBub3QgZm9jdXMvYmx1ciBldmVudHMuCitt
b3VzZUNsaWNrT24oMjAsIGNlbnRlcik7Cittb3VzZUNsaWNrT24oNjAsIGNlbnRlcik7Cittb3Vz
ZUNsaWNrT24oMTIwLCBjZW50ZXIpOworbW91c2VDbGlja09uKDI1MCwgY2VudGVyKTsKK21vdXNl
Q2xpY2tPbihpbnB1dC5vZmZzZXRXaWR0aCArIDUsIGlucHV0Lm9mZnNldEhlaWdodCArIDUpOwor
YXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMCwgMCk7CityZXNldEZvY3VzQW5kQmx1ckNvdW50KCk7
CisKK2RlYnVnKCJcbkZvY3VzL2JsdXIgb24gcmVhZG9ubHkgaW5wdXRcbiIpCisKK2lucHV0LmRp
c2FibGVkID0gZmFsc2U7CitpbnB1dC5yZWFkT25seSA9IHRydWU7CisKK1VJSGVscGVyLmFjdGl2
YXRlRWxlbWVudChiZWZvcmUpOworLy8gVGFiIHRvIGZvY3VzIHNob3VsZCBub3Qgc2tpcCByZWFk
b25seSBpbnB1dC4KK1VJSGVscGVyLmtleURvd24oIlx0Iik7Cithc3NlcnRGb2N1c0FuZEJsdXJD
b3VudCgxLCAwKTsKK1VJSGVscGVyLmtleURvd24oIlx0Iik7CitVSUhlbHBlci5rZXlEb3duKCJc
dCIpOworVUlIZWxwZXIua2V5RG93bigiXHQiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiZG9j
dW1lbnQuYWN0aXZlRWxlbWVudC5pZCIsICJhZnRlciIpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291
bnQoMSwgMSk7CisvLyBDbGlja2luZyBvbiBhbnkgcGFydCBvZiB0aGUgY29udHJvbCBzaG91bGQg
ZmlyZSB0aGUgYXBwcm9wcmlhdGUgZXZlbnRzLgorbW91c2VDbGlja09uKDIwLCBjZW50ZXIpOwor
bW91c2VDbGlja09uKDYwLCBjZW50ZXIpOworbW91c2VDbGlja09uKDEyMCwgY2VudGVyKTsKK21v
dXNlQ2xpY2tPbigyNTAsIGNlbnRlcik7Cittb3VzZUNsaWNrT24oaW5wdXQub2Zmc2V0V2lkdGgg
KyA1LCBpbnB1dC5vZmZzZXRIZWlnaHQgKyA1KTsKK2Fzc2VydEZvY3VzQW5kQmx1ckNvdW50KDEs
IDEpOworcmVzZXRGb2N1c0FuZEJsdXJDb3VudCgpOworCis8L3NjcmlwdD4KKworPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3Rp
bWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMta2V5Ym9hcmQt
ZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVk
aXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJvYXJkLWV2ZW50
cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDhiNDlkMzRiZGUyNDZhYzlkOWEzNmFmYzM3OTQy
NWEzZjRjOWZkYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGlt
ZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJv
YXJkLWV2ZW50cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3MiBAQAorVGVzdCBmb3Iga2V5Ym9h
cmQgb3BlcmF0aW9ucyBmb3IgPGlucHV0IHR5cGU9dGltZT4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKKworRGlnaXQga2V5cworUEFTUyBpbnB1dC52YWx1ZSBpcyAiMDA6MDIiCitQ
QVNTIGNoYW5nZUV2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgaW5wdXRFdmVudHNGaXJlZCBpcyAxCisK
K0RpZ2l0IGtleXMgd2l0aCB0aW1lb3V0CitQQVNTIGlucHV0LnZhbHVlIGlzICIxNDowNSIKK1BB
U1MgY2hhbmdlRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBpbnB1dEV2ZW50c0ZpcmVkIGlzIDEKKwor
RGlnaXQga2V5cyBjbGFtcCB2YWx1ZQorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTM6MjIiCitQQVNT
IGlucHV0LnZhbHVlIGlzICIxMjoyMiIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjEzOjIyIgorUEFT
UyBpbnB1dC52YWx1ZSBpcyAiMTM6MDYiCitQQVNTIGlucHV0LnZhbHVlIGlzICIxMzo1OSIKK1BB
U1MgY2hhbmdlRXZlbnRzRmlyZWQgaXMgNQorUEFTUyBpbnB1dEV2ZW50c0ZpcmVkIGlzIDUKKwor
TGVmdC9SaWdodCBhcnJvdyBrZXlzCitQQVNTIGlucHV0LnZhbHVlIGlzICIwMjowMiIKK1BBU1Mg
aW5wdXQudmFsdWUgaXMgIjAzOjAzIgorUEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyA1CitQQVNT
IGlucHV0RXZlbnRzRmlyZWQgaXMgNQorCitVcC9Eb3duIGFycm93IGtleXMKK1BBU1MgaW5wdXQu
dmFsdWUgaXMgIjEyOjU5IgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTM6NTkiCitQQVNTIGlucHV0
LnZhbHVlIGlzICIxMjo1OSIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjIzOjU5IgorUEFTUyBpbnB1
dC52YWx1ZSBpcyAiMTE6NTkiCitQQVNTIGlucHV0LnZhbHVlIGlzICIyMzo1OSIKK1BBU1MgaW5w
dXQudmFsdWUgaXMgIjExOjU5IgorUEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyA3CitQQVNTIGlu
cHV0RXZlbnRzRmlyZWQgaXMgNworCitUYWIga2V5CitQQVNTIGlucHV0LnZhbHVlIGlzICIwMjow
MiIKK1BBU1MgZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5pZCBpcyAiYWZ0ZXIiCitQQVNTIGlucHV0
LnZhbHVlIGlzICIwMzowMyIKK1BBU1MgZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5pZCBpcyAiYmVm
b3JlIgorUEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyAzCitQQVNTIGlucHV0RXZlbnRzRmlyZWQg
aXMgMworCitCYWNrc3BhY2Uga2V5CitQQVNTIGlucHV0LnZhbHVlIGlzICIiCitQQVNTIGlucHV0
LnZhbHVlIGlzICIxOTozMCIKK1BBU1MgY2hhbmdlRXZlbnRzRmlyZWQgaXMgMgorUEFTUyBpbnB1
dEV2ZW50c0ZpcmVkIGlzIDIKKworRGVsZXRlIGtleQorUEFTUyBpbnB1dC52YWx1ZSBpcyAiIgor
UEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyAxCitQQVNTIGlucHV0RXZlbnRzRmlyZWQgaXMgMQor
CitEaXNhYmxlZC9yZWFkb25seQorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMDk6MDEiCitQQVNTIGlu
cHV0LnZhbHVlIGlzICIwMTowMSIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjAxOjAxIgorUEFTUyBp
bnB1dC52YWx1ZSBpcyAiMDE6MDIiCitQQVNTIGNoYW5nZUV2ZW50c0ZpcmVkIGlzIDIKK1BBU1Mg
aW5wdXRFdmVudHNGaXJlZCBpcyAyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKyAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3Rp
bWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1rZXli
b2FyZC1ldmVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRh
YmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJvYXJkLWV2ZW50cy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjFiYWJkOTU2MmEwZGY2MDQ5OTUzY2FmYTAzYWM2YWJkNTkwNTQzZTYK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0
YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1rZXlib2FyZC1ldmVudHMu
aHRtbApAQCAtMCwwICsxLDE3NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGlucHV0IGlkPSJiZWZvcmUiIHR5cGU9InRleHQi
PgorPGlucHV0IGlkPSJpbnB1dCIgdHlwZT0idGltZSI+Cis8aW5wdXQgaWQ9ImFmdGVyIiB0eXBl
PSJ0ZXh0Ij4KKworPHNjcmlwdD4KKworanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2NoYW5nZUV2
ZW50c0ZpcmVkID0gMDsKK2Z1bmN0aW9uIG9uQ2hhbmdlRXZlbnQoKSB7CisgICAgY2hhbmdlRXZl
bnRzRmlyZWQrKzsKK30KKworaW5wdXRFdmVudHNGaXJlZCA9IDA7CitmdW5jdGlvbiBvbklucHV0
RXZlbnQoKSB7CisgICAgaW5wdXRFdmVudHNGaXJlZCsrOworfQorCitmdW5jdGlvbiBiZWdpblRl
c3QodGl0bGUsIHZhbHVlKSB7CisgICAgZGVidWcoIlxuIiArIHRpdGxlKTsKKyAgICBpbnB1dC52
YWx1ZSA9IHZhbHVlIHx8ICIiOworICAgIGlucHV0LmJsdXIoKTsKKyAgICBpbnB1dC5mb2N1cygp
OworCisgICAgY2hhbmdlRXZlbnRzRmlyZWQgPSAwOworICAgIGlucHV0RXZlbnRzRmlyZWQgPSAw
OworfQorCitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLCBvbkNoYW5nZUV2ZW50KTsK
K2lucHV0LmFkZEV2ZW50TGlzdGVuZXIoImlucHV0Iiwgb25JbnB1dEV2ZW50KTsKKworYWRkRXZl
bnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKKyAgICBkZXNjcmlwdGlvbigiVGVzdCBm
b3Iga2V5Ym9hcmQgb3BlcmF0aW9ucyBmb3IgJmx0O2lucHV0IHR5cGU9dGltZSZndDsiKTsKKwor
ICAgIGJlZ2luVGVzdCgiRGlnaXQga2V5cyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvLyBbaGhdOm1tIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiMSIpOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIC0+IFswMV06bW0gdHQKKyAgICBVSUhlbHBlci5rZXlEb3du
KCIyIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gWzEyXTptbSB0dAor
ICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAg
ICAvLyAtPiAxMjpbbW1dIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiMiIpOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDEyOlswMl0gdHQKKyAgICBVSUhlbHBlci5rZXlE
b3duKCJyaWdodEFycm93Iik7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMTI6MDIgW3R0
XQorICAgIFVJSGVscGVyLmtleURvd24oIkEiKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvLyAtPiAxMjowMiBbQU1dCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52
YWx1ZSIsICIwMDowMiIpOworICAgIHNob3VsZEJlKCJjaGFuZ2VFdmVudHNGaXJlZCIsICIxIik7
CisgICAgc2hvdWxkQmUoImlucHV0RXZlbnRzRmlyZWQiLCAiMSIpOworCisgICAgYmVnaW5UZXN0
KCJEaWdpdCBrZXlzIHdpdGggdGltZW91dCIpOyAgICAgICAgICAgICAgICAgIC8vIFtoaF06bW0g
dHQKKyAgICBVSUhlbHBlci5rZXlEb3duKCIyIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gWzAyXTptbSB0dAorICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsg
ICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAwMjpbbW1dIHR0CisgICAgVUlIZWxwZXIua2V5
RG93bigiNCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOlswNF0g
dHQKKyAgICBhd2FpdCBVSUhlbHBlci5kZWxheUZvcigxNTAwKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gV2FpdC4KKyAgICBVSUhlbHBlci5rZXlEb3duKCI1Iik7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6WzA1XSB0dAorICAgIFVJSGVscGVyLmtleURvd24o
InJpZ2h0QXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAwMjowNSBbdHRdCisg
ICAgVUlIZWxwZXIua2V5RG93bigiUCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIC0+IDAyOjA1IFtQTV0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVl
IiwgIjE0OjA1Iik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2ZW50c0ZpcmVkIiwgIjEiKTsKKyAg
ICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICIxIik7CisKKyAgICBiZWdpblRlc3QoIkRp
Z2l0IGtleXMgY2xhbXAgdmFsdWUiLCAiMTI6MjIiKTsgICAgICAgICAgLy8gWzEyXToyMiBQTQor
ICAgIFVJSGVscGVyLmtleURvd24oIjEiKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvLyAtPiBbMDFdOjIyIFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1
ZSIsICIxMzoyMiIpOworICAgIFVJSGVscGVyLmtleURvd24oIjMiKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvLyAtPiBbMTJdOjIyIFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJpbnB1dC52YWx1ZSIsICIxMjoyMiIpOworICAgIFVJSGVscGVyLmtleURvd24oIjAiKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDFdOjIyIFBNCisgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIxMzoyMiIpOworICAgIFVJSGVscGVy
LmtleURvd24oInJpZ2h0QXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAxMzpb
MjJdIFBNCisgICAgVUlIZWxwZXIua2V5RG93bigiNiIpOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIC0+IDEzOlswNl0gUE0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlu
cHV0LnZhbHVlIiwgIjEzOjA2Iik7CisgICAgVUlIZWxwZXIua2V5RG93bigiMSIpOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDEzOls1OV0gUE0KKyAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjEzOjU5Iik7CisgICAgc2hvdWxkQmUoImNoYW5n
ZUV2ZW50c0ZpcmVkIiwgIjUiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICI1
Iik7CisKKyAgICBiZWdpblRlc3QoIkxlZnQvUmlnaHQgYXJyb3cga2V5cyIsICIxNToyNyIpOyAg
ICAgICAgICAgLy8gWzAzXToyNyBQTQorICAgIFVJSGVscGVyLmtleURvd24oIjIiKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDJdOjI3IFBNCisgICAgVUlIZWxwZXIu
a2V5RG93bigicmlnaHRBcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOlsy
N10gUE0KKyAgICBVSUhlbHBlci5rZXlEb3duKCIyIik7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLy8gLT4gMDI6WzAyXSBQTQorICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJy
b3ciKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAwMjowMiBbUE1dCisgICAgVUlIZWxw
ZXIua2V5RG93bigiQSIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAy
OjAyIFtBTV0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjAyOjAy
Iik7CisgICAgVUlIZWxwZXIua2V5RG93bigibGVmdEFycm93Iik7ICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vIC0+IDAyOlswMl0gQU0KKyAgICBVSUhlbHBlci5rZXlEb3duKCIzIik7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6WzAzXSBBTQorICAgIFVJSGVscGVy
LmtleURvd24oImxlZnRBcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDJd
OjAzIEFNCisgICAgVUlIZWxwZXIua2V5RG93bigiMyIpOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIC0+IFswM106MDMgQU0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlu
cHV0LnZhbHVlIiwgIjAzOjAzIik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2ZW50c0ZpcmVkIiwg
IjUiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICI1Iik7CisKKyAgICBiZWdp
blRlc3QoIlVwL0Rvd24gYXJyb3cga2V5cyIsICIyMzo1OSIpOyAgICAgICAgICAgICAgLy8gWzEx
XTo1OSBQTQorICAgIFVJSGVscGVyLmtleURvd24oInVwQXJyb3ciKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyAtPiBbMTJdOjU5IFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJp
bnB1dC52YWx1ZSIsICIxMjo1OSIpOworICAgIFVJSGVscGVyLmtleURvd24oInVwQXJyb3ciKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDFdOjU5IFBNCisgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIxMzo1OSIpOworICAgIFVJSGVscGVyLmtleURv
d24oImRvd25BcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMTJdOjU5IFBN
CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIxMjo1OSIpOworICAg
IFVJSGVscGVyLmtleURvd24oImRvd25BcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAv
LyAtPiBbMTFdOjU5IFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIs
ICIyMzo1OSIpOworICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsgICAgICAgICAg
ICAgICAgICAgICAgICAvLyAtPiAxMTpbNTldIFBNCisgICAgVUlIZWxwZXIua2V5RG93bigicmln
aHRBcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDExOjU5IFtQTV0KKyAgICBV
SUhlbHBlci5rZXlEb3duKCJ1cEFycm93Iik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g
LT4gMTE6NTkgW0FNXQorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAi
MTE6NTkiKTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCJkb3duQXJyb3ciKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgLy8gLT4gMTE6NTkgW1BNXQorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
aW5wdXQudmFsdWUiLCAiMjM6NTkiKTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCJkb3duQXJyb3ci
KTsgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMTE6NTkgW0FNXQorICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMTE6NTkiKTsKKyAgICBzaG91bGRCZSgiY2hh
bmdlRXZlbnRzRmlyZWQiLCAiNyIpOworICAgIHNob3VsZEJlKCJpbnB1dEV2ZW50c0ZpcmVkIiwg
IjciKTsKKworICAgIGJlZ2luVGVzdCgiVGFiIGtleSIpOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyBbaGhdOm1tIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiMiIpOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IFswMl06bW0gdHQKKyAgICBVSUhlbHBl
ci5rZXlEb3duKCJcdCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6
W21tXSB0dAorICAgIFVJSGVscGVyLmtleURvd24oIjIiKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyAtPiAwMjpbMDJdIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiXHQiKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOjAyIFt0dF0KKyAgICBVSUhl
bHBlci5rZXlEb3duKCJBIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4g
MDI6MDIgW0FNXQorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMDI6
MDIiKTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCJcdCIpOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLy8gRm9jdXMgb3V0LgorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1l
bnQuYWN0aXZlRWxlbWVudC5pZCIsICJhZnRlciIpOworICAgIFVJSGVscGVyLmtleURvd24oIlx0
IiwgWyJzaGlmdEtleSJdKTsgICAgICAgICAgICAgICAgICAvLyAtPiAwMjowMiBbQU1dCisgICAg
VUlIZWxwZXIua2V5RG93bigiXHQiLCBbInNoaWZ0S2V5Il0pOyAgICAgICAgICAgICAgICAgIC8v
IC0+IDAyOlswMl0gQU0KKyAgICBVSUhlbHBlci5rZXlEb3duKCIzIik7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6WzAzXSBBTQorICAgIFVJSGVscGVyLmtleURvd24o
Ilx0IiwgWyJzaGlmdEtleSJdKTsgICAgICAgICAgICAgICAgICAvLyAtPiBbMDJdOjAzIEFNCisg
ICAgVUlIZWxwZXIua2V5RG93bigiMyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIC0+IFswM106MDMgQU0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVl
IiwgIjAzOjAzIik7CisgICAgVUlIZWxwZXIua2V5RG93bigiXHQiLCBbInNoaWZ0S2V5Il0pOyAg
ICAgICAgICAgICAgICAgIC8vIEZvY3VzIG91dC4KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuaWQiLCAiYmVmb3JlIik7CisgICAgc2hvdWxkQmUoImNo
YW5nZUV2ZW50c0ZpcmVkIiwgIjMiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIs
ICIzIik7CisKKyAgICBiZWdpblRlc3QoIkJhY2tzcGFjZSBrZXkiLCAiMTY6MzAiKTsgICAgICAg
ICAgICAgICAgICAgLy8gWzA0XTozMCBQTQorICAgIFVJSGVscGVyLmtleURvd24oIlxiIik7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbaGhdOjMwIFBNCisgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIiKTsKKyAgICBVSUhlbHBlci5rZXlEb3du
KCI3Iik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gWzA3XTozMCBQTQor
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMTk6MzAiKTsKKyAgICBz
aG91bGRCZSgiY2hhbmdlRXZlbnRzRmlyZWQiLCAiMiIpOworICAgIHNob3VsZEJlKCJpbnB1dEV2
ZW50c0ZpcmVkIiwgIjIiKTsKKworICAgIGJlZ2luVGVzdCgiRGVsZXRlIGtleSIsICIxODoyMCIp
OyAgICAgICAgICAgICAgICAgICAgICAvLyBbMDZdOjIwIFBNCisgICAgVUlIZWxwZXIua2V5RG93
bigiZGVsZXRlIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IFtoaF06MjAgUE0K
KyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIiIpOworICAgIHNob3Vs
ZEJlKCJjaGFuZ2VFdmVudHNGaXJlZCIsICIxIik7CisgICAgc2hvdWxkQmUoImlucHV0RXZlbnRz
RmlyZWQiLCAiMSIpOworCisgICAgYmVnaW5UZXN0KCJEaXNhYmxlZC9yZWFkb25seSIsICIwOTow
MSIpOworICAgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCIx
Iik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIwOTowMSIpOwor
ICAgIGlucHV0LmRpc2FibGVkID0gZmFsc2U7CisgICAgaW5wdXQuZm9jdXMoKTsKKyAgICBVSUhl
bHBlci5rZXlEb3duKCIxIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1
ZSIsICIwMTowMSIpOworICAgIGlucHV0LnJlYWRPbmx5ID0gdHJ1ZTsKKyAgICBVSUhlbHBlci5r
ZXlEb3duKCJyaWdodEFycm93Iik7CisgICAgVUlIZWxwZXIua2V5RG93bigiMiIpOworICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMDE6MDEiKTsKKyAgICBpbnB1dC5y
ZWFkT25seSA9IGZhbHNlOworICAgIFVJSGVscGVyLmtleURvd24oIjIiKTsKKyAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjAxOjAyIik7CisgICAgc2hvdWxkQmUoImNo
YW5nZUV2ZW50c0ZpcmVkIiwgIjIiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIs
ICIyIik7CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30pOworCis8L3NjcmlwdD4KKworPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1l
L3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtbW91c2Ut
ZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVk
aXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLW1vdXNlLWV2ZW50cy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTExMTQzNjkzYzkxOTVlYjdjZjRhNjJmOGYzN2YwZTIw
OTllZmQxMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90
aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLW1vdXNlLWV2
ZW50cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNSBAQAorVGVzdCBmb3IgbW91c2UgZXZlbnRz
IGZvciA8aW5wdXQgdHlwZT10aW1lPgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKwor
RW5hYmxlZCBJbnB1dAorCitQQVNTIGlucHV0LnZhbHVlIGlzICIwOTozMCIKK1BBU1MgaW5wdXQu
dmFsdWUgaXMgIjA5OjEyIgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMjE6MTIiCitQQVNTIGlucHV0
LnZhbHVlIGlzICIxODoxMiIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjE4OjEyIgorUEFTUyBjbGlj
a0V2ZW50c0ZpcmVkIGlzIDQKKworRGlzYWJsZWQgSW5wdXQKKworUEFTUyBjbGlja0V2ZW50c0Zp
cmVkIGlzIDAKKworUmVhZG9ubHkgSW5wdXQKKworUEFTUyBjbGlja0V2ZW50c0ZpcmVkIGlzIDQK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25l
bnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1tb3VzZS1ldmVudHMuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJs
ZS1jb21wb25lbnRzLW1vdXNlLWV2ZW50cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0OTg0NjQzMmMxZDcw
NzFiMjVlMGU3Y2FkODI5MTFiNTkxMTA5NTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUt
Y29tcG9uZW50cy1tb3VzZS1ldmVudHMuaHRtbApAQCAtMCwwICsxLDEyMiBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVz
b3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CitpbnB1dCB7CisgICAgd2lk
dGg6IDMwMHB4OworfQorCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQgeworICAg
IGZvbnQtc2l6ZTogMzBweDsKK30KKworaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3Vy
LWZpZWxkIHsKKyAgICBmb250LXNpemU6IDMwcHg7Cit9CisKK2lucHV0Ojotd2Via2l0LWRhdGV0
aW1lLWVkaXQtbWludXRlLWZpZWxkIHsKKyAgICBmb250LXNpemU6IDMwcHg7Cit9CisKK2lucHV0
Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtYW1wbS1maWVsZCB7CisgICAgZm9udC1zaXplOiAzMHB4
OworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorCis8aW5wdXQgaWQ9ImlucHV0IiB0eXBl
PSJ0aW1lIiB2YWx1ZT0iMDU6MzAiPgorCis8c2NyaXB0PgorCitkZXNjcmlwdGlvbigiVGVzdCBm
b3IgbW91c2UgZXZlbnRzIGZvciAmbHQ7aW5wdXQgdHlwZT10aW1lJmd0OyIpOworCitjbGlja0V2
ZW50c0ZpcmVkID0gMDsKK2Z1bmN0aW9uIG9uQ2xpY2tFdmVudCgpIHsKKyAgICBjbGlja0V2ZW50
c0ZpcmVkKys7Cit9CisKK2Z1bmN0aW9uIG1vdXNlQ2xpY2tPbih4LCB5KSB7CisgICAgaWYgKCF3
aW5kb3cuZXZlbnRTZW5kZXIpCisgICAgICAgIHJldHVybjsKKyAgICBldmVudFNlbmRlci5tb3Vz
ZU1vdmVUbyh4ICsgaW5wdXQub2Zmc2V0TGVmdCwgeSArIGlucHV0Lm9mZnNldFRvcCk7CisgICAg
ZXZlbnRTZW5kZXIubW91c2VEb3duKCk7CisgICAgZXZlbnRTZW5kZXIubW91c2VVcCgpOworfQor
CitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIG9uQ2xpY2tFdmVudCk7Citjb25zdCBj
ZW50ZXIgPSBpbnB1dC5vZmZzZXRIZWlnaHQgLyAyOworCitkZWJ1ZygiRW5hYmxlZCBJbnB1dFxu
Iik7CisKKy8vIENsaWNrIG9uIGhvdXIgZmllbGQuCittb3VzZUNsaWNrT24oMjAsIGNlbnRlcik7
CitVSUhlbHBlci5rZXlEb3duKCI5Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZh
bHVlIiwgIjA5OjMwIik7CisKKy8vIENsaWNrIG9uIG1pbnV0ZSBmaWVsZC4KK21vdXNlQ2xpY2tP
big2MCwgY2VudGVyKTsKK1VJSGVscGVyLmtleURvd24oIjEiKTsKK1VJSGVscGVyLmtleURvd24o
IjIiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMDk6MTIiKTsKKwor
Ly8gQ2xpY2sgb24gQU0vUE0gZmllbGQuCittb3VzZUNsaWNrT24oMTIwLCBjZW50ZXIpOworVUlI
ZWxwZXIua2V5RG93bigidXBBcnJvdyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52
YWx1ZSIsICIyMToxMiIpOworCisvLyBDbGljayBvbiBjb250cm9sLCBidXQgbm90IGEgc3BlY2lm
aWMgZmllbGQsIGRlZmF1bHRzIHRvIGZpcnN0IGZpZWxkLgorbW91c2VDbGlja09uKDI1MCwgY2Vu
dGVyKTsKK1VJSGVscGVyLmtleURvd24oIjYiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiaW5w
dXQudmFsdWUiLCAiMTg6MTIiKTsKKworLy8gQ2xpY2sgb3V0c2lkZSBjb250cm9sLgorbW91c2VD
bGlja09uKGlucHV0Lm9mZnNldFdpZHRoICsgNSwgaW5wdXQub2Zmc2V0SGVpZ2h0ICsgNSk7CitV
SUhlbHBlci5rZXlEb3duKCI1Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVl
IiwgIjE4OjEyIik7CisKK3Nob3VsZEJlKCJjbGlja0V2ZW50c0ZpcmVkIiwgIjQiKTsKKworZGVi
dWcoIlxuRGlzYWJsZWQgSW5wdXRcbiIpOworY2xpY2tFdmVudHNGaXJlZCA9IDA7CitpbnB1dC5k
aXNhYmxlZCA9IHRydWU7CitpbnB1dC5yZWFkT25seSA9IGZhbHNlOworCisvLyBDbGljayBvbiBo
b3VyIGZpZWxkLgorbW91c2VDbGlja09uKDIwLCBjZW50ZXIpOworLy8gQ2xpY2sgb24gbWludXRl
IGZpZWxkLgorbW91c2VDbGlja09uKDYwLCBjZW50ZXIpOworLy8gQ2xpY2sgb24gQU0vUE0gZmll
bGQuCittb3VzZUNsaWNrT24oMTIwLCBjZW50ZXIpOworLy8gQ2xpY2sgb24gY29udHJvbCwgYnV0
IG5vdCBhIHNwZWNpZmljIGZpZWxkLCBkZWZhdWx0cyB0byBmaXJzdCBmaWVsZC4KK21vdXNlQ2xp
Y2tPbigyNTAsIGNlbnRlcik7CisvLyBDbGljayBvdXRzaWRlIGNvbnRyb2wuCittb3VzZUNsaWNr
T24oaW5wdXQub2Zmc2V0V2lkdGggKyA1LCBpbnB1dC5vZmZzZXRIZWlnaHQgKyA1KTsKKworc2hv
dWxkQmUoImNsaWNrRXZlbnRzRmlyZWQiLCAiMCIpOworCitkZWJ1ZygiXG5SZWFkb25seSBJbnB1
dFxuIik7CitjbGlja0V2ZW50c0ZpcmVkID0gMDsKK2lucHV0LmRpc2FibGVkID0gZmFsc2U7Citp
bnB1dC5yZWFkT25seSA9IHRydWU7CisKKy8vIENsaWNrIG9uIGhvdXIgZmllbGQuCittb3VzZUNs
aWNrT24oMjAsIGNlbnRlcik7CisvLyBDbGljayBvbiBtaW51dGUgZmllbGQuCittb3VzZUNsaWNr
T24oNjAsIGNlbnRlcik7CisvLyBDbGljayBvbiBBTS9QTSBmaWVsZC4KK21vdXNlQ2xpY2tPbigx
MjAsIGNlbnRlcik7CisvLyBDbGljayBvbiBjb250cm9sLCBidXQgbm90IGEgc3BlY2lmaWMgZmll
bGQsIGRlZmF1bHRzIHRvIGZpcnN0IGZpZWxkLgorbW91c2VDbGlja09uKDI1MCwgY2VudGVyKTsK
Ky8vIENsaWNrIG91dHNpZGUgY29udHJvbC4KK21vdXNlQ2xpY2tPbihpbnB1dC5vZmZzZXRXaWR0
aCArIDUsIGlucHV0Lm9mZnNldEhlaWdodCArIDUpOworCitzaG91bGRCZSgiY2xpY2tFdmVudHNG
aXJlZCIsICI0Iik7CisKKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25l
bnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1zZWNvbmQtYW5kLW1pbGxpc2Vjb25kLWZpZWxk
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxl
LWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLXNlY29uZC1hbmQtbWlsbGlzZWNv
bmQtZmllbGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY0OGM0M2YzM2IxYTdmMjczMDhkMzg1
NWZiY2FmODc2M2U3MGQwODYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50
cy1zZWNvbmQtYW5kLW1pbGxpc2Vjb25kLWZpZWxkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQw
IEBACitUZXN0IGZvciBwcmVzZW5jZSBvZiBzZWNvbmQgYW5kIG1pbGxpc2Vjb25kIGZpZWxkcyBp
biA8aW5wdXQgdHlwZT10aW1lPgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitE
ZWZhdWx0CitQQVNTIG51bWJlck9mRmllbGRzIGlzIDMKKworWmVybyBzZWNvbmRzCitQQVNTIG51
bWJlck9mRmllbGRzIGlzIDMKKworWmVybyBzZWNvbmRzIGFuZCB6ZXJvIG1pbGxpc2Vjb25kcwor
UEFTUyBudW1iZXJPZkZpZWxkcyBpcyAzCisKK1plcm8gc2Vjb25kcyBhbmQgbm9uLXplcm8gbWls
bGlzZWNvbmRzCitQQVNTIG51bWJlck9mRmllbGRzIGlzIDUKKworTm9uLXplcm8gc2Vjb25kcwor
UEFTUyBudW1iZXJPZkZpZWxkcyBpcyA0CisKK05vbi16ZXJvIHNlY29uZHMgYW5kIHplcm8gbWls
bGlzZWNvbmRzCitQQVNTIG51bWJlck9mRmllbGRzIGlzIDQKKworTm9uLXplcm8gc2Vjb25kcyBh
bmQgbm9uLXplcm8gbWlsbGlzZWNvbmRzCitQQVNTIG51bWJlck9mRmllbGRzIGlzIDUKKworU3Rl
cCBhdHRyaWJ1dGUgbWludXRlIHByZWNpc2lvbgorUEFTUyBudW1iZXJPZkZpZWxkcyBpcyAzCisK
K1N0ZXAgYXR0cmlidXRlIHNlY29uZCBwcmVjaXNpb24KK1BBU1MgbnVtYmVyT2ZGaWVsZHMgaXMg
NAorCitTdGVwIGF0dHJpYnV0ZSBtaWxsaXNlY29uZCBwcmVjaXNpb24KK1BBU1MgbnVtYmVyT2ZG
aWVsZHMgaXMgNQorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKyAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1l
ZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1zZWNvbmQtYW5kLW1p
bGxpc2Vjb25kLWZpZWxkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1l
ZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1zZWNvbmQtYW5kLW1p
bGxpc2Vjb25kLWZpZWxkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODA0MGFjNTliZGUzMmQ0OTQzM2E3OTU5
ZmE5MTViOGM1NjcwMDhlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRz
LXNlY29uZC1hbmQtbWlsbGlzZWNvbmQtZmllbGQuaHRtbApAQCAtMCwwICsxLDg5IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8u
Li9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8
aW5wdXQgaWQ9ImJlZm9yZSIgdHlwZT0idGV4dCI+Cis8aW5wdXQgaWQ9ImlucHV0IiB0eXBlPSJ0
aW1lIj4KKzxpbnB1dCBpZD0iYWZ0ZXIiIHR5cGU9InRleHQiPgorCis8c2NyaXB0PgorCitqc1Rl
c3RJc0FzeW5jID0gdHJ1ZTsKKworZnVuY3Rpb24gYmVnaW5UZXN0KHRpdGxlLCB2YWx1ZSwgc3Rl
cCkgeworICAgIGRlYnVnKCJcbiIgKyB0aXRsZSk7CisgICAgaW5wdXQudmFsdWUgPSB2YWx1ZSB8
fCAiIjsKKyAgICBpbnB1dC5zdGVwID0gc3RlcCB8fCAiIjsKKyAgICBpbnB1dC5ibHVyKCk7Cisg
ICAgaW5wdXQuZm9jdXMoKTsKK30KKworZnVuY3Rpb24gdmVyaWZ5TnVtYmVyT2ZGaWVsZHMoZXhw
ZWN0ZWQpIHsKKyAgICBudW1iZXJPZkZpZWxkcyA9IDA7CisKKyAgICAvLyBGb2N1cyBmaXJzdCBm
aWVsZC4KKyAgICBpbnB1dC5ibHVyKCk7CisgICAgaW5wdXQuZm9jdXMoKTsKKworICAgIHdoaWxl
IChkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSBhZnRlcikgeworICAgICAgICBudW1iZXJPZkZp
ZWxkcysrOworICAgICAgICBVSUhlbHBlci5rZXlEb3duKCJcdCIpOworICAgIH0KKworICAgIC8v
IFJldHVybiBmb2N1cyB0byBmaXJzdCBmaWVsZC4KKyAgICBpbnB1dC5ibHVyKCk7CisgICAgaW5w
dXQuZm9jdXMoKTsKKworICAgIHNob3VsZEJlKCJudW1iZXJPZkZpZWxkcyIsIGV4cGVjdGVkLnRv
U3RyaW5nKCkpOworfQorCithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4gewor
ICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciBwcmVzZW5jZSBvZiBzZWNvbmQgYW5kIG1pbGxpc2Vj
b25kIGZpZWxkcyBpbiAmbHQ7aW5wdXQgdHlwZT10aW1lJmd0OyIpOworCisgICAgZGVmYXVsdE51
bWJlck9mRmllbGRzID0gMzsgLy8gSG91ciwgbWludXRlLCBhbmQgQU0vUE0gZmllbGRzCisgICAg
bnVtYmVyT2ZGaWVsZHNXaXRoU2Vjb25kcyA9IGRlZmF1bHROdW1iZXJPZkZpZWxkcyArIDE7Cisg
ICAgbnVtYmVyT2ZGaWVsZHNXaXRoTWlsbGlzZWNvbmRzID0gbnVtYmVyT2ZGaWVsZHNXaXRoU2Vj
b25kcyArIDE7CisKKyAgICBiZWdpblRlc3QoIkRlZmF1bHQiLCAiMTA6MjAiKTsKKyAgICB2ZXJp
ZnlOdW1iZXJPZkZpZWxkcyhkZWZhdWx0TnVtYmVyT2ZGaWVsZHMpOworCisgICAgYmVnaW5UZXN0
KCJaZXJvIHNlY29uZHMiLCAiMTA6MjA6MDAiKTsKKyAgICB2ZXJpZnlOdW1iZXJPZkZpZWxkcyhk
ZWZhdWx0TnVtYmVyT2ZGaWVsZHMpOworCisgICAgYmVnaW5UZXN0KCJaZXJvIHNlY29uZHMgYW5k
IHplcm8gbWlsbGlzZWNvbmRzIiwgIjEwOjIwOjAwLjAwMCIpOworICAgIHZlcmlmeU51bWJlck9m
RmllbGRzKGRlZmF1bHROdW1iZXJPZkZpZWxkcyk7CisKKyAgICBiZWdpblRlc3QoIlplcm8gc2Vj
b25kcyBhbmQgbm9uLXplcm8gbWlsbGlzZWNvbmRzIiwgIjEwOjIwOjAwLjU2NyIpOworICAgIHZl
cmlmeU51bWJlck9mRmllbGRzKG51bWJlck9mRmllbGRzV2l0aE1pbGxpc2Vjb25kcyk7CisKKyAg
ICBiZWdpblRlc3QoIk5vbi16ZXJvIHNlY29uZHMiLCAiMTA6MjA6NDUiKTsKKyAgICB2ZXJpZnlO
dW1iZXJPZkZpZWxkcyhudW1iZXJPZkZpZWxkc1dpdGhTZWNvbmRzKTsKKworICAgIGJlZ2luVGVz
dCgiTm9uLXplcm8gc2Vjb25kcyBhbmQgemVybyBtaWxsaXNlY29uZHMiLCAiMTA6MjA6NDUuMDAw
Iik7CisgICAgdmVyaWZ5TnVtYmVyT2ZGaWVsZHMobnVtYmVyT2ZGaWVsZHNXaXRoU2Vjb25kcyk7
CisKKyAgICBiZWdpblRlc3QoIk5vbi16ZXJvIHNlY29uZHMgYW5kIG5vbi16ZXJvIG1pbGxpc2Vj
b25kcyIsICIxMDoyMDo0NS41NjciKTsKKyAgICB2ZXJpZnlOdW1iZXJPZkZpZWxkcyhudW1iZXJP
ZkZpZWxkc1dpdGhNaWxsaXNlY29uZHMpOworCisgICAgYmVnaW5UZXN0KCJTdGVwIGF0dHJpYnV0
ZSBtaW51dGUgcHJlY2lzaW9uIiwgIjEwOjIwIiwgIjYwIik7CisgICAgdmVyaWZ5TnVtYmVyT2ZG
aWVsZHMoZGVmYXVsdE51bWJlck9mRmllbGRzKTsKKworICAgIGJlZ2luVGVzdCgiU3RlcCBhdHRy
aWJ1dGUgc2Vjb25kIHByZWNpc2lvbiIsICIxMDoyMCIsICIyIik7CisgICAgdmVyaWZ5TnVtYmVy
T2ZGaWVsZHMobnVtYmVyT2ZGaWVsZHNXaXRoU2Vjb25kcyk7CisKKyAgICBiZWdpblRlc3QoIlN0
ZXAgYXR0cmlidXRlIG1pbGxpc2Vjb25kIHByZWNpc2lvbiIsICIxMDoyMCIsICIwLjUiKTsKKyAg
ICB2ZXJpZnlOdW1iZXJPZkZpZWxkcyhudW1iZXJPZkZpZWxkc1dpdGhNaWxsaXNlY29uZHMpOwor
CisgICAgZGVidWcoIiIpOworICAgIGZpbmlzaEpTVGVzdCgpOworfSk7CisKKzwvc2NyaXB0Pgor
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOWMwYTA5ZDk1MTVhNzI5ZmE5MTYzOWFlODhmNTYxZDQw
ZWVlZTNhMS4uNmM2YTk2ODlmNDU2MDYwY2ViNGYzYjdjMGE1ZTcwOWY3ZDA1MmU4NiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTMsNiAr
MTMsNyBAQCBlZGl0aW5nL3VuZG8tbWFuYWdlciBbIFBhc3MgXQogZWRpdGluZy9wYXN0ZWJvYXJk
L2RvbS1wYXN0ZSBbIFBhc3MgXQogZmFzdC9ldmVudHMvY3Vyc29ycyBbIFBhc3MgXQogZmFzdC9m
b3Jtcy9kYXRlL2RhdGUtZWRpdGFibGUtY29tcG9uZW50cyBbIFBhc3MgXQorZmFzdC9mb3Jtcy90
aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cyBbIFBhc3MgXQogZmFzdC9mb3Jtcy9zZWxlY3Qv
bWFjLXdrMiBbIFBhc3MgXQogZmFzdC9zYW5kYm94L21hYyBbIFBhc3MgXQogZmFzdC9zY3JvbGxp
bmcvbWFjIFsgUGFzcyBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sy
L2Zhc3QvZm9ybXMvdGltZS90aW1lLWFwcGVhcmFuY2UtYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9mYXN0L2Zvcm1zL3RpbWUvdGltZS1hcHBlYXJhbmNl
LWJhc2ljLWV4cGVjdGVkLnR4dAppbmRleCAyZGQwYWQ1NTk3ZjY5ZTcwZDYxYmM1NmVlNjQ4Nzhh
MGFhOGFmODQ2Li4zMzEwMzRiNTZlN2EwNjFlNjc3Yzg5MzUxNTQyYjQ0YmJlZjE5MTJjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL2Zhc3QvZm9ybXMvdGltZS90aW1l
LWFwcGVhcmFuY2UtYmFzaWMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azIvZmFzdC9mb3Jtcy90aW1lL3RpbWUtYXBwZWFyYW5jZS1iYXNpYy1leHBlY3RlZC50
eHQKQEAgLTQsNyArNCw3IEBAIHN0ZXA9MC4wMDAxCiBzdGVwPTYwICAKIHN0ZXA9MzYwMCAgCiBz
dGVwPTg2NDAwICAKLXN0ZXAgbWlzbWF0Y2hlZCAKK3N0ZXAgbWlzbWF0Y2hlZCAgCiBSVEwgCiBE
aXNhYmxlZCwgc3RlcD0zNjAwICAKIFJlYWRvbmx5LCBzdGVwPTM2MDAgIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9mYXN0L2Zvcm1zL3RpbWUvdGltZS1pbnB1dC1y
ZW5kZXJpbmctYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
Mi9mYXN0L2Zvcm1zL3RpbWUvdGltZS1pbnB1dC1yZW5kZXJpbmctYmFzaWMtZXhwZWN0ZWQudHh0
CmluZGV4IGE5MjA3ZTlhZGMwZjhkYjEzNjFkYzc0ZmYyMjFlNWYwZmQ0NDI5MjIuLjBlNTVkOTJk
ODlkNzFmMjE2OWVhYWIzYmRhNDM0NGE0NTkxYTkxZGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy13azIvZmFzdC9mb3Jtcy90aW1lL3RpbWUtaW5wdXQtcmVuZGVyaW5nLWJh
c2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL2Zhc3Qv
Zm9ybXMvdGltZS90aW1lLWlucHV0LXJlbmRlcmluZy1iYXNpYy1leHBlY3RlZC50eHQKQEAgLTMs
MTAgKzMsNDYgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiBsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKICAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDYwMAog
ICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDU4NAotICAgICAgUmVuZGVy
VGV4dCB7I3RleHR9IGF0ICgxMTAsMCkgc2l6ZSA0eDE4Ci0gICAgICAgIHRleHQgcnVuIGF0ICgx
MTAsMCkgd2lkdGggNDogIiAiCisgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDExMCwyKSBz
aXplIDR4MTgKKyAgICAgICAgdGV4dCBydW4gYXQgKDExMCwyKSB3aWR0aCA0OiAiICIKICAgICAg
IFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAotbGF5ZXIgYXQgKDgsMTkpIHNp
emUgMTEweDYgY2xpcCBhdCAoMTAsMjEpIHNpemUgMTA2eDIKLSAgUmVuZGVyRmxleGlibGVCb3gg
e0lOUFVUfSBhdCAoMCwxMSkgc2l6ZSAxMTB4NiBbYmdjb2xvcj0jRkZGRkZGXSBbYm9yZGVyOiAo
MnB4IGluc2V0ICMwMDAwMDApXQotbGF5ZXIgYXQgKDEyMiwxOSkgc2l6ZSAxMTB4NiBjbGlwIGF0
ICgxMjQsMjEpIHNpemUgMTA2eDIKLSAgUmVuZGVyRmxleGlibGVCb3gge0lOUFVUfSBhdCAoMTE0
LDExKSBzaXplIDExMHg2IFtiZ2NvbG9yPSNGRkZGRkZdIFtib3JkZXI6ICgycHggaW5zZXQgIzAw
MDAwMCldCitsYXllciBhdCAoOCwxMCkgc2l6ZSAxMTB4MTkgY2xpcCBhdCAoMTAsMTIpIHNpemUg
MTA2eDE1CisgIFJlbmRlckZsZXhpYmxlQm94IHtJTlBVVH0gYXQgKDAsMikgc2l6ZSAxMTB4MTkg
W2JnY29sb3I9I0ZGRkZGRl0gW2JvcmRlcjogKDJweCBpbnNldCAjMDAwMDAwKV0KK2xheWVyIGF0
ICgxMSwxMykgc2l6ZSA1NngxMyBzY3JvbGxIZWlnaHQgMTQKKyAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDMsMykgc2l6ZSA1NngxMworICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUg
NTZ4MTMKKyAgICAgIFJlbmRlcklubGluZSB7RElWfSBhdCAoMCwwKSBzaXplIDE3eDE1CisgICAg
ICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMSwwKSBzaXplIDE1eDEzCisgICAgICAgICAgdGV4
dCBydW4gYXQgKDEsMCkgd2lkdGggMTU6ICIwOSIKKyAgICAgIFJlbmRlcklubGluZSB7RElWfSBh
dCAoMCwwKSBzaXplIDR4MTMKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNiwwKSBz
aXplIDR4MTMKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggNDogIjoiCisgICAg
ICBSZW5kZXJJbmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6ZSAxNXgxNQorICAgICAgICBSZW5kZXJU
ZXh0IHsjdGV4dH0gYXQgKDIwLDApIHNpemUgMTN4MTMKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAo
MjAsMCkgd2lkdGggMTM6ICI0MSIKKyAgICAgIFJlbmRlcklubGluZSB7RElWfSBhdCAoMCwwKSBz
aXplIDR4MTMKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgzMywwKSBzaXplIDR4MTMK
KyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMzMsMCkgd2lkdGggNDogIiAiCisgICAgICBSZW5kZXJJ
bmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6ZSAyMHgxNQorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDM3LDApIHNpemUgMTh4MTMKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMzcsMCkgd2lk
dGggMTg6ICJBTSIKK2xheWVyIGF0ICgxMjIsMTApIHNpemUgMTEweDE5IGNsaXAgYXQgKDEyNCwx
Mikgc2l6ZSAxMDZ4MTUKKyAgUmVuZGVyRmxleGlibGVCb3gge0lOUFVUfSBhdCAoMTE0LDIpIHNp
emUgMTEweDE5IFtiZ2NvbG9yPSNGRkZGRkZdIFtib3JkZXI6ICgycHggaW5zZXQgIzAwMDAwMCld
CitsYXllciBhdCAoMTczLDEzKSBzaXplIDU2eDEzIHNjcm9sbEhlaWdodCAxNAorICBSZW5kZXJC
bG9jayB7RElWfSBhdCAoNTEsMykgc2l6ZSA1NngxMworICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0
ICgwLDApIHNpemUgNTZ4MTMKKyAgICAgIFJlbmRlcklubGluZSB7RElWfSBhdCAoMCwwKSBzaXpl
IDE3eDE1CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMjMsMCkgc2l6ZSAxNXgxMwor
ICAgICAgICAgIHRleHQgcnVuIGF0ICgyMywwKSB3aWR0aCAxNTogIjA5IgorICAgICAgUmVuZGVy
SW5saW5lIHtESVZ9IGF0ICgwLDApIHNpemUgNHgxMworICAgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDM4LDApIHNpemUgNHgxMworICAgICAgICAgIHRleHQgcnVuIGF0ICgzOCwwKSB3aWR0
aCA0OiAiOiIKKyAgICAgIFJlbmRlcklubGluZSB7RElWfSBhdCAoMCwwKSBzaXplIDE1eDE1Cisg
ICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoNDIsMCkgc2l6ZSAxM3gxMworICAgICAgICAg
IHRleHQgcnVuIGF0ICg0MiwwKSB3aWR0aCAxMzogIjQxIgorICAgICAgUmVuZGVySW5saW5lIHtE
SVZ9IGF0ICgwLDApIHNpemUgMXgxMworICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE5
LDApIHNpemUgNHgxMworICAgICAgICAgIHRleHQgcnVuIGF0ICgxOSwwKSB3aWR0aCA0IFJUTDog
IiAiCisgICAgICBSZW5kZXJJbmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6ZSAyMHgxNQorICAgICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDEsMCkgc2l6ZSAxOHgxMworICAgICAgICAgIHRleHQg
cnVuIGF0ICgxLDApIHdpZHRoIDE4OiAiQU0iCg==
</data>
<flag name="review"
          id="423399"
          type_id="1"
          status="+"
          setter="hi"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408269</attachid>
            <date>2020-09-08 14:27:16 -0700</date>
            <delta_ts>2020-09-09 07:48:31 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-216188-20200908172715.patch</filename>
            <type>text/plain</type>
            <size>74753</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NzQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDRhZTBiM2M4NjZkNDY0
NzcxMGU3ODgxMGYxY2QyZGQ2ZjY1MWQ1Ni4uZjM5MDE5MGViZmVlMDVmYzJkNDgyNjExOTQ1OGI2
MGQyZDg1NTY1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExNyBAQAorMjAyMC0wOS0wNyAgQWRp
dHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBBZGQg
ZWRpdGFiaWxpdHkgdG8gaW5wdXQgdHlwZT10aW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYxODgKKworICAgICAgICBSZXZpZXdlZCBieSBEZXZp
biBSb3Vzc28uCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGVkaXRhYmlsaXR5IHRvIGlucHV0
IHR5cGU9dGltZSBieSBsZXZlcmFnaW5nIGV4aXN0aW5nCisgICAgICAgIGxvZ2ljIHRvIGFkZCBl
ZGl0YWJsZSBjb21wb25lbnRzIHRvIGRhdGUvdGltZSBpbnB1dHMuCisKKyAgICAgICAgRGF0ZVRp
bWV7SG91cnxNaW51dGV8U2Vjb25kfE1pbGxpc2Vjb25kfE1lcmlkaWVtfUZpZWxkRWxlbWVudHMg
d2VyZQorICAgICAgICBjcmVhdGVkIHRvIHJlcHJlc2VudCB0aGUgbmV3IGVkaXRhYmxlIGZpZWxk
cy4gQnkgZGVmYXVsdCwgb25seSB0aGUKKyAgICAgICAgaG91ciBhbmQgbWludXRlIGZpZWxkcyBh
cmUgZGlzcGxheWVkLiBIb3dldmVyLCB0aGUgbWlsbGlzZWNvbmQKKyAgICAgICAgYW5kIHNlY29u
ZCBmaWVsZHMgbWF5IGJlIGFkZGVkIGRlcGVuZGluZyBvbiB0aGUgaW5pdGlhbCB2YWx1ZSBvZgor
ICAgICAgICB0aGUgZWxlbWVudCwgb3IgdGhlIHZhbHVlIG9mIHRoZSBzdGVwIGF0dHJpYnV0ZS4K
KworICAgICAgICBUZXN0czogZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50
cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtZm9jdXMtYW5kLWJsdXItZXZlbnRzLmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGlt
ZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJvYXJkLWV2ZW50cy5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUt
Y29tcG9uZW50cy1tb3VzZS1ldmVudHMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9mb3Jtcy90
aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtc2Vj
b25kLWFuZC1taWxsaXNlY29uZC1maWVsZC5odG1sCisKKyAgICAgICAgKiBjc3MvaHRtbC5jc3M6
CisKKyAgICAgICAgVXBkYXRlIHN0eWxlc2hlZXQgdG8gaGFuZGxlIGhvdXIsIG1pbnV0ZSwgc2Vj
b25kLCBtaWxsaXNlY29uZCBhbmQgbWVyaWRpZW0gZmllbGRzLgorCisgICAgICAgIChpbnB1dDo6
LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyKToKKyAgICAgICAgKGlucHV0Ojot
d2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCwpOgorICAgICAgICAoaW5wdXQ6Oi13ZWJr
aXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkOmZvY3VzLCk6CisgICAgICAgIChpbnB1dFtkaXNh
YmxlZF06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkLCk6CisgICAgICAgICogaHRt
bC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEYXRlVGltZUZvcm1hdFZhbGlkYXRvcjo6dmlzaXRGaWVsZCk6CisgICAgICAgIChXZWJD
b3JlOjpCYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZTo6dXBkYXRlSW5uZXJUZXh0
VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1
dFR5cGU6OmF0dHJpYnV0ZUNoYW5nZWQpOgorCisgICAgICAgIFRoZSBzdGVwIGF0dHJpYnV0ZSBj
YW4gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlY29uZCBhbmQvb3IgbWlsbGlzZWNvbmQKKyAgICAg
ICAgZmllbGRzIGFyZSBkaXNwbGF5ZWQuIENvbnNlcXVlbnRseSwgd2Ugc2hvdWxkIHVwZGF0ZSB0
aGUgZmllbGRzIGluCisgICAgICAgIG1fZGF0ZVRpbWVFZGl0RWxlbWVudCB3aGVuIHRoZSBzdGVw
IGF0dHJpYnV0ZSBpcyBjaGFuZ2VkLgorCisgICAgICAgICogaHRtbC9CYXNlQ2hvb3Nlck9ubHlE
YXRlQW5kVGltZUlucHV0VHlwZS5oOgorCisgICAgICAgIHNldHVwTGF5b3V0UGFyYW1ldGVycygp
IG5vdyB0YWtlcyBhbiBhZGRpdGlvbmFsIERhdGVDb21wb25lbnRzIGFyZ3VtZW50LgorICAgICAg
ICBUaGlzIGFyZ3VtZW50IGlzIG5lZWRlZCB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2Vjb25k
IGFuZC9vcgorICAgICAgICBtaWxsaXNlY29uZCBmaWVsZCBpcyBkaXNwbGF5ZWQuCisKKyAgICAg
ICAgKiBodG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvRGF0
ZUlucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEYXRlSW5wdXRUeXBlOjpzZXR1cExh
eW91dFBhcmFtZXRlcnMgY29uc3QpOgorICAgICAgICAqIGh0bWwvRGF0ZUlucHV0VHlwZS5oOgor
ICAgICAgICAqIGh0bWwvRGF0ZVRpbWVGaWVsZHNTdGF0ZS5oOgorICAgICAgICAqIGh0bWwvRGF0
ZVRpbWVMb2NhbElucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZUxvY2Fs
SW5wdXRUeXBlOjpzZXR1cExheW91dFBhcmFtZXRlcnMgY29uc3QpOgorICAgICAgICAqIGh0bWwv
RGF0ZVRpbWVMb2NhbElucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvTW9udGhJbnB1dFR5cGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6TW9udGhJbnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1l
dGVycyBjb25zdCk6CisgICAgICAgICogaHRtbC9Nb250aElucHV0VHlwZS5oOgorICAgICAgICAq
IGh0bWwvVGltZUlucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUaW1lSW5wdXRUeXBl
Ojppc1ZhbGlkRm9ybWF0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlRpbWVJbnB1dFR5cGU6
OmZvcm1hdERhdGVUaW1lRmllbGRzU3RhdGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6VGlt
ZUlucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0ZXJzIGNvbnN0KToKKworICAgICAgICBUaGUg
bWlsbGlzZWNvbmQgZmllbGQgaXMgZGlzcGxheWVkIGlmIHRoZSBkYXRlIGhhcyBhIG5vbi16ZXJv
IHZhbHVlIGZvcgorICAgICAgICBtaWxsaXNlY29uZHMsIG9yIGlmIHRoZSBzdGVwIGF0dHJpYnV0
ZSBoYXMgc3ViLXNlY29uZCBwcmVjaXNpb24uIFRoZQorICAgICAgICBzZWNvbmQgZmllbGQgaXMg
ZGlzcGxheWVkIGlmIHRoZSBtaWxsaXNlY29uZCBmaWVsZCBpcyBkaXNwbGF5ZWQsIGlmIHRoZQor
ICAgICAgICBkYXRlIGhhcyBhIG5vbi16ZXJvIHZhbHVlIGZvciBzZWNvbmRzLCBvciBpZiB0aGUg
c3RlcCBhdHRyaWJ1dGUgaGFzCisgICAgICAgIHN1Yi1taW51dGUgcHJlY2lzaW9uLgorCisgICAg
ICAgICogaHRtbC9UaW1lSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9XZWVrSW5wdXRUeXBl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlZWtJbnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1l
dGVycyBjb25zdCk6CisgICAgICAgICogaHRtbC9XZWVrSW5wdXRUeXBlLmg6CisgICAgICAgICog
aHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
YXRlVGltZUVkaXRCdWlsZGVyOjp2aXNpdEZpZWxkKTogVXBkYXRlZCB0byBhZGQgbmV3IGZpZWxk
IHR5cGVzIHRvIHRoZSBlbGVtZW50LgorICAgICAgICAqIGh0bWwvc2hhZG93L0RhdGVUaW1lRWRp
dEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50OjpEYXRlVGlt
ZUhvdXJGaWVsZEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVIb3VyRmllbGRF
bGVtZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVIb3VyRmllbGRFbGVt
ZW50Ojpwb3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0
ZVRpbWVIb3VyRmllbGRFbGVtZW50OjpzZXRWYWx1ZUFzRGF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpEYXRlVGltZU1lcmlkaWVtRmllbGRFbGVtZW50OjpEYXRlVGltZU1lcmlkaWVtRmllbGRFbGVt
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lTWVyaWRpZW1GaWVsZEVsZW1lbnQ6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZU1lcmlkaWVtRmllbGRFbGVtZW50Ojpw
b3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVN
ZXJpZGllbUZpZWxkRWxlbWVudDo6c2V0VmFsdWVBc0RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxkRWxlbWVudDo6RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxk
RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVt
ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxk
RWxlbWVudDo6cG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkRhdGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRhdGVUaW1lTWludXRlRmllbGRFbGVtZW50OjpEYXRlVGltZU1pbnV0ZUZp
ZWxkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVu
dDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lTWludXRlRmllbGRFbGVtZW50
Ojpwb3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRp
bWVNaW51dGVGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkRhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50OjpEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudCk6
CisgICAgICAgIChXZWJDb3JlOjpEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudDo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50Ojpwb3B1bGF0ZURh
dGVUaW1lRmllbGRzU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVTZWNvbmRGaWVs
ZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGlt
ZUZpZWxkRWxlbWVudHMuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZU51bWVyaWNG
aWVsZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVOdW1lcmljRmllbGRF
bGVtZW50OjptYXhpbXVtIGNvbnN0KToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZU51
bWVyaWNGaWVsZEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZVN5bWJv
bGljRmllbGRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lU3ltYm9saWNG
aWVsZEVsZW1lbnQ6OkRhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQpOgorICAgICAgICAoV2Vi
Q29yZTo6RGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudDo6aGFuZGxlS2V5Ym9hcmRFdmVudCk6
IEltcGxlbWVudCBlZGl0aW5nIHVzaW5nIHRoZSBzYW1lIHR5cGVhaGVhZCBiZWhhdmlvciBhcyA8
c2VsZWN0PiBlbGVtZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OkRhdGVUaW1lU3ltYm9saWNGaWVs
ZEVsZW1lbnQ6OmluZGV4T2ZTZWxlY3RlZE9wdGlvbiBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50OjpvcHRpb25Db3VudCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50OjpvcHRpb25BdEluZGV4
IGNvbnN0KToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9EYXRlVGltZVN5bWJvbGljRmllbGRFbGVt
ZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpMb2NhbGU6OmxvY2FsaXplZERlY2ltYWxTZXBhcmF0b3IpOgorCisgICAg
ICAgIEFkZGVkIG1ldGhvZCB0byBlbnN1cmUgdGhlIGNvcnJlY3QgZGVjaW1hbCBzZXBhcmF0b3Ig
aXMgZGlzcGxheWVkCisgICAgICAgIGRlcGVuZGluZyBvbiB0aGUgdXNlcidzIGxvY2FsZS4gVGhp
cyBzZXBhcmF0b3IgaXMgdXNlZCB3aGVuCisgICAgICAgIHRoZSBtaWxsaXNlY29uZCBmaWVsZCBp
cyBwcmVzZW50LgorCisgICAgICAgICogcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5oOgor
CiAyMDIwLTA5LTA4ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAg
ICAgICAgIGlPUzogPGF0dGFjaG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVh
ciBzcXVpc2hlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzIGIvU291
cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzCmluZGV4IGM1ODBhZDI3OGNmYTM1YjE3OTg3MjVlN2Yz
YWEzNmZkMGRkZTYxMWQuLjQzNmNmOTcxYWJjMzUzMmMwZjA5NjUwYWMyZTE4YzE1MThkOWRhNWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9odG1sLmNzcworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvaHRtbC5jc3MKQEAgLTQ5NywxOCArNDk3LDI5IEBAIGlucHV0Ojotd2Via2l0LWRh
dGV0aW1lLWVkaXQgewogCiBpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFw
cGVyIHsKICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CisgICAgd2hpdGUtc3BhY2U6IHByZTsK
IH0KIAogaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkLAogaW5wdXQ6Oi13
ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCwKLWlucHV0Ojotd2Via2l0LWRhdGV0aW1l
LWVkaXQtZGF5LWZpZWxkIHsKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxk
LAoraW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLAoraW5wdXQ6Oi13ZWJr
aXQtZGF0ZXRpbWUtZWRpdC1taW51dGUtZmllbGQsCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1l
ZGl0LXNlY29uZC1maWVsZCwKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWlsbGlzZWNv
bmQtZmllbGQsCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1lcmlkaWVtLWZpZWxkIHsK
ICAgICBkaXNwbGF5OiBpbmxpbmU7CiAgICAgcGFkZGluZzogMXB4OwogfQogCiBpbnB1dDo6LXdl
YmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQ6Zm9jdXMsCiBpbnB1dDo6LXdlYmtpdC1kYXRl
dGltZS1lZGl0LW1vbnRoLWZpZWxkOmZvY3VzLAotaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRp
dC1kYXktZmllbGQ6Zm9jdXMgeworaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmll
bGQ6Zm9jdXMsCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQ6Zm9jdXMs
CitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZS1maWVsZDpmb2N1cywKK2lucHV0
Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtc2Vjb25kLWZpZWxkOmZvY3VzLAoraW5wdXQ6Oi13ZWJr
aXQtZGF0ZXRpbWUtZWRpdC1taWxsaXNlY29uZC1maWVsZDpmb2N1cywKK2lucHV0Ojotd2Via2l0
LWRhdGV0aW1lLWVkaXQtbWVyaWRpZW0tZmllbGQ6Zm9jdXMgewogI2lmIGRlZmluZWQoV1RGX1BM
QVRGT1JNX0NPQ09BKSAmJiBXVEZfUExBVEZPUk1fQ09DT0EKICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiAtYXBwbGUtc3lzdGVtLWNvbnRyb2wtYWNjZW50OwogICAgIGNvbG9yOiB3aGl0ZTsKQEAgLTUy
Miw2ICs1MzMsMTEgQEAgaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQ6Zm9j
dXMgewogaW5wdXRbZGlzYWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCwK
IGlucHV0W2Rpc2FibGVkXTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLAogaW5w
dXRbZGlzYWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLAoraW5wdXRbZGlz
YWJsZWRdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCwKK2lucHV0W2Rpc2FibGVk
XTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZS1maWVsZCwKK2lucHV0W2Rpc2FibGVkXTo6
LXdlYmtpdC1kYXRldGltZS1lZGl0LXNlY29uZC1maWVsZCwKK2lucHV0W2Rpc2FibGVkXTo6LXdl
YmtpdC1kYXRldGltZS1lZGl0LW1pbGxpc2Vjb25kLWZpZWxkLAoraW5wdXRbZGlzYWJsZWRdOjot
d2Via2l0LWRhdGV0aW1lLWVkaXQtbWVyaWRpZW0tZmllbGQsCiBpbnB1dFtkaXNhYmxlZF06Oi13
ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0IHsKICAgICBjb2xvcjogR3JheVRleHQ7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5w
dXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRp
bWVJbnB1dFR5cGUuY3BwCmluZGV4IDhkODc4M2Y5ODg0ZjE4MWYyZGE3YTgyMDhlN2FjOGI4MGMz
MDIxM2QuLmI1YTQ4OGMyZDE2NGVlMGIwYjkxYjc5ZjQ5MzQxMTE2NzFiMjNmNzAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1dFR5
cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRp
bWVJbnB1dFR5cGUuY3BwCkBAIC00MCw2ICs0MCw3IEBACiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVu
dC5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgorI2lu
Y2x1ZGUgIlN0ZXBSYW5nZS5oIgogI2luY2x1ZGUgIlRleHQuaCIKICNpbmNsdWRlICJVc2VyR2Vz
dHVyZUluZGljYXRvci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtODAs
NyArODEsNyBAQCB2b2lkIERhdGVUaW1lRm9ybWF0VmFsaWRhdG9yOjp2aXNpdEZpZWxkKERhdGVU
aW1lRm9ybWF0OjpGaWVsZFR5cGUgZmllbGRUeXBlLCBpbgogICAgICAgICBicmVhazsKIAogICAg
IGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZVBlcmlvZDoKLSAgICAgICAgbV9yZXN1bHRz
LmFkZChEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzOjpIYXNBTVBNKTsKKyAgICAgICAg
bV9yZXN1bHRzLmFkZChEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzOjpIYXNNZXJpZGll
bSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBEYXRlVGltZUZvcm1hdDo6RmllbGRUeXBl
SG91cjExOgpAQCAtOTEsNyArOTIsNyBAQCB2b2lkIERhdGVUaW1lRm9ybWF0VmFsaWRhdG9yOjp2
aXNpdEZpZWxkKERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGUgZmllbGRUeXBlLCBpbgogICAgIGNh
c2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZUhvdXIyMzoKICAgICBjYXNlIERhdGVUaW1lRm9y
bWF0OjpGaWVsZFR5cGVIb3VyMjQ6CiAgICAgICAgIG1fcmVzdWx0cy5hZGQoRGF0ZVRpbWVGb3Jt
YXRWYWxpZGF0aW9uUmVzdWx0czo6SGFzSG91cik7Ci0gICAgICAgIG1fcmVzdWx0cy5hZGQoRGF0
ZVRpbWVGb3JtYXRWYWxpZGF0aW9uUmVzdWx0czo6SGFzQU1QTSk7CisgICAgICAgIG1fcmVzdWx0
cy5hZGQoRGF0ZVRpbWVGb3JtYXRWYWxpZGF0aW9uUmVzdWx0czo6SGFzTWVyaWRpZW0pOwogICAg
ICAgICBicmVhazsKIAogICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZU1pbnV0ZToK
QEAgLTE5MiwxMiArMTkzLDIxIEBAIHZvaWQgQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1
dFR5cGU6OnVwZGF0ZUlubmVyVGV4dFZhbHVlKCkKICAgICB9CiAKICAgICBEYXRlVGltZUVkaXRF
bGVtZW50OjpMYXlvdXRQYXJhbWV0ZXJzIGxheW91dFBhcmFtZXRlcnMoZWxlbWVudCgpLT5sb2Nh
bGUoKSk7Ci0gICAgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKGxheW91dFBhcmFtZXRlcnMpOworCisg
ICAgYXV0byBkYXRlID0gcGFyc2VUb0RhdGVDb21wb25lbnRzKGVsZW1lbnQoKS0+dmFsdWUoKSk7
CisgICAgaWYgKGRhdGUpCisgICAgICAgIHNldHVwTGF5b3V0UGFyYW1ldGVycyhsYXlvdXRQYXJh
bWV0ZXJzLCAqZGF0ZSk7CisgICAgZWxzZSB7CisgICAgICAgIGlmIChhdXRvIGRhdGVGb3JMYXlv
dXQgPSBzZXRNaWxsaXNlY29uZFRvRGF0ZUNvbXBvbmVudHMoY3JlYXRlU3RlcFJhbmdlKEFueVN0
ZXBIYW5kbGluZzo6RGVmYXVsdCkubWluaW11bSgpLnRvRG91YmxlKCkpKQorICAgICAgICAgICAg
c2V0dXBMYXlvdXRQYXJhbWV0ZXJzKGxheW91dFBhcmFtZXRlcnMsICpkYXRlRm9yTGF5b3V0KTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKGxheW91dFBh
cmFtZXRlcnMsIERhdGVDb21wb25lbnRzKCkpOworICAgIH0KIAogICAgIGlmICghRGF0ZVRpbWVG
b3JtYXRWYWxpZGF0b3IoKS52YWxpZGF0ZUZvcm1hdChsYXlvdXRQYXJhbWV0ZXJzLmRhdGVUaW1l
Rm9ybWF0LCAqdGhpcykpCiAgICAgICAgIGxheW91dFBhcmFtZXRlcnMuZGF0ZVRpbWVGb3JtYXQg
PSBsYXlvdXRQYXJhbWV0ZXJzLmZhbGxiYWNrRGF0ZVRpbWVGb3JtYXQ7CiAKLSAgICBpZiAoYXV0
byBkYXRlID0gcGFyc2VUb0RhdGVDb21wb25lbnRzKGVsZW1lbnQoKS0+dmFsdWUoKSkpCisgICAg
aWYgKGRhdGUpCiAgICAgICAgIG1fZGF0ZVRpbWVFZGl0RWxlbWVudC0+c2V0VmFsdWVBc0RhdGUo
bGF5b3V0UGFyYW1ldGVycywgKmRhdGUpOwogICAgIGVsc2UKICAgICAgICAgbV9kYXRlVGltZUVk
aXRFbGVtZW50LT5zZXRFbXB0eVZhbHVlKGxheW91dFBhcmFtZXRlcnMpOwpAQCAtMjk4LDcgKzMw
OCw5IEBAIHZvaWQgQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmF0dHJpYnV0
ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYKICAgICAgICAgICAgIGlmICghZWxlbWVudC0+
aGFzRGlydHlWYWx1ZSgpKQogICAgICAgICAgICAgICAgIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCk7
CiAgICAgICAgIH0KLSAgICB9CisgICAgfSBlbHNlIGlmIChuYW1lID09IHN0ZXBBdHRyICYmIG1f
ZGF0ZVRpbWVFZGl0RWxlbWVudCkKKyAgICAgICAgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKTsKKwog
ICAgIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6YXR0cmlidXRlQ2hhbmdlZChuYW1lKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5k
VGltZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRl
QW5kVGltZUlucHV0VHlwZS5oCmluZGV4IGMyYmQwODA5NTkxYjU0Yzk1NTMwMjNlNzY3ODY1YzIz
OTkzMzY3MmEuLjJmMTVmMzQ4MjA0M2JiOWZiM2E5NzQ3ZTg3MTYyMzNlMTEwNmQ0OTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1
dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaG9vc2VyT25seURhdGVBbmRU
aW1lSW5wdXRUeXBlLmgKQEAgLTQyLDcgKzQyLDcgQEAgZW51bSBjbGFzcyBEYXRlVGltZUZvcm1h
dFZhbGlkYXRpb25SZXN1bHRzIDogdWludDhfdCB7CiAgICAgSGFzTW9udGggPSAxIDw8IDEsCiAg
ICAgSGFzV2VlayA9IDEgPDwgMiwKICAgICBIYXNEYXkgPSAxIDw8IDMsCi0gICAgSGFzQU1QTSA9
IDEgPDwgNCwKKyAgICBIYXNNZXJpZGllbSA9IDEgPDwgNCwKICAgICBIYXNIb3VyID0gMSA8PCA1
LAogICAgIEhhc01pbnV0ZSA9IDEgPDwgNiwKICAgICBIYXNTZWNvbmQgPSAxIDw8IDcsCkBAIC01
Niw3ICs1Niw3IEBAIHByb3RlY3RlZDoKICAgICBleHBsaWNpdCBCYXNlQ2hvb3Nlck9ubHlEYXRl
QW5kVGltZUlucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50KSA6IEJhc2VEYXRlQW5k
VGltZUlucHV0VHlwZShlbGVtZW50KSB7IH0KICAgICB+QmFzZUNob29zZXJPbmx5RGF0ZUFuZFRp
bWVJbnB1dFR5cGUoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBzZXR1cExheW91dFBhcmFtZXRlcnMo
RGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0ID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6Okxh
eW91dFBhcmFtZXRlcnMmLCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNvbnN0ID0gMDsKIAogcHJp
dmF0ZToKICAgICB2b2lkIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCkgb3ZlcnJpZGU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuaAppbmRleCAxZmNlNTA5
NzhmYmU3MzVjN2Q4YTMxZmMxY2Y0MmE2MjE5NTlhMTUyLi5mZTg1OTU1NGVlZTI4ZWE4MTRlNDJi
NTgxZmRlYjQzZjJjZmE2NTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VE
YXRlQW5kVGltZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmgKQEAgLTUzLDEwICs1Myw5IEBAIHByb3RlY3RlZDoKICAgICBib29s
IGlzS2V5Ym9hcmRGb2N1c2FibGUoS2V5Ym9hcmRFdmVudCopIGNvbnN0IG92ZXJyaWRlOwogCiAg
ICAgdmlydHVhbCBPcHRpb25hbDxEYXRlQ29tcG9uZW50cz4gcGFyc2VUb0RhdGVDb21wb25lbnRz
KGNvbnN0IFN0cmluZ1ZpZXcmKSBjb25zdCA9IDA7Ci0KLXByaXZhdGU6CiAgICAgdmlydHVhbCBP
cHRpb25hbDxEYXRlQ29tcG9uZW50cz4gc2V0TWlsbGlzZWNvbmRUb0RhdGVDb21wb25lbnRzKGRv
dWJsZSkgY29uc3QgPSAwOwogCitwcml2YXRlOgogICAgIGRvdWJsZSB2YWx1ZUFzRGF0ZSgpIGNv
bnN0IG92ZXJyaWRlOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlQXNEYXRlKGRvdWJs
ZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUoKSBjb25zdCBvdmVy
cmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZUlucHV0VHlwZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVJbnB1dFR5cGUuY3BwCmluZGV4IDY1MDA0ODBmMDY5
MTNiNDlhNzNiNGNjZTg1N2YxZDUxMWU2ZDhkOGQuLmNkNWUzNTc1MzVhNTZlM2Y0MTFiMjY4Y2Rm
OGExMzhmNWJmYjY2YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZUlucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlSW5wdXRUeXBlLmNwcApAQCAt
MTAyLDcgKzEwMiw3IEBAIFN0cmluZyBEYXRlSW5wdXRUeXBlOjpmb3JtYXREYXRlVGltZUZpZWxk
c1N0YXRlKGNvbnN0IERhdGVUaW1lRmllbGRzU3RhdGUmIHN0YXRlCiAgICAgcmV0dXJuIG1ha2VT
dHJpbmcocGFkKCcwJywgNCwgKnN0YXRlLnllYXIpLCAnLScsIHBhZCgnMCcsIDIsICpzdGF0ZS5t
b250aCksICctJywgcGFkKCcwJywgMiwgKnN0YXRlLmRheU9mTW9udGgpKTsKIH0KIAotdm9pZCBE
YXRlSW5wdXRUeXBlOjpzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6
TGF5b3V0UGFyYW1ldGVycyYgbGF5b3V0UGFyYW1ldGVycykgY29uc3QKK3ZvaWQgRGF0ZUlucHV0
VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBh
cmFtZXRlcnMmIGxheW91dFBhcmFtZXRlcnMsIGNvbnN0IERhdGVDb21wb25lbnRzJikgY29uc3QK
IHsKICAgICBsYXlvdXRQYXJhbWV0ZXJzLmRhdGVUaW1lRm9ybWF0ID0gbGF5b3V0UGFyYW1ldGVy
cy5sb2NhbGUuZGF0ZUZvcm1hdCgpOwogICAgIGxheW91dFBhcmFtZXRlcnMuZmFsbGJhY2tEYXRl
VGltZUZvcm1hdCA9ICJ5eXl5LU1NLWRkIl9zOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9EYXRlSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVJbnB1dFR5cGUu
aAppbmRleCBmNTI5YTY0ZWJjYjE3NmQxNjRhYjY0Njg3NzdkNDI5YTUxNGJlYmQ2Li42NDhmNmVl
NmE4OWU0ZDRmMjk1YzhhOGRhMGY4YjUyNmVkMjJmMGEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0RhdGVJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVJ
bnB1dFR5cGUuaApAQCAtNTAsNyArNTAsNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc1ZhbGlk
Rm9ybWF0KE9wdGlvblNldDxEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzPikgY29uc3Qg
ZmluYWw7CiAgICAgU3RyaW5nIGZvcm1hdERhdGVUaW1lRmllbGRzU3RhdGUoY29uc3QgRGF0ZVRp
bWVGaWVsZHNTdGF0ZSYpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0
ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmKSBjb25zdCBmaW5hbDsK
KyAgICB2b2lkIHNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlv
dXRQYXJhbWV0ZXJzJiwgY29uc3QgRGF0ZUNvbXBvbmVudHMmKSBjb25zdCBmaW5hbDsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
RGF0ZVRpbWVGaWVsZHNTdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUZpZWxk
c1N0YXRlLmgKaW5kZXggNjRmODU0OGFkZmYzOWQyNzA1NTliMWNlMzE5MDYyMjk0YWRhYzI0ZC4u
ZmU2MTVlMjQxMTNkOTZmYjk2ZDIzMWM4NjVlMGM0Mzc1MmFkODM5NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUZpZWxkc1N0YXRlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9EYXRlVGltZUZpZWxkc1N0YXRlLmgKQEAgLTMzLDkgKzMzLDE5IEBACiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIHN0cnVjdCBEYXRlVGltZUZpZWxkc1N0YXRlIHsKKyAgICBlbnVtIGNs
YXNzIE1lcmlkaWVtIDogYm9vbCB7CisgICAgICAgIEFNLAorICAgICAgICBQTSwKKyAgICB9Owor
CiAgICAgT3B0aW9uYWw8dW5zaWduZWQ+IHllYXI7CiAgICAgT3B0aW9uYWw8dW5zaWduZWQ+IG1v
bnRoOwogICAgIE9wdGlvbmFsPHVuc2lnbmVkPiBkYXlPZk1vbnRoOworICAgIE9wdGlvbmFsPHVu
c2lnbmVkPiBob3VyOworICAgIE9wdGlvbmFsPHVuc2lnbmVkPiBtaW51dGU7CisgICAgT3B0aW9u
YWw8dW5zaWduZWQ+IHNlY29uZDsKKyAgICBPcHRpb25hbDx1bnNpZ25lZD4gbWlsbGlzZWNvbmQ7
CisgICAgT3B0aW9uYWw8TWVyaWRpZW0+IG1lcmlkaWVtOwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5w
dXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZVRpbWVMb2NhbElucHV0VHlwZS5j
cHAKaW5kZXggY2NiMmMzMjQ0NjM1YjRlOTYyMDNhNGVmMmJkZjJjYTMyNjFkNjgyMy4uMDY4MjI2
MWNmZDlmNjIyZWI3ZmMwMDQzZjNjMzdiNjY1OGFmODQwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgU3Ry
aW5nIERhdGVUaW1lTG9jYWxJbnB1dFR5cGU6OmZvcm1hdERhdGVUaW1lRmllbGRzU3RhdGUoY29u
c3QgRGF0ZVRpbWVGaWVsZHNTdGEKICAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKIH0KIAotdm9p
ZCBEYXRlVGltZUxvY2FsSW5wdXRUeXBlOjpzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVF
ZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0Cit2b2lkIERhdGVUaW1lTG9jYWxJ
bnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlv
dXRQYXJhbWV0ZXJzJiwgY29uc3QgRGF0ZUNvbXBvbmVudHMmKSBjb25zdAogewogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvRGF0ZVRpbWVMb2NhbElucHV0VHlwZS5oCmluZGV4IGU2MzQ3NDI2
M2ZmODEwZTdhM2QyNWZmMmJhZTEzYTA5MjU0Y2VmMWEuLjEzMThjZWYzZGQ1OTllNzMwZjM5MWNl
YzM3MTNmMzY2OTZiNTE1MjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZVRp
bWVMb2NhbElucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZVRpbWVMb2Nh
bElucHV0VHlwZS5oCkBAIC01Miw3ICs1Miw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIGlzVmFs
aWRGb3JtYXQoT3B0aW9uU2V0PERhdGVUaW1lRm9ybWF0VmFsaWRhdGlvblJlc3VsdHM+KSBjb25z
dCBmaW5hbDsKICAgICBTdHJpbmcgZm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRl
VGltZUZpZWxkc1N0YXRlJikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBzZXR1cExheW91dFBhcmFt
ZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0IGZpbmFs
OworICAgIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6Okxh
eW91dFBhcmFtZXRlcnMmLCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNvbnN0IGZpbmFsOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9Nb250aElucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01vbnRoSW5wdXRUeXBl
LmNwcAppbmRleCA1ZWY0Yzg5ZDAwNTE0YjExODExMzZjOGRhZjdiMDAwMzIyY2VkOGZhLi44YTQ5
MjEwMDNjY2NjMzFlOTliNTQ1NTAwZjkxMzYwNzY3Zjk1Nzg3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL01vbnRoSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L01vbnRoSW5wdXRUeXBlLmNwcApAQCAtMTQ0LDcgKzE0NCw3IEBAIFN0cmluZyBNb250aElucHV0
VHlwZTo6Zm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGltZUZpZWxkc1N0YXRl
JikgY29uCiAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CiB9CiAKLXZvaWQgTW9udGhJbnB1dFR5
cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlvdXRQYXJh
bWV0ZXJzJikgY29uc3QKK3ZvaWQgTW9udGhJbnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVy
cyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlvdXRQYXJhbWV0ZXJzJiwgY29uc3QgRGF0ZUNvbXBv
bmVudHMmKSBjb25zdAogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01v
bnRoSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01vbnRoSW5wdXRUeXBlLmgKaW5k
ZXggZjQ4OWI3MDA0NmNhZjdiODcxNDhhN2JlYjM1ZWJkMTRjOGIxMmQwMi4uOTQxNjUxZmFmOTk0
ZTI0MmE0MzQ3NmZkZDk5OGRlM2UzYjkwMWI1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9Nb250aElucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTW9udGhJbnB1
dFR5cGUuaApAQCAtNTUsNyArNTUsNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc1ZhbGlkRm9y
bWF0KE9wdGlvblNldDxEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzPikgY29uc3QgZmlu
YWw7CiAgICAgU3RyaW5nIGZvcm1hdERhdGVUaW1lRmllbGRzU3RhdGUoY29uc3QgRGF0ZVRpbWVG
aWVsZHNTdGF0ZSYpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0ZXJz
KERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmKSBjb25zdCBmaW5hbDsKKyAg
ICB2b2lkIHNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlvdXRQ
YXJhbWV0ZXJzJiwgY29uc3QgRGF0ZUNvbXBvbmVudHMmKSBjb25zdCBmaW5hbDsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGlt
ZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RpbWVJbnB1dFR5cGUuY3BwCmlu
ZGV4IDJmZTY1NTUwYzAyMzY0MjJiZjQ1MjEyNGNjODY1NzQ1YzViZWRkYzAuLjRiZjJlODdlNDVm
MDg1ODQxNGI4MmM3YjkzNDc4NmQ1M2Y2NmIwNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvVGltZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UaW1lSW5w
dXRUeXBlLmNwcApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIlRpbWVJbnB1dFR5cGUuaCIK
IAogI2luY2x1ZGUgIkRhdGVDb21wb25lbnRzLmgiCisjaW5jbHVkZSAiRGF0ZVRpbWVGaWVsZHNT
dGF0ZS5oIgogI2luY2x1ZGUgIkRlY2ltYWwuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50
LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCkBAIC0xMTIsMTYgKzExMyw0OCBAQCB2b2lkIFRp
bWVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmKQogCiBib29sIFRpbWVJ
bnB1dFR5cGU6OmlzVmFsaWRGb3JtYXQoT3B0aW9uU2V0PERhdGVUaW1lRm9ybWF0VmFsaWRhdGlv
blJlc3VsdHM+IHJlc3VsdHMpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHJlc3VsdHMuY29udGFpbnNB
bGwoeyBEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzOjpIYXNIb3VyLCBEYXRlVGltZUZv
cm1hdFZhbGlkYXRpb25SZXN1bHRzOjpIYXNNaW51dGUgfSk7CisgICAgcmV0dXJuIHJlc3VsdHMu
Y29udGFpbnNBbGwoeyBEYXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzOjpIYXNIb3VyLCBE
YXRlVGltZUZvcm1hdFZhbGlkYXRpb25SZXN1bHRzOjpIYXNNaW51dGUsIERhdGVUaW1lRm9ybWF0
VmFsaWRhdGlvblJlc3VsdHM6Okhhc01lcmlkaWVtIH0pOwogfQogCi1TdHJpbmcgVGltZUlucHV0
VHlwZTo6Zm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGltZUZpZWxkc1N0YXRl
JikgY29uc3QKK1N0cmluZyBUaW1lSW5wdXRUeXBlOjpmb3JtYXREYXRlVGltZUZpZWxkc1N0YXRl
KGNvbnN0IERhdGVUaW1lRmllbGRzU3RhdGUmIHN0YXRlKSBjb25zdAogewotICAgIHJldHVybiBl
bXB0eVN0cmluZygpOworICAgIGlmICghc3RhdGUuaG91ciB8fCAhc3RhdGUubWludXRlIHx8ICFz
dGF0ZS5tZXJpZGllbSkKKyAgICAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CisKKyAgICB1bnNp
Z25lZCBob3VyMjMgPSAoKnN0YXRlLmhvdXIgJSAxMikgKyAoKnN0YXRlLm1lcmlkaWVtID09IERh
dGVUaW1lRmllbGRzU3RhdGU6Ok1lcmlkaWVtOjpQTSA/IDEyIDogMCk7CisgICAgYXV0byBob3Vy
TWludXRlU3RyaW5nID0gbWFrZVN0cmluZyhwYWQoJzAnLCAyLCBob3VyMjMpLCAnOicsIHBhZCgn
MCcsIDIsICpzdGF0ZS5taW51dGUpKTsKKworICAgIGlmIChzdGF0ZS5taWxsaXNlY29uZCkKKyAg
ICAgICAgcmV0dXJuIG1ha2VTdHJpbmcoaG91ck1pbnV0ZVN0cmluZywgJzonLCBwYWQoJzAnLCAy
LCBzdGF0ZS5zZWNvbmQgPyAqc3RhdGUuc2Vjb25kIDogMCksICcuJywgcGFkKCcwJywgMywgKnN0
YXRlLm1pbGxpc2Vjb25kKSk7CisKKyAgICBpZiAoc3RhdGUuc2Vjb25kKQorICAgICAgICByZXR1
cm4gbWFrZVN0cmluZyhob3VyTWludXRlU3RyaW5nLCAnOicsIHBhZCgnMCcsIDIsICpzdGF0ZS5z
ZWNvbmQpKTsKKworICAgIHJldHVybiBob3VyTWludXRlU3RyaW5nOwogfQogCi12b2lkIFRpbWVJ
bnB1dFR5cGU6OnNldHVwTGF5b3V0UGFyYW1ldGVycyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlv
dXRQYXJhbWV0ZXJzJikgY29uc3QKK3ZvaWQgVGltZUlucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJh
bWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmIGxheW91dFBhcmFt
ZXRlcnMsIGNvbnN0IERhdGVDb21wb25lbnRzJiBkYXRlKSBjb25zdAogeworICAgIGF1dG8gc3Rl
cFJhbmdlID0gY3JlYXRlU3RlcFJhbmdlKEFueVN0ZXBIYW5kbGluZzo6RGVmYXVsdCk7CisgICAg
YXV0byBtaWxsaXNlY29uZHNQZXJTZWNvbmQgPSBEZWNpbWFsOjpmcm9tRG91YmxlKG1zUGVyU2Vj
b25kKTsKKyAgICBhdXRvIG1pbGxpc2Vjb25kc1Blck1pbnV0ZSA9IERlY2ltYWw6OmZyb21Eb3Vi
bGUobXNQZXJNaW51dGUpOworCisgICAgbGF5b3V0UGFyYW1ldGVycy5zaG91bGRIYXZlTWlsbGlz
ZWNvbmRGaWVsZCA9IGRhdGUubWlsbGlzZWNvbmQoKQorICAgICAgICB8fCAhc3RlcFJhbmdlLm1p
bmltdW0oKS5yZW1haW5kZXIobWlsbGlzZWNvbmRzUGVyU2Vjb25kKS5pc1plcm8oKQorICAgICAg
ICB8fCAhc3RlcFJhbmdlLnN0ZXAoKS5yZW1haW5kZXIobWlsbGlzZWNvbmRzUGVyU2Vjb25kKS5p
c1plcm8oKTsKKworICAgIGJvb2wgc2hvdWxkSGF2ZVNlY29uZEZpZWxkID0gbGF5b3V0UGFyYW1l
dGVycy5zaG91bGRIYXZlTWlsbGlzZWNvbmRGaWVsZAorICAgICAgICB8fCBkYXRlLnNlY29uZCgp
CisgICAgICAgIHx8ICFzdGVwUmFuZ2UubWluaW11bSgpLnJlbWFpbmRlcihtaWxsaXNlY29uZHNQ
ZXJNaW51dGUpLmlzWmVybygpCisgICAgICAgIHx8ICFzdGVwUmFuZ2Uuc3RlcCgpLnJlbWFpbmRl
cihtaWxsaXNlY29uZHNQZXJNaW51dGUpLmlzWmVybygpOworCisgICAgaWYgKHNob3VsZEhhdmVT
ZWNvbmRGaWVsZCkgeworICAgICAgICBsYXlvdXRQYXJhbWV0ZXJzLmRhdGVUaW1lRm9ybWF0ID0g
bGF5b3V0UGFyYW1ldGVycy5sb2NhbGUudGltZUZvcm1hdCgpOworICAgICAgICBsYXlvdXRQYXJh
bWV0ZXJzLmZhbGxiYWNrRGF0ZVRpbWVGb3JtYXQgPSAiSEg6bW06c3MiX3M7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgbGF5b3V0UGFyYW1ldGVycy5kYXRlVGltZUZvcm1hdCA9IGxheW91dFBhcmFt
ZXRlcnMubG9jYWxlLnNob3J0VGltZUZvcm1hdCgpOworICAgICAgICBsYXlvdXRQYXJhbWV0ZXJz
LmZhbGxiYWNrRGF0ZVRpbWVGb3JtYXQgPSAiSEg6bW0iX3M7CisgICAgfQogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RpbWVJbnB1
dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGltZUlucHV0VHlwZS5oCmluZGV4IGFjODI0
ZmQ1Yjk3YmIzZDBiMTQ2ZDYzZTBiNTQ2NDU2MzIzZjVkMzMuLjJkODhmYWRiZjUwZGY2NDY5MzM5
MWZjMGU0Y2IzZTU2MWQwZjc2OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGlt
ZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGltZUlucHV0VHlwZS5oCkBA
IC01Miw3ICs1Miw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIGlzVmFsaWRGb3JtYXQoT3B0aW9u
U2V0PERhdGVUaW1lRm9ybWF0VmFsaWRhdGlvblJlc3VsdHM+KSBjb25zdCBmaW5hbDsKICAgICBT
dHJpbmcgZm9ybWF0RGF0ZVRpbWVGaWVsZHNTdGF0ZShjb25zdCBEYXRlVGltZUZpZWxkc1N0YXRl
JikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVF
ZGl0RWxlbWVudDo6TGF5b3V0UGFyYW1ldGVycyYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2V0
dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMm
LCBjb25zdCBEYXRlQ29tcG9uZW50cyYpIGNvbnN0IGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9XZWVrSW5wdXRUeXBl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvV2Vla0lucHV0VHlwZS5jcHAKaW5kZXggYmRjOTJh
MTQyNjNhODg1OTY5ODc1ZGEzZjBjMzI5NmVhZmUyYTYyNC4uMWZmNjZjM2IzYzVhYThkOTIyZmRk
OTczMjQ3YWRmYWU5MjQzYWQ4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9XZWVr
SW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1dlZWtJbnB1dFR5cGUuY3Bw
CkBAIC05Nyw3ICs5Nyw3IEBAIFN0cmluZyBXZWVrSW5wdXRUeXBlOjpmb3JtYXREYXRlVGltZUZp
ZWxkc1N0YXRlKGNvbnN0IERhdGVUaW1lRmllbGRzU3RhdGUmKSBjb25zCiAgICAgcmV0dXJuIGVt
cHR5U3RyaW5nKCk7CiB9CiAKLXZvaWQgV2Vla0lucHV0VHlwZTo6c2V0dXBMYXlvdXRQYXJhbWV0
ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91dFBhcmFtZXRlcnMmKSBjb25zdAordm9pZCBX
ZWVrSW5wdXRUeXBlOjpzZXR1cExheW91dFBhcmFtZXRlcnMoRGF0ZVRpbWVFZGl0RWxlbWVudDo6
TGF5b3V0UGFyYW1ldGVycyYsIGNvbnN0IERhdGVDb21wb25lbnRzJikgY29uc3QKIHsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9XZWVrSW5wdXRUeXBlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1dlZWtJbnB1dFR5cGUuaAppbmRleCAwMGEzMWE1OGY4NTBkZDg2OWFkZWE2
NTY4ZGQ2MzQyYmRhMTJhZjYxLi5iZmViNzFhOGIxNmFkOGM0NjNiZWZmMTYwMTcwYTM5M2UzNTc4
Mzg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1dlZWtJbnB1dFR5cGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL1dlZWtJbnB1dFR5cGUuaApAQCAtNTEsNyArNTEsNyBAQCBw
cml2YXRlOgogCiAgICAgYm9vbCBpc1ZhbGlkRm9ybWF0KE9wdGlvblNldDxEYXRlVGltZUZvcm1h
dFZhbGlkYXRpb25SZXN1bHRzPikgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIGZvcm1hdERhdGVU
aW1lRmllbGRzU3RhdGUoY29uc3QgRGF0ZVRpbWVGaWVsZHNTdGF0ZSYpIGNvbnN0IGZpbmFsOwot
ICAgIHZvaWQgc2V0dXBMYXlvdXRQYXJhbWV0ZXJzKERhdGVUaW1lRWRpdEVsZW1lbnQ6OkxheW91
dFBhcmFtZXRlcnMmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHNldHVwTGF5b3V0UGFyYW1ldGVy
cyhEYXRlVGltZUVkaXRFbGVtZW50OjpMYXlvdXRQYXJhbWV0ZXJzJiwgY29uc3QgRGF0ZUNvbXBv
bmVudHMmKSBjb25zdCBmaW5hbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRWRpdEVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxlbWVudC5jcHAKaW5k
ZXggYTk3YzU0ZGI0ZTRkNmRkYTA0NWYyNWQ2M2FiZGE2OWRlMDRmOGZmMS4uOGZhZGQxNzVjNTc2
MDRjYjYzMWU5ZDBkNjk3Yjg5YzEzZTlmMWRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxlbWVudC5jcHAKQEAgLTg1LDYgKzg1LDM2IEBAIHZv
aWQgRGF0ZVRpbWVFZGl0QnVpbGRlcjo6dmlzaXRGaWVsZChEYXRlVGltZUZvcm1hdDo6RmllbGRU
eXBlIGZpZWxkVHlwZSwgaW50IGNvCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICBjYXNl
IERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVGcmFjdGlvbmFsU2Vjb25kOiB7CisgICAgICAgIG1f
ZWRpdEVsZW1lbnQuYWRkRmllbGQoRGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxkRWxlbWVudDo6Y3Jl
YXRlKGRvY3VtZW50LCBtX2VkaXRFbGVtZW50KSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBjYXNlIERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVIb3VyMTE6IHsKKyAgICAgICAgbV9l
ZGl0RWxlbWVudC5hZGRGaWVsZChEYXRlVGltZUhvdXJGaWVsZEVsZW1lbnQ6OmNyZWF0ZShkb2N1
bWVudCwgbV9lZGl0RWxlbWVudCwgMCwgMTEpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZUhvdXIxMjogeworICAgICAgICBtX2Vk
aXRFbGVtZW50LmFkZEZpZWxkKERhdGVUaW1lSG91ckZpZWxkRWxlbWVudDo6Y3JlYXRlKGRvY3Vt
ZW50LCBtX2VkaXRFbGVtZW50LCAxLCAxMikpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgY2FzZSBEYXRlVGltZUZvcm1hdDo6RmllbGRUeXBlSG91cjIzOiB7CisgICAgICAgIG1fZWRp
dEVsZW1lbnQuYWRkRmllbGQoRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50OjpjcmVhdGUoZG9jdW1l
bnQsIG1fZWRpdEVsZW1lbnQsIDAsIDIzKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBjYXNlIERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVIb3VyMjQ6IHsKKyAgICAgICAgbV9lZGl0
RWxlbWVudC5hZGRGaWVsZChEYXRlVGltZUhvdXJGaWVsZEVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVu
dCwgbV9lZGl0RWxlbWVudCwgMSwgMjQpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IGNhc2UgRGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZU1pbnV0ZTogeworICAgICAgICBtX2VkaXRF
bGVtZW50LmFkZEZpZWxkKERhdGVUaW1lTWludXRlRmllbGRFbGVtZW50OjpjcmVhdGUoZG9jdW1l
bnQsIG1fZWRpdEVsZW1lbnQpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIGNhc2Ug
RGF0ZVRpbWVGb3JtYXQ6OkZpZWxkVHlwZU1vbnRoOgogICAgIGNhc2UgRGF0ZVRpbWVGb3JtYXQ6
OkZpZWxkVHlwZU1vbnRoU3RhbmRBbG9uZTogewogICAgICAgICBjb25zdGV4cHIgaW50IGNvdW50
Rm9yQWJicmV2aWF0ZWRNb250aCA9IDM7CkBAIC0xMDksNiArMTM5LDIxIEBAIHZvaWQgRGF0ZVRp
bWVFZGl0QnVpbGRlcjo6dmlzaXRGaWVsZChEYXRlVGltZUZvcm1hdDo6RmllbGRUeXBlIGZpZWxk
VHlwZSwgaW50IGNvCiAgICAgICAgIH0KICAgICB9CiAKKyAgICBjYXNlIERhdGVUaW1lRm9ybWF0
OjpGaWVsZFR5cGVQZXJpb2Q6IHsKKyAgICAgICAgbV9lZGl0RWxlbWVudC5hZGRGaWVsZChEYXRl
VGltZU1lcmlkaWVtRmllbGRFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQsIG1fZWRpdEVsZW1lbnQs
IG1fcGFyYW1ldGVycy5sb2NhbGUudGltZUFNUE1MYWJlbHMoKSkpOworICAgICAgICByZXR1cm47
CisgICAgfQorCisgICAgY2FzZSBEYXRlVGltZUZvcm1hdDo6RmllbGRUeXBlU2Vjb25kOiB7Cisg
ICAgICAgIG1fZWRpdEVsZW1lbnQuYWRkRmllbGQoRGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1lbnQ6
OmNyZWF0ZShkb2N1bWVudCwgbV9lZGl0RWxlbWVudCkpOworCisgICAgICAgIGlmIChtX3BhcmFt
ZXRlcnMuc2hvdWxkSGF2ZU1pbGxpc2Vjb25kRmllbGQpIHsKKyAgICAgICAgICAgIHZpc2l0TGl0
ZXJhbChtX3BhcmFtZXRlcnMubG9jYWxlLmxvY2FsaXplZERlY2ltYWxTZXBhcmF0b3IoKSk7Cisg
ICAgICAgICAgICB2aXNpdEZpZWxkKERhdGVUaW1lRm9ybWF0OjpGaWVsZFR5cGVGcmFjdGlvbmFs
U2Vjb25kLCAzKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgY2Fz
ZSBEYXRlVGltZUZvcm1hdDo6RmllbGRUeXBlWWVhcjogewogICAgICAgICBtX2VkaXRFbGVtZW50
LmFkZEZpZWxkKERhdGVUaW1lWWVhckZpZWxkRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBtX2Vk
aXRFbGVtZW50KSk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L0RhdGVUaW1lRWRpdEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L0RhdGVUaW1lRWRpdEVsZW1lbnQuaAppbmRleCAwYmNjYTZhNzBiMDJhMzZlZjdiY2Iw
MjkxMjJjMTMwMjIzODQ4ZTBhLi5kNzk2NDk2YmMzOWViYmVhZTU4YjNiYjU5Zjc4NzBiNTFiYzJl
MTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUVkaXRF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVFZGl0RWxl
bWVudC5oCkBAIC01NSw2ICs1NSw3IEBAIHB1YmxpYzoKICAgICAgICAgU3RyaW5nIGRhdGVUaW1l
Rm9ybWF0OwogICAgICAgICBTdHJpbmcgZmFsbGJhY2tEYXRlVGltZUZvcm1hdDsKICAgICAgICAg
TG9jYWxlJiBsb2NhbGU7CisgICAgICAgIGJvb2wgc2hvdWxkSGF2ZU1pbGxpc2Vjb25kRmllbGQg
eyBmYWxzZSB9OwogCiAgICAgICAgIExheW91dFBhcmFtZXRlcnMoTG9jYWxlJiBsb2NhbGUpCiAg
ICAgICAgICAgICA6IGxvY2FsZShsb2NhbGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9zaGFkb3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnRzLmNwcAppbmRleCBmNWNjOWVlMWI5ODA3ZWFi
YzEwNmEyN2NlNDA5NjcxNzQzNTJkZDE4Li41ZTBjNjgxMWJmYTJkYjRkN2NiN2UxNGFmMTY5NmIw
YzllOTdlYWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGlt
ZUZpZWxkRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVU
aW1lRmllbGRFbGVtZW50cy5jcHAKQEAgLTYwLDYgKzYwLDE0NSBAQCB2b2lkIERhdGVUaW1lRGF5
RmllbGRFbGVtZW50OjpzZXRWYWx1ZUFzRGF0ZShjb25zdCBEYXRlQ29tcG9uZW50cyYgZGF0ZSkK
ICAgICBzZXRWYWx1ZUFzSW50ZWdlcihkYXRlLm1vbnRoRGF5KCkpOwogfQogCitXVEZfTUFLRV9J
U09fQUxMT0NBVEVEX0lNUEwoRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KTsKKworRGF0ZVRpbWVI
b3VyRmllbGRFbGVtZW50OjpEYXRlVGltZUhvdXJGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3Vt
ZW50LCBGaWVsZE93bmVyJiBmaWVsZE93bmVyLCBpbnQgbWluaW11bSwgaW50IG1heGltdW0pCisg
ICAgOiBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQoZG9jdW1lbnQsIGZpZWxkT3duZXIsIFJh
bmdlKG1pbmltdW0sIG1heGltdW0pLCAiLS0iX3MpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWRO
ZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBob3VyUHNldWRvSWQoIi13ZWJraXQtZGF0
ZXRpbWUtZWRpdC1ob3VyLWZpZWxkIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwp
OworICAgIGluaXRpYWxpemUoaG91clBzZXVkb0lkKTsKK30KKworUmVmPERhdGVUaW1lSG91ckZp
ZWxkRWxlbWVudD4gRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRv
Y3VtZW50LCBGaWVsZE93bmVyJiBmaWVsZE93bmVyLCBpbnQgbWluaW11bSwgaW50IG1heGltdW0p
Cit7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KGRv
Y3VtZW50LCBmaWVsZE93bmVyLCBtaW5pbXVtLCBtYXhpbXVtKSk7Cit9CisKK3ZvaWQgRGF0ZVRp
bWVIb3VyRmllbGRFbGVtZW50Ojpwb3B1bGF0ZURhdGVUaW1lRmllbGRzU3RhdGUoRGF0ZVRpbWVG
aWVsZHNTdGF0ZSYgc3RhdGUpCit7CisgICAgaWYgKCFoYXNWYWx1ZSgpKQorICAgICAgICByZXR1
cm47CisKKyAgICBpbnQgdmFsdWUgPSB2YWx1ZUFzSW50ZWdlcigpOworCisgICAgc3dpdGNoICht
YXhpbXVtKCkpIHsKKyAgICBjYXNlIDExOgorICAgICAgICBzdGF0ZS5ob3VyID0gdmFsdWUgPzog
MTI7CisgICAgICAgIHJldHVybjsKKyAgICBjYXNlIDEyOgorICAgICAgICBzdGF0ZS5ob3VyID0g
dmFsdWU7CisgICAgICAgIHJldHVybjsKKyAgICBjYXNlIDIzOgorICAgICAgICBzdGF0ZS5ob3Vy
ID0gKHZhbHVlICUgMTIpID86IDEyOworICAgICAgICBzdGF0ZS5tZXJpZGllbSA9IHZhbHVlID49
IDEyID8gRGF0ZVRpbWVGaWVsZHNTdGF0ZTo6TWVyaWRpZW06OlBNIDogRGF0ZVRpbWVGaWVsZHNT
dGF0ZTo6TWVyaWRpZW06OkFNOworICAgICAgICByZXR1cm47CisgICAgY2FzZSAyNDoKKyAgICAg
ICAgaWYgKHZhbHVlID09IDI0KSB7CisgICAgICAgICAgICBzdGF0ZS5ob3VyID0gMTI7CisgICAg
ICAgICAgICBzdGF0ZS5tZXJpZGllbSA9IERhdGVUaW1lRmllbGRzU3RhdGU6Ok1lcmlkaWVtOjpB
TTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBzdGF0ZS5ob3VyID0g
KHZhbHVlICUgMTIpID86IDEyOworICAgICAgICBzdGF0ZS5tZXJpZGllbSA9IHZhbHVlID49IDEy
ID8gRGF0ZVRpbWVGaWVsZHNTdGF0ZTo6TWVyaWRpZW06OlBNIDogRGF0ZVRpbWVGaWVsZHNTdGF0
ZTo6TWVyaWRpZW06OkFNOworICAgICAgICByZXR1cm47CisgICAgfQorfQorCit2b2lkIERhdGVU
aW1lSG91ckZpZWxkRWxlbWVudDo6c2V0VmFsdWVBc0RhdGUoY29uc3QgRGF0ZUNvbXBvbmVudHMm
IGRhdGUpCit7CisgICAgaW50IGhvdXIgPSBkYXRlLmhvdXIoKTsKKworICAgIHN3aXRjaCAobWF4
aW11bSgpKSB7CisgICAgY2FzZSAxMToKKyAgICAgICAgc2V0VmFsdWVBc0ludGVnZXIoaG91ciAl
IDEyKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgMTI6CisgICAgICAgIHNldFZhbHVlQXNJ
bnRlZ2VyKChob3VyICUgMTIpID86IDEyKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgMjM6
CisgICAgICAgIHNldFZhbHVlQXNJbnRlZ2VyKGhvdXIpOworICAgICAgICByZXR1cm47CisgICAg
Y2FzZSAyNDoKKyAgICAgICAgc2V0VmFsdWVBc0ludGVnZXIoaG91ciArIDEpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorfQorCitXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRGF0ZVRpbWVN
ZXJpZGllbUZpZWxkRWxlbWVudCk7CisKK0RhdGVUaW1lTWVyaWRpZW1GaWVsZEVsZW1lbnQ6OkRh
dGVUaW1lTWVyaWRpZW1GaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93bmVy
JiBmaWVsZE93bmVyLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgbGFiZWxzKQorICAgIDogRGF0ZVRp
bWVTeW1ib2xpY0ZpZWxkRWxlbWVudChkb2N1bWVudCwgZmllbGRPd25lciwgbGFiZWxzKQorewor
ICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gbWVy
aWRpZW1Qc2V1ZG9JZCgiLXdlYmtpdC1kYXRldGltZS1lZGl0LW1lcmlkaWVtLWZpZWxkIiwgQXRv
bVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIGluaXRpYWxpemUobWVyaWRpZW1Q
c2V1ZG9JZCk7Cit9CisKK1JlZjxEYXRlVGltZU1lcmlkaWVtRmllbGRFbGVtZW50PiBEYXRlVGlt
ZU1lcmlkaWVtRmllbGRFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93
bmVyJiBmaWVsZE93bmVyLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgbGFiZWxzKQoreworICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IERhdGVUaW1lTWVyaWRpZW1GaWVsZEVsZW1lbnQoZG9jdW1lbnQs
IGZpZWxkT3duZXIsIGxhYmVscykpOworfQorCit2b2lkIERhdGVUaW1lTWVyaWRpZW1GaWVsZEVs
ZW1lbnQ6OnBvcHVsYXRlRGF0ZVRpbWVGaWVsZHNTdGF0ZShEYXRlVGltZUZpZWxkc1N0YXRlJiBz
dGF0ZSkKK3sKKyAgICBpZiAoaGFzVmFsdWUoKSkKKyAgICAgICAgc3RhdGUubWVyaWRpZW0gPSB2
YWx1ZUFzSW50ZWdlcigpID8gRGF0ZVRpbWVGaWVsZHNTdGF0ZTo6TWVyaWRpZW06OlBNIDogRGF0
ZVRpbWVGaWVsZHNTdGF0ZTo6TWVyaWRpZW06OkFNOworfQorCit2b2lkIERhdGVUaW1lTWVyaWRp
ZW1GaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKGNvbnN0IERhdGVDb21wb25lbnRzJiBkYXRl
KQoreworICAgIHNldFZhbHVlQXNJbnRlZ2VyKGRhdGUuaG91cigpID49IDEyID8gMSA6IDApOwor
fQorCitXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxk
RWxlbWVudCk7CisKK0RhdGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQ6OkRhdGVUaW1lTWls
bGlzZWNvbmRGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93bmVyJiBmaWVs
ZE93bmVyKQorICAgIDogRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50KGRvY3VtZW50LCBmaWVs
ZE93bmVyLCBSYW5nZSgwLCA5OTkpLCAiLS0iX3MpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWRO
ZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBtaWxsaXNlY29uZFBzZXVkb0lkKCItd2Vi
a2l0LWRhdGV0aW1lLWVkaXQtbWlsbGlzZWNvbmQtZmllbGQiLCBBdG9tU3RyaW5nOjpDb25zdHJ1
Y3RGcm9tTGl0ZXJhbCk7CisgICAgaW5pdGlhbGl6ZShtaWxsaXNlY29uZFBzZXVkb0lkKTsKK30K
KworUmVmPERhdGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQ+IERhdGVUaW1lTWlsbGlzZWNv
bmRGaWVsZEVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIEZpZWxkT3duZXImIGZp
ZWxkT3duZXIpCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0ZVRpbWVNaWxsaXNlY29u
ZEZpZWxkRWxlbWVudChkb2N1bWVudCwgZmllbGRPd25lcikpOworfQorCit2b2lkIERhdGVUaW1l
TWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQ6OnBvcHVsYXRlRGF0ZVRpbWVGaWVsZHNTdGF0ZShEYXRl
VGltZUZpZWxkc1N0YXRlJiBzdGF0ZSkKK3sKKyAgICBpZiAoaGFzVmFsdWUoKSkKKyAgICAgICAg
c3RhdGUubWlsbGlzZWNvbmQgPSB2YWx1ZUFzSW50ZWdlcigpOworfQorCit2b2lkIERhdGVUaW1l
TWlsbGlzZWNvbmRGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKGNvbnN0IERhdGVDb21wb25l
bnRzJiBkYXRlKQoreworICAgIHNldFZhbHVlQXNJbnRlZ2VyKGRhdGUubWlsbGlzZWNvbmQoKSk7
Cit9CisKK1dURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChEYXRlVGltZU1pbnV0ZUZpZWxkRWxl
bWVudCk7CisKK0RhdGVUaW1lTWludXRlRmllbGRFbGVtZW50OjpEYXRlVGltZU1pbnV0ZUZpZWxk
RWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQsIEZpZWxkT3duZXImIGZpZWxkT3duZXIpCisgICAg
OiBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQoZG9jdW1lbnQsIGZpZWxkT3duZXIsIFJhbmdl
KDAsIDU5KSwgIi0tIl9zKQoreworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8
Y29uc3QgQXRvbVN0cmluZz4gbWludXRlUHNldWRvSWQoIi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1t
aW51dGUtZmllbGQiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgaW5p
dGlhbGl6ZShtaW51dGVQc2V1ZG9JZCk7Cit9CisKK1JlZjxEYXRlVGltZU1pbnV0ZUZpZWxkRWxl
bWVudD4gRGF0ZVRpbWVNaW51dGVGaWVsZEVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1l
bnQsIEZpZWxkT3duZXImIGZpZWxkT3duZXIpCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
RGF0ZVRpbWVNaW51dGVGaWVsZEVsZW1lbnQoZG9jdW1lbnQsIGZpZWxkT3duZXIpKTsKK30KKwor
dm9pZCBEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudDo6cG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0
YXRlKERhdGVUaW1lRmllbGRzU3RhdGUmIHN0YXRlKQoreworICAgIGlmIChoYXNWYWx1ZSgpKQor
ICAgICAgICBzdGF0ZS5taW51dGUgPSB2YWx1ZUFzSW50ZWdlcigpOworfQorCit2b2lkIERhdGVU
aW1lTWludXRlRmllbGRFbGVtZW50OjpzZXRWYWx1ZUFzRGF0ZShjb25zdCBEYXRlQ29tcG9uZW50
cyYgZGF0ZSkKK3sKKyAgICBzZXRWYWx1ZUFzSW50ZWdlcihkYXRlLm1pbnV0ZSgpKTsKK30KKwog
V1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKERhdGVUaW1lTW9udGhGaWVsZEVsZW1lbnQpOwog
CiBEYXRlVGltZU1vbnRoRmllbGRFbGVtZW50OjpEYXRlVGltZU1vbnRoRmllbGRFbGVtZW50KERv
Y3VtZW50JiBkb2N1bWVudCwgRmllbGRPd25lciYgZmllbGRPd25lcikKQEAgLTg2LDYgKzIyNSwz
MSBAQCB2b2lkIERhdGVUaW1lTW9udGhGaWVsZEVsZW1lbnQ6OnNldFZhbHVlQXNEYXRlKGNvbnN0
IERhdGVDb21wb25lbnRzJiBkYXRlKQogICAgIHNldFZhbHVlQXNJbnRlZ2VyKGRhdGUubW9udGgo
KSArIDEpOwogfQogCitXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRGF0ZVRpbWVTZWNvbmRG
aWVsZEVsZW1lbnQpOworCitEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudDo6RGF0ZVRpbWVTZWNv
bmRGaWVsZEVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGaWVsZE93bmVyJiBmaWVsZE93bmVy
KQorICAgIDogRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50KGRvY3VtZW50LCBmaWVsZE93bmVy
LCBSYW5nZSgwLCA1OSksICItLSJfcykKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVz
dHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlY29uZFBzZXVkb0lkKCItd2Via2l0LWRhdGV0aW1l
LWVkaXQtc2Vjb25kLWZpZWxkIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwor
ICAgIGluaXRpYWxpemUoc2Vjb25kUHNldWRvSWQpOworfQorCitSZWY8RGF0ZVRpbWVTZWNvbmRG
aWVsZEVsZW1lbnQ+IERhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQm
IGRvY3VtZW50LCBGaWVsZE93bmVyJiBmaWVsZE93bmVyKQoreworICAgIHJldHVybiBhZG9wdFJl
ZigqbmV3IERhdGVUaW1lU2Vjb25kRmllbGRFbGVtZW50KGRvY3VtZW50LCBmaWVsZE93bmVyKSk7
Cit9CisKK3ZvaWQgRGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1lbnQ6OnBvcHVsYXRlRGF0ZVRpbWVG
aWVsZHNTdGF0ZShEYXRlVGltZUZpZWxkc1N0YXRlJiBzdGF0ZSkKK3sKKyAgICBpZiAoaGFzVmFs
dWUoKSkKKyAgICAgICAgc3RhdGUuc2Vjb25kID0gdmFsdWVBc0ludGVnZXIoKTsKK30KKwordm9p
ZCBEYXRlVGltZVNlY29uZEZpZWxkRWxlbWVudDo6c2V0VmFsdWVBc0RhdGUoY29uc3QgRGF0ZUNv
bXBvbmVudHMmIGRhdGUpCit7CisgICAgc2V0VmFsdWVBc0ludGVnZXIoZGF0ZS5zZWNvbmQoKSk7
Cit9CisKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChEYXRlVGltZVN5bWJvbGljTW9udGhG
aWVsZEVsZW1lbnQpOwogCiBEYXRlVGltZVN5bWJvbGljTW9udGhGaWVsZEVsZW1lbnQ6OkRhdGVU
aW1lU3ltYm9saWNNb250aEZpZWxkRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQsIEZpZWxkT3du
ZXImIGZpZWxkT3duZXIsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBsYWJlbHMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudHMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50cy5oCmluZGV4IGYx
MTAzNzgyOWJmN2FkMWJmOWEwM2I5ZDM0MTA5ODg1YmQxOWRhMzAuLmQ3NjVlZmI0MzBjMTE2YWEw
ZmQzZWUxNjJlOTJjNWRiNzhhNzQxN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50cy5oCkBAIC00Nyw2ICs0Nyw2MiBAQCBwcml2YXRl
OgogICAgIHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3Rh
dGUmKTsKIH07CiAKK2NsYXNzIERhdGVUaW1lSG91ckZpZWxkRWxlbWVudCBmaW5hbCA6IHB1Ymxp
YyBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQgeworICAgIFdURl9NQUtFX0lTT19BTExPQ0FU
RUQoRGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50KTsKKworcHVibGljOgorICAgIHN0YXRpYyBSZWY8
RGF0ZVRpbWVIb3VyRmllbGRFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmLCBGaWVsZE93bmVyJiwg
aW50IG1pbmltdW0sIGludCBtYXhpbXVtKTsKKworcHJpdmF0ZToKKyAgICBEYXRlVGltZUhvdXJG
aWVsZEVsZW1lbnQoRG9jdW1lbnQmLCBGaWVsZE93bmVyJiwgaW50IG1pbmltdW0sIGludCBtYXhp
bXVtKTsKKworICAgIC8vIERhdGVUaW1lRmllbGRFbGVtZW50IGZ1bmN0aW9uczoKKyAgICB2aXJ0
dWFsIHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUm
KTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0VmFsdWVBc0RhdGUoY29uc3QgRGF0ZUNvbXBvbmVudHMm
KTsKK307CisKK2NsYXNzIERhdGVUaW1lTWVyaWRpZW1GaWVsZEVsZW1lbnQgZmluYWwgOiBwdWJs
aWMgRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudCB7CisgICAgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRChEYXRlVGltZU1lcmlkaWVtRmllbGRFbGVtZW50KTsKKworcHVibGljOgorICAgIHN0YXRp
YyBSZWY8RGF0ZVRpbWVNZXJpZGllbUZpZWxkRWxlbWVudD4gY3JlYXRlKERvY3VtZW50JiwgRmll
bGRPd25lciYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+Jik7CisKK3ByaXZhdGU6CisgICAgRGF0ZVRp
bWVNZXJpZGllbUZpZWxkRWxlbWVudChEb2N1bWVudCYsIEZpZWxkT3duZXImLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYpOworCisgICAgLy8gRGF0ZVRpbWVGaWVsZEVsZW1lbnQgZnVuY3Rpb25zOgor
ICAgIHZvaWQgcG9wdWxhdGVEYXRlVGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUm
KTsKKyAgICB2b2lkIHNldFZhbHVlQXNEYXRlKGNvbnN0IERhdGVDb21wb25lbnRzJik7Cit9Owor
CitjbGFzcyBEYXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50IGZpbmFsIDogcHVibGljIERh
dGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudCB7CisgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChE
YXRlVGltZU1pbGxpc2Vjb25kRmllbGRFbGVtZW50KTsKKworcHVibGljOgorICAgIHN0YXRpYyBS
ZWY8RGF0ZVRpbWVNaWxsaXNlY29uZEZpZWxkRWxlbWVudD4gY3JlYXRlKERvY3VtZW50JiwgRmll
bGRPd25lciYpOworCitwcml2YXRlOgorICAgIERhdGVUaW1lTWlsbGlzZWNvbmRGaWVsZEVsZW1l
bnQoRG9jdW1lbnQmLCBGaWVsZE93bmVyJik7CisKKyAgICAvLyBEYXRlVGltZUZpZWxkRWxlbWVu
dCBmdW5jdGlvbnM6CisgICAgdmlydHVhbCB2b2lkIHBvcHVsYXRlRGF0ZVRpbWVGaWVsZHNTdGF0
ZShEYXRlVGltZUZpZWxkc1N0YXRlJik7CisgICAgdmlydHVhbCB2b2lkIHNldFZhbHVlQXNEYXRl
KGNvbnN0IERhdGVDb21wb25lbnRzJik7Cit9OworCitjbGFzcyBEYXRlVGltZU1pbnV0ZUZpZWxk
RWxlbWVudCBmaW5hbCA6IHB1YmxpYyBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQgeworICAg
IFdURl9NQUtFX0lTT19BTExPQ0FURUQoRGF0ZVRpbWVNaW51dGVGaWVsZEVsZW1lbnQpOworCitw
dWJsaWM6CisgICAgc3RhdGljIFJlZjxEYXRlVGltZU1pbnV0ZUZpZWxkRWxlbWVudD4gY3JlYXRl
KERvY3VtZW50JiwgRmllbGRPd25lciYpOworCitwcml2YXRlOgorICAgIERhdGVUaW1lTWludXRl
RmllbGRFbGVtZW50KERvY3VtZW50JiwgRmllbGRPd25lciYpOworCisgICAgLy8gRGF0ZVRpbWVG
aWVsZEVsZW1lbnQgZnVuY3Rpb25zOgorICAgIHZpcnR1YWwgdm9pZCBwb3B1bGF0ZURhdGVUaW1l
RmllbGRzU3RhdGUoRGF0ZVRpbWVGaWVsZHNTdGF0ZSYpOworICAgIHZpcnR1YWwgdm9pZCBzZXRW
YWx1ZUFzRGF0ZShjb25zdCBEYXRlQ29tcG9uZW50cyYpOworfTsKKwogY2xhc3MgRGF0ZVRpbWVN
b250aEZpZWxkRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1l
bnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRGF0ZVRpbWVNb250aEZpZWxkRWxlbWVu
dCk7CiAKQEAgLTYxLDYgKzExNywyMCBAQCBwcml2YXRlOgogICAgIHZvaWQgcG9wdWxhdGVEYXRl
VGltZUZpZWxkc1N0YXRlKERhdGVUaW1lRmllbGRzU3RhdGUmKTsKIH07CiAKK2NsYXNzIERhdGVU
aW1lU2Vjb25kRmllbGRFbGVtZW50IGZpbmFsIDogcHVibGljIERhdGVUaW1lTnVtZXJpY0ZpZWxk
RWxlbWVudCB7CisgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChEYXRlVGltZVNlY29uZEZpZWxk
RWxlbWVudCk7CisKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPERhdGVUaW1lU2Vjb25kRmllbGRF
bGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmLCBGaWVsZE93bmVyJik7CisKK3ByaXZhdGU6CisgICAg
RGF0ZVRpbWVTZWNvbmRGaWVsZEVsZW1lbnQoRG9jdW1lbnQmLCBGaWVsZE93bmVyJik7CisKKyAg
ICAvLyBEYXRlVGltZUZpZWxkRWxlbWVudCBmdW5jdGlvbnM6CisgICAgdmlydHVhbCB2b2lkIHBv
cHVsYXRlRGF0ZVRpbWVGaWVsZHNTdGF0ZShEYXRlVGltZUZpZWxkc1N0YXRlJik7CisgICAgdmly
dHVhbCB2b2lkIHNldFZhbHVlQXNEYXRlKGNvbnN0IERhdGVDb21wb25lbnRzJik7Cit9OworCiBj
bGFzcyBEYXRlVGltZVN5bWJvbGljTW9udGhGaWVsZEVsZW1lbnQgZmluYWwgOiBwdWJsaWMgRGF0
ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChE
YXRlVGltZVN5bWJvbGljTW9udGhGaWVsZEVsZW1lbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50LmNwcApp
bmRleCA1Yzc3YTdhODFhY2JiNTExMzEyMTQwMDQxMTdkMWUyOWQxMTI1MTllLi5mYzA3MjQ3NjU3
MWUzYWNmYTYyYmY0ZjFhNWMyZTA4MTVkYTgxZDk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9EYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudC5jcHAKQEAg
LTU3LDYgKzU3LDExIEBAIERhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudDo6RGF0ZVRpbWVOdW1l
cmljRmllbGRFbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgRmllCiB7CiB9CiAKK2ludCBEYXRl
VGltZU51bWVyaWNGaWVsZEVsZW1lbnQ6Om1heGltdW0oKSBjb25zdAoreworICAgIHJldHVybiBt
X3JhbmdlLm1heGltdW07Cit9CisKIFN0cmluZyBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQ6
OmZvcm1hdFZhbHVlKGludCB2YWx1ZSkgY29uc3QKIHsKICAgICBMb2NhbGUmIGxvY2FsZSA9IGxv
Y2FsZUZvck93bmVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9E
YXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L0RhdGVUaW1lTnVtZXJpY0ZpZWxkRWxlbWVudC5oCmluZGV4IDNlZWI5NTIzZjNkMzE1ODIzOTFi
NTg2OTkxMGY5ZDZkNDNjMzY4ZjguLmFiMjU3ZWUzNmNmNzQwMGRkNmVmMmI1YWYxOTY0YTRmNTlh
MDM5MjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lTnVt
ZXJpY0ZpZWxkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVU
aW1lTnVtZXJpY0ZpZWxkRWxlbWVudC5oCkBAIC01MCw2ICs1MCw4IEBAIHB1YmxpYzoKIHByb3Rl
Y3RlZDoKICAgICBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQoRG9jdW1lbnQmLCBGaWVsZE93
bmVyJiwgY29uc3QgUmFuZ2UmLCBjb25zdCBTdHJpbmcmIHBsYWNlaG9sZGVyKTsKIAorICAgIGlu
dCBtYXhpbXVtKCkgY29uc3Q7CisKICAgICAvLyBEYXRlVGltZUZpZWxkRWxlbWVudCBmdW5jdGlv
bnM6CiAgICAgYm9vbCBoYXNWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgaW5pdGlhbGl6
ZShjb25zdCBBdG9tU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3No
YWRvdy9EYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQuY3BwCmluZGV4IDIyZWJkODlh
ZTFhMTVhNDcwYTczYWJiMzY0M2IyZjEzZjc4MTI0NTEuLmNlYzc3MjkwNjRiNmM4NjU0Yzk2MTg0
NjkxN2RkNzlmNDE5ZDc2YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQuY3BwCkBAIC00OSw2ICs0OSw3
IEBAIERhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQ6OkRhdGVUaW1lU3ltYm9saWNGaWVsZEVs
ZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBGCiAgICAgOiBEYXRlVGltZUZpZWxkRWxlbWVudChk
b2N1bWVudCwgZmllbGRPd25lcikKICAgICAsIG1fc3ltYm9scyhzeW1ib2xzKQogICAgICwgbV92
aXNpYmxlRW1wdHlWYWx1ZShtYWtlVmlzaWJsZUVtcHR5VmFsdWUoc3ltYm9scykpCisgICAgLCBt
X3R5cGVBaGVhZCh0aGlzKQogewogICAgIEFTU0VSVCghbV9zeW1ib2xzLmlzRW1wdHkoKSk7CiB9
CkBAIC0xMTEsOSArMTEyLDMyIEBAIFN0cmluZyBEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50
Ojp2aXNpYmxlVmFsdWUoKSBjb25zdAogICAgIHJldHVybiBoYXNWYWx1ZSgpID8gbV9zeW1ib2xz
W21fc2VsZWN0ZWRJbmRleF0gOiB2aXNpYmxlRW1wdHlWYWx1ZSgpOwogfQogCi12b2lkIERhdGVU
aW1lU3ltYm9saWNGaWVsZEVsZW1lbnQ6OmhhbmRsZUtleWJvYXJkRXZlbnQoS2V5Ym9hcmRFdmVu
dCYpCit2b2lkIERhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1lbnQ6OmhhbmRsZUtleWJvYXJkRXZl
bnQoS2V5Ym9hcmRFdmVudCYga2V5Ym9hcmRFdmVudCkKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVt
ZW50IGFmdGVyIGFkZGluZyBsYXlvdXQgZm9yIDxpbnB1dCB0eXBlPXRpbWU+LgorICAgIGlmIChr
ZXlib2FyZEV2ZW50LnR5cGUoKSAhPSBldmVudE5hbWVzKCkua2V5cHJlc3NFdmVudCkKKyAgICAg
ICAgcmV0dXJuOworCisgICAga2V5Ym9hcmRFdmVudC5zZXREZWZhdWx0SGFuZGxlZCgpOworCisg
ICAgaW50IGluZGV4ID0gbV90eXBlQWhlYWQuaGFuZGxlRXZlbnQoJmtleWJvYXJkRXZlbnQsIFR5
cGVBaGVhZDo6TWF0Y2hQcmVmaXggfCBUeXBlQWhlYWQ6OkN5Y2xlRmlyc3RDaGFyIHwgVHlwZUFo
ZWFkOjpNYXRjaEluZGV4KTsKKyAgICBpZiAoaW5kZXggPCAwKQorICAgICAgICByZXR1cm47Cisg
ICAgc2V0VmFsdWVBc0ludGVnZXIoaW5kZXgsIERpc3BhdGNoSW5wdXRBbmRDaGFuZ2VFdmVudHMp
OworfQorCitpbnQgRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudDo6aW5kZXhPZlNlbGVjdGVk
T3B0aW9uKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9zZWxlY3RlZEluZGV4OworfQorCitpbnQg
RGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudDo6b3B0aW9uQ291bnQoKSBjb25zdAoreworICAg
IHJldHVybiBtX3N5bWJvbHMuc2l6ZSgpOworfQorCitTdHJpbmcgRGF0ZVRpbWVTeW1ib2xpY0Zp
ZWxkRWxlbWVudDo6b3B0aW9uQXRJbmRleChpbnQgaW5kZXgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fc3ltYm9sc1tpbmRleF07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lU3ltYm9saWNGaWVsZEVs
ZW1lbnQuaAppbmRleCA4MDlkZTI2ZDNkYTZhYjgxYTc5NmZhZWZlOTU3MWEzMGJkNGY1ZmUwLi4x
ZTVhZGRmOWU1Zjk4ZThkYjljZjVhMmI5NmNkNjU0YzA0MTIyYjQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVu
dC5oCkBAIC0yOSwxMCArMjksMTEgQEAKICNpZiBFTkFCTEUoREFURV9BTkRfVElNRV9JTlBVVF9U
WVBFUykKIAogI2luY2x1ZGUgIkRhdGVUaW1lRmllbGRFbGVtZW50LmgiCisjaW5jbHVkZSAiVHlw
ZUFoZWFkLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRGF0ZVRpbWVTeW1ib2xp
Y0ZpZWxkRWxlbWVudCA6IHB1YmxpYyBEYXRlVGltZUZpZWxkRWxlbWVudCB7CitjbGFzcyBEYXRl
VGltZVN5bWJvbGljRmllbGRFbGVtZW50IDogcHVibGljIERhdGVUaW1lRmllbGRFbGVtZW50LCBw
dWJsaWMgVHlwZUFoZWFkRGF0YVNvdXJjZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChE
YXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50KTsKIHByb3RlY3RlZDoKICAgICBEYXRlVGltZVN5
bWJvbGljRmllbGRFbGVtZW50KERvY3VtZW50JiwgRmllbGRPd25lciYsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+Jik7CkBAIC01NSw5ICs1NiwxNSBAQCBwcml2YXRlOgogICAgIFN0cmluZyB2aXNpYmxl
VmFsdWUoKSBjb25zdCBmaW5hbDsKICAgICB2b2lkIGhhbmRsZUtleWJvYXJkRXZlbnQoS2V5Ym9h
cmRFdmVudCYpIGZpbmFsOwogCisgICAgLy8gVHlwZUFoZWFkRGF0YVNvdXJjZSBmdW5jdGlvbnM6
CisgICAgaW50IGluZGV4T2ZTZWxlY3RlZE9wdGlvbigpIGNvbnN0IGZpbmFsOworICAgIGludCBv
cHRpb25Db3VudCgpIGNvbnN0IGZpbmFsOworICAgIFN0cmluZyBvcHRpb25BdEluZGV4KGludCBp
bmRleCkgY29uc3QgZmluYWw7CisKICAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiBtX3N5bWJvbHM7
CiAKICAgICBjb25zdCBBdG9tU3RyaW5nIG1fdmlzaWJsZUVtcHR5VmFsdWU7CisgICAgVHlwZUFo
ZWFkIG1fdHlwZUFoZWFkOwogICAgIGludCBtX3NlbGVjdGVkSW5kZXggeyBpbnZhbGlkSW5kZXgg
fTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUGxhdGZv
cm1Mb2NhbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2Fs
ZS5jcHAKaW5kZXggYjViMGVlYTQ2MjA0OWJkMWI4MzAwNzczMGViMTllMzllNGRiZGIxNC4uZjQ3
MjAwYjU3MjE2OGQ0ZWVmYWE3NGU5MDc1NzFhZDVjOTJhYjAxOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5jcHAKQEAgLTM1NCw2ICszNTQsMTIg
QEAgU3RyaW5nIExvY2FsZTo6Zm9ybWF0RGF0ZVRpbWUoY29uc3QgRGF0ZUNvbXBvbmVudHMmIGRh
dGUsIEZvcm1hdFR5cGUgZm9ybWF0VHlwZSkKICAgICB9CiAgICAgcmV0dXJuIGJ1aWxkZXIudG9T
dHJpbmcoKTsKIH0KKworU3RyaW5nIExvY2FsZTo6bG9jYWxpemVkRGVjaW1hbFNlcGFyYXRvcigp
Cit7CisgICAgaW5pdGlhbGl6ZUxvY2FsZURhdGEoKTsKKyAgICByZXR1cm4gbV9kZWNpbWFsU3lt
Ym9sc1tEZWNpbWFsU2VwYXJhdG9ySW5kZXhdOworfQogI2VuZGlmCiAKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUGxhdGZvcm1Mb2NhbGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvUGxhdGZvcm1Mb2NhbGUuaAppbmRleCBlNjNjMGNhZGJhZDlj
MzFjYzliOTA4MzIyY2NkNjQyOTNiZjk0YmMyLi40YmYwNzVjMTVjZGE0YWU0MmU1M2RhYmQ3ZGY4
NmVlZmNjNjI4ODNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1Bs
YXRmb3JtTG9jYWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9QbGF0Zm9y
bUxvY2FsZS5oCkBAIC0xMDgsNiArMTA4LDggQEAgcHVibGljOgogICAgIC8vIGxvY2FsaXplZCBz
dHJpbmcgb2YgSmFudWFyeSwgYW5kIHRoZSBsYXN0IGl0ZW0gaXMgYSBsb2NhbGl6ZWQgc3RyaW5n
IG9mCiAgICAgLy8gRGVjZW1iZXIuIFRoZXNlIHN0cmluZ3Mgc2hvdWxkIG5vdCBiZSBhYmJyZXZp
YXRpb25zLgogICAgIHZpcnR1YWwgY29uc3QgVmVjdG9yPFN0cmluZz4mIG1vbnRoTGFiZWxzKCkg
PSAwOworCisgICAgU3RyaW5nIGxvY2FsaXplZERlY2ltYWxTZXBhcmF0b3IoKTsKICNlbmRpZgog
CiAjaWYgRU5BQkxFKERBVEVfQU5EX1RJTUVfSU5QVVRfVFlQRVMpCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzA5YjFhZTIw
ZjI5Y2MzMTZjYWQwYTllODAwZTE3Y2I2NjVmMDY5Yy4uM2I3ZWYzOTc2YTI1MzlkZWY2OWRkNWNm
Y2VkNzgzODM1ZTJkMWMyNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIwLTA5LTA3ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFjT1NdIEFkZCBl
ZGl0YWJpbGl0eSB0byBpbnB1dCB0eXBlPXRpbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjE4OAorCisgICAgICAgIFJldmlld2VkIGJ5IERldmlu
IFJvdXNzby4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogZmFzdC9m
b3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVu
dHMtZm9jdXMtYW5kLWJsdXItZXZlbnRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNv
bXBvbmVudHMtZm9jdXMtYW5kLWJsdXItZXZlbnRzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21w
b25lbnRzLWtleWJvYXJkLWV2ZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21w
b25lbnRzLWtleWJvYXJkLWV2ZW50cy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1z
L3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1t
b3VzZS1ldmVudHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL3Rp
bWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1tb3Vz
ZS1ldmVudHMuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRp
dGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtc2Vjb25kLWFuZC1taWxs
aXNlY29uZC1maWVsZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMv
dGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLXNl
Y29uZC1hbmQtbWlsbGlzZWNvbmQtZmllbGQuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZv
cm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azIv
ZmFzdC9mb3Jtcy90aW1lL3RpbWUtYXBwZWFyYW5jZS1iYXNpYy1leHBlY3RlZC50eHQ6IFJlYmFz
ZWxpbmVkIGZvciBuZXcgYXBwZWFyYW5jZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL2Zh
c3QvZm9ybXMvdGltZS90aW1lLWlucHV0LXJlbmRlcmluZy1iYXNpYy1leHBlY3RlZC50eHQ6IFJl
YmFzZWxpbmVkIGZvciBuZXcgYXBwZWFyYW5jZS4KKwogMjAyMC0wOS0wOCAgVGltIEhvcnRvbiAg
PHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBpT1M6IDxhdHRhY2htZW50Pidz
IFF1aWNrTG9vayB0aHVtYm5haWxzIGNhbiBhcHBlYXIgc3F1aXNoZWQKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDVkMjhiYTYyMjQ3MGVmZmRiNzVlZTk2MTY2M2Q5MmY5YzA5MjQ0M2YuLjE1YTkyMGZi
ZTkyMjg4N2Y2ZGVkNDhmMDUyOGVjZTBhNjI0NWVlZjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAt
MzEsNiArMzEsNyBAQCB0aWxlZC1kcmF3aW5nIFsgU2tpcCBdCiBmYXN0L2Nzcy9pb3MgWyBTa2lw
IF0KIGZhc3QvY3NzL3dhdGNob3MgWyBTa2lwIF0KIGZhc3QvZm9ybXMvZGF0ZS9kYXRlLWVkaXRh
YmxlLWNvbXBvbmVudHMgWyBTa2lwIF0KK2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNv
bXBvbmVudHMgWyBTa2lwIF0KIGZhc3QvZG9tL1dpbmRvdy93YXRjaG9zIFsgU2tpcCBdCiBmYXN0
L2Zvcm1zL3NlbGVjdC9tYWMtd2syIFsgU2tpcCBdCiBmYXN0L2Zvcm1zL3RleHRhcmVhL2lvcyBb
IFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRp
dGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtZm9jdXMtYW5kLWJsdXIt
ZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVk
aXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWZvY3VzLWFuZC1ibHVy
LWV2ZW50cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjAyMGM2YjljM2Q5Y2QyYzY1MmExNDE5
YzQxNTZlY2RkN2I1ZTNmNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRz
LWZvY3VzLWFuZC1ibHVyLWV2ZW50cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2MSBAQAorVGVz
dCBmb3IgZm9jdXMgYW5kIGJsdXIgZXZlbnRzIGZvciA8aW5wdXQgdHlwZT10aW1lPgorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworRm9jdXMvYmx1ciB1c2luZyBtb3VzZQorCitQQVNT
IGZvY3VzRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBibHVyRXZlbnRzRmlyZWQgaXMgMAorUEFTUyBm
b2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDAKK1BBU1MgZm9j
dXNFdmVudHNGaXJlZCBpcyAxCitQQVNTIGJsdXJFdmVudHNGaXJlZCBpcyAwCitQQVNTIGZvY3Vz
RXZlbnRzRmlyZWQgaXMgMQorUEFTUyBibHVyRXZlbnRzRmlyZWQgaXMgMAorUEFTUyBmb2N1c0V2
ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDEKKworRm9jdXMvYmx1ciB1
c2luZyBrZXlib2FyZAorCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBibHVyRXZl
bnRzRmlyZWQgaXMgMAorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1ckV2ZW50
c0ZpcmVkIGlzIDAKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAxCitQQVNTIGJsdXJFdmVudHNG
aXJlZCBpcyAwCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBibHVyRXZlbnRzRmly
ZWQgaXMgMQorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDIKK1BBU1MgYmx1ckV2ZW50c0ZpcmVk
IGlzIDEKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAyCitQQVNTIGJsdXJFdmVudHNGaXJlZCBp
cyAxCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMgorUEFTUyBibHVyRXZlbnRzRmlyZWQgaXMg
MQorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDIKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDIK
KworRm9jdXMvYmx1ciBvbiBkaXNhYmxlZCBpbnB1dAorCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQg
aXMgMAorUEFTUyBibHVyRXZlbnRzRmlyZWQgaXMgMAorUEFTUyBkb2N1bWVudC5hY3RpdmVFbGVt
ZW50LmlkIGlzICJhZnRlciIKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAwCitQQVNTIGJsdXJF
dmVudHNGaXJlZCBpcyAwCitQQVNTIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuaWQgaXMgImJlZm9y
ZSIKK1BBU1MgZm9jdXNFdmVudHNGaXJlZCBpcyAwCitQQVNTIGJsdXJFdmVudHNGaXJlZCBpcyAw
CisKK0ZvY3VzL2JsdXIgb24gcmVhZG9ubHkgaW5wdXQKKworUEFTUyBmb2N1c0V2ZW50c0ZpcmVk
IGlzIDEKK1BBU1MgYmx1ckV2ZW50c0ZpcmVkIGlzIDAKK1BBU1MgZG9jdW1lbnQuYWN0aXZlRWxl
bWVudC5pZCBpcyAiYWZ0ZXIiCitQQVNTIGZvY3VzRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBibHVy
RXZlbnRzRmlyZWQgaXMgMQorUEFTUyBmb2N1c0V2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgYmx1ckV2
ZW50c0ZpcmVkIGlzIDEKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1l
LWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWZvY3VzLWFuZC1i
bHVyLWV2ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRpdGFi
bGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtZm9jdXMtYW5kLWJsdXItZXZl
bnRzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDEyMmM1NmIyOTZjMDcwZmFhODYzYWQ5MWY1ZDdmZTkwYjZl
ZjdiMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1l
LWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWZvY3VzLWFuZC1i
bHVyLWV2ZW50cy5odG1sCkBAIC0wLDAgKzEsMTY4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVs
cGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2lucHV0IHsKKyAgICB3aWR0aDogMzAwcHg7Cit9
CisKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCB7CisgICAgZm9udC1zaXplOiAz
MHB4OworfQorCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQgeworICAg
IGZvbnQtc2l6ZTogMzBweDsKK30KKworaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51
dGUtZmllbGQgeworICAgIGZvbnQtc2l6ZTogMzBweDsKK30KKworaW5wdXQ6Oi13ZWJraXQtZGF0
ZXRpbWUtZWRpdC1tZXJpZGllbS1maWVsZCB7CisgICAgZm9udC1zaXplOiAzMHB4OworfQorPC9z
dHlsZT4KKzwvaGVhZD4KKzxib2R5PgorCis8aW5wdXQgaWQ9ImJlZm9yZSIgdHlwZT0idGV4dCI+
Cis8aW5wdXQgaWQ9ImlucHV0IiB0eXBlPSJ0aW1lIiB2YWx1ZT0iMTg6MzAiPgorPGlucHV0IGlk
PSJhZnRlciIgdHlwZT0idGV4dCI+CisKKzxzY3JpcHQ+CisKK2Rlc2NyaXB0aW9uKCJUZXN0IGZv
ciBmb2N1cyBhbmQgYmx1ciBldmVudHMgZm9yICZsdDtpbnB1dCB0eXBlPXRpbWUmZ3Q7Iik7CisK
K2JsdXJFdmVudHNGaXJlZCA9IDA7CitmdW5jdGlvbiBvbkJsdXJFdmVudCgpIHsKKyAgICBibHVy
RXZlbnRzRmlyZWQrKzsKK30KKworZm9jdXNFdmVudHNGaXJlZCA9IDA7CitmdW5jdGlvbiBvbkZv
Y3VzRXZlbnQoKSB7CisgICAgZm9jdXNFdmVudHNGaXJlZCsrOworfQorCitmdW5jdGlvbiBhc3Nl
cnRGb2N1c0FuZEJsdXJDb3VudChudW1Gb2N1c0V2ZW50cywgbnVtQmx1ckV2ZW50cykgeworICAg
IHNob3VsZEJlKCJmb2N1c0V2ZW50c0ZpcmVkIiwgbnVtRm9jdXNFdmVudHMudG9TdHJpbmcoKSk7
CisgICAgc2hvdWxkQmUoImJsdXJFdmVudHNGaXJlZCIsIG51bUJsdXJFdmVudHMudG9TdHJpbmco
KSk7Cit9CisKK2Z1bmN0aW9uIHJlc2V0Rm9jdXNBbmRCbHVyQ291bnQoKSB7CisgICAgYmx1ckV2
ZW50c0ZpcmVkID0gMDsKKyAgICBmb2N1c0V2ZW50c0ZpcmVkID0gMDsKK30KKworZnVuY3Rpb24g
bW91c2VDbGlja09uKHgsIHkpIHsKKyAgICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlcikKKyAgICAg
ICAgcmV0dXJuOworICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHggKyBpbnB1dC5vZmZzZXRM
ZWZ0LCB5ICsgaW5wdXQub2Zmc2V0VG9wKTsKKyAgICBldmVudFNlbmRlci5tb3VzZURvd24oKTsK
KyAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7Cit9CisKK2lucHV0LmFkZEV2ZW50TGlzdGVuZXIo
ImJsdXIiLCBvbkJsdXJFdmVudCk7CitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsIG9u
Rm9jdXNFdmVudCk7CisKK2NvbnN0IGNlbnRlciA9IGlucHV0Lm9mZnNldEhlaWdodCAvIDI7CisK
K2RlYnVnKCJGb2N1cy9ibHVyIHVzaW5nIG1vdXNlXG4iKTsKKworLy8gQ2xpY2sgb24gaG91ciBm
aWVsZC4KK21vdXNlQ2xpY2tPbigyMCwgY2VudGVyKTsKK2Fzc2VydEZvY3VzQW5kQmx1ckNvdW50
KDEsIDApOworLy8gQ2xpY2sgb24gbWludXRlIGZpZWxkLgorbW91c2VDbGlja09uKDYwLCBjZW50
ZXIpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwgMCk7CisvLyBDbGljayBvbiBBTS9QTSBm
aWVsZC4KK21vdXNlQ2xpY2tPbigxMjAsIGNlbnRlcik7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3Vu
dCgxLCAwKTsKKy8vIENsaWNrIG9uIGNvbnRyb2wsIGJ1dCBub3QgYSBzcGVjaWZpYyBmaWVsZC4K
K21vdXNlQ2xpY2tPbigyNTAsIGNlbnRlcik7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgxLCAw
KTsKKy8vIENsaWNrIG91dHNpZGUgY29udHJvbC4KK21vdXNlQ2xpY2tPbihpbnB1dC5vZmZzZXRX
aWR0aCArIDUsIGlucHV0Lm9mZnNldEhlaWdodCArIDUpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291
bnQoMSwgMSk7CityZXNldEZvY3VzQW5kQmx1ckNvdW50KCk7CisKK2RlYnVnKCJcbkZvY3VzL2Js
dXIgdXNpbmcga2V5Ym9hcmRcbiIpOworCitVSUhlbHBlci5hY3RpdmF0ZUVsZW1lbnQoYmVmb3Jl
KTsKKy8vIEZvY3VzIG9uIGhvdXIgZmllbGQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIpOworYXNz
ZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwgMCk7CisvLyBGb2N1cyBvbiBtaW51dGUgZmllbGQuCitV
SUhlbHBlci5rZXlEb3duKCJcdCIpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwgMCk7Cisv
LyBGb2N1cyBvbiBBTS9QTSBmaWVsZC4KK1VJSGVscGVyLmtleURvd24oIlx0Iik7Cithc3NlcnRG
b2N1c0FuZEJsdXJDb3VudCgxLCAwKTsKKy8vIEZvY3VzIG91dC4KK1VJSGVscGVyLmtleURvd24o
Ilx0Iik7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgxLCAxKTsKKy8vIEZvY3VzIG9uIGhvdXIg
ZmllbGQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIsIFsic2hpZnRLZXkiXSk7Cithc3NlcnRGb2N1
c0FuZEJsdXJDb3VudCgyLCAxKTsKKy8vIEZvY3VzIG9uIG1pbnV0ZSBmaWVsZC4KK1VJSGVscGVy
LmtleURvd24oIlx0IiwgWyJzaGlmdEtleSJdKTsKK2Fzc2VydEZvY3VzQW5kQmx1ckNvdW50KDIs
IDEpOworLy8gRm9jdXMgb24gQU0vUE0gZmllbGQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIsIFsi
c2hpZnRLZXkiXSk7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgyLCAxKTsKKy8vIEZvY3VzIG91
dC4KK1VJSGVscGVyLmtleURvd24oIlx0IiwgWyJzaGlmdEtleSJdKTsKK2Fzc2VydEZvY3VzQW5k
Qmx1ckNvdW50KDIsIDIpOworcmVzZXRGb2N1c0FuZEJsdXJDb3VudCgpOworCitkZWJ1ZygiXG5G
b2N1cy9ibHVyIG9uIGRpc2FibGVkIGlucHV0XG4iKQorCitpbnB1dC5kaXNhYmxlZCA9IHRydWU7
CisKK1VJSGVscGVyLmFjdGl2YXRlRWxlbWVudChiZWZvcmUpOworLy8gVGFiIHRvIGZvY3VzIHNo
b3VsZCBza2lwIGRpc2FibGVkIGlucHV0LgorVUlIZWxwZXIua2V5RG93bigiXHQiKTsKK2Fzc2Vy
dEZvY3VzQW5kQmx1ckNvdW50KDAsIDApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVu
dC5hY3RpdmVFbGVtZW50LmlkIiwgImFmdGVyIik7CisvLyBTaGlmdCtUYWIgc2hvdWxkIHNraXAg
ZGlzYWJsZWQgaW5wdXQuCitVSUhlbHBlci5rZXlEb3duKCJcdCIsIFsic2hpZnRLZXkiXSk7Cith
c3NlcnRGb2N1c0FuZEJsdXJDb3VudCgwLCAwKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiZG9j
dW1lbnQuYWN0aXZlRWxlbWVudC5pZCIsICJiZWZvcmUiKTsKKy8vIENsaWNraW5nIG9uIGFueSBw
YXJ0IG9mIHRoZSBjb250cm9sIHNob3VsZCBub3QgZm9jdXMvYmx1ciBldmVudHMuCittb3VzZUNs
aWNrT24oMjAsIGNlbnRlcik7Cittb3VzZUNsaWNrT24oNjAsIGNlbnRlcik7Cittb3VzZUNsaWNr
T24oMTIwLCBjZW50ZXIpOworbW91c2VDbGlja09uKDI1MCwgY2VudGVyKTsKK21vdXNlQ2xpY2tP
bihpbnB1dC5vZmZzZXRXaWR0aCArIDUsIGlucHV0Lm9mZnNldEhlaWdodCArIDUpOworYXNzZXJ0
Rm9jdXNBbmRCbHVyQ291bnQoMCwgMCk7CityZXNldEZvY3VzQW5kQmx1ckNvdW50KCk7CisKK2Rl
YnVnKCJcbkZvY3VzL2JsdXIgb24gcmVhZG9ubHkgaW5wdXRcbiIpCisKK2lucHV0LmRpc2FibGVk
ID0gZmFsc2U7CitpbnB1dC5yZWFkT25seSA9IHRydWU7CisKK1VJSGVscGVyLmFjdGl2YXRlRWxl
bWVudChiZWZvcmUpOworLy8gVGFiIHRvIGZvY3VzIHNob3VsZCBub3Qgc2tpcCByZWFkb25seSBp
bnB1dC4KK1VJSGVscGVyLmtleURvd24oIlx0Iik7Cithc3NlcnRGb2N1c0FuZEJsdXJDb3VudCgx
LCAwKTsKK1VJSGVscGVyLmtleURvd24oIlx0Iik7CitVSUhlbHBlci5rZXlEb3duKCJcdCIpOwor
VUlIZWxwZXIua2V5RG93bigiXHQiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQu
YWN0aXZlRWxlbWVudC5pZCIsICJhZnRlciIpOworYXNzZXJ0Rm9jdXNBbmRCbHVyQ291bnQoMSwg
MSk7CisvLyBDbGlja2luZyBvbiBhbnkgcGFydCBvZiB0aGUgY29udHJvbCBzaG91bGQgZmlyZSB0
aGUgYXBwcm9wcmlhdGUgZXZlbnRzLgorbW91c2VDbGlja09uKDIwLCBjZW50ZXIpOworbW91c2VD
bGlja09uKDYwLCBjZW50ZXIpOworbW91c2VDbGlja09uKDEyMCwgY2VudGVyKTsKK21vdXNlQ2xp
Y2tPbigyNTAsIGNlbnRlcik7Cittb3VzZUNsaWNrT24oaW5wdXQub2Zmc2V0V2lkdGggKyA1LCBp
bnB1dC5vZmZzZXRIZWlnaHQgKyA1KTsKK2Fzc2VydEZvY3VzQW5kQmx1ckNvdW50KDEsIDEpOwor
cmVzZXRGb2N1c0FuZEJsdXJDb3VudCgpOworCis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRp
dGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMta2V5Ym9hcmQtZXZlbnRz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxl
LWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJvYXJkLWV2ZW50cy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDhiNDlkMzRiZGUyNDZhYzlkOWEzNmFmYzM3OTQyNWEzZjRj
OWZkYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1l
LWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJvYXJkLWV2
ZW50cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3MiBAQAorVGVzdCBmb3Iga2V5Ym9hcmQgb3Bl
cmF0aW9ucyBmb3IgPGlucHV0IHR5cGU9dGltZT4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKKworRGlnaXQga2V5cworUEFTUyBpbnB1dC52YWx1ZSBpcyAiMDA6MDIiCitQQVNTIGNo
YW5nZUV2ZW50c0ZpcmVkIGlzIDEKK1BBU1MgaW5wdXRFdmVudHNGaXJlZCBpcyAxCisKK0RpZ2l0
IGtleXMgd2l0aCB0aW1lb3V0CitQQVNTIGlucHV0LnZhbHVlIGlzICIxNDowNSIKK1BBU1MgY2hh
bmdlRXZlbnRzRmlyZWQgaXMgMQorUEFTUyBpbnB1dEV2ZW50c0ZpcmVkIGlzIDEKKworRGlnaXQg
a2V5cyBjbGFtcCB2YWx1ZQorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTM6MjIiCitQQVNTIGlucHV0
LnZhbHVlIGlzICIxMjoyMiIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjEzOjIyIgorUEFTUyBpbnB1
dC52YWx1ZSBpcyAiMTM6MDYiCitQQVNTIGlucHV0LnZhbHVlIGlzICIxMzo1OSIKK1BBU1MgY2hh
bmdlRXZlbnRzRmlyZWQgaXMgNQorUEFTUyBpbnB1dEV2ZW50c0ZpcmVkIGlzIDUKKworTGVmdC9S
aWdodCBhcnJvdyBrZXlzCitQQVNTIGlucHV0LnZhbHVlIGlzICIwMjowMiIKK1BBU1MgaW5wdXQu
dmFsdWUgaXMgIjAzOjAzIgorUEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyA1CitQQVNTIGlucHV0
RXZlbnRzRmlyZWQgaXMgNQorCitVcC9Eb3duIGFycm93IGtleXMKK1BBU1MgaW5wdXQudmFsdWUg
aXMgIjEyOjU5IgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTM6NTkiCitQQVNTIGlucHV0LnZhbHVl
IGlzICIxMjo1OSIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjIzOjU5IgorUEFTUyBpbnB1dC52YWx1
ZSBpcyAiMTE6NTkiCitQQVNTIGlucHV0LnZhbHVlIGlzICIyMzo1OSIKK1BBU1MgaW5wdXQudmFs
dWUgaXMgIjExOjU5IgorUEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyA3CitQQVNTIGlucHV0RXZl
bnRzRmlyZWQgaXMgNworCitUYWIga2V5CitQQVNTIGlucHV0LnZhbHVlIGlzICIwMjowMiIKK1BB
U1MgZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5pZCBpcyAiYWZ0ZXIiCitQQVNTIGlucHV0LnZhbHVl
IGlzICIwMzowMyIKK1BBU1MgZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5pZCBpcyAiYmVmb3JlIgor
UEFTUyBjaGFuZ2VFdmVudHNGaXJlZCBpcyAzCitQQVNTIGlucHV0RXZlbnRzRmlyZWQgaXMgMwor
CitCYWNrc3BhY2Uga2V5CitQQVNTIGlucHV0LnZhbHVlIGlzICIiCitQQVNTIGlucHV0LnZhbHVl
IGlzICIxOTozMCIKK1BBU1MgY2hhbmdlRXZlbnRzRmlyZWQgaXMgMgorUEFTUyBpbnB1dEV2ZW50
c0ZpcmVkIGlzIDIKKworRGVsZXRlIGtleQorUEFTUyBpbnB1dC52YWx1ZSBpcyAiIgorUEFTUyBj
aGFuZ2VFdmVudHNGaXJlZCBpcyAxCitQQVNTIGlucHV0RXZlbnRzRmlyZWQgaXMgMQorCitEaXNh
YmxlZC9yZWFkb25seQorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMDk6MDEiCitQQVNTIGlucHV0LnZh
bHVlIGlzICIwMTowMSIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjAxOjAxIgorUEFTUyBpbnB1dC52
YWx1ZSBpcyAiMDE6MDIiCitQQVNTIGNoYW5nZUV2ZW50c0ZpcmVkIGlzIDIKK1BBU1MgaW5wdXRF
dmVudHNGaXJlZCBpcyAyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKyAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGlt
ZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1rZXlib2FyZC1l
dmVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNv
bXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLWtleWJvYXJkLWV2ZW50cy5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjFiYWJkOTU2MmEwZGY2MDQ5OTUzY2FmYTAzYWM2YWJkNTkwNTQzZTYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1j
b21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1rZXlib2FyZC1ldmVudHMuaHRtbApA
QCAtMCwwICsxLDE3NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKworPGlucHV0IGlkPSJiZWZvcmUiIHR5cGU9InRleHQiPgorPGlu
cHV0IGlkPSJpbnB1dCIgdHlwZT0idGltZSI+Cis8aW5wdXQgaWQ9ImFmdGVyIiB0eXBlPSJ0ZXh0
Ij4KKworPHNjcmlwdD4KKworanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2NoYW5nZUV2ZW50c0Zp
cmVkID0gMDsKK2Z1bmN0aW9uIG9uQ2hhbmdlRXZlbnQoKSB7CisgICAgY2hhbmdlRXZlbnRzRmly
ZWQrKzsKK30KKworaW5wdXRFdmVudHNGaXJlZCA9IDA7CitmdW5jdGlvbiBvbklucHV0RXZlbnQo
KSB7CisgICAgaW5wdXRFdmVudHNGaXJlZCsrOworfQorCitmdW5jdGlvbiBiZWdpblRlc3QodGl0
bGUsIHZhbHVlKSB7CisgICAgZGVidWcoIlxuIiArIHRpdGxlKTsKKyAgICBpbnB1dC52YWx1ZSA9
IHZhbHVlIHx8ICIiOworICAgIGlucHV0LmJsdXIoKTsKKyAgICBpbnB1dC5mb2N1cygpOworCisg
ICAgY2hhbmdlRXZlbnRzRmlyZWQgPSAwOworICAgIGlucHV0RXZlbnRzRmlyZWQgPSAwOworfQor
CitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLCBvbkNoYW5nZUV2ZW50KTsKK2lucHV0
LmFkZEV2ZW50TGlzdGVuZXIoImlucHV0Iiwgb25JbnB1dEV2ZW50KTsKKworYWRkRXZlbnRMaXN0
ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKKyAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3Iga2V5
Ym9hcmQgb3BlcmF0aW9ucyBmb3IgJmx0O2lucHV0IHR5cGU9dGltZSZndDsiKTsKKworICAgIGJl
Z2luVGVzdCgiRGlnaXQga2V5cyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBb
aGhdOm1tIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiMSIpOyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8vIC0+IFswMV06bW0gdHQKKyAgICBVSUhlbHBlci5rZXlEb3duKCIyIik7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gWzEyXTptbSB0dAorICAgIFVJ
SGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyAt
PiAxMjpbbW1dIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiMiIpOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8vIC0+IDEyOlswMl0gdHQKKyAgICBVSUhlbHBlci5rZXlEb3duKCJy
aWdodEFycm93Iik7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMTI6MDIgW3R0XQorICAg
IFVJSGVscGVyLmtleURvd24oIkEiKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
LyAtPiAxMjowMiBbQU1dCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIs
ICIwMDowMiIpOworICAgIHNob3VsZEJlKCJjaGFuZ2VFdmVudHNGaXJlZCIsICIxIik7CisgICAg
c2hvdWxkQmUoImlucHV0RXZlbnRzRmlyZWQiLCAiMSIpOworCisgICAgYmVnaW5UZXN0KCJEaWdp
dCBrZXlzIHdpdGggdGltZW91dCIpOyAgICAgICAgICAgICAgICAgIC8vIFtoaF06bW0gdHQKKyAg
ICBVSUhlbHBlci5rZXlEb3duKCIyIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ly8gWzAyXTptbSB0dAorICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsgICAgICAg
ICAgICAgICAgICAgICAgICAvLyAtPiAwMjpbbW1dIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigi
NCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOlswNF0gdHQKKyAg
ICBhd2FpdCBVSUhlbHBlci5kZWxheUZvcigxNTAwKTsgICAgICAgICAgICAgICAgICAgICAgICAg
Ly8gV2FpdC4KKyAgICBVSUhlbHBlci5rZXlEb3duKCI1Iik7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLy8gLT4gMDI6WzA1XSB0dAorICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0
QXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAwMjowNSBbdHRdCisgICAgVUlI
ZWxwZXIua2V5RG93bigiUCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+
IDAyOjA1IFtQTV0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjE0
OjA1Iik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2ZW50c0ZpcmVkIiwgIjEiKTsKKyAgICBzaG91
bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICIxIik7CisKKyAgICBiZWdpblRlc3QoIkRpZ2l0IGtl
eXMgY2xhbXAgdmFsdWUiLCAiMTI6MjIiKTsgICAgICAgICAgLy8gWzEyXToyMiBQTQorICAgIFVJ
SGVscGVyLmtleURvd24oIjEiKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAt
PiBbMDFdOjIyIFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIx
MzoyMiIpOworICAgIFVJSGVscGVyLmtleURvd24oIjMiKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyAtPiBbMTJdOjIyIFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJp
bnB1dC52YWx1ZSIsICIxMjoyMiIpOworICAgIFVJSGVscGVyLmtleURvd24oIjAiKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDFdOjIyIFBNCisgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIxMzoyMiIpOworICAgIFVJSGVscGVyLmtleURv
d24oInJpZ2h0QXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAxMzpbMjJdIFBN
CisgICAgVUlIZWxwZXIua2V5RG93bigiNiIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIC0+IDEzOlswNl0gUE0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZh
bHVlIiwgIjEzOjA2Iik7CisgICAgVUlIZWxwZXIua2V5RG93bigiMSIpOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIC0+IDEzOls1OV0gUE0KKyAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImlucHV0LnZhbHVlIiwgIjEzOjU5Iik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2ZW50
c0ZpcmVkIiwgIjUiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICI1Iik7CisK
KyAgICBiZWdpblRlc3QoIkxlZnQvUmlnaHQgYXJyb3cga2V5cyIsICIxNToyNyIpOyAgICAgICAg
ICAgLy8gWzAzXToyNyBQTQorICAgIFVJSGVscGVyLmtleURvd24oIjIiKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDJdOjI3IFBNCisgICAgVUlIZWxwZXIua2V5RG93
bigicmlnaHRBcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOlsyN10gUE0K
KyAgICBVSUhlbHBlci5rZXlEb3duKCIyIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gLT4gMDI6WzAyXSBQTQorICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsg
ICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiAwMjowMiBbUE1dCisgICAgVUlIZWxwZXIua2V5
RG93bigiQSIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOjAyIFtB
TV0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjAyOjAyIik7Cisg
ICAgVUlIZWxwZXIua2V5RG93bigibGVmdEFycm93Iik7ICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIC0+IDAyOlswMl0gQU0KKyAgICBVSUhlbHBlci5rZXlEb3duKCIzIik7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6WzAzXSBBTQorICAgIFVJSGVscGVyLmtleURv
d24oImxlZnRBcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDJdOjAzIEFN
CisgICAgVUlIZWxwZXIua2V5RG93bigiMyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIC0+IFswM106MDMgQU0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZh
bHVlIiwgIjAzOjAzIik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2ZW50c0ZpcmVkIiwgIjUiKTsK
KyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICI1Iik7CisKKyAgICBiZWdpblRlc3Qo
IlVwL0Rvd24gYXJyb3cga2V5cyIsICIyMzo1OSIpOyAgICAgICAgICAgICAgLy8gWzExXTo1OSBQ
TQorICAgIFVJSGVscGVyLmtleURvd24oInVwQXJyb3ciKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvLyAtPiBbMTJdOjU5IFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52
YWx1ZSIsICIxMjo1OSIpOworICAgIFVJSGVscGVyLmtleURvd24oInVwQXJyb3ciKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMDFdOjU5IFBNCisgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJpbnB1dC52YWx1ZSIsICIxMzo1OSIpOworICAgIFVJSGVscGVyLmtleURvd24oImRv
d25BcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbMTJdOjU5IFBNCisgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIxMjo1OSIpOworICAgIFVJSGVs
cGVyLmtleURvd24oImRvd25BcnJvdyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBb
MTFdOjU5IFBNCisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIyMzo1
OSIpOworICAgIFVJSGVscGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsgICAgICAgICAgICAgICAg
ICAgICAgICAvLyAtPiAxMTpbNTldIFBNCisgICAgVUlIZWxwZXIua2V5RG93bigicmlnaHRBcnJv
dyIpOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDExOjU5IFtQTV0KKyAgICBVSUhlbHBl
ci5rZXlEb3duKCJ1cEFycm93Iik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMTE6
NTkgW0FNXQorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMTE6NTki
KTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCJkb3duQXJyb3ciKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gLT4gMTE6NTkgW1BNXQorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQu
dmFsdWUiLCAiMjM6NTkiKTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCJkb3duQXJyb3ciKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMTE6NTkgW0FNXQorICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygiaW5wdXQudmFsdWUiLCAiMTE6NTkiKTsKKyAgICBzaG91bGRCZSgiY2hhbmdlRXZl
bnRzRmlyZWQiLCAiNyIpOworICAgIHNob3VsZEJlKCJpbnB1dEV2ZW50c0ZpcmVkIiwgIjciKTsK
KworICAgIGJlZ2luVGVzdCgiVGFiIGtleSIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvLyBbaGhdOm1tIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiMiIpOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IFswMl06bW0gdHQKKyAgICBVSUhlbHBlci5rZXlE
b3duKCJcdCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6W21tXSB0
dAorICAgIFVJSGVscGVyLmtleURvd24oIjIiKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvLyAtPiAwMjpbMDJdIHR0CisgICAgVUlIZWxwZXIua2V5RG93bigiXHQiKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IDAyOjAyIFt0dF0KKyAgICBVSUhlbHBlci5r
ZXlEb3duKCJBIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gMDI6MDIg
W0FNXQorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMDI6MDIiKTsK
KyAgICBVSUhlbHBlci5rZXlEb3duKCJcdCIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gRm9jdXMgb3V0LgorICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQuYWN0
aXZlRWxlbWVudC5pZCIsICJhZnRlciIpOworICAgIFVJSGVscGVyLmtleURvd24oIlx0IiwgWyJz
aGlmdEtleSJdKTsgICAgICAgICAgICAgICAgICAvLyAtPiAwMjowMiBbQU1dCisgICAgVUlIZWxw
ZXIua2V5RG93bigiXHQiLCBbInNoaWZ0S2V5Il0pOyAgICAgICAgICAgICAgICAgIC8vIC0+IDAy
OlswMl0gQU0KKyAgICBVSUhlbHBlci5rZXlEb3duKCIzIik7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLy8gLT4gMDI6WzAzXSBBTQorICAgIFVJSGVscGVyLmtleURvd24oIlx0Iiwg
WyJzaGlmdEtleSJdKTsgICAgICAgICAgICAgICAgICAvLyAtPiBbMDJdOjAzIEFNCisgICAgVUlI
ZWxwZXIua2V5RG93bigiMyIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+
IFswM106MDMgQU0KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjAz
OjAzIik7CisgICAgVUlIZWxwZXIua2V5RG93bigiXHQiLCBbInNoaWZ0S2V5Il0pOyAgICAgICAg
ICAgICAgICAgIC8vIEZvY3VzIG91dC4KKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3Vt
ZW50LmFjdGl2ZUVsZW1lbnQuaWQiLCAiYmVmb3JlIik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2
ZW50c0ZpcmVkIiwgIjMiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICIzIik7
CisKKyAgICBiZWdpblRlc3QoIkJhY2tzcGFjZSBrZXkiLCAiMTY6MzAiKTsgICAgICAgICAgICAg
ICAgICAgLy8gWzA0XTozMCBQTQorICAgIFVJSGVscGVyLmtleURvd24oIlxiIik7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyAtPiBbaGhdOjMwIFBNCisgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIiKTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCI3Iik7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gLT4gWzA3XTozMCBQTQorICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMTk6MzAiKTsKKyAgICBzaG91bGRC
ZSgiY2hhbmdlRXZlbnRzRmlyZWQiLCAiMiIpOworICAgIHNob3VsZEJlKCJpbnB1dEV2ZW50c0Zp
cmVkIiwgIjIiKTsKKworICAgIGJlZ2luVGVzdCgiRGVsZXRlIGtleSIsICIxODoyMCIpOyAgICAg
ICAgICAgICAgICAgICAgICAvLyBbMDZdOjIwIFBNCisgICAgVUlIZWxwZXIua2V5RG93bigiZGVs
ZXRlIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0+IFtoaF06MjAgUE0KKyAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIiIpOworICAgIHNob3VsZEJlKCJj
aGFuZ2VFdmVudHNGaXJlZCIsICIxIik7CisgICAgc2hvdWxkQmUoImlucHV0RXZlbnRzRmlyZWQi
LCAiMSIpOworCisgICAgYmVnaW5UZXN0KCJEaXNhYmxlZC9yZWFkb25seSIsICIwOTowMSIpOwor
ICAgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgICBVSUhlbHBlci5rZXlEb3duKCIxIik7Cisg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIwOTowMSIpOworICAgIGlu
cHV0LmRpc2FibGVkID0gZmFsc2U7CisgICAgaW5wdXQuZm9jdXMoKTsKKyAgICBVSUhlbHBlci5r
ZXlEb3duKCIxIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIsICIw
MTowMSIpOworICAgIGlucHV0LnJlYWRPbmx5ID0gdHJ1ZTsKKyAgICBVSUhlbHBlci5rZXlEb3du
KCJyaWdodEFycm93Iik7CisgICAgVUlIZWxwZXIua2V5RG93bigiMiIpOworICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygiaW5wdXQudmFsdWUiLCAiMDE6MDEiKTsKKyAgICBpbnB1dC5yZWFkT25s
eSA9IGZhbHNlOworICAgIFVJSGVscGVyLmtleURvd24oIjIiKTsKKyAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjAxOjAyIik7CisgICAgc2hvdWxkQmUoImNoYW5nZUV2
ZW50c0ZpcmVkIiwgIjIiKTsKKyAgICBzaG91bGRCZSgiaW5wdXRFdmVudHNGaXJlZCIsICIyIik7
CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30pOworCis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUt
ZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtbW91c2UtZXZlbnRz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxl
LWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLW1vdXNlLWV2ZW50cy1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTExMTQzNjkzYzkxOTVlYjdjZjRhNjJmOGYzN2YwZTIwOTllZmQx
MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGltZS90aW1lLWVk
aXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzLW1vdXNlLWV2ZW50cy1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNSBAQAorVGVzdCBmb3IgbW91c2UgZXZlbnRzIGZvciA8
aW5wdXQgdHlwZT10aW1lPgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworRW5hYmxl
ZCBJbnB1dAorCitQQVNTIGlucHV0LnZhbHVlIGlzICIwOTozMCIKK1BBU1MgaW5wdXQudmFsdWUg
aXMgIjA5OjEyIgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMjE6MTIiCitQQVNTIGlucHV0LnZhbHVl
IGlzICIxODoxMiIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjE4OjEyIgorUEFTUyBjbGlja0V2ZW50
c0ZpcmVkIGlzIDQKKworRGlzYWJsZWQgSW5wdXQKKworUEFTUyBjbGlja0V2ZW50c0ZpcmVkIGlz
IDAKKworUmVhZG9ubHkgSW5wdXQKKworUEFTUyBjbGlja0V2ZW50c0ZpcmVkIGlzIDQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3Rp
bWUtZWRpdGFibGUtY29tcG9uZW50cy1tb3VzZS1ldmVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvdGltZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMvdGltZS1lZGl0YWJsZS1jb21w
b25lbnRzLW1vdXNlLWV2ZW50cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIwZjRmNmNkZmY4YWI2NGUyMjY1
MzYwOGIzYWYzZWM2M2I1OWYyNDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9u
ZW50cy1tb3VzZS1ldmVudHMuaHRtbApAQCAtMCwwICsxLDEyMiBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2Vz
L3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CitpbnB1dCB7CisgICAgd2lkdGg6IDMw
MHB4OworfQorCitpbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQgeworICAgIGZvbnQt
c2l6ZTogMzBweDsKK30KKworaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxk
IHsKKyAgICBmb250LXNpemU6IDMwcHg7Cit9CisKK2lucHV0Ojotd2Via2l0LWRhdGV0aW1lLWVk
aXQtbWludXRlLWZpZWxkIHsKKyAgICBmb250LXNpemU6IDMwcHg7Cit9CisKK2lucHV0Ojotd2Vi
a2l0LWRhdGV0aW1lLWVkaXQtbWVyaWRpZW0tZmllbGQgeworICAgIGZvbnQtc2l6ZTogMzBweDsK
K30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGlucHV0IGlkPSJpbnB1dCIgdHlwZT0i
dGltZSIgdmFsdWU9IjA1OjMwIj4KKworPHNjcmlwdD4KKworZGVzY3JpcHRpb24oIlRlc3QgZm9y
IG1vdXNlIGV2ZW50cyBmb3IgJmx0O2lucHV0IHR5cGU9dGltZSZndDsiKTsKKworY2xpY2tFdmVu
dHNGaXJlZCA9IDA7CitmdW5jdGlvbiBvbkNsaWNrRXZlbnQoKSB7CisgICAgY2xpY2tFdmVudHNG
aXJlZCsrOworfQorCitmdW5jdGlvbiBtb3VzZUNsaWNrT24oeCwgeSkgeworICAgIGlmICghd2lu
ZG93LmV2ZW50U2VuZGVyKQorICAgICAgICByZXR1cm47CisgICAgZXZlbnRTZW5kZXIubW91c2VN
b3ZlVG8oeCArIGlucHV0Lm9mZnNldExlZnQsIHkgKyBpbnB1dC5vZmZzZXRUb3ApOworICAgIGV2
ZW50U2VuZGVyLm1vdXNlRG93bigpOworICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKK30KKwor
aW5wdXQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBvbkNsaWNrRXZlbnQpOworY29uc3QgY2Vu
dGVyID0gaW5wdXQub2Zmc2V0SGVpZ2h0IC8gMjsKKworZGVidWcoIkVuYWJsZWQgSW5wdXRcbiIp
OworCisvLyBDbGljayBvbiBob3VyIGZpZWxkLgorbW91c2VDbGlja09uKDIwLCBjZW50ZXIpOwor
VUlIZWxwZXIua2V5RG93bigiOSIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1
ZSIsICIwOTozMCIpOworCisvLyBDbGljayBvbiBtaW51dGUgZmllbGQuCittb3VzZUNsaWNrT24o
NjAsIGNlbnRlcik7CitVSUhlbHBlci5rZXlEb3duKCIxIik7CitVSUhlbHBlci5rZXlEb3duKCIy
Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0LnZhbHVlIiwgIjA5OjEyIik7CisKKy8v
IENsaWNrIG9uIEFNL1BNIGZpZWxkLgorbW91c2VDbGlja09uKDEyMCwgY2VudGVyKTsKK1VJSGVs
cGVyLmtleURvd24oInVwQXJyb3ciKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiaW5wdXQudmFs
dWUiLCAiMjE6MTIiKTsKKworLy8gQ2xpY2sgb24gY29udHJvbCwgYnV0IG5vdCBhIHNwZWNpZmlj
IGZpZWxkLCBkZWZhdWx0cyB0byBmaXJzdCBmaWVsZC4KK21vdXNlQ2xpY2tPbigyNTAsIGNlbnRl
cik7CitVSUhlbHBlci5rZXlEb3duKCI2Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlucHV0
LnZhbHVlIiwgIjE4OjEyIik7CisKKy8vIENsaWNrIG91dHNpZGUgY29udHJvbC4KK21vdXNlQ2xp
Y2tPbihpbnB1dC5vZmZzZXRXaWR0aCArIDUsIGlucHV0Lm9mZnNldEhlaWdodCArIDUpOworVUlI
ZWxwZXIua2V5RG93bigiNSIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnB1dC52YWx1ZSIs
ICIxODoxMiIpOworCitzaG91bGRCZSgiY2xpY2tFdmVudHNGaXJlZCIsICI0Iik7CisKK2RlYnVn
KCJcbkRpc2FibGVkIElucHV0XG4iKTsKK2NsaWNrRXZlbnRzRmlyZWQgPSAwOworaW5wdXQuZGlz
YWJsZWQgPSB0cnVlOworaW5wdXQucmVhZE9ubHkgPSBmYWxzZTsKKworLy8gQ2xpY2sgb24gaG91
ciBmaWVsZC4KK21vdXNlQ2xpY2tPbigyMCwgY2VudGVyKTsKKy8vIENsaWNrIG9uIG1pbnV0ZSBm
aWVsZC4KK21vdXNlQ2xpY2tPbig2MCwgY2VudGVyKTsKKy8vIENsaWNrIG9uIEFNL1BNIGZpZWxk
LgorbW91c2VDbGlja09uKDEyMCwgY2VudGVyKTsKKy8vIENsaWNrIG9uIGNvbnRyb2wsIGJ1dCBu
b3QgYSBzcGVjaWZpYyBmaWVsZCwgZGVmYXVsdHMgdG8gZmlyc3QgZmllbGQuCittb3VzZUNsaWNr
T24oMjUwLCBjZW50ZXIpOworLy8gQ2xpY2sgb3V0c2lkZSBjb250cm9sLgorbW91c2VDbGlja09u
KGlucHV0Lm9mZnNldFdpZHRoICsgNSwgaW5wdXQub2Zmc2V0SGVpZ2h0ICsgNSk7CisKK3Nob3Vs
ZEJlKCJjbGlja0V2ZW50c0ZpcmVkIiwgIjAiKTsKKworZGVidWcoIlxuUmVhZG9ubHkgSW5wdXRc
biIpOworY2xpY2tFdmVudHNGaXJlZCA9IDA7CitpbnB1dC5kaXNhYmxlZCA9IGZhbHNlOworaW5w
dXQucmVhZE9ubHkgPSB0cnVlOworCisvLyBDbGljayBvbiBob3VyIGZpZWxkLgorbW91c2VDbGlj
a09uKDIwLCBjZW50ZXIpOworLy8gQ2xpY2sgb24gbWludXRlIGZpZWxkLgorbW91c2VDbGlja09u
KDYwLCBjZW50ZXIpOworLy8gQ2xpY2sgb24gQU0vUE0gZmllbGQuCittb3VzZUNsaWNrT24oMTIw
LCBjZW50ZXIpOworLy8gQ2xpY2sgb24gY29udHJvbCwgYnV0IG5vdCBhIHNwZWNpZmljIGZpZWxk
LCBkZWZhdWx0cyB0byBmaXJzdCBmaWVsZC4KK21vdXNlQ2xpY2tPbigyNTAsIGNlbnRlcik7Cisv
LyBDbGljayBvdXRzaWRlIGNvbnRyb2wuCittb3VzZUNsaWNrT24oaW5wdXQub2Zmc2V0V2lkdGgg
KyA1LCBpbnB1dC5vZmZzZXRIZWlnaHQgKyA1KTsKKworc2hvdWxkQmUoImNsaWNrRXZlbnRzRmly
ZWQiLCAiNCIpOworCis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50
cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtc2Vjb25kLWFuZC1taWxsaXNlY29uZC1maWVsZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RpbWUvdGltZS1lZGl0YWJsZS1j
b21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1zZWNvbmQtYW5kLW1pbGxpc2Vjb25k
LWZpZWxkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDhjNDNmMzNiMWE3ZjI3MzA4ZDM4NTVm
YmNhZjg3NjNlNzBkMDg2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy90aW1lL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMt
c2Vjb25kLWFuZC1taWxsaXNlY29uZC1maWVsZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0MCBA
QAorVGVzdCBmb3IgcHJlc2VuY2Ugb2Ygc2Vjb25kIGFuZCBtaWxsaXNlY29uZCBmaWVsZHMgaW4g
PGlucHV0IHR5cGU9dGltZT4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworRGVm
YXVsdAorUEFTUyBudW1iZXJPZkZpZWxkcyBpcyAzCisKK1plcm8gc2Vjb25kcworUEFTUyBudW1i
ZXJPZkZpZWxkcyBpcyAzCisKK1plcm8gc2Vjb25kcyBhbmQgemVybyBtaWxsaXNlY29uZHMKK1BB
U1MgbnVtYmVyT2ZGaWVsZHMgaXMgMworCitaZXJvIHNlY29uZHMgYW5kIG5vbi16ZXJvIG1pbGxp
c2Vjb25kcworUEFTUyBudW1iZXJPZkZpZWxkcyBpcyA1CisKK05vbi16ZXJvIHNlY29uZHMKK1BB
U1MgbnVtYmVyT2ZGaWVsZHMgaXMgNAorCitOb24temVybyBzZWNvbmRzIGFuZCB6ZXJvIG1pbGxp
c2Vjb25kcworUEFTUyBudW1iZXJPZkZpZWxkcyBpcyA0CisKK05vbi16ZXJvIHNlY29uZHMgYW5k
IG5vbi16ZXJvIG1pbGxpc2Vjb25kcworUEFTUyBudW1iZXJPZkZpZWxkcyBpcyA1CisKK1N0ZXAg
YXR0cmlidXRlIG1pbnV0ZSBwcmVjaXNpb24KK1BBU1MgbnVtYmVyT2ZGaWVsZHMgaXMgMworCitT
dGVwIGF0dHJpYnV0ZSBzZWNvbmQgcHJlY2lzaW9uCitQQVNTIG51bWJlck9mRmllbGRzIGlzIDQK
KworU3RlcCBhdHRyaWJ1dGUgbWlsbGlzZWNvbmQgcHJlY2lzaW9uCitQQVNTIG51bWJlck9mRmll
bGRzIGlzIDUKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRp
dGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtc2Vjb25kLWFuZC1taWxs
aXNlY29uZC1maWVsZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90aW1lL3RpbWUtZWRp
dGFibGUtY29tcG9uZW50cy90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMtc2Vjb25kLWFuZC1taWxs
aXNlY29uZC1maWVsZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwNDBhYzU5YmRlMzJkNDk0MzNhNzk1OWZh
OTE1YjhjNTY3MDA4ZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1z
L3RpbWUvdGltZS1lZGl0YWJsZS1jb21wb25lbnRzL3RpbWUtZWRpdGFibGUtY29tcG9uZW50cy1z
ZWNvbmQtYW5kLW1pbGxpc2Vjb25kLWZpZWxkLmh0bWwKQEAgLTAsMCArMSw4OSBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4v
cmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGlu
cHV0IGlkPSJiZWZvcmUiIHR5cGU9InRleHQiPgorPGlucHV0IGlkPSJpbnB1dCIgdHlwZT0idGlt
ZSI+Cis8aW5wdXQgaWQ9ImFmdGVyIiB0eXBlPSJ0ZXh0Ij4KKworPHNjcmlwdD4KKworanNUZXN0
SXNBc3luYyA9IHRydWU7CisKK2Z1bmN0aW9uIGJlZ2luVGVzdCh0aXRsZSwgdmFsdWUsIHN0ZXAp
IHsKKyAgICBkZWJ1ZygiXG4iICsgdGl0bGUpOworICAgIGlucHV0LnZhbHVlID0gdmFsdWUgfHwg
IiI7CisgICAgaW5wdXQuc3RlcCA9IHN0ZXAgfHwgIiI7CisgICAgaW5wdXQuYmx1cigpOworICAg
IGlucHV0LmZvY3VzKCk7Cit9CisKK2Z1bmN0aW9uIHZlcmlmeU51bWJlck9mRmllbGRzKGV4cGVj
dGVkKSB7CisgICAgbnVtYmVyT2ZGaWVsZHMgPSAwOworCisgICAgLy8gRm9jdXMgZmlyc3QgZmll
bGQuCisgICAgaW5wdXQuYmx1cigpOworICAgIGlucHV0LmZvY3VzKCk7CisKKyAgICB3aGlsZSAo
ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAhPT0gYWZ0ZXIpIHsKKyAgICAgICAgbnVtYmVyT2ZGaWVs
ZHMrKzsKKyAgICAgICAgVUlIZWxwZXIua2V5RG93bigiXHQiKTsKKyAgICB9CisKKyAgICAvLyBS
ZXR1cm4gZm9jdXMgdG8gZmlyc3QgZmllbGQuCisgICAgaW5wdXQuYmx1cigpOworICAgIGlucHV0
LmZvY3VzKCk7CisKKyAgICBzaG91bGRCZSgibnVtYmVyT2ZGaWVsZHMiLCBleHBlY3RlZC50b1N0
cmluZygpKTsKK30KKworYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKKyAg
ICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgcHJlc2VuY2Ugb2Ygc2Vjb25kIGFuZCBtaWxsaXNlY29u
ZCBmaWVsZHMgaW4gJmx0O2lucHV0IHR5cGU9dGltZSZndDsiKTsKKworICAgIGRlZmF1bHROdW1i
ZXJPZkZpZWxkcyA9IDM7IC8vIEhvdXIsIG1pbnV0ZSwgYW5kIEFNL1BNIGZpZWxkcworICAgIG51
bWJlck9mRmllbGRzV2l0aFNlY29uZHMgPSBkZWZhdWx0TnVtYmVyT2ZGaWVsZHMgKyAxOworICAg
IG51bWJlck9mRmllbGRzV2l0aE1pbGxpc2Vjb25kcyA9IG51bWJlck9mRmllbGRzV2l0aFNlY29u
ZHMgKyAxOworCisgICAgYmVnaW5UZXN0KCJEZWZhdWx0IiwgIjEwOjIwIik7CisgICAgdmVyaWZ5
TnVtYmVyT2ZGaWVsZHMoZGVmYXVsdE51bWJlck9mRmllbGRzKTsKKworICAgIGJlZ2luVGVzdCgi
WmVybyBzZWNvbmRzIiwgIjEwOjIwOjAwIik7CisgICAgdmVyaWZ5TnVtYmVyT2ZGaWVsZHMoZGVm
YXVsdE51bWJlck9mRmllbGRzKTsKKworICAgIGJlZ2luVGVzdCgiWmVybyBzZWNvbmRzIGFuZCB6
ZXJvIG1pbGxpc2Vjb25kcyIsICIxMDoyMDowMC4wMDAiKTsKKyAgICB2ZXJpZnlOdW1iZXJPZkZp
ZWxkcyhkZWZhdWx0TnVtYmVyT2ZGaWVsZHMpOworCisgICAgYmVnaW5UZXN0KCJaZXJvIHNlY29u
ZHMgYW5kIG5vbi16ZXJvIG1pbGxpc2Vjb25kcyIsICIxMDoyMDowMC41NjciKTsKKyAgICB2ZXJp
ZnlOdW1iZXJPZkZpZWxkcyhudW1iZXJPZkZpZWxkc1dpdGhNaWxsaXNlY29uZHMpOworCisgICAg
YmVnaW5UZXN0KCJOb24temVybyBzZWNvbmRzIiwgIjEwOjIwOjQ1Iik7CisgICAgdmVyaWZ5TnVt
YmVyT2ZGaWVsZHMobnVtYmVyT2ZGaWVsZHNXaXRoU2Vjb25kcyk7CisKKyAgICBiZWdpblRlc3Qo
Ik5vbi16ZXJvIHNlY29uZHMgYW5kIHplcm8gbWlsbGlzZWNvbmRzIiwgIjEwOjIwOjQ1LjAwMCIp
OworICAgIHZlcmlmeU51bWJlck9mRmllbGRzKG51bWJlck9mRmllbGRzV2l0aFNlY29uZHMpOwor
CisgICAgYmVnaW5UZXN0KCJOb24temVybyBzZWNvbmRzIGFuZCBub24temVybyBtaWxsaXNlY29u
ZHMiLCAiMTA6MjA6NDUuNTY3Iik7CisgICAgdmVyaWZ5TnVtYmVyT2ZGaWVsZHMobnVtYmVyT2ZG
aWVsZHNXaXRoTWlsbGlzZWNvbmRzKTsKKworICAgIGJlZ2luVGVzdCgiU3RlcCBhdHRyaWJ1dGUg
bWludXRlIHByZWNpc2lvbiIsICIxMDoyMCIsICI2MCIpOworICAgIHZlcmlmeU51bWJlck9mRmll
bGRzKGRlZmF1bHROdW1iZXJPZkZpZWxkcyk7CisKKyAgICBiZWdpblRlc3QoIlN0ZXAgYXR0cmli
dXRlIHNlY29uZCBwcmVjaXNpb24iLCAiMTA6MjAiLCAiMiIpOworICAgIHZlcmlmeU51bWJlck9m
RmllbGRzKG51bWJlck9mRmllbGRzV2l0aFNlY29uZHMpOworCisgICAgYmVnaW5UZXN0KCJTdGVw
IGF0dHJpYnV0ZSBtaWxsaXNlY29uZCBwcmVjaXNpb24iLCAiMTA6MjAiLCAiMC41Iik7CisgICAg
dmVyaWZ5TnVtYmVyT2ZGaWVsZHMobnVtYmVyT2ZGaWVsZHNXaXRoTWlsbGlzZWNvbmRzKTsKKwor
ICAgIGRlYnVnKCIiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30pOworCis8L3NjcmlwdD4KKwor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9U
ZXN0RXhwZWN0YXRpb25zCmluZGV4IDdjNTQyYzU0M2U3NTBhMzRjNTE2M2E1ODgxZmI5ODJjZDc1
NTQ2YTYuLjhlYmUyMDkwMjgwYzVkMDEzMDNmMDA4NDc2YWQ0ZDAwOWMwY2EzYmYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEzLDYgKzEz
LDcgQEAgZWRpdGluZy91bmRvLW1hbmFnZXIgWyBQYXNzIF0KIGVkaXRpbmcvcGFzdGVib2FyZC9k
b20tcGFzdGUgWyBQYXNzIF0KIGZhc3QvZXZlbnRzL2N1cnNvcnMgWyBQYXNzIF0KIGZhc3QvZm9y
bXMvZGF0ZS9kYXRlLWVkaXRhYmxlLWNvbXBvbmVudHMgWyBQYXNzIF0KK2Zhc3QvZm9ybXMvdGlt
ZS90aW1lLWVkaXRhYmxlLWNvbXBvbmVudHMgWyBQYXNzIF0KIGZhc3QvZm9ybXMvc2VsZWN0L21h
Yy13azIgWyBQYXNzIF0KIGZhc3Qvc2FuZGJveC9tYWMgWyBQYXNzIF0KIGZhc3Qvc2Nyb2xsaW5n
L21hYyBbIFBhc3MgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9m
YXN0L2Zvcm1zL3RpbWUvdGltZS1hcHBlYXJhbmNlLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy13azIvZmFzdC9mb3Jtcy90aW1lL3RpbWUtYXBwZWFyYW5jZS1i
YXNpYy1leHBlY3RlZC50eHQKaW5kZXggMmRkMGFkNTU5N2Y2OWU3MGQ2MWJjNTZlZTY0ODc4YTBh
YThhZjg0Ni4uMzMxMDM0YjU2ZTdhMDYxZTY3N2M4OTM1MTU0MmI0NGJiZWYxOTEyYyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9mYXN0L2Zvcm1zL3RpbWUvdGltZS1h
cHBlYXJhbmNlLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMtd2syL2Zhc3QvZm9ybXMvdGltZS90aW1lLWFwcGVhcmFuY2UtYmFzaWMtZXhwZWN0ZWQudHh0
CkBAIC00LDcgKzQsNyBAQCBzdGVwPTAuMDAwMQogc3RlcD02MCAgCiBzdGVwPTM2MDAgIAogc3Rl
cD04NjQwMCAgCi1zdGVwIG1pc21hdGNoZWQgCitzdGVwIG1pc21hdGNoZWQgIAogUlRMIAogRGlz
YWJsZWQsIHN0ZXA9MzYwMCAgCiBSZWFkb25seSwgc3RlcD0zNjAwICAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvZmFzdC9mb3Jtcy90aW1lL3RpbWUtaW5wdXQtcmVu
ZGVyaW5nLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIv
ZmFzdC9mb3Jtcy90aW1lL3RpbWUtaW5wdXQtcmVuZGVyaW5nLWJhc2ljLWV4cGVjdGVkLnR4dApp
bmRleCBhOTIwN2U5YWRjMGY4ZGIxMzYxZGM3NGZmMjIxZTVmMGZkNDQyOTIyLi5kYjQ4MjcxNWRj
YzAxMTRiODFkNTczMWUxODVmODY0NmMxYzRkNWJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtd2syL2Zhc3QvZm9ybXMvdGltZS90aW1lLWlucHV0LXJlbmRlcmluZy1iYXNp
Yy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9mYXN0L2Zv
cm1zL3RpbWUvdGltZS1pbnB1dC1yZW5kZXJpbmctYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC0zLDEw
ICszLDQ2IEBAIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAogbGF5ZXIgYXQgKDAsMCkgc2l6
ZSA4MDB4NjAwCiAgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAg
ICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4NHg1ODQKLSAgICAgIFJlbmRlclRl
eHQgeyN0ZXh0fSBhdCAoMTEwLDApIHNpemUgNHgxOAotICAgICAgICB0ZXh0IHJ1biBhdCAoMTEw
LDApIHdpZHRoIDQ6ICIgIgorICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxMTAsMikgc2l6
ZSA0eDE4CisgICAgICAgIHRleHQgcnVuIGF0ICgxMTAsMikgd2lkdGggNDogIiAiCiAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKLWxheWVyIGF0ICg4LDE5KSBzaXpl
IDExMHg2IGNsaXAgYXQgKDEwLDIxKSBzaXplIDEwNngyCi0gIFJlbmRlckZsZXhpYmxlQm94IHtJ
TlBVVH0gYXQgKDAsMTEpIHNpemUgMTEweDYgW2JnY29sb3I9I0ZGRkZGRl0gW2JvcmRlcjogKDJw
eCBpbnNldCAjMDAwMDAwKV0KLWxheWVyIGF0ICgxMjIsMTkpIHNpemUgMTEweDYgY2xpcCBhdCAo
MTI0LDIxKSBzaXplIDEwNngyCi0gIFJlbmRlckZsZXhpYmxlQm94IHtJTlBVVH0gYXQgKDExNCwx
MSkgc2l6ZSAxMTB4NiBbYmdjb2xvcj0jRkZGRkZGXSBbYm9yZGVyOiAoMnB4IGluc2V0ICMwMDAw
MDApXQorbGF5ZXIgYXQgKDgsMTApIHNpemUgMTEweDE5IGNsaXAgYXQgKDEwLDEyKSBzaXplIDEw
NngxNQorICBSZW5kZXJGbGV4aWJsZUJveCB7SU5QVVR9IGF0ICgwLDIpIHNpemUgMTEweDE5IFti
Z2NvbG9yPSNGRkZGRkZdIFtib3JkZXI6ICgycHggaW5zZXQgIzAwMDAwMCldCitsYXllciBhdCAo
MTEsMTMpIHNpemUgNTZ4MTMgc2Nyb2xsSGVpZ2h0IDE0CisgIFJlbmRlckJsb2NrIHtESVZ9IGF0
ICgzLDMpIHNpemUgNTZ4MTMKKyAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDU2
eDEzCisgICAgICBSZW5kZXJJbmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6ZSAxN3gxNQorICAgICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDEsMCkgc2l6ZSAxNXgxMworICAgICAgICAgIHRleHQg
cnVuIGF0ICgxLDApIHdpZHRoIDE1OiAiMDkiCisgICAgICBSZW5kZXJJbmxpbmUge0RJVn0gYXQg
KDAsMCkgc2l6ZSA0eDEzCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMTYsMCkgc2l6
ZSA0eDEzCisgICAgICAgICAgdGV4dCBydW4gYXQgKDE2LDApIHdpZHRoIDQ6ICI6IgorICAgICAg
UmVuZGVySW5saW5lIHtESVZ9IGF0ICgwLDApIHNpemUgMTV4MTUKKyAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgyMCwwKSBzaXplIDEzeDEzCisgICAgICAgICAgdGV4dCBydW4gYXQgKDIw
LDApIHdpZHRoIDEzOiAiNDEiCisgICAgICBSZW5kZXJJbmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6
ZSA0eDEzCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMzMsMCkgc2l6ZSA0eDEzCisg
ICAgICAgICAgdGV4dCBydW4gYXQgKDMzLDApIHdpZHRoIDQ6ICIgIgorICAgICAgUmVuZGVySW5s
aW5lIHtESVZ9IGF0ICgwLDApIHNpemUgMjB4MTUKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9
IGF0ICgzNywwKSBzaXplIDE4eDEzCisgICAgICAgICAgdGV4dCBydW4gYXQgKDM3LDApIHdpZHRo
IDE4OiAiQU0iCitsYXllciBhdCAoMTIyLDEwKSBzaXplIDExMHgxOSBjbGlwIGF0ICgxMjQsMTIp
IHNpemUgMTA2eDE1CisgIFJlbmRlckZsZXhpYmxlQm94IHtJTlBVVH0gYXQgKDExNCwyKSBzaXpl
IDExMHgxOSBbYmdjb2xvcj0jRkZGRkZGXSBbYm9yZGVyOiAoMnB4IGluc2V0ICMwMDAwMDApXQor
bGF5ZXIgYXQgKDE3MywxMykgc2l6ZSA1NngxMyBzY3JvbGxIZWlnaHQgMTQKKyAgUmVuZGVyQmxv
Y2sge0RJVn0gYXQgKDUxLDMpIHNpemUgNTZ4MTMKKyAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAo
MCwwKSBzaXplIDU2eDEzCisgICAgICBSZW5kZXJJbmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6ZSAx
N3gxNQorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDIzLDApIHNpemUgMTV4MTMKKyAg
ICAgICAgICB0ZXh0IHJ1biBhdCAoMjMsMCkgd2lkdGggMTU6ICIwOSIKKyAgICAgIFJlbmRlcklu
bGluZSB7RElWfSBhdCAoMCwwKSBzaXplIDR4MTMKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9
IGF0ICgzOCwwKSBzaXplIDR4MTMKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMzgsMCkgd2lkdGgg
NDogIjoiCisgICAgICBSZW5kZXJJbmxpbmUge0RJVn0gYXQgKDAsMCkgc2l6ZSAxNXgxNQorICAg
ICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDQyLDApIHNpemUgMTN4MTMKKyAgICAgICAgICB0
ZXh0IHJ1biBhdCAoNDIsMCkgd2lkdGggMTM6ICI0MSIKKyAgICAgIFJlbmRlcklubGluZSB7RElW
fSBhdCAoMCwwKSBzaXplIDR4MTMKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxOSww
KSBzaXplIDR4MTMKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTksMCkgd2lkdGggNCBSVEw6ICIg
IgorICAgICAgUmVuZGVySW5saW5lIHtESVZ9IGF0ICgwLDApIHNpemUgMjB4MTUKKyAgICAgICAg
UmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxLDApIHNpemUgMTh4MTMKKyAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMSwwKSB3aWR0aCAxODogIkFNIgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>