<?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>224790</bug_id>
          
          <creation_ts>2021-04-19 16:37:05 -0700</creation_ts>
          <short_desc>REGRESSION (r276189): GPUProcess.WebProcessTerminationAfterTooManyGPUProcessCrashes is crashing</short_desc>
          <delta_ts>2021-04-19 21:49:58 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>224691</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryan Haddad">ryanhaddad</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1752046</commentid>
    <comment_count>0</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2021-04-19 16:37:05 -0700</bug_when>
    <thetext>Debug API tests are failing to run to completion, as seen here: https://build.webkit.org/#/builders/23/builds/1301/steps/11/logs/stdio

The last output before the process is killed is the following assertion:

    ASSERTION FAILED: isValidIdentifier(m_identifier)
    /Volumes/Data/worker/bigsur-debug/build/WebKitBuild/Debug/usr/local/include/wtf/ObjectIdentifier.h(69) : void WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt;::encode(Encoder &amp;) const [T = WebKit::RemoteAudioDestinationIdentifierType, Encoder = IPC::Encoder]
    1   0x13e7dcf99 WTFCrash
    2   0x10d8c6d5b WTFCrashWithInfo(int, char const*, char const*, int)
    3   0x10e337772 void WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt;::encode&lt;IPC::Encoder&gt;(IPC::Encoder&amp;) const
    4   0x10e3376dd void IPC::ArgumentCoder&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt;, void&gt;::encode&lt;IPC::Encoder&gt;(IPC::Encoder&amp;, WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;)
    5   0x10e327ced IPC::Encoder&amp; IPC::Encoder::operator&lt;&lt;&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;&gt;(WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;)
    6   0x10f5aa850 void IPC::TupleEncoder&lt;4ul, WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt;::encode&lt;IPC::Encoder&gt;(IPC::Encoder&amp;, std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;)
    7   0x10f5aa7fd void IPC::ArgumentCoder&lt;std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt;, void&gt;::encode&lt;IPC::Encoder&gt;(IPC::Encoder&amp;, std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;)
    8   0x10f5aa7bd IPC::Encoder&amp; IPC::Encoder::operator&lt;&lt;&lt;std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;&gt;(std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;)
    9   0x10f57a6bb bool IPC::Connection::send&lt;Messages::RemoteAudioDestinationManager::AudioSamplesStorageChanged&gt;(Messages::RemoteAudioDestinationManager::AudioSamplesStorageChanged&amp;&amp;, unsigned long long, WTF::OptionSet&lt;IPC::SendOption&gt;)
    10  0x10f579210 WebKit::RemoteAudioDestinationProxy::storageChanged(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long)
    11  0x10f5a558c decltype(*(std::__1::forward&lt;WebKit::RemoteAudioDestinationProxy*&amp;&gt;(fp0)).*fp(std::__1::forward&lt;WebKit::SharedMemory*&gt;(fp1), std::__1::forward&lt;WebCore::CAAudioStreamDescription const&amp;&gt;(fp1), std::__1::forward&lt;unsigned long&gt;(fp1))) std::__1::__invoke&lt;void (WebKit::RemoteAudioDestinationProxy::*&amp;)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), WebKit::RemoteAudioDestinationProxy*&amp;, WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long, void&gt;(void (WebKit::RemoteAudioDestinationProxy::*&amp;)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), WebKit::RemoteAudioDestinationProxy*&amp;, WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;)
    12  0x10f5a5487 std::__1::__bind_return&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), std::__1::tuple&lt;WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt;, std::__1::placeholders::__ph&lt;2&gt;, std::__1::placeholders::__ph&lt;3&gt; &gt;, std::__1::tuple&lt;WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;&gt;, __is_valid_bind_return&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), std::__1::tuple&lt;WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt;, std::__1::placeholders::__ph&lt;2&gt;, std::__1::placeholders::__ph&lt;3&gt; &gt;, std::__1::tuple&lt;WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;&gt; &gt;::value&gt;::type std::__1::__apply_functor&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), std::__1::tuple&lt;WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt;, std::__1::placeholders::__ph&lt;2&gt;, std::__1::placeholders::__ph&lt;3&gt; &gt;, 0ul, 1ul, 2ul, 3ul, std::__1::tuple&lt;WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;&gt; &gt;(void (WebKit::RemoteAudioDestinationProxy::*&amp;)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), std::__1::tuple&lt;WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt;, std::__1::placeholders::__ph&lt;2&gt;, std::__1::placeholders::__ph&lt;3&gt; &gt;&amp;, std::__1::__tuple_indices&lt;0ul, 1ul, 2ul, 3ul&gt;, std::__1::tuple&lt;WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;&gt;&amp;&amp;)
    13  0x10f5a53c6 std::__1::__bind_return&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), std::__1::tuple&lt;WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt;, std::__1::placeholders::__ph&lt;2&gt;, std::__1::placeholders::__ph&lt;3&gt; &gt;, std::__1::tuple&lt;WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;&gt;, __is_valid_bind_return&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), std::__1::tuple&lt;WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt;, std::__1::placeholders::__ph&lt;2&gt;, std::__1::placeholders::__ph&lt;3&gt; &gt;, std::__1::tuple&lt;WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;&gt; &gt;::value&gt;::type std::__1::__bind&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt; const&amp;, std::__1::placeholders::__ph&lt;2&gt; const&amp;, std::__1::placeholders::__ph&lt;3&gt; const&amp;&gt;::operator()&lt;WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long&gt;(WebKit::SharedMemory*&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long&amp;&amp;)
    14  0x10f5a52fd WTF::Detail::CallableWrapper&lt;std::__1::__bind&lt;void (WebKit::RemoteAudioDestinationProxy::*)(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long), WebKit::RemoteAudioDestinationProxy*, std::__1::placeholders::__ph&lt;1&gt; const&amp;, std::__1::placeholders::__ph&lt;2&gt; const&amp;, std::__1::placeholders::__ph&lt;3&gt; const&amp;&gt;, void, WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long&gt;::call(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long)
    15  0x10eb70713 WTF::Function&lt;void (WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long)&gt;::operator()(WebKit::SharedMemory*, WebCore::CAAudioStreamDescription const&amp;, unsigned long) const
    16  0x10eb70608 WebKit::SharedRingBufferStorage::setStorage(WTF::RefPtr&lt;WebKit::SharedMemory, WTF::RawPtrTraits&lt;WebKit::SharedMemory&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::SharedMemory&gt; &gt;&amp;&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long)
    17  0x10eb70812 WebKit::SharedRingBufferStorage::deallocate()
    18  0x1220b2735 WebCore::CARingBuffer::deallocate()
    19  0x1220b29bf WebCore::CARingBuffer::allocate(WebCore::CAAudioStreamDescription const&amp;, unsigned long)
    20  0x10f5795d9 WebKit::RemoteAudioDestinationProxy::ensureGPUProcessConnection()
    21  0x10f579fe0 WebKit::RemoteAudioDestinationProxy::startRendering(WTF::CompletionHandler&lt;void (bool)&gt;&amp;&amp;)
    22  0x10f57a7f4 WebKit::RemoteAudioDestinationProxy::gpuProcessConnectionDidClose(WebKit::GPUProcessConnection&amp;)
    23  0x10f45cc5e WebKit::GPUProcessConnection::didClose(IPC::Connection&amp;)
    24  0x10d966fc7 IPC::Connection::connectionDidClose()::$_8::operator()()
    25  0x10d966e9e WTF::Detail::CallableWrapper&lt;IPC::Connection::connectionDidClose()::$_8, void&gt;::call()
    26  0x13e808842 WTF::Function&lt;void ()&gt;::operator()() const
    27  0x13e88d365 WTF::RunLoop::performWork()
    28  0x13e891c21 WTF::RunLoop::performWork(void*)
    29  0x7fff2043fa0c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
    30  0x7fff2043f974 __CFRunLoopDoSource0
    31  0x7fff2043f6ef __CFRunLoopDoSources0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752047</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-19 16:37:27 -0700</bug_when>
    <thetext>&lt;rdar://problem/76869318&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752051</commentid>
    <comment_count>2</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 16:47:28 -0700</bug_when>
    <thetext>I think this may be a regression from https://trac.webkit.org/changeset/276189/webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752075</commentid>
    <comment_count>3</comment_count>
      <attachid>426500</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 17:53:22 -0700</bug_when>
    <thetext>Created attachment 426500
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752077</commentid>
    <comment_count>4</comment_count>
      <attachid>426501</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 17:54:10 -0700</bug_when>
    <thetext>Created attachment 426501
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752080</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 18:02:10 -0700</bug_when>
    <thetext>Committed r276280 (236762@main): &lt;https://commits.webkit.org/236762@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752081</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 18:02:28 -0700</bug_when>
    <thetext>Test temporarily skipped in &lt;https://commits.webkit.org/r276280&gt; to make the bots happy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752082</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 18:02:40 -0700</bug_when>
    <thetext>Reopening for the real fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752083</commentid>
    <comment_count>8</comment_count>
      <attachid>426503</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-19 18:04:15 -0700</bug_when>
    <thetext>Created attachment 426503
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752132</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-19 21:49:55 -0700</bug_when>
    <thetext>Committed r276284 (236766@main): &lt;https://commits.webkit.org/236766@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 426503.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426500</attachid>
            <date>2021-04-19 17:53:22 -0700</date>
            <delta_ts>2021-04-19 17:54:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224790-20210419175321.patch</filename>
            <type>text/plain</type>
            <size>7964</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MjcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI1ZjEyNWZlZTllODAzNGQ0
ZjFiYWI5MDhlMzk0Mzg3NTQzN2M5ODIuLjkzZDg2ZThkZjgyYzEzZWVlMThjNDY2ZmI1NzFmZDQz
MGZmMDAxMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjEtMDQtMTkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMjc2MTg5KTog
R1BVUHJvY2Vzcy5XZWJQcm9jZXNzVGVybWluYXRpb25BZnRlclRvb01hbnlHUFVQcm9jZXNzQ3Jh
c2hlcyBpcyBjcmFzaGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0NzkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83Njg2OTMxOD4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBHUFVQcm9jZXNzLldl
YlByb2Nlc3NUZXJtaW5hdGlvbkFmdGVyVG9vTWFueUdQVVByb2Nlc3NDcmFzaGVzIGlzIGludGVu
dGlvbmFsbHkgcmVwZWF0ZWRseQorICAgICAgICBraWxsaW5nIHRoZSBHUFVQcm9jZXNzLiBBcyBh
IHJlc3VsdCwgdGhlIEdQVVByb2Nlc3MgbWF5IGdldCBraWxsZWQgdmVyeSBzaG9ydGx5IGFmdGVy
CisgICAgICAgIGEgcmVsYXVuY2ggYW5kIHRoZSBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdl
cjo6U3RhcnRBdWRpb0Rlc3RpbmF0aW9uIHN5bmNocm9ub3VzIElQQworICAgICAgICBtYXkgZmFp
bCBpZiBpdCBpcyBvbmdvaW5nIGF0IHRoZSB0aW1lIG9mIHRoZSBjcmFzaC4gVGhpcyB3b3VsZCBj
YXVzZSBtX2Rlc3RpbmF0aW9uSUQgdG8KKyAgICAgICAgbm90IGdldCBpbml0aWFsaXplZCBhbmQg
dGhlbiBnZXQgc2VudCBhcyBJUEMgcGFyYW1ldGVyLCB0aHVzIGNyYXNoaW5nLgorCisgICAgICAg
IHByZS1yMjc2MTg5LCB3ZSB3ZXJlIG5vdCBjcmFzaGluZyBiZWNhdXNlIG1fZGVzdGluYXRpb25J
RCB3YXMgbm90IHJlc2V0IG9uIGNyYXNoIGFuZCB3ZQorICAgICAgICB3b3VsZCB0aHVzIHNlbmQg
SVBDIGZvciBhIGRlc3RpbmF0aW9uIHRoYXQgZG9lcyBub3QgZXhpc3QgYnV0IGF0IGxlYXN0IHRo
ZSBkZXN0aW5hdGlvbklECisgICAgICAgIHdvdWxkIG5vdCBiZSAwLiBUaGlzIHBhdGNoIG1ha2Vz
IHN1cmUgd2UgZG9uJ3QgdHJ5IGFuZCBzZW5kIElQQyBhdCBhbGwgd2hlbiBtX2Rlc3RpbmF0aW9u
SUQKKyAgICAgICAgaXMgMC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1ZGlv
RGVzdGluYXRpb25Qcm94eTo6Y29ubmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1
ZGlvRGVzdGluYXRpb25Qcm94eTo6c3RhcnRSZW5kZXJpbmcpOgorICAgICAgICAoV2ViS2l0OjpS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3BSZW5kZXJpbmcpOgorICAgICAgICAoV2Vi
S2l0OjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3JhZ2VDaGFuZ2VkKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaDoK
KwogMjAyMS0wNC0xOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAg
IE1vdGlvbk1hcmsncyBDYW52YXMtQXJjcyBzdWJ0ZXN0IGlzIGJyb2tlbiBpZiB0aGUgR1BVUHJv
Y2VzcyBpcyBub3QgeWV0IHJ1bm5pbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNw
cAppbmRleCAyY2E3NTNkNWVhMDI5MzNjY2FiMTljNTI2N2RlMWNiYWQzODBhMGEzLi5lZTE5MGVk
OTA0ZTM5OWIxMWM0NzQzMjMxMzRkYmMyZGRhYWU0OTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHkuY3BwCkBAIC05OCwxMiArOTgsMTggQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHk6OnN0b3BSZW5kZXJpbmdUaHJlYWQoKQogICAgIG1fcmVuZGVyVGhyZWFkID0g
bnVsbHB0cjsKIH0KIAotR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIFJlbW90ZUF1ZGlvRGVzdGluYXRp
b25Qcm94eTo6ZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKQorSVBDOjpDb25uZWN0aW9uKiBS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmNvbm5lY3Rpb24oKQogewogICAgIGlmICghbV9n
cHVQcm9jZXNzQ29ubmVjdGlvbikgewogICAgICAgICBtX2dwdVByb2Nlc3NDb25uZWN0aW9uID0g
bWFrZVdlYWtQdHIoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24oKSk7CiAgICAgICAgIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPmFkZENsaWVudCgqdGhp
cyk7CiAKKyAgICAgICAgaWYgKCFtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCku
c2VuZFN5bmMoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpDcmVhdGVB
dWRpb0Rlc3RpbmF0aW9uKG1faW5wdXREZXZpY2VJZCwgbV9udW1iZXJPZklucHV0Q2hhbm5lbHMs
IG51bWJlck9mT3V0cHV0Q2hhbm5lbHMoKSwgc2FtcGxlUmF0ZSgpLCBoYXJkd2FyZVNhbXBsZVJh
dGUoKSwgbV9yZW5kZXJTZW1hcGhvcmUpLCBNZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5hdGlv
bk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVzdGluYXRpb246OlJlcGx5KG1fZGVzdGluYXRpb25JRCks
IDApKSB7CisgICAgICAgICAgICAvLyBUaGUgR1BVUHJvY2VzcyBsaWtlbHkgY3Jhc2hlZCBkdXJp
bmcgdGhpcyBzeW5jaHJvbm91cyBJUEMuIGdwdVByb2Nlc3NDb25uZWN0aW9uRGlkQ2xvc2UoKSB3
aWxsIGdldCBjYWxsZWQgdG8gcmVjb25uZWN0IHRvIHRoZSBHUFVQcm9jZXNzLgorICAgICAgICAg
ICAgUkVMRUFTRV9MT0dfRVJST1IoTWVkaWEsICJSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OmRlc3RpbmF0aW9uSUQ6IElQQyB0byBjcmVhdGUgdGhlIGF1ZGlvIGRlc3RpbmF0aW9uIGZhaWxl
ZCwgdGhlIEdQVVByb2Nlc3MgbGlrZWx5IGNyYXNoZWQuIik7CisgICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICAgICAgfQorCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgICAgIG1fY3Vy
cmVudEZyYW1lID0gMDsKICAgICAgICAgQXVkaW9TdHJlYW1CYXNpY0Rlc2NyaXB0aW9uIHN0cmVh
bUZvcm1hdDsKQEAgLTExNSwxNCArMTIxLDEyIEBAIEdQVVByb2Nlc3NDb25uZWN0aW9uJiBSZW1v
dGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCkKIAog
ICAgICAgICBzdGFydFJlbmRlcmluZ1RocmVhZCgpOwogICAgIH0KLSAgICByZXR1cm4gKm1fZ3B1
UHJvY2Vzc0Nvbm5lY3Rpb247CisgICAgcmV0dXJuIG1fZGVzdGluYXRpb25JRCA/ICZtX2dwdVBy
b2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCkgOiBudWxscHRyOwogfQogCi1SZW1vdGVBdWRp
b0Rlc3RpbmF0aW9uSWRlbnRpZmllciBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmRlc3Rp
bmF0aW9uSUQoKQorSVBDOjpDb25uZWN0aW9uKiBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OmV4aXN0aW5nQ29ubmVjdGlvbigpCiB7Ci0gICAgaWYgKCFtX2Rlc3RpbmF0aW9uSUQpCi0gICAg
ICAgIGVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1l
c3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6Q3JlYXRlQXVkaW9EZXN0aW5h
dGlvbihtX2lucHV0RGV2aWNlSWQsIG1fbnVtYmVyT2ZJbnB1dENoYW5uZWxzLCBudW1iZXJPZk91
dHB1dENoYW5uZWxzKCksIHNhbXBsZVJhdGUoKSwgaGFyZHdhcmVTYW1wbGVSYXRlKCksIG1fcmVu
ZGVyU2VtYXBob3JlKSwgTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpD
cmVhdGVBdWRpb0Rlc3RpbmF0aW9uOjpSZXBseShtX2Rlc3RpbmF0aW9uSUQpLCAwKTsKLSAgICBy
ZXR1cm4gbV9kZXN0aW5hdGlvbklEOworICAgIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24gJiYgbV9k
ZXN0aW5hdGlvbklEID8gJm1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKSA6IG51
bGxwdHI7CiB9CiAKIFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6flJlbW90ZUF1ZGlvRGVz
dGluYXRpb25Qcm94eSgpCkBAIC0xMzksNyArMTQzLDExIEBAIFJlbW90ZUF1ZGlvRGVzdGluYXRp
b25Qcm94eTo6flJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eSgpCiAKIHZvaWQgUmVtb3RlQXVk
aW9EZXN0aW5hdGlvblByb3h5OjpzdGFydFJlbmRlcmluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewotICAgIGVuc3VyZUdQVVByb2Nlc3NDb25u
ZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6UmVtb3Rl
QXVkaW9EZXN0aW5hdGlvbk1hbmFnZXI6OlN0YXJ0QXVkaW9EZXN0aW5hdGlvbihkZXN0aW5hdGlv
bklEKCkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIGlzUGxheWluZykgbXV0
YWJsZSB7CisgICAgYXV0byogY29ubmVjdGlvbiA9IHRoaXMtPmNvbm5lY3Rpb24oKTsKKyAgICBp
ZiAoIWNvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7
CisKKyAgICBjb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlJlbW90ZUF1
ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpTdGFydEF1ZGlvRGVzdGluYXRpb24obV9kZXN0aW5hdGlv
bklEKSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlpbmcpIG11dGFi
bGUgewogICAgICAgICBzZXRJc1BsYXlpbmcoaXNQbGF5aW5nKTsKICAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIoaXNQbGF5aW5nKTsKICAgICB9KTsKQEAgLTE0Nyw3ICsxNTUsMTEgQEAgdm9pZCBS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0YXJ0UmVuZGVyaW5nKENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYKIAogdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0
b3BSZW5kZXJpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKIHsKLSAgICBlbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5z
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2Vy
OjpTdG9wQXVkaW9EZXN0aW5hdGlvbihkZXN0aW5hdGlvbklEKCkpLCBbdGhpcywgcHJvdGVjdGVk
VGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpXShib29sIGlzUGxheWluZykgbXV0YWJsZSB7CisgICAgYXV0byogY29ubmVj
dGlvbiA9IHRoaXMtPmNvbm5lY3Rpb24oKTsKKyAgICBpZiAoIWNvbm5lY3Rpb24pCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBjb25uZWN0aW9uLT5zZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpT
dG9wQXVkaW9EZXN0aW5hdGlvbihtX2Rlc3RpbmF0aW9uSUQpLCBbdGhpcywgcHJvdGVjdGVkVGhp
cyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlv
bkhhbmRsZXIpXShib29sIGlzUGxheWluZykgbXV0YWJsZSB7CiAgICAgICAgIHNldElzUGxheWlu
Zyhpc1BsYXlpbmcpOwogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcighaXNQbGF5aW5nKTsKICAg
ICB9KTsKQEAgLTE2Nyw3ICsxNzksOCBAQCB2b2lkIFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94
eTo6cmVuZGVyUXVhbnR1bSgpCiAjaWYgUExBVEZPUk0oQ09DT0EpCiB2b2lkIFJlbW90ZUF1ZGlv
RGVzdGluYXRpb25Qcm94eTo6c3RvcmFnZUNoYW5nZWQoU2hhcmVkTWVtb3J5KiBzdG9yYWdlLCBj
b25zdCBXZWJDb3JlOjpDQUF1ZGlvU3RyZWFtRGVzY3JpcHRpb24mIGZvcm1hdCwgc2l6ZV90IGZy
YW1lQ291bnQpCiB7Ci0gICAgaWYgKCFtX2dwdVByb2Nlc3NDb25uZWN0aW9uKQorICAgIGF1dG8q
IGNvbm5lY3Rpb24gPSBleGlzdGluZ0Nvbm5lY3Rpb24oKTsKKyAgICBpZiAoIWNvbm5lY3Rpb24p
CiAgICAgICAgIHJldHVybjsKIAogICAgIFNoYXJlZE1lbW9yeTo6SGFuZGxlIGhhbmRsZTsKQEAg
LTE4MSw3ICsxOTQsNyBAQCB2b2lkIFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6c3RvcmFn
ZUNoYW5nZWQoU2hhcmVkTWVtb3J5KiBzdG9yYWdlLCBjb25zdCBXZQogICAgIHVpbnQ2NF90IGRh
dGFTaXplID0gMDsKICNlbmRpZgogCi0gICAgbV9ncHVQcm9jZXNzQ29ubmVjdGlvbi0+Y29ubmVj
dGlvbigpLnNlbmQoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpBdWRp
b1NhbXBsZXNTdG9yYWdlQ2hhbmdlZCB7IGRlc3RpbmF0aW9uSUQoKSwgU2hhcmVkTWVtb3J5OjpJ
UENIYW5kbGUgeyBXVEZNb3ZlKGhhbmRsZSksIGRhdGFTaXplIH0sIGZvcm1hdCwgZnJhbWVDb3Vu
dCB9LCAwKTsKKyAgICBtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCkuc2VuZChN
ZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXI6OkF1ZGlvU2FtcGxlc1N0b3Jh
Z2VDaGFuZ2VkIHsgbV9kZXN0aW5hdGlvbklELCBTaGFyZWRNZW1vcnk6OklQQ0hhbmRsZSB7IFdU
Rk1vdmUoaGFuZGxlKSwgZGF0YVNpemUgfSwgZm9ybWF0LCBmcmFtZUNvdW50IH0sIDApOwogfQog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
UmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
R1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oCmluZGV4IDRkNWIyZmU1ODA4
YTMzY2EwNzA4YjEyZTcyODZjMGZlODMzNDg3N2QuLmZiNTk1NjJiY2JjNzQwNWMzM2M5MTcxNzk4
M2RmY2EzMzAzYjU3YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaApAQCAtNzks
OCArNzksOCBAQCBwcml2YXRlOgogICAgIHZvaWQgc3RvcFJlbmRlcmluZ1RocmVhZCgpOwogICAg
IHZvaWQgcmVuZGVyUXVhbnR1bSgpOwogCi0gICAgUmVtb3RlQXVkaW9EZXN0aW5hdGlvbklkZW50
aWZpZXIgZGVzdGluYXRpb25JRCgpOwotICAgIEdQVVByb2Nlc3NDb25uZWN0aW9uJiBlbnN1cmVH
UFVQcm9jZXNzQ29ubmVjdGlvbigpOworICAgIElQQzo6Q29ubmVjdGlvbiogY29ubmVjdGlvbigp
OworICAgIElQQzo6Q29ubmVjdGlvbiogZXhpc3RpbmdDb25uZWN0aW9uKCk7CiAKICAgICAvLyBH
UFVQcm9jZXNzQ29ubmVjdGlvbjo6Q2xpZW50LgogICAgIHZvaWQgZ3B1UHJvY2Vzc0Nvbm5lY3Rp
b25EaWRDbG9zZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYpIGZpbmFsOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426501</attachid>
            <date>2021-04-19 17:54:10 -0700</date>
            <delta_ts>2021-04-19 18:04:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224790-20210419175410.patch</filename>
            <type>text/plain</type>
            <size>7971</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MjcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI1ZjEyNWZlZTllODAzNGQ0
ZjFiYWI5MDhlMzk0Mzg3NTQzN2M5ODIuLjkzZDg2ZThkZjgyYzEzZWVlMThjNDY2ZmI1NzFmZDQz
MGZmMDAxMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjEtMDQtMTkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMjc2MTg5KTog
R1BVUHJvY2Vzcy5XZWJQcm9jZXNzVGVybWluYXRpb25BZnRlclRvb01hbnlHUFVQcm9jZXNzQ3Jh
c2hlcyBpcyBjcmFzaGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0NzkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83Njg2OTMxOD4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBHUFVQcm9jZXNzLldl
YlByb2Nlc3NUZXJtaW5hdGlvbkFmdGVyVG9vTWFueUdQVVByb2Nlc3NDcmFzaGVzIGlzIGludGVu
dGlvbmFsbHkgcmVwZWF0ZWRseQorICAgICAgICBraWxsaW5nIHRoZSBHUFVQcm9jZXNzLiBBcyBh
IHJlc3VsdCwgdGhlIEdQVVByb2Nlc3MgbWF5IGdldCBraWxsZWQgdmVyeSBzaG9ydGx5IGFmdGVy
CisgICAgICAgIGEgcmVsYXVuY2ggYW5kIHRoZSBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdl
cjo6U3RhcnRBdWRpb0Rlc3RpbmF0aW9uIHN5bmNocm9ub3VzIElQQworICAgICAgICBtYXkgZmFp
bCBpZiBpdCBpcyBvbmdvaW5nIGF0IHRoZSB0aW1lIG9mIHRoZSBjcmFzaC4gVGhpcyB3b3VsZCBj
YXVzZSBtX2Rlc3RpbmF0aW9uSUQgdG8KKyAgICAgICAgbm90IGdldCBpbml0aWFsaXplZCBhbmQg
dGhlbiBnZXQgc2VudCBhcyBJUEMgcGFyYW1ldGVyLCB0aHVzIGNyYXNoaW5nLgorCisgICAgICAg
IHByZS1yMjc2MTg5LCB3ZSB3ZXJlIG5vdCBjcmFzaGluZyBiZWNhdXNlIG1fZGVzdGluYXRpb25J
RCB3YXMgbm90IHJlc2V0IG9uIGNyYXNoIGFuZCB3ZQorICAgICAgICB3b3VsZCB0aHVzIHNlbmQg
SVBDIGZvciBhIGRlc3RpbmF0aW9uIHRoYXQgZG9lcyBub3QgZXhpc3QgYnV0IGF0IGxlYXN0IHRo
ZSBkZXN0aW5hdGlvbklECisgICAgICAgIHdvdWxkIG5vdCBiZSAwLiBUaGlzIHBhdGNoIG1ha2Vz
IHN1cmUgd2UgZG9uJ3QgdHJ5IGFuZCBzZW5kIElQQyBhdCBhbGwgd2hlbiBtX2Rlc3RpbmF0aW9u
SUQKKyAgICAgICAgaXMgMC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1ZGlv
RGVzdGluYXRpb25Qcm94eTo6Y29ubmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1
ZGlvRGVzdGluYXRpb25Qcm94eTo6c3RhcnRSZW5kZXJpbmcpOgorICAgICAgICAoV2ViS2l0OjpS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3BSZW5kZXJpbmcpOgorICAgICAgICAoV2Vi
S2l0OjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3JhZ2VDaGFuZ2VkKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaDoK
KwogMjAyMS0wNC0xOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAg
IE1vdGlvbk1hcmsncyBDYW52YXMtQXJjcyBzdWJ0ZXN0IGlzIGJyb2tlbiBpZiB0aGUgR1BVUHJv
Y2VzcyBpcyBub3QgeWV0IHJ1bm5pbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNw
cAppbmRleCAyY2E3NTNkNWVhMDI5MzNjY2FiMTljNTI2N2RlMWNiYWQzODBhMGEzLi41Y2IzZmU2
Njk2NWE2NmY4Y2UzN2FjMDk1ZTcwNmIxMWZlZTQyYjUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHkuY3BwCkBAIC05OCwxMiArOTgsMTggQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHk6OnN0b3BSZW5kZXJpbmdUaHJlYWQoKQogICAgIG1fcmVuZGVyVGhyZWFkID0g
bnVsbHB0cjsKIH0KIAotR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIFJlbW90ZUF1ZGlvRGVzdGluYXRp
b25Qcm94eTo6ZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKQorSVBDOjpDb25uZWN0aW9uKiBS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmNvbm5lY3Rpb24oKQogewogICAgIGlmICghbV9n
cHVQcm9jZXNzQ29ubmVjdGlvbikgewogICAgICAgICBtX2dwdVByb2Nlc3NDb25uZWN0aW9uID0g
bWFrZVdlYWtQdHIoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24oKSk7CiAgICAgICAgIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPmFkZENsaWVudCgqdGhp
cyk7CiAKKyAgICAgICAgaWYgKCFtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCku
c2VuZFN5bmMoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpDcmVhdGVB
dWRpb0Rlc3RpbmF0aW9uKG1faW5wdXREZXZpY2VJZCwgbV9udW1iZXJPZklucHV0Q2hhbm5lbHMs
IG51bWJlck9mT3V0cHV0Q2hhbm5lbHMoKSwgc2FtcGxlUmF0ZSgpLCBoYXJkd2FyZVNhbXBsZVJh
dGUoKSwgbV9yZW5kZXJTZW1hcGhvcmUpLCBNZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5hdGlv
bk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVzdGluYXRpb246OlJlcGx5KG1fZGVzdGluYXRpb25JRCks
IDApKSB7CisgICAgICAgICAgICAvLyBUaGUgR1BVUHJvY2VzcyBsaWtlbHkgY3Jhc2hlZCBkdXJp
bmcgdGhpcyBzeW5jaHJvbm91cyBJUEMuIGdwdVByb2Nlc3NDb25uZWN0aW9uRGlkQ2xvc2UoKSB3
aWxsIGdldCBjYWxsZWQgdG8gcmVjb25uZWN0IHRvIHRoZSBHUFVQcm9jZXNzLgorICAgICAgICAg
ICAgUkVMRUFTRV9MT0dfRVJST1IoTWVkaWEsICJSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OmRlc3RpbmF0aW9uSUQ6IElQQyB0byBjcmVhdGUgdGhlIGF1ZGlvIGRlc3RpbmF0aW9uIGZhaWxl
ZCwgdGhlIEdQVVByb2Nlc3MgbGlrZWx5IGNyYXNoZWQuIik7CisgICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICAgICAgfQorCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgICAgIG1fY3Vy
cmVudEZyYW1lID0gMDsKICAgICAgICAgQXVkaW9TdHJlYW1CYXNpY0Rlc2NyaXB0aW9uIHN0cmVh
bUZvcm1hdDsKQEAgLTExNSwxNCArMTIxLDEyIEBAIEdQVVByb2Nlc3NDb25uZWN0aW9uJiBSZW1v
dGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCkKIAog
ICAgICAgICBzdGFydFJlbmRlcmluZ1RocmVhZCgpOwogICAgIH0KLSAgICByZXR1cm4gKm1fZ3B1
UHJvY2Vzc0Nvbm5lY3Rpb247CisgICAgcmV0dXJuIG1fZGVzdGluYXRpb25JRCA/ICZtX2dwdVBy
b2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCkgOiBudWxscHRyOwogfQogCi1SZW1vdGVBdWRp
b0Rlc3RpbmF0aW9uSWRlbnRpZmllciBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmRlc3Rp
bmF0aW9uSUQoKQorSVBDOjpDb25uZWN0aW9uKiBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OmV4aXN0aW5nQ29ubmVjdGlvbigpCiB7Ci0gICAgaWYgKCFtX2Rlc3RpbmF0aW9uSUQpCi0gICAg
ICAgIGVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1l
c3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6Q3JlYXRlQXVkaW9EZXN0aW5h
dGlvbihtX2lucHV0RGV2aWNlSWQsIG1fbnVtYmVyT2ZJbnB1dENoYW5uZWxzLCBudW1iZXJPZk91
dHB1dENoYW5uZWxzKCksIHNhbXBsZVJhdGUoKSwgaGFyZHdhcmVTYW1wbGVSYXRlKCksIG1fcmVu
ZGVyU2VtYXBob3JlKSwgTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpD
cmVhdGVBdWRpb0Rlc3RpbmF0aW9uOjpSZXBseShtX2Rlc3RpbmF0aW9uSUQpLCAwKTsKLSAgICBy
ZXR1cm4gbV9kZXN0aW5hdGlvbklEOworICAgIHJldHVybiBtX2dwdVByb2Nlc3NDb25uZWN0aW9u
ICYmIG1fZGVzdGluYXRpb25JRCA/ICZtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9u
KCkgOiBudWxscHRyOwogfQogCiBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6On5SZW1vdGVB
dWRpb0Rlc3RpbmF0aW9uUHJveHkoKQpAQCAtMTM5LDcgKzE0MywxMSBAQCBSZW1vdGVBdWRpb0Rl
c3RpbmF0aW9uUHJveHk6On5SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkoKQogCiB2b2lkIFJl
bW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6c3RhcnRSZW5kZXJpbmcoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBlbnN1cmVHUFVQcm9j
ZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpTdGFydEF1ZGlvRGVzdGluYXRpb24oZGVz
dGluYXRpb25JRCgpKSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29t
cGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlp
bmcpIG11dGFibGUgeworICAgIGF1dG8qIGNvbm5lY3Rpb24gPSB0aGlzLT5jb25uZWN0aW9uKCk7
CisgICAgaWYgKCFjb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
ZmFsc2UpOworCisgICAgY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6U3RhcnRBdWRpb0Rlc3RpbmF0aW9uKG1fZGVz
dGluYXRpb25JRCksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGNvbXBs
ZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGJvb2wgaXNQbGF5aW5n
KSBtdXRhYmxlIHsKICAgICAgICAgc2V0SXNQbGF5aW5nKGlzUGxheWluZyk7CiAgICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKGlzUGxheWluZyk7CiAgICAgfSk7CkBAIC0xNDcsNyArMTU1LDExIEBA
IHZvaWQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5OjpzdGFydFJlbmRlcmluZyhDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmCiAKIHZvaWQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvblBy
b3h5OjpzdG9wUmVuZGVyaW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCiB7Ci0gICAgZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0
aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9u
TWFuYWdlcjo6U3RvcEF1ZGlvRGVzdGluYXRpb24oZGVzdGluYXRpb25JRCgpKSwgW3RoaXMsIHBy
b3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlpbmcpIG11dGFibGUgeworICAgIGF1dG8q
IGNvbm5lY3Rpb24gPSB0aGlzLT5jb25uZWN0aW9uKCk7CisgICAgaWYgKCFjb25uZWN0aW9uKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29ubmVjdGlv
bi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFu
YWdlcjo6U3RvcEF1ZGlvRGVzdGluYXRpb24obV9kZXN0aW5hdGlvbklEKSwgW3RoaXMsIHByb3Rl
Y3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlpbmcpIG11dGFibGUgewogICAgICAgICBzZXRJ
c1BsYXlpbmcoaXNQbGF5aW5nKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoIWlzUGxheWlu
Zyk7CiAgICAgfSk7CkBAIC0xNjcsNyArMTc5LDggQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0
aW9uUHJveHk6OnJlbmRlclF1YW50dW0oKQogI2lmIFBMQVRGT1JNKENPQ09BKQogdm9pZCBSZW1v
dGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3JhZ2VDaGFuZ2VkKFNoYXJlZE1lbW9yeSogc3Rv
cmFnZSwgY29uc3QgV2ViQ29yZTo6Q0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uJiBmb3JtYXQsIHNp
emVfdCBmcmFtZUNvdW50KQogewotICAgIGlmICghbV9ncHVQcm9jZXNzQ29ubmVjdGlvbikKKyAg
ICBhdXRvKiBjb25uZWN0aW9uID0gZXhpc3RpbmdDb25uZWN0aW9uKCk7CisgICAgaWYgKCFjb25u
ZWN0aW9uKQogICAgICAgICByZXR1cm47CiAKICAgICBTaGFyZWRNZW1vcnk6OkhhbmRsZSBoYW5k
bGU7CkBAIC0xODEsNyArMTk0LDcgQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OnN0b3JhZ2VDaGFuZ2VkKFNoYXJlZE1lbW9yeSogc3RvcmFnZSwgY29uc3QgV2UKICAgICB1aW50
NjRfdCBkYXRhU2l6ZSA9IDA7CiAjZW5kaWYKIAotICAgIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24t
PmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdl
cjo6QXVkaW9TYW1wbGVzU3RvcmFnZUNoYW5nZWQgeyBkZXN0aW5hdGlvbklEKCksIFNoYXJlZE1l
bW9yeTo6SVBDSGFuZGxlIHsgV1RGTW92ZShoYW5kbGUpLCBkYXRhU2l6ZSB9LCBmb3JtYXQsIGZy
YW1lQ291bnQgfSwgMCk7CisgICAgbV9ncHVQcm9jZXNzQ29ubmVjdGlvbi0+Y29ubmVjdGlvbigp
LnNlbmQoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpBdWRpb1NhbXBs
ZXNTdG9yYWdlQ2hhbmdlZCB7IG1fZGVzdGluYXRpb25JRCwgU2hhcmVkTWVtb3J5OjpJUENIYW5k
bGUgeyBXVEZNb3ZlKGhhbmRsZSksIGRhdGFTaXplIH0sIGZvcm1hdCwgZnJhbWVDb3VudCB9LCAw
KTsKIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaAppbmRleCA0ZDVi
MmZlNTgwOGEzM2NhMDcwOGIxMmU3Mjg2YzBmZTgzMzQ4NzdkLi5mYjU5NTYyYmNiYzc0MDVjMzNj
OTE3MTc5ODNkZmNhMzMwM2I1N2FlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmgK
QEAgLTc5LDggKzc5LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHN0b3BSZW5kZXJpbmdUaHJlYWQo
KTsKICAgICB2b2lkIHJlbmRlclF1YW50dW0oKTsKIAotICAgIFJlbW90ZUF1ZGlvRGVzdGluYXRp
b25JZGVudGlmaWVyIGRlc3RpbmF0aW9uSUQoKTsKLSAgICBHUFVQcm9jZXNzQ29ubmVjdGlvbiYg
ZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKTsKKyAgICBJUEM6OkNvbm5lY3Rpb24qIGNvbm5l
Y3Rpb24oKTsKKyAgICBJUEM6OkNvbm5lY3Rpb24qIGV4aXN0aW5nQ29ubmVjdGlvbigpOwogCiAg
ICAgLy8gR1BVUHJvY2Vzc0Nvbm5lY3Rpb246OkNsaWVudC4KICAgICB2b2lkIGdwdVByb2Nlc3ND
b25uZWN0aW9uRGlkQ2xvc2UoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mKSBmaW5hbDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426503</attachid>
            <date>2021-04-19 18:04:15 -0700</date>
            <delta_ts>2021-04-19 21:49:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224790-20210419180414.patch</filename>
            <type>text/plain</type>
            <size>9594</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MjgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI1ZjEyNWZlZTllODAzNGQ0
ZjFiYWI5MDhlMzk0Mzg3NTQzN2M5ODIuLjkzZDg2ZThkZjgyYzEzZWVlMThjNDY2ZmI1NzFmZDQz
MGZmMDAxMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjEtMDQtMTkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMjc2MTg5KTog
R1BVUHJvY2Vzcy5XZWJQcm9jZXNzVGVybWluYXRpb25BZnRlclRvb01hbnlHUFVQcm9jZXNzQ3Jh
c2hlcyBpcyBjcmFzaGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0NzkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83Njg2OTMxOD4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBHUFVQcm9jZXNzLldl
YlByb2Nlc3NUZXJtaW5hdGlvbkFmdGVyVG9vTWFueUdQVVByb2Nlc3NDcmFzaGVzIGlzIGludGVu
dGlvbmFsbHkgcmVwZWF0ZWRseQorICAgICAgICBraWxsaW5nIHRoZSBHUFVQcm9jZXNzLiBBcyBh
IHJlc3VsdCwgdGhlIEdQVVByb2Nlc3MgbWF5IGdldCBraWxsZWQgdmVyeSBzaG9ydGx5IGFmdGVy
CisgICAgICAgIGEgcmVsYXVuY2ggYW5kIHRoZSBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdl
cjo6U3RhcnRBdWRpb0Rlc3RpbmF0aW9uIHN5bmNocm9ub3VzIElQQworICAgICAgICBtYXkgZmFp
bCBpZiBpdCBpcyBvbmdvaW5nIGF0IHRoZSB0aW1lIG9mIHRoZSBjcmFzaC4gVGhpcyB3b3VsZCBj
YXVzZSBtX2Rlc3RpbmF0aW9uSUQgdG8KKyAgICAgICAgbm90IGdldCBpbml0aWFsaXplZCBhbmQg
dGhlbiBnZXQgc2VudCBhcyBJUEMgcGFyYW1ldGVyLCB0aHVzIGNyYXNoaW5nLgorCisgICAgICAg
IHByZS1yMjc2MTg5LCB3ZSB3ZXJlIG5vdCBjcmFzaGluZyBiZWNhdXNlIG1fZGVzdGluYXRpb25J
RCB3YXMgbm90IHJlc2V0IG9uIGNyYXNoIGFuZCB3ZQorICAgICAgICB3b3VsZCB0aHVzIHNlbmQg
SVBDIGZvciBhIGRlc3RpbmF0aW9uIHRoYXQgZG9lcyBub3QgZXhpc3QgYnV0IGF0IGxlYXN0IHRo
ZSBkZXN0aW5hdGlvbklECisgICAgICAgIHdvdWxkIG5vdCBiZSAwLiBUaGlzIHBhdGNoIG1ha2Vz
IHN1cmUgd2UgZG9uJ3QgdHJ5IGFuZCBzZW5kIElQQyBhdCBhbGwgd2hlbiBtX2Rlc3RpbmF0aW9u
SUQKKyAgICAgICAgaXMgMC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1ZGlv
RGVzdGluYXRpb25Qcm94eTo6Y29ubmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1
ZGlvRGVzdGluYXRpb25Qcm94eTo6c3RhcnRSZW5kZXJpbmcpOgorICAgICAgICAoV2ViS2l0OjpS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3BSZW5kZXJpbmcpOgorICAgICAgICAoV2Vi
S2l0OjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3JhZ2VDaGFuZ2VkKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaDoK
KwogMjAyMS0wNC0xOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAg
IE1vdGlvbk1hcmsncyBDYW52YXMtQXJjcyBzdWJ0ZXN0IGlzIGJyb2tlbiBpZiB0aGUgR1BVUHJv
Y2VzcyBpcyBub3QgeWV0IHJ1bm5pbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNw
cAppbmRleCAyY2E3NTNkNWVhMDI5MzNjY2FiMTljNTI2N2RlMWNiYWQzODBhMGEzLi41Y2IzZmU2
Njk2NWE2NmY4Y2UzN2FjMDk1ZTcwNmIxMWZlZTQyYjUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHkuY3BwCkBAIC05OCwxMiArOTgsMTggQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHk6OnN0b3BSZW5kZXJpbmdUaHJlYWQoKQogICAgIG1fcmVuZGVyVGhyZWFkID0g
bnVsbHB0cjsKIH0KIAotR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIFJlbW90ZUF1ZGlvRGVzdGluYXRp
b25Qcm94eTo6ZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKQorSVBDOjpDb25uZWN0aW9uKiBS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmNvbm5lY3Rpb24oKQogewogICAgIGlmICghbV9n
cHVQcm9jZXNzQ29ubmVjdGlvbikgewogICAgICAgICBtX2dwdVByb2Nlc3NDb25uZWN0aW9uID0g
bWFrZVdlYWtQdHIoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24oKSk7CiAgICAgICAgIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPmFkZENsaWVudCgqdGhp
cyk7CiAKKyAgICAgICAgaWYgKCFtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCku
c2VuZFN5bmMoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpDcmVhdGVB
dWRpb0Rlc3RpbmF0aW9uKG1faW5wdXREZXZpY2VJZCwgbV9udW1iZXJPZklucHV0Q2hhbm5lbHMs
IG51bWJlck9mT3V0cHV0Q2hhbm5lbHMoKSwgc2FtcGxlUmF0ZSgpLCBoYXJkd2FyZVNhbXBsZVJh
dGUoKSwgbV9yZW5kZXJTZW1hcGhvcmUpLCBNZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5hdGlv
bk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVzdGluYXRpb246OlJlcGx5KG1fZGVzdGluYXRpb25JRCks
IDApKSB7CisgICAgICAgICAgICAvLyBUaGUgR1BVUHJvY2VzcyBsaWtlbHkgY3Jhc2hlZCBkdXJp
bmcgdGhpcyBzeW5jaHJvbm91cyBJUEMuIGdwdVByb2Nlc3NDb25uZWN0aW9uRGlkQ2xvc2UoKSB3
aWxsIGdldCBjYWxsZWQgdG8gcmVjb25uZWN0IHRvIHRoZSBHUFVQcm9jZXNzLgorICAgICAgICAg
ICAgUkVMRUFTRV9MT0dfRVJST1IoTWVkaWEsICJSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OmRlc3RpbmF0aW9uSUQ6IElQQyB0byBjcmVhdGUgdGhlIGF1ZGlvIGRlc3RpbmF0aW9uIGZhaWxl
ZCwgdGhlIEdQVVByb2Nlc3MgbGlrZWx5IGNyYXNoZWQuIik7CisgICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICAgICAgfQorCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgICAgIG1fY3Vy
cmVudEZyYW1lID0gMDsKICAgICAgICAgQXVkaW9TdHJlYW1CYXNpY0Rlc2NyaXB0aW9uIHN0cmVh
bUZvcm1hdDsKQEAgLTExNSwxNCArMTIxLDEyIEBAIEdQVVByb2Nlc3NDb25uZWN0aW9uJiBSZW1v
dGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCkKIAog
ICAgICAgICBzdGFydFJlbmRlcmluZ1RocmVhZCgpOwogICAgIH0KLSAgICByZXR1cm4gKm1fZ3B1
UHJvY2Vzc0Nvbm5lY3Rpb247CisgICAgcmV0dXJuIG1fZGVzdGluYXRpb25JRCA/ICZtX2dwdVBy
b2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCkgOiBudWxscHRyOwogfQogCi1SZW1vdGVBdWRp
b0Rlc3RpbmF0aW9uSWRlbnRpZmllciBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmRlc3Rp
bmF0aW9uSUQoKQorSVBDOjpDb25uZWN0aW9uKiBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OmV4aXN0aW5nQ29ubmVjdGlvbigpCiB7Ci0gICAgaWYgKCFtX2Rlc3RpbmF0aW9uSUQpCi0gICAg
ICAgIGVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1l
c3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6Q3JlYXRlQXVkaW9EZXN0aW5h
dGlvbihtX2lucHV0RGV2aWNlSWQsIG1fbnVtYmVyT2ZJbnB1dENoYW5uZWxzLCBudW1iZXJPZk91
dHB1dENoYW5uZWxzKCksIHNhbXBsZVJhdGUoKSwgaGFyZHdhcmVTYW1wbGVSYXRlKCksIG1fcmVu
ZGVyU2VtYXBob3JlKSwgTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpD
cmVhdGVBdWRpb0Rlc3RpbmF0aW9uOjpSZXBseShtX2Rlc3RpbmF0aW9uSUQpLCAwKTsKLSAgICBy
ZXR1cm4gbV9kZXN0aW5hdGlvbklEOworICAgIHJldHVybiBtX2dwdVByb2Nlc3NDb25uZWN0aW9u
ICYmIG1fZGVzdGluYXRpb25JRCA/ICZtX2dwdVByb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9u
KCkgOiBudWxscHRyOwogfQogCiBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6On5SZW1vdGVB
dWRpb0Rlc3RpbmF0aW9uUHJveHkoKQpAQCAtMTM5LDcgKzE0MywxMSBAQCBSZW1vdGVBdWRpb0Rl
c3RpbmF0aW9uUHJveHk6On5SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkoKQogCiB2b2lkIFJl
bW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6c3RhcnRSZW5kZXJpbmcoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBlbnN1cmVHUFVQcm9j
ZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpTdGFydEF1ZGlvRGVzdGluYXRpb24oZGVz
dGluYXRpb25JRCgpKSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29t
cGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlp
bmcpIG11dGFibGUgeworICAgIGF1dG8qIGNvbm5lY3Rpb24gPSB0aGlzLT5jb25uZWN0aW9uKCk7
CisgICAgaWYgKCFjb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
ZmFsc2UpOworCisgICAgY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpS
ZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6U3RhcnRBdWRpb0Rlc3RpbmF0aW9uKG1fZGVz
dGluYXRpb25JRCksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGNvbXBs
ZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGJvb2wgaXNQbGF5aW5n
KSBtdXRhYmxlIHsKICAgICAgICAgc2V0SXNQbGF5aW5nKGlzUGxheWluZyk7CiAgICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKGlzUGxheWluZyk7CiAgICAgfSk7CkBAIC0xNDcsNyArMTU1LDExIEBA
IHZvaWQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5OjpzdGFydFJlbmRlcmluZyhDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmCiAKIHZvaWQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvblBy
b3h5OjpzdG9wUmVuZGVyaW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCiB7Ci0gICAgZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0
aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9u
TWFuYWdlcjo6U3RvcEF1ZGlvRGVzdGluYXRpb24oZGVzdGluYXRpb25JRCgpKSwgW3RoaXMsIHBy
b3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlpbmcpIG11dGFibGUgeworICAgIGF1dG8q
IGNvbm5lY3Rpb24gPSB0aGlzLT5jb25uZWN0aW9uKCk7CisgICAgaWYgKCFjb25uZWN0aW9uKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29ubmVjdGlv
bi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFu
YWdlcjo6U3RvcEF1ZGlvRGVzdGluYXRpb24obV9kZXN0aW5hdGlvbklEKSwgW3RoaXMsIHByb3Rl
Y3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKV0oYm9vbCBpc1BsYXlpbmcpIG11dGFibGUgewogICAgICAgICBzZXRJ
c1BsYXlpbmcoaXNQbGF5aW5nKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoIWlzUGxheWlu
Zyk7CiAgICAgfSk7CkBAIC0xNjcsNyArMTc5LDggQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0
aW9uUHJveHk6OnJlbmRlclF1YW50dW0oKQogI2lmIFBMQVRGT1JNKENPQ09BKQogdm9pZCBSZW1v
dGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3JhZ2VDaGFuZ2VkKFNoYXJlZE1lbW9yeSogc3Rv
cmFnZSwgY29uc3QgV2ViQ29yZTo6Q0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uJiBmb3JtYXQsIHNp
emVfdCBmcmFtZUNvdW50KQogewotICAgIGlmICghbV9ncHVQcm9jZXNzQ29ubmVjdGlvbikKKyAg
ICBhdXRvKiBjb25uZWN0aW9uID0gZXhpc3RpbmdDb25uZWN0aW9uKCk7CisgICAgaWYgKCFjb25u
ZWN0aW9uKQogICAgICAgICByZXR1cm47CiAKICAgICBTaGFyZWRNZW1vcnk6OkhhbmRsZSBoYW5k
bGU7CkBAIC0xODEsNyArMTk0LDcgQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6
OnN0b3JhZ2VDaGFuZ2VkKFNoYXJlZE1lbW9yeSogc3RvcmFnZSwgY29uc3QgV2UKICAgICB1aW50
NjRfdCBkYXRhU2l6ZSA9IDA7CiAjZW5kaWYKIAotICAgIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24t
PmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdl
cjo6QXVkaW9TYW1wbGVzU3RvcmFnZUNoYW5nZWQgeyBkZXN0aW5hdGlvbklEKCksIFNoYXJlZE1l
bW9yeTo6SVBDSGFuZGxlIHsgV1RGTW92ZShoYW5kbGUpLCBkYXRhU2l6ZSB9LCBmb3JtYXQsIGZy
YW1lQ291bnQgfSwgMCk7CisgICAgbV9ncHVQcm9jZXNzQ29ubmVjdGlvbi0+Y29ubmVjdGlvbigp
LnNlbmQoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpBdWRpb1NhbXBs
ZXNTdG9yYWdlQ2hhbmdlZCB7IG1fZGVzdGluYXRpb25JRCwgU2hhcmVkTWVtb3J5OjpJUENIYW5k
bGUgeyBXVEZNb3ZlKGhhbmRsZSksIGRhdGFTaXplIH0sIGZvcm1hdCwgZnJhbWVDb3VudCB9LCAw
KTsKIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaAppbmRleCA0ZDVi
MmZlNTgwOGEzM2NhMDcwOGIxMmU3Mjg2YzBmZTgzMzQ4NzdkLi5mYjU5NTYyYmNiYzc0MDVjMzNj
OTE3MTc5ODNkZmNhMzMwM2I1N2FlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmgK
QEAgLTc5LDggKzc5LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHN0b3BSZW5kZXJpbmdUaHJlYWQo
KTsKICAgICB2b2lkIHJlbmRlclF1YW50dW0oKTsKIAotICAgIFJlbW90ZUF1ZGlvRGVzdGluYXRp
b25JZGVudGlmaWVyIGRlc3RpbmF0aW9uSUQoKTsKLSAgICBHUFVQcm9jZXNzQ29ubmVjdGlvbiYg
ZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKTsKKyAgICBJUEM6OkNvbm5lY3Rpb24qIGNvbm5l
Y3Rpb24oKTsKKyAgICBJUEM6OkNvbm5lY3Rpb24qIGV4aXN0aW5nQ29ubmVjdGlvbigpOwogCiAg
ICAgLy8gR1BVUHJvY2Vzc0Nvbm5lY3Rpb246OkNsaWVudC4KICAgICB2b2lkIGdwdVByb2Nlc3ND
b25uZWN0aW9uRGlkQ2xvc2UoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mKSBmaW5hbDsKZGlmZiAtLWdp
dCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBjMzIzYjQ0NjQ5ZDEy
OWYxN2ZkYzAxYmZlMmE5YmZjMDJjZDJiYmM4Li5iNDQ4ZmM1MjE2MTE3M2FiM2VjY2ExM2U0ZDI2
NmIyNTcwMzRkNzI0IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDQtMTkgIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMjc2MTg5KTogR1BVUHJvY2Vzcy5X
ZWJQcm9jZXNzVGVybWluYXRpb25BZnRlclRvb01hbnlHUFVQcm9jZXNzQ3Jhc2hlcyBpcyBjcmFz
aGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0
NzkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83Njg2OTMxOD4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZS1lbmFibGUgQVBJIHRlc3Qgbm93IHRo
YXQgaXQgaXMgbm8gbG9uZ2VyIGNyYXNoaW5nLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9HUFVQcm9jZXNzLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMjEt
MDQtMTkgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkLCB0ZW1wb3JhcmlseSBkaXNhYmxlIEdQVVByb2Nlc3MuRElTQUJMRURfV2ViUHJvY2Vzc1Rl
cm1pbmF0aW9uQWZ0ZXJUb29NYW55R1BVUHJvY2Vzc0NyYXNoZXMKZGlmZiAtLWdpdCBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvR1BVUHJvY2Vzcy5tbSBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvR1BVUHJvY2Vzcy5tbQppbmRleCAzYjdiZjQy
NTFlODk2NDE5YTg1MGRiMGFjYzc3ZmE2NDdmOTcyNDhkLi4zOTk0ZDc2OWNkM2I0NGEwNWZlODBl
MDYwYzU5NDhlNTgwY2JhYTJlIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdENvY29hL0dQVVByb2Nlc3MubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9HUFVQcm9jZXNzLm1tCkBAIC0xMTUsNyArMTE1LDcgQEAgVEVTVChHUFVQ
cm9jZXNzLCBSZWxhdW5jaE9uQ3Jhc2gpCiAgICAgRVhQRUNUX1RSVUUoW3dlYlZpZXcgX2lzUGxh
eWluZ0F1ZGlvXSk7CiB9CiAKLVRFU1QoR1BVUHJvY2VzcywgRElTQUJMRURfV2ViUHJvY2Vzc1Rl
cm1pbmF0aW9uQWZ0ZXJUb29NYW55R1BVUHJvY2Vzc0NyYXNoZXMpCitURVNUKEdQVVByb2Nlc3Ms
IFdlYlByb2Nlc3NUZXJtaW5hdGlvbkFmdGVyVG9vTWFueUdQVVByb2Nlc3NDcmFzaGVzKQogewog
ICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9u
IGFsbG9jXSBpbml0XSk7CiAgICAgV0tQcmVmZXJlbmNlc1NldEJvb2xWYWx1ZUZvcktleUZvclRl
c3RpbmcoKF9fYnJpZGdlIFdLUHJlZmVyZW5jZXNSZWYpW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5j
ZXNdLCB0cnVlLCBXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiVXNlR1BVUHJvY2Vzc0Zv
ck1lZGlhRW5hYmxlZCIpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>