<?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>181916</bug_id>
          
          <creation_ts>2018-01-21 14:23:29 -0800</creation_ts>
          <short_desc>[GTK] Reenable -fvisibility=hidden</short_desc>
          <delta_ts>2022-05-14 04:51:59 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>Other</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=221333</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222818</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222860</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222972</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=229321</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>222972</dependson>
    
    <dependson>223024</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>annulen</cc>
    
    <cc>aperez</cc>
    
    <cc>benjamin</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>clopez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>dpino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>keith_miller</cc>
    
    <cc>lmoura</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>msaboff</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>saam</cc>
    
    <cc>sergio</cc>
    
    <cc>twilco.o</cc>
    
    <cc>tzagallo</cc>
    
    <cc>xan.lopez</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1391501</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-21 14:23:29 -0800</bug_when>
    <thetext>We should reenable -fvisibility=hidden and -fvisibility-hidden-inlines

This is currently broken for GTK; it needs more work to ensure WTF does not get static linked into libwebkit2gtk first. I&apos;ve so far fixed three different places where this is happening, but I guess there is somewhere else missing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391502</commentid>
    <comment_count>1</comment_count>
      <attachid>331882</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-21 14:24:07 -0800</bug_when>
    <thetext>Created attachment 331882
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391610</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-22 05:39:53 -0800</bug_when>
    <thetext>FYI, the backtrace:

#0  0x00007fcc17c76f92 in WTF::RunLoop::TimerBase::TimerBase(WTF::RunLoop&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#1  0x00007fcc17c7640b in WTF::scheduleDispatchFunctionsOnMainThread() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#2  0x00007fcc1a06b885 in WebCore::Document::postTask(WebCore::ScriptExecutionContext::Task&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#3  0x00007fcc1a3b1cc1 in WebCore::ApplicationCacheGroup::postListenerTask(WTF::AtomicString const&amp;, int, int, WebCore::DocumentLoader&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#4  0x00007fcc1a3b27dc in WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL(WebCore::Frame&amp;) [clone .part.528] ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#5  0x00007fcc1a1faaf9 in WebCore::HTMLHtmlElement::insertedByParser() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#6  0x00007fcc1a28bebf in WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML(WebCore::AtomicHTMLToken&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#7  0x00007fcc1a29d3da in WebCore::HTMLTreeBuilder::defaultForBeforeHTML() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#8  0x00007fcc1a2adbdb in WebCore::HTMLTreeBuilder::processEndOfFile(WebCore::AtomicHTMLToken&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#9  0x00007fcc1a2aef0b in WebCore::HTMLTreeBuilder::constructTree(WebCore::AtomicHTMLToken&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#10 0x00007fcc1a285ade in WebCore::HTMLDocumentParser::constructTreeFromHTMLToken(WebCore::HTMLTokenizer::TokenPtr&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#11 0x00007fcc1a286963 in WebCore::HTMLDocumentParser::pumpTokenizerLoop(WebCore::HTMLDocumentParser::SynchronousMode, bool, WebCore::PumpSession&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#12 0x00007fcc1a286c9e in WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#13 0x00007fcc1a28729b in WebCore::HTMLDocumentParser::prepareToStopParsing()
    ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#14 0x00007fcc1a2873a0 in WebCore::HTMLDocumentParser::finish() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#15 0x00007fcc1a349a3a in WebCore::DocumentWriter::end() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#16 0x00007fcc1a354703 in WebCore::DocumentLoader::finishedLoading() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#17 0x00007fcc1a356a39 in WebCore::DocumentLoader::maybeLoadEmpty() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#18 0x00007fcc1a35837c in WebCore::DocumentLoader::startLoadingMainResource()
    ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#19 0x00007fcc1a3665c3 in WebCore::FrameLoader::init() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#20 0x00007fcc196534cc in WebKit::WebFrame::createWithCoreMainFrame(WebKit::WebPage*, WebCore::Frame*) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#21 0x00007fcc19669d21 in WebKit::WebPage::WebPage(unsigned long, WebKit::WebPageCreationParameters&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#22 0x00007fcc1966a6be in WebKit::WebPage::create(unsigned long, WebKit::WebPageCreationParameters&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#23 0x00007fcc195b4808 in WebKit::WebProcess::createWebPage(unsigned long, WebKit::WebPageCreationParameters&amp;&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#24 0x00007fcc1985f225 in void IPC::handleMessage&lt;Messages::WebProcess::CreateWebPage, WebKit::WebProcess, void (WebKit::WebProcess::*)(unsigned long, WebKit::WebPageCreationParameters&amp;&amp;)&gt;(IPC::Decoder&amp;, WebKit::WebProcess*, void (WebKit::WebProcess::*)(unsigned long, WebKit::WebPageCreationParameters&amp;&amp;)) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#25 0x00007fcc1985aa23 in WebKit::WebProcess::didReceiveWebProcessMessage(IPC::Connection&amp;, IPC::Decoder&amp;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#26 0x00007fcc194329d0 in IPC::Connection::dispatchMessage(std::unique_ptr&lt;IPC::Decoder, std::default_delete&lt;IPC::Decoder&gt; &gt;) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#27 0x00007fcc19433298 in IPC::Connection::dispatchOneMessage() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#28 0x00007fcc1ac8afb3 in WTF::RunLoop::performWork() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#29 0x00007fcc1ac893b9 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#30 0x00007fcc10b167b5 in g_main_dispatch ()
    at /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesGTK/Source/glib-2.54.2/glib/gmain.c:3148
#31 g_main_context_dispatch ()
    at /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesGTK/Source/glib-2.54.2/glib/gmain.c:3813
#32 0x00007fcc10b16b58 in g_main_context_iterate ()
    at /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesGTK/Source/glib-2.54.2/glib/gmain.c:3886
#33 0x00007fcc10b16e62 in g_main_loop_run ()
    at /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesGTK/Source/glib-2.54.2/glib/gmain.c:4082
#34 0x00007fcc1ac89cf8 in WTF::RunLoop::run() ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#35 0x00007fcc197f40e8 in int WebKit::ChildProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMain&gt;(int, char**) ()
   from /home/mcatanzaro/Projects/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#36 0x00007fcc0c82d00a in __libc_start_main (main=0x400bc0 &lt;main&gt;, argc=3, 
    argv=0x7ffcecda1b18, init=&lt;optimized out&gt;, fini=&lt;optimized out&gt;, 
    rtld_fini=&lt;optimized out&gt;, stack_end=0x7ffcecda1b08)
    at ../csu/libc-start.c:308
#37 0x0000000000400c4a in _start ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391611</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-22 05:41:40 -0800</bug_when>
    <thetext>To test it, you need to remove all the ENABLE(DEVELOPER_MODE) conditions from ProcessExecutablePathGtk.cpp, then build with DEVELOPER_MODE disabled and MiniBrowser enabled:

build-webkit --gtk --cmakeargs=&quot;-DDEVELOPER_MODE=OFF -DENABLE_MINIBROWSER=ON&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714045</commentid>
    <comment_count>4</comment_count>
      <attachid>416033</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-12-11 12:40:46 -0800</bug_when>
    <thetext>Created attachment 416033
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714077</commentid>
    <comment_count>5</comment_count>
      <attachid>416040</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-12-11 13:47:34 -0800</bug_when>
    <thetext>Created attachment 416040
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714095</commentid>
    <comment_count>6</comment_count>
      <attachid>416040</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-12-11 14:37:47 -0800</bug_when>
    <thetext>Comment on attachment 416040
WIP Patch

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

Here&apos;s a patch that builds to let you all experiment with turning hidden visibility back on.

&gt; Source/cmake/OptionsGTK.cmake:36
&gt; +# Hidden visibility requires OBJECT libraries which are not
&gt; +# well supported before 3.12
&gt; +if (${CMAKE_VERSION} VERSION_LESS &quot;3.12.0&quot;)
&gt; +    message(WARNING &quot;Using static libraries instead of object libraries. Consider upgrading your CMake version&quot;)
&gt; +    set(bmalloc_LIBRARY_TYPE STATIC)
&gt; +    set(WTF_LIBRARY_TYPE STATIC)
&gt; +else ()
&gt; +    SET_AND_EXPOSE_TO_BUILD(BUSE_EXPORT_MACROS ON)
&gt; +    SET_AND_EXPOSE_TO_BUILD(USE_EXPORT_MACROS ON)
&gt; +    set(CMAKE_C_VISIBILITY_PRESET hidden)
&gt; +    set(CMAKE_CXX_VISIBILITY_PRESET hidden)
&gt; +    set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
&gt; +
&gt; +    set(bmalloc_LIBRARY_TYPE OBJECT)
&gt; +    set(WTF_LIBRARY_TYPE OBJECT)
&gt; +endif ()

For context for this change.

Using OBJECT libraries is the proper way in CMake to accomplish --whole-archive. There was a rather large limitation on OBJECT libraries prior to 3.12 when https://gitlab.kitware.com/cmake/cmake/-/issues/18010 was fixed. Since we support CMake 3.10 the use of OBJECT libraries and turning on hidden visibility is contingent on having CMake 3.12+.

There&apos;s probably a way to make this work with 3.10 but I haven&apos;t put in the research for it. I&apos;m happy to help someone pull that off if that&apos;s required. Its my understanding that 3.12 can be used after April 2021 when more recent Linux releases can be used. So if it proves too much of a pain then it might make sense to just leave the if statement until then.

&gt; Tools/WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:81
&gt; +    // I think this needs to be in a WK API
&gt; +    // WebKit::TextChecker::setContinuousSpellCheckingEnabled(enabled);

I recall there&apos;s an issue with exporting this when building the Apple port. Adrian had an idea in https://bugs.webkit.org/show_bug.cgi?id=210366#c73 on how to tackle it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725621</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-04 07:48:40 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #0)
&gt; We should reenable -fvisibility=hidden and -fvisibility-hidden-inlines

Hm, I think WPE should use -fvisibility-inlines-hidden, but GTK cannot do so safely because it&apos;s split into two shared objects. The ports will just have to be a little different.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726840</commentid>
    <comment_count>8</comment_count>
      <attachid>419641</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-02-08 15:16:34 -0800</bug_when>
    <thetext>Created attachment 419641
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727045</commentid>
    <comment_count>9</comment_count>
      <attachid>419717</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-02-09 08:11:55 -0800</bug_when>
    <thetext>Created attachment 419717
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727112</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-09 10:15:06 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #7)
&gt; (In reply to Michael Catanzaro from comment #0)
&gt; &gt; We should reenable -fvisibility=hidden and -fvisibility-hidden-inlines
&gt; 
&gt; Hm, I think WPE should use -fvisibility-inlines-hidden, but GTK cannot do so
&gt; safely because it&apos;s split into two shared objects. The ports will just have
&gt; to be a little different.

There is another consideration here. Building with -fvisibility=hidden will break Tools/Scripts/check-for-global-bss-symbols-in-webkitgtk-libs. This script is needed to ensure we don&apos;t wind up reintroducing bug #179914 again. We should definitely use -fvisibility=hidden in release builds, because it will result in better code generation, but to do this safely, we should find another way to run Tools/Scripts/check-for-global-bss-symbols-in-webkitgtk-libs. Currently it runs during dist. That won&apos;t work anymore: it would need to move to an EWS that builds without -fvisibility=hidden. (The script necessarily cannot work properly if WebKit is built with -fvisibility=hidden.)

Again, this only matters for GTK. I think WPE can safely enable -fvisibility=hidden and -fvisibility-inlines-hidden as soon as we&apos;re able to make it build successfully.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727114</commentid>
    <comment_count>11</comment_count>
      <attachid>419717</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-09 10:20:07 -0800</bug_when>
    <thetext>Comment on attachment 419717
WIP Patch

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

&gt; Source/cmake/OptionsGTK.cmake:32
&gt; +    set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)

gcc(1) says:

       -fvisibility-inlines-hidden
           This switch declares that the user does not attempt to compare pointers to inline functions or methods
           where the addresses of the two functions are taken in different shared objects.

GTK port, PlayStation port, and other ports that install multiple shared libraries cannot guarantee this, which is why I don&apos;t think we should use it. (In contrast, WPE only installs a single shared library, so it should be safe to use in OptionsWPE.cmake.)

The full documentation:

       -fvisibility-inlines-hidden
           This switch declares that the user does not attempt to compare pointers to inline functions or methods
           where the addresses of the two functions are taken in different shared objects.

           The effect of this is that GCC may, effectively, mark inline methods with &quot;__attribute__ ((visibility
           (&quot;hidden&quot;)))&quot; so that they do not appear in the export table of a DSO and do not require a PLT
           indirection when used within the DSO.  Enabling this option can have a dramatic effect on load and link
           times of a DSO as it massively reduces the size of the dynamic export table when the library makes heavy
           use of templates.

           The behavior of this switch is not quite the same as marking the methods as hidden directly, because it
           does not affect static variables local to the function or cause the compiler to deduce that the function
           is defined in only one shared object.

           You may mark a method as having a visibility explicitly to negate the effect of the switch for that
           method.  For example, if you do want to compare pointers to a particular inline method, you might mark
           it as having default visibility.  Marking the enclosing class with explicit visibility has no effect.

           Explicitly instantiated inline methods are unaffected by this option as their linkage might otherwise
           cross a shared library boundary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727130</commentid>
    <comment_count>12</comment_count>
      <attachid>419741</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-09 10:58:23 -0800</bug_when>
    <thetext>Created attachment 419741
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727132</commentid>
    <comment_count>13</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-09 10:59:27 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #12)
&gt; Created attachment 419741 [details]
&gt; Patch

I fixed the linker error by adding WEBCORE_EXPORT to ~EventTarget and defining it as an empty function in EventTarget.cpp. It cannot be inlined or default or it doesn&apos;t link. Yay C++.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727133</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-09 11:00:36 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #11)
&gt; &gt; Source/cmake/OptionsGTK.cmake:32
&gt; &gt; +    set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)

Oh, but I haven&apos;t removed that... I suggest we try removing that next.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727140</commentid>
    <comment_count>15</comment_count>
      <attachid>419741</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-09 11:17:58 -0800</bug_when>
    <thetext>Comment on attachment 419741
Patch

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

&gt; Source/WebCore/dom/EventTarget.cpp:71
&gt; +EventTarget::~EventTarget()
&gt; +{
&gt; +}

Well somehow this causes the Apple EWS to fail to link:

Undefined symbols for architecture x86_64:
  &quot;WebCore::EventTarget::~EventTarget()&quot;, referenced from:
      WTF::RefCounted&lt;WebCore::AbortSignal, std::__1::default_delete&lt;WebCore::AbortSignal&gt; &gt;::deref() const in Internals-227951BA24B9AE61.o
      WebCore::AbortSignal::~AbortSignal() in Internals-227951BA24B9AE61.o
      non-virtual thunk to WebCore::AbortSignal::~AbortSignal() in Internals-227951BA24B9AE61.o
      WebCore::AbortSignal::~AbortSignal() in Internals-227951BA24B9AE61.o
      non-virtual thunk to WebCore::AbortSignal::~AbortSignal() in Internals-227951BA24B9AE61.o
ld: symbol(s) not found for architecture x86_64

Yay.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736409</commentid>
    <comment_count>16</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 10:28:22 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #10)
&gt; There is another consideration here. Building with -fvisibility=hidden will
&gt; break Tools/Scripts/check-for-global-bss-symbols-in-webkitgtk-libs. This
&gt; script is needed to ensure we don&apos;t wind up reintroducing bug #179914 again.

No, I&apos;m wrong. It won&apos;t break anything because symbols that are needed in both libraries would have to be manually exported, otherwise the build would immediately, since they won&apos;t be visible anymore.

I&apos;m not sure why I got so confused by this. It should be obviously safe. I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736443</commentid>
    <comment_count>17</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 11:03:19 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #15)
&gt; Well somehow this causes the Apple EWS to fail to link:

I see the GTK EWS fails the same way. Trying to build it locally now, it also fails.

Now when I developed this patch, I tried a bunch of changes until it finally didn&apos;t fail to build. Apparently I must have messed up somehow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736444</commentid>
    <comment_count>18</comment_count>
      <attachid>419741</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 11:05:31 -0800</bug_when>
    <thetext>Comment on attachment 419741
Patch

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

&gt; Source/cmake/OptionsGTK.cmake:32
&gt; +    set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)

As mentioned above, I think only WPE can safely use CMAKE_VISIBILITY_INLINES_HIDDEN.

&gt; Tools/WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:81
&gt; +    // I think this needs to be in a WK API
&gt; +    //WebKit::TextChecker::setContinuousSpellCheckingEnabled(enabled);

Yes indeed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736451</commentid>
    <comment_count>19</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 11:25:54 -0800</bug_when>
    <thetext>It seems the destructor needs to be exported. I must have somehow convinced myself that it built without the destructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736458</commentid>
    <comment_count>20</comment_count>
      <attachid>422389</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 11:56:10 -0800</bug_when>
    <thetext>Created attachment 422389
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736459</commentid>
    <comment_count>21</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 11:57:04 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #20)
&gt; Created attachment 422389 [details]
&gt; Patch

This adds WPE port. I didn&apos;t test that locally, so we&apos;ll see what EWS thinks.

UIScriptControllerGtk::setContinuousSpellCheckingEnabled is going to need a separate patch as that is a bit of a mess.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736493</commentid>
    <comment_count>22</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 13:00:29 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #21)
&gt; UIScriptControllerGtk::setContinuousSpellCheckingEnabled is going to need a
&gt; separate patch as that is a bit of a mess.

Bug #222818</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736516</commentid>
    <comment_count>23</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 13:40:57 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #21)
&gt; This adds WPE port. I didn&apos;t test that locally, so we&apos;ll see what EWS thinks.

Well the WPE EWS is dead currently. Anyway, there should at least be fewer red EWS than with previous iterations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736527</commentid>
    <comment_count>24</comment_count>
      <attachid>422389</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-03-05 13:54:56 -0800</bug_when>
    <thetext>Comment on attachment 422389
Patch

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

&gt; Source/WebCore/dom/EventTarget.cpp:72
&gt; +EventTarget::~EventTarget()
&gt; +{
&gt; +}
&gt; +

You can just do `EventTarget::~EventTarget() = default;` here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736530</commentid>
    <comment_count>25</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 13:57:07 -0800</bug_when>
    <thetext>Uhh I found this in Tools/TestWebKitAPI/PlatformGTK.cmake:

# FIXME: Remove when turning on hidden visibility https://bugs.webkit.org/show_bug.cgi?id=181916
list(APPEND TestJavaScriptCore_LIBRARIES WTF)

So we should try dropping that too....

(In reply to Don Olmstead from comment #24)
&gt; You can just do `EventTarget::~EventTarget() = default;` here.

Didn&apos;t know that worked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736541</commentid>
    <comment_count>26</comment_count>
    <who name="Lauro Moura">lmoura</who>
    <bug_when>2021-03-05 14:07:10 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #23)
&gt; (In reply to Michael Catanzaro from comment #21)
&gt; &gt; This adds WPE port. I didn&apos;t test that locally, so we&apos;ll see what EWS thinks.
&gt; 
&gt; Well the WPE EWS is dead currently. Anyway, there should at least be fewer
&gt; red EWS than with previous iterations.

There was an issue with the container running it. It&apos;s back online now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736560</commentid>
    <comment_count>27</comment_count>
      <attachid>422424</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 14:39:53 -0800</bug_when>
    <thetext>Created attachment 422424
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736567</commentid>
    <comment_count>28</comment_count>
      <attachid>422426</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 14:51:22 -0800</bug_when>
    <thetext>Created attachment 422426
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736590</commentid>
    <comment_count>29</comment_count>
      <attachid>422434</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 15:25:08 -0800</bug_when>
    <thetext>Created attachment 422434
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736596</commentid>
    <comment_count>30</comment_count>
      <attachid>422437</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 15:27:42 -0800</bug_when>
    <thetext>Created attachment 422437
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736605</commentid>
    <comment_count>31</comment_count>
      <attachid>422441</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 15:33:32 -0800</bug_when>
    <thetext>Created attachment 422441
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736684</commentid>
    <comment_count>32</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-05 17:25:10 -0800</bug_when>
    <thetext>Hmm, there seem to be API test regressions:

Unexpected failures (2)
    /WebKit2Gtk/TestInputMethodContext
        /webkit/WebKitInputMethodContext/surrounding
    /TestJSC
        /jsc/weak-value</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736793</commentid>
    <comment_count>33</comment_count>
      <attachid>422441</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-06 06:34:19 -0800</bug_when>
    <thetext>Comment on attachment 422441
Patch

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

&gt; Source/cmake/OptionsWPE.cmake:11
&gt; +set(CMAKE_C_VISIBILITY_PRESET hidden)
&gt; +set(CMAKE_CXX_VISIBILITY_PRESET hidden)
&gt; +set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)

Let&apos;s split the WPE changes out to bug #222860. Looks like it&apos;s going to require some more work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736795</commentid>
    <comment_count>34</comment_count>
      <attachid>422491</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-06 06:37:19 -0800</bug_when>
    <thetext>Created attachment 422491
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736807</commentid>
    <comment_count>35</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-06 09:09:01 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #32)
&gt; Hmm, there seem to be API test regressions:
&gt; 
&gt; Unexpected failures (2)
&gt;     /WebKit2Gtk/TestInputMethodContext
&gt;         /webkit/WebKitInputMethodContext/surrounding

Looks like this test is just flaky. Not our fault.

&gt;     /TestJSC
&gt;         /jsc/weak-value

Seems this one is really somehow broken by hidden visibility. Needs investigation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737069</commentid>
    <comment_count>36</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 07:34:09 -0800</bug_when>
    <thetext>This test is flaky. It usually passes for me locally, but sometimes fails. I guess the garbage collection is failing on line 3310 of TestJSC.cpp. The failure case looks like this:

(gdb) bt full
#0  0x00007f31a2a2c9d5 in raise () at /lib64/libc.so.6
#1  0x00007f31a2a158a4 in abort () at /lib64/libc.so.6
#2  0x00007f31a6723b6c in g_assertion_message_expr.cold () at /lib64/libglib-2.0.so.0
#3  0x0000000000412d8d in testJSCWeakValue() ()
    at ../../Tools/TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:3311
        checker = 
              {m_watchedObjects = {m_impl = {static smallMaxLoadNumerator = &lt;optimized out&gt;, static smallMaxLoadDenominator = &lt;optimized out&gt;, static largeMaxLoadNumerator = &lt;optimized out&gt;, static largeMaxLoadDenominator = &lt;optimized out&gt;, static maxSmallTableCapacity = &lt;optimized out&gt;, static minLoad = &lt;optimized out&gt;, static tableSizeOffset = &lt;optimized out&gt;, static tableSizeMaskOffset = &lt;optimized out&gt;, static keyCountOffset = &lt;optimized out&gt;, static deletedCountOffset = &lt;optimized out&gt;, static metadataSize = &lt;optimized out&gt;, m_table = 0x7f31a1ce94c0}}}
        context = {m_ptr = 0x22b2830}
        weak = {m_ptr = 0x22b7020}
        exceptionHandler = {m_context = 0x22b2830}
        object = {m_ptr = 0x0}
        weakValueCleared = false
        foo = {m_ptr = 0x0}
        weakFoo = {m_ptr = 0x0}
        undefinedValue = {m_ptr = 0x22b0d40}
        __PRETTY_FUNCTION__ = &quot;void testJSCWeakValue()&quot;
#4  0x00007f31a678079e in g_test_run_suite_internal () at /lib64/libglib-2.0.so.0
#5  0x00007f31a678059b in g_test_run_suite_internal () at /lib64/libglib-2.0.so.0
#6  0x00007f31a6780c4b in g_test_run_suite () at /lib64/libglib-2.0.so.0
#7  0x00007f31a6780ca5 in g_test_run () at /lib64/libglib-2.0.so.0
#8  0x0000000000404865 in main(int, char**) (argc=&lt;optimized out&gt;, argv=&lt;optimized out&gt;)
    at ../../Tools/TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:3904

I&apos;m going to check to see if I can reproduce without hidden visibility, since I can&apos;t imagine how this could have broken garbage collection.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737099</commentid>
    <comment_count>37</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 08:42:43 -0800</bug_when>
    <thetext>OK I don&apos;t know how to explain this, but the test always passes without this patch. With this patch, it&apos;s flaky. So somehow hidden visibility must have some sort of effect on garbage collection. Weird.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737238</commentid>
    <comment_count>38</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 12:56:05 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #37)
&gt; OK I don&apos;t know how to explain this, but the test always passes without this
&gt; patch. With this patch, it&apos;s flaky. So somehow hidden visibility must have
&gt; some sort of effect on garbage collection. Weird.

Well I saw this test fail four times locally this morning after running it maybe 10 times total, but now I have run it over 500 times without a single failure. This is unfortunate. One difference is that this morning I would have been running trunk from a day or two ago with this patch applied, whereas now I have since updated trunk after running &apos;webkit-patch apply-from-bug 181916&apos;.

Mark Lam had a theory on Slack as to what might be happening with this test:

&quot;&quot;&quot;
My theory is that the -fvisibility=hidden now makes it such that some functions get inlined, thereby changing the stack values, which in turn potentially keeps a pointer to a dead object on the stack (though the value is not used).  With a conservative GC, that keeps the object alive.

...

The test is making an assumption that there is no temp on the stack / in a register storing the value of weakFoo

try this: 1. move this code into a function and call it:
        weakFoo = adoptGRef(jsc_weak_value_get_value(weak.get()));
        checker.watch(weakFoo.get());
        g_assert_true(jsc_value_is_object(weakFoo.get()));
        weakFoo = nullptr;

2. call sanitizeStackForVM() after that before you do the GC.

See if that makes the test pass

Actually, move all the code that uses weakFoo into the out of line function

If this makes the test pass, then it confirms my suspicion that the test is just badly written and made assumptions about the GC that it shouldn’t have

Alternatively, you can also do this:

1. Set a breakpoint at 3305 and inspect the value of weakFoo
2. Set a breakpoint at 3310, and check if the value of weakFoo is in any registers or in any stack slots
&quot;&quot;&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737261</commentid>
    <comment_count>39</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 13:18:03 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #38)
&gt; One difference is that this morning I would
&gt; have been running trunk from a day or two ago with this patch applied,
&gt; whereas now I have since updated trunk after running &apos;webkit-patch
&gt; apply-from-bug 181916&apos;.

EWS is still consistently failing, so we&apos;ll just have to use EWS for this. :S</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737285</commentid>
    <comment_count>40</comment_count>
      <attachid>422617</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 14:04:55 -0800</bug_when>
    <thetext>Created attachment 422617
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737287</commentid>
    <comment_count>41</comment_count>
      <attachid>422617</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-03-08 14:09:49 -0800</bug_when>
    <thetext>Comment on attachment 422617
Patch

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

&gt; Tools/TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:3278
&gt; +static void useWeakFooInASeparateFunctionToForceGarbageCollection(GRefPtr&lt;JSCValue&gt;&amp;&amp; object, GRefPtr&lt;JSCValue&gt;&amp;&amp; foo, JSCWeakValue* weak, LeakChecker&amp; checker, JSCContext* context, bool&amp; weakValueCleared)

Let&apos;s add NEVER_INLINE here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737291</commentid>
    <comment_count>42</comment_count>
      <attachid>422618</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 14:15:33 -0800</bug_when>
    <thetext>Created attachment 422618
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737363</commentid>
    <comment_count>43</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-08 16:28:05 -0800</bug_when>
    <thetext>Well Mark, it seems your suggestion actually worked. Wow, thanks.

TODO: I need to rewrite the change to the test to be less ugly, and land it in a separate bug report since it doesn&apos;t belong in this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737545</commentid>
    <comment_count>44</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-09 06:29:14 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #43)
&gt; TODO: I need to rewrite the change to the test to be less ugly, and land it
&gt; in a separate bug report since it doesn&apos;t belong in this one.

Let&apos;s handle this in bug #222972.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737643</commentid>
    <comment_count>45</comment_count>
      <attachid>422723</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-09 10:15:55 -0800</bug_when>
    <thetext>Created attachment 422723
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737693</commentid>
    <comment_count>46</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-09 12:11:49 -0800</bug_when>
    <thetext>Committed r274166: &lt;https://commits.webkit.org/r274166&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 422723.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737961</commentid>
    <comment_count>47</comment_count>
    <who name="Tyler Wilcock">twilco.o</who>
    <bug_when>2021-03-09 23:03:54 -0800</bug_when>
    <thetext>Hi!

I ran a `git bisect` and found this patch broke my local debug build (release is fine).  Can anyone running the GTK port also reproduce this?

Tools/Scripts/build-webkit --gtk --debug

Building flatpak based environment
+  cmake -DPORT=&quot;GTK&quot; -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=Debug -G Ninja -DDEVELOPER_MODE=ON -DENABLE_EXPERIMENTAL_FEATURES=ON &quot;/app/webkit&quot;

...snip...

[3515/3716] Linking CXX executable bin/TestWebKitAPI/TestWebCore
FAILED: bin/TestWebKitAPI/TestWebCore 
: &amp;&amp; /usr/bin/c++ -fdiagnostics-color=always -Wextra -Wall -Wno-expansion-to-defined -Wno-noexcept-type -Wno-psabi -Wno-misleading-indentation -Wno-maybe-uninitialized -Wwrite-strings -Wundef -Wpointer-arith -Wmissing-format-attribute -Wformat-security -Wcast-align -Wno-tautological-compare  -fno-strict-aliasing -fno-exceptions -fno-rtti -gsplit-dwarf -g -fuse-ld=gold -Wl,--disable-new-dtags -Wl,--gdb-index Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/TestsController.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/WTFStringUtilities.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/AffineTransform.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/CSSParser.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/CalculationValue.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/ColorTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/ComplexTextController.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/ContextMenuAction.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/FileMonitor.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/FloatPointTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/FloatRectTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/FloatSizeTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/GridPosition.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/HTMLParserIdioms.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/HTTPParsers.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/IntPointTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/IntRectTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/IntSizeTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/KeyedCoding.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/LayoutUnitTests.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/MIMETypeRegistry.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/ParsedContentRange.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/PublicSuffix.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/SecurityOrigin.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/SharedBuffer.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/SharedBufferTest.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/TimeRanges.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/TransformationMatrix.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/URLParserTextEncoding.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/gtk/main.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/UserAgentQuirks.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/gstreamer/GStreamerTest.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/Tests/WebCore/gstreamer/GstMappedBuffer.cpp.o Tools/TestWebKitAPI/CMakeFiles/TestWebCore.dir/glib/UtilitiesGLib.cpp.o -o bin/TestWebKitAPI/TestWebCore  -Wl,-rpath,/app/webkit/WebKitBuild/Debug/lib  lib/libgtest.so  lib/libWebCoreGTK.a  lib/libPAL.a  /usr/lib/x86_64-linux-gnu/libgtk-3.so  /usr/lib/x86_64-linux-gnu/libgdk-3.so  /usr/lib/x86_64-linux-gnu/libz.so  /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so  /usr/lib/x86_64-linux-gnu/libpango-1.0.so  /usr/lib/x86_64-linux-gnu/libharfbuzz.so  /usr/lib/x86_64-linux-gnu/libcairo-gobject.so  /usr/lib/x86_64-linux-gnu/libcairo.so  /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so  lib/libjavascriptcoregtk-4.0.so.18.19.0  /usr/lib/x86_64-linux-gnu/libicudata.so  /usr/lib/x86_64-linux-gnu/libicui18n.so  /usr/lib/x86_64-linux-gnu/libicuuc.so  -lpthread  /usr/lib/x86_64-linux-gnu/libsystemd.so  /usr/lib/x86_64-linux-gnu/libxml2.so  /usr/lib/x86_64-linux-gnu/libsqlite3.so  /usr/lib/x86_64-linux-gnu/libxslt.so  lib/libANGLE.a  -ldl  /usr/lib/x86_64-linux-gnu/libGL.so  /usr/lib/x86_64-linux-gnu/libEGL.so  /usr/lib/x86_64-linux-gnu/libwoff2dec.so  lib/libxdgmime.a  lib/libwebrtc.a  /usr/lib/x86_64-linux-gnu/libvpx.so  /usr/lib/x86_64-linux-gnu/libevent.so  /usr/lib/x86_64-linux-gnu/libopus.so  /usr/lib/x86_64-linux-gnu/libcairo.so  /usr/lib/x86_64-linux-gnu/libfontconfig.so  /usr/lib/x86_64-linux-gnu/libfreetype.so  /usr/lib/x86_64-linux-gnu/libharfbuzz.so  /usr/lib/x86_64-linux-gnu/libharfbuzz-icu.so  /usr/lib/x86_64-linux-gnu/libgcrypt.so  /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so  /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so  /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so  /usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so  /usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so  /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so  /usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so  /usr/lib/x86_64-linux-gnu/libgstgl-1.0.so  /usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so  /usr/lib/x86_64-linux-gnu/libgstfft-1.0.so  /usr/lib/x86_64-linux-gnu/libgcrypt.so  /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so  /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so  /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so  /usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so  /usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so  /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so  /usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so  /usr/lib/x86_64-linux-gnu/libgstgl-1.0.so  /usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so  /usr/lib/x86_64-linux-gnu/libgstfft-1.0.so  -lgpg-error  /usr/lib/x86_64-linux-gnu/libjpeg.so  /usr/lib/x86_64-linux-gnu/libpng.so  /usr/lib/x86_64-linux-gnu/libz.so  /usr/lib/x86_64-linux-gnu/libopenjp2.so  /usr/lib/x86_64-linux-gnu/libwebpdemux.so  /usr/lib/x86_64-linux-gnu/libwebp.so  /usr/lib/x86_64-linux-gnu/libsoup-2.4.so  /usr/lib/x86_64-linux-gnu/libatk-1.0.so  /usr/lib/x86_64-linux-gnu/libenchant-2.so  /usr/lib/x86_64-linux-gnu/libgio-2.0.so  /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so  /usr/lib/x86_64-linux-gnu/libgobject-2.0.so  /usr/lib/x86_64-linux-gnu/libglib-2.0.so  -lsecret-1  -lgio-2.0  -lgobject-2.0  -lglib-2.0  /usr/lib/x86_64-linux-gnu/libtasn1.so  /usr/lib/x86_64-linux-gnu/libhyphen.so  /usr/lib/x86_64-linux-gnu/libX11.so  /usr/lib/x86_64-linux-gnu/libXcomposite.so  /usr/lib/x86_64-linux-gnu/libXdamage.so  /usr/lib/x86_64-linux-gnu/libXrender.so  /usr/lib/x86_64-linux-gnu/libXt.so  /usr/lib/x86_64-linux-gnu/libwpe-1.0.so  -lwayland-server  -lwayland-egl  -lwayland-client  /usr/lib/x86_64-linux-gnu/libmanette-0.2.so &amp;&amp; :
../../Source/WebCore/platform/glib/SharedBufferGlib.cpp:60: error: undefined reference to &apos;WTF::FileSystemImpl::filenameForDisplay(WTF::String const&amp;)&apos;
DerivedSources/ForwardingHeaders/JavaScriptCore/IsoHeapCellType.h:33: error: undefined reference to &apos;vtable for JSC::IsoHeapCellType&apos;
/usr/lib/gcc/x86_64-unknown-linux-gnu/10.2.0/../../../../x86_64-unknown-linux-gnu/bin/ld.gold: the vtable symbol may be undefined because the class is missing its key function
collect2: error: ld returned 1 exit status
[3516/3716] Building CXX object Source/WebKit/CMakeFiles/WebKit.dir/WebProcess/WebPage/WebPage.cpp.o
ninja: build stopped: subcommand failed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738001</commentid>
    <comment_count>48</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2021-03-10 03:49:01 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 223024</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738012</commentid>
    <comment_count>49</comment_count>
    <who name="Diego Pino">dpino</who>
    <bug_when>2021-03-10 04:10:24 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #47)
&gt; Hi!
&gt; 
&gt; I ran a `git bisect` and found this patch broke my local debug build
&gt; (release is fine).  Can anyone running the GTK port also reproduce this?
&gt; 

That&apos;s correct. GTK-Debug build bot started failing compilation in the range r274162-r274169 (https://build.webkit.org/#/builders/43). I bisected the range and found the regression started happening in r274166 (this patch).

If the issue cannot be fixed soon, we may need to revert the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738040</commentid>
    <comment_count>50</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-10 06:30:57 -0800</bug_when>
    <thetext>You need an EWS for it. :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738073</commentid>
    <comment_count>51</comment_count>
      <attachid>422836</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-10 08:39:23 -0800</bug_when>
    <thetext>Created attachment 422836
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738083</commentid>
    <comment_count>52</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-10 09:26:11 -0800</bug_when>
    <thetext>Committed r274216: &lt;https://commits.webkit.org/r274216&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 422836.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1739388</commentid>
    <comment_count>53</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-03-15 05:50:53 -0700</bug_when>
    <thetext>I think this broke the build with ENABLE_TREE_DEBUGGING, but I don&apos;t understand why. I&apos;m getting these linking errors:

lib/libWebCoreTestSupport.a(lib/../Source/WebCore/CMakeFiles/WebCoreTestSupport.dir/testing/Internals.cpp.o):Internals.cpp:vtable for WebCore::InlineBox: error: referencia sin definir al «WebCore::InlineBox::outputLineTreeAndMark(WTF::TextStream&amp;, WebCore::InlineBox const*, int) const»
lib/libWebCoreTestSupport.a(lib/../Source/WebCore/CMakeFiles/WebCoreTestSupport.dir/testing/Internals.cpp.o):Internals.cpp:vtable for WebCore::InlineBox: error: referencia sin definir al «WebCore::InlineBox::outputLineBox(WTF::TextStream&amp;, bool, int) const»
lib/libWebCoreTestSupport.a(lib/../Source/WebCore/CMakeFiles/WebCoreTestSupport.dir/testing/Internals.cpp.o):Internals.cpp:vtable for WebCore::InlineBox: error: referencia sin definir al «WebCore::InlineBox::boxName() const»
collect2: error: ld returned 1 exit status

They are fixed by marking them as exported in InlineBox.h, but I don&apos;t see where they are used from Internals.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1739404</commentid>
    <comment_count>54</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-03-15 06:04:59 -0700</bug_when>
    <thetext>Just export them and move on. They must be used from somewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785695</commentid>
    <comment_count>55</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2021-08-19 22:23:15 -0700</bug_when>
    <thetext>(In reply to EWS from comment #52)
&gt; Committed r274216: &lt;https://commits.webkit.org/r274216&gt;
&gt; 
&gt; All reviewed patches have been landed. Closing bug and clearing flags on
&gt; attachment 422836 [details].

This has caused a major regression on GTK, all the javascript-core-tests are crashing due too much memory usage, see bug 229321</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785956</commentid>
    <comment_count>56</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2021-08-20 13:08:30 -0700</bug_when>
    <thetext>Reopening bug because the original commit was reverted on r281333</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1786055</commentid>
    <comment_count>57</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-08-20 17:22:10 -0700</bug_when>
    <thetext>We need help from JSC experts to investigate this.

And if we can&apos;t fix it, then we should remove the split libjavascriptcoregtk.so from the GTK 4 API. This split has very little benefit and is causing too many problems. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1799467</commentid>
    <comment_count>58</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2021-10-01 12:32:52 -0700</bug_when>
    <thetext>It seems enabling -fvisibility=hidden and -fvisibility-hidden-inlines it is an overall 20% performance improvement on the DOM related tests.

You can see here this graphs:

https://perf.webkit.org/v3/#/dashboard/DOM?numberOfDays=90
https://perf.webkit.org/v3/#/charts?since=1608728479871&amp;paneList=((16-6-null-null-(5-2.5-500)

There is a performance improvement on the DOM perf tests when r274166 landed and a performance regression when r281333 landed (the revert of r274166)


To be double sure I built r281332 and r281333 and benchmarked the DOM tests:

https://people.igalia.com/clopez/wkbug/181916/PerformanceTestsResults.html

As you can see, r281333 (which reverts r274166) causes a noticeable performance regressions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1799496</commentid>
    <comment_count>59</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-01 13:22:43 -0700</bug_when>
    <thetext>Wow.

BTW, for best results, I think it&apos;s time for the performance bot to start building with -flto=auto. That could affect things considerably.

(In reply to Carlos Alberto Lopez Perez from comment #58)
&gt; It seems enabling -fvisibility=hidden and -fvisibility-hidden-inlines it is
&gt; an overall 20% performance improvement on the DOM related tests.

Would also be interesting to know the impact of getting rid of the split libjsc.so....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1799518</commentid>
    <comment_count>60</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2021-10-01 13:48:15 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #59)
&gt; BTW, for best results, I think it&apos;s time for the performance bot to start
&gt; building with -flto=auto. That could affect things considerably.

The performance bot runs the builds from the default release build bot (it doesn&apos;t build webkit directly, it just reuses the built-products from the release bot).

I think that enabling LTO by default (in CMake release build) can be a very good idea since that will benefit all users. What do you think? Any reason to not enable it by default? I can try to get some perf numbers comparing both builds in other bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1799553</commentid>
    <comment_count>61</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-01 14:30:28 -0700</bug_when>
    <thetext>(In reply to Carlos Alberto Lopez Perez from comment #60)
&gt; I think that enabling LTO by default (in CMake release build) can be a very
&gt; good idea since that will benefit all users. What do you think? Any reason
&gt; to not enable it by default? I can try to get some perf numbers comparing
&gt; both builds in other bug.

OK, tangent time!

LTO makes builds take twice as long: effectively, everything gets compiled again during the linking stage, or something like that, more or less. So we do not want LTO when DEVELOPER_MODE is enabled. I think it&apos;s OK to enable if build type is Release or RelWithDebInfo and DEVELOPER_MODE is not enabled.

I understand there are some problems with reproducible builds: https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/issues/1298#note_663774619. But I don&apos;t know more about that.

Also there is bug #229867 that I do not know how to fix.

That said, I don&apos;t think we necessarily need to do it at the CMake level. I would treat it the same as hardening flags, where we don&apos;t do any hardening by default because CMake just doesn&apos;t, but all distros know it&apos;s required to distribute secure packages and handle it at that level. Each distro is going to make a choice on whether to use LTO for all packages or not, whereas -fvisibility=hidden is the responsibility of individual packages and obviously cannot be set at the distro level. Similarly, the other flags we use are either (a) warning flags, or (b) flags required to the C++ language behavior we want: -fno-strict-aliasing, -fno-exceptions, -fno-rtti. LTO doesn&apos;t fit in line with these. So I think my vote would be &quot;don&apos;t do it, let distros decide,&quot; or to do it at the build-webkit level instead of the CMake level, but that is a lightly-held opinion, definitely not a strong one. If it gets anywhere near LTO&apos;s performance benefit, then we should forget about build flag purity and just do it in CMake for those sweet performance wins. :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800444</commentid>
    <comment_count>62</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-05 01:48:52 -0700</bug_when>
    <thetext>So, for some reason when using the hidden visibility a lot more memory is used, for example just running jsc it uses around 2MB of memory when not using hidden visibility and 122MB when using it. I&apos;m not sure if it&apos;s actually because of the symbol visibilkity or because we build WTF and bmalloc with OBJECT library type, which I don&apos;t even know what it is. It doesn&apos;t happen when building with hidden visibility and system malloc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800493</commentid>
    <comment_count>63</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-05 03:01:51 -0700</bug_when>
    <thetext>I can confirm the problem is not the symbols visibility but the OBJECT library type, using static libs fixes the memory usage issue. I don&apos;t know why, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800523</commentid>
    <comment_count>64</comment_count>
      <attachid>440201</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-05 04:53:15 -0700</bug_when>
    <thetext>Created attachment 440201
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800535</commentid>
    <comment_count>65</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-05 06:40:15 -0700</bug_when>
    <thetext>API test failure should be fixed by bug #222972</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800545</commentid>
    <comment_count>66</comment_count>
      <attachid>440201</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 07:16:13 -0700</bug_when>
    <thetext>Comment on attachment 440201
Patch

I&apos;d like Don to look at this.

OBJECT libraries are basically static libraries linked with --whole-archive: https://gitlab.kitware.com/cmake/community/-/wikis/doc/tutorials/Object-Library. So any symbols not needed directly by JSC ought to be discarded if using STATIC rather than OBJECT library type. The point of using OBJECT is to ensure that WTF and bmalloc symbols needed by WebCore and WebKit are not discarded, causing linking to fail. But obviously that is not happening after all. I&apos;m not sure how to explain that. I guess they are getting an entirely separate copy of the WTF/bmalloc libraries? If so, that reminds me of bug #181438 (a consequence of my previous misguided attempt to fix bug #179914).

This all would be much simpler if we didn&apos;t have the separate shared libjsc.so. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800569</commentid>
    <comment_count>67</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 08:39:30 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #66)
&gt; This all would be much simpler if we didn&apos;t have the separate shared
&gt; libjsc.so. ;)

I think we should drop it from the GTK 4 API, and require that applications use the JSCOnly port if they only want JSC. That&apos;s what the JSCOnly port exists for, after all! Without split libjsc.so, we no longer have to worry about these weird linking issues that are so difficult to investigate and resolve. We&apos;d also no longer be required to export internal JSC/WTF APIs in libjsc.so.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800572</commentid>
    <comment_count>68</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 08:47:35 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #66)
&gt; OBJECT libraries are basically static libraries linked with --whole-archive:
&gt; https://gitlab.kitware.com/cmake/community/-/wikis/doc/tutorials/Object-
&gt; Library.

Well, I was just wrong. The very top of the wiki page says:

&quot;CMake generates rules to compile the source files into object files but
does not link archive or link them into a library file. Instead the
object files may be included in other targets created by add_library
or add_executable by listing the object library as a source with
special syntax $&lt;TARGET_OBJECTS:objlib&gt;, where &quot;objlib&quot; is
the object library name.&quot;

So... that&apos;s clear enough. Using OBJECT causes us to get two separate copies of WTF and bmalloc. And that&apos;s a disaster, it&apos;s bug #181438 all over again, so we don&apos;t want that.

The only reason to use OBJECT was to avoid link failures caused by lack of --whole-archive. But your patch here successfully links without it, so we might as well not worry about it.

I do still want to wait for Don to comment before landing, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800575</commentid>
    <comment_count>69</comment_count>
      <attachid>440201</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 08:49:21 -0700</bug_when>
    <thetext>Comment on attachment 440201
Patch

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

&gt; ChangeLog:8
&gt; +        Set symbol visibility to hidden, but keep using staic library type for bmalloc and WTF.

static</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800602</commentid>
    <comment_count>70</comment_count>
      <attachid>440201</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 09:50:06 -0700</bug_when>
    <thetext>Comment on attachment 440201
Patch

Actually I&apos;m removing my r+ because I think this might break the check-for-invalid-symbols-in-version-script safety check that you added in bug #179914. If -fvisibility=hidden is used, then symbols that don&apos;t use BEXPORT or WTF_EXPORT_PRIVATE could wind up duplicated, right? That would reintroduce bug #179914?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800614</commentid>
    <comment_count>71</comment_count>
      <attachid>440201</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-10-05 10:03:47 -0700</bug_when>
    <thetext>Comment on attachment 440201
Patch

OBJECT libraries is the CMake way of doing --whole-archive. The _FRAMEWORKS macro relies on OBJECT libraries to properly set the libraries.

Why isn&apos;t OBJECT being used here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800629</commentid>
    <comment_count>72</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 10:28:51 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #68)
&gt; Using OBJECT causes us to get two separate copies
&gt; of WTF and bmalloc. And that&apos;s a disaster, it&apos;s bug #181438 all over again,
&gt; so we don&apos;t want that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800633</commentid>
    <comment_count>73</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-05 10:37:33 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #72)
&gt; (In reply to Michael Catanzaro from comment #68)
&gt; &gt; Using OBJECT causes us to get two separate copies
&gt; &gt; of WTF and bmalloc. And that&apos;s a disaster, it&apos;s bug #181438 all over again,
&gt; &gt; so we don&apos;t want that.

Don is telling me that I have this backwards, but I don&apos;t really understand why. Linking is hard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800648</commentid>
    <comment_count>74</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-10-05 11:02:28 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #73)
&gt; (In reply to Michael Catanzaro from comment #72)
&gt; &gt; (In reply to Michael Catanzaro from comment #68)
&gt; &gt; &gt; Using OBJECT causes us to get two separate copies
&gt; &gt; &gt; of WTF and bmalloc. And that&apos;s a disaster, it&apos;s bug #181438 all over again,
&gt; &gt; &gt; so we don&apos;t want that.
&gt; 
&gt; Don is telling me that I have this backwards, but I don&apos;t really understand
&gt; why. Linking is hard.

This whole thing is hard to explain because each port has its own configuration of what is SHARED so regrettably there&apos;s magic involved to get things working properly.

The best way to think about it is who is presenting as the library. In this case JavaScriptCore is SHARED and bmalloc and WTF are not. We are packaging bmalloc and WTF into JavaScriptCore and so when WebKit wants to link WTF it needs to be pointed at JavaScriptCore rather than WTF (this prevents the multiple copies bug that mcatanzaro mentions).

The mechanics of the above is done through CMake macros and the setting of _FRAMEWORKS. I can go deeper on what exactly it does to compute it if that&apos;s warranted. Its possible there are bugs here so I&apos;m happy to assist but I&apos;m pretty adamant that this is the way forward to make hidden visibility work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800987</commentid>
    <comment_count>75</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-06 01:00:03 -0700</bug_when>
    <thetext>(In reply to Don Olmstead from comment #71)
&gt; Comment on attachment 440201 [details]
&gt; Patch
&gt; 
&gt; OBJECT libraries is the CMake way of doing --whole-archive. The _FRAMEWORKS
&gt; macro relies on OBJECT libraries to properly set the libraries.
&gt; 
&gt; Why isn&apos;t OBJECT being used here?

Because for some reason it causes jsc to use a lot more memory, making all jsc tests to crash. I don&apos;t know what OBJECT exactly does, nor how CMake works, but hidden visibility seems to work with static libraries, and it seems to have an important impact in performance. So, what&apos;s the problem of enabling hidden visibility with static libs? I&apos;m fine with moving to OBJECT thing in a follow up if the memory issue is fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801010</commentid>
    <comment_count>76</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-10-06 03:03:02 -0700</bug_when>
    <thetext>Commented on slack. Using OBJECT library + hidden visibility is probably breaking bmalloc’s static variable uniqueness. As a result, thread local key and bmalloc::Cache is not appropriately instantiated and we are always taking a slow path. This basically means core of bmalloc is messed up and we are leaking all allocations. That’s why we are seeing memory growth: leaking allocations.
I have no idea how to fix it. But look like not using object library will fix the issue. So probably that’s the best approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801025</commentid>
    <comment_count>77</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 05:27:50 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #70)
&gt; Actually I&apos;m removing my r+ because I think this might break the
&gt; check-for-invalid-symbols-in-version-script safety check that you added in
&gt; bug #179914.

Sorry, I copy/pasted the wrong script name. I meant check-for-global-bss-symbols-in-webkigtk-libs. The point of that script is to ensure that we don&apos;t break the uniqueness of bmalloc&apos;s static global template variables (bug #179914). It&apos;s an important safety check, but it only works if we do not use -fvisibility=hidden. The script relies on being able to detect identical symbols that are public in libjsc.so but private in libwk.so, but when using -fvisibility=hidden they&apos;re all going to be private.

I actually predicted this problem in comment #10, but then in comment #16 I perhaps-incorrectly convinced myself it would not be a problem after all:

(In reply to Michael Catanzaro from comment #16)
&gt; No, I&apos;m wrong. It won&apos;t break anything because symbols that are needed in
&gt; both libraries would have to be manually exported, otherwise the build would
&gt; immediately, since they won&apos;t be visible anymore.

That&apos;s true when linking static libs (.a), but I suspect it is not true when linking object files (.o).

(In reply to Yusuke Suzuki from comment #76)
&gt; Commented on slack. Using OBJECT library + hidden visibility is probably
&gt; breaking bmalloc’s static variable uniqueness.

I doubt it&apos;s breaking *all* static variables, though, because if so it ought to crash immediately (bug #181438), right? Guess: perhaps only static/global templates are broken (bug #179914 redoux). That should *also* crash immediately in production builds, but next guess: we don&apos;t notice because our bots use build-webkit, which does DEVELOPER_MODE builds, those do not use the linker version script, sidestepping the problem. (Admittedly, I&apos;m doing a *lot* of guessing there.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801026</commentid>
    <comment_count>78</comment_count>
      <attachid>440201</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 05:37:27 -0700</bug_when>
    <thetext>Comment on attachment 440201
Patch

This patch is missing the change from Tools/TestWebKitAPI/PlatformGTK.cmake:

-# FIXME: Remove when turning on hidden visibility https://bugs.webkit.org/show_bug.cgi?id=181916
-list(APPEND TestJavaScriptCore_LIBRARIES WTF)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801027</commentid>
    <comment_count>79</comment_count>
      <attachid>440201</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 05:38:43 -0700</bug_when>
    <thetext>Comment on attachment 440201
Patch

It&apos;s also missing the same change from Source/WebCore/PlatformGTK.cmake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801044</commentid>
    <comment_count>80</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-06 07:02:57 -0700</bug_when>
    <thetext>I think those changes were required because of the use of OBJECT library type, not the symbols visibility.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801045</commentid>
    <comment_count>81</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 07:05:07 -0700</bug_when>
    <thetext>Right, but we have to at least remove the FIXMEs so they don&apos;t become stale.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801046</commentid>
    <comment_count>82</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-06 07:10:22 -0700</bug_when>
    <thetext>Or reword them, pointing to a new bug about using object library type if we really want to eventually switch to use it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801050</commentid>
    <comment_count>83</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 07:20:37 -0700</bug_when>
    <thetext>The sole purpose of using OBJECT is to facilitate use of -fvisibility=hidden, so if we manage to land this using STATIC instead of OBJECT, I don&apos;t think we would.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801060</commentid>
    <comment_count>84</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-06 07:33:49 -0700</bug_when>
    <thetext>And the only problem of using static libs is the duplicated symbols in libjsc and libwk, right? So, we should check first if that&apos;s still a problem for production builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801099</commentid>
    <comment_count>85</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 08:42:44 -0700</bug_when>
    <thetext>If we use:

 * static libs
 * -fvisibility=hidden
 * No -Wl,--whole-archive

as your patch does, then the only way for linking to succeed is if we have duplicate symbols. When libbmalloc and libwtf are linked into libjsc, all symbols not needed by libjsc will be discarded or hidden (because we don&apos;t use -Wl,--whole-archive anymore, and your patch does not add it). So without duplication of libbmalloc and libwtf, linking libwebkit would fail because libwebcore and libwebkit need symbols from libbmalloc and libwtf that should have been discarded.

However, I must be incorrect about something. If the above were really true, then we should also see the return of bug #181438. Yet we do not see that.

Also, adding -fvisibility=hidden alone should not be enough to cause duplication where there was none before, except for global templates, like PerProcess&lt;Foo&gt; or PerThread&lt;Foo&gt;. Those I would expect to become duplicated because the mechanism for deduplicating them across shared libs relies on the symbols being exported. But I think everything else would also need to be duplicated to allow linking to succeed. If we were not seeing that before, why does linking succeed now, with no changes to the linking strategy? I do not understand.

One more thing I do not understand: Yusuke has discovered that my patch causes PerThread&lt;T&gt;::getFastCase to *always* return nullptr, and I have just confirmed this. This makes no sense. If it was duplicated across two shared libs, then I would expect we have two PerThread&lt;T&gt;s per thread, but instead we seem to be getting one per call to PerThread&lt;T&gt;::get. I don&apos;t know why.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801105</commentid>
    <comment_count>86</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 08:47:25 -0700</bug_when>
    <thetext>&gt; When libbmalloc and libwtf are linked into libjsc, all symbols not needed by libjsc will be discarded or hidden (because we don&apos;t use -Wl,--whole-archive anymore, and your patch does not add it). So without duplication of libbmalloc and libwtf, linking libwebkit would fail because libwebcore and libwebkit need symbols from libbmalloc and libwtf that should have been discarded.

(Note this is not a problem without -fvisibility=hidden, because everything is exported by default and cannot be discarded.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801330</commentid>
    <comment_count>87</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-06 13:57:02 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #76)
&gt; Commented on slack. Using OBJECT library + hidden visibility is probably
&gt; breaking bmalloc’s static variable uniqueness. As a result, thread local key
&gt; and bmalloc::Cache is not appropriately instantiated and we are always
&gt; taking a slow path.

We have a long thread on Slack where I added a bunch of printfs to PerThread.h to see what it was doing. It actually seems to be working properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801531</commentid>
    <comment_count>88</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-07 00:38:27 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #87)
&gt; (In reply to Yusuke Suzuki from comment #76)
&gt; &gt; Commented on slack. Using OBJECT library + hidden visibility is probably
&gt; &gt; breaking bmalloc’s static variable uniqueness. As a result, thread local key
&gt; &gt; and bmalloc::Cache is not appropriately instantiated and we are always
&gt; &gt; taking a slow path.
&gt; 
&gt; We have a long thread on Slack where I added a bunch of printfs to
&gt; PerThread.h to see what it was doing. It actually seems to be working
&gt; properly.

What are you using to test it? MiniBrowser? Could you try with the jsc shell? or running jsc tests? I suspect the problem might be the specific to jsc binary (or other binaries that depend on libjsc.so and WTF/bmalloc).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801532</commentid>
    <comment_count>89</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-07 00:39:38 -0700</bug_when>
    <thetext>Note that when this landed, the layout and unit tests ran just fine, only jsc tests started to crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801549</commentid>
    <comment_count>90</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-07 01:52:05 -0700</bug_when>
    <thetext>I&apos;ve found the problem. There&apos;s another FIXME pointing to this bug in Source/JavaScriptCore/shell/PlatformGTK.cmake that was not addressed in the original commit. That was causing jsc to be linked twice with WTF and bmalloc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801550</commentid>
    <comment_count>91</comment_count>
      <attachid>440489</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-07 01:57:37 -0700</bug_when>
    <thetext>Created attachment 440489
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801562</commentid>
    <comment_count>92</comment_count>
      <attachid>440493</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-07 04:21:00 -0700</bug_when>
    <thetext>Created attachment 440493
Patch

Just remove the &quot;no new tests&quot; from the changelog to fix the style</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801579</commentid>
    <comment_count>93</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-07 06:35:28 -0700</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #88)
&gt; What are you using to test it? MiniBrowser? Could you try with the jsc
&gt; shell? or running jsc tests? I suspect the problem might be the specific to
&gt; jsc binary (or other binaries that depend on libjsc.so and WTF/bmalloc).

Wow, good guess. Nice find.

Ideally we would find a way to assert that we only have a single copy of JSC. But I do not know how to do this. :/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801580</commentid>
    <comment_count>94</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-10-07 06:37:46 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #77)
&gt; Sorry, I copy/pasted the wrong script name. I meant
&gt; check-for-global-bss-symbols-in-webkigtk-libs. The point of that script is
&gt; to ensure that we don&apos;t break the uniqueness of bmalloc&apos;s static global
&gt; template variables (bug #179914). It&apos;s an important safety check, but it
&gt; only works if we do not use -fvisibility=hidden. The script relies on being
&gt; able to detect identical symbols that are public in libjsc.so but private in
&gt; libwk.so, but when using -fvisibility=hidden they&apos;re all going to be private.
&gt; 
&gt; I actually predicted this problem in comment #10, but then in comment #16 I
&gt; perhaps-incorrectly convinced myself it would not be a problem after all:
&gt; 
&gt; (In reply to Michael Catanzaro from comment #16)
&gt; &gt; No, I&apos;m wrong. It won&apos;t break anything because symbols that are needed in
&gt; &gt; both libraries would have to be manually exported, otherwise the build would
&gt; &gt; immediately, since they won&apos;t be visible anymore.
&gt; 
&gt; That&apos;s true when linking static libs (.a), but I suspect it is not true when
&gt; linking object files (.o).

I wonder about this. I suspect non-exported symbols of WTF and bmalloc might now be available to JavaScriptCore. Not sure. Anyway, they will surely NOT be visible to WebKit or WebCore, and that is what matters for the purposes of check-for-global-bss-symbols-in-webkitgtk-libs. So I think we are fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801581</commentid>
    <comment_count>95</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-10-07 06:41:15 -0700</bug_when>
    <thetext>Committed r283707 (242633@main): &lt;https://commits.webkit.org/242633@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817694</commentid>
    <comment_count>96</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2021-11-24 13:15:39 -0800</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #95)
&gt; Committed r283707 (242633@main): &lt;https://commits.webkit.org/242633@main&gt;

I have discovered an unfortunate side effect of this patch.

backtrace() is not longer able to resolver pointer address to function names. So when you have a call to WTFCrash() or to WTFReportBacktrace() the backtrace it reports on stderr only contains address instead of function names, so the backtrace is pretty much useless :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1868978</commentid>
    <comment_count>97</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2022-05-14 04:51:59 -0700</bug_when>
    <thetext>(In reply to Carlos Alberto Lopez Perez from comment #96)
&gt; (In reply to Carlos Garcia Campos from comment #95)
&gt; &gt; Committed r283707 (242633@main): &lt;https://commits.webkit.org/242633@main&gt;
&gt; 
&gt; I have discovered an unfortunate side effect of this patch.
&gt; 
&gt; backtrace() is not longer able to resolver pointer address to function
&gt; names. So when you have a call to WTFCrash() or to WTFReportBacktrace() the
&gt; backtrace it reports on stderr only contains address instead of function
&gt; names, so the backtrace is pretty much useless :(

Even with hidden visibility it is possible to get symbols in backtraces,
but it&apos;s indeed trickier and needs something that can actually parse ELF
symbol tables from the loaded files instead of relying on information
provided by the dynamic linker.

I took a quick look at https://github.com/ianlancetaylor/libbacktrace and
it indeed can generate meaningful backtraces when building with “-g”. To
save some space in the generated binaries, an option could be to use “-g1”
(or even “-gline-tables-only”) in combination with “-gz” to compress the
tables -- although in this case we still lose symbol names, but at least
source file names and line numbers are present in the backtraces.

I tried finding if there might be some way of keeping only symbol names
and/or source+line info when using “strip” but didn&apos;t manage so far.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>331882</attachid>
            <date>2018-01-21 14:24:07 -0800</date>
            <delta_ts>2020-12-11 12:40:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20180121162406.patch</filename>
            <type>text/plain</type>
            <size>5276</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3Mjc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
MThiOGYxZjNjOTFmNDIyMGU3OGI4Mjg0N2JhMTgyZTMxM2Q1MDBmLi4wZjY3NGU2ZjdhYTEwZmUy
ZWM1M2JlNDYwNDhlZjQ4NmY0ZjM3NTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxOC0wMS0yMSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGln
YWxpYS5jb20+CisKKyAgICAgICAgW0NNYWtlXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVu
IGFuZCAtZnZpc2liaWxpdHktaGlkZGVuLWlubGluZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL3JlbW90ZS9nbGliL1JlbW90ZUlu
c3BlY3RvclNlcnZlci5oOgorICAgICAgICAqIGluc3BlY3Rvci9yZW1vdGUvZ2xpYi9SZW1vdGVJ
bnNwZWN0b3JVdGlscy5oOgorCiAyMDE4LTAxLTIwICBDYWlvIExpbWEgIDx0aWNhaW9saW1hQGdt
YWlsLmNvbT4KIAogICAgICAgICBbSlNDXSBOdW1iZXJQcm90b3R5cGU6OmV4dHJhY3RSYWRpeEZy
b21BcmdzIGluY29ycmVjdGx5IGNhc3QgZG91YmxlIHRvIGludDMyX3QKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggZDIzYTBjNzA5
MGE2NTkxNDc1ZWYzZWM2MmEzMzhjZTMxNzBkZjY5Ni4uYjE1MDY1MWQ3NzE3NmUzMTY4ZDEzODJm
MTVlNDI1ZDczNzIxOWJhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOC0wMS0yMSAgTWljaGFl
bCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0NNYWtlXSBS
ZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuIGFuZCAtZnZpc2liaWxpdHktaGlkZGVuLWlubGlu
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkx
NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3Rm
L1BsYXRmb3JtLmg6CisKIDIwMTgtMDEtMTkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBGaXgganNjLW9ubHkgYnVpbGQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL2dsaWIvUmVtb3RlSW5zcGVj
dG9yU2VydmVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90ZS9nbGli
L1JlbW90ZUluc3BlY3RvclNlcnZlci5oCmluZGV4IDZkODg0ODI3OWZmZmU5MGUxYWFhMWNlN2Fi
ZTJjOGNlM2ZmYjRkMmIuLjAwOTdkNWM3OWRmMjI3NTU3MGZlMGNhOWYwNDg2YmFiMTVhMDc4YTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL2dsaWIv
UmVtb3RlSW5zcGVjdG9yU2VydmVyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9yZW1vdGUvZ2xpYi9SZW1vdGVJbnNwZWN0b3JTZXJ2ZXIuaApAQCAtNDMsMTAgKzQzLDEw
IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3IgewogCiBjbGFzcyBSZW1vdGVJbnNwZWN0b3JTZXJ2ZXIg
ewogcHVibGljOgotICAgIHN0YXRpYyBSZW1vdGVJbnNwZWN0b3JTZXJ2ZXImIHNpbmdsZXRvbigp
OworICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBSZW1vdGVJbnNwZWN0b3JTZXJ2ZXImIHNp
bmdsZXRvbigpOwogICAgIH5SZW1vdGVJbnNwZWN0b3JTZXJ2ZXIoKTsKIAotICAgIGJvb2wgc3Rh
cnQoY29uc3QgY2hhciogYWRkcmVzcywgdW5zaWduZWQgcG9ydCk7CisgICAgSlNfRVhQT1JUX1BS
SVZBVEUgYm9vbCBzdGFydChjb25zdCBjaGFyKiBhZGRyZXNzLCB1bnNpZ25lZCBwb3J0KTsKICAg
ICBib29sIGlzUnVubmluZygpIGNvbnN0IHsgcmV0dXJuICEhbV9kYnVzU2VydmVyOyB9CiAKIHBy
aXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90
ZS9nbGliL1JlbW90ZUluc3BlY3RvclV0aWxzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL3JlbW90ZS9nbGliL1JlbW90ZUluc3BlY3RvclV0aWxzLmgKaW5kZXggNmY5NWFiNWM1
MmE1ODEwZWZmMzIwMTNiYTFmNGVhMjNlYmQ1MWVjNy4uZWE0MzMwN2FiZGQ5MzAwNmJiODc0ZjIz
ZDJhOTI0ZmRkZDhkMTJiNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9yZW1vdGUvZ2xpYi9SZW1vdGVJbnNwZWN0b3JVdGlscy5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL2dsaWIvUmVtb3RlSW5zcGVjdG9yVXRpbHMuaApA
QCAtMzUsNyArMzUsNyBAQCB0eXBlZGVmIHN0cnVjdCBfR0J5dGVzIEdCeXRlczsKIG5hbWVzcGFj
ZSBJbnNwZWN0b3IgewogCiBHUmVmUHRyPEdCeXRlcz4gYmFja2VuZENvbW1hbmRzKCk7Ci1jb25z
dCBDU3RyaW5nJiBiYWNrZW5kQ29tbWFuZHNIYXNoKCk7CitKU19FWFBPUlRfUFJJVkFURSBjb25z
dCBDU3RyaW5nJiBiYWNrZW5kQ29tbWFuZHNIYXNoKCk7CiAKIH0gLy8gbmFtZXNwYWNlIEluc3Bl
Y3RvcgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oIGIvU291cmNlL1dU
Ri93dGYvUGxhdGZvcm0uaAppbmRleCA4YjY0YWQxZGNiMzFmODYxZWJjMmE3YjFlY2ZlNzc3MDQ0
MGMzNDY3Li5hMmEwOWM4NWIwZmNkODdlNWE4MjFlOTUzZGEzMjVkMjBlN2YwNDgxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRm
b3JtLmgKQEAgLTEwNjcsNyArMTA2NywxMyBAQAogI2luY2x1ZGUgPHd0Zi9nbGliL0dUeXBlZGVm
cy5oPgogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChVU0VfRVhQT1JUX01BQ1JPUykgJiYgKFBMQVRG
T1JNKENPQ09BKSB8fCBPUyhXSU5ET1dTKSkKKy8qIENvY29hIHBvcnRzIG5lZWQgZXhwb3J0IG1h
Y3JvcyBiZWNhdXNlIHRoZXkgYnVpbGQgZWFjaCBXZWJLaXQgZnJhbWV3b3JrCisgKiBhcyBhIHNo
YXJlZCBsaWJyYXJ5LiBXaW5kb3dzIG5lZWRzIGV4cG9ydCBtYWNyb3MgZXZlbiBqdXN0IHRvIGV4
cG9ydCBzeW1ib2xzCisgKiBvdXQgb2YgYSBzdGF0aWMgbGlicmFyeS4gR1RLKyBuZWVkcyB0aGVt
IHRvIGltcGxlbWVudCBpdHMgc3BsaXQKKyAqIGxpYmphdmFzY3JpcHRjb3JlZ3RrLiBXUEUgZG9l
cyBub3Qgd2FudCBleHBvcnQgbWFjcm9zLCBzaW5jZSBpdCdzIGJ1aWx0IGFzCisgKiBvbmUgYmln
IHN0YXRpYyBsaWIuIEVhY2ggcG9ydCBuZWVkcyB0byBiZSBjb25zaWRlcmVkIGluZGl2aWR1YWxs
eS4KKyAqLworI2lmICFkZWZpbmVkKFVTRV9FWFBPUlRfTUFDUk9TKSAmJiAoUExBVEZPUk0oQ09D
T0EpIHx8IE9TKFdJTkRPV1MpIHx8IFBMQVRGT1JNKEdUSykpCiAjZGVmaW5lIFVTRV9FWFBPUlRf
TUFDUk9TIDEKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0Q29tcGls
ZXJGbGFncy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9XZWJLaXRDb21waWxlckZsYWdzLmNtYWtlCmlu
ZGV4IDc5NTNhMTY3ZjI0OThlOTI1YWE0ZTcwYzkxZGQwYjc4ODQ5YjM5OGEuLjg2OTI5MGVhOWZh
YjNmYjc3NmJjMWJlMmI2OGQwN2RiN2JjM2YwODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9X
ZWJLaXRDb21waWxlckZsYWdzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRDb21waWxl
ckZsYWdzLmNtYWtlCkBAIC0xMDUsNiArMTA1LDEzIEBAIGlmIChDT01QSUxFUl9JU19HQ0NfT1Jf
Q0xBTkcpCiAgICAgICAgIFdFQktJVF9BUFBFTkRfR0xPQkFMX0NYWF9GTEFHUygtc3RkPWMrKzE0
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtZm5vLXJ0dGkpCiAKKyAg
ICAgICAgaWYgKFVOSVggQU5EIE5PVCBERVZFTE9QRVJfTU9ERSkKKyAgICAgICAgICAgICMgVGhl
c2UgYXJlIHVzZWQgZXZlbiBmb3IgcG9ydHMgdGhhdCB1c2Ugc3ltYm9sIG1hcHMgc28gdGhhdCB0
aGUKKyAgICAgICAgICAgICMgY29tcGlsZXIgY2FuIHRha2UgdmlzaWJpbGl0eSBpbnRvIGFjY291
bnQgZm9yIGNvZGUgb3B0aW1pemF0aW9uLgorICAgICAgICAgICAgV0VCS0lUX0FQUEVORF9HTE9C
QUxfQ09NUElMRVJfRkxBR1MoLWZ2aXNpYmlsaXR5PWhpZGRlbikKKyAgICAgICAgICAgIFdFQktJ
VF9BUFBFTkRfR0xPQkFMX0NYWF9GTEFHUygtZnZpc2liaWxpdHktaW5saW5lcy1oaWRkZW4pCisg
ICAgICAgIGVuZGlmICgpCisKICAgICAgICAgaWYgKFdJTjMyKQogICAgICAgICAgICAgV0VCS0lU
X0FQUEVORF9HTE9CQUxfQ09NUElMRVJfRkxBR1MoLW1uby1tcy1iaXRmaWVsZHMpCiAgICAgICAg
ICAgICBXRUJLSVRfUFJFUEVORF9HTE9CQUxfQ09NUElMRVJfRkxBR1MoLVduby11bmtub3duLXBy
YWdtYXMpCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggY2ZlNWI5MGU2
MGVmN2M4MWUyZDBhYmRiOGFlZTQ5YThjYTQxZWY0ZC4uODI0OGNlYTM5NjdhNTE2OGQ1MWJiZTE5
MGNhZTIwODhlMTZkYjAyNCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDEyIEBACisyMDE4LTAxLTIxICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnph
cm9AaWdhbGlhLmNvbT4KKworICAgICAgICBbQ01ha2VdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1o
aWRkZW4gYW5kIC1mdmlzaWJpbGl0eS1oaWRkZW4taW5saW5lcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0Q29tcGls
ZXJGbGFncy5jbWFrZToKKwogMjAxOC0wMS0xOCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtYY29kZV0gU2hhcmVkIHNjaGVtZXMgaW4gdGhlIFdlYktpdCB3b3Jr
c3BhY2Ugc3RpbGwgaGF2ZSBidWlsZCBwcmUtYWN0aW9ucyB0aGF0IGludm9rZSBjb3B5LXdlYmtp
dGxpYnJhcmllcy10by1wcm9kdWN0LWRpcmVjdG9yeQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416033</attachid>
            <date>2020-12-11 12:40:46 -0800</date>
            <delta_ts>2020-12-11 13:47:34 -0800</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-181916.diff</filename>
            <type>text/plain</type>
            <size>3688</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlIGIvU291cmNlL1dl
YkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMzI0OGFhMDA4MGQ4Li40ZDA2OTgxMzA2MmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC04LDExICs4LDEzIEBAIGluY2x1ZGUocGxh
dGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAogc2V0KFdlYkNvcmVfT1VUUFVUX05BTUUgV2Vi
Q29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGluZXMgd2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2
aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6
V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExPQykKLSAgICBsaXN0KEFQUEVORCBXZWJDb3Jl
X1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxvYykKKyMgSGlkZGVuIHZpc2liaWxpdHkg
cmVxdWlyZXMgT0JKRUNUIGxpYnJhcmllcyB3aGljaCBhcmUgbm90CisjIHdlbGwgc3VwcG9ydGVk
IGJlZm9yZSAzLjEyCitpZiAoJHtDTUFLRV9WRVJTSU9OfSBWRVJTSU9OX0xFU1MgIjMuMTIuMCIp
CisgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJBUklFUyBXZWJLaXQ6OldURikK
KyAgICBpZiAoTk9UIFVTRV9TWVNURU1fTUFMTE9DKQorICAgICAgICBsaXN0KEFQUEVORCBXZWJD
b3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxvYykKKyAgICBlbmRpZiAoKQogZW5k
aWYgKCkKIAogbGlzdChBUFBFTkQgV2ViQ29yZV9VTklGSUVEX1NPVVJDRV9MSVNUX0ZJTEVTCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Tb3VyY2VCdWZmZXJQ
cml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Tb3VyY2VCdWZmZXJQ
cml2YXRlLmgKaW5kZXggZjZlMTM3ODVhNTgyLi4yNTEwOTk5ZGRhZjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Tb3VyY2VCdWZmZXJQcml2YXRlLmgK
QEAgLTc1LDEyICs3NSwxMiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIGJvb2wgY2FuU3dpdGNo
VG9UeXBlKGNvbnN0IENvbnRlbnRUeXBlJikgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1
YWwgdm9pZCByZWVucXVldWVNZWRpYUlmTmVlZGVkKGNvbnN0IE1lZGlhVGltZSYgY3VycmVudE1l
ZGlhVGltZSwgdWludDY0X3QgcGVuZGluZ0FwcGVuZERhdGFDYXBhY2l0eSwgdWludDY0X3QgbWF4
aW11bUJ1ZmZlclNpemUpOwotICAgIHZpcnR1YWwgdm9pZCBhZGRUcmFja0J1ZmZlcihjb25zdCBB
dG9tU3RyaW5nJiB0cmFja0lkLCBSZWZQdHI8TWVkaWFEZXNjcmlwdGlvbj4mJik7Ci0gICAgdmly
dHVhbCB2b2lkIHRyeVNpZ25hbEFsbFNhbXBsZXNJblRyYWNrRW5xdWV1ZWQoKTsKKyAgICBXRUJD
T1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgcmVlbnF1ZXVlTWVkaWFJZk5lZWRlZChjb25zdCBNZWRp
YVRpbWUmIGN1cnJlbnRNZWRpYVRpbWUsIHVpbnQ2NF90IHBlbmRpbmdBcHBlbmREYXRhQ2FwYWNp
dHksIHVpbnQ2NF90IG1heGltdW1CdWZmZXJTaXplKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0
dWFsIHZvaWQgYWRkVHJhY2tCdWZmZXIoY29uc3QgQXRvbVN0cmluZyYgdHJhY2tJZCwgUmVmUHRy
PE1lZGlhRGVzY3JpcHRpb24+JiYpOworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCB0
cnlTaWduYWxBbGxTYW1wbGVzSW5UcmFja0VucXVldWVkKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dmlydHVhbCB2b2lkIHVwZGF0ZUJ1ZmZlcmVkRnJvbVRyYWNrQnVmZmVycyhib29sIHNvdXJjZUlz
RW5kZWQpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBldmljdENvZGVkRnJhbWVz
KHVpbnQ2NF90IG5ld0RhdGFTaXplLCB1aW50NjRfdCBwZW5kaW5nQXBwZW5kRGF0YUNhcGFjaXR5
LCB1aW50NjRfdCBtYXhpbXVtQnVmZmVyU2l6ZSwgY29uc3QgTWVkaWFUaW1lJiBjdXJyZW50VGlt
ZSwgY29uc3QgTWVkaWFUaW1lJiBkdXJhdGlvbiwgYm9vbCBpc0VuZGVkKTsKLSAgICB2aXJ0dWFs
IHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2
aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmKTsKIAogICAgIHZvaWQgc2V0
Q2xpZW50KFNvdXJjZUJ1ZmZlclByaXZhdGVDbGllbnQqIGNsaWVudCkgeyBtX2NsaWVudCA9IGNs
aWVudDsgfQogICAgIHZvaWQgc2V0SXNBdHRhY2hlZChib29sIGZsYWcpIHsgbV9pc0F0dGFjaGVk
ID0gZmxhZzsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9T
b3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCA4MzBiOTcxYTQ4MTguLjYxZjYxMGYx
MjFiZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291
cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTE4LDYgKzE4LDIzIEBAIGVuZGlmICgpCiAK
IENBTENVTEFURV9MSUJSQVJZX1ZFUlNJT05TX0ZST01fTElCVE9PTF9UUklQTEUoSkFWQVNDUklQ
VENPUkUgMzYgMCAxOCkKIAorIyBIaWRkZW4gdmlzaWJpbGl0eSByZXF1aXJlcyBPQkpFQ1QgbGli
cmFyaWVzIHdoaWNoIGFyZSBub3QKKyMgd2VsbCBzdXBwb3J0ZWQgYmVmb3JlIDMuMTIKK2lmICgk
e0NNQUtFX1ZFUlNJT059IFZFUlNJT05fTEVTUyAiMy4xMi4wIikKKyAgICBtZXNzYWdlKFdBUk5J
TkcgIlVzaW5nIHN0YXRpYyBsaWJyYXJpZXMgaW5zdGVhZCBvZiBvYmplY3QgbGlicmFyaWVzLiBD
b25zaWRlciB1cGdyYWRpbmcgeW91ciBDTWFrZSB2ZXJzaW9uIikKKyAgICBzZXQoYm1hbGxvY19M
SUJSQVJZX1RZUEUgU1RBVElDKQorICAgIHNldChXVEZfTElCUkFSWV9UWVBFIFNUQVRJQykKK2Vs
c2UgKCkKKyAgICBTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChCVVNFX0VYUE9SVF9NQUNST1MgT04p
CisgICAgU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNFX0VYUE9SVF9NQUNST1MgT04pCisgICAg
c2V0KENNQUtFX0NfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorICAgIHNldChDTUFLRV9DWFhf
VklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorICAgIHNldChDTUFLRV9WSVNJQklMSVRZX0lOTElO
RVNfSElEREVOIE9OKQorCisgICAgc2V0KGJtYWxsb2NfTElCUkFSWV9UWVBFIE9CSkVDVCkKKyAg
ICBzZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitlbmRpZiAoKQorCiAjIFRoZXNlIGFyZSBz
aGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWlyIGRlZmluaXRpb24gc28g
dGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyogdmFyaWFibGVzIHRoYXQgYXJl
IHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8uCiBzZXQoTElCX0lOU1RBTExf
RElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQQVRIICJBYnNvbHV0ZSBw
YXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIpCg==
</data>
<flag name="commit-queue"
          id="433439"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416040</attachid>
            <date>2020-12-11 13:47:34 -0800</date>
            <delta_ts>2021-02-08 15:16:34 -0800</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-181916.diff</filename>
            <type>text/plain</type>
            <size>4377</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlIGIvU291cmNlL1dl
YkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMzI0OGFhMDA4MGQ4Li40ZDA2OTgxMzA2MmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC04LDExICs4LDEzIEBAIGluY2x1ZGUocGxh
dGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAogc2V0KFdlYkNvcmVfT1VUUFVUX05BTUUgV2Vi
Q29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGluZXMgd2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2
aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6
V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExPQykKLSAgICBsaXN0KEFQUEVORCBXZWJDb3Jl
X1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxvYykKKyMgSGlkZGVuIHZpc2liaWxpdHkg
cmVxdWlyZXMgT0JKRUNUIGxpYnJhcmllcyB3aGljaCBhcmUgbm90CisjIHdlbGwgc3VwcG9ydGVk
IGJlZm9yZSAzLjEyCitpZiAoJHtDTUFLRV9WRVJTSU9OfSBWRVJTSU9OX0xFU1MgIjMuMTIuMCIp
CisgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJBUklFUyBXZWJLaXQ6OldURikK
KyAgICBpZiAoTk9UIFVTRV9TWVNURU1fTUFMTE9DKQorICAgICAgICBsaXN0KEFQUEVORCBXZWJD
b3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxvYykKKyAgICBlbmRpZiAoKQogZW5k
aWYgKCkKIAogbGlzdChBUFBFTkQgV2ViQ29yZV9VTklGSUVEX1NPVVJDRV9MSVNUX0ZJTEVTCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Tb3VyY2VCdWZmZXJQ
cml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Tb3VyY2VCdWZmZXJQ
cml2YXRlLmgKaW5kZXggZjZlMTM3ODVhNTgyLi4yNTEwOTk5ZGRhZjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Tb3VyY2VCdWZmZXJQcml2YXRlLmgK
QEAgLTc1LDEyICs3NSwxMiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIGJvb2wgY2FuU3dpdGNo
VG9UeXBlKGNvbnN0IENvbnRlbnRUeXBlJikgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1
YWwgdm9pZCByZWVucXVldWVNZWRpYUlmTmVlZGVkKGNvbnN0IE1lZGlhVGltZSYgY3VycmVudE1l
ZGlhVGltZSwgdWludDY0X3QgcGVuZGluZ0FwcGVuZERhdGFDYXBhY2l0eSwgdWludDY0X3QgbWF4
aW11bUJ1ZmZlclNpemUpOwotICAgIHZpcnR1YWwgdm9pZCBhZGRUcmFja0J1ZmZlcihjb25zdCBB
dG9tU3RyaW5nJiB0cmFja0lkLCBSZWZQdHI8TWVkaWFEZXNjcmlwdGlvbj4mJik7Ci0gICAgdmly
dHVhbCB2b2lkIHRyeVNpZ25hbEFsbFNhbXBsZXNJblRyYWNrRW5xdWV1ZWQoKTsKKyAgICBXRUJD
T1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgcmVlbnF1ZXVlTWVkaWFJZk5lZWRlZChjb25zdCBNZWRp
YVRpbWUmIGN1cnJlbnRNZWRpYVRpbWUsIHVpbnQ2NF90IHBlbmRpbmdBcHBlbmREYXRhQ2FwYWNp
dHksIHVpbnQ2NF90IG1heGltdW1CdWZmZXJTaXplKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0
dWFsIHZvaWQgYWRkVHJhY2tCdWZmZXIoY29uc3QgQXRvbVN0cmluZyYgdHJhY2tJZCwgUmVmUHRy
PE1lZGlhRGVzY3JpcHRpb24+JiYpOworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCB0
cnlTaWduYWxBbGxTYW1wbGVzSW5UcmFja0VucXVldWVkKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dmlydHVhbCB2b2lkIHVwZGF0ZUJ1ZmZlcmVkRnJvbVRyYWNrQnVmZmVycyhib29sIHNvdXJjZUlz
RW5kZWQpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBldmljdENvZGVkRnJhbWVz
KHVpbnQ2NF90IG5ld0RhdGFTaXplLCB1aW50NjRfdCBwZW5kaW5nQXBwZW5kRGF0YUNhcGFjaXR5
LCB1aW50NjRfdCBtYXhpbXVtQnVmZmVyU2l6ZSwgY29uc3QgTWVkaWFUaW1lJiBjdXJyZW50VGlt
ZSwgY29uc3QgTWVkaWFUaW1lJiBkdXJhdGlvbiwgYm9vbCBpc0VuZGVkKTsKLSAgICB2aXJ0dWFs
IHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2
aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmKTsKIAogICAgIHZvaWQgc2V0
Q2xpZW50KFNvdXJjZUJ1ZmZlclByaXZhdGVDbGllbnQqIGNsaWVudCkgeyBtX2NsaWVudCA9IGNs
aWVudDsgfQogICAgIHZvaWQgc2V0SXNBdHRhY2hlZChib29sIGZsYWcpIHsgbV9pc0F0dGFjaGVk
ID0gZmxhZzsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9T
b3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCA4MzBiOTcxYTQ4MTguLjYxZjYxMGYx
MjFiZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291
cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTE4LDYgKzE4LDIzIEBAIGVuZGlmICgpCiAK
IENBTENVTEFURV9MSUJSQVJZX1ZFUlNJT05TX0ZST01fTElCVE9PTF9UUklQTEUoSkFWQVNDUklQ
VENPUkUgMzYgMCAxOCkKIAorIyBIaWRkZW4gdmlzaWJpbGl0eSByZXF1aXJlcyBPQkpFQ1QgbGli
cmFyaWVzIHdoaWNoIGFyZSBub3QKKyMgd2VsbCBzdXBwb3J0ZWQgYmVmb3JlIDMuMTIKK2lmICgk
e0NNQUtFX1ZFUlNJT059IFZFUlNJT05fTEVTUyAiMy4xMi4wIikKKyAgICBtZXNzYWdlKFdBUk5J
TkcgIlVzaW5nIHN0YXRpYyBsaWJyYXJpZXMgaW5zdGVhZCBvZiBvYmplY3QgbGlicmFyaWVzLiBD
b25zaWRlciB1cGdyYWRpbmcgeW91ciBDTWFrZSB2ZXJzaW9uIikKKyAgICBzZXQoYm1hbGxvY19M
SUJSQVJZX1RZUEUgU1RBVElDKQorICAgIHNldChXVEZfTElCUkFSWV9UWVBFIFNUQVRJQykKK2Vs
c2UgKCkKKyAgICBTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChCVVNFX0VYUE9SVF9NQUNST1MgT04p
CisgICAgU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNFX0VYUE9SVF9NQUNST1MgT04pCisgICAg
c2V0KENNQUtFX0NfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorICAgIHNldChDTUFLRV9DWFhf
VklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorICAgIHNldChDTUFLRV9WSVNJQklMSVRZX0lOTElO
RVNfSElEREVOIE9OKQorCisgICAgc2V0KGJtYWxsb2NfTElCUkFSWV9UWVBFIE9CSkVDVCkKKyAg
ICBzZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitlbmRpZiAoKQorCiAjIFRoZXNlIGFyZSBz
aGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWlyIGRlZmluaXRpb24gc28g
dGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyogdmFyaWFibGVzIHRoYXQgYXJl
IHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8uCiBzZXQoTElCX0lOU1RBTExf
RElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQQVRIICJBYnNvbHV0ZSBw
YXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIpCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwIGIvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcAppbmRleCAzMDBj
YWE3MzU2ZjcuLjQ1N2UwMzFlZGFmNSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwCkBAIC03Nyw3ICs3Nyw4IEBAIHZvaWQg
VUlTY3JpcHRDb250cm9sbGVyR3RrOjpkb0FzeW5jVGFzayhKU1ZhbHVlUmVmIGNhbGxiYWNrKQog
CiB2b2lkIFVJU2NyaXB0Q29udHJvbGxlckd0azo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tpbmdF
bmFibGVkKGJvb2wgZW5hYmxlZCkKIHsKLSAgICBXZWJLaXQ6OlRleHRDaGVja2VyOjpzZXRDb250
aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoZW5hYmxlZCk7CisgICAgLy8gSSB0aGluayB0aGlz
IG5lZWRzIHRvIGJlIGluIGEgV0sgQVBJCisgICAgLy8gV2ViS2l0OjpUZXh0Q2hlY2tlcjo6c2V0
Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGVuYWJsZWQpOwogfQogCiB2b2lkIFVJU2Ny
aXB0Q29udHJvbGxlckd0azo6Y29weVRleHQoSlNTdHJpbmdSZWYgdGV4dCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419641</attachid>
            <date>2021-02-08 15:16:34 -0800</date>
            <delta_ts>2021-02-09 08:11:55 -0800</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-181916-rebase-2021.diff</filename>
            <type>text/plain</type>
            <size>1914</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtl
L09wdGlvbnNHVEsuY21ha2UKaW5kZXggYmY0NjRiMDYwY2RlLi5iNDUxNzY4YTlkNzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9P
cHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwyMyBAQCBlbmRpZiAoKQogCiBDQUxDVUxBVEVf
TElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JFIDM2IDEg
MTgpCiAKKyMgSGlkZGVuIHZpc2liaWxpdHkgcmVxdWlyZXMgT0JKRUNUIGxpYnJhcmllcyB3aGlj
aCBhcmUgbm90CisjIHdlbGwgc3VwcG9ydGVkIGJlZm9yZSAzLjEyCitpZiAoJHtDTUFLRV9WRVJT
SU9OfSBWRVJTSU9OX0xFU1MgIjMuMTIuMCIpCisgICAgbWVzc2FnZShXQVJOSU5HICJVc2luZyBz
dGF0aWMgbGlicmFyaWVzIGluc3RlYWQgb2Ygb2JqZWN0IGxpYnJhcmllcy4gQ29uc2lkZXIgdXBn
cmFkaW5nIHlvdXIgQ01ha2UgdmVyc2lvbiIpCisgICAgc2V0KGJtYWxsb2NfTElCUkFSWV9UWVBF
IFNUQVRJQykKKyAgICBzZXQoV1RGX0xJQlJBUllfVFlQRSBTVEFUSUMpCitlbHNlICgpCisgICAg
U0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoQlVTRV9FWFBPUlRfTUFDUk9TIE9OKQorICAgIFNFVF9B
TkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorICAgIHNldChDTUFLRV9D
X1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikKKyAgICBzZXQoQ01BS0VfQ1hYX1ZJU0lCSUxJVFlf
UFJFU0VUIGhpZGRlbikKKyAgICBzZXQoQ01BS0VfVklTSUJJTElUWV9JTkxJTkVTX0hJRERFTiBP
TikKKworICAgIHNldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisgICAgc2V0KFdURl9M
SUJSQVJZX1RZUEUgT0JKRUNUKQorZW5kaWYgKCkKKwogIyBUaGVzZSBhcmUgc2hhcmVkIHZhcmlh
YmxlcywgYnV0IHdlIHNwZWNpYWwgY2FzZSB0aGVpciBkZWZpbml0aW9uIHNvIHRoYXQgd2UgY2Fu
IHVzZSB0aGUKICMgQ01BS0VfSU5TVEFMTF8qIHZhcmlhYmxlcyB0aGF0IGFyZSBwb3B1bGF0ZWQg
YnkgdGhlIEdOVUluc3RhbGxEaXJzIG1hY3JvLgogc2V0KExJQl9JTlNUQUxMX0RJUiAiJHtDTUFL
RV9JTlNUQUxMX0ZVTExfTElCRElSfSIgQ0FDSEUgUEFUSCAiQWJzb2x1dGUgcGF0aCB0byBsaWJy
YXJ5IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkiKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvZ3RrL1VJU2NyaXB0Q29udHJvbGxlckd0ay5jcHAKaW5kZXggMzAwY2FhNzM1NmY3Li45
ZjE4YTJkOTg3YjcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvZ3RrL1VJU2Ny
aXB0Q29udHJvbGxlckd0ay5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsvVUlT
Y3JpcHRDb250cm9sbGVyR3RrLmNwcApAQCAtNzcsNyArNzcsOCBAQCB2b2lkIFVJU2NyaXB0Q29u
dHJvbGxlckd0azo6ZG9Bc3luY1Rhc2soSlNWYWx1ZVJlZiBjYWxsYmFjaykKIAogdm9pZCBVSVNj
cmlwdENvbnRyb2xsZXJHdGs6OnNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29s
IGVuYWJsZWQpCiB7Ci0gICAgV2ViS2l0OjpUZXh0Q2hlY2tlcjo6c2V0Q29udGludW91c1NwZWxs
Q2hlY2tpbmdFbmFibGVkKGVuYWJsZWQpOworICAgIC8vIEkgdGhpbmsgdGhpcyBuZWVkcyB0byBi
ZSBpbiBhIFdLIEFQSQorICAgIC8vV2ViS2l0OjpUZXh0Q2hlY2tlcjo6c2V0Q29udGludW91c1Nw
ZWxsQ2hlY2tpbmdFbmFibGVkKGVuYWJsZWQpOwogfQogCiB2b2lkIFVJU2NyaXB0Q29udHJvbGxl
ckd0azo6Y29weVRleHQoSlNTdHJpbmdSZWYgdGV4dCkK
</data>
<flag name="commit-queue"
          id="437935"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419717</attachid>
            <date>2021-02-09 08:11:55 -0800</date>
            <delta_ts>2021-02-09 10:58:20 -0800</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-181916-rebase-2021.diff</filename>
            <type>text/plain</type>
            <size>5265</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZl
clByaXZhdGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZl
clByaXZhdGUuaAppbmRleCA3YTVhZjJiN2Y3ZjkuLjUyYWI3ZTVlNjAxNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUu
aApAQCAtNzUsMjYgKzc1LDI2IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgYm9vbCBjYW5Td2l0
Y2hUb1R5cGUoY29uc3QgQ29udGVudFR5cGUmKSB7IHJldHVybiBmYWxzZTsgfQogCi0gICAgdmly
dHVhbCB2b2lkIHNldE1lZGlhU291cmNlRW5kZWQoYm9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQg
dmlydHVhbCB2b2lkIHNldE1lZGlhU291cmNlRW5kZWQoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lk
IHNldE1vZGUoU291cmNlQnVmZmVyQXBwZW5kTW9kZSBtb2RlKSB7IG1fYXBwZW5kTW9kZSA9IG1v
ZGU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgcmVlbnF1ZXVlTWVkaWFJZk5lZWRlZChjb25zdCBNZWRp
YVRpbWUmIGN1cnJlbnRNZWRpYVRpbWUsIHVpbnQ2NF90IHBlbmRpbmdBcHBlbmREYXRhQ2FwYWNp
dHksIHVpbnQ2NF90IG1heGltdW1CdWZmZXJTaXplKTsKLSAgICB2aXJ0dWFsIHZvaWQgYWRkVHJh
Y2tCdWZmZXIoY29uc3QgQXRvbVN0cmluZyYgdHJhY2tJZCwgUmVmUHRyPE1lZGlhRGVzY3JpcHRp
b24+JiYpOwotICAgIHZpcnR1YWwgdm9pZCByZXNldFRyYWNrQnVmZmVycygpOwotICAgIHZpcnR1
YWwgdm9pZCBjbGVhclRyYWNrQnVmZmVycygpOwotICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxUcmFj
a0J1ZmZlcnNOZWVkUmFuZG9tQWNjZXNzKCk7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2
b2lkIHJlZW5xdWV1ZU1lZGlhSWZOZWVkZWQoY29uc3QgTWVkaWFUaW1lJiBjdXJyZW50TWVkaWFU
aW1lLCB1aW50NjRfdCBwZW5kaW5nQXBwZW5kRGF0YUNhcGFjaXR5LCB1aW50NjRfdCBtYXhpbXVt
QnVmZmVyU2l6ZSk7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGFkZFRyYWNrQnVm
ZmVyKGNvbnN0IEF0b21TdHJpbmcmIHRyYWNrSWQsIFJlZlB0cjxNZWRpYURlc2NyaXB0aW9uPiYm
KTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgcmVzZXRUcmFja0J1ZmZlcnMoKTsK
KyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgY2xlYXJUcmFja0J1ZmZlcnMoKTsKKyAg
ICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgc2V0QWxsVHJhY2tCdWZmZXJzTmVlZFJhbmRv
bUFjY2VzcygpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRHcm91cFN0YXJ0VGltZXN0YW1wKGNvbnN0
IE1lZGlhVGltZSYgbWVkaWFUaW1lKSB7IG1fZ3JvdXBTdGFydFRpbWVzdGFtcCA9IG1lZGlhVGlt
ZTsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXRHcm91cFN0YXJ0VGltZXN0YW1wVG9FbmRUaW1lc3Rh
bXAoKSB7IG1fZ3JvdXBTdGFydFRpbWVzdGFtcCA9IG1fZ3JvdXBFbmRUaW1lc3RhbXA7IH0KICAg
ICB2aXJ0dWFsIHZvaWQgc2V0U2hvdWxkR2VuZXJhdGVUaW1lc3RhbXBzKGJvb2wgZmxhZykgeyBt
X3Nob3VsZEdlbmVyYXRlVGltZXN0YW1wcyA9IGZsYWc7IH0KICAgICBXRUJDT1JFX0VYUE9SVCB2
aXJ0dWFsIHZvaWQgdXBkYXRlQnVmZmVyZWRGcm9tVHJhY2tCdWZmZXJzKGJvb2wgc291cmNlSXNF
bmRlZCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlbW92ZUNvZGVkRnJhbWVzKGNvbnN0IE1lZGlhVGlt
ZSYgc3RhcnQsIGNvbnN0IE1lZGlhVGltZSYgZW5kLCBjb25zdCBNZWRpYVRpbWUmIGN1cnJlbnRN
ZWRpYVRpbWUsIGJvb2wgaXNFbmRlZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmID0gW10g
eyB9KTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgcmVtb3ZlQ29kZWRGcmFtZXMo
Y29uc3QgTWVkaWFUaW1lJiBzdGFydCwgY29uc3QgTWVkaWFUaW1lJiBlbmQsIGNvbnN0IE1lZGlh
VGltZSYgY3VycmVudE1lZGlhVGltZSwgYm9vbCBpc0VuZGVkLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKCk+JiYgPSBbXSB7IH0pOwogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBldmlj
dENvZGVkRnJhbWVzKHVpbnQ2NF90IG5ld0RhdGFTaXplLCB1aW50NjRfdCBwZW5kaW5nQXBwZW5k
RGF0YUNhcGFjaXR5LCB1aW50NjRfdCBtYXhpbXVtQnVmZmVyU2l6ZSwgY29uc3QgTWVkaWFUaW1l
JiBjdXJyZW50VGltZSwgY29uc3QgTWVkaWFUaW1lJiBkdXJhdGlvbiwgYm9vbCBpc0VuZGVkKTsK
LSAgICB2aXJ0dWFsIHZvaWQgcmVzZXRUaW1lc3RhbXBPZmZzZXRJblRyYWNrQnVmZmVycygpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCByZXNldFRpbWVzdGFtcE9mZnNldEluVHJh
Y2tCdWZmZXJzKCk7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0Q2hhbmdpbmdUeXBlKCkgeyBtX3Bl
bmRpbmdJbml0aWFsaXphdGlvblNlZ21lbnRGb3JDaGFuZ2VUeXBlID0gdHJ1ZTsgfQogICAgIHZp
cnR1YWwgdm9pZCBzZXRUaW1lc3RhbXBPZmZzZXQoY29uc3QgTWVkaWFUaW1lJiB0aW1lc3RhbXBP
ZmZzZXQpIHsgbV90aW1lc3RhbXBPZmZzZXQgPSB0aW1lc3RhbXBPZmZzZXQ7IH0KICAgICB2aXJ0
dWFsIHZvaWQgc2V0QXBwZW5kV2luZG93U3RhcnQoY29uc3QgTWVkaWFUaW1lJiBhcHBlbmRXaW5k
b3dTdGFydCkgeyBtX2FwcGVuZFdpbmRvd1N0YXJ0ID0gYXBwZW5kV2luZG93U3RhcnQ7fQogICAg
IHZpcnR1YWwgdm9pZCBzZXRBcHBlbmRXaW5kb3dFbmQoY29uc3QgTWVkaWFUaW1lJiBhcHBlbmRX
aW5kb3dFbmQpIHsgbV9hcHBlbmRXaW5kb3dFbmQgPSBhcHBlbmRXaW5kb3dFbmQ7IH0KLSAgICB2
aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUmKTsKLSAgICB2aXJ0dWFsIHZv
aWQgdXBkYXRlVHJhY2tJZHMoVmVjdG9yPHN0ZDo6cGFpcjxBdG9tU3RyaW5nLCBBdG9tU3RyaW5n
Pj4mJiB0cmFja0lkUGFpcnMpOworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBzZWVr
VG9UaW1lKGNvbnN0IE1lZGlhVGltZSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9p
ZCB1cGRhdGVUcmFja0lkcyhWZWN0b3I8c3RkOjpwYWlyPEF0b21TdHJpbmcsIEF0b21TdHJpbmc+
PiYmIHRyYWNrSWRQYWlycyk7CiAKICAgICB2b2lkIHNldENsaWVudChTb3VyY2VCdWZmZXJQcml2
YXRlQ2xpZW50KiBjbGllbnQpIHsgbV9jbGllbnQgPSBjbGllbnQ7IH0KICAgICB2b2lkIHNldElz
QXR0YWNoZWQoYm9vbCBmbGFnKSB7IG1faXNBdHRhY2hlZCA9IGZsYWc7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsu
Y21ha2UKaW5kZXggYmY0NjRiMDYwY2RlLi5iNDUxNzY4YTlkNzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNt
YWtlCkBAIC0xOCw2ICsxOCwyMyBAQCBlbmRpZiAoKQogCiBDQUxDVUxBVEVfTElCUkFSWV9WRVJT
SU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JFIDM2IDEgMTgpCiAKKyMgSGlk
ZGVuIHZpc2liaWxpdHkgcmVxdWlyZXMgT0JKRUNUIGxpYnJhcmllcyB3aGljaCBhcmUgbm90Cisj
IHdlbGwgc3VwcG9ydGVkIGJlZm9yZSAzLjEyCitpZiAoJHtDTUFLRV9WRVJTSU9OfSBWRVJTSU9O
X0xFU1MgIjMuMTIuMCIpCisgICAgbWVzc2FnZShXQVJOSU5HICJVc2luZyBzdGF0aWMgbGlicmFy
aWVzIGluc3RlYWQgb2Ygb2JqZWN0IGxpYnJhcmllcy4gQ29uc2lkZXIgdXBncmFkaW5nIHlvdXIg
Q01ha2UgdmVyc2lvbiIpCisgICAgc2V0KGJtYWxsb2NfTElCUkFSWV9UWVBFIFNUQVRJQykKKyAg
ICBzZXQoV1RGX0xJQlJBUllfVFlQRSBTVEFUSUMpCitlbHNlICgpCisgICAgU0VUX0FORF9FWFBP
U0VfVE9fQlVJTEQoQlVTRV9FWFBPUlRfTUFDUk9TIE9OKQorICAgIFNFVF9BTkRfRVhQT1NFX1RP
X0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorICAgIHNldChDTUFLRV9DX1ZJU0lCSUxJVFlf
UFJFU0VUIGhpZGRlbikKKyAgICBzZXQoQ01BS0VfQ1hYX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRl
bikKKyAgICBzZXQoQ01BS0VfVklTSUJJTElUWV9JTkxJTkVTX0hJRERFTiBPTikKKworICAgIHNl
dChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisgICAgc2V0KFdURl9MSUJSQVJZX1RZUEUg
T0JKRUNUKQorZW5kaWYgKCkKKwogIyBUaGVzZSBhcmUgc2hhcmVkIHZhcmlhYmxlcywgYnV0IHdl
IHNwZWNpYWwgY2FzZSB0aGVpciBkZWZpbml0aW9uIHNvIHRoYXQgd2UgY2FuIHVzZSB0aGUKICMg
Q01BS0VfSU5TVEFMTF8qIHZhcmlhYmxlcyB0aGF0IGFyZSBwb3B1bGF0ZWQgYnkgdGhlIEdOVUlu
c3RhbGxEaXJzIG1hY3JvLgogc2V0KExJQl9JTlNUQUxMX0RJUiAiJHtDTUFLRV9JTlNUQUxMX0ZV
TExfTElCRElSfSIgQ0FDSEUgUEFUSCAiQWJzb2x1dGUgcGF0aCB0byBsaWJyYXJ5IGluc3RhbGxh
dGlvbiBkaXJlY3RvcnkiKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsv
VUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvZ3RrL1VJ
U2NyaXB0Q29udHJvbGxlckd0ay5jcHAKaW5kZXggMzAwY2FhNzM1NmY3Li45ZjE4YTJkOTg3Yjcg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvZ3RrL1VJU2NyaXB0Q29udHJvbGxl
ckd0ay5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9s
bGVyR3RrLmNwcApAQCAtNzcsNyArNzcsOCBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxlckd0azo6
ZG9Bc3luY1Rhc2soSlNWYWx1ZVJlZiBjYWxsYmFjaykKIAogdm9pZCBVSVNjcmlwdENvbnRyb2xs
ZXJHdGs6OnNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29sIGVuYWJsZWQpCiB7
Ci0gICAgV2ViS2l0OjpUZXh0Q2hlY2tlcjo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFi
bGVkKGVuYWJsZWQpOworICAgIC8vIEkgdGhpbmsgdGhpcyBuZWVkcyB0byBiZSBpbiBhIFdLIEFQ
SQorICAgIC8vV2ViS2l0OjpUZXh0Q2hlY2tlcjo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tpbmdF
bmFibGVkKGVuYWJsZWQpOwogfQogCiB2b2lkIFVJU2NyaXB0Q29udHJvbGxlckd0azo6Y29weVRl
eHQoSlNTdHJpbmdSZWYgdGV4dCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419741</attachid>
            <date>2021-02-09 10:58:23 -0800</date>
            <delta_ts>2021-03-05 11:56:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210209125822.patch</filename>
            <type>text/plain</type>
            <size>8676</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmFjN2M4NTUyYmQzZmQy
YjkwMmYwMjZkNjJjZTNhMmIxZDFkZjA2MC4uNTIzY2EwNGUwYjcwYTUzOWE1MDFmMDI4Y2MwNTNj
OGU1MDBhNzY3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTAyLTA5ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRXZlbnRUYXJn
ZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRUYXJnZXQ6On5FdmVudFRhcmdldCk6Cisg
ICAgICAgICogZG9tL0V2ZW50VGFyZ2V0Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
U291cmNlQnVmZmVyUHJpdmF0ZS5oOgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJp
dmF0ZTo6cmVtb3ZlQ29kZWRGcmFtZXMpOgorCiAyMDIxLTAyLTA5ICBaYWxhbiBCdWp0YXMgIDx6
YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bSUZDXSBjYW5Vc2VGb3JUZXh0IHNob3Vs
ZCBhbHNvIGNoZWNrIGlmIHRoZSBzcGFjZSBnbHlwaCBjb21lcyBmcm9tIHRoZSBwcmltYXJ5IGZv
bnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCmluZGV4IDMxYTgxZWFiMTlmYzJlMDEzOTU1
Yjk2ZmE4Yzk3NTAzMmVjMzRlZTkuLmNiNTdhMmMwMTdmMTEyNjllMTU3NmI3OTQ2MWZiNTVhMzE4
ZjIzYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcApAQCAtNjYsNiArNjYsMTAgQEAg
UmVmPEV2ZW50VGFyZ2V0PiBFdmVudFRhcmdldDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmIGNvbnRleHQpCiAgICAgcmV0dXJuIEV2ZW50VGFyZ2V0Q29uY3JldGU6OmNyZWF0ZShjb250
ZXh0KTsKIH0KIAorRXZlbnRUYXJnZXQ6On5FdmVudFRhcmdldCgpCit7Cit9CisKIGJvb2wgRXZl
bnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnRUYXJnZXQuaAppbmRleCA0MDk1OWIxZTZlZTE1MWYyZjdjNjY3ZWEzNDU3YTdiYTg3MmM3
ZDk4Li41NjMzN2ViNmEyM2IyYTJlMDg4MmFkOGM4OThkODQ1Zjg2NzZlOTI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnRUYXJnZXQuaApAQCAtMTAzLDcgKzEwMyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBF
dmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6Ci0g
ICAgdmlydHVhbCB+RXZlbnRUYXJnZXQoKSA9IGRlZmF1bHQ7CisgICAgdmlydHVhbCB+RXZlbnRU
YXJnZXQoKTsKICAgICAKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXRE
YXRhKCkgPSAwOwogICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGFD
b25jdXJyZW50bHkoKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9Tb3VyY2VCdWZmZXJQcml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9Tb3VyY2VCdWZmZXJQcml2YXRlLmgKaW5kZXggN2E1YWYyYjdmN2Y5NmIzOGQ3N2E1
YWMxMzM4ZTAzOTQ3NmVmZmNhZS4uNTJhYjdlNWU2MDE2NDhmNDQzZTY3NzcyZmMyM2RmZDQzMjIz
ZTU5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNl
QnVmZmVyUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1Nv
dXJjZUJ1ZmZlclByaXZhdGUuaApAQCAtNzUsMjYgKzc1LDI2IEBAIHB1YmxpYzoKIAogICAgIHZp
cnR1YWwgYm9vbCBjYW5Td2l0Y2hUb1R5cGUoY29uc3QgQ29udGVudFR5cGUmKSB7IHJldHVybiBm
YWxzZTsgfQogCi0gICAgdmlydHVhbCB2b2lkIHNldE1lZGlhU291cmNlRW5kZWQoYm9vbCk7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIHNldE1lZGlhU291cmNlRW5kZWQoYm9vbCk7
CiAgICAgdmlydHVhbCB2b2lkIHNldE1vZGUoU291cmNlQnVmZmVyQXBwZW5kTW9kZSBtb2RlKSB7
IG1fYXBwZW5kTW9kZSA9IG1vZGU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgcmVlbnF1ZXVlTWVkaWFJ
Zk5lZWRlZChjb25zdCBNZWRpYVRpbWUmIGN1cnJlbnRNZWRpYVRpbWUsIHVpbnQ2NF90IHBlbmRp
bmdBcHBlbmREYXRhQ2FwYWNpdHksIHVpbnQ2NF90IG1heGltdW1CdWZmZXJTaXplKTsKLSAgICB2
aXJ0dWFsIHZvaWQgYWRkVHJhY2tCdWZmZXIoY29uc3QgQXRvbVN0cmluZyYgdHJhY2tJZCwgUmVm
UHRyPE1lZGlhRGVzY3JpcHRpb24+JiYpOwotICAgIHZpcnR1YWwgdm9pZCByZXNldFRyYWNrQnVm
ZmVycygpOwotICAgIHZpcnR1YWwgdm9pZCBjbGVhclRyYWNrQnVmZmVycygpOwotICAgIHZpcnR1
YWwgdm9pZCBzZXRBbGxUcmFja0J1ZmZlcnNOZWVkUmFuZG9tQWNjZXNzKCk7CisgICAgV0VCQ09S
RV9FWFBPUlQgdmlydHVhbCB2b2lkIHJlZW5xdWV1ZU1lZGlhSWZOZWVkZWQoY29uc3QgTWVkaWFU
aW1lJiBjdXJyZW50TWVkaWFUaW1lLCB1aW50NjRfdCBwZW5kaW5nQXBwZW5kRGF0YUNhcGFjaXR5
LCB1aW50NjRfdCBtYXhpbXVtQnVmZmVyU2l6ZSk7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVh
bCB2b2lkIGFkZFRyYWNrQnVmZmVyKGNvbnN0IEF0b21TdHJpbmcmIHRyYWNrSWQsIFJlZlB0cjxN
ZWRpYURlc2NyaXB0aW9uPiYmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgcmVz
ZXRUcmFja0J1ZmZlcnMoKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgY2xlYXJU
cmFja0J1ZmZlcnMoKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgc2V0QWxsVHJh
Y2tCdWZmZXJzTmVlZFJhbmRvbUFjY2VzcygpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRHcm91cFN0
YXJ0VGltZXN0YW1wKGNvbnN0IE1lZGlhVGltZSYgbWVkaWFUaW1lKSB7IG1fZ3JvdXBTdGFydFRp
bWVzdGFtcCA9IG1lZGlhVGltZTsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXRHcm91cFN0YXJ0VGlt
ZXN0YW1wVG9FbmRUaW1lc3RhbXAoKSB7IG1fZ3JvdXBTdGFydFRpbWVzdGFtcCA9IG1fZ3JvdXBF
bmRUaW1lc3RhbXA7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0U2hvdWxkR2VuZXJhdGVUaW1lc3Rh
bXBzKGJvb2wgZmxhZykgeyBtX3Nob3VsZEdlbmVyYXRlVGltZXN0YW1wcyA9IGZsYWc7IH0KICAg
ICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgdXBkYXRlQnVmZmVyZWRGcm9tVHJhY2tCdWZm
ZXJzKGJvb2wgc291cmNlSXNFbmRlZCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlbW92ZUNvZGVkRnJh
bWVzKGNvbnN0IE1lZGlhVGltZSYgc3RhcnQsIGNvbnN0IE1lZGlhVGltZSYgZW5kLCBjb25zdCBN
ZWRpYVRpbWUmIGN1cnJlbnRNZWRpYVRpbWUsIGJvb2wgaXNFbmRlZCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmID0gW10geyB9KTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQg
cmVtb3ZlQ29kZWRGcmFtZXMoY29uc3QgTWVkaWFUaW1lJiBzdGFydCwgY29uc3QgTWVkaWFUaW1l
JiBlbmQsIGNvbnN0IE1lZGlhVGltZSYgY3VycmVudE1lZGlhVGltZSwgYm9vbCBpc0VuZGVkLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgPSBbXSB7IH0pOwogICAgIFdFQkNPUkVfRVhQT1JU
IHZpcnR1YWwgdm9pZCBldmljdENvZGVkRnJhbWVzKHVpbnQ2NF90IG5ld0RhdGFTaXplLCB1aW50
NjRfdCBwZW5kaW5nQXBwZW5kRGF0YUNhcGFjaXR5LCB1aW50NjRfdCBtYXhpbXVtQnVmZmVyU2l6
ZSwgY29uc3QgTWVkaWFUaW1lJiBjdXJyZW50VGltZSwgY29uc3QgTWVkaWFUaW1lJiBkdXJhdGlv
biwgYm9vbCBpc0VuZGVkKTsKLSAgICB2aXJ0dWFsIHZvaWQgcmVzZXRUaW1lc3RhbXBPZmZzZXRJ
blRyYWNrQnVmZmVycygpOworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCByZXNldFRp
bWVzdGFtcE9mZnNldEluVHJhY2tCdWZmZXJzKCk7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0Q2hh
bmdpbmdUeXBlKCkgeyBtX3BlbmRpbmdJbml0aWFsaXphdGlvblNlZ21lbnRGb3JDaGFuZ2VUeXBl
ID0gdHJ1ZTsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXRUaW1lc3RhbXBPZmZzZXQoY29uc3QgTWVk
aWFUaW1lJiB0aW1lc3RhbXBPZmZzZXQpIHsgbV90aW1lc3RhbXBPZmZzZXQgPSB0aW1lc3RhbXBP
ZmZzZXQ7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwZW5kV2luZG93U3RhcnQoY29uc3QgTWVk
aWFUaW1lJiBhcHBlbmRXaW5kb3dTdGFydCkgeyBtX2FwcGVuZFdpbmRvd1N0YXJ0ID0gYXBwZW5k
V2luZG93U3RhcnQ7fQogICAgIHZpcnR1YWwgdm9pZCBzZXRBcHBlbmRXaW5kb3dFbmQoY29uc3Qg
TWVkaWFUaW1lJiBhcHBlbmRXaW5kb3dFbmQpIHsgbV9hcHBlbmRXaW5kb3dFbmQgPSBhcHBlbmRX
aW5kb3dFbmQ7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShjb25zdCBNZWRpYVRpbWUm
KTsKLSAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlVHJhY2tJZHMoVmVjdG9yPHN0ZDo6cGFpcjxBdG9t
U3RyaW5nLCBBdG9tU3RyaW5nPj4mJiB0cmFja0lkUGFpcnMpOworICAgIFdFQkNPUkVfRVhQT1JU
IHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGNvbnN0IE1lZGlhVGltZSYpOworICAgIFdFQkNPUkVf
RVhQT1JUIHZpcnR1YWwgdm9pZCB1cGRhdGVUcmFja0lkcyhWZWN0b3I8c3RkOjpwYWlyPEF0b21T
dHJpbmcsIEF0b21TdHJpbmc+PiYmIHRyYWNrSWRQYWlycyk7CiAKICAgICB2b2lkIHNldENsaWVu
dChTb3VyY2VCdWZmZXJQcml2YXRlQ2xpZW50KiBjbGllbnQpIHsgbV9jbGllbnQgPSBjbGllbnQ7
IH0KICAgICB2b2lkIHNldElzQXR0YWNoZWQoYm9vbCBmbGFnKSB7IG1faXNBdHRhY2hlZCA9IGZs
YWc7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNl
L2NtYWtlL09wdGlvbnNHVEsuY21ha2UKaW5kZXggYmY0NjRiMDYwY2RlZTEyZThhOWMyZjYwMWM1
OTAwNTM4NTRiMThlNC4uYjQ1MTc2OGE5ZDczMWUzNDFmYmU2OTk1NmUzNjE5NzNlMTczY2Y0YSAx
MDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291cmNlL2Nt
YWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTE4LDYgKzE4LDIzIEBAIGVuZGlmICgpCiAKIENBTENV
TEFURV9MSUJSQVJZX1ZFUlNJT05TX0ZST01fTElCVE9PTF9UUklQTEUoSkFWQVNDUklQVENPUkUg
MzYgMSAxOCkKIAorIyBIaWRkZW4gdmlzaWJpbGl0eSByZXF1aXJlcyBPQkpFQ1QgbGlicmFyaWVz
IHdoaWNoIGFyZSBub3QKKyMgd2VsbCBzdXBwb3J0ZWQgYmVmb3JlIDMuMTIKK2lmICgke0NNQUtF
X1ZFUlNJT059IFZFUlNJT05fTEVTUyAiMy4xMi4wIikKKyAgICBtZXNzYWdlKFdBUk5JTkcgIlVz
aW5nIHN0YXRpYyBsaWJyYXJpZXMgaW5zdGVhZCBvZiBvYmplY3QgbGlicmFyaWVzLiBDb25zaWRl
ciB1cGdyYWRpbmcgeW91ciBDTWFrZSB2ZXJzaW9uIikKKyAgICBzZXQoYm1hbGxvY19MSUJSQVJZ
X1RZUEUgU1RBVElDKQorICAgIHNldChXVEZfTElCUkFSWV9UWVBFIFNUQVRJQykKK2Vsc2UgKCkK
KyAgICBTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChCVVNFX0VYUE9SVF9NQUNST1MgT04pCisgICAg
U0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNFX0VYUE9SVF9NQUNST1MgT04pCisgICAgc2V0KENN
QUtFX0NfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorICAgIHNldChDTUFLRV9DWFhfVklTSUJJ
TElUWV9QUkVTRVQgaGlkZGVuKQorICAgIHNldChDTUFLRV9WSVNJQklMSVRZX0lOTElORVNfSElE
REVOIE9OKQorCisgICAgc2V0KGJtYWxsb2NfTElCUkFSWV9UWVBFIE9CSkVDVCkKKyAgICBzZXQo
V1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitlbmRpZiAoKQorCiAjIFRoZXNlIGFyZSBzaGFyZWQg
dmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWlyIGRlZmluaXRpb24gc28gdGhhdCB3
ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyogdmFyaWFibGVzIHRoYXQgYXJlIHBvcHVs
YXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8uCiBzZXQoTElCX0lOU1RBTExfRElSICIk
e0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQQVRIICJBYnNvbHV0ZSBwYXRoIHRv
IGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjgxZjMxOTJkODgzMjM5YmFiMDNhZTMzNGNh
MmU0ZGEwZjU4ZWM0MC4uZDliNDQ1ZjQ3MmFiZDA5ZDViMGQ0NzgwNTNhNGNlZGY3OTY2MTAxMyAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEzIEBACisyMDIxLTAyLTA5ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25v
bWUub3JnPgorCisgICAgICAgIFtXUEVdW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRl
biAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2d0
ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwOgorICAgICAgICAoV1RSOjpVSVNjcmlwdENvbnRy
b2xsZXJHdGs6OnNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCk6CisKIDIwMjEtMDIt
MDkgIERhbmllbCBLb2xlc2EgIDxka29sZXNhQGlnYWxpYS5jb20+CiAKICAgICAgICAgQWxsb3cg
aWNlY3JlYW0gdG9vbGNoYWluIG92ZXJyaWRlIGluIGZsYXRwYWt1dGlscwpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcCBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvZ3RrL1VJU2NyaXB0Q29udHJvbGxlckd0ay5jcHAKaW5kZXgg
MzAwY2FhNzM1NmY3ZWVlNmE3YzM3YTNlMjg4MjM1MWQyODlhMGZmNS4uOWYxOGEyZDk4N2I3N2Ix
ZmI2ZmNiMWY4MTA2MmNhOTc4YTA4NTE1YyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwCkBAIC03Nyw3ICs3Nyw4IEBAIHZv
aWQgVUlTY3JpcHRDb250cm9sbGVyR3RrOjpkb0FzeW5jVGFzayhKU1ZhbHVlUmVmIGNhbGxiYWNr
KQogCiB2b2lkIFVJU2NyaXB0Q29udHJvbGxlckd0azo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tp
bmdFbmFibGVkKGJvb2wgZW5hYmxlZCkKIHsKLSAgICBXZWJLaXQ6OlRleHRDaGVja2VyOjpzZXRD
b250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoZW5hYmxlZCk7CisgICAgLy8gSSB0aGluayB0
aGlzIG5lZWRzIHRvIGJlIGluIGEgV0sgQVBJCisgICAgLy9XZWJLaXQ6OlRleHRDaGVja2VyOjpz
ZXRDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoZW5hYmxlZCk7CiB9CiAKIHZvaWQgVUlT
Y3JpcHRDb250cm9sbGVyR3RrOjpjb3B5VGV4dChKU1N0cmluZ1JlZiB0ZXh0KQpkaWZmIC0tZ2l0
IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDM1MWM5YmIxNzUzZjdjMmE5NTc4NDVkNjMw
OTNkNzhiMDlkZDFlZmMuLjVmNzNlNjg4OTVhZjA4YzJhODYzNDljZGRkNjg4ZGQyNTNkYzRkZjAg
MTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAor
MjAyMS0wMi0wOSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKwor
ICAgICAgICBbV1BFXVtHVEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4gKGFuZCAtZnZp
c2liaWxpdHktaW5saW5lcy1oaWRkZW4gZm9yIFdQRSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2U6
CisKIDIwMjEtMDItMDggIEFsaWNpYSBCb3lhIEdhcmPDrWEgIDxhYm95YUBpZ2FsaWEuY29tPgog
CiAgICAgICAgIENvbnNvbGVNZXNzYWdlOiBEb24ndCBlbmNvZGUgc3RyaW5nIEpTT05Mb2dWYWx1
ZSdzIGFzIEpTT04K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422389</attachid>
            <date>2021-03-05 11:56:10 -0800</date>
            <delta_ts>2021-03-05 14:39:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210305135609.patch</filename>
            <type>text/plain</type>
            <size>5606</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczOTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTg1Y2U1NTQ5NzI1MDZm
NGQ4MGY5YjI1NGUzZGQ5YWIzNzhmODZlNC4uNmYzZDhlZGEzZWNiMDA5OGQ5YjZjZmZjNDJmZDlk
MDAwNzZjNmJlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRXZlbnRUYXJn
ZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRUYXJnZXQ6On5FdmVudFRhcmdldCk6Cisg
ICAgICAgICogZG9tL0V2ZW50VGFyZ2V0Lmg6CisKIDIwMjEtMDMtMDQgIEFudG9pbmUgUXVpbnQg
IDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVmYWN0b3IgQ1NTUHJvcGVydHlBbmlt
YXRpb24gdG8gc3BlY2lmeSBmZXdlciB3cmFwcGVycyBhbmQgdXNlIHZhbHVlKCkgZnVuY3Rpb25z
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAppbmRleCBiNWE5ZjRhZmVlZmZmNzRiNWNmYmNm
ODRmMWE0MWJmYzI2ZmExY2VkLi4yZjNkZjY1YmQ4YjFlOGFmNmYyOWE2OGYzYjM4MmQ2ZTYwZmE2
ZTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAKQEAgLTY2LDYgKzY2LDEwIEBAIFJl
ZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVudFRhcmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4
dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZlbnRUYXJnZXQoKQoreworfQorCiBib29sIEV2ZW50
VGFyZ2V0Ojppc05vZGUoKSBjb25zdAogewogICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50VGFyZ2V0LmgKaW5kZXggZTY0MzM3MTlkNmFhMTgzYjQ5YzUwNzkwNGRkYjk2NDcyZGVkYmZk
YS4uMGRkNTdmODE5YzZmYzk2MzgxMzVjNmQ0ZDJiZGU4N2FlNmY4OWRhOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0V2ZW50VGFyZ2V0LmgKQEAgLTEwMyw3ICsxMDMsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgRXZl
bnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBjb25zdDsKIAogcHJvdGVjdGVkOgotICAg
IHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0OworICAgIFdFQkNPUkVfRVhQT1JUIHZp
cnR1YWwgfkV2ZW50VGFyZ2V0KCk7CiAgICAgCiAgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEq
IGV2ZW50VGFyZ2V0RGF0YSgpID0gMDsKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZl
bnRUYXJnZXREYXRhQ29uY3VycmVudGx5KCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtl
L09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCA4
ZWFjYmIwMzBkMTgzZjE5ODIxZTAyNTZkNDIxMjQwZTg2OGEyN2QzLi4wZTc5OTI5YWUyMGFkZmQ4
YWMwZjhiN2FmNDg3ZWZiZjM5MTFiYzM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9u
c0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQpAQCAtMTgsNiAr
MTgsMTQgQEAgZW5kaWYgKCkKIAogQ0FMQ1VMQVRFX0xJQlJBUllfVkVSU0lPTlNfRlJPTV9MSUJU
T09MX1RSSVBMRShKQVZBU0NSSVBUQ09SRSAzNyAwIDE5KQogCitTRVRfQU5EX0VYUE9TRV9UT19C
VUlMRChCVVNFX0VYUE9SVF9NQUNST1MgT04pCitTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChVU0Vf
RVhQT1JUX01BQ1JPUyBPTikKKworc2V0KENNQUtFX0NfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVu
KQorc2V0KENNQUtFX0NYWF9WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoYm1hbGxvY19M
SUJSQVJZX1RZUEUgT0JKRUNUKQorc2V0KFdURl9MSUJSQVJZX1RZUEUgT0JKRUNUKQorCiAjIFRo
ZXNlIGFyZSBzaGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWlyIGRlZmlu
aXRpb24gc28gdGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyogdmFyaWFibGVz
IHRoYXQgYXJlIHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8uCiBzZXQoTElC
X0lOU1RBTExfRElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQQVRIICJB
YnNvbHV0ZSBwYXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc1dQRS5jbWFrZSBiL1NvdXJjZS9jbWFrZS9PcHRpb25z
V1BFLmNtYWtlCmluZGV4IDNmZWM3YzBmMWExZWRiZmJmNWQxOTkyZGNmNjA1YjQ1YjBlZjZkZWYu
LmNmN2ZkYTk2MjViNTIwYWM5NzEwNDE1ZGMyY2VjNTk5ZmYwNDk2OTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9jbWFrZS9PcHRpb25zV1BFLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9PcHRpb25zV1BF
LmNtYWtlCkBAIC02LDYgKzYsMTMgQEAgc2V0KFdQRV9BUElfVkVSU0lPTiAxLjApCiAKIENBTENV
TEFURV9MSUJSQVJZX1ZFUlNJT05TX0ZST01fTElCVE9PTF9UUklQTEUoV0VCS0lUIDE2IDAgMTMp
CiAKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKEJVU0VfRVhQT1JUX01BQ1JPUyBPTikKK1NFVF9B
TkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorCitzZXQoQ01BS0VfQ19W
SVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hYX1ZJU0lCSUxJVFlfUFJFU0VU
IGhpZGRlbikKK3NldChDTUFLRV9WSVNJQklMSVRZX0lOTElORVNfSElEREVOIE9OKQorCiAjIFRo
ZXNlIGFyZSBzaGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWlyIGRlZmlu
aXRpb24gc28gdGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyogdmFyaWFibGVz
IHRoYXQgYXJlIHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8uCiBzZXQoTElC
X0lOU1RBTExfRElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQQVRIICJB
YnNvbHV0ZSBwYXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIpCmRpZmYgLS1n
aXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNTE0NTdkMTlmMmQx
NmZlMTczOTgwNzcwNmM1ZTUyZDE3ZDMwYzgzNy4uNWYxOGE5YmU1NWQ1YjFmMWM0MzlmNjcxMjFl
Y2IyYmI4NzU4ODNhMCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTAzLTA1ICBNaWNoYWVsIENhdGFuemFybyAg
PG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dUS10gUmVlbmFibGUgLWZ2
aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRlbiBmb3IgV1BF
KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJL
aXRUZXN0UnVubmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwOgorICAgICAgICAoV1RS
OjpVSVNjcmlwdENvbnRyb2xsZXJHdGs6OnNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxl
ZCk6CisKIDIwMjEtMDMtMDUgIEFha2FzaCBKYWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFtld3NdIFJ1biBld3MgdW5pdC10ZXN0cyB3aXRoIFB5dGhvbiAzCmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3Bw
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcApp
bmRleCAzMDBjYWE3MzU2ZjdlZWU2YTdjMzdhM2UyODgyMzUxZDI4OWEwZmY1Li40NTdlMDMxZWRh
ZjVjMWJhMjU0MGQ5OTdkMTZjZjRmYWI0NDRjZDg1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwCisrKyBiL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvZ3RrL1VJU2NyaXB0Q29udHJvbGxlckd0ay5jcHAKQEAgLTc3LDcgKzc3LDgg
QEAgdm9pZCBVSVNjcmlwdENvbnRyb2xsZXJHdGs6OmRvQXN5bmNUYXNrKEpTVmFsdWVSZWYgY2Fs
bGJhY2spCiAKIHZvaWQgVUlTY3JpcHRDb250cm9sbGVyR3RrOjpzZXRDb250aW51b3VzU3BlbGxD
aGVja2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewotICAgIFdlYktpdDo6VGV4dENoZWNrZXI6
OnNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChlbmFibGVkKTsKKyAgICAvLyBJIHRo
aW5rIHRoaXMgbmVlZHMgdG8gYmUgaW4gYSBXSyBBUEkKKyAgICAvLyBXZWJLaXQ6OlRleHRDaGVj
a2VyOjpzZXRDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoZW5hYmxlZCk7CiB9CiAKIHZv
aWQgVUlTY3JpcHRDb250cm9sbGVyR3RrOjpjb3B5VGV4dChKU1N0cmluZ1JlZiB0ZXh0KQpkaWZm
IC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IGNjNTViYTMyNWZmYjFkOTAyNjNl
ZjA5NmYzZGU0MDVlMDE3MjlmZWIuLjljMjhkNjhhOTE3ZTMxMDY1MWMxZjkyNWI0MmJjMmY5NzA1
YWFiYzEgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MyBAQAorMjAyMS0wMy0wNSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9y
Zz4KKworICAgICAgICBbV1BFXVtHVEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4gKGFu
ZCAtZnZpc2liaWxpdHktaW5saW5lcy1oaWRkZW4gZm9yIFdQRSkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU291cmNlL2NtYWtlL09wdGlvbnNHVEsu
Y21ha2U6CisgICAgICAgICogU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2U6CisKIDIwMjEt
MDMtMDUgIENoYW5nU2VvayBPaCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgogCiAgICAgICAgIEFW
SUYgZGVjb2Rpbmcgc3VwcG9ydAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422424</attachid>
            <date>2021-03-05 14:39:53 -0800</date>
            <delta_ts>2021-03-05 14:51:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210305163952.patch</filename>
            <type>text/plain</type>
            <size>6319</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjJlYTFiOWE4OGVkMWMx
NzBhNDQ1MWEzOTBiMDFjY2QyMDczYTllZi4uNzRhMGUwOTk4MGZlNWJkNzQzNTY3MzczYmNhMjk2
MTQ0YTY1OTI2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5j
bWFrZToKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuY3BwOgorICAgICAgICAqIGRvbS9FdmVu
dFRhcmdldC5oOgorCiAyMDIxLTAzLTA1ICBMYXVybyBNb3VyYSAgPGxtb3VyYUBpZ2FsaWEuY29t
PgogCiAgICAgICAgIENhbnZhczogZHJhd0ltYWdlIHNob3VsZCBub3JtYWxpemUgc3JjUmVjdCBi
ZWZvcmUgY2hlY2tpbmcgaWYgaXQncyBlbXB0eQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
UGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQppbmRl
eCAwMDlmMzQ2NTIzNDlhMGY3YjBkMDVlZDE3NDQ2OTg2NWJkNDdjMzMyLi5kMThhM2E4N2UyMjdl
NTQzMDQyZWRiYjEzMTdkYTQyOTU1ZTY5MzVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Q
bGF0Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQpA
QCAtOCwxMyArOCw2IEBAIGluY2x1ZGUocGxhdGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAog
c2V0KFdlYkNvcmVfT1VUUFVUX05BTUUgV2ViQ29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGlu
ZXMgd2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3Jl
X1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExP
QykKLSAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1h
bGxvYykKLWVuZGlmICgpCi0KIGxpc3QoQVBQRU5EIFdlYkNvcmVfVU5JRklFRF9TT1VSQ0VfTElT
VF9GSUxFUwogICAgICJTb3VyY2VzR1RLLnR4dCIKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5j
cHAKaW5kZXggYjVhOWY0YWZlZWZmZjc0YjVjZmJjZjg0ZjFhNDFiZmMyNmZhMWNlZC4uMTIwNDAx
Zjg4OGJjYTY3NzY4MTFkOTBkMjVmODI0MWY1NTE3MTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRU
YXJnZXQuY3BwCkBAIC02Niw2ICs2Niw4IEBAIFJlZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6
OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVu
dFRhcmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZl
bnRUYXJnZXQoKSA9IGRlZmF1bHQ7CisKIGJvb2wgRXZlbnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAppbmRleCBlNjQz
MzcxOWQ2YWExODNiNDljNTA3OTA0ZGRiOTY0NzJkZWRiZmRhLi4wZGQ1N2Y4MTljNmZjOTYzODEz
NWM2ZDRkMmJkZTg3YWU2Zjg5ZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnRUYXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaApAQCAtMTAz
LDcgKzEwMyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFy
Z2V0RGF0YSgpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+RXZlbnRUYXJnZXQo
KSA9IGRlZmF1bHQ7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB+RXZlbnRUYXJnZXQoKTsK
ICAgICAKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgPSAw
OwogICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGFDb25jdXJyZW50
bHkoKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1Nv
dXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCmluZGV4IDhlYWNiYjAzMGQxODNmMTk4MjFlMDI1
NmQ0MjEyNDBlODY4YTI3ZDMuLjBlNzk5MjlhZTIwYWRmZDhhYzBmOGI3YWY0ODdlZmJmMzkxMWJj
MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJj
ZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwxNCBAQCBlbmRpZiAoKQogCiBD
QUxDVUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRD
T1JFIDM3IDAgMTkpCiAKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKEJVU0VfRVhQT1JUX01BQ1JP
UyBPTikKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorCitz
ZXQoQ01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hYX1ZJU0lC
SUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitz
ZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJs
ZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1
c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5
IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0Vf
SU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFy
eSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRp
b25zV1BFLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKaW5kZXggM2ZlYzdj
MGYxYTFlZGJmYmY1ZDE5OTJkY2Y2MDViNDViMGVmNmRlZi4uY2Y3ZmRhOTYyNWI1MjBhYzk3MTA0
MTVkYzJjZWM1OTlmZjA0OTY5OSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXUEUu
Y21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKQEAgLTYsNiArNiwxMyBA
QCBzZXQoV1BFX0FQSV9WRVJTSU9OIDEuMCkKIAogQ0FMQ1VMQVRFX0xJQlJBUllfVkVSU0lPTlNf
RlJPTV9MSUJUT09MX1RSSVBMRShXRUJLSVQgMTYgMCAxMykKIAorU0VUX0FORF9FWFBPU0VfVE9f
QlVJTEQoQlVTRV9FWFBPUlRfTUFDUk9TIE9OKQorU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNF
X0VYUE9SVF9NQUNST1MgT04pCisKK3NldChDTUFLRV9DX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRl
bikKK3NldChDTUFLRV9DWFhfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KENNQUtFX1ZJ
U0lCSUxJVFlfSU5MSU5FU19ISURERU4gT04pCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJs
ZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1
c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5
IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0Vf
SU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFy
eSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkYWFjOTdiOTY3YjQyYjlhODQ4MzM3ZGMyOWM2YjVhN2Jj
NzdjM2E5Li5lZjRlZTJjMmRlMzA1Njc0OGFkYThjNTUyMTlmZDNhZmMyOTc1MDE1IDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMjEtMDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+
CisKKyAgICAgICAgW1dQRV1bR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuIChhbmQg
LWZ2aXNpYmlsaXR5LWlubGluZXMtaGlkZGVuIGZvciBXUEUpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvZ3RrL1VJU2Ny
aXB0Q29udHJvbGxlckd0ay5jcHA6CisgICAgICAgIChXVFI6OlVJU2NyaXB0Q29udHJvbGxlckd0
azo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKToKKwogMjAyMS0wMy0wNSAgSm9u
YXRoYW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+CiAKICAgICAgICAgW3J1bi13ZWJraXQt
dGVzdHNdIERlbGV0ZSBvbGQgcmVzdWx0cyBzZXJ2ZXIgY29kZQpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvZ3RrL1VJU2NyaXB0Q29udHJvbGxlckd0ay5jcHAKaW5kZXggMzAwY2Fh
NzM1NmY3ZWVlNmE3YzM3YTNlMjg4MjM1MWQyODlhMGZmNS4uNDU3ZTAzMWVkYWY1YzFiYTI1NDBk
OTk3ZDE2Y2Y0ZmFiNDQ0Y2Q4NSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9n
dGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVy
L2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwCkBAIC03Nyw3ICs3Nyw4IEBAIHZvaWQgVUlT
Y3JpcHRDb250cm9sbGVyR3RrOjpkb0FzeW5jVGFzayhKU1ZhbHVlUmVmIGNhbGxiYWNrKQogCiB2
b2lkIFVJU2NyaXB0Q29udHJvbGxlckd0azo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFi
bGVkKGJvb2wgZW5hYmxlZCkKIHsKLSAgICBXZWJLaXQ6OlRleHRDaGVja2VyOjpzZXRDb250aW51
b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoZW5hYmxlZCk7CisgICAgLy8gSSB0aGluayB0aGlzIG5l
ZWRzIHRvIGJlIGluIGEgV0sgQVBJCisgICAgLy8gV2ViS2l0OjpUZXh0Q2hlY2tlcjo6c2V0Q29u
dGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGVuYWJsZWQpOwogfQogCiB2b2lkIFVJU2NyaXB0
Q29udHJvbGxlckd0azo6Y29weVRleHQoSlNTdHJpbmdSZWYgdGV4dCkKZGlmZiAtLWdpdCBhL0No
YW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA5NDIyNWY3Nzk5ZWI5Yzg3Y2EyZGQ4ZGY5OWExYTY2
MTU1OGZjZjlkLi44YzZlY2U1OTYyY2MyMDgyMmNmOGNlYWEyNTBhNzExMzBhN2MwN2VhIDEwMDY0
NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEt
MDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAg
ICAgW1dQRV1bR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuIChhbmQgLWZ2aXNpYmls
aXR5LWlubGluZXMtaGlkZGVuIGZvciBXUEUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlOgorICAg
ICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zV1BFLmNtYWtlOgorCiAyMDIxLTAzLTA1ICBEb24g
T2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5jb20+CiAKICAgICAgICAgW0NNYWtlXSBCdW1w
IGNtYWtlX21pbmltdW1fcmVxdWlyZWQgdmVyc2lvbiB0byAzLjEyIG9yIGxhdGVyCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422426</attachid>
            <date>2021-03-05 14:51:22 -0800</date>
            <delta_ts>2021-03-05 15:25:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210305165121.patch</filename>
            <type>text/plain</type>
            <size>6882</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjJlYTFiOWE4OGVkMWMx
NzBhNDQ1MWEzOTBiMDFjY2QyMDczYTllZi4uNzRhMGUwOTk4MGZlNWJkNzQzNTY3MzczYmNhMjk2
MTQ0YTY1OTI2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5j
bWFrZToKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuY3BwOgorICAgICAgICAqIGRvbS9FdmVu
dFRhcmdldC5oOgorCiAyMDIxLTAzLTA1ICBMYXVybyBNb3VyYSAgPGxtb3VyYUBpZ2FsaWEuY29t
PgogCiAgICAgICAgIENhbnZhczogZHJhd0ltYWdlIHNob3VsZCBub3JtYWxpemUgc3JjUmVjdCBi
ZWZvcmUgY2hlY2tpbmcgaWYgaXQncyBlbXB0eQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
UGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQppbmRl
eCAwMDlmMzQ2NTIzNDlhMGY3YjBkMDVlZDE3NDQ2OTg2NWJkNDdjMzMyLi5kMThhM2E4N2UyMjdl
NTQzMDQyZWRiYjEzMTdkYTQyOTU1ZTY5MzVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Q
bGF0Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQpA
QCAtOCwxMyArOCw2IEBAIGluY2x1ZGUocGxhdGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAog
c2V0KFdlYkNvcmVfT1VUUFVUX05BTUUgV2ViQ29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGlu
ZXMgd2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3Jl
X1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExP
QykKLSAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1h
bGxvYykKLWVuZGlmICgpCi0KIGxpc3QoQVBQRU5EIFdlYkNvcmVfVU5JRklFRF9TT1VSQ0VfTElT
VF9GSUxFUwogICAgICJTb3VyY2VzR1RLLnR4dCIKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5j
cHAKaW5kZXggYjVhOWY0YWZlZWZmZjc0YjVjZmJjZjg0ZjFhNDFiZmMyNmZhMWNlZC4uMTIwNDAx
Zjg4OGJjYTY3NzY4MTFkOTBkMjVmODI0MWY1NTE3MTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRU
YXJnZXQuY3BwCkBAIC02Niw2ICs2Niw4IEBAIFJlZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6
OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVu
dFRhcmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZl
bnRUYXJnZXQoKSA9IGRlZmF1bHQ7CisKIGJvb2wgRXZlbnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAppbmRleCBlNjQz
MzcxOWQ2YWExODNiNDljNTA3OTA0ZGRiOTY0NzJkZWRiZmRhLi4wZGQ1N2Y4MTljNmZjOTYzODEz
NWM2ZDRkMmJkZTg3YWU2Zjg5ZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnRUYXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaApAQCAtMTAz
LDcgKzEwMyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFy
Z2V0RGF0YSgpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+RXZlbnRUYXJnZXQo
KSA9IGRlZmF1bHQ7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB+RXZlbnRUYXJnZXQoKTsK
ICAgICAKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgPSAw
OwogICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGFDb25jdXJyZW50
bHkoKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1Nv
dXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCmluZGV4IDhlYWNiYjAzMGQxODNmMTk4MjFlMDI1
NmQ0MjEyNDBlODY4YTI3ZDMuLjBlNzk5MjlhZTIwYWRmZDhhYzBmOGI3YWY0ODdlZmJmMzkxMWJj
MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJj
ZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwxNCBAQCBlbmRpZiAoKQogCiBD
QUxDVUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRD
T1JFIDM3IDAgMTkpCiAKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKEJVU0VfRVhQT1JUX01BQ1JP
UyBPTikKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorCitz
ZXQoQ01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hYX1ZJU0lC
SUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitz
ZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJs
ZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1
c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5
IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0Vf
SU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFy
eSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRp
b25zV1BFLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKaW5kZXggM2ZlYzdj
MGYxYTFlZGJmYmY1ZDE5OTJkY2Y2MDViNDViMGVmNmRlZi4uY2Y3ZmRhOTYyNWI1MjBhYzk3MTA0
MTVkYzJjZWM1OTlmZjA0OTY5OSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXUEUu
Y21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKQEAgLTYsNiArNiwxMyBA
QCBzZXQoV1BFX0FQSV9WRVJTSU9OIDEuMCkKIAogQ0FMQ1VMQVRFX0xJQlJBUllfVkVSU0lPTlNf
RlJPTV9MSUJUT09MX1RSSVBMRShXRUJLSVQgMTYgMCAxMykKIAorU0VUX0FORF9FWFBPU0VfVE9f
QlVJTEQoQlVTRV9FWFBPUlRfTUFDUk9TIE9OKQorU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNF
X0VYUE9SVF9NQUNST1MgT04pCisKK3NldChDTUFLRV9DX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRl
bikKK3NldChDTUFLRV9DWFhfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KENNQUtFX1ZJ
U0lCSUxJVFlfSU5MSU5FU19ISURERU4gT04pCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJs
ZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1
c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5
IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0Vf
SU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFy
eSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkYWFjOTdiOTY3YjQyYjlhODQ4MzM3ZGMyOWM2YjVhN2Jj
NzdjM2E5Li5lZjRlZTJjMmRlMzA1Njc0OGFkYThjNTUyMTlmZDNhZmMyOTc1MDE1IDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMjEtMDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+
CisKKyAgICAgICAgW1dQRV1bR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuIChhbmQg
LWZ2aXNpYmlsaXR5LWlubGluZXMtaGlkZGVuIGZvciBXUEUpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvZ3RrL1VJU2Ny
aXB0Q29udHJvbGxlckd0ay5jcHA6CisgICAgICAgIChXVFI6OlVJU2NyaXB0Q29udHJvbGxlckd0
azo6c2V0Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKToKKwogMjAyMS0wMy0wNSAgSm9u
YXRoYW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+CiAKICAgICAgICAgW3J1bi13ZWJraXQt
dGVzdHNdIERlbGV0ZSBvbGQgcmVzdWx0cyBzZXJ2ZXIgY29kZQpkaWZmIC0tZ2l0IGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxh
dGZvcm1HVEsuY21ha2UKaW5kZXggZWQzMmM3NGUzODI3ZGNlNjhiNjVhMTdiNDQ5NGVlZGY1MDU3
NzI0Ni4uYjZkYmRkNWMyYTE3ZmFiOTM5NDcxZGUxM2Y5Y2I2YjU1MmFiMDZlNSAxMDA2NDQKLS0t
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZQorKysgYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC0yOCw5ICsyOCw2IEBAIGxpc3QoQVBQRU5E
IFRlc3RXVEZfTElCUkFSSUVTCiAgICAgR1RLOjpHVEsKICkKIAotIyBGSVhNRTogUmVtb3ZlIHdo
ZW4gdHVybmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTgxOTE2Ci1saXN0KEFQUEVORCBUZXN0SmF2YVNjcmlwdENvcmVfTElC
UkFSSUVTIFdURikKLQogIyBUZXN0V2ViQ29yZQogbGlzdChBUFBFTkQgVGVzdFdlYkNvcmVfU09V
UkNFUwogICAgICR7dGVzdF9tYWluX1NPVVJDRVN9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL2d0ay9VSVNjcmlwdENvbnRyb2xsZXJHdGsuY3BwIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9ndGsvVUlTY3JpcHRDb250cm9sbGVyR3RrLmNwcAppbmRleCAzMDBjYWE3MzU2Zjdl
ZWU2YTdjMzdhM2UyODgyMzUxZDI4OWEwZmY1Li40NTdlMDMxZWRhZjVjMWJhMjU0MGQ5OTdkMTZj
ZjRmYWI0NDRjZDg1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2d0ay9VSVNj
cmlwdENvbnRyb2xsZXJHdGsuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvZ3RrL1VJ
U2NyaXB0Q29udHJvbGxlckd0ay5jcHAKQEAgLTc3LDcgKzc3LDggQEAgdm9pZCBVSVNjcmlwdENv
bnRyb2xsZXJHdGs6OmRvQXN5bmNUYXNrKEpTVmFsdWVSZWYgY2FsbGJhY2spCiAKIHZvaWQgVUlT
Y3JpcHRDb250cm9sbGVyR3RrOjpzZXRDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoYm9v
bCBlbmFibGVkKQogewotICAgIFdlYktpdDo6VGV4dENoZWNrZXI6OnNldENvbnRpbnVvdXNTcGVs
bENoZWNraW5nRW5hYmxlZChlbmFibGVkKTsKKyAgICAvLyBJIHRoaW5rIHRoaXMgbmVlZHMgdG8g
YmUgaW4gYSBXSyBBUEkKKyAgICAvLyBXZWJLaXQ6OlRleHRDaGVja2VyOjpzZXRDb250aW51b3Vz
U3BlbGxDaGVja2luZ0VuYWJsZWQoZW5hYmxlZCk7CiB9CiAKIHZvaWQgVUlTY3JpcHRDb250cm9s
bGVyR3RrOjpjb3B5VGV4dChKU1N0cmluZ1JlZiB0ZXh0KQpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9n
IGIvQ2hhbmdlTG9nCmluZGV4IDk0MjI1Zjc3OTllYjljODdjYTJkZDhkZjk5YTFhNjYxNTU4ZmNm
OWQuLjhjNmVjZTU5NjJjYzIwODIyY2Y4Y2VhYTI1MGE3MTEzMGE3YzA3ZWEgMTAwNjQ0Ci0tLSBh
L0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wMy0wNSAg
TWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKworICAgICAgICBbV1BF
XVtHVEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4gKGFuZCAtZnZpc2liaWxpdHktaW5s
aW5lcy1oaWRkZW4gZm9yIFdQRSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2U6CisgICAgICAgICog
U291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2U6CisKIDIwMjEtMDMtMDUgIERvbiBPbG1zdGVh
ZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEJ1bXAgY21ha2Vf
bWluaW11bV9yZXF1aXJlZCB2ZXJzaW9uIHRvIDMuMTIgb3IgbGF0ZXIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422434</attachid>
            <date>2021-03-05 15:25:08 -0800</date>
            <delta_ts>2021-03-05 15:27:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210305172507.patch</filename>
            <type>text/plain</type>
            <size>6874</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzc2ODA4ZmFiNzQ1MzNh
NmZiZTE0YzQwZGU2YjZlMzUwZmRiNTU2MC4uZDZiOGVmYjMxMGQ2NmI5Y2QxODQzZjc2ZGE1ZTUy
ZjU0ZDQ2YzY1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgV2UgbmVlZCB0byBleHBvcnQgdGhlIGRlc3RydWN0b3Igb2YgRXZlbnRUYXJnZXQu
CisKKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5jbWFrZToKKyAgICAgICAgKiBkb20vRXZlbnRUYXJn
ZXQuY3BwOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldC5oOgorCiAyMDIxLTAzLTA1ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgd29yZC13cmFwL292ZXJmbG93
LXdyYXAgIm92ZXJ3cml0ZSIgaHlwaGVucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxh
dGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQppbmRleCAw
MDlmMzQ2NTIzNDlhMGY3YjBkMDVlZDE3NDQ2OTg2NWJkNDdjMzMyLi5kMThhM2E4N2UyMjdlNTQz
MDQyZWRiYjEzMTdkYTQyOTU1ZTY5MzVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0
Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAt
OCwxMyArOCw2IEBAIGluY2x1ZGUocGxhdGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAogc2V0
KFdlYkNvcmVfT1VUUFVUX05BTUUgV2ViQ29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGluZXMg
d2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3JlX1BS
SVZBVEVfTElCUkFSSUVTIFdlYktpdDo6V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExPQykK
LSAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxv
YykKLWVuZGlmICgpCi0KIGxpc3QoQVBQRU5EIFdlYkNvcmVfVU5JRklFRF9TT1VSQ0VfTElTVF9G
SUxFUwogICAgICJTb3VyY2VzR1RLLnR4dCIKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAK
aW5kZXggYjVhOWY0YWZlZWZmZjc0YjVjZmJjZjg0ZjFhNDFiZmMyNmZhMWNlZC4uMTIwNDAxZjg4
OGJjYTY3NzY4MTFkOTBkMjVmODI0MWY1NTE3MTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJn
ZXQuY3BwCkBAIC02Niw2ICs2Niw4IEBAIFJlZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6OmNy
ZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVudFRh
cmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZlbnRU
YXJnZXQoKSA9IGRlZmF1bHQ7CisKIGJvb2wgRXZlbnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAppbmRleCBlNjQzMzcx
OWQ2YWExODNiNDljNTA3OTA0ZGRiOTY0NzJkZWRiZmRhLi4wZGQ1N2Y4MTljNmZjOTYzODEzNWM2
ZDRkMmJkZTg3YWU2Zjg5ZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRU
YXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaApAQCAtMTAzLDcg
KzEwMyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0
RGF0YSgpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+RXZlbnRUYXJnZXQoKSA9
IGRlZmF1bHQ7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB+RXZlbnRUYXJnZXQoKTsKICAg
ICAKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgPSAwOwog
ICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGFDb25jdXJyZW50bHko
KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1NvdXJj
ZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCmluZGV4IDZhMWI5NzEyNmM5YjBmNjUxOTE0ZmM0YzAz
NjMwZTE0OTk0NTJlZGIuLjMyMzNiM2E0ZWI1M2MyNjMzMmJjYmY4NWY4YTE4ZWZkOWYyNGFhYjQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9j
bWFrZS9PcHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwxNCBAQCBlbmRpZiAoKQogCiBDQUxD
VUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JF
IDM3IDAgMTkpCiAKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKEJVU0VfRVhQT1JUX01BQ1JPUyBP
TikKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorCitzZXQo
Q01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hYX1ZJU0lCSUxJ
VFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitzZXQo
V1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJsZXMs
IGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1c2Ug
dGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5IHRo
ZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0VfSU5T
VEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFyeSBp
bnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25z
V1BFLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKaW5kZXggM2ZlYzdjMGYx
YTFlZGJmYmY1ZDE5OTJkY2Y2MDViNDViMGVmNmRlZi4uY2Y3ZmRhOTYyNWI1MjBhYzk3MTA0MTVk
YzJjZWM1OTlmZjA0OTY5OSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21h
a2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKQEAgLTYsNiArNiwxMyBAQCBz
ZXQoV1BFX0FQSV9WRVJTSU9OIDEuMCkKIAogQ0FMQ1VMQVRFX0xJQlJBUllfVkVSU0lPTlNfRlJP
TV9MSUJUT09MX1RSSVBMRShXRUJLSVQgMTYgMCAxMykKIAorU0VUX0FORF9FWFBPU0VfVE9fQlVJ
TEQoQlVTRV9FWFBPUlRfTUFDUk9TIE9OKQorU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNFX0VY
UE9SVF9NQUNST1MgT04pCisKK3NldChDTUFLRV9DX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikK
K3NldChDTUFLRV9DWFhfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KENNQUtFX1ZJU0lC
SUxJVFlfSU5MSU5FU19ISURERU4gT04pCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJsZXMs
IGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1c2Ug
dGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5IHRo
ZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0VfSU5T
VEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFyeSBp
bnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rv
b2xzL0NoYW5nZUxvZwppbmRleCBjNGQxNmUyNmI4Mjg0NGZmNDMxYzcwNWE3ZWRhYjY0MWUxYzg3
ZTU3Li5hZjc2MjNiMTg4MWEyYjk5YzVlM2NmYmFhNzRiMzU0NmM1ZDVkOTA3IDEwMDY0NAotLS0g
YS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMjEtMDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisK
KyAgICAgICAgW1dQRV1bR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuIChhbmQgLWZ2
aXNpYmlsaXR5LWlubGluZXMtaGlkZGVuIGZvciBXUEUpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21h
a2U6CisKIDIwMjEtMDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5v
cmc+CiAKICAgICAgICAgW0dUS10gQ2xlYW4gdXAgR1RLLXNwZWNpZmljIHRleHQgY2hlY2tlciBz
dHVmZgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZSBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMjMxYjMzMzczNDAy
MTIyMGFiMzY2MmIwOWVkNjVlZWFhYzEwNDdlMy4uOTFlZTQ5YTQ0YTViOGE5MTFhZTIyNjEyN2Fi
ZTZjZmNjYzY1Y2RlNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdU
Sy5jbWFrZQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC0y
OCw5ICsyOCw2IEBAIGxpc3QoQVBQRU5EIFRlc3RXVEZfTElCUkFSSUVTCiAgICAgR1RLOjpHVEsK
ICkKIAotIyBGSVhNRTogUmVtb3ZlIHdoZW4gdHVybmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eSBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2Ci1saXN0KEFQUEVO
RCBUZXN0SmF2YVNjcmlwdENvcmVfTElCUkFSSUVTIFdURikKLQogIyBUZXN0V2ViQ29yZQogbGlz
dChBUFBFTkQgVGVzdFdlYkNvcmVfU09VUkNFUwogICAgICR7dGVzdF9tYWluX1NPVVJDRVN9CmRp
ZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggODA1ODJhNTI4OTBlYjhlMWUy
YzM5YTg4OTg3MDVjNjI3ZjBjNjRhMC4uZGNhOTllOGMwN2RjNDJkMWY3NTQ0ZmU4MzNhNThlZmI5
OTk3ODk2ZCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI1IEBACisyMDIxLTAzLTA1ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUu
b3JnPgorCisgICAgICAgIFtXUEVdW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAo
YW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gbm9uLURFVkVMT1BFUl9NT0RFIGJ1
aWxkcywgd2UgcmVseSBvbiBhIGxpbmtlciB2ZXJzaW9uIHNjcmlwdCB0byBoaWRlIHN5bWJvbHMg
dGhhdCB3ZQorICAgICAgICBkb24ndCB3YW50IHRvIGV4cG9ydC4gQnVpbGRpbmcgd2l0aCBoaWRk
ZW4gdmlzaWJpbGl0eSBtaWdodCBzZWVtIHJlZHVuZGFudCB3aXRoIHRoaXMsIGJ1dAorICAgICAg
ICBhY3R1YWxseSBidWlsZGluZyB3aXRoIGhpZGRlbiB2aXNpYmlsaXR5IGhhcyBhZHZhbnRhZ2Vz
IGFueXdheS4gU2VlCisgICAgICAgIGh0dHBzOi8vZ2NjLmdudS5vcmcvd2lraS9WaXNpYmlsaXR5
LgorCisgICAgICAgIE5vdGUgdGhhdCBJJ20gbm90IGNvbmZpZGVudCBHVEsgcG9ydCBjYW4gc2Fm
ZWx5IHVzZSAtZnZpc2liaWxpdHktaW5saW5lcy1oaWRkZW4sIHNpbmNlIGl0J3MKKyAgICAgICAg
c3BsaXQgYmV0d2VlbiB0d28gc2hhcmVkIG9iamVjdHMuIEJ1dCBpdCBzaG91bGQgYmUgcGVyZmVj
dGx5IHNhZmUgZm9yIFdQRSwgd2hpY2ggaXMgb25seSBvbmUKKyAgICAgICAgc2hhcmVkIG9iamVj
dC4gVGhlIG90aGVyIGRpZmZlcmVuY2UgZnJvbSBXUEUgaXMgdGhhdCBiZWNhdXNlIEdUSyBpcyBz
cGxpdCBpbnRvIHR3byBzaGFyZWQKKyAgICAgICAgb2JqZWN0cywgR1RLIG5lZWRzIHRvIGJ1aWxk
IGJtYWxsb2MgYW5kIFdURiBhcyBDTWFrZSBPQkpFQ1QgbGlicmFyaWVzLCB3aGljaCBpcyBlZmZl
Y3RpdmVseQorICAgICAgICB0aGUgc2FtZSBhcyB1c2luZyAtV2wsLS13aG9sZS1hcmNoaXZlIHRv
IHByZXZlbnQgc3ltYm9scyBmcm9tIGJlaW5nIHByZW1hdHVyZWx5IHN0cmlwcGVkCisgICAgICAg
IGF3YXkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZToKKyAgICAg
ICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc1dQRS5jbWFrZToKKwogMjAyMS0wMy0wNSAgTWljaGFl
bCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBSZW1v
dmUgQUREX1dIT0xFX0FSQ0hJVkVfVE9fTElCUkFSSUVTCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422437</attachid>
            <date>2021-03-05 15:27:42 -0800</date>
            <delta_ts>2021-03-05 15:33:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210305172741.patch</filename>
            <type>text/plain</type>
            <size>7023</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzc2ODA4ZmFiNzQ1MzNh
NmZiZTE0YzQwZGU2YjZlMzUwZmRiNTU2MC4uZDZiOGVmYjMxMGQ2NmI5Y2QxODQzZjc2ZGE1ZTUy
ZjU0ZDQ2YzY1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgV2UgbmVlZCB0byBleHBvcnQgdGhlIGRlc3RydWN0b3Igb2YgRXZlbnRUYXJnZXQu
CisKKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5jbWFrZToKKyAgICAgICAgKiBkb20vRXZlbnRUYXJn
ZXQuY3BwOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldC5oOgorCiAyMDIxLTAzLTA1ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgd29yZC13cmFwL292ZXJmbG93
LXdyYXAgIm92ZXJ3cml0ZSIgaHlwaGVucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxh
dGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQppbmRleCAw
MDlmMzQ2NTIzNDlhMGY3YjBkMDVlZDE3NDQ2OTg2NWJkNDdjMzMyLi5kMThhM2E4N2UyMjdlNTQz
MDQyZWRiYjEzMTdkYTQyOTU1ZTY5MzVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0
Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAt
OCwxMyArOCw2IEBAIGluY2x1ZGUocGxhdGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAogc2V0
KFdlYkNvcmVfT1VUUFVUX05BTUUgV2ViQ29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGluZXMg
d2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3JlX1BS
SVZBVEVfTElCUkFSSUVTIFdlYktpdDo6V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExPQykK
LSAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxv
YykKLWVuZGlmICgpCi0KIGxpc3QoQVBQRU5EIFdlYkNvcmVfVU5JRklFRF9TT1VSQ0VfTElTVF9G
SUxFUwogICAgICJTb3VyY2VzR1RLLnR4dCIKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAK
aW5kZXggYjVhOWY0YWZlZWZmZjc0YjVjZmJjZjg0ZjFhNDFiZmMyNmZhMWNlZC4uMTIwNDAxZjg4
OGJjYTY3NzY4MTFkOTBkMjVmODI0MWY1NTE3MTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJn
ZXQuY3BwCkBAIC02Niw2ICs2Niw4IEBAIFJlZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6OmNy
ZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVudFRh
cmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZlbnRU
YXJnZXQoKSA9IGRlZmF1bHQ7CisKIGJvb2wgRXZlbnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAppbmRleCBlNjQzMzcx
OWQ2YWExODNiNDljNTA3OTA0ZGRiOTY0NzJkZWRiZmRhLi4wZGQ1N2Y4MTljNmZjOTYzODEzNWM2
ZDRkMmJkZTg3YWU2Zjg5ZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRU
YXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaApAQCAtMTAzLDcg
KzEwMyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0
RGF0YSgpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+RXZlbnRUYXJnZXQoKSA9
IGRlZmF1bHQ7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB+RXZlbnRUYXJnZXQoKTsKICAg
ICAKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgPSAwOwog
ICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGFDb25jdXJyZW50bHko
KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1NvdXJj
ZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCmluZGV4IDZhMWI5NzEyNmM5YjBmNjUxOTE0ZmM0YzAz
NjMwZTE0OTk0NTJlZGIuLjMyMzNiM2E0ZWI1M2MyNjMzMmJjYmY4NWY4YTE4ZWZkOWYyNGFhYjQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9j
bWFrZS9PcHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwxNCBAQCBlbmRpZiAoKQogCiBDQUxD
VUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JF
IDM3IDAgMTkpCiAKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKEJVU0VfRVhQT1JUX01BQ1JPUyBP
TikKK1NFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9FWFBPUlRfTUFDUk9TIE9OKQorCitzZXQo
Q01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hYX1ZJU0lCSUxJ
VFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpFQ1QpCitzZXQo
V1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJsZXMs
IGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1c2Ug
dGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5IHRo
ZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0VfSU5T
VEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFyeSBp
bnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25z
V1BFLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKaW5kZXggM2ZlYzdjMGYx
YTFlZGJmYmY1ZDE5OTJkY2Y2MDViNDViMGVmNmRlZi4uY2Y3ZmRhOTYyNWI1MjBhYzk3MTA0MTVk
YzJjZWM1OTlmZjA0OTY5OSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21h
a2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UKQEAgLTYsNiArNiwxMyBAQCBz
ZXQoV1BFX0FQSV9WRVJTSU9OIDEuMCkKIAogQ0FMQ1VMQVRFX0xJQlJBUllfVkVSU0lPTlNfRlJP
TV9MSUJUT09MX1RSSVBMRShXRUJLSVQgMTYgMCAxMykKIAorU0VUX0FORF9FWFBPU0VfVE9fQlVJ
TEQoQlVTRV9FWFBPUlRfTUFDUk9TIE9OKQorU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNFX0VY
UE9SVF9NQUNST1MgT04pCisKK3NldChDTUFLRV9DX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikK
K3NldChDTUFLRV9DWFhfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KENNQUtFX1ZJU0lC
SUxJVFlfSU5MSU5FU19ISURERU4gT04pCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2YXJpYWJsZXMs
IGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdlIGNhbiB1c2Ug
dGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxhdGVkIGJ5IHRo
ZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7Q01BS0VfSU5T
VEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8gbGlicmFyeSBp
bnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rv
b2xzL0NoYW5nZUxvZwppbmRleCBjNGQxNmUyNmI4Mjg0NGZmNDMxYzcwNWE3ZWRhYjY0MWUxYzg3
ZTU3Li5hZjc2MjNiMTg4MWEyYjk5YzVlM2NmYmFhNzRiMzU0NmM1ZDVkOTA3IDEwMDY0NAotLS0g
YS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMjEtMDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisK
KyAgICAgICAgW1dQRV1bR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuIChhbmQgLWZ2
aXNpYmlsaXR5LWlubGluZXMtaGlkZGVuIGZvciBXUEUpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21h
a2U6CisKIDIwMjEtMDMtMDUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5v
cmc+CiAKICAgICAgICAgW0dUS10gQ2xlYW4gdXAgR1RLLXNwZWNpZmljIHRleHQgY2hlY2tlciBz
dHVmZgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZSBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMjMxYjMzMzczNDAy
MTIyMGFiMzY2MmIwOWVkNjVlZWFhYzEwNDdlMy4uOTFlZTQ5YTQ0YTViOGE5MTFhZTIyNjEyN2Fi
ZTZjZmNjYzY1Y2RlNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdU
Sy5jbWFrZQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC0y
OCw5ICsyOCw2IEBAIGxpc3QoQVBQRU5EIFRlc3RXVEZfTElCUkFSSUVTCiAgICAgR1RLOjpHVEsK
ICkKIAotIyBGSVhNRTogUmVtb3ZlIHdoZW4gdHVybmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eSBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2Ci1saXN0KEFQUEVO
RCBUZXN0SmF2YVNjcmlwdENvcmVfTElCUkFSSUVTIFdURikKLQogIyBUZXN0V2ViQ29yZQogbGlz
dChBUFBFTkQgVGVzdFdlYkNvcmVfU09VUkNFUwogICAgICR7dGVzdF9tYWluX1NPVVJDRVN9CmRp
ZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggODA1ODJhNTI4OTBlYjhlMWUy
YzM5YTg4OTg3MDVjNjI3ZjBjNjRhMC4uZTNiZmFlYjVmZjRjYjllZDE3ZDU5Y2M2NzdjNWU0MTc4
YWVlMjM4YSAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI4IEBACisyMDIxLTAzLTA1ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUu
b3JnPgorCisgICAgICAgIFtXUEVdW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAo
YW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gbm9uLURFVkVMT1BFUl9NT0RFIGJ1
aWxkcywgd2UgcmVseSBvbiBhIGxpbmtlciB2ZXJzaW9uIHNjcmlwdCB0byBoaWRlIHN5bWJvbHMg
dGhhdCB3ZQorICAgICAgICBkb24ndCB3YW50IHRvIGV4cG9ydC4gQnVpbGRpbmcgd2l0aCBoaWRk
ZW4gdmlzaWJpbGl0eSBtaWdodCBzZWVtIHJlZHVuZGFudCB3aXRoIHRoaXMsIGJ1dAorICAgICAg
ICBhY3R1YWxseSBidWlsZGluZyB3aXRoIGhpZGRlbiB2aXNpYmlsaXR5IGhhcyBhZHZhbnRhZ2Vz
IGFueXdheS4gU2VlCisgICAgICAgIGh0dHBzOi8vZ2NjLmdudS5vcmcvd2lraS9WaXNpYmlsaXR5
LgorCisgICAgICAgIE5vdGUgdGhhdCBJJ20gbm90IGNvbmZpZGVudCBHVEsgcG9ydCBjYW4gc2Fm
ZWx5IHVzZSAtZnZpc2liaWxpdHktaW5saW5lcy1oaWRkZW4sIHNpbmNlIGl0J3MKKyAgICAgICAg
c3BsaXQgYmV0d2VlbiB0d28gc2hhcmVkIG9iamVjdHMuIEJ1dCBpdCBzaG91bGQgYmUgcGVyZmVj
dGx5IHNhZmUgZm9yIFdQRSwgd2hpY2ggaXMgb25seSBvbmUKKyAgICAgICAgc2hhcmVkIG9iamVj
dC4gVGhlIG90aGVyIGRpZmZlcmVuY2UgZnJvbSBXUEUgaXMgdGhhdCBiZWNhdXNlIEdUSyBpcyBz
cGxpdCBpbnRvIHR3byBzaGFyZWQKKyAgICAgICAgb2JqZWN0cywgR1RLIG5lZWRzIHRvIGJ1aWxk
IGJtYWxsb2MgYW5kIFdURiBhcyBDTWFrZSBPQkpFQ1QgbGlicmFyaWVzLCB3aGljaCBpcyBlZmZl
Y3RpdmVseQorICAgICAgICB0aGUgc2FtZSBhcyB1c2luZyAtV2wsLS13aG9sZS1hcmNoaXZlIHRv
IHByZXZlbnQgc3ltYm9scyBmcm9tIGJlaW5nIHByZW1hdHVyZWx5IHN0cmlwcGVkCisgICAgICAg
IGF3YXkuCisKKyAgICAgICAgUC5TLiBNYWpvciBjcmVkaXQgdG8gRG9uIE9sbXN0ZWFkLCB3aG8g
ZGlkIG1vc3Qgb2YgdGhlIHdvcmsgdG8gbWFrZSB0aGlzIHBvc3NpYmxlLCB3aGljaCBoYXMKKyAg
ICAgICAgYWxyZWFkeSBsYW5kZWQgaW4gcHJldmlvdXMgcGF0Y2hlcy4KKworICAgICAgICAqIFNv
dXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRp
b25zV1BFLmNtYWtlOgorCiAyMDIxLTAzLTA1ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnph
cm9AZ25vbWUub3JnPgogCiAgICAgICAgIFtHVEtdIFJlbW92ZSBBRERfV0hPTEVfQVJDSElWRV9U
T19MSUJSQVJJRVMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422441</attachid>
            <date>2021-03-05 15:33:32 -0800</date>
            <delta_ts>2021-03-06 06:37:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210305173331.patch</filename>
            <type>text/plain</type>
            <size>6829</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzc2ODA4ZmFiNzQ1MzNh
NmZiZTE0YzQwZGU2YjZlMzUwZmRiNTU2MC4uZDZiOGVmYjMxMGQ2NmI5Y2QxODQzZjc2ZGE1ZTUy
ZjU0ZDQ2YzY1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgV2UgbmVlZCB0byBleHBvcnQgdGhlIGRlc3RydWN0b3Igb2YgRXZlbnRUYXJnZXQu
CisKKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5jbWFrZToKKyAgICAgICAgKiBkb20vRXZlbnRUYXJn
ZXQuY3BwOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldC5oOgorCiAyMDIxLTAzLTA1ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgd29yZC13cmFwL292ZXJmbG93
LXdyYXAgIm92ZXJ3cml0ZSIgaHlwaGVucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxh
dGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQppbmRleCAw
MDlmMzQ2NTIzNDlhMGY3YjBkMDVlZDE3NDQ2OTg2NWJkNDdjMzMyLi5kMThhM2E4N2UyMjdlNTQz
MDQyZWRiYjEzMTdkYTQyOTU1ZTY5MzVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0
Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAt
OCwxMyArOCw2IEBAIGluY2x1ZGUocGxhdGZvcm0vVGV4dHVyZU1hcHBlci5jbWFrZSkKIAogc2V0
KFdlYkNvcmVfT1VUUFVUX05BTUUgV2ViQ29yZUdUSykKIAotIyBGSVhNRTogaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotIyBSZW1vdmUgdGhlc2UgbGluZXMg
d2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmlsaXR5Ci1saXN0KEFQUEVORCBXZWJDb3JlX1BS
SVZBVEVfTElCUkFSSUVTIFdlYktpdDo6V1RGKQotaWYgKE5PVCBVU0VfU1lTVEVNX01BTExPQykK
LSAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfTElCUkFSSUVTIFdlYktpdDo6Ym1hbGxv
YykKLWVuZGlmICgpCi0KIGxpc3QoQVBQRU5EIFdlYkNvcmVfVU5JRklFRF9TT1VSQ0VfTElTVF9G
SUxFUwogICAgICJTb3VyY2VzR1RLLnR4dCIKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAK
aW5kZXggYjVhOWY0YWZlZWZmZjc0YjVjZmJjZjg0ZjFhNDFiZmMyNmZhMWNlZC4uMTIwNDAxZjg4
OGJjYTY3NzY4MTFkOTBkMjVmODI0MWY1NTE3MTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJn
ZXQuY3BwCkBAIC02Niw2ICs2Niw4IEBAIFJlZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6OmNy
ZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVudFRh
cmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZlbnRU
YXJnZXQoKSA9IGRlZmF1bHQ7CisKIGJvb2wgRXZlbnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAppbmRleCBlNjQzMzcx
OWQ2YWExODNiNDljNTA3OTA0ZGRiOTY0NzJkZWRiZmRhLi4wZGQ1N2Y4MTljNmZjOTYzODEzNWM2
ZDRkMmJkZTg3YWU2Zjg5ZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRU
YXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaApAQCAtMTAzLDcg
KzEwMyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0
RGF0YSgpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+RXZlbnRUYXJnZXQoKSA9
IGRlZmF1bHQ7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB+RXZlbnRUYXJnZXQoKTsKICAg
ICAKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgPSAwOwog
ICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGFDb25jdXJyZW50bHko
KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1NvdXJj
ZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCmluZGV4IDZhMWI5NzEyNmM5YjBmNjUxOTE0ZmM0YzAz
NjMwZTE0OTk0NTJlZGIuLjdmMGNkODg1NWQwZjFiZjc0NWMwYjEwODVjNzU0OTg4OTE5NDcxNGMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9j
bWFrZS9PcHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwxMSBAQCBlbmRpZiAoKQogCiBDQUxD
VUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JF
IDM3IDAgMTkpCiAKK3NldChDTUFLRV9DX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChD
TUFLRV9DWFhfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KGJtYWxsb2NfTElCUkFSWV9U
WVBFIE9CSkVDVCkKK3NldChXVEZfTElCUkFSWV9UWVBFIE9CSkVDVCkKKwogIyBUaGVzZSBhcmUg
c2hhcmVkIHZhcmlhYmxlcywgYnV0IHdlIHNwZWNpYWwgY2FzZSB0aGVpciBkZWZpbml0aW9uIHNv
IHRoYXQgd2UgY2FuIHVzZSB0aGUKICMgQ01BS0VfSU5TVEFMTF8qIHZhcmlhYmxlcyB0aGF0IGFy
ZSBwb3B1bGF0ZWQgYnkgdGhlIEdOVUluc3RhbGxEaXJzIG1hY3JvLgogc2V0KExJQl9JTlNUQUxM
X0RJUiAiJHtDTUFLRV9JTlNUQUxMX0ZVTExfTElCRElSfSIgQ0FDSEUgUEFUSCAiQWJzb2x1dGUg
cGF0aCB0byBsaWJyYXJ5IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkiKQpkaWZmIC0tZ2l0IGEvU291
cmNlL2NtYWtlL09wdGlvbnNXUEUuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc1dQRS5jbWFr
ZQppbmRleCAzZmVjN2MwZjFhMWVkYmZiZjVkMTk5MmRjZjYwNWI0NWIwZWY2ZGVmLi43MWVlODY4
NzkwZTcwNDgwYjBlM2VlMWU5YzhiNWU3ZGFkNWE5ZTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21h
a2UvT3B0aW9uc1dQRS5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc1dQRS5jbWFrZQpA
QCAtNiw2ICs2LDEwIEBAIHNldChXUEVfQVBJX1ZFUlNJT04gMS4wKQogCiBDQUxDVUxBVEVfTElC
UkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKFdFQktJVCAxNiAwIDEzKQogCitzZXQo
Q01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hYX1ZJU0lCSUxJ
VFlfUFJFU0VUIGhpZGRlbikKK3NldChDTUFLRV9WSVNJQklMSVRZX0lOTElORVNfSElEREVOIE9O
KQorCiAjIFRoZXNlIGFyZSBzaGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRo
ZWlyIGRlZmluaXRpb24gc28gdGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyog
dmFyaWFibGVzIHRoYXQgYXJlIHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8u
CiBzZXQoTElCX0lOU1RBTExfRElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNI
RSBQQVRIICJBYnNvbHV0ZSBwYXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIp
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzRk
MTZlMjZiODI4NDRmZjQzMWM3MDVhN2VkYWI2NDFlMWM4N2U1Ny4uYWY3NjIzYjE4ODFhMmI5OWM1
ZTNjZmJhYTc0YjM1NDZjNWQ1ZDkwNyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIxLTAzLTA1ICBNaWNoYWVsIENh
dGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dUS10gUmVl
bmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRl
biBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBUZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlOgorCiAyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgogCiAgICAgICAgIFtHVEtdIENs
ZWFuIHVwIEdUSy1zcGVjaWZpYyB0ZXh0IGNoZWNrZXIgc3R1ZmYKZGlmZiAtLWdpdCBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Bs
YXRmb3JtR1RLLmNtYWtlCmluZGV4IDIzMWIzMzM3MzQwMjEyMjBhYjM2NjJiMDllZDY1ZWVhYWMx
MDQ3ZTMuLjkxZWU0OWE0NGE1YjhhOTExYWUyMjYxMjdhYmU2Y2ZjY2M2NWNkZTUgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAtMjgsOSArMjgsNiBAQCBsaXN0KEFQUEVO
RCBUZXN0V1RGX0xJQlJBUklFUwogICAgIEdUSzo6R1RLCiApCiAKLSMgRklYTUU6IFJlbW92ZSB3
aGVuIHR1cm5pbmcgb24gaGlkZGVuIHZpc2liaWxpdHkgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4MTkxNgotbGlzdChBUFBFTkQgVGVzdEphdmFTY3JpcHRDb3JlX0xJ
QlJBUklFUyBXVEYpCi0KICMgVGVzdFdlYkNvcmUKIGxpc3QoQVBQRU5EIFRlc3RXZWJDb3JlX1NP
VVJDRVMKICAgICAke3Rlc3RfbWFpbl9TT1VSQ0VTfQpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIv
Q2hhbmdlTG9nCmluZGV4IDgwNTgyYTUyODkwZWI4ZTFlMmMzOWE4ODk4NzA1YzYyN2YwYzY0YTAu
LmUzYmZhZWI1ZmY0Y2I5ZWQxN2Q1OWNjNjc3YzVlNDE3OGFlZTIzOGEgMTAwNjQ0Ci0tLSBhL0No
YW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAyMS0wMy0wNSAgTWlj
aGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKworICAgICAgICBbV1BFXVtH
VEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4gKGFuZCAtZnZpc2liaWxpdHktaW5saW5l
cy1oaWRkZW4gZm9yIFdQRSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEluIG5vbi1ERVZFTE9QRVJfTU9ERSBidWlsZHMsIHdlIHJlbHkgb24gYSBsaW5r
ZXIgdmVyc2lvbiBzY3JpcHQgdG8gaGlkZSBzeW1ib2xzIHRoYXQgd2UKKyAgICAgICAgZG9uJ3Qg
d2FudCB0byBleHBvcnQuIEJ1aWxkaW5nIHdpdGggaGlkZGVuIHZpc2liaWxpdHkgbWlnaHQgc2Vl
bSByZWR1bmRhbnQgd2l0aCB0aGlzLCBidXQKKyAgICAgICAgYWN0dWFsbHkgYnVpbGRpbmcgd2l0
aCBoaWRkZW4gdmlzaWJpbGl0eSBoYXMgYWR2YW50YWdlcyBhbnl3YXkuIFNlZQorICAgICAgICBo
dHRwczovL2djYy5nbnUub3JnL3dpa2kvVmlzaWJpbGl0eS4KKworICAgICAgICBOb3RlIHRoYXQg
SSdtIG5vdCBjb25maWRlbnQgR1RLIHBvcnQgY2FuIHNhZmVseSB1c2UgLWZ2aXNpYmlsaXR5LWlu
bGluZXMtaGlkZGVuLCBzaW5jZSBpdCdzCisgICAgICAgIHNwbGl0IGJldHdlZW4gdHdvIHNoYXJl
ZCBvYmplY3RzLiBCdXQgaXQgc2hvdWxkIGJlIHBlcmZlY3RseSBzYWZlIGZvciBXUEUsIHdoaWNo
IGlzIG9ubHkgb25lCisgICAgICAgIHNoYXJlZCBvYmplY3QuIFRoZSBvdGhlciBkaWZmZXJlbmNl
IGZyb20gV1BFIGlzIHRoYXQgYmVjYXVzZSBHVEsgaXMgc3BsaXQgaW50byB0d28gc2hhcmVkCisg
ICAgICAgIG9iamVjdHMsIEdUSyBuZWVkcyB0byBidWlsZCBibWFsbG9jIGFuZCBXVEYgYXMgQ01h
a2UgT0JKRUNUIGxpYnJhcmllcywgd2hpY2ggaXMgZWZmZWN0aXZlbHkKKyAgICAgICAgdGhlIHNh
bWUgYXMgdXNpbmcgLVdsLC0td2hvbGUtYXJjaGl2ZSB0byBwcmV2ZW50IHN5bWJvbHMgZnJvbSBi
ZWluZyBwcmVtYXR1cmVseSBzdHJpcHBlZAorICAgICAgICBhd2F5LgorCisgICAgICAgIFAuUy4g
TWFqb3IgY3JlZGl0IHRvIERvbiBPbG1zdGVhZCwgd2hvIGRpZCBtb3N0IG9mIHRoZSB3b3JrIHRv
IG1ha2UgdGhpcyBwb3NzaWJsZSwgd2hpY2ggaGFzCisgICAgICAgIGFscmVhZHkgbGFuZGVkIGlu
IHByZXZpb3VzIHBhdGNoZXMuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5j
bWFrZToKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc1dQRS5jbWFrZToKKwogMjAyMS0w
My0wNSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAogICAgICAg
ICBbR1RLXSBSZW1vdmUgQUREX1dIT0xFX0FSQ0hJVkVfVE9fTElCUkFSSUVTCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422491</attachid>
            <date>2021-03-06 06:37:19 -0800</date>
            <delta_ts>2021-03-09 10:15:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210306083718.patch</filename>
            <type>text/plain</type>
            <size>5805</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzc2ODA4ZmFiNzQ1MzNh
NmZiZTE0YzQwZGU2YjZlMzUwZmRiNTU2MC4uMWY5NmUzYzRjNzFkMjExYmMzYmVkNTlhZjY5ZGI4
ZTEwYjk1ZjE2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA2ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisg
ICAgICAgIFdlIG5lZWQgdG8gZXhwb3J0IHRoZSBkZXN0cnVjdG9yIG9mIEV2ZW50VGFyZ2V0Lgor
CisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisgICAgICAgICogZG9tL0V2ZW50VGFyZ2V0
LmNwcDoKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuaDoKKwogMjAyMS0wMy0wNSAgWmFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIHdvcmQtd3JhcC9vdmVyZmxvdy13
cmFwICJvdmVyd3JpdGUiIGh5cGhlbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRm
b3JtR1RLLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMDA5
ZjM0NjUyMzQ5YTBmN2IwZDA1ZWQxNzQ0Njk4NjViZDQ3YzMzMi4uZDE4YTNhODdlMjI3ZTU0MzA0
MmVkYmIxMzE3ZGE0Mjk1NWU2OTM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZv
cm1HVEsuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTgs
MTMgKzgsNiBAQCBpbmNsdWRlKHBsYXRmb3JtL1RleHR1cmVNYXBwZXIuY21ha2UpCiAKIHNldChX
ZWJDb3JlX09VVFBVVF9OQU1FIFdlYkNvcmVHVEspCiAKLSMgRklYTUU6IGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKLSMgUmVtb3ZlIHRoZXNlIGxpbmVzIHdo
ZW4gdHVybmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eQotbGlzdChBUFBFTkQgV2ViQ29yZV9QUklW
QVRFX0xJQlJBUklFUyBXZWJLaXQ6OldURikKLWlmIChOT1QgVVNFX1NZU1RFTV9NQUxMT0MpCi0g
ICAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJBUklFUyBXZWJLaXQ6OmJtYWxsb2Mp
Ci1lbmRpZiAoKQotCiBsaXN0KEFQUEVORCBXZWJDb3JlX1VOSUZJRURfU09VUkNFX0xJU1RfRklM
RVMKICAgICAiU291cmNlc0dUSy50eHQiCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudFRhcmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCmlu
ZGV4IGI1YTlmNGFmZWVmZmY3NGI1Y2ZiY2Y4NGYxYTQxYmZjMjZmYTFjZWQuLjEyMDQwMWY4ODhi
Y2E2Nzc2ODExZDkwZDI1ZjgyNDFmNTUxNzE3NDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FdmVudFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0
LmNwcApAQCAtNjYsNiArNjYsOCBAQCBSZWY8RXZlbnRUYXJnZXQ+IEV2ZW50VGFyZ2V0OjpjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICByZXR1cm4gRXZlbnRUYXJn
ZXRDb25jcmV0ZTo6Y3JlYXRlKGNvbnRleHQpOwogfQogCitFdmVudFRhcmdldDo6fkV2ZW50VGFy
Z2V0KCkgPSBkZWZhdWx0OworCiBib29sIEV2ZW50VGFyZ2V0Ojppc05vZGUoKSBjb25zdAogewog
ICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRh
cmdldC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKaW5kZXggZTY0MzM3MTlk
NmFhMTgzYjQ5YzUwNzkwNGRkYjk2NDcyZGVkYmZkYS4uMGRkNTdmODE5YzZmYzk2MzgxMzVjNmQ0
ZDJiZGU4N2FlNmY4OWRhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFy
Z2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKQEAgLTEwMyw3ICsx
MDMsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERh
dGEoKSBjb25zdDsKIAogcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCkgPSBk
ZWZhdWx0OworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCk7CiAgICAg
CiAgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpID0gMDsKICAg
ICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhQ29uY3VycmVudGx5KCkg
PSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2Uv
Y21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCA2YTFiOTcxMjZjOWIwZjY1MTkxNGZjNGMwMzYz
MGUxNDk5NDUyZWRiLi43ZjBjZDg4NTVkMGYxYmY3NDVjMGIxMDg1Yzc1NDk4ODkxOTQ3MTRjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21h
a2UvT3B0aW9uc0dUSy5jbWFrZQpAQCAtMTgsNiArMTgsMTEgQEAgZW5kaWYgKCkKIAogQ0FMQ1VM
QVRFX0xJQlJBUllfVkVSU0lPTlNfRlJPTV9MSUJUT09MX1RSSVBMRShKQVZBU0NSSVBUQ09SRSAz
NyAwIDE5KQogCitzZXQoQ01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01B
S0VfQ1hYX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQ
RSBPQkpFQ1QpCitzZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNo
YXJlZCB2YXJpYWJsZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0
aGF0IHdlIGNhbiB1c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUg
cG9wdWxhdGVkIGJ5IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9E
SVIgIiR7Q01BS0VfSU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBh
dGggdG8gbGlicmFyeSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBjNGQxNmUyNmI4Mjg0NGZmNDMxYzcw
NWE3ZWRhYjY0MWUxYzg3ZTU3Li4zOGZmOTlmYjA0YmRhNGQ2Y2MyZjJiODM2ZDNjYjYwODUzNGZh
NzgxIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMjEtMDMtMDYgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFy
b0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRl
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZToKKwogMjAyMS0wMy0wNSAgTWljaGFlbCBDYXRhbnph
cm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBDbGVhbiB1cCBHVEst
c3BlY2lmaWMgdGV4dCBjaGVja2VyIHN0dWZmCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1BsYXRmb3JtR1RLLmNtYWtlIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5j
bWFrZQppbmRleCAyMzFiMzMzNzM0MDIxMjIwYWIzNjYyYjA5ZWQ2NWVlYWFjMTA0N2UzLi45MWVl
NDlhNDRhNWI4YTkxMWFlMjI2MTI3YWJlNmNmY2NjNjVjZGU1IDEwMDY0NAotLS0gYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
UGxhdGZvcm1HVEsuY21ha2UKQEAgLTI4LDkgKzI4LDYgQEAgbGlzdChBUFBFTkQgVGVzdFdURl9M
SUJSQVJJRVMKICAgICBHVEs6OkdUSwogKQogCi0jIEZJWE1FOiBSZW1vdmUgd2hlbiB0dXJuaW5n
IG9uIGhpZGRlbiB2aXNpYmlsaXR5IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODE5MTYKLWxpc3QoQVBQRU5EIFRlc3RKYXZhU2NyaXB0Q29yZV9MSUJSQVJJRVMgV1RG
KQotCiAjIFRlc3RXZWJDb3JlCiBsaXN0KEFQUEVORCBUZXN0V2ViQ29yZV9TT1VSQ0VTCiAgICAg
JHt0ZXN0X21haW5fU09VUkNFU30KZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwpp
bmRleCA4MDU4MmE1Mjg5MGViOGUxZTJjMzlhODg5ODcwNWM2MjdmMGM2NGEwLi4zZGNjNjU2MzE2
MDlmNGIwMzg3NTkwNjRhYmI5OGNjODM5YWY2ZGYxIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysr
IGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDMtMDYgIE1pY2hhZWwgQ2F0YW56
YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2
aXNpYmlsaXR5PWhpZGRlbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisg
ICAgICAgIEluIG5vbi1ERVZFTE9QRVJfTU9ERSBidWlsZHMsIHdlIHJlbHkgb24gYSBsaW5rZXIg
dmVyc2lvbiBzY3JpcHQgdG8gaGlkZSBzeW1ib2xzIHRoYXQgd2UKKyAgICAgICAgZG9uJ3Qgd2Fu
dCB0byBleHBvcnQuIEJ1aWxkaW5nIHdpdGggaGlkZGVuIHZpc2liaWxpdHkgbWlnaHQgc2VlbSBy
ZWR1bmRhbnQgd2l0aCB0aGlzLCBidXQKKyAgICAgICAgYWN0dWFsbHkgYnVpbGRpbmcgd2l0aCBo
aWRkZW4gdmlzaWJpbGl0eSBoYXMgYWR2YW50YWdlcyBhbnl3YXkuIFNlZQorICAgICAgICBodHRw
czovL2djYy5nbnUub3JnL3dpa2kvVmlzaWJpbGl0eS4KKworICAgICAgICBOb3RlIHRoYXQgSSdt
IG5vdCBjb25maWRlbnQgR1RLIHBvcnQgY2FuIHNhZmVseSB1c2UgLWZ2aXNpYmlsaXR5LWlubGlu
ZXMtaGlkZGVuLCBzaW5jZSBpdCdzCisgICAgICAgIHNwbGl0IGJldHdlZW4gdHdvIHNoYXJlZCBv
YmplY3RzLiBBbHNvLCBiZWNhdXNlIEdUSyBpcyBzcGxpdCBpbnRvIHR3byBzaGFyZWQgb2JqZWN0
cywgR1RLCisgICAgICAgIG5lZWRzIHRvIGJ1aWxkIGJtYWxsb2MgYW5kIFdURiBhcyBDTWFrZSBP
QkpFQ1QgbGlicmFyaWVzLCB3aGljaCBpcyBlZmZlY3RpdmVseSB0aGUgc2FtZSBhcworICAgICAg
ICB1c2luZyAtV2wsLS13aG9sZS1hcmNoaXZlIHRvIHByZXZlbnQgc3ltYm9scyBmcm9tIGJlaW5n
IHByZW1hdHVyZWx5IHN0cmlwcGVkIGF3YXkuCisKKyAgICAgICAgUC5TLiBNYWpvciBjcmVkaXQg
dG8gRG9uIE9sbXN0ZWFkLCB3aG8gZGlkIG1vc3Qgb2YgdGhlIHdvcmsgdG8gbWFrZSB0aGlzIHBv
c3NpYmxlLCB3aGljaCBoYXMKKyAgICAgICAgYWxyZWFkeSBsYW5kZWQgaW4gcHJldmlvdXMgcGF0
Y2hlcy4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlOgorCiAyMDIx
LTAzLTA1ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgogCiAgICAg
ICAgIFtHVEtdIFJlbW92ZSBBRERfV0hPTEVfQVJDSElWRV9UT19MSUJSQVJJRVMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422617</attachid>
            <date>2021-03-08 14:04:55 -0800</date>
            <delta_ts>2021-03-08 14:15:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210308160454.patch</filename>
            <type>text/plain</type>
            <size>10296</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjYwZTBiZmMwYjg1MWVl
YzBkNGE3YTgzMGJhZWZiMDRhMzhkMjkwMy4uNThmNjEwNDg1MTFmNjM5MjZjMDY0OTMzMGJjM2Y4
YzZiY2IxY2YxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA4ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisg
ICAgICAgIFdlIG5lZWQgdG8gZXhwb3J0IHRoZSBkZXN0cnVjdG9yIG9mIEV2ZW50VGFyZ2V0Lgor
CisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisgICAgICAgICogZG9tL0V2ZW50VGFyZ2V0
LmNwcDoKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuaDoKKwogMjAyMS0wMy0wOCAgSm9obiBX
aWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBQQ006IEFsaWduIGZyYXVk
IHByZXZlbnRpb24gdG9rZW4gbmFtaW5nIHdpdGggaXNzdWUgNzMgaW4gdGhlIFByaXZhY3kgQ0cg
cmVwbwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQ1ZpcnR1
YWxNYWNoaW5lUHJpdmF0ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQ1Zp
cnR1YWxNYWNoaW5lUHJpdmF0ZS5oCmluZGV4IDhmYzllNzA3MDRjYTQyZDJkY2RkMDQ3NjkyMmFm
OWJmN2RmNGVlMTYuLmVhYjgwYzgxZGE4MTQxMTNhNjRjZjdjODIzMWViNTcwNWJiNDMyZWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NWaXJ0dWFsTWFjaGlu
ZVByaXZhdGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNDVmlydHVh
bE1hY2hpbmVQcml2YXRlLmgKQEAgLTI0LDcgKzI0LDcgQEAKICNpbmNsdWRlIDx3dGYvZ2xpYi9H
UmVmUHRyLmg+CiAKIEdSZWZQdHI8SlNDVmlydHVhbE1hY2hpbmU+IGpzY1ZpcnR1YWxNYWNoaW5l
R2V0T3JDcmVhdGUoSlNDb250ZXh0R3JvdXBSZWYpOwotSlNDb250ZXh0R3JvdXBSZWYganNjVmly
dHVhbE1hY2hpbmVHZXRDb250ZXh0R3JvdXAoSlNDVmlydHVhbE1hY2hpbmUqKTsKK0pTX0VYUE9S
VF9QUklWQVRFIEpTQ29udGV4dEdyb3VwUmVmIGpzY1ZpcnR1YWxNYWNoaW5lR2V0Q29udGV4dEdy
b3VwKEpTQ1ZpcnR1YWxNYWNoaW5lKik7CiB2b2lkIGpzY1ZpcnR1YWxNYWNoaW5lQWRkQ29udGV4
dChKU0NWaXJ0dWFsTWFjaGluZSosIEpTQ0NvbnRleHQqKTsKIHZvaWQganNjVmlydHVhbE1hY2hp
bmVSZW1vdmVDb250ZXh0KEpTQ1ZpcnR1YWxNYWNoaW5lKiwgSlNDQ29udGV4dCopOwogSlNDQ29u
dGV4dCoganNjVmlydHVhbE1hY2hpbmVHZXRDb250ZXh0KEpTQ1ZpcnR1YWxNYWNoaW5lKiwgSlNH
bG9iYWxDb250ZXh0UmVmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RL
LmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMDA5ZjM0NjUy
MzQ5YTBmN2IwZDA1ZWQxNzQ0Njk4NjViZDQ3YzMzMi4uZDE4YTNhODdlMjI3ZTU0MzA0MmVkYmIx
MzE3ZGE0Mjk1NWU2OTM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsu
Y21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTgsMTMgKzgs
NiBAQCBpbmNsdWRlKHBsYXRmb3JtL1RleHR1cmVNYXBwZXIuY21ha2UpCiAKIHNldChXZWJDb3Jl
X09VVFBVVF9OQU1FIFdlYkNvcmVHVEspCiAKLSMgRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKLSMgUmVtb3ZlIHRoZXNlIGxpbmVzIHdoZW4gdHVy
bmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eQotbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJ
QlJBUklFUyBXZWJLaXQ6OldURikKLWlmIChOT1QgVVNFX1NZU1RFTV9NQUxMT0MpCi0gICAgbGlz
dChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJBUklFUyBXZWJLaXQ6OmJtYWxsb2MpCi1lbmRp
ZiAoKQotCiBsaXN0KEFQUEVORCBXZWJDb3JlX1VOSUZJRURfU09VUkNFX0xJU1RfRklMRVMKICAg
ICAiU291cmNlc0dUSy50eHQiCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dFRhcmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCmluZGV4IGI1
YTlmNGFmZWVmZmY3NGI1Y2ZiY2Y4NGYxYTQxYmZjMjZmYTFjZWQuLjEyMDQwMWY4ODhiY2E2Nzc2
ODExZDkwZDI1ZjgyNDFmNTUxNzE3NDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcApA
QCAtNjYsNiArNjYsOCBAQCBSZWY8RXZlbnRUYXJnZXQ+IEV2ZW50VGFyZ2V0OjpjcmVhdGUoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICByZXR1cm4gRXZlbnRUYXJnZXRDb25j
cmV0ZTo6Y3JlYXRlKGNvbnRleHQpOwogfQogCitFdmVudFRhcmdldDo6fkV2ZW50VGFyZ2V0KCkg
PSBkZWZhdWx0OworCiBib29sIEV2ZW50VGFyZ2V0Ojppc05vZGUoKSBjb25zdAogewogICAgIHJl
dHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKaW5kZXggZTY0MzM3MTlkNmFhMTgz
YjQ5YzUwNzkwNGRkYjk2NDcyZGVkYmZkYS4uMGRkNTdmODE5YzZmYzk2MzgxMzVjNmQ0ZDJiZGU4
N2FlNmY4OWRhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKQEAgLTEwMyw3ICsxMDMsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBj
b25zdDsKIAogcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0
OworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCk7CiAgICAgCiAgICAg
dmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpID0gMDsKICAgICB2aXJ0
dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhQ29uY3VycmVudGx5KCkgPSAwOwpk
aWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21ha2Uv
T3B0aW9uc0dUSy5jbWFrZQppbmRleCA2YTFiOTcxMjZjOWIwZjY1MTkxNGZjNGMwMzYzMGUxNDk5
NDUyZWRiLi43ZjBjZDg4NTVkMGYxYmY3NDVjMGIxMDg1Yzc1NDk4ODkxOTQ3MTRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0
aW9uc0dUSy5jbWFrZQpAQCAtMTgsNiArMTgsMTEgQEAgZW5kaWYgKCkKIAogQ0FMQ1VMQVRFX0xJ
QlJBUllfVkVSU0lPTlNfRlJPTV9MSUJUT09MX1RSSVBMRShKQVZBU0NSSVBUQ09SRSAzNyAwIDE5
KQogCitzZXQoQ01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hY
X1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpF
Q1QpCitzZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2
YXJpYWJsZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdl
IGNhbiB1c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxh
dGVkIGJ5IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7
Q01BS0VfSU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8g
bGlicmFyeSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiN2UyZWY4NDAwNDQ2NjNkMWJjNjNhYjFjOGRk
ODM4NmMzZGYxNDIwLi4xOTk5NjhhZjhlNGYyMjg5MTUxZWNkNGUwZWZlMzJhZmYyM2U5YTRiIDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTIgQEAKKzIwMjEtMDMtMDggIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9t
ZS5vcmc+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9QbGF0Zm9ybUdUSy5jbWFrZToKKwogMjAyMS0wMy0wOCAgSm9obiBXaWxhbmRlciAgPHdpbGFu
ZGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBQQ006IEFsaWduIGZyYXVkIHByZXZlbnRpb24gdG9r
ZW4gbmFtaW5nIHdpdGggaXNzdWUgNzMgaW4gdGhlIFByaXZhY3kgQ0cgcmVwbwpkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZSBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMjMxYjMzMzczNDAyMTIyMGFiMzY2MmIwOWVk
NjVlZWFhYzEwNDdlMy4uOTFlZTQ5YTQ0YTViOGE5MTFhZTIyNjEyN2FiZTZjZmNjYzY1Y2RlNSAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZQorKysgYi9U
b29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC0yOCw5ICsyOCw2IEBAIGxp
c3QoQVBQRU5EIFRlc3RXVEZfTElCUkFSSUVTCiAgICAgR1RLOjpHVEsKICkKIAotIyBGSVhNRTog
UmVtb3ZlIHdoZW4gdHVybmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eSBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2Ci1saXN0KEFQUEVORCBUZXN0SmF2YVNjcmlw
dENvcmVfTElCUkFSSUVTIFdURikKLQogIyBUZXN0V2ViQ29yZQogbGlzdChBUFBFTkQgVGVzdFdl
YkNvcmVfU09VUkNFUwogICAgICR7dGVzdF9tYWluX1NPVVJDRVN9CmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL0phdmFTY3JpcHRDb3JlL2dsaWIvVGVzdEpTQy5jcHAgYi9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL0phdmFTY3JpcHRDb3JlL2dsaWIvVGVzdEpTQy5jcHAK
aW5kZXggODMyMjJhZjVjMWJmYTU1MWYzMmE2MjVhY2Y2NWUwZDVkYWU2NGQ3OC4uY2MzMTZjMjA3
MDUwNWRhNzYxN2QwY2RjNDlkYWE3NTAyOTg1MzE3NyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9KYXZhU2NyaXB0Q29yZS9nbGliL1Rlc3RKU0MuY3BwCisrKyBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvSmF2YVNjcmlwdENvcmUvZ2xpYi9UZXN0SlNDLmNwcApAQCAt
MTksOSArMTksMTAgQEAKIAogI2luY2x1ZGUgImNvbmZpZy5oIgogCi0vLyBJbmNsdWRlIEpTQ0Nv
bnRleHRQcml2YXRlLmggdG8gYmUgYWJsZSB0byBydW4gZ2FyYmFnZSBjb2xsZWN0b3IgZm9yIHRl
c3RpbmcuCisvLyBJbmNsdWRlIHByaXZhdGUgaGVhZGVycyB0byBiZSBhYmxlIHRvIHJ1biBnYXJi
YWdlIGNvbGxlY3RvciBmb3IgdGVzdGluZy4KICNkZWZpbmUgSlNDX0NPTVBJTEFUSU9OIDEKICNp
bmNsdWRlICJqc2MvSlNDQ29udGV4dFByaXZhdGUuaCIKKyNpbmNsdWRlICJqc2MvSlNDVmlydHVh
bE1hY2hpbmVQcml2YXRlLmgiCiAjdW5kZWYgSlNDX0NPTVBJTEFUSU9OCiAKICNpbmNsdWRlIDxq
c2MvanNjLmg+CkBAIC0xMDcsNiArMTA4LDE1IEBAIHN0YXRpYyB2b2lkIGpzY0NvbnRleHRHYXJi
YWdlQ29sbGVjdChKU0NDb250ZXh0KiBjb250ZXh0KQogICAgIEpTU3luY2hyb25vdXNHYXJiYWdl
Q29sbGVjdEZvckRlYnVnZ2luZyhqc2NDb250ZXh0R2V0SlNDb250ZXh0KGNvbnRleHQpKTsKIH0K
IAorc3RhdGljIHZvaWQganNjQ29udGV4dFNhbml0aXplU3RhY2soSlNDQ29udGV4dCogY29udGV4
dCkKK3sKKyAgICBKU0NWaXJ0dWFsTWFjaGluZSoganNjVk0gPSBqc2NfY29udGV4dF9nZXRfdmly
dHVhbF9tYWNoaW5lKGNvbnRleHQpOworICAgIEpTQ29udGV4dEdyb3VwUmVmIGpzQ29udGV4dEdy
b3VwID0ganNjVmlydHVhbE1hY2hpbmVHZXRDb250ZXh0R3JvdXAoanNjVk0pOworICAgIEpTQzo6
Vk0mIHZtID0gKnRvSlMoanNDb250ZXh0R3JvdXApOworICAgIEpTQzo6SlNMb2NrSG9sZGVyIGxv
Y2tlcih2bSk7CisgICAgc2FuaXRpemVTdGFja0ZvclZNKHZtKTsKK30KKwogc3RhdGljIHZvaWQg
dGVzdEpTQ0Jhc2ljKCkKIHsKICAgICB7CkBAIC0zMjY1LDYgKzMyNzUsMjcgQEAgc3RhdGljIHZv
aWQgd2Vha1ZhbHVlQ2xlYXJlZENhbGxiYWNrKEpTQ1dlYWtWYWx1ZSogd2Vha1ZhbHVlLCBib29s
KiB3ZWFrVmFsdWVDbGUKICAgICBnX2Fzc2VydF9udWxsKGpzY193ZWFrX3ZhbHVlX2dldF92YWx1
ZSh3ZWFrVmFsdWUpKTsKIH0KIAorc3RhdGljIHZvaWQgdXNlV2Vha0Zvb0luQVNlcGFyYXRlRnVu
Y3Rpb25Ub0ZvcmNlR2FyYmFnZUNvbGxlY3Rpb24oR1JlZlB0cjxKU0NWYWx1ZT4mJiBvYmplY3Qs
IEdSZWZQdHI8SlNDVmFsdWU+JiYgZm9vLCBKU0NXZWFrVmFsdWUqIHdlYWssIExlYWtDaGVja2Vy
JiBjaGVja2VyLCBKU0NDb250ZXh0KiBjb250ZXh0LCBib29sJiB3ZWFrVmFsdWVDbGVhcmVkKQor
eworICAgIEdSZWZQdHI8SlNDVmFsdWU+IHdlYWtGb28gPSBhZG9wdEdSZWYoanNjX3dlYWtfdmFs
dWVfZ2V0X3ZhbHVlKHdlYWspKTsKKyAgICBjaGVja2VyLndhdGNoKHdlYWtGb28uZ2V0KCkpOwor
ICAgIGdfYXNzZXJ0X3RydWUoZm9vLmdldCgpID09IHdlYWtGb28uZ2V0KCkpOworCisgICAgR1Jl
ZlB0cjxKU0NWYWx1ZT4gdW5kZWZpbmVkVmFsdWUgPSBhZG9wdEdSZWYoanNjX3ZhbHVlX25ld191
bmRlZmluZWQoY29udGV4dCkpOworICAgIGNoZWNrZXIud2F0Y2godW5kZWZpbmVkVmFsdWUuZ2V0
KCkpOworICAgIGpzY19jb250ZXh0X3NldF92YWx1ZShjb250ZXh0LCAiZm9vIiwgdW5kZWZpbmVk
VmFsdWUuZ2V0KCkpOworICAgIHdlYWtGb28gPSBudWxscHRyOworICAgIGZvbyA9IG51bGxwdHI7
CisgICAgb2JqZWN0ID0gbnVsbHB0cjsKKworICAgIC8vIFRoZSB2YWx1ZSBpcyBzdGlsbCByZWFj
aGFibGUsIGJ1dCB1bnByb3RlY3RlZC4KKyAgICBnX2Fzc2VydF9mYWxzZSh3ZWFrVmFsdWVDbGVh
cmVkKTsKKyAgICB3ZWFrRm9vID0gYWRvcHRHUmVmKGpzY193ZWFrX3ZhbHVlX2dldF92YWx1ZSh3
ZWFrKSk7CisgICAgY2hlY2tlci53YXRjaCh3ZWFrRm9vLmdldCgpKTsKKyAgICBnX2Fzc2VydF90
cnVlKGpzY192YWx1ZV9pc19vYmplY3Qod2Vha0Zvby5nZXQoKSkpOworICAgIHdlYWtGb28gPSBu
dWxscHRyOworfQorCiBzdGF0aWMgdm9pZCB0ZXN0SlNDV2Vha1ZhbHVlKCkKIHsKICAgICB7CkBA
IC0zMjg5LDIzICszMzIwLDggQEAgc3RhdGljIHZvaWQgdGVzdEpTQ1dlYWtWYWx1ZSgpCiAgICAg
ICAgIGNoZWNrZXIud2F0Y2goZm9vLmdldCgpKTsKICAgICAgICAgZ19hc3NlcnRfdHJ1ZShvYmpl
Y3QuZ2V0KCkgPT0gZm9vLmdldCgpKTsKIAotICAgICAgICBHUmVmUHRyPEpTQ1ZhbHVlPiB3ZWFr
Rm9vID0gYWRvcHRHUmVmKGpzY193ZWFrX3ZhbHVlX2dldF92YWx1ZSh3ZWFrLmdldCgpKSk7Ci0g
ICAgICAgIGNoZWNrZXIud2F0Y2god2Vha0Zvby5nZXQoKSk7Ci0gICAgICAgIGdfYXNzZXJ0X3Ry
dWUoZm9vLmdldCgpID09IHdlYWtGb28uZ2V0KCkpOwotCi0gICAgICAgIEdSZWZQdHI8SlNDVmFs
dWU+IHVuZGVmaW5lZFZhbHVlID0gYWRvcHRHUmVmKGpzY192YWx1ZV9uZXdfdW5kZWZpbmVkKGNv
bnRleHQuZ2V0KCkpKTsKLSAgICAgICAgY2hlY2tlci53YXRjaCh1bmRlZmluZWRWYWx1ZS5nZXQo
KSk7Ci0gICAgICAgIGpzY19jb250ZXh0X3NldF92YWx1ZShjb250ZXh0LmdldCgpLCAiZm9vIiwg
dW5kZWZpbmVkVmFsdWUuZ2V0KCkpOwotICAgICAgICB3ZWFrRm9vID0gbnVsbHB0cjsKLSAgICAg
ICAgZm9vID0gbnVsbHB0cjsKLSAgICAgICAgb2JqZWN0ID0gbnVsbHB0cjsKLQotICAgICAgICAv
LyBUaGUgdmFsdWUgaXMgc3RpbGwgcmVhY2hhYmxlLCBidXQgdW5wcm90ZWN0ZWQuCi0gICAgICAg
IGdfYXNzZXJ0X2ZhbHNlKHdlYWtWYWx1ZUNsZWFyZWQpOwotICAgICAgICB3ZWFrRm9vID0gYWRv
cHRHUmVmKGpzY193ZWFrX3ZhbHVlX2dldF92YWx1ZSh3ZWFrLmdldCgpKSk7Ci0gICAgICAgIGNo
ZWNrZXIud2F0Y2god2Vha0Zvby5nZXQoKSk7Ci0gICAgICAgIGdfYXNzZXJ0X3RydWUoanNjX3Zh
bHVlX2lzX29iamVjdCh3ZWFrRm9vLmdldCgpKSk7Ci0gICAgICAgIHdlYWtGb28gPSBudWxscHRy
OworICAgICAgICB1c2VXZWFrRm9vSW5BU2VwYXJhdGVGdW5jdGlvblRvRm9yY2VHYXJiYWdlQ29s
bGVjdGlvbihXVEZNb3ZlKG9iamVjdCksIFdURk1vdmUoZm9vKSwgd2Vhay5nZXQoKSwgY2hlY2tl
ciwgY29udGV4dC5nZXQoKSwgd2Vha1ZhbHVlQ2xlYXJlZCk7CisgICAgICAgIGpzY0NvbnRleHRT
YW5pdGl6ZVN0YWNrKGNvbnRleHQuZ2V0KCkpOwogCiAgICAgICAgIGpzY0NvbnRleHRHYXJiYWdl
Q29sbGVjdChjb250ZXh0LmdldCgpKTsKICAgICAgICAgZ19hc3NlcnRfdHJ1ZSh3ZWFrVmFsdWVD
bGVhcmVkKTsKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA4MDU4MmE1
Mjg5MGViOGUxZTJjMzlhODg5ODcwNWM2MjdmMGM2NGEwLi4yZTAzZjVmZTUwN2RmNmNjOTI2MWZk
NzEwNmFiYzk5YTc1YjAxYTcxIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDMtMDggIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFu
emFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhp
ZGRlbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgx
OTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisgICAgICAgIEluIG5v
bi1ERVZFTE9QRVJfTU9ERSBidWlsZHMsIHdlIHJlbHkgb24gYSBsaW5rZXIgdmVyc2lvbiBzY3Jp
cHQgdG8gaGlkZSBzeW1ib2xzIHRoYXQgd2UKKyAgICAgICAgZG9uJ3Qgd2FudCB0byBleHBvcnQu
IEJ1aWxkaW5nIHdpdGggaGlkZGVuIHZpc2liaWxpdHkgbWlnaHQgc2VlbSByZWR1bmRhbnQgd2l0
aCB0aGlzLCBidXQKKyAgICAgICAgYWN0dWFsbHkgYnVpbGRpbmcgd2l0aCBoaWRkZW4gdmlzaWJp
bGl0eSBoYXMgYWR2YW50YWdlcyBhbnl3YXkuIFNlZQorICAgICAgICBodHRwczovL2djYy5nbnUu
b3JnL3dpa2kvVmlzaWJpbGl0eS4KKworICAgICAgICBOb3RlIHRoYXQgSSdtIG5vdCBjb25maWRl
bnQgR1RLIHBvcnQgY2FuIHNhZmVseSB1c2UgLWZ2aXNpYmlsaXR5LWlubGluZXMtaGlkZGVuLCBz
aW5jZSBpdCdzCisgICAgICAgIHNwbGl0IGJldHdlZW4gdHdvIHNoYXJlZCBvYmplY3RzLiBBbHNv
LCBiZWNhdXNlIEdUSyBpcyBzcGxpdCBpbnRvIHR3byBzaGFyZWQgb2JqZWN0cywgR1RLCisgICAg
ICAgIG5lZWRzIHRvIGJ1aWxkIGJtYWxsb2MgYW5kIFdURiBhcyBDTWFrZSBPQkpFQ1QgbGlicmFy
aWVzLCB3aGljaCBpcyBlZmZlY3RpdmVseSB0aGUgc2FtZSBhcworICAgICAgICB1c2luZyAtV2ws
LS13aG9sZS1hcmNoaXZlIHRvIHByZXZlbnQgc3ltYm9scyBmcm9tIGJlaW5nIHByZW1hdHVyZWx5
IHN0cmlwcGVkIGF3YXkuCisKKyAgICAgICAgUC5TLiBNYWpvciBjcmVkaXQgdG8gRG9uIE9sbXN0
ZWFkLCB3aG8gZGlkIG1vc3Qgb2YgdGhlIHdvcmsgdG8gbWFrZSB0aGlzIHBvc3NpYmxlLCB3aGlj
aCBoYXMKKyAgICAgICAgYWxyZWFkeSBsYW5kZWQgaW4gcHJldmlvdXMgcGF0Y2hlcy4KKworICAg
ICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlOgorCiAyMDIxLTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgogCiAgICAgICAgIFtHVEtdIFJl
bW92ZSBBRERfV0hPTEVfQVJDSElWRV9UT19MSUJSQVJJRVMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422618</attachid>
            <date>2021-03-08 14:15:33 -0800</date>
            <delta_ts>2021-03-09 10:08:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210308161533.patch</filename>
            <type>text/plain</type>
            <size>10309</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjYwZTBiZmMwYjg1MWVl
YzBkNGE3YTgzMGJhZWZiMDRhMzhkMjkwMy4uNThmNjEwNDg1MTFmNjM5MjZjMDY0OTMzMGJjM2Y4
YzZiY2IxY2YxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA4ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisg
ICAgICAgIFdlIG5lZWQgdG8gZXhwb3J0IHRoZSBkZXN0cnVjdG9yIG9mIEV2ZW50VGFyZ2V0Lgor
CisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisgICAgICAgICogZG9tL0V2ZW50VGFyZ2V0
LmNwcDoKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuaDoKKwogMjAyMS0wMy0wOCAgSm9obiBX
aWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBQQ006IEFsaWduIGZyYXVk
IHByZXZlbnRpb24gdG9rZW4gbmFtaW5nIHdpdGggaXNzdWUgNzMgaW4gdGhlIFByaXZhY3kgQ0cg
cmVwbwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQ1ZpcnR1
YWxNYWNoaW5lUHJpdmF0ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQ1Zp
cnR1YWxNYWNoaW5lUHJpdmF0ZS5oCmluZGV4IDhmYzllNzA3MDRjYTQyZDJkY2RkMDQ3NjkyMmFm
OWJmN2RmNGVlMTYuLmVhYjgwYzgxZGE4MTQxMTNhNjRjZjdjODIzMWViNTcwNWJiNDMyZWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NWaXJ0dWFsTWFjaGlu
ZVByaXZhdGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNDVmlydHVh
bE1hY2hpbmVQcml2YXRlLmgKQEAgLTI0LDcgKzI0LDcgQEAKICNpbmNsdWRlIDx3dGYvZ2xpYi9H
UmVmUHRyLmg+CiAKIEdSZWZQdHI8SlNDVmlydHVhbE1hY2hpbmU+IGpzY1ZpcnR1YWxNYWNoaW5l
R2V0T3JDcmVhdGUoSlNDb250ZXh0R3JvdXBSZWYpOwotSlNDb250ZXh0R3JvdXBSZWYganNjVmly
dHVhbE1hY2hpbmVHZXRDb250ZXh0R3JvdXAoSlNDVmlydHVhbE1hY2hpbmUqKTsKK0pTX0VYUE9S
VF9QUklWQVRFIEpTQ29udGV4dEdyb3VwUmVmIGpzY1ZpcnR1YWxNYWNoaW5lR2V0Q29udGV4dEdy
b3VwKEpTQ1ZpcnR1YWxNYWNoaW5lKik7CiB2b2lkIGpzY1ZpcnR1YWxNYWNoaW5lQWRkQ29udGV4
dChKU0NWaXJ0dWFsTWFjaGluZSosIEpTQ0NvbnRleHQqKTsKIHZvaWQganNjVmlydHVhbE1hY2hp
bmVSZW1vdmVDb250ZXh0KEpTQ1ZpcnR1YWxNYWNoaW5lKiwgSlNDQ29udGV4dCopOwogSlNDQ29u
dGV4dCoganNjVmlydHVhbE1hY2hpbmVHZXRDb250ZXh0KEpTQ1ZpcnR1YWxNYWNoaW5lKiwgSlNH
bG9iYWxDb250ZXh0UmVmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RL
LmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMDA5ZjM0NjUy
MzQ5YTBmN2IwZDA1ZWQxNzQ0Njk4NjViZDQ3YzMzMi4uZDE4YTNhODdlMjI3ZTU0MzA0MmVkYmIx
MzE3ZGE0Mjk1NWU2OTM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsu
Y21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTgsMTMgKzgs
NiBAQCBpbmNsdWRlKHBsYXRmb3JtL1RleHR1cmVNYXBwZXIuY21ha2UpCiAKIHNldChXZWJDb3Jl
X09VVFBVVF9OQU1FIFdlYkNvcmVHVEspCiAKLSMgRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKLSMgUmVtb3ZlIHRoZXNlIGxpbmVzIHdoZW4gdHVy
bmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eQotbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJ
QlJBUklFUyBXZWJLaXQ6OldURikKLWlmIChOT1QgVVNFX1NZU1RFTV9NQUxMT0MpCi0gICAgbGlz
dChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJBUklFUyBXZWJLaXQ6OmJtYWxsb2MpCi1lbmRp
ZiAoKQotCiBsaXN0KEFQUEVORCBXZWJDb3JlX1VOSUZJRURfU09VUkNFX0xJU1RfRklMRVMKICAg
ICAiU291cmNlc0dUSy50eHQiCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dFRhcmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCmluZGV4IGI1
YTlmNGFmZWVmZmY3NGI1Y2ZiY2Y4NGYxYTQxYmZjMjZmYTFjZWQuLjEyMDQwMWY4ODhiY2E2Nzc2
ODExZDkwZDI1ZjgyNDFmNTUxNzE3NDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcApA
QCAtNjYsNiArNjYsOCBAQCBSZWY8RXZlbnRUYXJnZXQ+IEV2ZW50VGFyZ2V0OjpjcmVhdGUoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICByZXR1cm4gRXZlbnRUYXJnZXRDb25j
cmV0ZTo6Y3JlYXRlKGNvbnRleHQpOwogfQogCitFdmVudFRhcmdldDo6fkV2ZW50VGFyZ2V0KCkg
PSBkZWZhdWx0OworCiBib29sIEV2ZW50VGFyZ2V0Ojppc05vZGUoKSBjb25zdAogewogICAgIHJl
dHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKaW5kZXggZTY0MzM3MTlkNmFhMTgz
YjQ5YzUwNzkwNGRkYjk2NDcyZGVkYmZkYS4uMGRkNTdmODE5YzZmYzk2MzgxMzVjNmQ0ZDJiZGU4
N2FlNmY4OWRhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKQEAgLTEwMyw3ICsxMDMsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBj
b25zdDsKIAogcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0
OworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCk7CiAgICAgCiAgICAg
dmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpID0gMDsKICAgICB2aXJ0
dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhQ29uY3VycmVudGx5KCkgPSAwOwpk
aWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21ha2Uv
T3B0aW9uc0dUSy5jbWFrZQppbmRleCA2YTFiOTcxMjZjOWIwZjY1MTkxNGZjNGMwMzYzMGUxNDk5
NDUyZWRiLi43ZjBjZDg4NTVkMGYxYmY3NDVjMGIxMDg1Yzc1NDk4ODkxOTQ3MTRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0
aW9uc0dUSy5jbWFrZQpAQCAtMTgsNiArMTgsMTEgQEAgZW5kaWYgKCkKIAogQ0FMQ1VMQVRFX0xJ
QlJBUllfVkVSU0lPTlNfRlJPTV9MSUJUT09MX1RSSVBMRShKQVZBU0NSSVBUQ09SRSAzNyAwIDE5
KQogCitzZXQoQ01BS0VfQ19WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoQ01BS0VfQ1hY
X1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChibWFsbG9jX0xJQlJBUllfVFlQRSBPQkpF
Q1QpCitzZXQoV1RGX0xJQlJBUllfVFlQRSBPQkpFQ1QpCisKICMgVGhlc2UgYXJlIHNoYXJlZCB2
YXJpYWJsZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0aGF0IHdl
IGNhbiB1c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUgcG9wdWxh
dGVkIGJ5IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9ESVIgIiR7
Q01BS0VfSU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBhdGggdG8g
bGlicmFyeSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiN2UyZWY4NDAwNDQ2NjNkMWJjNjNhYjFjOGRk
ODM4NmMzZGYxNDIwLi4xOTk5NjhhZjhlNGYyMjg5MTUxZWNkNGUwZWZlMzJhZmYyM2U5YTRiIDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTIgQEAKKzIwMjEtMDMtMDggIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9t
ZS5vcmc+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9QbGF0Zm9ybUdUSy5jbWFrZToKKwogMjAyMS0wMy0wOCAgSm9obiBXaWxhbmRlciAgPHdpbGFu
ZGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBQQ006IEFsaWduIGZyYXVkIHByZXZlbnRpb24gdG9r
ZW4gbmFtaW5nIHdpdGggaXNzdWUgNzMgaW4gdGhlIFByaXZhY3kgQ0cgcmVwbwpkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZSBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMjMxYjMzMzczNDAyMTIyMGFiMzY2MmIwOWVk
NjVlZWFhYzEwNDdlMy4uOTFlZTQ5YTQ0YTViOGE5MTFhZTIyNjEyN2FiZTZjZmNjYzY1Y2RlNSAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZQorKysgYi9U
b29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC0yOCw5ICsyOCw2IEBAIGxp
c3QoQVBQRU5EIFRlc3RXVEZfTElCUkFSSUVTCiAgICAgR1RLOjpHVEsKICkKIAotIyBGSVhNRTog
UmVtb3ZlIHdoZW4gdHVybmluZyBvbiBoaWRkZW4gdmlzaWJpbGl0eSBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2Ci1saXN0KEFQUEVORCBUZXN0SmF2YVNjcmlw
dENvcmVfTElCUkFSSUVTIFdURikKLQogIyBUZXN0V2ViQ29yZQogbGlzdChBUFBFTkQgVGVzdFdl
YkNvcmVfU09VUkNFUwogICAgICR7dGVzdF9tYWluX1NPVVJDRVN9CmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL0phdmFTY3JpcHRDb3JlL2dsaWIvVGVzdEpTQy5jcHAgYi9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL0phdmFTY3JpcHRDb3JlL2dsaWIvVGVzdEpTQy5jcHAK
aW5kZXggODMyMjJhZjVjMWJmYTU1MWYzMmE2MjVhY2Y2NWUwZDVkYWU2NGQ3OC4uOWFhZWIxZjc1
YjI1YmQ3OTM5ZGFlZWFhOWI4MzJlYzkxNTRjYWFhMyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9KYXZhU2NyaXB0Q29yZS9nbGliL1Rlc3RKU0MuY3BwCisrKyBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvSmF2YVNjcmlwdENvcmUvZ2xpYi9UZXN0SlNDLmNwcApAQCAt
MTksOSArMTksMTAgQEAKIAogI2luY2x1ZGUgImNvbmZpZy5oIgogCi0vLyBJbmNsdWRlIEpTQ0Nv
bnRleHRQcml2YXRlLmggdG8gYmUgYWJsZSB0byBydW4gZ2FyYmFnZSBjb2xsZWN0b3IgZm9yIHRl
c3RpbmcuCisvLyBJbmNsdWRlIHByaXZhdGUgaGVhZGVycyB0byBiZSBhYmxlIHRvIHJ1biBnYXJi
YWdlIGNvbGxlY3RvciBmb3IgdGVzdGluZy4KICNkZWZpbmUgSlNDX0NPTVBJTEFUSU9OIDEKICNp
bmNsdWRlICJqc2MvSlNDQ29udGV4dFByaXZhdGUuaCIKKyNpbmNsdWRlICJqc2MvSlNDVmlydHVh
bE1hY2hpbmVQcml2YXRlLmgiCiAjdW5kZWYgSlNDX0NPTVBJTEFUSU9OCiAKICNpbmNsdWRlIDxq
c2MvanNjLmg+CkBAIC0xMDcsNiArMTA4LDE1IEBAIHN0YXRpYyB2b2lkIGpzY0NvbnRleHRHYXJi
YWdlQ29sbGVjdChKU0NDb250ZXh0KiBjb250ZXh0KQogICAgIEpTU3luY2hyb25vdXNHYXJiYWdl
Q29sbGVjdEZvckRlYnVnZ2luZyhqc2NDb250ZXh0R2V0SlNDb250ZXh0KGNvbnRleHQpKTsKIH0K
IAorc3RhdGljIHZvaWQganNjQ29udGV4dFNhbml0aXplU3RhY2soSlNDQ29udGV4dCogY29udGV4
dCkKK3sKKyAgICBKU0NWaXJ0dWFsTWFjaGluZSoganNjVk0gPSBqc2NfY29udGV4dF9nZXRfdmly
dHVhbF9tYWNoaW5lKGNvbnRleHQpOworICAgIEpTQ29udGV4dEdyb3VwUmVmIGpzQ29udGV4dEdy
b3VwID0ganNjVmlydHVhbE1hY2hpbmVHZXRDb250ZXh0R3JvdXAoanNjVk0pOworICAgIEpTQzo6
Vk0mIHZtID0gKnRvSlMoanNDb250ZXh0R3JvdXApOworICAgIEpTQzo6SlNMb2NrSG9sZGVyIGxv
Y2tlcih2bSk7CisgICAgc2FuaXRpemVTdGFja0ZvclZNKHZtKTsKK30KKwogc3RhdGljIHZvaWQg
dGVzdEpTQ0Jhc2ljKCkKIHsKICAgICB7CkBAIC0zMjY1LDYgKzMyNzUsMjcgQEAgc3RhdGljIHZv
aWQgd2Vha1ZhbHVlQ2xlYXJlZENhbGxiYWNrKEpTQ1dlYWtWYWx1ZSogd2Vha1ZhbHVlLCBib29s
KiB3ZWFrVmFsdWVDbGUKICAgICBnX2Fzc2VydF9udWxsKGpzY193ZWFrX3ZhbHVlX2dldF92YWx1
ZSh3ZWFrVmFsdWUpKTsKIH0KIAorc3RhdGljIE5FVkVSX0lOTElORSB2b2lkIHVzZVdlYWtGb29J
bkFTZXBhcmF0ZUZ1bmN0aW9uVG9Gb3JjZUdhcmJhZ2VDb2xsZWN0aW9uKEdSZWZQdHI8SlNDVmFs
dWU+JiYgb2JqZWN0LCBHUmVmUHRyPEpTQ1ZhbHVlPiYmIGZvbywgSlNDV2Vha1ZhbHVlKiB3ZWFr
LCBMZWFrQ2hlY2tlciYgY2hlY2tlciwgSlNDQ29udGV4dCogY29udGV4dCwgYm9vbCYgd2Vha1Zh
bHVlQ2xlYXJlZCkKK3sKKyAgICBHUmVmUHRyPEpTQ1ZhbHVlPiB3ZWFrRm9vID0gYWRvcHRHUmVm
KGpzY193ZWFrX3ZhbHVlX2dldF92YWx1ZSh3ZWFrKSk7CisgICAgY2hlY2tlci53YXRjaCh3ZWFr
Rm9vLmdldCgpKTsKKyAgICBnX2Fzc2VydF90cnVlKGZvby5nZXQoKSA9PSB3ZWFrRm9vLmdldCgp
KTsKKworICAgIEdSZWZQdHI8SlNDVmFsdWU+IHVuZGVmaW5lZFZhbHVlID0gYWRvcHRHUmVmKGpz
Y192YWx1ZV9uZXdfdW5kZWZpbmVkKGNvbnRleHQpKTsKKyAgICBjaGVja2VyLndhdGNoKHVuZGVm
aW5lZFZhbHVlLmdldCgpKTsKKyAgICBqc2NfY29udGV4dF9zZXRfdmFsdWUoY29udGV4dCwgImZv
byIsIHVuZGVmaW5lZFZhbHVlLmdldCgpKTsKKyAgICB3ZWFrRm9vID0gbnVsbHB0cjsKKyAgICBm
b28gPSBudWxscHRyOworICAgIG9iamVjdCA9IG51bGxwdHI7CisKKyAgICAvLyBUaGUgdmFsdWUg
aXMgc3RpbGwgcmVhY2hhYmxlLCBidXQgdW5wcm90ZWN0ZWQuCisgICAgZ19hc3NlcnRfZmFsc2Uo
d2Vha1ZhbHVlQ2xlYXJlZCk7CisgICAgd2Vha0ZvbyA9IGFkb3B0R1JlZihqc2Nfd2Vha192YWx1
ZV9nZXRfdmFsdWUod2VhaykpOworICAgIGNoZWNrZXIud2F0Y2god2Vha0Zvby5nZXQoKSk7Cisg
ICAgZ19hc3NlcnRfdHJ1ZShqc2NfdmFsdWVfaXNfb2JqZWN0KHdlYWtGb28uZ2V0KCkpKTsKKyAg
ICB3ZWFrRm9vID0gbnVsbHB0cjsKK30KKwogc3RhdGljIHZvaWQgdGVzdEpTQ1dlYWtWYWx1ZSgp
CiB7CiAgICAgewpAQCAtMzI4OSwyMyArMzMyMCw4IEBAIHN0YXRpYyB2b2lkIHRlc3RKU0NXZWFr
VmFsdWUoKQogICAgICAgICBjaGVja2VyLndhdGNoKGZvby5nZXQoKSk7CiAgICAgICAgIGdfYXNz
ZXJ0X3RydWUob2JqZWN0LmdldCgpID09IGZvby5nZXQoKSk7CiAKLSAgICAgICAgR1JlZlB0cjxK
U0NWYWx1ZT4gd2Vha0ZvbyA9IGFkb3B0R1JlZihqc2Nfd2Vha192YWx1ZV9nZXRfdmFsdWUod2Vh
ay5nZXQoKSkpOwotICAgICAgICBjaGVja2VyLndhdGNoKHdlYWtGb28uZ2V0KCkpOwotICAgICAg
ICBnX2Fzc2VydF90cnVlKGZvby5nZXQoKSA9PSB3ZWFrRm9vLmdldCgpKTsKLQotICAgICAgICBH
UmVmUHRyPEpTQ1ZhbHVlPiB1bmRlZmluZWRWYWx1ZSA9IGFkb3B0R1JlZihqc2NfdmFsdWVfbmV3
X3VuZGVmaW5lZChjb250ZXh0LmdldCgpKSk7Ci0gICAgICAgIGNoZWNrZXIud2F0Y2godW5kZWZp
bmVkVmFsdWUuZ2V0KCkpOwotICAgICAgICBqc2NfY29udGV4dF9zZXRfdmFsdWUoY29udGV4dC5n
ZXQoKSwgImZvbyIsIHVuZGVmaW5lZFZhbHVlLmdldCgpKTsKLSAgICAgICAgd2Vha0ZvbyA9IG51
bGxwdHI7Ci0gICAgICAgIGZvbyA9IG51bGxwdHI7Ci0gICAgICAgIG9iamVjdCA9IG51bGxwdHI7
Ci0KLSAgICAgICAgLy8gVGhlIHZhbHVlIGlzIHN0aWxsIHJlYWNoYWJsZSwgYnV0IHVucHJvdGVj
dGVkLgotICAgICAgICBnX2Fzc2VydF9mYWxzZSh3ZWFrVmFsdWVDbGVhcmVkKTsKLSAgICAgICAg
d2Vha0ZvbyA9IGFkb3B0R1JlZihqc2Nfd2Vha192YWx1ZV9nZXRfdmFsdWUod2Vhay5nZXQoKSkp
OwotICAgICAgICBjaGVja2VyLndhdGNoKHdlYWtGb28uZ2V0KCkpOwotICAgICAgICBnX2Fzc2Vy
dF90cnVlKGpzY192YWx1ZV9pc19vYmplY3Qod2Vha0Zvby5nZXQoKSkpOwotICAgICAgICB3ZWFr
Rm9vID0gbnVsbHB0cjsKKyAgICAgICAgdXNlV2Vha0Zvb0luQVNlcGFyYXRlRnVuY3Rpb25Ub0Zv
cmNlR2FyYmFnZUNvbGxlY3Rpb24oV1RGTW92ZShvYmplY3QpLCBXVEZNb3ZlKGZvbyksIHdlYWsu
Z2V0KCksIGNoZWNrZXIsIGNvbnRleHQuZ2V0KCksIHdlYWtWYWx1ZUNsZWFyZWQpOworICAgICAg
ICBqc2NDb250ZXh0U2FuaXRpemVTdGFjayhjb250ZXh0LmdldCgpKTsKIAogICAgICAgICBqc2ND
b250ZXh0R2FyYmFnZUNvbGxlY3QoY29udGV4dC5nZXQoKSk7CiAgICAgICAgIGdfYXNzZXJ0X3Ry
dWUod2Vha1ZhbHVlQ2xlYXJlZCk7CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cK
aW5kZXggODA1ODJhNTI4OTBlYjhlMWUyYzM5YTg4OTg3MDVjNjI3ZjBjNjRhMC4uMmUwM2Y1ZmU1
MDdkZjZjYzkyNjFmZDcxMDZhYmM5OWE3NWIwMWE3MSAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisr
KyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIxLTAzLTA4ICBNaWNoYWVsIENhdGFu
emFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtHVEtdIFJlZW5hYmxlIC1m
dmlzaWJpbGl0eT1oaWRkZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKwor
ICAgICAgICBJbiBub24tREVWRUxPUEVSX01PREUgYnVpbGRzLCB3ZSByZWx5IG9uIGEgbGlua2Vy
IHZlcnNpb24gc2NyaXB0IHRvIGhpZGUgc3ltYm9scyB0aGF0IHdlCisgICAgICAgIGRvbid0IHdh
bnQgdG8gZXhwb3J0LiBCdWlsZGluZyB3aXRoIGhpZGRlbiB2aXNpYmlsaXR5IG1pZ2h0IHNlZW0g
cmVkdW5kYW50IHdpdGggdGhpcywgYnV0CisgICAgICAgIGFjdHVhbGx5IGJ1aWxkaW5nIHdpdGgg
aGlkZGVuIHZpc2liaWxpdHkgaGFzIGFkdmFudGFnZXMgYW55d2F5LiBTZWUKKyAgICAgICAgaHR0
cHM6Ly9nY2MuZ251Lm9yZy93aWtpL1Zpc2liaWxpdHkuCisKKyAgICAgICAgTm90ZSB0aGF0IEkn
bSBub3QgY29uZmlkZW50IEdUSyBwb3J0IGNhbiBzYWZlbHkgdXNlIC1mdmlzaWJpbGl0eS1pbmxp
bmVzLWhpZGRlbiwgc2luY2UgaXQncworICAgICAgICBzcGxpdCBiZXR3ZWVuIHR3byBzaGFyZWQg
b2JqZWN0cy4gQWxzbywgYmVjYXVzZSBHVEsgaXMgc3BsaXQgaW50byB0d28gc2hhcmVkIG9iamVj
dHMsIEdUSworICAgICAgICBuZWVkcyB0byBidWlsZCBibWFsbG9jIGFuZCBXVEYgYXMgQ01ha2Ug
T0JKRUNUIGxpYnJhcmllcywgd2hpY2ggaXMgZWZmZWN0aXZlbHkgdGhlIHNhbWUgYXMKKyAgICAg
ICAgdXNpbmcgLVdsLC0td2hvbGUtYXJjaGl2ZSB0byBwcmV2ZW50IHN5bWJvbHMgZnJvbSBiZWlu
ZyBwcmVtYXR1cmVseSBzdHJpcHBlZCBhd2F5LgorCisgICAgICAgIFAuUy4gTWFqb3IgY3JlZGl0
IHRvIERvbiBPbG1zdGVhZCwgd2hvIGRpZCBtb3N0IG9mIHRoZSB3b3JrIHRvIG1ha2UgdGhpcyBw
b3NzaWJsZSwgd2hpY2ggaGFzCisgICAgICAgIGFscmVhZHkgbGFuZGVkIGluIHByZXZpb3VzIHBh
dGNoZXMuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZToKKwogMjAy
MS0wMy0wNSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAogICAg
ICAgICBbR1RLXSBSZW1vdmUgQUREX1dIT0xFX0FSQ0hJVkVfVE9fTElCUkFSSUVTCg==
</data>
<flag name="commit-queue"
          id="441801"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422723</attachid>
            <date>2021-03-09 10:15:55 -0800</date>
            <delta_ts>2021-03-10 08:39:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210309121554.patch</filename>
            <type>text/plain</type>
            <size>6526</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MTU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmI2MDYwNzZiMTIzOTBl
NjcyMGQyYTczYjBiOTEyMWIzNjZlOTYwZC4uZDk4OTJjOTUzMzhhMGM2YjVkNjhiOTgyOTI5NDA0
YmYwMGRlYjBhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTA5ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtXUEVdW0dU
S10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbiAoYW5kIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiBmb3IgV1BFKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisg
ICAgICAgIFdlIG5lZWQgdG8gZXhwb3J0IHRoZSBkZXN0cnVjdG9yIG9mIEV2ZW50VGFyZ2V0Lgor
CisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisgICAgICAgICogZG9tL0V2ZW50VGFyZ2V0
LmNwcDoKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuaDoKKwogMjAyMS0wMy0wOSAgTWVnYW4g
R2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEhvbGQgb250byBB
cHBIaWdobGlnaHRzIGFuZCByZXN0b3JlIHRoZW0gb25jZSB0aGUgcGFnZSBpcyBsb2FkZWQuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL1BsYXRmb3JtR1RLLmNtYWtlCmluZGV4IDAwOWYzNDY1MjM0OWEwZjdiMGQwNWVkMTc0NDY5
ODY1YmQ0N2MzMzIuLmQxOGEzYTg3ZTIyN2U1NDMwNDJlZGJiMTMxN2RhNDI5NTVlNjkzNWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC04LDEzICs4LDYgQEAgaW5jbHVkZShwbGF0Zm9y
bS9UZXh0dXJlTWFwcGVyLmNtYWtlKQogCiBzZXQoV2ViQ29yZV9PVVRQVVRfTkFNRSBXZWJDb3Jl
R1RLKQogCi0jIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTgxOTE2Ci0jIFJlbW92ZSB0aGVzZSBsaW5lcyB3aGVuIHR1cm5pbmcgb24gaGlkZGVuIHZpc2li
aWxpdHkKLWxpc3QoQVBQRU5EIFdlYkNvcmVfUFJJVkFURV9MSUJSQVJJRVMgV2ViS2l0OjpXVEYp
Ci1pZiAoTk9UIFVTRV9TWVNURU1fTUFMTE9DKQotICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfUFJJ
VkFURV9MSUJSQVJJRVMgV2ViS2l0OjpibWFsbG9jKQotZW5kaWYgKCkKLQogbGlzdChBUFBFTkQg
V2ViQ29yZV9VTklGSUVEX1NPVVJDRV9MSVNUX0ZJTEVTCiAgICAgIlNvdXJjZXNHVEsudHh0Igog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAppbmRleCBiNWE5ZjRhZmVlZmZmNzRiNWNmYmNm
ODRmMWE0MWJmYzI2ZmExY2VkLi4xMjA0MDFmODg4YmNhNjc3NjgxMWQ5MGQyNWY4MjQxZjU1MTcx
NzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAKQEAgLTY2LDYgKzY2LDggQEAgUmVm
PEV2ZW50VGFyZ2V0PiBFdmVudFRhcmdldDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
IGNvbnRleHQpCiAgICAgcmV0dXJuIEV2ZW50VGFyZ2V0Q29uY3JldGU6OmNyZWF0ZShjb250ZXh0
KTsKIH0KIAorRXZlbnRUYXJnZXQ6On5FdmVudFRhcmdldCgpID0gZGVmYXVsdDsKKwogYm9vbCBF
dmVudFRhcmdldDo6aXNOb2RlKCkgY29uc3QKIHsKICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudFRhcmdldC5oCmluZGV4IGU2NDMzNzE5ZDZhYTE4M2I0OWM1MDc5MDRkZGI5NjQ3MmRl
ZGJmZGEuLjBkZDU3ZjgxOWM2ZmM5NjM4MTM1YzZkNGQyYmRlODdhZTZmODlkYTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FdmVudFRhcmdldC5oCkBAIC0xMDMsNyArMTAzLDcgQEAgcHVibGljOgogICAgIGNvbnN0
IEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgY29uc3Q7CiAKIHByb3RlY3RlZDoK
LSAgICB2aXJ0dWFsIH5FdmVudFRhcmdldCgpID0gZGVmYXVsdDsKKyAgICBXRUJDT1JFX0VYUE9S
VCB2aXJ0dWFsIH5FdmVudFRhcmdldCgpOwogICAgIAogICAgIHZpcnR1YWwgRXZlbnRUYXJnZXRE
YXRhKiBldmVudFRhcmdldERhdGEoKSA9IDA7CiAgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEq
IGV2ZW50VGFyZ2V0RGF0YUNvbmN1cnJlbnRseSgpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9j
bWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKaW5k
ZXggNmExYjk3MTI2YzliMGY2NTE5MTRmYzRjMDM2MzBlMTQ5OTQ1MmVkYi4uN2YwY2Q4ODU1ZDBm
MWJmNzQ1YzBiMTA4NWM3NTQ5ODg5MTk0NzE0YyAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09w
dGlvbnNHVEsuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTE4
LDYgKzE4LDExIEBAIGVuZGlmICgpCiAKIENBTENVTEFURV9MSUJSQVJZX1ZFUlNJT05TX0ZST01f
TElCVE9PTF9UUklQTEUoSkFWQVNDUklQVENPUkUgMzcgMCAxOSkKIAorc2V0KENNQUtFX0NfVklT
SUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KENNQUtFX0NYWF9WSVNJQklMSVRZX1BSRVNFVCBo
aWRkZW4pCitzZXQoYm1hbGxvY19MSUJSQVJZX1RZUEUgT0JKRUNUKQorc2V0KFdURl9MSUJSQVJZ
X1RZUEUgT0JKRUNUKQorCiAjIFRoZXNlIGFyZSBzaGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3Bl
Y2lhbCBjYXNlIHRoZWlyIGRlZmluaXRpb24gc28gdGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFL
RV9JTlNUQUxMXyogdmFyaWFibGVzIHRoYXQgYXJlIHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFs
bERpcnMgbWFjcm8uCiBzZXQoTElCX0lOU1RBTExfRElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9M
SUJESVJ9IiBDQUNIRSBQQVRIICJBYnNvbHV0ZSBwYXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9u
IGRpcmVjdG9yeSIpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VM
b2cKaW5kZXggMGFjYjMyODQ1MmEyMzU5NmFmMTFiODdmYWMyNmNlZjlhZjc5MTA2Mi4uNjc0YTNk
ZmRmNGM5Njg2OTRiZGY2ODMwODA5MzI2N2ZiODQzZDVlOCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTAzLTA5
ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtH
VEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IERv
biBPbG1zdGVhZC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2U6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMuanNvbjoKKwog
MjAyMS0wMy0wOSAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgW0dTdHJlYW1lcl1bV2ViUlRDXSBWaWRlb0VuY29kZXIgc3RpbGwgZG9lc24ndCBjb21w
bHkgd2l0aCBXZWJLaXQgc3R5bGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxh
dGZvcm1HVEsuY21ha2UgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlCmlu
ZGV4IDIzMWIzMzM3MzQwMjEyMjBhYjM2NjJiMDllZDY1ZWVhYWMxMDQ3ZTMuLjkxZWU0OWE0NGE1
YjhhOTExYWUyMjYxMjdhYmU2Y2ZjY2M2NWNkZTUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9y
bUdUSy5jbWFrZQpAQCAtMjgsOSArMjgsNiBAQCBsaXN0KEFQUEVORCBUZXN0V1RGX0xJQlJBUklF
UwogICAgIEdUSzo6R1RLCiApCiAKLSMgRklYTUU6IFJlbW92ZSB3aGVuIHR1cm5pbmcgb24gaGlk
ZGVuIHZpc2liaWxpdHkgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
MTkxNgotbGlzdChBUFBFTkQgVGVzdEphdmFTY3JpcHRDb3JlX0xJQlJBUklFUyBXVEYpCi0KICMg
VGVzdFdlYkNvcmUKIGxpc3QoQVBQRU5EIFRlc3RXZWJDb3JlX1NPVVJDRVMKICAgICAke3Rlc3Rf
bWFpbl9TT1VSQ0VTfQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9nbGliL1Rlc3RF
eHBlY3RhdGlvbnMuanNvbiBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvZ2xpYi9UZXN0RXhwZWN0YXRp
b25zLmpzb24KaW5kZXggY2QxMGJlODhmZTMxNmRmNWMzNThlZDUyYjdmMzdjOTcwNGU1MDViMy4u
OTg3OGZmZjRjMmQ0NzE0OTg2M2ZiMTFmMTIyNmZlMWQwYzhhZjQwNCAxMDA2NDQKLS0tIGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMuanNvbgorKysgYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL2dsaWIvVGVzdEV4cGVjdGF0aW9ucy5qc29uCkBAIC0yOTQsNiArMjk0LDkg
QEAKICAgICAgICAgInN1YnRlc3RzIjogewogICAgICAgICAgICAgIi9qc2Mvdm0iOiB7CiAgICAg
ICAgICAgICAgICAgImV4cGVjdGVkIjogeyJhbGwiOiB7InNsb3ciOiB0cnVlfX0KKyAgICAgICAg
ICAgIH0sCisgICAgICAgICAgICAiL2pzYy93ZWFrLXZhbHVlIjogeworICAgICAgICAgICAgICAg
ICJleHBlY3RlZCI6IHsiYWxsIjogeyJzdGF0dXMiOiBbIkZBSUwiLCAiUEFTUyJdLCAiYnVnIjog
IndlYmtpdC5vcmcvYi8yMjI5NzIifX0KICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0s
CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggODA1ODJhNTI4OTBlYjhl
MWUyYzM5YTg4OTg3MDVjNjI3ZjBjNjRhMC4uYzA0OTMyODZmYTY2ZDM3MWZlMzkxODQyMjZhZWFh
NWY0YmVkMTQyYyAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI1IEBACisyMDIxLTAzLTA5ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25v
bWUub3JnPgorCisgICAgICAgIFtHVEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisg
ICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKworICAgICAgICBJbiBub24tREVWRUxP
UEVSX01PREUgYnVpbGRzLCB3ZSByZWx5IG9uIGEgbGlua2VyIHZlcnNpb24gc2NyaXB0IHRvIGhp
ZGUgc3ltYm9scyB0aGF0IHdlCisgICAgICAgIGRvbid0IHdhbnQgdG8gZXhwb3J0LiBCdWlsZGlu
ZyB3aXRoIGhpZGRlbiB2aXNpYmlsaXR5IG1pZ2h0IHNlZW0gcmVkdW5kYW50IHdpdGggdGhpcywg
YnV0CisgICAgICAgIGFjdHVhbGx5IGJ1aWxkaW5nIHdpdGggaGlkZGVuIHZpc2liaWxpdHkgaGFz
IGFkdmFudGFnZXMgYW55d2F5LiBTZWUKKyAgICAgICAgaHR0cHM6Ly9nY2MuZ251Lm9yZy93aWtp
L1Zpc2liaWxpdHkuCisKKyAgICAgICAgTm90ZSB0aGF0IEknbSBub3QgY29uZmlkZW50IEdUSyBw
b3J0IGNhbiBzYWZlbHkgdXNlIC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRlbiwgc2luY2UgaXQn
cworICAgICAgICBzcGxpdCBiZXR3ZWVuIHR3byBzaGFyZWQgb2JqZWN0cy4gQWxzbywgYmVjYXVz
ZSBHVEsgaXMgc3BsaXQgaW50byB0d28gc2hhcmVkIG9iamVjdHMsIEdUSworICAgICAgICBuZWVk
cyB0byBidWlsZCBibWFsbG9jIGFuZCBXVEYgYXMgQ01ha2UgT0JKRUNUIGxpYnJhcmllcywgd2hp
Y2ggaXMgZWZmZWN0aXZlbHkgdGhlIHNhbWUgYXMKKyAgICAgICAgdXNpbmcgLVdsLC0td2hvbGUt
YXJjaGl2ZSB0byBwcmV2ZW50IHN5bWJvbHMgZnJvbSBiZWluZyBwcmVtYXR1cmVseSBzdHJpcHBl
ZCBhd2F5LgorCisgICAgICAgIFAuUy4gTWFqb3IgY3JlZGl0IHRvIERvbiBPbG1zdGVhZCwgd2hv
IGRpZCBtb3N0IG9mIHRoZSB3b3JrIHRvIG1ha2UgdGhpcyBwb3NzaWJsZSwgd2hpY2ggaGFzCisg
ICAgICAgIGFscmVhZHkgbGFuZGVkIGluIHByZXZpb3VzIHBhdGNoZXMuCisKKyAgICAgICAgKiBT
b3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZToKKwogMjAyMS0wMy0wNSAgTWljaGFlbCBDYXRh
bnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgQURE
X1dIT0xFX0FSQ0hJVkVfVE9fTElCUkFSSUVTCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422836</attachid>
            <date>2021-03-10 08:39:23 -0800</date>
            <delta_ts>2021-10-05 04:53:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181916-20210310103922.patch</filename>
            <type>text/plain</type>
            <size>9949</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MjA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
YzhmYTliNDEyODFjMzQ0NDIwNTY5OTlkODliYjBkYjFmYmE3MTYwLi4zMDhhOWI3MDMzOWRiODll
Mzg4YjQzNzUwNzAyNTFiMjEwMmU5MmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wMy0xMCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdu
b21lLm9yZz4KKworICAgICAgICBbR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBEb24gT2xtc3RlYWQuCisKKyAgICAgICAgV2UgbmVlZCB0byBl
eHBvcnQgdGhlIGRlc3RydWN0b3Igb2YgSXNvSGVhcENlbGxUeXBlLgorCisgICAgICAgICogaGVh
cC9Jc29IZWFwQ2VsbFR5cGUuY3BwOgorICAgICAgICAqIGhlYXAvSXNvSGVhcENlbGxUeXBlLmg6
CisKIDIwMjEtMDMtMDkgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAog
ICAgICAgICBHTGliIEpTQyBBUEkgaGVhZGVycyBzaG91bGQgb25seSBpbmNsdWRlIG90aGVyIEdM
aWIgSlNDIEFQSSBoZWFkZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDRhYmU1YjBlOTIxZDQ4MjhjMDljZDEwMjAzZWM3ZTUy
YWQ4ZWFkMzAuLmI4NjcxMDk1ZDIwMTZlMDlhN2NlMjJjZmZkNjlkZDJjODQzMmU1NDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjEtMDMtMTAgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFy
b0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRl
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorCisgICAgICAgIFdlIG5lZWQg
dG8gZXhwb3J0IFdURjo6ZmlsZW5hbWVGb3JEaXNwbGF5LgorCisgICAgICAgICogd3RmL0ZpbGVT
eXN0ZW0uaDoKKwogMjAyMS0wMy0wOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIFVzZSBSRUxFQVNFX0FTU0VSVCgpIGZvciBEZXF1ZSBib3VuZHMgY2hlY2tzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggZTgwOTFhMjdmOTc2OTEzNWM5MWMzNjZlYjJlZmQ0NmMwYzhjYTg2Yy4uM2E5
Yzg3YmRjZjYwMzJjYTBkYWViOTcyOTI3ZDBhNjI4NTJkODQ0ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE3IEBACisyMDIxLTAzLTEwICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25v
bWUub3JnPgorCisgICAgICAgIFtHVEtdIFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisg
ICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKworICAgICAgICBXZSBuZWVkIHRvIGV4
cG9ydCB0aGUgZGVzdHJ1Y3RvciBvZiBFdmVudFRhcmdldCBhbmQgdGhlIGRlbGV0ZSBvcGVyYXRv
ciBvZiAKKyAgICAgICAgRXZlbnRUYXJnZXRXaXRoSW5saW5lRGF0YS4gVGhleSBhcmUgdXNlZCBp
biBXZWJLaXRUZXN0UnVubmVyLgorCisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisgICAg
ICAgICogZG9tL0V2ZW50VGFyZ2V0LmNwcDoKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuaDoK
KwogMjAyMS0wMy0xMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzQxNjYuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Jc29IZWFwQ2VsbFR5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvSXNvSGVhcENlbGxUeXBlLmNwcAppbmRleCBiMTNiN2JjZmI3NzQ3NDRk
NjAzY2E0MDkyOTJlNzAzZGJkYzU3OWRiLi40YTgzZDFmYjFjOWMyYTVmMjUwZjJhYTllY2VmNDg1
NWQ3ZjI1ZDI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Jc29IZWFw
Q2VsbFR5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0lzb0hlYXBDZWxs
VHlwZS5jcHAKQEAgLTM3LDYgKzM3LDggQEAgSXNvSGVhcENlbGxUeXBlOjpJc29IZWFwQ2VsbFR5
cGUoRGVzdHJ1Y3Rpb25Nb2RlIGRlc3RydWN0aW9uTW9kZSwgRGVzdHJveUZ1bmN0aW8KIHsKIH0K
IAorSXNvSGVhcENlbGxUeXBlOjp+SXNvSGVhcENlbGxUeXBlKCkgPSBkZWZhdWx0OworCiB2b2lk
IElzb0hlYXBDZWxsVHlwZTo6ZmluaXNoU3dlZXAoTWFya2VkQmxvY2s6OkhhbmRsZSYgaGFuZGxl
LCBGcmVlTGlzdCogZnJlZUxpc3QpCiB7CiAgICAgaGFuZGxlLmZpbmlzaFN3ZWVwS25vd2luZ0hl
YXBDZWxsVHlwZShmcmVlTGlzdCwgKnRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvSXNvSGVhcENlbGxUeXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9Jc29IZWFwQ2VsbFR5cGUuaAppbmRleCA4NWZhOWU5Mzg3NWZkYTU0MjJhY2QyMjJmYTJmZjI5
ZWIwYjI4OGNkLi40ZjIwYmYzMzEyZGJmZjY1OTU0MDU1NjZhNDJkY2FiYmVmOTIzOTdmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Jc29IZWFwQ2VsbFR5cGUuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Jc29IZWFwQ2VsbFR5cGUuaApAQCAtMzQsNiAr
MzQsOCBAQCBjbGFzcyBJc29IZWFwQ2VsbFR5cGUgZmluYWwgOiBwdWJsaWMgSGVhcENlbGxUeXBl
IHsKIHB1YmxpYzoKICAgICB1c2luZyBEZXN0cm95RnVuY3Rpb25QdHIgPSB2b2lkICgqKShKU0Nl
bGwqKTsKIAorICAgIEpTX0VYUE9SVF9QUklWQVRFIH5Jc29IZWFwQ2VsbFR5cGUoKTsKKwogICAg
IEpTX0VYUE9SVF9QUklWQVRFIElzb0hlYXBDZWxsVHlwZShEZXN0cnVjdGlvbk1vZGUsIERlc3Ry
b3lGdW5jdGlvblB0cik7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZT4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL0ZpbGVTeXN0ZW0uaCBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVT
eXN0ZW0uaAppbmRleCBiZmU4NDEyOTZkM2M2ZDUyYThhOGFmMTU1ZTZlOGVlOGY5MTIwMTFhLi5h
ZWMxMTVkNjVkNGY4YTAyNGQyZTdmNmI5YzMyMTQ3MjM4NGVmNGM0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV1RGL3d0Zi9GaWxlU3lzdGVtLmgKKysrIGIvU291cmNlL1dURi93dGYvRmlsZVN5c3RlbS5o
CkBAIC0xODMsNyArMTgzLDcgQEAgV1RGX0VYUE9SVF9QUklWQVRFIFJldGFpblB0cjxDRlVSTFJl
Zj4gcGF0aEFzVVJMKGNvbnN0IFN0cmluZyYpOwogI2VuZGlmCiAKICNpZiBVU0UoR0xJQikKLVN0
cmluZyBmaWxlbmFtZUZvckRpc3BsYXkoY29uc3QgU3RyaW5nJik7CitXVEZfRVhQT1JUX1BSSVZB
VEUgU3RyaW5nIGZpbGVuYW1lRm9yRGlzcGxheShjb25zdCBTdHJpbmcmKTsKICNlbmRpZgogCiAj
aWYgT1MoV0lORE9XUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNt
YWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMDA5ZjM0NjUyMzQ5
YTBmN2IwZDA1ZWQxNzQ0Njk4NjViZDQ3YzMzMi4uZDE4YTNhODdlMjI3ZTU0MzA0MmVkYmIxMzE3
ZGE0Mjk1NWU2OTM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21h
a2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTgsMTMgKzgsNiBA
QCBpbmNsdWRlKHBsYXRmb3JtL1RleHR1cmVNYXBwZXIuY21ha2UpCiAKIHNldChXZWJDb3JlX09V
VFBVVF9OQU1FIFdlYkNvcmVHVEspCiAKLSMgRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKLSMgUmVtb3ZlIHRoZXNlIGxpbmVzIHdoZW4gdHVybmlu
ZyBvbiBoaWRkZW4gdmlzaWJpbGl0eQotbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJB
UklFUyBXZWJLaXQ6OldURikKLWlmIChOT1QgVVNFX1NZU1RFTV9NQUxMT0MpCi0gICAgbGlzdChB
UFBFTkQgV2ViQ29yZV9QUklWQVRFX0xJQlJBUklFUyBXZWJLaXQ6OmJtYWxsb2MpCi1lbmRpZiAo
KQotCiBsaXN0KEFQUEVORCBXZWJDb3JlX1VOSUZJRURfU09VUkNFX0xJU1RfRklMRVMKICAgICAi
U291cmNlc0dUSy50eHQiCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRh
cmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCmluZGV4IGI1YTlm
NGFmZWVmZmY3NGI1Y2ZiY2Y4NGYxYTQxYmZjMjZmYTFjZWQuLjEyMDQwMWY4ODhiY2E2Nzc2ODEx
ZDkwZDI1ZjgyNDFmNTUxNzE3NDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcApAQCAt
NjYsNiArNjYsOCBAQCBSZWY8RXZlbnRUYXJnZXQ+IEV2ZW50VGFyZ2V0OjpjcmVhdGUoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICByZXR1cm4gRXZlbnRUYXJnZXRDb25jcmV0
ZTo6Y3JlYXRlKGNvbnRleHQpOwogfQogCitFdmVudFRhcmdldDo6fkV2ZW50VGFyZ2V0KCkgPSBk
ZWZhdWx0OworCiBib29sIEV2ZW50VGFyZ2V0Ojppc05vZGUoKSBjb25zdAogewogICAgIHJldHVy
biBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5oIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKaW5kZXggZTY0MzM3MTlkNmFhMTgzYjQ5
YzUwNzkwNGRkYjk2NDcyZGVkYmZkYS4uNjg2NmFmMTY1ZWMwNzliOWQwMzViZjMwNmRkNTg3NjY5
ZDI0YjU5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKQEAgLTEwMyw3ICsxMDMsNyBAQCBw
dWJsaWM6CiAgICAgY29uc3QgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBjb25z
dDsKIAogcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0Owor
ICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCk7CiAgICAgCiAgICAgdmly
dHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpID0gMDsKICAgICB2aXJ0dWFs
IEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhQ29uY3VycmVudGx5KCkgPSAwOwpAQCAt
MTIyLDcgKzEyMiw3IEBAIHByaXZhdGU6CiB9OwogCiBjbGFzcyBFdmVudFRhcmdldFdpdGhJbmxp
bmVEYXRhIDogcHVibGljIEV2ZW50VGFyZ2V0IHsKLSAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVE
KEV2ZW50VGFyZ2V0V2l0aElubGluZURhdGEpOworICAgIFdURl9NQUtFX0lTT19BTExPQ0FURURf
RVhQT1JUKEV2ZW50VGFyZ2V0V2l0aElubGluZURhdGEsIFdFQkNPUkVfRVhQT1JUKTsKIHByb3Rl
Y3RlZDoKICAgICBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpIGZpbmFsIHsgcmV0
dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQogICAgIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJn
ZXREYXRhQ29uY3VycmVudGx5KCkgZmluYWwgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1NvdXJjZS9jbWFr
ZS9PcHRpb25zR1RLLmNtYWtlCmluZGV4IDFkNTZlNzEwZjVkZWRkMTE2NjA5YTkyOGY3NzM0Y2Ex
YzI5ZGJkMWMuLjIzNDI0ZmY4ZTZiN2RiYjZmYTQ3OTY0MjYxYTE3NDliZDBkYTE5YzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9P
cHRpb25zR1RLLmNtYWtlCkBAIC0xOCw2ICsxOCwxMSBAQCBlbmRpZiAoKQogCiBDQUxDVUxBVEVf
TElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JFIDM3IDAg
MTkpCiAKK3NldChDTUFLRV9DX1ZJU0lCSUxJVFlfUFJFU0VUIGhpZGRlbikKK3NldChDTUFLRV9D
WFhfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KGJtYWxsb2NfTElCUkFSWV9UWVBFIE9C
SkVDVCkKK3NldChXVEZfTElCUkFSWV9UWVBFIE9CSkVDVCkKKwogIyBUaGVzZSBhcmUgc2hhcmVk
IHZhcmlhYmxlcywgYnV0IHdlIHNwZWNpYWwgY2FzZSB0aGVpciBkZWZpbml0aW9uIHNvIHRoYXQg
d2UgY2FuIHVzZSB0aGUKICMgQ01BS0VfSU5TVEFMTF8qIHZhcmlhYmxlcyB0aGF0IGFyZSBwb3B1
bGF0ZWQgYnkgdGhlIEdOVUluc3RhbGxEaXJzIG1hY3JvLgogc2V0KExJQl9JTlNUQUxMX0RJUiAi
JHtDTUFLRV9JTlNUQUxMX0ZVTExfTElCRElSfSIgQ0FDSEUgUEFUSCAiQWJzb2x1dGUgcGF0aCB0
byBsaWJyYXJ5IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkiKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hh
bmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGY1NDJkZWFmMzhjMjU3ZTk0ODZhZTM2NjFl
OTBkODZjNDZiYzQ0NmIuLjc5M2VhNzM1ODgwMWM2MDMyZjc4YmMwNDc4MGU2NzAzMWMxYmVmZjAg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAyMS0wMy0xMCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdu
b21lLm9yZz4KKworICAgICAgICBbR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBEb24gT2xtc3RlYWQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0
QVBJL1BsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvZ2xpYi9UZXN0
RXhwZWN0YXRpb25zLmpzb246CisKIDIwMjEtMDMtMTAgIEFha2FzaCBKYWluICA8YWFrYXNoX2ph
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtidWlsZC53ZWJraXQub3JnXSBVcGRhdGUgUnVuSmF2
YVNjcmlwdENvcmVUZXN0cyBzdGVwIGZvciBuZXcgYnVpbGRib3QKZGlmZiAtLWdpdCBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Bs
YXRmb3JtR1RLLmNtYWtlCmluZGV4IGEwNjQwMWYzMDlkYWE1ZGVlMDJlOWQ2YzMyMDNhYzVjNzdh
ZmI0YzQuLjYyZTU4OGZlYjhmZWVjYTg1ZDIwMWI3Njk3N2U3MzYwYTBhN2ZkNDEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAtMjgsOSArMjgsNiBAQCBsaXN0KEFQUEVO
RCBUZXN0V1RGX0xJQlJBUklFUwogICAgIEdUSzo6R1RLCiApCiAKLSMgRklYTUU6IFJlbW92ZSB3
aGVuIHR1cm5pbmcgb24gaGlkZGVuIHZpc2liaWxpdHkgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4MTkxNgotbGlzdChBUFBFTkQgVGVzdEphdmFTY3JpcHRDb3JlX0xJ
QlJBUklFUyBXVEYpCi0KICMgVGVzdFdlYkNvcmUKIGxpc3QoQVBQRU5EIFRlc3RXZWJDb3JlX1NP
VVJDRVMKICAgICAke3Rlc3RfbWFpbl9TT1VSQ0VTfQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMuanNvbiBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
Z2xpYi9UZXN0RXhwZWN0YXRpb25zLmpzb24KaW5kZXggY2QxMGJlODhmZTMxNmRmNWMzNThlZDUy
YjdmMzdjOTcwNGU1MDViMy4uOTg3OGZmZjRjMmQ0NzE0OTg2M2ZiMTFmMTIyNmZlMWQwYzhhZjQw
NCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMu
anNvbgorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL2dsaWIvVGVzdEV4cGVjdGF0aW9ucy5qc29u
CkBAIC0yOTQsNiArMjk0LDkgQEAKICAgICAgICAgInN1YnRlc3RzIjogewogICAgICAgICAgICAg
Ii9qc2Mvdm0iOiB7CiAgICAgICAgICAgICAgICAgImV4cGVjdGVkIjogeyJhbGwiOiB7InNsb3ci
OiB0cnVlfX0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAiL2pzYy93ZWFrLXZhbHVlIjog
eworICAgICAgICAgICAgICAgICJleHBlY3RlZCI6IHsiYWxsIjogeyJzdGF0dXMiOiBbIkZBSUwi
LCAiUEFTUyJdLCAiYnVnIjogIndlYmtpdC5vcmcvYi8yMjI5NzIifX0KICAgICAgICAgICAgIH0K
ICAgICAgICAgfQogICAgIH0sCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5k
ZXggNDk4NGQ3Zjk4OTU1MGMxZWE1ZjI0OWMzNTdiZjZmZTE5YmZlYWU1ZC4uYmU4ZDFjZjhlMDdh
NDBiNTZkYThmNmVhNDJmZjNmZGM1ZDE5Y2NmMCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBi
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIxLTAzLTEwICBNaWNoYWVsIENhdGFuemFy
byAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtHVEtdIFJlZW5hYmxlIC1mdmlz
aWJpbGl0eT1oaWRkZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKworICAg
ICAgICBJbiBub24tREVWRUxPUEVSX01PREUgYnVpbGRzLCB3ZSByZWx5IG9uIGEgbGlua2VyIHZl
cnNpb24gc2NyaXB0IHRvIGhpZGUgc3ltYm9scyB0aGF0IHdlCisgICAgICAgIGRvbid0IHdhbnQg
dG8gZXhwb3J0LiBCdWlsZGluZyB3aXRoIGhpZGRlbiB2aXNpYmlsaXR5IG1pZ2h0IHNlZW0gcmVk
dW5kYW50IHdpdGggdGhpcywgYnV0CisgICAgICAgIGFjdHVhbGx5IGJ1aWxkaW5nIHdpdGggaGlk
ZGVuIHZpc2liaWxpdHkgaGFzIGFkdmFudGFnZXMgYW55d2F5LiBTZWUKKyAgICAgICAgaHR0cHM6
Ly9nY2MuZ251Lm9yZy93aWtpL1Zpc2liaWxpdHkuCisKKyAgICAgICAgTm90ZSB0aGF0IEknbSBu
b3QgY29uZmlkZW50IEdUSyBwb3J0IGNhbiBzYWZlbHkgdXNlIC1mdmlzaWJpbGl0eS1pbmxpbmVz
LWhpZGRlbiwgc2luY2UgaXQncworICAgICAgICBzcGxpdCBiZXR3ZWVuIHR3byBzaGFyZWQgb2Jq
ZWN0cy4gQWxzbywgYmVjYXVzZSBHVEsgaXMgc3BsaXQgaW50byB0d28gc2hhcmVkIG9iamVjdHMs
IEdUSworICAgICAgICBuZWVkcyB0byBidWlsZCBibWFsbG9jIGFuZCBXVEYgYXMgQ01ha2UgT0JK
RUNUIGxpYnJhcmllcywgd2hpY2ggaXMgZWZmZWN0aXZlbHkgdGhlIHNhbWUgYXMKKyAgICAgICAg
dXNpbmcgLVdsLC0td2hvbGUtYXJjaGl2ZSB0byBwcmV2ZW50IHN5bWJvbHMgZnJvbSBiZWluZyBw
cmVtYXR1cmVseSBzdHJpcHBlZCBhd2F5LgorCisgICAgICAgIFAuUy4gTWFqb3IgY3JlZGl0IHRv
IERvbiBPbG1zdGVhZCwgd2hvIGRpZCBtb3N0IG9mIHRoZSB3b3JrIHRvIG1ha2UgdGhpcyBwb3Nz
aWJsZSwgd2hpY2ggaGFzCisgICAgICAgIGFscmVhZHkgbGFuZGVkIGluIHByZXZpb3VzIHBhdGNo
ZXMuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZToKKwogMjAyMS0w
My0xMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
VW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzQxNjYuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440201</attachid>
            <date>2021-10-05 04:53:15 -0700</date>
            <delta_ts>2021-10-07 01:57:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk-visibility-hidden.diff</filename>
            <type>text/plain</type>
            <size>2832</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0ZGRkZTFiYTMzNGYuLmFm
ZjYyZTI2YjlmNyAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE0IEBACisyMDIxLTEwLTA1ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdh
bGlhLmNvbT4KKworICAgICAgICBbR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTZXQgc3ltYm9s
IHZpc2liaWxpdHkgdG8gaGlkZGVuLCBidXQga2VlcCB1c2luZyBzdGFpYyBsaWJyYXJ5IHR5cGUg
Zm9yIGJtYWxsb2MgYW5kIFdURi4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zR1RL
LmNtYWtlOgorCiAyMDIxLTEwLTAzICBCYXN1a2UgU3V6dWtpICA8YmFzdWtlLnN1enVraUBzb255
LmNvbT4KIAogICAgICAgICBFbmFibGUgcmVsZWFzZSBsb2cgdG8gc3RkZXJyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5k
ZXggMDU0ZTQxMTQ4NTcxLi5mMGY0ZTIxZTE0MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAyMS0xMC0wNSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwb3J0IEV2ZW50VGFyZ2V0
IGRlc3RydWN0b3IuCisKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXQuY3BwOgorICAgICAgICAq
IGRvbS9FdmVudFRhcmdldC5oOgorCiAyMDIxLTEwLTA1ICBUaW0gTmd1eWVuICA8bnRpbUBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmVwbGFjZSBkb2N1bWVudC50b3BEb2N1bWVudCgpLnNlY3VyaXR5
T3JpZ2luKCkgd2l0aCBkb2N1bWVudC50b3BPcmlnaW4oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdl
dC5jcHAKaW5kZXggZTBiYjEwOGU1ODk5Li5jZmRjMTkxY2Q1ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50VGFyZ2V0LmNwcApAQCAtNjYsNiArNjYsOCBAQCBSZWY8RXZlbnRUYXJnZXQ+IEV2ZW50VGFy
Z2V0OjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKICAgICByZXR1cm4g
RXZlbnRUYXJnZXRDb25jcmV0ZTo6Y3JlYXRlKGNvbnRleHQpOwogfQogCitFdmVudFRhcmdldDo6
fkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0OworCiBib29sIEV2ZW50VGFyZ2V0Ojppc05vZGUoKSBj
b25zdAogewogICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudFRhcmdldC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKaW5kZXgg
YjNmNDJlYTVkYzM0Li42ODY2YWYxNjVlYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudFRhcmdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5oCkBA
IC0xMDMsNyArMTAzLDcgQEAgcHVibGljOgogICAgIGNvbnN0IEV2ZW50VGFyZ2V0RGF0YSogZXZl
bnRUYXJnZXREYXRhKCkgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAgICB2aXJ0dWFsIH5FdmVudFRh
cmdldCgpID0gZGVmYXVsdDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIH5FdmVudFRhcmdl
dCgpOwogICAgIAogICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEo
KSA9IDA7CiAgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YUNvbmN1
cnJlbnRseSgpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtl
IGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKaW5kZXggYzI5MDlkYjhkYWI0Li5iYTEx
MzhlMjBiYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCisrKyBi
L1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCkBAIC0yMzQsNiArMjM0LDkgQEAgZWxzZWlm
IChXRUJLSVRHVEtfQVBJX1ZFUlNJT04gVkVSU0lPTl9FUVVBTCAiNS4wIikKICAgICBDQUxDVUxB
VEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JFIDAg
MCAwKQogZW5kaWYgKCkKIAorc2V0KENNQUtFX0NfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQor
c2V0KENNQUtFX0NYWF9WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCisKICMgVGhlc2UgYXJlIHNo
YXJlZCB2YXJpYWJsZXMsIGJ1dCB3ZSBzcGVjaWFsIGNhc2UgdGhlaXIgZGVmaW5pdGlvbiBzbyB0
aGF0IHdlIGNhbiB1c2UgdGhlCiAjIENNQUtFX0lOU1RBTExfKiB2YXJpYWJsZXMgdGhhdCBhcmUg
cG9wdWxhdGVkIGJ5IHRoZSBHTlVJbnN0YWxsRGlycyBtYWNyby4KIHNldChMSUJfSU5TVEFMTF9E
SVIgIiR7Q01BS0VfSU5TVEFMTF9GVUxMX0xJQkRJUn0iIENBQ0hFIFBBVEggIkFic29sdXRlIHBh
dGggdG8gbGlicmFyeSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IikK
</data>
<flag name="review"
          id="464078"
          type_id="1"
          status="-"
          setter="don.olmstead"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440489</attachid>
            <date>2021-10-07 01:57:37 -0700</date>
            <delta_ts>2021-10-07 04:21:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk-hidden-visibility.diff</filename>
            <type>text/plain</type>
            <size>5624</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCBlOTQ0NmMzMWM3NWYuLmM1
MjJhNzY3MDYxNyAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEyIEBACisyMDIxLTEwLTA3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdh
bGlhLmNvbT4KKworICAgICAgICBbR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9j
bWFrZS9PcHRpb25zR1RLLmNtYWtlOgorCiAyMDIxLTEwLTA2ICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgbWFyayBLaW1tbyBLaW5udW5lbiBh
cyByZXZpZXdlciBpbiB0aGUgcmlnaHQgY29udHJpYnV0b3JzLmpzb24gZmlsZSB0aGlzIHRpbWUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1ZDJlNWQ1M2VmNWQuLmM4ZTY3NThhNmQ5NSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMTAtMDcgIENh
cmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtd
IFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogc2hlbGwvUGxhdGZvcm1HVEsuY21ha2U6CisKIDIwMjEt
MTAtMDYgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAg
ICAgUHl0aG9uIDM6IHJ1bi1pbnNwZWN0b3ItZ2VuZXJhdG9yLXRlc3RzIGFuZCBnZW5lcmF0ZS1p
bnNwZWN0b3ItcHJvdG9jb2wtYmluZGluZ3MucHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9zaGVsbC9QbGF0Zm9ybUdUSy5jbWFrZSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9z
aGVsbC9QbGF0Zm9ybUdUSy5jbWFrZQppbmRleCBjNjg5OGU0MWYxZWYuLmM0YWM3YzlhMjA5YSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3NoZWxsL1BsYXRmb3JtR1RLLmNtYWtl
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9zaGVsbC9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAt
MSw5ICsxLDMgQEAKIGxpc3QoQVBQRU5EIGpzY19MSUJSQVJJRVMKICAgICAke0dMSUJfTElCUkFS
SUVTfQogKQotCi0jIEZJWE1FOiBSZW1vdmUgd2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmls
aXR5IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKLWxpc3Qo
QVBQRU5EIGpzY19MSUJSQVJJRVMgV1RGKQotbGlzdChBUFBFTkQgdGVzdGFwaV9MSUJSQVJJRVMg
IFdURikKLWxpc3QoQVBQRU5EIHRlc3RtYXNtX0xJQlJBUklFUyBXVEYpCi1saXN0KEFQUEVORCB0
ZXN0YjNfTElCUkFSSUVTIFdURikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxMTU0MmU5MzI5ZDEuLjVmZWYzZmM3
Mjg3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTEwLTA3ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBSZWVuYWJs
ZSAtZnZpc2liaWxpdHk9aGlkZGVuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAgICAqIFBsYXRmb3Jt
R1RLLmNtYWtlOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldC5jcHA6CisgICAgICAgICogZG9t
L0V2ZW50VGFyZ2V0Lmg6CisKIDIwMjEtMTAtMDYgIEJlbiBOaGFtICA8bmhhbUBhcHBsZS5jb20+
CiAKICAgICAgICAgQWRkIFB1c2hTdWJzY3JpcHRpb24gc3R1YnMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsu
Y21ha2UKaW5kZXggNGQ0MzlkNDg1N2IzLi5kM2IxOTlmZTFmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3Jt
R1RLLmNtYWtlCkBAIC04LDEzICs4LDYgQEAgaW5jbHVkZShwbGF0Zm9ybS9UZXh0dXJlTWFwcGVy
LmNtYWtlKQogCiBzZXQoV2ViQ29yZV9PVVRQVVRfTkFNRSBXZWJDb3JlR1RLKQogCi0jIEZJWE1F
OiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2Ci0jIFJlbW92
ZSB0aGVzZSBsaW5lcyB3aGVuIHR1cm5pbmcgb24gaGlkZGVuIHZpc2liaWxpdHkKLWxpc3QoQVBQ
RU5EIFdlYkNvcmVfUFJJVkFURV9MSUJSQVJJRVMgV2ViS2l0OjpXVEYpCi1pZiAoTk9UIFVTRV9T
WVNURU1fTUFMTE9DKQotICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfUFJJVkFURV9MSUJSQVJJRVMg
V2ViS2l0OjpibWFsbG9jKQotZW5kaWYgKCkKLQogbGlzdChBUFBFTkQgV2ViQ29yZV9VTklGSUVE
X1NPVVJDRV9MSVNUX0ZJTEVTCiAgICAgIlNvdXJjZXNHVEsudHh0IgogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50VGFyZ2V0LmNwcAppbmRleCBlMGJiMTA4ZTU4OTkuLmNmZGMxOTFjZDVkYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRXZlbnRUYXJnZXQuY3BwCkBAIC02Niw2ICs2Niw4IEBAIFJlZjxFdmVudFRhcmdldD4g
RXZlbnRUYXJnZXQ6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogICAg
IHJldHVybiBFdmVudFRhcmdldENvbmNyZXRlOjpjcmVhdGUoY29udGV4dCk7CiB9CiAKK0V2ZW50
VGFyZ2V0Ojp+RXZlbnRUYXJnZXQoKSA9IGRlZmF1bHQ7CisKIGJvb2wgRXZlbnRUYXJnZXQ6Omlz
Tm9kZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQu
aAppbmRleCBiM2Y0MmVhNWRjMzQuLjY4NjZhZjE2NWVjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFy
Z2V0LmgKQEAgLTEwMyw3ICsxMDMsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgRXZlbnRUYXJnZXRE
YXRhKiBldmVudFRhcmdldERhdGEoKSBjb25zdDsKIAogcHJvdGVjdGVkOgotICAgIHZpcnR1YWwg
fkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0OworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgfkV2
ZW50VGFyZ2V0KCk7CiAgICAgCiAgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFy
Z2V0RGF0YSgpID0gMDsKICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXRE
YXRhQ29uY3VycmVudGx5KCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNH
VEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCBjMjkwOWRiOGRh
YjQuLmEyNDllZDE3OTRkYiAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21h
a2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTIzNCw2ICsyMzQsMTEg
QEAgZWxzZWlmIChXRUJLSVRHVEtfQVBJX1ZFUlNJT04gVkVSU0lPTl9FUVVBTCAiNS4wIikKICAg
ICBDQUxDVUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9NX0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJ
UFRDT1JFIDAgMCAwKQogZW5kaWYgKCkKIAorc2V0KENNQUtFX0NfVklTSUJJTElUWV9QUkVTRVQg
aGlkZGVuKQorc2V0KENNQUtFX0NYWF9WSVNJQklMSVRZX1BSRVNFVCBoaWRkZW4pCitzZXQoYm1h
bGxvY19MSUJSQVJZX1RZUEUgT0JKRUNUKQorc2V0KFdURl9MSUJSQVJZX1RZUEUgT0JKRUNUKQor
CiAjIFRoZXNlIGFyZSBzaGFyZWQgdmFyaWFibGVzLCBidXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWly
IGRlZmluaXRpb24gc28gdGhhdCB3ZSBjYW4gdXNlIHRoZQogIyBDTUFLRV9JTlNUQUxMXyogdmFy
aWFibGVzIHRoYXQgYXJlIHBvcHVsYXRlZCBieSB0aGUgR05VSW5zdGFsbERpcnMgbWFjcm8uCiBz
ZXQoTElCX0lOU1RBTExfRElSICIke0NNQUtFX0lOU1RBTExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQ
QVRIICJBYnNvbHV0ZSBwYXRoIHRvIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSIpCmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZjJlNjJi
NWQ0NWFiLi5iYWExZWM4MDMyNWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAyMS0xMC0wNyAgQ2FybG9zIEdhcmNp
YSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dUS10gUmVlbmFibGUg
LWZ2aXNpYmlsaXR5PWhpZGRlbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1BsYXRmb3JtR1RLLmNtYWtlOgorCiAyMDIxLTEw
LTA3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbV2ViRHJpdmVyXSBVcGRhdGUgdzNjIGFuZCBzZWxlbml1bSB0ZXN0cwpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZSBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggZDRiMDdjMWI1NDQyLi5jZmZlMzIwNmVjNTEgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAtMjgsOSArMjgsNiBAQCBsaXN0
KEFQUEVORCBUZXN0V1RGX0xJQlJBUklFUwogICAgIEdUSzo6R1RLCiApCiAKLSMgRklYTUU6IFJl
bW92ZSB3aGVuIHR1cm5pbmcgb24gaGlkZGVuIHZpc2liaWxpdHkgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotbGlzdChBUFBFTkQgVGVzdEphdmFTY3JpcHRD
b3JlX0xJQlJBUklFUyBXVEYpCi0KICMgVGVzdFdlYkNvcmUKIGxpc3QoQVBQRU5EIFRlc3RXZWJD
b3JlX1NPVVJDRVMKICAgICAke3Rlc3RfbWFpbl9TT1VSQ0VTfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440493</attachid>
            <date>2021-10-07 04:21:00 -0700</date>
            <delta_ts>2021-10-07 06:31:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk-hidden-visibility.diff</filename>
            <type>text/plain</type>
            <size>5591</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCBlOTQ0NmMzMWM3NWYuLmM1
MjJhNzY3MDYxNyAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEyIEBACisyMDIxLTEwLTA3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdh
bGlhLmNvbT4KKworICAgICAgICBbR1RLXSBSZWVuYWJsZSAtZnZpc2liaWxpdHk9aGlkZGVuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9j
bWFrZS9PcHRpb25zR1RLLmNtYWtlOgorCiAyMDIxLTEwLTA2ICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgbWFyayBLaW1tbyBLaW5udW5lbiBh
cyByZXZpZXdlciBpbiB0aGUgcmlnaHQgY29udHJpYnV0b3JzLmpzb24gZmlsZSB0aGlzIHRpbWUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1ZDJlNWQ1M2VmNWQuLmM4ZTY3NThhNmQ5NSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMTAtMDcgIENh
cmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtd
IFJlZW5hYmxlIC1mdmlzaWJpbGl0eT1oaWRkZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogc2hlbGwvUGxhdGZvcm1HVEsuY21ha2U6CisKIDIwMjEt
MTAtMDYgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAg
ICAgUHl0aG9uIDM6IHJ1bi1pbnNwZWN0b3ItZ2VuZXJhdG9yLXRlc3RzIGFuZCBnZW5lcmF0ZS1p
bnNwZWN0b3ItcHJvdG9jb2wtYmluZGluZ3MucHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9zaGVsbC9QbGF0Zm9ybUdUSy5jbWFrZSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9z
aGVsbC9QbGF0Zm9ybUdUSy5jbWFrZQppbmRleCBjNjg5OGU0MWYxZWYuLmM0YWM3YzlhMjA5YSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3NoZWxsL1BsYXRmb3JtR1RLLmNtYWtl
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9zaGVsbC9QbGF0Zm9ybUdUSy5jbWFrZQpAQCAt
MSw5ICsxLDMgQEAKIGxpc3QoQVBQRU5EIGpzY19MSUJSQVJJRVMKICAgICAke0dMSUJfTElCUkFS
SUVTfQogKQotCi0jIEZJWE1FOiBSZW1vdmUgd2hlbiB0dXJuaW5nIG9uIGhpZGRlbiB2aXNpYmls
aXR5IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5MTYKLWxpc3Qo
QVBQRU5EIGpzY19MSUJSQVJJRVMgV1RGKQotbGlzdChBUFBFTkQgdGVzdGFwaV9MSUJSQVJJRVMg
IFdURikKLWxpc3QoQVBQRU5EIHRlc3RtYXNtX0xJQlJBUklFUyBXVEYpCi1saXN0KEFQUEVORCB0
ZXN0YjNfTElCUkFSSUVTIFdURikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxMTU0MmU5MzI5ZDEuLjdkZTZkNGRm
YTNhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTEwLTA3ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBSZWVuYWJs
ZSAtZnZpc2liaWxpdHk9aGlkZGVuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xODE5MTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIGRvbS9FdmVudFRh
cmdldC5jcHA6CisgICAgICAgICogZG9tL0V2ZW50VGFyZ2V0Lmg6CisKIDIwMjEtMTAtMDYgIEJl
biBOaGFtICA8bmhhbUBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIFB1c2hTdWJzY3JpcHRpb24g
c3R1YnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlIGIvU291
cmNlL1dlYkNvcmUvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggNGQ0MzlkNDg1N2IzLi5kM2IxOTlm
ZTFmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC04LDEzICs4LDYgQEAgaW5jbHVk
ZShwbGF0Zm9ybS9UZXh0dXJlTWFwcGVyLmNtYWtlKQogCiBzZXQoV2ViQ29yZV9PVVRQVVRfTkFN
RSBXZWJDb3JlR1RLKQogCi0jIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgxOTE2Ci0jIFJlbW92ZSB0aGVzZSBsaW5lcyB3aGVuIHR1cm5pbmcgb24gaGlk
ZGVuIHZpc2liaWxpdHkKLWxpc3QoQVBQRU5EIFdlYkNvcmVfUFJJVkFURV9MSUJSQVJJRVMgV2Vi
S2l0OjpXVEYpCi1pZiAoTk9UIFVTRV9TWVNURU1fTUFMTE9DKQotICAgIGxpc3QoQVBQRU5EIFdl
YkNvcmVfUFJJVkFURV9MSUJSQVJJRVMgV2ViS2l0OjpibWFsbG9jKQotZW5kaWYgKCkKLQogbGlz
dChBUFBFTkQgV2ViQ29yZV9VTklGSUVEX1NPVVJDRV9MSVNUX0ZJTEVTCiAgICAgIlNvdXJjZXNH
VEsudHh0IgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmNwcAppbmRleCBlMGJiMTA4ZTU4OTku
LmNmZGMxOTFjZDVkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuY3BwCkBAIC02Niw2ICs2
Niw4IEBAIFJlZjxFdmVudFRhcmdldD4gRXZlbnRUYXJnZXQ6OmNyZWF0ZShTY3JpcHRFeGVjdXRp
b25Db250ZXh0JiBjb250ZXh0KQogICAgIHJldHVybiBFdmVudFRhcmdldENvbmNyZXRlOjpjcmVh
dGUoY29udGV4dCk7CiB9CiAKK0V2ZW50VGFyZ2V0Ojp+RXZlbnRUYXJnZXQoKSA9IGRlZmF1bHQ7
CisKIGJvb2wgRXZlbnRUYXJnZXQ6OmlzTm9kZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGZhbHNl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRXZlbnRUYXJnZXQuaAppbmRleCBiM2Y0MmVhNWRjMzQuLjY4NjZhZjE2NWVj
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmgKQEAgLTEwMyw3ICsxMDMsNyBAQCBwdWJsaWM6
CiAgICAgY29uc3QgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBjb25zdDsKIAog
cHJvdGVjdGVkOgotICAgIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCkgPSBkZWZhdWx0OworICAgIFdF
QkNPUkVfRVhQT1JUIHZpcnR1YWwgfkV2ZW50VGFyZ2V0KCk7CiAgICAgCiAgICAgdmlydHVhbCBF
dmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpID0gMDsKICAgICB2aXJ0dWFsIEV2ZW50
VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhQ29uY3VycmVudGx5KCkgPSAwOwpkaWZmIC0tZ2l0
IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dU
Sy5jbWFrZQppbmRleCBjMjkwOWRiOGRhYjQuLmEyNDllZDE3OTRkYiAxMDA2NDQKLS0tIGEvU291
cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsu
Y21ha2UKQEAgLTIzNCw2ICsyMzQsMTEgQEAgZWxzZWlmIChXRUJLSVRHVEtfQVBJX1ZFUlNJT04g
VkVSU0lPTl9FUVVBTCAiNS4wIikKICAgICBDQUxDVUxBVEVfTElCUkFSWV9WRVJTSU9OU19GUk9N
X0xJQlRPT0xfVFJJUExFKEpBVkFTQ1JJUFRDT1JFIDAgMCAwKQogZW5kaWYgKCkKIAorc2V0KENN
QUtFX0NfVklTSUJJTElUWV9QUkVTRVQgaGlkZGVuKQorc2V0KENNQUtFX0NYWF9WSVNJQklMSVRZ
X1BSRVNFVCBoaWRkZW4pCitzZXQoYm1hbGxvY19MSUJSQVJZX1RZUEUgT0JKRUNUKQorc2V0KFdU
Rl9MSUJSQVJZX1RZUEUgT0JKRUNUKQorCiAjIFRoZXNlIGFyZSBzaGFyZWQgdmFyaWFibGVzLCBi
dXQgd2Ugc3BlY2lhbCBjYXNlIHRoZWlyIGRlZmluaXRpb24gc28gdGhhdCB3ZSBjYW4gdXNlIHRo
ZQogIyBDTUFLRV9JTlNUQUxMXyogdmFyaWFibGVzIHRoYXQgYXJlIHBvcHVsYXRlZCBieSB0aGUg
R05VSW5zdGFsbERpcnMgbWFjcm8uCiBzZXQoTElCX0lOU1RBTExfRElSICIke0NNQUtFX0lOU1RB
TExfRlVMTF9MSUJESVJ9IiBDQUNIRSBQQVRIICJBYnNvbHV0ZSBwYXRoIHRvIGxpYnJhcnkgaW5z
dGFsbGF0aW9uIGRpcmVjdG9yeSIpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggZjJlNjJiNWQ0NWFiLi5iYWExZWM4MDMyNWMgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAor
MjAyMS0xMC0wNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisK
KyAgICAgICAgW0dUS10gUmVlbmFibGUgLWZ2aXNpYmlsaXR5PWhpZGRlbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE2CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1BsYXRm
b3JtR1RLLmNtYWtlOgorCiAyMDIxLTEwLTA3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbV2ViRHJpdmVyXSBVcGRhdGUgdzNjIGFuZCBzZWxl
bml1bSB0ZXN0cwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5j
bWFrZSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1HVEsuY21ha2UKaW5kZXggZDRiMDdj
MWI1NDQyLi5jZmZlMzIwNmVjNTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxh
dGZvcm1HVEsuY21ha2UKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUdUSy5jbWFr
ZQpAQCAtMjgsOSArMjgsNiBAQCBsaXN0KEFQUEVORCBUZXN0V1RGX0xJQlJBUklFUwogICAgIEdU
Szo6R1RLCiApCiAKLSMgRklYTUU6IFJlbW92ZSB3aGVuIHR1cm5pbmcgb24gaGlkZGVuIHZpc2li
aWxpdHkgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNgotbGlz
dChBUFBFTkQgVGVzdEphdmFTY3JpcHRDb3JlX0xJQlJBUklFUyBXVEYpCi0KICMgVGVzdFdlYkNv
cmUKIGxpc3QoQVBQRU5EIFRlc3RXZWJDb3JlX1NPVVJDRVMKICAgICAke3Rlc3RfbWFpbl9TT1VS
Q0VTfQo=
</data>
<flag name="review"
          id="464438"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
      

    </bug>

</bugzilla>