<?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>143130</bug_id>
          
          <creation_ts>2015-03-27 04:30:38 -0700</creation_ts>
          <short_desc>[Streams API] Split ReadableStream/Reader implementation according source type (JS vs native)</short_desc>
          <delta_ts>2015-04-03 01:08:31 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1080582</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-03-27 04:30:38 -0700</bug_when>
    <thetext>It may be cleaner to wrap all JS source specific handling (errors in particular) in separate classes from the core ReadableStream/ReadableStreamReader classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080597</commentid>
    <comment_count>1</comment_count>
      <attachid>249568</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-03-27 07:53:29 -0700</bug_when>
    <thetext>Created attachment 249568
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081611</commentid>
    <comment_count>2</comment_count>
      <attachid>249817</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-03-31 04:11:09 -0700</bug_when>
    <thetext>Created attachment 249817
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082209</commentid>
    <comment_count>3</comment_count>
      <attachid>249971</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-04-02 05:25:42 -0700</bug_when>
    <thetext>Created attachment 249971
Fixed memory leak</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082381</commentid>
    <comment_count>4</comment_count>
      <attachid>249971</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-04-02 16:02:26 -0700</bug_when>
    <thetext>Comment on attachment 249971
Fixed memory leak

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

I am quite surprised you specialize the reader, I was expecting a subclass only for ReadableStream.

I guess ReadableJSStream and ReadableJSStreamReader will grow right? I would give them their own header.

r=me in any case, no problem with this patch.

&gt; Source/WebCore/ChangeLog:16
&gt; +        (WebCore::ReadableStream::ReadableStream): Moved suspendIfNeeded inside constructor to ese subclassing.

Typo: ese

&gt; Source/WebCore/bindings/js/ReadableStreamJSSource.h:65
&gt; +

Useless blank line here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082478</commentid>
    <comment_count>5</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-04-03 00:12:54 -0700</bug_when>
    <thetext>Thanks for the review.

(In reply to comment #4)
&gt; Comment on attachment 249971 [details]
&gt; Fixed memory leak
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=249971&amp;action=review
&gt; 
&gt; I am quite surprised you specialize the reader, I was expecting a subclass
&gt; only for ReadableStream.

ReadableJSStreamReader sole purpose is to store JS errors as a JSC::Strong. 
ReadableStream does also the chunk queue management.

&gt; I guess ReadableJSStream and ReadableJSStreamReader will grow right? I would
&gt; give them their own header.

Yes, maybe we could move ReadableJSStream and ReadableJSStreamReader to a different file. I would keep both classes together, ReadableJSStreamReader taking only 15 lines with the error storage code.

&gt; 
&gt; r=me in any case, no problem with this patch.

Great!
 
&gt; &gt; Source/WebCore/ChangeLog:16
&gt; &gt; +        (WebCore::ReadableStream::ReadableStream): Moved suspendIfNeeded inside constructor to ese subclassing.
&gt; 
&gt; Typo: ese

OK

&gt; 
&gt; &gt; Source/WebCore/bindings/js/ReadableStreamJSSource.h:65
&gt; &gt; +
&gt; 
&gt; Useless blank line here.

OK</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082479</commentid>
    <comment_count>6</comment_count>
      <attachid>250049</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-04-03 00:14:33 -0700</bug_when>
    <thetext>Created attachment 250049
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082480</commentid>
    <comment_count>7</comment_count>
      <attachid>250050</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-04-03 00:15:43 -0700</bug_when>
    <thetext>Created attachment 250050
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082483</commentid>
    <comment_count>8</comment_count>
      <attachid>250050</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-03 01:08:25 -0700</bug_when>
    <thetext>Comment on attachment 250050
Patch for landing

Clearing flags on attachment: 250050

Committed r182309: &lt;http://trac.webkit.org/changeset/182309&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1082484</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-03 01:08:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249568</attachid>
            <date>2015-03-27 07:53:29 -0700</date>
            <delta_ts>2015-03-31 04:11:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143130-20150327155249.patch</filename>
            <type>text/plain</type>
            <size>12465</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMDAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjk4MTc2ZmZlMGMzMjBk
ODdhM2FjZTMxMjY3ODQzNTcyYjdiYTQzNi4uNjZkMjhjNmY2ZDM0MGExOThjZDUzMTM4ZWQzZWZh
YTY4MGFiOWI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE1LTAzLTI1IFhhYmll
ciBSb2RyaWd1ZXogQ2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxl
dCA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBT
cGxpdCBSZWFkYWJsZVN0cmVhbS9SZWFkZXIgaW1wbGVtZW50YXRpb24gYWNjb3JkaW5nIHNvdXJj
ZSB0eXBlIChKUyB2cyBuYXRpdmUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDMxMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbnRyb2R1Y2UgUmVhZGFibGVKU1N0cmVhbSBhbmQgUmVhZGFibGVKU1N0
cmVhbVJlYWRlciBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIGFuZCBSZWFkYWJsZVN0
cmVhbVJlYWRlci4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBtYW5hZ2UgSlMgYmFzZWQgc291cmNl
czogUmVhZGFibGVTdHJlYW0gSlMgY29uc3RydWN0b3IgaW5zdGFudGlhdGVzIFJlYWRhYmxlSlN0
cmVhbS4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBhcmUgZXhwZWN0ZWQgdG8gaGFuZGxlIEpTIHNv
dXJjZSBzcGVjaWZpYyBoYW5kbGluZywgaW4gcGFydGljdWxhciBKU1ZhbHVlIGVycm9yIHN0b3Jh
Z2UgYW5kIEpTVmFsdWUgY2h1bmsgcXVldWUuCisgICAgICAgIE1ha2luZyBSZWFkYWJsZVN0cmVh
bSBhbmQgUmVhZGFibGVTdHJlYW1SZWFkZXIgYWJzdHJhY3QsIHRvIGJlIHN1YmNsYXNzZWQgZm9y
IG5hdGl2ZSBzb3VyY2VzLgorCisgICAgICAgIEN1cnJlbnQgdGVzdHMgY292ZXIgdGhlIGNoYW5n
ZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVTdHJlYW06OlJlYWRhYmxlU3RyZWFtKTogTW92ZWQgc3Vz
cGVuZElmTmVlZGVkIGluc2lkZSBjb25zdHJ1Y3RvciB0byBlc2Ugc3ViY2xhc3NpbmcuCisgICAg
ICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKTogRGVsZXRlZCBhcyBSZWFkYWJs
ZVN0cmVhbSBpcyBub3cgYWJzdGFyY3QuCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1JlYWRh
YmxlU3RyZWFtLmg6IE1hZGUgY3JlYXRlUmVhZGVyIHZpcnR1YWwgcHVyZS4KKyAgICAgICAgKiBN
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsOiBTa2lwcGluZyBWVGFibGUgdmFsaWRh
dGlvbiBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIG1heSBiZSBKUyB3cmFwcGVkLgor
ICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5jcHA6IFJlbW92
ZWQgUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZS4KKyAgICAgICAgKiBNb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaDogRGl0dG8uCisgICAgICAgICogTW9kdWxlcy9zdHJl
YW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbDogU2tpcHBpbmcgVlRhYmxlIHZhbGlkYXRpb24g
YXMgc3ViY2xhc3NlcyBvZiBSZWFkYWJsZVN0cmVhbVJlYWRlciBtYXkgYmUgSlMgd3JhcHBlZC4K
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0pOiBJbnN0YW50aWF0aW5nIFJl
YWRhYmxlSlNTdHJlYW0gaW4gbGlldSBvZiBSZWFkYWJsZVN0cmVhbSB3aXRoaW4gSlMgY29uc3Ry
dWN0b3IuCisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKTogSW5zdGFudGlhdGluZyBS
ZWFkYWJsZUpTU3RyZWFtUmVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVh
bTo6UmVhZGFibGVKU1N0cmVhbSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFt
UmVhZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbVJlYWRl
cjo6UmVhZGFibGVKU1N0cmVhbVJlYWRlcik6CisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFi
bGVTdHJlYW1KU1NvdXJjZS5oOiBEZWZpbml0aW9uIG9mIFJlYWRhYmxlSlNTdHJlYW0gYW5kIFJl
YWRhYmxlSlNTdHJlYW1SZWFkZXIuCisKIDIwMTUtMDMtMjUgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgogCiAgICAgICAgIENTUyBibGVuZCBtb2RlcyBkbyBub3QgcGFyc2Ugd2hlbiBp
biB0aGUgc2hhZG93IHRyZWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Ry
ZWFtcy9SZWFkYWJsZVN0cmVhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW0uY3BwCmluZGV4IGUxMDRiNjdiMWUxYWMwMzhkODI5ZTk4ODk3NWUyNDli
MDJhNDBjOGQuLjYwYmE4MzVjNWNiNjc5Zjg2OWFlMTlhNTE0YWVhYTYyYTdhMWFjNDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmNwcApA
QCAtNDAsMTQgKzQwLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBERUZJTkVfREVCVUdfT05M
WV9HTE9CQUwoV1RGOjpSZWZDb3VudGVkTGVha0NvdW50ZXIsIHJlYWRhYmxlU3RyZWFtQ291bnRl
ciwgKCJSZWFkYWJsZVN0cmVhbSIpKTsKIAotUmVmPFJlYWRhYmxlU3RyZWFtPiBSZWFkYWJsZVN0
cmVhbTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQsIFJlZjxSZWFkYWJsZVN0cmVhbVNvdXJjZT4mJiBzb3VyY2UpCi17Ci0gICAgYXV0byByZWFk
YWJsZVN0cmVhbSA9IGFkb3B0UmVmKCpuZXcgUmVhZGFibGVTdHJlYW0oc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgV1RGOjptb3ZlKHNvdXJjZSkpKTsKLSAgICByZWFkYWJsZVN0cmVhbS5nZXQoKS5z
dXNwZW5kSWZOZWVkZWQoKTsKLQotICAgIHJldHVybiByZWFkYWJsZVN0cmVhbTsKLX0KLQogUmVh
ZGFibGVTdHJlYW06OlJlYWRhYmxlU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVhbVNvdXJjZT4mJiBzb3VyY2UpCiAg
ICAgOiBBY3RpdmVET01PYmplY3QoJnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCiAgICAgLCBtX3N0
YXRlKFN0YXRlOjpSZWFkYWJsZSkKQEAgLTU2LDYgKzQ4LDcgQEAgUmVhZGFibGVTdHJlYW06OlJl
YWRhYmxlU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQsIFIKICNpZm5kZWYgTkRFQlVHCiAgICAgcmVhZGFibGVTdHJlYW1Db3VudGVyLmluY3JlbWVu
dCgpOwogI2VuZGlmCisgICAgc3VzcGVuZElmTmVlZGVkKCk7CiB9CiAKIFJlYWRhYmxlU3RyZWFt
Ojp+UmVhZGFibGVTdHJlYW0oKQpAQCAtNzYsMTEgKzY5LDYgQEAgYm9vbCBSZWFkYWJsZVN0cmVh
bTo6Y2FuU3VzcGVuZCgpIGNvbnN0CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi1SZWY8UmVhZGFi
bGVTdHJlYW1SZWFkZXI+IFJlYWRhYmxlU3RyZWFtOjpjcmVhdGVSZWFkZXIoKQotewotICAgIHJl
dHVybiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6Y3JlYXRlKCp0aGlzKTsKLX0KLQogfQogCiAjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0
cmVhbS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmgK
aW5kZXggNWM4YjM3YzFkMzZhYzU1ZWNiNWUzOGYzOGIwNTk2YWJiZmRmNDBhMy4uMmQ2YzlmNDEw
ZTVkYjk2NTY5ZjcwNTk4YmJmZWMzMjIyZGZlY2YwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmgKQEAgLTU1LDE5ICs1NSwxOCBAQCBwdWJs
aWM6CiAgICAgICAgIEVycm9yZWQKICAgICB9OwogCi0gICAgc3RhdGljIFJlZjxSZWFkYWJsZVN0
cmVhbT4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZWY8UmVhZGFibGVTdHJlYW1T
b3VyY2U+JiYpOwogICAgIHZpcnR1YWwgflJlYWRhYmxlU3RyZWFtKCk7CiAKICAgICBSZWFkYWJs
ZVN0cmVhbVJlYWRlciogcmVhZGVyKCkgeyByZXR1cm4gbV9yZWFkZXIuZ2V0KCk7IH0KICAgICB2
b2lkIHNldFJlYWRlcihSZWFkYWJsZVN0cmVhbVJlYWRlciogcmVhZGVyKSB7IG1fcmVhZGVyID0g
cmVhZGVyOyB9Ci0gICAgLy8gVGhpcyBtZXRob2Qgc2hvdWxkIGJlIG92ZXJyaWRlbiBieSBzdWJj
bGFzc2VzIHRvIGNyZWF0ZSBtb3JlIHNwZWNpZmljIHN0cmVhbSByZWFkZXJzLgotICAgIHZpcnR1
YWwgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGVSZWFkZXIoKTsKKyAgICB2aXJ0dWFs
IFJlZjxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gY3JlYXRlUmVhZGVyKCkgPSAwOwogCiAgICAgU3Rh
dGUgaW50ZXJuYWxTdGF0ZSgpIHsgcmV0dXJuIG1fc3RhdGU7IH0KIAotcHJpdmF0ZToKK3Byb3Rl
Y3RlZDoKICAgICBSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgUmVmPFJl
YWRhYmxlU3RyZWFtU291cmNlPiYmKTsKIAorcHJpdmF0ZToKICAgICAvLyBBY3RpdmVET01PYmpl
Y3QgQVBJLgogICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25zdCBvdmVy
cmlkZTsKICAgICBib29sIGNhblN1c3BlbmQoKSBjb25zdCBvdmVycmlkZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsCmluZGV4IDRlZWEz
ZDUyYzI5NjYwNDU1YzI4NGY0MjMxMjI4ZGJlN2I1MWRmNDMuLmVhZDU0M2MyYzBmODI1NDYyMDVh
MTVkZWE3YTJhNmE2ZmIyODU0OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
c3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9z
dHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlkbApAQCAtMzMsNyArMzMsOCBAQCBlbnVtIFJlYWRhYmxl
U3RyZWFtU3RhdGVUeXBlIHsgInJlYWRhYmxlIiwgIndhaXRpbmciLCAiY2xvc2VkIiwgImVycm9y
ZWQiIH07CiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIEN1c3RvbUNvbnN0cnVjdG9yKGFueSBw
cm9wZXJ0aWVzKSwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbiwKLSAgICBDb25kaXRpb25hbD1T
VFJFQU1TX0FQSQorICAgIENvbmRpdGlvbmFsPVNUUkVBTVNfQVBJLAorICAgIFNraXBWVGFibGVW
YWxpZGF0aW9uCiBdIGludGVyZmFjZSBSZWFkYWJsZVN0cmVhbSB7CiAgICAgLy8gRklYTUU6IFJl
bW92ZSBSYWlzZXNFeGNlcHRpb24gb25jZSBtZXRob2RzIGFyZSBhY3R1YWxseSBpbXBsZW1lbnRl
ZC4KICAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIFByb21pc2UgY2FuY2VsKERPTVN0cmlu
ZyByZWFzb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1Jl
YWRhYmxlU3RyZWFtUmVhZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbVJlYWRlci5jcHAKaW5kZXggZGE1YWQ1NzlhODc3Njk2YWRlNWZkMTQ3YjMx
ZjVkMTkwNTQwYWJiZS4uNTIwZjE0ZmY5ZTY2NDdhYjBlZDYxNWZjOWVhMzU3OWFmNzA4NGJhNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFt
UmVhZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVT
dHJlYW1SZWFkZXIuY3BwCkBAIC00MCwxMyArNDAsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IERFRklORV9ERUJVR19PTkxZX0dMT0JBTChXVEY6OlJlZkNvdW50ZWRMZWFrQ291bnRlciwgcmVh
ZGFibGVTdHJlYW1SZWFkZXJDb3VudGVyLCAoIlJlYWRhYmxlU3RyZWFtUmVhZGVyIikpOwogCi1S
ZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IFJlYWRhYmxlU3RyZWFtUmVhZGVyOjpjcmVhdGUoUmVh
ZGFibGVTdHJlYW0mIHN0cmVhbSkKLXsKLSAgICBhdXRvIHJlYWRhYmxlU3RyZWFtUmVhZGVyID0g
YWRvcHRSZWYoKm5ldyBSZWFkYWJsZVN0cmVhbVJlYWRlcihzdHJlYW0uc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpKSk7Ci0gICAgcmVhZGFibGVTdHJlYW1SZWFkZXItPnNldFN0cmVhbShzdHJlYW0p
OwotICAgIHJldHVybiByZWFkYWJsZVN0cmVhbVJlYWRlcjsKLX0KLQogUmVhZGFibGVTdHJlYW1S
ZWFkZXI6OlJlYWRhYmxlU3RyZWFtUmVhZGVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQpCiAgICAgOiBBY3RpdmVET01PYmplY3Qoc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbVJlYWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1Jl
YWRhYmxlU3RyZWFtUmVhZGVyLmgKaW5kZXggNjM3ZTg4MDI3MDJhNzNhZWQ5MGQ1ZWJmZDdiYjEy
ODljMjNhMjM5MC4uODk5NDY0OWM1ODU0NGI2OTQ5OGI0NmQ2NGM2YTdjOWNmZDIwYmU2NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVh
ZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFt
UmVhZGVyLmgKQEAgLTQ4LDcgKzQ4LDYgQEAgY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsK
IC8vIFNlZSBodHRwczovL3N0cmVhbXMuc3BlYy53aGF0d2cub3JnLyNyZWFkZXItY2xhc3MgZm9y
IG1vcmUgaW5mb3JtYXRpb24uCiBjbGFzcyBSZWFkYWJsZVN0cmVhbVJlYWRlciA6IHB1YmxpYyBB
Y3RpdmVET01PYmplY3QsIHB1YmxpYyBTY3JpcHRXcmFwcGFibGUsIHB1YmxpYyBSZWZDb3VudGVk
PFJlYWRhYmxlU3RyZWFtUmVhZGVyPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxSZWFkYWJs
ZVN0cmVhbVJlYWRlcj4gY3JlYXRlKFJlYWRhYmxlU3RyZWFtJik7CiAgICAgdmlydHVhbCB+UmVh
ZGFibGVTdHJlYW1SZWFkZXIoKTsKIAogICAgIFJlYWRhYmxlU3RyZWFtKiBzdHJlYW0oKSB7IHJl
dHVybiBtX3N0cmVhbTsgfQpAQCAtNTcsMTEgKzU2LDEyIEBAIHB1YmxpYzoKICAgICB0eXBlZGVm
IHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiBDbG9zZWRFcnJvckNhbGxiYWNrOwogICAgIHZvaWQgY2xv
c2VkKENsb3NlZFN1Y2Nlc3NDYWxsYmFjaywgQ2xvc2VkRXJyb3JDYWxsYmFjayk7CiAKLXByaXZh
dGU6Citwcm90ZWN0ZWQ6CiAgICAgUmVhZGFibGVTdHJlYW1SZWFkZXIoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCopOwogCiAgICAgdm9pZCBzZXRTdHJlYW0oUmVhZGFibGVTdHJlYW0mKTsKIAorcHJp
dmF0ZToKICAgICAvLyBBY3RpdmVET01PYmplY3QgQVBJLgogICAgIGNvbnN0IGNoYXIqIGFjdGl2
ZURPTU9iamVjdE5hbWUoKSBjb25zdCBvdmVycmlkZTsKICAgICBib29sIGNhblN1c3BlbmQoKSBj
b25zdCBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsCmluZGV4IDU1YWVmNWViZTZhODBhYmJhNmI0YTQy
ZDhlMmMyNDViNjkyNjRhNTkuLmQ2MjEyNjY4YzlkMTg2NWVkMmU3ZTQzM2E3YWM3NmNhNDBkOTQ5
NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0
cmVhbVJlYWRlci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRh
YmxlU3RyZWFtUmVhZGVyLmlkbApAQCAtMzEsNyArMzEsOCBAQAogICAgIEFjdGl2ZURPTU9iamVj
dCwKICAgICBDdXN0b21Db25zdHJ1Y3RvcihhbnkgcHJvcGVydGllcyksCiAgICAgSlNDdXN0b21N
YXJrRnVuY3Rpb24sCi0gICAgQ29uZGl0aW9uYWw9U1RSRUFNU19BUEkKKyAgICBDb25kaXRpb25h
bD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgUmVh
ZGFibGVTdHJlYW1SZWFkZXIgewogICAgIC8vIEZJWE1FOiBSZW1vdmUgUmFpc2VzRXhjZXB0aW9u
IG9uY2UgbWV0aG9kcyBhcmUgaW1wbGVtZW50ZWQuCiAgICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0
aW9uXSBPYmplY3QgcmVhZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAppbmRleCA3YzI4ZDU2ZTgyN2ZkMWJiM2Y3ZThj
MDNiMWU4MDA2MTcyYzljOWIzLi5kMDk5MjIxOGNiMDJlODlmYmUzODU2ZDc5Mzg5ODhkMTNjZWVl
M2VhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3Ry
ZWFtQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxl
U3RyZWFtQ3VzdG9tLmNwcApAQCAtODQsOSArODQsOCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0oRXhlY1N0YXRlKiBleGVjKQogICAgIEFT
U0VSVChqc0NvbnN0cnVjdG9yKTsKICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRF
eGVjdXRpb25Db250ZXh0ID0ganNDb25zdHJ1Y3Rvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
OwogCi0KICAgICBSZWY8UmVhZGFibGVTdHJlYW1KU1NvdXJjZT4gc291cmNlID0gUmVhZGFibGVT
dHJlYW1KU1NvdXJjZTo6Y3JlYXRlKGV4ZWMpOwotICAgIFJlZlB0cjxSZWFkYWJsZVN0cmVhbT4g
cmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKCpzY3JpcHRFeGVjdXRpb25D
b250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+KHNvdXJjZS5nZXQoKSkpOworICAgIFJl
ZlB0cjxSZWFkYWJsZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZUpTU3RyZWFtOjpj
cmVhdGUoKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVhbUpTU291cmNl
Pihzb3VyY2UuZ2V0KCkpKTsKIAogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmNhbGxlZSgpLT5nbG9iYWxPYmplY3QoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNT
b3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1Nv
dXJjZS5jcHAKaW5kZXggZDhmN2ZiNGVlZmY0M2JhNmYxZGNmNGVhNmJmNDFkYTkyMjA3ZWIzNi4u
OWIyNDcyODZjOGJjMjFmODYzZjk1ZTAzZDY5N2Y2ODQwNmVlNmQ2MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5jcHAKQEAg
LTgwLDYgKzgwLDM0IEBAIHZvaWQgUmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6c3RhcnQoSlNDOjpF
eGVjU3RhdGUqKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKK1JlZjxSZWFkYWJsZUpTU3Ry
ZWFtPiBSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+JiYgc291cmNl
KQoreworICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3IFJlYWRhYmxlSlNT
dHJlYW0oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgV1RGOjptb3ZlKHNvdXJjZSkpKTsKKyAgICBy
ZXR1cm4gcmVhZGFibGVTdHJlYW07Cit9CisKK1JlZjxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gUmVh
ZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKCkKK3sKKyAgICByZXR1cm4gUmVhZGFibGVKU1N0
cmVhbVJlYWRlcjo6Y3JlYXRlKCp0aGlzKS5sZWFrUmVmKCk7Cit9CisKK1JlYWRhYmxlSlNTdHJl
YW06OlJlYWRhYmxlSlNTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+JiYgc291cmNlKQorICAgIDog
UmVhZGFibGVTdHJlYW0oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgV1RGOjptb3ZlKHNvdXJjZSkp
Cit7Cit9CisKK1JlZjxSZWFkYWJsZUpTU3RyZWFtUmVhZGVyPiBSZWFkYWJsZUpTU3RyZWFtUmVh
ZGVyOjpjcmVhdGUoUmVhZGFibGVKU1N0cmVhbSYgc3RyZWFtKQoreworICAgIGF1dG8gcmVhZGFi
bGVTdHJlYW1SZWFkZXIgPSBhZG9wdFJlZigqbmV3IFJlYWRhYmxlSlNTdHJlYW1SZWFkZXIoc3Ry
ZWFtLnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkpOworICAgIHJlYWRhYmxlU3RyZWFtUmVhZGVy
LT5zZXRTdHJlYW0oc3RyZWFtKTsKKyAgICByZXR1cm4gcmVhZGFibGVTdHJlYW1SZWFkZXI7Cit9
CisKK1JlYWRhYmxlSlNTdHJlYW1SZWFkZXI6OlJlYWRhYmxlSlNTdHJlYW1SZWFkZXIoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICA6IFJlYWRhYmxl
U3RyZWFtUmVhZGVyKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCit7Cit9CisKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9SZWFkYWJsZVN0cmVhbUpTU291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9SZWFkYWJsZVN0cmVhbUpTU291cmNlLmgKaW5kZXggYTNlNDM3ZDU1NmE5N2MwNjdmNmZiNTFl
NmRlZDJkMzNmMTUyZjdiMy4uYjdiMDcwYjI0MGZjZDVjODlhYjk3YzgyZjc2MTJhODY0MjllYjgw
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1K
U1NvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFt
SlNTb3VyY2UuaApAQCAtMzIsNiArMzIsOCBAQAogCiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQog
CisjaW5jbHVkZSAiUmVhZGFibGVTdHJlYW0uaCIKKyNpbmNsdWRlICJSZWFkYWJsZVN0cmVhbVJl
YWRlci5oIgogI2luY2x1ZGUgIlJlYWRhYmxlU3RyZWFtU291cmNlLmgiCiAjaW5jbHVkZSA8aGVh
cC9TdHJvbmcuaD4KICNpbmNsdWRlIDxoZWFwL1N0cm9uZ0lubGluZXMuaD4KQEAgLTU0LDYgKzU2
LDIyIEBAIHByaXZhdGU6CiAgICAgUmVhZGFibGVTdHJlYW1KU1NvdXJjZShKU0M6OkV4ZWNTdGF0
ZSopOwogfTsKIAorY2xhc3MgUmVhZGFibGVKU1N0cmVhbTogcHVibGljIFJlYWRhYmxlU3RyZWFt
IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPFJlYWRhYmxlSlNTdHJlYW0+IGNyZWF0ZShTY3Jp
cHRFeGVjdXRpb25Db250ZXh0JiwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+JiYpOworICAg
IHZpcnR1YWwgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGVSZWFkZXIoKSBvdmVycmlk
ZTsKK3ByaXZhdGU6CisgICAgUmVhZGFibGVKU1N0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+JiYpOworCit9OworCitjbGFzcyBSZWFkYWJs
ZUpTU3RyZWFtUmVhZGVyOiBwdWJsaWMgUmVhZGFibGVTdHJlYW1SZWFkZXIgeworcHVibGljOgor
ICAgIHN0YXRpYyBSZWY8UmVhZGFibGVKU1N0cmVhbVJlYWRlcj4gY3JlYXRlKFJlYWRhYmxlSlNT
dHJlYW0mKTsKK3ByaXZhdGU6CisgICAgUmVhZGFibGVKU1N0cmVhbVJlYWRlcihTY3JpcHRFeGVj
dXRpb25Db250ZXh0Kik7Cit9OworCiB2b2lkIHNldEludGVybmFsU2xvdFRvT2JqZWN0KEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByaXZhdGVOYW1lJiwgSlNDOjpKU1ZhbHVl
KTsKIEpTQzo6SlNWYWx1ZSBnZXRJbnRlcm5hbFNsb3RGcm9tT2JqZWN0KEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByaXZhdGVOYW1lJik7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249817</attachid>
            <date>2015-03-31 04:11:09 -0700</date>
            <delta_ts>2015-04-02 05:25:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143130-20150331131026.patch</filename>
            <type>text/plain</type>
            <size>12090</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjAxYmMwMjM5ZGZhZjUx
ODRkMTBiNzljMWQzZDc2ZGJjNTZkOTZkMy4uNjg1OWYwNmExODU3Yjg3MjU0NjI3YTBmOGEwZWNk
MzNmOTdmOGRmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE1LTAzLTMwIFhhYmll
ciBSb2RyaWd1ZXogQ2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxl
dCA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBT
cGxpdCBSZWFkYWJsZVN0cmVhbS9SZWFkZXIgaW1wbGVtZW50YXRpb24gYWNjb3JkaW5nIHNvdXJj
ZSB0eXBlIChKUyB2cyBuYXRpdmUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDMxMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbnRyb2R1Y2UgUmVhZGFibGVKU1N0cmVhbSBhbmQgUmVhZGFibGVKU1N0
cmVhbVJlYWRlciBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIGFuZCBSZWFkYWJsZVN0
cmVhbVJlYWRlci4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBtYW5hZ2UgSlMgYmFzZWQgc291cmNl
czogUmVhZGFibGVTdHJlYW0gSlMgY29uc3RydWN0b3IgaW5zdGFudGlhdGVzIFJlYWRhYmxlSlN0
cmVhbS4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBhcmUgZXhwZWN0ZWQgdG8gaGFuZGxlIEpTIHNv
dXJjZSBzcGVjaWZpYyBoYW5kbGluZywgaW4gcGFydGljdWxhciBKU1ZhbHVlIGVycm9yIHN0b3Jh
Z2UgYW5kIEpTVmFsdWUgY2h1bmsgcXVldWUuCisgICAgICAgIFJlYWRhYmxlU3RyZWFtIGlzIG1h
ZGUgYWJzdHJhY3QgYW5kIHN1YmNsYXNzZXMgb2YgaXQgc2hvdWxkIGJlIGFibGUgdG8gaGFuZGxl
IG5hdGl2ZSBzb3VyY2VzLgorCisgICAgICAgIEN1cnJlbnQgdGVzdHMgY292ZXIgdGhlIGNoYW5n
ZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVTdHJlYW06OlJlYWRhYmxlU3RyZWFtKTogTW92ZWQgc3Vz
cGVuZElmTmVlZGVkIGluc2lkZSBjb25zdHJ1Y3RvciB0byBlc2Ugc3ViY2xhc3NpbmcuCisgICAg
ICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKTogRGVsZXRlZCBhcyBSZWFkYWJs
ZVN0cmVhbSBpcyBub3cgYWJzdGFyY3QuCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1JlYWRh
YmxlU3RyZWFtLmg6IE1hZGUgY3JlYXRlUmVhZGVyIHZpcnR1YWwgcHVyZS4KKyAgICAgICAgKiBN
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsOiBTa2lwcGluZyBWVGFibGUgdmFsaWRh
dGlvbiBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIG1heSBiZSBKUyB3cmFwcGVkLgor
ICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5jcHA6IFJlbW92
ZWQgUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZS4KKyAgICAgICAgKiBNb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaDogRGl0dG8uCisgICAgICAgICogTW9kdWxlcy9zdHJl
YW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbDogU2tpcHBpbmcgVlRhYmxlIHZhbGlkYXRpb24g
YXMgc3ViY2xhc3NlcyBvZiBSZWFkYWJsZVN0cmVhbVJlYWRlciBtYXkgYmUgSlMgd3JhcHBlZC4K
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0pOiBJbnN0YW50aWF0aW5nIFJl
YWRhYmxlSlNTdHJlYW0gaW4gbGlldSBvZiBSZWFkYWJsZVN0cmVhbSB3aXRoaW4gSlMgY29uc3Ry
dWN0b3IuCisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKTogSW5zdGFudGlhdGluZyBS
ZWFkYWJsZUpTU3RyZWFtUmVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVh
bTo6UmVhZGFibGVKU1N0cmVhbSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFt
UmVhZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbVJlYWRl
cjo6UmVhZGFibGVKU1N0cmVhbVJlYWRlcik6CisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFi
bGVTdHJlYW1KU1NvdXJjZS5oOiBEZWZpbml0aW9uIG9mIFJlYWRhYmxlSlNTdHJlYW0gYW5kIFJl
YWRhYmxlSlNTdHJlYW1SZWFkZXIuCisKIDIwMTUtMDMtMzEgIFhhYmllciBSb2RyaWd1ZXogQ2Fs
dmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJs
ZXRAY3JmLmNhbm9uLmZyPgogCiAgICAgICAgIFtTdHJlYW1zIEFQSV0gSW1wbGVtZW50IGEgYmFy
ZWJvbmUgUmVhZGFibGVTdHJlYW1SZWFkZXIgaW50ZXJmYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmNwcAppbmRleCBlMTA0YjY3YjFlMWFj
MDM4ZDgyOWU5ODg5NzVlMjQ5YjAyYTQwYzhkLi42MGJhODM1YzVjYjY3OWY4NjlhZTE5YTUxNGFl
YWE2MmE3YTFhYzQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbS5jcHAKQEAgLTQwLDE0ICs0MCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogREVGSU5FX0RFQlVHX09OTFlfR0xPQkFMKFdURjo6UmVmQ291bnRlZExlYWtDb3VudGVyLCBy
ZWFkYWJsZVN0cmVhbUNvdW50ZXIsICgiUmVhZGFibGVTdHJlYW0iKSk7CiAKLVJlZjxSZWFkYWJs
ZVN0cmVhbT4gUmVhZGFibGVTdHJlYW06OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+JiYgc291cmNl
KQotewotICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3IFJlYWRhYmxlU3Ry
ZWFtKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFdURjo6bW92ZShzb3VyY2UpKSk7Ci0gICAgcmVh
ZGFibGVTdHJlYW0uZ2V0KCkuc3VzcGVuZElmTmVlZGVkKCk7Ci0KLSAgICByZXR1cm4gcmVhZGFi
bGVTdHJlYW07Ci19Ci0KIFJlYWRhYmxlU3RyZWFtOjpSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1T
b3VyY2U+JiYgc291cmNlKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZzY3JpcHRFeGVjdXRpb25D
b250ZXh0KQogICAgICwgbV9zdGF0ZShTdGF0ZTo6UmVhZGFibGUpCkBAIC01Niw2ICs0OCw3IEBA
IFJlYWRhYmxlU3RyZWFtOjpSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBSCiAjaWZuZGVmIE5ERUJVRwogICAgIHJlYWRhYmxlU3Ry
ZWFtQ291bnRlci5pbmNyZW1lbnQoKTsKICNlbmRpZgorICAgIHN1c3BlbmRJZk5lZWRlZCgpOwog
fQogCiBSZWFkYWJsZVN0cmVhbTo6flJlYWRhYmxlU3RyZWFtKCkKQEAgLTc2LDExICs2OSw2IEBA
IGJvb2wgUmVhZGFibGVTdHJlYW06OmNhblN1c3BlbmQoKSBjb25zdAogICAgIHJldHVybiBmYWxz
ZTsKIH0KIAotUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBSZWFkYWJsZVN0cmVhbTo6Y3JlYXRl
UmVhZGVyKCkKLXsKLSAgICByZXR1cm4gUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZSgqdGhp
cyk7Ci19Ci0KIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbS5oCmluZGV4IGJmNTE0MWFkYWNmZWYyNTk3NjcyYTkwOWUzMmRlODE3
MDUxY2JlODcuLjI2MzI0N2JhODI4YjA4MTU4MzBiYTEwYTg2NTdiNzRkYWQwYmIzMWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5oCkBAIC01
NSwxOSArNTUsMTkgQEAgcHVibGljOgogICAgICAgICBFcnJvcmVkCiAgICAgfTsKIAotICAgIHN0
YXRpYyBSZWY8UmVhZGFibGVTdHJlYW0+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Jiwg
UmVmPFJlYWRhYmxlU3RyZWFtU291cmNlPiYmKTsKICAgICB2aXJ0dWFsIH5SZWFkYWJsZVN0cmVh
bSgpOwogCiAgICAgUmVhZGFibGVTdHJlYW1SZWFkZXIqIHJlYWRlcigpIHsgcmV0dXJuIG1fcmVh
ZGVyOyB9CiAgICAgdm9pZCBsb2NrKFJlYWRhYmxlU3RyZWFtUmVhZGVyJiByZWFkZXIpIHsgbV9y
ZWFkZXIgPSAmcmVhZGVyOyB9CiAgICAgdm9pZCByZWxlYXNlKCkgeyBtX3JlYWRlciA9IG51bGxw
dHI7IH0KLSAgICBSZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IGNyZWF0ZVJlYWRlcigpOworICAg
IHZpcnR1YWwgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGVSZWFkZXIoKSA9IDA7CiAK
ICAgICBTdGF0ZSBpbnRlcm5hbFN0YXRlKCkgeyByZXR1cm4gbV9zdGF0ZTsgfQogCi1wcml2YXRl
OgorcHJvdGVjdGVkOgogICAgIFJlYWRhYmxlU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+JiYpOwogCitwcml2YXRlOgogICAgIC8vIEFjdGl2
ZURPTU9iamVjdCBBUEkuCiAgICAgY29uc3QgY2hhciogYWN0aXZlRE9NT2JqZWN0TmFtZSgpIGNv
bnN0IG92ZXJyaWRlOwogICAgIGJvb2wgY2FuU3VzcGVuZCgpIGNvbnN0IG92ZXJyaWRlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5pZGwKaW5k
ZXggOTI4NzJiZTRjZTU5MzJlZGQxNTI0OWI1MDcyNmY5Y2JkMjIyMTJhYS4uYzA1NTgwMDNlNTU4
ZGI4Yjg0YjlmMmY3MWNmNDM0ZjFmMzc4OTkyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsCkBAIC0yOSw3ICsyOSw4IEBACiAKIFsK
ICAgICBDdXN0b21Db25zdHJ1Y3RvcihhbnkgcHJvcGVydGllcyksCi0gICAgQ29uZGl0aW9uYWw9
U1RSRUFNU19BUEkKKyAgICBDb25kaXRpb25hbD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRhYmxl
VmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgUmVhZGFibGVTdHJlYW0gewogICAgIC8vIEZJWE1FOiBS
ZW1vdmUgUmFpc2VzRXhjZXB0aW9uIG9uY2UgbWV0aG9kcyBhcmUgYWN0dWFsbHkgaW1wbGVtZW50
ZWQuCiAgICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBQcm9taXNlIGNhbmNlbChET01TdHJp
bmcgcmVhc29uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbVJlYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW1SZWFkZXIuY3BwCmluZGV4IGZjNzZlNDg1MDE1NzhkYTZlZTAyZDczYmJh
ZWEwMWI1MmNlYmZkZjEuLjZmMzk5ODk5NDBhYWRjODIxODZlMmQ1NTU3MTVlM2QzNjc3ZTJhNmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVh
bVJlYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxl
U3RyZWFtUmVhZGVyLmNwcApAQCAtMzksMTIgKzM5LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBERUZJTkVfREVCVUdfT05MWV9HTE9CQUwoV1RGOjpSZWZDb3VudGVkTGVha0NvdW50ZXIsIHJl
YWRhYmxlU3RyZWFtUmVhZGVyQ291bnRlciwgKCJSZWFkYWJsZVN0cmVhbVJlYWRlciIpKTsKIAot
UmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6Y3JlYXRlKFJl
YWRhYmxlU3RyZWFtJiBzdHJlYW0pCi17Ci0gICAgYXV0byByZWFkYWJsZVN0cmVhbVJlYWRlciA9
IGFkb3B0UmVmKCpuZXcgUmVhZGFibGVTdHJlYW1SZWFkZXIoc3RyZWFtKSk7Ci0gICAgcmV0dXJu
IHJlYWRhYmxlU3RyZWFtUmVhZGVyOwotfQotCiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6UmVhZGFi
bGVTdHJlYW1SZWFkZXIoUmVhZGFibGVTdHJlYW0mIHN0cmVhbSkKICAgICA6IEFjdGl2ZURPTU9i
amVjdChzdHJlYW0uc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaAppbmRleCA2
NGI2ZGQyM2VmZGE3NmM1NjMwZjliMjViMWU0ZDNmNGM3ZTRiYjJjLi5iOWJmMmJkZDgyNWI5NDA3
ZjZiNDZmNjg2N2Q4MTY2MmY5MGI0NjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaApAQCAtNDYsNyArNDYsNiBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBTZWUgaHR0cHM6Ly9zdHJlYW1zLnNwZWMud2hhdHdnLm9y
Zy8jcmVhZGVyLWNsYXNzIGZvciBtb3JlIGluZm9ybWF0aW9uLgogY2xhc3MgUmVhZGFibGVTdHJl
YW1SZWFkZXIgOiBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0LCBwdWJsaWMgU2NyaXB0V3JhcHBhYmxl
LCBwdWJsaWMgUmVmQ291bnRlZDxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gewogcHVibGljOgotICAg
IHN0YXRpYyBSZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IGNyZWF0ZShSZWFkYWJsZVN0cmVhbSYp
OwogICAgIHZpcnR1YWwgflJlYWRhYmxlU3RyZWFtUmVhZGVyKCk7CiAKICAgICBSZWFkYWJsZVN0
cmVhbSogc3RyZWFtKCkgeyByZXR1cm4gbV9zdHJlYW0uZ2V0KCk7IH0KQEAgLTU1LDkgKzU0LDEw
IEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiBDbG9zZWRFcnJv
ckNhbGxiYWNrOwogICAgIHZvaWQgY2xvc2VkKENsb3NlZFN1Y2Nlc3NDYWxsYmFjaywgQ2xvc2Vk
RXJyb3JDYWxsYmFjayk7CiAKLXByaXZhdGU6Citwcm90ZWN0ZWQ6CiAgICAgUmVhZGFibGVTdHJl
YW1SZWFkZXIoUmVhZGFibGVTdHJlYW0mKTsKIAorcHJpdmF0ZToKICAgICAvLyBBY3RpdmVET01P
YmplY3QgQVBJLgogICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25zdCBv
dmVycmlkZTsKICAgICBib29sIGNhblN1c3BlbmQoKSBjb25zdCBvdmVycmlkZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIu
aWRsCmluZGV4IDgwYWExZDE4MzE0YmVmOTA5NGU0OTdkZDk2NTUyN2Y3YmQwZjE2MzQuLjQ0MDQ5
NDI4ZTYzMmQwYzQzNzUwN2EwYzMyNjFkMDYyMjJiM2VjYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbApAQCAt
MzAsNyArMzAsOCBAQAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKICAgICBDdXN0b21Db25zdHJ1
Y3RvcihhbnkgcHJvcGVydGllcyksCi0gICAgQ29uZGl0aW9uYWw9U1RSRUFNU19BUEkKKyAgICBD
b25kaXRpb25hbD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRl
cmZhY2UgUmVhZGFibGVTdHJlYW1SZWFkZXIgewogICAgIC8vIEZJWE1FOiBSZW1vdmUgUmFpc2Vz
RXhjZXB0aW9uIG9uY2UgbWV0aG9kcyBhcmUgaW1wbGVtZW50ZWQuCiAgICAgW0N1c3RvbSwgUmFp
c2VzRXhjZXB0aW9uXSBPYmplY3QgcmVhZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAppbmRleCAyNDU1NWVhNzU3NWY4
NTAxNjA2NmY5MTFlMTc5ODMxZWJlOGE5OGMzLi41YWYxZGVkZjliZjRkZmViMmM4NjUyYTAwNjFl
NWYwZGQ0MGMwZjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1Jl
YWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcApAQCAtNzgsOSArNzgsOCBAQCBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0oRXhlY1N0YXRlKiBleGVj
KQogICAgIEFTU0VSVChqc0NvbnN0cnVjdG9yKTsKICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0ID0ganNDb25zdHJ1Y3Rvci0+c2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpOwogCi0KICAgICBSZWY8UmVhZGFibGVTdHJlYW1KU1NvdXJjZT4gc291cmNlID0g
UmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6Y3JlYXRlKGV4ZWMpOwotICAgIFJlZlB0cjxSZWFkYWJs
ZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKCpzY3JpcHRF
eGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+KHNvdXJjZS5nZXQoKSkp
OworICAgIFJlZlB0cjxSZWFkYWJsZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZUpT
U3RyZWFtOjpjcmVhdGUoKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVh
bUpTU291cmNlPihzb3VyY2UuZ2V0KCkpKTsKIAogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAg
ICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmNhbGxlZSgpLT5nbG9iYWxP
YmplY3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxl
U3RyZWFtSlNTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVT
dHJlYW1KU1NvdXJjZS5jcHAKaW5kZXggYzkwNDU0M2MyMzdlZTEyNzVlYjcyNGFkOGY2ZDc4YjM4
OTJhYWI4MC4uN2UyYjdmNzgzYmQ3ZmRiMDUwZmZhMDU2MWM4MzBlMjkzZjU4MjA1ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJj
ZS5jcHAKQEAgLTgwLDYgKzgwLDMzIEBAIHZvaWQgUmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6c3Rh
cnQoSlNDOjpFeGVjU3RhdGUqKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKK1JlZjxSZWFk
YWJsZUpTU3RyZWFtPiBSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+
JiYgc291cmNlKQoreworICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3IFJl
YWRhYmxlSlNTdHJlYW0oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgV1RGOjptb3ZlKHNvdXJjZSkp
KTsKKyAgICByZXR1cm4gcmVhZGFibGVTdHJlYW07Cit9CisKK1JlZjxSZWFkYWJsZVN0cmVhbVJl
YWRlcj4gUmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKCkKK3sKKyAgICByZXR1cm4gUmVh
ZGFibGVKU1N0cmVhbVJlYWRlcjo6Y3JlYXRlKCp0aGlzKS5sZWFrUmVmKCk7Cit9CisKK1JlYWRh
YmxlSlNTdHJlYW06OlJlYWRhYmxlSlNTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+JiYgc291cmNl
KQorICAgIDogUmVhZGFibGVTdHJlYW0oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgV1RGOjptb3Zl
KHNvdXJjZSkpCit7Cit9CisKK1JlZjxSZWFkYWJsZUpTU3RyZWFtUmVhZGVyPiBSZWFkYWJsZUpT
U3RyZWFtUmVhZGVyOjpjcmVhdGUoUmVhZGFibGVKU1N0cmVhbSYgc3RyZWFtKQoreworICAgIGF1
dG8gcmVhZGFibGVTdHJlYW1SZWFkZXIgPSBhZG9wdFJlZigqbmV3IFJlYWRhYmxlSlNTdHJlYW1S
ZWFkZXIoc3RyZWFtKSk7CisgICAgcmV0dXJuIHJlYWRhYmxlU3RyZWFtUmVhZGVyOworfQorCitS
ZWFkYWJsZUpTU3RyZWFtUmVhZGVyOjpSZWFkYWJsZUpTU3RyZWFtUmVhZGVyKFJlYWRhYmxlSlNT
dHJlYW0mIHJlYWRhYmxlU3RyZWFtKQorICAgIDogUmVhZGFibGVTdHJlYW1SZWFkZXIocmVhZGFi
bGVTdHJlYW0pCit7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZVN0cmVhbUpTU291cmNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZVN0cmVhbUpTU291cmNlLmgK
aW5kZXggYTNlNDM3ZDU1NmE5N2MwNjdmNmZiNTFlNmRlZDJkMzNmMTUyZjdiMy4uMzA4MjQ0NGI4
YTk5N2E3ZGY5OTY5NDQyODA1ZWIxNGNhYjMyYjI3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3VyY2UuaApAQCAtMzIsNiArMzIsOCBA
QAogCiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQogCisjaW5jbHVkZSAiUmVhZGFibGVTdHJlYW0u
aCIKKyNpbmNsdWRlICJSZWFkYWJsZVN0cmVhbVJlYWRlci5oIgogI2luY2x1ZGUgIlJlYWRhYmxl
U3RyZWFtU291cmNlLmgiCiAjaW5jbHVkZSA8aGVhcC9TdHJvbmcuaD4KICNpbmNsdWRlIDxoZWFw
L1N0cm9uZ0lubGluZXMuaD4KQEAgLTU0LDYgKzU2LDIyIEBAIHByaXZhdGU6CiAgICAgUmVhZGFi
bGVTdHJlYW1KU1NvdXJjZShKU0M6OkV4ZWNTdGF0ZSopOwogfTsKIAorY2xhc3MgUmVhZGFibGVK
U1N0cmVhbTogcHVibGljIFJlYWRhYmxlU3RyZWFtIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVm
PFJlYWRhYmxlSlNTdHJlYW0+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgUmVmPFJl
YWRhYmxlU3RyZWFtSlNTb3VyY2U+JiYpOworICAgIHZpcnR1YWwgUmVmPFJlYWRhYmxlU3RyZWFt
UmVhZGVyPiBjcmVhdGVSZWFkZXIoKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgUmVhZGFibGVK
U1N0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3Vy
Y2U+JiYpOworCit9OworCitjbGFzcyBSZWFkYWJsZUpTU3RyZWFtUmVhZGVyOiBwdWJsaWMgUmVh
ZGFibGVTdHJlYW1SZWFkZXIgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8UmVhZGFibGVKU1N0
cmVhbVJlYWRlcj4gY3JlYXRlKFJlYWRhYmxlSlNTdHJlYW0mKTsKK3ByaXZhdGU6CisgICAgUmVh
ZGFibGVKU1N0cmVhbVJlYWRlcihSZWFkYWJsZUpTU3RyZWFtJik7Cit9OworCiB2b2lkIHNldElu
dGVybmFsU2xvdFRvT2JqZWN0KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlBy
aXZhdGVOYW1lJiwgSlNDOjpKU1ZhbHVlKTsKIEpTQzo6SlNWYWx1ZSBnZXRJbnRlcm5hbFNsb3RG
cm9tT2JqZWN0KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByaXZhdGVOYW1l
Jik7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249971</attachid>
            <date>2015-04-02 05:25:42 -0700</date>
            <delta_ts>2015-04-03 00:14:23 -0700</delta_ts>
            <desc>Fixed memory leak</desc>
            <filename>bug-143130-20150402142456.patch</filename>
            <type>text/plain</type>
            <size>12148</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjAxYmMwMjM5ZGZhZjUx
ODRkMTBiNzljMWQzZDc2ZGJjNTZkOTZkMy4uY2IwZGQwOWY1Mjk4M2RlMWE3N2IyZWRiYjYxNTZh
YWVjMmZiNjY1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE1LTA0LTAxIFhhYmll
ciBSb2RyaWd1ZXogQ2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxl
dCA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBT
cGxpdCBSZWFkYWJsZVN0cmVhbS9SZWFkZXIgaW1wbGVtZW50YXRpb24gYWNjb3JkaW5nIHNvdXJj
ZSB0eXBlIChKUyB2cyBuYXRpdmUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDMxMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbnRyb2R1Y2UgUmVhZGFibGVKU1N0cmVhbSBhbmQgUmVhZGFibGVKU1N0
cmVhbVJlYWRlciBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIGFuZCBSZWFkYWJsZVN0
cmVhbVJlYWRlci4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBtYW5hZ2UgSlMgYmFzZWQgc291cmNl
czogUmVhZGFibGVTdHJlYW0gSlMgY29uc3RydWN0b3IgaW5zdGFudGlhdGVzIFJlYWRhYmxlSlN0
cmVhbS4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBhcmUgZXhwZWN0ZWQgdG8gaGFuZGxlIEpTIHNv
dXJjZSBzcGVjaWZpYyBoYW5kbGluZywgaW4gcGFydGljdWxhciBKU1ZhbHVlIGVycm9yIHN0b3Jh
Z2UgYW5kIEpTVmFsdWUgY2h1bmsgcXVldWUuCisgICAgICAgIE1ha2luZyBSZWFkYWJsZVN0cmVh
bSBhbmQgUmVhZGFibGVTdHJlYW1SZWFkZXIgYWJzdHJhY3QsIHRvIGJlIHN1YmNsYXNzZWQgZm9y
IG5hdGl2ZSBzb3VyY2VzLgorCisgICAgICAgIEN1cnJlbnQgdGVzdHMgY292ZXIgdGhlIGNoYW5n
ZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVTdHJlYW06OlJlYWRhYmxlU3RyZWFtKTogTW92ZWQgc3Vz
cGVuZElmTmVlZGVkIGluc2lkZSBjb25zdHJ1Y3RvciB0byBlc2Ugc3ViY2xhc3NpbmcuCisgICAg
ICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKTogRGVsZXRlZCBhcyBSZWFkYWJs
ZVN0cmVhbSBpcyBub3cgYWJzdGFyY3QuCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1JlYWRh
YmxlU3RyZWFtLmg6IE1hZGUgY3JlYXRlUmVhZGVyIHZpcnR1YWwgcHVyZS4KKyAgICAgICAgKiBN
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsOiBTa2lwcGluZyBWVGFibGUgdmFsaWRh
dGlvbiBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIG1heSBiZSBKUyB3cmFwcGVkLgor
ICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5jcHA6IFJlbW92
ZWQgUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZS4KKyAgICAgICAgKiBNb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaDogRGl0dG8uCisgICAgICAgICogTW9kdWxlcy9zdHJl
YW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbDogU2tpcHBpbmcgVlRhYmxlIHZhbGlkYXRpb24g
YXMgc3ViY2xhc3NlcyBvZiBSZWFkYWJsZVN0cmVhbVJlYWRlciBtYXkgYmUgSlMgd3JhcHBlZC4K
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0pOiBJbnN0YW50aWF0aW5nIFJl
YWRhYmxlSlNTdHJlYW0gaW4gbGlldSBvZiBSZWFkYWJsZVN0cmVhbSB3aXRoaW4gSlMgY29uc3Ry
dWN0b3IuCisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKTogSW5zdGFudGlhdGluZyBS
ZWFkYWJsZUpTU3RyZWFtUmVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVh
bTo6UmVhZGFibGVKU1N0cmVhbSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFt
UmVhZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbVJlYWRl
cjo6UmVhZGFibGVKU1N0cmVhbVJlYWRlcik6CisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFi
bGVTdHJlYW1KU1NvdXJjZS5oOiBEZWZpbml0aW9uIG9mIFJlYWRhYmxlSlNTdHJlYW0gYW5kIFJl
YWRhYmxlSlNTdHJlYW1SZWFkZXIuCisKIDIwMTUtMDMtMzEgIFhhYmllciBSb2RyaWd1ZXogQ2Fs
dmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJs
ZXRAY3JmLmNhbm9uLmZyPgogCiAgICAgICAgIFtTdHJlYW1zIEFQSV0gSW1wbGVtZW50IGEgYmFy
ZWJvbmUgUmVhZGFibGVTdHJlYW1SZWFkZXIgaW50ZXJmYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmNwcAppbmRleCBlMTA0YjY3YjFlMWFj
MDM4ZDgyOWU5ODg5NzVlMjQ5YjAyYTQwYzhkLi42MGJhODM1YzVjYjY3OWY4NjlhZTE5YTUxNGFl
YWE2MmE3YTFhYzQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbS5jcHAKQEAgLTQwLDE0ICs0MCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogREVGSU5FX0RFQlVHX09OTFlfR0xPQkFMKFdURjo6UmVmQ291bnRlZExlYWtDb3VudGVyLCBy
ZWFkYWJsZVN0cmVhbUNvdW50ZXIsICgiUmVhZGFibGVTdHJlYW0iKSk7CiAKLVJlZjxSZWFkYWJs
ZVN0cmVhbT4gUmVhZGFibGVTdHJlYW06OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+JiYgc291cmNl
KQotewotICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3IFJlYWRhYmxlU3Ry
ZWFtKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFdURjo6bW92ZShzb3VyY2UpKSk7Ci0gICAgcmVh
ZGFibGVTdHJlYW0uZ2V0KCkuc3VzcGVuZElmTmVlZGVkKCk7Ci0KLSAgICByZXR1cm4gcmVhZGFi
bGVTdHJlYW07Ci19Ci0KIFJlYWRhYmxlU3RyZWFtOjpSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1T
b3VyY2U+JiYgc291cmNlKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZzY3JpcHRFeGVjdXRpb25D
b250ZXh0KQogICAgICwgbV9zdGF0ZShTdGF0ZTo6UmVhZGFibGUpCkBAIC01Niw2ICs0OCw3IEBA
IFJlYWRhYmxlU3RyZWFtOjpSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBSCiAjaWZuZGVmIE5ERUJVRwogICAgIHJlYWRhYmxlU3Ry
ZWFtQ291bnRlci5pbmNyZW1lbnQoKTsKICNlbmRpZgorICAgIHN1c3BlbmRJZk5lZWRlZCgpOwog
fQogCiBSZWFkYWJsZVN0cmVhbTo6flJlYWRhYmxlU3RyZWFtKCkKQEAgLTc2LDExICs2OSw2IEBA
IGJvb2wgUmVhZGFibGVTdHJlYW06OmNhblN1c3BlbmQoKSBjb25zdAogICAgIHJldHVybiBmYWxz
ZTsKIH0KIAotUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBSZWFkYWJsZVN0cmVhbTo6Y3JlYXRl
UmVhZGVyKCkKLXsKLSAgICByZXR1cm4gUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZSgqdGhp
cyk7Ci19Ci0KIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbS5oCmluZGV4IGJmNTE0MWFkYWNmZWYyNTk3NjcyYTkwOWUzMmRlODE3
MDUxY2JlODcuLjI2MzI0N2JhODI4YjA4MTU4MzBiYTEwYTg2NTdiNzRkYWQwYmIzMWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5oCkBAIC01
NSwxOSArNTUsMTkgQEAgcHVibGljOgogICAgICAgICBFcnJvcmVkCiAgICAgfTsKIAotICAgIHN0
YXRpYyBSZWY8UmVhZGFibGVTdHJlYW0+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Jiwg
UmVmPFJlYWRhYmxlU3RyZWFtU291cmNlPiYmKTsKICAgICB2aXJ0dWFsIH5SZWFkYWJsZVN0cmVh
bSgpOwogCiAgICAgUmVhZGFibGVTdHJlYW1SZWFkZXIqIHJlYWRlcigpIHsgcmV0dXJuIG1fcmVh
ZGVyOyB9CiAgICAgdm9pZCBsb2NrKFJlYWRhYmxlU3RyZWFtUmVhZGVyJiByZWFkZXIpIHsgbV9y
ZWFkZXIgPSAmcmVhZGVyOyB9CiAgICAgdm9pZCByZWxlYXNlKCkgeyBtX3JlYWRlciA9IG51bGxw
dHI7IH0KLSAgICBSZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IGNyZWF0ZVJlYWRlcigpOworICAg
IHZpcnR1YWwgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGVSZWFkZXIoKSA9IDA7CiAK
ICAgICBTdGF0ZSBpbnRlcm5hbFN0YXRlKCkgeyByZXR1cm4gbV9zdGF0ZTsgfQogCi1wcml2YXRl
OgorcHJvdGVjdGVkOgogICAgIFJlYWRhYmxlU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+JiYpOwogCitwcml2YXRlOgogICAgIC8vIEFjdGl2
ZURPTU9iamVjdCBBUEkuCiAgICAgY29uc3QgY2hhciogYWN0aXZlRE9NT2JqZWN0TmFtZSgpIGNv
bnN0IG92ZXJyaWRlOwogICAgIGJvb2wgY2FuU3VzcGVuZCgpIGNvbnN0IG92ZXJyaWRlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5pZGwKaW5k
ZXggOTI4NzJiZTRjZTU5MzJlZGQxNTI0OWI1MDcyNmY5Y2JkMjIyMTJhYS4uYzA1NTgwMDNlNTU4
ZGI4Yjg0YjlmMmY3MWNmNDM0ZjFmMzc4OTkyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsCkBAIC0yOSw3ICsyOSw4IEBACiAKIFsK
ICAgICBDdXN0b21Db25zdHJ1Y3RvcihhbnkgcHJvcGVydGllcyksCi0gICAgQ29uZGl0aW9uYWw9
U1RSRUFNU19BUEkKKyAgICBDb25kaXRpb25hbD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRhYmxl
VmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgUmVhZGFibGVTdHJlYW0gewogICAgIC8vIEZJWE1FOiBS
ZW1vdmUgUmFpc2VzRXhjZXB0aW9uIG9uY2UgbWV0aG9kcyBhcmUgYWN0dWFsbHkgaW1wbGVtZW50
ZWQuCiAgICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBQcm9taXNlIGNhbmNlbChET01TdHJp
bmcgcmVhc29uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbVJlYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW1SZWFkZXIuY3BwCmluZGV4IGZjNzZlNDg1MDE1NzhkYTZlZTAyZDczYmJh
ZWEwMWI1MmNlYmZkZjEuLjZmMzk5ODk5NDBhYWRjODIxODZlMmQ1NTU3MTVlM2QzNjc3ZTJhNmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVh
bVJlYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxl
U3RyZWFtUmVhZGVyLmNwcApAQCAtMzksMTIgKzM5LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBERUZJTkVfREVCVUdfT05MWV9HTE9CQUwoV1RGOjpSZWZDb3VudGVkTGVha0NvdW50ZXIsIHJl
YWRhYmxlU3RyZWFtUmVhZGVyQ291bnRlciwgKCJSZWFkYWJsZVN0cmVhbVJlYWRlciIpKTsKIAot
UmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6Y3JlYXRlKFJl
YWRhYmxlU3RyZWFtJiBzdHJlYW0pCi17Ci0gICAgYXV0byByZWFkYWJsZVN0cmVhbVJlYWRlciA9
IGFkb3B0UmVmKCpuZXcgUmVhZGFibGVTdHJlYW1SZWFkZXIoc3RyZWFtKSk7Ci0gICAgcmV0dXJu
IHJlYWRhYmxlU3RyZWFtUmVhZGVyOwotfQotCiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6UmVhZGFi
bGVTdHJlYW1SZWFkZXIoUmVhZGFibGVTdHJlYW0mIHN0cmVhbSkKICAgICA6IEFjdGl2ZURPTU9i
amVjdChzdHJlYW0uc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaAppbmRleCA2
NGI2ZGQyM2VmZGE3NmM1NjMwZjliMjViMWU0ZDNmNGM3ZTRiYjJjLi5iOWJmMmJkZDgyNWI5NDA3
ZjZiNDZmNjg2N2Q4MTY2MmY5MGI0NjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaApAQCAtNDYsNyArNDYsNiBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBTZWUgaHR0cHM6Ly9zdHJlYW1zLnNwZWMud2hhdHdnLm9y
Zy8jcmVhZGVyLWNsYXNzIGZvciBtb3JlIGluZm9ybWF0aW9uLgogY2xhc3MgUmVhZGFibGVTdHJl
YW1SZWFkZXIgOiBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0LCBwdWJsaWMgU2NyaXB0V3JhcHBhYmxl
LCBwdWJsaWMgUmVmQ291bnRlZDxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gewogcHVibGljOgotICAg
IHN0YXRpYyBSZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IGNyZWF0ZShSZWFkYWJsZVN0cmVhbSYp
OwogICAgIHZpcnR1YWwgflJlYWRhYmxlU3RyZWFtUmVhZGVyKCk7CiAKICAgICBSZWFkYWJsZVN0
cmVhbSogc3RyZWFtKCkgeyByZXR1cm4gbV9zdHJlYW0uZ2V0KCk7IH0KQEAgLTU1LDkgKzU0LDEw
IEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiBDbG9zZWRFcnJv
ckNhbGxiYWNrOwogICAgIHZvaWQgY2xvc2VkKENsb3NlZFN1Y2Nlc3NDYWxsYmFjaywgQ2xvc2Vk
RXJyb3JDYWxsYmFjayk7CiAKLXByaXZhdGU6Citwcm90ZWN0ZWQ6CiAgICAgUmVhZGFibGVTdHJl
YW1SZWFkZXIoUmVhZGFibGVTdHJlYW0mKTsKIAorcHJpdmF0ZToKICAgICAvLyBBY3RpdmVET01P
YmplY3QgQVBJLgogICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25zdCBv
dmVycmlkZTsKICAgICBib29sIGNhblN1c3BlbmQoKSBjb25zdCBvdmVycmlkZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIu
aWRsCmluZGV4IDgwYWExZDE4MzE0YmVmOTA5NGU0OTdkZDk2NTUyN2Y3YmQwZjE2MzQuLjQ0MDQ5
NDI4ZTYzMmQwYzQzNzUwN2EwYzMyNjFkMDYyMjJiM2VjYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbApAQCAt
MzAsNyArMzAsOCBAQAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKICAgICBDdXN0b21Db25zdHJ1
Y3RvcihhbnkgcHJvcGVydGllcyksCi0gICAgQ29uZGl0aW9uYWw9U1RSRUFNU19BUEkKKyAgICBD
b25kaXRpb25hbD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRl
cmZhY2UgUmVhZGFibGVTdHJlYW1SZWFkZXIgewogICAgIC8vIEZJWE1FOiBSZW1vdmUgUmFpc2Vz
RXhjZXB0aW9uIG9uY2UgbWV0aG9kcyBhcmUgaW1wbGVtZW50ZWQuCiAgICAgW0N1c3RvbSwgUmFp
c2VzRXhjZXB0aW9uXSBPYmplY3QgcmVhZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAppbmRleCAyNDU1NWVhNzU3NWY4
NTAxNjA2NmY5MTFlMTc5ODMxZWJlOGE5OGMzLi41YWYxZGVkZjliZjRkZmViMmM4NjUyYTAwNjFl
NWYwZGQ0MGMwZjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1Jl
YWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcApAQCAtNzgsOSArNzgsOCBAQCBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0oRXhlY1N0YXRlKiBleGVj
KQogICAgIEFTU0VSVChqc0NvbnN0cnVjdG9yKTsKICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0ID0ganNDb25zdHJ1Y3Rvci0+c2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpOwogCi0KICAgICBSZWY8UmVhZGFibGVTdHJlYW1KU1NvdXJjZT4gc291cmNlID0g
UmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6Y3JlYXRlKGV4ZWMpOwotICAgIFJlZlB0cjxSZWFkYWJs
ZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKCpzY3JpcHRF
eGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+KHNvdXJjZS5nZXQoKSkp
OworICAgIFJlZlB0cjxSZWFkYWJsZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZUpT
U3RyZWFtOjpjcmVhdGUoKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVh
bUpTU291cmNlPihzb3VyY2UuZ2V0KCkpKTsKIAogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAg
ICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmNhbGxlZSgpLT5nbG9iYWxP
YmplY3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxl
U3RyZWFtSlNTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVT
dHJlYW1KU1NvdXJjZS5jcHAKaW5kZXggYzkwNDU0M2MyMzdlZTEyNzVlYjcyNGFkOGY2ZDc4YjM4
OTJhYWI4MC4uZWE5NzJhMTk3MTUwYjNjNzM4Yzg5NWNjNjA5Y2M0YTgzNTYwYzhhNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJj
ZS5jcHAKQEAgLTgwLDYgKzgwLDM0IEBAIHZvaWQgUmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6c3Rh
cnQoSlNDOjpFeGVjU3RhdGUqKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKK1JlZjxSZWFk
YWJsZUpTU3RyZWFtPiBSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+
JiYgc291cmNlKQoreworICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3IFJl
YWRhYmxlSlNTdHJlYW0oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgV1RGOjptb3ZlKHNvdXJjZSkp
KTsKKyAgICByZXR1cm4gcmVhZGFibGVTdHJlYW07Cit9CisKK1JlZjxSZWFkYWJsZVN0cmVhbVJl
YWRlcj4gUmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKCkKK3sKKyAgICBSZWZQdHI8UmVh
ZGFibGVTdHJlYW1SZWFkZXI+IHJlYWRlciA9IFJlYWRhYmxlSlNTdHJlYW1SZWFkZXI6OmNyZWF0
ZSgqdGhpcyk7CisgICAgcmV0dXJuIHJlYWRlci5yZWxlYXNlTm9uTnVsbCgpOworfQorCitSZWFk
YWJsZUpTU3RyZWFtOjpSZWFkYWJsZUpTU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVhbUpTU291cmNlPiYmIHNvdXJj
ZSkKKyAgICA6IFJlYWRhYmxlU3RyZWFtKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFdURjo6bW92
ZShzb3VyY2UpKQoreworfQorCitSZWY8UmVhZGFibGVKU1N0cmVhbVJlYWRlcj4gUmVhZGFibGVK
U1N0cmVhbVJlYWRlcjo6Y3JlYXRlKFJlYWRhYmxlSlNTdHJlYW0mIHN0cmVhbSkKK3sKKyAgICBh
dXRvIHJlYWRhYmxlU3RyZWFtUmVhZGVyID0gYWRvcHRSZWYoKm5ldyBSZWFkYWJsZUpTU3RyZWFt
UmVhZGVyKHN0cmVhbSkpOworICAgIHJldHVybiByZWFkYWJsZVN0cmVhbVJlYWRlcjsKK30KKwor
UmVhZGFibGVKU1N0cmVhbVJlYWRlcjo6UmVhZGFibGVKU1N0cmVhbVJlYWRlcihSZWFkYWJsZUpT
U3RyZWFtJiByZWFkYWJsZVN0cmVhbSkKKyAgICA6IFJlYWRhYmxlU3RyZWFtUmVhZGVyKHJlYWRh
YmxlU3RyZWFtKQoreworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJj
ZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5o
CmluZGV4IGEzZTQzN2Q1NTZhOTdjMDY3ZjZmYjUxZTZkZWQyZDMzZjE1MmY3YjMuLjMwODI0NDRi
OGE5OTdhN2RmOTk2OTQ0MjgwNWViMTRjYWIzMmIyNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZVN0cmVhbUpTU291cmNlLmgKQEAgLTMyLDYgKzMyLDgg
QEAKIAogI2lmIEVOQUJMRShTVFJFQU1TX0FQSSkKIAorI2luY2x1ZGUgIlJlYWRhYmxlU3RyZWFt
LmgiCisjaW5jbHVkZSAiUmVhZGFibGVTdHJlYW1SZWFkZXIuaCIKICNpbmNsdWRlICJSZWFkYWJs
ZVN0cmVhbVNvdXJjZS5oIgogI2luY2x1ZGUgPGhlYXAvU3Ryb25nLmg+CiAjaW5jbHVkZSA8aGVh
cC9TdHJvbmdJbmxpbmVzLmg+CkBAIC01NCw2ICs1NiwyMiBAQCBwcml2YXRlOgogICAgIFJlYWRh
YmxlU3RyZWFtSlNTb3VyY2UoSlNDOjpFeGVjU3RhdGUqKTsKIH07CiAKK2NsYXNzIFJlYWRhYmxl
SlNTdHJlYW06IHB1YmxpYyBSZWFkYWJsZVN0cmVhbSB7CitwdWJsaWM6CisgICAgc3RhdGljIFJl
ZjxSZWFkYWJsZUpTU3RyZWFtPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFJlZjxS
ZWFkYWJsZVN0cmVhbUpTU291cmNlPiYmKTsKKyAgICB2aXJ0dWFsIFJlZjxSZWFkYWJsZVN0cmVh
bVJlYWRlcj4gY3JlYXRlUmVhZGVyKCkgb3ZlcnJpZGU7Citwcml2YXRlOgorICAgIFJlYWRhYmxl
SlNTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFJlZjxSZWFkYWJsZVN0cmVhbUpTU291
cmNlPiYmKTsKKworfTsKKworY2xhc3MgUmVhZGFibGVKU1N0cmVhbVJlYWRlcjogcHVibGljIFJl
YWRhYmxlU3RyZWFtUmVhZGVyIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPFJlYWRhYmxlSlNT
dHJlYW1SZWFkZXI+IGNyZWF0ZShSZWFkYWJsZUpTU3RyZWFtJik7Citwcml2YXRlOgorICAgIFJl
YWRhYmxlSlNTdHJlYW1SZWFkZXIoUmVhZGFibGVKU1N0cmVhbSYpOworfTsKKwogdm9pZCBzZXRJ
bnRlcm5hbFNsb3RUb09iamVjdChKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgSlNDOjpQ
cml2YXRlTmFtZSYsIEpTQzo6SlNWYWx1ZSk7CiBKU0M6OkpTVmFsdWUgZ2V0SW50ZXJuYWxTbG90
RnJvbU9iamVjdChKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgSlNDOjpQcml2YXRlTmFt
ZSYpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250049</attachid>
            <date>2015-04-03 00:14:33 -0700</date>
            <delta_ts>2015-04-03 00:15:37 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-143130-20150403091346.patch</filename>
            <type>text/plain</type>
            <size>12147</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjAxYmMwMjM5ZGZhZjUx
ODRkMTBiNzljMWQzZDc2ZGJjNTZkOTZkMy4uZDEzZTM3OTNhZGNkM2ZmZWM2Mzk3YTEwNzRjZTMz
MGM0YmU4YmJkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE1LTA0LTAxIFhhYmll
ciBSb2RyaWd1ZXogQ2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxl
dCA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBT
cGxpdCBSZWFkYWJsZVN0cmVhbS9SZWFkZXIgaW1wbGVtZW50YXRpb24gYWNjb3JkaW5nIHNvdXJj
ZSB0eXBlIChKUyB2cyBuYXRpdmUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDMxMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbnRyb2R1Y2UgUmVhZGFibGVKU1N0cmVhbSBhbmQgUmVhZGFibGVKU1N0
cmVhbVJlYWRlciBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIGFuZCBSZWFkYWJsZVN0
cmVhbVJlYWRlci4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBtYW5hZ2UgSlMgYmFzZWQgc291cmNl
czogUmVhZGFibGVTdHJlYW0gSlMgY29uc3RydWN0b3IgaW5zdGFudGlhdGVzIFJlYWRhYmxlSlN0
cmVhbS4KKyAgICAgICAgVGhlc2UgY2xhc3NlcyBhcmUgZXhwZWN0ZWQgdG8gaGFuZGxlIEpTIHNv
dXJjZSBzcGVjaWZpYyBoYW5kbGluZywgaW4gcGFydGljdWxhciBKU1ZhbHVlIGVycm9yIHN0b3Jh
Z2UgYW5kIEpTVmFsdWUgY2h1bmsgcXVldWUuCisgICAgICAgIE1ha2luZyBSZWFkYWJsZVN0cmVh
bSBhbmQgUmVhZGFibGVTdHJlYW1SZWFkZXIgYWJzdHJhY3QsIHRvIGJlIHN1YmNsYXNzZWQgZm9y
IG5hdGl2ZSBzb3VyY2VzLgorCisgICAgICAgIEN1cnJlbnQgdGVzdHMgY292ZXIgdGhlIGNoYW5n
ZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVTdHJlYW06OlJlYWRhYmxlU3RyZWFtKTogTW92ZWQgc3Vz
cGVuZElmTmVlZGVkIGluc2lkZSBjb25zdHJ1Y3RvciB0byBlYXNlIHN1YmNsYXNzaW5nLgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVTdHJlYW06OmNyZWF0ZSk6IERlbGV0ZWQgYXMgUmVhZGFi
bGVTdHJlYW0gaXMgbm93IGFic3RhcmN0LgorICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFk
YWJsZVN0cmVhbS5oOiBNYWRlIGNyZWF0ZVJlYWRlciB2aXJ0dWFsIHB1cmUuCisgICAgICAgICog
TW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlkbDogU2tpcHBpbmcgVlRhYmxlIHZhbGlk
YXRpb24gYXMgc3ViY2xhc3NlcyBvZiBSZWFkYWJsZVN0cmVhbSBtYXkgYmUgSlMgd3JhcHBlZC4K
KyAgICAgICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuY3BwOiBSZW1v
dmVkIFJlYWRhYmxlU3RyZWFtUmVhZGVyOjpjcmVhdGUuCisgICAgICAgICogTW9kdWxlcy9zdHJl
YW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmg6IERpdHRvLgorICAgICAgICAqIE1vZHVsZXMvc3Ry
ZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5pZGw6IFNraXBwaW5nIFZUYWJsZSB2YWxpZGF0aW9u
IGFzIHN1YmNsYXNzZXMgb2YgUmVhZGFibGVTdHJlYW1SZWFkZXIgbWF5IGJlIEpTIHdyYXBwZWQu
CisgICAgICAgICogYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpjb25zdHJ1Y3RKU1JlYWRhYmxlU3RyZWFtKTogSW5zdGFudGlhdGluZyBS
ZWFkYWJsZUpTU3RyZWFtIGluIGxpZXUgb2YgUmVhZGFibGVTdHJlYW0gd2l0aGluIEpTIGNvbnN0
cnVjdG9yLgorICAgICAgICAqIGJpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3VyY2UuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlYWRhYmxlSlNTdHJlYW06OmNyZWF0ZVJlYWRlcik6IEluc3RhbnRpYXRpbmcg
UmVhZGFibGVKU1N0cmVhbVJlYWRlci4KKyAgICAgICAgKFdlYkNvcmU6OlJlYWRhYmxlSlNTdHJl
YW06OlJlYWRhYmxlSlNTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVh
bVJlYWRlcjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWRhYmxlSlNTdHJlYW1SZWFk
ZXI6OlJlYWRhYmxlSlNTdHJlYW1SZWFkZXIpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1JlYWRh
YmxlU3RyZWFtSlNTb3VyY2UuaDogRGVmaW5pdGlvbiBvZiBSZWFkYWJsZUpTU3RyZWFtIGFuZCBS
ZWFkYWJsZUpTU3RyZWFtUmVhZGVyLgorCiAyMDE1LTAzLTMxICBYYWJpZXIgUm9kcmlndWV6IENh
bHZhciA8Y2FsdmFyaXNAaWdhbGlhLmNvbT4gYW5kIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm4uZmFi
bGV0QGNyZi5jYW5vbi5mcj4KIAogICAgICAgICBbU3RyZWFtcyBBUEldIEltcGxlbWVudCBhIGJh
cmVib25lIFJlYWRhYmxlU3RyZWFtUmVhZGVyIGludGVyZmFjZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5jcHAKaW5kZXggZTEwNGI2N2IxZTFh
YzAzOGQ4MjllOTg4OTc1ZTI0OWIwMmE0MGM4ZC4uNjBiYTgzNWM1Y2I2NzlmODY5YWUxOWE1MTRh
ZWFhNjJhN2ExYWM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1z
L1JlYWRhYmxlU3RyZWFtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW0uY3BwCkBAIC00MCwxNCArNDAsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIERFRklORV9ERUJVR19PTkxZX0dMT0JBTChXVEY6OlJlZkNvdW50ZWRMZWFrQ291bnRlciwg
cmVhZGFibGVTdHJlYW1Db3VudGVyLCAoIlJlYWRhYmxlU3RyZWFtIikpOwogCi1SZWY8UmVhZGFi
bGVTdHJlYW0+IFJlYWRhYmxlU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYg
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtU291cmNlPiYmIHNvdXJj
ZSkKLXsKLSAgICBhdXRvIHJlYWRhYmxlU3RyZWFtID0gYWRvcHRSZWYoKm5ldyBSZWFkYWJsZVN0
cmVhbShzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBXVEY6Om1vdmUoc291cmNlKSkpOwotICAgIHJl
YWRhYmxlU3RyZWFtLmdldCgpLnN1c3BlbmRJZk5lZWRlZCgpOwotCi0gICAgcmV0dXJuIHJlYWRh
YmxlU3RyZWFtOwotfQotCiBSZWFkYWJsZVN0cmVhbTo6UmVhZGFibGVTdHJlYW0oU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFt
U291cmNlPiYmIHNvdXJjZSkKICAgICA6IEFjdGl2ZURPTU9iamVjdCgmc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCkKICAgICAsIG1fc3RhdGUoU3RhdGU6OlJlYWRhYmxlKQpAQCAtNTYsNiArNDgsNyBA
QCBSZWFkYWJsZVN0cmVhbTo6UmVhZGFibGVTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYg
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUgogI2lmbmRlZiBOREVCVUcKICAgICByZWFkYWJsZVN0
cmVhbUNvdW50ZXIuaW5jcmVtZW50KCk7CiAjZW5kaWYKKyAgICBzdXNwZW5kSWZOZWVkZWQoKTsK
IH0KIAogUmVhZGFibGVTdHJlYW06On5SZWFkYWJsZVN0cmVhbSgpCkBAIC03NiwxMSArNjksNiBA
QCBib29sIFJlYWRhYmxlU3RyZWFtOjpjYW5TdXNwZW5kKCkgY29uc3QKICAgICByZXR1cm4gZmFs
c2U7CiB9CiAKLVJlZjxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gUmVhZGFibGVTdHJlYW06OmNyZWF0
ZVJlYWRlcigpCi17Ci0gICAgcmV0dXJuIFJlYWRhYmxlU3RyZWFtUmVhZGVyOjpjcmVhdGUoKnRo
aXMpOwotfQotCiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW0uaAppbmRleCBiZjUxNDFhZGFjZmVmMjU5NzY3MmE5MDllMzJkZTgx
NzA1MWNiZTg3Li4yNjMyNDdiYTgyOGIwODE1ODMwYmExMGE4NjU3Yjc0ZGFkMGJiMzFkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaApAQCAt
NTUsMTkgKzU1LDE5IEBAIHB1YmxpYzoKICAgICAgICAgRXJyb3JlZAogICAgIH07CiAKLSAgICBz
dGF0aWMgUmVmPFJlYWRhYmxlU3RyZWFtPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYs
IFJlZjxSZWFkYWJsZVN0cmVhbVNvdXJjZT4mJik7CiAgICAgdmlydHVhbCB+UmVhZGFibGVTdHJl
YW0oKTsKIAogICAgIFJlYWRhYmxlU3RyZWFtUmVhZGVyKiByZWFkZXIoKSB7IHJldHVybiBtX3Jl
YWRlcjsgfQogICAgIHZvaWQgbG9jayhSZWFkYWJsZVN0cmVhbVJlYWRlciYgcmVhZGVyKSB7IG1f
cmVhZGVyID0gJnJlYWRlcjsgfQogICAgIHZvaWQgcmVsZWFzZSgpIHsgbV9yZWFkZXIgPSBudWxs
cHRyOyB9Ci0gICAgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGVSZWFkZXIoKTsKKyAg
ICB2aXJ0dWFsIFJlZjxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gY3JlYXRlUmVhZGVyKCkgPSAwOwog
CiAgICAgU3RhdGUgaW50ZXJuYWxTdGF0ZSgpIHsgcmV0dXJuIG1fc3RhdGU7IH0KIAotcHJpdmF0
ZToKK3Byb3RlY3RlZDoKICAgICBSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiwgUmVmPFJlYWRhYmxlU3RyZWFtU291cmNlPiYmKTsKIAorcHJpdmF0ZToKICAgICAvLyBBY3Rp
dmVET01PYmplY3QgQVBJLgogICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBj
b25zdCBvdmVycmlkZTsKICAgICBib29sIGNhblN1c3BlbmQoKSBjb25zdCBvdmVycmlkZTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsCmlu
ZGV4IDkyODcyYmU0Y2U1OTMyZWRkMTUyNDliNTA3MjZmOWNiZDIyMjEyYWEuLmMwNTU4MDAzZTU1
OGRiOGI4NGI5ZjJmNzFjZjQzNGYxZjM3ODk5MjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlkbApAQCAtMjksNyArMjksOCBAQAogCiBb
CiAgICAgQ3VzdG9tQ29uc3RydWN0b3IoYW55IHByb3BlcnRpZXMpLAotICAgIENvbmRpdGlvbmFs
PVNUUkVBTVNfQVBJCisgICAgQ29uZGl0aW9uYWw9U1RSRUFNU19BUEksCisgICAgU2tpcFZUYWJs
ZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIFJlYWRhYmxlU3RyZWFtIHsKICAgICAvLyBGSVhNRTog
UmVtb3ZlIFJhaXNlc0V4Y2VwdGlvbiBvbmNlIG1ldGhvZHMgYXJlIGFjdHVhbGx5IGltcGxlbWVu
dGVkLgogICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gUHJvbWlzZSBjYW5jZWwoRE9NU3Ry
aW5nIHJlYXNvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW1SZWFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1z
L1JlYWRhYmxlU3RyZWFtUmVhZGVyLmNwcAppbmRleCBmYzc2ZTQ4NTAxNTc4ZGE2ZWUwMmQ3M2Ji
YWVhMDFiNTJjZWJmZGYxLi42ZjM5OTg5OTQwYWFkYzgyMTg2ZTJkNTU1NzE1ZTNkMzY3N2UyYTZj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJl
YW1SZWFkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJs
ZVN0cmVhbVJlYWRlci5jcHAKQEAgLTM5LDEyICszOSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogREVGSU5FX0RFQlVHX09OTFlfR0xPQkFMKFdURjo6UmVmQ291bnRlZExlYWtDb3VudGVyLCBy
ZWFkYWJsZVN0cmVhbVJlYWRlckNvdW50ZXIsICgiUmVhZGFibGVTdHJlYW1SZWFkZXIiKSk7CiAK
LVJlZjxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZShS
ZWFkYWJsZVN0cmVhbSYgc3RyZWFtKQotewotICAgIGF1dG8gcmVhZGFibGVTdHJlYW1SZWFkZXIg
PSBhZG9wdFJlZigqbmV3IFJlYWRhYmxlU3RyZWFtUmVhZGVyKHN0cmVhbSkpOwotICAgIHJldHVy
biByZWFkYWJsZVN0cmVhbVJlYWRlcjsKLX0KLQogUmVhZGFibGVTdHJlYW1SZWFkZXI6OlJlYWRh
YmxlU3RyZWFtUmVhZGVyKFJlYWRhYmxlU3RyZWFtJiBzdHJlYW0pCiAgICAgOiBBY3RpdmVET01P
YmplY3Qoc3RyZWFtLnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmgKaW5kZXgg
NjRiNmRkMjNlZmRhNzZjNTYzMGY5YjI1YjFlNGQzZjRjN2U0YmIyYy4uYjliZjJiZGQ4MjViOTQw
N2Y2YjQ2ZjY4NjdkODE2NjJmOTBiNDYzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmgKQEAgLTQ2LDcgKzQ2LDYgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogLy8gU2VlIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5v
cmcvI3JlYWRlci1jbGFzcyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KIGNsYXNzIFJlYWRhYmxlU3Ry
ZWFtUmVhZGVyIDogcHVibGljIEFjdGl2ZURPTU9iamVjdCwgcHVibGljIFNjcmlwdFdyYXBwYWJs
ZSwgcHVibGljIFJlZkNvdW50ZWQ8UmVhZGFibGVTdHJlYW1SZWFkZXI+IHsKIHB1YmxpYzoKLSAg
ICBzdGF0aWMgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGUoUmVhZGFibGVTdHJlYW0m
KTsKICAgICB2aXJ0dWFsIH5SZWFkYWJsZVN0cmVhbVJlYWRlcigpOwogCiAgICAgUmVhZGFibGVT
dHJlYW0qIHN0cmVhbSgpIHsgcmV0dXJuIG1fc3RyZWFtLmdldCgpOyB9CkBAIC01NSw5ICs1NCwx
MCBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gQ2xvc2VkRXJy
b3JDYWxsYmFjazsKICAgICB2b2lkIGNsb3NlZChDbG9zZWRTdWNjZXNzQ2FsbGJhY2ssIENsb3Nl
ZEVycm9yQ2FsbGJhY2spOwogCi1wcml2YXRlOgorcHJvdGVjdGVkOgogICAgIFJlYWRhYmxlU3Ry
ZWFtUmVhZGVyKFJlYWRhYmxlU3RyZWFtJik7CiAKK3ByaXZhdGU6CiAgICAgLy8gQWN0aXZlRE9N
T2JqZWN0IEFQSS4KICAgICBjb25zdCBjaGFyKiBhY3RpdmVET01PYmplY3ROYW1lKCkgY29uc3Qg
b3ZlcnJpZGU7CiAgICAgYm9vbCBjYW5TdXNwZW5kKCkgY29uc3Qgb3ZlcnJpZGU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVy
LmlkbAppbmRleCA4MGFhMWQxODMxNGJlZjkwOTRlNDk3ZGQ5NjU1MjdmN2JkMGYxNjM0Li40NDA0
OTQyOGU2MzJkMGM0Mzc1MDdhMGMzMjYxZDA2MjIyYjNlY2FhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwKQEAg
LTMwLDcgKzMwLDggQEAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgQ3VzdG9tQ29uc3Ry
dWN0b3IoYW55IHByb3BlcnRpZXMpLAotICAgIENvbmRpdGlvbmFsPVNUUkVBTVNfQVBJCisgICAg
Q29uZGl0aW9uYWw9U1RSRUFNU19BUEksCisgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50
ZXJmYWNlIFJlYWRhYmxlU3RyZWFtUmVhZGVyIHsKICAgICAvLyBGSVhNRTogUmVtb3ZlIFJhaXNl
c0V4Y2VwdGlvbiBvbmNlIG1ldGhvZHMgYXJlIGltcGxlbWVudGVkLgogICAgIFtDdXN0b20sIFJh
aXNlc0V4Y2VwdGlvbl0gT2JqZWN0IHJlYWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAKaW5kZXggMjQ1NTVlYTc1NzVm
ODUwMTYwNjZmOTExZTE3OTgzMWViZThhOThjMy4uNWFmMWRlZGY5YmY0ZGZlYjJjODY1MmEwMDYx
ZTVmMGRkNDBjMGY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNS
ZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAKQEAgLTc4LDkgKzc4LDggQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RKU1JlYWRhYmxlU3RyZWFtKEV4ZWNTdGF0ZSogZXhl
YykKICAgICBBU1NFUlQoanNDb25zdHJ1Y3Rvcik7CiAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCA9IGpzQ29uc3RydWN0b3ItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKTsKIAotCiAgICAgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U+IHNvdXJjZSA9
IFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U6OmNyZWF0ZShleGVjKTsKLSAgICBSZWZQdHI8UmVhZGFi
bGVTdHJlYW0+IHJlYWRhYmxlU3RyZWFtID0gUmVhZGFibGVTdHJlYW06OmNyZWF0ZSgqc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtU291cmNlPihzb3VyY2UuZ2V0KCkp
KTsKKyAgICBSZWZQdHI8UmVhZGFibGVTdHJlYW0+IHJlYWRhYmxlU3RyZWFtID0gUmVhZGFibGVK
U1N0cmVhbTo6Y3JlYXRlKCpzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJl
YW1KU1NvdXJjZT4oc291cmNlLmdldCgpKSk7CiAKICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwog
ICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSBleGVjLT5jYWxsZWUoKS0+Z2xvYmFs
T2JqZWN0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJs
ZVN0cmVhbUpTU291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxl
U3RyZWFtSlNTb3VyY2UuY3BwCmluZGV4IGM5MDQ1NDNjMjM3ZWUxMjc1ZWI3MjRhZDhmNmQ3OGIz
ODkyYWFiODAuLmVhOTcyYTE5NzE1MGIzYzczOGM4OTVjYzYwOWNjNGE4MzU2MGM4YTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3VyY2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3Vy
Y2UuY3BwCkBAIC04MCw2ICs4MCwzNCBAQCB2b2lkIFJlYWRhYmxlU3RyZWFtSlNTb3VyY2U6OnN0
YXJ0KEpTQzo6RXhlY1N0YXRlKikKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCitSZWY8UmVh
ZGFibGVKU1N0cmVhbT4gUmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVhbUpTU291cmNl
PiYmIHNvdXJjZSkKK3sKKyAgICBhdXRvIHJlYWRhYmxlU3RyZWFtID0gYWRvcHRSZWYoKm5ldyBS
ZWFkYWJsZUpTU3RyZWFtKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFdURjo6bW92ZShzb3VyY2Up
KSk7CisgICAgcmV0dXJuIHJlYWRhYmxlU3RyZWFtOworfQorCitSZWY8UmVhZGFibGVTdHJlYW1S
ZWFkZXI+IFJlYWRhYmxlSlNTdHJlYW06OmNyZWF0ZVJlYWRlcigpCit7CisgICAgUmVmUHRyPFJl
YWRhYmxlU3RyZWFtUmVhZGVyPiByZWFkZXIgPSBSZWFkYWJsZUpTU3RyZWFtUmVhZGVyOjpjcmVh
dGUoKnRoaXMpOworICAgIHJldHVybiByZWFkZXIucmVsZWFzZU5vbk51bGwoKTsKK30KKworUmVh
ZGFibGVKU1N0cmVhbTo6UmVhZGFibGVKU1N0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1KU1NvdXJjZT4mJiBzb3Vy
Y2UpCisgICAgOiBSZWFkYWJsZVN0cmVhbShzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBXVEY6Om1v
dmUoc291cmNlKSkKK3sKK30KKworUmVmPFJlYWRhYmxlSlNTdHJlYW1SZWFkZXI+IFJlYWRhYmxl
SlNTdHJlYW1SZWFkZXI6OmNyZWF0ZShSZWFkYWJsZUpTU3RyZWFtJiBzdHJlYW0pCit7CisgICAg
YXV0byByZWFkYWJsZVN0cmVhbVJlYWRlciA9IGFkb3B0UmVmKCpuZXcgUmVhZGFibGVKU1N0cmVh
bVJlYWRlcihzdHJlYW0pKTsKKyAgICByZXR1cm4gcmVhZGFibGVTdHJlYW1SZWFkZXI7Cit9CisK
K1JlYWRhYmxlSlNTdHJlYW1SZWFkZXI6OlJlYWRhYmxlSlNTdHJlYW1SZWFkZXIoUmVhZGFibGVK
U1N0cmVhbSYgcmVhZGFibGVTdHJlYW0pCisgICAgOiBSZWFkYWJsZVN0cmVhbVJlYWRlcihyZWFk
YWJsZVN0cmVhbSkKK3sKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3Vy
Y2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3VyY2Uu
aAppbmRleCBhM2U0MzdkNTU2YTk3YzA2N2Y2ZmI1MWU2ZGVkMmQzM2YxNTJmN2IzLi5lMGVhZDAy
ODk1MjNlMThiNWUwMmZjZWJmMDZjNTA5ZDJkZmFiZWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZVN0cmVhbUpTU291cmNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5oCkBAIC0zMiw2ICszMiw4
IEBACiAKICNpZiBFTkFCTEUoU1RSRUFNU19BUEkpCiAKKyNpbmNsdWRlICJSZWFkYWJsZVN0cmVh
bS5oIgorI2luY2x1ZGUgIlJlYWRhYmxlU3RyZWFtUmVhZGVyLmgiCiAjaW5jbHVkZSAiUmVhZGFi
bGVTdHJlYW1Tb3VyY2UuaCIKICNpbmNsdWRlIDxoZWFwL1N0cm9uZy5oPgogI2luY2x1ZGUgPGhl
YXAvU3Ryb25nSW5saW5lcy5oPgpAQCAtNTQsNiArNTYsMjEgQEAgcHJpdmF0ZToKICAgICBSZWFk
YWJsZVN0cmVhbUpTU291cmNlKEpTQzo6RXhlY1N0YXRlKik7CiB9OwogCitjbGFzcyBSZWFkYWJs
ZUpTU3RyZWFtOiBwdWJsaWMgUmVhZGFibGVTdHJlYW0geworcHVibGljOgorICAgIHN0YXRpYyBS
ZWY8UmVhZGFibGVKU1N0cmVhbT4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZWY8
UmVhZGFibGVTdHJlYW1KU1NvdXJjZT4mJik7CisgICAgdmlydHVhbCBSZWY8UmVhZGFibGVTdHJl
YW1SZWFkZXI+IGNyZWF0ZVJlYWRlcigpIG92ZXJyaWRlOworcHJpdmF0ZToKKyAgICBSZWFkYWJs
ZUpTU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZWY8UmVhZGFibGVTdHJlYW1KU1Nv
dXJjZT4mJik7Cit9OworCitjbGFzcyBSZWFkYWJsZUpTU3RyZWFtUmVhZGVyOiBwdWJsaWMgUmVh
ZGFibGVTdHJlYW1SZWFkZXIgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8UmVhZGFibGVKU1N0
cmVhbVJlYWRlcj4gY3JlYXRlKFJlYWRhYmxlSlNTdHJlYW0mKTsKK3ByaXZhdGU6CisgICAgUmVh
ZGFibGVKU1N0cmVhbVJlYWRlcihSZWFkYWJsZUpTU3RyZWFtJik7Cit9OworCiB2b2lkIHNldElu
dGVybmFsU2xvdFRvT2JqZWN0KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlBy
aXZhdGVOYW1lJiwgSlNDOjpKU1ZhbHVlKTsKIEpTQzo6SlNWYWx1ZSBnZXRJbnRlcm5hbFNsb3RG
cm9tT2JqZWN0KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByaXZhdGVOYW1l
Jik7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250050</attachid>
            <date>2015-04-03 00:15:43 -0700</date>
            <delta_ts>2015-04-03 01:08:25 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-143130-20150403091456.patch</filename>
            <type>text/plain</type>
            <size>12149</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjAxYmMwMjM5ZGZhZjUx
ODRkMTBiNzljMWQzZDc2ZGJjNTZkOTZkMy4uNzYxMWRhYjU3MjlhZTQwNTA5NTU3MDViYzg2OTMx
NGUyN2Y2ODVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE1LTA0LTAxIFhhYmll
ciBSb2RyaWd1ZXogQ2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxl
dCA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBT
cGxpdCBSZWFkYWJsZVN0cmVhbS9SZWFkZXIgaW1wbGVtZW50YXRpb24gYWNjb3JkaW5nIHNvdXJj
ZSB0eXBlIChKUyB2cyBuYXRpdmUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDMxMzAKKworICAgICAgICBSZXZpZXdlZCBieSBCZW5qYW1pbiBQb3Vs
YWluLgorCisgICAgICAgIEludHJvZHVjZSBSZWFkYWJsZUpTU3RyZWFtIGFuZCBSZWFkYWJsZUpT
U3RyZWFtUmVhZGVyIGFzIHN1YmNsYXNzZXMgb2YgUmVhZGFibGVTdHJlYW0gYW5kIFJlYWRhYmxl
U3RyZWFtUmVhZGVyLgorICAgICAgICBUaGVzZSBjbGFzc2VzIG1hbmFnZSBKUyBiYXNlZCBzb3Vy
Y2VzOiBSZWFkYWJsZVN0cmVhbSBKUyBjb25zdHJ1Y3RvciBpbnN0YW50aWF0ZXMgUmVhZGFibGVK
U3RyZWFtLgorICAgICAgICBUaGVzZSBjbGFzc2VzIGFyZSBleHBlY3RlZCB0byBoYW5kbGUgSlMg
c291cmNlIHNwZWNpZmljIGhhbmRsaW5nLCBpbiBwYXJ0aWN1bGFyIEpTVmFsdWUgZXJyb3Igc3Rv
cmFnZSBhbmQgSlNWYWx1ZSBjaHVuayBxdWV1ZS4KKyAgICAgICAgTWFraW5nIFJlYWRhYmxlU3Ry
ZWFtIGFuZCBSZWFkYWJsZVN0cmVhbVJlYWRlciBhYnN0cmFjdCwgdG8gYmUgc3ViY2xhc3NlZCBm
b3IgbmF0aXZlIHNvdXJjZXMuCisKKyAgICAgICAgQ3VycmVudCB0ZXN0cyBjb3ZlciB0aGUgY2hh
bmdlcy4KKworICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbTo6UmVhZGFibGVTdHJlYW0pOiBNb3ZlZCBz
dXNwZW5kSWZOZWVkZWQgaW5zaWRlIGNvbnN0cnVjdG9yIHRvIGVhc2Ugc3ViY2xhc3NpbmcuCisg
ICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKTogRGVsZXRlZCBhcyBSZWFk
YWJsZVN0cmVhbSBpcyBub3cgYWJzdGFyY3QuCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1Jl
YWRhYmxlU3RyZWFtLmg6IE1hZGUgY3JlYXRlUmVhZGVyIHZpcnR1YWwgcHVyZS4KKyAgICAgICAg
KiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsOiBTa2lwcGluZyBWVGFibGUgdmFs
aWRhdGlvbiBhcyBzdWJjbGFzc2VzIG9mIFJlYWRhYmxlU3RyZWFtIG1heSBiZSBKUyB3cmFwcGVk
LgorICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5jcHA6IFJl
bW92ZWQgUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZS4KKyAgICAgICAgKiBNb2R1bGVzL3N0
cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaDogRGl0dG8uCisgICAgICAgICogTW9kdWxlcy9z
dHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbDogU2tpcHBpbmcgVlRhYmxlIHZhbGlkYXRp
b24gYXMgc3ViY2xhc3NlcyBvZiBSZWFkYWJsZVN0cmVhbVJlYWRlciBtYXkgYmUgSlMgd3JhcHBl
ZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OmNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0pOiBJbnN0YW50aWF0aW5n
IFJlYWRhYmxlSlNTdHJlYW0gaW4gbGlldSBvZiBSZWFkYWJsZVN0cmVhbSB3aXRoaW4gSlMgY29u
c3RydWN0b3IuCisgICAgICAgICogYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJjZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKTogSW5zdGFudGlhdGlu
ZyBSZWFkYWJsZUpTU3RyZWFtUmVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0
cmVhbTo6UmVhZGFibGVKU1N0cmVhbSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZUpTU3Ry
ZWFtUmVhZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbVJl
YWRlcjo6UmVhZGFibGVKU1N0cmVhbVJlYWRlcik6CisgICAgICAgICogYmluZGluZ3MvanMvUmVh
ZGFibGVTdHJlYW1KU1NvdXJjZS5oOiBEZWZpbml0aW9uIG9mIFJlYWRhYmxlSlNTdHJlYW0gYW5k
IFJlYWRhYmxlSlNTdHJlYW1SZWFkZXIuCisKIDIwMTUtMDMtMzEgIFhhYmllciBSb2RyaWd1ZXog
Q2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5m
YWJsZXRAY3JmLmNhbm9uLmZyPgogCiAgICAgICAgIFtTdHJlYW1zIEFQSV0gSW1wbGVtZW50IGEg
YmFyZWJvbmUgUmVhZGFibGVTdHJlYW1SZWFkZXIgaW50ZXJmYWNlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmNwcAppbmRleCBlMTA0YjY3YjFl
MWFjMDM4ZDgyOWU5ODg5NzVlMjQ5YjAyYTQwYzhkLi42MGJhODM1YzVjYjY3OWY4NjlhZTE5YTUx
NGFlYWE2MmE3YTFhYzQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbS5jcHAKQEAgLTQwLDE0ICs0MCw2IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogREVGSU5FX0RFQlVHX09OTFlfR0xPQkFMKFdURjo6UmVmQ291bnRlZExlYWtDb3VudGVy
LCByZWFkYWJsZVN0cmVhbUNvdW50ZXIsICgiUmVhZGFibGVTdHJlYW0iKSk7CiAKLVJlZjxSZWFk
YWJsZVN0cmVhbT4gUmVhZGFibGVTdHJlYW06OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+JiYgc291
cmNlKQotewotICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3IFJlYWRhYmxl
U3RyZWFtKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFdURjo6bW92ZShzb3VyY2UpKSk7Ci0gICAg
cmVhZGFibGVTdHJlYW0uZ2V0KCkuc3VzcGVuZElmTmVlZGVkKCk7Ci0KLSAgICByZXR1cm4gcmVh
ZGFibGVTdHJlYW07Ci19Ci0KIFJlYWRhYmxlU3RyZWFtOjpSZWFkYWJsZVN0cmVhbShTY3JpcHRF
eGVjdXRpb25Db250ZXh0JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJl
YW1Tb3VyY2U+JiYgc291cmNlKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZzY3JpcHRFeGVjdXRp
b25Db250ZXh0KQogICAgICwgbV9zdGF0ZShTdGF0ZTo6UmVhZGFibGUpCkBAIC01Niw2ICs0OCw3
IEBAIFJlYWRhYmxlU3RyZWFtOjpSZWFkYWJsZVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSCiAjaWZuZGVmIE5ERUJVRwogICAgIHJlYWRhYmxl
U3RyZWFtQ291bnRlci5pbmNyZW1lbnQoKTsKICNlbmRpZgorICAgIHN1c3BlbmRJZk5lZWRlZCgp
OwogfQogCiBSZWFkYWJsZVN0cmVhbTo6flJlYWRhYmxlU3RyZWFtKCkKQEAgLTc2LDExICs2OSw2
IEBAIGJvb2wgUmVhZGFibGVTdHJlYW06OmNhblN1c3BlbmQoKSBjb25zdAogICAgIHJldHVybiBm
YWxzZTsKIH0KIAotUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBSZWFkYWJsZVN0cmVhbTo6Y3Jl
YXRlUmVhZGVyKCkKLXsKLSAgICByZXR1cm4gUmVhZGFibGVTdHJlYW1SZWFkZXI6OmNyZWF0ZSgq
dGhpcyk7Ci19Ci0KIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Ry
ZWFtcy9SZWFkYWJsZVN0cmVhbS5oCmluZGV4IGJmNTE0MWFkYWNmZWYyNTk3NjcyYTkwOWUzMmRl
ODE3MDUxY2JlODcuLjI2MzI0N2JhODI4YjA4MTU4MzBiYTEwYTg2NTdiNzRkYWQwYmIzMWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5oCkBA
IC01NSwxOSArNTUsMTkgQEAgcHVibGljOgogICAgICAgICBFcnJvcmVkCiAgICAgfTsKIAotICAg
IHN0YXRpYyBSZWY8UmVhZGFibGVTdHJlYW0+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiwgUmVmPFJlYWRhYmxlU3RyZWFtU291cmNlPiYmKTsKICAgICB2aXJ0dWFsIH5SZWFkYWJsZVN0
cmVhbSgpOwogCiAgICAgUmVhZGFibGVTdHJlYW1SZWFkZXIqIHJlYWRlcigpIHsgcmV0dXJuIG1f
cmVhZGVyOyB9CiAgICAgdm9pZCBsb2NrKFJlYWRhYmxlU3RyZWFtUmVhZGVyJiByZWFkZXIpIHsg
bV9yZWFkZXIgPSAmcmVhZGVyOyB9CiAgICAgdm9pZCByZWxlYXNlKCkgeyBtX3JlYWRlciA9IG51
bGxwdHI7IH0KLSAgICBSZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IGNyZWF0ZVJlYWRlcigpOwor
ICAgIHZpcnR1YWwgUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBjcmVhdGVSZWFkZXIoKSA9IDA7
CiAKICAgICBTdGF0ZSBpbnRlcm5hbFN0YXRlKCkgeyByZXR1cm4gbV9zdGF0ZTsgfQogCi1wcml2
YXRlOgorcHJvdGVjdGVkOgogICAgIFJlYWRhYmxlU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmLCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+JiYpOwogCitwcml2YXRlOgogICAgIC8vIEFj
dGl2ZURPTU9iamVjdCBBUEkuCiAgICAgY29uc3QgY2hhciogYWN0aXZlRE9NT2JqZWN0TmFtZSgp
IGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgY2FuU3VzcGVuZCgpIGNvbnN0IG92ZXJyaWRlOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFt
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5pZGwK
aW5kZXggOTI4NzJiZTRjZTU5MzJlZGQxNTI0OWI1MDcyNmY5Y2JkMjIyMTJhYS4uYzA1NTgwMDNl
NTU4ZGI4Yjg0YjlmMmY3MWNmNDM0ZjFmMzc4OTkyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uaWRsCkBAIC0yOSw3ICsyOSw4IEBACiAK
IFsKICAgICBDdXN0b21Db25zdHJ1Y3RvcihhbnkgcHJvcGVydGllcyksCi0gICAgQ29uZGl0aW9u
YWw9U1RSRUFNU19BUEkKKyAgICBDb25kaXRpb25hbD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRh
YmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgUmVhZGFibGVTdHJlYW0gewogICAgIC8vIEZJWE1F
OiBSZW1vdmUgUmFpc2VzRXhjZXB0aW9uIG9uY2UgbWV0aG9kcyBhcmUgYWN0dWFsbHkgaW1wbGVt
ZW50ZWQuCiAgICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBQcm9taXNlIGNhbmNlbChET01T
dHJpbmcgcmVhc29uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbVJlYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVh
bXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuY3BwCmluZGV4IGZjNzZlNDg1MDE1NzhkYTZlZTAyZDcz
YmJhZWEwMWI1MmNlYmZkZjEuLjZmMzk5ODk5NDBhYWRjODIxODZlMmQ1NTU3MTVlM2QzNjc3ZTJh
NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0
cmVhbVJlYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRh
YmxlU3RyZWFtUmVhZGVyLmNwcApAQCAtMzksMTIgKzM5LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBERUZJTkVfREVCVUdfT05MWV9HTE9CQUwoV1RGOjpSZWZDb3VudGVkTGVha0NvdW50ZXIs
IHJlYWRhYmxlU3RyZWFtUmVhZGVyQ291bnRlciwgKCJSZWFkYWJsZVN0cmVhbVJlYWRlciIpKTsK
IAotUmVmPFJlYWRhYmxlU3RyZWFtUmVhZGVyPiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6Y3JlYXRl
KFJlYWRhYmxlU3RyZWFtJiBzdHJlYW0pCi17Ci0gICAgYXV0byByZWFkYWJsZVN0cmVhbVJlYWRl
ciA9IGFkb3B0UmVmKCpuZXcgUmVhZGFibGVTdHJlYW1SZWFkZXIoc3RyZWFtKSk7Ci0gICAgcmV0
dXJuIHJlYWRhYmxlU3RyZWFtUmVhZGVyOwotfQotCiBSZWFkYWJsZVN0cmVhbVJlYWRlcjo6UmVh
ZGFibGVTdHJlYW1SZWFkZXIoUmVhZGFibGVTdHJlYW0mIHN0cmVhbSkKICAgICA6IEFjdGl2ZURP
TU9iamVjdChzdHJlYW0uc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaAppbmRl
eCA2NGI2ZGQyM2VmZGE3NmM1NjMwZjliMjViMWU0ZDNmNGM3ZTRiYjJjLi5iOWJmMmJkZDgyNWI5
NDA3ZjZiNDZmNjg2N2Q4MTY2MmY5MGI0NjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFkZXIuaApAQCAtNDYsNyArNDYsNiBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBTZWUgaHR0cHM6Ly9zdHJlYW1zLnNwZWMud2hhdHdn
Lm9yZy8jcmVhZGVyLWNsYXNzIGZvciBtb3JlIGluZm9ybWF0aW9uLgogY2xhc3MgUmVhZGFibGVT
dHJlYW1SZWFkZXIgOiBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0LCBwdWJsaWMgU2NyaXB0V3JhcHBh
YmxlLCBwdWJsaWMgUmVmQ291bnRlZDxSZWFkYWJsZVN0cmVhbVJlYWRlcj4gewogcHVibGljOgot
ICAgIHN0YXRpYyBSZWY8UmVhZGFibGVTdHJlYW1SZWFkZXI+IGNyZWF0ZShSZWFkYWJsZVN0cmVh
bSYpOwogICAgIHZpcnR1YWwgflJlYWRhYmxlU3RyZWFtUmVhZGVyKCk7CiAKICAgICBSZWFkYWJs
ZVN0cmVhbSogc3RyZWFtKCkgeyByZXR1cm4gbV9zdHJlYW0uZ2V0KCk7IH0KQEAgLTU1LDkgKzU0
LDEwIEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiBDbG9zZWRF
cnJvckNhbGxiYWNrOwogICAgIHZvaWQgY2xvc2VkKENsb3NlZFN1Y2Nlc3NDYWxsYmFjaywgQ2xv
c2VkRXJyb3JDYWxsYmFjayk7CiAKLXByaXZhdGU6Citwcm90ZWN0ZWQ6CiAgICAgUmVhZGFibGVT
dHJlYW1SZWFkZXIoUmVhZGFibGVTdHJlYW0mKTsKIAorcHJpdmF0ZToKICAgICAvLyBBY3RpdmVE
T01PYmplY3QgQVBJLgogICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25z
dCBvdmVycmlkZTsKICAgICBib29sIGNhblN1c3BlbmQoKSBjb25zdCBvdmVycmlkZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRl
ci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1SZWFk
ZXIuaWRsCmluZGV4IDgwYWExZDE4MzE0YmVmOTA5NGU0OTdkZDk2NTUyN2Y3YmQwZjE2MzQuLjQ0
MDQ5NDI4ZTYzMmQwYzQzNzUwN2EwYzMyNjFkMDYyMjJiM2VjYWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbApA
QCAtMzAsNyArMzAsOCBAQAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKICAgICBDdXN0b21Db25z
dHJ1Y3RvcihhbnkgcHJvcGVydGllcyksCi0gICAgQ29uZGl0aW9uYWw9U1RSRUFNU19BUEkKKyAg
ICBDb25kaXRpb25hbD1TVFJFQU1TX0FQSSwKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBp
bnRlcmZhY2UgUmVhZGFibGVTdHJlYW1SZWFkZXIgewogICAgIC8vIEZJWE1FOiBSZW1vdmUgUmFp
c2VzRXhjZXB0aW9uIG9uY2UgbWV0aG9kcyBhcmUgaW1wbGVtZW50ZWQuCiAgICAgW0N1c3RvbSwg
UmFpc2VzRXhjZXB0aW9uXSBPYmplY3QgcmVhZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAppbmRleCAyNDU1NWVhNzU3
NWY4NTAxNjA2NmY5MTFlMTc5ODMxZWJlOGE5OGMzLi41YWYxZGVkZjliZjRkZmViMmM4NjUyYTAw
NjFlNWYwZGQ0MGMwZjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU1JlYWRhYmxlU3RyZWFtQ3VzdG9tLmNwcApAQCAtNzgsOSArNzgsOCBAQCBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTUmVhZGFibGVTdHJlYW0oRXhlY1N0YXRlKiBl
eGVjKQogICAgIEFTU0VSVChqc0NvbnN0cnVjdG9yKTsKICAgICBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0ID0ganNDb25zdHJ1Y3Rvci0+c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpOwogCi0KICAgICBSZWY8UmVhZGFibGVTdHJlYW1KU1NvdXJjZT4gc291cmNl
ID0gUmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6Y3JlYXRlKGV4ZWMpOwotICAgIFJlZlB0cjxSZWFk
YWJsZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJsZVN0cmVhbTo6Y3JlYXRlKCpzY3Jp
cHRFeGVjdXRpb25Db250ZXh0LCBSZWY8UmVhZGFibGVTdHJlYW1Tb3VyY2U+KHNvdXJjZS5nZXQo
KSkpOworICAgIFJlZlB0cjxSZWFkYWJsZVN0cmVhbT4gcmVhZGFibGVTdHJlYW0gPSBSZWFkYWJs
ZUpTU3RyZWFtOjpjcmVhdGUoKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0
cmVhbUpTU291cmNlPihzb3VyY2UuZ2V0KCkpKTsKIAogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7
CiAgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmNhbGxlZSgpLT5nbG9i
YWxPYmplY3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRh
YmxlU3RyZWFtSlNTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFi
bGVTdHJlYW1KU1NvdXJjZS5jcHAKaW5kZXggYzkwNDU0M2MyMzdlZTEyNzVlYjcyNGFkOGY2ZDc4
YjM4OTJhYWI4MC4uZWE5NzJhMTk3MTUwYjNjNzM4Yzg5NWNjNjA5Y2M0YTgzNTYwYzhhNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJj
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1Nv
dXJjZS5jcHAKQEAgLTgwLDYgKzgwLDM0IEBAIHZvaWQgUmVhZGFibGVTdHJlYW1KU1NvdXJjZTo6
c3RhcnQoSlNDOjpFeGVjU3RhdGUqKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKK1JlZjxS
ZWFkYWJsZUpTU3RyZWFtPiBSZWFkYWJsZUpTU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmVmPFJlYWRhYmxlU3RyZWFtSlNTb3Vy
Y2U+JiYgc291cmNlKQoreworICAgIGF1dG8gcmVhZGFibGVTdHJlYW0gPSBhZG9wdFJlZigqbmV3
IFJlYWRhYmxlSlNTdHJlYW0oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgV1RGOjptb3ZlKHNvdXJj
ZSkpKTsKKyAgICByZXR1cm4gcmVhZGFibGVTdHJlYW07Cit9CisKK1JlZjxSZWFkYWJsZVN0cmVh
bVJlYWRlcj4gUmVhZGFibGVKU1N0cmVhbTo6Y3JlYXRlUmVhZGVyKCkKK3sKKyAgICBSZWZQdHI8
UmVhZGFibGVTdHJlYW1SZWFkZXI+IHJlYWRlciA9IFJlYWRhYmxlSlNTdHJlYW1SZWFkZXI6OmNy
ZWF0ZSgqdGhpcyk7CisgICAgcmV0dXJuIHJlYWRlci5yZWxlYXNlTm9uTnVsbCgpOworfQorCitS
ZWFkYWJsZUpTU3RyZWFtOjpSZWFkYWJsZUpTU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJlZjxSZWFkYWJsZVN0cmVhbUpTU291cmNlPiYmIHNv
dXJjZSkKKyAgICA6IFJlYWRhYmxlU3RyZWFtKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFdURjo6
bW92ZShzb3VyY2UpKQoreworfQorCitSZWY8UmVhZGFibGVKU1N0cmVhbVJlYWRlcj4gUmVhZGFi
bGVKU1N0cmVhbVJlYWRlcjo6Y3JlYXRlKFJlYWRhYmxlSlNTdHJlYW0mIHN0cmVhbSkKK3sKKyAg
ICBhdXRvIHJlYWRhYmxlU3RyZWFtUmVhZGVyID0gYWRvcHRSZWYoKm5ldyBSZWFkYWJsZUpTU3Ry
ZWFtUmVhZGVyKHN0cmVhbSkpOworICAgIHJldHVybiByZWFkYWJsZVN0cmVhbVJlYWRlcjsKK30K
KworUmVhZGFibGVKU1N0cmVhbVJlYWRlcjo6UmVhZGFibGVKU1N0cmVhbVJlYWRlcihSZWFkYWJs
ZUpTU3RyZWFtJiByZWFkYWJsZVN0cmVhbSkKKyAgICA6IFJlYWRhYmxlU3RyZWFtUmVhZGVyKHJl
YWRhYmxlU3RyZWFtKQoreworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1Nv
dXJjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW1KU1NvdXJj
ZS5oCmluZGV4IGEzZTQzN2Q1NTZhOTdjMDY3ZjZmYjUxZTZkZWQyZDMzZjE1MmY3YjMuLmUwZWFk
MDI4OTUyM2UxOGI1ZTAyZmNlYmYwNmM1MDlkMmRmYWJlZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtSlNTb3VyY2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZVN0cmVhbUpTU291cmNlLmgKQEAgLTMyLDYgKzMy
LDggQEAKIAogI2lmIEVOQUJMRShTVFJFQU1TX0FQSSkKIAorI2luY2x1ZGUgIlJlYWRhYmxlU3Ry
ZWFtLmgiCisjaW5jbHVkZSAiUmVhZGFibGVTdHJlYW1SZWFkZXIuaCIKICNpbmNsdWRlICJSZWFk
YWJsZVN0cmVhbVNvdXJjZS5oIgogI2luY2x1ZGUgPGhlYXAvU3Ryb25nLmg+CiAjaW5jbHVkZSA8
aGVhcC9TdHJvbmdJbmxpbmVzLmg+CkBAIC01NCw2ICs1NiwyMSBAQCBwcml2YXRlOgogICAgIFJl
YWRhYmxlU3RyZWFtSlNTb3VyY2UoSlNDOjpFeGVjU3RhdGUqKTsKIH07CiAKK2NsYXNzIFJlYWRh
YmxlSlNTdHJlYW06IHB1YmxpYyBSZWFkYWJsZVN0cmVhbSB7CitwdWJsaWM6CisgICAgc3RhdGlj
IFJlZjxSZWFkYWJsZUpTU3RyZWFtPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFJl
ZjxSZWFkYWJsZVN0cmVhbUpTU291cmNlPiYmKTsKKyAgICB2aXJ0dWFsIFJlZjxSZWFkYWJsZVN0
cmVhbVJlYWRlcj4gY3JlYXRlUmVhZGVyKCkgb3ZlcnJpZGU7Citwcml2YXRlOgorICAgIFJlYWRh
YmxlSlNTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFJlZjxSZWFkYWJsZVN0cmVhbUpT
U291cmNlPiYmKTsKK307CisKK2NsYXNzIFJlYWRhYmxlSlNTdHJlYW1SZWFkZXI6IHB1YmxpYyBS
ZWFkYWJsZVN0cmVhbVJlYWRlciB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxSZWFkYWJsZUpT
U3RyZWFtUmVhZGVyPiBjcmVhdGUoUmVhZGFibGVKU1N0cmVhbSYpOworcHJpdmF0ZToKKyAgICBS
ZWFkYWJsZUpTU3RyZWFtUmVhZGVyKFJlYWRhYmxlSlNTdHJlYW0mKTsKK307CisKIHZvaWQgc2V0
SW50ZXJuYWxTbG90VG9PYmplY3QoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIEpTQzo6
UHJpdmF0ZU5hbWUmLCBKU0M6OkpTVmFsdWUpOwogSlNDOjpKU1ZhbHVlIGdldEludGVybmFsU2xv
dEZyb21PYmplY3QoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIEpTQzo6UHJpdmF0ZU5h
bWUmKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>