<?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>191589</bug_id>
          
          <creation_ts>2018-11-13 09:10:52 -0800</creation_ts>
          <short_desc>RTCPeerConnection.getTransceivers is not always exposing all transceivers</short_desc>
          <delta_ts>2018-11-13 15:23:58 -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>WebRTC</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1478013</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-11-13 09:10:52 -0800</bug_when>
    <thetext>See imported/w3c/web-platform-tests/webrtc/RTCRtpTransceiver.https.html for one such case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478014</commentid>
    <comment_count>1</comment_count>
      <attachid>354673</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-11-13 09:13:11 -0800</bug_when>
    <thetext>Created attachment 354673
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478048</commentid>
    <comment_count>2</comment_count>
      <attachid>354673</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-11-13 10:30:02 -0800</bug_when>
    <thetext>Comment on attachment 354673
Patch

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

&gt; Source/WebCore/Modules/mediastream/RTCPeerConnection.h:136
&gt; +    const Vector&lt;std::reference_wrapper&lt;RTCRtpSender&gt;&gt;&amp; getSenders() const;
&gt; +    const Vector&lt;std::reference_wrapper&lt;RTCRtpReceiver&gt;&gt;&amp; getReceivers() const;
&gt; +    const Vector&lt;RefPtr&lt;RTCRtpTransceiver&gt;&gt;&amp; getTransceivers() const;
&gt; +
&gt; +    const Vector&lt;std::reference_wrapper&lt;RTCRtpSender&gt;&gt;&amp; senders() const { return m_transceiverSet-&gt;senders(); }
&gt; +    const Vector&lt;RefPtr&lt;RTCRtpTransceiver&gt;&gt;&amp; transceivers() const { return m_transceiverSet-&gt;list(); }

It isn&apos;t at all clear why we have both getSenders() and senders(), and getTransceivers() and transceivers(). Maybe &quot;get&quot; should be &quot;collect&quot;, or &quot;senders&quot; should be &quot;cachedSenders&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478077</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-11-13 11:09:01 -0800</bug_when>
    <thetext>(In reply to Eric Carlson from comment #2)
&gt; Comment on attachment 354673 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=354673&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/mediastream/RTCPeerConnection.h:136
&gt; &gt; +    const Vector&lt;std::reference_wrapper&lt;RTCRtpSender&gt;&gt;&amp; getSenders() const;
&gt; &gt; +    const Vector&lt;std::reference_wrapper&lt;RTCRtpReceiver&gt;&gt;&amp; getReceivers() const;
&gt; &gt; +    const Vector&lt;RefPtr&lt;RTCRtpTransceiver&gt;&gt;&amp; getTransceivers() const;
&gt; &gt; +
&gt; &gt; +    const Vector&lt;std::reference_wrapper&lt;RTCRtpSender&gt;&gt;&amp; senders() const { return m_transceiverSet-&gt;senders(); }
&gt; &gt; +    const Vector&lt;RefPtr&lt;RTCRtpTransceiver&gt;&gt;&amp; transceivers() const { return m_transceiverSet-&gt;list(); }
&gt; 
&gt; It isn&apos;t at all clear why we have both getSenders() and senders(), and
&gt; getTransceivers() and transceivers(). Maybe &quot;get&quot; should be &quot;collect&quot;, or
&gt; &quot;senders&quot; should be &quot;cachedSenders&quot;?

Right, let&apos;s rename them currentSenders/Receivers/Transceivers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478149</commentid>
    <comment_count>4</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-11-13 14:37:14 -0800</bug_when>
    <thetext>*** Bug 191588 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478151</commentid>
    <comment_count>5</comment_count>
      <attachid>354704</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-11-13 14:44:20 -0800</bug_when>
    <thetext>Created attachment 354704
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478162</commentid>
    <comment_count>6</comment_count>
      <attachid>354704</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-13 15:22:18 -0800</bug_when>
    <thetext>Comment on attachment 354704
Patch for landing

Clearing flags on attachment: 354704

Committed r238150: &lt;https://trac.webkit.org/changeset/238150&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478163</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-13 15:22:20 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478166</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-13 15:23:58 -0800</bug_when>
    <thetext>&lt;rdar://problem/46044314&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354673</attachid>
            <date>2018-11-13 09:13:11 -0800</date>
            <delta_ts>2018-11-13 14:44:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191589-20181113091311.patch</filename>
            <type>text/plain</type>
            <size>14177</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTNkM2Y5OWY0ZmVhODA4
Yzk0NzBjYzc4YzljZWRlNWNjMGNkMWY5Zi4uZjY2MTRhZGExNmQ2NmQwNWE5M2JkMDhkZGEzYzIz
ZWU0NTVmY2NmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE4LTExLTEzICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBSVENQZWVyQ29ubmVjdGlv
bi5nZXRUcmFuc2NlaXZlcnMgaXMgbm90IGFsd2F5cyBleHBvc2luZyBhbGwgdHJhbnNjZWl2ZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE1ODkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnQgdGhlIGNvbGxlY3QgdHJhbnNjZWl2ZXIgYWxnb3JpdGhtIHVzaW5nIGxpYndlYnJ0YyBiYWNr
ZW5kLgorICAgICAgICBDYWxsIHRoaXMgYWxnb3JpdGhtIGV2ZXJ5dGltZSB0cmFuc2NlaXZlcnMg
YXJlIHJldHJpZXZlZCBmcm9tIEpTLgorICAgICAgICBGb3IgUGxhbiBCLCBtYWtlIHRoaXMgYSBu
by1vcCBhcyB0aGlzIGlzIG5vdCBzdXBwb3J0ZWQuCisgICAgICAgIEludHJvZHVjZSBzZW5kZXJz
L3JlY2VpdmVycy90cmFuc2NlaXZlcnMgZ2V0dGVycyB3aGVyZSB3ZSBqdXN0IGxvb2sgYXQgYWxy
ZWFkeSBjcmVhdGVkIHRyYW5zY2VpdmVycy4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5n
IGFuZCByZWJhc2VkIHRlc3RzLgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9QZWVy
Q29ubmVjdGlvbkJhY2tlbmQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBlZXJDb25uZWN0aW9uQmFj
a2VuZDo6Y29sbGVjdFRyYW5zY2VpdmVycyk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVj
dGlvbjo6Z2V0U2VuZGVycyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVj
dGlvbjo6Z2V0UmVjZWl2ZXJzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25u
ZWN0aW9uOjpnZXRUcmFuc2NlaXZlcnMgY29uc3QpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFt
L2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkxpYldlYlJUQ01lZGlhRW5kcG9pbnQ6OmNvbGxlY3RUcmFuc2NlaXZlcnMpOgorICAgICAgICAq
IE1vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuaDoK
KyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29u
bmVjdGlvbkJhY2tlbmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGliV2ViUlRDUGVlckNvbm5l
Y3Rpb25CYWNrZW5kOjphZGRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpMaWJXZWJSVENQZWVy
Q29ubmVjdGlvbkJhY2tlbmQ6OmV4aXN0aW5nVHJhbnNjZWl2ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6TGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kOjpjb2xsZWN0VHJhbnNjZWl2ZXJzKToK
KyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6YXBwbHlS
b3RhdGlvbkZvck91dGdvaW5nVmlkZW9Tb3VyY2VzKToKKyAgICAgICAgKFdlYkNvcmU6OkxpYldl
YlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6c2hvdWxkT2ZmZXJBbGxvd1RvUmVjZWl2ZSBjb25z
dCk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVl
ckNvbm5lY3Rpb25CYWNrZW5kLmg6CisKIDIwMTgtMTEtMTIgIFlvdWVubiBGYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlYWx0aW1lT3V0Z29pbmcgQS9WIHNvdXJjZXMgc2hv
dWxkIG9ic2VydmUgdGhlaXIgc291cmNlcyBvbmx5IGlmIGhhdmluZyBhIHNpbmsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUGVlckNvbm5lY3Rpb25CYWNr
ZW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9u
QmFja2VuZC5oCmluZGV4IGY2MmE3YjIxYzgyMWU2ZDAzZDBjODU2Nzg4M2ExYTZjZDA0MGY3MmUu
LmEyYzFiZWU5ZWExNzk0ZGE0YWIzM2UyODhhZGY1ODc3OTk4NWI1ZjEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUGVlckNvbm5lY3Rpb25CYWNrZW5kLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9QZWVyQ29ubmVjdGlvbkJh
Y2tlbmQuaApAQCAtMTY3LDYgKzE2Nyw4IEBAIHB1YmxpYzoKICAgICB9OwogICAgIHN0YXRpYyB2
b2lkIGdlbmVyYXRlQ2VydGlmaWNhdGUoRG9jdW1lbnQmLCBjb25zdCBDZXJ0aWZpY2F0ZUluZm9y
bWF0aW9uJiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxSVENDZXJ0aWZpY2F0ZT4+
JiYpOwogCisgICAgdmlydHVhbCB2b2lkIGNvbGxlY3RUcmFuc2NlaXZlcnMoKSB7IH07CisKIHBy
b3RlY3RlZDoKICAgICB2b2lkIGZpcmVJQ0VDYW5kaWRhdGVFdmVudChSZWZQdHI8UlRDSWNlQ2Fu
ZGlkYXRlPiYmLCBTdHJpbmcmJiB1cmwpOwogICAgIHZvaWQgZG9uZUdhdGhlcmluZ0NhbmRpZGF0
ZXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
UGVlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbi5jcHAKaW5kZXggMDQ0NTVkNzBiMjhmOGM1M2MyMjkyYTQ1NzZkNDBk
NjA5OTEwMWIyNi4uMTM4NmNhYzcyODI3ZmY3N2FhYTgzYTI2MzQ2MjlhNjZiYjlkNGM0MyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbi5jcHAKQEAgLTYzOSw2ICs2MzksMjQgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlv
bjo6Z2VuZXJhdGVDZXJ0aWZpY2F0ZShKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEFsZ29yaXRobUlk
ZW4KICAgICBQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmdlbmVyYXRlQ2VydGlmaWNhdGUoZG9jdW1l
bnQsIHBhcmFtZXRlcnMucmV0dXJuVmFsdWUoKSwgV1RGTW92ZShwcm9taXNlKSk7CiB9CiAKK2Nv
bnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93cmFwcGVyPFJUQ1J0cFNlbmRlcj4+JiBSVENQZWVy
Q29ubmVjdGlvbjo6Z2V0U2VuZGVycygpIGNvbnN0Cit7CisgICAgbV9iYWNrZW5kLT5jb2xsZWN0
VHJhbnNjZWl2ZXJzKCk7CisgICAgcmV0dXJuIG1fdHJhbnNjZWl2ZXJTZXQtPnNlbmRlcnMoKTsK
K30KKworY29uc3QgVmVjdG9yPHN0ZDo6cmVmZXJlbmNlX3dyYXBwZXI8UlRDUnRwUmVjZWl2ZXI+
PiYgUlRDUGVlckNvbm5lY3Rpb246OmdldFJlY2VpdmVycygpIGNvbnN0Cit7CisgICAgbV9iYWNr
ZW5kLT5jb2xsZWN0VHJhbnNjZWl2ZXJzKCk7CisgICAgcmV0dXJuIG1fdHJhbnNjZWl2ZXJTZXQt
PnJlY2VpdmVycygpOworfQorCitjb25zdCBWZWN0b3I8UmVmUHRyPFJUQ1J0cFRyYW5zY2VpdmVy
Pj4mIFJUQ1BlZXJDb25uZWN0aW9uOjpnZXRUcmFuc2NlaXZlcnMoKSBjb25zdAoreworICAgIG1f
YmFja2VuZC0+Y29sbGVjdFRyYW5zY2VpdmVycygpOworICAgIHJldHVybiBtX3RyYW5zY2VpdmVy
U2V0LT5saXN0KCk7Cit9CisKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKIFdURkxvZ0NoYW5u
ZWwmIFJUQ1BlZXJDb25uZWN0aW9uOjpsb2dDaGFubmVsKCkgY29uc3QKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaApp
bmRleCBlOGUwMWM5MGE1YzZkYjAzZGFlN2I1ZTE5MjU3MjhjYjg4NGQzMmJlLi4zYjRkZjAxZWFl
ZGRiYTM5NWE5NGNjM2U0YTA1Y2E5Y2JkOTU5ZmVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCkBAIC0xMjgsOSAr
MTI4LDEyIEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZEludGVybmFsVHJhbnNjZWl2ZXIoUmVmPFJU
Q1J0cFRyYW5zY2VpdmVyPiYmIHRyYW5zY2VpdmVyKSB7IG1fdHJhbnNjZWl2ZXJTZXQtPmFwcGVu
ZChXVEZNb3ZlKHRyYW5zY2VpdmVyKSk7IH0KIAogICAgIC8vIDUuMSBSVENQZWVyQ29ubmVjdGlv
biBleHRlbnNpb25zCi0gICAgY29uc3QgVmVjdG9yPHN0ZDo6cmVmZXJlbmNlX3dyYXBwZXI8UlRD
UnRwU2VuZGVyPj4mIGdldFNlbmRlcnMoKSBjb25zdCB7IHJldHVybiBtX3RyYW5zY2VpdmVyU2V0
LT5zZW5kZXJzKCk7IH0KLSAgICBjb25zdCBWZWN0b3I8c3RkOjpyZWZlcmVuY2Vfd3JhcHBlcjxS
VENSdHBSZWNlaXZlcj4+JiBnZXRSZWNlaXZlcnMoKSBjb25zdCB7IHJldHVybiBtX3RyYW5zY2Vp
dmVyU2V0LT5yZWNlaXZlcnMoKTsgfQotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8UlRDUnRwVHJh
bnNjZWl2ZXI+PiYgZ2V0VHJhbnNjZWl2ZXJzKCkgY29uc3QgeyByZXR1cm4gbV90cmFuc2NlaXZl
clNldC0+bGlzdCgpOyB9CisgICAgY29uc3QgVmVjdG9yPHN0ZDo6cmVmZXJlbmNlX3dyYXBwZXI8
UlRDUnRwU2VuZGVyPj4mIGdldFNlbmRlcnMoKSBjb25zdDsKKyAgICBjb25zdCBWZWN0b3I8c3Rk
OjpyZWZlcmVuY2Vfd3JhcHBlcjxSVENSdHBSZWNlaXZlcj4+JiBnZXRSZWNlaXZlcnMoKSBjb25z
dDsKKyAgICBjb25zdCBWZWN0b3I8UmVmUHRyPFJUQ1J0cFRyYW5zY2VpdmVyPj4mIGdldFRyYW5z
Y2VpdmVycygpIGNvbnN0OworCisgICAgY29uc3QgVmVjdG9yPHN0ZDo6cmVmZXJlbmNlX3dyYXBw
ZXI8UlRDUnRwU2VuZGVyPj4mIHNlbmRlcnMoKSBjb25zdCB7IHJldHVybiBtX3RyYW5zY2VpdmVy
U2V0LT5zZW5kZXJzKCk7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVmUHRyPFJUQ1J0cFRyYW5zY2Vp
dmVyPj4mIHRyYW5zY2VpdmVycygpIGNvbnN0IHsgcmV0dXJuIG1fdHJhbnNjZWl2ZXJTZXQtPmxp
c3QoKTsgfQogCiAgICAgRXhjZXB0aW9uT3I8UmVmPFJUQ1J0cFNlbmRlcj4+IGFkZFRyYWNrKFJl
ZjxNZWRpYVN0cmVhbVRyYWNrPiYmLCBjb25zdCBWZWN0b3I8c3RkOjpyZWZlcmVuY2Vfd3JhcHBl
cjxNZWRpYVN0cmVhbT4+Jik7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gcmVtb3ZlVHJhY2soUlRD
UnRwU2VuZGVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuY3Bw
CmluZGV4IDY0ZTBjYjZmYzVkOGRiMmEzZjg5NGYwNjQwMWI5NjA1YjQyZmYzNTguLjg1MjE5YjBk
YWQ2NDE2ZTI5ZTNjMjJkZWY4ZTMwYzYxNWY5MjVmNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xp
YldlYlJUQ01lZGlhRW5kcG9pbnQuY3BwCkBAIC00NTcsNiArNDU3LDMwIEBAIHN0YXRpYyBpbmxp
bmUgUmVmUHRyPFJlYWx0aW1lTWVkaWFTb3VyY2U+IHNvdXJjZUZyb21OZXdSZWNlaXZlcih3ZWJy
dGM6OlJ0cFJlY2VpCiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAordm9p
ZCBMaWJXZWJSVENNZWRpYUVuZHBvaW50Ojpjb2xsZWN0VHJhbnNjZWl2ZXJzKCkKK3sKKyAgICBp
ZiAoIW1fYmFja2VuZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLndlYlJUQ1VuaWZpZWRQbGFuRW5hYmxlZCgpKQor
ICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKGF1dG8mIHJ0Y1RyYW5zY2VpdmVyIDogbV9iYWNr
ZW5kLT5HZXRUcmFuc2NlaXZlcnMoKSkgeworICAgICAgICBhdXRvKiBleGlzdGluZ1RyYW5zY2Vp
dmVyID0gbV9wZWVyQ29ubmVjdGlvbkJhY2tlbmQuZXhpc3RpbmdUcmFuc2NlaXZlcihbJl0oYXV0
byYgdHJhbnNjZWl2ZXJCYWNrZW5kKSB7CisgICAgICAgICAgICByZXR1cm4gcnRjVHJhbnNjZWl2
ZXIuZ2V0KCkgPT0gdHJhbnNjZWl2ZXJCYWNrZW5kLnJ0Y1RyYW5zY2VpdmVyKCk7CisgICAgICAg
IH0pOworICAgICAgICBpZiAoZXhpc3RpbmdUcmFuc2NlaXZlcikKKyAgICAgICAgICAgIGNvbnRp
bnVlOworCisgICAgICAgIGF1dG8gcnRjUmVjZWl2ZXIgPSBydGNUcmFuc2NlaXZlci0+cmVjZWl2
ZXIoKTsKKyAgICAgICAgYXV0byBzb3VyY2UgPSBzb3VyY2VGcm9tTmV3UmVjZWl2ZXIoKnJ0Y1Jl
Y2VpdmVyKTsKKyAgICAgICAgaWYgKCFzb3VyY2UpCisgICAgICAgICAgICByZXR1cm47CisKKyAg
ICAgICAgbV9wZWVyQ29ubmVjdGlvbkJhY2tlbmQubmV3UmVtb3RlVHJhbnNjZWl2ZXIoc3RkOjpt
YWtlX3VuaXF1ZTxMaWJXZWJSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQ+KFdURk1vdmUocnRjVHJh
bnNjZWl2ZXIpKSwgc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOworICAgIH0KK30KKwogdm9pZCBM
aWJXZWJSVENNZWRpYUVuZHBvaW50OjpuZXdUcmFuc2NlaXZlcihydGM6OnNjb3BlZF9yZWZwdHI8
d2VicnRjOjpSdHBUcmFuc2NlaXZlckludGVyZmFjZT4mJiBydGNUcmFuc2NlaXZlcikKIHsKICAg
ICBhdXRvKiB0cmFuc2NlaXZlciA9IG1fcGVlckNvbm5lY3Rpb25CYWNrZW5kLmV4aXN0aW5nVHJh
bnNjZWl2ZXIoWyZdKGF1dG8mIHRyYW5zY2VpdmVyQmFja2VuZCkgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDTWVkaWFF
bmRwb2ludC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMv
TGliV2ViUlRDTWVkaWFFbmRwb2ludC5oCmluZGV4IDNiYjBlNzMxZjQyZDA1ZDg3ZTU1Mjc5OGIx
MWFhOWZhMDc2ODIwZTQuLjVlMjEwODI5ZGNjZmQ4ODIyY2I3ODAwY2I5ZjBiMTljYTk4MjBhNWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRj
L0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmgKQEAgLTExMSw2ICsx
MTEsNyBAQCBwdWJsaWM6CiAgICAgc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1J0cFRyYW5zY2Vp
dmVyQmFja2VuZD4gdHJhbnNjZWl2ZXJCYWNrZW5kRnJvbVNlbmRlcihMaWJXZWJSVENSdHBTZW5k
ZXJCYWNrZW5kJik7CiAKICAgICB2b2lkIHNldFNlbmRlclNvdXJjZUZyb21UcmFjayhMaWJXZWJS
VENSdHBTZW5kZXJCYWNrZW5kJiwgTWVkaWFTdHJlYW1UcmFjayYpOworICAgIHZvaWQgY29sbGVj
dFRyYW5zY2VpdmVycygpOwogCiBwcml2YXRlOgogICAgIExpYldlYlJUQ01lZGlhRW5kcG9pbnQo
TGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kJiwgTGliV2ViUlRDUHJvdmlkZXImKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xp
YldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuY3Bw
CmluZGV4IGZiYWRmNjhmNTkwYWU4YTgxZGMyOTUyYWZiZjZkODFmODI2Y2E5MzIuLjMxZGJhNDk5
Y2Q2YzQwNjY5Y2VmNTllZGFhMmE0MThlMjNlOTE2ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9u
QmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmNwcApAQCAtNDAyLDcgKzQwMiw3
IEBAIEV4Y2VwdGlvbk9yPFJlZjxSVENSdHBTZW5kZXI+PiBMaWJXZWJSVENQZWVyQ29ubmVjdGlv
bkJhY2tlbmQ6OmFkZFRyYWNrKE1lZGlhU3RyCiAgICAgICAgIGlmICghbV9lbmRwb2ludC0+YWRk
VHJhY2soKnNlbmRlckJhY2tlbmQsIHRyYWNrLCBtZWRpYVN0cmVhbUlkcykpCiAgICAgICAgICAg
ICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVycm9yLCAiVW5hYmxlIHRvIGFkZCB0cmFjayJfcyB9
OwogCi0gICAgICAgIGlmIChhdXRvIHNlbmRlciA9IGZpbmRFeGlzdGluZ1NlbmRlcihtX3BlZXJD
b25uZWN0aW9uLmdldFNlbmRlcnMoKSwgKnNlbmRlckJhY2tlbmQpKSB7CisgICAgICAgIGlmIChh
dXRvIHNlbmRlciA9IGZpbmRFeGlzdGluZ1NlbmRlcihtX3BlZXJDb25uZWN0aW9uLnNlbmRlcnMo
KSwgKnNlbmRlckJhY2tlbmQpKSB7CiAgICAgICAgICAgICBzZW5kZXItPnNldFRyYWNrKG1ha2VS
ZWYodHJhY2spKTsKICAgICAgICAgICAgIHNlbmRlci0+c2V0TWVkaWFTdHJlYW1JZHMoV1RGTW92
ZShtZWRpYVN0cmVhbUlkcykpOwogICAgICAgICAgICAgcmV0dXJuIHNlbmRlci5yZWxlYXNlTm9u
TnVsbCgpOwpAQCAtNDE5LDcgKzQxOSw3IEBAIEV4Y2VwdGlvbk9yPFJlZjxSVENSdHBTZW5kZXI+
PiBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmFkZFRyYWNrKE1lZGlhU3RyCiAKICAg
ICBSVENSdHBTZW5kZXIqIHNlbmRlciA9IG51bGxwdHI7CiAgICAgLy8gUmV1c2UgYW4gZXhpc3Rp
bmcgc2VuZGVyIHdpdGggdGhlIHNhbWUgdHJhY2sga2luZCBpZiBpdCBoYXMgbmV2ZXIgYmVlbiB1
c2VkIHRvIHNlbmQgYmVmb3JlLgotICAgIGZvciAoYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJD
b25uZWN0aW9uLmdldFRyYW5zY2VpdmVycygpKSB7CisgICAgZm9yIChhdXRvJiB0cmFuc2NlaXZl
ciA6IG1fcGVlckNvbm5lY3Rpb24udHJhbnNjZWl2ZXJzKCkpIHsKICAgICAgICAgYXV0byYgZXhp
c3RpbmdTZW5kZXIgPSB0cmFuc2NlaXZlci0+c2VuZGVyKCk7CiAgICAgICAgIGlmICghZXhpc3Rp
bmdTZW5kZXIuaXNTdG9wcGVkKCkgJiYgZXhpc3RpbmdTZW5kZXIudHJhY2tLaW5kKCkgPT0gdHJh
Y2sua2luZCgpICYmIGV4aXN0aW5nU2VuZGVyLnRyYWNrSWQoKS5pc051bGwoKSAmJiAhdHJhbnNj
ZWl2ZXItPmhhc1NlbmRpbmdEaXJlY3Rpb24oKSkgewogICAgICAgICAgICAgZXhpc3RpbmdTZW5k
ZXIuc2V0VHJhY2sobWFrZVJlZih0cmFjaykpOwpAQCAtNTAwLDcgKzUwMCw3IEBAIHN0YXRpYyBp
bmxpbmUgTGliV2ViUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kJiBiYWNrZW5kRnJvbVJUUFRyYW5z
Y2VpdmVyKFJUQ1J0cFRyCiAKIFJUQ1J0cFRyYW5zY2VpdmVyKiBMaWJXZWJSVENQZWVyQ29ubmVj
dGlvbkJhY2tlbmQ6OmV4aXN0aW5nVHJhbnNjZWl2ZXIoV1RGOjpGdW5jdGlvbjxib29sKExpYldl
YlJUQ1J0cFRyYW5zY2VpdmVyQmFja2VuZCYpPiYmIG1hdGNoaW5nRnVuY3Rpb24pCiB7Ci0gICAg
Zm9yIChhdXRvJiB0cmFuc2NlaXZlciA6IG1fcGVlckNvbm5lY3Rpb24uZ2V0VHJhbnNjZWl2ZXJz
KCkpIHsKKyAgICBmb3IgKGF1dG8mIHRyYW5zY2VpdmVyIDogbV9wZWVyQ29ubmVjdGlvbi50cmFu
c2NlaXZlcnMoKSkgewogICAgICAgICBpZiAobWF0Y2hpbmdGdW5jdGlvbihiYWNrZW5kRnJvbVJU
UFRyYW5zY2VpdmVyKCp0cmFuc2NlaXZlcikpKQogICAgICAgICAgICAgcmV0dXJuIHRyYW5zY2Vp
dmVyLmdldCgpOwogICAgIH0KQEAgLTUyNiw2ICs1MjYsMTEgQEAgUmVmPFJUQ1J0cFRyYW5zY2Vp
dmVyPiBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmNvbXBsZXRlQWRkVHJhbnNjZWl2
ZXIoUmUKICAgICByZXR1cm4gdHJhbnNjZWl2ZXI7CiB9CiAKK3ZvaWQgTGliV2ViUlRDUGVlckNv
bm5lY3Rpb25CYWNrZW5kOjpjb2xsZWN0VHJhbnNjZWl2ZXJzKCkKK3sKKyAgICBtX2VuZHBvaW50
LT5jb2xsZWN0VHJhbnNjZWl2ZXJzKCk7Cit9CisKIHZvaWQgTGliV2ViUlRDUGVlckNvbm5lY3Rp
b25CYWNrZW5kOjpyZW1vdmVUcmFjayhSVENSdHBTZW5kZXImIHNlbmRlcikKIHsKICAgICBtX2Vu
ZHBvaW50LT5yZW1vdmVUcmFjayhiYWNrZW5kRnJvbVJUUFNlbmRlcihzZW5kZXIpKTsKQEAgLTUz
Myw3ICs1MzgsNyBAQCB2b2lkIExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6cmVtb3Zl
VHJhY2soUlRDUnRwU2VuZGVyJiBzZW5kZXIpCiAKIHZvaWQgTGliV2ViUlRDUGVlckNvbm5lY3Rp
b25CYWNrZW5kOjphcHBseVJvdGF0aW9uRm9yT3V0Z29pbmdWaWRlb1NvdXJjZXMoKQogewotICAg
IGZvciAoYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJDb25uZWN0aW9uLmdldFRyYW5zY2VpdmVy
cygpKSB7CisgICAgZm9yIChhdXRvJiB0cmFuc2NlaXZlciA6IG1fcGVlckNvbm5lY3Rpb24udHJh
bnNjZWl2ZXJzKCkpIHsKICAgICAgICAgaWYgKCF0cmFuc2NlaXZlci0+c2VuZGVyKCkuaXNTdG9w
cGVkKCkpIHsKICAgICAgICAgICAgIGlmIChhdXRvKiB2aWRlb1NvdXJjZSA9IGJhY2tlbmRGcm9t
UlRQU2VuZGVyKHRyYW5zY2VpdmVyLT5zZW5kZXIoKSkudmlkZW9Tb3VyY2UoKSkKICAgICAgICAg
ICAgICAgICB2aWRlb1NvdXJjZS0+c2V0QXBwbHlSb3RhdGlvbih0cnVlKTsKQEAgLTU0NCw3ICs1
NDksNyBAQCB2b2lkIExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6YXBwbHlSb3RhdGlv
bkZvck91dGdvaW5nVmlkZW9Tb3VyY2VzKCkKIGJvb2wgTGliV2ViUlRDUGVlckNvbm5lY3Rpb25C
YWNrZW5kOjpzaG91bGRPZmZlckFsbG93VG9SZWNlaXZlKGNvbnN0IGNoYXIqIGtpbmQpIGNvbnN0
CiB7CiAgICAgQVNTRVJUKCFSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygp
LndlYlJUQ1VuaWZpZWRQbGFuRW5hYmxlZCgpKTsKLSAgICBmb3IgKGNvbnN0IGF1dG8mIHRyYW5z
Y2VpdmVyIDogbV9wZWVyQ29ubmVjdGlvbi5nZXRUcmFuc2NlaXZlcnMoKSkgeworICAgIGZvciAo
Y29uc3QgYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJDb25uZWN0aW9uLnRyYW5zY2VpdmVycygp
KSB7CiAgICAgICAgIGlmICh0cmFuc2NlaXZlci0+c2VuZGVyKCkudHJhY2tLaW5kKCkgIT0ga2lu
ZCkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tl
bmQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5oCmluZGV4IDVlNWYyNDNjZWNjYmY4MmYzYWU0OWRi
ODkwOTllZGNiNzFhOTE3NjIuLmMxNDdiNDc5M2ZmNmEwYjRkODAzYTBkNTNhMjgzNzU5NmZlM2Zl
MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFj
a2VuZC5oCkBAIC05OSw2ICs5OSw4IEBAIHByaXZhdGU6CiAgICAgUlRDUnRwVHJhbnNjZWl2ZXIq
IGV4aXN0aW5nVHJhbnNjZWl2ZXIoV1RGOjpGdW5jdGlvbjxib29sKExpYldlYlJUQ1J0cFRyYW5z
Y2VpdmVyQmFja2VuZCYpPiYmKTsKICAgICBSVENSdHBUcmFuc2NlaXZlciYgbmV3UmVtb3RlVHJh
bnNjZWl2ZXIoc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1J0cFRyYW5zY2VpdmVyQmFja2VuZD4m
JiwgUmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+JiYpOwogCisgICAgdm9pZCBjb2xsZWN0VHJhbnNj
ZWl2ZXJzKCkgZmluYWw7CisKICAgICBzdHJ1Y3QgVmlkZW9SZWNlaXZlciB7CiAgICAgICAgIFJl
ZjxSVENSdHBSZWNlaXZlcj4gcmVjZWl2ZXI7CiAgICAgICAgIFJlZjxSZWFsdGltZUluY29taW5n
VmlkZW9Tb3VyY2U+IHNvdXJjZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDBi
ZmJlZTk2Y2ZlOWVmZjA1NTg5NTcxM2ZlZjA0Y2Q2MmY1ZmVkN2EuLmY5NTE5ZDlkMGJjMTEwY2E5
OGE1MjZmNDMzNjdjYzNhODI5OTI5YTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE4LTExLTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KKworICAgICAgICBSVENQZWVyQ29ubmVjdGlvbi5nZXRUcmFuc2NlaXZlcnMgaXMgbm90
IGFsd2F5cyBleHBvc2luZyBhbGwgdHJhbnNjZWl2ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE1ODkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBmaXgKKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJydGMvUlRDUnRwVHJhbnNjZWl2ZXIuaHR0cHMtZXhwZWN0ZWQudHh0OgorCiAyMDE4
LTExLTEyICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWZy
ZXNoIFdQVCB3ZWJydGMgdGVzdHMgdG8gVG9UCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBUcmFuc2NlaXZlci5odHRw
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYnJ0Yy9SVENSdHBUcmFuc2NlaXZlci5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggZDEy
ZjRiMGYwYjVlNzNkYmYxOGQ0YzIwNzIyZDk3YTRlOTBiNDFkMy4uYmQ2ZTQ3ZDNlNTQzYzg4Yzk2
ZWM2ZmM1Nzg1OTIzYjE3OWIwZWI1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwVHJhbnNjZWl2ZXIuaHR0cHMtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2VicnRjL1JUQ1J0cFRyYW5zY2VpdmVyLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtNiw3ICs2
LDcgQEAgUEFTUyBjaGVja0FkZFRyYW5zY2VpdmVyV2l0aFRyYWNrCiBQQVNTIGNoZWNrQWRkVHJh
bnNjZWl2ZXJXaXRoQWRkVHJhY2sgCiBQQVNTIGNoZWNrQWRkVHJhbnNjZWl2ZXJXaXRoRGlyZWN0
aW9uIAogUEFTUyBjaGVja0FkZFRyYW5zY2VpdmVyV2l0aFNldFJlbW90ZU9mZmVyU2VuZGluZyAK
LUZBSUwgY2hlY2tBZGRUcmFuc2NlaXZlcldpdGhTZXRSZW1vdGVPZmZlck5vU2VuZCBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiW3tjdXJyZW50RGlyZWN0aW9uOm51bGwsZGlyZWN0aW9uOlwicmVj
dm9ubHlcIixyZWNlaXZlcjp7dHJhY2s6e2tpbmQ6XCJhdWRpb1wifX0sc2VuZGVyOnt0cmFjazpu
dWxsfSxzdG9wcGVkOmZhbHNlfV0iIGJ1dCBnb3QgIltdIgorUEFTUyBjaGVja0FkZFRyYW5zY2Vp
dmVyV2l0aFNldFJlbW90ZU9mZmVyTm9TZW5kIAogUEFTUyBjaGVja0FkZFRyYW5zY2VpdmVyQmFk
S2luZCAKIEZBSUwgY2hlY2tOb01pZE9mZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk9wZXJhdGlvbkVycm9yOiBGYWlsZWQgdG8gc2V0IHJl
bW90ZSBvZmZlciBzZHA6IFRoZSBCVU5ETEUgZ3JvdXAgY29udGFpbnMgTUlEOjAgbWF0Y2hpbmcg
bm8gbT0gc2VjdGlvbi4iCiBQQVNTIGNoZWNrU2V0RGlyZWN0aW9uIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354704</attachid>
            <date>2018-11-13 14:44:20 -0800</date>
            <delta_ts>2018-11-13 15:22:18 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191589-20181113144419.patch</filename>
            <type>text/plain</type>
            <size>14201</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWVmM2M4NDU0YjJkNjVm
NjliM2ZhMDhhYjU3N2FkMTQyZjJmZDc0MC4uMmM2ODhjMGE0YWQzZjI2ZWRjZDk1YWQ4ZjRmOGJh
OTNiMmJiM2ExMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE4LTExLTEzICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBSVENQZWVyQ29ubmVjdGlv
bi5nZXRUcmFuc2NlaXZlcnMgaXMgbm90IGFsd2F5cyBleHBvc2luZyBhbGwgdHJhbnNjZWl2ZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE1ODkK
KworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgSW1wbGVtZW50
IHRoZSBjb2xsZWN0IHRyYW5zY2VpdmVyIGFsZ29yaXRobSB1c2luZyBsaWJ3ZWJydGMgYmFja2Vu
ZC4KKyAgICAgICAgQ2FsbCB0aGlzIGFsZ29yaXRobSBldmVyeXRpbWUgdHJhbnNjZWl2ZXJzIGFy
ZSByZXRyaWV2ZWQgZnJvbSBKUy4KKyAgICAgICAgRm9yIFBsYW4gQiwgbWFrZSB0aGlzIGEgbm8t
b3AgYXMgdGhpcyBpcyBub3Qgc3VwcG9ydGVkLgorICAgICAgICBJbnRyb2R1Y2Ugc2VuZGVycy9y
ZWNlaXZlcnMvdHJhbnNjZWl2ZXJzIGdldHRlcnMgd2hlcmUgd2UganVzdCBsb29rIGF0IGFscmVh
ZHkgY3JlYXRlZCB0cmFuc2NlaXZlcnMuCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyBh
bmQgcmViYXNlZCB0ZXN0cy4KKworICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUGVlckNv
bm5lY3Rpb25CYWNrZW5kLmg6CisgICAgICAgIChXZWJDb3JlOjpQZWVyQ29ubmVjdGlvbkJhY2tl
bmQ6OmNvbGxlY3RUcmFuc2NlaXZlcnMpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDUGVlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rp
b246OmdldFNlbmRlcnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rp
b246OmdldFJlY2VpdmVycyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVj
dGlvbjo6Z2V0VHJhbnNjZWl2ZXJzIGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9s
aWJ3ZWJydGMvTGliV2ViUlRDTWVkaWFFbmRwb2ludC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpM
aWJXZWJSVENNZWRpYUVuZHBvaW50Ojpjb2xsZWN0VHJhbnNjZWl2ZXJzKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50Lmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5l
Y3Rpb25CYWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ1BlZXJDb25uZWN0
aW9uQmFja2VuZDo6YWRkVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TGliV2ViUlRDUGVlckNv
bm5lY3Rpb25CYWNrZW5kOjpleGlzdGluZ1RyYW5zY2VpdmVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkxpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6Y29sbGVjdFRyYW5zY2VpdmVycyk6Cisg
ICAgICAgIChXZWJDb3JlOjpMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmFwcGx5Um90
YXRpb25Gb3JPdXRnb2luZ1ZpZGVvU291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpMaWJXZWJS
VENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OnNob3VsZE9mZmVyQWxsb3dUb1JlY2VpdmUgY29uc3Qp
OgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJD
b25uZWN0aW9uQmFja2VuZC5oOgorCiAyMDE4LTExLTEzICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1v
dGh5QGFwcGxlLmNvbT4KIAogICAgICAgICBUcmVhdCBzdXBwb3J0ZWQtY29sb3Itc2NoZW1lcyBh
cyB0aGUgc2Vjb25kIGhpZ2hlc3QgcHJpb3JpdHkgcHJvcGVydHkuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9uQmFja2VuZC5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9QZWVyQ29ubmVjdGlvbkJhY2tlbmQu
aAppbmRleCBmNjJhN2IyMWM4MjFlNmQwM2QwYzg1Njc4ODNhMWE2Y2QwNDBmNzJlLi5hMmMxYmVl
OWVhMTc5NGRhNGFiMzNlMjg4YWRmNTg3Nzk5ODViNWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9uQmFja2VuZC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUGVlckNvbm5lY3Rpb25CYWNrZW5kLmgK
QEAgLTE2Nyw2ICsxNjcsOCBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBzdGF0aWMgdm9pZCBnZW5l
cmF0ZUNlcnRpZmljYXRlKERvY3VtZW50JiwgY29uc3QgQ2VydGlmaWNhdGVJbmZvcm1hdGlvbiYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8UlRDQ2VydGlmaWNhdGU+PiYmKTsKIAor
ICAgIHZpcnR1YWwgdm9pZCBjb2xsZWN0VHJhbnNjZWl2ZXJzKCkgeyB9OworCiBwcm90ZWN0ZWQ6
CiAgICAgdm9pZCBmaXJlSUNFQ2FuZGlkYXRlRXZlbnQoUmVmUHRyPFJUQ0ljZUNhbmRpZGF0ZT4m
JiwgU3RyaW5nJiYgdXJsKTsKICAgICB2b2lkIGRvbmVHYXRoZXJpbmdDYW5kaWRhdGVzKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25u
ZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24uY3BwCmluZGV4IDA0NDU1ZDcwYjI4ZjhjNTNjMjI5MmE0NTc2ZDQwZDYwOTkxMDFi
MjYuLjEzODZjYWM3MjgyN2ZmNzdhYWE4M2EyNjM0NjI5YTY2YmI5ZDRjNDMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rp
b24uY3BwCkBAIC02MzksNiArNjM5LDI0IEBAIHZvaWQgUlRDUGVlckNvbm5lY3Rpb246OmdlbmVy
YXRlQ2VydGlmaWNhdGUoSlNDOjpFeGVjU3RhdGUmIHN0YXRlLCBBbGdvcml0aG1JZGVuCiAgICAg
UGVlckNvbm5lY3Rpb25CYWNrZW5kOjpnZW5lcmF0ZUNlcnRpZmljYXRlKGRvY3VtZW50LCBwYXJh
bWV0ZXJzLnJldHVyblZhbHVlKCksIFdURk1vdmUocHJvbWlzZSkpOwogfQogCitjb25zdCBWZWN0
b3I8c3RkOjpyZWZlcmVuY2Vfd3JhcHBlcjxSVENSdHBTZW5kZXI+PiYgUlRDUGVlckNvbm5lY3Rp
b246OmdldFNlbmRlcnMoKSBjb25zdAoreworICAgIG1fYmFja2VuZC0+Y29sbGVjdFRyYW5zY2Vp
dmVycygpOworICAgIHJldHVybiBtX3RyYW5zY2VpdmVyU2V0LT5zZW5kZXJzKCk7Cit9CisKK2Nv
bnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93cmFwcGVyPFJUQ1J0cFJlY2VpdmVyPj4mIFJUQ1Bl
ZXJDb25uZWN0aW9uOjpnZXRSZWNlaXZlcnMoKSBjb25zdAoreworICAgIG1fYmFja2VuZC0+Y29s
bGVjdFRyYW5zY2VpdmVycygpOworICAgIHJldHVybiBtX3RyYW5zY2VpdmVyU2V0LT5yZWNlaXZl
cnMoKTsKK30KKworY29uc3QgVmVjdG9yPFJlZlB0cjxSVENSdHBUcmFuc2NlaXZlcj4+JiBSVENQ
ZWVyQ29ubmVjdGlvbjo6Z2V0VHJhbnNjZWl2ZXJzKCkgY29uc3QKK3sKKyAgICBtX2JhY2tlbmQt
PmNvbGxlY3RUcmFuc2NlaXZlcnMoKTsKKyAgICByZXR1cm4gbV90cmFuc2NlaXZlclNldC0+bGlz
dCgpOworfQorCiAjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiBXVEZMb2dDaGFubmVsJiBSVENQ
ZWVyQ29ubmVjdGlvbjo6bG9nQ2hhbm5lbCgpIGNvbnN0CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKaW5kZXggZThl
MDFjOTBhNWM2ZGIwM2RhZTdiNWUxOTI1NzI4Y2I4ODRkMzJiZS4uMmM4NTQwMTgzOWZlNzBmYjE5
YTc1ZjA2Y2RiYTgyNWQ0ZWMzZjRkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaApAQCAtMTI4LDkgKzEyOCwxMiBA
QCBwdWJsaWM6CiAgICAgdm9pZCBhZGRJbnRlcm5hbFRyYW5zY2VpdmVyKFJlZjxSVENSdHBUcmFu
c2NlaXZlcj4mJiB0cmFuc2NlaXZlcikgeyBtX3RyYW5zY2VpdmVyU2V0LT5hcHBlbmQoV1RGTW92
ZSh0cmFuc2NlaXZlcikpOyB9CiAKICAgICAvLyA1LjEgUlRDUGVlckNvbm5lY3Rpb24gZXh0ZW5z
aW9ucwotICAgIGNvbnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93cmFwcGVyPFJUQ1J0cFNlbmRl
cj4+JiBnZXRTZW5kZXJzKCkgY29uc3QgeyByZXR1cm4gbV90cmFuc2NlaXZlclNldC0+c2VuZGVy
cygpOyB9Ci0gICAgY29uc3QgVmVjdG9yPHN0ZDo6cmVmZXJlbmNlX3dyYXBwZXI8UlRDUnRwUmVj
ZWl2ZXI+PiYgZ2V0UmVjZWl2ZXJzKCkgY29uc3QgeyByZXR1cm4gbV90cmFuc2NlaXZlclNldC0+
cmVjZWl2ZXJzKCk7IH0KLSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPFJUQ1J0cFRyYW5zY2VpdmVy
Pj4mIGdldFRyYW5zY2VpdmVycygpIGNvbnN0IHsgcmV0dXJuIG1fdHJhbnNjZWl2ZXJTZXQtPmxp
c3QoKTsgfQorICAgIGNvbnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93cmFwcGVyPFJUQ1J0cFNl
bmRlcj4+JiBnZXRTZW5kZXJzKCkgY29uc3Q7CisgICAgY29uc3QgVmVjdG9yPHN0ZDo6cmVmZXJl
bmNlX3dyYXBwZXI8UlRDUnRwUmVjZWl2ZXI+PiYgZ2V0UmVjZWl2ZXJzKCkgY29uc3Q7CisgICAg
Y29uc3QgVmVjdG9yPFJlZlB0cjxSVENSdHBUcmFuc2NlaXZlcj4+JiBnZXRUcmFuc2NlaXZlcnMo
KSBjb25zdDsKKworICAgIGNvbnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93cmFwcGVyPFJUQ1J0
cFNlbmRlcj4+JiBjdXJyZW50U2VuZGVycygpIGNvbnN0IHsgcmV0dXJuIG1fdHJhbnNjZWl2ZXJT
ZXQtPnNlbmRlcnMoKTsgfQorICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8UlRDUnRwVHJhbnNjZWl2
ZXI+PiYgY3VycmVudFRyYW5zY2VpdmVycygpIGNvbnN0IHsgcmV0dXJuIG1fdHJhbnNjZWl2ZXJT
ZXQtPmxpc3QoKTsgfQogCiAgICAgRXhjZXB0aW9uT3I8UmVmPFJUQ1J0cFNlbmRlcj4+IGFkZFRy
YWNrKFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmLCBjb25zdCBWZWN0b3I8c3RkOjpyZWZlcmVuY2Vf
d3JhcHBlcjxNZWRpYVN0cmVhbT4+Jik7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gcmVtb3ZlVHJh
Y2soUlRDUnRwU2VuZGVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9p
bnQuY3BwCmluZGV4IDY0ZTBjYjZmYzVkOGRiMmEzZjg5NGYwNjQwMWI5NjA1YjQyZmYzNTguLjg1
MjE5YjBkYWQ2NDE2ZTI5ZTNjMjJkZWY4ZTMwYzYxNWY5MjVmNGUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5k
cG9pbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuY3BwCkBAIC00NTcsNiArNDU3LDMwIEBAIHN0YXRp
YyBpbmxpbmUgUmVmUHRyPFJlYWx0aW1lTWVkaWFTb3VyY2U+IHNvdXJjZUZyb21OZXdSZWNlaXZl
cih3ZWJydGM6OlJ0cFJlY2VpCiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0K
IAordm9pZCBMaWJXZWJSVENNZWRpYUVuZHBvaW50Ojpjb2xsZWN0VHJhbnNjZWl2ZXJzKCkKK3sK
KyAgICBpZiAoIW1fYmFja2VuZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLndlYlJUQ1VuaWZpZWRQbGFuRW5hYmxl
ZCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKGF1dG8mIHJ0Y1RyYW5zY2VpdmVyIDog
bV9iYWNrZW5kLT5HZXRUcmFuc2NlaXZlcnMoKSkgeworICAgICAgICBhdXRvKiBleGlzdGluZ1Ry
YW5zY2VpdmVyID0gbV9wZWVyQ29ubmVjdGlvbkJhY2tlbmQuZXhpc3RpbmdUcmFuc2NlaXZlcihb
Jl0oYXV0byYgdHJhbnNjZWl2ZXJCYWNrZW5kKSB7CisgICAgICAgICAgICByZXR1cm4gcnRjVHJh
bnNjZWl2ZXIuZ2V0KCkgPT0gdHJhbnNjZWl2ZXJCYWNrZW5kLnJ0Y1RyYW5zY2VpdmVyKCk7Cisg
ICAgICAgIH0pOworICAgICAgICBpZiAoZXhpc3RpbmdUcmFuc2NlaXZlcikKKyAgICAgICAgICAg
IGNvbnRpbnVlOworCisgICAgICAgIGF1dG8gcnRjUmVjZWl2ZXIgPSBydGNUcmFuc2NlaXZlci0+
cmVjZWl2ZXIoKTsKKyAgICAgICAgYXV0byBzb3VyY2UgPSBzb3VyY2VGcm9tTmV3UmVjZWl2ZXIo
KnJ0Y1JlY2VpdmVyKTsKKyAgICAgICAgaWYgKCFzb3VyY2UpCisgICAgICAgICAgICByZXR1cm47
CisKKyAgICAgICAgbV9wZWVyQ29ubmVjdGlvbkJhY2tlbmQubmV3UmVtb3RlVHJhbnNjZWl2ZXIo
c3RkOjptYWtlX3VuaXF1ZTxMaWJXZWJSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQ+KFdURk1vdmUo
cnRjVHJhbnNjZWl2ZXIpKSwgc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOworICAgIH0KK30KKwog
dm9pZCBMaWJXZWJSVENNZWRpYUVuZHBvaW50OjpuZXdUcmFuc2NlaXZlcihydGM6OnNjb3BlZF9y
ZWZwdHI8d2VicnRjOjpSdHBUcmFuc2NlaXZlckludGVyZmFjZT4mJiBydGNUcmFuc2NlaXZlcikK
IHsKICAgICBhdXRvKiB0cmFuc2NlaXZlciA9IG1fcGVlckNvbm5lY3Rpb25CYWNrZW5kLmV4aXN0
aW5nVHJhbnNjZWl2ZXIoWyZdKGF1dG8mIHRyYW5zY2VpdmVyQmFja2VuZCkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRD
TWVkaWFFbmRwb2ludC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDTWVkaWFFbmRwb2ludC5oCmluZGV4IDNiYjBlNzMxZjQyZDA1ZDg3ZTU1
Mjc5OGIxMWFhOWZhMDc2ODIwZTQuLjVlMjEwODI5ZGNjZmQ4ODIyY2I3ODAwY2I5ZjBiMTljYTk4
MjBhNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGli
d2VicnRjL0xpYldlYlJUQ01lZGlhRW5kcG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmgKQEAgLTEx
MSw2ICsxMTEsNyBAQCBwdWJsaWM6CiAgICAgc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1J0cFRy
YW5zY2VpdmVyQmFja2VuZD4gdHJhbnNjZWl2ZXJCYWNrZW5kRnJvbVNlbmRlcihMaWJXZWJSVENS
dHBTZW5kZXJCYWNrZW5kJik7CiAKICAgICB2b2lkIHNldFNlbmRlclNvdXJjZUZyb21UcmFjayhM
aWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kJiwgTWVkaWFTdHJlYW1UcmFjayYpOworICAgIHZvaWQg
Y29sbGVjdFRyYW5zY2VpdmVycygpOwogCiBwcml2YXRlOgogICAgIExpYldlYlJUQ01lZGlhRW5k
cG9pbnQoTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kJiwgTGliV2ViUlRDUHJvdmlkZXIm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tl
bmQuY3BwCmluZGV4IGZiYWRmNjhmNTkwYWU4YTgxZGMyOTUyYWZiZjZkODFmODI2Y2E5MzIuLjFh
OTMyNjRmMWVkMjU3MTQ5NDY5NTY2NzhkMDhhNjAwYzdjNzJiYTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25u
ZWN0aW9uQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmNwcApAQCAtNDAyLDcg
KzQwMiw3IEBAIEV4Y2VwdGlvbk9yPFJlZjxSVENSdHBTZW5kZXI+PiBMaWJXZWJSVENQZWVyQ29u
bmVjdGlvbkJhY2tlbmQ6OmFkZFRyYWNrKE1lZGlhU3RyCiAgICAgICAgIGlmICghbV9lbmRwb2lu
dC0+YWRkVHJhY2soKnNlbmRlckJhY2tlbmQsIHRyYWNrLCBtZWRpYVN0cmVhbUlkcykpCiAgICAg
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVycm9yLCAiVW5hYmxlIHRvIGFkZCB0cmFj
ayJfcyB9OwogCi0gICAgICAgIGlmIChhdXRvIHNlbmRlciA9IGZpbmRFeGlzdGluZ1NlbmRlciht
X3BlZXJDb25uZWN0aW9uLmdldFNlbmRlcnMoKSwgKnNlbmRlckJhY2tlbmQpKSB7CisgICAgICAg
IGlmIChhdXRvIHNlbmRlciA9IGZpbmRFeGlzdGluZ1NlbmRlcihtX3BlZXJDb25uZWN0aW9uLmN1
cnJlbnRTZW5kZXJzKCksICpzZW5kZXJCYWNrZW5kKSkgewogICAgICAgICAgICAgc2VuZGVyLT5z
ZXRUcmFjayhtYWtlUmVmKHRyYWNrKSk7CiAgICAgICAgICAgICBzZW5kZXItPnNldE1lZGlhU3Ry
ZWFtSWRzKFdURk1vdmUobWVkaWFTdHJlYW1JZHMpKTsKICAgICAgICAgICAgIHJldHVybiBzZW5k
ZXIucmVsZWFzZU5vbk51bGwoKTsKQEAgLTQxOSw3ICs0MTksNyBAQCBFeGNlcHRpb25PcjxSZWY8
UlRDUnRwU2VuZGVyPj4gTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kOjphZGRUcmFjayhN
ZWRpYVN0cgogCiAgICAgUlRDUnRwU2VuZGVyKiBzZW5kZXIgPSBudWxscHRyOwogICAgIC8vIFJl
dXNlIGFuIGV4aXN0aW5nIHNlbmRlciB3aXRoIHRoZSBzYW1lIHRyYWNrIGtpbmQgaWYgaXQgaGFz
IG5ldmVyIGJlZW4gdXNlZCB0byBzZW5kIGJlZm9yZS4KLSAgICBmb3IgKGF1dG8mIHRyYW5zY2Vp
dmVyIDogbV9wZWVyQ29ubmVjdGlvbi5nZXRUcmFuc2NlaXZlcnMoKSkgeworICAgIGZvciAoYXV0
byYgdHJhbnNjZWl2ZXIgOiBtX3BlZXJDb25uZWN0aW9uLmN1cnJlbnRUcmFuc2NlaXZlcnMoKSkg
ewogICAgICAgICBhdXRvJiBleGlzdGluZ1NlbmRlciA9IHRyYW5zY2VpdmVyLT5zZW5kZXIoKTsK
ICAgICAgICAgaWYgKCFleGlzdGluZ1NlbmRlci5pc1N0b3BwZWQoKSAmJiBleGlzdGluZ1NlbmRl
ci50cmFja0tpbmQoKSA9PSB0cmFjay5raW5kKCkgJiYgZXhpc3RpbmdTZW5kZXIudHJhY2tJZCgp
LmlzTnVsbCgpICYmICF0cmFuc2NlaXZlci0+aGFzU2VuZGluZ0RpcmVjdGlvbigpKSB7CiAgICAg
ICAgICAgICBleGlzdGluZ1NlbmRlci5zZXRUcmFjayhtYWtlUmVmKHRyYWNrKSk7CkBAIC01MDAs
NyArNTAwLDcgQEAgc3RhdGljIGlubGluZSBMaWJXZWJSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQm
IGJhY2tlbmRGcm9tUlRQVHJhbnNjZWl2ZXIoUlRDUnRwVHIKIAogUlRDUnRwVHJhbnNjZWl2ZXIq
IExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6ZXhpc3RpbmdUcmFuc2NlaXZlcihXVEY6
OkZ1bmN0aW9uPGJvb2woTGliV2ViUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kJik+JiYgbWF0Y2hp
bmdGdW5jdGlvbikKIHsKLSAgICBmb3IgKGF1dG8mIHRyYW5zY2VpdmVyIDogbV9wZWVyQ29ubmVj
dGlvbi5nZXRUcmFuc2NlaXZlcnMoKSkgeworICAgIGZvciAoYXV0byYgdHJhbnNjZWl2ZXIgOiBt
X3BlZXJDb25uZWN0aW9uLmN1cnJlbnRUcmFuc2NlaXZlcnMoKSkgewogICAgICAgICBpZiAobWF0
Y2hpbmdGdW5jdGlvbihiYWNrZW5kRnJvbVJUUFRyYW5zY2VpdmVyKCp0cmFuc2NlaXZlcikpKQog
ICAgICAgICAgICAgcmV0dXJuIHRyYW5zY2VpdmVyLmdldCgpOwogICAgIH0KQEAgLTUyNiw2ICs1
MjYsMTEgQEAgUmVmPFJUQ1J0cFRyYW5zY2VpdmVyPiBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJh
Y2tlbmQ6OmNvbXBsZXRlQWRkVHJhbnNjZWl2ZXIoUmUKICAgICByZXR1cm4gdHJhbnNjZWl2ZXI7
CiB9CiAKK3ZvaWQgTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kOjpjb2xsZWN0VHJhbnNj
ZWl2ZXJzKCkKK3sKKyAgICBtX2VuZHBvaW50LT5jb2xsZWN0VHJhbnNjZWl2ZXJzKCk7Cit9CisK
IHZvaWQgTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kOjpyZW1vdmVUcmFjayhSVENSdHBT
ZW5kZXImIHNlbmRlcikKIHsKICAgICBtX2VuZHBvaW50LT5yZW1vdmVUcmFjayhiYWNrZW5kRnJv
bVJUUFNlbmRlcihzZW5kZXIpKTsKQEAgLTUzMyw3ICs1MzgsNyBAQCB2b2lkIExpYldlYlJUQ1Bl
ZXJDb25uZWN0aW9uQmFja2VuZDo6cmVtb3ZlVHJhY2soUlRDUnRwU2VuZGVyJiBzZW5kZXIpCiAK
IHZvaWQgTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kOjphcHBseVJvdGF0aW9uRm9yT3V0
Z29pbmdWaWRlb1NvdXJjZXMoKQogewotICAgIGZvciAoYXV0byYgdHJhbnNjZWl2ZXIgOiBtX3Bl
ZXJDb25uZWN0aW9uLmdldFRyYW5zY2VpdmVycygpKSB7CisgICAgZm9yIChhdXRvJiB0cmFuc2Nl
aXZlciA6IG1fcGVlckNvbm5lY3Rpb24uY3VycmVudFRyYW5zY2VpdmVycygpKSB7CiAgICAgICAg
IGlmICghdHJhbnNjZWl2ZXItPnNlbmRlcigpLmlzU3RvcHBlZCgpKSB7CiAgICAgICAgICAgICBp
ZiAoYXV0byogdmlkZW9Tb3VyY2UgPSBiYWNrZW5kRnJvbVJUUFNlbmRlcih0cmFuc2NlaXZlci0+
c2VuZGVyKCkpLnZpZGVvU291cmNlKCkpCiAgICAgICAgICAgICAgICAgdmlkZW9Tb3VyY2UtPnNl
dEFwcGx5Um90YXRpb24odHJ1ZSk7CkBAIC01NDQsNyArNTQ5LDcgQEAgdm9pZCBMaWJXZWJSVENQ
ZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmFwcGx5Um90YXRpb25Gb3JPdXRnb2luZ1ZpZGVvU291cmNl
cygpCiBib29sIExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6c2hvdWxkT2ZmZXJBbGxv
d1RvUmVjZWl2ZShjb25zdCBjaGFyKiBraW5kKSBjb25zdAogewogICAgIEFTU0VSVCghUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS53ZWJSVENVbmlmaWVkUGxhbkVuYWJs
ZWQoKSk7Ci0gICAgZm9yIChjb25zdCBhdXRvJiB0cmFuc2NlaXZlciA6IG1fcGVlckNvbm5lY3Rp
b24uZ2V0VHJhbnNjZWl2ZXJzKCkpIHsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIHRyYW5zY2VpdmVy
IDogbV9wZWVyQ29ubmVjdGlvbi5jdXJyZW50VHJhbnNjZWl2ZXJzKCkpIHsKICAgICAgICAgaWYg
KHRyYW5zY2VpdmVyLT5zZW5kZXIoKS50cmFja0tpbmQoKSAhPSBraW5kKQogICAgICAgICAgICAg
Y29udGludWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rp
b25CYWNrZW5kLmgKaW5kZXggNWU1ZjI0M2NlY2NiZjgyZjNhZTQ5ZGI4OTA5OWVkY2I3MWE5MTc2
Mi4uYzE0N2I0NzkzZmY2YTBiNGQ4MDNhMGQ1M2EyODM3NTk2ZmUzZmUxMiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVl
ckNvbm5lY3Rpb25CYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmgKQEAgLTk5LDYg
Kzk5LDggQEAgcHJpdmF0ZToKICAgICBSVENSdHBUcmFuc2NlaXZlciogZXhpc3RpbmdUcmFuc2Nl
aXZlcihXVEY6OkZ1bmN0aW9uPGJvb2woTGliV2ViUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kJik+
JiYpOwogICAgIFJUQ1J0cFRyYW5zY2VpdmVyJiBuZXdSZW1vdGVUcmFuc2NlaXZlcihzdGQ6OnVu
aXF1ZV9wdHI8TGliV2ViUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kPiYmLCBSZWY8UmVhbHRpbWVN
ZWRpYVNvdXJjZT4mJik7CiAKKyAgICB2b2lkIGNvbGxlY3RUcmFuc2NlaXZlcnMoKSBmaW5hbDsK
KwogICAgIHN0cnVjdCBWaWRlb1JlY2VpdmVyIHsKICAgICAgICAgUmVmPFJUQ1J0cFJlY2VpdmVy
PiByZWNlaXZlcjsKICAgICAgICAgUmVmPFJlYWx0aW1lSW5jb21pbmdWaWRlb1NvdXJjZT4gc291
cmNlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggZGU3ZDRiNmUzNDJhODBmZDdk
YTkzYjMwMzA0MjU5NmY5ODllY2M2My4uYTE0YTdhMGZmN2RmOWFlYzRmYTE1YTE4NzZmMDY5YmNi
NWUyNzZmYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTgtMTEtMTMgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAg
IFJUQ1BlZXJDb25uZWN0aW9uLmdldFRyYW5zY2VpdmVycyBpcyBub3QgYWx3YXlzIGV4cG9zaW5n
IGFsbCB0cmFuc2NlaXZlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5MTU4OQorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKwor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwVHJhbnNjZWl2ZXIuaHR0
cHMtZXhwZWN0ZWQudHh0OgorCiAyMDE4LTExLTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBSZWZyZXNoIFdQVCB3ZWJydGMgdGVzdHMgdG8gVG9UCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0
Yy9SVENSdHBUcmFuc2NlaXZlci5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBUcmFuc2NlaXZlci5odHRw
cy1leHBlY3RlZC50eHQKaW5kZXggZDEyZjRiMGYwYjVlNzNkYmYxOGQ0YzIwNzIyZDk3YTRlOTBi
NDFkMy4uYmQ2ZTQ3ZDNlNTQzYzg4Yzk2ZWM2ZmM1Nzg1OTIzYjE3OWIwZWI1ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRD
UnRwVHJhbnNjZWl2ZXIuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1J0cFRyYW5zY2VpdmVyLmh0dHBz
LWV4cGVjdGVkLnR4dApAQCAtNiw3ICs2LDcgQEAgUEFTUyBjaGVja0FkZFRyYW5zY2VpdmVyV2l0
aFRyYWNrCiBQQVNTIGNoZWNrQWRkVHJhbnNjZWl2ZXJXaXRoQWRkVHJhY2sgCiBQQVNTIGNoZWNr
QWRkVHJhbnNjZWl2ZXJXaXRoRGlyZWN0aW9uIAogUEFTUyBjaGVja0FkZFRyYW5zY2VpdmVyV2l0
aFNldFJlbW90ZU9mZmVyU2VuZGluZyAKLUZBSUwgY2hlY2tBZGRUcmFuc2NlaXZlcldpdGhTZXRS
ZW1vdGVPZmZlck5vU2VuZCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiW3tjdXJyZW50RGlyZWN0
aW9uOm51bGwsZGlyZWN0aW9uOlwicmVjdm9ubHlcIixyZWNlaXZlcjp7dHJhY2s6e2tpbmQ6XCJh
dWRpb1wifX0sc2VuZGVyOnt0cmFjazpudWxsfSxzdG9wcGVkOmZhbHNlfV0iIGJ1dCBnb3QgIltd
IgorUEFTUyBjaGVja0FkZFRyYW5zY2VpdmVyV2l0aFNldFJlbW90ZU9mZmVyTm9TZW5kIAogUEFT
UyBjaGVja0FkZFRyYW5zY2VpdmVyQmFkS2luZCAKIEZBSUwgY2hlY2tOb01pZE9mZmVyIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk9wZXJhdGlv
bkVycm9yOiBGYWlsZWQgdG8gc2V0IHJlbW90ZSBvZmZlciBzZHA6IFRoZSBCVU5ETEUgZ3JvdXAg
Y29udGFpbnMgTUlEOjAgbWF0Y2hpbmcgbm8gbT0gc2VjdGlvbi4iCiBQQVNTIGNoZWNrU2V0RGly
ZWN0aW9uIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>