<?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>182557</bug_id>
          
          <creation_ts>2018-02-06 16:30:33 -0800</creation_ts>
          <short_desc>REGRESSION(r226396): File paths are inserted when dropping image files</short_desc>
          <delta_ts>2018-02-07 13:31:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>ap</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>rniwa</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1397001</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-06 16:30:33 -0800</bug_when>
    <thetext>&lt;https://trac.webkit.org/r226396&gt; unintentionally changed behavior when dropping files when attachment elements are disabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397007</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-06 16:33:55 -0800</bug_when>
    <thetext>&lt;rdar://problem/37294120&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397012</commentid>
    <comment_count>2</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-06 16:45:50 -0800</bug_when>
    <thetext>This function used to be:

    bool Editor::WebContentReader::readFilenames(const Vector&lt;String&gt;&amp; paths)
    {
        if (paths.isEmpty())
            return false;
        if (!frame.document())
            return false;
        Document&amp; document = *frame.document();
        fragment = document.createDocumentFragment();
        for (auto&amp; text : paths) {
    #if ENABLE(ATTACHMENT_ELEMENT)
            auto attachment = HTMLAttachmentElement::create(attachmentTag, document);
            attachment-&gt;setFile(File::create([[NSURL fileURLWithPath:text] path]).ptr());
            fragment-&gt;appendChild(attachment);
    #else
            auto paragraph = createDefaultParagraphElement(document);
            paragraph-&gt;appendChild(document.createTextNode(frame.editor().client()-&gt;userVisibleString([NSURL fileURLWithPath:text])));
            fragment-&gt;appendChild(paragraph);
    #endif
        }
        return true;
    }

...and it is now:

    bool WebContentReader::readFilePaths(const Vector&lt;String&gt;&amp; paths)
    {
        if (paths.isEmpty() || !frame.document())
            return false;

        auto&amp; document = *frame.document();
        bool readAnyFilePath = false;
        for (auto&amp; path : paths) {
    #if ENABLE(ATTACHMENT_ELEMENT)
            if (RuntimeEnabledFeatures::sharedFeatures().attachmentElementEnabled()) {
                auto attachment = HTMLAttachmentElement::create(HTMLNames::attachmentTag, document);
                attachment-&gt;setFile(File::create(path), HTMLAttachmentElement::UpdateDisplayAttributes::Yes);
                ensureFragment().appendChild(attachment);
                readAnyFilePath = true;
                continue;
            }
    #endif
    #if PLATFORM(MAC)
            // FIXME: Does (and should) any macOS client depend on inserting file paths as plain text in web content?
            // If not, we should just remove this.
            auto paragraph = createDefaultParagraphElement(document);
            paragraph-&gt;appendChild(document.createTextNode(userVisibleString([NSURL fileURLWithPath:path])));
            ensureFragment().appendChild(paragraph);
            readAnyFilePath = true;
    #endif
        }
        return readAnyFilePath;
    }

...so I had unintentionally resurrected the dead codepath to append the visible URL as a text node. There&apos;s also a more subtle difference here, which is that we used to always return true and initialize the document fragment here in this function, but now we only do so if we actually appended anything to the document fragment.

A fix here is to (1) just remove the dead codepath, since there&apos;s no version of macOS where !ENABLE(ATTACHMENT_ELEMENT), and (2) revert to the old behavior where we always create the document fragment after calling this function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397013</commentid>
    <comment_count>3</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-06 16:48:35 -0800</bug_when>
    <thetext>&gt;             // FIXME: Does (and should) any macOS client depend on inserting
&gt; file paths as plain text in web content?
&gt;             // If not, we should just remove this.

Ironically, I had even considered just removing this code in that same patch, but decided not to so that there&apos;d be less chance of breakage. I failed to see that this was dead code to begin with :/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397025</commentid>
    <comment_count>4</comment_count>
      <attachid>333240</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-06 18:06:52 -0800</bug_when>
    <thetext>Created attachment 333240
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397037</commentid>
    <comment_count>5</comment_count>
      <attachid>333247</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-06 18:21:00 -0800</bug_when>
    <thetext>Created attachment 333247
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397193</commentid>
    <comment_count>6</comment_count>
      <attachid>333291</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-07 09:09:38 -0800</bug_when>
    <thetext>Created attachment 333291
ChangeLog tweak</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397204</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2018-02-07 09:30:39 -0800</bug_when>
    <thetext>Given that the original way this was discovered was by pasting, not by dropping, I wonder if both paths need to be tested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397208</commentid>
    <comment_count>8</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-07 09:38:31 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #7)
&gt; Given that the original way this was discovered was by pasting, not by
&gt; dropping, I wonder if both paths need to be tested.

Given that the bug lies in WebContentReader code common to both dropping and pasting, I don&apos;t think we need a separate test that uses paste to trigger this bug...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397243</commentid>
    <comment_count>9</comment_count>
      <attachid>333305</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-07 11:07:28 -0800</bug_when>
    <thetext>Created attachment 333305
Test copy/paste as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397245</commentid>
    <comment_count>10</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-07 11:08:49 -0800</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #8)
&gt; (In reply to Alexey Proskuryakov from comment #7)
&gt; &gt; Given that the original way this was discovered was by pasting, not by
&gt; &gt; dropping, I wonder if both paths need to be tested.
&gt; 
&gt; Given that the bug lies in WebContentReader code common to both dropping and
&gt; pasting, I don&apos;t think we need a separate test that uses paste to trigger
&gt; this bug...

Well, then again, no harm in more test coverage :)

We can adjust some existing API tests to exercise copy/paste.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397268</commentid>
    <comment_count>11</comment_count>
      <attachid>333305</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-02-07 13:07:15 -0800</bug_when>
    <thetext>Comment on attachment 333305
Test copy/paste as well.

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397272</commentid>
    <comment_count>12</comment_count>
      <attachid>333305</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-07 13:31:20 -0800</bug_when>
    <thetext>Comment on attachment 333305
Test copy/paste as well.

Clearing flags on attachment: 333305

Committed r228240: &lt;https://trac.webkit.org/changeset/228240&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1397273</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-07 13:31:21 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333240</attachid>
            <date>2018-02-06 18:06:52 -0800</date>
            <delta_ts>2018-02-06 18:20:59 -0800</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-182557-20180206180651.patch</filename>
            <type>text/plain</type>
            <size>8538</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3OTQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGFkMTFkZmM0NWU5OTQz
ODhiNTY0MzcwNjhhZWZiNTM4YWRmMjk1OC4uNGIwOTgwNTFkMjZlNzA1OGI0YzliOThkMTQwYmYz
YzM4MzQ3YjUwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDE4LTAyLTA2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04o
cjIyNjM5Nik6IEZpbGUgcGF0aHMgYXJlIGluc2VydGVkIHdoZW4gZHJvcHBpbmcgaW1hZ2UgZmls
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjU1
NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzcyOTQxMjA+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV2ZXJ0cyB1bmludGVuZGVkIGNoYW5nZXMg
aW4gPGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvcjIyNjM5Nj4uIEJlZm9yZSByMjI2Mzk2LCBXZWJD
b250ZW50UmVhZGVyOjpyZWFkRmlsZW5hbWVzCisgICAgICAgIChhIGhlbHBlciBmdW5jdGlvbiBp
biBtYWNPUy1zcGVjaWZpYyBjb2RlKSBjb250YWluZWQgbG9naWMgdG8gY3JlYXRlIGFuZCBpbnNl
cnQgYXR0YWNobWVudCBlbGVtZW50cyBpZgorICAgICAgICBFTkFCTEUoQVRUQUNITUVOVF9FTEVN
RU5UKTsgb3RoZXJ3aXNlLCBpdCB3b3VsZCBmYWxsIGJhY2sgdG8gaW5zZXJ0aW5nIHRoZSB2aXNp
YmxlIFVSTCBhcyBhIHRleHQgbm9kZS4gU2luY2Ugd2UKKyAgICAgICAgZW5hYmxlIHRoZSBhdHRh
Y2htZW50IGVsZW1lbnQgb24gYWxsIENvY29hIHBsYXRmb3JtcyB2aWEgeGNjb25maWcgZmlsZXMs
IHRoaXMgd2FzIGVmZmVjdGl2ZWx5IGRlYWQgY29kZS4KKworICAgICAgICBIb3dldmVyLCB3aGVu
IHIyMjYzOTYgKHdoaWNoIG1vdmVkIHRoaXMgb3V0IGZyb20gbWFjT1MgdG8gQ29jb2EgcGxhdGZv
cm0gY29kZSkgcmVmYWN0b3JlZCB0aGlzIGhlbHBlciBmdW5jdGlvbiwKKyAgICAgICAgaXQgYWxz
byBtb3ZlZCB0aGlzIGNodW5rIG9mIGNvZGUgb3V0IG9mIHRoZSAhRU5BQkxFKEFUVEFDSE1FTlQp
IGNvbmRpdGlvbmFsIGFuZCBpbnRvIGEgUExBVEZPUk0oTUFDKSBndWFyZCwKKyAgICAgICAgd2hp
Y2ggbWVhbnMgdGhhdCB3ZSBub3cgZmFsbCBiYWNrIHRvIGluc2VydGluZyBmaWxlIHBhdGhzIGFz
IHRleHQgd2hlbiBhdHRhY2htZW50IGVsZW1lbnRzIGFyZSBkaXNhYmxlZC4gVG8gZml4CisgICAg
ICAgIHRoaXMsIHdlIHNpbXBseSByZW1vdmUgdGhlIChwcmV2aW91c2x5KSBkZWFkIGNvZGUuCisK
KyAgICAgICAgQSBtb3JlIHN1YnRsZSBkaWZmZXJlbmNlIGlzIHRoYXQgd2Ugbm8gbG9uZ2VyIGFs
d2F5cyByZXR1cm4gdHJ1ZSBmcm9tIFdlYkNvbnRlbnRSZWFkZXI6OnJlYWRGaWxlUGF0aHMuIFRo
aXMKKyAgICAgICAgbWVhbnMgdGhhdCB3aGVuIHdlIGRyb3AgZmlsZXMsIHdlIG5vIGxvbmdlciBm
YWxsIHRocm91Z2ggdGhlIGVhcmx5IHJldHVybiBpbiBkb2N1bWVudEZyYWdtZW50RnJvbURyYWdE
YXRhIHdoZW4KKyAgICAgICAgd2UndmUgbWFkZSBhIGZyYWdtZW50LCBzbyB3ZSBwcm9jZWVkIHRv
IHJlYWQgdGhlIGZpbGUgcGF0aCBhcyBhIFVSTC4KKworICAgICAgICBPbmUgd2F5IHRvIGZpeCB0
aGlzIGlzIHRvIHJlYWxseSB0ZWFjaCBEcmFnRGF0YTo6YXNVUkwgdG8gcmVzcGVjdCBpdHMgZ2l2
ZW4gRmlsZW5hbWVDb252ZXJzaW9uUG9saWN5LCBidXQgZm9yCisgICAgICAgIG5vdywgbGV0J3Mg
cmV2ZXJ0IHRvIGJlaGF2aW9yIGJlZm9yZSAxMC4xMy40LgorCisgICAgICAgIFRlc3Q6IG1vZGlm
aWVkIGVkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMt
VVJMcy5odG1sLgorCisgICAgICAgICogZWRpdGluZy9XZWJDb250ZW50UmVhZGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OldlYkNvbnRlbnRSZWFkZXI6OmVuc3VyZUZyYWdtZW50KTogRGVsZXRl
ZC4KKyAgICAgICAgKiBlZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuaDoKKyAgICAgICAgKiBlZGl0
aW5nL2NvY29hL1dlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6Oldl
YkNvbnRlbnRSZWFkZXI6OnJlYWRGaWxlUGF0aHMpOgorCiAyMDE4LTAxLTMxICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBMYXlvdXQgVGVzdCBmYXN0L2V2
ZW50cy9iZWZvcmV1bmxvYWQtZG9tLW1hbmlwdWxhdGlvbi1jcmFzaC5odG1sIGlzIGNyYXNoaW5n
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9XZWJDb250ZW50UmVhZGVyLmNwcAppbmRleCA1NDQ5
MTJhNzQ5M2M3MTY4MDc3NzdlMzVlZWUwMjNlNGUyM2VhNzM0Li5jZjQxOTM2N2QxODRkMThkMzgy
Y2FkMmVjOTM2YTMzODI3YjU0YTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L1dlYkNvbnRlbnRSZWFkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29u
dGVudFJlYWRlci5jcHAKQEAgLTMxLDE0ICszMSw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotRG9jdW1lbnRGcmFnbWVudCYgV2ViQ29udGVudFJlYWRlcjo6ZW5zdXJlRnJhZ21lbnQoKQot
ewotICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYWdtZW50KQotICAg
ICAgICBmcmFnbWVudCA9IGZyYW1lLmRvY3VtZW50KCktPmNyZWF0ZURvY3VtZW50RnJhZ21lbnQo
KTsKLSAgICByZXR1cm4gKmZyYWdtZW50OwotfQotCiB2b2lkIFdlYkNvbnRlbnRSZWFkZXI6OmFk
ZEZyYWdtZW50KFJlZjxEb2N1bWVudEZyYWdtZW50PiYmIG5ld0ZyYWdtZW50KQogewogICAgIGlm
ICghZnJhZ21lbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRl
bnRSZWFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCmlu
ZGV4IGRmOTg0YmFmYmQzOWU1MjYxNGVhOTM5MjQ2ZTJmOGJiZmM0OGQxMjIuLjQ4OGIzOWJlZGI5
MzJhOTdiODk4OGM1MjAxYTg0ZTY1N2M0NGM4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
V2ViQ29udGVudFJlYWRlci5oCkBAIC02Myw3ICs2Myw2IEBAIHB1YmxpYzoKICAgICB7CiAgICAg
fQogCi0gICAgRG9jdW1lbnRGcmFnbWVudCYgZW5zdXJlRnJhZ21lbnQoKTsKICAgICB2b2lkIGFk
ZEZyYWdtZW50KFJlZjxEb2N1bWVudEZyYWdtZW50PiYmKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1t
IGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0K
aW5kZXggM2RlNzFiYTI0ZGVhOGJkNGUxZjgzZjAwMThiYzAwMDg4ZWE5MDM5Yy4uMmQxOTllYmUx
ODg3NGVlN2Q4NGQ2ZTQyMmFlYzZjMDIzOTA5YjBiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KQEAgLTY0OSwyNyAr
NjQ5LDIwIEBAIGJvb2wgV2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyhjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGF0aHMpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGF1dG8mIGRv
Y3VtZW50ID0gKmZyYW1lLmRvY3VtZW50KCk7Ci0gICAgYm9vbCByZWFkQW55RmlsZVBhdGggPSBm
YWxzZTsKLSAgICBmb3IgKGF1dG8mIHBhdGggOiBwYXRocykgeworICAgIGZyYWdtZW50ID0gZG9j
dW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpOworCiAjaWYgRU5BQkxFKEFUVEFDSE1FTlRf
RUxFTUVOVCkKKyAgICBmb3IgKGF1dG8mIHBhdGggOiBwYXRocykgewogICAgICAgICBpZiAoUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5hdHRhY2htZW50RWxlbWVudEVu
YWJsZWQoKSkgewogICAgICAgICAgICAgYXV0byBhdHRhY2htZW50ID0gSFRNTEF0dGFjaG1lbnRF
bGVtZW50OjpjcmVhdGUoSFRNTE5hbWVzOjphdHRhY2htZW50VGFnLCBkb2N1bWVudCk7CiAgICAg
ICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShwYXRoKSwgSFRNTEF0dGFj
aG1lbnRFbGVtZW50OjpVcGRhdGVEaXNwbGF5QXR0cmlidXRlczo6WWVzKTsKLSAgICAgICAgICAg
IGVuc3VyZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoYXR0YWNobWVudCk7Ci0gICAgICAgICAgICBy
ZWFkQW55RmlsZVBhdGggPSB0cnVlOworICAgICAgICAgICAgZnJhZ21lbnQtPmFwcGVuZENoaWxk
KGF0dGFjaG1lbnQpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KLSNlbmRpZgot
I2lmIFBMQVRGT1JNKE1BQykKLSAgICAgICAgLy8gRklYTUU6IERvZXMgKGFuZCBzaG91bGQpIGFu
eSBtYWNPUyBjbGllbnQgZGVwZW5kIG9uIGluc2VydGluZyBmaWxlIHBhdGhzIGFzIHBsYWluIHRl
eHQgaW4gd2ViIGNvbnRlbnQ/Ci0gICAgICAgIC8vIElmIG5vdCwgd2Ugc2hvdWxkIGp1c3QgcmVt
b3ZlIHRoaXMuCi0gICAgICAgIGF1dG8gcGFyYWdyYXBoID0gY3JlYXRlRGVmYXVsdFBhcmFncmFw
aEVsZW1lbnQoZG9jdW1lbnQpOwotICAgICAgICBwYXJhZ3JhcGgtPmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKHVzZXJWaXNpYmxlU3RyaW5nKFtOU1VSTCBmaWxlVVJMV2l0aFBh
dGg6cGF0aF0pKSk7Ci0gICAgICAgIGVuc3VyZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQocGFyYWdy
YXBoKTsKLSAgICAgICAgcmVhZEFueUZpbGVQYXRoID0gdHJ1ZTsKLSNlbmRpZgogICAgIH0KLSAg
ICByZXR1cm4gcmVhZEFueUZpbGVQYXRoOworI2VuZGlmCisKKyAgICByZXR1cm4gdHJ1ZTsKIH0K
IAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IGFjNDMyNjYyN2MwNzMwODc4YjM0YmMzMjE0ZTg5YWFiYzI2NTIxZDUuLjBl
YTI0NDgyN2E5OGUxOThiZjU3MjRjN2FhNzg1N2U5MTY5Nzc3MzAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NyBAQAorMjAxOC0wMi0wNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4K
KworICAgICAgICBSRUdSRVNTSU9OKHIyMjYzOTYpOiBGaWxlIHBhdGhzIGFyZSBpbnNlcnRlZCB3
aGVuIGRyb3BwaW5nIGltYWdlIGZpbGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODI1NTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3Mjk0MTIw
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFR3ZWFr
IGFuIGV4aXN0aW5nIGxheW91dCB0ZXN0IHRoYXQgZHJvcHMgYSBmaWxlIGludG8gYSBjb250ZW50
ZWRpdGFibGUsIHRvIGNoZWNrIHRoYXQgbm8gdGV4dCBpcyBpbnNlcnRlZCBpbnRvCisgICAgICAg
IHRoZSBlZGl0YWJsZSBlbGVtZW50IGFmdGVyIGRyb3BwaW5nLgorCisgICAgICAgICogZWRpdGlu
Zy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0
YWJsZS1lbGVtZW50LWFzLVVSTHMuaHRtbDoKKwogMjAxOC0wMS0zMSAgUGVyIEFybmUgVm9sbGFu
ICA8cHZvbGxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgTGF5b3V0IFRlc3QgZmFzdC9ldmVudHMv
YmVmb3JldW5sb2FkLWRvbS1tYW5pcHVsYXRpb24tY3Jhc2guaHRtbCBpcyBjcmFzaGluZwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRp
dGFibGUtZWxlbWVudC1hcy1VUkxzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcv
cGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy1leHBlY3Rl
ZC50eHQKaW5kZXggNzU4MjRjMTg5NWJlMzU4ZDlhOTViMzMxY2RiODczNmE5NzQxMzdkZi4uNDUx
NzM0MTc3MDJkZjY1MGVmOGZiOWFjYTRlN2NmMGI5ZWVlNGIzNCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1h
cy1VUkxzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQv
ZHJhZy1maWxlcy10by1lZGl0YWJsZS1lbGVtZW50LWFzLVVSTHMtZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsNCBAQAotSWYgd2UgZHJhZyBmaWxlcyBvbnRvIGFuIGVkaXRhYmxlIGFyZWEsIHRoZW4g
YXR0YWNobWVudHMgc2hvdWxkIGJlIGluc2VydGVkIGludG8gdGhlIGVkaXRhYmxlIGFyZWEuCitJ
ZiB3ZSBkcmFnIGZpbGVzIG9udG8gYW4gZWRpdGFibGUgYXJlYSwgdGhlbiBhdHRhY2htZW50cyBz
aG91bGQgbm90IGJlIGluc2VydGVkIGludG8gdGhlIGVkaXRhYmxlIGFyZWEgc2luY2UgYXR0YWNo
bWVudCBlbGVtZW50cyBhcmUgZGlzYWJsZWQuCiAKIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
IApAQCAtNiw2ICs2LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIFBBU1Mgd2luZG93LkhU
TUxBdHRhY2htZW50RWxlbWVudCBpcyB1bmRlZmluZWQuCiBQQVNTIGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImF0dGFjaG1lbnQiKSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVl
CiBQQVNTIGVkaXRhYmxlLnF1ZXJ5U2VsZWN0b3IoImF0dGFjaG1lbnQiKSBpcyBudWxsCitQQVNT
IGVkaXRhYmxlLnRleHRDb250ZW50IGlzICIiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFz
dGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVu
dC1hcy1VUkxzLmh0bWwKaW5kZXggYjVkMDhlODQ0ODI1OWU4MDMwNWU1ODQyZmI1YjIzY2QyZWJl
M2JlMy4uZDVkMDI0MzJjZTk3ZmY2YzhkYmM3M2Y3M2I0NmIzNjExNWQ1MjVlNyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUt
ZWxlbWVudC1hcy1VUkxzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJk
L2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLmh0bWwKQEAgLTYsNyArNiw3
IEBACiA8ZGl2IGlkPSJlZGl0YWJsZSIgY29udGVudEVkaXRhYmxlPXRydWUgc3R5bGU9IndpZHRo
OjIwMHB4OyBoZWlnaHQ6MjAwcHgiPjwvZGl2PgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgotZGVzY3JpcHRpb24oJ0lmIHdl
IGRyYWcgZmlsZXMgb250byBhbiBlZGl0YWJsZSBhcmVhLCB0aGVuIGF0dGFjaG1lbnRzIHNob3Vs
ZCBiZSBpbnNlcnRlZCBpbnRvIHRoZSBlZGl0YWJsZSBhcmVhLicpOworZGVzY3JpcHRpb24oJ0lm
IHdlIGRyYWcgZmlsZXMgb250byBhbiBlZGl0YWJsZSBhcmVhLCB0aGVuIGF0dGFjaG1lbnRzIHNo
b3VsZCBub3QgYmUgaW5zZXJ0ZWQgaW50byB0aGUgZWRpdGFibGUgYXJlYSBzaW5jZSBhdHRhY2ht
ZW50IGVsZW1lbnRzIGFyZSBkaXNhYmxlZC4nKTsKIAogdmFyIGVkaXRhYmxlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImVkaXRhYmxlIik7CiBpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CkBA
IC0xNCw2ICsxNCw3IEBAIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICBzaG91bGRCZVVu
ZGVmaW5lZCgnd2luZG93LkhUTUxBdHRhY2htZW50RWxlbWVudCcpOwogICAgIHNob3VsZEJlVHJ1
ZSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYXR0YWNobWVudCIpIGluc3RhbmNlb2YgSFRNTFVu
a25vd25FbGVtZW50Jyk7CiAgICAgc2hvdWxkQmUoJ2VkaXRhYmxlLnF1ZXJ5U2VsZWN0b3IoImF0
dGFjaG1lbnQiKScsICdudWxsJyk7CisgICAgc2hvdWxkQmUoJ2VkaXRhYmxlLnRleHRDb250ZW50
JywgJyIiJyk7CiAgICAgZWRpdGFibGUuaW5uZXJIVE1MID0gJyc7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333247</attachid>
            <date>2018-02-06 18:21:00 -0800</date>
            <delta_ts>2018-02-07 09:09:37 -0800</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-182557-20180206182059.patch</filename>
            <type>text/plain</type>
            <size>8512</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4MjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjg0N2YwZWM0NDJiODQ4
ODJiYTkwOGQ0ZmFjOGJhM2M0MDYwNjAxNy4uYjFjYTVjODc3Nzk1NDZmZmUxYzJmYjYwZGM1Mzcy
MjJiZTc1YzQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE4LTAyLTA2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04o
cjIyNjM5Nik6IEZpbGUgcGF0aHMgYXJlIGluc2VydGVkIHdoZW4gZHJvcHBpbmcgaW1hZ2UgZmls
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjU1
NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzcyOTQxMjA+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV2ZXJ0cyB1bmludGVuZGVkIGNoYW5nZXMg
aW4gPGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvcjIyNjM5Nj4uIEJlZm9yZSByMjI2Mzk2LCBXZWJD
b250ZW50UmVhZGVyOjpyZWFkRmlsZW5hbWVzCisgICAgICAgIChhIGhlbHBlciBmdW5jdGlvbiBp
biBtYWNPUy1zcGVjaWZpYyBjb2RlKSBjb250YWluZWQgbG9naWMgdG8gY3JlYXRlIGFuZCBpbnNl
cnQgYXR0YWNobWVudCBlbGVtZW50cyBpZgorICAgICAgICBFTkFCTEUoQVRUQUNITUVOVF9FTEVN
RU5UKTsgb3RoZXJ3aXNlLCBpdCB3b3VsZCBmYWxsIGJhY2sgdG8gaW5zZXJ0aW5nIHRoZSB2aXNp
YmxlIFVSTCBhcyBhIHRleHQgbm9kZS4gU2luY2Ugd2UKKyAgICAgICAgZW5hYmxlIHRoZSBhdHRh
Y2htZW50IGVsZW1lbnQgb24gYWxsIENvY29hIHBsYXRmb3JtcyB2aWEgeGNjb25maWcgZmlsZXMs
IHRoaXMgd2FzIGVmZmVjdGl2ZWx5IGRlYWQgY29kZS4KKworICAgICAgICBIb3dldmVyLCB3aGVu
IHIyMjYzOTYgKHdoaWNoIG1vdmVkIHRoaXMgb3V0IGZyb20gbWFjT1MgdG8gQ29jb2EgcGxhdGZv
cm0gY29kZSkgcmVmYWN0b3JlZCB0aGlzIGhlbHBlciBmdW5jdGlvbiwKKyAgICAgICAgaXQgYWxz
byBtb3ZlZCB0aGlzIGNodW5rIG9mIGNvZGUgb3V0IG9mIHRoZSAhRU5BQkxFKEFUVEFDSE1FTlQp
IGNvbmRpdGlvbmFsIGFuZCBpbnRvIGEgUExBVEZPUk0oTUFDKSBndWFyZCwKKyAgICAgICAgd2hp
Y2ggbWVhbnMgdGhhdCB3ZSBub3cgZmFsbCBiYWNrIHRvIGluc2VydGluZyBmaWxlIHBhdGhzIGFz
IHRleHQgd2hlbiBhdHRhY2htZW50IGVsZW1lbnRzIGFyZSBkaXNhYmxlZC4gVG8gZml4CisgICAg
ICAgIHRoaXMsIHdlIHNpbXBseSByZW1vdmUgdGhlIChwcmV2aW91c2x5KSBkZWFkIGNvZGUuCisK
KyAgICAgICAgQSBtb3JlIHN1YnRsZSBkaWZmZXJlbmNlIGlzIHRoYXQgd2Ugbm8gbG9uZ2VyIGFs
d2F5cyByZXR1cm4gdHJ1ZSBmcm9tIFdlYkNvbnRlbnRSZWFkZXI6OnJlYWRGaWxlUGF0aHMuIFRo
aXMKKyAgICAgICAgbWVhbnMgdGhhdCB3aGVuIHdlIGRyb3AgZmlsZXMsIHdlIG5vIGxvbmdlciBm
YWxsIHRocm91Z2ggdGhlIGVhcmx5IHJldHVybiBpbiBkb2N1bWVudEZyYWdtZW50RnJvbURyYWdE
YXRhIHdoZW4KKyAgICAgICAgd2UndmUgbWFkZSBhIGZyYWdtZW50LCBzbyB3ZSBwcm9jZWVkIHRv
IHJlYWQgdGhlIGZpbGUgcGF0aCBhcyBhIFVSTC4gVG8gYWRkcmVzcyB0aGlzLCB3ZSBqdXN0IHJl
c3RvcmUgdGhlIHByZS0KKyAgICAgICAgbWFjT1MgMTAuMTMuNCBiZWhhdmlvciBvZiBpbml0aWFs
aXppbmcgdGhlIGRvY3VtZW50IGZyYWdtZW50LgorCisgICAgICAgIFRlc3Q6IG1vZGlmaWVkIGVk
aXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5o
dG1sLgorCisgICAgICAgICogZWRpdGluZy9XZWJDb250ZW50UmVhZGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OldlYkNvbnRlbnRSZWFkZXI6OmVuc3VyZUZyYWdtZW50KTogRGVsZXRlZC4KKwor
ICAgICAgICBSZW1vdmUgdGhpcyBoZWxwZXIsIGFzIGl0IHdhcyBvbmx5IHVzZWQgaW4gV2ViQ29u
dGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocy4KKworICAgICAgICAqIGVkaXRpbmcvV2ViQ29udGVu
dFJlYWRlci5oOgorICAgICAgICAqIGVkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29h
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6V2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyk6
CisKIDIwMTgtMDItMDYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFVzZSBkb3duY2FzdCBpbiBjcmVhdGVMaW5rUHJlbG9hZFJlc291cmNlQ2xpZW50CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9XZWJDb250ZW50UmVhZGVyLmNwcAppbmRleCA1NDQ5MTJhNzQ5
M2M3MTY4MDc3NzdlMzVlZWUwMjNlNGUyM2VhNzM0Li5jZjQxOTM2N2QxODRkMThkMzgyY2FkMmVj
OTM2YTMzODI3YjU0YTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNv
bnRlbnRSZWFkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJl
YWRlci5jcHAKQEAgLTMxLDE0ICszMSw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRG9j
dW1lbnRGcmFnbWVudCYgV2ViQ29udGVudFJlYWRlcjo6ZW5zdXJlRnJhZ21lbnQoKQotewotICAg
IEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYWdtZW50KQotICAgICAgICBm
cmFnbWVudCA9IGZyYW1lLmRvY3VtZW50KCktPmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKLSAg
ICByZXR1cm4gKmZyYWdtZW50OwotfQotCiB2b2lkIFdlYkNvbnRlbnRSZWFkZXI6OmFkZEZyYWdt
ZW50KFJlZjxEb2N1bWVudEZyYWdtZW50PiYmIG5ld0ZyYWdtZW50KQogewogICAgIGlmICghZnJh
Z21lbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFk
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCmluZGV4IGRm
OTg0YmFmYmQzOWU1MjYxNGVhOTM5MjQ2ZTJmOGJiZmM0OGQxMjIuLjQ4OGIzOWJlZGI5MzJhOTdi
ODk4OGM1MjAxYTg0ZTY1N2M0NGM4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvV2ViQ29udGVudFJlYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29u
dGVudFJlYWRlci5oCkBAIC02Myw3ICs2Myw2IEBAIHB1YmxpYzoKICAgICB7CiAgICAgfQogCi0g
ICAgRG9jdW1lbnRGcmFnbWVudCYgZW5zdXJlRnJhZ21lbnQoKTsKICAgICB2b2lkIGFkZEZyYWdt
ZW50KFJlZjxEb2N1bWVudEZyYWdtZW50PiYmKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KaW5kZXgg
M2RlNzFiYTI0ZGVhOGJkNGUxZjgzZjAwMThiYzAwMDg4ZWE5MDM5Yy4uMmQxOTllYmUxODg3NGVl
N2Q4NGQ2ZTQyMmFlYzZjMDIzOTA5YjBiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KQEAgLTY0OSwyNyArNjQ5LDIw
IEBAIGJvb2wgV2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgcGF0aHMpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGF1dG8mIGRvY3VtZW50
ID0gKmZyYW1lLmRvY3VtZW50KCk7Ci0gICAgYm9vbCByZWFkQW55RmlsZVBhdGggPSBmYWxzZTsK
LSAgICBmb3IgKGF1dG8mIHBhdGggOiBwYXRocykgeworICAgIGZyYWdtZW50ID0gZG9jdW1lbnQu
Y3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpOworCiAjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVO
VCkKKyAgICBmb3IgKGF1dG8mIHBhdGggOiBwYXRocykgewogICAgICAgICBpZiAoUnVudGltZUVu
YWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5hdHRhY2htZW50RWxlbWVudEVuYWJsZWQo
KSkgewogICAgICAgICAgICAgYXV0byBhdHRhY2htZW50ID0gSFRNTEF0dGFjaG1lbnRFbGVtZW50
OjpjcmVhdGUoSFRNTE5hbWVzOjphdHRhY2htZW50VGFnLCBkb2N1bWVudCk7CiAgICAgICAgICAg
ICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShwYXRoKSwgSFRNTEF0dGFjaG1lbnRF
bGVtZW50OjpVcGRhdGVEaXNwbGF5QXR0cmlidXRlczo6WWVzKTsKLSAgICAgICAgICAgIGVuc3Vy
ZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoYXR0YWNobWVudCk7Ci0gICAgICAgICAgICByZWFkQW55
RmlsZVBhdGggPSB0cnVlOworICAgICAgICAgICAgZnJhZ21lbnQtPmFwcGVuZENoaWxkKGF0dGFj
aG1lbnQpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KLSNlbmRpZgotI2lmIFBM
QVRGT1JNKE1BQykKLSAgICAgICAgLy8gRklYTUU6IERvZXMgKGFuZCBzaG91bGQpIGFueSBtYWNP
UyBjbGllbnQgZGVwZW5kIG9uIGluc2VydGluZyBmaWxlIHBhdGhzIGFzIHBsYWluIHRleHQgaW4g
d2ViIGNvbnRlbnQ/Ci0gICAgICAgIC8vIElmIG5vdCwgd2Ugc2hvdWxkIGp1c3QgcmVtb3ZlIHRo
aXMuCi0gICAgICAgIGF1dG8gcGFyYWdyYXBoID0gY3JlYXRlRGVmYXVsdFBhcmFncmFwaEVsZW1l
bnQoZG9jdW1lbnQpOwotICAgICAgICBwYXJhZ3JhcGgtPmFwcGVuZENoaWxkKGRvY3VtZW50LmNy
ZWF0ZVRleHROb2RlKHVzZXJWaXNpYmxlU3RyaW5nKFtOU1VSTCBmaWxlVVJMV2l0aFBhdGg6cGF0
aF0pKSk7Ci0gICAgICAgIGVuc3VyZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQocGFyYWdyYXBoKTsK
LSAgICAgICAgcmVhZEFueUZpbGVQYXRoID0gdHJ1ZTsKLSNlbmRpZgogICAgIH0KLSAgICByZXR1
cm4gcmVhZEFueUZpbGVQYXRoOworI2VuZGlmCisKKyAgICByZXR1cm4gdHJ1ZTsKIH0KIAogfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IGQwNGI2MGExZjQ2N2VlYzljMjYwNTJiZjNiMmQwZjNmYmYyYmEzM2UuLjMxNjJhN2Ni
MzU4MzczODI4NGU0Mzg3NjhlMmVjYmE0OWY5MTRiM2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxOC0wMi0wNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAg
ICAgICBSRUdSRVNTSU9OKHIyMjYzOTYpOiBGaWxlIHBhdGhzIGFyZSBpbnNlcnRlZCB3aGVuIGRy
b3BwaW5nIGltYWdlIGZpbGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODI1NTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3Mjk0MTIwPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFR3ZWFrIGFuIGV4
aXN0aW5nIGxheW91dCB0ZXN0IHRoYXQgZHJvcHMgYSBmaWxlIGludG8gYSBjb250ZW50ZWRpdGFi
bGUsIHRvIGNoZWNrIHRoYXQgbm8gdGV4dCBpcyBpbnNlcnRlZCBpbnRvCisgICAgICAgIHRoZSBl
ZGl0YWJsZSBlbGVtZW50IGFmdGVyIGRyb3BwaW5nLgorCisgICAgICAgICogZWRpdGluZy9wYXN0
ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0YWJsZS1l
bGVtZW50LWFzLVVSTHMuaHRtbDoKKwogMjAxOC0wMi0wNiAgTWF0dCBMZXdpcyAgPGpsZXdpczNA
YXBwbGUuY29tPgogCiAgICAgICAgIE1hcmtlZCB0cmFuc2l0aW9ucy90cmFuc2l0aW9uLWRpc3Bs
YXktcHJvcGVydHkuaHRtbCBhcyBmbGFreS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRp
bmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1l
ZGl0YWJsZS1lbGVtZW50LWFzLVVSTHMtZXhwZWN0ZWQudHh0CmluZGV4IDc1ODI0YzE4OTViZTM1
OGQ5YTk1YjMzMWNkYjg3MzZhOTc0MTM3ZGYuLjQ1MTczNDE3NzAyZGY2NTBlZjhmYjlhY2E0ZTdj
ZjBiOWVlZTRiMzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9k
cmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxl
bWVudC1hcy1VUkxzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUlmIHdlIGRyYWcgZmls
ZXMgb250byBhbiBlZGl0YWJsZSBhcmVhLCB0aGVuIGF0dGFjaG1lbnRzIHNob3VsZCBiZSBpbnNl
cnRlZCBpbnRvIHRoZSBlZGl0YWJsZSBhcmVhLgorSWYgd2UgZHJhZyBmaWxlcyBvbnRvIGFuIGVk
aXRhYmxlIGFyZWEsIHRoZW4gYXR0YWNobWVudHMgc2hvdWxkIG5vdCBiZSBpbnNlcnRlZCBpbnRv
IHRoZSBlZGl0YWJsZSBhcmVhIHNpbmNlIGF0dGFjaG1lbnQgZWxlbWVudHMgYXJlIGRpc2FibGVk
LgogCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKQEAgLTYsNiArNiw3IEBAIE9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFCiBQQVNTIHdpbmRvdy5IVE1MQXR0YWNobWVudEVsZW1lbnQgaXMgdW5k
ZWZpbmVkLgogUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhdHRhY2htZW50IikgaW5zdGFu
Y2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgdHJ1ZQogUEFTUyBlZGl0YWJsZS5xdWVyeVNlbGVj
dG9yKCJhdHRhY2htZW50IikgaXMgbnVsbAorUEFTUyBlZGl0YWJsZS50ZXh0Q29udGVudCBpcyAi
IgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0
YWJsZS1lbGVtZW50LWFzLVVSTHMuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2Fy
ZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sCmluZGV4IGI1ZDA4
ZTg0NDgyNTllODAzMDVlNTg0MmZiNWIyM2NkMmViZTNiZTMuLmQ1ZDAyNDMyY2U5N2ZmNmM4ZGJj
NzNmNzNiNDZiMzYxMTVkNTI1ZTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFz
dGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sCisrKyBi
L0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVs
ZW1lbnQtYXMtVVJMcy5odG1sCkBAIC02LDcgKzYsNyBAQAogPGRpdiBpZD0iZWRpdGFibGUiIGNv
bnRlbnRFZGl0YWJsZT10cnVlIHN0eWxlPSJ3aWR0aDoyMDBweDsgaGVpZ2h0OjIwMHB4Ij48L2Rp
dj4KIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgogPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCdJZiB3ZSBkcmFnIGZpbGVzIG9udG8gYW4gZWRpdGFi
bGUgYXJlYSwgdGhlbiBhdHRhY2htZW50cyBzaG91bGQgYmUgaW5zZXJ0ZWQgaW50byB0aGUgZWRp
dGFibGUgYXJlYS4nKTsKK2Rlc2NyaXB0aW9uKCdJZiB3ZSBkcmFnIGZpbGVzIG9udG8gYW4gZWRp
dGFibGUgYXJlYSwgdGhlbiBhdHRhY2htZW50cyBzaG91bGQgbm90IGJlIGluc2VydGVkIGludG8g
dGhlIGVkaXRhYmxlIGFyZWEgc2luY2UgYXR0YWNobWVudCBlbGVtZW50cyBhcmUgZGlzYWJsZWQu
Jyk7CiAKIHZhciBlZGl0YWJsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlZGl0YWJsZSIp
OwogaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewpAQCAtMTQsNiArMTQsNyBAQCBpZiAod2luZG93
LmV2ZW50U2VuZGVyKSB7CiAgICAgc2hvdWxkQmVVbmRlZmluZWQoJ3dpbmRvdy5IVE1MQXR0YWNo
bWVudEVsZW1lbnQnKTsKICAgICBzaG91bGRCZVRydWUoJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImF0dGFjaG1lbnQiKSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCcpOwogICAgIHNob3Vs
ZEJlKCdlZGl0YWJsZS5xdWVyeVNlbGVjdG9yKCJhdHRhY2htZW50IiknLCAnbnVsbCcpOworICAg
IHNob3VsZEJlKCdlZGl0YWJsZS50ZXh0Q29udGVudCcsICciIicpOwogICAgIGVkaXRhYmxlLmlu
bmVySFRNTCA9ICcnOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333291</attachid>
            <date>2018-02-07 09:09:38 -0800</date>
            <delta_ts>2018-02-07 11:07:27 -0800</delta_ts>
            <desc>ChangeLog tweak</desc>
            <filename>bug-182557-20180207090937.patch</filename>
            <type>text/plain</type>
            <size>8521</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4MjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjg0N2YwZWM0NDJiODQ4
ODJiYTkwOGQ0ZmFjOGJhM2M0MDYwNjAxNy4uY2QxOTI0OGQxNjllMTliYjczMTA2MzVlZjQ0MjVj
YzdhMGM2ZGRmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE4LTAyLTA2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04o
cjIyNjM5Nik6IEZpbGUgcGF0aHMgYXJlIGluc2VydGVkIHdoZW4gZHJvcHBpbmcgaW1hZ2UgZmls
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjU1
NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzcyOTQxMjA+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV2ZXJ0cyB1bmludGVuZGVkIGNoYW5nZXMg
aW4gPGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvcjIyNjM5Nj4uIEJlZm9yZSByMjI2Mzk2LCBXZWJD
b250ZW50UmVhZGVyOjpyZWFkRmlsZW5hbWVzCisgICAgICAgIChhIGhlbHBlciBmdW5jdGlvbiBp
biBtYWNPUy1zcGVjaWZpYyBjb2RlKSBjb250YWluZWQgbG9naWMgdG8gY3JlYXRlIGFuZCBpbnNl
cnQgYXR0YWNobWVudCBlbGVtZW50cyBpZgorICAgICAgICBFTkFCTEUoQVRUQUNITUVOVF9FTEVN
RU5UKTsgb3RoZXJ3aXNlLCBpdCB3b3VsZCBmYWxsIGJhY2sgdG8gaW5zZXJ0aW5nIHRoZSB2aXNp
YmxlIFVSTCBhcyBhIHRleHQgbm9kZS4gU2luY2Ugd2UKKyAgICAgICAgZW5hYmxlIHRoZSBhdHRh
Y2htZW50IGVsZW1lbnQgb24gYWxsIENvY29hIHBsYXRmb3JtcyB2aWEgeGNjb25maWcgZmlsZXMs
IHRoaXMgd2FzIGVmZmVjdGl2ZWx5IGRlYWQgY29kZS4KKworICAgICAgICBIb3dldmVyLCB3aGVu
IHIyMjYzOTYgKHdoaWNoIG1vdmVkIHRoaXMgb3V0IGZyb20gbWFjT1MgdG8gQ29jb2EgcGxhdGZv
cm0gY29kZSkgcmVmYWN0b3JlZCB0aGlzIGhlbHBlciBmdW5jdGlvbiwKKyAgICAgICAgaXQgYWxz
byBtb3ZlZCB0aGlzIGNodW5rIG9mIGNvZGUgb3V0IG9mIHRoZSAhRU5BQkxFKEFUVEFDSE1FTlQp
IGNvbmRpdGlvbmFsIGFuZCBpbnRvIGEgUExBVEZPUk0oTUFDKSBndWFyZCwKKyAgICAgICAgd2hp
Y2ggbWVhbnMgdGhhdCB3ZSBub3cgZmFsbCBiYWNrIHRvIGluc2VydGluZyBmaWxlIHBhdGhzIGFz
IHRleHQgd2hlbiBhdHRhY2htZW50IGVsZW1lbnRzIGFyZSBkaXNhYmxlZC4gVG8gZml4CisgICAg
ICAgIHRoaXMsIHdlIHNpbXBseSByZW1vdmUgdGhlIChwcmV2aW91c2x5KSBkZWFkIGNvZGUuCisK
KyAgICAgICAgQSBtb3JlIHN1YnRsZSBkaWZmZXJlbmNlIGlzIHRoYXQgd2Ugbm8gbG9uZ2VyIGFs
d2F5cyByZXR1cm4gdHJ1ZSBmcm9tIFdlYkNvbnRlbnRSZWFkZXI6OnJlYWRGaWxlUGF0aHMuIFRo
aXMKKyAgICAgICAgbWVhbnMgdGhhdCB3aGVuIHdlIGRyb3AgZmlsZXMsIHdlIG5vIGxvbmdlciBz
a2lwIG92ZXIgdGhlIGVhcmx5IHJldHVybiBpbiBkb2N1bWVudEZyYWdtZW50RnJvbURyYWdEYXRh
IHdoZW4KKyAgICAgICAgd2UndmUgbWFkZSBhIGZyYWdtZW50LCBzbyB3ZSByZWFkIHRoZSBmaWxl
IHBhdGggYXMgYSBVUkwuIFRvIGFkZHJlc3MgdGhpcywgd2UganVzdCByZXN0b3JlIHRoZSBwcmUt
bWFjT1MgMTAuMTMuNAorICAgICAgICBiZWhhdmlvciBvZiBpbml0aWFsaXppbmcgdGhlIGRvY3Vt
ZW50IGZyYWdtZW50LgorCisgICAgICAgIFRlc3Q6IG1vZGlmaWVkIGVkaXRpbmcvcGFzdGVib2Fy
ZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sLgorCisgICAgICAg
ICogZWRpdGluZy9XZWJDb250ZW50UmVhZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkNv
bnRlbnRSZWFkZXI6OmVuc3VyZUZyYWdtZW50KTogRGVsZXRlZC4KKworICAgICAgICBSZW1vdmUg
dGhpcyBoZWxwZXIsIGFzIGl0IHdhcyBvbmx5IHVzZWQgaW4gV2ViQ29udGVudFJlYWRlcjo6cmVh
ZEZpbGVQYXRocy4KKworICAgICAgICAqIGVkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oOgorICAg
ICAgICAqIGVkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tOgorICAgICAgICAo
V2ViQ29yZTo6V2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyk6CisKIDIwMTgtMDItMDYg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBkb3duY2Fz
dCBpbiBjcmVhdGVMaW5rUHJlbG9hZFJlc291cmNlQ2xpZW50CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9XZWJDb250ZW50UmVhZGVyLmNwcAppbmRleCA1NDQ5MTJhNzQ5M2M3MTY4MDc3NzdlMzVl
ZWUwMjNlNGUyM2VhNzM0Li5jZjQxOTM2N2QxODRkMThkMzgyY2FkMmVjOTM2YTMzODI3YjU0YTRm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5jcHAKQEAgLTMx
LDE0ICszMSw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRG9jdW1lbnRGcmFnbWVudCYg
V2ViQ29udGVudFJlYWRlcjo6ZW5zdXJlRnJhZ21lbnQoKQotewotICAgIEFTU0VSVChmcmFtZS5k
b2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYWdtZW50KQotICAgICAgICBmcmFnbWVudCA9IGZyYW1l
LmRvY3VtZW50KCktPmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKLSAgICByZXR1cm4gKmZyYWdt
ZW50OwotfQotCiB2b2lkIFdlYkNvbnRlbnRSZWFkZXI6OmFkZEZyYWdtZW50KFJlZjxEb2N1bWVu
dEZyYWdtZW50PiYmIG5ld0ZyYWdtZW50KQogewogICAgIGlmICghZnJhZ21lbnQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCmluZGV4IGRmOTg0YmFmYmQzOWU1MjYx
NGVhOTM5MjQ2ZTJmOGJiZmM0OGQxMjIuLjQ4OGIzOWJlZGI5MzJhOTdiODk4OGM1MjAxYTg0ZTY1
N2M0NGM4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJl
YWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCkBA
IC02Myw3ICs2Myw2IEBAIHB1YmxpYzoKICAgICB7CiAgICAgfQogCi0gICAgRG9jdW1lbnRGcmFn
bWVudCYgZW5zdXJlRnJhZ21lbnQoKTsKICAgICB2b2lkIGFkZEZyYWdtZW50KFJlZjxEb2N1bWVu
dEZyYWdtZW50PiYmKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KaW5kZXggM2RlNzFiYTI0ZGVhOGJk
NGUxZjgzZjAwMThiYzAwMDg4ZWE5MDM5Yy4uYzVmODJjNjg1ODA0MDNlYTgzMTFjMmFhMGNhN2Q5
YzcxNjhiYWFjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9XZWJD
b250ZW50UmVhZGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9X
ZWJDb250ZW50UmVhZGVyQ29jb2EubW0KQEAgLTY0OSwyNyArNjQ5LDIxIEBAIGJvb2wgV2ViQ29u
dGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGF0aHMpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGF1dG8mIGRvY3VtZW50ID0gKmZyYW1lLmRvY3Vt
ZW50KCk7Ci0gICAgYm9vbCByZWFkQW55RmlsZVBhdGggPSBmYWxzZTsKLSAgICBmb3IgKGF1dG8m
IHBhdGggOiBwYXRocykgeworICAgIGlmICghZnJhZ21lbnQpCisgICAgICAgIGZyYWdtZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpOworCiAjaWYgRU5BQkxFKEFUVEFDSE1F
TlRfRUxFTUVOVCkKKyAgICBmb3IgKGF1dG8mIHBhdGggOiBwYXRocykgewogICAgICAgICBpZiAo
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5hdHRhY2htZW50RWxlbWVu
dEVuYWJsZWQoKSkgewogICAgICAgICAgICAgYXV0byBhdHRhY2htZW50ID0gSFRNTEF0dGFjaG1l
bnRFbGVtZW50OjpjcmVhdGUoSFRNTE5hbWVzOjphdHRhY2htZW50VGFnLCBkb2N1bWVudCk7CiAg
ICAgICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShwYXRoKSwgSFRNTEF0
dGFjaG1lbnRFbGVtZW50OjpVcGRhdGVEaXNwbGF5QXR0cmlidXRlczo6WWVzKTsKLSAgICAgICAg
ICAgIGVuc3VyZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoYXR0YWNobWVudCk7Ci0gICAgICAgICAg
ICByZWFkQW55RmlsZVBhdGggPSB0cnVlOworICAgICAgICAgICAgZnJhZ21lbnQtPmFwcGVuZENo
aWxkKGF0dGFjaG1lbnQpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KLSNlbmRp
ZgotI2lmIFBMQVRGT1JNKE1BQykKLSAgICAgICAgLy8gRklYTUU6IERvZXMgKGFuZCBzaG91bGQp
IGFueSBtYWNPUyBjbGllbnQgZGVwZW5kIG9uIGluc2VydGluZyBmaWxlIHBhdGhzIGFzIHBsYWlu
IHRleHQgaW4gd2ViIGNvbnRlbnQ/Ci0gICAgICAgIC8vIElmIG5vdCwgd2Ugc2hvdWxkIGp1c3Qg
cmVtb3ZlIHRoaXMuCi0gICAgICAgIGF1dG8gcGFyYWdyYXBoID0gY3JlYXRlRGVmYXVsdFBhcmFn
cmFwaEVsZW1lbnQoZG9jdW1lbnQpOwotICAgICAgICBwYXJhZ3JhcGgtPmFwcGVuZENoaWxkKGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKHVzZXJWaXNpYmxlU3RyaW5nKFtOU1VSTCBmaWxlVVJMV2l0
aFBhdGg6cGF0aF0pKSk7Ci0gICAgICAgIGVuc3VyZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQocGFy
YWdyYXBoKTsKLSAgICAgICAgcmVhZEFueUZpbGVQYXRoID0gdHJ1ZTsKLSNlbmRpZgogICAgIH0K
LSAgICByZXR1cm4gcmVhZEFueUZpbGVQYXRoOworI2VuZGlmCisKKyAgICByZXR1cm4gdHJ1ZTsK
IH0KIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGQwNGI2MGExZjQ2N2VlYzljMjYwNTJiZjNiMmQwZjNmYmYyYmEzM2Uu
LjMxNjJhN2NiMzU4MzczODI4NGU0Mzg3NjhlMmVjYmE0OWY5MTRiM2QgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNyBAQAorMjAxOC0wMi0wNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KKworICAgICAgICBSRUdSRVNTSU9OKHIyMjYzOTYpOiBGaWxlIHBhdGhzIGFyZSBpbnNlcnRl
ZCB3aGVuIGRyb3BwaW5nIGltYWdlIGZpbGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODI1NTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3Mjk0
MTIwPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFR3
ZWFrIGFuIGV4aXN0aW5nIGxheW91dCB0ZXN0IHRoYXQgZHJvcHMgYSBmaWxlIGludG8gYSBjb250
ZW50ZWRpdGFibGUsIHRvIGNoZWNrIHRoYXQgbm8gdGV4dCBpcyBpbnNlcnRlZCBpbnRvCisgICAg
ICAgIHRoZSBlZGl0YWJsZSBlbGVtZW50IGFmdGVyIGRyb3BwaW5nLgorCisgICAgICAgICogZWRp
dGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1l
ZGl0YWJsZS1lbGVtZW50LWFzLVVSTHMuaHRtbDoKKwogMjAxOC0wMi0wNiAgTWF0dCBMZXdpcyAg
PGpsZXdpczNAYXBwbGUuY29tPgogCiAgICAgICAgIE1hcmtlZCB0cmFuc2l0aW9ucy90cmFuc2l0
aW9uLWRpc3BsYXktcHJvcGVydHkuaHRtbCBhcyBmbGFreS4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMt
VVJMcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1m
aWxlcy10by1lZGl0YWJsZS1lbGVtZW50LWFzLVVSTHMtZXhwZWN0ZWQudHh0CmluZGV4IDc1ODI0
YzE4OTViZTM1OGQ5YTk1YjMzMWNkYjg3MzZhOTc0MTM3ZGYuLjQ1MTczNDE3NzAyZGY2NTBlZjhm
YjlhY2E0ZTdjZjBiOWVlZTRiMzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFz
dGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRp
dGFibGUtZWxlbWVudC1hcy1VUkxzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUlmIHdl
IGRyYWcgZmlsZXMgb250byBhbiBlZGl0YWJsZSBhcmVhLCB0aGVuIGF0dGFjaG1lbnRzIHNob3Vs
ZCBiZSBpbnNlcnRlZCBpbnRvIHRoZSBlZGl0YWJsZSBhcmVhLgorSWYgd2UgZHJhZyBmaWxlcyBv
bnRvIGFuIGVkaXRhYmxlIGFyZWEsIHRoZW4gYXR0YWNobWVudHMgc2hvdWxkIG5vdCBiZSBpbnNl
cnRlZCBpbnRvIHRoZSBlZGl0YWJsZSBhcmVhIHNpbmNlIGF0dGFjaG1lbnQgZWxlbWVudHMgYXJl
IGRpc2FibGVkLgogCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKQEAgLTYsNiArNiw3IEBA
IE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFCiBQQVNTIHdpbmRvdy5IVE1MQXR0YWNobWVudEVsZW1l
bnQgaXMgdW5kZWZpbmVkLgogUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhdHRhY2htZW50
IikgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgdHJ1ZQogUEFTUyBlZGl0YWJsZS5x
dWVyeVNlbGVjdG9yKCJhdHRhY2htZW50IikgaXMgbnVsbAorUEFTUyBlZGl0YWJsZS50ZXh0Q29u
dGVudCBpcyAiIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBM
RVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxl
cy10by1lZGl0YWJsZS1lbGVtZW50LWFzLVVSTHMuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcv
cGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sCmlu
ZGV4IGI1ZDA4ZTg0NDgyNTllODAzMDVlNTg0MmZiNWIyM2NkMmViZTNiZTMuLmQ1ZDAyNDMyY2U5
N2ZmNmM4ZGJjNzNmNzNiNDZiMzYxMTVkNTI1ZTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Vk
aXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVk
aXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sCkBAIC02LDcgKzYsNyBAQAogPGRpdiBpZD0iZWRp
dGFibGUiIGNvbnRlbnRFZGl0YWJsZT10cnVlIHN0eWxlPSJ3aWR0aDoyMDBweDsgaGVpZ2h0OjIw
MHB4Ij48L2Rpdj4KIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCdJZiB3ZSBkcmFnIGZpbGVzIG9udG8g
YW4gZWRpdGFibGUgYXJlYSwgdGhlbiBhdHRhY2htZW50cyBzaG91bGQgYmUgaW5zZXJ0ZWQgaW50
byB0aGUgZWRpdGFibGUgYXJlYS4nKTsKK2Rlc2NyaXB0aW9uKCdJZiB3ZSBkcmFnIGZpbGVzIG9u
dG8gYW4gZWRpdGFibGUgYXJlYSwgdGhlbiBhdHRhY2htZW50cyBzaG91bGQgbm90IGJlIGluc2Vy
dGVkIGludG8gdGhlIGVkaXRhYmxlIGFyZWEgc2luY2UgYXR0YWNobWVudCBlbGVtZW50cyBhcmUg
ZGlzYWJsZWQuJyk7CiAKIHZhciBlZGl0YWJsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJl
ZGl0YWJsZSIpOwogaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewpAQCAtMTQsNiArMTQsNyBAQCBp
ZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CiAgICAgc2hvdWxkQmVVbmRlZmluZWQoJ3dpbmRvdy5I
VE1MQXR0YWNobWVudEVsZW1lbnQnKTsKICAgICBzaG91bGRCZVRydWUoJ2RvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImF0dGFjaG1lbnQiKSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCcpOwog
ICAgIHNob3VsZEJlKCdlZGl0YWJsZS5xdWVyeVNlbGVjdG9yKCJhdHRhY2htZW50IiknLCAnbnVs
bCcpOworICAgIHNob3VsZEJlKCdlZGl0YWJsZS50ZXh0Q29udGVudCcsICciIicpOwogICAgIGVk
aXRhYmxlLmlubmVySFRNTCA9ICcnOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333305</attachid>
            <date>2018-02-07 11:07:28 -0800</date>
            <delta_ts>2018-02-07 13:31:20 -0800</delta_ts>
            <desc>Test copy/paste as well.</desc>
            <filename>bug-182557-20180207110727.patch</filename>
            <type>text/plain</type>
            <size>12071</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4MjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjg0N2YwZWM0NDJiODQ4
ODJiYTkwOGQ0ZmFjOGJhM2M0MDYwNjAxNy4uY2QxOTI0OGQxNjllMTliYjczMTA2MzVlZjQ0MjVj
YzdhMGM2ZGRmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE4LTAyLTA2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04o
cjIyNjM5Nik6IEZpbGUgcGF0aHMgYXJlIGluc2VydGVkIHdoZW4gZHJvcHBpbmcgaW1hZ2UgZmls
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjU1
NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzcyOTQxMjA+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV2ZXJ0cyB1bmludGVuZGVkIGNoYW5nZXMg
aW4gPGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvcjIyNjM5Nj4uIEJlZm9yZSByMjI2Mzk2LCBXZWJD
b250ZW50UmVhZGVyOjpyZWFkRmlsZW5hbWVzCisgICAgICAgIChhIGhlbHBlciBmdW5jdGlvbiBp
biBtYWNPUy1zcGVjaWZpYyBjb2RlKSBjb250YWluZWQgbG9naWMgdG8gY3JlYXRlIGFuZCBpbnNl
cnQgYXR0YWNobWVudCBlbGVtZW50cyBpZgorICAgICAgICBFTkFCTEUoQVRUQUNITUVOVF9FTEVN
RU5UKTsgb3RoZXJ3aXNlLCBpdCB3b3VsZCBmYWxsIGJhY2sgdG8gaW5zZXJ0aW5nIHRoZSB2aXNp
YmxlIFVSTCBhcyBhIHRleHQgbm9kZS4gU2luY2Ugd2UKKyAgICAgICAgZW5hYmxlIHRoZSBhdHRh
Y2htZW50IGVsZW1lbnQgb24gYWxsIENvY29hIHBsYXRmb3JtcyB2aWEgeGNjb25maWcgZmlsZXMs
IHRoaXMgd2FzIGVmZmVjdGl2ZWx5IGRlYWQgY29kZS4KKworICAgICAgICBIb3dldmVyLCB3aGVu
IHIyMjYzOTYgKHdoaWNoIG1vdmVkIHRoaXMgb3V0IGZyb20gbWFjT1MgdG8gQ29jb2EgcGxhdGZv
cm0gY29kZSkgcmVmYWN0b3JlZCB0aGlzIGhlbHBlciBmdW5jdGlvbiwKKyAgICAgICAgaXQgYWxz
byBtb3ZlZCB0aGlzIGNodW5rIG9mIGNvZGUgb3V0IG9mIHRoZSAhRU5BQkxFKEFUVEFDSE1FTlQp
IGNvbmRpdGlvbmFsIGFuZCBpbnRvIGEgUExBVEZPUk0oTUFDKSBndWFyZCwKKyAgICAgICAgd2hp
Y2ggbWVhbnMgdGhhdCB3ZSBub3cgZmFsbCBiYWNrIHRvIGluc2VydGluZyBmaWxlIHBhdGhzIGFz
IHRleHQgd2hlbiBhdHRhY2htZW50IGVsZW1lbnRzIGFyZSBkaXNhYmxlZC4gVG8gZml4CisgICAg
ICAgIHRoaXMsIHdlIHNpbXBseSByZW1vdmUgdGhlIChwcmV2aW91c2x5KSBkZWFkIGNvZGUuCisK
KyAgICAgICAgQSBtb3JlIHN1YnRsZSBkaWZmZXJlbmNlIGlzIHRoYXQgd2Ugbm8gbG9uZ2VyIGFs
d2F5cyByZXR1cm4gdHJ1ZSBmcm9tIFdlYkNvbnRlbnRSZWFkZXI6OnJlYWRGaWxlUGF0aHMuIFRo
aXMKKyAgICAgICAgbWVhbnMgdGhhdCB3aGVuIHdlIGRyb3AgZmlsZXMsIHdlIG5vIGxvbmdlciBz
a2lwIG92ZXIgdGhlIGVhcmx5IHJldHVybiBpbiBkb2N1bWVudEZyYWdtZW50RnJvbURyYWdEYXRh
IHdoZW4KKyAgICAgICAgd2UndmUgbWFkZSBhIGZyYWdtZW50LCBzbyB3ZSByZWFkIHRoZSBmaWxl
IHBhdGggYXMgYSBVUkwuIFRvIGFkZHJlc3MgdGhpcywgd2UganVzdCByZXN0b3JlIHRoZSBwcmUt
bWFjT1MgMTAuMTMuNAorICAgICAgICBiZWhhdmlvciBvZiBpbml0aWFsaXppbmcgdGhlIGRvY3Vt
ZW50IGZyYWdtZW50LgorCisgICAgICAgIFRlc3Q6IG1vZGlmaWVkIGVkaXRpbmcvcGFzdGVib2Fy
ZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy5odG1sLgorCisgICAgICAg
ICogZWRpdGluZy9XZWJDb250ZW50UmVhZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkNv
bnRlbnRSZWFkZXI6OmVuc3VyZUZyYWdtZW50KTogRGVsZXRlZC4KKworICAgICAgICBSZW1vdmUg
dGhpcyBoZWxwZXIsIGFzIGl0IHdhcyBvbmx5IHVzZWQgaW4gV2ViQ29udGVudFJlYWRlcjo6cmVh
ZEZpbGVQYXRocy4KKworICAgICAgICAqIGVkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oOgorICAg
ICAgICAqIGVkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tOgorICAgICAgICAo
V2ViQ29yZTo6V2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyk6CisKIDIwMTgtMDItMDYg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBkb3duY2Fz
dCBpbiBjcmVhdGVMaW5rUHJlbG9hZFJlc291cmNlQ2xpZW50CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9XZWJDb250ZW50UmVhZGVyLmNwcAppbmRleCA1NDQ5MTJhNzQ5M2M3MTY4MDc3NzdlMzVl
ZWUwMjNlNGUyM2VhNzM0Li5jZjQxOTM2N2QxODRkMThkMzgyY2FkMmVjOTM2YTMzODI3YjU0YTRm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5jcHAKQEAgLTMx
LDE0ICszMSw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRG9jdW1lbnRGcmFnbWVudCYg
V2ViQ29udGVudFJlYWRlcjo6ZW5zdXJlRnJhZ21lbnQoKQotewotICAgIEFTU0VSVChmcmFtZS5k
b2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYWdtZW50KQotICAgICAgICBmcmFnbWVudCA9IGZyYW1l
LmRvY3VtZW50KCktPmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKLSAgICByZXR1cm4gKmZyYWdt
ZW50OwotfQotCiB2b2lkIFdlYkNvbnRlbnRSZWFkZXI6OmFkZEZyYWdtZW50KFJlZjxEb2N1bWVu
dEZyYWdtZW50PiYmIG5ld0ZyYWdtZW50KQogewogICAgIGlmICghZnJhZ21lbnQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvbnRlbnRSZWFkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCmluZGV4IGRmOTg0YmFmYmQzOWU1MjYx
NGVhOTM5MjQ2ZTJmOGJiZmM0OGQxMjIuLjQ4OGIzOWJlZGI5MzJhOTdiODk4OGM1MjAxYTg0ZTY1
N2M0NGM4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJl
YWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29udGVudFJlYWRlci5oCkBA
IC02Myw3ICs2Myw2IEBAIHB1YmxpYzoKICAgICB7CiAgICAgfQogCi0gICAgRG9jdW1lbnRGcmFn
bWVudCYgZW5zdXJlRnJhZ21lbnQoKTsKICAgICB2b2lkIGFkZEZyYWdtZW50KFJlZjxEb2N1bWVu
dEZyYWdtZW50PiYmKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KaW5kZXggM2RlNzFiYTI0ZGVhOGJk
NGUxZjgzZjAwMThiYzAwMDg4ZWE5MDM5Yy4uMTkzMTQ5NzU5YzMwZTlkZjliNjhlZWIyMzY3MmY3
ZjdmODVjY2EyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9XZWJD
b250ZW50UmVhZGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9X
ZWJDb250ZW50UmVhZGVyQ29jb2EubW0KQEAgLTY0OSwyNyArNjQ5LDIwIEBAIGJvb2wgV2ViQ29u
dGVudFJlYWRlcjo6cmVhZEZpbGVQYXRocyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGF0aHMpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGF1dG8mIGRvY3VtZW50ID0gKmZyYW1lLmRvY3Vt
ZW50KCk7Ci0gICAgYm9vbCByZWFkQW55RmlsZVBhdGggPSBmYWxzZTsKLSAgICBmb3IgKGF1dG8m
IHBhdGggOiBwYXRocykgeworICAgIGlmICghZnJhZ21lbnQpCisgICAgICAgIGZyYWdtZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpOworCiAjaWYgRU5BQkxFKEFUVEFDSE1F
TlRfRUxFTUVOVCkKLSAgICAgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZl
YXR1cmVzKCkuYXR0YWNobWVudEVsZW1lbnRFbmFibGVkKCkpIHsKKyAgICBpZiAoUnVudGltZUVu
YWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5hdHRhY2htZW50RWxlbWVudEVuYWJsZWQo
KSkgeworICAgICAgICBmb3IgKGF1dG8mIHBhdGggOiBwYXRocykgewogICAgICAgICAgICAgYXV0
byBhdHRhY2htZW50ID0gSFRNTEF0dGFjaG1lbnRFbGVtZW50OjpjcmVhdGUoSFRNTE5hbWVzOjph
dHRhY2htZW50VGFnLCBkb2N1bWVudCk7CiAgICAgICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxl
KEZpbGU6OmNyZWF0ZShwYXRoKSwgSFRNTEF0dGFjaG1lbnRFbGVtZW50OjpVcGRhdGVEaXNwbGF5
QXR0cmlidXRlczo6WWVzKTsKLSAgICAgICAgICAgIGVuc3VyZUZyYWdtZW50KCkuYXBwZW5kQ2hp
bGQoYXR0YWNobWVudCk7Ci0gICAgICAgICAgICByZWFkQW55RmlsZVBhdGggPSB0cnVlOwotICAg
ICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICBmcmFnbWVudC0+YXBwZW5kQ2hpbGQoYXR0
YWNobWVudCk7CiAgICAgICAgIH0KLSNlbmRpZgotI2lmIFBMQVRGT1JNKE1BQykKLSAgICAgICAg
Ly8gRklYTUU6IERvZXMgKGFuZCBzaG91bGQpIGFueSBtYWNPUyBjbGllbnQgZGVwZW5kIG9uIGlu
c2VydGluZyBmaWxlIHBhdGhzIGFzIHBsYWluIHRleHQgaW4gd2ViIGNvbnRlbnQ/Ci0gICAgICAg
IC8vIElmIG5vdCwgd2Ugc2hvdWxkIGp1c3QgcmVtb3ZlIHRoaXMuCi0gICAgICAgIGF1dG8gcGFy
YWdyYXBoID0gY3JlYXRlRGVmYXVsdFBhcmFncmFwaEVsZW1lbnQoZG9jdW1lbnQpOwotICAgICAg
ICBwYXJhZ3JhcGgtPmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHVzZXJWaXNp
YmxlU3RyaW5nKFtOU1VSTCBmaWxlVVJMV2l0aFBhdGg6cGF0aF0pKSk7Ci0gICAgICAgIGVuc3Vy
ZUZyYWdtZW50KCkuYXBwZW5kQ2hpbGQocGFyYWdyYXBoKTsKLSAgICAgICAgcmVhZEFueUZpbGVQ
YXRoID0gdHJ1ZTsKLSNlbmRpZgogICAgIH0KLSAgICByZXR1cm4gcmVhZEFueUZpbGVQYXRoOwor
I2VuZGlmCisKKyAgICByZXR1cm4gdHJ1ZTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hh
bmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDQ1YTQyNWVlZTc0Yjk0OWQxOWIzYjU0MmQ2
N2MxMWFkYmI0ZTViNDYuLjUxNzcyYTg3MzY2Yzg4NzcwNjdmODcyYjA1NjYxZTNiNzdlN2E3NjEg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxOC0wMi0wNyAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxl
LmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIyMjYzOTYpOiBGaWxlIHBhdGhzIGFyZSBpbnNl
cnRlZCB3aGVuIGRyb3BwaW5nIGltYWdlIGZpbGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODI1NTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3
Mjk0MTIwPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFR3ZWFrIHNvbWUgaW1hZ2UgcGFzdGluZyBBUEkgdGVzdHMgdG8gZW5zdXJlIHRoYXQgZmlsZSBw
YXRocyBhcmUgbm90IGluc2VydGVkIHdoZW4gcGFzdGluZyBpbWFnZXMgYmFja2VkIGJ5CisgICAg
ICAgIGZpbGUgcGF0aHMgb24gZGlzay4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvUGFzdGVJbWFnZS5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDE4LTAyLTA2
ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBIYXNTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uIGJpdCBzaG91bGQgYmUgc2VudCB3aGVuIGNyZWF0aW5nIGEgbmV3
IHBhZ2UKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
UGFzdGVJbWFnZS5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUGFz
dGVJbWFnZS5tbQppbmRleCBlMGU0YjNiNWRlYTc5NTBiOWJlODI2NTZmYTkyYTY4Njc0ZWZhYTE5
Li5iMjI4OTZiNGE3ODlmMmM0ODA1MGNmMzBiYjg2ZDA1NGE2ZWUyNWI3IDEwMDY0NAotLS0gYS9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Bhc3RlSW1hZ2UubW0KKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9QYXN0ZUltYWdlLm1tCkBAIC0x
NDAsNiArMTQwLDcgQEAgVEVTVChQYXN0ZUltYWdlLCBQYXN0ZUdJRkZpbGUpCiAgICAgRVhQRUNU
X1dLX1NUUkVRKCIxIiwgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAImRh
dGFUcmFuc2Zlci5maWxlcy5sZW5ndGgiXSk7CiAgICAgRVhQRUNUX1dLX1NUUkVRKCJpbWFnZS9n
aWYiLCBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAiZmlsZSA9IGRhdGFU
cmFuc2Zlci5maWxlc1swXTsgZmlsZS50eXBlIl0pOwogICAgIEVYUEVDVF9XS19TVFJFUSgic3Vu
c2V0LWluLWN1cGVydGluby00MDBweC5naWYiLCBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdK
YXZhU2NyaXB0OkAiZmlsZS5uYW1lIl0pOworICAgIEVYUEVDVF9XS19TVFJFUSgiIiwgW3dlYlZp
ZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAImVkaXRvci50ZXh0Q29udGVudCJdKTsK
IAogICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJpbnNlcnRGaWxl
QXNJbWFnZShmaWxlKSJdOwogICAgIFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAibG9hZGVkIl07
CkBAIC0xNjEsNiArMTYyLDcgQEAgVEVTVChQYXN0ZUltYWdlLCBQYXN0ZUpQRUdGaWxlKQogICAg
IEVYUEVDVF9XS19TVFJFUSgiMSIsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3Jp
cHQ6QCJkYXRhVHJhbnNmZXIuZmlsZXMubGVuZ3RoIl0pOwogICAgIEVYUEVDVF9XS19TVFJFUSgi
aW1hZ2UvanBlZyIsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJmaWxl
ID0gZGF0YVRyYW5zZmVyLmZpbGVzWzBdOyBmaWxlLnR5cGUiXSk7CiAgICAgRVhQRUNUX1dLX1NU
UkVRKCJzdW5zZXQtaW4tY3VwZXJ0aW5vLTYwMHB4LmpwZyIsIFt3ZWJWaWV3IHN0cmluZ0J5RXZh
bHVhdGluZ0phdmFTY3JpcHQ6QCJmaWxlLm5hbWUiXSk7CisgICAgRVhQRUNUX1dLX1NUUkVRKCIi
LCBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAiZWRpdG9yLnRleHRDb250
ZW50Il0pOwogCiAgICAgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAImlu
c2VydEZpbGVBc0ltYWdlKGZpbGUpIl07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJs
b2FkZWQiXTsKQEAgLTE4Miw2ICsxODQsNyBAQCBURVNUKFBhc3RlSW1hZ2UsIFBhc3RlUE5HRmls
ZSkKICAgICBFWFBFQ1RfV0tfU1RSRVEoIjEiLCBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdK
YXZhU2NyaXB0OkAiZGF0YVRyYW5zZmVyLmZpbGVzLmxlbmd0aCJdKTsKICAgICBFWFBFQ1RfV0tf
U1RSRVEoImltYWdlL3BuZyIsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6
QCJmaWxlID0gZGF0YVRyYW5zZmVyLmZpbGVzWzBdOyBmaWxlLnR5cGUiXSk7CiAgICAgRVhQRUNU
X1dLX1NUUkVRKCJzdW5zZXQtaW4tY3VwZXJ0aW5vLTIwMHB4LnBuZyIsIFt3ZWJWaWV3IHN0cmlu
Z0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJmaWxlLm5hbWUiXSk7CisgICAgRVhQRUNUX1dLX1NU
UkVRKCIiLCBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAiZWRpdG9yLnRl
eHRDb250ZW50Il0pOwogCiAgICAgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlw
dDpAImluc2VydEZpbGVBc0ltYWdlKGZpbGUpIl07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3Nh
Z2U6QCJsb2FkZWQiXTsKQEAgLTIwMyw2ICsyMDYsNyBAQCBURVNUKFBhc3RlSW1hZ2UsIFBhc3Rl
VElGRkZpbGUpCiAgICAgRVhQRUNUX1dLX1NUUkVRKCIxIiwgW3dlYlZpZXcgc3RyaW5nQnlFdmFs
dWF0aW5nSmF2YVNjcmlwdDpAImRhdGFUcmFuc2Zlci5maWxlcy5sZW5ndGgiXSk7CiAgICAgRVhQ
RUNUX1dLX1NUUkVRKCJpbWFnZS90aWZmIiwgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2
YVNjcmlwdDpAImZpbGUgPSBkYXRhVHJhbnNmZXIuZmlsZXNbMF07IGZpbGUudHlwZSJdKTsKICAg
ICBFWFBFQ1RfV0tfU1RSRVEoInN1bnNldC1pbi1jdXBlcnRpbm8tMTAwcHgudGlmZiIsIFt3ZWJW
aWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJmaWxlLm5hbWUiXSk7CisgICAgRVhQ
RUNUX1dLX1NUUkVRKCIiLCBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAi
ZWRpdG9yLnRleHRDb250ZW50Il0pOwogCiAgICAgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5n
SmF2YVNjcmlwdDpAImluc2VydEZpbGVBc0ltYWdlKGZpbGUpIl07CiAgICAgW3dlYlZpZXcgd2Fp
dEZvck1lc3NhZ2U6QCJsb2FkZWQiXTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkMDRiNjBhMWY0NjdlZWM5YzI2MDUyYmYz
YjJkMGYzZmJmMmJhMzNlLi4zMTYyYTdjYjM1ODM3MzgyODRlNDM4NzY4ZTJlY2JhNDlmOTE0YjNk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTgtMDItMDYgIFdlbnNvbiBIc2llaCAgPHdlbnNv
bl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjI2Mzk2KTogRmlsZSBw
YXRocyBhcmUgaW5zZXJ0ZWQgd2hlbiBkcm9wcGluZyBpbWFnZSBmaWxlcworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyNTU3CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS8zNzI5NDEyMD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUd2VhayBhbiBleGlzdGluZyBsYXlvdXQgdGVzdCB0aGF0IGRyb3BzIGEg
ZmlsZSBpbnRvIGEgY29udGVudGVkaXRhYmxlLCB0byBjaGVjayB0aGF0IG5vIHRleHQgaXMgaW5z
ZXJ0ZWQgaW50bworICAgICAgICB0aGUgZWRpdGFibGUgZWxlbWVudCBhZnRlciBkcm9wcGluZy4K
KworICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVs
ZW1lbnQtYXMtVVJMcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9wYXN0ZWJvYXJk
L2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLmh0bWw6CisKIDIwMTgtMDIt
MDYgIE1hdHQgTGV3aXMgIDxqbGV3aXMzQGFwcGxlLmNvbT4KIAogICAgICAgICBNYXJrZWQgdHJh
bnNpdGlvbnMvdHJhbnNpdGlvbi1kaXNwbGF5LXByb3BlcnR5Lmh0bWwgYXMgZmxha3kuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0
YWJsZS1lbGVtZW50LWFzLVVSTHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9w
YXN0ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLWV4cGVjdGVk
LnR4dAppbmRleCA3NTgyNGMxODk1YmUzNThkOWE5NWIzMzFjZGI4NzM2YTk3NDEzN2RmLi40NTE3
MzQxNzcwMmRmNjUwZWY4ZmI5YWNhNGU3Y2YwYjllZWU0YjM0IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0YWJsZS1lbGVtZW50LWFz
LVVSTHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9k
cmFnLWZpbGVzLXRvLWVkaXRhYmxlLWVsZW1lbnQtYXMtVVJMcy1leHBlY3RlZC50eHQKQEAgLTEs
NCArMSw0IEBACi1JZiB3ZSBkcmFnIGZpbGVzIG9udG8gYW4gZWRpdGFibGUgYXJlYSwgdGhlbiBh
dHRhY2htZW50cyBzaG91bGQgYmUgaW5zZXJ0ZWQgaW50byB0aGUgZWRpdGFibGUgYXJlYS4KK0lm
IHdlIGRyYWcgZmlsZXMgb250byBhbiBlZGl0YWJsZSBhcmVhLCB0aGVuIGF0dGFjaG1lbnRzIHNo
b3VsZCBub3QgYmUgaW5zZXJ0ZWQgaW50byB0aGUgZWRpdGFibGUgYXJlYSBzaW5jZSBhdHRhY2ht
ZW50IGVsZW1lbnRzIGFyZSBkaXNhYmxlZC4KIAogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgog
CkBAIC02LDYgKzYsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogUEFTUyB3aW5kb3cuSFRN
TEF0dGFjaG1lbnRFbGVtZW50IGlzIHVuZGVmaW5lZC4KIFBBU1MgZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiYXR0YWNobWVudCIpIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUK
IFBBU1MgZWRpdGFibGUucXVlcnlTZWxlY3RvcigiYXR0YWNobWVudCIpIGlzIG51bGwKK1BBU1Mg
ZWRpdGFibGUudGV4dENvbnRlbnQgaXMgIiIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0
ZWJvYXJkL2RyYWctZmlsZXMtdG8tZWRpdGFibGUtZWxlbWVudC1hcy1VUkxzLmh0bWwgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0YWJsZS1lbGVtZW50
LWFzLVVSTHMuaHRtbAppbmRleCBiNWQwOGU4NDQ4MjU5ZTgwMzA1ZTU4NDJmYjViMjNjZDJlYmUz
YmUzLi5kNWQwMjQzMmNlOTdmZjZjOGRiYzczZjczYjQ2YjM2MTE1ZDUyNWU3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1maWxlcy10by1lZGl0YWJsZS1l
bGVtZW50LWFzLVVSTHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQv
ZHJhZy1maWxlcy10by1lZGl0YWJsZS1lbGVtZW50LWFzLVVSTHMuaHRtbApAQCAtNiw3ICs2LDcg
QEAKIDxkaXYgaWQ9ImVkaXRhYmxlIiBjb250ZW50RWRpdGFibGU9dHJ1ZSBzdHlsZT0id2lkdGg6
MjAwcHg7IGhlaWdodDoyMDBweCI+PC9kaXY+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+Ci1kZXNjcmlwdGlvbignSWYgd2Ug
ZHJhZyBmaWxlcyBvbnRvIGFuIGVkaXRhYmxlIGFyZWEsIHRoZW4gYXR0YWNobWVudHMgc2hvdWxk
IGJlIGluc2VydGVkIGludG8gdGhlIGVkaXRhYmxlIGFyZWEuJyk7CitkZXNjcmlwdGlvbignSWYg
d2UgZHJhZyBmaWxlcyBvbnRvIGFuIGVkaXRhYmxlIGFyZWEsIHRoZW4gYXR0YWNobWVudHMgc2hv
dWxkIG5vdCBiZSBpbnNlcnRlZCBpbnRvIHRoZSBlZGl0YWJsZSBhcmVhIHNpbmNlIGF0dGFjaG1l
bnQgZWxlbWVudHMgYXJlIGRpc2FibGVkLicpOwogCiB2YXIgZWRpdGFibGUgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZWRpdGFibGUiKTsKIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKQEAg
LTE0LDYgKzE0LDcgQEAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewogICAgIHNob3VsZEJlVW5k
ZWZpbmVkKCd3aW5kb3cuSFRNTEF0dGFjaG1lbnRFbGVtZW50Jyk7CiAgICAgc2hvdWxkQmVUcnVl
KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhdHRhY2htZW50IikgaW5zdGFuY2VvZiBIVE1MVW5r
bm93bkVsZW1lbnQnKTsKICAgICBzaG91bGRCZSgnZWRpdGFibGUucXVlcnlTZWxlY3RvcigiYXR0
YWNobWVudCIpJywgJ251bGwnKTsKKyAgICBzaG91bGRCZSgnZWRpdGFibGUudGV4dENvbnRlbnQn
LCAnIiInKTsKICAgICBlZGl0YWJsZS5pbm5lckhUTUwgPSAnJzsKIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>