<?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>92161</bug_id>
          
          <creation_ts>2012-07-24 14:14:48 -0700</creation_ts>
          <short_desc>REGRESSION(r123499): Android fails to compile (Requested by zhenyao on #webkit).</short_desc>
          <delta_ts>2022-03-01 03:04:35 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>90180</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>abarth</cc>
    
    <cc>tommyw</cc>
    
    <cc>zmo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>677194</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-24 14:14:48 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/123499 broke the build:
Android fails to compile (Requested by zhenyao on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>677196</commentid>
    <comment_count>1</comment_count>
      <attachid>154138</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-24 14:15:37 -0700</bug_when>
    <thetext>Created attachment 154138
ROLLOUT of r123499

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

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

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>677230</commentid>
    <comment_count>2</comment_count>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2012-07-24 15:07:37 -0700</bug_when>
    <thetext>Committed r123533: &lt;http://trac.webkit.org/changeset/123533&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154138</attachid>
            <date>2012-07-24 14:15:37 -0700</date>
            <delta_ts>2022-03-01 03:04:35 -0800</delta_ts>
            <desc>ROLLOUT of r123499</desc>
            <filename>bug-92161-20120724212109.patch</filename>
            <type>text/plain</type>
            <size>42772</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzNTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBiNGNiMzBhODgyYmYy
Mzg0ZDcwNmJmYjFhZGIzOTU4MDc4MmFiZWI3Li4zOTc0NmJmYjNkN2M0YWNmZWYzZGVlM2Q5NDli
NGNjODYzZDZhYTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNy0yNCAg
U2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5y
ZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEyMzQ5OS4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0
Lm9yZy9jaGFuZ2VzZXQvMTIzNDk5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD05MjE2MQorCisgICAgICAgIEFuZHJvaWQgZmFpbHMgdG8gY29tcGlsZSAo
UmVxdWVzdGVkIGJ5IHpoZW55YW8gb24gI3dlYmtpdCkuCisKKyAgICAgICAgKiBjaHJvbWl1bS9w
dWJsaWMvV2ViTWVkaWFTdHJlYW1EZXNjcmlwdG9yLmg6CisgICAgICAgIChXZWJNZWRpYVN0cmVh
bURlc2NyaXB0b3IpOgorICAgICAgICAqIGNocm9taXVtL3B1YmxpYy9XZWJNZWRpYVN0cmVhbVNv
dXJjZS5oOgorICAgICAgICAoV2ViTWVkaWFTdHJlYW1Tb3VyY2UpOgorCiAyMDEyLTA3LTI0ICBM
ZWFuZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBbQ2hyb21pdW1dIEVuYWJsZSBjb252ZXJzaW9uIGJldHdlZW4gV2ViRmxvYXRSZWN0IGFuZCBn
Zng6OlJlY3RGLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGMzNGI2ZDBlN2IwZjg0MjcxZGZkMzM1YWNiYmYxNDRl
ZGNiYjIxZjkuLjhiNjkzYzY0ZmM2OTBkMjJkYmFkYzE4NGQ0N2I4Zjk5YTg0NjI0YjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw0MiBAQAorMjAxMi0wNy0yNCAgU2hlcmlmZiBCb3QgIDx3ZWJraXQu
cmV2aWV3LmJvdEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQg
cjEyMzQ5OS4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTIzNDk5
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MjE2MQor
CisgICAgICAgIEFuZHJvaWQgZmFpbHMgdG8gY29tcGlsZSAoUmVxdWVzdGVkIGJ5IHpoZW55YW8g
b24gI3dlYmtpdCkuCisKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAq
IE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFTdHJlYW06Ok1lZGlhU3RyZWFtKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFt
OjphZGRUcmFjayk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRy
YWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtVHJhY2s6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbVRyYWNrOjpNZWRpYVN0cmVhbVRyYWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtVHJhY2s6On5NZWRpYVN0cmVhbVRyYWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtVHJhY2s6OnNldEVuYWJsZWQpOgorICAgICAgICAq
IE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay5oOgorICAgICAgICAoTWVkaWFT
dHJlYW1UcmFjayk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRy
YWNrLmlkbDoKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogZG9tL0V2ZW50TmFt
ZXMuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldEZhY3Rv
cnkuaW46CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vc3VwcG9ydC9XZWJNZWRpYVN0cmVh
bURlc2NyaXB0b3IuY3BwOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
TWVkaWFTdHJlYW1EZXNjcmlwdG9yOjpzb3VyY2VzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9zdXBwb3J0L1dlYk1lZGlhU3RyZWFtU291cmNlLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVNvdXJjZS5jcHA6IFJlbW92ZWQuCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1Tb3VyY2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6Ok1lZGlhU3RyZWFtU291cmNlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFT
dHJlYW1Tb3VyY2U6Om11dGVkKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtU291cmNl
OjpzZXRNdXRlZCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbVNvdXJjZTo6TWVkaWFT
dHJlYW1Tb3VyY2UpOgorICAgICAgICAoTWVkaWFTdHJlYW1Tb3VyY2UpOgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL2Nocm9taXVtL01lZGlhU3RyZWFtQ2VudGVyQ2hyb21pdW0uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1DZW50ZXJDaHJvbWl1bTo6cXVlcnlNZWRp
YVN0cmVhbVNvdXJjZXMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1DZW50ZXJDaHJv
bWl1bTo6ZGlkQ3JlYXRlTWVkaWFTdHJlYW0pOgorCiAyMDEyLTA3LTI0ICBKdWxpZW4gQ2hhZmZy
YWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgogCiAgICAgICAgIENyYXNoIGluIFJlbmRlclRh
YmxlU2VjdGlvbjo6bGF5b3V0Um93cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA1MDYy
MmI5NGVkNTg3NDM5NTRlNjRhMTk5NmYwYWVmMDNlYzU3ZmU4Li4yNTgyMmM3MWNkNTFjZWE4MTQ4
ZGM3NGZhNDg2ZmRjMzFiYjk0OTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEzIEBACisyMDEyLTA3LTI0ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdt
YWlsLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTIzNDk5LgorICAg
ICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xMjM0OTkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkyMTYxCisKKyAgICAgICAgQW5k
cm9pZCBmYWlscyB0byBjb21waWxlIChSZXF1ZXN0ZWQgYnkgemhlbnlhbyBvbiAjd2Via2l0KS4K
KworICAgICAgICAqIHNyYy9Bc3NlcnRNYXRjaGluZ0VudW1zLmNwcDoKKwogMjAxMi0wNy0yNCAg
VGVycnkgQW5kZXJzb24gIDx0ZGFuZGVyc29uQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hy
b21pdW1dIEFkZCBhIGJvdW5kaW5nIGJveCBtZW1iZXIgaW4gV2ViR2VzdHVyZUV2ZW50CmRpZmYg
LS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYk1lZGlhU3RyZWFtRGVz
Y3JpcHRvci5oIGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJNZWRpYVN0cmVh
bURlc2NyaXB0b3IuaAppbmRleCBkMWIzODUzNjdkOTg3ZDU2NDJhMGFiN2NlMzhjN2VhYWE1M2M1
MTM0Li5jMjVmNDJlMWI4ODkxNDIyMDYxOWI4NDgzNjIzNTNkOWNkNDk5ZTIyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYk1lZGlhU3RyZWFtRGVzY3JpcHRv
ci5oCisrKyBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTWVkaWFTdHJlYW1E
ZXNjcmlwdG9yLmgKQEAgLTY4LDYgKzY4LDkgQEAgcHVibGljOgogCiAgICAgV0VCS0lUX0VYUE9S
VCBXZWJTdHJpbmcgbGFiZWwoKSBjb25zdDsKIAorICAgIC8vIERFUFJFQ0FURUQKKyAgICBXRUJL
SVRfRVhQT1JUIHZvaWQgc291cmNlcyhXZWJWZWN0b3I8V2ViTWVkaWFTdHJlYW1Tb3VyY2U+Jikg
Y29uc3Q7CisKICAgICBXRUJLSVRfRVhQT1JUIHZvaWQgYXVkaW9Tb3VyY2VzKFdlYlZlY3RvcjxX
ZWJNZWRpYVN0cmVhbUNvbXBvbmVudD4mKSBjb25zdDsKICAgICBXRUJLSVRfRVhQT1JUIHZvaWQg
dmlkZW9Tb3VyY2VzKFdlYlZlY3RvcjxXZWJNZWRpYVN0cmVhbUNvbXBvbmVudD4mKSBjb25zdDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJNZWRpYVN0
cmVhbVNvdXJjZS5oIGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJNZWRpYVN0
cmVhbVNvdXJjZS5oCmluZGV4IDAxYWE4Y2Y3Zjg1OTEwNTg1NjI0OTZkZmMzMjY4NWY2YTk1NWU0
YTEuLjE0MmQ1OTg2NmU2YWM4NTgyYzI0OTM4MmQxNTdkZDU2YjVmOGQ3NjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTWVkaWFTdHJlYW1Tb3VyY2UuaAor
KysgYi9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYk1lZGlhU3RyZWFtU291cmNl
LmgKQEAgLTUwLDEyICs1MCw2IEBAIHB1YmxpYzoKICAgICAgICAgVHlwZVZpZGVvCiAgICAgfTsK
IAotICAgIGVudW0gUmVhZHlTdGF0ZSB7Ci0gICAgICAgIFJlYWR5U3RhdGVMaXZlID0gMCwKLSAg
ICAgICAgUmVhZHlTdGF0ZU11dGVkID0gMSwKLSAgICAgICAgUmVhZHlTdGF0ZUVuZGVkID0gMgot
ICAgIH07Ci0KICAgICBXZWJNZWRpYVN0cmVhbVNvdXJjZSgpIHsgfQogICAgIFdlYk1lZGlhU3Ry
ZWFtU291cmNlKGNvbnN0IFdlYk1lZGlhU3RyZWFtU291cmNlJiBvdGhlcikgeyBhc3NpZ24ob3Ro
ZXIpOyB9CiAgICAgfldlYk1lZGlhU3RyZWFtU291cmNlKCkgeyByZXNldCgpOyB9CkBAIC03Niw5
ICs3MCw2IEBAIHB1YmxpYzoKICAgICBXRUJLSVRfRVhQT1JUIFR5cGUgdHlwZSgpIGNvbnN0Owog
ICAgIFdFQktJVF9FWFBPUlQgV2ViU3RyaW5nIG5hbWUoKSBjb25zdDsKIAotICAgIFdFQktJVF9F
WFBPUlQgdm9pZCBzZXRSZWFkeVN0YXRlKFJlYWR5U3RhdGUpOwotICAgIFdFQktJVF9FWFBPUlQg
UmVhZHlTdGF0ZSByZWFkeVN0YXRlKCkgY29uc3Q7Ci0KICNpZiBXRUJLSVRfSU1QTEVNRU5UQVRJ
T04KICAgICBXZWJNZWRpYVN0cmVhbVNvdXJjZShjb25zdCBXVEY6OlBhc3NSZWZQdHI8V2ViQ29y
ZTo6TWVkaWFTdHJlYW1Tb3VyY2U+Jik7CiAgICAgV2ViTWVkaWFTdHJlYW1Tb3VyY2UmIG9wZXJh
dG9yPShXZWJDb3JlOjpNZWRpYVN0cmVhbVNvdXJjZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KaW5kZXggNWYxYzQ3YjJjODE0YzBhNzcxMjA3NjM5ZGI5MjNhOTIwMjJmOWVlMC4uYzUx
NzdjMDJlNGUyZDIzYWYwNzkyMTk1ZWZhY2RhYjkxNWY2OTk5NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5saXN0LmFtCkBAIC0zNTQ1LDcgKzM1NDUsNiBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAog
CVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtQ2VudGVyLmgg
XAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtQ29tcG9u
ZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFt
RGVzY3JpcHRvci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRp
YVN0cmVhbVNvdXJjZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L01lZGlhU3RyZWFtU291cmNlLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL01lZGlhU3RyZWFtU291cmNlc1F1ZXJ5Q2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9uMDBIYW5kbGVyLmNwcCBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCmluZGV4
IGNlOGUyNjU1ZWU3ZjIzMzM5YWM5ZDlmZDRkMTg3ZGVjNDkxOTczY2EuLmU0ZWZjNDliN2RkZmUy
OWIxMDM5ZTJlNDk4OTg5NTRhMjJjOGJmYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwCkBAIC05NCwxNCArOTQsMTQgQEAgTWVk
aWFTdHJlYW06Ok1lZGlhU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBh
c3NSZWZQdHI8TWVkaWFTdHJlYW0KICAgICBzaXplX3QgbnVtYmVyT2ZBdWRpb1RyYWNrcyA9IG1f
ZGVzY3JpcHRvci0+bnVtYmVyT2ZBdWRpb0NvbXBvbmVudHMoKTsKICAgICBhdWRpb1RyYWNrVmVj
dG9yLnJlc2VydmVDYXBhY2l0eShudW1iZXJPZkF1ZGlvVHJhY2tzKTsKICAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IG51bWJlck9mQXVkaW9UcmFja3M7IGkrKykKLSAgICAgICAgYXVkaW9UcmFj
a1ZlY3Rvci5hcHBlbmQoTWVkaWFTdHJlYW1UcmFjazo6Y3JlYXRlKGNvbnRleHQsIG1fZGVzY3Jp
cHRvciwgbV9kZXNjcmlwdG9yLT5hdWRpb0NvbXBvbmVudChpKSkpOworICAgICAgICBhdWRpb1Ry
YWNrVmVjdG9yLmFwcGVuZChNZWRpYVN0cmVhbVRyYWNrOjpjcmVhdGUobV9kZXNjcmlwdG9yLCBt
X2Rlc2NyaXB0b3ItPmF1ZGlvQ29tcG9uZW50KGkpKSk7CiAgICAgbV9hdWRpb1RyYWNrcyA9IE1l
ZGlhU3RyZWFtVHJhY2tMaXN0OjpjcmVhdGUodGhpcywgYXVkaW9UcmFja1ZlY3Rvcik7CiAKICAg
ICBNZWRpYVN0cmVhbVRyYWNrVmVjdG9yIHZpZGVvVHJhY2tWZWN0b3I7CiAgICAgc2l6ZV90IG51
bWJlck9mVmlkZW9UcmFja3MgPSBtX2Rlc2NyaXB0b3ItPm51bWJlck9mVmlkZW9Db21wb25lbnRz
KCk7CiAgICAgdmlkZW9UcmFja1ZlY3Rvci5yZXNlcnZlQ2FwYWNpdHkobnVtYmVyT2ZWaWRlb1Ry
YWNrcyk7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBudW1iZXJPZlZpZGVvVHJhY2tzOyBp
KyspCi0gICAgICAgIHZpZGVvVHJhY2tWZWN0b3IuYXBwZW5kKE1lZGlhU3RyZWFtVHJhY2s6OmNy
ZWF0ZShjb250ZXh0LCBtX2Rlc2NyaXB0b3IsIG1fZGVzY3JpcHRvci0+dmlkZW9Db21wb25lbnQo
aSkpKTsKKyAgICAgICAgdmlkZW9UcmFja1ZlY3Rvci5hcHBlbmQoTWVkaWFTdHJlYW1UcmFjazo6
Y3JlYXRlKG1fZGVzY3JpcHRvciwgbV9kZXNjcmlwdG9yLT52aWRlb0NvbXBvbmVudChpKSkpOwog
ICAgIG1fdmlkZW9UcmFja3MgPSBNZWRpYVN0cmVhbVRyYWNrTGlzdDo6Y3JlYXRlKHRoaXMsIHZp
ZGVvVHJhY2tWZWN0b3IpOwogfQogCkBAIC0xNTEsNyArMTUxLDcgQEAgRXZlbnRUYXJnZXREYXRh
KiBNZWRpYVN0cmVhbTo6ZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkKIAogdm9pZCBNZWRpYVN0cmVh
bTo6YWRkVHJhY2soTWVkaWFTdHJlYW1Db21wb25lbnQqIGNvbXBvbmVudCkKIHsKLSAgICBSZWZQ
dHI8TWVkaWFTdHJlYW1UcmFjaz4gdHJhY2sgPSBNZWRpYVN0cmVhbVRyYWNrOjpjcmVhdGUoc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCgpLCBtX2Rlc2NyaXB0b3IsIGNvbXBvbmVudCk7CisgICAgUmVm
UHRyPE1lZGlhU3RyZWFtVHJhY2s+IHRyYWNrID0gTWVkaWFTdHJlYW1UcmFjazo6Y3JlYXRlKG1f
ZGVzY3JpcHRvciwgY29tcG9uZW50KTsKICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICBz
d2l0Y2ggKGNvbXBvbmVudC0+c291cmNlKCktPnR5cGUoKSkgewogICAgIGNhc2UgTWVkaWFTdHJl
YW1Tb3VyY2U6OlR5cGVBdWRpbzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtVHJhY2suY3BwCmluZGV4IGZhMDcxZmVmMjliZTliYTM0
OWYyNTNjMmE3MmI4ZTBmODBhNjU2YzguLmYyMjc3NDk2YzEzNjE1ZDk5NGEzZGE2NWY1YzVmNWE1
MmEzMGMwNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
TWVkaWFTdHJlYW1UcmFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYVN0cmVhbVRyYWNrLmNwcApAQCAtMjgsMzEgKzI4LDI0IEBACiAKICNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQogCi0jaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJNZWRpYVN0
cmVhbUNlbnRlci5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtQ29tcG9uZW50LmgiCiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxNZWRpYVN0cmVhbVRyYWNrPiBNZWRpYVN0cmVh
bVRyYWNrOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0
cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+IHN0cmVhbURlc2NyaXB0b3IsIE1lZGlhU3RyZWFtQ29t
cG9uZW50KiBjb21wb25lbnQpCitQYXNzUmVmUHRyPE1lZGlhU3RyZWFtVHJhY2s+IE1lZGlhU3Ry
ZWFtVHJhY2s6OmNyZWF0ZShQYXNzUmVmUHRyPE1lZGlhU3RyZWFtRGVzY3JpcHRvcj4gc3RyZWFt
RGVzY3JpcHRvciwgTWVkaWFTdHJlYW1Db21wb25lbnQqIGNvbXBvbmVudCkKIHsKLSAgICBSZWZQ
dHI8TWVkaWFTdHJlYW1UcmFjaz4gdHJhY2sgPSBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW1UcmFj
ayhjb250ZXh0LCBzdHJlYW1EZXNjcmlwdG9yLCBjb21wb25lbnQpKTsKLSAgICB0cmFjay0+c3Vz
cGVuZElmTmVlZGVkKCk7Ci0gICAgcmV0dXJuIHRyYWNrLnJlbGVhc2UoKTsKKyAgICByZXR1cm4g
YWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtVHJhY2soc3RyZWFtRGVzY3JpcHRvciwgY29tcG9uZW50
KSk7CiB9CiAKLU1lZGlhU3RyZWFtVHJhY2s6Ok1lZGlhU3RyZWFtVHJhY2soU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+IHN0
cmVhbURlc2NyaXB0b3IsIE1lZGlhU3RyZWFtQ29tcG9uZW50KiBjb21wb25lbnQpCi0gICAgOiBB
Y3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKLSAgICAsIG1fc3RvcHBlZChmYWxzZSkKLSAg
ICAsIG1fc3RyZWFtRGVzY3JpcHRvcihzdHJlYW1EZXNjcmlwdG9yKQorTWVkaWFTdHJlYW1UcmFj
azo6TWVkaWFTdHJlYW1UcmFjayhQYXNzUmVmUHRyPE1lZGlhU3RyZWFtRGVzY3JpcHRvcj4gc3Ry
ZWFtRGVzY3JpcHRvciwgTWVkaWFTdHJlYW1Db21wb25lbnQqIGNvbXBvbmVudCkKKyAgICA6IG1f
c3RyZWFtRGVzY3JpcHRvcihzdHJlYW1EZXNjcmlwdG9yKQogICAgICwgbV9jb21wb25lbnQoY29t
cG9uZW50KQogewotICAgIG1fY29tcG9uZW50LT5zb3VyY2UoKS0+YWRkT2JzZXJ2ZXIodGhpcyk7
CiB9CiAKIE1lZGlhU3RyZWFtVHJhY2s6On5NZWRpYVN0cmVhbVRyYWNrKCkKIHsKLSAgICBtX2Nv
bXBvbmVudC0+c291cmNlKCktPnJlbW92ZU9ic2VydmVyKHRoaXMpOwogfQogCiBTdHJpbmcgTWVk
aWFTdHJlYW1UcmFjazo6a2luZCgpIGNvbnN0CkBAIC04Myw3ICs3Niw3IEBAIGJvb2wgTWVkaWFT
dHJlYW1UcmFjazo6ZW5hYmxlZCgpIGNvbnN0CiAKIHZvaWQgTWVkaWFTdHJlYW1UcmFjazo6c2V0
RW5hYmxlZChib29sIGVuYWJsZWQpCiB7Ci0gICAgaWYgKG1fc3RvcHBlZCB8fCBlbmFibGVkID09
IG1fY29tcG9uZW50LT5lbmFibGVkKCkpCisgICAgaWYgKGVuYWJsZWQgPT0gbV9jb21wb25lbnQt
PmVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9jb21wb25lbnQtPnNldEVuYWJs
ZWQoZW5hYmxlZCk7CkBAIC05NCw3MiArODcsMTEgQEAgdm9pZCBNZWRpYVN0cmVhbVRyYWNrOjpz
ZXRFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBNZWRpYVN0cmVhbUNlbnRlcjo6aW5zdGFuY2Uo
KS5kaWRTZXRNZWRpYVN0cmVhbVRyYWNrRW5hYmxlZChtX3N0cmVhbURlc2NyaXB0b3IuZ2V0KCks
IG1fY29tcG9uZW50LmdldCgpKTsKIH0KIAotTWVkaWFTdHJlYW1UcmFjazo6UmVhZHlTdGF0ZSBN
ZWRpYVN0cmVhbVRyYWNrOjpyZWFkeVN0YXRlKCkgY29uc3QKLXsKLSAgICBpZiAobV9zdG9wcGVk
KQotICAgICAgICByZXR1cm4gRU5ERUQ7Ci0KLSAgICBzd2l0Y2ggKG1fY29tcG9uZW50LT5zb3Vy
Y2UoKS0+cmVhZHlTdGF0ZSgpKSB7Ci0gICAgY2FzZSBNZWRpYVN0cmVhbVNvdXJjZTo6UmVhZHlT
dGF0ZUxpdmU6Ci0gICAgICAgIHJldHVybiBMSVZFOwotICAgIGNhc2UgTWVkaWFTdHJlYW1Tb3Vy
Y2U6OlJlYWR5U3RhdGVNdXRlZDoKLSAgICAgICAgcmV0dXJuIE1VVEVEOwotICAgIGNhc2UgTWVk
aWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGVFbmRlZDoKLSAgICAgICAgcmV0dXJuIEVOREVEOwot
ICAgIH0KLQotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBFTkRFRDsKLX0K
LQotdm9pZCBNZWRpYVN0cmVhbVRyYWNrOjpzb3VyY2VDaGFuZ2VkU3RhdGUoKQotewotICAgIGlm
IChtX3N0b3BwZWQpCi0gICAgICAgIHJldHVybjsKLQotICAgIHN3aXRjaCAobV9jb21wb25lbnQt
PnNvdXJjZSgpLT5yZWFkeVN0YXRlKCkpIHsKLSAgICBjYXNlIE1lZGlhU3RyZWFtU291cmNlOjpS
ZWFkeVN0YXRlTGl2ZToKLSAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50
TmFtZXMoKS51bm11dGVFdmVudCwgZmFsc2UsIGZhbHNlKSk7Ci0gICAgICAgIGJyZWFrOwotICAg
IGNhc2UgTWVkaWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGVNdXRlZDoKLSAgICAgICAgZGlzcGF0
Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5tdXRlRXZlbnQsIGZhbHNlLCBmYWxz
ZSkpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIE1lZGlhU3RyZWFtU291cmNlOjpSZWFkeVN0
YXRlRW5kZWQ6Ci0gICAgICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVz
KCkuZW5kZWRFdmVudCwgZmFsc2UsIGZhbHNlKSk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0K
LQogTWVkaWFTdHJlYW1Db21wb25lbnQqIE1lZGlhU3RyZWFtVHJhY2s6OmNvbXBvbmVudCgpCiB7
CiAgICAgcmV0dXJuIG1fY29tcG9uZW50LmdldCgpOwogfQogCi12b2lkIE1lZGlhU3RyZWFtVHJh
Y2s6OnN0b3AoKQotewotICAgIG1fc3RvcHBlZCA9IHRydWU7Ci19Ci0KLWNvbnN0IEF0b21pY1N0
cmluZyYgTWVkaWFTdHJlYW1UcmFjazo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIGV2ZW50TmFtZXMoKS5pbnRlcmZhY2VGb3JNZWRpYVN0cmVhbVRyYWNrOwotfQotCi1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBNZWRpYVN0cmVhbVRyYWNrOjpzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCkgY29uc3QKLXsKLSAgICByZXR1cm4gQWN0aXZlRE9NT2JqZWN0OjpzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCk7Ci19Ci0KLUV2ZW50VGFyZ2V0RGF0YSogTWVkaWFTdHJlYW1UcmFjazo6ZXZl
bnRUYXJnZXREYXRhKCkKLXsKLSAgICByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOwotfQotCi1F
dmVudFRhcmdldERhdGEqIE1lZGlhU3RyZWFtVHJhY2s6OmVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgp
Ci17Ci0gICAgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsKLX0KLQogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRyYWNrLmgKaW5kZXgg
NzI0YTEyMGRjYjMzYWYwNzk4NmVhOGNiZDcxMzA2YTk4Y2FiYzgyMi4uYzQ1YmUxOGM3NGNhOGM0
ZGY1NDcwZTJlMDk0NWM3ZWY3YmE5M2NiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRyYWNrLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRyYWNrLmgKQEAgLTI4LDEwICsyOCw3IEBA
CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogCi0jaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0
LmgiCi0jaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbURlc2Ny
aXB0b3IuaCIKLSNpbmNsdWRlICJNZWRpYVN0cmVhbVNvdXJjZS5oIgogI2luY2x1ZGUgIlBsYXRm
b3JtU3RyaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYv
UmVmUHRyLmg+CkBAIC00MSwxNSArMzgsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNz
IE1lZGlhU3RyZWFtQ29tcG9uZW50OwogCi1jbGFzcyBNZWRpYVN0cmVhbVRyYWNrIDogcHVibGlj
IFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW1UcmFjaz4sIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHB1
YmxpYyBFdmVudFRhcmdldCwgcHVibGljIE1lZGlhU3RyZWFtU291cmNlOjpPYnNlcnZlciB7Citj
bGFzcyBNZWRpYVN0cmVhbVRyYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW1UcmFj
az4gewogcHVibGljOgotICAgIGVudW0gUmVhZHlTdGF0ZSB7Ci0gICAgICAgIExJVkUgPSAwLAot
ICAgICAgICBNVVRFRCA9IDEsCi0gICAgICAgIEVOREVEID0gMgotICAgIH07Ci0KLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbVRyYWNrPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1EZXNjcmlwdG9yPiwgTWVkaWFTdHJlYW1Db21w
b25lbnQqKTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbVRyYWNrPiBjcmVhdGUo
UGFzc1JlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+LCBNZWRpYVN0cmVhbUNvbXBvbmVudCop
OwogICAgIHZpcnR1YWwgfk1lZGlhU3RyZWFtVHJhY2soKTsKIAogICAgIFN0cmluZyBraW5kKCkg
Y29uc3Q7CkBAIC01OCwzOCArNDksMTEgQEAgcHVibGljOgogICAgIGJvb2wgZW5hYmxlZCgpIGNv
bnN0OwogICAgIHZvaWQgc2V0RW5hYmxlZChib29sKTsKIAotICAgIFJlYWR5U3RhdGUgcmVhZHlT
dGF0ZSgpIGNvbnN0OwotCi0gICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihtdXRl
KTsKLSAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHVubXV0ZSk7Ci0gICAgREVG
SU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihlbmRlZCk7Ci0KICAgICBNZWRpYVN0cmVhbUNv
bXBvbmVudCogY29tcG9uZW50KCk7CiAKLSAgICAvLyBFdmVudFRhcmdldAotICAgIHZpcnR1YWwg
Y29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3QgT1ZFUlJJREU7Ci0gICAg
dmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkg
Y29uc3QgT1ZFUlJJREU7Ci0KLSAgICAvLyBBY3RpdmVET01PYmplY3QKLSAgICB2aXJ0dWFsIHZv
aWQgc3RvcCgpIE9WRVJSSURFOwotCi0gICAgdXNpbmcgUmVmQ291bnRlZDxNZWRpYVN0cmVhbVRy
YWNrPjo6cmVmOwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW1UcmFjaz46OmRlcmVm
OwotCiBwcml2YXRlOgotICAgIE1lZGlhU3RyZWFtVHJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCosIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1EZXNjcmlwdG9yPiwgTWVkaWFTdHJlYW1Db21wb25l
bnQqKTsKLQotICAgIC8vIEV2ZW50VGFyZ2V0Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEq
IGV2ZW50VGFyZ2V0RGF0YSgpIE9WRVJSSURFOwotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRh
KiBlbnN1cmVFdmVudFRhcmdldERhdGEoKSBPVkVSUklERTsKLSAgICB2aXJ0dWFsIHZvaWQgcmVm
RXZlbnRUYXJnZXQoKSBPVkVSUklERSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVm
RXZlbnRUYXJnZXQoKSBPVkVSUklERSB7IGRlcmVmKCk7IH0KLSAgICBFdmVudFRhcmdldERhdGEg
bV9ldmVudFRhcmdldERhdGE7Ci0KLSAgICAvLyBNZWRpYVN0cmVhbVNvdXJjZU9ic2VydmVyCi0g
ICAgdmlydHVhbCB2b2lkIHNvdXJjZUNoYW5nZWRTdGF0ZSgpIE9WRVJSSURFOworICAgIE1lZGlh
U3RyZWFtVHJhY2soUGFzc1JlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+LCBNZWRpYVN0cmVh
bUNvbXBvbmVudCopOwogCi0gICAgYm9vbCBtX3N0b3BwZWQ7CiAgICAgUmVmUHRyPE1lZGlhU3Ry
ZWFtRGVzY3JpcHRvcj4gbV9zdHJlYW1EZXNjcmlwdG9yOwogICAgIFJlZlB0cjxNZWRpYVN0cmVh
bUNvbXBvbmVudD4gbV9jb21wb25lbnQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRyYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay5pZGwKaW5kZXggMDViODk3Mzg0
NGZhNTdmMzZmZjA0ODk4YzdmNGZhZWE3MmJlZGFjYy4uNzk4NzU5NzVlOTE3Y2JlNmVmOTkzMTgy
OGQ1OGMxYzk2OWY4ZWRlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9NZWRpYVN0cmVhbVRyYWNrLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtVHJhY2suaWRsCkBAIC0yNiwzMCArMjYsMTAgQEAgbW9k
dWxlIGNvcmUgewogCiAgICAgaW50ZXJmYWNlIFsKICAgICAgICAgQ29uZGl0aW9uYWw9TUVESUFf
U1RSRUFNLAotICAgICAgICBFdmVudFRhcmdldAogICAgIF0gTWVkaWFTdHJlYW1UcmFjayB7CiAg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcga2luZDsKICAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTVN0cmluZyBsYWJlbDsKICAgICAgICAgICAgICAgICAgYXR0cmlidXRl
IGJvb2xlYW4gZW5hYmxlZDsKLQotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBMSVZFID0g
MDsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTVVURUQgPSAxOwotICAgICAgICBjb25z
dCB1bnNpZ25lZCBzaG9ydCBFTkRFRCA9IDI7Ci0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1
bnNpZ25lZCBzaG9ydCByZWFkeVN0YXRlOwotCi0gICAgICAgIGF0dHJpYnV0ZSBFdmVudExpc3Rl
bmVyIG9ubXV0ZTsKLSAgICAgICAgYXR0cmlidXRlIEV2ZW50TGlzdGVuZXIgb251bm11dGU7Ci0g
ICAgICAgIGF0dHJpYnV0ZSBFdmVudExpc3RlbmVyIG9uZW5kZWQ7Ci0KLSAgICAgICAgLy8gRXZl
bnRUYXJnZXQgaW50ZXJmYWNlCi0gICAgICAgIHZvaWQgYWRkRXZlbnRMaXN0ZW5lcihpbiBET01T
dHJpbmcgdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIEV2ZW50TGlzdGVu
ZXIgbGlzdGVuZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBbT3B0aW9uYWxd
IGJvb2xlYW4gdXNlQ2FwdHVyZSk7Ci0gICAgICAgIHZvaWQgcmVtb3ZlRXZlbnRMaXN0ZW5lcihp
biBET01TdHJpbmcgdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIEV2
ZW50TGlzdGVuZXIgbGlzdGVuZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
biBbT3B0aW9uYWxdIGJvb2xlYW4gdXNlQ2FwdHVyZSk7Ci0gICAgICAgIGJvb2xlYW4gZGlzcGF0
Y2hFdmVudChpbiBFdmVudCBldmVudCkKLSAgICAgICAgICAgIHJhaXNlcyhFdmVudEV4Y2VwdGlv
bik7CiAgICAgfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBp
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IDA0MGQ4ZjczYmNiNWNkYmRkZjQw
MWE2NDc1NjViNmM2ZWZhMWU5ZDMuLjJmOTRlNTU3MTk0NTFiOGJmMTA3NjJlOTRmZjQ3YWMxOTRj
ZWM5NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTQ0OCw3ICs0NDgsNiBAQAogICAgICAgICAgICAg
J3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtQ2VudGVyLmgnLAogICAgICAgICAgICAg
J3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtQ29tcG9uZW50LmgnLAogICAgICAgICAg
ICAgJ3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtRGVzY3JpcHRvci5oJywKLSAgICAg
ICAgICAgICdwbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVNvdXJjZS5jcHAnLAogICAg
ICAgICAgICAgJ3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtU291cmNlLmgnLAogICAg
ICAgICAgICAgJ3BsYXRmb3JtL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9uMDBIYW5kbGVyLmgn
LAogICAgICAgICAgICAgJ3BsYXRmb3JtL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9uMDBIYW5k
bGVyQ2xpZW50LmgnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKaW5kZXggYjBlZmJlNzY1MDhjOGVi
MjU0ZGYyOTYyYmJlODlkYzYyNzE3MTQyZC4uOTgzZGYyOWU4YmYyZWM3MDI3NmQ2Njg1NDUzNTlj
MDk0ZjZlOGRjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCkBAIC0yMTksOCArMjE5LDYgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKHJlbW92ZXN0cmVhbSkgXAogICAgIG1hY3Jv
KHN0YXRlY2hhbmdlKSBcCiAgICAgbWFjcm8ocmVtb3ZldHJhY2spIFwKLSAgICBtYWNybyhtdXRl
KSBcCi0gICAgbWFjcm8odW5tdXRlKSBcCiAgICAgXAogICAgIG1hY3JvKHNob3cpIFwKICAgICBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXRGYWN0b3J5LmluIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0RmFjdG9yeS5pbgppbmRleCA5YzJiZDliZWIw
ZDRiNDQ3MGFjMDhmMmUyYThmMGQ4M2FjMmRjNDg5Li43ZjI1ZDMwMmFiMzkxODA0ZTBjZjJmOGFm
NDE1NjI1MmI3MDIwZmI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJn
ZXRGYWN0b3J5LmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldEZhY3Rvcnku
aW4KQEAgLTE3LDcgKzE3LDYgQEAgSmF2YVNjcmlwdEF1ZGlvTm9kZSBjb25kaXRpb25hbD1XRUJf
QVVESU8KIExvY2FsTWVkaWFTdHJlYW0gY29uZGl0aW9uYWw9TUVESUFfU1RSRUFNCiBNZWRpYUNv
bnRyb2xsZXIgY29uZGl0aW9uYWw9VklERU8KIE1lZGlhU3RyZWFtIGNvbmRpdGlvbmFsPU1FRElB
X1NUUkVBTQotTWVkaWFTdHJlYW1UcmFjayBjb25kaXRpb25hbD1NRURJQV9TVFJFQU0KIE1lZGlh
U3RyZWFtVHJhY2tMaXN0IGNvbmRpdGlvbmFsPU1FRElBX1NUUkVBTQogTWVzc2FnZVBvcnQKIE5l
dHdvcmtJbmZvQ29ubmVjdGlvbiBjb25kaXRpb25hbD1ORVRXT1JLX0lORk8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL3N1cHBvcnQvV2ViTWVkaWFTdHJlYW1E
ZXNjcmlwdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL3N1cHBvcnQv
V2ViTWVkaWFTdHJlYW1EZXNjcmlwdG9yLmNwcAppbmRleCAzNmNjZTc0MzkxMzk1YjYwZGUzZjg3
MDA3MjgyODFkZTUzMmVkMTZlLi44ZTdhM2E3ZTIyNTdiNjE2YjQzYzI0NDFiZThiMWYwZDE4N2Vj
ZDFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9zdXBwb3J0
L1dlYk1lZGlhU3RyZWFtRGVzY3JpcHRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY2hyb21pdW0vc3VwcG9ydC9XZWJNZWRpYVN0cmVhbURlc2NyaXB0b3IuY3BwCkBAIC05MSw2
ICs5MSwyMCBAQCB2b2lkIFdlYk1lZGlhU3RyZWFtRGVzY3JpcHRvcjo6c2V0RXh0cmFEYXRhKEV4
dHJhRGF0YSogZXh0cmFEYXRhKQogICAgIG1fcHJpdmF0ZS0+c2V0RXh0cmFEYXRhKGFkb3B0UmVm
KG5ldyBFeHRyYURhdGFDb250YWluZXIoZXh0cmFEYXRhKSkpOwogfQogCisvLyBGSVhNRTogQ2xl
YW51cCB3aGVuIHRoZSBjaHJvbWl1bSBjb2RlIGhhcyBzd2l0Y2hlZCB0byB0aGUgc3BsaXQgc291
cmNlcyBpbXBsZW1lbnRhdGlvbi4KK3ZvaWQgV2ViTWVkaWFTdHJlYW1EZXNjcmlwdG9yOjpzb3Vy
Y2VzKFdlYlZlY3RvcjxXZWJNZWRpYVN0cmVhbVNvdXJjZT4mIHdlYlNvdXJjZXMpIGNvbnN0Cit7
CisgICAgc2l6ZV90IG51bWJlck9mQXVkaW9Tb3VyY2VzID0gbV9wcml2YXRlLT5udW1iZXJPZkF1
ZGlvQ29tcG9uZW50cygpOworICAgIHNpemVfdCBudW1iZXJPZlZpZGVvU291cmNlcyA9IG1fcHJp
dmF0ZS0+bnVtYmVyT2ZWaWRlb0NvbXBvbmVudHMoKTsKKyAgICBXZWJWZWN0b3I8V2ViTWVkaWFT
dHJlYW1Tb3VyY2U+IHJlc3VsdChudW1iZXJPZkF1ZGlvU291cmNlcyArIG51bWJlck9mVmlkZW9T
b3VyY2VzKTsKKyAgICBzaXplX3QgaSA9IDA7CisgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBu
dW1iZXJPZkF1ZGlvU291cmNlczsgKytpLCArK2opCisgICAgICAgIHJlc3VsdFtpXSA9IG1fcHJp
dmF0ZS0+YXVkaW9Db21wb25lbnQoaiktPnNvdXJjZSgpOworICAgIGZvciAoc2l6ZV90IGogPSAw
OyBqIDwgbnVtYmVyT2ZWaWRlb1NvdXJjZXM7ICsraSwgKytqKQorICAgICAgICByZXN1bHRbaV0g
PSBtX3ByaXZhdGUtPnZpZGVvQ29tcG9uZW50KGopLT5zb3VyY2UoKTsKKyAgICB3ZWJTb3VyY2Vz
LnN3YXAocmVzdWx0KTsKK30KKwogdm9pZCBXZWJNZWRpYVN0cmVhbURlc2NyaXB0b3I6OmF1ZGlv
U291cmNlcyhXZWJWZWN0b3I8V2ViTWVkaWFTdHJlYW1Db21wb25lbnQ+JiB3ZWJTb3VyY2VzKSBj
b25zdAogewogICAgIHNpemVfdCBudW1iZXJPZlNvdXJjZXMgPSBtX3ByaXZhdGUtPm51bWJlck9m
QXVkaW9Db21wb25lbnRzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
aHJvbWl1bS9zdXBwb3J0L1dlYk1lZGlhU3RyZWFtU291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2Nocm9taXVtL3N1cHBvcnQvV2ViTWVkaWFTdHJlYW1Tb3VyY2UuY3BwCmluZGV4
IDcwZWY3MDgwOTk0YTY3MDBkN2QwMDM5NDM0N2RmYjZhOWRkN2E0NmQuLjNmODc3ZjU0YzczMGYw
NTY3MWEwOGViNDZjODIxMTY3NzExMmQwZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2Nocm9taXVtL3N1cHBvcnQvV2ViTWVkaWFTdHJlYW1Tb3VyY2UuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL3N1cHBvcnQvV2ViTWVkaWFTdHJlYW1Tb3Vy
Y2UuY3BwCkBAIC05NiwxOCArOTYsNiBAQCBXZWJTdHJpbmcgV2ViTWVkaWFTdHJlYW1Tb3VyY2U6
Om5hbWUoKSBjb25zdAogICAgIHJldHVybiBtX3ByaXZhdGUuZ2V0KCktPm5hbWUoKTsKIH0KIAot
dm9pZCBXZWJNZWRpYVN0cmVhbVNvdXJjZTo6c2V0UmVhZHlTdGF0ZShSZWFkeVN0YXRlIHN0YXRl
KQotewotICAgIEFTU0VSVCghbV9wcml2YXRlLmlzTnVsbCgpKTsKLSAgICBtX3ByaXZhdGUtPnNl
dFJlYWR5U3RhdGUoc3RhdGljX2Nhc3Q8TWVkaWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGU+KHN0
YXRlKSk7Ci19Ci0KLVdlYk1lZGlhU3RyZWFtU291cmNlOjpSZWFkeVN0YXRlIFdlYk1lZGlhU3Ry
ZWFtU291cmNlOjpyZWFkeVN0YXRlKCkgY29uc3QKLXsKLSAgICBBU1NFUlQoIW1fcHJpdmF0ZS5p
c051bGwoKSk7Ci0gICAgcmV0dXJuIHN0YXRpY19jYXN0PFJlYWR5U3RhdGU+KG1fcHJpdmF0ZS0+
cmVhZHlTdGF0ZSgpKTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAvLyBF
TkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1Tb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1Tb3VyY2UuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAxNzIwNDg3ZGMxMjU0YTRjMjM0MjRjYjEwMDFlYWY2MjljOTI4NTFkLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtU291cmNlLmNwcAorKysgL2Rldi9udWxs
CkBAIC0xLDc2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lcgotICogICAgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMK
LSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20gdGhpcwotICogICAgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQotCi0jaW5jbHVkZSAiTWVkaWFTdHJlYW1Tb3VyY2UuaCIKLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1QYXNzUmVmUHRyPE1lZGlhU3RyZWFtU291cmNlPiBNZWRpYVN0
cmVhbVNvdXJjZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgaWQsIFR5cGUgdHlwZSwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBSZWFkeVN0YXRlIHJlYWR5U3RhdGUpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KG5ldyBNZWRpYVN0cmVhbVNvdXJjZShpZCwgdHlwZSwgbmFtZSwgcmVhZHlTdGF0ZSkpOwotfQot
Ci1NZWRpYVN0cmVhbVNvdXJjZTo6TWVkaWFTdHJlYW1Tb3VyY2UoY29uc3QgU3RyaW5nJiBpZCwg
VHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUsIFJlYWR5U3RhdGUgcmVhZHlTdGF0ZSkKLSAg
ICA6IG1faWQoaWQpCi0gICAgLCBtX3R5cGUodHlwZSkKLSAgICAsIG1fbmFtZShuYW1lKQotICAg
ICwgbV9yZWFkeVN0YXRlKHJlYWR5U3RhdGUpCi17Ci19Ci0KLXZvaWQgTWVkaWFTdHJlYW1Tb3Vy
Y2U6OnNldFJlYWR5U3RhdGUoUmVhZHlTdGF0ZSByZWFkeVN0YXRlKQotewotICAgIEFTU0VSVCht
X3JlYWR5U3RhdGUgIT0gUmVhZHlTdGF0ZUVuZGVkKTsKLSAgICBpZiAobV9yZWFkeVN0YXRlICE9
IHJlYWR5U3RhdGUpIHsKLSAgICAgICAgbV9yZWFkeVN0YXRlID0gcmVhZHlTdGF0ZTsKLSAgICAg
ICAgZm9yIChWZWN0b3I8T2JzZXJ2ZXIqPjo6aXRlcmF0b3IgaSA9IG1fb2JzZXJ2ZXJzLmJlZ2lu
KCk7IGkgIT0gbV9vYnNlcnZlcnMuZW5kKCk7ICsraSkKLSAgICAgICAgICAgICgqaSktPnNvdXJj
ZUNoYW5nZWRTdGF0ZSgpOwotICAgIH0KLX0KLQotdm9pZCBNZWRpYVN0cmVhbVNvdXJjZTo6YWRk
T2JzZXJ2ZXIoTWVkaWFTdHJlYW1Tb3VyY2U6Ok9ic2VydmVyKiBvYnNlcnZlcikKLXsKLSAgICBt
X29ic2VydmVycy5hcHBlbmQob2JzZXJ2ZXIpOwotfQotCi12b2lkIE1lZGlhU3RyZWFtU291cmNl
OjpyZW1vdmVPYnNlcnZlcihNZWRpYVN0cmVhbVNvdXJjZTo6T2JzZXJ2ZXIqIG9ic2VydmVyKQot
ewotICAgIHNpemVfdCBwb3MgPSBtX29ic2VydmVycy5maW5kKG9ic2VydmVyKTsKLSAgICBpZiAo
cG9zICE9IG5vdEZvdW5kKQotICAgICAgICBtX29ic2VydmVycy5yZW1vdmUocG9zKTsKLX0KLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3Ry
ZWFtU291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYVN0
cmVhbVNvdXJjZS5oCmluZGV4IGM0NWI1NzE0MjE0MzQ0YTQ0Nzg1OTU1NTMxNmQ5ZmYyZDE3Yzhh
YmQuLjc2MzRlNDBhNTgyOWI5OTg4NmViY2EzY2Q1ODJjYmU4MDk0NzAyYzggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtU291cmNlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1Tb3Vy
Y2UuaApAQCAtNDEsNDMgKzQxLDM2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgTWVk
aWFTdHJlYW1Tb3VyY2UgOiBwdWJsaWMgUmVmQ291bnRlZDxNZWRpYVN0cmVhbVNvdXJjZT4gewog
cHVibGljOgotICAgIGNsYXNzIE9ic2VydmVyIHsKLSAgICBwdWJsaWM6Ci0gICAgICAgIHZpcnR1
YWwgfk9ic2VydmVyKCkgeyB9Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBzb3VyY2VDaGFuZ2VkU3Rh
dGUoKSA9IDA7Ci0gICAgfTsKLQogICAgIGVudW0gVHlwZSB7CiAgICAgICAgIFR5cGVBdWRpbywK
ICAgICAgICAgVHlwZVZpZGVvCiAgICAgfTsKIAotICAgIGVudW0gUmVhZHlTdGF0ZSB7Ci0gICAg
ICAgIFJlYWR5U3RhdGVMaXZlID0gMCwKLSAgICAgICAgUmVhZHlTdGF0ZU11dGVkID0gMSwKLSAg
ICAgICAgUmVhZHlTdGF0ZUVuZGVkID0gMgotICAgIH07Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0
cjxNZWRpYVN0cmVhbVNvdXJjZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgaWQsIFR5cGUsIGNvbnN0
IFN0cmluZyYgbmFtZSwgUmVhZHlTdGF0ZSA9IFJlYWR5U3RhdGVMaXZlKTsKKyAgICBzdGF0aWMg
UGFzc1JlZlB0cjxNZWRpYVN0cmVhbVNvdXJjZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgaWQsIFR5
cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBNZWRpYVN0cmVhbVNvdXJjZShpZCwgdHlwZSwgbmFtZSkpOworICAgIH0KIAogICAg
IGNvbnN0IFN0cmluZyYgaWQoKSBjb25zdCB7IHJldHVybiBtX2lkOyB9CiAgICAgVHlwZSB0eXBl
KCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAgICAgY29uc3QgU3RyaW5nJiBuYW1lKCkgY29u
c3QgeyByZXR1cm4gbV9uYW1lOyB9CiAKLSAgICB2b2lkIHNldFJlYWR5U3RhdGUoUmVhZHlTdGF0
ZSk7Ci0gICAgUmVhZHlTdGF0ZSByZWFkeVN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9yZWFkeVN0
YXRlOyB9Ci0KLSAgICB2b2lkIGFkZE9ic2VydmVyKE9ic2VydmVyKik7Ci0gICAgdm9pZCByZW1v
dmVPYnNlcnZlcihPYnNlcnZlciopOworICAgIGJvb2wgbXV0ZWQoKSBjb25zdCB7IHJldHVybiBt
X211dGVkOyB9CisgICAgdm9pZCBzZXRNdXRlZChib29sIG11dGVkKSB7IG1fbXV0ZWQgPSBtdXRl
ZDsgfQogCiBwcml2YXRlOgotICAgIE1lZGlhU3RyZWFtU291cmNlKGNvbnN0IFN0cmluZyYgaWQs
IFR5cGUsIGNvbnN0IFN0cmluZyYgbmFtZSwgUmVhZHlTdGF0ZSk7CisgICAgTWVkaWFTdHJlYW1T
b3VyY2UoY29uc3QgU3RyaW5nJiBpZCwgVHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUpCisg
ICAgICAgIDogbV9pZChpZCkKKyAgICAgICAgLCBtX3R5cGUodHlwZSkKKyAgICAgICAgLCBtX25h
bWUobmFtZSkKKyAgICAgICAgLCBtX211dGVkKGZhbHNlKQorICAgIHsKKyAgICB9CiAKICAgICBT
dHJpbmcgbV9pZDsKICAgICBUeXBlIG1fdHlwZTsKICAgICBTdHJpbmcgbV9uYW1lOwotICAgIFJl
YWR5U3RhdGUgbV9yZWFkeVN0YXRlOwotICAgIFZlY3RvcjxPYnNlcnZlcio+IG1fb2JzZXJ2ZXJz
OworICAgIGJvb2wgbV9tdXRlZDsKIH07CiAKIHR5cGVkZWYgVmVjdG9yPFJlZlB0cjxNZWRpYVN0
cmVhbVNvdXJjZT4gPiBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvcjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2Nocm9taXVtL01lZGlhU3RyZWFtQ2VudGVy
Q2hyb21pdW0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vY2hyb21p
dW0vTWVkaWFTdHJlYW1DZW50ZXJDaHJvbWl1bS5jcHAKaW5kZXggOTI1ODA3NDQyMGE4MGUzNWQy
M2M0NDY0MWZiMDMxZjRhMzA3YzM1Yi4uM2M4MmY1ZjhiZDFlNjgwMWM2ZDM1Y2UyNzU3ODE5OWYw
Nzc5NDg5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
Y2hyb21pdW0vTWVkaWFTdHJlYW1DZW50ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vY2hyb21pdW0vTWVkaWFTdHJlYW1DZW50ZXJDaHJvbWl1
bS5jcHAKQEAgLTY4LDEyICs2OCw5IEBAIE1lZGlhU3RyZWFtQ2VudGVyQ2hyb21pdW06On5NZWRp
YVN0cmVhbUNlbnRlckNocm9taXVtKCkKIAogdm9pZCBNZWRpYVN0cmVhbUNlbnRlckNocm9taXVt
OjpxdWVyeU1lZGlhU3RyZWFtU291cmNlcyhQYXNzUmVmUHRyPE1lZGlhU3RyZWFtU291cmNlc1F1
ZXJ5Q2xpZW50PiBjbGllbnQpCiB7Ci0gICAgaWYgKG1fcHJpdmF0ZSkKLSAgICAgICAgbV9wcml2
YXRlLT5xdWVyeU1lZGlhU3RyZWFtU291cmNlcyhjbGllbnQpOwotICAgIGVsc2UgewotICAgICAg
ICBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciBhdWRpb1NvdXJjZXMsIHZpZGVvU291cmNlczsKLSAg
ICAgICAgY2xpZW50LT5kaWRDb21wbGV0ZVF1ZXJ5KGF1ZGlvU291cmNlcywgdmlkZW9Tb3VyY2Vz
KTsKLSAgICB9CisgICAgLy8gRklYTUU6IFJlbW92ZSB0aGlzICJzaG9ydC1jaXJjdWl0IiBhbmQg
Zm9yd2FyZCB0byBtX3ByaXZhdGUgd2hlbiBDaHJvbWUgYW5kIER1bXBSZW5kZXJUcmVlIGhhcyBp
bXBsZW1lbnRlZCBXZWJNZWRpYVN0cmVhbUNlbnRlci4KKyAgICBNZWRpYVN0cmVhbVNvdXJjZVZl
Y3RvciBhdWRpb1NvdXJjZXMsIHZpZGVvU291cmNlczsKKyAgICBjbGllbnQtPmRpZENvbXBsZXRl
UXVlcnkoYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpOwogfQogCiB2b2lkIE1lZGlhU3RyZWFt
Q2VudGVyQ2hyb21pdW06OmRpZFNldE1lZGlhU3RyZWFtVHJhY2tFbmFibGVkKE1lZGlhU3RyZWFt
RGVzY3JpcHRvciogc3RyZWFtLCAgTWVkaWFTdHJlYW1Db21wb25lbnQqIGNvbXBvbmVudCkKQEAg
LTEwMyw2ICsxMDAsOSBAQCB2b2lkIE1lZGlhU3RyZWFtQ2VudGVyQ2hyb21pdW06OmRpZFN0b3BM
b2NhbE1lZGlhU3RyZWFtKE1lZGlhU3RyZWFtRGVzY3JpcHRvciogcwogdm9pZCBNZWRpYVN0cmVh
bUNlbnRlckNocm9taXVtOjpkaWRDcmVhdGVNZWRpYVN0cmVhbShNZWRpYVN0cmVhbURlc2NyaXB0
b3IqIHN0cmVhbSkKIHsKICAgICBpZiAobV9wcml2YXRlKSB7CisgICAgICAgIC8vIEZJWE1FOiBS
ZW1vdmUgd2hlbiBDaHJvbWl1bSBoYXZlIHN3aXRjaGVkIHRvIHRoZSBuZXcgQVBJLgorICAgICAg
ICBtX3ByaXZhdGUtPmRpZENvbnN0cnVjdE1lZGlhU3RyZWFtKHN0cmVhbSk7CisKICAgICAgICAg
V2ViS2l0OjpXZWJNZWRpYVN0cmVhbURlc2NyaXB0b3Igd2ViU3RyZWFtKHN0cmVhbSk7CiAgICAg
ICAgIG1fcHJpdmF0ZS0+ZGlkQ3JlYXRlTWVkaWFTdHJlYW0od2ViU3RyZWFtKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Bc3NlcnRNYXRjaGluZ0VudW1z
LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Fzc2VydE1hdGNoaW5nRW51bXMuY3Bw
CmluZGV4IDVmMjUwMzUxYTllOTIwMTkxOTE3ZTE0YjhiZmVjYWY3YzQxYjdlZTguLjc4OWQxYjYy
MzdiMWFmYjk0OTkzYTU4YjE5ZTQwMzViYzJlYWI4YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL0Fzc2VydE1hdGNoaW5nRW51bXMuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL0Fzc2VydE1hdGNoaW5nRW51bXMuY3BwCkBAIC01MzcsOSArNTM3LDYg
QEAgQ09NUElMRV9BU1NFUlRfTUFUQ0hJTkdfRU5VTShXZWJQYWdlVmlzaWJpbGl0eVN0YXRlUHJl
dmlldywgUGFnZVZpc2liaWxpdHlTdGF0ZVAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogQ09N
UElMRV9BU1NFUlRfTUFUQ0hJTkdfRU5VTShXZWJNZWRpYVN0cmVhbVNvdXJjZTo6VHlwZUF1ZGlv
LCBNZWRpYVN0cmVhbVNvdXJjZTo6VHlwZUF1ZGlvKTsKIENPTVBJTEVfQVNTRVJUX01BVENISU5H
X0VOVU0oV2ViTWVkaWFTdHJlYW1Tb3VyY2U6OlR5cGVWaWRlbywgTWVkaWFTdHJlYW1Tb3VyY2U6
OlR5cGVWaWRlbyk7Ci1DT01QSUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKFdlYk1lZGlhU3RyZWFt
U291cmNlOjpSZWFkeVN0YXRlTGl2ZSwgTWVkaWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGVMaXZl
KTsKLUNPTVBJTEVfQVNTRVJUX01BVENISU5HX0VOVU0oV2ViTWVkaWFTdHJlYW1Tb3VyY2U6OlJl
YWR5U3RhdGVNdXRlZCwgTWVkaWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGVNdXRlZCk7Ci1DT01Q
SUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKFdlYk1lZGlhU3RyZWFtU291cmNlOjpSZWFkeVN0YXRl
RW5kZWQsIE1lZGlhU3RyZWFtU291cmNlOjpSZWFkeVN0YXRlRW5kZWQpOwogCiBDT01QSUxFX0FT
U0VSVF9NQVRDSElOR19FTlVNKFdlYklDRU9wdGlvbnM6OkNhbmRpZGF0ZVR5cGVBbGwsIEljZU9w
dGlvbnM6OkFMTCk7CiBDT01QSUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKFdlYklDRU9wdGlvbnM6
OkNhbmRpZGF0ZVR5cGVOb1JlbGF5LCBJY2VPcHRpb25zOjpOT19SRUxBWSk7CmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2M3YmQ0MjIzNTQ4OGQx
Njk4MWE4MDhmOGYxYTY4YmNlY2Q5ODMwNC4uODg0ZjlmZWUxNGFkZGY3MmUzZWJmYjU1NmQzZTNh
MDVlYTYwZTJmZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTA3LTI0ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5y
ZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCBy
MTIzNDk5LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xMjM0OTkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkyMTYxCisK
KyAgICAgICAgQW5kcm9pZCBmYWlscyB0byBjb21waWxlIChSZXF1ZXN0ZWQgYnkgemhlbnlhbyBv
biAjd2Via2l0KS4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5
cGk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTW9ja1dlYktpdFBsYXRmb3Jt
U3VwcG9ydC5jcHA6CisgICAgICAgIChNb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0OjpjcmVhdGVN
ZWRpYVN0cmVhbUNlbnRlcik6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTW9j
a1dlYktpdFBsYXRmb3JtU3VwcG9ydC5oOgorICAgICAgICAoTW9ja1dlYktpdFBsYXRmb3JtU3Vw
cG9ydCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTW9ja1dlYk1lZGlhU3Ry
ZWFtQ2VudGVyLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9Nb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXIuaDogUmVtb3ZlZC4KKwogMjAxMi0wNy0yNCAgUGV0
ZXIgQmV2ZXJsb28gIDxwZXRlckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQW5kcm9pZC1jaHJv
bWl1bSBsYXlvdXQgdGVzdHMgZmFpbGluZyB3aXRoIEdQVSByZWxhdGVkIGNyYXNoCmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaQppbmRleCA3ZGQ1YTFlYzZmNDVjODQwNzRk
NmYyYTZkYzRhMTc3MjE1NWJmZDM5Li5lMTFmNDBlY2Q1ODZmYTlmMmRhNDg3NzRlZjI1OWQ5YjI5
ZDNhNWU5IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5n
eXBpCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkKQEAgLTE2
LDggKzE2LDYgQEAKICAgICAgICAgICAgICdjaHJvbWl1bS9Nb2NrU3BlbGxDaGVjay5oJywKICAg
ICAgICAgICAgICdjaHJvbWl1bS9Nb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0LmNwcCcsCiAgICAg
ICAgICAgICAnY2hyb21pdW0vTW9ja1dlYktpdFBsYXRmb3JtU3VwcG9ydC5oJywKLSAgICAgICAg
ICAgICdjaHJvbWl1bS9Nb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXIuY3BwJywKLSAgICAgICAgICAg
ICdjaHJvbWl1bS9Nb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXIuaCcsCiAgICAgICAgICAgICAnY2hy
b21pdW0vTW9ja1dlYlByZXJlbmRlcmluZ1N1cHBvcnQuY3BwJywKICAgICAgICAgICAgICdjaHJv
bWl1bS9Nb2NrV2ViUHJlcmVuZGVyaW5nU3VwcG9ydC5oJywKICAgICAgICAgICAgICdjaHJvbWl1
bS9Nb2NrV2ViU3BlZWNoSW5wdXRDb250cm9sbGVyLmNwcCcsCmRpZmYgLS1naXQgYS9Ub29scy9E
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9Nb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0LmNwcCBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL01vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuY3Bw
CmluZGV4IDIyY2Q0ZmUyYWEzMjhjMzUzODMzNjBlYjllNjYxNjNjMDg4MDViMTkuLjIzYjVhYTdk
YjE3ODVjYTEzYTJjY2YxZDMzM2E3NDRkZDk3NTZhOWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL01vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuY3BwCisrKyBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL01vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuY3Bw
CkBAIC0zMSw5ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTW9ja1dl
YktpdFBsYXRmb3JtU3VwcG9ydC5oIgogCi0jaW5jbHVkZSAiTW9ja1dlYk1lZGlhU3RyZWFtQ2Vu
dGVyLmgiCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc093
blB0ci5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogCkBAIC01NSwxMCArNTMsNyBAQCB2
b2lkIE1vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnQ6OmNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tVmFs
dWVzKHVuc2lnbmVkIGNoYXIqLCBzaQogICAgIENSQVNIKCk7CiB9CiAKLVdlYk1lZGlhU3RyZWFt
Q2VudGVyKiBNb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0OjpjcmVhdGVNZWRpYVN0cmVhbUNlbnRl
cihXZWJNZWRpYVN0cmVhbUNlbnRlckNsaWVudCogY2xpZW50KQorV2ViTWVkaWFTdHJlYW1DZW50
ZXIqIE1vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnQ6OmNyZWF0ZU1lZGlhU3RyZWFtQ2VudGVyKFdl
Yk1lZGlhU3RyZWFtQ2VudGVyQ2xpZW50KikKIHsKLSAgICBpZiAoIW1fbW9ja01lZGlhU3RyZWFt
Q2VudGVyKQotICAgICAgICBtX21vY2tNZWRpYVN0cmVhbUNlbnRlciA9IGFkb3B0UHRyKG5ldyBN
b2NrV2ViTWVkaWFTdHJlYW1DZW50ZXIoY2xpZW50KSk7Ci0KLSAgICByZXR1cm4gbV9tb2NrTWVk
aWFTdHJlYW1DZW50ZXIuZ2V0KCk7CisgICAgcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9Nb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0LmggYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9Nb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0LmgK
aW5kZXggMmE4YzU5M2I3NjllMjllMGM4OTAzY2M0OWVmMGZiN2IyNDdjNDE5Ny4uNWU4OTc3ZDU1
ZTFlNjM1OWE0NGUwMDNhNjNmMGU4MjMzNmI2MmE1ZCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vTW9ja1dlYktpdFBsYXRmb3JtU3VwcG9ydC5oCisrKyBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL01vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuaApAQCAt
MzIsNyArMzIsNiBAQAogI2RlZmluZSBNb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0X2gKIAogI2lu
Y2x1ZGUgPHB1YmxpYy9QbGF0Zm9ybS5oPgotI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KICNpbmNs
dWRlIDx3dGYvUGFzc093blB0ci5oPgogCiBjbGFzcyBNb2NrV2ViS2l0UGxhdGZvcm1TdXBwb3J0
IDogcHVibGljIFdlYktpdDo6UGxhdGZvcm0gewpAQCAtNDYsOCArNDUsNiBAQCBwdWJsaWM6CiAK
IHByaXZhdGU6CiAgICAgTW9ja1dlYktpdFBsYXRmb3JtU3VwcG9ydCgpOwotCi0gICAgT3duUHRy
PFdlYktpdDo6V2ViTWVkaWFTdHJlYW1DZW50ZXI+IG1fbW9ja01lZGlhU3RyZWFtQ2VudGVyOwog
fTsKIAogI2VuZGlmIC8vIE1vY2tXZWJLaXRQbGF0Zm9ybVN1cHBvcnRfaApkaWZmIC0tZ2l0IGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTW9ja1dlYk1lZGlhU3RyZWFtQ2VudGVyLmNw
cCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL01vY2tXZWJNZWRpYVN0cmVhbUNlbnRl
ci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMwYjU2ZjFmMWU0NmMxOTUyZTNm
ZTczNzRjNTgyOWUyYzI5ZTVlMzMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTW9ja1dlYk1lZGlhU3Ry
ZWFtQ2VudGVyLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwNCArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0gKiBtZXQ6Ci0gKgotICogICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSAqIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqIGRpc3RyaWJ1
dGlvbi4KLSAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKLSAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0gKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK
LSAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNsdWRlICJNb2NrV2ViTWVk
aWFTdHJlYW1DZW50ZXIuaCIKLQotI2luY2x1ZGUgInBsYXRmb3JtL1dlYklDRUNhbmRpZGF0ZURl
c2NyaXB0b3IuaCIKLSNpbmNsdWRlICJwbGF0Zm9ybS9XZWJNZWRpYVN0cmVhbUNlbnRlckNsaWVu
dC5oIgotI2luY2x1ZGUgInBsYXRmb3JtL1dlYk1lZGlhU3RyZWFtQ29tcG9uZW50LmgiCi0jaW5j
bHVkZSAicGxhdGZvcm0vV2ViTWVkaWFTdHJlYW1EZXNjcmlwdG9yLmgiCi0jaW5jbHVkZSAicGxh
dGZvcm0vV2ViTWVkaWFTdHJlYW1Tb3VyY2UuaCIKLSNpbmNsdWRlICJwbGF0Zm9ybS9XZWJNZWRp
YVN0cmVhbVNvdXJjZXNSZXF1ZXN0LmgiCi0jaW5jbHVkZSAicGxhdGZvcm0vV2ViU2Vzc2lvbkRl
c2NyaXB0aW9uRGVzY3JpcHRvci5oIgotI2luY2x1ZGUgInBsYXRmb3JtL1dlYlZlY3Rvci5oIgot
Ci11c2luZyBuYW1lc3BhY2UgV2ViS2l0OwotCi1Nb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXI6Ok1v
Y2tXZWJNZWRpYVN0cmVhbUNlbnRlcihXZWJNZWRpYVN0cmVhbUNlbnRlckNsaWVudCogY2xpZW50
KQotewotfQotCi12b2lkIE1vY2tXZWJNZWRpYVN0cmVhbUNlbnRlcjo6cXVlcnlNZWRpYVN0cmVh
bVNvdXJjZXMoY29uc3QgV2ViTWVkaWFTdHJlYW1Tb3VyY2VzUmVxdWVzdCYgcmVxdWVzdCkKLXsK
LSAgICBXZWJWZWN0b3I8V2ViTWVkaWFTdHJlYW1Tb3VyY2U+IGF1ZGlvU291cmNlcywgdmlkZW9T
b3VyY2VzOwotICAgIHJlcXVlc3QuZGlkQ29tcGxldGVRdWVyeShhdWRpb1NvdXJjZXMsIHZpZGVv
U291cmNlcyk7Ci19Ci0KLXZvaWQgTW9ja1dlYk1lZGlhU3RyZWFtQ2VudGVyOjpkaWRFbmFibGVN
ZWRpYVN0cmVhbVRyYWNrKGNvbnN0IFdlYk1lZGlhU3RyZWFtRGVzY3JpcHRvciYsIGNvbnN0IFdl
Yk1lZGlhU3RyZWFtQ29tcG9uZW50JiBjb21wb25lbnQpCi17Ci0gICAgY29tcG9uZW50LnNvdXJj
ZSgpLnNldFJlYWR5U3RhdGUoV2ViTWVkaWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGVMaXZlKTsK
LX0KLQotdm9pZCBNb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXI6OmRpZERpc2FibGVNZWRpYVN0cmVh
bVRyYWNrKGNvbnN0IFdlYk1lZGlhU3RyZWFtRGVzY3JpcHRvciYsIGNvbnN0IFdlYk1lZGlhU3Ry
ZWFtQ29tcG9uZW50JiBjb21wb25lbnQpCi17Ci0gICAgY29tcG9uZW50LnNvdXJjZSgpLnNldFJl
YWR5U3RhdGUoV2ViTWVkaWFTdHJlYW1Tb3VyY2U6OlJlYWR5U3RhdGVNdXRlZCk7Ci19Ci0KLXZv
aWQgTW9ja1dlYk1lZGlhU3RyZWFtQ2VudGVyOjpkaWRTdG9wTG9jYWxNZWRpYVN0cmVhbShjb25z
dCBXZWJNZWRpYVN0cmVhbURlc2NyaXB0b3ImIHN0cmVhbSkKLXsKLSAgICBXZWJWZWN0b3I8V2Vi
TWVkaWFTdHJlYW1Db21wb25lbnQ+IGF1ZGlvQ29tcG9uZW50czsKLSAgICBzdHJlYW0uYXVkaW9T
b3VyY2VzKGF1ZGlvQ29tcG9uZW50cyk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhdWRp
b0NvbXBvbmVudHMuc2l6ZSgpOyArK2kpCi0gICAgICAgIGF1ZGlvQ29tcG9uZW50c1tpXS5zb3Vy
Y2UoKS5zZXRSZWFkeVN0YXRlKFdlYk1lZGlhU3RyZWFtU291cmNlOjpSZWFkeVN0YXRlRW5kZWQp
OwotCi0gICAgV2ViVmVjdG9yPFdlYk1lZGlhU3RyZWFtQ29tcG9uZW50PiB2aWRlb0NvbXBvbmVu
dHM7Ci0gICAgc3RyZWFtLnZpZGVvU291cmNlcyh2aWRlb0NvbXBvbmVudHMpOwotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgdmlkZW9Db21wb25lbnRzLnNpemUoKTsgKytpKQotICAgICAgICB2
aWRlb0NvbXBvbmVudHNbaV0uc291cmNlKCkuc2V0UmVhZHlTdGF0ZShXZWJNZWRpYVN0cmVhbVNv
dXJjZTo6UmVhZHlTdGF0ZUVuZGVkKTsKLX0KLQotdm9pZCBNb2NrV2ViTWVkaWFTdHJlYW1DZW50
ZXI6OmRpZENyZWF0ZU1lZGlhU3RyZWFtKFdlYk1lZGlhU3RyZWFtRGVzY3JpcHRvciYpCi17Ci19
Ci0KLVdlYlN0cmluZyBNb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXI6OmNvbnN0cnVjdFNEUChjb25z
dCBXZWJJQ0VDYW5kaWRhdGVEZXNjcmlwdG9yJiBpY2VDYW5kaWRhdGUpCi17Ci0gICAgc3RyaW5n
MTYgcmVzdWx0ID0gaWNlQ2FuZGlkYXRlLmxhYmVsKCk7Ci0gICAgcmVzdWx0ICs9IFdlYlN0cmlu
ZygiOiIpOwotICAgIHJlc3VsdCArPSBpY2VDYW5kaWRhdGUuY2FuZGlkYXRlTGluZSgpOwotICAg
IHJlc3VsdCArPSBXZWJTdHJpbmcoIjsiKTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi1XZWJT
dHJpbmcgTW9ja1dlYk1lZGlhU3RyZWFtQ2VudGVyOjpjb25zdHJ1Y3RTRFAoY29uc3QgV2ViU2Vz
c2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvciYgc2Vzc2lvbkRlc2NyaXB0aW9uKQotewotICAgIHN0
cmluZzE2IHJlc3VsdCA9IHNlc3Npb25EZXNjcmlwdGlvbi5pbml0aWFsU0RQKCk7Ci0gICAgcmVz
dWx0ICs9IFdlYlN0cmluZygiOyIpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2Vzc2lv
bkRlc2NyaXB0aW9uLm51bWJlck9mQWRkZWRDYW5kaWRhdGVzKCk7ICsraSkgewotICAgICAgICBy
ZXN1bHQgKz0gY29uc3RydWN0U0RQKHNlc3Npb25EZXNjcmlwdGlvbi5jYW5kaWRhdGUoaSkpOwot
ICAgICAgICByZXN1bHQgKz0gV2ViU3RyaW5nKCI7Iik7Ci0gICAgfQotICAgIHJldHVybiByZXN1
bHQ7Ci19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0IGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTW9ja1dlYk1lZGlhU3RyZWFtQ2VudGVyLmggYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9Nb2NrV2ViTWVkaWFTdHJlYW1DZW50ZXIuaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmNmMThhY2VhZWI3Njc0MWZlNTU5YTRhMjU1
NWNiYzQ3ZjA1MDk3Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9Nb2NrV2ViTWVkaWFTdHJlYW1DZW50
ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDU3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICog
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cwotICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VAotICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIE1vY2tXZWJNZWRpYVN0
cmVhbUNlbnRlcl9oCi0jZGVmaW5lIE1vY2tXZWJNZWRpYVN0cmVhbUNlbnRlcl9oCi0KLSNpbmNs
dWRlICJwbGF0Zm9ybS9XZWJNZWRpYVN0cmVhbUNlbnRlci5oIgotCi1uYW1lc3BhY2UgV2ViS2l0
IHsKLWNsYXNzIFdlYk1lZGlhU3RyZWFtQ2VudGVyQ2xpZW50OwotfTsKLQotY2xhc3MgTW9ja1dl
Yk1lZGlhU3RyZWFtQ2VudGVyIDogcHVibGljIFdlYktpdDo6V2ViTWVkaWFTdHJlYW1DZW50ZXIg
ewotcHVibGljOgotICAgIGV4cGxpY2l0IE1vY2tXZWJNZWRpYVN0cmVhbUNlbnRlcihXZWJLaXQ6
OldlYk1lZGlhU3RyZWFtQ2VudGVyQ2xpZW50Kik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcXVlcnlN
ZWRpYVN0cmVhbVNvdXJjZXMoY29uc3QgV2ViS2l0OjpXZWJNZWRpYVN0cmVhbVNvdXJjZXNSZXF1
ZXN0JikgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIGRpZEVuYWJsZU1lZGlhU3RyZWFtVHJh
Y2soY29uc3QgV2ViS2l0OjpXZWJNZWRpYVN0cmVhbURlc2NyaXB0b3ImLCBjb25zdCBXZWJLaXQ6
OldlYk1lZGlhU3RyZWFtQ29tcG9uZW50JikgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIGRp
ZERpc2FibGVNZWRpYVN0cmVhbVRyYWNrKGNvbnN0IFdlYktpdDo6V2ViTWVkaWFTdHJlYW1EZXNj
cmlwdG9yJiwgY29uc3QgV2ViS2l0OjpXZWJNZWRpYVN0cmVhbUNvbXBvbmVudCYpIE9WRVJSSURF
OwotICAgIHZpcnR1YWwgdm9pZCBkaWRTdG9wTG9jYWxNZWRpYVN0cmVhbShjb25zdCBXZWJLaXQ6
OldlYk1lZGlhU3RyZWFtRGVzY3JpcHRvciYpIE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCBk
aWRDcmVhdGVNZWRpYVN0cmVhbShXZWJLaXQ6OldlYk1lZGlhU3RyZWFtRGVzY3JpcHRvciYpIE9W
RVJSSURFOwotICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJTdHJpbmcgY29uc3RydWN0U0RQKGNvbnN0
IFdlYktpdDo6V2ViSUNFQ2FuZGlkYXRlRGVzY3JpcHRvciYpIE9WRVJSSURFOwotICAgIHZpcnR1
YWwgV2ViS2l0OjpXZWJTdHJpbmcgY29uc3RydWN0U0RQKGNvbnN0IFdlYktpdDo6V2ViU2Vzc2lv
bkRlc2NyaXB0aW9uRGVzY3JpcHRvciYpIE9WRVJSSURFOwotCi1wcml2YXRlOgotICAgIE1vY2tX
ZWJNZWRpYVN0cmVhbUNlbnRlcigpIHsgfQotfTsKLQotI2VuZGlmIC8vIE1vY2tXZWJNZWRpYVN0
cmVhbUNlbnRlcl9oCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4MWNhNjliMjUxY2E2Y2NhOGQ1ZmIzN2I3N2ZjMTI4NTNm
MmJmNTdjLi5iZmNmOWFiMTQ0YzM4Zjk3ODg5MTBjYmFmNGJiYzMwNGZkYzI1ZjIyIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTItMDctMjQgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5i
b3RAZ21haWwuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMjM0OTku
CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzEyMzQ5OQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTIxNjEKKworICAgICAg
ICBBbmRyb2lkIGZhaWxzIHRvIGNvbXBpbGUgKFJlcXVlc3RlZCBieSB6aGVueWFvIG9uICN3ZWJr
aXQpLgorCisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbVRyYWNrLWV4cGVj
dGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFt
VHJhY2suaHRtbDogUmVtb3ZlZC4KKwogMjAxMi0wNy0yNCAgSnVsaWVuIENoYWZmcmFpeCAgPGpj
aGFmZnJhaXhAd2Via2l0Lm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBSZW5kZXJUYWJsZVNlY3Rp
b246OmxheW91dFJvd3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
TWVkaWFTdHJlYW1UcmFjay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL01lZGlhU3RyZWFtVHJhY2stZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBhZmQ2NDYwYWUzMzViODM5ZTY4OThhNWMyMzkyOTU1NmE2ZWY2MDBhLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSwxMyArMCwwIEBACi1UZXN0cyBNZWRpYVN0cmVhbVRyYWNrIGNhbGxiYWNrcy4KLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgZ2V0VXNlck1lZGlhIHN1Y2NlZWRlZC4K
LVBBU1MgVHJhY2sgb25tdXRlIGNhbGxiYWNrIHN1Y2NlZWRlZC4KLVBBU1MgVHJhY2sgb251bm11
dGUgY2FsbGJhY2sgc3VjY2VlZGVkLgotUEFTUyBUcmFjayBvbmVuZGVkIGNhbGxiYWNrIHN1Y2Nl
ZWRlZC4KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtVHJh
Y2suaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZjViNmViN2RmZGVkNjhmYjUzODEz
YzRiZGM2MWNlMGU0ZTc0ZDYxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1UcmFjay5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3Jp
cHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFk
PgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJUZXN0cyBNZWRpYVN0cmVhbVRyYWNrIGNhbGxi
YWNrcy4iKTsKLQotLy8gTm90ZSB0aGF0IHRoZSBiZWxvdyBiZWhhdmlvdXIgZG9lc24ndCByZWZs
ZWN0IGhvdyBpdCB3b3JrcyBvdXRzaWRlIG9mIExheW91dFRlc3RzLgotLy8gVGhlIHVuZGVybHlp
bmcgbW9jayBpcyBtb2RpZmllZCB0byB0cmlnZ2VyIHRoZSBldmVudHMgd2hlbiBjZXJ0YWluIGZ1
bmN0aW9ucyBhcmUgY2FsbGVkLgotLy8gVGhpcyBtb2RpZmllZCBiZWhhdmlvdXIgYWxsb3dzIHVz
IHRvIHRlc3QgdGhlIE1lZGlhU3RyZWFtVHJhY2sgY2xhc3MgcHJvcGVybHkuCi0KLXZhciBzdHJl
YW07Ci12YXIgdHJhY2s7Ci0KLWZ1bmN0aW9uIGVycm9yKCkgewotICAgIHRlc3RGYWlsZWQoJ1N0
cmVhbSBnZW5lcmF0aW9uIGZhaWxlZC4nKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0KLQotZnVu
Y3Rpb24gZ2V0VXNlck1lZGlhKGNvbnN0cmFpbnRzLCBjYWxsYmFjaykgewotICAgIHRyeSB7Ci0g
ICAgICAgIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoY29uc3RyYWludHMsIGNhbGxiYWNr
LCBlcnJvcik7Ci0gICAgfSBjYXRjaCAoZSkgewotICAgICAgICB0ZXN0RmFpbGVkKCd3ZWJraXRH
ZXRVc2VyTWVkaWEgdGhyZXcgZXhjZXB0aW9uIDonICsgZSk7Ci0gICAgICAgIGZpbmlzaEpTVGVz
dCgpOwotICAgIH0KLX0KLQotZnVuY3Rpb24gb25UcmFja0VuZGVkKCkgewotICAgIHRlc3RQYXNz
ZWQoJ1RyYWNrIG9uZW5kZWQgY2FsbGJhY2sgc3VjY2VlZGVkLicpOwotCi0gICAgZmluaXNoSlNU
ZXN0KCk7Ci19Ci0KLWZ1bmN0aW9uIG9uVHJhY2tVbm11dGUoKSB7Ci0gICAgdGVzdFBhc3NlZCgn
VHJhY2sgb251bm11dGUgY2FsbGJhY2sgc3VjY2VlZGVkLicpOwotCi0gICAgc3RyZWFtLnN0b3Ao
KTsKLX0KLQotZnVuY3Rpb24gb25UcmFja011dGUoKSB7Ci0gICAgdGVzdFBhc3NlZCgnVHJhY2sg
b25tdXRlIGNhbGxiYWNrIHN1Y2NlZWRlZC4nKTsKLQotICAgIHRyYWNrLmVuYWJsZWQgPSB0cnVl
OwotfQotCi1mdW5jdGlvbiBnb3RTdHJlYW0ocykgewotICAgIHRlc3RQYXNzZWQoJ2dldFVzZXJN
ZWRpYSBzdWNjZWVkZWQuJyk7Ci0KLSAgICBzdHJlYW0gPSBzOwotICAgIHRyYWNrID0gc3RyZWFt
LnZpZGVvVHJhY2tzWzBdOwotCi0gICAgdHJhY2sub251bm11dGUgPSBvblRyYWNrVW5tdXRlOwot
ICAgIHRyYWNrLm9ubXV0ZSA9IG9uVHJhY2tNdXRlOwotICAgIHRyYWNrLm9uZW5kZWQgPSBvblRy
YWNrRW5kZWQ7Ci0KLSAgICB0cmFjay5lbmFibGVkID0gZmFsc2U7Ci19Ci0KLWdldFVzZXJNZWRp
YSh7YXVkaW86dHJ1ZSwgdmlkZW86dHJ1ZX0sIGdvdFN0cmVhbSk7Ci0KLXdpbmRvdy5qc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKLXdpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Ci08L2JvZHk+Ci08L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>