<?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>180220</bug_id>
          
          <creation_ts>2017-11-30 14:46:31 -0800</creation_ts>
          <short_desc>WKURLSchemeHandler.request should include HTTPBody</short_desc>
          <delta_ts>2018-10-10 12:59:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>beidson</cc>
    
    <cc>ccorcos</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1376531</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-11-30 14:46:31 -0800</bug_when>
    <thetext>WKURLSchemeHandler.request should include HTTPBody</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376534</commentid>
    <comment_count>1</comment_count>
      <attachid>328034</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-11-30 14:48:31 -0800</bug_when>
    <thetext>Created attachment 328034
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376538</commentid>
    <comment_count>2</comment_count>
      <attachid>328034</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-11-30 14:52:51 -0800</bug_when>
    <thetext>Comment on attachment 328034
Patch

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

&gt; Source/WebKit/Shared/URLSchemeTaskParameters.cpp:42
&gt; +    if (request.httpBody()) {
&gt; +        encoder &lt;&lt; true;
&gt; +        request.httpBody()-&gt;encode(encoder);

This is similar to NetworkResourceLoadParameters::encode except we are encoding to the UIProcess, so we don&apos;t need to encode sandbox extensions like we do there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376541</commentid>
    <comment_count>3</comment_count>
      <attachid>328036</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-11-30 15:00:46 -0800</bug_when>
    <thetext>Created attachment 328036
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376551</commentid>
    <comment_count>4</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-11-30 15:16:43 -0800</bug_when>
    <thetext>http://trac.webkit.org/r225358</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376552</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-30 15:18:42 -0800</bug_when>
    <thetext>&lt;rdar://problem/35784105&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1467804</commentid>
    <comment_count>6</comment_count>
    <who name="Chet Corcos">ccorcos</who>
    <bug_when>2018-10-10 12:59:43 -0700</bug_when>
    <thetext>Hey there, how do I know if / when this makes it into an iOS release?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328034</attachid>
            <date>2017-11-30 14:48:31 -0800</date>
            <delta_ts>2017-11-30 15:00:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180220-20171130144831.patch</filename>
            <type>text/plain</type>
            <size>21808</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjUzMDgpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE3LTExLTMwICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgV0tVUkxTY2hlbWVI
YW5kbGVyLnJlcXVlc3Qgc2hvdWxkIGluY2x1ZGUgSFRUUEJvZHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDIyMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJh
bWV0ZXJzLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0
ZXJzOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1l
dGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMu
aDogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VSTFNjaGVtZVRhc2su
bW06CisgICAgICAgICgtW1dLVVJMU2NoZW1lVGFza0ltcGwgcmVxdWVzdF0pOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OnN0YXJ0VVJMU2NoZW1lVGFzayk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW46CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2spOgorICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJVUkxTY2hlbWVIYW5kbGVyLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRh
c2suY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNrKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oOgorICAgICAgICAqIFdlYktpdC54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJV
UkxTY2hlbWVUYXNrUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNr
UHJveHk6OnN0YXJ0TG9hZGluZyk6CisKIDIwMTctMTEtMjkgIEJyYWR5IEVpZHNvbiAgPGJlaWRz
b25AYXBwbGUuY29tPgogCiAgICAgICAgIFdoZW4gbWFuYWdpbmcgY29udGV4dCBzdGFydHVwcywg
bWFrZSBTZXJ2aWNlV29ya2VySm9iRGF0YUlkZW50aWZpZXIncyBvcHRpb25hbC4KSW5kZXg6IFNv
dXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAJKG5v
bmV4aXN0ZW50KQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaCIKKwor
I2luY2x1ZGUgIkRlY29kZXIuaCIKKyNpbmNsdWRlICJFbmNvZGVyLmgiCisjaW5jbHVkZSAiV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCit2b2lkIFVSTFNj
aGVtZVRhc2tQYXJhbWV0ZXJzOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAor
eworICAgIGVuY29kZXIgPDwgaGFuZGxlcklkZW50aWZpZXI7CisgICAgZW5jb2RlciA8PCB0YXNr
SWRlbnRpZmllcjsKKyAgICBlbmNvZGVyIDw8IHJlcXVlc3Q7CisgICAgaWYgKHJlcXVlc3QuaHR0
cEJvZHkoKSkgeworICAgICAgICBlbmNvZGVyIDw8IHRydWU7CisgICAgICAgIHJlcXVlc3QuaHR0
cEJvZHkoKS0+ZW5jb2RlKGVuY29kZXIpOworICAgIH0gZWxzZQorICAgICAgICBlbmNvZGVyIDw8
IGZhbHNlOworfQorCitzdGQ6Om9wdGlvbmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBVUkxT
Y2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlcikKK3sKKyAg
ICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBoYW5kbGVySWRlbnRpZmllcjsKKyAgICBkZWNvZGVy
ID4+IGhhbmRsZXJJZGVudGlmaWVyOworICAgIGlmICghaGFuZGxlcklkZW50aWZpZXIpCisgICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgCisgICAgc3RkOjpvcHRpb25hbDx1aW50NjRf
dD4gdGFza0lkZW50aWZpZXI7CisgICAgZGVjb2RlciA+PiB0YXNrSWRlbnRpZmllcjsKKyAgICBp
ZiAoIXRhc2tJZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Q7CisgICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShyZXF1ZXN0KSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIHN0ZDo6b3B0
aW9uYWw8Ym9vbD4gaGFzSFRUUEJvZHk7CisgICAgZGVjb2RlciA+PiBoYXNIVFRQQm9keTsKKyAg
ICBpZiAoIWhhc0hUVFBCb2R5KQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIGlm
ICgqaGFzSFRUUEJvZHkpIHsKKyAgICAgICAgUmVmUHRyPFdlYkNvcmU6OkZvcm1EYXRhPiBmb3Jt
RGF0YSA9IFdlYkNvcmU6OkZvcm1EYXRhOjpkZWNvZGUoZGVjb2Rlcik7CisgICAgICAgIGlmICgh
Zm9ybURhdGEpCisgICAgICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgICAgICByZXF1
ZXN0LnNldEhUVFBCb2R5KFdURk1vdmUoZm9ybURhdGEpKTsKKyAgICB9CisKKyAgICByZXR1cm4g
e3sgV1RGTW92ZSgqaGFuZGxlcklkZW50aWZpZXIpLCBXVEZNb3ZlKCp0YXNrSWRlbnRpZmllciks
IFdURk1vdmUocmVxdWVzdCkgfX07Cit9CisgICAgCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaAko
bm9uZXhpc3RlbnQpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1l
dGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDYgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJh
Z21hIG9uY2UKKworI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CisKK25hbWVz
cGFjZSBJUEMgeworY2xhc3MgRW5jb2RlcjsKK2NsYXNzIERlY29kZXI7Cit9CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitzdHJ1Y3QgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgeworICAgIHVpbnQ2
NF90IGhhbmRsZXJJZGVudGlmaWVyIHsgMCB9OworICAgIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
IHsgMCB9OworICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0OworICAgIAorICAg
IHZvaWQgZW5jb2RlKElQQzo6RW5jb2RlciYpIGNvbnN0OworICAgIHN0YXRpYyBzdGQ6Om9wdGlv
bmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBkZWNvZGUoSVBDOjpEZWNvZGVyJik7Cit9Owor
Cit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcAkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzUsNiArNzUsNyBAQAogI2lu
Y2x1ZGUgIlByaW50SW5mby5oIgogI2luY2x1ZGUgIlRleHRDaGVja2VyLmgiCiAjaW5jbHVkZSAi
VGV4dENoZWNrZXJTdGF0ZS5oIgorI2luY2x1ZGUgIlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgi
CiAjaW5jbHVkZSAiVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5oIgogI2luY2x1ZGUg
IlVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiV0tDb250ZXh0UHJpdmF0ZS5o
IgpAQCAtNzEyMiwxMiArNzEyMywxMiBAQCBXZWJVUkxTY2hlbWVIYW5kbGVyKiBXZWJQYWdlUHJv
eHk6OnVybFNjCiAgICAgcmV0dXJuIG1fdXJsU2NoZW1lSGFuZGxlcnNCeVNjaGVtZS5nZXQoc2No
ZW1lKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OnN0YXJ0VVJMU2NoZW1lVGFzayh1aW50NjRf
dCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdGFydFVS
TFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogewotICAg
IGF1dG8gaXRlcmF0b3IgPSBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFu
ZGxlcklkZW50aWZpZXIpOworICAgIGF1dG8gaXRlcmF0b3IgPSBtX3VybFNjaGVtZUhhbmRsZXJz
QnlJZGVudGlmaWVyLmZpbmQocGFyYW1ldGVycy5oYW5kbGVySWRlbnRpZmllcik7CiAgICAgTUVT
U0FHRV9DSEVDSyhpdGVyYXRvciAhPSBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmVu
ZCgpKTsKIAotICAgIGl0ZXJhdG9yLT52YWx1ZS0+c3RhcnRUYXNrKCp0aGlzLCB0YXNrSWRlbnRp
ZmllciwgcmVxdWVzdCk7CisgICAgaXRlcmF0b3ItPnZhbHVlLT5zdGFydFRhc2soKnRoaXMsIHBh
cmFtZXRlcnMudGFza0lkZW50aWZpZXIsIFdURk1vdmUocGFyYW1ldGVycy5yZXF1ZXN0KSk7CiB9
CiAKIHZvaWQgV2ViUGFnZVByb3h5OjpzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTIyNyw2ICsyMjcs
NyBAQCBzdHJ1Y3QgTG9hZFBhcmFtZXRlcnM7CiBzdHJ1Y3QgUGxhdGZvcm1Qb3B1cE1lbnVEYXRh
Owogc3RydWN0IFByaW50SW5mbzsKIHN0cnVjdCBXZWJQb3B1cEl0ZW07CitzdHJ1Y3QgVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnM7CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKIGNsYXNzIFF1aWNrTG9v
a0RvY3VtZW50RGF0YTsKQEAgLTE2MjksNyArMTYzMCw3IEBAIHByaXZhdGU6CiAjZW5kaWYKICNl
bmRpZgogCi0gICAgdm9pZCBzdGFydFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50
aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmKTsKKyAgICB2b2lkIHN0YXJ0VVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1l
dGVycyYmKTsKICAgICB2b2lkIHN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVu
dGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcik7CiAKICAgICB2b2lkIGhhbmRsZUF1dG9G
aWxsQnV0dG9uQ2xpY2soY29uc3QgVXNlckRhdGEmKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4JKHJldmlzaW9uIDIyNTMwOCkK
KysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgkod29y
a2luZyBjb3B5KQpAQCAtNDk4LDcgKzQ5OCw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7
CiAKICAgICBTZXRJc1VzaW5nSGlnaFBlcmZvcm1hbmNlV2ViR0woYm9vbCBpc1VzaW5nSGlnaFBl
cmZvcm1hbmNlV2ViR0wpCiAKLSAgICBTdGFydFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxl
cklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QgcmVxdWVzdCkKKyAgICBTdGFydFVSTFNjaGVtZVRhc2soc3RydWN0IFdlYktpdDo6VVJM
U2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1ldGVycykKICAgICBTdG9wVVJMU2NoZW1lVGFzayh1
aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpCiAKICAg
ICBSZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJpbmcgc3ViRnJhbWVIb3N0LCBTdHJpbmcgdG9wRnJh
bWVIb3N0LCB1aW50NjRfdCBjb250ZXh0SUQpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcAkocmV2aXNpb24gMjI1MzA4KQorKysgU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTQ5LDkgKzQ5LDkgQEAgV2ViVVJMU2NoZW1lSGFuZGxlcjo6fldlYlVSTFNjaGVtZUhh
bmRsZQogICAgIEFTU0VSVChtX3Rhc2tzLmlzRW1wdHkoKSk7CiB9CiAKLXZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlcjo6c3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlcjo6c3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiB7Ci0gICAgYXV0byByZXN1bHQg
PSBtX3Rhc2tzLmFkZCh0YXNrSWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFzazo6Y3JlYXRlKCp0
aGlzLCBwYWdlLCB0YXNrSWRlbnRpZmllciwgcmVxdWVzdCkpOworICAgIGF1dG8gcmVzdWx0ID0g
bV90YXNrcy5hZGQodGFza0lkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2s6OmNyZWF0ZSgqdGhp
cywgcGFnZSwgdGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVxdWVzdCkpKTsKICAgICBBU1NFUlQo
cmVzdWx0LmlzTmV3RW50cnkpOwogCiAgICAgYXV0byBwYWdlRW50cnkgPSBtX3Rhc2tzQnlQYWdl
SWRlbnRpZmllci5hZGQocGFnZS5wYWdlSUQoKSwgSGFzaFNldDx1aW50NjRfdD4oKSk7CkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCShyZXZp
c2lvbiAyMjUzMDgpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5k
bGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDcgKzQ2LDcgQEAgcHVibGljOgogCiAgICAgdWlu
dDY0X3QgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCi0gICAg
dm9pZCBzdGFydFRhc2soV2ViUGFnZVByb3h5JiwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAgIHZvaWQgc3RhcnRUYXNrKFdlYlBh
Z2VQcm94eSYsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmJik7CiAgICAgdm9pZCBzdG9wVGFzayhXZWJQYWdlUHJveHkmLCB1aW50NjRfdCB0YXNrSWRl
bnRpZmllcik7CiAgICAgdm9pZCBzdG9wQWxsVGFza3NGb3JQYWdlKFdlYlBhZ2VQcm94eSYpOwog
ICAgIHZvaWQgdGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJik7CkluZGV4OiBTb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNwcAkocmV2aXNpb24gMjI1MzA4
KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTM1LDE3ICszNSwxNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAog
bmFtZXNwYWNlIFdlYktpdCB7CiAKLVJlZjxXZWJVUkxTY2hlbWVUYXNrPiBXZWJVUkxTY2hlbWVU
YXNrOjpjcmVhdGUoV2ViVVJMU2NoZW1lSGFuZGxlciYgaGFuZGxlciwgV2ViUGFnZVByb3h5JiBw
YWdlLCB1aW50NjRfdCByZXNvdXJjZUlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCkKK1JlZjxXZWJVUkxTY2hlbWVUYXNrPiBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUo
V2ViVVJMU2NoZW1lSGFuZGxlciYgaGFuZGxlciwgV2ViUGFnZVByb3h5JiBwYWdlLCB1aW50NjRf
dCByZXNvdXJjZUlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiB7Ci0gICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViVVJMU2NoZW1lVGFzayhoYW5kbGVyLCBwYWdlLCByZXNv
dXJjZUlkZW50aWZpZXIsIHJlcXVlc3QpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJV
UkxTY2hlbWVUYXNrKGhhbmRsZXIsIHBhZ2UsIHJlc291cmNlSWRlbnRpZmllciwgV1RGTW92ZShy
ZXF1ZXN0KSkpOwogfQogCi1XZWJVUkxTY2hlbWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNrKFdlYlVS
TFNjaGVtZUhhbmRsZXImIGhhbmRsZXIsIFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgcmVz
b3VyY2VJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCitXZWJVUkxT
Y2hlbWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNrKFdlYlVSTFNjaGVtZUhhbmRsZXImIGhhbmRsZXIs
IFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBSZXNvdXJj
ZVJlcXVlc3QmJiByZXF1ZXN0KQogICAgIDogbV91cmxTY2hlbWVIYW5kbGVyKGhhbmRsZXIpCiAg
ICAgLCBtX3BhZ2UoJnBhZ2UpCiAgICAgLCBtX2lkZW50aWZpZXIocmVzb3VyY2VJZGVudGlmaWVy
KQogICAgICwgbV9wYWdlSWRlbnRpZmllcihwYWdlLnBhZ2VJRCgpKQotICAgICwgbV9yZXF1ZXN0
KHJlcXVlc3QpCisgICAgLCBtX3JlcXVlc3QoV1RGTW92ZShyZXF1ZXN0KSkKIHsKIH0KIApJbmRl
eDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAkocmV2aXNpb24g
MjI1MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oCSh3
b3JraW5nIGNvcHkpCkBAIC00NCw3ICs0NCw3IEBAIGNsYXNzIFdlYlBhZ2VQcm94eTsKIGNsYXNz
IFdlYlVSTFNjaGVtZVRhc2sgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJVUkxTY2hlbWVUYXNrPiwg
cHVibGljIEluc3RhbmNlQ291bnRlZDxXZWJVUkxTY2hlbWVUYXNrPiB7CiAgICAgV1RGX01BS0Vf
Tk9OQ09QWUFCTEUoV2ViVVJMU2NoZW1lVGFzayk7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxX
ZWJVUkxTY2hlbWVUYXNrPiBjcmVhdGUoV2ViVVJMU2NoZW1lSGFuZGxlciYsIFdlYlBhZ2VQcm94
eSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
OworICAgIHN0YXRpYyBSZWY8V2ViVVJMU2NoZW1lVGFzaz4gY3JlYXRlKFdlYlVSTFNjaGVtZUhh
bmRsZXImLCBXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJik7CiAKICAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1
cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgdWludDY0X3QgcGFnZUlEKCkgY29uc3QgeyByZXR1cm4g
bV9wYWdlSWRlbnRpZmllcjsgfQpAQCAtNjgsNyArNjgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBw
YWdlRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViVVJMU2NoZW1lVGFzayhXZWJVUkxT
Y2hlbWVIYW5kbGVyJiwgV2ViUGFnZVByb3h5JiwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CisgICAgV2ViVVJMU2NoZW1lVGFzayhXZWJVUkxT
Y2hlbWVIYW5kbGVyJiwgV2ViUGFnZVByb3h5JiwgdWludDY0X3QgaWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwogCiAgICAgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+IG1f
dXJsU2NoZW1lSGFuZGxlcjsKICAgICBXZWJQYWdlUHJveHkqIG1fcGFnZTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VSTFNjaGVtZVRhc2subW0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVVJMU2NoZW1lVGFzay5t
bQkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L1dLVVJMU2NoZW1lVGFzay5tbQkod29ya2luZyBjb3B5KQpAQCAtNzEsNyArNzEsNyBAQCAtICh2
b2lkKWRlYWxsb2MKIAogLSAoTlNVUkxSZXF1ZXN0ICopcmVxdWVzdAogewotICAgIHJldHVybiBf
dXJsU2NoZW1lVGFzay0+dGFzaygpLnJlcXVlc3QoKS5uc1VSTFJlcXVlc3QoRG9Ob3RVcGRhdGVI
VFRQQm9keSk7CisgICAgcmV0dXJuIF91cmxTY2hlbWVUYXNrLT50YXNrKCkucmVxdWVzdCgpLm5z
VVJMUmVxdWVzdChVcGRhdGVIVFRQQm9keSk7CiB9CiAKIC0gKHZvaWQpZGlkUmVjZWl2ZVJlc3Bv
bnNlOihOU1VSTFJlc3BvbnNlICopcmVzcG9uc2UKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9X
ZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMjI1MzA4KQorKysgU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtMTE5Niw2ICsxMTk2LDggQEAKIAkJNUMxNDI3MTMxQzIzRjg5RTAwRDQxMTgzIC8qIERv
d25sb2FkQ29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1QzE0MjcwOTFDMjNGODY5MDBENDExODMgLyogRG93bmxvYWRDb2NvYS5tbSAqLzsgfTsK
IAkJNUMxNDI3MTgxQzIzRjhCNzAwRDQxMTgzIC8qIExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUMxNDI3
MTQxQzIzRjhCMDAwRDQxMTgzIC8qIExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlci5oICovOyB9
OwogCQk1QzE0MjcxRDFDMjNGOENGMDBENDExODMgLyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5h
Z2VyQ29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1QzE0MjcxQjFDMjNGOENDMDBENDExODMgLyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2Vy
Q29jb2EubW0gKi87IH07CisJCTVDMTlBNTIwMUZEMEIyOTUwMEVFQTMyMyAvKiBVUkxTY2hlbWVU
YXNrUGFyYW1ldGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNUMxOUE1MUYxRkQwQjE0NzAwRUVBMzIzIC8qIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
LmggKi87IH07CisJCTVDMTlBNTIxMUZEMEIyOUEwMEVFQTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFy
YW1ldGVycy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1QzE5QTUxRTFGRDBCMTQ2MDBFRUEzMjMgLyogVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3Bw
ICovOyB9OwogCQk1QzIwQ0I5RDFCQjBEQ0ZBMDA4OTVCQjEgLyogTmV0d29ya1Nlc3Npb25Db2Nv
YS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDMjBD
QjlCMUJCMERDRDIwMDg5NUJCMSAvKiBOZXR3b3JrU2Vzc2lvbkNvY29hLm1tICovOyB9OwogCQk1
QzIwQ0JBMDFCQjFFQ0Q4MDA4OTVCQjEgLyogTmV0d29ya1Nlc3Npb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDMjBDQjlFMUJCMEREMTgwMDg5NUJC
MSAvKiBOZXR3b3JrU2Vzc2lvbi5oICovOyB9OwogCQk1QzI5OERBMDFDM0RGMDIxMDA0NzBBRkUg
LyogUGVuZGluZ0Rvd25sb2FkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1QzI5OEQ5RTFDM0RFRjI5MDA0NzBBRkUgLyogUGVuZGluZ0Rvd25sb2FkLmgg
Ki87IH07CkBAIC0zNTc0LDYgKzM1NzYsOCBAQAogCQk1QzE0MjcxNDFDMjNGOEIwMDBENDExODMg
LyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlci5oOyBwYXRoID0gTmV0d29ya1By
b2Nlc3MvQ3VzdG9tUHJvdG9jb2xzL0xlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzE0MjcxNTFDMjNGOEIwMDBENDExODMgLyogTGVn
YWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFt
ZSA9IExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlci5tZXNzYWdlcy5pbjsgcGF0aCA9IE5ldHdv
cmtQcm9jZXNzL0N1c3RvbVByb3RvY29scy9MZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXIubWVz
c2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMTQyNzFCMUMyM0Y4Q0Mw
MEQ0MTE4MyAvKiBMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXJDb2NvYS5tbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdl
ckNvY29hLm1tOyBwYXRoID0gTmV0d29ya1Byb2Nlc3MvQ3VzdG9tUHJvdG9jb2xzL0NvY29hL0xl
Z2FjeUN1c3RvbVByb3RvY29sTWFuYWdlckNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1QzE5QTUxRTFGRDBCMTQ2MDBFRUEzMjMgLyogVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVVJMU2NoZW1lVGFz
a1BhcmFtZXRlcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzE5QTUxRjFG
RDBCMTQ3MDBFRUEzMjMgLyogVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyMENCOUIxQkIwRENEMjAwODk1QkIxIC8qIE5ldHdvcmtT
ZXNzaW9uQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBO
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tOyBwYXRoID0gTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29y
a1Nlc3Npb25Db2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyMENCOUUx
QkIwREQxODAwODk1QkIxIC8qIE5ldHdvcmtTZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IE5ldHdvcmtTZXNzaW9uLmg7IHBhdGggPSBOZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrU2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzI5OEQ5RTFDM0RF
RjI5MDA0NzBBRkUgLyogUGVuZGluZ0Rvd25sb2FkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IFBlbmRpbmdEb3dubG9hZC5oOyBwYXRoID0gTmV0d29ya1Byb2Nlc3MvRG93bmxv
YWRzL1BlbmRpbmdEb3dubG9hZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTEy
NCw2ICs1MTI4LDggQEAKIAkJCQkxQTVFNERBMzEyRDNCRDNEMDA5OUEyQkIgLyogVGV4dENoZWNr
ZXJTdGF0ZS5oICovLAogCQkJCTFBNjQyNDVEMTJERTI5QTEwMENBQUUyQyAvKiBVcGRhdGVJbmZv
LmNwcCAqLywKIAkJCQkxQTY0MjQ1QzEyREUyOUExMDBDQUFFMkMgLyogVXBkYXRlSW5mby5oICov
LAorCQkJCTVDMTlBNTFFMUZEMEIxNDYwMEVFQTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVy
cy5jcHAgKi8sCisJCQkJNUMxOUE1MUYxRkQwQjE0NzAwRUVBMzIzIC8qIFVSTFNjaGVtZVRhc2tQ
YXJhbWV0ZXJzLmggKi8sCiAJCQkJMUFDMTMzNjUxODU2NUI1NzAwRjNFQzA1IC8qIFVzZXJEYXRh
LmNwcCAqLywKIAkJCQkxQUMxMzM2NjE4NTY1QjU3MDBGM0VDMDUgLyogVXNlckRhdGEuaCAqLywK
IAkJCQkyNjg0MDU0QTE4Qjg2NkZGMDAyMkMzOEIgLyogVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRl
SW5mby5jcHAgKi8sCkBAIC04OTM0LDYgKzg5NDAsNyBAQAogCQkJCTUxNUJFMUE5MUQ1NTI5MzQw
MEREN0M2OCAvKiBVSUdhbWVwYWRQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0VFNEFF
MkIxQTVEQ0Y0MzAwMDJGNDlCIC8qIFVJS2l0U1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTY0
MjQ1RTEyREUyOUExMDBDQUFFMkMgLyogVXBkYXRlSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NUMxOUE1MjAxRkQwQjI5NTAwRUVBMzIzIC8qIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmggaW4g
SGVhZGVycyAqLywKIAkJCQkxQUMxMzM2ODE4NTY1QjU3MDBGM0VDMDUgLyogVXNlckRhdGEuaCBp
biBIZWFkZXJzICovLAogCQkJCUNENDkxQjA4MUU3MEQwNUYwMDAwOTA2NiAvKiBVc2VyTWVkaWFD
YXB0dXJlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0Q0OTFCMEUxRTczMkU0RDAwMDA5
MDY2IC8qIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovLApA
QCAtMTA1NDMsNiArMTA1NTAsNyBAQAogCQkJCTUxRTk0OTk3MUQ3NjIxMTMwMEVDOUVCOSAvKiBV
SUdhbWVwYWRQcm92aWRlcklPUy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTUxNUJFMUI3MUQ1QTk0
RkQwMEREN0M2OCAvKiBVSUdhbWVwYWRQcm92aWRlck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTFBNjQyNDVGMTJERTI5QTEwMENBQUUyQyAvKiBVcGRhdGVJbmZvLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTVDMTlBNTIxMUZEMEIyOUEwMEVFQTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVy
cy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUMxMzM2NzE4NTY1QjU3MDBGM0VDMDUgLyogVXNl
ckRhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q0OTFCMDcxRTcwRDA1RjAwMDA5MDY2IC8q
IFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNENDkxQjBE
MUU3MzJFNEQwMDAwOTA2NiAvKiBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlck1lc3NhZ2VSZWNlaXZl
ci5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcAkocmV2aXNpb24g
MjI1MzA4KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1l
VGFza1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2tQcm94eS5oIgogCisjaW5jbHVk
ZSAiVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaCIKICNpbmNsdWRlICJXZWJDb3JlQXJndW1lbnRD
b2RlcnMuaCIKICNpbmNsdWRlICJXZWJQYWdlLmgiCiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5TWVz
c2FnZXMuaCIKQEAgLTUxLDcgKzUyLDcgQEAgV2ViVVJMU2NoZW1lVGFza1Byb3h5OjpXZWJVUkxT
Y2hlbWVUYXNrUAogdm9pZCBXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0YXJ0TG9hZGluZygpCiB7
CiAgICAgQVNTRVJUKG1fY29yZUxvYWRlcik7Ci0gICAgbV91cmxTY2hlbWVIYW5kbGVyLnBhZ2Uo
KS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlN0YXJ0VVJMU2NoZW1lVGFzayhtX3VybFNj
aGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSwgbV9y
ZXF1ZXN0KSk7CisgICAgbV91cmxTY2hlbWVIYW5kbGVyLnBhZ2UoKS5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlN0YXJ0VVJMU2NoZW1lVGFzayh7bV91cmxTY2hlbWVIYW5kbGVyLmlkZW50
aWZpZXIoKSwgbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCksIG1fcmVxdWVzdH0pKTsKIH0KIAog
dm9pZCBXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0b3BMb2FkaW5nKCkKSW5kZXg6IFRvb2xzL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyNTM1MSkK
KysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE3
LTExLTMwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgV0tVUkxTY2hlbWVIYW5kbGVyLnJlcXVlc3Qgc2hvdWxkIGluY2x1ZGUgSFRUUEJvZHkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDIyMAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tJbnB1dERlbGVnYXRlLm1tOgorICAgICAgICAo
LVtGb3JtU3VibWlzc2lvbkRlbGVnYXRlIHdlYlZpZXc6c3RhcnRVUkxTY2hlbWVUYXNrOl0pOgor
CiAyMDE3LTExLTMwICBDYXJsb3MgQWxiZXJ0byBMb3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIEFkZCBhIHNjcmlwdCBmb3IgYXV0b21hdGljYWxseSBydW5uaW5nIHRo
ZSBidWlsZGJvdCBjb25maWd1cmF0aW9ucyBvbiBhIHRlc3QgZW52aXJvbm1lbnQuCkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL19XS0lucHV0RGVsZWdhdGUubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tJ
bnB1dERlbGVnYXRlLm1tCShyZXZpc2lvbiAyMjUzMDgpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL19XS0lucHV0RGVsZWdhdGUubW0JKHdvcmtpbmcgY29weSkKQEAg
LTQ1LDcgKzQ1LDkgQEAgLSAodm9pZCl3ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHN0YQog
ewogICAgIEVYUEVDVF9UUlVFKHdpbGxTdWJtaXRGb3JtVmFsdWVzQ2FsbGVkKTsKICAgICBFWFBF
Q1RfU1RSRVEodGFzay5yZXF1ZXN0LlVSTC5hYnNvbHV0ZVN0cmluZy5VVEY4U3RyaW5nLCAidGVz
dDovLy9mb3JtdGFyZ2V0Iik7Ci0gICAgRVhQRUNUX05VTEwodGFzay5yZXF1ZXN0LkhUVFBCb2R5
KTsKKyAgICBFWFBFQ1RfTk9UX05VTEwodGFzay5yZXF1ZXN0LkhUVFBCb2R5KTsKKyAgICBFWFBF
Q1RfRVEodGFzay5yZXF1ZXN0LkhUVFBCb2R5Lmxlbmd0aCwgNjJ1KTsKKyAgICBFWFBFQ1RfU1RS
RVEoc3RhdGljX2Nhc3Q8Y29uc3QgY2hhcio+KHRhc2sucmVxdWVzdC5IVFRQQm9keS5ieXRlcyks
ICJ0ZXN0bmFtZTE9dGVzdHZhbHVlMSZ0ZXN0bmFtZTI9dGVzdHZhbHVlMiZ0ZXN0bmFtZTM9dGVz
dHZhbHVlMyIpOwogICAgIGRvbmUgPSB0cnVlOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328036</attachid>
            <date>2017-11-30 15:00:46 -0800</date>
            <delta_ts>2017-11-30 15:16:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180220-20171130150045.patch</filename>
            <type>text/plain</type>
            <size>22292</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjUzMDgpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE3LTExLTMwICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgV0tVUkxTY2hlbWVI
YW5kbGVyLnJlcXVlc3Qgc2hvdWxkIGluY2x1ZGUgSFRUUEJvZHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDIyMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IEJyYWR5IEVpZHNvbi4KKworICAgICAgICAqIFNoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1l
dGVycy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVy
czo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRl
cnM6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmg6
IEFkZGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVUkxTY2hlbWVUYXNrLm1t
OgorICAgICAgICAoLVtXS1VSTFNjaGVtZVRhc2tJbXBsIHJlcXVlc3RdKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
OjpzdGFydFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
VVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNr
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFzazo6Y3JlYXRlKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFzazo6V2ViVVJMU2NoZW1lVGFzayk6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lVGFza1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1By
b3h5OjpzdGFydExvYWRpbmcpOgorCiAyMDE3LTExLTI5ICBCcmFkeSBFaWRzb24gIDxiZWlkc29u
QGFwcGxlLmNvbT4KIAogICAgICAgICBXaGVuIG1hbmFnaW5nIGNvbnRleHQgc3RhcnR1cHMsIG1h
a2UgU2VydmljZVdvcmtlckpvYkRhdGFJZGVudGlmaWVyJ3Mgb3B0aW9uYWwuCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L0NNYWtlTGlzdHMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ01h
a2VMaXN0cy50eHQJKHJldmlzaW9uIDIyNTMwOCkKKysrIFNvdXJjZS9XZWJLaXQvQ01ha2VMaXN0
cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTE4NCw2ICsxODQsNyBAQCBzZXQoV2ViS2l0X1NPVVJD
RVMKICAgICBTaGFyZWQvU2hhcmVkU3RyaW5nSGFzaFRhYmxlUmVhZE9ubHkuY3BwCiAgICAgU2hh
cmVkL1NoYXJlZFN0cmluZ0hhc2hUYWJsZS5jcHAKICAgICBTaGFyZWQvU3RhdGlzdGljc0RhdGEu
Y3BwCisgICAgU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcAogICAgIFNoYXJlZC9V
cGRhdGVJbmZvLmNwcAogICAgIFNoYXJlZC9Vc2VyRGF0YS5jcHAKICAgICBTaGFyZWQvV2ViQmFj
a0ZvcndhcmRMaXN0SXRlbS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVt
ZVRhc2tQYXJhbWV0ZXJzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9V
UkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAJKG5vbmV4aXN0ZW50KQorKysgU291cmNlL1dlYktp
dC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaCIKKworI2luY2x1ZGUgIkRlY29kZXIuaCIKKyNpbmNs
dWRlICJFbmNvZGVyLmgiCisjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCisKK25h
bWVzcGFjZSBXZWJLaXQgeworCit2b2lkIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzOjplbmNvZGUo
SVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAoreworICAgIGVuY29kZXIgPDwgaGFuZGxlcklk
ZW50aWZpZXI7CisgICAgZW5jb2RlciA8PCB0YXNrSWRlbnRpZmllcjsKKyAgICBlbmNvZGVyIDw8
IHJlcXVlc3Q7CisgICAgaWYgKHJlcXVlc3QuaHR0cEJvZHkoKSkgeworICAgICAgICBlbmNvZGVy
IDw8IHRydWU7CisgICAgICAgIHJlcXVlc3QuaHR0cEJvZHkoKS0+ZW5jb2RlKGVuY29kZXIpOwor
ICAgIH0gZWxzZQorICAgICAgICBlbmNvZGVyIDw8IGZhbHNlOworfQorCitzdGQ6Om9wdGlvbmFs
PFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2Rl
KElQQzo6RGVjb2RlciYgZGVjb2RlcikKK3sKKyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBo
YW5kbGVySWRlbnRpZmllcjsKKyAgICBkZWNvZGVyID4+IGhhbmRsZXJJZGVudGlmaWVyOworICAg
IGlmICghaGFuZGxlcklkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Cisg
ICAgCisgICAgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gdGFza0lkZW50aWZpZXI7CisgICAgZGVj
b2RlciA+PiB0YXNrSWRlbnRpZmllcjsKKyAgICBpZiAoIXRhc2tJZGVudGlmaWVyKQorICAgICAg
ICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJl
cXVlc3Q7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXF1ZXN0KSkKKyAgICAgICAgcmV0dXJu
IHN0ZDo6bnVsbG9wdDsKKworICAgIHN0ZDo6b3B0aW9uYWw8Ym9vbD4gaGFzSFRUUEJvZHk7Cisg
ICAgZGVjb2RlciA+PiBoYXNIVFRQQm9keTsKKyAgICBpZiAoIWhhc0hUVFBCb2R5KQorICAgICAg
ICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIGlmICgqaGFzSFRUUEJvZHkpIHsKKyAgICAgICAg
UmVmUHRyPFdlYkNvcmU6OkZvcm1EYXRhPiBmb3JtRGF0YSA9IFdlYkNvcmU6OkZvcm1EYXRhOjpk
ZWNvZGUoZGVjb2Rlcik7CisgICAgICAgIGlmICghZm9ybURhdGEpCisgICAgICAgICAgICByZXR1
cm4gc3RkOjpudWxsb3B0OworICAgICAgICByZXF1ZXN0LnNldEhUVFBCb2R5KFdURk1vdmUoZm9y
bURhdGEpKTsKKyAgICB9CisKKyAgICByZXR1cm4ge3sgV1RGTW92ZSgqaGFuZGxlcklkZW50aWZp
ZXIpLCBXVEZNb3ZlKCp0YXNrSWRlbnRpZmllciksIFdURk1vdmUocmVxdWVzdCkgfX07Cit9Cisg
ICAgCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1VS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFy
ZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaAkobm9uZXhpc3RlbnQpCisrKyBTb3VyY2UvV2Vi
S2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsNDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPFdlYkNv
cmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CisKK25hbWVzcGFjZSBJUEMgeworY2xhc3MgRW5jb2RlcjsK
K2NsYXNzIERlY29kZXI7Cit9CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdHJ1Y3QgVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMgeworICAgIHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyIHsgMCB9
OworICAgIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyIHsgMCB9OworICAgIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCByZXF1ZXN0OworICAgIAorICAgIHZvaWQgZW5jb2RlKElQQzo6RW5jb2RlciYp
IGNvbnN0OworICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
PiBkZWNvZGUoSVBDOjpEZWNvZGVyJik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkocmV2aXNpb24gMjI1
MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNzUsNiArNzUsNyBAQAogI2luY2x1ZGUgIlByaW50SW5mby5oIgogI2luY2x1
ZGUgIlRleHRDaGVja2VyLmgiCiAjaW5jbHVkZSAiVGV4dENoZWNrZXJTdGF0ZS5oIgorI2luY2x1
ZGUgIlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RQcm94eS5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyLmgi
CiAjaW5jbHVkZSAiV0tDb250ZXh0UHJpdmF0ZS5oIgpAQCAtNzEyMiwxMiArNzEyMywxMiBAQCBX
ZWJVUkxTY2hlbWVIYW5kbGVyKiBXZWJQYWdlUHJveHk6OnVybFNjCiAgICAgcmV0dXJuIG1fdXJs
U2NoZW1lSGFuZGxlcnNCeVNjaGVtZS5nZXQoc2NoZW1lKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJv
eHk6OnN0YXJ0VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCkKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdGFydFVSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1Bh
cmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogewotICAgIGF1dG8gaXRlcmF0b3IgPSBtX3VybFNjaGVt
ZUhhbmRsZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFuZGxlcklkZW50aWZpZXIpOworICAgIGF1dG8g
aXRlcmF0b3IgPSBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmZpbmQocGFyYW1ldGVy
cy5oYW5kbGVySWRlbnRpZmllcik7CiAgICAgTUVTU0FHRV9DSEVDSyhpdGVyYXRvciAhPSBtX3Vy
bFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmVuZCgpKTsKIAotICAgIGl0ZXJhdG9yLT52YWx1
ZS0+c3RhcnRUYXNrKCp0aGlzLCB0YXNrSWRlbnRpZmllciwgcmVxdWVzdCk7CisgICAgaXRlcmF0
b3ItPnZhbHVlLT5zdGFydFRhc2soKnRoaXMsIHBhcmFtZXRlcnMudGFza0lkZW50aWZpZXIsIFdU
Rk1vdmUocGFyYW1ldGVycy5yZXF1ZXN0KSk7CiB9CiAKIHZvaWQgV2ViUGFnZVByb3h5OjpzdG9w
VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2
aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIyNyw2ICsyMjcsNyBAQCBzdHJ1Y3QgTG9hZFBhcmFtZXRlcnM7
CiBzdHJ1Y3QgUGxhdGZvcm1Qb3B1cE1lbnVEYXRhOwogc3RydWN0IFByaW50SW5mbzsKIHN0cnVj
dCBXZWJQb3B1cEl0ZW07CitzdHJ1Y3QgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnM7CiAKICNpZiBV
U0UoUVVJQ0tfTE9PSykKIGNsYXNzIFF1aWNrTG9va0RvY3VtZW50RGF0YTsKQEAgLTE2MjksNyAr
MTYzMCw3IEBAIHByaXZhdGU6CiAjZW5kaWYKICNlbmRpZgogCi0gICAgdm9pZCBzdGFydFVSTFNj
aGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKKyAgICB2b2lkIHN0YXJ0VVJM
U2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmKTsKICAgICB2b2lkIHN0b3BVUkxT
Y2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRp
Zmllcik7CiAKICAgICB2b2lkIGhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soY29uc3QgVXNlckRh
dGEmKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdl
cy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
bWVzc2FnZXMuaW4JKHJldmlzaW9uIDIyNTMwOCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtNDk4LDcgKzQ5OCw3
IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAKICAgICBTZXRJc1VzaW5nSGlnaFBlcmZv
cm1hbmNlV2ViR0woYm9vbCBpc1VzaW5nSGlnaFBlcmZvcm1hbmNlV2ViR0wpCiAKLSAgICBTdGFy
dFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCkKKyAgICBTdGFydFVS
TFNjaGVtZVRhc2soc3RydWN0IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1l
dGVycykKICAgICBTdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
dWludDY0X3QgdGFza0lkZW50aWZpZXIpCiAKICAgICBSZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJp
bmcgc3ViRnJhbWVIb3N0LCBTdHJpbmcgdG9wRnJhbWVIb3N0LCB1aW50NjRfdCBjb250ZXh0SUQp
CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVy
LmNwcAkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJM
U2NoZW1lSGFuZGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDkgKzQ5LDkgQEAgV2ViVVJM
U2NoZW1lSGFuZGxlcjo6fldlYlVSTFNjaGVtZUhhbmRsZQogICAgIEFTU0VSVChtX3Rhc2tzLmlz
RW1wdHkoKSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKFdlYlBh
Z2VQcm94eSYgcGFnZSwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKFdlYlBh
Z2VQcm94eSYgcGFnZSwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QpCiB7Ci0gICAgYXV0byByZXN1bHQgPSBtX3Rhc2tzLmFkZCh0YXNrSWRlbnRpZmll
ciwgV2ViVVJMU2NoZW1lVGFzazo6Y3JlYXRlKCp0aGlzLCBwYWdlLCB0YXNrSWRlbnRpZmllciwg
cmVxdWVzdCkpOworICAgIGF1dG8gcmVzdWx0ID0gbV90YXNrcy5hZGQodGFza0lkZW50aWZpZXIs
IFdlYlVSTFNjaGVtZVRhc2s6OmNyZWF0ZSgqdGhpcywgcGFnZSwgdGFza0lkZW50aWZpZXIsIFdU
Rk1vdmUocmVxdWVzdCkpKTsKICAgICBBU1NFUlQocmVzdWx0LmlzTmV3RW50cnkpOwogCiAgICAg
YXV0byBwYWdlRW50cnkgPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5wYWdlSUQo
KSwgSGFzaFNldDx1aW50NjRfdD4oKSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJVUkxTY2hlbWVIYW5kbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCShyZXZpc2lvbiAyMjUzMDgpCisrKyBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ2
LDcgKzQ2LDcgQEAgcHVibGljOgogCiAgICAgdWludDY0X3QgaWRlbnRpZmllcigpIGNvbnN0IHsg
cmV0dXJuIG1faWRlbnRpZmllcjsgfQogCi0gICAgdm9pZCBzdGFydFRhc2soV2ViUGFnZVByb3h5
JiwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpOworICAgIHZvaWQgc3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgdm9pZCBzdG9wVGFzayhX
ZWJQYWdlUHJveHkmLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcik7CiAgICAgdm9pZCBzdG9wQWxs
VGFza3NGb3JQYWdlKFdlYlBhZ2VQcm94eSYpOwogICAgIHZvaWQgdGFza0NvbXBsZXRlZChXZWJV
UkxTY2hlbWVUYXNrJik7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hl
bWVUYXNrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxT
Y2hlbWVUYXNrLmNwcAkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViVVJMU2NoZW1lVGFzay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1LDE3ICszNSwxNyBA
QCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLVJlZjxX
ZWJVUkxTY2hlbWVUYXNrPiBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoV2ViVVJMU2NoZW1lSGFu
ZGxlciYgaGFuZGxlciwgV2ViUGFnZVByb3h5JiBwYWdlLCB1aW50NjRfdCByZXNvdXJjZUlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK1JlZjxXZWJVUkxTY2hlbWVU
YXNrPiBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoV2ViVVJMU2NoZW1lSGFuZGxlciYgaGFuZGxl
ciwgV2ViUGFnZVByb3h5JiBwYWdlLCB1aW50NjRfdCByZXNvdXJjZUlkZW50aWZpZXIsIFJlc291
cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViVVJM
U2NoZW1lVGFzayhoYW5kbGVyLCBwYWdlLCByZXNvdXJjZUlkZW50aWZpZXIsIHJlcXVlc3QpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJVUkxTY2hlbWVUYXNrKGhhbmRsZXIsIHBhZ2Us
IHJlc291cmNlSWRlbnRpZmllciwgV1RGTW92ZShyZXF1ZXN0KSkpOwogfQogCi1XZWJVUkxTY2hl
bWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNrKFdlYlVSTFNjaGVtZUhhbmRsZXImIGhhbmRsZXIsIFdl
YlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QpCitXZWJVUkxTY2hlbWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNr
KFdlYlVSTFNjaGVtZUhhbmRsZXImIGhhbmRsZXIsIFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0
X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQogICAgIDog
bV91cmxTY2hlbWVIYW5kbGVyKGhhbmRsZXIpCiAgICAgLCBtX3BhZ2UoJnBhZ2UpCiAgICAgLCBt
X2lkZW50aWZpZXIocmVzb3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9wYWdlSWRlbnRpZmllcihw
YWdlLnBhZ2VJRCgpKQotICAgICwgbV9yZXF1ZXN0KHJlcXVlc3QpCisgICAgLCBtX3JlcXVlc3Qo
V1RGTW92ZShyZXF1ZXN0KSkKIHsKIH0KIApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViVVJMU2NoZW1lVGFzay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlVSTFNjaGVtZVRhc2suaAkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw3ICs0NCw3
IEBAIGNsYXNzIFdlYlBhZ2VQcm94eTsKIGNsYXNzIFdlYlVSTFNjaGVtZVRhc2sgOiBwdWJsaWMg
UmVmQ291bnRlZDxXZWJVUkxTY2hlbWVUYXNrPiwgcHVibGljIEluc3RhbmNlQ291bnRlZDxXZWJV
UkxTY2hlbWVUYXNrPiB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoV2ViVVJMU2NoZW1lVGFz
ayk7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxXZWJVUkxTY2hlbWVUYXNrPiBjcmVhdGUoV2Vi
VVJMU2NoZW1lSGFuZGxlciYsIFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAgIHN0YXRpYyBSZWY8V2ViVVJMU2No
ZW1lVGFzaz4gY3JlYXRlKFdlYlVSTFNjaGVtZUhhbmRsZXImLCBXZWJQYWdlUHJveHkmLCB1aW50
NjRfdCBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7CiAKICAgICB1aW50
NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgdWlu
dDY0X3QgcGFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlSWRlbnRpZmllcjsgfQpAQCAtNjgs
NyArNjgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBwYWdlRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6
Ci0gICAgV2ViVVJMU2NoZW1lVGFzayhXZWJVUkxTY2hlbWVIYW5kbGVyJiwgV2ViUGFnZVByb3h5
JiwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7
CisgICAgV2ViVVJMU2NoZW1lVGFzayhXZWJVUkxTY2hlbWVIYW5kbGVyJiwgV2ViUGFnZVByb3h5
JiwgdWludDY0X3QgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwogCiAg
ICAgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+IG1fdXJsU2NoZW1lSGFuZGxlcjsKICAgICBXZWJQ
YWdlUHJveHkqIG1fcGFnZTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1VSTFNjaGVtZVRhc2subW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLVVJMU2NoZW1lVGFzay5tbQkocmV2aXNpb24gMjI1MzA4KQorKysgU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVVJMU2NoZW1lVGFzay5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtNzEsNyArNzEsNyBAQCAtICh2b2lkKWRlYWxsb2MKIAogLSAoTlNVUkxSZXF1
ZXN0ICopcmVxdWVzdAogewotICAgIHJldHVybiBfdXJsU2NoZW1lVGFzay0+dGFzaygpLnJlcXVl
c3QoKS5uc1VSTFJlcXVlc3QoRG9Ob3RVcGRhdGVIVFRQQm9keSk7CisgICAgcmV0dXJuIF91cmxT
Y2hlbWVUYXNrLT50YXNrKCkucmVxdWVzdCgpLm5zVVJMUmVxdWVzdChVcGRhdGVIVFRQQm9keSk7
CiB9CiAKIC0gKHZvaWQpZGlkUmVjZWl2ZVJlc3BvbnNlOihOU1VSTFJlc3BvbnNlICopcmVzcG9u
c2UKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTE5Niw2ICsxMTk2LDggQEAKIAkJ
NUMxNDI3MTMxQzIzRjg5RTAwRDQxMTgzIC8qIERvd25sb2FkQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzE0MjcwOTFDMjNGODY5MDBENDEx
ODMgLyogRG93bmxvYWRDb2NvYS5tbSAqLzsgfTsKIAkJNUMxNDI3MTgxQzIzRjhCNzAwRDQxMTgz
IC8qIExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUMxNDI3MTQxQzIzRjhCMDAwRDQxMTgzIC8qIExlZ2Fj
eUN1c3RvbVByb3RvY29sTWFuYWdlci5oICovOyB9OwogCQk1QzE0MjcxRDFDMjNGOENGMDBENDEx
ODMgLyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyQ29jb2EubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzE0MjcxQjFDMjNGOENDMDBENDExODMg
LyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyQ29jb2EubW0gKi87IH07CisJCTVDMTlBNTIw
MUZEMEIyOTUwMEVFQTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUMxOUE1MUYxRkQwQjE0NzAwRUVB
MzIzIC8qIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmggKi87IH07CisJCTVDMTlBNTIxMUZEMEIy
OUEwMEVFQTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzE5QTUxRTFGRDBCMTQ2MDBFRUEzMjMg
LyogVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwICovOyB9OwogCQk1QzIwQ0I5RDFCQjBEQ0ZB
MDA4OTVCQjEgLyogTmV0d29ya1Nlc3Npb25Db2NvYS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDMjBDQjlCMUJCMERDRDIwMDg5NUJCMSAvKiBOZXR3
b3JrU2Vzc2lvbkNvY29hLm1tICovOyB9OwogCQk1QzIwQ0JBMDFCQjFFQ0Q4MDA4OTVCQjEgLyog
TmV0d29ya1Nlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDVDMjBDQjlFMUJCMEREMTgwMDg5NUJCMSAvKiBOZXR3b3JrU2Vzc2lvbi5oICovOyB9
OwogCQk1QzI5OERBMDFDM0RGMDIxMDA0NzBBRkUgLyogUGVuZGluZ0Rvd25sb2FkLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzI5OEQ5RTFDM0RFRjI5
MDA0NzBBRkUgLyogUGVuZGluZ0Rvd25sb2FkLmggKi87IH07CkBAIC0zNTc0LDYgKzM1NzYsOCBA
QAogCQk1QzE0MjcxNDFDMjNGOEIwMDBENDExODMgLyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5h
Z2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExlZ2FjeUN1c3RvbVByb3Rv
Y29sTWFuYWdlci5oOyBwYXRoID0gTmV0d29ya1Byb2Nlc3MvQ3VzdG9tUHJvdG9jb2xzL0xlZ2Fj
eUN1c3RvbVByb3RvY29sTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1
QzE0MjcxNTFDMjNGOEIwMDBENDExODMgLyogTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyLm1l
c3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IExlZ2FjeUN1c3RvbVByb3RvY29sTWFu
YWdlci5tZXNzYWdlcy5pbjsgcGF0aCA9IE5ldHdvcmtQcm9jZXNzL0N1c3RvbVByb3RvY29scy9M
ZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXIubWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDMTQyNzFCMUMyM0Y4Q0MwMEQ0MTE4MyAvKiBMZWdhY3lDdXN0b21Qcm90
b2NvbE1hbmFnZXJDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFt
ZSA9IExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlckNvY29hLm1tOyBwYXRoID0gTmV0d29ya1By
b2Nlc3MvQ3VzdG9tUHJvdG9jb2xzL0NvY29hL0xlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlckNv
Y29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzE5QTUxRTFGRDBCMTQ2MDBF
RUEzMjMgLyogVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1QzE5QTUxRjFGRDBCMTQ3MDBFRUEzMjMgLyogVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyMENC
OUIxQkIwRENEMjAwODk1QkIxIC8qIE5ldHdvcmtTZXNzaW9uQ29jb2EubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBOZXR3b3JrU2Vzc2lvbkNvY29hLm1tOyBwYXRo
ID0gTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyMENCOUUxQkIwREQxODAwODk1QkIxIC8qIE5ldHdvcmtT
ZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE5ldHdvcmtTZXNzaW9u
Lmg7IHBhdGggPSBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1QzI5OEQ5RTFDM0RFRjI5MDA0NzBBRkUgLyogUGVuZGluZ0Rvd25s
b2FkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBlbmRpbmdEb3dubG9hZC5o
OyBwYXRoID0gTmV0d29ya1Byb2Nlc3MvRG93bmxvYWRzL1BlbmRpbmdEb3dubG9hZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTEyNCw2ICs1MTI4LDggQEAKIAkJCQkxQTVFNERB
MzEyRDNCRDNEMDA5OUEyQkIgLyogVGV4dENoZWNrZXJTdGF0ZS5oICovLAogCQkJCTFBNjQyNDVE
MTJERTI5QTEwMENBQUUyQyAvKiBVcGRhdGVJbmZvLmNwcCAqLywKIAkJCQkxQTY0MjQ1QzEyREUy
OUExMDBDQUFFMkMgLyogVXBkYXRlSW5mby5oICovLAorCQkJCTVDMTlBNTFFMUZEMEIxNDYwMEVF
QTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAgKi8sCisJCQkJNUMxOUE1MUYxRkQw
QjE0NzAwRUVBMzIzIC8qIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmggKi8sCiAJCQkJMUFDMTMz
NjUxODU2NUI1NzAwRjNFQzA1IC8qIFVzZXJEYXRhLmNwcCAqLywKIAkJCQkxQUMxMzM2NjE4NTY1
QjU3MDBGM0VDMDUgLyogVXNlckRhdGEuaCAqLywKIAkJCQkyNjg0MDU0QTE4Qjg2NkZGMDAyMkMz
OEIgLyogVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mby5jcHAgKi8sCkBAIC04OTM0LDYgKzg5
NDAsNyBAQAogCQkJCTUxNUJFMUE5MUQ1NTI5MzQwMEREN0M2OCAvKiBVSUdhbWVwYWRQcm92aWRl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0VFNEFFMkIxQTVEQ0Y0MzAwMDJGNDlCIC8qIFVJS2l0
U1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTY0MjQ1RTEyREUyOUExMDBDQUFFMkMgLyogVXBk
YXRlSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUMxOUE1MjAxRkQwQjI5NTAwRUVBMzIzIC8q
IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUMxMzM2ODE4
NTY1QjU3MDBGM0VDMDUgLyogVXNlckRhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJCUNENDkxQjA4
MUU3MEQwNUYwMDAwOTA2NiAvKiBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q0OTFCMEUxRTczMkU0RDAwMDA5MDY2IC8qIFVzZXJNZWRpYUNhcHR1cmVNYW5h
Z2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMTA1NDMsNiArMTA1NTAsNyBAQAogCQkJ
CTUxRTk0OTk3MUQ3NjIxMTMwMEVDOUVCOSAvKiBVSUdhbWVwYWRQcm92aWRlcklPUy5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTUxNUJFMUI3MUQ1QTk0RkQwMEREN0M2OCAvKiBVSUdhbWVwYWRQcm92
aWRlck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTFBNjQyNDVGMTJERTI5QTEwMENBQUUyQyAv
KiBVcGRhdGVJbmZvLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTVDMTlBNTIxMUZEMEIyOUEwMEVF
QTMyMyAvKiBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkx
QUMxMzM2NzE4NTY1QjU3MDBGM0VDMDUgLyogVXNlckRhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q0OTFCMDcxRTcwRDA1RjAwMDA5MDY2IC8qIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUNENDkxQjBEMUU3MzJFNEQwMDAwOTA2NiAvKiBVc2VyTWVk
aWFDYXB0dXJlTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lVGFza1Byb3h5LmNwcAkocmV2aXNpb24gMjI1MzA4KQorKysgU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlVS
TFNjaGVtZVRhc2tQcm94eS5oIgogCisjaW5jbHVkZSAiVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMu
aCIKICNpbmNsdWRlICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKICNpbmNsdWRlICJXZWJQYWdl
LmgiCiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5TWVzc2FnZXMuaCIKQEAgLTUxLDcgKzUyLDcgQEAg
V2ViVVJMU2NoZW1lVGFza1Byb3h5OjpXZWJVUkxTY2hlbWVUYXNrUAogdm9pZCBXZWJVUkxTY2hl
bWVUYXNrUHJveHk6OnN0YXJ0TG9hZGluZygpCiB7CiAgICAgQVNTRVJUKG1fY29yZUxvYWRlcik7
Ci0gICAgbV91cmxTY2hlbWVIYW5kbGVyLnBhZ2UoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlN0YXJ0VVJMU2NoZW1lVGFzayhtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBt
X2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSwgbV9yZXF1ZXN0KSk7CisgICAgbV91cmxTY2hlbWVI
YW5kbGVyLnBhZ2UoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlN0YXJ0VVJMU2NoZW1l
VGFzayh7bV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgbV9jb3JlTG9hZGVyLT5pZGVu
dGlmaWVyKCksIG1fcmVxdWVzdH0pKTsKIH0KIAogdm9pZCBXZWJVUkxTY2hlbWVUYXNrUHJveHk6
OnN0b3BMb2FkaW5nKCkKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyNTM1MSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE3LTExLTMwICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgV0tVUkxTY2hlbWVIYW5kbGVyLnJl
cXVlc3Qgc2hvdWxkIGluY2x1ZGUgSFRUUEJvZHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDIyMAorCisgICAgICAgIFJldmlld2VkIGJ5IEJyYWR5
IEVpZHNvbi4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dL
SW5wdXREZWxlZ2F0ZS5tbToKKyAgICAgICAgKC1bRm9ybVN1Ym1pc3Npb25EZWxlZ2F0ZSB3ZWJW
aWV3OnN0YXJ0VVJMU2NoZW1lVGFzazpdKToKKwogMjAxNy0xMS0zMCAgQ2FybG9zIEFsYmVydG8g
TG9wZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBBZGQgYSBzY3JpcHQg
Zm9yIGF1dG9tYXRpY2FsbHkgcnVubmluZyB0aGUgYnVpbGRib3QgY29uZmlndXJhdGlvbnMgb24g
YSB0ZXN0IGVudmlyb25tZW50LgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9fV0tJbnB1dERlbGVnYXRlLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLSW5wdXREZWxlZ2F0ZS5tbQkocmV2aXNpb24gMjI1
MzA4KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tJbnB1dERl
bGVnYXRlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0NSw5IEBAIC0gKHZvaWQpd2ViVmll
dzooV0tXZWJWaWV3ICopd2ViVmlldyBzdGEKIHsKICAgICBFWFBFQ1RfVFJVRSh3aWxsU3VibWl0
Rm9ybVZhbHVlc0NhbGxlZCk7CiAgICAgRVhQRUNUX1NUUkVRKHRhc2sucmVxdWVzdC5VUkwuYWJz
b2x1dGVTdHJpbmcuVVRGOFN0cmluZywgInRlc3Q6Ly8vZm9ybXRhcmdldCIpOwotICAgIEVYUEVD
VF9OVUxMKHRhc2sucmVxdWVzdC5IVFRQQm9keSk7CisgICAgRVhQRUNUX05PVF9OVUxMKHRhc2su
cmVxdWVzdC5IVFRQQm9keSk7CisgICAgRVhQRUNUX0VRKHRhc2sucmVxdWVzdC5IVFRQQm9keS5s
ZW5ndGgsIDYydSk7CisgICAgRVhQRUNUX1NUUkVRKHN0YXRpY19jYXN0PGNvbnN0IGNoYXIqPih0
YXNrLnJlcXVlc3QuSFRUUEJvZHkuYnl0ZXMpLCAidGVzdG5hbWUxPXRlc3R2YWx1ZTEmdGVzdG5h
bWUyPXRlc3R2YWx1ZTImdGVzdG5hbWUzPXRlc3R2YWx1ZTMiKTsKICAgICBkb25lID0gdHJ1ZTsK
IH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>