<?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>146805</bug_id>
          
          <creation_ts>2015-07-09 13:46:49 -0700</creation_ts>
          <short_desc>[GTK] Crash when spell checker returns no guesses</short_desc>
          <delta_ts>2015-07-11 20:48:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>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=1234629</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=146885</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>berto</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1108329</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-07-09 13:46:49 -0700</bug_when>
    <thetext>Type into a text form:

WebKitWebView

Then type a space or enter, so that the spellchecker underlines WebKitWebView with the red squiggly line. Right click on it. The browser will crash. It seems to crash for any word when there are no spelling suggestions.

Truncated backtrace:
Thread no. 1 (10 frames)
 #0 size at /usr/src/debug/webkitgtk-2.8.3/Source/WTF/wtf/Vector.h:651
 #2 WebKit::WebTextCheckerClient::guessesForWord at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/UIProcess/WebTextCheckerClient.cpp:160
 #3 WebKit::TextChecker::getGuessesForWord at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/UIProcess/gtk/TextCheckerGtk.cpp:128
 #4 WebKit::WebPageProxy::getGuessesForWord at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/UIProcess/WebPageProxy.cpp:4255
 #5 callMemberFunctionImpl&lt;WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(WTF::String const&amp;, WTF::String const&amp;, WTF::Vector&lt;WTF::String&gt;&amp;), std::tuple&lt;WTF::String, WTF::String&gt;, 0ul, 1ul, std::tuple&lt;WTF::Vector&lt;WTF::String, 0ul, WTF::CrashOnOverflow&gt; &gt;, 0ul&gt; at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/Platform/IPC/HandleMessage.h:30
 #6 callMemberFunction&lt;WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(WTF::String const&amp;, WTF::String const&amp;, WTF::Vector&lt;WTF::String&gt;&amp;), std::tuple&lt;WTF::String, WTF::String&gt;, std::make_index_sequence&lt;2ul&gt;, std::tuple&lt;WTF::Vector&lt;WTF::String, 0ul, WTF::CrashOnOverflow&gt; &gt;, std::make_index_sequence&lt;1ul&gt; &gt; at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/Platform/IPC/HandleMessage.h:36
 #7 handleMessage&lt;Messages::WebPageProxy::GetGuessesForWord, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(WTF::String const&amp;, WTF::String const&amp;, WTF::Vector&lt;WTF::String&gt;&amp;)&gt; at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/Platform/IPC/HandleMessage.h:105
 #8 WebKit::WebPageProxy::didReceiveSyncMessage at /usr/src/debug/webkitgtk-2.8.3/x86_64-redhat-linux-gnu/DerivedSources/WebKit2/WebPageProxyMessageReceiver.cpp:1283
 #9 IPC::MessageReceiverMap::dispatchSyncMessage at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/Platform/IPC/MessageReceiverMap.cpp:104
 #10 WebKit::ChildProcessProxy::dispatchSyncMessage at /usr/src/debug/webkitgtk-2.8.3/Source/WebKit2/Shared/ChildProcessProxy.cpp:129

Full backtrace downstream. The backtrace in trunk is different but the crash still occurs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108332</commentid>
    <comment_count>1</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-07-09 13:49:48 -0700</bug_when>
    <thetext>Can you confirm this with a recent build? I do not think that WebKitGTK+ uses WebTextCheckerClient.cpp any longer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108362</commentid>
    <comment_count>2</comment_count>
      <attachid>256517</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-07-09 14:12:29 -0700</bug_when>
    <thetext>Created attachment 256517
Backtrace on master (r186333)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108382</commentid>
    <comment_count>3</comment_count>
      <attachid>256522</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-07-09 14:41:17 -0700</bug_when>
    <thetext>Created attachment 256522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108386</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-09 14:43:43 -0700</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>1108387</commentid>
    <comment_count>5</comment_count>
      <attachid>256522</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-07-09 14:50:46 -0700</bug_when>
    <thetext>Comment on attachment 256522
Patch

Is it possible to remove the default case here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108396</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-07-09 14:58:27 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 256522 [details]
&gt; Patch
&gt; 
&gt; Is it possible to remove the default case here?

The WebCore enumeration has about 50 more elements than the WebKitGTK+ enumeration, so to remove the default case, we would have to list those 50 elements above the ASSERT_NOT_REACHED() (to avoid compiler warnings from -Wswitch). So I prefer to keep the default case for this switch; it&apos;s really not worth the pain of having to update it whenever a new item is added to the WebCore enumeration.

It is possible to remove the default case from the two other switch cases in this file, though.

(The advantage of removing the default case is that -Wswitch will warn at build time if a value is missing.)

Note: I audited them all to confirm this was the only mistake in the file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108399</commentid>
    <comment_count>7</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-07-09 15:02:13 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; Comment on attachment 256522 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; Is it possible to remove the default case here?
&gt; 
&gt; The WebCore enumeration has about 50 more elements than the WebKitGTK+
&gt; enumeration, so to remove the default case, we would have to list those 50
&gt; elements above the ASSERT_NOT_REACHED() (to avoid compiler warnings from
&gt; -Wswitch). So I prefer to keep the default case for this switch; it&apos;s really
&gt; not worth the pain of having to update it whenever a new item is added to
&gt; the WebCore enumeration.


I wonder if a warning would be better here than an assertion? I guess this only affects debug builds...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108435</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-07-09 15:59:58 -0700</bug_when>
    <thetext>&gt; I wonder if a warning would be better here than an assertion?

I think an assertion is best, to make the issue more noticeable.

&gt; I guess this only affects debug builds...

In master, yes. Release builds of 2.8 do crash, but this is two separate bugs that just happen to occur in the same situation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108468</commentid>
    <comment_count>9</comment_count>
      <attachid>256522</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-09 17:10:18 -0700</bug_when>
    <thetext>Comment on attachment 256522
Patch

Clearing flags on attachment: 256522

Committed r186653: &lt;http://trac.webkit.org/changeset/186653&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108469</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-09 17:10:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>256517</attachid>
            <date>2015-07-09 14:12:29 -0700</date>
            <delta_ts>2015-07-09 14:12:29 -0700</delta_ts>
            <desc>Backtrace on master (r186333)</desc>
            <filename>gdb.txt</filename>
            <type>text/plain</type>
            <size>57709</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">ClRocmVhZCAxMyAoVGhyZWFkIDB4N2ZmZmQ0Y2RiNzAwIChMV1AgODAxNSkpOgojMCAgMHgwMDAw
N2ZmZmU4OWNlNjZkIGluIHBvbGwgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2NhbGwtdGVtcGxh
dGUuUzo4MQpObyBsb2NhbHMuCiMxICAweDAwMDA3ZmZmZTk3YTkxNDcgaW4gZ19wb2xsIChmZHM9
MHg3ZmZmZDAwMDA4ZTAsIG5mZHM9MiwgdGltZW91dD0tMSkKICAgIGF0IGdwb2xsLmM6MTI0Ck5v
IGxvY2Fscy4KIzIgIDB4MDAwMDdmZmZlOTc5ODEyMyBpbiBnX21haW5fY29udGV4dF9wb2xsIChj
b250ZXh0PTB4NzgzOGIwLCB0aW1lb3V0PS0xLCAKICAgIHByaW9yaXR5PTIxNDc0ODM2NDcsIGZk
cz0weDdmZmZkMDAwMDhlMCwgbl9mZHM9MikgYXQgZ21haW4uYzo0MTAzCiAgICAgICAgcG9sbF9m
dW5jID0gMHg3ZmZmZTk3YTkxMjAgPGdfcG9sbD4KIzMgIDB4MDAwMDdmZmZlOTc5N2FiNiBpbiBn
X21haW5fY29udGV4dF9pdGVyYXRlIChjb250ZXh0PTB4NzgzOGIwLCBibG9jaz0xLCAKICAgIGRp
c3BhdGNoPTEsIHNlbGY9MHg3MjU4YTApIGF0IGdtYWluLmM6MzgwMwogICAgICAgIG1heF9wcmlv
cml0eSA9IDIxNDc0ODM2NDcKICAgICAgICB0aW1lb3V0ID0gLTEKICAgICAgICBzb21lX3JlYWR5
ID0gMzI3NjcKICAgICAgICBuZmRzID0gMgogICAgICAgIGFsbG9jYXRlZF9uZmRzID0gMgogICAg
ICAgIGZkcyA9IDB4N2ZmZmQwMDAwOGUwCiM0ICAweDAwMDA3ZmZmZTk3OTdiYTUgaW4gZ19tYWlu
X2NvbnRleHRfaXRlcmF0aW9uIChjb250ZXh0PTB4NzgzOGIwLCAKICAgIG1heV9ibG9jaz0xKSBh
dCBnbWFpbi5jOjM4NjkKICAgICAgICByZXR2YWwgPSAwCiM1ICAweDAwMDA3ZmZmZTk3OTk3Mzkg
aW4gZ2xpYl93b3JrZXJfbWFpbiAoZGF0YT0weDApIGF0IGdtYWluLmM6NTYyMgpObyBsb2NhbHMu
CiM2ICAweDAwMDA3ZmZmZTk3YzViY2UgaW4gZ190aHJlYWRfcHJveHkgKGRhdGE9MHg3MjU4YTAp
IGF0IGd0aHJlYWQuYzo3NjQKICAgICAgICB0aHJlYWQgPSAweDcyNThhMAogICAgICAgIF9fZnVu
Y19fID0gImdfdGhyZWFkX3Byb3h5IgojNyAgMHgwMDAwN2ZmZmU4YzlmNTU1IGluIHN0YXJ0X3Ro
cmVhZCAoYXJnPTB4N2ZmZmQ0Y2RiNzAwKQogICAgYXQgcHRocmVhZF9jcmVhdGUuYzozMzMKICAg
ICAgICBfX3JlcyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHBkID0gMHg3ZmZmZDRjZGI3MDAK
ICAgICAgICBub3cgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICB1bndpbmRfYnVmID0ge2NhbmNl
bF9qbXBfYnVmID0ge3tqbXBfYnVmID0gezE0MDczNjc2MzYzOTU1MiwgCiAgICAgICAgICAgICAg
ICA4MzY1OTY3NzQ1NDIxNzIwMjQ2LCAxNDA3Mzc0ODgzMzc1MDMsIDE0MDczNjc2MzYzOTU1Miwg
CiAgICAgICAgICAgICAgICA4Mzg4NjA4LCAwLCAtODM2NTkxNzAxMDU2MzEyMjUwNiwgLTgzNjU5
NDM0MzU2MDA0MTQwMjZ9LCAKICAgICAgICAgICAgICBtYXNrX3dhc19zYXZlZCA9IDB9fSwgcHJp
diA9IHtwYWQgPSB7MHgwLCAweDAsIDB4MCwgMHgwfSwgCiAgICAgICAgICAgIGRhdGEgPSB7cHJl
diA9IDB4MCwgY2xlYW51cCA9IDB4MCwgY2FuY2VsdHlwZSA9IDB9fX0KICAgICAgICBub3RfZmly
c3RfY2FsbCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHBhZ2VzaXplX20xID0gPG9wdGltaXpl
ZCBvdXQ+CiAgICAgICAgc3AgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBmcmVlc2l6ZSA9IDxv
cHRpbWl6ZWQgb3V0PgojOCAgMHgwMDAwN2ZmZmU4OWQ5ZjNkIGluIGNsb25lICgpCiAgICBhdCAu
Li9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMDkKTm8gbG9jYWxzLgoK
VGhyZWFkIDEyIChUaHJlYWQgMHg3ZmZmY2ZmZmY3MDAgKExXUCA4MDE2KSk6CiMwICAweDAwMDA3
ZmZmZTg5Y2U2NmQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0
ZS5TOjgxCk5vIGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdhOTE0NyBpbiBnX3BvbGwgKGZkcz0w
eDdmZmZjODAwMTBjMCwgbmZkcz0yLCB0aW1lb3V0PS0xKQogICAgYXQgZ3BvbGwuYzoxMjQKTm8g
bG9jYWxzLgojMiAgMHgwMDAwN2ZmZmU5Nzk4MTIzIGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKGNv
bnRleHQ9MHg3ODQyMDAsIHRpbWVvdXQ9LTEsIAogICAgcHJpb3JpdHk9MjE0NzQ4MzY0NywgZmRz
PTB4N2ZmZmM4MDAxMGMwLCBuX2Zkcz0yKSBhdCBnbWFpbi5jOjQxMDMKICAgICAgICBwb2xsX2Z1
bmMgPSAweDdmZmZlOTdhOTEyMCA8Z19wb2xsPgojMyAgMHgwMDAwN2ZmZmU5Nzk3YWI2IGluIGdf
bWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg3ODQyMDAsIGJsb2NrPTEsIAogICAgZGlz
cGF0Y2g9MSwgc2VsZj0weDcyNThmMCkgYXQgZ21haW4uYzozODAzCiAgICAgICAgbWF4X3ByaW9y
aXR5ID0gMjE0NzQ4MzY0NwogICAgICAgIHRpbWVvdXQgPSAtMQogICAgICAgIHNvbWVfcmVhZHkg
PSAwCiAgICAgICAgbmZkcyA9IDIKICAgICAgICBhbGxvY2F0ZWRfbmZkcyA9IDIKICAgICAgICBm
ZHMgPSAweDdmZmZjODAwMTBjMAojNCAgMHgwMDAwN2ZmZmU5Nzk3ZjA3IGluIGdfbWFpbl9sb29w
X3J1biAobG9vcD0weDc4NDE5MCkgYXQgZ21haW4uYzo0MDAyCiAgICAgICAgc2VsZiA9IDB4NzI1
OGYwCiAgICAgICAgX19mdW5jX18gPSAiZ19tYWluX2xvb3BfcnVuIgojNSAgMHgwMDAwN2ZmZmU5
ZTFjY2U3IGluIGdkYnVzX3NoYXJlZF90aHJlYWRfZnVuYyAodXNlcl9kYXRhPTB4Nzg0MWQwKQog
ICAgYXQgZ2RidXNwcml2YXRlLmM6MjQ2CiAgICAgICAgZGF0YSA9IDB4Nzg0MWQwCiM2ICAweDAw
MDA3ZmZmZTk3YzViY2UgaW4gZ190aHJlYWRfcHJveHkgKGRhdGE9MHg3MjU4ZjApIGF0IGd0aHJl
YWQuYzo3NjQKICAgICAgICB0aHJlYWQgPSAweDcyNThmMAogICAgICAgIF9fZnVuY19fID0gImdf
dGhyZWFkX3Byb3h5IgojNyAgMHgwMDAwN2ZmZmU4YzlmNTU1IGluIHN0YXJ0X3RocmVhZCAoYXJn
PTB4N2ZmZmNmZmZmNzAwKQogICAgYXQgcHRocmVhZF9jcmVhdGUuYzozMzMKICAgICAgICBfX3Jl
cyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHBkID0gMHg3ZmZmY2ZmZmY3MDAKICAgICAgICBu
b3cgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICB1bndpbmRfYnVmID0ge2NhbmNlbF9qbXBfYnVm
ID0ge3tqbXBfYnVmID0gezE0MDczNjY4MzA0NjY1NiwgCiAgICAgICAgICAgICAgICA4MzY1OTY3
NzQ1NDIxNzIwMjQ2LCAxNDA3Mzc0ODgzMzc4NTUsIDE0MDczNjY4MzA0NjY1NiwgCiAgICAgICAg
ICAgICAgICA4Mzg4NjA4LCAwLCAtODM2NTg2MjE5MTc0ODA0MDAxMCwgLTgzNjU5NDM0MzU2MDA0
MTQwMjZ9LCAKICAgICAgICAgICAgICBtYXNrX3dhc19zYXZlZCA9IDB9fSwgcHJpdiA9IHtwYWQg
PSB7MHgwLCAweDAsIDB4MCwgMHgwfSwgCiAgICAgICAgICAgIGRhdGEgPSB7cHJldiA9IDB4MCwg
Y2xlYW51cCA9IDB4MCwgY2FuY2VsdHlwZSA9IDB9fX0KICAgICAgICBub3RfZmlyc3RfY2FsbCA9
IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHBhZ2VzaXplX20xID0gPG9wdGltaXplZCBvdXQ+CiAg
ICAgICAgc3AgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBmcmVlc2l6ZSA9IDxvcHRpbWl6ZWQg
b3V0PgojOCAgMHgwMDAwN2ZmZmU4OWQ5ZjNkIGluIGNsb25lICgpCiAgICBhdCAuLi9zeXNkZXBz
L3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMDkKTm8gbG9jYWxzLgoKVGhyZWFkIDEx
IChUaHJlYWQgMHg3ZmZmY2U3ZmY3MDAgKExXUCA4MDE3KSk6CiMwICAweDAwMDA3ZmZmZTg5Y2U2
NmQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCk5v
IGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdhOTE0NyBpbiBnX3BvbGwgKGZkcz0weDdmZmY4MDAw
MTBlMCwgbmZkcz0xLCB0aW1lb3V0PS0xKQogICAgYXQgZ3BvbGwuYzoxMjQKTm8gbG9jYWxzLgoj
MiAgMHgwMDAwN2ZmZmU5Nzk4MTIzIGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKGNvbnRleHQ9MHg3
ZTgwYTAsIHRpbWVvdXQ9LTEsIAogICAgcHJpb3JpdHk9MjE0NzQ4MzY0NywgZmRzPTB4N2ZmZjgw
MDAxMGUwLCBuX2Zkcz0xKSBhdCBnbWFpbi5jOjQxMDMKICAgICAgICBwb2xsX2Z1bmMgPSAweDdm
ZmZlOTdhOTEyMCA8Z19wb2xsPgojMyAgMHgwMDAwN2ZmZmU5Nzk3YWI2IGluIGdfbWFpbl9jb250
ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg3ZTgwYTAsIGJsb2NrPTEsIAogICAgZGlzcGF0Y2g9MSwg
c2VsZj0weDdjMjQ0MCkgYXQgZ21haW4uYzozODAzCiAgICAgICAgbWF4X3ByaW9yaXR5ID0gMjE0
NzQ4MzY0NwogICAgICAgIHRpbWVvdXQgPSAtMQogICAgICAgIHNvbWVfcmVhZHkgPSAxCiAgICAg
ICAgbmZkcyA9IDEKICAgICAgICBhbGxvY2F0ZWRfbmZkcyA9IDEKICAgICAgICBmZHMgPSAweDdm
ZmY4MDAwMTBlMAojNCAgMHgwMDAwN2ZmZmU5Nzk3ZjA3IGluIGdfbWFpbl9sb29wX3J1biAobG9v
cD0weDgxZWZlMCkgYXQgZ21haW4uYzo0MDAyCiAgICAgICAgc2VsZiA9IDB4N2MyNDQwCiAgICAg
ICAgX19mdW5jX18gPSAiZ19tYWluX2xvb3BfcnVuIgojNSAgMHgwMDAwN2ZmZmY0ODYzYmFhIGlu
IFdURjo6V29ya1F1ZXVlOjpwbGF0Zm9ybUluaXRpYWxpemUoY2hhciBjb25zdCosIFdURjo6V29y
a1F1ZXVlOjpUeXBlLCBXVEY6OldvcmtRdWV1ZTo6UU9TKTo6JF8wOjpvcGVyYXRvcigpKCkgY29u
c3QgKHRoaXM9MHg4MWU4ZDApCiAgICBhdCAuLi8uLi9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtR
dWV1ZUdMaWIuY3BwOjYxCk5vIGxvY2Fscy4KIzYgIDB4MDAwMDdmZmZmNDg2Mzk1ZCBpbiBzdGQ6
Ol9GdW5jdGlvbl9oYW5kbGVyPHZvaWQgKCksIFdURjo6V29ya1F1ZXVlOjpwbGF0Zm9ybUluaXRp
YWxpemUoY2hhciBjb25zdCosIFdURjo6V29ya1F1ZXVlOjpUeXBlLCBXVEY6OldvcmtRdWV1ZTo6
UU9TKTo6JF8wPjo6X01faW52b2tlKHN0ZDo6X0FueV9kYXRhIGNvbnN0JikgKF9fZnVuY3Rvcj0u
Li4pCiAgICBhdCAvdXNyL2Jpbi8uLi9saWIvZ2NjL3g4Nl82NC1yZWRoYXQtbGludXgvNS4xLjEv
Li4vLi4vLi4vLi4vaW5jbHVkZS9jKysvNS4xLjEvZnVuY3Rpb25hbDoxODcxCk5vIGxvY2Fscy4K
IzcgIDB4MDAwMDdmZmZmMjFhNjk1ZSBpbiBzdGQ6OmZ1bmN0aW9uPHZvaWQgKCk+OjpvcGVyYXRv
cigpKCkgY29uc3QgKAogICAgdGhpcz0weDdmZmZjZTdmZWJjOCkKICAgIGF0IC91c3IvYmluLy4u
L2xpYi9nY2MveDg2XzY0LXJlZGhhdC1saW51eC81LjEuMS8uLi8uLi8uLi8uLi9pbmNsdWRlL2Mr
Ky81LjEuMS9mdW5jdGlvbmFsOjIyNzEKTm8gbG9jYWxzLgojOCAgMHgwMDAwN2ZmZmVlNGFiOGU1
IGluIFdURjo6dGhyZWFkRW50cnlQb2ludCAoY29udGV4dERhdGE9MHg3ZmZmY2VmZjMxNDApCiAg
ICBhdCAuLi8uLi9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwOjU4CiAgICAgICAgY29udGV4
dCA9IDB4N2ZmZmNlZmYzMTQwCiAgICAgICAgZW50cnlQb2ludCA9IHs8c3RkOjpfTWF5YmVfdW5h
cnlfb3JfYmluYXJ5X2Z1bmN0aW9uPHZvaWQ+PiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPHN0ZDo6
X0Z1bmN0aW9uX2Jhc2U+ID0ge3N0YXRpYyBfTV9tYXhfc2l6ZSA9IDE2LCAKICAgICAgICAgICAg
c3RhdGljIF9NX21heF9hbGlnbiA9IDgsIF9NX2Z1bmN0b3IgPSB7X01fdW51c2VkID0gewogICAg
ICAgICAgICAgICAgX01fb2JqZWN0ID0gMHg4MWU4ZDAsIF9NX2NvbnN0X29iamVjdCA9IDB4ODFl
OGQwLCAKICAgICAgICAgICAgICAgIF9NX2Z1bmN0aW9uX3BvaW50ZXIgPSAweDgxZThkMCwgCiAg
ICAgICAgICAgICAgICBfTV9tZW1iZXJfcG9pbnRlciA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxl
PiwgCiAgICAgICAgICAgICAgX01fcG9kX2RhdGEgPSAiXDMyMFwzNTBcMjAxXDAwMFwwMDBcMDAw
XDAwMFwwMDBQXDMwM1wzNzdcMzc3XDM3N1wxNzdcMDAwIn0sIAogICAgICAgICAgICBfTV9tYW5h
Z2VyID0gMHg3ZmZmZjQ4NjM5NzAgPHN0ZDo6X0Z1bmN0aW9uX2Jhc2U6Ol9CYXNlX21hbmFnZXI8
V1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpXb3Jr
UXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjokXzA+OjpfTV9tYW5hZ2VyKHN0ZDo6
X0FueV9kYXRhJiwgc3RkOjpfQW55X2RhdGEgY29uc3QmLCBzdGQ6Ol9NYW5hZ2VyX29wZXJhdGlv
bik+fSwgCiAgICAgICAgICBfTV9pbnZva2VyID0gMHg3ZmZmZjQ4NjM5NDAgPHN0ZDo6X0Z1bmN0
aW9uX2hhbmRsZXI8dm9pZCAoKSwgV1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShj
aGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjok
XzA+OjpfTV9pbnZva2Uoc3RkOjpfQW55X2RhdGEgY29uc3QmKT59CiM5ICAweDAwMDA3ZmZmZWU0
ZTc1MzcgaW4gV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50IChwYXJhbT0weDdmZmZjZWZmYTAxMCkK
ICAgIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoxNzAKICAg
ICAgICBpbnZvY2F0aW9uID0gc3RkOjp1bmlxdWVfcHRyPFdURjo6VGhyZWFkRnVuY3Rpb25JbnZv
Y2F0aW9uPiBjb250YWluaW5nIDB4N2ZmZmNlZmZhMDEwCiMxMCAweDAwMDA3ZmZmZThjOWY1NTUg
aW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmY2U3ZmY3MDApCiAgICBhdCBwdGhyZWFkX2NyZWF0
ZS5jOjMzMwogICAgICAgIF9fcmVzID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgcGQgPSAweDdm
ZmZjZTdmZjcwMAogICAgICAgIG5vdyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHVud2luZF9i
dWYgPSB7Y2FuY2VsX2ptcF9idWYgPSB7e2ptcF9idWYgPSB7MTQwNzM2NjU3ODgwODMyLCAKICAg
ICAgICAgICAgICAgIDgzNjU5Njc3NDU0MjE3MjAyNDYsIDE0MDczNzQ4ODMzOTI0NywgMTQwNzM2
NjU3ODgwODMyLCAKICAgICAgICAgICAgICAgIDgzODg2MDgsIDAsIC04MzY1ODU4ODkzMjEzMTU2
NjgyLCAtODM2NTk0MzQzNTYwMDQxNDAyNn0sIAogICAgICAgICAgICAgIG1hc2tfd2FzX3NhdmVk
ID0gMH19LCBwcml2ID0ge3BhZCA9IHsweDAsIDB4MCwgMHgwLCAweDB9LCAKICAgICAgICAgICAg
ZGF0YSA9IHtwcmV2ID0gMHgwLCBjbGVhbnVwID0gMHgwLCBjYW5jZWx0eXBlID0gMH19fQogICAg
ICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgcGFnZXNpemVfbTEg
PSA8b3B0aW1pemVkIG91dD4KICAgICAgICBzcCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIGZy
ZWVzaXplID0gPG9wdGltaXplZCBvdXQ+CiMxMSAweDAwMDA3ZmZmZTg5ZDlmM2QgaW4gY2xvbmUg
KCkKICAgIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjEwOQpO
byBsb2NhbHMuCgpUaHJlYWQgMTAgKFRocmVhZCAweDdmZmZjZGZmZTcwMCAoTFdQIDgwMTgpKToK
IzAgIDB4MDAwMDdmZmZlODljZTY2ZCBpbiBwb2xsICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXNj
YWxsLXRlbXBsYXRlLlM6ODEKTm8gbG9jYWxzLgojMSAgMHgwMDAwN2ZmZmU5N2E5MTQ3IGluIGdf
cG9sbCAoZmRzPTB4N2ZmZjc4MDAxMGUwLCBuZmRzPTEsIHRpbWVvdXQ9LTEpCiAgICBhdCBncG9s
bC5jOjEyNApObyBsb2NhbHMuCiMyICAweDAwMDA3ZmZmZTk3OTgxMjMgaW4gZ19tYWluX2NvbnRl
eHRfcG9sbCAoY29udGV4dD0weDdlOTI4MCwgdGltZW91dD0tMSwgCiAgICBwcmlvcml0eT0yMTQ3
NDgzNjQ3LCBmZHM9MHg3ZmZmNzgwMDEwZTAsIG5fZmRzPTEpIGF0IGdtYWluLmM6NDEwMwogICAg
ICAgIHBvbGxfZnVuYyA9IDB4N2ZmZmU5N2E5MTIwIDxnX3BvbGw+CiMzICAweDAwMDA3ZmZmZTk3
OTdhYjYgaW4gZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD0weDdlOTI4MCwgYmxvY2s9
MSwgCiAgICBkaXNwYXRjaD0xLCBzZWxmPTB4ODBkZDAwKSBhdCBnbWFpbi5jOjM4MDMKICAgICAg
ICBtYXhfcHJpb3JpdHkgPSAyMTQ3NDgzNjQ3CiAgICAgICAgdGltZW91dCA9IC0xCiAgICAgICAg
c29tZV9yZWFkeSA9IDAKICAgICAgICBuZmRzID0gMQogICAgICAgIGFsbG9jYXRlZF9uZmRzID0g
MQogICAgICAgIGZkcyA9IDB4N2ZmZjc4MDAxMGUwCiM0ICAweDAwMDA3ZmZmZTk3OTdmMDcgaW4g
Z19tYWluX2xvb3BfcnVuIChsb29wPTB4ODAwZjUwKSBhdCBnbWFpbi5jOjQwMDIKICAgICAgICBz
ZWxmID0gMHg4MGRkMDAKICAgICAgICBfX2Z1bmNfXyA9ICJnX21haW5fbG9vcF9ydW4iCiM1ICAw
eDAwMDA3ZmZmZjQ4NjNiYWEgaW4gV1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShj
aGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjok
XzA6Om9wZXJhdG9yKCkoKSBjb25zdCAodGhpcz0weDdlODIwMCkKICAgIGF0IC4uLy4uL1NvdXJj
ZS9XVEYvd3RmL2dsaWIvV29ya1F1ZXVlR0xpYi5jcHA6NjEKTm8gbG9jYWxzLgojNiAgMHgwMDAw
N2ZmZmY0ODYzOTVkIGluIHN0ZDo6X0Z1bmN0aW9uX2hhbmRsZXI8dm9pZCAoKSwgV1RGOjpXb3Jr
UXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5
cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjokXzA+OjpfTV9pbnZva2Uoc3RkOjpfQW55X2RhdGEg
Y29uc3QmKSAoX19mdW5jdG9yPS4uLikKICAgIGF0IC91c3IvYmluLy4uL2xpYi9nY2MveDg2XzY0
LXJlZGhhdC1saW51eC81LjEuMS8uLi8uLi8uLi8uLi9pbmNsdWRlL2MrKy81LjEuMS9mdW5jdGlv
bmFsOjE4NzEKTm8gbG9jYWxzLgojNyAgMHgwMDAwN2ZmZmYyMWE2OTVlIGluIHN0ZDo6ZnVuY3Rp
b248dm9pZCAoKT46Om9wZXJhdG9yKCkoKSBjb25zdCAoCiAgICB0aGlzPTB4N2ZmZmNkZmZkYmM4
KQogICAgYXQgL3Vzci9iaW4vLi4vbGliL2djYy94ODZfNjQtcmVkaGF0LWxpbnV4LzUuMS4xLy4u
Ly4uLy4uLy4uL2luY2x1ZGUvYysrLzUuMS4xL2Z1bmN0aW9uYWw6MjI3MQpObyBsb2NhbHMuCiM4
ICAweDAwMDA3ZmZmZWU0YWI4ZTUgaW4gV1RGOjp0aHJlYWRFbnRyeVBvaW50IChjb250ZXh0RGF0
YT0weDdmZmZjZWZmMzE5MCkKICAgIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5j
cHA6NTgKICAgICAgICBjb250ZXh0ID0gMHg3ZmZmY2VmZjMxOTAKICAgICAgICBlbnRyeVBvaW50
ID0gezxzdGQ6Ol9NYXliZV91bmFyeV9vcl9iaW5hcnlfZnVuY3Rpb248dm9pZD4+ID0gezxObyBk
YXRhIGZpZWxkcz59LCA8c3RkOjpfRnVuY3Rpb25fYmFzZT4gPSB7c3RhdGljIF9NX21heF9zaXpl
ID0gMTYsIAogICAgICAgICAgICBzdGF0aWMgX01fbWF4X2FsaWduID0gOCwgX01fZnVuY3RvciA9
IHtfTV91bnVzZWQgPSB7CiAgICAgICAgICAgICAgICBfTV9vYmplY3QgPSAweDdlODIwMCwgX01f
Y29uc3Rfb2JqZWN0ID0gMHg3ZTgyMDAsIAogICAgICAgICAgICAgICAgX01fZnVuY3Rpb25fcG9p
bnRlciA9IDB4N2U4MjAwLCAKICAgICAgICAgICAgICAgIF9NX21lbWJlcl9wb2ludGVyID0gPGVy
cm9yIHJlYWRpbmcgdmFyaWFibGU+LCAKICAgICAgICAgICAgICBfTV9wb2RfZGF0YSA9ICJcMDAw
XDIwMn5cMDAwXDAwMFwwMDBcMDAwXDAwMFwwNjBcMzA0XDM3N1wzNzdcMzc3XDE3N1wwMDAifSwg
CiAgICAgICAgICAgIF9NX21hbmFnZXIgPSAweDdmZmZmNDg2Mzk3MCA8c3RkOjpfRnVuY3Rpb25f
YmFzZTo6X0Jhc2VfbWFuYWdlcjxXVEY6OldvcmtRdWV1ZTo6cGxhdGZvcm1Jbml0aWFsaXplKGNo
YXIgY29uc3QqLCBXVEY6OldvcmtRdWV1ZTo6VHlwZSwgV1RGOjpXb3JrUXVldWU6OlFPUyk6OiRf
MD46Ol9NX21hbmFnZXIoc3RkOjpfQW55X2RhdGEmLCBzdGQ6Ol9BbnlfZGF0YSBjb25zdCYsIHN0
ZDo6X01hbmFnZXJfb3BlcmF0aW9uKT59LCAKICAgICAgICAgIF9NX2ludm9rZXIgPSAweDdmZmZm
NDg2Mzk0MCA8c3RkOjpfRnVuY3Rpb25faGFuZGxlcjx2b2lkICgpLCBXVEY6OldvcmtRdWV1ZTo6
cGxhdGZvcm1Jbml0aWFsaXplKGNoYXIgY29uc3QqLCBXVEY6OldvcmtRdWV1ZTo6VHlwZSwgV1RG
OjpXb3JrUXVldWU6OlFPUyk6OiRfMD46Ol9NX2ludm9rZShzdGQ6Ol9BbnlfZGF0YSBjb25zdCYp
Pn0KIzkgIDB4MDAwMDdmZmZlZTRlNzUzNyBpbiBXVEY6Ond0ZlRocmVhZEVudHJ5UG9pbnQgKHBh
cmFtPTB4N2ZmZmNlZmZhMDMwKQogICAgYXQgLi4vLi4vU291cmNlL1dURi93dGYvVGhyZWFkaW5n
UHRocmVhZHMuY3BwOjE3MAogICAgICAgIGludm9jYXRpb24gPSBzdGQ6OnVuaXF1ZV9wdHI8V1RG
OjpUaHJlYWRGdW5jdGlvbkludm9jYXRpb24+IGNvbnRhaW5pbmcgMHg3ZmZmY2VmZmEwMzAKIzEw
IDB4MDAwMDdmZmZlOGM5ZjU1NSBpbiBzdGFydF90aHJlYWQgKGFyZz0weDdmZmZjZGZmZTcwMCkK
ICAgIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzMzCiAgICAgICAgX19yZXMgPSA8b3B0aW1pemVkIG91
dD4KICAgICAgICBwZCA9IDB4N2ZmZmNkZmZlNzAwCiAgICAgICAgbm93ID0gPG9wdGltaXplZCBv
dXQ+CiAgICAgICAgdW53aW5kX2J1ZiA9IHtjYW5jZWxfam1wX2J1ZiA9IHt7am1wX2J1ZiA9IHsx
NDA3MzY2NDk0ODgxMjgsIAogICAgICAgICAgICAgICAgODM2NTk2Nzc0NTQyMTcyMDI0NiwgMTQw
NzM3NDg4MzM5NDcxLCAxNDA3MzY2NDk0ODgxMjgsIAogICAgICAgICAgICAgICAgODM4ODYwOCwg
MCwgLTgzNjU4NjY1ODkyNTc2ODAyMDIsIC04MzY1OTQzNDM1NjAwNDE0MDI2fSwgCiAgICAgICAg
ICAgICAgbWFza193YXNfc2F2ZWQgPSAwfX0sIHByaXYgPSB7cGFkID0gezB4MCwgMHgwLCAweDAs
IDB4MH0sIAogICAgICAgICAgICBkYXRhID0ge3ByZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNh
bmNlbHR5cGUgPSAwfX19CiAgICAgICAgbm90X2ZpcnN0X2NhbGwgPSA8b3B0aW1pemVkIG91dD4K
ICAgICAgICBwYWdlc2l6ZV9tMSA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHNwID0gPG9wdGlt
aXplZCBvdXQ+CiAgICAgICAgZnJlZXNpemUgPSA8b3B0aW1pemVkIG91dD4KIzExIDB4MDAwMDdm
ZmZlODlkOWYzZCBpbiBjbG9uZSAoKQogICAgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgv
eDg2XzY0L2Nsb25lLlM6MTA5Ck5vIGxvY2Fscy4KClRocmVhZCA5IChUaHJlYWQgMHg3ZmZmY2Q3
ZmQ3MDAgKExXUCA4MDE5KSk6CiMwICBwdGhyZWFkX2NvbmRfd2FpdEBAR0xJQkNfMi4zLjIgKCkK
ICAgIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9wdGhyZWFkX2NvbmRfd2Fp
dC5TOjE4NQpObyBsb2NhbHMuCiMxICAweDAwMDA3ZmZmZWU0ZTg0NDAgaW4gV1RGOjpUaHJlYWRD
b25kaXRpb246OndhaXQgKHRoaXM9MHg3ZmZmY2U4MDRkNTgsIAogICAgbXV0ZXg9Li4uKSBhdCAu
Li8uLi9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHA6MzcxCiAgICAgICAgcmVz
dWx0ID0gMzI3NjcKIzIgIDB4MDAwMDdmZmZmMzVjODMxZCBpbiBXZWJDb3JlOjpJY29uRGF0YWJh
c2U6OnN5bmNUaHJlYWRNYWluTG9vcCAoCiAgICB0aGlzPTB4N2ZmZmNlODA0YzgwKQogICAgYXQg
Li4vLi4vU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoxNDMxCiAg
ICAgICAgdGltZVN0YW1wID0gMjc3ODguNTM3MzMyCiAgICAgICAgZGlkQW55V29yayA9IGZhbHNl
CiAgICAgICAgbmV3c3RhbXAgPSAyNzc4OC41Mzc0NAogICAgICAgIHBydW5lZFVucmV0YWluZWRJ
Y29ucyA9IGZhbHNlCiAgICAgICAgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uID0gc3RkOjp1bmlx
dWVfcHRyPFdlYkNvcmU6OlN1ZGRlblRlcm1pbmF0aW9uRGlzYWJsZXI+IGNvbnRhaW5pbmcgMHgw
CiMzICAweDAwMDA3ZmZmZjM1YzdlOGUgaW4gV2ViQ29yZTo6SWNvbkRhdGFiYXNlOjppY29uRGF0
YWJhc2VTeW5jVGhyZWFkICgKICAgIHRoaXM9MHg3ZmZmY2U4MDRjODApCiAgICBhdCAuLi8uLi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwOjEwMzUKICAgICAgICBz
dGFydFRpbWUgPSAyNzc3OS40NjcwMzUwMDAwMDEKICAgICAgICBqb3VybmFsRmlsZW5hbWUgPSB7
bV9pbXBsID0ge21fcHRyID0gMHg3ZmZmY2VmZGYwMDB9fQogICAgICAgIHRpbWVTdGFtcCA9IDI3
Nzc5LjU3Nzc5OTk5OTk5OQogICAgICAgIG5ld1N0YW1wID0gMjc3ODEuMTMyMDgxCiM0ICAweDAw
MDA3ZmZmZjM1YzE2MmQgaW4gV2ViQ29yZTo6SWNvbkRhdGFiYXNlOjppY29uRGF0YWJhc2VTeW5j
VGhyZWFkU3RhcnQgKAogICAgdkljb25EYXRhYmFzZT0weDdmZmZjZTgwNGM4MCkKICAgIGF0IC4u
Ly4uL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHA6OTU2CiAgICAg
ICAgaWNvbkRCID0gMHg3ZmZmY2U4MDRjODAKIzUgIDB4MDAwMDdmZmZlZTRhYmQxOSBpbiBXVEY6
OmNyZWF0ZVRocmVhZCh2b2lkICgqKSh2b2lkKiksIHZvaWQqLCBjaGFyIGNvbnN0Kik6OiRfMDo6
b3BlcmF0b3IoKSgpIGNvbnN0ICh0aGlzPTB4N2ZmZmNkN2ZjYmM4KQogICAgYXQgLi4vLi4vU291
cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcDo4MQpObyBsb2NhbHMuCiM2ICAweDAwMDA3ZmZmZWU0
YWJiMWQgaW4gc3RkOjpfRnVuY3Rpb25faGFuZGxlcjx2b2lkICgpLCBXVEY6OmNyZWF0ZVRocmVh
ZCh2b2lkICgqKSh2b2lkKiksIHZvaWQqLCBjaGFyIGNvbnN0Kik6OiRfMD46Ol9NX2ludm9rZShz
dGQ6Ol9BbnlfZGF0YSBjb25zdCYpICgKICAgIF9fZnVuY3Rvcj0uLi4pCiAgICBhdCAvdXNyL2Jp
bi8uLi9saWIvZ2NjL3g4Nl82NC1yZWRoYXQtbGludXgvNS4xLjEvLi4vLi4vLi4vLi4vaW5jbHVk
ZS9jKysvNS4xLjEvZnVuY3Rpb25hbDoxODcxCk5vIGxvY2Fscy4KIzcgIDB4MDAwMDdmZmZmMjFh
Njk1ZSBpbiBzdGQ6OmZ1bmN0aW9uPHZvaWQgKCk+OjpvcGVyYXRvcigpKCkgY29uc3QgKAogICAg
dGhpcz0weDdmZmZjZDdmY2JjOCkKICAgIGF0IC91c3IvYmluLy4uL2xpYi9nY2MveDg2XzY0LXJl
ZGhhdC1saW51eC81LjEuMS8uLi8uLi8uLi8uLi9pbmNsdWRlL2MrKy81LjEuMS9mdW5jdGlvbmFs
OjIyNzEKTm8gbG9jYWxzLgojOCAgMHgwMDAwN2ZmZmVlNGFiOGU1IGluIFdURjo6dGhyZWFkRW50
cnlQb2ludCAoY29udGV4dERhdGE9MHg3ZmZmY2VmZjMyODApCiAgICBhdCAuLi8uLi9Tb3VyY2Uv
V1RGL3d0Zi9UaHJlYWRpbmcuY3BwOjU4CiAgICAgICAgY29udGV4dCA9IDB4N2ZmZmNlZmYzMjgw
CiAgICAgICAgZW50cnlQb2ludCA9IHs8c3RkOjpfTWF5YmVfdW5hcnlfb3JfYmluYXJ5X2Z1bmN0
aW9uPHZvaWQ+PiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPHN0ZDo6X0Z1bmN0aW9uX2Jhc2U+ID0g
e3N0YXRpYyBfTV9tYXhfc2l6ZSA9IDE2LCAKICAgICAgICAgICAgc3RhdGljIF9NX21heF9hbGln
biA9IDgsIF9NX2Z1bmN0b3IgPSB7X01fdW51c2VkID0gewogICAgICAgICAgICAgICAgX01fb2Jq
ZWN0ID0gMHg3ZmZmZjM1YzE2MTAgPFdlYkNvcmU6Okljb25EYXRhYmFzZTo6aWNvbkRhdGFiYXNl
U3luY1RocmVhZFN0YXJ0KHZvaWQqKT4sIAogICAgICAgICAgICAgICAgX01fY29uc3Rfb2JqZWN0
ID0gMHg3ZmZmZjM1YzE2MTAgPFdlYkNvcmU6Okljb25EYXRhYmFzZTo6aWNvbkRhdGFiYXNlU3lu
Y1RocmVhZFN0YXJ0KHZvaWQqKT4sIAogICAgICAgICAgICAgICAgX01fZnVuY3Rpb25fcG9pbnRl
ciA9IDB4N2ZmZmYzNWMxNjEwIDxXZWJDb3JlOjpJY29uRGF0YWJhc2U6Omljb25EYXRhYmFzZVN5
bmNUaHJlYWRTdGFydCh2b2lkKik+LCAKICAgICAgICAgICAgICAgIF9NX21lbWJlcl9wb2ludGVy
ID0gPGVycm9yIHJlYWRpbmcgdmFyaWFibGU+LCAKICAgICAgICAgICAgICBfTV9wb2RfZGF0YSA9
ICJcMDIwXDAyNlxcXDM2M1wzNzdcMTc3XDAwMFwwMDBcMjAwTFwyMDBcMzE2XDM3N1wxNzdcMDAw
In0sIAogICAgICAgICAgICBfTV9tYW5hZ2VyID0gMHg3ZmZmZWU0YWJiMzAgPHN0ZDo6X0Z1bmN0
aW9uX2Jhc2U6Ol9CYXNlX21hbmFnZXI8V1RGOjpjcmVhdGVUaHJlYWQodm9pZCAoKikodm9pZCop
LCB2b2lkKiwgY2hhciBjb25zdCopOjokXzA+OjpfTV9tYW5hZ2VyKHN0ZDo6X0FueV9kYXRhJiwg
c3RkOjpfQW55X2RhdGEgY29uc3QmLCBzdGQ6Ol9NYW5hZ2VyX29wZXJhdGlvbik+fSwgCiAgICAg
ICAgICBfTV9pbnZva2VyID0gMHg3ZmZmZWU0YWJiMDAgPHN0ZDo6X0Z1bmN0aW9uX2hhbmRsZXI8
dm9pZCAoKSwgV1RGOjpjcmVhdGVUaHJlYWQodm9pZCAoKikodm9pZCopLCB2b2lkKiwgY2hhciBj
b25zdCopOjokXzA+OjpfTV9pbnZva2Uoc3RkOjpfQW55X2RhdGEgY29uc3QmKT59CiM5ICAweDAw
MDA3ZmZmZWU0ZTc1MzcgaW4gV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50IChwYXJhbT0weDdmZmZj
ZWZmYTA1MCkKICAgIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNw
cDoxNzAKICAgICAgICBpbnZvY2F0aW9uID0gc3RkOjp1bmlxdWVfcHRyPFdURjo6VGhyZWFkRnVu
Y3Rpb25JbnZvY2F0aW9uPiBjb250YWluaW5nIDB4N2ZmZmNlZmZhMDUwCiMxMCAweDAwMDA3ZmZm
ZThjOWY1NTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmY2Q3ZmQ3MDApCiAgICBhdCBwdGhy
ZWFkX2NyZWF0ZS5jOjMzMwogICAgICAgIF9fcmVzID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAg
cGQgPSAweDdmZmZjZDdmZDcwMAogICAgICAgIG5vdyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAg
IHVud2luZF9idWYgPSB7Y2FuY2VsX2ptcF9idWYgPSB7e2ptcF9idWYgPSB7MTQwNzM2NjQxMDk1
NDI0LCAKICAgICAgICAgICAgICAgIDgzNjU5Njc3NDU0MjE3MjAyNDYsIDE0MDczNzQ4ODM0MTEx
OSwgMTQwNzM2NjQxMDk1NDI0LCAKICAgICAgICAgICAgICAgIDgzODg2MDgsIDAsIC04MzY1ODY1
NDg5MjA5MTgxNTE0LCAtODM2NTk0MzQzNTYwMDQxNDAyNn0sIAogICAgICAgICAgICAgIG1hc2tf
d2FzX3NhdmVkID0gMH19LCBwcml2ID0ge3BhZCA9IHsweDAsIDB4MCwgMHgwLCAweDB9LCAKICAg
ICAgICAgICAgZGF0YSA9IHtwcmV2ID0gMHgwLCBjbGVhbnVwID0gMHgwLCBjYW5jZWx0eXBlID0g
MH19fQogICAgICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgcGFn
ZXNpemVfbTEgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBzcCA9IDxvcHRpbWl6ZWQgb3V0Pgog
ICAgICAgIGZyZWVzaXplID0gPG9wdGltaXplZCBvdXQ+CiMxMSAweDAwMDA3ZmZmZTg5ZDlmM2Qg
aW4gY2xvbmUgKCkKICAgIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9u
ZS5TOjEwOQpObyBsb2NhbHMuCgpUaHJlYWQgOCAoVGhyZWFkIDB4N2ZmZjg3ZmZkNzAwIChMV1Ag
ODAyMykpOgojMCAgc3lzY2FsbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZf
NjQvc3lzY2FsbC5TOjM4Ck5vIGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdlYzBmOCBpbiBnX2Nv
bmRfd2FpdF91bnRpbCAoY29uZD0weDc4MzdmOCwgbXV0ZXg9MHg3ODM3ZjAsIAogICAgZW5kX3Rp
bWU9Mjc4MDAyMTY3NjEpIGF0IGd0aHJlYWQtcG9zaXguYzoxNDQ0CiAgICAgICAgbm93ID0ge3R2
X3NlYyA9IDI3Nzg1LCB0dl9uc2VjID0gMjE2NzYyMzMzfQogICAgICAgIHNwYW4gPSB7dHZfc2Vj
ID0gMTQsIHR2X25zZWMgPSA5OTk5OTg2Njd9CiAgICAgICAgc2FtcGxlZCA9IDMKICAgICAgICBy
ZXMgPSA3ODc4NjY0CiMyICAweDAwMDA3ZmZmZTk3NjJlMzYgaW4gZ19hc3luY19xdWV1ZV9wb3Bf
aW50ZXJuX3VubG9ja2VkIChxdWV1ZT0weDc4MzdmMCwgCiAgICB3YWl0PTEsIGVuZF90aW1lPTI3
ODAwMjE2NzYxKSBhdCBnYXN5bmNxdWV1ZS5jOjQyMgogICAgICAgIHJldHZhbCA9IDB4NzgzN2Yw
CiAgICAgICAgX19mdW5jX18gPSAiZ19hc3luY19xdWV1ZV9wb3BfaW50ZXJuX3VubG9ja2VkIgoj
MyAgMHgwMDAwN2ZmZmU5NzYzMDczIGluIGdfYXN5bmNfcXVldWVfdGltZW91dF9wb3AgKHF1ZXVl
PTB4NzgzN2YwLCAKICAgIHRpbWVvdXQ9MTUwMDAwMDApIGF0IGdhc3luY3F1ZXVlLmM6NTQzCiAg
ICAgICAgZW5kX3RpbWUgPSAyNzgwMDIxNjc2MQogICAgICAgIHJldHZhbCA9IDB4Mzg3ZmZjYmIw
CiM0ICAweDAwMDA3ZmZmZTk3YzVmYzIgaW4gZ190aHJlYWRfcG9vbF93YWl0X2Zvcl9uZXdfcG9v
bCAoKQogICAgYXQgZ3RocmVhZHBvb2wuYzoxNjcKICAgICAgICBwb29sID0gMHg3MzZjZjAKICAg
ICAgICBsb2NhbF93YWtldXBfdGhyZWFkX3NlcmlhbCA9IDMyNzY3CiAgICAgICAgbG9jYWxfbWF4
X3VudXNlZF90aHJlYWRzID0gMgogICAgICAgIGxvY2FsX21heF9pZGxlX3RpbWUgPSAxNTAwMAog
ICAgICAgIGxhc3Rfd2FrZXVwX3RocmVhZF9zZXJpYWwgPSAwCiAgICAgICAgaGF2ZV9yZWxheWVk
X3RocmVhZF9tYXJrZXIgPSAwCiM1ICAweDAwMDA3ZmZmZTk3YzYyN2YgaW4gZ190aHJlYWRfcG9v
bF90aHJlYWRfcHJveHkgKGRhdGE9MHg3MzZjOTApCiAgICBhdCBndGhyZWFkcG9vbC5jOjM2NAog
ICAgICAgIGZyZWVfcG9vbCA9IDAKICAgICAgICB0YXNrID0gMHgwCiAgICAgICAgcG9vbCA9IDB4
NzM2YzkwCiM2ICAweDAwMDA3ZmZmZTk3YzViY2UgaW4gZ190aHJlYWRfcHJveHkgKGRhdGE9MHg5
N2UxOTApIGF0IGd0aHJlYWQuYzo3NjQKICAgICAgICB0aHJlYWQgPSAweDk3ZTE5MAogICAgICAg
IF9fZnVuY19fID0gImdfdGhyZWFkX3Byb3h5IgojNyAgMHgwMDAwN2ZmZmU4YzlmNTU1IGluIHN0
YXJ0X3RocmVhZCAoYXJnPTB4N2ZmZjg3ZmZkNzAwKQogICAgYXQgcHRocmVhZF9jcmVhdGUuYzoz
MzMKICAgICAgICBfX3JlcyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHBkID0gMHg3ZmZmODdm
ZmQ3MDAKICAgICAgICBub3cgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICB1bndpbmRfYnVmID0g
e2NhbmNlbF9qbXBfYnVmID0ge3tqbXBfYnVmID0gezE0MDczNTQ3NTA3ODkxMiwgCiAgICAgICAg
ICAgICAgICA4MzY1OTY3NzQ1NDIxNzIwMjQ2LCAxNDA3Mzc0ODgzNDEzMjcsIDE0MDczNTQ3NTA3
ODkxMiwgCiAgICAgICAgICAgICAgICA4Mzg4NjA4LCAwLCAtODM2NTczOTA0NTM3MTk4NzI3NCwg
LTgzNjU5NDM0MzU2MDA0MTQwMjZ9LCAKICAgICAgICAgICAgICBtYXNrX3dhc19zYXZlZCA9IDB9
fSwgcHJpdiA9IHtwYWQgPSB7MHgwLCAweDAsIDB4MCwgMHgwfSwgCiAgICAgICAgICAgIGRhdGEg
PSB7cHJldiA9IDB4MCwgY2xlYW51cCA9IDB4MCwgY2FuY2VsdHlwZSA9IDB9fX0KICAgICAgICBu
b3RfZmlyc3RfY2FsbCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHBhZ2VzaXplX20xID0gPG9w
dGltaXplZCBvdXQ+CiAgICAgICAgc3AgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBmcmVlc2l6
ZSA9IDxvcHRpbWl6ZWQgb3V0PgojOCAgMHgwMDAwN2ZmZmU4OWQ5ZjNkIGluIGNsb25lICgpCiAg
ICBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzoxMDkKTm8gbG9j
YWxzLgoKVGhyZWFkIDcgKFRocmVhZCAweDdmZmY4NzdmYzcwMCAoTFdQIDgwMjUpKToKIzAgIDB4
MDAwMDdmZmZlOGNhN2M3ZCBpbiBuYW5vc2xlZXAgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c2Nh
bGwtdGVtcGxhdGUuUzo4MQpObyBsb2NhbHMuCiMxICAweDAwMDA3ZmZmZWU0ZmZhZjQgaW4gc3Rk
Ojp0aGlzX3RocmVhZDo6c2xlZXBfZm9yPGxvbmcsIHN0ZDo6cmF0aW88MWwsIDEwMDBsPiA+IChf
X3J0aW1lPS4uLikKICAgIGF0IC91c3IvYmluLy4uL2xpYi9nY2MveDg2XzY0LXJlZGhhdC1saW51
eC81LjEuMS8uLi8uLi8uLi8uLi9pbmNsdWRlL2MrKy81LjEuMS90aHJlYWQ6MjkyCiAgICAgICAg
X19zID0ge19fciA9IDB9CiAgICAgICAgX19ucyA9IHtfX3IgPSA1MTIwMDAwMDB9CiAgICAgICAg
X190cyA9IHt0dl9zZWMgPSAwLCB0dl9uc2VjID0gNTEyMDAwMDAwfQojMiAgMHgwMDAwN2ZmZmVl
NGY5MWJiIGluIGJtYWxsb2M6OnNsZWVwIChsb2NrPS4uLiwgZHVyYXRpb249Li4uKQogICAgYXQg
Li4vLi4vU291cmNlL2JtYWxsb2MvYm1hbGxvYy9TdGF0aWNNdXRleC5oOjY0Ck5vIGxvY2Fscy4K
IzMgIDB4MDAwMDdmZmZlZTRmOGY3ZCBpbiBibWFsbG9jOjp3YWl0VW50aWxGYWxzZSAobG9jaz0u
Li4sIAogICAgc2xlZXBEdXJhdGlvbj0uLi4sIGNvbmRpdGlvbj1AMHg3ZmZmZWViNjJmYTg6IHRy
dWUpCiAgICBhdCAuLi8uLi9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL1N0YXRpY011dGV4Lmg6NzQK
Tm8gbG9jYWxzLgojNCAgMHgwMDAwN2ZmZmVlNGY4ZWQ5IGluIGJtYWxsb2M6OkhlYXA6OnNjYXZl
bmdlICgKICAgIHRoaXM9MHg3ZmZmZWViNjBlMzggPGJtYWxsb2M6OlBlclByb2Nlc3M8Ym1hbGxv
Yzo6SGVhcD46OnNfbWVtb3J5PiwgCiAgICBsb2NrPS4uLiwgc2xlZXBEdXJhdGlvbj0uLi4pIGF0
IC4uLy4uL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvSGVhcC5jcHA6ODkKTm8gbG9jYWxzLgojNSAg
MHgwMDAwN2ZmZmVlNGY4YWYwIGluIGJtYWxsb2M6OkhlYXA6OmNvbmN1cnJlbnRTY2F2ZW5nZSAo
CiAgICB0aGlzPTB4N2ZmZmVlYjYwZTM4IDxibWFsbG9jOjpQZXJQcm9jZXNzPGJtYWxsb2M6Okhl
YXA+OjpzX21lbW9yeT4pCiAgICBhdCAuLi8uLi9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0hlYXAu
Y3BwOjg0CiAgICAgICAgbG9jayA9IHsKICAgICAgICAgIF9NX2RldmljZSA9IDB4N2ZmZmVlYjYw
ZTJjIDxibWFsbG9jOjpQZXJQcm9jZXNzPGJtYWxsb2M6OkhlYXA+OjpzX211dGV4PiwgX01fb3du
cyA9IGZhbHNlfQojNiAgMHgwMDAwN2ZmZmVlNGZjOTQyIGluIGJtYWxsb2M6OkFzeW5jVGFzazxi
bWFsbG9jOjpIZWFwLCB2b2lkIChibWFsbG9jOjpIZWFwOjoqKSgpPjo6ZW50cnlQb2ludCAoCiAg
ICB0aGlzPTB4N2ZmZmVlYjYzMjA4IDxibWFsbG9jOjpQZXJQcm9jZXNzPGJtYWxsb2M6OkhlYXA+
OjpzX21lbW9yeSs5MTY4PikKICAgIGF0IC4uLy4uL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvQXN5
bmNUYXNrLmg6MTMxCiAgICAgICAgZXhwZWN0ZWRTdGF0ZSA9IGJtYWxsb2M6OkFzeW5jVGFzazxi
bWFsbG9jOjpIZWFwLCB2b2lkIChibWFsbG9jOjpIZWFwOjoqKSgpPjo6U2lnbmFsZWQKIzcgIDB4
MDAwMDdmZmZlZTRmYzg4NSBpbiBibWFsbG9jOjpBc3luY1Rhc2s8Ym1hbGxvYzo6SGVhcCwgdm9p
ZCAoYm1hbGxvYzo6SGVhcDo6KikoKT46OnB0aHJlYWRFbnRyeVBvaW50ICgKICAgIGFzeW5jVGFz
az0weDdmZmZlZWI2MzIwOCA8Ym1hbGxvYzo6UGVyUHJvY2VzczxibWFsbG9jOjpIZWFwPjo6c19t
ZW1vcnkrOTE2OD4pIGF0IC4uLy4uL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvQXN5bmNUYXNrLmg6
MTIxCk5vIGxvY2Fscy4KIzggIDB4MDAwMDdmZmZlOGM5ZjU1NSBpbiBzdGFydF90aHJlYWQgKGFy
Zz0weDdmZmY4NzdmYzcwMCkKICAgIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzMzCiAgICAgICAgX19y
ZXMgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwZCA9IDB4N2ZmZjg3N2ZjNzAwCiAgICAgICAg
bm93ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgdW53aW5kX2J1ZiA9IHtjYW5jZWxfam1wX2J1
ZiA9IHt7am1wX2J1ZiA9IHsxNDA3MzU0NjY2ODYyMDgsIAogICAgICAgICAgICAgICAgODM2NTk2
Nzc0NTQyMTcyMDI0NiwgMTQwNzM2NjU3ODc1NzExLCAxNDA3MzU0NjY2ODYyMDgsIAogICAgICAg
ICAgICAgICAgODM4ODYwOCwgMCwgLTgzNjU3Mzc5NDUzMjM0ODg1ODYsIC04MzY1OTQzNDM1NjAw
NDE0MDI2fSwgCiAgICAgICAgICAgICAgbWFza193YXNfc2F2ZWQgPSAwfX0sIHByaXYgPSB7cGFk
ID0gezB4MCwgMHgwLCAweDAsIDB4MH0sIAogICAgICAgICAgICBkYXRhID0ge3ByZXYgPSAweDAs
IGNsZWFudXAgPSAweDAsIGNhbmNlbHR5cGUgPSAwfX19CiAgICAgICAgbm90X2ZpcnN0X2NhbGwg
PSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwYWdlc2l6ZV9tMSA9IDxvcHRpbWl6ZWQgb3V0Pgog
ICAgICAgIHNwID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgZnJlZXNpemUgPSA8b3B0aW1pemVk
IG91dD4KIzkgIDB4MDAwMDdmZmZlODlkOWYzZCBpbiBjbG9uZSAoKQogICAgYXQgLi4vc3lzZGVw
cy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTA5Ck5vIGxvY2Fscy4KClRocmVhZCA2
IChUaHJlYWQgMHg3ZmZmODZmZmI3MDAgKExXUCA4MDI2KSk6CiMwICAweDAwMDA3ZmZmZTg5Y2U2
NmQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCk5v
IGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdhOTE0NyBpbiBnX3BvbGwgKGZkcz0weDdmZmY2ODAw
MTBlMCwgbmZkcz0yLCB0aW1lb3V0PS0xKQogICAgYXQgZ3BvbGwuYzoxMjQKTm8gbG9jYWxzLgoj
MiAgMHgwMDAwN2ZmZmU5Nzk4MTIzIGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKGNvbnRleHQ9MHg4
NzU4MDAsIHRpbWVvdXQ9LTEsIAogICAgcHJpb3JpdHk9MjE0NzQ4MzY0NywgZmRzPTB4N2ZmZjY4
MDAxMGUwLCBuX2Zkcz0yKSBhdCBnbWFpbi5jOjQxMDMKICAgICAgICBwb2xsX2Z1bmMgPSAweDdm
ZmZlOTdhOTEyMCA8Z19wb2xsPgojMyAgMHgwMDAwN2ZmZmU5Nzk3YWI2IGluIGdfbWFpbl9jb250
ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg4NzU4MDAsIGJsb2NrPTEsIAogICAgZGlzcGF0Y2g9MSwg
c2VsZj0weDgzMjJjMCkgYXQgZ21haW4uYzozODAzCiAgICAgICAgbWF4X3ByaW9yaXR5ID0gMjE0
NzQ4MzY0NwogICAgICAgIHRpbWVvdXQgPSAtMQogICAgICAgIHNvbWVfcmVhZHkgPSAwCiAgICAg
ICAgbmZkcyA9IDIKICAgICAgICBhbGxvY2F0ZWRfbmZkcyA9IDIKICAgICAgICBmZHMgPSAweDdm
ZmY2ODAwMTBlMAojNCAgMHgwMDAwN2ZmZmU5Nzk3ZjA3IGluIGdfbWFpbl9sb29wX3J1biAobG9v
cD0weDdjNzliMCkgYXQgZ21haW4uYzo0MDAyCiAgICAgICAgc2VsZiA9IDB4ODMyMmMwCiAgICAg
ICAgX19mdW5jX18gPSAiZ19tYWluX2xvb3BfcnVuIgojNSAgMHgwMDAwN2ZmZmY0ODYzYmFhIGlu
IFdURjo6V29ya1F1ZXVlOjpwbGF0Zm9ybUluaXRpYWxpemUoY2hhciBjb25zdCosIFdURjo6V29y
a1F1ZXVlOjpUeXBlLCBXVEY6OldvcmtRdWV1ZTo6UU9TKTo6JF8wOjpvcGVyYXRvcigpKCkgY29u
c3QgKHRoaXM9MHg3ZTU3YjApCiAgICBhdCAuLi8uLi9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtR
dWV1ZUdMaWIuY3BwOjYxCk5vIGxvY2Fscy4KIzYgIDB4MDAwMDdmZmZmNDg2Mzk1ZCBpbiBzdGQ6
Ol9GdW5jdGlvbl9oYW5kbGVyPHZvaWQgKCksIFdURjo6V29ya1F1ZXVlOjpwbGF0Zm9ybUluaXRp
YWxpemUoY2hhciBjb25zdCosIFdURjo6V29ya1F1ZXVlOjpUeXBlLCBXVEY6OldvcmtRdWV1ZTo6
UU9TKTo6JF8wPjo6X01faW52b2tlKHN0ZDo6X0FueV9kYXRhIGNvbnN0JikgKF9fZnVuY3Rvcj0u
Li4pCiAgICBhdCAvdXNyL2Jpbi8uLi9saWIvZ2NjL3g4Nl82NC1yZWRoYXQtbGludXgvNS4xLjEv
Li4vLi4vLi4vLi4vaW5jbHVkZS9jKysvNS4xLjEvZnVuY3Rpb25hbDoxODcxCk5vIGxvY2Fscy4K
IzcgIDB4MDAwMDdmZmZmMjFhNjk1ZSBpbiBzdGQ6OmZ1bmN0aW9uPHZvaWQgKCk+OjpvcGVyYXRv
cigpKCkgY29uc3QgKAogICAgdGhpcz0weDdmZmY4NmZmYWJjOCkKICAgIGF0IC91c3IvYmluLy4u
L2xpYi9nY2MveDg2XzY0LXJlZGhhdC1saW51eC81LjEuMS8uLi8uLi8uLi8uLi9pbmNsdWRlL2Mr
Ky81LjEuMS9mdW5jdGlvbmFsOjIyNzEKTm8gbG9jYWxzLgojOCAgMHgwMDAwN2ZmZmVlNGFiOGU1
IGluIFdURjo6dGhyZWFkRW50cnlQb2ludCAoY29udGV4dERhdGE9MHg3ZmZmY2VmZjMzNzApCiAg
ICBhdCAuLi8uLi9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwOjU4CiAgICAgICAgY29udGV4
dCA9IDB4N2ZmZmNlZmYzMzcwCiAgICAgICAgZW50cnlQb2ludCA9IHs8c3RkOjpfTWF5YmVfdW5h
cnlfb3JfYmluYXJ5X2Z1bmN0aW9uPHZvaWQ+PiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPHN0ZDo6
X0Z1bmN0aW9uX2Jhc2U+ID0ge3N0YXRpYyBfTV9tYXhfc2l6ZSA9IDE2LCAKICAgICAgICAgICAg
c3RhdGljIF9NX21heF9hbGlnbiA9IDgsIF9NX2Z1bmN0b3IgPSB7X01fdW51c2VkID0gewogICAg
ICAgICAgICAgICAgX01fb2JqZWN0ID0gMHg3ZTU3YjAsIF9NX2NvbnN0X29iamVjdCA9IDB4N2U1
N2IwLCAKICAgICAgICAgICAgICAgIF9NX2Z1bmN0aW9uX3BvaW50ZXIgPSAweDdlNTdiMCwgCiAg
ICAgICAgICAgICAgICBfTV9tZW1iZXJfcG9pbnRlciA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxl
PiwgCiAgICAgICAgICAgICAgX01fcG9kX2RhdGEgPSAiXDI2MFd+XDAwMFwwMDBcMDAwXDAwMFww
MDBcMzYwXDMxM1wzNzdcMzc3XDM3N1wxNzdcMDAwIn0sIAogICAgICAgICAgICBfTV9tYW5hZ2Vy
ID0gMHg3ZmZmZjQ4NjM5NzAgPHN0ZDo6X0Z1bmN0aW9uX2Jhc2U6Ol9CYXNlX21hbmFnZXI8V1RG
OjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVl
dWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjokXzA+OjpfTV9tYW5hZ2VyKHN0ZDo6X0Fu
eV9kYXRhJiwgc3RkOjpfQW55X2RhdGEgY29uc3QmLCBzdGQ6Ol9NYW5hZ2VyX29wZXJhdGlvbik+
fSwgCiAgICAgICAgICBfTV9pbnZva2VyID0gMHg3ZmZmZjQ4NjM5NDAgPHN0ZDo6X0Z1bmN0aW9u
X2hhbmRsZXI8dm9pZCAoKSwgV1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjaGFy
IGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjokXzA+
OjpfTV9pbnZva2Uoc3RkOjpfQW55X2RhdGEgY29uc3QmKT59CiM5ICAweDAwMDA3ZmZmZWU0ZTc1
MzcgaW4gV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50IChwYXJhbT0weDdmZmZjZWZmYTBiMCkKICAg
IGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoxNzAKICAgICAg
ICBpbnZvY2F0aW9uID0gc3RkOjp1bmlxdWVfcHRyPFdURjo6VGhyZWFkRnVuY3Rpb25JbnZvY2F0
aW9uPiBjb250YWluaW5nIDB4N2ZmZmNlZmZhMGIwCiMxMCAweDAwMDA3ZmZmZThjOWY1NTUgaW4g
c3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmODZmZmI3MDApCiAgICBhdCBwdGhyZWFkX2NyZWF0ZS5j
OjMzMwogICAgICAgIF9fcmVzID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgcGQgPSAweDdmZmY4
NmZmYjcwMAogICAgICAgIG5vdyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHVud2luZF9idWYg
PSB7Y2FuY2VsX2ptcF9idWYgPSB7e2ptcF9idWYgPSB7MTQwNzM1NDU4MjkzNTA0LCAKICAgICAg
ICAgICAgICAgIDgzNjU5Njc3NDU0MjE3MjAyNDYsIDE0MDczNzQ4ODM0MTQ1NSwgMTQwNzM1NDU4
MjkzNTA0LCAKICAgICAgICAgICAgICAgIDgzODg2MDgsIDAsIC04MzY1NzM2ODQ1Mjc0OTg5ODk4
LCAtODM2NTk0MzQzNTYwMDQxNDAyNn0sIAogICAgICAgICAgICAgIG1hc2tfd2FzX3NhdmVkID0g
MH19LCBwcml2ID0ge3BhZCA9IHsweDAsIDB4MCwgMHgwLCAweDB9LCAKICAgICAgICAgICAgZGF0
YSA9IHtwcmV2ID0gMHgwLCBjbGVhbnVwID0gMHgwLCBjYW5jZWx0eXBlID0gMH19fQogICAgICAg
IG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgcGFnZXNpemVfbTEgPSA8
b3B0aW1pemVkIG91dD4KICAgICAgICBzcCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIGZyZWVz
aXplID0gPG9wdGltaXplZCBvdXQ+CiMxMSAweDAwMDA3ZmZmZTg5ZDlmM2QgaW4gY2xvbmUgKCkK
ICAgIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjEwOQpObyBs
b2NhbHMuCgpUaHJlYWQgNSAoVGhyZWFkIDB4N2ZmZjg2N2ZhNzAwIChMV1AgODAyNykpOgojMCAg
c3lzY2FsbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvc3lzY2FsbC5T
OjM4Ck5vIGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdlYmY0MCBpbiBnX2NvbmRfd2FpdCAoY29u
ZD0weDhhMzEzOCwgbXV0ZXg9MHg4YTMxMzApCiAgICBhdCBndGhyZWFkLXBvc2l4LmM6MTM5Nwog
ICAgICAgIHNhbXBsZWQgPSA2CiMyICAweDAwMDA3ZmZmZTk3NjJlMTkgaW4gZ19hc3luY19xdWV1
ZV9wb3BfaW50ZXJuX3VubG9ja2VkIChxdWV1ZT0weDhhMzEzMCwgCiAgICB3YWl0PTEsIGVuZF90
aW1lPS0xKSBhdCBnYXN5bmNxdWV1ZS5jOjQxOQogICAgICAgIHJldHZhbCA9IDB4OGEzMTMwCiAg
ICAgICAgX19mdW5jX18gPSAiZ19hc3luY19xdWV1ZV9wb3BfaW50ZXJuX3VubG9ja2VkIgojMyAg
MHgwMDAwN2ZmZmU5NzYyZjBmIGluIGdfYXN5bmNfcXVldWVfcG9wIChxdWV1ZT0weDhhMzEzMCkK
ICAgIGF0IGdhc3luY3F1ZXVlLmM6NDUzCiAgICAgICAgcmV0dmFsID0gMHg5N2UyZDAKICAgICAg
ICBfX2Z1bmNfXyA9ICJnX2FzeW5jX3F1ZXVlX3BvcCIKIzQgIDB4MDAwMDAwMDAwMDQ4ZTBlMiBp
biBydW5faGlzdG9yeV9zZXJ2aWNlX3RocmVhZCAoc2VsZj0weDk3ZTJiMCkKICAgIGF0IGVwaHkt
aGlzdG9yeS1zZXJ2aWNlLmM6NTIyCiAgICAgICAgcHJpdiA9IDB4OTdlMjgwCiAgICAgICAgbWVz
c2FnZSA9IDB4MAogICAgICAgIF9fZnVuY19fID0gInJ1bl9oaXN0b3J5X3NlcnZpY2VfdGhyZWFk
IgojNSAgMHgwMDAwN2ZmZmU5N2M1YmNlIGluIGdfdGhyZWFkX3Byb3h5IChkYXRhPTB4OTdlMmQw
KSBhdCBndGhyZWFkLmM6NzY0CiAgICAgICAgdGhyZWFkID0gMHg5N2UyZDAKICAgICAgICBfX2Z1
bmNfXyA9ICJnX3RocmVhZF9wcm94eSIKIzYgIDB4MDAwMDdmZmZlOGM5ZjU1NSBpbiBzdGFydF90
aHJlYWQgKGFyZz0weDdmZmY4NjdmYTcwMCkKICAgIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzMzCiAg
ICAgICAgX19yZXMgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwZCA9IDB4N2ZmZjg2N2ZhNzAw
CiAgICAgICAgbm93ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgdW53aW5kX2J1ZiA9IHtjYW5j
ZWxfam1wX2J1ZiA9IHt7am1wX2J1ZiA9IHsxNDA3MzU0NDk5MDA4MDAsIAogICAgICAgICAgICAg
ICAgODM2NTk2Nzc0NTQyMTcyMDI0NiwgMTQwNzM3NDg4MzM4MTQzLCAxNDA3MzU0NDk5MDA4MDAs
IAogICAgICAgICAgICAgICAgODM4ODYwOCwgMCwgLTgzNjU3MzU3NDUyMjY0OTEyMTAsIC04MzY1
OTQzNDM1NjAwNDE0MDI2fSwgCiAgICAgICAgICAgICAgbWFza193YXNfc2F2ZWQgPSAwfX0sIHBy
aXYgPSB7cGFkID0gezB4MCwgMHgwLCAweDAsIDB4MH0sIAogICAgICAgICAgICBkYXRhID0ge3By
ZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNhbmNlbHR5cGUgPSAwfX19CiAgICAgICAgbm90X2Zp
cnN0X2NhbGwgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwYWdlc2l6ZV9tMSA9IDxvcHRpbWl6
ZWQgb3V0PgogICAgICAgIHNwID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgZnJlZXNpemUgPSA8
b3B0aW1pemVkIG91dD4KIzcgIDB4MDAwMDdmZmZlODlkOWYzZCBpbiBjbG9uZSAoKQogICAgYXQg
Li4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTA5Ck5vIGxvY2Fscy4K
ClRocmVhZCA0IChUaHJlYWQgMHg3ZmZmODVmZjk3MDAgKExXUCA4MDM2KSk6CiMwICAweDAwMDA3
ZmZmZTg5Y2U2NmQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0
ZS5TOjgxCk5vIGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdhOTE0NyBpbiBnX3BvbGwgKGZkcz0w
eDdmZmY2MDAwMTBjMCwgbmZkcz0xLCB0aW1lb3V0PS0xKQogICAgYXQgZ3BvbGwuYzoxMjQKTm8g
bG9jYWxzLgojMiAgMHgwMDAwN2ZmZmU5Nzk4MTIzIGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKGNv
bnRleHQ9MHg4M2FjNDAsIHRpbWVvdXQ9LTEsIAogICAgcHJpb3JpdHk9MjE0NzQ4MzY0NywgZmRz
PTB4N2ZmZjYwMDAxMGMwLCBuX2Zkcz0xKSBhdCBnbWFpbi5jOjQxMDMKICAgICAgICBwb2xsX2Z1
bmMgPSAweDdmZmZlOTdhOTEyMCA8Z19wb2xsPgojMyAgMHgwMDAwN2ZmZmU5Nzk3YWI2IGluIGdf
bWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg4M2FjNDAsIGJsb2NrPTEsIAogICAgZGlz
cGF0Y2g9MSwgc2VsZj0weDc4YzU5MCkgYXQgZ21haW4uYzozODAzCiAgICAgICAgbWF4X3ByaW9y
aXR5ID0gMjE0NzQ4MzY0NwogICAgICAgIHRpbWVvdXQgPSAtMQogICAgICAgIHNvbWVfcmVhZHkg
PSAzMjc2NwogICAgICAgIG5mZHMgPSAxCiAgICAgICAgYWxsb2NhdGVkX25mZHMgPSAxCiAgICAg
ICAgZmRzID0gMHg3ZmZmNjAwMDEwYzAKIzQgIDB4MDAwMDdmZmZlOTc5N2JhNSBpbiBnX21haW5f
Y29udGV4dF9pdGVyYXRpb24gKGNvbnRleHQ9MHg4M2FjNDAsIAogICAgbWF5X2Jsb2NrPTEpIGF0
IGdtYWluLmM6Mzg2OQogICAgICAgIHJldHZhbCA9IDEKIzUgIDB4MDAwMDdmZmZkNTU4M2VmZSBp
biBkY29uZl9nZGJ1c193b3JrZXJfdGhyZWFkICh1c2VyX2RhdGE9MHg4M2FjNDApCiAgICBhdCBk
Y29uZi1nZGJ1cy10aHJlYWQuYzo4MgogICAgICAgIGNvbnRleHQgPSAweDgzYWM0MAojNiAgMHgw
MDAwN2ZmZmU5N2M1YmNlIGluIGdfdGhyZWFkX3Byb3h5IChkYXRhPTB4NzhjNTkwKSBhdCBndGhy
ZWFkLmM6NzY0CiAgICAgICAgdGhyZWFkID0gMHg3OGM1OTAKICAgICAgICBfX2Z1bmNfXyA9ICJn
X3RocmVhZF9wcm94eSIKIzcgIDB4MDAwMDdmZmZlOGM5ZjU1NSBpbiBzdGFydF90aHJlYWQgKGFy
Zz0weDdmZmY4NWZmOTcwMCkKICAgIGF0IHB0aHJlYWRfY3JlYXRlLmM6MzMzCiAgICAgICAgX19y
ZXMgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwZCA9IDB4N2ZmZjg1ZmY5NzAwCiAgICAgICAg
bm93ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgdW53aW5kX2J1ZiA9IHtjYW5jZWxfam1wX2J1
ZiA9IHt7am1wX2J1ZiA9IHsxNDA3MzU0NDE1MDgwOTYsIAogICAgICAgICAgICAgICAgODM2NTk2
Nzc0NTQyMTcyMDI0NiwgMTQwNzM3NDg4MzM4MDMxLCAxNDA3MzU0NDE1MDgwOTYsIAogICAgICAg
ICAgICAgICAgODM4ODYwOCwgMCwgLTgzNjU3NDM0NDEyNzEwMTQ3MzAsIC04MzY1OTQzNDM1NjAw
NDE0MDI2fSwgCiAgICAgICAgICAgICAgbWFza193YXNfc2F2ZWQgPSAwfX0sIHByaXYgPSB7cGFk
ID0gezB4MCwgMHgwLCAweDAsIDB4MH0sIAogICAgICAgICAgICBkYXRhID0ge3ByZXYgPSAweDAs
IGNsZWFudXAgPSAweDAsIGNhbmNlbHR5cGUgPSAwfX19CiAgICAgICAgbm90X2ZpcnN0X2NhbGwg
PSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwYWdlc2l6ZV9tMSA9IDxvcHRpbWl6ZWQgb3V0Pgog
ICAgICAgIHNwID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgZnJlZXNpemUgPSA8b3B0aW1pemVk
IG91dD4KIzggIDB4MDAwMDdmZmZlODlkOWYzZCBpbiBjbG9uZSAoKQogICAgYXQgLi4vc3lzZGVw
cy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTA5Ck5vIGxvY2Fscy4KClRocmVhZCAz
IChUaHJlYWQgMHg3ZmZmODU3Zjg3MDAgKExXUCA4MDQxKSk6CiMwICAweDAwMDA3ZmZmZTg5Y2U2
NmQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2FsbC10ZW1wbGF0ZS5TOjgxCk5v
IGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdhOTE0NyBpbiBnX3BvbGwgKGZkcz0weDdmZmY2NDAw
MTBlMCwgbmZkcz0yLCB0aW1lb3V0PS0xKQogICAgYXQgZ3BvbGwuYzoxMjQKTm8gbG9jYWxzLgoj
MiAgMHgwMDAwN2ZmZmU5Nzk4MTIzIGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKGNvbnRleHQ9MHg3
Y2Y3YTAsIHRpbWVvdXQ9LTEsIAogICAgcHJpb3JpdHk9MjE0NzQ4MzY0NywgZmRzPTB4N2ZmZjY0
MDAxMGUwLCBuX2Zkcz0yKSBhdCBnbWFpbi5jOjQxMDMKICAgICAgICBwb2xsX2Z1bmMgPSAweDdm
ZmZlOTdhOTEyMCA8Z19wb2xsPgojMyAgMHgwMDAwN2ZmZmU5Nzk3YWI2IGluIGdfbWFpbl9jb250
ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg3Y2Y3YTAsIGJsb2NrPTEsIAogICAgZGlzcGF0Y2g9MSwg
c2VsZj0weDEwOWI0ZjApIGF0IGdtYWluLmM6MzgwMwogICAgICAgIG1heF9wcmlvcml0eSA9IDIx
NDc0ODM2NDcKICAgICAgICB0aW1lb3V0ID0gLTEKICAgICAgICBzb21lX3JlYWR5ID0gMAogICAg
ICAgIG5mZHMgPSAyCiAgICAgICAgYWxsb2NhdGVkX25mZHMgPSAyCiAgICAgICAgZmRzID0gMHg3
ZmZmNjQwMDEwZTAKIzQgIDB4MDAwMDdmZmZlOTc5N2YwNyBpbiBnX21haW5fbG9vcF9ydW4gKGxv
b3A9MHg5ZjdhMDApIGF0IGdtYWluLmM6NDAwMgogICAgICAgIHNlbGYgPSAweDEwOWI0ZjAKICAg
ICAgICBfX2Z1bmNfXyA9ICJnX21haW5fbG9vcF9ydW4iCiM1ICAweDAwMDA3ZmZmZjQ4NjNiYWEg
aW4gV1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpX
b3JrUXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjokXzA6Om9wZXJhdG9yKCkoKSBj
b25zdCAodGhpcz0weDk5ZDNlMCkKICAgIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL2dsaWIvV29y
a1F1ZXVlR0xpYi5jcHA6NjEKTm8gbG9jYWxzLgojNiAgMHgwMDAwN2ZmZmY0ODYzOTVkIGluIHN0
ZDo6X0Z1bmN0aW9uX2hhbmRsZXI8dm9pZCAoKSwgV1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5p
dGlhbGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVl
OjpRT1MpOjokXzA+OjpfTV9pbnZva2Uoc3RkOjpfQW55X2RhdGEgY29uc3QmKSAoX19mdW5jdG9y
PS4uLikKICAgIGF0IC91c3IvYmluLy4uL2xpYi9nY2MveDg2XzY0LXJlZGhhdC1saW51eC81LjEu
MS8uLi8uLi8uLi8uLi9pbmNsdWRlL2MrKy81LjEuMS9mdW5jdGlvbmFsOjE4NzEKTm8gbG9jYWxz
LgojNyAgMHgwMDAwN2ZmZmYyMWE2OTVlIGluIHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT46Om9wZXJh
dG9yKCkoKSBjb25zdCAoCiAgICB0aGlzPTB4N2ZmZjg1N2Y3YmM4KQogICAgYXQgL3Vzci9iaW4v
Li4vbGliL2djYy94ODZfNjQtcmVkaGF0LWxpbnV4LzUuMS4xLy4uLy4uLy4uLy4uL2luY2x1ZGUv
YysrLzUuMS4xL2Z1bmN0aW9uYWw6MjI3MQpObyBsb2NhbHMuCiM4ICAweDAwMDA3ZmZmZWU0YWI4
ZTUgaW4gV1RGOjp0aHJlYWRFbnRyeVBvaW50IChjb250ZXh0RGF0YT0weDdmZmZjZWZmMzQxMCkK
ICAgIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHA6NTgKICAgICAgICBjb250
ZXh0ID0gMHg3ZmZmY2VmZjM0MTAKICAgICAgICBlbnRyeVBvaW50ID0gezxzdGQ6Ol9NYXliZV91
bmFyeV9vcl9iaW5hcnlfZnVuY3Rpb248dm9pZD4+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8c3Rk
OjpfRnVuY3Rpb25fYmFzZT4gPSB7c3RhdGljIF9NX21heF9zaXplID0gMTYsIAogICAgICAgICAg
ICBzdGF0aWMgX01fbWF4X2FsaWduID0gOCwgX01fZnVuY3RvciA9IHtfTV91bnVzZWQgPSB7CiAg
ICAgICAgICAgICAgICBfTV9vYmplY3QgPSAweDk5ZDNlMCwgX01fY29uc3Rfb2JqZWN0ID0gMHg5
OWQzZTAsIAogICAgICAgICAgICAgICAgX01fZnVuY3Rpb25fcG9pbnRlciA9IDB4OTlkM2UwLCAK
ICAgICAgICAgICAgICAgIF9NX21lbWJlcl9wb2ludGVyID0gPGVycm9yIHJlYWRpbmcgdmFyaWFi
bGU+LCAKICAgICAgICAgICAgICBfTV9wb2RfZGF0YSA9ICJcMzQw05lcMDAwXDAwMFwwMDBcMDAw
XDAwMFwwMDBcMzEzXDM3N1wzNzdcMzc3XDE3N1wwMDAifSwgCiAgICAgICAgICAgIF9NX21hbmFn
ZXIgPSAweDdmZmZmNDg2Mzk3MCA8c3RkOjpfRnVuY3Rpb25fYmFzZTo6X0Jhc2VfbWFuYWdlcjxX
VEY6OldvcmtRdWV1ZTo6cGxhdGZvcm1Jbml0aWFsaXplKGNoYXIgY29uc3QqLCBXVEY6OldvcmtR
dWV1ZTo6VHlwZSwgV1RGOjpXb3JrUXVldWU6OlFPUyk6OiRfMD46Ol9NX21hbmFnZXIoc3RkOjpf
QW55X2RhdGEmLCBzdGQ6Ol9BbnlfZGF0YSBjb25zdCYsIHN0ZDo6X01hbmFnZXJfb3BlcmF0aW9u
KT59LCAKICAgICAgICAgIF9NX2ludm9rZXIgPSAweDdmZmZmNDg2Mzk0MCA8c3RkOjpfRnVuY3Rp
b25faGFuZGxlcjx2b2lkICgpLCBXVEY6OldvcmtRdWV1ZTo6cGxhdGZvcm1Jbml0aWFsaXplKGNo
YXIgY29uc3QqLCBXVEY6OldvcmtRdWV1ZTo6VHlwZSwgV1RGOjpXb3JrUXVldWU6OlFPUyk6OiRf
MD46Ol9NX2ludm9rZShzdGQ6Ol9BbnlfZGF0YSBjb25zdCYpPn0KIzkgIDB4MDAwMDdmZmZlZTRl
NzUzNyBpbiBXVEY6Ond0ZlRocmVhZEVudHJ5UG9pbnQgKHBhcmFtPTB4N2ZmZmNlZmZhMGQwKQog
ICAgYXQgLi4vLi4vU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwOjE3MAogICAg
ICAgIGludm9jYXRpb24gPSBzdGQ6OnVuaXF1ZV9wdHI8V1RGOjpUaHJlYWRGdW5jdGlvbkludm9j
YXRpb24+IGNvbnRhaW5pbmcgMHg3ZmZmY2VmZmEwZDAKIzEwIDB4MDAwMDdmZmZlOGM5ZjU1NSBp
biBzdGFydF90aHJlYWQgKGFyZz0weDdmZmY4NTdmODcwMCkKICAgIGF0IHB0aHJlYWRfY3JlYXRl
LmM6MzMzCiAgICAgICAgX19yZXMgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwZCA9IDB4N2Zm
Zjg1N2Y4NzAwCiAgICAgICAgbm93ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgdW53aW5kX2J1
ZiA9IHtjYW5jZWxfam1wX2J1ZiA9IHt7am1wX2J1ZiA9IHsxNDA3MzU0MzMxMTUzOTIsIAogICAg
ICAgICAgICAgICAgODM2NTk2Nzc0NTQyMTcyMDI0NiwgMTQwNzM3NDg4MzQxMjE1LCAxNDA3MzU0
MzMxMTUzOTIsIAogICAgICAgICAgICAgICAgODM4ODYwOCwgMCwgLTgzNjU3NDIzNDk4MTI0NTA2
MzQsIC04MzY1OTQzNDM1NjAwNDE0MDI2fSwgCiAgICAgICAgICAgICAgbWFza193YXNfc2F2ZWQg
PSAwfX0sIHByaXYgPSB7cGFkID0gezB4MCwgMHgwLCAweDAsIDB4MH0sIAogICAgICAgICAgICBk
YXRhID0ge3ByZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNhbmNlbHR5cGUgPSAwfX19CiAgICAg
ICAgbm90X2ZpcnN0X2NhbGwgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBwYWdlc2l6ZV9tMSA9
IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHNwID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgZnJl
ZXNpemUgPSA8b3B0aW1pemVkIG91dD4KIzExIDB4MDAwMDdmZmZlODlkOWYzZCBpbiBjbG9uZSAo
KQogICAgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lLlM6MTA5Ck5v
IGxvY2Fscy4KClRocmVhZCAyIChUaHJlYWQgMHg3ZmZmY2NmZmM3MDAgKExXUCA4MDIwKSk6CiMw
ICAweDAwMDA3ZmZmZTg5Y2U2NmQgaW4gcG9sbCAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzY2Fs
bC10ZW1wbGF0ZS5TOjgxCk5vIGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZlOTdhOTE0NyBpbiBnX3Bv
bGwgKGZkcz0weDdmZmY3MDAwMTBlMCwgbmZkcz0xLCB0aW1lb3V0PS0xKQogICAgYXQgZ3BvbGwu
YzoxMjQKTm8gbG9jYWxzLgojMiAgMHgwMDAwN2ZmZmU5Nzk4MTIzIGluIGdfbWFpbl9jb250ZXh0
X3BvbGwgKGNvbnRleHQ9MHg4M2MwNjAsIHRpbWVvdXQ9LTEsIAogICAgcHJpb3JpdHk9MjE0NzQ4
MzY0NywgZmRzPTB4N2ZmZjcwMDAxMGUwLCBuX2Zkcz0xKSBhdCBnbWFpbi5jOjQxMDMKICAgICAg
ICBwb2xsX2Z1bmMgPSAweDdmZmZlOTdhOTEyMCA8Z19wb2xsPgojMyAgMHgwMDAwN2ZmZmU5Nzk3
YWI2IGluIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg4M2MwNjAsIGJsb2NrPTEs
IAogICAgZGlzcGF0Y2g9MSwgc2VsZj0weDdmZmY3ODAwMTg5MCkgYXQgZ21haW4uYzozODAzCiAg
ICAgICAgbWF4X3ByaW9yaXR5ID0gMjE0NzQ4MzY0NwogICAgICAgIHRpbWVvdXQgPSAtMQogICAg
ICAgIHNvbWVfcmVhZHkgPSAxCiAgICAgICAgbmZkcyA9IDEKICAgICAgICBhbGxvY2F0ZWRfbmZk
cyA9IDEKICAgICAgICBmZHMgPSAweDdmZmY3MDAwMTBlMAojNCAgMHgwMDAwN2ZmZmU5Nzk3ZjA3
IGluIGdfbWFpbl9sb29wX3J1biAobG9vcD0weDc5MmRlMCkgYXQgZ21haW4uYzo0MDAyCiAgICAg
ICAgc2VsZiA9IDB4N2ZmZjc4MDAxODkwCiAgICAgICAgX19mdW5jX18gPSAiZ19tYWluX2xvb3Bf
cnVuIgojNSAgMHgwMDAwN2ZmZmY0ODYzYmFhIGluIFdURjo6V29ya1F1ZXVlOjpwbGF0Zm9ybUlu
aXRpYWxpemUoY2hhciBjb25zdCosIFdURjo6V29ya1F1ZXVlOjpUeXBlLCBXVEY6OldvcmtRdWV1
ZTo6UU9TKTo6JF8wOjpvcGVyYXRvcigpKCkgY29uc3QgKHRoaXM9MHg3OTJlZTApCiAgICBhdCAu
Li8uLi9Tb3VyY2UvV1RGL3d0Zi9nbGliL1dvcmtRdWV1ZUdMaWIuY3BwOjYxCk5vIGxvY2Fscy4K
IzYgIDB4MDAwMDdmZmZmNDg2Mzk1ZCBpbiBzdGQ6Ol9GdW5jdGlvbl9oYW5kbGVyPHZvaWQgKCks
IFdURjo6V29ya1F1ZXVlOjpwbGF0Zm9ybUluaXRpYWxpemUoY2hhciBjb25zdCosIFdURjo6V29y
a1F1ZXVlOjpUeXBlLCBXVEY6OldvcmtRdWV1ZTo6UU9TKTo6JF8wPjo6X01faW52b2tlKHN0ZDo6
X0FueV9kYXRhIGNvbnN0JikgKF9fZnVuY3Rvcj0uLi4pCiAgICBhdCAvdXNyL2Jpbi8uLi9saWIv
Z2NjL3g4Nl82NC1yZWRoYXQtbGludXgvNS4xLjEvLi4vLi4vLi4vLi4vaW5jbHVkZS9jKysvNS4x
LjEvZnVuY3Rpb25hbDoxODcxCk5vIGxvY2Fscy4KIzcgIDB4MDAwMDdmZmZmMjFhNjk1ZSBpbiBz
dGQ6OmZ1bmN0aW9uPHZvaWQgKCk+OjpvcGVyYXRvcigpKCkgY29uc3QgKAogICAgdGhpcz0weDdm
ZmZjY2ZmYmJjOCkKICAgIGF0IC91c3IvYmluLy4uL2xpYi9nY2MveDg2XzY0LXJlZGhhdC1saW51
eC81LjEuMS8uLi8uLi8uLi8uLi9pbmNsdWRlL2MrKy81LjEuMS9mdW5jdGlvbmFsOjIyNzEKTm8g
bG9jYWxzLgojOCAgMHgwMDAwN2ZmZmVlNGFiOGU1IGluIFdURjo6dGhyZWFkRW50cnlQb2ludCAo
Y29udGV4dERhdGE9MHg3ZmZmY2VmZjMzMjApCiAgICBhdCAuLi8uLi9Tb3VyY2UvV1RGL3d0Zi9U
aHJlYWRpbmcuY3BwOjU4CiAgICAgICAgY29udGV4dCA9IDB4N2ZmZmNlZmYzMzIwCiAgICAgICAg
ZW50cnlQb2ludCA9IHs8c3RkOjpfTWF5YmVfdW5hcnlfb3JfYmluYXJ5X2Z1bmN0aW9uPHZvaWQ+
PiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPHN0ZDo6X0Z1bmN0aW9uX2Jhc2U+ID0ge3N0YXRpYyBf
TV9tYXhfc2l6ZSA9IDE2LCAKICAgICAgICAgICAgc3RhdGljIF9NX21heF9hbGlnbiA9IDgsIF9N
X2Z1bmN0b3IgPSB7X01fdW51c2VkID0gewogICAgICAgICAgICAgICAgX01fb2JqZWN0ID0gMHg3
OTJlZTAsIF9NX2NvbnN0X29iamVjdCA9IDB4NzkyZWUwLCAKICAgICAgICAgICAgICAgIF9NX2Z1
bmN0aW9uX3BvaW50ZXIgPSAweDc5MmVlMCwgCiAgICAgICAgICAgICAgICBfTV9tZW1iZXJfcG9p
bnRlciA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxlPiwgCiAgICAgICAgICAgICAgX01fcG9kX2Rh
dGEgPSAiXDM0MC55XDAwMFwwMDBcMDAwXDAwMFwwMDBcMzIwXDMwNlwzNzdcMzc3XDM3N1wxNzdc
MDAwIn0sIAogICAgICAgICAgICBfTV9tYW5hZ2VyID0gMHg3ZmZmZjQ4NjM5NzAgPHN0ZDo6X0Z1
bmN0aW9uX2Jhc2U6Ol9CYXNlX21hbmFnZXI8V1RGOjpXb3JrUXVldWU6OnBsYXRmb3JtSW5pdGlh
bGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5cGUsIFdURjo6V29ya1F1ZXVlOjpR
T1MpOjokXzA+OjpfTV9tYW5hZ2VyKHN0ZDo6X0FueV9kYXRhJiwgc3RkOjpfQW55X2RhdGEgY29u
c3QmLCBzdGQ6Ol9NYW5hZ2VyX29wZXJhdGlvbik+fSwgCiAgICAgICAgICBfTV9pbnZva2VyID0g
MHg3ZmZmZjQ4NjM5NDAgPHN0ZDo6X0Z1bmN0aW9uX2hhbmRsZXI8dm9pZCAoKSwgV1RGOjpXb3Jr
UXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjaGFyIGNvbnN0KiwgV1RGOjpXb3JrUXVldWU6OlR5
cGUsIFdURjo6V29ya1F1ZXVlOjpRT1MpOjokXzA+OjpfTV9pbnZva2Uoc3RkOjpfQW55X2RhdGEg
Y29uc3QmKT59CiM5ICAweDAwMDA3ZmZmZWU0ZTc1MzcgaW4gV1RGOjp3dGZUaHJlYWRFbnRyeVBv
aW50IChwYXJhbT0weDdmZmZjZWZmYTA3MCkKICAgIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL1Ro
cmVhZGluZ1B0aHJlYWRzLmNwcDoxNzAKICAgICAgICBpbnZvY2F0aW9uID0gc3RkOjp1bmlxdWVf
cHRyPFdURjo6VGhyZWFkRnVuY3Rpb25JbnZvY2F0aW9uPiBjb250YWluaW5nIDB4N2ZmZmNlZmZh
MDcwCiMxMCAweDAwMDA3ZmZmZThjOWY1NTUgaW4gc3RhcnRfdGhyZWFkIChhcmc9MHg3ZmZmY2Nm
ZmM3MDApCiAgICBhdCBwdGhyZWFkX2NyZWF0ZS5jOjMzMwogICAgICAgIF9fcmVzID0gPG9wdGlt
aXplZCBvdXQ+CiAgICAgICAgcGQgPSAweDdmZmZjY2ZmYzcwMAogICAgICAgIG5vdyA9IDxvcHRp
bWl6ZWQgb3V0PgogICAgICAgIHVud2luZF9idWYgPSB7Y2FuY2VsX2ptcF9idWYgPSB7e2ptcF9i
dWYgPSB7MTQwNzM2NjMyNzAyNzIwLCAKICAgICAgICAgICAgICAgIDgzNjU5Njc3NDU0MjE3MjAy
NDYsIDE0MDczNzQ4ODM0MDE0MywgMTQwNzM2NjMyNzAyNzIwLCAKICAgICAgICAgICAgICAgIDgz
ODg2MDgsIDAsIC04MzY1ODY0Mzg5MTYwNjgyODI2LCAtODM2NTk0MzQzNTYwMDQxNDAyNn0sIAog
ICAgICAgICAgICAgIG1hc2tfd2FzX3NhdmVkID0gMH19LCBwcml2ID0ge3BhZCA9IHsweDAsIDB4
MCwgMHgwLCAweDB9LCAKICAgICAgICAgICAgZGF0YSA9IHtwcmV2ID0gMHgwLCBjbGVhbnVwID0g
MHgwLCBjYW5jZWx0eXBlID0gMH19fQogICAgICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXpl
ZCBvdXQ+CiAgICAgICAgcGFnZXNpemVfbTEgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBzcCA9
IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIGZyZWVzaXplID0gPG9wdGltaXplZCBvdXQ+CiMxMSAw
eDAwMDA3ZmZmZTg5ZDlmM2QgaW4gY2xvbmUgKCkKICAgIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2
L2xpbnV4L3g4Nl82NC9jbG9uZS5TOjEwOQpObyBsb2NhbHMuCgpUaHJlYWQgMSAoVGhyZWFkIDB4
N2ZmZmY3ZmEzYTAwIChMV1AgNzkzMikpOgojMCAgV1RGQ3Jhc2ggKCkgYXQgLi4vLi4vU291cmNl
L1dURi93dGYvQXNzZXJ0aW9ucy5jcHA6MzIxCk5vIGxvY2Fscy4KIzEgIDB4MDAwMDdmZmZmMjc2
OGNkNyBpbiB3ZWJraXRDb250ZXh0TWVudUFjdGlvbkdldEZvckNvbnRleHRNZW51SXRlbSAoCiAg
ICBtZW51SXRlbT0weDdmZmZjZWZmOTAyOCkKICAgIGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZ3RrL1dlYktpdENvbnRleHRNZW51QWN0aW9ucy5jcHA6MjI2Ck5vIGxvY2Fs
cy4KIzIgIDB4MDAwMDdmZmZmMjc2YjU2OCBpbiB3ZWJraXRfY29udGV4dF9tZW51X2l0ZW1fZ2V0
X3N0b2NrX2FjdGlvbiAoCiAgICBpdGVtPTB4MTFkOWU3MCkKICAgIGF0IC4uLy4uL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdENvbnRleHRNZW51SXRlbS5jcHA6MzAwCk5v
IGxvY2Fscy4KIzMgIDB4MDAwMDAwMDAwMDQzNDU4NCBpbiBmaW5kX2l0ZW1faW5fY29udGV4dF9t
ZW51IChjb250ZXh0X21lbnU9MHgxMTgwMjIwLCAKICAgIGFjdGlvbj1XRUJLSVRfQ09OVEVYVF9N
RU5VX0FDVElPTl9JTlBVVF9NRVRIT0RTKSBhdCBlcGh5LXdpbmRvdy5jOjE1OTkKICAgICAgICBp
dGVtID0gMHgxMWQ5ZTcwCiAgICAgICAgaXRlbXMgPSAweDhhMzVhMAogICAgICAgIGl0ZXIgPSAw
eDhhMzVhMAojNCAgMHgwMDAwMDAwMDAwNDM0ODU5IGluIHBvcHVsYXRlX2NvbnRleHRfbWVudSAo
d2ViX3ZpZXc9MHhiOTQyMzAsIAogICAgY29udGV4dF9tZW51PTB4MTE4MDIyMCwgZXZlbnQ9MHhh
M2JjNTAsIGhpdF90ZXN0X3Jlc3VsdD0weDExYmQ2MTAsIAogICAgd2luZG93PTB4OTNlNGYwKSBh
dCBlcGh5LXdpbmRvdy5jOjE2OTcKICAgICAgICBwcml2ID0gMHg5M2UxZjAKICAgICAgICBpbnB1
dF9tZXRob2RzX2l0ZW0gPSAweDAKICAgICAgICB1bmljb2RlX2l0ZW0gPSAweDAKICAgICAgICBw
bGF5X3BhdXNlX2l0ZW0gPSAweDAKICAgICAgICBtdXRlX2l0ZW0gPSAweDAKICAgICAgICB0b2dn
bGVfY29udHJvbHNfaXRlbSA9IDB4MAogICAgICAgIHRvZ2dsZV9sb29wX2l0ZW0gPSAweDAKICAg
ICAgICBmdWxsc2NyZWVuX2l0ZW0gPSAweDAKICAgICAgICBzcGVsbGluZ19ndWVzc19pdGVtcyA9
IDB4MAogICAgICAgIGVtYmVkX2V2ZW50ID0gMHg3ZmZmZmZmZmEzZjAKICAgICAgICBpc19kb2N1
bWVudCA9IDAKICAgICAgICBhcHBfbW9kZSA9IDAKICAgICAgICBpbmNvZ25pdG9fbW9kZSA9IDg4
ODI0NjQKICAgICAgICBpc19pbWFnZSA9IDAKICAgICAgICBpc19tZWRpYSA9IDAKICAgICAgICBp
c192aWRlbyA9IDAKICAgICAgICBpc19hdWRpbyA9IDAKICAgICAgICBjYW5fc2VhcmNoX3NlbGVj
dGlvbiA9IDAKICAgICAgICBzZWxlY3RlZF90ZXh0ID0gMHgwCiM1ICAweDAwMDA3ZmZmZjI4NWRl
NzYgaW4gd2Via2l0X21hcnNoYWxfQk9PTEVBTl9fT0JKRUNUX0JPWEVEX09CSkVDVCAoCiAgICBj
bG9zdXJlPTB4MTA3ZWQyMCwgcmV0dXJuX3ZhbHVlPTB4N2ZmZmZmZmZhNWQwLCBuX3BhcmFtX3Zh
bHVlcz00LCAKICAgIHBhcmFtX3ZhbHVlcz0weDdmZmZmZmZmYTZjMCwgaW52b2NhdGlvbl9oaW50
PTB4N2ZmZmZmZmZhNjAwLCAKICAgIG1hcnNoYWxfZGF0YT0weDApCiAgICBhdCBEZXJpdmVkU291
cmNlcy93ZWJraXQyZ3RrL3dlYmtpdDIvV2ViS2l0TWFyc2hhbC5jcHA6MjQ5CiAgICAgICAgY2Fs
bGJhY2sgPSAweDQzNDc3MSA8cG9wdWxhdGVfY29udGV4dF9tZW51PgogICAgICAgIGNjID0gMHgx
MDdlZDIwCiAgICAgICAgZGF0YTEgPSAweGI5NDIzMAogICAgICAgIGRhdGEyID0gMHg5M2U0ZjAK
ICAgICAgICB2X3JldHVybiA9IDMyNzY3CiM2ICAweDAwMDA3ZmZmZTlhYjYyMzkgaW4gZ19jbG9z
dXJlX2ludm9rZSAoY2xvc3VyZT0weDEwN2VkMjAsIAogICAgcmV0dXJuX3ZhbHVlPTB4N2ZmZmZm
ZmZhNWQwLCBuX3BhcmFtX3ZhbHVlcz00LCAKICAgIHBhcmFtX3ZhbHVlcz0weDdmZmZmZmZmYTZj
MCwgaW52b2NhdGlvbl9oaW50PTB4N2ZmZmZmZmZhNjAwKQogICAgYXQgZ2Nsb3N1cmUuYzo4MDEK
ICAgICAgICBtYXJzaGFsID0gMHg3ZmZmZjI4NWRkMzAgPHdlYmtpdF9tYXJzaGFsX0JPT0xFQU5f
X09CSkVDVF9CT1hFRF9PQkpFQ1QoR0Nsb3N1cmUqLCBHVmFsdWUqLCBndWludCwgR1ZhbHVlIGNv
bnN0KiwgZ3BvaW50ZXIsIGdwb2ludGVyKT4KICAgICAgICBtYXJzaGFsX2RhdGEgPSAweDAKICAg
ICAgICBpbl9tYXJzaGFsID0gMAogICAgICAgIHJlYWxfY2xvc3VyZSA9IDB4MTA3ZWQwMAogICAg
ICAgIF9fZnVuY19fID0gImdfY2xvc3VyZV9pbnZva2UiCiM3ICAweDAwMDA3ZmZmZTlhZDMwNzEg
aW4gc2lnbmFsX2VtaXRfdW5sb2NrZWRfUiAobm9kZT0weGI5MDA3MCwgZGV0YWlsPTAsIAogICAg
aW5zdGFuY2U9MHhiOTQyMzAsIGVtaXNzaW9uX3JldHVybj0weDdmZmZmZmZmYTdkMCwgCiAgICBp
bnN0YW5jZV9hbmRfcGFyYW1zPTB4N2ZmZmZmZmZhNmMwKSBhdCBnc2lnbmFsLmM6MzU4MQogICAg
ICAgIHRtcCA9IDB4MTQKICAgICAgICBoYW5kbGVyID0gMHgxMDgxNGEwCiAgICAgICAgYWNjdW11
bGF0b3IgPSAweGI5MGIxMAogICAgICAgIGVtaXNzaW9uID0ge25leHQgPSAweDAsIGluc3RhbmNl
ID0gMHhiOTQyMzAsIGloaW50ID0ge3NpZ25hbF9pZCA9IDM3MSwgCiAgICAgICAgICAgIGRldGFp
bCA9IDAsIHJ1bl90eXBlID0gR19TSUdOQUxfUlVOX0ZJUlNUfSwgc3RhdGUgPSBFTUlTU0lPTl9S
VU4sIAogICAgICAgICAgY2hhaW5fdHlwZSA9IDR9CiAgICAgICAgY2xhc3NfY2xvc3VyZSA9IDB4
YjkwYTgwCiAgICAgICAgaGxpc3QgPSAweDEwYWNjMTgKICAgICAgICBoYW5kbGVyX2xpc3QgPSAw
eDEwODE0YTAKICAgICAgICByZXR1cm5fYWNjdSA9IDB4N2ZmZmZmZmZhNWQwCiAgICAgICAgYWNj
dSA9IHtnX3R5cGUgPSAyMCwgZGF0YSA9IHt7dl9pbnQgPSAwLCB2X3VpbnQgPSAwLCB2X2xvbmcg
PSAwLCAKICAgICAgICAgICAgICB2X3Vsb25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0g
MCwgdl9mbG9hdCA9IDAsIAogICAgICAgICAgICAgIHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0g
MHgwfSwge3ZfaW50ID0gMCwgdl91aW50ID0gMCwgCiAgICAgICAgICAgICAgdl9sb25nID0gMCwg
dl91bG9uZyA9IDAsIHZfaW50NjQgPSAwLCB2X3VpbnQ2NCA9IDAsIHZfZmxvYXQgPSAwLCAKICAg
ICAgICAgICAgICB2X2RvdWJsZSA9IDAsIHZfcG9pbnRlciA9IDB4MH19fQogICAgICAgIHNpZ25h
bF9pZCA9IDM3MQogICAgICAgIG1heF9zZXF1ZW50aWFsX2hhbmRsZXJfbnVtYmVyID0gMjc4Ngog
ICAgICAgIHJldHVybl92YWx1ZV9hbHRlcmVkID0gMAojOCAgMHgwMDAwN2ZmZmU5YWQyNDNlIGlu
IGdfc2lnbmFsX2VtaXRfdmFsaXN0IChpbnN0YW5jZT0weGI5NDIzMCwgCiAgICBzaWduYWxfaWQ9
MzcxLCBkZXRhaWw9MCwgdmFyX2FyZ3M9MHg3ZmZmZmZmZmE5YjgpIGF0IGdzaWduYWwuYzozMzQ3
CiAgICAgICAgcmV0dXJuX3ZhbHVlID0ge2dfdHlwZSA9IDIwLCBkYXRhID0ge3t2X2ludCA9IDAs
IHZfdWludCA9IDAsIAogICAgICAgICAgICAgIHZfbG9uZyA9IDAsIHZfdWxvbmcgPSAwLCB2X2lu
dDY0ID0gMCwgdl91aW50NjQgPSAwLCB2X2Zsb2F0ID0gMCwgCiAgICAgICAgICAgICAgdl9kb3Vi
bGUgPSAwLCB2X3BvaW50ZXIgPSAweDB9LCB7dl9pbnQgPSAwLCB2X3VpbnQgPSAwLCAKICAgICAg
ICAgICAgICB2X2xvbmcgPSAwLCB2X3Vsb25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0g
MCwgdl9mbG9hdCA9IDAsIAogICAgICAgICAgICAgIHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0g
MHgwfX19CiAgICAgICAgZXJyb3IgPSAweDAKICAgICAgICBydHlwZSA9IDIwCiAgICAgICAgc3Rh
dGljX3Njb3BlID0gMAogICAgICAgIGluc3RhbmNlX2FuZF9wYXJhbXMgPSAweDdmZmZmZmZmYTZj
MAogICAgICAgIHNpZ25hbF9yZXR1cm5fdHlwZSA9IDIwCiAgICAgICAgcGFyYW1fdmFsdWVzID0g
MHg3ZmZmZmZmZmE2ZDgKICAgICAgICBub2RlID0gMHhiOTAwNzAKICAgICAgICBpID0gMwogICAg
ICAgIG5fcGFyYW1zID0gMwogICAgICAgIF9fZnVuY19fID0gImdfc2lnbmFsX2VtaXRfdmFsaXN0
IgojOSAgMHgwMDAwN2ZmZmU5YWQyOGVhIGluIGdfc2lnbmFsX2VtaXQgKGluc3RhbmNlPTB4Yjk0
MjMwLCBzaWduYWxfaWQ9MzcxLCAKICAgIGRldGFpbD0wKSBhdCBnc2lnbmFsLmM6MzM5MwogICAg
ICAgIHZhcl9hcmdzID0ge3tncF9vZmZzZXQgPSA0OCwgZnBfb2Zmc2V0ID0gNDgsIAogICAgICAg
ICAgICBvdmVyZmxvd19hcmdfYXJlYSA9IDB4N2ZmZmZmZmZhYTkwLCAKICAgICAgICAgICAgcmVn
X3NhdmVfYXJlYSA9IDB4N2ZmZmZmZmZhOWQwfX0KIzEwIDB4MDAwMDdmZmZmMjdiOWE4OCBpbiB3
ZWJraXRXZWJWaWV3UG9wdWxhdGVDb250ZXh0TWVudSAod2ViVmlldz0weGI5NDIzMCwgCiAgICBw
cm9wb3NlZE1lbnU9Li4uLCBoaXRUZXN0UmVzdWx0RGF0YT0uLi4sIHVzZXJEYXRhPTB4MCkKICAg
IGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcu
Y3BwOjIwOTIKICAgICAgICB3ZWJWaWV3QmFzZSA9IDB4Yjk0MjMwCiAgICAgICAgY29udGV4dE1l
bnVQcm94eSA9IDB4N2ZmZmNlZmU3ZWM4CiAgICAgICAgY29udGV4dE1lbnUgPSB7bV9wdHIgPSAw
eDExODAyMjB9CiAgICAgICAgaGl0VGVzdFJlc3VsdCA9IHttX3B0ciA9IDB4MTFiZDYxMH0KICAg
ICAgICBjb250ZXh0TWVudUV2ZW50ID0gc3RkOjp1bmlxdWVfcHRyPF9HZGtFdmVudD4gY29udGFp
bmluZyAweGEzYmM1MAogICAgICAgIHJldHVyblZhbHVlID0gMzI3NjcKICAgICAgICBjb250ZXh0
TWVudUl0ZW1zID0gezxXVEY6OlZlY3RvckJ1ZmZlcjxXZWJDb3JlOjpDb250ZXh0TWVudUl0ZW0s
IDA+PiA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNlPFdlYkNvcmU6OkNvbnRleHRNZW51SXRlbT4+
ID0gewogICAgICAgICAgICAgIG1fYnVmZmVyID0gMHg3ZmZmY2U4MWE1YTgsIG1fY2FwYWNpdHkg
PSAzNDY0NjAzMDQwLCAKICAgICAgICAgICAgICBtX3NpemUgPSAzMjc2N30sIDxObyBkYXRhIGZp
ZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+fQojMTEgMHgwMDAwN2ZmZmYyNzY5ZDU5IGluIENvbnRl
eHRNZW51Q2xpZW50OjpnZXRDb250ZXh0TWVudUZyb21Qcm9wb3NlZE1lbnUgKAogICAgdGhpcz0w
eDEwNThjMTAsIHByb3Bvc2VkTWVudT0uLi4sIGhpdFRlc3RSZXN1bHREYXRhPS4uLiwgdXNlckRh
dGE9MHgwKQogICAgYXQgLi4vLi4vU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2Vi
S2l0Q29udGV4dE1lbnVDbGllbnQuY3BwOjUxCiAgICAgICAgdmFyaWFudCA9IHttX3B0ciA9IDB4
MH0KICAgICAgICBtZW51SXRlbXMgPSB7PFdURjo6VmVjdG9yQnVmZmVyPFdlYktpdDo6V2ViQ29u
dGV4dE1lbnVJdGVtRGF0YSwgMD4+ID0gezxXVEY6OlZlY3RvckJ1ZmZlckJhc2U8V2ViS2l0OjpX
ZWJDb250ZXh0TWVudUl0ZW1EYXRhPj4gPSB7CiAgICAgICAgICAgICAgbV9idWZmZXIgPSAweDdm
ZmZjZTgxYTE0MCwgbV9jYXBhY2l0eSA9IDE1LCAKICAgICAgICAgICAgICBtX3NpemUgPSAxNX0s
IDxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+fQojMTIgMHgwMDAwN2ZmZmYyMzk4
MDlmIGluIFdlYktpdDo6V2ViUGFnZVByb3h5OjppbnRlcm5hbFNob3dDb250ZXh0TWVudSAoCiAg
ICB0aGlzPTB4N2ZmZmNlODE0MjAwLCBtZW51TG9jYXRpb249Li4uLCBjb250ZXh0TWVudUNvbnRl
eHREYXRhPS4uLiwgCiAgICBwcm9wb3NlZEl0ZW1zPS4uLiwgCiAgICBjbGllbnRFbGlnaWJpbGl0
eT1XZWJLaXQ6OldlYlBhZ2VQcm94eTo6Q29udGV4dE1lbnVDbGllbnRFbGlnaWJpbGl0eTo6RWxp
Z2libGVGb3JDbGllbnQsIHVzZXJEYXRhPS4uLikKICAgIGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOjQxNjIKICAgICAgICBhc2tDbGllbnRUb0NoYW5n
ZU1lbnUgPSB0cnVlCiAgICAgICAgcHJvcG9zZWRBUElJdGVtcyA9IHs8V1RGOjpWZWN0b3JCdWZm
ZXI8V1RGOjpSZWZQdHI8V2ViS2l0OjpXZWJDb250ZXh0TWVudUl0ZW0+LCAwPj4gPSB7PFdURjo6
VmVjdG9yQnVmZmVyQmFzZTxXVEY6OlJlZlB0cjxXZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbT4g
Pj4gPSB7bV9idWZmZXIgPSAweDdmZmZjZWZmYmEwMCwgbV9jYXBhY2l0eSA9IDE2LCAKICAgICAg
ICAgICAgICBtX3NpemUgPSAxNX0sIDxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+
fQogICAgICAgIGNsaWVudEl0ZW1zID0gezxXVEY6OlZlY3RvckJ1ZmZlcjxXVEY6OlJlZlB0cjxX
ZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbT4sIDA+PiA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNl
PFdURjo6UmVmUHRyPFdlYktpdDo6V2ViQ29udGV4dE1lbnVJdGVtPiA+PiA9IHsKICAgICAgICAg
ICAgICBtX2J1ZmZlciA9IDB4MCwgbV9jYXBhY2l0eSA9IDAsIAogICAgICAgICAgICAgIG1fc2l6
ZSA9IDB9LCA8Tm8gZGF0YSBmaWVsZHM+fSwgPE5vIGRhdGEgZmllbGRzPn0KICAgICAgICB1c2VQ
cm9wb3NlZEl0ZW1zID0gdHJ1ZQogICAgICAgIGl0ZW1zVG9TaG93ID0gQDB4N2ZmZmY3ZmQzNGY4
OiB7PFdURjo6VmVjdG9yQnVmZmVyPFdURjo6UmVmUHRyPFdlYktpdDo6V2ViQ29udGV4dE1lbnVJ
dGVtPiwgMD4+ID0gezxXVEY6OlZlY3RvckJ1ZmZlckJhc2U8V1RGOjpSZWZQdHI8V2ViS2l0OjpX
ZWJDb250ZXh0TWVudUl0ZW0+ID4+ID0ge21fYnVmZmVyID0gMHg3ZmZmZWViNjQwMDAsIG1fY2Fw
YWNpdHkgPSA0MTYwNTY2NDU2LCAKICAgICAgICAgICAgICBtX3NpemUgPSAzMjc2N30sIDxObyBk
YXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+fQojMTMgMHgwMDAwN2ZmZmYyMzk3NmFjIGlu
IFdlYktpdDo6V2ViUGFnZVByb3h5OjpzaG93Q29udGV4dE1lbnUgKAogICAgdGhpcz0weDdmZmZj
ZTgxNDIwMCwgbWVudUxvY2F0aW9uPS4uLiwgY29udGV4dE1lbnVDb250ZXh0RGF0YT0uLi4sIAog
ICAgcHJvcG9zZWRJdGVtcz0uLi4sIHVzZXJEYXRhPS4uLikKICAgIGF0IC4uLy4uL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOjQxMDAKICAgICAgICBwcm90ZWN0ID0g
e21fcHRyID0gMHg3ZmZmY2U4MTQyMDB9CiMxNCAweDAwMDA3ZmZmZjI4YzE1MGEgaW4gSVBDOjpj
YWxsTWVtYmVyRnVuY3Rpb25JbXBsPFdlYktpdDo6V2ViUGFnZVByb3h5LCB2b2lkIChXZWJLaXQ6
OldlYlBhZ2VQcm94eTo6KikoV2ViQ29yZTo6SW50UG9pbnQgY29uc3QmLCBXZWJLaXQ6OkNvbnRl
eHRNZW51Q29udGV4dERhdGEgY29uc3QmLCBXVEY6OlZlY3RvcjxXZWJLaXQ6OldlYkNvbnRleHRN
ZW51SXRlbURhdGEsIDB1bCwgV1RGOjpDcmFzaE9uT3ZlcmZsb3csIDE2dWw+IGNvbnN0JiwgV2Vi
S2l0OjpVc2VyRGF0YSBjb25zdCYpLCBzdGQ6OnR1cGxlPFdlYkNvcmU6OkludFBvaW50LCBXZWJL
aXQ6OkNvbnRleHRNZW51Q29udGV4dERhdGEsIFdURjo6VmVjdG9yPFdlYktpdDo6V2ViQ29udGV4
dE1lbnVJdGVtRGF0YSwgMHVsLCBXVEY6OkNyYXNoT25PdmVyZmxvdywgMTZ1bD4sIFdlYktpdDo6
VXNlckRhdGE+LCAwdWwsIDF1bCwgMnVsLCAzdWw+KFdlYktpdDo6V2ViUGFnZVByb3h5Kiwgdm9p
ZCAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OiopKFdlYkNvcmU6OkludFBvaW50IGNvbnN0JiwgV2Vi
S2l0OjpDb250ZXh0TWVudUNvbnRleHREYXRhIGNvbnN0JiwgV1RGOjpWZWN0b3I8V2ViS2l0OjpX
ZWJDb250ZXh0TWVudUl0ZW1EYXRhLCAwdWwsIFdURjo6Q3Jhc2hPbk92ZXJmbG93LCAxNnVsPiBj
b25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29uc3QmKSwgc3RkOjp0dXBsZTxXZWJDb3JlOjpJbnRQ
b2ludCwgV2ViS2l0OjpDb250ZXh0TWVudUNvbnRleHREYXRhLCBXVEY6OlZlY3RvcjxXZWJLaXQ6
OldlYkNvbnRleHRNZW51SXRlbURhdGEsIDB1bCwgV1RGOjpDcmFzaE9uT3ZlcmZsb3csIDE2dWw+
LCBXZWJLaXQ6OlVzZXJEYXRhPiYmLCBzdGQ6OmluZGV4X3NlcXVlbmNlPDB1bCwgMXVsLCAydWws
IDN1bD4pIChvYmplY3Q9MHg3ZmZmY2U4MTQyMDAsIGZ1bmN0aW9uPQogICAgKHZvaWQgKFdlYktp
dDo6V2ViUGFnZVByb3h5OjoqKShXZWJLaXQ6OldlYlBhZ2VQcm94eSAqIGNvbnN0LCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCAmLCBjb25zdCBXZWJLaXQ6OkNvbnRleHRNZW51Q29udGV4dERhdGEg
JiwgY29uc3QgV1RGOjpWZWN0b3I8V2ViS2l0OjpXZWJDb250ZXh0TWVudUl0ZW1EYXRhLCAwLCBX
VEY6OkNyYXNoT25PdmVyZmxvdywgMTY+ICYsIGNvbnN0IFdlYktpdDo6VXNlckRhdGEgJikpIDB4
N2ZmZmYyMzk3NjYwIDxXZWJLaXQ6OldlYlBhZ2VQcm94eTo6c2hvd0NvbnRleHRNZW51KFdlYkNv
cmU6OkludFBvaW50IGNvbnN0JiwgV2ViS2l0OjpDb250ZXh0TWVudUNvbnRleHREYXRhIGNvbnN0
JiwgV1RGOjpWZWN0b3I8V2ViS2l0OjpXZWJDb250ZXh0TWVudUl0ZW1EYXRhLCAwdWwsIFdURjo6
Q3Jhc2hPbk92ZXJmbG93LCAxNnVsPiBjb25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29uc3QmKT4s
IAogICAgYXJncz08dW5rbm93biB0eXBlIGluIC9ob21lL21jYXRhbnphcm8vamhidWlsZC9pbnN0
YWxsL2xpYi9saWJ3ZWJraXQyZ3RrLTQuMC5zby4zNywgQ1UgMHgwLCBESUUgMHhjNDJjZj4pCiAg
ICBhdCAuLi8uLi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVzc2FnZS5oOjE2
Ck5vIGxvY2Fscy4KIzE1IDB4MDAwMDdmZmZmMjhjMTI5YyBpbiBJUEM6OmNhbGxNZW1iZXJGdW5j
dGlvbjxXZWJLaXQ6OldlYlBhZ2VQcm94eSwgdm9pZCAoV2ViS2l0OjpXZWJQYWdlUHJveHk6Oiop
KFdlYkNvcmU6OkludFBvaW50IGNvbnN0JiwgV2ViS2l0OjpDb250ZXh0TWVudUNvbnRleHREYXRh
IGNvbnN0JiwgV1RGOjpWZWN0b3I8V2ViS2l0OjpXZWJDb250ZXh0TWVudUl0ZW1EYXRhLCAwdWws
IFdURjo6Q3Jhc2hPbk92ZXJmbG93LCAxNnVsPiBjb25zdCYsIFdlYktpdDo6VXNlckRhdGEgY29u
c3QmKSwgc3RkOjp0dXBsZTxXZWJDb3JlOjpJbnRQb2ludCwgV2ViS2l0OjpDb250ZXh0TWVudUNv
bnRleHREYXRhLCBXVEY6OlZlY3RvcjxXZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbURhdGEsIDB1
bCwgV1RGOjpDcmFzaE9uT3ZlcmZsb3csIDE2dWw+LCBXZWJLaXQ6OlVzZXJEYXRhPiwgc3RkOjpt
YWtlX2luZGV4X3NlcXVlbmNlPDR1bD4gPihzdGQ6OnR1cGxlPFdlYkNvcmU6OkludFBvaW50LCBX
ZWJLaXQ6OkNvbnRleHRNZW51Q29udGV4dERhdGEsIFdURjo6VmVjdG9yPFdlYktpdDo6V2ViQ29u
dGV4dE1lbnVJdGVtRGF0YSwgMHVsLCBXVEY6OkNyYXNoT25PdmVyZmxvdywgMTZ1bD4sIFdlYktp
dDo6VXNlckRhdGE+JiYsIFdlYktpdDo6V2ViUGFnZVByb3h5Kiwgdm9pZCAoV2ViS2l0OjpXZWJQ
YWdlUHJveHk6OiopKFdlYkNvcmU6OkludFBvaW50IGNvbnN0JiwgV2ViS2l0OjpDb250ZXh0TWVu
dUNvbnRleHREYXRhIGNvbnN0JiwgV1RGOjpWZWN0b3I8V2ViS2l0OjpXZWJDb250ZXh0TWVudUl0
ZW1EYXRhLCAwdWwsIFdURjo6Q3Jhc2hPbk92ZXJmbG93LCAxNnVsPiBjb25zdCYsIFdlYktpdDo6
VXNlckRhdGEgY29uc3QmKSkgKAogICAgYXJncz08dW5rbm93biB0eXBlIGluIC9ob21lL21jYXRh
bnphcm8vamhidWlsZC9pbnN0YWxsL2xpYi9saWJ3ZWJraXQyZ3RrLTQuMC5zby4zNywgQ1UgMHgw
LCBESUUgMHhjNDI1OT4sIG9iamVjdD0weDdmZmZjZTgxNDIwMCwgZnVuY3Rpb249CiAgICAodm9p
ZCAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OiopKFdlYktpdDo6V2ViUGFnZVByb3h5ICogY29uc3Qs
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50ICYsIGNvbnN0IFdlYktpdDo6Q29udGV4dE1lbnVDb250
ZXh0RGF0YSAmLCBjb25zdCBXVEY6OlZlY3RvcjxXZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbURh
dGEsIDAsIFdURjo6Q3Jhc2hPbk92ZXJmbG93LCAxNj4gJiwgY29uc3QgV2ViS2l0OjpVc2VyRGF0
YSAmKSkgMHg3ZmZmZjIzOTc2NjAgPFdlYktpdDo6V2ViUGFnZVByb3h5OjpzaG93Q29udGV4dE1l
bnUoV2ViQ29yZTo6SW50UG9pbnQgY29uc3QmLCBXZWJLaXQ6OkNvbnRleHRNZW51Q29udGV4dERh
dGEgY29uc3QmLCBXVEY6OlZlY3RvcjxXZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbURhdGEsIDB1
bCwgV1RGOjpDcmFzaE9uT3ZlcmZsb3csIDE2dWw+IGNvbnN0JiwgV2ViS2l0OjpVc2VyRGF0YSBj
b25zdCYpPikKICAgIGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9IYW5kbGVN
ZXNzYWdlLmg6MjIKTm8gbG9jYWxzLgojMTYgMHgwMDAwN2ZmZmYyOGFhYTAwIGluIElQQzo6aGFu
ZGxlTWVzc2FnZTxNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTaG93Q29udGV4dE1lbnUsIFdlYktp
dDo6V2ViUGFnZVByb3h5LCB2b2lkIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6KikoV2ViQ29yZTo6
SW50UG9pbnQgY29uc3QmLCBXZWJLaXQ6OkNvbnRleHRNZW51Q29udGV4dERhdGEgY29uc3QmLCBX
VEY6OlZlY3RvcjxXZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbURhdGEsIDB1bCwgV1RGOjpDcmFz
aE9uT3ZlcmZsb3csIDE2dWw+IGNvbnN0JiwgV2ViS2l0OjpVc2VyRGF0YSBjb25zdCYpPiAoCiAg
ICBkZWNvZGVyPS4uLiwgb2JqZWN0PTB4N2ZmZmNlODE0MjAwLCBmdW5jdGlvbj0KICAgICh2b2lk
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6KikoV2ViS2l0OjpXZWJQYWdlUHJveHkgKiBjb25zdCwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQgJiwgY29uc3QgV2ViS2l0OjpDb250ZXh0TWVudUNvbnRl
eHREYXRhICYsIGNvbnN0IFdURjo6VmVjdG9yPFdlYktpdDo6V2ViQ29udGV4dE1lbnVJdGVtRGF0
YSwgMCwgV1RGOjpDcmFzaE9uT3ZlcmZsb3csIDE2PiAmLCBjb25zdCBXZWJLaXQ6OlVzZXJEYXRh
ICYpKSAweDdmZmZmMjM5NzY2MCA8V2ViS2l0OjpXZWJQYWdlUHJveHk6OnNob3dDb250ZXh0TWVu
dShXZWJDb3JlOjpJbnRQb2ludCBjb25zdCYsIFdlYktpdDo6Q29udGV4dE1lbnVDb250ZXh0RGF0
YSBjb25zdCYsIFdURjo6VmVjdG9yPFdlYktpdDo6V2ViQ29udGV4dE1lbnVJdGVtRGF0YSwgMHVs
LCBXVEY6OkNyYXNoT25PdmVyZmxvdywgMTZ1bD4gY29uc3QmLCBXZWJLaXQ6OlVzZXJEYXRhIGNv
bnN0Jik+KQogICAgYXQgLi4vLi4vU291cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL0hhbmRsZU1l
c3NhZ2UuaDo5MgogICAgICAgIGFyZ3VtZW50cyA9IHN0ZDo6dHVwbGUgY29udGFpbmluZyA9IHtb
MV0gPSB7bV94ID0gODMsIG1feSA9IDU3M30sIAogICAgICAgICAgWzJdID0ge21fd2ViSGl0VGVz
dFJlc3VsdERhdGEgPSB7YWJzb2x1dGVJbWFnZVVSTCA9IHttX2ltcGwgPSB7CiAgICAgICAgICAg
ICAgICAgIG1fcHRyID0gMHgwfX0sIGFic29sdXRlUERGVVJMID0ge21faW1wbCA9IHttX3B0ciA9
IDB4MH19LCAKICAgICAgICAgICAgICBhYnNvbHV0ZUxpbmtVUkwgPSB7bV9pbXBsID0ge21fcHRy
ID0gMHgwfX0sIGFic29sdXRlTWVkaWFVUkwgPSB7CiAgICAgICAgICAgICAgICBtX2ltcGwgPSB7
bV9wdHIgPSAweDB9fSwgbGlua0xhYmVsID0ge21faW1wbCA9IHttX3B0ciA9IDB4MH19LCAKICAg
ICAgICAgICAgICBsaW5rVGl0bGUgPSB7bV9pbXBsID0ge21fcHRyID0gMHgwfX0sIGlzQ29udGVu
dEVkaXRhYmxlID0gdHJ1ZSwgCiAgICAgICAgICAgICAgZWxlbWVudEJvdW5kaW5nQm94ID0ge21f
bG9jYXRpb24gPSB7bV94ID0gNiwgbV95ID0gNTU5fSwgCiAgICAgICAgICAgICAgICBtX3NpemUg
PSB7bV93aWR0aCA9IDY1OCwgbV9oZWlnaHQgPSA0MDZ9fSwgCiAgICAgICAgICAgICAgaXNTY3Jv
bGxiYXIgPSBmYWxzZSwgaXNTZWxlY3RlZCA9IGZhbHNlLCBpc1RleHROb2RlID0gZmFsc2UsIAog
ICAgICAgICAgICAgIGlzT3ZlclRleHRJbnNpZGVGb3JtQ29udHJvbEVsZW1lbnQgPSB0cnVlLCBh
bGxvd3NDb3B5ID0gdHJ1ZSwgCiAgICAgICAgICAgICAgaXNEb3dubG9hZGFibGVNZWRpYSA9IGZh
bHNlLCBsb29rdXBUZXh0ID0ge21faW1wbCA9IHsKICAgICAgICAgICAgICAgICAgbV9wdHIgPSAw
eDB9fSwgaW1hZ2VTaGFyZWRNZW1vcnkgPSB7bV9wdHIgPSAweDB9LCAKICAgICAgICAgICAgICBp
bWFnZVNpemUgPSAwLCBkZXRlY3RlZERhdGFCb3VuZGluZ0JveCA9IHttX2xvY2F0aW9uID0ge21f
eCA9IDAsIAogICAgICAgICAgICAgICAgICBtX3kgPSAwfSwgbV9zaXplID0ge21fd2lkdGggPSAw
LCBtX2hlaWdodCA9IDB9fSwgCiAgICAgICAgICAgICAgZGV0ZWN0ZWREYXRhVGV4dEluZGljYXRv
ciA9IHttX3B0ciA9IDB4MH0sIAogICAgICAgICAgICAgIGRldGVjdGVkRGF0YU9yaWdpbmF0aW5n
UGFnZU92ZXJsYXkgPSAxNDA3MzcyMDI2MjU1MjgsIAogICAgICAgICAgICAgIGRpY3Rpb25hcnlQ
b3B1cEluZm8gPSB7b3JpZ2luID0ge21feCA9IDAsIG1feSA9IDB9LCAKICAgICAgICAgICAgICAg
IHRleHRJbmRpY2F0b3IgPSB7c2VsZWN0aW9uUmVjdEluUm9vdFZpZXdDb29yZGluYXRlcyA9IHsK
ICAgICAgICAgICAgICAgICAgICBtX2xvY2F0aW9uID0ge21feCA9IDAsIG1feSA9IDB9LCBtX3Np
emUgPSB7bV93aWR0aCA9IDAsIAogICAgICAgICAgICAgICAgICAgICAgbV9oZWlnaHQgPSAwfX0s
IHRleHRCb3VuZGluZ1JlY3RJblJvb3RWaWV3Q29vcmRpbmF0ZXMgPSB7CiAgICAgICAgICAgICAg
ICAgICAgbV9sb2NhdGlvbiA9IHttX3ggPSAwLCBtX3kgPSAwfSwgbV9zaXplID0ge21fd2lkdGgg
PSAwLCAKICAgICAgICAgICAgICAgICAgICAgIG1faGVpZ2h0ID0gMH19LCAKICAgICAgICAgICAg
ICAgICAgdGV4dFJlY3RzSW5Cb3VuZGluZ1JlY3RDb29yZGluYXRlcyA9IHs8V1RGOjpWZWN0b3JC
dWZmZXI8V2ViQ29yZTo6RmxvYXRSZWN0LCAwPj4gPSB7PFdURjo6VmVjdG9yQnVmZmVyQmFzZTxX
ZWJDb3JlOjpGbG9hdFJlY3Q+PiA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgbV9idWZmZXIg
PSAweDAsIG1fY2FwYWNpdHkgPSAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgbV9zaXplID0g
MH0sIDxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+fSwgCiAgICAgICAgICAgICAg
ICAgIGNvbnRlbnRJbWFnZVNjYWxlRmFjdG9yID0gMCwgY29udGVudEltYWdlV2l0aEhpZ2hsaWdo
dCA9IHsKICAgICAgICAgICAgICAgICAgICBtX3B0ciA9IDB4MH0sIGNvbnRlbnRJbWFnZSA9IHtt
X3B0ciA9IDB4MH0sIAogICAgICAgICAgICAgICAgICBwcmVzZW50YXRpb25UcmFuc2l0aW9uID0g
MTUsIHdhbnRzTWFyZ2luID0gZmFsc2V9fSwgCiAgICAgICAgICAgICAgbGlua1RleHRJbmRpY2F0
b3IgPSB7bV9wdHIgPSAweDB9fSwgbV9zZWxlY3RlZFRleHQgPSB7bV9pbXBsID0gewogICAgICAg
ICAgICAgICAgbV9wdHIgPSAweDB9fX0sIAogICAgICAgICAgWzNdID0gezxXVEY6OlZlY3RvckJ1
ZmZlcjxXZWJLaXQ6OldlYkNvbnRleHRNZW51SXRlbURhdGEsIDA+PiA9IHs8V1RGOjpWZWN0b3JC
dWZmZXJCYXNlPFdlYktpdDo6V2ViQ29udGV4dE1lbnVJdGVtRGF0YT4+ID0gewogICAgICAgICAg
ICAgICAgbV9idWZmZXIgPSAweDdmZmZjZTgxODE0MCwgbV9jYXBhY2l0eSA9IDE1LCAKICAgICAg
ICAgICAgICAgIG1fc2l6ZSA9IDE1fSwgPE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZpZWxk
cz59LCBbNF0gPSB7CiAgICAgICAgICAgIG1fb2JqZWN0ID0ge21fcHRyID0gMHgwfX19CiMxNyAw
eDAwMDA3ZmZmZjI4YTBlNzIgaW4gV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZFJlY2VpdmVNZXNz
YWdlICgKICAgIHRoaXM9MHg3ZmZmY2U4MTQyMDAsIGNvbm5lY3Rpb249Li4uLCBkZWNvZGVyPS4u
LikKICAgIGF0IERlcml2ZWRTb3VyY2VzL1dlYktpdDIvV2ViUGFnZVByb3h5TWVzc2FnZVJlY2Vp
dmVyLmNwcDo4MDcKTm8gbG9jYWxzLgojMTggMHgwMDAwN2ZmZmYyOGExYzA3IGluIG5vbi12aXJ0
dWFsIHRodW5rIHRvIFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRSZWNlaXZlTWVzc2FnZShJUEM6
OkNvbm5lY3Rpb24mLCBJUEM6Ok1lc3NhZ2VEZWNvZGVyJikgKCkKICAgIGF0IERlcml2ZWRTb3Vy
Y2VzL1dlYktpdDIvV2ViUGFnZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcDoxMTk4Ck5vIGxvY2Fs
cy4KIzE5IDB4MDAwMDdmZmZmMjI0Y2IxMiBpbiBJUEM6Ok1lc3NhZ2VSZWNlaXZlck1hcDo6ZGlz
cGF0Y2hNZXNzYWdlICgKICAgIHRoaXM9MHg3ZmZmY2U4MTJkNzgsIGNvbm5lY3Rpb249Li4uLCBk
ZWNvZGVyPS4uLikKICAgIGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0lQQy9NZXNz
YWdlUmVjZWl2ZXJNYXAuY3BwOjg3CiAgICAgICAgbWVzc2FnZVJlY2VpdmVyID0gMHg3ZmZmY2U4
MTQyMjAKIzIwIDB4MDAwMDdmZmZmMjI2ZTEyNyBpbiBXZWJLaXQ6OkNoaWxkUHJvY2Vzc1Byb3h5
OjpkaXNwYXRjaE1lc3NhZ2UgKAogICAgdGhpcz0weDdmZmZjZTgxMmQ0MCwgY29ubmVjdGlvbj0u
Li4sIGRlY29kZXI9Li4uKQogICAgYXQgLi4vLi4vU291cmNlL1dlYktpdDIvU2hhcmVkL0NoaWxk
UHJvY2Vzc1Byb3h5LmNwcDoxMjUKTm8gbG9jYWxzLgojMjEgMHgwMDAwN2ZmZmYyNDE4ZDVhIGlu
IFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRSZWNlaXZlTWVzc2FnZSAoCiAgICB0aGlzPTB4
N2ZmZmNlODEyZDQwLCBjb25uZWN0aW9uPS4uLiwgZGVjb2Rlcj0uLi4pCiAgICBhdCAuLi8uLi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDo0NzgKTm8gbG9jYWxz
LgojMjIgMHgwMDAwN2ZmZmYyNDE4ZTU3IGluIG5vbi12aXJ0dWFsIHRodW5rIHRvIFdlYktpdDo6
V2ViUHJvY2Vzc1Byb3h5OjpkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6
Ok1lc3NhZ2VEZWNvZGVyJikgKCkKICAgIGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUHJveHkuY3BwOjQ5MApObyBsb2NhbHMuCiMyMyAweDAwMDA3ZmZmZjIyM2Iy
ZTMgaW4gSVBDOjpDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2UgKAogICAgdGhpcz0weDdmZmZj
ZWRmMTIxOCwgZGVjb2Rlcj0uLi4pCiAgICBhdCAuLi8uLi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9y
bS9JUEMvQ29ubmVjdGlvbi5jcHA6ODM2Ck5vIGxvY2Fscy4KIzI0IDB4MDAwMDdmZmZmMjIzNjk2
NyBpbiBJUEM6OkNvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZSAoCiAgICB0aGlzPTB4N2ZmZmNl
ZGYxMjE4LCBtZXNzYWdlPS4uLikKICAgIGF0IC4uLy4uL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3Jt
L0lQQy9Db25uZWN0aW9uLmNwcDo4NTkKICAgICAgICBvbGREaWRSZWNlaXZlSW52YWxpZE1lc3Nh
Z2UgPSBmYWxzZQojMjUgMHgwMDAwN2ZmZmYyMjNiNDBmIGluIElQQzo6Q29ubmVjdGlvbjo6ZGlz
cGF0Y2hPbmVNZXNzYWdlICgKICAgIHRoaXM9MHg3ZmZmY2VkZjEyMTgpCiAgICBhdCAuLi8uLi9T
b3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHA6ODg3CiAgICAgICAgbWVz
c2FnZSA9IHN0ZDo6dW5pcXVlX3B0cjxJUEM6Ok1lc3NhZ2VEZWNvZGVyPiBjb250YWluaW5nIDB4
MAojMjYgMHgwMDAwN2ZmZmYyMjNiNzRkIGluIElQQzo6Q29ubmVjdGlvbjo6ZW5xdWV1ZUluY29t
aW5nTWVzc2FnZShzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpNZXNzYWdlRGVjb2Rlciwgc3RkOjpkZWZh
dWx0X2RlbGV0ZTxJUEM6Ok1lc3NhZ2VEZWNvZGVyPiA+KTo6JF8xMDo6b3BlcmF0b3IoKSgpIGNv
bnN0ICh0aGlzPTB4N2ZmZjY0MDAxYTAwKQogICAgYXQgLi4vLi4vU291cmNlL1dlYktpdDIvUGxh
dGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwOjgzMApObyBsb2NhbHMuCiMyNyAweDAwMDA3ZmZmZjIy
M2I1MWQgaW4gc3RkOjpfRnVuY3Rpb25faGFuZGxlcjx2b2lkICgpLCBJUEM6OkNvbm5lY3Rpb246
OmVucXVldWVJbmNvbWluZ01lc3NhZ2Uoc3RkOjp1bmlxdWVfcHRyPElQQzo6TWVzc2FnZURlY29k
ZXIsIHN0ZDo6ZGVmYXVsdF9kZWxldGU8SVBDOjpNZXNzYWdlRGVjb2Rlcj4gPik6OiRfMTA+Ojpf
TV9pbnZva2Uoc3RkOjpfQW55X2RhdGEgY29uc3QmKSAoX19mdW5jdG9yPS4uLikKICAgIGF0IC91
c3IvYmluLy4uL2xpYi9nY2MveDg2XzY0LXJlZGhhdC1saW51eC81LjEuMS8uLi8uLi8uLi8uLi9p
bmNsdWRlL2MrKy81LjEuMS9mdW5jdGlvbmFsOjE4NzEKTm8gbG9jYWxzLgojMjggMHgwMDAwN2Zm
ZmYyMWE2OTVlIGluIHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT46Om9wZXJhdG9yKCkoKSBjb25zdCAo
CiAgICB0aGlzPTB4N2ZmZmZmZmZkMDkwKQogICAgYXQgL3Vzci9iaW4vLi4vbGliL2djYy94ODZf
NjQtcmVkaGF0LWxpbnV4LzUuMS4xLy4uLy4uLy4uLy4uL2luY2x1ZGUvYysrLzUuMS4xL2Z1bmN0
aW9uYWw6MjI3MQpObyBsb2NhbHMuCiMyOSAweDAwMDA3ZmZmZjQ4NWEzOWEgaW4gV1RGOjpSdW5M
b29wOjpwZXJmb3JtV29yayAodGhpcz0weDdmZmZjZWZmODAwMCkKICAgIGF0IC4uLy4uL1NvdXJj
ZS9XVEYvd3RmL1J1bkxvb3AuY3BwOjEwNAogICAgICAgIGZ1bmN0aW9uID0gezxzdGQ6Ol9NYXli
ZV91bmFyeV9vcl9iaW5hcnlfZnVuY3Rpb248dm9pZD4+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8
c3RkOjpfRnVuY3Rpb25fYmFzZT4gPSB7c3RhdGljIF9NX21heF9zaXplID0gMTYsIAogICAgICAg
ICAgICBzdGF0aWMgX01fbWF4X2FsaWduID0gOCwgX01fZnVuY3RvciA9IHtfTV91bnVzZWQgPSB7
CiAgICAgICAgICAgICAgICBfTV9vYmplY3QgPSAweDdmZmY2NDAwMWEwMCwgX01fY29uc3Rfb2Jq
ZWN0ID0gMHg3ZmZmNjQwMDFhMDAsIAogICAgICAgICAgICAgICAgX01fZnVuY3Rpb25fcG9pbnRl
ciA9IDB4N2ZmZjY0MDAxYTAwLCAKICAgICAgICAgICAgICAgIF9NX21lbWJlcl9wb2ludGVyID0g
PGVycm9yIHJlYWRpbmcgdmFyaWFibGU+LCAKICAgICAgICAgICAgICBfTV9wb2RfZGF0YSA9ICJc
MDAwXDAzMlwwMDBkXDM3N1wxNzdcMDAwXDAwMFwyMjBwXDE3N1wyMDVcMzc3XDE3N1wwMDAifSwg
CiAgICAgICAgICAgIF9NX21hbmFnZXIgPSAweDdmZmZmMjIzYjUzMCA8c3RkOjpfRnVuY3Rpb25f
YmFzZTo6X0Jhc2VfbWFuYWdlcjxJUEM6OkNvbm5lY3Rpb246OmVucXVldWVJbmNvbWluZ01lc3Nh
Z2Uoc3RkOjp1bmlxdWVfcHRyPElQQzo6TWVzc2FnZURlY29kZXIsIHN0ZDo6ZGVmYXVsdF9kZWxl
dGU8SVBDOjpNZXNzYWdlRGVjb2Rlcj4gPik6OiRfMTA+OjpfTV9tYW5hZ2VyKHN0ZDo6X0FueV9k
YXRhJiwgc3RkOjpfQW55X2RhdGEgY29uc3QmLCBzdGQ6Ol9NYW5hZ2VyX29wZXJhdGlvbik+fSwg
CiAgICAgICAgICBfTV9pbnZva2VyID0gMHg3ZmZmZjIyM2I1MDAgPHN0ZDo6X0Z1bmN0aW9uX2hh
bmRsZXI8dm9pZCAoKSwgSVBDOjpDb25uZWN0aW9uOjplbnF1ZXVlSW5jb21pbmdNZXNzYWdlKHN0
ZDo6dW5pcXVlX3B0cjxJUEM6Ok1lc3NhZ2VEZWNvZGVyLCBzdGQ6OmRlZmF1bHRfZGVsZXRlPElQ
Qzo6TWVzc2FnZURlY29kZXI+ID4pOjokXzEwPjo6X01faW52b2tlKHN0ZDo6X0FueV9kYXRhIGNv
bnN0Jik+fQogICAgICAgIGZ1bmN0aW9uc1RvSGFuZGxlID0gMQojMzAgMHgwMDAwN2ZmZmY0ODYw
NGFkIGluIFdURjo6UnVuTG9vcDo6d2FrZVVwKCk6OiRfMDo6b3BlcmF0b3IoKSgpIGNvbnN0ICgK
ICAgIHRoaXM9MHg3ZmZmNjQwMDFhNDApIGF0IC4uLy4uL1NvdXJjZS9XVEYvd3RmL2dsaWIvUnVu
TG9vcEdMaWIuY3BwOjk2Ck5vIGxvY2Fscy4KIzMxIDB4MDAwMDdmZmZmNDg2MDI3ZCBpbiBzdGQ6
Ol9GdW5jdGlvbl9oYW5kbGVyPHZvaWQgKCksIFdURjo6UnVuTG9vcDo6d2FrZVVwKCk6OiRfMD46
Ol9NX2ludm9rZShzdGQ6Ol9BbnlfZGF0YSBjb25zdCYpIChfX2Z1bmN0b3I9Li4uKQogICAgYXQg
L3Vzci9iaW4vLi4vbGliL2djYy94ODZfNjQtcmVkaGF0LWxpbnV4LzUuMS4xLy4uLy4uLy4uLy4u
L2luY2x1ZGUvYysrLzUuMS4xL2Z1bmN0aW9uYWw6MTg3MQpObyBsb2NhbHMuCiMzMiAweDAwMDA3
ZmZmZjIxYTY5NWUgaW4gc3RkOjpmdW5jdGlvbjx2b2lkICgpPjo6b3BlcmF0b3IoKSgpIGNvbnN0
ICgKICAgIHRoaXM9MHg3ZmZmZmZmZmQxNzgpCiAgICBhdCAvdXNyL2Jpbi8uLi9saWIvZ2NjL3g4
Nl82NC1yZWRoYXQtbGludXgvNS4xLjEvLi4vLi4vLi4vLi4vaW5jbHVkZS9jKysvNS4xLjEvZnVu
Y3Rpb25hbDoyMjcxCk5vIGxvY2Fscy4KIzMzIDB4MDAwMDdmZmZlZTRmMzFmOSBpbiBXVEY6OkdN
YWluTG9vcFNvdXJjZTo6dm9pZENhbGxiYWNrICgKICAgIHRoaXM9MHg3ZmZmY2VmMWUwYjApIGF0
IC4uLy4uL1NvdXJjZS9XVEYvd3RmL2dsaWIvR01haW5Mb29wU291cmNlLmNwcDozNjUKICAgICAg
ICBjb250ZXh0ID0ge3NvdXJjZSA9IHttX3B0ciA9IDB4N2ZmZjY0MDAxMTkwfSwgY2FuY2VsbGFi
bGUgPSB7CiAgICAgICAgICAgIG1fcHRyID0gMHgwfSwgc29ja2V0Q2FuY2VsbGFibGUgPSB7bV9w
dHIgPSAweDB9LCAKICAgICAgICAgIHZvaWRDYWxsYmFjayA9IHs8c3RkOjpfTWF5YmVfdW5hcnlf
b3JfYmluYXJ5X2Z1bmN0aW9uPHZvaWQ+PiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPHN0ZDo6X0Z1
bmN0aW9uX2Jhc2U+ID0ge3N0YXRpYyBfTV9tYXhfc2l6ZSA9IDE2LCAKICAgICAgICAgICAgICBz
dGF0aWMgX01fbWF4X2FsaWduID0gOCwgX01fZnVuY3RvciA9IHtfTV91bnVzZWQgPSB7CiAgICAg
ICAgICAgICAgICAgIF9NX29iamVjdCA9IDB4N2ZmZjY0MDAxYTQwLCAKICAgICAgICAgICAgICAg
ICAgX01fY29uc3Rfb2JqZWN0ID0gMHg3ZmZmNjQwMDFhNDAsIAogICAgICAgICAgICAgICAgICBf
TV9mdW5jdGlvbl9wb2ludGVyID0gMHg3ZmZmNjQwMDFhNDAsIAogICAgICAgICAgICAgICAgICBf
TV9tZW1iZXJfcG9pbnRlciA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxlPiwgCiAgICAgICAgICAg
ICAgICBfTV9wb2RfZGF0YSA9ICJAXDAzMlwwMDBkXDM3N1wxNzdcMDAwXDAwMFwzNjBuXDE3N1wy
MDVcMzc3XDE3N1wwMDAifSwgCiAgICAgICAgICAgICAgX01fbWFuYWdlciA9IDB4N2ZmZmY0ODYw
MjkwIDxzdGQ6Ol9GdW5jdGlvbl9iYXNlOjpfQmFzZV9tYW5hZ2VyPFdURjo6UnVuTG9vcDo6d2Fr
ZVVwKCk6OiRfMD46Ol9NX21hbmFnZXIoc3RkOjpfQW55X2RhdGEmLCBzdGQ6Ol9BbnlfZGF0YSBj
b25zdCYsIHN0ZDo6X01hbmFnZXJfb3BlcmF0aW9uKT59LCAKICAgICAgICAgICAgX01faW52b2tl
ciA9IDB4N2ZmZmY0ODYwMjYwIDxzdGQ6Ol9GdW5jdGlvbl9oYW5kbGVyPHZvaWQgKCksIFdURjo6
UnVuTG9vcDo6d2FrZVVwKCk6OiRfMD46Ol9NX2ludm9rZShzdGQ6Ol9BbnlfZGF0YSBjb25zdCYp
Pn0sIAogICAgICAgICAgYm9vbENhbGxiYWNrID0gezxzdGQ6Ol9NYXliZV91bmFyeV9vcl9iaW5h
cnlfZnVuY3Rpb248Ym9vbD4+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8c3RkOjpfRnVuY3Rpb25f
YmFzZT4gPSB7c3RhdGljIF9NX21heF9zaXplID0gMTYsIAogICAgICAgICAgICAgIHN0YXRpYyBf
TV9tYXhfYWxpZ24gPSA4LCBfTV9mdW5jdG9yID0ge19NX3VudXNlZCA9IHsKICAgICAgICAgICAg
ICAgICAgX01fb2JqZWN0ID0gMHg3ZmZmY2VmMWUwYzAsIAogICAgICAgICAgICAgICAgICBfTV9j
b25zdF9vYmplY3QgPSAweDdmZmZjZWYxZTBjMCwgCiAgICAgICAgICAgICAgICAgIF9NX2Z1bmN0
aW9uX3BvaW50ZXIgPSAweDdmZmZjZWYxZTBjMCwgCiAgICAgICAgICAgICAgICAgIF9NX21lbWJl
cl9wb2ludGVyID0gPGVycm9yIHJlYWRpbmcgdmFyaWFibGU+LCAKICAgICAgICAgICAgICAgIF9N
X3BvZF9kYXRhID0gIlwzMDBcMzQwXDM2MVwzMTZcMzc3XDE3N1wwMDBcMDAwXDI2MFwwMDBcMDAw
XDAwMFwwMDBcMDAwXDAwMCJ9LCBfTV9tYW5hZ2VyID0gMHgwfSwgX01faW52b2tlciA9IDB4N2Zm
Zjg1N2Y2ZjI4fSwgCiAgICAgICAgICBzb2NrZXRDYWxsYmFjayA9IHs8c3RkOjpfTWF5YmVfdW5h
cnlfb3JfYmluYXJ5X2Z1bmN0aW9uPGJvb2wsIEdJT0NvbmRpdGlvbj4+ID0gezxzdGQ6OnVuYXJ5
X2Z1bmN0aW9uPEdJT0NvbmRpdGlvbiwgYm9vbD4+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8Tm8g
ZGF0YSBmaWVsZHM+fSwgPHN0ZDo6X0Z1bmN0aW9uX2Jhc2U+ID0ge3N0YXRpYyBfTV9tYXhfc2l6
ZSA9IDE2LCAKICAgICAgICAgICAgICBzdGF0aWMgX01fbWF4X2FsaWduID0gOCwgX01fZnVuY3Rv
ciA9IHtfTV91bnVzZWQgPSB7CiAgICAgICAgICAgICAgICAgIF9NX29iamVjdCA9IDB4N2ZmZjg1
N2Y2ZTAwLCAKICAgICAgICAgICAgICAgICAgX01fY29uc3Rfb2JqZWN0ID0gMHg3ZmZmODU3ZjZl
MDAsIAogICAgICAgICAgICAgICAgICBfTV9mdW5jdGlvbl9wb2ludGVyID0gMHg3ZmZmODU3ZjZl
MDAsIAogICAgICAgICAgICAgICAgICBfTV9tZW1iZXJfcG9pbnRlciA9IDxlcnJvciByZWFkaW5n
IHZhcmlhYmxlPiwgCiAgICAgICAgICAgICAgICBfTV9wb2RfZGF0YSA9ICJcMDAwblwxNzdcMjA1
XDM3N1wxNzdcMDAwXDAwMNGxXDAzMVwzNjJcMzc3XDE3N1wwMDAifSwgX01fbWFuYWdlciA9IDB4
MH0sIF9NX2ludm9rZXIgPSAweDdmZmY4NTdmNmYyOH0sIAogICAgICAgICAgZGVzdHJveUNhbGxi
YWNrID0gezxzdGQ6Ol9NYXliZV91bmFyeV9vcl9iaW5hcnlfZnVuY3Rpb248dm9pZD4+ID0gezxO
byBkYXRhIGZpZWxkcz59LCA8c3RkOjpfRnVuY3Rpb25fYmFzZT4gPSB7c3RhdGljIF9NX21heF9z
aXplID0gMTYsIAogICAgICAgICAgICAgIHN0YXRpYyBfTV9tYXhfYWxpZ24gPSA4LCBfTV9mdW5j
dG9yID0ge19NX3VudXNlZCA9IHsKICAgICAgICAgICAgICAgICAgX01fb2JqZWN0ID0gMHg3ZmZm
ZjIxOWIyZjUgPFdURjo6VGhyZWFkU2FmZVJlZkNvdW50ZWRCYXNlOjpyZWYoKSsyMT4sIAogICAg
ICAgICAgICAgICAgICBfTV9jb25zdF9vYmplY3QgPSAweDdmZmZmMjE5YjJmNSA8V1RGOjpUaHJl
YWRTYWZlUmVmQ291bnRlZEJhc2U6OnJlZigpKzIxPiwgCiAgICAgICAgICAgICAgICAgIF9NX2Z1
bmN0aW9uX3BvaW50ZXIgPSAweDdmZmZmMjE5YjJmNSA8V1RGOjpUaHJlYWRTYWZlUmVmQ291bnRl
ZEJhc2U6OnJlZigpKzIxPiwgX01fbWVtYmVyX3BvaW50ZXIgPSA8ZXJyb3IgcmVhZGluZyB2YXJp
YWJsZT4sIAogICAgICAgICAgICAgICAgX01fcG9kX2RhdGEgPSAiXDM2NVwyNjJcMDMxXDM2Mlwz
NzdcMTc3XDAwMFwwMDBYb1wxNzdcMjA1XDM3N1wxNzdcMDAwIn0sIF9NX21hbmFnZXIgPSAweDB9
LCBfTV9pbnZva2VyID0gMHg3ZmZmODU3ZjZlZjB9fQojMzQgMHgwMDAwN2ZmZmVlNGYwZGU2IGlu
IFdURjo6R01haW5Mb29wU291cmNlOjp2b2lkU291cmNlQ2FsbGJhY2sgKAogICAgc291cmNlPTB4
N2ZmZmNlZjFlMGIwKSBhdCAuLi8uLi9Tb3VyY2UvV1RGL3d0Zi9nbGliL0dNYWluTG9vcFNvdXJj
ZS5jcHA6NDU2Ck5vIGxvY2Fscy4KIzM1IDB4MDAwMDdmZmZlOTc5OTQ3MSBpbiBnX2lkbGVfZGlz
cGF0Y2ggKHNvdXJjZT0weDdmZmY2NDAwMTE5MCwgCiAgICBjYWxsYmFjaz0weDdmZmZlZTRmMGRk
MCA8V1RGOjpHTWFpbkxvb3BTb3VyY2U6OnZvaWRTb3VyY2VDYWxsYmFjayhXVEY6OkdNYWluTG9v
cFNvdXJjZSopPiwgdXNlcl9kYXRhPTB4N2ZmZmNlZjFlMGIwKSBhdCBnbWFpbi5jOjUzOTcKTm8g
bG9jYWxzLgojMzYgMHgwMDAwN2ZmZmU5Nzk2YWI5IGluIGdfbWFpbl9kaXNwYXRjaCAoY29udGV4
dD0weDczMGUzMCkgYXQgZ21haW4uYzozMTIyCiAgICAgICAgZGlzcGF0Y2ggPSAweDdmZmZlOTc5
OTQyNSA8Z19pZGxlX2Rpc3BhdGNoPgogICAgICAgIHByZXZfc291cmNlID0gMHgwCiAgICAgICAg
d2FzX2luX2NhbGwgPSAwCiAgICAgICAgdXNlcl9kYXRhID0gMHg3ZmZmY2VmMWUwYjAKICAgICAg
ICBjYWxsYmFjayA9IDB4N2ZmZmVlNGYwZGQwIDxXVEY6OkdNYWluTG9vcFNvdXJjZTo6dm9pZFNv
dXJjZUNhbGxiYWNrKFdURjo6R01haW5Mb29wU291cmNlKik+CiAgICAgICAgY2JfZnVuY3MgPSAw
eDdmZmZlOWFhMzljMCA8Z19zb3VyY2VfY2FsbGJhY2tfZnVuY3M+CiAgICAgICAgY2JfZGF0YSA9
IDB4N2ZmZjY0MDAxYWIwCiAgICAgICAgbmVlZF9kZXN0cm95ID0gMAogICAgICAgIHNvdXJjZSA9
IDB4N2ZmZjY0MDAxMTkwCiAgICAgICAgY3VycmVudCA9IDB4NzFiMGIwCiAgICAgICAgaSA9IDAK
ICAgICAgICBfX2Z1bmNfXyA9ICJnX21haW5fZGlzcGF0Y2giCiMzNyAweDAwMDA3ZmZmZTk3OTc4
ZmQgaW4gZ19tYWluX2NvbnRleHRfZGlzcGF0Y2ggKGNvbnRleHQ9MHg3MzBlMzApCiAgICBhdCBn
bWFpbi5jOjM3MzcKTm8gbG9jYWxzLgojMzggMHgwMDAwN2ZmZmU5Nzk3YWUxIGluIGdfbWFpbl9j
b250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg3MzBlMzAsIGJsb2NrPTEsIAogICAgZGlzcGF0Y2g9
MSwgc2VsZj0weDc4NTRkMCkgYXQgZ21haW4uYzozODA4CiAgICAgICAgbWF4X3ByaW9yaXR5ID0g
MjE0NzQ4MzY0NwogICAgICAgIHRpbWVvdXQgPSAxNzUKICAgICAgICBzb21lX3JlYWR5ID0gMQog
ICAgICAgIG5mZHMgPSA0CiAgICAgICAgYWxsb2NhdGVkX25mZHMgPSA0CiAgICAgICAgZmRzID0g
MHhhZjI5NjAKIzM5IDB4MDAwMDdmZmZlOTc5N2JhNSBpbiBnX21haW5fY29udGV4dF9pdGVyYXRp
b24gKGNvbnRleHQ9MHg3MzBlMzAsIAogICAgbWF5X2Jsb2NrPTEpIGF0IGdtYWluLmM6Mzg2OQog
ICAgICAgIHJldHZhbCA9IDEKIzQwIDB4MDAwMDdmZmZlOWRkMWExMyBpbiBnX2FwcGxpY2F0aW9u
X3J1biAoYXBwbGljYXRpb249MHg3ZDkyNTAsIGFyZ2M9MSwgCiAgICBhcmd2PTB4N2ZmZmZmZmZk
NWM4KSBhdCBnYXBwbGljYXRpb24uYzoyMzExCiAgICAgICAgYXJndW1lbnRzID0gMHg5OWQzZTAK
ICAgICAgICBzdGF0dXMgPSAwCiAgICAgICAgX19mdW5jX18gPSAiZ19hcHBsaWNhdGlvbl9ydW4i
CiM0MSAweDAwMDAwMDAwMDA0MmVjMzggaW4gbWFpbiAoYXJnYz0xLCBhcmd2PTB4N2ZmZmZmZmZk
NWM4KSBhdCBlcGh5LW1haW4uYzo0ODQKICAgICAgICBvcHRpb25fY29udGV4dCA9IDB4NzA2NDIw
CiAgICAgICAgb3B0aW9uX2dyb3VwID0gMHg3MDY0YTAKICAgICAgICBlcnJvciA9IDB4MAogICAg
ICAgIHVzZXJfdGltZSA9IDI3Nzc5NDU5CiAgICAgICAgYXJiaXRyYXJ5X3VybCA9IDAKICAgICAg
ICBjdHggPSAweDg4OGU2MAogICAgICAgIHN0YXJ0dXBfZmxhZ3MgPSAodW5rbm93bjogMCkKICAg
ICAgICBtb2RlID0gRVBIWV9FTUJFRF9TSEVMTF9NT0RFX0JST1dTRVIKICAgICAgICBlcGh5X3No
ZWxsID0gMHg3ZDkyNTAKICAgICAgICBzdGF0dXMgPSAwCiAgICAgICAgZmxhZ3MgPSBFUEhZX0ZJ
TEVfSEVMUEVSU19FTlNVUkVfRVhJU1RTCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256522</attachid>
            <date>2015-07-09 14:41:17 -0700</date>
            <delta_ts>2015-07-09 17:10:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146805-20150709164016.patch</filename>
            <type>text/plain</type>
            <size>1698</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2MzMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZDQyNjU3MGNmOTkzZTU0
N2FiMTI4MjI0NTAzMDA3ZWIwN2ZiMzMzOC4uODNiYmUzOWVmZmIzOTk5NjhlNjU0ZDExNjljNjdi
OTkyNGFhYzUzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE1LTA3LTA5ICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBD
cmFzaCB3aGVuIHNwZWxsIGNoZWNrZXIgcmV0dXJucyBubyBndWVzc2VzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY4MDUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcm9wZXJseSBoYW5kbGUgQ29udGV4
dE1lbnVJdGVtVGFnTm9HdWVzc2VzRm91bmQgaW4gdGhlIHN3aXRjaCBzdGF0ZW1lbnQuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRDb250ZXh0TWVudUFjdGlvbnMuY3BwOgor
ICAgICAgICAod2Via2l0Q29udGV4dE1lbnVBY3Rpb25HZXRGb3JDb250ZXh0TWVudUl0ZW0pOgor
CiAyMDE1LTA3LTA2ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBbR1RLXSBHdWFyZCBYMTEtc3BlY2lmaWMgY29kZSBpbiB3ZWJraXRXZWJWaWV3QmFzZURp
ZFJlbGF1bmNoV2ViUHJvY2VzcygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay9XZWJLaXRDb250ZXh0TWVudUFjdGlvbnMuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Q29udGV4dE1lbnVBY3Rpb25zLmNwcAppbmRleCBlOGNk
ZmZkMDRmMWIyMjVhY2M3ZWE1MzQ4OTY0NmJiYWYxNGFkZWY3Li40ZWQyMGZhYWQ2ZDk3NGUxZmFj
ZGI5MzA1ZmZhMjU1MzAxYWZkZGQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay9XZWJLaXRDb250ZXh0TWVudUFjdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdENvbnRleHRNZW51QWN0aW9ucy5jcHAKQEAgLTE4
Miw2ICsxODIsOCBAQCBXZWJLaXRDb250ZXh0TWVudUFjdGlvbiB3ZWJraXRDb250ZXh0TWVudUFj
dGlvbkdldEZvckNvbnRleHRNZW51SXRlbShDb250ZXh0TWVudQogICAgICAgICByZXR1cm4gV0VC
S0lUX0NPTlRFWFRfTUVOVV9BQ1RJT05fVU5JQ09ERTsKICAgICBjYXNlIENvbnRleHRNZW51SXRl
bVRhZ1NwZWxsaW5nR3Vlc3M6CiAgICAgICAgIHJldHVybiBXRUJLSVRfQ09OVEVYVF9NRU5VX0FD
VElPTl9TUEVMTElOR19HVUVTUzsKKyAgICBjYXNlIENvbnRleHRNZW51SXRlbVRhZ05vR3Vlc3Nl
c0ZvdW5kOgorICAgICAgICByZXR1cm4gV0VCS0lUX0NPTlRFWFRfTUVOVV9BQ1RJT05fTk9fR1VF
U1NFU19GT1VORDsKICAgICBjYXNlIENvbnRleHRNZW51SXRlbVRhZ0lnbm9yZVNwZWxsaW5nOgog
ICAgICAgICByZXR1cm4gV0VCS0lUX0NPTlRFWFRfTUVOVV9BQ1RJT05fSUdOT1JFX1NQRUxMSU5H
OwogICAgIGNhc2UgQ29udGV4dE1lbnVJdGVtVGFnTGVhcm5TcGVsbGluZzoK
</data>

          </attachment>
      

    </bug>

</bugzilla>