<?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>262571</bug_id>
          
          <creation_ts>2023-10-03 14:30:40 -0700</creation_ts>
          <short_desc>[IFC][Cleanup] Let&apos;s access placed floats through inline layout state</short_desc>
          <delta_ts>2023-10-04 19:38:16 -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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>koivisto</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>1982228</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2023-10-03 14:30:40 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1982231</commentid>
    <comment_count>1</comment_count>
      <attachid>468051</attachid>
    <who name="alan">zalan</who>
    <bug_when>2023-10-03 14:34:23 -0700</bug_when>
    <thetext>Created attachment 468051
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1982591</commentid>
    <comment_count>2</comment_count>
      <attachid>468068</attachid>
    <who name="alan">zalan</who>
    <bug_when>2023-10-04 14:38:58 -0700</bug_when>
    <thetext>Created attachment 468068
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1982682</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-10-04 19:37:56 -0700</bug_when>
    <thetext>Committed 268891@main (2a3b8dbc6107): &lt;https://commits.webkit.org/268891@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 468068.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1982683</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-10-04 19:38:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/116499380&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>468051</attachid>
            <date>2023-10-03 14:34:23 -0700</date>
            <delta_ts>2023-10-04 14:38:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-262571-20231003143422.patch</filename>
            <type>text/plain</type>
            <size>13299</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAzOTJjYzFhNDdmNjViMzc4ZDZiZjBjZmQ1NjQyZTNhODU5YWNkMzIzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMyBPY3QgMjAyMyAxNDozMDo0OCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIFtJRkNdW0Ns
ZWFudXBdIExldCdzIGFjY2VzcyBwbGFjZWQgZmxvYXRzIHRocm91Z2ggaW5saW5lCiBsYXlvdXQg
c3RhdGUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2MjU3MQoKUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgoqIFNvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUNvbnRlbnRCYWxhbmNlci5jcHA6CihXZWJDb3JlOjpM
YXlvdXQ6OklubGluZUNvbnRlbnRCYWxhbmNlcjo6aW5pdGlhbGl6ZSk6CiogU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQuY3BwOgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0
KToKKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmxpbmVMYXlvdXQp
OgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0RmxvYXRD
b250ZW50T25seSk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpj
cmVhdGVEaXNwbGF5Q29udGVudEZvckxpbmVGcm9tQ2FjaGVkQ29udGVudCk6CiogU291cmNlL1dl
YkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0Nv
bnRleHQuaDoKKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OnBsYWNl
ZEZsb2F0cyk6IERlbGV0ZWQuCihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250
ZXh0OjpwbGFjZWRGbG9hdHMgY29uc3QpOiBEZWxldGVkLgoqIFNvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxheW91dFN0YXRlLmg6CihXZWJDb3Jl
OjpMYXlvdXQ6OklubGluZUxheW91dFN0YXRlOjpwbGFjZWRGbG9hdHMgY29uc3QpOgooV2ViQ29y
ZTo6TGF5b3V0OjpJbmxpbmVMYXlvdXRTdGF0ZTo6cGxhY2VkRmxvYXRzKToKKiBTb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lQm94QnVpbGRl
ci5jcHA6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCb3hCdWlsZGVyOjphZGp1c3RPdXRzaWRlTGlz
dE1hcmtlcnNQb3NpdGlvbik6CiogU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250
ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJ1aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5l
QnVpbGRlcjo6TGluZUJ1aWxkZXIpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lQnVpbGRlcjo6Zmxv
YXRDb25zdHJhaW5lZFJlY3QgY29uc3QpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lQnVpbGRlcjo6
dHJ5UGxhY2luZ0Zsb2F0Qm94KToKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6OmlubGlu
ZUxheW91dFN0YXRlKToKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6OnBsYWNlZEZsb2F0
cyk6IERlbGV0ZWQuCiogU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9p
bmxpbmUvSW5saW5lTGluZUJ1aWxkZXIuaDoKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6
OmZsb2F0aW5nQ29udGV4dCk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCdWlsZGVyOjpmbG9hdGlu
Z0NvbnRleHQgY29uc3QpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lQnVpbGRlcjo6YmxvY2tMYXlv
dXRTdGF0ZSBjb25zdCk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCdWlsZGVyOjpwbGFjZWRGbG9h
dHMgY29uc3QpOiBEZWxldGVkLgotLS0KIC4uLi9pbmxpbmUvSW5saW5lQ29udGVudEJhbGFuY2Vy
LmNwcCAgICAgICAgICAgICAgIHwgIDIgKy0KIC4uLi9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0Nv
bnRleHQuY3BwICAgICAgICAgICAgIHwgIDggKysrKy0tLS0KIC4uLi9pbmxpbmUvSW5saW5lRm9y
bWF0dGluZ0NvbnRleHQuaCAgICAgICAgICAgICAgIHwgIDQgKy0tLQogLi4uL2Zvcm1hdHRpbmdD
b250ZXh0cy9pbmxpbmUvSW5saW5lTGF5b3V0U3RhdGUuaCAgfCAgMyArKysKIC4uLi9pbmxpbmUv
SW5saW5lTGluZUJveEJ1aWxkZXIuY3BwICAgICAgICAgICAgICAgIHwgIDIgKy0KIC4uLi9pbmxp
bmUvSW5saW5lTGluZUJ1aWxkZXIuY3BwICAgICAgICAgICAgICAgICAgIHwgMTQgKysrKysrKy0t
LS0tLS0KIC4uLi9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVyLmgg
IHwgIDYgKysrKy0tCiA3IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDE4IGRlbGV0
aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29u
dGV4dHMvaW5saW5lL0lubGluZUNvbnRlbnRCYWxhbmNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVDb250ZW50QmFsYW5jZXIuY3Bw
CmluZGV4IGJiZmQwMWIyYWI0ZC4uZGQwM2EwYjJiNzMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVDb250ZW50QmFsYW5j
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5s
aW5lL0lubGluZUNvbnRlbnRCYWxhbmNlci5jcHAKQEAgLTExMiw3ICsxMTIsNyBAQCBJbmxpbmVD
b250ZW50QmFsYW5jZXI6OklubGluZUNvbnRlbnRCYWxhbmNlcihJbmxpbmVGb3JtYXR0aW5nQ29u
dGV4dCYgaW5saW5lRm9ybQogCiB2b2lkIElubGluZUNvbnRlbnRCYWxhbmNlcjo6aW5pdGlhbGl6
ZSgpCiB7Ci0gICAgaWYgKCFtX2lubGluZUZvcm1hdHRpbmdDb250ZXh0LnBsYWNlZEZsb2F0cygp
LmlzRW1wdHkoKSkgeworICAgIGlmICghbV9pbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5pbmxpbmVM
YXlvdXRTdGF0ZSgpLnBsYWNlZEZsb2F0cygpLmlzRW1wdHkoKSkgewogICAgICAgICBtX2Nhbm5v
dEJhbGFuY2VDb250ZW50ID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGlu
ZUZvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5n
Q29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRleCBjM2Y3ODA2
N2RlMTEuLjg0YTRkZmFjZDgwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zv
cm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZv
cm1hdHRpbmdDb250ZXh0LmNwcApAQCAtNzIsNyArNzIsNyBAQCBJbmxpbmVGb3JtYXR0aW5nQ29u
dGV4dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQoY29uc3QgRWxlbWVudEJveCYgZm9ybWF0dGlu
Z0NvbgogCiBJbmxpbmVMYXlvdXRSZXN1bHQgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmxheW91
dChjb25zdCBDb25zdHJhaW50c0ZvcklubGluZUNvbnRlbnQmIGNvbnN0cmFpbnRzLCBjb25zdCBJ
bmxpbmVEYW1hZ2UqIGxpbmVEYW1hZ2UpCiB7Ci0gICAgYXV0byYgcGxhY2VkRmxvYXRzID0gdGhp
cy0+cGxhY2VkRmxvYXRzKCk7CisgICAgYXV0byYgcGxhY2VkRmxvYXRzID0gaW5saW5lTGF5b3V0
U3RhdGUoKS5wbGFjZWRGbG9hdHMoKTsKICAgICBpZiAoIXJvb3QoKS5oYXNJbkZsb3dDaGlsZCgp
ICYmICFyb290KCkuaGFzT3V0T2ZGbG93Q2hpbGQoKSkgewogICAgICAgICAvLyBGbG9hdCBvbmx5
IGNvbnRlbnQgZG9lcyBub3Qgc3VwcG9ydCBwYXJ0aWFsIGxheW91dC4KICAgICAgICAgQVNTRVJU
KCFsaW5lRGFtYWdlKTsKQEAgLTE3Niw3ICsxNzYsNyBAQCBJbmxpbmVMYXlvdXRSZXN1bHQgSW5s
aW5lRm9ybWF0dGluZ0NvbnRleHQ6OmxpbmVMYXlvdXQoQWJzdHJhY3RMaW5lQnVpbGRlciYgbGlu
ZQogICAgICAgICByZXR1cm4gbGF5b3V0UmVzdWx0OwogICAgIH0KIAotICAgIGF1dG8gZmxvYXRp
bmdDb250ZXh0ID0gRmxvYXRpbmdDb250ZXh0IHsgKnRoaXMsIHBsYWNlZEZsb2F0cygpIH07Cisg
ICAgYXV0byBmbG9hdGluZ0NvbnRleHQgPSBGbG9hdGluZ0NvbnRleHQgeyAqdGhpcywgaW5saW5l
TGF5b3V0U3RhdGUoKS5wbGFjZWRGbG9hdHMoKSB9OwogICAgIGF1dG8gbGluZUxvZ2ljYWxUb3Ag
PSBJbmxpbmVMYXlvdXRVbml0IHsgY29uc3RyYWludHMubG9naWNhbFRvcCgpIH07CiAgICAgYXV0
byBwcmV2aW91c0xpbmVFbmQgPSBzdGQ6Om9wdGlvbmFsPElubGluZUl0ZW1Qb3NpdGlvbj4geyB9
OwogICAgIGF1dG8gbGVhZGluZ0lubGluZUl0ZW1Qb3NpdGlvbiA9IG5lZWRzTGF5b3V0UmFuZ2Uu
c3RhcnQ7CkBAIC0yMTcsNyArMjE3LDcgQEAgdm9pZCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6
bGF5b3V0RmxvYXRDb250ZW50T25seShjb25zdCBDb25zdHJhaW50c0ZvcklubGluZUMKICAgICBB
U1NFUlQoIXJvb3QoKS5oYXNJbkZsb3dDaGlsZCgpKTsKIAogICAgIGF1dG8mIGlubGluZUNvbnRl
bnRDYWNoZSA9IHRoaXMtPmlubGluZUNvbnRlbnRDYWNoZSgpOwotICAgIGF1dG8mIHBsYWNlZEZs
b2F0cyA9IHRoaXMtPnBsYWNlZEZsb2F0cygpOworICAgIGF1dG8mIHBsYWNlZEZsb2F0cyA9IGlu
bGluZUxheW91dFN0YXRlKCkucGxhY2VkRmxvYXRzKCk7CiAgICAgYXV0byBmbG9hdGluZ0NvbnRl
eHQgPSBGbG9hdGluZ0NvbnRleHQgeyAqdGhpcywgcGxhY2VkRmxvYXRzIH07CiAKICAgICBJbmxp
bmVJdGVtc0J1aWxkZXIgeyBpbmxpbmVDb250ZW50Q2FjaGUsIHJvb3QoKSB9LmJ1aWxkKHsgfSk7
CkBAIC0zMzksNyArMzM5LDcgQEAgYm9vbCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y3JlYXRl
RGlzcGxheUNvbnRlbnRGb3JMaW5lRnJvbUNhY2hlZENvbnRlbnQoY29uc3QKICAgICAgICAgaW5s
aW5lQ29udGVudENhY2hlLmNsZWFyTWF4aW11bUludHJpbnNpY1dpZHRoTGF5b3V0UmVzdWx0KCk7
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgaWYgKCFwbGFjZWRGbG9hdHMoKS5p
c0VtcHR5KCkpIHsKKyAgICBpZiAoIWlubGluZUxheW91dFN0YXRlKCkucGxhY2VkRmxvYXRzKCku
aXNFbXB0eSgpKSB7CiAgICAgICAgIGlubGluZUNvbnRlbnRDYWNoZS5jbGVhck1heGltdW1JbnRy
aW5zaWNXaWR0aExheW91dFJlc3VsdCgpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3Jt
YXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmgKaW5kZXggNmE0
YTk1MTdhZTgxLi5lY2JiZTQxODViOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5l
Rm9ybWF0dGluZ0NvbnRleHQuaApAQCAtNjUsMTMgKzY1LDExIEBAIHB1YmxpYzoKIAogICAgIGNv
bnN0IElubGluZUZvcm1hdHRpbmdVdGlscyYgZm9ybWF0dGluZ1V0aWxzKCkgY29uc3QgeyByZXR1
cm4gbV9pbmxpbmVGb3JtYXR0aW5nVXRpbHM7IH0KICAgICBjb25zdCBJbmxpbmVRdWlya3MmIHF1
aXJrcygpIGNvbnN0IHsgcmV0dXJuIG1faW5saW5lUXVpcmtzOyB9CisKICAgICAvLyBGSVhNRTog
VGhpcyBzaG91bGQganVzdCBiZSAibGF5b3V0IHN0YXRlIiAocGVuZGluZyBvbiByZW5hbWluZyBM
YXlvdXRTdGF0ZSkuCiAgICAgSW5saW5lTGF5b3V0U3RhdGUmIGlubGluZUxheW91dFN0YXRlKCkg
eyByZXR1cm4gbV9pbmxpbmVMYXlvdXRTdGF0ZTsgfQogICAgIGNvbnN0IElubGluZUxheW91dFN0
YXRlJiBpbmxpbmVMYXlvdXRTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW5saW5lTGF5b3V0U3Rh
dGU7IH0KIAotICAgIFBsYWNlZEZsb2F0cyYgcGxhY2VkRmxvYXRzKCkgeyByZXR1cm4gaW5saW5l
TGF5b3V0U3RhdGUoKS5wYXJlbnRCbG9ja0xheW91dFN0YXRlKCkucGxhY2VkRmxvYXRzKCk7IH0K
LSAgICBjb25zdCBQbGFjZWRGbG9hdHMmIHBsYWNlZEZsb2F0cygpIGNvbnN0IHsgcmV0dXJuIGlu
bGluZUxheW91dFN0YXRlKCkucGFyZW50QmxvY2tMYXlvdXRTdGF0ZSgpLnBsYWNlZEZsb2F0cygp
OyB9Ci0KIHByaXZhdGU6CiAgICAgSW5saW5lTGF5b3V0UmVzdWx0IGxpbmVMYXlvdXQoQWJzdHJh
Y3RMaW5lQnVpbGRlciYsIGNvbnN0IElubGluZUl0ZW1zJiwgSW5saW5lSXRlbVJhbmdlLCBzdGQ6
Om9wdGlvbmFsPFByZXZpb3VzTGluZT4sIGNvbnN0IENvbnN0cmFpbnRzRm9ySW5saW5lQ29udGVu
dCYsIGNvbnN0IElubGluZURhbWFnZSogPSBudWxscHRyKTsKICAgICB2b2lkIGxheW91dEZsb2F0
Q29udGVudE9ubHkoY29uc3QgQ29uc3RyYWludHNGb3JJbmxpbmVDb250ZW50Jik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9Jbmxp
bmVMYXlvdXRTdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0
cy9pbmxpbmUvSW5saW5lTGF5b3V0U3RhdGUuaAppbmRleCA4OTU5NTAyMTZjODcuLjUyNWE1OWY3
MGVhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0
cy9pbmxpbmUvSW5saW5lTGF5b3V0U3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
Zm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMYXlvdXRTdGF0ZS5oCkBAIC00NCw2ICs0
NCw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBCbG9ja0xheW91dFN0YXRlJiBwYXJlbnRCbG9ja0xh
eW91dFN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRCbG9ja0xheW91dFN0YXRlOyB9CiAg
ICAgQmxvY2tMYXlvdXRTdGF0ZSYgcGFyZW50QmxvY2tMYXlvdXRTdGF0ZSgpIHsgcmV0dXJuIG1f
cGFyZW50QmxvY2tMYXlvdXRTdGF0ZTsgfQogCisgICAgY29uc3QgUGxhY2VkRmxvYXRzJiBwbGFj
ZWRGbG9hdHMoKSBjb25zdCB7IHJldHVybiBtX3BhcmVudEJsb2NrTGF5b3V0U3RhdGUucGxhY2Vk
RmxvYXRzKCk7IH0KKyAgICBQbGFjZWRGbG9hdHMmIHBsYWNlZEZsb2F0cygpIHsgcmV0dXJuIG1f
cGFyZW50QmxvY2tMYXlvdXRTdGF0ZS5wbGFjZWRGbG9hdHMoKTsgfQorCiAgICAgdm9pZCBzZXRB
dmFpbGFibGVMaW5lV2lkdGhPdmVycmlkZShBdmFpbGFibGVMaW5lV2lkdGhPdmVycmlkZSBhdmFp
bGFibGVMaW5lV2lkdGhPdmVycmlkZSkgeyBtX2F2YWlsYWJsZUxpbmVXaWR0aE92ZXJyaWRlID0g
YXZhaWxhYmxlTGluZVdpZHRoT3ZlcnJpZGU7IH0KICAgICBjb25zdCBBdmFpbGFibGVMaW5lV2lk
dGhPdmVycmlkZSYgYXZhaWxhYmxlTGluZVdpZHRoT3ZlcnJpZGUoKSBjb25zdCB7IHJldHVybiBt
X2F2YWlsYWJsZUxpbmVXaWR0aE92ZXJyaWRlOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCb3hCdWlsZGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lu
bGluZUxpbmVCb3hCdWlsZGVyLmNwcAppbmRleCAzYWE4ZjYzZWZiNjEuLjY1YzM2Y2FjZWFlNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lTGluZUJveEJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9m
b3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCb3hCdWlsZGVyLmNwcApAQCAtNjkw
LDcgKzY5MCw3IEBAIHZvaWQgTGluZUJveEJ1aWxkZXI6OmNvbXB1dGVMaW5lQm94R2VvbWV0cnko
TGluZUJveCYgbGluZUJveCkgY29uc3QKIAogdm9pZCBMaW5lQm94QnVpbGRlcjo6YWRqdXN0T3V0
c2lkZUxpc3RNYXJrZXJzUG9zaXRpb24oTGluZUJveCYgbGluZUJveCkKIHsKLSAgICBhdXRvIGZs
b2F0aW5nQ29udGV4dCA9IEZsb2F0aW5nQ29udGV4dCB7IGZvcm1hdHRpbmdDb250ZXh0KCksIGZv
cm1hdHRpbmdDb250ZXh0KCkucGxhY2VkRmxvYXRzKCkgfTsKKyAgICBhdXRvIGZsb2F0aW5nQ29u
dGV4dCA9IEZsb2F0aW5nQ29udGV4dCB7IGZvcm1hdHRpbmdDb250ZXh0KCksIGlubGluZUxheW91
dFN0YXRlKCkucGxhY2VkRmxvYXRzKCkgfTsKICAgICBhdXRvIGxpbmVCb3hSZWN0ID0gbGluZUJv
eC5sb2dpY2FsUmVjdCgpOwogICAgIGF1dG8gZmxvYXRDb25zdHJhaW50cyA9IGZsb2F0aW5nQ29u
dGV4dC5jb25zdHJhaW50cyhMYXlvdXRVbml0IHsgbGluZUJveFJlY3QudG9wKCkgfSwgTGF5b3V0
VW5pdCB7IGxpbmVCb3hSZWN0LmJvdHRvbSgpIH0sIEZsb2F0aW5nQ29udGV4dDo6TWF5QmVBYm92
ZUxhc3RGbG9hdDo6Tm8pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9y
bWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lQnVpbGRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lQnVpbGRlci5j
cHAKaW5kZXggMWJlYzUzYjNjNzgyLi4wZTg0ZTVmZGM4MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGlu
ZS9JbmxpbmVMaW5lQnVpbGRlci5jcHAKQEAgLTIyOSw2ICsyMjksNyBAQCBMaW5lQnVpbGRlcjo6
TGluZUJ1aWxkZXIoSW5saW5lRm9ybWF0dGluZ0NvbnRleHQmIGlubGluZUZvcm1hdHRpbmdDb250
ZXh0LCBIb3JpegogICAgIDogbV9pbmxpbmVGb3JtYXR0aW5nQ29udGV4dChpbmxpbmVGb3JtYXR0
aW5nQ29udGV4dCkKICAgICAsIG1fcm9vdEhvcml6b250YWxDb25zdHJhaW50cyhyb290SG9yaXpv
bnRhbENvbnN0cmFpbnRzKQogICAgICwgbV9saW5lKGlubGluZUZvcm1hdHRpbmdDb250ZXh0KQor
ICAgICwgbV9mbG9hdGluZ0NvbnRleHQoaW5saW5lRm9ybWF0dGluZ0NvbnRleHQsIGlubGluZUZv
cm1hdHRpbmdDb250ZXh0LmlubGluZUxheW91dFN0YXRlKCkucGxhY2VkRmxvYXRzKCkpCiAgICAg
LCBtX2lubGluZUl0ZW1zKGlubGluZUl0ZW1zKQogewogfQpAQCAtNzQyLDEwICs3NDMsMTAgQEAg
c3RhdGljIGlubGluZSBJbmxpbmVMYXlvdXRVbml0IGF2YWlsYWJsZVdpZHRoKGNvbnN0IExpbmVD
YW5kaWRhdGU6OklubGluZUNvbnRlbnQKIExpbmVCdWlsZGVyOjpVc2VkQ29uc3RyYWludHMgTGlu
ZUJ1aWxkZXI6OmZsb2F0Q29uc3RyYWluZWRSZWN0KGNvbnN0IElubGluZVJlY3QmIGxvZ2ljYWxS
ZWN0LCBJbmxpbmVMYXlvdXRVbml0IG1hcmdpblN0YXJ0KSBjb25zdAogewogICAgIGF1dG8gY29u
c3RyYWludHMgPSBbJl0oKSAtPiBMaW5lQnVpbGRlcjo6VXNlZENvbnN0cmFpbnRzIHsKLSAgICAg
ICAgaWYgKGlzSW5JbnRyaW5zaWNXaWR0aE1vZGUoKSB8fCBwbGFjZWRGbG9hdHMoKS5pc0VtcHR5
KCkpCisgICAgICAgIGlmIChpc0luSW50cmluc2ljV2lkdGhNb2RlKCkgfHwgZmxvYXRpbmdDb250
ZXh0KCkuaXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJuIHsgbG9naWNhbFJlY3QsIG1hcmdp
blN0YXJ0LCB7IH0gfTsKIAotICAgICAgICBhdXRvIGNvbnN0cmFpbnRzID0gZm9ybWF0dGluZ0Nv
bnRleHQoKS5mb3JtYXR0aW5nVXRpbHMoKS5mbG9hdENvbnN0cmFpbnRzRm9yTGluZShsb2dpY2Fs
UmVjdC50b3AoKSwgbG9naWNhbFJlY3QuaGVpZ2h0KCksIEZsb2F0aW5nQ29udGV4dCB7IGZvcm1h
dHRpbmdDb250ZXh0KCksIHBsYWNlZEZsb2F0cygpIH0pOworICAgICAgICBhdXRvIGNvbnN0cmFp
bnRzID0gZm9ybWF0dGluZ0NvbnRleHQoKS5mb3JtYXR0aW5nVXRpbHMoKS5mbG9hdENvbnN0cmFp
bnRzRm9yTGluZShsb2dpY2FsUmVjdC50b3AoKSwgbG9naWNhbFJlY3QuaGVpZ2h0KCksIGZsb2F0
aW5nQ29udGV4dCgpKTsKICAgICAgICAgaWYgKCFjb25zdHJhaW50cy5sZWZ0ICYmICFjb25zdHJh
aW50cy5yaWdodCkKICAgICAgICAgICAgIHJldHVybiB7IGxvZ2ljYWxSZWN0LCBtYXJnaW5TdGFy
dCwgeyB9IH07CiAKQEAgLTg4OCw3ICs4ODksNyBAQCBib29sIExpbmVCdWlsZGVyOjp0cnlQbGFj
aW5nRmxvYXRCb3goY29uc3QgQm94JiBmbG9hdEJveCwgTWF5T3ZlckNvbnN0cmFpbkxpbmUgbQog
ICAgIGlmIChpc0Zsb2F0TGF5b3V0U3VzcGVuZGVkKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAotICAgIGF1dG8gZmxvYXRpbmdDb250ZXh0ID0gRmxvYXRpbmdDb250ZXh0IHsgZm9ybWF0dGlu
Z0NvbnRleHQoKSwgcGxhY2VkRmxvYXRzKCkgfTsKKyAgICBhdXRvJiBmbG9hdGluZ0NvbnRleHQg
PSB0aGlzLT5mbG9hdGluZ0NvbnRleHQoKTsKICAgICBhdXRvIGJveEdlb21ldHJ5ID0gWyZdKCkg
LT4gQm94R2VvbWV0cnkgewogICAgICAgICBhdXRvIG1hcmdpblRyaW0gPSByb290U3R5bGUoKS5t
YXJnaW5UcmltKCk7CiAgICAgICAgIGlmICghbWFyZ2luVHJpbS5jb250YWluc0FueSh7IE1hcmdp
blRyaW1UeXBlOjpJbmxpbmVTdGFydCwgTWFyZ2luVHJpbVR5cGU6OklubGluZUVuZCB9KSB8fCBt
X2xpbmVJc0NvbnN0cmFpbmVkQnlGbG9hdC5jb250YWluc0FsbCh7IFVzZWRGbG9hdDo6TGVmdCwg
VXNlZEZsb2F0OjpSaWdodCB9KSkKQEAgLTk1NSw4ICs5NTYsNyBAQCBib29sIExpbmVCdWlsZGVy
Ojp0cnlQbGFjaW5nRmxvYXRCb3goY29uc3QgQm94JiBmbG9hdEJveCwgTWF5T3ZlckNvbnN0cmFp
bkxpbmUgbQogICAgIGF1dG8gcGxhY2VGbG9hdEJveCA9IFsmXSB7CiAgICAgICAgIGF1dG8gbGlu
ZUluZGV4ID0gbV9wcmV2aW91c0xpbmUgPyAobV9wcmV2aW91c0xpbmUtPmxpbmVJbmRleCArIDEp
IDogMGx1OwogICAgICAgICBhdXRvIGZsb2F0SXRlbSA9IGZsb2F0aW5nQ29udGV4dC5tYWtlRmxv
YXRJdGVtKGZsb2F0Qm94LCBib3hHZW9tZXRyeSwgbGluZUluZGV4KTsKLSAgICAgICAgLy8gRklY
TUU6IE1heWJlIEZsb2F0aW5nQ29udGV4dCBzaG91bGQgYmUgYWJsZSB0byBwcmVzZXJ2ZSBGbG9h
dEl0ZW1zIGFuZCB0aGUgY2FsbGVyIHNob3VsZCBtdXRhdGUgdGhlIFBsYWNlZEZsb2F0cyBpbnN0
ZWFkLgotICAgICAgICBwbGFjZWRGbG9hdHMoKS5hcHBlbmQoZmxvYXRJdGVtKTsKKyAgICAgICAg
aW5saW5lTGF5b3V0U3RhdGUoKS5wbGFjZWRGbG9hdHMoKS5hcHBlbmQoZmxvYXRJdGVtKTsKICAg
ICAgICAgbV9wbGFjZWRGbG9hdHMuYXBwZW5kKGZsb2F0SXRlbSk7CiAgICAgfTsKICAgICBwbGFj
ZUZsb2F0Qm94KCk7CkBAIC0xMjM4LDkgKzEyMzgsOSBAQCBjb25zdCBJbmxpbmVMYXlvdXRTdGF0
ZSYgTGluZUJ1aWxkZXI6OmlubGluZUxheW91dFN0YXRlKCkgY29uc3QKICAgICByZXR1cm4gZm9y
bWF0dGluZ0NvbnRleHQoKS5pbmxpbmVMYXlvdXRTdGF0ZSgpOwogfQogCi1QbGFjZWRGbG9hdHMm
IExpbmVCdWlsZGVyOjpwbGFjZWRGbG9hdHMoKQorSW5saW5lTGF5b3V0U3RhdGUmIExpbmVCdWls
ZGVyOjppbmxpbmVMYXlvdXRTdGF0ZSgpCiB7Ci0gICAgcmV0dXJuIGZvcm1hdHRpbmdDb250ZXh0
KCkucGxhY2VkRmxvYXRzKCk7CisgICAgcmV0dXJuIGZvcm1hdHRpbmdDb250ZXh0KCkuaW5saW5l
TGF5b3V0U3RhdGUoKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJ1aWxkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVy
LmgKaW5kZXggMDQyMmZiNzU0MDIyLi5kZGM0MGJjYzNlZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lTGluZUJ1aWxkZXIuaApAQCAtOTMsMTAgKzkzLDExIEBAIHByaXZhdGU6CiAKICAgICBJ
bmxpbmVGb3JtYXR0aW5nQ29udGV4dCYgZm9ybWF0dGluZ0NvbnRleHQoKSB7IHJldHVybiBtX2lu
bGluZUZvcm1hdHRpbmdDb250ZXh0OyB9CiAgICAgY29uc3QgSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQmIGZvcm1hdHRpbmdDb250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV9pbmxpbmVGb3JtYXR0aW5n
Q29udGV4dDsgfQorICAgIGNvbnN0IEZsb2F0aW5nQ29udGV4dCYgZmxvYXRpbmdDb250ZXh0KCkg
Y29uc3QgeyByZXR1cm4gbV9mbG9hdGluZ0NvbnRleHQ7IH0KKwogICAgIGNvbnN0IElubGluZUxh
eW91dFN0YXRlJiBpbmxpbmVMYXlvdXRTdGF0ZSgpIGNvbnN0OworICAgIElubGluZUxheW91dFN0
YXRlJiBpbmxpbmVMYXlvdXRTdGF0ZSgpOwogICAgIGNvbnN0IEJsb2NrTGF5b3V0U3RhdGUmIGJs
b2NrTGF5b3V0U3RhdGUoKSBjb25zdCB7IHJldHVybiBpbmxpbmVMYXlvdXRTdGF0ZSgpLnBhcmVu
dEJsb2NrTGF5b3V0U3RhdGUoKTsgfQotICAgIFBsYWNlZEZsb2F0cyYgcGxhY2VkRmxvYXRzKCk7
Ci0gICAgY29uc3QgUGxhY2VkRmxvYXRzJiBwbGFjZWRGbG9hdHMoKSBjb25zdCB7IHJldHVybiBj
b25zdF9jYXN0PExpbmVCdWlsZGVyJj4oKnRoaXMpLnBsYWNlZEZsb2F0cygpOyB9CiAgICAgY29u
c3QgRWxlbWVudEJveCYgcm9vdCgpIGNvbnN0OwogICAgIGNvbnN0IFJlbmRlclN0eWxlJiByb290
U3R5bGUoKSBjb25zdDsKIApAQCAtMTA2LDYgKzEwNyw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjpv
cHRpb25hbDxIb3Jpem9udGFsQ29uc3RyYWludHM+IG1fcm9vdEhvcml6b250YWxDb25zdHJhaW50
czsKIAogICAgIExpbmUgbV9saW5lOworICAgIEZsb2F0aW5nQ29udGV4dCBtX2Zsb2F0aW5nQ29u
dGV4dDsKICAgICBJbmxpbmVSZWN0IG1fbGluZUluaXRpYWxMb2dpY2FsUmVjdDsKICAgICBJbmxp
bmVSZWN0IG1fbGluZUxvZ2ljYWxSZWN0OwogICAgIElubGluZUxheW91dFVuaXQgbV9saW5lTWFy
Z2luU3RhcnQgeyAwLmYgfTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>468068</attachid>
            <date>2023-10-04 14:38:58 -0700</date>
            <delta_ts>2023-10-04 19:37:57 -0700</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-262571-20231004143857.patch</filename>
            <type>text/plain</type>
            <size>13259</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBhMDM1MTc0Nzk1ZjZjOGI2MzcxZmE1NWFhMzRmZjdjMjg0MjUyOWE4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFdlZCwgNCBPY3QgMjAyMyAxNDozNzozMCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIFtJRkNdW0Ns
ZWFudXBdIExldCdzIGFjY2VzcyBwbGFjZWQgZmxvYXRzIHRocm91Z2ggaW5saW5lCiBsYXlvdXQg
c3RhdGUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2MjU3MQoKUmV2
aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCgoqIFNvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUNvbnRlbnRCYWxhbmNlci5jcHA6CihXZWJDb3JlOjpM
YXlvdXQ6OklubGluZUNvbnRlbnRCYWxhbmNlcjo6aW5pdGlhbGl6ZSk6CiogU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQuY3BwOgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0
KToKKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmxpbmVMYXlvdXQp
OgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0RmxvYXRD
b250ZW50T25seSk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpj
cmVhdGVEaXNwbGF5Q29udGVudEZvckxpbmVGcm9tQ2FjaGVkQ29udGVudCk6CiogU291cmNlL1dl
YkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0Nv
bnRleHQuaDoKKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OnBsYWNl
ZEZsb2F0cyk6IERlbGV0ZWQuCihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250
ZXh0OjpwbGFjZWRGbG9hdHMgY29uc3QpOiBEZWxldGVkLgoqIFNvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxheW91dFN0YXRlLmg6CihXZWJDb3Jl
OjpMYXlvdXQ6OklubGluZUxheW91dFN0YXRlOjpwbGFjZWRGbG9hdHMgY29uc3QpOgooV2ViQ29y
ZTo6TGF5b3V0OjpJbmxpbmVMYXlvdXRTdGF0ZTo6cGxhY2VkRmxvYXRzKToKKiBTb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lQm94QnVpbGRl
ci5jcHA6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCb3hCdWlsZGVyOjphZGp1c3RPdXRzaWRlTGlz
dE1hcmtlcnNQb3NpdGlvbik6CiogU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250
ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJ1aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5l
QnVpbGRlcjo6TGluZUJ1aWxkZXIpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lQnVpbGRlcjo6Zmxv
YXRDb25zdHJhaW5lZFJlY3QgY29uc3QpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lQnVpbGRlcjo6
dHJ5UGxhY2luZ0Zsb2F0Qm94KToKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6OmlubGlu
ZUxheW91dFN0YXRlKToKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6OnBsYWNlZEZsb2F0
cyk6IERlbGV0ZWQuCiogU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9p
bmxpbmUvSW5saW5lTGluZUJ1aWxkZXIuaDoKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6
OmZsb2F0aW5nQ29udGV4dCBjb25zdCk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCdWlsZGVyOjpi
bG9ja0xheW91dFN0YXRlIGNvbnN0KToKKFdlYkNvcmU6OkxheW91dDo6TGluZUJ1aWxkZXI6OnBs
YWNlZEZsb2F0cyBjb25zdCk6IERlbGV0ZWQuCi0tLQogLi4uL2lubGluZS9JbmxpbmVDb250ZW50
QmFsYW5jZXIuY3BwICAgICAgICAgICAgICAgfCAgMiArLQogLi4uL2lubGluZS9JbmxpbmVGb3Jt
YXR0aW5nQ29udGV4dC5jcHAgICAgICAgICAgICAgfCAgOCArKysrLS0tLQogLi4uL2lubGluZS9J
bmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oICAgICAgICAgICAgICAgfCAgNCArLS0tCiAuLi4vZm9y
bWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMYXlvdXRTdGF0ZS5oICB8ICAzICsrKwogLi4u
L2lubGluZS9JbmxpbmVMaW5lQm94QnVpbGRlci5jcHAgICAgICAgICAgICAgICAgfCAgMiArLQog
Li4uL2lubGluZS9JbmxpbmVMaW5lQnVpbGRlci5jcHAgICAgICAgICAgICAgICAgICAgfCAxNCAr
KysrKysrLS0tLS0tLQogLi4uL2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJ1
aWxkZXIuaCAgfCAgNiArKysrLS0KIDcgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwg
MTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1h
dHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lQ29udGVudEJhbGFuY2VyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUNvbnRlbnRCYWxh
bmNlci5jcHAKaW5kZXggM2FiNWIzODgyMDJmLi45NGE5YTYyY2EyZmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUNvbnRl
bnRCYWxhbmNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250
ZXh0cy9pbmxpbmUvSW5saW5lQ29udGVudEJhbGFuY2VyLmNwcApAQCAtMTEyLDcgKzExMiw3IEBA
IElubGluZUNvbnRlbnRCYWxhbmNlcjo6SW5saW5lQ29udGVudEJhbGFuY2VyKElubGluZUZvcm1h
dHRpbmdDb250ZXh0JiBpbmxpbmVGb3JtCiAKIHZvaWQgSW5saW5lQ29udGVudEJhbGFuY2VyOjpp
bml0aWFsaXplKCkKIHsKLSAgICBpZiAoIW1faW5saW5lRm9ybWF0dGluZ0NvbnRleHQucGxhY2Vk
RmxvYXRzKCkuaXNFbXB0eSgpKSB7CisgICAgaWYgKCFtX2lubGluZUZvcm1hdHRpbmdDb250ZXh0
LmlubGluZUxheW91dFN0YXRlKCkucGxhY2VkRmxvYXRzKCkuaXNFbXB0eSgpKSB7CiAgICAgICAg
IG1fY2Fubm90QmFsYW5jZUNvbnRlbnQgPSB0cnVlOwogICAgICAgICByZXR1cm47CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zv
cm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4
IDNhYmEyYWUwN2MwNS4uZGU5NTFkZTlkZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC03Miw3ICs3Miw3IEBAIElubGluZUZvcm1h
dHRpbmdDb250ZXh0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dChjb25zdCBFbGVtZW50Qm94JiBm
b3JtYXR0aW5nQ29uCiAKIElubGluZUxheW91dFJlc3VsdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4
dDo6bGF5b3V0KGNvbnN0IENvbnN0cmFpbnRzRm9ySW5saW5lQ29udGVudCYgY29uc3RyYWludHMs
IGNvbnN0IElubGluZURhbWFnZSogbGluZURhbWFnZSkKIHsKLSAgICBhdXRvJiBwbGFjZWRGbG9h
dHMgPSB0aGlzLT5wbGFjZWRGbG9hdHMoKTsKKyAgICBhdXRvJiBwbGFjZWRGbG9hdHMgPSBpbmxp
bmVMYXlvdXRTdGF0ZSgpLnBsYWNlZEZsb2F0cygpOwogICAgIGlmICghcm9vdCgpLmhhc0luRmxv
d0NoaWxkKCkgJiYgIXJvb3QoKS5oYXNPdXRPZkZsb3dDaGlsZCgpKSB7CiAgICAgICAgIC8vIEZs
b2F0IG9ubHkgY29udGVudCBkb2VzIG5vdCBzdXBwb3J0IHBhcnRpYWwgbGF5b3V0LgogICAgICAg
ICBBU1NFUlQoIWxpbmVEYW1hZ2UpOwpAQCAtMTc2LDcgKzE3Niw3IEBAIElubGluZUxheW91dFJl
c3VsdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGluZUxheW91dChBYnN0cmFjdExpbmVCdWls
ZGVyJiBsaW5lCiAgICAgICAgIHJldHVybiBsYXlvdXRSZXN1bHQ7CiAgICAgfQogCi0gICAgYXV0
byBmbG9hdGluZ0NvbnRleHQgPSBGbG9hdGluZ0NvbnRleHQgeyAqdGhpcywgcGxhY2VkRmxvYXRz
KCkgfTsKKyAgICBhdXRvIGZsb2F0aW5nQ29udGV4dCA9IEZsb2F0aW5nQ29udGV4dCB7ICp0aGlz
LCBpbmxpbmVMYXlvdXRTdGF0ZSgpLnBsYWNlZEZsb2F0cygpIH07CiAgICAgYXV0byBsaW5lTG9n
aWNhbFRvcCA9IElubGluZUxheW91dFVuaXQgeyBjb25zdHJhaW50cy5sb2dpY2FsVG9wKCkgfTsK
ICAgICBhdXRvIHByZXZpb3VzTGluZUVuZCA9IHN0ZDo6b3B0aW9uYWw8SW5saW5lSXRlbVBvc2l0
aW9uPiB7IH07CiAgICAgYXV0byBsZWFkaW5nSW5saW5lSXRlbVBvc2l0aW9uID0gbmVlZHNMYXlv
dXRSYW5nZS5zdGFydDsKQEAgLTIxNyw3ICsyMTcsNyBAQCB2b2lkIElubGluZUZvcm1hdHRpbmdD
b250ZXh0OjpsYXlvdXRGbG9hdENvbnRlbnRPbmx5KGNvbnN0IENvbnN0cmFpbnRzRm9ySW5saW5l
QwogICAgIEFTU0VSVCghcm9vdCgpLmhhc0luRmxvd0NoaWxkKCkpOwogCiAgICAgYXV0byYgaW5s
aW5lQ29udGVudENhY2hlID0gdGhpcy0+aW5saW5lQ29udGVudENhY2hlKCk7Ci0gICAgYXV0byYg
cGxhY2VkRmxvYXRzID0gdGhpcy0+cGxhY2VkRmxvYXRzKCk7CisgICAgYXV0byYgcGxhY2VkRmxv
YXRzID0gaW5saW5lTGF5b3V0U3RhdGUoKS5wbGFjZWRGbG9hdHMoKTsKICAgICBhdXRvIGZsb2F0
aW5nQ29udGV4dCA9IEZsb2F0aW5nQ29udGV4dCB7ICp0aGlzLCBwbGFjZWRGbG9hdHMgfTsKIAog
ICAgIElubGluZUl0ZW1zQnVpbGRlciB7IGlubGluZUNvbnRlbnRDYWNoZSwgcm9vdCgpIH0uYnVp
bGQoeyB9KTsKQEAgLTMzOSw3ICszMzksNyBAQCBib29sIElubGluZUZvcm1hdHRpbmdDb250ZXh0
OjpjcmVhdGVEaXNwbGF5Q29udGVudEZvckxpbmVGcm9tQ2FjaGVkQ29udGVudChjb25zdAogICAg
ICAgICBpbmxpbmVDb250ZW50Q2FjaGUuY2xlYXJNYXhpbXVtSW50cmluc2ljV2lkdGhMYXlvdXRS
ZXN1bHQoKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KLSAgICBpZiAoIXBsYWNlZEZs
b2F0cygpLmlzRW1wdHkoKSkgeworICAgIGlmICghaW5saW5lTGF5b3V0U3RhdGUoKS5wbGFjZWRG
bG9hdHMoKS5pc0VtcHR5KCkpIHsKICAgICAgICAgaW5saW5lQ29udGVudENhY2hlLmNsZWFyTWF4
aW11bUludHJpbnNpY1dpZHRoTGF5b3V0UmVzdWx0KCk7CiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRl
eHRzL2lubGluZS9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaApp
bmRleCA2NmY3MGIyYjcwMmEuLmY5MzI5ZmFhODY3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGlu
ZS9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oCkBAIC02NSwxMyArNjUsMTEgQEAgcHVibGljOgog
CiAgICAgY29uc3QgSW5saW5lRm9ybWF0dGluZ1V0aWxzJiBmb3JtYXR0aW5nVXRpbHMoKSBjb25z
dCB7IHJldHVybiBtX2lubGluZUZvcm1hdHRpbmdVdGlsczsgfQogICAgIGNvbnN0IElubGluZVF1
aXJrcyYgcXVpcmtzKCkgY29uc3QgeyByZXR1cm4gbV9pbmxpbmVRdWlya3M7IH0KKwogICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZCBqdXN0IGJlICJsYXlvdXQgc3RhdGUiIChwZW5kaW5nIG9uIHJl
bmFtaW5nIExheW91dFN0YXRlKS4KICAgICBJbmxpbmVMYXlvdXRTdGF0ZSYgaW5saW5lTGF5b3V0
U3RhdGUoKSB7IHJldHVybiBtX2lubGluZUxheW91dFN0YXRlOyB9CiAgICAgY29uc3QgSW5saW5l
TGF5b3V0U3RhdGUmIGlubGluZUxheW91dFN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9pbmxpbmVM
YXlvdXRTdGF0ZTsgfQogCi0gICAgUGxhY2VkRmxvYXRzJiBwbGFjZWRGbG9hdHMoKSB7IHJldHVy
biBpbmxpbmVMYXlvdXRTdGF0ZSgpLnBhcmVudEJsb2NrTGF5b3V0U3RhdGUoKS5wbGFjZWRGbG9h
dHMoKTsgfQotICAgIGNvbnN0IFBsYWNlZEZsb2F0cyYgcGxhY2VkRmxvYXRzKCkgY29uc3QgeyBy
ZXR1cm4gaW5saW5lTGF5b3V0U3RhdGUoKS5wYXJlbnRCbG9ja0xheW91dFN0YXRlKCkucGxhY2Vk
RmxvYXRzKCk7IH0KLQogcHJpdmF0ZToKICAgICBJbmxpbmVMYXlvdXRSZXN1bHQgbGluZUxheW91
dChBYnN0cmFjdExpbmVCdWlsZGVyJiwgY29uc3QgSW5saW5lSXRlbUxpc3QmLCBJbmxpbmVJdGVt
UmFuZ2UsIHN0ZDo6b3B0aW9uYWw8UHJldmlvdXNMaW5lPiwgY29uc3QgQ29uc3RyYWludHNGb3JJ
bmxpbmVDb250ZW50JiwgY29uc3QgSW5saW5lRGFtYWdlKiA9IG51bGxwdHIpOwogICAgIHZvaWQg
bGF5b3V0RmxvYXRDb250ZW50T25seShjb25zdCBDb25zdHJhaW50c0ZvcklubGluZUNvbnRlbnQm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMv
aW5saW5lL0lubGluZUxheW91dFN0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0
dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMYXlvdXRTdGF0ZS5oCmluZGV4IDg5NTk1MDIxNmM4
Ny4uNTI1YTU5ZjcwZWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0
dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMYXlvdXRTdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxheW91dFN0YXRlLmgK
QEAgLTQ0LDYgKzQ0LDkgQEAgcHVibGljOgogICAgIGNvbnN0IEJsb2NrTGF5b3V0U3RhdGUmIHBh
cmVudEJsb2NrTGF5b3V0U3RhdGUoKSBjb25zdCB7IHJldHVybiBtX3BhcmVudEJsb2NrTGF5b3V0
U3RhdGU7IH0KICAgICBCbG9ja0xheW91dFN0YXRlJiBwYXJlbnRCbG9ja0xheW91dFN0YXRlKCkg
eyByZXR1cm4gbV9wYXJlbnRCbG9ja0xheW91dFN0YXRlOyB9CiAKKyAgICBjb25zdCBQbGFjZWRG
bG9hdHMmIHBsYWNlZEZsb2F0cygpIGNvbnN0IHsgcmV0dXJuIG1fcGFyZW50QmxvY2tMYXlvdXRT
dGF0ZS5wbGFjZWRGbG9hdHMoKTsgfQorICAgIFBsYWNlZEZsb2F0cyYgcGxhY2VkRmxvYXRzKCkg
eyByZXR1cm4gbV9wYXJlbnRCbG9ja0xheW91dFN0YXRlLnBsYWNlZEZsb2F0cygpOyB9CisKICAg
ICB2b2lkIHNldEF2YWlsYWJsZUxpbmVXaWR0aE92ZXJyaWRlKEF2YWlsYWJsZUxpbmVXaWR0aE92
ZXJyaWRlIGF2YWlsYWJsZUxpbmVXaWR0aE92ZXJyaWRlKSB7IG1fYXZhaWxhYmxlTGluZVdpZHRo
T3ZlcnJpZGUgPSBhdmFpbGFibGVMaW5lV2lkdGhPdmVycmlkZTsgfQogICAgIGNvbnN0IEF2YWls
YWJsZUxpbmVXaWR0aE92ZXJyaWRlJiBhdmFpbGFibGVMaW5lV2lkdGhPdmVycmlkZSgpIGNvbnN0
IHsgcmV0dXJuIG1fYXZhaWxhYmxlTGluZVdpZHRoT3ZlcnJpZGU7IH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGlu
ZUJveEJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0
cy9pbmxpbmUvSW5saW5lTGluZUJveEJ1aWxkZXIuY3BwCmluZGV4IDRlZmFiZGIxOTlhZC4uNDc4
NzNiMjRhMGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0Nv
bnRleHRzL2lubGluZS9JbmxpbmVMaW5lQm94QnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJveEJ1aWxkZXIu
Y3BwCkBAIC02OTQsNyArNjk0LDcgQEAgdm9pZCBMaW5lQm94QnVpbGRlcjo6Y29tcHV0ZUxpbmVC
b3hHZW9tZXRyeShMaW5lQm94JiBsaW5lQm94KSBjb25zdAogCiB2b2lkIExpbmVCb3hCdWlsZGVy
OjphZGp1c3RPdXRzaWRlTGlzdE1hcmtlcnNQb3NpdGlvbihMaW5lQm94JiBsaW5lQm94KQogewot
ICAgIGF1dG8gZmxvYXRpbmdDb250ZXh0ID0gRmxvYXRpbmdDb250ZXh0IHsgZm9ybWF0dGluZ0Nv
bnRleHQoKSwgZm9ybWF0dGluZ0NvbnRleHQoKS5wbGFjZWRGbG9hdHMoKSB9OworICAgIGF1dG8g
ZmxvYXRpbmdDb250ZXh0ID0gRmxvYXRpbmdDb250ZXh0IHsgZm9ybWF0dGluZ0NvbnRleHQoKSwg
aW5saW5lTGF5b3V0U3RhdGUoKS5wbGFjZWRGbG9hdHMoKSB9OwogICAgIGF1dG8gbGluZUJveFJl
Y3QgPSBsaW5lQm94LmxvZ2ljYWxSZWN0KCk7CiAgICAgYXV0byBmbG9hdENvbnN0cmFpbnRzID0g
ZmxvYXRpbmdDb250ZXh0LmNvbnN0cmFpbnRzKExheW91dFVuaXQgeyBsaW5lQm94UmVjdC50b3Ao
KSB9LCBMYXlvdXRVbml0IHsgbGluZUJveFJlY3QuYm90dG9tKCkgfSwgRmxvYXRpbmdDb250ZXh0
OjpNYXlCZUFib3ZlTGFzdEZsb2F0OjpObyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxp
bmVCdWlsZGVyLmNwcAppbmRleCA1MDUyOTJmMmU0NDEuLmZmZjUxZmQ1ODFlOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5l
TGluZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29u
dGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVyLmNwcApAQCAtMjI5LDYgKzIyOSw3IEBAIExp
bmVCdWlsZGVyOjpMaW5lQnVpbGRlcihJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCYgaW5saW5lRm9y
bWF0dGluZ0NvbnRleHQsIEhvcml6CiAgICAgOiBtX2lubGluZUZvcm1hdHRpbmdDb250ZXh0KGlu
bGluZUZvcm1hdHRpbmdDb250ZXh0KQogICAgICwgbV9yb290SG9yaXpvbnRhbENvbnN0cmFpbnRz
KHJvb3RIb3Jpem9udGFsQ29uc3RyYWludHMpCiAgICAgLCBtX2xpbmUoaW5saW5lRm9ybWF0dGlu
Z0NvbnRleHQpCisgICAgLCBtX2Zsb2F0aW5nQ29udGV4dChpbmxpbmVGb3JtYXR0aW5nQ29udGV4
dCwgaW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaW5saW5lTGF5b3V0U3RhdGUoKS5wbGFjZWRGbG9h
dHMoKSkKICAgICAsIG1faW5saW5lSXRlbUxpc3QoaW5saW5lSXRlbUxpc3QpCiB7CiB9CkBAIC03
NDIsMTAgKzc0MywxMCBAQCBzdGF0aWMgaW5saW5lIElubGluZUxheW91dFVuaXQgYXZhaWxhYmxl
V2lkdGgoY29uc3QgTGluZUNhbmRpZGF0ZTo6SW5saW5lQ29udGVudAogTGluZUJ1aWxkZXI6OlVz
ZWRDb25zdHJhaW50cyBMaW5lQnVpbGRlcjo6ZmxvYXRDb25zdHJhaW5lZFJlY3QoY29uc3QgSW5s
aW5lUmVjdCYgbG9naWNhbFJlY3QsIElubGluZUxheW91dFVuaXQgbWFyZ2luU3RhcnQpIGNvbnN0
CiB7CiAgICAgYXV0byBjb25zdHJhaW50cyA9IFsmXSgpIC0+IExpbmVCdWlsZGVyOjpVc2VkQ29u
c3RyYWludHMgewotICAgICAgICBpZiAoaXNJbkludHJpbnNpY1dpZHRoTW9kZSgpIHx8IHBsYWNl
ZEZsb2F0cygpLmlzRW1wdHkoKSkKKyAgICAgICAgaWYgKGlzSW5JbnRyaW5zaWNXaWR0aE1vZGUo
KSB8fCBmbG9hdGluZ0NvbnRleHQoKS5pc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4geyBs
b2dpY2FsUmVjdCwgbWFyZ2luU3RhcnQsIHsgfSB9OwogCi0gICAgICAgIGF1dG8gY29uc3RyYWlu
dHMgPSBmb3JtYXR0aW5nQ29udGV4dCgpLmZvcm1hdHRpbmdVdGlscygpLmZsb2F0Q29uc3RyYWlu
dHNGb3JMaW5lKGxvZ2ljYWxSZWN0LnRvcCgpLCBsb2dpY2FsUmVjdC5oZWlnaHQoKSwgRmxvYXRp
bmdDb250ZXh0IHsgZm9ybWF0dGluZ0NvbnRleHQoKSwgcGxhY2VkRmxvYXRzKCkgfSk7CisgICAg
ICAgIGF1dG8gY29uc3RyYWludHMgPSBmb3JtYXR0aW5nQ29udGV4dCgpLmZvcm1hdHRpbmdVdGls
cygpLmZsb2F0Q29uc3RyYWludHNGb3JMaW5lKGxvZ2ljYWxSZWN0LnRvcCgpLCBsb2dpY2FsUmVj
dC5oZWlnaHQoKSwgZmxvYXRpbmdDb250ZXh0KCkpOwogICAgICAgICBpZiAoIWNvbnN0cmFpbnRz
LmxlZnQgJiYgIWNvbnN0cmFpbnRzLnJpZ2h0KQogICAgICAgICAgICAgcmV0dXJuIHsgbG9naWNh
bFJlY3QsIG1hcmdpblN0YXJ0LCB7IH0gfTsKIApAQCAtODg4LDcgKzg4OSw3IEBAIGJvb2wgTGlu
ZUJ1aWxkZXI6OnRyeVBsYWNpbmdGbG9hdEJveChjb25zdCBCb3gmIGZsb2F0Qm94LCBNYXlPdmVy
Q29uc3RyYWluTGluZSBtCiAgICAgaWYgKGlzRmxvYXRMYXlvdXRTdXNwZW5kZWQoKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYXV0byBmbG9hdGluZ0NvbnRleHQgPSBGbG9hdGluZ0Nv
bnRleHQgeyBmb3JtYXR0aW5nQ29udGV4dCgpLCBwbGFjZWRGbG9hdHMoKSB9OworICAgIGF1dG8m
IGZsb2F0aW5nQ29udGV4dCA9IHRoaXMtPmZsb2F0aW5nQ29udGV4dCgpOwogICAgIGF1dG8gYm94
R2VvbWV0cnkgPSBbJl0oKSAtPiBCb3hHZW9tZXRyeSB7CiAgICAgICAgIGF1dG8gbWFyZ2luVHJp
bSA9IHJvb3RTdHlsZSgpLm1hcmdpblRyaW0oKTsKICAgICAgICAgaWYgKCFtYXJnaW5UcmltLmNv
bnRhaW5zQW55KHsgTWFyZ2luVHJpbVR5cGU6OklubGluZVN0YXJ0LCBNYXJnaW5UcmltVHlwZTo6
SW5saW5lRW5kIH0pIHx8IG1fbGluZUlzQ29uc3RyYWluZWRCeUZsb2F0LmNvbnRhaW5zQWxsKHsg
VXNlZEZsb2F0OjpMZWZ0LCBVc2VkRmxvYXQ6OlJpZ2h0IH0pKQpAQCAtOTU1LDggKzk1Niw3IEBA
IGJvb2wgTGluZUJ1aWxkZXI6OnRyeVBsYWNpbmdGbG9hdEJveChjb25zdCBCb3gmIGZsb2F0Qm94
LCBNYXlPdmVyQ29uc3RyYWluTGluZSBtCiAgICAgYXV0byBwbGFjZUZsb2F0Qm94ID0gWyZdIHsK
ICAgICAgICAgYXV0byBsaW5lSW5kZXggPSBtX3ByZXZpb3VzTGluZSA/IChtX3ByZXZpb3VzTGlu
ZS0+bGluZUluZGV4ICsgMSkgOiAwbHU7CiAgICAgICAgIGF1dG8gZmxvYXRJdGVtID0gZmxvYXRp
bmdDb250ZXh0Lm1ha2VGbG9hdEl0ZW0oZmxvYXRCb3gsIGJveEdlb21ldHJ5LCBsaW5lSW5kZXgp
OwotICAgICAgICAvLyBGSVhNRTogTWF5YmUgRmxvYXRpbmdDb250ZXh0IHNob3VsZCBiZSBhYmxl
IHRvIHByZXNlcnZlIEZsb2F0SXRlbXMgYW5kIHRoZSBjYWxsZXIgc2hvdWxkIG11dGF0ZSB0aGUg
UGxhY2VkRmxvYXRzIGluc3RlYWQuCi0gICAgICAgIHBsYWNlZEZsb2F0cygpLmFwcGVuZChmbG9h
dEl0ZW0pOworICAgICAgICBpbmxpbmVMYXlvdXRTdGF0ZSgpLnBsYWNlZEZsb2F0cygpLmFwcGVu
ZChmbG9hdEl0ZW0pOwogICAgICAgICBtX3BsYWNlZEZsb2F0cy5hcHBlbmQoZmxvYXRJdGVtKTsK
ICAgICB9OwogICAgIHBsYWNlRmxvYXRCb3goKTsKQEAgLTEyMzgsOSArMTIzOCw5IEBAIGNvbnN0
IElubGluZUxheW91dFN0YXRlJiBMaW5lQnVpbGRlcjo6aW5saW5lTGF5b3V0U3RhdGUoKSBjb25z
dAogICAgIHJldHVybiBmb3JtYXR0aW5nQ29udGV4dCgpLmlubGluZUxheW91dFN0YXRlKCk7CiB9
CiAKLVBsYWNlZEZsb2F0cyYgTGluZUJ1aWxkZXI6OnBsYWNlZEZsb2F0cygpCitJbmxpbmVMYXlv
dXRTdGF0ZSYgTGluZUJ1aWxkZXI6OmlubGluZUxheW91dFN0YXRlKCkKIHsKLSAgICByZXR1cm4g
Zm9ybWF0dGluZ0NvbnRleHQoKS5wbGFjZWRGbG9hdHMoKTsKKyAgICByZXR1cm4gZm9ybWF0dGlu
Z0NvbnRleHQoKS5pbmxpbmVMYXlvdXRTdGF0ZSgpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lQnVp
bGRlci5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lTGluZUJ1aWxkZXIuaAppbmRleCBlMjQ2N2FlODY3N2MuLjU1M2M2ZjFkNmUxZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lTGluZUJ1aWxkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGlu
Z0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lQnVpbGRlci5oCkBAIC05MywxMCArOTMsMTEgQEAg
cHJpdmF0ZToKIAogICAgIElubGluZUZvcm1hdHRpbmdDb250ZXh0JiBmb3JtYXR0aW5nQ29udGV4
dCgpIHsgcmV0dXJuIG1faW5saW5lRm9ybWF0dGluZ0NvbnRleHQ7IH0KICAgICBjb25zdCBJbmxp
bmVGb3JtYXR0aW5nQ29udGV4dCYgZm9ybWF0dGluZ0NvbnRleHQoKSBjb25zdCB7IHJldHVybiBt
X2lubGluZUZvcm1hdHRpbmdDb250ZXh0OyB9CisgICAgY29uc3QgRmxvYXRpbmdDb250ZXh0JiBm
bG9hdGluZ0NvbnRleHQoKSBjb25zdCB7IHJldHVybiBtX2Zsb2F0aW5nQ29udGV4dDsgfQorCiAg
ICAgY29uc3QgSW5saW5lTGF5b3V0U3RhdGUmIGlubGluZUxheW91dFN0YXRlKCkgY29uc3Q7Cisg
ICAgSW5saW5lTGF5b3V0U3RhdGUmIGlubGluZUxheW91dFN0YXRlKCk7CiAgICAgY29uc3QgQmxv
Y2tMYXlvdXRTdGF0ZSYgYmxvY2tMYXlvdXRTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIGlubGluZUxh
eW91dFN0YXRlKCkucGFyZW50QmxvY2tMYXlvdXRTdGF0ZSgpOyB9Ci0gICAgUGxhY2VkRmxvYXRz
JiBwbGFjZWRGbG9hdHMoKTsKLSAgICBjb25zdCBQbGFjZWRGbG9hdHMmIHBsYWNlZEZsb2F0cygp
IGNvbnN0IHsgcmV0dXJuIGNvbnN0X2Nhc3Q8TGluZUJ1aWxkZXImPigqdGhpcykucGxhY2VkRmxv
YXRzKCk7IH0KICAgICBjb25zdCBFbGVtZW50Qm94JiByb290KCkgY29uc3Q7CiAgICAgY29uc3Qg
UmVuZGVyU3R5bGUmIHJvb3RTdHlsZSgpIGNvbnN0OwogCkBAIC0xMDYsNiArMTA3LDcgQEAgcHJp
dmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPEhvcml6b250YWxDb25zdHJhaW50cz4gbV9yb290SG9y
aXpvbnRhbENvbnN0cmFpbnRzOwogCiAgICAgTGluZSBtX2xpbmU7CisgICAgRmxvYXRpbmdDb250
ZXh0IG1fZmxvYXRpbmdDb250ZXh0OwogICAgIElubGluZVJlY3QgbV9saW5lSW5pdGlhbExvZ2lj
YWxSZWN0OwogICAgIElubGluZVJlY3QgbV9saW5lTG9naWNhbFJlY3Q7CiAgICAgSW5saW5lTGF5
b3V0VW5pdCBtX2xpbmVNYXJnaW5TdGFydCB7IDAuZiB9Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>