<?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>162961</bug_id>
          
          <creation_ts>2016-10-05 01:28:38 -0700</creation_ts>
          <short_desc>WebRTC: Add support for the iceconnectionstatechange event in MediaEndpointPeerConnection</short_desc>
          <delta_ts>2016-10-06 10:29:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>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>162957</dependson>
          <blocked>143211</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Bergkvist">adam.bergkvist</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alex</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>pnormand</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1236575</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-05 01:28:38 -0700</bug_when>
    <thetext>RTCPeerConnection&apos;s iceConnectionState aggregates the states of all the connection&apos;s RTCIceTransport objects.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236957</commentid>
    <comment_count>1</comment_count>
      <attachid>290795</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-06 01:32:38 -0700</bug_when>
    <thetext>Created attachment 290795
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1237117</commentid>
    <comment_count>2</comment_count>
      <attachid>290795</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-06 10:06:49 -0700</bug_when>
    <thetext>Comment on attachment 290795
Proposed patch

Thanks Eric</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1237130</commentid>
    <comment_count>3</comment_count>
      <attachid>290795</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-06 10:29:53 -0700</bug_when>
    <thetext>Comment on attachment 290795
Proposed patch

Clearing flags on attachment: 290795

Committed r206868: &lt;http://trac.webkit.org/changeset/206868&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1237131</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-06 10:29:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290795</attachid>
            <date>2016-10-06 01:32:38 -0700</date>
            <delta_ts>2016-10-06 10:29:53 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>iceconnectionstatechange-event_0.patch</filename>
            <type>text/plain</type>
            <size>17994</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5MjgxNjE2Li5hZWVlNDI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMTAt
MDUgIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24uY29tPgorCisgICAg
ICAgIFdlYlJUQzogQWRkIHN1cHBvcnQgZm9yIHRoZSBpY2Vjb25uZWN0aW9uc3RhdGVjaGFuZ2Ug
ZXZlbnQgaW4gTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjI5NjEKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbXVsYXRlIGNoYW5naW5nIHRoZSBJQ0UgdHJh
bnNwb3J0IHNhdGVzIG9mIHRocmVlIHRyYW5zY2VpdmVycyBhbmQgb2JzZXJ2ZSB0aGUgcmVzdWx0
aW5nCisgICAgICAgIGNoYW5nZXMgdG8gdGhlIGFnZ3JlZ2F0ZWQgaWNlQ29ubmVjdGlvblN0YXRl
LgorCisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1pY2Vjb25u
ZWN0aW9uc3RhdGVjaGFuZ2UtZXZlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWljZWNvbm5lY3Rpb25zdGF0ZWNoYW5n
ZS1ldmVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0
aW9uczoKKyAgICAgICAgU2tpcCBhYm92ZSB0ZXN0IHVudGlsIHRoZSBNYWMgcG9ydCBidWlsZHMg
d2l0aCBXRUJfUlRDLgorCiAyMDE2LTEwLTAyICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQWRkIHN1cHBvcnQgZm9yIEtleWJvYXJkRXZlbnQuZ2V0TW9kaWZpZXJT
dGF0ZSgpIG9wZXJhdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbi1pY2Vjb25uZWN0aW9uc3RhdGVjaGFuZ2UtZXZlbnQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1p
Y2Vjb25uZWN0aW9uc3RhdGVjaGFuZ2UtZXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyOGM1NTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWljZWNvbm5lY3Rpb25zdGF0
ZWNoYW5nZS1ldmVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzOCBAQAorVGVzdCBSVENQZWVy
Q29ubmVjdGlvbiAnaWNlY29ubmVjdGlvbnN0YXRlY2hhbmdlJyBldmVudAorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKKworUEFTUyBMb2NhbCBkZXNjcmlwdGlvbiBzZXQKK1BBU1MgcGMu
Z2V0VHJhbnNjZWl2ZXJzKCkubGVuZ3RoIGlzIDMKK1BBU1MgcGMuaWNlQ29ubmVjdGlvblN0YXRl
IGlzICduZXcnCitQQVNTIEVuZCBvZiB0ZXN0IHByb21pc2UgY2hhaW4KKworUEFTUyBHb3QgaWNl
dHJhbnNwb3J0c3RhdGVjaGFuZ2UgZXZlbnQKK2V4cGVjdGVkU3RhdGUgaXMgImNoZWNraW5nIgor
UEFTUyBwYy5pY2VDb25uZWN0aW9uU3RhdGUgaXMgZXhwZWN0ZWRTdGF0ZQorCitQQVNTIEdvdCBp
Y2V0cmFuc3BvcnRzdGF0ZWNoYW5nZSBldmVudAorZXhwZWN0ZWRTdGF0ZSBpcyAiY29ubmVjdGVk
IgorUEFTUyBwYy5pY2VDb25uZWN0aW9uU3RhdGUgaXMgZXhwZWN0ZWRTdGF0ZQorCitQQVNTIEdv
dCBpY2V0cmFuc3BvcnRzdGF0ZWNoYW5nZSBldmVudAorZXhwZWN0ZWRTdGF0ZSBpcyAiY29tcGxl
dGVkIgorUEFTUyBwYy5pY2VDb25uZWN0aW9uU3RhdGUgaXMgZXhwZWN0ZWRTdGF0ZQorCitQQVNT
IEdvdCBpY2V0cmFuc3BvcnRzdGF0ZWNoYW5nZSBldmVudAorZXhwZWN0ZWRTdGF0ZSBpcyAiZmFp
bGVkIgorUEFTUyBwYy5pY2VDb25uZWN0aW9uU3RhdGUgaXMgZXhwZWN0ZWRTdGF0ZQorCitQQVNT
IEdvdCBpY2V0cmFuc3BvcnRzdGF0ZWNoYW5nZSBldmVudAorZXhwZWN0ZWRTdGF0ZSBpcyAiZGlz
Y29ubmVjdGVkIgorUEFTUyBwYy5pY2VDb25uZWN0aW9uU3RhdGUgaXMgZXhwZWN0ZWRTdGF0ZQor
CitQQVNTIEdvdCBpY2V0cmFuc3BvcnRzdGF0ZWNoYW5nZSBldmVudAorZXhwZWN0ZWRTdGF0ZSBp
cyAibmV3IgorUEFTUyBwYy5pY2VDb25uZWN0aW9uU3RhdGUgaXMgZXhwZWN0ZWRTdGF0ZQorCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1pY2Vj
b25uZWN0aW9uc3RhdGVjaGFuZ2UtZXZlbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24taWNlY29ubmVjdGlvbnN0YXRlY2hhbmdlLWV2ZW50Lmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU2YTExMQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24t
aWNlY29ubmVjdGlvbnN0YXRlY2hhbmdlLWV2ZW50Lmh0bWwKQEAgLTAsMCArMSw3NSBAQAorPCFE
T0NUWVBFIGh0bWw+CisKKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+Cisg
ICAgPGJvZHk+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVz
dCBSVENQZWVyQ29ubmVjdGlvbiAnaWNlY29ubmVjdGlvbnN0YXRlY2hhbmdlJyBldmVudCIpOwor
CisgICAgICAgICAgICBsZXQgZXhwZWN0ZWRTdGF0ZTsKKyAgICAgICAgICAgIGxldCBleHBlY3Rl
ZFN0YXRlcyA9IFsKKyAgICAgICAgICAgICAgICAiY2hlY2tpbmciLAorICAgICAgICAgICAgICAg
ICJjb25uZWN0ZWQiLAorICAgICAgICAgICAgICAgICJjb21wbGV0ZWQiLAorICAgICAgICAgICAg
ICAgICJmYWlsZWQiLAorICAgICAgICAgICAgICAgICJkaXNjb25uZWN0ZWQiLAorICAgICAgICAg
ICAgICAgICJuZXciCisgICAgICAgICAgICBdOworCisgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRVc2VyTWVkaWFQZXJtaXNz
aW9uKHRydWUpOworICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgZGVidWcoIlRo
aXMgdGVzdCBjYW4gbm90IGJlIHJ1biB3aXRob3V0IHRoZSB0ZXN0UnVubmVyIik7CisgICAgICAg
ICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGNv
bnN0IHBjID0gbmV3IHdlYmtpdFJUQ1BlZXJDb25uZWN0aW9uKHtpY2VTZXJ2ZXJzOlt7dXJsczon
c3R1bjpmb28uY29tJ31dfSk7CisKKyAgICAgICAgICAgIHBjLm9uaWNlY29ubmVjdGlvbnN0YXRl
Y2hhbmdlID0gZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoIkdvdCBp
Y2V0cmFuc3BvcnRzdGF0ZWNoYW5nZSBldmVudCIpOworCisgICAgICAgICAgICAgICAgZXhwZWN0
ZWRTdGF0ZSA9IGV4cGVjdGVkU3RhdGVzLnNoaWZ0KCk7CisgICAgICAgICAgICAgICAgZGVidWco
YGV4cGVjdGVkU3RhdGUgaXMgIiR7ZXhwZWN0ZWRTdGF0ZX0iYCk7CisgICAgICAgICAgICAgICAg
c2hvdWxkQmUoInBjLmljZUNvbm5lY3Rpb25TdGF0ZSIsICJleHBlY3RlZFN0YXRlIik7CisgICAg
ICAgICAgICAgICAgZGVidWcoIiIpOworCisgICAgICAgICAgICAgICAgaWYgKHBjLmljZUNvbm5l
Y3Rpb25TdGF0ZSA9PT0gIm5ldyIpCisgICAgICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgp
OworICAgICAgICAgICAgfTsKKworICAgICAgICAgICAgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5n
ZXRVc2VyTWVkaWEoeyAidmlkZW8iOiB0cnVlIH0pLnRoZW4oZnVuY3Rpb24gKHN0cmVhbSkgewor
ICAgICAgICAgICAgICAgIGNvbnN0IHN0cmVhbTIgPSBzdHJlYW0uY2xvbmUoKTsKKyAgICAgICAg
ICAgICAgICBjb25zdCBzdHJlYW0zID0gc3RyZWFtLmNsb25lKCk7CisKKyAgICAgICAgICAgICAg
ICBwYy5hZGRUcmFjayhzdHJlYW0uZ2V0VHJhY2tzKClbMF0sIHN0cmVhbSk7CisgICAgICAgICAg
ICAgICAgcGMuYWRkVHJhY2soc3RyZWFtMi5nZXRUcmFja3MoKVswXSwgc3RyZWFtMik7CisgICAg
ICAgICAgICAgICAgcGMuYWRkVHJhY2soc3RyZWFtMy5nZXRUcmFja3MoKVswXSwgc3RyZWFtMyk7
CisKKyAgICAgICAgICAgICAgICByZXR1cm4gcGMuY3JlYXRlT2ZmZXIoKTsKKyAgICAgICAgICAg
IH0pCisgICAgICAgICAgICAudGhlbihmdW5jdGlvbiAob2ZmZXIpIHsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gcGMuc2V0TG9jYWxEZXNjcmlwdGlvbihvZmZlcik7CisgICAgICAgICAgICB9KQor
ICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgICAgIHRlc3RQYXNz
ZWQoIkxvY2FsIGRlc2NyaXB0aW9uIHNldCIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJw
Yy5nZXRUcmFuc2NlaXZlcnMoKS5sZW5ndGgiLCAiMyIpOworICAgICAgICAgICAgICAgIHNob3Vs
ZEJlKCJwYy5pY2VDb25uZWN0aW9uU3RhdGUiLCAiJ25ldyciKTsKKworICAgICAgICAgICAgICAg
IHdpbmRvdy5pbnRlcm5hbHMuZW11bGF0ZVJUQ1BlZXJDb25uZWN0aW9uUGxhdGZvcm1FdmVudChw
YywgInN0ZXAtaWNlLXRyYW5zcG9ydC1zdGF0ZXMiKTsKKyAgICAgICAgICAgICAgICB0ZXN0UGFz
c2VkKCJFbmQgb2YgdGVzdCBwcm9taXNlIGNoYWluIik7CisgICAgICAgICAgICAgICAgZGVidWco
IiIpOworICAgICAgICAgICAgfSkKKyAgICAgICAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyb3Ip
IHsKKyAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJFcnJvciBpbiBwcm9taXNlIGNoYWluOiAi
ICsgZXJyb3IpOworICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICAgICAg
fSk7CisKKyAgICAgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICAgICAg
ICAgIHdpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworCisgICAgICAgIDwvc2NyaXB0
PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCA2OGU3MmQwLi4xOWU4NjFhIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjA3LDYgKzIwNyw3IEBAIGZhc3QvbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tbWVkaWEtc2V0dXAtdHdvLWRpYWxvZ3MuaHRtbAog
ZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1tZWRpYS1zZXR1cC1jYWxsYmFja3Mt
c2luZ2xlLWRpYWxvZy5odG1sCiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWxl
Z2FjeS1zdHJlYW0tYmFzZWQtYXBpLmh0bWwKIGZhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5l
Y3Rpb24taWNlY2FuZGlkYXRlLWV2ZW50Lmh0bWwKK2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24taWNlY29ubmVjdGlvbnN0YXRlY2hhbmdlLWV2ZW50Lmh0bWwKIAogIyBBc3NlcnRz
IGluIGRlYnVnLgogWyBEZWJ1ZyBdIGZhc3QvaW1hZ2VzL2xhcmdlLXNpemUtaW1hZ2UtY3Jhc2gu
aHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGFlZTYxOTkuLjc1YzY0OGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwzNCBAQAorMjAxNi0xMC0wNSAgQWRhbSBCZXJna3Zpc3QgIDxhZGFtLmJlcmdr
dmlzdEBlcmljc3Nvbi5jb20+CisKKyAgICAgICAgV2ViUlRDOiBBZGQgc3VwcG9ydCBmb3IgdGhl
IGljZWNvbm5lY3Rpb25zdGF0ZWNoYW5nZSBldmVudCBpbiBNZWRpYUVuZHBvaW50UGVlckNvbm5l
Y3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
Mjk2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElt
cGxlbWVudCBNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24ncyBpY2VUcmFuc3BvcnRTdGF0ZUNo
YW5nZWQgY2FsbGJhY2suIFdoZW4gY2FsbGVkLCBpdAorICAgICAgICB1cGRhdGVzIHRoZSBJQ0Ug
dHJhbnNwb3J0IHN0YXRlIG9mIHRoZSBjb3JyZXNwb25kaW5nIHRyYW5zY2VpdmVyIGFuZCBkZXRl
cm1pbmVzIGlmIHRoZQorICAgICAgICBSVENQZWVyQ29ubmVjdGlvbidzIGFnZ3JlZ2F0ZWQgaWNl
Q29ubmVjdGlvblN0YXRlIG5lZWRzIHRvIGJlIHVwZGF0ZWQuCisKKyAgICAgICAgVXBkYXRlIE1l
ZGlhRW5kcG9pbnRNb2NrJ3MgZW11bGF0ZVBsYXRmb3JtRXZlbnQgZmVhdHVyZSB0byBzdXBwb3J0
IGEgbmV3IGFjdGlvbjoKKyAgICAgICAgInN0ZXAtaWNlLXRyYW5zcG9ydC1zdGF0ZXMiLiBXaGVu
IGluaXRpYXRlZCwgdGhpcyBhY3Rpb24gcmVwbGF5cyBhIHByZWRlZmluZWQgc2V0IG9mIElDRQor
ICAgICAgICB0cmFuc3BvcnQgc3RhdGUgY2hhbmdlcyBvbiBhIHNldCBvZiB0cmFuc2NlaXZlcnMg
d2hpY2ggY2FuIGJlIG9ic2VydmVkIHZpYSB0aGUKKyAgICAgICAgaWNlVHJhbnNwb3J0U3RhdGVD
aGFuZ2VkIChtZW50aW9uZWQgYWJvdmUpLgorCisgICAgICAgIFRlc3Q6IGZhc3QvbWVkaWFzdHJl
YW0vUlRDUGVlckNvbm5lY3Rpb24taWNlY29ubmVjdGlvbnN0YXRlY2hhbmdlLWV2ZW50Lmh0bWwK
KworICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmRlcml2ZUFnZ3JlZ2F0ZWRJY2VDb25uZWN0aW9u
U3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uOjpp
Y2VUcmFuc3BvcnRTdGF0ZUNoYW5nZWQpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0v
TWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uLmg6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFz
dHJlYW0vTWVkaWFFbmRwb2ludC5oOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbmRwb2ludENs
aWVudDo6fk1lZGlhRW5kcG9pbnRDbGllbnQpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9j
a01lZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TW9ja01lZGlhRW5kcG9pbnQ6
Ok1vY2tNZWRpYUVuZHBvaW50KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tNZWRpYUVuZHBvaW50
OjplbXVsYXRlUGxhdGZvcm1FdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFFbmRw
b2ludDo6c3RlcEljZVRyYW5zcG9ydFN0YXRlcyk6CisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVk
aWFFbmRwb2ludDo6aWNlVHJhbnNwb3J0VGltZXJGaXJlZCk6CisgICAgICAgICogcGxhdGZvcm0v
bW9jay9Nb2NrTWVkaWFFbmRwb2ludC5oOgorCiAyMDE2LTEwLTAzICBDYXJsb3MgR2FyY2lhIENh
bXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBGaXggdGhl
IGJ1aWxkIHdpdGggY29vcmRpbmF0ZWQgZ3JhcGhpY3MgZW5hYmxlZCBhZnRlciByMjA2NzEyLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYUVuZHBv
aW50UGVlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9NZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24uY3BwCmluZGV4IGJiMjI0NzYuLjU4YTY0NTUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRw
b2ludFBlZXJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL01lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTg3NSw2ICs4NzUsNzAg
QEAgdm9pZCBNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb246OmRvbmVHYXRoZXJpbmdDYW5kaWRh
dGVzKGNvbnN0IFN0cmluZyYgbWlkKQogICAgIH0KIH0KIAorc3RhdGljIFJUQ0ljZVRyYW5zcG9y
dDo6VHJhbnNwb3J0U3RhdGUgZGVyaXZlQWdncmVnYXRlZEljZUNvbm5lY3Rpb25TdGF0ZShjb25z
dCBWZWN0b3I8UlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0ZT4mIHN0YXRlcykKK3sKKyAg
ICB1bnNpZ25lZCBuZXdDb3VudCA9IDA7CisgICAgdW5zaWduZWQgY2hlY2tpbmdDb3VudCA9IDA7
CisgICAgdW5zaWduZWQgY29ubmVjdGVkQ291bnQgPSAwOworICAgIHVuc2lnbmVkIGNvbXBsZXRl
ZENvdW50ID0gMDsKKyAgICB1bnNpZ25lZCBmYWlsZWRDb3VudCA9IDA7CisgICAgdW5zaWduZWQg
ZGlzY29ubmVjdGVkQ291bnQgPSAwOworICAgIHVuc2lnbmVkIGNsb3NlZENvdW50ID0gMDsKKwor
ICAgIGZvciAoYXV0byYgc3RhdGUgOiBzdGF0ZXMpIHsKKyAgICAgICAgc3dpdGNoIChzdGF0ZSkg
eworICAgICAgICBjYXNlIFJUQ0ljZVRyYW5zcG9ydDo6VHJhbnNwb3J0U3RhdGU6Ok5ldzogKytu
ZXdDb3VudDsgYnJlYWs7CisgICAgICAgIGNhc2UgUlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRT
dGF0ZTo6Q2hlY2tpbmc6ICsrY2hlY2tpbmdDb3VudDsgYnJlYWs7CisgICAgICAgIGNhc2UgUlRD
SWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0ZTo6Q29ubmVjdGVkOiArK2Nvbm5lY3RlZENvdW50
OyBicmVhazsKKyAgICAgICAgY2FzZSBSVENJY2VUcmFuc3BvcnQ6OlRyYW5zcG9ydFN0YXRlOjpD
b21wbGV0ZWQ6ICsrY29tcGxldGVkQ291bnQ7IGJyZWFrOworICAgICAgICBjYXNlIFJUQ0ljZVRy
YW5zcG9ydDo6VHJhbnNwb3J0U3RhdGU6OkZhaWxlZDogKytmYWlsZWRDb3VudDsgYnJlYWs7Cisg
ICAgICAgIGNhc2UgUlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0ZTo6RGlzY29ubmVjdGVk
OiArK2Rpc2Nvbm5lY3RlZENvdW50OyBicmVhazsKKyAgICAgICAgY2FzZSBSVENJY2VUcmFuc3Bv
cnQ6OlRyYW5zcG9ydFN0YXRlOjpDbG9zZWQ6ICsrY2xvc2VkQ291bnQ7IGJyZWFrOworICAgICAg
ICB9CisgICAgfQorCisgICAgLy8gVGhlIGFnZ3JlZ2F0ZWQgUlRDSWNlQ29ubmVjdGlvblN0YXRl
IGlzIGRlcml2ZWQgZnJvbSB0aGUgUlRDSWNlVHJhbnNwb3J0U3RhdGUgb2YgYWxsIFJUQ0ljZVRy
YW5zcG9ydHMuCisgICAgaWYgKChuZXdDb3VudCA+IDAgJiYgIWNoZWNraW5nQ291bnQgJiYgIWZh
aWxlZENvdW50ICYmICFkaXNjb25uZWN0ZWRDb3VudCkgfHwgKGNsb3NlZENvdW50ID09IHN0YXRl
cy5zaXplKCkpKQorICAgICAgICByZXR1cm4gUlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0
ZTo6TmV3OworCisgICAgaWYgKGNoZWNraW5nQ291bnQgPiAwICYmICFmYWlsZWRDb3VudCAmJiAh
ZGlzY29ubmVjdGVkQ291bnQpCisgICAgICAgIHJldHVybiBSVENJY2VUcmFuc3BvcnQ6OlRyYW5z
cG9ydFN0YXRlOjpDaGVja2luZzsKKworICAgIGlmICgoY29ubmVjdGVkQ291bnQgKyBjb21wbGV0
ZWRDb3VudCArIGNsb3NlZENvdW50KSA9PSBzdGF0ZXMuc2l6ZSgpICYmIGNvbm5lY3RlZENvdW50
ID4gMCkKKyAgICAgICAgcmV0dXJuIFJUQ0ljZVRyYW5zcG9ydDo6VHJhbnNwb3J0U3RhdGU6OkNv
bm5lY3RlZDsKKworICAgIGlmICgoY29tcGxldGVkQ291bnQgKyBjbG9zZWRDb3VudCkgPT0gc3Rh
dGVzLnNpemUoKSAmJiBjb21wbGV0ZWRDb3VudCA+IDApCisgICAgICAgIHJldHVybiBSVENJY2VU
cmFuc3BvcnQ6OlRyYW5zcG9ydFN0YXRlOjpDb21wbGV0ZWQ7CisKKyAgICBpZiAoZmFpbGVkQ291
bnQgPiAwKQorICAgICAgICByZXR1cm4gUlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0ZTo6
RmFpbGVkOworCisgICAgaWYgKGRpc2Nvbm5lY3RlZENvdW50ID4gMCkgLy8gQW55IGZhaWxlZCBj
YXVnaHQgYWJvdmUuCisgICAgICAgIHJldHVybiBSVENJY2VUcmFuc3BvcnQ6OlRyYW5zcG9ydFN0
YXRlOjpEaXNjb25uZWN0ZWQ7CisKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gUlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0ZTo6TmV3OworfQorCit2b2lkIE1lZGlh
RW5kcG9pbnRQZWVyQ29ubmVjdGlvbjo6aWNlVHJhbnNwb3J0U3RhdGVDaGFuZ2VkKGNvbnN0IFN0
cmluZyYgbWlkLCBNZWRpYUVuZHBvaW50OjpJY2VUcmFuc3BvcnRTdGF0ZSBtZWRpYUVuZHBvaW50
SWNlVHJhbnNwb3J0U3RhdGUpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKworICAg
IFJUQ1J0cFRyYW5zY2VpdmVyKiB0cmFuc2NlaXZlciA9IG1hdGNoVHJhbnNjZWl2ZXJCeU1pZCht
X2NsaWVudC0+Z2V0VHJhbnNjZWl2ZXJzKCksIG1pZCk7CisgICAgQVNTRVJUKHRyYW5zY2VpdmVy
KTsKKworICAgIFJUQ0ljZVRyYW5zcG9ydDo6VHJhbnNwb3J0U3RhdGUgdHJhbnNwb3J0U3RhdGUg
PSBzdGF0aWNfY2FzdDxSVENJY2VUcmFuc3BvcnQ6OlRyYW5zcG9ydFN0YXRlPihtZWRpYUVuZHBv
aW50SWNlVHJhbnNwb3J0U3RhdGUpOworICAgIHRyYW5zY2VpdmVyLT5pY2VUcmFuc3BvcnQoKS5z
ZXRUcmFuc3BvcnRTdGF0ZSh0cmFuc3BvcnRTdGF0ZSk7CisKKyAgICAvLyBEZXRlcm1pbmUgaWYg
dGhlIHNjcmlwdCBuZWVkcyB0byBiZSBub3RpZmllZC4KKyAgICBWZWN0b3I8UlRDSWNlVHJhbnNw
b3J0OjpUcmFuc3BvcnRTdGF0ZT4gdHJhbnNwb3J0U3RhdGVzOworICAgIGZvciAoYXV0byYgdHJh
bnNjZWl2ZXIgOiBtX2NsaWVudC0+Z2V0VHJhbnNjZWl2ZXJzKCkpCisgICAgICAgIHRyYW5zcG9y
dFN0YXRlcy5hcHBlbmQodHJhbnNjZWl2ZXItPmljZVRyYW5zcG9ydCgpLnRyYW5zcG9ydFN0YXRl
KCkpOworCisgICAgUlRDSWNlVHJhbnNwb3J0OjpUcmFuc3BvcnRTdGF0ZSBkZXJpdmVkU3RhdGUg
PSBkZXJpdmVBZ2dyZWdhdGVkSWNlQ29ubmVjdGlvblN0YXRlKHRyYW5zcG9ydFN0YXRlcyk7Cisg
ICAgbV9jbGllbnQtPnVwZGF0ZUljZUNvbm5lY3Rpb25TdGF0ZShzdGF0aWNfY2FzdDxJY2VDb25u
ZWN0aW9uU3RhdGU+KGRlcml2ZWRTdGF0ZSkpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCX1JUQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlv
bi5oCmluZGV4IGMyYmU3MTIuLmY1MTM3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rp
b24uaApAQCAtMTExLDYgKzExMSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBnb3REdGxzRmluZ2Vy
cHJpbnQoY29uc3QgU3RyaW5nJiBmaW5nZXJwcmludCwgY29uc3QgU3RyaW5nJiBmaW5nZXJwcmlu
dEZ1bmN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIGdvdEljZUNhbmRpZGF0ZShjb25zdCBTdHJp
bmcmIG1pZCwgUmVmUHRyPEljZUNhbmRpZGF0ZT4mJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkb25l
R2F0aGVyaW5nQ2FuZGlkYXRlcyhjb25zdCBTdHJpbmcmIG1pZCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBpY2VUcmFuc3BvcnRTdGF0ZUNoYW5nZWQoY29uc3QgU3RyaW5nJiBtaWQsIE1lZGlhRW5kcG9p
bnQ6OkljZVRyYW5zcG9ydFN0YXRlKSBvdmVycmlkZTsKIAogICAgIFBlZXJDb25uZWN0aW9uQmFj
a2VuZENsaWVudCogbV9jbGllbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPE1lZGlhRW5kcG9pbnQ+
IG1fbWVkaWFFbmRwb2ludDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL01lZGlhRW5kcG9pbnQuaAppbmRleCAzMjIxYmJmLi4zODcyMjI3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5oCkBA
IC00MSwxOSArNDEsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBJY2VDYW5kaWRh
dGU7CiBjbGFzcyBNZWRpYUVuZHBvaW50OworY2xhc3MgTWVkaWFFbmRwb2ludENsaWVudDsKIGNs
YXNzIE1lZGlhRW5kcG9pbnRTZXNzaW9uQ29uZmlndXJhdGlvbjsKIGNsYXNzIE1lZGlhUGF5bG9h
ZDsKIGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2U7CiAKLWNsYXNzIE1lZGlhRW5kcG9pbnRDbGll
bnQgewotcHVibGljOgotICAgIHZpcnR1YWwgdm9pZCBnb3REdGxzRmluZ2VycHJpbnQoY29uc3Qg
U3RyaW5nJiBmaW5nZXJwcmludCwgY29uc3QgU3RyaW5nJiBmaW5nZXJwcmludEZ1bmN0aW9uKSA9
IDA7Ci0gICAgdmlydHVhbCB2b2lkIGdvdEljZUNhbmRpZGF0ZShjb25zdCBTdHJpbmcmIG1pZCwg
UmVmUHRyPEljZUNhbmRpZGF0ZT4mJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkb25lR2F0aGVy
aW5nQ2FuZGlkYXRlcyhjb25zdCBTdHJpbmcmIG1pZCkgPSAwOwotCi0gICAgdmlydHVhbCB+TWVk
aWFFbmRwb2ludENsaWVudCgpIHsgfQotfTsKLQogdHlwZWRlZiBzdGQ6OnVuaXF1ZV9wdHI8TWVk
aWFFbmRwb2ludD4gKCpDcmVhdGVNZWRpYUVuZHBvaW50KShNZWRpYUVuZHBvaW50Q2xpZW50Jik7
CiB0eXBlZGVmIFZlY3RvcjxSZWZQdHI8TWVkaWFQYXlsb2FkPj4gTWVkaWFQYXlsb2FkVmVjdG9y
OwogdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmVhbHRpbWVNZWRpYVNvdXJjZSo+IFJlYWx0aW1l
TWVkaWFTb3VyY2VNYXA7CkBAIC02OSw2ICs2MSw4IEBAIHB1YmxpYzoKICAgICAgICAgRmFpbGVk
CiAgICAgfTsKIAorICAgIHVzaW5nIEljZVRyYW5zcG9ydFN0YXRlID0gUGVlckNvbm5lY3Rpb25T
dGF0ZXM6OkljZVRyYW5zcG9ydFN0YXRlOworCiAgICAgdmlydHVhbCB2b2lkIHNldENvbmZpZ3Vy
YXRpb24oUmVmUHRyPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiYmKSA9IDA7CiAKICAgICB2
aXJ0dWFsIHZvaWQgZ2VuZXJhdGVEdGxzSW5mbygpID0gMDsKQEAgLTg5LDYgKzgzLDE2IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZW11bGF0ZVBsYXRmb3JtRXZlbnQoY29uc3QgU3RyaW5n
JikgeyB9OwogfTsKIAorY2xhc3MgTWVkaWFFbmRwb2ludENsaWVudCB7CitwdWJsaWM6CisgICAg
dmlydHVhbCB2b2lkIGdvdER0bHNGaW5nZXJwcmludChjb25zdCBTdHJpbmcmIGZpbmdlcnByaW50
LCBjb25zdCBTdHJpbmcmIGZpbmdlcnByaW50RnVuY3Rpb24pID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgZ290SWNlQ2FuZGlkYXRlKGNvbnN0IFN0cmluZyYgbWlkLCBSZWZQdHI8SWNlQ2FuZGlkYXRl
PiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRvbmVHYXRoZXJpbmdDYW5kaWRhdGVzKGNvbnN0
IFN0cmluZyYgbWlkKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGljZVRyYW5zcG9ydFN0YXRlQ2hh
bmdlZChjb25zdCBTdHJpbmcmIG1pZCwgTWVkaWFFbmRwb2ludDo6SWNlVHJhbnNwb3J0U3RhdGUp
ID0gMDsKKworICAgIHZpcnR1YWwgfk1lZGlhRW5kcG9pbnRDbGllbnQoKSB7IH0KK307CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfUlRDKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50LmNwcAppbmRl
eCBkMWFjYzlhLi44MzE0MTdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL01vY2tNZWRpYUVuZHBvaW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL01vY2tNZWRpYUVuZHBvaW50LmNwcApAQCAtNTIsNiArNTIsNyBAQCBzdGQ6OnVuaXF1ZV9w
dHI8TWVkaWFFbmRwb2ludD4gTW9ja01lZGlhRW5kcG9pbnQ6OmNyZWF0ZShNZWRpYUVuZHBvaW50
Q2xpZW50JiBjbAogTW9ja01lZGlhRW5kcG9pbnQ6Ok1vY2tNZWRpYUVuZHBvaW50KE1lZGlhRW5k
cG9pbnRDbGllbnQmIGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVudCkKICAgICAsIG1faWNl
Q2FuZGlkYXRlVGltZXIoKnRoaXMsICZNb2NrTWVkaWFFbmRwb2ludDo6aWNlQ2FuZGlkYXRlVGlt
ZXJGaXJlZCkKKyAgICAsIG1faWNlVHJhbnNwb3J0VGltZXIoKnRoaXMsICZNb2NrTWVkaWFFbmRw
b2ludDo6aWNlVHJhbnNwb3J0VGltZXJGaXJlZCkKIHsKIH0KIApAQCAtMjEwLDYgKzIxMSw4IEBA
IHZvaWQgTW9ja01lZGlhRW5kcG9pbnQ6OmVtdWxhdGVQbGF0Zm9ybUV2ZW50KGNvbnN0IFN0cmlu
ZyYgYWN0aW9uKQogewogICAgIGlmIChhY3Rpb24gPT0gImRpc3BhdGNoLWZha2UtaWNlLWNhbmRp
ZGF0ZXMiKQogICAgICAgICBkaXNwYXRjaEZha2VJY2VDYW5kaWRhdGVzKCk7CisgICAgZWxzZSBp
ZiAoYWN0aW9uID09ICJzdGVwLWljZS10cmFuc3BvcnQtc3RhdGVzIikKKyAgICAgICAgc3RlcElj
ZVRyYW5zcG9ydFN0YXRlcygpOwogfQogCiB2b2lkIE1vY2tNZWRpYUVuZHBvaW50OjpkaXNwYXRj
aEZha2VJY2VDYW5kaWRhdGVzKCkKQEAgLTI2NSw2ICsyNjgsNTQgQEAgdm9pZCBNb2NrTWVkaWFF
bmRwb2ludDo6aWNlQ2FuZGlkYXRlVGltZXJGaXJlZCgpCiAgICAgICAgIG1fY2xpZW50LmRvbmVH
YXRoZXJpbmdDYW5kaWRhdGVzKG1fbWlkc1swXSk7CiB9CiAKK3ZvaWQgTW9ja01lZGlhRW5kcG9p
bnQ6OnN0ZXBJY2VUcmFuc3BvcnRTdGF0ZXMoKQoreworICAgIGlmIChtX21pZHMuc2l6ZSgpICE9
IDMpIHsKKyAgICAgICAgTE9HX0VSUk9SKCJUaGUgJ3N0ZXAtaWNlLXRyYW5zcG9ydC1zdGF0ZXMn
IGFjdGlvbiByZXF1aXJlcyAzIHRyYW5zY2VpdmVycyIpOworICAgICAgICByZXR1cm47CisgICAg
fQorCisgICAgLy8gU2hvdWxkIGdvIHRvOgorICAgIC8vICdjaGVja2luZycKKyAgICBtX2ljZVRy
YW5zcG9ydFN0YXRlQ2hhbmdlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIobV9taWRzWzBdLCBNZWRp
YUVuZHBvaW50OjpJY2VUcmFuc3BvcnRTdGF0ZTo6Q2hlY2tpbmcpKTsKKyAgICBtX2ljZVRyYW5z
cG9ydFN0YXRlQ2hhbmdlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIobV9taWRzWzFdLCBNZWRpYUVu
ZHBvaW50OjpJY2VUcmFuc3BvcnRTdGF0ZTo6Q2hlY2tpbmcpKTsKKyAgICBtX2ljZVRyYW5zcG9y
dFN0YXRlQ2hhbmdlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIobV9taWRzWzJdLCBNZWRpYUVuZHBv
aW50OjpJY2VUcmFuc3BvcnRTdGF0ZTo6Q2hlY2tpbmcpKTsKKworICAgIC8vICdjb25uZWN0ZWQn
CisgICAgbV9pY2VUcmFuc3BvcnRTdGF0ZUNoYW5nZXMuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKG1f
bWlkc1swXSwgTWVkaWFFbmRwb2ludDo6SWNlVHJhbnNwb3J0U3RhdGU6OkNvbm5lY3RlZCkpOwor
ICAgIG1faWNlVHJhbnNwb3J0U3RhdGVDaGFuZ2VzLmFwcGVuZChzdGQ6Om1ha2VfcGFpcihtX21p
ZHNbMV0sIE1lZGlhRW5kcG9pbnQ6OkljZVRyYW5zcG9ydFN0YXRlOjpDb21wbGV0ZWQpKTsKKyAg
ICBtX2ljZVRyYW5zcG9ydFN0YXRlQ2hhbmdlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIobV9taWRz
WzJdLCBNZWRpYUVuZHBvaW50OjpJY2VUcmFuc3BvcnRTdGF0ZTo6Q2xvc2VkKSk7CisKKyAgICAv
LyAnY29tcGxldGVkJworICAgIG1faWNlVHJhbnNwb3J0U3RhdGVDaGFuZ2VzLmFwcGVuZChzdGQ6
Om1ha2VfcGFpcihtX21pZHNbMF0sIE1lZGlhRW5kcG9pbnQ6OkljZVRyYW5zcG9ydFN0YXRlOjpD
b21wbGV0ZWQpKTsKKworICAgIC8vICdmYWlsZWQnCisgICAgbV9pY2VUcmFuc3BvcnRTdGF0ZUNo
YW5nZXMuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKG1fbWlkc1swXSwgTWVkaWFFbmRwb2ludDo6SWNl
VHJhbnNwb3J0U3RhdGU6OkZhaWxlZCkpOworCisgICAgLy8gJ2Rpc2Nvbm5lY3RlZCcKKyAgICBt
X2ljZVRyYW5zcG9ydFN0YXRlQ2hhbmdlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIobV9taWRzWzFd
LCBNZWRpYUVuZHBvaW50OjpJY2VUcmFuc3BvcnRTdGF0ZTo6RGlzY29ubmVjdGVkKSk7CisgICAg
bV9pY2VUcmFuc3BvcnRTdGF0ZUNoYW5nZXMuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKG1fbWlkc1sw
XSwgTWVkaWFFbmRwb2ludDo6SWNlVHJhbnNwb3J0U3RhdGU6OkNsb3NlZCkpOworCisgICAgLy8g
J25ldycKKyAgICBtX2ljZVRyYW5zcG9ydFN0YXRlQ2hhbmdlcy5hcHBlbmQoc3RkOjptYWtlX3Bh
aXIobV9taWRzWzFdLCBNZWRpYUVuZHBvaW50OjpJY2VUcmFuc3BvcnRTdGF0ZTo6Q2xvc2VkKSk7
CisKKyAgICAvLyBSZXZlcnNlIG9yZGVyIHRvIHVzZSB0YWtlTGFzdCgpIHdoaWxlIGtlZXBpbmcg
dGhlIGFib3ZlIG9yZGVyCisgICAgbV9pY2VUcmFuc3BvcnRTdGF0ZUNoYW5nZXMucmV2ZXJzZSgp
OworCisgICAgbV9pY2VUcmFuc3BvcnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQg
TW9ja01lZGlhRW5kcG9pbnQ6OmljZVRyYW5zcG9ydFRpbWVyRmlyZWQoKQoreworICAgIGlmICht
X2ljZVRyYW5zcG9ydFN0YXRlQ2hhbmdlcy5pc0VtcHR5KCkgfHwgbV9taWRzLnNpemUoKSAhPSAz
KQorICAgICAgICByZXR1cm47CisKKyAgICBhdXRvIHN0YXRlQ2hhbmdlID0gbV9pY2VUcmFuc3Bv
cnRTdGF0ZUNoYW5nZXMudGFrZUxhc3QoKTsKKyAgICBtX2NsaWVudC5pY2VUcmFuc3BvcnRTdGF0
ZUNoYW5nZWQoc3RhdGVDaGFuZ2UuZmlyc3QsIHN0YXRlQ2hhbmdlLnNlY29uZCk7CisKKyAgICBt
X2ljZVRyYW5zcG9ydFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKK30KKwogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQl9SVEMpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50LmgKaW5kZXggZWZkMTVjMC4uOWY2MDE5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRw
b2ludC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9p
bnQuaApAQCAtNjgsMTEgKzY4LDE3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaXNwYXRjaEZha2VJ
Y2VDYW5kaWRhdGVzKCk7CiAgICAgdm9pZCBpY2VDYW5kaWRhdGVUaW1lckZpcmVkKCk7CiAKKyAg
ICB2b2lkIHN0ZXBJY2VUcmFuc3BvcnRTdGF0ZXMoKTsKKyAgICB2b2lkIGljZVRyYW5zcG9ydFRp
bWVyRmlyZWQoKTsKKwogICAgIE1lZGlhRW5kcG9pbnRDbGllbnQmIG1fY2xpZW50OwogICAgIFZl
Y3RvcjxTdHJpbmc+IG1fbWlkczsKIAogICAgIFZlY3RvcjxSZWZQdHI8SWNlQ2FuZGlkYXRlPj4g
bV9mYWtlSWNlQ2FuZGlkYXRlczsKICAgICBUaW1lciBtX2ljZUNhbmRpZGF0ZVRpbWVyOworCisg
ICAgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIE1lZGlhRW5kcG9pbnQ6OkljZVRyYW5zcG9ydFN0
YXRlPj4gbV9pY2VUcmFuc3BvcnRTdGF0ZUNoYW5nZXM7CisgICAgVGltZXIgbV9pY2VUcmFuc3Bv
cnRUaW1lcjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>