<?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>147989</bug_id>
          
          <creation_ts>2015-08-13 13:51:03 -0700</creation_ts>
          <short_desc>Add WKWindowFeaturesRef and a new modern createNewPage UI client callback</short_desc>
          <delta_ts>2015-08-17 16:40:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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>
          <dependson>148014</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1117366</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-13 13:51:03 -0700</bug_when>
    <thetext>Add WKWindowFeaturesRef and a new modern createNewPage UI client callback</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1117373</commentid>
    <comment_count>1</comment_count>
      <attachid>258931</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-13 13:58:51 -0700</bug_when>
    <thetext>Created attachment 258931
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1117380</commentid>
    <comment_count>2</comment_count>
      <attachid>258931</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-08-13 14:09:45 -0700</bug_when>
    <thetext>Comment on attachment 258931
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=258931&amp;action=review

&gt; Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm:8
&gt; - *    notice, this list of conditions and the following disclaimer.
&gt; + *    notice, this list of ins and the following disclaimer.

NO.

&gt; Source/WebKit2/UIProcess/API/C/WKPage.cpp:106
&gt; +    typedef std::tuple&lt;WKPageUIClientV0, WKPageUIClientV1, WKPageUIClientV2, WKPageUIClientV3, WKPageUIClientV4, WKPageUIClientV5, WKPageUIClientV6&gt; Versions;

ouch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1117399</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-13 14:32:00 -0700</bug_when>
    <thetext>Committed r188404: &lt;http://trac.webkit.org/changeset/188404&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1117557</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-08-13 21:37:57 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 148014</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1118298</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-17 16:40:10 -0700</bug_when>
    <thetext>Committed r188553: &lt;http://trac.webkit.org/changeset/188553&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>258931</attachid>
            <date>2015-08-13 13:58:51 -0700</date>
            <delta_ts>2015-08-13 14:09:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147989-20150813135834.patch</filename>
            <type>text/plain</type>
            <size>47111</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg4Mzg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTM1N2RhZDE2N2U5OTgy
YWNmMDZkNWUyMjc0NjdjMzc3YzViYzY0OC4uZTY1NDhiNGM0NDE0NGViMDVmNzVmY2Y0MThiMDVj
OTcxZjQzODMyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDE1LTA4LTEzICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFdLV2luZG93
RmVhdHVyZXNSZWYgYW5kIGEgbmV3IG1vZGVybiBjcmVhdGVOZXdQYWdlIFVJIGNsaWVudCBjYWxs
YmFjaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3
OTg5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBQ
bGF0Zm9ybS9JUEMvbWFjL0Nvbm5lY3Rpb25NYWMubW06CisgICAgICAgICogU2hhcmVkL0FQSS9B
UElPYmplY3QuaDoKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tCYXNlLmg6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9BUElXaW5kb3dGZWF0dXJlcy5jcHA6IEFkZGVkLgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQVBJV2luZG93RmVhdHVyZXMuaDogQWRkZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9DL1dLQVBJQ2FzdC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BhZ2Uu
Y3BwOgorICAgICAgICAoV0tQYWdlU2V0UGFnZVVJQ2xpZW50KToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0MvV0tQYWdlVUlDbGllbnQuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tX
aW5kb3dGZWF0dXJlc1JlZi5jcHA6IEFkZGVkLgorICAgICAgICAoV0tXaW5kb3dGZWF0dXJlc0dl
dFR5cGVJRCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLV2luZG93RmVhdHVyZXNSZWYu
aDogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dpbmRvd0ZlYXR1cmVz
Lm1tOgorICAgICAgICAoLVtXS1dpbmRvd0ZlYXR1cmVzIGRlYWxsb2NdKToKKyAgICAgICAgKC1b
V0tXaW5kb3dGZWF0dXJlcyBtZW51QmFyVmlzaWJpbGl0eV0pOgorICAgICAgICAoLVtXS1dpbmRv
d0ZlYXR1cmVzIHN0YXR1c0JhclZpc2liaWxpdHldKToKKyAgICAgICAgKC1bV0tXaW5kb3dGZWF0
dXJlcyB0b29sYmFyc1Zpc2liaWxpdHldKToKKyAgICAgICAgKC1bV0tXaW5kb3dGZWF0dXJlcyBh
bGxvd3NSZXNpemluZ10pOgorICAgICAgICAoLVtXS1dpbmRvd0ZlYXR1cmVzIHhdKToKKyAgICAg
ICAgKC1bV0tXaW5kb3dGZWF0dXJlcyB5XSk6CisgICAgICAgICgtW1dLV2luZG93RmVhdHVyZXMg
d2lkdGhdKToKKyAgICAgICAgKC1bV0tXaW5kb3dGZWF0dXJlcyBoZWlnaHRdKToKKyAgICAgICAg
KC1bV0tXaW5kb3dGZWF0dXJlcyBfYXBpT2JqZWN0XSk6CisgICAgICAgICgtW1dLV2luZG93RmVh
dHVyZXMgX2luaXRXaXRoV2luZG93RmVhdHVyZXM6XSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dpbmRvd0ZlYXR1cmVzSW50ZXJuYWwuaDoKKyAgICAgICAgKFdl
YktpdDo6d3JhcHBlcik6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1VJRGVsZWdhdGUubW06
CisgICAgICAgIChXZWJLaXQ6OlVJRGVsZWdhdGU6OlVJQ2xpZW50OjpjcmVhdGVOZXdQYWdlKToK
KyAgICAgICAgKiBXZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMTUtMDgt
MTIgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2Ug
V1RGOjpPcHRpb25hbCBpbiBXaW5kb3dGZWF0dXJlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vSVBDL21hYy9Db25uZWN0aW9uTWFjLm1tIGIvU291cmNlL1dlYktpdDIvUGxh
dGZvcm0vSVBDL21hYy9Db25uZWN0aW9uTWFjLm1tCmluZGV4IGE3OTEzZTI3ZTA1ZmU4ZjA5ZjI1
NDJiZDZlOWRiYjIzNzFiY2E1NjMuLjdlNGU4NjMxNDQzMTcxY2IzMTBhMjU0YzIwYmQyOTQwZDll
NmZjZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9tYWMvQ29ubmVj
dGlvbk1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvbWFjL0Nvbm5lY3Rp
b25NYWMubW0KQEAgLTUsNyArNSw3IEBACiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6CiAgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgaW5zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAogICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQogICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvQVBJT2JqZWN0LmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL0FQSU9iamVjdC5oCmlu
ZGV4IDVlMmM0NmFjNGMwMGM0Nzk1Y2FmYmFjZTE3OGVmMDA5MmZmMzg3YmUuLjBhMDlmNDU1OWYz
YzI1OWQ0MWE4OTcxZDc0ZGFlMDFiZDhiZTRiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUEkvQVBJT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9B
UElPYmplY3QuaApAQCAtMTQ4LDYgKzE0OCw3IEBAIHB1YmxpYzoKICAgICAgICAgVmlzaXRlZExp
bmtQcm92aWRlciwKICAgICAgICAgV2Vic2l0ZURhdGFSZWNvcmQsCiAgICAgICAgIFdlYnNpdGVE
YXRhU3RvcmUsCisgICAgICAgIFdpbmRvd0ZlYXR1cmVzLAogCiAjaWYgRU5BQkxFKE1FRElBX1NF
U1NJT04pCiAgICAgICAgIE1lZGlhU2Vzc2lvbkZvY3VzTWFuYWdlciwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0Jhc2UuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9BUEkvYy9XS0Jhc2UuaAppbmRleCA3OWZjN2RjZTI4ODI3ZDU5NGVlZTljNjllZWMyYjM4NzIx
MGY3M2Q4Li5jNmIxMmM2YzU3MGEzZWMxMTFiNDI5NWQxZjhmMTVjNGM1MjBkYzZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tCYXNlLmgKKysrIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCkBAIC0xNDIsNiArMTQyLDcgQEAgdHlwZWRlZiBj
b25zdCBzdHJ1Y3QgT3BhcXVlV0tVc2VyU2NyaXB0KiBXS1VzZXJTY3JpcHRSZWY7CiB0eXBlZGVm
IGNvbnN0IHN0cnVjdCBPcGFxdWVXS1ZpYnJhdGlvbiogV0tWaWJyYXRpb25SZWY7CiB0eXBlZGVm
IGNvbnN0IHN0cnVjdCBPcGFxdWVXS1ZpZXdwb3J0QXR0cmlidXRlcyogV0tWaWV3cG9ydEF0dHJp
YnV0ZXNSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS1dlYnNpdGVEYXRhU3RvcmUq
IFdLV2Vic2l0ZURhdGFTdG9yZVJlZjsKK3R5cGVkZWYgY29uc3Qgc3RydWN0IE9wYXF1ZVdLV2lu
ZG93RmVhdHVyZXMqIFdLV2luZG93RmVhdHVyZXNSZWY7CiAKIC8qIFdlYktpdDIgQnVuZGxlIHR5
cGVzICovCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJV2lu
ZG93RmVhdHVyZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9BUElXaW5kb3dG
ZWF0dXJlcy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjZmYTBkYzMxNTBkM2I1MmNiYjY0YTM2OWVlNjM2MjVk
MDAwYWIyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
QVBJV2luZG93RmVhdHVyZXMuY3BwCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQVBJV2luZG93RmVhdHVyZXMuaCIKKworbmFtZXNw
YWNlIEFQSSB7CisKK1JlZjxXaW5kb3dGZWF0dXJlcz4gV2luZG93RmVhdHVyZXM6OmNyZWF0ZShj
b25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVhdHVyZXMpCit7CisgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgV2luZG93RmVhdHVyZXMod2luZG93RmVhdHVyZXMpKTsKK30KKwor
V2luZG93RmVhdHVyZXM6OldpbmRvd0ZlYXR1cmVzKGNvbnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1
cmVzJiB3aW5kb3dGZWF0dXJlcykKKyAgICA6IG1fd2luZG93RmVhdHVyZXMod2luZG93RmVhdHVy
ZXMpCit7Cit9CisKK1dpbmRvd0ZlYXR1cmVzOjp+V2luZG93RmVhdHVyZXMoKQoreworfQorCit9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSVdpbmRvd0ZlYXR1
cmVzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSVdpbmRvd0ZlYXR1cmVzLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uY2NlZGY3OWZkZjE0ZTllZjE3N2EwZDMzY2UxYjZjMjE3NDBjODliZQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJV2luZG93RmVh
dHVyZXMuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBBUElXaW5kb3dG
ZWF0dXJlc19oCisjZGVmaW5lIEFQSVdpbmRvd0ZlYXR1cmVzX2gKKworI2luY2x1ZGUgIkFQSU9i
amVjdC5oIgorI2luY2x1ZGUgPFdlYkNvcmUvV2luZG93RmVhdHVyZXMuaD4KKworbmFtZXNwYWNl
IEFQSSB7CisKK2NsYXNzIFdpbmRvd0ZlYXR1cmVzIGZpbmFsIDogcHVibGljIE9iamVjdEltcGw8
T2JqZWN0OjpUeXBlOjpXaW5kb3dGZWF0dXJlcz4geworcHVibGljOgorICAgIHN0YXRpYyBSZWY8
V2luZG93RmVhdHVyZXM+IGNyZWF0ZShjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYpOwor
ICAgIHZpcnR1YWwgfldpbmRvd0ZlYXR1cmVzKCk7CisKKyAgICBjb25zdCBXZWJDb3JlOjpXaW5k
b3dGZWF0dXJlcyYgd2luZG93RmVhdHVyZXMoKSBjb25zdCB7IHJldHVybiBtX3dpbmRvd0ZlYXR1
cmVzOyB9CisKK3ByaXZhdGU6CisgICAgZXhwbGljaXQgV2luZG93RmVhdHVyZXMoY29uc3QgV2Vi
Q29yZTo6V2luZG93RmVhdHVyZXMmKTsKKworICAgIGNvbnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1
cmVzIG1fd2luZG93RmVhdHVyZXM7Cit9OworCit9CisKKyNlbmRpZiAvLyBBUElXaW5kb3dGZWF0
dXJlc19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElD
YXN0LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgKaW5kZXgg
MGU1NmJlODExNWI4OWRjZWFlZWE4N2NiYzc4MGMzYWIyN2JkZWI0Ny4uYjg1NGYxNWNiZjE4ZjM5
MjJiOGI1ZWQ1YzEwYjU3ZGI5MTQ5NzY5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS0FQSUNhc3QuaApAQCAtNjQsNiArNjQsNyBAQCBjbGFzcyBVc2VyQ29udGVudEV4dGVu
c2lvbjsKIGNsYXNzIFVzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmU7CiBjbGFzcyBVc2VyU2NyaXB0
OwogY2xhc3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIFdpbmRvd0ZlYXR1cmVzOwogfQogCiBu
YW1lc3BhY2UgV2ViS2l0IHsKQEAgLTE2Niw2ICsxNjcsNyBAQCBXS19BRERfQVBJX01BUFBJTkco
V0tVc2VyU2NyaXB0UmVmLCBBUEk6OlVzZXJTY3JpcHQpCiBXS19BRERfQVBJX01BUFBJTkcoV0tW
aWJyYXRpb25SZWYsIFdlYlZpYnJhdGlvblByb3h5KQogV0tfQUREX0FQSV9NQVBQSU5HKFdLVmll
d3BvcnRBdHRyaWJ1dGVzUmVmLCBXZWJWaWV3cG9ydEF0dHJpYnV0ZXMpCiBXS19BRERfQVBJX01B
UFBJTkcoV0tXZWJzaXRlRGF0YVN0b3JlUmVmLCBBUEk6OldlYnNpdGVEYXRhU3RvcmUpCitXS19B
RERfQVBJX01BUFBJTkcoV0tXaW5kb3dGZWF0dXJlc1JlZiwgQVBJOjpXaW5kb3dGZWF0dXJlcykK
IAogLyogRW51bSBjb252ZXJzaW9ucyAqLwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1BhZ2UuY3BwCmluZGV4IDIxZTYxNmEzZDFiZTE0NjdmZGViZjFiZDljNTk5YzEyYmQ3YTRi
M2EuLjJjNzMwZGFkNTMxOGIwMjY0NGRiY2FiMGRhODk2ZTk2Mzk0ZDBjNjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCkBAIC00MSw2ICs0MSw3IEBACiAjaW5j
bHVkZSAiQVBJUG9saWN5Q2xpZW50LmgiCiAjaW5jbHVkZSAiQVBJU2Vzc2lvblN0YXRlLmgiCiAj
aW5jbHVkZSAiQVBJVUlDbGllbnQuaCIKKyNpbmNsdWRlICJBUElXaW5kb3dGZWF0dXJlcy5oIgog
I2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkuaCIKICNpbmNsdWRlICJMZWdh
Y3lTZXNzaW9uU3RhdGVDb2RpbmcuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC0xMDIsNyAr
MTAzLDcgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgQ2xpZW50VHJhaXRzPFdLUGFnZVBvbGljeUNsaWVu
dEJhc2U+IHsKIH07CiAKIHRlbXBsYXRlPD4gc3RydWN0IENsaWVudFRyYWl0czxXS1BhZ2VVSUNs
aWVudEJhc2U+IHsKLSAgICB0eXBlZGVmIHN0ZDo6dHVwbGU8V0tQYWdlVUlDbGllbnRWMCwgV0tQ
YWdlVUlDbGllbnRWMSwgV0tQYWdlVUlDbGllbnRWMiwgV0tQYWdlVUlDbGllbnRWMywgV0tQYWdl
VUlDbGllbnRWNCwgV0tQYWdlVUlDbGllbnRWNT4gVmVyc2lvbnM7CisgICAgdHlwZWRlZiBzdGQ6
OnR1cGxlPFdLUGFnZVVJQ2xpZW50VjAsIFdLUGFnZVVJQ2xpZW50VjEsIFdLUGFnZVVJQ2xpZW50
VjIsIFdLUGFnZVVJQ2xpZW50VjMsIFdLUGFnZVVJQ2xpZW50VjQsIFdLUGFnZVVJQ2xpZW50VjUs
IFdLUGFnZVVJQ2xpZW50VjY+IFZlcnNpb25zOwogfTsKIAogI2lmIEVOQUJMRShDT05URVhUX01F
TlVTKQpAQCAtMTM0MSwzOCArMTM0Miw1NSBAQCB2b2lkIFdLUGFnZVNldFBhZ2VVSUNsaWVudChX
S1BhZ2VSZWYgcGFnZVJlZiwgY29uc3QgV0tQYWdlVUlDbGllbnRCYXNlKiB3a0NsaWVudAogICAg
ICAgICB9CiAKICAgICBwcml2YXRlOgotICAgICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2ViUGFn
ZVByb3h5PiBjcmVhdGVOZXdQYWdlKFdlYlBhZ2VQcm94eSogcGFnZSwgV2ViRnJhbWVQcm94eSos
IGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3Vy
Y2VSZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVhdHVyZXMsIGNvbnN0IE5h
dmlnYXRpb25BY3Rpb25EYXRhJiBuYXZpZ2F0aW9uQWN0aW9uRGF0YSkgb3ZlcnJpZGUKLSAgICAg
ICAgewotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC5iYXNlLnZlcnNpb24gJiYgIW1fY2xpZW50
LmNyZWF0ZU5ld1BhZ2VfZGVwcmVjYXRlZEZvclVzZVdpdGhWMCkKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgdmlydHVhbCBQYXNzUmVmUHRyPFdlYlBhZ2VQcm94eT4gY3JlYXRl
TmV3UGFnZShXZWJQYWdlUHJveHkqIHBhZ2UsIFdlYkZyYW1lUHJveHkqIGluaXRpYXRpbmdGcmFt
ZSwgY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBzZWN1cml0eU9yaWdpbkRhdGEsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2lu
ZG93RmVhdHVyZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb25EYXRhJiBuYXZpZ2F0aW9uQWN0aW9u
RGF0YSkgb3ZlcnJpZGUKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKG1fY2xpZW50LmJhc2Uu
dmVyc2lvbiA8IDYpIHsKKyAgICAgICAgICAgICAgICBpZiAoIW1fY2xpZW50LmJhc2UudmVyc2lv
biAmJiAhbV9jbGllbnQuY3JlYXRlTmV3UGFnZV9kZXByZWNhdGVkRm9yVXNlV2l0aFYwKQorICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICAgICAgICAgIGlmICgh
bV9jbGllbnQuY3JlYXRlTmV3UGFnZV9kZXByZWNhdGVkRm9yVXNlV2l0aFYxKQorICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICAgICAgICAgIEFQSTo6RGljdGlv
bmFyeTo6TWFwVHlwZSBtYXA7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvd0ZlYXR1cmVzLngp
CisgICAgICAgICAgICAgICAgICAgIG1hcC5zZXQoIngiLCBBUEk6OkRvdWJsZTo6Y3JlYXRlKCp3
aW5kb3dGZWF0dXJlcy54KSk7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvd0ZlYXR1cmVzLnkp
CisgICAgICAgICAgICAgICAgICAgIG1hcC5zZXQoInkiLCBBUEk6OkRvdWJsZTo6Y3JlYXRlKCp3
aW5kb3dGZWF0dXJlcy55KSk7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvd0ZlYXR1cmVzLndp
ZHRoKQorICAgICAgICAgICAgICAgICAgICBtYXAuc2V0KCJ3aWR0aCIsIEFQSTo6RG91YmxlOjpj
cmVhdGUoKndpbmRvd0ZlYXR1cmVzLndpZHRoKSk7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRv
d0ZlYXR1cmVzLmhlaWdodCkKKyAgICAgICAgICAgICAgICAgICAgbWFwLnNldCgiaGVpZ2h0Iiwg
QVBJOjpEb3VibGU6OmNyZWF0ZSgqd2luZG93RmVhdHVyZXMuaGVpZ2h0KSk7CisgICAgICAgICAg
ICAgICAgbWFwLnNldCgibWVudUJhclZpc2libGUiLCBBUEk6OkJvb2xlYW46OmNyZWF0ZSh3aW5k
b3dGZWF0dXJlcy5tZW51QmFyVmlzaWJsZSkpOworICAgICAgICAgICAgICAgIG1hcC5zZXQoInN0
YXR1c0JhclZpc2libGUiLCBBUEk6OkJvb2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcy5zdGF0
dXNCYXJWaXNpYmxlKSk7CisgICAgICAgICAgICAgICAgbWFwLnNldCgidG9vbEJhclZpc2libGUi
LCBBUEk6OkJvb2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcy50b29sQmFyVmlzaWJsZSkpOwor
ICAgICAgICAgICAgICAgIG1hcC5zZXQoImxvY2F0aW9uQmFyVmlzaWJsZSIsIEFQSTo6Qm9vbGVh
bjo6Y3JlYXRlKHdpbmRvd0ZlYXR1cmVzLmxvY2F0aW9uQmFyVmlzaWJsZSkpOworICAgICAgICAg
ICAgICAgIG1hcC5zZXQoInNjcm9sbGJhcnNWaXNpYmxlIiwgQVBJOjpCb29sZWFuOjpjcmVhdGUo
d2luZG93RmVhdHVyZXMuc2Nyb2xsYmFyc1Zpc2libGUpKTsKKyAgICAgICAgICAgICAgICBtYXAu
c2V0KCJyZXNpemFibGUiLCBBUEk6OkJvb2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcy5yZXNp
emFibGUpKTsKKyAgICAgICAgICAgICAgICBtYXAuc2V0KCJmdWxsc2NyZWVuIiwgQVBJOjpCb29s
ZWFuOjpjcmVhdGUod2luZG93RmVhdHVyZXMuZnVsbHNjcmVlbikpOworICAgICAgICAgICAgICAg
IG1hcC5zZXQoImRpYWxvZyIsIEFQSTo6Qm9vbGVhbjo6Y3JlYXRlKHdpbmRvd0ZlYXR1cmVzLmRp
YWxvZykpOworICAgICAgICAgICAgICAgIFJlZjxBUEk6OkRpY3Rpb25hcnk+IGZlYXR1cmVzTWFw
ID0gQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RGOjptb3ZlKG1hcCkpOworCisgICAgICAgICAg
ICAgICAgaWYgKCFtX2NsaWVudC5iYXNlLnZlcnNpb24pCisgICAgICAgICAgICAgICAgICAgIHJl
dHVybiBhZG9wdFJlZih0b0ltcGwobV9jbGllbnQuY3JlYXRlTmV3UGFnZV9kZXByZWNhdGVkRm9y
VXNlV2l0aFYwKHRvQVBJKHBhZ2UpLCB0b0FQSShmZWF0dXJlc01hcC5wdHIoKSksIHRvQVBJKG5h
dmlnYXRpb25BY3Rpb25EYXRhLm1vZGlmaWVycyksIHRvQVBJKG5hdmlnYXRpb25BY3Rpb25EYXRh
Lm1vdXNlQnV0dG9uKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkpOworCisgICAgICAgICAg
ICAgICAgUmVmPEFQSTo6VVJMUmVxdWVzdD4gcmVxdWVzdCA9IEFQSTo6VVJMUmVxdWVzdDo6Y3Jl
YXRlKHJlc291cmNlUmVxdWVzdCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKHRv
SW1wbChtX2NsaWVudC5jcmVhdGVOZXdQYWdlX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEodG9BUEko
cGFnZSksIHRvQVBJKHJlcXVlc3QucHRyKCkpLCB0b0FQSShmZWF0dXJlc01hcC5wdHIoKSksIHRv
QVBJKG5hdmlnYXRpb25BY3Rpb25EYXRhLm1vZGlmaWVycyksIHRvQVBJKG5hdmlnYXRpb25BY3Rp
b25EYXRhLm1vdXNlQnV0dG9uKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkpOworICAgICAg
ICAgICAgfQogCi0gICAgICAgICAgICBpZiAobV9jbGllbnQuYmFzZS52ZXJzaW9uID4gMCAmJiAh
bV9jbGllbnQuY3JlYXRlTmV3UGFnZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgICAgIGlmICghbV9jbGllbnQuY3JlYXRlTmV3UGFnZSkKKyAgICAgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKIAotICAgICAgICAgICAgQVBJOjpEaWN0aW9uYXJ5OjpNYXBUeXBlIG1hcDsK
LSAgICAgICAgICAgIGlmICh3aW5kb3dGZWF0dXJlcy54KQotICAgICAgICAgICAgICAgIG1hcC5z
ZXQoIngiLCBBUEk6OkRvdWJsZTo6Y3JlYXRlKCp3aW5kb3dGZWF0dXJlcy54KSk7Ci0gICAgICAg
ICAgICBpZiAod2luZG93RmVhdHVyZXMueSkKLSAgICAgICAgICAgICAgICBtYXAuc2V0KCJ5Iiwg
QVBJOjpEb3VibGU6OmNyZWF0ZSgqd2luZG93RmVhdHVyZXMueSkpOwotICAgICAgICAgICAgaWYg
KHdpbmRvd0ZlYXR1cmVzLndpZHRoKQotICAgICAgICAgICAgICAgIG1hcC5zZXQoIndpZHRoIiwg
QVBJOjpEb3VibGU6OmNyZWF0ZSgqd2luZG93RmVhdHVyZXMud2lkdGgpKTsKLSAgICAgICAgICAg
IGlmICh3aW5kb3dGZWF0dXJlcy5oZWlnaHQpCi0gICAgICAgICAgICAgICAgbWFwLnNldCgiaGVp
Z2h0IiwgQVBJOjpEb3VibGU6OmNyZWF0ZSgqd2luZG93RmVhdHVyZXMuaGVpZ2h0KSk7Ci0gICAg
ICAgICAgICBtYXAuc2V0KCJtZW51QmFyVmlzaWJsZSIsIEFQSTo6Qm9vbGVhbjo6Y3JlYXRlKHdp
bmRvd0ZlYXR1cmVzLm1lbnVCYXJWaXNpYmxlKSk7Ci0gICAgICAgICAgICBtYXAuc2V0KCJzdGF0
dXNCYXJWaXNpYmxlIiwgQVBJOjpCb29sZWFuOjpjcmVhdGUod2luZG93RmVhdHVyZXMuc3RhdHVz
QmFyVmlzaWJsZSkpOwotICAgICAgICAgICAgbWFwLnNldCgidG9vbEJhclZpc2libGUiLCBBUEk6
OkJvb2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcy50b29sQmFyVmlzaWJsZSkpOwotICAgICAg
ICAgICAgbWFwLnNldCgibG9jYXRpb25CYXJWaXNpYmxlIiwgQVBJOjpCb29sZWFuOjpjcmVhdGUo
d2luZG93RmVhdHVyZXMubG9jYXRpb25CYXJWaXNpYmxlKSk7Ci0gICAgICAgICAgICBtYXAuc2V0
KCJzY3JvbGxiYXJzVmlzaWJsZSIsIEFQSTo6Qm9vbGVhbjo6Y3JlYXRlKHdpbmRvd0ZlYXR1cmVz
LnNjcm9sbGJhcnNWaXNpYmxlKSk7Ci0gICAgICAgICAgICBtYXAuc2V0KCJyZXNpemFibGUiLCBB
UEk6OkJvb2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcy5yZXNpemFibGUpKTsKLSAgICAgICAg
ICAgIG1hcC5zZXQoImZ1bGxzY3JlZW4iLCBBUEk6OkJvb2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0
dXJlcy5mdWxsc2NyZWVuKSk7Ci0gICAgICAgICAgICBtYXAuc2V0KCJkaWFsb2ciLCBBUEk6OkJv
b2xlYW46OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcy5kaWFsb2cpKTsKLSAgICAgICAgICAgIFJlZjxB
UEk6OkRpY3Rpb25hcnk+IGZlYXR1cmVzTWFwID0gQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RG
Ojptb3ZlKG1hcCkpOwotCi0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LmJhc2UudmVyc2lvbikK
LSAgICAgICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYodG9JbXBsKG1fY2xpZW50LmNyZWF0ZU5l
d1BhZ2VfZGVwcmVjYXRlZEZvclVzZVdpdGhWMCh0b0FQSShwYWdlKSwgdG9BUEkoZmVhdHVyZXNN
YXAucHRyKCkpLCB0b0FQSShuYXZpZ2F0aW9uQWN0aW9uRGF0YS5tb2RpZmllcnMpLCB0b0FQSShu
YXZpZ2F0aW9uQWN0aW9uRGF0YS5tb3VzZUJ1dHRvbiksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5m
bykpKTsKKyAgICAgICAgICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IHBhZ2UtPmNvbmZpZ3VyYXRp
b24oKS5jb3B5KCk7CisgICAgICAgICAgICBjb25maWd1cmF0aW9uLT5zZXRSZWxhdGVkUGFnZShw
YWdlKTsKIAotICAgICAgICAgICAgUmVmPEFQSTo6VVJMUmVxdWVzdD4gcmVxdWVzdCA9IEFQSTo6
VVJMUmVxdWVzdDo6Y3JlYXRlKHJlc291cmNlUmVxdWVzdCk7Ci0gICAgICAgICAgICByZXR1cm4g
YWRvcHRSZWYodG9JbXBsKG1fY2xpZW50LmNyZWF0ZU5ld1BhZ2UodG9BUEkocGFnZSksIHRvQVBJ
KHJlcXVlc3QucHRyKCkpLCB0b0FQSShmZWF0dXJlc01hcC5wdHIoKSksIHRvQVBJKG5hdmlnYXRp
b25BY3Rpb25EYXRhLm1vZGlmaWVycyksIHRvQVBJKG5hdmlnYXRpb25BY3Rpb25EYXRhLm1vdXNl
QnV0dG9uKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkpOworICAgICAgICAgICAgYXV0byBz
b3VyY2VGcmFtZUluZm8gPSBBUEk6OkZyYW1lSW5mbzo6Y3JlYXRlKCppbml0aWF0aW5nRnJhbWUs
IHNlY3VyaXR5T3JpZ2luRGF0YS5zZWN1cml0eU9yaWdpbigpKTsKKworICAgICAgICAgICAgYm9v
bCBzaG91bGRPcGVuQXBwTGlua3MgPSAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKFdlYkNv
cmU6OlVSTChXZWJDb3JlOjpQYXJzZWRVUkxTdHJpbmcsIGluaXRpYXRpbmdGcmFtZS0+dXJsKCkp
LCByZXNvdXJjZVJlcXVlc3QudXJsKCkpOworICAgICAgICAgICAgYXV0byBhcGlOYXZpZ2F0aW9u
QWN0aW9uID0gQVBJOjpOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobmF2aWdhdGlvbkFjdGlvbkRh
dGEsIHNvdXJjZUZyYW1lSW5mby5wdHIoKSwgbnVsbHB0ciwgcmVzb3VyY2VSZXF1ZXN0LCBXZWJD
b3JlOjpVUkwoKSwgc2hvdWxkT3BlbkFwcExpbmtzKTsKKworICAgICAgICAgICAgYXV0byBhcGlX
aW5kb3dGZWF0dXJlcyA9IEFQSTo6V2luZG93RmVhdHVyZXM6OmNyZWF0ZSh3aW5kb3dGZWF0dXJl
cyk7CisKKyAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZih0b0ltcGwobV9jbGllbnQuY3JlYXRl
TmV3UGFnZSh0b0FQSShwYWdlKSwgdG9BUEkoY29uZmlndXJhdGlvbi5wdHIoKSksIHRvQVBJKGFw
aU5hdmlnYXRpb25BY3Rpb24ucHRyKCkpLCB0b0FQSShhcGlXaW5kb3dGZWF0dXJlcy5wdHIoKSks
IG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbykpKTsKICAgICAgICAgfQogCiAgICAgICAgIHZpcnR1
YWwgdm9pZCBzaG93UGFnZShXZWJQYWdlUHJveHkqIHBhZ2UpIG92ZXJyaWRlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlVUlDbGllbnQuaCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VVSUNsaWVudC5oCmluZGV4IGFhYWUwMmMw
Mjk2M2RiZmM0Nzg4MWUxNmI1ODI1ZGIwMjM4MDkyNjkuLmVlZDdiYjFmZjkxYzczMjRhZWQwMDEy
YjdhYWFiNDIyNTllOTVkMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS1BhZ2VVSUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1BhZ2VVSUNsaWVudC5oCkBAIC00OSw3ICs0OSw3IEBAIGVudW0gewogdHlwZWRlZiB1aW50
MzJfdCBXS1BsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uOwogCiB0eXBlZGVmIHZvaWQgKCpXS1Bh
Z2VVSUNsaWVudENhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qgdm9pZCogY2xpZW50SW5m
byk7Ci10eXBlZGVmIFdLUGFnZVJlZiAoKldLUGFnZUNyZWF0ZU5ld1BhZ2VDYWxsYmFjaykoV0tQ
YWdlUmVmIHBhZ2UsIFdLVVJMUmVxdWVzdFJlZiB1cmxSZXF1ZXN0LCBXS0RpY3Rpb25hcnlSZWYg
ZmVhdHVyZXMsIFdLRXZlbnRNb2RpZmllcnMgbW9kaWZpZXJzLCBXS0V2ZW50TW91c2VCdXR0b24g
bW91c2VCdXR0b24sIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwordHlwZWRlZiBXS1BhZ2VSZWYg
KCpXS1BhZ2VDcmVhdGVOZXdQYWdlQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBXS1BhZ2VDb25m
aWd1cmF0aW9uUmVmIGNvbmZpZ3VyYXRpb24sIFdLTmF2aWdhdGlvbkFjdGlvblJlZiBuYXZpZ2F0
aW9uQWN0aW9uLCBXS1dpbmRvd0ZlYXR1cmVzUmVmIHdpbmRvd0ZlYXR1cmVzLCBjb25zdCB2b2lk
ICpjbGllbnRJbmZvKTsKIHR5cGVkZWYgdm9pZCAoKldLUGFnZVJ1bkphdmFTY3JpcHRBbGVydENh
bGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgYWxlcnRUZXh0LCBXS0ZyYW1lUmVm
IGZyYW1lLCBXS1NlY3VyaXR5T3JpZ2luUmVmIHNlY3VyaXR5T3JpZ2luLCBjb25zdCB2b2lkICpj
bGllbnRJbmZvKTsKIHR5cGVkZWYgYm9vbCAoKldLUGFnZVJ1bkphdmFTY3JpcHRDb25maXJtQ2Fs
bGJhY2spKFdLUGFnZVJlZiBwYWdlLCBXS1N0cmluZ1JlZiBtZXNzYWdlLCBXS0ZyYW1lUmVmIGZy
YW1lLCBXS1NlY3VyaXR5T3JpZ2luUmVmIHNlY3VyaXR5T3JpZ2luLCBjb25zdCB2b2lkICpjbGll
bnRJbmZvKTsKIHR5cGVkZWYgV0tTdHJpbmdSZWYgKCpXS1BhZ2VSdW5KYXZhU2NyaXB0UHJvbXB0
Q2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBXS1N0cmluZ1JlZiBtZXNzYWdlLCBXS1N0cmluZ1Jl
ZiBkZWZhdWx0VmFsdWUsIFdLRnJhbWVSZWYgZnJhbWUsIFdLU2VjdXJpdHlPcmlnaW5SZWYgc2Vj
dXJpdHlPcmlnaW4sIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwpAQCAtMTAxLDYgKzEwMSw3IEBA
IHR5cGVkZWYgdm9pZCAoKldLUGFnZVVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZENhbGxi
YWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRoCiB0eXBlZGVmIHZvaWQgKCpXS1BhZ2VSdW5KYXZhU2Ny
aXB0QWxlcnRDYWxsYmFja19kZXByZWNhdGVkRm9yVXNlV2l0aFYwKShXS1BhZ2VSZWYgcGFnZSwg
V0tTdHJpbmdSZWYgYWxlcnRUZXh0LCBXS0ZyYW1lUmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGll
bnRJbmZvKTsKIHR5cGVkZWYgYm9vbCAoKldLUGFnZVJ1bkphdmFTY3JpcHRDb25maXJtQ2FsbGJh
Y2tfZGVwcmVjYXRlZEZvclVzZVdpdGhWMCkoV0tQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIG1l
c3NhZ2UsIFdLRnJhbWVSZWYgZnJhbWUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRl
ZiBXS1N0cmluZ1JlZiAoKldLUGFnZVJ1bkphdmFTY3JpcHRQcm9tcHRDYWxsYmFja19kZXByZWNh
dGVkRm9yVXNlV2l0aFYwKShXS1BhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tT
dHJpbmdSZWYgZGVmYXVsdFZhbHVlLCBXS0ZyYW1lUmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGll
bnRJbmZvKTsKK3R5cGVkZWYgV0tQYWdlUmVmICgqV0tQYWdlQ3JlYXRlTmV3UGFnZUNhbGxiYWNr
X2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEpKFdLUGFnZVJlZiBwYWdlLCBXS1VSTFJlcXVlc3RSZWYg
dXJsUmVxdWVzdCwgV0tEaWN0aW9uYXJ5UmVmIGZlYXR1cmVzLCBXS0V2ZW50TW9kaWZpZXJzIG1v
ZGlmaWVycywgV0tFdmVudE1vdXNlQnV0dG9uIG1vdXNlQnV0dG9uLCBjb25zdCB2b2lkICpjbGll
bnRJbmZvKTsKIAogdHlwZWRlZiBzdHJ1Y3QgV0tQYWdlVUlDbGllbnRCYXNlIHsKICAgICBpbnQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHZlcnNpb247CkBAIC0xOTcsNyArMTk4LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgV0tQYWdl
VUlDbGllbnRWMSB7CiAgICAgdm9pZCogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0X3Vu
YXZhaWxhYmxlOwogCiAgICAgLy8gVmVyc2lvbiAxLgotICAgIFdLUGFnZUNyZWF0ZU5ld1BhZ2VD
YWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlTmV3
UGFnZTsKKyAgICBXS1BhZ2VDcmVhdGVOZXdQYWdlQ2FsbGJhY2tfZGVwcmVjYXRlZEZvclVzZVdp
dGhWMSAgICAgICAgICAgICAgICAgIGNyZWF0ZU5ld1BhZ2U7CiAgICAgV0tQYWdlTW91c2VEaWRN
b3ZlT3ZlckVsZW1lbnRDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb3Vz
ZURpZE1vdmVPdmVyRWxlbWVudDsKICAgICBXS1BhZ2VEZWNpZGVQb2xpY3lGb3JOb3RpZmljYXRp
b25QZXJtaXNzaW9uUmVxdWVzdENhbGxiYWNrICAgICAgICAgIGRlY2lkZVBvbGljeUZvck5vdGlm
aWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0OwogICAgIFdLUGFnZVVuYXZhaWxhYmxlUGx1Z2luQnV0
dG9uQ2xpY2tlZENhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEgdW5hdmFpbGFibGVQbHVn
aW5CdXR0b25DbGlja2VkX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjE7CkBAIC0yNDgsNyArMjQ5LDcg
QEAgdHlwZWRlZiBzdHJ1Y3QgV0tQYWdlVUlDbGllbnRWMiB7CiAgICAgdm9pZCogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG91
bGRJbnRlcnJ1cHRKYXZhU2NyaXB0X3VuYXZhaWxhYmxlOwogCiAgICAgLy8gVmVyc2lvbiAxLgot
ICAgIFdLUGFnZUNyZWF0ZU5ld1BhZ2VDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY3JlYXRlTmV3UGFnZTsKKyAgICBXS1BhZ2VDcmVhdGVOZXdQYWdlQ2Fs
bGJhY2tfZGVwcmVjYXRlZEZvclVzZVdpdGhWMSAgICAgICAgICAgICAgICAgIGNyZWF0ZU5ld1Bh
Z2U7CiAgICAgV0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRDYWxsYmFjayAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtb3VzZURpZE1vdmVPdmVyRWxlbWVudDsKICAgICBXS1BhZ2VE
ZWNpZGVQb2xpY3lGb3JOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdENhbGxiYWNrICAgICAg
ICAgIGRlY2lkZVBvbGljeUZvck5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0OwogICAgIFdL
UGFnZVVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZENhbGxiYWNrX2RlcHJlY2F0ZWRGb3JV
c2VXaXRoVjEgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkX2RlcHJlY2F0ZWRGb3JVc2VX
aXRoVjE7CkBAIC0zMDQsNyArMzA1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgV0tQYWdlVUlDbGllbnRW
MyB7CiAgICAgdm9pZCogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzaG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0X3VuYXZhaWxhYmxl
OwogCiAgICAgLy8gVmVyc2lvbiAxLgotICAgIFdLUGFnZUNyZWF0ZU5ld1BhZ2VDYWxsYmFjayAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlTmV3UGFnZTsKKyAg
ICBXS1BhZ2VDcmVhdGVOZXdQYWdlQ2FsbGJhY2tfZGVwcmVjYXRlZEZvclVzZVdpdGhWMSAgICAg
ICAgICAgICAgICAgIGNyZWF0ZU5ld1BhZ2U7CiAgICAgV0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVs
ZW1lbnRDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb3VzZURpZE1vdmVP
dmVyRWxlbWVudDsKICAgICBXS1BhZ2VEZWNpZGVQb2xpY3lGb3JOb3RpZmljYXRpb25QZXJtaXNz
aW9uUmVxdWVzdENhbGxiYWNrICAgICAgICAgIGRlY2lkZVBvbGljeUZvck5vdGlmaWNhdGlvblBl
cm1pc3Npb25SZXF1ZXN0OwogICAgIFdLUGFnZVVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tl
ZENhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25D
bGlja2VkX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjE7CkBAIC0zNjMsNyArMzY0LDcgQEAgdHlwZWRl
ZiBzdHJ1Y3QgV0tQYWdlVUlDbGllbnRWNCB7CiAgICAgdm9pZCogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG91bGRJbnRlcnJ1
cHRKYXZhU2NyaXB0X3VuYXZhaWxhYmxlOwogCiAgICAgLy8gVmVyc2lvbiAxLgotICAgIFdLUGFn
ZUNyZWF0ZU5ld1BhZ2VDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY3JlYXRlTmV3UGFnZTsKKyAgICBXS1BhZ2VDcmVhdGVOZXdQYWdlQ2FsbGJhY2tfZGVw
cmVjYXRlZEZvclVzZVdpdGhWMSAgICAgICAgICAgICAgICAgIGNyZWF0ZU5ld1BhZ2U7CiAgICAg
V0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRDYWxsYmFjayAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtb3VzZURpZE1vdmVPdmVyRWxlbWVudDsKICAgICBXS1BhZ2VEZWNpZGVQb2xp
Y3lGb3JOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdENhbGxiYWNrICAgICAgICAgIGRlY2lk
ZVBvbGljeUZvck5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0OwogICAgIFdLUGFnZVVuYXZh
aWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZENhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEg
dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjE7CkBA
IC00MjgsNyArNDI5LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgV0tQYWdlVUlDbGllbnRWNSB7CiAgICAg
dm9pZCogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0X3VuYXZhaWxhYmxlOwogCiAgICAg
Ly8gVmVyc2lvbiAxLgotICAgIFdLUGFnZUNyZWF0ZU5ld1BhZ2VDYWxsYmFjayAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlTmV3UGFnZTsKKyAgICBXS1BhZ2VD
cmVhdGVOZXdQYWdlQ2FsbGJhY2tfZGVwcmVjYXRlZEZvclVzZVdpdGhWMSAgICAgICAgICAgICAg
ICAgIGNyZWF0ZU5ld1BhZ2U7CiAgICAgV0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRDYWxs
YmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb3VzZURpZE1vdmVPdmVyRWxlbWVu
dDsKICAgICBXS1BhZ2VEZWNpZGVQb2xpY3lGb3JOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVz
dENhbGxiYWNrICAgICAgICAgIGRlY2lkZVBvbGljeUZvck5vdGlmaWNhdGlvblBlcm1pc3Npb25S
ZXF1ZXN0OwogICAgIFdLUGFnZVVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZENhbGxiYWNr
X2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkX2Rl
cHJlY2F0ZWRGb3JVc2VXaXRoVjE7CkBAIC00NTYsNiArNDU3LDgzIEBAIHR5cGVkZWYgc3RydWN0
IFdLUGFnZVVJQ2xpZW50VjUgewogICAgIFdLUGFnZU1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hh
bmdlQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgbWVkaWFTZXNzaW9uTWV0YWRhdGFE
aWRDaGFuZ2U7CiB9IFdLUGFnZVVJQ2xpZW50VjU7CiAKK3R5cGVkZWYgc3RydWN0IFdLUGFnZVVJ
Q2xpZW50VjYgeworICAgIFdLUGFnZVVJQ2xpZW50QmFzZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZTsKKworICAgIC8vIFZlcnNpb24gMC4KKyAg
ICBXS1BhZ2VDcmVhdGVOZXdQYWdlQ2FsbGJhY2tfZGVwcmVjYXRlZEZvclVzZVdpdGhWMCAgICAg
ICAgICAgICAgICAgIGNyZWF0ZU5ld1BhZ2VfZGVwcmVjYXRlZEZvclVzZVdpdGhWMDsKKyAgICBX
S1BhZ2VVSUNsaWVudENhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNob3dQYWdlOworICAgIFdLUGFnZVVJQ2xpZW50Q2FsbGJhY2sgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2U7CisgICAgV0tQYWdlVGFr
ZUZvY3VzQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0YWtlRm9jdXM7CisgICAgV0tQYWdlRm9jdXNDYWxsYmFjayAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb2N1czsKKyAgICBXS1BhZ2VVbmZvY3VzQ2Fs
bGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuZm9j
dXM7CisgICAgV0tQYWdlUnVuSmF2YVNjcmlwdEFsZXJ0Q2FsbGJhY2tfZGVwcmVjYXRlZEZvclVz
ZVdpdGhWMCAgICAgICAgICAgICBydW5KYXZhU2NyaXB0QWxlcnRfZGVwcmVjYXRlZEZvclVzZVdp
dGhWMDsKKyAgICBXS1BhZ2VSdW5KYXZhU2NyaXB0Q29uZmlybUNhbGxiYWNrX2RlcHJlY2F0ZWRG
b3JVc2VXaXRoVjAgICAgICAgICAgIHJ1bkphdmFTY3JpcHRDb25maXJtX2RlcHJlY2F0ZWRGb3JV
c2VXaXRoVjA7CisgICAgV0tQYWdlUnVuSmF2YVNjcmlwdFByb21wdENhbGxiYWNrX2RlcHJlY2F0
ZWRGb3JVc2VXaXRoVjAgICAgICAgICAgICBydW5KYXZhU2NyaXB0UHJvbXB0X2RlcHJlY2F0ZWRG
b3JVc2VXaXRoVjA7CisgICAgV0tQYWdlU2V0U3RhdHVzVGV4dENhbGxiYWNrICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRTdGF0dXNUZXh0OworICAgIFdLUGFnZU1v
dXNlRGlkTW92ZU92ZXJFbGVtZW50Q2FsbGJhY2tfZGVwcmVjYXRlZEZvclVzZVdpdGhWMCAgICAg
ICAgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRfZGVwcmVjYXRlZEZvclVzZVdpdGhWMDsKKyAgICBX
S1BhZ2VNaXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tlZENhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VX
aXRoVjAgICAgIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkX2RlcHJlY2F0ZWRGb3JVc2VXaXRo
VjA7CisgICAgV0tQYWdlRGlkTm90SGFuZGxlS2V5RXZlbnRDYWxsYmFjayAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBkaWROb3RIYW5kbGVLZXlFdmVudDsKKyAgICBXS1BhZ2VEaWRO
b3RIYW5kbGVXaGVlbEV2ZW50Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGRpZE5vdEhhbmRsZVdoZWVsRXZlbnQ7CisgICAgV0tQYWdlR2V0VG9vbGJhcnNBcmVWaXNpYmxl
Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b29sYmFyc0FyZVZpc2li
bGU7CisgICAgV0tQYWdlU2V0VG9vbGJhcnNBcmVWaXNpYmxlQ2FsbGJhY2sgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzZXRUb29sYmFyc0FyZVZpc2libGU7CisgICAgV0tQYWdlR2V0
TWVudUJhcklzVmlzaWJsZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtZW51QmFySXNWaXNpYmxlOworICAgIFdLUGFnZVNldE1lbnVCYXJJc1Zpc2libGVDYWxsYmFj
ayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0TWVudUJhcklzVmlzaWJsZTsK
KyAgICBXS1BhZ2VHZXRTdGF0dXNCYXJJc1Zpc2libGVDYWxsYmFjayAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHN0YXR1c0JhcklzVmlzaWJsZTsKKyAgICBXS1BhZ2VTZXRTdGF0dXNC
YXJJc1Zpc2libGVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFN0
YXR1c0JhcklzVmlzaWJsZTsKKyAgICBXS1BhZ2VHZXRJc1Jlc2l6YWJsZUNhbGxiYWNrICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzUmVzaXphYmxlOworICAgIFdLUGFn
ZVNldElzUmVzaXphYmxlQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2V0SXNSZXNpemFibGU7CisgICAgV0tQYWdlR2V0V2luZG93RnJhbWVDYWxsYmFjayAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRXaW5kb3dGcmFtZTsKKyAg
ICBXS1BhZ2VTZXRXaW5kb3dGcmFtZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNldFdpbmRvd0ZyYW1lOworICAgIFdLUGFnZVJ1bkJlZm9yZVVubG9hZENv
bmZpcm1QYW5lbENhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVuQmVmb3JlVW5s
b2FkQ29uZmlybVBhbmVsOworICAgIFdLUGFnZVVJQ2xpZW50Q2FsbGJhY2sgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlkRHJhdzsKKyAgICBXS1BhZ2VVSUNs
aWVudENhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHBhZ2VEaWRTY3JvbGw7CisgICAgV0tQYWdlRXhjZWVkZWREYXRhYmFzZVF1b3RhQ2FsbGJhY2sg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNlZWRlZERhdGFiYXNlUXVvdGE7Cisg
ICAgV0tQYWdlUnVuT3BlblBhbmVsQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBydW5PcGVuUGFuZWw7CisgICAgV0tQYWdlRGVjaWRlUG9saWN5Rm9yR2Vv
bG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdENhbGxiYWNrICAgICAgICAgICBkZWNpZGVQb2xpY3lG
b3JHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0OworICAgIFdLUGFnZUhlYWRlckhlaWdodENh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVySGVp
Z2h0OworICAgIFdLUGFnZUZvb3RlckhlaWdodENhbGxiYWNrICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZm9vdGVySGVpZ2h0OworICAgIFdLUGFnZURyYXdIZWFkZXJD
YWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd0hl
YWRlcjsKKyAgICBXS1BhZ2VEcmF3Rm9vdGVyQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRyYXdGb290ZXI7CisgICAgV0tQYWdlUHJpbnRGcmFtZUNh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludEZy
YW1lOworICAgIFdLUGFnZVVJQ2xpZW50Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcnVuTW9kYWw7CisgICAgdm9pZCogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnVzZWQxOyAv
LyBVc2VkIHRvIGJlIGRpZENvbXBsZXRlUnViYmVyQmFuZEZvck1haW5GcmFtZQorICAgIFdLUGFn
ZVNhdmVEYXRhVG9GaWxlSW5Eb3dubG9hZHNGb2xkZXJDYWxsYmFjayAgICAgICAgICAgICAgICAg
ICAgICAgc2F2ZURhdGFUb0ZpbGVJbkRvd25sb2Fkc0ZvbGRlcjsKKyAgICB2b2lkKiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNo
b3VsZEludGVycnVwdEphdmFTY3JpcHRfdW5hdmFpbGFibGU7CisKKyAgICAvLyBWZXJzaW9uIDEu
CisgICAgV0tQYWdlQ3JlYXRlTmV3UGFnZUNhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjEg
ICAgICAgICAgICAgICAgICBjcmVhdGVOZXdQYWdlX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjE7Cisg
ICAgV0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRDYWxsYmFjayAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtb3VzZURpZE1vdmVPdmVyRWxlbWVudDsKKyAgICBXS1BhZ2VEZWNpZGVQ
b2xpY3lGb3JOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdENhbGxiYWNrICAgICAgICAgIGRl
Y2lkZVBvbGljeUZvck5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0OworICAgIFdLUGFnZVVu
YXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZENhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRo
VjEgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjE7
CisKKyAgICAvLyBWZXJzaW9uIDIuCisgICAgV0tQYWdlU2hvd0NvbG9yUGlja2VyQ2FsbGJhY2sg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93Q29sb3JQaWNrZXI7Cisg
ICAgV0tQYWdlSGlkZUNvbG9yUGlja2VyQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBoaWRlQ29sb3JQaWNrZXI7CisgICAgV0tQYWdlVW5hdmFpbGFibGVQbHVn
aW5CdXR0b25DbGlja2VkQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICB1bmF2YWlsYWJs
ZVBsdWdpbkJ1dHRvbkNsaWNrZWQ7CisKKyAgICAvLyBWZXJzaW9uIDMuCisgICAgV0tQYWdlUGlu
bmVkU3RhdGVEaWRDaGFuZ2VDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBwaW5uZWRTdGF0ZURpZENoYW5nZTsKKworICAgIC8vIFZlcnNpb24gNC4KKyAgICBXS1BhZ2VE
aWRCZWdpblRyYWNraW5nUG90ZW50aWFsTG9uZ01vdXNlUHJlc3NDYWxsYmFjayAgICAgICAgICAg
ICAgIGRpZEJlZ2luVHJhY2tpbmdQb3RlbnRpYWxMb25nTW91c2VQcmVzczsKKyAgICBXS1BhZ2VE
aWRSZWNvZ25pemVMb25nTW91c2VQcmVzc0NhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGRpZFJlY29nbml6ZUxvbmdNb3VzZVByZXNzOworICAgIFdLUGFnZURpZENhbmNlbFRyYWNr
aW5nUG90ZW50aWFsTG9uZ01vdXNlUHJlc3NDYWxsYmFjayAgICAgICAgICAgICAgZGlkQ2FuY2Vs
VHJhY2tpbmdQb3RlbnRpYWxMb25nTW91c2VQcmVzczsKKyAgICBXS1BhZ2VJc1BsYXlpbmdBdWRp
b0RpZENoYW5nZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzUGxheWlu
Z0F1ZGlvRGlkQ2hhbmdlOworCisgICAgLy8gVmVyc2lvbiA1LgorICAgIFdLUGFnZURlY2lkZVBv
bGljeUZvclVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0Q2FsbGJhY2sgICAgICAgICAgICAgZGVj
aWRlUG9saWN5Rm9yVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3Q7CisgICAgV0tQYWdlRGlkQ2xp
Y2tBdXRvRmlsbEJ1dHRvbkNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
aWRDbGlja0F1dG9GaWxsQnV0dG9uOworICAgIFdLUGFnZVJ1bkphdmFTY3JpcHRBbGVydENhbGxi
YWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVuSmF2YVNjcmlwdEFsZXJ0
OworICAgIFdLUGFnZVJ1bkphdmFTY3JpcHRDb25maXJtQ2FsbGJhY2sgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcnVuSmF2YVNjcmlwdENvbmZpcm07CisgICAgV0tQYWdlUnVuSmF2
YVNjcmlwdFByb21wdENhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy
dW5KYXZhU2NyaXB0UHJvbXB0OworICAgIFdLUGFnZU1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hh
bmdlQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgbWVkaWFTZXNzaW9uTWV0YWRhdGFE
aWRDaGFuZ2U7CisKKyAgICAvLyBWZXJzaW9uIDYuCisgICAgV0tQYWdlQ3JlYXRlTmV3UGFnZUNh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVOZXdQ
YWdlOworCit9IFdLUGFnZVVJQ2xpZW50VjY7CisKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tXaW5kb3dG
ZWF0dXJlc1JlZi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tXaW5kb3dG
ZWF0dXJlc1JlZi5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTkzMzhhNjYyYzI0ZTM0ZmEyMjQ1NTFiOGNhYWI4
NTAwYzUyMTBkYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS1dpbmRvd0ZlYXR1cmVzUmVmLmNwcApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisg
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldLV2luZG93RmVhdHVyZXNSZWYuaCIK
KworI2luY2x1ZGUgIkFQSVdpbmRvd0ZlYXR1cmVzLmgiCisjaW5jbHVkZSAiV0tBUElDYXN0Lmgi
CisKK1dLVHlwZUlEIFdLV2luZG93RmVhdHVyZXNHZXRUeXBlSUQoKQoreworICAgIHJldHVybiBX
ZWJLaXQ6OnRvQVBJKEFQSTo6V2luZG93RmVhdHVyZXM6OkFQSVR5cGUpOworfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLV2luZG93RmVhdHVyZXNSZWYuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1dpbmRvd0ZlYXR1cmVzUmVmLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNWRjOTQwNDc3MmJjMDJlNzU4ZDQ2OGJjYjFlY2Y3MjdmNzM4M2Y3MgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1dpbmRvd0ZlYXR1
cmVzUmVmLmgKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV0tXaW5kb3dG
ZWF0dXJlc1JlZl9oCisjZGVmaW5lIFdLV2luZG93RmVhdHVyZXNSZWZfaAorCisjaW5jbHVkZSA8
V2ViS2l0L1dLQmFzZS5oPgorCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2Vu
ZGlmCisKK1dLX0VYUE9SVCBXS1R5cGVJRCBXS1dpbmRvd0ZlYXR1cmVzR2V0VHlwZUlEKCk7CisK
KyNpZmRlZiBfX2NwbHVzcGx1cworfQorI2VuZGlmCisKKyNlbmRpZiAvLyBXS1dpbmRvd0ZlYXR1
cmVzUmVmX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXaW5kb3dGZWF0dXJlcy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXaW5kb3dGZWF0dXJlcy5tbQppbmRleCBiOTVlNjgyYzMxMjdiZGIxMWYxNjc4MmExMzlmZjQ4
OTIwOWJiMmE1Li5lYTU4ZmZiOTM0OTMyYmE5MzBjMGE3Y2MzMjkyZjVhNDNiNjMxNGViIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2luZG93RmVhdHVy
ZXMubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dpbmRvd0Zl
YXR1cmVzLm1tCkBAIC0zMSw4MCArMzEsNzIgQEAKICNpbXBvcnQgPFdlYkNvcmUvV2luZG93RmVh
dHVyZXMuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAotQGltcGxlbWVudGF0aW9uIFdL
V2luZG93RmVhdHVyZXMgewotICAgIFJldGFpblB0cjxOU051bWJlcj4gX21lbnVCYXJWaXNpYmls
aXR5OwotICAgIFJldGFpblB0cjxOU051bWJlcj4gX3N0YXR1c0JhclZpc2liaWxpdHk7Ci0gICAg
UmV0YWluUHRyPE5TTnVtYmVyPiBfdG9vbGJhcnNWaXNpYmlsaXR5OworQGltcGxlbWVudGF0aW9u
IFdLV2luZG93RmVhdHVyZXMKIAotICAgIFJldGFpblB0cjxOU051bWJlcj4gX2FsbG93c1Jlc2l6
aW5nOwotCi0gICAgUmV0YWluUHRyPE5TTnVtYmVyPiBfeDsKLSAgICBSZXRhaW5QdHI8TlNOdW1i
ZXI+IF95OwotICAgIFJldGFpblB0cjxOU051bWJlcj4gX3dpZHRoOwotICAgIFJldGFpblB0cjxO
U051bWJlcj4gX2hlaWdodDsKLX0KLQotLSAoaW5zdGFuY2V0eXBlKV9pbml0V2l0aFdpbmRvd0Zl
YXR1cmVzOihjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYpd2luZG93RmVhdHVyZXMKKy0g
KHZvaWQpZGVhbGxvYwogewotICAgIGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQotICAgICAg
ICByZXR1cm4gbmlsOwotCi0gICAgLy8gRklYTUU6IFRoZXNlIHNob3VsZCBiZSBzZXQgdG8gbmls
IGlmIHRoZSBmZWF0dXJlcyBkaWRuJ3QgZXhpc3QgaW4gdGhlIHN0cmluZy4KLSAgICBfbWVudUJh
clZpc2liaWxpdHkgPSBAKHdpbmRvd0ZlYXR1cmVzLm1lbnVCYXJWaXNpYmxlKTsKLSAgICBfc3Rh
dHVzQmFyVmlzaWJpbGl0eSA9IEAod2luZG93RmVhdHVyZXMuc3RhdHVzQmFyVmlzaWJsZSk7Ci0g
ICAgX3Rvb2xiYXJzVmlzaWJpbGl0eSA9IEAod2luZG93RmVhdHVyZXMudG9vbEJhclZpc2libGUg
fHwgd2luZG93RmVhdHVyZXMubG9jYXRpb25CYXJWaXNpYmxlKTsKLSAgICBfYWxsb3dzUmVzaXpp
bmcgPSBAKHdpbmRvd0ZlYXR1cmVzLnJlc2l6YWJsZSk7Ci0KLSAgICBpZiAod2luZG93RmVhdHVy
ZXMueCkKLSAgICAgICAgX3ggPSBAKCp3aW5kb3dGZWF0dXJlcy54KTsKLSAgICBpZiAod2luZG93
RmVhdHVyZXMueSkKLSAgICAgICAgX3kgPSBAKCp3aW5kb3dGZWF0dXJlcy55KTsKLSAgICBpZiAo
d2luZG93RmVhdHVyZXMud2lkdGgpCi0gICAgICAgIF93aWR0aCA9IEAoKndpbmRvd0ZlYXR1cmVz
LndpZHRoKTsKLSAgICBpZiAod2luZG93RmVhdHVyZXMuaGVpZ2h0KQotICAgICAgICBfaGVpZ2h0
ID0gQCgqd2luZG93RmVhdHVyZXMuaGVpZ2h0KTsKLQotICAgIHJldHVybiBzZWxmOworICAgIF93
aW5kb3dGZWF0dXJlcy0+QVBJOjpXaW5kb3dGZWF0dXJlczo6fldpbmRvd0ZlYXR1cmVzKCk7CisK
KyAgICBbc3VwZXIgZGVhbGxvY107CiB9CiAKIC0gKE5TTnVtYmVyICopbWVudUJhclZpc2liaWxp
dHkKIHsKLSAgICByZXR1cm4gX21lbnVCYXJWaXNpYmlsaXR5LmdldCgpOworICAgIHJldHVybiBA
KF93aW5kb3dGZWF0dXJlcy0+d2luZG93RmVhdHVyZXMoKS5tZW51QmFyVmlzaWJsZSk7CiB9CiAK
IC0gKE5TTnVtYmVyICopc3RhdHVzQmFyVmlzaWJpbGl0eQogewotICAgIHJldHVybiBfc3RhdHVz
QmFyVmlzaWJpbGl0eS5nZXQoKTsKKyAgICByZXR1cm4gQChfd2luZG93RmVhdHVyZXMtPndpbmRv
d0ZlYXR1cmVzKCkuc3RhdHVzQmFyVmlzaWJsZSk7CiB9CiAKIC0gKE5TTnVtYmVyICopdG9vbGJh
cnNWaXNpYmlsaXR5CiB7Ci0gICAgcmV0dXJuIF90b29sYmFyc1Zpc2liaWxpdHkuZ2V0KCk7Cisg
ICAgcmV0dXJuIEAoX3dpbmRvd0ZlYXR1cmVzLT53aW5kb3dGZWF0dXJlcygpLnRvb2xCYXJWaXNp
YmxlKTsKIH0KIAogLSAoTlNOdW1iZXIgKilhbGxvd3NSZXNpemluZwogewotICAgIHJldHVybiBf
YWxsb3dzUmVzaXppbmcuZ2V0KCk7CisgICAgcmV0dXJuIEAoX3dpbmRvd0ZlYXR1cmVzLT53aW5k
b3dGZWF0dXJlcygpLnJlc2l6YWJsZSk7CiB9CiAKIC0gKE5TTnVtYmVyICopeAogewotICAgIHJl
dHVybiBfeC5nZXQoKTsKKyAgICBpZiAoYXV0byB4ID0gX3dpbmRvd0ZlYXR1cmVzLT53aW5kb3dG
ZWF0dXJlcygpLngpCisgICAgICAgIHJldHVybiBAKCp4KTsKKworICAgIHJldHVybiBuaWw7CiB9
CiAKIC0gKE5TTnVtYmVyICopeQogewotICAgIHJldHVybiBfeS5nZXQoKTsKKyAgICBpZiAoYXV0
byB5ID0gX3dpbmRvd0ZlYXR1cmVzLT53aW5kb3dGZWF0dXJlcygpLnkpCisgICAgICAgIHJldHVy
biBAKCp5KTsKKworICAgIHJldHVybiBuaWw7CiB9CiAKIC0gKE5TTnVtYmVyICopd2lkdGgKIHsK
LSAgICByZXR1cm4gX3dpZHRoLmdldCgpOworICAgIGlmIChhdXRvIHdpZHRoID0gX3dpbmRvd0Zl
YXR1cmVzLT53aW5kb3dGZWF0dXJlcygpLndpZHRoKQorICAgICAgICByZXR1cm4gQCgqd2lkdGgp
OworCisgICAgcmV0dXJuIG5pbDsKIH0KIAogLSAoTlNOdW1iZXIgKiloZWlnaHQKIHsKLSAgICBy
ZXR1cm4gX2hlaWdodC5nZXQoKTsKKyAgICBpZiAoYXV0byBoZWlnaHQgPSBfd2luZG93RmVhdHVy
ZXMtPndpbmRvd0ZlYXR1cmVzKCkuaGVpZ2h0KQorICAgICAgICByZXR1cm4gQCgqaGVpZ2h0KTsK
KworICAgIHJldHVybiBuaWw7Cit9CisKKyNwcmFnbWEgbWFyayBXS09iamVjdCBwcm90b2NvbCBp
bXBsZW1lbnRhdGlvbgorCistIChBUEk6Ok9iamVjdCYpX2FwaU9iamVjdAoreworICAgIHJldHVy
biAqX3dpbmRvd0ZlYXR1cmVzOwogfQogCiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2luZG93RmVhdHVyZXNJbnRlcm5hbC5oIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dpbmRvd0ZlYXR1cmVzSW50ZXJuYWwuaApp
bmRleCAzNGVjYWE4YmNlODU0ZTMxYjNjNjVmZjEzZWFmMTQ3NmEwODU0ZGJiLi40YzkyZjA5ZjE0
ZTBlZDg5MjViN2U0YTI5ZTAwM2I3ZWVhMjg4NzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2luZG93RmVhdHVyZXNJbnRlcm5hbC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXaW5kb3dGZWF0dXJlc0ludGVybmFs
LmgKQEAgLTI3LDE0ICsyNywyMyBAQAogCiAjaWYgV0tfQVBJX0VOQUJMRUQKIAotbmFtZXNwYWNl
IFdlYkNvcmUgewotc3RydWN0IFdpbmRvd0ZlYXR1cmVzOwotfQorI2ltcG9ydCAiQVBJV2luZG93
RmVhdHVyZXMuaCIKKyNpbXBvcnQgIldLT2JqZWN0LmgiCisKK25hbWVzcGFjZSBXZWJLaXQgewog
Ci1AaW50ZXJmYWNlIFdLV2luZG93RmVhdHVyZXMgKCkKK2lubGluZSBXS1dpbmRvd0ZlYXR1cmVz
ICp3cmFwcGVyKEFQSTo6V2luZG93RmVhdHVyZXMmIHdpbmRvd0ZlYXR1cmVzKQoreworICAgIEFT
U0VSVChbd2luZG93RmVhdHVyZXMud3JhcHBlcigpIGlzS2luZE9mQ2xhc3M6W1dLV2luZG93RmVh
dHVyZXMgY2xhc3NdXSk7CiAKLS0gKGluc3RhbmNldHlwZSlfaW5pdFdpdGhXaW5kb3dGZWF0dXJl
czooY29uc3QgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMmKXdpbmRvd0ZlYXR1cmVzOworICAgIHJl
dHVybiAoV0tXaW5kb3dGZWF0dXJlcyAqKXdpbmRvd0ZlYXR1cmVzLndyYXBwZXIoKTsKK30KIAor
fQorQGludGVyZmFjZSBXS1dpbmRvd0ZlYXR1cmVzICgpIDxXS09iamVjdD4geworQHBhY2thZ2UK
KyAgICBBUEk6Ok9iamVjdFN0b3JhZ2U8QVBJOjpXaW5kb3dGZWF0dXJlcz4gX3dpbmRvd0ZlYXR1
cmVzOworfQogQGVuZAogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9Db2NvYS9VSURlbGVnYXRlLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29h
L1VJRGVsZWdhdGUubW0KaW5kZXggZWM5NTc1MGJmMDc4ZTAwNmQzYzEwMjE3MTdmNDcyZWFmOTdk
ZGE5MC4uYTI4YTljOTkwMDI4OGFhNTFjYTUyNTMzZTMzZTkzY2U5N2I4ODJlNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1VJRGVsZWdhdGUubW0KKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1VJRGVsZWdhdGUubW0KQEAgLTExNCw5ICsxMTQs
MTEgQEAgUGFzc1JlZlB0cjxXZWJLaXQ6OldlYlBhZ2VQcm94eT4gVUlEZWxlZ2F0ZTo6VUlDbGll
bnQ6OmNyZWF0ZU5ld1BhZ2UoV2ViS2l0OjpXZWIKICAgICBhdXRvIHNvdXJjZUZyYW1lSW5mbyA9
IEFQSTo6RnJhbWVJbmZvOjpjcmVhdGUoKmluaXRpYXRpbmdGcmFtZSwgc2VjdXJpdHlPcmlnaW5E
YXRhLnNlY3VyaXR5T3JpZ2luKCkpOwogCiAgICAgYm9vbCBzaG91bGRPcGVuQXBwTGlua3MgPSAh
cHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKFdlYkNvcmU6OlVSTChXZWJDb3JlOjpQYXJzZWRV
UkxTdHJpbmcsIGluaXRpYXRpbmdGcmFtZS0+dXJsKCkpLCByZXF1ZXN0LnVybCgpKTsKLSAgICBh
dXRvIG5hdmlnYXRpb25BY3Rpb24gPSBBUEk6Ok5hdmlnYXRpb25BY3Rpb246OmNyZWF0ZShuYXZp
Z2F0aW9uQWN0aW9uRGF0YSwgc291cmNlRnJhbWVJbmZvLnB0cigpLCBudWxscHRyLCByZXF1ZXN0
LCBXZWJDb3JlOjpVUkwoKSwgc2hvdWxkT3BlbkFwcExpbmtzKTsKKyAgICBhdXRvIGFwaU5hdmln
YXRpb25BY3Rpb24gPSBBUEk6Ok5hdmlnYXRpb25BY3Rpb246OmNyZWF0ZShuYXZpZ2F0aW9uQWN0
aW9uRGF0YSwgc291cmNlRnJhbWVJbmZvLnB0cigpLCBudWxscHRyLCByZXF1ZXN0LCBXZWJDb3Jl
OjpVUkwoKSwgc2hvdWxkT3BlbkFwcExpbmtzKTsKIAotICAgIFJldGFpblB0cjxXS1dlYlZpZXc+
IHdlYlZpZXcgPSBbZGVsZWdhdGUuZ2V0KCkgd2ViVmlldzptX3VpRGVsZWdhdGUubV93ZWJWaWV3
IGNyZWF0ZVdlYlZpZXdXaXRoQ29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpIGZvck5h
dmlnYXRpb25BY3Rpb246d3JhcHBlcihuYXZpZ2F0aW9uQWN0aW9uKSB3aW5kb3dGZWF0dXJlczph
ZG9wdE5TKFtbV0tXaW5kb3dGZWF0dXJlcyBhbGxvY10gX2luaXRXaXRoV2luZG93RmVhdHVyZXM6
d2luZG93RmVhdHVyZXNdKS5nZXQoKV07CisgICAgYXV0byBhcGlXaW5kb3dGZWF0dXJlcyA9IEFQ
STo6V2luZG93RmVhdHVyZXM6OmNyZWF0ZSh3aW5kb3dGZWF0dXJlcyk7CisKKyAgICBSZXRhaW5Q
dHI8V0tXZWJWaWV3PiB3ZWJWaWV3ID0gW2RlbGVnYXRlLmdldCgpIHdlYlZpZXc6bV91aURlbGVn
YXRlLm1fd2ViVmlldyBjcmVhdGVXZWJWaWV3V2l0aENvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlv
bi5nZXQoKSBmb3JOYXZpZ2F0aW9uQWN0aW9uOndyYXBwZXIoYXBpTmF2aWdhdGlvbkFjdGlvbikg
d2luZG93RmVhdHVyZXM6d3JhcHBlcihhcGlXaW5kb3dGZWF0dXJlcyldOwogCiAgICAgaWYgKCF3
ZWJWaWV3KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQyL1dl
YktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxZDQyOTVmZjI0ODk1NjYzMzY2
Njk4OTY5ZTA0MTk5YTdhYjc2NTg0Li40OTZmODUyM2NhYmE1NmNmZWI3N2JmZmNkZDU2YWQwYWRl
NDZkNGVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCkBAIC0yODUsNiArMjg1LDggQEAKIAkJMUE2NDI0NUUxMkRFMjlBMTAwQ0FBRTJD
IC8qIFVwZGF0ZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDFBNjQyNDVDMTJERTI5QTEwMENBQUUyQyAvKiBVcGRhdGVJbmZvLmggKi87IH07CiAJ
CTFBNjQyNDVGMTJERTI5QTEwMENBQUUyQyAvKiBVcGRhdGVJbmZvLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjQyNDVEMTJERTI5QTEwMENBQUUy
QyAvKiBVcGRhdGVJbmZvLmNwcCAqLzsgfTsKIAkJMUE2NTA5Q0UxOEI0MTQ2MjAwNjE0MzMyIC8q
IFdLUHJvY2Vzc1Bvb2xQcml2YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQTY1MDlDRDE4QjQxNDYyMDA2MTQzMzIgLyogV0tQcm9jZXNzUG9vbFBy
aXZhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkxQTY1NjNFNDFCN0E4QzUwMDA5Q0Y3ODcgLyogQVBJV2luZG93RmVhdHVyZXMuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE2NTYzRTIxQjdBOEM1
MDAwOUNGNzg3IC8qIEFQSVdpbmRvd0ZlYXR1cmVzLmNwcCAqLzsgfTsKKwkJMUE2NTYzRTUxQjdB
OEM1MDAwOUNGNzg3IC8qIEFQSVdpbmRvd0ZlYXR1cmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY1NjNFMzFCN0E4QzUwMDA5Q0Y3ODcgLyogQVBJ
V2luZG93RmVhdHVyZXMuaCAqLzsgfTsKIAkJMUE2NkJGOEYxOEEwNTJFRDAwMjA3MUI0IC8qIFdL
V2ViVmlld0ludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQTY2QkY4RTE4QTA1MkVEMDAyMDcxQjQgLyogV0tXZWJWaWV3SW50ZXJuYWwuaCAq
LzsgfTsKIAkJMUE2RjlGOTAxMUUxM0VGQzAwREIxMzcxIC8qIENvbW1hbmRMaW5lLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTZGOUY4RTExRTEzRUZD
MDBEQjEzNzEgLyogQ29tbWFuZExpbmUuaCAqLzsgfTsKIAkJMUE2RjlGQjcxMUUxNDA4NTAwREIx
MzcxIC8qIENvbW1hbmRMaW5lUE9TSVguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE2RjlGQjYxMUUxNDA4NTAwREIxMzcxIC8qIENvbW1hbmRMaW5l
UE9TSVguY3BwICovOyB9OwpAQCAtMzAwLDYgKzMwMiw4IEBACiAJCTFBNzI4NDQ4MTk1OUY4MDQw
MDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNzI4NDQ0MTk1OUVEMTAwMDA3QkNFNSAvKiBT
ZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcCAqLzsgfTsKIAkJMUE3ODY1QjkxNkNBQzcxNTAwQUNF
ODNBIC8qIFBsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTc4NjVCNzE2
Q0FDNzE1MDBBQ0U4M0EgLyogUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyTWVzc2FnZVJl
Y2VpdmVyLmNwcCAqLzsgfTsKIAkJMUE3ODY1QkExNkNBQzcxNTAwQUNFODNBIC8qIFBsdWdpblBy
b2Nlc3NDb25uZWN0aW9uTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTc4NjVCODE2Q0FDNzE1MDBBQ0U4M0EgLyogUGx1Z2lu
UHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJMUE3QzBERjYxQjdE
MUYxMDAwQTlCODQ4IC8qIFdLV2luZG93RmVhdHVyZXNSZWYuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3QzBERjQxQjdEMUYxMDAwQTlCODQ4IC8q
IFdLV2luZG93RmVhdHVyZXNSZWYuY3BwICovOyB9OworCQkxQTdDMERGNzFCN0QxRjEwMDBBOUI4
NDggLyogV0tXaW5kb3dGZWF0dXJlc1JlZi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE3QzBERjUxQjdEMUYxMDAwQTlCODQ4IC8qIFdLV2luZG93RmVh
dHVyZXNSZWYuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQkxQTdDNkNEQTEzNzg5NTA4MDBCOUMwNEQgLyogRW52aXJvbm1lbnRWYXJpYWJsZXMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3QzZDRDgx
Mzc4OTUwODAwQjlDMDREIC8qIEVudmlyb25tZW50VmFyaWFibGVzLmNwcCAqLzsgfTsKIAkJMUE3
QzZDREIxMzc4OTUwODAwQjlDMDREIC8qIEVudmlyb25tZW50VmFyaWFibGVzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTdDNkNEOTEzNzg5NTA4MDBC
OUMwNEQgLyogRW52aXJvbm1lbnRWYXJpYWJsZXMuaCAqLzsgfTsKIAkJMUE3RTM3NzUxOEU0QTMz
QTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVzc2FnZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBN0UzNzc0MThFNEEzM0EwMDNEMEZGRiAvKiBX
S1NjcmlwdE1lc3NhZ2VIYW5kbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHVi
bGljLCApOyB9OyB9OwpAQCAtMjM4Myw2ICsyMzg3LDggQEAKIAkJMUE2NDI0NUMxMkRFMjlBMTAw
Q0FBRTJDIC8qIFVwZGF0ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VXBkYXRlSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTY0MjQ1RDEyREUy
OUExMDBDQUFFMkMgLyogVXBkYXRlSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBVcGRhdGVJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUE2NTA5Q0QxOEI0MTQ2MjAwNjE0MzMyIC8qIFdLUHJvY2Vzc1Bvb2xQcml2YXRlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLUHJvY2Vzc1Bvb2xQcml2YXRlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNjU2M0UyMUI3QThDNTAwMDlDRjc4NyAvKiBBUElX
aW5kb3dGZWF0dXJlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBB
UElXaW5kb3dGZWF0dXJlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNjU2
M0UzMUI3QThDNTAwMDlDRjc4NyAvKiBBUElXaW5kb3dGZWF0dXJlcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBUElXaW5kb3dGZWF0dXJlcy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkxQTY2QkY4RTE4QTA1MkVEMDAyMDcxQjQgLyogV0tXZWJWaWV3SW50ZXJu
YWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tXZWJWaWV3SW50ZXJuYWwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE2RDE0MUYxQjAxNjdENTAwNzg1RkYw
IC8qIEluZm8tT1NYLTEwLjktMTAuMTAucGxpc3QgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnBsaXN0LnhtbDsg
cGF0aCA9ICJJbmZvLU9TWC0xMC45LTEwLjEwLnBsaXN0Ijsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMUE2RDE0MjExQjAxNjgxNjAwNzg1RkYwIC8qIFBsdWdpblNlcnZpY2UuMzItNjQt
MTAuOS0xMC4xMC5JbmZvLnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5wbGlzdC54bWw7IG5hbWUgPSAi
UGx1Z2luU2VydmljZS4zMi02NC0xMC45LTEwLjEwLkluZm8ucGxpc3QiOyBwYXRoID0gIlBsdWdp
blByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2VydmljZS9QbHVnaW5TZXJ2aWNlLjMyLTY0LTEw
LjktMTAuMTAuSW5mby5wbGlzdCI7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKQEAgLTI0
MDEsNiArMjQwNyw4IEBACiAJCTFBNzg2NUI2MTZDQUM2RkQwMEFDRTgzQSAvKiBQbHVnaW5Qcm9j
ZXNzQ29ubmVjdGlvbk1hbmFnZXIubWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGx1Z2luUHJvY2Vzc0Nvbm5l
Y3Rpb25NYW5hZ2VyLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
QTc4NjVCNzE2Q0FDNzE1MDBBQ0U4M0EgLyogUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2Vy
TWVzc2FnZVJlY2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNzg2NUI4MTZDQUM3MTUwMEFDRTgzQSAvKiBQbHVn
aW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXJNZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXJNZXNzYWdlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTdDMERGNDFCN0QxRjEwMDBBOUI4NDggLyog
V0tXaW5kb3dGZWF0dXJlc1JlZi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXS1dpbmRvd0ZlYXR1cmVzUmVmLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUE3QzBERjUxQjdEMUYxMDAwQTlCODQ4IC8qIFdLV2luZG93RmVhdHVyZXNSZWYuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tXaW5kb3dGZWF0dXJlc1JlZi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTdDNkNEODEzNzg5NTA4MDBCOUMwNEQgLyogRW52
aXJvbm1lbnRWYXJpYWJsZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRW52aXJvbm1lbnRWYXJpYWJsZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkxQTdDNkNEOTEzNzg5NTA4MDBCOUMwNEQgLyogRW52aXJvbm1lbnRWYXJpYWJsZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRW52aXJvbm1lbnRWYXJpYWJsZXMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE3REE1NEQxQUZEOEIzODAwMTgyMzlEIC8qIElu
Zm8tT1NYLTEwLjktMTAuMTAucGxpc3QgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnBsaXN0LnhtbDsgcGF0aCA9
ICJJbmZvLU9TWC0xMC45LTEwLjEwLnBsaXN0Ijsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTYyNTIsNiArNjI2MCw4IEBACiAJCQkJMUE0ODMyQzYxQTlCQzEzQzAwOEI0REZFIC8qIEFQ
SVdlYnNpdGVEYXRhUmVjb3JkLmggKi8sCiAJCQkJMUEzNjM1QTcxQTMxNDRBMzAwRUQ2MTk3IC8q
IEFQSVdlYnNpdGVEYXRhU3RvcmUuY3BwICovLAogCQkJCTFBMzYzNUE4MUEzMTQ0QTMwMEVENjE5
NyAvKiBBUElXZWJzaXRlRGF0YVN0b3JlLmggKi8sCisJCQkJMUE2NTYzRTIxQjdBOEM1MDAwOUNG
Nzg3IC8qIEFQSVdpbmRvd0ZlYXR1cmVzLmNwcCAqLywKKwkJCQkxQTY1NjNFMzFCN0E4QzUwMDA5
Q0Y3ODcgLyogQVBJV2luZG93RmVhdHVyZXMuaCAqLywKIAkJCSk7CiAJCQlwYXRoID0gQVBJOwog
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTYzODcsNiArNjM5Nyw4IEBACiAJCQkJN0M4
OUQyQTIxQTY3ODg3NTAwM0E1RkRFIC8qIFdLVXNlclNjcmlwdFJlZi5oICovLAogCQkJCTFBNTcx
MDlDMUFCQTAwMjcwMDJGQUJCRSAvKiBXS1dlYnNpdGVEYXRhU3RvcmVSZWYuY3BwICovLAogCQkJ
CTFBNTcxMDlEMUFCQTAwMjcwMDJGQUJCRSAvKiBXS1dlYnNpdGVEYXRhU3RvcmVSZWYuaCAqLywK
KwkJCQkxQTdDMERGNDFCN0QxRjEwMDBBOUI4NDggLyogV0tXaW5kb3dGZWF0dXJlc1JlZi5jcHAg
Ki8sCisJCQkJMUE3QzBERjUxQjdEMUYxMDAwQTlCODQ4IC8qIFdLV2luZG93RmVhdHVyZXNSZWYu
aCAqLywKIAkJCSk7CiAJCQlwYXRoID0gQzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBA
IC04MDQzLDYgKzgwNTUsNyBAQAogCQkJCTFBNDgzMkQ3MUE5Q0RGOTYwMDhCNERGRSAvKiBXZWJz
aXRlRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE0ODMyRDExQTlCREMyRjAwOEI0REZFIC8q
IFdlYnNpdGVEYXRhUmVjb3JkLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTUzQzJBQTFBMzI1NzMw
MDA0RThDNzAgLyogV2Vic2l0ZURhdGFTdG9yZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE2NTYz
RTUxQjdBOEM1MDAwOUNGNzg3IC8qIEFQSVdpbmRvd0ZlYXR1cmVzLmggaW4gSGVhZGVycyAqLywK
IAkJCQk4MzYwMzRBMDFBQ0IzNEQ2MDA2MjY1NDkgLyogV2ViU1FMaXRlRGF0YWJhc2VUcmFja2Vy
LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTUyQzBGODFBMzhDREM3MDAxNjE2MEEgLyogV2ViU3Rv
cmFnZU5hbWVzcGFjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0M1NzE1QjExNUFE
QUVGMDAxQ0NBRjkgLyogV2ViU3lzdGVtSW50ZXJmYWNlLmggaW4gSGVhZGVycyAqLywKQEAgLTgx
NjgsNiArODE4MSw3IEBACiAJCQkJQzU0MjU2QjgxOEJFQzE4QzAwREU0MTc5IC8qIFdLRm9ybVBv
cG92ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1NDI1NkJBMThCRUMxOEMwMERFNDE3OSAvKiBX
S0Zvcm1TZWxlY3RDb250cm9sLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0U0Njk1QTEyMTRFREY0
MDAwQjk4RUIgLyogV0tGb3JtU3VibWlzc2lvbkxpc3RlbmVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkxQTdDMERGNzFCN0QxRjEwMDBBOUI4NDggLyogV0tXaW5kb3dGZWF0dXJlc1JlZi5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMzdERkE3MDAxODEwQkI5MjAwMUY0QTlGIC8qIFdLRm91bmRhdGlvbi5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkNEMDEzOUIxMTBGQTQyMDAwM0I4QTY3IC8qIFdLRnJhbWUu
aCBpbiBIZWFkZXJzICovLAogCQkJCTFBNEQ2NjRDMThBMzAzMEUwMEQ4MkUyMSAvKiBXS0ZyYW1l
SW5mby5oIGluIEhlYWRlcnMgKi8sCkBAIC05MzY5LDYgKzkzODMsNyBAQAogCQkJCTdDRUZBOTYy
MUFDMDk5OTMwMEI5MTBGRCAvKiBBUElVc2VyQ29udGVudEV4dGVuc2lvblN0b3JlQ29jb2EubW0g
aW4gU291cmNlcyAqLywKIAkJCQk3Qzg5RDJBNjFBNjc4OUVBMDAzQTVGREUgLyogQVBJVXNlclNj
cmlwdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNUUxQUZFQzE2QjIxMDEyMDA2Q0MxRjIgLyog
QVBJV2ViQXJjaGl2ZS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFBN0MwREY2MUI3RDFGMTAwMEE5
Qjg0OCAvKiBXS1dpbmRvd0ZlYXR1cmVzUmVmLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUM1RTFB
RkVFMTZCMjEwMjUwMDZDQzFGMiAvKiBBUElXZWJBcmNoaXZlUmVzb3VyY2UubW0gaW4gU291cmNl
cyAqLywKIAkJCQkxQTQ4MzJDNzFBOUJDMTNDMDA4QjRERkUgLyogQVBJV2Vic2l0ZURhdGFSZWNv
cmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUEzNjM1QTkxQTMxNDRBMzAwRUQ2MTk3IC8qIEFQ
SVdlYnNpdGVEYXRhU3RvcmUuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDAzMSw2ICsxMDA0Niw3
IEBACiAJCQkJMzdCRjJGMDcxOTQ3REVCNDAwNzIzQzQ4IC8qIFdLTlNVUkxSZXF1ZXN0Lm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQkM0MDc2MDExMjRGRjAyNzAwNjhGMjBBIC8qIFdLTnVtYmVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTdDRDVFQkI4MTc0NkExNUIwMDBDMUM0NSAvKiBXS09iakNU
eXBlV3JhcHBlclJlZi5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFBNjU2M0U0MUI3QThDNTAwMDlD
Rjc4NyAvKiBBUElXaW5kb3dGZWF0dXJlcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzNzQ0MzY4
ODE4MjBFNzI0MDA0OTU3OUYgLyogV0tPYmplY3QubW0gaW4gU291cmNlcyAqLywKIAkJCQlCQzg1
ODA2MzEyQjg1MDU3MDBFREVCMkUgLyogV0tPcGVuUGFuZWxQYXJhbWV0ZXJzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUJDODU4MDYyMTJCODUwNTcwMEVERUIyRSAvKiBXS09wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyLmNwcCBpbiBTb3VyY2VzICovLAo=
</data>
<flag name="review"
          id="284116"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>