<?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>231858</bug_id>
          
          <creation_ts>2021-10-15 23:15:01 -0700</creation_ts>
          <short_desc>Use inline iterator for SVG reverse BiDI reordering</short_desc>
          <delta_ts>2021-10-19 18:44:53 -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>Layout and Rendering</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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fmalita</cc>
    
    <cc>fujii</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>pdr</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1805220</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-15 23:15:01 -0700</bug_when>
    <thetext>it doesn&apos;t need to be generic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805221</commentid>
    <comment_count>1</comment_count>
      <attachid>441478</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-15 23:19:27 -0700</bug_when>
    <thetext>Created attachment 441478
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805224</commentid>
    <comment_count>2</comment_count>
      <attachid>441480</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-16 00:27:16 -0700</bug_when>
    <thetext>Created attachment 441480
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805252</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-16 05:39:44 -0700</bug_when>
    <thetext>Committed r284315 (243111@main): &lt;https://commits.webkit.org/243111@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 441480.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805253</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-16 05:40:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/84331836&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1806446</commentid>
    <comment_count>5</comment_count>
      <attachid>441480</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2021-10-19 18:44:53 -0700</bug_when>
    <thetext>Comment on attachment 441480
Patch

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

&gt; Source/WebCore/layout/integration/InlineIteratorLogicalOrderTraversal.h:76
&gt; +    if (line-&gt;containingBlock().style().rtlOrdering() == Order::Visual)

This breaks PlayStation port. See Bug 231923.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441478</attachid>
            <date>2021-10-15 23:19:27 -0700</date>
            <delta_ts>2021-10-16 00:27:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231858-20211016091926.patch</filename>
            <type>text/plain</type>
            <size>9397</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MzA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmE2MDExMTJlODk1ODA3
NjlmOGE3M2IwOTQxNjMyOTdkN2E4OTJmZi4uNjlhNDViZWEwY2VkMjkyYmNlNWViMTlmODQzNTNi
ZDNjOTFmMjA1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIxLTEwLTE1ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFNWRyBzcGVjaWZp
YyByZXZlcnNlIGJpZGkgcmVvcmRlcmluZyBvdXQgb2YgTGVnYWN5SW5saW5lRmxvd0JveAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxODU4CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU1ZHIGlzIHRoZSBv
bmx5IGNsaWVudCBzbyBpdCBjYW4gZ28gaW50byBTVkcgaW5saW5lIGNvZGUuCisKKyAgICAgICAg
KiByZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpM
ZWdhY3lJbmxpbmVGbG93Qm94Ojpjb2xsZWN0TGVhZkJveGVzSW5Mb2dpY2FsT3JkZXIgY29uc3Qp
OiBEZWxldGVkLgorICAgICAgICAqIHJlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94Lmg6Cisg
ICAgICAgICogcmVuZGVyaW5nL3N2Zy9TVkdSb290SW5saW5lQm94LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNWR1Jvb3RJbmxpbmVCb3g6OmNvbXB1dGVQZXJDaGFyYWN0ZXJMYXlvdXRJbmZvcm1h
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpyZXZlcnNlSW5saW5lQm94UmFuZ2VBbmRWYWx1ZUxp
c3RzSWZOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUm9vdElubGluZUJveDo6cmVvcmRl
clZhbHVlTGlzdHNUb0xvZ2ljYWxPcmRlcik6CisgICAgICAgIChXZWJDb3JlOjpTVkdSb290SW5s
aW5lQm94OjpyZW9yZGVyVmFsdWVMaXN0cyk6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5n
L3N2Zy9TVkdSb290SW5saW5lQm94Lmg6CisKIDIwMjEtMTAtMTUgIEFudHRpIEtvaXZpc3RvICA8
YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0ludGVncmF0aW9uXSBFbmFibGUgaW5s
aW5lIGJveGVzIHdpdGggYm9yZGVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL0xlZ2FjeUlubGluZUZsb3dCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xl
Z2FjeUlubGluZUZsb3dCb3guY3BwCmluZGV4IDU5NDg2N2U3MTk3MGY2ODU0ZGE5NTcxNjExZDFl
MTFmMmM4NmU0YmYuLjJjZGRlZGIxNWVmMGFlNDg3ODNjYzFjYTdiMzQ0ZmIwMjQzNDUwMmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5jcHAK
QEAgLTEyOTUsNTkgKzEyOTUsNiBAQCBMYXlvdXRVbml0IExlZ2FjeUlubGluZUZsb3dCb3g6OmNv
bXB1dGVVbmRlckFubm90YXRpb25BZGp1c3RtZW50KExheW91dFVuaXQgYWxsbwogICAgIHJldHVy
biByZXN1bHQ7CiB9CiAKLXZvaWQgTGVnYWN5SW5saW5lRmxvd0JveDo6Y29sbGVjdExlYWZCb3hl
c0luTG9naWNhbE9yZGVyKFZlY3RvcjxMZWdhY3lJbmxpbmVCb3gqPiYgbGVhZkJveGVzSW5Mb2dp
Y2FsT3JkZXIsIEN1c3RvbUlubGluZUJveFJhbmdlUmV2ZXJzZSBjdXN0b21SZXZlcnNlSW1wbGVt
ZW50YXRpb24sIHZvaWQqIHVzZXJEYXRhKSBjb25zdAotewotICAgIExlZ2FjeUlubGluZUJveCog
bGVhZiA9IGZpcnN0TGVhZkRlc2NlbmRhbnQoKTsKLQotICAgIC8vIEZJWE1FOiBUaGUgcmVvcmRl
cmluZyBjb2RlIGlzIGEgY29weSBvZiBwYXJ0cyBmcm9tIEJpZGlSZXNvbHZlcjo6Y3JlYXRlQmlk
aVJ1bnNGb3JMaW5lLCBvcGVyYXRpbmcgZGlyZWN0bHkgb24gSW5saW5lQm94ZXMsIGluc3RlYWQg
b2YgQmlkaVJ1bnMuCi0gICAgLy8gSW52ZXN0aWdhdGUgb24gaG93IHRoaXMgY29kZSBjb3VsZCBw
b3NzaWJseSBiZSBzaGFyZWQuCi0gICAgdW5zaWduZWQgY2hhciBtaW5MZXZlbCA9IDEyODsKLSAg
ICB1bnNpZ25lZCBjaGFyIG1heExldmVsID0gMDsKLQotICAgIC8vIEZpcnN0IGZpbmQgaGlnaGVz
dCBhbmQgbG93ZXN0IGxldmVscywgYW5kIGluaXRpYWxpemUgbGVhZkJveGVzSW5Mb2dpY2FsT3Jk
ZXIgd2l0aCB0aGUgbGVhZiBib3hlcyBpbiB2aXN1YWwgb3JkZXIuCi0gICAgZm9yICg7IGxlYWY7
IGxlYWYgPSBsZWFmLT5uZXh0TGVhZk9uTGluZSgpKSB7Ci0gICAgICAgIG1pbkxldmVsID0gc3Rk
OjptaW4obWluTGV2ZWwsIGxlYWYtPmJpZGlMZXZlbCgpKTsKLSAgICAgICAgbWF4TGV2ZWwgPSBz
dGQ6Om1heChtYXhMZXZlbCwgbGVhZi0+YmlkaUxldmVsKCkpOwotICAgICAgICBsZWFmQm94ZXNJ
bkxvZ2ljYWxPcmRlci5hcHBlbmQobGVhZik7Ci0gICAgfQotCi0gICAgaWYgKHJlbmRlcmVyKCku
c3R5bGUoKS5ydGxPcmRlcmluZygpID09IE9yZGVyOjpWaXN1YWwpCi0gICAgICAgIHJldHVybjsK
LQotICAgIC8vIFJldmVyc2Ugb2YgcmVvcmRlcmluZyBvZiB0aGUgbGluZSAoTDIgYWNjb3JkaW5n
IHRvIEJpZGkgc3BlYyk6Ci0gICAgLy8gTDIuIEZyb20gdGhlIGhpZ2hlc3QgbGV2ZWwgZm91bmQg
aW4gdGhlIHRleHQgdG8gdGhlIGxvd2VzdCBvZGQgbGV2ZWwgb24gZWFjaCBsaW5lLAotICAgIC8v
IHJldmVyc2UgYW55IGNvbnRpZ3VvdXMgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycyB0aGF0IGFyZSBh
dCB0aGF0IGxldmVsIG9yIGhpZ2hlci4KLQotICAgIC8vIFJldmVyc2luZyB0aGUgcmVvcmRlcmlu
ZyBvZiB0aGUgbGluZSBpcyBvbmx5IGRvbmUgdXAgdG8gdGhlIGxvd2VzdCBvZGQgbGV2ZWwuCi0g
ICAgaWYgKCEobWluTGV2ZWwgJSAyKSkKLSAgICAgICAgKyttaW5MZXZlbDsKLQotICAgIFZlY3Rv
cjxMZWdhY3lJbmxpbmVCb3gqPjo6aXRlcmF0b3IgZW5kID0gbGVhZkJveGVzSW5Mb2dpY2FsT3Jk
ZXIuZW5kKCk7Ci0gICAgd2hpbGUgKG1pbkxldmVsIDw9IG1heExldmVsKSB7Ci0gICAgICAgIFZl
Y3RvcjxMZWdhY3lJbmxpbmVCb3gqPjo6aXRlcmF0b3IgaXQgPSBsZWFmQm94ZXNJbkxvZ2ljYWxP
cmRlci5iZWdpbigpOwotICAgICAgICB3aGlsZSAoaXQgIT0gZW5kKSB7Ci0gICAgICAgICAgICB3
aGlsZSAoaXQgIT0gZW5kKSB7Ci0gICAgICAgICAgICAgICAgaWYgKCgqaXQpLT5iaWRpTGV2ZWwo
KSA+PSBtaW5MZXZlbCkKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAg
ICAgKytpdDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFZlY3RvcjxMZWdhY3lJbmxpbmVC
b3gqPjo6aXRlcmF0b3IgZmlyc3QgPSBpdDsKLSAgICAgICAgICAgIHdoaWxlIChpdCAhPSBlbmQp
IHsKLSAgICAgICAgICAgICAgICBpZiAoKCppdCktPmJpZGlMZXZlbCgpIDwgbWluTGV2ZWwpCi0g
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICsraXQ7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICBWZWN0b3I8TGVnYWN5SW5saW5lQm94Kj46Oml0ZXJhdG9yIGxh
c3QgPSBpdDsKLSAgICAgICAgICAgIGlmIChjdXN0b21SZXZlcnNlSW1wbGVtZW50YXRpb24pIHsK
LSAgICAgICAgICAgICAgICBBU1NFUlQodXNlckRhdGEpOwotICAgICAgICAgICAgICAgICgqY3Vz
dG9tUmV2ZXJzZUltcGxlbWVudGF0aW9uKSh1c2VyRGF0YSwgZmlyc3QsIGxhc3QpOwotICAgICAg
ICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgc3RkOjpyZXZlcnNlKGZpcnN0LCBsYXN0KTsK
LSAgICAgICAgfSAgICAgICAgICAgICAgICAKLSAgICAgICAgKyttaW5MZXZlbDsKLSAgICB9Ci19
Ci0KIHZvaWQgTGVnYWN5SW5saW5lRmxvd0JveDo6Y29tcHV0ZVJlcGxhY2VkQW5kVGV4dExpbmVU
b3BBbmRCb3R0b20oTGF5b3V0VW5pdCYgbGluZVRvcCwgTGF5b3V0VW5pdCYgbGluZUJvdHRvbSkg
Y29uc3QKIHsKICAgICBmb3IgKGNvbnN0IGF1dG8qIGJveCA9IGZpcnN0Q2hpbGQoKTsgYm94OyBi
b3ggPSBib3gtPm5leHRPbkxpbmUoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9M
ZWdhY3lJbmxpbmVGbG93Qm94LmgKaW5kZXggNGUzMjA4NTAxZTA1NTU3NDNmYjExYjk2YWQ3Yjlk
ZWEzOTgyNjNjNy4uMzhjYjE3YTY0NmI4YjBhYzBhYTE1YjIxZWJiZmExMjZlZTUzZDFhZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dCb3guaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oCkBAIC05
Myw5ICs5Myw2IEBAIHB1YmxpYzoKICAgICBMZWdhY3lJbmxpbmVCb3gqIGZpcnN0TGVhZkRlc2Nl
bmRhbnQoKSBjb25zdDsKICAgICBMZWdhY3lJbmxpbmVCb3gqIGxhc3RMZWFmRGVzY2VuZGFudCgp
IGNvbnN0OwogCi0gICAgdHlwZWRlZiB2b2lkICgqQ3VzdG9tSW5saW5lQm94UmFuZ2VSZXZlcnNl
KSh2b2lkKiB1c2VyRGF0YSwgVmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBmaXJz
dCwgVmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBsYXN0KTsKLSAgICB2b2lkIGNv
bGxlY3RMZWFmQm94ZXNJbkxvZ2ljYWxPcmRlcihWZWN0b3I8TGVnYWN5SW5saW5lQm94Kj4mLCBD
dXN0b21JbmxpbmVCb3hSYW5nZVJldmVyc2UgY3VzdG9tUmV2ZXJzZUltcGxlbWVudGF0aW9uID0g
bnVsbHB0ciwgdm9pZCogdXNlckRhdGEgPSBudWxscHRyKSBjb25zdDsKLQogICAgIHZvaWQgc2V0
Q29uc3RydWN0ZWQoKSBmaW5hbAogICAgIHsKICAgICAgICAgTGVnYWN5SW5saW5lQm94OjpzZXRD
b25zdHJ1Y3RlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9T
VkdSb290SW5saW5lQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUm9v
dElubGluZUJveC5jcHAKaW5kZXggOWE4ZjczZDdlMWUyMWVhMmJmMGIwZTVkYWE4MmY0ZGVlYjcy
YzJhNS4uMTFmYmFjMzIxYTBhZjVlMmE5MTc0YzY5MTUwNGJkNzJhMmNjYWVkZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSb290SW5saW5lQm94LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jvb3RJbmxpbmVCb3guY3BwCkBAIC04
NSw3ICs4NSw3IEBAIHZvaWQgU1ZHUm9vdElubGluZUJveDo6Y29tcHV0ZVBlckNoYXJhY3Rlckxh
eW91dEluZm9ybWF0aW9uKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHRleHRSb290Lm5l
ZWRzUmVvcmRlcmluZygpKQotICAgICAgICByZW9yZGVyVmFsdWVMaXN0cyhsYXlvdXRBdHRyaWJ1
dGVzKTsKKyAgICAgICAgcmVvcmRlclZhbHVlTGlzdHNUb0xvZ2ljYWxPcmRlcihsYXlvdXRBdHRy
aWJ1dGVzKTsKIAogICAgIC8vIFBlcmZvcm0gU1ZHIHRleHQgbGF5b3V0IHBoYXNlIHR3byAoc2Vl
IFNWR1RleHRMYXlvdXRFbmdpbmUgZm9yIGRldGFpbHMpLgogICAgIFNWR1RleHRMYXlvdXRFbmdp
bmUgY2hhcmFjdGVyTGF5b3V0KGxheW91dEF0dHJpYnV0ZXMpOwpAQCAtMjcwLDExICsyNzAsOCBA
QCBzdGF0aWMgaW5saW5lIHZvaWQgZmluZEZpcnN0QW5kTGFzdEF0dHJpYnV0ZXNJblZlY3RvcihW
ZWN0b3I8U1ZHVGV4dExheW91dEF0dHJpYgogICAgIEFTU0VSVChsYXN0KTsKIH0KIAotc3RhdGlj
IGlubGluZSB2b2lkIHJldmVyc2VJbmxpbmVCb3hSYW5nZUFuZFZhbHVlTGlzdHNJZk5lZWRlZCh2
b2lkKiB1c2VyRGF0YSwgVmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBmaXJzdCwg
VmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBsYXN0KQorc3RhdGljIGlubGluZSB2
b2lkIHJldmVyc2VJbmxpbmVCb3hSYW5nZUFuZFZhbHVlTGlzdHNJZk5lZWRlZChWZWN0b3I8U1ZH
VGV4dExheW91dEF0dHJpYnV0ZXMqPiYgYXR0cmlidXRlcywgVmVjdG9yPExlZ2FjeUlubGluZUJv
eCo+OjppdGVyYXRvciBmaXJzdCwgVmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBs
YXN0KQogewotICAgIEFTU0VSVCh1c2VyRGF0YSk7Ci0gICAgVmVjdG9yPFNWR1RleHRMYXlvdXRB
dHRyaWJ1dGVzKj4mIGF0dHJpYnV0ZXMgPSAqcmVpbnRlcnByZXRfY2FzdDxWZWN0b3I8U1ZHVGV4
dExheW91dEF0dHJpYnV0ZXMqPio+KHVzZXJEYXRhKTsKLQogICAgIC8vIFRoaXMgaXMgYSBjb3B5
IG9mIHN0ZDo6cmV2ZXJzZShmaXJzdCwgbGFzdCkuIEl0IGFkZGl0aW9uYWxseSBhc3N1cmVzIHRo
YXQgdGhlIG1ldHJpY3MgbWFwIHdpdGhpbiB0aGUgcmVuZGVyZXJzIGJlbG9uZ2luZyB0byB0aGUg
SW5saW5lQm94ZXMgYXJlIHJlb3JkZXJlZCBhcyB3ZWxsLgogICAgIHdoaWxlICh0cnVlKSAgewog
ICAgICAgICBpZiAoZmlyc3QgPT0gbGFzdCB8fCBmaXJzdCA9PSAtLWxhc3QpCkBAIC0zMTAsMTAg
KzMwNyw1MyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcmV2ZXJzZUlubGluZUJveFJhbmdlQW5kVmFs
dWVMaXN0c0lmTmVlZGVkKHZvaWQqIHVzZXJEYXRhLCBWZQogICAgIH0KIH0KIAotdm9pZCBTVkdS
b290SW5saW5lQm94OjpyZW9yZGVyVmFsdWVMaXN0cyhWZWN0b3I8U1ZHVGV4dExheW91dEF0dHJp
YnV0ZXMqPiYgYXR0cmlidXRlcykKK3ZvaWQgU1ZHUm9vdElubGluZUJveDo6cmVvcmRlclZhbHVl
TGlzdHNUb0xvZ2ljYWxPcmRlcihWZWN0b3I8U1ZHVGV4dExheW91dEF0dHJpYnV0ZXMqPiYgYXR0
cmlidXRlcykKIHsKICAgICBWZWN0b3I8TGVnYWN5SW5saW5lQm94Kj4gbGVhZkJveGVzSW5Mb2dp
Y2FsT3JkZXI7Ci0gICAgY29sbGVjdExlYWZCb3hlc0luTG9naWNhbE9yZGVyKGxlYWZCb3hlc0lu
TG9naWNhbE9yZGVyLCByZXZlcnNlSW5saW5lQm94UmFuZ2VBbmRWYWx1ZUxpc3RzSWZOZWVkZWQs
ICZhdHRyaWJ1dGVzKTsKKworICAgIExlZ2FjeUlubGluZUJveCogbGVhZiA9IGZpcnN0TGVhZkRl
c2NlbmRhbnQoKTsKKworICAgIHVuc2lnbmVkIGNoYXIgbWluTGV2ZWwgPSAxMjg7CisgICAgdW5z
aWduZWQgY2hhciBtYXhMZXZlbCA9IDA7CisKKyAgICAvLyBGaXJzdCBmaW5kIGhpZ2hlc3QgYW5k
IGxvd2VzdCBsZXZlbHMsIGFuZCBpbml0aWFsaXplIGxlYWZCb3hlc0luTG9naWNhbE9yZGVyIHdp
dGggdGhlIGxlYWYgYm94ZXMgaW4gdmlzdWFsIG9yZGVyLgorICAgIGZvciAoOyBsZWFmOyBsZWFm
ID0gbGVhZi0+bmV4dExlYWZPbkxpbmUoKSkgeworICAgICAgICBtaW5MZXZlbCA9IHN0ZDo6bWlu
KG1pbkxldmVsLCBsZWFmLT5iaWRpTGV2ZWwoKSk7CisgICAgICAgIG1heExldmVsID0gc3RkOjpt
YXgobWF4TGV2ZWwsIGxlYWYtPmJpZGlMZXZlbCgpKTsKKyAgICAgICAgbGVhZkJveGVzSW5Mb2dp
Y2FsT3JkZXIuYXBwZW5kKGxlYWYpOworICAgIH0KKworICAgIGlmIChyZW5kZXJlcigpLnN0eWxl
KCkucnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6VmlzdWFsKQorICAgICAgICByZXR1cm47CisKKyAg
ICAvLyBSZXZlcnNlIG9mIHJlb3JkZXJpbmcgb2YgdGhlIGxpbmUgKEwyIGFjY29yZGluZyB0byBC
aWRpIHNwZWMpOgorICAgIC8vIEwyLiBGcm9tIHRoZSBoaWdoZXN0IGxldmVsIGZvdW5kIGluIHRo
ZSB0ZXh0IHRvIHRoZSBsb3dlc3Qgb2RkIGxldmVsIG9uIGVhY2ggbGluZSwKKyAgICAvLyByZXZl
cnNlIGFueSBjb250aWd1b3VzIHNlcXVlbmNlIG9mIGNoYXJhY3RlcnMgdGhhdCBhcmUgYXQgdGhh
dCBsZXZlbCBvciBoaWdoZXIuCisKKyAgICAvLyBSZXZlcnNpbmcgdGhlIHJlb3JkZXJpbmcgb2Yg
dGhlIGxpbmUgaXMgb25seSBkb25lIHVwIHRvIHRoZSBsb3dlc3Qgb2RkIGxldmVsLgorICAgIGlm
ICghKG1pbkxldmVsICUgMikpCisgICAgICAgICsrbWluTGV2ZWw7CisKKyAgICBhdXRvIGVuZCA9
IGxlYWZCb3hlc0luTG9naWNhbE9yZGVyLmVuZCgpOworICAgIHdoaWxlIChtaW5MZXZlbCA8PSBt
YXhMZXZlbCkgeworICAgICAgICBhdXRvIGl0ID0gbGVhZkJveGVzSW5Mb2dpY2FsT3JkZXIuYmVn
aW4oKTsKKyAgICAgICAgd2hpbGUgKGl0ICE9IGVuZCkgeworICAgICAgICAgICAgd2hpbGUgKGl0
ICE9IGVuZCkgeworICAgICAgICAgICAgICAgIGlmICgoKml0KS0+YmlkaUxldmVsKCkgPj0gbWlu
TGV2ZWwpCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgICsraXQ7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBhdXRvIGZpcnN0ID0gaXQ7CisgICAgICAgICAg
ICB3aGlsZSAoaXQgIT0gZW5kKSB7CisgICAgICAgICAgICAgICAgaWYgKCgqaXQpLT5iaWRpTGV2
ZWwoKSA8IG1pbkxldmVsKQorICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
ICAgICArK2l0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgYXV0byBsYXN0ID0gaXQ7Cisg
ICAgICAgICAgICByZXZlcnNlSW5saW5lQm94UmFuZ2VBbmRWYWx1ZUxpc3RzSWZOZWVkZWQoYXR0
cmlidXRlcywgZmlyc3QsIGxhc3QpOworICAgICAgICB9CisgICAgICAgICsrbWluTGV2ZWw7Cisg
ICAgfQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jvb3RJbmxpbmVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdmcvU1ZHUm9vdElubGluZUJveC5oCmluZGV4IDE0NWYwNWJiNWFjZjJjMzM3ZGFj
ZDNlODcxMzM0NGEwMzk5NGZkMjkuLjBkMTYyNjllYjVjMTczN2EwZjMxMmM3ZGVhYTQ5Mjk4NzFh
NDYxZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUm9vdElu
bGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUm9vdElubGlu
ZUJveC5oCkBAIC01MCw3ICs1MCw3IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBib29sIGlz
U1ZHUm9vdElubGluZUJveCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KLSAgICB2
b2lkIHJlb3JkZXJWYWx1ZUxpc3RzKFZlY3RvcjxTVkdUZXh0TGF5b3V0QXR0cmlidXRlcyo+Jik7
CisgICAgdm9pZCByZW9yZGVyVmFsdWVMaXN0c1RvTG9naWNhbE9yZGVyKFZlY3RvcjxTVkdUZXh0
TGF5b3V0QXR0cmlidXRlcyo+Jik7CiAgICAgdm9pZCBsYXlvdXRDaGFyYWN0ZXJzSW5UZXh0Qm94
ZXMoTGVnYWN5SW5saW5lRmxvd0JveCosIFNWR1RleHRMYXlvdXRFbmdpbmUmKTsKICAgICB2b2lk
IGxheW91dENoaWxkQm94ZXMoTGVnYWN5SW5saW5lRmxvd0JveCosIEZsb2F0UmVjdCogPSBudWxs
cHRyKTsKICAgICB2b2lkIGxheW91dFJvb3RCb3goY29uc3QgRmxvYXRSZWN0Jik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441480</attachid>
            <date>2021-10-16 00:27:16 -0700</date>
            <delta_ts>2021-10-16 05:39:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231858-20211016102715.patch</filename>
            <type>text/plain</type>
            <size>14998</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MzA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmE2MDExMTJlODk1ODA3
NjlmOGE3M2IwOTQxNjMyOTdkN2E4OTJmZi4uOTgyZGJjZDljMzRkODEzOGRiOGI2NTY4ZmE4NjQz
OGJiNTE0N2VmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTEwLTE2ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgaW5saW5lIGl0ZXJh
dG9yIGZvciBTVkcgcmV2ZXJzZSBCaURJIHJlb3JkZXJpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTg1OAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNoYXJlIGNvZGUuCisKKyAgICAgICAgKiBsYXlv
dXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JMb2dpY2FsT3JkZXJUcmF2ZXJzYWwuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW5saW5lSXRlcmF0b3I6Om1ha2VMaW5lTG9naWNhbE9yZGVyQ2Fj
aGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lSXRlcmF0b3I6Om5leHRMZWFmT25MaW5lSW5M
b2dpY2FsT3JkZXIpOgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lSXRlcmF0b3I6OnByZXZpb3Vz
TGVhZk9uTGluZUluTG9naWNhbE9yZGVyKToKKworICAgICAgICBObyBuZWVkIHRvIHRlc3QgZm9y
IHRoZSBjYWNoZSwgaXQgaXMgYWx3YXlzIHRoZXJlLgorCisgICAgICAgICogbGF5b3V0L2ludGVn
cmF0aW9uL0lubGluZUl0ZXJhdG9yTG9naWNhbE9yZGVyVHJhdmVyc2FsLmg6CisgICAgICAgIChX
ZWJDb3JlOjpJbmxpbmVJdGVyYXRvcjo6bGVhZkJveGVzSW5Mb2dpY2FsT3JkZXIpOgorCisgICAg
ICAgIE1ha2UgdGVtcGxhdGUgYW5kIG1vdmUgdG8gaGVhZGVyLgorCisgICAgICAgICogcmVuZGVy
aW5nL0xlZ2FjeUlubGluZUZsb3dCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SW5s
aW5lRmxvd0JveDo6Y29sbGVjdExlYWZCb3hlc0luTG9naWNhbE9yZGVyIGNvbnN0KTogRGVsZXRl
ZC4KKworICAgICAgICBOb3QgbmVlZGVkIGFueW1vcmUuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
TGVnYWN5SW5saW5lRmxvd0JveC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvU1ZHUm9vdElu
bGluZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdSb290SW5saW5lQm94Ojpjb21wdXRl
UGVyQ2hhcmFjdGVyTGF5b3V0SW5mb3JtYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6cmV2ZXJz
ZUlubGluZUJveFJhbmdlQW5kVmFsdWVMaXN0c0lmTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6
OlNWR1Jvb3RJbmxpbmVCb3g6OnJlb3JkZXJWYWx1ZUxpc3RzVG9Mb2dpY2FsT3JkZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHUm9vdElubGluZUJveDo6cmVvcmRlclZhbHVlTGlzdHMpOiBEZWxl
dGVkLgorCisgICAgICAgIENhbGwgdGhlIGdlbmVyaWMgdmVyc2lvbi4KKworICAgICAgICAqIHJl
bmRlcmluZy9zdmcvU1ZHUm9vdElubGluZUJveC5oOgorCiAyMDIxLTEwLTE1ICBBbnR0aSBLb2l2
aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gRW5h
YmxlIGlubGluZSBib3hlcyB3aXRoIGJvcmRlcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvckxvZ2ljYWxPcmRlclRyYXZlcnNhbC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JMb2dp
Y2FsT3JkZXJUcmF2ZXJzYWwuY3BwCmluZGV4IDg1ZWI1MTc5OWFhMzdkODhlMjZkOGU5NzVhODc1
MDMwNDRiZDVmMTQuLjY5ZjU3NDYxMDM2Y2UzZjJmMzY5Mzc1M2JkN2NkNmIzODYyOWNlNzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRv
ckxvZ2ljYWxPcmRlclRyYXZlcnNhbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0lubGluZUl0ZXJhdG9yTG9naWNhbE9yZGVyVHJhdmVyc2FsLmNwcApAQCAtOTIs
NDggKzkyLDExIEBAIFRleHRCb3hJdGVyYXRvciBuZXh0VGV4dEJveEluTG9naWNhbE9yZGVyKGNv
bnN0IFRleHRCb3hJdGVyYXRvciYgdGV4dEJveCwgVGV4dExvCiBzdGF0aWMgTGluZUxvZ2ljYWxP
cmRlckNhY2hlIG1ha2VMaW5lTG9naWNhbE9yZGVyQ2FjaGUoY29uc3QgTGluZUl0ZXJhdG9yJiBs
aW5lKQogewogICAgIGF1dG8gY2FjaGUgPSBXVEY6Om1ha2VVbmlxdWU8TGluZUxvZ2ljYWxPcmRl
ckNhY2hlRGF0YT4oKTsKLSAgICBjYWNoZS0+bGluZSA9IGxpbmU7Ci0KLSAgICBhdXRvJiBib3hl
cyA9IGNhY2hlLT5ib3hlczsKLQotICAgIHVuc2lnbmVkIGNoYXIgbWluTGV2ZWwgPSAxMjg7Ci0g
ICAgdW5zaWduZWQgY2hhciBtYXhMZXZlbCA9IDA7Ci0KLSAgICBmb3IgKGF1dG8gYm94ID0gbGlu
ZS0+Zmlyc3RSdW4oKTsgYm94OyBib3ggPSBib3gudHJhdmVyc2VOZXh0T25MaW5lKCkpIHsKLSAg
ICAgICAgbWluTGV2ZWwgPSBzdGQ6Om1pbihtaW5MZXZlbCwgYm94LT5iaWRpTGV2ZWwoKSk7Ci0g
ICAgICAgIG1heExldmVsID0gc3RkOjptYXgobWF4TGV2ZWwsIGJveC0+YmlkaUxldmVsKCkpOwot
ICAgICAgICBib3hlcy5hcHBlbmQoYm94KTsKLSAgICB9Ci0KLSAgICBpZiAoIW1heExldmVsKQot
ICAgICAgICByZXR1cm4gY2FjaGU7Ci0KLSAgICBpZiAobGluZS0+Y29udGFpbmluZ0Jsb2NrKCku
c3R5bGUoKS5ydGxPcmRlcmluZygpID09IE9yZGVyOjpWaXN1YWwpCi0gICAgICAgIHJldHVybiBj
YWNoZTsKLQotICAgIC8vIFJldmVyc2Ugb2YgcmVvcmRlcmluZyBvZiB0aGUgbGluZSAoTDIgYWNj
b3JkaW5nIHRvIEJpZGkgc3BlYyk6Ci0gICAgLy8gTDIuIEZyb20gdGhlIGhpZ2hlc3QgbGV2ZWwg
Zm91bmQgaW4gdGhlIHRleHQgdG8gdGhlIGxvd2VzdCBvZGQgbGV2ZWwgb24gZWFjaCBsaW5lLAot
ICAgIC8vIHJldmVyc2UgYW55IGNvbnRpZ3VvdXMgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycyB0aGF0
IGFyZSBhdCB0aGF0IGxldmVsIG9yIGhpZ2hlci4KLQotICAgIC8vIFJldmVyc2luZyB0aGUgcmVv
cmRlcmluZyBvZiB0aGUgbGluZSBpcyBvbmx5IGRvbmUgdXAgdG8gdGhlIGxvd2VzdCBvZGQgbGV2
ZWwuCi0gICAgaWYgKCEobWluTGV2ZWwgJSAyKSkKLSAgICAgICAgKyttaW5MZXZlbDsKIAotICAg
IGF1dG8gZW5kID0gYm94ZXMuZW5kKCk7Ci0gICAgZm9yICg7IG1pbkxldmVsIDw9IG1heExldmVs
OyArK21pbkxldmVsKSB7Ci0gICAgICAgIGF1dG8gYm94ID0gYm94ZXMuYmVnaW4oKTsKLSAgICAg
ICAgd2hpbGUgKGJveCA8IGVuZCkgewotICAgICAgICAgICAgd2hpbGUgKGJveCA8IGVuZCAmJiAo
KmJveCktPmJpZGlMZXZlbCgpIDwgbWluTGV2ZWwpCi0gICAgICAgICAgICAgICAgKytib3g7Ci0K
LSAgICAgICAgICAgIGF1dG8gZmlyc3QgPSBib3g7Ci0gICAgICAgICAgICB3aGlsZSAoYm94IDwg
ZW5kICYmICgqYm94KS0+YmlkaUxldmVsKCkgPj0gbWluTGV2ZWwpCi0gICAgICAgICAgICAgICAg
Kytib3g7Ci0KLSAgICAgICAgICAgIGF1dG8gbGFzdCA9IGJveDsKLSAgICAgICAgICAgIHN0ZDo6
cmV2ZXJzZShmaXJzdCwgbGFzdCk7Ci0gICAgICAgIH0KLSAgICB9CisgICAgY2FjaGUtPmxpbmUg
PSBsaW5lOworICAgIGNhY2hlLT5ib3hlcyA9IGxlYWZCb3hlc0luTG9naWNhbE9yZGVyKGxpbmUs
IFtdKGF1dG8gZmlyc3QsIGF1dG8gbGFzdCkgeworICAgICAgICBzdGQ6OnJldmVyc2UoZmlyc3Qs
IGxhc3QpOworICAgIH0pOwogCiAgICAgcmV0dXJuIGNhY2hlOwogfQpAQCAtMTc4LDkgKzE0MSw2
IEBAIExlYWZCb3hJdGVyYXRvciBuZXh0TGVhZk9uTGluZUluTG9naWNhbE9yZGVyKGNvbnN0IExl
YWZCb3hJdGVyYXRvciYgYm94LCBMaW5lTG9nCiB7CiAgICAgdXBkYXRlTGluZUxvZ2ljYWxPcmRl
ckNhY2hlSWZOZWVkZWQoYm94LCBjYWNoZSk7CiAKLSAgICBpZiAoIWNhY2hlKQotICAgICAgICBy
ZXR1cm4gYm94LT5uZXh0T25MaW5lKCk7Ci0KICAgICBjYWNoZS0+aW5kZXgrKzsKIAogICAgIGlm
IChjYWNoZS0+aW5kZXggPCBjYWNoZS0+Ym94ZXMuc2l6ZSgpKQpAQCAtMTkzLDkgKzE1Myw2IEBA
IExlYWZCb3hJdGVyYXRvciBwcmV2aW91c0xlYWZPbkxpbmVJbkxvZ2ljYWxPcmRlcihjb25zdCBM
ZWFmQm94SXRlcmF0b3ImIGJveCwgTGluCiB7CiAgICAgdXBkYXRlTGluZUxvZ2ljYWxPcmRlckNh
Y2hlSWZOZWVkZWQoYm94LCBjYWNoZSk7CiAKLSAgICBpZiAoIWNhY2hlKQotICAgICAgICByZXR1
cm4gYm94LT5wcmV2aW91c09uTGluZSgpOwotCiAgICAgaWYgKCFjYWNoZS0+aW5kZXgpCiAgICAg
ICAgIHJldHVybiB7IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRl
Z3JhdGlvbi9JbmxpbmVJdGVyYXRvckxvZ2ljYWxPcmRlclRyYXZlcnNhbC5oIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0lubGluZUl0ZXJhdG9yTG9naWNhbE9yZGVyVHJhdmVy
c2FsLmgKaW5kZXggMWNmNTg5NGM5ODA4MmQ0OTIxNGZmMDY3YmU3NjA4Y2U1YWM3Yzg5Mi4uYWM5
YTJmMjUzODVmNGIzMjgxYTJhMmE4MjAwMTQ5ZGVlNWEyZWI0YSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0lubGluZUl0ZXJhdG9yTG9naWNhbE9yZGVyVHJh
dmVyc2FsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0lubGluZUl0
ZXJhdG9yTG9naWNhbE9yZGVyVHJhdmVyc2FsLmgKQEAgLTU5LDUgKzU5LDQ5IEBAIExlYWZCb3hJ
dGVyYXRvciBwcmV2aW91c0xlYWZPbkxpbmVJbkxvZ2ljYWxPcmRlcihjb25zdCBMZWFmQm94SXRl
cmF0b3ImLCBMaW5lTG9nCiBMZWFmQm94SXRlcmF0b3IgZmlyc3RMZWFmT25MaW5lSW5Mb2dpY2Fs
T3JkZXJXaXRoTm9kZShjb25zdCBMaW5lSXRlcmF0b3ImLCBMaW5lTG9naWNhbE9yZGVyQ2FjaGUm
KTsKIExlYWZCb3hJdGVyYXRvciBsYXN0TGVhZk9uTGluZUluTG9naWNhbE9yZGVyV2l0aE5vZGUo
Y29uc3QgTGluZUl0ZXJhdG9yJiwgTGluZUxvZ2ljYWxPcmRlckNhY2hlJik7CiAKK3RlbXBsYXRl
PHR5cGVuYW1lIFJldmVyc2VGdW5jdGlvbj4KK1ZlY3RvcjxMZWFmQm94SXRlcmF0b3I+IGxlYWZC
b3hlc0luTG9naWNhbE9yZGVyKGNvbnN0IExpbmVJdGVyYXRvciYgbGluZSwgUmV2ZXJzZUZ1bmN0
aW9uJiYgcmV2ZXJzZUZ1bmN0aW9uKQoreworICAgIFZlY3RvcjxMZWFmQm94SXRlcmF0b3I+IGJv
eGVzOworCisgICAgdW5zaWduZWQgY2hhciBtaW5MZXZlbCA9IDEyODsKKyAgICB1bnNpZ25lZCBj
aGFyIG1heExldmVsID0gMDsKKworICAgIGZvciAoYXV0byBib3ggPSBsaW5lLT5maXJzdFJ1bigp
OyBib3g7IGJveCA9IGJveC50cmF2ZXJzZU5leHRPbkxpbmUoKSkgeworICAgICAgICBtaW5MZXZl
bCA9IHN0ZDo6bWluKG1pbkxldmVsLCBib3gtPmJpZGlMZXZlbCgpKTsKKyAgICAgICAgbWF4TGV2
ZWwgPSBzdGQ6Om1heChtYXhMZXZlbCwgYm94LT5iaWRpTGV2ZWwoKSk7CisgICAgICAgIGJveGVz
LmFwcGVuZChib3gpOworICAgIH0KKworICAgIGlmIChsaW5lLT5jb250YWluaW5nQmxvY2soKS5z
dHlsZSgpLnJ0bE9yZGVyaW5nKCkgPT0gT3JkZXI6OlZpc3VhbCkKKyAgICAgICAgcmV0dXJuIGJv
eGVzOworCisgICAgLy8gUmV2ZXJzZSBvZiByZW9yZGVyaW5nIG9mIHRoZSBsaW5lIChMMiBhY2Nv
cmRpbmcgdG8gQmlkaSBzcGVjKToKKyAgICAvLyBMMi4gRnJvbSB0aGUgaGlnaGVzdCBsZXZlbCBm
b3VuZCBpbiB0aGUgdGV4dCB0byB0aGUgbG93ZXN0IG9kZCBsZXZlbCBvbiBlYWNoIGxpbmUsCisg
ICAgLy8gcmV2ZXJzZSBhbnkgY29udGlndW91cyBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzIHRoYXQg
YXJlIGF0IHRoYXQgbGV2ZWwgb3IgaGlnaGVyLgorCisgICAgLy8gUmV2ZXJzaW5nIHRoZSByZW9y
ZGVyaW5nIG9mIHRoZSBsaW5lIGlzIG9ubHkgZG9uZSB1cCB0byB0aGUgbG93ZXN0IG9kZCBsZXZl
bC4KKyAgICBpZiAoIShtaW5MZXZlbCAlIDIpKQorICAgICAgICArK21pbkxldmVsOworCisgICAg
YXV0byBlbmQgPSBib3hlcy5lbmQoKTsKKyAgICBmb3IgKDsgbWluTGV2ZWwgPD0gbWF4TGV2ZWw7
ICsrbWluTGV2ZWwpIHsKKyAgICAgICAgYXV0byBib3ggPSBib3hlcy5iZWdpbigpOworICAgICAg
ICB3aGlsZSAoYm94IDwgZW5kKSB7CisgICAgICAgICAgICB3aGlsZSAoYm94IDwgZW5kICYmICgq
Ym94KS0+YmlkaUxldmVsKCkgPCBtaW5MZXZlbCkKKyAgICAgICAgICAgICAgICArK2JveDsKKwor
ICAgICAgICAgICAgYXV0byBmaXJzdCA9IGJveDsKKyAgICAgICAgICAgIHdoaWxlIChib3ggPCBl
bmQgJiYgKCpib3gpLT5iaWRpTGV2ZWwoKSA+PSBtaW5MZXZlbCkKKyAgICAgICAgICAgICAgICAr
K2JveDsKKworICAgICAgICAgICAgYXV0byBsYXN0ID0gYm94OworICAgICAgICAgICAgcmV2ZXJz
ZUZ1bmN0aW9uKGZpcnN0LCBsYXN0KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiBi
b3hlczsKK30KKwogfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xl
Z2FjeUlubGluZUZsb3dCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlu
bGluZUZsb3dCb3guY3BwCmluZGV4IDU5NDg2N2U3MTk3MGY2ODU0ZGE5NTcxNjExZDFlMTFmMmM4
NmU0YmYuLjJjZGRlZGIxNWVmMGFlNDg3ODNjYzFjYTdiMzQ0ZmIwMjQzNDUwMmUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVGbG93Qm94LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5jcHAKQEAgLTEy
OTUsNTkgKzEyOTUsNiBAQCBMYXlvdXRVbml0IExlZ2FjeUlubGluZUZsb3dCb3g6OmNvbXB1dGVV
bmRlckFubm90YXRpb25BZGp1c3RtZW50KExheW91dFVuaXQgYWxsbwogICAgIHJldHVybiByZXN1
bHQ7CiB9CiAKLXZvaWQgTGVnYWN5SW5saW5lRmxvd0JveDo6Y29sbGVjdExlYWZCb3hlc0luTG9n
aWNhbE9yZGVyKFZlY3RvcjxMZWdhY3lJbmxpbmVCb3gqPiYgbGVhZkJveGVzSW5Mb2dpY2FsT3Jk
ZXIsIEN1c3RvbUlubGluZUJveFJhbmdlUmV2ZXJzZSBjdXN0b21SZXZlcnNlSW1wbGVtZW50YXRp
b24sIHZvaWQqIHVzZXJEYXRhKSBjb25zdAotewotICAgIExlZ2FjeUlubGluZUJveCogbGVhZiA9
IGZpcnN0TGVhZkRlc2NlbmRhbnQoKTsKLQotICAgIC8vIEZJWE1FOiBUaGUgcmVvcmRlcmluZyBj
b2RlIGlzIGEgY29weSBvZiBwYXJ0cyBmcm9tIEJpZGlSZXNvbHZlcjo6Y3JlYXRlQmlkaVJ1bnNG
b3JMaW5lLCBvcGVyYXRpbmcgZGlyZWN0bHkgb24gSW5saW5lQm94ZXMsIGluc3RlYWQgb2YgQmlk
aVJ1bnMuCi0gICAgLy8gSW52ZXN0aWdhdGUgb24gaG93IHRoaXMgY29kZSBjb3VsZCBwb3NzaWJs
eSBiZSBzaGFyZWQuCi0gICAgdW5zaWduZWQgY2hhciBtaW5MZXZlbCA9IDEyODsKLSAgICB1bnNp
Z25lZCBjaGFyIG1heExldmVsID0gMDsKLQotICAgIC8vIEZpcnN0IGZpbmQgaGlnaGVzdCBhbmQg
bG93ZXN0IGxldmVscywgYW5kIGluaXRpYWxpemUgbGVhZkJveGVzSW5Mb2dpY2FsT3JkZXIgd2l0
aCB0aGUgbGVhZiBib3hlcyBpbiB2aXN1YWwgb3JkZXIuCi0gICAgZm9yICg7IGxlYWY7IGxlYWYg
PSBsZWFmLT5uZXh0TGVhZk9uTGluZSgpKSB7Ci0gICAgICAgIG1pbkxldmVsID0gc3RkOjptaW4o
bWluTGV2ZWwsIGxlYWYtPmJpZGlMZXZlbCgpKTsKLSAgICAgICAgbWF4TGV2ZWwgPSBzdGQ6Om1h
eChtYXhMZXZlbCwgbGVhZi0+YmlkaUxldmVsKCkpOwotICAgICAgICBsZWFmQm94ZXNJbkxvZ2lj
YWxPcmRlci5hcHBlbmQobGVhZik7Ci0gICAgfQotCi0gICAgaWYgKHJlbmRlcmVyKCkuc3R5bGUo
KS5ydGxPcmRlcmluZygpID09IE9yZGVyOjpWaXN1YWwpCi0gICAgICAgIHJldHVybjsKLQotICAg
IC8vIFJldmVyc2Ugb2YgcmVvcmRlcmluZyBvZiB0aGUgbGluZSAoTDIgYWNjb3JkaW5nIHRvIEJp
ZGkgc3BlYyk6Ci0gICAgLy8gTDIuIEZyb20gdGhlIGhpZ2hlc3QgbGV2ZWwgZm91bmQgaW4gdGhl
IHRleHQgdG8gdGhlIGxvd2VzdCBvZGQgbGV2ZWwgb24gZWFjaCBsaW5lLAotICAgIC8vIHJldmVy
c2UgYW55IGNvbnRpZ3VvdXMgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycyB0aGF0IGFyZSBhdCB0aGF0
IGxldmVsIG9yIGhpZ2hlci4KLQotICAgIC8vIFJldmVyc2luZyB0aGUgcmVvcmRlcmluZyBvZiB0
aGUgbGluZSBpcyBvbmx5IGRvbmUgdXAgdG8gdGhlIGxvd2VzdCBvZGQgbGV2ZWwuCi0gICAgaWYg
KCEobWluTGV2ZWwgJSAyKSkKLSAgICAgICAgKyttaW5MZXZlbDsKLQotICAgIFZlY3RvcjxMZWdh
Y3lJbmxpbmVCb3gqPjo6aXRlcmF0b3IgZW5kID0gbGVhZkJveGVzSW5Mb2dpY2FsT3JkZXIuZW5k
KCk7Ci0gICAgd2hpbGUgKG1pbkxldmVsIDw9IG1heExldmVsKSB7Ci0gICAgICAgIFZlY3RvcjxM
ZWdhY3lJbmxpbmVCb3gqPjo6aXRlcmF0b3IgaXQgPSBsZWFmQm94ZXNJbkxvZ2ljYWxPcmRlci5i
ZWdpbigpOwotICAgICAgICB3aGlsZSAoaXQgIT0gZW5kKSB7Ci0gICAgICAgICAgICB3aGlsZSAo
aXQgIT0gZW5kKSB7Ci0gICAgICAgICAgICAgICAgaWYgKCgqaXQpLT5iaWRpTGV2ZWwoKSA+PSBt
aW5MZXZlbCkKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgKytp
dDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFZlY3RvcjxMZWdhY3lJbmxpbmVCb3gqPjo6
aXRlcmF0b3IgZmlyc3QgPSBpdDsKLSAgICAgICAgICAgIHdoaWxlIChpdCAhPSBlbmQpIHsKLSAg
ICAgICAgICAgICAgICBpZiAoKCppdCktPmJpZGlMZXZlbCgpIDwgbWluTGV2ZWwpCi0gICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICsraXQ7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICBWZWN0b3I8TGVnYWN5SW5saW5lQm94Kj46Oml0ZXJhdG9yIGxhc3QgPSBp
dDsKLSAgICAgICAgICAgIGlmIChjdXN0b21SZXZlcnNlSW1wbGVtZW50YXRpb24pIHsKLSAgICAg
ICAgICAgICAgICBBU1NFUlQodXNlckRhdGEpOwotICAgICAgICAgICAgICAgICgqY3VzdG9tUmV2
ZXJzZUltcGxlbWVudGF0aW9uKSh1c2VyRGF0YSwgZmlyc3QsIGxhc3QpOwotICAgICAgICAgICAg
fSBlbHNlCi0gICAgICAgICAgICAgICAgc3RkOjpyZXZlcnNlKGZpcnN0LCBsYXN0KTsKLSAgICAg
ICAgfSAgICAgICAgICAgICAgICAKLSAgICAgICAgKyttaW5MZXZlbDsKLSAgICB9Ci19Ci0KIHZv
aWQgTGVnYWN5SW5saW5lRmxvd0JveDo6Y29tcHV0ZVJlcGxhY2VkQW5kVGV4dExpbmVUb3BBbmRC
b3R0b20oTGF5b3V0VW5pdCYgbGluZVRvcCwgTGF5b3V0VW5pdCYgbGluZUJvdHRvbSkgY29uc3QK
IHsKICAgICBmb3IgKGNvbnN0IGF1dG8qIGJveCA9IGZpcnN0Q2hpbGQoKTsgYm94OyBib3ggPSBi
b3gtPm5leHRPbkxpbmUoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0xlZ2FjeUlubGluZUZsb3dCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJ
bmxpbmVGbG93Qm94LmgKaW5kZXggNGUzMjA4NTAxZTA1NTU3NDNmYjExYjk2YWQ3YjlkZWEzOTgy
NjNjNy4uMzhjYjE3YTY0NmI4YjBhYzBhYTE1YjIxZWJiZmExMjZlZTUzZDFhZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUZsb3dCb3guaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lRmxvd0JveC5oCkBAIC05Myw5ICs5
Myw2IEBAIHB1YmxpYzoKICAgICBMZWdhY3lJbmxpbmVCb3gqIGZpcnN0TGVhZkRlc2NlbmRhbnQo
KSBjb25zdDsKICAgICBMZWdhY3lJbmxpbmVCb3gqIGxhc3RMZWFmRGVzY2VuZGFudCgpIGNvbnN0
OwogCi0gICAgdHlwZWRlZiB2b2lkICgqQ3VzdG9tSW5saW5lQm94UmFuZ2VSZXZlcnNlKSh2b2lk
KiB1c2VyRGF0YSwgVmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBmaXJzdCwgVmVj
dG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBsYXN0KTsKLSAgICB2b2lkIGNvbGxlY3RM
ZWFmQm94ZXNJbkxvZ2ljYWxPcmRlcihWZWN0b3I8TGVnYWN5SW5saW5lQm94Kj4mLCBDdXN0b21J
bmxpbmVCb3hSYW5nZVJldmVyc2UgY3VzdG9tUmV2ZXJzZUltcGxlbWVudGF0aW9uID0gbnVsbHB0
ciwgdm9pZCogdXNlckRhdGEgPSBudWxscHRyKSBjb25zdDsKLQogICAgIHZvaWQgc2V0Q29uc3Ry
dWN0ZWQoKSBmaW5hbAogICAgIHsKICAgICAgICAgTGVnYWN5SW5saW5lQm94OjpzZXRDb25zdHJ1
Y3RlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSb290
SW5saW5lQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUm9vdElubGlu
ZUJveC5jcHAKaW5kZXggOWE4ZjczZDdlMWUyMWVhMmJmMGIwZTVkYWE4MmY0ZGVlYjcyYzJhNS4u
M2NmY2IyYTMzYTkzMzRhNjc3ZTA3YzI3MGM5MDIzNGFkMWI3Yjg0NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSb290SW5saW5lQm94LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jvb3RJbmxpbmVCb3guY3BwCkBAIC0yNSw2ICsy
NSw3IEBACiAjaW5jbHVkZSAiU1ZHUm9vdElubGluZUJveC5oIgogCiAjaW5jbHVkZSAiR3JhcGhp
Y3NDb250ZXh0LmgiCisjaW5jbHVkZSAiSW5saW5lSXRlcmF0b3JMb2dpY2FsT3JkZXJUcmF2ZXJz
YWwuaCIKICNpbmNsdWRlICJSZW5kZXJTVkdUZXh0LmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHVGV4
dFBhdGguaCIKICNpbmNsdWRlICJTVkdFbGVtZW50VHlwZUhlbHBlcnMuaCIKQEAgLTg1LDcgKzg2
LDcgQEAgdm9pZCBTVkdSb290SW5saW5lQm94Ojpjb21wdXRlUGVyQ2hhcmFjdGVyTGF5b3V0SW5m
b3JtYXRpb24oKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAodGV4dFJvb3QubmVlZHNSZW9y
ZGVyaW5nKCkpCi0gICAgICAgIHJlb3JkZXJWYWx1ZUxpc3RzKGxheW91dEF0dHJpYnV0ZXMpOwor
ICAgICAgICByZW9yZGVyVmFsdWVMaXN0c1RvTG9naWNhbE9yZGVyKGxheW91dEF0dHJpYnV0ZXMp
OwogCiAgICAgLy8gUGVyZm9ybSBTVkcgdGV4dCBsYXlvdXQgcGhhc2UgdHdvIChzZWUgU1ZHVGV4
dExheW91dEVuZ2luZSBmb3IgZGV0YWlscykuCiAgICAgU1ZHVGV4dExheW91dEVuZ2luZSBjaGFy
YWN0ZXJMYXlvdXQobGF5b3V0QXR0cmlidXRlcyk7CkBAIC0yNzAsMjYgKzI3MSwyNCBAQCBzdGF0
aWMgaW5saW5lIHZvaWQgZmluZEZpcnN0QW5kTGFzdEF0dHJpYnV0ZXNJblZlY3RvcihWZWN0b3I8
U1ZHVGV4dExheW91dEF0dHJpYgogICAgIEFTU0VSVChsYXN0KTsKIH0KIAotc3RhdGljIGlubGlu
ZSB2b2lkIHJldmVyc2VJbmxpbmVCb3hSYW5nZUFuZFZhbHVlTGlzdHNJZk5lZWRlZCh2b2lkKiB1
c2VyRGF0YSwgVmVjdG9yPExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBmaXJzdCwgVmVjdG9y
PExlZ2FjeUlubGluZUJveCo+OjppdGVyYXRvciBsYXN0KQorc3RhdGljIGlubGluZSB2b2lkIHJl
dmVyc2VJbmxpbmVCb3hSYW5nZUFuZFZhbHVlTGlzdHNJZk5lZWRlZChWZWN0b3I8U1ZHVGV4dExh
eW91dEF0dHJpYnV0ZXMqPiYgYXR0cmlidXRlcywgVmVjdG9yPElubGluZUl0ZXJhdG9yOjpMZWFm
Qm94SXRlcmF0b3I+OjppdGVyYXRvciBmaXJzdCwgVmVjdG9yPElubGluZUl0ZXJhdG9yOjpMZWFm
Qm94SXRlcmF0b3I+OjppdGVyYXRvciBsYXN0KQogewotICAgIEFTU0VSVCh1c2VyRGF0YSk7Ci0g
ICAgVmVjdG9yPFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzKj4mIGF0dHJpYnV0ZXMgPSAqcmVpbnRl
cnByZXRfY2FzdDxWZWN0b3I8U1ZHVGV4dExheW91dEF0dHJpYnV0ZXMqPio+KHVzZXJEYXRhKTsK
LQogICAgIC8vIFRoaXMgaXMgYSBjb3B5IG9mIHN0ZDo6cmV2ZXJzZShmaXJzdCwgbGFzdCkuIEl0
IGFkZGl0aW9uYWxseSBhc3N1cmVzIHRoYXQgdGhlIG1ldHJpY3MgbWFwIHdpdGhpbiB0aGUgcmVu
ZGVyZXJzIGJlbG9uZ2luZyB0byB0aGUgSW5saW5lQm94ZXMgYXJlIHJlb3JkZXJlZCBhcyB3ZWxs
LgogICAgIHdoaWxlICh0cnVlKSAgewogICAgICAgICBpZiAoZmlyc3QgPT0gbGFzdCB8fCBmaXJz
dCA9PSAtLWxhc3QpCiAgICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgaWYgKCFpczxTVkdJ
bmxpbmVUZXh0Qm94PigqKmxhc3QpIHx8ICFpczxTVkdJbmxpbmVUZXh0Qm94PigqKmZpcnN0KSkg
ewotICAgICAgICAgICAgTGVnYWN5SW5saW5lQm94KiB0ZW1wID0gKmZpcnN0OworICAgICAgICBh
dXRvKiBsZWdhY3lGaXJzdCA9ICgqZmlyc3QpLT5sZWdhY3lJbmxpbmVCb3goKTsKKyAgICAgICAg
YXV0byogbGVnYWN5TGFzdCA9ICgqbGFzdCktPmxlZ2FjeUlubGluZUJveCgpOworICAgICAgICBp
ZiAoIWlzPFNWR0lubGluZVRleHRCb3g+KGxlZ2FjeUZpcnN0KSB8fCAhaXM8U1ZHSW5saW5lVGV4
dEJveD4obGVnYWN5TGFzdCkpIHsKKyAgICAgICAgICAgIGF1dG8gdGVtcCA9ICpmaXJzdDsKICAg
ICAgICAgICAgICpmaXJzdCA9ICpsYXN0OwogICAgICAgICAgICAgKmxhc3QgPSB0ZW1wOwogICAg
ICAgICAgICAgKytmaXJzdDsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKLSAg
ICAgICAgYXV0byYgZmlyc3RUZXh0Qm94ID0gZG93bmNhc3Q8U1ZHSW5saW5lVGV4dEJveD4oKipm
aXJzdCk7Ci0gICAgICAgIGF1dG8mIGxhc3RUZXh0Qm94ID0gZG93bmNhc3Q8U1ZHSW5saW5lVGV4
dEJveD4oKipsYXN0KTsKKyAgICAgICAgYXV0byYgZmlyc3RUZXh0Qm94ID0gZG93bmNhc3Q8U1ZH
SW5saW5lVGV4dEJveD4oKmxlZ2FjeUZpcnN0KTsKKyAgICAgICAgYXV0byYgbGFzdFRleHRCb3gg
PSBkb3duY2FzdDxTVkdJbmxpbmVUZXh0Qm94PigqbGVnYWN5TGFzdCk7CiAKICAgICAgICAgLy8g
UmVvcmRlcmluZyBpcyBvbmx5IG5lY2Vzc2FyeSBmb3IgQmlEaSB0ZXh0IHRoYXQgaXMgX2Fic29s
dXRlbHlfIHBvc2l0aW9uZWQuCiAgICAgICAgIGlmIChmaXJzdFRleHRCb3gubGVuKCkgPT0gMSAm
JiBmaXJzdFRleHRCb3gubGVuKCkgPT0gbGFzdFRleHRCb3gubGVuKCkpIHsKQEAgLTMwMiw3ICsz
MDEsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcmV2ZXJzZUlubGluZUJveFJhbmdlQW5kVmFsdWVM
aXN0c0lmTmVlZGVkKHZvaWQqIHVzZXJEYXRhLCBWZQogICAgICAgICAgICAgc3dhcEl0ZW1zSW5M
YXlvdXRBdHRyaWJ1dGVzKGZpcnN0QXR0cmlidXRlcywgbGFzdEF0dHJpYnV0ZXMsIGZpcnN0VGV4
dEJveC5zdGFydCgpLCBsYXN0VGV4dEJveC5zdGFydCgpKTsKICAgICAgICAgfQogCi0gICAgICAg
IExlZ2FjeUlubGluZUJveCogdGVtcCA9ICpmaXJzdDsKKyAgICAgICAgYXV0byB0ZW1wID0gKmZp
cnN0OwogICAgICAgICAqZmlyc3QgPSAqbGFzdDsKICAgICAgICAgKmxhc3QgPSB0ZW1wOwogCkBA
IC0zMTAsMTAgKzMwOSwxNCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcmV2ZXJzZUlubGluZUJveFJh
bmdlQW5kVmFsdWVMaXN0c0lmTmVlZGVkKHZvaWQqIHVzZXJEYXRhLCBWZQogICAgIH0KIH0KIAot
dm9pZCBTVkdSb290SW5saW5lQm94OjpyZW9yZGVyVmFsdWVMaXN0cyhWZWN0b3I8U1ZHVGV4dExh
eW91dEF0dHJpYnV0ZXMqPiYgYXR0cmlidXRlcykKK3ZvaWQgU1ZHUm9vdElubGluZUJveDo6cmVv
cmRlclZhbHVlTGlzdHNUb0xvZ2ljYWxPcmRlcihWZWN0b3I8U1ZHVGV4dExheW91dEF0dHJpYnV0
ZXMqPiYgYXR0cmlidXRlcykKIHsKLSAgICBWZWN0b3I8TGVnYWN5SW5saW5lQm94Kj4gbGVhZkJv
eGVzSW5Mb2dpY2FsT3JkZXI7Ci0gICAgY29sbGVjdExlYWZCb3hlc0luTG9naWNhbE9yZGVyKGxl
YWZCb3hlc0luTG9naWNhbE9yZGVyLCByZXZlcnNlSW5saW5lQm94UmFuZ2VBbmRWYWx1ZUxpc3Rz
SWZOZWVkZWQsICZhdHRyaWJ1dGVzKTsKKyAgICBhdXRvIGxpbmUgPSBJbmxpbmVJdGVyYXRvcjo6
TGluZUl0ZXJhdG9yKHRoaXMpOworCisgICAgSW5saW5lSXRlcmF0b3I6OmxlYWZCb3hlc0luTG9n
aWNhbE9yZGVyKGxpbmUsIFsmXShhdXRvIGZpcnN0LCBhdXRvIGxhc3QpIHsKKyAgICAgICAgcmV2
ZXJzZUlubGluZUJveFJhbmdlQW5kVmFsdWVMaXN0c0lmTmVlZGVkKGF0dHJpYnV0ZXMsIGZpcnN0
LCBsYXN0KTsKKyAgICB9KTsKKwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jvb3RJbmxpbmVCb3guaCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUm9vdElubGluZUJveC5oCmluZGV4IDE0NWYw
NWJiNWFjZjJjMzM3ZGFjZDNlODcxMzM0NGEwMzk5NGZkMjkuLjBkMTYyNjllYjVjMTczN2EwZjMx
MmM3ZGVhYTQ5Mjk4NzFhNDYxZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdmcvU1ZHUm9vdElubGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dmcvU1ZHUm9vdElubGluZUJveC5oCkBAIC01MCw3ICs1MCw3IEBAIHB1YmxpYzoKIAogcHJpdmF0
ZToKICAgICBib29sIGlzU1ZHUm9vdElubGluZUJveCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJu
IHRydWU7IH0KLSAgICB2b2lkIHJlb3JkZXJWYWx1ZUxpc3RzKFZlY3RvcjxTVkdUZXh0TGF5b3V0
QXR0cmlidXRlcyo+Jik7CisgICAgdm9pZCByZW9yZGVyVmFsdWVMaXN0c1RvTG9naWNhbE9yZGVy
KFZlY3RvcjxTVkdUZXh0TGF5b3V0QXR0cmlidXRlcyo+Jik7CiAgICAgdm9pZCBsYXlvdXRDaGFy
YWN0ZXJzSW5UZXh0Qm94ZXMoTGVnYWN5SW5saW5lRmxvd0JveCosIFNWR1RleHRMYXlvdXRFbmdp
bmUmKTsKICAgICB2b2lkIGxheW91dENoaWxkQm94ZXMoTGVnYWN5SW5saW5lRmxvd0JveCosIEZs
b2F0UmVjdCogPSBudWxscHRyKTsKICAgICB2b2lkIGxheW91dFJvb3RCb3goY29uc3QgRmxvYXRS
ZWN0Jik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>