<?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>28317</bug_id>
          
          <creation_ts>2009-08-14 14:25:54 -0700</creation_ts>
          <short_desc>Assertion being hit on layout tests in debug build</short_desc>
          <delta_ts>2009-08-28 12:53:47 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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="Gustavo Noronha (kov)">gustavo</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          <cc>barraclough</cc>
    
    <cc>oliver</cc>
    
    <cc>plaes</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>140338</commentid>
    <comment_count>0</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-08-14 14:25:54 -0700</bug_when>
    <thetext>I am hitting an assertion when running some of the tests that are currently failing in the GTK+ bot:

ASSERTION FAILED: differenceBetween(coldPathBegin, call) == patchOffsetGetByIdSlowCaseCall
(../../JavaScriptCore/jit/JITPropertyAccess.cpp:1260 void JSC::JIT::compileGetByIdSlowCase(int, int, JSC::Identifier*, JSC::SlowCaseEntry*&amp;, bool))

One such test:

http/tests/xmlhttprequest/origin-header-cross-origin-get-async.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>140346</commentid>
    <comment_count>1</comment_count>
      <attachid>34872</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-08-14 15:00:54 -0700</bug_when>
    <thetext>Created attachment 34872
backtrace</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>140482</commentid>
    <comment_count>2</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-08-15 14:17:56 -0700</bug_when>
    <thetext>This actually seems to crash everything, and seems to only be exposed by a clean build of the GTK+ port, so I believe it may happen in other ports after a clean rebuild. I will try the Qt port, though it would be useful if someone with a different environment could try it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141060</commentid>
    <comment_count>3</comment_count>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-18 02:46:40 -0700</bug_when>
    <thetext>I&apos;m getting it also with debug build (and webkit-gtk)

From my local backtrace:

(gdb) info locals
coldPathBegin = {m_label = {m_offset = 549, m_used = false}}
stubCall = {static stackIndexStep = 1, static stackIndexStart = 1, m_jit = 0x7ffff8654640, m_stub = 0x7fb63115a505, m_returnType = JSC::JITStubCall::VoidPtr, m_stackIndex = 3}
call = {m_jmp = {m_offset = 584}, m_flags = JSC::AbstractMacroAssembler&lt;JSC::X86Assembler&gt;::Call::Linkable}
__PRETTY_FUNCTION__ = &quot;void JSC::JIT::compileGetByIdSlowCase(int, int, JSC::Identifier*, JSC::SlowCaseEntry*&amp;, bool)&quot;
(gdb) p patchOffsetGetByIdSlowCaseCall
$1 = 41
(gdb) p coldPathBegin
$2 = {m_label = {m_offset = 549, m_used = false}}
(gdb) p call
$3 = {m_jmp = {m_offset = 584}, m_flags = JSC::AbstractMacroAssembler&lt;JSC::X86Assembler&gt;::Call::Linkable}

From here (and your backtrace) the correct value for patchOffsetGetByIdSlowCaseCall should be 35 (584 minus 549 equals 35 and your case 1691-1656 is also 35)

Now we only need to figure out what has changed and which patchOffsetGetByIdSlowCaseCall value in JavaScriptCore/jit/JIT.h should be changed ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141068</commentid>
    <comment_count>4</comment_count>
      <attachid>35036</attachid>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-18 04:19:14 -0700</bug_when>
    <thetext>Created attachment 35036
webkit-bug-28317-debug-fix-js-jit-assertion.patch

Change the size to 35, so it doesn&apos;t assert anymore...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141072</commentid>
    <comment_count>5</comment_count>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-18 05:05:29 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Created an attachment (id=35036) [details]
&gt; webkit-bug-28317-debug-fix-js-jit-assertion.patch
&gt; 
&gt; Change the size to 35, so it doesn&apos;t assert anymore...

Seems that it causes crash on regular builds :S</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141109</commentid>
    <comment_count>6</comment_count>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-18 09:59:45 -0700</bug_when>
    <thetext>Well, I have currently no better idea than this...

diff --git a/JavaScriptCore/jit/JIT.h b/JavaScriptCore/jit/JIT.h
index 5c6607c..9abdafc 100644
--- a/JavaScriptCore/jit/JIT.h
+++ b/JavaScriptCore/jit/JIT.h
@@ -537,8 +537,12 @@ namespace JSC {
 #if ENABLE(OPCODE_SAMPLING)
         static const int patchOffsetGetByIdSlowCaseCall = 63;
 #else
+#ifndef NDEBUG
+        static const int patchOffsetGetByIdSlowCaseCall = 35;
+#else
         static const int patchOffsetGetByIdSlowCaseCall = 41;
-#endif
+#endif // NDEBUG
+#endif // ENABLE(OPCODE_SAMPLING)
         static const int patchOffsetOpCallCompareToJump = 9;
 
         static const int patchOffsetMethodCheckProtoObj = 20;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141147</commentid>
    <comment_count>7</comment_count>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-18 11:34:27 -0700</bug_when>
    <thetext>It seems that differenceBetween(coldPathBegin, call) varies between 35 and 41 :S

if isMethodCheck == True
  patchOffsetGetByIdSlowCaseCall == 41
else
  patchOffsetGetByIdSlowCaseCall == 35

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fb11e7cd770 (LWP 4654)]
0x00007fb11b82fa70 in JSC::JIT::compileGetByIdSlowCase (this=0x7fff6eb29180, resultVReg=1, baseVReg=2, ident=0x7fb0fc087970, iter=@0x7fff6eb28f00, isMethodCheck=true)
    at JavaScriptCore/jit/JITPropertyAccess.cpp:1260
1260	    ASSERT(differenceBetween(coldPathBegin, call) == patchOffsetGetByIdSlowCaseCall);
Current language:  auto; currently c++
(gdb) p coldPathBegin
$1 = {m_label = {m_offset = 880, m_used = false}}
(gdb) p call
$2 = {m_jmp = {m_offset = 921}, m_flags = JSC::AbstractMacroAssembler&lt;JSC::X86Assembler&gt;::Call::Linkable}
(gdb) p patchOffsetGetByIdSlowCaseCall
$3 = 35
(gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141261</commentid>
    <comment_count>8</comment_count>
      <attachid>35036</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-18 14:53:52 -0700</bug_when>
    <thetext>Comment on attachment 35036
webkit-bug-28317-debug-fix-js-jit-assertion.patch

Tabs in your ChangeLog will cause the commit to fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141359</commentid>
    <comment_count>9</comment_count>
      <attachid>35036</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-18 19:03:53 -0700</bug_when>
    <thetext>Comment on attachment 35036
webkit-bug-28317-debug-fix-js-jit-assertion.patch

(In reply to comment #7)
&gt; It seems that differenceBetween(coldPathBegin, call) varies between 35 and 41
&gt; :S
&gt; 
&gt; if isMethodCheck == True
&gt;   patchOffsetGetByIdSlowCaseCall == 41
&gt; else
&gt;   patchOffsetGetByIdSlowCaseCall == 35

Hi Priit,

This value shouldn&apos;t be varying, the fix here will not be to just change the constant, since this will then fail if isMethodCheck is true.  This patch will break x86-64 on OS X, so please not not land this change.


The code generated should look something like this:

// stubCall.addArgument(regT0);
0x5548490019a9:	mov    %rax,0x8(%rsp)
    ^ 5 bytes

// stubCall.addArgument(ImmPtr(ident));
0x5548490019ae:	mov    $0x100627c90,%r11
0x5548490019b8:	mov    %r11,0x10(%rsp)
    ^ 20 bytes (5 + 15)

// Call call = stubCall.call(resultVReg);
0x5548490019bd:	mov    %rsp,%rdi
0x5548490019c0:	mov    %r13,0x58(%rsp)
0x5548490019c5:	mov    $0x10010c7c4,%r11
0x5548490019cf:	callq  *%r11
    ^ 41 bytes (5 + 15 + 21)
0x5548490019d2:	mov    %rax,0x0(%r13)
    ^ 45 bytes (5 + 15 + 21 + 4)

The offset of 41 is the offset to the end of the call instruction planted by the call to &apos;stubCall.call&apos;.

I&apos;d suggest you try replacing:
    ASSERT(differenceBetween(coldPathBegin, call) == patchOffsetGetByIdSlowCaseCall);
with:
    if (differenceBetween(coldPathBegin, call) != patchOffsetGetByIdSlowCaseCall) breakpoint();
on line 1260 of JITPropertyAccess.cpp, then run a failing test under gdb.

You should hit the breakpoint, and then be able to grab from memory the instructions that are actually being generated - then we can hopefully work out what what the underlying problem is.

cheers,
G.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142254</commentid>
    <comment_count>10</comment_count>
      <attachid>38459</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-08-23 16:12:57 -0700</bug_when>
    <thetext>Created attachment 38459
dump of breakpoint

Here&apos;s a dump I got following gbarra&apos;s instructions =).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142829</commentid>
    <comment_count>11</comment_count>
      <attachid>38606</attachid>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-26 05:18:03 -0700</bug_when>
    <thetext>Created attachment 38606
jit_bactrace.txt

Backtrace I&apos;m getting when starting epiphany.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142996</commentid>
    <comment_count>12</comment_count>
      <attachid>38646</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-26 16:24:52 -0700</bug_when>
    <thetext>Created attachment 38646
Speculative fix

// stubCall.addArgument(ImmPtr(ident));
0x7fffe66e34d1: movq   $0xd0c308,0x10(%rsp)

Hmmm, okay, this is the problem, we&apos;re relying on a slightly OS X specific behaviour here (this accounts for the 6 byte difference - this instuction is 9 bytes &amp; we expect 15).

64-bit Mac OS applications have a 4Gb zero page, so pointers are never representable as a 32-bit integer, and always have to be represented by a separate immediate load instruction, rather than within the immediate field of an arithmetic or memory operation.  The problem is that you&apos;re hitting a pointer low in memory, and the MacroAssembler is finding a tighter encoding.

We explicitly check for a couple of cases where a value might be representable in 32-bit, but these probably never kick in on Mac OS, and only kick in on GTK to screw you over and break you here (sorry!). :-)  For now, I think we can just cheerfully remove these, and hopefully this will fix the problem for you (rather than coming up with any more complex solution  - since we don&apos;t expect these to really be hit right now, we don&apos;t really expect these to be benefitting us right now, either performance or memory wise).  On x86-64 we probably just want to stick to a general policy of never trying to compress pointers (on Arm plarforms we have to do something move complex, since ImmPtrs are always converted to Imm32s, so we have to track within the Imm32 whether the value is allowed to be compressed in a tighter encoding).

I don&apos;t have a linux box to test on, but I think the attacked patch should fix things for you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142997</commentid>
    <comment_count>13</comment_count>
      <attachid>38646</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-26 16:27:47 -0700</bug_when>
    <thetext>Comment on attachment 38646
Speculative fix

r=me, assuming the fix works.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143023</commentid>
    <comment_count>14</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-26 18:18:10 -0700</bug_when>
    <thetext>Sending        JavaScriptCore/ChangeLog
Sending        JavaScriptCore/assembler/MacroAssemblerX86_64.h
Transmitting file data ..
Committed revision 47802.


Please could a GTKer confirm whether this fixes &amp; let me know, so I can close the bug if so?

cheers,
G.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143054</commentid>
    <comment_count>15</comment_count>
      <attachid>38656</attachid>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-26 22:28:06 -0700</bug_when>
    <thetext>Created attachment 38656
jit_bactrace_with_speculative_patch.txt

Still running into Assertions :S

Is there anything else we could try to see what is causing this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143178</commentid>
    <comment_count>16</comment_count>
      <attachid>38681</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-27 13:22:56 -0700</bug_when>
    <thetext>Created attachment 38681
Fix pt II.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143179</commentid>
    <comment_count>17</comment_count>
      <attachid>38681</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-27 13:27:14 -0700</bug_when>
    <thetext>Comment on attachment 38681
Fix pt II.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143188</commentid>
    <comment_count>18</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-27 13:45:46 -0700</bug_when>
    <thetext>New fix (I&apos;d missed a case that handled unsigned extension, which would probably have been kicking in here - my first patch would have made GTK start emitting two instructions instead of one, as expected, but one of those instructions would contain a compressed immediate).

Give this a try, hopefully this one will nail it.

Sending        JavaScriptCore/ChangeLog
Sending        JavaScriptCore/assembler/MacroAssemblerX86Common.h
Sending        JavaScriptCore/assembler/X86Assembler.h
Transmitting file data ...
Committed revision 47834.



If not ...

Another backtrack would help, we need to understand what is getting generated &amp; why.  There is something I think I failed to explain properly previously.  The directions I gave above plant a breakpoint at the *end* of the failing instruction sequence, not at the start (since only at the end do we know there is a problem).  It looks like you&apos;re backtrace is for the instructions following the breakpoint, which are not the ones I need to see.

Because of the variable width instruction encoding on x86, reading previous instructions invloves a bit of guesswork, I&apos;m afraid.  Since we know the instructions we are looking for *should* be around 41 bytes before the breakpoint (but aren&apos;t exactly - or we wouldn&apos;t have a bug here!), then I&apos;d suggest subtracting 41 (decimal) from the RIP you break at, and dumping the instructions.  The trouble it, this may not get all the instructions we need, if the dump starts at the wrong offset (you&apos;ll see some instructions disassembled as &quot;(bad)&quot;, as in kov&apos;s trace).  To try to fix this you can just take a number of dumps at different starting points (+/- 1 to 4 bytes), and try to work out which ones look sensible – or just attach them all.

cheers,
G.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143404</commentid>
    <comment_count>19</comment_count>
    <who name="Priit Laes (IRC: plaes)">plaes</who>
    <bug_when>2009-08-28 10:42:38 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; New fix (I&apos;d missed a case that handled unsigned extension, which would
&gt; probably have been kicking in here - my first patch would have made GTK start
&gt; emitting two instructions instead of one, as expected, but one of those
&gt; instructions would contain a compressed immediate).
&gt; 
&gt; Give this a try, hopefully this one will nail it.
&gt; 
&gt; Sending        JavaScriptCore/ChangeLog
&gt; Sending        JavaScriptCore/assembler/MacroAssemblerX86Common.h
&gt; Sending        JavaScriptCore/assembler/X86Assembler.h
&gt; Transmitting file data ...
&gt; Committed revision 47834.

Woohoo :D

JIT seems to be working now :D

Now we only need a 64-bit Linux buildbot :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143432</commentid>
    <comment_count>20</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-28 12:53:47 -0700</bug_when>
    <thetext>I believe kov has confirmed this, so marking fixed.  Please reopen if this is not the case.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>34872</attachid>
            <date>2009-08-14 15:00:54 -0700</date>
            <delta_ts>2009-08-14 15:00:54 -0700</delta_ts>
            <desc>backtrace</desc>
            <filename>crash-backtrace.txt</filename>
            <type>text/plain</type>
            <size>25153</size>
            <attacher name="Gustavo Noronha (kov)">gustavo</attacher>
            
              <data encoding="base64">UHJvZ3JhbSByZWNlaXZlZCBzaWduYWwgU0lHU0VHViwgU2VnbWVudGF0aW9uIGZhdWx0LiAgCjB4
MDAwMDdmZmZmNjk5ZWE0YSBpbiBKU0M6OkpJVDo6Y29tcGlsZUdldEJ5SWRTbG93Q2FzZSAodGhp
cz0weDdmZmZmZmZmYjUxMCwgcmVzdWx0VlJlZz0xLCBiYXNlVlJlZz0tMTYsIGlkZW50PTB4YjRi
MDIwLAogICAgaXRlcj1AMHg3ZmZmZmZmZmIyNzgsIGlzTWV0aG9kQ2hlY2s9ZmFsc2UpIGF0IC4u
Ly4uL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRQcm9wZXJ0eUFjY2Vzcy5jcHA6MTI2MAoxMjYwICAg
ICAgICBBU1NFUlQoZGlmZmVyZW5jZUJldHdlZW4oY29sZFBhdGhCZWdpbiwgY2FsbCkgPT0gcGF0
Y2hPZmZzZXRHZXRCeUlkU2xvd0Nhc2VDYWxsKTsKKGdkYikgYnQgZnVsbAojMCAgMHgwMDAwN2Zm
ZmY2OTllYTRhIGluIEpTQzo6SklUOjpjb21waWxlR2V0QnlJZFNsb3dDYXNlICh0aGlzPTB4N2Zm
ZmZmZmZiNTEwLCByZXN1bHRWUmVnPTEsIGJhc2VWUmVnPS0xNiwgaWRlbnQ9MHhiNGIwMjAsIAog
ICAgaXRlcj1AMHg3ZmZmZmZmZmIyNzgsIGlzTWV0aG9kQ2hlY2s9ZmFsc2UpIGF0IC4uLy4uL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRQcm9wZXJ0eUFjY2Vzcy5jcHA6MTI2MAogICAgICAgIGNvbGRQ
YXRoQmVnaW4gPSB7bV9sYWJlbCA9IHttX29mZnNldCA9IDE2NTYsIG1fdXNlZCA9IGZhbHNlfX0K
ICAgICAgICBzdHViQ2FsbCA9IHtzdGF0aWMgc3RhY2tJbmRleFN0ZXAgPSAxLCBzdGF0aWMgc3Rh
Y2tJbmRleFN0YXJ0ID0gMSwgbV9qaXQgPSAweDdmZmZmZmZmYjUxMCwgbV9zdHViID0gMHg3ZmZm
ZjY5YjBhM2IsIAogICAgICAgICAgbV9yZXR1cm5UeXBlID0gSlNDOjpKSVRTdHViQ2FsbDo6Vm9p
ZFB0ciwgbV9zdGFja0luZGV4ID0gM30KICAgICAgICBjYWxsID0ge21fam1wID0ge21fb2Zmc2V0
ID0gMTY5MX0sIG1fZmxhZ3MgPSBKU0M6OkFic3RyYWN0TWFjcm9Bc3NlbWJsZXI8SlNDOjpYODZB
c3NlbWJsZXI+OjpDYWxsOjpMaW5rYWJsZX0KICAgICAgICBfX1BSRVRUWV9GVU5DVElPTl9fID0g
InZvaWQgSlNDOjpKSVQ6OmNvbXBpbGVHZXRCeUlkU2xvd0Nhc2UoaW50LCBpbnQsIEpTQzo6SWRl
bnRpZmllciosIEpTQzo6U2xvd0Nhc2VFbnRyeSomLCBib29sKSIKIzEgIDB4MDAwMDdmZmZmNjk5
ZWIwOCBpbiBKU0M6OkpJVDo6ZW1pdFNsb3dfb3BfZ2V0X2J5X2lkICh0aGlzPTB4N2ZmZmZmZmZi
NTEwLCBjdXJyZW50SW5zdHJ1Y3Rpb249MHhiOTdkYjAsIGl0ZXI9QDB4N2ZmZmZmZmZiMjc4KQog
ICAgYXQgLi4vLi4vSmF2YVNjcmlwdENvcmUvaml0L0pJVFByb3BlcnR5QWNjZXNzLmNwcDoxMjM0
CiAgICAgICAgcmVzdWx0VlJlZyA9IDEKICAgICAgICBiYXNlVlJlZyA9IDQyOTQ5NjcyODAKICAg
ICAgICBpZGVudCA9IDB4YjRiMDIwCiMyICAweDAwMDA3ZmZmZjY5ODgwNzEgaW4gSlNDOjpKSVQ6
OnByaXZhdGVDb21waWxlU2xvd0Nhc2VzICh0aGlzPTB4N2ZmZmZmZmZiNTEwKSBhdCAuLi8uLi9K
YXZhU2NyaXB0Q29yZS9qaXQvSklULmNwcDozODYKICAgICAgICBmaXJzdFRvID0gMTAKICAgICAg
ICBjdXJyZW50SW5zdHJ1Y3Rpb24gPSAweGI5N2RiMAogICAgICAgIGl0ZXIgPSAweGI5NmRkOAog
ICAgICAgIGluc3RydWN0aW9uc0JlZ2luID0gMHhiOTdkNjAKICAgICAgICBfX1BSRVRUWV9GVU5D
VElPTl9fID0gInZvaWQgSlNDOjpKSVQ6OnByaXZhdGVDb21waWxlU2xvd0Nhc2VzKCkiCiMzICAw
eDAwMDA3ZmZmZjY5OGEwNWIgaW4gSlNDOjpKSVQ6OnByaXZhdGVDb21waWxlICh0aGlzPTB4N2Zm
ZmZmZmZiNTEwKSBhdCAuLi8uLi9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmNwcDo0NjcKICAgICAg
ICBzbG93UmVnaXN0ZXJGaWxlQ2hlY2sgPSB7bV9qbXAgPSB7bV9vZmZzZXQgPSAtMX19CiAgICAg
ICAgYWZ0ZXJSZWdpc3RlckZpbGVDaGVjayA9IHttX2xhYmVsID0ge21fb2Zmc2V0ID0gLTEsIG1f
dXNlZCA9IGZhbHNlfX0KICAgICAgICBwYXRjaEJ1ZmZlciA9IHs8V1RGTm9uY29weWFibGU6Ok5v
bmNvcHlhYmxlPiA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwg
PE5vIGRhdGEgZmllbGRzPn0sIAogICAgICAgICAgbV9leGVjdXRhYmxlUG9vbCA9IHs8V1RGOjpG
YXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9wdHIgPSAweDdmZmZmMTliNDJm
NH0sIG1fY29kZSA9IDB4MSwgCiAgICAgICAgICBtX3NpemUgPSAxNDA3MzcyNDk0ODMyNjQsIG1f
Y29tcGxldGVkID0gMTYwfQogICAgICAgIG1ldGhvZENhbGxDb3VudCA9IDQyOTQ5NDg2MTYKICAg
ICAgICBfX1BSRVRUWV9GVU5DVElPTl9fID0gInZvaWQgSlNDOjpKSVQ6OnByaXZhdGVDb21waWxl
KCkiCiM0ICAweDAwMDA3ZmZmZjY5Y2NkYTAgaW4gSlNDOjpKSVQ6OmNvbXBpbGUgKGdsb2JhbERh
dGE9MHhiNDgyOTAsIGNvZGVCbG9jaz0weGI5M2VkMCkgYXQgLi4vLi4vSmF2YVNjcmlwdENvcmUv
aml0L0pJVC5oOjI4MwogICAgICAgIGppdCA9IHs8SlNDOjpNYWNyb0Fzc2VtYmxlcj4gPSB7PEpT
Qzo6TWFjcm9Bc3NlbWJsZXJYODZfNjQ+ID0gezxKU0M6Ok1hY3JvQXNzZW1ibGVyWDg2Q29tbW9u
PiA9IHs8SlNDOjpBYnN0cmFjdE1hY3JvQXNzZW1ibGVyPEpTQzo6WDg2QXNzZW1ibGVyPj4gPSB7
bV9hc3NlbWJsZXIgPSB7bV9mb3JtYXR0ZXIgPSB7c3RhdGljIG1heEluc3RydWN0aW9uU2l6ZSA9
IDE2LCBzdGF0aWMgbm9CYXNlID0gSlNDOjpYODY6OmVicCwKICAgICAgICAgICAgICAgICAgICAg
IHN0YXRpYyBoYXNTaWIgPSBKU0M6Olg4Njo6ZXNwLCBzdGF0aWMgbm9JbmRleCA9IEpTQzo6WDg2
Ojplc3AsIHN0YXRpYyBub0Jhc2UyID0gSlNDOjpYODY6OnIxMywKICAgICAgICAgICAgICAgICAg
ICAgIHN0YXRpYyBoYXNTaWIyID0gSlNDOjpYODY6OnIxMiwgbV9idWZmZXIgPSB7c3RhdGljIGlu
bGluZUNhcGFjaXR5ID0gMjU2LAogICAgICAgICAgICAgICAgICAgICAgICBtX2lubGluZUJ1ZmZl
ciA9ICJZSVwyMTFNXDMzMEhcMzA3RCRcYlwzMDArXDI3MVwwSFwyMTFcMzQ3TFwyMTFsJFhJXDI3
M1wwXDBcMFwwXDBcMFwwXDBBXDM3N1wzMjNJXDIxMVwyMDV4XDM3N1wzNzdcMzc3SceFcFwzNzdc
Mzc3XDM3N1xuXDBcMFwwSVwzMDdFXDBcblwwXDBcMElcMjEzRVwyMDBJXDIwNVwzMDdcMTdcMjA1
XDBcMFwwXDBJXDI3M1wzNzdcMzc3XDM3N1wzNzdcMzc3XDM3N1wzNzdcMzc3TDlYXGJcMTdcMjA1
XDBcMFwwXDBIXDIxM0BcMjBIXDIxM1wyMDBcMFwxXDBcMElcMjExRVxiSVwyNzNcMFwwXDBcMFww
XDBcMzc3XDM3N0w5XDMzMFwxN1wyMDRcMFwwXDBcMEw5XDM2MFwxN1wyMDNcMjRcMFwwXDBIXDIw
M1wzNzBcNlwxN1wyMDRcMFwwXDBcMEhcMjAzXDM3MFwyNlwxN1wyMDVcMFwwXDBcMEhcMjcwXDIw
MFwwXDI3M1wzNDFcMzc3XDE3N1wwXDBIXDIxMVwzMDJIXDI0MXBcNVwyNzFcMFwwXDBcMFwwSFwy
MDdcMzAySDtQXGJcMTdcMjA1IFwwXDBcMEhcMjEzQFwyMEhcMjExwqF4XDVcMjcxXDBcMFwwXDBc
MEhcMjA3XDMwMkhcMjEzXDRcMzIwSVwyMTFFXGJcMzUxXDBcMFwwXDBJXDI3M1wyMDBcMFwyNzNc
MzQxXDM3N1wxNzdcMFwwTFwyMTFcXCRcYkhcMzA3RCRcMjAgXDI2MFwyNjRcMFwzMlwzMDNcMzYx
XDM3N1wxNzdcMCIsCiAgICAgICAgICAgICAgICAgICAgICAgIG1fYnVmZmVyID0gMHhiOTc1MzAg
IllJXDIxMU1cMzMwSFwzMDdEJFxiXDMwMCtcMjcxIiwgbV9jYXBhY2l0eSA9IDE5NDQsIG1fc2l6
ZSA9IDE2OTV9fX19LCAKICAgICAgICAgICAgICAgIHN0YXRpYyBzdGFja1BvaW50ZXJSZWdpc3Rl
ciA9IEpTQzo6WDg2Ojplc3B9LCBzdGF0aWMgc2NyYXRjaFJlZ2lzdGVyID0gSlNDOjpYODY6OnIx
MSwgCiAgICAgICAgICAgICAgc3RhdGljIFNjYWxlUHRyID0gSlNDOjpBYnN0cmFjdE1hY3JvQXNz
ZW1ibGVyPEpTQzo6WDg2QXNzZW1ibGVyPjo6VGltZXNFaWdodH0sIDxObyBkYXRhIGZpZWxkcz59
LCAKICAgICAgICAgIHN0YXRpYyByZXR1cm5WYWx1ZVJlZ2lzdGVyID0gSlNDOjpYODY6OmVheCwg
c3RhdGljIGNhY2hlZFJlc3VsdFJlZ2lzdGVyID0gSlNDOjpYODY6OmVheCwgCiAgICAgICAgICBz
dGF0aWMgZmlyc3RBcmd1bWVudFJlZ2lzdGVyID0gSlNDOjpYODY6OmVkaSwgc3RhdGljIHRpbWVv
dXRDaGVja1JlZ2lzdGVyID0gSlNDOjpYODY6OnIxMiwgCiAgICAgICAgICBzdGF0aWMgY2FsbEZy
YW1lUmVnaXN0ZXIgPSBKU0M6Olg4Njo6cjEzLCBzdGF0aWMgdGFnVHlwZU51bWJlclJlZ2lzdGVy
ID0gSlNDOjpYODY6OnIxNCwgCiAgICAgICAgICBzdGF0aWMgdGFnTWFza1JlZ2lzdGVyID0gSlND
OjpYODY6OnIxNSwgc3RhdGljIHJlZ1QwID0gSlNDOjpYODY6OmVheCwgc3RhdGljIHJlZ1QxID0g
SlNDOjpYODY6OmVkeCwgCiAgICAgICAgICBzdGF0aWMgcmVnVDIgPSBKU0M6Olg4Njo6ZWN4LCBz
dGF0aWMgcmVnVDMgPSBKU0M6Olg4Njo6ZWJ4LCBzdGF0aWMgZnBSZWdUMCA9IDxvcHRpbWl6ZWQg
b3V0PiwgCiAgICAgICAgICBzdGF0aWMgZnBSZWdUMSA9IDxvcHRpbWl6ZWQgb3V0Piwgc3RhdGlj
IGZwUmVnVDIgPSA8b3B0aW1pemVkIG91dD4sIHN0YXRpYyBwYXRjaEdldEJ5SWREZWZhdWx0U3Ry
dWN0dXJlID0gLTEsIAogICAgICAgICAgc3RhdGljIHBhdGNoR2V0QnlJZERlZmF1bHRPZmZzZXQg
PSAyNTYsIHN0YXRpYyBwYXRjaE9mZnNldFB1dEJ5SWRTdHJ1Y3R1cmUgPSAxMCwgc3RhdGljIHBh
dGNoT2Zmc2V0UHV0QnlJZEV4dGVybmFsTG9hZCA9IDIwLCAKICAgICAgICAgIHN0YXRpYyBwYXRj
aExlbmd0aFB1dEJ5SWRFeHRlcm5hbExvYWQgPSA0LCBzdGF0aWMgcGF0Y2hPZmZzZXRQdXRCeUlk
UHJvcGVydHlNYXBPZmZzZXQgPSAzMSwgCiAgICAgICAgICBzdGF0aWMgcGF0Y2hPZmZzZXRHZXRC
eUlkU3RydWN0dXJlID0gMTAsIHN0YXRpYyBwYXRjaE9mZnNldEdldEJ5SWRCcmFuY2hUb1Nsb3dD
YXNlID0gMjAsIAogICAgICAgICAgc3RhdGljIHBhdGNoT2Zmc2V0R2V0QnlJZEV4dGVybmFsTG9h
ZCA9IDIwLCBzdGF0aWMgcGF0Y2hMZW5ndGhHZXRCeUlkRXh0ZXJuYWxMb2FkID0gNCwgCiAgICAg
ICAgICBzdGF0aWMgcGF0Y2hPZmZzZXRHZXRCeUlkUHJvcGVydHlNYXBPZmZzZXQgPSAzMSwgc3Rh
dGljIHBhdGNoT2Zmc2V0R2V0QnlJZFB1dFJlc3VsdCA9IDMxLCAKICAgICAgICAgIHN0YXRpYyBw
YXRjaE9mZnNldEdldEJ5SWRTbG93Q2FzZUNhbGwgPSA0MSwgc3RhdGljIHBhdGNoT2Zmc2V0T3BD
YWxsQ29tcGFyZVRvSnVtcCA9IDxvcHRpbWl6ZWQgb3V0PiwgCiAgICAgICAgICBzdGF0aWMgcGF0
Y2hPZmZzZXRNZXRob2RDaGVja1Byb3RvT2JqID0gMjAsIHN0YXRpYyBwYXRjaE9mZnNldE1ldGhv
ZENoZWNrUHJvdG9TdHJ1Y3QgPSAzMCwgCiAgICAgICAgICBzdGF0aWMgcGF0Y2hPZmZzZXRNZXRo
b2RDaGVja1B1dEZ1bmN0aW9uID0gNTAsIG1faW50ZXJwcmV0ZXIgPSAweGI0YjExMCwgbV9nbG9i
YWxEYXRhID0gMHhiNDgyOTAsIG1fY29kZUJsb2NrID0gMHhiOTNlZDAsIAogICAgICAgICAgbV9j
YWxscyA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9zaXpl
ID0gMTMsIAogICAgICAgICAgICBtX2J1ZmZlciA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNlPEpT
Qzo6Q2FsbFJlY29yZD4+ID0gezxXVEZOb25jb3B5YWJsZTo6Tm9uY29weWFibGU+ID0gezxXVEY6
OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+fSwg
bV9idWZmZXIgPSAweGI5M2M4MCwgbV9jYXBhY2l0eSA9IDE2fSwgPE5vIGRhdGEgZmllbGRzPn19
LCAKICAgICAgICAgIG1fbGFiZWxzID0gezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRh
IGZpZWxkcz59LCBtX3NpemUgPSAxNDcsIAogICAgICAgICAgICBtX2J1ZmZlciA9IHs8V1RGOjpW
ZWN0b3JCdWZmZXJCYXNlPEpTQzo6QWJzdHJhY3RNYWNyb0Fzc2VtYmxlcjxKU0M6Olg4NkFzc2Vt
Ymxlcj46OkxhYmVsPj4gPSB7PFdURk5vbmNvcHlhYmxlOjpOb25jb3B5YWJsZT4gPSB7PFdURjo6
RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZpZWxkcz59LCBt
X2J1ZmZlciA9IDB4Yjk2ZjcwLCBtX2NhcGFjaXR5ID0gMTQ3fSwgPE5vIGRhdGEgZmllbGRzPn19
LCAKICAgICAgICAgIG1fcHJvcGVydHlBY2Nlc3NDb21waWxhdGlvbkluZm8gPSB7PFdURjo6RmFz
dEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIG1fc2l6ZSA9IDcsIAogICAgICAgICAg
ICBtX2J1ZmZlciA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNlPEpTQzo6UHJvcGVydHlTdHViQ29t
cGlsYXRpb25JbmZvPj4gPSB7PFdURk5vbmNvcHlhYmxlOjpOb25jb3B5YWJsZT4gPSB7PFdURjo6
RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZpZWxkcz59LCBt
X2J1ZmZlciA9IDB4Yjk3MWQwLCBtX2NhcGFjaXR5ID0gN30sIDxObyBkYXRhIGZpZWxkcz59fSwg
CiAgICAgICAgICBtX2NhbGxTdHJ1Y3R1cmVTdHViQ29tcGlsYXRpb25JbmZvID0gezxXVEY6OkZh
c3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCBtX3NpemUgPSA1LCAKICAgICAgICAg
ICAgbV9idWZmZXIgPSB7PFdURjo6VmVjdG9yQnVmZmVyQmFzZTxKU0M6OlN0cnVjdHVyZVN0dWJD
b21waWxhdGlvbkluZm8+PiA9IHs8V1RGTm9uY29weWFibGU6Ok5vbmNvcHlhYmxlPiA9IHs8V1RG
OjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPE5vIGRhdGEgZmllbGRzPn0s
IG1fYnVmZmVyID0gMHhiOTcyMzAsIG1fY2FwYWNpdHkgPSA1fSwgPE5vIGRhdGEgZmllbGRzPn19
LCAKICAgICAgICAgIG1fbWV0aG9kQ2FsbENvbXBpbGF0aW9uSW5mbyA9IHs8V1RGOjpGYXN0QWxs
b2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9zaXplID0gNCwgCiAgICAgICAgICAgIG1f
YnVmZmVyID0gezxXVEY6OlZlY3RvckJ1ZmZlckJhc2U8SlNDOjpNZXRob2RDYWxsQ29tcGlsYXRp
b25JbmZvPj4gPSB7PFdURk5vbmNvcHlhYmxlOjpOb25jb3B5YWJsZT4gPSB7PFdURjo6RmFzdEFs
bG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZpZWxkcz59LCBtX2J1ZmZl
ciA9IDB4YjRjMDkwLCBtX2NhcGFjaXR5ID0gMTZ9LCA8Tm8gZGF0YSBmaWVsZHM+fX0sIAogICAg
ICAgICAgbV9qbXBUYWJsZSA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVs
ZHM+fSwgbV9zaXplID0gMCwgCiAgICAgICAgICAgIG1fYnVmZmVyID0gezxXVEY6OlZlY3RvckJ1
ZmZlckJhc2U8SlNDOjpKdW1wVGFibGU+PiA9IHs8V1RGTm9uY29weWFibGU6Ok5vbmNvcHlhYmxl
PiA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPE5vIGRhdGEg
ZmllbGRzPn0sIG1fYnVmZmVyID0gMHgwLCBtX2NhcGFjaXR5ID0gMH0sIDxObyBkYXRhIGZpZWxk
cz59fSwgbV9ieXRlY29kZUluZGV4ID0gMTAsIAogICAgICAgICAgbV9qc3JTaXRlcyA9IHs8V1RG
OjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9zaXplID0gMCwgCiAgICAg
ICAgICAgIG1fYnVmZmVyID0gezxXVEY6OlZlY3RvckJ1ZmZlckJhc2U8SlNDOjpKSVQ6OkpTUklu
Zm8+PiA9IHs8V1RGTm9uY29weWFibGU6Ok5vbmNvcHlhYmxlPiA9IHs8V1RGOjpGYXN0QWxsb2NC
YXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgPE5vIGRhdGEgZmllbGRzPn0sIG1fYnVmZmVyID0g
MHgwLCBtX2NhcGFjaXR5ID0gMH0sIDxObyBkYXRhIGZpZWxkcz59fSwgCiAgICAgICAgICBtX3Ns
b3dDYXNlcyA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9z
aXplID0gMjIsIAogICAgICAgICAgICBtX2J1ZmZlciA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNl
PEpTQzo6U2xvd0Nhc2VFbnRyeT4+ID0gezxXVEZOb25jb3B5YWJsZTo6Tm9uY29weWFibGU+ID0g
ezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVs
ZHM+fSwgbV9idWZmZXIgPSAweGI5NmRjMCwgbV9jYXBhY2l0eSA9IDI3fSwgPE5vIGRhdGEgZmll
bGRzPn19LCAKICAgICAgICAgIG1fc3dpdGNoZXMgPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7
PE5vIGRhdGEgZmllbGRzPn0sIG1fc2l6ZSA9IDAsIAogICAgICAgICAgICBtX2J1ZmZlciA9IHs8
V1RGOjpWZWN0b3JCdWZmZXJCYXNlPEpTQzo6U3dpdGNoUmVjb3JkPj4gPSB7PFdURk5vbmNvcHlh
YmxlOjpOb25jb3B5YWJsZT4gPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmll
bGRzPn0sIDxObyBkYXRhIGZpZWxkcz59LCBtX2J1ZmZlciA9IDB4MCwgbV9jYXBhY2l0eSA9IDB9
LCA8Tm8gZGF0YSBmaWVsZHM+fX0sIG1fcHJvcGVydHlBY2Nlc3NJbnN0cnVjdGlvbkluZGV4ID0g
MCwgCiAgICAgICAgICBtX2dsb2JhbFJlc29sdmVJbmZvSW5kZXggPSAzLCBtX2NhbGxMaW5rSW5m
b0luZGV4ID0gMCwgbV9sYXN0UmVzdWx0Qnl0ZWNvZGVSZWdpc3RlciA9IDEsIG1fanVtcFRhcmdl
dHNQb3NpdGlvbiA9IDF9CiM1ICAweDAwMDA3ZmZmZjZhNWU0ODkgaW4gSlNDOjpQcm9ncmFtTm9k
ZTo6Z2VuZXJhdGVKSVRDb2RlICh0aGlzPTB4YjkzOTgwLCBzY29wZUNoYWluTm9kZT0weGI0YmFm
MCkKICAgIGF0IC4uLy4uL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5jcHA6MTkxNAogICAg
ICAgIF9fUFJFVFRZX0ZVTkNUSU9OX18gPSAidm9pZCBKU0M6OlByb2dyYW1Ob2RlOjpnZW5lcmF0
ZUpJVENvZGUoSlNDOjpTY29wZUNoYWluTm9kZSopIgojNiAgMHgwMDAwN2ZmZmY2OWUwN2JlIGlu
IEpTQzo6UHJvZ3JhbU5vZGU6OmppdENvZGUgKHRoaXM9MHhiOTM5ODAsIHNjb3BlQ2hhaW49MHhi
NGJhZjApIGF0IC4uLy4uL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oOjE0ODgKTm8gbG9j
YWxzLgojNyAgMHgwMDAwN2ZmZmY2OWQxNTY5IGluIEpTQzo6SW50ZXJwcmV0ZXI6OmV4ZWN1dGUg
KHRoaXM9MHhiNGIxMTAsIHByb2dyYW1Ob2RlPTB4YjkzOTgwLCBjYWxsRnJhbWU9MHhiNGI4Mzgs
IHNjb3BlQ2hhaW49MHhiNGJhZjAsIAogICAgdGhpc09iaj0weDdmZmZlMWJiMDAwMCwgZXhjZXB0
aW9uPTB4N2ZmZmZmZmZiOGQwKSBhdCAuLi8uLi9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9J
bnRlcnByZXRlci5jcHA6NjU2CiAgICAgICAgY2FsbFJlY29yZCA9IHs8V1RGTm9uY29weWFibGU6
Ok5vbmNvcHlhYmxlPiA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+
fSwgPE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZpZWxkcz59CiAgICAgICAgY29kZUJsb2Nr
ID0gMHhiOTNlZDAKICAgICAgICBvbGRFbmQgPSAweDdmZmZlMWJkODAwMAogICAgICAgIG5ld0Vu
ZCA9IDB4N2ZmZmUxYmQ4MGIwCiAgICAgICAgZ2xvYmFsT2JqZWN0U2NvcGUgPSB7PFdURk5vbmNv
cHlhYmxlOjpOb25jb3B5YWJsZT4gPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEg
ZmllbGRzPn0sIDxObyBkYXRhIGZpZWxkcz59LCAKICAgICAgICAgIG1fZHluYW1pY0dsb2JhbE9i
amVjdFNsb3QgPSBAMHhiNDhkMzgsIG1fc2F2ZWREeW5hbWljR2xvYmFsT2JqZWN0ID0gMHgwfQog
ICAgICAgIGxhc3RHbG9iYWxPYmplY3QgPSAweDAKICAgICAgICBnbG9iYWxPYmplY3QgPSAweDdm
ZmZlMWJiMDA4MAogICAgICAgIG5ld0NhbGxGcmFtZSA9IDB4N2ZmZmUxYmQ4MDQ4CiAgICAgICAg
cHJvZmlsZXIgPSAweDdmZmZmN2RkZDAxMAogICAgICAgIHJlc3VsdCA9IHttX3B0ciA9IDB4MH0K
ICAgICAgICBfX1BSRVRUWV9GVU5DVElPTl9fID0gIkpTQzo6SlNWYWx1ZSBKU0M6OkludGVycHJl
dGVyOjpleGVjdXRlKEpTQzo6UHJvZ3JhbU5vZGUqLCBKU0M6OkNhbGxGcmFtZSosIEpTQzo6U2Nv
cGVDaGFpbk5vZGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpKU1ZhbHVlKikiCiM4ICAweDAwMDA3
ZmZmZjZhOTFkZTQgaW4gSlNDOjpldmFsdWF0ZSAoZXhlYz0weGI0YjgzOCwgc2NvcGVDaGFpbj0u
Li4sIHNvdXJjZT0uLi4sIHRoaXNWYWx1ZT0uLi4pCiAgICBhdCAuLi8uLi9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwOjY3CiAgICAgICAgbG9jayA9IHs8V1RGTm9uY29weWFi
bGU6Ok5vbmNvcHlhYmxlPiA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVs
ZHM+fSwgPE5vIGRhdGEgZmllbGRzPn0sIAogICAgICAgICAgbV9sb2NrQmVoYXZpb3IgPSBKU0M6
OlNpbGVuY2VBc3NlcnRpb25zT25seX0KICAgICAgICBlcnJMaW5lID0gLTEKICAgICAgICBlcnJN
c2cgPSB7bV9yZXAgPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0s
IG1fcHRyID0gMHg2YWRjZjB9LCBzdGF0aWMgbnVsbFVTdHJpbmcgPSAweDZhZGQ5MH0KICAgICAg
ICBwcm9ncmFtTm9kZSA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+
fSwgbV9wdHIgPSAweGI5Mzk4MH0KICAgICAgICB0aGlzT2JqID0gMHg3ZmZmZTFiYjAwMDAKICAg
ICAgICBleGNlcHRpb24gPSB7bV9wdHIgPSAweDB9CiAgICAgICAgcmVzdWx0ID0ge21fcHRyID0g
MHg3ZmZmZTFiYjAwODB9CiM5ICAweDAwMDA3ZmZmZjZiNGM3YjYgaW4gV2ViQ29yZTo6U2NyaXB0
Q29udHJvbGxlcjo6ZXZhbHVhdGUgKHRoaXM9MHg2Yzk1MzgsIHNvdXJjZUNvZGU9Li4uKQogICAg
YXQgLi4vLi4vV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcDoxMTQKICAg
ICAgICBqc1NvdXJjZUNvZGUgPSBAMHg3ZmZmZmZmZmJmODgKICAgICAgICBzb3VyY2VVUkwgPSB7
bV9pbXBsID0gezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCBtX3B0
ciA9IDB4YjAyOTIwfX0KICAgICAgICBleGVjID0gMHhiNGI4MzgKICAgICAgICBzYXZlZFNvdXJj
ZVVSTCA9IDB4MAogICAgICAgIGxvY2sgPSB7PFdURk5vbmNvcHlhYmxlOjpOb25jb3B5YWJsZT4g
PSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZp
ZWxkcz59LCAKICAgICAgICAgIG1fbG9ja0JlaGF2aW9yID0gSlNDOjpTaWxlbmNlQXNzZXJ0aW9u
c09ubHl9CiAgICAgICAgcHJvdGVjdCA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0
YSBmaWVsZHM+fSwgbV9wdHIgPSAweDZjOTBlMH0KICAgICAgICBjb21wID0ge21fdHlwZSA9IDQy
OTQ5NTA3ODQsIG1fdmFsdWUgPSB7bV9wdHIgPSAweDZjOTEzMH19CiMxMCAweDAwMDA3ZmZmZjZl
NDc1MTQgaW4gV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmV4ZWN1dGVTY3JpcHQgKHRoaXM9MHg2Yzkx
MzAsIHNvdXJjZUNvZGU9Li4uKQogICAgYXQgLi4vLi4vV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2Fk
ZXIuY3BwOjc2NAogICAgICAgIHdhc1J1bm5pbmdTY3JpcHQgPSBmYWxzZQogICAgICAgIHJlc3Vs
dCA9IHtfdnB0ci5TY3JpcHRWYWx1ZSA9IDB4N2ZmZmZmZmZiZjgwLCBtX3ZhbHVlID0ge21fdmFs
dWUgPSB7bV9wdHIgPSAweDZjOTBlMH19fQojMTEgMHgwMDAwN2ZmZmY2ZGMyMjc0IGluIFdlYkNv
cmU6OkhUTUxUb2tlbml6ZXI6OnNjcmlwdEV4ZWN1dGlvbiAodGhpcz0weGIwMTVkMCwgc291cmNl
Q29kZT0uLi4sIHN0YXRlPS4uLikKICAgIGF0IC4uLy4uL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5p
emVyLmNwcDo1NjEKICAgICAgICBzYXZlZFByZXBlbmRpbmdTcmMgPSAweDdmZmZmZmZmYmRiMAog
ICAgICAgIHByZXBlbmRpbmdTcmMgPSB7bV9wdXNoZWRDaGFyMSA9IDAsIG1fcHVzaGVkQ2hhcjIg
PSAwLCBtX2N1cnJlbnRTdHJpbmcgPSB7bV9sZW5ndGggPSAwLCBtX2N1cnJlbnQgPSAweDAsIG1f
c3RyaW5nID0gewogICAgICAgICAgICAgIG1faW1wbCA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9
IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9wdHIgPSAweDB9fSwgbV9kb05vdEV4Y2x1ZGVMaW5lTnVt
YmVycyA9IHRydWV9LCAKICAgICAgICAgIG1fY3VycmVudENoYXIgPSAweDAsIG1fc3Vic3RyaW5n
cyA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9zdGFydCA9
IDAsIG1fZW5kID0gMCwgCiAgICAgICAgICAgIG1fYnVmZmVyID0gezxXVEY6OlZlY3RvckJ1ZmZl
ckJhc2U8V2ViQ29yZTo6U2VnbWVudGVkU3Vic3RyaW5nPj4gPSB7PFdURk5vbmNvcHlhYmxlOjpO
b25jb3B5YWJsZT4gPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0s
IDxObyBkYXRhIGZpZWxkcz59LCBtX2J1ZmZlciA9IDB4MCwgbV9jYXBhY2l0eSA9IDB9LCA8Tm8g
ZGF0YSBmaWVsZHM+fSwgbV9pdGVyYXRvcnMgPSAweDB9LCBtX2NvbXBvc2l0ZSA9IGZhbHNlfQoj
MTIgMHgwMDAwN2ZmZmY2ZGMyZjkyIGluIFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OnNjcmlwdEhh
bmRsZXIgKHRoaXM9MHhiMDE1ZDAsIHN0YXRlPS4uLikgYXQgLi4vLi4vV2ViQ29yZS9odG1sL0hU
TUxUb2tlbml6ZXIuY3BwOjUwMwogICAgICAgIGRvU2NyaXB0RXhlYyA9IHRydWUKICAgICAgICBz
dGFydExpbmUgPSA0CiAgICAgICAgZm9sbG93aW5nRnJhbWVzZXQgPSBmYWxzZQogICAgICAgIGNz
ID0gMHgwCiAgICAgICAgbm9kZSA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBm
aWVsZHM+fSwgbV9wdHIgPSAweGFmZTc1MH0KICAgICAgICBzY3JpcHRTdHJpbmcgPSB7bV9pbXBs
ID0gezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCBtX3B0ciA9IDB4
YjQ3ZGYwfX0KICAgICAgICBzYXZlZFByZXBlbmRpbmdTcmMgPSAweDAKICAgICAgICBwcmVwZW5k
aW5nU3JjID0ge21fcHVzaGVkQ2hhcjEgPSAwLCBtX3B1c2hlZENoYXIyID0gMCwgbV9jdXJyZW50
U3RyaW5nID0ge21fbGVuZ3RoID0gMCwgbV9jdXJyZW50ID0gMHgwLCBtX3N0cmluZyA9IHsKICAg
ICAgICAgICAgICBtX2ltcGwgPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmll
bGRzPn0sIG1fcHRyID0gMHgwfX0sIG1fZG9Ob3RFeGNsdWRlTGluZU51bWJlcnMgPSB0cnVlfSwg
CiAgICAgICAgICBtX2N1cnJlbnRDaGFyID0gMHgwLCBtX3N1YnN0cmluZ3MgPSB7PFdURjo6RmFz
dEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIG1fc3RhcnQgPSAwLCBtX2VuZCA9IDAs
IAogICAgICAgICAgICBtX2J1ZmZlciA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNlPFdlYkNvcmU6
OlNlZ21lbnRlZFN1YnN0cmluZz4+ID0gezxXVEZOb25jb3B5YWJsZTo6Tm9uY29weWFibGU+ID0g
ezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVs
ZHM+fSwgbV9idWZmZXIgPSAweDAsIG1fY2FwYWNpdHkgPSAwfSwgPE5vIGRhdGEgZmllbGRzPn0s
IG1faXRlcmF0b3JzID0gMHgwfSwgbV9jb21wb3NpdGUgPSBmYWxzZX0KIzEzIDB4MDAwMDdmZmZm
NmRjMzcyNiBpbiBXZWJDb3JlOjpIVE1MVG9rZW5pemVyOjpwYXJzZU5vbkhUTUxUZXh0ICh0aGlz
PTB4YjAxNWQwLCBzcmM9Li4uLCBzdGF0ZT0uLi4pCiAgICBhdCAuLi8uLi9XZWJDb3JlL2h0bWwv
SFRNTFRva2VuaXplci5jcHA6MzUwCiAgICAgICAgY2ggPSA2MgogICAgICAgIGxhc3REZWNvZGVk
RW50aXR5UG9zaXRpb24gPSAtMQogICAgICAgIF9fUFJFVFRZX0ZVTkNUSU9OX18gPSAiV2ViQ29y
ZTo6SFRNTFRva2VuaXplcjo6U3RhdGUgV2ViQ29yZTo6SFRNTFRva2VuaXplcjo6cGFyc2VOb25I
VE1MVGV4dChXZWJDb3JlOjpTZWdtZW50ZWRTdHJpbmcmLCBXZWJDb3JlOjpIVE1MVG9rZW5pemVy
OjpTdGF0ZSkiCiMxNCAweDAwMDA3ZmZmZjZkYzVmMzUgaW4gV2ViQ29yZTo6SFRNTFRva2VuaXpl
cjo6cGFyc2VUYWcgKHRoaXM9MHhiMDE1ZDAsIHNyYz0uLi4sIHN0YXRlPS4uLikKICAgIGF0IC4u
Ly4uL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmNwcDoxNTIwCiAgICAgICAgc2F2ZWRTdGF0
ZSA9IHtzdGF0aWMgRW50aXR5U2hpZnQgPSA0LCBtX2JpdHMgPSAwfQogICAgICAgIHNhdmVkU3Jj
ID0ge21fcHVzaGVkQ2hhcjEgPSAwLCBtX3B1c2hlZENoYXIyID0gMCwgbV9jdXJyZW50U3RyaW5n
ID0ge21fbGVuZ3RoID0gNTgzLCBtX2N1cnJlbnQgPSAweGFmZjA5NiwgbV9zdHJpbmcgPSB7CiAg
ICAgICAgICAgICAgbV9pbXBsID0gezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZp
ZWxkcz59LCBtX3B0ciA9IDB4YWZmMDAwfX0sIG1fZG9Ob3RFeGNsdWRlTGluZU51bWJlcnMgPSB0
cnVlfSwgCiAgICAgICAgICBtX2N1cnJlbnRDaGFyID0gMHhhZmYwOTYsIG1fc3Vic3RyaW5ncyA9
IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9zdGFydCA9IDAs
IG1fZW5kID0gMCwgCiAgICAgICAgICAgIG1fYnVmZmVyID0gezxXVEY6OlZlY3RvckJ1ZmZlckJh
c2U8V2ViQ29yZTo6U2VnbWVudGVkU3Vic3RyaW5nPj4gPSB7PFdURk5vbmNvcHlhYmxlOjpOb25j
b3B5YWJsZT4gPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIDxO
byBkYXRhIGZpZWxkcz59LCBtX2J1ZmZlciA9IDB4YWQ2MTQwLCBtX2NhcGFjaXR5ID0gMH0sIDxO
byBkYXRhIGZpZWxkcz59LCBtX2l0ZXJhdG9ycyA9IDB4MH0sIAogICAgICAgICAgbV9jb21wb3Np
dGUgPSBmYWxzZX0KICAgICAgICBzYXZlZExpbmVubyA9IDMKICAgICAgICB0YWdOYW1lID0ge21f
c3RyaW5nID0ge21faW1wbCA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVs
ZHM+fSwgbV9wdHIgPSAweDZjZGE5MH19fQogICAgICAgIGlzU2VsZkNsb3NpbmdTY3JpcHQgPSBm
YWxzZQogICAgICAgIGJlZ2luVGFnID0gdHJ1ZQogICAgICAgIG4gPSB7PFdURjo6RmFzdEFsbG9j
QmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIG1fcHRyID0gMHhhZmU2MzB9CiAgICAgICAgY0J1
ZmZlclBvcyA9IDAKICAgICAgICBsYXN0SXNTbGFzaCA9IGZhbHNlCiAgICAgICAgX19QUkVUVFlf
RlVOQ1RJT05fXyA9ICJXZWJDb3JlOjpIVE1MVG9rZW5pemVyOjpTdGF0ZSBXZWJDb3JlOjpIVE1M
VG9rZW5pemVyOjpwYXJzZVRhZyhXZWJDb3JlOjpTZWdtZW50ZWRTdHJpbmcmLCBXZWJDb3JlOjpI
VE1MVG9rZW5pemVyOjpTdGF0ZSkiCiMxNSAweDAwMDA3ZmZmZjZkYzZhN2IgaW4gV2ViQ29yZTo6
SFRNTFRva2VuaXplcjo6d3JpdGUgKHRoaXM9MHhiMDE1ZDAsIHN0cj0uLi4sIGFwcGVuZERhdGE9
dHJ1ZSkKICAgIGF0IC4uLy4uL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmNwcDoxNzQ4CiAg
ICAgICAgY2MgPSAxMTUKICAgICAgICB3YXNTa2lwTEYgPSBmYWxzZQogICAgICAgIHNvdXJjZSA9
IHttX3B1c2hlZENoYXIxID0gMCwgbV9wdXNoZWRDaGFyMiA9IDAsIG1fY3VycmVudFN0cmluZyA9
IHttX2xlbmd0aCA9IDYzMCwgbV9jdXJyZW50ID0gMHhhZmYwMzgsIG1fc3RyaW5nID0gewogICAg
ICAgICAgICAgIG1faW1wbCA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVs
ZHM+fSwgbV9wdHIgPSAweGFmZjAwMH19LCBtX2RvTm90RXhjbHVkZUxpbmVOdW1iZXJzID0gdHJ1
ZX0sIAogICAgICAgICAgbV9jdXJyZW50Q2hhciA9IDB4YWZmMDM4LCBtX3N1YnN0cmluZ3MgPSB7
PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIG1fc3RhcnQgPSAwLCBt
X2VuZCA9IDAsIAogICAgICAgICAgICBtX2J1ZmZlciA9IHs8V1RGOjpWZWN0b3JCdWZmZXJCYXNl
PFdlYkNvcmU6OlNlZ21lbnRlZFN1YnN0cmluZz4+ID0gezxXVEZOb25jb3B5YWJsZTo6Tm9uY29w
eWFibGU+ID0gezxXVEY6OkZhc3RBbGxvY0Jhc2U+ID0gezxObyBkYXRhIGZpZWxkcz59LCA8Tm8g
ZGF0YSBmaWVsZHM+fSwgbV9idWZmZXIgPSAweGFmYzg0MCwgbV9jYXBhY2l0eSA9IDB9LCA8Tm8g
ZGF0YSBmaWVsZHM+fSwgbV9pdGVyYXRvcnMgPSAweDB9LCAKICAgICAgICAgIG1fY29tcG9zaXRl
ID0gZmFsc2V9CiAgICAgICAgd2FzSW5Xcml0ZSA9IGZhbHNlCiAgICAgICAgcHJvY2Vzc2VkQ291
bnQgPSAxMwogICAgICAgIHN0YXJ0VGltZSA9IDEyNTAyODQ2MTguOTc1OTA0CiAgICAgICAgZnJh
bWUgPSAweDZjOTBlMAogICAgICAgIHN0YXRlID0ge3N0YXRpYyBFbnRpdHlTaGlmdCA9IDQsIG1f
Yml0cyA9IDF9CiMxNiAweDAwMDA3ZmZmZjZlNDY1ODggaW4gV2ViQ29yZTo6RnJhbWVMb2FkZXI6
OndyaXRlICh0aGlzPTB4NmM5MTMwLCBzdHI9MHgwLCBsZW49MCwgZmx1c2g9dHJ1ZSkKICAgIGF0
IC4uLy4uL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoxMDE5CiAgICAgICAgdG9rZW5p
emVyID0gMHhiMDE1ZDAKICAgICAgICBkZWNvZGVkID0ge21faW1wbCA9IHs8V1RGOjpGYXN0QWxs
b2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9wdHIgPSAweGFmZjAwMH19CiAgICAgICAg
X19QUkVUVFlfRlVOQ1RJT05fXyA9ICJ2b2lkIFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3cml0ZShj
b25zdCBjaGFyKiwgaW50LCBib29sKSIKIzE3IDB4MDAwMDdmZmZmNmU0Njc0NSBpbiBXZWJDb3Jl
OjpGcmFtZUxvYWRlcjo6ZW5kSWZOb3RMb2FkaW5nTWFpblJlc291cmNlICh0aGlzPTB4NmM5MTMw
KQogICAgYXQgLi4vLi4vV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwOjEwNTQKICAgICAg
ICBwcm90ZWN0b3IgPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0s
IG1fcHRyID0gMHg2YzkwZTB9CiMxOCAweDAwMDA3ZmZmZjZlNDY3OGEgaW4gV2ViQ29yZTo6RnJh
bWVMb2FkZXI6OmVuZCAodGhpcz0weDZjOTEzMCkgYXQgLi4vLi4vV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOjEwNDAKTm8gbG9jYWxzLgojMTkgMHgwMDAwN2ZmZmY2ZTI3NThlIGluIFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyOjpmaW5pc2hlZExvYWRpbmcgKHRoaXM9MHhiMzg1MTApIGF0
IC4uLy4uL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcDozMzEKICAgICAgICBsb2Fk
ZXIgPSAweDZjOTEzMAojMjAgMHgwMDAwN2ZmZmY2ZTQzMjExIGluIFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjpmaW5pc2hlZExvYWRpbmcgKHRoaXM9MHg2YzkxMzApIGF0IC4uLy4uL1dlYkNvcmUvbG9h
ZGVyL0ZyYW1lTG9hZGVyLmNwcDozMTI5CiAgICAgICAgcHJvdGVjdCA9IHs8V1RGOjpGYXN0QWxs
b2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9wdHIgPSAweDZjOTBlMH0KICAgICAgICBk
bCA9IHs8V1RGOjpGYXN0QWxsb2NCYXNlPiA9IHs8Tm8gZGF0YSBmaWVsZHM+fSwgbV9wdHIgPSAw
eGIzODUxMH0KIzIxIDB4MDAwMDdmZmZmNmU1Nzg1NSBpbiBXZWJDb3JlOjpNYWluUmVzb3VyY2VM
b2FkZXI6OmRpZEZpbmlzaExvYWRpbmcgKHRoaXM9MHhiMzk3OTApCiAgICBhdCAuLi8uLi9XZWJD
b3JlL2xvYWRlci9NYWluUmVzb3VyY2VMb2FkZXIuY3BwOjM3MQogICAgICAgIHByb3RlY3QgPSB7
PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRzPn0sIG1fcHRyID0gMHhiMzk3
OTB9CiAgICAgICAgZGwgPSB7PFdURjo6RmFzdEFsbG9jQmFzZT4gPSB7PE5vIGRhdGEgZmllbGRz
Pn0sIG1fcHRyID0gMHhiMzg1MTB9CiAgICAgICAgX19QUkVUVFlfRlVOQ1RJT05fXyA9ICJ2aXJ0
dWFsIHZvaWQgV2ViQ29yZTo6TWFpblJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKCki
CiMyMiAweDAwMDA3ZmZmZjZlNWVhOGEgaW4gV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmRpZEZp
bmlzaExvYWRpbmcgKHRoaXM9MHhiMzk3OTApIGF0IC4uLy4uL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmNwcDo0MDIKTm8gbG9jYWxzLgojMjMgMHgwMDAwN2ZmZmY3MTk4NTlkIGluIGZp
bmlzaGVkQ2FsbGJhY2sgKHNlc3Npb249MHg2YWMxODAsIG1zZz0weGFkZmMwMCwgZGF0YT0weGIy
YzAwMCkKICAgIGF0IC4uLy4uL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNl
SGFuZGxlU291cC5jcHA6MzE2CiAgICAgICAgaGFuZGxlID0gezxXVEY6OkZhc3RBbGxvY0Jhc2U+
ID0gezxObyBkYXRhIGZpZWxkcz59LCBtX3B0ciA9IDB4YjJjMDAwfQogICAgICAgIGQgPSAweGFm
ZTIyMAogICAgICAgIGNsaWVudCA9IDB4YjM5NzkwCiMyNCAweDAwMDA3ZmZmZjI4Yzc2YTUgaW4g
ZmluYWxfZmluaXNoZWQgKHJlcT0weGFkZmMwMCwgdXNlcl9kYXRhPTx2YWx1ZSBvcHRpbWl6ZWQg
b3V0PikgYXQgc291cC1zZXNzaW9uLWFzeW5jLmM6Mzg0CiAgICAgICAgaXRlbSA9IDB4YWY4NDAw
CiAgICAgICAgc2Vzc2lvbiA9IDB4NmFjMTgwCiMyNSAweDAwMDA3ZmZmZjRlZjI1MWQgaW4gSUFf
X2dfY2xvc3VyZV9pbnZva2UgKGNsb3N1cmU9MHg2ZWYzODAsIHJldHVybl92YWx1ZT0weDAsIG5f
cGFyYW1fdmFsdWVzPTEsIHBhcmFtX3ZhbHVlcz0weDZlNDUyMCwgCiAgICBpbnZvY2F0aW9uX2hp
bnQ9MHg3ZmZmZmZmZmM5YzApIGF0IGdjbG9zdXJlLmM6NzY3CiAgICAgICAgbWFyc2hhbCA9IDB4
N2ZmZmY0ZWZlZmQwIDxJQV9fZ19jY2xvc3VyZV9tYXJzaGFsX1ZPSURfX1ZPSUQ+CiAgICAgICAg
bWFyc2hhbF9kYXRhID0gMHgwCiAgICAgICAgX19QUkVUVFlfRlVOQ1RJT05fXyA9ICJJQV9fZ19j
bG9zdXJlX2ludm9rZSIKIzI2IDB4MDAwMDdmZmZmNGYwOTVhZiBpbiBzaWduYWxfZW1pdF91bmxv
Y2tlZF9SIChub2RlPTB4YWRkZjkwLCBkZXRhaWw9MCwgaW5zdGFuY2U9MHhhZGZjMDAsIGVtaXNz
aW9uX3JldHVybj0weDAsIAogICAgaW5zdGFuY2VfYW5kX3BhcmFtcz0weDZlNDUyMCkgYXQgZ3Np
Z25hbC5jOjMzMTcKICAgICAgICB0bXAgPSA8dmFsdWUgb3B0aW1pemVkIG91dD4KICAgICAgICBo
YW5kbGVyID0gMHhhZGJiMjAKICAgICAgICBhY2N1bXVsYXRvciA9IDB4MAogICAgICAgIGVtaXNz
aW9uID0ge25leHQgPSAweDdmZmZmZmZmY2RkMCwgaW5zdGFuY2UgPSAweGFkZmMwMCwgaWhpbnQg
PSB7c2lnbmFsX2lkID0gMTgzLCBkZXRhaWwgPSAwLCBydW5fdHlwZSA9IEdfU0lHTkFMX1JVTl9M
QVNUfSwgCiAgICAgICAgICBzdGF0ZSA9IEVNSVNTSU9OX1JVTiwgY2hhaW5fdHlwZSA9IDR9CiAg
ICAgICAgY2xhc3NfY2xvc3VyZSA9IDB4YWRkZjIwCiAgICAgICAgaGFuZGxlcl9saXN0ID0gMHg2
YjNiNTAKICAgICAgICByZXR1cm5fYWNjdSA9IDB4MAogICAgICAgIGFjY3UgPSB7Z190eXBlID0g
MCwgZGF0YSA9IHt7dl9pbnQgPSAwLCB2X3VpbnQgPSAwLCB2X2xvbmcgPSAwLCB2X3Vsb25nID0g
MCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0gMCwgdl9mbG9hdCA9IDAsIAogICAgICAgICAgICAg
IHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0gMHgwfSwge3ZfaW50ID0gMCwgdl91aW50ID0gMCwg
dl9sb25nID0gMCwgdl91bG9uZyA9IDAsIHZfaW50NjQgPSAwLCB2X3VpbnQ2NCA9IDAsIHZfZmxv
YXQgPSAwLCAKICAgICAgICAgICAgICB2X2RvdWJsZSA9IDAsIHZfcG9pbnRlciA9IDB4MH19fQog
ICAgICAgIHNpZ25hbF9pZCA9IDE4MwogICAgICAgIG1heF9zZXF1ZW50aWFsX2hhbmRsZXJfbnVt
YmVyID0gMTA2CiAgICAgICAgcmV0dXJuX3ZhbHVlX2FsdGVyZWQgPSAxCiMyNyAweDAwMDA3ZmZm
ZjRmMGE1ZWYgaW4gSUFfX2dfc2lnbmFsX2VtaXRfdmFsaXN0IChpbnN0YW5jZT0weGFkZmMwMCwg
c2lnbmFsX2lkPTx2YWx1ZSBvcHRpbWl6ZWQgb3V0PiwgZGV0YWlsPTAsIAogICAgdmFyX2FyZ3M9
MHg3ZmZmZmZmZmNiYTApIGF0IGdzaWduYWwuYzoyOTgwCiAgICAgICAgc2lnbmFsX3JldHVybl90
eXBlID0gNAogICAgICAgIHBhcmFtX3ZhbHVlcyA9IDB4NmU0NTM4CiAgICAgICAgbm9kZSA9IDB4
YWRkZjkwCiAgICAgICAgaSA9IDAKICAgICAgICBuX3BhcmFtcyA9IDAKICAgICAgICBfX1BSRVRU
WV9GVU5DVElPTl9fID0gIklBX19nX3NpZ25hbF9lbWl0X3ZhbGlzdCIKIzI4IDB4MDAwMDdmZmZm
NGYwYWFmMyBpbiBJQV9fZ19zaWduYWxfZW1pdCAoaW5zdGFuY2U9MHg3ZmZmZmZmZmE4NzAsIHNp
Z25hbF9pZD0wLCBkZXRhaWw9NDI5NDk0NDg4MCkgYXQgZ3NpZ25hbC5jOjMwMzcKICAgICAgICB2
YXJfYXJncyA9IHt7Z3Bfb2Zmc2V0ID0gMjQsIGZwX29mZnNldCA9IDQ4LCBvdmVyZmxvd19hcmdf
YXJlYSA9IDB4N2ZmZmZmZmZjYzgwLCByZWdfc2F2ZV9hcmVhID0gMHg3ZmZmZmZmZmNiYzB9fQoj
MjkgMHgwMDAwN2ZmZmYyOGJlMGE1IGluIHNvdXBfbWVzc2FnZV9pb19maW5pc2hlZCAobXNnPTB4
YWRmYzAwKSBhdCBzb3VwLW1lc3NhZ2UtaW8uYzoxNzYKTm8gbG9jYWxzLgojMzAgMHgwMDAwN2Zm
ZmY0ZWYyNTFkIGluIElBX19nX2Nsb3N1cmVfaW52b2tlIChjbG9zdXJlPTB4YjJjMDYwLCByZXR1
cm5fdmFsdWU9MHgwLCBuX3BhcmFtX3ZhbHVlcz0xLCBwYXJhbV92YWx1ZXM9MHg2ZTQzMDAsIAog
ICAgaW52b2NhdGlvbl9oaW50PTB4N2ZmZmZmZmZjZGUwKSBhdCBnY2xvc3VyZS5jOjc2NwogICAg
ICAgIG1hcnNoYWwgPSAweDdmZmZmNGVmZWZkMCA8SUFfX2dfY2Nsb3N1cmVfbWFyc2hhbF9WT0lE
X19WT0lEPgogICAgICAgIG1hcnNoYWxfZGF0YSA9IDB4MAogICAgICAgIF9fUFJFVFRZX0ZVTkNU
SU9OX18gPSAiSUFfX2dfY2xvc3VyZV9pbnZva2UiCiMzMSAweDAwMDA3ZmZmZjRmMDkwM2UgaW4g
c2lnbmFsX2VtaXRfdW5sb2NrZWRfUiAobm9kZT0weGFmODgwMCwgZGV0YWlsPTAsIGluc3RhbmNl
PTB4YWY5OTkwLCBlbWlzc2lvbl9yZXR1cm49MHgwLCAKICAgIGluc3RhbmNlX2FuZF9wYXJhbXM9
MHg2ZTQzMDApIGF0IGdzaWduYWwuYzozMjQ3CiAgICAgICAgdG1wID0gPHZhbHVlIG9wdGltaXpl
ZCBvdXQ+CiAgICAgICAgaGFuZGxlciA9IDB4YWRiOTkwCiAgICAgICAgYWNjdW11bGF0b3IgPSAw
eDAKICAgICAgICBlbWlzc2lvbiA9IHtuZXh0ID0gMHgwLCBpbnN0YW5jZSA9IDB4YWY5OTkwLCBp
aGludCA9IHtzaWduYWxfaWQgPSAxODcsIGRldGFpbCA9IDAsIHJ1bl90eXBlID0gR19TSUdOQUxf
UlVOX0ZJUlNUfSwgCiAgICAgICAgICBzdGF0ZSA9IEVNSVNTSU9OX1JVTiwgY2hhaW5fdHlwZSA9
IDR9CiAgICAgICAgY2xhc3NfY2xvc3VyZSA9IDB4YWY3ZjcwCiAgICAgICAgaGFuZGxlcl9saXN0
ID0gMHhhZGI5OTAKICAgICAgICByZXR1cm5fYWNjdSA9IDB4MAogICAgICAgIGFjY3UgPSB7Z190
eXBlID0gMCwgZGF0YSA9IHt7dl9pbnQgPSAwLCB2X3VpbnQgPSAwLCB2X2xvbmcgPSAwLCB2X3Vs
b25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0gMCwgdl9mbG9hdCA9IDAsIAogICAgICAg
ICAgICAgIHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0gMHgwfSwge3ZfaW50ID0gMCwgdl91aW50
ID0gMCwgdl9sb25nID0gMCwgdl91bG9uZyA9IDAsIHZfaW50NjQgPSAwLCB2X3VpbnQ2NCA9IDAs
IHZfZmxvYXQgPSAwLCAKICAgICAgICAgICAgICB2X2RvdWJsZSA9IDAsIHZfcG9pbnRlciA9IDB4
MH19fQogICAgICAgIHNpZ25hbF9pZCA9IDE4NwogICAgICAgIG1heF9zZXF1ZW50aWFsX2hhbmRs
ZXJfbnVtYmVyID0gMTA2CiAgICAgICAgcmV0dXJuX3ZhbHVlX2FsdGVyZWQgPSAwCiMzMiAweDAw
MDA3ZmZmZjRmMGE1ZWYgaW4gSUFfX2dfc2lnbmFsX2VtaXRfdmFsaXN0IChpbnN0YW5jZT0weGFm
OTk5MCwgc2lnbmFsX2lkPTx2YWx1ZSBvcHRpbWl6ZWQgb3V0PiwgZGV0YWlsPTAsIAogICAgdmFy
X2FyZ3M9MHg3ZmZmZmZmZmNmYzApIGF0IGdzaWduYWwuYzoyOTgwCiAgICAgICAgc2lnbmFsX3Jl
dHVybl90eXBlID0gNAogICAgICAgIHBhcmFtX3ZhbHVlcyA9IDB4NmU0MzE4CiAgICAgICAgbm9k
ZSA9IDB4YWY4ODAwCiAgICAgICAgaSA9IDAKICAgICAgICBuX3BhcmFtcyA9IDAKICAgICAgICBf
X1BSRVRUWV9GVU5DVElPTl9fID0gIklBX19nX3NpZ25hbF9lbWl0X3ZhbGlzdCIKIzMzIDB4MDAw
MDdmZmZmNGYwYWFmMyBpbiBJQV9fZ19zaWduYWxfZW1pdCAoaW5zdGFuY2U9MHg3ZmZmZmZmZmE4
NzAsIHNpZ25hbF9pZD0wLCBkZXRhaWw9NDI5NDk0NDg4MCkgYXQgZ3NpZ25hbC5jOjMwMzcKICAg
ICAgICB2YXJfYXJncyA9IHt7Z3Bfb2Zmc2V0ID0gMjQsIGZwX29mZnNldCA9IDQ4LCBvdmVyZmxv
d19hcmdfYXJlYSA9IDB4N2ZmZmZmZmZkMGEwLCByZWdfc2F2ZV9hcmVhID0gMHg3ZmZmZmZmZmNm
ZTB9fQojMzQgMHgwMDAwN2ZmZmYyOGM5NjUyIGluIHNvY2tldF9yZWFkX3dhdGNoIChjaGFuPTx2
YWx1ZSBvcHRpbWl6ZWQgb3V0PiwgY29uZD0wLCB1c2VyX2RhdGE9PHZhbHVlIG9wdGltaXplZCBv
dXQ+KSBhdCBzb3VwLXNvY2tldC5jOjExODEKICAgICAgICBzb2NrID0gMHhhZjk5OTAKIzM1IDB4
MDAwMDdmZmZmNGEzN2RjYSBpbiBnX21haW5fZGlzcGF0Y2ggKGNvbnRleHQ9MHg2NjZkNTApIGF0
IGdtYWluLmM6MTk2MAogICAgICAgIF9fUFJFVFRZX0ZVTkNUSU9OX18gPSAiZ19tYWluX2Rpc3Bh
dGNoIgojMzYgSUFfX2dfbWFpbl9jb250ZXh0X2Rpc3BhdGNoIChjb250ZXh0PTB4NjY2ZDUwKSBh
dCBnbWFpbi5jOjI1MTMKTm8gbG9jYWxzLgojMzcgMHgwMDAwN2ZmZmY0YTNiNjI4IGluIGdfbWFp
bl9jb250ZXh0X2l0ZXJhdGUgKGNvbnRleHQ9MHg2NjZkNTAsIGJsb2NrPTEsIGRpc3BhdGNoPTEs
IHNlbGY9PHZhbHVlIG9wdGltaXplZCBvdXQ+KSBhdCBnbWFpbi5jOjI1OTEKICAgICAgICBtYXhf
cHJpb3JpdHkgPSAyMTQ3NDgzNjQ3CiAgICAgICAgdGltZW91dCA9IC0xCiAgICAgICAgc29tZV9y
ZWFkeSA9IDEKICAgICAgICBuZmRzID0gMwogICAgICAgIGFsbG9jYXRlZF9uZmRzID0gPHZhbHVl
IG9wdGltaXplZCBvdXQ+CiAgICAgICAgZmRzID0gMHg3MDY0MTAKICAgICAgICBfX1BSRVRUWV9G
VU5DVElPTl9fID0gImdfbWFpbl9jb250ZXh0X2l0ZXJhdGUiCiMzOCAweDAwMDA3ZmZmZjRhM2I3
ZGMgaW4gSUFfX2dfbWFpbl9jb250ZXh0X2l0ZXJhdGlvbiAoY29udGV4dD0weDY2NmQ1MCwgbWF5
X2Jsb2NrPTEpIGF0IGdtYWluLmM6MjY1NAogICAgICAgIHJldHZhbCA9IDx2YWx1ZSBvcHRpbWl6
ZWQgb3V0PgojMzkgMHgwMDAwMDAwMDAwNDBkZTU2IGluIHJ1blRlc3QgKHRlc3RQYXRoT3JVUkw9
Li4uKSBhdCAuLi8uLi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRlclRy
ZWUuY3BwOjQyOAogICAgICAgIHBhdGhPclVSTCA9IHtzdGF0aWMgbnBvcyA9IDE4NDQ2NzQ0MDcz
NzA5NTUxNjE1LCAKICAgICAgICAgIF9NX2RhdGFwbHVzID0gezxzdGQ6OmFsbG9jYXRvcjxjaGFy
Pj4gPSB7PF9fZ251X2N4eDo6bmV3X2FsbG9jYXRvcjxjaGFyPj4gPSB7PE5vIGRhdGEgZmllbGRz
Pn0sIDxObyBkYXRhIGZpZWxkcz59LCAKICAgICAgICAgICAgX01fcCA9IDB4YWQ4YTY4ICJodHRw
Oi8vMTI3LjAuMC4xOjgwODAveG1saHR0cHJlcXVlc3Qvb3JpZ2luLWhlYWRlci1jcm9zcy1vcmln
aW4tZ2V0LWFzeW5jLmh0bWwifX0KICAgICAgICBleHBlY3RlZFBpeGVsSGFzaCA9IHtzdGF0aWMg
bnBvcyA9IDE4NDQ2NzQ0MDczNzA5NTUxNjE1LCAKICAgICAgICAgIF9NX2RhdGFwbHVzID0gezxz
dGQ6OmFsbG9jYXRvcjxjaGFyPj4gPSB7PF9fZ251X2N4eDo6bmV3X2FsbG9jYXRvcjxjaGFyPj4g
PSB7PE5vIGRhdGEgZmllbGRzPn0sIDxObyBkYXRhIGZpZWxkcz59LCAKICAgICAgICAgICAgX01f
cCA9IDB4N2ZmZmYyM2NlMTU4ICIifX0KICAgICAgICBzZXBhcmF0b3JQb3MgPSAxODQ0Njc0NDA3
MzcwOTU1MTYxNQogICAgICAgIHVybCA9IDB4MAogICAgICAgIHRlc3RVUkwgPSB7c3RhdGljIG5w
b3MgPSAxODQ0Njc0NDA3MzcwOTU1MTYxNSwgCiAgICAgICAgICBfTV9kYXRhcGx1cyA9IHs8c3Rk
OjphbGxvY2F0b3I8Y2hhcj4+ID0gezxfX2dudV9jeHg6Om5ld19hbGxvY2F0b3I8Y2hhcj4+ID0g
ezxObyBkYXRhIGZpZWxkcz59LCA8Tm8gZGF0YSBmaWVsZHM+fSwgCiAgICAgICAgICAgIF9NX3Ag
PSAweGFkMmU1OCAiaHR0cDovLzEyNy4wLjAuMTo4MDgwL3htbGh0dHByZXF1ZXN0L29yaWdpbi1o
ZWFkZXItY3Jvc3Mtb3JpZ2luLWdldC1hc3luYy5odG1sIn19CiAgICAgICAgaXNTVkdXM0NUZXN0
ID0gZmFsc2UKICAgICAgICBzaXplID0ge3ggPSAyMDQ3LCB5ID0gMCwgd2lkdGggPSA4MDAsIGhl
aWdodCA9IDYwMH0KICAgICAgICBiZkxpc3QgPSAweDZiMzQ0MAogICAgICAgIF9fUFJFVFRZX0ZV
TkNUSU9OX18gPSAidm9pZCBydW5UZXN0KGNvbnN0IHN0ZDo6c3RyaW5nJikiCiM0MCAweDAwMDAw
MDAwMDA0MGUyOGIgaW4gbWFpbiAoYXJnYz0yLCBhcmd2PTB4N2ZmZmZmZmZkY2E4KSBhdCAuLi8u
Li9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwOjY4OAog
ICAgICAgIG5ld0xpbmVDaGFyYWN0ZXIgPSAweDdmZmZmZmZmZDM0ZSAiIgogICAgICAgIGZpbGVu
YW1lQnVmZmVyID0gImh0dHA6Ly8xMjcuMC4wLjE6ODA4MC94bWxodHRwcmVxdWVzdC9vcmlnaW4t
aGVhZGVyLWNyb3NzLW9yaWdpbi1nZXQtYXN5bmMuaHRtbFwwXDA/XDMzMlwzNzdcMzc3XDM3N1wx
NzdcMFwwXDEtQFwwXDBcMFwwXDBcMFwwXDM0MFwyNjRcMzc3XDM3N1wzNzdcMzc3XDBcMFwwXDBc
MFwwXDBcMFwyMDB4YSIsICdcMCcgPHJlcGVhdHMgMTQgdGltZXM+IlwyNjAsIFwzNzdcMzY3XDM3
N1wxNzdcMFwwXDBcMCBcMjQ2XDM3N1wzNzdcMzc3XDM3N1wwXDB2xb1cMzU3XDM3N1wzNzdcMFww
XDBcMFwwXDBcMFwwcHhhIiwgJ1wwJyA8cmVwZWF0cyAxNCB0aW1lcz4iXDI2MCwgXDM3N1wzNjdc
Mzc3XDE3N1wwXDBcMFwwXDIwMFwyNDZcMzc3XDM3N1wzNzdcMzc3XDBcMHbFvVwzNTdcMzc3XDM3
N1wwXDBcMFwwXDBcMFwwXDBgeGEiLCAnXDAnIDxyZXBlYXRzIDE0IHRpbWVzPiJcMjYwLCBcMzc3
XDM2N1wzNzdcMTc3XDBcMFwwXDBcMzQwXDI0NlwzNzdcMzc3XDM3N1wzNzdcMFwwdsW9XDM1N1wz
NzdcMzc3XDBcMFwwXDBcMFwwXDBcMFB4YSIsICdcMCcgPHJlcGVhdHMgMTMgdGltZXM+LCAiXDFc
MFwwXDBcMzc3Ii4uLgogICAgICAgIG9wdGlvbnMgPSB7e25hbWUgPSAweDQxMjEyMyAibm90cmVl
IiwgaGFzX2FyZyA9IDAsIGZsYWcgPSAweDYxOGVjMCwgdmFsID0gMH0sIHtuYW1lID0gMHg0MTIx
MmEgInBpeGVsLXRlc3RzIiwgaGFzX2FyZyA9IDAsIAogICAgICAgICAgICBmbGFnID0gMHg2MWFm
YjAsIHZhbCA9IDF9LCB7bmFtZSA9IDB4NDEyMTM2ICJ0cmVlIiwgaGFzX2FyZyA9IDAsIGZsYWcg
PSAweDYxOGVjMCwgdmFsID0gMX0sIHtuYW1lID0gMHgwLCBoYXNfYXJnID0gMCwgCiAgICAgICAg
ICAgIGZsYWcgPSAweDAsIHZhbCA9IDB9fQogICAgICAgIG9wdGlvbiA9IC0xCiAgICAgICAgd2lu
ZG93ID0gMHg2NjQzYjAKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>35036</attachid>
            <date>2009-08-18 04:19:14 -0700</date>
            <delta_ts>2009-08-26 05:18:03 -0700</delta_ts>
            <desc>webkit-bug-28317-debug-fix-js-jit-assertion.patch</desc>
            <filename>webkit-bug-28317-debug-fix-js-jit-assertion.patch</filename>
            <type>text/plain</type>
            <size>1602</size>
            <attacher name="Priit Laes (IRC: plaes)">plaes</attacher>
            
              <data encoding="base64">RnJvbSAwMmQ4YzIwMTRjZGI5MTJkYzBiYzViNDNkYjM4N2Y3NTJmYWJkMWMwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQcmlpdCBMYWVzIDxwbGFlc0BwbGFlcy5vcmc+CkRhdGU6IFR1
ZSwgMTggQXVnIDIwMDkgMTU6MTQ6NDQgKzAzMDAKU3ViamVjdDogW1BBVENIXSAyMDA5LTA4LTE4
ICBQcmlpdCBMYWVzICA8cGxhZXNAcGxhZXMub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KCglBc3NlcnRpb24gYmVpbmcgaGl0IG9uIGxheW91dCB0ZXN0cyBpbiBkZWJ1
ZyBidWlsZAoJaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4MzE3CgoJ
VXNlIGNvcnJlY3QgbGVuZ3RoIGZvciBwYXRjaGVzIGZvciBzbG93IG9wY29kZXMgb24gNjQtYml0
IGFyY2guCgogICAgICAgICogaml0L0pJVC5oOgotLS0KIEphdmFTY3JpcHRDb3JlL0NoYW5nZUxv
ZyB8ICAgMTEgKysrKysrKysrKysKIEphdmFTY3JpcHRDb3JlL2ppdC9KSVQuaCB8ICAgIDIgKy0K
IDIgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKCmRpZmYg
LS1naXQgYS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VM
b2cKaW5kZXggZDNkMDlmYy4uYTczMTUyNSAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvQ2hh
bmdlTG9nCisrKyBiL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisy
MDA5LTA4LTE4ICBQcmlpdCBMYWVzICA8cGxhZXNAcGxhZXMub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisJQXNzZXJ0aW9uIGJlaW5nIGhpdCBvbiBsYXlvdXQg
dGVzdHMgaW4gZGVidWcgYnVpbGQgCisJaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTI4MzE3CisKKwlVc2UgY29ycmVjdCBsZW5ndGggZm9yIHBhdGNoZXMgZm9yIHNsb3cg
b3Bjb2RlcyBvbiA2NC1iaXQgYXJjaC4KKworICAgICAgICAqIGppdC9KSVQuaDoKKwogMjAwOS0w
OC0xOCAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgVHJ5IHRvIGZp
eCB0aGUgR1RLKyBidWlsZC4KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaCBi
L0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaAppbmRleCA1YzY2MDdjLi45ZGVmOWViIDEwMDY0NAot
LS0gYS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKKysrIGIvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VC5oCkBAIC01MzcsNyArNTM3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAjaWYgRU5BQkxFKE9QQ09E
RV9TQU1QTElORykKICAgICAgICAgc3RhdGljIGNvbnN0IGludCBwYXRjaE9mZnNldEdldEJ5SWRT
bG93Q2FzZUNhbGwgPSA2MzsKICNlbHNlCi0gICAgICAgIHN0YXRpYyBjb25zdCBpbnQgcGF0Y2hP
ZmZzZXRHZXRCeUlkU2xvd0Nhc2VDYWxsID0gNDE7CisgICAgICAgIHN0YXRpYyBjb25zdCBpbnQg
cGF0Y2hPZmZzZXRHZXRCeUlkU2xvd0Nhc2VDYWxsID0gMzU7CiAjZW5kaWYKICAgICAgICAgc3Rh
dGljIGNvbnN0IGludCBwYXRjaE9mZnNldE9wQ2FsbENvbXBhcmVUb0p1bXAgPSA5OwogCi0tIAox
LjYuNAoK
</data>
<flag name="review"
          id="19221"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38459</attachid>
            <date>2009-08-23 16:12:57 -0700</date>
            <delta_ts>2009-08-23 16:12:57 -0700</delta_ts>
            <desc>dump of breakpoint</desc>
            <filename>dump.txt</filename>
            <type>text/plain</type>
            <size>1293</size>
            <attacher name="Gustavo Noronha (kov)">gustavo</attacher>
            
              <data encoding="base64">UHJvZ3JhbSByZWNlaXZlZCBzaWduYWwgU0lHSUxMLCBJbGxlZ2FsIGluc3RydWN0aW9uLgoweDAw
MDA3ZmZmZTY2ZTM0Y2EgaW4gPz8gKCkKKGdkYikgeC8zMmkgMHgwMDAwN2ZmZmU2NmUzNGNhCjB4
N2ZmZmU2NmUzNGNhOiAoYmFkKQoweDdmZmZlNjZlMzRjYjogZGVjbCAgIC0weDc3KCVyYXgpCjB4
N2ZmZmU2NmUzNGNlOiByZXguUiBhbmQgICAgJDB4OCwlYWwKMHg3ZmZmZTY2ZTM0ZDE6IG1vdnEg
ICAkMHhkMGMzMDgsMHgxMCglcnNwKQoweDdmZmZlNjZlMzRkYTogbW92ICAgICVyc3AsJXJkaQow
eDdmZmZlNjZlMzRkZDogbW92ICAgICVyMTMsMHg1OCglcnNwKQoweDdmZmZlNjZlMzRlMjogbW92
ICAgICQweDdmZmZmNjI4NDY1MSwlcjExCjB4N2ZmZmU2NmUzNGVjOiBjYWxscSAgKiVyMTEKMHg3
ZmZmZTY2ZTM0ZWY6IG1vdiAgICAlcmF4LDB4MzgoJXIxMykKMHg3ZmZmZTY2ZTM0ZjM6IGptcHEg
ICAweDdmZmZlNjZlMmFkOQoweDdmZmZlNjZlMzRmODogbW92ICAgICVyYXgsMHg4KCVyc3ApCjB4
N2ZmZmU2NmUzNGZkOiBtb3ZsICAgJDB4MiwweDE4KCVyc3ApCjB4N2ZmZmU2NmUzNTA1OiBtb3Zs
ICAgJDB4MTIsMHgxMCglcnNwKQoweDdmZmZlNjZlMzUwZDogdGVzdCAgICVyYXgsJXIxNQoweDdm
ZmZlNjZlMzUxMDogam5lICAgIDB4N2ZmZmU2NmUzNTRhCjB4N2ZmZmU2NmUzNTE2OiBtb3YgICAg
JDB4N2ZmZmY3Y2RjNjkwLCVyMTEKMHg3ZmZmZTY2ZTM1MjA6IGNtcCAgICAlcjExLCglcmF4KQow
eDdmZmZlNjZlMzUyMzogam5lICAgIDB4N2ZmZmU2NmUzNTRhCjB4N2ZmZmU2NmUzNTI5OiBtb3Yg
ICAgJXIxMywweDYwKCVyMTMpCjB4N2ZmZmU2NmUzNTJkOiBhZGQgICAgJDB4OTAsJXIxMwoweDdm
ZmZlNjZlMzUzNDogbW92ICAgICQweDIsJWVkeAoweDdmZmZlNjZlMzUzOTogbW92ICAgICVyYXgs
JXJjeAoweDdmZmZlNjZlMzUzYzogY2FsbHEgIDB4N2ZmZmY3ZTE0MGUwCjB4N2ZmZmU2NmUzNTQx
OiBtb3YgICAgJXJheCwweDM4KCVyMTMpCjB4N2ZmZmU2NmUzNTQ1OiBqbXBxICAgMHg3ZmZmZTY2
ZTJiMmEKMHg3ZmZmZTY2ZTM1NGE6IG1vdiAgICAlcnNwLCVyZGkKMHg3ZmZmZTY2ZTM1NGQ6IG1v
diAgICAlcjEzLDB4NTgoJXJzcCkKMHg3ZmZmZTY2ZTM1NTI6IG1vdiAgICAkMHg3ZmZmZjYyODNi
Y2EsJXIxMQoweDdmZmZlNjZlMzU1YzogY2FsbHEgIColcjExCjB4N2ZmZmU2NmUzNTVmOiBtb3Yg
ICAgJXJheCwweDM4KCVyMTMpCjB4N2ZmZmU2NmUzNTYzOiBqbXBxICAgMHg3ZmZmZTY2ZTJiMmEK
MHg3ZmZmZTY2ZTM1Njg6IG1vdiAgICAlcmF4LDB4OCglcnNwKQoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38606</attachid>
            <date>2009-08-26 05:18:03 -0700</date>
            <delta_ts>2009-08-26 05:18:03 -0700</delta_ts>
            <desc>jit_bactrace.txt</desc>
            <filename>jit_bactrace.txt</filename>
            <type>text/plain</type>
            <size>1367</size>
            <attacher name="Priit Laes (IRC: plaes)">plaes</attacher>
            
              <data encoding="base64">UHJvZ3JhbSByZWNlaXZlZCBzaWduYWwgU0lHVFJBUCwgVHJhY2UvYnJlYWtwb2ludCB0cmFwLgpb
U3dpdGNoaW5nIHRvIFRocmVhZCAweDdmMzdlOTgxNjc3MCAoTFdQIDI5MTQ5KV0KMHgwMDAwN2Yz
N2U5OTU1NDZmIGluID8/ICgpCihnZGIpIHgvMzJpIDB4MDAwMDdmMzdlOTk1NTQ2ZgoweDdmMzdl
OTk1NTQ2ZjoJam1wcSAgIDB4N2YzN2U5OTU1MmMyCjB4N2YzN2U5OTU1NDc0Ogltb3YgICAgJXJh
eCwweDgoJXJzcCkKMHg3ZjM3ZTk5NTU0Nzk6CW1vdmwgICAkMHgyLDB4MTgoJXJzcCkKMHg3ZjM3
ZTk5NTU0ODE6CW1vdmwgICAkMHhjLDB4MTAoJXJzcCkKMHg3ZjM3ZTk5NTU0ODk6CXRlc3QgICAl
cmF4LCVyMTUKMHg3ZjM3ZTk5NTU0OGM6CWpuZSAgICAweDdmMzdlOTk1NTRjNgoweDdmMzdlOTk1
NTQ5MjoJbW92ICAgICQweDdmMzdlODNkNDk3MCwlcjExCjB4N2YzN2U5OTU1NDljOgljbXAgICAg
JXIxMSwoJXJheCkKMHg3ZjM3ZTk5NTU0OWY6CWpuZSAgICAweDdmMzdlOTk1NTRjNgoweDdmMzdl
OTk1NTRhNToJbW92ICAgICVyMTMsMHgzMCglcjEzKQoweDdmMzdlOTk1NTRhOToJYWRkICAgICQw
eDYwLCVyMTMKMHg3ZjM3ZTk5NTU0YWQ6CW1vdiAgICAkMHgyLCVlZHgKMHg3ZjM3ZTk5NTU0YjI6
CW1vdiAgICAlcmF4LCVyY3gKMHg3ZjM3ZTk5NTU0YjU6CWNhbGxxICAweDdmMzdlOTk1NTA0MAow
eDdmMzdlOTk1NTRiYToJbW92ICAgICVyYXgsLTB4ODgoJXIxMykKMHg3ZjM3ZTk5NTU0YzE6CWpt
cHEgICAweDdmMzdlOTk1NTMxMwoweDdmMzdlOTk1NTRjNjoJbW92ICAgICVyc3AsJXJkaQoweDdm
MzdlOTk1NTRjOToJbW92ICAgICVyMTMsMHg1OCglcnNwKQoweDdmMzdlOTk1NTRjZToJbW92ICAg
ICQweDdmMzdlNjgyMzZlNCwlcjExCjB4N2YzN2U5OTU1NGQ4OgljYWxscSAgKiVyMTEKMHg3ZjM3
ZTk5NTU0ZGI6CW1vdiAgICAlcmF4LC0weDg4KCVyMTMpCjB4N2YzN2U5OTU1NGUyOglqbXBxICAg
MHg3ZjM3ZTk5NTUzMTMKMHg3ZjM3ZTk5NTU0ZTc6CW1vdiAgICAlcmF4LDB4OCglcnNwKQoweDdm
MzdlOTk1NTRlYzoJbW92ICAgICVyc3AsJXJkaQoweDdmMzdlOTk1NTRlZjoJbW92ICAgICVyMTMs
MHg1OCglcnNwKQoweDdmMzdlOTk1NTRmNDoJbW92ICAgICQweDdmMzdlNjgyNzMyOCwlcjExCjB4
N2YzN2U5OTU1NGZlOgljYWxscSAgKiVyMTEKMHg3ZjM3ZTk5NTU1MDE6CXRlc3QgICAlZWF4LCVl
YXgKMHg3ZjM3ZTk5NTU1MDM6CWplICAgICAweDdmMzdlOTk1NTQzZQoweDdmMzdlOTk1NTUwOToJ
am1wcSAgIDB4N2YzN2U5OTU1MzRhCjB4N2YzN2U5OTU1NTBlOgltb3YgICAgJXJheCwweDgoJXJz
cCkKMHg3ZjM3ZTk5NTU1MTM6CW1vdnEgICAkMHgxMDBkNmE4LDB4MTAoJXJzcCkKKGdkYikgCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38646</attachid>
            <date>2009-08-26 16:24:52 -0700</date>
            <delta_ts>2009-08-26 16:27:46 -0700</delta_ts>
            <desc>Speculative fix</desc>
            <filename>patch.gtk.txt</filename>
            <type>text/plain</type>
            <size>2813</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDQ3Nzk5KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMDktMDgtMjYgIEdhdmluIEJh
cnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHg4Ni02NCBHVEsgYnJva2VuIGR1ZSB0byBjb2Rl
IG9mZnNldHMgY2hhbmdpbmcsIHBvaW50ZXJzIHNvbWV0aW1lcyBwYWNrZWQgaW50byBpbW1lZGlh
dGVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjgz
MTcKKworICAgICAgICBXZSByZWx5IG9uIGEgc2xpZ2h0bHkgT1MgWCBzcGVjaWZpYyBiZWhhdmlv
dXIsIHRoYXQgeDg2LTY0IGFwcGxpY2F0aW9ucyBoYXZlIGEgNEdiIHplcm8gcGFnZSwKKyAgICAg
ICAgc28gcG9pbnRlcnMgYXJlIG5ldmVyIHJlcHJlc2VudGFibGUgYXMgYSAzMi1iaXQgaW50ZWdl
ciwgYW5kIGFsd2F5cyBoYXZlIHRvIGJlIHJlcHJlc2VudGVkIGJ5CisgICAgICAgIGEgc2VwYXJh
dGUgaW1tZWRpYXRlIGxvYWQgaW5zdHJ1Y3Rpb24sIHJhdGhlciB0aGFuIHdpdGhpbiB0aGUgaW1t
ZWRpYXRlIGZpZWxkIG9mIGFuIGFyaXRobWV0aWMKKyAgICAgICAgb3IgbWVtb3J5IG9wZXJhdGlv
bi4KKworICAgICAgICBXZSBleHBsaWNpdGx5IGNoZWNrIGZvciBhIGNvdXBsZSBvZiBjYXNlcyB3
aGVyZSBhIHZhbHVlIG1pZ2h0IGJlIHJlcHJlc2VudGFibGUgaW4gMzItYml0LCBidXQKKyAgICAg
ICAgdGhlc2UgcHJvYmFibHkgbmV2ZXIga2ljayBpbiBvbiBNYWMgT1MsIGFuZCBvbmx5IGtpY2sg
aW4gdG8gaG9zZSBHVEsuICBEZWxldGluZyB0aGVzZSBkb2VzIG5vdAorICAgICAgICBzaG93IGEg
cGVyZm9ybWFuY2UgZGVncmFkYXRpb24gb24gU3VuU3BpZGVyLiAgUmVtb3ZlLgorCisgICAgICAg
ICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2XzY0Lmg6CisgICAgICAgIChKU0M6Ok1hY3Jv
QXNzZW1ibGVyWDg2XzY0OjpzdG9yZVB0cik6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVy
WDg2XzY0OjpicmFuY2hQdHIpOgorCiAyMDA5LTA4LTI2ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJl
bkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCkluZGV4OiBK
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZfNjQuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBKYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZfNjQuaAkocmV2
aXNpb24gNDc3OTkpCisrKyBKYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJY
ODZfNjQuaAkod29ya2luZyBjb3B5KQpAQCAtMjk2LDEzICsyOTYsOCBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIHN0b3JlUHRyKEltbVB0ciBpbW0sIEltcGxpY2l0QWRkcmVzcyBhZGRyZXNzKQogICAg
IHsKLSAgICAgICAgaW50cHRyX3QgcHRyID0gaW1tLmFzSW50cHRyKCk7Ci0gICAgICAgIGlmIChD
QU5fU0lHTl9FWFRFTkRfMzJfNjQocHRyKSkKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLm1vdnFf
aTMybShzdGF0aWNfY2FzdDxpbnQ+KHB0ciksIGFkZHJlc3Mub2Zmc2V0LCBhZGRyZXNzLmJhc2Up
OwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIG1vdmUoaW1tLCBzY3JhdGNoUmVnaXN0ZXIp
OwotICAgICAgICAgICAgc3RvcmVQdHIoc2NyYXRjaFJlZ2lzdGVyLCBhZGRyZXNzKTsKLSAgICAg
ICAgfQorICAgICAgICBtb3ZlKGltbSwgc2NyYXRjaFJlZ2lzdGVyKTsKKyAgICAgICAgc3RvcmVQ
dHIoc2NyYXRjaFJlZ2lzdGVyLCBhZGRyZXNzKTsKICAgICB9CiAKICAgICBEYXRhTGFiZWwzMiBz
dG9yZVB0cldpdGhBZGRyZXNzT2Zmc2V0UGF0Y2goUmVnaXN0ZXJJRCBzcmMsIEFkZHJlc3MgYWRk
cmVzcykKQEAgLTMzOSwxNyArMzM0LDggQEAgcHVibGljOgogCiAgICAgSnVtcCBicmFuY2hQdHIo
Q29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQgbGVmdCwgSW1tUHRyIHJpZ2h0KQogICAgIHsKLSAg
ICAgICAgaW50cHRyX3QgaW1tID0gcmlnaHQuYXNJbnRwdHIoKTsKLSAgICAgICAgaWYgKENBTl9T
SUdOX0VYVEVORF8zMl82NChpbW0pKSB7Ci0gICAgICAgICAgICBpZiAoIWltbSkKLSAgICAgICAg
ICAgICAgICBtX2Fzc2VtYmxlci50ZXN0cV9ycihsZWZ0LCBsZWZ0KTsKLSAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5jbXBxX2lyKGltbSwgbGVmdCk7Ci0gICAg
ICAgICAgICByZXR1cm4gSnVtcChtX2Fzc2VtYmxlci5qQ0MoeDg2Q29uZGl0aW9uKGNvbmQpKSk7
Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBtb3ZlKHJpZ2h0LCBzY3JhdGNoUmVnaXN0
ZXIpOwotICAgICAgICAgICAgcmV0dXJuIGJyYW5jaFB0cihjb25kLCBsZWZ0LCBzY3JhdGNoUmVn
aXN0ZXIpOwotICAgICAgICB9CisgICAgICAgIG1vdmUocmlnaHQsIHNjcmF0Y2hSZWdpc3Rlcik7
CisgICAgICAgIHJldHVybiBicmFuY2hQdHIoY29uZCwgbGVmdCwgc2NyYXRjaFJlZ2lzdGVyKTsK
ICAgICB9CiAKICAgICBKdW1wIGJyYW5jaFB0cihDb25kaXRpb24gY29uZCwgUmVnaXN0ZXJJRCBs
ZWZ0LCBBZGRyZXNzIHJpZ2h0KQo=
</data>
<flag name="review"
          id="19642"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38656</attachid>
            <date>2009-08-26 22:28:06 -0700</date>
            <delta_ts>2009-08-26 22:28:06 -0700</delta_ts>
            <desc>jit_bactrace_with_speculative_patch.txt</desc>
            <filename>jit_bactrace.txt</filename>
            <type>text/plain</type>
            <size>1222</size>
            <attacher name="Priit Laes (IRC: plaes)">plaes</attacher>
            
              <data encoding="base64">KGdkYikgeC8zMmkgMHgwMDAwN2Y5ZjEzMmM5NDgzCjB4N2Y5ZjEzMmM5NDgzOglqbXBxICAgMHg3
ZjlmMTMyYzkyYzYKMHg3ZjlmMTMyYzk0ODg6CW1vdiAgICAlcmF4LDB4OCglcnNwKQoweDdmOWYx
MzJjOTQ4ZDoJbW92bCAgICQweDIsMHgxOCglcnNwKQoweDdmOWYxMzJjOTQ5NToJbW92bCAgICQw
eGMsMHgxMCglcnNwKQoweDdmOWYxMzJjOTQ5ZDoJdGVzdCAgICVyYXgsJXIxNQoweDdmOWYxMzJj
OTRhMDoJam5lICAgIDB4N2Y5ZjEzMmM5NGRhCjB4N2Y5ZjEzMmM5NGE2Ogltb3YgICAgJDB4N2Y5
ZjExZDQ3ODkwLCVyMTEKMHg3ZjlmMTMyYzk0YjA6CWNtcCAgICAlcjExLCglcmF4KQoweDdmOWYx
MzJjOTRiMzoJam5lICAgIDB4N2Y5ZjEzMmM5NGRhCjB4N2Y5ZjEzMmM5NGI5Ogltb3YgICAgJXIx
MywweDMwKCVyMTMpCjB4N2Y5ZjEzMmM5NGJkOglhZGQgICAgJDB4NjAsJXIxMwoweDdmOWYxMzJj
OTRjMToJbW92ICAgICQweDIsJWVkeAoweDdmOWYxMzJjOTRjNjoJbW92ICAgICVyYXgsJXJjeAow
eDdmOWYxMzJjOTRjOToJY2FsbHEgIDB4N2Y5ZjEzMmM5MDQwCjB4N2Y5ZjEzMmM5NGNlOgltb3Yg
ICAgJXJheCwtMHg4OCglcjEzKQoweDdmOWYxMzJjOTRkNToJam1wcSAgIDB4N2Y5ZjEzMmM5MzE5
CjB4N2Y5ZjEzMmM5NGRhOgltb3YgICAgJXJzcCwlcmRpCjB4N2Y5ZjEzMmM5NGRkOgltb3YgICAg
JXIxMywweDU4KCVyc3ApCjB4N2Y5ZjEzMmM5NGUyOgltb3YgICAgJDB4N2Y5ZjEwMTI1OWE4LCVy
MTEKMHg3ZjlmMTMyYzk0ZWM6CWNhbGxxICAqJXIxMQoweDdmOWYxMzJjOTRlZjoJbW92ICAgICVy
YXgsLTB4ODgoJXIxMykKMHg3ZjlmMTMyYzk0ZjY6CWptcHEgICAweDdmOWYxMzJjOTMxOQoweDdm
OWYxMzJjOTRmYjoJbW92ICAgICVyYXgsMHg4KCVyc3ApCjB4N2Y5ZjEzMmM5NTAwOgltb3YgICAg
JXJzcCwlcmRpCjB4N2Y5ZjEzMmM5NTAzOgltb3YgICAgJXIxMywweDU4KCVyc3ApCjB4N2Y5ZjEz
MmM5NTA4Ogltb3YgICAgJDB4N2Y5ZjEwMTI5NWVjLCVyMTEKMHg3ZjlmMTMyYzk1MTI6CWNhbGxx
ICAqJXIxMQoweDdmOWYxMzJjOTUxNToJdGVzdCAgICVlYXgsJWVheAoweDdmOWYxMzJjOTUxNzoJ
amUgICAgIDB4N2Y5ZjEzMmM5NDUwCjB4N2Y5ZjEzMmM5NTFkOglqbXBxICAgMHg3ZjlmMTMyYzkz
NWEKMHg3ZjlmMTMyYzk1MjI6CW1vdiAgICAlcmF4LDB4OCglcnNwKQoweDdmOWYxMzJjOTUyNzoJ
bW92ICAgICQweDFhODA2YjgsJXIxMWQKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38681</attachid>
            <date>2009-08-27 13:22:56 -0700</date>
            <delta_ts>2009-08-27 13:27:13 -0700</delta_ts>
            <desc>Fix pt II.</desc>
            <filename>patch.gtk2.txt</filename>
            <type>text/plain</type>
            <size>2070</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDQ3ODMxKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDgtMjcgIEdhdmluIEJh
cnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHg4Ni02NCBHVEsgYnJva2VuIGR1ZSB0byBjb2Rl
IG9mZnNldHMgY2hhbmdpbmcsIHBvaW50ZXJzIHNvbWV0aW1lcyBwYWNrZWQgaW50byBpbW1lZGlh
dGVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjgz
MTcKKworICAgICAgICBNaXNzZWQgb25lLCBmaXggcGFydCBJSS4KKworICAgICAgICAqIGFzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2Vt
Ymxlclg4NkNvbW1vbjo6bW92ZSk6CisgICAgICAgICogYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5o
OgorICAgICAgICAoSlNDOjpDQU5fU0lHTl9FWFRFTkRfOF8zMik6CisKIDIwMDktMDgtMjcgIE9s
aXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbGV4
ZXkgUHJvc2t1cnlha292LgpJbmRleDogSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyWDg2Q29tbW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmgJKHJldmlzaW9uIDQ3ODAxKQorKysgSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ5OSwxMCArNDk5LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBtb3ZlKEltbVB0ciBpbW0s
IFJlZ2lzdGVySUQgZGVzdCkKICAgICB7Ci0gICAgICAgIGlmIChDQU5fU0lHTl9FWFRFTkRfVTMy
XzY0KGltbS5hc0ludHB0cigpKSkKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLm1vdmxfaTMycihz
dGF0aWNfY2FzdDxpbnQzMl90PihpbW0uYXNJbnRwdHIoKSksIGRlc3QpOwotICAgICAgICBlbHNl
Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5tb3ZxX2k2NHIoaW1tLmFzSW50cHRyKCksIGRlc3Qp
OworICAgICAgICBtX2Fzc2VtYmxlci5tb3ZxX2k2NHIoaW1tLmFzSW50cHRyKCksIGRlc3QpOwog
ICAgIH0KIAogICAgIHZvaWQgc3dhcChSZWdpc3RlcklEIHJlZzEsIFJlZ2lzdGVySUQgcmVnMikK
SW5kZXg6IEphdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9YODZBc3NlbWJsZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBKYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmgJKHJldmlzaW9uIDQ3
ODAxKQorKysgSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zOCwxMCArMzgsNiBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIGlubGluZSBib29s
IENBTl9TSUdOX0VYVEVORF84XzMyKGludDMyX3QgdmFsdWUpIHsgcmV0dXJuIHZhbHVlID09IChp
bnQzMl90KShzaWduZWQgY2hhcil2YWx1ZTsgfQotI2lmIFBMQVRGT1JNKFg4Nl82NCkKLWlubGlu
ZSBib29sIENBTl9TSUdOX0VYVEVORF8zMl82NChpbnRwdHJfdCB2YWx1ZSkgeyByZXR1cm4gdmFs
dWUgPT0gKGludHB0cl90KShpbnQzMl90KXZhbHVlOyB9Ci1pbmxpbmUgYm9vbCBDQU5fU0lHTl9F
WFRFTkRfVTMyXzY0KGludHB0cl90IHZhbHVlKSB7IHJldHVybiB2YWx1ZSA9PSAoaW50cHRyX3Qp
KHVpbnQzMl90KXZhbHVlOyB9Ci0jZW5kaWYKIAogbmFtZXNwYWNlIFg4NlJlZ2lzdGVycyB7CiAg
ICAgdHlwZWRlZiBlbnVtIHsK
</data>
<flag name="review"
          id="19682"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>