<?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>172432</bug_id>
          
          <creation_ts>2017-05-21 16:06:17 -0700</creation_ts>
          <short_desc>Web Inspector: Using &quot;break on all exceptions&quot; when throwing stack overflow hangs inspector</short_desc>
          <delta_ts>2017-06-21 14:32:49 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Saam Barati">saam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mattbaker</cc>
    
    <cc>msaboff</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1311171</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-05-21 16:06:17 -0700</bug_when>
    <thetext>e.g, if I enable &quot;Break on all exceptions&quot; and run this program, web inspector hangs for me. My guess is it&apos;s trying to do stuff above the JS stack at the time of stack overflow, which if true, is definitely not allowed.

```
let arg = 20
function f() {
    f(arg);
}

function recurse() {
    try {
        f();
    } catch(e) {
    }
    setTimeout(recurse, 0);
}
recurse();
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311460</commentid>
    <comment_count>1</comment_count>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2017-05-22 11:30:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/29870873&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321319</commentid>
    <comment_count>2</comment_count>
      <attachid>313459</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-06-20 17:25:35 -0700</bug_when>
    <thetext>Created attachment 313459
[PATCH] Proposed Fix v4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321334</commentid>
    <comment_count>3</comment_count>
      <attachid>313459</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-06-20 17:45:25 -0700</bug_when>
    <thetext>Comment on attachment 313459
[PATCH] Proposed Fix v4

r=me
Can you add a test that ensures we don&apos;t catch it in inspector?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321349</commentid>
    <comment_count>4</comment_count>
      <attachid>313459</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-06-20 18:41:56 -0700</bug_when>
    <thetext>Comment on attachment 313459
[PATCH] Proposed Fix v4

Oops, yes I totally meant to add a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321609</commentid>
    <comment_count>5</comment_count>
      <attachid>313546</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-06-21 13:53:27 -0700</bug_when>
    <thetext>Created attachment 313546
[PATCH] Proposed Fix - With Tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321612</commentid>
    <comment_count>6</comment_count>
      <attachid>313546</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-06-21 13:54:57 -0700</bug_when>
    <thetext>Comment on attachment 313546
[PATCH] Proposed Fix - With Tests

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

&gt; LayoutTests/inspector/debugger/no-pause-stack-overflow-exception.html:21
&gt; +    WebInspector.debuggerManager.assertionsBreakpoint.disabled = false;

I can drop the assertions breakpoint. I really just need the all exceptions one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321613</commentid>
    <comment_count>7</comment_count>
      <attachid>313547</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-06-21 13:57:24 -0700</bug_when>
    <thetext>Created attachment 313547
[PATCH] Proposed Fix - With Tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321634</commentid>
    <comment_count>8</comment_count>
      <attachid>313547</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-21 14:32:47 -0700</bug_when>
    <thetext>Comment on attachment 313547
[PATCH] Proposed Fix - With Tests

Clearing flags on attachment: 313547

Committed r218652: &lt;http://trac.webkit.org/changeset/218652&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321635</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-21 14:32:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313459</attachid>
            <date>2017-06-20 17:25:35 -0700</date>
            <delta_ts>2017-06-21 13:53:34 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix v4</desc>
            <filename>step-1.patch</filename>
            <type>text/plain</type>
            <size>5771</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGY2ZjIxNWM3NDViLi4zMTI0NDRhYmZlMyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTctMDYtMjAgIEpvc2Vw
aCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9y
OiBVc2luZyAiYnJlYWsgb24gYWxsIGV4Y2VwdGlvbnMiIHdoZW4gdGhyb3dpbmcgc3RhY2sgb3Zl
cmZsb3cgaGFuZ3MgaW5zcGVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzI0MzIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI5ODcwODczPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEF2b2lkIHBh
dXNpbmcgb24gU3RhY2tPdmVyZmxvdyBhbmQgT3V0T2ZNZW1vcnkgZXJyb3JzIHRvIGF2b2lkIGEg
aGFuZy4KKyAgICAgICAgV2Ugd2lsbCBwcm9jZWVkIHRvIGltcHJvdmUgZGVidWdnaW5nIG9mIHRo
ZXNlIGNhc2VzIGluIHRoZSBmb2xsb3ctdXAgYnVncy4KKworICAgICAgICAqIGRlYnVnZ2VyL0Rl
YnVnZ2VyLmNwcDoKKyAgICAgICAgKEpTQzo6RGVidWdnZXI6OmV4Y2VwdGlvbik6CisgICAgICAg
IElnbm9yZSBwYXVzaW5nIG9uIHRoZXNlIGVycm9ycy4KKworICAgICAgICAqIHJ1bnRpbWUvRXJy
b3JJbnN0YW5jZS5oOgorICAgICAgICAoSlNDOjpFcnJvckluc3RhbmNlOjpzZXRTdGFja092ZXJm
bG93RXJyb3IpOgorICAgICAgICAoSlNDOjpFcnJvckluc3RhbmNlOjppc1N0YWNrT3ZlcmZsb3dF
cnJvcik6CisgICAgICAgIChKU0M6OkVycm9ySW5zdGFuY2U6OnNldE91dE9mTWVtb3J5RXJyb3Ip
OgorICAgICAgICAoSlNDOjpFcnJvckluc3RhbmNlOjppc091dE9mTWVtb3J5RXJyb3IpOgorICAg
ICAgICAqIHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6OmNyZWF0
ZVN0YWNrT3ZlcmZsb3dFcnJvcik6CisgICAgICAgICogcnVudGltZS9FcnJvci5jcHA6CisgICAg
ICAgIChKU0M6OmNyZWF0ZU91dE9mTWVtb3J5RXJyb3IpOgorICAgICAgICBNYXJrIHRoZXNlIGtp
bmRzIG9mIGVycm9ycy4KKwogMjAxNy0wNi0xOSAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9A
YXBwbGUuY29tPgogCiAgICAgICAgIHRlc3QyNjI6IENvbXBsZXRpb24gdmFsdWVzIGZvciBjb250
cm9sIGZsb3cgZG8gbm90IG1hdGNoIHRoZSBzcGVjCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rl
YnVnZ2VyL0RlYnVnZ2VyLmNwcAppbmRleCA4ZjM5OTAxNzM5YS4uMzQ4YzY4YzE1MGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyLmNwcApAQCAtNzU3LDYgKzc1
NywxNiBAQCB2b2lkIERlYnVnZ2VyOjpleGNlcHRpb24oQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpT
VmFsdWUgZXhjZXB0aW9uLCBib29sIGhhc0NhdGNoSAogICAgIGlmIChtX2lzUGF1c2VkKQogICAg
ICAgICByZXR1cm47CiAKKyAgICBpZiAoSlNPYmplY3QqIG9iamVjdCA9IGpzRHluYW1pY0Nhc3Q8
SlNPYmplY3QqPihtX3ZtLCBleGNlcHRpb24pKSB7CisgICAgICAgIGlmIChvYmplY3QtPmlzRXJy
b3JJbnN0YW5jZSgpKSB7CisgICAgICAgICAgICBFcnJvckluc3RhbmNlKiBlcnJvciA9IHN0YXRp
Y19jYXN0PEVycm9ySW5zdGFuY2UqPihvYmplY3QpOworICAgICAgICAgICAgLy8gRklYTUU6IDxo
dHRwczovL3dlYmtpdC5vcmcvYi8xNzM2MjU+IFdlYiBJbnNwZWN0b3I6IFNob3VsZCBiZSBhYmxl
IHRvIHBhdXNlIGFuZCBkZWJ1ZyBhIFN0YWNrT3ZlcmZsb3cgRXhjZXB0aW9uCisgICAgICAgICAg
ICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE3MzYyNz4gV2ViIEluc3BlY3Rvcjog
U2hvdWxkIGJlIGFibGUgdG8gcGF1c2UgYW5kIGRlYnVnIGFuIE91dE9mTWVtb3J5IEV4Y2VwdGlv
bgorICAgICAgICAgICAgaWYgKGVycm9yLT5pc1N0YWNrT3ZlcmZsb3dFcnJvcigpIHx8IGVycm9y
LT5pc091dE9mTWVtb3J5RXJyb3IoKSkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICB9CisKICAgICBQYXVzZVJlYXNvbkRlY2xhcmF0aW9uIHJlYXNvbigqdGhpcywgUGF1
c2VkRm9yRXhjZXB0aW9uKTsKICAgICBpZiAobV9wYXVzZU9uRXhjZXB0aW9uc1N0YXRlID09IFBh
dXNlT25BbGxFeGNlcHRpb25zIHx8IChtX3BhdXNlT25FeGNlcHRpb25zU3RhdGUgPT0gUGF1c2VP
blVuY2F1Z2h0RXhjZXB0aW9ucyAmJiAhaGFzQ2F0Y2hIYW5kbGVyKSkgewogICAgICAgICBtX3Bh
dXNlQXROZXh0T3Bwb3J0dW5pdHkgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRXJyb3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RXJyb3IuY3BwCmluZGV4IDY0MTU3MzY3MDliLi4yYmNkZjE1Njc3OSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Vycm9yLmNwcApAQCAtMzAsMTEgKzMwLDExIEBACiAjaW5jbHVkZSAi
RnVuY3Rpb25Qcm90b3R5cGUuaCIKICNpbmNsdWRlICJJbnRlcnByZXRlci5oIgogI2luY2x1ZGUg
IkpTQXJyYXkuaCIKKyNpbmNsdWRlICJKU0NJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNGdW5jdGlv
bi5oIgogI2luY2x1ZGUgIkpTR2xvYmFsT2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNPYmplY3QuaCIK
ICNpbmNsdWRlICJKU1N0cmluZy5oIgotI2luY2x1ZGUgIkpTQ0lubGluZXMuaCIKICNpbmNsdWRl
ICJOYXRpdmVFcnJvckNvbnN0cnVjdG9yLmgiCiAjaW5jbHVkZSAiU291cmNlQ29kZS5oIgogI2lu
Y2x1ZGUgIlN0YWNrRnJhbWUuaCIKQEAgLTMxMCw3ICszMTAsOSBAQCBKU09iamVjdCogY3JlYXRl
VVJJRXJyb3IoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiAKIEpTT2Jq
ZWN0KiBjcmVhdGVPdXRPZk1lbW9yeUVycm9yKEV4ZWNTdGF0ZSogZXhlYykKIHsKLSAgICByZXR1
cm4gY3JlYXRlRXJyb3IoZXhlYywgQVNDSUlMaXRlcmFsKCJPdXQgb2YgbWVtb3J5IiksIG51bGxw
dHIpOworICAgIGF1dG8qIGVycm9yID0gY3JlYXRlRXJyb3IoZXhlYywgQVNDSUlMaXRlcmFsKCJP
dXQgb2YgbWVtb3J5IiksIG51bGxwdHIpOworICAgIGpzQ2FzdDxFcnJvckluc3RhbmNlKj4oZXJy
b3IpLT5zZXRPdXRPZk1lbW9yeUVycm9yKCk7CisgICAgcmV0dXJuIGVycm9yOwogfQogCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuaAppbmRleCA3MzJi
NzlhNDI1OS4uNmI3MGI2MzQwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9ySW5zdGFuY2UuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckluc3RhbmNlLmgKQEAgLTYxLDYgKzYxLDExIEBAIHB1YmxpYzoKICAgICBSdW50aW1l
VHlwZSBydW50aW1lVHlwZUZvckNhdXNlKCkgY29uc3QgeyByZXR1cm4gbV9ydW50aW1lVHlwZUZv
ckNhdXNlOyB9CiAgICAgdm9pZCBjbGVhclJ1bnRpbWVUeXBlRm9yQ2F1c2UoKSB7IG1fcnVudGlt
ZVR5cGVGb3JDYXVzZSA9IFR5cGVOb3RoaW5nOyB9CiAKKyAgICB2b2lkIHNldFN0YWNrT3ZlcmZs
b3dFcnJvcigpIHsgbV9zdGFja092ZXJmbG93RXJyb3IgPSB0cnVlOyB9CisgICAgYm9vbCBpc1N0
YWNrT3ZlcmZsb3dFcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fc3RhY2tPdmVyZmxvd0Vycm9yOyB9
CisgICAgdm9pZCBzZXRPdXRPZk1lbW9yeUVycm9yKCkgeyBtX291dE9mTWVtb3J5RXJyb3IgPSB0
cnVlOyB9CisgICAgYm9vbCBpc091dE9mTWVtb3J5RXJyb3IoKSBjb25zdCB7IHJldHVybiBtX291
dE9mTWVtb3J5RXJyb3I7IH0KKwogICAgIEpTX0VYUE9SVF9QUklWQVRFIFN0cmluZyBzYW5pdGl6
ZWRUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogcHJvdGVjdGVkOgpAQCAtNzAsNiArNzUsOCBAQCBw
cm90ZWN0ZWQ6CiAKICAgICBTb3VyY2VBcHBlbmRlciBtX3NvdXJjZUFwcGVuZGVyIHsgbnVsbHB0
ciB9OwogICAgIFJ1bnRpbWVUeXBlIG1fcnVudGltZVR5cGVGb3JDYXVzZSB7IFR5cGVOb3RoaW5n
IH07CisgICAgYm9vbCBtX3N0YWNrT3ZlcmZsb3dFcnJvciB7IGZhbHNlIH07CisgICAgYm9vbCBt
X291dE9mTWVtb3J5RXJyb3IgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJz
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMuY3Bw
CmluZGV4IDYxNmU2OTcyMzA4Li4yYzJlMmUwYTAxZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHAKQEAgLTI5LDE0ICsyOSwxNCBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkhlbHBlcnMuaCIKIAot
I2luY2x1ZGUgIkNvZGVCbG9jay5oIgogI2luY2x1ZGUgIkNhbGxGcmFtZS5oIgorI2luY2x1ZGUg
IkNvZGVCbG9jay5oIgogI2luY2x1ZGUgIkVycm9ySGFuZGxpbmdTY29wZS5oIgogI2luY2x1ZGUg
IkV4Y2VwdGlvbi5oIgotI2luY2x1ZGUgIkpTR2xvYmFsT2JqZWN0RnVuY3Rpb25zLmgiCiAjaW5j
bHVkZSAiSW50ZXJwcmV0ZXIuaCIKLSNpbmNsdWRlICJOb2Rlcy5oIgogI2luY2x1ZGUgIkpTQ0lu
bGluZXMuaCIKKyNpbmNsdWRlICJKU0dsb2JhbE9iamVjdEZ1bmN0aW9ucy5oIgorI2luY2x1ZGUg
Ik5vZGVzLmgiCiAjaW5jbHVkZSAiUnVudGltZVR5cGUuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdCdWlsZGVyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgpAQCAtNzQs
NyArNzQsOSBAQCBKU09iamVjdCogY3JlYXRlU3RhY2tPdmVyZmxvd0Vycm9yKEV4ZWNTdGF0ZSog
ZXhlYykKIAogSlNPYmplY3QqIGNyZWF0ZVN0YWNrT3ZlcmZsb3dFcnJvcihFeGVjU3RhdGUqIGV4
ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVJh
bmdlRXJyb3IoZXhlYywgZ2xvYmFsT2JqZWN0LCBBU0NJSUxpdGVyYWwoIk1heGltdW0gY2FsbCBz
dGFjayBzaXplIGV4Y2VlZGVkLiIpKTsKKyAgICBhdXRvKiBlcnJvciA9IGNyZWF0ZVJhbmdlRXJy
b3IoZXhlYywgZ2xvYmFsT2JqZWN0LCBBU0NJSUxpdGVyYWwoIk1heGltdW0gY2FsbCBzdGFjayBz
aXplIGV4Y2VlZGVkLiIpKTsKKyAgICBqc0Nhc3Q8RXJyb3JJbnN0YW5jZSo+KGVycm9yKS0+c2V0
U3RhY2tPdmVyZmxvd0Vycm9yKCk7CisgICAgcmV0dXJuIGVycm9yOwogfQogCiBKU09iamVjdCog
Y3JlYXRlVW5kZWZpbmVkVmFyaWFibGVFcnJvcihFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50
aWZpZXImIGlkZW50KQo=
</data>
<flag name="review"
          id="334343"
          type_id="1"
          status="+"
          setter="saam"
    />
    <flag name="commit-queue"
          id="334344"
          type_id="3"
          status="-"
          setter="joepeck"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313546</attachid>
            <date>2017-06-21 13:53:27 -0700</date>
            <delta_ts>2017-06-21 13:57:24 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix - With Tests</desc>
            <filename>with-tests-1.patch</filename>
            <type>text/plain</type>
            <size>12108</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5MTg3M2VjZDMyZS4uNjUxYjM3NjkzZTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAor
MjAxNy0wNi0yMSAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IFVzaW5nICJicmVhayBvbiBhbGwgZXhjZXB0aW9ucyIgd2hlbiB0
aHJvd2luZyBzdGFjayBvdmVyZmxvdyBoYW5ncyBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjQzMgorICAgICAgICA8cmRhcjovL3By
b2JsZW0vMjk4NzA4NzM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvbm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1leGNl
cHRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIv
bm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1leGNlcHRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICog
aW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLXN0YWNrLW92ZXJmbG93LWV4Y2VwdGlvbi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1z
dGFjay1vdmVyZmxvdy1leGNlcHRpb24uaHRtbDogQWRkZWQuCisKIDIwMTctMDYtMTkgIEpvc2Vw
aCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICB0ZXN0MjYyOiBDb21w
bGV0aW9uIHZhbHVlcyBmb3IgY29udHJvbCBmbG93IGRvIG5vdCBtYXRjaCB0aGUgc3BlYwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLW91dC1vZi1t
ZW1vcnktZXhjZXB0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9uby1wYXVzZS1vdXQtb2YtbWVtb3J5LWV4Y2VwdGlvbi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmFiODQ2YThiZWU2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLW91dC1vZi1t
ZW1vcnktZXhjZXB0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAxMjogRXJyb3I6IE91dCBvZiBtZW1vcnkKK1Rlc3Qgd2UgZG8gbm90IHBhdXNl
IG9uIGEgT3V0T2ZNZW1vcnkgRXhjZXB0aW9uLgorCisKKz09IFJ1bm5pbmcgdGVzdCBzdWl0ZTog
RGVidWdnZXIuT3V0T2ZNZW1vcnlFeGNlcHRpb24KKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBEZWJ1
Z2dlci5PdXRPZk1lbW9yeUV4Y2VwdGlvbi5Ob1BhdXNlCitVbmNhdWdodCBleGNlcHRpb24gaW4g
dGVzdCBwYWdlOiBFcnJvcjogT3V0IG9mIG1lbW9yeSBbbm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1l
eGNlcHRpb24uaHRtbDoxMl0KK1BBU1M6IFNob3VsZCBub3QgcGF1c2Ugb24gT3V0T2ZNZW1vcnkg
RXhjZXB0aW9uLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIv
bm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1leGNlcHRpb24uaHRtbCBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1vdXQtb2YtbWVtb3J5LWV4Y2VwdGlvbi5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xZTkzYmQ5OGNlYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1vdXQtb2Yt
bWVtb3J5LWV4Y2VwdGlvbi5odG1sCkBAIC0wLDAgKzEsNTUgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9y
ZXNvdXJjZXMvaW5zcGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK1Rlc3RQYWdl
LmFsbG93VW5jYXVnaHRFeGNlcHRpb25zID0gdHJ1ZTsKK1Rlc3RQYWdlLm5lZWRUb1Nhbml0aXpl
VW5jYXVnaHRFeGNlcHRpb25VUkxzID0gdHJ1ZTsKKworZnVuY3Rpb24gdHJpZ2dlck91dE9mTWVt
b3J5RXhjZXB0aW9uKCkgeworICAgIGxldCBzID0gImEiOworICAgIHdoaWxlICh0cnVlKQorICAg
ICAgICBzICs9IHM7Cit9CisKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsIChldmVu
dCkgPT4geworICAgIFRlc3RQYWdlLmRpc3BhdGNoRXZlbnRUb0Zyb250ZW5kKCJBZnRlckVycm9y
Iik7Cit9KTsKKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2Vy
TWFuYWdlci5hbGxFeGNlcHRpb25zQnJlYWtwb2ludC5kaXNhYmxlZCA9IGZhbHNlOworICAgIFdl
Ykluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uc0JyZWFrcG9pbnQuZGlzYWJsZWQg
PSBmYWxzZTsKKworICAgIGxldCBzdWl0ZSA9IEluc3BlY3RvclRlc3QuY3JlYXRlQXN5bmNTdWl0
ZSgiRGVidWdnZXIuT3V0T2ZNZW1vcnlFeGNlcHRpb24iKTsKKworICAgIHN1aXRlLmFkZFRlc3RD
YXNlKHsKKyAgICAgICAgbmFtZTogIkRlYnVnZ2VyLk91dE9mTWVtb3J5RXhjZXB0aW9uLk5vUGF1
c2UiLAorICAgICAgICBkZXNjcmlwdGlvbjogIlNob3VsZCBub3QgcGF1c2Ugb24gYSBPdXRPZk1l
bW9yeSBFeGNlcHRpb24uIiwKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAg
ICAgICAgIGxldCBwYXVzZWQgPSBmYWxzZTsKKworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRl
YnVnZ2VyTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdn
ZXJNYW5hZ2VyLkV2ZW50LlBhdXNlZCwgKGV2ZW50KSA9PiB7CisgICAgICAgICAgICAgICAgcGF1
c2VkID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmZhaWwoIlNob3VsZCBu
b3QgcGF1c2UuIik7CisgICAgICAgICAgICAgICAgcmVqZWN0KCk7CisgICAgICAgICAgICB9KTsK
KworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcigiQWZ0
ZXJFcnJvciIsIChldmVudCkgPT4geworICAgICAgICAgICAgICAgIGlmICghcGF1c2VkKQorICAg
ICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LnBhc3MoIlNob3VsZCBub3QgcGF1c2Ugb24g
T3V0T2ZNZW1vcnkgRXhjZXB0aW9uLiIpOworICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKKyAg
ICAgICAgICAgIH0pOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdl
KGBzZXRUaW1lb3V0KHRyaWdnZXJPdXRPZk1lbW9yeUV4Y2VwdGlvbilgKTsKKyAgICAgICAgfQor
ICAgIH0pOworCisgICAgc3VpdGUucnVuVGVzdENhc2VzQW5kRmluaXNoKCk7Cit9Cis8L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKzxwPlRlc3Qgd2UgZG8gbm90
IHBhdXNlIG9uIGEgT3V0T2ZNZW1vcnkgRXhjZXB0aW9uLjwvcD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1zdGFj
ay1vdmVyZmxvdy1leGNlcHRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
L2RlYnVnZ2VyL25vLXBhdXNlLXN0YWNrLW92ZXJmbG93LWV4Y2VwdGlvbi1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmRjOGU0NzViYjJkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLXN0
YWNrLW92ZXJmbG93LWV4Y2VwdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitDT05T
T0xFIE1FU1NBR0U6IGxpbmUgMTA6IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXpl
IGV4Y2VlZGVkLgorVGVzdCB3ZSBkbyBub3QgcGF1c2Ugb24gYSBTdGFja092ZXJmbG93IEV4Y2Vw
dGlvbi4KKworCis9PSBSdW5uaW5nIHRlc3Qgc3VpdGU6IERlYnVnZ2VyLlN0YWNrT3ZlcmZsb3dF
eGNlcHRpb24KKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBEZWJ1Z2dlci5TdGFja092ZXJmbG93RXhj
ZXB0aW9uLk5vUGF1c2UKK1VuY2F1Z2h0IGV4Y2VwdGlvbiBpbiB0ZXN0IHBhZ2U6IFJhbmdlRXJy
b3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLiBbbm8tcGF1c2Utc3RhY2stb3Zl
cmZsb3ctZXhjZXB0aW9uLmh0bWw6MTBdCitQQVNTOiBTaG91bGQgbm90IHBhdXNlIG9uIFN0YWNr
T3ZlcmZsb3cgRXhjZXB0aW9uLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
ZGVidWdnZXIvbm8tcGF1c2Utc3RhY2stb3ZlcmZsb3ctZXhjZXB0aW9uLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbm8tcGF1c2Utc3RhY2stb3ZlcmZsb3ctZXhjZXB0aW9u
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjMxMzE2NTNkN2Q3
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBh
dXNlLXN0YWNrLW92ZXJmbG93LWV4Y2VwdGlvbi5odG1sCkBAIC0wLDAgKzEsNTQgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9odHRwL3Rlc3Rz
L2luc3BlY3Rvci9yZXNvdXJjZXMvaW5zcGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlw
dD4KK1Rlc3RQYWdlLmFsbG93VW5jYXVnaHRFeGNlcHRpb25zID0gdHJ1ZTsKK1Rlc3RQYWdlLm5l
ZWRUb1Nhbml0aXplVW5jYXVnaHRFeGNlcHRpb25VUkxzID0gdHJ1ZTsKKworZnVuY3Rpb24gdHJp
Z2dlclN0YWNrT3ZlcmZsb3dFeGNlcHRpb24oKSB7CisgICAgZnVuY3Rpb24gZigpIHsgZigpOyB9
CisgICAgZigpOworfQorCit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLCAoZXZlbnQp
ID0+IHsKKyAgICBUZXN0UGFnZS5kaXNwYXRjaEV2ZW50VG9Gcm9udGVuZCgiQWZ0ZXJFcnJvciIp
OworfSk7CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1h
bmFnZXIuYWxsRXhjZXB0aW9uc0JyZWFrcG9pbnQuZGlzYWJsZWQgPSBmYWxzZTsKKyAgICBXZWJJ
bnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlvbnNCcmVha3BvaW50LmRpc2FibGVkID0g
ZmFsc2U7CisKKyAgICBsZXQgc3VpdGUgPSBJbnNwZWN0b3JUZXN0LmNyZWF0ZUFzeW5jU3VpdGUo
IkRlYnVnZ2VyLlN0YWNrT3ZlcmZsb3dFeGNlcHRpb24iKTsKKworICAgIHN1aXRlLmFkZFRlc3RD
YXNlKHsKKyAgICAgICAgbmFtZTogIkRlYnVnZ2VyLlN0YWNrT3ZlcmZsb3dFeGNlcHRpb24uTm9Q
YXVzZSIsCisgICAgICAgIGRlc2NyaXB0aW9uOiAiU2hvdWxkIG5vdCBwYXVzZSBvbiBhIFN0YWNr
T3ZlcmZsb3cgRXhjZXB0aW9uLiIsCisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7Cisg
ICAgICAgICAgICBsZXQgcGF1c2VkID0gZmFsc2U7CisKKyAgICAgICAgICAgIFdlYkluc3BlY3Rv
ci5kZWJ1Z2dlck1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRl
YnVnZ2VyTWFuYWdlci5FdmVudC5QYXVzZWQsIChldmVudCkgPT4geworICAgICAgICAgICAgICAg
IHBhdXNlZCA9IHRydWU7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5mYWlsKCJTaG91
bGQgbm90IHBhdXNlLiIpOworICAgICAgICAgICAgICAgIHJlamVjdCgpOworICAgICAgICAgICAg
fSk7CisKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3Quc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIo
IkFmdGVyRXJyb3IiLCAoZXZlbnQpID0+IHsKKyAgICAgICAgICAgICAgICBpZiAoIXBhdXNlZCkK
KyAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5wYXNzKCJTaG91bGQgbm90IHBhdXNl
IG9uIFN0YWNrT3ZlcmZsb3cgRXhjZXB0aW9uLiIpOworICAgICAgICAgICAgICAgIHJlc29sdmUo
KTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRl
SW5QYWdlKGBzZXRUaW1lb3V0KHRyaWdnZXJTdGFja092ZXJmbG93RXhjZXB0aW9uKWApOworICAg
ICAgICB9CisgICAgfSk7CisKKyAgICBzdWl0ZS5ydW5UZXN0Q2FzZXNBbmRGaW5pc2goKTsKK30K
Kzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPHA+VGVzdCB3
ZSBkbyBub3QgcGF1c2Ugb24gYSBTdGFja092ZXJmbG93IEV4Y2VwdGlvbi48L3A+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBmNmYyMTVjNzQ1Yi4uMzEyNDQ0
YWJmZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE3LTA2
LTIwICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Vi
IEluc3BlY3RvcjogVXNpbmcgImJyZWFrIG9uIGFsbCBleGNlcHRpb25zIiB3aGVuIHRocm93aW5n
IHN0YWNrIG92ZXJmbG93IGhhbmdzIGluc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcyNDMyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8y
OTg3MDg3Mz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBdm9pZCBwYXVzaW5nIG9uIFN0YWNrT3ZlcmZsb3cgYW5kIE91dE9mTWVtb3J5IGVycm9ycyB0
byBhdm9pZCBhIGhhbmcuCisgICAgICAgIFdlIHdpbGwgcHJvY2VlZCB0byBpbXByb3ZlIGRlYnVn
Z2luZyBvZiB0aGVzZSBjYXNlcyBpbiB0aGUgZm9sbG93LXVwIGJ1Z3MuCisKKyAgICAgICAgKiBk
ZWJ1Z2dlci9EZWJ1Z2dlci5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyOjpleGNlcHRpb24p
OgorICAgICAgICBJZ25vcmUgcGF1c2luZyBvbiB0aGVzZSBlcnJvcnMuCisKKyAgICAgICAgKiBy
dW50aW1lL0Vycm9ySW5zdGFuY2UuaDoKKyAgICAgICAgKEpTQzo6RXJyb3JJbnN0YW5jZTo6c2V0
U3RhY2tPdmVyZmxvd0Vycm9yKToKKyAgICAgICAgKEpTQzo6RXJyb3JJbnN0YW5jZTo6aXNTdGFj
a092ZXJmbG93RXJyb3IpOgorICAgICAgICAoSlNDOjpFcnJvckluc3RhbmNlOjpzZXRPdXRPZk1l
bW9yeUVycm9yKToKKyAgICAgICAgKEpTQzo6RXJyb3JJbnN0YW5jZTo6aXNPdXRPZk1lbW9yeUVy
cm9yKToKKyAgICAgICAgKiBydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMuY3BwOgorICAgICAgICAo
SlNDOjpjcmVhdGVTdGFja092ZXJmbG93RXJyb3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjcmVhdGVPdXRPZk1lbW9yeUVycm9yKToKKyAgICAgICAgTWFy
ayB0aGVzZSBraW5kcyBvZiBlcnJvcnMuCisKIDIwMTctMDYtMTkgIEpvc2VwaCBQZWNvcmFybyAg
PHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICB0ZXN0MjYyOiBDb21wbGV0aW9uIHZhbHVl
cyBmb3IgY29udHJvbCBmbG93IGRvIG5vdCBtYXRjaCB0aGUgc3BlYwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlci5jcHAKaW5kZXggOGYzOTkwMTczOWEuLjM0OGM2OGMx
NTBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlci5jcHAKQEAg
LTc1Nyw2ICs3NTcsMTYgQEAgdm9pZCBEZWJ1Z2dlcjo6ZXhjZXB0aW9uKENhbGxGcmFtZSogY2Fs
bEZyYW1lLCBKU1ZhbHVlIGV4Y2VwdGlvbiwgYm9vbCBoYXNDYXRjaEgKICAgICBpZiAobV9pc1Bh
dXNlZCkKICAgICAgICAgcmV0dXJuOwogCisgICAgaWYgKEpTT2JqZWN0KiBvYmplY3QgPSBqc0R5
bmFtaWNDYXN0PEpTT2JqZWN0Kj4obV92bSwgZXhjZXB0aW9uKSkgeworICAgICAgICBpZiAob2Jq
ZWN0LT5pc0Vycm9ySW5zdGFuY2UoKSkgeworICAgICAgICAgICAgRXJyb3JJbnN0YW5jZSogZXJy
b3IgPSBzdGF0aWNfY2FzdDxFcnJvckluc3RhbmNlKj4ob2JqZWN0KTsKKyAgICAgICAgICAgIC8v
IEZJWE1FOiA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTczNjI1PiBXZWIgSW5zcGVjdG9yOiBTaG91
bGQgYmUgYWJsZSB0byBwYXVzZSBhbmQgZGVidWcgYSBTdGFja092ZXJmbG93IEV4Y2VwdGlvbgor
ICAgICAgICAgICAgLy8gRklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8xNzM2Mjc+IFdlYiBJ
bnNwZWN0b3I6IFNob3VsZCBiZSBhYmxlIHRvIHBhdXNlIGFuZCBkZWJ1ZyBhbiBPdXRPZk1lbW9y
eSBFeGNlcHRpb24KKyAgICAgICAgICAgIGlmIChlcnJvci0+aXNTdGFja092ZXJmbG93RXJyb3Io
KSB8fCBlcnJvci0+aXNPdXRPZk1lbW9yeUVycm9yKCkpCisgICAgICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgfQorCiAgICAgUGF1c2VSZWFzb25EZWNsYXJhdGlvbiByZWFzb24o
KnRoaXMsIFBhdXNlZEZvckV4Y2VwdGlvbik7CiAgICAgaWYgKG1fcGF1c2VPbkV4Y2VwdGlvbnNT
dGF0ZSA9PSBQYXVzZU9uQWxsRXhjZXB0aW9ucyB8fCAobV9wYXVzZU9uRXhjZXB0aW9uc1N0YXRl
ID09IFBhdXNlT25VbmNhdWdodEV4Y2VwdGlvbnMgJiYgIWhhc0NhdGNoSGFuZGxlcikpIHsKICAg
ICAgICAgbV9wYXVzZUF0TmV4dE9wcG9ydHVuaXR5ID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Vycm9yLmNwcAppbmRleCA2NDE1NzM2NzA5Yi4uMmJjZGYxNTY3NzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5jcHAKQEAgLTMwLDExICszMCwxMSBAQAog
I2luY2x1ZGUgIkZ1bmN0aW9uUHJvdG90eXBlLmgiCiAjaW5jbHVkZSAiSW50ZXJwcmV0ZXIuaCIK
ICNpbmNsdWRlICJKU0FycmF5LmgiCisjaW5jbHVkZSAiSlNDSW5saW5lcy5oIgogI2luY2x1ZGUg
IkpTRnVuY3Rpb24uaCIKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdC5oIgogI2luY2x1ZGUgIkpT
T2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNTdHJpbmcuaCIKLSNpbmNsdWRlICJKU0NJbmxpbmVzLmgi
CiAjaW5jbHVkZSAiTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlNvdXJjZUNv
ZGUuaCIKICNpbmNsdWRlICJTdGFja0ZyYW1lLmgiCkBAIC0zMTAsNyArMzEwLDkgQEAgSlNPYmpl
Y3QqIGNyZWF0ZVVSSUVycm9yKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgU3RyaW5nJiBtZXNzYWdl
KQogCiBKU09iamVjdCogY3JlYXRlT3V0T2ZNZW1vcnlFcnJvcihFeGVjU3RhdGUqIGV4ZWMpCiB7
Ci0gICAgcmV0dXJuIGNyZWF0ZUVycm9yKGV4ZWMsIEFTQ0lJTGl0ZXJhbCgiT3V0IG9mIG1lbW9y
eSIpLCBudWxscHRyKTsKKyAgICBhdXRvKiBlcnJvciA9IGNyZWF0ZUVycm9yKGV4ZWMsIEFTQ0lJ
TGl0ZXJhbCgiT3V0IG9mIG1lbW9yeSIpLCBudWxscHRyKTsKKyAgICBqc0Nhc3Q8RXJyb3JJbnN0
YW5jZSo+KGVycm9yKS0+c2V0T3V0T2ZNZW1vcnlFcnJvcigpOworICAgIHJldHVybiBlcnJvcjsK
IH0KIAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvcklu
c3RhbmNlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmgK
aW5kZXggNzMyYjc5YTQyNTkuLjZiNzBiNjM0MDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5oCkBAIC02MSw2ICs2MSwxMSBAQCBwdWJsaWM6CiAg
ICAgUnVudGltZVR5cGUgcnVudGltZVR5cGVGb3JDYXVzZSgpIGNvbnN0IHsgcmV0dXJuIG1fcnVu
dGltZVR5cGVGb3JDYXVzZTsgfQogICAgIHZvaWQgY2xlYXJSdW50aW1lVHlwZUZvckNhdXNlKCkg
eyBtX3J1bnRpbWVUeXBlRm9yQ2F1c2UgPSBUeXBlTm90aGluZzsgfQogCisgICAgdm9pZCBzZXRT
dGFja092ZXJmbG93RXJyb3IoKSB7IG1fc3RhY2tPdmVyZmxvd0Vycm9yID0gdHJ1ZTsgfQorICAg
IGJvb2wgaXNTdGFja092ZXJmbG93RXJyb3IoKSBjb25zdCB7IHJldHVybiBtX3N0YWNrT3ZlcmZs
b3dFcnJvcjsgfQorICAgIHZvaWQgc2V0T3V0T2ZNZW1vcnlFcnJvcigpIHsgbV9vdXRPZk1lbW9y
eUVycm9yID0gdHJ1ZTsgfQorICAgIGJvb2wgaXNPdXRPZk1lbW9yeUVycm9yKCkgY29uc3QgeyBy
ZXR1cm4gbV9vdXRPZk1lbW9yeUVycm9yOyB9CisKICAgICBKU19FWFBPUlRfUFJJVkFURSBTdHJp
bmcgc2FuaXRpemVkVG9TdHJpbmcoRXhlY1N0YXRlKik7CiAKIHByb3RlY3RlZDoKQEAgLTcwLDYg
Kzc1LDggQEAgcHJvdGVjdGVkOgogCiAgICAgU291cmNlQXBwZW5kZXIgbV9zb3VyY2VBcHBlbmRl
ciB7IG51bGxwdHIgfTsKICAgICBSdW50aW1lVHlwZSBtX3J1bnRpbWVUeXBlRm9yQ2F1c2UgeyBU
eXBlTm90aGluZyB9OworICAgIGJvb2wgbV9zdGFja092ZXJmbG93RXJyb3IgeyBmYWxzZSB9Owor
ICAgIGJvb2wgbV9vdXRPZk1lbW9yeUVycm9yIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0
aW9uSGVscGVycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25I
ZWxwZXJzLmNwcAppbmRleCA2MTZlNjk3MjMwOC4uMmMyZTJlMGEwMWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMuY3BwCkBAIC0yOSwx
NCArMjksMTQgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJFeGNlcHRpb25IZWxw
ZXJzLmgiCiAKLSNpbmNsdWRlICJDb2RlQmxvY2suaCIKICNpbmNsdWRlICJDYWxsRnJhbWUuaCIK
KyNpbmNsdWRlICJDb2RlQmxvY2suaCIKICNpbmNsdWRlICJFcnJvckhhbmRsaW5nU2NvcGUuaCIK
ICNpbmNsdWRlICJFeGNlcHRpb24uaCIKLSNpbmNsdWRlICJKU0dsb2JhbE9iamVjdEZ1bmN0aW9u
cy5oIgogI2luY2x1ZGUgIkludGVycHJldGVyLmgiCi0jaW5jbHVkZSAiTm9kZXMuaCIKICNpbmNs
dWRlICJKU0NJbmxpbmVzLmgiCisjaW5jbHVkZSAiSlNHbG9iYWxPYmplY3RGdW5jdGlvbnMuaCIK
KyNpbmNsdWRlICJOb2Rlcy5oIgogI2luY2x1ZGUgIlJ1bnRpbWVUeXBlLmgiCiAjaW5jbHVkZSA8
d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ1ZpZXcu
aD4KQEAgLTc0LDcgKzc0LDkgQEAgSlNPYmplY3QqIGNyZWF0ZVN0YWNrT3ZlcmZsb3dFcnJvcihF
eGVjU3RhdGUqIGV4ZWMpCiAKIEpTT2JqZWN0KiBjcmVhdGVTdGFja092ZXJmbG93RXJyb3IoRXhl
Y1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVy
biBjcmVhdGVSYW5nZUVycm9yKGV4ZWMsIGdsb2JhbE9iamVjdCwgQVNDSUlMaXRlcmFsKCJNYXhp
bXVtIGNhbGwgc3RhY2sgc2l6ZSBleGNlZWRlZC4iKSk7CisgICAgYXV0byogZXJyb3IgPSBjcmVh
dGVSYW5nZUVycm9yKGV4ZWMsIGdsb2JhbE9iamVjdCwgQVNDSUlMaXRlcmFsKCJNYXhpbXVtIGNh
bGwgc3RhY2sgc2l6ZSBleGNlZWRlZC4iKSk7CisgICAganNDYXN0PEVycm9ySW5zdGFuY2UqPihl
cnJvciktPnNldFN0YWNrT3ZlcmZsb3dFcnJvcigpOworICAgIHJldHVybiBlcnJvcjsKIH0KIAog
SlNPYmplY3QqIGNyZWF0ZVVuZGVmaW5lZFZhcmlhYmxlRXJyb3IoRXhlY1N0YXRlKiBleGVjLCBj
b25zdCBJZGVudGlmaWVyJiBpZGVudCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313547</attachid>
            <date>2017-06-21 13:57:24 -0700</date>
            <delta_ts>2017-06-21 14:32:47 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix - With Tests</desc>
            <filename>with-tests-2.patch</filename>
            <type>text/plain</type>
            <size>11962</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5MTg3M2VjZDMyZS4uNjUxYjM3NjkzZTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAor
MjAxNy0wNi0yMSAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IFVzaW5nICJicmVhayBvbiBhbGwgZXhjZXB0aW9ucyIgd2hlbiB0
aHJvd2luZyBzdGFjayBvdmVyZmxvdyBoYW5ncyBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjQzMgorICAgICAgICA8cmRhcjovL3By
b2JsZW0vMjk4NzA4NzM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvbm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1leGNl
cHRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIv
bm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1leGNlcHRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICog
aW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLXN0YWNrLW92ZXJmbG93LWV4Y2VwdGlvbi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1z
dGFjay1vdmVyZmxvdy1leGNlcHRpb24uaHRtbDogQWRkZWQuCisKIDIwMTctMDYtMTkgIEpvc2Vw
aCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICB0ZXN0MjYyOiBDb21w
bGV0aW9uIHZhbHVlcyBmb3IgY29udHJvbCBmbG93IGRvIG5vdCBtYXRjaCB0aGUgc3BlYwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLW91dC1vZi1t
ZW1vcnktZXhjZXB0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9uby1wYXVzZS1vdXQtb2YtbWVtb3J5LWV4Y2VwdGlvbi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmFiODQ2YThiZWU2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLW91dC1vZi1t
ZW1vcnktZXhjZXB0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAxMjogRXJyb3I6IE91dCBvZiBtZW1vcnkKK1Rlc3Qgd2UgZG8gbm90IHBhdXNl
IG9uIGEgT3V0T2ZNZW1vcnkgRXhjZXB0aW9uLgorCisKKz09IFJ1bm5pbmcgdGVzdCBzdWl0ZTog
RGVidWdnZXIuT3V0T2ZNZW1vcnlFeGNlcHRpb24KKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBEZWJ1
Z2dlci5PdXRPZk1lbW9yeUV4Y2VwdGlvbi5Ob1BhdXNlCitVbmNhdWdodCBleGNlcHRpb24gaW4g
dGVzdCBwYWdlOiBFcnJvcjogT3V0IG9mIG1lbW9yeSBbbm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1l
eGNlcHRpb24uaHRtbDoxMl0KK1BBU1M6IFNob3VsZCBub3QgcGF1c2Ugb24gT3V0T2ZNZW1vcnkg
RXhjZXB0aW9uLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIv
bm8tcGF1c2Utb3V0LW9mLW1lbW9yeS1leGNlcHRpb24uaHRtbCBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1vdXQtb2YtbWVtb3J5LWV4Y2VwdGlvbi5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi44NDAzYTM4YzRlNQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9uby1wYXVzZS1vdXQtb2Yt
bWVtb3J5LWV4Y2VwdGlvbi5odG1sCkBAIC0wLDAgKzEsNTQgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9y
ZXNvdXJjZXMvaW5zcGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK1Rlc3RQYWdl
LmFsbG93VW5jYXVnaHRFeGNlcHRpb25zID0gdHJ1ZTsKK1Rlc3RQYWdlLm5lZWRUb1Nhbml0aXpl
VW5jYXVnaHRFeGNlcHRpb25VUkxzID0gdHJ1ZTsKKworZnVuY3Rpb24gdHJpZ2dlck91dE9mTWVt
b3J5RXhjZXB0aW9uKCkgeworICAgIGxldCBzID0gImEiOworICAgIHdoaWxlICh0cnVlKQorICAg
ICAgICBzICs9IHM7Cit9CisKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsIChldmVu
dCkgPT4geworICAgIFRlc3RQYWdlLmRpc3BhdGNoRXZlbnRUb0Zyb250ZW5kKCJBZnRlckVycm9y
Iik7Cit9KTsKKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2Vy
TWFuYWdlci5hbGxFeGNlcHRpb25zQnJlYWtwb2ludC5kaXNhYmxlZCA9IGZhbHNlOworCisgICAg
bGV0IHN1aXRlID0gSW5zcGVjdG9yVGVzdC5jcmVhdGVBc3luY1N1aXRlKCJEZWJ1Z2dlci5PdXRP
Zk1lbW9yeUV4Y2VwdGlvbiIpOworCisgICAgc3VpdGUuYWRkVGVzdENhc2UoeworICAgICAgICBu
YW1lOiAiRGVidWdnZXIuT3V0T2ZNZW1vcnlFeGNlcHRpb24uTm9QYXVzZSIsCisgICAgICAgIGRl
c2NyaXB0aW9uOiAiU2hvdWxkIG5vdCBwYXVzZSBvbiBhIE91dE9mTWVtb3J5IEV4Y2VwdGlvbi4i
LAorICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgbGV0IHBhdXNl
ZCA9IGZhbHNlOworCisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNp
bmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQu
UGF1c2VkLCAoZXZlbnQpID0+IHsKKyAgICAgICAgICAgICAgICBwYXVzZWQgPSB0cnVlOworICAg
ICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZmFpbCgiU2hvdWxkIG5vdCBwYXVzZS4iKTsKKyAg
ICAgICAgICAgICAgICByZWplY3QoKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKCJBZnRlckVycm9yIiwgKGV2ZW50
KSA9PiB7CisgICAgICAgICAgICAgICAgaWYgKCFwYXVzZWQpCisgICAgICAgICAgICAgICAgICAg
IEluc3BlY3RvclRlc3QucGFzcygiU2hvdWxkIG5vdCBwYXVzZSBvbiBPdXRPZk1lbW9yeSBFeGNl
cHRpb24uIik7CisgICAgICAgICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICAgICAgfSk7CisK
KyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoYHNldFRpbWVvdXQodHJp
Z2dlck91dE9mTWVtb3J5RXhjZXB0aW9uKWApOworICAgICAgICB9CisgICAgfSk7CisKKyAgICBz
dWl0ZS5ydW5UZXN0Q2FzZXNBbmRGaW5pc2goKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPHA+VGVzdCB3ZSBkbyBub3QgcGF1c2Ugb24gYSBPdXRP
Zk1lbW9yeSBFeGNlcHRpb24uPC9wPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL25vLXBhdXNlLXN0YWNrLW92ZXJmbG93LWV4Y2Vw
dGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbm8tcGF1
c2Utc3RhY2stb3ZlcmZsb3ctZXhjZXB0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZGM4ZTQ3NWJiMmQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbm8tcGF1c2Utc3RhY2stb3ZlcmZsb3ctZXhj
ZXB0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAxMDogUmFuZ2VFcnJvcjogTWF4aW11bSBjYWxsIHN0YWNrIHNpemUgZXhjZWVkZWQuCitUZXN0
IHdlIGRvIG5vdCBwYXVzZSBvbiBhIFN0YWNrT3ZlcmZsb3cgRXhjZXB0aW9uLgorCisKKz09IFJ1
bm5pbmcgdGVzdCBzdWl0ZTogRGVidWdnZXIuU3RhY2tPdmVyZmxvd0V4Y2VwdGlvbgorLS0gUnVu
bmluZyB0ZXN0IGNhc2U6IERlYnVnZ2VyLlN0YWNrT3ZlcmZsb3dFeGNlcHRpb24uTm9QYXVzZQor
VW5jYXVnaHQgZXhjZXB0aW9uIGluIHRlc3QgcGFnZTogUmFuZ2VFcnJvcjogTWF4aW11bSBjYWxs
IHN0YWNrIHNpemUgZXhjZWVkZWQuIFtuby1wYXVzZS1zdGFjay1vdmVyZmxvdy1leGNlcHRpb24u
aHRtbDoxMF0KK1BBU1M6IFNob3VsZCBub3QgcGF1c2Ugb24gU3RhY2tPdmVyZmxvdyBFeGNlcHRp
b24uCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9uby1wYXVz
ZS1zdGFjay1vdmVyZmxvdy1leGNlcHRpb24uaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9k
ZWJ1Z2dlci9uby1wYXVzZS1zdGFjay1vdmVyZmxvdy1leGNlcHRpb24uaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNTJlZDlkZGJlZjEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbm8tcGF1c2Utc3RhY2stb3ZlcmZs
b3ctZXhjZXB0aW9uLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291
cmNlcy9pbnNwZWN0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorVGVzdFBhZ2UuYWxs
b3dVbmNhdWdodEV4Y2VwdGlvbnMgPSB0cnVlOworVGVzdFBhZ2UubmVlZFRvU2FuaXRpemVVbmNh
dWdodEV4Y2VwdGlvblVSTHMgPSB0cnVlOworCitmdW5jdGlvbiB0cmlnZ2VyU3RhY2tPdmVyZmxv
d0V4Y2VwdGlvbigpIHsKKyAgICBmdW5jdGlvbiBmKCkgeyBmKCk7IH0KKyAgICBmKCk7Cit9CisK
K3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsIChldmVudCkgPT4geworICAgIFRlc3RQ
YWdlLmRpc3BhdGNoRXZlbnRUb0Zyb250ZW5kKCJBZnRlckVycm9yIik7Cit9KTsKKworZnVuY3Rp
b24gdGVzdCgpCit7CisgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hbGxFeGNlcHRp
b25zQnJlYWtwb2ludC5kaXNhYmxlZCA9IGZhbHNlOworCisgICAgbGV0IHN1aXRlID0gSW5zcGVj
dG9yVGVzdC5jcmVhdGVBc3luY1N1aXRlKCJEZWJ1Z2dlci5TdGFja092ZXJmbG93RXhjZXB0aW9u
Iik7CisKKyAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CisgICAgICAgIG5hbWU6ICJEZWJ1Z2dlci5T
dGFja092ZXJmbG93RXhjZXB0aW9uLk5vUGF1c2UiLAorICAgICAgICBkZXNjcmlwdGlvbjogIlNo
b3VsZCBub3QgcGF1c2Ugb24gYSBTdGFja092ZXJmbG93IEV4Y2VwdGlvbi4iLAorICAgICAgICB0
ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgbGV0IHBhdXNlZCA9IGZhbHNlOwor
CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNpbmdsZUZpcmVFdmVu
dExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuUGF1c2VkLCAoZXZl
bnQpID0+IHsKKyAgICAgICAgICAgICAgICBwYXVzZWQgPSB0cnVlOworICAgICAgICAgICAgICAg
IEluc3BlY3RvclRlc3QuZmFpbCgiU2hvdWxkIG5vdCBwYXVzZS4iKTsKKyAgICAgICAgICAgICAg
ICByZWplY3QoKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0
LnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKCJBZnRlckVycm9yIiwgKGV2ZW50KSA9PiB7CisgICAg
ICAgICAgICAgICAgaWYgKCFwYXVzZWQpCisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRl
c3QucGFzcygiU2hvdWxkIG5vdCBwYXVzZSBvbiBTdGFja092ZXJmbG93IEV4Y2VwdGlvbi4iKTsK
KyAgICAgICAgICAgICAgICByZXNvbHZlKCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZShgc2V0VGltZW91dCh0cmlnZ2VyU3RhY2tP
dmVyZmxvd0V4Y2VwdGlvbilgKTsKKyAgICAgICAgfQorICAgIH0pOworCisgICAgc3VpdGUucnVu
VGVzdENhc2VzQW5kRmluaXNoKCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9h
ZD0icnVuVGVzdCgpIj4KKzxwPlRlc3Qgd2UgZG8gbm90IHBhdXNlIG9uIGEgU3RhY2tPdmVyZmxv
dyBFeGNlcHRpb24uPC9wPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cK
aW5kZXggZjZmMjE1Yzc0NWIuLjMxMjQ0NGFiZmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyOSBAQAorMjAxNy0wNi0yMCAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9A
YXBwbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFVzaW5nICJicmVhayBvbiBhbGwg
ZXhjZXB0aW9ucyIgd2hlbiB0aHJvd2luZyBzdGFjayBvdmVyZmxvdyBoYW5ncyBpbnNwZWN0b3IK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjQzMgor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjk4NzA4NzM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgcGF1c2luZyBvbiBTdGFja092ZXJmbG93
IGFuZCBPdXRPZk1lbW9yeSBlcnJvcnMgdG8gYXZvaWQgYSBoYW5nLgorICAgICAgICBXZSB3aWxs
IHByb2NlZWQgdG8gaW1wcm92ZSBkZWJ1Z2dpbmcgb2YgdGhlc2UgY2FzZXMgaW4gdGhlIGZvbGxv
dy11cCBidWdzLgorCisgICAgICAgICogZGVidWdnZXIvRGVidWdnZXIuY3BwOgorICAgICAgICAo
SlNDOjpEZWJ1Z2dlcjo6ZXhjZXB0aW9uKToKKyAgICAgICAgSWdub3JlIHBhdXNpbmcgb24gdGhl
c2UgZXJyb3JzLgorCisgICAgICAgICogcnVudGltZS9FcnJvckluc3RhbmNlLmg6CisgICAgICAg
IChKU0M6OkVycm9ySW5zdGFuY2U6OnNldFN0YWNrT3ZlcmZsb3dFcnJvcik6CisgICAgICAgIChK
U0M6OkVycm9ySW5zdGFuY2U6OmlzU3RhY2tPdmVyZmxvd0Vycm9yKToKKyAgICAgICAgKEpTQzo6
RXJyb3JJbnN0YW5jZTo6c2V0T3V0T2ZNZW1vcnlFcnJvcik6CisgICAgICAgIChKU0M6OkVycm9y
SW5zdGFuY2U6OmlzT3V0T2ZNZW1vcnlFcnJvcik6CisgICAgICAgICogcnVudGltZS9FeGNlcHRp
b25IZWxwZXJzLmNwcDoKKyAgICAgICAgKEpTQzo6Y3JlYXRlU3RhY2tPdmVyZmxvd0Vycm9yKToK
KyAgICAgICAgKiBydW50aW1lL0Vycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y3JlYXRlT3V0T2ZN
ZW1vcnlFcnJvcik6CisgICAgICAgIE1hcmsgdGhlc2Uga2luZHMgb2YgZXJyb3JzLgorCiAyMDE3
LTA2LTE5ICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAg
dGVzdDI2MjogQ29tcGxldGlvbiB2YWx1ZXMgZm9yIGNvbnRyb2wgZmxvdyBkbyBub3QgbWF0Y2gg
dGhlIHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1
Z2dlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIuY3BwCmlu
ZGV4IDhmMzk5MDE3MzlhLi4zNDhjNjhjMTUwYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGVidWdnZXIvRGVidWdnZXIuY3BwCkBAIC03NTcsNiArNzU3LDE2IEBAIHZvaWQgRGVidWdnZXI6
OmV4Y2VwdGlvbihDYWxsRnJhbWUqIGNhbGxGcmFtZSwgSlNWYWx1ZSBleGNlcHRpb24sIGJvb2wg
aGFzQ2F0Y2hICiAgICAgaWYgKG1faXNQYXVzZWQpCiAgICAgICAgIHJldHVybjsKIAorICAgIGlm
IChKU09iamVjdCogb2JqZWN0ID0ganNEeW5hbWljQ2FzdDxKU09iamVjdCo+KG1fdm0sIGV4Y2Vw
dGlvbikpIHsKKyAgICAgICAgaWYgKG9iamVjdC0+aXNFcnJvckluc3RhbmNlKCkpIHsKKyAgICAg
ICAgICAgIEVycm9ySW5zdGFuY2UqIGVycm9yID0gc3RhdGljX2Nhc3Q8RXJyb3JJbnN0YW5jZSo+
KG9iamVjdCk7CisgICAgICAgICAgICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE3
MzYyNT4gV2ViIEluc3BlY3RvcjogU2hvdWxkIGJlIGFibGUgdG8gcGF1c2UgYW5kIGRlYnVnIGEg
U3RhY2tPdmVyZmxvdyBFeGNlcHRpb24KKyAgICAgICAgICAgIC8vIEZJWE1FOiA8aHR0cHM6Ly93
ZWJraXQub3JnL2IvMTczNjI3PiBXZWIgSW5zcGVjdG9yOiBTaG91bGQgYmUgYWJsZSB0byBwYXVz
ZSBhbmQgZGVidWcgYW4gT3V0T2ZNZW1vcnkgRXhjZXB0aW9uCisgICAgICAgICAgICBpZiAoZXJy
b3ItPmlzU3RhY2tPdmVyZmxvd0Vycm9yKCkgfHwgZXJyb3ItPmlzT3V0T2ZNZW1vcnlFcnJvcigp
KQorICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0KKwogICAgIFBhdXNl
UmVhc29uRGVjbGFyYXRpb24gcmVhc29uKCp0aGlzLCBQYXVzZWRGb3JFeGNlcHRpb24pOwogICAg
IGlmIChtX3BhdXNlT25FeGNlcHRpb25zU3RhdGUgPT0gUGF1c2VPbkFsbEV4Y2VwdGlvbnMgfHwg
KG1fcGF1c2VPbkV4Y2VwdGlvbnNTdGF0ZSA9PSBQYXVzZU9uVW5jYXVnaHRFeGNlcHRpb25zICYm
ICFoYXNDYXRjaEhhbmRsZXIpKSB7CiAgICAgICAgIG1fcGF1c2VBdE5leHRPcHBvcnR1bml0eSA9
IHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5jcHAKaW5kZXggNjQxNTcz
NjcwOWIuLjJiY2RmMTU2Nzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9FcnJvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3Iu
Y3BwCkBAIC0zMCwxMSArMzAsMTEgQEAKICNpbmNsdWRlICJGdW5jdGlvblByb3RvdHlwZS5oIgog
I2luY2x1ZGUgIkludGVycHJldGVyLmgiCiAjaW5jbHVkZSAiSlNBcnJheS5oIgorI2luY2x1ZGUg
IkpTQ0lubGluZXMuaCIKICNpbmNsdWRlICJKU0Z1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNHbG9i
YWxPYmplY3QuaCIKICNpbmNsdWRlICJKU09iamVjdC5oIgogI2luY2x1ZGUgIkpTU3RyaW5nLmgi
Ci0jaW5jbHVkZSAiSlNDSW5saW5lcy5oIgogI2luY2x1ZGUgIk5hdGl2ZUVycm9yQ29uc3RydWN0
b3IuaCIKICNpbmNsdWRlICJTb3VyY2VDb2RlLmgiCiAjaW5jbHVkZSAiU3RhY2tGcmFtZS5oIgpA
QCAtMzEwLDcgKzMxMCw5IEBAIEpTT2JqZWN0KiBjcmVhdGVVUklFcnJvcihFeGVjU3RhdGUqIGV4
ZWMsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKIAogSlNPYmplY3QqIGNyZWF0ZU91dE9mTWVtb3J5
RXJyb3IoRXhlY1N0YXRlKiBleGVjKQogewotICAgIHJldHVybiBjcmVhdGVFcnJvcihleGVjLCBB
U0NJSUxpdGVyYWwoIk91dCBvZiBtZW1vcnkiKSwgbnVsbHB0cik7CisgICAgYXV0byogZXJyb3Ig
PSBjcmVhdGVFcnJvcihleGVjLCBBU0NJSUxpdGVyYWwoIk91dCBvZiBtZW1vcnkiKSwgbnVsbHB0
cik7CisgICAganNDYXN0PEVycm9ySW5zdGFuY2UqPihlcnJvciktPnNldE91dE9mTWVtb3J5RXJy
b3IoKTsKKyAgICByZXR1cm4gZXJyb3I7CiB9CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5oCmluZGV4IDczMmI3OWE0MjU5Li42YjcwYjYzNDAyYSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuaApAQCAt
NjEsNiArNjEsMTEgQEAgcHVibGljOgogICAgIFJ1bnRpbWVUeXBlIHJ1bnRpbWVUeXBlRm9yQ2F1
c2UoKSBjb25zdCB7IHJldHVybiBtX3J1bnRpbWVUeXBlRm9yQ2F1c2U7IH0KICAgICB2b2lkIGNs
ZWFyUnVudGltZVR5cGVGb3JDYXVzZSgpIHsgbV9ydW50aW1lVHlwZUZvckNhdXNlID0gVHlwZU5v
dGhpbmc7IH0KIAorICAgIHZvaWQgc2V0U3RhY2tPdmVyZmxvd0Vycm9yKCkgeyBtX3N0YWNrT3Zl
cmZsb3dFcnJvciA9IHRydWU7IH0KKyAgICBib29sIGlzU3RhY2tPdmVyZmxvd0Vycm9yKCkgY29u
c3QgeyByZXR1cm4gbV9zdGFja092ZXJmbG93RXJyb3I7IH0KKyAgICB2b2lkIHNldE91dE9mTWVt
b3J5RXJyb3IoKSB7IG1fb3V0T2ZNZW1vcnlFcnJvciA9IHRydWU7IH0KKyAgICBib29sIGlzT3V0
T2ZNZW1vcnlFcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fb3V0T2ZNZW1vcnlFcnJvcjsgfQorCiAg
ICAgSlNfRVhQT1JUX1BSSVZBVEUgU3RyaW5nIHNhbml0aXplZFRvU3RyaW5nKEV4ZWNTdGF0ZSop
OwogCiBwcm90ZWN0ZWQ6CkBAIC03MCw2ICs3NSw4IEBAIHByb3RlY3RlZDoKIAogICAgIFNvdXJj
ZUFwcGVuZGVyIG1fc291cmNlQXBwZW5kZXIgeyBudWxscHRyIH07CiAgICAgUnVudGltZVR5cGUg
bV9ydW50aW1lVHlwZUZvckNhdXNlIHsgVHlwZU5vdGhpbmcgfTsKKyAgICBib29sIG1fc3RhY2tP
dmVyZmxvd0Vycm9yIHsgZmFsc2UgfTsKKyAgICBib29sIG1fb3V0T2ZNZW1vcnlFcnJvciB7IGZh
bHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHAKaW5kZXggNjE2ZTY5NzIzMDguLjJj
MmUyZTBhMDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb25IZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb25IZWxwZXJzLmNwcApAQCAtMjksMTQgKzI5LDE0IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiRXhjZXB0aW9uSGVscGVycy5oIgogCi0jaW5jbHVkZSAiQ29kZUJsb2NrLmgi
CiAjaW5jbHVkZSAiQ2FsbEZyYW1lLmgiCisjaW5jbHVkZSAiQ29kZUJsb2NrLmgiCiAjaW5jbHVk
ZSAiRXJyb3JIYW5kbGluZ1Njb3BlLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uLmgiCi0jaW5jbHVk
ZSAiSlNHbG9iYWxPYmplY3RGdW5jdGlvbnMuaCIKICNpbmNsdWRlICJJbnRlcnByZXRlci5oIgot
I2luY2x1ZGUgIk5vZGVzLmgiCiAjaW5jbHVkZSAiSlNDSW5saW5lcy5oIgorI2luY2x1ZGUgIkpT
R2xvYmFsT2JqZWN0RnVuY3Rpb25zLmgiCisjaW5jbHVkZSAiTm9kZXMuaCIKICNpbmNsdWRlICJS
dW50aW1lVHlwZS5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KICNpbmNs
dWRlIDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+CkBAIC03NCw3ICs3NCw5IEBAIEpTT2JqZWN0KiBj
cmVhdGVTdGFja092ZXJmbG93RXJyb3IoRXhlY1N0YXRlKiBleGVjKQogCiBKU09iamVjdCogY3Jl
YXRlU3RhY2tPdmVyZmxvd0Vycm9yKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlUmFuZ2VFcnJvcihleGVjLCBnbG9iYWxP
YmplY3QsIEFTQ0lJTGl0ZXJhbCgiTWF4aW11bSBjYWxsIHN0YWNrIHNpemUgZXhjZWVkZWQuIikp
OworICAgIGF1dG8qIGVycm9yID0gY3JlYXRlUmFuZ2VFcnJvcihleGVjLCBnbG9iYWxPYmplY3Qs
IEFTQ0lJTGl0ZXJhbCgiTWF4aW11bSBjYWxsIHN0YWNrIHNpemUgZXhjZWVkZWQuIikpOworICAg
IGpzQ2FzdDxFcnJvckluc3RhbmNlKj4oZXJyb3IpLT5zZXRTdGFja092ZXJmbG93RXJyb3IoKTsK
KyAgICByZXR1cm4gZXJyb3I7CiB9CiAKIEpTT2JqZWN0KiBjcmVhdGVVbmRlZmluZWRWYXJpYWJs
ZUVycm9yKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgaWRlbnQpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>