<?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>213781</bug_id>
          
          <creation_ts>2020-06-30 02:24:19 -0700</creation_ts>
          <short_desc>REGRESSION(r263724): broke internal Apple builds</short_desc>
          <delta_ts>2020-06-30 02:27:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>213048</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>achristensen</cc>
    
    <cc>graouts</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1667512</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-30 02:24:19 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/263724 broke the build:


This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667514</commentid>
    <comment_count>1</comment_count>
      <attachid>403184</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-30 02:24:26 -0700</bug_when>
    <thetext>Created attachment 403184
REVERT of r263724

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the revert will be successful.  This process takes approximately 15 minutes.

If you would like to land the revert faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667515</commentid>
    <comment_count>2</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-06-30 02:25:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/64930358&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667518</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-06-30 02:27:04 -0700</bug_when>
    <thetext>Committed r263736: &lt;https://trac.webkit.org/changeset/263736&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403184.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403184</attachid>
            <date>2020-06-30 02:24:26 -0700</date>
            <delta_ts>2020-06-30 02:27:05 -0700</delta_ts>
            <desc>REVERT of r263724</desc>
            <filename>bug-213781-20200630092425.patch</filename>
            <type>text/plain</type>
            <size>37078</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNzM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDMxMGIxOTI1NTE3MjBmZjU1OTk0OTgx
ZTU3Nzg5OTlkYjRjOGMxNDIuLmEyYzYzZjQ4YTJjNTlmNDdkN2JlNzJmMjQzYjAzNmJhODZjZTQ4
ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjAtMDYtMzAgIENvbW1pdCBRdWV1ZSAgPGNvbW1p
dC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjYz
NzI0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEz
NzgxCisKKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIk1ha2UgX1dL
V2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gU1BJIGZvciBIU1RTIHN0b3JhZ2UgdG8KKyAg
ICAgICAgcmVwbGFjZSBfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaHN0c1N0b3JhZ2VEaXJl
Y3RvcnkiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTMwNDgKKyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI2MzcyNAor
CiAyMDIwLTA2LTI5ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgYW4gYWNjaWRlbnRhbCBjaGFuZ2UgZnJvbSByMjYz
NzIzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggYTRlZTUwZjg2OWQxNmY1ZTU3YmM1OWFhZWQwY2My
M2I1YWZhOWZkYS4uZjc5OWRjMGY3MWM2MjA4ZmQ1ZjllNTJiZTExYzQ2MGIzNDYxMjQ1NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjAtMDYtMzAgIENvbW1pdCBRdWV1
ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJldmVy
dGluZyByMjYzNzI0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjEzNzgxCisKKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAg
Ik1ha2UgX1dLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gU1BJIGZvciBIU1RTIHN0b3Jh
Z2UgdG8KKyAgICAgICAgcmVwbGFjZSBfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaHN0c1N0
b3JhZ2VEaXJlY3RvcnkiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTMwNDgKKyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0
LzI2MzcyNAorCiAyMDIwLTA2LTI5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgTWFrZSBfV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlv
biBTUEkgZm9yIEhTVFMgc3RvcmFnZSB0byByZXBsYWNlIF9XS1Byb2Nlc3NQb29sQ29uZmlndXJh
dGlvbi5oc3RzU3RvcmFnZURpcmVjdG9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBiOTUwNTk5M2RlMjU4YjIxOTYw
NmJiOGQ2ZjgwY2IxYTA2ZTYwODk3Li42NjcyN2ZkYzljMGVlNWZlMzEzNmUzZTE3Y2YyMzEwMTcy
ZTQyZmM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTA2LTMwICBDb21taXQgUXVl
dWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByZXZl
cnRpbmcgcjI2MzcyNC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxMzc4MQorCisKKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAg
ICJNYWtlIF9XS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uIFNQSSBmb3IgSFNUUyBzdG9y
YWdlIHRvCisgICAgICAgIHJlcGxhY2UgX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmhzdHNT
dG9yYWdlRGlyZWN0b3J5IgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjEzMDQ4CisgICAgICAgIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNl
dC8yNjM3MjQKKwogMjAyMC0wNi0zMCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+
CiAKICAgICAgICAgQWRkIFZQOSBXZWJSVEMgY29kZWMgcnVudGltZSBmbGFnCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
SGF2ZS5oCmluZGV4IDFmNGJjNGFkYTRmYmFjZmE5OTI2MTI3NWFiZWFiYTRhMjZiNTAzN2EuLjQ4
YzBkZjMwODk4MGM2NGMxMmRjMWQ4ODBmMTcwODFmZTNkMDhiMTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2
ZS5oCkBAIC00MDcsMTMgKzQwNyw2IEBACiAjZGVmaW5lIEhBVkVfQlJPS0VOX0RPV05MT0FEX1JF
U1VNRV9VTkxJTksgMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTYwMCkgXAotICAgIHx8ICgoUExBVEZPUk0oSU9T
KSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JF
UVVJUkVEID49IDE0MDAwMCkgXAotICAgIHx8IChQTEFURk9STShXQVRDSE9TKSAmJiBfX1dBVENI
X09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDcwMDAwKSBcCi0gICAgfHwgKFBMQVRGT1JNKEFQ
UExFVFYpICYmIF9fVFZfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKQotI2RlZmlu
ZSBIQVZFX0hTVFNfU1RPUkFHRSAxCi0jZW5kaWYKLQogI2lmIChQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNjAwKSB8fCAoUExBVEZPUk0oSU9T
X0ZBTUlMWSkgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKQog
I2RlZmluZSBIQVZFX0NGTkVUV09SS19NRVRSSUNTX0FQSVNfVjQgMQogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaCBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oCmluZGV4IGI4YzQ2N2YyYjUz
MjhhN2Q0NTU3OWQ4NTU3MThhM2M1MGNiYWEzZTMuLjY1NzBmYjk5ODMxYzEwMjZmZWUxZmFjOWRi
NTYxZmM0NWFjY2IxMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2Nm
L0NGTmV0d29ya1NQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NGTmV0
d29ya1NQSS5oCkBAIC00MDcsNyArNDA3LDcgQEAgV1RGX0VYVEVSTl9DX0JFR0lOCiBDRkRhdGFS
ZWYgX0NGTmV0d29ya0NvcHlBVFNDb250ZXh0KHZvaWQpOwogQm9vbGVhbiBfQ0ZOZXR3b3JrU2V0
QVRTQ29udGV4dChDRkRhdGFSZWYpOwogCi0jaWYgUExBVEZPUk0oQ09DT0EpICYmICFIQVZFKEhT
VFNfU1RPUkFHRSkKKyNpZiBQTEFURk9STShDT0NPQSkKIGV4dGVybiBjb25zdCBDRlN0cmluZ1Jl
ZiBfa0NGTmV0d29ya0hTVFNQcmVsb2FkZWQ7CiBDRkRpY3Rpb25hcnlSZWYgX0NGTmV0d29ya0Nv
cHlIU1RTUG9saWNpZXMoQ0ZVUkxTdG9yYWdlU2Vzc2lvblJlZik7CiB2b2lkIF9DRk5ldHdvcmtS
ZXNldEhTVFMoQ0ZVUkxSZWYsIENGVVJMU3RvcmFnZVNlc3Npb25SZWYpOwpAQCAtNDU4LDIyICs0
NTgsOSBAQCBXVEZfRVhURVJOX0NfRU5ECiAtICh2b2lkKV9zZXRNSU1FVHlwZTooTlNTdHJpbmcg
Kil0eXBlOwogQGVuZAogCi0jaWYgSEFWRShIU1RTX1NUT1JBR0UpCi1AaW50ZXJmYWNlIF9OU0hT
VFNTdG9yYWdlIDogTlNPYmplY3QKLS0oaW5zdGFuY2V0eXBlKWluaXRQZXJzaXN0ZW50U3RvcmVX
aXRoVVJMOihudWxsYWJsZSBOU1VSTCopcGF0aDsKLS0oQk9PTClzaG91bGRQcm9tb3RlSG9zdFRv
SFRUUFM6KE5TU3RyaW5nICopaG9zdDsKLS0oTlNBcnJheTxOU1N0cmluZyAqPiAqKW5vblByZWxv
YWRlZEhvc3RzOwotLSh2b2lkKXJlc2V0SFNUU0Zvckhvc3Q6KE5TU3RyaW5nICopaG9zdDsKLS0o
dm9pZClyZXNldEhTVFNIb3N0c1NpbmNlRGF0ZTooTlNEYXRlICopZGF0ZTsKLUBlbmQKLSNlbmRp
ZgotCiBAaW50ZXJmYWNlIE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKCkKIC8vIEZJWE1FOiBS
ZW1vdmUgdGhpcyBvbmNlIHJkYXI6Ly9wcm9ibGVtLzQwNjUwMjQ0IGlzIGluIGEgYnVpbGQuCiBA
cHJvcGVydHkgKGNvcHkpIE5TRGljdGlvbmFyeSAqX3NvY2tldFN0cmVhbVByb3BlcnRpZXM7Ci0j
aWYgSEFWRShIU1RTX1NUT1JBR0UpCi1AcHJvcGVydHkgKG51bGxhYmxlLCByZXRhaW4pIF9OU0hT
VFNTdG9yYWdlICpfaHN0c1N0b3JhZ2U7Ci0jZW5kaWYKIEBlbmQKIAogQGludGVyZmFjZSBOU1VS
TFNlc3Npb25UYXNrICgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Byb2Nlc3MuY3BwCmluZGV4IDlkYWYyMjZhN2VjN2ViYjFiZjI5YTNjMjAwMGEzYWEzZjRkNzg4
YzkuLmYxMjNiMjBhYzZjMjQ1MTBmNDQ5YTAyNGViZGM5ZjUyYjY0ZDJkMzUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCkBAIC0xNTM0LDgg
KzE1MzQsMTAgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZmV0Y2hXZWJzaXRlRGF0YShQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXQKICAgICB9CiAKICNpZiBQTEFURk9S
TShDT0NPQSkgfHwgVVNFKFNPVVApCi0gICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMo
V2Vic2l0ZURhdGFUeXBlOjpIU1RTQ2FjaGUpKQotICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3It
Pm1fd2Vic2l0ZURhdGEuaG9zdE5hbWVzV2l0aEhTVFNDYWNoZSA9IGhvc3ROYW1lc1dpdGhIU1RT
Q2FjaGUoc2Vzc2lvbklEKTsKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJz
aXRlRGF0YVR5cGU6OkhTVFNDYWNoZSkpIHsKKyAgICAgICAgaWYgKGF1dG8qIG5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiA9IHN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgICAgICBnZXRI
b3N0TmFtZXNXaXRoSFNUU0NhY2hlKCpuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNhbGxiYWNrQWdn
cmVnYXRvci0+bV93ZWJzaXRlRGF0YS5ob3N0TmFtZXNXaXRoSFNUU0NhY2hlKTsKKyAgICB9CiAj
ZW5kaWYKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpAQCAtMTU5NCw4ICsxNTk2LDEw
IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmZldGNoV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQg
c2Vzc2lvbklELCBPcHRpb25TZXQ8V2Vic2l0CiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpkZWxldGVX
ZWJzaXRlRGF0YShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0
YVR5cGU+IHdlYnNpdGVEYXRhVHlwZXMsIFdhbGxUaW1lIG1vZGlmaWVkU2luY2UsIENhbGxiYWNr
SUQgY2FsbGJhY2tJRCkKIHsKICNpZiBQTEFURk9STShDT0NPQSkgfHwgVVNFKFNPVVApCi0gICAg
aWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpIU1RTQ2FjaGUp
KQotICAgICAgICBjbGVhckhTVFNDYWNoZShzZXNzaW9uSUQsIG1vZGlmaWVkU2luY2UpOworICAg
IGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SFNUU0NhY2hl
KSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNl
c3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgICAgIGNsZWFySFNUU0NhY2hlKCpuZXR3b3JrU3Rv
cmFnZVNlc3Npb24sIG1vZGlmaWVkU2luY2UpOworICAgIH0KICNlbmRpZgogCiAgICAgaWYgKHdl
YnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpDb29raWVzKSkgewpAQCAt
MTY5Nyw4ICsxNzAxLDEwIEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRh
Rm9yT3JpZ2lucyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvCiAgICAgfQogCiAjaWYg
UExBVEZPUk0oQ09DT0EpIHx8IFVTRShTT1VQKQotICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNv
bnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SFNUU0NhY2hlKSkKLSAgICAgICAgZGVsZXRlSFNUU0Nh
Y2hlRm9ySG9zdE5hbWVzKHNlc3Npb25JRCwgSFNUU0NhY2hlSG9zdE5hbWVzKTsKKyAgICBpZiAo
d2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkhTVFNDYWNoZSkpIHsK
KyAgICAgICAgaWYgKGF1dG8qIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiA9IHN0b3JhZ2VTZXNzaW9u
KHNlc3Npb25JRCkpCisgICAgICAgICAgICBkZWxldGVIU1RTQ2FjaGVGb3JIb3N0TmFtZXMoKm5l
dHdvcmtTdG9yYWdlU2Vzc2lvbiwgSFNUU0NhY2hlSG9zdE5hbWVzKTsKKyAgICB9CiAjZW5kaWYK
IAogI2lmIEhBVkUoQ0ZORVRXT1JLX0FMVEVSTkFUSVZFX1NFUlZJQ0UpCkBAIC0xODY2LDEzICsx
ODcyLDE1IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmRlbGV0ZUFuZFJlc3RyaWN0V2Vic2l0ZURh
dGFGb3JSZWdpc3RyYWJsZURvbWFpbnMoUEFMOjpTZXNzCiAgICAgVmVjdG9yPFN0cmluZz4gaG9z
dG5hbWVzV2l0aEhTVFNUb0RlbGV0ZTsKICNpZiBQTEFURk9STShDT0NPQSkgfHwgVVNFKFNPVVAp
CiAgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpIU1RT
Q2FjaGUpKSB7Ci0gICAgICAgIGhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUgPSB0aGlzLT5ob3N0TmFt
ZXNXaXRoSFNUU0NhY2hlKHNlc3Npb25JRCk7Ci0gICAgICAgIGhvc3RuYW1lc1dpdGhIU1RTVG9E
ZWxldGUgPSBmaWx0ZXJGb3JSZWdpc3RyYWJsZURvbWFpbnMoZG9tYWluc1RvRGVsZXRlQWxsTm9u
Q29va2llV2Vic2l0ZURhdGFGb3IsIGhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUpOworICAgICAgICBp
ZiAoYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNlc3Npb24oc2Vzc2lvbklE
KSkgeworICAgICAgICAgICAgZ2V0SG9zdE5hbWVzV2l0aEhTVFNDYWNoZSgqbmV0d29ya1N0b3Jh
Z2VTZXNzaW9uLCBob3N0TmFtZXNXaXRoSFNUU0NhY2hlKTsKKyAgICAgICAgICAgIGhvc3RuYW1l
c1dpdGhIU1RTVG9EZWxldGUgPSBmaWx0ZXJGb3JSZWdpc3RyYWJsZURvbWFpbnMoZG9tYWluc1Rv
RGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURhdGFGb3IsIGhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUp
OwogCi0gICAgICAgIGZvciAoY29uc3QgYXV0byYgaG9zdCA6IGhvc3RuYW1lc1dpdGhIU1RTVG9E
ZWxldGUpCi0gICAgICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fZG9tYWlucy5hZGQoUmVn
aXN0cmFibGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KGhvc3QpKTsKKyAgICAgICAg
ICAgIGZvciAoY29uc3QgYXV0byYgaG9zdCA6IGhvc3RuYW1lc1dpdGhIU1RTVG9EZWxldGUpCisg
ICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX2RvbWFpbnMuYWRkKFJlZ2lzdHJh
YmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChob3N0KSk7CiAKLSAgICAgICAgZGVs
ZXRlSFNUU0NhY2hlRm9ySG9zdE5hbWVzKHNlc3Npb25JRCwgaG9zdG5hbWVzV2l0aEhTVFNUb0Rl
bGV0ZSk7CisgICAgICAgICAgICBkZWxldGVIU1RTQ2FjaGVGb3JIb3N0TmFtZXMoKm5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiwgaG9zdG5hbWVzV2l0aEhTVFNUb0RlbGV0ZSk7CisgICAgICAgIH0KICAg
ICB9CiAjZW5kaWYKIApAQCAtMjA0OSwxNiArMjA1NywxOCBAQCB2b2lkIE5ldHdvcmtQcm9jZXNz
OjpyZWdpc3RyYWJsZURvbWFpbnNXaXRoV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lv
bklELAogICAgICAgICB9KTsKICAgICB9KSk7CiAgICAgCi0gICAgYXV0byYgd2Vic2l0ZURhdGEg
PSBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fd2Vic2l0ZURhdGE7CisgICAgYXV0byYgd2Vic2l0ZURh
dGFTdG9yZSA9IGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRlRGF0YTsKICAgICAKICAgICBp
ZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkNvb2tpZXMpKSB7
CiAgICAgICAgIGlmIChhdXRvKiBuZXR3b3JrU3RvcmFnZVNlc3Npb24gPSBzdG9yYWdlU2Vzc2lv
bihzZXNzaW9uSUQpKQotICAgICAgICAgICAgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5nZXRIb3N0
bmFtZXNXaXRoQ29va2llcyh3ZWJzaXRlRGF0YS5ob3N0TmFtZXNXaXRoQ29va2llcyk7CisgICAg
ICAgICAgICBuZXR3b3JrU3RvcmFnZVNlc3Npb24tPmdldEhvc3RuYW1lc1dpdGhDb29raWVzKHdl
YnNpdGVEYXRhU3RvcmUuaG9zdE5hbWVzV2l0aENvb2tpZXMpOwogICAgIH0KICAgICAKICNpZiBQ
TEFURk9STShDT0NPQSkgfHwgVVNFKFNPVVApCi0gICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29u
dGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpIU1RTQ2FjaGUpKQotICAgICAgICB3ZWJzaXRlRGF0YS5o
b3N0TmFtZXNXaXRoSFNUU0NhY2hlID0gaG9zdE5hbWVzV2l0aEhTVFNDYWNoZShzZXNzaW9uSUQp
OworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SFNU
U0NhY2hlKSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gc3Rv
cmFnZVNlc3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgICAgIGdldEhvc3ROYW1lc1dpdGhIU1RT
Q2FjaGUoKm5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgd2Vic2l0ZURhdGFTdG9yZS5ob3N0TmFtZXNX
aXRoSFNUU0NhY2hlKTsKKyAgICB9CiAjZW5kaWYKIAogICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVz
LmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6Q3JlZGVudGlhbHMpKSB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmggYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKaW5kZXggMzIzOWM0YjU1MDZlNmE4
YWU0ODQ1ZTMyY2M0MjI2OTljYTAzM2QxNS4uN2ZiOWY3YmExN2U2NGU2NTRhYzdhZWE2ZDUwODAy
MDY0YjExMWExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3MuaApAQCAtMTkzLDkgKzE5Myw5IEBAIHB1YmxpYzoKICAgICBSZXRhaW5QdHI8Q0ZEYXRh
UmVmPiBzb3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSgpIGNvbnN0OwogI2VuZGlmCiAjaWYgUExB
VEZPUk0oQ09DT0EpIHx8IFVTRShTT1VQKQotICAgIEhhc2hTZXQ8U3RyaW5nPiBob3N0TmFtZXNX
aXRoSFNUU0NhY2hlKFBBTDo6U2Vzc2lvbklEKSBjb25zdDsKLSAgICB2b2lkIGRlbGV0ZUhTVFND
YWNoZUZvckhvc3ROYW1lcyhQQUw6OlNlc3Npb25JRCwgY29uc3QgVmVjdG9yPFN0cmluZz4mKTsK
LSAgICB2b2lkIGNsZWFySFNUU0NhY2hlKFBBTDo6U2Vzc2lvbklELCBXYWxsVGltZSBtb2RpZmll
ZFNpbmNlKTsKKyAgICB2b2lkIGdldEhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUoV2ViQ29yZTo6TmV0
d29ya1N0b3JhZ2VTZXNzaW9uJiwgSGFzaFNldDxTdHJpbmc+Jik7CisgICAgdm9pZCBkZWxldGVI
U1RTQ2FjaGVGb3JIb3N0TmFtZXMoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiwgY29u
c3QgVmVjdG9yPFN0cmluZz4mKTsKKyAgICB2b2lkIGNsZWFySFNUU0NhY2hlKFdlYkNvcmU6Ok5l
dHdvcmtTdG9yYWdlU2Vzc2lvbiYsIFdhbGxUaW1lIG1vZGlmaWVkU2luY2UpOwogI2VuZGlmCiAK
ICAgICB2b2lkIGZpbmRQZW5kaW5nRG93bmxvYWRMb2NhdGlvbihOZXR3b3JrRGF0YVRhc2smLCBS
ZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyJiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nl
c3Npb25DcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5jcHAKaW5kZXggZTJlZGJjZWM1MTQw
OTdmMTcwODAyMGRmZTlmZWRmMmVjMWJjOTdjOC4uM2Q4M2NkMjM2YmE5ZGNmNmY0ZmM0ZTE3N2E5
ZDUxNDg2YTlhNjFhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTU3
LDggKzU3LDYgQEAgdm9pZCBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2Rl
KElQQzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyIDw8IGFsdGVybmF0aXZl
U2VydmljZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBlbmNvZGVyIDw8IGh0dHAzRW5h
YmxlZDsKICNlbmRpZgotICAgIGVuY29kZXIgPDwgaHN0c1N0b3JhZ2VEaXJlY3Rvcnk7Ci0gICAg
ZW5jb2RlciA8PCBoc3RzU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICNpZiBVU0Uo
U09VUCkKICAgICBlbmNvZGVyIDw8IGNvb2tpZVBlcnNpc3RlbnRTdG9yYWdlUGF0aDsKICAgICBl
bmNvZGVyIDw8IGNvb2tpZVBlcnNpc3RlbnRTdG9yYWdlVHlwZTsKQEAgLTE1NSwxNiArMTUzLDYg
QEAgT3B0aW9uYWw8TmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnM+IE5ldHdvcmtTZXNz
aW9uQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWMKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsK
ICNlbmRpZgogCi0gICAgT3B0aW9uYWw8U3RyaW5nPiBoc3RzU3RvcmFnZURpcmVjdG9yeTsKLSAg
ICBkZWNvZGVyID4+IGhzdHNTdG9yYWdlRGlyZWN0b3J5OwotICAgIGlmICghaHN0c1N0b3JhZ2VE
aXJlY3RvcnkpCi0gICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci0KLSAgICBPcHRpb25hbDxT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+IGhzdHNTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlOwotICAgIGRlY29kZXIgPj4gaHN0c1N0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7
Ci0gICAgaWYgKCFoc3RzU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkKLSAgICAgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKLSAgICAKICNpZiBVU0UoU09VUCkKICAgICBPcHRpb25hbDxT
dHJpbmc+IGNvb2tpZVBlcnNpc3RlbnRTdG9yYWdlUGF0aDsKICAgICBkZWNvZGVyID4+IGNvb2tp
ZVBlcnNpc3RlbnRTdG9yYWdlUGF0aDsKQEAgLTI4Nyw4ICsyNzUsNiBAQCBPcHRpb25hbDxOZXR3
b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycz4gTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFt
ZXRlcnM6OmRlYwogICAgICAgICAsIFdURk1vdmUoKmFsdGVybmF0aXZlU2VydmljZURpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZSkKICAgICAgICAgLCBXVEZNb3ZlKCpodHRwM0VuYWJsZWQpCiAjZW5k
aWYKLSAgICAgICAgLCBXVEZNb3ZlKCpoc3RzU3RvcmFnZURpcmVjdG9yeSkKLSAgICAgICAgLCBX
VEZNb3ZlKCpoc3RzU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkKICNpZiBVU0UoU09V
UCkKICAgICAgICAgLCBXVEZNb3ZlKCpjb29raWVQZXJzaXN0ZW50U3RvcmFnZVBhdGgpCiAgICAg
ICAgICwgV1RGTW92ZSgqY29va2llUGVyc2lzdGVudFN0b3JhZ2VUeXBlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1l
dGVycy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0
aW9uUGFyYW1ldGVycy5oCmluZGV4IGMzNDI5MzM5NTE5ZWNhN2NjM2VhMzA1YjU2NGE0NzQ2YmZm
NzBkOGQuLmY2Nzc0NTUwYTI0N2I5Yjg2ZDUwMmE4NTU4MjA5MDkxMzFiMGQ3ZjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBh
cmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNz
aW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTY5LDggKzY5LDYgQEAgc3RydWN0IE5ldHdvcmtT
ZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
YWx0ZXJuYXRpdmVTZXJ2aWNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGJvb2wgaHR0
cDNFbmFibGVkIHsgZmFsc2UgfTsKICNlbmRpZgotICAgIFN0cmluZyBoc3RzU3RvcmFnZURpcmVj
dG9yeTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaHN0c1N0b3JhZ2VEaXJlY3RvcnlF
eHRlbnNpb25IYW5kbGU7CiAjaWYgVVNFKFNPVVApCiAgICAgU3RyaW5nIGNvb2tpZVBlcnNpc3Rl
bnRTdG9yYWdlUGF0aDsKICAgICBTb3VwQ29va2llUGVyc2lzdGVudFN0b3JhZ2VUeXBlIGNvb2tp
ZVBlcnNpc3RlbnRTdG9yYWdlVHlwZSB7IFNvdXBDb29raWVQZXJzaXN0ZW50U3RvcmFnZVR5cGU6
OlRleHQgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2Ev
TmV0d29ya1Byb2Nlc3NDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29j
b2EvTmV0d29ya1Byb2Nlc3NDb2NvYS5tbQppbmRleCBkOTQwYjc1ZWI1MzJkMTYyNDY2YWM0ZGI3
MGQ1MGM2Yzc0YTBkNWU1Li5hZmJkOTMwZjRiMzVlMjQ5YTg4YTEwOGY1NTExYzA0ZDdlZWQzNTUx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQ
cm9jZXNzQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrUHJvY2Vzc0NvY29hLm1tCkBAIC0xMzQsNyArMTM0LDYgQEAgUmV0YWluUHRyPENGRGF0
YVJlZj4gTmV0d29ya1Byb2Nlc3M6OnNvdXJjZUFwcGxpY2F0aW9uQXVkaXREYXRhKCkgY29uc3QK
ICNlbmRpZgogfQogCi0jaWYgIUhBVkUoSFNUU19TVE9SQUdFKQogc3RhdGljIHZvaWQgZmlsdGVy
UHJlbG9hZEhTVFNFbnRyeShjb25zdCB2b2lkKiBrZXksIGNvbnN0IHZvaWQqIHZhbHVlLCB2b2lk
KiBjb250ZXh0KQogewogICAgIFJFTEVBU0VfQVNTRVJUKGNvbnRleHQpOwpAQCAtMTUzLDUzICsx
NTIsMjcgQEAgc3RhdGljIHZvaWQgZmlsdGVyUHJlbG9hZEhTVFNFbnRyeShjb25zdCB2b2lkKiBr
ZXksIGNvbnN0IHZvaWQqIHZhbHVlLCB2b2lkKiBjb24KICAgICBpZiAoQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUodmFsLCBfa0NGTmV0d29ya0hTVFNQcmVsb2FkZWQpICE9IGtDRkJvb2xlYW5UcnVlKQog
ICAgICAgICBob3N0bmFtZXMtPmFkZCgoQ0ZTdHJpbmdSZWYpa2V5KTsKIH0KLSNlbmRpZgogCi1I
YXNoU2V0PFN0cmluZz4gTmV0d29ya1Byb2Nlc3M6Omhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUoUEFM
OjpTZXNzaW9uSUQgc2Vzc2lvbklEKSBjb25zdAordm9pZCBOZXR3b3JrUHJvY2Vzczo6Z2V0SG9z
dE5hbWVzV2l0aEhTVFNDYWNoZShXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHNlc3Np
b24sIEhhc2hTZXQ8U3RyaW5nPiYgaG9zdE5hbWVzKQogewotICAgIEhhc2hTZXQ8U3RyaW5nPiBo
b3N0TmFtZXM7Ci0jaWYgSEFWRShIU1RTX1NUT1JBR0UpCi0gICAgaWYgKGF1dG8qIG5ldHdvcmtT
ZXNzaW9uID0gc3RhdGljX2Nhc3Q8TmV0d29ya1Nlc3Npb25Db2NvYSo+KHRoaXMtPm5ldHdvcmtT
ZXNzaW9uKHNlc3Npb25JRCkpKSB7Ci0gICAgICAgIGZvciAoTlNTdHJpbmcgKmhvc3QgaW4gbmV0
d29ya1Nlc3Npb24tPmhzdHNTdG9yYWdlKCkubm9uUHJlbG9hZGVkSG9zdHMpCi0gICAgICAgICAg
ICBob3N0TmFtZXMuYWRkKGhvc3QpOwotICAgIH0KLSNlbHNlCi0gICAgaWYgKGF1dG8qIHNlc3Np
b24gPSBzdG9yYWdlU2Vzc2lvbihzZXNzaW9uSUQpKSB7Ci0gICAgICAgIGlmIChhdXRvIEhTVFNQ
b2xpY2llcyA9IGFkb3B0Q0YoX0NGTmV0d29ya0NvcHlIU1RTUG9saWNpZXMoc2Vzc2lvbi0+cGxh
dGZvcm1TZXNzaW9uKCkpKSkKLSAgICAgICAgICAgIENGRGljdGlvbmFyeUFwcGx5RnVuY3Rpb24o
SFNUU1BvbGljaWVzLmdldCgpLCBmaWx0ZXJQcmVsb2FkSFNUU0VudHJ5LCAmaG9zdE5hbWVzKTsK
LSAgICB9Ci0jZW5kaWYKLSAgICByZXR1cm4gaG9zdE5hbWVzOworICAgIGlmIChhdXRvIEhTVFNQ
b2xpY2llcyA9IGFkb3B0Q0YoX0NGTmV0d29ya0NvcHlIU1RTUG9saWNpZXMoc2Vzc2lvbi5wbGF0
Zm9ybVNlc3Npb24oKSkpKQorICAgICAgICBDRkRpY3Rpb25hcnlBcHBseUZ1bmN0aW9uKEhTVFNQ
b2xpY2llcy5nZXQoKSwgZmlsdGVyUHJlbG9hZEhTVFNFbnRyeSwgJmhvc3ROYW1lcyk7CiB9CiAK
LXZvaWQgTmV0d29ya1Byb2Nlc3M6OmRlbGV0ZUhTVFNDYWNoZUZvckhvc3ROYW1lcyhQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBob3N0TmFtZXMpCit2b2lk
IE5ldHdvcmtQcm9jZXNzOjpkZWxldGVIU1RTQ2FjaGVGb3JIb3N0TmFtZXMoV2ViQ29yZTo6TmV0
d29ya1N0b3JhZ2VTZXNzaW9uJiBzZXNzaW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgaG9zdE5h
bWVzKQogewotI2lmIEhBVkUoSFNUU19TVE9SQUdFKQotICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vz
c2lvbiA9IHN0YXRpY19jYXN0PE5ldHdvcmtTZXNzaW9uQ29jb2EqPih0aGlzLT5uZXR3b3JrU2Vz
c2lvbihzZXNzaW9uSUQpKSkgewotICAgICAgICBmb3IgKGF1dG8mIGhvc3ROYW1lIDogaG9zdE5h
bWVzKQotICAgICAgICAgICAgW25ldHdvcmtTZXNzaW9uLT5oc3RzU3RvcmFnZSgpIHJlc2V0SFNU
U0Zvckhvc3Q6aG9zdE5hbWVdOworICAgIGZvciAoYXV0byYgaG9zdE5hbWUgOiBob3N0TmFtZXMp
IHsKKyAgICAgICAgYXV0byB1cmwgPSBVUkwoeyB9LCBtYWtlU3RyaW5nKCJodHRwczovLyIsIGhv
c3ROYW1lKSk7CisgICAgICAgIF9DRk5ldHdvcmtSZXNldEhTVFModXJsLmNyZWF0ZUNGVVJMKCku
Z2V0KCksIHNlc3Npb24ucGxhdGZvcm1TZXNzaW9uKCkpOwogICAgIH0KLSNlbHNlCi0gICAgaWYg
KGF1dG8qIHNlc3Npb24gPSBzdG9yYWdlU2Vzc2lvbihzZXNzaW9uSUQpKSB7Ci0gICAgICAgIGZv
ciAoYXV0byYgaG9zdE5hbWUgOiBob3N0TmFtZXMpIHsKLSAgICAgICAgICAgIGF1dG8gdXJsID0g
VVJMKHsgfSwgbWFrZVN0cmluZygiaHR0cHM6Ly8iLCBob3N0TmFtZSkpOwotICAgICAgICAgICAg
X0NGTmV0d29ya1Jlc2V0SFNUUyh1cmwuY3JlYXRlQ0ZVUkwoKS5nZXQoKSwgc2Vzc2lvbi0+cGxh
dGZvcm1TZXNzaW9uKCkpOwotICAgICAgICB9Ci0gICAgfQotI2VuZGlmCiB9CiAKLXZvaWQgTmV0
d29ya1Byb2Nlc3M6OmNsZWFySFNUU0NhY2hlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgV2Fs
bFRpbWUgbW9kaWZpZWRTaW5jZSkKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmNsZWFySFNUU0NhY2hl
KFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc2Vzc2lvbiwgV2FsbFRpbWUgbW9kaWZp
ZWRTaW5jZSkKIHsKICAgICBOU1RpbWVJbnRlcnZhbCB0aW1lSW50ZXJ2YWwgPSBtb2RpZmllZFNp
bmNlLnNlY29uZHNTaW5jZUVwb2NoKCkuc2Vjb25kcygpOwogICAgIE5TRGF0ZSAqZGF0ZSA9IFtO
U0RhdGUgZGF0ZVdpdGhUaW1lSW50ZXJ2YWxTaW5jZTE5NzA6dGltZUludGVydmFsXTsKLSNpZiBI
QVZFKEhTVFNfU1RPUkFHRSkKLSAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSBzdGF0aWNf
Y2FzdDxOZXR3b3JrU2Vzc2lvbkNvY29hKj4odGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklE
KSkpCi0gICAgICAgIFtuZXR3b3JrU2Vzc2lvbi0+aHN0c1N0b3JhZ2UoKSByZXNldEhTVFNIb3N0
c1NpbmNlRGF0ZTpkYXRlXTsKLSNlbHNlCi0gICAgaWYgKGF1dG8qIHNlc3Npb24gPSBzdG9yYWdl
U2Vzc2lvbihzZXNzaW9uSUQpKQotICAgICAgICBfQ0ZOZXR3b3JrUmVzZXRIU1RTSG9zdHNTaW5j
ZURhdGUoc2Vzc2lvbi0+cGxhdGZvcm1TZXNzaW9uKCksIChfX2JyaWRnZSBDRkRhdGVSZWYpZGF0
ZSk7Ci0jZW5kaWYKKworICAgIF9DRk5ldHdvcmtSZXNldEhTVFNIb3N0c1NpbmNlRGF0ZShzZXNz
aW9uLnBsYXRmb3JtU2Vzc2lvbigpLCAoX19icmlkZ2UgQ0ZEYXRlUmVmKWRhdGUpOwogfQogCiB2
b2lkIE5ldHdvcmtQcm9jZXNzOjpjbGVhckRpc2tDYWNoZShXYWxsVGltZSBtb2RpZmllZFNpbmNl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29j
b2EuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25D
b2NvYS5oCmluZGV4IGFhMDM5MjFhZTljNGEwNTNkN2M5MzVjMjg0YTA5MTIyNDliYmY4NGMuLjlj
YThmYTZlYTg5ZDkzODEyZmEwODA0N2E3ZjM0YjljZGUyZjY5N2QgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5o
CkBAIC0zMyw3ICszMyw2IEBAIE9CSkNfQ0xBU1MgTlNVUkxTZXNzaW9uRG93bmxvYWRUYXNrOwog
T0JKQ19DTEFTUyBOU09wZXJhdGlvblF1ZXVlOwogT0JKQ19DTEFTUyBXS05ldHdvcmtTZXNzaW9u
RGVsZWdhdGU7CiBPQkpDX0NMQVNTIFdLTmV0d29ya1Nlc3Npb25XZWJTb2NrZXREZWxlZ2F0ZTsK
LU9CSkNfQ0xBU1MgX05TSFNUU1N0b3JhZ2U7CiAKICNpbmNsdWRlICJEb3dubG9hZElELmgiCiAj
aW5jbHVkZSAiTmV0d29ya0RhdGFUYXNrQ29jb2EuaCIKQEAgLTEwNSw3ICsxMDQsNiBAQCBwdWJs
aWM6CiAgICAgdm9pZCB0YXNrU2VydmVyQ29ubmVjdGlvblN1Y2NlZWRlZChOZXR3b3JrRGF0YVRh
c2tDb2NvYTo6VGFza0lkZW50aWZpZXIpOwogICAgIHZvaWQgdGFza0ZhaWxlZChOZXR3b3JrRGF0
YVRhc2tDb2NvYTo6VGFza0lkZW50aWZpZXIpOwogICAgIE5TVVJMQ3JlZGVudGlhbCAqc3VjY2Vz
c2Z1bENsaWVudENlcnRpZmljYXRlRm9ySG9zdChjb25zdCBTdHJpbmcmIGhvc3QsIHVpbnQxNl90
IHBvcnQpIGNvbnN0OwotICAgIF9OU0hTVFNTdG9yYWdlICpoc3RzU3RvcmFnZSgpIGNvbnN0Owog
CiBwcml2YXRlOgogICAgIHZvaWQgaW52YWxpZGF0ZUFuZENhbmNlbCgpIG92ZXJyaWRlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lv
bkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vz
c2lvbkNvY29hLm1tCmluZGV4IDc1YTA0NWEzZGI2ODkwMDkzNDg2ODlhMDY1Nzk1YTc0ZjNlYzQz
YjQuLjc4ZmQyZDIzNWU4YzY4YjUxZDBlMDJlODVmODkxN2M0MjU5NWE1YTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9u
Q29jb2EubW0KQEAgLTY4LDEwICs2OCw2IEBACiAKICNpbXBvcnQgIkRldmljZU1hbmFnZW1lbnRT
b2Z0TGluay5oIgogCi0vLyBGSVhNRTogUmVtb3ZlIHRoaXMgc29mdCBsaW5rIG9uY2UgcmRhcjov
L3Byb2JsZW0vNTAxMDk2MzEgaXMgaW4gYSBidWlsZCBhbmQgYm90cyBhcmUgdXBkYXRlZC4KLVNP
RlRfTElOS19GUkFNRVdPUksoQ0ZOZXR3b3JrKQotU09GVF9MSU5LX0NMQVNTX09QVElPTkFMKENG
TmV0d29yaywgX05TSFNUU1N0b3JhZ2UpCi0KIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIENG
U3RyaW5nUmVmIGNvbnN0IFdlYktpdDJIVFRQUHJveHlEZWZhdWx0c0tleSA9IHN0YXRpY19jYXN0
PENGU3RyaW5nUmVmPihAIldlYktpdDJIVFRQUHJveHkiKTsKQEAgLTEwOTYsMTcgKzEwOTIsNiBA
QCBOU1VSTENyZWRlbnRpYWwgKk5ldHdvcmtTZXNzaW9uQ29jb2E6OnN1Y2Nlc3NmdWxDbGllbnRD
ZXJ0aWZpY2F0ZUZvckhvc3QoY29uc3QgUwogICAgIHJldHVybiBtX3N1Y2Nlc3NmdWxDbGllbnRD
ZXJ0aWZpY2F0ZXMuZ2V0KGtleSkuZ2V0KCk7CiB9CiAKLV9OU0hTVFNTdG9yYWdlICpOZXR3b3Jr
U2Vzc2lvbkNvY29hOjpoc3RzU3RvcmFnZSgpIGNvbnN0Ci17Ci0jaWYgSEFWRShIU1RTX1NUT1JB
R0UpCi0gICAgTlNVUkxTZXNzaW9uQ29uZmlndXJhdGlvbiAqY29uZmlndXJhdGlvbiA9IG1fc2Vz
c2lvbldpdGhDcmVkZW50aWFsU3RvcmFnZS5zZXNzaW9uLmdldCgpLmNvbmZpZ3VyYXRpb247Ci0g
ICAgLy8gRklYTUU6IFJlbW92ZSB0aGlzIHJlc3BvbmRzVG9TZWxlY3RvciBjaGVjayBvbmNlIHJk
YXI6Ly9wcm9ibGVtLzUwMTA5NjMxIGlzIGluIGEgYnVpbGQgYW5kIGJvdHMgYXJlIHVwZGF0ZWQu
Ci0gICAgaWYgKFtjb25maWd1cmF0aW9uIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoX2hz
dHNTdG9yYWdlKV0pCi0gICAgICAgIHJldHVybiBtX3Nlc3Npb25XaXRoQ3JlZGVudGlhbFN0b3Jh
Z2Uuc2Vzc2lvbi5nZXQoKS5jb25maWd1cmF0aW9uLl9oc3RzU3RvcmFnZTsKLSNlbmRpZgotICAg
IHJldHVybiBuaWw7Ci19Ci0KIGNvbnN0IFN0cmluZyYgTmV0d29ya1Nlc3Npb25Db2NvYTo6Ym91
bmRJbnRlcmZhY2VJZGVudGlmaWVyKCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9ib3VuZEludGVy
ZmFjZUlkZW50aWZpZXI7CkBAIC0xMTg3LDE1ICsxMTcyLDYgQEAgTmV0d29ya1Nlc3Npb25Db2Nv
YTo6TmV0d29ya1Nlc3Npb25Db2NvYShOZXR3b3JrUHJvY2VzcyYgbmV0d29ya1Byb2Nlc3MsIE5l
dHdvcmsKIAogICAgIE5TVVJMU2Vzc2lvbkNvbmZpZ3VyYXRpb24gKmNvbmZpZ3VyYXRpb24gPSBj
b25maWd1cmF0aW9uRm9yU2Vzc2lvbklEKG1fc2Vzc2lvbklEKTsKIAotI2lmIEhBVkUoSFNUU19T
VE9SQUdFKQotICAgIGlmICghIXBhcmFtZXRlcnMuaHN0c1N0b3JhZ2VEaXJlY3RvcnkgJiYgIW1f
c2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpIHsKLSAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29u
c3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuaHN0c1N0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25I
YW5kbGUpOwotICAgICAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgcmVzcG9uZHNUb1NlbGVjdG9y
IGNoZWNrIG9uY2UgcmRhcjovL3Byb2JsZW0vNTAxMDk2MzEgaXMgaW4gYSBidWlsZCBhbmQgYm90
cyBhcmUgdXBkYXRlZC4KLSAgICAgICAgaWYgKFtjb25maWd1cmF0aW9uIHJlc3BvbmRzVG9TZWxl
Y3RvcjpAc2VsZWN0b3IoX2hzdHNTdG9yYWdlKV0pCi0gICAgICAgICAgICBjb25maWd1cmF0aW9u
Ll9oc3RzU3RvcmFnZSA9IFtbYWxsb2NfTlNIU1RTU3RvcmFnZUluc3RhbmNlKCkgaW5pdFBlcnNp
c3RlbnRTdG9yZVdpdGhVUkw6W05TVVJMIGZpbGVVUkxXaXRoUGF0aDpwYXJhbWV0ZXJzLmhzdHNT
dG9yYWdlRGlyZWN0b3J5IGlzRGlyZWN0b3J5OllFU11dIGF1dG9yZWxlYXNlXTsKLSAgICB9Ci0j
ZW5kaWYKLQogI2lmIEhBVkUoQVBQX1NTTykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAgICAg
Y29uZmlndXJhdGlvbi5fcHJldmVudHNBcHBTU08gPSB0cnVlOwogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya1Byb2Nlc3NTb3VwLmNw
cCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc291cC9OZXR3b3JrUHJvY2Vzc1NvdXAu
Y3BwCmluZGV4IGJhZjliYjkyMjBmMmY0MjJhN2JiYTI0MjVjZmQzM2RkNjA3YjA2YzMuLjYwZmE1
NTZiOWU0ZjQ4Nzk0ZDVhYTJmMDU2OWZiYmRlZTY1MzI5OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc291cC9OZXR3b3JrUHJvY2Vzc1NvdXAuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc291cC9OZXR3b3JrUHJvY2Vzc1NvdXAuY3BwCkBA
IC05NCwyMyArOTQsMjEgQEAgc3RhdGljIENTdHJpbmcgYnVpbGRBY2NlcHRMYW5ndWFnZXMoY29u
c3QgVmVjdG9yPFN0cmluZz4mIGxhbmd1YWdlcykKICAgICByZXR1cm4gYnVpbGRlci50b1N0cmlu
ZygpLnV0ZjgoKTsKIH0KIAotSGFzaFNldDxTdHJpbmc+IE5ldHdvcmtQcm9jZXNzOjpob3N0TmFt
ZXNXaXRoSFNUU0NhY2hlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkgY29uc3QKK3ZvaWQgTmV0
d29ya1Byb2Nlc3M6OmdldEhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUoV2ViQ29yZTo6TmV0d29ya1N0
b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbiwgSGFzaFNldDxTdHJpbmc+JiBob3N0TmFtZXMp
CiB7Ci0gICAgSGFzaFNldDxTdHJpbmc+IGhvc3ROYW1lczsKLSAgICBjb25zdCBhdXRvKiBzZXNz
aW9uID0gc3RhdGljX2Nhc3Q8TmV0d29ya1Nlc3Npb25Tb3VwKj4obmV0d29ya1Nlc3Npb24oc2Vz
c2lvbklEKSk7CisgICAgY29uc3QgYXV0byogc2Vzc2lvbiA9IHN0YXRpY19jYXN0PE5ldHdvcmtT
ZXNzaW9uU291cCo+KG5ldHdvcmtTZXNzaW9uKHN0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgpKSk7
CiAgICAgc2Vzc2lvbi0+c291cE5ldHdvcmtTZXNzaW9uKCkuZ2V0SG9zdE5hbWVzV2l0aEhTVFND
YWNoZShob3N0TmFtZXMpOwotICAgIHJldHVybiBob3N0TmFtZXM7CiB9CiAKLXZvaWQgTmV0d29y
a1Byb2Nlc3M6OmRlbGV0ZUhTVFNDYWNoZUZvckhvc3ROYW1lcyhQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBob3N0TmFtZXMpCit2b2lkIE5ldHdvcmtQcm9j
ZXNzOjpkZWxldGVIU1RTQ2FjaGVGb3JIb3N0TmFtZXMoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VT
ZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIGhvc3ROYW1lcykK
IHsKLSAgICBjb25zdCBhdXRvKiBzZXNzaW9uID0gc3RhdGljX2Nhc3Q8TmV0d29ya1Nlc3Npb25T
b3VwKj4obmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSk7CisgICAgY29uc3QgYXV0byogc2Vzc2lv
biA9IHN0YXRpY19jYXN0PE5ldHdvcmtTZXNzaW9uU291cCo+KG5ldHdvcmtTZXNzaW9uKHN0b3Jh
Z2VTZXNzaW9uLnNlc3Npb25JRCgpKSk7CiAgICAgc2Vzc2lvbi0+c291cE5ldHdvcmtTZXNzaW9u
KCkuZGVsZXRlSFNUU0NhY2hlRm9ySG9zdE5hbWVzKGhvc3ROYW1lcyk7CiB9CiAKLXZvaWQgTmV0
d29ya1Byb2Nlc3M6OmNsZWFySFNUU0NhY2hlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgV2Fs
bFRpbWUgbW9kaWZpZWRTaW5jZSkKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmNsZWFySFNUU0NhY2hl
KFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24sIFdhbGxUaW1l
IG1vZGlmaWVkU2luY2UpCiB7Ci0gICAgY29uc3QgYXV0byogc2Vzc2lvbiA9IHN0YXRpY19jYXN0
PE5ldHdvcmtTZXNzaW9uU291cCo+KG5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpOworICAgIGNv
bnN0IGF1dG8qIHNlc3Npb24gPSBzdGF0aWNfY2FzdDxOZXR3b3JrU2Vzc2lvblNvdXAqPihuZXR3
b3JrU2Vzc2lvbihzdG9yYWdlU2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogICAgIHNlc3Npb24tPnNv
dXBOZXR3b3JrU2Vzc2lvbigpLmNsZWFySFNUU0NhY2hlKG1vZGlmaWVkU2luY2UpOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9tYWMvV0tDb250ZXh0UHJp
dmF0ZU1hYy5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvbWFjL1dLQ29udGV4dFBy
aXZhdGVNYWMuaAppbmRleCBlOThmNWZkZjJlMDZlYTgzZTk5ZTRhNDZjZDM1MDMzY2MxODIwZDgx
Li40Njg2ZTNiZjFjOGMyYTA4Y2ZjNmUxNTRlMDY1MTkwMmZiNDAyZjM5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9tYWMvV0tDb250ZXh0UHJpdmF0ZU1hYy5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL21hYy9XS0NvbnRleHRQcml2YXRlTWFj
LmgKQEAgLTI3LDcgKzI3LDYgQEAKICNkZWZpbmUgV0tDb250ZXh0UHJpdmF0ZU1hY19oCiAKICNp
bmNsdWRlIDxXZWJLaXQvV0tCYXNlLmg+Ci0jaW5jbHVkZSA8V2ViS2l0L1dLRGVwcmVjYXRlZC5o
PgogI2luY2x1ZGUgPFdlYktpdC9XS1BsdWdpbkxvYWRQb2xpY3kuaD4KIAogI2lmZGVmIF9fY3Bs
dXNwbHVzCkBAIC00NCw4ICs0MywxMCBAQCBXS19FWFBPUlQgV0tEaWN0aW9uYXJ5UmVmIFdLQ29u
dGV4dENvcHlQbHVnSW5JbmZvRm9yQnVuZGxlSWRlbnRpZmllcihXS0NvbnRleHRSZQogdHlwZWRl
ZiB2b2lkICheV0tDb250ZXh0R2V0SW5mb0Zvckluc3RhbGxlZFBsdWdJbnNCbG9jaykoV0tBcnJh
eVJlZiwgV0tFcnJvclJlZik7CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRHZXRJbmZvRm9ySW5z
dGFsbGVkUGx1Z0lucyhXS0NvbnRleHRSZWYgY29udGV4dCwgV0tDb250ZXh0R2V0SW5mb0Zvcklu
c3RhbGxlZFBsdWdJbnNCbG9jayBibG9jayk7CiAKLVdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFJl
c2V0SFNUU0hvc3RzKFdLQ29udGV4dFJlZiBjb250ZXh0KSBXS19DX0FQSV9ERVBSRUNBVEVEOwot
V0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVzZXRIU1RTSG9zdHNBZGRlZEFmdGVyRGF0ZShXS0Nv
bnRleHRSZWYgY29udGV4dCwgZG91YmxlIHN0YXJ0RGF0ZUludGVydmFsU2luY2UxOTcwKSBXS19D
X0FQSV9ERVBSRUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVzZXRIU1RTSG9zdHMo
V0tDb250ZXh0UmVmIGNvbnRleHQpOworCisvLyBUaGUgdGltZSBoZXJlIGlzIHJlbGF0aXZlIHRv
IHRoZSBVbml4IGVwb2NoLgorV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVzZXRIU1RTSG9zdHNB
ZGRlZEFmdGVyRGF0ZShXS0NvbnRleHRSZWYgY29udGV4dCwgZG91YmxlIHN0YXJ0RGF0ZUludGVy
dmFsU2luY2UxOTcwKTsKIAogV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVnaXN0ZXJTY2hlbWVG
b3JDdXN0b21Qcm90b2NvbChXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYgc2NoZW1l
KTsKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFVucmVnaXN0ZXJTY2hlbWVGb3JDdXN0b21Qcm90
b2NvbChXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYgc2NoZW1lKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL21hYy9XS0NvbnRleHRQcml2YXRlTWFj
Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvbWFjL1dLQ29udGV4dFByaXZhdGVN
YWMubW0KaW5kZXggZDNhMDcxN2E2YmYyZGM5NzRjNmUzOTA5Y2IxMzgwZmYwZjZlZTk2Mi4uMTNj
MGM2ZjBjZWM5MjVlNmQ5MmRjMjZiZDVmODE2NzM4ZGVmMjcwMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvbWFjL1dLQ29udGV4dFByaXZhdGVNYWMubW0KKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvbWFjL1dLQ29udGV4dFByaXZhdGVNYWMubW0K
QEAgLTEwMSwxMiArMTAxLDE0IEBAIHZvaWQgV0tDb250ZXh0R2V0SW5mb0Zvckluc3RhbGxlZFBs
dWdJbnMoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIFdLQ29udGV4dEdldEluCiAjZW5kaWYKIH0K
IAotdm9pZCBXS0NvbnRleHRSZXNldEhTVFNIb3N0cyhXS0NvbnRleHRSZWYpCit2b2lkIFdLQ29u
dGV4dFJlc2V0SFNUU0hvc3RzKFdLQ29udGV4dFJlZiBjb250ZXh0KQogeworICAgIHJldHVybiBX
ZWJLaXQ6OnRvSW1wbChjb250ZXh0KS0+cmVzZXRIU1RTSG9zdHMoKTsKIH0KIAotdm9pZCBXS0Nv
bnRleHRSZXNldEhTVFNIb3N0c0FkZGVkQWZ0ZXJEYXRlKFdLQ29udGV4dFJlZiwgZG91YmxlKQor
dm9pZCBXS0NvbnRleHRSZXNldEhTVFNIb3N0c0FkZGVkQWZ0ZXJEYXRlKFdLQ29udGV4dFJlZiBj
b250ZXh0LCBkb3VibGUgc3RhcnREYXRlSW50ZXJ2YWxTaW5jZTE5NzApCiB7CisgICAgcmV0dXJu
IFdlYktpdDo6dG9JbXBsKGNvbnRleHQpLT5yZXNldEhTVFNIb3N0c0FkZGVkQWZ0ZXJEYXRlKHN0
YXJ0RGF0ZUludGVydmFsU2luY2UxOTcwKTsKIH0KIAogdm9pZCBXS0NvbnRleHRSZWdpc3RlclNj
aGVtZUZvckN1c3RvbVByb3RvY29sKFdLQ29udGV4dFJlZiBjb250ZXh0LCBXS1N0cmluZ1JlZiBz
Y2hlbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKaW5kZXggNzIyNmNjMmNiNjA1ZDIz
ODRiNWZkZjkyMTBhYzczMWI0MTYxMGMxZS4uZGYyYjkxOWM5YmExOGNjOWNjMDQ3MWE0MzM0ZWI4
NWM0NWUzODIwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaApAQCAtNjgsNyArNjgs
NyBAQCBXS19DTEFTU19BVkFJTEFCTEUobWFjb3MoMTAuMTApLCBpb3MoOC4wKSkKIEBwcm9wZXJ0
eSAobm9uYXRvbWljKSBCT09MIHVzZXNXZWJQcm9jZXNzQ2FjaGUgV0tfQVBJX0FWQUlMQUJMRSht
YWNvcygxMC4xNC40KSwgaW9zKDEyLjIpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIHBh
Z2VDYWNoZUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvcygxMC4xNCksIGlvcygxMi4wKSk7
CiBAcHJvcGVydHkgKG5vbmF0b21pYywgZ2V0dGVyPWlzSklURW5hYmxlZCkgQk9PTCBKSVRFbmFi
bGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoMTAuMTQuNCksIGlvcygxMi4yKSk7Ci1AcHJvcGVy
dHkgKG5vbmF0b21pYywgbnVsbGFibGUsIGNvcHksIHNldHRlcj1zZXRIU1RTU3RvcmFnZURpcmVj
dG9yeTopIE5TVVJMICpoc3RzU3RvcmFnZURpcmVjdG9yeSBXS19BUElfREVQUkVDQVRFRF9XSVRI
X1JFUExBQ0VNRU5UKCJfV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbi5oc3RzU3RvcmFn
ZURpcmVjdG9yeSIsIG1hY29zKDEwLjE1LCBXS19NQUNfVEJBKSwgaW9zKDEzLjAsIFdLX0lPU19U
QkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBudWxsYWJsZSwgY29weSwgc2V0dGVyPXNldEhT
VFNTdG9yYWdlRGlyZWN0b3J5OikgTlNVUkwgKmhzdHNTdG9yYWdlRGlyZWN0b3J5IFdLX0FQSV9B
VkFJTEFCTEUobWFjb3MoMTAuMTUpLCBpb3MoMTMuMCkpOwogCiBAcHJvcGVydHkgKG5vbmF0b21p
YykgQk9PTCBjb25maWd1cmVKU0NGb3JUZXN0aW5nIFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoV0tf
TUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbi5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uLmgKaW5kZXggNzFjMTNkODBhY2E4NmIxOTc0YjhhODMyMjNhN2RhN2Y1ZjY2Njc4
Ni4uMjlkOGM1OTRjYWYzZWQ3MTIxNmZhNzZjYTdlN2YxNzY4MzA0NWJmZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dl
YnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLmgKQEAgLTcyLDcgKzcyLDYgQEAgV0tfQ0xBU1Nf
QVZBSUxBQkxFKG1hY29zKDEwLjEzKSwgaW9zKDExLjApKQogQHByb3BlcnR5IChub25hdG9taWMp
IE5TVUludGVnZXIgdGVzdFNwZWVkTXVsdGlwbGllciBXS19BUElfQVZBSUxBQkxFKG1hY29zKFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwogQHByb3BlcnR5IChub25hdG9taWMpIEJPT0wg
c3VwcHJlc3Nlc0Nvbm5lY3Rpb25UZXJtaW5hdGlvbk9uU3lzdGVtQ2hhbmdlIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiBAcHJvcGVydHkgKG5v
bmF0b21pYykgQk9PTCBhbGxvd3NTZXJ2ZXJQcmVjb25uZWN0IFdLX0FQSV9BVkFJTEFCTEUobWFj
b3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywg
bnVsbGFibGUsIGNvcHksIHNldHRlcj1zZXRIU1RTU3RvcmFnZURpcmVjdG9yeTopIE5TVVJMICpo
c3RzU3RvcmFnZURpcmVjdG9yeSBXS19BUElfQVZBSUxBQkxFKG1hY29zKFdLX01BQ19UQkEpLCBp
b3MoV0tfSU9TX1RCQSkpOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgbnVsbGFibGUsIGNvcHkp
IE5TVVJMICphbHRlcm5hdGl2ZVNlcnZpY2VzU3RvcmFnZURpcmVjdG9yeSBXS19BUElfQVZBSUxB
QkxFKG1hY29zKFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0ZURhdGFTdG9yZUNvbmZp
Z3VyYXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0
ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24ubW0KaW5kZXggYmI5NzI3M2FhZDUzNTEwNjlkMGVmYjVj
NTgyNGM1NDBhNDhiNWQ1Yi4uMDE1MzExNjAwNTY0ODAzYTlkMGI4ZGU5YmYxZmU3OWZmMTAyYmVh
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYnNp
dGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbi5tbQpAQCAtMjkwLDE5
ICsyOTAsNiBAQCAtICh2b2lkKXNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3Rvcnk6KE5TVVJMICop
dXJsCiAgICAgX2NvbmZpZ3VyYXRpb24tPnNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkodXJs
LnBhdGgpOwogfQogCi0tIChOU1VSTCAqKWhzdHNTdG9yYWdlRGlyZWN0b3J5Ci17Ci0gICAgcmV0
dXJuIFtOU1VSTCBmaWxlVVJMV2l0aFBhdGg6X2NvbmZpZ3VyYXRpb24tPmhzdHNTdG9yYWdlRGly
ZWN0b3J5KCkgaXNEaXJlY3Rvcnk6WUVTXTsKLX0KLQotLSAodm9pZClzZXRIU1RTU3RvcmFnZURp
cmVjdG9yeTooTlNVUkwgKil1cmwKLXsKLSAgICBpZiAoIV9jb25maWd1cmF0aW9uLT5pc1BlcnNp
c3RlbnQoKSkKLSAgICAgICAgW05TRXhjZXB0aW9uIHJhaXNlOk5TSW52YWxpZEFyZ3VtZW50RXhj
ZXB0aW9uIGZvcm1hdDpAIkNhbm5vdCBzZXQgbWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSBvbiBh
IG5vbi1wZXJzaXN0ZW50IF9XS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLiJdOwotICAg
IGNoZWNrVVJMQXJndW1lbnQodXJsKTsKLSAgICBfY29uZmlndXJhdGlvbi0+c2V0SFNUU1N0b3Jh
Z2VEaXJlY3RvcnkodXJsLnBhdGgpOwotfQotCiAtIChOU1VSTCAqKWFsdGVybmF0aXZlU2Vydmlj
ZXNTdG9yYWdlRGlyZWN0b3J5CiB7CiAgICAgcmV0dXJuIFtOU1VSTCBmaWxlVVJMV2l0aFBhdGg6
X2NvbmZpZ3VyYXRpb24tPmFsdGVybmF0aXZlU2VydmljZXNEaXJlY3RvcnkoKSBpc0RpcmVjdG9y
eTpZRVNdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJv
Y2Vzc1Bvb2xDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nl
c3NQb29sQ29jb2EubW0KaW5kZXggYTE3NjBmODY4ZjQ1MzJlYzEzOWIyZGRhMmY5YzUzZGE5MjBm
OGI0ZC4uMWZhNjAzMWQ5YWQ4NjcyNDg3OTgyNmFmNjAzNmVmZDJjYmQ1YzIxYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1t
CkBAIC03MjgsNiArNzI4LDE4IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnVucmVnaXN0ZXJOb3Rp
ZmljYXRpb25PYnNlcnZlcnMoKQogICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENl
bnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9hY3RpdmF0aW9uT2JzZXJ2ZXIuZ2V0KCldOwogfQogCitz
dGF0aWMgQ0ZVUkxTdG9yYWdlU2Vzc2lvblJlZiBwcml2YXRlQnJvd3NpbmdTZXNzaW9uKCkKK3sK
KyAgICBzdGF0aWMgQ0ZVUkxTdG9yYWdlU2Vzc2lvblJlZiBzZXNzaW9uOworICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAg
ICBOU1N0cmluZyAqaWRlbnRpZmllciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiJUAu
UHJpdmF0ZUJyb3dzaW5nIiwgW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVy
XV07CisgICAgICAgIHNlc3Npb24gPSBjcmVhdGVQcml2YXRlU3RvcmFnZVNlc3Npb24oKF9fYnJp
ZGdlIENGU3RyaW5nUmVmKWlkZW50aWZpZXIpOworICAgIH0pOworCisgICAgcmV0dXJuIHNlc3Np
b247Cit9CisKIGJvb2wgV2ViUHJvY2Vzc1Bvb2w6OmlzVVJMS25vd25IU1RTSG9zdChjb25zdCBT
dHJpbmcmIHVybFN0cmluZykgY29uc3QKIHsKICAgICBSZXRhaW5QdHI8Q0ZVUkxSZWY+IHVybCA9
IFVSTChVUkwoKSwgdXJsU3RyaW5nKS5jcmVhdGVDRlVSTCgpOwpAQCAtNzM1LDYgKzc0NywxOSBA
QCBib29sIFdlYlByb2Nlc3NQb29sOjppc1VSTEtub3duSFNUU0hvc3QoY29uc3QgU3RyaW5nJiB1
cmxTdHJpbmcpIGNvbnN0CiAgICAgcmV0dXJuIF9DRk5ldHdvcmtJc0tub3duSFNUU0hvc3RXaXRo
U2Vzc2lvbih1cmwuZ2V0KCksIG51bGxwdHIpOwogfQogCit2b2lkIFdlYlByb2Nlc3NQb29sOjpy
ZXNldEhTVFNIb3N0cygpCit7CisgICAgX0NGTmV0d29ya1Jlc2V0SFNUU0hvc3RzV2l0aFNlc3Np
b24obnVsbHB0cik7CisgICAgX0NGTmV0d29ya1Jlc2V0SFNUU0hvc3RzV2l0aFNlc3Npb24ocHJp
dmF0ZUJyb3dzaW5nU2Vzc2lvbigpKTsKK30KKwordm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVzZXRI
U1RTSG9zdHNBZGRlZEFmdGVyRGF0ZShkb3VibGUgc3RhcnREYXRlSW50ZXJ2YWxTaW5jZTE5NzAp
Cit7CisgICAgTlNEYXRlICpzdGFydERhdGUgPSBbTlNEYXRlIGRhdGVXaXRoVGltZUludGVydmFs
U2luY2UxOTcwOnN0YXJ0RGF0ZUludGVydmFsU2luY2UxOTcwXTsKKyAgICBfQ0ZOZXR3b3JrUmVz
ZXRIU1RTSG9zdHNTaW5jZURhdGUobnVsbHB0ciwgKF9fYnJpZGdlIENGRGF0ZVJlZilzdGFydERh
dGUpOworICAgIF9DRk5ldHdvcmtSZXNldEhTVFNIb3N0c1NpbmNlRGF0ZShwcml2YXRlQnJvd3Np
bmdTZXNzaW9uKCksIChfX2JyaWRnZSBDRkRhdGVSZWYpc3RhcnREYXRlKTsKK30KKwogI2lmIFBM
QVRGT1JNKE1BQykgJiYgRU5BQkxFKFdFQlBST0NFU1NfV0lORE9XU0VSVkVSX0JMT0NLSU5HKQog
T3B0aW9uYWw8dW5zaWduZWQ+IFdlYlByb2Nlc3NQb29sOjpub21pbmFsRnJhbWVzUGVyU2Vjb25k
Rm9yRGlzcGxheShXZWJDb3JlOjpQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbGF5SUQpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAppbmRleCA0MGJkOGMxMDZmZDc2MTJh
NmJlNjg1MWQ3MmU5ZWE5ZDdhMmZjODJlLi5iZjJkOGM3ZTUyZGZiMDg2ZjY1NTJhZTEzMDVjZDc4
ZDhlNjY3N2FjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKQEAg
LTQyMiw2ICs0MjIsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZUludmFs
aWRNZXNzYWdlKElQQzo6TWVzc2FnZU5hbWUpOwogCiAgICAgYm9vbCBpc1VSTEtub3duSFNUU0hv
c3QoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpIGNvbnN0OworICAgIHZvaWQgcmVzZXRIU1RTSG9z
dHMoKTsKKyAgICB2b2lkIHJlc2V0SFNUU0hvc3RzQWRkZWRBZnRlckRhdGUoZG91YmxlIHN0YXJ0
RGF0ZUludGVydmFsU2luY2UxOTcwKTsKIAogICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVyR2xvYmFs
VVJMU2NoZW1lQXNIYXZpbmdDdXN0b21Qcm90b2NvbEhhbmRsZXJzKGNvbnN0IFN0cmluZyYpOwog
ICAgIHN0YXRpYyB2b2lkIHVucmVnaXN0ZXJHbG9iYWxVUkxTY2hlbWVBc0hhdmluZ0N1c3RvbVBy
b3RvY29sSGFuZGxlcnMoY29uc3QgU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCmluZGV4IGQ2YWUx
Yzg4YzNiMzc4YTFlMjc3Mjg5ODQ2YmFiYjI0YTk2ZmZiZjIuLmNlOWJkN2Y4Yjg0MTE5ZDkwYTgz
OGI1YWZlZTA0YjhiZjc5ZTJkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCkBAIC0yMzIsOCArMjMyLDYg
QEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpyZXNvbHZlRGlyZWN0b3JpZXNJZk5lY2Vzc2FyeSgp
CiAgICAgICAgIG1fcmVzb2x2ZWRDb25maWd1cmF0aW9uLT5zZXRKYXZhU2NyaXB0Q29uZmlndXJh
dGlvbkRpcmVjdG9yeShyZXNvbHZlUGF0aEZvclNhbmRib3hFeHRlbnNpb24obV9jb25maWd1cmF0
aW9uLT5qYXZhU2NyaXB0Q29uZmlndXJhdGlvbkRpcmVjdG9yeSgpKSk7CiAgICAgaWYgKCFtX2Nv
bmZpZ3VyYXRpb24tPmNhY2hlU3RvcmFnZURpcmVjdG9yeSgpLmlzRW1wdHkoKSAmJiBtX3Jlc29s
dmVkQ29uZmlndXJhdGlvbi0+Y2FjaGVTdG9yYWdlRGlyZWN0b3J5KCkuaXNFbXB0eSgpKQogICAg
ICAgICBtX3Jlc29sdmVkQ29uZmlndXJhdGlvbi0+c2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KHJl
c29sdmVQYXRoRm9yU2FuZGJveEV4dGVuc2lvbihtX2NvbmZpZ3VyYXRpb24tPmNhY2hlU3RvcmFn
ZURpcmVjdG9yeSgpKSk7Ci0gICAgaWYgKCFtX2NvbmZpZ3VyYXRpb24tPmhzdHNTdG9yYWdlRGly
ZWN0b3J5KCkuaXNFbXB0eSgpICYmIG1fcmVzb2x2ZWRDb25maWd1cmF0aW9uLT5oc3RzU3RvcmFn
ZURpcmVjdG9yeSgpLmlzRW1wdHkoKSkKLSAgICAgICAgbV9yZXNvbHZlZENvbmZpZ3VyYXRpb24t
PnNldEhTVFNTdG9yYWdlRGlyZWN0b3J5KHJlc29sdmVQYXRoRm9yU2FuZGJveEV4dGVuc2lvbiht
X2NvbmZpZ3VyYXRpb24tPmhzdHNTdG9yYWdlRGlyZWN0b3J5KCkpKTsKIAogICAgIC8vIFJlc29s
dmUgZGlyZWN0b3JpZXMgZm9yIGZpbGUgcGF0aHMuCiAgICAgaWYgKCFtX2NvbmZpZ3VyYXRpb24t
PmNvb2tpZVN0b3JhZ2VGaWxlKCkuaXNFbXB0eSgpKSB7CkBAIC0yMjYxLDExICsyMjU5LDYgQEAg
V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycygp
CiAgICAgaWYgKCFuZXR3b3JrQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQogICAgICAgICBTYW5k
Ym94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkobmV0d29ya0Nh
Y2hlRGlyZWN0b3J5LCBuZXR3b3JrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwogCi0g
ICAgYXV0byBoc3RzU3RvcmFnZURpcmVjdG9yeSA9IHJlc29sdmVkSFNUU1N0b3JhZ2VEaXJlY3Rv
cnkoKTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaHN0c1N0b3JhZ2VEaXJlY3RvcnlF
eHRlbnNpb25IYW5kbGU7Ci0gICAgaWYgKCFoc3RzU3RvcmFnZURpcmVjdG9yeS5pc0VtcHR5KCkp
Ci0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVj
dG9yeShoc3RzU3RvcmFnZURpcmVjdG9yeSwgaHN0c1N0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25I
YW5kbGUpOwotCiAgICAgYm9vbCBzaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzID0gZmFsc2U7CiAgICAgYm9vbCBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
RGVidWdNb2RlID0gZmFsc2U7CiAgICAgYXV0byBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFs
TW9kZSA9IFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpBbGxCdXRD
b29raWVzOwpAQCAtMjMwNyw4ICsyMzAwLDYgQEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMg
V2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycygpCiAgICAgbmV0d29ya1Nlc3Npb25QYXJhbWV0
ZXJzLmFsbExvYWRzQmxvY2tlZEJ5RGV2aWNlTWFuYWdlbWVudFJlc3RyaWN0aW9uc0ZvclRlc3Rp
bmcgPSBtX2NvbmZpZ3VyYXRpb24tPmFsbExvYWRzQmxvY2tlZEJ5RGV2aWNlTWFuYWdlbWVudFJl
c3RyaWN0aW9uc0ZvclRlc3RpbmcoKTsKICAgICBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMubmV0
d29ya0NhY2hlRGlyZWN0b3J5ID0gV1RGTW92ZShuZXR3b3JrQ2FjaGVEaXJlY3RvcnkpOwogICAg
IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5uZXR3b3JrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25I
YW5kbGUgPSBXVEZNb3ZlKG5ldHdvcmtDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7Ci0g
ICAgbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLmhzdHNTdG9yYWdlRGlyZWN0b3J5ID0gV1RGTW92
ZShoc3RzU3RvcmFnZURpcmVjdG9yeSk7Ci0gICAgbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLmhz
dHNTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZShoc3RzU3RvcmFnZURp
cmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLmRh
dGFDb25uZWN0aW9uU2VydmljZVR5cGUgPSBtX2NvbmZpZ3VyYXRpb24tPmRhdGFDb25uZWN0aW9u
U2VydmljZVR5cGUoKTsKICAgICBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuZmFzdFNlcnZlclRy
dXN0RXZhbHVhdGlvbkVuYWJsZWQgPSBtX2NvbmZpZ3VyYXRpb24tPmZhc3RTZXJ2ZXJUcnVzdEV2
YWx1YXRpb25FbmFibGVkKCk7CiAgICAgbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLm5ldHdvcmtD
YWNoZVNwZWN1bGF0aXZlVmFsaWRhdGlvbkVuYWJsZWQgPSBtX2NvbmZpZ3VyYXRpb24tPm5ldHdv
cmtDYWNoZVNwZWN1bGF0aXZlVmFsaWRhdGlvbkVuYWJsZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAppbmRleCAy
MDA1NThlN2M5MWE3ZDBhZDgwM2M5MDhiOWZlZmEzZmE3OTZkOTc2Li5lNDIyYWRjZmYwOTkyZTJi
NTI4YWZhNDlkNmVmMzFhYmI3YzQ3OTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCkBAIC0yMjQsNyArMjI0LDYg
QEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgcmVzb2x2ZWRJbmRleGVkRGF0YWJhc2VEaXJl
Y3RvcnkoKSBjb25zdCB7IHJldHVybiBtX3Jlc29sdmVkQ29uZmlndXJhdGlvbi0+aW5kZXhlZERC
RGF0YWJhc2VEaXJlY3RvcnkoKTsgfQogICAgIGNvbnN0IFN0cmluZyYgcmVzb2x2ZWRTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9yZXNvbHZlZENv
bmZpZ3VyYXRpb24tPnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkoKTsgfQogICAg
IGNvbnN0IFN0cmluZyYgcmVzb2x2ZWRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5KCkg
Y29uc3QgeyByZXR1cm4gbV9yZXNvbHZlZENvbmZpZ3VyYXRpb24tPnJlc291cmNlTG9hZFN0YXRp
c3RpY3NEaXJlY3RvcnkoKTsgfQotICAgIGNvbnN0IFN0cmluZyYgcmVzb2x2ZWRIU1RTU3RvcmFn
ZURpcmVjdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb2x2ZWRDb25maWd1cmF0aW9uLT5oc3Rz
U3RvcmFnZURpcmVjdG9yeSgpOyB9CiAKICAgICBEZXZpY2VJZEhhc2hTYWx0U3RvcmFnZSYgZGV2
aWNlSWRIYXNoU2FsdFN0b3JhZ2UoKSB7IHJldHVybiBtX2RldmljZUlkSGFzaFNhbHRTdG9yYWdl
LmdldCgpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLmNwcAppbmRl
eCAxYjFiZmE5ODEyNTgzMWM4ZDFhNmU4NGYwY2IzYmQyMjEwNGMyZTEzLi5hNzVhNzkwZDY1MWIw
YzAzMjg1YzA0NTg4MzlkYTQ1NWJlNDQ5NjVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZUNv
bmZpZ3VyYXRpb24uY3BwCkBAIC02Nyw3ICs2Nyw5IEBAIFJlZjxXZWJzaXRlRGF0YVN0b3JlQ29u
ZmlndXJhdGlvbj4gV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb246OmNvcHkoKSBjb25zdAog
ICAgIGNvcHktPm1faW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkgPSB0aGlzLT5tX2luZGV4ZWRE
QkRhdGFiYXNlRGlyZWN0b3J5OwogICAgIGNvcHktPm1fc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeSA9IHRoaXMtPm1fc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeTsK
ICAgICBjb3B5LT5tX3dlYlNRTERhdGFiYXNlRGlyZWN0b3J5ID0gdGhpcy0+bV93ZWJTUUxEYXRh
YmFzZURpcmVjdG9yeTsKKyNpZiBVU0UoR0xJQikKICAgICBjb3B5LT5tX2hzdHNTdG9yYWdlRGly
ZWN0b3J5ID0gdGhpcy0+bV9oc3RzU3RvcmFnZURpcmVjdG9yeTsKKyNlbmRpZgogICAgIGNvcHkt
Pm1fbG9jYWxTdG9yYWdlRGlyZWN0b3J5ID0gdGhpcy0+bV9sb2NhbFN0b3JhZ2VEaXJlY3Rvcnk7
CiAgICAgY29weS0+bV9tZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5ID0gdGhpcy0+bV9tZWRpYUtl
eXNTdG9yYWdlRGlyZWN0b3J5OwogICAgIGNvcHktPm1fYWx0ZXJuYXRpdmVTZXJ2aWNlc0RpcmVj
dG9yeSA9IHRoaXMtPm1fYWx0ZXJuYXRpdmVTZXJ2aWNlc0RpcmVjdG9yeTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRl
RGF0YVN0b3JlQ29uZmlndXJhdGlvbi5oCmluZGV4IGNiYjdlZGM0YjBkOThlOGQ5NzNmZDAxZTY0
NjVjOGRmZThiM2FiOTMuLjVkYzcyMjFjZDhkM2E1OWQ2NDQ2ZjRlMDA4OWEwMmIwNjJlMjI5OGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmVDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24uaApAQCAtNjYsMTAgKzY2LDEw
IEBAIHB1YmxpYzoKIAogICAgIGNvbnN0IFN0cmluZyYgd2ViU1FMRGF0YWJhc2VEaXJlY3Rvcnko
KSBjb25zdCB7IHJldHVybiBtX3dlYlNRTERhdGFiYXNlRGlyZWN0b3J5OyB9CiAgICAgdm9pZCBz
ZXRXZWJTUUxEYXRhYmFzZURpcmVjdG9yeShTdHJpbmcmJiBkaXJlY3RvcnkpIHsgbV93ZWJTUUxE
YXRhYmFzZURpcmVjdG9yeSA9IFdURk1vdmUoZGlyZWN0b3J5KTsgfQotCisjaWYgVVNFKEdMSUIp
IC8vIEFjY29yZGluZyB0byByMjQ1MDc1IHRoaXMgd2lsbCBldmVudHVhbGx5IG1vdmUgaGVyZS4K
ICAgICBjb25zdCBTdHJpbmcmIGhzdHNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4g
bV9oc3RzU3RvcmFnZURpcmVjdG9yeTsgfQogICAgIHZvaWQgc2V0SFNUU1N0b3JhZ2VEaXJlY3Rv
cnkoU3RyaW5nJiYgZGlyZWN0b3J5KSB7IG1faHN0c1N0b3JhZ2VEaXJlY3RvcnkgPSBXVEZNb3Zl
KGRpcmVjdG9yeSk7IH0KLQorI2VuZGlmCiAgICAgY29uc3QgU3RyaW5nJiBsb2NhbFN0b3JhZ2VE
aXJlY3RvcnkoKSBjb25zdCB7IHJldHVybiBtX2xvY2FsU3RvcmFnZURpcmVjdG9yeTsgfQogICAg
IHZvaWQgc2V0TG9jYWxTdG9yYWdlRGlyZWN0b3J5KFN0cmluZyYmIGRpcmVjdG9yeSkgeyBtX2xv
Y2FsU3RvcmFnZURpcmVjdG9yeSA9IFdURk1vdmUoZGlyZWN0b3J5KTsgfQogCkBAIC0xNzQsOCAr
MTc0LDggQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9y
eTsKICAgICBTdHJpbmcgbV9zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5OwogICAg
IFN0cmluZyBtX3dlYlNRTERhdGFiYXNlRGlyZWN0b3J5OwotICAgIFN0cmluZyBtX2hzdHNTdG9y
YWdlRGlyZWN0b3J5OwogI2lmIFVTRShHTElCKQorICAgIFN0cmluZyBtX2hzdHNTdG9yYWdlRGly
ZWN0b3J5OwogICAgIGJvb2wgbV9uZXR3b3JrQ2FjaGVTcGVjdWxhdGl2ZVZhbGlkYXRpb25FbmFi
bGVkIHsgdHJ1ZSB9OwogI2Vsc2UKICAgICBib29sIG1fbmV0d29ya0NhY2hlU3BlY3VsYXRpdmVW
YWxpZGF0aW9uRW5hYmxlZCB7IGZhbHNlIH07Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>