<?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>173452</bug_id>
          
          <creation_ts>2017-06-15 18:35:43 -0700</creation_ts>
          <short_desc>addTransceiver should trigger mid generation in the SDP</short_desc>
          <delta_ts>2017-06-16 17:27:37 -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>Media</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1319813</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-06-15 18:35:43 -0700</bug_when>
    <thetext>Currently, it is only done if a track is added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1319814</commentid>
    <comment_count>1</comment_count>
      <attachid>313042</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-06-15 18:41:16 -0700</bug_when>
    <thetext>Created attachment 313042
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1319974</commentid>
    <comment_count>2</comment_count>
      <attachid>313042</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-06-16 09:21:33 -0700</bug_when>
    <thetext>Comment on attachment 313042
Patch

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

&gt; Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:246
&gt; +        rtcOptions.offer_to_receive_audio = 1;

kOfferToReceiveMediaTrue

&gt; Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:248
&gt; +        rtcOptions.offer_to_receive_video = 1;

kOfferToReceiveMediaTrue</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1320233</commentid>
    <comment_count>3</comment_count>
      <attachid>313155</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-06-16 16:28:27 -0700</bug_when>
    <thetext>Created attachment 313155
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1320257</commentid>
    <comment_count>4</comment_count>
      <attachid>313155</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-16 17:27:36 -0700</bug_when>
    <thetext>Comment on attachment 313155
Patch

Clearing flags on attachment: 313155

Committed r218431: &lt;http://trac.webkit.org/changeset/218431&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1320258</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-16 17:27:37 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313042</attachid>
            <date>2017-06-15 18:41:16 -0700</date>
            <delta_ts>2017-06-16 16:28:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-173452-20170615184115.patch</filename>
            <type>text/plain</type>
            <size>13309</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4MzQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTgyZWU1ZmM1NmNiMTM5
MzcwYzc2YzQ0NDBiMjE1MjIwMGJjNTM5NS4uY2UzZjcyZWY0MGM5MmU5NWNiMTA3YjI1Y2RlZDM3
NTUwNGNlZTVkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE3LTA2LTE1ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBhZGRUcmFuc2NlaXZlciBz
aG91bGQgdHJpZ2dlciBtaWQgZ2VuZXJhdGlvbiBpbiB0aGUgU0RQCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzM0NTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiB3ZWJydGMvdmlkZW8tYWRkVHJh
bnNjZWl2ZXIuaHRtbAorCisgICAgICAgIEFkZGluZyBzdXBwb3J0IGZvciByZWN2b25seSBTRFAg
YmFzZWQgb24gY2FsbCB0byBhZGRUcmFuc2NlaXZlci4KKyAgICAgICAgVXNpbmcgb2ZmZXJfdG9f
cmVjZWl2ZSBvcHRpb25zIG9mIGxpYndlYnJ0YyBmb3IgdGhhdCBwdXJwb3NlLgorCisgICAgICAg
IE1ha2luZyBzdXJlIHRoYXQgYWRkVHJhbnNjZWl2ZXIgYW5kIHVzaW5nIGEgcmVhbCB0cmFjayBh
ZnRlcndhcmRzIGlzIHdvcmtpbmcgdG9vLgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVj
dGlvbjo6ZW5xdWV1ZVJlcGxhY2VUcmFja1Rhc2spOiBub3RpZnkgdGhlIGJhY2tlbmQgdGhhdCBh
IHRyYWNrIGlzIGFkZGVkIGluIGNhc2UgdGhlIHNlbmRlciBoYXMgbm8gdHJhY2suCisgICAgICAg
ICogTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDTWVkaWFFbmRwb2ludC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMaWJXZWJSVENNZWRpYUVuZHBvaW50OjpzaG91bGRPZmZl
ckFsbG93VG9SZWNlaXZlQXVkaW8pOiBEZXRlY3Qgd2hldGhlciBzb21lIGF1ZGlvIG1pZCBzaG91
bGQgYmUgcmVjdm9ubHkuCisgICAgICAgIChXZWJDb3JlOjpMaWJXZWJSVENNZWRpYUVuZHBvaW50
OjpzaG91bGRPZmZlckFsbG93VG9SZWNlaXZlVmlkZW8pOiBEZXRlY3Qgd2hldGhlciBzb21lIHZp
ZGVvIG1pZCBzaG91bGQgYmUgcmVjdm9ubHkuCisgICAgICAgIChXZWJDb3JlOjpMaWJXZWJSVENN
ZWRpYUVuZHBvaW50Ojpkb0NyZWF0ZU9mZmVyKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50Lmg6CisgICAgICAgICogTW9kdWxl
cy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmg6
CisKIDIwMTctMDYtMTUgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAK
ICAgICAgICAgVXNpbmcgLVtXZWJJdGVtUHJvdmlkZXJQYXN0ZWJvYXJkIHNldEl0ZW1Qcm92aWRl
cnM6XSB0byBzd2FwIG91dCBpdGVtIHByb3ZpZGVycyBiZWZvcmUgYSBkcm9wIGJyZWFrcyBpdGVt
IHByb3ZpZGVyIGxvYWRpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKaW5kZXggOTViYjYwOTI3YTQwNTg4ZGY4
ZDIyNTExNmFlMTJhMzE3NjdmZGUzNS4uMmM4N2MzMGJiMmZmMmRhMmU5ZmRhOGZlYThiZWFmYmVh
OGQ0OTMyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTU1OCw4ICs1NTgsMTEgQEAgdm9pZCBSVENQ
ZWVyQ29ubmVjdGlvbjo6ZmlyZUV2ZW50KEV2ZW50JiBldmVudCkKIAogdm9pZCBSVENQZWVyQ29u
bmVjdGlvbjo6ZW5xdWV1ZVJlcGxhY2VUcmFja1Rhc2soUlRDUnRwU2VuZGVyJiBzZW5kZXIsIFJl
ZjxNZWRpYVN0cmVhbVRyYWNrPiYmIHdpdGhUcmFjaywgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+
JiYgcHJvbWlzZSkKIHsKLSAgICBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnBvc3RUYXNrKFtw
cm90ZWN0ZWRTZW5kZXIgPSBtYWtlUmVmKHNlbmRlciksIHByb21pc2UgPSBXVEZNb3ZlKHByb21p
c2UpLCB3aXRoVHJhY2sgPSBXVEZNb3ZlKHdpdGhUcmFjayldKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmKSBtdXRhYmxlIHsKKyAgICBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnBvc3RUYXNrKFtw
cm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHByb3RlY3RlZFNlbmRlciA9IG1ha2VSZWYo
c2VuZGVyKSwgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSksIHdpdGhUcmFjayA9IFdURk1vdmUo
d2l0aFRyYWNrKV0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIG11dGFibGUgeworICAgICAgICBp
ZiAocHJvdGVjdGVkVGhpcy0+aXNDbG9zZWQoKSkKKyAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgcHJvdGVjdGVkU2VuZGVyLT5zZXRUcmFjayhXVEZNb3ZlKHdpdGhUcmFjaykpOworICAgICAg
ICBwcm90ZWN0ZWRUaGlzLT5tX2JhY2tlbmQtPm5vdGlmeUFkZGVkVHJhY2socHJvdGVjdGVkU2Vu
ZGVyLmdldCgpKTsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKCk7CiAgICAgfSk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJX
ZWJSVENNZWRpYUVuZHBvaW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuY3BwCmluZGV4IDk4YzA0MmY0NDFm
OTBhMmRhNWY0ZmZjOTliMWVkNjc3ZTE3MjE2ODEuLjU0YmQ1MjQ4ZTJiOTgxMDcxZTg2NThhMDRj
MGMwYmJlNjY3ODAxNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9p
bnQuY3BwCkBAIC0yMDUsMTIgKzIwNSw0NyBAQCB2b2lkIExpYldlYlJUQ01lZGlhRW5kcG9pbnQ6
OnJlbW92ZVRyYWNrKFJUQ1J0cFNlbmRlciYgc2VuZGVyKQogICAgIG1fYmFja2VuZC0+UmVtb3Zl
VHJhY2socnRjU2VuZGVyLmdldCgpKTsKIH0KIAorYm9vbCBMaWJXZWJSVENNZWRpYUVuZHBvaW50
OjpzaG91bGRPZmZlckFsbG93VG9SZWNlaXZlQXVkaW8oKSBjb25zdAoreworICAgIGZvciAoY29u
c3QgYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJDb25uZWN0aW9uQmFja2VuZC5jb25uZWN0aW9u
KCkuZ2V0VHJhbnNjZWl2ZXJzKCkpIHsKKyAgICAgICAgaWYgKHRyYW5zY2VpdmVyLT5zZW5kZXIo
KS50cmFja0tpbmQoKSAhPSAiYXVkaW8iKQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAg
ICAgaWYgKHRyYW5zY2VpdmVyLT5kaXJlY3Rpb24oKSA9PSBSVENSdHBUcmFuc2NlaXZlckRpcmVj
dGlvbjo6UmVjdm9ubHkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBpZiAo
dHJhbnNjZWl2ZXItPmRpcmVjdGlvbigpID09IFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uOjpT
ZW5kcmVjdiAmJiAhbV9zZW5kZXJzLmNvbnRhaW5zKCZ0cmFuc2NlaXZlci0+c2VuZGVyKCkpKQor
ICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKwor
Ym9vbCBMaWJXZWJSVENNZWRpYUVuZHBvaW50OjpzaG91bGRPZmZlckFsbG93VG9SZWNlaXZlVmlk
ZW8oKSBjb25zdAoreworICAgIGZvciAoY29uc3QgYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJD
b25uZWN0aW9uQmFja2VuZC5jb25uZWN0aW9uKCkuZ2V0VHJhbnNjZWl2ZXJzKCkpIHsKKyAgICAg
ICAgaWYgKHRyYW5zY2VpdmVyLT5zZW5kZXIoKS50cmFja0tpbmQoKSAhPSAidmlkZW8iKQorICAg
ICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgaWYgKHRyYW5zY2VpdmVyLT5kaXJlY3Rpb24o
KSA9PSBSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbjo6UmVjdm9ubHkpCisgICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKworICAgICAgICBpZiAodHJhbnNjZWl2ZXItPmRpcmVjdGlvbigpID09IFJU
Q1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uOjpTZW5kcmVjdiAmJiAhbV9zZW5kZXJzLmNvbnRhaW5z
KCZ0cmFuc2NlaXZlci0+c2VuZGVyKCkpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
fQorICAgIHJldHVybiBmYWxzZTsKK30KKwogdm9pZCBMaWJXZWJSVENNZWRpYUVuZHBvaW50Ojpk
b0NyZWF0ZU9mZmVyKGNvbnN0IFJUQ09mZmVyT3B0aW9ucyYgb3B0aW9ucykKIHsKICAgICBtX2lz
SW5pdGlhdG9yID0gdHJ1ZTsKICAgICB3ZWJydGM6OlBlZXJDb25uZWN0aW9uSW50ZXJmYWNlOjpS
VENPZmZlckFuc3dlck9wdGlvbnMgcnRjT3B0aW9uczsKICAgICBydGNPcHRpb25zLmljZV9yZXN0
YXJ0ID0gb3B0aW9ucy5pY2VSZXN0YXJ0OwogICAgIHJ0Y09wdGlvbnMudm9pY2VfYWN0aXZpdHlf
ZGV0ZWN0aW9uID0gb3B0aW9ucy52b2ljZUFjdGl2aXR5RGV0ZWN0aW9uOworICAgIC8vIEZJWE1F
OiBvZmZlcl90b19yZWNlaXZlX2F1ZGlvIGFuZCBvZmZlcl90b19yZWNlaXZlX3ZpZGVvIGFyZSB1
c2VkIGFzIGxpYndlYnJ0YyBkb2VzIG5vdCBzdXBwb3J0IHRyYW5zY2VpdmVycyB5ZXQuCisgICAg
aWYgKHNob3VsZE9mZmVyQWxsb3dUb1JlY2VpdmVBdWRpbygpKQorICAgICAgICBydGNPcHRpb25z
Lm9mZmVyX3RvX3JlY2VpdmVfYXVkaW8gPSAxOworICAgIGlmIChzaG91bGRPZmZlckFsbG93VG9S
ZWNlaXZlVmlkZW8oKSkKKyAgICAgICAgcnRjT3B0aW9ucy5vZmZlcl90b19yZWNlaXZlX3ZpZGVv
ID0gMTsKICAgICBtX2JhY2tlbmQtPkNyZWF0ZU9mZmVyKCZtX2NyZWF0ZVNlc3Npb25EZXNjcmlw
dGlvbk9ic2VydmVyLCBydGNPcHRpb25zKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDTWVkaWFFbmRwb2ludC5o
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRD
TWVkaWFFbmRwb2ludC5oCmluZGV4IDhmMDZiODAzOTQyMTU0YjZiNDRmY2RlMjhiMzE3MmVlM2Zm
MWY2ZTEuLjZjZWMzYTJhMWJjMWNkOTRmYjUyODJiMDZmMmYzNWIyNjhhOTI1NGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJU
Q01lZGlhRW5kcG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmgKQEAgLTEyMSw2ICsxMjEsOSBAQCBw
cml2YXRlOgogICAgIGludCBBZGRSZWYoKSBjb25zdCB7IHJlZigpOyByZXR1cm4gc3RhdGljX2Nh
c3Q8aW50PihyZWZDb3VudCgpKTsgfQogICAgIGludCBSZWxlYXNlKCkgY29uc3QgeyBkZXJlZigp
OyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihyZWZDb3VudCgpKTsgfQogCisgICAgYm9vbCBzaG91
bGRPZmZlckFsbG93VG9SZWNlaXZlQXVkaW8oKSBjb25zdDsKKyAgICBib29sIHNob3VsZE9mZmVy
QWxsb3dUb1JlY2VpdmVWaWRlbygpIGNvbnN0OworCiAgICAgY2xhc3MgQ3JlYXRlU2Vzc2lvbkRl
c2NyaXB0aW9uT2JzZXJ2ZXIgZmluYWwgOiBwdWJsaWMgd2VicnRjOjpDcmVhdGVTZXNzaW9uRGVz
Y3JpcHRpb25PYnNlcnZlciB7CiAgICAgcHVibGljOgogICAgICAgICBleHBsaWNpdCBDcmVhdGVT
ZXNzaW9uRGVzY3JpcHRpb25PYnNlcnZlcihMaWJXZWJSVENNZWRpYUVuZHBvaW50ICZlbmRwb2lu
dCkgOiBtX2VuZHBvaW50KGVuZHBvaW50KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFj
a2VuZC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGli
V2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmgKaW5kZXggZGM5NzUzODQ3NmVhNGFkOWIwN2Qz
ZjNjNWFmMTU0YzQ3NjIxOWFkMi4uMGM1MjEyYmU4ZmM5MDk4NWM5YTI0NzMxN2ZhNGUwZDI0YzZj
YjI2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25C
YWNrZW5kLmgKQEAgLTQ5LDYgKzQ5LDkgQEAgcHVibGljOgogICAgIGV4cGxpY2l0IExpYldlYlJU
Q1BlZXJDb25uZWN0aW9uQmFja2VuZChSVENQZWVyQ29ubmVjdGlvbiYpOwogICAgIH5MaWJXZWJS
VENQZWVyQ29ubmVjdGlvbkJhY2tlbmQoKTsKIAorICAgIGJvb2wgaGFzQXVkaW9Tb3VyY2VzKCkg
Y29uc3QgeyByZXR1cm4gbV9hdWRpb1NvdXJjZXMuc2l6ZSgpOyB9CisgICAgYm9vbCBoYXNWaWRl
b1NvdXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3ZpZGVvU291cmNlcy5zaXplKCk7IH0KKwogcHJp
dmF0ZToKICAgICB2b2lkIGRvQ3JlYXRlT2ZmZXIoUlRDT2ZmZXJPcHRpb25zJiYpIGZpbmFsOwog
ICAgIHZvaWQgZG9DcmVhdGVBbnN3ZXIoUlRDQW5zd2VyT3B0aW9ucyYmKSBmaW5hbDsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCA0NzI2NzMzZjNiMWZhNDY2NjJjZDZkMWU4ZWQ1ZjEyNWJlODAwNzlkLi5mN2UxM2JhN2IwY2Rj
ZjZiMzkyYzM1YjUxY2FmYzdiZDIyZTgzZjNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTcgQEAKIDIwMTct
MDYtMTUgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCisgICAgICAgIGFkZFRy
YW5zY2VpdmVyIHNob3VsZCB0cmlnZ2VyIG1pZCBnZW5lcmF0aW9uIGluIHRoZSBTRFAKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzQ1MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2VicnRjL3JvdXRp
bmVzLmpzOgorICAgICAgICAoY3JlYXRlQ29ubmVjdGlvbnMpOgorICAgICAgICAqIHdlYnJ0Yy92
aWRlby1hZGRUcmFuc2NlaXZlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYnJ0
Yy92aWRlby1hZGRUcmFuc2NlaXZlci5odG1sOiBBZGRlZC4KKworMjAxNy0wNi0xNSAgWW91ZW5u
IEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKICAgICAgICAgUlRDUGVlckNvbm5lY3Rpb24g
cmV0dXJucyBSVENTZXNzaW9uRGVzY3JpcHRpb24gd2hlcmUgUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
SW5pdCB3b3VsZCBiZSBhcHByb3ByaWF0ZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTczMTE4CiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMjc0Njc2
MT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYnJ0Yy9yb3V0aW5lcy5qcyBiL0xheW91dFRl
c3RzL3dlYnJ0Yy9yb3V0aW5lcy5qcwppbmRleCBmMjc2NTQ0NWY0ZDIzZmJmMjBiMTNhZWU5ZDJi
MzI3OTRmNDc5NGIxLi45NTY3YjM4MDdmNzI3Njc2NGM0NWRlYzg5YWQxN2I3MTY3Yjg5MDQyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJydGMvcm91dGluZXMuanMKKysrIGIvTGF5b3V0VGVz
dHMvd2VicnRjL3JvdXRpbmVzLmpzCkBAIC00LDE0ICs0LDE2IEBAIHZhciByZW1vdGVDb25uZWN0
aW9uOwogCiBmdW5jdGlvbiBjcmVhdGVDb25uZWN0aW9ucyhzZXR1cExvY2FsQ29ubmVjdGlvbiwg
c2V0dXBSZW1vdGVDb25uZWN0aW9uLCBvcHRpb25zID0geyB9KSB7CiAgICAgbG9jYWxDb25uZWN0
aW9uID0gbmV3IFJUQ1BlZXJDb25uZWN0aW9uKCk7Ci0gICAgbG9jYWxDb25uZWN0aW9uLm9uaWNl
Y2FuZGlkYXRlID0gKGV2ZW50KSA9PiB7IGljZUNhbGxiYWNrMShldmVudCwgb3B0aW9ucy5maWx0
ZXJPdXRJQ0VDYW5kaWRhdGUpIH07Ci0gICAgc2V0dXBMb2NhbENvbm5lY3Rpb24obG9jYWxDb25u
ZWN0aW9uKTsKLQogICAgIHJlbW90ZUNvbm5lY3Rpb24gPSBuZXcgUlRDUGVlckNvbm5lY3Rpb24o
KTsKICAgICByZW1vdGVDb25uZWN0aW9uLm9uaWNlY2FuZGlkYXRlID0gKGV2ZW50KSA9PiB7IGlj
ZUNhbGxiYWNrMihldmVudCwgb3B0aW9ucy5maWx0ZXJPdXRJQ0VDYW5kaWRhdGUpIH07Ci0gICAg
c2V0dXBSZW1vdGVDb25uZWN0aW9uKHJlbW90ZUNvbm5lY3Rpb24pOwogCi0gICAgbG9jYWxDb25u
ZWN0aW9uLmNyZWF0ZU9mZmVyKCkudGhlbigoZGVzYykgPT4gZ290RGVzY3JpcHRpb24xKGRlc2Ms
IG9wdGlvbnMpLCBvbkNyZWF0ZVNlc3Npb25EZXNjcmlwdGlvbkVycm9yKTsKKyAgICBsb2NhbENv
bm5lY3Rpb24ub25pY2VjYW5kaWRhdGUgPSAoZXZlbnQpID0+IHsgaWNlQ2FsbGJhY2sxKGV2ZW50
LCBvcHRpb25zLmZpbHRlck91dElDRUNhbmRpZGF0ZSkgfTsKKworICAgIFByb21pc2UucmVzb2x2
ZShzZXR1cExvY2FsQ29ubmVjdGlvbihsb2NhbENvbm5lY3Rpb24pKS50aGVuKCgpID0+IHsKKyAg
ICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShzZXR1cFJlbW90ZUNvbm5lY3Rpb24ocmVtb3Rl
Q29ubmVjdGlvbikpOworICAgIH0pLnRoZW4oKCkgPT4geworICAgICAgICBsb2NhbENvbm5lY3Rp
b24uY3JlYXRlT2ZmZXIoKS50aGVuKChkZXNjKSA9PiBnb3REZXNjcmlwdGlvbjEoZGVzYywgb3B0
aW9ucyksIG9uQ3JlYXRlU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3IpOworICAgIH0pOwogCiAgICAg
cmV0dXJuIFtsb2NhbENvbm5lY3Rpb24sIHJlbW90ZUNvbm5lY3Rpb25dCiB9CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tYWRkVHJhbnNjZWl2ZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLWFkZFRyYW5zY2VpdmVyLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44NzkwZTZiOGI0MTA0ZGEyMjYwMjg2MjkwNzc2ZDQzMzA3ODhkOGM2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLWFkZFRyYW5zY2VpdmVyLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDYgQEAKKworCitQQVNTIFNldHRpbmcgdXAgY2FsbHMgd2l0aCBh
ZGRUcmFuc2NlaXZlciBidXQgd2l0aCBubyB0cmFjayAKK1BBU1MgU2V0dGluZyB1cCBjYWxscyB3
aXRoIGFkZFRyYW5zY2VpdmVyIHdpdGggYSB0cmFjayAKK1BBU1MgQmFzaWMgdmlkZW8gZXhjaGFu
Z2Ugc2V0IHVwIHdpdGggYWRkVHJhbnNjZWl2ZXIgCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYnJ0Yy92aWRlby1hZGRUcmFuc2NlaXZlci5odG1sIGIvTGF5b3V0VGVzdHMvd2VicnRjL3Zp
ZGVvLWFkZFRyYW5zY2VpdmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNThmNjc3M2MwYWRiZWQ0NjdjYmU1
YmY3N2U4YjZhNDc1YjlhODBkNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYnJ0
Yy92aWRlby1hZGRUcmFuc2NlaXZlci5odG1sCkBAIC0wLDAgKzEsOTkgQEAKKzwhZG9jdHlwZSBo
dG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4K
KyAgICAgICAgPHRpdGxlPlRlc3RpbmcgYmFzaWMgdmlkZW8gZXhjaGFuZ2UgZnJvbSBvZmZlcmVy
IHRvIHJlY2VpdmVyPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9k
eT4KKyAgICAgICAgPHZpZGVvIGlkPSJ2aWRlbyIgYXV0b3BsYXk9IiI+PC92aWRlbz4KKyAgICAg
ICAgPGNhbnZhcyBpZD0iY2FudmFzIiB3aWR0aD0iNjQwIiBoZWlnaHQ9IjQ4MCI+PC9jYW52YXM+
CisgICAgICAgIDxzY3JpcHQgc3JjID0icm91dGluZXMuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0PgorCitwcm9taXNlX3Rlc3QoKHRlc3QpID0+IHsKKyAgICB2YXIgcGMgPSBuZXcgUlRD
UGVlckNvbm5lY3Rpb24oKTsKKyAgICBwYy5hZGRUcmFuc2NlaXZlcigidmlkZW8iKTsKKworICAg
IHJldHVybiBwYy5jcmVhdGVPZmZlcigpLnRoZW4oKG9mZmVyKSA9PiB7CisgICAgICAgIGFzc2Vy
dF90cnVlKG9mZmVyLnNkcC5pbmRleE9mKCJtaWQ6dmlkZW8iKSAhPT0gLTEpOworICAgICAgICBh
c3NlcnRfdHJ1ZShvZmZlci5zZHAuaW5kZXhPZigiYT1yZWN2b25seSIpICE9PSAtMSk7CisKKyAg
ICAgICAgcGMuYWRkVHJhbnNjZWl2ZXIoImF1ZGlvIik7CisgICAgICAgIHJldHVybiBwYy5jcmVh
dGVPZmZlcigpOworICAgIH0pLnRoZW4oKG9mZmVyKSA9PiB7CisgICAgICAgIGFzc2VydF90cnVl
KG9mZmVyLnNkcC5pbmRleE9mKCJtaWQ6YXVkaW8iKSAhPT0gLTEpOworICAgIH0pOworfSwgIlNl
dHRpbmcgdXAgY2FsbHMgd2l0aCBhZGRUcmFuc2NlaXZlciBidXQgd2l0aCBubyB0cmFjayIpOwor
Citwcm9taXNlX3Rlc3QoKHRlc3QpID0+IHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlck1lZGlhUGVybWlzc2lvbih0cnVlKTsKKworICAgIHJl
dHVybiBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7IHZpZGVvOiB0cnVlIH0p
LnRoZW4oKHN0cmVhbSkgPT4geworICAgICAgICB2YXIgcGMgPSBuZXcgUlRDUGVlckNvbm5lY3Rp
b24oKTsKKyAgICAgICAgcGMuYWRkVHJhbnNjZWl2ZXIoInZpZGVvIik7CisgICAgICAgIHBjLmdl
dFNlbmRlcnMoKVswXS5yZXBsYWNlVHJhY2soc3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0pOwor
CisgICAgICAgIHJldHVybiBwYy5jcmVhdGVPZmZlcigpLnRoZW4oKG9mZmVyKSA9PiB7CisgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZShvZmZlci5zZHAuaW5kZXhPZigibWlkOnZpZGVvIikgIT09IC0x
KTsKKyAgICAgICAgICAgIC8vIFJlcGxhY2luZyB0aGUgdHJhY2sgaXMgbm90IGRvbmUgeWV0IHNv
IHdlIHN0aWxsIHNldCBpdCBhcyBhIHJlY3Zvbmx5LgorICAgICAgICAgICAgYXNzZXJ0X3RydWUo
b2ZmZXIuc2RwLmluZGV4T2YoImE9cmVjdm9ubHkiKSAhPT0gLTEpOworICAgICAgICB9KTsKKyAg
ICB9KTsKK30sICJTZXR0aW5nIHVwIGNhbGxzIHdpdGggYWRkVHJhbnNjZWl2ZXIgd2l0aCBhIHRy
YWNrIik7CisKK2Z1bmN0aW9uIHRlc3RJbWFnZSgpCit7CisgICAgY2FudmFzLndpZHRoID0gdmlk
ZW8udmlkZW9XaWR0aDsKKyAgICBjYW52YXMuaGVpZ2h0ID0gdmlkZW8udmlkZW9IZWlnaHQ7Cisg
ICAgY2FudmFzLmdldENvbnRleHQoJzJkJykuZHJhd0ltYWdlKHZpZGVvLCAwLCAwLCBjYW52YXMu
d2lkdGgsIGNhbnZhcy5oZWlnaHQpOworCisgICAgaW1hZ2VEYXRhID0gY2FudmFzLmdldENvbnRl
eHQoJzJkJykuZ2V0SW1hZ2VEYXRhKDEwLCAzMjUsIDI1MCwgMSk7CisgICAgZGF0YSA9IGltYWdl
RGF0YS5kYXRhOworCisgICAgdmFyIGluZGV4ID0gMjA7CisgICAgYXNzZXJ0X3RydWUoZGF0YVtp
bmRleF0gPCAxMDApOworICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXggKyAxXSA8IDEwMCk7Cisg
ICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDJdIDwgMTAwKTsKKworICAgIGluZGV4ID0gODA7
CisgICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleF0gPiAyMDApOworICAgIGFzc2VydF90cnVlKGRh
dGFbaW5kZXggKyAxXSA+IDIwMCk7CisgICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDJdID4g
MjAwKTsKKworICAgIGluZGV4ICs9IDgwOworICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXhdID4g
MjAwKTsKKyAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0gPiAyMDApOworICAgIGFzc2Vy
dF90cnVlKGRhdGFbaW5kZXggKyAyXSA8IDEwMCk7Cit9CisKK3Byb21pc2VfdGVzdCgodGVzdCkg
PT4geworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRV
c2VyTWVkaWFQZXJtaXNzaW9uKHRydWUpOworCisgICAgcmV0dXJuIG5hdmlnYXRvci5tZWRpYURl
dmljZXMuZ2V0VXNlck1lZGlhKHsgdmlkZW86IHRydWV9KS50aGVuKChzdHJlYW0pID0+IHsKKyAg
ICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAg
ICAgIGNyZWF0ZUNvbm5lY3Rpb25zKChmaXJzdENvbm5lY3Rpb24pID0+IHsKKyAgICAgICAgICAg
ICAgICB2YXIgdHJhY2sgPSBzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXTsKKyAgICAgICAgICAg
ICAgICBmaXJzdENvbm5lY3Rpb24uYWRkVHJhbnNjZWl2ZXIoInZpZGVvIik7CisgICAgICAgICAg
ICAgICAgcmV0dXJuIGZpcnN0Q29ubmVjdGlvbi5nZXRTZW5kZXJzKClbMF0ucmVwbGFjZVRyYWNr
KHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdKTsKKyAgICAgICAgICAgIH0sIChzZWNvbmRDb25u
ZWN0aW9uKSA9PiB7CisgICAgICAgICAgICAgICAgc2Vjb25kQ29ubmVjdGlvbi5vbnRyYWNrID0g
KHRyYWNrRXZlbnQpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0cmFja0V2ZW50
LnN0cmVhbXNbMF0pOworICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICB9KTsKKyAgICAg
ICAgICAgIHNldFRpbWVvdXQoKCkgPT4gcmVqZWN0KCJUZXN0IHRpbWVkIG91dCIpLCA1MDAwKTsK
KyAgICAgICAgfSk7CisgICAgfSkudGhlbigoc3RyZWFtKSA9PiB7CisgICAgICAgIHZpZGVvLnNy
Y09iamVjdCA9IHN0cmVhbTsKKyAgICAgICAgcmV0dXJuIHZpZGVvLnBsYXkoKTsKKyAgICB9KS50
aGVuKCgpID0+IHsKKyAgICAgICAgdGVzdEltYWdlKCk7CisgICAgfSk7Cit9LCAiQmFzaWMgdmlk
ZW8gZXhjaGFuZ2Ugc2V0IHVwIHdpdGggYWRkVHJhbnNjZWl2ZXIiKTsKKworICAgICAgICA8L3Nj
cmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313155</attachid>
            <date>2017-06-16 16:28:27 -0700</date>
            <delta_ts>2017-06-16 17:27:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-173452-20170616162827.patch</filename>
            <type>text/plain</type>
            <size>13409</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4NDI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2JjMjY3OTljMGI4ZTlk
YThkMjI1NzYwZGFkMjYxNjNiZjViOTc4ZS4uYWZlYTRjMjMwNDliMjhlZmJiOTM1YTg3YmMyNzdj
MjFkMzIyOGY2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE3LTA2LTE2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAorICAgICAgICBhZGRUcmFuc2NlaXZlciBz
aG91bGQgdHJpZ2dlciBtaWQgZ2VuZXJhdGlvbiBpbiB0aGUgU0RQCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzM0NTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAgIFRlc3Q6IHdlYnJ0Yy92aWRlby1hZGRU
cmFuc2NlaXZlci5odG1sCisKKyAgICAgICAgQWRkaW5nIHN1cHBvcnQgZm9yIHJlY3Zvbmx5IFNE
UCBiYXNlZCBvbiBjYWxsIHRvIGFkZFRyYW5zY2VpdmVyLgorICAgICAgICBVc2luZyBvZmZlcl90
b19yZWNlaXZlIG9wdGlvbnMgb2YgbGlid2VicnRjIGZvciB0aGF0IHB1cnBvc2UuCisKKyAgICAg
ICAgTWFraW5nIHN1cmUgdGhhdCBhZGRUcmFuc2NlaXZlciBhbmQgdXNpbmcgYSByZWFsIHRyYWNr
IGFmdGVyd2FyZHMgaXMgd29ya2luZyB0b28uCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25u
ZWN0aW9uOjplbnF1ZXVlUmVwbGFjZVRyYWNrVGFzayk6IG5vdGlmeSB0aGUgYmFja2VuZCB0aGF0
IGEgdHJhY2sgaXMgYWRkZWQgaW4gY2FzZSB0aGUgc2VuZGVyIGhhcyBubyB0cmFjay4KKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ01lZGlhRW5kcG9pbnQ6OnNob3VsZE9m
ZmVyQWxsb3dUb1JlY2VpdmVBdWRpbyk6IERldGVjdCB3aGV0aGVyIHNvbWUgYXVkaW8gbWlkIHNo
b3VsZCBiZSByZWN2b25seS4KKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ01lZGlhRW5kcG9p
bnQ6OnNob3VsZE9mZmVyQWxsb3dUb1JlY2VpdmVWaWRlbyk6IERldGVjdCB3aGV0aGVyIHNvbWUg
dmlkZW8gbWlkIHNob3VsZCBiZSByZWN2b25seS4KKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJU
Q01lZGlhRW5kcG9pbnQ6OmRvQ3JlYXRlT2ZmZXIpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFz
dHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuaDoKKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQu
aDoKKworMjAxNy0wNi0xNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKICAg
ICAgICAgW2lPU10gU3dpdGNoaW5nIGNhbWVyYXMgaW4gYSBXZWJSVEMgY2FsbCBtYWtlcyBibGFj
ayBmcmFtZXMgYmVpbmcgc2VudAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTczNDg2CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKaW5kZXggOTViYjYwOTI3YTQwNTg4
ZGY4ZDIyNTExNmFlMTJhMzE3NjdmZGUzNS4uMmM4N2MzMGJiMmZmMmRhMmU5ZmRhOGZlYThiZWFm
YmVhOGQ0OTMyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTU1OCw4ICs1NTgsMTEgQEAgdm9pZCBS
VENQZWVyQ29ubmVjdGlvbjo6ZmlyZUV2ZW50KEV2ZW50JiBldmVudCkKIAogdm9pZCBSVENQZWVy
Q29ubmVjdGlvbjo6ZW5xdWV1ZVJlcGxhY2VUcmFja1Rhc2soUlRDUnRwU2VuZGVyJiBzZW5kZXIs
IFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmIHdpdGhUcmFjaywgRE9NUHJvbWlzZURlZmVycmVkPHZv
aWQ+JiYgcHJvbWlzZSkKIHsKLSAgICBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnBvc3RUYXNr
KFtwcm90ZWN0ZWRTZW5kZXIgPSBtYWtlUmVmKHNlbmRlciksIHByb21pc2UgPSBXVEZNb3ZlKHBy
b21pc2UpLCB3aXRoVHJhY2sgPSBXVEZNb3ZlKHdpdGhUcmFjayldKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmKSBtdXRhYmxlIHsKKyAgICBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnBvc3RUYXNr
KFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHByb3RlY3RlZFNlbmRlciA9IG1ha2VS
ZWYoc2VuZGVyKSwgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSksIHdpdGhUcmFjayA9IFdURk1v
dmUod2l0aFRyYWNrKV0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIG11dGFibGUgeworICAgICAg
ICBpZiAocHJvdGVjdGVkVGhpcy0+aXNDbG9zZWQoKSkKKyAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgcHJvdGVjdGVkU2VuZGVyLT5zZXRUcmFjayhXVEZNb3ZlKHdpdGhUcmFjaykpOworICAg
ICAgICBwcm90ZWN0ZWRUaGlzLT5tX2JhY2tlbmQtPm5vdGlmeUFkZGVkVHJhY2socHJvdGVjdGVk
U2VuZGVyLmdldCgpKTsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKCk7CiAgICAgfSk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9M
aWJXZWJSVENNZWRpYUVuZHBvaW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuY3BwCmluZGV4IDk4YzA0MmY0
NDFmOTBhMmRhNWY0ZmZjOTliMWVkNjc3ZTE3MjE2ODEuLjc1NGRlNzE4YWJjM2Q4MjZhNTQxOTNl
YTU4M2ZlOWJmNzQ5N2ZlNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5k
cG9pbnQuY3BwCkBAIC0yMDUsMTIgKzIwNSw0NyBAQCB2b2lkIExpYldlYlJUQ01lZGlhRW5kcG9p
bnQ6OnJlbW92ZVRyYWNrKFJUQ1J0cFNlbmRlciYgc2VuZGVyKQogICAgIG1fYmFja2VuZC0+UmVt
b3ZlVHJhY2socnRjU2VuZGVyLmdldCgpKTsKIH0KIAorYm9vbCBMaWJXZWJSVENNZWRpYUVuZHBv
aW50OjpzaG91bGRPZmZlckFsbG93VG9SZWNlaXZlQXVkaW8oKSBjb25zdAoreworICAgIGZvciAo
Y29uc3QgYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJDb25uZWN0aW9uQmFja2VuZC5jb25uZWN0
aW9uKCkuZ2V0VHJhbnNjZWl2ZXJzKCkpIHsKKyAgICAgICAgaWYgKHRyYW5zY2VpdmVyLT5zZW5k
ZXIoKS50cmFja0tpbmQoKSAhPSAiYXVkaW8iKQorICAgICAgICAgICAgY29udGludWU7CisKKyAg
ICAgICAgaWYgKHRyYW5zY2VpdmVyLT5kaXJlY3Rpb24oKSA9PSBSVENSdHBUcmFuc2NlaXZlckRp
cmVjdGlvbjo6UmVjdm9ubHkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBp
ZiAodHJhbnNjZWl2ZXItPmRpcmVjdGlvbigpID09IFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9u
OjpTZW5kcmVjdiAmJiAhbV9zZW5kZXJzLmNvbnRhaW5zKCZ0cmFuc2NlaXZlci0+c2VuZGVyKCkp
KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30K
KworYm9vbCBMaWJXZWJSVENNZWRpYUVuZHBvaW50OjpzaG91bGRPZmZlckFsbG93VG9SZWNlaXZl
VmlkZW8oKSBjb25zdAoreworICAgIGZvciAoY29uc3QgYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3Bl
ZXJDb25uZWN0aW9uQmFja2VuZC5jb25uZWN0aW9uKCkuZ2V0VHJhbnNjZWl2ZXJzKCkpIHsKKyAg
ICAgICAgaWYgKHRyYW5zY2VpdmVyLT5zZW5kZXIoKS50cmFja0tpbmQoKSAhPSAidmlkZW8iKQor
ICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgaWYgKHRyYW5zY2VpdmVyLT5kaXJlY3Rp
b24oKSA9PSBSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbjo6UmVjdm9ubHkpCisgICAgICAgICAg
ICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBpZiAodHJhbnNjZWl2ZXItPmRpcmVjdGlvbigpID09
IFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uOjpTZW5kcmVjdiAmJiAhbV9zZW5kZXJzLmNvbnRh
aW5zKCZ0cmFuc2NlaXZlci0+c2VuZGVyKCkpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKwogdm9pZCBMaWJXZWJSVENNZWRpYUVuZHBvaW50
Ojpkb0NyZWF0ZU9mZmVyKGNvbnN0IFJUQ09mZmVyT3B0aW9ucyYgb3B0aW9ucykKIHsKICAgICBt
X2lzSW5pdGlhdG9yID0gdHJ1ZTsKICAgICB3ZWJydGM6OlBlZXJDb25uZWN0aW9uSW50ZXJmYWNl
OjpSVENPZmZlckFuc3dlck9wdGlvbnMgcnRjT3B0aW9uczsKICAgICBydGNPcHRpb25zLmljZV9y
ZXN0YXJ0ID0gb3B0aW9ucy5pY2VSZXN0YXJ0OwogICAgIHJ0Y09wdGlvbnMudm9pY2VfYWN0aXZp
dHlfZGV0ZWN0aW9uID0gb3B0aW9ucy52b2ljZUFjdGl2aXR5RGV0ZWN0aW9uOworICAgIC8vIEZJ
WE1FOiBvZmZlcl90b19yZWNlaXZlX2F1ZGlvIGFuZCBvZmZlcl90b19yZWNlaXZlX3ZpZGVvIGFy
ZSB1c2VkIGFzIGxpYndlYnJ0YyBkb2VzIG5vdCBzdXBwb3J0IHRyYW5zY2VpdmVycyB5ZXQuCisg
ICAgaWYgKHNob3VsZE9mZmVyQWxsb3dUb1JlY2VpdmVBdWRpbygpKQorICAgICAgICBydGNPcHRp
b25zLm9mZmVyX3RvX3JlY2VpdmVfYXVkaW8gPSB3ZWJydGM6OlBlZXJDb25uZWN0aW9uSW50ZXJm
YWNlOjpSVENPZmZlckFuc3dlck9wdGlvbnM6OmtPZmZlclRvUmVjZWl2ZU1lZGlhVHJ1ZTsKKyAg
ICBpZiAoc2hvdWxkT2ZmZXJBbGxvd1RvUmVjZWl2ZVZpZGVvKCkpCisgICAgICAgIHJ0Y09wdGlv
bnMub2ZmZXJfdG9fcmVjZWl2ZV92aWRlbyA9IHdlYnJ0Yzo6UGVlckNvbm5lY3Rpb25JbnRlcmZh
Y2U6OlJUQ09mZmVyQW5zd2VyT3B0aW9uczo6a09mZmVyVG9SZWNlaXZlTWVkaWFUcnVlOwogICAg
IG1fYmFja2VuZC0+Q3JlYXRlT2ZmZXIoJm1fY3JlYXRlU2Vzc2lvbkRlc2NyaXB0aW9uT2JzZXJ2
ZXIsIHJ0Y09wdGlvbnMpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBv
aW50LmgKaW5kZXggOGYwNmI4MDM5NDIxNTRiNmI0NGZjZGUyOGIzMTcyZWUzZmYxZjZlMS4uNmNl
YzNhMmExYmMxY2Q5NGZiNTI4MmIwNmYyZjM1YjI2OGE5MjU0YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDTWVkaWFFbmRw
b2ludC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRj
L0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuaApAQCAtMTIxLDYgKzEyMSw5IEBAIHByaXZhdGU6CiAg
ICAgaW50IEFkZFJlZigpIGNvbnN0IHsgcmVmKCk7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KHJl
ZkNvdW50KCkpOyB9CiAgICAgaW50IFJlbGVhc2UoKSBjb25zdCB7IGRlcmVmKCk7IHJldHVybiBz
dGF0aWNfY2FzdDxpbnQ+KHJlZkNvdW50KCkpOyB9CiAKKyAgICBib29sIHNob3VsZE9mZmVyQWxs
b3dUb1JlY2VpdmVBdWRpbygpIGNvbnN0OworICAgIGJvb2wgc2hvdWxkT2ZmZXJBbGxvd1RvUmVj
ZWl2ZVZpZGVvKCkgY29uc3Q7CisKICAgICBjbGFzcyBDcmVhdGVTZXNzaW9uRGVzY3JpcHRpb25P
YnNlcnZlciBmaW5hbCA6IHB1YmxpYyB3ZWJydGM6OkNyZWF0ZVNlc3Npb25EZXNjcmlwdGlvbk9i
c2VydmVyIHsKICAgICBwdWJsaWM6CiAgICAgICAgIGV4cGxpY2l0IENyZWF0ZVNlc3Npb25EZXNj
cmlwdGlvbk9ic2VydmVyKExpYldlYlJUQ01lZGlhRW5kcG9pbnQgJmVuZHBvaW50KSA6IG1fZW5k
cG9pbnQoZW5kcG9pbnQpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVy
Q29ubmVjdGlvbkJhY2tlbmQuaAppbmRleCBkYzk3NTM4NDc2ZWE0YWQ5YjA3ZDNmM2M1YWYxNTRj
NDc2MjE5YWQyLi4wYzUyMTJiZThmYzkwOTg1YzlhMjQ3MzE3ZmE0ZTBkMjRjNmNiMjYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJX
ZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuaApA
QCAtNDksNiArNDksOSBAQCBwdWJsaWM6CiAgICAgZXhwbGljaXQgTGliV2ViUlRDUGVlckNvbm5l
Y3Rpb25CYWNrZW5kKFJUQ1BlZXJDb25uZWN0aW9uJik7CiAgICAgfkxpYldlYlJUQ1BlZXJDb25u
ZWN0aW9uQmFja2VuZCgpOwogCisgICAgYm9vbCBoYXNBdWRpb1NvdXJjZXMoKSBjb25zdCB7IHJl
dHVybiBtX2F1ZGlvU291cmNlcy5zaXplKCk7IH0KKyAgICBib29sIGhhc1ZpZGVvU291cmNlcygp
IGNvbnN0IHsgcmV0dXJuIG1fdmlkZW9Tb3VyY2VzLnNpemUoKTsgfQorCiBwcml2YXRlOgogICAg
IHZvaWQgZG9DcmVhdGVPZmZlcihSVENPZmZlck9wdGlvbnMmJikgZmluYWw7CiAgICAgdm9pZCBk
b0NyZWF0ZUFuc3dlcihSVENBbnN3ZXJPcHRpb25zJiYpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDk2NmJiNGMy
MTdiYWE1YmJlMjNjOWZkMzM2ZDFiMmQ4ZjRmNjBhNDkuLmY0MDdhYjUxZTg3YzlkYWM4YjNhNjgx
YzY1ZDJkMmFkZGUwNjg1NzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxNyBAQAogMjAxNy0wNi0xNiAgWW91
ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKKyAgICAgICAgYWRkVHJhbnNjZWl2ZXIg
c2hvdWxkIHRyaWdnZXIgbWlkIGdlbmVyYXRpb24gaW4gdGhlIFNEUAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTczNDUyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHdlYnJ0Yy9yb3V0aW5lcy5qczoK
KyAgICAgICAgKGNyZWF0ZUNvbm5lY3Rpb25zKToKKyAgICAgICAgKiB3ZWJydGMvdmlkZW8tYWRk
VHJhbnNjZWl2ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJydGMvdmlkZW8t
YWRkVHJhbnNjZWl2ZXIuaHRtbDogQWRkZWQuCisKKzIwMTctMDYtMTYgIFlvdWVubiBGYWJsZXQg
IDx5b3Vlbm5AYXBwbGUuY29tPgorCiAgICAgICAgIFtpT1NdIFN3aXRjaGluZyBjYW1lcmFzIGlu
IGEgV2ViUlRDIGNhbGwgbWFrZXMgYmxhY2sgZnJhbWVzIGJlaW5nIHNlbnQKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzQ4NgogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJydGMvcm91dGluZXMuanMgYi9MYXlvdXRUZXN0cy93ZWJydGMvcm91
dGluZXMuanMKaW5kZXggZjI3NjU0NDVmNGQyM2ZiZjIwYjEzYWVlOWQyYjMyNzk0ZjQ3OTRiMS4u
OTU2N2IzODA3ZjcyNzY3NjRjNDVkZWM4OWFkMTdiNzE2N2I4OTA0MiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvd2VicnRjL3JvdXRpbmVzLmpzCisrKyBiL0xheW91dFRlc3RzL3dlYnJ0Yy9yb3V0
aW5lcy5qcwpAQCAtNCwxNCArNCwxNiBAQCB2YXIgcmVtb3RlQ29ubmVjdGlvbjsKIAogZnVuY3Rp
b24gY3JlYXRlQ29ubmVjdGlvbnMoc2V0dXBMb2NhbENvbm5lY3Rpb24sIHNldHVwUmVtb3RlQ29u
bmVjdGlvbiwgb3B0aW9ucyA9IHsgfSkgewogICAgIGxvY2FsQ29ubmVjdGlvbiA9IG5ldyBSVENQ
ZWVyQ29ubmVjdGlvbigpOwotICAgIGxvY2FsQ29ubmVjdGlvbi5vbmljZWNhbmRpZGF0ZSA9IChl
dmVudCkgPT4geyBpY2VDYWxsYmFjazEoZXZlbnQsIG9wdGlvbnMuZmlsdGVyT3V0SUNFQ2FuZGlk
YXRlKSB9OwotICAgIHNldHVwTG9jYWxDb25uZWN0aW9uKGxvY2FsQ29ubmVjdGlvbik7Ci0KICAg
ICByZW1vdGVDb25uZWN0aW9uID0gbmV3IFJUQ1BlZXJDb25uZWN0aW9uKCk7CiAgICAgcmVtb3Rl
Q29ubmVjdGlvbi5vbmljZWNhbmRpZGF0ZSA9IChldmVudCkgPT4geyBpY2VDYWxsYmFjazIoZXZl
bnQsIG9wdGlvbnMuZmlsdGVyT3V0SUNFQ2FuZGlkYXRlKSB9OwotICAgIHNldHVwUmVtb3RlQ29u
bmVjdGlvbihyZW1vdGVDb25uZWN0aW9uKTsKIAotICAgIGxvY2FsQ29ubmVjdGlvbi5jcmVhdGVP
ZmZlcigpLnRoZW4oKGRlc2MpID0+IGdvdERlc2NyaXB0aW9uMShkZXNjLCBvcHRpb25zKSwgb25D
cmVhdGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvcik7CisgICAgbG9jYWxDb25uZWN0aW9uLm9uaWNl
Y2FuZGlkYXRlID0gKGV2ZW50KSA9PiB7IGljZUNhbGxiYWNrMShldmVudCwgb3B0aW9ucy5maWx0
ZXJPdXRJQ0VDYW5kaWRhdGUpIH07CisKKyAgICBQcm9taXNlLnJlc29sdmUoc2V0dXBMb2NhbENv
bm5lY3Rpb24obG9jYWxDb25uZWN0aW9uKSkudGhlbigoKSA9PiB7CisgICAgICAgIHJldHVybiBQ
cm9taXNlLnJlc29sdmUoc2V0dXBSZW1vdGVDb25uZWN0aW9uKHJlbW90ZUNvbm5lY3Rpb24pKTsK
KyAgICB9KS50aGVuKCgpID0+IHsKKyAgICAgICAgbG9jYWxDb25uZWN0aW9uLmNyZWF0ZU9mZmVy
KCkudGhlbigoZGVzYykgPT4gZ290RGVzY3JpcHRpb24xKGRlc2MsIG9wdGlvbnMpLCBvbkNyZWF0
ZVNlc3Npb25EZXNjcmlwdGlvbkVycm9yKTsKKyAgICB9KTsKIAogICAgIHJldHVybiBbbG9jYWxD
b25uZWN0aW9uLCByZW1vdGVDb25uZWN0aW9uXQogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
d2VicnRjL3ZpZGVvLWFkZFRyYW5zY2VpdmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dl
YnJ0Yy92aWRlby1hZGRUcmFuc2NlaXZlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODc5MGU2
YjhiNDEwNGRhMjI2MDI4NjI5MDc3NmQ0MzMwNzg4ZDhjNgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3dlYnJ0Yy92aWRlby1hZGRUcmFuc2NlaXZlci1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw2IEBACisKKworUEFTUyBTZXR0aW5nIHVwIGNhbGxzIHdpdGggYWRkVHJhbnNjZWl2ZXIg
YnV0IHdpdGggbm8gdHJhY2sgCitQQVNTIFNldHRpbmcgdXAgY2FsbHMgd2l0aCBhZGRUcmFuc2Nl
aXZlciB3aXRoIGEgdHJhY2sgCitQQVNTIEJhc2ljIHZpZGVvIGV4Y2hhbmdlIHNldCB1cCB3aXRo
IGFkZFRyYW5zY2VpdmVyIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8t
YWRkVHJhbnNjZWl2ZXIuaHRtbCBiL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1hZGRUcmFuc2Nl
aXZlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU4ZjY3NzNjMGFkYmVkNDY3Y2JlNWJmNzdlOGI2YTQ3NWI5
YTgwZDYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tYWRkVHJh
bnNjZWl2ZXIuaHRtbApAQCAtMCwwICsxLDk5IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgor
ICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRs
ZT5UZXN0aW5nIGJhc2ljIHZpZGVvIGV4Y2hhbmdlIGZyb20gb2ZmZXJlciB0byByZWNlaXZlcjwv
dGl0bGU+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDx2
aWRlbyBpZD0idmlkZW8iIGF1dG9wbGF5PSIiPjwvdmlkZW8+CisgICAgICAgIDxjYW52YXMgaWQ9
ImNhbnZhcyIgd2lkdGg9IjY0MCIgaGVpZ2h0PSI0ODAiPjwvY2FudmFzPgorICAgICAgICA8c2Ny
aXB0IHNyYyA9InJvdXRpbmVzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKworcHJv
bWlzZV90ZXN0KCh0ZXN0KSA9PiB7CisgICAgdmFyIHBjID0gbmV3IFJUQ1BlZXJDb25uZWN0aW9u
KCk7CisgICAgcGMuYWRkVHJhbnNjZWl2ZXIoInZpZGVvIik7CisKKyAgICByZXR1cm4gcGMuY3Jl
YXRlT2ZmZXIoKS50aGVuKChvZmZlcikgPT4geworICAgICAgICBhc3NlcnRfdHJ1ZShvZmZlci5z
ZHAuaW5kZXhPZigibWlkOnZpZGVvIikgIT09IC0xKTsKKyAgICAgICAgYXNzZXJ0X3RydWUob2Zm
ZXIuc2RwLmluZGV4T2YoImE9cmVjdm9ubHkiKSAhPT0gLTEpOworCisgICAgICAgIHBjLmFkZFRy
YW5zY2VpdmVyKCJhdWRpbyIpOworICAgICAgICByZXR1cm4gcGMuY3JlYXRlT2ZmZXIoKTsKKyAg
ICB9KS50aGVuKChvZmZlcikgPT4geworICAgICAgICBhc3NlcnRfdHJ1ZShvZmZlci5zZHAuaW5k
ZXhPZigibWlkOmF1ZGlvIikgIT09IC0xKTsKKyAgICB9KTsKK30sICJTZXR0aW5nIHVwIGNhbGxz
IHdpdGggYWRkVHJhbnNjZWl2ZXIgYnV0IHdpdGggbm8gdHJhY2siKTsKKworcHJvbWlzZV90ZXN0
KCh0ZXN0KSA9PiB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVu
bmVyLnNldFVzZXJNZWRpYVBlcm1pc3Npb24odHJ1ZSk7CisKKyAgICByZXR1cm4gbmF2aWdhdG9y
Lm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoeyB2aWRlbzogdHJ1ZSB9KS50aGVuKChzdHJlYW0p
ID0+IHsKKyAgICAgICAgdmFyIHBjID0gbmV3IFJUQ1BlZXJDb25uZWN0aW9uKCk7CisgICAgICAg
IHBjLmFkZFRyYW5zY2VpdmVyKCJ2aWRlbyIpOworICAgICAgICBwYy5nZXRTZW5kZXJzKClbMF0u
cmVwbGFjZVRyYWNrKHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdKTsKKworICAgICAgICByZXR1
cm4gcGMuY3JlYXRlT2ZmZXIoKS50aGVuKChvZmZlcikgPT4geworICAgICAgICAgICAgYXNzZXJ0
X3RydWUob2ZmZXIuc2RwLmluZGV4T2YoIm1pZDp2aWRlbyIpICE9PSAtMSk7CisgICAgICAgICAg
ICAvLyBSZXBsYWNpbmcgdGhlIHRyYWNrIGlzIG5vdCBkb25lIHlldCBzbyB3ZSBzdGlsbCBzZXQg
aXQgYXMgYSByZWN2b25seS4KKyAgICAgICAgICAgIGFzc2VydF90cnVlKG9mZmVyLnNkcC5pbmRl
eE9mKCJhPXJlY3Zvbmx5IikgIT09IC0xKTsKKyAgICAgICAgfSk7CisgICAgfSk7Cit9LCAiU2V0
dGluZyB1cCBjYWxscyB3aXRoIGFkZFRyYW5zY2VpdmVyIHdpdGggYSB0cmFjayIpOworCitmdW5j
dGlvbiB0ZXN0SW1hZ2UoKQoreworICAgIGNhbnZhcy53aWR0aCA9IHZpZGVvLnZpZGVvV2lkdGg7
CisgICAgY2FudmFzLmhlaWdodCA9IHZpZGVvLnZpZGVvSGVpZ2h0OworICAgIGNhbnZhcy5nZXRD
b250ZXh0KCcyZCcpLmRyYXdJbWFnZSh2aWRlbywgMCwgMCwgY2FudmFzLndpZHRoLCBjYW52YXMu
aGVpZ2h0KTsKKworICAgIGltYWdlRGF0YSA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpLmdldElt
YWdlRGF0YSgxMCwgMzI1LCAyNTAsIDEpOworICAgIGRhdGEgPSBpbWFnZURhdGEuZGF0YTsKKwor
ICAgIHZhciBpbmRleCA9IDIwOworICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXhdIDwgMTAwKTsK
KyAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0gPCAxMDApOworICAgIGFzc2VydF90cnVl
KGRhdGFbaW5kZXggKyAyXSA8IDEwMCk7CisKKyAgICBpbmRleCA9IDgwOworICAgIGFzc2VydF90
cnVlKGRhdGFbaW5kZXhdID4gMjAwKTsKKyAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0g
PiAyMDApOworICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXggKyAyXSA+IDIwMCk7CisKKyAgICBp
bmRleCArPSA4MDsKKyAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4XSA+IDIwMCk7CisgICAgYXNz
ZXJ0X3RydWUoZGF0YVtpbmRleCArIDFdID4gMjAwKTsKKyAgICBhc3NlcnRfdHJ1ZShkYXRhW2lu
ZGV4ICsgMl0gPCAxMDApOworfQorCitwcm9taXNlX3Rlc3QoKHRlc3QpID0+IHsKKyAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlck1lZGlhUGVybWlz
c2lvbih0cnVlKTsKKworICAgIHJldHVybiBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJN
ZWRpYSh7IHZpZGVvOiB0cnVlfSkudGhlbigoc3RyZWFtKSA9PiB7CisgICAgICAgIHJldHVybiBu
ZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgICAgICBjcmVhdGVDb25u
ZWN0aW9ucygoZmlyc3RDb25uZWN0aW9uKSA9PiB7CisgICAgICAgICAgICAgICAgdmFyIHRyYWNr
ID0gc3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF07CisgICAgICAgICAgICAgICAgZmlyc3RDb25u
ZWN0aW9uLmFkZFRyYW5zY2VpdmVyKCJ2aWRlbyIpOworICAgICAgICAgICAgICAgIHJldHVybiBm
aXJzdENvbm5lY3Rpb24uZ2V0U2VuZGVycygpWzBdLnJlcGxhY2VUcmFjayhzdHJlYW0uZ2V0Vmlk
ZW9UcmFja3MoKVswXSk7CisgICAgICAgICAgICB9LCAoc2Vjb25kQ29ubmVjdGlvbikgPT4gewor
ICAgICAgICAgICAgICAgIHNlY29uZENvbm5lY3Rpb24ub250cmFjayA9ICh0cmFja0V2ZW50KSA9
PiB7CisgICAgICAgICAgICAgICAgICAgIHJlc29sdmUodHJhY2tFdmVudC5zdHJlYW1zWzBdKTsK
KyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBzZXRUaW1l
b3V0KCgpID0+IHJlamVjdCgiVGVzdCB0aW1lZCBvdXQiKSwgNTAwMCk7CisgICAgICAgIH0pOwor
ICAgIH0pLnRoZW4oKHN0cmVhbSkgPT4geworICAgICAgICB2aWRlby5zcmNPYmplY3QgPSBzdHJl
YW07CisgICAgICAgIHJldHVybiB2aWRlby5wbGF5KCk7CisgICAgfSkudGhlbigoKSA9PiB7Cisg
ICAgICAgIHRlc3RJbWFnZSgpOworICAgIH0pOworfSwgIkJhc2ljIHZpZGVvIGV4Y2hhbmdlIHNl
dCB1cCB3aXRoIGFkZFRyYW5zY2VpdmVyIik7CisKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9i
b2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>