<?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>102111</bug_id>
          
          <creation_ts>2012-11-13 11:46:16 -0800</creation_ts>
          <short_desc>REGRESSION(r134442): Does not compile on apple-mac (Requested by abarth on #webkit).</short_desc>
          <delta_ts>2012-11-13 12:37:12 -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>101935</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>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>765870</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-13 11:46:16 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/134442 broke the build:
Does not compile on apple-mac (Requested by abarth 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>765873</commentid>
    <comment_count>1</comment_count>
      <attachid>173937</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-13 11:47:04 -0800</bug_when>
    <thetext>Created attachment 173937
ROLLOUT of r134442

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>765891</commentid>
    <comment_count>2</comment_count>
      <attachid>173937</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-13 11:57:39 -0800</bug_when>
    <thetext>Comment on attachment 173937
ROLLOUT of r134442

Rejecting attachment 173937 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

Last 500 characters of output:
ommit-queue/Source/WebKit/chromium/third_party/snappy/src --revision 63 --non-interactive --force --accept theirs-conflict --ignore-externals&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
49&gt;At revision 63.

________ running &apos;/usr/bin/python tools/clang/scripts/update.py --mac-only&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;

________ running &apos;/usr/bin/python gyp_webkit&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
Updating webkit projects from gyp files...

Full output: http://queues.webkit.org/results/14823487</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>765941</commentid>
    <comment_count>3</comment_count>
      <attachid>173937</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-13 12:37:10 -0800</bug_when>
    <thetext>Comment on attachment 173937
ROLLOUT of r134442

Clearing flags on attachment: 173937

Committed r134466: &lt;http://trac.webkit.org/changeset/134466&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>765942</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-13 12:37:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173937</attachid>
            <date>2012-11-13 11:47:04 -0800</date>
            <delta_ts>2012-11-13 12:37:10 -0800</delta_ts>
            <desc>ROLLOUT of r134442</desc>
            <filename>bug-102111-20121113195324.patch</filename>
            <type>text/plain</type>
            <size>48445</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0NDU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTdiNDlhMjA0YmM0MDUz
MGE3MjM4ODk2ODFkNmU5MmE3OTU3MjhiOC4uMTFiYTE2MjM5ODc5NTJhNzY0YjBkMTM5NDU2Yjdl
MGZmNzExM2M2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc5IEBACisyMDEyLTExLTEzICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMTM0NDQyLgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xMzQ0NDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwMjExMQorCisgICAgICAgIERvZXMgbm90IGNvbXBpbGUgb24gYXBwbGUtbWFj
IChSZXF1ZXN0ZWQgYnkgYWJhcnRoIG9uCisgICAgICAgICN3ZWJraXQpLgorCisgICAgICAgICog
Q01ha2VMaXN0cy50eHQ6CisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAg
KiBUYXJnZXQucHJpOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogY3NzL0NTU0N1cnNvckltYWdlVmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTQ3Vyc29ySW1hZ2VWYWx1ZTo6Y2FjaGVkSW1hZ2UpOgorICAgICAg
ICAqIGNzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0Zv
bnRGYWNlU3JjVmFsdWU6OmNhY2hlZEZvbnQpOgorICAgICAgICAqIGNzcy9DU1NJbWFnZVNldFZh
bHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OmNhY2hlZEltYWdl
U2V0KToKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NJbWFnZVZhbHVlOjpjYWNoZWRJbWFnZSk6CisgICAgICAgICogY3NzL0NTU0ltYWdlVmFs
dWUuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoQ1NTSW1hZ2VWYWx1ZSk6CisgICAg
ICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNv
bHZlcjo6bG9hZFBlbmRpbmdJbWFnZSk6CisgICAgICAgICogY3NzL1N0eWxlUnVsZUltcG9ydC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJ1bGVJbXBvcnQ6OnJlcXVlc3RTdHlsZVNoZWV0
KToKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTU1ZHRG9jdW1lbnRWYWx1ZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpXZWJLaXRDU1NTVkdEb2N1bWVudFZhbHVlOjpsb2FkKToKKyAgICAgICAgKiBj
c3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NT
U2hhZGVyVmFsdWU6OmNhY2hlZFNoYWRlcik6CisgICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6cmVxdWVzdFNjcmlwdCk6Cisg
ICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TExpbmtFbGVtZW50Ojpwcm9jZXNzKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9DU1NQcmVsb2Fk
U2Nhbm5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmVsb2FkU2Nhbm5lcjo6ZW1pdFJ1
bGUpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmg6CisgICAgICAg
IChDU1NQcmVsb2FkU2Nhbm5lcik6CisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTFByZWxvYWRT
Y2FubmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByZWxvYWRUYXNrOjpwcmVsb2FkKToKKyAg
ICAgICAgKiBsb2FkZXIvSW1hZ2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VM
b2FkZXI6OnVwZGF0ZUZyb21FbGVtZW50KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OnJlcXVlc3RJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRl
cjo6cmVxdWVzdFJlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9h
ZGVyOjpkZXRlcm1pbmVSZXZhbGlkYXRpb25Qb2xpY3kpOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cHJlbG9hZCk6CisgICAgICAg
ICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKENhY2hlZFJlc291cmNlTG9hZGVyKToKKyAgICAgICAgKiBsb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJl
c291cmNlUmVxdWVzdDo6Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0KToKKyAgICAgICAgKiBsb2FkZXIv
Y2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Lmg6CisgICAgICAgIChDYWNoZWRSZXNvdXJjZVJl
cXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpkZWZlcik6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldERlZmVyKToKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5jcHA6
IFJlbW92ZWQuCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdElu
aXRpYXRvcnMuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9JY29uTG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Okljb25Mb2FkZXI6OnN0YXJ0TG9hZGluZyk6CisgICAgICAg
ICogcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUaHJl
YWRHbG9iYWxEYXRhOjpUaHJlYWRHbG9iYWxEYXRhKToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaHJl
YWRHbG9iYWxEYXRhLmg6CisgICAgICAgIChUaHJlYWRHbG9iYWxEYXRhKToKKyAgICAgICAgKiBz
dmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRkVJbWFnZUVs
ZW1lbnQ6OnJlcXVlc3RJbWFnZVJlc291cmNlKToKKyAgICAgICAgKiBzdmcvU1ZHRm9udEZhY2VV
cmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZvbnRGYWNlVXJpRWxlbWVudDo6
bG9hZEZvbnQpOgorICAgICAgICAqIHN2Zy9TVkdVc2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNWR1VzZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorCiAyMDEyLTExLTEz
ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggMzA3MDcyYmY3ZTQzOGM4YzM4NmI0ODhiZTUxOTVmOGFj
Mzk2NDhhMi4uZGIwZmE0OTkyM2IzZjNkZGQ3MzM2YmI4ZmU4MzdmODI2OWI3ZDU1NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKQEAgLTE2ODEsNyArMTY4MSw2IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMK
ICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VIYW5kbGUuY3BwCiAgICAgbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZVJlcXVlc3QuY3BwCi0gICAgbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdElu
aXRpYXRvcnMuY3BwCiAgICAgbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1
bWVudC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0g
Yi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IGVkYmIxNTU2YzFhN2Y3
NzZiZjYzNjFjZjIxZjRmMDBjOGM3MDFlYTAuLjI0NGMwZjc0NTgwZDdmMTU5YzBlMDI1ZTg4NGVi
NWMwMTY1ODQzMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3Qu
YW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMzgyNCw4ICsz
ODI0LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCBcCi0JU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIFwKIAlTb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU2hhZGVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCAwOThmMGMyNmYwMzg3YzFiOWI4
MWQ3OGQ4ZjYxZGM0OWVmMGVlMTlkLi41ZGQ4MWVkMmY4Nzk3OTAxOTJkZjdiOTE4MWJlZjczY2Qz
OGRjNmZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTgyMiw3ICs4MjIsNiBAQCBTT1VSQ0VTICs9IFwKICAg
ICBsb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRSZXN1bHRDYWNoZS5jcHAgXAogICAgIGxvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAgXAogICAgIGxvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZVJlcXVlc3QuY3BwIFwKLSAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0SW5pdGlhdG9ycy5jcHAgXAogICAgIGxvYWRlci9Eb2N1bWVudExvYWRUaW1pbmcuY3Bw
IFwKICAgICBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIFwKICAgICBsb2FkZXIvRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyLmNwcCBcCkBAIC0xOTU1LDggKzE5NTQsNiBAQCBIRUFERVJTICs9IFwK
ICAgICBsb2FkZXIvQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmggXAogICAgIGxvYWRlci9Dcm9z
c09yaWdpblByZWZsaWdodFJlc3VsdENhY2hlLmggXAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5oIFwKLSAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
LmggXAotICAgIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmgg
XAogICAgIGxvYWRlci9Eb2N1bWVudExvYWRlci5oIFwKICAgICBsb2FkZXIvRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyLmggXAogICAgIGxvYWRlci9Gb3JtU3RhdGUuaCBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkK
aW5kZXggOWVlYzNiOWU1ODBhMTQ4ZjFjMzJkOWVmYTdjNzMyZjE0MDVkNWI0MC4uY2EyOTY4MThm
ZDNjYmJhOWVmYTc0YTVlMWQyMjZmNjhjMzUwNTAyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMjA5
LDcgKzIwOSw2IEBACiAgICAgICAgICAgICAnbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlSGFu
ZGxlLmgnLAogICAgICAgICAgICAgJ2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5o
JywKICAgICAgICAgICAgICdsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgnLAot
ICAgICAgICAgICAgJ2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmgnLAogICAgICAgICAgICAgJ2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuaCcsCiAgICAgICAg
ICAgICAnbG9hZGVyL2NhY2hlL0NhY2hlZFN0eWxlU2hlZXRDbGllbnQuaCcsCiAgICAgICAgICAg
ICAnbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hlLmgnLApAQCAtMzAyOCw3ICszMDI3LDYgQEAKICAg
ICAgICAgICAgICdsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VIYW5kbGUuY3BwJywKICAgICAg
ICAgICAgICdsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwJywKICAgICAgICAg
ICAgICdsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCcsCi0gICAgICAgICAg
ICAnbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwJywKICAg
ICAgICAgICAgICdsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcCcsCiAgICAgICAgICAgICAn
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oJywKICAgICAgICAgICAgICdsb2FkZXIvY2FjaGUv
Q2FjaGVkU2hhZGVyLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNv
cmUudmNwcm9qCmluZGV4IDRlYWMzMmMzMmUxNGFiMDM3MTQ1NDhkYWI5ZGFiOGU2YTIxZWJmNDUu
Ljc3Yzg1ZTUxMjM0MDFlN2U4ODNiNGVkMDJkYjk2MTU0Y2I5YzhhNTMgMTAwNzU1Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0yODE3MCwxNCArMjgxNzAs
NiBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCi0JCQkJCVJlbGF0aXZlUGF0aD0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwIgotCQkJ
CQk+Ci0JCQkJPC9GaWxlPgotCQkJCTxGaWxlCi0JCQkJCVJlbGF0aXZlUGF0aD0iLi5cbG9hZGVy
XGNhY2hlXENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKLQkJCQkJPgotCQkJCTwv
RmlsZT4KLQkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGxvYWRlclxjYWNoZVxDYWNo
ZWRTY3JpcHQuY3BwIgogCQkJCQk+CiAJCQkJPC9GaWxlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGRiNGY3MGZjNTNiZDc0MWE4
MWY1MzFjZTc2M2ZhNDUxMjRlN2IzYTMuLmI1MDFlOWI3OWY3OTA1YzM3Mzg4N2Q0M2U2NjZmZmZi
ZWY4NjhkNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTE4MzksOCArMTgzOSw2IEBACiAJCTY1RTBFOTQ0MTEzM0M4OUYwMEI0
Q0IxMCAvKiBKU0RPTVdyYXBwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDY1RTBFOTQzMTEzM0M4OUYwMEI0Q0IxMCAvKiBKU0RPTVdyYXBwZXIuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk2NUZFQTg2
OTA5ODMzQURFMDBCRUQ0QUIgLyogUGFnZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA2NUZFQTg2ODA5ODMzQURFMDBCRUQ0QUIgLyogUGFnZS5jcHAg
Ki87IH07CiAJCTZCMzQ4MDk0MEVFRjUwRDQwMEFDMUI0MSAvKiBOYXRpdmVJbWFnZVB0ci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkIzNDgwOTIwRUVG
NTBENDAwQUMxQjQxIC8qIE5hdGl2ZUltYWdlUHRyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJNkM2Mzg4OTVBOTZDQ0VFNTBDOEM5NDZDIC8qIENh
Y2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZDNjM4ODkzQTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRS
ZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKLQkJNkM2Mzg4OTZBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJl
c291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNkM2Mzg4OTRBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJlc291
cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwICovOyB9OwogCQk2RTIxQzZDMDExMjYzMzg1MDBBN0JF
MDIgLyogR3JhcGhpY3NDb250ZXh0M0QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNkUyMUM2QkYxMTI2MzM4NTAwQTdCRTAyIC8qIEdyYXBoaWNzQ29u
dGV4dDNELmNwcCAqLzsgfTsKIAkJNkUyMUM2QzIxMTI2MzM5OTAwQTdCRTAyIC8qIEdyYXBoaWNz
Q29udGV4dDNEQ0cuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNkUyMUM2QzExMTI2MzM5OTAwQTdCRTAyIC8qIEdyYXBoaWNzQ29udGV4dDNEQ0cuY3Bw
ICovOyB9OwogCQk2RTNGQUQzODE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlUzNUQy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2RTNGQUQzNjE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJl
UzNUQy5jcHAgKi87IH07CkBAIC05MDc4LDggKzkwNzYsNiBAQAogCQk2NUY4MDY5NzA1NEQ5Rjg2
MDA4QkY3NzYgLyogQmxvY2tFeGNlcHRpb25zLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmxvY2tFeGNlcHRpb25zLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKIAkJNjVG
RUE4NjgwOTgzM0FERTAwQkVENEFCIC8qIFBhZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFBhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2
QjM0ODA5MjBFRUY1MEQ0MDBBQzFCNDEgLyogTmF0aXZlSW1hZ2VQdHIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdGl2ZUltYWdlUHRyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTZDNjM4ODkzQTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJl
cXVlc3RJbml0aWF0b3JzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmg7IHBhdGggPSBDYWNoZWRSZXNvdXJjZVJlcXVl
c3RJbml0aWF0b3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTZDNjM4ODk0QTk2
Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJ
bml0aWF0b3JzLmNwcDsgcGF0aCA9IENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTIxQzZCRjExMjYzMzg1MDBBN0JFMDIg
LyogR3JhcGhpY3NDb250ZXh0M0QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gR3JhcGhpY3NDb250ZXh0M0QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk2RTIxQzZDMTExMjYzMzk5MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0M0RDRy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHQzRENHLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUzRkFEMzYxNDczM0Y0MDAwRTQyMzA2
IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTI2Myw4ICsxOTI1OSw2IEBACiAJCQkJQkNCMTZD
MTEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFJlc291cmNlTG9hZGVyLmggKi8sCiAJCQkJNTA4
MUUzREYzQ0ZDODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgKi8sCiAJ
CQkJNTA4MUUzRTEzRDAyODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5oICov
LAotCQkJCTZDNjM4ODk0QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJ
bml0aWF0b3JzLmNwcCAvKiwKLQkJCQk2QzYzODg5M0E5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIC8qLAogCQkJCUJDQjE2QzBBMDk3OUMzQkQwMDQ2
Nzc0MSAvKiBDYWNoZWRTY3JpcHQuY3BwICovLAogCQkJCUJDQjE2QzBCMDk3OUMzQkQwMDQ2Nzc0
MSAvKiBDYWNoZWRTY3JpcHQuaCAqLywKIAkJCQk1MDM4QkUzRTE0NzJBRDk4MDA5NUUwRDEgLyog
Q2FjaGVkU2hhZGVyLmNwcCAqLywKQEAgLTIyNTc2LDcgKzIyNTcwLDYgQEAKIAkJCQlFNDdCNEJF
ODBFNzEyNDE2MDAwMzg4NTQgLyogQ2FjaGVkUmVzb3VyY2VIYW5kbGUuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDQjE2QzJBMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRSZXNvdXJjZUxvYWRlci5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNTA4MUUzRTAzQ0ZGODBDMTZFRjhCNDhCIC8qIENhY2hlZFJl
c291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNkM2Mzg4OTVBOTZDQ0VFNTBDOEM5
NDZDIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDQjE2QzI0MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRTY3JpcHQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDRDUzMzY0MEVENjg0ODkwMDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQ
cm92aWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTAzOEJFNDExNDcyQUQ5ODAwOTVFMEQxIC8q
IENhY2hlZFNoYWRlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjE3Myw3ICsyNjE2Niw2IEBACiAJ
CQkJRTQ3QjRCRTkwRTcxMjQxNjAwMDM4ODU0IC8qIENhY2hlZFJlc291cmNlSGFuZGxlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUJDQjE2QzI5MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRSZXNv
dXJjZUxvYWRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MDgxRTNDMzNDRTU4MEMxNkVGOEI0
OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTZDNjM4
ODk2QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzIzMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRT
Y3JpcHQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTAzOEJFNDAxNDcyQUQ5ODAwOTVFMEQxIC8q
IENhY2hlZFNoYWRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTA0RjI0MzE0QzcxRjdBMDA5
RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5jcHAKaW5kZXggZWVmMGE0NzhiZGEwYjY5YTQ3
MmQwN2I4YzgyNGY4MzM5ZDlmYjcxYi4uMGZhYTgxM2IxZWJlMTI3ZjI1YzNiNmM1NjQ3NTc2YjU1
N2JmZjRiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdlVmFs
dWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDdXJzb3JJbWFnZVZhbHVlLmNwcApA
QCAtMTM1LDcgKzEzNSw3IEBAIFN0eWxlQ2FjaGVkSW1hZ2UqIENTU0N1cnNvckltYWdlVmFsdWU6
OmNhY2hlZEltYWdlKENhY2hlZFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCiAgICAgaWYgKGlzU1ZH
Q3Vyc29ySWRlbnRpZmllcih1cmwoKSkgJiYgbG9hZGVyICYmIGxvYWRlci0+ZG9jdW1lbnQoKSkg
ewogICAgICAgICAvLyBGSVhNRTogVGhpcyB3aWxsIGZhaWwgaWYgdGhlIDxjdXJzb3I+IGVsZW1l
bnQgaXMgaW4gYSBzaGFkb3cgRE9NIChidWcgNTk4MjcpCiAgICAgICAgIGlmIChTVkdDdXJzb3JF
bGVtZW50KiBjdXJzb3JFbGVtZW50ID0gcmVzb3VyY2VSZWZlcmVuY2VkQnlDdXJzb3JFbGVtZW50
KHVybCgpLCBsb2FkZXItPmRvY3VtZW50KCkpKQotICAgICAgICAgICAgcmV0dXJuIENTU0ltYWdl
VmFsdWU6OmNhY2hlZEltYWdlKGxvYWRlciwgY3Vyc29yRWxlbWVudC0+aHJlZigpLCBjdXJzb3JF
bGVtZW50KTsKKyAgICAgICAgICAgIHJldHVybiBDU1NJbWFnZVZhbHVlOjpjYWNoZWRJbWFnZShs
b2FkZXIsIGN1cnNvckVsZW1lbnQtPmhyZWYoKSk7CiAgICAgfQogI2VuZGlmCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmNwcAppbmRleCAwNzc4MmFjMjE5ZDI2MTU0
MzQ2NmI1OTNiOGE2OWY3NjI2NTkyZDNkLi4zNjkwNzg5MzM2ZDBiODQ0ODE1MjczYjAxMzIyNWY2
OWRhYWQ2ODdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTcmNW
YWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU3JjVmFsdWUuY3Bw
CkBAIC0yOCw3ICsyOCw2IEBACiAjaW5jbHVkZSAiQ2FjaGVkRm9udC5oIgogI2luY2x1ZGUgIkNh
Y2hlZFJlc291cmNlTG9hZGVyLmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Lmgi
Ci0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIgogI2luY2x1ZGUg
IkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIgogI2luY2x1
ZGUgIk5vZGUuaCIKQEAgLTk4LDcgKzk3LDYgQEAgQ2FjaGVkRm9udCogQ1NTRm9udEZhY2VTcmNW
YWx1ZTo6Y2FjaGVkRm9udChEb2N1bWVudCogZG9jdW1lbnQpCiB7CiAgICAgaWYgKCFtX2NhY2hl
ZEZvbnQpIHsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VS
ZXF1ZXN0KGRvY3VtZW50LT5jb21wbGV0ZVVSTChtX3Jlc291cmNlKSkpOwotICAgICAgICByZXF1
ZXN0LnNldEluaXRpYXRvcihjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzKCkuY3NzLCBk
b2N1bWVudCk7CiAgICAgICAgIG1fY2FjaGVkRm9udCA9IGRvY3VtZW50LT5jYWNoZWRSZXNvdXJj
ZUxvYWRlcigpLT5yZXF1ZXN0Rm9udChyZXF1ZXN0KTsKICAgICB9CiAgICAgcmV0dXJuIG1fY2Fj
aGVkRm9udC5nZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVNl
dFZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAppbmRl
eCBlYmM3NGM3MTdkZDRjMjQyYTMzMjM1YmMxNGZlNWFhOThjNTkzYTdjLi5mN2Q0MDFmNWNmNjc0
OTAyMTg4NjAzZDIwOGRlMmQ2M2I5YzZjYWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdl
U2V0VmFsdWUuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIK
ICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUxvYWRlci5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291
cmNlUmVxdWVzdC5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMu
aCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJT
dHlsZUNhY2hlZEltYWdlU2V0LmgiCkBAIC0xMTEsNyArMTEwLDYgQEAgU3R5bGVDYWNoZWRJbWFn
ZVNldCogQ1NTSW1hZ2VTZXRWYWx1ZTo6Y2FjaGVkSW1hZ2VTZXQoQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIqIGxvYWQKICAgICAgICAgLy8gYW5kIGFueSBDU1MgdHJhbnNmb3Jtcy4gaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxNjk4CiAgICAgICAgIEltYWdlV2l0aFNjYWxl
IGltYWdlID0gYmVzdEltYWdlRm9yU2NhbGVGYWN0b3IoKTsKICAgICAgICAgQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGxvYWRlci0+ZG9jdW1lbnQoKS0+Y29t
cGxldGVVUkwoaW1hZ2UuaW1hZ2VVUkwpKSk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9y
KGNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMoKS5jc3MsIGRvY3VtZW50KTsKICAgICAg
ICAgaWYgKENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZEltYWdlPiBjYWNoZWRJbWFnZSA9IGxv
YWRlci0+cmVxdWVzdEltYWdlKHJlcXVlc3QpKSB7CiAgICAgICAgICAgICBtX2ltYWdlU2V0ID0g
U3R5bGVDYWNoZWRJbWFnZVNldDo6Y3JlYXRlKGNhY2hlZEltYWdlLmdldCgpLCBpbWFnZS5zY2Fs
ZUZhY3RvciwgdGhpcyk7CiAgICAgICAgICAgICBtX2FjY2Vzc2VkQmVzdEZpdEltYWdlID0gdHJ1
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmNwcAppbmRleCA5NTdhMjIxM2NkZDFkMmYx
MzNjYzA3Y2M0MzI5MDFiYmVhNmUzYTVlLi42YjczZDQ2MzFhMGYwMDI0ZjJlYzZmM2M2NDg1ODE2
NDk4NDEwNGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUuY3BwCkBAIC0yNyw5ICsy
Nyw3IEBACiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJj
ZUxvYWRlci5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdC5oIgotI2luY2x1ZGUg
IkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKICNpbmNsdWRlICJEb2N1bWVudC5o
IgotI2luY2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1
ZGUgIlN0eWxlQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJTdHlsZVBlbmRpbmdJbWFnZS5oIgpA
QCAtNzEsMTQgKzY5LDE0IEBAIFN0eWxlSW1hZ2UqIENTU0ltYWdlVmFsdWU6OmNhY2hlZE9yUGVu
ZGluZ0ltYWdlKCkKICAgICByZXR1cm4gbV9pbWFnZS5nZXQoKTsKIH0KIAotU3R5bGVDYWNoZWRJ
bWFnZSogQ1NTSW1hZ2VWYWx1ZTo6Y2FjaGVkSW1hZ2UoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGxv
YWRlciwgRWxlbWVudCogaW5pdGlhdG9yRWxlbWVudCkKK1N0eWxlQ2FjaGVkSW1hZ2UqIENTU0lt
YWdlVmFsdWU6OmNhY2hlZEltYWdlKENhY2hlZFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCiB7CiAg
ICAgaWYgKGlzQ3Vyc29ySW1hZ2VWYWx1ZSgpKQogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8
Q1NTQ3Vyc29ySW1hZ2VWYWx1ZSo+KHRoaXMpLT5jYWNoZWRJbWFnZShsb2FkZXIpOwotICAgIHJl
dHVybiBjYWNoZWRJbWFnZShsb2FkZXIsIG1fdXJsLCBpbml0aWF0b3JFbGVtZW50KTsKKyAgICBy
ZXR1cm4gY2FjaGVkSW1hZ2UobG9hZGVyLCBtX3VybCk7CiB9CiAKLVN0eWxlQ2FjaGVkSW1hZ2Uq
IENTU0ltYWdlVmFsdWU6OmNhY2hlZEltYWdlKENhY2hlZFJlc291cmNlTG9hZGVyKiBsb2FkZXIs
IGNvbnN0IFN0cmluZyYgdXJsLCBFbGVtZW50KiBpbml0aWF0b3JFbGVtZW50KQorU3R5bGVDYWNo
ZWRJbWFnZSogQ1NTSW1hZ2VWYWx1ZTo6Y2FjaGVkSW1hZ2UoQ2FjaGVkUmVzb3VyY2VMb2FkZXIq
IGxvYWRlciwgY29uc3QgU3RyaW5nJiB1cmwpCiB7CiAgICAgQVNTRVJUKGxvYWRlcik7CiAKQEAg
LTg2LDEwICs4NCw2IEBAIFN0eWxlQ2FjaGVkSW1hZ2UqIENTU0ltYWdlVmFsdWU6OmNhY2hlZElt
YWdlKENhY2hlZFJlc291cmNlTG9hZGVyKiBsb2FkZXIsIGNvbnN0CiAgICAgICAgIG1fYWNjZXNz
ZWRJbWFnZSA9IHRydWU7CiAKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qo
UmVzb3VyY2VSZXF1ZXN0KGxvYWRlci0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKSkpOwot
ICAgICAgICBpZiAoaW5pdGlhdG9yRWxlbWVudCkKLSAgICAgICAgICAgIHJlcXVlc3Quc2V0SW5p
dGlhdG9yKGluaXRpYXRvckVsZW1lbnQpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXF1
ZXN0LnNldEluaXRpYXRvcihjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzKCkuY3NzLCBs
b2FkZXItPmRvY3VtZW50KCkpOwogICAgICAgICBpZiAoQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2Fj
aGVkSW1hZ2U+IGNhY2hlZEltYWdlID0gbG9hZGVyLT5yZXF1ZXN0SW1hZ2UocmVxdWVzdCkpCiAg
ICAgICAgICAgICBtX2ltYWdlID0gU3R5bGVDYWNoZWRJbWFnZTo6Y3JlYXRlKGNhY2hlZEltYWdl
LmdldCgpKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VW
YWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUuaAppbmRleCA1Y2Y1YTFm
NTlkNTY2MmFmOTE3NjAwYjhjZDIzZjdjMjc5MTA1MmU4Li44YzgyZjJjNjdkYjQzM2E3NTE3MzNj
OTY3MWRlOWI5MTUxZTdhOThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1h
Z2VWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmgKQEAgLTI3
LDcgKzI3LDYgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ2FjaGVkUmVzb3VyY2VM
b2FkZXI7Ci1jbGFzcyBFbGVtZW50OwogY2xhc3MgU3R5bGVDYWNoZWRJbWFnZTsKIGNsYXNzIFN0
eWxlSW1hZ2U7CiAKQEAgLTM3LDcgKzM2LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVm
UHRyPENTU0ltYWdlVmFsdWU+IGNyZWF0ZShjb25zdCBTdHJpbmcmIHVybCwgU3R5bGVJbWFnZSog
aW1hZ2UpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBDU1NJbWFnZVZhbHVlKHVybCwgaW1hZ2UpKTsg
fQogICAgIH5DU1NJbWFnZVZhbHVlKCk7CiAKLSAgICBTdHlsZUNhY2hlZEltYWdlKiBjYWNoZWRJ
bWFnZShDYWNoZWRSZXNvdXJjZUxvYWRlciosIEVsZW1lbnQqIGluaXRpYXRvckVsZW1lbnQgPSAw
KTsKKyAgICBTdHlsZUNhY2hlZEltYWdlKiBjYWNoZWRJbWFnZShDYWNoZWRSZXNvdXJjZUxvYWRl
ciopOwogICAgIC8vIFJldHVybnMgYSBTdHlsZUNhY2hlZEltYWdlIGlmIHRoZSBpbWFnZSBpcyBj
YWNoZWQgYWxyZWFkeSwgb3RoZXJ3aXNlIGEgU3R5bGVQZW5kaW5nSW1hZ2UuCiAgICAgU3R5bGVJ
bWFnZSogY2FjaGVkT3JQZW5kaW5nSW1hZ2UoKTsKIApAQCAtNTQsNyArNTMsNyBAQCBwdWJsaWM6
CiBwcm90ZWN0ZWQ6CiAgICAgQ1NTSW1hZ2VWYWx1ZShDbGFzc1R5cGUsIGNvbnN0IFN0cmluZyYg
dXJsKTsKIAotICAgIFN0eWxlQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlKENhY2hlZFJlc291cmNl
TG9hZGVyKiwgY29uc3QgU3RyaW5nJiB1cmwsIEVsZW1lbnQqIGluaXRpYXRvckVsZW1lbnQgPSAw
KTsKKyAgICBTdHlsZUNhY2hlZEltYWdlKiBjYWNoZWRJbWFnZShDYWNoZWRSZXNvdXJjZUxvYWRl
ciosIGNvbnN0IFN0cmluZyYgdXJsKTsKICAgICBTdHJpbmcgY2FjaGVkSW1hZ2VVUkwoKTsKICAg
ICB2b2lkIGNsZWFyQ2FjaGVkSW1hZ2UoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIu
Y3BwCmluZGV4IGNlNGFjZDMwYmQzZWVmNjQzYWZlMDYyZTFkZTA2NzIzNjQyMTQ4NGMuLmNlYjJl
YjgxMjU1NmVkY2JkM2E0ODVlNTQ1ZGMyZjY0MGZlZTQyYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVSZXNvbHZlci5jcHAKQEAgLTUwNTMsNyArNTA1Myw3IEBAIFBhc3NSZWZQdHI8U3R5bGVJbWFn
ZT4gU3R5bGVSZXNvbHZlcjo6bG9hZFBlbmRpbmdJbWFnZShTdHlsZVBlbmRpbmdJbWFnZSogcGVu
ZGluCiAKICAgICBpZiAocGVuZGluZ0ltYWdlLT5jc3NJbWFnZVZhbHVlKCkpIHsKICAgICAgICAg
Q1NTSW1hZ2VWYWx1ZSogaW1hZ2VWYWx1ZSA9IHBlbmRpbmdJbWFnZS0+Y3NzSW1hZ2VWYWx1ZSgp
OwotICAgICAgICByZXR1cm4gaW1hZ2VWYWx1ZS0+Y2FjaGVkSW1hZ2UoY2FjaGVkUmVzb3VyY2VM
b2FkZXIsIG1fZWxlbWVudCk7CisgICAgICAgIHJldHVybiBpbWFnZVZhbHVlLT5jYWNoZWRJbWFn
ZShjYWNoZWRSZXNvdXJjZUxvYWRlcik7CiAgICAgfQogCiAgICAgaWYgKHBlbmRpbmdJbWFnZS0+
Y3NzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVSdWxlSW1wb3J0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGVJbXBv
cnQuY3BwCmluZGV4IDMxNDZlYzNjZDBhNDBkOWRhN2E3YWZkY2VhMjFiNzUzZTZiMWU3NjQuLmVl
YzM1MDc3MWM0Nzk0MmU4NjU3NzMwN2VjMjQwMzJkMjZjMDRmODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGVJbXBvcnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVJ1bGVJbXBvcnQuY3BwCkBAIC0yNiw3ICsyNiw2IEBACiAjaW5jbHVkZSAiQ2FjaGVk
Q1NTU3R5bGVTaGVldC5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgiCiAjaW5j
bHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0SW5pdGlhdG9ycy5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiU2Vj
dXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTdHlsZVNoZWV0Q29udGVudHMuaCIKQEAgLTExOCw3
ICsxMTcsNiBAQCB2b2lkIFN0eWxlUnVsZUltcG9ydDo6cmVxdWVzdFN0eWxlU2hlZXQoKQogICAg
IH0KIAogICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChh
YnNVUkwpLCBtX3BhcmVudFN0eWxlU2hlZXQtPmNoYXJzZXQoKSk7Ci0gICAgcmVxdWVzdC5zZXRJ
bml0aWF0b3IoY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycygpLmNzcywgZG9jdW1lbnQp
OwogICAgIGlmIChtX3BhcmVudFN0eWxlU2hlZXQtPmlzVXNlclN0eWxlU2hlZXQoKSkKICAgICAg
ICAgbV9jYWNoZWRTaGVldCA9IGNhY2hlZFJlc291cmNlTG9hZGVyLT5yZXF1ZXN0VXNlckNTU1N0
eWxlU2hlZXQocmVxdWVzdCk7CiAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU1NWR0RvY3VtZW50VmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU1NWR0RvY3VtZW50VmFsdWUuY3BwCmluZGV4IDZmZTk0OGQ0YTdlNTE2YzAzNjA4Mzdk
NDM0YTZlMjdhYjA0NjQ5NWYuLjY3ZTg0ZTNjOWI5ODNhYmIwODI0MTIwNzU5ZTM4ODgwNTNjZmM4
YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NTVkdEb2N1bWVudFZh
bHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU1ZHRG9jdW1lbnRWYWx1
ZS5jcHAKQEAgLTMwLDcgKzMwLDYgQEAKICNpbmNsdWRlICJDU1NQYXJzZXIuaCIKICNpbmNsdWRl
ICJDYWNoZWRSZXNvdXJjZUxvYWRlci5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVz
dC5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKICNpbmNs
dWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIldlYkNvcmVNZW1vcnlJbnN0cnVtZW50YXRpb24u
aCIKIApAQCAtNTUsNyArNTQsNiBAQCBDYWNoZWRTVkdEb2N1bWVudCogV2ViS2l0Q1NTU1ZHRG9j
dW1lbnRWYWx1ZTo6bG9hZChDYWNoZWRSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgICAgICBt
X2xvYWRSZXF1ZXN0ZWQgPSB0cnVlOwogCiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCBy
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdChsb2FkZXItPmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKG1f
dXJsKSkpOwotICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihjYWNoZWRSZXNvdXJjZVJlcXVl
c3RJbml0aWF0b3JzKCkuY3NzLCBsb2FkZXItPmRvY3VtZW50KCkpOwogICAgICAgICBtX2RvY3Vt
ZW50ID0gbG9hZGVyLT5yZXF1ZXN0U1ZHRG9jdW1lbnQocmVxdWVzdCk7CiAgICAgfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcAppbmRleCAzNTE4N2Y4MjA0
MGUxNjAzMzY5ZDZhMmRiMmNlNWU4ODYxYzM5YzM2Li5mYTA0MTkwYzNkYzhlM2FkYjQzMWFiMDNh
OGZkMWExZTE4MDA0YmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
U2hhZGVyVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJW
YWx1ZS5jcHAKQEAgLTM1LDcgKzM1LDYgQEAKICNpbmNsdWRlICJDU1NQYXJzZXIuaCIKICNpbmNs
dWRlICJDYWNoZWRSZXNvdXJjZUxvYWRlci5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVx
dWVzdC5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKICNp
bmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIlN0eWxlQ2FjaGVkU2hhZGVyLmgiCiAjaW5j
bHVkZSAiU3R5bGVQZW5kaW5nU2hhZGVyLmgiCkBAIC02Miw3ICs2MSw2IEBAIFN0eWxlQ2FjaGVk
U2hhZGVyKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y2FjaGVkU2hhZGVyKENhY2hlZFJlc291cmNl
TG9hZGVyKiBsb2FkCiAgICAgICAgIG1fYWNjZXNzZWRTaGFkZXIgPSB0cnVlOwogCiAgICAgICAg
IENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChsb2FkZXItPmRv
Y3VtZW50KCktPmNvbXBsZXRlVVJMKG1fdXJsKSkpOwotICAgICAgICByZXF1ZXN0LnNldEluaXRp
YXRvcihjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzKCkuY3NzLCBsb2FkZXItPmRvY3Vt
ZW50KCkpOwogICAgICAgICBpZiAoQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBj
YWNoZWRTaGFkZXIgPSBsb2FkZXItPnJlcXVlc3RTaGFkZXIocmVxdWVzdCkpCiAgICAgICAgICAg
ICBtX3NoYWRlciA9IFN0eWxlQ2FjaGVkU2hhZGVyOjpjcmVhdGUoY2FjaGVkU2hhZGVyLmdldCgp
KTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggNGZhNTU5ZThm
YjgyYjVjZDI4NDdiM2RhMDIwNzkzNmE1MTcxNTcxZi4uY2ZkZDFhNDM2OTgwZDFiMDAyNjJjMTE4
Y2MyNjlmNzNjMmNjMzIyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcApAQCAt
MjY2LDcgKzI2Niw2IEBAIGJvb2wgU2NyaXB0RWxlbWVudDo6cmVxdWVzdFNjcmlwdChjb25zdCBT
dHJpbmcmIHNvdXJjZVVybCkKICAgICAgICAgICAgIHVwZGF0ZVJlcXVlc3RGb3JBY2Nlc3NDb250
cm9sKHJlcXVlc3QubXV0YWJsZVJlc291cmNlUmVxdWVzdCgpLCBtX2VsZW1lbnQtPmRvY3VtZW50
KCktPnNlY3VyaXR5T3JpZ2luKCksIGFsbG93Q3JlZGVudGlhbHMpOwogICAgICAgICB9CiAgICAg
ICAgIHJlcXVlc3Quc2V0Q2hhcnNldChzY3JpcHRDaGFyc2V0KCkpOwotICAgICAgICByZXF1ZXN0
LnNldEluaXRpYXRvcihlbGVtZW50KCkpOwogCiAgICAgICAgIG1fY2FjaGVkU2NyaXB0ID0gbV9l
bGVtZW50LT5kb2N1bWVudCgpLT5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLT5yZXF1ZXN0U2NyaXB0
KHJlcXVlc3QpOwogICAgICAgICBtX2lzRXh0ZXJuYWxTY3JpcHQgPSB0cnVlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwCmluZGV4IDRhM2RjZmM0YWNmZjhmYWJjYzRhYTZi
ZDg3NmJjZTQyOGQ4ZTQ0ZmQuLjdjOTZiMTliMTM4NzgxOWUyMDJmNTQ4OWUyYzYyMDliM2Y0NGI0
MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTIyMiw3ICsy
MjIsNiBAQCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAgIC8vIExvYWQg
c3R5bGVzaGVldHMgdGhhdCBhcmUgbm90IG5lZWRlZCBmb3IgdGhlIHJlbmRlcmluZyBpbW1lZGlh
dGVseSB3aXRoIGxvdyBwcmlvcml0eS4KICAgICAgICAgUmVzb3VyY2VMb2FkUHJpb3JpdHkgcHJp
b3JpdHkgPSBibG9ja2luZyA/IFJlc291cmNlTG9hZFByaW9yaXR5VW5yZXNvbHZlZCA6IFJlc291
cmNlTG9hZFByaW9yaXR5VmVyeUxvdzsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJl
cXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50KCktPmNvbXBsZXRlVVJMKG1fdXJsKSksIGNo
YXJzZXQsIHByaW9yaXR5KTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CiAg
ICAgICAgIG1fY2FjaGVkU2hlZXQgPSBkb2N1bWVudCgpLT5jYWNoZWRSZXNvdXJjZUxvYWRlcigp
LT5yZXF1ZXN0Q1NTU3R5bGVTaGVldChyZXF1ZXN0KTsKICAgICAgICAgCiAgICAgICAgIGlmICht
X2NhY2hlZFNoZWV0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NT
UHJlbG9hZFNjYW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NTUHJlbG9h
ZFNjYW5uZXIuY3BwCmluZGV4IDE1MGNlOGExMGFmYjkyZTk2ODNjYTFlZTEwMzU5MTQyY2I0Y2Q2
ZmQuLjI5ZjFjY2Q0NjhiYWRkOGRlNWMzYjE5ZTcyZjJkODUyY2QzMDA4OTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9DU1NQcmVsb2FkU2Nhbm5lci5jcHAKQEAgLTMwLDgg
KzMwLDYgQEAKIAogI2luY2x1ZGUgIkNhY2hlZENTU1N0eWxlU2hlZXQuaCIKICNpbmNsdWRlICJD
YWNoZWRSZXNvdXJjZUxvYWRlci5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdC5o
IgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKICNpbmNsdWRl
ICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxQYXJzZXJJZGlvbXMuaCIKICNpbmNsdWRlICJI
VE1MVG9rZW4uaCIKQEAgLTE5OCw4ICsxOTYsNyBAQCB2b2lkIENTU1ByZWxvYWRTY2FubmVyOjpl
bWl0UnVsZSgpCiAgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKCJpbXBvcnQiLCBtX3J1bGUuY2hh
cmFjdGVycygpLCBtX3J1bGUubGVuZ3RoKCkpKSB7CiAgICAgICAgIFN0cmluZyB2YWx1ZSA9IHBh
cnNlQ1NTU3RyaW5nT3JVUkwobV9ydWxlVmFsdWUuY2hhcmFjdGVycygpLCBtX3J1bGVWYWx1ZS5s
ZW5ndGgoKSk7CiAgICAgICAgIGlmICghdmFsdWUuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICBD
YWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJlcXVlc3QobV9kb2N1bWVudC0+
Y29tcGxldGVVUkwodmFsdWUpKSk7Ci0gICAgICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihj
YWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzKCkuY3NzLCBtX2RvY3VtZW50KTsKKyAgICAg
ICAgICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KG1fZG9jdW1lbnQtPmNvbXBsZXRlVVJMKHZh
bHVlKSk7CiAgICAgICAgICAgICBtX2RvY3VtZW50LT5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLT5w
cmVsb2FkKENhY2hlZFJlc291cmNlOjpDU1NTdHlsZVNoZWV0LCByZXF1ZXN0LCBTdHJpbmcoKSwg
bV9zY2FubmluZ0JvZHkpOwogICAgICAgICB9CiAgICAgICAgIG1fc3RhdGUgPSBJbml0aWFsOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NTUHJlbG9hZFNjYW5uZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmgKaW5kZXgg
YjE2YTYyOTI1ZTEwNjE1YTkyNDNjOTI0YmNlZTdhMGNjMGQxZDMyMi4uYzNkYmI4MDBlZGQ4ZWEx
MGFiMjRlYjNjMTIzYjdjYTk4ZjJjYjQyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9wYXJzZXIvQ1NTUHJlbG9hZFNjYW5uZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3Bh
cnNlci9DU1NQcmVsb2FkU2Nhbm5lci5oCkBAIC0zNyw3ICszNyw3IEBAIGNsYXNzIEhUTUxUb2tl
bjsKIGNsYXNzIENTU1ByZWxvYWRTY2FubmVyIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShD
U1NQcmVsb2FkU2Nhbm5lcik7CiBwdWJsaWM6Ci0gICAgZXhwbGljaXQgQ1NTUHJlbG9hZFNjYW5u
ZXIoRG9jdW1lbnQqKTsKKyAgICBDU1NQcmVsb2FkU2Nhbm5lcihEb2N1bWVudCopOwogCiAgICAg
dm9pZCByZXNldCgpOwogICAgIHZvaWQgc2Nhbihjb25zdCBIVE1MVG9rZW4mLCBib29sIHNjYW5u
aW5nQm9keSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJl
bG9hZFNjYW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFByZWxvYWRT
Y2FubmVyLmNwcAppbmRleCA5NjU0YzhkOGRjMGQ2YTdjZWJjYjE0MmNiM2IxMmQ5ZjJhMjVkMDUw
Li4yMzAzOGJkMGJjZWEwOGQ5ZTI1ZWVjZmNkZjU0YzQ4ZmMxNGIwMzdhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5jcHAKQEAgLTEyNyw4
ICsxMjcsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgQ2FjaGVk
UmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVyID0gZG9jdW1lbnQtPmNhY2hlZFJl
c291cmNlTG9hZGVyKCk7Ci0gICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJl
c291cmNlUmVxdWVzdChkb2N1bWVudC0+Y29tcGxldGVVUkwobV91cmxUb0xvYWQsIGJhc2VVUkwp
KSk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRhZ05hbWUoKSwgZG9jdW1lbnQpOwor
ICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCA9IGRvY3VtZW50LT5jb21wbGV0ZVVSTCht
X3VybFRvTG9hZCwgYmFzZVVSTCk7CiAgICAgICAgIGlmIChtX3RhZ05hbWUgPT0gc2NyaXB0VGFn
KQogICAgICAgICAgICAgY2FjaGVkUmVzb3VyY2VMb2FkZXItPnByZWxvYWQoQ2FjaGVkUmVzb3Vy
Y2U6OlNjcmlwdCwgcmVxdWVzdCwgbV9jaGFyc2V0LCBzY2FubmluZ0JvZHkpOwogICAgICAgICBl
bHNlIGlmIChtX3RhZ05hbWUgPT0gaW1nVGFnIHx8IChtX3RhZ05hbWUgPT0gaW5wdXRUYWcgJiYg
bV9pbnB1dElzSW1hZ2UpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdl
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKaW5kZXgg
ZTIyNDdkMjU0YzdmODYwOWVmNmVhMmE5NzczYjVmOWY3ZDFiNjk1YS4uYzEyYmUyZmY5ZDQ1NTc0
ZTQxZDRmNDcwOGNiOTZiYjRkNWE3ZWM0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ltYWdlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2Fk
ZXIuY3BwCkBAIC0xNzksNyArMTc5LDYgQEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVs
ZW1lbnQoKQogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZEltYWdlPiBuZXdJbWFnZSA9
IDA7CiAgICAgaWYgKCFhdHRyLmlzTnVsbCgpICYmICFzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hU
TUxTcGFjZXMoYXR0cikuaXNFbXB0eSgpKSB7CiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVz
dCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudCgpLT5jb21wbGV0ZVVSTChzb3VyY2VV
UkkoYXR0cikpKSk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKGNsaWVudCgpLT5zb3Vy
Y2VFbGVtZW50KCkpOwogCiAgICAgICAgIFN0cmluZyBjcm9zc09yaWdpbk1vZGUgPSBjbGllbnQo
KS0+c291cmNlRWxlbWVudCgpLT5mYXN0R2V0QXR0cmlidXRlKEhUTUxOYW1lczo6Y3Jvc3Nvcmln
aW5BdHRyKTsKICAgICAgICAgaWYgKCFjcm9zc09yaWdpbk1vZGUuaXNOdWxsKCkpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
CmluZGV4IDgzYTVhMWNlNjc0Y2M3MmM1ZjExMDA5NmNiMzQ4YWIwODI1ZTRkNWYuLmQ0Y2JhMDU5
MTMxOTAwZTE5MGNjZjU4ZTZmZTBkMTZkOGQwNzU1NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApAQCAtMTY0LDcgKzE2
NCw3IEBAIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZEltYWdlPiBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6cmVxdWVzdEltYWdlKENhY2hlZFJlc291CiAgICAgICAgICAgICByZXR1cm4gMDsKICAg
ICAgICAgfQogICAgIH0KLSAgICByZXF1ZXN0LnNldERlZmVyKGNsaWVudERlZmVyc0ltYWdlKHJl
cXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCkpID8gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpE
ZWZlcnJlZEJ5Q2xpZW50IDogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpOb0RlZmVyKTsKKyAgICBy
ZXF1ZXN0LnNldERlZmVyKGNsaWVudERlZmVyc0ltYWdlKHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0
KCkudXJsKCkpID8gRGVmZXJyZWRCeUNsaWVudCA6IE5vRGVmZXIpOwogICAgIHJldHVybiBzdGF0
aWNfY2FzdDxDYWNoZWRJbWFnZSo+KHJlcXVlc3RSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6SW1h
Z2VSZXNvdXJjZSwgcmVxdWVzdCkuZ2V0KCkpOwogfQogCkBAIC00NTgsNyArNDU4LDcgQEAgQ2Fj
aGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IENhY2hlZFJlc291cmNlTG9hZGVyOjpy
ZXF1ZXN0UmVzb3VyY2UoQ2FjaGUKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICByZXNvdXJjZS0+
c2V0TG9hZFByaW9yaXR5KHJlcXVlc3QucHJpb3JpdHkoKSk7Ci0gICAgaWYgKChwb2xpY3kgIT0g
VXNlIHx8IHJlc291cmNlLT5zdGlsbE5lZWRzTG9hZCgpKSAmJiBDYWNoZWRSZXNvdXJjZVJlcXVl
c3Q6Ok5vRGVmZXIgPT0gcmVxdWVzdC5kZWZlcigpKSB7CisgICAgaWYgKChwb2xpY3kgIT0gVXNl
IHx8IHJlc291cmNlLT5zdGlsbE5lZWRzTG9hZCgpKSAmJiBOb0RlZmVyID09IHJlcXVlc3QuZGVm
ZXIoKSkgewogICAgICAgICByZXNvdXJjZS0+bG9hZCh0aGlzLCByZXF1ZXN0Lm9wdGlvbnMoKSk7
CiAKICAgICAgICAgLy8gV2UgZG9uJ3Qgc3VwcG9ydCBpbW1lZGlhdGUgbG9hZHMsIGJ1dCB3ZSBk
byBzdXBwb3J0IGltbWVkaWF0ZSBmYWlsdXJlLgpAQCAtNTEwLDcgKzUxMCw3IEBAIENhY2hlZFJl
c291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJl
c291cmNlKENhY2hlZFJlCiAgICAgcmV0dXJuIHJlc291cmNlOwogfQogCi1DYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6UmV2YWxpZGF0aW9uUG9saWN5IENhY2hlZFJlc291cmNlTG9hZGVyOjpkZXRlcm1p
bmVSZXZhbGlkYXRpb25Qb2xpY3koQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBib29sIGZvclByZWxvYWQsIENhY2hlZFJlc291cmNlKiBleGlzdGlu
Z1Jlc291cmNlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OkRlZmVyT3B0aW9uIGRlZmVyKSBjb25z
dAorQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OlJldmFsaWRhdGlvblBvbGljeSBDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6ZGV0ZXJtaW5lUmV2YWxpZGF0aW9uUG9saWN5KENhY2hlZFJlc291cmNlOjpUeXBl
IHR5cGUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBmb3JQcmVsb2FkLCBDYWNoZWRS
ZXNvdXJjZSogZXhpc3RpbmdSZXNvdXJjZSwgRGVmZXJPcHRpb24gZGVmZXIpIGNvbnN0CiB7CiAg
ICAgaWYgKCFleGlzdGluZ1Jlc291cmNlKQogICAgICAgICByZXR1cm4gTG9hZDsKQEAgLTUzOSw3
ICs1MzksNyBAQCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6UmV2YWxpZGF0aW9uUG9saWN5IENhY2hl
ZFJlc291cmNlTG9hZGVyOjpkZXRlcm1pbmVSZXZhbGlkYQogCiAgICAgLy8gRG8gbm90IGxvYWQg
ZnJvbSBjYWNoZSBpZiBpbWFnZXMgYXJlIG5vdCBlbmFibGVkLiBUaGUgbG9hZCBmb3IgdGhpcyBp
bWFnZSB3aWxsIGJlIGJsb2NrZWQKICAgICAvLyBpbiBDYWNoZWRJbWFnZTo6bG9hZC4KLSAgICBp
ZiAoQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpEZWZlcnJlZEJ5Q2xpZW50ID09IGRlZmVyKQorICAg
IGlmIChEZWZlcnJlZEJ5Q2xpZW50ID09IGRlZmVyKQogICAgICAgICByZXR1cm4gUmVsb2FkOwog
ICAgIAogICAgIC8vIERvbid0IHJlbG9hZCByZXNvdXJjZXMgd2hpbGUgcGFzdGluZy4KQEAgLTc2
NCw4ICs3NjQsOCBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWNyZW1lbnRSZXF1ZXN0
Q291bnQoY29uc3QgQ2FjaGVkUmVzb3VyY2UqIHJlcykKICAgICAtLW1fcmVxdWVzdENvdW50Owog
ICAgIEFTU0VSVChtX3JlcXVlc3RDb3VudCA+IC0xKTsKIH0KLQotdm9pZCBDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6cHJlbG9hZChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN0cmluZyYgY2hhcnNldCwgYm9vbCByZWZlcmVuY2Vk
RnJvbUJvZHkpCisgICAgCit2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpwcmVsb2FkKENhY2hl
ZFJlc291cmNlOjpUeXBlIHR5cGUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3Ry
aW5nJiBjaGFyc2V0LCBib29sIHJlZmVyZW5jZWRGcm9tQm9keSkKIHsKICAgICAvLyBGSVhNRTog
UmlwIHRoaXMgb3V0IHdoZW4gd2UgYXJlIHN1cmUgaXQgaXMgbm8gbG9uZ2VyIG5lY2Vzc2FyeSAo
ZXZlbiBmb3IgbW9iaWxlKS4KICAgICBVTlVTRURfUEFSQU0ocmVmZXJlbmNlZEZyb21Cb2R5KTsK
QEAgLTc4MCwxMiArNzgwLDEyIEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnByZWxvYWQo
Q2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1CiAgICAgICAgIGlm
ICghaGFzUmVuZGVyaW5nICYmICFjYW5CbG9ja1BhcnNlcikgewogICAgICAgICAgICAgLy8gRG9u
J3QgcHJlbG9hZCBzdWJyZXNvdXJjZXMgdGhhdCBjYW4ndCBibG9jayB0aGUgcGFyc2VyIGJlZm9y
ZSB3ZSBoYXZlIHNvbWV0aGluZyB0byBkcmF3LgogICAgICAgICAgICAgLy8gVGhpcyBoZWxwcyBw
cmV2ZW50IHByZWxvYWRzIGZyb20gZGVsYXlpbmcgZmlyc3QgZGlzcGxheSB3aGVuIGJhbmR3aWR0
aCBpcyBsaW1pdGVkLgotICAgICAgICAgICAgUGVuZGluZ1ByZWxvYWQgcGVuZGluZ1ByZWxvYWQg
PSB7IHR5cGUsIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIGNoYXJzZXQgfTsKKyAgICAgICAg
ICAgIFBlbmRpbmdQcmVsb2FkIHBlbmRpbmdQcmVsb2FkID0geyB0eXBlLCByZXF1ZXN0LCBjaGFy
c2V0IH07CiAgICAgICAgICAgICBtX3BlbmRpbmdQcmVsb2Fkcy5hcHBlbmQocGVuZGluZ1ByZWxv
YWQpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQotICAgIHJlcXVlc3RQ
cmVsb2FkKHR5cGUsIHJlcXVlc3QubXV0YWJsZVJlc291cmNlUmVxdWVzdCgpLCBjaGFyc2V0KTsK
KyAgICByZXF1ZXN0UHJlbG9hZCh0eXBlLCByZXF1ZXN0LCBjaGFyc2V0KTsKIH0KIAogdm9pZCBD
YWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2hlY2tGb3JQZW5kaW5nUHJlbG9hZHMoKSAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKaW5kZXgg
YzViMjM2NTBkZWEzMWIyZTBkMWM5ZGIxMmFmZTQzYzE3ODMwZjc0Yi4uZTJlMmFlNDk3MjVjNTkx
MmVjMWM1MDdmYjU4Nzk4NDM0ODViNmE5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTI2LDEwICsyNiw5IEBACiAjaWZu
ZGVmIENhY2hlZFJlc291cmNlTG9hZGVyX2gKICNkZWZpbmUgQ2FjaGVkUmVzb3VyY2VMb2FkZXJf
aAogCi0jaW5jbHVkZSAiQ2FjaGVQb2xpY3kuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZS5o
IgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlSGFuZGxlLmgiCi0jaW5jbHVkZSAiQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmgiCisjaW5jbHVkZSAiQ2FjaGVQb2xpY3kuaCIKICNpbmNsdWRlICJSZXNv
dXJjZUxvYWRQcmlvcml0eS5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSA8d3RmL0Rl
cXVlLmg+CkBAIC00NSw2ICs0NCw3IEBAIGNsYXNzIENhY2hlZFNWR0RvY3VtZW50OwogY2xhc3Mg
Q2FjaGVkRm9udDsKIGNsYXNzIENhY2hlZEltYWdlOwogY2xhc3MgQ2FjaGVkUmF3UmVzb3VyY2U7
CitjbGFzcyBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q7CiBjbGFzcyBDYWNoZWRTY3JpcHQ7CiBjbGFz
cyBDYWNoZWRTaGFkZXI7CiBjbGFzcyBDYWNoZWRUZXh0VHJhY2s7CkBAIC02OSw2ICs2OSw3IEBA
IGZyaWVuZCBjbGFzcyBJbWFnZUxvYWRlcjsKIGZyaWVuZCBjbGFzcyBSZXNvdXJjZUNhY2hlVmFs
aWRhdGlvblN1cHByZXNzb3I7CiAKIHB1YmxpYzoKKyAgICBlbnVtIERlZmVyT3B0aW9uIHsgTm9E
ZWZlciwgRGVmZXJyZWRCeUNsaWVudCB9OwogICAgIHN0YXRpYyBQYXNzUmVmUHRyPENhY2hlZFJl
c291cmNlTG9hZGVyPiBjcmVhdGUoRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyKSB7IHJl
dHVybiBhZG9wdFJlZihuZXcgQ2FjaGVkUmVzb3VyY2VMb2FkZXIoZG9jdW1lbnRMb2FkZXIpKTsg
fQogICAgIH5DYWNoZWRSZXNvdXJjZUxvYWRlcigpOwogCkBAIC0xMzAsNyArMTMxLDcgQEAgcHVi
bGljOgogICAgIGJvb2wgaXNQcmVsb2FkZWQoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpIGNvbnN0
OwogICAgIHZvaWQgY2xlYXJQcmVsb2FkcygpOwogICAgIHZvaWQgY2xlYXJQZW5kaW5nUHJlbG9h
ZHMoKTsKLSAgICB2b2lkIHByZWxvYWQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgY2hhcnNldCwgYm9vbCByZWZlcmVuY2VkRnJvbUJv
ZHkpOworICAgIHZvaWQgcHJlbG9hZChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgUmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFyc2V0LCBib29sIHJlZmVyZW5jZWRGcm9tQm9keSk7CiAg
ICAgdm9pZCBjaGVja0ZvclBlbmRpbmdQcmVsb2FkcygpOwogICAgIHZvaWQgcHJpbnRQcmVsb2Fk
U3RhdHMoKTsKICAgICBib29sIGNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIGNvbnN0
IEtVUkwmLCBib29sIGZvclByZWxvYWQgPSBmYWxzZSk7CkBAIC0xNDgsNyArMTQ5LDcgQEAgcHJp
dmF0ZToKICAgICB2b2lkIHJlcXVlc3RQcmVsb2FkKENhY2hlZFJlc291cmNlOjpUeXBlLCBSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQpOwogCiAgICAgZW51bSBSZXZhbGlk
YXRpb25Qb2xpY3kgeyBVc2UsIFJldmFsaWRhdGUsIFJlbG9hZCwgTG9hZCB9OwotICAgIFJldmFs
aWRhdGlvblBvbGljeSBkZXRlcm1pbmVSZXZhbGlkYXRpb25Qb2xpY3koQ2FjaGVkUmVzb3VyY2U6
OlR5cGUsIFJlc291cmNlUmVxdWVzdCYsIGJvb2wgZm9yUHJlbG9hZCwgQ2FjaGVkUmVzb3VyY2Uq
IGV4aXN0aW5nUmVzb3VyY2UsIENhY2hlZFJlc291cmNlUmVxdWVzdDo6RGVmZXJPcHRpb24pIGNv
bnN0OworICAgIFJldmFsaWRhdGlvblBvbGljeSBkZXRlcm1pbmVSZXZhbGlkYXRpb25Qb2xpY3ko
Q2FjaGVkUmVzb3VyY2U6OlR5cGUsIFJlc291cmNlUmVxdWVzdCYsIGJvb2wgZm9yUHJlbG9hZCwg
Q2FjaGVkUmVzb3VyY2UqIGV4aXN0aW5nUmVzb3VyY2UsIERlZmVyT3B0aW9uKSBjb25zdDsKICAg
ICAKICAgICB2b2lkIG5vdGlmeUxvYWRlZEZyb21NZW1vcnlDYWNoZShDYWNoZWRSZXNvdXJjZSop
OwogICAgIGJvb2wgY2hlY2tJbnNlY3VyZUNvbnRlbnQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIGNv
bnN0IEtVUkwmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKaW5kZXggN2JlNzM0OWRiOTVmYjc1MDJmMDM2ZDVm
ZjI1Y2FhODNmMWU1Y2VjNy4uNmFkZDM5Yjk2Y2FjZjRkZWIzYjRmMzgyMWNlZmI2MjU4YzVlYzlm
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
UmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlUmVxdWVzdC5jcHAKQEAgLTI2LDEwICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAj
aW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgiCiAKLSNpbmNsdWRlICJDYWNoZWRSZXNv
dXJjZUxvYWRlci5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRWxlbWVudC5o
IgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENhY2hlZFJlc291cmNlUmVxdWVzdDo6Q2FjaGVk
UmVzb3VyY2VSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0LCBj
b25zdCBTdHJpbmcmIGNoYXJzZXQsIFJlc291cmNlTG9hZFByaW9yaXR5IHByaW9yaXR5KQpAQCAt
MzgsNyArMzQsNyBAQCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OkNhY2hlZFJlc291cmNlUmVxdWVz
dChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdQogICAgICwgbV9vcHRpb25zKENh
Y2hlZFJlc291cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCkpCiAgICAg
LCBtX3ByaW9yaXR5KHByaW9yaXR5KQogICAgICwgbV9mb3JQcmVsb2FkKGZhbHNlKQotICAgICwg
bV9kZWZlcihOb0RlZmVyKQorICAgICwgbV9kZWZlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Tm9E
ZWZlcikKIHsKIH0KIApAQCAtNDcsNyArNDMsNyBAQCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OkNh
Y2hlZFJlc291cmNlUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdQog
ICAgICwgbV9vcHRpb25zKG9wdGlvbnMpCiAgICAgLCBtX3ByaW9yaXR5KFJlc291cmNlTG9hZFBy
aW9yaXR5VW5yZXNvbHZlZCkKICAgICAsIG1fZm9yUHJlbG9hZChmYWxzZSkKLSAgICAsIG1fZGVm
ZXIoTm9EZWZlcikKKyAgICAsIG1fZGVmZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXI6Ok5vRGVmZXIp
CiB7CiB9CiAKQEAgLTU2LDQ4ICs1Miw4IEBAIENhY2hlZFJlc291cmNlUmVxdWVzdDo6Q2FjaGVk
UmVzb3VyY2VSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1CiAgICAg
LCBtX29wdGlvbnMoQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmRlZmF1bHRDYWNoZWRSZXNvdXJjZU9w
dGlvbnMoKSkKICAgICAsIG1fcHJpb3JpdHkocHJpb3JpdHkpCiAgICAgLCBtX2ZvclByZWxvYWQo
ZmFsc2UpCi0gICAgLCBtX2RlZmVyKE5vRGVmZXIpCi17Ci19Ci0KLUNhY2hlZFJlc291cmNlUmVx
dWVzdDo6fkNhY2hlZFJlc291cmNlUmVxdWVzdCgpCi17Ci19Ci0KLXZvaWQgQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoUGFzc1JlZlB0cjxFbGVtZW50PiBlbGVtZW50KQorICAg
ICwgbV9kZWZlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Tm9EZWZlcikKIHsKLSAgICBBU1NFUlQo
IW1faW5pdGlhdG9yRWxlbWVudCAmJiAhbV9pbml0aWF0b3JEb2N1bWVudCk7Ci0gICAgbV9pbml0
aWF0b3JFbGVtZW50ID0gZWxlbWVudDsKIH0KIAotdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6
OnNldEluaXRpYXRvcihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUsIFBhc3NSZWZQdHI8RG9jdW1l
bnQ+IGRvY3VtZW50KQotewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50ICYmICFtX2lu
aXRpYXRvckRvY3VtZW50KTsKLSAgICBtX2luaXRpYXRvck5hbWUgPSBuYW1lOwotICAgIG1faW5p
dGlhdG9yRG9jdW1lbnQgPSBkb2N1bWVudDsKIH0KLQotY29uc3QgQXRvbWljU3RyaW5nJiBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3Q6OmluaXRpYXRvck5hbWUoKSBjb25zdAotewotICAgIGlmIChtX2lu
aXRpYXRvckVsZW1lbnQpCi0gICAgICAgIHJldHVybiBtX2luaXRpYXRvckVsZW1lbnQtPmxvY2Fs
TmFtZSgpOwotICAgIGlmICghbV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0
dXJuIG1faW5pdGlhdG9yTmFtZTsKLQotICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3Ry
aW5nLCBkZWZhdWx0TmFtZSwgKCJyZXNvdXJjZSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJv
bUxpdGVyYWwpKTsKLSAgICByZXR1cm4gZGVmYXVsdE5hbWU7Ci19Ci0KLVBhc3NSZWZQdHI8RG9j
dW1lbnQ+IENhY2hlZFJlc291cmNlUmVxdWVzdDo6aW5pdGlhdG9yRG9jdW1lbnQoKQotewotICAg
IGlmIChtX2luaXRpYXRvckVsZW1lbnQpCi0gICAgICAgIHJldHVybiBtX2luaXRpYXRvckVsZW1l
bnQtPmRvY3VtZW50KCk7Ci0gICAgcmV0dXJuIG1faW5pdGlhdG9yRG9jdW1lbnQ7Ci19Ci0KLVBh
c3NSZWZQdHI8RWxlbWVudD4gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojppbml0aWF0b3JFbGVtZW50
KCkKLXsKLSAgICByZXR1cm4gbV9pbml0aWF0b3JFbGVtZW50OwotfQotCi19IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmgKaW5kZXggNGFhMzBkNDUzMTMxZjI2MjY3MDU3N2ZlYmNmNzA2NDk0YzJl
NzNhYy4uY2IwNDNkZmUzOWZlNGNlZDU1MDgyMTk0YmUzZjEwZGYwMGY5MWJmNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaApA
QCAtMjYsNDEgKzI2LDI3IEBACiAjaWZuZGVmIENhY2hlZFJlc291cmNlUmVxdWVzdF9oCiAjZGVm
aW5lIENhY2hlZFJlc291cmNlUmVxdWVzdF9oCiAKKyNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUxv
YWRlci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZFByaW9yaXR5LmgiCi0jaW5jbHVkZSAiUmVz
b3VyY2VMb2FkZXJPcHRpb25zLmgiCi0jaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7Ci1jbGFzcyBEb2N1bWVudDsKLWNsYXNzIEVsZW1lbnQ7CiAK
IGNsYXNzIENhY2hlZFJlc291cmNlUmVxdWVzdCB7CiBwdWJsaWM6Ci0gICAgZW51bSBEZWZlck9w
dGlvbiB7IE5vRGVmZXIsIERlZmVycmVkQnlDbGllbnQgfTsKLQogICAgIGV4cGxpY2l0IENhY2hl
ZFJlc291cmNlUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNo
YXJzZXQgPSBTdHJpbmcoKSwgUmVzb3VyY2VMb2FkUHJpb3JpdHkgPSBSZXNvdXJjZUxvYWRQcmlv
cml0eVVucmVzb2x2ZWQpOwogICAgIENhY2hlZFJlc291cmNlUmVxdWVzdChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmKTsKICAgICBDYWNoZWRSZXNv
dXJjZVJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUmVzb3VyY2VMb2FkUHJpb3JpdHkp
OwotICAgIH5DYWNoZWRSZXNvdXJjZVJlcXVlc3QoKTsKIAogICAgIFJlc291cmNlUmVxdWVzdCYg
bXV0YWJsZVJlc291cmNlUmVxdWVzdCgpIHsgcmV0dXJuIG1fcmVzb3VyY2VSZXF1ZXN0OyB9CiAg
ICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QoKSBjb25zdCB7IHJldHVy
biBtX3Jlc291cmNlUmVxdWVzdDsgfQogICAgIGNvbnN0IFN0cmluZyYgY2hhcnNldCgpIGNvbnN0
IHsgcmV0dXJuIG1fY2hhcnNldDsgfQogICAgIHZvaWQgc2V0Q2hhcnNldChjb25zdCBTdHJpbmcm
IGNoYXJzZXQpIHsgbV9jaGFyc2V0ID0gY2hhcnNldDsgfQogICAgIGNvbnN0IFJlc291cmNlTG9h
ZGVyT3B0aW9ucyYgb3B0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9uczsgfQotICAgIHZv
aWQgc2V0T3B0aW9ucyhjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMpIHsgbV9v
cHRpb25zID0gb3B0aW9uczsgfQogICAgIFJlc291cmNlTG9hZFByaW9yaXR5IHByaW9yaXR5KCkg
Y29uc3QgeyByZXR1cm4gbV9wcmlvcml0eTsgfQogICAgIGJvb2wgZm9yUHJlbG9hZCgpIGNvbnN0
IHsgcmV0dXJuIG1fZm9yUHJlbG9hZDsgfQogICAgIHZvaWQgc2V0Rm9yUHJlbG9hZChib29sIGZv
clByZWxvYWQpIHsgbV9mb3JQcmVsb2FkID0gZm9yUHJlbG9hZDsgfQotICAgIERlZmVyT3B0aW9u
IGRlZmVyKCkgY29uc3QgeyByZXR1cm4gbV9kZWZlcjsgfQotICAgIHZvaWQgc2V0RGVmZXIoRGVm
ZXJPcHRpb24gZGVmZXIpIHsgbV9kZWZlciA9IGRlZmVyOyB9Ci0gICAgdm9pZCBzZXRJbml0aWF0
b3IoUGFzc1JlZlB0cjxFbGVtZW50Pik7Ci0gICAgdm9pZCBzZXRJbml0aWF0b3IoY29uc3QgQXRv
bWljU3RyaW5nJiBuYW1lLCBQYXNzUmVmUHRyPERvY3VtZW50Pik7Ci0gICAgY29uc3QgQXRvbWlj
U3RyaW5nJiBpbml0aWF0b3JOYW1lKCkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxEb2N1bWVudD4g
aW5pdGlhdG9yRG9jdW1lbnQoKTsKLSAgICBQYXNzUmVmUHRyPEVsZW1lbnQ+IGluaXRpYXRvckVs
ZW1lbnQoKTsKKyAgICBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6RGVmZXJPcHRpb24gZGVmZXIoKSBj
b25zdCB7IHJldHVybiBtX2RlZmVyOyB9CisgICAgdm9pZCBzZXREZWZlcihDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6RGVmZXJPcHRpb24gZGVmZXIpIHsgbV9kZWZlciA9IGRlZmVyOyB9CiAKIHByaXZh
dGU6CiAgICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3VyY2VSZXF1ZXN0OwpAQCAtNjgsMTAgKzU0
LDcgQEAgcHJpdmF0ZToKICAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMgbV9vcHRpb25zOwogICAg
IFJlc291cmNlTG9hZFByaW9yaXR5IG1fcHJpb3JpdHk7CiAgICAgYm9vbCBtX2ZvclByZWxvYWQ7
Ci0gICAgRGVmZXJPcHRpb24gbV9kZWZlcjsKLSAgICBSZWZQdHI8RWxlbWVudD4gbV9pbml0aWF0
b3JFbGVtZW50OwotICAgIFJlZlB0cjxEb2N1bWVudD4gbV9pbml0aWF0b3JEb2N1bWVudDsKLSAg
ICBBdG9taWNTdHJpbmcgbV9pbml0aWF0b3JOYW1lOworICAgIENhY2hlZFJlc291cmNlTG9hZGVy
OjpEZWZlck9wdGlvbiBtX2RlZmVyOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVz
dEluaXRpYXRvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0
NjMxNDVjMmNlMjE0ZGUzMWZkNTI2YzNlNDdjMzdjMzNjNmM4Njc5Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmNwcAorKysgL2Rldi9udWxsCkBAIC0x
LDM3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlLCBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBHT09HTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IENPTVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291
cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1DYWNoZWRS
ZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzOjpDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
KCkKLSAgICA6IGNzcygiY3NzIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkK
LSAgICAsIGljb24oImljb24iLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKQot
ewotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzM1NGQ2ODc0MDFhNzMxMWI4OTM2YjNkOTIx
MjRlYzRkY2NjZGE2NC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycy5oCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMiBHb29nbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEdPT0dMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIENhY2hl
ZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnNfaAotI2RlZmluZSBDYWNoZWRSZXNvdXJjZVJlcXVl
c3RJbml0aWF0b3JzX2gKLQotI2luY2x1ZGUgIlRocmVhZEdsb2JhbERhdGEuaCIKLSNpbmNsdWRl
IDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFz
cyBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZ
QUJMRShDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzKTsgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7Ci1wdWJsaWM6Ci0gICAgQXRvbWljU3RyaW5nIGNzczsKLSAgICBBdG9taWNTdHJpbmcg
aWNvbjsKLXByaXZhdGU6Ci0gICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycygpOwot
ICAgIGZyaWVuZCBjbGFzcyBUaHJlYWRHbG9iYWxEYXRhOwotfTsKLQotaW5saW5lIENhY2hlZFJl
c291cmNlUmVxdWVzdEluaXRpYXRvcnMmIGNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMo
KQotewotICAgIHJldHVybiB0aHJlYWRHbG9iYWxEYXRhKCkuY2FjaGVkUmVzb3VyY2VSZXF1ZXN0
SW5pdGlhdG9ycygpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkxvYWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uTG9hZGVyLmNwcAppbmRleCBlMDcxMDhlNGNkMmRl
NGNkZjhiZTgwODZmZDFkZDYyMDlmODQ0NDI4Li44YzlkMGNlY2JmY2QxMmI3ZWFhMWM0YThjODcw
ZjE2NDI1NTdmNzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29u
TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uTG9hZGVyLmNw
cApAQCAtMjksNyArMjksNiBAQAogI2luY2x1ZGUgIkNhY2hlZFJhd1Jlc291cmNlLmgiCiAjaW5j
bHVkZSAiQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZVJl
cXVlc3QuaCIKLSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmgiCiAj
aW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1l
TG9hZGVyLmgiCkBAIC02Nyw3ICs2Niw2IEBAIHZvaWQgSWNvbkxvYWRlcjo6c3RhcnRMb2FkaW5n
KCkKICAgICByZXF1ZXN0Lm11dGFibGVSZXNvdXJjZVJlcXVlc3QoKS5zZXRUYXJnZXRUeXBlKFJl
c291cmNlUmVxdWVzdDo6VGFyZ2V0SXNGYXZpY29uKTsKICNlbmRpZgogICAgIHJlcXVlc3QubXV0
YWJsZVJlc291cmNlUmVxdWVzdCgpLnNldFByaW9yaXR5KFJlc291cmNlTG9hZFByaW9yaXR5TG93
KTsKLSAgICByZXF1ZXN0LnNldEluaXRpYXRvcihjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzKCkuaWNvbiwgbV9mcmFtZS0+ZG9jdW1lbnQoKSk7CiAKICAgICBtX3Jlc291cmNlID0gbV9m
cmFtZS0+ZG9jdW1lbnQoKS0+Y2FjaGVkUmVzb3VyY2VMb2FkZXIoKS0+cmVxdWVzdFJhd1Jlc291
cmNlKHJlcXVlc3QpOwogICAgIGlmIChtX3Jlc291cmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmNwcAppbmRleCBiYzFkNjVlMjY2MjM1ZmVhMGU1ZDFlNjBj
OGM2ZGExOTMzNDJhMzhkLi5kYTg0NmY4ZGJjMmI2ZTFlZjM3MDNmZDgzZDg2YTBlNTQ4MWE5MjBj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmNwcApAQCAt
MjcsNyArMjcsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlRocmVhZEdsb2Jh
bERhdGEuaCIKIAotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIK
ICNpbmNsdWRlICJET01JbXBsZW1lbnRhdGlvbi5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIK
ICNpbmNsdWRlICJJbnNwZWN0b3JDb3VudGVycy5oIgpAQCAtNjAsOCArNTksNyBAQCBUaHJlYWRH
bG9iYWxEYXRhKiBUaHJlYWRHbG9iYWxEYXRhOjpzdGF0aWNEYXRhOwogI2VuZGlmCiAKIFRocmVh
ZEdsb2JhbERhdGE6OlRocmVhZEdsb2JhbERhdGEoKQotICAgIDogbV9jYWNoZWRSZXNvdXJjZVJl
cXVlc3RJbml0aWF0b3JzKGFkb3B0UHRyKG5ldyBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzKSkKLSAgICAsIG1fZXZlbnROYW1lcyhhZG9wdFB0cihuZXcgRXZlbnROYW1lcykpCisgICAg
OiBtX2V2ZW50TmFtZXMoYWRvcHRQdHIobmV3IEV2ZW50TmFtZXMpKQogICAgICwgbV90aHJlYWRU
aW1lcnMoYWRvcHRQdHIobmV3IFRocmVhZFRpbWVycykpCiAgICAgLCBtX3htbFR5cGVSZWdFeHAo
YWRvcHRQdHIobmV3IFhNTE1JTUVUeXBlUmVnRXhwKSkKICNpZm5kZWYgTkRFQlVHCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmgKaW5kZXggN2UwNTQyNTllMGNlZjg3
NmIxN2FlZThhYTQyMDEyMmVmODQ5YzI1Ni4uNDJmMDVhZmUzODkzZjczZDlkN2VmZjQ4NTJiOWVm
MThmZDlhZDY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xv
YmFsRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEu
aApAQCAtNDEsNyArNDEsNiBAQCB1c2luZyBXVEY6OlRocmVhZFNwZWNpZmljOwogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLWNsYXNzIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnM7CiAg
ICAgY2xhc3MgRXZlbnROYW1lczsKICAgICBjbGFzcyBUaHJlYWRMb2NhbEluc3BlY3RvckNvdW50
ZXJzOwogICAgIGNsYXNzIFRocmVhZFRpbWVyczsKQEAgLTU3LDcgKzU2LDYgQEAgY2xhc3MgQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9yczsKICAgICAgICAgflRocmVhZEdsb2JhbERhdGEo
KTsKICAgICAgICAgdm9pZCBkZXN0cm95KCk7IC8vIGNhbGxlZCBvbiB3b3JrZXJzIHRvIGNsZWFu
IHVwIHRoZSBUaHJlYWRHbG9iYWxEYXRhIGJlZm9yZSB0aGUgdGhyZWFkIGV4aXRzLgogCi0gICAg
ICAgIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMmIGNhY2hlZFJlc291cmNlUmVxdWVz
dEluaXRpYXRvcnMoKSB7IHJldHVybiAqbV9jYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
OyB9CiAgICAgICAgIEV2ZW50TmFtZXMmIGV2ZW50TmFtZXMoKSB7IHJldHVybiAqbV9ldmVudE5h
bWVzOyB9CiAgICAgICAgIFRocmVhZFRpbWVycyYgdGhyZWFkVGltZXJzKCkgeyByZXR1cm4gKm1f
dGhyZWFkVGltZXJzOyB9CiAgICAgICAgIFhNTE1JTUVUeXBlUmVnRXhwJiB4bWxUeXBlUmVnRXhw
KCkgeyByZXR1cm4gKm1feG1sVHlwZVJlZ0V4cDsgfQpAQCAtNzUsNyArNzMsNiBAQCBjbGFzcyBD
YWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzOwogI2VuZGlmCiAKICAgICBwcml2YXRlOgot
ICAgICAgICBPd25QdHI8Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycz4gbV9jYWNoZWRS
ZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzOwogICAgICAgICBPd25QdHI8RXZlbnROYW1lcz4gbV9l
dmVudE5hbWVzOwogICAgICAgICBPd25QdHI8VGhyZWFkVGltZXJzPiBtX3RocmVhZFRpbWVyczsK
ICAgICAgICAgT3duUHRyPFhNTE1JTUVUeXBlUmVnRXhwPiBtX3htbFR5cGVSZWdFeHA7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcAppbmRleCBlYWZlYTFhODZhMTIyMmVk
ODNkMTRhNTNkYWJiY2RiZjIyMzRmYjc4Li44N2ZmMGQ2ODEyNzQ0NjBlYTc5NzhhZmU4N2ZhMjcz
OTY4ODU3ZWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKQEAg
LTgyLDcgKzgyLDYgQEAgdm9pZCBTVkdGRUltYWdlRWxlbWVudDo6Y2xlYXJSZXNvdXJjZVJlZmVy
ZW5jZXMoKQogdm9pZCBTVkdGRUltYWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UoKQog
ewogICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChvd25l
ckRvY3VtZW50KCktPmNvbXBsZXRlVVJMKGhyZWYoKSkpKTsKLSAgICByZXF1ZXN0LnNldEluaXRp
YXRvcih0aGlzKTsKICAgICBtX2NhY2hlZEltYWdlID0gZG9jdW1lbnQoKS0+Y2FjaGVkUmVzb3Vy
Y2VMb2FkZXIoKS0+cmVxdWVzdEltYWdlKHJlcXVlc3QpOwogCiAgICAgaWYgKG1fY2FjaGVkSW1h
Z2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCmluZGV4
IDNiMmQ0OTViOTY1MDk4MDIxNzIyNzNmNzUyMmRlNDFjNTRjNzBmYjkuLmMzNGZlZDg3ZDQ3ZWY4
ZmYxZjFhNjVlMjdhZjVmNmNkZDM3NDhhOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdG
b250RmFjZVVyaUVsZW1lbnQuY3BwCkBAIC05OCw3ICs5OCw2IEBAIHZvaWQgU1ZHRm9udEZhY2VV
cmlFbGVtZW50Ojpsb2FkRm9udCgpCiAgICAgaWYgKCFocmVmLmlzTnVsbCgpKSB7CiAgICAgICAg
IENhY2hlZFJlc291cmNlTG9hZGVyKiBjYWNoZWRSZXNvdXJjZUxvYWRlciA9IGRvY3VtZW50KCkt
PmNhY2hlZFJlc291cmNlTG9hZGVyKCk7CiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCBy
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudCgpLT5jb21wbGV0ZVVSTChocmVmKSkpOwot
ICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKICAgICAgICAgbV9jYWNoZWRGb250
ID0gY2FjaGVkUmVzb3VyY2VMb2FkZXItPnJlcXVlc3RGb250KHJlcXVlc3QpOwogICAgICAgICBp
ZiAobV9jYWNoZWRGb250KSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZvbnQtPmFkZENsaWVudCh0
aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcAppbmRleCBmMWUxYzAzMjQwNTM0
OGMzNTkwYzM3YmU0YmI0Y2EyMDJlZTA2NWQ0Li42MDQ2ZWM2MWI3NGZjMTJlYjEzYWMyMDcyNDRh
NmM2ODE2NTQ3NDc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCkBAIC0yNTYs
NyArMjU2LDYgQEAgdm9pZCBTVkdVc2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0
IFF1YWxpZmllZE5hbWUmIGF0dHJOYW1lKQogICAgICAgICAgICAgS1VSTCB1cmwgPSBkb2N1bWVu
dCgpLT5jb21wbGV0ZVVSTChocmVmKCkpOwogICAgICAgICAgICAgaWYgKHVybC5oYXNGcmFnbWVu
dElkZW50aWZpZXIoKSkgewogICAgICAgICAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCBy
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdCh1cmwuc3RyaW5nKCkpKTsKLSAgICAgICAgICAgICAgICBy
ZXF1ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKICAgICAgICAgICAgICAgICBtX2NhY2hlZERvY3Vt
ZW50ID0gZG9jdW1lbnQoKS0+Y2FjaGVkUmVzb3VyY2VMb2FkZXIoKS0+cmVxdWVzdFNWR0RvY3Vt
ZW50KHJlcXVlc3QpOwogICAgICAgICAgICAgICAgIGlmIChtX2NhY2hlZERvY3VtZW50KQogICAg
ICAgICAgICAgICAgICAgICBtX2NhY2hlZERvY3VtZW50LT5hZGRDbGllbnQodGhpcyk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>