<?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>178796</bug_id>
          
          <creation_ts>2017-10-25 09:09:56 -0700</creation_ts>
          <short_desc>Move DNS resolution outside of NetworkRTCProvider</short_desc>
          <delta_ts>2017-11-17 13:01:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>Other</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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>alex</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1364225</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-10-25 09:09:56 -0700</bug_when>
    <thetext>This will ease cross platform implementation of WebRTC</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364227</commentid>
    <comment_count>1</comment_count>
      <attachid>324831</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-10-25 09:19:09 -0700</bug_when>
    <thetext>Created attachment 324831
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364252</commentid>
    <comment_count>2</comment_count>
      <attachid>324838</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-10-25 10:01:09 -0700</bug_when>
    <thetext>Created attachment 324838
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364356</commentid>
    <comment_count>3</comment_count>
      <attachid>324838</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2017-10-25 11:51:03 -0700</bug_when>
    <thetext>Comment on attachment 324838
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364406</commentid>
    <comment_count>4</comment_count>
      <attachid>324870</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-10-25 12:52:48 -0700</bug_when>
    <thetext>Created attachment 324870
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364532</commentid>
    <comment_count>5</comment_count>
      <attachid>324870</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-25 15:27:10 -0700</bug_when>
    <thetext>Comment on attachment 324870
Patch for landing

Clearing flags on attachment: 324870

Committed r223990: &lt;https://trac.webkit.org/changeset/223990&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364533</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-25 15:27:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1373227</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-17 13:01:01 -0800</bug_when>
    <thetext>&lt;rdar://problem/35621856&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324831</attachid>
            <date>2017-10-25 09:19:09 -0700</date>
            <delta_ts>2017-10-25 10:01:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178796-20171025091908.patch</filename>
            <type>text/plain</type>
            <size>16603</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzOTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGUzN2IwYWEyMDU1MWU2MDQ1
NTg2NTk5NWE5N2Q5NDUyYmFhOWRiYWYuLjY1YzRhZmE1MWMzZGJhNWNmNmI5ZDFhMzE3M2E5YTRj
NTIxNmQ0M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTctMTAtMjUgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgRE5TIHJlc29sdXRpb24g
b3V0c2lkZSBvZiBOZXR3b3JrUlRDUHJvdmlkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODc5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgVGVzdGVkIHRocm91Z2ggbWFudWFsIHRlc3Rpbmcgb24gZXh0
ZXJuYWwgU1RVTiBzZXJ2ZXJzLgorICAgICAgIE1vdmluZyBOZXR3b3JrUlRDUHJvdmlkZXI6OlJl
c29sdmVyIGludG8gTmV0d29ya1JUQ1Jlc29sdmVyLgorICAgICAgIFVwZGF0aW5nIHRoZSBpbXBs
ZW1lbnRhdGlvbiB0byB1c2UgYSBjb21wbGV0aW9uIGhhbmRsZXIuCisKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVhdGVSZXNvbHZlcik6CisgICAgICAgICogTmV0d29y
a1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrUlRDUmVzb2x2ZXI6Ok5ldHdvcmtSVENSZXNvbHZlcik6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtSVENSZXNvbHZlcjo6fk5ldHdvcmtSVENSZXNvbHZlcik6CisgICAgICAgIChXZWJL
aXQ6Ok5ldHdvcmtSVENSZXNvbHZlcjo6c3RhcnQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UlRDUmVzb2x2ZXI6OnN0b3ApOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUlRDUmVzb2x2ZXI6
OmNvbXBsZXRlZCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRlcjo6UmVzb2x2
ZXI6On5SZXNvbHZlcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92
aWRlcjo6c3RvcCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRl
cjo6cmVzb2x1dGlvbkNvbXBsZXRlZCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENSZXNvbHZlci5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDE3LTEwLTI0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KIAogICAgICAgICBFbmFibGUgU2VydmljZVdvcmtlciB0byBmZXRjaCByZXNv
dXJjZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05l
dHdvcmtSVENQcm92aWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0
Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3BwCmluZGV4IGIyMTZjNmYyOGUxNWEyNGYwODYyNjY2Y2Ji
M2U0MjY4NGY5ODRlZTMuLmI2ZWFkY2Q4ZmJjNzQxNzIzZjQ1ZTg1Y2UyY2M1NWFhOWJkOWU3ZTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtS
VENQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMv
TmV0d29ya1JUQ1Byb3ZpZGVyLmNwcApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkxvZ2dp
bmcuaCIKICNpbmNsdWRlICJOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgogI2luY2x1
ZGUgIk5ldHdvcmtQcm9jZXNzLmgiCisjaW5jbHVkZSAiTmV0d29ya1JUQ1Jlc29sdmVyLmgiCiAj
aW5jbHVkZSAiTmV0d29ya1JUQ1NvY2tldC5oIgogI2luY2x1ZGUgIldlYlJUQ1Jlc29sdmVyTWVz
c2FnZXMuaCIKICNpbmNsdWRlICJXZWJSVENTb2NrZXRNZXNzYWdlcy5oIgpAQCAtMTYzLDYwICsx
NjQsMjIgQEAgdm9pZCBOZXR3b3JrUlRDUHJvdmlkZXI6OmRpZFJlY2VpdmVOZXR3b3JrUlRDU29j
a2V0TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm4KIAogdm9pZCBOZXR3b3JrUlRDUHJvdmlk
ZXI6OmNyZWF0ZVJlc29sdmVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgYWRk
cmVzcykKIHsKLSAgICBhdXRvIHJlc29sdmVyID0gc3RkOjptYWtlX3VuaXF1ZTxSZXNvbHZlcj4o
aWRlbnRpZmllciwgKnRoaXMsIGFkb3B0Q0YoQ0ZIb3N0Q3JlYXRlV2l0aE5hbWUoa0NGQWxsb2Nh
dG9yRGVmYXVsdCwgYWRkcmVzcy5jcmVhdGVDRlN0cmluZygpLmdldCgpKSkpOwotCi0gICAgQ0ZI
b3N0Q2xpZW50Q29udGV4dCBjb250ZXh0ID0geyAwLCByZXNvbHZlci5nZXQoKSwgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciB9OwotICAgIENGSG9zdFNldENsaWVudChyZXNvbHZlci0+aG9zdC5n
ZXQoKSwgTmV0d29ya1JUQ1Byb3ZpZGVyOjpyZXNvbHZlZE5hbWUsICZjb250ZXh0KTsKLSAgICBD
Rkhvc3RTY2hlZHVsZVdpdGhSdW5Mb29wKHJlc29sdmVyLT5ob3N0LmdldCgpLCBDRlJ1bkxvb3BH
ZXRDdXJyZW50KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci0gICAgQm9vbGVhbiByZXN1bHQg
PSBDRkhvc3RTdGFydEluZm9SZXNvbHV0aW9uKHJlc29sdmVyLT5ob3N0LmdldCgpLCBrQ0ZIb3N0
QWRkcmVzc2VzLCBudWxscHRyKTsKLSAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0KTsK
LQorICAgIGF1dG8gcmVzb2x2ZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPE5ldHdvcmtSVENSZXNvbHZl
cj4oW3RoaXMsIGlkZW50aWZpZXJdKE5ldHdvcmtSVENSZXNvbHZlcjo6QWRkcmVzc2VzT3JFcnJv
ciYmIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0Lmhhc1ZhbHVlKCkpIHsK
KyAgICAgICAgICAgIGlmIChyZXN1bHQuZXJyb3IoKSAhPSBOZXR3b3JrUlRDUmVzb2x2ZXI6OkVy
cm9yOjpDYW5jZWxsZWQpCisgICAgICAgICAgICAgICAgbV9jb25uZWN0aW9uLT5jb25uZWN0aW9u
KCkuc2VuZChNZXNzYWdlczo6V2ViUlRDUmVzb2x2ZXI6OlJlc29sdmVkQWRkcmVzc0Vycm9yKDEp
LCBpZGVudGlmaWVyKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBt
X2Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpXZWJSVENSZXNvbHZlcjo6
U2V0UmVzb2x2ZWRBZGRyZXNzKHJlc3VsdC52YWx1ZSgpKSwgaWRlbnRpZmllcik7CisgICAgfSk7
CisgICAgcmVzb2x2ZXItPnN0YXJ0KGFkZHJlc3MpOwogICAgIG1fcmVzb2x2ZXJzLmFkZChpZGVu
dGlmaWVyLCBXVEZNb3ZlKHJlc29sdmVyKSk7CiB9CiAKLU5ldHdvcmtSVENQcm92aWRlcjo6UmVz
b2x2ZXI6On5SZXNvbHZlcigpCi17Ci0gICAgQ0ZIb3N0VW5zY2hlZHVsZUZyb21SdW5Mb29wKGhv
c3QuZ2V0KCksIENGUnVuTG9vcEdldEN1cnJlbnQoKSwga0NGUnVuTG9vcERlZmF1bHRNb2RlKTsK
LSAgICBDRkhvc3RTZXRDbGllbnQoaG9zdC5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0cik7Ci19Ci0K
IHZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVyOjpzdG9wUmVzb2x2ZXIodWludDY0X3QgaWRlbnRpZmll
cikKIHsKLSAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAgICAgaWYgKGF1dG8gcmVzb2x2ZXIgPSBt
X3Jlc29sdmVycy50YWtlKGlkZW50aWZpZXIpKQotICAgICAgICBDRkhvc3RDYW5jZWxJbmZvUmVz
b2x1dGlvbihyZXNvbHZlci0+aG9zdC5nZXQoKSwgQ0ZIb3N0SW5mb1R5cGU6OmtDRkhvc3RBZGRy
ZXNzZXMpOwotfQotCi12b2lkIE5ldHdvcmtSVENQcm92aWRlcjo6cmVzb2x2ZWROYW1lKENGSG9z
dFJlZiBob3N0UmVmLCBDRkhvc3RJbmZvVHlwZSB0eXBlSW5mbywgY29uc3QgQ0ZTdHJlYW1FcnJv
ciAqZXJyb3IsIHZvaWQgKmluZm8pCi17Ci0gICAgQVNTRVJUX1VOVVNFRCh0eXBlSW5mbywgIXR5
cGVJbmZvKTsKLQotICAgIGlmIChlcnJvci0+ZG9tYWluKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBO
ZWVkIHRvIGhhbmRsZSBmYWlsdXJlLCBidXQgaW5mbyBpcyBub3QgcHJvdmlkZWQgaW4gdGhlIGNh
bGxiYWNrLgotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgQVNTRVJUKGluZm8pOwotICAg
IGF1dG8qIHJlc29sdmVySW5mbyA9IHN0YXRpY19jYXN0PFJlc29sdmVyKj4oaW5mbyk7Ci0gICAg
YXV0byByZXNvbHZlciA9IHJlc29sdmVySW5mby0+cnRjUHJvdmlkZXIubV9yZXNvbHZlcnMudGFr
ZShyZXNvbHZlckluZm8tPmlkZW50aWZpZXIpOwotICAgIGlmICghcmVzb2x2ZXIpCi0gICAgICAg
IHJldHVybjsKLQotICAgIEJvb2xlYW4gcmVzdWx0OwotICAgIENGQXJyYXlSZWYgcmVzb2x2ZWRB
ZGRyZXNzZXMgPSAoQ0ZBcnJheVJlZilDRkhvc3RHZXRBZGRyZXNzaW5nKGhvc3RSZWYsICZyZXN1
bHQpOwotICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQpOwotCi0gICAgc2l6ZV90IGNv
dW50ID0gQ0ZBcnJheUdldENvdW50KHJlc29sdmVkQWRkcmVzc2VzKTsKLSAgICBWZWN0b3I8UlRD
TmV0d29yazo6SVBBZGRyZXNzPiBhZGRyZXNzZXM7Ci0gICAgYWRkcmVzc2VzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkoY291bnQpOwotCi0gICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8
IGNvdW50OyArK2luZGV4KSB7Ci0gICAgICAgIENGRGF0YVJlZiBkYXRhID0gKENGRGF0YVJlZilD
RkFycmF5R2V0VmFsdWVBdEluZGV4KHJlc29sdmVkQWRkcmVzc2VzLCBpbmRleCk7Ci0gICAgICAg
IGF1dG8qIGFkZHJlc3MgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHN0cnVjdCBzb2NrYWRkcl9p
bio+KENGRGF0YUdldEJ5dGVQdHIoZGF0YSkpOwotICAgICAgICBhZGRyZXNzZXMudW5jaGVja2Vk
QXBwZW5kKFJUQ05ldHdvcms6OklQQWRkcmVzcyhydGM6OklQQWRkcmVzcyhhZGRyZXNzLT5zaW5f
YWRkcikpKTsKLSAgICB9Ci0gICAgQVNTRVJUKHJlc29sdmVyLT5ydGNQcm92aWRlci5tX2Nvbm5l
Y3Rpb24pOwotICAgIHJlc29sdmVyLT5ydGNQcm92aWRlci5tX2Nvbm5lY3Rpb24tPmNvbm5lY3Rp
b24oKS5zZW5kKE1lc3NhZ2VzOjpXZWJSVENSZXNvbHZlcjo6U2V0UmVzb2x2ZWRBZGRyZXNzKGFk
ZHJlc3NlcyksIHJlc29sdmVyLT5pZGVudGlmaWVyKTsKKyAgICAgICAgcmVzb2x2ZXItPnN0b3Ao
KTsKIH0KIAogdm9pZCBOZXR3b3JrUlRDUHJvdmlkZXI6OmNsb3NlTGlzdGVuaW5nU29ja2V0cyhG
dW5jdGlvbjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCmluZGV4
IDhiN2VkNWVkNjE0NmZlMzQ3MGViMTUyN2M1YTRkNzUwYjliMjIyMTAuLjg1ZmVjNzUxOWEyNDQ2
YWM4NjBkMzc5YmY1ZWUzYTE4YzU2YzFlNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCkBAIC0zMCw3ICsz
MCw2IEBACiAjaW5jbHVkZSAiTGliV2ViUlRDU29ja2V0Q2xpZW50LmgiCiAjaW5jbHVkZSAiTmV0
d29ya1JUQ01vbml0b3IuaCIKICNpbmNsdWRlICJSVENOZXR3b3JrLmgiCi0jaW5jbHVkZSA8Q0ZO
ZXR3b3JrL0NGSG9zdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTGliV2ViUlRDTWFjcm9zLmg+CiAj
aW5jbHVkZSA8d2VicnRjL2Jhc2Uvc2lnc2xvdC5oPgogI2luY2x1ZGUgPHdlYnJ0Yy9wMnAvYmFz
ZS9iYXNpY3BhY2tldHNvY2tldGZhY3RvcnkuaD4KQEAgLTQ1LDggKzQ0LDggQEAgY2xhc3MgRGVj
b2RlcjsKIH0KIAogbmFtZXNwYWNlIFdlYktpdCB7Ci0KIGNsYXNzIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOworY2xhc3MgTmV0d29ya1JUQ1Jlc29sdmVyOwogY2xhc3MgTmV0d29ya1JU
Q1NvY2tldDsKIAogY2xhc3MgTmV0d29ya1JUQ1Byb3ZpZGVyIDogcHVibGljIFRocmVhZFNhZmVS
ZWZDb3VudGVkPE5ldHdvcmtSVENQcm92aWRlcj4sIHB1YmxpYyBydGM6Ok1lc3NhZ2VIYW5kbGVy
IHsKQEAgLTg5LDIxICs4OCw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIE9uTWVzc2FnZShydGM6
Ok1lc3NhZ2UqKTsKIAotICAgIHN0YXRpYyB2b2lkIHJlc29sdmVkTmFtZShDRkhvc3RSZWYsIENG
SG9zdEluZm9UeXBlLCBjb25zdCBDRlN0cmVhbUVycm9yKiwgdm9pZCopOwotCi0gICAgc3RydWN0
IFJlc29sdmVyIHsKLSAgICAgICAgUmVzb2x2ZXIodWludDY0X3QgaWRlbnRpZmllciwgTmV0d29y
a1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRlciwgUmV0YWluUHRyPENGSG9zdFJlZj4mJiBob3N0KQot
ICAgICAgICAgICAgOiBpZGVudGlmaWVyKGlkZW50aWZpZXIpCi0gICAgICAgICAgICAsIHJ0Y1By
b3ZpZGVyKHJ0Y1Byb3ZpZGVyKQotICAgICAgICAgICAgLCBob3N0KFdURk1vdmUoaG9zdCkpIHsg
fQotICAgICAgICB+UmVzb2x2ZXIoKTsKLQotICAgICAgICB1aW50NjRfdCBpZGVudGlmaWVyOwot
ICAgICAgICBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyOwotICAgICAgICBSZXRhaW5Q
dHI8Q0ZIb3N0UmVmPiBob3N0OwotICAgIH07Ci0KLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBzdGQ6
OnVuaXF1ZV9wdHI8UmVzb2x2ZXI+PiBtX3Jlc29sdmVyczsKKyAgICBIYXNoTWFwPHVpbnQ2NF90
LCBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya1JUQ1Jlc29sdmVyPj4gbV9yZXNvbHZlcnM7CiAgICAg
SGFzaE1hcDx1aW50NjRfdCwgc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1NvY2tldENsaWVudD4+
IG1fc29ja2V0czsKICAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyogbV9jb25uZWN0
aW9uOwogICAgIGJvb2wgbV9pc1N0YXJ0ZWQgeyB0cnVlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuY3BwIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Jlc29sdmVyLmNwcApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zYzk5ODdkMDQ4MDhmM2E3MTg1NzczMTFmOWU1Y2IxNmMzZmYwMTZlCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29y
a1JUQ1Jlc29sdmVyLmNwcApAQCAtMCwwICsxLDEwMSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJOZXR3b3JrUlRDUmVzb2x2ZXIuaCIKKworI2lmIFVTRShM
SUJXRUJSVEMpCisKKyNpbmNsdWRlIDx3dGYvRXhwZWN0ZWQuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK3N0YXRpYyB2b2lkIHJlc29sdmVkTmFtZShDRkhvc3RSZWYgaG9zdFJlZiwgQ0ZIb3N0
SW5mb1R5cGUgdHlwZUluZm8sIGNvbnN0IENGU3RyZWFtRXJyb3IgKmVycm9yLCB2b2lkICppbmZv
KQoreworICAgIEFTU0VSVF9VTlVTRUQodHlwZUluZm8sICF0eXBlSW5mbyk7CisKKyAgICBpZiAo
ZXJyb3ItPmRvbWFpbikgeworICAgICAgICAvLyBGSVhNRTogTmVlZCB0byBoYW5kbGUgZmFpbHVy
ZSwgYnV0IGluZm8gaXMgbm90IHByb3ZpZGVkIGluIHRoZSBjYWxsYmFjay4KKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIEFTU0VSVChpbmZvKTsKKyAgICBhdXRvKiByZXNvbHZlciA9IHN0
YXRpY19jYXN0PE5ldHdvcmtSVENSZXNvbHZlcio+KGluZm8pOworCisgICAgQm9vbGVhbiByZXN1
bHQ7CisgICAgQ0ZBcnJheVJlZiByZXNvbHZlZEFkZHJlc3NlcyA9IChDRkFycmF5UmVmKUNGSG9z
dEdldEFkZHJlc3NpbmcoaG9zdFJlZiwgJnJlc3VsdCk7CisgICAgQVNTRVJUX1VOVVNFRChyZXN1
bHQsIHJlc3VsdCk7CisKKyAgICBzaXplX3QgY291bnQgPSBDRkFycmF5R2V0Q291bnQocmVzb2x2
ZWRBZGRyZXNzZXMpOworICAgIFZlY3RvcjxSVENOZXR3b3JrOjpJUEFkZHJlc3M+IGFkZHJlc3Nl
czsKKyAgICBhZGRyZXNzZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjb3VudCk7CisKKyAgICBm
b3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7ICsraW5kZXgpIHsKKyAgICAgICAg
Q0ZEYXRhUmVmIGRhdGEgPSAoQ0ZEYXRhUmVmKUNGQXJyYXlHZXRWYWx1ZUF0SW5kZXgocmVzb2x2
ZWRBZGRyZXNzZXMsIGluZGV4KTsKKyAgICAgICAgYXV0byogYWRkcmVzcyA9IHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3Qgc3RydWN0IHNvY2thZGRyX2luKj4oQ0ZEYXRhR2V0Qnl0ZVB0cihkYXRhKSk7
CisgICAgICAgIGFkZHJlc3Nlcy51bmNoZWNrZWRBcHBlbmQoUlRDTmV0d29yazo6SVBBZGRyZXNz
KHJ0Yzo6SVBBZGRyZXNzKGFkZHJlc3MtPnNpbl9hZGRyKSkpOworICAgIH0KKyAgICByZXNvbHZl
ci0+Y29tcGxldGVkKGFkZHJlc3Nlcyk7Cit9CisKK05ldHdvcmtSVENSZXNvbHZlcjo6TmV0d29y
a1JUQ1Jlc29sdmVyKENvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAg
OiBtX2NvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKQoreworfQor
CitOZXR3b3JrUlRDUmVzb2x2ZXI6On5OZXR3b3JrUlRDUmVzb2x2ZXIoKQoreworICAgIENGSG9z
dFVuc2NoZWR1bGVGcm9tUnVuTG9vcChtX2hvc3QuZ2V0KCksIENGUnVuTG9vcEdldEN1cnJlbnQo
KSwga0NGUnVuTG9vcERlZmF1bHRNb2RlKTsKKyAgICBDRkhvc3RTZXRDbGllbnQobV9ob3N0Lmdl
dCgpLCBudWxscHRyLCBudWxscHRyKTsKKyAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFuZGxlciA9
IFdURk1vdmUobV9jb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KG1ha2VVbmV4cGVjdGVkKEVycm9yOjpVbmtub3duKSk7Cit9CisKK3ZvaWQgTmV0d29ya1JUQ1Jl
c29sdmVyOjpzdGFydChjb25zdCBTdHJpbmcmIGFkZHJlc3MpCit7CisgICAgbV9ob3N0ID0gYWRv
cHRDRihDRkhvc3RDcmVhdGVXaXRoTmFtZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBhZGRyZXNzLmNy
ZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpKTsKKyAgICBDRkhvc3RDbGllbnRDb250ZXh0IGNvbnRleHQg
PSB7IDAsIHRoaXMsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIgfTsKKyAgICBDRkhvc3RTZXRD
bGllbnQobV9ob3N0LmdldCgpLCByZXNvbHZlZE5hbWUsICZjb250ZXh0KTsKKyAgICBDRkhvc3RT
Y2hlZHVsZVdpdGhSdW5Mb29wKG1faG9zdC5nZXQoKSwgQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBr
Q0ZSdW5Mb29wRGVmYXVsdE1vZGUpOworICAgIEJvb2xlYW4gcmVzdWx0ID0gQ0ZIb3N0U3RhcnRJ
bmZvUmVzb2x1dGlvbihtX2hvc3QuZ2V0KCksIGtDRkhvc3RBZGRyZXNzZXMsIG51bGxwdHIpOwor
ICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQpOworfQorCit2b2lkIE5ldHdvcmtSVENS
ZXNvbHZlcjo6c3RvcCgpCit7CisgICAgQ0ZIb3N0Q2FuY2VsSW5mb1Jlc29sdXRpb24obV9ob3N0
LmdldCgpLCBDRkhvc3RJbmZvVHlwZTo6a0NGSG9zdEFkZHJlc3Nlcyk7CisgICAgaWYgKGF1dG8g
Y29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKG1fY29tcGxldGlvbkhhbmRsZXIpKQorICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChFcnJvcjo6Q2FuY2VsbGVkKSk7Cit9
CisKK3ZvaWQgTmV0d29ya1JUQ1Jlc29sdmVyOjpjb21wbGV0ZWQoY29uc3QgVmVjdG9yPFJUQ05l
dHdvcms6OklQQWRkcmVzcz4mIGFkZHJlc3NlcykKK3sKKyAgICBpZiAoYXV0byBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUobV9jb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKHsgYWRkcmVzc2VzIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwor
I2VuZGlmIC8vIFVTRShMSUJXRUJSVEMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENSZXNvbHZlci5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiY2Y3
MzZlNzY3YTY3MDRiNWNlOTdjZGE4YzcyM2JkZTM1ZTcyNzgKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuaApA
QCAtMCwwICsxLDU5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBVU0UoTElC
V0VCUlRDKQorCisjaW5jbHVkZSAiUlRDTmV0d29yay5oIgorI2luY2x1ZGUgPENGTmV0d29yay9D
Rkhvc3QuaD4KKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKyNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIE5ldHdv
cmtSVENSZXNvbHZlciB7CitwdWJsaWM6CisgICAgZW51bSBjbGFzcyBFcnJvciB7IFVua25vd24s
IENhbmNlbGxlZCB9OworCisgICAgdXNpbmcgQWRkcmVzc2VzT3JFcnJvciA9IEV4cGVjdGVkPHN0
ZDo6cmVmZXJlbmNlX3dyYXBwZXI8Y29uc3QgVmVjdG9yPFJUQ05ldHdvcms6OklQQWRkcmVzcz4+
LCBFcnJvcj47CisgICAgdXNpbmcgQ29tcGxldGlvbkhhbmRsZXIgPSBXVEY6OkNvbXBsZXRpb25I
YW5kbGVyPHZvaWQoQWRkcmVzc2VzT3JFcnJvciYmKT47CisKKyAgICBleHBsaWNpdCBOZXR3b3Jr
UlRDUmVzb2x2ZXIoQ29tcGxldGlvbkhhbmRsZXImJik7CisgICAgfk5ldHdvcmtSVENSZXNvbHZl
cigpOworCisgICAgdm9pZCBzdGFydChjb25zdCBTdHJpbmcmIGFkZHJlc3MpOworICAgIHZvaWQg
c3RvcCgpOworCisgICAgdm9pZCBjb21wbGV0ZWQoY29uc3QgVmVjdG9yPFJUQ05ldHdvcms6OklQ
QWRkcmVzcz4mKTsKKworcHJpdmF0ZToKKyAgICBDb21wbGV0aW9uSGFuZGxlciBtX2NvbXBsZXRp
b25IYW5kbGVyOworICAgIFJldGFpblB0cjxDRkhvc3RSZWY+IG1faG9zdDsKK307CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCisjZW5kaWYgLy8gVVNFKExJQldFQlJUQykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDliOTRkZjVkMTQ3
NzMxYmQwYjI5Y2NkNjcxY2I0NDY2YjA2ZGNmM2UuLjgyYjViNTllMzkxNzdjNWZkZmEzZjk0MGRh
YzJiMDdjN2Y3MDM5ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtMzE3MSw2ICszMTcxLDggQEAKIAkJM0Y4N0I5QkYxNTg5NDBEODAw
OTBGRjYyIC8qIFdlYkNvbG9yUGlja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFdlYkNvbG9yUGlja2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDQ4
MkNCMURERDJGQjUwMEYwMDZEMCAvKiBSVENOZXR3b3JrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ05ldHdvcmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTA0ODJDQzFEREQyRkI1MDBGMDA2RDAgLyogUlRDTmV0d29yay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENOZXR3b3JrLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxMTJCNTQ3MUY5RkQzQUIwMEU2Nzg3NSAvKiBOZXR3b3JrUlRDUmVzb2x2
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTmV0d29ya1JUQ1Jl
c29sdmVyLmNwcDsgcGF0aCA9IE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTEyQjU0ODFGOUZEM0FDMDBF
Njc4NzUgLyogTmV0d29ya1JUQ1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IE5ldHdvcmtSVENSZXNvbHZlci5oOyBwYXRoID0gTmV0d29ya1Byb2Nlc3Mvd2VicnRj
L05ldHdvcmtSVENSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTFC
MjI2MjFFMzcxMjQ0MDA0RjczNjMgLyogTGliV2ViUlRDTmV0d29yay5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBMaWJXZWJSVENOZXR3b3JrLmg7IHBhdGggPSBOZXR3b3JrL3dl
YnJ0Yy9MaWJXZWJSVENOZXR3b3JrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQx
MzA3NTk4MURFODRGQjAwMDM5RUM2OSAvKiBOZXR3b3JrUlRDU29ja2V0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IE5ldHdvcmtSVENTb2NrZXQuY3BwOyBwYXRoID0g
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENTb2NrZXQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk0MTMwNzU5OTFERTg0RkIwMDAzOUVDNjkgLyogTmV0d29ya1JUQ1Nv
Y2tldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBOZXR3b3JrUlRDU29ja2V0
Lmg7IHBhdGggPSBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1NvY2tldC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjAzNCw2ICs2MDM2LDggQEAKIAkJCQk0MURDNDU5
NTFFM0Q2RTFFMDBCMTFGNTEgLyogTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcCAqLywKIAkJCQk0MURD
NDU5NDFFM0Q2RTFFMDBCMTFGNTEgLyogTmV0d29ya1JUQ1Byb3ZpZGVyLmggKi8sCiAJCQkJNDFE
QzQ1OTgxRTNENkVENjAwQjExRjUxIC8qIE5ldHdvcmtSVENQcm92aWRlci5tZXNzYWdlcy5pbiAq
LywKKwkJCQk0MTEyQjU0NzFGOUZEM0FCMDBFNjc4NzUgLyogTmV0d29ya1JUQ1Jlc29sdmVyLmNw
cCAqLywKKwkJCQk0MTEyQjU0ODFGOUZEM0FDMDBFNjc4NzUgLyogTmV0d29ya1JUQ1Jlc29sdmVy
LmggKi8sCiAJCQkJNDEzMDc1OTgxREU4NEZCMDAwMzlFQzY5IC8qIE5ldHdvcmtSVENTb2NrZXQu
Y3BwICovLAogCQkJCTQxMzA3NTk5MURFODRGQjAwMDM5RUM2OSAvKiBOZXR3b3JrUlRDU29ja2V0
LmggKi8sCiAJCQkJNDEzMDc1OUQxREU4NEZCMDAwMzlFQzY5IC8qIE5ldHdvcmtSVENTb2NrZXQu
bWVzc2FnZXMuaW4gKi8sCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324838</attachid>
            <date>2017-10-25 10:01:09 -0700</date>
            <delta_ts>2017-10-25 12:52:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178796-20171025100108.patch</filename>
            <type>text/plain</type>
            <size>19843</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzOTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGUzN2IwYWEyMDU1MWU2MDQ1
NTg2NTk5NWE5N2Q5NDUyYmFhOWRiYWYuLjY1YzRhZmE1MWMzZGJhNWNmNmI5ZDFhMzE3M2E5YTRj
NTIxNmQ0M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTctMTAtMjUgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgRE5TIHJlc29sdXRpb24g
b3V0c2lkZSBvZiBOZXR3b3JrUlRDUHJvdmlkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODc5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgVGVzdGVkIHRocm91Z2ggbWFudWFsIHRlc3Rpbmcgb24gZXh0
ZXJuYWwgU1RVTiBzZXJ2ZXJzLgorICAgICAgIE1vdmluZyBOZXR3b3JrUlRDUHJvdmlkZXI6OlJl
c29sdmVyIGludG8gTmV0d29ya1JUQ1Jlc29sdmVyLgorICAgICAgIFVwZGF0aW5nIHRoZSBpbXBs
ZW1lbnRhdGlvbiB0byB1c2UgYSBjb21wbGV0aW9uIGhhbmRsZXIuCisKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVhdGVSZXNvbHZlcik6CisgICAgICAgICogTmV0d29y
a1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrUlRDUmVzb2x2ZXI6Ok5ldHdvcmtSVENSZXNvbHZlcik6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtSVENSZXNvbHZlcjo6fk5ldHdvcmtSVENSZXNvbHZlcik6CisgICAgICAgIChXZWJL
aXQ6Ok5ldHdvcmtSVENSZXNvbHZlcjo6c3RhcnQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UlRDUmVzb2x2ZXI6OnN0b3ApOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUlRDUmVzb2x2ZXI6
OmNvbXBsZXRlZCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRlcjo6UmVzb2x2
ZXI6On5SZXNvbHZlcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92
aWRlcjo6c3RvcCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRl
cjo6cmVzb2x1dGlvbkNvbXBsZXRlZCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENSZXNvbHZlci5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDE3LTEwLTI0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KIAogICAgICAgICBFbmFibGUgU2VydmljZVdvcmtlciB0byBmZXRjaCByZXNv
dXJjZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05l
dHdvcmtSVENQcm92aWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0
Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3BwCmluZGV4IGIyMTZjNmYyOGUxNWEyNGYwODYyNjY2Y2Ji
M2U0MjY4NGY5ODRlZTMuLmI2ZWFkY2Q4ZmJjNzQxNzIzZjQ1ZTg1Y2UyY2M1NWFhOWJkOWU3ZTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtS
VENQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMv
TmV0d29ya1JUQ1Byb3ZpZGVyLmNwcApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkxvZ2dp
bmcuaCIKICNpbmNsdWRlICJOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgogI2luY2x1
ZGUgIk5ldHdvcmtQcm9jZXNzLmgiCisjaW5jbHVkZSAiTmV0d29ya1JUQ1Jlc29sdmVyLmgiCiAj
aW5jbHVkZSAiTmV0d29ya1JUQ1NvY2tldC5oIgogI2luY2x1ZGUgIldlYlJUQ1Jlc29sdmVyTWVz
c2FnZXMuaCIKICNpbmNsdWRlICJXZWJSVENTb2NrZXRNZXNzYWdlcy5oIgpAQCAtMTYzLDYwICsx
NjQsMjIgQEAgdm9pZCBOZXR3b3JrUlRDUHJvdmlkZXI6OmRpZFJlY2VpdmVOZXR3b3JrUlRDU29j
a2V0TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm4KIAogdm9pZCBOZXR3b3JrUlRDUHJvdmlk
ZXI6OmNyZWF0ZVJlc29sdmVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgYWRk
cmVzcykKIHsKLSAgICBhdXRvIHJlc29sdmVyID0gc3RkOjptYWtlX3VuaXF1ZTxSZXNvbHZlcj4o
aWRlbnRpZmllciwgKnRoaXMsIGFkb3B0Q0YoQ0ZIb3N0Q3JlYXRlV2l0aE5hbWUoa0NGQWxsb2Nh
dG9yRGVmYXVsdCwgYWRkcmVzcy5jcmVhdGVDRlN0cmluZygpLmdldCgpKSkpOwotCi0gICAgQ0ZI
b3N0Q2xpZW50Q29udGV4dCBjb250ZXh0ID0geyAwLCByZXNvbHZlci5nZXQoKSwgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciB9OwotICAgIENGSG9zdFNldENsaWVudChyZXNvbHZlci0+aG9zdC5n
ZXQoKSwgTmV0d29ya1JUQ1Byb3ZpZGVyOjpyZXNvbHZlZE5hbWUsICZjb250ZXh0KTsKLSAgICBD
Rkhvc3RTY2hlZHVsZVdpdGhSdW5Mb29wKHJlc29sdmVyLT5ob3N0LmdldCgpLCBDRlJ1bkxvb3BH
ZXRDdXJyZW50KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci0gICAgQm9vbGVhbiByZXN1bHQg
PSBDRkhvc3RTdGFydEluZm9SZXNvbHV0aW9uKHJlc29sdmVyLT5ob3N0LmdldCgpLCBrQ0ZIb3N0
QWRkcmVzc2VzLCBudWxscHRyKTsKLSAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0KTsK
LQorICAgIGF1dG8gcmVzb2x2ZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPE5ldHdvcmtSVENSZXNvbHZl
cj4oW3RoaXMsIGlkZW50aWZpZXJdKE5ldHdvcmtSVENSZXNvbHZlcjo6QWRkcmVzc2VzT3JFcnJv
ciYmIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0Lmhhc1ZhbHVlKCkpIHsK
KyAgICAgICAgICAgIGlmIChyZXN1bHQuZXJyb3IoKSAhPSBOZXR3b3JrUlRDUmVzb2x2ZXI6OkVy
cm9yOjpDYW5jZWxsZWQpCisgICAgICAgICAgICAgICAgbV9jb25uZWN0aW9uLT5jb25uZWN0aW9u
KCkuc2VuZChNZXNzYWdlczo6V2ViUlRDUmVzb2x2ZXI6OlJlc29sdmVkQWRkcmVzc0Vycm9yKDEp
LCBpZGVudGlmaWVyKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBt
X2Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpXZWJSVENSZXNvbHZlcjo6
U2V0UmVzb2x2ZWRBZGRyZXNzKHJlc3VsdC52YWx1ZSgpKSwgaWRlbnRpZmllcik7CisgICAgfSk7
CisgICAgcmVzb2x2ZXItPnN0YXJ0KGFkZHJlc3MpOwogICAgIG1fcmVzb2x2ZXJzLmFkZChpZGVu
dGlmaWVyLCBXVEZNb3ZlKHJlc29sdmVyKSk7CiB9CiAKLU5ldHdvcmtSVENQcm92aWRlcjo6UmVz
b2x2ZXI6On5SZXNvbHZlcigpCi17Ci0gICAgQ0ZIb3N0VW5zY2hlZHVsZUZyb21SdW5Mb29wKGhv
c3QuZ2V0KCksIENGUnVuTG9vcEdldEN1cnJlbnQoKSwga0NGUnVuTG9vcERlZmF1bHRNb2RlKTsK
LSAgICBDRkhvc3RTZXRDbGllbnQoaG9zdC5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0cik7Ci19Ci0K
IHZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVyOjpzdG9wUmVzb2x2ZXIodWludDY0X3QgaWRlbnRpZmll
cikKIHsKLSAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAgICAgaWYgKGF1dG8gcmVzb2x2ZXIgPSBt
X3Jlc29sdmVycy50YWtlKGlkZW50aWZpZXIpKQotICAgICAgICBDRkhvc3RDYW5jZWxJbmZvUmVz
b2x1dGlvbihyZXNvbHZlci0+aG9zdC5nZXQoKSwgQ0ZIb3N0SW5mb1R5cGU6OmtDRkhvc3RBZGRy
ZXNzZXMpOwotfQotCi12b2lkIE5ldHdvcmtSVENQcm92aWRlcjo6cmVzb2x2ZWROYW1lKENGSG9z
dFJlZiBob3N0UmVmLCBDRkhvc3RJbmZvVHlwZSB0eXBlSW5mbywgY29uc3QgQ0ZTdHJlYW1FcnJv
ciAqZXJyb3IsIHZvaWQgKmluZm8pCi17Ci0gICAgQVNTRVJUX1VOVVNFRCh0eXBlSW5mbywgIXR5
cGVJbmZvKTsKLQotICAgIGlmIChlcnJvci0+ZG9tYWluKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBO
ZWVkIHRvIGhhbmRsZSBmYWlsdXJlLCBidXQgaW5mbyBpcyBub3QgcHJvdmlkZWQgaW4gdGhlIGNh
bGxiYWNrLgotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgQVNTRVJUKGluZm8pOwotICAg
IGF1dG8qIHJlc29sdmVySW5mbyA9IHN0YXRpY19jYXN0PFJlc29sdmVyKj4oaW5mbyk7Ci0gICAg
YXV0byByZXNvbHZlciA9IHJlc29sdmVySW5mby0+cnRjUHJvdmlkZXIubV9yZXNvbHZlcnMudGFr
ZShyZXNvbHZlckluZm8tPmlkZW50aWZpZXIpOwotICAgIGlmICghcmVzb2x2ZXIpCi0gICAgICAg
IHJldHVybjsKLQotICAgIEJvb2xlYW4gcmVzdWx0OwotICAgIENGQXJyYXlSZWYgcmVzb2x2ZWRB
ZGRyZXNzZXMgPSAoQ0ZBcnJheVJlZilDRkhvc3RHZXRBZGRyZXNzaW5nKGhvc3RSZWYsICZyZXN1
bHQpOwotICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQpOwotCi0gICAgc2l6ZV90IGNv
dW50ID0gQ0ZBcnJheUdldENvdW50KHJlc29sdmVkQWRkcmVzc2VzKTsKLSAgICBWZWN0b3I8UlRD
TmV0d29yazo6SVBBZGRyZXNzPiBhZGRyZXNzZXM7Ci0gICAgYWRkcmVzc2VzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkoY291bnQpOwotCi0gICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8
IGNvdW50OyArK2luZGV4KSB7Ci0gICAgICAgIENGRGF0YVJlZiBkYXRhID0gKENGRGF0YVJlZilD
RkFycmF5R2V0VmFsdWVBdEluZGV4KHJlc29sdmVkQWRkcmVzc2VzLCBpbmRleCk7Ci0gICAgICAg
IGF1dG8qIGFkZHJlc3MgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHN0cnVjdCBzb2NrYWRkcl9p
bio+KENGRGF0YUdldEJ5dGVQdHIoZGF0YSkpOwotICAgICAgICBhZGRyZXNzZXMudW5jaGVja2Vk
QXBwZW5kKFJUQ05ldHdvcms6OklQQWRkcmVzcyhydGM6OklQQWRkcmVzcyhhZGRyZXNzLT5zaW5f
YWRkcikpKTsKLSAgICB9Ci0gICAgQVNTRVJUKHJlc29sdmVyLT5ydGNQcm92aWRlci5tX2Nvbm5l
Y3Rpb24pOwotICAgIHJlc29sdmVyLT5ydGNQcm92aWRlci5tX2Nvbm5lY3Rpb24tPmNvbm5lY3Rp
b24oKS5zZW5kKE1lc3NhZ2VzOjpXZWJSVENSZXNvbHZlcjo6U2V0UmVzb2x2ZWRBZGRyZXNzKGFk
ZHJlc3NlcyksIHJlc29sdmVyLT5pZGVudGlmaWVyKTsKKyAgICAgICAgcmVzb2x2ZXItPnN0b3Ao
KTsKIH0KIAogdm9pZCBOZXR3b3JrUlRDUHJvdmlkZXI6OmNsb3NlTGlzdGVuaW5nU29ja2V0cyhG
dW5jdGlvbjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCmluZGV4
IDhiN2VkNWVkNjE0NmZlMzQ3MGViMTUyN2M1YTRkNzUwYjliMjIyMTAuLjg1ZmVjNzUxOWEyNDQ2
YWM4NjBkMzc5YmY1ZWUzYTE4YzU2YzFlNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCkBAIC0zMCw3ICsz
MCw2IEBACiAjaW5jbHVkZSAiTGliV2ViUlRDU29ja2V0Q2xpZW50LmgiCiAjaW5jbHVkZSAiTmV0
d29ya1JUQ01vbml0b3IuaCIKICNpbmNsdWRlICJSVENOZXR3b3JrLmgiCi0jaW5jbHVkZSA8Q0ZO
ZXR3b3JrL0NGSG9zdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTGliV2ViUlRDTWFjcm9zLmg+CiAj
aW5jbHVkZSA8d2VicnRjL2Jhc2Uvc2lnc2xvdC5oPgogI2luY2x1ZGUgPHdlYnJ0Yy9wMnAvYmFz
ZS9iYXNpY3BhY2tldHNvY2tldGZhY3RvcnkuaD4KQEAgLTQ1LDggKzQ0LDggQEAgY2xhc3MgRGVj
b2RlcjsKIH0KIAogbmFtZXNwYWNlIFdlYktpdCB7Ci0KIGNsYXNzIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOworY2xhc3MgTmV0d29ya1JUQ1Jlc29sdmVyOwogY2xhc3MgTmV0d29ya1JU
Q1NvY2tldDsKIAogY2xhc3MgTmV0d29ya1JUQ1Byb3ZpZGVyIDogcHVibGljIFRocmVhZFNhZmVS
ZWZDb3VudGVkPE5ldHdvcmtSVENQcm92aWRlcj4sIHB1YmxpYyBydGM6Ok1lc3NhZ2VIYW5kbGVy
IHsKQEAgLTg5LDIxICs4OCw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIE9uTWVzc2FnZShydGM6
Ok1lc3NhZ2UqKTsKIAotICAgIHN0YXRpYyB2b2lkIHJlc29sdmVkTmFtZShDRkhvc3RSZWYsIENG
SG9zdEluZm9UeXBlLCBjb25zdCBDRlN0cmVhbUVycm9yKiwgdm9pZCopOwotCi0gICAgc3RydWN0
IFJlc29sdmVyIHsKLSAgICAgICAgUmVzb2x2ZXIodWludDY0X3QgaWRlbnRpZmllciwgTmV0d29y
a1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRlciwgUmV0YWluUHRyPENGSG9zdFJlZj4mJiBob3N0KQot
ICAgICAgICAgICAgOiBpZGVudGlmaWVyKGlkZW50aWZpZXIpCi0gICAgICAgICAgICAsIHJ0Y1By
b3ZpZGVyKHJ0Y1Byb3ZpZGVyKQotICAgICAgICAgICAgLCBob3N0KFdURk1vdmUoaG9zdCkpIHsg
fQotICAgICAgICB+UmVzb2x2ZXIoKTsKLQotICAgICAgICB1aW50NjRfdCBpZGVudGlmaWVyOwot
ICAgICAgICBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyOwotICAgICAgICBSZXRhaW5Q
dHI8Q0ZIb3N0UmVmPiBob3N0OwotICAgIH07Ci0KLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBzdGQ6
OnVuaXF1ZV9wdHI8UmVzb2x2ZXI+PiBtX3Jlc29sdmVyczsKKyAgICBIYXNoTWFwPHVpbnQ2NF90
LCBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya1JUQ1Jlc29sdmVyPj4gbV9yZXNvbHZlcnM7CiAgICAg
SGFzaE1hcDx1aW50NjRfdCwgc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1NvY2tldENsaWVudD4+
IG1fc29ja2V0czsKICAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyogbV9jb25uZWN0
aW9uOwogICAgIGJvb2wgbV9pc1N0YXJ0ZWQgeyB0cnVlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuY3BwIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Jlc29sdmVyLmNwcApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zYzk5ODdkMDQ4MDhmM2E3MTg1NzczMTFmOWU1Y2IxNmMzZmYwMTZlCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29y
a1JUQ1Jlc29sdmVyLmNwcApAQCAtMCwwICsxLDEwMSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJOZXR3b3JrUlRDUmVzb2x2ZXIuaCIKKworI2lmIFVTRShM
SUJXRUJSVEMpCisKKyNpbmNsdWRlIDx3dGYvRXhwZWN0ZWQuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK3N0YXRpYyB2b2lkIHJlc29sdmVkTmFtZShDRkhvc3RSZWYgaG9zdFJlZiwgQ0ZIb3N0
SW5mb1R5cGUgdHlwZUluZm8sIGNvbnN0IENGU3RyZWFtRXJyb3IgKmVycm9yLCB2b2lkICppbmZv
KQoreworICAgIEFTU0VSVF9VTlVTRUQodHlwZUluZm8sICF0eXBlSW5mbyk7CisKKyAgICBpZiAo
ZXJyb3ItPmRvbWFpbikgeworICAgICAgICAvLyBGSVhNRTogTmVlZCB0byBoYW5kbGUgZmFpbHVy
ZSwgYnV0IGluZm8gaXMgbm90IHByb3ZpZGVkIGluIHRoZSBjYWxsYmFjay4KKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIEFTU0VSVChpbmZvKTsKKyAgICBhdXRvKiByZXNvbHZlciA9IHN0
YXRpY19jYXN0PE5ldHdvcmtSVENSZXNvbHZlcio+KGluZm8pOworCisgICAgQm9vbGVhbiByZXN1
bHQ7CisgICAgQ0ZBcnJheVJlZiByZXNvbHZlZEFkZHJlc3NlcyA9IChDRkFycmF5UmVmKUNGSG9z
dEdldEFkZHJlc3NpbmcoaG9zdFJlZiwgJnJlc3VsdCk7CisgICAgQVNTRVJUX1VOVVNFRChyZXN1
bHQsIHJlc3VsdCk7CisKKyAgICBzaXplX3QgY291bnQgPSBDRkFycmF5R2V0Q291bnQocmVzb2x2
ZWRBZGRyZXNzZXMpOworICAgIFZlY3RvcjxSVENOZXR3b3JrOjpJUEFkZHJlc3M+IGFkZHJlc3Nl
czsKKyAgICBhZGRyZXNzZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjb3VudCk7CisKKyAgICBm
b3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7ICsraW5kZXgpIHsKKyAgICAgICAg
Q0ZEYXRhUmVmIGRhdGEgPSAoQ0ZEYXRhUmVmKUNGQXJyYXlHZXRWYWx1ZUF0SW5kZXgocmVzb2x2
ZWRBZGRyZXNzZXMsIGluZGV4KTsKKyAgICAgICAgYXV0byogYWRkcmVzcyA9IHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3Qgc3RydWN0IHNvY2thZGRyX2luKj4oQ0ZEYXRhR2V0Qnl0ZVB0cihkYXRhKSk7
CisgICAgICAgIGFkZHJlc3Nlcy51bmNoZWNrZWRBcHBlbmQoUlRDTmV0d29yazo6SVBBZGRyZXNz
KHJ0Yzo6SVBBZGRyZXNzKGFkZHJlc3MtPnNpbl9hZGRyKSkpOworICAgIH0KKyAgICByZXNvbHZl
ci0+Y29tcGxldGVkKGFkZHJlc3Nlcyk7Cit9CisKK05ldHdvcmtSVENSZXNvbHZlcjo6TmV0d29y
a1JUQ1Jlc29sdmVyKENvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAg
OiBtX2NvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKQoreworfQor
CitOZXR3b3JrUlRDUmVzb2x2ZXI6On5OZXR3b3JrUlRDUmVzb2x2ZXIoKQoreworICAgIENGSG9z
dFVuc2NoZWR1bGVGcm9tUnVuTG9vcChtX2hvc3QuZ2V0KCksIENGUnVuTG9vcEdldEN1cnJlbnQo
KSwga0NGUnVuTG9vcERlZmF1bHRNb2RlKTsKKyAgICBDRkhvc3RTZXRDbGllbnQobV9ob3N0Lmdl
dCgpLCBudWxscHRyLCBudWxscHRyKTsKKyAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFuZGxlciA9
IFdURk1vdmUobV9jb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KG1ha2VVbmV4cGVjdGVkKEVycm9yOjpVbmtub3duKSk7Cit9CisKK3ZvaWQgTmV0d29ya1JUQ1Jl
c29sdmVyOjpzdGFydChjb25zdCBTdHJpbmcmIGFkZHJlc3MpCit7CisgICAgbV9ob3N0ID0gYWRv
cHRDRihDRkhvc3RDcmVhdGVXaXRoTmFtZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBhZGRyZXNzLmNy
ZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpKTsKKyAgICBDRkhvc3RDbGllbnRDb250ZXh0IGNvbnRleHQg
PSB7IDAsIHRoaXMsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIgfTsKKyAgICBDRkhvc3RTZXRD
bGllbnQobV9ob3N0LmdldCgpLCByZXNvbHZlZE5hbWUsICZjb250ZXh0KTsKKyAgICBDRkhvc3RT
Y2hlZHVsZVdpdGhSdW5Mb29wKG1faG9zdC5nZXQoKSwgQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBr
Q0ZSdW5Mb29wRGVmYXVsdE1vZGUpOworICAgIEJvb2xlYW4gcmVzdWx0ID0gQ0ZIb3N0U3RhcnRJ
bmZvUmVzb2x1dGlvbihtX2hvc3QuZ2V0KCksIGtDRkhvc3RBZGRyZXNzZXMsIG51bGxwdHIpOwor
ICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQpOworfQorCit2b2lkIE5ldHdvcmtSVENS
ZXNvbHZlcjo6c3RvcCgpCit7CisgICAgQ0ZIb3N0Q2FuY2VsSW5mb1Jlc29sdXRpb24obV9ob3N0
LmdldCgpLCBDRkhvc3RJbmZvVHlwZTo6a0NGSG9zdEFkZHJlc3Nlcyk7CisgICAgaWYgKGF1dG8g
Y29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKG1fY29tcGxldGlvbkhhbmRsZXIpKQorICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChFcnJvcjo6Q2FuY2VsbGVkKSk7Cit9
CisKK3ZvaWQgTmV0d29ya1JUQ1Jlc29sdmVyOjpjb21wbGV0ZWQoY29uc3QgVmVjdG9yPFJUQ05l
dHdvcms6OklQQWRkcmVzcz4mIGFkZHJlc3NlcykKK3sKKyAgICBpZiAoYXV0byBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUobV9jb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKHsgYWRkcmVzc2VzIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwor
I2VuZGlmIC8vIFVTRShMSUJXRUJSVEMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENSZXNvbHZlci5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiY2Y3
MzZlNzY3YTY3MDRiNWNlOTdjZGE4YzcyM2JkZTM1ZTcyNzgKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuaApA
QCAtMCwwICsxLDU5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBVU0UoTElC
V0VCUlRDKQorCisjaW5jbHVkZSAiUlRDTmV0d29yay5oIgorI2luY2x1ZGUgPENGTmV0d29yay9D
Rkhvc3QuaD4KKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKyNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIE5ldHdv
cmtSVENSZXNvbHZlciB7CitwdWJsaWM6CisgICAgZW51bSBjbGFzcyBFcnJvciB7IFVua25vd24s
IENhbmNlbGxlZCB9OworCisgICAgdXNpbmcgQWRkcmVzc2VzT3JFcnJvciA9IEV4cGVjdGVkPHN0
ZDo6cmVmZXJlbmNlX3dyYXBwZXI8Y29uc3QgVmVjdG9yPFJUQ05ldHdvcms6OklQQWRkcmVzcz4+
LCBFcnJvcj47CisgICAgdXNpbmcgQ29tcGxldGlvbkhhbmRsZXIgPSBXVEY6OkNvbXBsZXRpb25I
YW5kbGVyPHZvaWQoQWRkcmVzc2VzT3JFcnJvciYmKT47CisKKyAgICBleHBsaWNpdCBOZXR3b3Jr
UlRDUmVzb2x2ZXIoQ29tcGxldGlvbkhhbmRsZXImJik7CisgICAgfk5ldHdvcmtSVENSZXNvbHZl
cigpOworCisgICAgdm9pZCBzdGFydChjb25zdCBTdHJpbmcmIGFkZHJlc3MpOworICAgIHZvaWQg
c3RvcCgpOworCisgICAgdm9pZCBjb21wbGV0ZWQoY29uc3QgVmVjdG9yPFJUQ05ldHdvcms6OklQ
QWRkcmVzcz4mKTsKKworcHJpdmF0ZToKKyAgICBDb21wbGV0aW9uSGFuZGxlciBtX2NvbXBsZXRp
b25IYW5kbGVyOworICAgIFJldGFpblB0cjxDRkhvc3RSZWY+IG1faG9zdDsKK307CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCisjZW5kaWYgLy8gVVNFKExJQldFQlJUQykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDliOTRkZjVkMTQ3
NzMxYmQwYjI5Y2NkNjcxY2I0NDY2YjA2ZGNmM2UuLjgwY2U2MmExNGNkMWUzZDg1YmUyZWUzNjI4
YWY2ZjVlMjQ2MGNlZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtODc3LDYgKzg3Nyw3IEBACiAJCTNGODdCOUMwMTU4OTQwRDgwMDkw
RkY2MiAvKiBXZWJDb2xvclBpY2tlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gM0Y4N0I5QkYxNTg5NDBEODAwOTBGRjYyIC8qIFdlYkNvbG9yUGlja2Vy
LmggKi87IH07CiAJCTQxMDQ4MkNEMURERDMyNEMwMEYwMDZEMCAvKiBSVENOZXR3b3JrLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDQ4MkNCMURE
RDJGQjUwMEYwMDZEMCAvKiBSVENOZXR3b3JrLmNwcCAqLzsgfTsKIAkJNDEwNDgyQ0UxREREMzI0
RjAwRjAwNkQwIC8qIFJUQ05ldHdvcmsuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQxMDQ4MkNDMURERDJGQjUwMEYwMDZEMCAvKiBSVENOZXR3b3JrLmgg
Ki87IH07CisJCTQxMTJCNTU1MUZBMEVBN0EwMEU2Nzg3NSAvKiBOZXR3b3JrUlRDUmVzb2x2ZXIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDExMkI1
NDcxRjlGRDNBQjAwRTY3ODc1IC8qIE5ldHdvcmtSVENSZXNvbHZlci5jcHAgKi87IH07CiAJCTQx
MUIyMjY0MUUzNzFCQTYwMDRGNzM2MyAvKiBMaWJXZWJSVENOZXR3b3JrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTFCMjI2MjFFMzcxMjQ0MDA0Rjcz
NjMgLyogTGliV2ViUlRDTmV0d29yay5oICovOyB9OwogCQk0MTMwNzVBOTFERTg1RjJDMDAzOUVD
NjkgLyogTmV0d29ya1JUQ1NvY2tldC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MTMwNzU5ODFERTg0RkIwMDAzOUVDNjkgLyogTmV0d29ya1JUQ1Nv
Y2tldC5jcHAgKi87IH07CiAJCTQxMzA3NUFBMURFODVGMzAwMDM5RUM2OSAvKiBOZXR3b3JrUlRD
TW9uaXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MTMwNzU5QTFERTg0RkIwMDAzOUVDNjkgLyogTmV0d29ya1JUQ01vbml0b3IuY3BwICovOyB9
OwpAQCAtMzE3MSw2ICszMTcyLDggQEAKIAkJM0Y4N0I5QkYxNTg5NDBEODAwOTBGRjYyIC8qIFdl
YkNvbG9yUGlja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvbG9y
UGlja2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDQ4MkNCMURERDJGQjUw
MEYwMDZEMCAvKiBSVENOZXR3b3JrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFJUQ05ldHdvcmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTA0
ODJDQzFEREQyRkI1MDBGMDA2RDAgLyogUlRDTmV0d29yay5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSVENOZXR3b3JrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxMTJCNTQ3MUY5RkQzQUIwMEU2Nzg3NSAvKiBOZXR3b3JrUlRDUmVzb2x2ZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTmV0d29ya1JUQ1Jlc29sdmVyLmNwcDsg
cGF0aCA9IE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTEyQjU0ODFGOUZEM0FDMDBFNjc4NzUgLyogTmV0
d29ya1JUQ1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE5ldHdv
cmtSVENSZXNvbHZlci5oOyBwYXRoID0gTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENS
ZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTFCMjI2MjFFMzcxMjQ0
MDA0RjczNjMgLyogTGliV2ViUlRDTmV0d29yay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBMaWJXZWJSVENOZXR3b3JrLmg7IHBhdGggPSBOZXR3b3JrL3dlYnJ0Yy9MaWJXZWJS
VENOZXR3b3JrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMzA3NTk4MURFODRG
QjAwMDM5RUM2OSAvKiBOZXR3b3JrUlRDU29ja2V0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IE5ldHdvcmtSVENTb2NrZXQuY3BwOyBwYXRoID0gTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENTb2NrZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0MTMwNzU5OTFERTg0RkIwMDAzOUVDNjkgLyogTmV0d29ya1JUQ1NvY2tldC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBOZXR3b3JrUlRDU29ja2V0Lmg7IHBhdGggPSBO
ZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1NvY2tldC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMzcyNSw3ICszNzI4LDcgQEAKIAkJN0NERTczQTAxRjlEQTM3QjAwMzkw
MzEyIC8qIFdlYlByZWZlcmVuY2VzRGVmaW5pdGlvbnNCYXNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdlYlByZWZlcmVuY2VzRGVmaW5pdGlvbnNCYXNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDREU3M0ExMUY5REE0MTQwMDM5MDMxMiAvKiBHZW5lcmF0
ZVByZWZlcmVuY2VzLnJiICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucnVieTsgcGF0aCA9IEdlbmVy
YXRlUHJlZmVyZW5jZXMucmI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDREU3M0Ey
MUY5REE1OTcwMDM5MDMxMiAvKiBQcmVmZXJlbmNlc1RlbXBsYXRlcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgcGF0aCA9IFByZWZlcmVu
Y2VzVGVtcGxhdGVzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3Q0RFNzNBMzFGOURB
QjY1MDAzOTAzMTIgLyogV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUg
PSBXZWJQcmVmZXJlbmNlc0RlZmluaXRpb25zLmg7IHBhdGggPSBXZWJQcmVmZXJlbmNlc0RlZmlu
aXRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDREU3M0EzMUY5REFCNjUw
MDM5MDMxMiAvKiBXZWJQcmVmZXJlbmNlc0RlZmluaXRpb25zLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YlByZWZlcmVuY2VzRGVmaW5pdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0NFNEQyMDYxQTQ2Nzc1NzAwQzdGMTUyIC8qIEFQSUxlZ2FjeUNvbnRleHRIaXN0b3J5Q2xpZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFQSUxlZ2FjeUNvbnRleHRIaXN0b3J5Q2xpZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDRTREMjE1MUE0OTE0ODQwMEM3RjE1MiAvKiBXZWJQ
cm9jZXNzUG9vbENvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0NFNEQyMTcxQTQ5MTRBMzAwQzdGMTUyIC8qIFdlYlByb2Nlc3NQb29sLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlByb2Nlc3NQb29sLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTYwMzQsNiArNjAzNyw4IEBACiAJCQkJNDFEQzQ1OTUxRTNE
NkUxRTAwQjExRjUxIC8qIE5ldHdvcmtSVENQcm92aWRlci5jcHAgKi8sCiAJCQkJNDFEQzQ1OTQx
RTNENkUxRTAwQjExRjUxIC8qIE5ldHdvcmtSVENQcm92aWRlci5oICovLAogCQkJCTQxREM0NTk4
MUUzRDZFRDYwMEIxMUY1MSAvKiBOZXR3b3JrUlRDUHJvdmlkZXIubWVzc2FnZXMuaW4gKi8sCisJ
CQkJNDExMkI1NDcxRjlGRDNBQjAwRTY3ODc1IC8qIE5ldHdvcmtSVENSZXNvbHZlci5jcHAgKi8s
CisJCQkJNDExMkI1NDgxRjlGRDNBQzAwRTY3ODc1IC8qIE5ldHdvcmtSVENSZXNvbHZlci5oICov
LAogCQkJCTQxMzA3NTk4MURFODRGQjAwMDM5RUM2OSAvKiBOZXR3b3JrUlRDU29ja2V0LmNwcCAq
LywKIAkJCQk0MTMwNzU5OTFERTg0RkIwMDAzOUVDNjkgLyogTmV0d29ya1JUQ1NvY2tldC5oICov
LAogCQkJCTQxMzA3NTlEMURFODRGQjAwMDM5RUM2OSAvKiBOZXR3b3JrUlRDU29ja2V0Lm1lc3Nh
Z2VzLmluICovLApAQCAtMTAyOTgsNiArMTAzMDMsNyBAQAogCQkJCTUxRjA2MEUxMTY1NDMxODUw
MEYzMjgxRSAvKiBOZXR3b3JrUlRDTW9uaXRvck1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk0MURDNDU5NzFFM0Q2RTIyMDBCMTFGNTEgLyogTmV0d29ya1JUQ1Byb3ZpZGVy
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxRjA2MEUxMTY1NDMxODUwMEYzMjgyRSAvKiBOZXR3
b3JrUlRDUHJvdmlkZXJNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNDEx
MkI1NTUxRkEwRUE3QTAwRTY3ODc1IC8qIE5ldHdvcmtSVENSZXNvbHZlci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk0MTMwNzVBOTFERTg1RjJDMDAzOUVDNjkgLyogTmV0d29ya1JUQ1NvY2tldC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1MUYwNjBFMTE2NTQzMTg1MDBGMzI4MUQgLyogTmV0d29y
a1JUQ1NvY2tldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzgyODNB
QzE2QjRCRjNGMDBBMjc4RkUgLyogTmV0d29ya1NlcnZpY2VFbnRyeVBvaW50Lm1tIGluIFNvdXJj
ZXMgKi8sCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324870</attachid>
            <date>2017-10-25 12:52:48 -0700</date>
            <delta_ts>2017-10-25 15:27:10 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-178796-20171025125247.patch</filename>
            <type>text/plain</type>
            <size>18265</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzOTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDhjODdlMWQ3YzNiN2YxZDIx
NzM0MGE3ODZlZGNlNzFlZjEyYWIyZmIuLjJiZGMyZWVjODUxYjgwMDJhNTdlOGMyMGU5YTY2N2Ix
MGQ2YjUzYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTctMTAtMjUgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgRE5TIHJlc29sdXRpb24g
b3V0c2lkZSBvZiBOZXR3b3JrUlRDUHJvdmlkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODc5NgorCisgICAgICAgIFJldmlld2VkIGJ5IEdlb2Zm
cmV5IEdhcmVuLgorCisgICAgICAgVGVzdGVkIHRocm91Z2ggbWFudWFsIHRlc3Rpbmcgb24gZXh0
ZXJuYWwgU1RVTiBzZXJ2ZXJzLgorICAgICAgIE1vdmluZyBOZXR3b3JrUlRDUHJvdmlkZXI6OlJl
c29sdmVyIGludG8gTmV0d29ya1JUQ1Jlc29sdmVyLgorICAgICAgIFVwZGF0aW5nIHRoZSBpbXBs
ZW1lbnRhdGlvbiB0byB1c2UgYSBjb21wbGV0aW9uIGhhbmRsZXIuCisKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVhdGVSZXNvbHZlcik6CisgICAgICAgICogTmV0d29y
a1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrUlRDUmVzb2x2ZXI6Ok5ldHdvcmtSVENSZXNvbHZlcik6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtSVENSZXNvbHZlcjo6fk5ldHdvcmtSVENSZXNvbHZlcik6CisgICAgICAgIChXZWJL
aXQ6Ok5ldHdvcmtSVENSZXNvbHZlcjo6c3RhcnQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UlRDUmVzb2x2ZXI6OnN0b3ApOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUlRDUmVzb2x2ZXI6
OmNvbXBsZXRlZCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRlcjo6UmVzb2x2
ZXI6On5SZXNvbHZlcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92
aWRlcjo6c3RvcCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRl
cjo6cmVzb2x1dGlvbkNvbXBsZXRlZCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENSZXNvbHZlci5oOgorICAgICAgICAqIFdlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDE3LTEwLTI1ICBZb3VzdWtlIEtpbW90byAgPHlvdXN1
a2Uua2ltb3RvQHNvbnkuY29tPgogCiAgICAgICAgIFtXaW5DYWlyb10gQWRkIFdlYktpdCBwbGF0
Zm9ybSBmaWxlcyBmb3Igd2luY2Fpcm8gd2Via2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3BwIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcAppbmRleCBi
MjE2YzZmMjhlMTVhMjRmMDg2MjY2NmNiYjNlNDI2ODRmOTg0ZWUzLi5iNmVhZGNkOGZiYzc0MTcy
M2Y0NWU4NWNlMmNjNTVhYTliZDllN2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5jcHAKQEAgLTMxLDYg
KzMxLDcgQEAKICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MuaCIKICNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzcy5oIgorI2luY2x1ZGUg
Ik5ldHdvcmtSVENSZXNvbHZlci5oIgogI2luY2x1ZGUgIk5ldHdvcmtSVENTb2NrZXQuaCIKICNp
bmNsdWRlICJXZWJSVENSZXNvbHZlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUlRDU29ja2V0
TWVzc2FnZXMuaCIKQEAgLTE2Myw2MCArMTY0LDIyIEBAIHZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVy
OjpkaWRSZWNlaXZlTmV0d29ya1JUQ1NvY2tldE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25u
CiAKIHZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVhdGVSZXNvbHZlcih1aW50NjRfdCBpZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIGFkZHJlc3MpCiB7Ci0gICAgYXV0byByZXNvbHZlciA9IHN0
ZDo6bWFrZV91bmlxdWU8UmVzb2x2ZXI+KGlkZW50aWZpZXIsICp0aGlzLCBhZG9wdENGKENGSG9z
dENyZWF0ZVdpdGhOYW1lKGtDRkFsbG9jYXRvckRlZmF1bHQsIGFkZHJlc3MuY3JlYXRlQ0ZTdHJp
bmcoKS5nZXQoKSkpKTsKLQotICAgIENGSG9zdENsaWVudENvbnRleHQgY29udGV4dCA9IHsgMCwg
cmVzb2x2ZXIuZ2V0KCksIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIgfTsKLSAgICBDRkhvc3RT
ZXRDbGllbnQocmVzb2x2ZXItPmhvc3QuZ2V0KCksIE5ldHdvcmtSVENQcm92aWRlcjo6cmVzb2x2
ZWROYW1lLCAmY29udGV4dCk7Ci0gICAgQ0ZIb3N0U2NoZWR1bGVXaXRoUnVuTG9vcChyZXNvbHZl
ci0+aG9zdC5nZXQoKSwgQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBrQ0ZSdW5Mb29wRGVmYXVsdE1v
ZGUpOwotICAgIEJvb2xlYW4gcmVzdWx0ID0gQ0ZIb3N0U3RhcnRJbmZvUmVzb2x1dGlvbihyZXNv
bHZlci0+aG9zdC5nZXQoKSwga0NGSG9zdEFkZHJlc3NlcywgbnVsbHB0cik7Ci0gICAgQVNTRVJU
X1VOVVNFRChyZXN1bHQsIHJlc3VsdCk7Ci0KKyAgICBhdXRvIHJlc29sdmVyID0gc3RkOjptYWtl
X3VuaXF1ZTxOZXR3b3JrUlRDUmVzb2x2ZXI+KFt0aGlzLCBpZGVudGlmaWVyXShOZXR3b3JrUlRD
UmVzb2x2ZXI6OkFkZHJlc3Nlc09yRXJyb3ImJiByZXN1bHQpIG11dGFibGUgeworICAgICAgICBp
ZiAoIXJlc3VsdC5oYXNWYWx1ZSgpKSB7CisgICAgICAgICAgICBpZiAocmVzdWx0LmVycm9yKCkg
IT0gTmV0d29ya1JUQ1Jlc29sdmVyOjpFcnJvcjo6Q2FuY2VsbGVkKQorICAgICAgICAgICAgICAg
IG1fY29ubmVjdGlvbi0+Y29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OldlYlJUQ1Jlc29sdmVy
OjpSZXNvbHZlZEFkZHJlc3NFcnJvcigxKSwgaWRlbnRpZmllcik7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KKyAgICAgICAgbV9jb25uZWN0aW9uLT5jb25uZWN0aW9uKCkuc2VuZChN
ZXNzYWdlczo6V2ViUlRDUmVzb2x2ZXI6OlNldFJlc29sdmVkQWRkcmVzcyhyZXN1bHQudmFsdWUo
KSksIGlkZW50aWZpZXIpOworICAgIH0pOworICAgIHJlc29sdmVyLT5zdGFydChhZGRyZXNzKTsK
ICAgICBtX3Jlc29sdmVycy5hZGQoaWRlbnRpZmllciwgV1RGTW92ZShyZXNvbHZlcikpOwogfQog
Ci1OZXR3b3JrUlRDUHJvdmlkZXI6OlJlc29sdmVyOjp+UmVzb2x2ZXIoKQotewotICAgIENGSG9z
dFVuc2NoZWR1bGVGcm9tUnVuTG9vcChob3N0LmdldCgpLCBDRlJ1bkxvb3BHZXRDdXJyZW50KCks
IGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci0gICAgQ0ZIb3N0U2V0Q2xpZW50KGhvc3QuZ2V0KCks
IG51bGxwdHIsIG51bGxwdHIpOwotfQotCiB2b2lkIE5ldHdvcmtSVENQcm92aWRlcjo6c3RvcFJl
c29sdmVyKHVpbnQ2NF90IGlkZW50aWZpZXIpCiB7Ci0gICAgQVNTRVJUKGlkZW50aWZpZXIpOwog
ICAgIGlmIChhdXRvIHJlc29sdmVyID0gbV9yZXNvbHZlcnMudGFrZShpZGVudGlmaWVyKSkKLSAg
ICAgICAgQ0ZIb3N0Q2FuY2VsSW5mb1Jlc29sdXRpb24ocmVzb2x2ZXItPmhvc3QuZ2V0KCksIENG
SG9zdEluZm9UeXBlOjprQ0ZIb3N0QWRkcmVzc2VzKTsKLX0KLQotdm9pZCBOZXR3b3JrUlRDUHJv
dmlkZXI6OnJlc29sdmVkTmFtZShDRkhvc3RSZWYgaG9zdFJlZiwgQ0ZIb3N0SW5mb1R5cGUgdHlw
ZUluZm8sIGNvbnN0IENGU3RyZWFtRXJyb3IgKmVycm9yLCB2b2lkICppbmZvKQotewotICAgIEFT
U0VSVF9VTlVTRUQodHlwZUluZm8sICF0eXBlSW5mbyk7Ci0KLSAgICBpZiAoZXJyb3ItPmRvbWFp
bikgewotICAgICAgICAvLyBGSVhNRTogTmVlZCB0byBoYW5kbGUgZmFpbHVyZSwgYnV0IGluZm8g
aXMgbm90IHByb3ZpZGVkIGluIHRoZSBjYWxsYmFjay4KLSAgICAgICAgcmV0dXJuOwotICAgIH0K
LQotICAgIEFTU0VSVChpbmZvKTsKLSAgICBhdXRvKiByZXNvbHZlckluZm8gPSBzdGF0aWNfY2Fz
dDxSZXNvbHZlcio+KGluZm8pOwotICAgIGF1dG8gcmVzb2x2ZXIgPSByZXNvbHZlckluZm8tPnJ0
Y1Byb3ZpZGVyLm1fcmVzb2x2ZXJzLnRha2UocmVzb2x2ZXJJbmZvLT5pZGVudGlmaWVyKTsKLSAg
ICBpZiAoIXJlc29sdmVyKQotICAgICAgICByZXR1cm47Ci0KLSAgICBCb29sZWFuIHJlc3VsdDsK
LSAgICBDRkFycmF5UmVmIHJlc29sdmVkQWRkcmVzc2VzID0gKENGQXJyYXlSZWYpQ0ZIb3N0R2V0
QWRkcmVzc2luZyhob3N0UmVmLCAmcmVzdWx0KTsKLSAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwg
cmVzdWx0KTsKLQotICAgIHNpemVfdCBjb3VudCA9IENGQXJyYXlHZXRDb3VudChyZXNvbHZlZEFk
ZHJlc3Nlcyk7Ci0gICAgVmVjdG9yPFJUQ05ldHdvcms6OklQQWRkcmVzcz4gYWRkcmVzc2VzOwot
ICAgIGFkZHJlc3Nlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGNvdW50KTsKLQotICAgIGZvciAo
c2l6ZV90IGluZGV4ID0gMDsgaW5kZXggPCBjb3VudDsgKytpbmRleCkgewotICAgICAgICBDRkRh
dGFSZWYgZGF0YSA9IChDRkRhdGFSZWYpQ0ZBcnJheUdldFZhbHVlQXRJbmRleChyZXNvbHZlZEFk
ZHJlc3NlcywgaW5kZXgpOwotICAgICAgICBhdXRvKiBhZGRyZXNzID0gcmVpbnRlcnByZXRfY2Fz
dDxjb25zdCBzdHJ1Y3Qgc29ja2FkZHJfaW4qPihDRkRhdGFHZXRCeXRlUHRyKGRhdGEpKTsKLSAg
ICAgICAgYWRkcmVzc2VzLnVuY2hlY2tlZEFwcGVuZChSVENOZXR3b3JrOjpJUEFkZHJlc3MocnRj
OjpJUEFkZHJlc3MoYWRkcmVzcy0+c2luX2FkZHIpKSk7Ci0gICAgfQotICAgIEFTU0VSVChyZXNv
bHZlci0+cnRjUHJvdmlkZXIubV9jb25uZWN0aW9uKTsKLSAgICByZXNvbHZlci0+cnRjUHJvdmlk
ZXIubV9jb25uZWN0aW9uLT5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6V2ViUlRDUmVzb2x2
ZXI6OlNldFJlc29sdmVkQWRkcmVzcyhhZGRyZXNzZXMpLCByZXNvbHZlci0+aWRlbnRpZmllcik7
CisgICAgICAgIHJlc29sdmVyLT5zdG9wKCk7CiB9CiAKIHZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVy
OjpjbG9zZUxpc3RlbmluZ1NvY2tldHMoRnVuY3Rpb248dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Byb3ZpZGVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9O
ZXR3b3JrUlRDUHJvdmlkZXIuaAppbmRleCA4YjdlZDVlZDYxNDZmZTM0NzBlYjE1MjdjNWE0ZDc1
MGI5YjIyMjEwLi44NWZlYzc1MTlhMjQ0NmFjODYwZDM3OWJmNWVlM2ExOGM1NmMxZTU4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJv
dmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3Jr
UlRDUHJvdmlkZXIuaApAQCAtMzAsNyArMzAsNiBAQAogI2luY2x1ZGUgIkxpYldlYlJUQ1NvY2tl
dENsaWVudC5oIgogI2luY2x1ZGUgIk5ldHdvcmtSVENNb25pdG9yLmgiCiAjaW5jbHVkZSAiUlRD
TmV0d29yay5oIgotI2luY2x1ZGUgPENGTmV0d29yay9DRkhvc3QuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL0xpYldlYlJUQ01hY3Jvcy5oPgogI2luY2x1ZGUgPHdlYnJ0Yy9iYXNlL3NpZ3Nsb3QuaD4K
ICNpbmNsdWRlIDx3ZWJydGMvcDJwL2Jhc2UvYmFzaWNwYWNrZXRzb2NrZXRmYWN0b3J5Lmg+CkBA
IC00NSw4ICs0NCw4IEBAIGNsYXNzIERlY29kZXI7CiB9CiAKIG5hbWVzcGFjZSBXZWJLaXQgewot
CiBjbGFzcyBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzczsKK2NsYXNzIE5ldHdvcmtSVENS
ZXNvbHZlcjsKIGNsYXNzIE5ldHdvcmtSVENTb2NrZXQ7CiAKIGNsYXNzIE5ldHdvcmtSVENQcm92
aWRlciA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxOZXR3b3JrUlRDUHJvdmlkZXI+LCBw
dWJsaWMgcnRjOjpNZXNzYWdlSGFuZGxlciB7CkBAIC04OSwyMSArODgsNyBAQCBwcml2YXRlOgog
CiAgICAgdm9pZCBPbk1lc3NhZ2UocnRjOjpNZXNzYWdlKik7CiAKLSAgICBzdGF0aWMgdm9pZCBy
ZXNvbHZlZE5hbWUoQ0ZIb3N0UmVmLCBDRkhvc3RJbmZvVHlwZSwgY29uc3QgQ0ZTdHJlYW1FcnJv
ciosIHZvaWQqKTsKLQotICAgIHN0cnVjdCBSZXNvbHZlciB7Ci0gICAgICAgIFJlc29sdmVyKHVp
bnQ2NF90IGlkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRlciYgcnRjUHJvdmlkZXIsIFJldGFp
blB0cjxDRkhvc3RSZWY+JiYgaG9zdCkKLSAgICAgICAgICAgIDogaWRlbnRpZmllcihpZGVudGlm
aWVyKQotICAgICAgICAgICAgLCBydGNQcm92aWRlcihydGNQcm92aWRlcikKLSAgICAgICAgICAg
ICwgaG9zdChXVEZNb3ZlKGhvc3QpKSB7IH0KLSAgICAgICAgflJlc29sdmVyKCk7Ci0KLSAgICAg
ICAgdWludDY0X3QgaWRlbnRpZmllcjsKLSAgICAgICAgTmV0d29ya1JUQ1Byb3ZpZGVyJiBydGNQ
cm92aWRlcjsKLSAgICAgICAgUmV0YWluUHRyPENGSG9zdFJlZj4gaG9zdDsKLSAgICB9OwotCi0g
ICAgSGFzaE1hcDx1aW50NjRfdCwgc3RkOjp1bmlxdWVfcHRyPFJlc29sdmVyPj4gbV9yZXNvbHZl
cnM7CisgICAgSGFzaE1hcDx1aW50NjRfdCwgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSVENSZXNv
bHZlcj4+IG1fcmVzb2x2ZXJzOwogICAgIEhhc2hNYXA8dWludDY0X3QsIHN0ZDo6dW5pcXVlX3B0
cjxMaWJXZWJSVENTb2NrZXRDbGllbnQ+PiBtX3NvY2tldHM7CiAgICAgTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MqIG1fY29ubmVjdGlvbjsKICAgICBib29sIG1faXNTdGFydGVkIHsgdHJ1
ZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Jlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRj
L05ldHdvcmtSVENSZXNvbHZlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2M5OTg3ZDA0ODA4ZjNhNzE4NTc3
MzExZjllNWNiMTZjM2ZmMDE2ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENSZXNvbHZlci5jcHAKQEAgLTAsMCArMSwxMDEg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTmV0d29ya1JU
Q1Jlc29sdmVyLmgiCisKKyNpZiBVU0UoTElCV0VCUlRDKQorCisjaW5jbHVkZSA8d3RmL0V4cGVj
dGVkLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdGF0aWMgdm9pZCByZXNvbHZlZE5hbWUo
Q0ZIb3N0UmVmIGhvc3RSZWYsIENGSG9zdEluZm9UeXBlIHR5cGVJbmZvLCBjb25zdCBDRlN0cmVh
bUVycm9yICplcnJvciwgdm9pZCAqaW5mbykKK3sKKyAgICBBU1NFUlRfVU5VU0VEKHR5cGVJbmZv
LCAhdHlwZUluZm8pOworCisgICAgaWYgKGVycm9yLT5kb21haW4pIHsKKyAgICAgICAgLy8gRklY
TUU6IE5lZWQgdG8gaGFuZGxlIGZhaWx1cmUsIGJ1dCBpbmZvIGlzIG5vdCBwcm92aWRlZCBpbiB0
aGUgY2FsbGJhY2suCisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBBU1NFUlQoaW5mbyk7
CisgICAgYXV0byogcmVzb2x2ZXIgPSBzdGF0aWNfY2FzdDxOZXR3b3JrUlRDUmVzb2x2ZXIqPihp
bmZvKTsKKworICAgIEJvb2xlYW4gcmVzdWx0OworICAgIENGQXJyYXlSZWYgcmVzb2x2ZWRBZGRy
ZXNzZXMgPSAoQ0ZBcnJheVJlZilDRkhvc3RHZXRBZGRyZXNzaW5nKGhvc3RSZWYsICZyZXN1bHQp
OworICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQpOworCisgICAgc2l6ZV90IGNvdW50
ID0gQ0ZBcnJheUdldENvdW50KHJlc29sdmVkQWRkcmVzc2VzKTsKKyAgICBWZWN0b3I8UlRDTmV0
d29yazo6SVBBZGRyZXNzPiBhZGRyZXNzZXM7CisgICAgYWRkcmVzc2VzLnJlc2VydmVJbml0aWFs
Q2FwYWNpdHkoY291bnQpOworCisgICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNv
dW50OyArK2luZGV4KSB7CisgICAgICAgIENGRGF0YVJlZiBkYXRhID0gKENGRGF0YVJlZilDRkFy
cmF5R2V0VmFsdWVBdEluZGV4KHJlc29sdmVkQWRkcmVzc2VzLCBpbmRleCk7CisgICAgICAgIGF1
dG8qIGFkZHJlc3MgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHN0cnVjdCBzb2NrYWRkcl9pbio+
KENGRGF0YUdldEJ5dGVQdHIoZGF0YSkpOworICAgICAgICBhZGRyZXNzZXMudW5jaGVja2VkQXBw
ZW5kKFJUQ05ldHdvcms6OklQQWRkcmVzcyhydGM6OklQQWRkcmVzcyhhZGRyZXNzLT5zaW5fYWRk
cikpKTsKKyAgICB9CisgICAgcmVzb2x2ZXItPmNvbXBsZXRlZChhZGRyZXNzZXMpOworfQorCitO
ZXR3b3JrUlRDUmVzb2x2ZXI6Ok5ldHdvcmtSVENSZXNvbHZlcihDb21wbGV0aW9uSGFuZGxlciYm
IGNvbXBsZXRpb25IYW5kbGVyKQorICAgIDogbV9jb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSkKK3sKK30KKworTmV0d29ya1JUQ1Jlc29sdmVyOjp+TmV0d29ya1JU
Q1Jlc29sdmVyKCkKK3sKKyAgICBDRkhvc3RVbnNjaGVkdWxlRnJvbVJ1bkxvb3AobV9ob3N0Lmdl
dCgpLCBDRlJ1bkxvb3BHZXRDdXJyZW50KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7CisgICAg
Q0ZIb3N0U2V0Q2xpZW50KG1faG9zdC5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgaWYg
KGF1dG8gY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKG1fY29tcGxldGlvbkhhbmRsZXIpKQor
ICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChFcnJvcjo6VW5rbm93bikp
OworfQorCit2b2lkIE5ldHdvcmtSVENSZXNvbHZlcjo6c3RhcnQoY29uc3QgU3RyaW5nJiBhZGRy
ZXNzKQoreworICAgIG1faG9zdCA9IGFkb3B0Q0YoQ0ZIb3N0Q3JlYXRlV2l0aE5hbWUoa0NGQWxs
b2NhdG9yRGVmYXVsdCwgYWRkcmVzcy5jcmVhdGVDRlN0cmluZygpLmdldCgpKSk7CisgICAgQ0ZI
b3N0Q2xpZW50Q29udGV4dCBjb250ZXh0ID0geyAwLCB0aGlzLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyIH07CisgICAgQ0ZIb3N0U2V0Q2xpZW50KG1faG9zdC5nZXQoKSwgcmVzb2x2ZWROYW1l
LCAmY29udGV4dCk7CisgICAgQ0ZIb3N0U2NoZWR1bGVXaXRoUnVuTG9vcChtX2hvc3QuZ2V0KCks
IENGUnVuTG9vcEdldEN1cnJlbnQoKSwga0NGUnVuTG9vcERlZmF1bHRNb2RlKTsKKyAgICBCb29s
ZWFuIHJlc3VsdCA9IENGSG9zdFN0YXJ0SW5mb1Jlc29sdXRpb24obV9ob3N0LmdldCgpLCBrQ0ZI
b3N0QWRkcmVzc2VzLCBudWxscHRyKTsKKyAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0
KTsKK30KKwordm9pZCBOZXR3b3JrUlRDUmVzb2x2ZXI6OnN0b3AoKQoreworICAgIENGSG9zdENh
bmNlbEluZm9SZXNvbHV0aW9uKG1faG9zdC5nZXQoKSwgQ0ZIb3N0SW5mb1R5cGU6OmtDRkhvc3RB
ZGRyZXNzZXMpOworICAgIGlmIChhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShtX2Nv
bXBsZXRpb25IYW5kbGVyKSkKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhwZWN0
ZWQoRXJyb3I6OkNhbmNlbGxlZCkpOworfQorCit2b2lkIE5ldHdvcmtSVENSZXNvbHZlcjo6Y29t
cGxldGVkKGNvbnN0IFZlY3RvcjxSVENOZXR3b3JrOjpJUEFkZHJlc3M+JiBhZGRyZXNzZXMpCit7
CisgICAgaWYgKGF1dG8gY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKG1fY29tcGxldGlvbkhh
bmRsZXIpKQorICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7IGFkZHJlc3NlcyB9KTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZiAvLyBVU0UoTElCV0VCUlRDKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Jlc29s
dmVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVz
b2x2ZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xYmNmNzM2ZTc2N2E2NzA0YjVjZTk3Y2RhOGM3MjNiZGUzNWU3
Mjc4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJy
dGMvTmV0d29ya1JUQ1Jlc29sdmVyLmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNw
cmFnbWEgb25jZQorCisjaWYgVVNFKExJQldFQlJUQykKKworI2luY2x1ZGUgIlJUQ05ldHdvcmsu
aCIKKyNpbmNsdWRlIDxDRk5ldHdvcmsvQ0ZIb3N0Lmg+CisjaW5jbHVkZSA8d3RmL0NvbXBsZXRp
b25IYW5kbGVyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitjbGFzcyBOZXR3b3JrUlRDUmVzb2x2ZXIgeworcHVibGljOgorICAgIGVu
dW0gY2xhc3MgRXJyb3IgeyBVbmtub3duLCBDYW5jZWxsZWQgfTsKKworICAgIHVzaW5nIEFkZHJl
c3Nlc09yRXJyb3IgPSBFeHBlY3RlZDxzdGQ6OnJlZmVyZW5jZV93cmFwcGVyPGNvbnN0IFZlY3Rv
cjxSVENOZXR3b3JrOjpJUEFkZHJlc3M+PiwgRXJyb3I+OworICAgIHVzaW5nIENvbXBsZXRpb25I
YW5kbGVyID0gV1RGOjpDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEFkZHJlc3Nlc09yRXJyb3ImJik+
OworCisgICAgZXhwbGljaXQgTmV0d29ya1JUQ1Jlc29sdmVyKENvbXBsZXRpb25IYW5kbGVyJiYp
OworICAgIH5OZXR3b3JrUlRDUmVzb2x2ZXIoKTsKKworICAgIHZvaWQgc3RhcnQoY29uc3QgU3Ry
aW5nJiBhZGRyZXNzKTsKKyAgICB2b2lkIHN0b3AoKTsKKworICAgIHZvaWQgY29tcGxldGVkKGNv
bnN0IFZlY3RvcjxSVENOZXR3b3JrOjpJUEFkZHJlc3M+Jik7CisKK3ByaXZhdGU6CisgICAgQ29t
cGxldGlvbkhhbmRsZXIgbV9jb21wbGV0aW9uSGFuZGxlcjsKKyAgICBSZXRhaW5QdHI8Q0ZIb3N0
UmVmPiBtX2hvc3Q7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKworI2VuZGlmIC8vIFVT
RShMSUJXRUJSVEMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCAxYWUyMGRlNWJiMDM2NTIzM2VkNTJjN2IxY2Q5ZmI1NDBkNjFiYjgwLi45
YzE0NjhkOTIwMmFjMzA2OTA4MzRlYjk1ZjdmMTFlZjExYmI1ZjAxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTg3Nyw2ICs4NzcsNyBA
QAogCQkzRjg3QjlDMDE1ODk0MEQ4MDA5MEZGNjIgLyogV2ViQ29sb3JQaWNrZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGODdCOUJGMTU4OTQwRDgw
MDkwRkY2MiAvKiBXZWJDb2xvclBpY2tlci5oICovOyB9OwogCQk0MTA0ODJDRDFEREQzMjRDMDBG
MDA2RDAgLyogUlRDTmV0d29yay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MTA0ODJDQjFEREQyRkI1MDBGMDA2RDAgLyogUlRDTmV0d29yay5jcHAg
Ki87IH07CiAJCTQxMDQ4MkNFMURERDMyNEYwMEYwMDZEMCAvKiBSVENOZXR3b3JrLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTA0ODJDQzFEREQyRkI1
MDBGMDA2RDAgLyogUlRDTmV0d29yay5oICovOyB9OworCQk0MTEyQjU1NTFGQTBFQTdBMDBFNjc4
NzUgLyogTmV0d29ya1JUQ1Jlc29sdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxMTJCNTQ3MUY5RkQzQUIwMEU2Nzg3NSAvKiBOZXR3b3JrUlRD
UmVzb2x2ZXIuY3BwICovOyB9OwogCQk0MTFCMjI2NDFFMzcxQkE2MDA0RjczNjMgLyogTGliV2Vi
UlRDTmV0d29yay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDExQjIyNjIxRTM3MTI0NDAwNEY3MzYzIC8qIExpYldlYlJUQ05ldHdvcmsuaCAqLzsgfTsK
IAkJNDEzMDc1QTkxREU4NUYyQzAwMzlFQzY5IC8qIE5ldHdvcmtSVENTb2NrZXQuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzMDc1OTgxREU4NEZC
MDAwMzlFQzY5IC8qIE5ldHdvcmtSVENTb2NrZXQuY3BwICovOyB9OwogCQk0MTMwNzVBQTFERTg1
RjMwMDAzOUVDNjkgLyogTmV0d29ya1JUQ01vbml0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzMDc1OUExREU4NEZCMDAwMzlFQzY5IC8qIE5l
dHdvcmtSVENNb25pdG9yLmNwcCAqLzsgfTsKQEAgLTMxNzEsNiArMzE3Miw4IEBACiAJCTNGODdC
OUJGMTU4OTQwRDgwMDkwRkY2MiAvKiBXZWJDb2xvclBpY2tlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJDb2xvclBpY2tlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTA0ODJDQjFEREQyRkI1MDBGMDA2RDAgLyogUlRDTmV0d29yay5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENOZXR3b3JrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwNDgyQ0MxREREMkZCNTAwRjAwNkQwIC8qIFJUQ05ldHdv
cmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDTmV0d29yay5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTEyQjU0NzFGOUZEM0FCMDBFNjc4NzUgLyogTmV0
d29ya1JUQ1Jlc29sdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IE5ldHdvcmtSVENSZXNvbHZlci5jcHA7IHBhdGggPSBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Jlc29sdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExMkI1
NDgxRjlGRDNBQzAwRTY3ODc1IC8qIE5ldHdvcmtSVENSZXNvbHZlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBOZXR3b3JrUlRDUmVzb2x2ZXIuaDsgcGF0aCA9IE5ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUmVzb2x2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDExQjIyNjIxRTM3MTI0NDAwNEY3MzYzIC8qIExpYldlYlJUQ05ldHdvcmsuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGliV2ViUlRDTmV0d29yay5oOyBwYXRo
ID0gTmV0d29yay93ZWJydGMvTGliV2ViUlRDTmV0d29yay5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MTMwNzU5ODFERTg0RkIwMDAzOUVDNjkgLyogTmV0d29ya1JUQ1NvY2tldC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBOZXR3b3JrUlRDU29ja2V0
LmNwcDsgcGF0aCA9IE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDU29ja2V0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDc1OTkxREU4NEZCMDAwMzlFQzY5IC8q
IE5ldHdvcmtSVENTb2NrZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTmV0
d29ya1JUQ1NvY2tldC5oOyBwYXRoID0gTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENT
b2NrZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTYwMzQsNiArNjAzNyw4IEBA
CiAJCQkJNDFEQzQ1OTUxRTNENkUxRTAwQjExRjUxIC8qIE5ldHdvcmtSVENQcm92aWRlci5jcHAg
Ki8sCiAJCQkJNDFEQzQ1OTQxRTNENkUxRTAwQjExRjUxIC8qIE5ldHdvcmtSVENQcm92aWRlci5o
ICovLAogCQkJCTQxREM0NTk4MUUzRDZFRDYwMEIxMUY1MSAvKiBOZXR3b3JrUlRDUHJvdmlkZXIu
bWVzc2FnZXMuaW4gKi8sCisJCQkJNDExMkI1NDcxRjlGRDNBQjAwRTY3ODc1IC8qIE5ldHdvcmtS
VENSZXNvbHZlci5jcHAgKi8sCisJCQkJNDExMkI1NDgxRjlGRDNBQzAwRTY3ODc1IC8qIE5ldHdv
cmtSVENSZXNvbHZlci5oICovLAogCQkJCTQxMzA3NTk4MURFODRGQjAwMDM5RUM2OSAvKiBOZXR3
b3JrUlRDU29ja2V0LmNwcCAqLywKIAkJCQk0MTMwNzU5OTFERTg0RkIwMDAzOUVDNjkgLyogTmV0
d29ya1JUQ1NvY2tldC5oICovLAogCQkJCTQxMzA3NTlEMURFODRGQjAwMDM5RUM2OSAvKiBOZXR3
b3JrUlRDU29ja2V0Lm1lc3NhZ2VzLmluICovLApAQCAtMTAyOTQsNiArMTAyOTksNyBAQAogCQkJ
CTUxRjA2MEUxMTY1NDMxODUwMEYzMjgxRSAvKiBOZXR3b3JrUlRDTW9uaXRvck1lc3NhZ2VSZWNl
aXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MURDNDU5NzFFM0Q2RTIyMDBCMTFGNTEgLyog
TmV0d29ya1JUQ1Byb3ZpZGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxRjA2MEUxMTY1NDMx
ODUwMEYzMjgyRSAvKiBOZXR3b3JrUlRDUHJvdmlkZXJNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJNDExMkI1NTUxRkEwRUE3QTAwRTY3ODc1IC8qIE5ldHdvcmtSVENSZXNv
bHZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MTMwNzVBOTFERTg1RjJDMDAzOUVDNjkgLyog
TmV0d29ya1JUQ1NvY2tldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MUYwNjBFMTE2NTQzMTg1
MDBGMzI4MUQgLyogTmV0d29ya1JUQ1NvY2tldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCQzgyODNBQzE2QjRCRjNGMDBBMjc4RkUgLyogTmV0d29ya1NlcnZpY2VFbnRy
eVBvaW50Lm1tIGluIFNvdXJjZXMgKi8sCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>