<?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>184049</bug_id>
          
          <creation_ts>2018-03-27 11:13:43 -0700</creation_ts>
          <short_desc>Executing &quot;insertunorderedlist&quot; while selecting a contenteditable element inside a shadow dom hangs the browser</short_desc>
          <delta_ts>2018-11-29 13:50:45 -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>DOM</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>tvanderlippe</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>koivisto</cc>
    
    <cc>rniwa</cc>
    
    <cc>tvanderlippe</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1409592</commentid>
    <comment_count>0</comment_count>
      <attachid>336598</attachid>
    <who name="">tvanderlippe</who>
    <bug_when>2018-03-27 11:13:43 -0700</bug_when>
    <thetext>Created attachment 336598
Reproduction case

Steps to reproduce the problem:
1. Create an element with a shadow dom
2. In the shadow dom, create an element with contenteditable
3. Select all text in the contenteditable element
4. Execute &quot;insertunorderedlist&quot; (a couple of times)

In the supplied test case the first text is without shadow dom, while the second text is within shadow dom.

What is the expected behavior?
The behavior is the same as in the non-shadow dom version, it create 3 bullet points for each line or removes all bullet points from all lines.

What went wrong?
The browser tab hangs and is completely unresponsive. Indeterminate spinner is running forever</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1409705</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-03-27 15:36:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/38931033&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1477833</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-12 18:41:47 -0800</bug_when>
    <thetext>Hm... I can&apos;t reproduce this problem with STP70. Can you still reproduce the issue?

Please feel free to re-open the bug if you can.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478062</commentid>
    <comment_count>3</comment_count>
    <who name="">tvanderlippe</who>
    <bug_when>2018-11-13 10:43:36 -0800</bug_when>
    <thetext>I am not yet on Mojave, so I am unable to run on STP70. It was still broken on STP69 on High Sierra. Hopefully I can verify this soon after upgrading.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478070</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-13 10:58:05 -0800</bug_when>
    <thetext>Hm... I don&apos;t think there was any change between STP69 and STP70 in this area. In fact, it works just fine in STP68 for me.

Oh, I see, you&apos;d have to select the entire list. Now I can reproduce it!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478074</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-13 11:08:19 -0800</bug_when>
    <thetext>Looks like TextIterator is getting stuck:

1213 WebCore::JSExecState::profiledEvaluate(JSC::ExecState*, JSC::ProfilingReason, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)  (in WebCore) + 84  [0x10be059a4]
  1213 JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)  (in JavaScriptCore) + 287  [0x578a193df]
    1213 JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::ExecState*, JSC::JSObject*)  (in JavaScriptCore) + 11170  [0x57887a1e2]
      1213 vmEntryToJavaScript  (in JavaScriptCore) + 200  [0x57835d029]
        1213 llint_entry  (in JavaScriptCore) + 26835  [0x578363ab6]
          1213 ???  (in &lt;unknown binary&gt;)  [0x48e61f28177]
            1213 WebCore::jsDocumentPrototypeFunctionExecCommand(JSC::ExecState*)  (in WebCore) + 533  [0x10b4807d5]
              1213 WebCore::Document::execCommand(WTF::String const&amp;, bool, WTF::String const&amp;)  (in WebCore) + 73  [0x10b480999]
                1213 WebCore::executeInsertOrderedList(WebCore::Frame&amp;, WebCore::Event*, WebCore::EditorCommandSource, WTF::String const&amp;)  (in WebCore) + 48  [0x10c0ba740]
                  1213 WebCore::CompositeEditCommand::apply()  (in WebCore) + 268  [0x10b439c5c]
                    959 WebCore::InsertListCommand::doApply()  (in WebCore) + 879  [0x10c0cab2f]
                    ! 702 WebCore::indexForVisiblePosition(WebCore::VisiblePosition const&amp;, WTF::RefPtr&lt;WebCore::ContainerNode, WTF::DumbPtrTraits&lt;WebCore::ContainerNode&gt; &gt;&amp;)  (in WebCore) + 386  [0x10c09d1f2]
                    ! : 455 WebCore::TextIterator::rangeLength(WebCore::Range const*, bool)  (in WebCore) + 36  [0x10b436e84]
                    ! : | 191 WebCore::TextIterator::init()  (in WebCore) + 386  [0x10c0e84e2]
                    ! : | + 46 WebCore::TextIterator::advance()  (in WebCore) + 436  [0x10b3aa644]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478076</commentid>
    <comment_count>6</comment_count>
      <attachid>354684</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-13 11:08:41 -0800</bug_when>
    <thetext>Created attachment 354684
Reduction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482814</commentid>
    <comment_count>7</comment_count>
      <attachid>355964</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-28 19:44:57 -0800</bug_when>
    <thetext>Created attachment 355964
Fixes the hang</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482815</commentid>
    <comment_count>8</comment_count>
      <attachid>355965</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-28 19:45:49 -0800</bug_when>
    <thetext>Created attachment 355965
Added the forgotten tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482817</commentid>
    <comment_count>9</comment_count>
      <attachid>355966</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-28 19:46:27 -0800</bug_when>
    <thetext>Created attachment 355966
Added the forgotten tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1483154</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-11-29 13:50:45 -0800</bug_when>
    <thetext>Committed r238693: &lt;https://trac.webkit.org/changeset/238693&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>336598</attachid>
            <date>2018-03-27 11:13:43 -0700</date>
            <delta_ts>2018-11-13 11:08:41 -0800</delta_ts>
            <desc>Reproduction case</desc>
            <filename>contenteditable.html</filename>
            <type>text/html</type>
            <size>926</size>
            <attacher>tvanderlippe</attacher>
            
              <data encoding="base64">PCFkb2N0eXBlIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPC9oZWFkPg0KPGJvZHk+DQoNCiAgPGJ1
dHRvbiB0eXBlPSJidXR0b24iPkluc2VydCBVbm9yZGVyZWQgTGlzdDwvYnV0dG9uPg0KDQogIDxk
aXYgY29udGVudGVkaXRhYmxlPSJ0cnVlIj4NCiAgICBCdWxsZXQgT25lDQogICAgPGJyPiBCdWxs
ZXQgVHdvDQogICAgPGJyPiBCdWxsZXQgVGhyZWUNCiAgPC9kaXY+DQogIA0KICA8ZGl2IGlkPSJ0
ZXh0Qm94Ij4NCiAgICANCiAgPC9kaXY+DQogIA0KICA8c2NyaXB0Pg0KICAgIGNvbnN0IGRpdiA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2RpdltpZD0idGV4dEJveCJdJyk7DQogICAgZGl2LmF0
dGFjaFNoYWRvdyh7bW9kZTogJ29wZW4nfSk7DQogICAgZGl2LnNoYWRvd1Jvb3QuaW5uZXJIVE1M
ID0gYA0KPGJ1dHRvbiB0eXBlPSJidXR0b24iPkluc2VydCBVbm9yZGVyZWQgTGlzdDwvYnV0dG9u
Pg0KDQogICAgPGRpdiBpZD0idGV4dEJveCIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj4NCiAgICAg
IEJ1bGxldCBPbmUNCiAgICAgIDxicj4gQnVsbGV0IFR3bw0KICAgICAgPGJyPiBCdWxsZXQgVGhy
ZWUNCiAgICA8L2Rpdj4NCmANCiAgICBkaXYuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCdidXR0
b24nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHsNCiAgICAgIGRvY3VtZW50LmV4
ZWNDb21tYW5kKCJpbnNlcnR1bm9yZGVyZWRsaXN0IiwgZmFsc2UsIG51bGwpOw0KICAgIH0pOw0K
ICAgIA0KICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpLmFkZEV2ZW50TGlzdGVu
ZXIoJ2NsaWNrJywgKCkgPT4gew0KICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoImluc2VydHVu
b3JkZXJlZGxpc3QiLCBmYWxzZSwgbnVsbCk7DQogICAgfSk7DQogIDwvc2NyaXB0Pg0KICANCjwv
Ym9keT4NCjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>354684</attachid>
            <date>2018-11-13 11:08:41 -0800</date>
            <delta_ts>2018-11-13 11:08:41 -0800</delta_ts>
            <desc>Reduction</desc>
            <filename>insert-list.html</filename>
            <type>text/html</type>
            <size>440</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8Ym9keT4KPHNjcmlwdD4KCmNvbnN0IGhvc3QgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChob3N0
KTsKY29uc3Qgc2hhZG93Um9vdCA9IGhvc3QuYXR0YWNoU2hhZG93KHttb2RlOiAnY2xvc2VkJ30p
OwpzaGFkb3dSb290LmlubmVySFRNTCA9IGA8ZGl2IGlkPSJlZGl0b3IiIGNvbnRlbnRlZGl0YWJs
ZT4KICAgIG9uZTxicj4KICAgIHR3bzxicj4KPC9kaXY+YDsKc2hhZG93Um9vdC5xdWVyeVNlbGVj
dG9yKCcjZWRpdG9yJykuZm9jdXMoKTsKZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ3NlbGVjdEFsbCcs
IGZhbHNlLCBudWxsKTsKZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2luc2VydE9yZGVyZWRMaXN0Jywg
ZmFsc2UsIG51bGwpOwoKPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355964</attachid>
            <date>2018-11-28 19:44:57 -0800</date>
            <delta_ts>2018-11-28 19:45:48 -0800</delta_ts>
            <desc>Fixes the hang</desc>
            <filename>bug-184049-20181128194457.patch</filename>
            <type>text/plain</type>
            <size>9108</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE4LTExLTI4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIEV4ZWN1dGluZyAiaW5zZXJ0dW5v
cmRlcmVkbGlzdCIgd2hpbGUgc2VsZWN0aW5nIGEgY29udGVudGVkaXRhYmxlIGVsZW1lbnQgaW5z
aWRlIGEgc2hhZG93IGRvbSBoYW5ncyB0aGUgYnJvd3NlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MDQ5CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8zODkzMTAzMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGUgcHJpbWFyeSBodW5nIHdhcyBjYXVzZWQgYnkgVGV4dEl0ZXJhdG9yOjphZHZhbmNl
IHRyYXZlcnNpbmcgdGhlIG5leHQgbm9kZSBpbiB0aGUgdHJlZSBvcmRlciB1c2luZworICAgICAg
ICBOb2RlVHJhdmVyc2FsOjpuZXh0IHdoaWNoIGRvZXNuJ3QgdGFrZSB0aGUgY29tcG9zZWQgdHJl
ZSBpbnRvIGFjY291bnQuIEZpeGVkIHRoZSBidWcgYnkgdHJhdmVyc2luZworICAgICAgICB0aGUg
Y29tcG9zZWQgdHJlZSB3aGlsZSBzaGFyaW5nIGNvZGUgd2l0aCBTdHlsaXplZE1hcmt1cEFjY3Vt
dWxhdG9yLgorCisgICAgICAgIFRoaXMgcmV2ZWFsZWQgYSBzZWNvbmQgaGFuZyBpbiBJbnNlcnRM
aXN0Q29tbWFuZDo6ZG9BcHBseSgpIGNhdXNlZCBieSBlbmRpbmdTZWxlY3Rpb24oKSBiZWluZyBu
dWxsLAorICAgICAgICB3aGljaCB3YXMgY2F1c2VkIGJ5IENvbXBvc2l0ZUVkaXRDb21tYW5kOjpt
b3ZlUGFyYWdyYXBocyBmYWlsaW5nIHRvIHJlc3RvcmUgdGhlIGVuZGluZyBzZWxlY3Rpb24gcHJv
cGVybHkKKyAgICAgICAgYmVjYXVzZSBpdCB3YXMgY29tcHV0aW5nIHRoZSB0ZXh0IGluZGljZXMg
ZGlmZmVyZW5jZSBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50IHVudGlsIHRoZSBk
ZXN0aW5hdGlvbi4KKworICAgICAgICBGaXhlZCB0aGlzIHNlY29uZCBidWcgYnkgY29tcHV0aW5n
IHRoZSBpbmRpY2VzIGFnYWluc3QgdGhlIGJlZ2lubmluZyBvZiB0aGUgcm9vdCBlZGl0YWJsZSBl
bGVtZW50LgorICAgICAgICBOb3RlIHRoYXQgZWRpdGFiaWxpdHkgbmV2ZXIgY3Jvc3NlcyBhIHNo
YWRvdyBib3VuZGFyeS4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL2V4ZWNDb21tYW5kL2luc2Vy
dC11bm9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sCisKKyAgICAgICAgKiBkb20vQ29t
cG9zZWRUcmVlSXRlcmF0b3IuaDoKKyAgICAgICAgKFdlYkNvcmU6Om5leHRTa2lwcGluZ0NoaWxk
cmVuSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyk6IEV4dHJhY3RlZCBvdXQg
b2YgbmV4dFNraXBwaW5nQ2hpbGRyZW4KKyAgICAgICAgaW4gbWFya3VwLmNwcC4KKyAgICAgICAg
KFdlYkNvcmU6Om5leHRJbkNvbXBvc2VkVHJlZUlnbm9yaW5nVXNlckFnZW50U2hhZG93KTogQWRk
ZWQuCisgICAgICAgICogZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDb21wb3NpdGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFncmFwaHMpOiBDb21wdXRl
IHRoZSBpbmRleCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHJvb3QgZWRpdGFibGUKKyAgICAg
ICAgZWxlbWVudCBhcyBvcHBvc2VkIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50Lgor
ICAgICAgICAqIGVkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Om5l
eHROb2RlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjppc0Rlc2NlbmRhbnRPZik6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6VGV4dEl0ZXJhdG9yOjphZHZhbmNlKTogVXNlIHRoZSBuZXds
eSBhZGRlZCBmdW5jdGlvbnMgdG8gdHJhdmVyc2UgdGhlIGNvbXBvc2VkIHRyZWUgd2hlbiB0aGUg
b3B0aW9ucworICAgICAgICBjb250YWlucyBUZXh0SXRlcmF0b3JUcmF2ZXJzZXNGbGF0VHJlZS4K
KyAgICAgICAgKiBlZGl0aW5nL21hcmt1cC5jcHA6CisKIDIwMTgtMTEtMjggIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgZGVhZCBj
b2RlIGZyb20gYW4gZWFybGllciBhdHRlbXB0IGF0IGltcGxlbWVudGluZyBzYWZlIGJyb3dzaW5n
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vQ29tcG9zZWRUcmVlSXRlcmF0b3IuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vQ29tcG9zZWRUcmVlSXRlcmF0b3IuaAkocmV2aXNp
b24gMjM4NjMzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0NvbXBvc2VkVHJlZUl0ZXJhdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI0NSw0ICsyNDUsMjIgQEAgaW5saW5lIE5vZGUqIG5leHRTaWJs
aW5nSW5Db21wb3NlZFRyZWVJZwogICAgIHJldHVybiBub2RlLm5leHRTaWJsaW5nKCk7CiB9CiAK
K2lubGluZSBOb2RlKiBuZXh0U2tpcHBpbmdDaGlsZHJlbkluQ29tcG9zZWRUcmVlSWdub3JpbmdV
c2VyQWdlbnRTaGFkb3coTm9kZSYgbm9kZSkKK3sKKyAgICBpZiAoYXV0byogc2libGluZyA9IG5l
eHRTaWJsaW5nSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKSkKKyAg
ICAgICAgcmV0dXJuIHNpYmxpbmc7CisgICAgZm9yIChhdXRvKiBhbmNlc3RvciA9IG5vZGUucGFy
ZW50SW5Db21wb3NlZFRyZWUoKTsgYW5jZXN0b3I7IGFuY2VzdG9yID0gYW5jZXN0b3ItPnBhcmVu
dEluQ29tcG9zZWRUcmVlKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHNpYmxpbmcgPSBuZXh0U2li
bGluZ0luQ29tcG9zZWRUcmVlSWdub3JpbmdVc2VyQWdlbnRTaGFkb3coKmFuY2VzdG9yKSkKKyAg
ICAgICAgICAgIHJldHVybiBzaWJsaW5nOworICAgIH0KKyAgICByZXR1cm4gbnVsbHB0cjsKK30K
KworaW5saW5lIE5vZGUqIG5leHRJbkNvbXBvc2VkVHJlZUlnbm9yaW5nVXNlckFnZW50U2hhZG93
KE5vZGUmIG5vZGUpCit7CisgICAgaWYgKGF1dG8qIGZpcnN0Q2hpbGQgPSBmaXJzdENoaWxkSW5D
b21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKSkKKyAgICAgICAgcmV0dXJu
IGZpcnN0Q2hpbGQ7CisgICAgcmV0dXJuIG5leHRTa2lwcGluZ0NoaWxkcmVuSW5Db21wb3NlZFRy
ZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29t
bWFuZC5jcHAJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29t
cG9zaXRlRWRpdENvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDg3LDcgKzE0ODcsOCBA
QCB2b2lkIENvbXBvc2l0ZUVkaXRDb21tYW5kOjptb3ZlUGFyYWdyYXBoCiAgICAgICAgIGRvY3Vt
ZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAgICAgfQogCi0g
ICAgUmVmUHRyPFJhbmdlPiBzdGFydFRvRGVzdGluYXRpb25SYW5nZShSYW5nZTo6Y3JlYXRlKGRv
Y3VtZW50KCksIGZpcnN0UG9zaXRpb25Jbk5vZGUoZG9jdW1lbnQoKS5kb2N1bWVudEVsZW1lbnQo
KSksIGRlc3RpbmF0aW9uLmRlZXBFcXVpdmFsZW50KCkucGFyZW50QW5jaG9yZWRFcXVpdmFsZW50
KCkpKTsKKyAgICBhdXRvIGVkaXRhYmxlUm9vdCA9IGRlc3RpbmF0aW9uLnJvb3RFZGl0YWJsZUVs
ZW1lbnQoKTsKKyAgICBSZWZQdHI8UmFuZ2U+IHN0YXJ0VG9EZXN0aW5hdGlvblJhbmdlKFJhbmdl
OjpjcmVhdGUoZG9jdW1lbnQoKSwgZmlyc3RQb3NpdGlvbkluTm9kZShlZGl0YWJsZVJvb3QpLCBk
ZXN0aW5hdGlvbi5kZWVwRXF1aXZhbGVudCgpLnBhcmVudEFuY2hvcmVkRXF1aXZhbGVudCgpKSk7
CiAgICAgZGVzdGluYXRpb25JbmRleCA9IFRleHRJdGVyYXRvcjo6cmFuZ2VMZW5ndGgoc3RhcnRU
b0Rlc3RpbmF0aW9uUmFuZ2UuZ2V0KCksIHRydWUpOwogCiAgICAgc2V0RW5kaW5nU2VsZWN0aW9u
KFZpc2libGVTZWxlY3Rpb24oZGVzdGluYXRpb24sIG9yaWdpbmFsSXNEaXJlY3Rpb25hbCkpOwpA
QCAtMTUxMCw4ICsxNTExLDggQEAgdm9pZCBDb21wb3NpdGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFn
cmFwaAogICAgICAgICAvLyBjYXVzZXMgc3BhY2VzIHRvIGJlIGNvbGxhcHNlZCBkdXJpbmcgdGhl
IG1vdmUgb3BlcmF0aW9uLiAgVGhpcyByZXN1bHRzCiAgICAgICAgIC8vIGluIGEgY2FsbCB0byBy
YW5nZUZyb21Mb2NhdGlvbkFuZExlbmd0aCB3aXRoIGEgbG9jYXRpb24gcGFzdCB0aGUgZW5kCiAg
ICAgICAgIC8vIG9mIHRoZSBkb2N1bWVudCAod2hpY2ggd2lsbCByZXR1cm4gbnVsbCkuCi0gICAg
ICAgIFJlZlB0cjxSYW5nZT4gc3RhcnQgPSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9u
QW5kTGVuZ3RoKGRvY3VtZW50KCkuZG9jdW1lbnRFbGVtZW50KCksIGRlc3RpbmF0aW9uSW5kZXgg
KyBzdGFydEluZGV4LCAwLCB0cnVlKTsKLSAgICAgICAgUmVmUHRyPFJhbmdlPiBlbmQgPSBUZXh0
SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5kTGVuZ3RoKGRvY3VtZW50KCkuZG9jdW1lbnRF
bGVtZW50KCksIGRlc3RpbmF0aW9uSW5kZXggKyBlbmRJbmRleCwgMCwgdHJ1ZSk7CisgICAgICAg
IFJlZlB0cjxSYW5nZT4gc3RhcnQgPSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5k
TGVuZ3RoKGVkaXRhYmxlUm9vdCwgZGVzdGluYXRpb25JbmRleCArIHN0YXJ0SW5kZXgsIDAsIHRy
dWUpOworICAgICAgICBSZWZQdHI8UmFuZ2U+IGVuZCA9IFRleHRJdGVyYXRvcjo6cmFuZ2VGcm9t
TG9jYXRpb25BbmRMZW5ndGgoZWRpdGFibGVSb290LCBkZXN0aW5hdGlvbkluZGV4ICsgZW5kSW5k
ZXgsIDAsIHRydWUpOwogICAgICAgICBpZiAoc3RhcnQgJiYgZW5kKQogICAgICAgICAgICAgc2V0
RW5kaW5nU2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24oc3RhcnQtPnN0YXJ0UG9zaXRpb24oKSwg
ZW5kLT5zdGFydFBvc2l0aW9uKCksIERPV05TVFJFQU0sIG9yaWdpbmFsSXNEaXJlY3Rpb25hbCkp
OwogICAgIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAJKHJl
dmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDI0LDYgKzQyNCwyMCBAQCBzdGF0aWMgaW5saW5lIE5vZGUq
IG5leHRTaWJsaW5nKFRleHRJdGVyCiAgICAgcmV0dXJuIG5vZGUubmV4dFNpYmxpbmcoKTsKIH0K
IAorc3RhdGljIGlubGluZSBOb2RlKiBuZXh0Tm9kZShUZXh0SXRlcmF0b3JCZWhhdmlvciBvcHRp
b25zLCBOb2RlJiBub2RlKQoreworICAgIGlmIChVTkxJS0VMWShvcHRpb25zICYgVGV4dEl0ZXJh
dG9yVHJhdmVyc2VzRmxhdFRyZWUpKQorICAgICAgICByZXR1cm4gbmV4dEluQ29tcG9zZWRUcmVl
SWdub3JpbmdVc2VyQWdlbnRTaGFkb3cobm9kZSk7CisgICAgcmV0dXJuIE5vZGVUcmF2ZXJzYWw6
Om5leHQobm9kZSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbCBpc0Rlc2NlbmRhbnRPZihUZXh0
SXRlcmF0b3JCZWhhdmlvciBvcHRpb25zLCBOb2RlJiBub2RlLCBOb2RlJiBwb3NzaWJsZUFuY2Vz
dG9yKQoreworICAgIGlmIChVTkxJS0VMWShvcHRpb25zICYgVGV4dEl0ZXJhdG9yVHJhdmVyc2Vz
RmxhdFRyZWUpKQorICAgICAgICByZXR1cm4gbm9kZS5pc0Rlc2NlbmRhbnRPclNoYWRvd0Rlc2Nl
bmRhbnRPZigmcG9zc2libGVBbmNlc3Rvcik7CisgICAgcmV0dXJuIG5vZGUuaXNEZXNjZW5kYW50
T2YoJnBvc3NpYmxlQW5jZXN0b3IpOworfQorCiBzdGF0aWMgaW5saW5lIE5vZGUqIHBhcmVudE5v
ZGVPclNoYWRvd0hvc3QoVGV4dEl0ZXJhdG9yQmVoYXZpb3Igb3B0aW9ucywgTm9kZSYgbm9kZSkK
IHsKICAgICBpZiAoVU5MSUtFTFkob3B0aW9ucyAmIFRleHRJdGVyYXRvclRyYXZlcnNlc0ZsYXRU
cmVlKSkKQEAgLTUwNywxMCArNTIxLDEwIEBAIHZvaWQgVGV4dEl0ZXJhdG9yOjphZHZhbmNlKCkK
ICAgICAgICAgaWYgKCFuZXh0KSB7CiAgICAgICAgICAgICBuZXh0ID0gbmV4dFNpYmxpbmcobV9i
ZWhhdmlvciwgKm1fbm9kZSk7CiAgICAgICAgICAgICBpZiAoIW5leHQpIHsKLSAgICAgICAgICAg
ICAgICBib29sIHBhc3RFbmQgPSBOb2RlVHJhdmVyc2FsOjpuZXh0KCptX25vZGUpID09IG1fcGFz
dEVuZE5vZGU7CisgICAgICAgICAgICAgICAgYm9vbCBwYXN0RW5kID0gbmV4dE5vZGUobV9iZWhh
dmlvciwgKm1fbm9kZSkgPT0gbV9wYXN0RW5kTm9kZTsKICAgICAgICAgICAgICAgICBOb2RlKiBw
YXJlbnROb2RlID0gcGFyZW50Tm9kZU9yU2hhZG93SG9zdChtX2JlaGF2aW9yLCAqbV9ub2RlKTsK
ICAgICAgICAgICAgICAgICB3aGlsZSAoIW5leHQgJiYgcGFyZW50Tm9kZSkgewotICAgICAgICAg
ICAgICAgICAgICBpZiAoKHBhc3RFbmQgJiYgcGFyZW50Tm9kZSA9PSBtX2VuZENvbnRhaW5lcikg
fHwgbV9lbmRDb250YWluZXItPmlzRGVzY2VuZGFudE9mKCpwYXJlbnROb2RlKSkKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKChwYXN0RW5kICYmIHBhcmVudE5vZGUgPT0gbV9lbmRDb250YWluZXIp
IHx8IGlzRGVzY2VuZGFudE9mKG1fYmVoYXZpb3IsICptX2VuZENvbnRhaW5lciwgKnBhcmVudE5v
ZGUpKQogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAg
ICBib29sIGhhdmVSZW5kZXJlciA9IG1fbm9kZS0+cmVuZGVyZXIoKTsKICAgICAgICAgICAgICAg
ICAgICAgTm9kZSogZXhpdGVkTm9kZSA9IG1fbm9kZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvbWFya3VwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21h
cmt1cC5jcHAJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFy
a3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjczLDE1ICsyNzMsOCBAQCBwcml2YXRlOgogICAg
IAogICAgIE5vZGUqIG5leHRTa2lwcGluZ0NoaWxkcmVuKE5vZGUmIG5vZGUpCiAgICAgewotICAg
ICAgICBpZiAoVU5MSUtFTFkobV91c2VDb21wb3NlZFRyZWUpKSB7Ci0gICAgICAgICAgICBpZiAo
YXV0byogc2libGluZyA9IG5leHRTaWJsaW5nSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2Vu
dFNoYWRvdyhub2RlKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gc2libGluZzsKLSAgICAgICAg
ICAgIGZvciAoYXV0byogYW5jZXN0b3IgPSBub2RlLnBhcmVudEluQ29tcG9zZWRUcmVlKCk7IGFu
Y2VzdG9yOyBhbmNlc3RvciA9IGFuY2VzdG9yLT5wYXJlbnRJbkNvbXBvc2VkVHJlZSgpKSB7Ci0g
ICAgICAgICAgICAgICAgaWYgKGF1dG8qIHNpYmxpbmcgPSBuZXh0U2libGluZ0luQ29tcG9zZWRU
cmVlSWdub3JpbmdVc2VyQWdlbnRTaGFkb3coKmFuY2VzdG9yKSkKLSAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHNpYmxpbmc7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtFTFkobV91c2VDb21wb3NlZFRyZWUp
KQorICAgICAgICAgICAgcmV0dXJuIG5leHRTa2lwcGluZ0NoaWxkcmVuSW5Db21wb3NlZFRyZWVJ
Z25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKTsKICAgICAgICAgcmV0dXJuIE5vZGVUcmF2ZXJz
YWw6Om5leHRTa2lwcGluZ0NoaWxkcmVuKG5vZGUpOwogICAgIH0KIApJbmRleDogTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNp
b24gMjM4NjMzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMTgtMTEtMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgRXhlY3V0aW5nICJpbnNlcnR1bm9yZGVyZWRsaXN0IiB3aGlsZSBzZWxlY3Rp
bmcgYSBjb250ZW50ZWRpdGFibGUgZWxlbWVudCBpbnNpZGUgYSBzaGFkb3cgZG9tIGhhbmdzIHRo
ZSBicm93c2VyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODQwNDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM4OTMxMDMzPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGEgcmVncmVzc2lvbiB0
ZXN0IGZvciBleGVjdXRpbmcgSW5zZXJ0VW5vcmRlcmVkTGlzdCBpbnNpZGUgYSBzaGFkb3cgdHJl
ZS4KKworICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvaW5zZXJ0LW9yZGVyZWQtbGlzdC1p
bi1zaGFkb3ctdHJlZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZXhl
Y0NvbW1hbmQvaW5zZXJ0LW9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sOiBBZGRlZC4K
KwogMjAxOC0xMS0yOCAgSnVzdGluIEZhbiAgPGp1c3Rpbl9mYW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFtXZWJHUFVdIEJlZ2luIGltcGxlbWVudGF0aW9uIG9mIFdlYkdQVVJlbmRlclBhc3NFbmNv
ZGVyIGFuZCBiYXJlYm9uZXMgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355965</attachid>
            <date>2018-11-28 19:45:49 -0800</date>
            <delta_ts>2018-11-28 19:46:25 -0800</delta_ts>
            <desc>Added the forgotten tests</desc>
            <filename>bug-184049-20181128194548.patch</filename>
            <type>text/plain</type>
            <size>9108</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE4LTExLTI4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIEV4ZWN1dGluZyAiaW5zZXJ0dW5v
cmRlcmVkbGlzdCIgd2hpbGUgc2VsZWN0aW5nIGEgY29udGVudGVkaXRhYmxlIGVsZW1lbnQgaW5z
aWRlIGEgc2hhZG93IGRvbSBoYW5ncyB0aGUgYnJvd3NlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MDQ5CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8zODkzMTAzMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGUgcHJpbWFyeSBodW5nIHdhcyBjYXVzZWQgYnkgVGV4dEl0ZXJhdG9yOjphZHZhbmNl
IHRyYXZlcnNpbmcgdGhlIG5leHQgbm9kZSBpbiB0aGUgdHJlZSBvcmRlciB1c2luZworICAgICAg
ICBOb2RlVHJhdmVyc2FsOjpuZXh0IHdoaWNoIGRvZXNuJ3QgdGFrZSB0aGUgY29tcG9zZWQgdHJl
ZSBpbnRvIGFjY291bnQuIEZpeGVkIHRoZSBidWcgYnkgdHJhdmVyc2luZworICAgICAgICB0aGUg
Y29tcG9zZWQgdHJlZSB3aGlsZSBzaGFyaW5nIGNvZGUgd2l0aCBTdHlsaXplZE1hcmt1cEFjY3Vt
dWxhdG9yLgorCisgICAgICAgIFRoaXMgcmV2ZWFsZWQgYSBzZWNvbmQgaGFuZyBpbiBJbnNlcnRM
aXN0Q29tbWFuZDo6ZG9BcHBseSgpIGNhdXNlZCBieSBlbmRpbmdTZWxlY3Rpb24oKSBiZWluZyBu
dWxsLAorICAgICAgICB3aGljaCB3YXMgY2F1c2VkIGJ5IENvbXBvc2l0ZUVkaXRDb21tYW5kOjpt
b3ZlUGFyYWdyYXBocyBmYWlsaW5nIHRvIHJlc3RvcmUgdGhlIGVuZGluZyBzZWxlY3Rpb24gcHJv
cGVybHkKKyAgICAgICAgYmVjYXVzZSBpdCB3YXMgY29tcHV0aW5nIHRoZSB0ZXh0IGluZGljZXMg
ZGlmZmVyZW5jZSBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50IHVudGlsIHRoZSBk
ZXN0aW5hdGlvbi4KKworICAgICAgICBGaXhlZCB0aGlzIHNlY29uZCBidWcgYnkgY29tcHV0aW5n
IHRoZSBpbmRpY2VzIGFnYWluc3QgdGhlIGJlZ2lubmluZyBvZiB0aGUgcm9vdCBlZGl0YWJsZSBl
bGVtZW50LgorICAgICAgICBOb3RlIHRoYXQgZWRpdGFiaWxpdHkgbmV2ZXIgY3Jvc3NlcyBhIHNo
YWRvdyBib3VuZGFyeS4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL2V4ZWNDb21tYW5kL2luc2Vy
dC11bm9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sCisKKyAgICAgICAgKiBkb20vQ29t
cG9zZWRUcmVlSXRlcmF0b3IuaDoKKyAgICAgICAgKFdlYkNvcmU6Om5leHRTa2lwcGluZ0NoaWxk
cmVuSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyk6IEV4dHJhY3RlZCBvdXQg
b2YgbmV4dFNraXBwaW5nQ2hpbGRyZW4KKyAgICAgICAgaW4gbWFya3VwLmNwcC4KKyAgICAgICAg
KFdlYkNvcmU6Om5leHRJbkNvbXBvc2VkVHJlZUlnbm9yaW5nVXNlckFnZW50U2hhZG93KTogQWRk
ZWQuCisgICAgICAgICogZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDb21wb3NpdGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFncmFwaHMpOiBDb21wdXRl
IHRoZSBpbmRleCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHJvb3QgZWRpdGFibGUKKyAgICAg
ICAgZWxlbWVudCBhcyBvcHBvc2VkIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50Lgor
ICAgICAgICAqIGVkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Om5l
eHROb2RlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjppc0Rlc2NlbmRhbnRPZik6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6VGV4dEl0ZXJhdG9yOjphZHZhbmNlKTogVXNlIHRoZSBuZXds
eSBhZGRlZCBmdW5jdGlvbnMgdG8gdHJhdmVyc2UgdGhlIGNvbXBvc2VkIHRyZWUgd2hlbiB0aGUg
b3B0aW9ucworICAgICAgICBjb250YWlucyBUZXh0SXRlcmF0b3JUcmF2ZXJzZXNGbGF0VHJlZS4K
KyAgICAgICAgKiBlZGl0aW5nL21hcmt1cC5jcHA6CisKIDIwMTgtMTEtMjggIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgZGVhZCBj
b2RlIGZyb20gYW4gZWFybGllciBhdHRlbXB0IGF0IGltcGxlbWVudGluZyBzYWZlIGJyb3dzaW5n
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vQ29tcG9zZWRUcmVlSXRlcmF0b3IuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vQ29tcG9zZWRUcmVlSXRlcmF0b3IuaAkocmV2aXNp
b24gMjM4NjMzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0NvbXBvc2VkVHJlZUl0ZXJhdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI0NSw0ICsyNDUsMjIgQEAgaW5saW5lIE5vZGUqIG5leHRTaWJs
aW5nSW5Db21wb3NlZFRyZWVJZwogICAgIHJldHVybiBub2RlLm5leHRTaWJsaW5nKCk7CiB9CiAK
K2lubGluZSBOb2RlKiBuZXh0U2tpcHBpbmdDaGlsZHJlbkluQ29tcG9zZWRUcmVlSWdub3JpbmdV
c2VyQWdlbnRTaGFkb3coTm9kZSYgbm9kZSkKK3sKKyAgICBpZiAoYXV0byogc2libGluZyA9IG5l
eHRTaWJsaW5nSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKSkKKyAg
ICAgICAgcmV0dXJuIHNpYmxpbmc7CisgICAgZm9yIChhdXRvKiBhbmNlc3RvciA9IG5vZGUucGFy
ZW50SW5Db21wb3NlZFRyZWUoKTsgYW5jZXN0b3I7IGFuY2VzdG9yID0gYW5jZXN0b3ItPnBhcmVu
dEluQ29tcG9zZWRUcmVlKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHNpYmxpbmcgPSBuZXh0U2li
bGluZ0luQ29tcG9zZWRUcmVlSWdub3JpbmdVc2VyQWdlbnRTaGFkb3coKmFuY2VzdG9yKSkKKyAg
ICAgICAgICAgIHJldHVybiBzaWJsaW5nOworICAgIH0KKyAgICByZXR1cm4gbnVsbHB0cjsKK30K
KworaW5saW5lIE5vZGUqIG5leHRJbkNvbXBvc2VkVHJlZUlnbm9yaW5nVXNlckFnZW50U2hhZG93
KE5vZGUmIG5vZGUpCit7CisgICAgaWYgKGF1dG8qIGZpcnN0Q2hpbGQgPSBmaXJzdENoaWxkSW5D
b21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKSkKKyAgICAgICAgcmV0dXJu
IGZpcnN0Q2hpbGQ7CisgICAgcmV0dXJuIG5leHRTa2lwcGluZ0NoaWxkcmVuSW5Db21wb3NlZFRy
ZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29t
bWFuZC5jcHAJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29t
cG9zaXRlRWRpdENvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDg3LDcgKzE0ODcsOCBA
QCB2b2lkIENvbXBvc2l0ZUVkaXRDb21tYW5kOjptb3ZlUGFyYWdyYXBoCiAgICAgICAgIGRvY3Vt
ZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAgICAgfQogCi0g
ICAgUmVmUHRyPFJhbmdlPiBzdGFydFRvRGVzdGluYXRpb25SYW5nZShSYW5nZTo6Y3JlYXRlKGRv
Y3VtZW50KCksIGZpcnN0UG9zaXRpb25Jbk5vZGUoZG9jdW1lbnQoKS5kb2N1bWVudEVsZW1lbnQo
KSksIGRlc3RpbmF0aW9uLmRlZXBFcXVpdmFsZW50KCkucGFyZW50QW5jaG9yZWRFcXVpdmFsZW50
KCkpKTsKKyAgICBhdXRvIGVkaXRhYmxlUm9vdCA9IGRlc3RpbmF0aW9uLnJvb3RFZGl0YWJsZUVs
ZW1lbnQoKTsKKyAgICBSZWZQdHI8UmFuZ2U+IHN0YXJ0VG9EZXN0aW5hdGlvblJhbmdlKFJhbmdl
OjpjcmVhdGUoZG9jdW1lbnQoKSwgZmlyc3RQb3NpdGlvbkluTm9kZShlZGl0YWJsZVJvb3QpLCBk
ZXN0aW5hdGlvbi5kZWVwRXF1aXZhbGVudCgpLnBhcmVudEFuY2hvcmVkRXF1aXZhbGVudCgpKSk7
CiAgICAgZGVzdGluYXRpb25JbmRleCA9IFRleHRJdGVyYXRvcjo6cmFuZ2VMZW5ndGgoc3RhcnRU
b0Rlc3RpbmF0aW9uUmFuZ2UuZ2V0KCksIHRydWUpOwogCiAgICAgc2V0RW5kaW5nU2VsZWN0aW9u
KFZpc2libGVTZWxlY3Rpb24oZGVzdGluYXRpb24sIG9yaWdpbmFsSXNEaXJlY3Rpb25hbCkpOwpA
QCAtMTUxMCw4ICsxNTExLDggQEAgdm9pZCBDb21wb3NpdGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFn
cmFwaAogICAgICAgICAvLyBjYXVzZXMgc3BhY2VzIHRvIGJlIGNvbGxhcHNlZCBkdXJpbmcgdGhl
IG1vdmUgb3BlcmF0aW9uLiAgVGhpcyByZXN1bHRzCiAgICAgICAgIC8vIGluIGEgY2FsbCB0byBy
YW5nZUZyb21Mb2NhdGlvbkFuZExlbmd0aCB3aXRoIGEgbG9jYXRpb24gcGFzdCB0aGUgZW5kCiAg
ICAgICAgIC8vIG9mIHRoZSBkb2N1bWVudCAod2hpY2ggd2lsbCByZXR1cm4gbnVsbCkuCi0gICAg
ICAgIFJlZlB0cjxSYW5nZT4gc3RhcnQgPSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9u
QW5kTGVuZ3RoKGRvY3VtZW50KCkuZG9jdW1lbnRFbGVtZW50KCksIGRlc3RpbmF0aW9uSW5kZXgg
KyBzdGFydEluZGV4LCAwLCB0cnVlKTsKLSAgICAgICAgUmVmUHRyPFJhbmdlPiBlbmQgPSBUZXh0
SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5kTGVuZ3RoKGRvY3VtZW50KCkuZG9jdW1lbnRF
bGVtZW50KCksIGRlc3RpbmF0aW9uSW5kZXggKyBlbmRJbmRleCwgMCwgdHJ1ZSk7CisgICAgICAg
IFJlZlB0cjxSYW5nZT4gc3RhcnQgPSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5k
TGVuZ3RoKGVkaXRhYmxlUm9vdCwgZGVzdGluYXRpb25JbmRleCArIHN0YXJ0SW5kZXgsIDAsIHRy
dWUpOworICAgICAgICBSZWZQdHI8UmFuZ2U+IGVuZCA9IFRleHRJdGVyYXRvcjo6cmFuZ2VGcm9t
TG9jYXRpb25BbmRMZW5ndGgoZWRpdGFibGVSb290LCBkZXN0aW5hdGlvbkluZGV4ICsgZW5kSW5k
ZXgsIDAsIHRydWUpOwogICAgICAgICBpZiAoc3RhcnQgJiYgZW5kKQogICAgICAgICAgICAgc2V0
RW5kaW5nU2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24oc3RhcnQtPnN0YXJ0UG9zaXRpb24oKSwg
ZW5kLT5zdGFydFBvc2l0aW9uKCksIERPV05TVFJFQU0sIG9yaWdpbmFsSXNEaXJlY3Rpb25hbCkp
OwogICAgIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAJKHJl
dmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDI0LDYgKzQyNCwyMCBAQCBzdGF0aWMgaW5saW5lIE5vZGUq
IG5leHRTaWJsaW5nKFRleHRJdGVyCiAgICAgcmV0dXJuIG5vZGUubmV4dFNpYmxpbmcoKTsKIH0K
IAorc3RhdGljIGlubGluZSBOb2RlKiBuZXh0Tm9kZShUZXh0SXRlcmF0b3JCZWhhdmlvciBvcHRp
b25zLCBOb2RlJiBub2RlKQoreworICAgIGlmIChVTkxJS0VMWShvcHRpb25zICYgVGV4dEl0ZXJh
dG9yVHJhdmVyc2VzRmxhdFRyZWUpKQorICAgICAgICByZXR1cm4gbmV4dEluQ29tcG9zZWRUcmVl
SWdub3JpbmdVc2VyQWdlbnRTaGFkb3cobm9kZSk7CisgICAgcmV0dXJuIE5vZGVUcmF2ZXJzYWw6
Om5leHQobm9kZSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbCBpc0Rlc2NlbmRhbnRPZihUZXh0
SXRlcmF0b3JCZWhhdmlvciBvcHRpb25zLCBOb2RlJiBub2RlLCBOb2RlJiBwb3NzaWJsZUFuY2Vz
dG9yKQoreworICAgIGlmIChVTkxJS0VMWShvcHRpb25zICYgVGV4dEl0ZXJhdG9yVHJhdmVyc2Vz
RmxhdFRyZWUpKQorICAgICAgICByZXR1cm4gbm9kZS5pc0Rlc2NlbmRhbnRPclNoYWRvd0Rlc2Nl
bmRhbnRPZigmcG9zc2libGVBbmNlc3Rvcik7CisgICAgcmV0dXJuIG5vZGUuaXNEZXNjZW5kYW50
T2YoJnBvc3NpYmxlQW5jZXN0b3IpOworfQorCiBzdGF0aWMgaW5saW5lIE5vZGUqIHBhcmVudE5v
ZGVPclNoYWRvd0hvc3QoVGV4dEl0ZXJhdG9yQmVoYXZpb3Igb3B0aW9ucywgTm9kZSYgbm9kZSkK
IHsKICAgICBpZiAoVU5MSUtFTFkob3B0aW9ucyAmIFRleHRJdGVyYXRvclRyYXZlcnNlc0ZsYXRU
cmVlKSkKQEAgLTUwNywxMCArNTIxLDEwIEBAIHZvaWQgVGV4dEl0ZXJhdG9yOjphZHZhbmNlKCkK
ICAgICAgICAgaWYgKCFuZXh0KSB7CiAgICAgICAgICAgICBuZXh0ID0gbmV4dFNpYmxpbmcobV9i
ZWhhdmlvciwgKm1fbm9kZSk7CiAgICAgICAgICAgICBpZiAoIW5leHQpIHsKLSAgICAgICAgICAg
ICAgICBib29sIHBhc3RFbmQgPSBOb2RlVHJhdmVyc2FsOjpuZXh0KCptX25vZGUpID09IG1fcGFz
dEVuZE5vZGU7CisgICAgICAgICAgICAgICAgYm9vbCBwYXN0RW5kID0gbmV4dE5vZGUobV9iZWhh
dmlvciwgKm1fbm9kZSkgPT0gbV9wYXN0RW5kTm9kZTsKICAgICAgICAgICAgICAgICBOb2RlKiBw
YXJlbnROb2RlID0gcGFyZW50Tm9kZU9yU2hhZG93SG9zdChtX2JlaGF2aW9yLCAqbV9ub2RlKTsK
ICAgICAgICAgICAgICAgICB3aGlsZSAoIW5leHQgJiYgcGFyZW50Tm9kZSkgewotICAgICAgICAg
ICAgICAgICAgICBpZiAoKHBhc3RFbmQgJiYgcGFyZW50Tm9kZSA9PSBtX2VuZENvbnRhaW5lcikg
fHwgbV9lbmRDb250YWluZXItPmlzRGVzY2VuZGFudE9mKCpwYXJlbnROb2RlKSkKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKChwYXN0RW5kICYmIHBhcmVudE5vZGUgPT0gbV9lbmRDb250YWluZXIp
IHx8IGlzRGVzY2VuZGFudE9mKG1fYmVoYXZpb3IsICptX2VuZENvbnRhaW5lciwgKnBhcmVudE5v
ZGUpKQogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAg
ICBib29sIGhhdmVSZW5kZXJlciA9IG1fbm9kZS0+cmVuZGVyZXIoKTsKICAgICAgICAgICAgICAg
ICAgICAgTm9kZSogZXhpdGVkTm9kZSA9IG1fbm9kZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvbWFya3VwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21h
cmt1cC5jcHAJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFy
a3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjczLDE1ICsyNzMsOCBAQCBwcml2YXRlOgogICAg
IAogICAgIE5vZGUqIG5leHRTa2lwcGluZ0NoaWxkcmVuKE5vZGUmIG5vZGUpCiAgICAgewotICAg
ICAgICBpZiAoVU5MSUtFTFkobV91c2VDb21wb3NlZFRyZWUpKSB7Ci0gICAgICAgICAgICBpZiAo
YXV0byogc2libGluZyA9IG5leHRTaWJsaW5nSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2Vu
dFNoYWRvdyhub2RlKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gc2libGluZzsKLSAgICAgICAg
ICAgIGZvciAoYXV0byogYW5jZXN0b3IgPSBub2RlLnBhcmVudEluQ29tcG9zZWRUcmVlKCk7IGFu
Y2VzdG9yOyBhbmNlc3RvciA9IGFuY2VzdG9yLT5wYXJlbnRJbkNvbXBvc2VkVHJlZSgpKSB7Ci0g
ICAgICAgICAgICAgICAgaWYgKGF1dG8qIHNpYmxpbmcgPSBuZXh0U2libGluZ0luQ29tcG9zZWRU
cmVlSWdub3JpbmdVc2VyQWdlbnRTaGFkb3coKmFuY2VzdG9yKSkKLSAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHNpYmxpbmc7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtFTFkobV91c2VDb21wb3NlZFRyZWUp
KQorICAgICAgICAgICAgcmV0dXJuIG5leHRTa2lwcGluZ0NoaWxkcmVuSW5Db21wb3NlZFRyZWVJ
Z25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKTsKICAgICAgICAgcmV0dXJuIE5vZGVUcmF2ZXJz
YWw6Om5leHRTa2lwcGluZ0NoaWxkcmVuKG5vZGUpOwogICAgIH0KIApJbmRleDogTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNp
b24gMjM4NjMzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMTgtMTEtMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgRXhlY3V0aW5nICJpbnNlcnR1bm9yZGVyZWRsaXN0IiB3aGlsZSBzZWxlY3Rp
bmcgYSBjb250ZW50ZWRpdGFibGUgZWxlbWVudCBpbnNpZGUgYSBzaGFkb3cgZG9tIGhhbmdzIHRo
ZSBicm93c2VyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODQwNDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM4OTMxMDMzPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGEgcmVncmVzc2lvbiB0
ZXN0IGZvciBleGVjdXRpbmcgSW5zZXJ0VW5vcmRlcmVkTGlzdCBpbnNpZGUgYSBzaGFkb3cgdHJl
ZS4KKworICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvaW5zZXJ0LW9yZGVyZWQtbGlzdC1p
bi1zaGFkb3ctdHJlZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZXhl
Y0NvbW1hbmQvaW5zZXJ0LW9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sOiBBZGRlZC4K
KwogMjAxOC0xMS0yOCAgSnVzdGluIEZhbiAgPGp1c3Rpbl9mYW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFtXZWJHUFVdIEJlZ2luIGltcGxlbWVudGF0aW9uIG9mIFdlYkdQVVJlbmRlclBhc3NFbmNv
ZGVyIGFuZCBiYXJlYm9uZXMgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355966</attachid>
            <date>2018-11-28 19:46:27 -0800</date>
            <delta_ts>2018-11-28 23:41:22 -0800</delta_ts>
            <desc>Added the forgotten tests</desc>
            <filename>bug-184049-20181128194626.patch</filename>
            <type>text/plain</type>
            <size>10907</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE4LTExLTI4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIEV4ZWN1dGluZyAiaW5zZXJ0dW5v
cmRlcmVkbGlzdCIgd2hpbGUgc2VsZWN0aW5nIGEgY29udGVudGVkaXRhYmxlIGVsZW1lbnQgaW5z
aWRlIGEgc2hhZG93IGRvbSBoYW5ncyB0aGUgYnJvd3NlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MDQ5CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8zODkzMTAzMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGUgcHJpbWFyeSBodW5nIHdhcyBjYXVzZWQgYnkgVGV4dEl0ZXJhdG9yOjphZHZhbmNl
IHRyYXZlcnNpbmcgdGhlIG5leHQgbm9kZSBpbiB0aGUgdHJlZSBvcmRlciB1c2luZworICAgICAg
ICBOb2RlVHJhdmVyc2FsOjpuZXh0IHdoaWNoIGRvZXNuJ3QgdGFrZSB0aGUgY29tcG9zZWQgdHJl
ZSBpbnRvIGFjY291bnQuIEZpeGVkIHRoZSBidWcgYnkgdHJhdmVyc2luZworICAgICAgICB0aGUg
Y29tcG9zZWQgdHJlZSB3aGlsZSBzaGFyaW5nIGNvZGUgd2l0aCBTdHlsaXplZE1hcmt1cEFjY3Vt
dWxhdG9yLgorCisgICAgICAgIFRoaXMgcmV2ZWFsZWQgYSBzZWNvbmQgaGFuZyBpbiBJbnNlcnRM
aXN0Q29tbWFuZDo6ZG9BcHBseSgpIGNhdXNlZCBieSBlbmRpbmdTZWxlY3Rpb24oKSBiZWluZyBu
dWxsLAorICAgICAgICB3aGljaCB3YXMgY2F1c2VkIGJ5IENvbXBvc2l0ZUVkaXRDb21tYW5kOjpt
b3ZlUGFyYWdyYXBocyBmYWlsaW5nIHRvIHJlc3RvcmUgdGhlIGVuZGluZyBzZWxlY3Rpb24gcHJv
cGVybHkKKyAgICAgICAgYmVjYXVzZSBpdCB3YXMgY29tcHV0aW5nIHRoZSB0ZXh0IGluZGljZXMg
ZGlmZmVyZW5jZSBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50IHVudGlsIHRoZSBk
ZXN0aW5hdGlvbi4KKworICAgICAgICBGaXhlZCB0aGlzIHNlY29uZCBidWcgYnkgY29tcHV0aW5n
IHRoZSBpbmRpY2VzIGFnYWluc3QgdGhlIGJlZ2lubmluZyBvZiB0aGUgcm9vdCBlZGl0YWJsZSBl
bGVtZW50LgorICAgICAgICBOb3RlIHRoYXQgZWRpdGFiaWxpdHkgbmV2ZXIgY3Jvc3NlcyBhIHNo
YWRvdyBib3VuZGFyeS4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL2V4ZWNDb21tYW5kL2luc2Vy
dC11bm9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sCisKKyAgICAgICAgKiBkb20vQ29t
cG9zZWRUcmVlSXRlcmF0b3IuaDoKKyAgICAgICAgKFdlYkNvcmU6Om5leHRTa2lwcGluZ0NoaWxk
cmVuSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyk6IEV4dHJhY3RlZCBvdXQg
b2YgbmV4dFNraXBwaW5nQ2hpbGRyZW4KKyAgICAgICAgaW4gbWFya3VwLmNwcC4KKyAgICAgICAg
KFdlYkNvcmU6Om5leHRJbkNvbXBvc2VkVHJlZUlnbm9yaW5nVXNlckFnZW50U2hhZG93KTogQWRk
ZWQuCisgICAgICAgICogZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDb21wb3NpdGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFncmFwaHMpOiBDb21wdXRl
IHRoZSBpbmRleCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHJvb3QgZWRpdGFibGUKKyAgICAg
ICAgZWxlbWVudCBhcyBvcHBvc2VkIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50Lgor
ICAgICAgICAqIGVkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Om5l
eHROb2RlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjppc0Rlc2NlbmRhbnRPZik6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6VGV4dEl0ZXJhdG9yOjphZHZhbmNlKTogVXNlIHRoZSBuZXds
eSBhZGRlZCBmdW5jdGlvbnMgdG8gdHJhdmVyc2UgdGhlIGNvbXBvc2VkIHRyZWUgd2hlbiB0aGUg
b3B0aW9ucworICAgICAgICBjb250YWlucyBUZXh0SXRlcmF0b3JUcmF2ZXJzZXNGbGF0VHJlZS4K
KyAgICAgICAgKiBlZGl0aW5nL21hcmt1cC5jcHA6CisKIDIwMTgtMTEtMjggIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgZGVhZCBj
b2RlIGZyb20gYW4gZWFybGllciBhdHRlbXB0IGF0IGltcGxlbWVudGluZyBzYWZlIGJyb3dzaW5n
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vQ29tcG9zZWRUcmVlSXRlcmF0b3IuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vQ29tcG9zZWRUcmVlSXRlcmF0b3IuaAkocmV2aXNp
b24gMjM4NjMzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0NvbXBvc2VkVHJlZUl0ZXJhdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI0NSw0ICsyNDUsMjIgQEAgaW5saW5lIE5vZGUqIG5leHRTaWJs
aW5nSW5Db21wb3NlZFRyZWVJZwogICAgIHJldHVybiBub2RlLm5leHRTaWJsaW5nKCk7CiB9CiAK
K2lubGluZSBOb2RlKiBuZXh0U2tpcHBpbmdDaGlsZHJlbkluQ29tcG9zZWRUcmVlSWdub3JpbmdV
c2VyQWdlbnRTaGFkb3coTm9kZSYgbm9kZSkKK3sKKyAgICBpZiAoYXV0byogc2libGluZyA9IG5l
eHRTaWJsaW5nSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKSkKKyAg
ICAgICAgcmV0dXJuIHNpYmxpbmc7CisgICAgZm9yIChhdXRvKiBhbmNlc3RvciA9IG5vZGUucGFy
ZW50SW5Db21wb3NlZFRyZWUoKTsgYW5jZXN0b3I7IGFuY2VzdG9yID0gYW5jZXN0b3ItPnBhcmVu
dEluQ29tcG9zZWRUcmVlKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHNpYmxpbmcgPSBuZXh0U2li
bGluZ0luQ29tcG9zZWRUcmVlSWdub3JpbmdVc2VyQWdlbnRTaGFkb3coKmFuY2VzdG9yKSkKKyAg
ICAgICAgICAgIHJldHVybiBzaWJsaW5nOworICAgIH0KKyAgICByZXR1cm4gbnVsbHB0cjsKK30K
KworaW5saW5lIE5vZGUqIG5leHRJbkNvbXBvc2VkVHJlZUlnbm9yaW5nVXNlckFnZW50U2hhZG93
KE5vZGUmIG5vZGUpCit7CisgICAgaWYgKGF1dG8qIGZpcnN0Q2hpbGQgPSBmaXJzdENoaWxkSW5D
b21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKSkKKyAgICAgICAgcmV0dXJu
IGZpcnN0Q2hpbGQ7CisgICAgcmV0dXJuIG5leHRTa2lwcGluZ0NoaWxkcmVuSW5Db21wb3NlZFRy
ZWVJZ25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29t
bWFuZC5jcHAJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29t
cG9zaXRlRWRpdENvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDg3LDcgKzE0ODcsOCBA
QCB2b2lkIENvbXBvc2l0ZUVkaXRDb21tYW5kOjptb3ZlUGFyYWdyYXBoCiAgICAgICAgIGRvY3Vt
ZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAgICAgfQogCi0g
ICAgUmVmUHRyPFJhbmdlPiBzdGFydFRvRGVzdGluYXRpb25SYW5nZShSYW5nZTo6Y3JlYXRlKGRv
Y3VtZW50KCksIGZpcnN0UG9zaXRpb25Jbk5vZGUoZG9jdW1lbnQoKS5kb2N1bWVudEVsZW1lbnQo
KSksIGRlc3RpbmF0aW9uLmRlZXBFcXVpdmFsZW50KCkucGFyZW50QW5jaG9yZWRFcXVpdmFsZW50
KCkpKTsKKyAgICBhdXRvIGVkaXRhYmxlUm9vdCA9IGRlc3RpbmF0aW9uLnJvb3RFZGl0YWJsZUVs
ZW1lbnQoKTsKKyAgICBSZWZQdHI8UmFuZ2U+IHN0YXJ0VG9EZXN0aW5hdGlvblJhbmdlKFJhbmdl
OjpjcmVhdGUoZG9jdW1lbnQoKSwgZmlyc3RQb3NpdGlvbkluTm9kZShlZGl0YWJsZVJvb3QpLCBk
ZXN0aW5hdGlvbi5kZWVwRXF1aXZhbGVudCgpLnBhcmVudEFuY2hvcmVkRXF1aXZhbGVudCgpKSk7
CiAgICAgZGVzdGluYXRpb25JbmRleCA9IFRleHRJdGVyYXRvcjo6cmFuZ2VMZW5ndGgoc3RhcnRU
b0Rlc3RpbmF0aW9uUmFuZ2UuZ2V0KCksIHRydWUpOwogCiAgICAgc2V0RW5kaW5nU2VsZWN0aW9u
KFZpc2libGVTZWxlY3Rpb24oZGVzdGluYXRpb24sIG9yaWdpbmFsSXNEaXJlY3Rpb25hbCkpOwpA
QCAtMTUxMCw4ICsxNTExLDggQEAgdm9pZCBDb21wb3NpdGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFn
cmFwaAogICAgICAgICAvLyBjYXVzZXMgc3BhY2VzIHRvIGJlIGNvbGxhcHNlZCBkdXJpbmcgdGhl
IG1vdmUgb3BlcmF0aW9uLiAgVGhpcyByZXN1bHRzCiAgICAgICAgIC8vIGluIGEgY2FsbCB0byBy
YW5nZUZyb21Mb2NhdGlvbkFuZExlbmd0aCB3aXRoIGEgbG9jYXRpb24gcGFzdCB0aGUgZW5kCiAg
ICAgICAgIC8vIG9mIHRoZSBkb2N1bWVudCAod2hpY2ggd2lsbCByZXR1cm4gbnVsbCkuCi0gICAg
ICAgIFJlZlB0cjxSYW5nZT4gc3RhcnQgPSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9u
QW5kTGVuZ3RoKGRvY3VtZW50KCkuZG9jdW1lbnRFbGVtZW50KCksIGRlc3RpbmF0aW9uSW5kZXgg
KyBzdGFydEluZGV4LCAwLCB0cnVlKTsKLSAgICAgICAgUmVmUHRyPFJhbmdlPiBlbmQgPSBUZXh0
SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5kTGVuZ3RoKGRvY3VtZW50KCkuZG9jdW1lbnRF
bGVtZW50KCksIGRlc3RpbmF0aW9uSW5kZXggKyBlbmRJbmRleCwgMCwgdHJ1ZSk7CisgICAgICAg
IFJlZlB0cjxSYW5nZT4gc3RhcnQgPSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5k
TGVuZ3RoKGVkaXRhYmxlUm9vdCwgZGVzdGluYXRpb25JbmRleCArIHN0YXJ0SW5kZXgsIDAsIHRy
dWUpOworICAgICAgICBSZWZQdHI8UmFuZ2U+IGVuZCA9IFRleHRJdGVyYXRvcjo6cmFuZ2VGcm9t
TG9jYXRpb25BbmRMZW5ndGgoZWRpdGFibGVSb290LCBkZXN0aW5hdGlvbkluZGV4ICsgZW5kSW5k
ZXgsIDAsIHRydWUpOwogICAgICAgICBpZiAoc3RhcnQgJiYgZW5kKQogICAgICAgICAgICAgc2V0
RW5kaW5nU2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24oc3RhcnQtPnN0YXJ0UG9zaXRpb24oKSwg
ZW5kLT5zdGFydFBvc2l0aW9uKCksIERPV05TVFJFQU0sIG9yaWdpbmFsSXNEaXJlY3Rpb25hbCkp
OwogICAgIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAJKHJl
dmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDI0LDYgKzQyNCwyMCBAQCBzdGF0aWMgaW5saW5lIE5vZGUq
IG5leHRTaWJsaW5nKFRleHRJdGVyCiAgICAgcmV0dXJuIG5vZGUubmV4dFNpYmxpbmcoKTsKIH0K
IAorc3RhdGljIGlubGluZSBOb2RlKiBuZXh0Tm9kZShUZXh0SXRlcmF0b3JCZWhhdmlvciBvcHRp
b25zLCBOb2RlJiBub2RlKQoreworICAgIGlmIChVTkxJS0VMWShvcHRpb25zICYgVGV4dEl0ZXJh
dG9yVHJhdmVyc2VzRmxhdFRyZWUpKQorICAgICAgICByZXR1cm4gbmV4dEluQ29tcG9zZWRUcmVl
SWdub3JpbmdVc2VyQWdlbnRTaGFkb3cobm9kZSk7CisgICAgcmV0dXJuIE5vZGVUcmF2ZXJzYWw6
Om5leHQobm9kZSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbCBpc0Rlc2NlbmRhbnRPZihUZXh0
SXRlcmF0b3JCZWhhdmlvciBvcHRpb25zLCBOb2RlJiBub2RlLCBOb2RlJiBwb3NzaWJsZUFuY2Vz
dG9yKQoreworICAgIGlmIChVTkxJS0VMWShvcHRpb25zICYgVGV4dEl0ZXJhdG9yVHJhdmVyc2Vz
RmxhdFRyZWUpKQorICAgICAgICByZXR1cm4gbm9kZS5pc0Rlc2NlbmRhbnRPclNoYWRvd0Rlc2Nl
bmRhbnRPZigmcG9zc2libGVBbmNlc3Rvcik7CisgICAgcmV0dXJuIG5vZGUuaXNEZXNjZW5kYW50
T2YoJnBvc3NpYmxlQW5jZXN0b3IpOworfQorCiBzdGF0aWMgaW5saW5lIE5vZGUqIHBhcmVudE5v
ZGVPclNoYWRvd0hvc3QoVGV4dEl0ZXJhdG9yQmVoYXZpb3Igb3B0aW9ucywgTm9kZSYgbm9kZSkK
IHsKICAgICBpZiAoVU5MSUtFTFkob3B0aW9ucyAmIFRleHRJdGVyYXRvclRyYXZlcnNlc0ZsYXRU
cmVlKSkKQEAgLTUwNywxMCArNTIxLDEwIEBAIHZvaWQgVGV4dEl0ZXJhdG9yOjphZHZhbmNlKCkK
ICAgICAgICAgaWYgKCFuZXh0KSB7CiAgICAgICAgICAgICBuZXh0ID0gbmV4dFNpYmxpbmcobV9i
ZWhhdmlvciwgKm1fbm9kZSk7CiAgICAgICAgICAgICBpZiAoIW5leHQpIHsKLSAgICAgICAgICAg
ICAgICBib29sIHBhc3RFbmQgPSBOb2RlVHJhdmVyc2FsOjpuZXh0KCptX25vZGUpID09IG1fcGFz
dEVuZE5vZGU7CisgICAgICAgICAgICAgICAgYm9vbCBwYXN0RW5kID0gbmV4dE5vZGUobV9iZWhh
dmlvciwgKm1fbm9kZSkgPT0gbV9wYXN0RW5kTm9kZTsKICAgICAgICAgICAgICAgICBOb2RlKiBw
YXJlbnROb2RlID0gcGFyZW50Tm9kZU9yU2hhZG93SG9zdChtX2JlaGF2aW9yLCAqbV9ub2RlKTsK
ICAgICAgICAgICAgICAgICB3aGlsZSAoIW5leHQgJiYgcGFyZW50Tm9kZSkgewotICAgICAgICAg
ICAgICAgICAgICBpZiAoKHBhc3RFbmQgJiYgcGFyZW50Tm9kZSA9PSBtX2VuZENvbnRhaW5lcikg
fHwgbV9lbmRDb250YWluZXItPmlzRGVzY2VuZGFudE9mKCpwYXJlbnROb2RlKSkKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKChwYXN0RW5kICYmIHBhcmVudE5vZGUgPT0gbV9lbmRDb250YWluZXIp
IHx8IGlzRGVzY2VuZGFudE9mKG1fYmVoYXZpb3IsICptX2VuZENvbnRhaW5lciwgKnBhcmVudE5v
ZGUpKQogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAg
ICBib29sIGhhdmVSZW5kZXJlciA9IG1fbm9kZS0+cmVuZGVyZXIoKTsKICAgICAgICAgICAgICAg
ICAgICAgTm9kZSogZXhpdGVkTm9kZSA9IG1fbm9kZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvbWFya3VwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21h
cmt1cC5jcHAJKHJldmlzaW9uIDIzODYzMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFy
a3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjczLDE1ICsyNzMsOCBAQCBwcml2YXRlOgogICAg
IAogICAgIE5vZGUqIG5leHRTa2lwcGluZ0NoaWxkcmVuKE5vZGUmIG5vZGUpCiAgICAgewotICAg
ICAgICBpZiAoVU5MSUtFTFkobV91c2VDb21wb3NlZFRyZWUpKSB7Ci0gICAgICAgICAgICBpZiAo
YXV0byogc2libGluZyA9IG5leHRTaWJsaW5nSW5Db21wb3NlZFRyZWVJZ25vcmluZ1VzZXJBZ2Vu
dFNoYWRvdyhub2RlKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gc2libGluZzsKLSAgICAgICAg
ICAgIGZvciAoYXV0byogYW5jZXN0b3IgPSBub2RlLnBhcmVudEluQ29tcG9zZWRUcmVlKCk7IGFu
Y2VzdG9yOyBhbmNlc3RvciA9IGFuY2VzdG9yLT5wYXJlbnRJbkNvbXBvc2VkVHJlZSgpKSB7Ci0g
ICAgICAgICAgICAgICAgaWYgKGF1dG8qIHNpYmxpbmcgPSBuZXh0U2libGluZ0luQ29tcG9zZWRU
cmVlSWdub3JpbmdVc2VyQWdlbnRTaGFkb3coKmFuY2VzdG9yKSkKLSAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHNpYmxpbmc7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtFTFkobV91c2VDb21wb3NlZFRyZWUp
KQorICAgICAgICAgICAgcmV0dXJuIG5leHRTa2lwcGluZ0NoaWxkcmVuSW5Db21wb3NlZFRyZWVJ
Z25vcmluZ1VzZXJBZ2VudFNoYWRvdyhub2RlKTsKICAgICAgICAgcmV0dXJuIE5vZGVUcmF2ZXJz
YWw6Om5leHRTa2lwcGluZ0NoaWxkcmVuKG5vZGUpOwogICAgIH0KIApJbmRleDogTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNp
b24gMjM4NjMzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMTgtMTEtMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgRXhlY3V0aW5nICJpbnNlcnR1bm9yZGVyZWRsaXN0IiB3aGlsZSBzZWxlY3Rp
bmcgYSBjb250ZW50ZWRpdGFibGUgZWxlbWVudCBpbnNpZGUgYSBzaGFkb3cgZG9tIGhhbmdzIHRo
ZSBicm93c2VyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODQwNDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM4OTMxMDMzPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGEgcmVncmVzc2lvbiB0
ZXN0IGZvciBleGVjdXRpbmcgSW5zZXJ0VW5vcmRlcmVkTGlzdCBpbnNpZGUgYSBzaGFkb3cgdHJl
ZS4KKworICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvaW5zZXJ0LW9yZGVyZWQtbGlzdC1p
bi1zaGFkb3ctdHJlZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZXhl
Y0NvbW1hbmQvaW5zZXJ0LW9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sOiBBZGRlZC4K
KwogMjAxOC0xMS0yOCAgSnVzdGluIEZhbiAgPGp1c3Rpbl9mYW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFtXZWJHUFVdIEJlZ2luIGltcGxlbWVudGF0aW9uIG9mIFdlYkdQVVJlbmRlclBhc3NFbmNv
ZGVyIGFuZCBiYXJlYm9uZXMgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvaW5zZXJ0LXVub3JkZXJlZC1saXN0LWluLXNoYWRv
dy10cmVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4
ZWNDb21tYW5kL2luc2VydC11bm9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS1leHBlY3RlZC50
eHQJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9leGVjQ29tbWFuZC9pbnNl
cnQtdW5vcmRlcmVkLWxpc3QtaW4tc2hhZG93LXRyZWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsMjggQEAKK1RoaXMgdGVzdHMgaW5zZXJ0aW5nIGFuIG9yZGVyZWQgbGlz
dCBpbnNpZGUgYSBzaGFkb3cgdHJlZS4gV2ViS2l0IHNob3VsZCBub3QgaGFuZy4KKworQmVmb3Jl
OgorfCA8ZGl2PgorfCAgIGNvbnRlbnRlZGl0YWJsZT0iIgorfCAgIGlkPSJlZGl0b3IiCit8ICAg
IgorICAgIG9uZSIKK3wgICA8YnI+Cit8ICAgIgorICAgIHR3byIKK3wgICA8YnI+Cit8ICAgIgor
IgorCitBZnRlcjoKK3wgPGRpdj4KK3wgICBjb250ZW50ZWRpdGFibGU9IiIKK3wgICBpZD0iZWRp
dG9yIgorfCAgIDxvbD4KK3wgICAgIDxsaT4KK3wgICAgICAgIm9uZSIKK3wgICAgICAgPGJyPgor
fCAgICAgPGxpPgorfCAgICAgICAidHdvIgorfCAgICAgICA8YnI+Cit8ICAgIgorIgpJbmRleDog
TGF5b3V0VGVzdHMvZWRpdGluZy9leGVjQ29tbWFuZC9pbnNlcnQtdW5vcmRlcmVkLWxpc3QtaW4t
c2hhZG93LXRyZWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWND
b21tYW5kL2luc2VydC11bm9yZGVyZWQtbGlzdC1pbi1zaGFkb3ctdHJlZS5odG1sCShub25leGlz
dGVudCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvaW5zZXJ0LXVub3JkZXJl
ZC1saXN0LWluLXNoYWRvdy10cmVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNiBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9kdW1wLWFzLW1hcmt1cC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCitNYXJrdXAu
ZGVzY3JpcHRpb24oJ1RoaXMgdGVzdHMgaW5zZXJ0aW5nIGFuIG9yZGVyZWQgbGlzdCBpbnNpZGUg
YSBzaGFkb3cgdHJlZS4gV2ViS2l0IHNob3VsZCBub3QgaGFuZy4nKTsKKworY29uc3QgaG9zdCA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChob3N0KTsKK2NvbnN0IHNoYWRvd1Jvb3QgPSBob3N0LmF0dGFjaFNoYWRvdyh7bW9kZTogJ2Ns
b3NlZCd9KTsKK3NoYWRvd1Jvb3QuaW5uZXJIVE1MID0gYDxkaXYgaWQ9ImVkaXRvciIgY29udGVu
dGVkaXRhYmxlPgorICAgIG9uZTxicj4KKyAgICB0d288YnI+Cis8L2Rpdj5gOworCitzaGFkb3dS
b290LnF1ZXJ5U2VsZWN0b3IoJyNlZGl0b3InKS5mb2N1cygpOworZG9jdW1lbnQuZXhlY0NvbW1h
bmQoJ3NlbGVjdEFsbCcsIGZhbHNlLCBudWxsKTsKK01hcmt1cC5kdW1wKHNoYWRvd1Jvb3QsICdC
ZWZvcmUnKTsKKworZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2luc2VydE9yZGVyZWRMaXN0JywgZmFs
c2UsIG51bGwpOworTWFya3VwLmR1bXAoc2hhZG93Um9vdCwgJ0FmdGVyJyk7CisKKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="373037"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>