<?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>236936</bug_id>
          
          <creation_ts>2022-02-20 01:41:22 -0800</creation_ts>
          <short_desc>[JSC] Temporal.PlainDate should validate input range</short_desc>
          <delta_ts>2022-02-21 18:13:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1844041</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-20 01:41:22 -0800</bug_when>
    <thetext>[JSC] Temporal.PlainDate should validate input range</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844043</commentid>
    <comment_count>1</comment_count>
      <attachid>452687</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-20 01:46:16 -0800</bug_when>
    <thetext>Created attachment 452687
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844335</commentid>
    <comment_count>2</comment_count>
      <attachid>452687</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-02-21 12:57:42 -0800</bug_when>
    <thetext>Comment on attachment 452687
Patch

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

&gt; JSTests/ChangeLog:3
&gt; +        [JSC] Temporal.PlainDate should validate input range

I think we’d want the test for the last valid as well as the first invalid.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844391</commentid>
    <comment_count>3</comment_count>
      <attachid>452687</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 14:43:50 -0800</bug_when>
    <thetext>Comment on attachment 452687
Patch

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

&gt;&gt; JSTests/ChangeLog:3
&gt;&gt; +        [JSC] Temporal.PlainDate should validate input range
&gt; 
&gt; I think we’d want the test for the last valid as well as the first invalid.

Sounds good, added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844392</commentid>
    <comment_count>4</comment_count>
      <attachid>452776</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 14:44:26 -0800</bug_when>
    <thetext>Created attachment 452776
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844395</commentid>
    <comment_count>5</comment_count>
      <attachid>452778</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 14:54:48 -0800</bug_when>
    <thetext>Created attachment 452778
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844401</commentid>
    <comment_count>6</comment_count>
      <attachid>452781</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 15:09:27 -0800</bug_when>
    <thetext>Created attachment 452781
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844454</commentid>
    <comment_count>7</comment_count>
      <attachid>452781</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-02-21 16:58:25 -0800</bug_when>
    <thetext>Comment on attachment 452781
Patch

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

review+ assuming the tests pass

&gt; JSTests/stress/temporal-plaindate.js:114
&gt; +new Temporal.PlainDate(0x43530, 9, 13);

Maybe a shouldBe about the string form?

&gt; JSTests/stress/temporal-plaindate.js:116
&gt; +new Temporal.PlainDate(-0x425cd, 4, 20);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844489</commentid>
    <comment_count>8</comment_count>
      <attachid>452781</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 18:07:50 -0800</bug_when>
    <thetext>Comment on attachment 452781
Patch

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

Thank you!

&gt;&gt; JSTests/stress/temporal-plaindate.js:114
&gt;&gt; +new Temporal.PlainDate(0x43530, 9, 13);
&gt; 
&gt; Maybe a shouldBe about the string form?

Done.

&gt;&gt; JSTests/stress/temporal-plaindate.js:116
&gt;&gt; +new Temporal.PlainDate(-0x425cd, 4, 20);
&gt; 
&gt; Ditto.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844493</commentid>
    <comment_count>9</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 18:12:32 -0800</bug_when>
    <thetext>Committed r290282 (?): &lt;https://commits.webkit.org/r290282&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844494</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-21 18:13:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/89268246&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452687</attachid>
            <date>2022-02-20 01:46:16 -0800</date>
            <delta_ts>2022-02-21 14:44:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236936-20220220014616.patch</filename>
            <type>text/plain</type>
            <size>12080</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
MWE3OGZkNjRkMzEwZjllNTIyOWI2Y2IzYjIwNDgwYzExOTAyMDYyLi40YWNkZjhiMmRmYjNmZDVi
ODJkZjM5N2MzOTg3YjdiOTkxMWI5Mjk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAyMi0wMi0yMCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFRlbXBvcmFsLlBsYWluRGF0ZSBzaG91bGQgdmFsaWRhdGUgaW5w
dXQgcmFuZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNjkzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudCBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3NlYy10ZW1wb3Jh
bC1pc29kYXRldGltZXdpdGhpbmxpbWl0cyBjaGVjayBpbgorICAgICAgICBQbGFpbkRhdGUgdG8g
dmFsaWRhdGUgaW5wdXQgcmFuZ2UuIEZvciBleGFtcGxlLCAweDdmZmZmZmZmIHllYXIgc2hvdWxk
IGJlIHJlamVjdGVkIHNpbmNlCisgICAgICAgIGl0IGlzIGxhcmdlciB0aGFuIEVDTUFTY3JpcHQg
ZGF0ZXRpbWUgcmVwcmVzZW50YXRpb24gdmFsdWUuIFRoaXMgaXMgY2hlY2tlZCB2aWEgSVNPRGF0
ZVRpbWVXaXRoaW5MaW1pdHMKKyAgICAgICAgaW4gdGhlIHNwZWMuCisKKyAgICAgICAgV2UgYWxz
byByZW1vdmUgaXNWYWxpZCBhc3NlcnRpb25zIGluIEV4YWN0VGltZS4gVGhpcyBzaG91bGQgbm90
IGJlIGNoZWNrZWQgaW4gdGhlc2UgYWNjZXNzb3JzLCByYXRoZXIsCisgICAgICAgIHdlIHNob3Vs
ZCBjYWxsIHRoYXQgZnVuY3Rpb24gd2hlbiB3ZSB3b3VsZCBsaWtlIHRvIGNoZWNrLCBzaW5jZSBQ
bGFpbkRhdGUgY2FuIHJlcHJlc2VudCBhIGJpdCBzbWFsbGVyCisgICAgICAgIHZhbHVlIHRoYW4g
RXhhY3RUaW1lJ3MgbWluVmFsdWUgKG1pblZhbHVlIC0gbnNQZXJEYXkpLgorCisgICAgICAgIFdl
IGFsc28gZXh0ZW5kIEV4YWN0VGltZTo6ZnJvbUlTT1BhcnRzQW5kT2Zmc2V0IHRvIGhhbmRsZSB2
YWx1ZXMgdmlhIEludDEyOCB0byBhY2NlcHQgaW50MzJfdCByYW5nZSB5ZWFycy4KKyAgICAgICAg
QnkgdXNpbmcgSW50MTI4IGZvciBuYW5vc2Vjb25kcywgd2UgY2FuIGV2ZW4gcmVwcmVzZW50IGlu
dDMyX3QgbWF4IC8gbWluIHllYXJzLiBBbmQgd2UgcmVtb3ZlCisgICAgICAgIGBBU1NFUlQoeSA+
PSAtOTk5OTk5ICYmIHkgPD0gOTk5OTk5KWAgY2hlY2sgc2luY2UgdGhpcyBpcyBub3QgbmVjZXNz
YXJ5LgorCisgICAgICAgICogcnVudGltZS9JU084NjAxLmNwcDoKKyAgICAgICAgKEpTQzo6SVNP
ODYwMTo6RXhhY3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZzZXQpOgorICAgICAgICAoSlNDOjpJ
U084NjAxOjppc0RhdGVUaW1lV2l0aGluTGltaXRzKToKKyAgICAgICAgKiBydW50aW1lL0lTTzg2
MDEuaDoKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjpFeGFjdFRpbWUpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaFNlY29uZHMp
OiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaE1p
bGxpc2Vjb25kcyk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
ZnJvbUVwb2NoTWljcm9zZWNvbmRzKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SVNPODYwMTo6
RXhhY3RUaW1lOjplcG9jaFNlY29uZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmVwb2NoTWlsbGlzZWNvbmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjplcG9jaE1pY3Jvc2Vjb25kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6ZXBvY2hOYW5vc2Vj
b25kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
bmFub3NlY29uZHNGcmFjdGlvbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2
MDE6OkV4YWN0VGltZTo6YXNTdHJpbmcgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmlzVmFsaWQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpJU084NjAxOjpFeGFjdFRpbWU6Om9wZXJhdG9yPCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I8PSBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I9PSBjb25zdCk6IERlbGV0
ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3IhPSBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I+PSBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0
b3I+IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcDoKKyAgICAgICAgKEpTQzo6dG9QbGFpbkRhdGUpOgorCiAyMDIyLTAyLTE5ICBDb21taXQg
UXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBy
ZXZlcnRpbmcgcjI5MDE5NCBhbmQgcjI5MDIxMC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSVNPODYwMS5jcHAKaW5kZXggYmRjM2ZhNzYzYzViZjhiZmQ3OGMyOThkMjI3ODdjYTI4NmQy
ZmE0Mi4uN2ZmMmJmODZhMTlhOTk3OTlhZmMzZmMyNjQ0ZDRhZWQzODUwZWNlYyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAKQEAgLTEwMDgsMjMgKzEwMDgsMjAg
QEAgYm9vbCBpc1ZhbGlkRHVyYXRpb24oY29uc3QgRHVyYXRpb24mIGR1cmF0aW9uKQogICAgIHJl
dHVybiB0cnVlOwogfQogCi1FeGFjdFRpbWUgRXhhY3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZz
ZXQoaW50MzJfdCB5LCB1aW50OF90IG1vbiwgdWludDhfdCBkLCB1bnNpZ25lZCBoLCB1bnNpZ25l
ZCBtaW4sIHVuc2lnbmVkIHMsIHVuc2lnbmVkIG1zLCB1bnNpZ25lZCBtaWNyb3MsIHVuc2lnbmVk
IG5zLCBpbnQ2NF90IG9mZnNldCkKK0V4YWN0VGltZSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0c0Fu
ZE9mZnNldChpbnQzMl90IHllYXIsIHVpbnQ4X3QgbW9udGgsIHVpbnQ4X3QgZGF5LCB1bnNpZ25l
ZCBob3VyLCB1bnNpZ25lZCBtaW51dGUsIHVuc2lnbmVkIHNlY29uZCwgdW5zaWduZWQgbWlsbGlz
ZWNvbmQsIHVuc2lnbmVkIG1pY3Jvc2Vjb25kLCB1bnNpZ25lZCBuYW5vc2Vjb25kLCBpbnQ2NF90
IG9mZnNldCkKIHsKLSAgICBBU1NFUlQoeSA+PSAtOTk5OTk5ICYmIHkgPD0gOTk5OTk5KTsKLSAg
ICBBU1NFUlQobW9uID49IDEgJiYgbW9uIDw9IDEyKTsKLSAgICBBU1NFUlQoZCA+PSAxICYmIGQg
PD0gMzEpOwotICAgIEFTU0VSVChoIDw9IDIzKTsKLSAgICBBU1NFUlQobWluIDw9IDU5KTsKLSAg
ICBBU1NFUlQocyA8PSA1OSk7Ci0gICAgQVNTRVJUKG1zIDw9IDk5OSk7Ci0gICAgQVNTRVJUKG1p
Y3JvcyA8PSA5OTkpOwotICAgIEFTU0VSVChucyA8PSA5OTkpOwotCi0gICAgZG91YmxlIGRhdGVE
YXlzID0gZGF0ZVRvRGF5c0Zyb20xOTcwKHksIG1vbiAtIDEsIGQpOwotICAgIGRvdWJsZSB0aW1l
TXMgPSB0aW1lVG9NUyhoLCBtaW4sIHMsIG1zKTsKLSAgICBkb3VibGUgdXRjTXMgPSBkYXRlRGF5
cyAqIG1zUGVyRGF5ICsgdGltZU1zOwotICAgIEludDEyOCB1dGNOcyA9IHN0YXRpY19jYXN0PElu
dDEyOD4odXRjTXMpICogMScwMDAnMDAwICsgbWljcm9zICogMTAwMCArIG5zOwotICAgIHJldHVy
biBFeGFjdFRpbWUgeyB1dGNOcyAtIG9mZnNldCB9OworICAgIEFTU0VSVChtb250aCA+PSAxICYm
IG1vbnRoIDw9IDEyKTsKKyAgICBBU1NFUlQoZGF5ID49IDEgJiYgZGF5IDw9IDMxKTsKKyAgICBB
U1NFUlQoaG91ciA8PSAyMyk7CisgICAgQVNTRVJUKG1pbnV0ZSA8PSA1OSk7CisgICAgQVNTRVJU
KHNlY29uZCA8PSA1OSk7CisgICAgQVNTRVJUKG1pbGxpc2Vjb25kIDw9IDk5OSk7CisgICAgQVNT
RVJUKG1pY3Jvc2Vjb25kIDw9IDk5OSk7CisgICAgQVNTRVJUKG5hbm9zZWNvbmQgPD0gOTk5KTsK
KworICAgIEludDEyOCBkYXRlRGF5cyA9IHN0YXRpY19jYXN0PEludDEyOD4oZGF0ZVRvRGF5c0Zy
b20xOTcwKHllYXIsIG1vbnRoIC0gMSwgZGF5KSk7CisgICAgSW50MTI4IHV0Y05hbm9zZWNvbmRz
ID0gZGF0ZURheXMgKiBuc1BlckRheSArIGhvdXIgKiBuc1BlckhvdXIgKyBtaW51dGUgKiBuc1Bl
ck1pbnV0ZSArIHNlY29uZCAqIG5zUGVyU2Vjb25kICsgbWlsbGlzZWNvbmQgKiBuc1Blck1pbGxp
c2Vjb25kICsgbWljcm9zZWNvbmQgKiBuc1Blck1pY3Jvc2Vjb25kICsgbmFub3NlY29uZDsKKyAg
ICByZXR1cm4gRXhhY3RUaW1lIHsgdXRjTmFub3NlY29uZHMgLSBvZmZzZXQgfTsKIH0KIAogdXNp
bmcgQ2hlY2tlZEludDEyOCA9IENoZWNrZWQ8SW50MTI4LCBSZWNvcmRPdmVyZmxvdz47CkBAIC0x
MTM3LDUgKzExMzQsMTYgQEAgRXhhY3RUaW1lIEV4YWN0VGltZTo6bm93KCkKICAgICByZXR1cm4g
RXhhY3RUaW1lIHsgV1RGOjpjdXJyZW50VGltZUluTmFub3NlY29uZHMoKSB9OwogfQogCisvLyBo
dHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3NlYy10ZW1wb3JhbC1pc29kYXRldGlt
ZXdpdGhpbmxpbWl0cworYm9vbCBpc0RhdGVUaW1lV2l0aGluTGltaXRzKGludDMyX3QgeWVhciwg
dWludDhfdCBtb250aCwgdWludDhfdCBkYXksIHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0
ZSwgdW5zaWduZWQgc2Vjb25kLCB1bnNpZ25lZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9z
ZWNvbmQsIHVuc2lnbmVkIG5hbm9zZWNvbmQpCit7CisgICAgSW50MTI4IG5hbm9zZWNvbmRzID0g
RXhhY3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZzZXQoeWVhciwgbW9udGgsIGRheSwgaG91ciwg
bWludXRlLCBzZWNvbmQsIG1pbGxpc2Vjb25kLCBtaWNyb3NlY29uZCwgbmFub3NlY29uZCwgMCku
ZXBvY2hOYW5vc2Vjb25kcygpOworICAgIGlmIChuYW5vc2Vjb25kcyA8PSAoRXhhY3RUaW1lOjpt
aW5WYWx1ZSAtIEV4YWN0VGltZTo6bnNQZXJEYXkpKQorICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgaWYgKG5hbm9zZWNvbmRzID49IChFeGFjdFRpbWU6Om1heFZhbHVlICsgRXhhY3RUaW1lOjpu
c1BlckRheSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwog
fSAvLyBuYW1lc3BhY2UgSVNPODYwMQogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JU084NjAxLmgKaW5kZXggMjY1MGU5YzAxYTRjYmRiZDMxMGY5MWYyMmYx
YTkxZDdiZjdlNmM2Ny4uNWU4ODBiMDI4MGI1MzY4NmYyNjUzNDI5MTRlNmI2MGVlY2UzNTI4NyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaApAQCAtODMsNiArODMsMTYg
QEAgY2xhc3MgRHVyYXRpb24gewogY2xhc3MgRXhhY3RUaW1lIHsKICAgICBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRChFeGFjdFRpbWUpOwogcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgSW50
MTI4IGRheVJhbmdlU2Vjb25kcyB7IDg2NDAwJzAwMDAwMDAwIH07IC8vIDFlOCBkYXlzCisgICAg
c3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJNaWNyb3NlY29uZCB7IDEwMDAgfTsKKyAgICBz
dGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pbGxpc2Vjb25kIHsgMScwMDAnMDAwIH07Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJTZWNvbmQgeyAxJzAwMCcwMDAnMDAwIH07
CisgICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJNaW51dGUgPSBuc1BlclNlY29uZCAq
IDYwOworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG5zUGVySG91ciA9IG5zUGVyTWludXRl
ICogNjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJEYXkgPSBuc1BlckhvdXIg
KiAyNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBtaW5WYWx1ZSA9IC1kYXlSYW5nZVNl
Y29uZHMgKiBuc1BlclNlY29uZDsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBtYXhWYWx1
ZSA9IGRheVJhbmdlU2Vjb25kcyAqIG5zUGVyU2Vjb25kOworCiAgICAgY29uc3RleHByIEV4YWN0
VGltZSgpID0gZGVmYXVsdDsKICAgICBjb25zdGV4cHIgRXhhY3RUaW1lKGNvbnN0IEV4YWN0VGlt
ZSYpID0gZGVmYXVsdDsKICAgICBjb25zdGV4cHIgZXhwbGljaXQgRXhhY3RUaW1lKEludDEyOCBl
cG9jaE5hbm9zZWNvbmRzKSA6IG1fZXBvY2hOYW5vc2Vjb25kcyhlcG9jaE5hbm9zZWNvbmRzKSB7
IH0KQEAgLTEwMywyMiArMTEzLDE4IEBAIGNsYXNzIEV4YWN0VGltZSB7CiAKICAgICBpbnQ2NF90
IGVwb2NoU2Vjb25kcygpIGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoaXNWYWxpZCgpKTsK
ICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludDY0X3Q+KG1fZXBvY2hOYW5vc2Vjb25kcyAv
IEV4YWN0VGltZTo6bnNQZXJTZWNvbmQpOwogICAgIH0KICAgICBpbnQ2NF90IGVwb2NoTWlsbGlz
ZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlkKCkpOwogICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9zZWNvbmRzIC8gRXhhY3RU
aW1lOjpuc1Blck1pbGxpc2Vjb25kKTsKICAgICB9CiAgICAgaW50NjRfdCBlcG9jaE1pY3Jvc2Vj
b25kcygpIGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoaXNWYWxpZCgpKTsKICAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PGludDY0X3Q+KG1fZXBvY2hOYW5vc2Vjb25kcyAvIEV4YWN0VGlt
ZTo6bnNQZXJNaWNyb3NlY29uZCk7CiAgICAgfQogICAgIGNvbnN0ZXhwciBJbnQxMjggZXBvY2hO
YW5vc2Vjb25kcygpIGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoaXNWYWxpZCgpKTsKICAg
ICAgICAgcmV0dXJuIG1fZXBvY2hOYW5vc2Vjb25kczsKICAgICB9CiAKQEAgLTE3NywxNSArMTgz
LDYgQEAgY2xhc3MgRXhhY3RUaW1lIHsKICAgICBzdGF0aWMgRXhhY3RUaW1lIG5vdygpOwogCiBw
cml2YXRlOgotICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IGRheVJhbmdlU2Vjb25kcyB7IDg2
NDAwJzAwMDAwMDAwIH07IC8vIDFlOCBkYXlzCi0gICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjgg
bnNQZXJNaWNyb3NlY29uZCB7IDEwMDAgfTsKLSAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBu
c1Blck1pbGxpc2Vjb25kIHsgMScwMDAnMDAwIH07Ci0gICAgc3RhdGljIGNvbnN0ZXhwciBJbnQx
MjggbnNQZXJTZWNvbmQgeyAxJzAwMCcwMDAnMDAwIH07Ci0gICAgc3RhdGljIGNvbnN0ZXhwciBJ
bnQxMjggbnNQZXJNaW51dGUgPSBuc1BlclNlY29uZCAqIDYwOwotICAgIHN0YXRpYyBjb25zdGV4
cHIgSW50MTI4IG5zUGVySG91ciA9IG5zUGVyTWludXRlICogNjA7Ci0gICAgc3RhdGljIGNvbnN0
ZXhwciBJbnQxMjggbWluVmFsdWUgPSAtZGF5UmFuZ2VTZWNvbmRzICogbnNQZXJTZWNvbmQ7Ci0g
ICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbWF4VmFsdWUgPSBkYXlSYW5nZVNlY29uZHMgKiBu
c1BlclNlY29uZDsKLQogICAgIHN0YXRpYyB2b2lkIGFzU3RyaW5nSW1wbChTdHJpbmdCdWlsZGVy
JiBidWlsZGVyLCBJbnQxMjggdmFsdWUpCiAgICAgewogICAgICAgICBpZiAodmFsdWUgPiA5KQpA
QCAtMjkxLDUgKzI4OCw3IEBAIGJvb2wgaXNWYWxpZER1cmF0aW9uKGNvbnN0IER1cmF0aW9uJik7
CiAKIHN0ZDo6b3B0aW9uYWw8RXhhY3RUaW1lPiBwYXJzZUluc3RhbnQoU3RyaW5nVmlldyk7CiAK
K2Jvb2wgaXNEYXRlVGltZVdpdGhpbkxpbWl0cyhpbnQzMl90IHllYXIsIHVpbnQ4X3QgbW9udGgs
IHVpbnQ4X3QgZGF5LCB1bnNpZ25lZCBob3VyLCB1bnNpZ25lZCBtaW51dGUsIHVuc2lnbmVkIHNl
Y29uZCwgdW5zaWduZWQgbWlsbGlzZWNvbmQsIHVuc2lnbmVkIG1pY3Jvc2Vjb25kLCB1bnNpZ25l
ZCBuYW5vc2Vjb25kKTsKKwogfSAvLyBuYW1lc3BhY2UgSVNPODYwMQogfSAvLyBuYW1lc3BhY2Ug
SlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBs
YWluRGF0ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWlu
RGF0ZS5jcHAKaW5kZXggYzc4Zjk0YmZiMDExNTI3YTY2YWYxYjg1ZDk2ZDNlNGNlNmViNDgzYy4u
MzJmNTI3NzM4MWRjNWRmMzU5MDlkYzgyODExNmJmMTk3OGRmYjc4YiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlLmNwcApAQCAtODks
MjIgKzg5LDM4IEBAIHN0YXRpYyBJU084NjAxOjpQbGFpbkRhdGUgdG9QbGFpbkRhdGUoSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSVNPODYwMTo6RHVyCiAgICAgVk0mIHZtID0gZ2xvYmFs
T2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
IAotICAgIGRvdWJsZSB5ZWFyID0gZHVyYXRpb24ueWVhcnMoKTsKLSAgICBkb3VibGUgbW9udGgg
PSBkdXJhdGlvbi5tb250aHMoKTsKLSAgICBkb3VibGUgZGF5ID0gZHVyYXRpb24uZGF5cygpOwot
ICAgIGlmICghKG1vbnRoID49IDEgJiYgbW9udGggPD0gMTIpKSB7CisgICAgZG91YmxlIHllYXJE
b3VibGUgPSBkdXJhdGlvbi55ZWFycygpOworICAgIGRvdWJsZSBtb250aERvdWJsZSA9IGR1cmF0
aW9uLm1vbnRocygpOworICAgIGRvdWJsZSBkYXlEb3VibGUgPSBkdXJhdGlvbi5kYXlzKCk7CisK
KyAgICBpZiAoIWlzSW5Cb3VuZHM8aW50MzJfdD4oeWVhckRvdWJsZSkpIHsKKyAgICAgICAgdGhy
b3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ5ZWFyIGlzIG91dCBvZiByYW5nZSJf
cyk7CisgICAgICAgIHJldHVybiB7IH07CisgICAgfQorICAgIGludDMyX3QgeWVhciA9IHN0YXRp
Y19jYXN0PGludDMyX3Q+KHllYXJEb3VibGUpOworCisgICAgaWYgKCEobW9udGhEb3VibGUgPj0g
MSAmJiBtb250aERvdWJsZSA8PSAxMikpIHsKICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJtb250aCBpcyBvdXQgb2YgcmFuZ2UiX3MpOwogICAgICAgICByZXR1
cm4geyB9OwogICAgIH0KLSAgICBkb3VibGUgZGF5c0luTW9udGggPSBJU084NjAxOjpkYXlzSW5N
b250aChzdGF0aWNfY2FzdDxpbnQzMl90Pih5ZWFyKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1v
bnRoKSk7Ci0gICAgaWYgKCEoZGF5ID49IDEgJiYgZGF5IDw9IGRheXNJbk1vbnRoKSkgeworICAg
IHVuc2lnbmVkIG1vbnRoID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1vbnRoRG91YmxlKTsKKwor
ICAgIGRvdWJsZSBkYXlzSW5Nb250aCA9IElTTzg2MDE6OmRheXNJbk1vbnRoKHllYXIsIG1vbnRo
KTsKKyAgICBpZiAoIShkYXlEb3VibGUgPj0gMSAmJiBkYXlEb3VibGUgPD0gZGF5c0luTW9udGgp
KSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiZGF5IGlz
IG91dCBvZiByYW5nZSJfcyk7CiAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQorICAgIHVuc2ln
bmVkIGRheSA9IHN0YXRpY19jYXN0PHVuc2lnbmVkPihkYXlEb3VibGUpOworCisgICAgaWYgKCFJ
U084NjAxOjppc0RhdGVUaW1lV2l0aGluTGltaXRzKHllYXIsIG1vbnRoLCBkYXksIDAsIDAsIDAs
IDAsIDAsIDApKSB7CisgICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiZGF0ZSB0aW1lIGlzIG91dCBvZiByYW5nZSBvZiBFQ01BU2NyaXB0IHJlcHJlc2VudGF0aW9u
Il9zKTsKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICB9CisKICAgICByZXR1cm4gSVNPODYwMTo6
UGxhaW5EYXRlIHsKLSAgICAgICAgc3RhdGljX2Nhc3Q8aW50MzJfdD4oeWVhciksCi0gICAgICAg
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihtb250aCksCi0gICAgICAgIHN0YXRpY19jYXN0PHVuc2ln
bmVkPihkYXkpCisgICAgICAgIHllYXIsCisgICAgICAgIG1vbnRoLAorICAgICAgICBkYXkKICAg
ICB9OwogfQogCmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxvZyBiL0pTVGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDc2ZjU5MjZlYTZmYzBmNWNlNDc0MmU0NjE5YzUxNGE2YTdhODg3M2IuLjI3NGZk
N2MwNWRiZmZkM2QwMGIwYmU1NmZhNjAwMDY1YTBkOWJlOGYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjIt
MDItMjAgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlND
XSBUZW1wb3JhbC5QbGFpbkRhdGUgc2hvdWxkIHZhbGlkYXRlIGlucHV0IHJhbmdlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY5MzYKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy90ZW1wb3Jh
bC1wbGFpbmRhdGUuanM6CisgICAgICAgIChzaG91bGRUaHJvdyk6CisKIDIwMjItMDItMTkgIENv
bW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3
ZWQsIHJldmVydGluZyByMjkwMTk0IGFuZCByMjkwMjEwLgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9z
dHJlc3MvdGVtcG9yYWwtcGxhaW5kYXRlLmpzIGIvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtcGxh
aW5kYXRlLmpzCmluZGV4IGE0MWE2ZmRiOGRmNzMwMGMxMmRiZWRmMTcyMDdjMWVlZDI0ZmM0ZmIu
LjEzMDU5ZTNkYzlkZmNlOWVlYjg1ZmM0MmJlMjk4MjQ3YTM2YjQxYmIgMTAwNjQ0Ci0tLSBhL0pT
VGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWluZGF0ZS5qcworKysgYi9KU1Rlc3RzL3N0cmVzcy90
ZW1wb3JhbC1wbGFpbmRhdGUuanMKQEAgLTEwOCw2ICsxMDgsMTAgQEAgZnVuY3Rpb24gc2hvdWxk
VGhyb3coZnVuYywgZXJyb3JUeXBlLCBtZXNzYWdlKSB7CiBzaG91bGRUaHJvdygoKSA9PiB7IG5l
dyBUZW1wb3JhbC5QbGFpbkRhdGUoMjAwNywgLUluZmluaXR5LCAxKTsgfSwgUmFuZ2VFcnJvcik7
CiBzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMjAwNywgMSwgSW5m
aW5pdHkpOyB9LCBSYW5nZUVycm9yKTsKIHNob3VsZFRocm93KCgpID0+IHsgbmV3IFRlbXBvcmFs
LlBsYWluRGF0ZSgyMDA3LCAxLCAtSW5maW5pdHkpOyB9LCBSYW5nZUVycm9yKTsKK3Nob3VsZFRo
cm93KCgpID0+IHsgbmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgweDgwMDAwMDAwLCAxLCAxKTsgfSwg
UmFuZ2VFcnJvcik7CitzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUo
LTB4ODAwMDAwMDAsIDEsIDEpOyB9LCBSYW5nZUVycm9yKTsKK3Nob3VsZFRocm93KCgpID0+IHsg
bmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgweDdmZmZmZmZmLCAxLCAxKTsgfSwgUmFuZ2VFcnJvcik7
CitzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoLTB4N2ZmZmZmZmYs
IDEsIDEpOyB9LCBSYW5nZUVycm9yKTsKIAogbGV0IGZhaWx1cmVzID0gWwogICAgICIiLAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452776</attachid>
            <date>2022-02-21 14:44:26 -0800</date>
            <delta_ts>2022-02-21 14:57:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236936-20220221144425.patch</filename>
            <type>text/plain</type>
            <size>14620</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
Yjc0NGY3M2I0MTBjZWY1MTg4ZTZkYzE3Y2IxY2Q5Nzg4ODdiN2YxLi4yOWIxMzk0MGM0OGM0Y2Fl
ODkzMzVmYjQ4MjgzMDlkY2YxY2ZiNTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAyMi0wMi0yMSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFRlbXBvcmFsLlBsYWluRGF0ZSBzaG91bGQgdmFsaWRhdGUgaW5w
dXQgcmFuZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNjkzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudCBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3NlYy10ZW1wb3Jh
bC1pc29kYXRldGltZXdpdGhpbmxpbWl0cyBjaGVjayBpbgorICAgICAgICBQbGFpbkRhdGUgdG8g
dmFsaWRhdGUgaW5wdXQgcmFuZ2UuIEZvciBleGFtcGxlLCAweDdmZmZmZmZmIHllYXIgc2hvdWxk
IGJlIHJlamVjdGVkIHNpbmNlCisgICAgICAgIGl0IGlzIGxhcmdlciB0aGFuIEVDTUFTY3JpcHQg
ZGF0ZXRpbWUgcmVwcmVzZW50YXRpb24gdmFsdWUuIFRoaXMgaXMgY2hlY2tlZCB2aWEgSVNPRGF0
ZVRpbWVXaXRoaW5MaW1pdHMKKyAgICAgICAgaW4gdGhlIHNwZWMuCisKKyAgICAgICAgV2UgYWxz
byByZW1vdmUgaXNWYWxpZCBhc3NlcnRpb25zIGluIEV4YWN0VGltZS4gVGhpcyBzaG91bGQgbm90
IGJlIGNoZWNrZWQgaW4gdGhlc2UgYWNjZXNzb3JzLCByYXRoZXIsCisgICAgICAgIHdlIHNob3Vs
ZCBjYWxsIHRoYXQgZnVuY3Rpb24gd2hlbiB3ZSB3b3VsZCBsaWtlIHRvIGNoZWNrLCBzaW5jZSBQ
bGFpbkRhdGUgY2FuIHJlcHJlc2VudCBhIGJpdCBzbWFsbGVyCisgICAgICAgIHZhbHVlIHRoYW4g
RXhhY3RUaW1lJ3MgbWluVmFsdWUgKG1pblZhbHVlIC0gbnNQZXJEYXkpLgorCisgICAgICAgIFdl
IGFsc28gZXh0ZW5kIEV4YWN0VGltZTo6ZnJvbUlTT1BhcnRzQW5kT2Zmc2V0IHRvIGhhbmRsZSB2
YWx1ZXMgdmlhIEludDEyOCB0byBhY2NlcHQgaW50MzJfdCByYW5nZSB5ZWFycy4KKyAgICAgICAg
QnkgdXNpbmcgSW50MTI4IGZvciBuYW5vc2Vjb25kcywgd2UgY2FuIGV2ZW4gcmVwcmVzZW50IGlu
dDMyX3QgbWF4IC8gbWluIHllYXJzLiBBbmQgd2UgcmVtb3ZlCisgICAgICAgIGBBU1NFUlQoeSA+
PSAtOTk5OTk5ICYmIHkgPD0gOTk5OTk5KWAgY2hlY2sgc2luY2UgdGhpcyBpcyBub3QgbmVjZXNz
YXJ5LgorCisgICAgICAgICogcnVudGltZS9JU084NjAxLmNwcDoKKyAgICAgICAgKEpTQzo6SVNP
ODYwMTo6RXhhY3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZzZXQpOgorICAgICAgICAoSlNDOjpJ
U084NjAxOjppc0RhdGVUaW1lV2l0aGluTGltaXRzKToKKyAgICAgICAgKiBydW50aW1lL0lTTzg2
MDEuaDoKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjpFeGFjdFRpbWUpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaFNlY29uZHMp
OiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaE1p
bGxpc2Vjb25kcyk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
ZnJvbUVwb2NoTWljcm9zZWNvbmRzKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SVNPODYwMTo6
RXhhY3RUaW1lOjplcG9jaFNlY29uZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmVwb2NoTWlsbGlzZWNvbmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjplcG9jaE1pY3Jvc2Vjb25kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6ZXBvY2hOYW5vc2Vj
b25kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
bmFub3NlY29uZHNGcmFjdGlvbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2
MDE6OkV4YWN0VGltZTo6YXNTdHJpbmcgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmlzVmFsaWQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpJU084NjAxOjpFeGFjdFRpbWU6Om9wZXJhdG9yPCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I8PSBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I9PSBjb25zdCk6IERlbGV0
ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3IhPSBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I+PSBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0
b3I+IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcDoKKyAgICAgICAgKEpTQzo6dG9QbGFpbkRhdGUpOgorCiAyMDIyLTAyLTIxICBZdXN1a2Ug
U3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gU2hhZG93UmVhbG0g
d3JhcEFyZ3VtZW50IHNob3VsZCBjaGVjayBleGNlcHRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDBiOGQ4YTE1ZWQxZjg3
MDc2NDI2ZWUzOTRhMGMwMzAyOGYzMGEwZTUuLjJmYzg3OGM1OGVjZGQ1MGM4OTBmNDY3YjY5MzVm
NjMxZmY3MzY3YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjItMDItMjEgIFl1c3VrZSBTdXp1
a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBUZW1wb3JhbC5QbGFpbkRh
dGUgc2hvdWxkIHZhbGlkYXRlIGlucHV0IHJhbmdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY5MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgY29kZSB0byBhbGxvdyBkYXRhTG9nKEludDEyOCku
CisKKyAgICAgICAgKiB3dGYvSW50MTI4LmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJbnRlcm5h
bCk6CisgICAgICAgICogd3RmL0ludDEyOC5oOgorCiAyMDIyLTAyLTE4ICBEZXZpbiBSb3Vzc28g
IDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBTYWZhcmkgY2FuIHNvbWV0aW1l
cyBoYW5nIHdoaWxlIHByaW50aW5nIGR1ZSB0byBzeW5jIElQQwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JU084NjAxLmNwcAppbmRleCA5YjU4M2I1ZjNlNGUzNWRlZTA0ZWJlMmRmMDEz
YjY4YTMyZDNkODZhLi43NmEwYTYzZjMzYzc5Mjk2MmM3ZWRmODc0NzdiNjVkMzIyNWJhMWZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcApAQCAtMTE5MiwyMyAr
MTE5MiwyMCBAQCBib29sIGlzVmFsaWREdXJhdGlvbihjb25zdCBEdXJhdGlvbiYgZHVyYXRpb24p
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUV4YWN0VGltZSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0
c0FuZE9mZnNldChpbnQzMl90IHksIHVpbnQ4X3QgbW9uLCB1aW50OF90IGQsIHVuc2lnbmVkIGgs
IHVuc2lnbmVkIG1pbiwgdW5zaWduZWQgcywgdW5zaWduZWQgbXMsIHVuc2lnbmVkIG1pY3Jvcywg
dW5zaWduZWQgbnMsIGludDY0X3Qgb2Zmc2V0KQorRXhhY3RUaW1lIEV4YWN0VGltZTo6ZnJvbUlT
T1BhcnRzQW5kT2Zmc2V0KGludDMyX3QgeWVhciwgdWludDhfdCBtb250aCwgdWludDhfdCBkYXks
IHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0ZSwgdW5zaWduZWQgc2Vjb25kLCB1bnNpZ25l
ZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9zZWNvbmQsIHVuc2lnbmVkIG5hbm9zZWNvbmQs
IGludDY0X3Qgb2Zmc2V0KQogewotICAgIEFTU0VSVCh5ID49IC05OTk5OTkgJiYgeSA8PSA5OTk5
OTkpOwotICAgIEFTU0VSVChtb24gPj0gMSAmJiBtb24gPD0gMTIpOwotICAgIEFTU0VSVChkID49
IDEgJiYgZCA8PSAzMSk7Ci0gICAgQVNTRVJUKGggPD0gMjMpOwotICAgIEFTU0VSVChtaW4gPD0g
NTkpOwotICAgIEFTU0VSVChzIDw9IDU5KTsKLSAgICBBU1NFUlQobXMgPD0gOTk5KTsKLSAgICBB
U1NFUlQobWljcm9zIDw9IDk5OSk7Ci0gICAgQVNTRVJUKG5zIDw9IDk5OSk7Ci0KLSAgICBkb3Vi
bGUgZGF0ZURheXMgPSBkYXRlVG9EYXlzRnJvbTE5NzAoeSwgbW9uIC0gMSwgZCk7Ci0gICAgZG91
YmxlIHRpbWVNcyA9IHRpbWVUb01TKGgsIG1pbiwgcywgbXMpOwotICAgIGRvdWJsZSB1dGNNcyA9
IGRhdGVEYXlzICogbXNQZXJEYXkgKyB0aW1lTXM7Ci0gICAgSW50MTI4IHV0Y05zID0gc3RhdGlj
X2Nhc3Q8SW50MTI4Pih1dGNNcykgKiAxJzAwMCcwMDAgKyBtaWNyb3MgKiAxMDAwICsgbnM7Ci0g
ICAgcmV0dXJuIEV4YWN0VGltZSB7IHV0Y05zIC0gb2Zmc2V0IH07CisgICAgQVNTRVJUKG1vbnRo
ID49IDEgJiYgbW9udGggPD0gMTIpOworICAgIEFTU0VSVChkYXkgPj0gMSAmJiBkYXkgPD0gMzEp
OworICAgIEFTU0VSVChob3VyIDw9IDIzKTsKKyAgICBBU1NFUlQobWludXRlIDw9IDU5KTsKKyAg
ICBBU1NFUlQoc2Vjb25kIDw9IDU5KTsKKyAgICBBU1NFUlQobWlsbGlzZWNvbmQgPD0gOTk5KTsK
KyAgICBBU1NFUlQobWljcm9zZWNvbmQgPD0gOTk5KTsKKyAgICBBU1NFUlQobmFub3NlY29uZCA8
PSA5OTkpOworCisgICAgSW50MTI4IGRhdGVEYXlzID0gc3RhdGljX2Nhc3Q8SW50MTI4PihkYXRl
VG9EYXlzRnJvbTE5NzAoeWVhciwgbW9udGggLSAxLCBkYXkpKTsKKyAgICBJbnQxMjggdXRjTmFu
b3NlY29uZHMgPSBkYXRlRGF5cyAqIG5zUGVyRGF5ICsgaG91ciAqIG5zUGVySG91ciArIG1pbnV0
ZSAqIG5zUGVyTWludXRlICsgc2Vjb25kICogbnNQZXJTZWNvbmQgKyBtaWxsaXNlY29uZCAqIG5z
UGVyTWlsbGlzZWNvbmQgKyBtaWNyb3NlY29uZCAqIG5zUGVyTWljcm9zZWNvbmQgKyBuYW5vc2Vj
b25kOworICAgIHJldHVybiBFeGFjdFRpbWUgeyB1dGNOYW5vc2Vjb25kcyAtIG9mZnNldCB9Owog
fQogCiB1c2luZyBDaGVja2VkSW50MTI4ID0gQ2hlY2tlZDxJbnQxMjgsIFJlY29yZE92ZXJmbG93
PjsKQEAgLTEzMjEsNSArMTMxOCwxNiBAQCBFeGFjdFRpbWUgRXhhY3RUaW1lOjpub3coKQogICAg
IHJldHVybiBFeGFjdFRpbWUgeyBXVEY6OmN1cnJlbnRUaW1lSW5OYW5vc2Vjb25kcygpIH07CiB9
CiAKKy8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jc2VjLXRlbXBvcmFsLWlz
b2RhdGV0aW1ld2l0aGlubGltaXRzCitib29sIGlzRGF0ZVRpbWVXaXRoaW5MaW1pdHMoaW50MzJf
dCB5ZWFyLCB1aW50OF90IG1vbnRoLCB1aW50OF90IGRheSwgdW5zaWduZWQgaG91ciwgdW5zaWdu
ZWQgbWludXRlLCB1bnNpZ25lZCBzZWNvbmQsIHVuc2lnbmVkIG1pbGxpc2Vjb25kLCB1bnNpZ25l
ZCBtaWNyb3NlY29uZCwgdW5zaWduZWQgbmFub3NlY29uZCkKK3sKKyAgICBJbnQxMjggbmFub3Nl
Y29uZHMgPSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0c0FuZE9mZnNldCh5ZWFyLCBtb250aCwgZGF5
LCBob3VyLCBtaW51dGUsIHNlY29uZCwgbWlsbGlzZWNvbmQsIG1pY3Jvc2Vjb25kLCBuYW5vc2Vj
b25kLCAwKS5lcG9jaE5hbm9zZWNvbmRzKCk7CisgICAgaWYgKG5hbm9zZWNvbmRzIDw9IChFeGFj
dFRpbWU6Om1pblZhbHVlIC0gRXhhY3RUaW1lOjpuc1BlckRheSkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICBpZiAobmFub3NlY29uZHMgPj0gKEV4YWN0VGltZTo6bWF4VmFsdWUgKyBFeGFj
dFRpbWU6Om5zUGVyRGF5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiB0cnVl
OworfQorCiB9IC8vIG5hbWVzcGFjZSBJU084NjAxCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaAppbmRleCAyMjNiNjhkMmYyM2Q0ZWU0YTgx
NDA2MTQ0NDA2NzM3M2EzOGYxYThiLi5mMWUxMjBmN2ZhNmYxNmNjZDdkNWU1Y2EwNzQzMmExYWQz
NTYyZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAx
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5oCkBAIC04Myw2
ICs4MywxNiBAQCBjbGFzcyBEdXJhdGlvbiB7CiBjbGFzcyBFeGFjdFRpbWUgewogICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEKEV4YWN0VGltZSk7CiBwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0
ZXhwciBJbnQxMjggZGF5UmFuZ2VTZWNvbmRzIHsgODY0MDAnMDAwMDAwMDAgfTsgLy8gMWU4IGRh
eXMKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pY3Jvc2Vjb25kIHsgMTAwMCB9
OworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG5zUGVyTWlsbGlzZWNvbmQgeyAxJzAwMCcw
MDAgfTsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1BlclNlY29uZCB7IDEnMDAwJzAw
MCcwMDAgfTsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pbnV0ZSA9IG5zUGVy
U2Vjb25kICogNjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJIb3VyID0gbnNQ
ZXJNaW51dGUgKiA2MDsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1BlckRheSA9IG5z
UGVySG91ciAqIDI0OworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG1pblZhbHVlID0gLWRh
eVJhbmdlU2Vjb25kcyAqIG5zUGVyU2Vjb25kOworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4
IG1heFZhbHVlID0gZGF5UmFuZ2VTZWNvbmRzICogbnNQZXJTZWNvbmQ7CisKICAgICBjb25zdGV4
cHIgRXhhY3RUaW1lKCkgPSBkZWZhdWx0OwogICAgIGNvbnN0ZXhwciBFeGFjdFRpbWUoY29uc3Qg
RXhhY3RUaW1lJikgPSBkZWZhdWx0OwogICAgIGNvbnN0ZXhwciBleHBsaWNpdCBFeGFjdFRpbWUo
SW50MTI4IGVwb2NoTmFub3NlY29uZHMpIDogbV9lcG9jaE5hbm9zZWNvbmRzKGVwb2NoTmFub3Nl
Y29uZHMpIHsgfQpAQCAtMTAzLDIyICsxMTMsMTggQEAgY2xhc3MgRXhhY3RUaW1lIHsKIAogICAg
IGludDY0X3QgZXBvY2hTZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1Zh
bGlkKCkpOwogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9z
ZWNvbmRzIC8gRXhhY3RUaW1lOjpuc1BlclNlY29uZCk7CiAgICAgfQogICAgIGludDY0X3QgZXBv
Y2hNaWxsaXNlY29uZHMoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzVmFsaWQoKSk7
CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ2NF90PihtX2Vwb2NoTmFub3NlY29uZHMg
LyBFeGFjdFRpbWU6Om5zUGVyTWlsbGlzZWNvbmQpOwogICAgIH0KICAgICBpbnQ2NF90IGVwb2No
TWljcm9zZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlkKCkpOwog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9zZWNvbmRzIC8g
RXhhY3RUaW1lOjpuc1Blck1pY3Jvc2Vjb25kKTsKICAgICB9CiAgICAgY29uc3RleHByIEludDEy
OCBlcG9jaE5hbm9zZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlk
KCkpOwogICAgICAgICByZXR1cm4gbV9lcG9jaE5hbm9zZWNvbmRzOwogICAgIH0KIApAQCAtMTc3
LDE1ICsxODMsNiBAQCBjbGFzcyBFeGFjdFRpbWUgewogICAgIHN0YXRpYyBFeGFjdFRpbWUgbm93
KCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggZGF5UmFuZ2VTZWNv
bmRzIHsgODY0MDAnMDAwMDAwMDAgfTsgLy8gMWU4IGRheXMKLSAgICBzdGF0aWMgY29uc3RleHBy
IEludDEyOCBuc1Blck1pY3Jvc2Vjb25kIHsgMTAwMCB9OwotICAgIHN0YXRpYyBjb25zdGV4cHIg
SW50MTI4IG5zUGVyTWlsbGlzZWNvbmQgeyAxJzAwMCcwMDAgfTsKLSAgICBzdGF0aWMgY29uc3Rl
eHByIEludDEyOCBuc1BlclNlY29uZCB7IDEnMDAwJzAwMCcwMDAgfTsKLSAgICBzdGF0aWMgY29u
c3RleHByIEludDEyOCBuc1Blck1pbnV0ZSA9IG5zUGVyU2Vjb25kICogNjA7Ci0gICAgc3RhdGlj
IGNvbnN0ZXhwciBJbnQxMjggbnNQZXJIb3VyID0gbnNQZXJNaW51dGUgKiA2MDsKLSAgICBzdGF0
aWMgY29uc3RleHByIEludDEyOCBtaW5WYWx1ZSA9IC1kYXlSYW5nZVNlY29uZHMgKiBuc1BlclNl
Y29uZDsKLSAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBtYXhWYWx1ZSA9IGRheVJhbmdlU2Vj
b25kcyAqIG5zUGVyU2Vjb25kOwotCiAgICAgc3RhdGljIHZvaWQgYXNTdHJpbmdJbXBsKFN0cmlu
Z0J1aWxkZXImIGJ1aWxkZXIsIEludDEyOCB2YWx1ZSkKICAgICB7CiAgICAgICAgIGlmICh2YWx1
ZSA+IDkpCkBAIC0zMDgsNSArMzA1LDcgQEAgYm9vbCBpc1ZhbGlkRHVyYXRpb24oY29uc3QgRHVy
YXRpb24mKTsKIAogc3RkOjpvcHRpb25hbDxFeGFjdFRpbWU+IHBhcnNlSW5zdGFudChTdHJpbmdW
aWV3KTsKIAorYm9vbCBpc0RhdGVUaW1lV2l0aGluTGltaXRzKGludDMyX3QgeWVhciwgdWludDhf
dCBtb250aCwgdWludDhfdCBkYXksIHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0ZSwgdW5z
aWduZWQgc2Vjb25kLCB1bnNpZ25lZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9zZWNvbmQs
IHVuc2lnbmVkIG5hbm9zZWNvbmQpOworCiB9IC8vIG5hbWVzcGFjZSBJU084NjAxCiB9IC8vIG5h
bWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsUGxhaW5EYXRlLmNwcAppbmRleCBmNWRkYmI0NjZiZmRkMDBhYWQ0N2IxZWMyZTcwMzE0MDZl
MTlkOWM2Li5kYTJiYjc0ODA3MDdlYTQ1ODk3ZGZiZDdiN2VhMjYxODg2Yzc3ZjBmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3Bw
CkBAIC04OSwyMiArODksMzggQEAgc3RhdGljIElTTzg2MDE6OlBsYWluRGF0ZSB0b1BsYWluRGF0
ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBJU084NjAxOjpEdXIKICAgICBWTSYgdm0g
PSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogCi0gICAgZG91YmxlIHllYXIgPSBkdXJhdGlvbi55ZWFycygpOwotICAgIGRvdWJs
ZSBtb250aCA9IGR1cmF0aW9uLm1vbnRocygpOwotICAgIGRvdWJsZSBkYXkgPSBkdXJhdGlvbi5k
YXlzKCk7Ci0gICAgaWYgKCEobW9udGggPj0gMSAmJiBtb250aCA8PSAxMikpIHsKKyAgICBkb3Vi
bGUgeWVhckRvdWJsZSA9IGR1cmF0aW9uLnllYXJzKCk7CisgICAgZG91YmxlIG1vbnRoRG91Ymxl
ID0gZHVyYXRpb24ubW9udGhzKCk7CisgICAgZG91YmxlIGRheURvdWJsZSA9IGR1cmF0aW9uLmRh
eXMoKTsKKworICAgIGlmICghaXNJbkJvdW5kczxpbnQzMl90Pih5ZWFyRG91YmxlKSkgeworICAg
ICAgICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInllYXIgaXMgb3V0IG9m
IHJhbmdlIl9zKTsKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICB9CisgICAgaW50MzJfdCB5ZWFy
ID0gc3RhdGljX2Nhc3Q8aW50MzJfdD4oeWVhckRvdWJsZSk7CisKKyAgICBpZiAoIShtb250aERv
dWJsZSA+PSAxICYmIG1vbnRoRG91YmxlIDw9IDEyKSkgewogICAgICAgICB0aHJvd1JhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIm1vbnRoIGlzIG91dCBvZiByYW5nZSJfcyk7CiAgICAg
ICAgIHJldHVybiB7IH07CiAgICAgfQotICAgIGRvdWJsZSBkYXlzSW5Nb250aCA9IElTTzg2MDE6
OmRheXNJbk1vbnRoKHN0YXRpY19jYXN0PGludDMyX3Q+KHllYXIpLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4obW9udGgpKTsKLSAgICBpZiAoIShkYXkgPj0gMSAmJiBkYXkgPD0gZGF5c0luTW9udGgp
KSB7CisgICAgdW5zaWduZWQgbW9udGggPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obW9udGhEb3Vi
bGUpOworCisgICAgZG91YmxlIGRheXNJbk1vbnRoID0gSVNPODYwMTo6ZGF5c0luTW9udGgoeWVh
ciwgbW9udGgpOworICAgIGlmICghKGRheURvdWJsZSA+PSAxICYmIGRheURvdWJsZSA8PSBkYXlz
SW5Nb250aCkpIHsKICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJkYXkgaXMgb3V0IG9mIHJhbmdlIl9zKTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9Cisg
ICAgdW5zaWduZWQgZGF5ID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGRheURvdWJsZSk7CisKKyAg
ICBpZiAoIUlTTzg2MDE6OmlzRGF0ZVRpbWVXaXRoaW5MaW1pdHMoeWVhciwgbW9udGgsIGRheSwg
MCwgMCwgMCwgMCwgMCwgMCkpIHsKKyAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVj
dCwgc2NvcGUsICJkYXRlIHRpbWUgaXMgb3V0IG9mIHJhbmdlIG9mIEVDTUFTY3JpcHQgcmVwcmVz
ZW50YXRpb24iX3MpOworICAgICAgICByZXR1cm4geyB9OworICAgIH0KKwogICAgIHJldHVybiBJ
U084NjAxOjpQbGFpbkRhdGUgewotICAgICAgICBzdGF0aWNfY2FzdDxpbnQzMl90Pih5ZWFyKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1vbnRoKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KGRheSkKKyAgICAgICAgeWVhciwKKyAgICAgICAgbW9udGgsCisgICAgICAg
IGRheQogICAgIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi9JbnQxMjguY3BwCmluZGV4IDI0Mjk3Yjk1MDE1NzFhMWMxNmE2NzFh
YWM3OTYyOWM4MGZhYzY5NTQuLjRhYmQ3ODhiMTQxYzk1ZGQwZTcxYjlkNzVlODFmMzljMTYzMmM3
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5jcHAKKysrIGIvU291cmNlL1dU
Ri93dGYvSW50MTI4LmNwcApAQCAtMjMsNiArMjMsOSBAQAogI2luY2x1ZGUgPHN0cmluZz4KICNp
bmNsdWRlIDx0eXBlX3RyYWl0cz4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorI2luY2x1
ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CiAKIG5hbWVzcGFjZSBXVEYg
ewogCkBAIC0zMTgsNiArMzIxLDIwIEBAIHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9z
dHJlYW0mIG9zLCBJbnQxMjhJbXBsIHYpIHsKICAgcmV0dXJuIG9zIDw8IHJlcDsKIH0KIAordm9p
ZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBvdXQsIFVJbnQxMjggdmFsdWUpCit7CisgICAg
YXV0byB2ZWN0b3IgPSBudW1iZXJUb1N0cmluZ1Vuc2lnbmVkPFZlY3RvcjxMQ2hhciwgNTA+Pih2
YWx1ZSk7CisgICAgdmVjdG9yLmFwcGVuZCgnXDAnKTsKKyAgICBvdXQucHJpbnRmKCIlcyIsIGJp
dHdpc2VfY2FzdDxjb25zdCBjaGFyKj4odmVjdG9yLmRhdGEoKSkpOworfQorCit2b2lkIHByaW50
SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSW50MTI4IHZhbHVlKQoreworICAgIGF1dG8gdmVj
dG9yID0gbnVtYmVyVG9TdHJpbmdTaWduZWQ8VmVjdG9yPExDaGFyLCA1MD4+KHZhbHVlKTsKKyAg
ICB2ZWN0b3IuYXBwZW5kKCdcMCcpOworICAgIG91dC5wcmludGYoIiVzIiwgYml0d2lzZV9jYXN0
PGNvbnN0IGNoYXIqPih2ZWN0b3IuZGF0YSgpKSk7Cit9CisKIH0gIC8vIG5hbWVzcGFjZSBXVEYK
IAogbmFtZXNwYWNlIHN0ZCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9JbnQxMjguaCBi
L1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCmluZGV4IDFhZmRjOWNlMTZlMjlhYmY2YjYxZWMzNTlm
NTJhN2U1ZjgzZGEyZTUuLjllNjBkYWIyZmJhZTNlYjBjOTE5NzlmZThlNDIzNGY0Zjc2ZmI0NmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L0ludDEyOC5oCkBAIC01NSw2ICs1NSw3IEBACiBuYW1lc3BhY2UgV1RGIHsKIAogY2xhc3MgSW50
MTI4SW1wbDsKK2NsYXNzIFByaW50U3RyZWFtOwogCiAvLyBVSW50MTI4SW1wbAogLy8KQEAgLTEy
NjMsNiArMTI2NCw5IEBAIHVzaW5nIFVJbnQxMjggPSBVSW50MTI4SW1wbDsKIHVzaW5nIEludDEy
OCA9IEludDEyOEltcGw7CiAjZW5kaWYKIAorV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgcHJpbnRJ
bnRlcm5hbChQcmludFN0cmVhbSYsIFVJbnQxMjgpOworV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQg
cHJpbnRJbnRlcm5hbChQcmludFN0cmVhbSYsIEludDEyOCk7CisKIH0gIC8vIG5hbWVzcGFjZSBX
VEYKIAogdXNpbmcgV1RGOjpJbnQxMjg7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxvZyBi
L0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFmNGFmMjRiMTE0NmY1MDdkOWM1ODk3YjJhZGJkZDIw
OTVjNWRkOTcuLmZhZjBjMTg4ZGZhZWZiODk0MzFlMTA3M2YyMDcxNjU3NDlkYzI3ODEgMTAwNjQ0
Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMjItMDItMjEgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4K
KworICAgICAgICBbSlNDXSBUZW1wb3JhbC5QbGFpbkRhdGUgc2hvdWxkIHZhbGlkYXRlIGlucHV0
IHJhbmdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzY5MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHN0cmVzcy90ZW1wb3JhbC1wbGFpbmRhdGUuanM6CisgICAgICAgIChzaG91bGRUaHJvdyk6CisK
IDIwMjItMDItMjEgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbSlNDXSBTaGFkb3dSZWFsbSB3cmFwQXJndW1lbnQgc2hvdWxkIGNoZWNrIGV4Y2VwdGlvbnMK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWluZGF0ZS5qcyBiL0pTVGVz
dHMvc3RyZXNzL3RlbXBvcmFsLXBsYWluZGF0ZS5qcwppbmRleCA4MGYxNzY4MzRjODYxNWQ1YjVm
YTIwYzU2MWMyOGUwNjU2M2ZlZTE4Li42YjFiMWI3MzBiYTc2NDJiY2MyOWYzYTcxY2Y3ZjljZmQ0
M2Y3NTU4IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3N0cmVzcy90ZW1wb3JhbC1wbGFpbmRhdGUuanMK
KysrIGIvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtcGxhaW5kYXRlLmpzCkBAIC0xMTAsNiArMTEw
LDE0IEBAIGZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yVHlwZSwgbWVzc2FnZSkgewog
c2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwuUGxhaW5EYXRlKDIwMDcsIC1JbmZpbml0
eSwgMSk7IH0sIFJhbmdlRXJyb3IpOwogc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwu
UGxhaW5EYXRlKDIwMDcsIDEsIEluZmluaXR5KTsgfSwgUmFuZ2VFcnJvcik7CiBzaG91bGRUaHJv
dygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMjAwNywgMSwgLUluZmluaXR5KTsgfSwg
UmFuZ2VFcnJvcik7CitzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUo
MHg0MzUzMCwgOSwgMTQpOyB9LCBSYW5nZUVycm9yKTsKK25ldyBUZW1wb3JhbC5QbGFpbkRhdGUo
MHg0MzUzMCwgOSwgMTMpOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwuUGxhaW5E
YXRlKC0weDQyNWNkLCA0LCAxOSk7IH0sIFJhbmdlRXJyb3IpOworbmV3IFRlbXBvcmFsLlBsYWlu
RGF0ZSgtMHg0MjVjZCwgNCwgMjApOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwu
UGxhaW5EYXRlKDB4ODAwMDAwMDAsIDEsIDEpOyB9LCBSYW5nZUVycm9yKTsKK3Nob3VsZFRocm93
KCgpID0+IHsgbmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgtMHg4MDAwMDAwMCwgMSwgMSk7IH0sIFJh
bmdlRXJyb3IpOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwuUGxhaW5EYXRlKDB4
N2ZmZmZmZmYsIDEsIDEpOyB9LCBSYW5nZUVycm9yKTsKK3Nob3VsZFRocm93KCgpID0+IHsgbmV3
IFRlbXBvcmFsLlBsYWluRGF0ZSgtMHg3ZmZmZmZmZiwgMSwgMSk7IH0sIFJhbmdlRXJyb3IpOwog
CiBsZXQgZmFpbHVyZXMgPSBbCiAgICAgIiIsCg==
</data>
<flag name="commit-queue"
          id="479920"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452778</attachid>
            <date>2022-02-21 14:54:48 -0800</date>
            <delta_ts>2022-02-21 16:16:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236936-20220221145447.patch</filename>
            <type>text/plain</type>
            <size>15342</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
Yjc0NGY3M2I0MTBjZWY1MTg4ZTZkYzE3Y2IxY2Q5Nzg4ODdiN2YxLi4yOWIxMzk0MGM0OGM0Y2Fl
ODkzMzVmYjQ4MjgzMDlkY2YxY2ZiNTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAyMi0wMi0yMSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFRlbXBvcmFsLlBsYWluRGF0ZSBzaG91bGQgdmFsaWRhdGUgaW5w
dXQgcmFuZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNjkzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudCBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3NlYy10ZW1wb3Jh
bC1pc29kYXRldGltZXdpdGhpbmxpbWl0cyBjaGVjayBpbgorICAgICAgICBQbGFpbkRhdGUgdG8g
dmFsaWRhdGUgaW5wdXQgcmFuZ2UuIEZvciBleGFtcGxlLCAweDdmZmZmZmZmIHllYXIgc2hvdWxk
IGJlIHJlamVjdGVkIHNpbmNlCisgICAgICAgIGl0IGlzIGxhcmdlciB0aGFuIEVDTUFTY3JpcHQg
ZGF0ZXRpbWUgcmVwcmVzZW50YXRpb24gdmFsdWUuIFRoaXMgaXMgY2hlY2tlZCB2aWEgSVNPRGF0
ZVRpbWVXaXRoaW5MaW1pdHMKKyAgICAgICAgaW4gdGhlIHNwZWMuCisKKyAgICAgICAgV2UgYWxz
byByZW1vdmUgaXNWYWxpZCBhc3NlcnRpb25zIGluIEV4YWN0VGltZS4gVGhpcyBzaG91bGQgbm90
IGJlIGNoZWNrZWQgaW4gdGhlc2UgYWNjZXNzb3JzLCByYXRoZXIsCisgICAgICAgIHdlIHNob3Vs
ZCBjYWxsIHRoYXQgZnVuY3Rpb24gd2hlbiB3ZSB3b3VsZCBsaWtlIHRvIGNoZWNrLCBzaW5jZSBQ
bGFpbkRhdGUgY2FuIHJlcHJlc2VudCBhIGJpdCBzbWFsbGVyCisgICAgICAgIHZhbHVlIHRoYW4g
RXhhY3RUaW1lJ3MgbWluVmFsdWUgKG1pblZhbHVlIC0gbnNQZXJEYXkpLgorCisgICAgICAgIFdl
IGFsc28gZXh0ZW5kIEV4YWN0VGltZTo6ZnJvbUlTT1BhcnRzQW5kT2Zmc2V0IHRvIGhhbmRsZSB2
YWx1ZXMgdmlhIEludDEyOCB0byBhY2NlcHQgaW50MzJfdCByYW5nZSB5ZWFycy4KKyAgICAgICAg
QnkgdXNpbmcgSW50MTI4IGZvciBuYW5vc2Vjb25kcywgd2UgY2FuIGV2ZW4gcmVwcmVzZW50IGlu
dDMyX3QgbWF4IC8gbWluIHllYXJzLiBBbmQgd2UgcmVtb3ZlCisgICAgICAgIGBBU1NFUlQoeSA+
PSAtOTk5OTk5ICYmIHkgPD0gOTk5OTk5KWAgY2hlY2sgc2luY2UgdGhpcyBpcyBub3QgbmVjZXNz
YXJ5LgorCisgICAgICAgICogcnVudGltZS9JU084NjAxLmNwcDoKKyAgICAgICAgKEpTQzo6SVNP
ODYwMTo6RXhhY3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZzZXQpOgorICAgICAgICAoSlNDOjpJ
U084NjAxOjppc0RhdGVUaW1lV2l0aGluTGltaXRzKToKKyAgICAgICAgKiBydW50aW1lL0lTTzg2
MDEuaDoKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjpFeGFjdFRpbWUpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaFNlY29uZHMp
OiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaE1p
bGxpc2Vjb25kcyk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
ZnJvbUVwb2NoTWljcm9zZWNvbmRzKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SVNPODYwMTo6
RXhhY3RUaW1lOjplcG9jaFNlY29uZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmVwb2NoTWlsbGlzZWNvbmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjplcG9jaE1pY3Jvc2Vjb25kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6ZXBvY2hOYW5vc2Vj
b25kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
bmFub3NlY29uZHNGcmFjdGlvbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2
MDE6OkV4YWN0VGltZTo6YXNTdHJpbmcgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmlzVmFsaWQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpJU084NjAxOjpFeGFjdFRpbWU6Om9wZXJhdG9yPCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I8PSBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I9PSBjb25zdCk6IERlbGV0
ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3IhPSBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I+PSBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0
b3I+IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcDoKKyAgICAgICAgKEpTQzo6dG9QbGFpbkRhdGUpOgorCiAyMDIyLTAyLTIxICBZdXN1a2Ug
U3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gU2hhZG93UmVhbG0g
d3JhcEFyZ3VtZW50IHNob3VsZCBjaGVjayBleGNlcHRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDBiOGQ4YTE1ZWQxZjg3
MDc2NDI2ZWUzOTRhMGMwMzAyOGYzMGEwZTUuLjJmYzg3OGM1OGVjZGQ1MGM4OTBmNDY3YjY5MzVm
NjMxZmY3MzY3YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjItMDItMjEgIFl1c3VrZSBTdXp1
a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBUZW1wb3JhbC5QbGFpbkRh
dGUgc2hvdWxkIHZhbGlkYXRlIGlucHV0IHJhbmdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY5MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgY29kZSB0byBhbGxvdyBkYXRhTG9nKEludDEyOCku
CisKKyAgICAgICAgKiB3dGYvSW50MTI4LmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJbnRlcm5h
bCk6CisgICAgICAgICogd3RmL0ludDEyOC5oOgorCiAyMDIyLTAyLTE4ICBEZXZpbiBSb3Vzc28g
IDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBTYWZhcmkgY2FuIHNvbWV0aW1l
cyBoYW5nIHdoaWxlIHByaW50aW5nIGR1ZSB0byBzeW5jIElQQwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JU084NjAxLmNwcAppbmRleCA5YjU4M2I1ZjNlNGUzNWRlZTA0ZWJlMmRmMDEz
YjY4YTMyZDNkODZhLi43NmEwYTYzZjMzYzc5Mjk2MmM3ZWRmODc0NzdiNjVkMzIyNWJhMWZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcApAQCAtMTE5MiwyMyAr
MTE5MiwyMCBAQCBib29sIGlzVmFsaWREdXJhdGlvbihjb25zdCBEdXJhdGlvbiYgZHVyYXRpb24p
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUV4YWN0VGltZSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0
c0FuZE9mZnNldChpbnQzMl90IHksIHVpbnQ4X3QgbW9uLCB1aW50OF90IGQsIHVuc2lnbmVkIGgs
IHVuc2lnbmVkIG1pbiwgdW5zaWduZWQgcywgdW5zaWduZWQgbXMsIHVuc2lnbmVkIG1pY3Jvcywg
dW5zaWduZWQgbnMsIGludDY0X3Qgb2Zmc2V0KQorRXhhY3RUaW1lIEV4YWN0VGltZTo6ZnJvbUlT
T1BhcnRzQW5kT2Zmc2V0KGludDMyX3QgeWVhciwgdWludDhfdCBtb250aCwgdWludDhfdCBkYXks
IHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0ZSwgdW5zaWduZWQgc2Vjb25kLCB1bnNpZ25l
ZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9zZWNvbmQsIHVuc2lnbmVkIG5hbm9zZWNvbmQs
IGludDY0X3Qgb2Zmc2V0KQogewotICAgIEFTU0VSVCh5ID49IC05OTk5OTkgJiYgeSA8PSA5OTk5
OTkpOwotICAgIEFTU0VSVChtb24gPj0gMSAmJiBtb24gPD0gMTIpOwotICAgIEFTU0VSVChkID49
IDEgJiYgZCA8PSAzMSk7Ci0gICAgQVNTRVJUKGggPD0gMjMpOwotICAgIEFTU0VSVChtaW4gPD0g
NTkpOwotICAgIEFTU0VSVChzIDw9IDU5KTsKLSAgICBBU1NFUlQobXMgPD0gOTk5KTsKLSAgICBB
U1NFUlQobWljcm9zIDw9IDk5OSk7Ci0gICAgQVNTRVJUKG5zIDw9IDk5OSk7Ci0KLSAgICBkb3Vi
bGUgZGF0ZURheXMgPSBkYXRlVG9EYXlzRnJvbTE5NzAoeSwgbW9uIC0gMSwgZCk7Ci0gICAgZG91
YmxlIHRpbWVNcyA9IHRpbWVUb01TKGgsIG1pbiwgcywgbXMpOwotICAgIGRvdWJsZSB1dGNNcyA9
IGRhdGVEYXlzICogbXNQZXJEYXkgKyB0aW1lTXM7Ci0gICAgSW50MTI4IHV0Y05zID0gc3RhdGlj
X2Nhc3Q8SW50MTI4Pih1dGNNcykgKiAxJzAwMCcwMDAgKyBtaWNyb3MgKiAxMDAwICsgbnM7Ci0g
ICAgcmV0dXJuIEV4YWN0VGltZSB7IHV0Y05zIC0gb2Zmc2V0IH07CisgICAgQVNTRVJUKG1vbnRo
ID49IDEgJiYgbW9udGggPD0gMTIpOworICAgIEFTU0VSVChkYXkgPj0gMSAmJiBkYXkgPD0gMzEp
OworICAgIEFTU0VSVChob3VyIDw9IDIzKTsKKyAgICBBU1NFUlQobWludXRlIDw9IDU5KTsKKyAg
ICBBU1NFUlQoc2Vjb25kIDw9IDU5KTsKKyAgICBBU1NFUlQobWlsbGlzZWNvbmQgPD0gOTk5KTsK
KyAgICBBU1NFUlQobWljcm9zZWNvbmQgPD0gOTk5KTsKKyAgICBBU1NFUlQobmFub3NlY29uZCA8
PSA5OTkpOworCisgICAgSW50MTI4IGRhdGVEYXlzID0gc3RhdGljX2Nhc3Q8SW50MTI4PihkYXRl
VG9EYXlzRnJvbTE5NzAoeWVhciwgbW9udGggLSAxLCBkYXkpKTsKKyAgICBJbnQxMjggdXRjTmFu
b3NlY29uZHMgPSBkYXRlRGF5cyAqIG5zUGVyRGF5ICsgaG91ciAqIG5zUGVySG91ciArIG1pbnV0
ZSAqIG5zUGVyTWludXRlICsgc2Vjb25kICogbnNQZXJTZWNvbmQgKyBtaWxsaXNlY29uZCAqIG5z
UGVyTWlsbGlzZWNvbmQgKyBtaWNyb3NlY29uZCAqIG5zUGVyTWljcm9zZWNvbmQgKyBuYW5vc2Vj
b25kOworICAgIHJldHVybiBFeGFjdFRpbWUgeyB1dGNOYW5vc2Vjb25kcyAtIG9mZnNldCB9Owog
fQogCiB1c2luZyBDaGVja2VkSW50MTI4ID0gQ2hlY2tlZDxJbnQxMjgsIFJlY29yZE92ZXJmbG93
PjsKQEAgLTEzMjEsNSArMTMxOCwxNiBAQCBFeGFjdFRpbWUgRXhhY3RUaW1lOjpub3coKQogICAg
IHJldHVybiBFeGFjdFRpbWUgeyBXVEY6OmN1cnJlbnRUaW1lSW5OYW5vc2Vjb25kcygpIH07CiB9
CiAKKy8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jc2VjLXRlbXBvcmFsLWlz
b2RhdGV0aW1ld2l0aGlubGltaXRzCitib29sIGlzRGF0ZVRpbWVXaXRoaW5MaW1pdHMoaW50MzJf
dCB5ZWFyLCB1aW50OF90IG1vbnRoLCB1aW50OF90IGRheSwgdW5zaWduZWQgaG91ciwgdW5zaWdu
ZWQgbWludXRlLCB1bnNpZ25lZCBzZWNvbmQsIHVuc2lnbmVkIG1pbGxpc2Vjb25kLCB1bnNpZ25l
ZCBtaWNyb3NlY29uZCwgdW5zaWduZWQgbmFub3NlY29uZCkKK3sKKyAgICBJbnQxMjggbmFub3Nl
Y29uZHMgPSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0c0FuZE9mZnNldCh5ZWFyLCBtb250aCwgZGF5
LCBob3VyLCBtaW51dGUsIHNlY29uZCwgbWlsbGlzZWNvbmQsIG1pY3Jvc2Vjb25kLCBuYW5vc2Vj
b25kLCAwKS5lcG9jaE5hbm9zZWNvbmRzKCk7CisgICAgaWYgKG5hbm9zZWNvbmRzIDw9IChFeGFj
dFRpbWU6Om1pblZhbHVlIC0gRXhhY3RUaW1lOjpuc1BlckRheSkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICBpZiAobmFub3NlY29uZHMgPj0gKEV4YWN0VGltZTo6bWF4VmFsdWUgKyBFeGFj
dFRpbWU6Om5zUGVyRGF5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiB0cnVl
OworfQorCiB9IC8vIG5hbWVzcGFjZSBJU084NjAxCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaAppbmRleCAyMjNiNjhkMmYyM2Q0ZWU0YTgx
NDA2MTQ0NDA2NzM3M2EzOGYxYThiLi5mMWUxMjBmN2ZhNmYxNmNjZDdkNWU1Y2EwNzQzMmExYWQz
NTYyZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAx
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5oCkBAIC04Myw2
ICs4MywxNiBAQCBjbGFzcyBEdXJhdGlvbiB7CiBjbGFzcyBFeGFjdFRpbWUgewogICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEKEV4YWN0VGltZSk7CiBwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0
ZXhwciBJbnQxMjggZGF5UmFuZ2VTZWNvbmRzIHsgODY0MDAnMDAwMDAwMDAgfTsgLy8gMWU4IGRh
eXMKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pY3Jvc2Vjb25kIHsgMTAwMCB9
OworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG5zUGVyTWlsbGlzZWNvbmQgeyAxJzAwMCcw
MDAgfTsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1BlclNlY29uZCB7IDEnMDAwJzAw
MCcwMDAgfTsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pbnV0ZSA9IG5zUGVy
U2Vjb25kICogNjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJIb3VyID0gbnNQ
ZXJNaW51dGUgKiA2MDsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1BlckRheSA9IG5z
UGVySG91ciAqIDI0OworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG1pblZhbHVlID0gLWRh
eVJhbmdlU2Vjb25kcyAqIG5zUGVyU2Vjb25kOworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4
IG1heFZhbHVlID0gZGF5UmFuZ2VTZWNvbmRzICogbnNQZXJTZWNvbmQ7CisKICAgICBjb25zdGV4
cHIgRXhhY3RUaW1lKCkgPSBkZWZhdWx0OwogICAgIGNvbnN0ZXhwciBFeGFjdFRpbWUoY29uc3Qg
RXhhY3RUaW1lJikgPSBkZWZhdWx0OwogICAgIGNvbnN0ZXhwciBleHBsaWNpdCBFeGFjdFRpbWUo
SW50MTI4IGVwb2NoTmFub3NlY29uZHMpIDogbV9lcG9jaE5hbm9zZWNvbmRzKGVwb2NoTmFub3Nl
Y29uZHMpIHsgfQpAQCAtMTAzLDIyICsxMTMsMTggQEAgY2xhc3MgRXhhY3RUaW1lIHsKIAogICAg
IGludDY0X3QgZXBvY2hTZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1Zh
bGlkKCkpOwogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9z
ZWNvbmRzIC8gRXhhY3RUaW1lOjpuc1BlclNlY29uZCk7CiAgICAgfQogICAgIGludDY0X3QgZXBv
Y2hNaWxsaXNlY29uZHMoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzVmFsaWQoKSk7
CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ2NF90PihtX2Vwb2NoTmFub3NlY29uZHMg
LyBFeGFjdFRpbWU6Om5zUGVyTWlsbGlzZWNvbmQpOwogICAgIH0KICAgICBpbnQ2NF90IGVwb2No
TWljcm9zZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlkKCkpOwog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9zZWNvbmRzIC8g
RXhhY3RUaW1lOjpuc1Blck1pY3Jvc2Vjb25kKTsKICAgICB9CiAgICAgY29uc3RleHByIEludDEy
OCBlcG9jaE5hbm9zZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlk
KCkpOwogICAgICAgICByZXR1cm4gbV9lcG9jaE5hbm9zZWNvbmRzOwogICAgIH0KIApAQCAtMTc3
LDE1ICsxODMsNiBAQCBjbGFzcyBFeGFjdFRpbWUgewogICAgIHN0YXRpYyBFeGFjdFRpbWUgbm93
KCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggZGF5UmFuZ2VTZWNv
bmRzIHsgODY0MDAnMDAwMDAwMDAgfTsgLy8gMWU4IGRheXMKLSAgICBzdGF0aWMgY29uc3RleHBy
IEludDEyOCBuc1Blck1pY3Jvc2Vjb25kIHsgMTAwMCB9OwotICAgIHN0YXRpYyBjb25zdGV4cHIg
SW50MTI4IG5zUGVyTWlsbGlzZWNvbmQgeyAxJzAwMCcwMDAgfTsKLSAgICBzdGF0aWMgY29uc3Rl
eHByIEludDEyOCBuc1BlclNlY29uZCB7IDEnMDAwJzAwMCcwMDAgfTsKLSAgICBzdGF0aWMgY29u
c3RleHByIEludDEyOCBuc1Blck1pbnV0ZSA9IG5zUGVyU2Vjb25kICogNjA7Ci0gICAgc3RhdGlj
IGNvbnN0ZXhwciBJbnQxMjggbnNQZXJIb3VyID0gbnNQZXJNaW51dGUgKiA2MDsKLSAgICBzdGF0
aWMgY29uc3RleHByIEludDEyOCBtaW5WYWx1ZSA9IC1kYXlSYW5nZVNlY29uZHMgKiBuc1BlclNl
Y29uZDsKLSAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBtYXhWYWx1ZSA9IGRheVJhbmdlU2Vj
b25kcyAqIG5zUGVyU2Vjb25kOwotCiAgICAgc3RhdGljIHZvaWQgYXNTdHJpbmdJbXBsKFN0cmlu
Z0J1aWxkZXImIGJ1aWxkZXIsIEludDEyOCB2YWx1ZSkKICAgICB7CiAgICAgICAgIGlmICh2YWx1
ZSA+IDkpCkBAIC0zMDgsNSArMzA1LDcgQEAgYm9vbCBpc1ZhbGlkRHVyYXRpb24oY29uc3QgRHVy
YXRpb24mKTsKIAogc3RkOjpvcHRpb25hbDxFeGFjdFRpbWU+IHBhcnNlSW5zdGFudChTdHJpbmdW
aWV3KTsKIAorYm9vbCBpc0RhdGVUaW1lV2l0aGluTGltaXRzKGludDMyX3QgeWVhciwgdWludDhf
dCBtb250aCwgdWludDhfdCBkYXksIHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0ZSwgdW5z
aWduZWQgc2Vjb25kLCB1bnNpZ25lZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9zZWNvbmQs
IHVuc2lnbmVkIG5hbm9zZWNvbmQpOworCiB9IC8vIG5hbWVzcGFjZSBJU084NjAxCiB9IC8vIG5h
bWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsUGxhaW5EYXRlLmNwcAppbmRleCBmNWRkYmI0NjZiZmRkMDBhYWQ0N2IxZWMyZTcwMzE0MDZl
MTlkOWM2Li5kYTJiYjc0ODA3MDdlYTQ1ODk3ZGZiZDdiN2VhMjYxODg2Yzc3ZjBmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3Bw
CkBAIC04OSwyMiArODksMzggQEAgc3RhdGljIElTTzg2MDE6OlBsYWluRGF0ZSB0b1BsYWluRGF0
ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBJU084NjAxOjpEdXIKICAgICBWTSYgdm0g
PSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogCi0gICAgZG91YmxlIHllYXIgPSBkdXJhdGlvbi55ZWFycygpOwotICAgIGRvdWJs
ZSBtb250aCA9IGR1cmF0aW9uLm1vbnRocygpOwotICAgIGRvdWJsZSBkYXkgPSBkdXJhdGlvbi5k
YXlzKCk7Ci0gICAgaWYgKCEobW9udGggPj0gMSAmJiBtb250aCA8PSAxMikpIHsKKyAgICBkb3Vi
bGUgeWVhckRvdWJsZSA9IGR1cmF0aW9uLnllYXJzKCk7CisgICAgZG91YmxlIG1vbnRoRG91Ymxl
ID0gZHVyYXRpb24ubW9udGhzKCk7CisgICAgZG91YmxlIGRheURvdWJsZSA9IGR1cmF0aW9uLmRh
eXMoKTsKKworICAgIGlmICghaXNJbkJvdW5kczxpbnQzMl90Pih5ZWFyRG91YmxlKSkgeworICAg
ICAgICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInllYXIgaXMgb3V0IG9m
IHJhbmdlIl9zKTsKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICB9CisgICAgaW50MzJfdCB5ZWFy
ID0gc3RhdGljX2Nhc3Q8aW50MzJfdD4oeWVhckRvdWJsZSk7CisKKyAgICBpZiAoIShtb250aERv
dWJsZSA+PSAxICYmIG1vbnRoRG91YmxlIDw9IDEyKSkgewogICAgICAgICB0aHJvd1JhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIm1vbnRoIGlzIG91dCBvZiByYW5nZSJfcyk7CiAgICAg
ICAgIHJldHVybiB7IH07CiAgICAgfQotICAgIGRvdWJsZSBkYXlzSW5Nb250aCA9IElTTzg2MDE6
OmRheXNJbk1vbnRoKHN0YXRpY19jYXN0PGludDMyX3Q+KHllYXIpLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4obW9udGgpKTsKLSAgICBpZiAoIShkYXkgPj0gMSAmJiBkYXkgPD0gZGF5c0luTW9udGgp
KSB7CisgICAgdW5zaWduZWQgbW9udGggPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obW9udGhEb3Vi
bGUpOworCisgICAgZG91YmxlIGRheXNJbk1vbnRoID0gSVNPODYwMTo6ZGF5c0luTW9udGgoeWVh
ciwgbW9udGgpOworICAgIGlmICghKGRheURvdWJsZSA+PSAxICYmIGRheURvdWJsZSA8PSBkYXlz
SW5Nb250aCkpIHsKICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJkYXkgaXMgb3V0IG9mIHJhbmdlIl9zKTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9Cisg
ICAgdW5zaWduZWQgZGF5ID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGRheURvdWJsZSk7CisKKyAg
ICBpZiAoIUlTTzg2MDE6OmlzRGF0ZVRpbWVXaXRoaW5MaW1pdHMoeWVhciwgbW9udGgsIGRheSwg
MCwgMCwgMCwgMCwgMCwgMCkpIHsKKyAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVj
dCwgc2NvcGUsICJkYXRlIHRpbWUgaXMgb3V0IG9mIHJhbmdlIG9mIEVDTUFTY3JpcHQgcmVwcmVz
ZW50YXRpb24iX3MpOworICAgICAgICByZXR1cm4geyB9OworICAgIH0KKwogICAgIHJldHVybiBJ
U084NjAxOjpQbGFpbkRhdGUgewotICAgICAgICBzdGF0aWNfY2FzdDxpbnQzMl90Pih5ZWFyKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1vbnRoKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KGRheSkKKyAgICAgICAgeWVhciwKKyAgICAgICAgbW9udGgsCisgICAgICAg
IGRheQogICAgIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi9JbnQxMjguY3BwCmluZGV4IDI0Mjk3Yjk1MDE1NzFhMWMxNmE2NzFh
YWM3OTYyOWM4MGZhYzY5NTQuLjRhYmQ3ODhiMTQxYzk1ZGQwZTcxYjlkNzVlODFmMzljMTYzMmM3
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5jcHAKKysrIGIvU291cmNlL1dU
Ri93dGYvSW50MTI4LmNwcApAQCAtMjMsNiArMjMsOSBAQAogI2luY2x1ZGUgPHN0cmluZz4KICNp
bmNsdWRlIDx0eXBlX3RyYWl0cz4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorI2luY2x1
ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CiAKIG5hbWVzcGFjZSBXVEYg
ewogCkBAIC0zMTgsNiArMzIxLDIwIEBAIHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9z
dHJlYW0mIG9zLCBJbnQxMjhJbXBsIHYpIHsKICAgcmV0dXJuIG9zIDw8IHJlcDsKIH0KIAordm9p
ZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBvdXQsIFVJbnQxMjggdmFsdWUpCit7CisgICAg
YXV0byB2ZWN0b3IgPSBudW1iZXJUb1N0cmluZ1Vuc2lnbmVkPFZlY3RvcjxMQ2hhciwgNTA+Pih2
YWx1ZSk7CisgICAgdmVjdG9yLmFwcGVuZCgnXDAnKTsKKyAgICBvdXQucHJpbnRmKCIlcyIsIGJp
dHdpc2VfY2FzdDxjb25zdCBjaGFyKj4odmVjdG9yLmRhdGEoKSkpOworfQorCit2b2lkIHByaW50
SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSW50MTI4IHZhbHVlKQoreworICAgIGF1dG8gdmVj
dG9yID0gbnVtYmVyVG9TdHJpbmdTaWduZWQ8VmVjdG9yPExDaGFyLCA1MD4+KHZhbHVlKTsKKyAg
ICB2ZWN0b3IuYXBwZW5kKCdcMCcpOworICAgIG91dC5wcmludGYoIiVzIiwgYml0d2lzZV9jYXN0
PGNvbnN0IGNoYXIqPih2ZWN0b3IuZGF0YSgpKSk7Cit9CisKIH0gIC8vIG5hbWVzcGFjZSBXVEYK
IAogbmFtZXNwYWNlIHN0ZCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9JbnQxMjguaCBi
L1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCmluZGV4IDFhZmRjOWNlMTZlMjlhYmY2YjYxZWMzNTlm
NTJhN2U1ZjgzZGEyZTUuLjM1NzA2OGIxZjk3MTA4MDg0N2M2NjlkMDUyOTIyYTIwNTIxNTE1NzMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L0ludDEyOC5oCkBAIC01NSw2ICs1NSw3IEBACiBuYW1lc3BhY2UgV1RGIHsKIAogY2xhc3MgSW50
MTI4SW1wbDsKK2NsYXNzIFByaW50U3RyZWFtOwogCiAvLyBVSW50MTI4SW1wbAogLy8KQEAgLTI1
OSw2ICsyNjAsMTAgQEAgY2xhc3MgbnVtZXJpY19saW1pdHM8V1RGOjpVSW50MTI4SW1wbD4gewog
ICBzdGF0aWMgY29uc3RleHByIFdURjo6VUludDEyOEltcGwgc2lnbmFsaW5nX05hTigpIHsgcmV0
dXJuIDA7IH0KICAgc3RhdGljIGNvbnN0ZXhwciBXVEY6OlVJbnQxMjhJbXBsIGRlbm9ybV9taW4o
KSB7IHJldHVybiAwOyB9CiB9OwordGVtcGxhdGUgPD4KK3N0cnVjdCBtYWtlX3Vuc2lnbmVkPFdU
Rjo6VUludDEyOEltcGw+IHsKKyAgICB1c2luZyB0eXBlID0gV1RGOjpVSW50MTI4SW1wbDsKK307
CiB9ICAvLyBuYW1lc3BhY2Ugc3RkCiAKIG5hbWVzcGFjZSBXVEYgewpAQCAtNDYzLDYgKzQ2OCwx
MCBAQCBjbGFzcyBudW1lcmljX2xpbWl0czxXVEY6OkludDEyOEltcGw+IHsKICAgc3RhdGljIGNv
bnN0ZXhwciBXVEY6OkludDEyOEltcGwgc2lnbmFsaW5nX05hTigpIHsgcmV0dXJuIDA7IH0KICAg
c3RhdGljIGNvbnN0ZXhwciBXVEY6OkludDEyOEltcGwgZGVub3JtX21pbigpIHsgcmV0dXJuIDA7
IH0KIH07Cit0ZW1wbGF0ZSA8Pgorc3RydWN0IG1ha2VfdW5zaWduZWQ8V1RGOjpJbnQxMjhJbXBs
PiB7CisgICAgdXNpbmcgdHlwZSA9IFdURjo6VUludDEyOEltcGw7Cit9OwogfSAgLy8gbmFtZXNw
YWNlIHN0ZAogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTI2Myw2ICsxMjcyLDkgQEAgdXNp
bmcgVUludDEyOCA9IFVJbnQxMjhJbXBsOwogdXNpbmcgSW50MTI4ID0gSW50MTI4SW1wbDsKICNl
bmRpZgogCitXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBwcmludEludGVybmFsKFByaW50U3RyZWFt
JiwgVUludDEyOCk7CitXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBwcmludEludGVybmFsKFByaW50
U3RyZWFtJiwgSW50MTI4KTsKKwogfSAgLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6Oklu
dDEyODsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggMWY0YWYyNGIxMTQ2ZjUwN2Q5YzU4OTdiMmFkYmRkMjA5NWM1ZGQ5Ny4uZmFmMGMxODhk
ZmFlZmI4OTQzMWUxMDczZjIwNzE2NTc0OWRjMjc4MSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMi0wMi0y
MSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIFRl
bXBvcmFsLlBsYWluRGF0ZSBzaG91bGQgdmFsaWRhdGUgaW5wdXQgcmFuZ2UKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjkzNgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL3RlbXBvcmFsLXBs
YWluZGF0ZS5qczoKKyAgICAgICAgKHNob3VsZFRocm93KToKKwogMjAyMi0wMi0yMSAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIFNoYWRvd1JlYWxt
IHdyYXBBcmd1bWVudCBzaG91bGQgY2hlY2sgZXhjZXB0aW9ucwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy9zdHJlc3MvdGVtcG9yYWwtcGxhaW5kYXRlLmpzIGIvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwt
cGxhaW5kYXRlLmpzCmluZGV4IDgwZjE3NjgzNGM4NjE1ZDViNWZhMjBjNTYxYzI4ZTA2NTYzZmVl
MTguLjZiMWIxYjczMGJhNzY0MmJjYzI5ZjNhNzFjZjdmOWNmZDQzZjc1NTggMTAwNjQ0Ci0tLSBh
L0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWluZGF0ZS5qcworKysgYi9KU1Rlc3RzL3N0cmVz
cy90ZW1wb3JhbC1wbGFpbmRhdGUuanMKQEAgLTExMCw2ICsxMTAsMTQgQEAgZnVuY3Rpb24gc2hv
dWxkVGhyb3coZnVuYywgZXJyb3JUeXBlLCBtZXNzYWdlKSB7CiBzaG91bGRUaHJvdygoKSA9PiB7
IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMjAwNywgLUluZmluaXR5LCAxKTsgfSwgUmFuZ2VFcnJv
cik7CiBzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMjAwNywgMSwg
SW5maW5pdHkpOyB9LCBSYW5nZUVycm9yKTsKIHNob3VsZFRocm93KCgpID0+IHsgbmV3IFRlbXBv
cmFsLlBsYWluRGF0ZSgyMDA3LCAxLCAtSW5maW5pdHkpOyB9LCBSYW5nZUVycm9yKTsKK3Nob3Vs
ZFRocm93KCgpID0+IHsgbmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgweDQzNTMwLCA5LCAxNCk7IH0s
IFJhbmdlRXJyb3IpOworbmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgweDQzNTMwLCA5LCAxMyk7Citz
aG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoLTB4NDI1Y2QsIDQsIDE5
KTsgfSwgUmFuZ2VFcnJvcik7CituZXcgVGVtcG9yYWwuUGxhaW5EYXRlKC0weDQyNWNkLCA0LCAy
MCk7CitzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMHg4MDAwMDAw
MCwgMSwgMSk7IH0sIFJhbmdlRXJyb3IpOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9y
YWwuUGxhaW5EYXRlKC0weDgwMDAwMDAwLCAxLCAxKTsgfSwgUmFuZ2VFcnJvcik7CitzaG91bGRU
aHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMHg3ZmZmZmZmZiwgMSwgMSk7IH0s
IFJhbmdlRXJyb3IpOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwuUGxhaW5EYXRl
KC0weDdmZmZmZmZmLCAxLCAxKTsgfSwgUmFuZ2VFcnJvcik7CiAKIGxldCBmYWlsdXJlcyA9IFsK
ICAgICAiIiwK
</data>
<flag name="commit-queue"
          id="479941"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452781</attachid>
            <date>2022-02-21 15:09:27 -0800</date>
            <delta_ts>2022-02-21 16:58:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236936-20220221150926.patch</filename>
            <type>text/plain</type>
            <size>14920</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
Yjc0NGY3M2I0MTBjZWY1MTg4ZTZkYzE3Y2IxY2Q5Nzg4ODdiN2YxLi4yOWIxMzk0MGM0OGM0Y2Fl
ODkzMzVmYjQ4MjgzMDlkY2YxY2ZiNTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAyMi0wMi0yMSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFRlbXBvcmFsLlBsYWluRGF0ZSBzaG91bGQgdmFsaWRhdGUgaW5w
dXQgcmFuZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNjkzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudCBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3NlYy10ZW1wb3Jh
bC1pc29kYXRldGltZXdpdGhpbmxpbWl0cyBjaGVjayBpbgorICAgICAgICBQbGFpbkRhdGUgdG8g
dmFsaWRhdGUgaW5wdXQgcmFuZ2UuIEZvciBleGFtcGxlLCAweDdmZmZmZmZmIHllYXIgc2hvdWxk
IGJlIHJlamVjdGVkIHNpbmNlCisgICAgICAgIGl0IGlzIGxhcmdlciB0aGFuIEVDTUFTY3JpcHQg
ZGF0ZXRpbWUgcmVwcmVzZW50YXRpb24gdmFsdWUuIFRoaXMgaXMgY2hlY2tlZCB2aWEgSVNPRGF0
ZVRpbWVXaXRoaW5MaW1pdHMKKyAgICAgICAgaW4gdGhlIHNwZWMuCisKKyAgICAgICAgV2UgYWxz
byByZW1vdmUgaXNWYWxpZCBhc3NlcnRpb25zIGluIEV4YWN0VGltZS4gVGhpcyBzaG91bGQgbm90
IGJlIGNoZWNrZWQgaW4gdGhlc2UgYWNjZXNzb3JzLCByYXRoZXIsCisgICAgICAgIHdlIHNob3Vs
ZCBjYWxsIHRoYXQgZnVuY3Rpb24gd2hlbiB3ZSB3b3VsZCBsaWtlIHRvIGNoZWNrLCBzaW5jZSBQ
bGFpbkRhdGUgY2FuIHJlcHJlc2VudCBhIGJpdCBzbWFsbGVyCisgICAgICAgIHZhbHVlIHRoYW4g
RXhhY3RUaW1lJ3MgbWluVmFsdWUgKG1pblZhbHVlIC0gbnNQZXJEYXkpLgorCisgICAgICAgIFdl
IGFsc28gZXh0ZW5kIEV4YWN0VGltZTo6ZnJvbUlTT1BhcnRzQW5kT2Zmc2V0IHRvIGhhbmRsZSB2
YWx1ZXMgdmlhIEludDEyOCB0byBhY2NlcHQgaW50MzJfdCByYW5nZSB5ZWFycy4KKyAgICAgICAg
QnkgdXNpbmcgSW50MTI4IGZvciBuYW5vc2Vjb25kcywgd2UgY2FuIGV2ZW4gcmVwcmVzZW50IGlu
dDMyX3QgbWF4IC8gbWluIHllYXJzLiBBbmQgd2UgcmVtb3ZlCisgICAgICAgIGBBU1NFUlQoeSA+
PSAtOTk5OTk5ICYmIHkgPD0gOTk5OTk5KWAgY2hlY2sgc2luY2UgdGhpcyBpcyBub3QgbmVjZXNz
YXJ5LgorCisgICAgICAgICogcnVudGltZS9JU084NjAxLmNwcDoKKyAgICAgICAgKEpTQzo6SVNP
ODYwMTo6RXhhY3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZzZXQpOgorICAgICAgICAoSlNDOjpJ
U084NjAxOjppc0RhdGVUaW1lV2l0aGluTGltaXRzKToKKyAgICAgICAgKiBydW50aW1lL0lTTzg2
MDEuaDoKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjpFeGFjdFRpbWUpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaFNlY29uZHMp
OiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJU084NjAxOjpFeGFjdFRpbWU6OmZyb21FcG9jaE1p
bGxpc2Vjb25kcyk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
ZnJvbUVwb2NoTWljcm9zZWNvbmRzKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SVNPODYwMTo6
RXhhY3RUaW1lOjplcG9jaFNlY29uZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmVwb2NoTWlsbGlzZWNvbmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKEpTQzo6SVNPODYwMTo6RXhhY3RUaW1lOjplcG9jaE1pY3Jvc2Vjb25kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6ZXBvY2hOYW5vc2Vj
b25kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6
bmFub3NlY29uZHNGcmFjdGlvbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2
MDE6OkV4YWN0VGltZTo6YXNTdHJpbmcgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpJ
U084NjAxOjpFeGFjdFRpbWU6OmlzVmFsaWQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpJU084NjAxOjpFeGFjdFRpbWU6Om9wZXJhdG9yPCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I8PSBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I9PSBjb25zdCk6IERlbGV0
ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3IhPSBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0b3I+PSBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OklTTzg2MDE6OkV4YWN0VGltZTo6b3BlcmF0
b3I+IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcDoKKyAgICAgICAgKEpTQzo6dG9QbGFpbkRhdGUpOgorCiAyMDIyLTAyLTIxICBZdXN1a2Ug
U3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gU2hhZG93UmVhbG0g
d3JhcEFyZ3VtZW50IHNob3VsZCBjaGVjayBleGNlcHRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDBiOGQ4YTE1ZWQxZjg3
MDc2NDI2ZWUzOTRhMGMwMzAyOGYzMGEwZTUuLjJmYzg3OGM1OGVjZGQ1MGM4OTBmNDY3YjY5MzVm
NjMxZmY3MzY3YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjItMDItMjEgIFl1c3VrZSBTdXp1
a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBUZW1wb3JhbC5QbGFpbkRh
dGUgc2hvdWxkIHZhbGlkYXRlIGlucHV0IHJhbmdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY5MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgY29kZSB0byBhbGxvdyBkYXRhTG9nKEludDEyOCku
CisKKyAgICAgICAgKiB3dGYvSW50MTI4LmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJbnRlcm5h
bCk6CisgICAgICAgICogd3RmL0ludDEyOC5oOgorCiAyMDIyLTAyLTE4ICBEZXZpbiBSb3Vzc28g
IDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBTYWZhcmkgY2FuIHNvbWV0aW1l
cyBoYW5nIHdoaWxlIHByaW50aW5nIGR1ZSB0byBzeW5jIElQQwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JU084NjAxLmNwcAppbmRleCA5YjU4M2I1ZjNlNGUzNWRlZTA0ZWJlMmRmMDEz
YjY4YTMyZDNkODZhLi43NmEwYTYzZjMzYzc5Mjk2MmM3ZWRmODc0NzdiNjVkMzIyNWJhMWZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcApAQCAtMTE5MiwyMyAr
MTE5MiwyMCBAQCBib29sIGlzVmFsaWREdXJhdGlvbihjb25zdCBEdXJhdGlvbiYgZHVyYXRpb24p
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUV4YWN0VGltZSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0
c0FuZE9mZnNldChpbnQzMl90IHksIHVpbnQ4X3QgbW9uLCB1aW50OF90IGQsIHVuc2lnbmVkIGgs
IHVuc2lnbmVkIG1pbiwgdW5zaWduZWQgcywgdW5zaWduZWQgbXMsIHVuc2lnbmVkIG1pY3Jvcywg
dW5zaWduZWQgbnMsIGludDY0X3Qgb2Zmc2V0KQorRXhhY3RUaW1lIEV4YWN0VGltZTo6ZnJvbUlT
T1BhcnRzQW5kT2Zmc2V0KGludDMyX3QgeWVhciwgdWludDhfdCBtb250aCwgdWludDhfdCBkYXks
IHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0ZSwgdW5zaWduZWQgc2Vjb25kLCB1bnNpZ25l
ZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9zZWNvbmQsIHVuc2lnbmVkIG5hbm9zZWNvbmQs
IGludDY0X3Qgb2Zmc2V0KQogewotICAgIEFTU0VSVCh5ID49IC05OTk5OTkgJiYgeSA8PSA5OTk5
OTkpOwotICAgIEFTU0VSVChtb24gPj0gMSAmJiBtb24gPD0gMTIpOwotICAgIEFTU0VSVChkID49
IDEgJiYgZCA8PSAzMSk7Ci0gICAgQVNTRVJUKGggPD0gMjMpOwotICAgIEFTU0VSVChtaW4gPD0g
NTkpOwotICAgIEFTU0VSVChzIDw9IDU5KTsKLSAgICBBU1NFUlQobXMgPD0gOTk5KTsKLSAgICBB
U1NFUlQobWljcm9zIDw9IDk5OSk7Ci0gICAgQVNTRVJUKG5zIDw9IDk5OSk7Ci0KLSAgICBkb3Vi
bGUgZGF0ZURheXMgPSBkYXRlVG9EYXlzRnJvbTE5NzAoeSwgbW9uIC0gMSwgZCk7Ci0gICAgZG91
YmxlIHRpbWVNcyA9IHRpbWVUb01TKGgsIG1pbiwgcywgbXMpOwotICAgIGRvdWJsZSB1dGNNcyA9
IGRhdGVEYXlzICogbXNQZXJEYXkgKyB0aW1lTXM7Ci0gICAgSW50MTI4IHV0Y05zID0gc3RhdGlj
X2Nhc3Q8SW50MTI4Pih1dGNNcykgKiAxJzAwMCcwMDAgKyBtaWNyb3MgKiAxMDAwICsgbnM7Ci0g
ICAgcmV0dXJuIEV4YWN0VGltZSB7IHV0Y05zIC0gb2Zmc2V0IH07CisgICAgQVNTRVJUKG1vbnRo
ID49IDEgJiYgbW9udGggPD0gMTIpOworICAgIEFTU0VSVChkYXkgPj0gMSAmJiBkYXkgPD0gMzEp
OworICAgIEFTU0VSVChob3VyIDw9IDIzKTsKKyAgICBBU1NFUlQobWludXRlIDw9IDU5KTsKKyAg
ICBBU1NFUlQoc2Vjb25kIDw9IDU5KTsKKyAgICBBU1NFUlQobWlsbGlzZWNvbmQgPD0gOTk5KTsK
KyAgICBBU1NFUlQobWljcm9zZWNvbmQgPD0gOTk5KTsKKyAgICBBU1NFUlQobmFub3NlY29uZCA8
PSA5OTkpOworCisgICAgSW50MTI4IGRhdGVEYXlzID0gc3RhdGljX2Nhc3Q8SW50MTI4PihkYXRl
VG9EYXlzRnJvbTE5NzAoeWVhciwgbW9udGggLSAxLCBkYXkpKTsKKyAgICBJbnQxMjggdXRjTmFu
b3NlY29uZHMgPSBkYXRlRGF5cyAqIG5zUGVyRGF5ICsgaG91ciAqIG5zUGVySG91ciArIG1pbnV0
ZSAqIG5zUGVyTWludXRlICsgc2Vjb25kICogbnNQZXJTZWNvbmQgKyBtaWxsaXNlY29uZCAqIG5z
UGVyTWlsbGlzZWNvbmQgKyBtaWNyb3NlY29uZCAqIG5zUGVyTWljcm9zZWNvbmQgKyBuYW5vc2Vj
b25kOworICAgIHJldHVybiBFeGFjdFRpbWUgeyB1dGNOYW5vc2Vjb25kcyAtIG9mZnNldCB9Owog
fQogCiB1c2luZyBDaGVja2VkSW50MTI4ID0gQ2hlY2tlZDxJbnQxMjgsIFJlY29yZE92ZXJmbG93
PjsKQEAgLTEzMjEsNSArMTMxOCwxNiBAQCBFeGFjdFRpbWUgRXhhY3RUaW1lOjpub3coKQogICAg
IHJldHVybiBFeGFjdFRpbWUgeyBXVEY6OmN1cnJlbnRUaW1lSW5OYW5vc2Vjb25kcygpIH07CiB9
CiAKKy8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jc2VjLXRlbXBvcmFsLWlz
b2RhdGV0aW1ld2l0aGlubGltaXRzCitib29sIGlzRGF0ZVRpbWVXaXRoaW5MaW1pdHMoaW50MzJf
dCB5ZWFyLCB1aW50OF90IG1vbnRoLCB1aW50OF90IGRheSwgdW5zaWduZWQgaG91ciwgdW5zaWdu
ZWQgbWludXRlLCB1bnNpZ25lZCBzZWNvbmQsIHVuc2lnbmVkIG1pbGxpc2Vjb25kLCB1bnNpZ25l
ZCBtaWNyb3NlY29uZCwgdW5zaWduZWQgbmFub3NlY29uZCkKK3sKKyAgICBJbnQxMjggbmFub3Nl
Y29uZHMgPSBFeGFjdFRpbWU6OmZyb21JU09QYXJ0c0FuZE9mZnNldCh5ZWFyLCBtb250aCwgZGF5
LCBob3VyLCBtaW51dGUsIHNlY29uZCwgbWlsbGlzZWNvbmQsIG1pY3Jvc2Vjb25kLCBuYW5vc2Vj
b25kLCAwKS5lcG9jaE5hbm9zZWNvbmRzKCk7CisgICAgaWYgKG5hbm9zZWNvbmRzIDw9IChFeGFj
dFRpbWU6Om1pblZhbHVlIC0gRXhhY3RUaW1lOjpuc1BlckRheSkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICBpZiAobmFub3NlY29uZHMgPj0gKEV4YWN0VGltZTo6bWF4VmFsdWUgKyBFeGFj
dFRpbWU6Om5zUGVyRGF5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiB0cnVl
OworfQorCiB9IC8vIG5hbWVzcGFjZSBJU084NjAxCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaAppbmRleCAyMjNiNjhkMmYyM2Q0ZWU0YTgx
NDA2MTQ0NDA2NzM3M2EzOGYxYThiLi5mMWUxMjBmN2ZhNmYxNmNjZDdkNWU1Y2EwNzQzMmExYWQz
NTYyZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAx
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5oCkBAIC04Myw2
ICs4MywxNiBAQCBjbGFzcyBEdXJhdGlvbiB7CiBjbGFzcyBFeGFjdFRpbWUgewogICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEKEV4YWN0VGltZSk7CiBwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0
ZXhwciBJbnQxMjggZGF5UmFuZ2VTZWNvbmRzIHsgODY0MDAnMDAwMDAwMDAgfTsgLy8gMWU4IGRh
eXMKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pY3Jvc2Vjb25kIHsgMTAwMCB9
OworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG5zUGVyTWlsbGlzZWNvbmQgeyAxJzAwMCcw
MDAgfTsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1BlclNlY29uZCB7IDEnMDAwJzAw
MCcwMDAgfTsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1Blck1pbnV0ZSA9IG5zUGVy
U2Vjb25kICogNjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggbnNQZXJIb3VyID0gbnNQ
ZXJNaW51dGUgKiA2MDsKKyAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBuc1BlckRheSA9IG5z
UGVySG91ciAqIDI0OworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4IG1pblZhbHVlID0gLWRh
eVJhbmdlU2Vjb25kcyAqIG5zUGVyU2Vjb25kOworICAgIHN0YXRpYyBjb25zdGV4cHIgSW50MTI4
IG1heFZhbHVlID0gZGF5UmFuZ2VTZWNvbmRzICogbnNQZXJTZWNvbmQ7CisKICAgICBjb25zdGV4
cHIgRXhhY3RUaW1lKCkgPSBkZWZhdWx0OwogICAgIGNvbnN0ZXhwciBFeGFjdFRpbWUoY29uc3Qg
RXhhY3RUaW1lJikgPSBkZWZhdWx0OwogICAgIGNvbnN0ZXhwciBleHBsaWNpdCBFeGFjdFRpbWUo
SW50MTI4IGVwb2NoTmFub3NlY29uZHMpIDogbV9lcG9jaE5hbm9zZWNvbmRzKGVwb2NoTmFub3Nl
Y29uZHMpIHsgfQpAQCAtMTAzLDIyICsxMTMsMTggQEAgY2xhc3MgRXhhY3RUaW1lIHsKIAogICAg
IGludDY0X3QgZXBvY2hTZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1Zh
bGlkKCkpOwogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9z
ZWNvbmRzIC8gRXhhY3RUaW1lOjpuc1BlclNlY29uZCk7CiAgICAgfQogICAgIGludDY0X3QgZXBv
Y2hNaWxsaXNlY29uZHMoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzVmFsaWQoKSk7
CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ2NF90PihtX2Vwb2NoTmFub3NlY29uZHMg
LyBFeGFjdFRpbWU6Om5zUGVyTWlsbGlzZWNvbmQpOwogICAgIH0KICAgICBpbnQ2NF90IGVwb2No
TWljcm9zZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlkKCkpOwog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4obV9lcG9jaE5hbm9zZWNvbmRzIC8g
RXhhY3RUaW1lOjpuc1Blck1pY3Jvc2Vjb25kKTsKICAgICB9CiAgICAgY29uc3RleHByIEludDEy
OCBlcG9jaE5hbm9zZWNvbmRzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc1ZhbGlk
KCkpOwogICAgICAgICByZXR1cm4gbV9lcG9jaE5hbm9zZWNvbmRzOwogICAgIH0KIApAQCAtMTc3
LDE1ICsxODMsNiBAQCBjbGFzcyBFeGFjdFRpbWUgewogICAgIHN0YXRpYyBFeGFjdFRpbWUgbm93
KCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIGNvbnN0ZXhwciBJbnQxMjggZGF5UmFuZ2VTZWNv
bmRzIHsgODY0MDAnMDAwMDAwMDAgfTsgLy8gMWU4IGRheXMKLSAgICBzdGF0aWMgY29uc3RleHBy
IEludDEyOCBuc1Blck1pY3Jvc2Vjb25kIHsgMTAwMCB9OwotICAgIHN0YXRpYyBjb25zdGV4cHIg
SW50MTI4IG5zUGVyTWlsbGlzZWNvbmQgeyAxJzAwMCcwMDAgfTsKLSAgICBzdGF0aWMgY29uc3Rl
eHByIEludDEyOCBuc1BlclNlY29uZCB7IDEnMDAwJzAwMCcwMDAgfTsKLSAgICBzdGF0aWMgY29u
c3RleHByIEludDEyOCBuc1Blck1pbnV0ZSA9IG5zUGVyU2Vjb25kICogNjA7Ci0gICAgc3RhdGlj
IGNvbnN0ZXhwciBJbnQxMjggbnNQZXJIb3VyID0gbnNQZXJNaW51dGUgKiA2MDsKLSAgICBzdGF0
aWMgY29uc3RleHByIEludDEyOCBtaW5WYWx1ZSA9IC1kYXlSYW5nZVNlY29uZHMgKiBuc1BlclNl
Y29uZDsKLSAgICBzdGF0aWMgY29uc3RleHByIEludDEyOCBtYXhWYWx1ZSA9IGRheVJhbmdlU2Vj
b25kcyAqIG5zUGVyU2Vjb25kOwotCiAgICAgc3RhdGljIHZvaWQgYXNTdHJpbmdJbXBsKFN0cmlu
Z0J1aWxkZXImIGJ1aWxkZXIsIEludDEyOCB2YWx1ZSkKICAgICB7CiAgICAgICAgIGlmICh2YWx1
ZSA+IDkpCkBAIC0zMDgsNSArMzA1LDcgQEAgYm9vbCBpc1ZhbGlkRHVyYXRpb24oY29uc3QgRHVy
YXRpb24mKTsKIAogc3RkOjpvcHRpb25hbDxFeGFjdFRpbWU+IHBhcnNlSW5zdGFudChTdHJpbmdW
aWV3KTsKIAorYm9vbCBpc0RhdGVUaW1lV2l0aGluTGltaXRzKGludDMyX3QgeWVhciwgdWludDhf
dCBtb250aCwgdWludDhfdCBkYXksIHVuc2lnbmVkIGhvdXIsIHVuc2lnbmVkIG1pbnV0ZSwgdW5z
aWduZWQgc2Vjb25kLCB1bnNpZ25lZCBtaWxsaXNlY29uZCwgdW5zaWduZWQgbWljcm9zZWNvbmQs
IHVuc2lnbmVkIG5hbm9zZWNvbmQpOworCiB9IC8vIG5hbWVzcGFjZSBJU084NjAxCiB9IC8vIG5h
bWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsUGxhaW5EYXRlLmNwcAppbmRleCBmNWRkYmI0NjZiZmRkMDBhYWQ0N2IxZWMyZTcwMzE0MDZl
MTlkOWM2Li5kYTJiYjc0ODA3MDdlYTQ1ODk3ZGZiZDdiN2VhMjYxODg2Yzc3ZjBmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3Bw
CkBAIC04OSwyMiArODksMzggQEAgc3RhdGljIElTTzg2MDE6OlBsYWluRGF0ZSB0b1BsYWluRGF0
ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBJU084NjAxOjpEdXIKICAgICBWTSYgdm0g
PSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogCi0gICAgZG91YmxlIHllYXIgPSBkdXJhdGlvbi55ZWFycygpOwotICAgIGRvdWJs
ZSBtb250aCA9IGR1cmF0aW9uLm1vbnRocygpOwotICAgIGRvdWJsZSBkYXkgPSBkdXJhdGlvbi5k
YXlzKCk7Ci0gICAgaWYgKCEobW9udGggPj0gMSAmJiBtb250aCA8PSAxMikpIHsKKyAgICBkb3Vi
bGUgeWVhckRvdWJsZSA9IGR1cmF0aW9uLnllYXJzKCk7CisgICAgZG91YmxlIG1vbnRoRG91Ymxl
ID0gZHVyYXRpb24ubW9udGhzKCk7CisgICAgZG91YmxlIGRheURvdWJsZSA9IGR1cmF0aW9uLmRh
eXMoKTsKKworICAgIGlmICghaXNJbkJvdW5kczxpbnQzMl90Pih5ZWFyRG91YmxlKSkgeworICAg
ICAgICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInllYXIgaXMgb3V0IG9m
IHJhbmdlIl9zKTsKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICB9CisgICAgaW50MzJfdCB5ZWFy
ID0gc3RhdGljX2Nhc3Q8aW50MzJfdD4oeWVhckRvdWJsZSk7CisKKyAgICBpZiAoIShtb250aERv
dWJsZSA+PSAxICYmIG1vbnRoRG91YmxlIDw9IDEyKSkgewogICAgICAgICB0aHJvd1JhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIm1vbnRoIGlzIG91dCBvZiByYW5nZSJfcyk7CiAgICAg
ICAgIHJldHVybiB7IH07CiAgICAgfQotICAgIGRvdWJsZSBkYXlzSW5Nb250aCA9IElTTzg2MDE6
OmRheXNJbk1vbnRoKHN0YXRpY19jYXN0PGludDMyX3Q+KHllYXIpLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4obW9udGgpKTsKLSAgICBpZiAoIShkYXkgPj0gMSAmJiBkYXkgPD0gZGF5c0luTW9udGgp
KSB7CisgICAgdW5zaWduZWQgbW9udGggPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obW9udGhEb3Vi
bGUpOworCisgICAgZG91YmxlIGRheXNJbk1vbnRoID0gSVNPODYwMTo6ZGF5c0luTW9udGgoeWVh
ciwgbW9udGgpOworICAgIGlmICghKGRheURvdWJsZSA+PSAxICYmIGRheURvdWJsZSA8PSBkYXlz
SW5Nb250aCkpIHsKICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJkYXkgaXMgb3V0IG9mIHJhbmdlIl9zKTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9Cisg
ICAgdW5zaWduZWQgZGF5ID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGRheURvdWJsZSk7CisKKyAg
ICBpZiAoIUlTTzg2MDE6OmlzRGF0ZVRpbWVXaXRoaW5MaW1pdHMoeWVhciwgbW9udGgsIGRheSwg
MCwgMCwgMCwgMCwgMCwgMCkpIHsKKyAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVj
dCwgc2NvcGUsICJkYXRlIHRpbWUgaXMgb3V0IG9mIHJhbmdlIG9mIEVDTUFTY3JpcHQgcmVwcmVz
ZW50YXRpb24iX3MpOworICAgICAgICByZXR1cm4geyB9OworICAgIH0KKwogICAgIHJldHVybiBJ
U084NjAxOjpQbGFpbkRhdGUgewotICAgICAgICBzdGF0aWNfY2FzdDxpbnQzMl90Pih5ZWFyKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1vbnRoKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KGRheSkKKyAgICAgICAgeWVhciwKKyAgICAgICAgbW9udGgsCisgICAgICAg
IGRheQogICAgIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi9JbnQxMjguY3BwCmluZGV4IDI0Mjk3Yjk1MDE1NzFhMWMxNmE2NzFh
YWM3OTYyOWM4MGZhYzY5NTQuLmExNDZlODQ2ZjU5ZmY1MjcxMmMyMjVmZjNkOWNiMjU1ZjU4MmIz
NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5jcHAKKysrIGIvU291cmNlL1dU
Ri93dGYvSW50MTI4LmNwcApAQCAtMjMsNiArMjMsOSBAQAogI2luY2x1ZGUgPHN0cmluZz4KICNp
bmNsdWRlIDx0eXBlX3RyYWl0cz4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorI2luY2x1
ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CiAKIG5hbWVzcGFjZSBXVEYg
ewogCkBAIC0zMTgsNiArMzIxLDI5IEBAIHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9z
dHJlYW0mIG9zLCBJbnQxMjhJbXBsIHYpIHsKICAgcmV0dXJuIG9zIDw8IHJlcDsKIH0KIAordm9p
ZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBvdXQsIFVJbnQxMjggdmFsdWUpCit7CisgICAg
YXV0byB2ZWN0b3IgPSBudW1iZXJUb1N0cmluZ1Vuc2lnbmVkPFZlY3RvcjxMQ2hhciwgNTA+Pih2
YWx1ZSk7CisgICAgdmVjdG9yLmFwcGVuZCgnXDAnKTsKKyAgICBvdXQucHJpbnRmKCIlcyIsIGJp
dHdpc2VfY2FzdDxjb25zdCBjaGFyKj4odmVjdG9yLmRhdGEoKSkpOworfQorCit2b2lkIHByaW50
SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSW50MTI4IHZhbHVlKQoreworICAgIGlmICh2YWx1
ZSA+PSAwKSB7CisgICAgICAgIHByaW50SW50ZXJuYWwob3V0LCBzdGF0aWNfY2FzdDxVSW50MTI4
Pih2YWx1ZSkpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIFVJbnQxMjggcG9zaXRpdmU7
CisgICAgaWYgKHZhbHVlID09IHN0ZDo6bnVtZXJpY19saW1pdHM8SW50MTI4Pjo6bWluKCkpCisg
ICAgICAgIHBvc2l0aXZlID0gc3RhdGljX2Nhc3Q8VUludDEyOD4oMHg4MDAwJzAwMDAnMDAwMCcw
MDAwVUxMKSA8PCA2NDsKKyAgICBlbHNlCisgICAgICAgIHBvc2l0aXZlID0gLXZhbHVlOworICAg
IGF1dG8gdmVjdG9yID0gbnVtYmVyVG9TdHJpbmdVbnNpZ25lZDxWZWN0b3I8TENoYXIsIDUwPj4o
cG9zaXRpdmUpOworICAgIHZlY3Rvci5hcHBlbmQoJ1wwJyk7CisgICAgb3V0LnByaW50ZigiLSVz
IiwgYml0d2lzZV9jYXN0PGNvbnN0IGNoYXIqPih2ZWN0b3IuZGF0YSgpKSk7Cit9CisKIH0gIC8v
IG5hbWVzcGFjZSBXVEYKIAogbmFtZXNwYWNlIHN0ZCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RG
L3d0Zi9JbnQxMjguaCBiL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCmluZGV4IDFhZmRjOWNlMTZl
MjlhYmY2YjYxZWMzNTlmNTJhN2U1ZjgzZGEyZTUuLjllNjBkYWIyZmJhZTNlYjBjOTE5NzlmZThl
NDIzNGY0Zjc2ZmI0NmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCisrKyBi
L1NvdXJjZS9XVEYvd3RmL0ludDEyOC5oCkBAIC01NSw2ICs1NSw3IEBACiBuYW1lc3BhY2UgV1RG
IHsKIAogY2xhc3MgSW50MTI4SW1wbDsKK2NsYXNzIFByaW50U3RyZWFtOwogCiAvLyBVSW50MTI4
SW1wbAogLy8KQEAgLTEyNjMsNiArMTI2NCw5IEBAIHVzaW5nIFVJbnQxMjggPSBVSW50MTI4SW1w
bDsKIHVzaW5nIEludDEyOCA9IEludDEyOEltcGw7CiAjZW5kaWYKIAorV1RGX0VYUE9SVF9QUklW
QVRFIHZvaWQgcHJpbnRJbnRlcm5hbChQcmludFN0cmVhbSYsIFVJbnQxMjgpOworV1RGX0VYUE9S
VF9QUklWQVRFIHZvaWQgcHJpbnRJbnRlcm5hbChQcmludFN0cmVhbSYsIEludDEyOCk7CisKIH0g
IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpJbnQxMjg7CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL0NoYW5nZUxvZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFmNGFmMjRiMTE0NmY1MDdk
OWM1ODk3YjJhZGJkZDIwOTVjNWRkOTcuLmZhZjBjMTg4ZGZhZWZiODk0MzFlMTA3M2YyMDcxNjU3
NDlkYzI3ODEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjItMDItMjEgIFl1c3VrZSBTdXp1a2kgIDx5c3V6
dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBUZW1wb3JhbC5QbGFpbkRhdGUgc2hvdWxk
IHZhbGlkYXRlIGlucHV0IHJhbmdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzY5MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHN0cmVzcy90ZW1wb3JhbC1wbGFpbmRhdGUuanM6CisgICAgICAgIChz
aG91bGRUaHJvdyk6CisKIDIwMjItMDItMjEgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxl
LmNvbT4KIAogICAgICAgICBbSlNDXSBTaGFkb3dSZWFsbSB3cmFwQXJndW1lbnQgc2hvdWxkIGNo
ZWNrIGV4Y2VwdGlvbnMKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWlu
ZGF0ZS5qcyBiL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWluZGF0ZS5qcwppbmRleCA4MGYx
NzY4MzRjODYxNWQ1YjVmYTIwYzU2MWMyOGUwNjU2M2ZlZTE4Li42YjFiMWI3MzBiYTc2NDJiY2My
OWYzYTcxY2Y3ZjljZmQ0M2Y3NTU4IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3N0cmVzcy90ZW1wb3Jh
bC1wbGFpbmRhdGUuanMKKysrIGIvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtcGxhaW5kYXRlLmpz
CkBAIC0xMTAsNiArMTEwLDE0IEBAIGZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yVHlw
ZSwgbWVzc2FnZSkgewogc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9yYWwuUGxhaW5EYXRl
KDIwMDcsIC1JbmZpbml0eSwgMSk7IH0sIFJhbmdlRXJyb3IpOwogc2hvdWxkVGhyb3coKCkgPT4g
eyBuZXcgVGVtcG9yYWwuUGxhaW5EYXRlKDIwMDcsIDEsIEluZmluaXR5KTsgfSwgUmFuZ2VFcnJv
cik7CiBzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1wb3JhbC5QbGFpbkRhdGUoMjAwNywgMSwg
LUluZmluaXR5KTsgfSwgUmFuZ2VFcnJvcik7CitzaG91bGRUaHJvdygoKSA9PiB7IG5ldyBUZW1w
b3JhbC5QbGFpbkRhdGUoMHg0MzUzMCwgOSwgMTQpOyB9LCBSYW5nZUVycm9yKTsKK25ldyBUZW1w
b3JhbC5QbGFpbkRhdGUoMHg0MzUzMCwgOSwgMTMpOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcg
VGVtcG9yYWwuUGxhaW5EYXRlKC0weDQyNWNkLCA0LCAxOSk7IH0sIFJhbmdlRXJyb3IpOworbmV3
IFRlbXBvcmFsLlBsYWluRGF0ZSgtMHg0MjVjZCwgNCwgMjApOworc2hvdWxkVGhyb3coKCkgPT4g
eyBuZXcgVGVtcG9yYWwuUGxhaW5EYXRlKDB4ODAwMDAwMDAsIDEsIDEpOyB9LCBSYW5nZUVycm9y
KTsKK3Nob3VsZFRocm93KCgpID0+IHsgbmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgtMHg4MDAwMDAw
MCwgMSwgMSk7IH0sIFJhbmdlRXJyb3IpOworc2hvdWxkVGhyb3coKCkgPT4geyBuZXcgVGVtcG9y
YWwuUGxhaW5EYXRlKDB4N2ZmZmZmZmYsIDEsIDEpOyB9LCBSYW5nZUVycm9yKTsKK3Nob3VsZFRo
cm93KCgpID0+IHsgbmV3IFRlbXBvcmFsLlBsYWluRGF0ZSgtMHg3ZmZmZmZmZiwgMSwgMSk7IH0s
IFJhbmdlRXJyb3IpOwogCiBsZXQgZmFpbHVyZXMgPSBbCiAgICAgIiIsCg==
</data>
<flag name="review"
          id="479924"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>