<?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>142375</bug_id>
          
          <creation_ts>2015-03-05 18:05:35 -0800</creation_ts>
          <short_desc>[GTK] UI process crashes if webkit_web_view_get_tls_info is called before internal load-committed event</short_desc>
          <delta_ts>2016-01-18 13:07:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugzilla.redhat.com/show_bug.cgi?id=1198891</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>150927</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>agomez</cc>
    
    <cc>berto</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mrobinson</cc>
    
    <cc>ysuzuki</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1074780</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-05 18:05:35 -0800</bug_when>
    <thetext>webkit_web_view_get_tls_info does not check if mainFrame-&gt;certificateInfo() is null before using it. It will always be null before WebFrameProxy::didCommitLoad is called, so we always crash in that case. We never noticed because Epiphany is probably the only user of this function, and it only calls it after receiving the WebKitGTK+ LOAD_COMMITTED event, since there is no point in calling this function before that. Now, I think it is user error to call this function before LOAD_COMMITTED, but we should return FALSE and maybe use g_warning() rather than crash.

So that is easy to fix. But, here is the fun part: it is possible that, if we have delayed the emission of LOAD_COMMITTED, WebFrameProxy::didStartProvisionalLoad gets called for the *next* load before we emit LOAD_COMMITTED for the previous load. In that case, the backtrace (crash reported downstream) looks like this:

 #0 webkit_web_view_get_tls_info at /lib64/libwebkit2gtk-4.0.so.37
 #1 load_changed_cb
 #6 webkitWebViewEmitLoadChanged(_WebKitWebView*, WebKitLoadEvent, bool) at /lib64/libwebkit2gtk-4.0.so.37
 #7 webkitWebViewEmitDelayedLoadEvents(_WebKitWebView*) at /lib64/libwebkit2gtk-4.0.so.37
 #8 webkitWebViewLoadChanged(_WebKitWebView*, WebKitLoadEvent) at /lib64/libwebkit2gtk-4.0.so.37
 #9 WebKit::WebPageProxy::didStartProvisionalLoadForFrame(unsigned long, unsigned long, WTF::String const&amp;, WTF::String const&amp;, WebKit::UserData const&amp;) at /lib64/libwebkit2gtk-4.0.so.37
 #10 void IPC::handleMessage&lt;Messages::WebPageProxy::DidStartProvisionalLoadForFrame, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(unsigned long, unsigned long, WTF::String const&amp;, WTF::String const&amp;, WebKit::UserData const&amp;)&gt;(IPC::MessageDecoder&amp;, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(unsigned long, unsigned long, WTF::String const&amp;, WTF::String const&amp;, WebKit::UserData const&amp;)) at /lib64/libwebkit2gtk-4.0.so.37

So LOAD_COMMITTED gets emitted in response to the internal load started event, and Ephy crashes because it has used webkit_web_view_get_tls_info before the internal load committed event! Now, the crash is easy to fix, but is it really wise to emit LOAD_COMMITTED in this case? It is being done intentionally, judging by the comment &quot;Finish a possible previous load waiting for main resource&quot; in webkitWebViewLoadChanged, but I bet this will cause other unexpected, impossible to reproduce bugs. For instance, a random example: with this crash fixed, Epiphany would next call webkit_web_view_get_uri() and get the URI for the new page that&apos;s loading, not the page that was committed. Then it will get the next load started event without ever returning to the main loop (which I suppose a reasonable application might expect to happen). On the other hand, a reasonable application is more likely to expect to always receive a LOAD_COMMITTED for each LOAD_STARTED, so I guess we can&apos;t just skip it.

Eh, I will just fix the crash, but this is something to think about.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074788</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-05 18:23:01 -0800</bug_when>
    <thetext>Mmmm, no, my explanation does not quite hold up, because the WebFrameProxy should always have a valid certificateInfo if any load has ever been committed in that frame before. What am I missing....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074789</commentid>
    <comment_count>2</comment_count>
      <attachid>248028</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-05 18:27:22 -0800</bug_when>
    <thetext>Created attachment 248028
Fix crash in webkit_web_view_get_tls_info</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074790</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-05 18:29:59 -0800</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074791</commentid>
    <comment_count>4</comment_count>
      <attachid>248028</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-03-05 18:33:31 -0800</bug_when>
    <thetext>Comment on attachment 248028
Fix crash in webkit_web_view_get_tls_info

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

&gt; Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:47
&gt; +        webkit_web_view_get_tls_info(m_webView, nullptr, nullptr);
&gt; +        // Success: didn&apos;t crash
&gt; +        LoadTrackingTest::provisionalLoadStarted();

Wouldn&apos;t it make sense to test that the return value is FALSE here as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074792</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-05 18:46:36 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Wouldn&apos;t it make sense to test that the return value is FALSE here as well?

That&apos;s what I tired at first, but see comment #1 for why it will sometimes return TRUE!

Actually, you could make a strong argument that that, too, is a bug we should fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074793</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-05 18:47:36 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; That&apos;s what I tired at first

Um, Freudian slip? Good night!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074843</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-03-05 22:49:25 -0800</bug_when>
    <thetext>(In reply to comment #0)
&gt; webkit_web_view_get_tls_info does not check if mainFrame-&gt;certificateInfo()
&gt; is null before using it. It will always be null before
&gt; WebFrameProxy::didCommitLoad is called, so we always crash in that case.

Yes, it&apos;s documented:

&quot;This function should be called after a response has been received from the server, so you can connect to #WebKitWebView::load-changed and call this function when it&apos;s emitted with %WEBKIT_LOAD_COMMITTED event.&quot;

It&apos;s true that we shouldn&apos;t crash, but it&apos;s a programmer error in any case.

&gt; We
&gt; never noticed because Epiphany is probably the only user of this function,
&gt; and it only calls it after receiving the WebKitGTK+ LOAD_COMMITTED event,
&gt; since there is no point in calling this function before that. Now, I think
&gt; it is user error to call this function before LOAD_COMMITTED, but we should
&gt; return FALSE and maybe use g_warning() rather than crash.

We have actually noticed several times, see bugs #91482 and #95949 for example. And it&apos;s the reason why we have all the delayed events mess in WebKitWebView, something that I think should be fixed in WebCore, but that I never found the time to do.

&gt; So that is easy to fix. But, here is the fun part: it is possible that, if
&gt; we have delayed the emission of LOAD_COMMITTED,
&gt; WebFrameProxy::didStartProvisionalLoad gets called for the *next* load
&gt; before we emit LOAD_COMMITTED for the previous load. In that case, the
&gt; backtrace (crash reported downstream) looks like this:
&gt; 
&gt;  #0 webkit_web_view_get_tls_info at /lib64/libwebkit2gtk-4.0.so.37
&gt;  #1 load_changed_cb
&gt;  #6 webkitWebViewEmitLoadChanged(_WebKitWebView*, WebKitLoadEvent, bool) at
&gt; /lib64/libwebkit2gtk-4.0.so.37
&gt;  #7 webkitWebViewEmitDelayedLoadEvents(_WebKitWebView*) at
&gt; /lib64/libwebkit2gtk-4.0.so.37
&gt;  #8 webkitWebViewLoadChanged(_WebKitWebView*, WebKitLoadEvent) at
&gt; /lib64/libwebkit2gtk-4.0.so.37
&gt;  #9 WebKit::WebPageProxy::didStartProvisionalLoadForFrame(unsigned long,
&gt; unsigned long, WTF::String const&amp;, WTF::String const&amp;, WebKit::UserData
&gt; const&amp;) at /lib64/libwebkit2gtk-4.0.so.37
&gt;  #10 void
&gt; IPC::handleMessage&lt;Messages::WebPageProxy::DidStartProvisionalLoadForFrame,
&gt; WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(unsigned long, unsigned
&gt; long, WTF::String const&amp;, WTF::String const&amp;, WebKit::UserData
&gt; const&amp;)&gt;(IPC::MessageDecoder&amp;, WebKit::WebPageProxy*, void
&gt; (WebKit::WebPageProxy::*)(unsigned long, unsigned long, WTF::String const&amp;,
&gt; WTF::String const&amp;, WebKit::UserData const&amp;)) at
&gt; /lib64/libwebkit2gtk-4.0.so.37
&gt; 
&gt; So LOAD_COMMITTED gets emitted in response to the internal load started
&gt; event, and Ephy crashes because it has used webkit_web_view_get_tls_info
&gt; before the internal load committed event! Now, the crash is easy to fix, but
&gt; is it really wise to emit LOAD_COMMITTED in this case? It is being done
&gt; intentionally, judging by the comment &quot;Finish a possible previous load
&gt; waiting for main resource&quot; in webkitWebViewLoadChanged, but I bet this will
&gt; cause other unexpected, impossible to reproduce bugs. For instance, a random
&gt; example: with this crash fixed, Epiphany would next call
&gt; webkit_web_view_get_uri() and get the URI for the new page that&apos;s loading,
&gt; not the page that was committed. Then it will get the next load started
&gt; event without ever returning to the main loop (which I suppose a reasonable
&gt; application might expect to happen). On the other hand, a reasonable
&gt; application is more likely to expect to always receive a LOAD_COMMITTED for
&gt; each LOAD_STARTED, so I guess we can&apos;t just skip it.
&gt; 
&gt; Eh, I will just fix the crash, but this is something to think about.

Yes, the delayed signals thing is problematic, we need to finish previous loads, so if committed was fired, but we were waiting for the main resource to emit it, if a new load starts we emit all delayed events, because the client always expects at least a finished signal. I see how this could be problematic, though. This has caused my a lot of headaches indeed, and I think the only solution is to make WebCore report load events consistently when loading from the history cache.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074844</commentid>
    <comment_count>8</comment_count>
      <attachid>248028</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-03-05 22:53:37 -0800</bug_when>
    <thetext>Comment on attachment 248028
Fix crash in webkit_web_view_get_tls_info

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

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:3424
&gt; -    const WebCore::CertificateInfo&amp; certificateInfo = mainFrame-&gt;certificateInfo()-&gt;certificateInfo();
&gt; +    WebCertificateInfo* webkitCertificateInfo = mainFrame-&gt;certificateInfo();
&gt; +    if (!webkitCertificateInfo)
&gt; +        return FALSE;

I have always tried to avoid this, because it hides any possible problem, like the one you discovered. We should only return FALSE if the load hasn&apos;t been committed, as you say in the documentation, but that&apos;s not what you are doing here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074930</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-06 07:49:27 -0800</bug_when>
    <thetext>Hopefully we&apos;ll be allowed to change when the internal load committed event is emitted when loading from the page cache, but if not I see another possible way out: we could add a WEBKIT_LOAD_ABANDONED event and drop all delayed load events if the internal provisional load started event is ever emitted before we have emitted our delayed WEBKIT_LOAD_COMMITTED.

(In reply to comment #8)
&gt; I have always tried to avoid this, because it hides any possible problem,
&gt; like the one you discovered. We should only return FALSE if the load hasn&apos;t
&gt; been committed, as you say in the documentation, but that&apos;s not what you are
&gt; doing here.

OK, I agree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075307</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-07 16:01:26 -0800</bug_when>
    <thetext>(In reply to comment #8) 
&gt; I have always tried to avoid this, because it hides any possible problem,
&gt; like the one you discovered. We should only return FALSE if the load hasn&apos;t
&gt; been committed, as you say in the documentation, but that&apos;s not what you are
&gt; doing here.

I think the PageLoadState class was designed explicitly to prevent me from figuring out what the page load state is (including whether or not the load has been committed). I&apos;m confused why. The easiest way to get the state I see would be to save the last WebKitLoadEvent in the WebKitWebViewPrivate struct; would that be OK? We could even make it a public property (if we add one new state to indicate no load has ever occurred).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075355</commentid>
    <comment_count>11</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-03-08 00:07:39 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #8) 
&gt; &gt; I have always tried to avoid this, because it hides any possible problem,
&gt; &gt; like the one you discovered. We should only return FALSE if the load hasn&apos;t
&gt; &gt; been committed, as you say in the documentation, but that&apos;s not what you are
&gt; &gt; doing here.
&gt; 
&gt; I think the PageLoadState class was designed explicitly to prevent me from
&gt; figuring out what the page load state is (including whether or not the load
&gt; has been committed). I&apos;m confused why. The easiest way to get the state I
&gt; see would be to save the last WebKitLoadEvent in the WebKitWebViewPrivate
&gt; struct; would that be OK? We could even make it a public property (if we add
&gt; one new state to indicate no load has ever occurred).

I think we should fix it in WebCore and remove all the delayed events mess, this workaround has gone too far already. We discarded the idea of having a state property (like the wk1 one) in favor of the load signal with enum parameter. application can use that to track the load state if needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075372</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-03-08 08:52:08 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; I think we should fix it in WebCore and remove all the delayed events mess,
&gt; this workaround has gone too far already. We discarded the idea of having a
&gt; state property (like the wk1 one) in favor of the load signal with enum
&gt; parameter. application can use that to track the load state if needed.

But once that is fixed (this is really two separate issues), if we still don&apos;t track the load state, what change shall we make in webkit_web_view_get_tls_info? Your request is to &quot;only return FALSE if the load hasn&apos;t been committed&quot;, but that function cannot know if the load has been committed.

The function has to return FALSE if the certificateInfo is invalid, because the only other option is to return TRUE and that would be crazy, but I presume you want it to g_return_val_if_fail to get a critical warning if the load has not been committed? How about we use g_return_val_if_fail if certificateInfo is invalid, since if it&apos;s invalid and the programmer is calling the function there is a bug in either the application or in WebKit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075538</commentid>
    <comment_count>13</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-03-09 00:06:40 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; I think we should fix it in WebCore and remove all the delayed events mess,
&gt; &gt; this workaround has gone too far already. We discarded the idea of having a
&gt; &gt; state property (like the wk1 one) in favor of the load signal with enum
&gt; &gt; parameter. application can use that to track the load state if needed.
&gt; 
&gt; But once that is fixed (this is really two separate issues), if we still
&gt; don&apos;t track the load state, what change shall we make in
&gt; webkit_web_view_get_tls_info? Your request is to &quot;only return FALSE if the
&gt; load hasn&apos;t been committed&quot;, but that function cannot know if the load has
&gt; been committed.

It&apos;s not *my* request, it&apos;s what the documentation is saying in your patch :-) Anyway, if WebCore ensures that we don&apos;t receive committed until there&apos;s a main resource with a response, we can assume in webkit_web_view_get_tls_info that the user hasn&apos;t called it before committed and simply return FALSE when the certificate ois null, like your patch does. Because in that case, there&apos;s no risk of hiding other issues.

&gt; The function has to return FALSE if the certificateInfo is invalid, because
&gt; the only other option is to return TRUE and that would be crazy, but I
&gt; presume you want it to g_return_val_if_fail to get a critical warning if the
&gt; load has not been committed? How about we use g_return_val_if_fail if
&gt; certificateInfo is invalid, since if it&apos;s invalid and the programmer is
&gt; calling the function there is a bug in either the application or in WebKit.

My point is that we can unconditionally return FALSE if WebCore is updated yo we don&apos;t need all the delayed events mess. But as long as we have the delayed event code, I prefer to crash here to catch other issues, we are already saying the user not to call this before committed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110635</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-07-20 09:02:10 -0700</bug_when>
    <thetext>*** Bug 147111 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137528</commentid>
    <comment_count>15</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-10-29 08:39:46 -0700</bug_when>
    <thetext>*** Bug 150671 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137658</commentid>
    <comment_count>16</comment_count>
    <who name="Andres Gomez Garcia">agomez</who>
    <bug_when>2015-10-29 14:37:35 -0700</bug_when>
    <thetext>I&apos;m hitting this almost every time the WebProcess crashes first.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137842</commentid>
    <comment_count>17</comment_count>
      <attachid>264388</attachid>
    <who name="Andres Gomez Garcia">agomez</who>
    <bug_when>2015-10-30 02:39:50 -0700</bug_when>
    <thetext>Created attachment 264388
BT from gdb</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139595</commentid>
    <comment_count>18</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-11-05 05:32:01 -0800</bug_when>
    <thetext>With the patch attached to bug #150927 we could get rid of all the delayed events mess and other hacks we have.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146789</commentid>
    <comment_count>19</comment_count>
      <attachid>266758</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-12-07 02:19:24 -0800</bug_when>
    <thetext>Created attachment 266758
Patch

This is the patch we could land if bug #150927 is fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150542</commentid>
    <comment_count>20</comment_count>
      <attachid>267689</attachid>
    <who name="Andres Gomez Garcia">agomez</who>
    <bug_when>2015-12-19 08:57:33 -0800</bug_when>
    <thetext>Created attachment 267689
Another similar BT from gdb

BT obtained from 2.10.4 with CMake args:

&apos;-DPORT=GTK -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS_RELEASE=&quot;-O0 -g1 -DNDEBUG -DG_DISABLE_CAST_CHECKS&quot; -DCMAKE_CXX_FLAGS_RELEASE=&quot;-O0 -g1 -DNDEBUG -DG_DISABLE_CAST_CHECKS&quot;&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151129</commentid>
    <comment_count>21</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-12-23 12:49:10 -0800</bug_when>
    <thetext>*** Bug 152532 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151130</commentid>
    <comment_count>22</comment_count>
      <attachid>266758</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-12-23 12:50:05 -0800</bug_when>
    <thetext>Comment on attachment 266758
Patch

Still blocked on bug #150927.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1154663</commentid>
    <comment_count>23</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-01-12 03:41:44 -0800</bug_when>
    <thetext>Committed r194890: &lt;http://trac.webkit.org/changeset/194890&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1156437</commentid>
    <comment_count>24</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2016-01-18 13:07:18 -0800</bug_when>
    <thetext>*** Bug 142381 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>248028</attachid>
            <date>2015-03-05 18:27:22 -0800</date>
            <delta_ts>2015-12-07 02:19:24 -0800</delta_ts>
            <desc>Fix crash in webkit_web_view_get_tls_info</desc>
            <filename>bug-142375-20150305202701.patch</filename>
            <type>text/plain</type>
            <size>4055</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwOTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOGYwZjU0NjQzZjgwNTEz
NzM0MGQxNmMyOTdiM2E1YTY2YjlkODcwZi4uNjZiZThmM2NiNDNkOGI3MTIzMDdkZDRiMzFkNjIz
YjBhYmZhMTI5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE1LTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBV
SSBwcm9jZXNzIGNyYXNoZXMgaWYgd2Via2l0X3dlYl92aWV3X2dldF90bHNfaW5mbyBpcyBjYWxs
ZWQgYmVmb3JlIGludGVybmFsIGxvYWQtY29tbWl0dGVkIGV2ZW50CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIzNzUKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEb24ndCBjcmFzaCBpbiB3ZWJraXRfd2Vi
X3ZpZXdfZ2V0X3Rsc19pbmZvIGlmIG1haW5GcmFtZS0+Y2VydGlmaWNhdGVJbmZvKCkgaXMgbnVs
bCwgYXMgaXQKKyAgICAgICAgd2lsbCBiZSBiZWZvcmUgV2ViRnJhbWVQcm94eTo6ZGlkQ29tbWl0
TG9hZCBpcyBjYWxsZWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJW
aWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19nZXRfdGxzX2luZm8pOgorCiAyMDE1
LTAxLTA0ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KIAogICAg
ICAgICBbR1RLXSBBZGQgc2VjY29tcCBmaWx0ZXJzIHN1cHBvcnQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggOWQ0MWZhOTdh
M2QxNmUyYjVjNzUzOTE3YjIxZGNlOGY1NWExMzk1Ny4uNjZmZjJiYTI3MGFmYzc1ZTg1NmEyYmQw
ZWE0MTU0OTY4YjA2YjdlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKQEAgLTMzOTYsOCArMzM5Niw4IEBAIFdlYktpdERvd25s
b2FkKiB3ZWJraXRfd2ViX3ZpZXdfZG93bmxvYWRfdXJpKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcs
IGNvbnN0IGNoYXIqCiAgKiBSZXRyaWV2ZXMgdGhlICNHVGxzQ2VydGlmaWNhdGUgYXNzb2NpYXRl
ZCB3aXRoIHRoZSBtYWluIHJlc291cmNlIG9mIEB3ZWJfdmlldywKICAqIGFuZCB0aGUgI0dUbHND
ZXJ0aWZpY2F0ZUZsYWdzIHNob3dpbmcgd2hhdCBwcm9ibGVtcywgaWYgYW55LCBoYXZlIGJlZW4g
Zm91bmQKICAqIHdpdGggdGhhdCBjZXJ0aWZpY2F0ZS4KLSAqIElmIHRoZSBjb25uZWN0aW9uIGlz
IG5vdCBIVFRQUywgdGhpcyBmdW5jdGlvbiByZXR1cm5zICVGQUxTRS4KLSAqIFRoaXMgZnVuY3Rp
b24gc2hvdWxkIGJlIGNhbGxlZCBhZnRlciBhIHJlc3BvbnNlIGhhcyBiZWVuIHJlY2VpdmVkIGZy
b20gdGhlCisgKiBJZiB0aGUgY29ubmVjdGlvbiBpcyBub3QgSFRUUFMgb3IgdGhlIGxvYWQgaGFz
IG5vdCB5ZXQgYmVlbiBjb21taXR0ZWQsIHRoaXMgZnVuY3Rpb24KKyAqIHJldHVybnMgJUZBTFNF
LiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgYSByZXNwb25zZSBoYXMgYmVl
biByZWNlaXZlZCBmcm9tIHRoZQogICogc2VydmVyLCBzbyB5b3UgY2FuIGNvbm5lY3QgdG8gI1dl
YktpdFdlYlZpZXc6OmxvYWQtY2hhbmdlZCBhbmQgY2FsbCB0aGlzIGZ1bmN0aW9uCiAgKiB3aGVu
IGl0J3MgZW1pdHRlZCB3aXRoICVXRUJLSVRfTE9BRF9DT01NSVRURUQgZXZlbnQuCiAgKgpAQCAt
MzQxOSw3ICszNDE5LDExIEBAIGdib29sZWFuIHdlYmtpdF93ZWJfdmlld19nZXRfdGxzX2luZm8o
V2ViS2l0V2ViVmlldyogd2ViVmlldywgR1Rsc0NlcnRpZmljYXRlKioKICAgICBpZiAoIW1haW5G
cmFtZSkKICAgICAgICAgcmV0dXJuIEZBTFNFOwogCi0gICAgY29uc3QgV2ViQ29yZTo6Q2VydGlm
aWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8gPSBtYWluRnJhbWUtPmNlcnRpZmljYXRlSW5mbygp
LT5jZXJ0aWZpY2F0ZUluZm8oKTsKKyAgICBXZWJDZXJ0aWZpY2F0ZUluZm8qIHdlYmtpdENlcnRp
ZmljYXRlSW5mbyA9IG1haW5GcmFtZS0+Y2VydGlmaWNhdGVJbmZvKCk7CisgICAgaWYgKCF3ZWJr
aXRDZXJ0aWZpY2F0ZUluZm8pCisgICAgICAgIHJldHVybiBGQUxTRTsKKworICAgIGNvbnN0IFdl
YkNvcmU6OkNlcnRpZmljYXRlSW5mbyYgY2VydGlmaWNhdGVJbmZvID0gd2Via2l0Q2VydGlmaWNh
dGVJbmZvLT5jZXJ0aWZpY2F0ZUluZm8oKTsKICAgICBpZiAoY2VydGlmaWNhdGUpCiAgICAgICAg
ICpjZXJ0aWZpY2F0ZSA9IGNlcnRpZmljYXRlSW5mby5jZXJ0aWZpY2F0ZSgpOwogICAgIGlmIChl
cnJvcnMpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5k
ZXggOTRlNTM5OTIyYjk2NDBlYjViNDZiNzY5MTc5MGY2NjZlYzkwZWVhZS4uZDFmNDk5YzRkZTgx
MjFjM2UyMjAyOGY5MmZhZmMwZTdmMmYyMDU2OCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE1LTAzLTA1ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBV
SSBwcm9jZXNzIGNyYXNoZXMgaWYgd2Via2l0X3dlYl92aWV3X2dldF90bHNfaW5mbyBpcyBjYWxs
ZWQgYmVmb3JlIGludGVybmFsIGxvYWQtY29tbWl0dGVkIGV2ZW50CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIzNzUKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIHN1cmUgY2FsbGluZyB3ZWJraXRf
d2ViX3ZpZXdfZ2V0X3Rsc19pbmZvIGJlZm9yZSBMT0FEX0NPTU1JVFRFRCBkb2Vzbid0IGNhdXNl
IGEgY3Jhc2gKKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mkd0ay9UZXN0
U1NMLmNwcDoKKwogMjAxNS0wMS0wNCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGln
YWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gRW5hYmxlIHNlY2NvbXAgZmlsdGVycyBieSBkZWZh
dWx0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJHdGsvVGVz
dFNTTC5jcHAgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJHdGsvVGVzdFNTTC5j
cHAKaW5kZXggMGJlZDdhMTc2ODZlY2I1YTE0NmQ4Mjk4YmUzOGIxZjQwZDNiN2M4Yi4uOWQ2MjRm
NDQ1NzBhMzMzNDllZWQ1YTY5NDAzZGVmODIyMTVjN2E2NSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyR3RrL1Rlc3RTU0wuY3BwCisrKyBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mkd0ay9UZXN0U1NMLmNwcApAQCAtNDAsNiArNDAsMTMgQEAg
cHVibGljOgogICAgIHsKICAgICB9CiAKKyAgICB2aXJ0dWFsIHZvaWQgcHJvdmlzaW9uYWxMb2Fk
U3RhcnRlZCgpIG92ZXJyaWRlCisgICAgeworICAgICAgICB3ZWJraXRfd2ViX3ZpZXdfZ2V0X3Rs
c19pbmZvKG1fd2ViVmlldywgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgICAgIC8vIFN1Y2Nlc3M6
IGRpZG4ndCBjcmFzaAorICAgICAgICBMb2FkVHJhY2tpbmdUZXN0Ojpwcm92aXNpb25hbExvYWRT
dGFydGVkKCk7CisgICAgfQorCiAgICAgdmlydHVhbCB2b2lkIHByb3Zpc2lvbmFsTG9hZEZhaWxl
ZChjb25zdCBnY2hhciogZmFpbGluZ1VSSSwgR0Vycm9yKiBlcnJvcikKICAgICB7CiAgICAgICAg
IGdfYXNzZXJ0X2Vycm9yKGVycm9yLCBTT1VQX0hUVFBfRVJST1IsIFNPVVBfU1RBVFVTX1NTTF9G
QUlMRUQpOwo=
</data>
<flag name="review"
          id="272947"
          type_id="1"
          status="-"
          setter="cgarcia"
    />
    <flag name="commit-queue"
          id="272948"
          type_id="3"
          status="-"
          setter="cgarcia"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>264388</attachid>
            <date>2015-10-30 02:39:50 -0700</date>
            <delta_ts>2015-10-30 02:39:50 -0700</delta_ts>
            <desc>BT from gdb</desc>
            <filename>gdb-webkit_web_view_get_tls_info-142375.txt</filename>
            <type>text/plain</type>
            <size>32153</size>
            <attacher name="Andres Gomez Garcia">agomez</attacher>
            
              <data encoding="base64">IzAgIDB4MDAwMDdmZmZmMGZiYzg3YyBpbiBnZXQgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9l
cGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3RmL2dsaWIvR1Jl
ZlB0ci5oOjEwNQpObyBsb2NhbHMuCiMxICAweDAwMDA3ZmZmZjEzYzUyNWMgaW4gY2VydGlmaWNh
dGUgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGst
Mi4xMC4wL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUlu
Zm8uaDo0NwpObyBsb2NhbHMuCiMyICAweDAwMDA3ZmZmZjE0M2RjOGIgaW4gd2Via2l0X3dlYl92
aWV3X2dldF90bHNfaW5mbyAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2Vi
S2l0V2ViVmlldy5jcHA6MzQ2OApObyBsb2NhbHMuCiMzICAweDAwMDAwMDAwMDA0N2M0NTkgaW4g
bG9hZF9jaGFuZ2VkX2NiICh3ZWJfdmlldz0weDJiOTQ0ZTAsIGxvYWRfZXZlbnQ9V0VCS0lUX0xP
QURfQ09NTUlUVEVELCB1c2VyX2RhdGE9MHgwKSBhdCBlcGh5LXdlYi12aWV3LmM6MTY0NwogICAg
ICAgIHVyaSA9IDB4N2ZmZjg3YjU4ODMwICJhYm91dDpvdmVydmlldyIKICAgICAgICBzZWN1cml0
eV9sZXZlbCA9IEVQSFlfU0VDVVJJVFlfTEVWRUxfTk9fU0VDVVJJVFkKICAgICAgICB2aWV3ID0g
MHgyYjk0NGUwCiAgICAgICAgcHJpdiA9IDB4MmI5NDAzMAogICAgICAgIG9iamVjdCA9IDB4MmI5
NDRlMAojNCAgMHgwMDAwN2ZmZmU3NWE2ZWU1IGluIGdfY2xvc3VyZV9pbnZva2UgKGNsb3N1cmU9
MHgyYmE4N2MwLCByZXR1cm5fdmFsdWU9MHgwLCBuX3BhcmFtX3ZhbHVlcz0yLCBwYXJhbV92YWx1
ZXM9MHg3ZmZmZmZmZmI2OTAsIGludm9jYXRpb25faGludD0weDdmZmZmZmZmYjYzMCkgYXQgZ2Ns
b3N1cmUuYzo3NjgKICAgICAgICBtYXJzaGFsID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgbWFy
c2hhbF9kYXRhID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgaW5fbWFyc2hhbCA9IDAKICAgICAg
ICByZWFsX2Nsb3N1cmUgPSAweDJiYTg3YTAKICAgICAgICBfX0ZVTkNUSU9OX18gPSAiZ19jbG9z
dXJlX2ludm9rZSIKIzUgIDB4MDAwMDdmZmZlNzViOTY2YyBpbiBzaWduYWxfZW1pdF91bmxvY2tl
ZF9SIChub2RlPW5vZGVAZW50cnk9MHgyM2M1YzgwLCBkZXRhaWw9ZGV0YWlsQGVudHJ5PTAsIGlu
c3RhbmNlPWluc3RhbmNlQGVudHJ5PTB4MmI5NDRlMCwgZW1pc3Npb25fcmV0dXJuPWVtaXNzaW9u
X3JldHVybkBlbnRyeT0weDAsIGluc3RhbmNlX2FuZF9wYXJhbXM9aW5zdGFuY2VfYW5kX3BhcmFt
c0BlbnRyeT0weDdmZmZmZmZmYjY5MCkgYXQgZ3NpZ25hbC5jOjM1NTMKICAgICAgICB0bXAgPSA8
b3B0aW1pemVkIG91dD4KICAgICAgICBoYW5kbGVyID0gMHgyYjNhNzIwCiAgICAgICAgYWNjdW11
bGF0b3IgPSAweDAKICAgICAgICBlbWlzc2lvbiA9IHtuZXh0ID0gMHgwLCBpbnN0YW5jZSA9IDB4
MmI5NDRlMCwgaWhpbnQgPSB7c2lnbmFsX2lkID0gMzY2LCBkZXRhaWwgPSAwLCBydW5fdHlwZSA9
IEdfU0lHTkFMX1JVTl9GSVJTVH0sIHN0YXRlID0gRU1JU1NJT05fUlVOLCBjaGFpbl90eXBlID0g
NH0KICAgICAgICBoYW5kbGVyX2xpc3QgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICByZXR1cm5f
YWNjdSA9IDB4MAogICAgICAgIGFjY3UgPSB7Z190eXBlID0gMCwgZGF0YSA9IHt7dl9pbnQgPSAw
LCB2X3VpbnQgPSAwLCB2X2xvbmcgPSAwLCB2X3Vsb25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWlu
dDY0ID0gMCwgdl9mbG9hdCA9IDAsIHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0gMHgwfSwge3Zf
aW50ID0gMCwgdl91aW50ID0gMCwgdl9sb25nID0gMCwgdl91bG9uZyA9IDAsIHZfaW50NjQgPSAw
LCB2X3VpbnQ2NCA9IDAsIHZfZmxvYXQgPSAwLCB2X2RvdWJsZSA9IDAsIHZfcG9pbnRlciA9IDB4
MH19fQogICAgICAgIHNpZ25hbF9pZCA9IDM2NgogICAgICAgIG1heF9zZXF1ZW50aWFsX2hhbmRs
ZXJfbnVtYmVyID0gMjU1ODYKICAgICAgICByZXR1cm5fdmFsdWVfYWx0ZXJlZCA9IDAKIzYgIDB4
MDAwMDdmZmZlNzVjMjE2OCBpbiBnX3NpZ25hbF9lbWl0X3ZhbGlzdCAoaW5zdGFuY2U9PG9wdGlt
aXplZCBvdXQ+LCBzaWduYWxfaWQ9PG9wdGltaXplZCBvdXQ+LCBkZXRhaWw9PG9wdGltaXplZCBv
dXQ+LCB2YXJfYXJncz12YXJfYXJnc0BlbnRyeT0weDdmZmZmZmZmYjgyMCkgYXQgZ3NpZ25hbC5j
OjMzMDkKICAgICAgICBpbnN0YW5jZV9hbmRfcGFyYW1zID0gMHg3ZmZmZmZmZmI2OTAKICAgICAg
ICBzaWduYWxfcmV0dXJuX3R5cGUgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwYXJhbV92YWx1
ZXMgPSAweDdmZmZmZmZmYjZhOAogICAgICAgIGkgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBu
X3BhcmFtcyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIF9fRlVOQ1RJT05fXyA9ICJnX3NpZ25h
bF9lbWl0X3ZhbGlzdCIKIzcgIDB4MDAwMDdmZmZlNzVjMjNjZiBpbiBnX3NpZ25hbF9lbWl0IChp
bnN0YW5jZT08b3B0aW1pemVkIG91dD4sIHNpZ25hbF9pZD08b3B0aW1pemVkIG91dD4sIGRldGFp
bD08b3B0aW1pemVkIG91dD4pIGF0IGdzaWduYWwuYzozMzY1CiAgICAgICAgdmFyX2FyZ3MgPSB7
e2dwX29mZnNldCA9IDMyLCBmcF9vZmZzZXQgPSA0OCwgb3ZlcmZsb3dfYXJnX2FyZWEgPSAweDdm
ZmZmZmZmYjkwMCwgcmVnX3NhdmVfYXJlYSA9IDB4N2ZmZmZmZmZiODQwfX0KIzggIDB4MDAwMDdm
ZmZmMTQzN2EzNSBpbiB3ZWJraXRXZWJWaWV3RW1pdExvYWRDaGFuZ2VkICgpIGF0IC9vcHQvZ25v
bWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcDoxNzgzCk5vIGxvY2Fscy4K
IzkgIDB4MDAwMDdmZmZmMTQzN2IwYiBpbiB3ZWJraXRXZWJWaWV3RW1pdERlbGF5ZWRMb2FkRXZl
bnRzICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3Rr
LTIuMTAuMC9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNw
cDoxODAzCk5vIGxvY2Fscy4KIzEwIDB4MDAwMDdmZmZmMTQzN2I2NCBpbiB3ZWJraXRXZWJWaWV3
TG9hZENoYW5nZWQgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93
ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdl
YlZpZXcuY3BwOjE4MTIKTm8gbG9jYWxzLgojMTEgMHgwMDAwN2ZmZmYxNDA2OGVhIGluIGRpZFN0
YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlw
aGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZ3RrL1dlYktpdExvYWRlckNsaWVudC5jcHA6NDgKTm8gbG9jYWxzLgojMTIgMHgwMDAwN2Zm
ZmYxMDhiOTkwIGluIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUgKCkgYXQgL29wdC9n
bm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOjI4NzQKTm8gbG9jYWxzLgojMTMgMHgw
MDAwN2ZmZmYxNTEzZDA5IGluIGNhbGxNZW1iZXJGdW5jdGlvbkltcGw8V2ViS2l0OjpXZWJQYWdl
UHJveHksIHZvaWQgKFdlYktpdDo6V2ViUGFnZVByb3h5OjoqKSh1bnNpZ25lZCBsb25nLCB1bnNp
Z25lZCBsb25nLCBXVEY6OlN0cmluZyBjb25zdCYsIFdURjo6U3RyaW5nIGNvbnN0JiwgV2ViS2l0
OjpVc2VyRGF0YSBjb25zdCYpLCBzdGQ6OnR1cGxlPHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxv
bmcsIFdURjo6U3RyaW5nLCBXVEY6OlN0cmluZywgV2ViS2l0OjpVc2VyRGF0YT4sIDB1bCwgMXVs
LCAydWwsIDN1bCwgNHVsPiAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL0hhbmRsZU1l
c3NhZ2UuaDoxNgpObyBsb2NhbHMuCiMxNCAweDAwMDA3ZmZmZjE1MGQwNjMgaW4gY2FsbE1lbWJl
ckZ1bmN0aW9uPFdlYktpdDo6V2ViUGFnZVByb3h5LCB2b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94
eTo6KikodW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgV1RGOjpTdHJpbmcgY29uc3QmLCBX
VEY6OlN0cmluZyBjb25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29uc3QmKSwgc3RkOjp0dXBsZTx1
bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCBXVEY6OlN0cmluZywgV1RGOjpTdHJpbmcsIFdl
YktpdDo6VXNlckRhdGE+LCBzdGQ6Om1ha2VfaW5kZXhfc2VxdWVuY2U8NXVsPiA+ICgpIGF0IC9v
cHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3Vy
Y2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVzc2FnZS5oOjIyCk5vIGxvY2Fscy4KIzE1
IDB4MDAwMDdmZmZmMTRmZmJmMCBpbiBoYW5kbGVNZXNzYWdlPE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUsIFdlYktpdDo6V2ViUGFnZVByb3h5
LCB2b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6KikodW5zaWduZWQgbG9uZywgdW5zaWduZWQg
bG9uZywgV1RGOjpTdHJpbmcgY29uc3QmLCBXVEY6OlN0cmluZyBjb25zdCYsIFdlYktpdDo6VXNl
ckRhdGEgY29uc3QmKT4gKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291
dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNz
YWdlLmg6OTIKTm8gbG9jYWxzLgojMTYgMHgwMDAwN2ZmZmYxNGY3ZTgwIGluIGRpZFJlY2VpdmVN
ZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0
Z3RrLTIuMTAuMC9EZXJpdmVkU291cmNlcy9XZWJLaXQyL1dlYlBhZ2VQcm94eU1lc3NhZ2VSZWNl
aXZlci5jcHA6NDU0Ck5vIGxvY2Fscy4KIzE3IDB4MDAwMDdmZmZmMGY2ZTAzNSBpbiBkaXNwYXRj
aE1lc3NhZ2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJr
aXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9NZXNzYWdlUmVjZWl2ZXJN
YXAuY3BwOjEwMgpObyBsb2NhbHMuCiMxOCAweDAwMDA3ZmZmZjBmOGMzMDcgaW4gZGlzcGF0Y2hN
ZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0
Z3RrLTIuMTAuMC9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzUHJveHkuY3BwOjEz
MApObyBsb2NhbHMuCiMxOSAweDAwMDA3ZmZmZjExMDdkODAgaW4gZGlkUmVjZWl2ZU1lc3NhZ2Ug
KCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4x
MC4wL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwOjQ3OApObyBs
b2NhbHMuCiMyMCAweDAwMDA3ZmZmZjBmNWFkYWMgaW4gZGlzcGF0Y2hNZXNzYWdlICgpIGF0IC9v
cHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3Vy
Y2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHA6ODgwCk5vIGxvY2Fscy4KIzIx
IDB4MDAwMDdmZmZmMGY1YWU3OCBpbiBkaXNwYXRjaE1lc3NhZ2UgKCkgYXQgL29wdC9nbm9tZS1v
cy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQy
L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcDo5MDMKTm8gbG9jYWxzLgojMjIgMHgwMDAwN2Zm
ZmYwZjViMDQyIGluIGRpc3BhdGNoT25lTWVzc2FnZSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5
L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dlYktpdDIvUGxhdGZv
cm0vSVBDL0Nvbm5lY3Rpb24uY3BwOjkzMQpObyBsb2NhbHMuCiMyMyAweDAwMDA3ZmZmZjBmNWFi
YzMgaW4gb3BlcmF0b3IoKSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rp
b24uY3BwOjg3NApObyBsb2NhbHMuCiMyNCAweDAwMDA3ZmZmZjBmNWM1ZDIgaW4gX01faW52b2tl
ICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjAzOQpObyBsb2NhbHMuCiMy
NSAweDAwMDA3ZmZmZjBlY2NiZjYgaW4gb3BlcmF0b3IoKSAoKSBhdCAvdXNyL2luY2x1ZGUvYysr
LzQuOS9mdW5jdGlvbmFsOjI0MzkKTm8gbG9jYWxzLgojMjYgMHgwMDAwN2ZmZmYzMDgzZTMyIGlu
IHBlcmZvcm1Xb3JrICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQv
d2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmNwcDoxMjEKTm8gbG9jYWxz
LgojMjcgMHgwMDAwN2ZmZmYzMDg4MTEzIGluIG9wZXJhdG9yKCkgKCkgYXQgL29wdC9nbm9tZS1v
cy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3Rm
L2dsaWIvUnVuTG9vcEdMaWIuY3BwOjk2Ck5vIGxvY2Fscy4KIzI4IDB4MDAwMDdmZmZmMzA4ODcz
NSBpbiBfTV9pbnZva2UgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyMDM5
Ck5vIGxvY2Fscy4KIzI5IDB4MDAwMDdmZmZmMGVjY2JmNiBpbiBvcGVyYXRvcigpICgpIGF0IC91
c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjQzOQpObyBsb2NhbHMuCiMzMCAweDAwMDA3
ZmZmZWJmNDBhYzQgaW4gdm9pZENhbGxiYWNrICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBp
cGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9nbGliL0dNYWlu
TG9vcFNvdXJjZS5jcHA6MzY1Ck5vIGxvY2Fscy4KIzMxIDB4MDAwMDdmZmZlYmY0MTIzNSBpbiB2
b2lkU291cmNlQ2FsbGJhY2sgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVj
a291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3RmL2dsaWIvR01haW5Mb29wU291cmNl
LmNwcDo0NTYKTm8gbG9jYWxzLgojMzIgMHgwMDAwN2ZmZmU3MmE3YWRkIGluIGdfbWFpbl9kaXNw
YXRjaCAoY29udGV4dD0weDcyNWExMCkgYXQgZ21haW4uYzozMDY0CiAgICAgICAgZGlzcGF0Y2gg
PSAweDdmZmZlNzJhNDY4MCA8Z19pZGxlX2Rpc3BhdGNoPgogICAgICAgIHByZXZfc291cmNlID0g
MHgwCiAgICAgICAgd2FzX2luX2NhbGwgPSAwCiAgICAgICAgdXNlcl9kYXRhID0gMHg3ZmZmODdi
YWNmMjAKICAgICAgICBjYWxsYmFjayA9IDB4N2ZmZmViZjQxMjEyIDx2b2lkU291cmNlQ2FsbGJh
Y2soKT4KICAgICAgICBjYl9mdW5jcyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIGNiX2RhdGEg
PSAweDdmZmY1ODAxMDk1MAogICAgICAgIG5lZWRfZGVzdHJveSA9IDxvcHRpbWl6ZWQgb3V0Pgog
ICAgICAgIHNvdXJjZSA9IDB4N2ZmZjU4MDAxMTAwCiAgICAgICAgY3VycmVudCA9IDB4NzUxNTQw
CiAgICAgICAgaSA9IDEKIzMzIGdfbWFpbl9jb250ZXh0X2Rpc3BhdGNoIChjb250ZXh0PWNvbnRl
eHRAZW50cnk9MHg3MjVhMTApIGF0IGdtYWluLmM6MzY2MwpObyBsb2NhbHMuCiMzNCAweDAwMDA3
ZmZmZTcyYTdlYjggaW4gZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD1jb250ZXh0QGVu
dHJ5PTB4NzI1YTEwLCBibG9jaz1ibG9ja0BlbnRyeT0xLCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRy
eT0xLCBzZWxmPTxvcHRpbWl6ZWQgb3V0PikgYXQgZ21haW4uYzozNzM0CiAgICAgICAgbWF4X3By
aW9yaXR5ID0gMAogICAgICAgIHRpbWVvdXQgPSAwCiAgICAgICAgc29tZV9yZWFkeSA9IDEKICAg
ICAgICBuZmRzID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgYWxsb2NhdGVkX25mZHMgPSA0CiAg
ICAgICAgZmRzID0gMHgyNjJhMzUwCiMzNSAweDAwMDA3ZmZmZTcyYTdmNmMgaW4gZ19tYWluX2Nv
bnRleHRfaXRlcmF0aW9uIChjb250ZXh0PTB4NzI1YTEwLCBjb250ZXh0QGVudHJ5PTB4MCwgbWF5
X2Jsb2NrPW1heV9ibG9ja0BlbnRyeT0xKSBhdCBnbWFpbi5jOjM3OTUKICAgICAgICByZXR2YWwg
PSA8b3B0aW1pemVkIG91dD4KIzM2IDB4MDAwMDdmZmZlNzg5NDJkYyBpbiBnX2FwcGxpY2F0aW9u
X3J1biAoYXBwbGljYXRpb249MHg3ODcxZTAsIGFyZ2M9MSwgYXJndj0weDdmZmZmZmZmY2M0OCkg
YXQgZ2FwcGxpY2F0aW9uLmM6MjIxOQogICAgICAgIGFyZ3VtZW50cyA9IDB4N2Y3OTYwCiAgICAg
ICAgc3RhdHVzID0gMAogICAgICAgIF9fRlVOQ1RJT05fXyA9ICJnX2FwcGxpY2F0aW9uX3J1biIK
IzM3IDB4MDAwMDAwMDAwMDQyZjIxOSBpbiBtYWluIChhcmdjPTEsIGFyZ3Y9MHg3ZmZmZmZmZmNj
NDgpIGF0IGVwaHktbWFpbi5jOjQ4NAogICAgICAgIG9wdGlvbl9jb250ZXh0ID0gMHg2ZjhmOTAK
ICAgICAgICBvcHRpb25fZ3JvdXAgPSAweDZmOTAxMAogICAgICAgIGVycm9yID0gMHgwCiAgICAg
ICAgdXNlcl90aW1lID0gMTY4MjgzNzIyCiAgICAgICAgYXJiaXRyYXJ5X3VybCA9IDAKICAgICAg
ICBjdHggPSAweDgzYWQ5MAogICAgICAgIHN0YXJ0dXBfZmxhZ3MgPSAodW5rbm93bjogMCkKICAg
ICAgICBtb2RlID0gRVBIWV9FTUJFRF9TSEVMTF9NT0RFX0JST1dTRVIKICAgICAgICBlcGh5X3No
ZWxsID0gMHg3ODcxZTAKICAgICAgICBzdGF0dXMgPSAwCiAgICAgICAgZmxhZ3MgPSBFUEhZX0ZJ
TEVfSEVMUEVSU19FTlNVUkVfRVhJU1RTCnJheCAgICAgICAgICAgIDB4MTAJMTYKcmJ4ICAgICAg
ICAgICAgMHgyYmE4N2MwCTQ1Nzc4ODgwCnJjeCAgICAgICAgICAgIDB4MQkxCnJkeCAgICAgICAg
ICAgIDB4NQk1CnJzaSAgICAgICAgICAgIDB4N2NjYjYwCTgxNzg1MjgKcmRpICAgICAgICAgICAg
MHgxMAkxNgpyYnAgICAgICAgICAgICAweDdmZmZmZmZmYjM5MAkweDdmZmZmZmZmYjM5MApyc3Ag
ICAgICAgICAgICAweDdmZmZmZmZmYjM5MAkweDdmZmZmZmZmYjM5MApyOCAgICAgICAgICAgICAw
eDJiOTQ1YTgJNDU2OTY0MjQKcjkgICAgICAgICAgICAgMHgyYjk0NTQwCTQ1Njk2MzIwCnIxMCAg
ICAgICAgICAgIDB4N2ZmZmU2NTUwNmEwCTE0MDczNzA1NzcxOTk2OApyMTEgICAgICAgICAgICAw
eGZmZmZmZmY0CTQyOTQ5NjcyODQKcjEyICAgICAgICAgICAgMHgwCTAKcjEzICAgICAgICAgICAg
MHgyCTIKcjE0ICAgICAgICAgICAgMHg3ZmZmZmZmZmI2OTAJMTQwNzM3NDg4MzM2NTI4CnIxNSAg
ICAgICAgICAgIDB4N2ZmZmZmZmZiNjMwCTE0MDczNzQ4ODMzNjQzMgpyaXAgICAgICAgICAgICAw
eDdmZmZmMGZiYzg3YwkweDdmZmZmMGZiYzg3YyA8Z2V0KCkrMTI+CmVmbGFncyAgICAgICAgIDB4
MTAyMDYJWyBQRiBJRiBSRiBdCmNzICAgICAgICAgICAgIDB4MzMJNTEKc3MgICAgICAgICAgICAg
MHgyYgk0MwpkcyAgICAgICAgICAgICAweDAJMAplcyAgICAgICAgICAgICAweDAJMApmcyAgICAg
ICAgICAgICAweDAJMApncyAgICAgICAgICAgICAweDAJMAo9PiAweDdmZmZmMGZiYzg3YyA8Z2V0
KCkrMTI+Ogltb3YgICAgKCVyYXgpLCVyYXgKICAgMHg3ZmZmZjBmYmM4N2YgPGdldCgpKzE1PjoJ
cG9wICAgICVyYnAKICAgMHg3ZmZmZjBmYmM4ODAgPGdldCgpKzE2PjoJcmV0cSAgIAogICAweDdm
ZmZmMGZiYzg4MSA8Zm9sZENhc2U8dW5zaWduZWQgc2hvcnQ+KCk+OglwdXNoICAgJXJicAogICAw
eDdmZmZmMGZiYzg4MiA8Zm9sZENhc2U8dW5zaWduZWQgc2hvcnQ+KCkrMT46CW1vdiAgICAlcnNw
LCVyYnAKICAgMHg3ZmZmZjBmYmM4ODUgPGZvbGRDYXNlPHVuc2lnbmVkIHNob3J0PigpKzQ+Oglz
dWIgICAgJDB4MTAsJXJzcAogICAweDdmZmZmMGZiYzg4OSA8Zm9sZENhc2U8dW5zaWduZWQgc2hv
cnQ+KCkrOD46CW1vdiAgICAlZWRpLCVlYXgKICAgMHg3ZmZmZjBmYmM4OGIgPGZvbGRDYXNlPHVu
c2lnbmVkIHNob3J0PigpKzEwPjoJbW92ICAgICVheCwtMHg0KCVyYnApCiAgIDB4N2ZmZmYwZmJj
ODhmIDxmb2xkQ2FzZTx1bnNpZ25lZCBzaG9ydD4oKSsxND46CW1vdnp3bCAtMHg0KCVyYnApLCVl
YXgKICAgMHg3ZmZmZjBmYmM4OTMgPGZvbGRDYXNlPHVuc2lnbmVkIHNob3J0PigpKzE4PjoJbW92
ICAgICQweDAsJWVzaQogICAweDdmZmZmMGZiYzg5OCA8Zm9sZENhc2U8dW5zaWduZWQgc2hvcnQ+
KCkrMjM+Ogltb3YgICAgJWVheCwlZWRpCiAgIDB4N2ZmZmYwZmJjODlhIDxmb2xkQ2FzZTx1bnNp
Z25lZCBzaG9ydD4oKSsyNT46CWNhbGxxICAweDdmZmZmMGE4YzA1MCA8dV9mb2xkQ2FzZV81MkBw
bHQ+CiAgIDB4N2ZmZmYwZmJjODlmIDxmb2xkQ2FzZTx1bnNpZ25lZCBzaG9ydD4oKSszMD46CWxl
YXZlcSAKICAgMHg3ZmZmZjBmYmM4YTAgPGZvbGRDYXNlPHVuc2lnbmVkIHNob3J0PigpKzMxPjoJ
cmV0cSAgIAogICAweDdmZmZmMGZiYzhhMSA8Y29tcHV0ZUhhc2hBbmRNYXNrVG9wOEJpdHM8dW5z
aWduZWQgc2hvcnQsIFdURjo6Q2FzZUZvbGRpbmdIYXNoOjpmb2xkQ2FzZTx1bnNpZ25lZCBzaG9y
dD4gPigpPjoJcHVzaCAgICVyYnAKICAgMHg3ZmZmZjBmYmM4YTIgPGNvbXB1dGVIYXNoQW5kTWFz
a1RvcDhCaXRzPHVuc2lnbmVkIHNob3J0LCBXVEY6OkNhc2VGb2xkaW5nSGFzaDo6Zm9sZENhc2U8
dW5zaWduZWQgc2hvcnQ+ID4oKSsxPjoJbW92ICAgICVyc3AsJXJicAoKVGhyZWFkIDI4IChUaHJl
YWQgMHg3ZmZmZDU4MzI3MDAgKExXUCAxNjc2MikpOgojMCAgMHgwMDAwN2ZmZmU2N2UzM2RkIGlu
IGZzeW5jICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4
MDAwMDdmZmZlNzhlNjc3MCBpbiBfZ19sb2NhbF9maWxlX291dHB1dF9zdHJlYW1fcmVhbGx5X2Ns
b3NlIChmaWxlPTB4N2ZmZjQwMDAxZWYwLCBjYW5jZWxsYWJsZT0weDMwYTUyNzAsIGVycm9yPTB4
N2ZmZmQ1ODMxYmMwKSBhdCBnbG9jYWxmaWxlb3V0cHV0c3RyZWFtLmM6MjIwCiMyICAweDAwMDA3
ZmZmZTc4NTQ4NmQgaW4gZ19vdXRwdXRfc3RyZWFtX2ludGVybmFsX2Nsb3NlIChzdHJlYW09MHgy
MCwgc3RyZWFtQGVudHJ5PTB4N2ZmZjQwMDAxZWYwLCBjYW5jZWxsYWJsZT1jYW5jZWxsYWJsZUBl
bnRyeT0weDMwYTUyNzAsIGVycm9yPWVycm9yQGVudHJ5PTB4N2ZmZmQ1ODMxYmMwKSBhdCBnb3V0
cHV0c3RyZWFtLmM6NjQ3CiMzICAweDAwMDA3ZmZmZTc4NTZhY2QgaW4gZ19vdXRwdXRfc3RyZWFt
X2Nsb3NlIChzdHJlYW09MHg3ZmZmNDAwMDFlZjAsIGNhbmNlbGxhYmxlPWNhbmNlbGxhYmxlQGVu
dHJ5PTB4MzBhNTI3MCwgZXJyb3I9ZXJyb3JAZW50cnk9MHg3ZmZmZDU4MzFiYzApIGF0IGdvdXRw
dXRzdHJlYW0uYzo3MTIKIzQgIDB4MDAwMDdmZmZlNzgzNzBlMiBpbiBnX2ZpbGVfcmVwbGFjZV9j
b250ZW50cyAoZmlsZT08b3B0aW1pemVkIG91dD4sIGNvbnRlbnRzPTB4N2ZmZjM4MDAxYmQwICI8
P3htbCB2ZXJzaW9uPVwiMS4wXCI/PlxuPHNlc3Npb24+XG5cdCA8d2luZG93IHg9XCIxMzY2XCIg
eT1cIjI3XCIgd2lkdGg9XCIxOTIwXCIgaGVpZ2h0PVwiMTA1M1wiIGFjdGl2ZS10YWI9XCIyXCIg
cm9sZT1cImVwaXBoYW55LXdpbmRvdy02ZDZhZDgxMVwiPlxuXHQgXHQgPGVtYmVkIHVybD1cImh0
dHBzOi8vcmVhZGVyLmFuZHJlc2dvbWV6Lm9yZy9pbmRleC5waHBcIiB0aXRsZT1cInJlIi4uLiwg
bGVuZ3RoPTxvcHRpbWl6ZWQgb3V0PiwgZXRhZz08b3B0aW1pemVkIG91dD4sIG1ha2VfYmFja3Vw
PTxvcHRpbWl6ZWQgb3V0PiwgZmxhZ3M9PG9wdGltaXplZCBvdXQ+LCBuZXdfZXRhZz0weDAsIGNh
bmNlbGxhYmxlPTB4MzBhNTI3MCwgZXJyb3I9MHg3ZmZmZDU4MzFiYzApIGF0IGdmaWxlLmM6NzE0
OQojNSAgMHgwMDAwMDAwMDAwNDRmMzc5IGluIHNhdmVfc2Vzc2lvbl9zeW5jICh0YXNrPTB4OGFl
OTAwLCBzb3VyY2Vfb2JqZWN0PTB4ODg2YjYwLCB0YXNrX2RhdGE9MHg4NWIxYTAsIGNhbmNlbGxh
YmxlPTB4MzBhNTI3MCkgYXQgZXBoeS1zZXNzaW9uLmM6ODQyCiM2ICAweDAwMDA3ZmZmZTc4NzA0
NzUgaW4gZ190YXNrX3RocmVhZF9wb29sX3RocmVhZCAodGhyZWFkX2RhdGE9MHg4YWU5MDAsIHBv
b2xfZGF0YT08b3B0aW1pemVkIG91dD4pIGF0IGd0YXNrLmM6MTIxNQojNyAgMHgwMDAwN2ZmZmU3
MmNmMzM4IGluIGdfdGhyZWFkX3Bvb2xfdGhyZWFkX3Byb3h5IChkYXRhPTxvcHRpbWl6ZWQgb3V0
PikgYXQgZ3RocmVhZHBvb2wuYzozMDcKIzggIDB4MDAwMDdmZmZlNzJjZTlhNSBpbiBnX3RocmVh
ZF9wcm94eSAoZGF0YT0weDJhYzllODApIGF0IGd0aHJlYWQuYzo3NjQKIzkgIDB4MDAwMDdmZmZl
NjdkYzBhNSBpbiBzdGFydF90aHJlYWQgKGFyZz0weDdmZmZkNTgzMjcwMCkgYXQgcHRocmVhZF9j
cmVhdGUuYzozMDkKIzEwIDB4MDAwMDdmZmZlNjUwOWNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNk
ZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMTEKClRocmVhZCAyNyAoVGhyZWFk
IDB4N2ZmZjg0ZTBlNzAwIChMV1AgMTY3NDYpKToKIzAgIDB4MDAwMDdmZmZlNjRmZjg0ZCBpbiBw
b2xsICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4MDAw
MDdmZmZlNzJhN2U1NCBpbiBnX21haW5fY29udGV4dF9wb2xsIChwcmlvcml0eT0yMTQ3NDgzNjQ3
LCBuX2Zkcz0yLCBmZHM9MHg3ZmZmNTgwMDEwZTAsIHRpbWVvdXQ9LTEsIGNvbnRleHQ9MHgzMjNl
YjEwKSBhdCBnbWFpbi5jOjQwMjgKIzIgIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9
MHgzMjNlYjEwLCBibG9jaz1ibG9ja0BlbnRyeT0xLCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0x
LCBzZWxmPTxvcHRpbWl6ZWQgb3V0PikgYXQgZ21haW4uYzozNzI5CiMzICAweDAwMDA3ZmZmZTcy
YTgxZTIgaW4gZ19tYWluX2xvb3BfcnVuIChsb29wPTB4MjcwNmFhMCkgYXQgZ21haW4uYzozOTI4
CiM0ICAweDAwMDA3ZmZmZWJmNDI3ZTcgaW4gb3BlcmF0b3IoKSAoKSBhdCAvb3B0L2dub21lLW9z
L3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dURi93dGYv
Z2xpYi9Xb3JrUXVldWVHTGliLmNwcDo2MQojNSAgMHgwMDAwN2ZmZmViZjQzNjI0IGluIF9NX2lu
dm9rZSAoKSBhdCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjIwMzkKIzYgIDB4MDAw
MDdmZmZmMGVjY2JmNiBpbiBvcGVyYXRvcigpICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1
bmN0aW9uYWw6MjQzOQojNyAgMHgwMDAwN2ZmZmViZjA0MWM3IGluIHRocmVhZEVudHJ5UG9pbnQg
KCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4x
MC4wL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHA6NTgKIzggIDB4MDAwMDdmZmZlYmYzYjJj
ZiBpbiB3dGZUaHJlYWRFbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhh
bnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhy
ZWFkcy5jcHA6MTY3CiM5ICAweDAwMDA3ZmZmZTY3ZGMwYTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9
MHg3ZmZmODRlMGU3MDApIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzA5CiMxMCAweDAwMDA3ZmZmZTY1
MDljZmQgaW4gY2xvbmUgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Ns
b25lLlM6MTExCgpUaHJlYWQgMjYgKFRocmVhZCAweDdmZmY0Y2E0NTcwMCAoTFdQIDE2NzQyKSk6
CiMwICAweDAwMDA3ZmZmZTY3ZTM0ZmQgaW4gbmFub3NsZWVwICgpIGF0IC4uL3N5c2RlcHMvdW5p
eC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4MDAwMDdmZmZlYmY0ZjJjMSBpbiBzbGVlcF9m
b3I8bG9uZywgc3RkOjpyYXRpbzwxbCwgMTAwMGw+ID4gKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80
LjkvdGhyZWFkOjI4MgojMiAgMHgwMDAwN2ZmZmViZjRjMDhkIGluIHNsZWVwICgpIGF0IC9vcHQv
Z25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2Uv
Ym1hbGxvYy9ibWFsbG9jL1N0YXRpY011dGV4Lmg6NjQKIzMgIDB4MDAwMDdmZmZlYmY0YzBkZiBp
biB3YWl0VW50aWxGYWxzZSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL2JtYWxsb2MvYm1hbGxvYy9TdGF0aWNNdXRleC5o
Ojc0CiM0ICAweDAwMDA3ZmZmZWJmNGM2MzQgaW4gc2NhdmVuZ2UgKCkgYXQgL29wdC9nbm9tZS1v
cy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9ibWFsbG9j
L2JtYWxsb2MvSGVhcC5jcHA6ODkKIzUgIDB4MDAwMDdmZmZlYmY0YzViZiBpbiBjb25jdXJyZW50
U2NhdmVuZ2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJr
aXRndGstMi4xMC4wL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvSGVhcC5jcHA6ODQKIzYgIDB4MDAw
MDdmZmZlYmY1MDc5MSBpbiBlbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBp
cGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0Fz
eW5jVGFzay5oOjEzMQojNyAgMHgwMDAwN2ZmZmViZjUwNDg4IGluIHB0aHJlYWRFbnRyeVBvaW50
ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIu
MTAuMC9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0FzeW5jVGFzay5oOjEyMQojOCAgMHgwMDAwN2Zm
ZmU2N2RjMGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZjRjYTQ1NzAwKSBhdCBwdGhyZWFk
X2NyZWF0ZS5jOjMwOQojOSAgMHgwMDAwN2ZmZmU2NTA5Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5
c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDE0IChUaHJl
YWQgMHg3ZmZmNGY5MzE3MDAgKExXUCAxMTA2MykpOgojMCAgMHgwMDAwN2ZmZmU2NGZmODRkIGlu
IHBvbGwgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2NhbGwtdGVtcGxhdGUuUzo4MQojMSAgMHgw
MDAwN2ZmZmU3MmE3ZTU0IGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKHByaW9yaXR5PTIxNDc0ODM2
NDcsIG5fZmRzPTIsIGZkcz0weDdmZmY0ODAwMDhjMCwgdGltZW91dD0tMSwgY29udGV4dD0weDJh
YTBjZTApIGF0IGdtYWluLmM6NDAyOAojMiAgZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4
dD1jb250ZXh0QGVudHJ5PTB4MmFhMGNlMCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9
ZGlzcGF0Y2hAZW50cnk9MSwgc2VsZj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzcyOQoj
MyAgMHgwMDAwN2ZmZmU3MmE3ZjZjIGluIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGlvbiAoY29udGV4
dD0weDJhYTBjZTAsIG1heV9ibG9jaz1tYXlfYmxvY2tAZW50cnk9MSkgYXQgZ21haW4uYzozNzk1
CiM0ICAweDAwMDA3ZmZmZTcyYTdmYTkgaW4gZ2xpYl93b3JrZXJfbWFpbiAoZGF0YT08b3B0aW1p
emVkIG91dD4pIGF0IGdtYWluLmM6NTU0MQojNSAgMHgwMDAwN2ZmZmU3MmNlOWE1IGluIGdfdGhy
ZWFkX3Byb3h5IChkYXRhPTB4MjhmMGM1MCkgYXQgZ3RocmVhZC5jOjc2NAojNiAgMHgwMDAwN2Zm
ZmU2N2RjMGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZjRmOTMxNzAwKSBhdCBwdGhyZWFk
X2NyZWF0ZS5jOjMwOQojNyAgMHgwMDAwN2ZmZmU2NTA5Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5
c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDEzIChUaHJl
YWQgMHg3ZmZmNjRjNzk3MDAgKExXUCAxMTAxNikpOgojMCAgMHgwMDAwN2ZmZmU2NGZmODRkIGlu
IHBvbGwgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2NhbGwtdGVtcGxhdGUuUzo4MQojMSAgMHgw
MDAwN2ZmZjg0MWU5NDYxIGluID8/ICgpIGZyb20gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9s
aWJwdWxzZS5zby4wCiMyICAweDAwMDA3ZmZmODQxZGE4ZTEgaW4gcGFfbWFpbmxvb3BfcG9sbCAo
KSBmcm9tIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGlicHVsc2Uuc28uMAojMyAgMHgwMDAw
N2ZmZjg0MWRhZjdlIGluIHBhX21haW5sb29wX2l0ZXJhdGUgKCkgZnJvbSAvdXNyL2xpYi94ODZf
NjQtbGludXgtZ251L2xpYnB1bHNlLnNvLjAKIzQgIDB4MDAwMDdmZmY4NDFkYjAzMCBpbiBwYV9t
YWlubG9vcF9ydW4gKCkgZnJvbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnB1bHNlLnNv
LjAKIzUgIDB4MDAwMDdmZmY4NDFlOTNmNiBpbiA/PyAoKSBmcm9tIC91c3IvbGliL3g4Nl82NC1s
aW51eC1nbnUvbGlicHVsc2Uuc28uMAojNiAgMHgwMDAwN2ZmZjY1YzUzNjI4IGluID8/ICgpIGZy
b20gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9wdWxzZWF1ZGlvL2xpYnB1bHNlY29tbW9uLTQu
MC5zbwojNyAgMHgwMDAwN2ZmZmU2N2RjMGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZjY0
Yzc5NzAwKSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMwOQojOCAgMHgwMDAwN2ZmZmU2NTA5Y2ZkIGlu
IGNsb25lICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjEx
MQoKVGhyZWFkIDExIChUaHJlYWQgMHg3ZmZmODU2MGY3MDAgKExXUCAxMTAwNCkpOgojMCAgMHgw
MDAwN2ZmZmU2NGZmODRkIGluIHBvbGwgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2NhbGwtdGVt
cGxhdGUuUzo4MQojMSAgMHgwMDAwN2ZmZmU3MmE3ZTU0IGluIGdfbWFpbl9jb250ZXh0X3BvbGwg
KHByaW9yaXR5PTIxNDc0ODM2NDcsIG5fZmRzPTEsIGZkcz0weDdmZmY2MDAwMTBlMCwgdGltZW91
dD0tMSwgY29udGV4dD0weDk2MTgwMCkgYXQgZ21haW4uYzo0MDI4CiMyICBnX21haW5fY29udGV4
dF9pdGVyYXRlIChjb250ZXh0PTB4OTYxODAwLCBibG9jaz1ibG9ja0BlbnRyeT0xLCBkaXNwYXRj
aD1kaXNwYXRjaEBlbnRyeT0xLCBzZWxmPTxvcHRpbWl6ZWQgb3V0PikgYXQgZ21haW4uYzozNzI5
CiMzICAweDAwMDA3ZmZmZTcyYTgxZTIgaW4gZ19tYWluX2xvb3BfcnVuIChsb29wPTB4OTYxOTQw
KSBhdCBnbWFpbi5jOjM5MjgKIzQgIDB4MDAwMDdmZmZlYmY0MjdlNyBpbiBvcGVyYXRvcigpICgp
IGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAu
MC9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtRdWV1ZUdMaWIuY3BwOjYxCiM1ICAweDAwMDA3ZmZm
ZWJmNDM2MjQgaW4gX01faW52b2tlICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9u
YWw6MjAzOQojNiAgMHgwMDAwN2ZmZmYwZWNjYmY2IGluIG9wZXJhdG9yKCkgKCkgYXQgL3Vzci9p
bmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyNDM5CiM3ICAweDAwMDA3ZmZmZWJmMDQxYzcgaW4g
dGhyZWFkRW50cnlQb2ludCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcDo1OAojOCAg
MHgwMDAwN2ZmZmViZjNiMmNmIGluIHd0ZlRocmVhZEVudHJ5UG9pbnQgKCkgYXQgL29wdC9nbm9t
ZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYv
d3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoxNjcKIzkgIDB4MDAwMDdmZmZlNjdkYzBhNSBpbiBz
dGFydF90aHJlYWQgKGFyZz0weDdmZmY4NTYwZjcwMCkgYXQgcHRocmVhZF9jcmVhdGUuYzozMDkK
IzEwIDB4MDAwMDdmZmZlNjUwOWNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lz
di9saW51eC94ODZfNjQvY2xvbmUuUzoxMTEKClRocmVhZCAxMCAoVGhyZWFkIDB4N2ZmZjg1ZTEw
NzAwIChMV1AgMTEwMDMpKToKIzAgIDB4MDAwMDdmZmZlNjRmZjg0ZCBpbiBwb2xsICgpIGF0IC4u
L3N5c2RlcHMvdW5peC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4MDAwMDdmZmZlNzJhN2U1
NCBpbiBnX21haW5fY29udGV4dF9wb2xsIChwcmlvcml0eT0yMTQ3NDgzNjQ3LCBuX2Zkcz0xLCBm
ZHM9MHg3ZmZmNzQwMDEwZTAsIHRpbWVvdXQ9LTEsIGNvbnRleHQ9MHgyNDhkZDUwKSBhdCBnbWFp
bi5jOjQwMjgKIzIgIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHgyNDhkZDUwLCBi
bG9jaz1ibG9ja0BlbnRyeT0xLCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0xLCBzZWxmPTxvcHRp
bWl6ZWQgb3V0PikgYXQgZ21haW4uYzozNzI5CiMzICAweDAwMDA3ZmZmZTcyYTgxZTIgaW4gZ19t
YWluX2xvb3BfcnVuIChsb29wPTB4MjQ4ZDk2MCkgYXQgZ21haW4uYzozOTI4CiM0ICAweDAwMDA3
ZmZmZWJmNDI3ZTcgaW4gb3BlcmF0b3IoKSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBo
YW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dURi93dGYvZ2xpYi9Xb3JrUXVl
dWVHTGliLmNwcDo2MQojNSAgMHgwMDAwN2ZmZmViZjQzNjI0IGluIF9NX2ludm9rZSAoKSBhdCAv
dXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjIwMzkKIzYgIDB4MDAwMDdmZmZmMGVjY2Jm
NiBpbiBvcGVyYXRvcigpICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjQz
OQojNyAgMHgwMDAwN2ZmZmViZjA0MWM3IGluIHRocmVhZEVudHJ5UG9pbnQgKCkgYXQgL29wdC9n
bm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9X
VEYvd3RmL1RocmVhZGluZy5jcHA6NTgKIzggIDB4MDAwMDdmZmZlYmYzYjJjZiBpbiB3dGZUaHJl
YWRFbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQv
d2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHA6MTY3
CiM5ICAweDAwMDA3ZmZmZTY3ZGMwYTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmODVlMTA3
MDApIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzA5CiMxMCAweDAwMDA3ZmZmZTY1MDljZmQgaW4gY2xv
bmUgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTExCgpU
aHJlYWQgOSAoVGhyZWFkIDB4N2ZmZmQ0ODMwNzAwIChMV1AgMTA5OTQpKToKIzAgIHN5c2NhbGwg
KCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L3N5c2NhbGwuUzozOAojMSAg
MHgwMDAwN2ZmZmU3MmVjNTJjIGluIGdfY29uZF93YWl0IChjb25kPWNvbmRAZW50cnk9MHg4YWZi
ZDgsIG11dGV4PW11dGV4QGVudHJ5PTB4OGFmYmQwKSBhdCBndGhyZWFkLXBvc2l4LmM6MTM5MAoj
MiAgMHgwMDAwN2ZmZmU3MjdjYzdiIGluIGdfYXN5bmNfcXVldWVfcG9wX2ludGVybl91bmxvY2tl
ZCAocXVldWU9cXVldWVAZW50cnk9MHg4YWZiZDAsIHdhaXQ9d2FpdEBlbnRyeT0xLCBlbmRfdGlt
ZT1lbmRfdGltZUBlbnRyeT0tMSkgYXQgZ2FzeW5jcXVldWUuYzo0MTkKIzMgIDB4MDAwMDdmZmZl
NzI3ZDBlNyBpbiBnX2FzeW5jX3F1ZXVlX3BvcCAocXVldWU9MHg4YWZiZDApIGF0IGdhc3luY3F1
ZXVlLmM6NDUzCiM0ICAweDAwMDAwMDAwMDA0OTEwMmYgaW4gcnVuX2hpc3Rvcnlfc2VydmljZV90
aHJlYWQgKHNlbGY9MHg4ODA1NzApIGF0IGVwaHktaGlzdG9yeS1zZXJ2aWNlLmM6NTIyCiM1ICAw
eDAwMDA3ZmZmZTcyY2U5YTUgaW4gZ190aHJlYWRfcHJveHkgKGRhdGE9MHg4ODA0NTApIGF0IGd0
aHJlYWQuYzo3NjQKIzYgIDB4MDAwMDdmZmZlNjdkYzBhNSBpbiBzdGFydF90aHJlYWQgKGFyZz0w
eDdmZmZkNDgzMDcwMCkgYXQgcHRocmVhZF9jcmVhdGUuYzozMDkKIzcgIDB4MDAwMDdmZmZlNjUw
OWNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xv
bmUuUzoxMTEKClRocmVhZCA4IChUaHJlYWQgMHg3ZmZmZDUwMzE3MDAgKExXUCAxMDk5MykpOgoj
MCAgMHgwMDAwN2ZmZmU2NGZmODRkIGluIHBvbGwgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2Nh
bGwtdGVtcGxhdGUuUzo4MQojMSAgMHgwMDAwN2ZmZmU3MmE3ZTU0IGluIGdfbWFpbl9jb250ZXh0
X3BvbGwgKHByaW9yaXR5PTIxNDc0ODM2NDcsIG5fZmRzPTIsIGZkcz0weDdmZmY3YzAwMTBlMCwg
dGltZW91dD0tMSwgY29udGV4dD0weDcyNTc4MCkgYXQgZ21haW4uYzo0MDI4CiMyICBnX21haW5f
Y29udGV4dF9pdGVyYXRlIChjb250ZXh0PTB4NzI1NzgwLCBibG9jaz1ibG9ja0BlbnRyeT0xLCBk
aXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0xLCBzZWxmPTxvcHRpbWl6ZWQgb3V0PikgYXQgZ21haW4u
YzozNzI5CiMzICAweDAwMDA3ZmZmZTcyYTgxZTIgaW4gZ19tYWluX2xvb3BfcnVuIChsb29wPTB4
ODRjZDkwKSBhdCBnbWFpbi5jOjM5MjgKIzQgIDB4MDAwMDdmZmZlYmY0MjdlNyBpbiBvcGVyYXRv
cigpICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3Rr
LTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtRdWV1ZUdMaWIuY3BwOjYxCiM1ICAweDAw
MDA3ZmZmZWJmNDM2MjQgaW4gX01faW52b2tlICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1
bmN0aW9uYWw6MjAzOQojNiAgMHgwMDAwN2ZmZmYwZWNjYmY2IGluIG9wZXJhdG9yKCkgKCkgYXQg
L3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyNDM5CiM3ICAweDAwMDA3ZmZmZWJmMDQx
YzcgaW4gdGhyZWFkRW50cnlQb2ludCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55
L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcDo1
OAojOCAgMHgwMDAwN2ZmZmViZjNiMmNmIGluIHd0ZlRocmVhZEVudHJ5UG9pbnQgKCkgYXQgL29w
dC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJj
ZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoxNjcKIzkgIDB4MDAwMDdmZmZlNjdkYzBh
NSBpbiBzdGFydF90aHJlYWQgKGFyZz0weDdmZmZkNTAzMTcwMCkgYXQgcHRocmVhZF9jcmVhdGUu
YzozMDkKIzEwIDB4MDAwMDdmZmZlNjUwOWNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNkZXBzL3Vu
aXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMTEKClRocmVhZCA1IChUaHJlYWQgMHg3ZmZm
ZDY4MzQ3MDAgKExXUCAxMDk4OCkpOgojMCAgMHgwMDAwN2ZmZmU2NGZmODRkIGluIHBvbGwgKCkg
YXQgLi4vc3lzZGVwcy91bml4L3N5c2NhbGwtdGVtcGxhdGUuUzo4MQojMSAgMHgwMDAwN2ZmZmU3
MmE3ZTU0IGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKHByaW9yaXR5PTIxNDc0ODM2NDcsIG5fZmRz
PTEsIGZkcz0weDdmZmY4MDAwMTBlMCwgdGltZW91dD0tMSwgY29udGV4dD0weDg0Y2RiMCkgYXQg
Z21haW4uYzo0MDI4CiMyICBnX21haW5fY29udGV4dF9pdGVyYXRlIChjb250ZXh0PTB4ODRjZGIw
LCBibG9jaz1ibG9ja0BlbnRyeT0xLCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0xLCBzZWxmPTxv
cHRpbWl6ZWQgb3V0PikgYXQgZ21haW4uYzozNzI5CiMzICAweDAwMDA3ZmZmZTcyYTgxZTIgaW4g
Z19tYWluX2xvb3BfcnVuIChsb29wPTB4ODRjZTcwKSBhdCBnbWFpbi5jOjM5MjgKIzQgIDB4MDAw
MDdmZmZlYmY0MjdlNyBpbiBvcGVyYXRvcigpICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBp
cGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtR
dWV1ZUdMaWIuY3BwOjYxCiM1ICAweDAwMDA3ZmZmZWJmNDM2MjQgaW4gX01faW52b2tlICgpIGF0
IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjAzOQojNiAgMHgwMDAwN2ZmZmYwZWNj
YmY2IGluIG9wZXJhdG9yKCkgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoy
NDM5CiM3ICAweDAwMDA3ZmZmZWJmMDQxYzcgaW4gdGhyZWFkRW50cnlQb2ludCAoKSBhdCAvb3B0
L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNl
L1dURi93dGYvVGhyZWFkaW5nLmNwcDo1OAojOCAgMHgwMDAwN2ZmZmViZjNiMmNmIGluIHd0ZlRo
cmVhZEVudHJ5UG9pbnQgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291
dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDox
NjcKIzkgIDB4MDAwMDdmZmZlNjdkYzBhNSBpbiBzdGFydF90aHJlYWQgKGFyZz0weDdmZmZkNjgz
NDcwMCkgYXQgcHRocmVhZF9jcmVhdGUuYzozMDkKIzEwIDB4MDAwMDdmZmZlNjUwOWNmZCBpbiBj
bG9uZSAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMTEK
ClRocmVhZCA0IChUaHJlYWQgMHg3ZmZmZDcwMzU3MDAgKExXUCAxMDk4NykpOgojMCAgcHRocmVh
ZF9jb25kX3dhaXRAQEdMSUJDXzIuMy4yICgpIGF0IC4uL25wdGwvc3lzZGVwcy91bml4L3N5c3Yv
bGludXgveDg2XzY0L3B0aHJlYWRfY29uZF93YWl0LlM6MTg1CiMxICAweDAwMDA3ZmZmZTE4MWZj
YWMgaW4gc3RkOjpjb25kaXRpb25fdmFyaWFibGU6OndhaXQoc3RkOjp1bmlxdWVfbG9jazxzdGQ6
Om11dGV4PiYpICgpIGZyb20gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJzdGRjKysuc28u
NgojMiAgMHgwMDAwN2ZmZmViZWZjY2Q5IGluIHBhcmtDb25kaXRpb25hbGx5ICgpIGF0IC9vcHQv
Z25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2Uv
V1RGL3d0Zi9QYXJraW5nTG90LmNwcDo1NDcKIzMgIDB4MDAwMDdmZmZmMTVmY2Y1YSBpbiB3YWl0
VW50aWw8V1RGOjpMb2NrPiAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dURi93dGYvQ29uZGl0aW9uLmg6NzQKIzQgIDB4
MDAwMDdmZmZmMTVmY2IzNSBpbiB3YWl0PFdURjo6TG9jaz4gKCkgYXQgL29wdC9nbm9tZS1vcy90
YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3RmL0Nv
bmRpdGlvbi5oOjExMwojNSAgMHgwMDAwN2ZmZmYyMDNhZTFkIGluIHN5bmNUaHJlYWRNYWluTG9v
cCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0y
LjEwLjAvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoxNDMzCiM2
ICAweDAwMDA3ZmZmZjIwMzhkM2MgaW4gaWNvbkRhdGFiYXNlU3luY1RocmVhZCAoKSBhdCAvb3B0
L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoxMDM1CiM3ICAweDAwMDA3ZmZm
ZjIwMzg5YWMgaW4gaWNvbkRhdGFiYXNlU3luY1RocmVhZFN0YXJ0ICgpIGF0IC9vcHQvZ25vbWUt
b3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwOjk1NgojOCAgMHgwMDAwN2ZmZmViZjA0MzFj
IGluIG9wZXJhdG9yKCkgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291
dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHA6ODEKIzkgIDB4
MDAwMDdmZmZlYmYwNDUxMSBpbiBfTV9pbnZva2UgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80Ljkv
ZnVuY3Rpb25hbDoyMDM5CiMxMCAweDAwMDA3ZmZmZjBlY2NiZjYgaW4gb3BlcmF0b3IoKSAoKSBh
dCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjI0MzkKIzExIDB4MDAwMDdmZmZlYmYw
NDFjNyBpbiB0aHJlYWRFbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhh
bnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3Bw
OjU4CiMxMiAweDAwMDA3ZmZmZWJmM2IyY2YgaW4gd3RmVGhyZWFkRW50cnlQb2ludCAoKSBhdCAv
b3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291
cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwOjE2NwojMTMgMHgwMDAwN2ZmZmU2N2Rj
MGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZmQ3MDM1NzAwKSBhdCBwdGhyZWFkX2NyZWF0
ZS5jOjMwOQojMTQgMHgwMDAwN2ZmZmU2NTA5Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5c2RlcHMv
dW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDMgKFRocmVhZCAweDdm
ZmZkNzgzNjcwMCAoTFdQIDEwOTg2KSk6CiMwICAweDAwMDA3ZmZmZTY0ZmY4NGQgaW4gcG9sbCAo
KSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCiMxICAweDAwMDA3ZmZm
ZTcyYTdlNTQgaW4gZ19tYWluX2NvbnRleHRfcG9sbCAocHJpb3JpdHk9MjE0NzQ4MzY0Nywgbl9m
ZHM9MSwgZmRzPTB4N2ZmZmM4MDAxMGMwLCB0aW1lb3V0PS0xLCBjb250ZXh0PTB4ODMyNTEwKSBh
dCBnbWFpbi5jOjQwMjgKIzIgIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9Y29udGV4
dEBlbnRyeT0weDgzMjUxMCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hA
ZW50cnk9MSwgc2VsZj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzcyOQojMyAgMHgwMDAw
N2ZmZmU3MmE3ZjZjIGluIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGlvbiAoY29udGV4dD1jb250ZXh0
QGVudHJ5PTB4ODMyNTEwLCBtYXlfYmxvY2s9bWF5X2Jsb2NrQGVudHJ5PTEpIGF0IGdtYWluLmM6
Mzc5NQojNCAgMHgwMDAwN2ZmZmQ4MDNlNTNkIGluIGRjb25mX2dkYnVzX3dvcmtlcl90aHJlYWQg
KHVzZXJfZGF0YT0weDgzMjUxMCkgYXQgZGNvbmYtZ2RidXMtdGhyZWFkLmM6ODEKIzUgIDB4MDAw
MDdmZmZlNzJjZTlhNSBpbiBnX3RocmVhZF9wcm94eSAoZGF0YT0weDg4MmQ0MCkgYXQgZ3RocmVh
ZC5jOjc2NAojNiAgMHgwMDAwN2ZmZmU2N2RjMGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2Zm
ZmQ3ODM2NzAwKSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMwOQojNyAgMHgwMDAwN2ZmZmU2NTA5Y2Zk
IGluIGNsb25lICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5T
OjExMQoKVGhyZWFkIDIgKFRocmVhZCAweDdmZmZkODAzNzcwMCAoTFdQIDEwOTg0KSk6CiMwICAw
eDAwMDA3ZmZmZTY0ZmY4NGQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10
ZW1wbGF0ZS5TOjgxCiMxICAweDAwMDA3ZmZmZTcyYTdlNTQgaW4gZ19tYWluX2NvbnRleHRfcG9s
bCAocHJpb3JpdHk9MjE0NzQ4MzY0Nywgbl9mZHM9MiwgZmRzPTB4N2ZmZmQwMDAxMGUwLCB0aW1l
b3V0PS0xLCBjb250ZXh0PTB4NzZmMTcwKSBhdCBnbWFpbi5jOjQwMjgKIzIgIGdfbWFpbl9jb250
ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg3NmYxNzAsIGJsb2NrPWJsb2NrQGVudHJ5PTEsIGRpc3Bh
dGNoPWRpc3BhdGNoQGVudHJ5PTEsIHNlbGY9PG9wdGltaXplZCBvdXQ+KSBhdCBnbWFpbi5jOjM3
MjkKIzMgIDB4MDAwMDdmZmZlNzJhODFlMiBpbiBnX21haW5fbG9vcF9ydW4gKGxvb3A9MHg3NmYx
MDApIGF0IGdtYWluLmM6MzkyOAojNCAgMHgwMDAwN2ZmZmU3OGNiYTc2IGluIGdkYnVzX3NoYXJl
ZF90aHJlYWRfZnVuYyAodXNlcl9kYXRhPTB4NzZmMTQwKSBhdCBnZGJ1c3ByaXZhdGUuYzoyNzMK
IzUgIDB4MDAwMDdmZmZlNzJjZTlhNSBpbiBnX3RocmVhZF9wcm94eSAoZGF0YT0weDcxOTRhMCkg
YXQgZ3RocmVhZC5jOjc2NAojNiAgMHgwMDAwN2ZmZmU2N2RjMGE1IGluIHN0YXJ0X3RocmVhZCAo
YXJnPTB4N2ZmZmQ4MDM3NzAwKSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMwOQojNyAgMHgwMDAwN2Zm
ZmU2NTA5Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82
NC9jbG9uZS5TOjExMQoKVGhyZWFkIDEgKFRocmVhZCAweDdmZmZmN2Y4YmEwMCAoTFdQIDEwODA5
KSk6CiMwICAweDAwMDA3ZmZmZjBmYmM4N2MgaW4gZ2V0ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFu
dHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9nbGli
L0dSZWZQdHIuaDoxMDUKIzEgIDB4MDAwMDdmZmZmMTNjNTI1YyBpbiBjZXJ0aWZpY2F0ZSAoKSBh
dCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5oOjQ3
CiMyICAweDAwMDA3ZmZmZjE0M2RjOGIgaW4gd2Via2l0X3dlYl92aWV3X2dldF90bHNfaW5mbyAo
KSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEw
LjAvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHA6MzQ2
OAojMyAgMHgwMDAwMDAwMDAwNDdjNDU5IGluIGxvYWRfY2hhbmdlZF9jYiAod2ViX3ZpZXc9MHgy
Yjk0NGUwLCBsb2FkX2V2ZW50PVdFQktJVF9MT0FEX0NPTU1JVFRFRCwgdXNlcl9kYXRhPTB4MCkg
YXQgZXBoeS13ZWItdmlldy5jOjE2NDcKIzQgIDB4MDAwMDdmZmZlNzVhNmVlNSBpbiBnX2Nsb3N1
cmVfaW52b2tlIChjbG9zdXJlPTB4MmJhODdjMCwgcmV0dXJuX3ZhbHVlPTB4MCwgbl9wYXJhbV92
YWx1ZXM9MiwgcGFyYW1fdmFsdWVzPTB4N2ZmZmZmZmZiNjkwLCBpbnZvY2F0aW9uX2hpbnQ9MHg3
ZmZmZmZmZmI2MzApIGF0IGdjbG9zdXJlLmM6NzY4CiM1ICAweDAwMDA3ZmZmZTc1Yjk2NmMgaW4g
c2lnbmFsX2VtaXRfdW5sb2NrZWRfUiAobm9kZT1ub2RlQGVudHJ5PTB4MjNjNWM4MCwgZGV0YWls
PWRldGFpbEBlbnRyeT0wLCBpbnN0YW5jZT1pbnN0YW5jZUBlbnRyeT0weDJiOTQ0ZTAsIGVtaXNz
aW9uX3JldHVybj1lbWlzc2lvbl9yZXR1cm5AZW50cnk9MHgwLCBpbnN0YW5jZV9hbmRfcGFyYW1z
PWluc3RhbmNlX2FuZF9wYXJhbXNAZW50cnk9MHg3ZmZmZmZmZmI2OTApIGF0IGdzaWduYWwuYzoz
NTUzCiM2ICAweDAwMDA3ZmZmZTc1YzIxNjggaW4gZ19zaWduYWxfZW1pdF92YWxpc3QgKGluc3Rh
bmNlPTxvcHRpbWl6ZWQgb3V0Piwgc2lnbmFsX2lkPTxvcHRpbWl6ZWQgb3V0PiwgZGV0YWlsPTxv
cHRpbWl6ZWQgb3V0PiwgdmFyX2FyZ3M9dmFyX2FyZ3NAZW50cnk9MHg3ZmZmZmZmZmI4MjApIGF0
IGdzaWduYWwuYzozMzA5CiM3ICAweDAwMDA3ZmZmZTc1YzIzY2YgaW4gZ19zaWduYWxfZW1pdCAo
aW5zdGFuY2U9PG9wdGltaXplZCBvdXQ+LCBzaWduYWxfaWQ9PG9wdGltaXplZCBvdXQ+LCBkZXRh
aWw9PG9wdGltaXplZCBvdXQ+KSBhdCBnc2lnbmFsLmM6MzM2NQojOCAgMHgwMDAwN2ZmZmYxNDM3
YTM1IGluIHdlYmtpdFdlYlZpZXdFbWl0TG9hZENoYW5nZWQgKCkgYXQgL29wdC9nbm9tZS1vcy90
YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwOjE3ODMKIzkgIDB4MDAwMDdmZmZmMTQz
N2IwYiBpbiB3ZWJraXRXZWJWaWV3RW1pdERlbGF5ZWRMb2FkRXZlbnRzICgpIGF0IC9vcHQvZ25v
bWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcDoxODAzCiMxMCAweDAwMDA3
ZmZmZjE0MzdiNjQgaW4gd2Via2l0V2ViVmlld0xvYWRDaGFuZ2VkICgpIGF0IC9vcHQvZ25vbWUt
b3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcDoxODEyCiMxMSAweDAwMDA3ZmZm
ZjE0MDY4ZWEgaW4gZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZSAoKSBhdCAvb3B0L2du
b21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0TG9hZGVyQ2xpZW50LmNwcDo0OAojMTIgMHgw
MDAwN2ZmZmYxMDhiOTkwIGluIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUgKCkgYXQg
L29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOjI4NzQKIzEzIDB4MDAwMDdm
ZmZmMTUxM2QwOSBpbiBjYWxsTWVtYmVyRnVuY3Rpb25JbXBsPFdlYktpdDo6V2ViUGFnZVByb3h5
LCB2b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6KikodW5zaWduZWQgbG9uZywgdW5zaWduZWQg
bG9uZywgV1RGOjpTdHJpbmcgY29uc3QmLCBXVEY6OlN0cmluZyBjb25zdCYsIFdlYktpdDo6VXNl
ckRhdGEgY29uc3QmKSwgc3RkOjp0dXBsZTx1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCBX
VEY6OlN0cmluZywgV1RGOjpTdHJpbmcsIFdlYktpdDo6VXNlckRhdGE+LCAwdWwsIDF1bCwgMnVs
LCAzdWwsIDR1bD4gKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93
ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNzYWdl
Lmg6MTYKIzE0IDB4MDAwMDdmZmZmMTUwZDA2MyBpbiBjYWxsTWVtYmVyRnVuY3Rpb248V2ViS2l0
OjpXZWJQYWdlUHJveHksIHZvaWQgKFdlYktpdDo6V2ViUGFnZVByb3h5OjoqKSh1bnNpZ25lZCBs
b25nLCB1bnNpZ25lZCBsb25nLCBXVEY6OlN0cmluZyBjb25zdCYsIFdURjo6U3RyaW5nIGNvbnN0
JiwgV2ViS2l0OjpVc2VyRGF0YSBjb25zdCYpLCBzdGQ6OnR1cGxlPHVuc2lnbmVkIGxvbmcsIHVu
c2lnbmVkIGxvbmcsIFdURjo6U3RyaW5nLCBXVEY6OlN0cmluZywgV2ViS2l0OjpVc2VyRGF0YT4s
IHN0ZDo6bWFrZV9pbmRleF9zZXF1ZW5jZTw1dWw+ID4gKCkgYXQgL29wdC9nbm9tZS1vcy90YW50
eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1BsYXRm
b3JtL0lQQy9IYW5kbGVNZXNzYWdlLmg6MjIKIzE1IDB4MDAwMDdmZmZmMTRmZmJmMCBpbiBoYW5k
bGVNZXNzYWdlPE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFN0YXJ0UHJvdmlzaW9uYWxMb2Fk
Rm9yRnJhbWUsIFdlYktpdDo6V2ViUGFnZVByb3h5LCB2b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94
eTo6KikodW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgV1RGOjpTdHJpbmcgY29uc3QmLCBX
VEY6OlN0cmluZyBjb25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29uc3QmKT4gKCkgYXQgL29wdC9n
bm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9X
ZWJLaXQyL1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNzYWdlLmg6OTIKIzE2IDB4MDAwMDdmZmZmMTRm
N2U4MCBpbiBkaWRSZWNlaXZlTWVzc2FnZSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBo
YW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjAvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9XZWJQ
YWdlUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwOjQ1NAojMTcgMHgwMDAwN2ZmZmYwZjZlMDM1IGlu
IGRpc3BhdGNoTWVzc2FnZSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjAvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL01lc3NhZ2VS
ZWNlaXZlck1hcC5jcHA6MTAyCiMxOCAweDAwMDA3ZmZmZjBmOGMzMDcgaW4gZGlzcGF0Y2hNZXNz
YWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3Rr
LTIuMTAuMC9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzUHJveHkuY3BwOjEzMAoj
MTkgMHgwMDAwN2ZmZmYxMTA3ZDgwIGluIGRpZFJlY2VpdmVNZXNzYWdlICgpIGF0IC9vcHQvZ25v
bWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDo0NzgKIzIwIDB4MDAwMDdmZmZmMGY1
YWRhYyBpbiBkaXNwYXRjaE1lc3NhZ2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFu
eS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9D
b25uZWN0aW9uLmNwcDo4ODAKIzIxIDB4MDAwMDdmZmZmMGY1YWU3OCBpbiBkaXNwYXRjaE1lc3Nh
Z2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGst
Mi4xMC4wL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcDo5MDMKIzIy
IDB4MDAwMDdmZmZmMGY1YjA0MiBpbiBkaXNwYXRjaE9uZU1lc3NhZ2UgKCkgYXQgL29wdC9nbm9t
ZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XZWJL
aXQyL1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcDo5MzEKIzIzIDB4MDAwMDdmZmZmMGY1YWJj
MyBpbiBvcGVyYXRvcigpICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tv
dXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlv
bi5jcHA6ODc0CiMyNCAweDAwMDA3ZmZmZjBmNWM1ZDIgaW4gX01faW52b2tlICgpIGF0IC91c3Iv
aW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjAzOQojMjUgMHgwMDAwN2ZmZmYwZWNjYmY2IGlu
IG9wZXJhdG9yKCkgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyNDM5CiMy
NiAweDAwMDA3ZmZmZjMwODNlMzIgaW4gcGVyZm9ybVdvcmsgKCkgYXQgL29wdC9nbm9tZS1vcy90
YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1NvdXJjZS9XVEYvd3RmL1J1
bkxvb3AuY3BwOjEyMQojMjcgMHgwMDAwN2ZmZmYzMDg4MTEzIGluIG9wZXJhdG9yKCkgKCkgYXQg
L29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC4wL1Nv
dXJjZS9XVEYvd3RmL2dsaWIvUnVuTG9vcEdMaWIuY3BwOjk2CiMyOCAweDAwMDA3ZmZmZjMwODg3
MzUgaW4gX01faW52b2tlICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjAz
OQojMjkgMHgwMDAwN2ZmZmYwZWNjYmY2IGluIG9wZXJhdG9yKCkgKCkgYXQgL3Vzci9pbmNsdWRl
L2MrKy80LjkvZnVuY3Rpb25hbDoyNDM5CiMzMCAweDAwMDA3ZmZmZWJmNDBhYzQgaW4gdm9pZENh
bGxiYWNrICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0
Z3RrLTIuMTAuMC9Tb3VyY2UvV1RGL3d0Zi9nbGliL0dNYWluTG9vcFNvdXJjZS5jcHA6MzY1CiMz
MSAweDAwMDA3ZmZmZWJmNDEyMzUgaW4gdm9pZFNvdXJjZUNhbGxiYWNrICgpIGF0IC9vcHQvZ25v
bWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuMC9Tb3VyY2UvV1RG
L3d0Zi9nbGliL0dNYWluTG9vcFNvdXJjZS5jcHA6NDU2CiMzMiAweDAwMDA3ZmZmZTcyYTdhZGQg
aW4gZ19tYWluX2Rpc3BhdGNoIChjb250ZXh0PTB4NzI1YTEwKSBhdCBnbWFpbi5jOjMwNjQKIzMz
IGdfbWFpbl9jb250ZXh0X2Rpc3BhdGNoIChjb250ZXh0PWNvbnRleHRAZW50cnk9MHg3MjVhMTAp
IGF0IGdtYWluLmM6MzY2MwojMzQgMHgwMDAwN2ZmZmU3MmE3ZWI4IGluIGdfbWFpbl9jb250ZXh0
X2l0ZXJhdGUgKGNvbnRleHQ9Y29udGV4dEBlbnRyeT0weDcyNWExMCwgYmxvY2s9YmxvY2tAZW50
cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hAZW50cnk9MSwgc2VsZj08b3B0aW1pemVkIG91dD4pIGF0
IGdtYWluLmM6MzczNAojMzUgMHgwMDAwN2ZmZmU3MmE3ZjZjIGluIGdfbWFpbl9jb250ZXh0X2l0
ZXJhdGlvbiAoY29udGV4dD0weDcyNWExMCwgY29udGV4dEBlbnRyeT0weDAsIG1heV9ibG9jaz1t
YXlfYmxvY2tAZW50cnk9MSkgYXQgZ21haW4uYzozNzk1CiMzNiAweDAwMDA3ZmZmZTc4OTQyZGMg
aW4gZ19hcHBsaWNhdGlvbl9ydW4gKGFwcGxpY2F0aW9uPTB4Nzg3MWUwLCBhcmdjPTEsIGFyZ3Y9
MHg3ZmZmZmZmZmNjNDgpIGF0IGdhcHBsaWNhdGlvbi5jOjIyMTkKIzM3IDB4MDAwMDAwMDAwMDQy
ZjIxOSBpbiBtYWluIChhcmdjPTEsIGFyZ3Y9MHg3ZmZmZmZmZmNjNDgpIGF0IGVwaHktbWFpbi5j
OjQ4NAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266758</attachid>
            <date>2015-12-07 02:19:24 -0800</date>
            <delta_ts>2015-12-23 12:50:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-kill-delayed-load-events.diff</filename>
            <type>text/plain</type>
            <size>9544</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA0ODM2ZDExLi41YjBmZDc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTUtMTItMDcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFVJIHByb2Nlc3MgY3Jhc2hlcyBpZiB3ZWJraXRfd2ViX3ZpZXdf
Z2V0X3Rsc19pbmZvIGlzIGNhbGxlZCBiZWZvcmUgaW50ZXJuYWwgbG9hZC1jb21taXR0ZWQgZXZl
bnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MjM3
NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92
ZSBhbGwgdGhlIGhhY2tzIHRvIGVtaXQgZGVsYXllZCBsb2FkIGV2ZW50cyBub3cgdGhhdCB0aGUK
KyAgICAgICAgcGFnZSBjYWNoZSByZXNvdXJjZSBsb2FkIGRlbGVnYXRlcyBhcmUgY29uc2lzdGVu
dCB3aXRoIGFsbCBvdGhlcgorICAgICAgICByZXNvdXJjZSBsb2Fkcy4KKworICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwOgorICAgICAgICAod2Via2l0V2ViVmll
d0xvYWRDaGFuZ2VkKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdSZXNvdXJjZUxvYWRTdGFydGVk
KToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19nZXRfdGxzX2luZm8pOiBBZGQgYSBnX3JldHVy
bl92YWxfaWZfZmFpbCB0bworICAgICAgICBwcmV2ZW50IHRoaXMgZnVuY3Rpb24gZnJvbSBiZWlu
ZyBtaXN1c2VkLgorICAgICAgICAod2Via2l0V2ViVmlld0Rpc2Nvbm5lY3RNYWluUmVzb3VyY2VS
ZXNwb25zZUNoYW5nZWRTaWduYWxIYW5kbGVyKTogRGVsZXRlZC4KKyAgICAgICAgKHdlYmtpdFdl
YlZpZXdEaXNwb3NlKTogRGVsZXRlZC4KKyAgICAgICAgKHdlYmtpdFdlYlZpZXdFbWl0TG9hZENo
YW5nZWQpOiBEZWxldGVkLgorICAgICAgICAod2Via2l0V2ViVmlld0VtaXREZWxheWVkTG9hZEV2
ZW50cyk6IERlbGV0ZWQuCisgICAgICAgIChtYWluUmVzb3VyY2VSZXNwb25zZUNoYW5nZWRDYWxs
YmFjayk6IERlbGV0ZWQuCisgICAgICAgICh3YWl0Rm9yTWFpblJlc291cmNlUmVzcG9uc2VJZldh
aXRpbmdGb3JSZXNvdXJjZSk6IERlbGV0ZWQuCisKIDIwMTUtMTItMDcgIEphZWh1biBMaW0gIDxs
amFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBNb3ZpbmcgcHJlZmVyZW5j
ZSBzZXR0aW5ncyBmcm9tIEV3a1ZpZXcgdG8gV2ViUHJlZmVyZW5jZXNFZmwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggYmM5
YWMzZC4uYTk5NmNhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0V2ViVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0V2ViVmlldy5jcHAKQEAgLTE3OCw5ICsxNzgsNiBAQCBzdHJ1Y3QgX1dlYktpdFdl
YlZpZXdQcml2YXRlIHsKICAgICBib29sIGlzTG9hZGluZzsKIAogICAgIHN0ZDo6dW5pcXVlX3B0
cjxQYWdlTG9hZFN0YXRlT2JzZXJ2ZXI+IGxvYWRPYnNlcnZlcjsKLSAgICBib29sIHdhaXRpbmdG
b3JNYWluUmVzb3VyY2U7Ci0gICAgdW5zaWduZWQgbG9uZyBtYWluUmVzb3VyY2VSZXNwb25zZUhh
bmRsZXJJRDsKLSAgICBXZWJLaXRMb2FkRXZlbnQgbGFzdERlbGF5ZWRFdmVudDsKIAogICAgIEdS
ZWZQdHI8V2ViS2l0QmFja0ZvcndhcmRMaXN0PiBiYWNrRm9yd2FyZExpc3Q7CiAgICAgR1JlZlB0
cjxXZWJLaXRTZXR0aW5ncz4gc2V0dGluZ3M7CkBAIC0yNDksMTEgKzI0Niw2IEBAIHByaXZhdGU6
CiAgICAgfQogICAgIHZpcnR1YWwgdm9pZCBkaWRDaGFuZ2VJc0xvYWRpbmcoKSBvdmVycmlkZQog
ICAgIHsKLSAgICAgICAgaWYgKG1fd2ViVmlldy0+cHJpdi0+d2FpdGluZ0Zvck1haW5SZXNvdXJj
ZSkgewotICAgICAgICAgICAgLy8gVGhlIGFjdHVhbCBsb2FkIGhhcyBmaW5pc2hlZCBidXQgd2Ug
aGF2ZW4ndCBlbWl0dGVkIHRoZSBkZWxheWVkIGxvYWQgZXZlbnRzIHlldCwgc28gd2UgYXJlIHN0
aWxsIGxvYWRpbmcuCi0gICAgICAgICAgICBnX29iamVjdF90aGF3X25vdGlmeShHX09CSkVDVCht
X3dlYlZpZXcpKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQogICAgICAgICB3ZWJr
aXRXZWJWaWV3U2V0SXNMb2FkaW5nKG1fd2ViVmlldywgZ2V0UGFnZShtX3dlYlZpZXcpLT5wYWdl
TG9hZFN0YXRlKCkuaXNMb2FkaW5nKCkpOwogICAgICAgICBnX29iamVjdF90aGF3X25vdGlmeShH
X09CSkVDVChtX3dlYlZpZXcpKTsKICAgICB9CkBAIC01MDIsMTQgKzQ5NCw2IEBAIHN0YXRpYyB2
b2lkIHdlYmtpdFdlYlZpZXdEaXNjb25uZWN0U2V0dGluZ3NTaWduYWxIYW5kbGVycyhXZWJLaXRX
ZWJWaWV3KiB3ZWJWaWV3CiAgICAgZ19zaWduYWxfaGFuZGxlcnNfZGlzY29ubmVjdF9ieV9mdW5j
KHNldHRpbmdzLCByZWludGVycHJldF9jYXN0PGdwb2ludGVyPih1c2VyQWdlbnRDaGFuZ2VkKSwg
d2ViVmlldyk7CiB9CiAKLXN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdEaXNjb25uZWN0TWFpblJl
c291cmNlUmVzcG9uc2VDaGFuZ2VkU2lnbmFsSGFuZGxlcihXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3
KQotewotICAgIFdlYktpdFdlYlZpZXdQcml2YXRlKiBwcml2ID0gd2ViVmlldy0+cHJpdjsKLSAg
ICBpZiAocHJpdi0+bWFpblJlc291cmNlUmVzcG9uc2VIYW5kbGVySUQpCi0gICAgICAgIGdfc2ln
bmFsX2hhbmRsZXJfZGlzY29ubmVjdChwcml2LT5tYWluUmVzb3VyY2UuZ2V0KCksIHByaXYtPm1h
aW5SZXNvdXJjZVJlc3BvbnNlSGFuZGxlcklEKTsKLSAgICBwcml2LT5tYWluUmVzb3VyY2VSZXNw
b25zZUhhbmRsZXJJRCA9IDA7Ci19Ci0KIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdXYXRjaEZv
ckNoYW5nZXNJbkZhdmljb24oV2ViS2l0V2ViVmlldyogd2ViVmlldykKIHsKICAgICBXZWJLaXRX
ZWJWaWV3UHJpdmF0ZSogcHJpdiA9IHdlYlZpZXctPnByaXY7CkBAIC03NTMsNyArNzM3LDYgQEAg
c3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Rpc3Bvc2UoR09iamVjdCogb2JqZWN0KQogewogICAg
IFdlYktpdFdlYlZpZXcqIHdlYlZpZXcgPSBXRUJLSVRfV0VCX1ZJRVcob2JqZWN0KTsKICAgICB3
ZWJraXRXZWJWaWV3Q2FuY2VsRmF2aWNvblJlcXVlc3Qod2ViVmlldyk7Ci0gICAgd2Via2l0V2Vi
Vmlld0Rpc2Nvbm5lY3RNYWluUmVzb3VyY2VSZXNwb25zZUNoYW5nZWRTaWduYWxIYW5kbGVyKHdl
YlZpZXcpOwogICAgIHdlYmtpdFdlYlZpZXdEaXNjb25uZWN0U2V0dGluZ3NTaWduYWxIYW5kbGVy
cyh3ZWJWaWV3KTsKICAgICB3ZWJraXRXZWJWaWV3RGlzY29ubmVjdEZhdmljb25EYXRhYmFzZVNp
Z25hbEhhbmRsZXJzKHdlYlZpZXcpOwogCkBAIC0xNzY4LDczICsxNzUxLDMxIEBAIHN0YXRpYyB2
b2lkIHdlYmtpdFdlYlZpZXdDYW5jZWxBdXRoZW50aWNhdGlvblJlcXVlc3QoV2ViS2l0V2ViVmll
dyogd2ViVmlldykKICAgICB3ZWJWaWV3LT5wcml2LT5hdXRoZW50aWNhdGlvblJlcXVlc3QuY2xl
YXIoKTsKIH0KIAotc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0VtaXRMb2FkQ2hhbmdlZChXZWJL
aXRXZWJWaWV3KiB3ZWJWaWV3LCBXZWJLaXRMb2FkRXZlbnQgbG9hZEV2ZW50LCBib29sIGlzRGVs
YXllZEV2ZW50KQotewotICAgIGlmIChsb2FkRXZlbnQgPT0gV0VCS0lUX0xPQURfU1RBUlRFRCkg
ewotICAgICAgICB3ZWJraXRXZWJWaWV3V2F0Y2hGb3JDaGFuZ2VzSW5GYXZpY29uKHdlYlZpZXcp
OwotICAgICAgICB3ZWJraXRXZWJWaWV3Q2FuY2VsQXV0aGVudGljYXRpb25SZXF1ZXN0KHdlYlZp
ZXcpOwotICAgIH0gZWxzZSBpZiAobG9hZEV2ZW50ID09IFdFQktJVF9MT0FEX0ZJTklTSEVEKSB7
Ci0gICAgICAgIGlmIChpc0RlbGF5ZWRFdmVudCkgewotICAgICAgICAgICAgLy8gSW4gY2FzZSBv
ZiB0aGUgZGVsYXllZCBldmVudCwgd2UgbmVlZCB0byBtYW51YWxseSBzZXQgaXMtbG9hZGluZyB0
byBmYWxzZS4KLSAgICAgICAgICAgIHdlYmtpdFdlYlZpZXdTZXRJc0xvYWRpbmcod2ViVmlldywg
ZmFsc2UpOwotICAgICAgICB9Ci0gICAgICAgIHdlYmtpdFdlYlZpZXdDYW5jZWxBdXRoZW50aWNh
dGlvblJlcXVlc3Qod2ViVmlldyk7Ci0gICAgICAgIHdlYmtpdFdlYlZpZXdEaXNjb25uZWN0TWFp
blJlc291cmNlUmVzcG9uc2VDaGFuZ2VkU2lnbmFsSGFuZGxlcih3ZWJWaWV3KTsKLSAgICB9Ci0K
LSAgICBnX3NpZ25hbF9lbWl0KHdlYlZpZXcsIHNpZ25hbHNbTE9BRF9DSEFOR0VEXSwgMCwgbG9h
ZEV2ZW50KTsKLQotICAgIGlmIChpc0RlbGF5ZWRFdmVudCkgewotICAgICAgICBpZiAobG9hZEV2
ZW50ID09IFdFQktJVF9MT0FEX0NPTU1JVFRFRCkKLSAgICAgICAgICAgIHdlYlZpZXctPnByaXYt
PndhaXRpbmdGb3JNYWluUmVzb3VyY2UgPSBmYWxzZTsKLSAgICAgICAgZWxzZSBpZiAobG9hZEV2
ZW50ID09IFdFQktJVF9MT0FEX0ZJTklTSEVEKSB7Ci0gICAgICAgICAgICAvLyBNYW51YWxseSBz
ZXQgaXMtbG9hZGluZyBhZ2FpbiBpbiBjYXNlIGEgbmV3IGxvYWQgd2FzIHN0YXJ0ZWQuCi0gICAg
ICAgICAgICB3ZWJraXRXZWJWaWV3U2V0SXNMb2FkaW5nKHdlYlZpZXcsIGdldFBhZ2Uod2ViVmll
dyktPnBhZ2VMb2FkU3RhdGUoKS5pc0xvYWRpbmcoKSk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0K
LXN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdFbWl0RGVsYXllZExvYWRFdmVudHMoV2ViS2l0V2Vi
Vmlldyogd2ViVmlldykKLXsKLSAgICBXZWJLaXRXZWJWaWV3UHJpdmF0ZSogcHJpdiA9IHdlYlZp
ZXctPnByaXY7Ci0gICAgaWYgKCFwcml2LT53YWl0aW5nRm9yTWFpblJlc291cmNlKQotICAgICAg
ICByZXR1cm47Ci0gICAgQVNTRVJUKHByaXYtPmxhc3REZWxheWVkRXZlbnQgPT0gV0VCS0lUX0xP
QURfQ09NTUlUVEVEIHx8IHByaXYtPmxhc3REZWxheWVkRXZlbnQgPT0gV0VCS0lUX0xPQURfRklO
SVNIRUQpOwotCi0gICAgaWYgKHByaXYtPmxhc3REZWxheWVkRXZlbnQgPT0gV0VCS0lUX0xPQURf
RklOSVNIRUQpCi0gICAgICAgIHdlYmtpdFdlYlZpZXdFbWl0TG9hZENoYW5nZWQod2ViVmlldywg
V0VCS0lUX0xPQURfQ09NTUlUVEVELCB0cnVlKTsKLSAgICB3ZWJraXRXZWJWaWV3RW1pdExvYWRD
aGFuZ2VkKHdlYlZpZXcsIHByaXYtPmxhc3REZWxheWVkRXZlbnQsIHRydWUpOwotfQotCiB2b2lk
IHdlYmtpdFdlYlZpZXdMb2FkQ2hhbmdlZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBXZWJLaXRM
b2FkRXZlbnQgbG9hZEV2ZW50KQogewogICAgIFdlYktpdFdlYlZpZXdQcml2YXRlKiBwcml2ID0g
d2ViVmlldy0+cHJpdjsKLSAgICBpZiAobG9hZEV2ZW50ID09IFdFQktJVF9MT0FEX1NUQVJURUQp
IHsKLSAgICAgICAgLy8gRmluaXNoIGEgcG9zc2libGUgcHJldmlvdXMgbG9hZCB3YWl0aW5nIGZv
ciBtYWluIHJlc291cmNlLgotICAgICAgICB3ZWJraXRXZWJWaWV3RW1pdERlbGF5ZWRMb2FkRXZl
bnRzKHdlYlZpZXcpOwotCisgICAgc3dpdGNoIChsb2FkRXZlbnQpIHsKKyAgICBjYXNlIFdFQktJ
VF9MT0FEX1NUQVJURUQ6CiAgICAgICAgIHdlYmtpdFdlYlZpZXdDYW5jZWxGYXZpY29uUmVxdWVz
dCh3ZWJWaWV3KTsKKyAgICAgICAgd2Via2l0V2ViVmlld1dhdGNoRm9yQ2hhbmdlc0luRmF2aWNv
bih3ZWJWaWV3KTsKKyAgICAgICAgd2Via2l0V2ViVmlld0NhbmNlbEF1dGhlbnRpY2F0aW9uUmVx
dWVzdCh3ZWJWaWV3KTsKICAgICAgICAgcHJpdi0+bG9hZGluZ1Jlc291cmNlc01hcC5jbGVhcigp
OwotICAgICAgICBwcml2LT5tYWluUmVzb3VyY2UgPSAwOwotICAgICAgICBwcml2LT53YWl0aW5n
Rm9yTWFpblJlc291cmNlID0gZmFsc2U7Ci0gICAgfSBlbHNlIGlmIChsb2FkRXZlbnQgPT0gV0VC
S0lUX0xPQURfQ09NTUlUVEVEKSB7CisgICAgICAgIHByaXYtPm1haW5SZXNvdXJjZSA9IG51bGxw
dHI7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgV0VCS0lUX0xPQURfQ09NTUlUVEVEOiB7CiAg
ICAgICAgIFdlYktpdEZhdmljb25EYXRhYmFzZSogZGF0YWJhc2UgPSB3ZWJraXRfd2ViX2NvbnRl
eHRfZ2V0X2Zhdmljb25fZGF0YWJhc2UocHJpdi0+Y29udGV4dC5nZXQoKSk7CiAgICAgICAgIEdV
bmlxdWVQdHI8Y2hhcj4gZmF2aWNvblVSSSh3ZWJraXRfZmF2aWNvbl9kYXRhYmFzZV9nZXRfZmF2
aWNvbl91cmkoZGF0YWJhc2UsIHByaXYtPmFjdGl2ZVVSSS5kYXRhKCkpKTsKICAgICAgICAgd2Vi
a2l0V2ViVmlld1VwZGF0ZUZhdmljb25VUkkod2ViVmlldywgZmF2aWNvblVSSS5nZXQoKSk7Ci0K
LSAgICAgICAgaWYgKCFwcml2LT5tYWluUmVzb3VyY2UpIHsKLSAgICAgICAgICAgIC8vIFdoZW4g
YSBwYWdlIGlzIGxvYWRlZCBmcm9tIHRoZSBoaXN0b3J5IGNhY2hlLCB0aGUgbWFpbiByZXNvdXJj
ZSBsb2FkIGNhbGxiYWNrcwotICAgICAgICAgICAgLy8gYXJlIGNhbGxlZCB3aGVuIHRoZSBtYWlu
IGZyYW1lIGxvYWQgaXMgZmluaXNoZWQuIFdlIHdhbnQgdG8gbWFrZSBzdXJlIHRoZXJlJ3MgYQot
ICAgICAgICAgICAgLy8gbWFpbiByZXNvdXJjZSBhdmFpbGFibGUgd2hlbiBsb2FkIGhhcyBiZWVu
IGNvbW1pdHRlZCwgc28gd2UgZGVsYXkgdGhlIGVtaXNzaW9uIG9mCi0gICAgICAgICAgICAvLyBs
b2FkLWNoYW5nZWQgc2lnbmFsIHVudGlsIG1haW4gcmVzb3VyY2Ugb2JqZWN0IGhhcyBiZWVuIGNy
ZWF0ZWQuCi0gICAgICAgICAgICBwcml2LT53YWl0aW5nRm9yTWFpblJlc291cmNlID0gdHJ1ZTsK
LSAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICB9CisgICAgY2FzZSBXRUJLSVRfTE9BRF9G
SU5JU0hFRDoKKyAgICAgICAgd2Via2l0V2ViVmlld0NhbmNlbEF1dGhlbnRpY2F0aW9uUmVxdWVz
dCh3ZWJWaWV3KTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7
CiAgICAgfQogCi0gICAgaWYgKHByaXYtPndhaXRpbmdGb3JNYWluUmVzb3VyY2UpCi0gICAgICAg
IHByaXYtPmxhc3REZWxheWVkRXZlbnQgPSBsb2FkRXZlbnQ7Ci0gICAgZWxzZQotICAgICAgICB3
ZWJraXRXZWJWaWV3RW1pdExvYWRDaGFuZ2VkKHdlYlZpZXcsIGxvYWRFdmVudCwgZmFsc2UpOwor
ICAgIGdfc2lnbmFsX2VtaXQod2ViVmlldywgc2lnbmFsc1tMT0FEX0NIQU5HRURdLCAwLCBsb2Fk
RXZlbnQpOwogfQogCiB2b2lkIHdlYmtpdFdlYlZpZXdMb2FkRmFpbGVkKFdlYktpdFdlYlZpZXcq
IHdlYlZpZXcsIFdlYktpdExvYWRFdmVudCBsb2FkRXZlbnQsIGNvbnN0IGNoYXIqIGZhaWxpbmdV
UkksIEdFcnJvciAqZXJyb3IpCkBAIC0xOTY0LDMyICsxOTA1LDEzIEBAIHZvaWQgd2Via2l0V2Vi
Vmlld1ByaW50RnJhbWUoV2ViS2l0V2ViVmlldyogd2ViVmlldywgV2ViRnJhbWVQcm94eSogZnJh
bWUpCiAgICAgZ19zaWduYWxfY29ubmVjdChwcmludE9wZXJhdGlvbi5sZWFrUmVmKCksICJmaW5p
c2hlZCIsIEdfQ0FMTEJBQ0soZ19vYmplY3RfdW5yZWYpLCAwKTsKIH0KIAotc3RhdGljIHZvaWQg
bWFpblJlc291cmNlUmVzcG9uc2VDaGFuZ2VkQ2FsbGJhY2soV2ViS2l0V2ViUmVzb3VyY2UqLCBH
UGFyYW1TcGVjKiwgV2ViS2l0V2ViVmlldyogd2ViVmlldykKLXsKLSAgICB3ZWJraXRXZWJWaWV3
RGlzY29ubmVjdE1haW5SZXNvdXJjZVJlc3BvbnNlQ2hhbmdlZFNpZ25hbEhhbmRsZXIod2ViVmll
dyk7Ci0gICAgd2Via2l0V2ViVmlld0VtaXREZWxheWVkTG9hZEV2ZW50cyh3ZWJWaWV3KTsKLX0K
LQotc3RhdGljIHZvaWQgd2FpdEZvck1haW5SZXNvdXJjZVJlc3BvbnNlSWZXYWl0aW5nRm9yUmVz
b3VyY2UoV2ViS2l0V2ViVmlldyogd2ViVmlldykKLXsKLSAgICBXZWJLaXRXZWJWaWV3UHJpdmF0
ZSogcHJpdiA9IHdlYlZpZXctPnByaXY7Ci0gICAgaWYgKCFwcml2LT53YWl0aW5nRm9yTWFpblJl
c291cmNlKQotICAgICAgICByZXR1cm47Ci0KLSAgICB3ZWJraXRXZWJWaWV3RGlzY29ubmVjdE1h
aW5SZXNvdXJjZVJlc3BvbnNlQ2hhbmdlZFNpZ25hbEhhbmRsZXIod2ViVmlldyk7Ci0gICAgcHJp
di0+bWFpblJlc291cmNlUmVzcG9uc2VIYW5kbGVySUQgPQotICAgICAgICBnX3NpZ25hbF9jb25u
ZWN0KHByaXYtPm1haW5SZXNvdXJjZS5nZXQoKSwgIm5vdGlmeTo6cmVzcG9uc2UiLCBHX0NBTExC
QUNLKG1haW5SZXNvdXJjZVJlc3BvbnNlQ2hhbmdlZENhbGxiYWNrKSwgd2ViVmlldyk7Ci19Ci0K
IHZvaWQgd2Via2l0V2ViVmlld1Jlc291cmNlTG9hZFN0YXJ0ZWQoV2ViS2l0V2ViVmlldyogd2Vi
VmlldywgV2ViRnJhbWVQcm94eSogZnJhbWUsIHVpbnQ2NF90IHJlc291cmNlSWRlbnRpZmllciwg
V2ViS2l0VVJJUmVxdWVzdCogcmVxdWVzdCkKIHsKICAgICBXZWJLaXRXZWJWaWV3UHJpdmF0ZSog
cHJpdiA9IHdlYlZpZXctPnByaXY7CiAgICAgYm9vbCBpc01haW5SZXNvdXJjZSA9IGZyYW1lLT5p
c01haW5GcmFtZSgpICYmICFwcml2LT5tYWluUmVzb3VyY2U7CiAgICAgV2ViS2l0V2ViUmVzb3Vy
Y2UqIHJlc291cmNlID0gd2Via2l0V2ViUmVzb3VyY2VDcmVhdGUoZnJhbWUsIHJlcXVlc3QsIGlz
TWFpblJlc291cmNlKTsKLSAgICBpZiAoaXNNYWluUmVzb3VyY2UpIHsKKyAgICBpZiAoaXNNYWlu
UmVzb3VyY2UpCiAgICAgICAgIHByaXYtPm1haW5SZXNvdXJjZSA9IHJlc291cmNlOwotICAgICAg
ICB3YWl0Rm9yTWFpblJlc291cmNlUmVzcG9uc2VJZldhaXRpbmdGb3JSZXNvdXJjZSh3ZWJWaWV3
KTsKLSAgICB9CiAgICAgcHJpdi0+bG9hZGluZ1Jlc291cmNlc01hcC5zZXQocmVzb3VyY2VJZGVu
dGlmaWVyLCBhZG9wdEdSZWYocmVzb3VyY2UpKTsKICAgICBnX3NpZ25hbF9lbWl0KHdlYlZpZXcs
IHNpZ25hbHNbUkVTT1VSQ0VfTE9BRF9TVEFSVEVEXSwgMCwgcmVzb3VyY2UsIHJlcXVlc3QpOwog
fQpAQCAtMzQxOSw3ICszMzQxLDEwIEBAIGdib29sZWFuIHdlYmtpdF93ZWJfdmlld19nZXRfdGxz
X2luZm8oV2ViS2l0V2ViVmlldyogd2ViVmlldywgR1Rsc0NlcnRpZmljYXRlKioKICAgICBpZiAo
IW1haW5GcmFtZSkKICAgICAgICAgcmV0dXJuIEZBTFNFOwogCi0gICAgY29uc3QgV2ViQ29yZTo6
Q2VydGlmaWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8gPSBtYWluRnJhbWUtPmNlcnRpZmljYXRl
SW5mbygpLT5jZXJ0aWZpY2F0ZUluZm8oKTsKKyAgICBhdXRvKiB3a0NlcnRpZmljYXRlSW5mbyA9
IG1haW5GcmFtZS0+Y2VydGlmaWNhdGVJbmZvKCk7CisgICAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwo
d2tDZXJ0aWZpY2F0ZUluZm8sIEZBTFNFKTsKKworICAgIGNvbnN0IGF1dG8mIGNlcnRpZmljYXRl
SW5mbyA9IHdrQ2VydGlmaWNhdGVJbmZvLT5jZXJ0aWZpY2F0ZUluZm8oKTsKICAgICBpZiAoY2Vy
dGlmaWNhdGUpCiAgICAgICAgICpjZXJ0aWZpY2F0ZSA9IGNlcnRpZmljYXRlSW5mby5jZXJ0aWZp
Y2F0ZSgpOwogICAgIGlmIChlcnJvcnMpCg==
</data>
<flag name="review"
          id="291771"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>267689</attachid>
            <date>2015-12-19 08:57:33 -0800</date>
            <delta_ts>2015-12-19 08:57:33 -0800</delta_ts>
            <desc>Another similar BT from gdb</desc>
            <filename>gdb.txt</filename>
            <type>text/plain</type>
            <size>30833</size>
            <attacher name="Andres Gomez Garcia">agomez</attacher>
            
              <data encoding="base64">CihnZGIpIGJhY2t0cmFjZSBmdWxsCgojMCAgMHgwMDAwN2ZmZmYzOTMyMzFlIGluIGdldCAoKSBh
dCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQv
U291cmNlL1dURi93dGYvZ2xpYi9HUmVmUHRyLmg6MTA1Ck5vIGxvY2Fscy4KIzEgIDB4MDAwMDdm
ZmZmM2M5ZWYwNiBpbiBjZXJ0aWZpY2F0ZSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBo
YW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5oOjQ3Ck5vIGxvY2Fscy4KIzIgIDB4MDAwMDdmZmZm
M2QwYTU1ZCBpbiB3ZWJraXRfd2ViX3ZpZXdfZ2V0X3Rsc19pbmZvICgpIGF0IC9vcHQvZ25vbWUt
b3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcDozNDY4Ck5vIGxvY2Fscy4KIzMg
IDB4MDAwMDAwMDAwMDQ3YzFiNSBpbiBsb2FkX2NoYW5nZWRfY2IgKHdlYl92aWV3PTB4MmU1ZjVl
MCwgbG9hZF9ldmVudD1XRUJLSVRfTE9BRF9DT01NSVRURUQsIHVzZXJfZGF0YT0weDApIGF0IGVw
aHktd2ViLXZpZXcuYzoxNjQ3CiAgICAgICAgdXJpID0gMHg3ZmZmOTUzYjcwYjAgImFib3V0Om92
ZXJ2aWV3IgogICAgICAgIHNlY3VyaXR5X2xldmVsID0gRVBIWV9TRUNVUklUWV9MRVZFTF9OT19T
RUNVUklUWQogICAgICAgIHZpZXcgPSAweDJlNWY1ZTAKICAgICAgICBwcml2ID0gMHgyZTVmMGQw
CiAgICAgICAgb2JqZWN0ID0gMHgyZTVmNWUwCiM0ICAweDAwMDA3ZmZmZWU0YTNlYzUgaW4gZ19j
bG9zdXJlX2ludm9rZSAoY2xvc3VyZT0weDJlNjM0ZTAsIHJldHVybl92YWx1ZT0weDAsIG5fcGFy
YW1fdmFsdWVzPTIsIHBhcmFtX3ZhbHVlcz0weDdmZmZmZmZmYjY3MCwgaW52b2NhdGlvbl9oaW50
PTB4N2ZmZmZmZmZiNjEwKSBhdCBnY2xvc3VyZS5jOjc2OAogICAgICAgIG1hcnNoYWwgPSA8b3B0
aW1pemVkIG91dD4KICAgICAgICBtYXJzaGFsX2RhdGEgPSA8b3B0aW1pemVkIG91dD4KICAgICAg
ICBpbl9tYXJzaGFsID0gMAogICAgICAgIHJlYWxfY2xvc3VyZSA9IDB4MmU2MzRjMAogICAgICAg
IF9fRlVOQ1RJT05fXyA9ICJnX2Nsb3N1cmVfaW52b2tlIgojNSAgMHgwMDAwN2ZmZmVlNGI1Yjdj
IGluIHNpZ25hbF9lbWl0X3VubG9ja2VkX1IgKG5vZGU9bm9kZUBlbnRyeT0weDI0OTNmMDAsIGRl
dGFpbD1kZXRhaWxAZW50cnk9MCwgaW5zdGFuY2U9aW5zdGFuY2VAZW50cnk9MHgyZTVmNWUwLCBl
bWlzc2lvbl9yZXR1cm49ZW1pc3Npb25fcmV0dXJuQGVudHJ5PTB4MCwgaW5zdGFuY2VfYW5kX3Bh
cmFtcz1pbnN0YW5jZV9hbmRfcGFyYW1zQGVudHJ5PTB4N2ZmZmZmZmZiNjcwKSBhdCBnc2lnbmFs
LmM6MzU0OQogICAgICAgIHRtcCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIGhhbmRsZXIgPSAw
eDJlNjBkODAKICAgICAgICBhY2N1bXVsYXRvciA9IDB4MAogICAgICAgIGVtaXNzaW9uID0ge25l
eHQgPSAweDAsIGluc3RhbmNlID0gMHgyZTVmNWUwLCBpaGludCA9IHtzaWduYWxfaWQgPSAzNjgs
IGRldGFpbCA9IDAsIHJ1bl90eXBlID0gR19TSUdOQUxfUlVOX0ZJUlNUfSwgc3RhdGUgPSBFTUlT
U0lPTl9SVU4sIGNoYWluX3R5cGUgPSA0fQogICAgICAgIGhhbmRsZXJfbGlzdCA9IDxvcHRpbWl6
ZWQgb3V0PgogICAgICAgIHJldHVybl9hY2N1ID0gMHgwCiAgICAgICAgYWNjdSA9IHtnX3R5cGUg
PSAwLCBkYXRhID0ge3t2X2ludCA9IDAsIHZfdWludCA9IDAsIHZfbG9uZyA9IDAsIHZfdWxvbmcg
PSAwLCB2X2ludDY0ID0gMCwgdl91aW50NjQgPSAwLCB2X2Zsb2F0ID0gMCwgdl9kb3VibGUgPSAw
LCB2X3BvaW50ZXIgPSAweDB9LCB7dl9pbnQgPSAwLCB2X3VpbnQgPSAwLCB2X2xvbmcgPSAwLCB2
X3Vsb25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0gMCwgdl9mbG9hdCA9IDAsIHZfZG91
YmxlID0gMCwgdl9wb2ludGVyID0gMHgwfX19CiAgICAgICAgc2lnbmFsX2lkID0gMzY4CiAgICAg
ICAgbWF4X3NlcXVlbnRpYWxfaGFuZGxlcl9udW1iZXIgPSAxODI0OTIKICAgICAgICByZXR1cm5f
dmFsdWVfYWx0ZXJlZCA9IDAKIzYgIDB4MDAwMDdmZmZlZTRiZTFkOCBpbiBnX3NpZ25hbF9lbWl0
X3ZhbGlzdCAoaW5zdGFuY2U9PG9wdGltaXplZCBvdXQ+LCBzaWduYWxfaWQ9PG9wdGltaXplZCBv
dXQ+LCBkZXRhaWw9PG9wdGltaXplZCBvdXQ+LCB2YXJfYXJncz12YXJfYXJnc0BlbnRyeT0weDdm
ZmZmZmZmYjgwMCkgYXQgZ3NpZ25hbC5jOjMzMDUKICAgICAgICBpbnN0YW5jZV9hbmRfcGFyYW1z
ID0gMHg3ZmZmZmZmZmI2NzAKICAgICAgICBzaWduYWxfcmV0dXJuX3R5cGUgPSA8b3B0aW1pemVk
IG91dD4KICAgICAgICBwYXJhbV92YWx1ZXMgPSAweDdmZmZmZmZmYjY4OAogICAgICAgIGkgPSA8
b3B0aW1pemVkIG91dD4KICAgICAgICBuX3BhcmFtcyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAg
IF9fRlVOQ1RJT05fXyA9ICJnX3NpZ25hbF9lbWl0X3ZhbGlzdCIKIzcgIDB4MDAwMDdmZmZlZTRi
ZTQzZiBpbiBnX3NpZ25hbF9lbWl0IChpbnN0YW5jZT08b3B0aW1pemVkIG91dD4sIHNpZ25hbF9p
ZD08b3B0aW1pemVkIG91dD4sIGRldGFpbD08b3B0aW1pemVkIG91dD4pIGF0IGdzaWduYWwuYzoz
MzYxCiAgICAgICAgdmFyX2FyZ3MgPSB7e2dwX29mZnNldCA9IDMyLCBmcF9vZmZzZXQgPSA0OCwg
b3ZlcmZsb3dfYXJnX2FyZWEgPSAweDdmZmZmZmZmYjhlMCwgcmVnX3NhdmVfYXJlYSA9IDB4N2Zm
ZmZmZmZiODIwfX0KIzggIDB4MDAwMDdmZmZmM2QwNDVkNiBpbiB3ZWJraXRXZWJWaWV3RW1pdExv
YWRDaGFuZ2VkICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Vi
a2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJW
aWV3LmNwcDoxNzgzCk5vIGxvY2Fscy4KIzkgIDB4MDAwMDdmZmZmM2QwNDY3MCBpbiB3ZWJraXRX
ZWJWaWV3RW1pdERlbGF5ZWRMb2FkRXZlbnRzICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBp
cGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcDoxODAzCk5vIGxvY2Fscy4KIzEwIDB4MDAwMDdmZmZm
M2QwNDZjOCBpbiB3ZWJraXRXZWJWaWV3TG9hZENoYW5nZWQgKCkgYXQgL29wdC9nbm9tZS1vcy90
YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwOjE4MTIKTm8gbG9jYWxzLgojMTEgMHgw
MDAwN2ZmZmYzY2Q5MmU4IGluIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUgKCkgYXQg
L29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdExvYWRlckNsaWVudC5jcHA6NDgK
Tm8gbG9jYWxzLgojMTIgMHgwMDAwN2ZmZmYzOWUwMWU2IGluIGRpZFN0YXJ0UHJvdmlzaW9uYWxM
b2FkRm9yRnJhbWUgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93
ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
OjI4NzQKTm8gbG9jYWxzLgojMTMgMHgwMDAwN2ZmZmYzZGM1NWM3IGluIGNhbGxNZW1iZXJGdW5j
dGlvbkltcGw8V2ViS2l0OjpXZWJQYWdlUHJveHksIHZvaWQgKFdlYktpdDo6V2ViUGFnZVByb3h5
OjoqKSh1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCBXVEY6OlN0cmluZyBjb25zdCYsIFdU
Rjo6U3RyaW5nIGNvbnN0JiwgV2ViS2l0OjpVc2VyRGF0YSBjb25zdCYpLCBzdGQ6OnR1cGxlPHVu
c2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcsIFdURjo6U3RyaW5nLCBXVEY6OlN0cmluZywgV2Vi
S2l0OjpVc2VyRGF0YT4sIDB1bCwgMXVsLCAydWwsIDN1bCwgNHVsPiAoKSBhdCAvb3B0L2dub21l
LW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vSVBDL0hhbmRsZU1lc3NhZ2UuaDoxNgpObyBsb2NhbHMuCiMxNCAweDAwMDA3
ZmZmZjNkYmVlNzkgaW4gY2FsbE1lbWJlckZ1bmN0aW9uPFdlYktpdDo6V2ViUGFnZVByb3h5LCB2
b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6KikodW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9u
ZywgV1RGOjpTdHJpbmcgY29uc3QmLCBXVEY6OlN0cmluZyBjb25zdCYsIFdlYktpdDo6VXNlckRh
dGEgY29uc3QmKSwgc3RkOjp0dXBsZTx1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCBXVEY6
OlN0cmluZywgV1RGOjpTdHJpbmcsIFdlYktpdDo6VXNlckRhdGE+LCBzdGQ6Om1ha2VfaW5kZXhf
c2VxdWVuY2U8NXVsPiA+ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tv
dXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVz
c2FnZS5oOjIyCk5vIGxvY2Fscy4KIzE1IDB4MDAwMDdmZmZmM2RiNDM1NyBpbiBoYW5kbGVNZXNz
YWdlPE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJh
bWUsIFdlYktpdDo6V2ViUGFnZVByb3h5LCB2b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6Kiko
dW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgV1RGOjpTdHJpbmcgY29uc3QmLCBXVEY6OlN0
cmluZyBjb25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29uc3QmKT4gKCkgYXQgL29wdC9nbm9tZS1v
cy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQy
L1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNzYWdlLmg6OTIKTm8gbG9jYWxzLgojMTYgMHgwMDAwN2Zm
ZmYzZGFkNGM2IGluIGRpZFJlY2VpdmVNZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkv
ZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9EZXJpdmVkU291cmNlcy9XZWJLaXQy
L1dlYlBhZ2VQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHA6NDU0Ck5vIGxvY2Fscy4KIzE3IDB4MDAw
MDdmZmZmMzhlZWNiNCBpbiBkaXNwYXRjaE1lc3NhZ2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50
eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1BsYXRm
b3JtL0lQQy9NZXNzYWdlUmVjZWl2ZXJNYXAuY3BwOjEwMgpObyBsb2NhbHMuCiMxOCAweDAwMDA3
ZmZmZjM5MDcyZjUgaW4gZGlzcGF0Y2hNZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkv
ZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
Q2hpbGRQcm9jZXNzUHJveHkuY3BwOjEzMApObyBsb2NhbHMuCiMxOSAweDAwMDA3ZmZmZjNhNGIy
N2EgaW4gZGlkUmVjZWl2ZU1lc3NhZ2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFu
eS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkuY3BwOjQ3OApObyBsb2NhbHMuCiMyMCAweDAwMDA3ZmZmZjM4ZTA1MTggaW4g
ZGlzcGF0Y2hNZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tv
dXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlv
bi5jcHA6ODgwCk5vIGxvY2Fscy4KIzIxIDB4MDAwMDdmZmZmMzhlMDVlNCBpbiBkaXNwYXRjaE1l
c3NhZ2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRn
dGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcDo5MDMK
Tm8gbG9jYWxzLgojMjIgMHgwMDAwN2ZmZmYzOGUwN2FlIGluIGRpc3BhdGNoT25lTWVzc2FnZSAo
KSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEw
LjQvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwOjkzMQpObyBsb2Nh
bHMuCiMyMyAweDAwMDA3ZmZmZjM4ZTAyMjYgaW4gb3BlcmF0b3IoKSAoKSBhdCAvb3B0L2dub21l
LW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwOjg3NApObyBsb2NhbHMuCiMyNCAweDAwMDA3
ZmZmZjM4ZTFhNDAgaW4gX01faW52b2tlICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0
aW9uYWw6MjAzOQpObyBsb2NhbHMuCiMyNSAweDAwMDA3ZmZmZjM4NjhhZmUgaW4gb3BlcmF0b3Io
KSAoKSBhdCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjI0MzkKTm8gbG9jYWxzLgoj
MjYgMHgwMDAwN2ZmZmY1NzJmN2M4IGluIHBlcmZvcm1Xb3JrICgpIGF0IC9vcHQvZ25vbWUtb3Mv
dGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9S
dW5Mb29wLmNwcDoxMjEKTm8gbG9jYWxzLgojMjcgMHgwMDAwN2ZmZmY1NzMzNTU0IGluIG9wZXJh
dG9yKCkgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRn
dGstMi4xMC40L1NvdXJjZS9XVEYvd3RmL2dsaWIvUnVuTG9vcEdMaWIuY3BwOjk2Ck5vIGxvY2Fs
cy4KIzI4IDB4MDAwMDdmZmZmNTczM2MyOSBpbiBfTV9pbnZva2UgKCkgYXQgL3Vzci9pbmNsdWRl
L2MrKy80LjkvZnVuY3Rpb25hbDoyMDM5Ck5vIGxvY2Fscy4KIzI5IDB4MDAwMDdmZmZmMjgxMzA2
YyBpbiBvcGVyYXRvcigpICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjQz
OQpObyBsb2NhbHMuCiMzMCAweDAwMDA3ZmZmZjJkNjFkYjAgaW4gdm9pZENhbGxiYWNrICgpIGF0
IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9T
b3VyY2UvV1RGL3d0Zi9nbGliL0dNYWluTG9vcFNvdXJjZS5jcHA6MzY1Ck5vIGxvY2Fscy4KIzMx
IDB4MDAwMDdmZmZmMmQ2MjMxZCBpbiB2b2lkU291cmNlQ2FsbGJhY2sgKCkgYXQgL29wdC9nbm9t
ZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XVEYv
d3RmL2dsaWIvR01haW5Mb29wU291cmNlLmNwcDo0NTYKTm8gbG9jYWxzLgojMzIgMHgwMDAwN2Zm
ZmVlMWE0ZDlkIGluIGdfbWFpbl9kaXNwYXRjaCAoY29udGV4dD0weDcyNGYwMCkgYXQgZ21haW4u
YzozMTIyCiAgICAgICAgZGlzcGF0Y2ggPSAweDdmZmZlZTFhMTg2MCA8Z19pZGxlX2Rpc3BhdGNo
PgogICAgICAgIHByZXZfc291cmNlID0gMHgwCiAgICAgICAgd2FzX2luX2NhbGwgPSAwCiAgICAg
ICAgdXNlcl9kYXRhID0gMHg3ZmZmOTUzYzM4NDAKICAgICAgICBjYWxsYmFjayA9IDB4N2ZmZmYy
ZDYyMmZhIDx2b2lkU291cmNlQ2FsbGJhY2soKT4KICAgICAgICBjYl9mdW5jcyA9IDxvcHRpbWl6
ZWQgb3V0PgogICAgICAgIGNiX2RhdGEgPSAweDdmZmY2MDAxMzI5MAogICAgICAgIG5lZWRfZGVz
dHJveSA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHNvdXJjZSA9IDB4N2ZmZjYwMDEzMjAwCiAg
ICAgICAgY3VycmVudCA9IDB4NmYzNWMwCiAgICAgICAgaSA9IDAKIzMzIGdfbWFpbl9jb250ZXh0
X2Rpc3BhdGNoIChjb250ZXh0PWNvbnRleHRAZW50cnk9MHg3MjRmMDApIGF0IGdtYWluLmM6Mzcz
NwpObyBsb2NhbHMuCiMzNCAweDAwMDA3ZmZmZWUxYTUxNzAgaW4gZ19tYWluX2NvbnRleHRfaXRl
cmF0ZSAoY29udGV4dD1jb250ZXh0QGVudHJ5PTB4NzI0ZjAwLCBibG9jaz1ibG9ja0BlbnRyeT0x
LCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0xLCBzZWxmPTxvcHRpbWl6ZWQgb3V0PikgYXQgZ21h
aW4uYzozODA4CiAgICAgICAgbWF4X3ByaW9yaXR5ID0gMjE0NzQ4MzY0NwogICAgICAgIHRpbWVv
dXQgPSAxODAKICAgICAgICBzb21lX3JlYWR5ID0gMQogICAgICAgIG5mZHMgPSA8b3B0aW1pemVk
IG91dD4KICAgICAgICBhbGxvY2F0ZWRfbmZkcyA9IDQKICAgICAgICBmZHMgPSAweDI3MDUyZTAK
IzM1IDB4MDAwMDdmZmZlZTFhNTIxYyBpbiBnX21haW5fY29udGV4dF9pdGVyYXRpb24gKGNvbnRl
eHQ9MHg3MjRmMDAsIGNvbnRleHRAZW50cnk9MHgwLCBtYXlfYmxvY2s9bWF5X2Jsb2NrQGVudHJ5
PTEpIGF0IGdtYWluLmM6Mzg2OQogICAgICAgIHJldHZhbCA9IDxvcHRpbWl6ZWQgb3V0PgojMzYg
MHgwMDAwN2ZmZmVlNzhlNjdjIGluIGdfYXBwbGljYXRpb25fcnVuIChhcHBsaWNhdGlvbj0weDdj
YTFkMCwgYXJnYz08b3B0aW1pemVkIG91dD4sIGFyZ3Y9MHg3ZmZmZmZmZmNjMjgpIGF0IGdhcHBs
aWNhdGlvbi5jOjIzMDgKICAgICAgICBhcmd1bWVudHMgPSAweDg1ODk4MAogICAgICAgIHN0YXR1
cyA9IDAKICAgICAgICBfX0ZVTkNUSU9OX18gPSAiZ19hcHBsaWNhdGlvbl9ydW4iCiMzNyAweDAw
MDAwMDAwMDA0MmYyMTkgaW4gbWFpbiAoYXJnYz0xLCBhcmd2PTB4N2ZmZmZmZmZjYzI4KSBhdCBl
cGh5LW1haW4uYzo0ODQKICAgICAgICBvcHRpb25fY29udGV4dCA9IDB4NmY4N2EwCiAgICAgICAg
b3B0aW9uX2dyb3VwID0gMHg2Zjg4MjAKICAgICAgICBlcnJvciA9IDB4MAogICAgICAgIHVzZXJf
dGltZSA9IDg0NDcyNDYxMQogICAgICAgIGFyYml0cmFyeV91cmwgPSAwCiAgICAgICAgY3R4ID0g
MHg4MDZhNDAKICAgICAgICBzdGFydHVwX2ZsYWdzID0gKHVua25vd246IDApCiAgICAgICAgbW9k
ZSA9IEVQSFlfRU1CRURfU0hFTExfTU9ERV9CUk9XU0VSCiAgICAgICAgZXBoeV9zaGVsbCA9IDB4
N2NhMWQwCiAgICAgICAgc3RhdHVzID0gMAogICAgICAgIGZsYWdzID0gRVBIWV9GSUxFX0hFTFBF
UlNfRU5TVVJFX0VYSVNUUwoKKGdkYikgaW5mbyByZWdpc3RlcnMKCnJheCAgICAgICAgICAgIDB4
MTAJMTYKcmJ4ICAgICAgICAgICAgMHgyZTYzNGUwCTQ4NjQxMjQ4CnJjeCAgICAgICAgICAgIDB4
MQkxCnJkeCAgICAgICAgICAgIDB4NQk1CnJzaSAgICAgICAgICAgIDB4N2VhNWEwCTgyOTk5MzYK
cmRpICAgICAgICAgICAgMHgxMAkxNgpyYnAgICAgICAgICAgICAweDdmZmZmZmZmYjM3MAkweDdm
ZmZmZmZmYjM3MApyc3AgICAgICAgICAgICAweDdmZmZmZmZmYjM3MAkweDdmZmZmZmZmYjM3MApy
OCAgICAgICAgICAgICAweDJlN2M5NDgJNDg3NDQ3NzYKcjkgICAgICAgICAgICAgMHgyZTdjOGUw
CTQ4NzQ0NjcyCnIxMCAgICAgICAgICAgIDB4N2ZmZmVkNDRkMjIwCTE0MDczNzE3NDA5ODQ2NApy
MTEgICAgICAgICAgICAweGZmZmZmZmY0CTQyOTQ5NjcyODQKcjEyICAgICAgICAgICAgMHgwCTAK
cjEzICAgICAgICAgICAgMHgyCTIKcjE0ICAgICAgICAgICAgMHg3ZmZmZmZmZmI2NzAJMTQwNzM3
NDg4MzM2NDk2CnIxNSAgICAgICAgICAgIDB4N2ZmZmZmZmZiNjEwCTE0MDczNzQ4ODMzNjQwMApy
aXAgICAgICAgICAgICAweDdmZmZmMzkzMjMxZQkweDdmZmZmMzkzMjMxZSA8Z2V0KCkrMTI+CmVm
bGFncyAgICAgICAgIDB4MTAyMDIJWyBJRiBSRiBdCmNzICAgICAgICAgICAgIDB4MzMJNTEKc3Mg
ICAgICAgICAgICAgMHgyYgk0MwpkcyAgICAgICAgICAgICAweDAJMAplcyAgICAgICAgICAgICAw
eDAJMApmcyAgICAgICAgICAgICAweDAJMApncyAgICAgICAgICAgICAweDAJMAoKKGdkYikgeC8x
NmkgJHBjCgo9PiAweDdmZmZmMzkzMjMxZSA8Z2V0KCkrMTI+Ogltb3YgICAgKCVyYXgpLCVyYXgK
ICAgMHg3ZmZmZjM5MzIzMjEgPGdldCgpKzE1PjoJcG9wICAgICVyYnAKICAgMHg3ZmZmZjM5MzIz
MjIgPGdldCgpKzE2PjoJcmV0cSAgIAogICAweDdmZmZmMzkzMjMyMyA8Zm9sZENhc2U8dW5zaWdu
ZWQgc2hvcnQ+KCk+OglwdXNoICAgJXJicAogICAweDdmZmZmMzkzMjMyNCA8Zm9sZENhc2U8dW5z
aWduZWQgc2hvcnQ+KCkrMT46CW1vdiAgICAlcnNwLCVyYnAKICAgMHg3ZmZmZjM5MzIzMjcgPGZv
bGRDYXNlPHVuc2lnbmVkIHNob3J0PigpKzQ+OglzdWIgICAgJDB4MTAsJXJzcAogICAweDdmZmZm
MzkzMjMyYiA8Zm9sZENhc2U8dW5zaWduZWQgc2hvcnQ+KCkrOD46CW1vdiAgICAlZWRpLCVlYXgK
ICAgMHg3ZmZmZjM5MzIzMmQgPGZvbGRDYXNlPHVuc2lnbmVkIHNob3J0PigpKzEwPjoJbW92ICAg
ICVheCwtMHg0KCVyYnApCiAgIDB4N2ZmZmYzOTMyMzMxIDxmb2xkQ2FzZTx1bnNpZ25lZCBzaG9y
dD4oKSsxND46CW1vdnp3bCAtMHg0KCVyYnApLCVlYXgKICAgMHg3ZmZmZjM5MzIzMzUgPGZvbGRD
YXNlPHVuc2lnbmVkIHNob3J0PigpKzE4PjoJbW92ICAgICQweDAsJWVzaQogICAweDdmZmZmMzkz
MjMzYSA8Zm9sZENhc2U8dW5zaWduZWQgc2hvcnQ+KCkrMjM+Ogltb3YgICAgJWVheCwlZWRpCiAg
IDB4N2ZmZmYzOTMyMzNjIDxmb2xkQ2FzZTx1bnNpZ25lZCBzaG9ydD4oKSsyNT46CWNhbGxxICAw
eDdmZmZmMzg0Zjc4MCA8dV9mb2xkQ2FzZV81MkBwbHQ+CiAgIDB4N2ZmZmYzOTMyMzQxIDxmb2xk
Q2FzZTx1bnNpZ25lZCBzaG9ydD4oKSszMD46CWxlYXZlcSAKICAgMHg3ZmZmZjM5MzIzNDIgPGZv
bGRDYXNlPHVuc2lnbmVkIHNob3J0PigpKzMxPjoJcmV0cSAgIAogICAweDdmZmZmMzkzMjM0MyA8
Y29tcHV0ZUhhc2hBbmRNYXNrVG9wOEJpdHM8dW5zaWduZWQgc2hvcnQsIFdURjo6Q2FzZUZvbGRp
bmdIYXNoOjpmb2xkQ2FzZTx1bnNpZ25lZCBzaG9ydD4gPigpPjoJcHVzaCAgICVyYnAKICAgMHg3
ZmZmZjM5MzIzNDQgPGNvbXB1dGVIYXNoQW5kTWFza1RvcDhCaXRzPHVuc2lnbmVkIHNob3J0LCBX
VEY6OkNhc2VGb2xkaW5nSGFzaDo6Zm9sZENhc2U8dW5zaWduZWQgc2hvcnQ+ID4oKSsxPjoJbW92
ICAgICVyc3AsJXJicAoKKGdkYikgdGhyZWFkIGFwcGx5IGFsbCBiYWNrdHJhY2UKCgpUaHJlYWQg
MzYwIChUaHJlYWQgMHg3ZmZmNzVmYmY3MDAgKExXUCA0NDE5KSk6CiMwICAweDAwMDA3ZmZmZWQz
ZmM4NGQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgx
CiMxICAweDAwMDA3ZmZmZWUxYTUxMGMgaW4gZ19tYWluX2NvbnRleHRfcG9sbCAocHJpb3JpdHk9
MjE0NzQ4MzY0Nywgbl9mZHM9MiwgZmRzPTB4N2ZmZjYwMDEzNjAwLCB0aW1lb3V0PS0xLCBjb250
ZXh0PTB4MzRlZmRjMCkgYXQgZ21haW4uYzo0MTAzCiMyICBnX21haW5fY29udGV4dF9pdGVyYXRl
IChjb250ZXh0PTB4MzRlZmRjMCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0
Y2hAZW50cnk9MSwgc2VsZj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzgwMwojMyAgMHgw
MDAwN2ZmZmVlMWE1NDkyIGluIGdfbWFpbl9sb29wX3J1biAobG9vcD0weDJiYzQzYTApIGF0IGdt
YWluLmM6NDAwMgojNCAgMHgwMDAwN2ZmZmYyZDYzNmU1IGluIG9wZXJhdG9yKCkgKCkgYXQgL29w
dC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJj
ZS9XVEYvd3RmL2dsaWIvV29ya1F1ZXVlR0xpYi5jcHA6NjEKIzUgIDB4MDAwMDdmZmZmMmQ2NDI4
OCBpbiBfTV9pbnZva2UgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyMDM5
CiM2ICAweDAwMDA3ZmZmZjI4MTMwNmMgaW4gb3BlcmF0b3IoKSAoKSBhdCAvdXNyL2luY2x1ZGUv
YysrLzQuOS9mdW5jdGlvbmFsOjI0MzkKIzcgIDB4MDAwMDdmZmZmMmQyNmEwNyBpbiB0aHJlYWRF
bnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Vi
a2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwOjU4CiM4ICAweDAwMDA3
ZmZmZjJkNWQ5ZTYgaW4gd3RmVGhyZWFkRW50cnlQb2ludCAoKSBhdCAvb3B0L2dub21lLW9zL3Rh
bnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvVGhy
ZWFkaW5nUHRocmVhZHMuY3BwOjE2NwojOSAgMHgwMDAwN2ZmZmVkNmQ5MGE1IGluIHN0YXJ0X3Ro
cmVhZCAoYXJnPTB4N2ZmZjc1ZmJmNzAwKSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMwOQojMTAgMHgw
MDAwN2ZmZmVkNDA2Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4
L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDM1OSAoVGhyZWFkIDB4N2ZmZmRkNjM5NzAwIChM
V1AgNDQxNikpOgojMCAgMHgwMDAwN2ZmZmVkNmUwNGZkIGluIG5hbm9zbGVlcCAoKSBhdCAuLi9z
eXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCiMxICAweDAwMDA3ZmZmZjJkNmU3OTkg
aW4gc2xlZXBfZm9yPGxvbmcsIHN0ZDo6cmF0aW88MWwsIDEwMDBsPiA+ICgpIGF0IC91c3IvaW5j
bHVkZS9jKysvNC45L3RocmVhZDoyODIKIzIgIDB4MDAwMDdmZmZmMmQ2Yjc4ZSBpbiBzbGVlcCAo
KSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEw
LjQvU291cmNlL2JtYWxsb2MvYm1hbGxvYy9TdGF0aWNNdXRleC5oOjY0CiMzICAweDAwMDA3ZmZm
ZjJkNmI3ZTAgaW4gd2FpdFVudGlsRmFsc2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlw
aGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvU3Rh
dGljTXV0ZXguaDo3NAojNCAgMHgwMDAwN2ZmZmYyZDZiYzI0IGluIHNjYXZlbmdlICgpIGF0IC9v
cHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3Vy
Y2UvYm1hbGxvYy9ibWFsbG9jL0hlYXAuY3BwOjkwCiM1ICAweDAwMDA3ZmZmZjJkNmJiZDAgaW4g
Y29uY3VycmVudFNjYXZlbmdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hl
Y2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0hlYXAuY3BwOjg1
CiM2ICAweDAwMDA3ZmZmZjJkNmZkMTQgaW4gdGhyZWFkUnVuTG9vcCAoKSBhdCAvb3B0L2dub21l
LW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL2JtYWxs
b2MvYm1hbGxvYy9Bc3luY1Rhc2suaDoxNDMKIzcgIDB4MDAwMDdmZmZmMmQ2ZjgwZSBpbiB0aHJl
YWRFbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQv
d2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0FzeW5jVGFzay5oOjEyNwoj
OCAgMHgwMDAwN2ZmZmYyZDcyMWYyIGluIF9NX2ludm9rZTwwdWw+ICgpIGF0IC91c3IvaW5jbHVk
ZS9jKysvNC45L2Z1bmN0aW9uYWw6MTcwMAojOSAgMHgwMDAwN2ZmZmYyZDcyMGFlIGluIG9wZXJh
dG9yKCkgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoxNjg4CiMxMCAweDAw
MDA3ZmZmZjJkNzFmYzQgaW4gX01fcnVuICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L3RocmVh
ZDoxMTUKIzExIDB4MDAwMDdmZmZlOGQyMGRkMCBpbiA/PyAoKSBmcm9tIC91c3IvbGliL3g4Nl82
NC1saW51eC1nbnUvbGlic3RkYysrLnNvLjYKIzEyIDB4MDAwMDdmZmZlZDZkOTBhNSBpbiBzdGFy
dF90aHJlYWQgKGFyZz0weDdmZmZkZDYzOTcwMCkgYXQgcHRocmVhZF9jcmVhdGUuYzozMDkKIzEz
IDB4MDAwMDdmZmZlZDQwNmNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9s
aW51eC94ODZfNjQvY2xvbmUuUzoxMTEKClRocmVhZCAxNCAoVGhyZWFkIDB4N2ZmZjY2NTc1NzAw
IChMV1AgNTcyNCkpOgojMCAgMHgwMDAwN2ZmZmVkM2ZjODRkIGluIHBvbGwgKCkgYXQgLi4vc3lz
ZGVwcy91bml4L3N5c2NhbGwtdGVtcGxhdGUuUzo4MQojMSAgMHgwMDAwN2ZmZmVlMWE1MTBjIGlu
IGdfbWFpbl9jb250ZXh0X3BvbGwgKHByaW9yaXR5PTIxNDc0ODM2NDcsIG5fZmRzPTIsIGZkcz0w
eDdmZmY0ODAwMDhjMCwgdGltZW91dD0tMSwgY29udGV4dD0weDI5ZDZmNjApIGF0IGdtYWluLmM6
NDEwMwojMiAgZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD1jb250ZXh0QGVudHJ5PTB4
MjlkNmY2MCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hAZW50cnk9MSwg
c2VsZj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzgwMwojMyAgMHgwMDAwN2ZmZmVlMWE1
MjFjIGluIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGlvbiAoY29udGV4dD0weDI5ZDZmNjAsIG1heV9i
bG9jaz1tYXlfYmxvY2tAZW50cnk9MSkgYXQgZ21haW4uYzozODY5CiM0ICAweDAwMDA3ZmZmZWUx
YTUyNTkgaW4gZ2xpYl93b3JrZXJfbWFpbiAoZGF0YT08b3B0aW1pemVkIG91dD4pIGF0IGdtYWlu
LmM6NTYxOAojNSAgMHgwMDAwN2ZmZmVlMWNiYmE1IGluIGdfdGhyZWFkX3Byb3h5IChkYXRhPTB4
MzJkMjk0MCkgYXQgZ3RocmVhZC5jOjc2NAojNiAgMHgwMDAwN2ZmZmVkNmQ5MGE1IGluIHN0YXJ0
X3RocmVhZCAoYXJnPTB4N2ZmZjY2NTc1NzAwKSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMwOQojNyAg
MHgwMDAwN2ZmZmVkNDA2Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xp
bnV4L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDEzIChUaHJlYWQgMHg3ZmZmNjdmZmY3MDAg
KExXUCA1NjczKSk6CiMwICAweDAwMDA3ZmZmZWQzZmM4NGQgaW4gcG9sbCAoKSBhdCAuLi9zeXNk
ZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCiMxICAweDAwMDA3ZmZmOTQzZGE0NjEgaW4g
Pz8gKCkgZnJvbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnB1bHNlLnNvLjAKIzIgIDB4
MDAwMDdmZmY5NDNjYjhlMSBpbiBwYV9tYWlubG9vcF9wb2xsICgpIGZyb20gL3Vzci9saWIveDg2
XzY0LWxpbnV4LWdudS9saWJwdWxzZS5zby4wCiMzICAweDAwMDA3ZmZmOTQzY2JmN2UgaW4gcGFf
bWFpbmxvb3BfaXRlcmF0ZSAoKSBmcm9tIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGlicHVs
c2Uuc28uMAojNCAgMHgwMDAwN2ZmZjk0M2NjMDMwIGluIHBhX21haW5sb29wX3J1biAoKSBmcm9t
IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGlicHVsc2Uuc28uMAojNSAgMHgwMDAwN2ZmZjk0
M2RhM2Y2IGluID8/ICgpIGZyb20gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJwdWxzZS5z
by4wCiM2ICAweDAwMDA3ZmZmNzU1OTg2MjggaW4gPz8gKCkgZnJvbSAvdXNyL2xpYi94ODZfNjQt
bGludXgtZ251L3B1bHNlYXVkaW8vbGlicHVsc2Vjb21tb24tNC4wLnNvCiM3ICAweDAwMDA3ZmZm
ZWQ2ZDkwYTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmNjdmZmY3MDApIGF0IHB0aHJlYWRf
Y3JlYXRlLmM6MzA5CiM4ICAweDAwMDA3ZmZmZWQ0MDZjZmQgaW4gY2xvbmUgKCkgYXQgLi4vc3lz
ZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTExCgpUaHJlYWQgMTEgKFRocmVh
ZCAweDdmZmY5NGZmZjcwMCAoTFdQIDU2NTQpKToKIzAgIDB4MDAwMDdmZmZlZDNmYzg0ZCBpbiBw
b2xsICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4MDAw
MDdmZmZlZTFhNTEwYyBpbiBnX21haW5fY29udGV4dF9wb2xsIChwcmlvcml0eT0yMTQ3NDgzNjQ3
LCBuX2Zkcz0yLCBmZHM9MHg3ZmZmNmMwMDEwZTAsIHRpbWVvdXQ9LTEsIGNvbnRleHQ9MHgyNWRh
ZjcwKSBhdCBnbWFpbi5jOjQxMDMKIzIgIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9
MHgyNWRhZjcwLCBibG9jaz1ibG9ja0BlbnRyeT0xLCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0x
LCBzZWxmPTxvcHRpbWl6ZWQgb3V0PikgYXQgZ21haW4uYzozODAzCiMzICAweDAwMDA3ZmZmZWUx
YTU0OTIgaW4gZ19tYWluX2xvb3BfcnVuIChsb29wPTB4ODU4OTgwKSBhdCBnbWFpbi5jOjQwMDIK
IzQgIDB4MDAwMDdmZmZmMmQ2MzZlNSBpbiBvcGVyYXRvcigpICgpIGF0IC9vcHQvZ25vbWUtb3Mv
dGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9n
bGliL1dvcmtRdWV1ZUdMaWIuY3BwOjYxCiM1ICAweDAwMDA3ZmZmZjJkNjQyODggaW4gX01faW52
b2tlICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjAzOQojNiAgMHgwMDAw
N2ZmZmYyODEzMDZjIGluIG9wZXJhdG9yKCkgKCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVu
Y3Rpb25hbDoyNDM5CiM3ICAweDAwMDA3ZmZmZjJkMjZhMDcgaW4gdGhyZWFkRW50cnlQb2ludCAo
KSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEw
LjQvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcDo1OAojOCAgMHgwMDAwN2ZmZmYyZDVkOWU2
IGluIHd0ZlRocmVhZEVudHJ5UG9pbnQgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFu
eS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJl
YWRzLmNwcDoxNjcKIzkgIDB4MDAwMDdmZmZlZDZkOTBhNSBpbiBzdGFydF90aHJlYWQgKGFyZz0w
eDdmZmY5NGZmZjcwMCkgYXQgcHRocmVhZF9jcmVhdGUuYzozMDkKIzEwIDB4MDAwMDdmZmZlZDQw
NmNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xv
bmUuUzoxMTEKClRocmVhZCAxMCAoVGhyZWFkIDB4N2ZmZjk1YzA3NzAwIChMV1AgNTY0OSkpOgoj
MCAgMHgwMDAwN2ZmZmVkM2ZjODRkIGluIHBvbGwgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2Nh
bGwtdGVtcGxhdGUuUzo4MQojMSAgMHgwMDAwN2ZmZmVlMWE1MTBjIGluIGdfbWFpbl9jb250ZXh0
X3BvbGwgKHByaW9yaXR5PTIxNDc0ODM2NDcsIG5fZmRzPTEsIGZkcz0weDdmZmY2ODAwMTBlMCwg
dGltZW91dD0tMSwgY29udGV4dD0weDI1NTlhODApIGF0IGdtYWluLmM6NDEwMwojMiAgZ19tYWlu
X2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD0weDI1NTlhODAsIGJsb2NrPWJsb2NrQGVudHJ5PTEs
IGRpc3BhdGNoPWRpc3BhdGNoQGVudHJ5PTEsIHNlbGY9PG9wdGltaXplZCBvdXQ+KSBhdCBnbWFp
bi5jOjM4MDMKIzMgIDB4MDAwMDdmZmZlZTFhNTQ5MiBpbiBnX21haW5fbG9vcF9ydW4gKGxvb3A9
MHgyNTU5YmMwKSBhdCBnbWFpbi5jOjQwMDIKIzQgIDB4MDAwMDdmZmZmMmQ2MzZlNSBpbiBvcGVy
YXRvcigpICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0
Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtRdWV1ZUdMaWIuY3BwOjYxCiM1ICAw
eDAwMDA3ZmZmZjJkNjQyODggaW4gX01faW52b2tlICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45
L2Z1bmN0aW9uYWw6MjAzOQojNiAgMHgwMDAwN2ZmZmYyODEzMDZjIGluIG9wZXJhdG9yKCkgKCkg
YXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyNDM5CiM3ICAweDAwMDA3ZmZmZjJk
MjZhMDcgaW4gdGhyZWFkRW50cnlQb2ludCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBo
YW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNw
cDo1OAojOCAgMHgwMDAwN2ZmZmYyZDVkOWU2IGluIHd0ZlRocmVhZEVudHJ5UG9pbnQgKCkgYXQg
L29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1Nv
dXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoxNjcKIzkgIDB4MDAwMDdmZmZlZDZk
OTBhNSBpbiBzdGFydF90aHJlYWQgKGFyZz0weDdmZmY5NWMwNzcwMCkgYXQgcHRocmVhZF9jcmVh
dGUuYzozMDkKIzEwIDB4MDAwMDdmZmZlZDQwNmNmZCBpbiBjbG9uZSAoKSBhdCAuLi9zeXNkZXBz
L3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMTEKClRocmVhZCA5IChUaHJlYWQgMHg3
ZmZmOTY0MDg3MDAgKExXUCA1NjQ3KSk6CiMwICAweDAwMDA3ZmZmZWQzZmM4NGQgaW4gcG9sbCAo
KSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCiMxICAweDAwMDA3ZmZm
ZWUxYTUxMGMgaW4gZ19tYWluX2NvbnRleHRfcG9sbCAocHJpb3JpdHk9MjE0NzQ4MzY0Nywgbl9m
ZHM9MSwgZmRzPTB4N2ZmZjcwMDAxMGUwLCB0aW1lb3V0PS0xLCBjb250ZXh0PTB4MjU1OTY2MCkg
YXQgZ21haW4uYzo0MTAzCiMyICBnX21haW5fY29udGV4dF9pdGVyYXRlIChjb250ZXh0PTB4MjU1
OTY2MCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hAZW50cnk9MSwgc2Vs
Zj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzgwMwojMyAgMHgwMDAwN2ZmZmVlMWE1NDky
IGluIGdfbWFpbl9sb29wX3J1biAobG9vcD0weDI1NTQwOTApIGF0IGdtYWluLmM6NDAwMgojNCAg
MHgwMDAwN2ZmZmYyZDYzNmU1IGluIG9wZXJhdG9yKCkgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50
eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XVEYvd3RmL2dsaWIv
V29ya1F1ZXVlR0xpYi5jcHA6NjEKIzUgIDB4MDAwMDdmZmZmMmQ2NDI4OCBpbiBfTV9pbnZva2Ug
KCkgYXQgL3Vzci9pbmNsdWRlL2MrKy80LjkvZnVuY3Rpb25hbDoyMDM5CiM2ICAweDAwMDA3ZmZm
ZjI4MTMwNmMgaW4gb3BlcmF0b3IoKSAoKSBhdCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlv
bmFsOjI0MzkKIzcgIDB4MDAwMDdmZmZmMmQyNmEwNyBpbiB0aHJlYWRFbnRyeVBvaW50ICgpIGF0
IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9T
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwOjU4CiM4ICAweDAwMDA3ZmZmZjJkNWQ5ZTYgaW4g
d3RmVGhyZWFkRW50cnlQb2ludCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2No
ZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMu
Y3BwOjE2NwojOSAgMHgwMDAwN2ZmZmVkNmQ5MGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2Zm
Zjk2NDA4NzAwKSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMwOQojMTAgMHgwMDAwN2ZmZmVkNDA2Y2Zk
IGluIGNsb25lICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5T
OjExMQoKVGhyZWFkIDggKFRocmVhZCAweDdmZmY5N2ZmZDcwMCAoTFdQIDU2NDMpKToKIzAgIDB4
MDAwMDdmZmZlZDNmYzg0ZCBpbiBwb2xsICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNjYWxsLXRl
bXBsYXRlLlM6ODEKIzEgIDB4MDAwMDdmZmZlZTFhNTEwYyBpbiBnX21haW5fY29udGV4dF9wb2xs
IChwcmlvcml0eT0yMTQ3NDgzNjQ3LCBuX2Zkcz0xLCBmZHM9MHg3ZmZmODQwMDEwYzAsIHRpbWVv
dXQ9LTEsIGNvbnRleHQ9MHhhMWExMjApIGF0IGdtYWluLmM6NDEwMwojMiAgZ19tYWluX2NvbnRl
eHRfaXRlcmF0ZSAoY29udGV4dD1jb250ZXh0QGVudHJ5PTB4YTFhMTIwLCBibG9jaz1ibG9ja0Bl
bnRyeT0xLCBkaXNwYXRjaD1kaXNwYXRjaEBlbnRyeT0xLCBzZWxmPTxvcHRpbWl6ZWQgb3V0Pikg
YXQgZ21haW4uYzozODAzCiMzICAweDAwMDA3ZmZmZWUxYTUyMWMgaW4gZ19tYWluX2NvbnRleHRf
aXRlcmF0aW9uIChjb250ZXh0PWNvbnRleHRAZW50cnk9MHhhMWExMjAsIG1heV9ibG9jaz1tYXlf
YmxvY2tAZW50cnk9MSkgYXQgZ21haW4uYzozODY5CiM0ICAweDAwMDA3ZmZmZGY2NDQ0ZmQgaW4g
ZGNvbmZfZ2RidXNfd29ya2VyX3RocmVhZCAodXNlcl9kYXRhPTB4YTFhMTIwKSBhdCBkY29uZi1n
ZGJ1cy10aHJlYWQuYzo4MQojNSAgMHgwMDAwN2ZmZmVlMWNiYmE1IGluIGdfdGhyZWFkX3Byb3h5
IChkYXRhPTB4NzZjZTgwKSBhdCBndGhyZWFkLmM6NzY0CiM2ICAweDAwMDA3ZmZmZWQ2ZDkwYTUg
aW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmOTdmZmQ3MDApIGF0IHB0aHJlYWRfY3JlYXRlLmM6
MzA5CiM3ICAweDAwMDA3ZmZmZWQ0MDZjZmQgaW4gY2xvbmUgKCkgYXQgLi4vc3lzZGVwcy91bml4
L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTExCgpUaHJlYWQgNyAoVGhyZWFkIDB4N2ZmZmRj
ZTM4NzAwIChMV1AgNTY0MSkpOgojMCAgc3lzY2FsbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lz
di9saW51eC94ODZfNjQvc3lzY2FsbC5TOjM4CiMxICAweDAwMDA3ZmZmZWUxZTk3MmYgaW4gZ19j
b25kX3dhaXQgKGNvbmQ9Y29uZEBlbnRyeT0weDdkMGVhOCwgbXV0ZXg9bXV0ZXhAZW50cnk9MHg3
ZDBlYTApIGF0IGd0aHJlYWQtcG9zaXguYzoxMzk1CiMyICAweDAwMDA3ZmZmZWUxNzlkNWIgaW4g
Z19hc3luY19xdWV1ZV9wb3BfaW50ZXJuX3VubG9ja2VkIChxdWV1ZT1xdWV1ZUBlbnRyeT0weDdk
MGVhMCwgd2FpdD13YWl0QGVudHJ5PTEsIGVuZF90aW1lPWVuZF90aW1lQGVudHJ5PS0xKSBhdCBn
YXN5bmNxdWV1ZS5jOjQxOQojMyAgMHgwMDAwN2ZmZmVlMTdhMWM3IGluIGdfYXN5bmNfcXVldWVf
cG9wIChxdWV1ZT0weDdkMGVhMCkgYXQgZ2FzeW5jcXVldWUuYzo0NTMKIzQgIDB4MDAwMDAwMDAw
MDQ5MGQwMyBpbiBydW5faGlzdG9yeV9zZXJ2aWNlX3RocmVhZCAoc2VsZj0weDg2YTk3MCkgYXQg
ZXBoeS1oaXN0b3J5LXNlcnZpY2UuYzo1MjIKIzUgIDB4MDAwMDdmZmZlZTFjYmJhNSBpbiBnX3Ro
cmVhZF9wcm94eSAoZGF0YT0weDg2YTk5MCkgYXQgZ3RocmVhZC5jOjc2NAojNiAgMHgwMDAwN2Zm
ZmVkNmQ5MGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZmRjZTM4NzAwKSBhdCBwdGhyZWFk
X2NyZWF0ZS5jOjMwOQojNyAgMHgwMDAwN2ZmZmVkNDA2Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5
c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDQgKFRocmVh
ZCAweDdmZmZkZTYzYjcwMCAoTFdQIDU2MzYpKToKIzAgIDB4MDAwMDdmZmZlZDNmYzg0ZCBpbiBw
b2xsICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4MDAw
MDdmZmZlZTFhNTEwYyBpbiBnX21haW5fY29udGV4dF9wb2xsIChwcmlvcml0eT0yMTQ3NDgzNjQ3
LCBuX2Zkcz0xLCBmZHM9MHg3ZmZmODgwMDEwZTAsIHRpbWVvdXQ9LTEsIGNvbnRleHQ9MHg4MWIx
ZjApIGF0IGdtYWluLmM6NDEwMwojMiAgZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD0w
eDgxYjFmMCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hAZW50cnk9MSwg
c2VsZj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzgwMwojMyAgMHgwMDAwN2ZmZmVlMWE1
NDkyIGluIGdfbWFpbl9sb29wX3J1biAobG9vcD0weDgxYjJiMCkgYXQgZ21haW4uYzo0MDAyCiM0
ICAweDAwMDA3ZmZmZjJkNjM2ZTUgaW4gb3BlcmF0b3IoKSAoKSBhdCAvb3B0L2dub21lLW9zL3Rh
bnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvZ2xp
Yi9Xb3JrUXVldWVHTGliLmNwcDo2MQojNSAgMHgwMDAwN2ZmZmYyZDY0Mjg4IGluIF9NX2ludm9r
ZSAoKSBhdCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjIwMzkKIzYgIDB4MDAwMDdm
ZmZmMjgxMzA2YyBpbiBvcGVyYXRvcigpICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0
aW9uYWw6MjQzOQojNyAgMHgwMDAwN2ZmZmYyZDI2YTA3IGluIHRocmVhZEVudHJ5UG9pbnQgKCkg
YXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40
L1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHA6NTgKIzggIDB4MDAwMDdmZmZmMmQ1ZDllNiBp
biB3dGZUaHJlYWRFbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkv
Y2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFk
cy5jcHA6MTY3CiM5ICAweDAwMDA3ZmZmZWQ2ZDkwYTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3
ZmZmZGU2M2I3MDApIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzA5CiMxMCAweDAwMDA3ZmZmZWQ0MDZj
ZmQgaW4gY2xvbmUgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25l
LlM6MTExCgpUaHJlYWQgMyAoVGhyZWFkIDB4N2ZmZmRlZTNjNzAwIChMV1AgNTYzNSkpOgojMCAg
cHRocmVhZF9jb25kX3dhaXRAQEdMSUJDXzIuMy4yICgpIGF0IC4uL25wdGwvc3lzZGVwcy91bml4
L3N5c3YvbGludXgveDg2XzY0L3B0aHJlYWRfY29uZF93YWl0LlM6MTg1CiMxICAweDAwMDA3ZmZm
ZThkMWNjYWMgaW4gc3RkOjpjb25kaXRpb25fdmFyaWFibGU6OndhaXQoc3RkOjp1bmlxdWVfbG9j
azxzdGQ6Om11dGV4PiYpICgpIGZyb20gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJzdGRj
Kysuc28uNgojMiAgMHgwMDAwN2ZmZmYyZDIwMWFmIGluIHBhcmtDb25kaXRpb25hbGx5ICgpIGF0
IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9T
b3VyY2UvV1RGL3d0Zi9QYXJraW5nTG90LmNwcDo1NDcKIzMgIDB4MDAwMDdmZmZmM2U4ZDcyOSBp
biB3YWl0VW50aWw8V1RGOjpMb2NrPiAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55
L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvQ29uZGl0aW9uLmg6NzQK
IzQgIDB4MDAwMDdmZmZmM2U4ZDQ2ZiBpbiB3YWl0PFdURjo6TG9jaz4gKCkgYXQgL29wdC9nbm9t
ZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XVEYv
d3RmL0NvbmRpdGlvbi5oOjExMwojNSAgMHgwMDAwN2ZmZmY0N2RmNDYwIGluIHN5bmNUaHJlYWRN
YWluTG9vcCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtp
dGd0ay0yLjEwLjQvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDox
NDMzCiM2ICAweDAwMDA3ZmZmZjQ3ZGQ3NDkgaW4gaWNvbkRhdGFiYXNlU3luY1RocmVhZCAoKSBh
dCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoxMDM1CiM3ICAweDAw
MDA3ZmZmZjQ3ZGQ1ODAgaW4gaWNvbkRhdGFiYXNlU3luY1RocmVhZFN0YXJ0ICgpIGF0IC9vcHQv
Z25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwOjk1NgojOCAgMHgwMDAwN2ZmZmYy
ZDI2YjE2IGluIG9wZXJhdG9yKCkgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9j
aGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHA6ODEK
IzkgIDB4MDAwMDdmZmZmMmQyNmNjZCBpbiBfTV9pbnZva2UgKCkgYXQgL3Vzci9pbmNsdWRlL2Mr
Ky80LjkvZnVuY3Rpb25hbDoyMDM5CiMxMCAweDAwMDA3ZmZmZjI4MTMwNmMgaW4gb3BlcmF0b3Io
KSAoKSBhdCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjI0MzkKIzExIDB4MDAwMDdm
ZmZmMmQyNmEwNyBpbiB0aHJlYWRFbnRyeVBvaW50ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkv
ZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRp
bmcuY3BwOjU4CiMxMiAweDAwMDA3ZmZmZjJkNWQ5ZTYgaW4gd3RmVGhyZWFkRW50cnlQb2ludCAo
KSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEw
LjQvU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwOjE2NwojMTMgMHgwMDAwN2Zm
ZmVkNmQ5MGE1IGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZmRlZTNjNzAwKSBhdCBwdGhyZWFk
X2NyZWF0ZS5jOjMwOQojMTQgMHgwMDAwN2ZmZmVkNDA2Y2ZkIGluIGNsb25lICgpIGF0IC4uL3N5
c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjExMQoKVGhyZWFkIDIgKFRocmVh
ZCAweDdmZmZkZjYzZDcwMCAoTFdQIDU2MDkpKToKIzAgIDB4MDAwMDdmZmZlZDNmYzg0ZCBpbiBw
b2xsICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNjYWxsLXRlbXBsYXRlLlM6ODEKIzEgIDB4MDAw
MDdmZmZlZTFhNTEwYyBpbiBnX21haW5fY29udGV4dF9wb2xsIChwcmlvcml0eT0yMTQ3NDgzNjQ3
LCBuX2Zkcz0yLCBmZHM9MHg3ZmZmZDgwMDEwZTAsIHRpbWVvdXQ9LTEsIGNvbnRleHQ9MHg3NmY1
YTApIGF0IGdtYWluLmM6NDEwMwojMiAgZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD0w
eDc2ZjVhMCwgYmxvY2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hAZW50cnk9MSwg
c2VsZj08b3B0aW1pemVkIG91dD4pIGF0IGdtYWluLmM6MzgwMwojMyAgMHgwMDAwN2ZmZmVlMWE1
NDkyIGluIGdfbWFpbl9sb29wX3J1biAobG9vcD0weDc2ZjUzMCkgYXQgZ21haW4uYzo0MDAyCiM0
ICAweDAwMDA3ZmZmZWU3YzRhNzYgaW4gZ2RidXNfc2hhcmVkX3RocmVhZF9mdW5jICh1c2VyX2Rh
dGE9MHg3NmY1NzApIGF0IGdkYnVzcHJpdmF0ZS5jOjI3NAojNSAgMHgwMDAwN2ZmZmVlMWNiYmE1
IGluIGdfdGhyZWFkX3Byb3h5IChkYXRhPTB4NzE4Y2EwKSBhdCBndGhyZWFkLmM6NzY0CiM2ICAw
eDAwMDA3ZmZmZWQ2ZDkwYTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmZGY2M2Q3MDApIGF0
IHB0aHJlYWRfY3JlYXRlLmM6MzA5CiM3ICAweDAwMDA3ZmZmZWQ0MDZjZmQgaW4gY2xvbmUgKCkg
YXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTExCgpUaHJlYWQg
MSAoVGhyZWFkIDB4N2ZmZmY3ZjhiYTAwIChMV1AgNTQzMikpOgojMCAgMHgwMDAwN2ZmZmYzOTMy
MzFlIGluIGdldCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dl
YmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvZ2xpYi9HUmVmUHRyLmg6MTA1CiMxICAweDAw
MDA3ZmZmZjNjOWVmMDYgaW4gY2VydGlmaWNhdGUgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9l
cGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm8uaDo0NwojMiAgMHgwMDAwN2ZmZmYzZDBhNTVk
IGluIHdlYmtpdF93ZWJfdmlld19nZXRfdGxzX2luZm8gKCkgYXQgL29wdC9nbm9tZS1vcy90YW50
eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwOjM0NjgKIzMgIDB4MDAwMDAwMDAwMDQ3YzFi
NSBpbiBsb2FkX2NoYW5nZWRfY2IgKHdlYl92aWV3PTB4MmU1ZjVlMCwgbG9hZF9ldmVudD1XRUJL
SVRfTE9BRF9DT01NSVRURUQsIHVzZXJfZGF0YT0weDApIGF0IGVwaHktd2ViLXZpZXcuYzoxNjQ3
CiM0ICAweDAwMDA3ZmZmZWU0YTNlYzUgaW4gZ19jbG9zdXJlX2ludm9rZSAoY2xvc3VyZT0weDJl
NjM0ZTAsIHJldHVybl92YWx1ZT0weDAsIG5fcGFyYW1fdmFsdWVzPTIsIHBhcmFtX3ZhbHVlcz0w
eDdmZmZmZmZmYjY3MCwgaW52b2NhdGlvbl9oaW50PTB4N2ZmZmZmZmZiNjEwKSBhdCBnY2xvc3Vy
ZS5jOjc2OAojNSAgMHgwMDAwN2ZmZmVlNGI1YjdjIGluIHNpZ25hbF9lbWl0X3VubG9ja2VkX1Ig
KG5vZGU9bm9kZUBlbnRyeT0weDI0OTNmMDAsIGRldGFpbD1kZXRhaWxAZW50cnk9MCwgaW5zdGFu
Y2U9aW5zdGFuY2VAZW50cnk9MHgyZTVmNWUwLCBlbWlzc2lvbl9yZXR1cm49ZW1pc3Npb25fcmV0
dXJuQGVudHJ5PTB4MCwgaW5zdGFuY2VfYW5kX3BhcmFtcz1pbnN0YW5jZV9hbmRfcGFyYW1zQGVu
dHJ5PTB4N2ZmZmZmZmZiNjcwKSBhdCBnc2lnbmFsLmM6MzU0OQojNiAgMHgwMDAwN2ZmZmVlNGJl
MWQ4IGluIGdfc2lnbmFsX2VtaXRfdmFsaXN0IChpbnN0YW5jZT08b3B0aW1pemVkIG91dD4sIHNp
Z25hbF9pZD08b3B0aW1pemVkIG91dD4sIGRldGFpbD08b3B0aW1pemVkIG91dD4sIHZhcl9hcmdz
PXZhcl9hcmdzQGVudHJ5PTB4N2ZmZmZmZmZiODAwKSBhdCBnc2lnbmFsLmM6MzMwNQojNyAgMHgw
MDAwN2ZmZmVlNGJlNDNmIGluIGdfc2lnbmFsX2VtaXQgKGluc3RhbmNlPTxvcHRpbWl6ZWQgb3V0
Piwgc2lnbmFsX2lkPTxvcHRpbWl6ZWQgb3V0PiwgZGV0YWlsPTxvcHRpbWl6ZWQgb3V0PikgYXQg
Z3NpZ25hbC5jOjMzNjEKIzggIDB4MDAwMDdmZmZmM2QwNDVkNiBpbiB3ZWJraXRXZWJWaWV3RW1p
dExvYWRDaGFuZ2VkICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQv
d2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRX
ZWJWaWV3LmNwcDoxNzgzCiM5ICAweDAwMDA3ZmZmZjNkMDQ2NzAgaW4gd2Via2l0V2ViVmlld0Vt
aXREZWxheWVkTG9hZEV2ZW50cyAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2No
ZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsv
V2ViS2l0V2ViVmlldy5jcHA6MTgwMwojMTAgMHgwMDAwN2ZmZmYzZDA0NmM4IGluIHdlYmtpdFdl
YlZpZXdMb2FkQ2hhbmdlZCAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNr
b3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2Vi
S2l0V2ViVmlldy5jcHA6MTgxMgojMTEgMHgwMDAwN2ZmZmYzY2Q5MmU4IGluIGRpZFN0YXJ0UHJv
dmlzaW9uYWxMb2FkRm9yRnJhbWUgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9j
aGVja291dC93ZWJraXRndGstMi4xMC40L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdExvYWRlckNsaWVudC5jcHA6NDgKIzEyIDB4MDAwMDdmZmZmMzllMDFlNiBpbiBkaWRT
dGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBp
cGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmNwcDoyODc0CiMxMyAweDAwMDA3ZmZmZjNkYzU1YzcgaW4gY2FsbE1lbWJl
ckZ1bmN0aW9uSW1wbDxXZWJLaXQ6OldlYlBhZ2VQcm94eSwgdm9pZCAoV2ViS2l0OjpXZWJQYWdl
UHJveHk6OiopKHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcsIFdURjo6U3RyaW5nIGNvbnN0
JiwgV1RGOjpTdHJpbmcgY29uc3QmLCBXZWJLaXQ6OlVzZXJEYXRhIGNvbnN0JiksIHN0ZDo6dHVw
bGU8dW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgV1RGOjpTdHJpbmcsIFdURjo6U3RyaW5n
LCBXZWJLaXQ6OlVzZXJEYXRhPiwgMHVsLCAxdWwsIDJ1bCwgM3VsLCA0dWw+ICgpIGF0IC9vcHQv
Z25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2Uv
V2ViS2l0Mi9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVzc2FnZS5oOjE2CiMxNCAweDAwMDA3ZmZmZjNk
YmVlNzkgaW4gY2FsbE1lbWJlckZ1bmN0aW9uPFdlYktpdDo6V2ViUGFnZVByb3h5LCB2b2lkIChX
ZWJLaXQ6OldlYlBhZ2VQcm94eTo6KikodW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgV1RG
OjpTdHJpbmcgY29uc3QmLCBXVEY6OlN0cmluZyBjb25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29u
c3QmKSwgc3RkOjp0dXBsZTx1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCBXVEY6OlN0cmlu
ZywgV1RGOjpTdHJpbmcsIFdlYktpdDo6VXNlckRhdGE+LCBzdGQ6Om1ha2VfaW5kZXhfc2VxdWVu
Y2U8NXVsPiA+ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Vi
a2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVzc2FnZS5o
OjIyCiMxNSAweDAwMDA3ZmZmZjNkYjQzNTcgaW4gaGFuZGxlTWVzc2FnZTxNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpEaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lLCBXZWJLaXQ6OldlYlBh
Z2VQcm94eSwgdm9pZCAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OiopKHVuc2lnbmVkIGxvbmcsIHVu
c2lnbmVkIGxvbmcsIFdURjo6U3RyaW5nIGNvbnN0JiwgV1RGOjpTdHJpbmcgY29uc3QmLCBXZWJL
aXQ6OlVzZXJEYXRhIGNvbnN0Jik+ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkv
Y2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvSGFu
ZGxlTWVzc2FnZS5oOjkyCiMxNiAweDAwMDA3ZmZmZjNkYWQ0YzYgaW4gZGlkUmVjZWl2ZU1lc3Nh
Z2UgKCkgYXQgL29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGst
Mi4xMC40L0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvV2ViUGFnZVByb3h5TWVzc2FnZVJlY2VpdmVy
LmNwcDo0NTQKIzE3IDB4MDAwMDdmZmZmMzhlZWNiNCBpbiBkaXNwYXRjaE1lc3NhZ2UgKCkgYXQg
L29wdC9nbm9tZS1vcy90YW50eS9lcGlwaGFueS9jaGVja291dC93ZWJraXRndGstMi4xMC40L1Nv
dXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9NZXNzYWdlUmVjZWl2ZXJNYXAuY3BwOjEwMgojMTgg
MHgwMDAwN2ZmZmYzOTA3MmY1IGluIGRpc3BhdGNoTWVzc2FnZSAoKSBhdCAvb3B0L2dub21lLW9z
L3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYktpdDIv
U2hhcmVkL0NoaWxkUHJvY2Vzc1Byb3h5LmNwcDoxMzAKIzE5IDB4MDAwMDdmZmZmM2E0YjI3YSBp
biBkaWRSZWNlaXZlTWVzc2FnZSAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2No
ZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQcm94eS5jcHA6NDc4CiMyMCAweDAwMDA3ZmZmZjM4ZTA1MTggaW4gZGlzcGF0Y2hNZXNzYWdl
ICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIu
MTAuNC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHA6ODgwCiMyMSAw
eDAwMDA3ZmZmZjM4ZTA1ZTQgaW4gZGlzcGF0Y2hNZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3Mv
dGFudHkvZXBpcGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9Q
bGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHA6OTAzCiMyMiAweDAwMDA3ZmZmZjM4ZTA3YWUgaW4g
ZGlzcGF0Y2hPbmVNZXNzYWdlICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hl
Y2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvQ29ubmVj
dGlvbi5jcHA6OTMxCiMyMyAweDAwMDA3ZmZmZjM4ZTAyMjYgaW4gb3BlcmF0b3IoKSAoKSBhdCAv
b3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291
cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwOjg3NAojMjQgMHgwMDAwN2Zm
ZmYzOGUxYTQwIGluIF9NX2ludm9rZSAoKSBhdCAvdXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlv
bmFsOjIwMzkKIzI1IDB4MDAwMDdmZmZmMzg2OGFmZSBpbiBvcGVyYXRvcigpICgpIGF0IC91c3Iv
aW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjQzOQojMjYgMHgwMDAwN2ZmZmY1NzJmN2M4IGlu
IHBlcmZvcm1Xb3JrICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBpcGhhbnkvY2hlY2tvdXQv
d2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmNwcDoxMjEKIzI3IDB4MDAw
MDdmZmZmNTczMzU1NCBpbiBvcGVyYXRvcigpICgpIGF0IC9vcHQvZ25vbWUtb3MvdGFudHkvZXBp
cGhhbnkvY2hlY2tvdXQvd2Via2l0Z3RrLTIuMTAuNC9Tb3VyY2UvV1RGL3d0Zi9nbGliL1J1bkxv
b3BHTGliLmNwcDo5NgojMjggMHgwMDAwN2ZmZmY1NzMzYzI5IGluIF9NX2ludm9rZSAoKSBhdCAv
dXNyL2luY2x1ZGUvYysrLzQuOS9mdW5jdGlvbmFsOjIwMzkKIzI5IDB4MDAwMDdmZmZmMjgxMzA2
YyBpbiBvcGVyYXRvcigpICgpIGF0IC91c3IvaW5jbHVkZS9jKysvNC45L2Z1bmN0aW9uYWw6MjQz
OQojMzAgMHgwMDAwN2ZmZmYyZDYxZGIwIGluIHZvaWRDYWxsYmFjayAoKSBhdCAvb3B0L2dub21l
LW9zL3RhbnR5L2VwaXBoYW55L2NoZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93
dGYvZ2xpYi9HTWFpbkxvb3BTb3VyY2UuY3BwOjM2NQojMzEgMHgwMDAwN2ZmZmYyZDYyMzFkIGlu
IHZvaWRTb3VyY2VDYWxsYmFjayAoKSBhdCAvb3B0L2dub21lLW9zL3RhbnR5L2VwaXBoYW55L2No
ZWNrb3V0L3dlYmtpdGd0ay0yLjEwLjQvU291cmNlL1dURi93dGYvZ2xpYi9HTWFpbkxvb3BTb3Vy
Y2UuY3BwOjQ1NgojMzIgMHgwMDAwN2ZmZmVlMWE0ZDlkIGluIGdfbWFpbl9kaXNwYXRjaCAoY29u
dGV4dD0weDcyNGYwMCkgYXQgZ21haW4uYzozMTIyCiMzMyBnX21haW5fY29udGV4dF9kaXNwYXRj
aCAoY29udGV4dD1jb250ZXh0QGVudHJ5PTB4NzI0ZjAwKSBhdCBnbWFpbi5jOjM3MzcKIzM0IDB4
MDAwMDdmZmZlZTFhNTE3MCBpbiBnX21haW5fY29udGV4dF9pdGVyYXRlIChjb250ZXh0PWNvbnRl
eHRAZW50cnk9MHg3MjRmMDAsIGJsb2NrPWJsb2NrQGVudHJ5PTEsIGRpc3BhdGNoPWRpc3BhdGNo
QGVudHJ5PTEsIHNlbGY9PG9wdGltaXplZCBvdXQ+KSBhdCBnbWFpbi5jOjM4MDgKIzM1IDB4MDAw
MDdmZmZlZTFhNTIxYyBpbiBnX21haW5fY29udGV4dF9pdGVyYXRpb24gKGNvbnRleHQ9MHg3MjRm
MDAsIGNvbnRleHRAZW50cnk9MHgwLCBtYXlfYmxvY2s9bWF5X2Jsb2NrQGVudHJ5PTEpIGF0IGdt
YWluLmM6Mzg2OQojMzYgMHgwMDAwN2ZmZmVlNzhlNjdjIGluIGdfYXBwbGljYXRpb25fcnVuIChh
cHBsaWNhdGlvbj0weDdjYTFkMCwgYXJnYz08b3B0aW1pemVkIG91dD4sIGFyZ3Y9MHg3ZmZmZmZm
ZmNjMjgpIGF0IGdhcHBsaWNhdGlvbi5jOjIzMDgKIzM3IDB4MDAwMDAwMDAwMDQyZjIxOSBpbiBt
YWluIChhcmdjPTEsIGFyZ3Y9MHg3ZmZmZmZmZmNjMjgpIGF0IGVwaHktbWFpbi5jOjQ4NAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>