<?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>189520</bug_id>
          
          <creation_ts>2018-09-11 14:05:27 -0700</creation_ts>
          <short_desc>[Curl] Limit capturing extra metrics for Web Inspector when not required.</short_desc>
          <delta_ts>2018-09-18 14:53:30 -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>Platform</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="Basuke Suzuki">basuke</reporter>
          <assigned_to name="Basuke Suzuki">basuke</assigned_to>
          <cc>achristensen</cc>
    
    <cc>basuke</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>galpeter</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1458646</commentid>
    <comment_count>0</comment_count>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-11 14:05:27 -0700</bug_when>
    <thetext>Respect the value of NetworkDataTask::shouldCaptureExtraNetworkLoadMetrics() to reduce the process time when they are not needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460221</commentid>
    <comment_count>1</comment_count>
      <attachid>349903</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-17 10:50:41 -0700</bug_when>
    <thetext>Created attachment 349903
PATCH</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460311</commentid>
    <comment_count>2</comment_count>
      <attachid>349903</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-09-17 13:47:35 -0700</bug_when>
    <thetext>Comment on attachment 349903
PATCH

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

&gt; Source/WebKit/NetworkProcess/curl/NetworkDataTaskCurl.cpp:140
&gt; +    auto curlRequest = CurlRequest::create(request, *this, CurlRequest::ShouldSuspend::Yes);
&gt; +    curlRequest-&gt;setCaptureExtraNetworkLoadMetricsEnabled(shouldCaptureExtraNetworkLoadMetrics());

This should be a constructor parameter.  If it&apos;s annoying use a default value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460381</commentid>
    <comment_count>3</comment_count>
      <attachid>349959</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-17 15:54:01 -0700</bug_when>
    <thetext>Created attachment 349959
PATCH

Thanks for the review. I remove setter and move that to the constructor argument.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460390</commentid>
    <comment_count>4</comment_count>
      <attachid>349959</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-09-17 16:09:40 -0700</bug_when>
    <thetext>Comment on attachment 349959
PATCH

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

&gt; Source/WebCore/platform/network/curl/CurlRequest.h:112
&gt; +    CurlRequest(const ResourceRequest&amp;, CurlRequestClient*, bool shouldSuspend, bool enableMultipart, bool captureExtendedMetrics, MessageQueue&lt;Function&lt;void()&gt;&gt;*);

It would be more readable to just pass the enums here, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460739</commentid>
    <comment_count>5</comment_count>
      <attachid>350053</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-18 14:13:48 -0700</bug_when>
    <thetext>Created attachment 350053
PATCH</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460742</commentid>
    <comment_count>6</comment_count>
      <attachid>350053</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-18 14:15:16 -0700</bug_when>
    <thetext>Comment on attachment 350053
PATCH

Sorry, I&apos;ve submitted a different patch file. This one is the right one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460762</commentid>
    <comment_count>7</comment_count>
      <attachid>350053</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-18 14:52:18 -0700</bug_when>
    <thetext>Comment on attachment 350053
PATCH

Clearing flags on attachment: 350053

Committed r236156: &lt;https://trac.webkit.org/changeset/236156&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460763</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-18 14:52:19 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460765</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-18 14:53:30 -0700</bug_when>
    <thetext>&lt;rdar://problem/44577426&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349903</attachid>
            <date>2018-09-17 10:50:41 -0700</date>
            <delta_ts>2018-09-17 15:54:01 -0700</delta_ts>
            <desc>PATCH</desc>
            <filename>189520.diff</filename>
            <type>text/plain</type>
            <size>10263</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwZjA0N2VmYzNlMi4uNjQ1ZjdiOWY1YmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxOC0wOS0xNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29u
eS5jb20+CisKKyAgICAgICAgW0N1cmxdIExpbWl0IGNhcHR1cmluZyBleHRyYSBtZXRyaWNzIGZv
ciBXZWIgSW5zcGVjdG9yIHdoZW4gbm90IHJlcXVpcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5NTIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzcGVjdCB0aGUgdmFsdWUgb2YgTmV0d29ya0Rh
dGFUYXNrOjpzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSB0byByZWR1Y2Ug
dGhlIHByb2Nlc3MKKyAgICAgICAgdGltZSB3aGVuIHRoZXkgYXJlIG5vdCBuZWVkZWQuCisKKyAg
ICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUncyBubyBiZWhhdmlvciBjaGFuZ2UuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q3VybEhhbmRsZTo6Z2V0TmV0d29ya0xvYWRNZXRyaWNzKToKKyAgICAgICAg
KFdlYkNvcmU6OkN1cmxIYW5kbGU6OmFkZEV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3Vy
bFJlcXVlc3Q6OnVwZGF0ZU5ldHdvcmtMb2FkTWV0cmljcyk6CisgICAgICAgICogcGxhdGZvcm0v
bmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVz
dDo6c2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZCk6CisKIDIwMTgtMDkt
MTcgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSBW
Q1AgZm9yIGlPUyBhbmQgcmVlbmFibGUgaXQgZm9yIE1hY09TCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmNwcAppbmRleCBkMzY0Nzhl
YmZjZS4uMTIwNmJjMzllODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY3VybC9DdXJsQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmNwcApAQCAtNzM3LDEzICs3MzcsNiBAQCBzdGQ6Om9w
dGlvbmFsPE5ldHdvcmtMb2FkTWV0cmljcz4gQ3VybEhhbmRsZTo6Z2V0TmV0d29ya0xvYWRNZXRy
aWNzKGNvbnN0IFdURjo6UwogICAgIGRvdWJsZSBjb25uZWN0ID0gMC4wOwogICAgIGRvdWJsZSBh
cHBDb25uZWN0ID0gMC4wOwogICAgIGRvdWJsZSBzdGFydFRyYW5zZmVyID0gMC4wOwotICAgIGxv
bmcgcmVxdWVzdEhlYWRlclNpemUgPSAwOwotICAgIGN1cmxfb2ZmX3QgcmVxdWVzdEJvZHlTaXpl
ID0gMDsKLSAgICBsb25nIHJlc3BvbnNlSGVhZGVyU2l6ZSA9IDA7Ci0gICAgY3VybF9vZmZfdCBy
ZXNwb25zZUJvZHlTaXplID0gMDsKLSAgICBsb25nIHZlcnNpb24gPSAwOwotICAgIGNoYXIqIGlw
ID0gbnVsbHB0cjsKLSAgICBsb25nIHBvcnQgPSAwOwogCiAgICAgaWYgKCFtX2hhbmRsZSkKICAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKQEAgLTc2NCw0OSArNzU3LDYyIEBAIHN0ZDo6b3B0
aW9uYWw8TmV0d29ya0xvYWRNZXRyaWNzPiBDdXJsSGFuZGxlOjpnZXROZXR3b3JrTG9hZE1ldHJp
Y3MoY29uc3QgV1RGOjpTCiAgICAgaWYgKGVycm9yQ29kZSAhPSBDVVJMRV9PSykKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKIAorICAgIE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTG9h
ZE1ldHJpY3M7CisKKyAgICBuZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQgPSBk
b21haW5Mb29rdXBTdGFydDsKKyAgICBuZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5k
ID0gZG9tYWluTG9va3VwU3RhcnQgKyBTZWNvbmRzKG5hbWVMb29rdXApOworICAgIG5ldHdvcmtM
b2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29uZHMobmFt
ZUxvb2t1cCk7CisgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPSBkb21haW5Mb29r
dXBTdGFydCArIFNlY29uZHMoY29ubmVjdCk7CisKKyAgICBpZiAoYXBwQ29ubmVjdCA+IDAuMCkg
eworICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gZG9t
YWluTG9va3VwU3RhcnQgKyBTZWNvbmRzKGNvbm5lY3QpOworICAgICAgICBuZXR3b3JrTG9hZE1l
dHJpY3MuY29ubmVjdEVuZCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhhcHBDb25uZWN0
KTsKKyAgICB9CisKKyAgICBuZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdFN0YXJ0ID0gbmV0d29y
a0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQ7CisgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNl
U3RhcnQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29uZHMoc3RhcnRUcmFuc2Zlcik7CisKKyAg
ICByZXR1cm4gbmV0d29ya0xvYWRNZXRyaWNzOworfQorCit2b2lkIEN1cmxIYW5kbGU6OmFkZEV4
dHJhTmV0d29ya0xvYWRNZXRyaWNzKE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRy
aWNzKQoreworICAgIGxvbmcgcmVxdWVzdEhlYWRlclNpemUgPSAwOworICAgIGN1cmxfb2ZmX3Qg
cmVxdWVzdEJvZHlTaXplID0gMDsKKyAgICBsb25nIHJlc3BvbnNlSGVhZGVyU2l6ZSA9IDA7Cisg
ICAgY3VybF9vZmZfdCByZXNwb25zZUJvZHlTaXplID0gMDsKKyAgICBsb25nIHZlcnNpb24gPSAw
OworICAgIGNoYXIqIGlwID0gbnVsbHB0cjsKKyAgICBsb25nIHBvcnQgPSAwOworCiAgICAgLy8g
RklYTUU6IEdldHMgdG90YWwgcmVxdWVzdCBzaXplIG5vdCBqdXN0IGhlYWRlcnMgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODM2MwotICAgIGVycm9yQ29kZSA9IGN1
cmxfZWFzeV9nZXRpbmZvKG1faGFuZGxlLCBDVVJMSU5GT19SRVFVRVNUX1NJWkUsICZyZXF1ZXN0
SGVhZGVyU2l6ZSk7CisgICAgQ1VSTGNvZGUgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8o
bV9oYW5kbGUsIENVUkxJTkZPX1JFUVVFU1RfU0laRSwgJnJlcXVlc3RIZWFkZXJTaXplKTsKICAg
ICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OworICAgICAgICByZXR1cm47CiAKICAgICBlcnJvckNvZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyht
X2hhbmRsZSwgQ1VSTElORk9fU0laRV9VUExPQURfVCwgJnJlcXVlc3RCb2R5U2l6ZSk7CiAgICAg
aWYgKGVycm9yQ29kZSAhPSBDVVJMRV9PSykKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
KyAgICAgICAgcmV0dXJuOwogCiAgICAgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8obV9o
YW5kbGUsIENVUkxJTkZPX0hFQURFUl9TSVpFLCAmcmVzcG9uc2VIZWFkZXJTaXplKTsKICAgICBp
ZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owor
ICAgICAgICByZXR1cm47CiAKICAgICBlcnJvckNvZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyhtX2hh
bmRsZSwgQ1VSTElORk9fU0laRV9ET1dOTE9BRF9ULCAmcmVzcG9uc2VCb2R5U2l6ZSk7CiAgICAg
aWYgKGVycm9yQ29kZSAhPSBDVVJMRV9PSykKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
KyAgICAgICAgcmV0dXJuOwogCiAgICAgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8obV9o
YW5kbGUsIENVUkxJTkZPX1BSSU1BUllfSVAsICZpcCk7CiAgICAgaWYgKGVycm9yQ29kZSAhPSBD
VVJMRV9PSykKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuOwog
CiAgICAgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8obV9oYW5kbGUsIENVUkxJTkZPX1BS
SU1BUllfUE9SVCwgJnBvcnQpOwogICAgIGlmIChlcnJvckNvZGUgIT0gQ1VSTEVfT0spCi0gICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVybjsKIAogICAgIGVycm9yQ29k
ZSA9IGN1cmxfZWFzeV9nZXRpbmZvKG1faGFuZGxlLCBDVVJMSU5GT19IVFRQX1ZFUlNJT04sICZ2
ZXJzaW9uKTsKICAgICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OwotCi0gICAgTmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmlj
czsKLQotICAgIG5ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA9IGRvbWFpbkxv
b2t1cFN0YXJ0OwotICAgIG5ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBFbmQgPSBkb21h
aW5Mb29rdXBTdGFydCArIFNlY29uZHMobmFtZUxvb2t1cCk7Ci0gICAgbmV0d29ya0xvYWRNZXRy
aWNzLmNvbm5lY3RTdGFydCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhuYW1lTG9va3Vw
KTsKLSAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA9IGRvbWFpbkxvb2t1cFN0YXJ0
ICsgU2Vjb25kcyhjb25uZWN0KTsKLQotICAgIGlmIChhcHBDb25uZWN0ID4gMC4wKSB7Ci0gICAg
ICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBkb21haW5Mb29r
dXBTdGFydCArIFNlY29uZHMoY29ubmVjdCk7Ci0gICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5j
b25uZWN0RW5kID0gZG9tYWluTG9va3VwU3RhcnQgKyBTZWNvbmRzKGFwcENvbm5lY3QpOwotICAg
IH0KLQotICAgIG5ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPSBuZXR3b3JrTG9hZE1l
dHJpY3MuY29ubmVjdEVuZDsKLSAgICBuZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA9
IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhzdGFydFRyYW5zZmVyKTsKKyAgICAgICAgcmV0
dXJuOwogCiAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RIZWFkZXJCeXRlc1NlbnQgPSBy
ZXF1ZXN0SGVhZGVyU2l6ZTsKICAgICBuZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdEJvZHlCeXRl
c1NlbnQgPSByZXF1ZXN0Qm9keVNpemU7CkBAIC04MjUsOCArODMxLDYgQEAgc3RkOjpvcHRpb25h
bDxOZXR3b3JrTG9hZE1ldHJpY3M+IEN1cmxIYW5kbGU6OmdldE5ldHdvcmtMb2FkTWV0cmljcyhj
b25zdCBXVEY6OlMKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnByb3RvY29sID0gaHR0cFZl
cnNpb24xMTsKICAgICBlbHNlIGlmICh2ZXJzaW9uID09IENVUkxfSFRUUF9WRVJTSU9OXzIpCiAg
ICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5wcm90b2NvbCA9IGh0dHBWZXJzaW9uMjsKLQotICAg
IHJldHVybiBuZXR3b3JrTG9hZE1ldHJpY3M7CiB9CiAKIHN0ZDo6b3B0aW9uYWw8Q2VydGlmaWNh
dGVJbmZvPiBDdXJsSGFuZGxlOjpjZXJ0aWZpY2F0ZUluZm8oKSBjb25zdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuaAppbmRleCA4YTk0
NTIwZTY3Zi4uZjBiMzE4ZDFkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5oCkBAIC0yODMsNiArMjgzLDcgQEAgcHVibGljOgog
ICAgIHN0ZDo6b3B0aW9uYWw8bG9uZz4gZ2V0UHJveHlBdXRoQXZhaWwoKTsKICAgICBzdGQ6Om9w
dGlvbmFsPGxvbmc+IGdldEh0dHBWZXJzaW9uKCk7CiAgICAgc3RkOjpvcHRpb25hbDxOZXR3b3Jr
TG9hZE1ldHJpY3M+IGdldE5ldHdvcmtMb2FkTWV0cmljcyhjb25zdCBXVEY6OlNlY29uZHMmIGRv
bWFpbkxvb2t1cFN0YXJ0KTsKKyAgICB2b2lkIGFkZEV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKE5l
dHdvcmtMb2FkTWV0cmljcyYpOwogCiAgICAgaW50IHNzbEVycm9ycygpIGNvbnN0OwogICAgIHN0
ZDo6b3B0aW9uYWw8Q2VydGlmaWNhdGVJbmZvPiBjZXJ0aWZpY2F0ZUluZm8oKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3Qu
Y3BwCmluZGV4IDJkOGFmZjJjOWI3Li4xM2VmMmU1YmRkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuY3BwCkBAIC02NDgsMTEg
KzY0OCwxNSBAQCB2b2lkIEN1cmxSZXF1ZXN0Ojp1cGRhdGVOZXR3b3JrTG9hZE1ldHJpY3MoKQog
ewogICAgIGF1dG8gZG9tYWluTG9va3VwU3RhcnQgPSBtX3BlcmZvcm1TdGFydFRpbWUgLSBtX3Jl
cXVlc3RTdGFydFRpbWU7CiAKLSAgICBpZiAoYXV0byBtZXRyaWNzID0gbV9jdXJsSGFuZGxlLT5n
ZXROZXR3b3JrTG9hZE1ldHJpY3MoZG9tYWluTG9va3VwU3RhcnQpKQorICAgIGlmIChhdXRvIG1l
dHJpY3MgPSBtX2N1cmxIYW5kbGUtPmdldE5ldHdvcmtMb2FkTWV0cmljcyhkb21haW5Mb29rdXBT
dGFydCkpIHsKICAgICAgICAgbV9uZXR3b3JrTG9hZE1ldHJpY3MgPSAqbWV0cmljczsKIAotICAg
IG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RIZWFkZXJzID0gbV9yZXF1ZXN0Lmh0dHBIZWFk
ZXJGaWVsZHMoKTsKLSAgICBtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUJvZHlEZWNvZGVk
U2l6ZSA9IG1fdG90YWxSZWNlaXZlZFNpemU7CisgICAgICAgIGlmIChtX2NhcHR1cmVFeHRyYU5l
dHdvcmtMb2FkTWV0cmljc0VuYWJsZWQpIHsKKyAgICAgICAgICAgIG1fY3VybEhhbmRsZS0+YWRk
RXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MobV9uZXR3b3JrTG9hZE1ldHJpY3MpOworICAgICAgICAg
ICAgbV9uZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdEhlYWRlcnMgPSBtX3JlcXVlc3QuaHR0cEhl
YWRlckZpZWxkcygpOworICAgICAgICAgICAgbV9uZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VC
b2R5RGVjb2RlZFNpemUgPSBtX3RvdGFsUmVjZWl2ZWRTaXplOworICAgICAgICB9CisgICAgfQog
fQogCiB2b2lkIEN1cmxSZXF1ZXN0OjplbmFibGVEb3dubG9hZFRvRmlsZSgpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5oCmluZGV4IDk1
OGM3NzdiNzc1Li5mNjFjMmZjMGU4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmgKQEAgLTY5LDYgKzY5LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgaW52YWxpZGF0ZUNsaWVudCgpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0
VXNlclBhc3MoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBzZXRTdGFy
dFRpbWUoY29uc3QgTW9ub3RvbmljVGltZSYgc3RhcnRUaW1lKSB7IG1fcmVxdWVzdFN0YXJ0VGlt
ZSA9IHN0YXJ0VGltZTsgfQorICAgIHZvaWQgc2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRy
aWNzRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9jYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJp
Y3NFbmFibGVkID0gZW5hYmxlZDsgfQogCiAgICAgdm9pZCBzdGFydCgpOwogICAgIHZvaWQgY2Fu
Y2VsKCk7CkBAIC0xOTgsNiArMTk5LDcgQEAgcHJpdmF0ZToKICAgICBGaWxlU3lzdGVtOjpQbGF0
Zm9ybUZpbGVIYW5kbGUgbV9kb3dubG9hZEZpbGVIYW5kbGUgeyBGaWxlU3lzdGVtOjppbnZhbGlk
UGxhdGZvcm1GaWxlSGFuZGxlIH07CiAKICAgICBDZXJ0aWZpY2F0ZUluZm8gbV9jZXJ0aWZpY2F0
ZUluZm87CisgICAgYm9vbCBtX2NhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljc0VuYWJsZWQg
eyBmYWxzZSB9OwogICAgIE5ldHdvcmtMb2FkTWV0cmljcyBtX25ldHdvcmtMb2FkTWV0cmljczsK
ICAgICBNb25vdG9uaWNUaW1lIG1fcmVxdWVzdFN0YXJ0VGltZSB7IE1vbm90b25pY1RpbWU6Om5h
bigpIH07CiAgICAgTW9ub3RvbmljVGltZSBtX3BlcmZvcm1TdGFydFRpbWU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4
IDc2NmFmNmI2YTVlLi5jOTJmNGQ5ZDViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAx
OC0wOS0xNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29ueS5jb20+CisKKyAgICAg
ICAgW0N1cmxdIExpbWl0IGNhcHR1cmluZyBleHRyYSBtZXRyaWNzIGZvciBXZWIgSW5zcGVjdG9y
IHdoZW4gbm90IHJlcXVpcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg5NTIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVzcGVjdCB0aGUgdmFsdWUgb2YgTmV0d29ya0RhdGFUYXNrOjpzaG91bGRD
YXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSB0byByZWR1Y2UgdGhlIHByb2Nlc3MKKyAg
ICAgICAgdGltZSB3aGVuIHRoZXkgYXJlIG5vdCBuZWVkZWQuCisKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3BwOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrRGF0YVRhc2tDdXJsOjpjcmVhdGVDdXJsUmVxdWVzdCk6CisKIDIwMTgtMDktMTcgIFdv
b2Ryb3cgV2FuZyAgPHdvb2Ryb3dfd2FuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQ2xlYXIgcGVu
ZGluZyByZXNvdXJjZSBsb2FkIHN0YXRpc3RpY3MnIHdyaXRlcyBhZnRlciB0ZXN0cwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1
cmwuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFz
a0N1cmwuY3BwCmluZGV4IDE4M2IyMTliNmJlLi5iNTAzNmMzOTEwNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY3VybC9OZXR3b3JrRGF0YVRhc2tDdXJs
LmNwcApAQCAtMTM2LDcgKzEzNiw5IEBAIFJlZjxDdXJsUmVxdWVzdD4gTmV0d29ya0RhdGFUYXNr
Q3VybDo6Y3JlYXRlQ3VybFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzCiAKICAgICAv
LyBDcmVhdGVzIGEgQ3VybFJlcXVlc3QgaW4gc3VzcGVuZGVkIHN0YXRlLgogICAgIC8vIFRoZW4s
IE5ldHdvcmtEYXRhVGFza0N1cmw6OnJlc3VtZSgpIHdpbGwgYmUgY2FsbGVkIGFuZCBjb21tdW5p
Y2F0aW9uIHJlc3VtZXMuCi0gICAgcmV0dXJuIEN1cmxSZXF1ZXN0OjpjcmVhdGUocmVxdWVzdCwg
KnRoaXMsIEN1cmxSZXF1ZXN0OjpTaG91bGRTdXNwZW5kOjpZZXMpOworICAgIGF1dG8gY3VybFJl
cXVlc3QgPSBDdXJsUmVxdWVzdDo6Y3JlYXRlKHJlcXVlc3QsICp0aGlzLCBDdXJsUmVxdWVzdDo6
U2hvdWxkU3VzcGVuZDo6WWVzKTsKKyAgICBjdXJsUmVxdWVzdC0+c2V0Q2FwdHVyZUV4dHJhTmV0
d29ya0xvYWRNZXRyaWNzRW5hYmxlZChzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJp
Y3MoKSk7CisgICAgcmV0dXJuIGN1cmxSZXF1ZXN0OwogfQogCiB2b2lkIE5ldHdvcmtEYXRhVGFz
a0N1cmw6OmN1cmxEaWRTZW5kRGF0YShDdXJsUmVxdWVzdCYsIHVuc2lnbmVkIGxvbmcgbG9uZyB0
b3RhbEJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNFeHBlY3RlZFRvU2Vu
ZCkK
</data>
<flag name="review"
          id="367402"
          type_id="1"
          status="-"
          setter="achristensen"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349959</attachid>
            <date>2018-09-17 15:54:01 -0700</date>
            <delta_ts>2018-09-18 14:13:48 -0700</delta_ts>
            <desc>PATCH</desc>
            <filename>189520.diff</filename>
            <type>text/plain</type>
            <size>13300</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxYjEyY2Q2OGQ0Zi4uZDc4MTJmNjQ0NGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAxOC0wOS0xNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29u
eS5jb20+CisKKyAgICAgICAgW0N1cmxdIExpbWl0IGNhcHR1cmluZyBleHRyYSBtZXRyaWNzIGZv
ciBXZWIgSW5zcGVjdG9yIHdoZW4gbm90IHJlcXVpcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5NTIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzcGVjdCB0aGUgdmFsdWUgb2YgTmV0d29ya0Rh
dGFUYXNrOjpzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSB0byByZWR1Y2Ug
dGhlIHByb2Nlc3MKKyAgICAgICAgdGltZSB3aGVuIHRoZXkgYXJlIG5vdCBuZWVkZWQuCisKKyAg
ICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUncyBubyBiZWhhdmlvciBjaGFuZ2UuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q3VybEhhbmRsZTo6Z2V0TmV0d29ya0xvYWRNZXRyaWNzKToKKyAgICAgICAg
KFdlYkNvcmU6OkN1cmxIYW5kbGU6OmFkZEV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3Vy
bFJlcXVlc3Q6OkN1cmxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkN1cmxSZXF1ZXN0Ojp1
cGRhdGVOZXR3b3JrTG9hZE1ldHJpY3MpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3Vy
bC9DdXJsUmVxdWVzdC5oOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6OmNyZWF0ZSk6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6Y3JlYXRlQ3VybFJlcXVlc3QpOgor
CiAyMDE4LTA5LTE3ICBGcmVkZXJpYyBXYW5nICA8ZndhbmdAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBCdWlsZCBlcnJvciBpbiBJbWFnZUJ1ZmZlckNHIHdoZW4gY29tcGlsZWQgd2l0aCBJT1N1cmZh
Y2VQb29sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybENvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1
cmxDb250ZXh0LmNwcAppbmRleCA5Yzg3ODA3YTBiMC4uNWM4YWQ1ODlmM2MgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmNwcApA
QCAtNzMzLDEzICs3MzMsNiBAQCBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtMb2FkTWV0cmljcz4gQ3Vy
bEhhbmRsZTo6Z2V0TmV0d29ya0xvYWRNZXRyaWNzKGNvbnN0IFdURjo6UwogICAgIGRvdWJsZSBj
b25uZWN0ID0gMC4wOwogICAgIGRvdWJsZSBhcHBDb25uZWN0ID0gMC4wOwogICAgIGRvdWJsZSBz
dGFydFRyYW5zZmVyID0gMC4wOwotICAgIGxvbmcgcmVxdWVzdEhlYWRlclNpemUgPSAwOwotICAg
IGN1cmxfb2ZmX3QgcmVxdWVzdEJvZHlTaXplID0gMDsKLSAgICBsb25nIHJlc3BvbnNlSGVhZGVy
U2l6ZSA9IDA7Ci0gICAgY3VybF9vZmZfdCByZXNwb25zZUJvZHlTaXplID0gMDsKLSAgICBsb25n
IHZlcnNpb24gPSAwOwotICAgIGNoYXIqIGlwID0gbnVsbHB0cjsKLSAgICBsb25nIHBvcnQgPSAw
OwogCiAgICAgaWYgKCFtX2hhbmRsZSkKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKQEAg
LTc2MCw0OSArNzUzLDYyIEBAIHN0ZDo6b3B0aW9uYWw8TmV0d29ya0xvYWRNZXRyaWNzPiBDdXJs
SGFuZGxlOjpnZXROZXR3b3JrTG9hZE1ldHJpY3MoY29uc3QgV1RGOjpTCiAgICAgaWYgKGVycm9y
Q29kZSAhPSBDVVJMRV9PSykKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKIAorICAgIE5l
dHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTG9hZE1ldHJpY3M7CisKKyAgICBuZXR3b3JrTG9hZE1l
dHJpY3MuZG9tYWluTG9va3VwU3RhcnQgPSBkb21haW5Mb29rdXBTdGFydDsKKyAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5kID0gZG9tYWluTG9va3VwU3RhcnQgKyBTZWNvbmRz
KG5hbWVMb29rdXApOworICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPSBkb21h
aW5Mb29rdXBTdGFydCArIFNlY29uZHMobmFtZUxvb2t1cCk7CisgICAgbmV0d29ya0xvYWRNZXRy
aWNzLmNvbm5lY3RFbmQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29uZHMoY29ubmVjdCk7CisK
KyAgICBpZiAoYXBwQ29ubmVjdCA+IDAuMCkgeworICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3Mu
c2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gZG9tYWluTG9va3VwU3RhcnQgKyBTZWNvbmRzKGNvbm5l
Y3QpOworICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA9IGRvbWFpbkxvb2t1
cFN0YXJ0ICsgU2Vjb25kcyhhcHBDb25uZWN0KTsKKyAgICB9CisKKyAgICBuZXR3b3JrTG9hZE1l
dHJpY3MucmVxdWVzdFN0YXJ0ID0gbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQ7CisgICAg
bmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlU3RhcnQgPSBkb21haW5Mb29rdXBTdGFydCArIFNl
Y29uZHMoc3RhcnRUcmFuc2Zlcik7CisKKyAgICByZXR1cm4gbmV0d29ya0xvYWRNZXRyaWNzOwor
fQorCit2b2lkIEN1cmxIYW5kbGU6OmFkZEV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKE5ldHdvcmtM
b2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzKQoreworICAgIGxvbmcgcmVxdWVzdEhlYWRl
clNpemUgPSAwOworICAgIGN1cmxfb2ZmX3QgcmVxdWVzdEJvZHlTaXplID0gMDsKKyAgICBsb25n
IHJlc3BvbnNlSGVhZGVyU2l6ZSA9IDA7CisgICAgY3VybF9vZmZfdCByZXNwb25zZUJvZHlTaXpl
ID0gMDsKKyAgICBsb25nIHZlcnNpb24gPSAwOworICAgIGNoYXIqIGlwID0gbnVsbHB0cjsKKyAg
ICBsb25nIHBvcnQgPSAwOworCiAgICAgLy8gRklYTUU6IEdldHMgdG90YWwgcmVxdWVzdCBzaXpl
IG5vdCBqdXN0IGhlYWRlcnMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4ODM2MwotICAgIGVycm9yQ29kZSA9IGN1cmxfZWFzeV9nZXRpbmZvKG1faGFuZGxlLCBDVVJM
SU5GT19SRVFVRVNUX1NJWkUsICZyZXF1ZXN0SGVhZGVyU2l6ZSk7CisgICAgQ1VSTGNvZGUgZXJy
b3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8obV9oYW5kbGUsIENVUkxJTkZPX1JFUVVFU1RfU0la
RSwgJnJlcXVlc3RIZWFkZXJTaXplKTsKICAgICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQot
ICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgICAgICByZXR1cm47CiAKICAgICBlcnJv
ckNvZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyhtX2hhbmRsZSwgQ1VSTElORk9fU0laRV9VUExPQURf
VCwgJnJlcXVlc3RCb2R5U2l6ZSk7CiAgICAgaWYgKGVycm9yQ29kZSAhPSBDVVJMRV9PSykKLSAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuOwogCiAgICAgZXJyb3JD
b2RlID0gY3VybF9lYXN5X2dldGluZm8obV9oYW5kbGUsIENVUkxJTkZPX0hFQURFUl9TSVpFLCAm
cmVzcG9uc2VIZWFkZXJTaXplKTsKICAgICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQotICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgICAgICByZXR1cm47CiAKICAgICBlcnJvckNv
ZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyhtX2hhbmRsZSwgQ1VSTElORk9fU0laRV9ET1dOTE9BRF9U
LCAmcmVzcG9uc2VCb2R5U2l6ZSk7CiAgICAgaWYgKGVycm9yQ29kZSAhPSBDVVJMRV9PSykKLSAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuOwogCiAgICAgZXJyb3JD
b2RlID0gY3VybF9lYXN5X2dldGluZm8obV9oYW5kbGUsIENVUkxJTkZPX1BSSU1BUllfSVAsICZp
cCk7CiAgICAgaWYgKGVycm9yQ29kZSAhPSBDVVJMRV9PSykKLSAgICAgICAgcmV0dXJuIHN0ZDo6
bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuOwogCiAgICAgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dl
dGluZm8obV9oYW5kbGUsIENVUkxJTkZPX1BSSU1BUllfUE9SVCwgJnBvcnQpOwogICAgIGlmIChl
cnJvckNvZGUgIT0gQ1VSTEVfT0spCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAg
ICAgIHJldHVybjsKIAogICAgIGVycm9yQ29kZSA9IGN1cmxfZWFzeV9nZXRpbmZvKG1faGFuZGxl
LCBDVVJMSU5GT19IVFRQX1ZFUlNJT04sICZ2ZXJzaW9uKTsKICAgICBpZiAoZXJyb3JDb2RlICE9
IENVUkxFX09LKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotCi0gICAgTmV0d29ya0xv
YWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljczsKLQotICAgIG5ldHdvcmtMb2FkTWV0cmljcy5k
b21haW5Mb29rdXBTdGFydCA9IGRvbWFpbkxvb2t1cFN0YXJ0OwotICAgIG5ldHdvcmtMb2FkTWV0
cmljcy5kb21haW5Mb29rdXBFbmQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29uZHMobmFtZUxv
b2t1cCk7Ci0gICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCA9IGRvbWFpbkxvb2t1
cFN0YXJ0ICsgU2Vjb25kcyhuYW1lTG9va3VwKTsKLSAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29u
bmVjdEVuZCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhjb25uZWN0KTsKLQotICAgIGlm
IChhcHBDb25uZWN0ID4gMC4wKSB7Ci0gICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVD
b25uZWN0aW9uU3RhcnQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29uZHMoY29ubmVjdCk7Ci0g
ICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kID0gZG9tYWluTG9va3VwU3RhcnQg
KyBTZWNvbmRzKGFwcENvbm5lY3QpOwotICAgIH0KLQotICAgIG5ldHdvcmtMb2FkTWV0cmljcy5y
ZXF1ZXN0U3RhcnQgPSBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZDsKLSAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhz
dGFydFRyYW5zZmVyKTsKKyAgICAgICAgcmV0dXJuOwogCiAgICAgbmV0d29ya0xvYWRNZXRyaWNz
LnJlcXVlc3RIZWFkZXJCeXRlc1NlbnQgPSByZXF1ZXN0SGVhZGVyU2l6ZTsKICAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MucmVxdWVzdEJvZHlCeXRlc1NlbnQgPSByZXF1ZXN0Qm9keVNpemU7CkBAIC04
MjEsOCArODI3LDYgQEAgc3RkOjpvcHRpb25hbDxOZXR3b3JrTG9hZE1ldHJpY3M+IEN1cmxIYW5k
bGU6OmdldE5ldHdvcmtMb2FkTWV0cmljcyhjb25zdCBXVEY6OlMKICAgICAgICAgbmV0d29ya0xv
YWRNZXRyaWNzLnByb3RvY29sID0gaHR0cFZlcnNpb24xMTsKICAgICBlbHNlIGlmICh2ZXJzaW9u
ID09IENVUkxfSFRUUF9WRVJTSU9OXzIpCiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5wcm90
b2NvbCA9IGh0dHBWZXJzaW9uMjsKLQotICAgIHJldHVybiBuZXR3b3JrTG9hZE1ldHJpY3M7CiB9
CiAKIHN0ZDo6b3B0aW9uYWw8Q2VydGlmaWNhdGVJbmZvPiBDdXJsSGFuZGxlOjpjZXJ0aWZpY2F0
ZUluZm8oKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL0N1cmxDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvQ3VybENvbnRleHQuaAppbmRleCA3ZDk3MTFjYWYzNy4uMzczMjYwMTc5YjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5oCkBA
IC0yODIsNiArMjgyLDcgQEAgcHVibGljOgogICAgIHN0ZDo6b3B0aW9uYWw8bG9uZz4gZ2V0UHJv
eHlBdXRoQXZhaWwoKTsKICAgICBzdGQ6Om9wdGlvbmFsPGxvbmc+IGdldEh0dHBWZXJzaW9uKCk7
CiAgICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrTG9hZE1ldHJpY3M+IGdldE5ldHdvcmtMb2FkTWV0
cmljcyhjb25zdCBXVEY6OlNlY29uZHMmIGRvbWFpbkxvb2t1cFN0YXJ0KTsKKyAgICB2b2lkIGFk
ZEV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKE5ldHdvcmtMb2FkTWV0cmljcyYpOwogCiAgICAgaW50
IHNzbEVycm9ycygpIGNvbnN0OwogICAgIHN0ZDo6b3B0aW9uYWw8Q2VydGlmaWNhdGVJbmZvPiBj
ZXJ0aWZpY2F0ZUluZm8oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuY3BwCmluZGV4IDdmMTEyMzRmMTk1Li45NjU5MDcx
ZWVmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1
cmxSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFJlcXVlc3QuY3BwCkBAIC0zOCwxMyArMzgsMTQgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1DdXJsUmVxdWVzdDo6Q3VybFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JnJlcXVl
c3QsIEN1cmxSZXF1ZXN0Q2xpZW50KiBjbGllbnQsIGJvb2wgc2hvdWxkU3VzcGVuZCwgYm9vbCBl
bmFibGVNdWx0aXBhcnQsIE1lc3NhZ2VRdWV1ZTxGdW5jdGlvbjx2b2lkKCk+PiogbWVzc2FnZVF1
ZXVlKQorQ3VybFJlcXVlc3Q6OkN1cmxSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCZyZXF1
ZXN0LCBDdXJsUmVxdWVzdENsaWVudCogY2xpZW50LCBib29sIHNob3VsZFN1c3BlbmQsIGJvb2wg
ZW5hYmxlTXVsdGlwYXJ0LCBib29sIGNhcHR1cmVFeHRyYU1ldHJpY3MsIE1lc3NhZ2VRdWV1ZTxG
dW5jdGlvbjx2b2lkKCk+PiogbWVzc2FnZVF1ZXVlKQogICAgIDogbV9yZXF1ZXN0KHJlcXVlc3Qu
aXNvbGF0ZWRDb3B5KCkpCiAgICAgLCBtX2NsaWVudChjbGllbnQpCiAgICAgLCBtX3Nob3VsZFN1
c3BlbmQoc2hvdWxkU3VzcGVuZCkKICAgICAsIG1fZW5hYmxlTXVsdGlwYXJ0KGVuYWJsZU11bHRp
cGFydCkKICAgICAsIG1fZm9ybURhdGFTdHJlYW0obV9yZXF1ZXN0Lmh0dHBCb2R5KCkpCiAgICAg
LCBtX21lc3NhZ2VRdWV1ZShtZXNzYWdlUXVldWUpCisgICAgLCBtX2NhcHR1cmVFeHRyYU1ldHJp
Y3MoY2FwdHVyZUV4dHJhTWV0cmljcykKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwog
fQpAQCAtNjcyLDExICs2NzMsMTUgQEAgdm9pZCBDdXJsUmVxdWVzdDo6dXBkYXRlTmV0d29ya0xv
YWRNZXRyaWNzKCkKIHsKICAgICBhdXRvIGRvbWFpbkxvb2t1cFN0YXJ0ID0gbV9wZXJmb3JtU3Rh
cnRUaW1lIC0gbV9yZXF1ZXN0U3RhcnRUaW1lOwogCi0gICAgaWYgKGF1dG8gbWV0cmljcyA9IG1f
Y3VybEhhbmRsZS0+Z2V0TmV0d29ya0xvYWRNZXRyaWNzKGRvbWFpbkxvb2t1cFN0YXJ0KSkKKyAg
ICBpZiAoYXV0byBtZXRyaWNzID0gbV9jdXJsSGFuZGxlLT5nZXROZXR3b3JrTG9hZE1ldHJpY3Mo
ZG9tYWluTG9va3VwU3RhcnQpKSB7CiAgICAgICAgIG1fbmV0d29ya0xvYWRNZXRyaWNzID0gKm1l
dHJpY3M7CiAKLSAgICBtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0SGVhZGVycyA9IG1fcmVx
dWVzdC5odHRwSGVhZGVyRmllbGRzKCk7Ci0gICAgbV9uZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9u
c2VCb2R5RGVjb2RlZFNpemUgPSBtX3RvdGFsUmVjZWl2ZWRTaXplOworICAgICAgICBpZiAobV9j
YXB0dXJlRXh0cmFNZXRyaWNzKSB7CisgICAgICAgICAgICBtX2N1cmxIYW5kbGUtPmFkZEV4dHJh
TmV0d29ya0xvYWRNZXRyaWNzKG1fbmV0d29ya0xvYWRNZXRyaWNzKTsKKyAgICAgICAgICAgIG1f
bmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RIZWFkZXJzID0gbV9yZXF1ZXN0Lmh0dHBIZWFkZXJG
aWVsZHMoKTsKKyAgICAgICAgICAgIG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlQm9keURl
Y29kZWRTaXplID0gbV90b3RhbFJlY2VpdmVkU2l6ZTsKKyAgICAgICAgfQorICAgIH0KIH0KIAog
dm9pZCBDdXJsUmVxdWVzdDo6ZW5hYmxlRG93bmxvYWRUb0ZpbGUoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuaAppbmRleCA4OGVlMmVl
ZmQzMi4uYTczYmMxZDE2ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY3VybC9DdXJsUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY3VybC9DdXJsUmVxdWVzdC5oCkBAIC02MCw5ICs2MCwxNCBAQCBwdWJsaWM6CiAgICAg
ICAgIFllcyA9IHRydWUKICAgICB9OwogCi0gICAgc3RhdGljIFJlZjxDdXJsUmVxdWVzdD4gY3Jl
YXRlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ3VybFJlcXVlc3RDbGllbnQmIGNs
aWVudCwgU2hvdWxkU3VzcGVuZCBzaG91bGRTdXNwZW5kID0gU2hvdWxkU3VzcGVuZDo6Tm8sIEVu
YWJsZU11bHRpcGFydCBlbmFibGVNdWx0aXBhcnQgPSBFbmFibGVNdWx0aXBhcnQ6Ok5vLCBNZXNz
YWdlUXVldWU8RnVuY3Rpb248dm9pZCgpPj4qIG1lc3NhZ2VRdWV1ZSA9IG51bGxwdHIpCisgICAg
ZW51bSBjbGFzcyBDYXB0dXJlTmV0d29ya0xvYWRNZXRyaWNzIDogdWludDhfdCB7CisgICAgICAg
IEJhc2ljLAorICAgICAgICBFeHRlbmRlZAorICAgIH07CisKKyAgICBzdGF0aWMgUmVmPEN1cmxS
ZXF1ZXN0PiBjcmVhdGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBDdXJsUmVxdWVz
dENsaWVudCYgY2xpZW50LCBTaG91bGRTdXNwZW5kIHNob3VsZFN1c3BlbmQgPSBTaG91bGRTdXNw
ZW5kOjpObywgRW5hYmxlTXVsdGlwYXJ0IGVuYWJsZU11bHRpcGFydCA9IEVuYWJsZU11bHRpcGFy
dDo6Tm8sIENhcHR1cmVOZXR3b3JrTG9hZE1ldHJpY3MgY2FwdHVyZU1ldHJpY3MgPSBDYXB0dXJl
TmV0d29ya0xvYWRNZXRyaWNzOjpCYXNpYywgTWVzc2FnZVF1ZXVlPEZ1bmN0aW9uPHZvaWQoKT4+
KiBtZXNzYWdlUXVldWUgPSBudWxscHRyKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgQ3VybFJlcXVlc3QocmVxdWVzdCwgJmNsaWVudCwgc2hvdWxkU3VzcGVuZCA9PSBTaG91
bGRTdXNwZW5kOjpZZXMsIGVuYWJsZU11bHRpcGFydCA9PSBFbmFibGVNdWx0aXBhcnQ6Olllcywg
bWVzc2FnZVF1ZXVlKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEN1cmxSZXF1ZXN0
KHJlcXVlc3QsICZjbGllbnQsIHNob3VsZFN1c3BlbmQgPT0gU2hvdWxkU3VzcGVuZDo6WWVzLCBl
bmFibGVNdWx0aXBhcnQgPT0gRW5hYmxlTXVsdGlwYXJ0OjpZZXMsIGNhcHR1cmVNZXRyaWNzID09
IENhcHR1cmVOZXR3b3JrTG9hZE1ldHJpY3M6OkV4dGVuZGVkLCBtZXNzYWdlUXVldWUpKTsKICAg
ICB9CiAKICAgICB2aXJ0dWFsIH5DdXJsUmVxdWVzdCgpID0gZGVmYXVsdDsKQEAgLTEwNCw3ICsx
MDksNyBAQCBwcml2YXRlOgogICAgICAgICBGaW5pc2hUcmFuc2ZlcgogICAgIH07CiAKLSAgICBD
dXJsUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDdXJsUmVxdWVzdENsaWVudCosIGJv
b2wsIGJvb2wsIE1lc3NhZ2VRdWV1ZTxGdW5jdGlvbjx2b2lkKCk+PiopOworICAgIEN1cmxSZXF1
ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEN1cmxSZXF1ZXN0Q2xpZW50KiwgYm9vbCBzaG91
bGRTdXNwZW5kLCBib29sIGVuYWJsZU11bHRpcGFydCwgYm9vbCBjYXB0dXJlRXh0ZW5kZWRNZXRy
aWNzLCBNZXNzYWdlUXVldWU8RnVuY3Rpb248dm9pZCgpPj4qKTsKIAogICAgIHZvaWQgcmV0YWlu
KCkgb3ZlcnJpZGUgeyByZWYoKTsgfQogICAgIHZvaWQgcmVsZWFzZSgpIG92ZXJyaWRlIHsgZGVy
ZWYoKTsgfQpAQCAtMjAxLDYgKzIwNiw3IEBAIHByaXZhdGU6CiAgICAgRmlsZVN5c3RlbTo6UGxh
dGZvcm1GaWxlSGFuZGxlIG1fZG93bmxvYWRGaWxlSGFuZGxlIHsgRmlsZVN5c3RlbTo6aW52YWxp
ZFBsYXRmb3JtRmlsZUhhbmRsZSB9OwogCiAgICAgQ2VydGlmaWNhdGVJbmZvIG1fY2VydGlmaWNh
dGVJbmZvOworICAgIGJvb2wgbV9jYXB0dXJlRXh0cmFNZXRyaWNzOwogICAgIE5ldHdvcmtMb2Fk
TWV0cmljcyBtX25ldHdvcmtMb2FkTWV0cmljczsKICAgICBNb25vdG9uaWNUaW1lIG1fcmVxdWVz
dFN0YXJ0VGltZSB7IE1vbm90b25pY1RpbWU6Om5hbigpIH07CiAgICAgTW9ub3RvbmljVGltZSBt
X3BlcmZvcm1TdGFydFRpbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCmluZGV4IGE0YmNlYjgyN2E1
Li41ZGYzNjc2NDE0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKQEAgLTE1NCw3ICsxNTQsNyBA
QCBSZWY8Q3VybFJlcXVlc3Q+IFJlc291cmNlSGFuZGxlOjpjcmVhdGVDdXJsUmVxdWVzdChSZXNv
dXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBSZQogICAgIH0KIAogICAgIEN1cmxSZXF1ZXN0OjpTaG91
bGRTdXNwZW5kIHNob3VsZFN1c3BlbmQgPSBkLT5tX2RlZmVyc0xvYWRpbmcgPyBDdXJsUmVxdWVz
dDo6U2hvdWxkU3VzcGVuZDo6WWVzIDogQ3VybFJlcXVlc3Q6OlNob3VsZFN1c3BlbmQ6Ok5vOwot
ICAgIGF1dG8gY3VybFJlcXVlc3QgPSBDdXJsUmVxdWVzdDo6Y3JlYXRlKHJlcXVlc3QsICpkZWxl
Z2F0ZSgpLCBzaG91bGRTdXNwZW5kLCBDdXJsUmVxdWVzdDo6RW5hYmxlTXVsdGlwYXJ0OjpZZXMs
IGQtPm1fbWVzc2FnZVF1ZXVlKTsKKyAgICBhdXRvIGN1cmxSZXF1ZXN0ID0gQ3VybFJlcXVlc3Q6
OmNyZWF0ZShyZXF1ZXN0LCAqZGVsZWdhdGUoKSwgc2hvdWxkU3VzcGVuZCwgQ3VybFJlcXVlc3Q6
OkVuYWJsZU11bHRpcGFydDo6WWVzLCBDdXJsUmVxdWVzdDo6Q2FwdHVyZU5ldHdvcmtMb2FkTWV0
cmljczo6QmFzaWMsIGQtPm1fbWVzc2FnZVF1ZXVlKTsKICAgICAKICAgICByZXR1cm4gY3VybFJl
cXVlc3Q7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU5ZDIwZGJmOWI5Li4yOTc1NjgzOTZmOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNiBAQAorMjAxOC0wOS0xNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1
a2lAc29ueS5jb20+CisKKyAgICAgICAgW0N1cmxdIExpbWl0IGNhcHR1cmluZyBleHRyYSBtZXRy
aWNzIGZvciBXZWIgSW5zcGVjdG9yIHdoZW4gbm90IHJlcXVpcmVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5NTIwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzcGVjdCB0aGUgdmFsdWUgb2YgTmV0
d29ya0RhdGFUYXNrOjpzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSB0byBy
ZWR1Y2UgdGhlIHByb2Nlc3MKKyAgICAgICAgdGltZSB3aGVuIHRoZXkgYXJlIG5vdCBuZWVkZWQu
CisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0YVRhc2tDdXJsOjpjcmVhdGVDdXJsUmVxdWVz
dCk6CisKIDIwMTgtMDktMTcgIEJhc3VrZSBTdXp1a2kgIDxCYXN1a2UuU3V6dWtpQHNvbnkuY29t
PgogCiAgICAgICAgIFtDdXJsXSBSZXNwb25kIHdpdGggcmVxdWVzdGVkIGF1dGhlbnRpY2F0aW9u
IHNjaGVtZSBmb3IgYXV0aGVudGljYXRpb24gY2hhbGxlbmdlLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3BwIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3BwCmlu
ZGV4IDRkNTA0Njc0NWNmLi4zY2JmMzM1ZTExNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvY3VybC9OZXR3b3JrRGF0YVRhc2tDdXJsLmNwcApAQCAtMTM4
LDcgKzEzOCw4IEBAIFJlZjxDdXJsUmVxdWVzdD4gTmV0d29ya0RhdGFUYXNrQ3VybDo6Y3JlYXRl
Q3VybFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzCiAKICAgICAvLyBDcmVhdGVzIGEg
Q3VybFJlcXVlc3QgaW4gc3VzcGVuZGVkIHN0YXRlLgogICAgIC8vIFRoZW4sIE5ldHdvcmtEYXRh
VGFza0N1cmw6OnJlc3VtZSgpIHdpbGwgYmUgY2FsbGVkIGFuZCBjb21tdW5pY2F0aW9uIHJlc3Vt
ZXMuCi0gICAgcmV0dXJuIEN1cmxSZXF1ZXN0OjpjcmVhdGUocmVxdWVzdCwgKnRoaXMsIEN1cmxS
ZXF1ZXN0OjpTaG91bGRTdXNwZW5kOjpZZXMpOworICAgIGNvbnN0IGF1dG8gY2FwdHVyZU1ldHJp
Y3MgPSBzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSA/IEN1cmxSZXF1ZXN0
OjpDYXB0dXJlTmV0d29ya0xvYWRNZXRyaWNzOjpFeHRlbmRlZCA6IEN1cmxSZXF1ZXN0OjpDYXB0
dXJlTmV0d29ya0xvYWRNZXRyaWNzOjpCYXNpYzsKKyAgICByZXR1cm4gQ3VybFJlcXVlc3Q6OmNy
ZWF0ZShyZXF1ZXN0LCAqdGhpcywgQ3VybFJlcXVlc3Q6OlNob3VsZFN1c3BlbmQ6OlllcywgQ3Vy
bFJlcXVlc3Q6OkVuYWJsZU11bHRpcGFydDo6Tm8sIGNhcHR1cmVNZXRyaWNzKTsKIH0KIAogdm9p
ZCBOZXR3b3JrRGF0YVRhc2tDdXJsOjpjdXJsRGlkU2VuZERhdGEoQ3VybFJlcXVlc3QmLCB1bnNp
Z25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1NlbnQsIHVuc2lnbmVkIGxvbmcgbG9uZyB0b3RhbEJ5
dGVzRXhwZWN0ZWRUb1NlbmQpCg==
</data>
<flag name="review"
          id="367452"
          type_id="1"
          status="+"
          setter="achristensen"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>350053</attachid>
            <date>2018-09-18 14:13:48 -0700</date>
            <delta_ts>2018-09-18 14:52:18 -0700</delta_ts>
            <desc>PATCH</desc>
            <filename>189520.diff</filename>
            <type>text/plain</type>
            <size>13413</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxYjEyY2Q2OGQ0Zi4uY2Y2NjMyNTk5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAxOC0wOS0xOCAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29u
eS5jb20+CisKKyAgICAgICAgW0N1cmxdIExpbWl0IGNhcHR1cmluZyBleHRyYSBtZXRyaWNzIGZv
ciBXZWIgSW5zcGVjdG9yIHdoZW4gbm90IHJlcXVpcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5NTIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBSZXNwZWN0IHRoZSB2YWx1ZSBvZiBOZXR3b3Jr
RGF0YVRhc2s6OnNob3VsZENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljcygpIHRvIHJlZHVj
ZSB0aGUgcHJvY2VzcworICAgICAgICB0aW1lIHdoZW4gdGhleSBhcmUgbm90IG5lZWRlZC4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGVyZSdzIG5vIGJlaGF2aW9yIGNoYW5nZS4K
KworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpDdXJsSGFuZGxlOjpnZXROZXR3b3JrTG9hZE1ldHJpY3MpOgorICAgICAg
ICAoV2ViQ29yZTo6Q3VybEhhbmRsZTo6YWRkRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MpOgorICAg
ICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsQ29udGV4dC5oOgorICAgICAgICAqIHBs
YXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
dXJsUmVxdWVzdDo6Q3VybFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6
OnVwZGF0ZU5ldHdvcmtMb2FkTWV0cmljcyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9j
dXJsL0N1cmxSZXF1ZXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVzdDo6Y3JlYXRl
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOjpjcmVhdGVDdXJsUmVxdWVzdCk6
CisKIDIwMTgtMDktMTcgIEZyZWRlcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgogCiAgICAg
ICAgIEJ1aWxkIGVycm9yIGluIEltYWdlQnVmZmVyQ0cgd2hlbiBjb21waWxlZCB3aXRoIElPU3Vy
ZmFjZVBvb2wKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3Vy
bC9DdXJsQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybENvbnRleHQuY3BwCmluZGV4IDljODc4MDdhMGIwLi41YzhhZDU4OWYzYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuY3Bw
CkBAIC03MzMsMTMgKzczMyw2IEBAIHN0ZDo6b3B0aW9uYWw8TmV0d29ya0xvYWRNZXRyaWNzPiBD
dXJsSGFuZGxlOjpnZXROZXR3b3JrTG9hZE1ldHJpY3MoY29uc3QgV1RGOjpTCiAgICAgZG91Ymxl
IGNvbm5lY3QgPSAwLjA7CiAgICAgZG91YmxlIGFwcENvbm5lY3QgPSAwLjA7CiAgICAgZG91Ymxl
IHN0YXJ0VHJhbnNmZXIgPSAwLjA7Ci0gICAgbG9uZyByZXF1ZXN0SGVhZGVyU2l6ZSA9IDA7Ci0g
ICAgY3VybF9vZmZfdCByZXF1ZXN0Qm9keVNpemUgPSAwOwotICAgIGxvbmcgcmVzcG9uc2VIZWFk
ZXJTaXplID0gMDsKLSAgICBjdXJsX29mZl90IHJlc3BvbnNlQm9keVNpemUgPSAwOwotICAgIGxv
bmcgdmVyc2lvbiA9IDA7Ci0gICAgY2hhciogaXAgPSBudWxscHRyOwotICAgIGxvbmcgcG9ydCA9
IDA7CiAKICAgICBpZiAoIW1faGFuZGxlKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwpA
QCAtNzYwLDQ5ICs3NTMsNjIgQEAgc3RkOjpvcHRpb25hbDxOZXR3b3JrTG9hZE1ldHJpY3M+IEN1
cmxIYW5kbGU6OmdldE5ldHdvcmtMb2FkTWV0cmljcyhjb25zdCBXVEY6OlMKICAgICBpZiAoZXJy
b3JDb2RlICE9IENVUkxFX09LKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCisgICAg
TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljczsKKworICAgIG5ldHdvcmtMb2Fk
TWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA9IGRvbWFpbkxvb2t1cFN0YXJ0OworICAgIG5ldHdv
cmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBFbmQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29u
ZHMobmFtZUxvb2t1cCk7CisgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCA9IGRv
bWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhuYW1lTG9va3VwKTsKKyAgICBuZXR3b3JrTG9hZE1l
dHJpY3MuY29ubmVjdEVuZCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhjb25uZWN0KTsK
KworICAgIGlmIChhcHBDb25uZWN0ID4gMC4wKSB7CisgICAgICAgIG5ldHdvcmtMb2FkTWV0cmlj
cy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBkb21haW5Mb29rdXBTdGFydCArIFNlY29uZHMoY29u
bmVjdCk7CisgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kID0gZG9tYWluTG9v
a3VwU3RhcnQgKyBTZWNvbmRzKGFwcENvbm5lY3QpOworICAgIH0KKworICAgIG5ldHdvcmtMb2Fk
TWV0cmljcy5yZXF1ZXN0U3RhcnQgPSBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZDsKKyAg
ICBuZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsg
U2Vjb25kcyhzdGFydFRyYW5zZmVyKTsKKworICAgIHJldHVybiBuZXR3b3JrTG9hZE1ldHJpY3M7
Cit9CisKK3ZvaWQgQ3VybEhhbmRsZTo6YWRkRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoTmV0d29y
a0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCit7CisgICAgbG9uZyByZXF1ZXN0SGVh
ZGVyU2l6ZSA9IDA7CisgICAgY3VybF9vZmZfdCByZXF1ZXN0Qm9keVNpemUgPSAwOworICAgIGxv
bmcgcmVzcG9uc2VIZWFkZXJTaXplID0gMDsKKyAgICBjdXJsX29mZl90IHJlc3BvbnNlQm9keVNp
emUgPSAwOworICAgIGxvbmcgdmVyc2lvbiA9IDA7CisgICAgY2hhciogaXAgPSBudWxscHRyOwor
ICAgIGxvbmcgcG9ydCA9IDA7CisKICAgICAvLyBGSVhNRTogR2V0cyB0b3RhbCByZXF1ZXN0IHNp
emUgbm90IGp1c3QgaGVhZGVycyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTg4MzYzCi0gICAgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8obV9oYW5kbGUsIENV
UkxJTkZPX1JFUVVFU1RfU0laRSwgJnJlcXVlc3RIZWFkZXJTaXplKTsKKyAgICBDVVJMY29kZSBl
cnJvckNvZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyhtX2hhbmRsZSwgQ1VSTElORk9fUkVRVUVTVF9T
SVpFLCAmcmVxdWVzdEhlYWRlclNpemUpOwogICAgIGlmIChlcnJvckNvZGUgIT0gQ1VSTEVfT0sp
Ci0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVybjsKIAogICAgIGVy
cm9yQ29kZSA9IGN1cmxfZWFzeV9nZXRpbmZvKG1faGFuZGxlLCBDVVJMSU5GT19TSVpFX1VQTE9B
RF9ULCAmcmVxdWVzdEJvZHlTaXplKTsKICAgICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQot
ICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgICAgICByZXR1cm47CiAKICAgICBlcnJv
ckNvZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyhtX2hhbmRsZSwgQ1VSTElORk9fSEVBREVSX1NJWkUs
ICZyZXNwb25zZUhlYWRlclNpemUpOwogICAgIGlmIChlcnJvckNvZGUgIT0gQ1VSTEVfT0spCi0g
ICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVybjsKIAogICAgIGVycm9y
Q29kZSA9IGN1cmxfZWFzeV9nZXRpbmZvKG1faGFuZGxlLCBDVVJMSU5GT19TSVpFX0RPV05MT0FE
X1QsICZyZXNwb25zZUJvZHlTaXplKTsKICAgICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQot
ICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgICAgICByZXR1cm47CiAKICAgICBlcnJv
ckNvZGUgPSBjdXJsX2Vhc3lfZ2V0aW5mbyhtX2hhbmRsZSwgQ1VSTElORk9fUFJJTUFSWV9JUCwg
JmlwKTsKICAgICBpZiAoZXJyb3JDb2RlICE9IENVUkxFX09LKQotICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OworICAgICAgICByZXR1cm47CiAKICAgICBlcnJvckNvZGUgPSBjdXJsX2Vhc3lf
Z2V0aW5mbyhtX2hhbmRsZSwgQ1VSTElORk9fUFJJTUFSWV9QT1JULCAmcG9ydCk7CiAgICAgaWYg
KGVycm9yQ29kZSAhPSBDVVJMRV9PSykKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAg
ICAgICAgcmV0dXJuOwogCiAgICAgZXJyb3JDb2RlID0gY3VybF9lYXN5X2dldGluZm8obV9oYW5k
bGUsIENVUkxJTkZPX0hUVFBfVkVSU0lPTiwgJnZlcnNpb24pOwogICAgIGlmIChlcnJvckNvZGUg
IT0gQ1VSTEVfT0spCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0KLSAgICBOZXR3b3Jr
TG9hZE1ldHJpY3MgbmV0d29ya0xvYWRNZXRyaWNzOwotCi0gICAgbmV0d29ya0xvYWRNZXRyaWNz
LmRvbWFpbkxvb2t1cFN0YXJ0ID0gZG9tYWluTG9va3VwU3RhcnQ7Ci0gICAgbmV0d29ya0xvYWRN
ZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhuYW1l
TG9va3VwKTsKLSAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdFN0YXJ0ID0gZG9tYWluTG9v
a3VwU3RhcnQgKyBTZWNvbmRzKG5hbWVMb29rdXApOwotICAgIG5ldHdvcmtMb2FkTWV0cmljcy5j
b25uZWN0RW5kID0gZG9tYWluTG9va3VwU3RhcnQgKyBTZWNvbmRzKGNvbm5lY3QpOwotCi0gICAg
aWYgKGFwcENvbm5lY3QgPiAwLjApIHsKLSAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnNlY3Vy
ZUNvbm5lY3Rpb25TdGFydCA9IGRvbWFpbkxvb2t1cFN0YXJ0ICsgU2Vjb25kcyhjb25uZWN0KTsK
LSAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPSBkb21haW5Mb29rdXBTdGFy
dCArIFNlY29uZHMoYXBwQ29ubmVjdCk7Ci0gICAgfQotCi0gICAgbmV0d29ya0xvYWRNZXRyaWNz
LnJlcXVlc3RTdGFydCA9IG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kOwotICAgIG5ldHdv
cmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0ID0gZG9tYWluTG9va3VwU3RhcnQgKyBTZWNvbmRz
KHN0YXJ0VHJhbnNmZXIpOworICAgICAgICByZXR1cm47CiAKICAgICBuZXR3b3JrTG9hZE1ldHJp
Y3MucmVxdWVzdEhlYWRlckJ5dGVzU2VudCA9IHJlcXVlc3RIZWFkZXJTaXplOwogICAgIG5ldHdv
cmtMb2FkTWV0cmljcy5yZXF1ZXN0Qm9keUJ5dGVzU2VudCA9IHJlcXVlc3RCb2R5U2l6ZTsKQEAg
LTgyMSw4ICs4MjcsNiBAQCBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtMb2FkTWV0cmljcz4gQ3VybEhh
bmRsZTo6Z2V0TmV0d29ya0xvYWRNZXRyaWNzKGNvbnN0IFdURjo6UwogICAgICAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MucHJvdG9jb2wgPSBodHRwVmVyc2lvbjExOwogICAgIGVsc2UgaWYgKHZlcnNp
b24gPT0gQ1VSTF9IVFRQX1ZFUlNJT05fMikKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnBy
b3RvY29sID0gaHR0cFZlcnNpb24yOwotCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkTWV0cmljczsK
IH0KIAogc3RkOjpvcHRpb25hbDxDZXJ0aWZpY2F0ZUluZm8+IEN1cmxIYW5kbGU6OmNlcnRpZmlj
YXRlSW5mbygpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL2N1cmwvQ3VybENvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y3VybC9DdXJsQ29udGV4dC5oCmluZGV4IDdkOTcxMWNhZjM3Li4zNzMyNjAxNzliOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDb250ZXh0LmgK
QEAgLTI4Miw2ICsyODIsNyBAQCBwdWJsaWM6CiAgICAgc3RkOjpvcHRpb25hbDxsb25nPiBnZXRQ
cm94eUF1dGhBdmFpbCgpOwogICAgIHN0ZDo6b3B0aW9uYWw8bG9uZz4gZ2V0SHR0cFZlcnNpb24o
KTsKICAgICBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtMb2FkTWV0cmljcz4gZ2V0TmV0d29ya0xvYWRN
ZXRyaWNzKGNvbnN0IFdURjo6U2Vjb25kcyYgZG9tYWluTG9va3VwU3RhcnQpOworICAgIHZvaWQg
YWRkRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoTmV0d29ya0xvYWRNZXRyaWNzJik7CiAKICAgICBp
bnQgc3NsRXJyb3JzKCkgY29uc3Q7CiAgICAgc3RkOjpvcHRpb25hbDxDZXJ0aWZpY2F0ZUluZm8+
IGNlcnRpZmljYXRlSW5mbygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5jcHAKaW5kZXggN2YxMTIzNGYxOTUuLjQ2NTQy
YTdmNzYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3Vy
bC9DdXJsUmVxdWVzdC5jcHAKQEAgLTM4LDEzICszOCwxNCBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLUN1cmxSZXF1ZXN0OjpDdXJsUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmcmVx
dWVzdCwgQ3VybFJlcXVlc3RDbGllbnQqIGNsaWVudCwgYm9vbCBzaG91bGRTdXNwZW5kLCBib29s
IGVuYWJsZU11bHRpcGFydCwgTWVzc2FnZVF1ZXVlPEZ1bmN0aW9uPHZvaWQoKT4+KiBtZXNzYWdl
UXVldWUpCitDdXJsUmVxdWVzdDo6Q3VybFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JnJl
cXVlc3QsIEN1cmxSZXF1ZXN0Q2xpZW50KiBjbGllbnQsIFNob3VsZFN1c3BlbmQgc2hvdWxkU3Vz
cGVuZCwgRW5hYmxlTXVsdGlwYXJ0IGVuYWJsZU11bHRpcGFydCwgQ2FwdHVyZU5ldHdvcmtMb2Fk
TWV0cmljcyBjYXB0dXJlRXh0cmFNZXRyaWNzLCBNZXNzYWdlUXVldWU8RnVuY3Rpb248dm9pZCgp
Pj4qIG1lc3NhZ2VRdWV1ZSkKICAgICA6IG1fcmVxdWVzdChyZXF1ZXN0Lmlzb2xhdGVkQ29weSgp
KQogICAgICwgbV9jbGllbnQoY2xpZW50KQotICAgICwgbV9zaG91bGRTdXNwZW5kKHNob3VsZFN1
c3BlbmQpCi0gICAgLCBtX2VuYWJsZU11bHRpcGFydChlbmFibGVNdWx0aXBhcnQpCisgICAgLCBt
X3Nob3VsZFN1c3BlbmQoc2hvdWxkU3VzcGVuZCA9PSBTaG91bGRTdXNwZW5kOjpZZXMpCisgICAg
LCBtX2VuYWJsZU11bHRpcGFydChlbmFibGVNdWx0aXBhcnQgPT0gRW5hYmxlTXVsdGlwYXJ0OjpZ
ZXMpCiAgICAgLCBtX2Zvcm1EYXRhU3RyZWFtKG1fcmVxdWVzdC5odHRwQm9keSgpKQogICAgICwg
bV9tZXNzYWdlUXVldWUobWVzc2FnZVF1ZXVlKQorICAgICwgbV9jYXB0dXJlRXh0cmFNZXRyaWNz
KGNhcHR1cmVFeHRyYU1ldHJpY3MgPT0gQ2FwdHVyZU5ldHdvcmtMb2FkTWV0cmljczo6RXh0ZW5k
ZWQpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIH0KQEAgLTY3MiwxMSArNjczLDE1
IEBAIHZvaWQgQ3VybFJlcXVlc3Q6OnVwZGF0ZU5ldHdvcmtMb2FkTWV0cmljcygpCiB7CiAgICAg
YXV0byBkb21haW5Mb29rdXBTdGFydCA9IG1fcGVyZm9ybVN0YXJ0VGltZSAtIG1fcmVxdWVzdFN0
YXJ0VGltZTsKIAotICAgIGlmIChhdXRvIG1ldHJpY3MgPSBtX2N1cmxIYW5kbGUtPmdldE5ldHdv
cmtMb2FkTWV0cmljcyhkb21haW5Mb29rdXBTdGFydCkpCisgICAgaWYgKGF1dG8gbWV0cmljcyA9
IG1fY3VybEhhbmRsZS0+Z2V0TmV0d29ya0xvYWRNZXRyaWNzKGRvbWFpbkxvb2t1cFN0YXJ0KSkg
ewogICAgICAgICBtX25ldHdvcmtMb2FkTWV0cmljcyA9ICptZXRyaWNzOwogCi0gICAgbV9uZXR3
b3JrTG9hZE1ldHJpY3MucmVxdWVzdEhlYWRlcnMgPSBtX3JlcXVlc3QuaHR0cEhlYWRlckZpZWxk
cygpOwotICAgIG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlQm9keURlY29kZWRTaXplID0g
bV90b3RhbFJlY2VpdmVkU2l6ZTsKKyAgICAgICAgaWYgKG1fY2FwdHVyZUV4dHJhTWV0cmljcykg
eworICAgICAgICAgICAgbV9jdXJsSGFuZGxlLT5hZGRFeHRyYU5ldHdvcmtMb2FkTWV0cmljcyht
X25ldHdvcmtMb2FkTWV0cmljcyk7CisgICAgICAgICAgICBtX25ldHdvcmtMb2FkTWV0cmljcy5y
ZXF1ZXN0SGVhZGVycyA9IG1fcmVxdWVzdC5odHRwSGVhZGVyRmllbGRzKCk7CisgICAgICAgICAg
ICBtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUJvZHlEZWNvZGVkU2l6ZSA9IG1fdG90YWxS
ZWNlaXZlZFNpemU7CisgICAgICAgIH0KKyAgICB9CiB9CiAKIHZvaWQgQ3VybFJlcXVlc3Q6OmVu
YWJsZURvd25sb2FkVG9GaWxlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9jdXJsL0N1cmxSZXF1ZXN0LmgKaW5kZXggODhlZTJlZWZkMzIuLmZkYzRiNTkwYzE0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVl
c3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVl
c3QuaApAQCAtNjAsOSArNjAsMTQgQEAgcHVibGljOgogICAgICAgICBZZXMgPSB0cnVlCiAgICAg
fTsKIAotICAgIHN0YXRpYyBSZWY8Q3VybFJlcXVlc3Q+IGNyZWF0ZShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIEN1cmxSZXF1ZXN0Q2xpZW50JiBjbGllbnQsIFNob3VsZFN1c3BlbmQg
c2hvdWxkU3VzcGVuZCA9IFNob3VsZFN1c3BlbmQ6Ok5vLCBFbmFibGVNdWx0aXBhcnQgZW5hYmxl
TXVsdGlwYXJ0ID0gRW5hYmxlTXVsdGlwYXJ0OjpObywgTWVzc2FnZVF1ZXVlPEZ1bmN0aW9uPHZv
aWQoKT4+KiBtZXNzYWdlUXVldWUgPSBudWxscHRyKQorICAgIGVudW0gY2xhc3MgQ2FwdHVyZU5l
dHdvcmtMb2FkTWV0cmljcyA6IHVpbnQ4X3QgeworICAgICAgICBCYXNpYywKKyAgICAgICAgRXh0
ZW5kZWQKKyAgICB9OworCisgICAgc3RhdGljIFJlZjxDdXJsUmVxdWVzdD4gY3JlYXRlKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ3VybFJlcXVlc3RDbGllbnQmIGNsaWVudCwgU2hv
dWxkU3VzcGVuZCBzaG91bGRTdXNwZW5kID0gU2hvdWxkU3VzcGVuZDo6Tm8sIEVuYWJsZU11bHRp
cGFydCBlbmFibGVNdWx0aXBhcnQgPSBFbmFibGVNdWx0aXBhcnQ6Ok5vLCBDYXB0dXJlTmV0d29y
a0xvYWRNZXRyaWNzIGNhcHR1cmVNZXRyaWNzID0gQ2FwdHVyZU5ldHdvcmtMb2FkTWV0cmljczo6
QmFzaWMsIE1lc3NhZ2VRdWV1ZTxGdW5jdGlvbjx2b2lkKCk+PiogbWVzc2FnZVF1ZXVlID0gbnVs
bHB0cikKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEN1cmxSZXF1ZXN0KHJl
cXVlc3QsICZjbGllbnQsIHNob3VsZFN1c3BlbmQgPT0gU2hvdWxkU3VzcGVuZDo6WWVzLCBlbmFi
bGVNdWx0aXBhcnQgPT0gRW5hYmxlTXVsdGlwYXJ0OjpZZXMsIG1lc3NhZ2VRdWV1ZSkpOworICAg
ICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDdXJsUmVxdWVzdChyZXF1ZXN0LCAmY2xpZW50LCBz
aG91bGRTdXNwZW5kLCBlbmFibGVNdWx0aXBhcnQsIGNhcHR1cmVNZXRyaWNzLCBtZXNzYWdlUXVl
dWUpKTsKICAgICB9CiAKICAgICB2aXJ0dWFsIH5DdXJsUmVxdWVzdCgpID0gZGVmYXVsdDsKQEAg
LTEwNCw3ICsxMDksNyBAQCBwcml2YXRlOgogICAgICAgICBGaW5pc2hUcmFuc2ZlcgogICAgIH07
CiAKLSAgICBDdXJsUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDdXJsUmVxdWVzdENs
aWVudCosIGJvb2wsIGJvb2wsIE1lc3NhZ2VRdWV1ZTxGdW5jdGlvbjx2b2lkKCk+PiopOworICAg
IEN1cmxSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEN1cmxSZXF1ZXN0Q2xpZW50Kiwg
U2hvdWxkU3VzcGVuZCwgRW5hYmxlTXVsdGlwYXJ0LCBDYXB0dXJlTmV0d29ya0xvYWRNZXRyaWNz
LCBNZXNzYWdlUXVldWU8RnVuY3Rpb248dm9pZCgpPj4qKTsKIAogICAgIHZvaWQgcmV0YWluKCkg
b3ZlcnJpZGUgeyByZWYoKTsgfQogICAgIHZvaWQgcmVsZWFzZSgpIG92ZXJyaWRlIHsgZGVyZWYo
KTsgfQpAQCAtMjAxLDYgKzIwNiw3IEBAIHByaXZhdGU6CiAgICAgRmlsZVN5c3RlbTo6UGxhdGZv
cm1GaWxlSGFuZGxlIG1fZG93bmxvYWRGaWxlSGFuZGxlIHsgRmlsZVN5c3RlbTo6aW52YWxpZFBs
YXRmb3JtRmlsZUhhbmRsZSB9OwogCiAgICAgQ2VydGlmaWNhdGVJbmZvIG1fY2VydGlmaWNhdGVJ
bmZvOworICAgIGJvb2wgbV9jYXB0dXJlRXh0cmFNZXRyaWNzOwogICAgIE5ldHdvcmtMb2FkTWV0
cmljcyBtX25ldHdvcmtMb2FkTWV0cmljczsKICAgICBNb25vdG9uaWNUaW1lIG1fcmVxdWVzdFN0
YXJ0VGltZSB7IE1vbm90b25pY1RpbWU6Om5hbigpIH07CiAgICAgTW9ub3RvbmljVGltZSBtX3Bl
cmZvcm1TdGFydFRpbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCmluZGV4IGE0YmNlYjgyN2E1Li41
ZGYzNjc2NDE0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
dXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKQEAgLTE1NCw3ICsxNTQsNyBAQCBS
ZWY8Q3VybFJlcXVlc3Q+IFJlc291cmNlSGFuZGxlOjpjcmVhdGVDdXJsUmVxdWVzdChSZXNvdXJj
ZVJlcXVlc3QmJiByZXF1ZXN0LCBSZQogICAgIH0KIAogICAgIEN1cmxSZXF1ZXN0OjpTaG91bGRT
dXNwZW5kIHNob3VsZFN1c3BlbmQgPSBkLT5tX2RlZmVyc0xvYWRpbmcgPyBDdXJsUmVxdWVzdDo6
U2hvdWxkU3VzcGVuZDo6WWVzIDogQ3VybFJlcXVlc3Q6OlNob3VsZFN1c3BlbmQ6Ok5vOwotICAg
IGF1dG8gY3VybFJlcXVlc3QgPSBDdXJsUmVxdWVzdDo6Y3JlYXRlKHJlcXVlc3QsICpkZWxlZ2F0
ZSgpLCBzaG91bGRTdXNwZW5kLCBDdXJsUmVxdWVzdDo6RW5hYmxlTXVsdGlwYXJ0OjpZZXMsIGQt
Pm1fbWVzc2FnZVF1ZXVlKTsKKyAgICBhdXRvIGN1cmxSZXF1ZXN0ID0gQ3VybFJlcXVlc3Q6OmNy
ZWF0ZShyZXF1ZXN0LCAqZGVsZWdhdGUoKSwgc2hvdWxkU3VzcGVuZCwgQ3VybFJlcXVlc3Q6OkVu
YWJsZU11bHRpcGFydDo6WWVzLCBDdXJsUmVxdWVzdDo6Q2FwdHVyZU5ldHdvcmtMb2FkTWV0cmlj
czo6QmFzaWMsIGQtPm1fbWVzc2FnZVF1ZXVlKTsKICAgICAKICAgICByZXR1cm4gY3VybFJlcXVl
c3Q7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IDU5ZDIwZGJmOWI5Li4yOTc1NjgzOTZmOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNiBAQAorMjAxOC0wOS0xOCAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lA
c29ueS5jb20+CisKKyAgICAgICAgW0N1cmxdIExpbWl0IGNhcHR1cmluZyBleHRyYSBtZXRyaWNz
IGZvciBXZWIgSW5zcGVjdG9yIHdoZW4gbm90IHJlcXVpcmVkLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5NTIwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBSZXNwZWN0IHRoZSB2YWx1ZSBvZiBOZXR3
b3JrRGF0YVRhc2s6OnNob3VsZENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljcygpIHRvIHJl
ZHVjZSB0aGUgcHJvY2VzcworICAgICAgICB0aW1lIHdoZW4gdGhleSBhcmUgbm90IG5lZWRlZC4K
KworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHA6
CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0N1cmw6OmNyZWF0ZUN1cmxSZXF1ZXN0
KToKKwogMjAxOC0wOS0xNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29ueS5jb20+
CiAKICAgICAgICAgW0N1cmxdIFJlc3BvbmQgd2l0aCByZXF1ZXN0ZWQgYXV0aGVudGljYXRpb24g
c2NoZW1lIGZvciBhdXRoZW50aWNhdGlvbiBjaGFsbGVuZ2UuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHAKaW5k
ZXggNGQ1MDQ2NzQ1Y2YuLjNjYmYzMzVlMTE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3BwCkBAIC0xMzgs
NyArMTM4LDggQEAgUmVmPEN1cmxSZXF1ZXN0PiBOZXR3b3JrRGF0YVRhc2tDdXJsOjpjcmVhdGVD
dXJsUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXMKIAogICAgIC8vIENyZWF0ZXMgYSBD
dXJsUmVxdWVzdCBpbiBzdXNwZW5kZWQgc3RhdGUuCiAgICAgLy8gVGhlbiwgTmV0d29ya0RhdGFU
YXNrQ3VybDo6cmVzdW1lKCkgd2lsbCBiZSBjYWxsZWQgYW5kIGNvbW11bmljYXRpb24gcmVzdW1l
cy4KLSAgICByZXR1cm4gQ3VybFJlcXVlc3Q6OmNyZWF0ZShyZXF1ZXN0LCAqdGhpcywgQ3VybFJl
cXVlc3Q6OlNob3VsZFN1c3BlbmQ6Olllcyk7CisgICAgY29uc3QgYXV0byBjYXB0dXJlTWV0cmlj
cyA9IHNob3VsZENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljcygpID8gQ3VybFJlcXVlc3Q6
OkNhcHR1cmVOZXR3b3JrTG9hZE1ldHJpY3M6OkV4dGVuZGVkIDogQ3VybFJlcXVlc3Q6OkNhcHR1
cmVOZXR3b3JrTG9hZE1ldHJpY3M6OkJhc2ljOworICAgIHJldHVybiBDdXJsUmVxdWVzdDo6Y3Jl
YXRlKHJlcXVlc3QsICp0aGlzLCBDdXJsUmVxdWVzdDo6U2hvdWxkU3VzcGVuZDo6WWVzLCBDdXJs
UmVxdWVzdDo6RW5hYmxlTXVsdGlwYXJ0OjpObywgY2FwdHVyZU1ldHJpY3MpOwogfQogCiB2b2lk
IE5ldHdvcmtEYXRhVGFza0N1cmw6OmN1cmxEaWRTZW5kRGF0YShDdXJsUmVxdWVzdCYsIHVuc2ln
bmVkIGxvbmcgbG9uZyB0b3RhbEJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0
ZXNFeHBlY3RlZFRvU2VuZCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>