<?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>154959</bug_id>
          
          <creation_ts>2016-03-03 01:07:53 -0800</creation_ts>
          <short_desc>[Fetch API] Commonalize handling of FetchBody by FetchRequest and FetchResponse</short_desc>
          <delta_ts>2016-03-08 10:09:33 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>154729</dependson>
          <blocked>151937</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1170147</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-03 01:07:53 -0800</bug_when>
    <thetext>FetchRequest and FetchResponse implement the Body interface.
It may be beneficial to share code between the two classes outside the FetchBody class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170151</commentid>
    <comment_count>1</comment_count>
      <attachid>272742</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-03 01:23:51 -0800</bug_when>
    <thetext>Created attachment 272742
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172012</commentid>
    <comment_count>2</comment_count>
      <attachid>273289</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-08 04:48:58 -0800</bug_when>
    <thetext>Created attachment 273289
Rebasing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172071</commentid>
    <comment_count>3</comment_count>
      <attachid>273289</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-08 10:09:29 -0800</bug_when>
    <thetext>Comment on attachment 273289
Rebasing

Clearing flags on attachment: 273289

Committed r197778: &lt;http://trac.webkit.org/changeset/197778&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172072</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-08 10:09:33 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272742</attachid>
            <date>2016-03-03 01:23:51 -0800</date>
            <delta_ts>2016-03-08 04:48:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154959-20160303102334.patch</filename>
            <type>text/plain</type>
            <size>17829</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NDk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDI3OTE4MDQ5NzIyYmFm
NGFmNTYzODc3YmQxYTUyM2ExZmMyYjhlOS4uMGM5ZmRiMGQ4ZTA0ODViYWFmMDBlMmZkMjI2YzE5
MjlhOTRmMDFkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE2LTAzLTAzICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW0ZldGNo
IEFQSV0gQ29tbW9uYWxpemUgaGFuZGxpbmcgb2YgRmV0Y2hCb2R5IGJ5IEZldGNoUmVxdWVzdCBh
bmQgRmV0Y2hSZXNwb25zZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTU0OTU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW50cm9kdWNpbmcgRmV0Y2hCb2R5T3duZXIgY2xhc3MgYXMgYmFzZSBjbGFzcyBv
ZiBGZXRjaFJlcXVlc3QgYW5kIEZldGNoUmVzcG9uc2UuCisgICAgICAgIFRoaXMgY2xhc3MgaXMg
YW4gQWN0aXZlRE9NT2JqZWN0IGFuZCBpcyByZXNwb25zaWJsZSBvZiBoYW5kbGluZyB0aGUgQm9k
eSBBUEkgaW1wbGVtZW50ZWQgYnkgUmVxdWVzdCBhbmQgUmVzcG9uc2UuCisKKyAgICAgICAgQ292
ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hC
b2R5T3duZXIuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6aXNE
aXN0dXJiZWQpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hCb2R5T3duZXI6OmFycmF5QnVmZmVy
KToKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoQm9keU93bmVyOjpmb3JtRGF0YSk6CisgICAgICAg
IChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6YmxvYik6CisgICAgICAgIChXZWJDb3JlOjpGZXRj
aEJvZHlPd25lcjo6anNvbik6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6dGV4
dCk6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6Ym9keSk6CisgICAgICAgIChX
ZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6RmV0Y2hCb2R5T3duZXIpOgorICAgICAgICAqIE1vZHVs
ZXMvZmV0Y2gvRmV0Y2hSZXF1ZXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlcXVlc3Q6
OkZldGNoUmVxdWVzdCk6CisgICAgICAgICogTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoUmVzcG9uc2U6OkZldGNoUmVzcG9uc2UpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oOgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAxNi0wMy0wMiAgWW91ZW5uIEZhYmxldCAg
PHlvdWVubi5mYWJsZXRAY3JmLmNhbm9uLmZyPgogCiAgICAgICAgIFtGZXRjaCBBUEldIE1ha2Ug
RmV0Y2hSZXF1ZXN0IGFuZCBGZXRjaFJlc3BvbnNlIEFjdGl2ZURPTU9iamVjdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaEJvZHlPd25lci5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaEJvZHlPd25lci5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUzNmM5
NGE2NGMyOGIzYzc2ZDJhMzUwYWZhNDQzZTAyNzkwNTEzZmQKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoQm9keU93bmVyLmgKQEAgLTAsMCArMSw2
NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNiBDYW5vbiBJbmMuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgcmVxdWlyZWQgdG8gYmUgbWV0OgorICoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQ2Fub24gSW5j
LiBub3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIENBTk9OIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBDQU5PTiBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyAqIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorICogQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwK
KyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYg
RmV0Y2hCb2R5T3duZXJfaAorI2RlZmluZSBGZXRjaEJvZHlPd25lcl9oCisKKyNpZiBFTkFCTEUo
RkVUQ0hfQVBJKQorCisjaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCisjaW5jbHVkZSAiRmV0
Y2hCb2R5LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRmV0Y2hCb2R5T3duZXIg
OiBwdWJsaWMgUmVmQ291bnRlZDxGZXRjaEJvZHlPd25lcj4sIHB1YmxpYyBBY3RpdmVET01PYmpl
Y3QgeworcHVibGljOgorICAgIEZldGNoQm9keU93bmVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
LCBGZXRjaEJvZHkmJik7CisKKyAgICAvLyBFeHBvc2VkIEJvZHkgQVBJCisgICAgYm9vbCBpc0Rp
c3R1cmJlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYm9keS5pc0Rpc3R1cmJlZCgpOyB9CisgICAgdm9p
ZCBhcnJheUJ1ZmZlcihGZXRjaEJvZHk6OkFycmF5QnVmZmVyUHJvbWlzZSYmIHByb21pc2UpIHsg
bV9ib2R5LmFycmF5QnVmZmVyKFdURk1vdmUocHJvbWlzZSkpOyB9CisgICAgdm9pZCBmb3JtRGF0
YShGZXRjaEJvZHk6OkZvcm1EYXRhUHJvbWlzZSYmIHByb21pc2UpIHsgbV9ib2R5LmZvcm1EYXRh
KFdURk1vdmUocHJvbWlzZSkpOyB9CisgICAgdm9pZCBibG9iKEZldGNoQm9keTo6QmxvYlByb21p
c2UmJiBwcm9taXNlKSB7IG1fYm9keS5ibG9iKFdURk1vdmUocHJvbWlzZSkpOyB9CisgICAgdm9p
ZCBqc29uKEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgRmV0Y2hCb2R5OjpKU09OUHJvbWlzZSYmIHBy
b21pc2UpIHsgbV9ib2R5Lmpzb24oc3RhdGUsIFdURk1vdmUocHJvbWlzZSkpOyB9CisgICAgdm9p
ZCB0ZXh0KEZldGNoQm9keTo6VGV4dFByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS50ZXh0KFdU
Rk1vdmUocHJvbWlzZSkpOyB9CisKK3Byb3RlY3RlZDoKKyAgICBGZXRjaEJvZHkgbV9ib2R5Owor
fTsKKworaW5saW5lIEZldGNoQm9keU93bmVyOjpGZXRjaEJvZHlPd25lcihTY3JpcHRFeGVjdXRp
b25Db250ZXh0JiBjb250ZXh0LCBGZXRjaEJvZHkmJiBib2R5KQorICAgIDogQWN0aXZlRE9NT2Jq
ZWN0KCZjb250ZXh0KQorICAgICwgbV9ib2R5KFdURk1vdmUoYm9keSkpCit7CisgICAgc3VzcGVu
ZElmTmVlZGVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShGRVRDSF9BUEkpCisKKyNlbmRpZiAvLyBGZXRjaEJvZHlPd25lcl9oCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVxdWVzdC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlcXVlc3QuaAppbmRleCBiMTJlOTgyNTk3MzY4OGQw
ODhiZWQ4ZGQzZDllMDBmZjg5ZmExZGJkLi5kNzhlMjM2OTQ3ZWVhODYzYWMxYjZjNzZhYWY0ZTU1
ZGUxMDhhNzZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
UmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXF1ZXN0
LmgKQEAgLTMxLDggKzMxLDcgQEAKIAogI2lmIEVOQUJMRShGRVRDSF9BUEkpCiAKLSNpbmNsdWRl
ICJBY3RpdmVET01PYmplY3QuaCIKLSNpbmNsdWRlICJGZXRjaEJvZHkuaCIKKyNpbmNsdWRlICJG
ZXRjaEJvZHlPd25lci5oIgogI2luY2x1ZGUgIkZldGNoSGVhZGVycy5oIgogI2luY2x1ZGUgIkZl
dGNoT3B0aW9ucy5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgpAQCAtNDQsNyArNDMs
NyBAQCBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCiB0eXBlZGVmIGludCBFeGNlcHRp
b25Db2RlOwogCi1jbGFzcyBGZXRjaFJlcXVlc3QgOiBwdWJsaWMgUmVmQ291bnRlZDxGZXRjaFJl
cXVlc3Q+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIEZldGNoUmVxdWVzdCA6IHB1
YmxpYyBGZXRjaEJvZHlPd25lciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZlB0cjxGZXRjaFJl
cXVlc3Q+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgRmV0Y2hSZXF1ZXN0KiwgY29u
c3QgRGljdGlvbmFyeSYsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBzdGF0aWMgUmVmUHRyPEZldGNo
UmVxdWVzdD4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBjb25zdCBTdHJpbmcmLCBj
b25zdCBEaWN0aW9uYXJ5JiwgRXhjZXB0aW9uQ29kZSYpOwpAQCAtNjYsMTQgKzY1LDYgQEAgcHVi
bGljOgogCiAgICAgUmVmUHRyPEZldGNoUmVxdWVzdD4gY2xvbmUoRXhjZXB0aW9uQ29kZSYpOwog
Ci0gICAgLy8gQm9keSBBUEkKLSAgICBib29sIGlzRGlzdHVyYmVkKCkgY29uc3QgeyByZXR1cm4g
bV9ib2R5LmlzRGlzdHVyYmVkKCk7IH0KLSAgICB2b2lkIGFycmF5QnVmZmVyKEZldGNoQm9keTo6
QXJyYXlCdWZmZXJQcm9taXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkuYXJyYXlCdWZmZXIoV1RGTW92
ZShwcm9taXNlKSk7IH0KLSAgICB2b2lkIGZvcm1EYXRhKEZldGNoQm9keTo6Rm9ybURhdGFQcm9t
aXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkuZm9ybURhdGEoV1RGTW92ZShwcm9taXNlKSk7IH0KLSAg
ICB2b2lkIGJsb2IoRmV0Y2hCb2R5OjpCbG9iUHJvbWlzZSYmIHByb21pc2UpIHsgbV9ib2R5LmJs
b2IoV1RGTW92ZShwcm9taXNlKSk7IH0KLSAgICB2b2lkIGpzb24oSlNDOjpFeGVjU3RhdGUmIHN0
YXRlLCBGZXRjaEJvZHk6OkpTT05Qcm9taXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkuanNvbihzdGF0
ZSwgV1RGTW92ZShwcm9taXNlKSk7IH0KLSAgICB2b2lkIHRleHQoRmV0Y2hCb2R5OjpUZXh0UHJv
bWlzZSYmIHByb21pc2UpIHsgbV9ib2R5LnRleHQoV1RGTW92ZShwcm9taXNlKSk7IH0KLQogICAg
IHN0cnVjdCBJbnRlcm5hbFJlcXVlc3QgewogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVz
dDsKICAgICAgICAgRmV0Y2hPcHRpb25zIG9wdGlvbnM7CkBAIC04MSw4ICs3Miw2IEBAIHB1Ymxp
YzoKICAgICAgICAgU3RyaW5nIGludGVncml0eTsKICAgICB9OwogCi0gICAgRmV0Y2hCb2R5JiBi
b2R5KCkgeyByZXR1cm4gbV9ib2R5OyB9Ci0KIHByaXZhdGU6CiAgICAgRmV0Y2hSZXF1ZXN0KEZl
dGNoQm9keSYmLCBSZWY8RmV0Y2hIZWFkZXJzPiYmLCBJbnRlcm5hbFJlcXVlc3QmJiwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYpOwogCkBAIC05MCwxOCArNzksMTUgQEAgcHJpdmF0ZToKICAgICB2
aXJ0dWFsIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25zdCBvdmVycmlkZTsK
ICAgICB2aXJ0dWFsIGJvb2wgY2FuU3VzcGVuZEZvckRvY3VtZW50U3VzcGVuc2lvbigpIGNvbnN0
IG92ZXJyaWRlOwogCi0gICAgRmV0Y2hCb2R5IG1fYm9keTsKICAgICBSZWY8RmV0Y2hIZWFkZXJz
PiBtX2hlYWRlcnM7CiAgICAgSW50ZXJuYWxSZXF1ZXN0IG1faW50ZXJuYWxSZXF1ZXN0OwogfTsK
IAogaW5saW5lIEZldGNoUmVxdWVzdDo6RmV0Y2hSZXF1ZXN0KEZldGNoQm9keSYmIGJvZHksIFJl
ZjxGZXRjaEhlYWRlcnM+JiYgaGVhZGVycywgSW50ZXJuYWxSZXF1ZXN0JiYgaW50ZXJuYWxSZXF1
ZXN0LCBTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQotICAgIDogQWN0aXZlRE9NT2Jq
ZWN0KCZjb250ZXh0KQotICAgICwgbV9ib2R5KFdURk1vdmUoYm9keSkpCisgICAgOiBGZXRjaEJv
ZHlPd25lcihjb250ZXh0LCBXVEZNb3ZlKGJvZHkpKQogICAgICwgbV9oZWFkZXJzKFdURk1vdmUo
aGVhZGVycykpCiAgICAgLCBtX2ludGVybmFsUmVxdWVzdChXVEZNb3ZlKGludGVybmFsUmVxdWVz
dCkpCiB7Ci0gICAgc3VzcGVuZElmTmVlZGVkKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25z
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCmlu
ZGV4IDZkOGE3YTFjNzFiY2Y4MGQwYjQ5Mzk3NTY5MzZjYmJkYjcxNDdhNmMuLjcyYjY2ZWRiYmZk
YzM5ZDBlYjk0YThkNDgxODUyMTcwNjdkYzY5YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcApAQCAtMTA5LDEzICsxMDksMTEgQEAgdm9pZCBG
ZXRjaFJlc3BvbnNlOjppbml0aWFsaXplV2l0aChjb25zdCBEaWN0aW9uYXJ5JiBpbml0LCBFeGNl
cHRpb25Db2RlJiBlYykKIH0KIAogRmV0Y2hSZXNwb25zZTo6RmV0Y2hSZXNwb25zZShUeXBlIHR5
cGUsIEZldGNoQm9keSYmIGJvZHksIFJlZjxGZXRjaEhlYWRlcnM+JiYgaGVhZGVycywgUmVzb3Vy
Y2VSZXNwb25zZSYmIHJlc3BvbnNlLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQot
ICAgIDogQWN0aXZlRE9NT2JqZWN0KCZjb250ZXh0KQorICAgIDogRmV0Y2hCb2R5T3duZXIoY29u
dGV4dCwgV1RGTW92ZShib2R5KSkKICAgICAsIG1fdHlwZSh0eXBlKQogICAgICwgbV9yZXNwb25z
ZShXVEZNb3ZlKHJlc3BvbnNlKSkKLSAgICAsIG1fYm9keShXVEZNb3ZlKGJvZHkpKQogICAgICwg
bV9oZWFkZXJzKFdURk1vdmUoaGVhZGVycykpCiB7Ci0gICAgc3VzcGVuZElmTmVlZGVkKCk7CiB9
CiAKIFJlZlB0cjxGZXRjaFJlc3BvbnNlPiBGZXRjaFJlc3BvbnNlOjpjbG9uZShFeGNlcHRpb25D
b2RlJiBlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hS
ZXNwb25zZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgK
aW5kZXggZTQxNGU0M2Y3NTQ3MjQyYWZmYTY4NWIwNzU5M2ZmYjA3NGQ4NTU3MS4uODUwYThlYjYw
ZjAwOTdkZWI4M2Y3YmQ0YTYyMmZjMDgxZmY0OWI0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKQEAgLTMxLDggKzMxLDcgQEAKIAogI2lmIEVOQUJM
RShGRVRDSF9BUEkpCiAKLSNpbmNsdWRlICJBY3RpdmVET01PYmplY3QuaCIKLSNpbmNsdWRlICJG
ZXRjaEJvZHkuaCIKKyNpbmNsdWRlICJGZXRjaEJvZHlPd25lci5oIgogI2luY2x1ZGUgIkZldGNo
SGVhZGVycy5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKIApAQCAtNDYsNyArNDUs
NyBAQCBjbGFzcyBEaWN0aW9uYXJ5OwogCiB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwogCi1j
bGFzcyBGZXRjaFJlc3BvbnNlIDogcHVibGljIFJlZkNvdW50ZWQ8RmV0Y2hSZXNwb25zZT4sIHB1
YmxpYyBBY3RpdmVET01PYmplY3QgeworY2xhc3MgRmV0Y2hSZXNwb25zZSA6IHB1YmxpYyBGZXRj
aEJvZHlPd25lciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxGZXRjaFJlc3BvbnNlPiBjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgeyByZXR1cm4gYWRvcHRSZWYoKm5l
dyBGZXRjaFJlc3BvbnNlKFR5cGU6OkRlZmF1bHQsIHsgfSwgRmV0Y2hIZWFkZXJzOjpjcmVhdGUo
RmV0Y2hIZWFkZXJzOjpHdWFyZDo6UmVzcG9uc2UpLCBSZXNvdXJjZVJlc3BvbnNlKCksIGNvbnRl
eHQpKTsgfQogICAgIHN0YXRpYyBSZWY8RmV0Y2hSZXNwb25zZT4gZXJyb3IoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCopOwpAQCAtNjYsMTQgKzY1LDYgQEAgcHVibGljOgogICAgIEZldGNoSGVhZGVy
cyYgaGVhZGVycygpIHsgcmV0dXJuIG1faGVhZGVyczsgfQogICAgIFJlZlB0cjxGZXRjaFJlc3Bv
bnNlPiBjbG9uZShFeGNlcHRpb25Db2RlJik7CiAKLSAgICAvLyBCb2R5IEFQSQotICAgIGJvb2wg
aXNEaXN0dXJiZWQoKSBjb25zdCB7IHJldHVybiBtX2JvZHkuaXNEaXN0dXJiZWQoKTsgfQotICAg
IHZvaWQgYXJyYXlCdWZmZXIoRmV0Y2hCb2R5OjpBcnJheUJ1ZmZlclByb21pc2UmJiBwcm9taXNl
KSB7IG1fYm9keS5hcnJheUJ1ZmZlcihXVEZNb3ZlKHByb21pc2UpKTsgfQotICAgIHZvaWQgZm9y
bURhdGEoRmV0Y2hCb2R5OjpGb3JtRGF0YVByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS5mb3Jt
RGF0YShXVEZNb3ZlKHByb21pc2UpKTsgfQotICAgIHZvaWQgYmxvYihGZXRjaEJvZHk6OkJsb2JQ
cm9taXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkuYmxvYihXVEZNb3ZlKHByb21pc2UpKTsgfQotICAg
IHZvaWQganNvbihKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEZldGNoQm9keTo6SlNPTlByb21pc2Um
JiBwcm9taXNlKSB7IG1fYm9keS5qc29uKHN0YXRlLCBXVEZNb3ZlKHByb21pc2UpKTsgfQotICAg
IHZvaWQgdGV4dChGZXRjaEJvZHk6OlRleHRQcm9taXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkudGV4
dChXVEZNb3ZlKHByb21pc2UpKTsgfQotCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgVHlwZSB7
IEJhc2ljLCBDb3JzLCBEZWZhdWx0LCBFcnJvciwgT3BhcXVlLCBPcGFxdWVSZWRpcmVjdCB9Owog
CkBAIC04NSw3ICs3Niw2IEBAIHByaXZhdGU6CiAKICAgICBUeXBlIG1fdHlwZTsKICAgICBSZXNv
dXJjZVJlc3BvbnNlIG1fcmVzcG9uc2U7Ci0gICAgRmV0Y2hCb2R5IG1fYm9keTsKICAgICBSZWY8
RmV0Y2hIZWFkZXJzPiBtX2hlYWRlcnM7CiAgICAgYm9vbCBtX2lzTG9ja2VkID0gZmFsc2U7CiAg
ICAgYm9vbCBtX2lzUmVkaXJlY3RlZCA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDRkZTk2Mjg3ZDhlMjI3YWU1YTk2
YTFkYmNkYzRkMDk5ZTZmODY5YjkuLjZhZjNjY2Q0MTNkZmNiODkxNWQ5ZDZkMmMxZjUzNGFkZGMw
NjdmYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTExNDUsNyArMTE0NSw2IEBACiAJCTJENDE1MERFMUMxRjg2OEMwMDBBM0JB
MiAvKiBKU01vY2tQYWdlT3ZlcmxheS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyRDZGM0U5MjFDMUY4NTU1MDA2MURCRDQgLyogSlNNb2NrUGFnZU92
ZXJsYXkuY3BwICovOyB9OwogCQkyRDQ0NDY5ODFDODRDQ0NGMDAyNEM4ODkgLyogRE9NSFRNTE1l
ZGlhRWxlbWVudC5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkRFQzY2NEUxQzgyQ0ZGNjAwOTk4NDZBIC8qIERPTUhUTUxNZWRp
YUVsZW1lbnQuaCAqLzsgfTsKIAkJMkQ0NDQ2OTkxQzg0Q0NENzAwMjRDODg5IC8qIERPTUhUTUxW
aWRlb0VsZW1lbnQuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDJERUM2NjRCMUM4MkNGQkYwMDk5ODQ2QSAvKiBET01IVE1MVmlk
ZW9FbGVtZW50LmggKi87IH07Ci0JCTJENDQ0NjlBMUM4NENDRTEwMDI0Qzg4OSAvKiBET01NZWRp
YUNvbnRyb2xsZXIuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDJERUM2NjY5MUM4M0NDQkUwMDk5ODQ2QSAvKiBET01NZWRpYUNv
bnRyb2xsZXIuaCAqLzsgfTsKIAkJMkQ0NDQ2OUIxQzg0Q0QwNTAwMjRDODg5IC8qIERPTU1lZGlh
RXJyb3IuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJERUM2Njc1MUM4NDAzQzMwMDk5ODQ2QSAvKiBET01NZWRpYUVycm9yLmgg
Ki87IH07CiAJCTJENDQ0NjlGMUM4NENEMDYwMDI0Qzg4OSAvKiBET01UaW1lUmFuZ2VzLmggaW4g
Q29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAyREVDNjY2RjFDODNGMkFGMDA5OTg0NkEgLyogRE9NVGltZVJhbmdlcy5oICovOyB9OwogCQky
RDQ2RjA0RTE3Qjk2RkJEMDA1NjQ3RjAgLyogSW50UG9pbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ0NkYwNEQxN0I5NkZCRDAwNTY0N0YwIC8q
IEludFBvaW50LmNwcCAqLzsgfTsKQEAgLTg2NjMsMTYgKzg2NjIsMTYgQEAKIAkJMkRFNzAwMjIx
OTJGRTgyQTAwQjA5NzVDIC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hYy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYWMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkRFQzY2NEIxQzgyQ0ZCRjAwOTk4NDZBIC8qIERPTUhU
TUxWaWRlb0VsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSFRN
TFZpZGVvRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyREVDNjY0QzFD
ODJDRkJGMDA5OTg0NkEgLyogRE9NSFRNTFZpZGVvRWxlbWVudC5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTUhUTUxWaWRlb0VsZW1lbnQubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTJERUM2NjREMUM4MkNGQkYwMDk5ODQ2QSAvKiBET01IVE1M
VmlkZW9FbGVtZW50SW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
RE9NSFRNTFZpZGVvRWxlbWVudEludGVybmFsLmg7IHBhdGggPSBET01IVE1MVmlkZW9FbGVtZW50
SW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkRFQzY2NEQxQzgyQ0ZC
RjAwOTk4NDZBIC8qIERPTUhUTUxWaWRlb0VsZW1lbnRJbnRlcm5hbC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MVmlkZW9FbGVtZW50SW50ZXJuYWwuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkRFQzY2NEUxQzgyQ0ZGNjAwOTk4NDZBIC8qIERPTUhU
TUxNZWRpYUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSFRN
TE1lZGlhRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyREVDNjY0RjFD
ODJDRkY2MDA5OTg0NkEgLyogRE9NSFRNTE1lZGlhRWxlbWVudC5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTUhUTUxNZWRpYUVsZW1lbnQubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTJERUM2NjUwMUM4MkQwMDgwMDk5ODQ2QSAvKiBET01IVE1M
TWVkaWFFbGVtZW50SW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
RE9NSFRNTE1lZGlhRWxlbWVudEludGVybmFsLmg7IHBhdGggPSBET01IVE1MTWVkaWFFbGVtZW50
SW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkRFQzY2NTAxQzgyRDAw
ODAwOTk4NDZBIC8qIERPTUhUTUxNZWRpYUVsZW1lbnRJbnRlcm5hbC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MTWVkaWFFbGVtZW50SW50ZXJuYWwuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkRFQzY2NkYxQzgzRjJBRjAwOTk4NDZBIC8qIERPTVRp
bWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NVGltZVJhbmdl
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyREVDNjY3MDFDODNGMkFGMDA5OTg0
NkEgLyogRE9NVGltZVJhbmdlcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IERPTVRpbWVSYW5nZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTJE
RUM2NjcxMUM4M0YyQUYwMDk5ODQ2QSAvKiBET01UaW1lUmFuZ2VzSW50ZXJuYWwuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRE9NVGltZVJhbmdlc0ludGVybmFsLmg7IHBhdGgg
PSBET01UaW1lUmFuZ2VzSW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MkRFQzY2NzExQzgzRjJBRjAwOTk4NDZBIC8qIERPTVRpbWVSYW5nZXNJbnRlcm5hbC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01UaW1lUmFuZ2VzSW50ZXJuYWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkRFQzY2NzUxQzg0MDNDMzAwOTk4NDZBIC8qIERP
TU1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NTWVkaWFF
cnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyREVDNjY3NjFDODQwM0MzMDA5
OTg0NkEgLyogRE9NTWVkaWFFcnJvci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IERPTU1lZGlhRXJyb3IubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0J
CTJERUM2Njc3MUM4NDAzQzMwMDk5ODQ2QSAvKiBET01NZWRpYUVycm9ySW50ZXJuYWwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRE9NTWVkaWFFcnJvckludGVybmFsLmg7IHBh
dGggPSBET01NZWRpYUVycm9ySW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMkRFQzY2NzcxQzg0MDNDMzAwOTk4NDZBIC8qIERPTU1lZGlhRXJyb3JJbnRlcm5hbC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01NZWRpYUVycm9ySW50ZXJuYWwuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkUwODg4QzMxMTQ4ODNBOTAwQUY0MjY1IC8q
IERPTUZvcm1EYXRhLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01Gb3JtRGF0YS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMDg4OEQyMTE0ODg0OEEwMEFGNDI2NSAv
KiBKU0RPTUZvcm1EYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTRE9NRm9ybURhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRTA4ODhE
MzExNDg4NDhBMDBBRjQyNjUgLyogSlNET01Gb3JtRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0RPTUZvcm1EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC04OTg4LDYgKzg5ODcsNyBAQAogCQk0MTM4RDMzMzEyNDQwNTQ4MDAzMjNEMzMgLyogRXZl
bnRDb250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50Q29udGV4
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTM4RDMzNDEyNDQwNTQ4MDAzMjNE
MzMgLyogRXZlbnRDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEV2ZW50Q29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxM0My
QzMzMUJDMjlBN0IwMDc1MjA0QyAvKiBKU0RPTUNvbnN0cnVjdG9yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ29uc3RydWN0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDE0N0UyQjIxQzg4MzM3RjAwQTdFNzE1IC8qIEZldGNoQm9keU93bmVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZldGNoQm9keU93bmVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxNTA3MTU1MTY4NTA2NzMwMEMzQzdCMyAvKiBTZWxl
Y3RvckZpbHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTZWxl
Y3RvckZpbHRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxNTA3MTU2MTY4
NTA2NzMwMEMzQzdCMyAvKiBTZWxlY3RvckZpbHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTZWxlY3RvckZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk0MTUwRjlFRjEyQjZFMEU3MDAwOEM4NjAgLyogU2xpZGVyVGh1bWJFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNsaWRlclRodW1iRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY3NzcsNiArMTY3NzcsNyBAQAogCQk0MUY1NEY3QzFD
NTBDNEY2MDAzMzg0ODggLyogZmV0Y2ggKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNo
aWxkcmVuID0gKAorCQkJCTQxNDdFMkIyMUM4ODMzN0YwMEE3RTcxNSAvKiBGZXRjaEJvZHlPd25l
ci5oICovLAogCQkJCTQxRjU0RjdEMUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRjaEJvZHkuY3BwICov
LAogCQkJCTQxRjU0RjdFMUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRjaEJvZHkuaCAqLywKIAkJCQk0
MUY1NEY3RjFDNTBDNEY2MDAzMzg0ODggLyogRmV0Y2hCb2R5LmlkbCAqLywKQEAgLTMxMDE2LDcg
KzMxMDE3LDcgQEAKIAkJCQk0NDc5NTgwNTE2NDNCNEIyMDAxRTBBN0YgLyogUGFyc2VkQ29udGVu
dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjU1QjNEQzkxMjUxRjEyRDAwM0VGMjY5IC8q
IFBhc3N3b3JkSW5wdXRUeXBlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJERUM2NjczMUM4M0Yy
QUYwMDk5ODQ2QSAvKiBET01UaW1lUmFuZ2VzLm1tIGluIFNvdXJjZXMgKi8sCi0gICAgICAgICAg
ICAgICAgMkRFQzY2NTYxQzgyRDA0NDAwOTk4NDZBIC8qIERPTUhUTUxNZWRpYUVsZW1lbnQubW0g
aW4gU291cmNlcyAqLywKKwkJCQkyREVDNjY1NjFDODJEMDQ0MDA5OTg0NkEgLyogRE9NSFRNTE1l
ZGlhRWxlbWVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJCUU0NTM5MDFFMEVBRkNBQ0EwMDM2OTVD
OCAvKiBQYXN0ZWJvYXJkSU9TLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNEIyNzA5ODMwQUYyRTVF
MDAwNjUxMjdGIC8qIFBhc3RlYm9hcmRNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQlCMjc1MzU3
RjBCMDUzODE0MDAyQ0U2NEYgLyogUGF0aC5jcHAgaW4gU291cmNlcyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273289</attachid>
            <date>2016-03-08 04:48:58 -0800</date>
            <delta_ts>2016-03-08 10:09:29 -0800</delta_ts>
            <desc>Rebasing</desc>
            <filename>bug-154959-20160308134843.patch</filename>
            <type>text/plain</type>
            <size>12219</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NzU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzcwNGEwZDUyMDg1Y2Y5
NzVkYWUwNGQwYTBlYmI5ODQyYmQyOWYxNy4uNDNiZTVjMjE3NmNlNTg2NWQ5MDY3MzBiZDdmN2Y4
MzhhZTQyY2IyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMzIEBACiAyMDE2LTAzLTA4ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CiAKKyAgICAgICAgW0ZldGNo
IEFQSV0gQ29tbW9uYWxpemUgaGFuZGxpbmcgb2YgRmV0Y2hCb2R5IGJ5IEZldGNoUmVxdWVzdCBh
bmQgRmV0Y2hSZXNwb25zZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTU0OTU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW50cm9kdWNpbmcgRmV0Y2hCb2R5T3duZXIgY2xhc3MgYXMgYmFzZSBjbGFzcyBv
ZiBGZXRjaFJlcXVlc3QgYW5kIEZldGNoUmVzcG9uc2UuCisgICAgICAgIFRoaXMgY2xhc3MgaXMg
YW4gQWN0aXZlRE9NT2JqZWN0IGFuZCBpcyByZXNwb25zaWJsZSBvZiBoYW5kbGluZyB0aGUgQm9k
eSBBUEkgaW1wbGVtZW50ZWQgYnkgUmVxdWVzdCBhbmQgUmVzcG9uc2UuCisKKyAgICAgICAgQ292
ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hC
b2R5T3duZXIuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6aXNE
aXN0dXJiZWQpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hCb2R5T3duZXI6OmFycmF5QnVmZmVy
KToKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoQm9keU93bmVyOjpmb3JtRGF0YSk6CisgICAgICAg
IChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6YmxvYik6CisgICAgICAgIChXZWJDb3JlOjpGZXRj
aEJvZHlPd25lcjo6anNvbik6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6dGV4
dCk6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6Ym9keSk6CisgICAgICAgIChX
ZWJDb3JlOjpGZXRjaEJvZHlPd25lcjo6RmV0Y2hCb2R5T3duZXIpOgorICAgICAgICAqIE1vZHVs
ZXMvZmV0Y2gvRmV0Y2hSZXF1ZXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlcXVlc3Q6
OkZldGNoUmVxdWVzdCk6CisgICAgICAgICogTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoUmVzcG9uc2U6OkZldGNoUmVzcG9uc2UpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oOgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworMjAxNi0wMy0wOCAgWW91ZW5uIEZhYmxldCAg
PHlvdWVubi5mYWJsZXRAY3JmLmNhbm9uLmZyPgorCiAgICAgICAgIFtGZXRjaCBBUEldIEltcGxl
bWVudCBmZXRjaCBza2VsZXRvbgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU1MTExCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hCb2R5T3duZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0
Y2hCb2R5T3duZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MzZjOTRhNjRjMjhiM2M3NmQyYTM1MGFmYTQ0M2Uw
Mjc5MDUxM2ZkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRj
aC9GZXRjaEJvZHlPd25lci5oCkBAIC0wLDAgKzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTYgQ2Fub24gSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkLCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IHJlcXVpcmVkIHRvIGJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMu
ICBOZWl0aGVyIHRoZSBuYW1lIG9mIENhbm9uIEluYy4gbm9yIHRoZSBuYW1lcyBvZgorICogICAg
IGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBDQU5PTiBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQ0FOT04gSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
CisgKiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorICogU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIKKyAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEZldGNoQm9keU93bmVyX2gKKyNkZWZpbmUg
RmV0Y2hCb2R5T3duZXJfaAorCisjaWYgRU5BQkxFKEZFVENIX0FQSSkKKworI2luY2x1ZGUgIkFj
dGl2ZURPTU9iamVjdC5oIgorI2luY2x1ZGUgIkZldGNoQm9keS5oIgorCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisKK2NsYXNzIEZldGNoQm9keU93bmVyIDogcHVibGljIFJlZkNvdW50ZWQ8RmV0Y2hC
b2R5T3duZXI+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK3B1YmxpYzoKKyAgICBGZXRjaEJv
ZHlPd25lcihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgRmV0Y2hCb2R5JiYpOworCisgICAgLy8g
RXhwb3NlZCBCb2R5IEFQSQorICAgIGJvb2wgaXNEaXN0dXJiZWQoKSBjb25zdCB7IHJldHVybiBt
X2JvZHkuaXNEaXN0dXJiZWQoKTsgfQorICAgIHZvaWQgYXJyYXlCdWZmZXIoRmV0Y2hCb2R5OjpB
cnJheUJ1ZmZlclByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS5hcnJheUJ1ZmZlcihXVEZNb3Zl
KHByb21pc2UpKTsgfQorICAgIHZvaWQgZm9ybURhdGEoRmV0Y2hCb2R5OjpGb3JtRGF0YVByb21p
c2UmJiBwcm9taXNlKSB7IG1fYm9keS5mb3JtRGF0YShXVEZNb3ZlKHByb21pc2UpKTsgfQorICAg
IHZvaWQgYmxvYihGZXRjaEJvZHk6OkJsb2JQcm9taXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkuYmxv
YihXVEZNb3ZlKHByb21pc2UpKTsgfQorICAgIHZvaWQganNvbihKU0M6OkV4ZWNTdGF0ZSYgc3Rh
dGUsIEZldGNoQm9keTo6SlNPTlByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS5qc29uKHN0YXRl
LCBXVEZNb3ZlKHByb21pc2UpKTsgfQorICAgIHZvaWQgdGV4dChGZXRjaEJvZHk6OlRleHRQcm9t
aXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkudGV4dChXVEZNb3ZlKHByb21pc2UpKTsgfQorCitwcm90
ZWN0ZWQ6CisgICAgRmV0Y2hCb2R5IG1fYm9keTsKK307CisKK2lubGluZSBGZXRjaEJvZHlPd25l
cjo6RmV0Y2hCb2R5T3duZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgRmV0Y2hC
b2R5JiYgYm9keSkKKyAgICA6IEFjdGl2ZURPTU9iamVjdCgmY29udGV4dCkKKyAgICAsIG1fYm9k
eShXVEZNb3ZlKGJvZHkpKQoreworICAgIHN1c3BlbmRJZk5lZWRlZCgpOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoRkVUQ0hfQVBJKQorCisjZW5kaWYg
Ly8gRmV0Y2hCb2R5T3duZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
ZXRjaC9GZXRjaFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hS
ZXF1ZXN0LmgKaW5kZXggYmEyNjFlN2Q4N2YxMGI1ZmI1ZTVhMzNmNmQ3Njg4MDNjZDMzNmU3ZS4u
MTc4ZTBjMmE0MmYyMDRiOTNhNjVkOGJlZGFiMzkzMzg1NjM4ZjJhNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVxdWVzdC5oCkBAIC0zMSw4ICszMSw3IEBACiAKICNp
ZiBFTkFCTEUoRkVUQ0hfQVBJKQogCi0jaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCi0jaW5j
bHVkZSAiRmV0Y2hCb2R5LmgiCisjaW5jbHVkZSAiRmV0Y2hCb2R5T3duZXIuaCIKICNpbmNsdWRl
ICJGZXRjaEhlYWRlcnMuaCIKICNpbmNsdWRlICJGZXRjaE9wdGlvbnMuaCIKICNpbmNsdWRlICJS
ZXNvdXJjZVJlcXVlc3QuaCIKQEAgLTQ0LDcgKzQzLDcgQEAgY2xhc3MgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dDsKIAogdHlwZWRlZiBpbnQgRXhjZXB0aW9uQ29kZTsKIAotY2xhc3MgRmV0Y2hSZXF1
ZXN0IGZpbmFsIDogcHVibGljIFJlZkNvdW50ZWQ8RmV0Y2hSZXF1ZXN0PiwgcHVibGljIEFjdGl2
ZURPTU9iamVjdCB7CitjbGFzcyBGZXRjaFJlcXVlc3QgZmluYWwgOiBwdWJsaWMgRmV0Y2hCb2R5
T3duZXIgewogcHVibGljOgogICAgIHN0YXRpYyBSZWZQdHI8RmV0Y2hSZXF1ZXN0PiBjcmVhdGUo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIEZldGNoUmVxdWVzdCosIGNvbnN0IERpY3Rpb25hcnkm
LCBFeGNlcHRpb25Db2RlJik7CiAgICAgc3RhdGljIFJlZlB0cjxGZXRjaFJlcXVlc3Q+IGNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29uc3QgU3RyaW5nJiwgY29uc3QgRGljdGlvbmFy
eSYsIEV4Y2VwdGlvbkNvZGUmKTsKQEAgLTY2LDE0ICs2NSw2IEBAIHB1YmxpYzoKIAogICAgIFJl
ZlB0cjxGZXRjaFJlcXVlc3Q+IGNsb25lKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRp
b25Db2RlJik7CiAKLSAgICAvLyBCb2R5IEFQSQotICAgIGJvb2wgaXNEaXN0dXJiZWQoKSBjb25z
dCB7IHJldHVybiBtX2JvZHkuaXNEaXN0dXJiZWQoKTsgfQotICAgIHZvaWQgYXJyYXlCdWZmZXIo
RmV0Y2hCb2R5OjpBcnJheUJ1ZmZlclByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS5hcnJheUJ1
ZmZlcihXVEZNb3ZlKHByb21pc2UpKTsgfQotICAgIHZvaWQgZm9ybURhdGEoRmV0Y2hCb2R5OjpG
b3JtRGF0YVByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS5mb3JtRGF0YShXVEZNb3ZlKHByb21p
c2UpKTsgfQotICAgIHZvaWQgYmxvYihGZXRjaEJvZHk6OkJsb2JQcm9taXNlJiYgcHJvbWlzZSkg
eyBtX2JvZHkuYmxvYihXVEZNb3ZlKHByb21pc2UpKTsgfQotICAgIHZvaWQganNvbihKU0M6OkV4
ZWNTdGF0ZSYgc3RhdGUsIEZldGNoQm9keTo6SlNPTlByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9k
eS5qc29uKHN0YXRlLCBXVEZNb3ZlKHByb21pc2UpKTsgfQotICAgIHZvaWQgdGV4dChGZXRjaEJv
ZHk6OlRleHRQcm9taXNlJiYgcHJvbWlzZSkgeyBtX2JvZHkudGV4dChXVEZNb3ZlKHByb21pc2Up
KTsgfQotCiAgICAgc3RydWN0IEludGVybmFsUmVxdWVzdCB7CiAgICAgICAgIFJlc291cmNlUmVx
dWVzdCByZXF1ZXN0OwogICAgICAgICBGZXRjaE9wdGlvbnMgb3B0aW9uczsKQEAgLTgxLDggKzcy
LDYgQEAgcHVibGljOgogICAgICAgICBTdHJpbmcgaW50ZWdyaXR5OwogICAgIH07CiAKLSAgICBG
ZXRjaEJvZHkmIGJvZHkoKSB7IHJldHVybiBtX2JvZHk7IH0KLQogcHJpdmF0ZToKICAgICBGZXRj
aFJlcXVlc3QoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIEZldGNoQm9keSYmLCBSZWY8RmV0Y2hI
ZWFkZXJzPiYmLCBJbnRlcm5hbFJlcXVlc3QmJik7CiAKQEAgLTkwLDE4ICs3OSwxNSBAQCBwcml2
YXRlOgogICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25zdCBmaW5hbDsK
ICAgICBib29sIGNhblN1c3BlbmRGb3JEb2N1bWVudFN1c3BlbnNpb24oKSBjb25zdCBmaW5hbDsK
IAotICAgIEZldGNoQm9keSBtX2JvZHk7CiAgICAgUmVmPEZldGNoSGVhZGVycz4gbV9oZWFkZXJz
OwogICAgIEludGVybmFsUmVxdWVzdCBtX2ludGVybmFsUmVxdWVzdDsKIH07CiAKIGlubGluZSBG
ZXRjaFJlcXVlc3Q6OkZldGNoUmVxdWVzdChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0
LCBGZXRjaEJvZHkmJiBib2R5LCBSZWY8RmV0Y2hIZWFkZXJzPiYmIGhlYWRlcnMsIEludGVybmFs
UmVxdWVzdCYmIGludGVybmFsUmVxdWVzdCkKLSAgICA6IEFjdGl2ZURPTU9iamVjdCgmY29udGV4
dCkKLSAgICAsIG1fYm9keShXVEZNb3ZlKGJvZHkpKQorICAgIDogRmV0Y2hCb2R5T3duZXIoY29u
dGV4dCwgV1RGTW92ZShib2R5KSkKICAgICAsIG1faGVhZGVycyhXVEZNb3ZlKGhlYWRlcnMpKQog
ICAgICwgbV9pbnRlcm5hbFJlcXVlc3QoV1RGTW92ZShpbnRlcm5hbFJlcXVlc3QpKQogewotICAg
IHN1c3BlbmRJZk5lZWRlZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcAppbmRleCBlNTk3NTg3
NjU3MjI3NWU5ZmRjOTA1N2VkYzA1ODIzYjRmNGMyMmI2Li5kMWQ0ZGJjNzYxNmMyNmM3ZTJmZjdj
YTY0ODBmM2U0ZDYzZDE1MGRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zl
dGNoL0ZldGNoUmVzcG9uc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hSZXNwb25zZS5jcHAKQEAgLTEwOSwxMyArMTA5LDExIEBAIHZvaWQgRmV0Y2hSZXNwb25z
ZTo6aW5pdGlhbGl6ZVdpdGgoY29uc3QgRGljdGlvbmFyeSYgaW5pdCwgRXhjZXB0aW9uQ29kZSYg
ZWMpCiB9CiAKIEZldGNoUmVzcG9uc2U6OkZldGNoUmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCYgY29udGV4dCwgVHlwZSB0eXBlLCBGZXRjaEJvZHkmJiBib2R5LCBSZWY8RmV0Y2hIZWFk
ZXJzPiYmIGhlYWRlcnMsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSkKLSAgICA6IEFjdGl2
ZURPTU9iamVjdCgmY29udGV4dCkKKyAgICA6IEZldGNoQm9keU93bmVyKGNvbnRleHQsIFdURk1v
dmUoYm9keSkpCiAgICAgLCBtX3R5cGUodHlwZSkKICAgICAsIG1fcmVzcG9uc2UoV1RGTW92ZShy
ZXNwb25zZSkpCi0gICAgLCBtX2JvZHkoV1RGTW92ZShib2R5KSkKICAgICAsIG1faGVhZGVycyhX
VEZNb3ZlKGhlYWRlcnMpKQogewotICAgIHN1c3BlbmRJZk5lZWRlZCgpOwogfQogCiBSZWZQdHI8
RmV0Y2hSZXNwb25zZT4gRmV0Y2hSZXNwb25zZTo6Y2xvbmUoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hSZXNwb25zZS5oCmluZGV4IGZjMzhmYzMyZjc4NjA1OGE0MDRjNWI1OTY2Zjhm
NjQ4OTdlYjhlYTguLjdiZDYwNWNlZTYyZDc3OTc0MWZhNjM2ZmJhODkzYzYxNDZiYmMzOGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oCkBAIC0zMSw4
ICszMSw3IEBACiAKICNpZiBFTkFCTEUoRkVUQ0hfQVBJKQogCi0jaW5jbHVkZSAiQWN0aXZlRE9N
T2JqZWN0LmgiCi0jaW5jbHVkZSAiRmV0Y2hCb2R5LmgiCisjaW5jbHVkZSAiRmV0Y2hCb2R5T3du
ZXIuaCIKICNpbmNsdWRlICJGZXRjaEhlYWRlcnMuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlc3Bv
bnNlLmgiCiAKQEAgLTQ2LDcgKzQ1LDcgQEAgY2xhc3MgRGljdGlvbmFyeTsKIAogdHlwZWRlZiBp
bnQgRXhjZXB0aW9uQ29kZTsKIAotY2xhc3MgRmV0Y2hSZXNwb25zZSBmaW5hbCA6IHB1YmxpYyBS
ZWZDb3VudGVkPEZldGNoUmVzcG9uc2U+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNz
IEZldGNoUmVzcG9uc2UgZmluYWwgOiBwdWJsaWMgRmV0Y2hCb2R5T3duZXIgewogcHVibGljOgog
ICAgIHN0YXRpYyBSZWY8RmV0Y2hSZXNwb25zZT4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmIGNvbnRleHQpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmV0Y2hSZXNwb25zZShjb250ZXh0
LCBUeXBlOjpEZWZhdWx0LCB7IH0sIEZldGNoSGVhZGVyczo6Y3JlYXRlKEZldGNoSGVhZGVyczo6
R3VhcmQ6OlJlc3BvbnNlKSwgUmVzb3VyY2VSZXNwb25zZSgpKSk7IH0KICAgICBzdGF0aWMgUmVm
PEZldGNoUmVzcG9uc2U+IGVycm9yKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKQEAgLTY2LDE0
ICs2NSw2IEBAIHB1YmxpYzoKICAgICBGZXRjaEhlYWRlcnMmIGhlYWRlcnMoKSB7IHJldHVybiBt
X2hlYWRlcnM7IH0KICAgICBSZWZQdHI8RmV0Y2hSZXNwb25zZT4gY2xvbmUoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIC8vIEJvZHkgQVBJCi0gICAgYm9v
bCBpc0Rpc3R1cmJlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYm9keS5pc0Rpc3R1cmJlZCgpOyB9Ci0g
ICAgdm9pZCBhcnJheUJ1ZmZlcihGZXRjaEJvZHk6OkFycmF5QnVmZmVyUHJvbWlzZSYmIHByb21p
c2UpIHsgbV9ib2R5LmFycmF5QnVmZmVyKFdURk1vdmUocHJvbWlzZSkpOyB9Ci0gICAgdm9pZCBm
b3JtRGF0YShGZXRjaEJvZHk6OkZvcm1EYXRhUHJvbWlzZSYmIHByb21pc2UpIHsgbV9ib2R5LmZv
cm1EYXRhKFdURk1vdmUocHJvbWlzZSkpOyB9Ci0gICAgdm9pZCBibG9iKEZldGNoQm9keTo6Qmxv
YlByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS5ibG9iKFdURk1vdmUocHJvbWlzZSkpOyB9Ci0g
ICAgdm9pZCBqc29uKEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgRmV0Y2hCb2R5OjpKU09OUHJvbWlz
ZSYmIHByb21pc2UpIHsgbV9ib2R5Lmpzb24oc3RhdGUsIFdURk1vdmUocHJvbWlzZSkpOyB9Ci0g
ICAgdm9pZCB0ZXh0KEZldGNoQm9keTo6VGV4dFByb21pc2UmJiBwcm9taXNlKSB7IG1fYm9keS50
ZXh0KFdURk1vdmUocHJvbWlzZSkpOyB9Ci0KIHByaXZhdGU6CiAgICAgZW51bSBjbGFzcyBUeXBl
IHsgQmFzaWMsIENvcnMsIERlZmF1bHQsIEVycm9yLCBPcGFxdWUsIE9wYXF1ZVJlZGlyZWN0IH07
CiAKQEAgLTg1LDcgKzc2LDYgQEAgcHJpdmF0ZToKIAogICAgIFR5cGUgbV90eXBlOwogICAgIFJl
c291cmNlUmVzcG9uc2UgbV9yZXNwb25zZTsKLSAgICBGZXRjaEJvZHkgbV9ib2R5OwogICAgIFJl
ZjxGZXRjaEhlYWRlcnM+IG1faGVhZGVyczsKICAgICBib29sIG1faXNMb2NrZWQgPSBmYWxzZTsK
ICAgICBib29sIG1faXNSZWRpcmVjdGVkID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTY4MWYyZmU3YTY1MWE4MDBl
MGZiZDVmNjJjOTg1NjQ4ZGZmYzZlZC4uZDFjYWM0NTkwMzJiMzcxYjk3OWUwNTMwYjE5YWYyMzMw
NDY2ODlmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtOTAwMyw2ICs5MDAzLDcgQEAKIAkJNDEzOEQzMzMxMjQ0MDU0ODAwMzIz
RDMzIC8qIEV2ZW50Q29udGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBF
dmVudENvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzOEQzMzQxMjQ0
MDU0ODAwMzIzRDMzIC8qIEV2ZW50Q29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBFdmVudENvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0MTNDMkMzMzFCQzI5QTdCMDA3NTIwNEMgLyogSlNET01Db25zdHJ1Y3Rvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnN0cnVjdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDdFMkIyMUM4ODMzN0YwMEE3RTcxNSAvKiBGZXRjaEJv
ZHlPd25lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaEJvZHlPd25l
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTUwNzE1NTE2ODUwNjczMDBDM0M3
QjMgLyogU2VsZWN0b3JGaWx0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU2VsZWN0b3JGaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
MTUwNzE1NjE2ODUwNjczMDBDM0M3QjMgLyogU2VsZWN0b3JGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU2VsZWN0b3JGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNDE1MEY5RUYxMkI2RTBFNzAwMDhDODYwIC8qIFNsaWRlclRodW1iRWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTbGlkZXJUaHVtYkVsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2ODIzLDYgKzE2ODI0LDcgQEAKIAkJ
CQk0MUY1NEY3RDFDNTBDNEY2MDAzMzg0ODggLyogRmV0Y2hCb2R5LmNwcCAqLywKIAkJCQk0MUY1
NEY3RTFDNTBDNEY2MDAzMzg0ODggLyogRmV0Y2hCb2R5LmggKi8sCiAJCQkJNDFGNTRGN0YxQzUw
QzRGNjAwMzM4NDg4IC8qIEZldGNoQm9keS5pZGwgKi8sCisgCQkJCTQxNDdFMkIyMUM4ODMzN0Yw
MEE3RTcxNSAvKiBGZXRjaEJvZHlPd25lci5oICovLAogCQkJCTQxRjU0RjgyMUM1MEM0RjYwMDMz
ODQ4OCAvKiBGZXRjaEhlYWRlcnMuY3BwICovLAogCQkJCTQxRjU0RjgzMUM1MEM0RjYwMDMzODQ4
OCAvKiBGZXRjaEhlYWRlcnMuaCAqLywKIAkJCQk0MUY1NEY4NDFDNTBDNEY2MDAzMzg0ODggLyog
RmV0Y2hIZWFkZXJzLmlkbCAqLywK
</data>

          </attachment>
      

    </bug>

</bugzilla>