<?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>152232</bug_id>
          
          <creation_ts>2015-12-13 15:18:32 -0800</creation_ts>
          <short_desc>[JSC] Add signExtend8To64 / signExtend16To64</short_desc>
          <delta_ts>2023-03-14 16:54:17 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218990</see_also>
          <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>
          
          <blocked>154319</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>chi187</cc>
    
    <cc>curtisrencher7</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>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1148851</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-12-13 15:18:32 -0800</bug_when>
    <thetext>Currently we do the two sign extensions separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1710863</commentid>
    <comment_count>1</comment_count>
      <attachid>415079</attachid>
    <who name="Sergey Rubanov">chi187</who>
    <bug_when>2020-11-30 16:51:51 -0800</bug_when>
    <thetext>Created attachment 415079
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1710868</commentid>
    <comment_count>2</comment_count>
      <attachid>415079</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-11-30 16:57:13 -0800</bug_when>
    <thetext>Comment on attachment 415079
WIP

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

Some early comments. Nice.
And I recommend adding tests to testair / testb3 when modifying Air / B3.

&gt; Source/JavaScriptCore/b3/air/AirOpcode.opcodes:670
&gt; +SignExtend8To64 U:G:8, D:G:Ptr

Let&apos;s not use Ptr here, and instead, let&apos;s use 64. It is also nice if we can define SignExtend32To64 as well :)

&gt; Source/JavaScriptCore/b3/air/AirOpcode.opcodes:673
&gt; +SignExtend16To64 U:G:16, D:G:Ptr

Ditto.

&gt; Source/JavaScriptCore/wasm/WasmAirIRGenerator.cpp:-4627
&gt;      auto temp = g32();
&gt;      append(Move32, arg0, temp);
&gt; -    append(SignExtend8To32, temp, temp);
&gt; -    append(SignExtend32ToPtr, temp, result);

Let&apos;s just make `append(SignExtend8To64, arg0, result);`. We do not need to have temp :)

&gt; Source/JavaScriptCore/wasm/WasmAirIRGenerator.cpp:4635
&gt;      auto temp = g32();
&gt;      append(Move32, arg0, temp);
&gt; -    append(SignExtend16To32, temp, temp);
&gt; -    append(SignExtend32ToPtr, temp, result);
&gt; +    append(SignExtend16To64, temp, result);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1710870</commentid>
    <comment_count>3</comment_count>
      <attachid>415079</attachid>
    <who name="Sergey Rubanov">chi187</who>
    <bug_when>2020-11-30 16:57:56 -0800</bug_when>
    <thetext>Comment on attachment 415079
WIP

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

&gt; Source/JavaScriptCore/b3/B3Opcode.cpp:220
&gt; +        out.print(&quot;SExt8To64&quot;);

out.print(&quot;SExt16To64&quot;);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826845</commentid>
    <comment_count>4</comment_count>
      <attachid>447968</attachid>
    <who name="Sergey Rubanov">chi187</who>
    <bug_when>2021-12-25 21:23:59 -0800</bug_when>
    <thetext>Created attachment 447968
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1940524</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-03-10 15:09:57 -0800</bug_when>
    <thetext>&lt;rdar://problem/106574794&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1940525</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2023-03-10 15:11:25 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/11386</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1941392</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-03-14 16:54:14 -0700</bug_when>
    <thetext>Committed 261660@main (1fac7761b9cd): &lt;https://commits.webkit.org/261660@main&gt;

Reviewed commits have been landed. Closing PR #11386 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415079</attachid>
            <date>2020-11-30 16:51:51 -0800</date>
            <delta_ts>2021-12-25 21:28:20 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-152232-20201201035149.patch</filename>
            <type>text/plain</type>
            <size>13220</size>
            <attacher name="Sergey Rubanov">chi187</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
YjRjNGUxNTQ4Yzk2NzkwZDBlYTc5ZjNmMDFkMmZiZWQxYzViOGNlLi5lMmNlMjFkMDIwYjM1NmVj
ZDAzNDM1ODgxN2EwNzliZDM2ODU1OWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOCBAQAorMjAyMC0xMS0zMCAgU2VyZ2V5IFJ1YmFub3YgIDxjaGkxODdAZ21haWwuY29t
PgorCisgICAgICAgIFNFeHQzMihTRXh0OCh2YWx1ZSkpIGFuZCBTRXh0MzIoU0V4dDE2KHZhbHVl
KSkgc2hvdWxkIGxvd2VyIHRvIG1vdnNicSBhbmQgbW92c3dxIG9uIHg4NgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUyMjMyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJBUk02NC5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTY0OjpzaWduRXh0
ZW5kMTZUbzY0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJBUk02NDo6c2lnbkV4dGVu
ZDhUbzY0KToKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uaDoK
KyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJYODZDb21tb246OnNpZ25FeHRlbmQ4VG82NCk6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyWDg2Q29tbW9uOjpzaWduRXh0ZW5kMTZUbzY0
KToKKyAgICAgICAgKiBhc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmg6CisgICAgICAgIChKU0M6Olg4
NkFzc2VtYmxlcjo6bW92c2JxX3JyKToKKyAgICAgICAgKEpTQzo6WDg2QXNzZW1ibGVyOjptb3Zz
d3FfcnIpOgorICAgICAgICAqIGIzL0IzTG93ZXJUb0Fpci5jcHA6CisgICAgICAgICogYjMvQjNP
cGNvZGUuY3BwOgorICAgICAgICAoV1RGOjpwcmludEludGVybmFsKToKKyAgICAgICAgKiBiMy9C
M09wY29kZS5oOgorICAgICAgICAqIGIzL0IzUmVkdWNlU3RyZW5ndGguY3BwOgorICAgICAgICAq
IGIzL0IzVmFsaWRhdGUuY3BwOgorICAgICAgICAqIGIzL0IzVmFsdWUuY3BwOgorICAgICAgICAo
SlNDOjpCMzo6VmFsdWU6OmVmZmVjdHMgY29uc3QpOgorICAgICAgICAoSlNDOjpCMzo6VmFsdWU6
OmtleSBjb25zdCk6CisgICAgICAgIChKU0M6OkIzOjpWYWx1ZTo6dHlwZUZvcik6CisgICAgICAg
ICogYjMvQjNWYWx1ZS5oOgorICAgICAgICAqIGIzL0IzVmFsdWVJbmxpbmVzLmg6CisgICAgICAg
ICogYjMvQjNWYWx1ZUtleS5jcHA6CisgICAgICAgIChKU0M6OkIzOjpWYWx1ZUtleTo6bWF0ZXJp
YWxpemUgY29uc3QpOgorICAgICAgICAqIGIzL2Fpci9BaXJPcGNvZGUub3Bjb2RlczoKKyAgICAg
ICAgKiB3YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkFp
cklSR2VuZXJhdG9yOjphZGRPcDxPcFR5cGU6Okk2NEV4dGVuZDhTPik6CisgICAgICAgIChKU0M6
Oldhc206OkFpcklSR2VuZXJhdG9yOjphZGRPcDxPcFR5cGU6Okk2NEV4dGVuZDE2Uz4pOgorCiAy
MDIwLTExLTMwICBTZXJnZXkgUnViYW5vdiAgPGNoaTE4N0BnbWFpbC5jb20+CiAKICAgICAgICAg
QWRkIHN1cHBvcnQgZm9yIHRoZSBXYXNtIGk2NCBzaWduLWV4dGVuc2lvbi1vcHMgcHJvcG9zYWwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJs
ZXJBUk02NC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
ckFSTTY0LmgKaW5kZXggNGM5YTllYmE0YjY0ZjQxYzEwZTk0NGRmMjQzOGE2ZmRlYTE3YmE1NS4u
ZGI1MDBiNDNjMzBiN2U5ZWQ3Y2M2ZmM5NTZhNjQ2ZTVhMGNiZWZiMCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmgKQEAg
LTEzNzAsNiArMTM3MCwxMSBAQCBwdWJsaWM6CiAgICAgICAgIG1fYXNzZW1ibGVyLnN4dGg8MzI+
KGRlc3QsIHNyYyk7CiAgICAgfQogCisgICAgdm9pZCBzaWduRXh0ZW5kMTZUbzY0KFJlZ2lzdGVy
SUQgc3JjLCBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5zeHRo
PDY0PihkZXN0LCBzcmMpOworICAgIH0KKwogICAgIHZvaWQgbG9hZDgoSW1wbGljaXRBZGRyZXNz
IGFkZHJlc3MsIFJlZ2lzdGVySUQgZGVzdCkKICAgICB7CiAgICAgICAgIGlmICh0cnlMb2FkV2l0
aE9mZnNldDw4PihkZXN0LCBhZGRyZXNzLmJhc2UsIGFkZHJlc3Mub2Zmc2V0KSkKQEAgLTE0NDMs
NiArMTQ0OCwxMSBAQCBwdWJsaWM6CiAgICAgICAgIG1fYXNzZW1ibGVyLnN4dGI8MzI+KGRlc3Qs
IHNyYyk7CiAgICAgfQogCisgICAgdm9pZCBzaWduRXh0ZW5kOFRvNjQoUmVnaXN0ZXJJRCBzcmMs
IFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLnN4dGI8NjQ+KGRl
c3QsIHNyYyk7CisgICAgfQorCiAgICAgdm9pZCBzdG9yZTY0KFJlZ2lzdGVySUQgc3JjLCBJbXBs
aWNpdEFkZHJlc3MgYWRkcmVzcykKICAgICB7CiAgICAgICAgIGlmICh0cnlTdG9yZVdpdGhPZmZz
ZXQ8NjQ+KHNyYywgYWRkcmVzcy5iYXNlLCBhZGRyZXNzLm9mZnNldCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9u
LmgKaW5kZXggYzRkYmI0MzhiMzBjOGMzNTY5MzIwN2M2MDg0MDBmNDFmMmIxMzM1ZC4uNDVhYmY5
MjkzYTFmYTM5YzliNzNmM2VjMzFmZDFjY2Y1NTgyYWM4MSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uaApA
QCAtMTI3NSw2ICsxMjc1LDExIEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIG1fYXNzZW1ibGVy
Lm1vdnNibF9ycihzcmMsIGRlc3QpOwogICAgIH0KKworICAgIHZvaWQgc2lnbkV4dGVuZDhUbzY0
KFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2Vt
Ymxlci5tb3ZzYnFfcnIoc3JjLCBkZXN0KTsKKyAgICB9CiAgICAgCiAgICAgdm9pZCBsb2FkMTYo
SW1wbGljaXRBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQgZGVzdCkKICAgICB7CkBAIC0xMzEw
LDYgKzEzMTUsMTEgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgbV9hc3NlbWJsZXIubW92c3ds
X3JyKHNyYywgZGVzdCk7CiAgICAgfQorCisgICAgdm9pZCBzaWduRXh0ZW5kMTZUbzY0KFJlZ2lz
dGVySUQgc3JjLCBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5t
b3Zzd3FfcnIoc3JjLCBkZXN0KTsKKyAgICB9CiAgICAgCiAgICAgRGF0YUxhYmVsMzIgc3RvcmUz
MldpdGhBZGRyZXNzT2Zmc2V0UGF0Y2goUmVnaXN0ZXJJRCBzcmMsIEFkZHJlc3MgYWRkcmVzcykK
ICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1g4NkFz
c2VtYmxlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9YODZBc3NlbWJsZXIu
aAppbmRleCAzODljNjAyZDJiM2M0MzRkYjI0OGM5NTU3YTBhOTE0Y2FkNzY2YTdiLi42MzViNGE5
YzcyZjhmMTMwYmMxOGMxNGJhYTkwODZkYzAxZmFkNDRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmgKQEAgLTI2NjYsNiArMjY2NiwxMSBAQCBw
dWJsaWM6CiAgICAgICAgIG1fZm9ybWF0dGVyLnR3b0J5dGVPcDgoT1AyX01PVlNYX0d2RWIsIGRz
dCwgc3JjKTsKICAgICB9CiAKKyAgICB2b2lkIG1vdnNicV9ycihSZWdpc3RlcklEIHNyYywgUmVn
aXN0ZXJJRCBkc3QpCisgICAgeworICAgICAgICBtX2Zvcm1hdHRlci50d29CeXRlT3A4KE9QMl9N
T1ZTWF9HdkViLCBkc3QsIHNyYyk7CisgICAgfQorCiAgICAgdm9pZCBtb3Z6d2xfcnIoUmVnaXN0
ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZHN0KQogICAgIHsKICAgICAgICAgbV9mb3JtYXR0ZXIudHdv
Qnl0ZU9wOChPUDJfTU9WWlhfR3ZFdywgZHN0LCBzcmMpOwpAQCAtMjY3Niw2ICsyNjgxLDExIEBA
IHB1YmxpYzoKICAgICAgICAgbV9mb3JtYXR0ZXIudHdvQnl0ZU9wOChPUDJfTU9WU1hfR3ZFdywg
ZHN0LCBzcmMpOwogICAgIH0KIAorICAgIHZvaWQgbW92c3dxX3JyKFJlZ2lzdGVySUQgc3JjLCBS
ZWdpc3RlcklEIGRzdCkKKyAgICB7CisgICAgICAgIG1fZm9ybWF0dGVyLnR3b0J5dGVPcDgoT1Ay
X01PVlNYX0d2RXcsIGRzdCwgc3JjKTsKKyAgICB9CisKICAgICB2b2lkIGNtb3ZsX3JyKENvbmRp
dGlvbiBjb25kLCBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkc3QpCiAgICAgewogICAgICAg
ICBtX2Zvcm1hdHRlci50d29CeXRlT3AoY21vdmNjKGNvbmQpLCBkc3QsIHNyYyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNMb3dlclRvQWlyLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwCmluZGV4IGY0OTNhM2RmYjc2MjJhYTZi
ZWU2YzUwODJlMGFjMmY1NGU3ZTVlYTguLjllMzkyOWFiMTgwZTU4MGZkNmI2YjkxZTQ2ZTM0ZTMy
YzcwZDQ3OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9B
aXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwCkBA
IC0yOTQ2LDEzICsyOTQ2LDIwIEBAIHByaXZhdGU6CiAgICAgICAgIH0KIAogICAgICAgICBjYXNl
IFNFeHQzMjogewotICAgICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBoYXZlIHN1cHBvcnQg
Zm9yIG1vdnNicS9tb3Zzd3EKLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNTIyMzIKLSAgICAgICAgICAgIAogICAgICAgICAgICAgYXBwZW5k
VW5PcDxTaWduRXh0ZW5kMzJUb1B0ciwgQWlyOjpPb3BzPihtX3ZhbHVlLT5jaGlsZCgwKSk7CiAg
ICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAorICAgICAgICBjYXNlIFNFeHQ4VG82NDog
eworICAgICAgICAgICAgYXBwZW5kVW5PcDxTaWduRXh0ZW5kOFRvNjQsIEFpcjo6T29wcz4obV92
YWx1ZS0+Y2hpbGQoMCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAg
ICAgY2FzZSBTRXh0MTZUbzY0OiB7CisgICAgICAgICAgICBhcHBlbmRVbk9wPFNpZ25FeHRlbmQx
NlRvNjQsIEFpcjo6T29wcz4obV92YWx1ZS0+Y2hpbGQoMCkpOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisKICAgICAgICAgY2FzZSBGbG9hdFRvRG91YmxlOiB7CiAgICAgICAgICAg
ICBhcHBlbmRVbk9wPEFpcjo6T29wcywgQWlyOjpPb3BzLCBBaXI6Ok9vcHMsIENvbnZlcnRGbG9h
dFRvRG91YmxlPihtX3ZhbHVlLT5jaGlsZCgwKSk7CiAgICAgICAgICAgICByZXR1cm47CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNPcGNvZGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL0IzT3Bjb2RlLmNwcAppbmRleCA2Y2ZkOGE5ZjJmYzg3NWJmMzk0M2Y3
OTdjY2ZkYTFiZjFmYjNiMjY5Li45OWVkMDVmMjNkZTUyMDVjZTA0MTFiY2IxYTY4MjVhN2MzZmZl
OTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNPcGNvZGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM09wY29kZS5jcHAKQEAgLTIxMyw2ICsyMTMs
MTIgQEAgdm9pZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBvdXQsIE9wY29kZSBvcGNvZGUp
CiAgICAgY2FzZSBTRXh0MzI6CiAgICAgICAgIG91dC5wcmludCgiU0V4dDMyIik7CiAgICAgICAg
IHJldHVybjsKKyAgICBjYXNlIFNFeHQ4VG82NDoKKyAgICAgICAgb3V0LnByaW50KCJTRXh0OFRv
NjQiKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgU0V4dDE2VG82NDoKKyAgICAgICAgb3V0
LnByaW50KCJTRXh0OFRvNjQiKTsKKyAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgWkV4dDMyOgog
ICAgICAgICBvdXQucHJpbnQoIlpFeHQzMiIpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNPcGNvZGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9CM09wY29kZS5oCmluZGV4IDhlNmEyNGE1NzY2NDg1OWRhNmY1Y2MzZGVjODBiODBi
ZGMwOTY3ZDcuLjBlNGZhMTJjNTA4MTEwZTNjMWU5MjE4YWQ1NjQyYzcxNjIzODNlYmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM09wY29kZS5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM09wY29kZS5oCkBAIC0xMjEsNiArMTIxLDggQEAgZW51bSBPcGNv
ZGUgOiB1aW50OF90IHsKICAgICBTRXh0MTYsCiAgICAgLy8gVGFrZXMgSW50MzIgYW5kIHJldHVy
bnMgSW50NjQ6CiAgICAgU0V4dDMyLAorICAgIFNFeHQ4VG82NCwKKyAgICBTRXh0MTZUbzY0LAog
ICAgIFpFeHQzMiwKICAgICAvLyBEb2VzIGEgYml0d2lzZSB0cnVuY2F0aW9uIG9mIEludDY0LT5J
bnQzMiBhbmQgRG91YmxlLT5GbG9hdDoKICAgICBUcnVuYywKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcAppbmRleCA5MWM5ZGYzODk4YTBkYjM3NmZiYTIz
MTBjMTkyNjFjNjVjZTZkMjY4Li40YTFkYjBiOGJjNzE4ODRiNGQ3MGQ0OThkZTlmNTIyZDE4NTc4
NGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNSZWR1Y2VTdHJlbmd0
aC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5ndGguY3Bw
CkBAIC0xNjA4LDYgKzE2MDgsMjAgQEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBTRXh0MzIoU0V4dDgo
dmFsdWUpKQorICAgICAgICAgICAgLy8gSW50byB0aGlzOiBTRXh0OFRvNjQodmFsdWUpCisgICAg
ICAgICAgICBpZiAobV92YWx1ZS0+Y2hpbGQoMCktPm9wY29kZSgpID09IFNFeHQ4KSB7CisgICAg
ICAgICAgICAgICAgcmVwbGFjZVdpdGhOZXc8VmFsdWU+KFNFeHQ4VG82NCwgbV92YWx1ZS0+b3Jp
Z2luKCksIG1fdmFsdWUtPmNoaWxkKDApLT5jaGlsZCgwKSk7CisgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8vIFR1cm4gdGhpczogU0V4dDMyKFNF
eHQxNih2YWx1ZSkpCisgICAgICAgICAgICAvLyBJbnRvIHRoaXM6IFNFeHQxNlRvNjQodmFsdWUp
CisgICAgICAgICAgICBpZiAobV92YWx1ZS0+Y2hpbGQoMCktPm9wY29kZSgpID09IFNFeHQxNikg
eworICAgICAgICAgICAgICAgIHJlcGxhY2VXaXRoTmV3PFZhbHVlPihTRXh0MTZUbzY0LCBtX3Zh
bHVlLT5vcmlnaW4oKSwgbV92YWx1ZS0+Y2hpbGQoMCktPmNoaWxkKDApKTsKKyAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBT
RXh0MzIoQml0QW5kKGlucHV0LCBtYXNrKSkgd2hlcmUgKG1hc2sgJiAweDgwMDAwMDAwKSA9PSAw
CiAgICAgICAgICAgICAvLyBJbnRvIHRoaXM6IFpFeHQzMihCaXRBbmQoaW5wdXQsIG1hc2spKQog
ICAgICAgICAgICAgaWYgKG1fdmFsdWUtPmNoaWxkKDApLT5vcGNvZGUoKSA9PSBCaXRBbmQgJiYg
bV92YWx1ZS0+Y2hpbGQoMCktPmNoaWxkKDEpLT5oYXNJbnQzMigpCkBAIC0yNjAwLDYgKzI2MTQs
OCBAQCBwcml2YXRlOgogICAgICAgICBjYXNlIFNFeHQ4OgogICAgICAgICBjYXNlIFNFeHQxNjoK
ICAgICAgICAgY2FzZSBTRXh0MzI6CisgICAgICAgIGNhc2UgU0V4dDhUbzY0OgorICAgICAgICBj
YXNlIFNFeHQxNlRvNjQ6CiAgICAgICAgICAgICByZXR1cm4gcmFuZ2VGb3IodmFsdWUtPmNoaWxk
KDApLCB0aW1lVG9MaXZlIC0gMSk7CiAKICAgICAgICAgY2FzZSBaRXh0MzI6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWxpZGF0ZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYjMvQjNWYWxpZGF0ZS5jcHAKaW5kZXggYWY1MGY1NTcyZTRlZjY0YmI1YzYzZGNk
OTY0ZTU3NjBhNTdhNGZkMi4uYWFhNzkxMDQ1NWY3YTc1YzRjMzdkOWQyYTc0YmI1MjVhZDk2MmYw
YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsaWRhdGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbGlkYXRlLmNwcApAQCAtMjYzLDYgKzI2
Myw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICBWQUxJREFURSh2YWx1ZS0+dHlwZSgpID09
IEludDMyLCAoIkF0ICIsICp2YWx1ZSkpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICAgICAgY2FzZSBTRXh0MzI6CisgICAgICAgICAgICBjYXNlIFNFeHQ4VG82NDoKKyAgICAgICAg
ICAgIGNhc2UgU0V4dDE2VG82NDoKICAgICAgICAgICAgIGNhc2UgWkV4dDMyOgogICAgICAgICAg
ICAgICAgIFZBTElEQVRFKCF2YWx1ZS0+a2luZCgpLmhhc0V4dHJhQml0cygpLCAoIkF0ICIsICp2
YWx1ZSkpOwogICAgICAgICAgICAgICAgIFZBTElEQVRFKHZhbHVlLT5udW1DaGlsZHJlbigpID09
IDEsICgiQXQgIiwgKnZhbHVlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YjMvQjNWYWx1ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5jcHAKaW5k
ZXggY2UxMzcxMjFiZDhjNGUwMjZiOGZjNzA3OGJhZmI4ZWNmODEyMmI4ZC4uMzA4NjdhYzA2NmU4
YjZkOTI5NjZmZmY1OGE5ZTY1NTA5ZTQ0M2ZmNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL0IzVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1Zh
bHVlLmNwcApAQCAtNTU4LDYgKzU1OCw4IEBAIEVmZmVjdHMgVmFsdWU6OmVmZmVjdHMoKSBjb25z
dAogICAgIGNhc2UgU0V4dDg6CiAgICAgY2FzZSBTRXh0MTY6CiAgICAgY2FzZSBTRXh0MzI6Cisg
ICAgY2FzZSBTRXh0OFRvNjQ6CisgICAgY2FzZSBTRXh0MTZUbzY0OgogICAgIGNhc2UgWkV4dDMy
OgogICAgIGNhc2UgVHJ1bmM6CiAgICAgY2FzZSBJVG9EOgpAQCAtNjk5LDYgKzcwMSw4IEBAIFZh
bHVlS2V5IFZhbHVlOjprZXkoKSBjb25zdAogICAgIGNhc2UgU0V4dDg6CiAgICAgY2FzZSBTRXh0
MTY6CiAgICAgY2FzZSBTRXh0MzI6CisgICAgY2FzZSBTRXh0OFRvNjQ6CisgICAgY2FzZSBTRXh0
MTZUbzY0OgogICAgIGNhc2UgWkV4dDMyOgogICAgIGNhc2UgQ2x6OgogICAgIGNhc2UgVHJ1bmM6
CkBAIC04NTQsNiArODU4LDggQEAgVHlwZSBWYWx1ZTo6dHlwZUZvcihLaW5kIGtpbmQsIFZhbHVl
KiBmaXJzdENoaWxkLCBWYWx1ZSogc2Vjb25kQ2hpbGQpCiAgICAgY2FzZSBUcnVuYzoKICAgICAg
ICAgcmV0dXJuIGZpcnN0Q2hpbGQtPnR5cGUoKSA9PSBJbnQ2NCA/IEludDMyIDogRmxvYXQ7CiAg
ICAgY2FzZSBTRXh0MzI6CisgICAgY2FzZSBTRXh0OFRvNjQ6CisgICAgY2FzZSBTRXh0MTZUbzY0
OgogICAgIGNhc2UgWkV4dDMyOgogICAgICAgICByZXR1cm4gSW50NjQ7CiAgICAgY2FzZSBGbG9h
dFRvRG91YmxlOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWUu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlLmgKaW5kZXggOTA2MmU0MzRiMmQ2
MmJiOWZkYjhlNmYxOTUwYzEwYmU3YjJlMDllYi4uYjRhMjU0YmM3MTM4ZmJjNjUwYThmZTYyYmM3
ZmY4NmZjMDZkNmZlYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFs
dWUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5oCkBAIC00MDksNiAr
NDA5LDggQEAgcHJvdGVjdGVkOgogICAgICAgICBjYXNlIFNFeHQxNjoKICAgICAgICAgY2FzZSBU
cnVuYzoKICAgICAgICAgY2FzZSBTRXh0MzI6CisgICAgICAgIGNhc2UgU0V4dDhUbzY0OgorICAg
ICAgICBjYXNlIFNFeHQxNlRvNjQ6CiAgICAgICAgIGNhc2UgWkV4dDMyOgogICAgICAgICBjYXNl
IEZsb2F0VG9Eb3VibGU6CiAgICAgICAgIGNhc2UgSVRvRDoKQEAgLTU4Myw2ICs1ODUsOCBAQCBw
cml2YXRlOgogICAgICAgICBjYXNlIFNFeHQxNjoKICAgICAgICAgY2FzZSBUcnVuYzoKICAgICAg
ICAgY2FzZSBTRXh0MzI6CisgICAgICAgIGNhc2UgU0V4dDhUbzY0OgorICAgICAgICBjYXNlIFNF
eHQxNlRvNjQ6CiAgICAgICAgIGNhc2UgWkV4dDMyOgogICAgICAgICBjYXNlIEZsb2F0VG9Eb3Vi
bGU6CiAgICAgICAgIGNhc2UgSVRvRDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9CM1ZhbHVlSW5saW5lcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWVJ
bmxpbmVzLmgKaW5kZXggNmJhZGQ2N2ViZGNhMWZiOGM3OTRjNzQ1ZGNkYjhhZDZkZGMyNDFjZi4u
NTk5NTcyNmM1MDQ4NTdiOTgxMDA4OTE4MTVlMmViYzJjOTYzNjkzMSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWVJbmxpbmVzLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL0IzVmFsdWVJbmxpbmVzLmgKQEAgLTc0LDYgKzc0LDggQEAgbmFtZXNwYWNl
IEpTQyB7IG5hbWVzcGFjZSBCMyB7CiAgICAgY2FzZSBTRXh0MTY6IFwKICAgICBjYXNlIFRydW5j
OiBcCiAgICAgY2FzZSBTRXh0MzI6IFwKKyAgICBjYXNlIFNFeHQ4VG82NDogXAorICAgIGNhc2Ug
U0V4dDE2VG82NDogXAogICAgIGNhc2UgWkV4dDMyOiBcCiAgICAgY2FzZSBGbG9hdFRvRG91Ymxl
OiBcCiAgICAgY2FzZSBJVG9EOiBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YjMvQjNWYWx1ZUtleS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZUtleS5j
cHAKaW5kZXggOTlmNzdmZTg0NzE1YzRhZTNiMzdiYTViMjVlOTYxNDMwZjIyYTE0YS4uOTlmYWY3
MTkzYjQ1YzkyMTBjOTU0N2EwZGE4YWZlY2Y5Yjk5NTI1MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL0IzVmFsdWVLZXkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9CM1ZhbHVlS2V5LmNwcApAQCAtNzMsNiArNzMsOCBAQCBWYWx1ZSogVmFsdWVLZXk6Om1h
dGVyaWFsaXplKFByb2NlZHVyZSYgcHJvYywgT3JpZ2luIG9yaWdpbikgY29uc3QKICAgICBjYXNl
IFNFeHQ4OgogICAgIGNhc2UgU0V4dDE2OgogICAgIGNhc2UgU0V4dDMyOgorICAgIGNhc2UgU0V4
dDhUbzY0OgorICAgIGNhc2UgU0V4dDE2VG82NDoKICAgICBjYXNlIFpFeHQzMjoKICAgICBjYXNl
IENsejoKICAgICBjYXNlIFRydW5jOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2IzL2Fpci9BaXJPcGNvZGUub3Bjb2RlcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIv
QWlyT3Bjb2RlLm9wY29kZXMKaW5kZXggNTNkMjlkZjVmNGEzZDhmMjRmYmY5ZjhiNDc3YmQzN2Iz
NTAyNDNlMC4uYzMxOWM3MzZhZmEyZDcxNGIyYjhkZGJhNTZmOGQ4N2M3OTE1ZTEyYyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJPcGNvZGUub3Bjb2RlcworKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpck9wY29kZS5vcGNvZGVzCkBAIC02Njcs
NiArNjY3LDEyIEBAIFN0b3JlWmVybzMyIEQ6RzozMgogU2lnbkV4dGVuZDMyVG9QdHIgVTpHOjMy
LCBEOkc6UHRyCiAgICAgVG1wLCBUbXAKIAorU2lnbkV4dGVuZDhUbzY0IFU6Rzo4LCBEOkc6UHRy
CisgICAgVG1wLCBUbXAKKworU2lnbkV4dGVuZDE2VG82NCBVOkc6MTYsIEQ6RzpQdHIKKyAgICBU
bXAsIFRtcAorCiBaZXJvRXh0ZW5kOFRvMzIgVTpHOjgsIFpEOkc6MzIKICAgICBUbXAsIFRtcAog
ICAgIHg4NjogQWRkciwgVG1wIGFzIGxvYWQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9XYXNtQWlySVJHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcAppbmRleCBjMDRiNmQxMDFlYWY2YzY3ODUyNTUw
NmRlNDEzNzQzZTI0NGQxZDNmLi45NGNlMjNlYjYzNzE0YTVmNmI2OWIzZmQ1ZGQzODMyZDA0YmFm
NThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtQWlySVJHZW5l
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21BaXJJUkdlbmVy
YXRvci5jcHAKQEAgLTQ2MjMsOCArNDYyMyw3IEBAIHRlbXBsYXRlPD4gYXV0byBBaXJJUkdlbmVy
YXRvcjo6YWRkT3A8T3BUeXBlOjpJNjRFeHRlbmQ4Uz4oRXhwcmVzc2lvblR5cGUgYXJnMCwKICAg
ICByZXN1bHQgPSBnNjQoKTsKICAgICBhdXRvIHRlbXAgPSBnMzIoKTsKICAgICBhcHBlbmQoTW92
ZTMyLCBhcmcwLCB0ZW1wKTsKLSAgICBhcHBlbmQoU2lnbkV4dGVuZDhUbzMyLCB0ZW1wLCB0ZW1w
KTsKLSAgICBhcHBlbmQoU2lnbkV4dGVuZDMyVG9QdHIsIHRlbXAsIHJlc3VsdCk7CisgICAgYXBw
ZW5kKFNpZ25FeHRlbmQ4VG82NCwgdGVtcCwgcmVzdWx0KTsKICAgICByZXR1cm4geyB9OwogfQog
CkBAIC00NjMzLDggKzQ2MzIsNyBAQCB0ZW1wbGF0ZTw+IGF1dG8gQWlySVJHZW5lcmF0b3I6OmFk
ZE9wPE9wVHlwZTo6STY0RXh0ZW5kMTZTPihFeHByZXNzaW9uVHlwZSBhcmcwLAogICAgIHJlc3Vs
dCA9IGc2NCgpOwogICAgIGF1dG8gdGVtcCA9IGczMigpOwogICAgIGFwcGVuZChNb3ZlMzIsIGFy
ZzAsIHRlbXApOwotICAgIGFwcGVuZChTaWduRXh0ZW5kMTZUbzMyLCB0ZW1wLCB0ZW1wKTsKLSAg
ICBhcHBlbmQoU2lnbkV4dGVuZDMyVG9QdHIsIHRlbXAsIHJlc3VsdCk7CisgICAgYXBwZW5kKFNp
Z25FeHRlbmQxNlRvNjQsIHRlbXAsIHJlc3VsdCk7CiAgICAgcmV0dXJuIHsgfTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447968</attachid>
            <date>2021-12-25 21:23:59 -0800</date>
            <delta_ts>2023-03-10 15:19:29 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-152232-20211226082357.patch</filename>
            <type>text/plain</type>
            <size>14997</size>
            <attacher name="Sergey Rubanov">chi187</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
MzE4YmM1NzJhZGE0YTZmYTM2ZDBkNjc5MTdjN2JlMGFiZmZhMDA2Li40ZTU0MDZmY2Q4ZTgxYTE0
YzI4ZDc5MTQ4YWI0MTI2NzNjM2YxNDkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAyMS0xMi0yNSAgU2VyZ2V5IFJ1YmFub3YgIDxjaGkxODdAZ21haWwuY29t
PgorCisgICAgICAgIFNFeHQzMihTRXh0OCh2YWx1ZSkpIGFuZCBTRXh0MzIoU0V4dDE2KHZhbHVl
KSkgc2hvdWxkIGxvd2VyIHRvIG1vdnNicSBhbmQgbW92c3dxIG9uIHg4NgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUyMjMyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJBUk02NC5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTY0OjpzaWduRXh0
ZW5kMTZUbzY0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJBUk02NDo6c2lnbkV4dGVu
ZDhUbzY0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJBUk02NDo6c2lnbkV4dGVuZDMy
VG82NCk6CisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmg6Cisg
ICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyWDg2Q29tbW9uOjpzaWduRXh0ZW5kOFRvNjQpOgor
ICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclg4NkNvbW1vbjo6c2lnbkV4dGVuZDE2VG82NCk6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyWDg2Q29tbW9uOjpzaWduRXh0ZW5kMzJUbzY0
KToKKyAgICAgICAgKiBhc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmg6CisgICAgICAgIChKU0M6Olg4
NkFzc2VtYmxlcjo6bW92c2JxX3JyKToKKyAgICAgICAgKEpTQzo6WDg2QXNzZW1ibGVyOjptb3Zz
d3FfcnIpOgorICAgICAgICAqIGIzL0IzTG93ZXJUb0Fpci5jcHA6CisgICAgICAgICogYjMvQjNP
cGNvZGUuY3BwOgorICAgICAgICAoV1RGOjpwcmludEludGVybmFsKToKKyAgICAgICAgKiBiMy9C
M09wY29kZS5oOgorICAgICAgICAqIGIzL0IzUmVkdWNlU3RyZW5ndGguY3BwOgorICAgICAgICAq
IGIzL0IzVmFsaWRhdGUuY3BwOgorICAgICAgICAqIGIzL0IzVmFsdWUuY3BwOgorICAgICAgICAo
SlNDOjpCMzo6VmFsdWU6OmVmZmVjdHMgY29uc3QpOgorICAgICAgICAoSlNDOjpCMzo6VmFsdWU6
OmtleSBjb25zdCk6CisgICAgICAgIChKU0M6OkIzOjpWYWx1ZTo6dHlwZUZvcik6CisgICAgICAg
ICogYjMvQjNWYWx1ZS5oOgorICAgICAgICAqIGIzL0IzVmFsdWVJbmxpbmVzLmg6CisgICAgICAg
ICogYjMvQjNWYWx1ZUtleS5jcHA6CisgICAgICAgIChKU0M6OkIzOjpWYWx1ZUtleTo6bWF0ZXJp
YWxpemUgY29uc3QpOgorICAgICAgICAqIGIzL2Fpci9BaXJPcGNvZGUub3Bjb2RlczoKKyAgICAg
ICAgKiB3YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkFp
cklSR2VuZXJhdG9yOjphZGRPcDxPcFR5cGU6Okk2NEV4dGVuZDhTPik6CisgICAgICAgIChKU0M6
Oldhc206OkFpcklSR2VuZXJhdG9yOjphZGRPcDxPcFR5cGU6Okk2NEV4dGVuZDE2Uz4pOgorCiAy
MDIxLTEwLTEzICBEaWVnbyBQaW5vIEdhcmNpYSAgPGRwaW5vQGlnYWxpYS5jb20+CiAKICAgICAg
ICAgW0dUS10gVW5yZXZpZXdlZCwgYnVpbGQgZml4IGZvciBVYnVudHUgMTguMDQgYWZ0ZXIgcjI4
Mzg1MgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTTY0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyQVJNNjQuaAppbmRleCA1Zjk4ZmY5ZTMzN2NhMzIzZGU5Y2I1NjgyYWVmOWQ4YjhmY2I1
ZjBhLi40MmFkMDMwMjdmOTg0N2UyOTBhZmQwODljODAzZTkzMTViMDczNzNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQu
aApAQCAtMTgxNSw2ICsxODE1LDExIEBAIHB1YmxpYzoKICAgICAgICAgbV9hc3NlbWJsZXIuc3h0
aDwzMj4oZGVzdCwgc3JjKTsKICAgICB9CiAKKyAgICB2b2lkIHNpZ25FeHRlbmQxNlRvNjQoUmVn
aXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVy
LnN4dGg8NjQ+KGRlc3QsIHNyYyk7CisgICAgfQorCiAgICAgdm9pZCBsb2FkOChBZGRyZXNzIGFk
ZHJlc3MsIFJlZ2lzdGVySUQgZGVzdCkKICAgICB7CiAgICAgICAgIGlmICh0cnlMb2FkV2l0aE9m
ZnNldDw4PihkZXN0LCBhZGRyZXNzLmJhc2UsIGFkZHJlc3Mub2Zmc2V0KSkKQEAgLTE4OTIsNiAr
MTg5NywxMSBAQCBwdWJsaWM6CiAgICAgICAgIG1fYXNzZW1ibGVyLnN4dGI8MzI+KGRlc3QsIHNy
Yyk7CiAgICAgfQogCisgICAgdm9pZCBzaWduRXh0ZW5kOFRvNjQoUmVnaXN0ZXJJRCBzcmMsIFJl
Z2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLnN4dGI8NjQ+KGRlc3Qs
IHNyYyk7CisgICAgfQorCiAgICAgdm9pZCBzdG9yZTY0KFJlZ2lzdGVySUQgc3JjLCBBZGRyZXNz
IGFkZHJlc3MpCiAgICAgewogICAgICAgICBpZiAodHJ5U3RvcmVXaXRoT2Zmc2V0PDY0PihzcmMs
IGFkZHJlc3MuYmFzZSwgYWRkcmVzcy5vZmZzZXQpKQpAQCAtMzAwNSw2ICszMDE1LDExIEBAIHB1
YmxpYzoKICAgICAgICAgbV9hc3NlbWJsZXIuc3h0dyhkZXN0LCBzcmMpOwogICAgIH0KIAorICAg
IHZvaWQgc2lnbkV4dGVuZDMyVG82NChSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0KQor
ICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuc3h0dyhkZXN0LCBzcmMpOworICAgIH0KKwogICAg
IHZvaWQgemVyb0V4dGVuZDMyVG9Xb3JkKFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklEIGRlc3Qp
CiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci51eHR3KGRlc3QsIHNyYyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9u
LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29t
bW9uLmgKaW5kZXggZTY2MTAwYmEyZTQ3MDQ3YTAwOTAwZjdkOWEzOTBkMWNjYWIyN2NiYS4uOTI1
OTgwY2U1NDhmNjJjZGMwMzI2NmI0ZThjOTkwZjEwMzA3ZTc0NyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24u
aApAQCAtMTI5Miw3ICsxMjkyLDEyIEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIG1fYXNzZW1i
bGVyLm1vdnNibF9ycihzcmMsIGRlc3QpOwogICAgIH0KLSAgICAKKworICAgIHZvaWQgc2lnbkV4
dGVuZDhUbzY0KFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAg
ICBtX2Fzc2VtYmxlci5tb3ZzYnFfcnIoc3JjLCBkZXN0KTsKKyAgICB9CisKICAgICB2b2lkIGxv
YWQxNihBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQgZGVzdCkKICAgICB7CiAgICAgICAgIG1f
YXNzZW1ibGVyLm1vdnp3bF9tcihhZGRyZXNzLm9mZnNldCwgYWRkcmVzcy5iYXNlLCBkZXN0KTsK
QEAgLTEzMzksNyArMTM0NCwxMiBAQCBwdWJsaWM6CiAgICAgewogICAgICAgICBtX2Fzc2VtYmxl
ci5tb3Zzd2xfcnIoc3JjLCBkZXN0KTsKICAgICB9Ci0gICAgCisKKyAgICB2b2lkIHNpZ25FeHRl
bmQxNlRvNjQoUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAg
IG1fYXNzZW1ibGVyLm1vdnN3cV9ycihzcmMsIGRlc3QpOworICAgIH0KKwogICAgIERhdGFMYWJl
bDMyIHN0b3JlMzJXaXRoQWRkcmVzc09mZnNldFBhdGNoKFJlZ2lzdGVySUQgc3JjLCBBZGRyZXNz
IGFkZHJlc3MpCiAgICAgewogICAgICAgICBwYWRCZWZvcmVQYXRjaCgpOwpAQCAtMjMwNyw2ICsy
MzE3LDExIEBAIHB1YmxpYzoKICAgICAgICAgbV9hc3NlbWJsZXIubW92c3hkX3JyKHNyYywgZGVz
dCk7CiAgICAgfQogCisgICAgdm9pZCBzaWduRXh0ZW5kMzJUbzY0KFJlZ2lzdGVySUQgc3JjLCBS
ZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5tb3ZzeGRfcnIoc3Jj
LCBkZXN0KTsKKyAgICB9CisKICAgICB2b2lkIHplcm9FeHRlbmQzMlRvV29yZChSZWdpc3RlcklE
IHNyYywgUmVnaXN0ZXJJRCBkZXN0KQogICAgIHsKICAgICAgICAgbV9hc3NlbWJsZXIubW92bF9y
cihzcmMsIGRlc3QpOwpAQCAtMjM5NSw2ICsyNDEwLDExIEBAIHB1YmxpYzoKICAgICAgICAgbW92
ZShzcmMsIGRlc3QpOwogICAgIH0KIAorICAgIHZvaWQgc2lnbkV4dGVuZDMyVG82NChSZWdpc3Rl
cklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbW92ZShzcmMsIGRlc3Qp
OworICAgIH0KKwogICAgIHZvaWQgemVyb0V4dGVuZDMyVG9Xb3JkKFJlZ2lzdGVySUQgc3JjLCBS
ZWdpc3RlcklEIGRlc3QpCiAgICAgewogICAgICAgICBtb3ZlKHNyYywgZGVzdCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9YODZBc3NlbWJsZXIuaAppbmRleCA4ZWFmODQ1
MWIyZWI0OTk4ZWE5Njc1ZTRhN2ZjYjQxMDc4YjEzNjVkLi44ZDcyYzNkMWQ2YmU4ZDBlNzFjYzMw
N2MyMDJhODk1NzI0Yjk2NDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNz
ZW1ibGVyL1g4NkFzc2VtYmxlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvWDg2QXNzZW1ibGVyLmgKQEAgLTI2NjYsNiArMjY2NiwxMSBAQCBwdWJsaWM6CiAgICAgICAg
IG1fZm9ybWF0dGVyLnR3b0J5dGVPcDgoT1AyX01PVlNYX0d2RWIsIGRzdCwgc3JjKTsKICAgICB9
CiAKKyAgICB2b2lkIG1vdnNicV9ycihSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkc3QpCisg
ICAgeworICAgICAgICBtX2Zvcm1hdHRlci50d29CeXRlT3A4KE9QMl9NT1ZTWF9HdkViLCBkc3Qs
IHNyYyk7CisgICAgfQorCiAgICAgdm9pZCBtb3Z6d2xfcnIoUmVnaXN0ZXJJRCBzcmMsIFJlZ2lz
dGVySUQgZHN0KQogICAgIHsKICAgICAgICAgbV9mb3JtYXR0ZXIudHdvQnl0ZU9wOChPUDJfTU9W
WlhfR3ZFdywgZHN0LCBzcmMpOwpAQCAtMjY3Niw2ICsyNjgxLDExIEBAIHB1YmxpYzoKICAgICAg
ICAgbV9mb3JtYXR0ZXIudHdvQnl0ZU9wOChPUDJfTU9WU1hfR3ZFdywgZHN0LCBzcmMpOwogICAg
IH0KIAorICAgIHZvaWQgbW92c3dxX3JyKFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklEIGRzdCkK
KyAgICB7CisgICAgICAgIG1fZm9ybWF0dGVyLnR3b0J5dGVPcDgoT1AyX01PVlNYX0d2RXcsIGRz
dCwgc3JjKTsKKyAgICB9CisKICAgICB2b2lkIGNtb3ZsX3JyKENvbmRpdGlvbiBjb25kLCBSZWdp
c3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkc3QpCiAgICAgewogICAgICAgICBtX2Zvcm1hdHRlci50
d29CeXRlT3AoY21vdmNjKGNvbmQpLCBkc3QsIHNyYyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvQjNMb3dlclRvQWlyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My9CM0xvd2VyVG9BaXIuY3BwCmluZGV4IDZkM2RjNGRmYTdlZmRkMmZiNGY2ZmYxMDQ0MjU2YzM4
ZmVmNDg4NTYuLmQwMDNiZDYxMDBiMzU3NzkyYWM2Yjk5NGViODA4YmFiYTcwZjg2ODAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwCkBAIC0zNjExLDEzICszNjEx
LDI1IEBAIHByaXZhdGU6CiAgICAgICAgIH0KIAogICAgICAgICBjYXNlIFNFeHQzMjogewotICAg
ICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBoYXZlIHN1cHBvcnQgZm9yIG1vdnNicS9tb3Zz
d3EKLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNTIyMzIKLSAgICAgICAgICAgIAogICAgICAgICAgICAgYXBwZW5kVW5PcDxTaWduRXh0ZW5k
MzJUb1B0ciwgQWlyOjpPb3BzPihtX3ZhbHVlLT5jaGlsZCgwKSk7CiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIH0KIAorICAgICAgICBjYXNlIFNFeHQ4VG82NDogeworICAgICAgICAgICAg
YXBwZW5kVW5PcDxTaWduRXh0ZW5kOFRvNjQsIEFpcjo6T29wcz4obV92YWx1ZS0+Y2hpbGQoMCkp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgY2FzZSBTRXh0MTZU
bzY0OiB7CisgICAgICAgICAgICBhcHBlbmRVbk9wPFNpZ25FeHRlbmQxNlRvNjQsIEFpcjo6T29w
cz4obV92YWx1ZS0+Y2hpbGQoMCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisK
KyAgICAgICAgY2FzZSBTRXh0MzJUbzY0OiB7CisgICAgICAgICAgICBhcHBlbmRVbk9wPFNpZ25F
eHRlbmQzMlRvNjQsIEFpcjo6T29wcz4obV92YWx1ZS0+Y2hpbGQoMCkpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CisKICAgICAgICAgY2FzZSBGbG9hdFRvRG91YmxlOiB7CiAgICAg
ICAgICAgICBhcHBlbmRVbk9wPEFpcjo6T29wcywgQWlyOjpPb3BzLCBBaXI6Ok9vcHMsIENvbnZl
cnRGbG9hdFRvRG91YmxlPihtX3ZhbHVlLT5jaGlsZCgwKSk7CiAgICAgICAgICAgICByZXR1cm47
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNPcGNvZGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzT3Bjb2RlLmNwcAppbmRleCBiODkzNGYzZmY0NTE1Njhl
OTI2YmYwNjhmN2I1NTgyZGM5YmI0ZWFmLi4yYzQ2YzAyODkxOTk5ZDZhMzM3NzU3NGM0ZWYwZGVi
YTkzMTY0OTcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNPcGNvZGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM09wY29kZS5jcHAKQEAgLTIxMyw2
ICsyMTMsMTUgQEAgdm9pZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBvdXQsIE9wY29kZSBv
cGNvZGUpCiAgICAgY2FzZSBTRXh0MzI6CiAgICAgICAgIG91dC5wcmludCgiU0V4dDMyIik7CiAg
ICAgICAgIHJldHVybjsKKyAgICBjYXNlIFNFeHQ4VG82NDoKKyAgICAgICAgb3V0LnByaW50KCJT
RXh0OFRvNjQiKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgU0V4dDE2VG82NDoKKyAgICAg
ICAgb3V0LnByaW50KCJTRXh0MTZUbzY0Iik7CisgICAgICAgIHJldHVybjsKKyAgICBjYXNlIFNF
eHQzMlRvNjQ6CisgICAgICAgIG91dC5wcmludCgiU0V4dDMyVG82NCIpOworICAgICAgICByZXR1
cm47CiAgICAgY2FzZSBaRXh0MzI6CiAgICAgICAgIG91dC5wcmludCgiWkV4dDMyIik7CiAgICAg
ICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM09wY29k
ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzT3Bjb2RlLmgKaW5kZXggYmMxZGNlOTM5
NzI3MzY4MzI0Yjc1YTUxNjQwYjU0YmFmNGI1MzdlYy4uODEzZjMxNTZjODliYTQxZTNiNWU1YTk5
NTJhYzA5MjhiNTQ0NTRhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0Iz
T3Bjb2RlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzT3Bjb2RlLmgKQEAgLTEy
MCw2ICsxMjAsOSBAQCBlbnVtIE9wY29kZSA6IHVpbnQ4X3QgewogICAgIFNFeHQxNiwKICAgICAv
LyBUYWtlcyBJbnQzMiBhbmQgcmV0dXJucyBJbnQ2NDoKICAgICBTRXh0MzIsCisgICAgU0V4dDhU
bzY0LAorICAgIFNFeHQxNlRvNjQsCisgICAgU0V4dDMyVG82NCwKICAgICBaRXh0MzIsCiAgICAg
Ly8gRG9lcyBhIGJpdHdpc2UgdHJ1bmNhdGlvbiBvZiBJbnQ2NC0+SW50MzIgYW5kIERvdWJsZS0+
RmxvYXQ6CiAgICAgVHJ1bmMsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
QjNSZWR1Y2VTdHJlbmd0aC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNSZWR1Y2VT
dHJlbmd0aC5jcHAKaW5kZXggMjI4MGZkNzcxMjUyZTcyNjBmNjg1MDUwOTJmZDU0M2NmZTA2MTg1
Ny4uODYwNzkwYzdlOTgyZTRhNWIyNTA1YTdjNTNkMTA5NDFjNzBjNDlmNyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5ndGguY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcApAQCAtMTc2Myw2ICsxNzYz
LDIwIEBAIHByaXZhdGU6CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAK
KyAgICAgICAgICAgIC8vIFR1cm4gdGhpczogU0V4dDMyKFNFeHQ4KHZhbHVlKSkKKyAgICAgICAg
ICAgIC8vIEludG8gdGhpczogU0V4dDhUbzY0KHZhbHVlKQorICAgICAgICAgICAgaWYgKG1fdmFs
dWUtPmNoaWxkKDApLT5vcGNvZGUoKSA9PSBTRXh0OCkgeworICAgICAgICAgICAgICAgIHJlcGxh
Y2VXaXRoTmV3PFZhbHVlPihTRXh0OFRvNjQsIG1fdmFsdWUtPm9yaWdpbigpLCBtX3ZhbHVlLT5j
aGlsZCgwKS0+Y2hpbGQoMCkpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAvLyBUdXJuIHRoaXM6IFNFeHQzMihTRXh0MTYodmFsdWUpKQorICAg
ICAgICAgICAgLy8gSW50byB0aGlzOiBTRXh0MTZUbzY0KHZhbHVlKQorICAgICAgICAgICAgaWYg
KG1fdmFsdWUtPmNoaWxkKDApLT5vcGNvZGUoKSA9PSBTRXh0MTYpIHsKKyAgICAgICAgICAgICAg
ICByZXBsYWNlV2l0aE5ldzxWYWx1ZT4oU0V4dDE2VG82NCwgbV92YWx1ZS0+b3JpZ2luKCksIG1f
dmFsdWUtPmNoaWxkKDApLT5jaGlsZCgwKSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICAgICB9CisKICAgICAgICAgICAgIC8vIFR1cm4gdGhpczogU0V4dDMyKEJpdEFuZChpbnB1
dCwgbWFzaykpIHdoZXJlIChtYXNrICYgMHg4MDAwMDAwMCkgPT0gMAogICAgICAgICAgICAgLy8g
SW50byB0aGlzOiBaRXh0MzIoQml0QW5kKGlucHV0LCBtYXNrKSkKICAgICAgICAgICAgIGlmICht
X3ZhbHVlLT5jaGlsZCgwKS0+b3Bjb2RlKCkgPT0gQml0QW5kICYmIG1fdmFsdWUtPmNoaWxkKDAp
LT5jaGlsZCgxKS0+aGFzSW50MzIoKQpAQCAtMjc1OSw2ICsyNzczLDkgQEAgcHJpdmF0ZToKICAg
ICAgICAgY2FzZSBTRXh0ODoKICAgICAgICAgY2FzZSBTRXh0MTY6CiAgICAgICAgIGNhc2UgU0V4
dDMyOgorICAgICAgICBjYXNlIFNFeHQ4VG82NDoKKyAgICAgICAgY2FzZSBTRXh0MTZUbzY0Ogor
ICAgICAgICBjYXNlIFNFeHQzMlRvNjQ6CiAgICAgICAgICAgICByZXR1cm4gcmFuZ2VGb3IodmFs
dWUtPmNoaWxkKDApLCB0aW1lVG9MaXZlIC0gMSk7CiAKICAgICAgICAgY2FzZSBaRXh0MzI6CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWxpZGF0ZS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWxpZGF0ZS5jcHAKaW5kZXggNTE4Zjk4YzhiZDBiNDQw
ZWNmMjNiMDJmYzFkNjc2MDA2YWYxNjAzYy4uODJmNTBhMDYzZDZjMTYyZDIxZDhkZjNlZjMyMDdk
MDVlZDJiMzExYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsaWRh
dGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbGlkYXRlLmNwcApAQCAt
MjYzLDYgKzI2Myw5IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICBWQUxJREFURSh2YWx1ZS0+
dHlwZSgpID09IEludDMyLCAoIkF0ICIsICp2YWx1ZSkpOwogICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICAgICAgY2FzZSBTRXh0MzI6CisgICAgICAgICAgICBjYXNlIFNFeHQ4VG82NDoK
KyAgICAgICAgICAgIGNhc2UgU0V4dDE2VG82NDoKKyAgICAgICAgICAgIGNhc2UgU0V4dDMyVG82
NDoKICAgICAgICAgICAgIGNhc2UgWkV4dDMyOgogICAgICAgICAgICAgICAgIFZBTElEQVRFKCF2
YWx1ZS0+a2luZCgpLmhhc0V4dHJhQml0cygpLCAoIkF0ICIsICp2YWx1ZSkpOwogICAgICAgICAg
ICAgICAgIFZBTElEQVRFKHZhbHVlLT5udW1DaGlsZHJlbigpID09IDEsICgiQXQgIiwgKnZhbHVl
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5jcHAKaW5kZXggNTg3ZTQ2Njg0NDkyNTEz
NDM5YzNkODc0MmZlZGIxN2EwYzJmNjUyYy4uMGQ2NTY0MWM4Y2U2Yjc1OTNiZTdkMzU3N2JlMzJi
MTgwY2NiNDRkNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlLmNwcApAQCAtNTU3LDYg
KzU1Nyw5IEBAIEVmZmVjdHMgVmFsdWU6OmVmZmVjdHMoKSBjb25zdAogICAgIGNhc2UgU0V4dDg6
CiAgICAgY2FzZSBTRXh0MTY6CiAgICAgY2FzZSBTRXh0MzI6CisgICAgY2FzZSBTRXh0OFRvNjQ6
CisgICAgY2FzZSBTRXh0MTZUbzY0OgorICAgIGNhc2UgU0V4dDMyVG82NDoKICAgICBjYXNlIFpF
eHQzMjoKICAgICBjYXNlIFRydW5jOgogICAgIGNhc2UgSVRvRDoKQEAgLTY5OCw2ICs3MDEsOSBA
QCBWYWx1ZUtleSBWYWx1ZTo6a2V5KCkgY29uc3QKICAgICBjYXNlIFNFeHQ4OgogICAgIGNhc2Ug
U0V4dDE2OgogICAgIGNhc2UgU0V4dDMyOgorICAgIGNhc2UgU0V4dDhUbzY0OgorICAgIGNhc2Ug
U0V4dDE2VG82NDoKKyAgICBjYXNlIFNFeHQzMlRvNjQ6CiAgICAgY2FzZSBaRXh0MzI6CiAgICAg
Y2FzZSBDbHo6CiAgICAgY2FzZSBUcnVuYzoKQEAgLTg1Myw2ICs4NTksOSBAQCBUeXBlIFZhbHVl
Ojp0eXBlRm9yKEtpbmQga2luZCwgVmFsdWUqIGZpcnN0Q2hpbGQsIFZhbHVlKiBzZWNvbmRDaGls
ZCkKICAgICBjYXNlIFRydW5jOgogICAgICAgICByZXR1cm4gZmlyc3RDaGlsZC0+dHlwZSgpID09
IEludDY0ID8gSW50MzIgOiBGbG9hdDsKICAgICBjYXNlIFNFeHQzMjoKKyAgICBjYXNlIFNFeHQ4
VG82NDoKKyAgICBjYXNlIFNFeHQxNlRvNjQ6CisgICAgY2FzZSBTRXh0MzJUbzY0OgogICAgIGNh
c2UgWkV4dDMyOgogICAgICAgICByZXR1cm4gSW50NjQ7CiAgICAgY2FzZSBGbG9hdFRvRG91Ymxl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWUuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlLmgKaW5kZXggOTA2MmU0MzRiMmQ2MmJiOWZkYjhl
NmYxOTUwYzEwYmU3YjJlMDllYi4uY2E3MzY2YmUwMTQxOTc4N2FjYzAxNjM0YzE1YTBjYzdlOTk2
NGZmYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWUuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5oCkBAIC00MDksNiArNDA5LDkgQEAg
cHJvdGVjdGVkOgogICAgICAgICBjYXNlIFNFeHQxNjoKICAgICAgICAgY2FzZSBUcnVuYzoKICAg
ICAgICAgY2FzZSBTRXh0MzI6CisgICAgICAgIGNhc2UgU0V4dDhUbzY0OgorICAgICAgICBjYXNl
IFNFeHQxNlRvNjQ6CisgICAgICAgIGNhc2UgU0V4dDMyVG82NDoKICAgICAgICAgY2FzZSBaRXh0
MzI6CiAgICAgICAgIGNhc2UgRmxvYXRUb0RvdWJsZToKICAgICAgICAgY2FzZSBJVG9EOgpAQCAt
NTgzLDYgKzU4Niw5IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2UgU0V4dDE2OgogICAgICAgICBj
YXNlIFRydW5jOgogICAgICAgICBjYXNlIFNFeHQzMjoKKyAgICAgICAgY2FzZSBTRXh0OFRvNjQ6
CisgICAgICAgIGNhc2UgU0V4dDE2VG82NDoKKyAgICAgICAgY2FzZSBTRXh0MzJUbzY0OgogICAg
ICAgICBjYXNlIFpFeHQzMjoKICAgICAgICAgY2FzZSBGbG9hdFRvRG91YmxlOgogICAgICAgICBj
YXNlIElUb0Q6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZUlu
bGluZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlSW5saW5lcy5oCmluZGV4
IDZiYWRkNjdlYmRjYTFmYjhjNzk0Yzc0NWRjZGI4YWQ2ZGRjMjQxY2YuLjU1ZjA4ODQyNWI2OTlj
NDJjNGY3MWNmZmIzZWNiMTZlMGYwMWNiMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9CM1ZhbHVlSW5saW5lcy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9C
M1ZhbHVlSW5saW5lcy5oCkBAIC03NCw2ICs3NCw5IEBAIG5hbWVzcGFjZSBKU0MgeyBuYW1lc3Bh
Y2UgQjMgewogICAgIGNhc2UgU0V4dDE2OiBcCiAgICAgY2FzZSBUcnVuYzogXAogICAgIGNhc2Ug
U0V4dDMyOiBcCisgICAgY2FzZSBTRXh0OFRvNjQ6IFwKKyAgICBjYXNlIFNFeHQxNlRvNjQ6IFwK
KyAgICBjYXNlIFNFeHQzMlRvNjQ6IFwKICAgICBjYXNlIFpFeHQzMjogXAogICAgIGNhc2UgRmxv
YXRUb0RvdWJsZTogXAogICAgIGNhc2UgSVRvRDogXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL0IzVmFsdWVLZXkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0Iz
VmFsdWVLZXkuY3BwCmluZGV4IDk5Zjc3ZmU4NDcxNWM0YWUzYjM3YmE1YjI1ZTk2MTQzMGYyMmEx
NGEuLjAyMmQ2MmI0MjRiNzU4M2NkNDZiNDFkYTkxYjgyZTdmODYyYjlhYWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlS2V5LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvQjNWYWx1ZUtleS5jcHAKQEAgLTczLDYgKzczLDkgQEAgVmFsdWUqIFZh
bHVlS2V5OjptYXRlcmlhbGl6ZShQcm9jZWR1cmUmIHByb2MsIE9yaWdpbiBvcmlnaW4pIGNvbnN0
CiAgICAgY2FzZSBTRXh0ODoKICAgICBjYXNlIFNFeHQxNjoKICAgICBjYXNlIFNFeHQzMjoKKyAg
ICBjYXNlIFNFeHQ4VG82NDoKKyAgICBjYXNlIFNFeHQxNlRvNjQ6CisgICAgY2FzZSBTRXh0MzJU
bzY0OgogICAgIGNhc2UgWkV4dDMyOgogICAgIGNhc2UgQ2x6OgogICAgIGNhc2UgVHJ1bmM6CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpck9wY29kZS5vcGNvZGVz
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJPcGNvZGUub3Bjb2RlcwppbmRleCBm
ODU0NTc1Mzc0M2FmMjVjMmI1ODdlZWJmZGRhNDI1Nzc5ZmRiZWMyLi41YzVkN2Q0YzliZTMwOTAy
ZGNmYmRiYWYzZjI4NzkyYTk2ZTc3ODYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYjMvYWlyL0Fpck9wY29kZS5vcGNvZGVzCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My9haXIvQWlyT3Bjb2RlLm9wY29kZXMKQEAgLTcyMSw2ICs3MjEsMTUgQEAgU2lnbkV4dGVuZDE2
VG8zMiBVOkc6MTYsIFpEOkc6MzIKICAgICB4ODY6IEFkZHIsIFRtcCBhcyBsb2FkMTZTaWduZWRF
eHRlbmRUbzMyCiAgICAgeDg2OiBJbmRleCwgVG1wIGFzIGxvYWQxNlNpZ25lZEV4dGVuZFRvMzIK
IAorU2lnbkV4dGVuZDhUbzY0IFU6Rzo4LCBEOkc6NjQKKyAgICBUbXAsIFRtcAorCitTaWduRXh0
ZW5kMTZUbzY0IFU6RzoxNiwgRDpHOjY0CisgICAgVG1wLCBUbXAKKworU2lnbkV4dGVuZDMyVG82
NCBVOkc6MTYsIEQ6Rzo2NAorICAgIFRtcCwgVG1wCisKIE1vdmVGbG9hdCBVOkY6MzIsIEQ6Rjoz
MgogICAgIFRtcCwgVG1wIGFzIG1vdmVEb3VibGUKICAgICBBZGRyLCBUbXAgYXMgbG9hZEZsb2F0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtQWlySVJHZW5lcmF0
b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNw
cAppbmRleCA3OTI4MmI3N2U3ODYxNjFkNWRmMDhhNmRmODFhNDJmZWUxMTgzOWZjLi40MjQ3Njk4
MzFmNWNiODUzNTg4NDE0MWQ3ZmM0MmNmZDIzMWRjOWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9XYXNtQWlySVJHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHAKQEAgLTUwNzcsMjAgKzUwNzcs
MTQgQEAgdGVtcGxhdGU8PiBhdXRvIEFpcklSR2VuZXJhdG9yOjphZGRPcDxPcFR5cGU6OkkzMkV4
dGVuZDE2Uz4oRXhwcmVzc2lvblR5cGUgYXJnMCwKIHRlbXBsYXRlPD4gYXV0byBBaXJJUkdlbmVy
YXRvcjo6YWRkT3A8T3BUeXBlOjpJNjRFeHRlbmQ4Uz4oRXhwcmVzc2lvblR5cGUgYXJnMCwgRXhw
cmVzc2lvblR5cGUmIHJlc3VsdCkgLT4gUGFydGlhbFJlc3VsdAogewogICAgIHJlc3VsdCA9IGc2
NCgpOwotICAgIGF1dG8gdGVtcCA9IGczMigpOwotICAgIGFwcGVuZChNb3ZlMzIsIGFyZzAsIHRl
bXApOwotICAgIGFwcGVuZChTaWduRXh0ZW5kOFRvMzIsIHRlbXAsIHRlbXApOwotICAgIGFwcGVu
ZChTaWduRXh0ZW5kMzJUb1B0ciwgdGVtcCwgcmVzdWx0KTsKKyAgICBhcHBlbmQoU2lnbkV4dGVu
ZDhUbzY0LCBhcmcwLCByZXN1bHQpOwogICAgIHJldHVybiB7IH07CiB9CiAKIHRlbXBsYXRlPD4g
YXV0byBBaXJJUkdlbmVyYXRvcjo6YWRkT3A8T3BUeXBlOjpJNjRFeHRlbmQxNlM+KEV4cHJlc3Np
b25UeXBlIGFyZzAsIEV4cHJlc3Npb25UeXBlJiByZXN1bHQpIC0+IFBhcnRpYWxSZXN1bHQKIHsK
ICAgICByZXN1bHQgPSBnNjQoKTsKLSAgICBhdXRvIHRlbXAgPSBnMzIoKTsKLSAgICBhcHBlbmQo
TW92ZTMyLCBhcmcwLCB0ZW1wKTsKLSAgICBhcHBlbmQoU2lnbkV4dGVuZDE2VG8zMiwgdGVtcCwg
dGVtcCk7Ci0gICAgYXBwZW5kKFNpZ25FeHRlbmQzMlRvUHRyLCB0ZW1wLCByZXN1bHQpOworICAg
IGFwcGVuZChTaWduRXh0ZW5kMTZUbzY0LCBhcmcwLCByZXN1bHQpOwogICAgIHJldHVybiB7IH07
CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>