<?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>239088</bug_id>
          
          <creation_ts>2022-04-11 14:24:21 -0700</creation_ts>
          <short_desc>Leak of MediaSourcePrivateAVFObjC and RemoteMediaSourceProxy</short_desc>
          <delta_ts>2022-04-12 12:37:41 -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>Media</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="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>jean-yves.avenard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1860406</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-04-11 14:24:21 -0700</bug_when>
    <thetext>Leak of MediaSourcePrivateAVFObjC and RemoteMediaSourceProxy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1860407</commentid>
    <comment_count>1</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-04-11 14:24:47 -0700</bug_when>
    <thetext>&lt;rdar://90693094&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1860409</commentid>
    <comment_count>2</comment_count>
      <attachid>457286</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-04-11 14:30:50 -0700</bug_when>
    <thetext>Created attachment 457286
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1860458</commentid>
    <comment_count>3</comment_count>
      <attachid>457297</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-04-11 16:20:27 -0700</bug_when>
    <thetext>Created attachment 457297
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1860676</commentid>
    <comment_count>4</comment_count>
      <attachid>457332</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-04-12 08:26:40 -0700</bug_when>
    <thetext>Created attachment 457332
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1860770</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-12 12:37:37 -0700</bug_when>
    <thetext>Committed r292782 (249566@main): &lt;https://commits.webkit.org/249566@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 457332.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457286</attachid>
            <date>2022-04-11 14:30:50 -0700</date>
            <delta_ts>2022-04-12 08:26:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239088-20220411143050.patch</filename>
            <type>text/plain</type>
            <size>38680</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyNzE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTAwNjhiYmExNzI1ZTJj
N2E3NzVlMjc0YTk4Mjc1ODZlN2EwMDRkYy4uMjYyMDM1NDA4MzhlMzM4NjI5NzhlNGYyOWQ4ZTNk
NTJlYzIyYWIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIyLTA0LTExICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIExlYWsgb2YgTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQyBhbmQgUmVtb3RlTWVkaWFTb3VyY2VQcm94eQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM5MDg4CisgICAgICAgIDxyZGFy
Oi8vOTA2OTMwOTQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyBob2xkcyBhIHN0cm9uZyByZWZlcmVuY2Ug
dG8gaXRzIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCwgd2hpY2ggaXMKKyAgICAgICAgYSBNZWRp
YVNvdXJjZSB3aGVuIHJ1bm5pbmcgaW4tcHJvY2VzcywgYnV0IGEgUmVtb3RlTWVkaWFTb3VyY2VQ
cm94eSB3aGVuIHJ1bm5pbmcgaW4gbXVsdGktcHJvY2Vzcy4KKyAgICAgICAgSW4gYm90aCBjYXNl
cywgdGhlIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCBob2xkcyBhIHN0cm9uZyByZWZlcmVuY2Ug
dG8gaXRzIHByaXZhdGUgb2JqZWN0IGFzIHdlbGwuCisgICAgICAgIEhvd2V2ZXIsIGluIHRoZSBt
dWx0aS1wcm9jZXNzIHNjZW5hcmlvLCB0aGlzIGN5Y2xlIGlzIG5ldmVyIGJyb2tlbiwgY2F1c2lu
ZyBhIGxlYWsuCisKKyAgICAgICAgUmF0aGVyIHRoYW4gZGV0ZXJtaW5lIHRoZSBjb3JyZWN0IHBv
aW50IHRvIGJyZWFrIHRoaXMgcmV0YWluLWN5Y2xlLCBtb2RpZnkgTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50CisgICAgICAgIHRvIGJlIGEgQ2FuTWFrZVdlYWtQdHIgYWJzdHJhY3QgY2xhc3MgKHJh
dGhlciB0aGFuIGEgUmVmQ291bnRlZCBvbmUpLCBhbmQgY29udmVydCBhbGwgY2FzZXMgd2hlcmUK
KyAgICAgICAgdGhhdCBjbGllbnQncyBwb2ludGVyIGlzIHN0b3JlZCBmcm9tIGEgUmVmL1JlZlB0
ciB0byBhIFdlYWtQdHIuIFRoaXMgbWVhbnMgaGF2aW5nIHRvIG51bGwtY2hlY2sKKyAgICAgICAg
ZXZlcnkgdGltZSB0aGF0IHBvaW50ZXIgaXMgdXNlZC4KKworICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzb3VyY2UvTWVkaWFTb3VyY2UuaDoKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNlKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYVBsYXllcjo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXll
cjo6bG9hZFdpdGhOZXh0TWVkaWFFbmdpbmUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L01lZGlhUGxheWVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQ
cml2YXRlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb246OmxvYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZh
dGVNZWRpYVNvdXJjZUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW06Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6Omxv
YWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZG
T2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFt
QVZGT2JqQzo6bG9hZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW06Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpjcmVhdGUpOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6TWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpD
OjpkdXJhdGlvbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjpidWZmZXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjpzZWVrVG9UaW1lKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0
ZUFWRk9iakM6OmZhaWxlZFRvQ3JlYXRlUmVuZGVyZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpsb2FkKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXJNU0UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyTVNFOjpsb2FkKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lck1TRTo6dW5ibG9ja0R1cmF0aW9uQ2hhbmdlcyk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFt
ZXJNU0UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ob2xlcHVuY2gvTWVkaWFQbGF5
ZXJQcml2YXRlSG9sZVB1bmNoLmg6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJj
ZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNb2Nr
TWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTo6bG9hZCk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9t
ZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oOgorICAgICAgICAqIHBsYXRm
b3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRl
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tNZWRpYVNvdXJjZVByaXZhdGU6OmR1cmF0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6Ok1vY2tNZWRpYVNvdXJjZVByaXZhdGU6OmJ1ZmZlcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1vY2tNZWRpYVNvdXJjZVByaXZhdGU6OnNlZWtUb1RpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5o
OgorCiAyMDIyLTA0LTExICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW0pTQ10gUmVkdWNlIHVzZSBvZiB1bm5lY2Vzc2FyeSBjcnlwdG9ncmFwaGljYWxseVJh
bmRvbSBudW1iZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGU0ZjkzZjhlMjMwNWI1NDkzMjFlNzMyYTdlOGJjNzQw
YzBmZmM1ZDAuLjQ4Yjk4MDBlZTZmY2NkMDUyMmY5N2Q0NWNmOGI4ZmQxZjY2ODhhYTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjItMDQtMTEgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgTGVhayBvZiBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDIGFu
ZCBSZW1vdGVNZWRpYVNvdXJjZVByb3h5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzkwODgKKyAgICAgICAgPHJkYXI6Ly85MDY5MzA5ND4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZG9wdCBjaGFuZ2Vz
IHRvIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCBtYWtpbmcgaXQgYSBDYW5NYWtlV2Vha1B0ciBj
bGFzcy4KKworICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmxvYWRNZWRp
YVNvdXJjZSk6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVNvdXJjZVBy
b3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRl
UmVtb3RlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjps
b2FkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVS
ZW1vdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZh
dGVSZW1vdGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU6
OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6TWVk
aWFTb3VyY2VQcml2YXRlUmVtb3RlKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFTb3VyY2VQcml2
YXRlUmVtb3RlOjpzZWVrVG9UaW1lKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9N
ZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuaDoKKwogMjAyMi0wNC0xMSAgV2Vuc29uIEhzaWVoICA8
d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjg5Nzg1KTog
W2lPU10gVW5hYmxlIHRvIGRvdWJsZS1jbGljayB0byBzZWxlY3QgYSB3b3JkIGluIGEgcmVjZWl2
ZWQgZW1haWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2Uv
TWVkaWFTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFT
b3VyY2UuaAppbmRleCBhMjZlNTUzZTdhMWNkMzUwYTNiNDY0ZjAzZTE0MzllYjZhZTFmMmQxLi5k
OTU5ZmVkYmM5OTI5NGE3NmE2ZWFjNzAyNDVhZDM5Yzc2ZmE3ZDg1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9NZWRpYVNvdXJjZS5oCkBAIC0zOSw2ICszOSw3
IEBACiAjaW5jbHVkZSAiTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgiCiAjaW5jbHVkZSAiVVJM
UmVnaXN0cnkuaCIKICNpbmNsdWRlIDx3dGYvTG9nZ2VySGVscGVyLmg+CisjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC01MCw3ICs1MSw4IEBAIGNsYXNzIFNvdXJjZUJ1ZmZlclByaXZhdGU7CiBjbGFz
cyBUaW1lUmFuZ2VzOwogCiBjbGFzcyBNZWRpYVNvdXJjZSBmaW5hbAotICAgIDogcHVibGljIE1l
ZGlhU291cmNlUHJpdmF0ZUNsaWVudAorICAgIDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFTb3Vy
Y2U+CisgICAgLCBwdWJsaWMgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50CiAgICAgLCBwdWJsaWMg
QWN0aXZlRE9NT2JqZWN0CiAgICAgLCBwdWJsaWMgRXZlbnRUYXJnZXRXaXRoSW5saW5lRGF0YQog
ICAgICwgcHVibGljIFVSTFJlZ2lzdHJhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcAppbmRleCA2YWI0YmQ1NTBmMGNjZWVhYmJkNjNjODhlMzcwZWYzMDMxY2Y3MDQx
Li4zZGU2ZjQyNzdiMDUyNGQ5ZjQ1ZmZhNmFiNmMyYzJlNTM5YTI0ZTE0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTE1NjksNyArMTU2OSw3IEBAIHZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29u
dGVudFR5cGUmIGNvbnRlbnRUCiAgICAgICAgICAgICAvLyB3aGlsZSBwcm9jZXNzaW5nIHJlbWFp
bmRlciBvZiBsb2FkIGZhaWx1cmUuCiAgICAgICAgICAgICBtX21lZGlhU291cmNlID0gbnVsbHB0
cjsKICAgICAgICAgICAgIG1lZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXllcjo6TmV0d29ya1N0
YXRlOjpGb3JtYXRFcnJvcik7Ci0gICAgICAgIH0gZWxzZSBpZiAoIW1fcGxheWVyLT5sb2FkKHVy
bCwgY29udGVudFR5cGUsIG1fbWVkaWFTb3VyY2UuZ2V0KCkpKSB7CisgICAgICAgIH0gZWxzZSBp
ZiAoIW1fcGxheWVyLT5sb2FkKHVybCwgY29udGVudFR5cGUsICptX21lZGlhU291cmNlKSkgewog
ICAgICAgICAgICAgLy8gV2UgaGF2ZSB0byBkZXRhY2ggdGhlIE1lZGlhU291cmNlIGJlZm9yZSB3
ZSBmb3JnZXQgdGhlIHJlZmVyZW5jZSB0byBpdC4KICAgICAgICAgICAgIG1fbWVkaWFTb3VyY2Ut
PmRldGFjaEZyb21FbGVtZW50KCp0aGlzKTsKICAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UgPSBu
dWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVk
aWFQbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5
ZXIuY3BwCmluZGV4IDRlMmQyZDY4NjI3OWZlZTA0MmJjY2UwYmM2M2VhZDlhMDgyZjE4OGUuLmU0
ZjcxMDQ1MjcwYmJiMDVjZWFlOGI5YzNiZTU4MDllMDkyYzI3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKQEAgLTEwMyw3ICsxMDMs
NyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGxvYWQoY29uc3QgU3RyaW5nJikgZmluYWwgeyB9CiAj
aWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLSAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3Qg
Q29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKSBmaW5hbCB7IH0KKyAgICB2
b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZh
dGVDbGllbnQmKSBmaW5hbCB7IH0KICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAg
ICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0ZSYpIGZpbmFsIHsgfQpAQCAtNTA4LDEwICs1
MDgsOSBAQCBib29sIE1lZGlhUGxheWVyOjpsb2FkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBDb250
ZW50VHlwZSYgY29udGVudFR5cGUsIGNvbnN0IFN0cgogfQogCiAjaWYgRU5BQkxFKE1FRElBX1NP
VVJDRSkKLWJvb2wgTWVkaWFQbGF5ZXI6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRl
bnRUeXBlJiBjb250ZW50VHlwZSwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBtZWRpYVNvdXJj
ZSkKK2Jvb2wgTWVkaWFQbGF5ZXI6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRU
eXBlJiBjb250ZW50VHlwZSwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JiBtZWRpYVNvdXJjZSkK
IHsKICAgICBBU1NFUlQoIW1fcmVsb2FkVGltZXIuaXNBY3RpdmUoKSk7Ci0gICAgQVNTRVJUKG1l
ZGlhU291cmNlKTsKIAogICAgIG1fbWVkaWFTb3VyY2UgPSBtZWRpYVNvdXJjZTsKICAgICBtX2Nv
bnRlbnRUeXBlID0gY29udGVudFR5cGU7CkBAIC02MjMsNyArNjIyLDcgQEAgdm9pZCBNZWRpYVBs
YXllcjo6bG9hZFdpdGhOZXh0TWVkaWFFbmdpbmUoY29uc3QgTWVkaWFQbGF5ZXJGYWN0b3J5KiBj
dXJyZW50KQogICAgIGlmIChtX3ByaXZhdGUpIHsKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQog
ICAgICAgICBpZiAobV9tZWRpYVNvdXJjZSkKLSAgICAgICAgICAgIG1fcHJpdmF0ZS0+bG9hZCht
X3VybCwgbV9jb250ZW50TUlNRVR5cGVXYXNJbmZlcnJlZEZyb21FeHRlbnNpb24gPyBDb250ZW50
VHlwZSgpIDogbV9jb250ZW50VHlwZSwgbV9tZWRpYVNvdXJjZS5nZXQoKSk7CisgICAgICAgICAg
ICBtX3ByaXZhdGUtPmxvYWQobV91cmwsIG1fY29udGVudE1JTUVUeXBlV2FzSW5mZXJyZWRGcm9t
RXh0ZW5zaW9uID8gQ29udGVudFR5cGUoKSA6IG1fY29udGVudFR5cGUsICptX21lZGlhU291cmNl
KTsKICAgICAgICAgZWxzZQogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4IGIxYzEz
MjQ3NmVlNDg4MTU2ZWNkMzdjYmVjYjU0NjI0NWE3OGJhNjkuLmI2YTFkZmZiNWU4NTk2OTgxYWY1
ZmFlZDc0OTRjNzBlN2UyNTQwNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtMzU4LDcgKzM1OCw3IEBAIHB1YmxpYzoKIAogICAgIGJv
b2wgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIGNvbnN0IFN0cmluZyYga2V5
U3lzdGVtKTsKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotICAgIGJvb2wgbG9hZChjb25zdCBV
UkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopOworICAg
IGJvb2wgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJp
dmF0ZUNsaWVudCYpOwogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBib29s
IGxvYWQoTWVkaWFTdHJlYW1Qcml2YXRlJik7CkBAIC03NDEsNyArNzQxLDcgQEAgcHJpdmF0ZToK
ICAgICBQaXRjaENvcnJlY3Rpb25BbGdvcml0aG0gbV9waXRjaENvcnJlY3Rpb25BbGdvcml0aG0g
eyBQaXRjaENvcnJlY3Rpb25BbGdvcml0aG06OkJlc3RBbGxBcm91bmQgfTsKIAogI2lmIEVOQUJM
RShNRURJQV9TT1VSQ0UpCi0gICAgUmVmUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9t
ZWRpYVNvdXJjZTsKKyAgICBXZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9tZWRp
YVNvdXJjZTsKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgUmVmUHRyPE1l
ZGlhU3RyZWFtUHJpdmF0ZT4gbV9tZWRpYVN0cmVhbTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKaW5kZXggMThkYmJlOWU2
YzVjOWRjYmU3OWFkMjZmNWUyMTllMjVhMDE3YThlZC4uMWE3NTE1ZmRiMjM5NGU4ZTNhOGY5Yjk0
YTI2NTk2ZjIzMTVmMjZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKQEAgLTUyLDcgKzUyLDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBsb2FkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBDb250ZW50VHlwZSYs
IGNvbnN0IFN0cmluZyYpIHsgbG9hZCh1cmwuc3RyaW5nKCkpOyB9CiAKICNpZiBFTkFCTEUoTUVE
SUFfU09VUkNFKQotICAgIHZpcnR1YWwgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRl
bnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50JikgPSAwOwogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2aXJ0
dWFsIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVNvdXJjZVByaXZhdGVDbGllbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNsaWVu
dC5oCmluZGV4IDM2OTBlMzYzY2I0NjQzYWIyZDFmMjIxMmU3NTY2M2E5ZjZmY2I0ZjguLmMyZjBk
MDUyOGQxNTQ3ZDA2ODQwY2VhZDFhMzRjZGVlYjExZGZhOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNsaWVu
dC5oCkBAIC0yMywyMCArMjMsMTkgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYg
TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50X2gKLSNkZWZpbmUgTWVkaWFTb3VyY2VQcml2YXRlQ2xp
ZW50X2gKKyNwcmFnbWEgb25jZQogCiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKIAogI2luY2x1
ZGUgIlBsYXRmb3JtVGltZVJhbmdlcy5oIgogI2luY2x1ZGUgPHd0Zi9Mb2dnZXIuaD4KLSNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgTWVkaWFTb3VyY2VQcml2YXRlOwogCi1jbGFzcyBNZWRp
YVNvdXJjZVByaXZhdGVDbGllbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxNZWRpYVNvdXJjZVByaXZh
dGVDbGllbnQ+IHsKK2NsYXNzIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCA6IHB1YmxpYyBDYW5N
YWtlV2Vha1B0cjxNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQ+IHsKIHB1YmxpYzoKICAgICB2aXJ0
dWFsIH5NZWRpYVNvdXJjZVByaXZhdGVDbGllbnQoKSA9IGRlZmF1bHQ7CiAKQEAgLTU5LDUgKzU4
LDMgQEAgcHVibGljOgogfQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NPVVJDRSkKLQotI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb24uY3BwCmluZGV4IDcwZWQwYmVkZTFhN2JkNDg4MjBjYTA0MzcxNDcyOGQwMjY0Mjc2NjYu
LmRmYTM4Mzc2MjIzYzdkZjUzMmI2NGJjNjdlMTE4NzhlZTgwNTRkM2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwCkBAIC0y
MDUsNyArMjA1LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmxvYWQo
Y29uc3QgU3RyaW5nJiB1cmwpCiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotdm9pZCBN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29u
dGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKQordm9pZCBNZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb246OmxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBN
ZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKQogewogICAgIHNldE5ldHdvcmtTdGF0ZShNZWRpYVBs
YXllcjo6TmV0d29ya1N0YXRlOjpGb3JtYXRFcnJvcik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRl
QVZGb3VuZGF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgKaW5kZXggNDQ4NDMyYWU3ZmNk
MzE2OTdjMjA5MWRmMjMxMjVjYjVmYzFlOTgxOS4uOWU5ZWRkNGQzMDY2ZTU2MjgwODFkMGFhNDc1
MTgwMDY2MzYyOGIwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb24uaApAQCAtMTY0LDcgKzE2NCw3IEBAIHByb3RlY3RlZDoKICAgICAv
LyBNZWRpYVBsYXllclByaXZhdGVQcml2YXRlSW50ZXJmYWNlIG92ZXJyaWRlcy4KICAgICB2b2lk
IGxvYWQoY29uc3QgU3RyaW5nJiB1cmwpIG92ZXJyaWRlOwogI2lmIEVOQUJMRShNRURJQV9TT1VS
Q0UpCi0gICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFT
b3VyY2VQcml2YXRlQ2xpZW50Kikgb3ZlcnJpZGU7CisgICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYs
IGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Jikgb3ZlcnJpZGU7
CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChNZWRpYVN0
cmVhbVByaXZhdGUmKSBvdmVycmlkZSB7IHNldE5ldHdvcmtTdGF0ZShNZWRpYVBsYXllcjo6TmV0
d29ya1N0YXRlOjpGb3JtYXRFcnJvcik7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U291cmNlQVZGT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmgKaW5kZXgg
MWM1N2ZmOGQ2MGVkNjQzYzU2MDA5NzQ2ZjQxNzE3ZWE1MmI1ZjA3OC4uMTFkN2VlNThjNjBkMDg5
YWNkZWIxMmY2ZjgzNWQ3YjE1ZTAxZjZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFT
b3VyY2VBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmgKQEAg
LTE2Nyw3ICsxNjcsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIC8vIE1lZGlhUGxheWVyUHJp
dmF0ZUludGVyZmFjZQogICAgIHZvaWQgbG9hZChjb25zdCBTdHJpbmcmIHVybCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3Vy
Y2VQcml2YXRlQ2xpZW50Kikgb3ZlcnJpZGU7CisgICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNv
bnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Jikgb3ZlcnJpZGU7CiAj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2b2lkIGxvYWQoTWVkaWFTdHJlYW1Qcml2YXRl
Jikgb3ZlcnJpZGU7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNl
QVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbQppbmRleCBkMThm
Mzk2ZGZlOWRiMzQ0YzAxMmU4MWNlZDAyZGE1NWM4MDY4MGNhLi4zZWYxYWJjNWM3MTBlNjNiMmQ0
ODRhMzI3MGU5ZTBjYjFmYmQ3ZTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJj
ZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCkBAIC0y
ODAsNyArMjgwLDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6
OmxvYWQoY29uc3QgU3RyaW5nJikKICAgICBtX3BsYXllci0+bmV0d29ya1N0YXRlQ2hhbmdlZCgp
OwogfQogCi12b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6bG9hZChj
b25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCog
Y2xpZW50KQordm9pZCBNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OmxvYWQo
Y29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQm
IGNsaWVudCkKIHsKICAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3Ry
ZWFtQVZGT2JqQy5oCmluZGV4IDBlNzQxODdjMTMwZDVkYzZmZWNlZGY3ZjY3ZThiMTkxMGJmMmMz
NGEuLmM0YTMxYmU1NWM1M2U5NGRkY2Y1MTQ4ZTVkM2E1Y2FlODkzMzI1ZGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U3RyZWFtQVZGT2JqQy5oCkBAIC05NSw3ICs5NSw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGxv
YWQoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLSAg
ICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3Qg
Q29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNlbmRp
ZgogICAgIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSBvdmVycmlkZTsKICAgICB2b2lk
IGNhbmNlbExvYWQoKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3Ry
ZWFtQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5tbQppbmRleCA5
ZTA1OTc4NjRhNjU2MzMzMjQwMWM5MTMxOWIzYjg2NDYxMzQ2Y2IwLi4yNjY3Y2FmNjk5MjEwMDUx
MjJhZWJmNWUwMzEyMGY2ZjlmYmI4ZGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0
cmVhbUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLm1tCkBA
IC00NTAsNyArNDUwLDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9i
akM6OmxvYWQoY29uc3QgU3RyaW5nJikKIH0KIAogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi12
b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQzo6bG9hZChjb25zdCBVUkwm
LCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopCit2b2lkIE1l
ZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQzo6bG9hZChjb25zdCBVUkwmLCBjb25z
dCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpCiB7CiAgICAgLy8gVGhp
cyBtZWRpYSBlbmdpbmUgb25seSBzdXBwb3J0cyBNZWRpYVN0cmVhbSBVUkxzLgogICAgIHNjaGVk
dWxlRGVmZXJyZWRUYXNrKFt0aGlzXSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpD
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLmgKaW5kZXggODk1MWIyNDdkZDAwMTUwZWQxNmNlMDQx
YWNjZWNiYmZjYmVkNWY4YS4uOWMyOGM0OWYzMGMwYzRmMzIxMDE0Njg2YTMyMTkxMmVkYjExZTRi
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFW
Rk9iakMuaApAQCAtNTksNyArNTksNyBAQCBjbGFzcyBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpD
IGZpbmFsCiAjZW5kaWYKIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPE1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakM+IGNyZWF0ZShNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMm
LCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKTsKKyAgICBzdGF0aWMgUmVmPE1lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakM+IGNyZWF0ZShNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKTsKICAgICB2aXJ0dWFsIH5NZWRpYVNvdXJj
ZVByaXZhdGVBVkZPYmpDKCk7CiAKICAgICBNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFW
Rk9iakMqIHBsYXllcigpIGNvbnN0IHsgcmV0dXJuIG1fcGxheWVyLmdldCgpOyB9CkBAIC0xMjAs
NyArMTIwLDcgQEAgcHVibGljOgogICAgIHZvaWQgZmFpbGVkVG9DcmVhdGVSZW5kZXJlcihSZW5k
ZXJlclR5cGUpOwogCiBwcml2YXRlOgotICAgIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMoTWVk
aWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xp
ZW50Kik7CisgICAgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakMmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKTsKIAogICAgIHZv
aWQgc291cmNlQnVmZmVyUHJpdmF0ZURpZENoYW5nZUFjdGl2ZVN0YXRlKFNvdXJjZUJ1ZmZlclBy
aXZhdGVBVkZPYmpDKiwgYm9vbCBhY3RpdmUpOwogICAgIHZvaWQgc291cmNlQnVmZmVyUHJpdmF0
ZURpZFJlY2VpdmVJbml0aWFsaXphdGlvblNlZ21lbnQoU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akMqKTsKQEAgLTEzNCw3ICsxMzQsNyBAQCBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQzsKIAogICAgIFdlYWtQdHI8TWVkaWFQbGF5ZXJQcml2YXRl
TWVkaWFTb3VyY2VBVkZPYmpDPiBtX3BsYXllcjsKLSAgICBSZWZQdHI8TWVkaWFTb3VyY2VQcml2
YXRlQ2xpZW50PiBtX2NsaWVudDsKKyAgICBXZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVu
dD4gbV9jbGllbnQ7CiAgICAgVmVjdG9yPFJlZlB0cjxTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2Jq
Qz4+IG1fc291cmNlQnVmZmVyczsKICAgICBWZWN0b3I8U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akMqPiBtX2FjdGl2ZVNvdXJjZUJ1ZmZlcnM7CiAgICAgRGVxdWU8U291cmNlQnVmZmVyUHJpdmF0
ZUFWRk9iakMqPiBtX3NvdXJjZUJ1ZmZlcnNOZWVkaW5nU2Vzc2lvbnM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNv
dXJjZVByaXZhdGVBVkZPYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQppbmRleCAxMjAx
YjcyNmJkMDQ3YzVmMTEwZjcxNGFiMTAyMzE5YTYxNjIyY2JmLi5jNjI1NDU3YWZjMTY2M2FkZmM0
NjIxZDI2YzI2MWJiZDI5NWM1NGNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0KQEAgLTQ2LDE0ICs0NiwxNCBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAjcHJhZ21hIG1hcmsgLQogI3ByYWdtYSBtYXJrIE1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakMKIAotUmVmPE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM+IE1lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakM6OmNyZWF0ZShNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMmIHBhcmVudCwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGllbnQpCitSZWY8TWVkaWFT
b3VyY2VQcml2YXRlQVZGT2JqQz4gTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y3JlYXRlKE1l
ZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYgcGFyZW50LCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQmIGNsaWVudCkKIHsKICAgICBhdXRvIG1lZGlhU291cmNlUHJpdmF0ZSA9IGFk
b3B0UmVmKCpuZXcgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhwYXJlbnQsIGNsaWVudCkpOwot
ICAgIGNsaWVudC0+c2V0UHJpdmF0ZUFuZE9wZW4obWVkaWFTb3VyY2VQcml2YXRlLmNvcHlSZWYo
KSk7CisgICAgY2xpZW50LnNldFByaXZhdGVBbmRPcGVuKG1lZGlhU291cmNlUHJpdmF0ZS5jb3B5
UmVmKCkpOwogICAgIHJldHVybiBtZWRpYVNvdXJjZVByaXZhdGU7CiB9CiAKLU1lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakM6Ok1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMoTWVkaWFQbGF5ZXJQcml2
YXRlTWVkaWFTb3VyY2VBVkZPYmpDJiBwYXJlbnQsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCog
Y2xpZW50KQorTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6TWVkaWFTb3VyY2VQcml2YXRlQVZG
T2JqQyhNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMmIHBhcmVudCwgTWVkaWFT
b3VyY2VQcml2YXRlQ2xpZW50JiBjbGllbnQpCiAgICAgOiBtX3BsYXllcihwYXJlbnQpCiAgICAg
LCBtX2NsaWVudChjbGllbnQpCiAgICAgLCBtX2lzRW5kZWQoZmFsc2UpCkBAIC02NCw3ICs2NCw3
IEBAIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6Ok1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMo
TWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyCiB7CiAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElG
SUVSKTsKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKLSAgICBtX2NsaWVudC0+c2V0TG9nSWRl
bnRpZmllcihtX2xvZ0lkZW50aWZpZXIpOworICAgIGNsaWVudC5zZXRMb2dJZGVudGlmaWVyKG1f
bG9nSWRlbnRpZmllcik7CiAjZW5kaWYKIH0KIApAQCAtMTIxLDEyICsxMjEsMTYgQEAgdm9pZCBN
ZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpyZW1vdmVTb3VyY2VCdWZmZXIoU291cmNlQnVmZmVy
UHJpdmF0ZSogYnVmZmVyKQogCiBNZWRpYVRpbWUgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6
ZHVyYXRpb24oKSBjb25zdAogewotICAgIHJldHVybiBtX2NsaWVudC0+ZHVyYXRpb24oKTsKKyAg
ICBpZiAobV9jbGllbnQpCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+ZHVyYXRpb24oKTsKKyAg
ICByZXR1cm4gTWVkaWFUaW1lOjppbnZhbGlkVGltZSgpOwogfQogCiBzdGQ6OnVuaXF1ZV9wdHI8
UGxhdGZvcm1UaW1lUmFuZ2VzPiBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpidWZmZXJlZCgp
CiB7Ci0gICAgcmV0dXJuIG1fY2xpZW50LT5idWZmZXJlZCgpOworICAgIGlmIChtX2NsaWVudCkK
KyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5idWZmZXJlZCgpOworICAgIHJldHVybiBudWxscHRy
OwogfQogCiB2b2lkIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmR1cmF0aW9uQ2hhbmdlZChj
b25zdCBNZWRpYVRpbWUmKQpAQCAtMjM2LDcgKzI0MCw4IEBAIHZvaWQgTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6d2lsbFNlZWsoKQogCiB2b2lkIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6
OnNlZWtUb1RpbWUoY29uc3QgTWVkaWFUaW1lJiB0aW1lKQogewotICAgIG1fY2xpZW50LT5zZWVr
VG9UaW1lKHRpbWUpOworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9jbGllbnQtPnNlZWtU
b1RpbWUodGltZSk7CiB9CiAKIE1lZGlhVGltZSBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpm
YXN0U2Vla1RpbWVGb3JNZWRpYVRpbWUoY29uc3QgTWVkaWFUaW1lJiB0YXJnZXRUaW1lLCBjb25z
dCBNZWRpYVRpbWUmIG5lZ2F0aXZlVGhyZXNob2xkLCBjb25zdCBNZWRpYVRpbWUmIHBvc2l0aXZl
VGhyZXNob2xkKQpAQCAtMzU3LDcgKzM2Miw4IEBAIFdURkxvZ0NoYW5uZWwmIE1lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakM6OmxvZ0NoYW5uZWwoKSBjb25zdAogCiB2b2lkIE1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakM6OmZhaWxlZFRvQ3JlYXRlUmVuZGVyZXIoUmVuZGVyZXJUeXBlIHR5cGUpCiB7
Ci0gICAgbV9jbGllbnQtPmZhaWxlZFRvQ3JlYXRlUmVuZGVyZXIodHlwZSk7CisgICAgaWYgKG1f
Y2xpZW50KQorICAgICAgICBtX2NsaWVudC0+ZmFpbGVkVG9DcmVhdGVSZW5kZXJlcih0eXBlKTsK
IH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cAppbmRleCAwMWZlZmVhMzJkMjEzNmRmZDFlMWYzYzI1YjgxNjI2OTY5MGZiZDE0Li5mODM2ZTM3
YTg1OWE4NDUxZWM4NDM2MGU2OTllOTE5MmYxMGJiM2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMzUzLDcgKzM1Myw3IEBAIHZvaWQg
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpsb2FkKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5n
KQogfQogCiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLXZvaWQgTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyOjpsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3Vy
Y2VQcml2YXRlQ2xpZW50KikKK3ZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpsb2Fk
KGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50
JikKIHsKICAgICAvLyBQcm9wZXJseSBmYWlsIHNvIHRoZSBnbG9iYWwgTWVkaWFQbGF5ZXIgdHJp
ZXMgdG8gZmFsbGJhY2sgdG8gdGhlIG5leHQgTWVkaWFQbGF5ZXJQcml2YXRlLgogICAgIG1fbmV0
d29ya1N0YXRlID0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6Rm9ybWF0RXJyb3I7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQ
bGF5ZXJQcml2YXRlR1N0cmVhbWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKaW5kZXggMzJlZDNhZThi
MjljMDBmZTg4MTRiZGQwNmU2NDk2ODU1YTdhZGVlMC4uZDFjYmJkZmVkZjlmNjllOTQzMjc4MmU1
M2QxYWFhYzlmODJlN2U1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXIuaApAQCAtMTM4LDcgKzEzOCw3IEBAIHB1YmxpYzoKICAgICBib29sIGhhc0F1ZGlv
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9oYXNBdWRpbzsgfQogICAgIHZvaWQgbG9hZChjb25z
dCBTdHJpbmcgJnVybCkgb3ZlcnJpZGU7CiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLSAgICB2
b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZh
dGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29u
dGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNlbmRpZgog
I2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0
ZSYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0UuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJNU0UuY3BwCmluZGV4IDJjZWM2ODQ2NmZmYzNkOTE5NzZjMjkwNGJkNzUw
YmJhNmI4NjllNzUuLjU2YTgxNjY5MzdhOTE5NDQwMWYzYWFkZjI0MTZlODIzZWUyMjc5YTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
ck1TRS5jcHAKQEAgLTEyMyw3ICsxMjMsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lck1TRTo6bG9hZChjb25zdCBTdHJpbmcmKQogICAgIG1fcGxheWVyLT5uZXR3b3JrU3RhdGVD
aGFuZ2VkKCk7CiB9CiAKLXZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFOjpsb2Fk
KGNvbnN0IFVSTCYgdXJsLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudCogbWVkaWFTb3VyY2UpCit2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRTo6
bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZh
dGVDbGllbnQmIG1lZGlhU291cmNlKQogewogICAgIGF1dG8gbXNlQmxvYlVSSSA9IG1ha2VTdHJp
bmcoIm1lZGlhc291cmNlIiwgdXJsLnN0cmluZygpLmlzRW1wdHkoKSA/ICJibG9iOi8vIl9zIDog
dXJsLnN0cmluZygpKTsKICAgICBHU1RfREVCVUcoIkxvYWRpbmcgJXMiLCBtc2VCbG9iVVJJLmFz
Y2lpKCkuZGF0YSgpKTsKQEAgLTMxNyw3ICszMTcsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lck1TRTo6ZHVyYXRpb25DaGFuZ2VkKCkKICAgICBBU1NFUlQoaXNNYWluVGhyZWFk
KCkpOwogCiAgICAgTWVkaWFUaW1lIHByZXZpb3VzRHVyYXRpb24gPSBtX21lZGlhVGltZUR1cmF0
aW9uOwotICAgIG1fbWVkaWFUaW1lRHVyYXRpb24gPSBtX21lZGlhU291cmNlLT5kdXJhdGlvbigp
OworICAgIG1fbWVkaWFUaW1lRHVyYXRpb24gPSBtX21lZGlhU291cmNlID8gbV9tZWRpYVNvdXJj
ZS0+ZHVyYXRpb24oKSA6IE1lZGlhVGltZTo6aW52YWxpZFRpbWUoKTsKIAogICAgIEdTVF9UUkFD
RSgicHJldmlvdXM9JXMsIG5ldz0lcyIsIHRvU3RyaW5nKHByZXZpb3VzRHVyYXRpb24pLnV0Zjgo
KS5kYXRhKCksIHRvU3RyaW5nKG1fbWVkaWFUaW1lRHVyYXRpb24pLnV0ZjgoKS5kYXRhKCkpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
bXNlL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJN
U0UuaAppbmRleCBmMjFjZjAwYTcyZmJlYzVlMTMzNmM3ZDkxYWZiZmI1NDAxODRiZDdmLi43ZmRk
N2YwZjVjMWY4MDQ5ZmJjZTk0ZDQ3MjJlYjRlMTg1YTBjOTUxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lck1TRS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFLmgKQEAgLTQ5LDcgKzQ5
LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVyTWVkaWFFbmdpbmUoTWVkaWFF
bmdpbmVSZWdpc3RyYXIpOwogCiAgICAgdm9pZCBsb2FkKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRl
OwotICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291
cmNlUHJpdmF0ZUNsaWVudCopIG92ZXJyaWRlOworICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBj
b25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIG92ZXJyaWRlOwog
CiAgICAgdm9pZCB1cGRhdGVEb3dubG9hZEJ1ZmZlcmluZ0ZsYWcoKSBvdmVycmlkZSB7IH07CiAK
QEAgLTEwNSw3ICsxMDUsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBwcm9wYWdhdGVSZWFkeVN0
YXRlVG9QbGF5ZXIoKTsKIAotICAgIFJlZlB0cjxNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQ+IG1f
bWVkaWFTb3VyY2U7CisgICAgV2Vha1B0cjxNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQ+IG1fbWVk
aWFTb3VyY2U7CiAgICAgUmVmUHRyPE1lZGlhU291cmNlUHJpdmF0ZUdTdHJlYW1lcj4gbV9tZWRp
YVNvdXJjZVByaXZhdGU7CiAgICAgTWVkaWFUaW1lIG1fbWVkaWFUaW1lRHVyYXRpb247CiAgICAg
Ym9vbCBtX2FyZUR1cmF0aW9uQ2hhbmdlc0Jsb2NrZWQgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2hvbGVwdW5jaC9NZWRpYVBsYXllclByaXZh
dGVIb2xlUHVuY2guaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2hvbGVwdW5j
aC9NZWRpYVBsYXllclByaXZhdGVIb2xlUHVuY2guaAppbmRleCBlNzBkMDU4ZjY0ZjdmMTVkMzE0
YzVhNDc0YjdhZTY1YjZkYTI2NDEzLi4zMWYwNDZlZWM3ZDRmNzJjODk0Y2Q5YzY3ZjI5ZmVmOGQ0
MTdmZTE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ob2xl
cHVuY2gvTWVkaWFQbGF5ZXJQcml2YXRlSG9sZVB1bmNoLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvaG9sZXB1bmNoL01lZGlhUGxheWVyUHJpdmF0ZUhvbGVQdW5jaC5o
CkBAIC01Myw3ICs1Myw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgbG9hZChjb25zdCBTdHJpbmcm
KSBmaW5hbDsKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZvaWQgbG9hZChjb25zdCBV
UkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopIGZpbmFs
IHsgfTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRp
YVNvdXJjZVByaXZhdGVDbGllbnQmKSBmaW5hbCB7IH07CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSBmaW5hbCB7IH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01v
Y2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwCmluZGV4IDYwODgw
YTAxNWVlM2QxNTU5ODRhMDBjMjIzZWFiZTUxODE4NDA3NzAuLmMwZjllYzFhYzBlZDcwMTJjMDYy
ZjViMDU1MTk5YmUwZTFiZDI4NDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVk
aWFTb3VyY2UuY3BwCkBAIC0xMTEsOSArMTExLDkgQEAgdm9pZCBNb2NrTWVkaWFQbGF5ZXJNZWRp
YVNvdXJjZTo6bG9hZChjb25zdCBTdHJpbmcmKQogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
fQogCi12b2lkIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpsb2FkKGNvbnN0IFVSTCYsIGNv
bnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBzb3VyY2UpCit2b2lk
IE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRl
bnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JiBzb3VyY2UpCiB7Ci0gICAgbV9tZWRp
YVNvdXJjZVByaXZhdGUgPSBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpjcmVhdGUoKnRoaXMsICpz
b3VyY2UpOworICAgIG1fbWVkaWFTb3VyY2VQcml2YXRlID0gTW9ja01lZGlhU291cmNlUHJpdmF0
ZTo6Y3JlYXRlKCp0aGlzLCBzb3VyY2UpOwogfQogCiB2b2lkIE1vY2tNZWRpYVBsYXllck1lZGlh
U291cmNlOjpjYW5jZWxMb2FkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3Vy
Y2UuaAppbmRleCBkMzI5YmFkNjg0Y2UzNWE3NmViMTM2ZjhlMzJlMDIxMzBhNjEzM2JmLi4xMWJm
YTk0Y2U2MTgxMWI3M2YzNTEyYTAyODZlOTY2MzFkMDI3N2YyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291
cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2Nr
TWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oCkBAIC02Nyw3ICs2Nyw3IEBAIHB1YmxpYzoKIHByaXZh
dGU6CiAgICAgLy8gTWVkaWFQbGF5ZXJQcml2YXRlIE92ZXJyaWRlcwogICAgIHZvaWQgbG9hZChj
b25zdCBTdHJpbmcmIHVybCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNv
bnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Kikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQ
cml2YXRlQ2xpZW50Jikgb3ZlcnJpZGU7CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2
b2lkIGxvYWQoTWVkaWFTdHJlYW1Qcml2YXRlJikgb3ZlcnJpZGUgeyB9CiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlh
U291cmNlUHJpdmF0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291
cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuY3BwCmluZGV4IDZjOTE3ZTQzNWFhYTQ0NWY4Njg5
YmVhZWU0NDU4ZTEyZjI0OWMyNTcuLmIxZjliNmMwNDEzNTZjMTFjZmYxNWFjMTc3MjI1ZGQ5YjZl
MGI0YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3Vy
Y2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmNwcApAQCAtNTIsNyAr
NTIsNyBAQCBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlKE1v
Y2tNZWRpYVBsYXllck1lZGlhU291cmNlJiBwYXJlbgogI2VuZGlmCiB7CiAjaWYgIVJFTEVBU0Vf
TE9HX0RJU0FCTEVECi0gICAgbV9jbGllbnQtPnNldExvZ0lkZW50aWZpZXIobV9wbGF5ZXIubWVk
aWFQbGF5ZXJMb2dJZGVudGlmaWVyKCkpOworICAgIGNsaWVudC5zZXRMb2dJZGVudGlmaWVyKG1f
cGxheWVyLm1lZGlhUGxheWVyTG9nSWRlbnRpZmllcigpKTsKICNlbmRpZgogfQogCkBAIC04NSwx
MiArODUsMTYgQEAgdm9pZCBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpyZW1vdmVTb3VyY2VCdWZm
ZXIoU291cmNlQnVmZmVyUHJpdmF0ZSogYnVmZmVyKQogCiBNZWRpYVRpbWUgTW9ja01lZGlhU291
cmNlUHJpdmF0ZTo6ZHVyYXRpb24oKQogewotICAgIHJldHVybiBtX2NsaWVudC0+ZHVyYXRpb24o
KTsKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+ZHVyYXRpb24o
KTsKKyAgICByZXR1cm4gTWVkaWFUaW1lOjppbnZhbGlkVGltZSgpOwogfQogCiBzdGQ6OnVuaXF1
ZV9wdHI8UGxhdGZvcm1UaW1lUmFuZ2VzPiBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpidWZmZXJl
ZCgpCiB7Ci0gICAgcmV0dXJuIG1fY2xpZW50LT5idWZmZXJlZCgpOworICAgIGlmIChtX2NsaWVu
dCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5idWZmZXJlZCgpOworICAgIHJldHVybiBudWxs
cHRyOwogfQogCiB2b2lkIE1vY2tNZWRpYVNvdXJjZVByaXZhdGU6OmR1cmF0aW9uQ2hhbmdlZChj
b25zdCBNZWRpYVRpbWUmKQpAQCAtMTYxLDcgKzE2NSw4IEBAIGJvb2wgTW9ja01lZGlhU291cmNl
UHJpdmF0ZTo6aGFzVmlkZW8oKSBjb25zdAogCiB2b2lkIE1vY2tNZWRpYVNvdXJjZVByaXZhdGU6
OnNlZWtUb1RpbWUoY29uc3QgTWVkaWFUaW1lJiB0aW1lKQogewotICAgIG1fY2xpZW50LT5zZWVr
VG9UaW1lKHRpbWUpOworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9jbGllbnQtPnNlZWtU
b1RpbWUodGltZSk7CiB9CiAKIE1lZGlhVGltZSBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpzZWVr
VG9UaW1lKGNvbnN0IE1lZGlhVGltZSYgdGFyZ2V0VGltZSwgY29uc3QgTWVkaWFUaW1lJiBuZWdh
dGl2ZVRocmVzaG9sZCwgY29uc3QgTWVkaWFUaW1lJiBwb3NpdGl2ZVRocmVzaG9sZCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlh
U291cmNlUHJpdmF0ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJj
ZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmgKaW5kZXggOTRmZjU4Y2JiOGFjMzdjNThhZDExNzQ1
NDk5ZWE2OWNmYzg5MzVlZC4uNTFjZmJiNGU3MmVkNzg2MWVkMjZmMWY2ODdlZGI4ZGU3NGE3MWQz
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9N
b2NrTWVkaWFTb3VyY2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9j
ay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmgKQEAgLTk2LDcgKzk2LDcgQEAg
cHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGU7CiAKICAg
ICBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZSYgbV9wbGF5ZXI7Ci0gICAgUmVmPE1lZGlhU291
cmNlUHJpdmF0ZUNsaWVudD4gbV9jbGllbnQ7CisgICAgV2Vha1B0cjxNZWRpYVNvdXJjZVByaXZh
dGVDbGllbnQ+IG1fY2xpZW50OwogICAgIFZlY3RvcjxSZWZQdHI8TW9ja1NvdXJjZUJ1ZmZlclBy
aXZhdGU+PiBtX3NvdXJjZUJ1ZmZlcnM7CiAgICAgVmVjdG9yPE1vY2tTb3VyY2VCdWZmZXJQcml2
YXRlKj4gbV9hY3RpdmVTb3VyY2VCdWZmZXJzOwogICAgIGJvb2wgbV9pc0VuZGVkIHsgZmFsc2Ug
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRp
YVBsYXllclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVN
ZWRpYVBsYXllclByb3h5LmNwcAppbmRleCBhYzE0ZDcxNjcxMjVlNGJhYzQ0YmFiOWQwMDY0MmFj
YzFlNWE4MmJhLi45MTFhZDI1NDc2OTM1Y2Y1NzI2OWU0MDFlZWJkZGE4NjlkODlmYzAyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlh
UGxheWVyUHJveHkuY3BwCkBAIC0xNzEsNyArMTcxLDcgQEAgdm9pZCBSZW1vdGVNZWRpYVBsYXll
clByb3h5Ojpsb2FkTWVkaWFTb3VyY2UoVVJMJiYgdXJsLCBjb25zdCBXZWJDb3JlOjpDb250ZW50
VHkKICAgICB9CiAKICAgICBtX21lZGlhU291cmNlUHJveHkgPSBhZG9wdFJlZigqbmV3IFJlbW90
ZU1lZGlhU291cmNlUHJveHkoKm1fbWFuYWdlci0+Z3B1Q29ubmVjdGlvblRvV2ViUHJvY2Vzcygp
LCBtZWRpYVNvdXJjZUlkZW50aWZpZXIsIHdlYk1QYXJzZXJFbmFibGVkLCAqdGhpcykpOwotICAg
IG1fcGxheWVyLT5sb2FkKHVybCwgY29udGVudFR5cGUsIG1fbWVkaWFTb3VyY2VQcm94eS5nZXQo
KSk7CisgICAgbV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50VHlwZSwgKm1fbWVkaWFTb3VyY2VQ
cm94eSk7CiAgICAgZ2V0Q29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uKTsKICAgICBjb21wbGV0
aW9uSGFuZGxlcihXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVNvdXJjZVByb3h5LmggYi9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFTb3VyY2VQcm94eS5oCmluZGV4
IGJmMDk5YjM1ODVkNDliYTJhNzhlZjg0ZDFiNGZiNjM0N2JiN2JlNjcuLmM5NWNmNzIzNGFkZWUx
ZDRlZjZhNTQ4M2EyZDM2Yjk0NzJmNDkxZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVNvdXJjZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhU291cmNlUHJveHkuaApAQCAtMzMsNiArMzMs
NyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFTb3VyY2VQcml2YXRlLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9NZWRpYVNvdXJjZVByaXZhdGVDbGllbnQuaD4KICNpbmNsdWRlIDx3dGYvTWVkaWFU
aW1lLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0
ci5oPgogCiBuYW1lc3BhY2UgSVBDIHsKQEAgLTUyLDcgKzUzLDggQEAgY2xhc3MgR1BVQ29ubmVj
dGlvblRvV2ViUHJvY2VzczsKIGNsYXNzIFJlbW90ZU1lZGlhUGxheWVyUHJveHk7CiAKIGNsYXNz
IFJlbW90ZU1lZGlhU291cmNlUHJveHkgZmluYWwKLSAgICA6IHB1YmxpYyBXZWJDb3JlOjpNZWRp
YVNvdXJjZVByaXZhdGVDbGllbnQKKyAgICA6IHB1YmxpYyBSZWZDb3VudGVkPFJlbW90ZU1lZGlh
U291cmNlUHJveHk+CisgICAgLCBwdWJsaWMgV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xp
ZW50CiAgICAgLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyIHsKICAgICBXVEZfTUFLRV9G
QVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcAppbmRl
eCA0MGVlMzI3MjhhOTc2ODU4YTBjODE5N2YzMzUzMDBmMzBiYTA5M2I5Li5jMzJhZWY5Nzc1ZjUx
NTNkNzFkNzA0MTk3NWNhNWVkZTUzYzIzYWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUu
Y3BwCkBAIC03OTAsNyArNzkwLDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnJl
bW90ZVZpZGVvVHJhY2tDb25maWd1cmF0aW9uQ2hhbmdlZChUcmFja1ByaXZhdGUKIH0KIAogI2lm
IEVOQUJMRShNRURJQV9TT1VSQ0UpCi12b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6bG9h
ZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5cGUmIGNvbnRlbnRUeXBlLCBNZWRpYVNv
dXJjZVByaXZhdGVDbGllbnQqIGNsaWVudCkKK3ZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3Rl
Ojpsb2FkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBDb250ZW50VHlwZSYgY29udGVudFR5cGUsIE1l
ZGlhU291cmNlUHJpdmF0ZUNsaWVudCYgY2xpZW50KQogewogICAgIGlmIChtX3JlbW90ZUVuZ2lu
ZUlkZW50aWZpZXIgPT0gTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyOjpB
VkZvdW5kYXRpb25NU0UpIHsKICAgICAgICAgYXV0byBpZGVudGlmaWVyID0gUmVtb3RlTWVkaWFT
b3VyY2VJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKaW5k
ZXggNDNhMjllZjFjY2M1OTI2MmU3OTdhYTU4Y2E2OTlmMjlkZTRmNDU2My4uYzg4MTIzMDE3NDEz
YzhjYmVhYTk2NGQzODllZTMyZTE2MjUzYmRlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5o
CkBAIC0xOTgsNyArMTk4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHByZXBhcmVGb3JQbGF5YmFj
ayhib29sIHByaXZhdGVNb2RlLCBXZWJDb3JlOjpNZWRpYVBsYXllcjo6UHJlbG9hZCwgYm9vbCBw
cmVzZXJ2ZXNQaXRjaCwgYm9vbCBwcmVwYXJlKSBmaW5hbDsKIAogI2lmIEVOQUJMRShNRURJQV9T
T1VSQ0UpCi0gICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IFdlYkNvcmU6OkNvbnRlbnRU
eXBlJiwgV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KikgZmluYWw7CisgICAgdm9p
ZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IFdlYkNvcmU6OkNvbnRlbnRUeXBlJiwgV2ViQ29yZTo6
TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JikgZmluYWw7CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChXZWJDb3JlOjpNZWRpYVN0cmVhbVByaXZhdGUmKSBm
aW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVk
aWFTb3VyY2VQcml2YXRlUmVtb3RlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlLmNwcAppbmRleCA2YTIwZDc1MGE0OTQ0ZmIz
OGRhNzQ4Mjg5NzA5ZjIwNTVjNTY0MGQxLi43YzQ1MTJhNDAzZTBiODhkN2ZjZTNiMTA4NDcyNzU1
MWViOGFhYTMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuY3BwCkBAIC00NiwxNCArNDYs
MTQgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCi1S
ZWY8TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlPiBNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU6OmNy
ZWF0ZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIFJlbW90ZU1l
ZGlhU291cmNlSWRlbnRpZmllciBpZGVudGlmaWVyLCBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBl
Q2FjaGUmIG1pbWVUeXBlQ2FjaGUsIGNvbnN0IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSYgbWVk
aWFQbGF5ZXJQcml2YXRlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqIGNsaWVudCkKK1JlZjxN
ZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU+IE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6Y3JlYXRl
KEdQVVByb2Nlc3NDb25uZWN0aW9uJiBncHVQcm9jZXNzQ29ubmVjdGlvbiwgUmVtb3RlTWVkaWFT
b3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5cGVDYWNo
ZSYgbWltZVR5cGVDYWNoZSwgY29uc3QgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlJiBtZWRpYVBs
YXllclByaXZhdGUsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYgY2xpZW50KQogewogICAgIGF1
dG8gbWVkaWFTb3VyY2VQcml2YXRlID0gYWRvcHRSZWYoKm5ldyBNZWRpYVNvdXJjZVByaXZhdGVS
ZW1vdGUoZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIGlkZW50aWZpZXIsIG1pbWVUeXBlQ2FjaGUsIG1l
ZGlhUGxheWVyUHJpdmF0ZSwgY2xpZW50KSk7Ci0gICAgY2xpZW50LT5zZXRQcml2YXRlQW5kT3Bl
bihtZWRpYVNvdXJjZVByaXZhdGUuY29weVJlZigpKTsKKyAgICBjbGllbnQuc2V0UHJpdmF0ZUFu
ZE9wZW4obWVkaWFTb3VyY2VQcml2YXRlLmNvcHlSZWYoKSk7CiAgICAgcmV0dXJuIG1lZGlhU291
cmNlUHJpdmF0ZTsKIH0KIAotTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjpNZWRpYVNvdXJjZVBy
aXZhdGVSZW1vdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVByb2Nlc3NDb25uZWN0aW9uLCBS
ZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIgaWRlbnRpZmllciwgUmVtb3RlTWVkaWFQbGF5ZXJN
SU1FVHlwZUNhY2hlJiBtaW1lVHlwZUNhY2hlLCBjb25zdCBNZWRpYVBsYXllclByaXZhdGVSZW1v
dGUmIG1lZGlhUGxheWVyUHJpdmF0ZSwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGllbnQp
CitNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU6Ok1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZShHUFVQ
cm9jZXNzQ29ubmVjdGlvbiYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIFJlbW90ZU1lZGlhU291cmNl
SWRlbnRpZmllciBpZGVudGlmaWVyLCBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUmIG1p
bWVUeXBlQ2FjaGUsIGNvbnN0IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSYgbWVkaWFQbGF5ZXJQ
cml2YXRlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmIGNsaWVudCkKICAgICA6IG1fZ3B1UHJv
Y2Vzc0Nvbm5lY3Rpb24oZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24pCiAgICAgLCBtX2lkZW50aWZpZXIo
aWRlbnRpZmllcikKICAgICAsIG1fbWltZVR5cGVDYWNoZShtaW1lVHlwZUNhY2hlKQpAQCAtNjks
NyArNjksNyBAQCBNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU6Ok1lZGlhU291cmNlUHJpdmF0ZVJl
bW90ZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYgZ3B1UHJvYwogICAgIG1fZ3B1UHJvY2Vzc0Nvbm5l
Y3Rpb24tPm1lc3NhZ2VSZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6
TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRp
Zmllci50b1VJbnQ2NCgpLCAqdGhpcyk7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKLSAg
ICBtX2NsaWVudC0+c2V0TG9nSWRlbnRpZmllcihtX2xvZ0lkZW50aWZpZXIpOworICAgIGNsaWVu
dC5zZXRMb2dJZGVudGlmaWVyKG1fbG9nSWRlbnRpZmllcik7CiAjZW5kaWYKIH0KIApAQCAtMTkx
LDcgKzE5MSw4IEBAIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjpzZXRUaW1lRnVkZ2VG
YWN0b3IoY29uc3QgTWVkaWFUaW1lJiBmdWRnZUZhY3RvcikKIAogdm9pZCBNZWRpYVNvdXJjZVBy
aXZhdGVSZW1vdGU6OnNlZWtUb1RpbWUoY29uc3QgTWVkaWFUaW1lJiB0aW1lKQogewotICAgIG1f
Y2xpZW50LT5zZWVrVG9UaW1lKHRpbWUpOworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9j
bGllbnQtPnNlZWtUb1RpbWUodGltZSk7CiB9CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3Vy
Y2VQcml2YXRlUmVtb3RlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01l
ZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5oCmluZGV4IDRkMWE2ZjZhZDFmZWE3NTQ3MzE3MzUwMzNl
YjhmNGU1MjI3NWU3NmQuLmU3YWUxZTliMDM3OTA3OTBkZmU3YmUxMzQwMDQ2NGI2YzIzZmY3MGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3Vy
Y2VQcml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRp
YS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuaApAQCAtNTcsNyArNTcsNyBAQCBjbGFzcyBNZWRp
YVNvdXJjZVByaXZhdGVSZW1vdGUgZmluYWwKICNlbmRpZgogewogcHVibGljOgotICAgIHN0YXRp
YyBSZWY8TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlPiBjcmVhdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rp
b24mLCBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5
cGVDYWNoZSYsIGNvbnN0IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSYsIFdlYkNvcmU6Ok1lZGlh
U291cmNlUHJpdmF0ZUNsaWVudCopOworICAgIHN0YXRpYyBSZWY8TWVkaWFTb3VyY2VQcml2YXRl
UmVtb3RlPiBjcmVhdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mLCBSZW1vdGVNZWRpYVNvdXJjZUlk
ZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5cGVDYWNoZSYsIGNvbnN0IE1lZGlhUGxh
eWVyUHJpdmF0ZVJlbW90ZSYsIFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpOwog
ICAgIHZpcnR1YWwgfk1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZSgpOwogCiAgICAgLy8gTWVkaWFT
b3VyY2VQcml2YXRlIG92ZXJyaWRlcwpAQCAtODIsNyArODIsNyBAQCBwdWJsaWM6CiAjZW5kaWYK
IAogcHJpdmF0ZToKLSAgICBNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUoR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24mLCBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTUlN
RVR5cGVDYWNoZSYsIGNvbnN0IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSYsIFdlYkNvcmU6Ok1l
ZGlhU291cmNlUHJpdmF0ZUNsaWVudCopOworICAgIE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZShH
UFVQcm9jZXNzQ29ubmVjdGlvbiYsIFJlbW90ZU1lZGlhU291cmNlSWRlbnRpZmllciwgUmVtb3Rl
TWVkaWFQbGF5ZXJNSU1FVHlwZUNhY2hlJiwgY29uc3QgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3Rl
JiwgV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Jik7CiAKICAgICB2b2lkIGRpZFJl
Y2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIGZpbmFsOwogICAg
IHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmKTsKQEAgLTkxLDcgKzkxLDcgQEAgcHJp
dmF0ZToKICAgICBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAg
IFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5cGVDYWNoZSYgbV9taW1lVHlwZUNhY2hlOwogICAgIFdl
YWtQdHI8TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlPiBtX21lZGlhUGxheWVyUHJpdmF0ZTsKLSAg
ICBSZWZQdHI8V2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX2NsaWVudDsKKyAg
ICBXZWFrUHRyPFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9jbGllbnQ7CiAg
ICAgVmVjdG9yPFJlZlB0cjxTb3VyY2VCdWZmZXJQcml2YXRlUmVtb3RlPj4gbV9zb3VyY2VCdWZm
ZXJzOwogCiAjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457297</attachid>
            <date>2022-04-11 16:20:27 -0700</date>
            <delta_ts>2022-04-12 08:26:39 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-239088-20220411162026.patch</filename>
            <type>text/plain</type>
            <size>40986</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyNzE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTAwNjhiYmExNzI1ZTJj
N2E3NzVlMjc0YTk4Mjc1ODZlN2EwMDRkYy4uMjQwMDhhOTMwMzExZTIxZWIxMWEwZmU5NmE2Yzcz
MjRkM2RiMWI5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIyLTA0LTExICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIExlYWsgb2YgTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQyBhbmQgUmVtb3RlTWVkaWFTb3VyY2VQcm94eQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM5MDg4CisgICAgICAgIDxyZGFy
Oi8vOTA2OTMwOTQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAg
ICAgIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMgaG9sZHMgYSBzdHJvbmcgcmVmZXJlbmNlIHRv
IGl0cyBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQsIHdoaWNoIGlzCisgICAgICAgIGEgTWVkaWFT
b3VyY2Ugd2hlbiBydW5uaW5nIGluLXByb2Nlc3MsIGJ1dCBhIFJlbW90ZU1lZGlhU291cmNlUHJv
eHkgd2hlbiBydW5uaW5nIGluIG11bHRpLXByb2Nlc3MuCisgICAgICAgIEluIGJvdGggY2FzZXMs
IHRoZSBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQgaG9sZHMgYSBzdHJvbmcgcmVmZXJlbmNlIHRv
IGl0cyBwcml2YXRlIG9iamVjdCBhcyB3ZWxsLgorICAgICAgICBIb3dldmVyLCBpbiB0aGUgbXVs
dGktcHJvY2VzcyBzY2VuYXJpbywgdGhpcyBjeWNsZSBpcyBuZXZlciBicm9rZW4sIGNhdXNpbmcg
YSBsZWFrLgorCisgICAgICAgIFJhdGhlciB0aGFuIGRldGVybWluZSB0aGUgY29ycmVjdCBwb2lu
dCB0byBicmVhayB0aGlzIHJldGFpbi1jeWNsZSwgbW9kaWZ5IE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudAorICAgICAgICB0byBiZSBhIENhbk1ha2VXZWFrUHRyIGFic3RyYWN0IGNsYXNzIChyYXRo
ZXIgdGhhbiBhIFJlZkNvdW50ZWQgb25lKSwgYW5kIGNvbnZlcnQgYWxsIGNhc2VzIHdoZXJlCisg
ICAgICAgIHRoYXQgY2xpZW50J3MgcG9pbnRlciBpcyBzdG9yZWQgZnJvbSBhIFJlZi9SZWZQdHIg
dG8gYSBXZWFrUHRyLiBUaGlzIG1lYW5zIGhhdmluZyB0byBudWxsLWNoZWNrCisgICAgICAgIGV2
ZXJ5IHRpbWUgdGhhdCBwb2ludGVyIGlzIHVzZWQuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c291cmNlL01lZGlhU291cmNlLmg6CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXI6OmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6
OmxvYWRXaXRoTmV4dE1lZGlhRW5naW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllci5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJp
dmF0ZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNs
aWVudC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpsb2FkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRl
TWVkaWFTb3VyY2VBVkZPYmpDLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpsb2Fk
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBs
YXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9i
akMubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFW
Rk9iakM6OmxvYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9v
YmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y3JlYXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6Ok1lZGlhU291cmNlUHJpdmF0
ZUFWRk9iakMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6
ZHVyYXRpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZG
T2JqQzo6YnVmZmVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZG
T2JqQzo6c2Vla1RvVGltZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjpmYWlsZWRUb0NyZWF0ZVJlbmRlcmVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6bG9hZCk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5o
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyTVNFLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJp
dmF0ZUdTdHJlYW1lck1TRTo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJNU0U6OnVuYmxvY2tEdXJhdGlvbkNoYW5nZXMpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
TVNFLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvaG9sZXB1bmNoL01lZGlhUGxheWVy
UHJpdmF0ZUhvbGVQdW5jaC5oOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVkaWFzb3VyY2Uv
TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TW9ja01l
ZGlhUGxheWVyTWVkaWFTb3VyY2U6OmxvYWQpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVk
aWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TW9ja01lZGlhU291cmNlUHJpdmF0ZTo6TW9ja01lZGlhU291cmNlUHJpdmF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpkdXJhdGlvbik6Cisg
ICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpidWZmZXJlZCk6CisgICAg
ICAgIChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpzZWVrVG9UaW1lKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuaDoK
KwogMjAyMi0wNC0xMSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtKU0NdIFJlZHVjZSB1c2Ugb2YgdW5uZWNlc3NhcnkgY3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b20gbnVtYmVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwppbmRleCBlNGY5M2Y4ZTIzMDViNTQ5MzIxZTczMmE3ZThiYzc0MGMw
ZmZjNWQwLi44ZDc5NzZiZDllMWM4ZDMwYmQ1MjZmYWUyYTZlYzAzZGVmMTA2YjczIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDI1IEBACisyMDIyLTA0LTExICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBw
bGUuY29tPgorCisgICAgICAgIExlYWsgb2YgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyBhbmQg
UmVtb3RlTWVkaWFTb3VyY2VQcm94eQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjM5MDg4CisgICAgICAgIDxyZGFyOi8vOTA2OTMwOTQ+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIEFkb3B0IGNoYW5nZXMgdG8g
TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50IG1ha2luZyBpdCBhIENhbk1ha2VXZWFrUHRyIGNsYXNz
LgorCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6bG9hZE1lZGlhU291
cmNlKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhU291cmNlUHJveHku
aDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1v
dGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmxvYWQp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90
ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJl
bW90ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjpNZWRpYVNv
dXJjZVByaXZhdGVSZW1vdGUpOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVNvdXJjZVByaXZhdGVS
ZW1vdGU6OnNlZWtUb1RpbWUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
U291cmNlUHJpdmF0ZVJlbW90ZS5oOgorCiAyMDIyLTA0LTExICBXZW5zb24gSHNpZWggIDx3ZW5z
b25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyODk3ODUpOiBbaU9T
XSBVbmFibGUgdG8gZG91YmxlLWNsaWNrIHRvIHNlbGVjdCBhIHdvcmQgaW4gYSByZWNlaXZlZCBl
bWFpbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9NZWRp
YVNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9NZWRpYVNvdXJj
ZS5oCmluZGV4IGEyNmU1NTNlN2ExY2QzNTBhM2I0NjRmMDNlMTQzOWViNmFlMWYyZDEuLmQ5NTlm
ZWRiYzk5Mjk0YTc2YTZlYWM3MDI0NWFkMzljNzZmYTdkODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmgKQEAgLTM5LDYgKzM5LDcgQEAK
ICNpbmNsdWRlICJNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQuaCIKICNpbmNsdWRlICJVUkxSZWdp
c3RyeS5oIgogI2luY2x1ZGUgPHd0Zi9Mb2dnZXJIZWxwZXIuaD4KKyNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTUwLDcgKzUxLDggQEAgY2xhc3MgU291cmNlQnVmZmVyUHJpdmF0ZTsKIGNsYXNzIFRp
bWVSYW5nZXM7CiAKIGNsYXNzIE1lZGlhU291cmNlIGZpbmFsCi0gICAgOiBwdWJsaWMgTWVkaWFT
b3VyY2VQcml2YXRlQ2xpZW50CisgICAgOiBwdWJsaWMgUmVmQ291bnRlZDxNZWRpYVNvdXJjZT4K
KyAgICAsIHB1YmxpYyBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQKICAgICAsIHB1YmxpYyBBY3Rp
dmVET01PYmplY3QKICAgICAsIHB1YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhCiAgICAg
LCBwdWJsaWMgVVJMUmVnaXN0cmFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwCmluZGV4IDZhYjRiZDU1MGYwY2NlZWFiYmQ2M2M4OGUzNzBlZjMwMzFjZjcwNDEuLjNk
ZTZmNDI3N2IwNTI0ZDlmNDVmZmE2YWI2YzJjMmU1MzlhMjRlMTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTU2OSw3ICsxNTY5LDcgQEAgdm9pZCBIVE1M
TWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50
VHlwZSYgY29udGVudFQKICAgICAgICAgICAgIC8vIHdoaWxlIHByb2Nlc3NpbmcgcmVtYWluZGVy
IG9mIGxvYWQgZmFpbHVyZS4KICAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UgPSBudWxscHRyOwog
ICAgICAgICAgICAgbWVkaWFMb2FkaW5nRmFpbGVkKE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6
OkZvcm1hdEVycm9yKTsKLSAgICAgICAgfSBlbHNlIGlmICghbV9wbGF5ZXItPmxvYWQodXJsLCBj
b250ZW50VHlwZSwgbV9tZWRpYVNvdXJjZS5nZXQoKSkpIHsKKyAgICAgICAgfSBlbHNlIGlmICgh
bV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50VHlwZSwgKm1fbWVkaWFTb3VyY2UpKSB7CiAgICAg
ICAgICAgICAvLyBXZSBoYXZlIHRvIGRldGFjaCB0aGUgTWVkaWFTb3VyY2UgYmVmb3JlIHdlIGZv
cmdldCB0aGUgcmVmZXJlbmNlIHRvIGl0LgogICAgICAgICAgICAgbV9tZWRpYVNvdXJjZS0+ZGV0
YWNoRnJvbUVsZW1lbnQoKnRoaXMpOwogICAgICAgICAgICAgbV9tZWRpYVNvdXJjZSA9IG51bGxw
dHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBs
YXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5j
cHAKaW5kZXggNGUyZDJkNjg2Mjc5ZmVlMDQyYmNjZTBiYzYzZWFkOWEwODJmMTg4ZS4uZTRmNzEw
NDUyNzBiYmIwNWNlYWU4YjljM2JlNTgwOWUwOTJjMjdkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcApAQCAtMTAzLDcgKzEwMyw3IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgbG9hZChjb25zdCBTdHJpbmcmKSBmaW5hbCB7IH0KICNpZiBF
TkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250
ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopIGZpbmFsIHsgfQorICAgIHZvaWQg
bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudCYpIGZpbmFsIHsgfQogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2
b2lkIGxvYWQoTWVkaWFTdHJlYW1Qcml2YXRlJikgZmluYWwgeyB9CkBAIC01MDgsMTAgKzUwOCw5
IEBAIGJvb2wgTWVkaWFQbGF5ZXI6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRU
eXBlJiBjb250ZW50VHlwZSwgY29uc3QgU3RyCiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNF
KQotYm9vbCBNZWRpYVBsYXllcjo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5
cGUmIGNvbnRlbnRUeXBlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqIG1lZGlhU291cmNlKQor
Ym9vbCBNZWRpYVBsYXllcjo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5cGUm
IGNvbnRlbnRUeXBlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmIG1lZGlhU291cmNlKQogewog
ICAgIEFTU0VSVCghbV9yZWxvYWRUaW1lci5pc0FjdGl2ZSgpKTsKLSAgICBBU1NFUlQobWVkaWFT
b3VyY2UpOwogCiAgICAgbV9tZWRpYVNvdXJjZSA9IG1lZGlhU291cmNlOwogICAgIG1fY29udGVu
dFR5cGUgPSBjb250ZW50VHlwZTsKQEAgLTYyMyw3ICs2MjIsNyBAQCB2b2lkIE1lZGlhUGxheWVy
Ojpsb2FkV2l0aE5leHRNZWRpYUVuZ2luZShjb25zdCBNZWRpYVBsYXllckZhY3RvcnkqIGN1cnJl
bnQpCiAgICAgaWYgKG1fcHJpdmF0ZSkgewogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCiAgICAg
ICAgIGlmIChtX21lZGlhU291cmNlKQotICAgICAgICAgICAgbV9wcml2YXRlLT5sb2FkKG1fdXJs
LCBtX2NvbnRlbnRNSU1FVHlwZVdhc0luZmVycmVkRnJvbUV4dGVuc2lvbiA/IENvbnRlbnRUeXBl
KCkgOiBtX2NvbnRlbnRUeXBlLCBtX21lZGlhU291cmNlLmdldCgpKTsKKyAgICAgICAgICAgIG1f
cHJpdmF0ZS0+bG9hZChtX3VybCwgbV9jb250ZW50TUlNRVR5cGVXYXNJbmZlcnJlZEZyb21FeHRl
bnNpb24gPyBDb250ZW50VHlwZSgpIDogbV9jb250ZW50VHlwZSwgKm1fbWVkaWFTb3VyY2UpOwog
ICAgICAgICBlbHNlCiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKaW5kZXggYjFjMTMyNDc2
ZWU0ODgxNTZlY2QzN2NiZWNiNTQ2MjQ1YTc4YmE2OS4uYjZhMWRmZmI1ZTg1OTY5ODFhZjVmYWVk
NzQ5NGM3MGU3ZTI1NDA1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5oCkBAIC0zNTgsNyArMzU4LDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBs
b2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgY29uc3QgU3RyaW5nJiBrZXlTeXN0
ZW0pOwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi0gICAgYm9vbCBsb2FkKGNvbnN0IFVSTCYs
IGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Kik7CisgICAgYm9v
bCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50Jik7CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGJvb2wgbG9h
ZChNZWRpYVN0cmVhbVByaXZhdGUmKTsKQEAgLTc0MSw3ICs3NDEsNyBAQCBwcml2YXRlOgogICAg
IFBpdGNoQ29ycmVjdGlvbkFsZ29yaXRobSBtX3BpdGNoQ29ycmVjdGlvbkFsZ29yaXRobSB7IFBp
dGNoQ29ycmVjdGlvbkFsZ29yaXRobTo6QmVzdEFsbEFyb3VuZCB9OwogCiAjaWYgRU5BQkxFKE1F
RElBX1NPVVJDRSkKLSAgICBSZWZQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX21lZGlh
U291cmNlOworICAgIFdlYWtQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX21lZGlhU291
cmNlOwogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBSZWZQdHI8TWVkaWFT
dHJlYW1Qcml2YXRlPiBtX21lZGlhU3RyZWFtOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAppbmRleCAxOGRiYmU5ZTZjNWM5
ZGNiZTc5YWQyNmY1ZTIxOWUyNWEwMTdhOGVkLi4xYTc1MTVmZGIyMzk0ZThlM2E4ZjliOTRhMjY1
OTZmMjMxNWYyNmFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllclByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllclByaXZhdGUuaApAQCAtNTIsNyArNTIsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIGxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiwgY29u
c3QgU3RyaW5nJikgeyBsb2FkKHVybC5zdHJpbmcoKSk7IH0KIAogI2lmIEVOQUJMRShNRURJQV9T
T1VSQ0UpCi0gICAgdmlydHVhbCB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5
cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGxv
YWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGll
bnQmKSA9IDA7CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZpcnR1YWwg
dm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0ZSYpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNsaWVudC5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgK
aW5kZXggMzY5MGUzNjNjYjQ2NDNhYjJkMWYyMjEyZTc1NjYzYTlmNmZjYjRmOC4uYzJmMGQwNTI4
ZDE1NDdkMDY4NDBjZWFkMWEzNGNkZWViMTFkZmE5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgK
QEAgLTIzLDIwICsyMywxOSBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBNZWRp
YVNvdXJjZVByaXZhdGVDbGllbnRfaAotI2RlZmluZSBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnRf
aAorI3ByYWdtYSBvbmNlCiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQogCiAjaW5jbHVkZSAi
UGxhdGZvcm1UaW1lUmFuZ2VzLmgiCiAjaW5jbHVkZSA8d3RmL0xvZ2dlci5oPgotI2luY2x1ZGUg
PHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBjbGFzcyBNZWRpYVNvdXJjZVByaXZhdGU7CiAKLWNsYXNzIE1lZGlhU291
cmNlUHJpdmF0ZUNsaWVudCA6IHB1YmxpYyBSZWZDb3VudGVkPE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudD4geworY2xhc3MgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50IDogcHVibGljIENhbk1ha2VX
ZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gewogcHVibGljOgogICAgIHZpcnR1YWwg
fk1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCgpID0gZGVmYXVsdDsKIApAQCAtNTksNSArNTgsMyBA
QCBwdWJsaWM6CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU09VUkNFKQotCi0jZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bi5jcHAKaW5kZXggNzBlZDBiZWRlMWE3YmQ0ODgyMGNhMDQzNzE0NzI4ZDAyNjQyNzY2Ni4uZGZh
MzgzNzYyMjNjN2RmNTMyYjY0YmM2N2UxMTg3OGVlODA1NGQzZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAKQEAgLTIwNSw3
ICsyMDUsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6bG9hZChjb25z
dCBTdHJpbmcmIHVybCkKIH0KIAogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi12b2lkIE1lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50
VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopCit2b2lkIE1lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbjo6bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlh
U291cmNlUHJpdmF0ZUNsaWVudCYpCiB7CiAgICAgc2V0TmV0d29ya1N0YXRlKE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uaAppbmRleCA0NDg0MzJhZTdmY2QzMTY5
N2MyMDkxZGYyMzEyNWNiNWZjMWU5ODE5Li45ZTllZGQ0ZDMwNjZlNTYyODA4MWQwYWE0NzUxODAw
NjYzNjI4YjA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbi5oCkBAIC0xNjQsNyArMTY0LDcgQEAgcHJvdGVjdGVkOgogICAgIC8vIE1l
ZGlhUGxheWVyUHJpdmF0ZVByaXZhdGVJbnRlcmZhY2Ugb3ZlcnJpZGVzLgogICAgIHZvaWQgbG9h
ZChjb25zdCBTdHJpbmcmIHVybCkgb3ZlcnJpZGU7CiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkK
LSAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJj
ZVByaXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29u
c3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNl
bmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFt
UHJpdmF0ZSYpIG92ZXJyaWRlIHsgc2V0TmV0d29ya1N0YXRlKE1lZGlhUGxheWVyOjpOZXR3b3Jr
U3RhdGU6OkZvcm1hdEVycm9yKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAppbmRleCAxYzU3
ZmY4ZDYwZWQ2NDNjNTYwMDk3NDZmNDE3MTdlYTUyYjVmMDc4Li4xMWQ3ZWU1OGM2MGQwODlhY2Rl
YjEyZjZmODM1ZDdiMTVlMDFmNmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJj
ZUFWRk9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaApAQCAtMTY3
LDcgKzE2Nyw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgLy8gTWVkaWFQbGF5ZXJQcml2YXRl
SW50ZXJmYWNlCiAgICAgdm9pZCBsb2FkKGNvbnN0IFN0cmluZyYgdXJsKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3Qg
Q29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSBv
dmVycmlkZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZP
YmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCmluZGV4IGQxOGYzOTZk
ZmU5ZGIzNDRjMDEyZTgxY2VkMDJkYTU1YzgwNjgwY2EuLjNlZjFhYmM1YzcxMGU2M2IyZDQ4NGEz
MjcwZTllMGNiMWZiZDdlM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZG
T2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0KQEAgLTI4MCw3
ICsyODAsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6bG9h
ZChjb25zdCBTdHJpbmcmKQogICAgIG1fcGxheWVyLT5uZXR3b3JrU3RhdGVDaGFuZ2VkKCk7CiB9
CiAKLXZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpsb2FkKGNvbnN0
IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGll
bnQpCit2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6bG9hZChjb25z
dCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYgY2xp
ZW50KQogewogICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUik7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxh
eWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1B
VkZPYmpDLmgKaW5kZXggMGU3NDE4N2MxMzBkNWRjNmZlY2VkZjdmNjdlOGIxOTEwYmYyYzM0YS4u
YzRhMzFiZTU1YzUzZTk0ZGRjZjUxNDhlNWQzYTVjYWU4OTMzMjVkZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5
ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJl
YW1BVkZPYmpDLmgKQEAgLTk1LDcgKzk1LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgbG9hZChj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZv
aWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0
ZUNsaWVudCopIG92ZXJyaWRlOworICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250
ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIG92ZXJyaWRlOwogI2VuZGlmCiAg
ICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0ZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgY2Fu
Y2VsTG9hZCgpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1B
VkZPYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLm1tCmluZGV4IDllMDU5
Nzg2NGE2NTYzMzMyNDAxYzkxMzE5YjNiODY0NjEzNDZjYjAuLjI2NjdjYWY2OTkyMTAwNTEyMmFl
YmY1ZTAzMTIwZjZmOWZiYjhkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFt
QVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMubW0KQEAgLTQ1
MCw3ICs0NTAsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQzo6
bG9hZChjb25zdCBTdHJpbmcmKQogfQogCiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLXZvaWQg
TWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDOjpsb2FkKGNvbnN0IFVSTCYsIGNv
bnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KikKK3ZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDOjpsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENv
bnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JikKIHsKICAgICAvLyBUaGlzIG1l
ZGlhIGVuZ2luZSBvbmx5IHN1cHBvcnRzIE1lZGlhU3RyZWFtIFVSTHMuCiAgICAgc2NoZWR1bGVE
ZWZlcnJlZFRhc2soW3RoaXNdIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
U291cmNlUHJpdmF0ZUFWRk9iakMuaAppbmRleCA4OTUxYjI0N2RkMDAxNTBlZDE2Y2UwNDFhY2Nl
Y2JiZmNiZWQ1ZjhhLi45YzI4YzQ5ZjMwYzBjNGYzMjEwMTQ2ODZhMzIxOTEyZWRiMTFlNGJlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2Jq
Qy5oCkBAIC01OSw3ICs1OSw3IEBAIGNsYXNzIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMgZmlu
YWwKICNlbmRpZgogewogcHVibGljOgotICAgIHN0YXRpYyBSZWY8TWVkaWFTb3VyY2VQcml2YXRl
QVZGT2JqQz4gY3JlYXRlKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYsIE1l
ZGlhU291cmNlUHJpdmF0ZUNsaWVudCopOworICAgIHN0YXRpYyBSZWY8TWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQz4gY3JlYXRlKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYs
IE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpOwogICAgIHZpcnR1YWwgfk1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakMoKTsKIAogICAgIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2Jq
QyogcGxheWVyKCkgY29uc3QgeyByZXR1cm4gbV9wbGF5ZXIuZ2V0KCk7IH0KQEAgLTEyMCw3ICsx
MjAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBmYWlsZWRUb0NyZWF0ZVJlbmRlcmVyKFJlbmRlcmVy
VHlwZSk7CiAKIHByaXZhdGU6Ci0gICAgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRpYVBs
YXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQq
KTsKKyAgICBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U291cmNlQVZGT2JqQyYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpOwogCiAgICAgdm9pZCBz
b3VyY2VCdWZmZXJQcml2YXRlRGlkQ2hhbmdlQWN0aXZlU3RhdGUoU291cmNlQnVmZmVyUHJpdmF0
ZUFWRk9iakMqLCBib29sIGFjdGl2ZSk7CiAgICAgdm9pZCBzb3VyY2VCdWZmZXJQcml2YXRlRGlk
UmVjZWl2ZUluaXRpYWxpemF0aW9uU2VnbWVudChTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyop
OwpAQCAtMTM0LDcgKzEzNCw3IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOwogCiAgICAgV2Vha1B0cjxNZWRpYVBsYXllclByaXZhdGVNZWRp
YVNvdXJjZUFWRk9iakM+IG1fcGxheWVyOwotICAgIFJlZlB0cjxNZWRpYVNvdXJjZVByaXZhdGVD
bGllbnQ+IG1fY2xpZW50OworICAgIFdlYWtQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBt
X2NsaWVudDsKICAgICBWZWN0b3I8UmVmUHRyPFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDPj4g
bV9zb3VyY2VCdWZmZXJzOwogICAgIFZlY3RvcjxTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyo+
IG1fYWN0aXZlU291cmNlQnVmZmVyczsKICAgICBEZXF1ZTxTb3VyY2VCdWZmZXJQcml2YXRlQVZG
T2JqQyo+IG1fc291cmNlQnVmZmVyc05lZWRpbmdTZXNzaW9uczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tCmluZGV4IDEyMDFiNzI2
YmQwNDdjNWYxMTBmNzE0YWIxMDIzMTlhNjE2MjJjYmYuLmM2MjU0NTdhZmMxNjYzYWRmYzQ2MjFk
MjZjMjYxYmJkMjk1YzU0Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVk
aWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQpAQCAtNDYsMTQgKzQ2LDE0IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1hcmsgTWVkaWFTb3VyY2VQcml2YXRl
QVZGT2JqQwogCi1SZWY8TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQz4gTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6Y3JlYXRlKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYg
cGFyZW50LCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqIGNsaWVudCkKK1JlZjxNZWRpYVNvdXJj
ZVByaXZhdGVBVkZPYmpDPiBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpjcmVhdGUoTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDJiBwYXJlbnQsIE1lZGlhU291cmNlUHJpdmF0
ZUNsaWVudCYgY2xpZW50KQogewogICAgIGF1dG8gbWVkaWFTb3VyY2VQcml2YXRlID0gYWRvcHRS
ZWYoKm5ldyBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDKHBhcmVudCwgY2xpZW50KSk7Ci0gICAg
Y2xpZW50LT5zZXRQcml2YXRlQW5kT3BlbihtZWRpYVNvdXJjZVByaXZhdGUuY29weVJlZigpKTsK
KyAgICBjbGllbnQuc2V0UHJpdmF0ZUFuZE9wZW4obWVkaWFTb3VyY2VQcml2YXRlLmNvcHlSZWYo
KSk7CiAgICAgcmV0dXJuIG1lZGlhU291cmNlUHJpdmF0ZTsKIH0KIAotTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakMmIHBhcmVudCwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGll
bnQpCitNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpD
KE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYgcGFyZW50LCBNZWRpYVNvdXJj
ZVByaXZhdGVDbGllbnQmIGNsaWVudCkKICAgICA6IG1fcGxheWVyKHBhcmVudCkKICAgICAsIG1f
Y2xpZW50KGNsaWVudCkKICAgICAsIG1faXNFbmRlZChmYWxzZSkKQEAgLTY0LDcgKzY0LDcgQEAg
TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXIKIHsKICAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIp
OwogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAotICAgIG1fY2xpZW50LT5zZXRMb2dJZGVudGlm
aWVyKG1fbG9nSWRlbnRpZmllcik7CisgICAgY2xpZW50LnNldExvZ0lkZW50aWZpZXIobV9sb2dJ
ZGVudGlmaWVyKTsKICNlbmRpZgogfQogCkBAIC0xMjEsMTIgKzEyMSwxNiBAQCB2b2lkIE1lZGlh
U291cmNlUHJpdmF0ZUFWRk9iakM6OnJlbW92ZVNvdXJjZUJ1ZmZlcihTb3VyY2VCdWZmZXJQcml2
YXRlKiBidWZmZXIpCiAKIE1lZGlhVGltZSBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpkdXJh
dGlvbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fY2xpZW50LT5kdXJhdGlvbigpOworICAgIGlm
IChtX2NsaWVudCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5kdXJhdGlvbigpOworICAgIHJl
dHVybiBNZWRpYVRpbWU6OmludmFsaWRUaW1lKCk7CiB9CiAKIHN0ZDo6dW5pcXVlX3B0cjxQbGF0
Zm9ybVRpbWVSYW5nZXM+IE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmJ1ZmZlcmVkKCkKIHsK
LSAgICByZXR1cm4gbV9jbGllbnQtPmJ1ZmZlcmVkKCk7CisgICAgaWYgKG1fY2xpZW50KQorICAg
ICAgICByZXR1cm4gbV9jbGllbnQtPmJ1ZmZlcmVkKCk7CisgICAgcmV0dXJuIG51bGxwdHI7CiB9
CiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6ZHVyYXRpb25DaGFuZ2VkKGNvbnN0
IE1lZGlhVGltZSYpCkBAIC0yMzYsNyArMjQwLDggQEAgdm9pZCBNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjp3aWxsU2VlaygpCiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6c2Vl
a1RvVGltZShjb25zdCBNZWRpYVRpbWUmIHRpbWUpCiB7Ci0gICAgbV9jbGllbnQtPnNlZWtUb1Rp
bWUodGltZSk7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+c2Vla1RvVGlt
ZSh0aW1lKTsKIH0KIAogTWVkaWFUaW1lIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmZhc3RT
ZWVrVGltZUZvck1lZGlhVGltZShjb25zdCBNZWRpYVRpbWUmIHRhcmdldFRpbWUsIGNvbnN0IE1l
ZGlhVGltZSYgbmVnYXRpdmVUaHJlc2hvbGQsIGNvbnN0IE1lZGlhVGltZSYgcG9zaXRpdmVUaHJl
c2hvbGQpCkBAIC0zNTcsNyArMzYyLDggQEAgV1RGTG9nQ2hhbm5lbCYgTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6bG9nQ2hhbm5lbCgpIGNvbnN0CiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRl
QVZGT2JqQzo6ZmFpbGVkVG9DcmVhdGVSZW5kZXJlcihSZW5kZXJlclR5cGUgdHlwZSkKIHsKLSAg
ICBtX2NsaWVudC0+ZmFpbGVkVG9DcmVhdGVSZW5kZXJlcih0eXBlKTsKKyAgICBpZiAobV9jbGll
bnQpCisgICAgICAgIG1fY2xpZW50LT5mYWlsZWRUb0NyZWF0ZVJlbmRlcmVyKHR5cGUpOwogfQog
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmlu
ZGV4IDAxZmVmZWEzMmQyMTM2ZGZkMWUxZjNjMjViODE2MjY5NjkwZmJkMTQuLmY4MzZlMzdhODU5
YTg0NTFlYzg0MzYwZTY5OWU5MTkyZjEwYmIzY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCkBAIC0zNTMsNyArMzUzLDcgQEAgdm9pZCBNZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmxvYWQoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiB9
CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OmxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqKQordm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmxvYWQoY29u
c3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKQog
ewogICAgIC8vIFByb3Blcmx5IGZhaWwgc28gdGhlIGdsb2JhbCBNZWRpYVBsYXllciB0cmllcyB0
byBmYWxsYmFjayB0byB0aGUgbmV4dCBNZWRpYVBsYXllclByaXZhdGUuCiAgICAgbV9uZXR3b3Jr
U3RhdGUgPSBNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlOjpGb3JtYXRFcnJvcjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAppbmRleCAzMmVkM2FlOGIyOWMw
MGZlODgxNGJkZDA2ZTY0OTY4NTVhN2FkZWUwLi5kMWNiYmRmZWRmOWY2OWU5NDMyNzgyZTUzZDFh
YWFjOWY4MmU3ZTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lci5oCkBAIC0xMzgsNyArMTM4LDcgQEAgcHVibGljOgogICAgIGJvb2wgaGFzQXVkaW8oKSBj
b25zdCBmaW5hbCB7IHJldHVybiBtX2hhc0F1ZGlvOyB9CiAgICAgdm9pZCBsb2FkKGNvbnN0IFN0
cmluZyAmdXJsKSBvdmVycmlkZTsKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZvaWQg
bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudCopIG92ZXJyaWRlOworICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50
VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIG92ZXJyaWRlOwogI2VuZGlmCiAjaWYg
RU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2b2lkIGxvYWQoTWVkaWFTdHJlYW1Qcml2YXRlJikg
b3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvbXNlL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lck1TRS5jcHAKaW5kZXggMmNlYzY4NDY2ZmZjM2Q5MTk3NmMyOTA0YmQ3NTBiYmE2
Yjg2OWU3NS4uNTZhODE2NjkzN2E5MTk0NDAxZjNhYWRmMjQxNmU4MjNlZTIyNzlhOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNF
LmNwcApAQCAtMTIzLDcgKzEyMyw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
TVNFOjpsb2FkKGNvbnN0IFN0cmluZyYpCiAgICAgbV9wbGF5ZXItPm5ldHdvcmtTdGF0ZUNoYW5n
ZWQoKTsKIH0KIAotdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0U6OmxvYWQoY29u
c3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50
KiBtZWRpYVNvdXJjZSkKK3ZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFOjpsb2Fk
KGNvbnN0IFVSTCYgdXJsLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudCYgbWVkaWFTb3VyY2UpCiB7CiAgICAgYXV0byBtc2VCbG9iVVJJID0gbWFrZVN0cmluZygi
bWVkaWFzb3VyY2UiLCB1cmwuc3RyaW5nKCkuaXNFbXB0eSgpID8gImJsb2I6Ly8iX3MgOiB1cmwu
c3RyaW5nKCkpOwogICAgIEdTVF9ERUJVRygiTG9hZGluZyAlcyIsIG1zZUJsb2JVUkkuYXNjaWko
KS5kYXRhKCkpOwpAQCAtMzE3LDcgKzMxNyw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyTVNFOjpkdXJhdGlvbkNoYW5nZWQoKQogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7
CiAKICAgICBNZWRpYVRpbWUgcHJldmlvdXNEdXJhdGlvbiA9IG1fbWVkaWFUaW1lRHVyYXRpb247
Ci0gICAgbV9tZWRpYVRpbWVEdXJhdGlvbiA9IG1fbWVkaWFTb3VyY2UtPmR1cmF0aW9uKCk7Cisg
ICAgbV9tZWRpYVRpbWVEdXJhdGlvbiA9IG1fbWVkaWFTb3VyY2UgPyBtX21lZGlhU291cmNlLT5k
dXJhdGlvbigpIDogTWVkaWFUaW1lOjppbnZhbGlkVGltZSgpOwogCiAgICAgR1NUX1RSQUNFKCJw
cmV2aW91cz0lcywgbmV3PSVzIiwgdG9TdHJpbmcocHJldmlvdXNEdXJhdGlvbikudXRmOCgpLmRh
dGEoKSwgdG9TdHJpbmcobV9tZWRpYVRpbWVEdXJhdGlvbikudXRmOCgpLmRhdGEoKSk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRS5o
CmluZGV4IGYyMWNmMDBhNzJmYmVjNWUxMzM2YzdkOTFhZmJmYjU0MDE4NGJkN2YuLjdmZGQ3ZjBm
NWMxZjgwNDlmYmNlOTRkNDcyMmViNGUxODVhMGM5NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyTVNFLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0UuaApAQCAtNDksNyArNDksNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgcmVnaXN0ZXJNZWRpYUVuZ2luZShNZWRpYUVuZ2lu
ZVJlZ2lzdHJhcik7CiAKICAgICB2b2lkIGxvYWQoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQ
cml2YXRlQ2xpZW50Kikgb3ZlcnJpZGU7CisgICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0
IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Jikgb3ZlcnJpZGU7CiAKICAg
ICB2b2lkIHVwZGF0ZURvd25sb2FkQnVmZmVyaW5nRmxhZygpIG92ZXJyaWRlIHsgfTsKIApAQCAt
MTA1LDcgKzEwNSw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHByb3BhZ2F0ZVJlYWR5U3RhdGVU
b1BsYXllcigpOwogCi0gICAgUmVmUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9tZWRp
YVNvdXJjZTsKKyAgICBXZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9tZWRpYVNv
dXJjZTsKICAgICBSZWZQdHI8TWVkaWFTb3VyY2VQcml2YXRlR1N0cmVhbWVyPiBtX21lZGlhU291
cmNlUHJpdmF0ZTsKICAgICBNZWRpYVRpbWUgbV9tZWRpYVRpbWVEdXJhdGlvbjsKICAgICBib29s
IG1fYXJlRHVyYXRpb25DaGFuZ2VzQmxvY2tlZCA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVNvdXJjZVByaXZh
dGVHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9NZWRpYVNvdXJjZVByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IGEzYTEzY2JlNGU1
ODllY2U2MGVkMzUxMzRmYjUwMDRjZjA4YTYxMTguLjAzNzYyZTZlZDJlOWVjNWY3ZWEzYzcxZDcx
OGJjMTJmZDk5NTIwMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvTWVkaWFTb3VyY2VQcml2YXRlR1N0cmVhbWVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhU291cmNl
UHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTEwNCw3ICsxMDQsNyBAQCB2b2lkIE1lZGlhU291cmNl
UHJpdmF0ZUdTdHJlYW1lcjo6ZHVyYXRpb25DaGFuZ2VkKGNvbnN0IE1lZGlhVGltZSYpCiB7CiAg
ICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIAotICAgIE1lZGlhVGltZSBkdXJhdGlvbiA9IG1f
bWVkaWFTb3VyY2UtPmR1cmF0aW9uKCk7CisgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRp
YVNvdXJjZSA/IG1fbWVkaWFTb3VyY2UtPmR1cmF0aW9uKCkgOiBNZWRpYVRpbWU6OmludmFsaWRU
aW1lKCk7CiAgICAgR1NUX1RSQUNFKCJkdXJhdGlvbjogJWYiLCBkdXJhdGlvbi50b0Zsb2F0KCkp
OwogICAgIGlmICghZHVyYXRpb24uaXNWYWxpZCgpIHx8IGR1cmF0aW9uLmlzTmVnYXRpdmVJbmZp
bml0ZSgpKQogICAgICAgICByZXR1cm47CkBAIC0xNDQsNyArMTQ0LDcgQEAgdm9pZCBNZWRpYVNv
dXJjZVByaXZhdGVHU3RyZWFtZXI6OnNlZWtDb21wbGV0ZWQoKQogCiBNZWRpYVRpbWUgTWVkaWFT
b3VyY2VQcml2YXRlR1N0cmVhbWVyOjpkdXJhdGlvbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
bWVkaWFTb3VyY2UtPmR1cmF0aW9uKCk7CisgICAgcmV0dXJuIG1fbWVkaWFTb3VyY2UgPyBtX21l
ZGlhU291cmNlLT5kdXJhdGlvbigpIDogTWVkaWFUaW1lOjppbnZhbGlkVGltZSgpOwogfQogCiBN
ZWRpYVRpbWUgTWVkaWFTb3VyY2VQcml2YXRlR1N0cmVhbWVyOjpjdXJyZW50TWVkaWFUaW1lKCkg
Y29uc3QKQEAgLTE4NSw3ICsxODUsOSBAQCB2b2lkIE1lZGlhU291cmNlUHJpdmF0ZUdTdHJlYW1l
cjo6c3RhcnRQbGF5YmFja0lmSGFzQWxsVHJhY2tzKCkKIAogc3RkOjp1bmlxdWVfcHRyPFBsYXRm
b3JtVGltZVJhbmdlcz4gTWVkaWFTb3VyY2VQcml2YXRlR1N0cmVhbWVyOjpidWZmZXJlZCgpCiB7
Ci0gICAgcmV0dXJuIG1fbWVkaWFTb3VyY2UtPmJ1ZmZlcmVkKCk7CisgICAgaWYgKG1fbWVkaWFT
b3VyY2UpCisgICAgICAgIHJldHVybiBtX21lZGlhU291cmNlLT5idWZmZXJlZCgpOworICAgIHJl
dHVybiBudWxscHRyOwogfQogCiAjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhU291
cmNlUHJpdmF0ZUdTdHJlYW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL21zZS9NZWRpYVNvdXJjZVByaXZhdGVHU3RyZWFtZXIuaAppbmRleCBiZWVjMzEw
YzVmMGRhMWE2ZDQ2Y2Y3OGY0ZjI1MTJlMDkzZWQ1OTFjLi4xODkzZDcxMzdjMjFkNmMzZTNkMjdj
N2QzMTI5MTQzNDJkNTQ2M2Q0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhU291cmNlUHJpdmF0ZUdTdHJlYW1lci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFTb3Vy
Y2VQcml2YXRlR1N0cmVhbWVyLmgKQEAgLTkyLDcgKzkyLDcgQEAgcHJpdmF0ZToKIAogICAgIEhh
c2hTZXQ8UmVmUHRyPFNvdXJjZUJ1ZmZlclByaXZhdGVHU3RyZWFtZXI+PiBtX3NvdXJjZUJ1ZmZl
cnM7CiAgICAgSGFzaFNldDxTb3VyY2VCdWZmZXJQcml2YXRlR1N0cmVhbWVyKj4gbV9hY3RpdmVT
b3VyY2VCdWZmZXJzOwotICAgIFJlZjxNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQ+IG1fbWVkaWFT
b3VyY2U7CisgICAgV2Vha1B0cjxNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQ+IG1fbWVkaWFTb3Vy
Y2U7CiAgICAgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFJiBtX3BsYXllclByaXZhdGU7
CiAgICAgYm9vbCBtX2lzRW5kZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9oYXNBbGxUcmFja3Mg
eyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
aG9sZXB1bmNoL01lZGlhUGxheWVyUHJpdmF0ZUhvbGVQdW5jaC5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvaG9sZXB1bmNoL01lZGlhUGxheWVyUHJpdmF0ZUhvbGVQdW5jaC5o
CmluZGV4IGU3MGQwNThmNjRmN2YxNWQzMTRjNWE0NzRiN2FlNjViNmRhMjY0MTMuLjMxZjA0NmVl
YzdkNGY3MmM4OTRjZDljNjdmMjlmZWY4ZDQxN2ZlMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2hvbGVwdW5jaC9NZWRpYVBsYXllclByaXZhdGVIb2xlUHVu
Y2guaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ob2xlcHVuY2gvTWVk
aWFQbGF5ZXJQcml2YXRlSG9sZVB1bmNoLmgKQEAgLTUzLDcgKzUzLDcgQEAgcHVibGljOgogCiAg
ICAgdm9pZCBsb2FkKGNvbnN0IFN0cmluZyYpIGZpbmFsOwogI2lmIEVOQUJMRShNRURJQV9TT1VS
Q0UpCi0gICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFT
b3VyY2VQcml2YXRlQ2xpZW50KikgZmluYWwgeyB9OworICAgIHZvaWQgbG9hZChjb25zdCBVUkwm
LCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIGZpbmFsIHsg
fTsKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBsb2FkKE1lZGlh
U3RyZWFtUHJpdmF0ZSYpIGZpbmFsIHsgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJN
ZWRpYVNvdXJjZS5jcHAKaW5kZXggNjA4ODBhMDE1ZWUzZDE1NTk4NGEwMGMyMjNlYWJlNTE4MTg0
MDc3MC4uYzBmOWVjMWFjMGVkNzAxMmMwNjJmNWIwNTUxOTliZTBlMWJkMjg0OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5
ZXJNZWRpYVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRp
YXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHAKQEAgLTExMSw5ICsxMTEsOSBA
QCB2b2lkIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpsb2FkKGNvbnN0IFN0cmluZyYpCiAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKLXZvaWQgTW9ja01lZGlhUGxheWVyTWVkaWFT
b3VyY2U6OmxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqIHNvdXJjZSkKK3ZvaWQgTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6Omxv
YWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGll
bnQmIHNvdXJjZSkKIHsKLSAgICBtX21lZGlhU291cmNlUHJpdmF0ZSA9IE1vY2tNZWRpYVNvdXJj
ZVByaXZhdGU6OmNyZWF0ZSgqdGhpcywgKnNvdXJjZSk7CisgICAgbV9tZWRpYVNvdXJjZVByaXZh
dGUgPSBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpjcmVhdGUoKnRoaXMsIHNvdXJjZSk7CiB9CiAK
IHZvaWQgTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmNhbmNlbExvYWQoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5
ZXJNZWRpYVNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJj
ZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oCmluZGV4IGQzMjliYWQ2ODRjZTM1YTc2ZWIx
MzZmOGUzMmUwMjEzMGE2MTMzYmYuLjExYmZhOTRjZTYxODExYjczZjM1MTJhMDI4NmU5NjYzMWQw
Mjc3ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3Vy
Y2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmgKQEAgLTY3
LDcgKzY3LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICAvLyBNZWRpYVBsYXllclByaXZhdGUg
T3ZlcnJpZGVzCiAgICAgdm9pZCBsb2FkKGNvbnN0IFN0cmluZyYgdXJsKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3Qg
Q29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSBv
dmVycmlkZSB7IH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5jcHAK
aW5kZXggNmM5MTdlNDM1YWFhNDQ1Zjg2ODliZWFlZTQ0NThlMTJmMjQ5YzI1Ny4uYjFmOWI2YzA0
MTM1NmMxMWNmZjE1YWMxNzcyMjVkZDliNmUwYjRiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNv
dXJjZVByaXZhdGUuY3BwCkBAIC01Miw3ICs1Miw3IEBAIE1vY2tNZWRpYVNvdXJjZVByaXZhdGU6
Ok1vY2tNZWRpYVNvdXJjZVByaXZhdGUoTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UmIHBhcmVu
CiAjZW5kaWYKIHsKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKLSAgICBtX2NsaWVudC0+c2V0
TG9nSWRlbnRpZmllcihtX3BsYXllci5tZWRpYVBsYXllckxvZ0lkZW50aWZpZXIoKSk7CisgICAg
Y2xpZW50LnNldExvZ0lkZW50aWZpZXIobV9wbGF5ZXIubWVkaWFQbGF5ZXJMb2dJZGVudGlmaWVy
KCkpOwogI2VuZGlmCiB9CiAKQEAgLTg1LDEyICs4NSwxNiBAQCB2b2lkIE1vY2tNZWRpYVNvdXJj
ZVByaXZhdGU6OnJlbW92ZVNvdXJjZUJ1ZmZlcihTb3VyY2VCdWZmZXJQcml2YXRlKiBidWZmZXIp
CiAKIE1lZGlhVGltZSBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpkdXJhdGlvbigpCiB7Ci0gICAg
cmV0dXJuIG1fY2xpZW50LT5kdXJhdGlvbigpOworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAg
cmV0dXJuIG1fY2xpZW50LT5kdXJhdGlvbigpOworICAgIHJldHVybiBNZWRpYVRpbWU6OmludmFs
aWRUaW1lKCk7CiB9CiAKIHN0ZDo6dW5pcXVlX3B0cjxQbGF0Zm9ybVRpbWVSYW5nZXM+IE1vY2tN
ZWRpYVNvdXJjZVByaXZhdGU6OmJ1ZmZlcmVkKCkKIHsKLSAgICByZXR1cm4gbV9jbGllbnQtPmJ1
ZmZlcmVkKCk7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICByZXR1cm4gbV9jbGllbnQtPmJ1
ZmZlcmVkKCk7CisgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKIHZvaWQgTW9ja01lZGlhU291cmNl
UHJpdmF0ZTo6ZHVyYXRpb25DaGFuZ2VkKGNvbnN0IE1lZGlhVGltZSYpCkBAIC0xNjEsNyArMTY1
LDggQEAgYm9vbCBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpoYXNWaWRlbygpIGNvbnN0CiAKIHZv
aWQgTW9ja01lZGlhU291cmNlUHJpdmF0ZTo6c2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmIHRp
bWUpCiB7Ci0gICAgbV9jbGllbnQtPnNlZWtUb1RpbWUodGltZSk7CisgICAgaWYgKG1fY2xpZW50
KQorICAgICAgICBtX2NsaWVudC0+c2Vla1RvVGltZSh0aW1lKTsKIH0KIAogTWVkaWFUaW1lIE1v
Y2tNZWRpYVNvdXJjZVByaXZhdGU6OnNlZWtUb1RpbWUoY29uc3QgTWVkaWFUaW1lJiB0YXJnZXRU
aW1lLCBjb25zdCBNZWRpYVRpbWUmIG5lZ2F0aXZlVGhyZXNob2xkLCBjb25zdCBNZWRpYVRpbWUm
IHBvc2l0aXZlVGhyZXNob2xkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuaAppbmRl
eCA5NGZmNThjYmI4YWMzN2M1OGFkMTE3NDU0OTllYTY5Y2ZjODkzNWVkLi41MWNmYmI0ZTcyZWQ3
ODYxZWQyNmYxZjY4N2VkYjhkZTc0YTcxZDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVBy
aXZhdGUuaApAQCAtOTYsNyArOTYsNyBAQCBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBNb2Nr
U291cmNlQnVmZmVyUHJpdmF0ZTsKIAogICAgIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlJiBt
X3BsYXllcjsKLSAgICBSZWY8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX2NsaWVudDsKKyAg
ICBXZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9jbGllbnQ7CiAgICAgVmVjdG9y
PFJlZlB0cjxNb2NrU291cmNlQnVmZmVyUHJpdmF0ZT4+IG1fc291cmNlQnVmZmVyczsKICAgICBW
ZWN0b3I8TW9ja1NvdXJjZUJ1ZmZlclByaXZhdGUqPiBtX2FjdGl2ZVNvdXJjZUJ1ZmZlcnM7CiAg
ICAgYm9vbCBtX2lzRW5kZWQgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuY3BwIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuY3BwCmluZGV4IGFjMTRk
NzE2NzEyNWU0YmFjNDRiYWI5ZDAwNjQyYWNjMWU1YTgyYmEuLjkxMWFkMjU0NzY5MzVjZjU3MjY5
ZTQwMWVlYmRkYTg2OWQ4OWZjMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKQEAgLTE3MSw3ICsxNzEs
NyBAQCB2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmxvYWRNZWRpYVNvdXJjZShVUkwmJiB1
cmwsIGNvbnN0IFdlYkNvcmU6OkNvbnRlbnRUeQogICAgIH0KIAogICAgIG1fbWVkaWFTb3VyY2VQ
cm94eSA9IGFkb3B0UmVmKCpuZXcgUmVtb3RlTWVkaWFTb3VyY2VQcm94eSgqbV9tYW5hZ2VyLT5n
cHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKCksIG1lZGlhU291cmNlSWRlbnRpZmllciwgd2ViTVBh
cnNlckVuYWJsZWQsICp0aGlzKSk7Ci0gICAgbV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50VHlw
ZSwgbV9tZWRpYVNvdXJjZVByb3h5LmdldCgpKTsKKyAgICBtX3BsYXllci0+bG9hZCh1cmwsIGNv
bnRlbnRUeXBlLCAqbV9tZWRpYVNvdXJjZVByb3h5KTsKICAgICBnZXRDb25maWd1cmF0aW9uKGNv
bmZpZ3VyYXRpb24pOwogICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoY29uZmlndXJhdGlv
bikpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhU291cmNlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVNvdXJjZVByb3h5LmgKaW5kZXggYmYwOTliMzU4NWQ0OWJhMmE3OGVmODRkMWI0ZmI2
MzQ3YmI3YmU2Ny4uYzk1Y2Y3MjM0YWRlZTFkNGVmNmE1NDgzYTJkMzZiOTQ3MmY0OTFmOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhU291cmNl
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFT
b3VyY2VQcm94eS5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVNv
dXJjZVByaXZhdGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhU291cmNlUHJpdmF0ZUNsaWVu
dC5oPgogI2luY2x1ZGUgPHd0Zi9NZWRpYVRpbWUuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBJUEMgewpAQCAtNTIs
NyArNTMsOCBAQCBjbGFzcyBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOwogY2xhc3MgUmVtb3Rl
TWVkaWFQbGF5ZXJQcm94eTsKIAogY2xhc3MgUmVtb3RlTWVkaWFTb3VyY2VQcm94eSBmaW5hbAot
ICAgIDogcHVibGljIFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUNsaWVudAorICAgIDogcHVi
bGljIFJlZkNvdW50ZWQ8UmVtb3RlTWVkaWFTb3VyY2VQcm94eT4KKyAgICAsIHB1YmxpYyBXZWJD
b3JlOjpNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQKICAgICAsIHByaXZhdGUgSVBDOjpNZXNzYWdl
UmVjZWl2ZXIgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZh
dGVSZW1vdGUuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBs
YXllclByaXZhdGVSZW1vdGUuY3BwCmluZGV4IDQwZWUzMjcyOGE5NzY4NThhMGM4MTk3ZjMzNTMw
MGYzMGJhMDkzYjkuLmMzMmFlZjk3NzVmNTE1M2Q3MWQ3MDQxOTc1Y2E1ZWRlNTNjMjNhYmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKQEAgLTc5MCw3ICs3OTAsNyBAQCB2b2lkIE1l
ZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6cmVtb3RlVmlkZW9UcmFja0NvbmZpZ3VyYXRpb25DaGFu
Z2VkKFRyYWNrUHJpdmF0ZQogfQogCiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLXZvaWQgTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpsb2FkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBDb250ZW50
VHlwZSYgY29udGVudFR5cGUsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCogY2xpZW50KQordm9p
ZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENv
bnRlbnRUeXBlJiBjb250ZW50VHlwZSwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JiBjbGllbnQp
CiB7CiAgICAgaWYgKG1fcmVtb3RlRW5naW5lSWRlbnRpZmllciA9PSBNZWRpYVBsYXllckVudW1z
OjpNZWRpYUVuZ2luZUlkZW50aWZpZXI6OkFWRm91bmRhdGlvbk1TRSkgewogICAgICAgICBhdXRv
IGlkZW50aWZpZXIgPSBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXI6OmdlbmVyYXRlKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVy
UHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVBsYXllclByaXZhdGVSZW1vdGUuaAppbmRleCA0M2EyOWVmMWNjYzU5MjYyZTc5N2FhNThjYTY5
OWYyOWRlNGY0NTYzLi5jODgxMjMwMTc0MTNjOGNiZWFhOTY0ZDM4OWVlMzJlMTYyNTNiZGU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVy
UHJpdmF0ZVJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKQEAgLTE5OCw3ICsxOTgsNyBAQCBwcml2YXRlOgog
ICAgIHZvaWQgcHJlcGFyZUZvclBsYXliYWNrKGJvb2wgcHJpdmF0ZU1vZGUsIFdlYkNvcmU6Ok1l
ZGlhUGxheWVyOjpQcmVsb2FkLCBib29sIHByZXNlcnZlc1BpdGNoLCBib29sIHByZXBhcmUpIGZp
bmFsOwogCiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLSAgICB2b2lkIGxvYWQoY29uc3QgVVJM
JiwgY29uc3QgV2ViQ29yZTo6Q29udGVudFR5cGUmLCBXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZh
dGVDbGllbnQqKSBmaW5hbDsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgV2ViQ29y
ZTo6Q29udGVudFR5cGUmLCBXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBmaW5h
bDsKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBsb2FkKFdlYkNv
cmU6Ok1lZGlhU3RyZWFtUHJpdmF0ZSYpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUu
Y3BwCmluZGV4IDZhMjBkNzUwYTQ5NDRmYjM4ZGE3NDgyODk3MDlmMjA1NWM1NjQwZDEuLjdjNDUx
MmE0MDNlMGI4OGQ3ZmNlM2IxMDg0NzI3NTUxZWI4YWFhMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0
ZVJlbW90ZS5jcHAKQEAgLTQ2LDE0ICs0NiwxNCBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLVJlZjxNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU+IE1l
ZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6Y3JlYXRlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiBncHVQ
cm9jZXNzQ29ubmVjdGlvbiwgUmVtb3RlTWVkaWFTb3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5cGVDYWNoZSYgbWltZVR5cGVDYWNoZSwgY29uc3QgTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlJiBtZWRpYVBsYXllclByaXZhdGUsIE1lZGlhU291cmNlUHJp
dmF0ZUNsaWVudCogY2xpZW50KQorUmVmPE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZT4gTWVkaWFT
b3VyY2VQcml2YXRlUmVtb3RlOjpjcmVhdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVByb2Nl
c3NDb25uZWN0aW9uLCBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIgaWRlbnRpZmllciwgUmVt
b3RlTWVkaWFQbGF5ZXJNSU1FVHlwZUNhY2hlJiBtaW1lVHlwZUNhY2hlLCBjb25zdCBNZWRpYVBs
YXllclByaXZhdGVSZW1vdGUmIG1lZGlhUGxheWVyUHJpdmF0ZSwgTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50JiBjbGllbnQpCiB7CiAgICAgYXV0byBtZWRpYVNvdXJjZVByaXZhdGUgPSBhZG9wdFJl
ZigqbmV3IE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZShncHVQcm9jZXNzQ29ubmVjdGlvbiwgaWRl
bnRpZmllciwgbWltZVR5cGVDYWNoZSwgbWVkaWFQbGF5ZXJQcml2YXRlLCBjbGllbnQpKTsKLSAg
ICBjbGllbnQtPnNldFByaXZhdGVBbmRPcGVuKG1lZGlhU291cmNlUHJpdmF0ZS5jb3B5UmVmKCkp
OworICAgIGNsaWVudC5zZXRQcml2YXRlQW5kT3BlbihtZWRpYVNvdXJjZVByaXZhdGUuY29weVJl
ZigpKTsKICAgICByZXR1cm4gbWVkaWFTb3VyY2VQcml2YXRlOwogfQogCi1NZWRpYVNvdXJjZVBy
aXZhdGVSZW1vdGU6Ok1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZShHUFVQcm9jZXNzQ29ubmVjdGlv
biYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIFJlbW90ZU1lZGlhU291cmNlSWRlbnRpZmllciBpZGVu
dGlmaWVyLCBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUmIG1pbWVUeXBlQ2FjaGUsIGNv
bnN0IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSYgbWVkaWFQbGF5ZXJQcml2YXRlLCBNZWRpYVNv
dXJjZVByaXZhdGVDbGllbnQqIGNsaWVudCkKK01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6TWVk
aWFTb3VyY2VQcml2YXRlUmVtb3RlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiBncHVQcm9jZXNzQ29u
bmVjdGlvbiwgUmVtb3RlTWVkaWFTb3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlbW90ZU1l
ZGlhUGxheWVyTUlNRVR5cGVDYWNoZSYgbWltZVR5cGVDYWNoZSwgY29uc3QgTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlJiBtZWRpYVBsYXllclByaXZhdGUsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVu
dCYgY2xpZW50KQogICAgIDogbV9ncHVQcm9jZXNzQ29ubmVjdGlvbihncHVQcm9jZXNzQ29ubmVj
dGlvbikKICAgICAsIG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAgICwgbV9taW1lVHlwZUNh
Y2hlKG1pbWVUeXBlQ2FjaGUpCkBAIC02OSw3ICs2OSw3IEBAIE1lZGlhU291cmNlUHJpdmF0ZVJl
bW90ZTo6TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiBncHVQ
cm9jCiAgICAgbV9ncHVQcm9jZXNzQ29ubmVjdGlvbi0+bWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRk
TWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU6Om1lc3Nh
Z2VSZWNlaXZlck5hbWUoKSwgbV9pZGVudGlmaWVyLnRvVUludDY0KCksICp0aGlzKTsKIAogI2lm
ICFSRUxFQVNFX0xPR19ESVNBQkxFRAotICAgIG1fY2xpZW50LT5zZXRMb2dJZGVudGlmaWVyKG1f
bG9nSWRlbnRpZmllcik7CisgICAgY2xpZW50LnNldExvZ0lkZW50aWZpZXIobV9sb2dJZGVudGlm
aWVyKTsKICNlbmRpZgogfQogCkBAIC0xOTEsNyArMTkxLDggQEAgdm9pZCBNZWRpYVNvdXJjZVBy
aXZhdGVSZW1vdGU6OnNldFRpbWVGdWRnZUZhY3Rvcihjb25zdCBNZWRpYVRpbWUmIGZ1ZGdlRmFj
dG9yKQogCiB2b2lkIE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6c2Vla1RvVGltZShjb25zdCBN
ZWRpYVRpbWUmIHRpbWUpCiB7Ci0gICAgbV9jbGllbnQtPnNlZWtUb1RpbWUodGltZSk7CisgICAg
aWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+c2Vla1RvVGltZSh0aW1lKTsKIH0KIAog
I2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuaCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlLmgKaW5kZXgg
NGQxYTZmNmFkMWZlYTc1NDczMTczNTAzM2ViOGY0ZTUyMjc1ZTc2ZC4uZTdhZTFlOWIwMzc5MDc5
MGRmZTdiZTEzNDAwNDY0YjZjMjNmZjcwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5oCkBA
IC01Nyw3ICs1Nyw3IEBAIGNsYXNzIE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZSBmaW5hbAogI2Vu
ZGlmCiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU+
IGNyZWF0ZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYsIFJlbW90ZU1lZGlhU291cmNlSWRlbnRpZmll
ciwgUmVtb3RlTWVkaWFQbGF5ZXJNSU1FVHlwZUNhY2hlJiwgY29uc3QgTWVkaWFQbGF5ZXJQcml2
YXRlUmVtb3RlJiwgV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Kik7CisgICAgc3Rh
dGljIFJlZjxNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGU+IGNyZWF0ZShHUFVQcm9jZXNzQ29ubmVj
dGlvbiYsIFJlbW90ZU1lZGlhU291cmNlSWRlbnRpZmllciwgUmVtb3RlTWVkaWFQbGF5ZXJNSU1F
VHlwZUNhY2hlJiwgY29uc3QgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlJiwgV2ViQ29yZTo6TWVk
aWFTb3VyY2VQcml2YXRlQ2xpZW50Jik7CiAgICAgdmlydHVhbCB+TWVkaWFTb3VyY2VQcml2YXRl
UmVtb3RlKCk7CiAKICAgICAvLyBNZWRpYVNvdXJjZVByaXZhdGUgb3ZlcnJpZGVzCkBAIC04Miw3
ICs4Miw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIE1lZGlhU291cmNlUHJp
dmF0ZVJlbW90ZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYsIFJlbW90ZU1lZGlhU291cmNlSWRlbnRp
ZmllciwgUmVtb3RlTWVkaWFQbGF5ZXJNSU1FVHlwZUNhY2hlJiwgY29uc3QgTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlJiwgV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Kik7CisgICAg
TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiwgUmVtb3RlTWVk
aWFTb3VyY2VJZGVudGlmaWVyLCBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUmLCBjb25z
dCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGUmLCBXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVD
bGllbnQmKTsKIAogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwg
SVBDOjpEZWNvZGVyJikgZmluYWw7CiAgICAgdm9pZCBzZWVrVG9UaW1lKGNvbnN0IE1lZGlhVGlt
ZSYpOwpAQCAtOTEsNyArOTEsNyBAQCBwcml2YXRlOgogICAgIFJlbW90ZU1lZGlhU291cmNlSWRl
bnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgUmVtb3RlTWVkaWFQbGF5ZXJNSU1FVHlwZUNhY2hl
JiBtX21pbWVUeXBlQ2FjaGU7CiAgICAgV2Vha1B0cjxNZWRpYVBsYXllclByaXZhdGVSZW1vdGU+
IG1fbWVkaWFQbGF5ZXJQcml2YXRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQ+IG1fY2xpZW50OworICAgIFdlYWtQdHI8V2ViQ29yZTo6TWVkaWFTb3VyY2VQ
cml2YXRlQ2xpZW50PiBtX2NsaWVudDsKICAgICBWZWN0b3I8UmVmUHRyPFNvdXJjZUJ1ZmZlclBy
aXZhdGVSZW1vdGU+PiBtX3NvdXJjZUJ1ZmZlcnM7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457332</attachid>
            <date>2022-04-12 08:26:40 -0700</date>
            <delta_ts>2022-04-12 12:37:39 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-239088-20220412082639.patch</filename>
            <type>text/plain</type>
            <size>41669</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyNzE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTAwNjhiYmExNzI1ZTJj
N2E3NzVlMjc0YTk4Mjc1ODZlN2EwMDRkYy4uMjQwMDhhOTMwMzExZTIxZWIxMWEwZmU5NmE2Yzcz
MjRkM2RiMWI5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIyLTA0LTExICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIExlYWsgb2YgTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQyBhbmQgUmVtb3RlTWVkaWFTb3VyY2VQcm94eQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM5MDg4CisgICAgICAgIDxyZGFy
Oi8vOTA2OTMwOTQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAg
ICAgIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMgaG9sZHMgYSBzdHJvbmcgcmVmZXJlbmNlIHRv
IGl0cyBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQsIHdoaWNoIGlzCisgICAgICAgIGEgTWVkaWFT
b3VyY2Ugd2hlbiBydW5uaW5nIGluLXByb2Nlc3MsIGJ1dCBhIFJlbW90ZU1lZGlhU291cmNlUHJv
eHkgd2hlbiBydW5uaW5nIGluIG11bHRpLXByb2Nlc3MuCisgICAgICAgIEluIGJvdGggY2FzZXMs
IHRoZSBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQgaG9sZHMgYSBzdHJvbmcgcmVmZXJlbmNlIHRv
IGl0cyBwcml2YXRlIG9iamVjdCBhcyB3ZWxsLgorICAgICAgICBIb3dldmVyLCBpbiB0aGUgbXVs
dGktcHJvY2VzcyBzY2VuYXJpbywgdGhpcyBjeWNsZSBpcyBuZXZlciBicm9rZW4sIGNhdXNpbmcg
YSBsZWFrLgorCisgICAgICAgIFJhdGhlciB0aGFuIGRldGVybWluZSB0aGUgY29ycmVjdCBwb2lu
dCB0byBicmVhayB0aGlzIHJldGFpbi1jeWNsZSwgbW9kaWZ5IE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudAorICAgICAgICB0byBiZSBhIENhbk1ha2VXZWFrUHRyIGFic3RyYWN0IGNsYXNzIChyYXRo
ZXIgdGhhbiBhIFJlZkNvdW50ZWQgb25lKSwgYW5kIGNvbnZlcnQgYWxsIGNhc2VzIHdoZXJlCisg
ICAgICAgIHRoYXQgY2xpZW50J3MgcG9pbnRlciBpcyBzdG9yZWQgZnJvbSBhIFJlZi9SZWZQdHIg
dG8gYSBXZWFrUHRyLiBUaGlzIG1lYW5zIGhhdmluZyB0byBudWxsLWNoZWNrCisgICAgICAgIGV2
ZXJ5IHRpbWUgdGhhdCBwb2ludGVyIGlzIHVzZWQuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c291cmNlL01lZGlhU291cmNlLmg6CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXI6OmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6
OmxvYWRXaXRoTmV4dE1lZGlhRW5naW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllci5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJp
dmF0ZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNs
aWVudC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpsb2FkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRl
TWVkaWFTb3VyY2VBVkZPYmpDLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpsb2Fk
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBs
YXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9i
akMubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFW
Rk9iakM6OmxvYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9v
YmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y3JlYXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6Ok1lZGlhU291cmNlUHJpdmF0
ZUFWRk9iakMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6
ZHVyYXRpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZG
T2JqQzo6YnVmZmVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZG
T2JqQzo6c2Vla1RvVGltZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjpmYWlsZWRUb0NyZWF0ZVJlbmRlcmVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6bG9hZCk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5o
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyTVNFLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJp
dmF0ZUdTdHJlYW1lck1TRTo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJNU0U6OnVuYmxvY2tEdXJhdGlvbkNoYW5nZXMpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
TVNFLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvaG9sZXB1bmNoL01lZGlhUGxheWVy
UHJpdmF0ZUhvbGVQdW5jaC5oOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVkaWFzb3VyY2Uv
TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TW9ja01l
ZGlhUGxheWVyTWVkaWFTb3VyY2U6OmxvYWQpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVk
aWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TW9ja01lZGlhU291cmNlUHJpdmF0ZTo6TW9ja01lZGlhU291cmNlUHJpdmF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpkdXJhdGlvbik6Cisg
ICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpidWZmZXJlZCk6CisgICAg
ICAgIChXZWJDb3JlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpzZWVrVG9UaW1lKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuaDoK
KwogMjAyMi0wNC0xMSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtKU0NdIFJlZHVjZSB1c2Ugb2YgdW5uZWNlc3NhcnkgY3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b20gbnVtYmVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwppbmRleCBlNGY5M2Y4ZTIzMDViNTQ5MzIxZTczMmE3ZThiYzc0MGMw
ZmZjNWQwLi44ZDc5NzZiZDllMWM4ZDMwYmQ1MjZmYWUyYTZlYzAzZGVmMTA2YjczIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDI1IEBACisyMDIyLTA0LTExICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBw
bGUuY29tPgorCisgICAgICAgIExlYWsgb2YgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyBhbmQg
UmVtb3RlTWVkaWFTb3VyY2VQcm94eQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjM5MDg4CisgICAgICAgIDxyZGFyOi8vOTA2OTMwOTQ+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIEFkb3B0IGNoYW5nZXMgdG8g
TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50IG1ha2luZyBpdCBhIENhbk1ha2VXZWFrUHRyIGNsYXNz
LgorCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6bG9hZE1lZGlhU291
cmNlKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhU291cmNlUHJveHku
aDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1v
dGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmxvYWQp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90
ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJl
bW90ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjpNZWRpYVNv
dXJjZVByaXZhdGVSZW1vdGUpOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVNvdXJjZVByaXZhdGVS
ZW1vdGU6OnNlZWtUb1RpbWUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
U291cmNlUHJpdmF0ZVJlbW90ZS5oOgorCiAyMDIyLTA0LTExICBXZW5zb24gSHNpZWggIDx3ZW5z
b25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyODk3ODUpOiBbaU9T
XSBVbmFibGUgdG8gZG91YmxlLWNsaWNrIHRvIHNlbGVjdCBhIHdvcmQgaW4gYSByZWNlaXZlZCBl
bWFpbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9NZWRp
YVNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9NZWRpYVNvdXJj
ZS5oCmluZGV4IGEyNmU1NTNlN2ExY2QzNTBhM2I0NjRmMDNlMTQzOWViNmFlMWYyZDEuLmQ5NTlm
ZWRiYzk5Mjk0YTc2YTZlYWM3MDI0NWFkMzljNzZmYTdkODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmgKQEAgLTM5LDYgKzM5LDcgQEAK
ICNpbmNsdWRlICJNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQuaCIKICNpbmNsdWRlICJVUkxSZWdp
c3RyeS5oIgogI2luY2x1ZGUgPHd0Zi9Mb2dnZXJIZWxwZXIuaD4KKyNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTUwLDcgKzUxLDggQEAgY2xhc3MgU291cmNlQnVmZmVyUHJpdmF0ZTsKIGNsYXNzIFRp
bWVSYW5nZXM7CiAKIGNsYXNzIE1lZGlhU291cmNlIGZpbmFsCi0gICAgOiBwdWJsaWMgTWVkaWFT
b3VyY2VQcml2YXRlQ2xpZW50CisgICAgOiBwdWJsaWMgUmVmQ291bnRlZDxNZWRpYVNvdXJjZT4K
KyAgICAsIHB1YmxpYyBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQKICAgICAsIHB1YmxpYyBBY3Rp
dmVET01PYmplY3QKICAgICAsIHB1YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhCiAgICAg
LCBwdWJsaWMgVVJMUmVnaXN0cmFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwCmluZGV4IDZhYjRiZDU1MGYwY2NlZWFiYmQ2M2M4OGUzNzBlZjMwMzFjZjcwNDEuLjNk
ZTZmNDI3N2IwNTI0ZDlmNDVmZmE2YWI2YzJjMmU1MzlhMjRlMTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTU2OSw3ICsxNTY5LDcgQEAgdm9pZCBIVE1M
TWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50
VHlwZSYgY29udGVudFQKICAgICAgICAgICAgIC8vIHdoaWxlIHByb2Nlc3NpbmcgcmVtYWluZGVy
IG9mIGxvYWQgZmFpbHVyZS4KICAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UgPSBudWxscHRyOwog
ICAgICAgICAgICAgbWVkaWFMb2FkaW5nRmFpbGVkKE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6
OkZvcm1hdEVycm9yKTsKLSAgICAgICAgfSBlbHNlIGlmICghbV9wbGF5ZXItPmxvYWQodXJsLCBj
b250ZW50VHlwZSwgbV9tZWRpYVNvdXJjZS5nZXQoKSkpIHsKKyAgICAgICAgfSBlbHNlIGlmICgh
bV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50VHlwZSwgKm1fbWVkaWFTb3VyY2UpKSB7CiAgICAg
ICAgICAgICAvLyBXZSBoYXZlIHRvIGRldGFjaCB0aGUgTWVkaWFTb3VyY2UgYmVmb3JlIHdlIGZv
cmdldCB0aGUgcmVmZXJlbmNlIHRvIGl0LgogICAgICAgICAgICAgbV9tZWRpYVNvdXJjZS0+ZGV0
YWNoRnJvbUVsZW1lbnQoKnRoaXMpOwogICAgICAgICAgICAgbV9tZWRpYVNvdXJjZSA9IG51bGxw
dHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBs
YXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5j
cHAKaW5kZXggNGUyZDJkNjg2Mjc5ZmVlMDQyYmNjZTBiYzYzZWFkOWEwODJmMTg4ZS4uZTRmNzEw
NDUyNzBiYmIwNWNlYWU4YjljM2JlNTgwOWUwOTJjMjdkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcApAQCAtMTAzLDcgKzEwMyw3IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgbG9hZChjb25zdCBTdHJpbmcmKSBmaW5hbCB7IH0KICNpZiBF
TkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250
ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopIGZpbmFsIHsgfQorICAgIHZvaWQg
bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudCYpIGZpbmFsIHsgfQogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2
b2lkIGxvYWQoTWVkaWFTdHJlYW1Qcml2YXRlJikgZmluYWwgeyB9CkBAIC01MDgsMTAgKzUwOCw5
IEBAIGJvb2wgTWVkaWFQbGF5ZXI6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRU
eXBlJiBjb250ZW50VHlwZSwgY29uc3QgU3RyCiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNF
KQotYm9vbCBNZWRpYVBsYXllcjo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5
cGUmIGNvbnRlbnRUeXBlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqIG1lZGlhU291cmNlKQor
Ym9vbCBNZWRpYVBsYXllcjo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5cGUm
IGNvbnRlbnRUeXBlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmIG1lZGlhU291cmNlKQogewog
ICAgIEFTU0VSVCghbV9yZWxvYWRUaW1lci5pc0FjdGl2ZSgpKTsKLSAgICBBU1NFUlQobWVkaWFT
b3VyY2UpOwogCiAgICAgbV9tZWRpYVNvdXJjZSA9IG1lZGlhU291cmNlOwogICAgIG1fY29udGVu
dFR5cGUgPSBjb250ZW50VHlwZTsKQEAgLTYyMyw3ICs2MjIsNyBAQCB2b2lkIE1lZGlhUGxheWVy
Ojpsb2FkV2l0aE5leHRNZWRpYUVuZ2luZShjb25zdCBNZWRpYVBsYXllckZhY3RvcnkqIGN1cnJl
bnQpCiAgICAgaWYgKG1fcHJpdmF0ZSkgewogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCiAgICAg
ICAgIGlmIChtX21lZGlhU291cmNlKQotICAgICAgICAgICAgbV9wcml2YXRlLT5sb2FkKG1fdXJs
LCBtX2NvbnRlbnRNSU1FVHlwZVdhc0luZmVycmVkRnJvbUV4dGVuc2lvbiA/IENvbnRlbnRUeXBl
KCkgOiBtX2NvbnRlbnRUeXBlLCBtX21lZGlhU291cmNlLmdldCgpKTsKKyAgICAgICAgICAgIG1f
cHJpdmF0ZS0+bG9hZChtX3VybCwgbV9jb250ZW50TUlNRVR5cGVXYXNJbmZlcnJlZEZyb21FeHRl
bnNpb24gPyBDb250ZW50VHlwZSgpIDogbV9jb250ZW50VHlwZSwgKm1fbWVkaWFTb3VyY2UpOwog
ICAgICAgICBlbHNlCiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKaW5kZXggYjFjMTMyNDc2
ZWU0ODgxNTZlY2QzN2NiZWNiNTQ2MjQ1YTc4YmE2OS4uYjZhMWRmZmI1ZTg1OTY5ODFhZjVmYWVk
NzQ5NGM3MGU3ZTI1NDA1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5oCkBAIC0zNTgsNyArMzU4LDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBs
b2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgY29uc3QgU3RyaW5nJiBrZXlTeXN0
ZW0pOwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi0gICAgYm9vbCBsb2FkKGNvbnN0IFVSTCYs
IGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Kik7CisgICAgYm9v
bCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50Jik7CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGJvb2wgbG9h
ZChNZWRpYVN0cmVhbVByaXZhdGUmKTsKQEAgLTc0MSw3ICs3NDEsNyBAQCBwcml2YXRlOgogICAg
IFBpdGNoQ29ycmVjdGlvbkFsZ29yaXRobSBtX3BpdGNoQ29ycmVjdGlvbkFsZ29yaXRobSB7IFBp
dGNoQ29ycmVjdGlvbkFsZ29yaXRobTo6QmVzdEFsbEFyb3VuZCB9OwogCiAjaWYgRU5BQkxFKE1F
RElBX1NPVVJDRSkKLSAgICBSZWZQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX21lZGlh
U291cmNlOworICAgIFdlYWtQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX21lZGlhU291
cmNlOwogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBSZWZQdHI8TWVkaWFT
dHJlYW1Qcml2YXRlPiBtX21lZGlhU3RyZWFtOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAppbmRleCAxOGRiYmU5ZTZjNWM5
ZGNiZTc5YWQyNmY1ZTIxOWUyNWEwMTdhOGVkLi4xYTc1MTVmZGIyMzk0ZThlM2E4ZjliOTRhMjY1
OTZmMjMxNWYyNmFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllclByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllclByaXZhdGUuaApAQCAtNTIsNyArNTIsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIGxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiwgY29u
c3QgU3RyaW5nJikgeyBsb2FkKHVybC5zdHJpbmcoKSk7IH0KIAogI2lmIEVOQUJMRShNRURJQV9T
T1VSQ0UpCi0gICAgdmlydHVhbCB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5
cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGxv
YWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGll
bnQmKSA9IDA7CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZpcnR1YWwg
dm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0ZSYpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhU291cmNlUHJpdmF0ZUNsaWVudC5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgK
aW5kZXggMzY5MGUzNjNjYjQ2NDNhYjJkMWYyMjEyZTc1NjYzYTlmNmZjYjRmOC4uYzJmMGQwNTI4
ZDE1NDdkMDY4NDBjZWFkMWEzNGNkZWViMTFkZmE5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmgK
QEAgLTIzLDIwICsyMywxOSBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBNZWRp
YVNvdXJjZVByaXZhdGVDbGllbnRfaAotI2RlZmluZSBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnRf
aAorI3ByYWdtYSBvbmNlCiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQogCiAjaW5jbHVkZSAi
UGxhdGZvcm1UaW1lUmFuZ2VzLmgiCiAjaW5jbHVkZSA8d3RmL0xvZ2dlci5oPgotI2luY2x1ZGUg
PHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBjbGFzcyBNZWRpYVNvdXJjZVByaXZhdGU7CiAKLWNsYXNzIE1lZGlhU291
cmNlUHJpdmF0ZUNsaWVudCA6IHB1YmxpYyBSZWZDb3VudGVkPE1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudD4geworY2xhc3MgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50IDogcHVibGljIENhbk1ha2VX
ZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gewogcHVibGljOgogICAgIHZpcnR1YWwg
fk1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCgpID0gZGVmYXVsdDsKIApAQCAtNTksNSArNTgsMyBA
QCBwdWJsaWM6CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU09VUkNFKQotCi0jZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bi5jcHAKaW5kZXggNzBlZDBiZWRlMWE3YmQ0ODgyMGNhMDQzNzE0NzI4ZDAyNjQyNzY2Ni4uZGZh
MzgzNzYyMjNjN2RmNTMyYjY0YmM2N2UxMTg3OGVlODA1NGQzZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAKQEAgLTIwNSw3
ICsyMDUsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6bG9hZChjb25z
dCBTdHJpbmcmIHVybCkKIH0KIAogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi12b2lkIE1lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50
VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCopCit2b2lkIE1lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbjo6bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlh
U291cmNlUHJpdmF0ZUNsaWVudCYpCiB7CiAgICAgc2V0TmV0d29ya1N0YXRlKE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uaAppbmRleCA0NDg0MzJhZTdmY2QzMTY5
N2MyMDkxZGYyMzEyNWNiNWZjMWU5ODE5Li45ZTllZGQ0ZDMwNjZlNTYyODA4MWQwYWE0NzUxODAw
NjYzNjI4YjA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbi5oCkBAIC0xNjQsNyArMTY0LDcgQEAgcHJvdGVjdGVkOgogICAgIC8vIE1l
ZGlhUGxheWVyUHJpdmF0ZVByaXZhdGVJbnRlcmZhY2Ugb3ZlcnJpZGVzLgogICAgIHZvaWQgbG9h
ZChjb25zdCBTdHJpbmcmIHVybCkgb3ZlcnJpZGU7CiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkK
LSAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJj
ZVByaXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29u
c3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNl
bmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFt
UHJpdmF0ZSYpIG92ZXJyaWRlIHsgc2V0TmV0d29ya1N0YXRlKE1lZGlhUGxheWVyOjpOZXR3b3Jr
U3RhdGU6OkZvcm1hdEVycm9yKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAppbmRleCAxYzU3
ZmY4ZDYwZWQ2NDNjNTYwMDk3NDZmNDE3MTdlYTUyYjVmMDc4Li4xMWQ3ZWU1OGM2MGQwODlhY2Rl
YjEyZjZmODM1ZDdiMTVlMDFmNmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJj
ZUFWRk9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaApAQCAtMTY3
LDcgKzE2Nyw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgLy8gTWVkaWFQbGF5ZXJQcml2YXRl
SW50ZXJmYWNlCiAgICAgdm9pZCBsb2FkKGNvbnN0IFN0cmluZyYgdXJsKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3Qg
Q29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSBv
dmVycmlkZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZP
YmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCmluZGV4IGQxOGYzOTZk
ZmU5ZGIzNDRjMDEyZTgxY2VkMDJkYTU1YzgwNjgwY2EuLjNlZjFhYmM1YzcxMGU2M2IyZDQ4NGEz
MjcwZTllMGNiMWZiZDdlM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZG
T2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0KQEAgLTI4MCw3
ICsyODAsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6bG9h
ZChjb25zdCBTdHJpbmcmKQogICAgIG1fcGxheWVyLT5uZXR3b3JrU3RhdGVDaGFuZ2VkKCk7CiB9
CiAKLXZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpsb2FkKGNvbnN0
IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGll
bnQpCit2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6bG9hZChjb25z
dCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYgY2xp
ZW50KQogewogICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUik7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxh
eWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1B
VkZPYmpDLmgKaW5kZXggMGU3NDE4N2MxMzBkNWRjNmZlY2VkZjdmNjdlOGIxOTEwYmYyYzM0YS4u
YzRhMzFiZTU1YzUzZTk0ZGRjZjUxNDhlNWQzYTVjYWU4OTMzMjVkZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5
ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJl
YW1BVkZPYmpDLmgKQEAgLTk1LDcgKzk1LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgbG9hZChj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZv
aWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0
ZUNsaWVudCopIG92ZXJyaWRlOworICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250
ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIG92ZXJyaWRlOwogI2VuZGlmCiAg
ICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0ZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgY2Fu
Y2VsTG9hZCgpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1B
VkZPYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLm1tCmluZGV4IDllMDU5
Nzg2NGE2NTYzMzMyNDAxYzkxMzE5YjNiODY0NjEzNDZjYjAuLjI2NjdjYWY2OTkyMTAwNTEyMmFl
YmY1ZTAzMTIwZjZmOWZiYjhkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFt
QVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMubW0KQEAgLTQ1
MCw3ICs0NTAsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQzo6
bG9hZChjb25zdCBTdHJpbmcmKQogfQogCiAjaWYgRU5BQkxFKE1FRElBX1NPVVJDRSkKLXZvaWQg
TWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDOjpsb2FkKGNvbnN0IFVSTCYsIGNv
bnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KikKK3ZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDOjpsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENv
bnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JikKIHsKICAgICAvLyBUaGlzIG1l
ZGlhIGVuZ2luZSBvbmx5IHN1cHBvcnRzIE1lZGlhU3RyZWFtIFVSTHMuCiAgICAgc2NoZWR1bGVE
ZWZlcnJlZFRhc2soW3RoaXNdIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
U291cmNlUHJpdmF0ZUFWRk9iakMuaAppbmRleCA4OTUxYjI0N2RkMDAxNTBlZDE2Y2UwNDFhY2Nl
Y2JiZmNiZWQ1ZjhhLi45YzI4YzQ5ZjMwYzBjNGYzMjEwMTQ2ODZhMzIxOTEyZWRiMTFlNGJlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2Jq
Qy5oCkBAIC01OSw3ICs1OSw3IEBAIGNsYXNzIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMgZmlu
YWwKICNlbmRpZgogewogcHVibGljOgotICAgIHN0YXRpYyBSZWY8TWVkaWFTb3VyY2VQcml2YXRl
QVZGT2JqQz4gY3JlYXRlKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYsIE1l
ZGlhU291cmNlUHJpdmF0ZUNsaWVudCopOworICAgIHN0YXRpYyBSZWY8TWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQz4gY3JlYXRlKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYs
IE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpOwogICAgIHZpcnR1YWwgfk1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakMoKTsKIAogICAgIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2Jq
QyogcGxheWVyKCkgY29uc3QgeyByZXR1cm4gbV9wbGF5ZXIuZ2V0KCk7IH0KQEAgLTEyMCw3ICsx
MjAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBmYWlsZWRUb0NyZWF0ZVJlbmRlcmVyKFJlbmRlcmVy
VHlwZSk7CiAKIHByaXZhdGU6Ci0gICAgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRpYVBs
YXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQq
KTsKKyAgICBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U291cmNlQVZGT2JqQyYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpOwogCiAgICAgdm9pZCBz
b3VyY2VCdWZmZXJQcml2YXRlRGlkQ2hhbmdlQWN0aXZlU3RhdGUoU291cmNlQnVmZmVyUHJpdmF0
ZUFWRk9iakMqLCBib29sIGFjdGl2ZSk7CiAgICAgdm9pZCBzb3VyY2VCdWZmZXJQcml2YXRlRGlk
UmVjZWl2ZUluaXRpYWxpemF0aW9uU2VnbWVudChTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyop
OwpAQCAtMTM0LDcgKzEzNCw3IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOwogCiAgICAgV2Vha1B0cjxNZWRpYVBsYXllclByaXZhdGVNZWRp
YVNvdXJjZUFWRk9iakM+IG1fcGxheWVyOwotICAgIFJlZlB0cjxNZWRpYVNvdXJjZVByaXZhdGVD
bGllbnQ+IG1fY2xpZW50OworICAgIFdlYWtQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBt
X2NsaWVudDsKICAgICBWZWN0b3I8UmVmUHRyPFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDPj4g
bV9zb3VyY2VCdWZmZXJzOwogICAgIFZlY3RvcjxTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyo+
IG1fYWN0aXZlU291cmNlQnVmZmVyczsKICAgICBEZXF1ZTxTb3VyY2VCdWZmZXJQcml2YXRlQVZG
T2JqQyo+IG1fc291cmNlQnVmZmVyc05lZWRpbmdTZXNzaW9uczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tCmluZGV4IDEyMDFiNzI2
YmQwNDdjNWYxMTBmNzE0YWIxMDIzMTlhNjE2MjJjYmYuLmM2MjU0NTdhZmMxNjYzYWRmYzQ2MjFk
MjZjMjYxYmJkMjk1YzU0Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVk
aWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQpAQCAtNDYsMTQgKzQ2LDE0IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1hcmsgTWVkaWFTb3VyY2VQcml2YXRl
QVZGT2JqQwogCi1SZWY8TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQz4gTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6Y3JlYXRlKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYg
cGFyZW50LCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqIGNsaWVudCkKK1JlZjxNZWRpYVNvdXJj
ZVByaXZhdGVBVkZPYmpDPiBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpjcmVhdGUoTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDJiBwYXJlbnQsIE1lZGlhU291cmNlUHJpdmF0
ZUNsaWVudCYgY2xpZW50KQogewogICAgIGF1dG8gbWVkaWFTb3VyY2VQcml2YXRlID0gYWRvcHRS
ZWYoKm5ldyBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDKHBhcmVudCwgY2xpZW50KSk7Ci0gICAg
Y2xpZW50LT5zZXRQcml2YXRlQW5kT3BlbihtZWRpYVNvdXJjZVByaXZhdGUuY29weVJlZigpKTsK
KyAgICBjbGllbnQuc2V0UHJpdmF0ZUFuZE9wZW4obWVkaWFTb3VyY2VQcml2YXRlLmNvcHlSZWYo
KSk7CiAgICAgcmV0dXJuIG1lZGlhU291cmNlUHJpdmF0ZTsKIH0KIAotTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakMmIHBhcmVudCwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGll
bnQpCitNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpD
KE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQyYgcGFyZW50LCBNZWRpYVNvdXJj
ZVByaXZhdGVDbGllbnQmIGNsaWVudCkKICAgICA6IG1fcGxheWVyKHBhcmVudCkKICAgICAsIG1f
Y2xpZW50KGNsaWVudCkKICAgICAsIG1faXNFbmRlZChmYWxzZSkKQEAgLTY0LDcgKzY0LDcgQEAg
TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyhNZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXIKIHsKICAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIp
OwogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAotICAgIG1fY2xpZW50LT5zZXRMb2dJZGVudGlm
aWVyKG1fbG9nSWRlbnRpZmllcik7CisgICAgY2xpZW50LnNldExvZ0lkZW50aWZpZXIobV9sb2dJ
ZGVudGlmaWVyKTsKICNlbmRpZgogfQogCkBAIC0xMjEsMTIgKzEyMSwxNiBAQCB2b2lkIE1lZGlh
U291cmNlUHJpdmF0ZUFWRk9iakM6OnJlbW92ZVNvdXJjZUJ1ZmZlcihTb3VyY2VCdWZmZXJQcml2
YXRlKiBidWZmZXIpCiAKIE1lZGlhVGltZSBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpkdXJh
dGlvbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fY2xpZW50LT5kdXJhdGlvbigpOworICAgIGlm
IChtX2NsaWVudCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5kdXJhdGlvbigpOworICAgIHJl
dHVybiBNZWRpYVRpbWU6OmludmFsaWRUaW1lKCk7CiB9CiAKIHN0ZDo6dW5pcXVlX3B0cjxQbGF0
Zm9ybVRpbWVSYW5nZXM+IE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmJ1ZmZlcmVkKCkKIHsK
LSAgICByZXR1cm4gbV9jbGllbnQtPmJ1ZmZlcmVkKCk7CisgICAgaWYgKG1fY2xpZW50KQorICAg
ICAgICByZXR1cm4gbV9jbGllbnQtPmJ1ZmZlcmVkKCk7CisgICAgcmV0dXJuIG51bGxwdHI7CiB9
CiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6ZHVyYXRpb25DaGFuZ2VkKGNvbnN0
IE1lZGlhVGltZSYpCkBAIC0yMzYsNyArMjQwLDggQEAgdm9pZCBNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjp3aWxsU2VlaygpCiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6c2Vl
a1RvVGltZShjb25zdCBNZWRpYVRpbWUmIHRpbWUpCiB7Ci0gICAgbV9jbGllbnQtPnNlZWtUb1Rp
bWUodGltZSk7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+c2Vla1RvVGlt
ZSh0aW1lKTsKIH0KIAogTWVkaWFUaW1lIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmZhc3RT
ZWVrVGltZUZvck1lZGlhVGltZShjb25zdCBNZWRpYVRpbWUmIHRhcmdldFRpbWUsIGNvbnN0IE1l
ZGlhVGltZSYgbmVnYXRpdmVUaHJlc2hvbGQsIGNvbnN0IE1lZGlhVGltZSYgcG9zaXRpdmVUaHJl
c2hvbGQpCkBAIC0zNTcsNyArMzYyLDggQEAgV1RGTG9nQ2hhbm5lbCYgTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6bG9nQ2hhbm5lbCgpIGNvbnN0CiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRl
QVZGT2JqQzo6ZmFpbGVkVG9DcmVhdGVSZW5kZXJlcihSZW5kZXJlclR5cGUgdHlwZSkKIHsKLSAg
ICBtX2NsaWVudC0+ZmFpbGVkVG9DcmVhdGVSZW5kZXJlcih0eXBlKTsKKyAgICBpZiAobV9jbGll
bnQpCisgICAgICAgIG1fY2xpZW50LT5mYWlsZWRUb0NyZWF0ZVJlbmRlcmVyKHR5cGUpOwogfQog
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDLm1tCmluZGV4IDBlOGVhNjRmMDgzOGU2MmFkZTVjZjg5NzJjYWQxODlhYzU1ZDM1Njgu
LjQwNGNiNjdlNzRkMjRjYWQwNGEwOGVmYmU0NWRiODUxNmRmODZmY2YgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tCkBAIC0z
NjEsNyArMzYxLDYgQEAgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6On5Tb3VyY2VCdWZmZXJQ
cml2YXRlQVZGT2JqQygpCiB7CiAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSKTsKIAotICAg
IEFTU0VSVCghbV9jbGllbnQpOwogICAgIHNvdXJjZUJ1ZmZlck1hcCgpLnJlbW92ZShtX21hcElE
KTsKICAgICBkZXN0cm95U3RyZWFtRGF0YVBhcnNlcigpOwogICAgIGRlc3Ryb3lSZW5kZXJlcnMo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5k
ZXggMDFmZWZlYTMyZDIxMzZkZmQxZTFmM2MyNWI4MTYyNjk2OTBmYmQxNC4uZjgzNmUzN2E4NTlh
ODQ1MWVjODQzNjBlNjk5ZTkxOTJmMTBiYjNjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTM1Myw3ICszNTMsNyBAQCB2b2lkIE1lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6bG9hZChjb25zdCBTdHJpbmcmIHVybFN0cmluZykKIH0K
IAogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi12b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lcjo6bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJp
dmF0ZUNsaWVudCopCit2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6bG9hZChjb25z
dCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpCiB7
CiAgICAgLy8gUHJvcGVybHkgZmFpbCBzbyB0aGUgZ2xvYmFsIE1lZGlhUGxheWVyIHRyaWVzIHRv
IGZhbGxiYWNrIHRvIHRoZSBuZXh0IE1lZGlhUGxheWVyUHJpdmF0ZS4KICAgICBtX25ldHdvcmtT
dGF0ZSA9IE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4IDMyZWQzYWU4YjI5YzAw
ZmU4ODE0YmRkMDZlNjQ5Njg1NWE3YWRlZTAuLmQxY2JiZGZlZGY5ZjY5ZTk0MzI3ODJlNTNkMWFh
YWM5ZjgyZTdlNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNBdWRpbygpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIG1faGFzQXVkaW87IH0KICAgICB2b2lkIGxvYWQoY29uc3QgU3Ry
aW5nICZ1cmwpIG92ZXJyaWRlOwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpCi0gICAgdm9pZCBs
b2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xp
ZW50Kikgb3ZlcnJpZGU7CisgICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYsIGNvbnN0IENvbnRlbnRU
eXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50Jikgb3ZlcnJpZGU7CiAjZW5kaWYKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgbG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKSBv
dmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyTVNFLmNwcAppbmRleCAyY2VjNjg0NjZmZmMzZDkxOTc2YzI5MDRiZDc1MGJiYTZi
ODY5ZTc1Li41NmE4MTY2OTM3YTkxOTQ0MDFmM2FhZGYyNDE2ZTgyM2VlMjI3OWE5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0Uu
Y3BwCkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJN
U0U6OmxvYWQoY29uc3QgU3RyaW5nJikKICAgICBtX3BsYXllci0+bmV0d29ya1N0YXRlQ2hhbmdl
ZCgpOwogfQogCi12b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRTo6bG9hZChjb25z
dCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQq
IG1lZGlhU291cmNlKQordm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0U6OmxvYWQo
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xp
ZW50JiBtZWRpYVNvdXJjZSkKIHsKICAgICBhdXRvIG1zZUJsb2JVUkkgPSBtYWtlU3RyaW5nKCJt
ZWRpYXNvdXJjZSIsIHVybC5zdHJpbmcoKS5pc0VtcHR5KCkgPyAiYmxvYjovLyJfcyA6IHVybC5z
dHJpbmcoKSk7CiAgICAgR1NUX0RFQlVHKCJMb2FkaW5nICVzIiwgbXNlQmxvYlVSSS5hc2NpaSgp
LmRhdGEoKSk7CkBAIC0zMTcsNyArMzE3LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXJNU0U6OmR1cmF0aW9uQ2hhbmdlZCgpCiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsK
IAogICAgIE1lZGlhVGltZSBwcmV2aW91c0R1cmF0aW9uID0gbV9tZWRpYVRpbWVEdXJhdGlvbjsK
LSAgICBtX21lZGlhVGltZUR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZS0+ZHVyYXRpb24oKTsKKyAg
ICBtX21lZGlhVGltZUR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZSA/IG1fbWVkaWFTb3VyY2UtPmR1
cmF0aW9uKCkgOiBNZWRpYVRpbWU6OmludmFsaWRUaW1lKCk7CiAKICAgICBHU1RfVFJBQ0UoInBy
ZXZpb3VzPSVzLCBuZXc9JXMiLCB0b1N0cmluZyhwcmV2aW91c0R1cmF0aW9uKS51dGY4KCkuZGF0
YSgpLCB0b1N0cmluZyhtX21lZGlhVGltZUR1cmF0aW9uKS51dGY4KCkuZGF0YSgpKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFLmgK
aW5kZXggZjIxY2YwMGE3MmZiZWM1ZTEzMzZjN2Q5MWFmYmZiNTQwMTg0YmQ3Zi4uN2ZkZDdmMGY1
YzFmODA0OWZiY2U5NGQ0NzIyZWI0ZTE4NWEwYzk1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXJNU0UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvbXNlL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lck1TRS5oCkBAIC00OSw3ICs0OSw3IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCByZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5naW5l
UmVnaXN0cmFyKTsKIAogICAgIHZvaWQgbG9hZChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQqKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3Qg
Q29udGVudFR5cGUmLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmKSBvdmVycmlkZTsKIAogICAg
IHZvaWQgdXBkYXRlRG93bmxvYWRCdWZmZXJpbmdGbGFnKCkgb3ZlcnJpZGUgeyB9OwogCkBAIC0x
MDUsNyArMTA1LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgcHJvcGFnYXRlUmVhZHlTdGF0ZVRv
UGxheWVyKCk7CiAKLSAgICBSZWZQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX21lZGlh
U291cmNlOworICAgIFdlYWtQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX21lZGlhU291
cmNlOwogICAgIFJlZlB0cjxNZWRpYVNvdXJjZVByaXZhdGVHU3RyZWFtZXI+IG1fbWVkaWFTb3Vy
Y2VQcml2YXRlOwogICAgIE1lZGlhVGltZSBtX21lZGlhVGltZUR1cmF0aW9uOwogICAgIGJvb2wg
bV9hcmVEdXJhdGlvbkNoYW5nZXNCbG9ja2VkID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhU291cmNlUHJpdmF0
ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvbXNlL01lZGlhU291cmNlUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggYTNhMTNjYmU0ZTU4
OWVjZTYwZWQzNTEzNGZiNTAwNGNmMDhhNjExOC4uMDM3NjJlNmVkMmU5ZWM1ZjdlYTNjNzFkNzE4
YmMxMmZkOTk1MjAzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL21zZS9NZWRpYVNvdXJjZVByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFTb3VyY2VQ
cml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTA0LDcgKzEwNCw3IEBAIHZvaWQgTWVkaWFTb3VyY2VQ
cml2YXRlR1N0cmVhbWVyOjpkdXJhdGlvbkNoYW5nZWQoY29uc3QgTWVkaWFUaW1lJikKIHsKICAg
ICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogCi0gICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9t
ZWRpYVNvdXJjZS0+ZHVyYXRpb24oKTsKKyAgICBNZWRpYVRpbWUgZHVyYXRpb24gPSBtX21lZGlh
U291cmNlID8gbV9tZWRpYVNvdXJjZS0+ZHVyYXRpb24oKSA6IE1lZGlhVGltZTo6aW52YWxpZFRp
bWUoKTsKICAgICBHU1RfVFJBQ0UoImR1cmF0aW9uOiAlZiIsIGR1cmF0aW9uLnRvRmxvYXQoKSk7
CiAgICAgaWYgKCFkdXJhdGlvbi5pc1ZhbGlkKCkgfHwgZHVyYXRpb24uaXNOZWdhdGl2ZUluZmlu
aXRlKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIE1lZGlhU291
cmNlUHJpdmF0ZUdTdHJlYW1lcjo6c2Vla0NvbXBsZXRlZCgpCiAKIE1lZGlhVGltZSBNZWRpYVNv
dXJjZVByaXZhdGVHU3RyZWFtZXI6OmR1cmF0aW9uKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9t
ZWRpYVNvdXJjZS0+ZHVyYXRpb24oKTsKKyAgICByZXR1cm4gbV9tZWRpYVNvdXJjZSA/IG1fbWVk
aWFTb3VyY2UtPmR1cmF0aW9uKCkgOiBNZWRpYVRpbWU6OmludmFsaWRUaW1lKCk7CiB9CiAKIE1l
ZGlhVGltZSBNZWRpYVNvdXJjZVByaXZhdGVHU3RyZWFtZXI6OmN1cnJlbnRNZWRpYVRpbWUoKSBj
b25zdApAQCAtMTg1LDcgKzE4NSw5IEBAIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlR1N0cmVhbWVy
OjpzdGFydFBsYXliYWNrSWZIYXNBbGxUcmFja3MoKQogCiBzdGQ6OnVuaXF1ZV9wdHI8UGxhdGZv
cm1UaW1lUmFuZ2VzPiBNZWRpYVNvdXJjZVByaXZhdGVHU3RyZWFtZXI6OmJ1ZmZlcmVkKCkKIHsK
LSAgICByZXR1cm4gbV9tZWRpYVNvdXJjZS0+YnVmZmVyZWQoKTsKKyAgICBpZiAobV9tZWRpYVNv
dXJjZSkKKyAgICAgICAgcmV0dXJuIG1fbWVkaWFTb3VyY2UtPmJ1ZmZlcmVkKCk7CisgICAgcmV0
dXJuIG51bGxwdHI7CiB9CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFTb3Vy
Y2VQcml2YXRlR1N0cmVhbWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvbXNlL01lZGlhU291cmNlUHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4IGJlZWMzMTBj
NWYwZGExYTZkNDZjZjc4ZjRmMjUxMmUwOTNlZDU5MWMuLjE4OTNkNzEzN2MyMWQ2YzNlM2QyN2M3
ZDMxMjkxNDM0MmQ1NDYzZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9tc2UvTWVkaWFTb3VyY2VQcml2YXRlR1N0cmVhbWVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVNvdXJj
ZVByaXZhdGVHU3RyZWFtZXIuaApAQCAtOTIsNyArOTIsNyBAQCBwcml2YXRlOgogCiAgICAgSGFz
aFNldDxSZWZQdHI8U291cmNlQnVmZmVyUHJpdmF0ZUdTdHJlYW1lcj4+IG1fc291cmNlQnVmZmVy
czsKICAgICBIYXNoU2V0PFNvdXJjZUJ1ZmZlclByaXZhdGVHU3RyZWFtZXIqPiBtX2FjdGl2ZVNv
dXJjZUJ1ZmZlcnM7Ci0gICAgUmVmPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9tZWRpYVNv
dXJjZTsKKyAgICBXZWFrUHRyPE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudD4gbV9tZWRpYVNvdXJj
ZTsKICAgICBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0UmIG1fcGxheWVyUHJpdmF0ZTsK
ICAgICBib29sIG1faXNFbmRlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2hhc0FsbFRyYWNrcyB7
IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9o
b2xlcHVuY2gvTWVkaWFQbGF5ZXJQcml2YXRlSG9sZVB1bmNoLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9ob2xlcHVuY2gvTWVkaWFQbGF5ZXJQcml2YXRlSG9sZVB1bmNoLmgK
aW5kZXggZTcwZDA1OGY2NGY3ZjE1ZDMxNGM1YTQ3NGI3YWU2NWI2ZGEyNjQxMy4uMzFmMDQ2ZWVj
N2Q0ZjcyYzg5NGNkOWM2N2YyOWZlZjhkNDE3ZmUxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvaG9sZXB1bmNoL01lZGlhUGxheWVyUHJpdmF0ZUhvbGVQdW5j
aC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2hvbGVwdW5jaC9NZWRp
YVBsYXllclByaXZhdGVIb2xlUHVuY2guaApAQCAtNTMsNyArNTMsNyBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIGxvYWQoY29uc3QgU3RyaW5nJikgZmluYWw7CiAjaWYgRU5BQkxFKE1FRElBX1NPVVJD
RSkKLSAgICB2b2lkIGxvYWQoY29uc3QgVVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBNZWRpYVNv
dXJjZVByaXZhdGVDbGllbnQqKSBmaW5hbCB7IH07CisgICAgdm9pZCBsb2FkKGNvbnN0IFVSTCYs
IGNvbnN0IENvbnRlbnRUeXBlJiwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50JikgZmluYWwgeyB9
OwogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2b2lkIGxvYWQoTWVkaWFT
dHJlYW1Qcml2YXRlJikgZmluYWwgeyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1l
ZGlhU291cmNlLmNwcAppbmRleCA2MDg4MGEwMTVlZTNkMTU1OTg0YTAwYzIyM2VhYmU1MTgxODQw
NzcwLi5jMGY5ZWMxYWMwZWQ3MDEyYzA2MmY1YjA1NTE5OWJlMGUxYmQyODQ5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXll
ck1lZGlhU291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlh
c291cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcApAQCAtMTExLDkgKzExMSw5IEBA
IHZvaWQgTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmxvYWQoY29uc3QgU3RyaW5nJikKICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotdm9pZCBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNv
dXJjZTo6bG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJp
dmF0ZUNsaWVudCogc291cmNlKQordm9pZCBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTo6bG9h
ZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVu
dCYgc291cmNlKQogewotICAgIG1fbWVkaWFTb3VyY2VQcml2YXRlID0gTW9ja01lZGlhU291cmNl
UHJpdmF0ZTo6Y3JlYXRlKCp0aGlzLCAqc291cmNlKTsKKyAgICBtX21lZGlhU291cmNlUHJpdmF0
ZSA9IE1vY2tNZWRpYVNvdXJjZVByaXZhdGU6OmNyZWF0ZSgqdGhpcywgc291cmNlKTsKIH0KIAog
dm9pZCBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTo6Y2FuY2VsTG9hZCgpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXll
ck1lZGlhU291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNl
L01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmgKaW5kZXggZDMyOWJhZDY4NGNlMzVhNzZlYjEz
NmY4ZTMyZTAyMTMwYTYxMzNiZi4uMTFiZmE5NGNlNjE4MTFiNzNmMzUxMmEwMjg2ZTk2NjMxZDAy
NzdmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJj
ZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaApAQCAtNjcs
NyArNjcsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIC8vIE1lZGlhUGxheWVyUHJpdmF0ZSBP
dmVycmlkZXMKICAgICB2b2lkIGxvYWQoY29uc3QgU3RyaW5nJiB1cmwpIG92ZXJyaWRlOwotICAg
IHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBDb250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJp
dmF0ZUNsaWVudCopIG92ZXJyaWRlOworICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBD
b250ZW50VHlwZSYsIE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIG92ZXJyaWRlOwogI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBsb2FkKE1lZGlhU3RyZWFtUHJpdmF0ZSYpIG92
ZXJyaWRlIHsgfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmNwcApp
bmRleCA2YzkxN2U0MzVhYWE0NDVmODY4OWJlYWVlNDQ1OGUxMmYyNDljMjU3Li5iMWY5YjZjMDQx
MzU2YzExY2ZmMTVhYzE3NzIyNWRkOWI2ZTBiNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291
cmNlUHJpdmF0ZS5jcHAKQEAgLTUyLDcgKzUyLDcgQEAgTW9ja01lZGlhU291cmNlUHJpdmF0ZTo6
TW9ja01lZGlhU291cmNlUHJpdmF0ZShNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZSYgcGFyZW4K
ICNlbmRpZgogewogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAotICAgIG1fY2xpZW50LT5zZXRM
b2dJZGVudGlmaWVyKG1fcGxheWVyLm1lZGlhUGxheWVyTG9nSWRlbnRpZmllcigpKTsKKyAgICBj
bGllbnQuc2V0TG9nSWRlbnRpZmllcihtX3BsYXllci5tZWRpYVBsYXllckxvZ0lkZW50aWZpZXIo
KSk7CiAjZW5kaWYKIH0KIApAQCAtODUsMTIgKzg1LDE2IEBAIHZvaWQgTW9ja01lZGlhU291cmNl
UHJpdmF0ZTo6cmVtb3ZlU291cmNlQnVmZmVyKFNvdXJjZUJ1ZmZlclByaXZhdGUqIGJ1ZmZlcikK
IAogTWVkaWFUaW1lIE1vY2tNZWRpYVNvdXJjZVByaXZhdGU6OmR1cmF0aW9uKCkKIHsKLSAgICBy
ZXR1cm4gbV9jbGllbnQtPmR1cmF0aW9uKCk7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBy
ZXR1cm4gbV9jbGllbnQtPmR1cmF0aW9uKCk7CisgICAgcmV0dXJuIE1lZGlhVGltZTo6aW52YWxp
ZFRpbWUoKTsKIH0KIAogc3RkOjp1bmlxdWVfcHRyPFBsYXRmb3JtVGltZVJhbmdlcz4gTW9ja01l
ZGlhU291cmNlUHJpdmF0ZTo6YnVmZmVyZWQoKQogewotICAgIHJldHVybiBtX2NsaWVudC0+YnVm
ZmVyZWQoKTsKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+YnVm
ZmVyZWQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAogdm9pZCBNb2NrTWVkaWFTb3VyY2VQ
cml2YXRlOjpkdXJhdGlvbkNoYW5nZWQoY29uc3QgTWVkaWFUaW1lJikKQEAgLTE2MSw3ICsxNjUs
OCBAQCBib29sIE1vY2tNZWRpYVNvdXJjZVByaXZhdGU6Omhhc1ZpZGVvKCkgY29uc3QKIAogdm9p
ZCBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjpzZWVrVG9UaW1lKGNvbnN0IE1lZGlhVGltZSYgdGlt
ZSkKIHsKLSAgICBtX2NsaWVudC0+c2Vla1RvVGltZSh0aW1lKTsKKyAgICBpZiAobV9jbGllbnQp
CisgICAgICAgIG1fY2xpZW50LT5zZWVrVG9UaW1lKHRpbWUpOwogfQogCiBNZWRpYVRpbWUgTW9j
a01lZGlhU291cmNlUHJpdmF0ZTo6c2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmIHRhcmdldFRp
bWUsIGNvbnN0IE1lZGlhVGltZSYgbmVnYXRpdmVUaHJlc2hvbGQsIGNvbnN0IE1lZGlhVGltZSYg
cG9zaXRpdmVUaHJlc2hvbGQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJjZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5oCmluZGV4
IDk0ZmY1OGNiYjhhYzM3YzU4YWQxMTc0NTQ5OWVhNjljZmM4OTM1ZWQuLjUxY2ZiYjRlNzJlZDc4
NjFlZDI2ZjFmNjg3ZWRiOGRlNzRhNzFkMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJp
dmF0ZS5oCkBAIC05Niw3ICs5Niw3IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIE1vY2tT
b3VyY2VCdWZmZXJQcml2YXRlOwogCiAgICAgTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UmIG1f
cGxheWVyOwotICAgIFJlZjxNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQ+IG1fY2xpZW50OworICAg
IFdlYWtQdHI8TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50PiBtX2NsaWVudDsKICAgICBWZWN0b3I8
UmVmUHRyPE1vY2tTb3VyY2VCdWZmZXJQcml2YXRlPj4gbV9zb3VyY2VCdWZmZXJzOwogICAgIFZl
Y3RvcjxNb2NrU291cmNlQnVmZmVyUHJpdmF0ZSo+IG1fYWN0aXZlU291cmNlQnVmZmVyczsKICAg
ICBib29sIG1faXNFbmRlZCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKaW5kZXggYWMxNGQ3
MTY3MTI1ZTRiYWM0NGJhYjlkMDA2NDJhY2MxZTVhODJiYS4uOTExYWQyNTQ3NjkzNWNmNTcyNjll
NDAxZWViZGRhODY5ZDg5ZmMwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcApAQCAtMTcxLDcgKzE3MSw3
IEBAIHZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6bG9hZE1lZGlhU291cmNlKFVSTCYmIHVy
bCwgY29uc3QgV2ViQ29yZTo6Q29udGVudFR5CiAgICAgfQogCiAgICAgbV9tZWRpYVNvdXJjZVBy
b3h5ID0gYWRvcHRSZWYoKm5ldyBSZW1vdGVNZWRpYVNvdXJjZVByb3h5KCptX21hbmFnZXItPmdw
dUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoKSwgbWVkaWFTb3VyY2VJZGVudGlmaWVyLCB3ZWJNUGFy
c2VyRW5hYmxlZCwgKnRoaXMpKTsKLSAgICBtX3BsYXllci0+bG9hZCh1cmwsIGNvbnRlbnRUeXBl
LCBtX21lZGlhU291cmNlUHJveHkuZ2V0KCkpOworICAgIG1fcGxheWVyLT5sb2FkKHVybCwgY29u
dGVudFR5cGUsICptX21lZGlhU291cmNlUHJveHkpOwogICAgIGdldENvbmZpZ3VyYXRpb24oY29u
ZmlndXJhdGlvbik7CiAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShjb25maWd1cmF0aW9u
KSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3Rl
TWVkaWFTb3VyY2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhU291cmNlUHJveHkuaAppbmRleCBiZjA5OWIzNTg1ZDQ5YmEyYTc4ZWY4NGQxYjRmYjYz
NDdiYjdiZTY3Li5jOTVjZjcyMzRhZGVlMWQ0ZWY2YTU0ODNhMmQzNmI5NDcyZjQ5MWY4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFTb3VyY2VQ
cm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVNv
dXJjZVByb3h5LmgKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhU291
cmNlUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50
Lmg+CiAjaW5jbHVkZSA8d3RmL01lZGlhVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CiAjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNlIElQQyB7CkBAIC01Miw3
ICs1Myw4IEBAIGNsYXNzIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M7CiBjbGFzcyBSZW1vdGVN
ZWRpYVBsYXllclByb3h5OwogCiBjbGFzcyBSZW1vdGVNZWRpYVNvdXJjZVByb3h5IGZpbmFsCi0g
ICAgOiBwdWJsaWMgV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50CisgICAgOiBwdWJs
aWMgUmVmQ291bnRlZDxSZW1vdGVNZWRpYVNvdXJjZVByb3h5PgorICAgICwgcHVibGljIFdlYkNv
cmU6Ok1lZGlhU291cmNlUHJpdmF0ZUNsaWVudAogICAgICwgcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VS
ZWNlaXZlciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxh
eWVyUHJpdmF0ZVJlbW90ZS5jcHAKaW5kZXggNDBlZTMyNzI4YTk3Njg1OGEwYzgxOTdmMzM1MzAw
ZjMwYmEwOTNiOS4uYzMyYWVmOTc3NWY1MTUzZDcxZDcwNDE5NzVjYTVlZGU1M2MyM2FiZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclBy
aXZhdGVSZW1vdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcApAQCAtNzkwLDcgKzc5MCw3IEBAIHZvaWQgTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpyZW1vdGVWaWRlb1RyYWNrQ29uZmlndXJhdGlvbkNoYW5n
ZWQoVHJhY2tQcml2YXRlCiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotdm9pZCBNZWRp
YVBsYXllclByaXZhdGVSZW1vdGU6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRU
eXBlJiBjb250ZW50VHlwZSwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50KiBjbGllbnQpCit2b2lk
IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29u
dGVudFR5cGUmIGNvbnRlbnRUeXBlLCBNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQmIGNsaWVudCkK
IHsKICAgICBpZiAobV9yZW1vdGVFbmdpbmVJZGVudGlmaWVyID09IE1lZGlhUGxheWVyRW51bXM6
Ok1lZGlhRW5naW5lSWRlbnRpZmllcjo6QVZGb3VuZGF0aW9uTVNFKSB7CiAgICAgICAgIGF1dG8g
aWRlbnRpZmllciA9IFJlbW90ZU1lZGlhU291cmNlSWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5oCmluZGV4IDQzYTI5ZWYxY2NjNTkyNjJlNzk3YWE1OGNhNjk5
ZjI5ZGU0ZjQ1NjMuLmM4ODEyMzAxNzQxM2M4Y2JlYWE5NjRkMzg5ZWUzMmUxNjI1M2JkZTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9N
ZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaApAQCAtMTk4LDcgKzE5OCw3IEBAIHByaXZhdGU6CiAg
ICAgdm9pZCBwcmVwYXJlRm9yUGxheWJhY2soYm9vbCBwcml2YXRlTW9kZSwgV2ViQ29yZTo6TWVk
aWFQbGF5ZXI6OlByZWxvYWQsIGJvb2wgcHJlc2VydmVzUGl0Y2gsIGJvb2wgcHJlcGFyZSkgZmlu
YWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQotICAgIHZvaWQgbG9hZChjb25zdCBVUkwm
LCBjb25zdCBXZWJDb3JlOjpDb250ZW50VHlwZSYsIFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0
ZUNsaWVudCopIGZpbmFsOworICAgIHZvaWQgbG9hZChjb25zdCBVUkwmLCBjb25zdCBXZWJDb3Jl
OjpDb250ZW50VHlwZSYsIFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUNsaWVudCYpIGZpbmFs
OwogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2b2lkIGxvYWQoV2ViQ29y
ZTo6TWVkaWFTdHJlYW1Qcml2YXRlJikgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5j
cHAKaW5kZXggNmEyMGQ3NTBhNDk0NGZiMzhkYTc0ODI4OTcwOWYyMDU1YzU2NDBkMS4uN2M0NTEy
YTQwM2UwYjg4ZDdmY2UzYjEwODQ3Mjc1NTFlYjhhYWEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRl
UmVtb3RlLmNwcApAQCAtNDYsMTQgKzQ2LDE0IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotUmVmPE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZT4gTWVk
aWFTb3VyY2VQcml2YXRlUmVtb3RlOjpjcmVhdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVBy
b2Nlc3NDb25uZWN0aW9uLCBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIgaWRlbnRpZmllciwg
UmVtb3RlTWVkaWFQbGF5ZXJNSU1FVHlwZUNhY2hlJiBtaW1lVHlwZUNhY2hlLCBjb25zdCBNZWRp
YVBsYXllclByaXZhdGVSZW1vdGUmIG1lZGlhUGxheWVyUHJpdmF0ZSwgTWVkaWFTb3VyY2VQcml2
YXRlQ2xpZW50KiBjbGllbnQpCitSZWY8TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlPiBNZWRpYVNv
dXJjZVByaXZhdGVSZW1vdGU6OmNyZWF0ZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYgZ3B1UHJvY2Vz
c0Nvbm5lY3Rpb24sIFJlbW90ZU1lZGlhU291cmNlSWRlbnRpZmllciBpZGVudGlmaWVyLCBSZW1v
dGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUmIG1pbWVUeXBlQ2FjaGUsIGNvbnN0IE1lZGlhUGxh
eWVyUHJpdmF0ZVJlbW90ZSYgbWVkaWFQbGF5ZXJQcml2YXRlLCBNZWRpYVNvdXJjZVByaXZhdGVD
bGllbnQmIGNsaWVudCkKIHsKICAgICBhdXRvIG1lZGlhU291cmNlUHJpdmF0ZSA9IGFkb3B0UmVm
KCpuZXcgTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlKGdwdVByb2Nlc3NDb25uZWN0aW9uLCBpZGVu
dGlmaWVyLCBtaW1lVHlwZUNhY2hlLCBtZWRpYVBsYXllclByaXZhdGUsIGNsaWVudCkpOwotICAg
IGNsaWVudC0+c2V0UHJpdmF0ZUFuZE9wZW4obWVkaWFTb3VyY2VQcml2YXRlLmNvcHlSZWYoKSk7
CisgICAgY2xpZW50LnNldFByaXZhdGVBbmRPcGVuKG1lZGlhU291cmNlUHJpdmF0ZS5jb3B5UmVm
KCkpOwogICAgIHJldHVybiBtZWRpYVNvdXJjZVByaXZhdGU7CiB9CiAKLU1lZGlhU291cmNlUHJp
dmF0ZVJlbW90ZTo6TWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlKEdQVVByb2Nlc3NDb25uZWN0aW9u
JiBncHVQcm9jZXNzQ29ubmVjdGlvbiwgUmVtb3RlTWVkaWFTb3VyY2VJZGVudGlmaWVyIGlkZW50
aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5cGVDYWNoZSYgbWltZVR5cGVDYWNoZSwgY29u
c3QgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlJiBtZWRpYVBsYXllclByaXZhdGUsIE1lZGlhU291
cmNlUHJpdmF0ZUNsaWVudCogY2xpZW50KQorTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjpNZWRp
YVNvdXJjZVByaXZhdGVSZW1vdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVByb2Nlc3NDb25u
ZWN0aW9uLCBSZW1vdGVNZWRpYVNvdXJjZUlkZW50aWZpZXIgaWRlbnRpZmllciwgUmVtb3RlTWVk
aWFQbGF5ZXJNSU1FVHlwZUNhY2hlJiBtaW1lVHlwZUNhY2hlLCBjb25zdCBNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGUmIG1lZGlhUGxheWVyUHJpdmF0ZSwgTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50
JiBjbGllbnQpCiAgICAgOiBtX2dwdVByb2Nlc3NDb25uZWN0aW9uKGdwdVByb2Nlc3NDb25uZWN0
aW9uKQogICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgLCBtX21pbWVUeXBlQ2Fj
aGUobWltZVR5cGVDYWNoZSkKQEAgLTY5LDcgKzY5LDcgQEAgTWVkaWFTb3VyY2VQcml2YXRlUmVt
b3RlOjpNZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVBy
b2MKICAgICBtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRN
ZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Ok1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZTo6bWVzc2Fn
ZVJlY2VpdmVyTmFtZSgpLCBtX2lkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMpOwogCiAjaWYg
IVJFTEVBU0VfTE9HX0RJU0FCTEVECi0gICAgbV9jbGllbnQtPnNldExvZ0lkZW50aWZpZXIobV9s
b2dJZGVudGlmaWVyKTsKKyAgICBjbGllbnQuc2V0TG9nSWRlbnRpZmllcihtX2xvZ0lkZW50aWZp
ZXIpOwogI2VuZGlmCiB9CiAKQEAgLTE5MSw3ICsxOTEsOCBAQCB2b2lkIE1lZGlhU291cmNlUHJp
dmF0ZVJlbW90ZTo6c2V0VGltZUZ1ZGdlRmFjdG9yKGNvbnN0IE1lZGlhVGltZSYgZnVkZ2VGYWN0
b3IpCiAKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlOjpzZWVrVG9UaW1lKGNvbnN0IE1l
ZGlhVGltZSYgdGltZSkKIHsKLSAgICBtX2NsaWVudC0+c2Vla1RvVGltZSh0aW1lKTsKKyAgICBp
ZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50LT5zZWVrVG9UaW1lKHRpbWUpOwogfQogCiAj
aWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUuaAppbmRleCA0
ZDFhNmY2YWQxZmVhNzU0NzMxNzM1MDMzZWI4ZjRlNTIyNzVlNzZkLi5lN2FlMWU5YjAzNzkwNzkw
ZGZlN2JlMTM0MDA0NjRiNmMyM2ZmNzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlLmgKQEAg
LTU3LDcgKzU3LDcgQEAgY2xhc3MgTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlIGZpbmFsCiAjZW5k
aWYKIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZT4g
Y3JlYXRlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiwgUmVtb3RlTWVkaWFTb3VyY2VJZGVudGlmaWVy
LCBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUmLCBjb25zdCBNZWRpYVBsYXllclByaXZh
dGVSZW1vdGUmLCBXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKTsKKyAgICBzdGF0
aWMgUmVmPE1lZGlhU291cmNlUHJpdmF0ZVJlbW90ZT4gY3JlYXRlKEdQVVByb2Nlc3NDb25uZWN0
aW9uJiwgUmVtb3RlTWVkaWFTb3VyY2VJZGVudGlmaWVyLCBSZW1vdGVNZWRpYVBsYXllck1JTUVU
eXBlQ2FjaGUmLCBjb25zdCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGUmLCBXZWJDb3JlOjpNZWRp
YVNvdXJjZVByaXZhdGVDbGllbnQmKTsKICAgICB2aXJ0dWFsIH5NZWRpYVNvdXJjZVByaXZhdGVS
ZW1vdGUoKTsKIAogICAgIC8vIE1lZGlhU291cmNlUHJpdmF0ZSBvdmVycmlkZXMKQEAgLTgyLDcg
KzgyLDcgQEAgcHVibGljOgogI2VuZGlmCiAKIHByaXZhdGU6Ci0gICAgTWVkaWFTb3VyY2VQcml2
YXRlUmVtb3RlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiwgUmVtb3RlTWVkaWFTb3VyY2VJZGVudGlm
aWVyLCBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUmLCBjb25zdCBNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGUmLCBXZWJDb3JlOjpNZWRpYVNvdXJjZVByaXZhdGVDbGllbnQqKTsKKyAgICBN
ZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mLCBSZW1vdGVNZWRp
YVNvdXJjZUlkZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTUlNRVR5cGVDYWNoZSYsIGNvbnN0
IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSYsIFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUNs
aWVudCYpOwogCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJ
UEM6OkRlY29kZXImKSBmaW5hbDsKICAgICB2b2lkIHNlZWtUb1RpbWUoY29uc3QgTWVkaWFUaW1l
Jik7CkBAIC05MSw3ICs5MSw3IEBAIHByaXZhdGU6CiAgICAgUmVtb3RlTWVkaWFTb3VyY2VJZGVu
dGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBSZW1vdGVNZWRpYVBsYXllck1JTUVUeXBlQ2FjaGUm
IG1fbWltZVR5cGVDYWNoZTsKICAgICBXZWFrUHRyPE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZT4g
bV9tZWRpYVBsYXllclByaXZhdGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6Ok1lZGlhU291cmNlUHJp
dmF0ZUNsaWVudD4gbV9jbGllbnQ7CisgICAgV2Vha1B0cjxXZWJDb3JlOjpNZWRpYVNvdXJjZVBy
aXZhdGVDbGllbnQ+IG1fY2xpZW50OwogICAgIFZlY3RvcjxSZWZQdHI8U291cmNlQnVmZmVyUHJp
dmF0ZVJlbW90ZT4+IG1fc291cmNlQnVmZmVyczsKIAogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxF
RAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>