<?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>224148</bug_id>
          
          <creation_ts>2021-04-03 02:46:33 -0700</creation_ts>
          <short_desc>[GPU Process] Simplify DisplayList::Iterator part 5: Tweak the return type of DisplayList::Iterator::operator*()</short_desc>
          <delta_ts>2021-04-06 22:57:12 -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>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>
          
          <blocked>223560</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1746770</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-04-03 02:46:33 -0700</bug_when>
    <thetext>[GPU Process] Simplify DisplayList::Iterator part 5: Tweak the return type of DisplayList::Iterator::operator*()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746771</commentid>
    <comment_count>1</comment_count>
      <attachid>425087</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-04-03 02:50:53 -0700</bug_when>
    <thetext>Created attachment 425087
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746772</commentid>
    <comment_count>2</comment_count>
      <attachid>425088</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-04-03 02:52:37 -0700</bug_when>
    <thetext>Created attachment 425088
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747224</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-05 18:53:25 -0700</bug_when>
    <thetext>Tools/Scripts/svn-apply failed to apply attachment 425088 to trunk.
Please resolve the conflicts and upload a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747511</commentid>
    <comment_count>4</comment_count>
      <attachid>425299</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-04-06 10:32:09 -0700</bug_when>
    <thetext>Created attachment 425299
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747688</commentid>
    <comment_count>5</comment_count>
      <attachid>425332</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-04-06 15:59:54 -0700</bug_when>
    <thetext>Created attachment 425332
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747772</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-06 22:56:30 -0700</bug_when>
    <thetext>Committed r275587: &lt;https://commits.webkit.org/r275587&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425332.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747773</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-06 22:57:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/76313952&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425087</attachid>
            <date>2021-04-03 02:50:53 -0700</date>
            <delta_ts>2021-04-03 02:52:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224148-20210403025052.patch</filename>
            <type>text/plain</type>
            <size>12622</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA5ZmRjYzBkZWVkYmI0
NDFlOGI3MWEyZTliYjQ5OTliY2IwZjQ2Ni4uZmE2NzVhNGViNDJhY2E3Y2IyZTVhNzA0NjZjMWU0
ZGEwN2VhOWUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA0LTAzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBTaW1wbGlmeSBEaXNwbGF5TGlzdDo6SXRlcmF0b3IgcGFydCA1OiBUd2VhayB0aGUgcmV0
dXJuIHR5cGUgb2YgRGlzcGxheUxpc3Q6Okl0ZXJhdG9yOjpvcGVyYXRvciooKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTQ4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBtaWdyYXRl
cyBmcm9tCisKKyAgICAgICAgc3RydWN0IFZhbHVlIHsKKyAgICAgICAgICAgIE9wdGlvbmFsPEl0
ZW1IYW5kbGU+IGl0ZW07CisgICAgICAgICAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGV4dGVudDsK
KyAgICAgICAgICAgIHNpemVfdCBpdGVtU2l6ZUluQnVmZmVyIHsgMCB9OworICAgICAgICB9Owor
ICAgICAgICBWYWx1ZSBvcGVyYXRvciooKSBjb25zdDsKKworICAgICAgICB0bworCisgICAgICAg
IHN0cnVjdCBWYWx1ZSB7CisgICAgICAgICAgICBJdGVtSGFuZGxlIGl0ZW07CisgICAgICAgICAg
ICBPcHRpb25hbDxGbG9hdFJlY3Q+IGV4dGVudDsKKyAgICAgICAgICAgIHNpemVfdCBpdGVtU2l6
ZUluQnVmZmVyIHsgMCB9OworICAgICAgICB9OworICAgICAgICBPcHRpb25hbDxWYWx1ZT4gb3Bl
cmF0b3IqKCkgY29uc3QKKworICAgICAgICBUaGVyZSBhcmUgdHdvIHJlYXNvbnMgZm9yIHRoaXM6
CisgICAgICAgIDEuIFBoaWxvc29waGljYWxseSwgaWYgdGhlIGl0ZW0gaXMgbnVsbG9wdCwgdGhl
biBhbGwgdGhlIHN0dWZmIGluIHRoZSBWYWx1ZSBpcyBhbHNvIG1lYW5pbmdsZXNzCisgICAgICAg
IDIuIFBhcnQgb2YgdGhlIGl0ZXJhdG9yJ3MgQVBJIGNvbnRyYWN0IGlzIHRoYXQgaWYgdGhlIGl0
ZW0gaXMgbnVsbG9wdCwgeW91J3JlIG5vdCBhbGxvd2VkIHRvIGtlZXAKKyAgICAgICAgICAgICAg
IGl0ZXJhdGluZyAtIGRvaW5nIHRoaXMgd2lsbCBsZWFkIHRvIGFuIGluZmluaXRlIGxvb3AuIFBy
b21vdGluZyB0aGUgb3B0aW9uYWwgbWFrZXMgaXQgbW9yZQorICAgICAgICAgICAgICAgbGlrZWx5
IHRoYXQgdGhpcyBBUEkgY29udHJhY3QgaXMgZm9sbG93ZWQgaW4gdGhlIGZ1dHVyZS4KKworICAg
ICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGVyZSBpcyBubyBiZWhhdmlvciBjaGFuZ2UuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRpc3BsYXlMaXN0Ojphc1RleHQgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRpc3BsYXlMaXN0OjpkdW1wIGNv
bnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6aXRlcmF0
b3I6Om9wZXJhdG9yKiBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxh
eUxpc3Q6OlJlcGxheWVyOjpyZXBsYXkpOgorCiAyMDIxLTA0LTAyICBSeW9zdWtlIE5pd2EgIDxy
bml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIFBlbmRpbmdJbWFnZUJpdG1hcCBnZXRzIGNyZWF0
ZWQgb24gYSBzdG9wcGVkIHNjcmlwdCBleGVjdXRpb24gY29udGV4dC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuY3BwCmluZGV4IDFhYzBmNjQyYmEzM2E3MzUwNGJlOTBlMjE5NTM3YzEwMjNhYjk1MDQu
LjU2N2QyYWMwNWNmNmQzN2RjOGZkZWMyOTY2MzZkODY0ZjNjNDQyZjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rp
c3BsYXlMaXN0LmNwcApAQCAtMTE0LDEzICsxMTQsMTQgQEAgYm9vbCBEaXNwbGF5TGlzdDo6c2hv
dWxkRHVtcEZvckZsYWdzKEFzVGV4dEZsYWdzIGZsYWdzLCBJdGVtSGFuZGxlIGl0ZW0pCiBTdHJp
bmcgRGlzcGxheUxpc3Q6OmFzVGV4dChBc1RleHRGbGFncyBmbGFncykgY29uc3QKIHsKICAgICBU
ZXh0U3RyZWFtIHN0cmVhbShUZXh0U3RyZWFtOjpMaW5lTW9kZTo6TXVsdGlwbGVMaW5lLCBUZXh0
U3RyZWFtOjpGb3JtYXR0aW5nOjpTVkdTdHlsZVJlY3QpOwotICAgIGZvciAoYXV0byBbaXRlbSwg
ZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6ICp0aGlzKSB7Ci0gICAgICAgIGlmICghc2hvdWxk
RHVtcEZvckZsYWdzKGZsYWdzLCAqaXRlbSkpCisgICAgZm9yIChhdXRvIGRpc3BsYXlMaXN0SXRl
bSA6ICp0aGlzKSB7CisgICAgICAgIGF1dG8gW2l0ZW0sIGV4dGVudCwgaXRlbVNpemVJbkJ1ZmZl
cl0gPSBkaXNwbGF5TGlzdEl0ZW0udmFsdWUoKTsKKyAgICAgICAgaWYgKCFzaG91bGREdW1wRm9y
RmxhZ3MoZmxhZ3MsIGl0ZW0pKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgVGV4
dFN0cmVhbTo6R3JvdXBTY29wZSBncm91cChzdHJlYW0pOwogICAgICAgICBzdHJlYW0gPDwgaXRl
bTsKLSAgICAgICAgaWYgKGl0ZW0tPmlzRHJhd2luZ0l0ZW0oKSkKKyAgICAgICAgaWYgKGl0ZW0u
aXNEcmF3aW5nSXRlbSgpKQogICAgICAgICAgICAgc3RyZWFtIDw8ICIgZXh0ZW50ICIgPDwgZXh0
ZW50OwogICAgIH0KICAgICByZXR1cm4gc3RyZWFtLnJlbGVhc2UoKTsKQEAgLTEzMSwxMCArMTMy
LDExIEBAIHZvaWQgRGlzcGxheUxpc3Q6OmR1bXAoVGV4dFN0cmVhbSYgdHMpIGNvbnN0CiAgICAg
VGV4dFN0cmVhbTo6R3JvdXBTY29wZSBncm91cCh0cyk7CiAgICAgdHMgPDwgImRpc3BsYXkgbGlz
dCI7CiAKLSAgICBmb3IgKGF1dG8gW2l0ZW0sIGV4dGVudCwgaXRlbVNpemVJbkJ1ZmZlcl0gOiAq
dGhpcykgeworICAgIGZvciAoYXV0byBkaXNwbGF5TGlzdEl0ZW0gOiAqdGhpcykgeworICAgICAg
ICBhdXRvIFtpdGVtLCBleHRlbnQsIGl0ZW1TaXplSW5CdWZmZXJdID0gZGlzcGxheUxpc3RJdGVt
LnZhbHVlKCk7CiAgICAgICAgIFRleHRTdHJlYW06Okdyb3VwU2NvcGUgZ3JvdXAodHMpOwogICAg
ICAgICB0cyA8PCBpdGVtOwotICAgICAgICBpZiAoaXRlbS0+aXNEcmF3aW5nSXRlbSgpKQorICAg
ICAgICBpZiAoaXRlbS5pc0RyYXdpbmdJdGVtKCkpCiAgICAgICAgICAgICB0cyA8PCAiIGV4dGVu
dCAiIDw8IGV4dGVudDsKICAgICB9CiAgICAgdHMuc3RhcnRHcm91cCgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuaAppbmRleCA4MTJiYWI4M2U5NTc3OGYwYzZmYzY0MGQyYTMyNmJjY2EyZWYyMDU5Li41
YjJjZjZlODMxNjJkNzJiYzAzNmE0NzE3ZTA2MWIyY2QwZTU0ZWU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuaApAQCAtMTE4LDE4ICsxMTgsMjAgQEAgcHVibGljOgogICAgICAgICB2b2lkIG9wZXJh
dG9yKysoKSB7IGFkdmFuY2UoKTsgfQogCiAgICAgICAgIHN0cnVjdCBWYWx1ZSB7Ci0gICAgICAg
ICAgICBPcHRpb25hbDxJdGVtSGFuZGxlPiBpdGVtOworICAgICAgICAgICAgSXRlbUhhbmRsZSBp
dGVtOwogICAgICAgICAgICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBleHRlbnQ7CiAgICAgICAgICAg
ICBzaXplX3QgaXRlbVNpemVJbkJ1ZmZlciB7IDAgfTsKICAgICAgICAgfTsKIAotICAgICAgICBW
YWx1ZSBvcGVyYXRvciooKSBjb25zdAorICAgICAgICBPcHRpb25hbDxWYWx1ZT4gb3BlcmF0b3Iq
KCkgY29uc3QKICAgICAgICAgewotICAgICAgICAgICAgcmV0dXJuIHsKLSAgICAgICAgICAgICAg
ICBtX2lzVmFsaWQgPyBtYWtlT3B0aW9uYWwoSXRlbUhhbmRsZSB7IG1fY3VycmVudEJ1ZmZlckZv
ckl0ZW0gfSkgOiBXVEY6Om51bGxvcHQsCisgICAgICAgICAgICBpZiAoIW1faXNWYWxpZCkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAgICAgICAgICAgcmV0dXJuIHt7
CisgICAgICAgICAgICAgICAgSXRlbUhhbmRsZSB7IG1fY3VycmVudEJ1ZmZlckZvckl0ZW0gfSwK
ICAgICAgICAgICAgICAgICBtX2N1cnJlbnRFeHRlbnQsCiAgICAgICAgICAgICAgICAgbV9jdXJy
ZW50SXRlbVNpemVJbkJ1ZmZlciwKLSAgICAgICAgICAgIH07CisgICAgICAgICAgICB9fTsKICAg
ICAgICAgfQogCiAgICAgcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxh
eWVyLmNwcAppbmRleCAzMmYwN2I5Njk1ZDJjY2IxNjcyMjBlYzBmODUwOGU0M2RmMzU2NDY4Li5h
OWU0ODRhODU3YjdiNGExYjdjZTYxYzJkYTRmNDE0ZWRkZTQzNTg5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBs
YXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwCkBAIC0xODcsMjggKzE4NywzMCBAQCBSZXBsYXlS
ZXN1bHQgUmVwbGF5ZXI6OnJlcGxheShjb25zdCBGbG9hdFJlY3QmIGluaXRpYWxDbGlwLCBib29s
IHRyYWNrUmVwbGF5TGlzdAogICAgIHNpemVfdCBpID0gMDsKICNlbmRpZgogICAgIFJlcGxheVJl
c3VsdCByZXN1bHQ7Ci0gICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQsIGl0ZW1TaXplSW5CdWZm
ZXJdIDogbV9kaXNwbGF5TGlzdCkgeworICAgIGZvciAoYXV0byBkaXNwbGF5TGlzdEl0ZW0gOiBt
X2Rpc3BsYXlMaXN0KSB7CisgICAgICAgIGlmICghZGlzcGxheUxpc3RJdGVtKSB7CisgICAgICAg
ICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBpbmcgPSBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlk
SXRlbU9yRXh0ZW50OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBh
dXRvIFtpdGVtLCBleHRlbnQsIGl0ZW1TaXplSW5CdWZmZXJdID0gZGlzcGxheUxpc3RJdGVtLnZh
bHVlKCk7CisKICAgICAgICAgaWYgKCFpbml0aWFsQ2xpcC5pc1plcm8oKSAmJiBleHRlbnQgJiYg
IWV4dGVudC0+aW50ZXJzZWN0cyhpbml0aWFsQ2xpcCkpIHsKICAgICAgICAgICAgIExPR19XSVRI
X1NUUkVBTShEaXNwbGF5TGlzdHMsIHN0cmVhbSA8PCAic2tpcHBpbmcgIiA8PCBpKysgPDwgIiAi
IDw8IGl0ZW0pOwogICAgICAgICAgICAgcmVzdWx0Lm51bWJlck9mQnl0ZXNSZWFkICs9IGl0ZW1T
aXplSW5CdWZmZXI7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCi0gICAgICAg
IGlmICghaXRlbSkgewotICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gU3Rv
cFJlcGxheVJlYXNvbjo6SW52YWxpZEl0ZW1PckV4dGVudDsKLSAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICB9Ci0KICAgICAgICAgTE9HX1dJVEhfU1RSRUFNKERpc3BsYXlMaXN0cywgc3RyZWFt
IDw8ICJhcHBseWluZyAiIDw8IGkrKyA8PCAiICIgPDwgaXRlbSk7CiAKLSAgICAgICAgaWYgKGl0
ZW0tPmlzPE1ldGFDb21tYW5kQ2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcj4oKSkgeworICAg
ICAgICBpZiAoaXRlbS5pczxNZXRhQ29tbWFuZENoYW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+
KCkpIHsKICAgICAgICAgICAgIHJlc3VsdC5udW1iZXJPZkJ5dGVzUmVhZCArPSBpdGVtU2l6ZUlu
QnVmZmVyOwogICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gU3RvcFJlcGxh
eVJlYXNvbjo6Q2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcjsKLSAgICAgICAgICAgIHJlc3Vs
dC5uZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlciA9IGl0ZW0tPmdldDxNZXRhQ29tbWFuZENoYW5n
ZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+KCkuaWRlbnRpZmllcigpOworICAgICAgICAgICAgcmVz
dWx0Lm5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyID0gaXRlbS5nZXQ8TWV0YUNvbW1hbmRDaGFu
Z2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyPigpLmlkZW50aWZpZXIoKTsKICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKGF1dG8gW3JlYXNvbkZvclN0b3BwaW5nLCBt
aXNzaW5nQ2FjaGVkUmVzb3VyY2VJZGVudGlmaWVyXSA9IGFwcGx5SXRlbSgqaXRlbSk7IHJlYXNv
bkZvclN0b3BwaW5nKSB7CisgICAgICAgIGlmIChhdXRvIFtyZWFzb25Gb3JTdG9wcGluZywgbWlz
c2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllcl0gPSBhcHBseUl0ZW0oaXRlbSk7IHJlYXNvbkZv
clN0b3BwaW5nKSB7CiAgICAgICAgICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBpbmcgPSAqcmVh
c29uRm9yU3RvcHBpbmc7CiAgICAgICAgICAgICByZXN1bHQubWlzc2luZ0NhY2hlZFJlc291cmNl
SWRlbnRpZmllciA9IFdURk1vdmUobWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllcik7CiAg
ICAgICAgICAgICBicmVhazsKQEAgLTIxNyw4ICsyMTksOCBAQCBSZXBsYXlSZXN1bHQgUmVwbGF5
ZXI6OnJlcGxheShjb25zdCBGbG9hdFJlY3QmIGluaXRpYWxDbGlwLCBib29sIHRyYWNrUmVwbGF5
TGlzdAogICAgICAgICByZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQgKz0gaXRlbVNpemVJbkJ1ZmZl
cjsKIAogICAgICAgICBpZiAoVU5MSUtFTFkodHJhY2tSZXBsYXlMaXN0KSkgewotICAgICAgICAg
ICAgcmVwbGF5TGlzdC0+YXBwZW5kKCppdGVtKTsKLSAgICAgICAgICAgIGlmIChpdGVtLT5pc0Ry
YXdpbmdJdGVtKCkpCisgICAgICAgICAgICByZXBsYXlMaXN0LT5hcHBlbmQoaXRlbSk7CisgICAg
ICAgICAgICBpZiAoaXRlbS5pc0RyYXdpbmdJdGVtKCkpCiAgICAgICAgICAgICAgICAgcmVwbGF5
TGlzdC0+YWRkRHJhd2luZ0l0ZW1FeHRlbnQoV1RGTW92ZShleHRlbnQpKTsKICAgICAgICAgfQog
ICAgIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRl
eCAxMDRkNjc4OTYzODcyMzM2YTRmMTBlOGIzODRiZWJlYjE3ZGMzZWJhLi5jMjNhMzgyZjg3YzEx
MTkyYTFkMjllMTFiOWMyOWE1YjI4NzYxODZiIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cK
KysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDQtMDMgIE15bGVz
IEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFByb2Nl
c3NdIFNpbXBsaWZ5IERpc3BsYXlMaXN0OjpJdGVyYXRvciBwYXJ0IDU6IFR3ZWFrIHRoZSByZXR1
cm4gdHlwZSBvZiBEaXNwbGF5TGlzdDo6SXRlcmF0b3I6Om9wZXJhdG9yKigpCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQxNDgKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6
OlRFU1QpOgorCiAyMDIxLTA0LTAyICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4K
IAogICAgICAgICBBZGQgV0tVUkxTY2hlbWVUYXNrIHJlZGlyZWN0IEFQSS4KZGlmZiAtLWdpdCBh
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcCBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcApp
bmRleCBiOTk3ZTJiNDA4YTNiZmUwOWQ1YjFhZmRiZjFkZGJmYTQ1N2Q5MzE3Li5iZmYxODU5NDUy
MjFkNDNkODViMWExMDdkOGU5ZTgzNDg2MTU5NzljIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYkNvcmUvRGlzcGxheUxpc3RUZXN0cy5jcHAKKysrIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwCkBAIC03OCw0MiAr
NzgsNDMgQEAgVEVTVChEaXNwbGF5TGlzdFRlc3RzLCBBcHBlbmRJdGVtcykKICAgICBFWFBFQ1Rf
RkFMU0UobGlzdC5pc0VtcHR5KCkpOwogCiAgICAgYm9vbCBvYnNlcnZlZFVuZXhwZWN0ZWRJdGVt
ID0gZmFsc2U7Ci0gICAgZm9yIChhdXRvIFtoYW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBsaXN0KSB7
Ci0gICAgICAgIHN3aXRjaCAoaGFuZGxlLT50eXBlKCkpIHsKKyAgICBmb3IgKGF1dG8gZGlzcGxh
eUxpc3RJdGVtIDogbGlzdCkgeworICAgICAgICBhdXRvIGhhbmRsZSA9IGRpc3BsYXlMaXN0SXRl
bS0+aXRlbTsKKyAgICAgICAgc3dpdGNoIChoYW5kbGUudHlwZSgpKSB7CiAgICAgICAgIGNhc2Ug
SXRlbVR5cGU6OlNldFN0cm9rZVRoaWNrbmVzczogewotICAgICAgICAgICAgRVhQRUNUX0ZBTFNF
KGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRs
ZS0+aXM8U2V0U3Ryb2tlVGhpY2tuZXNzPigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBo
YW5kbGUtPmdldDxTZXRTdHJva2VUaGlja25lc3M+KCk7CisgICAgICAgICAgICBFWFBFQ1RfRkFM
U0UoaGFuZGxlLmlzRHJhd2luZ0l0ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5k
bGUuaXM8U2V0U3Ryb2tlVGhpY2tuZXNzPigpKTsKKyAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBo
YW5kbGUuZ2V0PFNldFN0cm9rZVRoaWNrbmVzcz4oKTsKICAgICAgICAgICAgIEVYUEVDVF9FUShp
dGVtLnRoaWNrbmVzcygpLCAxLjUpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAg
ICAgICAgY2FzZSBJdGVtVHlwZTo6RmlsbFBhdGg6IHsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVF
KGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRs
ZS0+aXM8RmlsbFBhdGg+KCkpOwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0
PEZpbGxQYXRoPigpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzRHJhd2luZ0l0
ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8RmlsbFBhdGg+KCkpOwor
ICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8RmlsbFBhdGg+KCk7CiAgICAgICAg
ICAgICBFWFBFQ1RfRVEoaXRlbS5wYXRoKCkucGxhdGZvcm1QYXRoKCksIHBhdGgucGxhdGZvcm1Q
YXRoKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJdGVt
VHlwZTo6RmlsbFJlY3RXaXRoR3JhZGllbnQ6IHsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhh
bmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+
aXM8RmlsbFJlY3RXaXRoR3JhZGllbnQ+KCkpOwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhh
bmRsZS0+Z2V0PEZpbGxSZWN0V2l0aEdyYWRpZW50PigpOworICAgICAgICAgICAgRVhQRUNUX1RS
VUUoaGFuZGxlLmlzRHJhd2luZ0l0ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5k
bGUuaXM8RmlsbFJlY3RXaXRoR3JhZGllbnQ+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9
IGhhbmRsZS5nZXQ8RmlsbFJlY3RXaXRoR3JhZGllbnQ+KCk7CiAgICAgICAgICAgICBFWFBFQ1Rf
RVEoaXRlbS5yZWN0KCksIEZsb2F0UmVjdCgxLiwgMS4sIDEwLiwgMTAuKSk7CiAgICAgICAgICAg
ICBFWFBFQ1RfRVEoJml0ZW0uZ3JhZGllbnQoKSwgZ3JhZGllbnQucHRyKCkpOwogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJdGVtVHlwZTo6U2V0SW5saW5lRmls
bENvbG9yOiB7Ci0gICAgICAgICAgICBFWFBFQ1RfRkFMU0UoaGFuZGxlLT5pc0RyYXdpbmdJdGVt
KCkpOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxTZXRJbmxpbmVGaWxsQ29s
b3I+KCkpOwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PFNldElubGluZUZp
bGxDb2xvcj4oKTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRShoYW5kbGUuaXNEcmF3aW5nSXRl
bSgpKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxTZXRJbmxpbmVGaWxsQ29s
b3I+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8U2V0SW5saW5lRmls
bENvbG9yPigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGl0ZW0uY29sb3IoKSwgQ29sb3I6OnJl
ZCk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogI2lmIEVOQUJMRShJTkxJTkVfUEFU
SF9EQVRBKQogICAgICAgICBjYXNlIEl0ZW1UeXBlOjpTdHJva2VJbmxpbmVQYXRoOiB7Ci0gICAg
ICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzRHJhd2luZ0l0ZW0oKSk7Ci0gICAgICAgICAg
ICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPFN0cm9rZUlubGluZVBhdGg+KCkpOwotICAgICAgICAg
ICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PFN0cm9rZUlubGluZVBhdGg+KCk7CisgICAgICAg
ICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKKyAgICAgICAgICAgIEVY
UEVDVF9UUlVFKGhhbmRsZS5pczxTdHJva2VJbmxpbmVQYXRoPigpKTsKKyAgICAgICAgICAgIGF1
dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PFN0cm9rZUlubGluZVBhdGg+KCk7CiAgICAgICAgICAgICBj
b25zdCBhdXRvIHBhdGggPSBpdGVtLnBhdGgoKTsKICAgICAgICAgICAgIGF1dG8mIGxpbmUgPSBw
YXRoLmlubGluZURhdGE8TGluZURhdGE+KCk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEobGluZS5z
dGFydCwgRmxvYXRQb2ludCgwLCAwKSk7CkBAIC0xNDcsMTEgKzE0OCwxMiBAQCBURVNUKERpc3Bs
YXlMaXN0VGVzdHMsIEFwcGVuZEl0ZW1zKQogCiAgICAgbGlzdC5hcHBlbmQ8RmlsbFJlY3RXaXRo
Q29sb3I+KEZsb2F0UmVjdCB7IDAsIDAsIDEwMCwgMTAwIH0sIENvbG9yOjpibGFjayk7CiAKLSAg
ICBmb3IgKGF1dG8gW2hhbmRsZSwgZXh0ZW50LCBzaXplXSA6IGxpc3QpIHsKLSAgICAgICAgRVhQ
RUNUX0VRKGhhbmRsZS0+dHlwZSgpLCBJdGVtVHlwZTo6RmlsbFJlY3RXaXRoQ29sb3IpOwotICAg
ICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPEZpbGxSZWN0V2l0aENvbG9yPigpKTsKKyAgICBm
b3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogbGlzdCkgeworICAgICAgICBhdXRvIGhhbmRsZSA9
IGRpc3BsYXlMaXN0SXRlbS0+aXRlbTsKKyAgICAgICAgRVhQRUNUX0VRKGhhbmRsZS50eXBlKCks
IEl0ZW1UeXBlOjpGaWxsUmVjdFdpdGhDb2xvcik7CisgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRs
ZS5pczxGaWxsUmVjdFdpdGhDb2xvcj4oKSk7CiAKLSAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRs
ZS0+Z2V0PEZpbGxSZWN0V2l0aENvbG9yPigpOworICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxl
LmdldDxGaWxsUmVjdFdpdGhDb2xvcj4oKTsKICAgICAgICAgRVhQRUNUX0VRKCppdGVtLmNvbG9y
KCkudHJ5R2V0QXNTUkdCQUJ5dGVzKCksIENvbG9yOjpibGFjayk7CiAgICAgICAgIEVYUEVDVF9F
UShpdGVtLnJlY3QoKSwgRmxvYXRSZWN0KDAsIDAsIDEwMCwgMTAwKSk7CiAgICAgfQpAQCAtMjI1
LDggKzIyNyw4IEBAIFRFU1QoRGlzcGxheUxpc3RUZXN0cywgSXRlbUJ1ZmZlckNsaWVudCkKICAg
ICBzaGFsbG93Q29weS5zZXRJdGVtQnVmZmVyUmVhZGluZ0NsaWVudCgmcmVhZGVyKTsKIAogICAg
IFZlY3RvcjxJdGVtVHlwZT4gaXRlbVR5cGVzOwotICAgIGZvciAoYXV0byBbaGFuZGxlLCBleHRl
bnQsIHNpemVdIDogc2hhbGxvd0NvcHkpCi0gICAgICAgIGl0ZW1UeXBlcy5hcHBlbmQoaGFuZGxl
LT50eXBlKCkpOworICAgIGZvciAoYXV0byBkaXNwbGF5TGlzdEl0ZW0gOiBzaGFsbG93Q29weSkK
KyAgICAgICAgaXRlbVR5cGVzLmFwcGVuZChkaXNwbGF5TGlzdEl0ZW0tPml0ZW0udHlwZSgpKTsK
IAogICAgIEVYUEVDVF9GQUxTRShzaGFsbG93Q29weS5pc0VtcHR5KCkpOwogICAgIEVYUEVDVF9F
UShpdGVtVHlwZXMuc2l6ZSgpLCA0VSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425088</attachid>
            <date>2021-04-03 02:52:37 -0700</date>
            <delta_ts>2021-04-05 18:53:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224148-20210403025237.patch</filename>
            <type>text/plain</type>
            <size>13746</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA5ZmRjYzBkZWVkYmI0
NDFlOGI3MWEyZTliYjQ5OTliY2IwZjQ2Ni4uZmE2NzVhNGViNDJhY2E3Y2IyZTVhNzA0NjZjMWU0
ZGEwN2VhOWUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA0LTAzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBTaW1wbGlmeSBEaXNwbGF5TGlzdDo6SXRlcmF0b3IgcGFydCA1OiBUd2VhayB0aGUgcmV0
dXJuIHR5cGUgb2YgRGlzcGxheUxpc3Q6Okl0ZXJhdG9yOjpvcGVyYXRvciooKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTQ4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBtaWdyYXRl
cyBmcm9tCisKKyAgICAgICAgc3RydWN0IFZhbHVlIHsKKyAgICAgICAgICAgIE9wdGlvbmFsPEl0
ZW1IYW5kbGU+IGl0ZW07CisgICAgICAgICAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGV4dGVudDsK
KyAgICAgICAgICAgIHNpemVfdCBpdGVtU2l6ZUluQnVmZmVyIHsgMCB9OworICAgICAgICB9Owor
ICAgICAgICBWYWx1ZSBvcGVyYXRvciooKSBjb25zdDsKKworICAgICAgICB0bworCisgICAgICAg
IHN0cnVjdCBWYWx1ZSB7CisgICAgICAgICAgICBJdGVtSGFuZGxlIGl0ZW07CisgICAgICAgICAg
ICBPcHRpb25hbDxGbG9hdFJlY3Q+IGV4dGVudDsKKyAgICAgICAgICAgIHNpemVfdCBpdGVtU2l6
ZUluQnVmZmVyIHsgMCB9OworICAgICAgICB9OworICAgICAgICBPcHRpb25hbDxWYWx1ZT4gb3Bl
cmF0b3IqKCkgY29uc3QKKworICAgICAgICBUaGVyZSBhcmUgdHdvIHJlYXNvbnMgZm9yIHRoaXM6
CisgICAgICAgIDEuIFBoaWxvc29waGljYWxseSwgaWYgdGhlIGl0ZW0gaXMgbnVsbG9wdCwgdGhl
biBhbGwgdGhlIHN0dWZmIGluIHRoZSBWYWx1ZSBpcyBhbHNvIG1lYW5pbmdsZXNzCisgICAgICAg
IDIuIFBhcnQgb2YgdGhlIGl0ZXJhdG9yJ3MgQVBJIGNvbnRyYWN0IGlzIHRoYXQgaWYgdGhlIGl0
ZW0gaXMgbnVsbG9wdCwgeW91J3JlIG5vdCBhbGxvd2VkIHRvIGtlZXAKKyAgICAgICAgICAgICAg
IGl0ZXJhdGluZyAtIGRvaW5nIHRoaXMgd2lsbCBsZWFkIHRvIGFuIGluZmluaXRlIGxvb3AuIFBy
b21vdGluZyB0aGUgb3B0aW9uYWwgbWFrZXMgaXQgbW9yZQorICAgICAgICAgICAgICAgbGlrZWx5
IHRoYXQgdGhpcyBBUEkgY29udHJhY3QgaXMgZm9sbG93ZWQgaW4gdGhlIGZ1dHVyZS4KKworICAg
ICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGVyZSBpcyBubyBiZWhhdmlvciBjaGFuZ2UuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRpc3BsYXlMaXN0Ojphc1RleHQgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRpc3BsYXlMaXN0OjpkdW1wIGNv
bnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6aXRlcmF0
b3I6Om9wZXJhdG9yKiBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxh
eUxpc3Q6OlJlcGxheWVyOjpyZXBsYXkpOgorCiAyMDIxLTA0LTAyICBSeW9zdWtlIE5pd2EgIDxy
bml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIFBlbmRpbmdJbWFnZUJpdG1hcCBnZXRzIGNyZWF0
ZWQgb24gYSBzdG9wcGVkIHNjcmlwdCBleGVjdXRpb24gY29udGV4dC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuY3BwCmluZGV4IDFhYzBmNjQyYmEzM2E3MzUwNGJlOTBlMjE5NTM3YzEwMjNhYjk1MDQu
LjdjOGUyZGQxNjM1MjFjZWM3OGZiZDBkYTYxMjNiYmY2OTZhYzM1MTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rp
c3BsYXlMaXN0LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE2LTIw
MjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCkBAIC0xMTQsMTMgKzExNCwxNCBAQCBib29sIERpc3BsYXlMaXN0OjpzaG91bGRE
dW1wRm9yRmxhZ3MoQXNUZXh0RmxhZ3MgZmxhZ3MsIEl0ZW1IYW5kbGUgaXRlbSkKIFN0cmluZyBE
aXNwbGF5TGlzdDo6YXNUZXh0KEFzVGV4dEZsYWdzIGZsYWdzKSBjb25zdAogewogICAgIFRleHRT
dHJlYW0gc3RyZWFtKFRleHRTdHJlYW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUsIFRleHRTdHJl
YW06OkZvcm1hdHRpbmc6OlNWR1N0eWxlUmVjdCk7Ci0gICAgZm9yIChhdXRvIFtpdGVtLCBleHRl
bnQsIGl0ZW1TaXplSW5CdWZmZXJdIDogKnRoaXMpIHsKLSAgICAgICAgaWYgKCFzaG91bGREdW1w
Rm9yRmxhZ3MoZmxhZ3MsICppdGVtKSkKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDog
KnRoaXMpIHsKKyAgICAgICAgYXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA9
IGRpc3BsYXlMaXN0SXRlbS52YWx1ZSgpOworICAgICAgICBpZiAoIXNob3VsZER1bXBGb3JGbGFn
cyhmbGFncywgaXRlbSkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBUZXh0U3Ry
ZWFtOjpHcm91cFNjb3BlIGdyb3VwKHN0cmVhbSk7CiAgICAgICAgIHN0cmVhbSA8PCBpdGVtOwot
ICAgICAgICBpZiAoaXRlbS0+aXNEcmF3aW5nSXRlbSgpKQorICAgICAgICBpZiAoaXRlbS5pc0Ry
YXdpbmdJdGVtKCkpCiAgICAgICAgICAgICBzdHJlYW0gPDwgIiBleHRlbnQgIiA8PCBleHRlbnQ7
CiAgICAgfQogICAgIHJldHVybiBzdHJlYW0ucmVsZWFzZSgpOwpAQCAtMTMxLDEwICsxMzIsMTEg
QEAgdm9pZCBEaXNwbGF5TGlzdDo6ZHVtcChUZXh0U3RyZWFtJiB0cykgY29uc3QKICAgICBUZXh0
U3RyZWFtOjpHcm91cFNjb3BlIGdyb3VwKHRzKTsKICAgICB0cyA8PCAiZGlzcGxheSBsaXN0IjsK
IAotICAgIGZvciAoYXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6ICp0aGlz
KSB7CisgICAgZm9yIChhdXRvIGRpc3BsYXlMaXN0SXRlbSA6ICp0aGlzKSB7CisgICAgICAgIGF1
dG8gW2l0ZW0sIGV4dGVudCwgaXRlbVNpemVJbkJ1ZmZlcl0gPSBkaXNwbGF5TGlzdEl0ZW0udmFs
dWUoKTsKICAgICAgICAgVGV4dFN0cmVhbTo6R3JvdXBTY29wZSBncm91cCh0cyk7CiAgICAgICAg
IHRzIDw8IGl0ZW07Ci0gICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJdGVtKCkpCisgICAgICAg
IGlmIChpdGVtLmlzRHJhd2luZ0l0ZW0oKSkKICAgICAgICAgICAgIHRzIDw8ICIgZXh0ZW50ICIg
PDwgZXh0ZW50OwogICAgIH0KICAgICB0cy5zdGFydEdyb3VwKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dC5oCmluZGV4IDgxMmJhYjgzZTk1Nzc4ZjBjNmZjNjQwZDJhMzI2YmNjYTJlZjIwNTkuLjJjZWE0
ZDk1MDg0MzNlY2I1Yjk5YzBiYzYyZmNmOGJhMjYxNjcxM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTExOCwxOCArMTE4LDIwIEBAIHB1YmxpYzoKICAgICAgICAgdm9pZCBvcGVyYXRvcisrKCkg
eyBhZHZhbmNlKCk7IH0KIAogICAgICAgICBzdHJ1Y3QgVmFsdWUgewotICAgICAgICAgICAgT3B0
aW9uYWw8SXRlbUhhbmRsZT4gaXRlbTsKKyAgICAgICAgICAgIEl0ZW1IYW5kbGUgaXRlbTsKICAg
ICAgICAgICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZXh0ZW50OwogICAgICAgICAgICAgc2l6ZV90
IGl0ZW1TaXplSW5CdWZmZXIgeyAwIH07CiAgICAgICAgIH07CiAKLSAgICAgICAgVmFsdWUgb3Bl
cmF0b3IqKCkgY29uc3QKKyAgICAgICAgT3B0aW9uYWw8VmFsdWU+IG9wZXJhdG9yKigpIGNvbnN0
CiAgICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiB7Ci0gICAgICAgICAgICAgICAgbV9pc1Zh
bGlkID8gbWFrZU9wdGlvbmFsKEl0ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0p
IDogV1RGOjpudWxsb3B0LAorICAgICAgICAgICAgaWYgKCFtX2lzVmFsaWQpCisgICAgICAgICAg
ICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICAgICAgICAgIHJldHVybiB7eworICAgICAg
ICAgICAgICAgIEl0ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0sCiAgICAgICAg
ICAgICAgICAgbV9jdXJyZW50RXh0ZW50LAogICAgICAgICAgICAgICAgIG1fY3VycmVudEl0ZW1T
aXplSW5CdWZmZXIsCi0gICAgICAgICAgICB9OworICAgICAgICAgICAgfX07CiAgICAgICAgIH0K
IAogICAgIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAK
aW5kZXggMzJmMDdiOTY5NWQyY2NiMTY3MjIwZWMwZjg1MDhlNDNkZjM1NjQ2OC4uZGNiMDFiNzcx
Nzk5M2Y5MjJmMjIyNmRlZmFkNzA5NzQzZWQ0YzQ0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNw
bGF5TGlzdFJlcGxheWVyLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDE2LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC0xODcsMjggKzE4NywzMCBAQCBSZXBsYXlSZXN1bHQgUmVwbGF5
ZXI6OnJlcGxheShjb25zdCBGbG9hdFJlY3QmIGluaXRpYWxDbGlwLCBib29sIHRyYWNrUmVwbGF5
TGlzdAogICAgIHNpemVfdCBpID0gMDsKICNlbmRpZgogICAgIFJlcGxheVJlc3VsdCByZXN1bHQ7
Ci0gICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQsIGl0ZW1TaXplSW5CdWZmZXJdIDogbV9kaXNw
bGF5TGlzdCkgeworICAgIGZvciAoYXV0byBkaXNwbGF5TGlzdEl0ZW0gOiBtX2Rpc3BsYXlMaXN0
KSB7CisgICAgICAgIGlmICghZGlzcGxheUxpc3RJdGVtKSB7CisgICAgICAgICAgICByZXN1bHQu
cmVhc29uRm9yU3RvcHBpbmcgPSBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlkSXRlbU9yRXh0ZW50
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBhdXRvIFtpdGVtLCBl
eHRlbnQsIGl0ZW1TaXplSW5CdWZmZXJdID0gZGlzcGxheUxpc3RJdGVtLnZhbHVlKCk7CisKICAg
ICAgICAgaWYgKCFpbml0aWFsQ2xpcC5pc1plcm8oKSAmJiBleHRlbnQgJiYgIWV4dGVudC0+aW50
ZXJzZWN0cyhpbml0aWFsQ2xpcCkpIHsKICAgICAgICAgICAgIExPR19XSVRIX1NUUkVBTShEaXNw
bGF5TGlzdHMsIHN0cmVhbSA8PCAic2tpcHBpbmcgIiA8PCBpKysgPDwgIiAiIDw8IGl0ZW0pOwog
ICAgICAgICAgICAgcmVzdWx0Lm51bWJlck9mQnl0ZXNSZWFkICs9IGl0ZW1TaXplSW5CdWZmZXI7
CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCi0gICAgICAgIGlmICghaXRlbSkg
ewotICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gU3RvcFJlcGxheVJlYXNv
bjo6SW52YWxpZEl0ZW1PckV4dGVudDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0K
ICAgICAgICAgTE9HX1dJVEhfU1RSRUFNKERpc3BsYXlMaXN0cywgc3RyZWFtIDw8ICJhcHBseWlu
ZyAiIDw8IGkrKyA8PCAiICIgPDwgaXRlbSk7CiAKLSAgICAgICAgaWYgKGl0ZW0tPmlzPE1ldGFD
b21tYW5kQ2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcj4oKSkgeworICAgICAgICBpZiAoaXRl
bS5pczxNZXRhQ29tbWFuZENoYW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+KCkpIHsKICAgICAg
ICAgICAgIHJlc3VsdC5udW1iZXJPZkJ5dGVzUmVhZCArPSBpdGVtU2l6ZUluQnVmZmVyOwogICAg
ICAgICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gU3RvcFJlcGxheVJlYXNvbjo6Q2hh
bmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcjsKLSAgICAgICAgICAgIHJlc3VsdC5uZXh0RGVzdGlu
YXRpb25JbWFnZUJ1ZmZlciA9IGl0ZW0tPmdldDxNZXRhQ29tbWFuZENoYW5nZURlc3RpbmF0aW9u
SW1hZ2VCdWZmZXI+KCkuaWRlbnRpZmllcigpOworICAgICAgICAgICAgcmVzdWx0Lm5leHREZXN0
aW5hdGlvbkltYWdlQnVmZmVyID0gaXRlbS5nZXQ8TWV0YUNvbW1hbmRDaGFuZ2VEZXN0aW5hdGlv
bkltYWdlQnVmZmVyPigpLmlkZW50aWZpZXIoKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICB9CiAKLSAgICAgICAgaWYgKGF1dG8gW3JlYXNvbkZvclN0b3BwaW5nLCBtaXNzaW5nQ2FjaGVk
UmVzb3VyY2VJZGVudGlmaWVyXSA9IGFwcGx5SXRlbSgqaXRlbSk7IHJlYXNvbkZvclN0b3BwaW5n
KSB7CisgICAgICAgIGlmIChhdXRvIFtyZWFzb25Gb3JTdG9wcGluZywgbWlzc2luZ0NhY2hlZFJl
c291cmNlSWRlbnRpZmllcl0gPSBhcHBseUl0ZW0oaXRlbSk7IHJlYXNvbkZvclN0b3BwaW5nKSB7
CiAgICAgICAgICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBpbmcgPSAqcmVhc29uRm9yU3RvcHBp
bmc7CiAgICAgICAgICAgICByZXN1bHQubWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllciA9
IFdURk1vdmUobWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllcik7CiAgICAgICAgICAgICBi
cmVhazsKQEAgLTIxNyw4ICsyMTksOCBAQCBSZXBsYXlSZXN1bHQgUmVwbGF5ZXI6OnJlcGxheShj
b25zdCBGbG9hdFJlY3QmIGluaXRpYWxDbGlwLCBib29sIHRyYWNrUmVwbGF5TGlzdAogICAgICAg
ICByZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQgKz0gaXRlbVNpemVJbkJ1ZmZlcjsKIAogICAgICAg
ICBpZiAoVU5MSUtFTFkodHJhY2tSZXBsYXlMaXN0KSkgewotICAgICAgICAgICAgcmVwbGF5TGlz
dC0+YXBwZW5kKCppdGVtKTsKLSAgICAgICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJdGVtKCkp
CisgICAgICAgICAgICByZXBsYXlMaXN0LT5hcHBlbmQoaXRlbSk7CisgICAgICAgICAgICBpZiAo
aXRlbS5pc0RyYXdpbmdJdGVtKCkpCiAgICAgICAgICAgICAgICAgcmVwbGF5TGlzdC0+YWRkRHJh
d2luZ0l0ZW1FeHRlbnQoV1RGTW92ZShleHRlbnQpKTsKICAgICAgICAgfQogICAgIH0KZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAxMDRkNjc4OTYz
ODcyMzM2YTRmMTBlOGIzODRiZWJlYjE3ZGMzZWJhLi5jMjNhMzgyZjg3YzExMTkyYTFkMjllMTFi
OWMyOWE1YjI4NzYxODZiIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDQtMDMgIE15bGVzIEMuIE1heGZpZWxk
ICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFByb2Nlc3NdIFNpbXBsaWZ5
IERpc3BsYXlMaXN0OjpJdGVyYXRvciBwYXJ0IDU6IFR3ZWFrIHRoZSByZXR1cm4gdHlwZSBvZiBE
aXNwbGF5TGlzdDo6SXRlcmF0b3I6Om9wZXJhdG9yKigpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQxNDgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9E
aXNwbGF5TGlzdFRlc3RzLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorCiAy
MDIxLTA0LTAyICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBB
ZGQgV0tVUkxTY2hlbWVUYXNrIHJlZGlyZWN0IEFQSS4KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcCBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcAppbmRleCBiOTk3ZTJi
NDA4YTNiZmUwOWQ1YjFhZmRiZjFkZGJmYTQ1N2Q5MzE3Li5hYjExYjE4OThkOWUyZjdkYjBiNWJi
ZmExNjk4ODdjNmRiMzQ4YzRmIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYkNvcmUvRGlzcGxheUxpc3RUZXN0cy5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjAtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTc4LDQyICs3OCw0MyBAQCBURVNUKERp
c3BsYXlMaXN0VGVzdHMsIEFwcGVuZEl0ZW1zKQogICAgIEVYUEVDVF9GQUxTRShsaXN0LmlzRW1w
dHkoKSk7CiAKICAgICBib29sIG9ic2VydmVkVW5leHBlY3RlZEl0ZW0gPSBmYWxzZTsKLSAgICBm
b3IgKGF1dG8gW2hhbmRsZSwgZXh0ZW50LCBzaXplXSA6IGxpc3QpIHsKLSAgICAgICAgc3dpdGNo
IChoYW5kbGUtPnR5cGUoKSkgeworICAgIGZvciAoYXV0byBkaXNwbGF5TGlzdEl0ZW0gOiBsaXN0
KSB7CisgICAgICAgIGF1dG8gaGFuZGxlID0gZGlzcGxheUxpc3RJdGVtLT5pdGVtOworICAgICAg
ICBzd2l0Y2ggKGhhbmRsZS50eXBlKCkpIHsKICAgICAgICAgY2FzZSBJdGVtVHlwZTo6U2V0U3Ry
b2tlVGhpY2tuZXNzOiB7Ci0gICAgICAgICAgICBFWFBFQ1RfRkFMU0UoaGFuZGxlLT5pc0RyYXdp
bmdJdGVtKCkpOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxTZXRTdHJva2VU
aGlja25lc3M+KCkpOwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PFNldFN0
cm9rZVRoaWNrbmVzcz4oKTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRShoYW5kbGUuaXNEcmF3
aW5nSXRlbSgpKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxTZXRTdHJva2VU
aGlja25lc3M+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8U2V0U3Ry
b2tlVGhpY2tuZXNzPigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGl0ZW0udGhpY2tuZXNzKCks
IDEuNSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBjYXNlIEl0ZW1U
eXBlOjpGaWxsUGF0aDogewotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pc0RyYXdp
bmdJdGVtKCkpOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxGaWxsUGF0aD4o
KSk7Ci0gICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8RmlsbFBhdGg+KCk7Cisg
ICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKKyAgICAgICAg
ICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxGaWxsUGF0aD4oKSk7CisgICAgICAgICAgICBhdXRv
JiBpdGVtID0gaGFuZGxlLmdldDxGaWxsUGF0aD4oKTsKICAgICAgICAgICAgIEVYUEVDVF9FUShp
dGVtLnBhdGgoKS5wbGF0Zm9ybVBhdGgoKSwgcGF0aC5wbGF0Zm9ybVBhdGgoKSk7CiAgICAgICAg
ICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBjYXNlIEl0ZW1UeXBlOjpGaWxsUmVjdFdp
dGhHcmFkaWVudDogewotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pc0RyYXdpbmdJ
dGVtKCkpOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxGaWxsUmVjdFdpdGhH
cmFkaWVudD4oKSk7Ci0gICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8RmlsbFJl
Y3RXaXRoR3JhZGllbnQ+KCk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXNEcmF3
aW5nSXRlbSgpKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxGaWxsUmVjdFdp
dGhHcmFkaWVudD4oKSk7CisgICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxGaWxs
UmVjdFdpdGhHcmFkaWVudD4oKTsKICAgICAgICAgICAgIEVYUEVDVF9FUShpdGVtLnJlY3QoKSwg
RmxvYXRSZWN0KDEuLCAxLiwgMTAuLCAxMC4pKTsKICAgICAgICAgICAgIEVYUEVDVF9FUSgmaXRl
bS5ncmFkaWVudCgpLCBncmFkaWVudC5wdHIoKSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgfQogICAgICAgICBjYXNlIEl0ZW1UeXBlOjpTZXRJbmxpbmVGaWxsQ29sb3I6IHsKLSAgICAg
ICAgICAgIEVYUEVDVF9GQUxTRShoYW5kbGUtPmlzRHJhd2luZ0l0ZW0oKSk7Ci0gICAgICAgICAg
ICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPFNldElubGluZUZpbGxDb2xvcj4oKSk7Ci0gICAgICAg
ICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8U2V0SW5saW5lRmlsbENvbG9yPigpOworICAg
ICAgICAgICAgRVhQRUNUX0ZBTFNFKGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOworICAgICAgICAg
ICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPFNldElubGluZUZpbGxDb2xvcj4oKSk7CisgICAgICAg
ICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxTZXRJbmxpbmVGaWxsQ29sb3I+KCk7CiAgICAg
ICAgICAgICBFWFBFQ1RfRVEoaXRlbS5jb2xvcigpLCBDb2xvcjo6cmVkKTsKICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICB9CiAjaWYgRU5BQkxFKElOTElORV9QQVRIX0RBVEEpCiAgICAgICAg
IGNhc2UgSXRlbVR5cGU6OlN0cm9rZUlubGluZVBhdGg6IHsKLSAgICAgICAgICAgIEVYUEVDVF9U
UlVFKGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhh
bmRsZS0+aXM8U3Ryb2tlSW5saW5lUGF0aD4oKSk7Ci0gICAgICAgICAgICBhdXRvJiBpdGVtID0g
aGFuZGxlLT5nZXQ8U3Ryb2tlSW5saW5lUGF0aD4oKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVF
KGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxl
LmlzPFN0cm9rZUlubGluZVBhdGg+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRs
ZS5nZXQ8U3Ryb2tlSW5saW5lUGF0aD4oKTsKICAgICAgICAgICAgIGNvbnN0IGF1dG8gcGF0aCA9
IGl0ZW0ucGF0aCgpOwogICAgICAgICAgICAgYXV0byYgbGluZSA9IHBhdGguaW5saW5lRGF0YTxM
aW5lRGF0YT4oKTsKICAgICAgICAgICAgIEVYUEVDVF9FUShsaW5lLnN0YXJ0LCBGbG9hdFBvaW50
KDAsIDApKTsKQEAgLTE0NywxMSArMTQ4LDEyIEBAIFRFU1QoRGlzcGxheUxpc3RUZXN0cywgQXBw
ZW5kSXRlbXMpCiAKICAgICBsaXN0LmFwcGVuZDxGaWxsUmVjdFdpdGhDb2xvcj4oRmxvYXRSZWN0
IHsgMCwgMCwgMTAwLCAxMDAgfSwgQ29sb3I6OmJsYWNrKTsKIAotICAgIGZvciAoYXV0byBbaGFu
ZGxlLCBleHRlbnQsIHNpemVdIDogbGlzdCkgewotICAgICAgICBFWFBFQ1RfRVEoaGFuZGxlLT50
eXBlKCksIEl0ZW1UeXBlOjpGaWxsUmVjdFdpdGhDb2xvcik7Ci0gICAgICAgIEVYUEVDVF9UUlVF
KGhhbmRsZS0+aXM8RmlsbFJlY3RXaXRoQ29sb3I+KCkpOworICAgIGZvciAoYXV0byBkaXNwbGF5
TGlzdEl0ZW0gOiBsaXN0KSB7CisgICAgICAgIGF1dG8gaGFuZGxlID0gZGlzcGxheUxpc3RJdGVt
LT5pdGVtOworICAgICAgICBFWFBFQ1RfRVEoaGFuZGxlLnR5cGUoKSwgSXRlbVR5cGU6OkZpbGxS
ZWN0V2l0aENvbG9yKTsKKyAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPEZpbGxSZWN0V2l0
aENvbG9yPigpKTsKIAotICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8RmlsbFJlY3RX
aXRoQ29sb3I+KCk7CisgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PEZpbGxSZWN0V2l0
aENvbG9yPigpOwogICAgICAgICBFWFBFQ1RfRVEoKml0ZW0uY29sb3IoKS50cnlHZXRBc1NSR0JB
Qnl0ZXMoKSwgQ29sb3I6OmJsYWNrKTsKICAgICAgICAgRVhQRUNUX0VRKGl0ZW0ucmVjdCgpLCBG
bG9hdFJlY3QoMCwgMCwgMTAwLCAxMDApKTsKICAgICB9CkBAIC0yMjUsOCArMjI3LDggQEAgVEVT
VChEaXNwbGF5TGlzdFRlc3RzLCBJdGVtQnVmZmVyQ2xpZW50KQogICAgIHNoYWxsb3dDb3B5LnNl
dEl0ZW1CdWZmZXJSZWFkaW5nQ2xpZW50KCZyZWFkZXIpOwogCiAgICAgVmVjdG9yPEl0ZW1UeXBl
PiBpdGVtVHlwZXM7Ci0gICAgZm9yIChhdXRvIFtoYW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBzaGFs
bG93Q29weSkKLSAgICAgICAgaXRlbVR5cGVzLmFwcGVuZChoYW5kbGUtPnR5cGUoKSk7CisgICAg
Zm9yIChhdXRvIGRpc3BsYXlMaXN0SXRlbSA6IHNoYWxsb3dDb3B5KQorICAgICAgICBpdGVtVHlw
ZXMuYXBwZW5kKGRpc3BsYXlMaXN0SXRlbS0+aXRlbS50eXBlKCkpOwogCiAgICAgRVhQRUNUX0ZB
TFNFKHNoYWxsb3dDb3B5LmlzRW1wdHkoKSk7CiAgICAgRVhQRUNUX0VRKGl0ZW1UeXBlcy5zaXpl
KCksIDRVKTsK
</data>
<flag name="review"
          id="444934"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
    <flag name="commit-queue"
          id="445087"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425299</attachid>
            <date>2021-04-06 10:32:09 -0700</date>
            <delta_ts>2021-04-06 15:59:39 -0700</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-224148-20210406103208.patch</filename>
            <type>text/plain</type>
            <size>12946</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGNhOWU4Y2I4ODFkYTJl
OTQzMmZmMGU2OWRlOGQ0OWE0ZDllNDM4ZS4uZDRiZDY1NTYzNGRkZDA2YjZiYTQwNTA0MGI0ZDgw
N2YzZjg2NThjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA0LTA2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBTaW1wbGlmeSBEaXNwbGF5TGlzdDo6SXRlcmF0b3IgcGFydCA1OiBUd2VhayB0aGUgcmV0
dXJuIHR5cGUgb2YgRGlzcGxheUxpc3Q6Okl0ZXJhdG9yOjpvcGVyYXRvciooKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTQ4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgV2Vuc29uIEhzaWVoLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbWlncmF0ZXMg
ZnJvbQorCisgICAgICAgIHN0cnVjdCBWYWx1ZSB7CisgICAgICAgICAgICBPcHRpb25hbDxJdGVt
SGFuZGxlPiBpdGVtOworICAgICAgICAgICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBleHRlbnQ7Cisg
ICAgICAgICAgICBzaXplX3QgaXRlbVNpemVJbkJ1ZmZlciB7IDAgfTsKKyAgICAgICAgfTsKKyAg
ICAgICAgVmFsdWUgb3BlcmF0b3IqKCkgY29uc3Q7CisKKyAgICAgICAgdG8KKworICAgICAgICBz
dHJ1Y3QgVmFsdWUgeworICAgICAgICAgICAgSXRlbUhhbmRsZSBpdGVtOworICAgICAgICAgICAg
T3B0aW9uYWw8RmxvYXRSZWN0PiBleHRlbnQ7CisgICAgICAgICAgICBzaXplX3QgaXRlbVNpemVJ
bkJ1ZmZlciB7IDAgfTsKKyAgICAgICAgfTsKKyAgICAgICAgT3B0aW9uYWw8VmFsdWU+IG9wZXJh
dG9yKigpIGNvbnN0CisKKyAgICAgICAgVGhlcmUgYXJlIHR3byByZWFzb25zIGZvciB0aGlzOgor
ICAgICAgICAxLiBQaGlsb3NvcGhpY2FsbHksIGlmIHRoZSBpdGVtIGlzIG51bGxvcHQsIHRoZW4g
YWxsIHRoZSBzdHVmZiBpbiB0aGUgVmFsdWUgaXMgYWxzbyBtZWFuaW5nbGVzcworICAgICAgICAy
LiBQYXJ0IG9mIHRoZSBpdGVyYXRvcidzIEFQSSBjb250cmFjdCBpcyB0aGF0IGlmIHRoZSBpdGVt
IGlzIG51bGxvcHQsIHlvdSdyZSBub3QgYWxsb3dlZCB0byBrZWVwCisgICAgICAgICAgICAgICBp
dGVyYXRpbmcgLSBkb2luZyB0aGlzIHdpbGwgbGVhZCB0byBhbiBpbmZpbml0ZSBsb29wLiBQcm9t
b3RpbmcgdGhlIG9wdGlvbmFsIG1ha2VzIGl0IG1vcmUKKyAgICAgICAgICAgICAgIGxpa2VseSB0
aGF0IHRoaXMgQVBJIGNvbnRyYWN0IGlzIGZvbGxvd2VkIGluIHRoZSBmdXR1cmUuCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hhbmdlLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6YXNUZXh0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6ZHVtcCBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
Lmg6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJhdG9y
OjpvcGVyYXRvciogY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpSZXBsYXllcjo6cmVwbGF5KToKKwogMjAyMS0wNC0wNiAgUGF0cmljayBBbmdsZSAgPHBh
bmdsZUBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogR3JpZCBvdmVybGF5IGFy
ZWFzIGFwcGVhciBvZmZzZXQgZnJvbSB0aGVpciBhY3R1YWwgYXJlYXMgd2hlbiB0aGUgZ3JpZCBj
b250YWluZXIgaGFzIGEgYm9yZGVyIHNldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5jcHAKaW5kZXgg
YTg5YmY5MTk1MGQ1ZWI2NTI5OGViZmExNzQ5NTBjZjE4NjcwN2E0ZS4uYWE1NWI0ZWMyNWQ2ZTkx
NzBlNDhkMWQ2NWE3YzQyNDJjZDljOTRkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuY3BwCkBA
IC0xMTQsMTMgKzExNCwxNCBAQCBib29sIERpc3BsYXlMaXN0OjpzaG91bGREdW1wRm9yRmxhZ3Mo
QXNUZXh0RmxhZ3MgZmxhZ3MsIEl0ZW1IYW5kbGUgaXRlbSkKIFN0cmluZyBEaXNwbGF5TGlzdDo6
YXNUZXh0KEFzVGV4dEZsYWdzIGZsYWdzKSBjb25zdAogewogICAgIFRleHRTdHJlYW0gc3RyZWFt
KFRleHRTdHJlYW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUsIFRleHRTdHJlYW06OkZvcm1hdHRp
bmc6OlNWR1N0eWxlUmVjdCk7Ci0gICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQsIGl0ZW1TaXpl
SW5CdWZmZXJdIDogKnRoaXMpIHsKLSAgICAgICAgaWYgKCFzaG91bGREdW1wRm9yRmxhZ3MoZmxh
Z3MsICppdGVtKSkKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogKnRoaXMpIHsKKyAg
ICAgICAgYXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA9IGRpc3BsYXlMaXN0
SXRlbS52YWx1ZSgpOworICAgICAgICBpZiAoIXNob3VsZER1bXBGb3JGbGFncyhmbGFncywgaXRl
bSkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBUZXh0U3RyZWFtOjpHcm91cFNj
b3BlIGdyb3VwKHN0cmVhbSk7CiAgICAgICAgIHN0cmVhbSA8PCBpdGVtOwotICAgICAgICBpZiAo
aXRlbS0+aXNEcmF3aW5nSXRlbSgpKQorICAgICAgICBpZiAoaXRlbS5pc0RyYXdpbmdJdGVtKCkp
CiAgICAgICAgICAgICBzdHJlYW0gPDwgIiBleHRlbnQgIiA8PCBleHRlbnQ7CiAgICAgfQogICAg
IHJldHVybiBzdHJlYW0ucmVsZWFzZSgpOwpAQCAtMTMxLDEwICsxMzIsMTEgQEAgdm9pZCBEaXNw
bGF5TGlzdDo6ZHVtcChUZXh0U3RyZWFtJiB0cykgY29uc3QKICAgICBUZXh0U3RyZWFtOjpHcm91
cFNjb3BlIGdyb3VwKHRzKTsKICAgICB0cyA8PCAiZGlzcGxheSBsaXN0IjsKIAotICAgIGZvciAo
YXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6ICp0aGlzKSB7CisgICAgZm9y
IChhdXRvIGRpc3BsYXlMaXN0SXRlbSA6ICp0aGlzKSB7CisgICAgICAgIGF1dG8gW2l0ZW0sIGV4
dGVudCwgaXRlbVNpemVJbkJ1ZmZlcl0gPSBkaXNwbGF5TGlzdEl0ZW0udmFsdWUoKTsKICAgICAg
ICAgVGV4dFN0cmVhbTo6R3JvdXBTY29wZSBncm91cCh0cyk7CiAgICAgICAgIHRzIDw8IGl0ZW07
Ci0gICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJdGVtKCkpCisgICAgICAgIGlmIChpdGVtLmlz
RHJhd2luZ0l0ZW0oKSkKICAgICAgICAgICAgIHRzIDw8ICIgZXh0ZW50ICIgPDwgZXh0ZW50Owog
ICAgIH0KICAgICB0cy5zdGFydEdyb3VwKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCmluZGV4IDgx
MmJhYjgzZTk1Nzc4ZjBjNmZjNjQwZDJhMzI2YmNjYTJlZjIwNTkuLjJjZWE0ZDk1MDg0MzNlY2I1
Yjk5YzBiYzYyZmNmOGJhMjYxNjcxM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTExOCwxOCAr
MTE4LDIwIEBAIHB1YmxpYzoKICAgICAgICAgdm9pZCBvcGVyYXRvcisrKCkgeyBhZHZhbmNlKCk7
IH0KIAogICAgICAgICBzdHJ1Y3QgVmFsdWUgewotICAgICAgICAgICAgT3B0aW9uYWw8SXRlbUhh
bmRsZT4gaXRlbTsKKyAgICAgICAgICAgIEl0ZW1IYW5kbGUgaXRlbTsKICAgICAgICAgICAgIE9w
dGlvbmFsPEZsb2F0UmVjdD4gZXh0ZW50OwogICAgICAgICAgICAgc2l6ZV90IGl0ZW1TaXplSW5C
dWZmZXIgeyAwIH07CiAgICAgICAgIH07CiAKLSAgICAgICAgVmFsdWUgb3BlcmF0b3IqKCkgY29u
c3QKKyAgICAgICAgT3B0aW9uYWw8VmFsdWU+IG9wZXJhdG9yKigpIGNvbnN0CiAgICAgICAgIHsK
LSAgICAgICAgICAgIHJldHVybiB7Ci0gICAgICAgICAgICAgICAgbV9pc1ZhbGlkID8gbWFrZU9w
dGlvbmFsKEl0ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0pIDogV1RGOjpudWxs
b3B0LAorICAgICAgICAgICAgaWYgKCFtX2lzVmFsaWQpCisgICAgICAgICAgICAgICAgcmV0dXJu
IFdURjo6bnVsbG9wdDsKKyAgICAgICAgICAgIHJldHVybiB7eworICAgICAgICAgICAgICAgIEl0
ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0sCiAgICAgICAgICAgICAgICAgbV9j
dXJyZW50RXh0ZW50LAogICAgICAgICAgICAgICAgIG1fY3VycmVudEl0ZW1TaXplSW5CdWZmZXIs
Ci0gICAgICAgICAgICB9OworICAgICAgICAgICAgfX07CiAgICAgICAgIH0KIAogICAgIHByaXZh
dGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5
bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAKaW5kZXggZWRmOGUx
YzdiMGFjYTk3MjkxYzUyZGJmOTdkMGNlYTkzNDMxNzIyNy4uNzlkNTlhYjk2YWM0ZTllMzE0NDMz
OTVkZGZkOTE1MTNmZWI4ZDYyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxh
eWVyLmNwcApAQCAtMTg4LDI4ICsxODgsMzAgQEAgUmVwbGF5UmVzdWx0IFJlcGxheWVyOjpyZXBs
YXkoY29uc3QgRmxvYXRSZWN0JiBpbml0aWFsQ2xpcCwgYm9vbCB0cmFja1JlcGxheUxpc3QKICAg
ICBzaXplX3QgaSA9IDA7CiAjZW5kaWYKICAgICBSZXBsYXlSZXN1bHQgcmVzdWx0OwotICAgIGZv
ciAoYXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6IG1fZGlzcGxheUxpc3Qp
IHsKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogbV9kaXNwbGF5TGlzdCkgeworICAg
ICAgICBpZiAoIWRpc3BsYXlMaXN0SXRlbSkgeworICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZv
clN0b3BwaW5nID0gU3RvcFJlcGxheVJlYXNvbjo6SW52YWxpZEl0ZW1PckV4dGVudDsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgYXV0byBbaXRlbSwgZXh0ZW50LCBp
dGVtU2l6ZUluQnVmZmVyXSA9IGRpc3BsYXlMaXN0SXRlbS52YWx1ZSgpOworCiAgICAgICAgIGlm
ICghaW5pdGlhbENsaXAuaXNaZXJvKCkgJiYgZXh0ZW50ICYmICFleHRlbnQtPmludGVyc2VjdHMo
aW5pdGlhbENsaXApKSB7CiAgICAgICAgICAgICBMT0dfV0lUSF9TVFJFQU0oRGlzcGxheUxpc3Rz
LCBzdHJlYW0gPDwgInNraXBwaW5nICIgPDwgaSsrIDw8ICIgIiA8PCBpdGVtKTsKICAgICAgICAg
ICAgIHJlc3VsdC5udW1iZXJPZkJ5dGVzUmVhZCArPSBpdGVtU2l6ZUluQnVmZmVyOwogICAgICAg
ICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoIWl0ZW0pIHsKLSAgICAg
ICAgICAgIHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZyA9IFN0b3BSZXBsYXlSZWFzb246OkludmFs
aWRJdGVtT3JFeHRlbnQ7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotCiAgICAgICAg
IExPR19XSVRIX1NUUkVBTShEaXNwbGF5TGlzdHMsIHN0cmVhbSA8PCAiYXBwbHlpbmcgIiA8PCBp
KysgPDwgIiAiIDw8IGl0ZW0pOwogCi0gICAgICAgIGlmIChpdGVtLT5pczxNZXRhQ29tbWFuZENo
YW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+KCkpIHsKKyAgICAgICAgaWYgKGl0ZW0uaXM8TWV0
YUNvbW1hbmRDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyPigpKSB7CiAgICAgICAgICAgICBy
ZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQgKz0gaXRlbVNpemVJbkJ1ZmZlcjsKICAgICAgICAgICAg
IHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZyA9IFN0b3BSZXBsYXlSZWFzb246OkNoYW5nZURlc3Rp
bmF0aW9uSW1hZ2VCdWZmZXI7Ci0gICAgICAgICAgICByZXN1bHQubmV4dERlc3RpbmF0aW9uSW1h
Z2VCdWZmZXIgPSBpdGVtLT5nZXQ8TWV0YUNvbW1hbmRDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVm
ZmVyPigpLmlkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIHJlc3VsdC5uZXh0RGVzdGluYXRpb25J
bWFnZUJ1ZmZlciA9IGl0ZW0uZ2V0PE1ldGFDb21tYW5kQ2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1
ZmZlcj4oKS5pZGVudGlmaWVyKCk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogCi0g
ICAgICAgIGlmIChhdXRvIFtyZWFzb25Gb3JTdG9wcGluZywgbWlzc2luZ0NhY2hlZFJlc291cmNl
SWRlbnRpZmllcl0gPSBhcHBseUl0ZW0oKml0ZW0pOyByZWFzb25Gb3JTdG9wcGluZykgeworICAg
ICAgICBpZiAoYXV0byBbcmVhc29uRm9yU3RvcHBpbmcsIG1pc3NpbmdDYWNoZWRSZXNvdXJjZUlk
ZW50aWZpZXJdID0gYXBwbHlJdGVtKGl0ZW0pOyByZWFzb25Gb3JTdG9wcGluZykgewogICAgICAg
ICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gKnJlYXNvbkZvclN0b3BwaW5nOwogICAg
ICAgICAgICAgcmVzdWx0Lm1pc3NpbmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXIgPSBXVEZNb3Zl
KG1pc3NpbmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXIpOwogICAgICAgICAgICAgYnJlYWs7CkBA
IC0yMTgsOCArMjIwLDggQEAgUmVwbGF5UmVzdWx0IFJlcGxheWVyOjpyZXBsYXkoY29uc3QgRmxv
YXRSZWN0JiBpbml0aWFsQ2xpcCwgYm9vbCB0cmFja1JlcGxheUxpc3QKICAgICAgICAgcmVzdWx0
Lm51bWJlck9mQnl0ZXNSZWFkICs9IGl0ZW1TaXplSW5CdWZmZXI7CiAKICAgICAgICAgaWYgKFVO
TElLRUxZKHRyYWNrUmVwbGF5TGlzdCkpIHsKLSAgICAgICAgICAgIHJlcGxheUxpc3QtPmFwcGVu
ZCgqaXRlbSk7Ci0gICAgICAgICAgICBpZiAoaXRlbS0+aXNEcmF3aW5nSXRlbSgpKQorICAgICAg
ICAgICAgcmVwbGF5TGlzdC0+YXBwZW5kKGl0ZW0pOworICAgICAgICAgICAgaWYgKGl0ZW0uaXNE
cmF3aW5nSXRlbSgpKQogICAgICAgICAgICAgICAgIHJlcGxheUxpc3QtPmFkZERyYXdpbmdJdGVt
RXh0ZW50KFdURk1vdmUoZXh0ZW50KSk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMjdjYTFiM2NhYWZkNGI5Nzdj
YjgxZTc4ZmM1ZDFjYWQxZTJkNjkzNi4uNThiMTVhN2MxYmFiZDViMGM4MGI3ZmMxMDBmZWMwOGM3
OTljZWZiZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA0LTA2ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhm
aWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBTaW1wbGlmeSBEaXNwbGF5
TGlzdDo6SXRlcmF0b3IgcGFydCA1OiBUd2VhayB0aGUgcmV0dXJuIHR5cGUgb2YgRGlzcGxheUxp
c3Q6Okl0ZXJhdG9yOjpvcGVyYXRvciooKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29uIEhz
aWVoLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0Rpc3BsYXlMaXN0
VGVzdHMuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisKIDIwMjEtMDQtMDYg
IFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtXUEVd
IEVuYWJsZSBDb2cncyBHVEs0IGJhY2tlbmQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcAppbmRleCBkNGZkZDBiZThiYWY2
M2FiZjViODYzZGY0N2JlOGJjNDAxM2VlYTc2Li4wZDUwODdlMTY0NmI4M2JmYzAwMjg0YzBkNWUw
NjI2OTAxYzVlZTVjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvRGlzcGxheUxpc3RUZXN0cy5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwCkBAIC03OSw0MiArNzksNDMgQEAgVEVTVChEaXNw
bGF5TGlzdFRlc3RzLCBBcHBlbmRJdGVtcykKICAgICBFWFBFQ1RfRkFMU0UobGlzdC5pc0VtcHR5
KCkpOwogCiAgICAgYm9vbCBvYnNlcnZlZFVuZXhwZWN0ZWRJdGVtID0gZmFsc2U7Ci0gICAgZm9y
IChhdXRvIFtoYW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBsaXN0KSB7Ci0gICAgICAgIHN3aXRjaCAo
aGFuZGxlLT50eXBlKCkpIHsKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogbGlzdCkg
eworICAgICAgICBhdXRvIGhhbmRsZSA9IGRpc3BsYXlMaXN0SXRlbS0+aXRlbTsKKyAgICAgICAg
c3dpdGNoIChoYW5kbGUudHlwZSgpKSB7CiAgICAgICAgIGNhc2UgSXRlbVR5cGU6OlNldFN0cm9r
ZVRoaWNrbmVzczogewotICAgICAgICAgICAgRVhQRUNUX0ZBTFNFKGhhbmRsZS0+aXNEcmF3aW5n
SXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8U2V0U3Ryb2tlVGhp
Y2tuZXNzPigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxTZXRTdHJv
a2VUaGlja25lc3M+KCk7CisgICAgICAgICAgICBFWFBFQ1RfRkFMU0UoaGFuZGxlLmlzRHJhd2lu
Z0l0ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8U2V0U3Ryb2tlVGhp
Y2tuZXNzPigpKTsKKyAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PFNldFN0cm9r
ZVRoaWNrbmVzcz4oKTsKICAgICAgICAgICAgIEVYUEVDVF9FUShpdGVtLnRoaWNrbmVzcygpLCAx
LjUpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJdGVtVHlw
ZTo6RmlsbFBhdGg6IHsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXNEcmF3aW5n
SXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8RmlsbFBhdGg+KCkp
OwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PEZpbGxQYXRoPigpOworICAg
ICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzRHJhd2luZ0l0ZW0oKSk7CisgICAgICAgICAg
ICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8RmlsbFBhdGg+KCkpOworICAgICAgICAgICAgYXV0byYg
aXRlbSA9IGhhbmRsZS5nZXQ8RmlsbFBhdGg+KCk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEoaXRl
bS5wYXRoKCkucGxhdGZvcm1QYXRoKCksIHBhdGgucGxhdGZvcm1QYXRoKCkpOwogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJdGVtVHlwZTo6RmlsbFJlY3RXaXRo
R3JhZGllbnQ6IHsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXNEcmF3aW5nSXRl
bSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8RmlsbFJlY3RXaXRoR3Jh
ZGllbnQ+KCkpOwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PEZpbGxSZWN0
V2l0aEdyYWRpZW50PigpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzRHJhd2lu
Z0l0ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8RmlsbFJlY3RXaXRo
R3JhZGllbnQ+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8RmlsbFJl
Y3RXaXRoR3JhZGllbnQ+KCk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEoaXRlbS5yZWN0KCksIEZs
b2F0UmVjdCgxLiwgMS4sIDEwLiwgMTAuKSk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEoJml0ZW0u
Z3JhZGllbnQoKSwgZ3JhZGllbnQucHRyKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KICAgICAgICAgY2FzZSBJdGVtVHlwZTo6U2V0SW5saW5lRmlsbENvbG9yOiB7Ci0gICAgICAg
ICAgICBFWFBFQ1RfRkFMU0UoaGFuZGxlLT5pc0RyYXdpbmdJdGVtKCkpOwotICAgICAgICAgICAg
RVhQRUNUX1RSVUUoaGFuZGxlLT5pczxTZXRJbmxpbmVGaWxsQ29sb3I+KCkpOwotICAgICAgICAg
ICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PFNldElubGluZUZpbGxDb2xvcj4oKTsKKyAgICAg
ICAgICAgIEVYUEVDVF9GQUxTRShoYW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKKyAgICAgICAgICAg
IEVYUEVDVF9UUlVFKGhhbmRsZS5pczxTZXRJbmxpbmVGaWxsQ29sb3I+KCkpOworICAgICAgICAg
ICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8U2V0SW5saW5lRmlsbENvbG9yPigpOwogICAgICAg
ICAgICAgRVhQRUNUX0VRKGl0ZW0uY29sb3IoKSwgQ29sb3I6OnJlZCk7CiAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgfQogI2lmIEVOQUJMRShJTkxJTkVfUEFUSF9EQVRBKQogICAgICAgICBj
YXNlIEl0ZW1UeXBlOjpTdHJva2VJbmxpbmVQYXRoOiB7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJV
RShoYW5kbGUtPmlzRHJhd2luZ0l0ZW0oKSk7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5k
bGUtPmlzPFN0cm9rZUlubGluZVBhdGg+KCkpOwotICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhh
bmRsZS0+Z2V0PFN0cm9rZUlubGluZVBhdGg+KCk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRSho
YW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5p
czxTdHJva2VJbmxpbmVQYXRoPigpKTsKKyAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUu
Z2V0PFN0cm9rZUlubGluZVBhdGg+KCk7CiAgICAgICAgICAgICBjb25zdCBhdXRvIHBhdGggPSBp
dGVtLnBhdGgoKTsKICAgICAgICAgICAgIGF1dG8mIGxpbmUgPSBwYXRoLmlubGluZURhdGE8TGlu
ZURhdGE+KCk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEobGluZS5zdGFydCwgRmxvYXRQb2ludCgw
LCAwKSk7CkBAIC0xNDgsMTEgKzE0OSwxMiBAQCBURVNUKERpc3BsYXlMaXN0VGVzdHMsIEFwcGVu
ZEl0ZW1zKQogCiAgICAgbGlzdC5hcHBlbmQ8RmlsbFJlY3RXaXRoQ29sb3I+KEZsb2F0UmVjdCB7
IDAsIDAsIDEwMCwgMTAwIH0sIENvbG9yOjpibGFjayk7CiAKLSAgICBmb3IgKGF1dG8gW2hhbmRs
ZSwgZXh0ZW50LCBzaXplXSA6IGxpc3QpIHsKLSAgICAgICAgRVhQRUNUX0VRKGhhbmRsZS0+dHlw
ZSgpLCBJdGVtVHlwZTo6RmlsbFJlY3RXaXRoQ29sb3IpOwotICAgICAgICBFWFBFQ1RfVFJVRSho
YW5kbGUtPmlzPEZpbGxSZWN0V2l0aENvbG9yPigpKTsKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxp
c3RJdGVtIDogbGlzdCkgeworICAgICAgICBhdXRvIGhhbmRsZSA9IGRpc3BsYXlMaXN0SXRlbS0+
aXRlbTsKKyAgICAgICAgRVhQRUNUX0VRKGhhbmRsZS50eXBlKCksIEl0ZW1UeXBlOjpGaWxsUmVj
dFdpdGhDb2xvcik7CisgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxGaWxsUmVjdFdpdGhD
b2xvcj4oKSk7CiAKLSAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PEZpbGxSZWN0V2l0
aENvbG9yPigpOworICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxGaWxsUmVjdFdpdGhD
b2xvcj4oKTsKICAgICAgICAgRVhQRUNUX0VRKCppdGVtLmNvbG9yKCkudHJ5R2V0QXNTUkdCQUJ5
dGVzKCksIENvbG9yOjpibGFjayk7CiAgICAgICAgIEVYUEVDVF9FUShpdGVtLnJlY3QoKSwgRmxv
YXRSZWN0KDAsIDAsIDEwMCwgMTAwKSk7CiAgICAgfQpAQCAtMjI0LDggKzIyNiw4IEBAIFRFU1Qo
RGlzcGxheUxpc3RUZXN0cywgSXRlbUJ1ZmZlckNsaWVudCkKICAgICBzaGFsbG93Q29weS5zZXRJ
dGVtQnVmZmVyUmVhZGluZ0NsaWVudCgmcmVhZGVyKTsKIAogICAgIFZlY3RvcjxJdGVtVHlwZT4g
aXRlbVR5cGVzOwotICAgIGZvciAoYXV0byBbaGFuZGxlLCBleHRlbnQsIHNpemVdIDogc2hhbGxv
d0NvcHkpCi0gICAgICAgIGl0ZW1UeXBlcy5hcHBlbmQoaGFuZGxlLT50eXBlKCkpOworICAgIGZv
ciAoYXV0byBkaXNwbGF5TGlzdEl0ZW0gOiBzaGFsbG93Q29weSkKKyAgICAgICAgaXRlbVR5cGVz
LmFwcGVuZChkaXNwbGF5TGlzdEl0ZW0tPml0ZW0udHlwZSgpKTsKIAogICAgIEVYUEVDVF9GQUxT
RShzaGFsbG93Q29weS5pc0VtcHR5KCkpOwogICAgIEVYUEVDVF9FUShpdGVtVHlwZXMuc2l6ZSgp
LCA0VSk7Cg==
</data>
<flag name="commit-queue"
          id="445199"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425332</attachid>
            <date>2021-04-06 15:59:54 -0700</date>
            <delta_ts>2021-04-06 22:56:30 -0700</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-224148-20210406155953.patch</filename>
            <type>text/plain</type>
            <size>13748</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGNhOWU4Y2I4ODFkYTJl
OTQzMmZmMGU2OWRlOGQ0OWE0ZDllNDM4ZS4uZDRiZDY1NTYzNGRkZDA2YjZiYTQwNTA0MGI0ZDgw
N2YzZjg2NThjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA0LTA2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBTaW1wbGlmeSBEaXNwbGF5TGlzdDo6SXRlcmF0b3IgcGFydCA1OiBUd2VhayB0aGUgcmV0
dXJuIHR5cGUgb2YgRGlzcGxheUxpc3Q6Okl0ZXJhdG9yOjpvcGVyYXRvciooKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTQ4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgV2Vuc29uIEhzaWVoLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbWlncmF0ZXMg
ZnJvbQorCisgICAgICAgIHN0cnVjdCBWYWx1ZSB7CisgICAgICAgICAgICBPcHRpb25hbDxJdGVt
SGFuZGxlPiBpdGVtOworICAgICAgICAgICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBleHRlbnQ7Cisg
ICAgICAgICAgICBzaXplX3QgaXRlbVNpemVJbkJ1ZmZlciB7IDAgfTsKKyAgICAgICAgfTsKKyAg
ICAgICAgVmFsdWUgb3BlcmF0b3IqKCkgY29uc3Q7CisKKyAgICAgICAgdG8KKworICAgICAgICBz
dHJ1Y3QgVmFsdWUgeworICAgICAgICAgICAgSXRlbUhhbmRsZSBpdGVtOworICAgICAgICAgICAg
T3B0aW9uYWw8RmxvYXRSZWN0PiBleHRlbnQ7CisgICAgICAgICAgICBzaXplX3QgaXRlbVNpemVJ
bkJ1ZmZlciB7IDAgfTsKKyAgICAgICAgfTsKKyAgICAgICAgT3B0aW9uYWw8VmFsdWU+IG9wZXJh
dG9yKigpIGNvbnN0CisKKyAgICAgICAgVGhlcmUgYXJlIHR3byByZWFzb25zIGZvciB0aGlzOgor
ICAgICAgICAxLiBQaGlsb3NvcGhpY2FsbHksIGlmIHRoZSBpdGVtIGlzIG51bGxvcHQsIHRoZW4g
YWxsIHRoZSBzdHVmZiBpbiB0aGUgVmFsdWUgaXMgYWxzbyBtZWFuaW5nbGVzcworICAgICAgICAy
LiBQYXJ0IG9mIHRoZSBpdGVyYXRvcidzIEFQSSBjb250cmFjdCBpcyB0aGF0IGlmIHRoZSBpdGVt
IGlzIG51bGxvcHQsIHlvdSdyZSBub3QgYWxsb3dlZCB0byBrZWVwCisgICAgICAgICAgICAgICBp
dGVyYXRpbmcgLSBkb2luZyB0aGlzIHdpbGwgbGVhZCB0byBhbiBpbmZpbml0ZSBsb29wLiBQcm9t
b3RpbmcgdGhlIG9wdGlvbmFsIG1ha2VzIGl0IG1vcmUKKyAgICAgICAgICAgICAgIGxpa2VseSB0
aGF0IHRoaXMgQVBJIGNvbnRyYWN0IGlzIGZvbGxvd2VkIGluIHRoZSBmdXR1cmUuCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hhbmdlLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6YXNUZXh0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6ZHVtcCBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
Lmg6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJhdG9y
OjpvcGVyYXRvciogY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpSZXBsYXllcjo6cmVwbGF5KToKKwogMjAyMS0wNC0wNiAgUGF0cmljayBBbmdsZSAgPHBh
bmdsZUBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogR3JpZCBvdmVybGF5IGFy
ZWFzIGFwcGVhciBvZmZzZXQgZnJvbSB0aGVpciBhY3R1YWwgYXJlYXMgd2hlbiB0aGUgZ3JpZCBj
b250YWluZXIgaGFzIGEgYm9yZGVyIHNldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5jcHAKaW5kZXgg
YTg5YmY5MTk1MGQ1ZWI2NTI5OGViZmExNzQ5NTBjZjE4NjcwN2E0ZS4uYWE1NWI0ZWMyNWQ2ZTkx
NzBlNDhkMWQ2NWE3YzQyNDJjZDljOTRkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuY3BwCkBA
IC0xMTQsMTMgKzExNCwxNCBAQCBib29sIERpc3BsYXlMaXN0OjpzaG91bGREdW1wRm9yRmxhZ3Mo
QXNUZXh0RmxhZ3MgZmxhZ3MsIEl0ZW1IYW5kbGUgaXRlbSkKIFN0cmluZyBEaXNwbGF5TGlzdDo6
YXNUZXh0KEFzVGV4dEZsYWdzIGZsYWdzKSBjb25zdAogewogICAgIFRleHRTdHJlYW0gc3RyZWFt
KFRleHRTdHJlYW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUsIFRleHRTdHJlYW06OkZvcm1hdHRp
bmc6OlNWR1N0eWxlUmVjdCk7Ci0gICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQsIGl0ZW1TaXpl
SW5CdWZmZXJdIDogKnRoaXMpIHsKLSAgICAgICAgaWYgKCFzaG91bGREdW1wRm9yRmxhZ3MoZmxh
Z3MsICppdGVtKSkKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogKnRoaXMpIHsKKyAg
ICAgICAgYXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA9IGRpc3BsYXlMaXN0
SXRlbS52YWx1ZSgpOworICAgICAgICBpZiAoIXNob3VsZER1bXBGb3JGbGFncyhmbGFncywgaXRl
bSkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBUZXh0U3RyZWFtOjpHcm91cFNj
b3BlIGdyb3VwKHN0cmVhbSk7CiAgICAgICAgIHN0cmVhbSA8PCBpdGVtOwotICAgICAgICBpZiAo
aXRlbS0+aXNEcmF3aW5nSXRlbSgpKQorICAgICAgICBpZiAoaXRlbS5pc0RyYXdpbmdJdGVtKCkp
CiAgICAgICAgICAgICBzdHJlYW0gPDwgIiBleHRlbnQgIiA8PCBleHRlbnQ7CiAgICAgfQogICAg
IHJldHVybiBzdHJlYW0ucmVsZWFzZSgpOwpAQCAtMTMxLDEwICsxMzIsMTEgQEAgdm9pZCBEaXNw
bGF5TGlzdDo6ZHVtcChUZXh0U3RyZWFtJiB0cykgY29uc3QKICAgICBUZXh0U3RyZWFtOjpHcm91
cFNjb3BlIGdyb3VwKHRzKTsKICAgICB0cyA8PCAiZGlzcGxheSBsaXN0IjsKIAotICAgIGZvciAo
YXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6ICp0aGlzKSB7CisgICAgZm9y
IChhdXRvIGRpc3BsYXlMaXN0SXRlbSA6ICp0aGlzKSB7CisgICAgICAgIGF1dG8gW2l0ZW0sIGV4
dGVudCwgaXRlbVNpemVJbkJ1ZmZlcl0gPSBkaXNwbGF5TGlzdEl0ZW0udmFsdWUoKTsKICAgICAg
ICAgVGV4dFN0cmVhbTo6R3JvdXBTY29wZSBncm91cCh0cyk7CiAgICAgICAgIHRzIDw8IGl0ZW07
Ci0gICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJdGVtKCkpCisgICAgICAgIGlmIChpdGVtLmlz
RHJhd2luZ0l0ZW0oKSkKICAgICAgICAgICAgIHRzIDw8ICIgZXh0ZW50ICIgPDwgZXh0ZW50Owog
ICAgIH0KICAgICB0cy5zdGFydEdyb3VwKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCmluZGV4IDgx
MmJhYjgzZTk1Nzc4ZjBjNmZjNjQwZDJhMzI2YmNjYTJlZjIwNTkuLjJjZWE0ZDk1MDg0MzNlY2I1
Yjk5YzBiYzYyZmNmOGJhMjYxNjcxM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTExOCwxOCAr
MTE4LDIwIEBAIHB1YmxpYzoKICAgICAgICAgdm9pZCBvcGVyYXRvcisrKCkgeyBhZHZhbmNlKCk7
IH0KIAogICAgICAgICBzdHJ1Y3QgVmFsdWUgewotICAgICAgICAgICAgT3B0aW9uYWw8SXRlbUhh
bmRsZT4gaXRlbTsKKyAgICAgICAgICAgIEl0ZW1IYW5kbGUgaXRlbTsKICAgICAgICAgICAgIE9w
dGlvbmFsPEZsb2F0UmVjdD4gZXh0ZW50OwogICAgICAgICAgICAgc2l6ZV90IGl0ZW1TaXplSW5C
dWZmZXIgeyAwIH07CiAgICAgICAgIH07CiAKLSAgICAgICAgVmFsdWUgb3BlcmF0b3IqKCkgY29u
c3QKKyAgICAgICAgT3B0aW9uYWw8VmFsdWU+IG9wZXJhdG9yKigpIGNvbnN0CiAgICAgICAgIHsK
LSAgICAgICAgICAgIHJldHVybiB7Ci0gICAgICAgICAgICAgICAgbV9pc1ZhbGlkID8gbWFrZU9w
dGlvbmFsKEl0ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0pIDogV1RGOjpudWxs
b3B0LAorICAgICAgICAgICAgaWYgKCFtX2lzVmFsaWQpCisgICAgICAgICAgICAgICAgcmV0dXJu
IFdURjo6bnVsbG9wdDsKKyAgICAgICAgICAgIHJldHVybiB7eworICAgICAgICAgICAgICAgIEl0
ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0sCiAgICAgICAgICAgICAgICAgbV9j
dXJyZW50RXh0ZW50LAogICAgICAgICAgICAgICAgIG1fY3VycmVudEl0ZW1TaXplSW5CdWZmZXIs
Ci0gICAgICAgICAgICB9OworICAgICAgICAgICAgfX07CiAgICAgICAgIH0KIAogICAgIHByaXZh
dGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5
bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAKaW5kZXggZWRmOGUx
YzdiMGFjYTk3MjkxYzUyZGJmOTdkMGNlYTkzNDMxNzIyNy4uNzlkNTlhYjk2YWM0ZTllMzE0NDMz
OTVkZGZkOTE1MTNmZWI4ZDYyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxh
eWVyLmNwcApAQCAtMTg4LDI4ICsxODgsMzAgQEAgUmVwbGF5UmVzdWx0IFJlcGxheWVyOjpyZXBs
YXkoY29uc3QgRmxvYXRSZWN0JiBpbml0aWFsQ2xpcCwgYm9vbCB0cmFja1JlcGxheUxpc3QKICAg
ICBzaXplX3QgaSA9IDA7CiAjZW5kaWYKICAgICBSZXBsYXlSZXN1bHQgcmVzdWx0OwotICAgIGZv
ciAoYXV0byBbaXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6IG1fZGlzcGxheUxpc3Qp
IHsKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogbV9kaXNwbGF5TGlzdCkgeworICAg
ICAgICBpZiAoIWRpc3BsYXlMaXN0SXRlbSkgeworICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZv
clN0b3BwaW5nID0gU3RvcFJlcGxheVJlYXNvbjo6SW52YWxpZEl0ZW1PckV4dGVudDsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgYXV0byBbaXRlbSwgZXh0ZW50LCBp
dGVtU2l6ZUluQnVmZmVyXSA9IGRpc3BsYXlMaXN0SXRlbS52YWx1ZSgpOworCiAgICAgICAgIGlm
ICghaW5pdGlhbENsaXAuaXNaZXJvKCkgJiYgZXh0ZW50ICYmICFleHRlbnQtPmludGVyc2VjdHMo
aW5pdGlhbENsaXApKSB7CiAgICAgICAgICAgICBMT0dfV0lUSF9TVFJFQU0oRGlzcGxheUxpc3Rz
LCBzdHJlYW0gPDwgInNraXBwaW5nICIgPDwgaSsrIDw8ICIgIiA8PCBpdGVtKTsKICAgICAgICAg
ICAgIHJlc3VsdC5udW1iZXJPZkJ5dGVzUmVhZCArPSBpdGVtU2l6ZUluQnVmZmVyOwogICAgICAg
ICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoIWl0ZW0pIHsKLSAgICAg
ICAgICAgIHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZyA9IFN0b3BSZXBsYXlSZWFzb246OkludmFs
aWRJdGVtT3JFeHRlbnQ7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotCiAgICAgICAg
IExPR19XSVRIX1NUUkVBTShEaXNwbGF5TGlzdHMsIHN0cmVhbSA8PCAiYXBwbHlpbmcgIiA8PCBp
KysgPDwgIiAiIDw8IGl0ZW0pOwogCi0gICAgICAgIGlmIChpdGVtLT5pczxNZXRhQ29tbWFuZENo
YW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+KCkpIHsKKyAgICAgICAgaWYgKGl0ZW0uaXM8TWV0
YUNvbW1hbmRDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyPigpKSB7CiAgICAgICAgICAgICBy
ZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQgKz0gaXRlbVNpemVJbkJ1ZmZlcjsKICAgICAgICAgICAg
IHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZyA9IFN0b3BSZXBsYXlSZWFzb246OkNoYW5nZURlc3Rp
bmF0aW9uSW1hZ2VCdWZmZXI7Ci0gICAgICAgICAgICByZXN1bHQubmV4dERlc3RpbmF0aW9uSW1h
Z2VCdWZmZXIgPSBpdGVtLT5nZXQ8TWV0YUNvbW1hbmRDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVm
ZmVyPigpLmlkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIHJlc3VsdC5uZXh0RGVzdGluYXRpb25J
bWFnZUJ1ZmZlciA9IGl0ZW0uZ2V0PE1ldGFDb21tYW5kQ2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1
ZmZlcj4oKS5pZGVudGlmaWVyKCk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogCi0g
ICAgICAgIGlmIChhdXRvIFtyZWFzb25Gb3JTdG9wcGluZywgbWlzc2luZ0NhY2hlZFJlc291cmNl
SWRlbnRpZmllcl0gPSBhcHBseUl0ZW0oKml0ZW0pOyByZWFzb25Gb3JTdG9wcGluZykgeworICAg
ICAgICBpZiAoYXV0byBbcmVhc29uRm9yU3RvcHBpbmcsIG1pc3NpbmdDYWNoZWRSZXNvdXJjZUlk
ZW50aWZpZXJdID0gYXBwbHlJdGVtKGl0ZW0pOyByZWFzb25Gb3JTdG9wcGluZykgewogICAgICAg
ICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gKnJlYXNvbkZvclN0b3BwaW5nOwogICAg
ICAgICAgICAgcmVzdWx0Lm1pc3NpbmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXIgPSBXVEZNb3Zl
KG1pc3NpbmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXIpOwogICAgICAgICAgICAgYnJlYWs7CkBA
IC0yMTgsOCArMjIwLDggQEAgUmVwbGF5UmVzdWx0IFJlcGxheWVyOjpyZXBsYXkoY29uc3QgRmxv
YXRSZWN0JiBpbml0aWFsQ2xpcCwgYm9vbCB0cmFja1JlcGxheUxpc3QKICAgICAgICAgcmVzdWx0
Lm51bWJlck9mQnl0ZXNSZWFkICs9IGl0ZW1TaXplSW5CdWZmZXI7CiAKICAgICAgICAgaWYgKFVO
TElLRUxZKHRyYWNrUmVwbGF5TGlzdCkpIHsKLSAgICAgICAgICAgIHJlcGxheUxpc3QtPmFwcGVu
ZCgqaXRlbSk7Ci0gICAgICAgICAgICBpZiAoaXRlbS0+aXNEcmF3aW5nSXRlbSgpKQorICAgICAg
ICAgICAgcmVwbGF5TGlzdC0+YXBwZW5kKGl0ZW0pOworICAgICAgICAgICAgaWYgKGl0ZW0uaXNE
cmF3aW5nSXRlbSgpKQogICAgICAgICAgICAgICAgIHJlcGxheUxpc3QtPmFkZERyYXdpbmdJdGVt
RXh0ZW50KFdURk1vdmUoZXh0ZW50KSk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvSW5NZW1vcnlEaXNw
bGF5TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlz
dHMvSW5NZW1vcnlEaXNwbGF5TGlzdC5jcHAKaW5kZXggZGQ1MGYyNzFkYWI1Mzg2ODhlMjU0ZTMy
OTM1ZGIxNWQ5YjlmNzY3ZC4uOWRmYTFjNjZhMmNjYzI2NTg5ZDExNGViNmUzMjgyZDVmODQ5MjBm
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0luTWVtb3J5RGlzcGxheUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9Jbk1lbW9yeURpc3BsYXlMaXN0LmNwcApAQCAtNjEsMTEg
KzYxLDEyIEBAIEluTWVtb3J5RGlzcGxheUxpc3Q6OkluTWVtb3J5RGlzcGxheUxpc3QoKQogSW5N
ZW1vcnlEaXNwbGF5TGlzdDo6fkluTWVtb3J5RGlzcGxheUxpc3QoKQogewogICAgIGF1dG8gZW5k
ID0gdGhpcy0+ZW5kKCk7Ci0gICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQsIHNpemVdIDogKnRo
aXMpIHsKKyAgICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogKnRoaXMpIHsKKyAgICAgICAg
YXV0byBpdGVtID0gZGlzcGxheUxpc3RJdGVtLT5pdGVtOwogICAgICAgICBBU1NFUlQoaXRlbSk7
CiAgICAgICAgIGlmICghaXRlbSkKICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBpdGVtLT5k
ZXN0cm95KCk7CisgICAgICAgIGl0ZW0uZGVzdHJveSgpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0
IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDI3Y2ExYjNjYWFmZDRi
OTc3Y2I4MWU3OGZjNWQxY2FkMWUyZDY5MzYuLjU4YjE1YTdjMWJhYmQ1YjBjODBiN2ZjMTAwZmVj
MDhjNzk5Y2VmYmUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wNC0wNiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxt
bWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10gU2ltcGxpZnkgRGlz
cGxheUxpc3Q6Okl0ZXJhdG9yIHBhcnQgNTogVHdlYWsgdGhlIHJldHVybiB0eXBlIG9mIERpc3Bs
YXlMaXN0OjpJdGVyYXRvcjo6b3BlcmF0b3IqKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDE0OAorCisgICAgICAgIFJldmlld2VkIGJ5IFdlbnNv
biBIc2llaC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5
TGlzdFRlc3RzLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorCiAyMDIxLTA0
LTA2ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBb
V1BFXSBFbmFibGUgQ29nJ3MgR1RLNCBiYWNrZW5kCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYkNvcmUvRGlzcGxheUxpc3RUZXN0cy5jcHAgYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYkNvcmUvRGlzcGxheUxpc3RUZXN0cy5jcHAKaW5kZXggZDRmZGQwYmU4
YmFmNjNhYmY1Yjg2M2RmNDdiZThiYzQwMTNlZWE3Ni4uMGQ1MDg3ZTE2NDZiODNiZmMwMDI4NGMw
ZDVlMDYyNjkwMWM1ZWU1YyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcApAQCAtNzksNDIgKzc5LDQzIEBAIFRFU1Qo
RGlzcGxheUxpc3RUZXN0cywgQXBwZW5kSXRlbXMpCiAgICAgRVhQRUNUX0ZBTFNFKGxpc3QuaXNF
bXB0eSgpKTsKIAogICAgIGJvb2wgb2JzZXJ2ZWRVbmV4cGVjdGVkSXRlbSA9IGZhbHNlOwotICAg
IGZvciAoYXV0byBbaGFuZGxlLCBleHRlbnQsIHNpemVdIDogbGlzdCkgewotICAgICAgICBzd2l0
Y2ggKGhhbmRsZS0+dHlwZSgpKSB7CisgICAgZm9yIChhdXRvIGRpc3BsYXlMaXN0SXRlbSA6IGxp
c3QpIHsKKyAgICAgICAgYXV0byBoYW5kbGUgPSBkaXNwbGF5TGlzdEl0ZW0tPml0ZW07CisgICAg
ICAgIHN3aXRjaCAoaGFuZGxlLnR5cGUoKSkgewogICAgICAgICBjYXNlIEl0ZW1UeXBlOjpTZXRT
dHJva2VUaGlja25lc3M6IHsKLSAgICAgICAgICAgIEVYUEVDVF9GQUxTRShoYW5kbGUtPmlzRHJh
d2luZ0l0ZW0oKSk7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPFNldFN0cm9r
ZVRoaWNrbmVzcz4oKSk7Ci0gICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8U2V0
U3Ryb2tlVGhpY2tuZXNzPigpOworICAgICAgICAgICAgRVhQRUNUX0ZBTFNFKGhhbmRsZS5pc0Ry
YXdpbmdJdGVtKCkpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPFNldFN0cm9r
ZVRoaWNrbmVzcz4oKSk7CisgICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxTZXRT
dHJva2VUaGlja25lc3M+KCk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEoaXRlbS50aGlja25lc3Mo
KSwgMS41KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSXRl
bVR5cGU6OkZpbGxQYXRoOiB7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzRHJh
d2luZ0l0ZW0oKSk7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPEZpbGxQYXRo
PigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxGaWxsUGF0aD4oKTsK
KyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOworICAgICAg
ICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPEZpbGxQYXRoPigpKTsKKyAgICAgICAgICAgIGF1
dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PEZpbGxQYXRoPigpOwogICAgICAgICAgICAgRVhQRUNUX0VR
KGl0ZW0ucGF0aCgpLnBsYXRmb3JtUGF0aCgpLCBwYXRoLnBsYXRmb3JtUGF0aCgpKTsKICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSXRlbVR5cGU6OkZpbGxSZWN0
V2l0aEdyYWRpZW50OiB7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzRHJhd2lu
Z0l0ZW0oKSk7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPEZpbGxSZWN0V2l0
aEdyYWRpZW50PigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxGaWxs
UmVjdFdpdGhHcmFkaWVudD4oKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pc0Ry
YXdpbmdJdGVtKCkpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPEZpbGxSZWN0
V2l0aEdyYWRpZW50PigpKTsKKyAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PEZp
bGxSZWN0V2l0aEdyYWRpZW50PigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGl0ZW0ucmVjdCgp
LCBGbG9hdFJlY3QoMS4sIDEuLCAxMC4sIDEwLikpOwogICAgICAgICAgICAgRVhQRUNUX0VRKCZp
dGVtLmdyYWRpZW50KCksIGdyYWRpZW50LnB0cigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICB9CiAgICAgICAgIGNhc2UgSXRlbVR5cGU6OlNldElubGluZUZpbGxDb2xvcjogewotICAg
ICAgICAgICAgRVhQRUNUX0ZBTFNFKGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKLSAgICAgICAg
ICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8U2V0SW5saW5lRmlsbENvbG9yPigpKTsKLSAgICAg
ICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxTZXRJbmxpbmVGaWxsQ29sb3I+KCk7Cisg
ICAgICAgICAgICBFWFBFQ1RfRkFMU0UoaGFuZGxlLmlzRHJhd2luZ0l0ZW0oKSk7CisgICAgICAg
ICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8U2V0SW5saW5lRmlsbENvbG9yPigpKTsKKyAgICAg
ICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PFNldElubGluZUZpbGxDb2xvcj4oKTsKICAg
ICAgICAgICAgIEVYUEVDVF9FUShpdGVtLmNvbG9yKCksIENvbG9yOjpyZWQpOwogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIH0KICNpZiBFTkFCTEUoSU5MSU5FX1BBVEhfREFUQSkKICAgICAg
ICAgY2FzZSBJdGVtVHlwZTo6U3Ryb2tlSW5saW5lUGF0aDogewotICAgICAgICAgICAgRVhQRUNU
X1RSVUUoaGFuZGxlLT5pc0RyYXdpbmdJdGVtKCkpOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUo
aGFuZGxlLT5pczxTdHJva2VJbmxpbmVQYXRoPigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0g
PSBoYW5kbGUtPmdldDxTdHJva2VJbmxpbmVQYXRoPigpOworICAgICAgICAgICAgRVhQRUNUX1RS
VUUoaGFuZGxlLmlzRHJhd2luZ0l0ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5k
bGUuaXM8U3Ryb2tlSW5saW5lUGF0aD4oKSk7CisgICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFu
ZGxlLmdldDxTdHJva2VJbmxpbmVQYXRoPigpOwogICAgICAgICAgICAgY29uc3QgYXV0byBwYXRo
ID0gaXRlbS5wYXRoKCk7CiAgICAgICAgICAgICBhdXRvJiBsaW5lID0gcGF0aC5pbmxpbmVEYXRh
PExpbmVEYXRhPigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGxpbmUuc3RhcnQsIEZsb2F0UG9p
bnQoMCwgMCkpOwpAQCAtMTQ4LDExICsxNDksMTIgQEAgVEVTVChEaXNwbGF5TGlzdFRlc3RzLCBB
cHBlbmRJdGVtcykKIAogICAgIGxpc3QuYXBwZW5kPEZpbGxSZWN0V2l0aENvbG9yPihGbG9hdFJl
Y3QgeyAwLCAwLCAxMDAsIDEwMCB9LCBDb2xvcjo6YmxhY2spOwogCi0gICAgZm9yIChhdXRvIFto
YW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBsaXN0KSB7Ci0gICAgICAgIEVYUEVDVF9FUShoYW5kbGUt
PnR5cGUoKSwgSXRlbVR5cGU6OkZpbGxSZWN0V2l0aENvbG9yKTsKLSAgICAgICAgRVhQRUNUX1RS
VUUoaGFuZGxlLT5pczxGaWxsUmVjdFdpdGhDb2xvcj4oKSk7CisgICAgZm9yIChhdXRvIGRpc3Bs
YXlMaXN0SXRlbSA6IGxpc3QpIHsKKyAgICAgICAgYXV0byBoYW5kbGUgPSBkaXNwbGF5TGlzdEl0
ZW0tPml0ZW07CisgICAgICAgIEVYUEVDVF9FUShoYW5kbGUudHlwZSgpLCBJdGVtVHlwZTo6Rmls
bFJlY3RXaXRoQ29sb3IpOworICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8RmlsbFJlY3RX
aXRoQ29sb3I+KCkpOwogCi0gICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxGaWxsUmVj
dFdpdGhDb2xvcj4oKTsKKyAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8RmlsbFJlY3RX
aXRoQ29sb3I+KCk7CiAgICAgICAgIEVYUEVDVF9FUSgqaXRlbS5jb2xvcigpLnRyeUdldEFzU1JH
QkFCeXRlcygpLCBDb2xvcjo6YmxhY2spOwogICAgICAgICBFWFBFQ1RfRVEoaXRlbS5yZWN0KCks
IEZsb2F0UmVjdCgwLCAwLCAxMDAsIDEwMCkpOwogICAgIH0KQEAgLTIyNCw4ICsyMjYsOCBAQCBU
RVNUKERpc3BsYXlMaXN0VGVzdHMsIEl0ZW1CdWZmZXJDbGllbnQpCiAgICAgc2hhbGxvd0NvcHku
c2V0SXRlbUJ1ZmZlclJlYWRpbmdDbGllbnQoJnJlYWRlcik7CiAKICAgICBWZWN0b3I8SXRlbVR5
cGU+IGl0ZW1UeXBlczsKLSAgICBmb3IgKGF1dG8gW2hhbmRsZSwgZXh0ZW50LCBzaXplXSA6IHNo
YWxsb3dDb3B5KQotICAgICAgICBpdGVtVHlwZXMuYXBwZW5kKGhhbmRsZS0+dHlwZSgpKTsKKyAg
ICBmb3IgKGF1dG8gZGlzcGxheUxpc3RJdGVtIDogc2hhbGxvd0NvcHkpCisgICAgICAgIGl0ZW1U
eXBlcy5hcHBlbmQoZGlzcGxheUxpc3RJdGVtLT5pdGVtLnR5cGUoKSk7CiAKICAgICBFWFBFQ1Rf
RkFMU0Uoc2hhbGxvd0NvcHkuaXNFbXB0eSgpKTsKICAgICBFWFBFQ1RfRVEoaXRlbVR5cGVzLnNp
emUoKSwgNFUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>