<?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>287772</bug_id>
          
          <creation_ts>2025-02-16 05:54:13 -0800</creation_ts>
          <short_desc>[Cleanup] RenderOverflow does not need to be ref counted</short_desc>
          <delta_ts>2025-02-17 05:22:16 -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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2095047</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2025-02-16 05:54:13 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2095048</commentid>
    <comment_count>1</comment_count>
      <attachid>474239</attachid>
    <who name="alan">zalan</who>
    <bug_when>2025-02-16 06:01:34 -0800</bug_when>
    <thetext>Created attachment 474239
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2095051</commentid>
    <comment_count>2</comment_count>
      <attachid>474240</attachid>
    <who name="alan">zalan</who>
    <bug_when>2025-02-16 09:41:19 -0800</bug_when>
    <thetext>Created attachment 474240
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2095080</commentid>
    <comment_count>3</comment_count>
      <attachid>474242</attachid>
    <who name="alan">zalan</who>
    <bug_when>2025-02-16 14:51:09 -0800</bug_when>
    <thetext>Created attachment 474242
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2095139</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-02-17 05:21:50 -0800</bug_when>
    <thetext>Committed 290479@main (ed725d2892b1): &lt;https://commits.webkit.org/290479@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 474242.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2095140</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2025-02-17 05:22:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/144980150&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>474239</attachid>
            <date>2025-02-16 06:01:34 -0800</date>
            <delta_ts>2025-02-16 09:41:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-287772-20250216060133.patch</filename>
            <type>text/plain</type>
            <size>14228</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA1OWI5MjFlOGVmNjcyYTAzNDExODRjYjZhYTgwYWRjZDVjMGE1YjQ5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFN1biwgMTYgRmViIDIwMjUgMDU6NTY6MDUgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbQ2xlYW51
cF0gUmVuZGVyT3ZlcmZsb3cgZG9lcyBub3QgbmVlZCB0byBiZSByZWYgY291bnRlZAogaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4Nzc3MgoKUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCgpSZW5kZXJPdmVyZmxvdydzIHVzYWdlIGZvbGxvd3MgdGhlIHVuaXF1ZV9w
dHIgcGF0dGVybi4KCiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dC
b3guY3BwOgooV2ViQ29yZTo6TGVnYWN5SW5saW5lRmxvd0JveDo6Y29tcHV0ZU92ZXJmbG93KToK
KFdlYkNvcmU6OkxlZ2FjeUlubGluZUZsb3dCb3g6OnNldFZpc3VhbE92ZXJmbG93KToKKiBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oOgoqIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwOgooV2ViQ29yZTo6UmVuZGVyQm94OjphZGRMYXlv
dXRPdmVyZmxvdyk6CihXZWJDb3JlOjpSZW5kZXJCb3g6OmFkZFZpc3VhbE92ZXJmbG93KToKKFdl
YkNvcmU6OlJlbmRlckJveDo6Y2xlYXJPdmVyZmxvdyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5oOgooV2ViQ29yZTo6UmVuZGVyQm94OjpoYXNSZW5kZXJPdmVyZmxvdyBj
b25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveEZyYWdtZW50SW5mby5o
OgooV2ViQ29yZTo6UmVuZGVyQm94RnJhZ21lbnRJbmZvOjpjcmVhdGVPdmVyZmxvdyk6CihXZWJD
b3JlOjpSZW5kZXJCb3hGcmFnbWVudEluZm86OmNsZWFyT3ZlcmZsb3cpOgoqIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHA6CihXZWJDb3JlOjpSZW5k
ZXJGcmFnbWVudENvbnRhaW5lcjo6ZXhpc3RpbmdPdmVyZmxvd0ZvckJveCBjb25zdCk6CihXZWJD
b3JlOjpSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6b3ZlcmZsb3dGb3JCb3ggY29uc3QpOgooV2Vi
Q29yZTo6UmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmFkZExheW91dE92ZXJmbG93Rm9yQm94KToK
KFdlYkNvcmU6OlJlbmRlckZyYWdtZW50Q29udGFpbmVyOjphZGRWaXN1YWxPdmVyZmxvd0ZvckJv
eCk6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6dmlzdWFsT3ZlcmZsb3dSZWN0
Rm9yQm94IGNvbnN0KToKKFdlYkNvcmU6OlJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpsYXlvdXRP
dmVyZmxvd1JlY3RGb3JCb3hGb3JQcm9wYWdhdGlvbik6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVu
dENvbnRhaW5lcjo6ZW5zdXJlT3ZlcmZsb3dGb3JCb3ggY29uc3QpOiBEZWxldGVkLgoqIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5oOgoqIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oOgooV2ViQ29yZTo6UmVuZGVyT3ZlcmZs
b3c6OnNldExheW91dE92ZXJmbG93KToKKFdlYkNvcmU6OlJlbmRlck92ZXJmbG93OjpzZXRWaXN1
YWxPdmVyZmxvdyk6Ci0tLQogLi4uL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dC
b3guY3BwIHwgIDYgKy0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94
LmggICB8ICAyICstCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCAgICAg
ICAgfCAgNiArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oICAgICAgICAg
IHwgIDQgKy0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hGcmFnbWVudEluZm8uaCB8
IDEwICstLQogLi4uL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHAgICAgIHwg
NjMgKysrKysrKy0tLS0tLS0tLS0tLQogLi4uL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRh
aW5lci5oICAgICAgIHwgIDMgKy0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPdmVy
Zmxvdy5oICAgICB8IDIwICsrLS0tLQogOCBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCsp
LCA3MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
TGVnYWN5SW5saW5lRmxvd0JveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5
SW5saW5lRmxvd0JveC5jcHAKaW5kZXggMDc2NzlmZDI0MzIwLi45MDQwOWNhNWZkMjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5jcHAKQEAg
LTI1OSw5ICsyNTksNyBAQCB2b2lkIExlZ2FjeUlubGluZUZsb3dCb3g6OmNvbXB1dGVPdmVyZmxv
dyhMYXlvdXRVbml0IGxpbmVUb3AsIExheW91dFVuaXQgbGluZUJvdAogICAgIGlmIChrbm93blRv
SGF2ZU5vT3ZlcmZsb3coKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1fb3ZlcmZsb3cp
Ci0gICAgICAgIG1fb3ZlcmZsb3cgPSBudWxscHRyOwotCisgICAgbV9vdmVyZmxvdyA9IHsgfTsK
ICAgICAvLyBWaXN1YWwgb3ZlcmZsb3cganVzdCBpbmNsdWRlcyBvdmVyZmxvdyBmb3Igc3R1ZmYg
d2UgbmVlZCB0byByZXBhaW50IG91cnNlbHZlcy4gU2VsZi1wYWludGluZyBsYXllcnMgYXJlIGln
bm9yZWQuCiAgICAgLy8gTGF5b3V0IG92ZXJmbG93IGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHNjcm9s
bGluZyBleHRlbnQsIHNvIGl0IHN0aWxsIGluY2x1ZGVzIGNoaWxkIGxheWVycyBhbmQgYWxzbyBm
YWN0b3JzIGluCiAgICAgLy8gdHJhbnNmb3JtcywgcmVsYXRpdmUgcG9zaXRpb25pbmcsIGV0Yy4K
QEAgLTI5MCw3ICsyODgsNyBAQCB2b2lkIExlZ2FjeUlubGluZUZsb3dCb3g6OnNldFZpc3VhbE92
ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QsIExheW91dFVuaXQgbAogICAgICAgICByZXR1
cm47CiAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3ZlcmZsb3cgPSBhZG9wdFJl
ZihuZXcgUmVuZGVyT3ZlcmZsb3coZnJhbWVCb3gsIGZyYW1lQm94KSk7CisgICAgICAgIG1fb3Zl
cmZsb3cgPSBtYWtlVW5pcXVlPFJlbmRlck92ZXJmbG93PihmcmFtZUJveCwgZnJhbWVCb3gpOwog
CiAgICAgbV9vdmVyZmxvdy0+c2V0VmlzdWFsT3ZlcmZsb3cocmVjdCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dCb3guaAppbmRleCBjODYzMmY2N2Rk
YmYuLmYyZTgyYzg4MDA4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xl
Z2FjeUlubGluZUZsb3dCb3guaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5
SW5saW5lRmxvd0JveC5oCkBAIC0xNjksNyArMTY5LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiBw
cm90ZWN0ZWQ6Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBtX292ZXJmbG93OworICAgIHN0
ZDo6dW5pcXVlX3B0cjxSZW5kZXJPdmVyZmxvdz4gbV9vdmVyZmxvdzsKIAogICAgIExlZ2FjeUlu
bGluZUJveCogbV9maXJzdENoaWxkIHsgbnVsbHB0ciB9OwogICAgIExlZ2FjeUlubGluZUJveCog
bV9sYXN0Q2hpbGQgeyBudWxscHRyIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3gu
Y3BwCmluZGV4IDRhODZiMTg1ZDEwYS4uZDMzNmZlMjBhZmM2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtNTM2Miw3ICs1MzYyLDcgQEAgdm9pZCBSZW5kZXJCb3g6
OmFkZExheW91dE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QsIGNvbnN0IExheW91dFJl
Y3QmIGNsaWUKICAgICB9CiAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3ZlcmZs
b3cgPSBhZG9wdFJlZihuZXcgUmVuZGVyT3ZlcmZsb3coY2xpZW50Qm94LCBib3JkZXJCb3hSZWN0
KCkpKTsKKyAgICAgICAgbV9vdmVyZmxvdyA9IG1ha2VVbmlxdWU8UmVuZGVyT3ZlcmZsb3c+KGNs
aWVudEJveCwgYm9yZGVyQm94UmVjdCgpKTsKICAgICAKICAgICBtX292ZXJmbG93LT5hZGRMYXlv
dXRPdmVyZmxvdyhvdmVyZmxvd1JlY3QpOwogfQpAQCAtNTM3NCwxNCArNTM3NCwxNCBAQCB2b2lk
IFJlbmRlckJveDo6YWRkVmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKICAg
ICAgICAgcmV0dXJuOwogICAgICAgICAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1f
b3ZlcmZsb3cgPSBhZG9wdFJlZihuZXcgUmVuZGVyT3ZlcmZsb3coZmxpcHBlZENsaWVudEJveFJl
Y3QoKSwgYm9yZGVyQm94KSk7CisgICAgICAgIG1fb3ZlcmZsb3cgPSBtYWtlVW5pcXVlPFJlbmRl
ck92ZXJmbG93PihmbGlwcGVkQ2xpZW50Qm94UmVjdCgpLCBib3JkZXJCb3gpOwogICAgIAogICAg
IG1fb3ZlcmZsb3ctPmFkZFZpc3VhbE92ZXJmbG93KHJlY3QpOwogfQogCiB2b2lkIFJlbmRlckJv
eDo6Y2xlYXJPdmVyZmxvdygpCiB7Ci0gICAgbV9vdmVyZmxvdyA9IG51bGxwdHI7CisgICAgbV9v
dmVyZmxvdyA9IHsgfTsKICAgICBpZiAoQ2hlY2tlZFB0ciBmcmFnbWVudGVkRmxvdyA9IGVuY2xv
c2luZ0ZyYWdtZW50ZWRGbG93KCkpCiAgICAgICAgIGZyYWdtZW50ZWRGbG93LT5jbGVhckZyYWdt
ZW50c092ZXJmbG93KCp0aGlzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaApp
bmRleCBlODA4MDE4NGFiN2MuLmQ3MjgzNWZmMGM5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guaApAQCAtNTUwLDcgKzU1MCw3IEBAIHB1YmxpYzoKICAgICBMYXlvdXRSZWN0IGxv
Z2ljYWxMYXlvdXRPdmVyZmxvd1JlY3RGb3JQcm9wYWdhdGlvbihjb25zdCBXcml0aW5nTW9kZSkg
Y29uc3Q7CiAgICAgTGF5b3V0UmVjdCBsYXlvdXRPdmVyZmxvd1JlY3RGb3JQcm9wYWdhdGlvbihj
b25zdCBXcml0aW5nTW9kZSkgY29uc3Q7CiAKLSAgICBib29sIGhhc1JlbmRlck92ZXJmbG93KCkg
Y29uc3QgeyByZXR1cm4gbV9vdmVyZmxvdzsgfSAgICAKKyAgICBib29sIGhhc1JlbmRlck92ZXJm
bG93KCkgY29uc3QgeyByZXR1cm4gISFtX292ZXJmbG93OyB9CiAgICAgYm9vbCBoYXNWaXN1YWxP
dmVyZmxvdygpIGNvbnN0IHsgcmV0dXJuIG1fb3ZlcmZsb3cgJiYgIWJvcmRlckJveFJlY3QoKS5j
b250YWlucyhtX292ZXJmbG93LT52aXN1YWxPdmVyZmxvd1JlY3QoKSk7IH0KIAogICAgIHZpcnR1
YWwgYm9vbCBuZWVkc1ByZWZlcnJlZFdpZHRoc1JlY2FsY3VsYXRpb24oKSBjb25zdDsKQEAgLTc3
Miw3ICs3NzIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgTGF5b3V0VW5pdCBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aDsKIAogICAgIC8vIE91ciBvdmVyZmxvdyBpbmZvcm1hdGlvbi4KLSAgICBSZWZQ
dHI8UmVuZGVyT3ZlcmZsb3c+IG1fb3ZlcmZsb3c7CisgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRl
ck92ZXJmbG93PiBtX292ZXJmbG93OwogCiBwcml2YXRlOgogICAgIC8vIFVzZWQgdG8gc3RvcmUg
c3RhdGUgYmV0d2VlbiBzdHlsZVdpbGxDaGFuZ2UgYW5kIHN0eWxlRGlkQ2hhbmdlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmgKaW5kZXggYzRm
NTM4NWMxNmZiLi40NzU2Y2UyY2RiMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hGcmFnbWVudEluZm8uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmgKQEAgLTQ3LDE5ICs0NywxNSBAQCBwdWJsaWM6CiAK
ICAgICBib29sIGlzU2hpZnRlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTaGlmdGVkOyB9CiAKLSAg
ICB2b2lkIGNyZWF0ZU92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIGxheW91dE92ZXJmbG93LCBj
b25zdCBMYXlvdXRSZWN0JiB2aXN1YWxPdmVyZmxvdykgeyBtX292ZXJmbG93ID0gYWRvcHRSZWYo
bmV3IFJlbmRlck92ZXJmbG93KGxheW91dE92ZXJmbG93LCB2aXN1YWxPdmVyZmxvdykpOyB9Cisg
ICAgdm9pZCBjcmVhdGVPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0JiBsYXlvdXRPdmVyZmxvdywg
Y29uc3QgTGF5b3V0UmVjdCYgdmlzdWFsT3ZlcmZsb3cpIHsgbV9vdmVyZmxvdyA9IG1ha2VVbmlx
dWU8UmVuZGVyT3ZlcmZsb3c+KGxheW91dE92ZXJmbG93LCB2aXN1YWxPdmVyZmxvdyk7IH0KICAg
ICBSZW5kZXJPdmVyZmxvdyogb3ZlcmZsb3coKSBjb25zdCB7IHJldHVybiBtX292ZXJmbG93Lmdl
dCgpOyB9Ci0gICAgdm9pZCBjbGVhck92ZXJmbG93KCkKLSAgICB7Ci0gICAgICAgIGlmIChtX292
ZXJmbG93KQotICAgICAgICAgICAgbV9vdmVyZmxvdyA9IG51bGxwdHI7Ci0gICAgfQorICAgIHZv
aWQgY2xlYXJPdmVyZmxvdygpIHsgbV9vdmVyZmxvdyA9IHsgfTsgfQogCiBwcml2YXRlOgogICAg
IExheW91dFVuaXQgbV9sb2dpY2FsTGVmdDsKICAgICBMYXlvdXRVbml0IG1fbG9naWNhbFdpZHRo
OwogICAgIGJvb2wgbV9pc1NoaWZ0ZWQ7Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBtX292
ZXJmbG93OworICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJPdmVyZmxvdz4gbV9vdmVyZmxvdzsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyRnJhZ21lbnRDb250YWluZXIuY3BwCmluZGV4IDBkNTA2NDMxY2VkZS4u
NDMxNTcwODc0OGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RnJhZ21lbnRDb250YWluZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJGcmFnbWVudENvbnRhaW5lci5jcHAKQEAgLTQwOCwxOSArNDA4LDIzIEBAIHZvaWQgUmVuZGVy
RnJhZ21lbnRDb250YWluZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBz
ZXRQcmVmZXJyZWRMb2dpY2FsV2lkdGhzRGlydHkoZmFsc2UpOwogfQogCi12b2lkIFJlbmRlckZy
YWdtZW50Q29udGFpbmVyOjplbnN1cmVPdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJv
eCwgUmVmUHRyPFJlbmRlck92ZXJmbG93PiYgb3ZlcmZsb3csIGJvb2wgZm9yY2VDcmVhdGlvbikg
Y29uc3QKK1JlbmRlck92ZXJmbG93KiBSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6ZXhpc3RpbmdP
dmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJveCkgY29uc3QKIHsKICAgICBBU1NFUlQo
bV9mcmFnbWVudGVkRmxvdy0+cmVuZGVyRnJhZ21lbnRDb250YWluZXJMaXN0KCkuY29udGFpbnMo
KnRoaXMpKTsKICAgICBBU1NFUlQoaXNWYWxpZCgpKTsKIAotICAgIFJlbmRlckJveEZyYWdtZW50
SW5mbyogYm94SW5mbyA9IHJlbmRlckJveEZyYWdtZW50SW5mbyhib3gpOwotICAgIGlmICghYm94
SW5mbyAmJiAhZm9yY2VDcmVhdGlvbikKLSAgICAgICAgcmV0dXJuOworICAgIGlmIChhdXRvKiBi
b3hJbmZvID0gcmVuZGVyQm94RnJhZ21lbnRJbmZvKGJveCkpCisgICAgICAgIHJldHVybiBib3hJ
bmZvLT5vdmVyZmxvdygpOworICAgIHJldHVybiB7IH07Cit9CiAKLSAgICBpZiAoYm94SW5mbyAm
JiBib3hJbmZvLT5vdmVyZmxvdygpKSB7Ci0gICAgICAgIG92ZXJmbG93ID0gYm94SW5mby0+b3Zl
cmZsb3coKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KK1JlbmRlck92ZXJmbG93IFJlbmRlckZy
YWdtZW50Q29udGFpbmVyOjpvdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJveCkgY29u
c3QKK3sKKyAgICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IGV4aXN0aW5nT3ZlcmZsb3dGb3JC
b3goYm94KSkKKyAgICAgICAgcmV0dXJuICpvdmVyZmxvdzsKKworICAgIEFTU0VSVChtX2ZyYWdt
ZW50ZWRGbG93LT5yZW5kZXJGcmFnbWVudENvbnRhaW5lckxpc3QoKS5jb250YWlucygqdGhpcykp
OworICAgIEFTU0VSVChpc1ZhbGlkKCkpOwogICAgIAogICAgIExheW91dFJlY3QgYm9yZGVyQm94
ID0gYm94LmJvcmRlckJveFJlY3QoKTsKICAgICBMYXlvdXRSZWN0IGNsaWVudEJveDsKQEAgLTQz
NiwxMSArNDQwLDkgQEAgdm9pZCBSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6ZW5zdXJlT3ZlcmZs
b3dGb3JCb3goY29uc3QgUmVuZGVyQm94JiBib3gsIFJlZlB0cjwKICAgICAgICAgbV9mcmFnbWVu
dGVkRmxvdy0+ZmxpcEZvcldyaXRpbmdNb2RlTG9jYWxDb29yZGluYXRlcyhjbGllbnRCb3gpOwog
ICAgIH0KIAotICAgIGlmIChib3hJbmZvKSB7CisgICAgaWYgKGF1dG8qIGJveEluZm8gPSByZW5k
ZXJCb3hGcmFnbWVudEluZm8oYm94KSkKICAgICAgICAgYm94SW5mby0+Y3JlYXRlT3ZlcmZsb3co
Y2xpZW50Qm94LCBib3JkZXJCb3gpOwotICAgICAgICBvdmVyZmxvdyA9IGJveEluZm8tPm92ZXJm
bG93KCk7Ci0gICAgfSBlbHNlCi0gICAgICAgIG92ZXJmbG93ID0gYWRvcHRSZWYobmV3IFJlbmRl
ck92ZXJmbG93KGNsaWVudEJveCwgYm9yZGVyQm94KSk7CisgICAgcmV0dXJuIHsgY2xpZW50Qm94
LCBib3JkZXJCb3ggfTsKIH0KIAogTGF5b3V0UmVjdCBSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6
cmVjdEZsb3dQb3J0aW9uRm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25zdCBMYXlvdXRS
ZWN0JiByZWN0KSBjb25zdApAQCAtNDcxLDEzICs0NzMsOCBAQCB2b2lkIFJlbmRlckZyYWdtZW50
Q29udGFpbmVyOjphZGRMYXlvdXRPdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJveCwg
Y29ucwogICAgIGlmIChyZWN0LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVm
UHRyPFJlbmRlck92ZXJmbG93PiBmcmFnbWVudE92ZXJmbG93OwotICAgIGVuc3VyZU92ZXJmbG93
Rm9yQm94KGJveCwgZnJhZ21lbnRPdmVyZmxvdywgZmFsc2UpOwotCi0gICAgaWYgKCFmcmFnbWVu
dE92ZXJmbG93KQotICAgICAgICByZXR1cm47Ci0KLSAgICBmcmFnbWVudE92ZXJmbG93LT5hZGRM
YXlvdXRPdmVyZmxvdyhyZWN0KTsKKyAgICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IGV4aXN0
aW5nT3ZlcmZsb3dGb3JCb3goYm94KSkKKyAgICAgICAgb3ZlcmZsb3ctPmFkZExheW91dE92ZXJm
bG93KHJlY3QpOwogfQogCiB2b2lkIFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjphZGRWaXN1YWxP
dmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJveCwgY29uc3QgTGF5b3V0UmVjdCYgcmVj
dCkKQEAgLTQ4NSwyNCArNDgyLDE2IEBAIHZvaWQgUmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmFk
ZFZpc3VhbE92ZXJmbG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25zCiAgICAgaWYg
KHJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8UmVuZGVyT3Zl
cmZsb3c+IGZyYWdtZW50T3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JCb3goYm94LCBm
cmFnbWVudE92ZXJmbG93LCBmYWxzZSk7Ci0KLSAgICBpZiAoIWZyYWdtZW50T3ZlcmZsb3cpCi0g
ICAgICAgIHJldHVybjsKLQotICAgIExheW91dFJlY3QgZmxpcHBlZFJlY3QgPSByZWN0OwotICAg
IGZyYWdtZW50ZWRGbG93KCktPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29vcmRpbmF0ZXMoZmxp
cHBlZFJlY3QpOwotICAgIGZyYWdtZW50T3ZlcmZsb3ctPmFkZFZpc3VhbE92ZXJmbG93KGZsaXBw
ZWRSZWN0KTsKKyAgICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IGV4aXN0aW5nT3ZlcmZsb3dG
b3JCb3goYm94KSkgeworICAgICAgICBMYXlvdXRSZWN0IGZsaXBwZWRSZWN0ID0gcmVjdDsKKyAg
ICAgICAgZnJhZ21lbnRlZEZsb3coKS0+ZmxpcEZvcldyaXRpbmdNb2RlTG9jYWxDb29yZGluYXRl
cyhmbGlwcGVkUmVjdCk7CisgICAgICAgIG92ZXJmbG93LT5hZGRWaXN1YWxPdmVyZmxvdyhmbGlw
cGVkUmVjdCk7CisgICAgfQogfQogCiBMYXlvdXRSZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVy
Ojp2aXN1YWxPdmVyZmxvd1JlY3RGb3JCb3goY29uc3QgUmVuZGVyQm94JiBib3gpIGNvbnN0CiB7
Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBvdmVyZmxvdzsKLSAgICBlbnN1cmVPdmVyZmxv
d0ZvckJveChib3gsIG92ZXJmbG93LCB0cnVlKTsKLQotICAgIEFTU0VSVChvdmVyZmxvdyk7Ci0g
ICAgcmV0dXJuIG92ZXJmbG93LT52aXN1YWxPdmVyZmxvd1JlY3QoKTsKKyAgICByZXR1cm4gb3Zl
cmZsb3dGb3JCb3goYm94KS52aXN1YWxPdmVyZmxvd1JlY3QoKTsKIH0KIAogLy8gRklYTUU6IFRo
aXMgZG9lc24ndCB3b3JrIGZvciB3cml0aW5nIG1vZGVzLgpAQCAtNTExLDEyICs1MDAsOCBAQCBM
YXlvdXRSZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpsYXlvdXRPdmVyZmxvd1JlY3RGb3JC
b3hGb3JQcm9wYWdhdGlvbihjb25zdAogICAgIC8vIE9ubHkgcHJvcGFnYXRlIGludGVyaW9yIGxh
eW91dCBvdmVyZmxvdyBpZiB3ZSBkb24ndCBjbGlwIGl0LgogICAgIExheW91dFJlY3QgcmVjdCA9
IGJveC5ib3JkZXJCb3hSZWN0KCk7CiAgICAgcmVjdCA9IHJlY3RGbG93UG9ydGlvbkZvckJveChi
b3gsIHJlY3QpOwotICAgIGlmICghYm94Lmhhc05vblZpc2libGVPdmVyZmxvdygpKSB7Ci0gICAg
ICAgIFJlZlB0cjxSZW5kZXJPdmVyZmxvdz4gb3ZlcmZsb3c7Ci0gICAgICAgIGVuc3VyZU92ZXJm
bG93Rm9yQm94KGJveCwgb3ZlcmZsb3csIHRydWUpOwotICAgICAgICBBU1NFUlQob3ZlcmZsb3cp
OwotICAgICAgICByZWN0LnVuaXRlKG92ZXJmbG93LT5sYXlvdXRPdmVyZmxvd1JlY3QoKSk7Ci0g
ICAgfQorICAgIGlmICghYm94Lmhhc05vblZpc2libGVPdmVyZmxvdygpKQorICAgICAgICByZWN0
LnVuaXRlKG92ZXJmbG93Rm9yQm94KGJveCkubGF5b3V0T3ZlcmZsb3dSZWN0KCkpOwogCiAgICAg
Ym9vbCBoYXNUcmFuc2Zvcm0gPSBib3guaXNUcmFuc2Zvcm1lZCgpOwogICAgIGlmIChib3guaXNJ
bkZsb3dQb3NpdGlvbmVkKCkgfHwgaGFzVHJhbnNmb3JtKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhZ21lbnRDb250YWluZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5oCmluZGV4IGFkNjQ3YzAzMjZh
Mi4uMmM1YmM2ZGE2ZDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyRnJhZ21lbnRDb250YWluZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyRnJhZ21lbnRDb250YWluZXIuaApAQCAtMTI1LDcgKzEyNSw4IEBAIHByb3RlY3RlZDoKICAg
ICBSZW5kZXJGcmFnbWVudENvbnRhaW5lcihUeXBlLCBEb2N1bWVudCYsIFJlbmRlclN0eWxlJiYs
IFJlbmRlckZyYWdtZW50ZWRGbG93Kik7CiAgICAgdmlydHVhbCB+UmVuZGVyRnJhZ21lbnRDb250
YWluZXIoKTsKIAotICAgIHZvaWQgZW5zdXJlT3ZlcmZsb3dGb3JCb3goY29uc3QgUmVuZGVyQm94
JiwgUmVmUHRyPFJlbmRlck92ZXJmbG93PiYsIGJvb2wpIGNvbnN0OworICAgIFJlbmRlck92ZXJm
bG93KiBleGlzdGluZ092ZXJmbG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYpIGNvbnN0OworICAg
IFJlbmRlck92ZXJmbG93IG92ZXJmbG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYpIGNvbnN0Owog
CiAgICAgdm9pZCBjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpIG92ZXJyaWRlOwogICAg
IHZvaWQgY29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMoTGF5b3V0VW5pdCYgbWluTG9naWNh
bFdpZHRoLCBMYXlvdXRVbml0JiBtYXhMb2dpY2FsV2lkdGgpIGNvbnN0IG92ZXJyaWRlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJmbG93LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT3ZlcmZsb3cuaAppbmRleCAyODU4ZDA0YTk2YzUu
LmFjY2Y4ZTg5ZTgwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck92ZXJmbG93LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJmbG93
LmgKQEAgLTIyLDcgKzIyLDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiTGF5b3V0UmVj
dC5oIgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL0NoZWNrZWRQ
dHIuaD4KICNpbmNsdWRlIDx3dGYvVFpvbmVNYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlCkBAIC0zOSw5ICszOSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlCiAvLyBFeGFtcGxlcyBv
ZiB2aXN1YWwgb3ZlcmZsb3cgYXJlIHNoYWRvd3MsIHRleHQgc3Ryb2tlLCBvdXRsaW5lIChhbmQg
ZXZlbnR1YWxseSBib3JkZXItaW1hZ2UpLgogCiAvLyBUaGlzIG9iamVjdCBpcyBhbGxvY2F0ZWQg
b25seSB3aGVuIHNvbWUgb2YgdGhlc2UgZmllbGRzIGhhdmUgbm9uLWRlZmF1bHQgdmFsdWVzIGlu
IHRoZSBvd25pbmcgYm94LgotY2xhc3MgUmVuZGVyT3ZlcmZsb3cgOiBwdWJsaWMgUmVmQ291bnRl
ZDxSZW5kZXJPdmVyZmxvdz4geworY2xhc3MgUmVuZGVyT3ZlcmZsb3cgOiBwdWJsaWMgQ2FuTWFr
ZUNoZWNrZWRQdHI8UmVuZGVyT3ZlcmZsb3c+IHsKICAgICBXVEZfTUFLRV9UWk9ORV9BTExPQ0FU
RURfSU5MSU5FKFJlbmRlck92ZXJmbG93KTsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShSZW5k
ZXJPdmVyZmxvdyk7CisgICAgV1RGX09WRVJSSURFX0RFTEVURV9GT1JfQ0hFQ0tFRF9QVFIoUmVu
ZGVyT3ZlcmZsb3cpOwogcHVibGljOgogICAgIFJlbmRlck92ZXJmbG93KGNvbnN0IExheW91dFJl
Y3QmIGxheW91dFJlY3QsIGNvbnN0IExheW91dFJlY3QmIHZpc3VhbFJlY3QpIAogICAgICAgICA6
IG1fbGF5b3V0T3ZlcmZsb3cobGF5b3V0UmVjdCkKQEAgLTU3LDggKzU3LDggQEAgcHVibGljOgog
ICAgIHZvaWQgYWRkTGF5b3V0T3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYpOwogICAgIHZvaWQg
YWRkVmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYpOwogCi0gICAgdm9pZCBzZXRMYXlv
dXRPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0Jik7Ci0gICAgdm9pZCBzZXRWaXN1YWxPdmVyZmxv
dyhjb25zdCBMYXlvdXRSZWN0Jik7CisgICAgdm9pZCBzZXRMYXlvdXRPdmVyZmxvdyhjb25zdCBM
YXlvdXRSZWN0JiByZWN0KSB7IG1fbGF5b3V0T3ZlcmZsb3cgPSByZWN0OyB9CisgICAgdm9pZCBz
ZXRWaXN1YWxPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0JiByZWN0KSB7IG1fdmlzdWFsT3ZlcmZs
b3cgPSByZWN0OyB9CiAKICAgICBMYXlvdXRVbml0IGxheW91dENsaWVudEFmdGVyRWRnZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbGF5b3V0Q2xpZW50QWZ0ZXJFZGdlOyB9CiAgICAgdm9pZCBzZXRMYXlv
dXRDbGllbnRBZnRlckVkZ2UoTGF5b3V0VW5pdCBjbGllbnRBZnRlckVkZ2UpIHsgbV9sYXlvdXRD
bGllbnRBZnRlckVkZ2UgPSBjbGllbnRBZnRlckVkZ2U7IH0KQEAgLTk5LDE0ICs5OSw0IEBAIGlu
bGluZSB2b2lkIFJlbmRlck92ZXJmbG93OjphZGRWaXN1YWxPdmVyZmxvdyhjb25zdCBMYXlvdXRS
ZWN0JiByZWN0KQogICAgIG1fdmlzdWFsT3ZlcmZsb3cuc2V0SGVpZ2h0KG1heFkgLSBtX3Zpc3Vh
bE92ZXJmbG93LnkoKSk7CiB9CiAKLWlubGluZSB2b2lkIFJlbmRlck92ZXJmbG93OjpzZXRMYXlv
dXRPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0JiByZWN0KQotewotICAgIG1fbGF5b3V0T3ZlcmZs
b3cgPSByZWN0OwotfQotCi1pbmxpbmUgdm9pZCBSZW5kZXJPdmVyZmxvdzo6c2V0VmlzdWFsT3Zl
cmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKLXsKLSAgICBtX3Zpc3VhbE92ZXJmbG93ID0g
cmVjdDsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>474240</attachid>
            <date>2025-02-16 09:41:19 -0800</date>
            <delta_ts>2025-02-16 14:51:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-287772-20250216094118.patch</filename>
            <type>text/plain</type>
            <size>15669</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA2MjM0MjI2ZDA5OGZkM2YxYzRlYWM1N2NiM2JlYjQ4N2E3ZWNlMTRjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFN1biwgMTYgRmViIDIwMjUgMDU6NTY6MDUgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbQ2xlYW51
cF0gUmVuZGVyT3ZlcmZsb3cgZG9lcyBub3QgbmVlZCB0byBiZSByZWYgY291bnRlZAogaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4Nzc3MgoKUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCgpSZW5kZXJPdmVyZmxvdydzIHVzYWdlIGZvbGxvd3MgdGhlIHVuaXF1ZV9w
dHIgcGF0dGVybi4KCiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dC
b3guY3BwOgooV2ViQ29yZTo6TGVnYWN5SW5saW5lRmxvd0JveDo6Y29tcHV0ZU92ZXJmbG93KToK
KFdlYkNvcmU6OkxlZ2FjeUlubGluZUZsb3dCb3g6OnNldFZpc3VhbE92ZXJmbG93KToKKiBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oOgoqIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwOgooV2ViQ29yZTo6UmVuZGVyQm94OjphZGRMYXlv
dXRPdmVyZmxvdyk6CihXZWJDb3JlOjpSZW5kZXJCb3g6OmFkZFZpc3VhbE92ZXJmbG93KToKKFdl
YkNvcmU6OlJlbmRlckJveDo6Y2xlYXJPdmVyZmxvdyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5oOgooV2ViQ29yZTo6UmVuZGVyQm94OjpoYXNSZW5kZXJPdmVyZmxvdyBj
b25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveEZyYWdtZW50SW5mby5o
OgooV2ViQ29yZTo6UmVuZGVyQm94RnJhZ21lbnRJbmZvOjpjcmVhdGVPdmVyZmxvdyk6CihXZWJD
b3JlOjpSZW5kZXJCb3hGcmFnbWVudEluZm86OmNsZWFyT3ZlcmZsb3cpOgoqIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHA6CihXZWJDb3JlOjpSZW5k
ZXJGcmFnbWVudENvbnRhaW5lcjo6ZXhpc3RpbmdPdmVyZmxvd0ZvckJveCBjb25zdCk6CihXZWJD
b3JlOjpSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6b3ZlcmZsb3dGb3JCb3ggY29uc3QpOgooV2Vi
Q29yZTo6UmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmFkZExheW91dE92ZXJmbG93Rm9yQm94KToK
KFdlYkNvcmU6OlJlbmRlckZyYWdtZW50Q29udGFpbmVyOjphZGRWaXN1YWxPdmVyZmxvd0ZvckJv
eCk6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6dmlzdWFsT3ZlcmZsb3dSZWN0
Rm9yQm94IGNvbnN0KToKKFdlYkNvcmU6OlJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpsYXlvdXRP
dmVyZmxvd1JlY3RGb3JCb3hGb3JQcm9wYWdhdGlvbik6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVu
dENvbnRhaW5lcjo6ZW5zdXJlT3ZlcmZsb3dGb3JCb3ggY29uc3QpOiBEZWxldGVkLgoqIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5oOgoqIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oOgooV2ViQ29yZTo6UmVuZGVyT3ZlcmZs
b3c6OnNldExheW91dE92ZXJmbG93KToKKFdlYkNvcmU6OlJlbmRlck92ZXJmbG93OjpzZXRWaXN1
YWxPdmVyZmxvdyk6Ci0tLQogLi4uL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dC
b3guY3BwIHwgIDYgKy0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94
LmggICB8ICAyICstCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCAgICAg
ICAgfCAgNiArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oICAgICAgICAg
IHwgIDQgKy0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hGcmFnbWVudEluZm8uaCB8
IDEwICstCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNwcCAgICAgfCA5
OSArKysrKysrKystLS0tLS0tLS0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFp
bmVyLmggICAgICAgfCAgNCArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJm
bG93LmggICAgIHwgMjAgKy0tLQogOCBmaWxlcyBjaGFuZ2VkLCA2NyBpbnNlcnRpb25zKCspLCA4
NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVn
YWN5SW5saW5lRmxvd0JveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5s
aW5lRmxvd0JveC5jcHAKaW5kZXggMDc2NzlmZDI0MzIwLi45MDQwOWNhNWZkMjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5jcHAKQEAgLTI1
OSw5ICsyNTksNyBAQCB2b2lkIExlZ2FjeUlubGluZUZsb3dCb3g6OmNvbXB1dGVPdmVyZmxvdyhM
YXlvdXRVbml0IGxpbmVUb3AsIExheW91dFVuaXQgbGluZUJvdAogICAgIGlmIChrbm93blRvSGF2
ZU5vT3ZlcmZsb3coKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1fb3ZlcmZsb3cpCi0g
ICAgICAgIG1fb3ZlcmZsb3cgPSBudWxscHRyOwotCisgICAgbV9vdmVyZmxvdyA9IHsgfTsKICAg
ICAvLyBWaXN1YWwgb3ZlcmZsb3cganVzdCBpbmNsdWRlcyBvdmVyZmxvdyBmb3Igc3R1ZmYgd2Ug
bmVlZCB0byByZXBhaW50IG91cnNlbHZlcy4gU2VsZi1wYWludGluZyBsYXllcnMgYXJlIGlnbm9y
ZWQuCiAgICAgLy8gTGF5b3V0IG92ZXJmbG93IGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHNjcm9sbGlu
ZyBleHRlbnQsIHNvIGl0IHN0aWxsIGluY2x1ZGVzIGNoaWxkIGxheWVycyBhbmQgYWxzbyBmYWN0
b3JzIGluCiAgICAgLy8gdHJhbnNmb3JtcywgcmVsYXRpdmUgcG9zaXRpb25pbmcsIGV0Yy4KQEAg
LTI5MCw3ICsyODgsNyBAQCB2b2lkIExlZ2FjeUlubGluZUZsb3dCb3g6OnNldFZpc3VhbE92ZXJm
bG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QsIExheW91dFVuaXQgbAogICAgICAgICByZXR1cm47
CiAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3ZlcmZsb3cgPSBhZG9wdFJlZihu
ZXcgUmVuZGVyT3ZlcmZsb3coZnJhbWVCb3gsIGZyYW1lQm94KSk7CisgICAgICAgIG1fb3ZlcmZs
b3cgPSBtYWtlVW5pcXVlPFJlbmRlck92ZXJmbG93PihmcmFtZUJveCwgZnJhbWVCb3gpOwogCiAg
ICAgbV9vdmVyZmxvdy0+c2V0VmlzdWFsT3ZlcmZsb3cocmVjdCk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dCb3guaAppbmRleCBjODYzMmY2N2RkYmYu
LmYyZTgyYzg4MDA4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2Fj
eUlubGluZUZsb3dCb3guaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5s
aW5lRmxvd0JveC5oCkBAIC0xNjksNyArMTY5LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiBwcm90
ZWN0ZWQ6Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBtX292ZXJmbG93OworICAgIHN0ZDo6
dW5pcXVlX3B0cjxSZW5kZXJPdmVyZmxvdz4gbV9vdmVyZmxvdzsKIAogICAgIExlZ2FjeUlubGlu
ZUJveCogbV9maXJzdENoaWxkIHsgbnVsbHB0ciB9OwogICAgIExlZ2FjeUlubGluZUJveCogbV9s
YXN0Q2hpbGQgeyBudWxscHRyIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3Bw
CmluZGV4IDRhODZiMTg1ZDEwYS4uZDMzNmZlMjBhZmM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQm94LmNwcApAQCAtNTM2Miw3ICs1MzYyLDcgQEAgdm9pZCBSZW5kZXJCb3g6OmFk
ZExheW91dE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QsIGNvbnN0IExheW91dFJlY3Qm
IGNsaWUKICAgICB9CiAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3ZlcmZsb3cg
PSBhZG9wdFJlZihuZXcgUmVuZGVyT3ZlcmZsb3coY2xpZW50Qm94LCBib3JkZXJCb3hSZWN0KCkp
KTsKKyAgICAgICAgbV9vdmVyZmxvdyA9IG1ha2VVbmlxdWU8UmVuZGVyT3ZlcmZsb3c+KGNsaWVu
dEJveCwgYm9yZGVyQm94UmVjdCgpKTsKICAgICAKICAgICBtX292ZXJmbG93LT5hZGRMYXlvdXRP
dmVyZmxvdyhvdmVyZmxvd1JlY3QpOwogfQpAQCAtNTM3NCwxNCArNTM3NCwxNCBAQCB2b2lkIFJl
bmRlckJveDo6YWRkVmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3Zl
cmZsb3cgPSBhZG9wdFJlZihuZXcgUmVuZGVyT3ZlcmZsb3coZmxpcHBlZENsaWVudEJveFJlY3Qo
KSwgYm9yZGVyQm94KSk7CisgICAgICAgIG1fb3ZlcmZsb3cgPSBtYWtlVW5pcXVlPFJlbmRlck92
ZXJmbG93PihmbGlwcGVkQ2xpZW50Qm94UmVjdCgpLCBib3JkZXJCb3gpOwogICAgIAogICAgIG1f
b3ZlcmZsb3ctPmFkZFZpc3VhbE92ZXJmbG93KHJlY3QpOwogfQogCiB2b2lkIFJlbmRlckJveDo6
Y2xlYXJPdmVyZmxvdygpCiB7Ci0gICAgbV9vdmVyZmxvdyA9IG51bGxwdHI7CisgICAgbV9vdmVy
ZmxvdyA9IHsgfTsKICAgICBpZiAoQ2hlY2tlZFB0ciBmcmFnbWVudGVkRmxvdyA9IGVuY2xvc2lu
Z0ZyYWdtZW50ZWRGbG93KCkpCiAgICAgICAgIGZyYWdtZW50ZWRGbG93LT5jbGVhckZyYWdtZW50
c092ZXJmbG93KCp0aGlzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAppbmRl
eCBlODA4MDE4NGFiN2MuLmQ3MjgzNWZmMGM5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guaApAQCAtNTUwLDcgKzU1MCw3IEBAIHB1YmxpYzoKICAgICBMYXlvdXRSZWN0IGxvZ2lj
YWxMYXlvdXRPdmVyZmxvd1JlY3RGb3JQcm9wYWdhdGlvbihjb25zdCBXcml0aW5nTW9kZSkgY29u
c3Q7CiAgICAgTGF5b3V0UmVjdCBsYXlvdXRPdmVyZmxvd1JlY3RGb3JQcm9wYWdhdGlvbihjb25z
dCBXcml0aW5nTW9kZSkgY29uc3Q7CiAKLSAgICBib29sIGhhc1JlbmRlck92ZXJmbG93KCkgY29u
c3QgeyByZXR1cm4gbV9vdmVyZmxvdzsgfSAgICAKKyAgICBib29sIGhhc1JlbmRlck92ZXJmbG93
KCkgY29uc3QgeyByZXR1cm4gISFtX292ZXJmbG93OyB9CiAgICAgYm9vbCBoYXNWaXN1YWxPdmVy
ZmxvdygpIGNvbnN0IHsgcmV0dXJuIG1fb3ZlcmZsb3cgJiYgIWJvcmRlckJveFJlY3QoKS5jb250
YWlucyhtX292ZXJmbG93LT52aXN1YWxPdmVyZmxvd1JlY3QoKSk7IH0KIAogICAgIHZpcnR1YWwg
Ym9vbCBuZWVkc1ByZWZlcnJlZFdpZHRoc1JlY2FsY3VsYXRpb24oKSBjb25zdDsKQEAgLTc3Miw3
ICs3NzIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgTGF5b3V0VW5pdCBtX21heFByZWZlcnJlZExvZ2lj
YWxXaWR0aDsKIAogICAgIC8vIE91ciBvdmVyZmxvdyBpbmZvcm1hdGlvbi4KLSAgICBSZWZQdHI8
UmVuZGVyT3ZlcmZsb3c+IG1fb3ZlcmZsb3c7CisgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlck92
ZXJmbG93PiBtX292ZXJmbG93OwogCiBwcml2YXRlOgogICAgIC8vIFVzZWQgdG8gc3RvcmUgc3Rh
dGUgYmV0d2VlbiBzdHlsZVdpbGxDaGFuZ2UgYW5kIHN0eWxlRGlkQ2hhbmdlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmgKaW5kZXggYzRmNTM4
NWMxNmZiLi40NzU2Y2UyY2RiMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3hGcmFnbWVudEluZm8uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94RnJhZ21lbnRJbmZvLmgKQEAgLTQ3LDE5ICs0NywxNSBAQCBwdWJsaWM6CiAKICAg
ICBib29sIGlzU2hpZnRlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTaGlmdGVkOyB9CiAKLSAgICB2
b2lkIGNyZWF0ZU92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIGxheW91dE92ZXJmbG93LCBjb25z
dCBMYXlvdXRSZWN0JiB2aXN1YWxPdmVyZmxvdykgeyBtX292ZXJmbG93ID0gYWRvcHRSZWYobmV3
IFJlbmRlck92ZXJmbG93KGxheW91dE92ZXJmbG93LCB2aXN1YWxPdmVyZmxvdykpOyB9CisgICAg
dm9pZCBjcmVhdGVPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0JiBsYXlvdXRPdmVyZmxvdywgY29u
c3QgTGF5b3V0UmVjdCYgdmlzdWFsT3ZlcmZsb3cpIHsgbV9vdmVyZmxvdyA9IG1ha2VVbmlxdWU8
UmVuZGVyT3ZlcmZsb3c+KGxheW91dE92ZXJmbG93LCB2aXN1YWxPdmVyZmxvdyk7IH0KICAgICBS
ZW5kZXJPdmVyZmxvdyogb3ZlcmZsb3coKSBjb25zdCB7IHJldHVybiBtX292ZXJmbG93LmdldCgp
OyB9Ci0gICAgdm9pZCBjbGVhck92ZXJmbG93KCkKLSAgICB7Ci0gICAgICAgIGlmIChtX292ZXJm
bG93KQotICAgICAgICAgICAgbV9vdmVyZmxvdyA9IG51bGxwdHI7Ci0gICAgfQorICAgIHZvaWQg
Y2xlYXJPdmVyZmxvdygpIHsgbV9vdmVyZmxvdyA9IHsgfTsgfQogCiBwcml2YXRlOgogICAgIExh
eW91dFVuaXQgbV9sb2dpY2FsTGVmdDsKICAgICBMYXlvdXRVbml0IG1fbG9naWNhbFdpZHRoOwog
ICAgIGJvb2wgbV9pc1NoaWZ0ZWQ7Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBtX292ZXJm
bG93OworICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJPdmVyZmxvdz4gbV9vdmVyZmxvdzsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRnJhZ21lbnRDb250YWluZXIuY3BwCmluZGV4IDBkNTA2NDMxY2VkZS4uMzJl
ZjBhOGU1OWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJh
Z21lbnRDb250YWluZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
cmFnbWVudENvbnRhaW5lci5jcHAKQEAgLTQwOCwzOSArNDA4LDQ1IEBAIHZvaWQgUmVuZGVyRnJh
Z21lbnRDb250YWluZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBzZXRQ
cmVmZXJyZWRMb2dpY2FsV2lkdGhzRGlydHkoZmFsc2UpOwogfQogCi12b2lkIFJlbmRlckZyYWdt
ZW50Q29udGFpbmVyOjplbnN1cmVPdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJveCwg
UmVmUHRyPFJlbmRlck92ZXJmbG93PiYgb3ZlcmZsb3csIGJvb2wgZm9yY2VDcmVhdGlvbikgY29u
c3QKK0xheW91dFJlY3QgUmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmNvbXB1dGVkVmlzdWFsT3Zl
cmZsb3dSZWN0Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94KSBjb25zdAogewotICAgIEFTU0VS
VChtX2ZyYWdtZW50ZWRGbG93LT5yZW5kZXJGcmFnbWVudENvbnRhaW5lckxpc3QoKS5jb250YWlu
cygqdGhpcykpOwotICAgIEFTU0VSVChpc1ZhbGlkKCkpOworICAgIEFTU0VSVChtX2ZyYWdtZW50
ZWRGbG93LT5vYmplY3RTaG91bGRGcmFnbWVudEluRmxvd0ZyYWdtZW50KCZib3gsIHRoaXMpKTsK
IAotICAgIFJlbmRlckJveEZyYWdtZW50SW5mbyogYm94SW5mbyA9IHJlbmRlckJveEZyYWdtZW50
SW5mbyhib3gpOwotICAgIGlmICghYm94SW5mbyAmJiAhZm9yY2VDcmVhdGlvbikKLSAgICAgICAg
cmV0dXJuOworICAgIGF1dG8gYm9yZGVyQm94ID0gYm94LmJvcmRlckJveFJlY3QoKTsKKyAgICBp
ZiAoYm9yZGVyQm94LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIGlmIChi
b3hJbmZvICYmIGJveEluZm8tPm92ZXJmbG93KCkpIHsKLSAgICAgICAgb3ZlcmZsb3cgPSBib3hJ
bmZvLT5vdmVyZmxvdygpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIAotICAgIExheW91
dFJlY3QgYm9yZGVyQm94ID0gYm94LmJvcmRlckJveFJlY3QoKTsKLSAgICBMYXlvdXRSZWN0IGNs
aWVudEJveDsKKyAgICBib3JkZXJCb3ggPSByZWN0Rmxvd1BvcnRpb25Gb3JCb3goYm94LCBib3Jk
ZXJCb3gpOworICAgIG1fZnJhZ21lbnRlZEZsb3ctPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29v
cmRpbmF0ZXMoYm9yZGVyQm94KTsKKyAgICByZXR1cm4gYm9yZGVyQm94OworfQorCitMYXlvdXRS
ZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpjb21wdXRlZExheW91dE92ZXJmbG93UmVjdEZv
ckJveChjb25zdCBSZW5kZXJCb3gmIGJveCkgY29uc3QKK3sKICAgICBBU1NFUlQobV9mcmFnbWVu
dGVkRmxvdy0+b2JqZWN0U2hvdWxkRnJhZ21lbnRJbkZsb3dGcmFnbWVudCgmYm94LCB0aGlzKSk7
CisgICAgYXV0byBjbGllbnRCb3ggPSBib3guY2xpZW50Qm94UmVjdCgpOworICAgIGlmIChjbGll
bnRCb3guaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4geyB9OwogCi0gICAgaWYgKCFib3JkZXJC
b3guaXNFbXB0eSgpKSB7Ci0gICAgICAgIGJvcmRlckJveCA9IHJlY3RGbG93UG9ydGlvbkZvckJv
eChib3gsIGJvcmRlckJveCk7CisgICAgY2xpZW50Qm94ID0gcmVjdEZsb3dQb3J0aW9uRm9yQm94
KGJveCwgY2xpZW50Qm94KTsKKyAgICBtX2ZyYWdtZW50ZWRGbG93LT5mbGlwRm9yV3JpdGluZ01v
ZGVMb2NhbENvb3JkaW5hdGVzKGNsaWVudEJveCk7CisgICAgcmV0dXJuIGNsaWVudEJveDsKK30K
IAotICAgICAgICBjbGllbnRCb3ggPSBib3guY2xpZW50Qm94UmVjdCgpOwotICAgICAgICBjbGll
bnRCb3ggPSByZWN0Rmxvd1BvcnRpb25Gb3JCb3goYm94LCBjbGllbnRCb3gpOwotICAgICAgICAK
LSAgICAgICAgbV9mcmFnbWVudGVkRmxvdy0+ZmxpcEZvcldyaXRpbmdNb2RlTG9jYWxDb29yZGlu
YXRlcyhib3JkZXJCb3gpOwotICAgICAgICBtX2ZyYWdtZW50ZWRGbG93LT5mbGlwRm9yV3JpdGlu
Z01vZGVMb2NhbENvb3JkaW5hdGVzKGNsaWVudEJveCk7Ci0gICAgfQorUmVuZGVyT3ZlcmZsb3cq
IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpvdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gm
IGJveCkgY29uc3QKK3sKKyAgICBBU1NFUlQobV9mcmFnbWVudGVkRmxvdy0+cmVuZGVyRnJhZ21l
bnRDb250YWluZXJMaXN0KCkuY29udGFpbnMoKnRoaXMpKTsKKyAgICBBU1NFUlQoaXNWYWxpZCgp
KTsKIAotICAgIGlmIChib3hJbmZvKSB7Ci0gICAgICAgIGJveEluZm8tPmNyZWF0ZU92ZXJmbG93
KGNsaWVudEJveCwgYm9yZGVyQm94KTsKLSAgICAgICAgb3ZlcmZsb3cgPSBib3hJbmZvLT5vdmVy
ZmxvdygpOwotICAgIH0gZWxzZQotICAgICAgICBvdmVyZmxvdyA9IGFkb3B0UmVmKG5ldyBSZW5k
ZXJPdmVyZmxvdyhjbGllbnRCb3gsIGJvcmRlckJveCkpOworICAgIGF1dG8qIGJveEluZm8gPSBy
ZW5kZXJCb3hGcmFnbWVudEluZm8oYm94KTsKKyAgICBpZiAoIWJveEluZm8pCisgICAgICAgIHJl
dHVybiB7IH07CisKKyAgICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IGJveEluZm8tPm92ZXJm
bG93KCkpCisgICAgICAgIHJldHVybiBvdmVyZmxvdy5nZXQoKTsKKworICAgIGJveEluZm8tPmNy
ZWF0ZU92ZXJmbG93KGNvbXB1dGVkTGF5b3V0T3ZlcmZsb3dSZWN0Rm9yQm94KGJveCksIGNvbXB1
dGVkVmlzdWFsT3ZlcmZsb3dSZWN0Rm9yQm94KGJveCkpOworICAgIHJldHVybiBib3hJbmZvLT5v
dmVyZmxvdygpOwogfQogCiBMYXlvdXRSZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpyZWN0
Rmxvd1BvcnRpb25Gb3JCb3goY29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IExheW91dFJlY3Qm
IHJlY3QpIGNvbnN0CkBAIC00NzEsMTMgKzQ3Nyw4IEBAIHZvaWQgUmVuZGVyRnJhZ21lbnRDb250
YWluZXI6OmFkZExheW91dE92ZXJmbG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25z
CiAgICAgaWYgKHJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8
UmVuZGVyT3ZlcmZsb3c+IGZyYWdtZW50T3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JC
b3goYm94LCBmcmFnbWVudE92ZXJmbG93LCBmYWxzZSk7Ci0KLSAgICBpZiAoIWZyYWdtZW50T3Zl
cmZsb3cpCi0gICAgICAgIHJldHVybjsKLQotICAgIGZyYWdtZW50T3ZlcmZsb3ctPmFkZExheW91
dE92ZXJmbG93KHJlY3QpOworICAgIGlmIChDaGVja2VkUHRyIG92ZXJmbG93ID0gb3ZlcmZsb3dG
b3JCb3goYm94KSkKKyAgICAgICAgb3ZlcmZsb3ctPmFkZExheW91dE92ZXJmbG93KHJlY3QpOwog
fQogCiB2b2lkIFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjphZGRWaXN1YWxPdmVyZmxvd0ZvckJv
eChjb25zdCBSZW5kZXJCb3gmIGJveCwgY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKQEAgLTQ4NSwy
NCArNDg2LDE4IEBAIHZvaWQgUmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmFkZFZpc3VhbE92ZXJm
bG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25zCiAgICAgaWYgKHJlY3QuaXNFbXB0
eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8UmVuZGVyT3ZlcmZsb3c+IGZyYWdt
ZW50T3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JCb3goYm94LCBmcmFnbWVudE92ZXJm
bG93LCBmYWxzZSk7Ci0KLSAgICBpZiAoIWZyYWdtZW50T3ZlcmZsb3cpCi0gICAgICAgIHJldHVy
bjsKLQotICAgIExheW91dFJlY3QgZmxpcHBlZFJlY3QgPSByZWN0OwotICAgIGZyYWdtZW50ZWRG
bG93KCktPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29vcmRpbmF0ZXMoZmxpcHBlZFJlY3QpOwot
ICAgIGZyYWdtZW50T3ZlcmZsb3ctPmFkZFZpc3VhbE92ZXJmbG93KGZsaXBwZWRSZWN0KTsKKyAg
ICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IG92ZXJmbG93Rm9yQm94KGJveCkpIHsKKyAgICAg
ICAgTGF5b3V0UmVjdCBmbGlwcGVkUmVjdCA9IHJlY3Q7CisgICAgICAgIGZyYWdtZW50ZWRGbG93
KCktPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29vcmRpbmF0ZXMoZmxpcHBlZFJlY3QpOworICAg
ICAgICBvdmVyZmxvdy0+YWRkVmlzdWFsT3ZlcmZsb3coZmxpcHBlZFJlY3QpOworICAgIH0KIH0K
IAogTGF5b3V0UmVjdCBSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6dmlzdWFsT3ZlcmZsb3dSZWN0
Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94KSBjb25zdAogewotICAgIFJlZlB0cjxSZW5kZXJP
dmVyZmxvdz4gb3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JCb3goYm94LCBvdmVyZmxv
dywgdHJ1ZSk7Ci0KLSAgICBBU1NFUlQob3ZlcmZsb3cpOwotICAgIHJldHVybiBvdmVyZmxvdy0+
dmlzdWFsT3ZlcmZsb3dSZWN0KCk7CisgICAgaWYgKENoZWNrZWRQdHIgb3ZlcmZsb3cgPSBvdmVy
Zmxvd0ZvckJveChib3gpKQorICAgICAgICByZXR1cm4gb3ZlcmZsb3ctPnZpc3VhbE92ZXJmbG93
UmVjdCgpOworICAgIHJldHVybiBjb21wdXRlZFZpc3VhbE92ZXJmbG93UmVjdEZvckJveChib3gp
OwogfQogCiAvLyBGSVhNRTogVGhpcyBkb2Vzbid0IHdvcmsgZm9yIHdyaXRpbmcgbW9kZXMuCkBA
IC01MTIsMTAgKzUwNywxMiBAQCBMYXlvdXRSZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjps
YXlvdXRPdmVyZmxvd1JlY3RGb3JCb3hGb3JQcm9wYWdhdGlvbihjb25zdAogICAgIExheW91dFJl
Y3QgcmVjdCA9IGJveC5ib3JkZXJCb3hSZWN0KCk7CiAgICAgcmVjdCA9IHJlY3RGbG93UG9ydGlv
bkZvckJveChib3gsIHJlY3QpOwogICAgIGlmICghYm94Lmhhc05vblZpc2libGVPdmVyZmxvdygp
KSB7Ci0gICAgICAgIFJlZlB0cjxSZW5kZXJPdmVyZmxvdz4gb3ZlcmZsb3c7Ci0gICAgICAgIGVu
c3VyZU92ZXJmbG93Rm9yQm94KGJveCwgb3ZlcmZsb3csIHRydWUpOwotICAgICAgICBBU1NFUlQo
b3ZlcmZsb3cpOwotICAgICAgICByZWN0LnVuaXRlKG92ZXJmbG93LT5sYXlvdXRPdmVyZmxvd1Jl
Y3QoKSk7CisgICAgICAgIGF1dG8gbGF5b3V0T3ZlcmZsb3dSZWN0ID0gTGF5b3V0UmVjdCB7IH07
CisgICAgICAgIGlmIChDaGVja2VkUHRyIG92ZXJmbG93ID0gb3ZlcmZsb3dGb3JCb3goYm94KSkK
KyAgICAgICAgICAgIGxheW91dE92ZXJmbG93UmVjdCA9IG92ZXJmbG93LT5sYXlvdXRPdmVyZmxv
d1JlY3QoKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbGF5b3V0T3ZlcmZsb3dSZWN0ID0g
Y29tcHV0ZWRMYXlvdXRPdmVyZmxvd1JlY3RGb3JCb3goYm94KTsKKyAgICAgICAgcmVjdC51bml0
ZShsYXlvdXRPdmVyZmxvd1JlY3QpOwogICAgIH0KIAogICAgIGJvb2wgaGFzVHJhbnNmb3JtID0g
Ym94LmlzVHJhbnNmb3JtZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckZyYWdtZW50Q29udGFpbmVyLmgKaW5kZXggYWQ2NDdjMDMyNmEyLi5mZTUzMGI3NzQ5ZGUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRh
aW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRh
aW5lci5oCkBAIC0xMjUsNyArMTI1LDcgQEAgcHJvdGVjdGVkOgogICAgIFJlbmRlckZyYWdtZW50
Q29udGFpbmVyKFR5cGUsIERvY3VtZW50JiwgUmVuZGVyU3R5bGUmJiwgUmVuZGVyRnJhZ21lbnRl
ZEZsb3cqKTsKICAgICB2aXJ0dWFsIH5SZW5kZXJGcmFnbWVudENvbnRhaW5lcigpOwogCi0gICAg
dm9pZCBlbnN1cmVPdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmLCBSZWZQdHI8UmVuZGVy
T3ZlcmZsb3c+JiwgYm9vbCkgY29uc3Q7CisgICAgUmVuZGVyT3ZlcmZsb3cqIG92ZXJmbG93Rm9y
Qm94KGNvbnN0IFJlbmRlckJveCYpIGNvbnN0OwogCiAgICAgdm9pZCBjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocygpIG92ZXJyaWRlOwogICAgIHZvaWQgY29tcHV0ZUludHJpbnNpY0xvZ2lj
YWxXaWR0aHMoTGF5b3V0VW5pdCYgbWluTG9naWNhbFdpZHRoLCBMYXlvdXRVbml0JiBtYXhMb2dp
Y2FsV2lkdGgpIGNvbnN0IG92ZXJyaWRlOwpAQCAtMTQ0LDYgKzE0NCw4IEBAIHByaXZhdGU6CiAg
ICAgdmlydHVhbCB2b2lkIGluc3RhbGxGcmFnbWVudGVkRmxvdygpOwogCiAgICAgTGF5b3V0UG9p
bnQgbWFwRnJhZ21lbnRQb2ludEludG9GcmFnbWVudGVkRmxvd0Nvb3JkaW5hdGVzKGNvbnN0IExh
eW91dFBvaW50Jik7CisgICAgTGF5b3V0UmVjdCBjb21wdXRlZFZpc3VhbE92ZXJmbG93UmVjdEZv
ckJveChjb25zdCBSZW5kZXJCb3gmKSBjb25zdDsKKyAgICBMYXlvdXRSZWN0IGNvbXB1dGVkTGF5
b3V0T3ZlcmZsb3dSZWN0Rm9yQm94KGNvbnN0IFJlbmRlckJveCYpIGNvbnN0OwogCiBwcm90ZWN0
ZWQ6CiAgICAgU2luZ2xlVGhyZWFkV2Vha1B0cjxSZW5kZXJGcmFnbWVudGVkRmxvdz4gbV9mcmFn
bWVudGVkRmxvdzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJP
dmVyZmxvdy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJmbG93LmgKaW5k
ZXggMjg1OGQwNGE5NmM1Li5hY2NmOGU4OWU4MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPdmVyZmxvdy5oCkBAIC0yMiw3ICsyMiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2lu
Y2x1ZGUgIkxheW91dFJlY3QuaCIKLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1
ZGUgPHd0Zi9DaGVja2VkUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1Rab25lTWFsbG9jSW5saW5lcy5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZQpAQCAtMzksOSArMzksOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZQogLy8gRXhhbXBsZXMgb2YgdmlzdWFsIG92ZXJmbG93IGFyZSBzaGFkb3dzLCB0ZXh0IHN0cm9r
ZSwgb3V0bGluZSAoYW5kIGV2ZW50dWFsbHkgYm9yZGVyLWltYWdlKS4KIAogLy8gVGhpcyBvYmpl
Y3QgaXMgYWxsb2NhdGVkIG9ubHkgd2hlbiBzb21lIG9mIHRoZXNlIGZpZWxkcyBoYXZlIG5vbi1k
ZWZhdWx0IHZhbHVlcyBpbiB0aGUgb3duaW5nIGJveC4KLWNsYXNzIFJlbmRlck92ZXJmbG93IDog
cHVibGljIFJlZkNvdW50ZWQ8UmVuZGVyT3ZlcmZsb3c+IHsKK2NsYXNzIFJlbmRlck92ZXJmbG93
IDogcHVibGljIENhbk1ha2VDaGVja2VkUHRyPFJlbmRlck92ZXJmbG93PiB7CiAgICAgV1RGX01B
S0VfVFpPTkVfQUxMT0NBVEVEX0lOTElORShSZW5kZXJPdmVyZmxvdyk7Ci0gICAgV1RGX01BS0Vf
Tk9OQ09QWUFCTEUoUmVuZGVyT3ZlcmZsb3cpOworICAgIFdURl9PVkVSUklERV9ERUxFVEVfRk9S
X0NIRUNLRURfUFRSKFJlbmRlck92ZXJmbG93KTsKIHB1YmxpYzoKICAgICBSZW5kZXJPdmVyZmxv
dyhjb25zdCBMYXlvdXRSZWN0JiBsYXlvdXRSZWN0LCBjb25zdCBMYXlvdXRSZWN0JiB2aXN1YWxS
ZWN0KSAKICAgICAgICAgOiBtX2xheW91dE92ZXJmbG93KGxheW91dFJlY3QpCkBAIC01Nyw4ICs1
Nyw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZExheW91dE92ZXJmbG93KGNvbnN0IExheW91dFJl
Y3QmKTsKICAgICB2b2lkIGFkZFZpc3VhbE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmKTsKIAot
ICAgIHZvaWQgc2V0TGF5b3V0T3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYpOwotICAgIHZvaWQg
c2V0VmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYpOworICAgIHZvaWQgc2V0TGF5b3V0
T3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkgeyBtX2xheW91dE92ZXJmbG93ID0gcmVj
dDsgfQorICAgIHZvaWQgc2V0VmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkg
eyBtX3Zpc3VhbE92ZXJmbG93ID0gcmVjdDsgfQogCiAgICAgTGF5b3V0VW5pdCBsYXlvdXRDbGll
bnRBZnRlckVkZ2UoKSBjb25zdCB7IHJldHVybiBtX2xheW91dENsaWVudEFmdGVyRWRnZTsgfQog
ICAgIHZvaWQgc2V0TGF5b3V0Q2xpZW50QWZ0ZXJFZGdlKExheW91dFVuaXQgY2xpZW50QWZ0ZXJF
ZGdlKSB7IG1fbGF5b3V0Q2xpZW50QWZ0ZXJFZGdlID0gY2xpZW50QWZ0ZXJFZGdlOyB9CkBAIC05
OSwxNCArOTksNCBAQCBpbmxpbmUgdm9pZCBSZW5kZXJPdmVyZmxvdzo6YWRkVmlzdWFsT3ZlcmZs
b3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKICAgICBtX3Zpc3VhbE92ZXJmbG93LnNldEhlaWdo
dChtYXhZIC0gbV92aXN1YWxPdmVyZmxvdy55KCkpOwogfQogCi1pbmxpbmUgdm9pZCBSZW5kZXJP
dmVyZmxvdzo6c2V0TGF5b3V0T3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKLXsKLSAg
ICBtX2xheW91dE92ZXJmbG93ID0gcmVjdDsKLX0KLQotaW5saW5lIHZvaWQgUmVuZGVyT3ZlcmZs
b3c6OnNldFZpc3VhbE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QpCi17Ci0gICAgbV92
aXN1YWxPdmVyZmxvdyA9IHJlY3Q7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>474242</attachid>
            <date>2025-02-16 14:51:09 -0800</date>
            <delta_ts>2025-02-17 05:21:51 -0800</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-287772-20250216145109.patch</filename>
            <type>text/plain</type>
            <size>15671</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBiNjI3YTFkM2JkMWM3ZWQyMTc2MTdlYTY2YjRkN2YyNGFkZmYwNjYxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFN1biwgMTYgRmViIDIwMjUgMDU6NTY6MDUgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbQ2xlYW51
cF0gUmVuZGVyT3ZlcmZsb3cgZG9lcyBub3QgbmVlZCB0byBiZSByZWYgY291bnRlZAogaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4Nzc3MgoKUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCgpSZW5kZXJPdmVyZmxvdydzIHVzYWdlIGZvbGxvd3MgdGhlIHVuaXF1ZV9w
dHIgcGF0dGVybi4KCiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dC
b3guY3BwOgooV2ViQ29yZTo6TGVnYWN5SW5saW5lRmxvd0JveDo6Y29tcHV0ZU92ZXJmbG93KToK
KFdlYkNvcmU6OkxlZ2FjeUlubGluZUZsb3dCb3g6OnNldFZpc3VhbE92ZXJmbG93KToKKiBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oOgoqIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwOgooV2ViQ29yZTo6UmVuZGVyQm94OjphZGRMYXlv
dXRPdmVyZmxvdyk6CihXZWJDb3JlOjpSZW5kZXJCb3g6OmFkZFZpc3VhbE92ZXJmbG93KToKKFdl
YkNvcmU6OlJlbmRlckJveDo6Y2xlYXJPdmVyZmxvdyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5oOgooV2ViQ29yZTo6UmVuZGVyQm94OjpoYXNSZW5kZXJPdmVyZmxvdyBj
b25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveEZyYWdtZW50SW5mby5o
OgooV2ViQ29yZTo6UmVuZGVyQm94RnJhZ21lbnRJbmZvOjpjcmVhdGVPdmVyZmxvdyk6CihXZWJD
b3JlOjpSZW5kZXJCb3hGcmFnbWVudEluZm86OmNsZWFyT3ZlcmZsb3cpOgoqIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHA6CihXZWJDb3JlOjpSZW5k
ZXJGcmFnbWVudENvbnRhaW5lcjo6ZXhpc3RpbmdPdmVyZmxvd0ZvckJveCBjb25zdCk6CihXZWJD
b3JlOjpSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6b3ZlcmZsb3dGb3JCb3ggY29uc3QpOgooV2Vi
Q29yZTo6UmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmFkZExheW91dE92ZXJmbG93Rm9yQm94KToK
KFdlYkNvcmU6OlJlbmRlckZyYWdtZW50Q29udGFpbmVyOjphZGRWaXN1YWxPdmVyZmxvd0ZvckJv
eCk6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6dmlzdWFsT3ZlcmZsb3dSZWN0
Rm9yQm94IGNvbnN0KToKKFdlYkNvcmU6OlJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpsYXlvdXRP
dmVyZmxvd1JlY3RGb3JCb3hGb3JQcm9wYWdhdGlvbik6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVu
dENvbnRhaW5lcjo6ZW5zdXJlT3ZlcmZsb3dGb3JCb3ggY29uc3QpOiBEZWxldGVkLgoqIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5oOgoqIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oOgooV2ViQ29yZTo6UmVuZGVyT3ZlcmZs
b3c6OnNldExheW91dE92ZXJmbG93KToKKFdlYkNvcmU6OlJlbmRlck92ZXJmbG93OjpzZXRWaXN1
YWxPdmVyZmxvdyk6Ci0tLQogLi4uL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dC
b3guY3BwIHwgIDYgKy0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94
LmggICB8ICAyICstCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCAgICAg
ICAgfCAgNiArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oICAgICAgICAg
IHwgIDQgKy0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hGcmFnbWVudEluZm8uaCB8
IDEwICstCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNwcCAgICAgfCA5
OSArKysrKysrKystLS0tLS0tLS0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFp
bmVyLmggICAgICAgfCAgNCArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJm
bG93LmggICAgIHwgMTkgKy0tLQogOCBmaWxlcyBjaGFuZ2VkLCA2NyBpbnNlcnRpb25zKCspLCA4
MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVn
YWN5SW5saW5lRmxvd0JveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5s
aW5lRmxvd0JveC5jcHAKaW5kZXggMDc2NzlmZDI0MzIwLi45MDQwOWNhNWZkMjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5jcHAKQEAgLTI1
OSw5ICsyNTksNyBAQCB2b2lkIExlZ2FjeUlubGluZUZsb3dCb3g6OmNvbXB1dGVPdmVyZmxvdyhM
YXlvdXRVbml0IGxpbmVUb3AsIExheW91dFVuaXQgbGluZUJvdAogICAgIGlmIChrbm93blRvSGF2
ZU5vT3ZlcmZsb3coKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1fb3ZlcmZsb3cpCi0g
ICAgICAgIG1fb3ZlcmZsb3cgPSBudWxscHRyOwotCisgICAgbV9vdmVyZmxvdyA9IHsgfTsKICAg
ICAvLyBWaXN1YWwgb3ZlcmZsb3cganVzdCBpbmNsdWRlcyBvdmVyZmxvdyBmb3Igc3R1ZmYgd2Ug
bmVlZCB0byByZXBhaW50IG91cnNlbHZlcy4gU2VsZi1wYWludGluZyBsYXllcnMgYXJlIGlnbm9y
ZWQuCiAgICAgLy8gTGF5b3V0IG92ZXJmbG93IGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHNjcm9sbGlu
ZyBleHRlbnQsIHNvIGl0IHN0aWxsIGluY2x1ZGVzIGNoaWxkIGxheWVycyBhbmQgYWxzbyBmYWN0
b3JzIGluCiAgICAgLy8gdHJhbnNmb3JtcywgcmVsYXRpdmUgcG9zaXRpb25pbmcsIGV0Yy4KQEAg
LTI5MCw3ICsyODgsNyBAQCB2b2lkIExlZ2FjeUlubGluZUZsb3dCb3g6OnNldFZpc3VhbE92ZXJm
bG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QsIExheW91dFVuaXQgbAogICAgICAgICByZXR1cm47
CiAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3ZlcmZsb3cgPSBhZG9wdFJlZihu
ZXcgUmVuZGVyT3ZlcmZsb3coZnJhbWVCb3gsIGZyYW1lQm94KSk7CisgICAgICAgIG1fb3ZlcmZs
b3cgPSBtYWtlVW5pcXVlPFJlbmRlck92ZXJmbG93PihmcmFtZUJveCwgZnJhbWVCb3gpOwogCiAg
ICAgbV9vdmVyZmxvdy0+c2V0VmlzdWFsT3ZlcmZsb3cocmVjdCk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dCb3guaAppbmRleCBjODYzMmY2N2RkYmYu
LmYyZTgyYzg4MDA4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2Fj
eUlubGluZUZsb3dCb3guaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5s
aW5lRmxvd0JveC5oCkBAIC0xNjksNyArMTY5LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiBwcm90
ZWN0ZWQ6Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBtX292ZXJmbG93OworICAgIHN0ZDo6
dW5pcXVlX3B0cjxSZW5kZXJPdmVyZmxvdz4gbV9vdmVyZmxvdzsKIAogICAgIExlZ2FjeUlubGlu
ZUJveCogbV9maXJzdENoaWxkIHsgbnVsbHB0ciB9OwogICAgIExlZ2FjeUlubGluZUJveCogbV9s
YXN0Q2hpbGQgeyBudWxscHRyIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3Bw
CmluZGV4IDRhODZiMTg1ZDEwYS4uZDMzNmZlMjBhZmM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQm94LmNwcApAQCAtNTM2Miw3ICs1MzYyLDcgQEAgdm9pZCBSZW5kZXJCb3g6OmFk
ZExheW91dE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QsIGNvbnN0IExheW91dFJlY3Qm
IGNsaWUKICAgICB9CiAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3ZlcmZsb3cg
PSBhZG9wdFJlZihuZXcgUmVuZGVyT3ZlcmZsb3coY2xpZW50Qm94LCBib3JkZXJCb3hSZWN0KCkp
KTsKKyAgICAgICAgbV9vdmVyZmxvdyA9IG1ha2VVbmlxdWU8UmVuZGVyT3ZlcmZsb3c+KGNsaWVu
dEJveCwgYm9yZGVyQm94UmVjdCgpKTsKICAgICAKICAgICBtX292ZXJmbG93LT5hZGRMYXlvdXRP
dmVyZmxvdyhvdmVyZmxvd1JlY3QpOwogfQpAQCAtNTM3NCwxNCArNTM3NCwxNCBAQCB2b2lkIFJl
bmRlckJveDo6YWRkVmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAKICAgICBpZiAoIW1fb3ZlcmZsb3cpCi0gICAgICAgIG1fb3Zl
cmZsb3cgPSBhZG9wdFJlZihuZXcgUmVuZGVyT3ZlcmZsb3coZmxpcHBlZENsaWVudEJveFJlY3Qo
KSwgYm9yZGVyQm94KSk7CisgICAgICAgIG1fb3ZlcmZsb3cgPSBtYWtlVW5pcXVlPFJlbmRlck92
ZXJmbG93PihmbGlwcGVkQ2xpZW50Qm94UmVjdCgpLCBib3JkZXJCb3gpOwogICAgIAogICAgIG1f
b3ZlcmZsb3ctPmFkZFZpc3VhbE92ZXJmbG93KHJlY3QpOwogfQogCiB2b2lkIFJlbmRlckJveDo6
Y2xlYXJPdmVyZmxvdygpCiB7Ci0gICAgbV9vdmVyZmxvdyA9IG51bGxwdHI7CisgICAgbV9vdmVy
ZmxvdyA9IHsgfTsKICAgICBpZiAoQ2hlY2tlZFB0ciBmcmFnbWVudGVkRmxvdyA9IGVuY2xvc2lu
Z0ZyYWdtZW50ZWRGbG93KCkpCiAgICAgICAgIGZyYWdtZW50ZWRGbG93LT5jbGVhckZyYWdtZW50
c092ZXJmbG93KCp0aGlzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAppbmRl
eCBlODA4MDE4NGFiN2MuLmQ3MjgzNWZmMGM5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guaApAQCAtNTUwLDcgKzU1MCw3IEBAIHB1YmxpYzoKICAgICBMYXlvdXRSZWN0IGxvZ2lj
YWxMYXlvdXRPdmVyZmxvd1JlY3RGb3JQcm9wYWdhdGlvbihjb25zdCBXcml0aW5nTW9kZSkgY29u
c3Q7CiAgICAgTGF5b3V0UmVjdCBsYXlvdXRPdmVyZmxvd1JlY3RGb3JQcm9wYWdhdGlvbihjb25z
dCBXcml0aW5nTW9kZSkgY29uc3Q7CiAKLSAgICBib29sIGhhc1JlbmRlck92ZXJmbG93KCkgY29u
c3QgeyByZXR1cm4gbV9vdmVyZmxvdzsgfSAgICAKKyAgICBib29sIGhhc1JlbmRlck92ZXJmbG93
KCkgY29uc3QgeyByZXR1cm4gISFtX292ZXJmbG93OyB9CiAgICAgYm9vbCBoYXNWaXN1YWxPdmVy
ZmxvdygpIGNvbnN0IHsgcmV0dXJuIG1fb3ZlcmZsb3cgJiYgIWJvcmRlckJveFJlY3QoKS5jb250
YWlucyhtX292ZXJmbG93LT52aXN1YWxPdmVyZmxvd1JlY3QoKSk7IH0KIAogICAgIHZpcnR1YWwg
Ym9vbCBuZWVkc1ByZWZlcnJlZFdpZHRoc1JlY2FsY3VsYXRpb24oKSBjb25zdDsKQEAgLTc3Miw3
ICs3NzIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgTGF5b3V0VW5pdCBtX21heFByZWZlcnJlZExvZ2lj
YWxXaWR0aDsKIAogICAgIC8vIE91ciBvdmVyZmxvdyBpbmZvcm1hdGlvbi4KLSAgICBSZWZQdHI8
UmVuZGVyT3ZlcmZsb3c+IG1fb3ZlcmZsb3c7CisgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlck92
ZXJmbG93PiBtX292ZXJmbG93OwogCiBwcml2YXRlOgogICAgIC8vIFVzZWQgdG8gc3RvcmUgc3Rh
dGUgYmV0d2VlbiBzdHlsZVdpbGxDaGFuZ2UgYW5kIHN0eWxlRGlkQ2hhbmdlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94RnJhZ21lbnRJbmZvLmgKaW5kZXggYzRmNTM4
NWMxNmZiLi40NzU2Y2UyY2RiMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3hGcmFnbWVudEluZm8uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94RnJhZ21lbnRJbmZvLmgKQEAgLTQ3LDE5ICs0NywxNSBAQCBwdWJsaWM6CiAKICAg
ICBib29sIGlzU2hpZnRlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTaGlmdGVkOyB9CiAKLSAgICB2
b2lkIGNyZWF0ZU92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIGxheW91dE92ZXJmbG93LCBjb25z
dCBMYXlvdXRSZWN0JiB2aXN1YWxPdmVyZmxvdykgeyBtX292ZXJmbG93ID0gYWRvcHRSZWYobmV3
IFJlbmRlck92ZXJmbG93KGxheW91dE92ZXJmbG93LCB2aXN1YWxPdmVyZmxvdykpOyB9CisgICAg
dm9pZCBjcmVhdGVPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0JiBsYXlvdXRPdmVyZmxvdywgY29u
c3QgTGF5b3V0UmVjdCYgdmlzdWFsT3ZlcmZsb3cpIHsgbV9vdmVyZmxvdyA9IG1ha2VVbmlxdWU8
UmVuZGVyT3ZlcmZsb3c+KGxheW91dE92ZXJmbG93LCB2aXN1YWxPdmVyZmxvdyk7IH0KICAgICBS
ZW5kZXJPdmVyZmxvdyogb3ZlcmZsb3coKSBjb25zdCB7IHJldHVybiBtX292ZXJmbG93LmdldCgp
OyB9Ci0gICAgdm9pZCBjbGVhck92ZXJmbG93KCkKLSAgICB7Ci0gICAgICAgIGlmIChtX292ZXJm
bG93KQotICAgICAgICAgICAgbV9vdmVyZmxvdyA9IG51bGxwdHI7Ci0gICAgfQorICAgIHZvaWQg
Y2xlYXJPdmVyZmxvdygpIHsgbV9vdmVyZmxvdyA9IHsgfTsgfQogCiBwcml2YXRlOgogICAgIExh
eW91dFVuaXQgbV9sb2dpY2FsTGVmdDsKICAgICBMYXlvdXRVbml0IG1fbG9naWNhbFdpZHRoOwog
ICAgIGJvb2wgbV9pc1NoaWZ0ZWQ7Ci0gICAgUmVmUHRyPFJlbmRlck92ZXJmbG93PiBtX292ZXJm
bG93OworICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJPdmVyZmxvdz4gbV9vdmVyZmxvdzsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRnJhZ21lbnRDb250YWluZXIuY3BwCmluZGV4IDBkNTA2NDMxY2VkZS4uMzJl
ZjBhOGU1OWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJh
Z21lbnRDb250YWluZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
cmFnbWVudENvbnRhaW5lci5jcHAKQEAgLTQwOCwzOSArNDA4LDQ1IEBAIHZvaWQgUmVuZGVyRnJh
Z21lbnRDb250YWluZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBzZXRQ
cmVmZXJyZWRMb2dpY2FsV2lkdGhzRGlydHkoZmFsc2UpOwogfQogCi12b2lkIFJlbmRlckZyYWdt
ZW50Q29udGFpbmVyOjplbnN1cmVPdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmIGJveCwg
UmVmUHRyPFJlbmRlck92ZXJmbG93PiYgb3ZlcmZsb3csIGJvb2wgZm9yY2VDcmVhdGlvbikgY29u
c3QKK0xheW91dFJlY3QgUmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmNvbXB1dGVkVmlzdWFsT3Zl
cmZsb3dSZWN0Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94KSBjb25zdAogewotICAgIEFTU0VS
VChtX2ZyYWdtZW50ZWRGbG93LT5yZW5kZXJGcmFnbWVudENvbnRhaW5lckxpc3QoKS5jb250YWlu
cygqdGhpcykpOwotICAgIEFTU0VSVChpc1ZhbGlkKCkpOworICAgIEFTU0VSVChtX2ZyYWdtZW50
ZWRGbG93LT5vYmplY3RTaG91bGRGcmFnbWVudEluRmxvd0ZyYWdtZW50KCZib3gsIHRoaXMpKTsK
IAotICAgIFJlbmRlckJveEZyYWdtZW50SW5mbyogYm94SW5mbyA9IHJlbmRlckJveEZyYWdtZW50
SW5mbyhib3gpOwotICAgIGlmICghYm94SW5mbyAmJiAhZm9yY2VDcmVhdGlvbikKLSAgICAgICAg
cmV0dXJuOworICAgIGF1dG8gYm9yZGVyQm94ID0gYm94LmJvcmRlckJveFJlY3QoKTsKKyAgICBp
ZiAoYm9yZGVyQm94LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIGlmIChi
b3hJbmZvICYmIGJveEluZm8tPm92ZXJmbG93KCkpIHsKLSAgICAgICAgb3ZlcmZsb3cgPSBib3hJ
bmZvLT5vdmVyZmxvdygpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIAotICAgIExheW91
dFJlY3QgYm9yZGVyQm94ID0gYm94LmJvcmRlckJveFJlY3QoKTsKLSAgICBMYXlvdXRSZWN0IGNs
aWVudEJveDsKKyAgICBib3JkZXJCb3ggPSByZWN0Rmxvd1BvcnRpb25Gb3JCb3goYm94LCBib3Jk
ZXJCb3gpOworICAgIG1fZnJhZ21lbnRlZEZsb3ctPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29v
cmRpbmF0ZXMoYm9yZGVyQm94KTsKKyAgICByZXR1cm4gYm9yZGVyQm94OworfQorCitMYXlvdXRS
ZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpjb21wdXRlZExheW91dE92ZXJmbG93UmVjdEZv
ckJveChjb25zdCBSZW5kZXJCb3gmIGJveCkgY29uc3QKK3sKICAgICBBU1NFUlQobV9mcmFnbWVu
dGVkRmxvdy0+b2JqZWN0U2hvdWxkRnJhZ21lbnRJbkZsb3dGcmFnbWVudCgmYm94LCB0aGlzKSk7
CisgICAgYXV0byBjbGllbnRCb3ggPSBib3guY2xpZW50Qm94UmVjdCgpOworICAgIGlmIChjbGll
bnRCb3guaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4geyB9OwogCi0gICAgaWYgKCFib3JkZXJC
b3guaXNFbXB0eSgpKSB7Ci0gICAgICAgIGJvcmRlckJveCA9IHJlY3RGbG93UG9ydGlvbkZvckJv
eChib3gsIGJvcmRlckJveCk7CisgICAgY2xpZW50Qm94ID0gcmVjdEZsb3dQb3J0aW9uRm9yQm94
KGJveCwgY2xpZW50Qm94KTsKKyAgICBtX2ZyYWdtZW50ZWRGbG93LT5mbGlwRm9yV3JpdGluZ01v
ZGVMb2NhbENvb3JkaW5hdGVzKGNsaWVudEJveCk7CisgICAgcmV0dXJuIGNsaWVudEJveDsKK30K
IAotICAgICAgICBjbGllbnRCb3ggPSBib3guY2xpZW50Qm94UmVjdCgpOwotICAgICAgICBjbGll
bnRCb3ggPSByZWN0Rmxvd1BvcnRpb25Gb3JCb3goYm94LCBjbGllbnRCb3gpOwotICAgICAgICAK
LSAgICAgICAgbV9mcmFnbWVudGVkRmxvdy0+ZmxpcEZvcldyaXRpbmdNb2RlTG9jYWxDb29yZGlu
YXRlcyhib3JkZXJCb3gpOwotICAgICAgICBtX2ZyYWdtZW50ZWRGbG93LT5mbGlwRm9yV3JpdGlu
Z01vZGVMb2NhbENvb3JkaW5hdGVzKGNsaWVudEJveCk7Ci0gICAgfQorUmVuZGVyT3ZlcmZsb3cq
IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpvdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gm
IGJveCkgY29uc3QKK3sKKyAgICBBU1NFUlQobV9mcmFnbWVudGVkRmxvdy0+cmVuZGVyRnJhZ21l
bnRDb250YWluZXJMaXN0KCkuY29udGFpbnMoKnRoaXMpKTsKKyAgICBBU1NFUlQoaXNWYWxpZCgp
KTsKIAotICAgIGlmIChib3hJbmZvKSB7Ci0gICAgICAgIGJveEluZm8tPmNyZWF0ZU92ZXJmbG93
KGNsaWVudEJveCwgYm9yZGVyQm94KTsKLSAgICAgICAgb3ZlcmZsb3cgPSBib3hJbmZvLT5vdmVy
ZmxvdygpOwotICAgIH0gZWxzZQotICAgICAgICBvdmVyZmxvdyA9IGFkb3B0UmVmKG5ldyBSZW5k
ZXJPdmVyZmxvdyhjbGllbnRCb3gsIGJvcmRlckJveCkpOworICAgIGF1dG8qIGJveEluZm8gPSBy
ZW5kZXJCb3hGcmFnbWVudEluZm8oYm94KTsKKyAgICBpZiAoIWJveEluZm8pCisgICAgICAgIHJl
dHVybiB7IH07CisKKyAgICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IGJveEluZm8tPm92ZXJm
bG93KCkpCisgICAgICAgIHJldHVybiBvdmVyZmxvdy5nZXQoKTsKKworICAgIGJveEluZm8tPmNy
ZWF0ZU92ZXJmbG93KGNvbXB1dGVkTGF5b3V0T3ZlcmZsb3dSZWN0Rm9yQm94KGJveCksIGNvbXB1
dGVkVmlzdWFsT3ZlcmZsb3dSZWN0Rm9yQm94KGJveCkpOworICAgIHJldHVybiBib3hJbmZvLT5v
dmVyZmxvdygpOwogfQogCiBMYXlvdXRSZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpyZWN0
Rmxvd1BvcnRpb25Gb3JCb3goY29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IExheW91dFJlY3Qm
IHJlY3QpIGNvbnN0CkBAIC00NzEsMTMgKzQ3Nyw4IEBAIHZvaWQgUmVuZGVyRnJhZ21lbnRDb250
YWluZXI6OmFkZExheW91dE92ZXJmbG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25z
CiAgICAgaWYgKHJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8
UmVuZGVyT3ZlcmZsb3c+IGZyYWdtZW50T3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JC
b3goYm94LCBmcmFnbWVudE92ZXJmbG93LCBmYWxzZSk7Ci0KLSAgICBpZiAoIWZyYWdtZW50T3Zl
cmZsb3cpCi0gICAgICAgIHJldHVybjsKLQotICAgIGZyYWdtZW50T3ZlcmZsb3ctPmFkZExheW91
dE92ZXJmbG93KHJlY3QpOworICAgIGlmIChDaGVja2VkUHRyIG92ZXJmbG93ID0gb3ZlcmZsb3dG
b3JCb3goYm94KSkKKyAgICAgICAgb3ZlcmZsb3ctPmFkZExheW91dE92ZXJmbG93KHJlY3QpOwog
fQogCiB2b2lkIFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjphZGRWaXN1YWxPdmVyZmxvd0ZvckJv
eChjb25zdCBSZW5kZXJCb3gmIGJveCwgY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKQEAgLTQ4NSwy
NCArNDg2LDE4IEBAIHZvaWQgUmVuZGVyRnJhZ21lbnRDb250YWluZXI6OmFkZFZpc3VhbE92ZXJm
bG93Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25zCiAgICAgaWYgKHJlY3QuaXNFbXB0
eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8UmVuZGVyT3ZlcmZsb3c+IGZyYWdt
ZW50T3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JCb3goYm94LCBmcmFnbWVudE92ZXJm
bG93LCBmYWxzZSk7Ci0KLSAgICBpZiAoIWZyYWdtZW50T3ZlcmZsb3cpCi0gICAgICAgIHJldHVy
bjsKLQotICAgIExheW91dFJlY3QgZmxpcHBlZFJlY3QgPSByZWN0OwotICAgIGZyYWdtZW50ZWRG
bG93KCktPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29vcmRpbmF0ZXMoZmxpcHBlZFJlY3QpOwot
ICAgIGZyYWdtZW50T3ZlcmZsb3ctPmFkZFZpc3VhbE92ZXJmbG93KGZsaXBwZWRSZWN0KTsKKyAg
ICBpZiAoQ2hlY2tlZFB0ciBvdmVyZmxvdyA9IG92ZXJmbG93Rm9yQm94KGJveCkpIHsKKyAgICAg
ICAgTGF5b3V0UmVjdCBmbGlwcGVkUmVjdCA9IHJlY3Q7CisgICAgICAgIGZyYWdtZW50ZWRGbG93
KCktPmZsaXBGb3JXcml0aW5nTW9kZUxvY2FsQ29vcmRpbmF0ZXMoZmxpcHBlZFJlY3QpOworICAg
ICAgICBvdmVyZmxvdy0+YWRkVmlzdWFsT3ZlcmZsb3coZmxpcHBlZFJlY3QpOworICAgIH0KIH0K
IAogTGF5b3V0UmVjdCBSZW5kZXJGcmFnbWVudENvbnRhaW5lcjo6dmlzdWFsT3ZlcmZsb3dSZWN0
Rm9yQm94KGNvbnN0IFJlbmRlckJveCYgYm94KSBjb25zdAogewotICAgIFJlZlB0cjxSZW5kZXJP
dmVyZmxvdz4gb3ZlcmZsb3c7Ci0gICAgZW5zdXJlT3ZlcmZsb3dGb3JCb3goYm94LCBvdmVyZmxv
dywgdHJ1ZSk7Ci0KLSAgICBBU1NFUlQob3ZlcmZsb3cpOwotICAgIHJldHVybiBvdmVyZmxvdy0+
dmlzdWFsT3ZlcmZsb3dSZWN0KCk7CisgICAgaWYgKENoZWNrZWRQdHIgb3ZlcmZsb3cgPSBvdmVy
Zmxvd0ZvckJveChib3gpKQorICAgICAgICByZXR1cm4gb3ZlcmZsb3ctPnZpc3VhbE92ZXJmbG93
UmVjdCgpOworICAgIHJldHVybiBjb21wdXRlZFZpc3VhbE92ZXJmbG93UmVjdEZvckJveChib3gp
OwogfQogCiAvLyBGSVhNRTogVGhpcyBkb2Vzbid0IHdvcmsgZm9yIHdyaXRpbmcgbW9kZXMuCkBA
IC01MTIsMTAgKzUwNywxMiBAQCBMYXlvdXRSZWN0IFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjps
YXlvdXRPdmVyZmxvd1JlY3RGb3JCb3hGb3JQcm9wYWdhdGlvbihjb25zdAogICAgIExheW91dFJl
Y3QgcmVjdCA9IGJveC5ib3JkZXJCb3hSZWN0KCk7CiAgICAgcmVjdCA9IHJlY3RGbG93UG9ydGlv
bkZvckJveChib3gsIHJlY3QpOwogICAgIGlmICghYm94Lmhhc05vblZpc2libGVPdmVyZmxvdygp
KSB7Ci0gICAgICAgIFJlZlB0cjxSZW5kZXJPdmVyZmxvdz4gb3ZlcmZsb3c7Ci0gICAgICAgIGVu
c3VyZU92ZXJmbG93Rm9yQm94KGJveCwgb3ZlcmZsb3csIHRydWUpOwotICAgICAgICBBU1NFUlQo
b3ZlcmZsb3cpOwotICAgICAgICByZWN0LnVuaXRlKG92ZXJmbG93LT5sYXlvdXRPdmVyZmxvd1Jl
Y3QoKSk7CisgICAgICAgIGF1dG8gbGF5b3V0T3ZlcmZsb3dSZWN0ID0gTGF5b3V0UmVjdCB7IH07
CisgICAgICAgIGlmIChDaGVja2VkUHRyIG92ZXJmbG93ID0gb3ZlcmZsb3dGb3JCb3goYm94KSkK
KyAgICAgICAgICAgIGxheW91dE92ZXJmbG93UmVjdCA9IG92ZXJmbG93LT5sYXlvdXRPdmVyZmxv
d1JlY3QoKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbGF5b3V0T3ZlcmZsb3dSZWN0ID0g
Y29tcHV0ZWRMYXlvdXRPdmVyZmxvd1JlY3RGb3JCb3goYm94KTsKKyAgICAgICAgcmVjdC51bml0
ZShsYXlvdXRPdmVyZmxvd1JlY3QpOwogICAgIH0KIAogICAgIGJvb2wgaGFzVHJhbnNmb3JtID0g
Ym94LmlzVHJhbnNmb3JtZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckZyYWdtZW50Q29udGFpbmVyLmgKaW5kZXggYWQ2NDdjMDMyNmEyLi5mZTUzMGI3NzQ5ZGUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRh
aW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFnbWVudENvbnRh
aW5lci5oCkBAIC0xMjUsNyArMTI1LDcgQEAgcHJvdGVjdGVkOgogICAgIFJlbmRlckZyYWdtZW50
Q29udGFpbmVyKFR5cGUsIERvY3VtZW50JiwgUmVuZGVyU3R5bGUmJiwgUmVuZGVyRnJhZ21lbnRl
ZEZsb3cqKTsKICAgICB2aXJ0dWFsIH5SZW5kZXJGcmFnbWVudENvbnRhaW5lcigpOwogCi0gICAg
dm9pZCBlbnN1cmVPdmVyZmxvd0ZvckJveChjb25zdCBSZW5kZXJCb3gmLCBSZWZQdHI8UmVuZGVy
T3ZlcmZsb3c+JiwgYm9vbCkgY29uc3Q7CisgICAgUmVuZGVyT3ZlcmZsb3cqIG92ZXJmbG93Rm9y
Qm94KGNvbnN0IFJlbmRlckJveCYpIGNvbnN0OwogCiAgICAgdm9pZCBjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocygpIG92ZXJyaWRlOwogICAgIHZvaWQgY29tcHV0ZUludHJpbnNpY0xvZ2lj
YWxXaWR0aHMoTGF5b3V0VW5pdCYgbWluTG9naWNhbFdpZHRoLCBMYXlvdXRVbml0JiBtYXhMb2dp
Y2FsV2lkdGgpIGNvbnN0IG92ZXJyaWRlOwpAQCAtMTQ0LDYgKzE0NCw4IEBAIHByaXZhdGU6CiAg
ICAgdmlydHVhbCB2b2lkIGluc3RhbGxGcmFnbWVudGVkRmxvdygpOwogCiAgICAgTGF5b3V0UG9p
bnQgbWFwRnJhZ21lbnRQb2ludEludG9GcmFnbWVudGVkRmxvd0Nvb3JkaW5hdGVzKGNvbnN0IExh
eW91dFBvaW50Jik7CisgICAgTGF5b3V0UmVjdCBjb21wdXRlZFZpc3VhbE92ZXJmbG93UmVjdEZv
ckJveChjb25zdCBSZW5kZXJCb3gmKSBjb25zdDsKKyAgICBMYXlvdXRSZWN0IGNvbXB1dGVkTGF5
b3V0T3ZlcmZsb3dSZWN0Rm9yQm94KGNvbnN0IFJlbmRlckJveCYpIGNvbnN0OwogCiBwcm90ZWN0
ZWQ6CiAgICAgU2luZ2xlVGhyZWFkV2Vha1B0cjxSZW5kZXJGcmFnbWVudGVkRmxvdz4gbV9mcmFn
bWVudGVkRmxvdzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJP
dmVyZmxvdy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJmbG93LmgKaW5k
ZXggMjg1OGQwNGE5NmM1Li4yZGFlMDJhYzJmYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPdmVyZmxvdy5oCkBAIC0yMiw3ICsyMiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2lu
Y2x1ZGUgIkxheW91dFJlY3QuaCIKLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1
ZGUgPHd0Zi9DaGVja2VkUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1Rab25lTWFsbG9jSW5saW5lcy5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZQpAQCAtMzksOSArMzksMTAgQEAgbmFtZXNwYWNlIFdlYkNv
cmUKIC8vIEV4YW1wbGVzIG9mIHZpc3VhbCBvdmVyZmxvdyBhcmUgc2hhZG93cywgdGV4dCBzdHJv
a2UsIG91dGxpbmUgKGFuZCBldmVudHVhbGx5IGJvcmRlci1pbWFnZSkuCiAKIC8vIFRoaXMgb2Jq
ZWN0IGlzIGFsbG9jYXRlZCBvbmx5IHdoZW4gc29tZSBvZiB0aGVzZSBmaWVsZHMgaGF2ZSBub24t
ZGVmYXVsdCB2YWx1ZXMgaW4gdGhlIG93bmluZyBib3guCi1jbGFzcyBSZW5kZXJPdmVyZmxvdyA6
IHB1YmxpYyBSZWZDb3VudGVkPFJlbmRlck92ZXJmbG93PiB7CitjbGFzcyBSZW5kZXJPdmVyZmxv
dyA6IHB1YmxpYyBDYW5NYWtlQ2hlY2tlZFB0cjxSZW5kZXJPdmVyZmxvdz4gewogICAgIFdURl9N
QUtFX1RaT05FX0FMTE9DQVRFRF9JTkxJTkUoUmVuZGVyT3ZlcmZsb3cpOwogICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKFJlbmRlck92ZXJmbG93KTsKKyAgICBXVEZfT1ZFUlJJREVfREVMRVRFX0ZP
Ul9DSEVDS0VEX1BUUihSZW5kZXJPdmVyZmxvdyk7CiBwdWJsaWM6CiAgICAgUmVuZGVyT3ZlcmZs
b3coY29uc3QgTGF5b3V0UmVjdCYgbGF5b3V0UmVjdCwgY29uc3QgTGF5b3V0UmVjdCYgdmlzdWFs
UmVjdCkgCiAgICAgICAgIDogbV9sYXlvdXRPdmVyZmxvdyhsYXlvdXRSZWN0KQpAQCAtNTcsOCAr
NTgsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGRMYXlvdXRPdmVyZmxvdyhjb25zdCBMYXlvdXRS
ZWN0Jik7CiAgICAgdm9pZCBhZGRWaXN1YWxPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0Jik7CiAK
LSAgICB2b2lkIHNldExheW91dE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmKTsKLSAgICB2b2lk
IHNldFZpc3VhbE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmKTsKKyAgICB2b2lkIHNldExheW91
dE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3QpIHsgbV9sYXlvdXRPdmVyZmxvdyA9IHJl
Y3Q7IH0KKyAgICB2b2lkIHNldFZpc3VhbE92ZXJmbG93KGNvbnN0IExheW91dFJlY3QmIHJlY3Qp
IHsgbV92aXN1YWxPdmVyZmxvdyA9IHJlY3Q7IH0KIAogICAgIExheW91dFVuaXQgbGF5b3V0Q2xp
ZW50QWZ0ZXJFZGdlKCkgY29uc3QgeyByZXR1cm4gbV9sYXlvdXRDbGllbnRBZnRlckVkZ2U7IH0K
ICAgICB2b2lkIHNldExheW91dENsaWVudEFmdGVyRWRnZShMYXlvdXRVbml0IGNsaWVudEFmdGVy
RWRnZSkgeyBtX2xheW91dENsaWVudEFmdGVyRWRnZSA9IGNsaWVudEFmdGVyRWRnZTsgfQpAQCAt
OTksMTQgKzEwMCw0IEBAIGlubGluZSB2b2lkIFJlbmRlck92ZXJmbG93OjphZGRWaXN1YWxPdmVy
Zmxvdyhjb25zdCBMYXlvdXRSZWN0JiByZWN0KQogICAgIG1fdmlzdWFsT3ZlcmZsb3cuc2V0SGVp
Z2h0KG1heFkgLSBtX3Zpc3VhbE92ZXJmbG93LnkoKSk7CiB9CiAKLWlubGluZSB2b2lkIFJlbmRl
ck92ZXJmbG93OjpzZXRMYXlvdXRPdmVyZmxvdyhjb25zdCBMYXlvdXRSZWN0JiByZWN0KQotewot
ICAgIG1fbGF5b3V0T3ZlcmZsb3cgPSByZWN0OwotfQotCi1pbmxpbmUgdm9pZCBSZW5kZXJPdmVy
Zmxvdzo6c2V0VmlzdWFsT3ZlcmZsb3coY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKLXsKLSAgICBt
X3Zpc3VhbE92ZXJmbG93ID0gcmVjdDsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>