<?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>220356</bug_id>
          
          <creation_ts>2021-01-06 01:54:40 -0800</creation_ts>
          <short_desc>[GStreamer] Bump version requirement</short_desc>
          <delta_ts>2021-01-12 04:34:14 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</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="Philippe Normand">pnormand</reporter>
          <assigned_to name="Philippe Normand">pnormand</assigned_to>
          <cc>annulen</cc>
    
    <cc>calvaris</cc>
    
    <cc>cgarcia</cc>
    
    <cc>clopez</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>menard</cc>
    
    <cc>philipj</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>vjaquez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1717608</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-06 01:54:40 -0800</bug_when>
    <thetext>Seems like we can now require 1.14. https://packages.ubuntu.com/bionic/libs/gstreamer1.0-x</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717663</commentid>
    <comment_count>1</comment_count>
      <attachid>417090</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-06 09:18:29 -0800</bug_when>
    <thetext>Created attachment 417090
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717665</commentid>
    <comment_count>2</comment_count>
      <attachid>417091</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-06 09:20:40 -0800</bug_when>
    <thetext>Created attachment 417091
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717674</commentid>
    <comment_count>3</comment_count>
      <attachid>417097</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-06 09:29:52 -0800</bug_when>
    <thetext>Created attachment 417097
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717677</commentid>
    <comment_count>4</comment_count>
      <attachid>417098</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-06 09:33:02 -0800</bug_when>
    <thetext>Created attachment 417098
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718273</commentid>
    <comment_count>5</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-08 05:23:16 -0800</bug_when>
    <thetext>Carlos, are you OK with this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718627</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-01-11 00:24:56 -0800</bug_when>
    <thetext>I&apos;m ok as long as it doesn&apos;t break the deps policy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718957</commentid>
    <comment_count>7</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2021-01-12 04:33:48 -0800</bug_when>
    <thetext>Committed r271399: &lt;https://trac.webkit.org/changeset/271399&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718958</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-12 04:34:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/73035982&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417090</attachid>
            <date>2021-01-06 09:18:29 -0800</date>
            <delta_ts>2021-01-06 09:23:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220356-20210106091827.patch</filename>
            <type>text/plain</type>
            <size>21764</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRhNGJhMmE1ZGE2MWRl
ZjJmNjQzNTRkMDExNTE5N2RlNGYxMjJkZS4uNTMxNDRjNDBlYTc1NTc0ZDM4YjY0YmMyMzAxNGY2
YWI4MzRkNDQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAxLTA2ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XSBCdW1wIHZlcnNpb24gcmVxdWlyZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMDM1NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFJlbW92ZSBjb21waWxlLXRpbWUgYW5kIHJ1bnRpbWUgR1N0cmVh
bWVyIHZlcnNpb24gY2hlY2tzIHRoYXQgYXJlCisgICAgICAgIG5vdCBuZWVkZWQgYW55bW9yZSBz
aW5jZSB3ZSBub3cgcmVxdWlyZSBhdCBsZWFzdCBHU3RyZWFtZXIgMS4xNCBhdAorICAgICAgICBj
b25maWd1cmUgdGltZS4KKworICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3VyY2VHU3Ry
ZWFtZXIuY3BwOgorICAgICAgICAoX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZTo6X1dlYktpdFdl
YkF1ZGlvU3JjUHJpdmF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJBdWRpb1NyY1JlbmRlckFuZFB1
c2hGcmFtZXMpOgorICAgICAgICAod2ViS2l0V2ViQXVkaW9TcmNDaGFuZ2VTdGF0ZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9TaW5rR1N0cmVhbWVyLmNw
cDoKKyAgICAgICAgKHJlcXVlc3RHTENvbnRleHQpOgorICAgICAgICAod2ViS2l0R0xWaWRlb1Np
bmtDaGFuZ2VTdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dT
dHJlYW1lckF1ZGlvTWl4ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R1N0cmVhbWVyQXVkaW9N
aXhlcjo6ZW5zdXJlU3RhdGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjp3b3VsZFRhaW50T3JpZ2luIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6c2V0UGxheWJpblVSTCk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmhhbmRsZU1l
c3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpj
cmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0ludGVybmFsUHJv
dG9jb2wpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKFBsYXRm
b3JtRGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0IGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0QXVkaW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAg
ICAgICAgKHdlYktpdEF1ZGlvU2lua0NoYW5nZVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KHdlYktpdFdlYlNyY0NyZWF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMp
OgorICAgICAgICAoY29udmVydFBsYXliaW5VUkkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVzLmg6CisgICAgICAgIChXZWJD
b3JlOjpJbml0RGF0YTo6cGF5bG9hZENvbnRhaW5lclR5cGUgY29uc3QpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5
cHRvckdTdHJlYW1lci5jcHA6CisgICAgICAgICh0cmFuc2Zvcm1DYXBzKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2Uu
Y3BwOgorICAgICAgICAod2Via2l0TWVkaWFTdHJlYW1TcmNDaGFuZ2VTdGF0ZSk6CisKIDIwMjEt
MDEtMDYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVt
b3ZlIHRoZSB1bnVzZWQgUmVuZGVyU3R5bGU6OnNldEhhc1BzZXVkb1N0eWxlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCAyYWY3YWEwZGE3NzY0NWYxOTVjZjc1
Mjk1MGQ1OWJlNmE0NDQ5M2EzLi44MDkxY2VkZjU1MzUzNzQzNmQ1NWEyODgxNGNhMjk2YzlhNjli
Y2IwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9HU3RyZWFtZXIuY21ha2UK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVhbWVyLmNtYWtlCkBAIC0xNDEsOCAr
MTQxLDggQEAgaWYgKEVOQUJMRV9WSURFTykKICAgICBlbmRpZiAoKQogCiAgICAgaWYgKEVOQUJM
RV9NRURJQV9TVFJFQU0gT1IgRU5BQkxFX1dFQl9SVEMpCi0gICAgICAgIGlmIChQQ19HU1RSRUFN
RVJfVkVSU0lPTiBWRVJTSU9OX0xFU1MgIjEuMTAiKQotICAgICAgICAgICAgbWVzc2FnZShGQVRB
TF9FUlJPUiAiR1N0cmVhbWVyIDEuMTAgaXMgbmVlZGVkIGZvciBFTkFCTEVfTUVESUFfU1RSRUFN
IG9yIEVOQUJMRV9XRUJfUlRDIikKKyAgICAgICAgaWYgKFBDX0dTVFJFQU1FUl9WRVJTSU9OIFZF
UlNJT05fTEVTUyAiMS4xNCIpCisgICAgICAgICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJHU3Ry
ZWFtZXIgMS4xNCBpcyBuZWVkZWQgZm9yIEVOQUJMRV9NRURJQV9TVFJFQU0gb3IgRU5BQkxFX1dF
Ql9SVEMiKQogICAgICAgICBlbHNlICgpCiAgICAgICAgICAgICBsaXN0KEFQUEVORCBXZWJDb3Jl
X1NZU1RFTV9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgICAgICAgICAgICAgJHtHU1RSRUFNRVJf
Q09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRpb1NvdXJjZUdTdHJlYW1lci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9T
b3VyY2VHU3RyZWFtZXIuY3BwCmluZGV4IGFlMzQ1ZGIwOGI1N2ZiZDFjYTZlNDQ4ZDc5MTUzZWUw
MmU1MmNkOWMuLmNhZjA0NDNjN2ExYThjNzNmMDI1MWRhZGQ2OGFjYWRhNjkxOTc2MmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJB
dWRpb1NvdXJjZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vZ3N0cmVhbWVyL1dlYktpdFdlYkF1ZGlvU291cmNlR1N0cmVhbWVyLmNwcApAQCAtNzgsNyAr
NzgsNiBAQCBzdHJ1Y3QgX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZSB7CiAKICAgICBHUmVmUHRy
PEdzdEJ1ZmZlclBvb2w+IHBvb2w7CiAKLSAgICBib29sIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQ7
CiAgICAgYm9vbCBoYXNSZW5kZXJlZEF1ZGlibGVGcmFtZSB7IGZhbHNlIH07CiAKICAgICBMb2Nr
IGRpc3BhdGNoVG9SZW5kZXJUaHJlYWRMb2NrOwpAQCAtOTMsMTEgKzkyLDYgQEAgc3RydWN0IF9X
ZWJLaXRXZWJBdWRpb1NyY1ByaXZhdGUgewogICAgICAgICBzb3VyY2VQYWQgPSB3ZWJraXRHc3RH
aG9zdFBhZEZyb21TdGF0aWNUZW1wbGF0ZSgmc3JjVGVtcGxhdGUsICJzcmMiLCBudWxscHRyKTsK
IAogICAgICAgICBnX3JlY19tdXRleF9pbml0KCZtdXRleCk7Ci0KLSAgICAgICAgLy8gR0FQIGJ1
ZmZlciBzdXBwb3J0IGlzIGVuYWJsZWQgb25seSBmb3IgR1N0cmVhbWVyIDEuMTIuNSBiZWNhdXNl
IG9mIGEKLSAgICAgICAgLy8gbWVtb3J5IGxlYWsgdGhhdCB3YXMgZml4ZWQgaW4gdGhhdCB2ZXJz
aW9uLgotICAgICAgICAvLyBodHRwczovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzkzMDY3Ci0gICAgICAgIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQgPSB3ZWJraXRHc3RDaGVj
a1ZlcnNpb24oMSwgMTIsIDUpOwogICAgIH0KIAogICAgIH5fV2ViS2l0V2ViQXVkaW9TcmNQcml2
YXRlKCkKQEAgLTM3MCw3ICszNjQsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRXZWJBdWRpb1NyY1Jl
bmRlckFuZFB1c2hGcmFtZXMoR1JlZlB0cjxHc3RFbGVtZW50PiYmIGVsZW1lbnQsCiAgICAgICAg
IEdTVF9CVUZGRVJfVElNRVNUQU1QKGJ1ZmZlci5nZXQoKSkgPSBvdXRwdXRUaW1lc3RhbXAucG9z
aXRpb24ubmFub3NlY29uZHMoKTsKICAgICAgICAgR1NUX0JVRkZFUl9EVVJBVElPTihidWZmZXIu
Z2V0KCkpID0gZHVyYXRpb247CiAKLSAgICAgICAgaWYgKHByaXYtPmVuYWJsZUdhcEJ1ZmZlclN1
cHBvcnQgJiYgcHJpdi0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQorICAgICAgICBpZiAo
cHJpdi0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQogICAgICAgICAgICAgR1NUX0JVRkZF
Ul9GTEFHX1NFVChidWZmZXIuZ2V0KCksIEdTVF9CVUZGRVJfRkxBR19HQVApOwogCiAgICAgICAg
IGlmIChmYWlsZWQpCkBAIC00MzAsOSArNDI0LDcgQEAgc3RhdGljIEdzdFN0YXRlQ2hhbmdlUmV0
dXJuIHdlYktpdFdlYkF1ZGlvU3JjQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxlbWVudCwgR3MK
ICAgICBhdXRvKiBzcmMgPSBXRUJLSVRfV0VCX0FVRElPX1NSQyhlbGVtZW50KTsKICAgICBhdXRv
KiBwcml2ID0gc3JjLT5wcml2OwogCi0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAg
ICAgR1NUX0RFQlVHX09CSkVDVChlbGVtZW50LCAiJXMiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9u
YW1lKHRyYW5zaXRpb24pKTsKLSNlbmRpZgogCiAgICAgc3dpdGNoICh0cmFuc2l0aW9uKSB7CiAg
ICAgY2FzZSBHU1RfU1RBVEVfQ0hBTkdFX05VTExfVE9fUkVBRFk6CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFt
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlk
ZW9TaW5rR1N0cmVhbWVyLmNwcAppbmRleCBlZmY3NmJjNzNiODczNjEzNjMxZTFjMWE5YTZkOTc5
YzExNzM1Y2Y1Li40YjA4OTAxZjM3MmY1NTdjNTM2M2NhNDFhYzU2NzNjZDhiMzNjN2NkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRl
b1NpbmtHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9HTFZpZGVvU2lua0dTdHJlYW1lci5jcHAKQEAgLTEzMywxMSArMTMzLDcgQEAg
T3B0aW9uYWw8R1JlZlB0cjxHc3RDb250ZXh0Pj4gcmVxdWVzdEdMQ29udGV4dChjb25zdCBjaGFy
KiBjb250ZXh0VHlwZSkKICAgICBpZiAoIWdfc3RyY21wMChjb250ZXh0VHlwZSwgImdzdC5nbC5h
cHBfY29udGV4dCIpKSB7CiAgICAgICAgIEdzdENvbnRleHQqIGFwcENvbnRleHQgPSBnc3RfY29u
dGV4dF9uZXcoImdzdC5nbC5hcHBfY29udGV4dCIsIFRSVUUpOwogICAgICAgICBHc3RTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSA9IGdzdF9jb250ZXh0X3dyaXRhYmxlX3N0cnVjdHVyZShhcHBDb250ZXh0
KTsKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxMiwgMCkKICAgICAgICAgZ3N0X3N0cnVjdHVy
ZV9zZXQoc3RydWN0dXJlLCAiY29udGV4dCIsIEdTVF9UWVBFX0dMX0NPTlRFWFQsIGdzdEdMQ29u
dGV4dCwgbnVsbHB0cik7Ci0jZWxzZQotICAgICAgICBnc3Rfc3RydWN0dXJlX3NldChzdHJ1Y3R1
cmUsICJjb250ZXh0IiwgR1NUX0dMX1RZUEVfQ09OVEVYVCwgZ3N0R0xDb250ZXh0LCBudWxscHRy
KTsKLSNlbmRpZgogICAgICAgICByZXR1cm4gYWRvcHRHUmVmKGFwcENvbnRleHQpOwogICAgIH0K
IApAQCAtMTU4LDE1ICsxNTQsMTEgQEAgc3RhdGljIGJvb2wgc2V0R0xDb250ZXh0KEdzdEVsZW1l
bnQqIGVsZW1lbnRTaW5rLCBjb25zdCBjaGFyKiBjb250ZXh0VHlwZSkKIAogc3RhdGljIEdzdFN0
YXRlQ2hhbmdlUmV0dXJuIHdlYktpdEdMVmlkZW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCog
ZWxlbWVudCwgR3N0U3RhdGVDaGFuZ2UgdHJhbnNpdGlvbikKIHsKLSNpZiBHU1RfQ0hFQ0tfVkVS
U0lPTigxLCAxNCwgMCkKICAgICBHU1RfREVCVUdfT0JKRUNUKGVsZW1lbnQsICIlcyIsIGdzdF9z
dGF0ZV9jaGFuZ2VfZ2V0X25hbWUodHJhbnNpdGlvbikpOwotI2VuZGlmCiAKICAgICBzd2l0Y2gg
KHRyYW5zaXRpb24pIHsKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfTlVMTF9UT19SRUFEWToK
LSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNCwgMCkKICAgICBjYXNlIEdTVF9TVEFURV9DSEFO
R0VfUkVBRFlfVE9fUkVBRFk6Ci0jZW5kaWYKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfUkVB
RFlfVE9fUEFVU0VEOiB7CiAgICAgICAgIGlmICghc2V0R0xDb250ZXh0KGVsZW1lbnQsIEdTVF9H
TF9ESVNQTEFZX0NPTlRFWFRfVFlQRSkpCiAgICAgICAgICAgICByZXR1cm4gR1NUX1NUQVRFX0NI
QU5HRV9GQUlMVVJFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwCmluZGV4IDcw
OTA0MDdjNzU2MGY1NjMwMmZjZDA0Yzg3NmZiNzM2Y2ZkM2FhYzcuLjI4ZDdhMWQ1NjJjMjRlYWM5
MTZlYzViZTc5NzVjMmMwMTViOTM5OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb01peGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1N0cmVhbWVyQXVkaW9NaXhl
ci5jcHAKQEAgLTU3LDkgKzU3LDggQEAgR1N0cmVhbWVyQXVkaW9NaXhlcjo6R1N0cmVhbWVyQXVk
aW9NaXhlcigpCiAKIHZvaWQgR1N0cmVhbWVyQXVkaW9NaXhlcjo6ZW5zdXJlU3RhdGUoR3N0U3Rh
dGVDaGFuZ2Ugc3RhdGVDaGFuZ2UpCiB7Ci0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDAp
CiAgICAgR1NUX0RFQlVHX09CSkVDVChtX3BpcGVsaW5lLmdldCgpLCAiSGFuZGxpbmcgJXMgdHJh
bnNpdGlvbiAoJXUgbWl4ZXIgcGFkcykiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0YXRl
Q2hhbmdlKSwgbV9taXhlci0+bnVtc2lua3BhZHMpOwotI2VuZGlmCisKICAgICBzd2l0Y2ggKHN0
YXRlQ2hhbmdlKSB7CiAgICAgY2FzZSBHU1RfU1RBVEVfQ0hBTkdFX1JFQURZX1RPX1BBVVNFRDoK
ICAgICAgICAgZ3N0X2VsZW1lbnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFU
RV9QQVVTRUQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
LmNwcAppbmRleCAwZjZjNjZkMjA3NWQ1N2M1Yzc3NDM2YzFkZDA5NGQ0NDFlN2VlNTg3Li5lNWUx
MDMwNjc5MTEwNmU2YTU0ZTAxODgyYzUwMTY1ZjUwZDQ5NjhjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTUzLDE0ICsxNTMsNiBAQCBz
dGF0aWMgdm9pZCBidXNNZXNzYWdlQ2FsbGJhY2soR3N0QnVzKiwgR3N0TWVzc2FnZSogbWVzc2Fn
ZSwgTWVkaWFQbGF5ZXJQcml2YXRlRwogICAgIHBsYXllci0+aGFuZGxlTWVzc2FnZShtZXNzYWdl
KTsKIH0KIAotc3RhdGljIHZvaWQgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChVUkwmIHVybCkK
LXsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkKLSAgICAgICAgcmV0
dXJuOwotICAgIGlmICh1cmwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpIHx8IHVybC5wcm90b2Nv
bElzQmxvYigpKQotICAgICAgICB1cmwuc2V0UHJvdG9jb2wobWFrZVN0cmluZygid2Via2l0KyIs
IHVybC5wcm90b2NvbCgpKSk7Ci19Ci0KIHN0YXRpYyB2b2lkIGluaXRpYWxpemVEZWJ1Z0NhdGVn
b3J5KCkKIHsKICAgICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZUZsYWc7CkBAIC04NTIsMjIg
Kzg0NCwxNSBAQCBib29sIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6aGFzU2luZ2xlU2Vj
dXJpdHlPcmlnaW4oKSBjb25zdAogCiBPcHRpb25hbDxib29sPiBNZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXI6OndvdWxkVGFpbnRPcmlnaW4oY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbikg
Y29uc3QKIHsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAg
ICAgICBHU1RfVFJBQ0VfT0JKRUNUKHBpcGVsaW5lKCksICJDaGVja2luZyAldSBvcmlnaW5zIiwg
bV9vcmlnaW5zLnNpemUoKSk7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzcG9uc2VPcmlnaW4gOiBt
X29yaWdpbnMpIHsKLSAgICAgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2VzcygqcmVzcG9uc2VP
cmlnaW4pKSB7Ci0gICAgICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChwaXBlbGluZSgpLCAi
Rm91bmQgcmVhY2hhYmxlIHJlc3BvbnNlIG9yaWdpbiIpOwotICAgICAgICAgICAgICAgIHJldHVy
biB0cnVlOwotICAgICAgICAgICAgfQorICAgIEdTVF9UUkFDRV9PQkpFQ1QocGlwZWxpbmUoKSwg
IkNoZWNraW5nICV1IG9yaWdpbnMiLCBtX29yaWdpbnMuc2l6ZSgpKTsKKyAgICBmb3IgKGF1dG8m
IHJlc3BvbnNlT3JpZ2luIDogbV9vcmlnaW5zKSB7CisgICAgICAgIGlmICghb3JpZ2luLmNhbkFj
Y2VzcygqcmVzcG9uc2VPcmlnaW4pKSB7CisgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBp
cGVsaW5lKCksICJGb3VuZCByZWFjaGFibGUgcmVzcG9uc2Ugb3JpZ2luIik7CisgICAgICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfQotICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVs
aW5lKCksICJObyB2YWxpZCByZXNwb25zZSBvcmlnaW4gZm91bmQiKTsKLSAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KLQotICAgIC8vIEdTdHJlYW1lciA8IDEuMTIgaGFzIGFuIGluY29tcGxl
dGUgdXJpZG93bmxvYWRlciBpbXBsZW1lbnRhdGlvbiBzbyB3ZQotICAgIC8vIGNhbid0IHVzZSBX
ZWJLaXRXZWJTcmMgZm9yIGFkYXB0aXZlIGZyYWdtZW50cyBkb3dubG9hZGluZyBpZiB0aGlzCi0g
ICAgLy8gdmVyc2lvbiBpcyBkZXRlY3RlZC4KLSAgICByZXR1cm4gbV9oYXNUYWludGVkT3JpZ2lu
OworICAgIEdTVF9ERUJVR19PQkpFQ1QocGlwZWxpbmUoKSwgIk5vIHZhbGlkIHJlc3BvbnNlIG9y
aWdpbiBmb3VuZCIpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXI6OnNpbXVsYXRlQXVkaW9JbnRlcnJ1cHRpb24oKQpAQCAtOTg3LDcgKzk3
Miw2IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpzZXRQbGF5YmluVVJMKGNv
bnN0IFVSTCYgdXJsKQogICAgICAgICBjbGVhblVSTFN0cmluZyA9IGNsZWFuVVJMU3RyaW5nLnN1
YnN0cmluZygwLCB1cmwucGF0aEVuZCgpKTsKIAogICAgIG1fdXJsID0gVVJMKFVSTCgpLCBjbGVh
blVSTFN0cmluZyk7Ci0gICAgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChtX3VybCk7CiAgICAg
R1NUX0lORk9fT0JKRUNUKHBpcGVsaW5lKCksICJMb2FkICVzIiwgbV91cmwuc3RyaW5nKCkudXRm
OCgpLmRhdGEoKSk7CiAgICAgZ19vYmplY3Rfc2V0KG1fcGlwZWxpbmUuZ2V0KCksICJ1cmkiLCBt
X3VybC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpLCBudWxscHRyKTsKIH0KQEAgLTIwMDgsNyArMTk5
Miw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdz
dE1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgICAgICBpZiAoZ3N0X3N0cnVjdHVyZV9nZXQoc3Ry
dWN0dXJlLCAicmVhZC1wb3NpdGlvbiIsIEdfVFlQRV9VSU5UNjQsICZtX25ldHdvcmtSZWFkUG9z
aXRpb24sICJzaXplIiwgR19UWVBFX1VJTlQ2NCwgJm1faHR0cFJlc3BvbnNlVG90YWxTaXplLCBu
dWxscHRyKSkKICAgICAgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5lKCksICJV
cGRhdGVkIG5ldHdvcmsgcmVhZCBwb3NpdGlvbiAlIiBHX0dVSU5UNjRfRk9STUFUICIsIHNpemU6
ICUiIEdfR1VJTlQ2NF9GT1JNQVQsIG1fbmV0d29ya1JlYWRQb3NpdGlvbiwgbV9odHRwUmVzcG9u
c2VUb3RhbFNpemUpOwogICAgICAgICB9IGVsc2UgaWYgKGdzdF9zdHJ1Y3R1cmVfaGFzX25hbWUo
c3RydWN0dXJlLCAiYWRhcHRpdmUtc3RyZWFtaW5nLXN0YXRpc3RpY3MiKSkgewotICAgICAgICAg
ICAgaWYgKFdFQktJVF9JU19XRUJfU1JDKG1fc291cmNlLmdldCgpKSAmJiAhd2Via2l0R3N0Q2hl
Y2tWZXJzaW9uKDEsIDEyLCAwKSkgeworICAgICAgICAgICAgaWYgKFdFQktJVF9JU19XRUJfU1JD
KG1fc291cmNlLmdldCgpKSkgewogICAgICAgICAgICAgICAgIGlmIChjb25zdCBjaGFyKiB1cmkg
PSBnc3Rfc3RydWN0dXJlX2dldF9zdHJpbmcoc3RydWN0dXJlLCAidXJpIikpCiAgICAgICAgICAg
ICAgICAgICAgIG1faGFzVGFpbnRlZE9yaWdpbiA9IHdlYktpdFNyY1dvdWxkVGFpbnRPcmlnaW4o
V0VCS0lUX1dFQl9TUkNfQ0FTVChtX3NvdXJjZS5nZXQoKSksIFNlY3VyaXR5T3JpZ2luOjpjcmVh
dGUoVVJMKFVSTCgpLCB1cmkpKSk7CiAgICAgICAgICAgICB9CkBAIC0yNzYzLDExICsyNzQ3LDcg
QEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmNyZWF0ZUdTVFBsYXlCaW4oY29u
c3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYKICAgICBtX3RleHRBcHBTaW5rUGFkID0gYWRvcHRH
UmVmKGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fdGV4dEFwcFNpbmsuZ2V0KCksICJzaW5r
IikpOwogICAgIEFTU0VSVChtX3RleHRBcHBTaW5rUGFkKTsKIAotICAgIEdSZWZQdHI8R3N0Q2Fw
cz4gdGV4dENhcHM7Ci0gICAgaWYgKHdlYmtpdEdzdENoZWNrVmVyc2lvbigxLCAxNCwgMCkpCi0g
ICAgICAgIHRleHRDYXBzID0gYWRvcHRHUmVmKGdzdF9jYXBzX25ld19lbXB0eV9zaW1wbGUoImFw
cGxpY2F0aW9uL3gtc3VidGl0bGUtdnR0IikpOwotICAgIGVsc2UKLSAgICAgICAgdGV4dENhcHMg
PSBhZG9wdEdSZWYoZ3N0X2NhcHNfbmV3X2VtcHR5X3NpbXBsZSgidGV4dC92dHQiKSk7CisgICAg
YXV0byB0ZXh0Q2FwcyA9IGFkb3B0R1JlZihnc3RfY2Fwc19uZXdfZW1wdHlfc2ltcGxlKCJhcHBs
aWNhdGlvbi94LXN1YnRpdGxlLXZ0dCIpKTsKICAgICBnX29iamVjdF9zZXQobV90ZXh0QXBwU2lu
ay5nZXQoKSwgImVtaXQtc2lnbmFscyIsIFRSVUUsICJlbmFibGUtbGFzdC1zYW1wbGUiLCBGQUxT
RSwgImNhcHMiLCB0ZXh0Q2Fwcy5nZXQoKSwgbnVsbHB0cik7CiAgICAgZ19zaWduYWxfY29ubmVj
dF9zd2FwcGVkKG1fdGV4dEFwcFNpbmsuZ2V0KCksICJuZXctc2FtcGxlIiwgR19DQUxMQkFDSyhu
ZXdUZXh0U2FtcGxlQ2FsbGJhY2spLCB0aGlzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4IDdhY2I2NjExOTI5ODRhNzI5NDhlYmM0MmNiNTYy
YmEzYTMwNjNlNzQuLjkxMTI4Zjk3ZGZmYmVhZDM3NTcyMWU3NzFmMmVlMjQ1NmY4NDAwMzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKQEAgLTUxLDE2
ICs1MSw2IEBAIHR5cGVkZWYgc3RydWN0IF9Hc3RNcGVndHNTZWN0aW9uIEdzdE1wZWd0c1NlY3Rp
b247CiAjaWYgVVNFKExJQkVQT1hZKQogLy8gSW5jbHVkZSB0aGUgPGVwb3h5L2dsLmg+IGhlYWRl
ciBiZWZvcmUgPGdzdC9nbC9nbC5oPi4KICNpbmNsdWRlIDxlcG94eS9nbC5oPgotCi0vLyBXb3Jr
YXJvdW5kIGJ1aWxkIGlzc3VlIHdpdGggUlBpIHVzZXJsYW5kIEdMRVN2MiBoZWFkZXJzIGFuZCBs
aWJlcG94eSA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTg1NjM5PgotI2lmICFHU1RfQ0hFQ0tfVkVS
U0lPTigxLCAxNCwgMCkKLSNpbmNsdWRlIDxnc3QvZ2wvZ3N0Z2xjb25maWcuaD4KLSNpZiBkZWZp
bmVkKEdTVF9HTF9IQVZFX1dJTkRPV19ESVNQTUFOWCkgJiYgR1NUX0dMX0hBVkVfV0lORE9XX0RJ
U1BNQU5YCi0jZGVmaW5lIF9fZ2wyX2hfCi0jdW5kZWYgR1NUX0dMX0hBVkVfR0xTWU5DCi0jZGVm
aW5lIEdTVF9HTF9IQVZFX0dMU1lOQyAxCi0jZW5kaWYKLSNlbmRpZiAvLyAhR1NUX0NIRUNLX1ZF
UlNJT04oMSwgMTQsIDApCiAjZW5kaWYgLy8gVVNFKExJQkVQT1hZKQogCiAjZGVmaW5lIEdTVF9V
U0VfVU5TVEFCTEVfQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9QbGF0Zm9ybURpc3BsYXlHU3RyZWFtZXIu
Y3BwCmluZGV4IDY0ZjMyYWUwMjhmYmQ1ZjQwZDQyYTY2OWYyZmU1ZWM3NTRkMmExYzguLjYzY2Ez
Njc5MmZmMGI4YTk3MTc3MGEzMWE3OWE4MDQ1NWQzY2U4MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9QbGF0Zm9ybURpc3BsYXlHU3RyZWFt
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9Q
bGF0Zm9ybURpc3BsYXlHU3RyZWFtZXIuY3BwCkBAIC05OCwxMiArOTgsNyBAQCBib29sIFBsYXRm
b3JtRGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0KCkgY29uc3QKICAgICBpZiAoIWNvbnRl
eHRIYW5kbGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGJvb2wgc2hvdWxkQWRvcHRS
ZWYgPSB3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTQsIDApOwotCi0gICAgaWYgKHNob3VsZEFk
b3B0UmVmKQotICAgICAgICBtX2dzdEdMRGlzcGxheSA9IGFkb3B0R1JlZihjcmVhdGVHc3RHTERp
c3BsYXkoKnRoaXMpKTsKLSAgICBlbHNlCi0gICAgICAgIG1fZ3N0R0xEaXNwbGF5ID0gY3JlYXRl
R3N0R0xEaXNwbGF5KCp0aGlzKTsKKyAgICBtX2dzdEdMRGlzcGxheSA9IGFkb3B0R1JlZihjcmVh
dGVHc3RHTERpc3BsYXkoKnRoaXMpKTsKICAgICBpZiAoIW1fZ3N0R0xEaXNwbGF5KQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9XZWJLaXRBdWRpb1NpbmtHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdEF1ZGlvU2lua0dTdHJlYW1l
ci5jcHAKaW5kZXggMzUxMjgyOTg5MjYwM2M2ZTQ0MTQwZTdjODEyZmM3M2E0Y2RiZmE1Yi4uZTI1
NTA1MzI0ODVmOTZkMzRiZDc2OWFmYTJkMWRkNjY1NTQ0MGM5NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdEF1ZGlvU2lua0dTdHJl
YW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L1dlYktpdEF1ZGlvU2lua0dTdHJlYW1lci5jcHAKQEAgLTI1Niw5ICsyNTYsNyBAQCBzdGF0aWMg
R3N0U3RhdGVDaGFuZ2VSZXR1cm4gd2ViS2l0QXVkaW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVu
dCogZWxlbWVudCwgR3N0UwogICAgIGF1dG8qIHNpbmsgPSBXRUJLSVRfQVVESU9fU0lOSyhlbGVt
ZW50KTsKICAgICBhdXRvKiBwcml2ID0gc2luay0+cHJpdjsKIAotI2lmIEdTVF9DSEVDS19WRVJT
SU9OKDEsIDE0LCAwKQogICAgIEdTVF9ERUJVR19PQkpFQ1Qoc2luaywgIkhhbmRsaW5nICVzIHRy
YW5zaXRpb24iLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0YXRlQ2hhbmdlKSk7Ci0jZW5k
aWYKIAogICAgIGF1dG8mIG1peGVyID0gR1N0cmVhbWVyQXVkaW9NaXhlcjo6c2luZ2xldG9uKCk7
CiAgICAgaWYgKHByaXYtPmludGVyQXVkaW9TaW5rICYmIHN0YXRlQ2hhbmdlID09IEdTVF9TVEFU
RV9DSEFOR0VfTlVMTF9UT19SRUFEWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdT
dHJlYW1lci5jcHAKaW5kZXggZjJmMGMzYzI4ZmFjNGMwMDUxNzRiNDhhZGZiMDJhOTg2ZDJiYzM5
MS4uYzg0NGJlMmRkMzcyN2VmMjc2NGI3MjU3MDZkMjIwNjI2N2JlYjQ5NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJj
ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAKQEAgLTQ2NSwxMiArNDY1LDggQEAg
c3RhdGljIEdzdEZsb3dSZXR1cm4gd2ViS2l0V2ViU3JjQ3JlYXRlKEdzdFB1c2hTcmMqIHB1c2hT
cmMsIEdzdEJ1ZmZlcioqIGJ1ZmZlcikKICAgICAvLyAxKSB3ZWJLaXRXZWJTcmNTZXRNZWRpYVBs
YXllcigpIGlzIGNhbGxlZCBieSBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIgYnkgbWVhbnMg
b2YgaG9va2luZyBwbGF5YmluJ3MKICAgICAvLyAgICAic291cmNlLXNldHVwIiBldmVudC4gVGhp
cyBkb2Vzbid0IHdvcmsgZm9yIGFkZGl0aW9uYWwgV2ViS2l0V2ViU3JjIGVsZW1lbnRzIGNyZWF0
ZWQgYnkgYWRhcHRpdmVkZW11eC4KICAgICAvLwotICAgIC8vIDIpIEEgR3N0Q29udGV4dCBxdWVy
eSBtYWRlIGhlcmUuIEJlY2F1c2Ugb2YgYSBidWcsIHRoaXMgb25seSB3b3JrcyBpbiBHU3RyZWFt
ZXIgPj0gMS4xMi4KLSAgICAvLwotICAgIC8vIEFzIGEgY29tcGF0aWJpbGl0eSB3b3JrYXJvdW5k
LCB0aGUgaHR0cDogVVJJIHByb3RvY29sIGlzIG9ubHkgcmVnaXN0ZXJlZCBmb3IgZ3N0Pj0xLjEy
OyBvdGhlcndpc2UgdXNpbmcKLSAgICAvLyB3ZWJraXQraHR0cDosIHdoaWNoIGlzIHVzZWQgYnkg
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyIGJ1dCBub3QgYnkgYWRhcHRpdmVkZW11eCdzIGFk
ZGl0aW9uYWwgc291cmNlCi0gICAgLy8gZWxlbWVudHMsIHRoZXJlZm9yZSB1c2luZyBzb3VwaHR0
cHNyYyBpbnN0ZWFkIGFuZCBub3Qgcm91dGluZyB0cmFmZmljIHRocm91Z2ggdGhlIE5ldHdvcmtQ
cm9jZXNzLgotICAgIGlmICh3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTIsIDApICYmICFtZW1i
ZXJzLT5wbGF5ZXIpIHsKKyAgICAvLyAyKSBBIEdzdENvbnRleHQgcXVlcnkgbWFkZSBoZXJlLgor
ICAgIGlmICghbWVtYmVycy0+cGxheWVyKSB7CiAgICAgICAgIG1lbWJlcnMucnVuVW5sb2NrZWQo
W3NyYywgYmFzZVNyY10oKSB7CiAgICAgICAgICAgICBHUmVmUHRyPEdzdFF1ZXJ5PiBxdWVyeSA9
IGFkb3B0R1JlZihnc3RfcXVlcnlfbmV3X2NvbnRleHQoV0VCS0lUX1dFQl9TUkNfUExBWUVSX0NP
TlRFWFRfVFlQRV9OQU1FKSk7CiAgICAgICAgICAgICBpZiAoZ3N0X3BhZF9wZWVyX3F1ZXJ5KEdT
VF9CQVNFX1NSQ19QQUQoYmFzZVNyYyksIHF1ZXJ5LmdldCgpKSkgewpAQCAtODYzLDE1ICs4NTks
OSBAQCBzdGF0aWMgR3N0VVJJVHlwZSB3ZWJLaXRXZWJTcmNVcmlHZXRUeXBlKEdUeXBlKQogY29u
c3QgZ2NoYXIqIGNvbnN0KiB3ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMoR1R5cGUpCiB7CiAgICAg
c3RhdGljIGNvbnN0IGNoYXIqIHByb3RvY29sc1s0XTsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tW
ZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAgICBwcm90b2NvbHNbMF0gPSAiaHR0cCI7Ci0gICAg
ICAgIHByb3RvY29sc1sxXSA9ICJodHRwcyI7Ci0gICAgICAgIHByb3RvY29sc1syXSA9ICJibG9i
IjsKLSAgICB9IGVsc2UgewotICAgICAgICBwcm90b2NvbHNbMF0gPSAid2Via2l0K2h0dHAiOwot
ICAgICAgICBwcm90b2NvbHNbMV0gPSAid2Via2l0K2h0dHBzIjsKLSAgICAgICAgcHJvdG9jb2xz
WzJdID0gIndlYmtpdCtibG9iIjsKLSAgICB9CisgICAgcHJvdG9jb2xzWzBdID0gImh0dHAiOwor
ICAgIHByb3RvY29sc1sxXSA9ICJodHRwcyI7CisgICAgcHJvdG9jb2xzWzJdID0gImJsb2IiOwog
ICAgIHByb3RvY29sc1szXSA9IG51bGxwdHI7CiAgICAgcmV0dXJuIHByb3RvY29sczsKIH0KQEAg
LTg3OSwxMCArODY5LDYgQEAgY29uc3QgZ2NoYXIqIGNvbnN0KiB3ZWJLaXRXZWJTcmNHZXRQcm90
b2NvbHMoR1R5cGUpCiBzdGF0aWMgVVJMIGNvbnZlcnRQbGF5YmluVVJJKGNvbnN0IGNoYXIqIHVy
aVN0cmluZykKIHsKICAgICBVUkwgdXJsKFVSTCgpLCB1cmlTdHJpbmcpOwotICAgIGlmICghd2Vi
a2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAgICBBU1NFUlQodXJsLnByb3Rv
Y29sKCkuc3Vic3RyaW5nKDAsIDcpID09ICJ3ZWJraXQrIik7Ci0gICAgICAgIHVybC5zZXRQcm90
b2NvbCh1cmwucHJvdG9jb2woKS5zdWJzdHJpbmcoNykudG9TdHJpbmcoKSk7Ci0gICAgfQogICAg
IHJldHVybiB1cmw7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVzLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL0dTdHJlYW1lckVNRVV0aWxpdGll
cy5oCmluZGV4IDg5OTNhM2IwNmE0NWRjNDliMTMwZTQ1MzMyMDk2NzY2ZGQxNzUyNTguLjJkZWU5
MDIzZjk5ZGM0NjNkZDY0ZTA1MWNmYWMwZTYzMGJlYzUxMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0
aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2Vt
ZS9HU3RyZWFtZXJFTUVVdGlsaXRpZXMuaApAQCAtNzksNyArNzksNyBAQCBwdWJsaWM6CiAgICAg
Y29uc3QgU3RyaW5nJiBzeXN0ZW1JZCgpIGNvbnN0IHsgcmV0dXJuIG1fc3lzdGVtSWQ7IH0KICAg
ICBTdHJpbmcgcGF5bG9hZENvbnRhaW5lclR5cGUoKSBjb25zdAogICAgIHsKLSNpZiBHU1RfQ0hF
Q0tfVkVSU0lPTigxLCAxNSwgMCkKKyNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNiwgMCkKICAg
ICAgICAgaWYgKG1fc3lzdGVtSWQgPT0gR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lTVEVN
X0lEKQogICAgICAgICAgICAgcmV0dXJuICJ3ZWJtIl9zOwogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1v
bkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9y
R1N0cmVhbWVyLmNwcAppbmRleCBiZGY0YWQ0ODM4NjExODQwNzA5NDliM2QwZTNhMzczOTFkMGZl
YTQxLi42NWUxNmM4YjExM2QxZDdkZDZkMTFiMDQ2MzU5NzNmMWEwNjA0MmQxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENv
bW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRl
Y3J5cHRvckdTdHJlYW1lci5jcHAKQEAgLTEyNSw3ICsxMjUsNyBAQCBzdGF0aWMgR3N0Q2Fwcyog
dHJhbnNmb3JtQ2FwcyhHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RQYWREaXJlY3Rpb24gZGly
ZWN0aW9uLAogICAgICAgICAgICAgLy8gR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lTVEVN
X0lEIHdhcyBhZGRlZCBpbiB0aGUgR1N0cmVhbWVyCiAgICAgICAgICAgICAvLyBkZXZlbG9wZW1l
bnQgZ2l0IG1hc3RlciB3aGljaCB3aWxsIHNoaXAgYXMgdmVyc2lvbiAxLjE2LjAuCiAgICAgICAg
ICAgICBnc3Rfc3RydWN0dXJlX3NldF9uYW1lKG91dGdvaW5nU3RydWN0dXJlLmdldCgpLAotI2lm
IEdTVF9DSEVDS19WRVJTSU9OKDEsIDE1LCAwKQorI2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE2
LCAwKQogICAgICAgICAgICAgICAgICFnX3N0cmNtcDAoa2xhc3MtPnByb3RlY3Rpb25TeXN0ZW1J
ZChzZWxmKSwgR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lTVEVNX0lEKSA/ICJhcHBsaWNh
dGlvbi94LXdlYm0tZW5jIiA6CiAjZW5kaWYKICAgICAgICAgICAgICAgICAiYXBwbGljYXRpb24v
eC1jZW5jIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lck1lZGlhU3RyZWFtU291
cmNlLmNwcAppbmRleCBiZDg0YjA0M2RlZWU2MjhmZjQ5YzQwZGEzMmYzMmNjNzA5NThjMmE1Li42
ZTAxMzA3YmQxNGQwNDJiYWI1N2NmYmU0ZTAyZTU3Mzc4ZDQ4N2I3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFT
dHJlYW1Tb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L2dzdHJlYW1lci9HU3RyZWFtZXJNZWRpYVN0cmVhbVNvdXJjZS5jcHAKQEAgLTQwMSw5ICs0MDEs
NyBAQCBzdGF0aWMgdm9pZCB3ZWJraXRNZWRpYVN0cmVhbVNyY0Rpc3Bvc2UoR09iamVjdCogb2Jq
ZWN0KQogCiBzdGF0aWMgR3N0U3RhdGVDaGFuZ2VSZXR1cm4gd2Via2l0TWVkaWFTdHJlYW1TcmND
aGFuZ2VTdGF0ZShHc3RFbGVtZW50KiBlbGVtZW50LCBHc3RTdGF0ZUNoYW5nZSB0cmFuc2l0aW9u
KQogewotI2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE0LCAwKQogICAgIEdTVF9ERUJVR19PQkpF
Q1QoZWxlbWVudCwgIiVzIiwgZ3N0X3N0YXRlX2NoYW5nZV9nZXRfbmFtZSh0cmFuc2l0aW9uKSk7
Ci0jZW5kaWYKIAogICAgIGlmICh0cmFuc2l0aW9uID09IEdTVF9TVEFURV9DSEFOR0VfUEFVU0VE
X1RPX1JFQURZKQogICAgICAgICBzdG9wT2JzZXJ2aW5nVHJhY2tzKFdFQktJVF9NRURJQV9TVFJF
QU1fU1JDKGVsZW1lbnQpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9HU3RyZWFtZXJDaGVj
a3MuY21ha2UgYi9Tb3VyY2UvY21ha2UvR1N0cmVhbWVyQ2hlY2tzLmNtYWtlCmluZGV4IDA3MGMx
MWZkYzYzZDE1MDJlODFkMDczNDg1NTIwNmY5MTBkYzZmMjcuLmE2MWI4YTg4Njc2Y2IyMjMwMGRj
NGE2MzI0OTA2ODE0NjVjZGM2MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9HU3RyZWFtZXJD
aGVja3MuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL0dTdHJlYW1lckNoZWNrcy5jbWFrZQpAQCAt
MjgsNyArMjgsNyBAQCBpZiAoRU5BQkxFX1ZJREVPIE9SIEVOQUJMRV9XRUJfQVVESU8pCiAgICAg
ICAgICAgICAgIGxpc3QoQVBQRU5EIEdTVFJFQU1FUl9DT01QT05FTlRTIGF1ZGlvIGZmdCkKICAg
ICAgICAgICBlbmRpZiAoKQogCi0gICAgICAgICAgZmluZF9wYWNrYWdlKEdTdHJlYW1lciAxLjEw
LjAgUkVRVUlSRUQgQ09NUE9ORU5UUyAke0dTVFJFQU1FUl9DT01QT05FTlRTfSkKKyAgICAgICAg
ICBmaW5kX3BhY2thZ2UoR1N0cmVhbWVyIDEuMTQuMCBSRVFVSVJFRCBDT01QT05FTlRTICR7R1NU
UkVBTUVSX0NPTVBPTkVOVFN9KQogCiAgICAgICAgICAgaWYgKEVOQUJMRV9XRUJfQVVESU8pCiAg
ICAgICAgICAgICAgIGlmIChOT1QgUENfR1NUUkVBTUVSX0FVRElPX0ZPVU5EIE9SIE5PVCBQQ19H
U1RSRUFNRVJfRkZUX0ZPVU5EKQpAQCAtNTIsMTQgKzUyLDcgQEAgaWYgKEVOQUJMRV9WSURFTyBP
UiBFTkFCTEVfV0VCX0FVRElPKQogICAgICAgZW5kaWYgKCkKIGVuZGlmICgpCiAKLWlmIChFTkFC
TEVfTUVESUFfU09VUkNFIEFORCBQQ19HU1RSRUFNRVJfVkVSU0lPTiBWRVJTSU9OX0xFU1MgIjEu
MTQiKQotICAgIG1lc3NhZ2UoRkFUQUxfRVJST1IgIkdTdHJlYW1lciAxLjE0IGlzIG5lZWRlZCBm
b3IgRU5BQkxFX01FRElBX1NPVVJDRS4iKQotZW5kaWYgKCkKLQogaWYgKEVOQUJMRV9NRURJQV9T
VFJFQU0gQU5EIEVOQUJMRV9XRUJfUlRDKQotICAgIGlmIChQQ19HU1RSRUFNRVJfVkVSU0lPTiBW
RVJTSU9OX0xFU1MgIjEuMTIiKQotICAgICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJHU3RyZWFt
ZXIgMS4xMiBpcyBuZWVkZWQgZm9yIEVOQUJMRV9XRUJfUlRDLiIpCi0gICAgZW5kaWYgKCkKICAg
ICBTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChVU0VfTElCV0VCUlRDIFRSVUUpCiAgICAgU0VUX0FO
RF9FWFBPU0VfVE9fQlVJTEQoV0VCUlRDX1dFQktJVF9CVUlMRCBUUlVFKQogZWxzZSAoKQpkaWZm
IC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDBjM2RlZjMwZjdhOWRlNzE4YmEw
OTQyOTkwZjRkNzY5ZTZjY2QxOGUuLmNiOGNmOTI3YjhiYmQ5NWNhYWIxMTk4YTRhNzQwNjY2MDI0
NDFkY2IgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MiBAQAorMjAyMS0wMS0wNiAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW0dTdHJlYW1lcl0gQnVtcCB2ZXJzaW9uIHJlcXVpcmVtZW50CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjAzNTYKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9H
U3RyZWFtZXJDaGVja3MuY21ha2U6IEJ1bXAgcmVxdWlyZWQgdmVyc2lvbiB0byAxLjE0LgorCiAy
MDIxLTAxLTA1ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29tPgogCiAg
ICAgICAgIFtXaW5DYWlyb11bY3VybF0gRW5hYmxlIENVUkxTU0xPUFRfTkFUSVZFX0NBIGZsYWcg
dG8gdXNlIHN5c3RlbSdzIENBIGNlcnRzIGluc3RlYWQgb2YgY2FjZXJ0LnBlbQo=
</data>
<flag name="commit-queue"
          id="434730"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417091</attachid>
            <date>2021-01-06 09:20:40 -0800</date>
            <delta_ts>2021-01-06 09:29:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220356-20210106092038.patch</filename>
            <type>text/plain</type>
            <size>22103</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRhNGJhMmE1ZGE2MWRl
ZjJmNjQzNTRkMDExNTE5N2RlNGYxMjJkZS4uNTMxNDRjNDBlYTc1NTc0ZDM4YjY0YmMyMzAxNGY2
YWI4MzRkNDQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAxLTA2ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XSBCdW1wIHZlcnNpb24gcmVxdWlyZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMDM1NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFJlbW92ZSBjb21waWxlLXRpbWUgYW5kIHJ1bnRpbWUgR1N0cmVh
bWVyIHZlcnNpb24gY2hlY2tzIHRoYXQgYXJlCisgICAgICAgIG5vdCBuZWVkZWQgYW55bW9yZSBz
aW5jZSB3ZSBub3cgcmVxdWlyZSBhdCBsZWFzdCBHU3RyZWFtZXIgMS4xNCBhdAorICAgICAgICBj
b25maWd1cmUgdGltZS4KKworICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3VyY2VHU3Ry
ZWFtZXIuY3BwOgorICAgICAgICAoX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZTo6X1dlYktpdFdl
YkF1ZGlvU3JjUHJpdmF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJBdWRpb1NyY1JlbmRlckFuZFB1
c2hGcmFtZXMpOgorICAgICAgICAod2ViS2l0V2ViQXVkaW9TcmNDaGFuZ2VTdGF0ZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9TaW5rR1N0cmVhbWVyLmNw
cDoKKyAgICAgICAgKHJlcXVlc3RHTENvbnRleHQpOgorICAgICAgICAod2ViS2l0R0xWaWRlb1Np
bmtDaGFuZ2VTdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dT
dHJlYW1lckF1ZGlvTWl4ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R1N0cmVhbWVyQXVkaW9N
aXhlcjo6ZW5zdXJlU3RhdGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjp3b3VsZFRhaW50T3JpZ2luIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6c2V0UGxheWJpblVSTCk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmhhbmRsZU1l
c3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpj
cmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0ludGVybmFsUHJv
dG9jb2wpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKFBsYXRm
b3JtRGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0IGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0QXVkaW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAg
ICAgICAgKHdlYktpdEF1ZGlvU2lua0NoYW5nZVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KHdlYktpdFdlYlNyY0NyZWF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMp
OgorICAgICAgICAoY29udmVydFBsYXliaW5VUkkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVzLmg6CisgICAgICAgIChXZWJD
b3JlOjpJbml0RGF0YTo6cGF5bG9hZENvbnRhaW5lclR5cGUgY29uc3QpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5
cHRvckdTdHJlYW1lci5jcHA6CisgICAgICAgICh0cmFuc2Zvcm1DYXBzKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2Uu
Y3BwOgorICAgICAgICAod2Via2l0TWVkaWFTdHJlYW1TcmNDaGFuZ2VTdGF0ZSk6CisKIDIwMjEt
MDEtMDYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVt
b3ZlIHRoZSB1bnVzZWQgUmVuZGVyU3R5bGU6OnNldEhhc1BzZXVkb1N0eWxlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCAyYWY3YWEwZGE3NzY0NWYxOTVjZjc1
Mjk1MGQ1OWJlNmE0NDQ5M2EzLi5kYmRmNDA5MWExZTdhOTNmZmNjNTA2ZjE4NGI5OGFlYjM2NWFk
Nzc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9HU3RyZWFtZXIuY21ha2UK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVhbWVyLmNtYWtlCkBAIC0xNDEsMTcg
KzE0MSwxMyBAQCBpZiAoRU5BQkxFX1ZJREVPKQogICAgIGVuZGlmICgpCiAKICAgICBpZiAoRU5B
QkxFX01FRElBX1NUUkVBTSBPUiBFTkFCTEVfV0VCX1JUQykKLSAgICAgICAgaWYgKFBDX0dTVFJF
QU1FUl9WRVJTSU9OIFZFUlNJT05fTEVTUyAiMS4xMCIpCi0gICAgICAgICAgICBtZXNzYWdlKEZB
VEFMX0VSUk9SICJHU3RyZWFtZXIgMS4xMCBpcyBuZWVkZWQgZm9yIEVOQUJMRV9NRURJQV9TVFJF
QU0gb3IgRU5BQkxFX1dFQl9SVEMiKQotICAgICAgICBlbHNlICgpCi0gICAgICAgICAgICBsaXN0
KEFQUEVORCBXZWJDb3JlX1NZU1RFTV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAgICAgICAgICAg
ICAgJHtHU1RSRUFNRVJfQ09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KKyAgICAgICAgbGlzdChB
UFBFTkQgV2ViQ29yZV9TWVNURU1fSU5DTFVERV9ESVJFQ1RPUklFUworICAgICAgICAgICAgJHtH
U1RSRUFNRVJfQ09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KKyAgICAgICAgKQorICAgICAgICBp
ZiAoTk9UIFVTRV9HU1RSRUFNRVJfRlVMTCkKKyAgICAgICAgICAgIGxpc3QoQVBQRU5EIFdlYkNv
cmVfTElCUkFSSUVTCisgICAgICAgICAgICAgICAgJHtHU1RSRUFNRVJfQ09ERUNQQVJTRVJTX0xJ
QlJBUklFU30KICAgICAgICAgICAgICkKLSAgICAgICAgICAgIGlmIChOT1QgVVNFX0dTVFJFQU1F
Ul9GVUxMKQotICAgICAgICAgICAgICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCi0g
ICAgICAgICAgICAgICAgICAgICR7R1NUUkVBTUVSX0NPREVDUEFSU0VSU19MSUJSQVJJRVN9Ci0g
ICAgICAgICAgICAgICAgKQotICAgICAgICAgICAgZW5kaWYgKCkKICAgICAgICAgZW5kaWYgKCkK
ICAgICBlbmRpZiAoKQogZW5kaWYgKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRpb1NvdXJjZUdTdHJlYW1lci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3Vy
Y2VHU3RyZWFtZXIuY3BwCmluZGV4IGFlMzQ1ZGIwOGI1N2ZiZDFjYTZlNDQ4ZDc5MTUzZWUwMmU1
MmNkOWMuLmNhZjA0NDNjN2ExYThjNzNmMDI1MWRhZGQ2OGFjYWRhNjkxOTc2MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRp
b1NvdXJjZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
Z3N0cmVhbWVyL1dlYktpdFdlYkF1ZGlvU291cmNlR1N0cmVhbWVyLmNwcApAQCAtNzgsNyArNzgs
NiBAQCBzdHJ1Y3QgX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZSB7CiAKICAgICBHUmVmUHRyPEdz
dEJ1ZmZlclBvb2w+IHBvb2w7CiAKLSAgICBib29sIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQ7CiAg
ICAgYm9vbCBoYXNSZW5kZXJlZEF1ZGlibGVGcmFtZSB7IGZhbHNlIH07CiAKICAgICBMb2NrIGRp
c3BhdGNoVG9SZW5kZXJUaHJlYWRMb2NrOwpAQCAtOTMsMTEgKzkyLDYgQEAgc3RydWN0IF9XZWJL
aXRXZWJBdWRpb1NyY1ByaXZhdGUgewogICAgICAgICBzb3VyY2VQYWQgPSB3ZWJraXRHc3RHaG9z
dFBhZEZyb21TdGF0aWNUZW1wbGF0ZSgmc3JjVGVtcGxhdGUsICJzcmMiLCBudWxscHRyKTsKIAog
ICAgICAgICBnX3JlY19tdXRleF9pbml0KCZtdXRleCk7Ci0KLSAgICAgICAgLy8gR0FQIGJ1ZmZl
ciBzdXBwb3J0IGlzIGVuYWJsZWQgb25seSBmb3IgR1N0cmVhbWVyIDEuMTIuNSBiZWNhdXNlIG9m
IGEKLSAgICAgICAgLy8gbWVtb3J5IGxlYWsgdGhhdCB3YXMgZml4ZWQgaW4gdGhhdCB2ZXJzaW9u
LgotICAgICAgICAvLyBodHRwczovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzkzMDY3Ci0gICAgICAgIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQgPSB3ZWJraXRHc3RDaGVja1Zl
cnNpb24oMSwgMTIsIDUpOwogICAgIH0KIAogICAgIH5fV2ViS2l0V2ViQXVkaW9TcmNQcml2YXRl
KCkKQEAgLTM3MCw3ICszNjQsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRXZWJBdWRpb1NyY1JlbmRl
ckFuZFB1c2hGcmFtZXMoR1JlZlB0cjxHc3RFbGVtZW50PiYmIGVsZW1lbnQsCiAgICAgICAgIEdT
VF9CVUZGRVJfVElNRVNUQU1QKGJ1ZmZlci5nZXQoKSkgPSBvdXRwdXRUaW1lc3RhbXAucG9zaXRp
b24ubmFub3NlY29uZHMoKTsKICAgICAgICAgR1NUX0JVRkZFUl9EVVJBVElPTihidWZmZXIuZ2V0
KCkpID0gZHVyYXRpb247CiAKLSAgICAgICAgaWYgKHByaXYtPmVuYWJsZUdhcEJ1ZmZlclN1cHBv
cnQgJiYgcHJpdi0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQorICAgICAgICBpZiAocHJp
di0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQogICAgICAgICAgICAgR1NUX0JVRkZFUl9G
TEFHX1NFVChidWZmZXIuZ2V0KCksIEdTVF9CVUZGRVJfRkxBR19HQVApOwogCiAgICAgICAgIGlm
IChmYWlsZWQpCkBAIC00MzAsOSArNDI0LDcgQEAgc3RhdGljIEdzdFN0YXRlQ2hhbmdlUmV0dXJu
IHdlYktpdFdlYkF1ZGlvU3JjQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxlbWVudCwgR3MKICAg
ICBhdXRvKiBzcmMgPSBXRUJLSVRfV0VCX0FVRElPX1NSQyhlbGVtZW50KTsKICAgICBhdXRvKiBw
cml2ID0gc3JjLT5wcml2OwogCi0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAgICAg
R1NUX0RFQlVHX09CSkVDVChlbGVtZW50LCAiJXMiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1l
KHRyYW5zaXRpb24pKTsKLSNlbmRpZgogCiAgICAgc3dpdGNoICh0cmFuc2l0aW9uKSB7CiAgICAg
Y2FzZSBHU1RfU1RBVEVfQ0hBTkdFX05VTExfVE9fUkVBRFk6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFtZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9T
aW5rR1N0cmVhbWVyLmNwcAppbmRleCBlZmY3NmJjNzNiODczNjEzNjMxZTFjMWE5YTZkOTc5YzEx
NzM1Y2Y1Li40YjA4OTAxZjM3MmY1NTdjNTM2M2NhNDFhYzU2NzNjZDhiMzNjN2NkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1Np
bmtHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9HTFZpZGVvU2lua0dTdHJlYW1lci5jcHAKQEAgLTEzMywxMSArMTMzLDcgQEAgT3B0
aW9uYWw8R1JlZlB0cjxHc3RDb250ZXh0Pj4gcmVxdWVzdEdMQ29udGV4dChjb25zdCBjaGFyKiBj
b250ZXh0VHlwZSkKICAgICBpZiAoIWdfc3RyY21wMChjb250ZXh0VHlwZSwgImdzdC5nbC5hcHBf
Y29udGV4dCIpKSB7CiAgICAgICAgIEdzdENvbnRleHQqIGFwcENvbnRleHQgPSBnc3RfY29udGV4
dF9uZXcoImdzdC5nbC5hcHBfY29udGV4dCIsIFRSVUUpOwogICAgICAgICBHc3RTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IGdzdF9jb250ZXh0X3dyaXRhYmxlX3N0cnVjdHVyZShhcHBDb250ZXh0KTsK
LSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxMiwgMCkKICAgICAgICAgZ3N0X3N0cnVjdHVyZV9z
ZXQoc3RydWN0dXJlLCAiY29udGV4dCIsIEdTVF9UWVBFX0dMX0NPTlRFWFQsIGdzdEdMQ29udGV4
dCwgbnVsbHB0cik7Ci0jZWxzZQotICAgICAgICBnc3Rfc3RydWN0dXJlX3NldChzdHJ1Y3R1cmUs
ICJjb250ZXh0IiwgR1NUX0dMX1RZUEVfQ09OVEVYVCwgZ3N0R0xDb250ZXh0LCBudWxscHRyKTsK
LSNlbmRpZgogICAgICAgICByZXR1cm4gYWRvcHRHUmVmKGFwcENvbnRleHQpOwogICAgIH0KIApA
QCAtMTU4LDE1ICsxNTQsMTEgQEAgc3RhdGljIGJvb2wgc2V0R0xDb250ZXh0KEdzdEVsZW1lbnQq
IGVsZW1lbnRTaW5rLCBjb25zdCBjaGFyKiBjb250ZXh0VHlwZSkKIAogc3RhdGljIEdzdFN0YXRl
Q2hhbmdlUmV0dXJuIHdlYktpdEdMVmlkZW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxl
bWVudCwgR3N0U3RhdGVDaGFuZ2UgdHJhbnNpdGlvbikKIHsKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lP
TigxLCAxNCwgMCkKICAgICBHU1RfREVCVUdfT0JKRUNUKGVsZW1lbnQsICIlcyIsIGdzdF9zdGF0
ZV9jaGFuZ2VfZ2V0X25hbWUodHJhbnNpdGlvbikpOwotI2VuZGlmCiAKICAgICBzd2l0Y2ggKHRy
YW5zaXRpb24pIHsKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfTlVMTF9UT19SRUFEWToKLSNp
ZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNCwgMCkKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0Vf
UkVBRFlfVE9fUkVBRFk6Ci0jZW5kaWYKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfUkVBRFlf
VE9fUEFVU0VEOiB7CiAgICAgICAgIGlmICghc2V0R0xDb250ZXh0KGVsZW1lbnQsIEdTVF9HTF9E
SVNQTEFZX0NPTlRFWFRfVFlQRSkpCiAgICAgICAgICAgICByZXR1cm4gR1NUX1NUQVRFX0NIQU5H
RV9GQUlMVVJFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwCmluZGV4IDcwOTA0
MDdjNzU2MGY1NjMwMmZjZDA0Yzg3NmZiNzM2Y2ZkM2FhYzcuLjI4ZDdhMWQ1NjJjMjRlYWM5MTZl
YzViZTc5NzVjMmMwMTViOTM5OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb01peGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1N0cmVhbWVyQXVkaW9NaXhlci5j
cHAKQEAgLTU3LDkgKzU3LDggQEAgR1N0cmVhbWVyQXVkaW9NaXhlcjo6R1N0cmVhbWVyQXVkaW9N
aXhlcigpCiAKIHZvaWQgR1N0cmVhbWVyQXVkaW9NaXhlcjo6ZW5zdXJlU3RhdGUoR3N0U3RhdGVD
aGFuZ2Ugc3RhdGVDaGFuZ2UpCiB7Ci0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAg
ICAgR1NUX0RFQlVHX09CSkVDVChtX3BpcGVsaW5lLmdldCgpLCAiSGFuZGxpbmcgJXMgdHJhbnNp
dGlvbiAoJXUgbWl4ZXIgcGFkcykiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0YXRlQ2hh
bmdlKSwgbV9taXhlci0+bnVtc2lua3BhZHMpOwotI2VuZGlmCisKICAgICBzd2l0Y2ggKHN0YXRl
Q2hhbmdlKSB7CiAgICAgY2FzZSBHU1RfU1RBVEVfQ0hBTkdFX1JFQURZX1RPX1BBVVNFRDoKICAg
ICAgICAgZ3N0X2VsZW1lbnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFURV9Q
QVVTRUQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cAppbmRleCAwZjZjNjZkMjA3NWQ1N2M1Yzc3NDM2YzFkZDA5NGQ0NDFlN2VlNTg3Li5lNWUxMDMw
Njc5MTEwNmU2YTU0ZTAxODgyYzUwMTY1ZjUwZDQ5NjhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTUzLDE0ICsxNTMsNiBAQCBzdGF0
aWMgdm9pZCBidXNNZXNzYWdlQ2FsbGJhY2soR3N0QnVzKiwgR3N0TWVzc2FnZSogbWVzc2FnZSwg
TWVkaWFQbGF5ZXJQcml2YXRlRwogICAgIHBsYXllci0+aGFuZGxlTWVzc2FnZShtZXNzYWdlKTsK
IH0KIAotc3RhdGljIHZvaWQgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChVUkwmIHVybCkKLXsK
LSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkKLSAgICAgICAgcmV0dXJu
OwotICAgIGlmICh1cmwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpIHx8IHVybC5wcm90b2NvbElz
QmxvYigpKQotICAgICAgICB1cmwuc2V0UHJvdG9jb2wobWFrZVN0cmluZygid2Via2l0KyIsIHVy
bC5wcm90b2NvbCgpKSk7Ci19Ci0KIHN0YXRpYyB2b2lkIGluaXRpYWxpemVEZWJ1Z0NhdGVnb3J5
KCkKIHsKICAgICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZUZsYWc7CkBAIC04NTIsMjIgKzg0
NCwxNSBAQCBib29sIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6aGFzU2luZ2xlU2VjdXJp
dHlPcmlnaW4oKSBjb25zdAogCiBPcHRpb25hbDxib29sPiBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OndvdWxkVGFpbnRPcmlnaW4oY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbikgY29u
c3QKIHsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAg
ICBHU1RfVFJBQ0VfT0JKRUNUKHBpcGVsaW5lKCksICJDaGVja2luZyAldSBvcmlnaW5zIiwgbV9v
cmlnaW5zLnNpemUoKSk7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzcG9uc2VPcmlnaW4gOiBtX29y
aWdpbnMpIHsKLSAgICAgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2VzcygqcmVzcG9uc2VPcmln
aW4pKSB7Ci0gICAgICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChwaXBlbGluZSgpLCAiRm91
bmQgcmVhY2hhYmxlIHJlc3BvbnNlIG9yaWdpbiIpOwotICAgICAgICAgICAgICAgIHJldHVybiB0
cnVlOwotICAgICAgICAgICAgfQorICAgIEdTVF9UUkFDRV9PQkpFQ1QocGlwZWxpbmUoKSwgIkNo
ZWNraW5nICV1IG9yaWdpbnMiLCBtX29yaWdpbnMuc2l6ZSgpKTsKKyAgICBmb3IgKGF1dG8mIHJl
c3BvbnNlT3JpZ2luIDogbV9vcmlnaW5zKSB7CisgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2Vz
cygqcmVzcG9uc2VPcmlnaW4pKSB7CisgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVs
aW5lKCksICJGb3VuZCByZWFjaGFibGUgcmVzcG9uc2Ugb3JpZ2luIik7CisgICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICAgICAgfQotICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5l
KCksICJObyB2YWxpZCByZXNwb25zZSBvcmlnaW4gZm91bmQiKTsKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KLQotICAgIC8vIEdTdHJlYW1lciA8IDEuMTIgaGFzIGFuIGluY29tcGxldGUg
dXJpZG93bmxvYWRlciBpbXBsZW1lbnRhdGlvbiBzbyB3ZQotICAgIC8vIGNhbid0IHVzZSBXZWJL
aXRXZWJTcmMgZm9yIGFkYXB0aXZlIGZyYWdtZW50cyBkb3dubG9hZGluZyBpZiB0aGlzCi0gICAg
Ly8gdmVyc2lvbiBpcyBkZXRlY3RlZC4KLSAgICByZXR1cm4gbV9oYXNUYWludGVkT3JpZ2luOwor
ICAgIEdTVF9ERUJVR19PQkpFQ1QocGlwZWxpbmUoKSwgIk5vIHZhbGlkIHJlc3BvbnNlIG9yaWdp
biBmb3VuZCIpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXI6OnNpbXVsYXRlQXVkaW9JbnRlcnJ1cHRpb24oKQpAQCAtOTg3LDcgKzk3Miw2
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpzZXRQbGF5YmluVVJMKGNvbnN0
IFVSTCYgdXJsKQogICAgICAgICBjbGVhblVSTFN0cmluZyA9IGNsZWFuVVJMU3RyaW5nLnN1YnN0
cmluZygwLCB1cmwucGF0aEVuZCgpKTsKIAogICAgIG1fdXJsID0gVVJMKFVSTCgpLCBjbGVhblVS
TFN0cmluZyk7Ci0gICAgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChtX3VybCk7CiAgICAgR1NU
X0lORk9fT0JKRUNUKHBpcGVsaW5lKCksICJMb2FkICVzIiwgbV91cmwuc3RyaW5nKCkudXRmOCgp
LmRhdGEoKSk7CiAgICAgZ19vYmplY3Rfc2V0KG1fcGlwZWxpbmUuZ2V0KCksICJ1cmkiLCBtX3Vy
bC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpLCBudWxscHRyKTsKIH0KQEAgLTIwMDgsNyArMTk5Miw3
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdzdE1l
c3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgICAgICBpZiAoZ3N0X3N0cnVjdHVyZV9nZXQoc3RydWN0
dXJlLCAicmVhZC1wb3NpdGlvbiIsIEdfVFlQRV9VSU5UNjQsICZtX25ldHdvcmtSZWFkUG9zaXRp
b24sICJzaXplIiwgR19UWVBFX1VJTlQ2NCwgJm1faHR0cFJlc3BvbnNlVG90YWxTaXplLCBudWxs
cHRyKSkKICAgICAgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5lKCksICJVcGRh
dGVkIG5ldHdvcmsgcmVhZCBwb3NpdGlvbiAlIiBHX0dVSU5UNjRfRk9STUFUICIsIHNpemU6ICUi
IEdfR1VJTlQ2NF9GT1JNQVQsIG1fbmV0d29ya1JlYWRQb3NpdGlvbiwgbV9odHRwUmVzcG9uc2VU
b3RhbFNpemUpOwogICAgICAgICB9IGVsc2UgaWYgKGdzdF9zdHJ1Y3R1cmVfaGFzX25hbWUoc3Ry
dWN0dXJlLCAiYWRhcHRpdmUtc3RyZWFtaW5nLXN0YXRpc3RpY3MiKSkgewotICAgICAgICAgICAg
aWYgKFdFQktJVF9JU19XRUJfU1JDKG1fc291cmNlLmdldCgpKSAmJiAhd2Via2l0R3N0Q2hlY2tW
ZXJzaW9uKDEsIDEyLCAwKSkgeworICAgICAgICAgICAgaWYgKFdFQktJVF9JU19XRUJfU1JDKG1f
c291cmNlLmdldCgpKSkgewogICAgICAgICAgICAgICAgIGlmIChjb25zdCBjaGFyKiB1cmkgPSBn
c3Rfc3RydWN0dXJlX2dldF9zdHJpbmcoc3RydWN0dXJlLCAidXJpIikpCiAgICAgICAgICAgICAg
ICAgICAgIG1faGFzVGFpbnRlZE9yaWdpbiA9IHdlYktpdFNyY1dvdWxkVGFpbnRPcmlnaW4oV0VC
S0lUX1dFQl9TUkNfQ0FTVChtX3NvdXJjZS5nZXQoKSksIFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUo
VVJMKFVSTCgpLCB1cmkpKSk7CiAgICAgICAgICAgICB9CkBAIC0yNzYzLDExICsyNzQ3LDcgQEAg
dm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmNyZWF0ZUdTVFBsYXlCaW4oY29uc3Qg
VVJMJiB1cmwsIGNvbnN0IFN0cmluZyYKICAgICBtX3RleHRBcHBTaW5rUGFkID0gYWRvcHRHUmVm
KGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fdGV4dEFwcFNpbmsuZ2V0KCksICJzaW5rIikp
OwogICAgIEFTU0VSVChtX3RleHRBcHBTaW5rUGFkKTsKIAotICAgIEdSZWZQdHI8R3N0Q2Fwcz4g
dGV4dENhcHM7Ci0gICAgaWYgKHdlYmtpdEdzdENoZWNrVmVyc2lvbigxLCAxNCwgMCkpCi0gICAg
ICAgIHRleHRDYXBzID0gYWRvcHRHUmVmKGdzdF9jYXBzX25ld19lbXB0eV9zaW1wbGUoImFwcGxp
Y2F0aW9uL3gtc3VidGl0bGUtdnR0IikpOwotICAgIGVsc2UKLSAgICAgICAgdGV4dENhcHMgPSBh
ZG9wdEdSZWYoZ3N0X2NhcHNfbmV3X2VtcHR5X3NpbXBsZSgidGV4dC92dHQiKSk7CisgICAgYXV0
byB0ZXh0Q2FwcyA9IGFkb3B0R1JlZihnc3RfY2Fwc19uZXdfZW1wdHlfc2ltcGxlKCJhcHBsaWNh
dGlvbi94LXN1YnRpdGxlLXZ0dCIpKTsKICAgICBnX29iamVjdF9zZXQobV90ZXh0QXBwU2luay5n
ZXQoKSwgImVtaXQtc2lnbmFscyIsIFRSVUUsICJlbmFibGUtbGFzdC1zYW1wbGUiLCBGQUxTRSwg
ImNhcHMiLCB0ZXh0Q2Fwcy5nZXQoKSwgbnVsbHB0cik7CiAgICAgZ19zaWduYWxfY29ubmVjdF9z
d2FwcGVkKG1fdGV4dEFwcFNpbmsuZ2V0KCksICJuZXctc2FtcGxlIiwgR19DQUxMQkFDSyhuZXdU
ZXh0U2FtcGxlQ2FsbGJhY2spLCB0aGlzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4IDdhY2I2NjExOTI5ODRhNzI5NDhlYmM0MmNiNTYyYmEz
YTMwNjNlNzQuLjkxMTI4Zjk3ZGZmYmVhZDM3NTcyMWU3NzFmMmVlMjQ1NmY4NDAwMzQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBs
YXllclByaXZhdGVHU3RyZWFtZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKQEAgLTUxLDE2ICs1
MSw2IEBAIHR5cGVkZWYgc3RydWN0IF9Hc3RNcGVndHNTZWN0aW9uIEdzdE1wZWd0c1NlY3Rpb247
CiAjaWYgVVNFKExJQkVQT1hZKQogLy8gSW5jbHVkZSB0aGUgPGVwb3h5L2dsLmg+IGhlYWRlciBi
ZWZvcmUgPGdzdC9nbC9nbC5oPi4KICNpbmNsdWRlIDxlcG94eS9nbC5oPgotCi0vLyBXb3JrYXJv
dW5kIGJ1aWxkIGlzc3VlIHdpdGggUlBpIHVzZXJsYW5kIEdMRVN2MiBoZWFkZXJzIGFuZCBsaWJl
cG94eSA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTg1NjM5PgotI2lmICFHU1RfQ0hFQ0tfVkVSU0lP
TigxLCAxNCwgMCkKLSNpbmNsdWRlIDxnc3QvZ2wvZ3N0Z2xjb25maWcuaD4KLSNpZiBkZWZpbmVk
KEdTVF9HTF9IQVZFX1dJTkRPV19ESVNQTUFOWCkgJiYgR1NUX0dMX0hBVkVfV0lORE9XX0RJU1BN
QU5YCi0jZGVmaW5lIF9fZ2wyX2hfCi0jdW5kZWYgR1NUX0dMX0hBVkVfR0xTWU5DCi0jZGVmaW5l
IEdTVF9HTF9IQVZFX0dMU1lOQyAxCi0jZW5kaWYKLSNlbmRpZiAvLyAhR1NUX0NIRUNLX1ZFUlNJ
T04oMSwgMTQsIDApCiAjZW5kaWYgLy8gVVNFKExJQkVQT1hZKQogCiAjZGVmaW5lIEdTVF9VU0Vf
VU5TVEFCTEVfQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9QbGF0Zm9ybURpc3BsYXlHU3RyZWFtZXIuY3Bw
CmluZGV4IDY0ZjMyYWUwMjhmYmQ1ZjQwZDQyYTY2OWYyZmU1ZWM3NTRkMmExYzguLjYzY2EzNjc5
MmZmMGI4YTk3MTc3MGEzMWE3OWE4MDQ1NWQzY2U4MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9QbGF0Zm9ybURpc3BsYXlHU3RyZWFtZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9QbGF0
Zm9ybURpc3BsYXlHU3RyZWFtZXIuY3BwCkBAIC05OCwxMiArOTgsNyBAQCBib29sIFBsYXRmb3Jt
RGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0KCkgY29uc3QKICAgICBpZiAoIWNvbnRleHRI
YW5kbGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGJvb2wgc2hvdWxkQWRvcHRSZWYg
PSB3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTQsIDApOwotCi0gICAgaWYgKHNob3VsZEFkb3B0
UmVmKQotICAgICAgICBtX2dzdEdMRGlzcGxheSA9IGFkb3B0R1JlZihjcmVhdGVHc3RHTERpc3Bs
YXkoKnRoaXMpKTsKLSAgICBlbHNlCi0gICAgICAgIG1fZ3N0R0xEaXNwbGF5ID0gY3JlYXRlR3N0
R0xEaXNwbGF5KCp0aGlzKTsKKyAgICBtX2dzdEdMRGlzcGxheSA9IGFkb3B0R1JlZihjcmVhdGVH
c3RHTERpc3BsYXkoKnRoaXMpKTsKICAgICBpZiAoIW1fZ3N0R0xEaXNwbGF5KQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9XZWJLaXRBdWRpb1NpbmtHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdEF1ZGlvU2lua0dTdHJlYW1lci5j
cHAKaW5kZXggMzUxMjgyOTg5MjYwM2M2ZTQ0MTQwZTdjODEyZmM3M2E0Y2RiZmE1Yi4uZTI1NTA1
MzI0ODVmOTZkMzRiZDc2OWFmYTJkMWRkNjY1NTQ0MGM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdEF1ZGlvU2lua0dTdHJlYW1l
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dl
YktpdEF1ZGlvU2lua0dTdHJlYW1lci5jcHAKQEAgLTI1Niw5ICsyNTYsNyBAQCBzdGF0aWMgR3N0
U3RhdGVDaGFuZ2VSZXR1cm4gd2ViS2l0QXVkaW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCog
ZWxlbWVudCwgR3N0UwogICAgIGF1dG8qIHNpbmsgPSBXRUJLSVRfQVVESU9fU0lOSyhlbGVtZW50
KTsKICAgICBhdXRvKiBwcml2ID0gc2luay0+cHJpdjsKIAotI2lmIEdTVF9DSEVDS19WRVJTSU9O
KDEsIDE0LCAwKQogICAgIEdTVF9ERUJVR19PQkpFQ1Qoc2luaywgIkhhbmRsaW5nICVzIHRyYW5z
aXRpb24iLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0YXRlQ2hhbmdlKSk7Ci0jZW5kaWYK
IAogICAgIGF1dG8mIG1peGVyID0gR1N0cmVhbWVyQXVkaW9NaXhlcjo6c2luZ2xldG9uKCk7CiAg
ICAgaWYgKHByaXYtPmludGVyQXVkaW9TaW5rICYmIHN0YXRlQ2hhbmdlID09IEdTVF9TVEFURV9D
SEFOR0VfTlVMTF9UT19SRUFEWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJl
YW1lci5jcHAKaW5kZXggZjJmMGMzYzI4ZmFjNGMwMDUxNzRiNDhhZGZiMDJhOTg2ZDJiYzM5MS4u
Yzg0NGJlMmRkMzcyN2VmMjc2NGI3MjU3MDZkMjIwNjI2N2JlYjQ5NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdT
dHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAKQEAgLTQ2NSwxMiArNDY1LDggQEAgc3Rh
dGljIEdzdEZsb3dSZXR1cm4gd2ViS2l0V2ViU3JjQ3JlYXRlKEdzdFB1c2hTcmMqIHB1c2hTcmMs
IEdzdEJ1ZmZlcioqIGJ1ZmZlcikKICAgICAvLyAxKSB3ZWJLaXRXZWJTcmNTZXRNZWRpYVBsYXll
cigpIGlzIGNhbGxlZCBieSBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIgYnkgbWVhbnMgb2Yg
aG9va2luZyBwbGF5YmluJ3MKICAgICAvLyAgICAic291cmNlLXNldHVwIiBldmVudC4gVGhpcyBk
b2Vzbid0IHdvcmsgZm9yIGFkZGl0aW9uYWwgV2ViS2l0V2ViU3JjIGVsZW1lbnRzIGNyZWF0ZWQg
YnkgYWRhcHRpdmVkZW11eC4KICAgICAvLwotICAgIC8vIDIpIEEgR3N0Q29udGV4dCBxdWVyeSBt
YWRlIGhlcmUuIEJlY2F1c2Ugb2YgYSBidWcsIHRoaXMgb25seSB3b3JrcyBpbiBHU3RyZWFtZXIg
Pj0gMS4xMi4KLSAgICAvLwotICAgIC8vIEFzIGEgY29tcGF0aWJpbGl0eSB3b3JrYXJvdW5kLCB0
aGUgaHR0cDogVVJJIHByb3RvY29sIGlzIG9ubHkgcmVnaXN0ZXJlZCBmb3IgZ3N0Pj0xLjEyOyBv
dGhlcndpc2UgdXNpbmcKLSAgICAvLyB3ZWJraXQraHR0cDosIHdoaWNoIGlzIHVzZWQgYnkgTWVk
aWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyIGJ1dCBub3QgYnkgYWRhcHRpdmVkZW11eCdzIGFkZGl0
aW9uYWwgc291cmNlCi0gICAgLy8gZWxlbWVudHMsIHRoZXJlZm9yZSB1c2luZyBzb3VwaHR0cHNy
YyBpbnN0ZWFkIGFuZCBub3Qgcm91dGluZyB0cmFmZmljIHRocm91Z2ggdGhlIE5ldHdvcmtQcm9j
ZXNzLgotICAgIGlmICh3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTIsIDApICYmICFtZW1iZXJz
LT5wbGF5ZXIpIHsKKyAgICAvLyAyKSBBIEdzdENvbnRleHQgcXVlcnkgbWFkZSBoZXJlLgorICAg
IGlmICghbWVtYmVycy0+cGxheWVyKSB7CiAgICAgICAgIG1lbWJlcnMucnVuVW5sb2NrZWQoW3Ny
YywgYmFzZVNyY10oKSB7CiAgICAgICAgICAgICBHUmVmUHRyPEdzdFF1ZXJ5PiBxdWVyeSA9IGFk
b3B0R1JlZihnc3RfcXVlcnlfbmV3X2NvbnRleHQoV0VCS0lUX1dFQl9TUkNfUExBWUVSX0NPTlRF
WFRfVFlQRV9OQU1FKSk7CiAgICAgICAgICAgICBpZiAoZ3N0X3BhZF9wZWVyX3F1ZXJ5KEdTVF9C
QVNFX1NSQ19QQUQoYmFzZVNyYyksIHF1ZXJ5LmdldCgpKSkgewpAQCAtODYzLDE1ICs4NTksOSBA
QCBzdGF0aWMgR3N0VVJJVHlwZSB3ZWJLaXRXZWJTcmNVcmlHZXRUeXBlKEdUeXBlKQogY29uc3Qg
Z2NoYXIqIGNvbnN0KiB3ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMoR1R5cGUpCiB7CiAgICAgc3Rh
dGljIGNvbnN0IGNoYXIqIHByb3RvY29sc1s0XTsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJz
aW9uKDEsIDEyLCAwKSkgewotICAgICAgICBwcm90b2NvbHNbMF0gPSAiaHR0cCI7Ci0gICAgICAg
IHByb3RvY29sc1sxXSA9ICJodHRwcyI7Ci0gICAgICAgIHByb3RvY29sc1syXSA9ICJibG9iIjsK
LSAgICB9IGVsc2UgewotICAgICAgICBwcm90b2NvbHNbMF0gPSAid2Via2l0K2h0dHAiOwotICAg
ICAgICBwcm90b2NvbHNbMV0gPSAid2Via2l0K2h0dHBzIjsKLSAgICAgICAgcHJvdG9jb2xzWzJd
ID0gIndlYmtpdCtibG9iIjsKLSAgICB9CisgICAgcHJvdG9jb2xzWzBdID0gImh0dHAiOworICAg
IHByb3RvY29sc1sxXSA9ICJodHRwcyI7CisgICAgcHJvdG9jb2xzWzJdID0gImJsb2IiOwogICAg
IHByb3RvY29sc1szXSA9IG51bGxwdHI7CiAgICAgcmV0dXJuIHByb3RvY29sczsKIH0KQEAgLTg3
OSwxMCArODY5LDYgQEAgY29uc3QgZ2NoYXIqIGNvbnN0KiB3ZWJLaXRXZWJTcmNHZXRQcm90b2Nv
bHMoR1R5cGUpCiBzdGF0aWMgVVJMIGNvbnZlcnRQbGF5YmluVVJJKGNvbnN0IGNoYXIqIHVyaVN0
cmluZykKIHsKICAgICBVUkwgdXJsKFVSTCgpLCB1cmlTdHJpbmcpOwotICAgIGlmICghd2Via2l0
R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAgICBBU1NFUlQodXJsLnByb3RvY29s
KCkuc3Vic3RyaW5nKDAsIDcpID09ICJ3ZWJraXQrIik7Ci0gICAgICAgIHVybC5zZXRQcm90b2Nv
bCh1cmwucHJvdG9jb2woKS5zdWJzdHJpbmcoNykudG9TdHJpbmcoKSk7Ci0gICAgfQogICAgIHJl
dHVybiB1cmw7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL0dTdHJlYW1lckVNRVV0aWxpdGllcy5o
CmluZGV4IDg5OTNhM2IwNmE0NWRjNDliMTMwZTQ1MzMyMDk2NzY2ZGQxNzUyNTguLjJkZWU5MDIz
Zjk5ZGM0NjNkZDY0ZTA1MWNmYWMwZTYzMGJlYzUxMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9H
U3RyZWFtZXJFTUVVdGlsaXRpZXMuaApAQCAtNzksNyArNzksNyBAQCBwdWJsaWM6CiAgICAgY29u
c3QgU3RyaW5nJiBzeXN0ZW1JZCgpIGNvbnN0IHsgcmV0dXJuIG1fc3lzdGVtSWQ7IH0KICAgICBT
dHJpbmcgcGF5bG9hZENvbnRhaW5lclR5cGUoKSBjb25zdAogICAgIHsKLSNpZiBHU1RfQ0hFQ0tf
VkVSU0lPTigxLCAxNSwgMCkKKyNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNiwgMCkKICAgICAg
ICAgaWYgKG1fc3lzdGVtSWQgPT0gR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lTVEVNX0lE
KQogICAgICAgICAgICAgcmV0dXJuICJ3ZWJtIl9zOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVu
Y3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9yR1N0
cmVhbWVyLmNwcAppbmRleCBiZGY0YWQ0ODM4NjExODQwNzA5NDliM2QwZTNhMzczOTFkMGZlYTQx
Li42NWUxNmM4YjExM2QxZDdkZDZkMTFiMDQ2MzU5NzNmMWEwNjA0MmQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1v
bkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5
cHRvckdTdHJlYW1lci5jcHAKQEAgLTEyNSw3ICsxMjUsNyBAQCBzdGF0aWMgR3N0Q2FwcyogdHJh
bnNmb3JtQ2FwcyhHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RQYWREaXJlY3Rpb24gZGlyZWN0
aW9uLAogICAgICAgICAgICAgLy8gR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lTVEVNX0lE
IHdhcyBhZGRlZCBpbiB0aGUgR1N0cmVhbWVyCiAgICAgICAgICAgICAvLyBkZXZlbG9wZW1lbnQg
Z2l0IG1hc3RlciB3aGljaCB3aWxsIHNoaXAgYXMgdmVyc2lvbiAxLjE2LjAuCiAgICAgICAgICAg
ICBnc3Rfc3RydWN0dXJlX3NldF9uYW1lKG91dGdvaW5nU3RydWN0dXJlLmdldCgpLAotI2lmIEdT
VF9DSEVDS19WRVJTSU9OKDEsIDE1LCAwKQorI2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE2LCAw
KQogICAgICAgICAgICAgICAgICFnX3N0cmNtcDAoa2xhc3MtPnByb3RlY3Rpb25TeXN0ZW1JZChz
ZWxmKSwgR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lTVEVNX0lEKSA/ICJhcHBsaWNhdGlv
bi94LXdlYm0tZW5jIiA6CiAjZW5kaWYKICAgICAgICAgICAgICAgICAiYXBwbGljYXRpb24veC1j
ZW5jIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9n
c3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lck1lZGlhU3RyZWFtU291cmNl
LmNwcAppbmRleCBiZDg0YjA0M2RlZWU2MjhmZjQ5YzQwZGEzMmYzMmNjNzA5NThjMmE1Li42ZTAx
MzA3YmQxNGQwNDJiYWI1N2NmYmU0ZTAyZTU3Mzc4ZDQ4N2I3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJl
YW1Tb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dz
dHJlYW1lci9HU3RyZWFtZXJNZWRpYVN0cmVhbVNvdXJjZS5jcHAKQEAgLTQwMSw5ICs0MDEsNyBA
QCBzdGF0aWMgdm9pZCB3ZWJraXRNZWRpYVN0cmVhbVNyY0Rpc3Bvc2UoR09iamVjdCogb2JqZWN0
KQogCiBzdGF0aWMgR3N0U3RhdGVDaGFuZ2VSZXR1cm4gd2Via2l0TWVkaWFTdHJlYW1TcmNDaGFu
Z2VTdGF0ZShHc3RFbGVtZW50KiBlbGVtZW50LCBHc3RTdGF0ZUNoYW5nZSB0cmFuc2l0aW9uKQog
ewotI2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE0LCAwKQogICAgIEdTVF9ERUJVR19PQkpFQ1Qo
ZWxlbWVudCwgIiVzIiwgZ3N0X3N0YXRlX2NoYW5nZV9nZXRfbmFtZSh0cmFuc2l0aW9uKSk7Ci0j
ZW5kaWYKIAogICAgIGlmICh0cmFuc2l0aW9uID09IEdTVF9TVEFURV9DSEFOR0VfUEFVU0VEX1RP
X1JFQURZKQogICAgICAgICBzdG9wT2JzZXJ2aW5nVHJhY2tzKFdFQktJVF9NRURJQV9TVFJFQU1f
U1JDKGVsZW1lbnQpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9HU3RyZWFtZXJDaGVja3Mu
Y21ha2UgYi9Tb3VyY2UvY21ha2UvR1N0cmVhbWVyQ2hlY2tzLmNtYWtlCmluZGV4IDA3MGMxMWZk
YzYzZDE1MDJlODFkMDczNDg1NTIwNmY5MTBkYzZmMjcuLmE2MWI4YTg4Njc2Y2IyMjMwMGRjNGE2
MzI0OTA2ODE0NjVjZGM2MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9HU3RyZWFtZXJDaGVj
a3MuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL0dTdHJlYW1lckNoZWNrcy5jbWFrZQpAQCAtMjgs
NyArMjgsNyBAQCBpZiAoRU5BQkxFX1ZJREVPIE9SIEVOQUJMRV9XRUJfQVVESU8pCiAgICAgICAg
ICAgICAgIGxpc3QoQVBQRU5EIEdTVFJFQU1FUl9DT01QT05FTlRTIGF1ZGlvIGZmdCkKICAgICAg
ICAgICBlbmRpZiAoKQogCi0gICAgICAgICAgZmluZF9wYWNrYWdlKEdTdHJlYW1lciAxLjEwLjAg
UkVRVUlSRUQgQ09NUE9ORU5UUyAke0dTVFJFQU1FUl9DT01QT05FTlRTfSkKKyAgICAgICAgICBm
aW5kX3BhY2thZ2UoR1N0cmVhbWVyIDEuMTQuMCBSRVFVSVJFRCBDT01QT05FTlRTICR7R1NUUkVB
TUVSX0NPTVBPTkVOVFN9KQogCiAgICAgICAgICAgaWYgKEVOQUJMRV9XRUJfQVVESU8pCiAgICAg
ICAgICAgICAgIGlmIChOT1QgUENfR1NUUkVBTUVSX0FVRElPX0ZPVU5EIE9SIE5PVCBQQ19HU1RS
RUFNRVJfRkZUX0ZPVU5EKQpAQCAtNTIsMTQgKzUyLDcgQEAgaWYgKEVOQUJMRV9WSURFTyBPUiBF
TkFCTEVfV0VCX0FVRElPKQogICAgICAgZW5kaWYgKCkKIGVuZGlmICgpCiAKLWlmIChFTkFCTEVf
TUVESUFfU09VUkNFIEFORCBQQ19HU1RSRUFNRVJfVkVSU0lPTiBWRVJTSU9OX0xFU1MgIjEuMTQi
KQotICAgIG1lc3NhZ2UoRkFUQUxfRVJST1IgIkdTdHJlYW1lciAxLjE0IGlzIG5lZWRlZCBmb3Ig
RU5BQkxFX01FRElBX1NPVVJDRS4iKQotZW5kaWYgKCkKLQogaWYgKEVOQUJMRV9NRURJQV9TVFJF
QU0gQU5EIEVOQUJMRV9XRUJfUlRDKQotICAgIGlmIChQQ19HU1RSRUFNRVJfVkVSU0lPTiBWRVJT
SU9OX0xFU1MgIjEuMTIiKQotICAgICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJHU3RyZWFtZXIg
MS4xMiBpcyBuZWVkZWQgZm9yIEVOQUJMRV9XRUJfUlRDLiIpCi0gICAgZW5kaWYgKCkKICAgICBT
RVRfQU5EX0VYUE9TRV9UT19CVUlMRChVU0VfTElCV0VCUlRDIFRSVUUpCiAgICAgU0VUX0FORF9F
WFBPU0VfVE9fQlVJTEQoV0VCUlRDX1dFQktJVF9CVUlMRCBUUlVFKQogZWxzZSAoKQpkaWZmIC0t
Z2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDBjM2RlZjMwZjdhOWRlNzE4YmEwOTQy
OTkwZjRkNzY5ZTZjY2QxOGUuLmNiOGNmOTI3YjhiYmQ5NWNhYWIxMTk4YTRhNzQwNjY2MDI0NDFk
Y2IgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBA
QAorMjAyMS0wMS0wNiAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CisK
KyAgICAgICAgW0dTdHJlYW1lcl0gQnVtcCB2ZXJzaW9uIHJlcXVpcmVtZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjAzNTYKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9HU3Ry
ZWFtZXJDaGVja3MuY21ha2U6IEJ1bXAgcmVxdWlyZWQgdmVyc2lvbiB0byAxLjE0LgorCiAyMDIx
LTAxLTA1ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29tPgogCiAgICAg
ICAgIFtXaW5DYWlyb11bY3VybF0gRW5hYmxlIENVUkxTU0xPUFRfTkFUSVZFX0NBIGZsYWcgdG8g
dXNlIHN5c3RlbSdzIENBIGNlcnRzIGluc3RlYWQgb2YgY2FjZXJ0LnBlbQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417097</attachid>
            <date>2021-01-06 09:29:52 -0800</date>
            <delta_ts>2021-01-06 09:32:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220356-20210106092950.patch</filename>
            <type>text/plain</type>
            <size>23283</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRhNGJhMmE1ZGE2MWRl
ZjJmNjQzNTRkMDExNTE5N2RlNGYxMjJkZS4uNTMxNDRjNDBlYTc1NTc0ZDM4YjY0YmMyMzAxNGY2
YWI4MzRkNDQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAxLTA2ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XSBCdW1wIHZlcnNpb24gcmVxdWlyZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMDM1NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFJlbW92ZSBjb21waWxlLXRpbWUgYW5kIHJ1bnRpbWUgR1N0cmVh
bWVyIHZlcnNpb24gY2hlY2tzIHRoYXQgYXJlCisgICAgICAgIG5vdCBuZWVkZWQgYW55bW9yZSBz
aW5jZSB3ZSBub3cgcmVxdWlyZSBhdCBsZWFzdCBHU3RyZWFtZXIgMS4xNCBhdAorICAgICAgICBj
b25maWd1cmUgdGltZS4KKworICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3VyY2VHU3Ry
ZWFtZXIuY3BwOgorICAgICAgICAoX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZTo6X1dlYktpdFdl
YkF1ZGlvU3JjUHJpdmF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJBdWRpb1NyY1JlbmRlckFuZFB1
c2hGcmFtZXMpOgorICAgICAgICAod2ViS2l0V2ViQXVkaW9TcmNDaGFuZ2VTdGF0ZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9TaW5rR1N0cmVhbWVyLmNw
cDoKKyAgICAgICAgKHJlcXVlc3RHTENvbnRleHQpOgorICAgICAgICAod2ViS2l0R0xWaWRlb1Np
bmtDaGFuZ2VTdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dT
dHJlYW1lckF1ZGlvTWl4ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R1N0cmVhbWVyQXVkaW9N
aXhlcjo6ZW5zdXJlU3RhdGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjp3b3VsZFRhaW50T3JpZ2luIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6c2V0UGxheWJpblVSTCk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmhhbmRsZU1l
c3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpj
cmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0ludGVybmFsUHJv
dG9jb2wpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKFBsYXRm
b3JtRGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0IGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0QXVkaW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAg
ICAgICAgKHdlYktpdEF1ZGlvU2lua0NoYW5nZVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KHdlYktpdFdlYlNyY0NyZWF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMp
OgorICAgICAgICAoY29udmVydFBsYXliaW5VUkkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVzLmg6CisgICAgICAgIChXZWJD
b3JlOjpJbml0RGF0YTo6cGF5bG9hZENvbnRhaW5lclR5cGUgY29uc3QpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5
cHRvckdTdHJlYW1lci5jcHA6CisgICAgICAgICh0cmFuc2Zvcm1DYXBzKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2Uu
Y3BwOgorICAgICAgICAod2Via2l0TWVkaWFTdHJlYW1TcmNDaGFuZ2VTdGF0ZSk6CisKIDIwMjEt
MDEtMDYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVt
b3ZlIHRoZSB1bnVzZWQgUmVuZGVyU3R5bGU6OnNldEhhc1BzZXVkb1N0eWxlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCAyYWY3YWEwZGE3NzY0NWYxOTVjZjc1
Mjk1MGQ1OWJlNmE0NDQ5M2EzLi5kYmRmNDA5MWExZTdhOTNmZmNjNTA2ZjE4NGI5OGFlYjM2NWFk
Nzc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9HU3RyZWFtZXIuY21ha2UK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVhbWVyLmNtYWtlCkBAIC0xNDEsMTcg
KzE0MSwxMyBAQCBpZiAoRU5BQkxFX1ZJREVPKQogICAgIGVuZGlmICgpCiAKICAgICBpZiAoRU5B
QkxFX01FRElBX1NUUkVBTSBPUiBFTkFCTEVfV0VCX1JUQykKLSAgICAgICAgaWYgKFBDX0dTVFJF
QU1FUl9WRVJTSU9OIFZFUlNJT05fTEVTUyAiMS4xMCIpCi0gICAgICAgICAgICBtZXNzYWdlKEZB
VEFMX0VSUk9SICJHU3RyZWFtZXIgMS4xMCBpcyBuZWVkZWQgZm9yIEVOQUJMRV9NRURJQV9TVFJF
QU0gb3IgRU5BQkxFX1dFQl9SVEMiKQotICAgICAgICBlbHNlICgpCi0gICAgICAgICAgICBsaXN0
KEFQUEVORCBXZWJDb3JlX1NZU1RFTV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAgICAgICAgICAg
ICAgJHtHU1RSRUFNRVJfQ09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KKyAgICAgICAgbGlzdChB
UFBFTkQgV2ViQ29yZV9TWVNURU1fSU5DTFVERV9ESVJFQ1RPUklFUworICAgICAgICAgICAgJHtH
U1RSRUFNRVJfQ09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KKyAgICAgICAgKQorICAgICAgICBp
ZiAoTk9UIFVTRV9HU1RSRUFNRVJfRlVMTCkKKyAgICAgICAgICAgIGxpc3QoQVBQRU5EIFdlYkNv
cmVfTElCUkFSSUVTCisgICAgICAgICAgICAgICAgJHtHU1RSRUFNRVJfQ09ERUNQQVJTRVJTX0xJ
QlJBUklFU30KICAgICAgICAgICAgICkKLSAgICAgICAgICAgIGlmIChOT1QgVVNFX0dTVFJFQU1F
Ul9GVUxMKQotICAgICAgICAgICAgICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCi0g
ICAgICAgICAgICAgICAgICAgICR7R1NUUkVBTUVSX0NPREVDUEFSU0VSU19MSUJSQVJJRVN9Ci0g
ICAgICAgICAgICAgICAgKQotICAgICAgICAgICAgZW5kaWYgKCkKICAgICAgICAgZW5kaWYgKCkK
ICAgICBlbmRpZiAoKQogZW5kaWYgKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRpb1NvdXJjZUdTdHJlYW1lci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3Vy
Y2VHU3RyZWFtZXIuY3BwCmluZGV4IGFlMzQ1ZGIwOGI1N2ZiZDFjYTZlNDQ4ZDc5MTUzZWUwMmU1
MmNkOWMuLmNhZjA0NDNjN2ExYThjNzNmMDI1MWRhZGQ2OGFjYWRhNjkxOTc2MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRp
b1NvdXJjZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
Z3N0cmVhbWVyL1dlYktpdFdlYkF1ZGlvU291cmNlR1N0cmVhbWVyLmNwcApAQCAtNzgsNyArNzgs
NiBAQCBzdHJ1Y3QgX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZSB7CiAKICAgICBHUmVmUHRyPEdz
dEJ1ZmZlclBvb2w+IHBvb2w7CiAKLSAgICBib29sIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQ7CiAg
ICAgYm9vbCBoYXNSZW5kZXJlZEF1ZGlibGVGcmFtZSB7IGZhbHNlIH07CiAKICAgICBMb2NrIGRp
c3BhdGNoVG9SZW5kZXJUaHJlYWRMb2NrOwpAQCAtOTMsMTEgKzkyLDYgQEAgc3RydWN0IF9XZWJL
aXRXZWJBdWRpb1NyY1ByaXZhdGUgewogICAgICAgICBzb3VyY2VQYWQgPSB3ZWJraXRHc3RHaG9z
dFBhZEZyb21TdGF0aWNUZW1wbGF0ZSgmc3JjVGVtcGxhdGUsICJzcmMiLCBudWxscHRyKTsKIAog
ICAgICAgICBnX3JlY19tdXRleF9pbml0KCZtdXRleCk7Ci0KLSAgICAgICAgLy8gR0FQIGJ1ZmZl
ciBzdXBwb3J0IGlzIGVuYWJsZWQgb25seSBmb3IgR1N0cmVhbWVyIDEuMTIuNSBiZWNhdXNlIG9m
IGEKLSAgICAgICAgLy8gbWVtb3J5IGxlYWsgdGhhdCB3YXMgZml4ZWQgaW4gdGhhdCB2ZXJzaW9u
LgotICAgICAgICAvLyBodHRwczovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzkzMDY3Ci0gICAgICAgIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQgPSB3ZWJraXRHc3RDaGVja1Zl
cnNpb24oMSwgMTIsIDUpOwogICAgIH0KIAogICAgIH5fV2ViS2l0V2ViQXVkaW9TcmNQcml2YXRl
KCkKQEAgLTM3MCw3ICszNjQsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRXZWJBdWRpb1NyY1JlbmRl
ckFuZFB1c2hGcmFtZXMoR1JlZlB0cjxHc3RFbGVtZW50PiYmIGVsZW1lbnQsCiAgICAgICAgIEdT
VF9CVUZGRVJfVElNRVNUQU1QKGJ1ZmZlci5nZXQoKSkgPSBvdXRwdXRUaW1lc3RhbXAucG9zaXRp
b24ubmFub3NlY29uZHMoKTsKICAgICAgICAgR1NUX0JVRkZFUl9EVVJBVElPTihidWZmZXIuZ2V0
KCkpID0gZHVyYXRpb247CiAKLSAgICAgICAgaWYgKHByaXYtPmVuYWJsZUdhcEJ1ZmZlclN1cHBv
cnQgJiYgcHJpdi0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQorICAgICAgICBpZiAocHJp
di0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQogICAgICAgICAgICAgR1NUX0JVRkZFUl9G
TEFHX1NFVChidWZmZXIuZ2V0KCksIEdTVF9CVUZGRVJfRkxBR19HQVApOwogCiAgICAgICAgIGlm
IChmYWlsZWQpCkBAIC00MzAsOSArNDI0LDcgQEAgc3RhdGljIEdzdFN0YXRlQ2hhbmdlUmV0dXJu
IHdlYktpdFdlYkF1ZGlvU3JjQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxlbWVudCwgR3MKICAg
ICBhdXRvKiBzcmMgPSBXRUJLSVRfV0VCX0FVRElPX1NSQyhlbGVtZW50KTsKICAgICBhdXRvKiBw
cml2ID0gc3JjLT5wcml2OwogCi0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAgICAg
R1NUX0RFQlVHX09CSkVDVChlbGVtZW50LCAiJXMiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1l
KHRyYW5zaXRpb24pKTsKLSNlbmRpZgogCiAgICAgc3dpdGNoICh0cmFuc2l0aW9uKSB7CiAgICAg
Y2FzZSBHU1RfU1RBVEVfQ0hBTkdFX05VTExfVE9fUkVBRFk6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFtZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9T
aW5rR1N0cmVhbWVyLmNwcAppbmRleCBlZmY3NmJjNzNiODczNjEzNjMxZTFjMWE5YTZkOTc5YzEx
NzM1Y2Y1Li40YjA4OTAxZjM3MmY1NTdjNTM2M2NhNDFhYzU2NzNjZDhiMzNjN2NkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1Np
bmtHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9HTFZpZGVvU2lua0dTdHJlYW1lci5jcHAKQEAgLTEzMywxMSArMTMzLDcgQEAgT3B0
aW9uYWw8R1JlZlB0cjxHc3RDb250ZXh0Pj4gcmVxdWVzdEdMQ29udGV4dChjb25zdCBjaGFyKiBj
b250ZXh0VHlwZSkKICAgICBpZiAoIWdfc3RyY21wMChjb250ZXh0VHlwZSwgImdzdC5nbC5hcHBf
Y29udGV4dCIpKSB7CiAgICAgICAgIEdzdENvbnRleHQqIGFwcENvbnRleHQgPSBnc3RfY29udGV4
dF9uZXcoImdzdC5nbC5hcHBfY29udGV4dCIsIFRSVUUpOwogICAgICAgICBHc3RTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IGdzdF9jb250ZXh0X3dyaXRhYmxlX3N0cnVjdHVyZShhcHBDb250ZXh0KTsK
LSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxMiwgMCkKICAgICAgICAgZ3N0X3N0cnVjdHVyZV9z
ZXQoc3RydWN0dXJlLCAiY29udGV4dCIsIEdTVF9UWVBFX0dMX0NPTlRFWFQsIGdzdEdMQ29udGV4
dCwgbnVsbHB0cik7Ci0jZWxzZQotICAgICAgICBnc3Rfc3RydWN0dXJlX3NldChzdHJ1Y3R1cmUs
ICJjb250ZXh0IiwgR1NUX0dMX1RZUEVfQ09OVEVYVCwgZ3N0R0xDb250ZXh0LCBudWxscHRyKTsK
LSNlbmRpZgogICAgICAgICByZXR1cm4gYWRvcHRHUmVmKGFwcENvbnRleHQpOwogICAgIH0KIApA
QCAtMTU4LDE1ICsxNTQsMTEgQEAgc3RhdGljIGJvb2wgc2V0R0xDb250ZXh0KEdzdEVsZW1lbnQq
IGVsZW1lbnRTaW5rLCBjb25zdCBjaGFyKiBjb250ZXh0VHlwZSkKIAogc3RhdGljIEdzdFN0YXRl
Q2hhbmdlUmV0dXJuIHdlYktpdEdMVmlkZW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxl
bWVudCwgR3N0U3RhdGVDaGFuZ2UgdHJhbnNpdGlvbikKIHsKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lP
TigxLCAxNCwgMCkKICAgICBHU1RfREVCVUdfT0JKRUNUKGVsZW1lbnQsICIlcyIsIGdzdF9zdGF0
ZV9jaGFuZ2VfZ2V0X25hbWUodHJhbnNpdGlvbikpOwotI2VuZGlmCiAKICAgICBzd2l0Y2ggKHRy
YW5zaXRpb24pIHsKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfTlVMTF9UT19SRUFEWToKLSNp
ZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNCwgMCkKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0Vf
UkVBRFlfVE9fUkVBRFk6Ci0jZW5kaWYKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfUkVBRFlf
VE9fUEFVU0VEOiB7CiAgICAgICAgIGlmICghc2V0R0xDb250ZXh0KGVsZW1lbnQsIEdTVF9HTF9E
SVNQTEFZX0NPTlRFWFRfVFlQRSkpCiAgICAgICAgICAgICByZXR1cm4gR1NUX1NUQVRFX0NIQU5H
RV9GQUlMVVJFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwCmluZGV4IDcwOTA0
MDdjNzU2MGY1NjMwMmZjZDA0Yzg3NmZiNzM2Y2ZkM2FhYzcuLjI4ZDdhMWQ1NjJjMjRlYWM5MTZl
YzViZTc5NzVjMmMwMTViOTM5OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb01peGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1N0cmVhbWVyQXVkaW9NaXhlci5j
cHAKQEAgLTU3LDkgKzU3LDggQEAgR1N0cmVhbWVyQXVkaW9NaXhlcjo6R1N0cmVhbWVyQXVkaW9N
aXhlcigpCiAKIHZvaWQgR1N0cmVhbWVyQXVkaW9NaXhlcjo6ZW5zdXJlU3RhdGUoR3N0U3RhdGVD
aGFuZ2Ugc3RhdGVDaGFuZ2UpCiB7Ci0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAg
ICAgR1NUX0RFQlVHX09CSkVDVChtX3BpcGVsaW5lLmdldCgpLCAiSGFuZGxpbmcgJXMgdHJhbnNp
dGlvbiAoJXUgbWl4ZXIgcGFkcykiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0YXRlQ2hh
bmdlKSwgbV9taXhlci0+bnVtc2lua3BhZHMpOwotI2VuZGlmCisKICAgICBzd2l0Y2ggKHN0YXRl
Q2hhbmdlKSB7CiAgICAgY2FzZSBHU1RfU1RBVEVfQ0hBTkdFX1JFQURZX1RPX1BBVVNFRDoKICAg
ICAgICAgZ3N0X2VsZW1lbnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFURV9Q
QVVTRUQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cAppbmRleCAwZjZjNjZkMjA3NWQ1N2M1Yzc3NDM2YzFkZDA5NGQ0NDFlN2VlNTg3Li4yZTA5ZjEy
N2Y5MWNiYTk0OTEzZGJmZThkZDEwMTYwYTFhOGVlYWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTUzLDE0ICsxNTMsNiBAQCBzdGF0
aWMgdm9pZCBidXNNZXNzYWdlQ2FsbGJhY2soR3N0QnVzKiwgR3N0TWVzc2FnZSogbWVzc2FnZSwg
TWVkaWFQbGF5ZXJQcml2YXRlRwogICAgIHBsYXllci0+aGFuZGxlTWVzc2FnZShtZXNzYWdlKTsK
IH0KIAotc3RhdGljIHZvaWQgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChVUkwmIHVybCkKLXsK
LSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkKLSAgICAgICAgcmV0dXJu
OwotICAgIGlmICh1cmwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpIHx8IHVybC5wcm90b2NvbElz
QmxvYigpKQotICAgICAgICB1cmwuc2V0UHJvdG9jb2wobWFrZVN0cmluZygid2Via2l0KyIsIHVy
bC5wcm90b2NvbCgpKSk7Ci19Ci0KIHN0YXRpYyB2b2lkIGluaXRpYWxpemVEZWJ1Z0NhdGVnb3J5
KCkKIHsKICAgICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZUZsYWc7CkBAIC04NTIsMjIgKzg0
NCwxNSBAQCBib29sIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6aGFzU2luZ2xlU2VjdXJp
dHlPcmlnaW4oKSBjb25zdAogCiBPcHRpb25hbDxib29sPiBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OndvdWxkVGFpbnRPcmlnaW4oY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbikgY29u
c3QKIHsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAg
ICBHU1RfVFJBQ0VfT0JKRUNUKHBpcGVsaW5lKCksICJDaGVja2luZyAldSBvcmlnaW5zIiwgbV9v
cmlnaW5zLnNpemUoKSk7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzcG9uc2VPcmlnaW4gOiBtX29y
aWdpbnMpIHsKLSAgICAgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2VzcygqcmVzcG9uc2VPcmln
aW4pKSB7Ci0gICAgICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChwaXBlbGluZSgpLCAiRm91
bmQgcmVhY2hhYmxlIHJlc3BvbnNlIG9yaWdpbiIpOwotICAgICAgICAgICAgICAgIHJldHVybiB0
cnVlOwotICAgICAgICAgICAgfQorICAgIEdTVF9UUkFDRV9PQkpFQ1QocGlwZWxpbmUoKSwgIkNo
ZWNraW5nICV1IG9yaWdpbnMiLCBtX29yaWdpbnMuc2l6ZSgpKTsKKyAgICBmb3IgKGF1dG8mIHJl
c3BvbnNlT3JpZ2luIDogbV9vcmlnaW5zKSB7CisgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2Vz
cygqcmVzcG9uc2VPcmlnaW4pKSB7CisgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVs
aW5lKCksICJGb3VuZCByZWFjaGFibGUgcmVzcG9uc2Ugb3JpZ2luIik7CisgICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICAgICAgfQotICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5l
KCksICJObyB2YWxpZCByZXNwb25zZSBvcmlnaW4gZm91bmQiKTsKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KLQotICAgIC8vIEdTdHJlYW1lciA8IDEuMTIgaGFzIGFuIGluY29tcGxldGUg
dXJpZG93bmxvYWRlciBpbXBsZW1lbnRhdGlvbiBzbyB3ZQotICAgIC8vIGNhbid0IHVzZSBXZWJL
aXRXZWJTcmMgZm9yIGFkYXB0aXZlIGZyYWdtZW50cyBkb3dubG9hZGluZyBpZiB0aGlzCi0gICAg
Ly8gdmVyc2lvbiBpcyBkZXRlY3RlZC4KLSAgICByZXR1cm4gbV9oYXNUYWludGVkT3JpZ2luOwor
ICAgIEdTVF9ERUJVR19PQkpFQ1QocGlwZWxpbmUoKSwgIk5vIHZhbGlkIHJlc3BvbnNlIG9yaWdp
biBmb3VuZCIpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXI6OnNpbXVsYXRlQXVkaW9JbnRlcnJ1cHRpb24oKQpAQCAtOTg3LDcgKzk3Miw2
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpzZXRQbGF5YmluVVJMKGNvbnN0
IFVSTCYgdXJsKQogICAgICAgICBjbGVhblVSTFN0cmluZyA9IGNsZWFuVVJMU3RyaW5nLnN1YnN0
cmluZygwLCB1cmwucGF0aEVuZCgpKTsKIAogICAgIG1fdXJsID0gVVJMKFVSTCgpLCBjbGVhblVS
TFN0cmluZyk7Ci0gICAgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChtX3VybCk7CiAgICAgR1NU
X0lORk9fT0JKRUNUKHBpcGVsaW5lKCksICJMb2FkICVzIiwgbV91cmwuc3RyaW5nKCkudXRmOCgp
LmRhdGEoKSk7CiAgICAgZ19vYmplY3Rfc2V0KG1fcGlwZWxpbmUuZ2V0KCksICJ1cmkiLCBtX3Vy
bC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpLCBudWxscHRyKTsKIH0KQEAgLTE5NjgsNyArMTk1Miw2
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdzdE1l
c3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5lKCks
ICJQcm9jZXNzaW5nIEhUVFAgaGVhZGVyczogJSIgR1NUX1BUUl9GT1JNQVQsIHN0cnVjdHVyZSk7
CiAgICAgICAgICAgICBpZiAoY29uc3QgY2hhciogdXJpID0gZ3N0X3N0cnVjdHVyZV9nZXRfc3Ry
aW5nKHN0cnVjdHVyZSwgInVyaSIpKSB7CiAgICAgICAgICAgICAgICAgVVJMIHVybChVUkwoKSwg
dXJpKTsKLSAgICAgICAgICAgICAgICBjb252ZXJ0VG9JbnRlcm5hbFByb3RvY29sKHVybCk7CiAg
ICAgICAgICAgICAgICAgbV9vcmlnaW5zLmFkZChTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHVybCkp
OwogCiAgICAgICAgICAgICAgICAgaWYgKHVybCAhPSBtX3VybCkgewpAQCAtMjAwOCw3ICsxOTkx
LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmhhbmRsZU1lc3NhZ2UoR3N0
TWVzc2FnZSogbWVzc2FnZSkKICAgICAgICAgICAgIGlmIChnc3Rfc3RydWN0dXJlX2dldChzdHJ1
Y3R1cmUsICJyZWFkLXBvc2l0aW9uIiwgR19UWVBFX1VJTlQ2NCwgJm1fbmV0d29ya1JlYWRQb3Np
dGlvbiwgInNpemUiLCBHX1RZUEVfVUlOVDY0LCAmbV9odHRwUmVzcG9uc2VUb3RhbFNpemUsIG51
bGxwdHIpKQogICAgICAgICAgICAgICAgIEdTVF9ERUJVR19PQkpFQ1QocGlwZWxpbmUoKSwgIlVw
ZGF0ZWQgbmV0d29yayByZWFkIHBvc2l0aW9uICUiIEdfR1VJTlQ2NF9GT1JNQVQgIiwgc2l6ZTog
JSIgR19HVUlOVDY0X0ZPUk1BVCwgbV9uZXR3b3JrUmVhZFBvc2l0aW9uLCBtX2h0dHBSZXNwb25z
ZVRvdGFsU2l6ZSk7CiAgICAgICAgIH0gZWxzZSBpZiAoZ3N0X3N0cnVjdHVyZV9oYXNfbmFtZShz
dHJ1Y3R1cmUsICJhZGFwdGl2ZS1zdHJlYW1pbmctc3RhdGlzdGljcyIpKSB7Ci0gICAgICAgICAg
ICBpZiAoV0VCS0lUX0lTX1dFQl9TUkMobV9zb3VyY2UuZ2V0KCkpICYmICF3ZWJraXRHc3RDaGVj
a1ZlcnNpb24oMSwgMTIsIDApKSB7CisgICAgICAgICAgICBpZiAoV0VCS0lUX0lTX1dFQl9TUkMo
bV9zb3VyY2UuZ2V0KCkpKSB7CiAgICAgICAgICAgICAgICAgaWYgKGNvbnN0IGNoYXIqIHVyaSA9
IGdzdF9zdHJ1Y3R1cmVfZ2V0X3N0cmluZyhzdHJ1Y3R1cmUsICJ1cmkiKSkKICAgICAgICAgICAg
ICAgICAgICAgbV9oYXNUYWludGVkT3JpZ2luID0gd2ViS2l0U3JjV291bGRUYWludE9yaWdpbihX
RUJLSVRfV0VCX1NSQ19DQVNUKG1fc291cmNlLmdldCgpKSwgU2VjdXJpdHlPcmlnaW46OmNyZWF0
ZShVUkwoVVJMKCksIHVyaSkpKTsKICAgICAgICAgICAgIH0KQEAgLTI3NjMsMTEgKzI3NDYsNyBA
QCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6Y3JlYXRlR1NUUGxheUJpbihjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJgogICAgIG1fdGV4dEFwcFNpbmtQYWQgPSBhZG9wdEdS
ZWYoZ3N0X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQobV90ZXh0QXBwU2luay5nZXQoKSwgInNpbmsi
KSk7CiAgICAgQVNTRVJUKG1fdGV4dEFwcFNpbmtQYWQpOwogCi0gICAgR1JlZlB0cjxHc3RDYXBz
PiB0ZXh0Q2FwczsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDE0LCAwKSkKLSAg
ICAgICAgdGV4dENhcHMgPSBhZG9wdEdSZWYoZ3N0X2NhcHNfbmV3X2VtcHR5X3NpbXBsZSgiYXBw
bGljYXRpb24veC1zdWJ0aXRsZS12dHQiKSk7Ci0gICAgZWxzZQotICAgICAgICB0ZXh0Q2FwcyA9
IGFkb3B0R1JlZihnc3RfY2Fwc19uZXdfZW1wdHlfc2ltcGxlKCJ0ZXh0L3Z0dCIpKTsKKyAgICBh
dXRvIHRleHRDYXBzID0gYWRvcHRHUmVmKGdzdF9jYXBzX25ld19lbXB0eV9zaW1wbGUoImFwcGxp
Y2F0aW9uL3gtc3VidGl0bGUtdnR0IikpOwogICAgIGdfb2JqZWN0X3NldChtX3RleHRBcHBTaW5r
LmdldCgpLCAiZW1pdC1zaWduYWxzIiwgVFJVRSwgImVuYWJsZS1sYXN0LXNhbXBsZSIsIEZBTFNF
LCAiY2FwcyIsIHRleHRDYXBzLmdldCgpLCBudWxscHRyKTsKICAgICBnX3NpZ25hbF9jb25uZWN0
X3N3YXBwZWQobV90ZXh0QXBwU2luay5nZXQoKSwgIm5ldy1zYW1wbGUiLCBHX0NBTExCQUNLKG5l
d1RleHRTYW1wbGVDYWxsYmFjayksIHRoaXMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyLmgKaW5kZXggN2FjYjY2MTE5Mjk4NGE3Mjk0OGViYzQyY2I1NjJi
YTNhMzA2M2U3NC4uOTExMjhmOTdkZmZiZWFkMzc1NzIxZTc3MWYyZWUyNDU2Zjg0MDAzNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaApAQCAtNTEsMTYg
KzUxLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgX0dzdE1wZWd0c1NlY3Rpb24gR3N0TXBlZ3RzU2VjdGlv
bjsKICNpZiBVU0UoTElCRVBPWFkpCiAvLyBJbmNsdWRlIHRoZSA8ZXBveHkvZ2wuaD4gaGVhZGVy
IGJlZm9yZSA8Z3N0L2dsL2dsLmg+LgogI2luY2x1ZGUgPGVwb3h5L2dsLmg+Ci0KLS8vIFdvcmth
cm91bmQgYnVpbGQgaXNzdWUgd2l0aCBSUGkgdXNlcmxhbmQgR0xFU3YyIGhlYWRlcnMgYW5kIGxp
YmVwb3h5IDxodHRwczovL3dlYmtpdC5vcmcvYi8xODU2Mzk+Ci0jaWYgIUdTVF9DSEVDS19WRVJT
SU9OKDEsIDE0LCAwKQotI2luY2x1ZGUgPGdzdC9nbC9nc3RnbGNvbmZpZy5oPgotI2lmIGRlZmlu
ZWQoR1NUX0dMX0hBVkVfV0lORE9XX0RJU1BNQU5YKSAmJiBHU1RfR0xfSEFWRV9XSU5ET1dfRElT
UE1BTlgKLSNkZWZpbmUgX19nbDJfaF8KLSN1bmRlZiBHU1RfR0xfSEFWRV9HTFNZTkMKLSNkZWZp
bmUgR1NUX0dMX0hBVkVfR0xTWU5DIDEKLSNlbmRpZgotI2VuZGlmIC8vICFHU1RfQ0hFQ0tfVkVS
U0lPTigxLCAxNCwgMCkKICNlbmRpZiAvLyBVU0UoTElCRVBPWFkpCiAKICNkZWZpbmUgR1NUX1VT
RV9VTlNUQUJMRV9BUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9QbGF0Zm9ybURpc3BsYXlHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1BsYXRmb3JtRGlzcGxheUdTdHJlYW1lci5j
cHAKaW5kZXggNjRmMzJhZTAyOGZiZDVmNDBkNDJhNjY5ZjJmZTVlYzc1NGQyYTFjOC4uMDBmOTll
ODM3NGM0ZGExMDE3Y2E0ZDIzMTVkY2ZhNDQ3MmUyOTA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1BsYXRmb3JtRGlzcGxheUdTdHJlYW1l
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1Bs
YXRmb3JtRGlzcGxheUdTdHJlYW1lci5jcHAKQEAgLTk4LDIxICs5OCwxMyBAQCBib29sIFBsYXRm
b3JtRGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0KCkgY29uc3QKICAgICBpZiAoIWNvbnRl
eHRIYW5kbGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGJvb2wgc2hvdWxkQWRvcHRS
ZWYgPSB3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTQsIDApOwotCi0gICAgaWYgKHNob3VsZEFk
b3B0UmVmKQotICAgICAgICBtX2dzdEdMRGlzcGxheSA9IGFkb3B0R1JlZihjcmVhdGVHc3RHTERp
c3BsYXkoKnRoaXMpKTsKLSAgICBlbHNlCi0gICAgICAgIG1fZ3N0R0xEaXNwbGF5ID0gY3JlYXRl
R3N0R0xEaXNwbGF5KCp0aGlzKTsKKyAgICBtX2dzdEdMRGlzcGxheSA9IGFkb3B0R1JlZihjcmVh
dGVHc3RHTERpc3BsYXkoKnRoaXMpKTsKICAgICBpZiAoIW1fZ3N0R0xEaXNwbGF5KQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKICAgICBHc3RHTFBsYXRmb3JtIGdsUGxhdGZvcm0gPSBzaGFyZWRD
b250ZXh0LT5pc0VHTENvbnRleHQoKSA/IEdTVF9HTF9QTEFURk9STV9FR0wgOiBHU1RfR0xfUExB
VEZPUk1fR0xYOwogCi0gICAgaWYgKHNob3VsZEFkb3B0UmVmKQotICAgICAgICBtX2dzdEdMQ29u
dGV4dCA9IGFkb3B0R1JlZihnc3RfZ2xfY29udGV4dF9uZXdfd3JhcHBlZChtX2dzdEdMRGlzcGxh
eS5nZXQoKSwgcmVpbnRlcnByZXRfY2FzdDxndWludHB0cj4oY29udGV4dEhhbmRsZSksIGdsUGxh
dGZvcm0sIGdsQVBJKSk7Ci0gICAgZWxzZQotICAgICAgICBtX2dzdEdMQ29udGV4dCA9IGdzdF9n
bF9jb250ZXh0X25ld193cmFwcGVkKG1fZ3N0R0xEaXNwbGF5LmdldCgpLCByZWludGVycHJldF9j
YXN0PGd1aW50cHRyPihjb250ZXh0SGFuZGxlKSwgZ2xQbGF0Zm9ybSwgZ2xBUEkpOworICAgIG1f
Z3N0R0xDb250ZXh0ID0gYWRvcHRHUmVmKGdzdF9nbF9jb250ZXh0X25ld193cmFwcGVkKG1fZ3N0
R0xEaXNwbGF5LmdldCgpLCByZWludGVycHJldF9jYXN0PGd1aW50cHRyPihjb250ZXh0SGFuZGxl
KSwgZ2xQbGF0Zm9ybSwgZ2xBUEkpKTsKIAogICAgIC8vIEFjdGl2YXRlIGFuZCBmaWxsIHRoZSBH
U3RyZWFtZXIgd3JhcHBlZCBjb250ZXh0IHdpdGggdGhlIFdlYmtpdCdzIHNoYXJlZCBvbmUuCiAg
ICAgYXV0byogcHJldmlvdXNBY3RpdmVDb250ZXh0ID0gR0xDb250ZXh0OjpjdXJyZW50KCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2Vi
S2l0QXVkaW9TaW5rR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9XZWJLaXRBdWRpb1NpbmtHU3RyZWFtZXIuY3BwCmluZGV4IDM1MTI4Mjk4
OTI2MDNjNmU0NDE0MGU3YzgxMmZjNzNhNGNkYmZhNWIuLmUyNTUwNTMyNDg1Zjk2ZDM0YmQ3Njlh
ZmEyZDFkZDY2NTU0NDBjOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9XZWJLaXRBdWRpb1NpbmtHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRBdWRpb1NpbmtHU3Ry
ZWFtZXIuY3BwCkBAIC0yNTYsOSArMjU2LDcgQEAgc3RhdGljIEdzdFN0YXRlQ2hhbmdlUmV0dXJu
IHdlYktpdEF1ZGlvU2lua0NoYW5nZVN0YXRlKEdzdEVsZW1lbnQqIGVsZW1lbnQsIEdzdFMKICAg
ICBhdXRvKiBzaW5rID0gV0VCS0lUX0FVRElPX1NJTksoZWxlbWVudCk7CiAgICAgYXV0byogcHJp
diA9IHNpbmstPnByaXY7CiAKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNCwgMCkKICAgICBH
U1RfREVCVUdfT0JKRUNUKHNpbmssICJIYW5kbGluZyAlcyB0cmFuc2l0aW9uIiwgZ3N0X3N0YXRl
X2NoYW5nZV9nZXRfbmFtZShzdGF0ZUNoYW5nZSkpOwotI2VuZGlmCiAKICAgICBhdXRvJiBtaXhl
ciA9IEdTdHJlYW1lckF1ZGlvTWl4ZXI6OnNpbmdsZXRvbigpOwogICAgIGlmIChwcml2LT5pbnRl
ckF1ZGlvU2luayAmJiBzdGF0ZUNoYW5nZSA9PSBHU1RfU1RBVEVfQ0hBTkdFX05VTExfVE9fUkVB
RFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwCmluZGV4IGYy
ZjBjM2MyOGZhYzRjMDA1MTc0YjQ4YWRmYjAyYTk4NmQyYmMzOTEuLmM4NDRiZTJkZDM3MjdlZjI3
NjRiNzI1NzA2ZDIyMDYyNjdiZWI0OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3Vy
Y2VHU3RyZWFtZXIuY3BwCkBAIC00NjUsMTIgKzQ2NSw4IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJu
IHdlYktpdFdlYlNyY0NyZWF0ZShHc3RQdXNoU3JjKiBwdXNoU3JjLCBHc3RCdWZmZXIqKiBidWZm
ZXIpCiAgICAgLy8gMSkgd2ViS2l0V2ViU3JjU2V0TWVkaWFQbGF5ZXIoKSBpcyBjYWxsZWQgYnkg
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyIGJ5IG1lYW5zIG9mIGhvb2tpbmcgcGxheWJpbidz
CiAgICAgLy8gICAgInNvdXJjZS1zZXR1cCIgZXZlbnQuIFRoaXMgZG9lc24ndCB3b3JrIGZvciBh
ZGRpdGlvbmFsIFdlYktpdFdlYlNyYyBlbGVtZW50cyBjcmVhdGVkIGJ5IGFkYXB0aXZlZGVtdXgu
CiAgICAgLy8KLSAgICAvLyAyKSBBIEdzdENvbnRleHQgcXVlcnkgbWFkZSBoZXJlLiBCZWNhdXNl
IG9mIGEgYnVnLCB0aGlzIG9ubHkgd29ya3MgaW4gR1N0cmVhbWVyID49IDEuMTIuCi0gICAgLy8K
LSAgICAvLyBBcyBhIGNvbXBhdGliaWxpdHkgd29ya2Fyb3VuZCwgdGhlIGh0dHA6IFVSSSBwcm90
b2NvbCBpcyBvbmx5IHJlZ2lzdGVyZWQgZm9yIGdzdD49MS4xMjsgb3RoZXJ3aXNlIHVzaW5nCi0g
ICAgLy8gd2Via2l0K2h0dHA6LCB3aGljaCBpcyB1c2VkIGJ5IE1lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lciBidXQgbm90IGJ5IGFkYXB0aXZlZGVtdXgncyBhZGRpdGlvbmFsIHNvdXJjZQotICAg
IC8vIGVsZW1lbnRzLCB0aGVyZWZvcmUgdXNpbmcgc291cGh0dHBzcmMgaW5zdGVhZCBhbmQgbm90
IHJvdXRpbmcgdHJhZmZpYyB0aHJvdWdoIHRoZSBOZXR3b3JrUHJvY2Vzcy4KLSAgICBpZiAod2Vi
a2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSAmJiAhbWVtYmVycy0+cGxheWVyKSB7CisgICAg
Ly8gMikgQSBHc3RDb250ZXh0IHF1ZXJ5IG1hZGUgaGVyZS4KKyAgICBpZiAoIW1lbWJlcnMtPnBs
YXllcikgewogICAgICAgICBtZW1iZXJzLnJ1blVubG9ja2VkKFtzcmMsIGJhc2VTcmNdKCkgewog
ICAgICAgICAgICAgR1JlZlB0cjxHc3RRdWVyeT4gcXVlcnkgPSBhZG9wdEdSZWYoZ3N0X3F1ZXJ5
X25ld19jb250ZXh0KFdFQktJVF9XRUJfU1JDX1BMQVlFUl9DT05URVhUX1RZUEVfTkFNRSkpOwog
ICAgICAgICAgICAgaWYgKGdzdF9wYWRfcGVlcl9xdWVyeShHU1RfQkFTRV9TUkNfUEFEKGJhc2VT
cmMpLCBxdWVyeS5nZXQoKSkpIHsKQEAgLTg2MywxNSArODU5LDkgQEAgc3RhdGljIEdzdFVSSVR5
cGUgd2ViS2l0V2ViU3JjVXJpR2V0VHlwZShHVHlwZSkKIGNvbnN0IGdjaGFyKiBjb25zdCogd2Vi
S2l0V2ViU3JjR2V0UHJvdG9jb2xzKEdUeXBlKQogewogICAgIHN0YXRpYyBjb25zdCBjaGFyKiBw
cm90b2NvbHNbNF07Ci0gICAgaWYgKHdlYmtpdEdzdENoZWNrVmVyc2lvbigxLCAxMiwgMCkpIHsK
LSAgICAgICAgcHJvdG9jb2xzWzBdID0gImh0dHAiOwotICAgICAgICBwcm90b2NvbHNbMV0gPSAi
aHR0cHMiOwotICAgICAgICBwcm90b2NvbHNbMl0gPSAiYmxvYiI7Ci0gICAgfSBlbHNlIHsKLSAg
ICAgICAgcHJvdG9jb2xzWzBdID0gIndlYmtpdCtodHRwIjsKLSAgICAgICAgcHJvdG9jb2xzWzFd
ID0gIndlYmtpdCtodHRwcyI7Ci0gICAgICAgIHByb3RvY29sc1syXSA9ICJ3ZWJraXQrYmxvYiI7
Ci0gICAgfQorICAgIHByb3RvY29sc1swXSA9ICJodHRwIjsKKyAgICBwcm90b2NvbHNbMV0gPSAi
aHR0cHMiOworICAgIHByb3RvY29sc1syXSA9ICJibG9iIjsKICAgICBwcm90b2NvbHNbM10gPSBu
dWxscHRyOwogICAgIHJldHVybiBwcm90b2NvbHM7CiB9CkBAIC04NzksMTAgKzg2OSw2IEBAIGNv
bnN0IGdjaGFyKiBjb25zdCogd2ViS2l0V2ViU3JjR2V0UHJvdG9jb2xzKEdUeXBlKQogc3RhdGlj
IFVSTCBjb252ZXJ0UGxheWJpblVSSShjb25zdCBjaGFyKiB1cmlTdHJpbmcpCiB7CiAgICAgVVJM
IHVybChVUkwoKSwgdXJpU3RyaW5nKTsKLSAgICBpZiAoIXdlYmtpdEdzdENoZWNrVmVyc2lvbigx
LCAxMiwgMCkpIHsKLSAgICAgICAgQVNTRVJUKHVybC5wcm90b2NvbCgpLnN1YnN0cmluZygwLCA3
KSA9PSAid2Via2l0KyIpOwotICAgICAgICB1cmwuc2V0UHJvdG9jb2wodXJsLnByb3RvY29sKCku
c3Vic3RyaW5nKDcpLnRvU3RyaW5nKCkpOwotICAgIH0KICAgICByZXR1cm4gdXJsOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1l
L0dTdHJlYW1lckVNRVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL2VtZS9HU3RyZWFtZXJFTUVVdGlsaXRpZXMuaAppbmRleCA4OTkzYTNiMDZh
NDVkYzQ5YjEzMGU0NTMzMjA5Njc2NmRkMTc1MjU4Li4yZGVlOTAyM2Y5OWRjNDYzZGQ2NGUwNTFj
ZmFjMGU2MzBiZWM1MTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvZW1lL0dTdHJlYW1lckVNRVV0aWxpdGllcy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0
aWVzLmgKQEAgLTc5LDcgKzc5LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgc3lzdGVt
SWQoKSBjb25zdCB7IHJldHVybiBtX3N5c3RlbUlkOyB9CiAgICAgU3RyaW5nIHBheWxvYWRDb250
YWluZXJUeXBlKCkgY29uc3QKICAgICB7Ci0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTUsIDAp
CisjaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTYsIDApCiAgICAgICAgIGlmIChtX3N5c3RlbUlk
ID09IEdTVF9QUk9URUNUSU9OX1VOU1BFQ0lGSUVEX1NZU1RFTV9JRCkKICAgICAgICAgICAgIHJl
dHVybiAid2VibSJfczsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9y
R1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKaW5kZXgg
YmRmNGFkNDgzODYxMTg0MDcwOTQ5YjNkMGUzYTM3MzkxZDBmZWE0MS4uNjVlMTZjOGIxMTNkMWQ3
ZGQ2ZDExYjA0NjM1OTczZjFhMDYwNDJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlw
dG9yR1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3Bw
CkBAIC0xMjUsNyArMTI1LDcgQEAgc3RhdGljIEdzdENhcHMqIHRyYW5zZm9ybUNhcHMoR3N0QmFz
ZVRyYW5zZm9ybSogYmFzZSwgR3N0UGFkRGlyZWN0aW9uIGRpcmVjdGlvbiwKICAgICAgICAgICAg
IC8vIEdTVF9QUk9URUNUSU9OX1VOU1BFQ0lGSUVEX1NZU1RFTV9JRCB3YXMgYWRkZWQgaW4gdGhl
IEdTdHJlYW1lcgogICAgICAgICAgICAgLy8gZGV2ZWxvcGVtZW50IGdpdCBtYXN0ZXIgd2hpY2gg
d2lsbCBzaGlwIGFzIHZlcnNpb24gMS4xNi4wLgogICAgICAgICAgICAgZ3N0X3N0cnVjdHVyZV9z
ZXRfbmFtZShvdXRnb2luZ1N0cnVjdHVyZS5nZXQoKSwKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigx
LCAxNSwgMCkKKyNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNiwgMCkKICAgICAgICAgICAgICAg
ICAhZ19zdHJjbXAwKGtsYXNzLT5wcm90ZWN0aW9uU3lzdGVtSWQoc2VsZiksIEdTVF9QUk9URUNU
SU9OX1VOU1BFQ0lGSUVEX1NZU1RFTV9JRCkgPyAiYXBwbGljYXRpb24veC13ZWJtLWVuYyIgOgog
I2VuZGlmCiAgICAgICAgICAgICAgICAgImFwcGxpY2F0aW9uL3gtY2VuYyIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1l
ck1lZGlhU3RyZWFtU291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJNZWRpYVN0cmVhbVNvdXJjZS5jcHAKaW5kZXggYmQ4NGIw
NDNkZWVlNjI4ZmY0OWM0MGRhMzJmMzJjYzcwOTU4YzJhNS4uNmUwMTMwN2JkMTRkMDQyYmFiNTdj
ZmJlNGUwMmU1NzM3OGQ0ODdiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lck1lZGlhU3RyZWFtU291cmNlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVy
TWVkaWFTdHJlYW1Tb3VyY2UuY3BwCkBAIC00MDEsOSArNDAxLDcgQEAgc3RhdGljIHZvaWQgd2Vi
a2l0TWVkaWFTdHJlYW1TcmNEaXNwb3NlKEdPYmplY3QqIG9iamVjdCkKIAogc3RhdGljIEdzdFN0
YXRlQ2hhbmdlUmV0dXJuIHdlYmtpdE1lZGlhU3RyZWFtU3JjQ2hhbmdlU3RhdGUoR3N0RWxlbWVu
dCogZWxlbWVudCwgR3N0U3RhdGVDaGFuZ2UgdHJhbnNpdGlvbikKIHsKLSNpZiBHU1RfQ0hFQ0tf
VkVSU0lPTigxLCAxNCwgMCkKICAgICBHU1RfREVCVUdfT0JKRUNUKGVsZW1lbnQsICIlcyIsIGdz
dF9zdGF0ZV9jaGFuZ2VfZ2V0X25hbWUodHJhbnNpdGlvbikpOwotI2VuZGlmCiAKICAgICBpZiAo
dHJhbnNpdGlvbiA9PSBHU1RfU1RBVEVfQ0hBTkdFX1BBVVNFRF9UT19SRUFEWSkKICAgICAgICAg
c3RvcE9ic2VydmluZ1RyYWNrcyhXRUJLSVRfTUVESUFfU1RSRUFNX1NSQyhlbGVtZW50KSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvR1N0cmVhbWVyQ2hlY2tzLmNtYWtlIGIvU291cmNlL2Nt
YWtlL0dTdHJlYW1lckNoZWNrcy5jbWFrZQppbmRleCAwNzBjMTFmZGM2M2QxNTAyZTgxZDA3MzQ4
NTUyMDZmOTEwZGM2ZjI3Li5hNjFiOGE4ODY3NmNiMjIzMDBkYzRhNjMyNDkwNjgxNDY1Y2RjNjBk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvR1N0cmVhbWVyQ2hlY2tzLmNtYWtlCisrKyBiL1Nv
dXJjZS9jbWFrZS9HU3RyZWFtZXJDaGVja3MuY21ha2UKQEAgLTI4LDcgKzI4LDcgQEAgaWYgKEVO
QUJMRV9WSURFTyBPUiBFTkFCTEVfV0VCX0FVRElPKQogICAgICAgICAgICAgICBsaXN0KEFQUEVO
RCBHU1RSRUFNRVJfQ09NUE9ORU5UUyBhdWRpbyBmZnQpCiAgICAgICAgICAgZW5kaWYgKCkKIAot
ICAgICAgICAgIGZpbmRfcGFja2FnZShHU3RyZWFtZXIgMS4xMC4wIFJFUVVJUkVEIENPTVBPTkVO
VFMgJHtHU1RSRUFNRVJfQ09NUE9ORU5UU30pCisgICAgICAgICAgZmluZF9wYWNrYWdlKEdTdHJl
YW1lciAxLjE0LjAgUkVRVUlSRUQgQ09NUE9ORU5UUyAke0dTVFJFQU1FUl9DT01QT05FTlRTfSkK
IAogICAgICAgICAgIGlmIChFTkFCTEVfV0VCX0FVRElPKQogICAgICAgICAgICAgICBpZiAoTk9U
IFBDX0dTVFJFQU1FUl9BVURJT19GT1VORCBPUiBOT1QgUENfR1NUUkVBTUVSX0ZGVF9GT1VORCkK
QEAgLTUyLDE0ICs1Miw3IEBAIGlmIChFTkFCTEVfVklERU8gT1IgRU5BQkxFX1dFQl9BVURJTykK
ICAgICAgIGVuZGlmICgpCiBlbmRpZiAoKQogCi1pZiAoRU5BQkxFX01FRElBX1NPVVJDRSBBTkQg
UENfR1NUUkVBTUVSX1ZFUlNJT04gVkVSU0lPTl9MRVNTICIxLjE0IikKLSAgICBtZXNzYWdlKEZB
VEFMX0VSUk9SICJHU3RyZWFtZXIgMS4xNCBpcyBuZWVkZWQgZm9yIEVOQUJMRV9NRURJQV9TT1VS
Q0UuIikKLWVuZGlmICgpCi0KIGlmIChFTkFCTEVfTUVESUFfU1RSRUFNIEFORCBFTkFCTEVfV0VC
X1JUQykKLSAgICBpZiAoUENfR1NUUkVBTUVSX1ZFUlNJT04gVkVSU0lPTl9MRVNTICIxLjEyIikK
LSAgICAgICAgbWVzc2FnZShGQVRBTF9FUlJPUiAiR1N0cmVhbWVyIDEuMTIgaXMgbmVlZGVkIGZv
ciBFTkFCTEVfV0VCX1JUQy4iKQotICAgIGVuZGlmICgpCiAgICAgU0VUX0FORF9FWFBPU0VfVE9f
QlVJTEQoVVNFX0xJQldFQlJUQyBUUlVFKQogICAgIFNFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKFdF
QlJUQ19XRUJLSVRfQlVJTEQgVFJVRSkKIGVsc2UgKCkKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBi
L0NoYW5nZUxvZwppbmRleCAwYzNkZWYzMGY3YTlkZTcxOGJhMDk0Mjk5MGY0ZDc2OWU2Y2NkMThl
Li5jYjhjZjkyN2I4YmJkOTVjYWFiMTE5OGE0YTc0MDY2NjAyNDQxZGNiIDEwMDY0NAotLS0gYS9D
aGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDEtMDYgIFBo
aWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHU3RyZWFt
ZXJdIEJ1bXAgdmVyc2lvbiByZXF1aXJlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwMzU2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvR1N0cmVhbWVyQ2hlY2tzLmNtYWtl
OiBCdW1wIHJlcXVpcmVkIHZlcnNpb24gdG8gMS4xNC4KKwogMjAyMS0wMS0wNSAgRnVqaWkgSGly
b25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBbV2luQ2Fpcm9dW2N1
cmxdIEVuYWJsZSBDVVJMU1NMT1BUX05BVElWRV9DQSBmbGFnIHRvIHVzZSBzeXN0ZW0ncyBDQSBj
ZXJ0cyBpbnN0ZWFkIG9mIGNhY2VydC5wZW0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417098</attachid>
            <date>2021-01-06 09:33:02 -0800</date>
            <delta_ts>2021-01-08 04:46:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220356-20210106093301.patch</filename>
            <type>text/plain</type>
            <size>23549</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRhNGJhMmE1ZGE2MWRl
ZjJmNjQzNTRkMDExNTE5N2RlNGYxMjJkZS4uNTMxNDRjNDBlYTc1NTc0ZDM4YjY0YmMyMzAxNGY2
YWI4MzRkNDQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAxLTA2ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XSBCdW1wIHZlcnNpb24gcmVxdWlyZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMDM1NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFJlbW92ZSBjb21waWxlLXRpbWUgYW5kIHJ1bnRpbWUgR1N0cmVh
bWVyIHZlcnNpb24gY2hlY2tzIHRoYXQgYXJlCisgICAgICAgIG5vdCBuZWVkZWQgYW55bW9yZSBz
aW5jZSB3ZSBub3cgcmVxdWlyZSBhdCBsZWFzdCBHU3RyZWFtZXIgMS4xNCBhdAorICAgICAgICBj
b25maWd1cmUgdGltZS4KKworICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3VyY2VHU3Ry
ZWFtZXIuY3BwOgorICAgICAgICAoX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZTo6X1dlYktpdFdl
YkF1ZGlvU3JjUHJpdmF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJBdWRpb1NyY1JlbmRlckFuZFB1
c2hGcmFtZXMpOgorICAgICAgICAod2ViS2l0V2ViQXVkaW9TcmNDaGFuZ2VTdGF0ZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9TaW5rR1N0cmVhbWVyLmNw
cDoKKyAgICAgICAgKHJlcXVlc3RHTENvbnRleHQpOgorICAgICAgICAod2ViS2l0R0xWaWRlb1Np
bmtDaGFuZ2VTdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dT
dHJlYW1lckF1ZGlvTWl4ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R1N0cmVhbWVyQXVkaW9N
aXhlcjo6ZW5zdXJlU3RhdGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjp3b3VsZFRhaW50T3JpZ2luIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6c2V0UGxheWJpblVSTCk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmhhbmRsZU1l
c3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpj
cmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0ludGVybmFsUHJv
dG9jb2wpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKFBsYXRm
b3JtRGlzcGxheTo6dHJ5RW5zdXJlR3N0R0xDb250ZXh0IGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0QXVkaW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAg
ICAgICAgKHdlYktpdEF1ZGlvU2lua0NoYW5nZVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KHdlYktpdFdlYlNyY0NyZWF0ZSk6CisgICAgICAgICh3ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMp
OgorICAgICAgICAoY29udmVydFBsYXliaW5VUkkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0aWVzLmg6CisgICAgICAgIChXZWJD
b3JlOjpJbml0RGF0YTo6cGF5bG9hZENvbnRhaW5lclR5cGUgY29uc3QpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5
cHRvckdTdHJlYW1lci5jcHA6CisgICAgICAgICh0cmFuc2Zvcm1DYXBzKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2Uu
Y3BwOgorICAgICAgICAod2Via2l0TWVkaWFTdHJlYW1TcmNDaGFuZ2VTdGF0ZSk6CisKIDIwMjEt
MDEtMDYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVt
b3ZlIHRoZSB1bnVzZWQgUmVuZGVyU3R5bGU6OnNldEhhc1BzZXVkb1N0eWxlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCAyYWY3YWEwZGE3NzY0NWYxOTVjZjc1
Mjk1MGQ1OWJlNmE0NDQ5M2EzLi5kYmRmNDA5MWExZTdhOTNmZmNjNTA2ZjE4NGI5OGFlYjM2NWFk
Nzc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9HU3RyZWFtZXIuY21ha2UK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVhbWVyLmNtYWtlCkBAIC0xNDEsMTcg
KzE0MSwxMyBAQCBpZiAoRU5BQkxFX1ZJREVPKQogICAgIGVuZGlmICgpCiAKICAgICBpZiAoRU5B
QkxFX01FRElBX1NUUkVBTSBPUiBFTkFCTEVfV0VCX1JUQykKLSAgICAgICAgaWYgKFBDX0dTVFJF
QU1FUl9WRVJTSU9OIFZFUlNJT05fTEVTUyAiMS4xMCIpCi0gICAgICAgICAgICBtZXNzYWdlKEZB
VEFMX0VSUk9SICJHU3RyZWFtZXIgMS4xMCBpcyBuZWVkZWQgZm9yIEVOQUJMRV9NRURJQV9TVFJF
QU0gb3IgRU5BQkxFX1dFQl9SVEMiKQotICAgICAgICBlbHNlICgpCi0gICAgICAgICAgICBsaXN0
KEFQUEVORCBXZWJDb3JlX1NZU1RFTV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAgICAgICAgICAg
ICAgJHtHU1RSRUFNRVJfQ09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KKyAgICAgICAgbGlzdChB
UFBFTkQgV2ViQ29yZV9TWVNURU1fSU5DTFVERV9ESVJFQ1RPUklFUworICAgICAgICAgICAgJHtH
U1RSRUFNRVJfQ09ERUNQQVJTRVJTX0lOQ0xVREVfRElSU30KKyAgICAgICAgKQorICAgICAgICBp
ZiAoTk9UIFVTRV9HU1RSRUFNRVJfRlVMTCkKKyAgICAgICAgICAgIGxpc3QoQVBQRU5EIFdlYkNv
cmVfTElCUkFSSUVTCisgICAgICAgICAgICAgICAgJHtHU1RSRUFNRVJfQ09ERUNQQVJTRVJTX0xJ
QlJBUklFU30KICAgICAgICAgICAgICkKLSAgICAgICAgICAgIGlmIChOT1QgVVNFX0dTVFJFQU1F
Ul9GVUxMKQotICAgICAgICAgICAgICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCi0g
ICAgICAgICAgICAgICAgICAgICR7R1NUUkVBTUVSX0NPREVDUEFSU0VSU19MSUJSQVJJRVN9Ci0g
ICAgICAgICAgICAgICAgKQotICAgICAgICAgICAgZW5kaWYgKCkKICAgICAgICAgZW5kaWYgKCkK
ICAgICBlbmRpZiAoKQogZW5kaWYgKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRpb1NvdXJjZUdTdHJlYW1lci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvV2ViS2l0V2ViQXVkaW9Tb3Vy
Y2VHU3RyZWFtZXIuY3BwCmluZGV4IGFlMzQ1ZGIwOGI1N2ZiZDFjYTZlNDQ4ZDc5MTUzZWUwMmU1
MmNkOWMuLmNhZjA0NDNjN2ExYThjNzNmMDI1MWRhZGQ2OGFjYWRhNjkxOTc2MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9XZWJLaXRXZWJBdWRp
b1NvdXJjZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
Z3N0cmVhbWVyL1dlYktpdFdlYkF1ZGlvU291cmNlR1N0cmVhbWVyLmNwcApAQCAtNzgsNyArNzgs
NiBAQCBzdHJ1Y3QgX1dlYktpdFdlYkF1ZGlvU3JjUHJpdmF0ZSB7CiAKICAgICBHUmVmUHRyPEdz
dEJ1ZmZlclBvb2w+IHBvb2w7CiAKLSAgICBib29sIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQ7CiAg
ICAgYm9vbCBoYXNSZW5kZXJlZEF1ZGlibGVGcmFtZSB7IGZhbHNlIH07CiAKICAgICBMb2NrIGRp
c3BhdGNoVG9SZW5kZXJUaHJlYWRMb2NrOwpAQCAtOTMsMTEgKzkyLDYgQEAgc3RydWN0IF9XZWJL
aXRXZWJBdWRpb1NyY1ByaXZhdGUgewogICAgICAgICBzb3VyY2VQYWQgPSB3ZWJraXRHc3RHaG9z
dFBhZEZyb21TdGF0aWNUZW1wbGF0ZSgmc3JjVGVtcGxhdGUsICJzcmMiLCBudWxscHRyKTsKIAog
ICAgICAgICBnX3JlY19tdXRleF9pbml0KCZtdXRleCk7Ci0KLSAgICAgICAgLy8gR0FQIGJ1ZmZl
ciBzdXBwb3J0IGlzIGVuYWJsZWQgb25seSBmb3IgR1N0cmVhbWVyIDEuMTIuNSBiZWNhdXNlIG9m
IGEKLSAgICAgICAgLy8gbWVtb3J5IGxlYWsgdGhhdCB3YXMgZml4ZWQgaW4gdGhhdCB2ZXJzaW9u
LgotICAgICAgICAvLyBodHRwczovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzkzMDY3Ci0gICAgICAgIGVuYWJsZUdhcEJ1ZmZlclN1cHBvcnQgPSB3ZWJraXRHc3RDaGVja1Zl
cnNpb24oMSwgMTIsIDUpOwogICAgIH0KIAogICAgIH5fV2ViS2l0V2ViQXVkaW9TcmNQcml2YXRl
KCkKQEAgLTM3MCw3ICszNjQsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRXZWJBdWRpb1NyY1JlbmRl
ckFuZFB1c2hGcmFtZXMoR1JlZlB0cjxHc3RFbGVtZW50PiYmIGVsZW1lbnQsCiAgICAgICAgIEdT
VF9CVUZGRVJfVElNRVNUQU1QKGJ1ZmZlci5nZXQoKSkgPSBvdXRwdXRUaW1lc3RhbXAucG9zaXRp
b24ubmFub3NlY29uZHMoKTsKICAgICAgICAgR1NUX0JVRkZFUl9EVVJBVElPTihidWZmZXIuZ2V0
KCkpID0gZHVyYXRpb247CiAKLSAgICAgICAgaWYgKHByaXYtPmVuYWJsZUdhcEJ1ZmZlclN1cHBv
cnQgJiYgcHJpdi0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQorICAgICAgICBpZiAocHJp
di0+YnVzLT5jaGFubmVsKGkpLT5pc1NpbGVudCgpKQogICAgICAgICAgICAgR1NUX0JVRkZFUl9G
TEFHX1NFVChidWZmZXIuZ2V0KCksIEdTVF9CVUZGRVJfRkxBR19HQVApOwogCiAgICAgICAgIGlm
IChmYWlsZWQpCkBAIC00MzAsOSArNDI0LDcgQEAgc3RhdGljIEdzdFN0YXRlQ2hhbmdlUmV0dXJu
IHdlYktpdFdlYkF1ZGlvU3JjQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxlbWVudCwgR3MKICAg
ICBhdXRvKiBzcmMgPSBXRUJLSVRfV0VCX0FVRElPX1NSQyhlbGVtZW50KTsKICAgICBhdXRvKiBw
cml2ID0gc3JjLT5wcml2OwogCi0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAgICAg
R1NUX0RFQlVHX09CSkVDVChlbGVtZW50LCAiJXMiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1l
KHRyYW5zaXRpb24pKTsKLSNlbmRpZgogCiAgICAgc3dpdGNoICh0cmFuc2l0aW9uKSB7CiAgICAg
Y2FzZSBHU1RfU1RBVEVfQ0hBTkdFX05VTExfVE9fUkVBRFk6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFtZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9T
aW5rR1N0cmVhbWVyLmNwcAppbmRleCBlZmY3NmJjNzNiODczNjEzNjMxZTFjMWE5YTZkOTc5YzEx
NzM1Y2Y1Li40YjA4OTAxZjM3MmY1NTdjNTM2M2NhNDFhYzU2NzNjZDhiMzNjN2NkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1Np
bmtHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9HTFZpZGVvU2lua0dTdHJlYW1lci5jcHAKQEAgLTEzMywxMSArMTMzLDcgQEAgT3B0
aW9uYWw8R1JlZlB0cjxHc3RDb250ZXh0Pj4gcmVxdWVzdEdMQ29udGV4dChjb25zdCBjaGFyKiBj
b250ZXh0VHlwZSkKICAgICBpZiAoIWdfc3RyY21wMChjb250ZXh0VHlwZSwgImdzdC5nbC5hcHBf
Y29udGV4dCIpKSB7CiAgICAgICAgIEdzdENvbnRleHQqIGFwcENvbnRleHQgPSBnc3RfY29udGV4
dF9uZXcoImdzdC5nbC5hcHBfY29udGV4dCIsIFRSVUUpOwogICAgICAgICBHc3RTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IGdzdF9jb250ZXh0X3dyaXRhYmxlX3N0cnVjdHVyZShhcHBDb250ZXh0KTsK
LSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxMiwgMCkKICAgICAgICAgZ3N0X3N0cnVjdHVyZV9z
ZXQoc3RydWN0dXJlLCAiY29udGV4dCIsIEdTVF9UWVBFX0dMX0NPTlRFWFQsIGdzdEdMQ29udGV4
dCwgbnVsbHB0cik7Ci0jZWxzZQotICAgICAgICBnc3Rfc3RydWN0dXJlX3NldChzdHJ1Y3R1cmUs
ICJjb250ZXh0IiwgR1NUX0dMX1RZUEVfQ09OVEVYVCwgZ3N0R0xDb250ZXh0LCBudWxscHRyKTsK
LSNlbmRpZgogICAgICAgICByZXR1cm4gYWRvcHRHUmVmKGFwcENvbnRleHQpOwogICAgIH0KIApA
QCAtMTU4LDE1ICsxNTQsMTEgQEAgc3RhdGljIGJvb2wgc2V0R0xDb250ZXh0KEdzdEVsZW1lbnQq
IGVsZW1lbnRTaW5rLCBjb25zdCBjaGFyKiBjb250ZXh0VHlwZSkKIAogc3RhdGljIEdzdFN0YXRl
Q2hhbmdlUmV0dXJuIHdlYktpdEdMVmlkZW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxl
bWVudCwgR3N0U3RhdGVDaGFuZ2UgdHJhbnNpdGlvbikKIHsKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lP
TigxLCAxNCwgMCkKICAgICBHU1RfREVCVUdfT0JKRUNUKGVsZW1lbnQsICIlcyIsIGdzdF9zdGF0
ZV9jaGFuZ2VfZ2V0X25hbWUodHJhbnNpdGlvbikpOwotI2VuZGlmCiAKICAgICBzd2l0Y2ggKHRy
YW5zaXRpb24pIHsKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfTlVMTF9UT19SRUFEWToKLSNp
ZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNCwgMCkKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0Vf
UkVBRFlfVE9fUkVBRFk6Ci0jZW5kaWYKICAgICBjYXNlIEdTVF9TVEFURV9DSEFOR0VfUkVBRFlf
VE9fUEFVU0VEOiB7CiAgICAgICAgIGlmICghc2V0R0xDb250ZXh0KGVsZW1lbnQsIEdTVF9HTF9E
SVNQTEFZX0NPTlRFWFRfVFlQRSkpCiAgICAgICAgICAgICByZXR1cm4gR1NUX1NUQVRFX0NIQU5H
RV9GQUlMVVJFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dTdHJlYW1lckF1ZGlvTWl4ZXIuY3BwCmluZGV4IDcwOTA0
MDdjNzU2MGY1NjMwMmZjZDA0Yzg3NmZiNzM2Y2ZkM2FhYzcuLjI4ZDdhMWQ1NjJjMjRlYWM5MTZl
YzViZTc5NzVjMmMwMTViOTM5OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb01peGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1N0cmVhbWVyQXVkaW9NaXhlci5j
cHAKQEAgLTU3LDkgKzU3LDggQEAgR1N0cmVhbWVyQXVkaW9NaXhlcjo6R1N0cmVhbWVyQXVkaW9N
aXhlcigpCiAKIHZvaWQgR1N0cmVhbWVyQXVkaW9NaXhlcjo6ZW5zdXJlU3RhdGUoR3N0U3RhdGVD
aGFuZ2Ugc3RhdGVDaGFuZ2UpCiB7Ci0jaWYgR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCiAg
ICAgR1NUX0RFQlVHX09CSkVDVChtX3BpcGVsaW5lLmdldCgpLCAiSGFuZGxpbmcgJXMgdHJhbnNp
dGlvbiAoJXUgbWl4ZXIgcGFkcykiLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0YXRlQ2hh
bmdlKSwgbV9taXhlci0+bnVtc2lua3BhZHMpOwotI2VuZGlmCisKICAgICBzd2l0Y2ggKHN0YXRl
Q2hhbmdlKSB7CiAgICAgY2FzZSBHU1RfU1RBVEVfQ0hBTkdFX1JFQURZX1RPX1BBVVNFRDoKICAg
ICAgICAgZ3N0X2VsZW1lbnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFURV9Q
QVVTRUQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cAppbmRleCAwZjZjNjZkMjA3NWQ1N2M1Yzc3NDM2YzFkZDA5NGQ0NDFlN2VlNTg3Li42YWE0ZDI4
OWQ4OGYxMmQzNjYwYWJmY2YxN2ZjM2VjMjU1MmExZDNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTUzLDE0ICsxNTMsNiBAQCBzdGF0
aWMgdm9pZCBidXNNZXNzYWdlQ2FsbGJhY2soR3N0QnVzKiwgR3N0TWVzc2FnZSogbWVzc2FnZSwg
TWVkaWFQbGF5ZXJQcml2YXRlRwogICAgIHBsYXllci0+aGFuZGxlTWVzc2FnZShtZXNzYWdlKTsK
IH0KIAotc3RhdGljIHZvaWQgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChVUkwmIHVybCkKLXsK
LSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkKLSAgICAgICAgcmV0dXJu
OwotICAgIGlmICh1cmwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpIHx8IHVybC5wcm90b2NvbElz
QmxvYigpKQotICAgICAgICB1cmwuc2V0UHJvdG9jb2wobWFrZVN0cmluZygid2Via2l0KyIsIHVy
bC5wcm90b2NvbCgpKSk7Ci19Ci0KIHN0YXRpYyB2b2lkIGluaXRpYWxpemVEZWJ1Z0NhdGVnb3J5
KCkKIHsKICAgICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZUZsYWc7CkBAIC04NTIsMjIgKzg0
NCwxNSBAQCBib29sIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6aGFzU2luZ2xlU2VjdXJp
dHlPcmlnaW4oKSBjb25zdAogCiBPcHRpb25hbDxib29sPiBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OndvdWxkVGFpbnRPcmlnaW4oY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbikgY29u
c3QKIHsKLSAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAg
ICBHU1RfVFJBQ0VfT0JKRUNUKHBpcGVsaW5lKCksICJDaGVja2luZyAldSBvcmlnaW5zIiwgbV9v
cmlnaW5zLnNpemUoKSk7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzcG9uc2VPcmlnaW4gOiBtX29y
aWdpbnMpIHsKLSAgICAgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2VzcygqcmVzcG9uc2VPcmln
aW4pKSB7Ci0gICAgICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChwaXBlbGluZSgpLCAiRm91
bmQgcmVhY2hhYmxlIHJlc3BvbnNlIG9yaWdpbiIpOwotICAgICAgICAgICAgICAgIHJldHVybiB0
cnVlOwotICAgICAgICAgICAgfQorICAgIEdTVF9UUkFDRV9PQkpFQ1QocGlwZWxpbmUoKSwgIkNo
ZWNraW5nICV1IG9yaWdpbnMiLCBtX29yaWdpbnMuc2l6ZSgpKTsKKyAgICBmb3IgKGF1dG8mIHJl
c3BvbnNlT3JpZ2luIDogbV9vcmlnaW5zKSB7CisgICAgICAgIGlmICghb3JpZ2luLmNhbkFjY2Vz
cygqcmVzcG9uc2VPcmlnaW4pKSB7CisgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVs
aW5lKCksICJGb3VuZCByZWFjaGFibGUgcmVzcG9uc2Ugb3JpZ2luIik7CisgICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICAgICAgfQotICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5l
KCksICJObyB2YWxpZCByZXNwb25zZSBvcmlnaW4gZm91bmQiKTsKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KLQotICAgIC8vIEdTdHJlYW1lciA8IDEuMTIgaGFzIGFuIGluY29tcGxldGUg
dXJpZG93bmxvYWRlciBpbXBsZW1lbnRhdGlvbiBzbyB3ZQotICAgIC8vIGNhbid0IHVzZSBXZWJL
aXRXZWJTcmMgZm9yIGFkYXB0aXZlIGZyYWdtZW50cyBkb3dubG9hZGluZyBpZiB0aGlzCi0gICAg
Ly8gdmVyc2lvbiBpcyBkZXRlY3RlZC4KLSAgICByZXR1cm4gbV9oYXNUYWludGVkT3JpZ2luOwor
ICAgIEdTVF9ERUJVR19PQkpFQ1QocGlwZWxpbmUoKSwgIk5vIHZhbGlkIHJlc3BvbnNlIG9yaWdp
biBmb3VuZCIpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXI6OnNpbXVsYXRlQXVkaW9JbnRlcnJ1cHRpb24oKQpAQCAtOTg3LDcgKzk3Miw2
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpzZXRQbGF5YmluVVJMKGNvbnN0
IFVSTCYgdXJsKQogICAgICAgICBjbGVhblVSTFN0cmluZyA9IGNsZWFuVVJMU3RyaW5nLnN1YnN0
cmluZygwLCB1cmwucGF0aEVuZCgpKTsKIAogICAgIG1fdXJsID0gVVJMKFVSTCgpLCBjbGVhblVS
TFN0cmluZyk7Ci0gICAgY29udmVydFRvSW50ZXJuYWxQcm90b2NvbChtX3VybCk7CiAgICAgR1NU
X0lORk9fT0JKRUNUKHBpcGVsaW5lKCksICJMb2FkICVzIiwgbV91cmwuc3RyaW5nKCkudXRmOCgp
LmRhdGEoKSk7CiAgICAgZ19vYmplY3Rfc2V0KG1fcGlwZWxpbmUuZ2V0KCksICJ1cmkiLCBtX3Vy
bC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpLCBudWxscHRyKTsKIH0KQEAgLTE5NjgsNyArMTk1Miw2
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdzdE1l
c3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHBpcGVsaW5lKCks
ICJQcm9jZXNzaW5nIEhUVFAgaGVhZGVyczogJSIgR1NUX1BUUl9GT1JNQVQsIHN0cnVjdHVyZSk7
CiAgICAgICAgICAgICBpZiAoY29uc3QgY2hhciogdXJpID0gZ3N0X3N0cnVjdHVyZV9nZXRfc3Ry
aW5nKHN0cnVjdHVyZSwgInVyaSIpKSB7CiAgICAgICAgICAgICAgICAgVVJMIHVybChVUkwoKSwg
dXJpKTsKLSAgICAgICAgICAgICAgICBjb252ZXJ0VG9JbnRlcm5hbFByb3RvY29sKHVybCk7CiAg
ICAgICAgICAgICAgICAgbV9vcmlnaW5zLmFkZChTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHVybCkp
OwogCiAgICAgICAgICAgICAgICAgaWYgKHVybCAhPSBtX3VybCkgewpAQCAtMjAwNywxMSArMTk5
MCw2IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdz
dE1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgIH0gZWxzZSBpZiAoZ3N0X3N0cnVjdHVyZV9oYXNf
bmFtZShzdHJ1Y3R1cmUsICJ3ZWJraXQtbmV0d29yay1zdGF0aXN0aWNzIikpIHsKICAgICAgICAg
ICAgIGlmIChnc3Rfc3RydWN0dXJlX2dldChzdHJ1Y3R1cmUsICJyZWFkLXBvc2l0aW9uIiwgR19U
WVBFX1VJTlQ2NCwgJm1fbmV0d29ya1JlYWRQb3NpdGlvbiwgInNpemUiLCBHX1RZUEVfVUlOVDY0
LCAmbV9odHRwUmVzcG9uc2VUb3RhbFNpemUsIG51bGxwdHIpKQogICAgICAgICAgICAgICAgIEdT
VF9ERUJVR19PQkpFQ1QocGlwZWxpbmUoKSwgIlVwZGF0ZWQgbmV0d29yayByZWFkIHBvc2l0aW9u
ICUiIEdfR1VJTlQ2NF9GT1JNQVQgIiwgc2l6ZTogJSIgR19HVUlOVDY0X0ZPUk1BVCwgbV9uZXR3
b3JrUmVhZFBvc2l0aW9uLCBtX2h0dHBSZXNwb25zZVRvdGFsU2l6ZSk7Ci0gICAgICAgIH0gZWxz
ZSBpZiAoZ3N0X3N0cnVjdHVyZV9oYXNfbmFtZShzdHJ1Y3R1cmUsICJhZGFwdGl2ZS1zdHJlYW1p
bmctc3RhdGlzdGljcyIpKSB7Ci0gICAgICAgICAgICBpZiAoV0VCS0lUX0lTX1dFQl9TUkMobV9z
b3VyY2UuZ2V0KCkpICYmICF3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTIsIDApKSB7Ci0gICAg
ICAgICAgICAgICAgaWYgKGNvbnN0IGNoYXIqIHVyaSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X3N0cmlu
ZyhzdHJ1Y3R1cmUsICJ1cmkiKSkKLSAgICAgICAgICAgICAgICAgICAgbV9oYXNUYWludGVkT3Jp
Z2luID0gd2ViS2l0U3JjV291bGRUYWludE9yaWdpbihXRUJLSVRfV0VCX1NSQ19DQVNUKG1fc291
cmNlLmdldCgpKSwgU2VjdXJpdHlPcmlnaW46OmNyZWF0ZShVUkwoVVJMKCksIHVyaSkpKTsKLSAg
ICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIGlmIChnc3Rfc3RydWN0dXJlX2hhc19uYW1lKHN0
cnVjdHVyZSwgIkdzdENhY2hlRG93bmxvYWRDb21wbGV0ZSIpKSB7CiAgICAgICAgICAgICBHU1Rf
SU5GT19PQkpFQ1QocGlwZWxpbmUoKSwgIlN0cmVhbSBpcyBmdWxseSBkb3dubG9hZGVkLCBzdG9w
cGluZyBtb25pdG9yaW5nIGRvd25sb2FkaW5nIHByb2dyZXNzLiIpOwogICAgICAgICAgICAgbV9m
aWxsVGltZXIuc3RvcCgpOwpAQCAtMjc2MywxMSArMjc0MSw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyOjpjcmVhdGVHU1RQbGF5QmluKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBT
dHJpbmcmCiAgICAgbV90ZXh0QXBwU2lua1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRf
c3RhdGljX3BhZChtX3RleHRBcHBTaW5rLmdldCgpLCAic2luayIpKTsKICAgICBBU1NFUlQobV90
ZXh0QXBwU2lua1BhZCk7CiAKLSAgICBHUmVmUHRyPEdzdENhcHM+IHRleHRDYXBzOwotICAgIGlm
ICh3ZWJraXRHc3RDaGVja1ZlcnNpb24oMSwgMTQsIDApKQotICAgICAgICB0ZXh0Q2FwcyA9IGFk
b3B0R1JlZihnc3RfY2Fwc19uZXdfZW1wdHlfc2ltcGxlKCJhcHBsaWNhdGlvbi94LXN1YnRpdGxl
LXZ0dCIpKTsKLSAgICBlbHNlCi0gICAgICAgIHRleHRDYXBzID0gYWRvcHRHUmVmKGdzdF9jYXBz
X25ld19lbXB0eV9zaW1wbGUoInRleHQvdnR0IikpOworICAgIGF1dG8gdGV4dENhcHMgPSBhZG9w
dEdSZWYoZ3N0X2NhcHNfbmV3X2VtcHR5X3NpbXBsZSgiYXBwbGljYXRpb24veC1zdWJ0aXRsZS12
dHQiKSk7CiAgICAgZ19vYmplY3Rfc2V0KG1fdGV4dEFwcFNpbmsuZ2V0KCksICJlbWl0LXNpZ25h
bHMiLCBUUlVFLCAiZW5hYmxlLWxhc3Qtc2FtcGxlIiwgRkFMU0UsICJjYXBzIiwgdGV4dENhcHMu
Z2V0KCksIG51bGxwdHIpOwogICAgIGdfc2lnbmFsX2Nvbm5lY3Rfc3dhcHBlZChtX3RleHRBcHBT
aW5rLmdldCgpLCAibmV3LXNhbXBsZSIsIEdfQ0FMTEJBQ0sobmV3VGV4dFNhbXBsZUNhbGxiYWNr
KSwgdGhpcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIu
aAppbmRleCA3YWNiNjYxMTkyOTg0YTcyOTQ4ZWJjNDJjYjU2MmJhM2EzMDYzZTc0Li45MTEyOGY5
N2RmZmJlYWQzNzU3MjFlNzcxZjJlZTI0NTZmODQwMDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCkBAIC01MSwxNiArNTEsNiBAQCB0eXBlZGVmIHN0
cnVjdCBfR3N0TXBlZ3RzU2VjdGlvbiBHc3RNcGVndHNTZWN0aW9uOwogI2lmIFVTRShMSUJFUE9Y
WSkKIC8vIEluY2x1ZGUgdGhlIDxlcG94eS9nbC5oPiBoZWFkZXIgYmVmb3JlIDxnc3QvZ2wvZ2wu
aD4uCiAjaW5jbHVkZSA8ZXBveHkvZ2wuaD4KLQotLy8gV29ya2Fyb3VuZCBidWlsZCBpc3N1ZSB3
aXRoIFJQaSB1c2VybGFuZCBHTEVTdjIgaGVhZGVycyBhbmQgbGliZXBveHkgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzE4NTYzOT4KLSNpZiAhR1NUX0NIRUNLX1ZFUlNJT04oMSwgMTQsIDApCi0jaW5j
bHVkZSA8Z3N0L2dsL2dzdGdsY29uZmlnLmg+Ci0jaWYgZGVmaW5lZChHU1RfR0xfSEFWRV9XSU5E
T1dfRElTUE1BTlgpICYmIEdTVF9HTF9IQVZFX1dJTkRPV19ESVNQTUFOWAotI2RlZmluZSBfX2ds
Ml9oXwotI3VuZGVmIEdTVF9HTF9IQVZFX0dMU1lOQwotI2RlZmluZSBHU1RfR0xfSEFWRV9HTFNZ
TkMgMQotI2VuZGlmCi0jZW5kaWYgLy8gIUdTVF9DSEVDS19WRVJTSU9OKDEsIDE0LCAwKQogI2Vu
ZGlmIC8vIFVTRShMSUJFUE9YWSkKIAogI2RlZmluZSBHU1RfVVNFX1VOU1RBQkxFX0FQSQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1BsYXRm
b3JtRGlzcGxheUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcAppbmRleCA2NGYzMmFlMDI4
ZmJkNWY0MGQ0MmE2NjlmMmZlNWVjNzU0ZDJhMWM4Li4wMGY5OWU4Mzc0YzRkYTEwMTdjYTRkMjMx
NWRjZmE0NDcyZTI5MDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvUGxhdGZvcm1EaXNwbGF5R1N0cmVh
bWVyLmNwcApAQCAtOTgsMjEgKzk4LDEzIEBAIGJvb2wgUGxhdGZvcm1EaXNwbGF5Ojp0cnlFbnN1
cmVHc3RHTENvbnRleHQoKSBjb25zdAogICAgIGlmICghY29udGV4dEhhbmRsZSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCi0gICAgYm9vbCBzaG91bGRBZG9wdFJlZiA9IHdlYmtpdEdzdENoZWNr
VmVyc2lvbigxLCAxNCwgMCk7Ci0KLSAgICBpZiAoc2hvdWxkQWRvcHRSZWYpCi0gICAgICAgIG1f
Z3N0R0xEaXNwbGF5ID0gYWRvcHRHUmVmKGNyZWF0ZUdzdEdMRGlzcGxheSgqdGhpcykpOwotICAg
IGVsc2UKLSAgICAgICAgbV9nc3RHTERpc3BsYXkgPSBjcmVhdGVHc3RHTERpc3BsYXkoKnRoaXMp
OworICAgIG1fZ3N0R0xEaXNwbGF5ID0gYWRvcHRHUmVmKGNyZWF0ZUdzdEdMRGlzcGxheSgqdGhp
cykpOwogICAgIGlmICghbV9nc3RHTERpc3BsYXkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAog
ICAgIEdzdEdMUGxhdGZvcm0gZ2xQbGF0Zm9ybSA9IHNoYXJlZENvbnRleHQtPmlzRUdMQ29udGV4
dCgpID8gR1NUX0dMX1BMQVRGT1JNX0VHTCA6IEdTVF9HTF9QTEFURk9STV9HTFg7CiAKLSAgICBp
ZiAoc2hvdWxkQWRvcHRSZWYpCi0gICAgICAgIG1fZ3N0R0xDb250ZXh0ID0gYWRvcHRHUmVmKGdz
dF9nbF9jb250ZXh0X25ld193cmFwcGVkKG1fZ3N0R0xEaXNwbGF5LmdldCgpLCByZWludGVycHJl
dF9jYXN0PGd1aW50cHRyPihjb250ZXh0SGFuZGxlKSwgZ2xQbGF0Zm9ybSwgZ2xBUEkpKTsKLSAg
ICBlbHNlCi0gICAgICAgIG1fZ3N0R0xDb250ZXh0ID0gZ3N0X2dsX2NvbnRleHRfbmV3X3dyYXBw
ZWQobV9nc3RHTERpc3BsYXkuZ2V0KCksIHJlaW50ZXJwcmV0X2Nhc3Q8Z3VpbnRwdHI+KGNvbnRl
eHRIYW5kbGUpLCBnbFBsYXRmb3JtLCBnbEFQSSk7CisgICAgbV9nc3RHTENvbnRleHQgPSBhZG9w
dEdSZWYoZ3N0X2dsX2NvbnRleHRfbmV3X3dyYXBwZWQobV9nc3RHTERpc3BsYXkuZ2V0KCksIHJl
aW50ZXJwcmV0X2Nhc3Q8Z3VpbnRwdHI+KGNvbnRleHRIYW5kbGUpLCBnbFBsYXRmb3JtLCBnbEFQ
SSkpOwogCiAgICAgLy8gQWN0aXZhdGUgYW5kIGZpbGwgdGhlIEdTdHJlYW1lciB3cmFwcGVkIGNv
bnRleHQgd2l0aCB0aGUgV2Via2l0J3Mgc2hhcmVkIG9uZS4KICAgICBhdXRvKiBwcmV2aW91c0Fj
dGl2ZUNvbnRleHQgPSBHTENvbnRleHQ6OmN1cnJlbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRBdWRpb1NpbmtHU3RyZWFt
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktp
dEF1ZGlvU2lua0dTdHJlYW1lci5jcHAKaW5kZXggMzUxMjgyOTg5MjYwM2M2ZTQ0MTQwZTdjODEy
ZmM3M2E0Y2RiZmE1Yi4uZTI1NTA1MzI0ODVmOTZkMzRiZDc2OWFmYTJkMWRkNjY1NTQ0MGM5NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dl
YktpdEF1ZGlvU2lua0dTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdEF1ZGlvU2lua0dTdHJlYW1lci5jcHAKQEAgLTI1Niw5
ICsyNTYsNyBAQCBzdGF0aWMgR3N0U3RhdGVDaGFuZ2VSZXR1cm4gd2ViS2l0QXVkaW9TaW5rQ2hh
bmdlU3RhdGUoR3N0RWxlbWVudCogZWxlbWVudCwgR3N0UwogICAgIGF1dG8qIHNpbmsgPSBXRUJL
SVRfQVVESU9fU0lOSyhlbGVtZW50KTsKICAgICBhdXRvKiBwcml2ID0gc2luay0+cHJpdjsKIAot
I2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE0LCAwKQogICAgIEdTVF9ERUJVR19PQkpFQ1Qoc2lu
aywgIkhhbmRsaW5nICVzIHRyYW5zaXRpb24iLCBnc3Rfc3RhdGVfY2hhbmdlX2dldF9uYW1lKHN0
YXRlQ2hhbmdlKSk7Ci0jZW5kaWYKIAogICAgIGF1dG8mIG1peGVyID0gR1N0cmVhbWVyQXVkaW9N
aXhlcjo6c2luZ2xldG9uKCk7CiAgICAgaWYgKHByaXYtPmludGVyQXVkaW9TaW5rICYmIHN0YXRl
Q2hhbmdlID09IEdTVF9TVEFURV9DSEFOR0VfTlVMTF9UT19SRUFEWSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VH
U3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAKaW5kZXggZjJmMGMzYzI4ZmFjNGMwMDUxNzRi
NDhhZGZiMDJhOTg2ZDJiYzM5MS4uYzg0NGJlMmRkMzcyN2VmMjc2NGI3MjU3MDZkMjIwNjI2N2Jl
YjQ5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAKQEAg
LTQ2NSwxMiArNDY1LDggQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gd2ViS2l0V2ViU3JjQ3JlYXRl
KEdzdFB1c2hTcmMqIHB1c2hTcmMsIEdzdEJ1ZmZlcioqIGJ1ZmZlcikKICAgICAvLyAxKSB3ZWJL
aXRXZWJTcmNTZXRNZWRpYVBsYXllcigpIGlzIGNhbGxlZCBieSBNZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXIgYnkgbWVhbnMgb2YgaG9va2luZyBwbGF5YmluJ3MKICAgICAvLyAgICAic291cmNl
LXNldHVwIiBldmVudC4gVGhpcyBkb2Vzbid0IHdvcmsgZm9yIGFkZGl0aW9uYWwgV2ViS2l0V2Vi
U3JjIGVsZW1lbnRzIGNyZWF0ZWQgYnkgYWRhcHRpdmVkZW11eC4KICAgICAvLwotICAgIC8vIDIp
IEEgR3N0Q29udGV4dCBxdWVyeSBtYWRlIGhlcmUuIEJlY2F1c2Ugb2YgYSBidWcsIHRoaXMgb25s
eSB3b3JrcyBpbiBHU3RyZWFtZXIgPj0gMS4xMi4KLSAgICAvLwotICAgIC8vIEFzIGEgY29tcGF0
aWJpbGl0eSB3b3JrYXJvdW5kLCB0aGUgaHR0cDogVVJJIHByb3RvY29sIGlzIG9ubHkgcmVnaXN0
ZXJlZCBmb3IgZ3N0Pj0xLjEyOyBvdGhlcndpc2UgdXNpbmcKLSAgICAvLyB3ZWJraXQraHR0cDos
IHdoaWNoIGlzIHVzZWQgYnkgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyIGJ1dCBub3QgYnkg
YWRhcHRpdmVkZW11eCdzIGFkZGl0aW9uYWwgc291cmNlCi0gICAgLy8gZWxlbWVudHMsIHRoZXJl
Zm9yZSB1c2luZyBzb3VwaHR0cHNyYyBpbnN0ZWFkIGFuZCBub3Qgcm91dGluZyB0cmFmZmljIHRo
cm91Z2ggdGhlIE5ldHdvcmtQcm9jZXNzLgotICAgIGlmICh3ZWJraXRHc3RDaGVja1ZlcnNpb24o
MSwgMTIsIDApICYmICFtZW1iZXJzLT5wbGF5ZXIpIHsKKyAgICAvLyAyKSBBIEdzdENvbnRleHQg
cXVlcnkgbWFkZSBoZXJlLgorICAgIGlmICghbWVtYmVycy0+cGxheWVyKSB7CiAgICAgICAgIG1l
bWJlcnMucnVuVW5sb2NrZWQoW3NyYywgYmFzZVNyY10oKSB7CiAgICAgICAgICAgICBHUmVmUHRy
PEdzdFF1ZXJ5PiBxdWVyeSA9IGFkb3B0R1JlZihnc3RfcXVlcnlfbmV3X2NvbnRleHQoV0VCS0lU
X1dFQl9TUkNfUExBWUVSX0NPTlRFWFRfVFlQRV9OQU1FKSk7CiAgICAgICAgICAgICBpZiAoZ3N0
X3BhZF9wZWVyX3F1ZXJ5KEdTVF9CQVNFX1NSQ19QQUQoYmFzZVNyYyksIHF1ZXJ5LmdldCgpKSkg
ewpAQCAtODYzLDE1ICs4NTksOSBAQCBzdGF0aWMgR3N0VVJJVHlwZSB3ZWJLaXRXZWJTcmNVcmlH
ZXRUeXBlKEdUeXBlKQogY29uc3QgZ2NoYXIqIGNvbnN0KiB3ZWJLaXRXZWJTcmNHZXRQcm90b2Nv
bHMoR1R5cGUpCiB7CiAgICAgc3RhdGljIGNvbnN0IGNoYXIqIHByb3RvY29sc1s0XTsKLSAgICBp
ZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAgICBwcm90b2NvbHNb
MF0gPSAiaHR0cCI7Ci0gICAgICAgIHByb3RvY29sc1sxXSA9ICJodHRwcyI7Ci0gICAgICAgIHBy
b3RvY29sc1syXSA9ICJibG9iIjsKLSAgICB9IGVsc2UgewotICAgICAgICBwcm90b2NvbHNbMF0g
PSAid2Via2l0K2h0dHAiOwotICAgICAgICBwcm90b2NvbHNbMV0gPSAid2Via2l0K2h0dHBzIjsK
LSAgICAgICAgcHJvdG9jb2xzWzJdID0gIndlYmtpdCtibG9iIjsKLSAgICB9CisgICAgcHJvdG9j
b2xzWzBdID0gImh0dHAiOworICAgIHByb3RvY29sc1sxXSA9ICJodHRwcyI7CisgICAgcHJvdG9j
b2xzWzJdID0gImJsb2IiOwogICAgIHByb3RvY29sc1szXSA9IG51bGxwdHI7CiAgICAgcmV0dXJu
IHByb3RvY29sczsKIH0KQEAgLTg3OSwxMCArODY5LDYgQEAgY29uc3QgZ2NoYXIqIGNvbnN0KiB3
ZWJLaXRXZWJTcmNHZXRQcm90b2NvbHMoR1R5cGUpCiBzdGF0aWMgVVJMIGNvbnZlcnRQbGF5Ymlu
VVJJKGNvbnN0IGNoYXIqIHVyaVN0cmluZykKIHsKICAgICBVUkwgdXJsKFVSTCgpLCB1cmlTdHJp
bmcpOwotICAgIGlmICghd2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDEyLCAwKSkgewotICAgICAg
ICBBU1NFUlQodXJsLnByb3RvY29sKCkuc3Vic3RyaW5nKDAsIDcpID09ICJ3ZWJraXQrIik7Ci0g
ICAgICAgIHVybC5zZXRQcm90b2NvbCh1cmwucHJvdG9jb2woKS5zdWJzdHJpbmcoNykudG9TdHJp
bmcoKSk7Ci0gICAgfQogICAgIHJldHVybiB1cmw7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvR1N0cmVhbWVyRU1FVXRpbGl0
aWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL0dT
dHJlYW1lckVNRVV0aWxpdGllcy5oCmluZGV4IDg5OTNhM2IwNmE0NWRjNDliMTMwZTQ1MzMyMDk2
NzY2ZGQxNzUyNTguLjJkZWU5MDIzZjk5ZGM0NjNkZDY0ZTA1MWNmYWMwZTYzMGJlYzUxMDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUv
R1N0cmVhbWVyRU1FVXRpbGl0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL2VtZS9HU3RyZWFtZXJFTUVVdGlsaXRpZXMuaApAQCAtNzksNyArNzks
NyBAQCBwdWJsaWM6CiAgICAgY29uc3QgU3RyaW5nJiBzeXN0ZW1JZCgpIGNvbnN0IHsgcmV0dXJu
IG1fc3lzdGVtSWQ7IH0KICAgICBTdHJpbmcgcGF5bG9hZENvbnRhaW5lclR5cGUoKSBjb25zdAog
ICAgIHsKLSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTigxLCAxNSwgMCkKKyNpZiBHU1RfQ0hFQ0tfVkVS
U0lPTigxLCAxNiwgMCkKICAgICAgICAgaWYgKG1fc3lzdGVtSWQgPT0gR1NUX1BST1RFQ1RJT05f
VU5TUEVDSUZJRURfU1lTVEVNX0lEKQogICAgICAgICAgICAgcmV0dXJuICJ3ZWJtIl9zOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25F
bmNyeXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcAppbmRleCBiZGY0YWQ0ODM4NjExODQwNzA5
NDliM2QwZTNhMzczOTFkMGZlYTQxLi42NWUxNmM4YjExM2QxZDdkZDZkMTFiMDQ2MzU5NzNmMWEw
NjA0MmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0
Q29tbW9uRW5jcnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKQEAgLTEyNSw3ICsxMjUsNyBA
QCBzdGF0aWMgR3N0Q2FwcyogdHJhbnNmb3JtQ2FwcyhHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBH
c3RQYWREaXJlY3Rpb24gZGlyZWN0aW9uLAogICAgICAgICAgICAgLy8gR1NUX1BST1RFQ1RJT05f
VU5TUEVDSUZJRURfU1lTVEVNX0lEIHdhcyBhZGRlZCBpbiB0aGUgR1N0cmVhbWVyCiAgICAgICAg
ICAgICAvLyBkZXZlbG9wZW1lbnQgZ2l0IG1hc3RlciB3aGljaCB3aWxsIHNoaXAgYXMgdmVyc2lv
biAxLjE2LjAuCiAgICAgICAgICAgICBnc3Rfc3RydWN0dXJlX3NldF9uYW1lKG91dGdvaW5nU3Ry
dWN0dXJlLmdldCgpLAotI2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE1LCAwKQorI2lmIEdTVF9D
SEVDS19WRVJTSU9OKDEsIDE2LCAwKQogICAgICAgICAgICAgICAgICFnX3N0cmNtcDAoa2xhc3Mt
PnByb3RlY3Rpb25TeXN0ZW1JZChzZWxmKSwgR1NUX1BST1RFQ1RJT05fVU5TUEVDSUZJRURfU1lT
VEVNX0lEKSA/ICJhcHBsaWNhdGlvbi94LXdlYm0tZW5jIiA6CiAjZW5kaWYKICAgICAgICAgICAg
ICAgICAiYXBwbGljYXRpb24veC1jZW5jIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJl
YW1lck1lZGlhU3RyZWFtU291cmNlLmNwcAppbmRleCBiZDg0YjA0M2RlZWU2MjhmZjQ5YzQwZGEz
MmYzMmNjNzA5NThjMmE1Li42ZTAxMzA3YmQxNGQwNDJiYWI1N2NmYmU0ZTAyZTU3Mzc4ZDQ4N2I3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFt
ZXIvR1N0cmVhbWVyTWVkaWFTdHJlYW1Tb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJNZWRpYVN0cmVhbVNvdXJjZS5j
cHAKQEAgLTQwMSw5ICs0MDEsNyBAQCBzdGF0aWMgdm9pZCB3ZWJraXRNZWRpYVN0cmVhbVNyY0Rp
c3Bvc2UoR09iamVjdCogb2JqZWN0KQogCiBzdGF0aWMgR3N0U3RhdGVDaGFuZ2VSZXR1cm4gd2Vi
a2l0TWVkaWFTdHJlYW1TcmNDaGFuZ2VTdGF0ZShHc3RFbGVtZW50KiBlbGVtZW50LCBHc3RTdGF0
ZUNoYW5nZSB0cmFuc2l0aW9uKQogewotI2lmIEdTVF9DSEVDS19WRVJTSU9OKDEsIDE0LCAwKQog
ICAgIEdTVF9ERUJVR19PQkpFQ1QoZWxlbWVudCwgIiVzIiwgZ3N0X3N0YXRlX2NoYW5nZV9nZXRf
bmFtZSh0cmFuc2l0aW9uKSk7Ci0jZW5kaWYKIAogICAgIGlmICh0cmFuc2l0aW9uID09IEdTVF9T
VEFURV9DSEFOR0VfUEFVU0VEX1RPX1JFQURZKQogICAgICAgICBzdG9wT2JzZXJ2aW5nVHJhY2tz
KFdFQktJVF9NRURJQV9TVFJFQU1fU1JDKGVsZW1lbnQpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9j
bWFrZS9HU3RyZWFtZXJDaGVja3MuY21ha2UgYi9Tb3VyY2UvY21ha2UvR1N0cmVhbWVyQ2hlY2tz
LmNtYWtlCmluZGV4IDA3MGMxMWZkYzYzZDE1MDJlODFkMDczNDg1NTIwNmY5MTBkYzZmMjcuLmE2
MWI4YTg4Njc2Y2IyMjMwMGRjNGE2MzI0OTA2ODE0NjVjZGM2MGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9jbWFrZS9HU3RyZWFtZXJDaGVja3MuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL0dTdHJlYW1l
ckNoZWNrcy5jbWFrZQpAQCAtMjgsNyArMjgsNyBAQCBpZiAoRU5BQkxFX1ZJREVPIE9SIEVOQUJM
RV9XRUJfQVVESU8pCiAgICAgICAgICAgICAgIGxpc3QoQVBQRU5EIEdTVFJFQU1FUl9DT01QT05F
TlRTIGF1ZGlvIGZmdCkKICAgICAgICAgICBlbmRpZiAoKQogCi0gICAgICAgICAgZmluZF9wYWNr
YWdlKEdTdHJlYW1lciAxLjEwLjAgUkVRVUlSRUQgQ09NUE9ORU5UUyAke0dTVFJFQU1FUl9DT01Q
T05FTlRTfSkKKyAgICAgICAgICBmaW5kX3BhY2thZ2UoR1N0cmVhbWVyIDEuMTQuMCBSRVFVSVJF
RCBDT01QT05FTlRTICR7R1NUUkVBTUVSX0NPTVBPTkVOVFN9KQogCiAgICAgICAgICAgaWYgKEVO
QUJMRV9XRUJfQVVESU8pCiAgICAgICAgICAgICAgIGlmIChOT1QgUENfR1NUUkVBTUVSX0FVRElP
X0ZPVU5EIE9SIE5PVCBQQ19HU1RSRUFNRVJfRkZUX0ZPVU5EKQpAQCAtNTIsMTQgKzUyLDcgQEAg
aWYgKEVOQUJMRV9WSURFTyBPUiBFTkFCTEVfV0VCX0FVRElPKQogICAgICAgZW5kaWYgKCkKIGVu
ZGlmICgpCiAKLWlmIChFTkFCTEVfTUVESUFfU09VUkNFIEFORCBQQ19HU1RSRUFNRVJfVkVSU0lP
TiBWRVJTSU9OX0xFU1MgIjEuMTQiKQotICAgIG1lc3NhZ2UoRkFUQUxfRVJST1IgIkdTdHJlYW1l
ciAxLjE0IGlzIG5lZWRlZCBmb3IgRU5BQkxFX01FRElBX1NPVVJDRS4iKQotZW5kaWYgKCkKLQog
aWYgKEVOQUJMRV9NRURJQV9TVFJFQU0gQU5EIEVOQUJMRV9XRUJfUlRDKQotICAgIGlmIChQQ19H
U1RSRUFNRVJfVkVSU0lPTiBWRVJTSU9OX0xFU1MgIjEuMTIiKQotICAgICAgICBtZXNzYWdlKEZB
VEFMX0VSUk9SICJHU3RyZWFtZXIgMS4xMiBpcyBuZWVkZWQgZm9yIEVOQUJMRV9XRUJfUlRDLiIp
Ci0gICAgZW5kaWYgKCkKICAgICBTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChVU0VfTElCV0VCUlRD
IFRSVUUpCiAgICAgU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoV0VCUlRDX1dFQktJVF9CVUlMRCBU
UlVFKQogZWxzZSAoKQpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDBj
M2RlZjMwZjdhOWRlNzE4YmEwOTQyOTkwZjRkNzY5ZTZjY2QxOGUuLmNiOGNmOTI3YjhiYmQ5NWNh
YWIxMTk4YTRhNzQwNjY2MDI0NDFkY2IgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAyMS0wMS0wNiAgUGhpbGlwcGUgTm9ybWFuZCAgPHBu
b3JtYW5kQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dTdHJlYW1lcl0gQnVtcCB2ZXJzaW9uIHJl
cXVpcmVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjAzNTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFNvdXJjZS9jbWFrZS9HU3RyZWFtZXJDaGVja3MuY21ha2U6IEJ1bXAgcmVxdWlyZWQgdmVy
c2lvbiB0byAxLjE0LgorCiAyMDIxLTAxLTA1ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1
amlpQHNvbnkuY29tPgogCiAgICAgICAgIFtXaW5DYWlyb11bY3VybF0gRW5hYmxlIENVUkxTU0xP
UFRfTkFUSVZFX0NBIGZsYWcgdG8gdXNlIHN5c3RlbSdzIENBIGNlcnRzIGluc3RlYWQgb2YgY2Fj
ZXJ0LnBlbQo=
</data>
<flag name="review"
          id="434736"
          type_id="1"
          status="+"
          setter="calvaris"
    />
          </attachment>
      

    </bug>

</bugzilla>