<?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>71718</bug_id>
          
          <creation_ts>2011-11-07 12:18:33 -0800</creation_ts>
          <short_desc>Apparent threading bug causes intermittent segfaults</short_desc>
          <delta_ts>2011-11-21 14:53:47 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Andrew Wason">rectalogic</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>levin+threading</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>497360</commentid>
    <comment_count>0</comment_count>
      <attachid>113908</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-07 12:18:33 -0800</bug_when>
    <thetext>Created attachment 113908
sample app to reproduce the crash

Web pages using WebWorkers occasionally crash. There seems to be some thread synchronization issue.

A reduced testcase is attached. Run the included loop.sh script to run the testcase repeatedly in a loop, usually after 10 or so runs it will crash. You can also build with &quot;make DEFINES=-DSUSPEND&quot; which will install a SIGSEGV handler and suspend the process on SEGV - allowing gdb to be attached to the running process at the point the SEGV occurs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497363</commentid>
    <comment_count>1</comment_count>
      <attachid>113909</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-07 12:20:11 -0800</bug_when>
    <thetext>Created attachment 113909
gdb backtrace

This is the output of &quot;thread apply all bt&quot; on the sample app after SIGSEGV. The app was compiled with -Dsuspend so it suspended itself upon receiving SIGSEGV.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498083</commentid>
    <comment_count>2</comment_count>
      <attachid>114075</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-08 08:16:55 -0800</bug_when>
    <thetext>Created attachment 114075
valgrind log

I built webkit with ENABLE_JIT=0 so that valgrind can be used, and after repeated runs was able to catch the error in the attached valgrind log.

The problem seems to be that the static Mutex in Source/JavaScriptCore/wtf/qt/ThreadingQt.cpp:threadMapMutex() is sometimes destroyed at process exit while the WorkerThreads are shutting down. The WorkerThreads are using the destroyed threadMapMutex while they are shutting down.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498984</commentid>
    <comment_count>3</comment_count>
      <attachid>114287</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-09 08:20:42 -0800</bug_when>
    <thetext>Created attachment 114287
fix for static local race condition

This fixes the problem shown in the valgrind log. It allocates the threadMapMutex() on the stack so it&apos;s destructor doesn&apos;t run at process shutdown while outstanding WorkerThreads are still accessing it.

I did the same thing with threadMap() since it has a similar race condition. Also I initialize threadMap in initializeThreading() to avoid another race condition initializing it.

This patch seems to fix the problem evident in the valgrind log, but there are remaining problems that can still cause a crash when using WebWorkers. I will attach a helgrind log with more information shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498989</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-09 08:27:55 -0800</bug_when>
    <thetext>Attachment 114287 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source...&quot; exit_code: 1

Source/JavaScriptCore/wtf/qt/ThreadingQt.cpp:90:  More than one command on the same line  [whitespace/newline] [4]
Source/JavaScriptCore/wtf/qt/ThreadingQt.cpp:96:  More than one command on the same line  [whitespace/newline] [4]
Total errors found: 2 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499020</commentid>
    <comment_count>5</comment_count>
      <attachid>114287</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-11-09 08:57:35 -0800</bug_when>
    <thetext>Comment on attachment 114287
fix for static local race condition

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

The idea of the fix is correct.

Some time ago, we discussed having so many threading back-ends, and consensus was that ThreadingQt and other library specific implementations should be removed from WebKit. We can require either either POSIX threads or Win32 threads, and not waste time maintaining other back-ends.

&gt;&gt; Source/JavaScriptCore/wtf/qt/ThreadingQt.cpp:90
&gt;&gt; +    static Mutex* mutex = new Mutex();;
&gt; 
&gt; More than one command on the same line  [whitespace/newline] [4]

I suggest just copying this code from ThreadingPhreads:

    DEFINE_STATIC_LOCAL(Mutex, mutex, ());

&gt;&gt; Source/JavaScriptCore/wtf/qt/ThreadingQt.cpp:96
&gt;&gt; +    static HashMap&lt;ThreadIdentifier, QThread*&gt;* map = new HashMap&lt;ThreadIdentifier, QThread*&gt;();;
&gt; 
&gt; More than one command on the same line  [whitespace/newline] [4]

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499022</commentid>
    <comment_count>6</comment_count>
      <attachid>114296</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-09 08:58:15 -0800</bug_when>
    <thetext>Created attachment 114296
helgrind log

This is the tail end of a valgrind helgrind log during a crash.

The WebWorker QThreads can outlive the QApplication instance, and even various Qt global static state. In this case the global static Qt internal global_callback_table() is being destroyed while outstanding QThreads are accessing it as part of their shutdown.

Allowing the QThreads to outlive QApplication seems like a problem. Perhaps we should QThread::wait for the threads in QCoreApplication::aboutToQuit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499163</commentid>
    <comment_count>7</comment_count>
      <attachid>114287</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-11-09 11:09:47 -0800</bug_when>
    <thetext>Comment on attachment 114287
fix for static local race condition

Good catch!

However, I agree with Alexey, please use the DEFINE_STATIC_LOCAL pattern.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499190</commentid>
    <comment_count>8</comment_count>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-09 11:32:58 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; 
&gt; Some time ago, we discussed having so many threading back-ends, and consensus was that 
&gt; ThreadingQt and other library specific implementations should be removed from WebKit.
&gt; We can require either either POSIX threads or Win32 threads, and not waste time maintaining
&gt; other back-ends.

In that case, perhaps I should do that instead of this patch? Especially since this patch doesn&apos;t fix the problem of QThreads outliving QApplication and other global internal Qt state, leading to crashes.

Using pthreads/win32 I think would fix all these issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499210</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-11-09 11:51:59 -0800</bug_when>
    <thetext>As far as I&apos;m concerned, dropping ThreadingQt would be preferable. Please discuss that with folks working on Qt port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500929</commentid>
    <comment_count>10</comment_count>
      <attachid>114733</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-11 10:59:56 -0800</bug_when>
    <thetext>Created attachment 114733
fix for static local race condition 

Fix the problem in the same way ThreadingPthread does. I opened bug 72155 for switching the Qt threading back-end to pthreads/Win32 since I think that patch will take longer to review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500974</commentid>
    <comment_count>11</comment_count>
      <attachid>114733</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-11-11 11:40:41 -0800</bug_when>
    <thetext>Comment on attachment 114733
fix for static local race condition 

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

r=me on the condition that initializeThreading() change is removed before landing.

&gt; Source/JavaScriptCore/wtf/qt/ThreadingQt.cpp:152
&gt; +        threadMap();

This change is not mentioned in ChangeLog, is unnecessary, and is not something ThreadingPthreads does. All accesses to threadMap are protected by threadMapMutex, so there is no need to create it upfront.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500999</commentid>
    <comment_count>12</comment_count>
      <attachid>114752</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-11 12:22:55 -0800</bug_when>
    <thetext>Created attachment 114752
do not change initializeThreading</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>506931</commentid>
    <comment_count>13</comment_count>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-11-21 07:08:27 -0800</bug_when>
    <thetext>Bug 72155 makes this obsolete.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>113908</attachid>
            <date>2011-11-07 12:18:33 -0800</date>
            <delta_ts>2011-11-07 12:18:33 -0800</delta_ts>
            <desc>sample app to reproduce the crash</desc>
            <filename>threadcrash.zip</filename>
            <type>application/octet-stream</type>
            <size>3104</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">UEsDBAoAAAAAADp5Zz8AAAAAAAAAAAAAAAAMABAAdGhyZWFkY3Jhc2gvVVgMABI7uE4QO7hO0wf1
AVBLAwQUAAgACAA6eWc/AAAAAAAAAAAAAAAAEwAQAHRocmVhZGNyYXNoL2xvb3Auc2hVWAwAEDu4
ThA7uE7TB/UBU1bUT8rM009KLM7g4ipOLVHQzVdILSpKrcgs4SrNyczNBIokK5TmgZmpKVypFQX5
RSUKLp7BAT6OkbZWBlxc5RmZOakKJUWlqdYKKflcCkCgp1+SUZSamJJcBDI3JT8vlQsAUEsHCEmq
wTBjAAAAaQAAAFBLAwQUAAgACAA6eWc/AAAAAAAAAAAAAAAAFAAQAHRocmVhZGNyYXNoL21haW4u
Y3BwVVgMABA7uE4QO7hO0wf1AV1Ry27CMBC85ytW4ZJUKD9QWgmRQJEQUEJ7oQgZ27EtJU5qb6Bq
1X+vHah4+LQaj8czsz2ladkyDoNXTPm+Fc9B7wINm6ZUlKCq9RUeojScMGqIlYkMA3dTMF5A/pYv
s3l6JWCV0KRM5LVoq5VFdoshN5WqrQeDQ60YuIeWi8NOEs1KbiKl0WO6reLgJwB3aK0tApXEQGXF
ZgtPEI5IKyRCPp3k2eS9D7a1DddMaQGNqSm3NoEhIqESjgolCLZPPnT42AkejUIe5es0W6124+ks
my/6XtrJqG9eF5Gb4/jERVqUrZX37PVoMZ695S9nliHKOkXnZr1YOuw36Hk3RRD4OBVRustFjKD9
U5IHNx82W5/xrlOv99ktKIphMIAwR2LQJ1tOUwg9JDg2ikXnz0/VR5cubht1rH8znn29aSBNE51M
eTuO2VHW3dJHfuku/xk0HFvTvUj4F6dRl/IPUEsHCIq1ZateAQAAVAIAAFBLAwQUAAgACAA6eWc/
AAAAAAAAAAAAAAAAGwAQAHRocmVhZGNyYXNoL3RocmVhZGNyYXNoLmNwcFVYDAAQO7hOEDu4TtMH
9QF1U1Fr2zAQftevOFwYMjghsDcnBEpKyka2NiRbn2X5FquVJUeS67GR/z5JdprGdPdwcHef7r77
JN0IxWVbIiy27g6L9rAkN5fUbdNIwZkTWl3l74S5in8YeRU/YbE2rMZx8pEd3ucSVxlkJTfMVtMq
IYRLZi0MQMihaQs/H85HyV8C3l61KOGZvbIdN6JxK62slvgNrfUYyn3oYLtzRqgDfKr7dAZCuQxG
xRT6jsGOcX2awmIBw6F5LJ7IaU4I2Ueuq8A1z98FNI2oHLYPxTNyR2d9IoMOi58COw/opwzx1KIL
21CF3XlXmqb9ME9QhSZnbBOLk2XNhIqS0jR7oxxs9+X+++2GXuR4EqrUXc9lJZEZLH330aHNw54K
FSFaOfztPMQziKDtTvxBsN7Rz7NZBt4N5M6kDMZqcKOK1Kyk4Tnk+S+j643mTK6FRBqeTJ7z1hhU
ftiUFf7OWoeh+MhcRRPfotPmBc20crVMLnzeZKu013JOToTEF3B1IaNlRop/oOJkycpyr79+qBtN
eN8pycBVwv5vak/YroUStgo6D3OP/uNMlsdWuJ7wP1BLBwizwKqwrAEAAGYDAABQSwMEFAAIAAgA
OnlnPwAAAAAAAAAAAAAAABkAEAB0aHJlYWRjcmFzaC90aHJlYWRjcmFzaC5oVVgMABA7uE4QO7hO
0wf1AWWPwQrCMAyG73mKghd9hU12cOjByxgMPUrXRhctrTTdJojvrqMTC+YSyPf9IVmQVabXKNZ1
1V5RhQIWv9ER2wPhWAAoI5lF03mUuvSSO5GJe98aUmIOwhPqU7XZb8sGIslAfCrJLFc5ANPFSsMR
Do60OJMl7lBPeN7JxoVUGZ2/oeddanoaZMA/lex0TelswEdIxKh8XxJj7Dm8cngDUEsHCPOa1aye
AAAABQEAAFBLAwQUAAgACAA6eWc/AAAAAAAAAAAAAAAAGwAQAHRocmVhZGNyYXNoL3RocmVhZGNy
YXNoLnByb1VYDAAQO7hOEDu4TtMH9QELcfUN8HEMcVWwVUgsKODicvb3c/N0V9C2VUhJTSpNj0/M
S4kvSs1JTSxO5QoMAYmXpyZlZ5ZwBfuHBjm7BoNEchMz8/SSgbqRxEoyilITU5KLEoszwFIero4u
rkEYUhlcAFBLBwjhNtvKYgAAAIEAAABQSwMEFAAIAAgAOnlnPwAAAAAAAAAAAAAAABoAEAB0aHJl
YWRjcmFzaC93ZWJ3b3JrZXIuaHRtbFVYDAAQO7hOEDu4TtMH9QFtUslShDAQvecrunIKhQV6ZrlY
etKz50iaISOTUCQDTln8u82mgOaS9OvX20unlb/UOUsrlIouV7S68eBvDWbc46ePz7KTM8pzVl5N
4bU1oI32IoAvBnQ62UJv2w9sH+3VeMjg4T45eJ4pwlWoyLn4StuCGAl6wuhKt1kICMO1wj4X8Q32
8DYZgs9gdHY8SH7YCyiVeurQ+BftPJqRfUHn5An5HazDCBwZ21K/Cda2wzDZeQtrnK0xqu1pbQA4
hMdhQwLLxdh2Nx5dgjjQ82yrQLCjL1XHP4lmklvjxCbz8FeDxjr/Ok+9Mgc2MNZro2z/j0S1lYr0
Gf+YVJK1QwpL43kLaEniZVnerbrljOz5Qfi0S99QSwcIbPChahQBAABTAgAAUEsDBBQACAAIADp5
Zz8AAAAAAAAAAAAAAAAVABAAdGhyZWFkY3Jhc2gvd29ya2VyLmpzVVgMABA7uE4QO7hO0wf1AY1R
TU/DMAy951dEOwHqGif92DrEBQlu3LhNO3St6YraZUqygYT47zhpVxgSEkmlPD+/vDq2uGH8hj+2
HfIG92hKhzV/a92O33e4r9FwFWdL/vB+0Mah8eKdcwe7EqIh1XEbV7oXvam13gq3M4jxqxWOTtGX
lm6Io2s7K3A0sGI7+Aqy8m4nNK6t0K546sOXMmDp8V6bvuzO0fF01lS604YC8EFPFZs2yEKMdYNT
TpvD7rk0DbqRok8wdioN5Wrs+B3/YIzTmlEdttX7GV9xFY2crcoOPSNjCOucmH46W/H1Jvq2CE/x
5BxiuVzkkEQQgypgqaK5R1mWyoAk5GkyoKIokl9ZBVIOiJgEPJKFUrAY0AIWgQPIIMu+s1MpP19+
UePYU89BrHKZFJIqLFKV5an3IZNloSb50OoLB5qDj9dw7on8B4A/wWYyDqP31tQDuhqpKPlxhj1p
w5T9ZNYbxtjnLWMHbd0TWls2eDUO9/qWVZ22eEXgC1BLBwgrC167dwEAAOgCAABQSwECFQMKAAAA
AAA6eWc/AAAAAAAAAAAAAAAADAAMAAAAAAAAAABA7UEAAAAAdGhyZWFkY3Jhc2gvVVgIABI7uE4Q
O7hOUEsBAhUDFAAIAAgAOnlnP0mqwTBjAAAAaQAAABMADAAAAAAAAAAAQO2BOgAAAHRocmVhZGNy
YXNoL2xvb3Auc2hVWAgAEDu4ThA7uE5QSwECFQMUAAgACAA6eWc/irVlq14BAABUAgAAFAAMAAAA
AAAAAABApIHuAAAAdGhyZWFkY3Jhc2gvbWFpbi5jcHBVWAgAEDu4ThA7uE5QSwECFQMUAAgACAA6
eWc/s8CqsKwBAABmAwAAGwAMAAAAAAAAAABApIGeAgAAdGhyZWFkY3Jhc2gvdGhyZWFkY3Jhc2gu
Y3BwVVgIABA7uE4QO7hOUEsBAhUDFAAIAAgAOnlnP/Oa1ayeAAAABQEAABkADAAAAAAAAAAAQKSB
owQAAHRocmVhZGNyYXNoL3RocmVhZGNyYXNoLmhVWAgAEDu4ThA7uE5QSwECFQMUAAgACAA6eWc/
4TbbymIAAACBAAAAGwAMAAAAAAAAAABApIGYBQAAdGhyZWFkY3Jhc2gvdGhyZWFkY3Jhc2gucHJv
VVgIABA7uE4QO7hOUEsBAhUDFAAIAAgAOnlnP2zwoWoUAQAAUwIAABoADAAAAAAAAAAAQKSBUwYA
AHRocmVhZGNyYXNoL3dlYndvcmtlci5odG1sVVgIABA7uE4QO7hOUEsBAhUDFAAIAAgAOnlnPysL
Xrt3AQAA6AIAABUADAAAAAAAAAAAQKSBvwcAAHRocmVhZGNyYXNoL3dvcmtlci5qc1VYCAAQO7hO
EDu4TlBLBQYAAAAACAAIAIECAACJCQAAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>113909</attachid>
            <date>2011-11-07 12:20:11 -0800</date>
            <delta_ts>2011-11-07 12:20:11 -0800</delta_ts>
            <desc>gdb backtrace</desc>
            <filename>gdb.txt</filename>
            <type>text/plain</type>
            <size>24548</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">VGhyZWFkIDcgKFRocmVhZCAweDdmYzNjNDAzNTcwMCAoTFdQIDc0MjcpKToKIzAgIGhhc2ggKHA9
MHgyNWNjYWViICJlY3Rpb24nIiwgbj03KSBhdCB0b29scy9xaGFzaC5jcHA6NzEKIzEgIDB4MDAw
MDdmYzQwYzMxNmY0NCBpbiBxSGFzaCAoa2V5PS4uLikgYXQgdG9vbHMvcWhhc2guY3BwOjkwCiMy
ICAweDAwMDA3ZmMzYzMzODYzMjMgaW4gUUhhc2g8UUJ5dGVBcnJheSwgaW50Pjo6ZmluZE5vZGUg
KHRoaXM9MHgyNTQwNGIwLCAKICAgIGFrZXk9Li4uLCBhaHA9MHgwKQogICAgYXQgLi4vLi4vaW5j
bHVkZS9RdENvcmUvLi4vLi4vc3JjL2NvcmVsaWIvdG9vbHMvcWhhc2guaDo4ODAKIzMgIDB4MDAw
MDdmYzNjMzM4NDBmMiBpbiBRSGFzaDxRQnl0ZUFycmF5LCBpbnQ+OjpmaW5kICh0aGlzPTB4MjU0
MDRiMCwgCiAgICBha2V5PS4uLikgYXQgLi4vLi4vaW5jbHVkZS9RdENvcmUvLi4vLi4vc3JjL2Nv
cmVsaWIvdG9vbHMvcWhhc2guaDo4NjYKIzQgIDB4MDAwMDdmYzNjMzM3ZGMxMSBpbiBRREJ1c0Nv
bm5lY3Rpb25Qcml2YXRlOjpkaXNjb25uZWN0U2lnbmFsICh0aGlzPQogICAgMHgyNTQwNDAwLCBp
dD0uLi4pIGF0IHFkYnVzaW50ZWdyYXRvci5jcHA6MjEzOQojNSAgMHgwMDAwN2ZjM2MzMzc1ZTQw
IGluIFFEQnVzQ29ubmVjdGlvblByaXZhdGU6Om9iamVjdERlc3Ryb3llZCAodGhpcz0KICAgIDB4
MjU0MDQwMCwgb2JqPTB4MjViOGY3MCkgYXQgcWRidXNpbnRlZ3JhdG9yLmNwcDoxMTc1CiM2ICAw
eDAwMDA3ZmMzYzMzYzQ2NjcgaW4gUURCdXNDb25uZWN0aW9uUHJpdmF0ZTo6cXRfbWV0YWNhbGwg
KHRoaXM9MHgyNTQwNDAwLCAKICAgIF9jPVFNZXRhT2JqZWN0OjpJbnZva2VNZXRhTWV0aG9kLCBf
aWQ9NiwgX2E9MHg3ZmMzYzQwMzNkZjApCiAgICBhdCAubW9jL2RlYnVnLXNoYXJlZC9tb2NfcWRi
dXNjb25uZWN0aW9uX3AuY3BwOjEwMQojNyAgMHgwMDAwN2ZjNDBjNDJlNTBmIGluIFFNZXRhT2Jq
ZWN0OjptZXRhY2FsbCAob2JqZWN0PTB4MjU0MDQwMCwgCiAgICBjbD1RTWV0YU9iamVjdDo6SW52
b2tlTWV0YU1ldGhvZCwgaWR4PTEwLCBhcmd2PTB4N2ZjM2M0MDMzZGYwKQogICAgYXQga2VybmVs
L3FtZXRhb2JqZWN0LmNwcDoyMzcKIzggIDB4MDAwMDdmYzQwYzQ0NWIzMiBpbiBRTWV0YU9iamVj
dDo6YWN0aXZhdGUgKHNlbmRlcj0weDI1YjhmNzAsIG09MHg2MDUyZTAsIAogICAgbG9jYWxfc2ln
bmFsX2luZGV4PTAsIGFyZ3Y9MHg3ZmMzYzQwMzNkZjApIGF0IGtlcm5lbC9xb2JqZWN0LmNwcDoz
Mjc4CiM5ICAweDAwMDA3ZmM0MGM0NDc2ZmIgaW4gUU9iamVjdDo6ZGVzdHJveWVkICh0aGlzPTB4
MjViOGY3MCwgX3QxPTB4MjViOGY3MCkKICAgIGF0IC5tb2MvZGVidWctc2hhcmVkL21vY19xb2Jq
ZWN0LmNwcDoxNDkKIzEwIDB4MDAwMDdmYzQwYzQzZmM0MSBpbiBRT2JqZWN0Ojp+UU9iamVjdCAo
dGhpcz0weDI1YjhmNzAsIAogICAgX19pbl9jaHJnPTxvcHRpbWl6ZWQgb3V0PikgYXQga2VybmVs
L3FvYmplY3QuY3BwOjg0MwojMTEgMHgwMDAwN2ZjM2MyYTU3NWNiIGluIFFOZXR3b3JrTWFuYWdl
clNldHRpbmdzOjp+UU5ldHdvcmtNYW5hZ2VyU2V0dGluZ3MgKAogICAgdGhpcz0weDI1YjhmNzAs
IF9faW5fY2hyZz08b3B0aW1pemVkIG91dD4pCiAgICBhdCBxbmV0d29ya21hbmFnZXJzZXJ2aWNl
LmNwcDo2MDYKIzEyIDB4MDAwMDdmYzQwYzQ0MjZlOCBpbiBRT2JqZWN0UHJpdmF0ZTo6ZGVsZXRl
Q2hpbGRyZW4gKHRoaXM9MHgyNWI3OTUwKQogICAgYXQga2VybmVsL3FvYmplY3QuY3BwOjE5NTUK
IzEzIDB4MDAwMDdmYzQwYzQ0MDA2NCBpbiBRT2JqZWN0Ojp+UU9iamVjdCAodGhpcz0weDI1NDIz
YzAsIAogICAgX19pbl9jaHJnPTxvcHRpbWl6ZWQgb3V0PikgYXQga2VybmVsL3FvYmplY3QuY3Bw
Ojk0NgojMTQgMHgwMDAwN2ZjNDBhMzJlOTNjIGluIFFCZWFyZXJFbmdpbmU6On5RQmVhcmVyRW5n
aW5lICh0aGlzPTB4MjU0MjNjMCwgCiAgICBfX2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KSBhdCBi
ZWFyZXIvcWJlYXJlcmVuZ2luZS5jcHA6NzYKIzE1IDB4MDAwMDdmYzNjMmE2N2JlZSBpbiBRQmVh
cmVyRW5naW5lSW1wbDo6flFCZWFyZXJFbmdpbmVJbXBsICh0aGlzPQogICAgMHgyNTQyM2MwLCBf
X2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KSBhdCAuLi9xYmVhcmVyZW5naW5lX2ltcGwuaDo2NAoj
MTYgMHgwMDAwN2ZjM2MyYTVlZjQwIGluIFFOZXR3b3JrTWFuYWdlckVuZ2luZTo6flFOZXR3b3Jr
TWFuYWdlckVuZ2luZSAodGhpcz0KICAgIDB4MjU0MjNjMCwgX19pbl9jaHJnPTxvcHRpbWl6ZWQg
b3V0PikgYXQgcW5ldHdvcmttYW5hZ2VyZW5naW5lLmNwcDoxMDQKIzE3IDB4MDAwMDdmYzQwYTMy
ZDY0MiBpbiBxRGVsZXRlQWxsPFFMaXN0PFFCZWFyZXJFbmdpbmUqPjo6Y29uc3RfaXRlcmF0b3I+
ICgKICAgIGJlZ2luPS4uLiwgZW5kPS4uLikKICAgIGF0IC4uLy4uL2luY2x1ZGUvUXRDb3JlLy4u
Ly4uL3NyYy9jb3JlbGliL3Rvb2xzL3FhbGdvcml0aG1zLmg6MzIyCiMxOCAweDAwMDA3ZmM0MGEz
MmNjMjMgaW4gcURlbGV0ZUFsbDxRTGlzdDxRQmVhcmVyRW5naW5lKj4gPiAoYz0uLi4pCiAgICBh
dCAuLi8uLi9pbmNsdWRlL1F0Q29yZS8uLi8uLi9zcmMvY29yZWxpYi90b29scy9xYWxnb3JpdGht
cy5oOjMzMAojMTkgMHgwMDAwN2ZjNDBhMzI5NTkwIGluIFFOZXR3b3JrQ29uZmlndXJhdGlvbk1h
bmFnZXJQcml2YXRlOjp+UU5ldHdvcmtDb25maWd1cmF0aW9uTWFuYWdlclByaXZhdGUgKHRoaXM9
MHgyNWUxMzMwLCBfX2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KQogICAgYXQgYmVhcmVyL3FuZXR3
b3JrY29uZmlnbWFuYWdlcl9wLmNwcDo4MwojMjAgMHgwMDAwN2ZjNDBjNDQ3MzVmIGluIHFEZWxl
dGVJbkV2ZW50SGFuZGxlciAobz0weDI1ZTEzMzApCiAgICBhdCBrZXJuZWwvcW9iamVjdC5jcHA6
Mzk4NgojMjEgMHgwMDAwN2ZjNDBjNDQxMjYzIGluIFFPYmplY3Q6OmV2ZW50ICh0aGlzPTB4MjVl
MTMzMCwgZT0weDdmYzNhNDAwZmJiMCkKICAgIGF0IGtlcm5lbC9xb2JqZWN0LmNwcDoxMjAwCiMy
MiAweDAwMDA3ZmM0MGNhMDg2NTggaW4gUUFwcGxpY2F0aW9uUHJpdmF0ZTo6bm90aWZ5X2hlbHBl
ciAodGhpcz0weDI0ZGQyOTAsIAogICAgcmVjZWl2ZXI9MHgyNWUxMzMwLCBlPTB4N2ZjM2E0MDBm
YmIwKSBhdCBrZXJuZWwvcWFwcGxpY2F0aW9uLmNwcDo0NDgxCiMyMyAweDAwMDA3ZmM0MGNhMDVi
YTkgaW4gUUFwcGxpY2F0aW9uOjpub3RpZnkgKHRoaXM9MHg3ZmZmODQ4MjQwMjAsIHJlY2VpdmVy
PQogICAgMHgyNWUxMzMwLCBlPTB4N2ZjM2E0MDBmYmIwKSBhdCBrZXJuZWwvcWFwcGxpY2F0aW9u
LmNwcDozODgxCiMyNCAweDAwMDA3ZmM0MGM0MjVhMzQgaW4gUUNvcmVBcHBsaWNhdGlvbjo6bm90
aWZ5SW50ZXJuYWwgKHRoaXM9CiAgICAweDdmZmY4NDgyNDAyMCwgcmVjZWl2ZXI9MHgyNWUxMzMw
LCBldmVudD0weDdmYzNhNDAwZmJiMCkKICAgIGF0IGtlcm5lbC9xY29yZWFwcGxpY2F0aW9uLmNw
cDo3ODcKIzI1IDB4MDAwMDdmYzQwZTVlMmVkZCBpbiBRQ29yZUFwcGxpY2F0aW9uOjpzZW5kRXZl
bnQgKHJlY2VpdmVyPTB4MjVlMTMzMCwgCiAgICBldmVudD0weDdmYzNhNDAwZmJiMCkKICAgIGF0
IC9ob21lL2F3L1Byb2plY3RzL2ZvdW5kYXRpb24vcXQ0NzQvaW5jbHVkZS9RdENvcmUvcWNvcmVh
cHBsaWNhdGlvbi5oOjIxNQojMjYgMHgwMDAwN2ZjNDBjNDI2Yzk0IGluIFFDb3JlQXBwbGljYXRp
b25Qcml2YXRlOjpzZW5kUG9zdGVkRXZlbnRzIChyZWNlaXZlcj0KICAgIDB4MCwgZXZlbnRfdHlw
ZT0wLCBkYXRhPTB4MjVlMTc5MCkgYXQga2VybmVsL3Fjb3JlYXBwbGljYXRpb24uY3BwOjE0MjgK
IzI3IDB4MDAwMDdmYzQwYzQyNjhhZiBpbiBRQ29yZUFwcGxpY2F0aW9uOjpzZW5kUG9zdGVkRXZl
bnRzIChyZWNlaXZlcj0weDAsIAogICAgZXZlbnRfdHlwZT0wKSBhdCBrZXJuZWwvcWNvcmVhcHBs
aWNhdGlvbi5jcHA6MTMyMQojMjggMHgwMDAwN2ZjNDBjYWViMDJiIGluIFFDb3JlQXBwbGljYXRp
b246OnNlbmRQb3N0ZWRFdmVudHMgKCkKICAgIGF0IC4uLy4uL2luY2x1ZGUvUXRDb3JlLy4uLy4u
L3NyYy9jb3JlbGliL2tlcm5lbC9xY29yZWFwcGxpY2F0aW9uLmg6MjIwCiMyOSAweDAwMDA3ZmM0
MGM0NjNlOTUgaW4gcG9zdEV2ZW50U291cmNlRGlzcGF0Y2ggKHM9MHgyNWUyODIwKQogICAgYXQg
a2VybmVsL3FldmVudGRpc3BhdGNoZXJfZ2xpYi5jcHA6Mjc3CiMzMCAweDAwMDA3ZmM0MDk2NGY4
YzIgaW4gZ19tYWluX2NvbnRleHRfZGlzcGF0Y2ggKCkgZnJvbSAvbGliL2xpYmdsaWItMi4wLnNv
LjAKIzMxIDB4MDAwMDdmYzQwOTY1Mzc0OCBpbiA/PyAoKSBmcm9tIC9saWIvbGliZ2xpYi0yLjAu
c28uMAojMzIgMHgwMDAwN2ZjNDA5NjUzOGZjIGluIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGlvbiAo
KQogICBmcm9tIC9saWIvbGliZ2xpYi0yLjAuc28uMAojMzMgMHgwMDAwN2ZjNDBjNDY1MWUxIGlu
IFFFdmVudERpc3BhdGNoZXJHbGliOjpwcm9jZXNzRXZlbnRzICh0aGlzPTB4MjVlMjczMCwgCiAg
ICBmbGFncz0uLi4pIGF0IGtlcm5lbC9xZXZlbnRkaXNwYXRjaGVyX2dsaWIuY3BwOjQyMgojMzQg
MHgwMDAwN2ZjNDBjNDIyYTM0IGluIFFFdmVudExvb3A6OnByb2Nlc3NFdmVudHMgKHRoaXM9MHg3
ZmMzYzQwMzRjOTAsIAogICAgZmxhZ3M9Li4uKSBhdCBrZXJuZWwvcWV2ZW50bG9vcC5jcHA6MTQ5
CiMzNSAweDAwMDA3ZmM0MGM0MjJiOGEgaW4gUUV2ZW50TG9vcDo6ZXhlYyAodGhpcz0weDdmYzNj
NDAzNGM5MCwgZmxhZ3M9Li4uKQogICAgYXQga2VybmVsL3FldmVudGxvb3AuY3BwOjIwMQojMzYg
MHgwMDAwN2ZjNDBjMmVmM2QyIGluIFFUaHJlYWQ6OmV4ZWMgKHRoaXM9MHgyNWUxMGQwKQogICAg
YXQgdGhyZWFkL3F0aHJlYWQuY3BwOjQ5OAojMzcgMHgwMDAwN2ZjNDBjMmVmNThjIGluIFFUaHJl
YWQ6OnJ1biAodGhpcz0weDI1ZTEwZDApCiAgICBhdCB0aHJlYWQvcXRocmVhZC5jcHA6NTY1CiMz
OCAweDAwMDA3ZmM0MGMyZjFmZjUgaW4gUVRocmVhZFByaXZhdGU6OnN0YXJ0IChhcmc9MHgyNWUx
MGQwKQogICAgYXQgdGhyZWFkL3F0aHJlYWRfdW5peC5jcHA6MzMxCiMzOSAweDAwMDA3ZmM0MDlk
OWUyNWEgaW4gPz8gKCkgZnJvbSAvdXNyL2xpYi9udmlkaWEtY3VycmVudC9saWJHTC5zby4xCiM0
MCAweDAwMDA3ZmM0MGMwMzk5Y2EgaW4gc3RhcnRfdGhyZWFkICgpIGZyb20gL2xpYi9saWJwdGhy
ZWFkLnNvLjAKIzQxIDB4MDAwMDdmYzQwYjVlODcwZCBpbiBjbG9uZSAoKSBmcm9tIC9saWIvbGli
Yy5zby42CiM0MiAweDAwMDAwMDAwMDAwMDAwMDAgaW4gPz8gKCkKClRocmVhZCA2IChUaHJlYWQg
MHg3ZmMzYzE4ODk3MDAgKExXUCA3NDI4KSk6CiMwICAweDAwMDA3ZmM0MGMwM2ViYzkgaW4gcHRo
cmVhZF9jb25kX3RpbWVkd2FpdEBAR0xJQkNfMi4zLjIgKCkKICAgZnJvbSAvbGliL2xpYnB0aHJl
YWQuc28uMAojMSAgMHgwMDAwN2ZjNDBjMmYzNmYxIGluIFFXYWl0Q29uZGl0aW9uUHJpdmF0ZTo6
d2FpdCAodGhpcz0weDI2MDk3MjAsIAogICAgdGltZT0xMDAwKSBhdCB0aHJlYWQvcXdhaXRjb25k
aXRpb25fdW5peC5jcHA6ODYKIzIgIDB4MDAwMDdmYzQwYzJmMzRiNSBpbiBRV2FpdENvbmRpdGlv
bjo6d2FpdCAodGhpcz0weDI2MDk3MDAsIG11dGV4PQogICAgMHgyNWVkNmUwLCB0aW1lPTEwMDAp
IGF0IHRocmVhZC9xd2FpdGNvbmRpdGlvbl91bml4LmNwcDoxNjAKIzMgIDB4MDAwMDdmYzQwZjMw
ZmUwNSBpbiBXVEY6OlRocmVhZENvbmRpdGlvbjo6dGltZWRXYWl0ICh0aGlzPTB4MjYwOGVmOCwg
CiAgICBtdXRleD0uLi4sIGFic29sdXRlVGltZT0xMzIwNjg2ODgyLjM5MDUzMTEpCiAgICBhdCAu
Li8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGluZ1F0LmNwcDoyNzgK
IzQgIDB4MDAwMDdmYzQwZjMzYTkwMiBpbiBKU0M6OkhlYXA6OndhaXRGb3JSZWxhdGl2ZVRpbWVX
aGlsZUhvbGRpbmdMb2NrICh0aGlzPQogICAgMHgyNjA4YmQ4LCByZWxhdGl2ZT0xKSBhdCAuLi8u
Li8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcDozOTAKIzUgIDB4MDAwMDdm
YzQwZjMzYTk0NyBpbiBKU0M6OkhlYXA6OndhaXRGb3JSZWxhdGl2ZVRpbWUgKHRoaXM9MHgyNjA4
YmQ4LCAKICAgIHJlbGF0aXZlPTEpIGF0IC4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0hlYXAuY3BwOjQwMAojNiAgMHgwMDAwN2ZjNDBmMzNhOWM0IGluIEpTQzo6SGVhcDo6Ymxv
Y2tGcmVlaW5nVGhyZWFkTWFpbiAodGhpcz0weDI2MDhiZDgpCiAgICBhdCAuLi8uLi8uLi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcDo0MTQKIzcgIDB4MDAwMDdmYzQwZjMzYTk5
NCBpbiBKU0M6OkhlYXA6OmJsb2NrRnJlZWluZ1RocmVhZFN0YXJ0RnVuYyAoaGVhcD0KICAgIDB4
MjYwOGJkOCkgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHA6
NDA1CiM4ICAweDAwMDA3ZmM0MGYzMTYzZWQgaW4gV1RGOjp0aHJlYWRFbnRyeVBvaW50IChjb250
ZXh0RGF0YT0weDI2MDUzYTApCiAgICBhdCAuLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d3RmL1RocmVhZGluZy5jcHA6NjcKIzkgIDB4MDAwMDdmYzQwZjMwZjIyNSBpbiBXVEY6OlRocmVh
ZFByaXZhdGU6OnJ1biAodGhpcz0weDI2MDU0NzApCiAgICBhdCAuLi8uLi8uLi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGluZ1F0LmNwcDo2NwojMTAgMHgwMDAwN2ZjNDBjMmYx
ZmY1IGluIFFUaHJlYWRQcml2YXRlOjpzdGFydCAoYXJnPTB4MjYwNTQ3MCkKICAgIGF0IHRocmVh
ZC9xdGhyZWFkX3VuaXguY3BwOjMzMQojMTEgMHgwMDAwN2ZjNDA5ZDllMjVhIGluID8/ICgpIGZy
b20gL3Vzci9saWIvbnZpZGlhLWN1cnJlbnQvbGliR0wuc28uMQojMTIgMHgwMDAwN2ZjNDBjMDM5
OWNhIGluIHN0YXJ0X3RocmVhZCAoKSBmcm9tIC9saWIvbGlicHRocmVhZC5zby4wCiMxMyAweDAw
MDA3ZmM0MGI1ZTg3MGQgaW4gY2xvbmUgKCkgZnJvbSAvbGliL2xpYmMuc28uNgojMTQgMHgwMDAw
MDAwMDAwMDAwMDAwIGluID8/ICgpCgpUaHJlYWQgNSAoVGhyZWFkIDB4N2ZjM2JhN2ZjNzAwIChM
V1AgNzQzMykpOgojMCAgMHgwMDAwN2ZjNDBjMDQyN2JiIGluIHJhaXNlICgpIGZyb20gL2xpYi9s
aWJwdGhyZWFkLnNvLjAKIzEgIDB4MDAwMDAwMDAwMDQwMjk5NiBpbiBzaWdzZWd2X2hhbmRsZXIg
KHNpZ251bT0xMSkgYXQgbWFpbi5jcHA6MTUKIzIgIDxzaWduYWwgaGFuZGxlciBjYWxsZWQ+CiMz
ICAweDAwMDA3ZmM0MDdiNTNhMDggaW4gX252MDA3dGxzICgpCiAgIGZyb20gL3Vzci9saWIvbnZp
ZGlhLWN1cnJlbnQvdGxzL2xpYm52aWRpYS10bHMuc28uMjg1LjA1LjA5CiM0ICAweDAwMDA3ZmM0
MGMwMzlhNjEgaW4gc3RhcnRfdGhyZWFkICgpIGZyb20gL2xpYi9saWJwdGhyZWFkLnNvLjAKIzUg
IDB4MDAwMDdmYzQwYjVlODcwZCBpbiBjbG9uZSAoKSBmcm9tIC9saWIvbGliYy5zby42CiM2ICAw
eDAwMDAwMDAwMDAwMDAwMDAgaW4gPz8gKCkKClRocmVhZCA0IChUaHJlYWQgMHg3ZmMzYjFmYjA3
MDAgKExXUCA3NDQxKSk6CiMwICAweDAwMDA3ZmM0MGI1Nzk3YWIgaW4gPz8gKCkgZnJvbSAvbGli
L2xpYmMuc28uNgojMSAgMHgwMDAwN2ZjNDBiNTdjZmFkIGluID8/ICgpIGZyb20gL2xpYi9saWJj
LnNvLjYKIzIgIDB4MDAwMDdmYzQwYjU3ZTU4ZSBpbiBtYWxsb2MgKCkgZnJvbSAvbGliL2xpYmMu
c28uNgojMyAgMHgwMDAwN2ZjNDA5ZDlmMWY1IGluID8/ICgpIGZyb20gL3Vzci9saWIvbnZpZGlh
LWN1cnJlbnQvbGliR0wuc28uMQojNCAgMHgwMDAwN2ZjNDA3YjU0ZDQxIGluID8/ICgpCiAgIGZy
b20gL3Vzci9saWIvbnZpZGlhLWN1cnJlbnQvdGxzL2xpYm52aWRpYS10bHMuc28uMjg1LjA1LjA5
CiM1ICAweDAwMDA3ZmM0MGYzMGExYTMgaW4gV1RGOjpmYXN0TWFsbG9jIChuPTIwNDgpCiAgICBh
dCAuLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL0Zhc3RNYWxsb2MuY3BwOjI2NAoj
NiAgMHgwMDAwN2ZjNDBmMzA5ZmNjIGluIFdURjo6ZmFzdFplcm9lZE1hbGxvYyAobj0yMDQ4KQog
ICAgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9GYXN0TWFsbG9jLmNwcDox
OTYKIzcgIDB4MDAwMDdmYzQwZjMxYjZjYyBpbiBXVEY6Okhhc2hUYWJsZTxXVEY6OlN0cmluZ0lt
cGwqLCBXVEY6OlN0cmluZ0ltcGwqLCBXVEY6OklkZW50aXR5RXh0cmFjdG9yPFdURjo6U3RyaW5n
SW1wbCo+LCBXVEY6OlN0cmluZ0hhc2gsIFdURjo6SGFzaFRyYWl0czxXVEY6OlN0cmluZ0ltcGwq
PiwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+ID46OmFsbG9jYXRlVGFibGUgKHNp
emU9MjU2KQogICAgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9IYXNoVGFi
bGUuaDo4NzkKIzggIDB4MDAwMDdmYzQwZjMxYjQ3YyBpbiBXVEY6Okhhc2hUYWJsZTxXVEY6OlN0
cmluZ0ltcGwqLCBXVEY6OlN0cmluZ0ltcGwqLCBXVEY6OklkZW50aXR5RXh0cmFjdG9yPFdURjo6
U3RyaW5nSW1wbCo+LCBXVEY6OlN0cmluZ0hhc2gsIFdURjo6SGFzaFRyYWl0czxXVEY6OlN0cmlu
Z0ltcGwqPiwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+ID46OnJlaGFzaCAodGhp
cz0weDdmYzNiYzA0OGY3MCwgCiAgICBuZXdUYWJsZVNpemU9MjU2KSBhdCAuLi8uLi8uLi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd3RmL0hhc2hUYWJsZS5oOjkyNwojOSAgMHgwMDAwN2ZjNDBmMzFi
M2RiIGluIFdURjo6SGFzaFRhYmxlPFdURjo6U3RyaW5nSW1wbCosIFdURjo6U3RyaW5nSW1wbCos
IFdURjo6SWRlbnRpdHlFeHRyYWN0b3I8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6U3RyaW5nSGFz
aCwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+LCBXVEY6Okhhc2hUcmFpdHM8V1RG
OjpTdHJpbmdJbXBsKj4gPjo6c2hyaW5rKCkgKCkKICAgZnJvbSAvaG9tZS9hdy9Qcm9qZWN0cy9m
b3VuZGF0aW9uL3F0NDc0L2xpYi9saWJRdFdlYktpdC5zby40CiMxMCAweDAwMDA3ZmM0MGYzMWE5
OGMgaW4gV1RGOjpIYXNoVGFibGU8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpTdHJpbmdJbXBsKiwg
V1RGOjpJZGVudGl0eUV4dHJhY3RvcjxXVEY6OlN0cmluZ0ltcGwqPiwgV1RGOjpTdHJpbmdIYXNo
LCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6SGFzaFRyYWl0czxXVEY6
OlN0cmluZ0ltcGwqPiA+OjpyZW1vdmUoV1RGOjpTdHJpbmdJbXBsKiopICgpCiAgIGZyb20gL2hv
bWUvYXcvUHJvamVjdHMvZm91bmRhdGlvbi9xdDQ3NC9saWIvbGliUXRXZWJLaXQuc28uNAojMTEg
MHgwMDAwN2ZjNDBmMzE5MmIxIGluIFdURjo6SGFzaFRhYmxlPFdURjo6U3RyaW5nSW1wbCosIFdU
Rjo6U3RyaW5nSW1wbCosIFdURjo6SWRlbnRpdHlFeHRyYWN0b3I8V1RGOjpTdHJpbmdJbXBsKj4s
IFdURjo6U3RyaW5nSGFzaCwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+LCBXVEY6
Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4gPjo6cmVtb3ZlQW5kSW52YWxpZGF0ZVdpdGhv
dXRFbnRyeUNvbnNpc3RlbmN5Q2hlY2soV1RGOjpTdHJpbmdJbXBsKiopICgpCiAgIGZyb20gL2hv
bWUvYXcvUHJvamVjdHMvZm91bmRhdGlvbi9xdDQ3NC9saWIvbGliUXRXZWJLaXQuc28uNAojMTIg
MHgwMDAwN2ZjNDBmMzE4YjUyIGluIFdURjo6SGFzaFRhYmxlPFdURjo6U3RyaW5nSW1wbCosIFdU
Rjo6U3RyaW5nSW1wbCosIFdURjo6SWRlbnRpdHlFeHRyYWN0b3I8V1RGOjpTdHJpbmdJbXBsKj4s
IFdURjo6U3RyaW5nSGFzaCwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+LCBXVEY6
Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4gPjo6cmVtb3ZlV2l0aG91dEVudHJ5Q29uc2lz
dGVuY3lDaGVjayhXVEY6Okhhc2hUYWJsZUNvbnN0SXRlcmF0b3I8V1RGOjpTdHJpbmdJbXBsKiwg
V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpJZGVudGl0eUV4dHJhY3RvcjxXVEY6OlN0cmluZ0ltcGwq
PiwgV1RGOjpTdHJpbmdIYXNoLCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4sIFdU
Rjo6SGFzaFRyYWl0czxXVEY6OlN0cmluZ0ltcGwqPiA+KSAoKQogICBmcm9tIC9ob21lL2F3L1By
b2plY3RzL2ZvdW5kYXRpb24vcXQ0NzQvbGliL2xpYlF0V2ViS2l0LnNvLjQKIzEzIDB4MDAwMDdm
YzQwZjMxODI3YyBpbiBXVEY6Okhhc2hTZXQ8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpTdHJpbmdI
YXNoLCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4gPjo6cmVtb3ZlKFdURjo6SGFz
aFRhYmxlQ29uc3RJdGVyYXRvckFkYXB0ZXI8V1RGOjpIYXNoVGFibGU8V1RGOjpTdHJpbmdJbXBs
KiwgV1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpJZGVudGl0eUV4dHJhY3RvcjxXVEY6OlN0cmluZ0lt
cGwqPiwgV1RGOjpTdHJpbmdIYXNoLCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4s
IFdURjo6SGFzaFRyYWl0czxXVEY6OlN0cmluZ0ltcGwqPiA+LCBXVEY6OlN0cmluZ0ltcGwqPikg
KCkKICAgZnJvbSAvaG9tZS9hdy9Qcm9qZWN0cy9mb3VuZGF0aW9uL3F0NDc0L2xpYi9saWJRdFdl
YktpdC5zby40CiMxNCAweDAwMDA3ZmM0MGYzMTg0ZTkgaW4gV1RGOjpIYXNoU2V0PFdURjo6U3Ry
aW5nSW1wbCosIFdURjo6U3RyaW5nSGFzaCwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1w
bCo+ID46OnJlbW92ZShXVEY6OlN0cmluZ0ltcGwqIGNvbnN0JikgKCkKICAgZnJvbSAvaG9tZS9h
dy9Qcm9qZWN0cy9mb3VuZGF0aW9uL3F0NDc0L2xpYi9saWJRdFdlYktpdC5zby40CiMxNSAweDAw
MDA3ZmM0MGYzMTcyYTAgaW4gV1RGOjpBdG9taWNTdHJpbmc6OnJlbW92ZSAocj0weDdmYzNiYzAx
NDk5MCkKICAgIGF0IC4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4dC9BdG9t
aWNTdHJpbmcuY3BwOjI4NAojMTYgMHgwMDAwN2ZjNDBmMzFkYWZjIGluIFdURjo6U3RyaW5nSW1w
bDo6flN0cmluZ0ltcGwgKHRoaXM9MHg3ZmMzYmMwMTQ5OTAsIAogICAgX19pbl9jaHJnPTxvcHRp
bWl6ZWQgb3V0PikKICAgIGF0IC4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4
dC9TdHJpbmdJbXBsLmNwcDo0NwojMTcgMHgwMDAwN2ZjNDBlMTNlZWI2IGluIFdURjo6U3RyaW5n
SW1wbDo6ZGVyZWYgKHRoaXM9MHg3ZmMzYmMwMTQ5OTApCiAgICBhdCAuLi8uLi8uLi8uLi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd3RmL3RleHQvU3RyaW5nSW1wbC5oOjM3NQojMTggMHgwMDAwN2Zj
NDBlMTNmYTMxIGluIFdURjo6ZGVyZWZJZk5vdE51bGw8V1RGOjpTdHJpbmdJbXBsPiAocHRyPQog
ICAgMHg3ZmMzYmMwMTQ5OTApIGF0IC4uLy4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
dGYvUGFzc1JlZlB0ci5oOjU5CiMxOSAweDAwMDA3ZmM0MGUxM2Y5YjEgaW4gV1RGOjpSZWZQdHI8
V1RGOjpTdHJpbmdJbXBsPjo6flJlZlB0ciAodGhpcz0KICAgIDB4N2ZjM2JjMDJhODMwLCBfX2lu
X2Nocmc9PG9wdGltaXplZCBvdXQ+KQogICAgYXQgLi4vLi4vLi4vLi4vU291cmNlL0phdmFTY3Jp
cHRDb3JlL3d0Zi9SZWZQdHIuaDo1OAojMjAgMHgwMDAwN2ZjNDBlMTNlZjE2IGluIFdURjo6U3Ry
aW5nOjp+U3RyaW5nICh0aGlzPTB4N2ZjM2JjMDJhODMwLCAKICAgIF9faW5fY2hyZz08b3B0aW1p
emVkIG91dD4pCiAgICBhdCAuLi8uLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rl
eHQvV1RGU3RyaW5nLmg6MTA1CiMyMSAweDAwMDA3ZmM0MGUxM2VmYzQgaW4gV1RGOjpBdG9taWNT
dHJpbmc6On5BdG9taWNTdHJpbmcgKHRoaXM9CiAgICAweDdmYzNiYzAyYTgzMCwgX19pbl9jaHJn
PTxvcHRpbWl6ZWQgb3V0PikKICAgIGF0IC4uLy4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93dGYvdGV4dC9BdG9taWNTdHJpbmcuaDozOQojMjIgMHgwMDAwN2ZjNDBlYzg0YzA0IGluIFdl
YkNvcmU6OkV2ZW50TmFtZXM6On5FdmVudE5hbWVzICh0aGlzPQogICAgMHg3ZmMzYmMwMmE1ODAs
IF9faW5fY2hyZz08b3B0aW1pemVkIG91dD4pCiAgICBhdCAuLi8uLi8uLi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRXZlbnROYW1lcy5oOjE5NwojMjMgMHgwMDAwN2ZjNDBlYzg1Y2ZmIGluIFdURjo6ZGVs
ZXRlT3duZWRQdHI8V2ViQ29yZTo6RXZlbnROYW1lcz4gKHB0cj0KICAgIDB4N2ZjM2JjMDJhNTgw
KSBhdCAuLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL093blB0ckNvbW1vbi5oOjUz
CiMyNCAweDAwMDA3ZmM0MGVjODM4Y2UgaW4gV1RGOjpPd25QdHI8V2ViQ29yZTo6RXZlbnROYW1l
cz46OmNsZWFyICh0aGlzPQogICAgMHg3ZmMzYjQwMzY2NjApIGF0IC4uLy4uLy4uL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93dGYvT3duUHRyLmg6OTkKIzI1IDB4MDAwMDdmYzQwZWM4MzZjYyBpbiBX
ZWJDb3JlOjpUaHJlYWRHbG9iYWxEYXRhOjpkZXN0cm95ICh0aGlzPQogICAgMHg3ZmMzYjQwMzY2
NjApIGF0IC4uLy4uLy4uL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEu
Y3BwOjk2CiMyNiAweDAwMDA3ZmM0MGVmM2IwMzcgaW4gV2ViQ29yZTo6V29ya2VyVGhyZWFkOjp3
b3JrZXJUaHJlYWQgKHRoaXM9CiAgICAweDdmYzNiYzA1M2UwMCkgYXQgLi4vLi4vLi4vU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwOjE1OQojMjcgMHgwMDAwN2ZjNDBlZjNh
ZDMyIGluIFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkU3RhcnQgKHRocmVhZD0K
ICAgIDB4N2ZjM2JjMDUzZTAwKSBhdCAuLi8uLi8uLi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclRocmVhZC5jcHA6MTI0CiMyOCAweDAwMDA3ZmM0MGYzMTYzZWQgaW4gV1RGOjp0aHJlYWRF
bnRyeVBvaW50IChjb250ZXh0RGF0YT0weDdmYzNiYzA1M2VkMCkKICAgIGF0IC4uLy4uLy4uL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvVGhyZWFkaW5nLmNwcDo2NwojMjkgMHgwMDAwN2ZjNDBm
MzBmMjI1IGluIFdURjo6VGhyZWFkUHJpdmF0ZTo6cnVuICh0aGlzPTB4N2ZjM2JjMDU1NDEwKQog
ICAgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdRdC5j
cHA6NjcKIzMwIDB4MDAwMDdmYzQwYzJmMWZmNSBpbiBRVGhyZWFkUHJpdmF0ZTo6c3RhcnQgKGFy
Zz0weDdmYzNiYzA1NTQxMCkKICAgIGF0IHRocmVhZC9xdGhyZWFkX3VuaXguY3BwOjMzMQojMzEg
MHgwMDAwN2ZjNDA5ZDllMjVhIGluID8/ICgpIGZyb20gL3Vzci9saWIvbnZpZGlhLWN1cnJlbnQv
bGliR0wuc28uMQojMzIgMHgwMDAwN2ZjNDBjMDM5OWNhIGluIHN0YXJ0X3RocmVhZCAoKSBmcm9t
IC9saWIvbGlicHRocmVhZC5zby4wCiMzMyAweDAwMDA3ZmM0MGI1ZTg3MGQgaW4gY2xvbmUgKCkg
ZnJvbSAvbGliL2xpYmMuc28uNgojMzQgMHgwMDAwMDAwMDAwMDAwMDAwIGluID8/ICgpCgpUaHJl
YWQgMyAoVGhyZWFkIDB4N2ZjM2IwZjViNzAwIChMV1AgNzQ0NCkpOgojMCAgMHgwMDAwN2ZjNDBi
NWY4MTZlIGluID8/ICgpIGZyb20gL2xpYi9saWJjLnNvLjYKIzEgIDB4MDAwMDdmYzQwYjU4MTNk
YyBpbiA/PyAoKSBmcm9tIC9saWIvbGliYy5zby42CiMyICAweDAwMDA3ZmM0MGI1N2ZlNzggaW4g
ZnJlZSAoKSBmcm9tIC9saWIvbGliYy5zby42CiMzICAweDAwMDA3ZmM0MDdiNTRhYjEgaW4gPz8g
KCkKICAgZnJvbSAvdXNyL2xpYi9udmlkaWEtY3VycmVudC90bHMvbGlibnZpZGlhLXRscy5zby4y
ODUuMDUuMDkKIzQgIDB4MDAwMDdmYzQwZjMwYTMzMSBpbiBXVEY6OmZhc3RGcmVlIChwPTB4N2Zj
M2JjMDYwY2QwKQogICAgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9GYXN0
TWFsbG9jLmNwcDozMjYKIzUgIDB4MDAwMDdmYzQwZTEzZWU3MCBpbiBXVEY6OlN0cmluZ0ltcGw6
Om9wZXJhdG9yIGRlbGV0ZSAocD0weDdmYzNiYzA2MGNkMCkKICAgIGF0IC4uLy4uLy4uLy4uL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4dC9TdHJpbmdJbXBsLmg6NjQKIzYgIDB4MDAwMDdm
YzQwZTEzZWVjMiBpbiBXVEY6OlN0cmluZ0ltcGw6OmRlcmVmICh0aGlzPTB4N2ZjM2JjMDYwY2Qw
KQogICAgYXQgLi4vLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1N0cmlu
Z0ltcGwuaDozNzUKIzcgIDB4MDAwMDdmYzQwZTEzZmEzMSBpbiBXVEY6OmRlcmVmSWZOb3ROdWxs
PFdURjo6U3RyaW5nSW1wbD4gKHB0cj0KICAgIDB4N2ZjM2JjMDYwY2QwKSBhdCAuLi8uLi8uLi8u
Li9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL1Bhc3NSZWZQdHIuaDo1OQojOCAgMHgwMDAwN2Zj
NDBlMTNmOWIxIGluIFdURjo6UmVmUHRyPFdURjo6U3RyaW5nSW1wbD46On5SZWZQdHIgKHRoaXM9
CiAgICAweDdmYzNhNDAwOTFjOCwgX19pbl9jaHJnPTxvcHRpbWl6ZWQgb3V0PikKICAgIGF0IC4u
Ly4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvUmVmUHRyLmg6NTgKIzkgIDB4MDAw
MDdmYzQwZjNmNjllMCBpbiBKU0M6OlNtYWxsU3RyaW5nc1N0b3JhZ2U6On5TbWFsbFN0cmluZ3NT
dG9yYWdlKCkgKCkKICAgZnJvbSAvaG9tZS9hdy9Qcm9qZWN0cy9mb3VuZGF0aW9uL3F0NDc0L2xp
Yi9saWJRdFdlYktpdC5zby40CiMxMCAweDAwMDA3ZmM0MGYzZjZhMDcgaW4gdm9pZCBXVEY6OmRl
bGV0ZU93bmVkUHRyPEpTQzo6U21hbGxTdHJpbmdzU3RvcmFnZT4oSlNDOjpTbWFsbFN0cmluZ3NT
dG9yYWdlKikgKCkKICAgZnJvbSAvaG9tZS9hdy9Qcm9qZWN0cy9mb3VuZGF0aW9uL3F0NDc0L2xp
Yi9saWJRdFdlYktpdC5zby40CiMxMSAweDAwMDA3ZmM0MGYzZjY4NjEgaW4gV1RGOjpPd25QdHI8
SlNDOjpTbWFsbFN0cmluZ3NTdG9yYWdlPjo6fk93blB0cigpICgpCiAgIGZyb20gL2hvbWUvYXcv
UHJvamVjdHMvZm91bmRhdGlvbi9xdDQ3NC9saWIvbGliUXRXZWJLaXQuc28uNAojMTIgMHgwMDAw
N2ZjNDBmM2Y2MzgyIGluIEpTQzo6U21hbGxTdHJpbmdzOjp+U21hbGxTdHJpbmdzICh0aGlzPTB4
MjcxNTkzMCwgCiAgICBfX2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KQogICAgYXQgLi4vLi4vLi4v
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU21hbGxTdHJpbmdzLmNwcDo3OAojMTMgMHgw
MDAwN2ZjNDBmM2IxYjI3IGluIEpTQzo6SlNHbG9iYWxEYXRhOjp+SlNHbG9iYWxEYXRhICh0aGlz
PTB4MjcxNTdiMCwgCiAgICBfX2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KQogICAgYXQgLi4vLi4v
Li4vU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxEYXRhLmNwcDozNTkKIzE0
IDB4MDAwMDdmYzQwZTY3ZTBhMSBpbiBXVEY6OlJlZkNvdW50ZWQ8SlNDOjpKU0dsb2JhbERhdGE+
OjpkZXJlZiAodGhpcz0KICAgIDB4MjcxNTdiMCkgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3Jp
cHRDb3JlL3d0Zi9SZWZDb3VudGVkLmg6MTgzCiMxNSAweDAwMDA3ZmM0MGU2N2RmMmUgaW4gV1RG
OjpkZXJlZklmTm90TnVsbDxKU0M6OkpTR2xvYmFsRGF0YT4gKHB0cj0KICAgIDB4MjcxNTdiMCkg
YXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QYXNzUmVmUHRyLmg6NTkKIzE2
IDB4MDAwMDdmYzQwZWYyNGY3NyBpbiBXVEY6OlJlZlB0cjxKU0M6OkpTR2xvYmFsRGF0YT46On5S
ZWZQdHIgKHRoaXM9CiAgICAweDI3MTU3ODAsIF9faW5fY2hyZz08b3B0aW1pemVkIG91dD4pCiAg
ICBhdCAuLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL1JlZlB0ci5oOjU4CiMxNyAw
eDAwMDA3ZmM0MGVmMjNlZWMgaW4gV2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcjo6fldv
cmtlclNjcmlwdENvbnRyb2xsZXIgKHRoaXM9MHgyNzE1NzgwLCBfX2luX2Nocmc9PG9wdGltaXpl
ZCBvdXQ+KQogICAgYXQgLi4vLi4vLi4vU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2Vy
U2NyaXB0Q29udHJvbGxlci5jcHA6NzAKIzE4IDB4MDAwMDdmYzQwZWYyZjk3YiBpbiBXVEY6OmRl
bGV0ZU93bmVkUHRyPFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI+CiAgICAocHRyPTB4
MjcxNTc4MCkgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9Pd25QdHJDb21t
b24uaDo1MwojMTkgMHgwMDAwN2ZjNDBlZjNiNWEyIGluIFdURjo6T3duUHRyPFdlYkNvcmU6Oldv
cmtlclNjcmlwdENvbnRyb2xsZXI+OjpjbGVhciAoCiAgICB0aGlzPTB4MjcxNTQ0MCkgYXQgLi4v
Li4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9Pd25QdHIuaDo5OQojMjAgMHgwMDAwN2Zj
NDBlZjNhMmIwIGluIFdlYkNvcmU6OldvcmtlckNvbnRleHQ6OmNsZWFyU2NyaXB0ICh0aGlzPTB4
MjcxNTJlMCkKICAgIGF0IC4uLy4uLy4uL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29u
dGV4dC5oOjg0CiMyMSAweDAwMDA3ZmM0MGVmM2IxODYgaW4gV2ViQ29yZTo6V29ya2VyVGhyZWFk
U2h1dGRvd25GaW5pc2hUYXNrOjpwZXJmb3JtVGFzawogICAgKHRoaXM9MHg3ZmMzYTQwMDU0ZTAs
IGNvbnRleHQ9MHgyNzE1MmUwKQogICAgYXQgLi4vLi4vLi4vU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJUaHJlYWQuY3BwOjE4OAojMjIgMHgwMDAwN2ZjNDBlZjM3ZTQ4IGluIFdlYkNvcmU6
OldvcmtlclJ1bkxvb3A6OlRhc2s6OnBlcmZvcm1UYXNrICh0aGlzPQogICAgMHg3ZmMzYTQwMTQ5
NDAsIGNvbnRleHQ9MHgyNzE1MmUwKQogICAgYXQgLi4vLi4vLi4vU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJSdW5Mb29wLmNwcDoyMDAKIzIzIDB4MDAwMDdmYzQwZWYzN2IwNyBpbiBXZWJD
b3JlOjpXb3JrZXJSdW5Mb29wOjpydW5Jbk1vZGUgKHRoaXM9CiAgICAweDdmYzNhYzAwYWI2MCwg
Y29udGV4dD0weDI3MTUyZTAsIHByZWRpY2F0ZT0uLi4pCiAgICBhdCAuLi8uLi8uLi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlclJ1bkxvb3AuY3BwOjE2NAojMjQgMHgwMDAwN2ZjNDBlZjM3
N2ZmIGluIFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1biAodGhpcz0weDdmYzNhYzAwYWI2MCwg
CiAgICBjb250ZXh0PTB4MjcxNTJlMCkgYXQgLi4vLi4vLi4vU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJSdW5Mb29wLmNwcDoxMzUKIzI1IDB4MDAwMDdmYzQwZWYzYjA4NSBpbiBXZWJDb3Jl
OjpXb3JrZXJUaHJlYWQ6OnJ1bkV2ZW50TG9vcCAodGhpcz0KICAgIDB4N2ZjM2FjMDBhYjMwKSBh
dCAuLi8uLi8uLi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5jcHA6MTcwCiMy
NiAweDAwMDA3ZmM0MGYyMTJkZWQgaW4gV2ViQ29yZTo6RGVkaWNhdGVkV29ya2VyVGhyZWFkOjpy
dW5FdmVudExvb3AgKHRoaXM9CiAgICAweDdmYzNhYzAwYWIzMCkKICAgIGF0IC4uLy4uLy4uL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcDo2NgojMjcgMHgw
MDAwN2ZjNDBlZjNhZjdmIGluIFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkICh0
aGlzPQogICAgMHg3ZmMzYWMwMGFiMzApIGF0IC4uLy4uLy4uL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyVGhyZWFkLmNwcDoxNDgKIzI4IDB4MDAwMDdmYzQwZWYzYWQzMiBpbiBXZWJDb3Jl
OjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZFN0YXJ0ICh0aHJlYWQ9CiAgICAweDdmYzNhYzAw
YWIzMCkgYXQgLi4vLi4vLi4vU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3Bw
OjEyNAojMjkgMHgwMDAwN2ZjNDBmMzE2M2VkIGluIFdURjo6dGhyZWFkRW50cnlQb2ludCAoY29u
dGV4dERhdGE9MHg3ZmMzYWMwMGFiMDApCiAgICBhdCAuLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd3RmL1RocmVhZGluZy5jcHA6NjcKIzMwIDB4MDAwMDdmYzQwZjMwZjIyNSBpbiBXVEY6
OlRocmVhZFByaXZhdGU6OnJ1biAodGhpcz0weDdmYzNhYzAwYjdjMCkKICAgIGF0IC4uLy4uLy4u
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQuY3BwOjY3CiMzMSAweDAw
MDA3ZmM0MGMyZjFmZjUgaW4gUVRocmVhZFByaXZhdGU6OnN0YXJ0IChhcmc9MHg3ZmMzYWMwMGI3
YzApCiAgICBhdCB0aHJlYWQvcXRocmVhZF91bml4LmNwcDozMzEKIzMyIDB4MDAwMDdmYzQwOWQ5
ZTI1YSBpbiA/PyAoKSBmcm9tIC91c3IvbGliL252aWRpYS1jdXJyZW50L2xpYkdMLnNvLjEKIzMz
IDB4MDAwMDdmYzQwYzAzOTljYSBpbiBzdGFydF90aHJlYWQgKCkgZnJvbSAvbGliL2xpYnB0aHJl
YWQuc28uMAojMzQgMHgwMDAwN2ZjNDBiNWU4NzBkIGluIGNsb25lICgpIGZyb20gL2xpYi9saWJj
LnNvLjYKIzM1IDB4MDAwMDAwMDAwMDAwMDAwMCBpbiA/PyAoKQoKVGhyZWFkIDIgKFRocmVhZCAw
eDdmYzNhYjNmZTcwMCAoTFdQIDc0NDYpKToKIzAgIDB4MDAwMDdmYzQwY2IzOTEyMCBpbiBRQmFz
aWNBdG9taWNJbnQ6OnRlc3RBbmRTZXRPcmRlcmVkICh0aGlzPTB4MjVlZmJmNCwgCiAgICBleHBl
Y3RlZFZhbHVlPTAsIG5ld1ZhbHVlPTEpCiAgICBhdCAuLi8uLi9pbmNsdWRlL1F0Q29yZS8uLi8u
Li9zcmMvY29yZWxpYi9hcmNoL3FhdG9taWNfeDg2XzY0Lmg6MTQ1CiMxICAweDAwMDA3ZmM0MGMy
ZWIyOGEgaW4gUUJhc2ljQXRvbWljSW50Ojp0ZXN0QW5kU2V0QWNxdWlyZSAodGhpcz0weDI1ZWZi
ZjQsIAogICAgZXhwZWN0ZWRWYWx1ZT0wLCBuZXdWYWx1ZT0xKQogICAgYXQgLi4vLi4vaW5jbHVk
ZS9RdENvcmUvLi4vLi4vc3JjL2NvcmVsaWIvYXJjaC9xYXRvbWljX3g4Nl82NC5oOjI2NwojMiAg
MHgwMDAwN2ZjNDBjMmVhYmE5IGluIFFNdXRleDo6bG9jayAodGhpcz0weDI1NDY0OTApCiAgICBh
dCB0aHJlYWQvcW11dGV4LmNwcDoxODUKIzMgIDB4MDAwMDdmYzQwZjMwZmI4OSBpbiBXVEY6Ok11
dGV4Ojpsb2NrICh0aGlzPTB4MjU4MTc2MCkKICAgIGF0IC4uLy4uLy4uL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQuY3BwOjIzNQojNCAgMHgwMDAwN2ZjNDBlMTQ2OWZl
IGluIFdURjo6TG9ja2VyPFdURjo6TXV0ZXg+OjpMb2NrZXIgKHRoaXM9CiAgICAweDdmYzNhYjNm
ZDg1MCwgbG9ja2FibGU9Li4uKQogICAgYXQgLi4vLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRD
b3JlL3d0Zi9Mb2NrZXIuaDozOAojNSAgMHgwMDAwN2ZjNDBmMzE4ODc1IGluIFdURjo6YWRkSXRl
cmF0b3I8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpJZGVudGl0eUV4
dHJhY3RvcjxXVEY6OlN0cmluZ0ltcGwqPiwgV1RGOjpTdHJpbmdIYXNoLCBXVEY6Okhhc2hUcmFp
dHM8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6SGFzaFRyYWl0czxXVEY6OlN0cmluZ0ltcGwqPiA+
ICh0YWJsZT0weDI1ODE3NDAsIGl0PQogICAgMHg3ZmMzYWIzZmQ4ZTApIGF0IC4uLy4uLy4uL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvSGFzaFRhYmxlLmg6MTA3NQojNiAgMHgwMDAwN2ZjNDBm
MzE4MGQ3IGluIFdURjo6SGFzaFRhYmxlQ29uc3RJdGVyYXRvcjxXVEY6OlN0cmluZ0ltcGwqLCBX
VEY6OlN0cmluZ0ltcGwqLCBXVEY6OklkZW50aXR5RXh0cmFjdG9yPFdURjo6U3RyaW5nSW1wbCo+
LCBXVEY6OlN0cmluZ0hhc2gsIFdURjo6SGFzaFRyYWl0czxXVEY6OlN0cmluZ0ltcGwqPiwgV1RG
OjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+ID46Okhhc2hUYWJsZUNvbnN0SXRlcmF0b3Io
V1RGOjpIYXNoVGFibGVDb25zdEl0ZXJhdG9yPFdURjo6U3RyaW5nSW1wbCosIFdURjo6U3RyaW5n
SW1wbCosIFdURjo6SWRlbnRpdHlFeHRyYWN0b3I8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6U3Ry
aW5nSGFzaCwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+LCBXVEY6Okhhc2hUcmFp
dHM8V1RGOjpTdHJpbmdJbXBsKj4gPiBjb25zdCYpICgpCiAgIGZyb20gL2hvbWUvYXcvUHJvamVj
dHMvZm91bmRhdGlvbi9xdDQ3NC9saWIvbGliUXRXZWJLaXQuc28uNAojNyAgMHgwMDAwN2ZjNDBm
MzE4YTgyIGluIFdURjo6SGFzaFRhYmxlSXRlcmF0b3I8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpT
dHJpbmdJbXBsKiwgV1RGOjpJZGVudGl0eUV4dHJhY3RvcjxXVEY6OlN0cmluZ0ltcGwqPiwgV1RG
OjpTdHJpbmdIYXNoLCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6SGFz
aFRyYWl0czxXVEY6OlN0cmluZ0ltcGwqPiA+OjpvcGVyYXRvciBXVEY6Okhhc2hUYWJsZUNvbnN0
SXRlcmF0b3I8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpJZGVudGl0
eUV4dHJhY3RvcjxXVEY6OlN0cmluZ0ltcGwqPiwgV1RGOjpTdHJpbmdIYXNoLCBXVEY6Okhhc2hU
cmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6SGFzaFRyYWl0czxXVEY6OlN0cmluZ0ltcGwq
PiA+ICh0aGlzPTB4N2ZjM2FiM2ZkOTEwKQogICAgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3Jp
cHRDb3JlL3d0Zi9IYXNoVGFibGUuaDoyNTQKIzggIDB4MDAwMDdmYzQwZjMxODFkMiBpbiBXVEY6
Okhhc2hTZXQ8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpTdHJpbmdIYXNoLCBXVEY6Okhhc2hUcmFp
dHM8V1RGOjpTdHJpbmdJbXBsKj4gPjo6cmVtb3ZlKFdURjo6SGFzaFRhYmxlQ29uc3RJdGVyYXRv
ckFkYXB0ZXI8V1RGOjpIYXNoVGFibGU8V1RGOjpTdHJpbmdJbXBsKiwgV1RGOjpTdHJpbmdJbXBs
KiwgV1RGOjpJZGVudGl0eUV4dHJhY3RvcjxXVEY6OlN0cmluZ0ltcGwqPiwgV1RGOjpTdHJpbmdI
YXNoLCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpTdHJpbmdJbXBsKj4sIFdURjo6SGFzaFRyYWl0czxX
VEY6OlN0cmluZ0ltcGwqPiA+LCBXVEY6OlN0cmluZ0ltcGwqPikgKCkKICAgZnJvbSAvaG9tZS9h
dy9Qcm9qZWN0cy9mb3VuZGF0aW9uL3F0NDc0L2xpYi9saWJRdFdlYktpdC5zby40CiM5ICAweDAw
MDA3ZmM0MGYzMTg0ZTkgaW4gV1RGOjpIYXNoU2V0PFdURjo6U3RyaW5nSW1wbCosIFdURjo6U3Ry
aW5nSGFzaCwgV1RGOjpIYXNoVHJhaXRzPFdURjo6U3RyaW5nSW1wbCo+ID46OnJlbW92ZShXVEY6
OlN0cmluZ0ltcGwqIGNvbnN0JikgKCkKICAgZnJvbSAvaG9tZS9hdy9Qcm9qZWN0cy9mb3VuZGF0
aW9uL3F0NDc0L2xpYi9saWJRdFdlYktpdC5zby40CiMxMCAweDAwMDA3ZmM0MGYzMTcyYTAgaW4g
V1RGOjpBdG9taWNTdHJpbmc6OnJlbW92ZSAocj0weDI1OGFkOTApCiAgICBhdCAuLi8uLi8uLi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3RleHQvQXRvbWljU3RyaW5nLmNwcDoyODQKIzExIDB4
MDAwMDdmYzQwZjMxZGFmYyBpbiBXVEY6OlN0cmluZ0ltcGw6On5TdHJpbmdJbXBsICh0aGlzPTB4
MjU4YWQ5MCwgCiAgICBfX2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KQogICAgYXQgLi4vLi4vLi4v
U291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1N0cmluZ0ltcGwuY3BwOjQ3CiMxMiAweDAw
MDA3ZmM0MGUxM2VlYjYgaW4gV1RGOjpTdHJpbmdJbXBsOjpkZXJlZiAodGhpcz0weDI1OGFkOTAp
CiAgICBhdCAuLi8uLi8uLi8uLi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3RleHQvU3RyaW5n
SW1wbC5oOjM3NQojMTMgMHgwMDAwN2ZjNDBlMTNmYTMxIGluIFdURjo6ZGVyZWZJZk5vdE51bGw8
V1RGOjpTdHJpbmdJbXBsPiAocHRyPTB4MjU4YWQ5MCkKICAgIGF0IC4uLy4uLy4uLy4uL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93dGYvUGFzc1JlZlB0ci5oOjU5CiMxNCAweDAwMDA3ZmM0MGUxM2Y5
YjEgaW4gV1RGOjpSZWZQdHI8V1RGOjpTdHJpbmdJbXBsPjo6flJlZlB0ciAodGhpcz0KICAgIDB4
MjVhMGQ0OCwgX19pbl9jaHJnPTxvcHRpbWl6ZWQgb3V0PikKICAgIGF0IC4uLy4uLy4uLy4uL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvUmVmUHRyLmg6NTgKIzE1IDB4MDAwMDdmYzQwZTEzZWYx
NiBpbiBXVEY6OlN0cmluZzo6flN0cmluZyAodGhpcz0weDI1YTBkNDgsIAogICAgX19pbl9jaHJn
PTxvcHRpbWl6ZWQgb3V0PikKICAgIGF0IC4uLy4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93dGYvdGV4dC9XVEZTdHJpbmcuaDoxMDUKIzE2IDB4MDAwMDdmYzQwZTEzZWZjNCBpbiBXVEY6
OkF0b21pY1N0cmluZzo6fkF0b21pY1N0cmluZyAodGhpcz0weDI1YTBkNDgsIAogICAgX19pbl9j
aHJnPTxvcHRpbWl6ZWQgb3V0PikKICAgIGF0IC4uLy4uLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93dGYvdGV4dC9BdG9taWNTdHJpbmcuaDozOQojMTcgMHgwMDAwN2ZjNDBlYzgzOWUzIGlu
IFdlYkNvcmU6OkV2ZW50TmFtZXM6On5FdmVudE5hbWVzICh0aGlzPTB4MjVhMDdjMCwgCiAgICBf
X2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KSBhdCAuLi8uLi8uLi9Tb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnROYW1lcy5oOjE5NwojMTggMHgwMDAwN2ZjNDBlYzg1Y2ZmIGluIFdURjo6ZGVsZXRlT3du
ZWRQdHI8V2ViQ29yZTo6RXZlbnROYW1lcz4gKHB0cj0KICAgIDB4MjVhMDdjMCkgYXQgLi4vLi4v
Li4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9Pd25QdHJDb21tb24uaDo1MwojMTkgMHgwMDAw
N2ZjNDBlYzgzOGNlIGluIFdURjo6T3duUHRyPFdlYkNvcmU6OkV2ZW50TmFtZXM+OjpjbGVhciAo
dGhpcz0KICAgIDB4MjU5M2I4MCkgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0
Zi9Pd25QdHIuaDo5OQojMjAgMHgwMDAwN2ZjNDBlYzgzNmNjIGluIFdlYkNvcmU6OlRocmVhZEds
b2JhbERhdGE6OmRlc3Ryb3kgKHRoaXM9MHgyNTkzYjgwKQogICAgYXQgLi4vLi4vLi4vU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHA6OTYKIzIxIDB4MDAwMDdmYzQw
ZWYzYjAzNyBpbiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZCAodGhpcz0KICAg
IDB4N2ZjM2FjMDE0OWIwKSBhdCAuLi8uLi8uLi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
clRocmVhZC5jcHA6MTU5CiMyMiAweDAwMDA3ZmM0MGVmM2FkMzIgaW4gV2ViQ29yZTo6V29ya2Vy
VGhyZWFkOjp3b3JrZXJUaHJlYWRTdGFydCAodGhyZWFkPQogICAgMHg3ZmMzYWMwMTQ5YjApIGF0
IC4uLy4uLy4uL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmNwcDoxMjQKIzIz
IDB4MDAwMDdmYzQwZjMxNjNlZCBpbiBXVEY6OnRocmVhZEVudHJ5UG9pbnQgKGNvbnRleHREYXRh
PTB4N2ZjM2FjMDA5ODkwKQogICAgYXQgLi4vLi4vLi4vU291cmNlL0phdmFTY3JpcHRDb3JlL3d0
Zi9UaHJlYWRpbmcuY3BwOjY3CiMyNCAweDAwMDA3ZmM0MGYzMGYyMjUgaW4gV1RGOjpUaHJlYWRQ
cml2YXRlOjpydW4gKHRoaXM9MHg3ZmMzYWMwMTRiZTApCiAgICBhdCAuLi8uLi8uLi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGluZ1F0LmNwcDo2NwojMjUgMHgwMDAwN2ZjNDBj
MmYxZmY1IGluIFFUaHJlYWRQcml2YXRlOjpzdGFydCAoYXJnPTB4N2ZjM2FjMDE0YmUwKQogICAg
YXQgdGhyZWFkL3F0aHJlYWRfdW5peC5jcHA6MzMxCiMyNiAweDAwMDA3ZmM0MDlkOWUyNWEgaW4g
Pz8gKCkgZnJvbSAvdXNyL2xpYi9udmlkaWEtY3VycmVudC9saWJHTC5zby4xCiMyNyAweDAwMDA3
ZmM0MGMwMzk5Y2EgaW4gc3RhcnRfdGhyZWFkICgpIGZyb20gL2xpYi9saWJwdGhyZWFkLnNvLjAK
IzI4IDB4MDAwMDdmYzQwYjVlODcwZCBpbiBjbG9uZSAoKSBmcm9tIC9saWIvbGliYy5zby42CiMy
OSAweDAwMDAwMDAwMDAwMDAwMDAgaW4gPz8gKCkKClRocmVhZCAxIChUaHJlYWQgMHg3ZmM0MTBk
NGQ3YTAgKExXUCA3NDI2KSk6CiMwICAweDAwMDA3ZmM0MGMwM2ViYzkgaW4gcHRocmVhZF9jb25k
X3RpbWVkd2FpdEBAR0xJQkNfMi4zLjIgKCkKICAgZnJvbSAvbGliL2xpYnB0aHJlYWQuc28uMAoj
MSAgMHgwMDAwN2ZjNDBjMmYzNmYxIGluIFFXYWl0Q29uZGl0aW9uUHJpdmF0ZTo6d2FpdCAodGhp
cz0weDI1ZTE3MjAsIAogICAgdGltZT01MDAwKSBhdCB0aHJlYWQvcXdhaXRjb25kaXRpb25fdW5p
eC5jcHA6ODYKIzIgIDB4MDAwMDdmYzQwYzJmMzRiNSBpbiBRV2FpdENvbmRpdGlvbjo6d2FpdCAo
dGhpcz0weDI1ZTE3MDAsIG11dGV4PQogICAgMHgyNWUxNmUwLCB0aW1lPTUwMDApIGF0IHRocmVh
ZC9xd2FpdGNvbmRpdGlvbl91bml4LmNwcDoxNjAKIzMgIDB4MDAwMDdmYzQwYzJmMmM3NSBpbiBR
VGhyZWFkOjp3YWl0ICh0aGlzPTB4MjVlMTBkMCwgdGltZT01MDAwKQogICAgYXQgdGhyZWFkL3F0
aHJlYWRfdW5peC5jcHA6NzQ1CiM0ICAweDAwMDA3ZmM0MGEzMjk3M2YgaW4gUU5ldHdvcmtDb25m
aWd1cmF0aW9uTWFuYWdlclByaXZhdGU6OmNsZWFudXAgKHRoaXM9CiAgICAweDI1ZTEzMzApIGF0
IGJlYXJlci9xbmV0d29ya2NvbmZpZ21hbmFnZXJfcC5jcHA6OTIKIzUgIDB4MDAwMDdmYzQwYTMy
NjRiNCBpbiBjb25uTWFuYWdlcl9jbGVhbnVwICgpCiAgICBhdCBiZWFyZXIvcW5ldHdvcmtjb25m
aWdtYW5hZ2VyLmNwcDo3NQojNiAgMHgwMDAwN2ZjNDBjNDIzYjRiIGluIHF0X2NhbGxfcG9zdF9y
b3V0aW5lcyAoKQogICAgYXQga2VybmVsL3Fjb3JlYXBwbGljYXRpb24uY3BwOjI1NQojNyAgMHgw
MDAwN2ZjNDBjOWZlNDg3IGluIFFBcHBsaWNhdGlvbjo6flFBcHBsaWNhdGlvbiAodGhpcz0weDdm
ZmY4NDgyNDAyMCwgCiAgICBfX2luX2Nocmc9PG9wdGltaXplZCBvdXQ+KSBhdCBrZXJuZWwvcWFw
cGxpY2F0aW9uLmNwcDoxMTAxCiM4ICAweDAwMDAwMDAwMDA0MDJhNzYgaW4gbWFpbiAoYXJnYz0x
LCBhcmd2PTB4N2ZmZjg0ODI0MTM4KSBhdCBtYWluLmNwcDozMAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>114075</attachid>
            <date>2011-11-08 08:16:55 -0800</date>
            <delta_ts>2011-11-08 08:16:55 -0800</delta_ts>
            <desc>valgrind log</desc>
            <filename>valgrind.log</filename>
            <type>text/plain</type>
            <size>31621</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">PT0yNTY0Mz09IE1lbWNoZWNrLCBhIG1lbW9yeSBlcnJvciBkZXRlY3Rvcgo9PTI1NjQzPT0gQ29w
eXJpZ2h0IChDKSAyMDAyLTIwMTEsIGFuZCBHTlUgR1BMJ2QsIGJ5IEp1bGlhbiBTZXdhcmQgZXQg
YWwuCj09MjU2NDM9PSBVc2luZyBWYWxncmluZC0zLjcuMCBhbmQgTGliVkVYOyByZXJ1biB3aXRo
IC1oIGZvciBjb3B5cmlnaHQgaW5mbwo9PTI1NjQzPT0gQ29tbWFuZDogLi90aHJlYWRjcmFzaAo9
PTI1NjQzPT0gCiJ3b3JrZXIgMSBmaW5pc2hlZCIgCiJ3b3JrZXIgMiBmaW5pc2hlZCIgCiJ3b3Jr
ZXIgMyBmaW5pc2hlZCIgCiJ3b3JrZXIgNCBmaW5pc2hlZCIgCiJ3b3JrZXIgNSBmaW5pc2hlZCIg
CiJ3b3JrZXIgNiBmaW5pc2hlZCIgCiJ3b3JrZXIgNyBmaW5pc2hlZCIgCiJ3b3JrZXIgOCBmaW5p
c2hlZCIgCiJ3b3JrZXIgOSBmaW5pc2hlZCIgCiJ3b3JrZXIgMTAgZmluaXNoZWQiIAo9PTI1NjQz
PT0gVGhyZWFkIDU6Cj09MjU2NDM9PSBJbnZhbGlkIHJlYWQgb2Ygc2l6ZSA4Cj09MjU2NDM9PSAg
ICBhdCAweDkxQkU5OUI6IFFNdXRleDo6bG9jaygpIChxbXV0ZXguY3BwOjE1MSkKPT0yNTY0Mz09
ICAgIGJ5IDB4NjhGQUY3QzogV1RGOjpNdXRleDo6bG9jaygpIChUaHJlYWRpbmdRdC5jcHA6MjM1
KQo9PTI1NjQzPT0gICAgYnkgMHg1NzMxOEZEOiBXVEY6OkxvY2tlcjxXVEY6Ok11dGV4Pjo6TG9j
a2VyKFdURjo6TXV0ZXgmKSAoTG9ja2VyLmg6MzgpCj09MjU2NDM9PSAgICBieSAweDY4RkE5QjY6
IFdURjo6Y2xlYXJUaHJlYWRGb3JJZGVudGlmaWVyKHVuc2lnbmVkIGludCkgKFRocmVhZGluZ1F0
LmNwcDoxMjgpCj09MjU2NDM9PSAgICBieSAweDY4RkFEODQ6IFdURjo6d2FpdEZvclRocmVhZENv
bXBsZXRpb24odW5zaWduZWQgaW50LCB2b2lkKiopIChUaHJlYWRpbmdRdC5jcHA6MTk3KQo9PTI1
NjQzPT0gICAgYnkgMHg2OTI1N0E0OiBKU0M6OkhlYXA6On5IZWFwKCkgKEhlYXAuY3BwOjM0MikK
PT0yNTY0Mz09ICAgIGJ5IDB4Njk5NEVDQjogSlNDOjpKU0dsb2JhbERhdGE6On5KU0dsb2JhbERh
dGEoKSAoSlNHbG9iYWxEYXRhLmNwcDozNTkpCj09MjU2NDM9PSAgICBieSAweDVDNjhGQTI6IFdU
Rjo6UmVmQ291bnRlZDxKU0M6OkpTR2xvYmFsRGF0YT46OmRlcmVmKCkgKFJlZkNvdW50ZWQuaDox
ODMpCj09MjU2NDM9PSAgICBieSAweDVDNjhFMkY6IHZvaWQgV1RGOjpkZXJlZklmTm90TnVsbDxK
U0M6OkpTR2xvYmFsRGF0YT4oSlNDOjpKU0dsb2JhbERhdGEqKSAoUGFzc1JlZlB0ci5oOjU5KQo9
PTI1NjQzPT0gICAgYnkgMHg2NTBGRTc4OiBXVEY6OlJlZlB0cjxKU0M6OkpTR2xvYmFsRGF0YT46
On5SZWZQdHIoKSAoUmVmUHRyLmg6NTgpCj09MjU2NDM9PSAgICBieSAweDY1MEVERUQ6IFdlYkNv
cmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI6On5Xb3JrZXJTY3JpcHRDb250cm9sbGVyKCkgKFdv
cmtlclNjcmlwdENvbnRyb2xsZXIuY3BwOjcwKQo9PTI1NjQzPT0gICAgYnkgMHg2NTFBODdDOiB2
b2lkIFdURjo6ZGVsZXRlT3duZWRQdHI8V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj4o
V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlciopIChPd25QdHJDb21tb24uaDo1MykKPT0y
NTY0Mz09ICAgIGJ5IDB4NjUyNjRBMzogV1RGOjpPd25QdHI8V2ViQ29yZTo6V29ya2VyU2NyaXB0
Q29udHJvbGxlcj46OmNsZWFyKCkgKE93blB0ci5oOjk5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1
MUIxOiBXZWJDb3JlOjpXb3JrZXJDb250ZXh0OjpjbGVhclNjcmlwdCgpIChXb3JrZXJDb250ZXh0
Lmg6ODQpCj09MjU2NDM9PSAgICBieSAweDY1MjYwODc6IFdlYkNvcmU6OldvcmtlclRocmVhZFNo
dXRkb3duRmluaXNoVGFzazo6cGVyZm9ybVRhc2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCopIChXb3JrZXJUaHJlYWQuY3BwOjE4OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyMkQ0OTog
V2ViQ29yZTo6V29ya2VyUnVuTG9vcDo6VGFzazo6cGVyZm9ybVRhc2soV2ViQ29yZTo6U2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJSdW5Mb29wLmNwcDoyMDApCj09MjU2NDM9PSAgICBi
eSAweDY1MjJBMDg6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1bkluTW9kZShXZWJDb3JlOjpX
b3JrZXJDb250ZXh0KiwgV2ViQ29yZTo6TW9kZVByZWRpY2F0ZSBjb25zdCYpIChXb3JrZXJSdW5M
b29wLmNwcDoxNjQpCj09MjU2NDM9PSAgICBieSAweDY1MjI3MDA6IFdlYkNvcmU6OldvcmtlclJ1
bkxvb3A6OnJ1bihXZWJDb3JlOjpXb3JrZXJDb250ZXh0KikgKFdvcmtlclJ1bkxvb3AuY3BwOjEz
NSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUY4NjogV2ViQ29yZTo6V29ya2VyVGhyZWFkOjpydW5F
dmVudExvb3AoKSAoV29ya2VyVGhyZWFkLmNwcDoxNzApCj09MjU2NDM9PSAgICBieSAweDY3RkRD
RUU6IFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKERlZGlj
YXRlZFdvcmtlclRocmVhZC5jcHA6NjYpCj09MjU2NDM9PSAgICBieSAweDY1MjVFODA6IFdlYkNv
cmU6OldvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkKCkgKFdvcmtlclRocmVhZC5jcHA6MTQ4KQo9
PTI1NjQzPT0gICAgYnkgMHg2NTI1QzMzOiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRo
cmVhZFN0YXJ0KHZvaWQqKSAoV29ya2VyVGhyZWFkLmNwcDoxMjQpCj09MjU2NDM9PSAgICBieSAw
eDY5MDE3QkM6IFdURjo6dGhyZWFkRW50cnlQb2ludCh2b2lkKikgKFRocmVhZGluZy5jcHA6Njcp
Cj09MjU2NDM9PSAgICBieSAweDY4RkE2MTg6IFdURjo6VGhyZWFkUHJpdmF0ZTo6cnVuKCkgKFRo
cmVhZGluZ1F0LmNwcDo2NykKPT0yNTY0Mz09ICAgIGJ5IDB4OTFDNUZGNDogUVRocmVhZFByaXZh
dGU6OnN0YXJ0KHZvaWQqKSAocXRocmVhZF91bml4LmNwcDozMzEpCj09MjU2NDM9PSAgQWRkcmVz
cyAweDExZjI2YzQwIGlzIDAgYnl0ZXMgaW5zaWRlIGEgYmxvY2sgb2Ygc2l6ZSA4IGZyZWUnZAo9
PTI1NjQzPT0gICAgYXQgMHg0QzI3NEIxOiBvcGVyYXRvciBkZWxldGUodm9pZCopICh2Z19yZXBs
YWNlX21hbGxvYy5jOjQ1NykKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQUY1QTogV1RGOjpNdXRleDo6
fk11dGV4KCkgKFRocmVhZGluZ1F0LmNwcDoyMzApCj09MjU2NDM9PSAgICBieSAweEEwQTEyNjE6
IGV4aXQgKGV4aXQuYzo3OCkKPT0yNTY0Mz09ICAgIGJ5IDB4QTA4NkM1MzogKGJlbG93IG1haW4p
IChsaWJjLXN0YXJ0LmM6MjU4KQo9PTI1NjQzPT0gCj09MjU2NDM9PSBJbnZhbGlkIHJlYWQgb2Yg
c2l6ZSAxCj09MjU2NDM9PSAgICBhdCAweDkxQkU5OUU6IFFNdXRleDo6bG9jaygpIChxbXV0ZXgu
Y3BwOjE1MSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQUY3QzogV1RGOjpNdXRleDo6bG9jaygpIChU
aHJlYWRpbmdRdC5jcHA6MjM1KQo9PTI1NjQzPT0gICAgYnkgMHg1NzMxOEZEOiBXVEY6OkxvY2tl
cjxXVEY6Ok11dGV4Pjo6TG9ja2VyKFdURjo6TXV0ZXgmKSAoTG9ja2VyLmg6MzgpCj09MjU2NDM9
PSAgICBieSAweDY4RkE5QjY6IFdURjo6Y2xlYXJUaHJlYWRGb3JJZGVudGlmaWVyKHVuc2lnbmVk
IGludCkgKFRocmVhZGluZ1F0LmNwcDoxMjgpCj09MjU2NDM9PSAgICBieSAweDY4RkFEODQ6IFdU
Rjo6d2FpdEZvclRocmVhZENvbXBsZXRpb24odW5zaWduZWQgaW50LCB2b2lkKiopIChUaHJlYWRp
bmdRdC5jcHA6MTk3KQo9PTI1NjQzPT0gICAgYnkgMHg2OTI1N0E0OiBKU0M6OkhlYXA6On5IZWFw
KCkgKEhlYXAuY3BwOjM0MikKPT0yNTY0Mz09ICAgIGJ5IDB4Njk5NEVDQjogSlNDOjpKU0dsb2Jh
bERhdGE6On5KU0dsb2JhbERhdGEoKSAoSlNHbG9iYWxEYXRhLmNwcDozNTkpCj09MjU2NDM9PSAg
ICBieSAweDVDNjhGQTI6IFdURjo6UmVmQ291bnRlZDxKU0M6OkpTR2xvYmFsRGF0YT46OmRlcmVm
KCkgKFJlZkNvdW50ZWQuaDoxODMpCj09MjU2NDM9PSAgICBieSAweDVDNjhFMkY6IHZvaWQgV1RG
OjpkZXJlZklmTm90TnVsbDxKU0M6OkpTR2xvYmFsRGF0YT4oSlNDOjpKU0dsb2JhbERhdGEqKSAo
UGFzc1JlZlB0ci5oOjU5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTBGRTc4OiBXVEY6OlJlZlB0cjxK
U0M6OkpTR2xvYmFsRGF0YT46On5SZWZQdHIoKSAoUmVmUHRyLmg6NTgpCj09MjU2NDM9PSAgICBi
eSAweDY1MEVERUQ6IFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI6On5Xb3JrZXJTY3Jp
cHRDb250cm9sbGVyKCkgKFdvcmtlclNjcmlwdENvbnRyb2xsZXIuY3BwOjcwKQo9PTI1NjQzPT0g
ICAgYnkgMHg2NTFBODdDOiB2b2lkIFdURjo6ZGVsZXRlT3duZWRQdHI8V2ViQ29yZTo6V29ya2Vy
U2NyaXB0Q29udHJvbGxlcj4oV2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlciopIChPd25Q
dHJDb21tb24uaDo1MykKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNjRBMzogV1RGOjpPd25QdHI8V2Vi
Q29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj46OmNsZWFyKCkgKE93blB0ci5oOjk5KQo9PTI1
NjQzPT0gICAgYnkgMHg2NTI1MUIxOiBXZWJDb3JlOjpXb3JrZXJDb250ZXh0OjpjbGVhclNjcmlw
dCgpIChXb3JrZXJDb250ZXh0Lmg6ODQpCj09MjU2NDM9PSAgICBieSAweDY1MjYwODc6IFdlYkNv
cmU6OldvcmtlclRocmVhZFNodXRkb3duRmluaXNoVGFzazo6cGVyZm9ybVRhc2soV2ViQ29yZTo6
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJUaHJlYWQuY3BwOjE4OCkKPT0yNTY0Mz09
ICAgIGJ5IDB4NjUyMkQ0OTogV2ViQ29yZTo6V29ya2VyUnVuTG9vcDo6VGFzazo6cGVyZm9ybVRh
c2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJSdW5Mb29wLmNwcDoy
MDApCj09MjU2NDM9PSAgICBieSAweDY1MjJBMDg6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1
bkluTW9kZShXZWJDb3JlOjpXb3JrZXJDb250ZXh0KiwgV2ViQ29yZTo6TW9kZVByZWRpY2F0ZSBj
b25zdCYpIChXb3JrZXJSdW5Mb29wLmNwcDoxNjQpCj09MjU2NDM9PSAgICBieSAweDY1MjI3MDA6
IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1bihXZWJDb3JlOjpXb3JrZXJDb250ZXh0KikgKFdv
cmtlclJ1bkxvb3AuY3BwOjEzNSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUY4NjogV2ViQ29yZTo6
V29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKSAoV29ya2VyVGhyZWFkLmNwcDoxNzApCj09MjU2
NDM9PSAgICBieSAweDY3RkRDRUU6IFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlclRocmVhZDo6cnVu
RXZlbnRMb29wKCkgKERlZGljYXRlZFdvcmtlclRocmVhZC5jcHA6NjYpCj09MjU2NDM9PSAgICBi
eSAweDY1MjVFODA6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkKCkgKFdvcmtl
clRocmVhZC5jcHA6MTQ4KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1QzMzOiBXZWJDb3JlOjpXb3Jr
ZXJUaHJlYWQ6OndvcmtlclRocmVhZFN0YXJ0KHZvaWQqKSAoV29ya2VyVGhyZWFkLmNwcDoxMjQp
Cj09MjU2NDM9PSAgICBieSAweDY5MDE3QkM6IFdURjo6dGhyZWFkRW50cnlQb2ludCh2b2lkKikg
KFRocmVhZGluZy5jcHA6NjcpCj09MjU2NDM9PSAgICBieSAweDY4RkE2MTg6IFdURjo6VGhyZWFk
UHJpdmF0ZTo6cnVuKCkgKFRocmVhZGluZ1F0LmNwcDo2NykKPT0yNTY0Mz09ICAgIGJ5IDB4OTFD
NUZGNDogUVRocmVhZFByaXZhdGU6OnN0YXJ0KHZvaWQqKSAocXRocmVhZF91bml4LmNwcDozMzEp
Cj09MjU2NDM9PSAgQWRkcmVzcyAweDExZjI2YzkwIGlzIDAgYnl0ZXMgaW5zaWRlIGEgYmxvY2sg
b2Ygc2l6ZSAxMjAgZnJlZSdkCj09MjU2NDM9PSAgICBhdCAweDRDMjc0QjE6IG9wZXJhdG9yIGRl
bGV0ZSh2b2lkKikgKHZnX3JlcGxhY2VfbWFsbG9jLmM6NDU3KQo9PTI1NjQzPT0gICAgYnkgMHg5
MUJFOTgwOiBRTXV0ZXg6On5RTXV0ZXgoKSAocW11dGV4LmNwcDoxMzMpCj09MjU2NDM9PSAgICBi
eSAweDY4RkFGNTI6IFdURjo6TXV0ZXg6On5NdXRleCgpIChUaHJlYWRpbmdRdC5jcHA6MjMwKQo9
PTI1NjQzPT0gICAgYnkgMHhBMEExMjYxOiBleGl0IChleGl0LmM6NzgpCj09MjU2NDM9PSAgICBi
eSAweEEwODZDNTM6IChiZWxvdyBtYWluKSAobGliYy1zdGFydC5jOjI1OCkKPT0yNTY0Mz09IAo9
PTI1NjQzPT0gSW52YWxpZCByZWFkIG9mIHNpemUgOAo9PTI1NjQzPT0gICAgYXQgMHg5MUJFQjc0
OiBRTXV0ZXg6OmxvY2soKSAocW11dGV4LmNwcDoxODUpCj09MjU2NDM9PSAgICBieSAweDY4RkFG
N0M6IFdURjo6TXV0ZXg6OmxvY2soKSAoVGhyZWFkaW5nUXQuY3BwOjIzNSkKPT0yNTY0Mz09ICAg
IGJ5IDB4NTczMThGRDogV1RGOjpMb2NrZXI8V1RGOjpNdXRleD46OkxvY2tlcihXVEY6Ok11dGV4
JikgKExvY2tlci5oOjM4KQo9PTI1NjQzPT0gICAgYnkgMHg2OEZBOUI2OiBXVEY6OmNsZWFyVGhy
ZWFkRm9ySWRlbnRpZmllcih1bnNpZ25lZCBpbnQpIChUaHJlYWRpbmdRdC5jcHA6MTI4KQo9PTI1
NjQzPT0gICAgYnkgMHg2OEZBRDg0OiBXVEY6OndhaXRGb3JUaHJlYWRDb21wbGV0aW9uKHVuc2ln
bmVkIGludCwgdm9pZCoqKSAoVGhyZWFkaW5nUXQuY3BwOjE5NykKPT0yNTY0Mz09ICAgIGJ5IDB4
NjkyNTdBNDogSlNDOjpIZWFwOjp+SGVhcCgpIChIZWFwLmNwcDozNDIpCj09MjU2NDM9PSAgICBi
eSAweDY5OTRFQ0I6IEpTQzo6SlNHbG9iYWxEYXRhOjp+SlNHbG9iYWxEYXRhKCkgKEpTR2xvYmFs
RGF0YS5jcHA6MzU5KQo9PTI1NjQzPT0gICAgYnkgMHg1QzY4RkEyOiBXVEY6OlJlZkNvdW50ZWQ8
SlNDOjpKU0dsb2JhbERhdGE+OjpkZXJlZigpIChSZWZDb3VudGVkLmg6MTgzKQo9PTI1NjQzPT0g
ICAgYnkgMHg1QzY4RTJGOiB2b2lkIFdURjo6ZGVyZWZJZk5vdE51bGw8SlNDOjpKU0dsb2JhbERh
dGE+KEpTQzo6SlNHbG9iYWxEYXRhKikgKFBhc3NSZWZQdHIuaDo1OSkKPT0yNTY0Mz09ICAgIGJ5
IDB4NjUwRkU3ODogV1RGOjpSZWZQdHI8SlNDOjpKU0dsb2JhbERhdGE+Ojp+UmVmUHRyKCkgKFJl
ZlB0ci5oOjU4KQo9PTI1NjQzPT0gICAgYnkgMHg2NTBFREVEOiBXZWJDb3JlOjpXb3JrZXJTY3Jp
cHRDb250cm9sbGVyOjp+V29ya2VyU2NyaXB0Q29udHJvbGxlcigpIChXb3JrZXJTY3JpcHRDb250
cm9sbGVyLmNwcDo3MCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUxQTg3Qzogdm9pZCBXVEY6OmRlbGV0
ZU93bmVkUHRyPFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI+KFdlYkNvcmU6Oldvcmtl
clNjcmlwdENvbnRyb2xsZXIqKSAoT3duUHRyQ29tbW9uLmg6NTMpCj09MjU2NDM9PSAgICBieSAw
eDY1MjY0QTM6IFdURjo6T3duUHRyPFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI+Ojpj
bGVhcigpIChPd25QdHIuaDo5OSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNTFCMTogV2ViQ29yZTo6
V29ya2VyQ29udGV4dDo6Y2xlYXJTY3JpcHQoKSAoV29ya2VyQ29udGV4dC5oOjg0KQo9PTI1NjQz
PT0gICAgYnkgMHg2NTI2MDg3OiBXZWJDb3JlOjpXb3JrZXJUaHJlYWRTaHV0ZG93bkZpbmlzaFRh
c2s6OnBlcmZvcm1UYXNrKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2Vy
VGhyZWFkLmNwcDoxODgpCj09MjU2NDM9PSAgICBieSAweDY1MjJENDk6IFdlYkNvcmU6Oldvcmtl
clJ1bkxvb3A6OlRhc2s6OnBlcmZvcm1UYXNrKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqKSAoV29ya2VyUnVuTG9vcC5jcHA6MjAwKQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyQTA4OiBX
ZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW5Jbk1vZGUoV2ViQ29yZTo6V29ya2VyQ29udGV4dCos
IFdlYkNvcmU6Ok1vZGVQcmVkaWNhdGUgY29uc3QmKSAoV29ya2VyUnVuTG9vcC5jcHA6MTY0KQo9
PTI1NjQzPT0gICAgYnkgMHg2NTIyNzAwOiBXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW4oV2Vi
Q29yZTo6V29ya2VyQ29udGV4dCopIChXb3JrZXJSdW5Mb29wLmNwcDoxMzUpCj09MjU2NDM9PSAg
ICBieSAweDY1MjVGODY6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKFdv
cmtlclRocmVhZC5jcHA6MTcwKQo9PTI1NjQzPT0gICAgYnkgMHg2N0ZEQ0VFOiBXZWJDb3JlOjpE
ZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OnJ1bkV2ZW50TG9vcCgpIChEZWRpY2F0ZWRXb3JrZXJUaHJl
YWQuY3BwOjY2KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1RTgwOiBXZWJDb3JlOjpXb3JrZXJUaHJl
YWQ6OndvcmtlclRocmVhZCgpIChXb3JrZXJUaHJlYWQuY3BwOjE0OCkKPT0yNTY0Mz09ICAgIGJ5
IDB4NjUyNUMzMzogV2ViQ29yZTo6V29ya2VyVGhyZWFkOjp3b3JrZXJUaHJlYWRTdGFydCh2b2lk
KikgKFdvcmtlclRocmVhZC5jcHA6MTI0KQo9PTI1NjQzPT0gICAgYnkgMHg2OTAxN0JDOiBXVEY6
OnRocmVhZEVudHJ5UG9pbnQodm9pZCopIChUaHJlYWRpbmcuY3BwOjY3KQo9PTI1NjQzPT0gICAg
YnkgMHg2OEZBNjE4OiBXVEY6OlRocmVhZFByaXZhdGU6OnJ1bigpIChUaHJlYWRpbmdRdC5jcHA6
NjcpCj09MjU2NDM9PSAgICBieSAweDkxQzVGRjQ6IFFUaHJlYWRQcml2YXRlOjpzdGFydCh2b2lk
KikgKHF0aHJlYWRfdW5peC5jcHA6MzMxKQo9PTI1NjQzPT0gIEFkZHJlc3MgMHgxMWYyNmM0MCBp
cyAwIGJ5dGVzIGluc2lkZSBhIGJsb2NrIG9mIHNpemUgOCBmcmVlJ2QKPT0yNTY0Mz09ICAgIGF0
IDB4NEMyNzRCMTogb3BlcmF0b3IgZGVsZXRlKHZvaWQqKSAodmdfcmVwbGFjZV9tYWxsb2MuYzo0
NTcpCj09MjU2NDM9PSAgICBieSAweDY4RkFGNUE6IFdURjo6TXV0ZXg6On5NdXRleCgpIChUaHJl
YWRpbmdRdC5jcHA6MjMwKQo9PTI1NjQzPT0gICAgYnkgMHhBMEExMjYxOiBleGl0IChleGl0LmM6
NzgpCj09MjU2NDM9PSAgICBieSAweEEwODZDNTM6IChiZWxvdyBtYWluKSAobGliYy1zdGFydC5j
OjI1OCkKPT0yNTY0Mz09IAo9PTI1NjQzPT0gSW52YWxpZCByZWFkIG9mIHNpemUgNAo9PTI1NjQz
PT0gICAgYXQgMHg5MTlCQkI3OiBRQmFzaWNBdG9taWNJbnQ6Om9wZXJhdG9yPT0oaW50KSBjb25z
dCAocWJhc2ljYXRvbWljLmg6NzApCj09MjU2NDM9PSAgICBieSAweDkxQkVCODc6IFFNdXRleDo6
bG9jaygpIChxbXV0ZXguY3BwOjE4NSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQUY3QzogV1RGOjpN
dXRleDo6bG9jaygpIChUaHJlYWRpbmdRdC5jcHA6MjM1KQo9PTI1NjQzPT0gICAgYnkgMHg1NzMx
OEZEOiBXVEY6OkxvY2tlcjxXVEY6Ok11dGV4Pjo6TG9ja2VyKFdURjo6TXV0ZXgmKSAoTG9ja2Vy
Lmg6MzgpCj09MjU2NDM9PSAgICBieSAweDY4RkE5QjY6IFdURjo6Y2xlYXJUaHJlYWRGb3JJZGVu
dGlmaWVyKHVuc2lnbmVkIGludCkgKFRocmVhZGluZ1F0LmNwcDoxMjgpCj09MjU2NDM9PSAgICBi
eSAweDY4RkFEODQ6IFdURjo6d2FpdEZvclRocmVhZENvbXBsZXRpb24odW5zaWduZWQgaW50LCB2
b2lkKiopIChUaHJlYWRpbmdRdC5jcHA6MTk3KQo9PTI1NjQzPT0gICAgYnkgMHg2OTI1N0E0OiBK
U0M6OkhlYXA6On5IZWFwKCkgKEhlYXAuY3BwOjM0MikKPT0yNTY0Mz09ICAgIGJ5IDB4Njk5NEVD
QjogSlNDOjpKU0dsb2JhbERhdGE6On5KU0dsb2JhbERhdGEoKSAoSlNHbG9iYWxEYXRhLmNwcDoz
NTkpCj09MjU2NDM9PSAgICBieSAweDVDNjhGQTI6IFdURjo6UmVmQ291bnRlZDxKU0M6OkpTR2xv
YmFsRGF0YT46OmRlcmVmKCkgKFJlZkNvdW50ZWQuaDoxODMpCj09MjU2NDM9PSAgICBieSAweDVD
NjhFMkY6IHZvaWQgV1RGOjpkZXJlZklmTm90TnVsbDxKU0M6OkpTR2xvYmFsRGF0YT4oSlNDOjpK
U0dsb2JhbERhdGEqKSAoUGFzc1JlZlB0ci5oOjU5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTBGRTc4
OiBXVEY6OlJlZlB0cjxKU0M6OkpTR2xvYmFsRGF0YT46On5SZWZQdHIoKSAoUmVmUHRyLmg6NTgp
Cj09MjU2NDM9PSAgICBieSAweDY1MEVERUQ6IFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xs
ZXI6On5Xb3JrZXJTY3JpcHRDb250cm9sbGVyKCkgKFdvcmtlclNjcmlwdENvbnRyb2xsZXIuY3Bw
OjcwKQo9PTI1NjQzPT0gICAgYnkgMHg2NTFBODdDOiB2b2lkIFdURjo6ZGVsZXRlT3duZWRQdHI8
V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj4oV2ViQ29yZTo6V29ya2VyU2NyaXB0Q29u
dHJvbGxlciopIChPd25QdHJDb21tb24uaDo1MykKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNjRBMzog
V1RGOjpPd25QdHI8V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj46OmNsZWFyKCkgKE93
blB0ci5oOjk5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1MUIxOiBXZWJDb3JlOjpXb3JrZXJDb250
ZXh0OjpjbGVhclNjcmlwdCgpIChXb3JrZXJDb250ZXh0Lmg6ODQpCj09MjU2NDM9PSAgICBieSAw
eDY1MjYwODc6IFdlYkNvcmU6OldvcmtlclRocmVhZFNodXRkb3duRmluaXNoVGFzazo6cGVyZm9y
bVRhc2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJUaHJlYWQuY3Bw
OjE4OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyMkQ0OTogV2ViQ29yZTo6V29ya2VyUnVuTG9vcDo6
VGFzazo6cGVyZm9ybVRhc2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3Jr
ZXJSdW5Mb29wLmNwcDoyMDApCj09MjU2NDM9PSAgICBieSAweDY1MjJBMDg6IFdlYkNvcmU6Oldv
cmtlclJ1bkxvb3A6OnJ1bkluTW9kZShXZWJDb3JlOjpXb3JrZXJDb250ZXh0KiwgV2ViQ29yZTo6
TW9kZVByZWRpY2F0ZSBjb25zdCYpIChXb3JrZXJSdW5Mb29wLmNwcDoxNjQpCj09MjU2NDM9PSAg
ICBieSAweDY1MjI3MDA6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1bihXZWJDb3JlOjpXb3Jr
ZXJDb250ZXh0KikgKFdvcmtlclJ1bkxvb3AuY3BwOjEzNSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUy
NUY4NjogV2ViQ29yZTo6V29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKSAoV29ya2VyVGhyZWFk
LmNwcDoxNzApCj09MjU2NDM9PSAgICBieSAweDY3RkRDRUU6IFdlYkNvcmU6OkRlZGljYXRlZFdv
cmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKERlZGljYXRlZFdvcmtlclRocmVhZC5jcHA6NjYp
Cj09MjU2NDM9PSAgICBieSAweDY1MjVFODA6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2Vy
VGhyZWFkKCkgKFdvcmtlclRocmVhZC5jcHA6MTQ4KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1QzMz
OiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZFN0YXJ0KHZvaWQqKSAoV29ya2Vy
VGhyZWFkLmNwcDoxMjQpCj09MjU2NDM9PSAgICBieSAweDY5MDE3QkM6IFdURjo6dGhyZWFkRW50
cnlQb2ludCh2b2lkKikgKFRocmVhZGluZy5jcHA6NjcpCj09MjU2NDM9PSAgICBieSAweDY4RkE2
MTg6IFdURjo6VGhyZWFkUHJpdmF0ZTo6cnVuKCkgKFRocmVhZGluZ1F0LmNwcDo2NykKPT0yNTY0
Mz09ICBBZGRyZXNzIDB4MTFmMjZjOTQgaXMgNCBieXRlcyBpbnNpZGUgYSBibG9jayBvZiBzaXpl
IDEyMCBmcmVlJ2QKPT0yNTY0Mz09ICAgIGF0IDB4NEMyNzRCMTogb3BlcmF0b3IgZGVsZXRlKHZv
aWQqKSAodmdfcmVwbGFjZV9tYWxsb2MuYzo0NTcpCj09MjU2NDM9PSAgICBieSAweDkxQkU5ODA6
IFFNdXRleDo6flFNdXRleCgpIChxbXV0ZXguY3BwOjEzMykKPT0yNTY0Mz09ICAgIGJ5IDB4NjhG
QUY1MjogV1RGOjpNdXRleDo6fk11dGV4KCkgKFRocmVhZGluZ1F0LmNwcDoyMzApCj09MjU2NDM9
PSAgICBieSAweEEwQTEyNjE6IGV4aXQgKGV4aXQuYzo3OCkKPT0yNTY0Mz09ICAgIGJ5IDB4QTA4
NkM1MzogKGJlbG93IG1haW4pIChsaWJjLXN0YXJ0LmM6MjU4KQo9PTI1NjQzPT0gCj09MjU2NDM9
PSBJbnZhbGlkIHJlYWQgb2Ygc2l6ZSA4Cj09MjU2NDM9PSAgICBhdCAweDkxQkVCOTA6IFFNdXRl
eDo6bG9jaygpIChxbXV0ZXguY3BwOjE4NSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQUY3QzogV1RG
OjpNdXRleDo6bG9jaygpIChUaHJlYWRpbmdRdC5jcHA6MjM1KQo9PTI1NjQzPT0gICAgYnkgMHg1
NzMxOEZEOiBXVEY6OkxvY2tlcjxXVEY6Ok11dGV4Pjo6TG9ja2VyKFdURjo6TXV0ZXgmKSAoTG9j
a2VyLmg6MzgpCj09MjU2NDM9PSAgICBieSAweDY4RkE5QjY6IFdURjo6Y2xlYXJUaHJlYWRGb3JJ
ZGVudGlmaWVyKHVuc2lnbmVkIGludCkgKFRocmVhZGluZ1F0LmNwcDoxMjgpCj09MjU2NDM9PSAg
ICBieSAweDY4RkFEODQ6IFdURjo6d2FpdEZvclRocmVhZENvbXBsZXRpb24odW5zaWduZWQgaW50
LCB2b2lkKiopIChUaHJlYWRpbmdRdC5jcHA6MTk3KQo9PTI1NjQzPT0gICAgYnkgMHg2OTI1N0E0
OiBKU0M6OkhlYXA6On5IZWFwKCkgKEhlYXAuY3BwOjM0MikKPT0yNTY0Mz09ICAgIGJ5IDB4Njk5
NEVDQjogSlNDOjpKU0dsb2JhbERhdGE6On5KU0dsb2JhbERhdGEoKSAoSlNHbG9iYWxEYXRhLmNw
cDozNTkpCj09MjU2NDM9PSAgICBieSAweDVDNjhGQTI6IFdURjo6UmVmQ291bnRlZDxKU0M6OkpT
R2xvYmFsRGF0YT46OmRlcmVmKCkgKFJlZkNvdW50ZWQuaDoxODMpCj09MjU2NDM9PSAgICBieSAw
eDVDNjhFMkY6IHZvaWQgV1RGOjpkZXJlZklmTm90TnVsbDxKU0M6OkpTR2xvYmFsRGF0YT4oSlND
OjpKU0dsb2JhbERhdGEqKSAoUGFzc1JlZlB0ci5oOjU5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTBG
RTc4OiBXVEY6OlJlZlB0cjxKU0M6OkpTR2xvYmFsRGF0YT46On5SZWZQdHIoKSAoUmVmUHRyLmg6
NTgpCj09MjU2NDM9PSAgICBieSAweDY1MEVERUQ6IFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRy
b2xsZXI6On5Xb3JrZXJTY3JpcHRDb250cm9sbGVyKCkgKFdvcmtlclNjcmlwdENvbnRyb2xsZXIu
Y3BwOjcwKQo9PTI1NjQzPT0gICAgYnkgMHg2NTFBODdDOiB2b2lkIFdURjo6ZGVsZXRlT3duZWRQ
dHI8V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj4oV2ViQ29yZTo6V29ya2VyU2NyaXB0
Q29udHJvbGxlciopIChPd25QdHJDb21tb24uaDo1MykKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNjRB
MzogV1RGOjpPd25QdHI8V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj46OmNsZWFyKCkg
KE93blB0ci5oOjk5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1MUIxOiBXZWJDb3JlOjpXb3JrZXJD
b250ZXh0OjpjbGVhclNjcmlwdCgpIChXb3JrZXJDb250ZXh0Lmg6ODQpCj09MjU2NDM9PSAgICBi
eSAweDY1MjYwODc6IFdlYkNvcmU6OldvcmtlclRocmVhZFNodXRkb3duRmluaXNoVGFzazo6cGVy
Zm9ybVRhc2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJUaHJlYWQu
Y3BwOjE4OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyMkQ0OTogV2ViQ29yZTo6V29ya2VyUnVuTG9v
cDo6VGFzazo6cGVyZm9ybVRhc2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChX
b3JrZXJSdW5Mb29wLmNwcDoyMDApCj09MjU2NDM9PSAgICBieSAweDY1MjJBMDg6IFdlYkNvcmU6
OldvcmtlclJ1bkxvb3A6OnJ1bkluTW9kZShXZWJDb3JlOjpXb3JrZXJDb250ZXh0KiwgV2ViQ29y
ZTo6TW9kZVByZWRpY2F0ZSBjb25zdCYpIChXb3JrZXJSdW5Mb29wLmNwcDoxNjQpCj09MjU2NDM9
PSAgICBieSAweDY1MjI3MDA6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1bihXZWJDb3JlOjpX
b3JrZXJDb250ZXh0KikgKFdvcmtlclJ1bkxvb3AuY3BwOjEzNSkKPT0yNTY0Mz09ICAgIGJ5IDB4
NjUyNUY4NjogV2ViQ29yZTo6V29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKSAoV29ya2VyVGhy
ZWFkLmNwcDoxNzApCj09MjU2NDM9PSAgICBieSAweDY3RkRDRUU6IFdlYkNvcmU6OkRlZGljYXRl
ZFdvcmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKERlZGljYXRlZFdvcmtlclRocmVhZC5jcHA6
NjYpCj09MjU2NDM9PSAgICBieSAweDY1MjVFODA6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29y
a2VyVGhyZWFkKCkgKFdvcmtlclRocmVhZC5jcHA6MTQ4KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1
QzMzOiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZFN0YXJ0KHZvaWQqKSAoV29y
a2VyVGhyZWFkLmNwcDoxMjQpCj09MjU2NDM9PSAgICBieSAweDY5MDE3QkM6IFdURjo6dGhyZWFk
RW50cnlQb2ludCh2b2lkKikgKFRocmVhZGluZy5jcHA6NjcpCj09MjU2NDM9PSAgICBieSAweDY4
RkE2MTg6IFdURjo6VGhyZWFkUHJpdmF0ZTo6cnVuKCkgKFRocmVhZGluZ1F0LmNwcDo2NykKPT0y
NTY0Mz09ICAgIGJ5IDB4OTFDNUZGNDogUVRocmVhZFByaXZhdGU6OnN0YXJ0KHZvaWQqKSAocXRo
cmVhZF91bml4LmNwcDozMzEpCj09MjU2NDM9PSAgQWRkcmVzcyAweDExZjI2YzQwIGlzIDAgYnl0
ZXMgaW5zaWRlIGEgYmxvY2sgb2Ygc2l6ZSA4IGZyZWUnZAo9PTI1NjQzPT0gICAgYXQgMHg0QzI3
NEIxOiBvcGVyYXRvciBkZWxldGUodm9pZCopICh2Z19yZXBsYWNlX21hbGxvYy5jOjQ1NykKPT0y
NTY0Mz09ICAgIGJ5IDB4NjhGQUY1QTogV1RGOjpNdXRleDo6fk11dGV4KCkgKFRocmVhZGluZ1F0
LmNwcDoyMzApCj09MjU2NDM9PSAgICBieSAweEEwQTEyNjE6IGV4aXQgKGV4aXQuYzo3OCkKPT0y
NTY0Mz09ICAgIGJ5IDB4QTA4NkM1MzogKGJlbG93IG1haW4pIChsaWJjLXN0YXJ0LmM6MjU4KQo9
PTI1NjQzPT0gCj09MjU2NDM9PSBJbnZhbGlkIHJlYWQgb2Ygc2l6ZSA0Cj09MjU2NDM9PSAgICBh
dCAweDg0MUExMUM6IFFCYXNpY0F0b21pY0ludDo6dGVzdEFuZFNldE9yZGVyZWQoaW50LCBpbnQp
IChxYXRvbWljX3g4Nl82NC5oOjE0NSkKPT0yNTY0Mz09ICAgIGJ5IDB4OTFCRjI4OTogUUJhc2lj
QXRvbWljSW50Ojp0ZXN0QW5kU2V0QWNxdWlyZShpbnQsIGludCkgKHFhdG9taWNfeDg2XzY0Lmg6
MjY3KQo9PTI1NjQzPT0gICAgYnkgMHg5MUJFQkE4OiBRTXV0ZXg6OmxvY2soKSAocW11dGV4LmNw
cDoxODUpCj09MjU2NDM9PSAgICBieSAweDY4RkFGN0M6IFdURjo6TXV0ZXg6OmxvY2soKSAoVGhy
ZWFkaW5nUXQuY3BwOjIzNSkKPT0yNTY0Mz09ICAgIGJ5IDB4NTczMThGRDogV1RGOjpMb2NrZXI8
V1RGOjpNdXRleD46OkxvY2tlcihXVEY6Ok11dGV4JikgKExvY2tlci5oOjM4KQo9PTI1NjQzPT0g
ICAgYnkgMHg2OEZBOUI2OiBXVEY6OmNsZWFyVGhyZWFkRm9ySWRlbnRpZmllcih1bnNpZ25lZCBp
bnQpIChUaHJlYWRpbmdRdC5jcHA6MTI4KQo9PTI1NjQzPT0gICAgYnkgMHg2OEZBRDg0OiBXVEY6
OndhaXRGb3JUaHJlYWRDb21wbGV0aW9uKHVuc2lnbmVkIGludCwgdm9pZCoqKSAoVGhyZWFkaW5n
UXQuY3BwOjE5NykKPT0yNTY0Mz09ICAgIGJ5IDB4NjkyNTdBNDogSlNDOjpIZWFwOjp+SGVhcCgp
IChIZWFwLmNwcDozNDIpCj09MjU2NDM9PSAgICBieSAweDY5OTRFQ0I6IEpTQzo6SlNHbG9iYWxE
YXRhOjp+SlNHbG9iYWxEYXRhKCkgKEpTR2xvYmFsRGF0YS5jcHA6MzU5KQo9PTI1NjQzPT0gICAg
YnkgMHg1QzY4RkEyOiBXVEY6OlJlZkNvdW50ZWQ8SlNDOjpKU0dsb2JhbERhdGE+OjpkZXJlZigp
IChSZWZDb3VudGVkLmg6MTgzKQo9PTI1NjQzPT0gICAgYnkgMHg1QzY4RTJGOiB2b2lkIFdURjo6
ZGVyZWZJZk5vdE51bGw8SlNDOjpKU0dsb2JhbERhdGE+KEpTQzo6SlNHbG9iYWxEYXRhKikgKFBh
c3NSZWZQdHIuaDo1OSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUwRkU3ODogV1RGOjpSZWZQdHI8SlND
OjpKU0dsb2JhbERhdGE+Ojp+UmVmUHRyKCkgKFJlZlB0ci5oOjU4KQo9PTI1NjQzPT0gICAgYnkg
MHg2NTBFREVEOiBXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyOjp+V29ya2VyU2NyaXB0
Q29udHJvbGxlcigpIChXb3JrZXJTY3JpcHRDb250cm9sbGVyLmNwcDo3MCkKPT0yNTY0Mz09ICAg
IGJ5IDB4NjUxQTg3Qzogdm9pZCBXVEY6OmRlbGV0ZU93bmVkUHRyPFdlYkNvcmU6OldvcmtlclNj
cmlwdENvbnRyb2xsZXI+KFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXIqKSAoT3duUHRy
Q29tbW9uLmg6NTMpCj09MjU2NDM9PSAgICBieSAweDY1MjY0QTM6IFdURjo6T3duUHRyPFdlYkNv
cmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI+OjpjbGVhcigpIChPd25QdHIuaDo5OSkKPT0yNTY0
Mz09ICAgIGJ5IDB4NjUyNTFCMTogV2ViQ29yZTo6V29ya2VyQ29udGV4dDo6Y2xlYXJTY3JpcHQo
KSAoV29ya2VyQ29udGV4dC5oOjg0KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI2MDg3OiBXZWJDb3Jl
OjpXb3JrZXJUaHJlYWRTaHV0ZG93bkZpbmlzaFRhc2s6OnBlcmZvcm1UYXNrKFdlYkNvcmU6OlNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2VyVGhyZWFkLmNwcDoxODgpCj09MjU2NDM9PSAg
ICBieSAweDY1MjJENDk6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OlRhc2s6OnBlcmZvcm1UYXNr
KFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2VyUnVuTG9vcC5jcHA6MjAw
KQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyQTA4OiBXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW5J
bk1vZGUoV2ViQ29yZTo6V29ya2VyQ29udGV4dCosIFdlYkNvcmU6Ok1vZGVQcmVkaWNhdGUgY29u
c3QmKSAoV29ya2VyUnVuTG9vcC5jcHA6MTY0KQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyNzAwOiBX
ZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW4oV2ViQ29yZTo6V29ya2VyQ29udGV4dCopIChXb3Jr
ZXJSdW5Mb29wLmNwcDoxMzUpCj09MjU2NDM9PSAgICBieSAweDY1MjVGODY6IFdlYkNvcmU6Oldv
cmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKFdvcmtlclRocmVhZC5jcHA6MTcwKQo9PTI1NjQz
PT0gICAgYnkgMHg2N0ZEQ0VFOiBXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OnJ1bkV2
ZW50TG9vcCgpIChEZWRpY2F0ZWRXb3JrZXJUaHJlYWQuY3BwOjY2KQo9PTI1NjQzPT0gICAgYnkg
MHg2NTI1RTgwOiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZCgpIChXb3JrZXJU
aHJlYWQuY3BwOjE0OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUMzMzogV2ViQ29yZTo6V29ya2Vy
VGhyZWFkOjp3b3JrZXJUaHJlYWRTdGFydCh2b2lkKikgKFdvcmtlclRocmVhZC5jcHA6MTI0KQo9
PTI1NjQzPT0gICAgYnkgMHg2OTAxN0JDOiBXVEY6OnRocmVhZEVudHJ5UG9pbnQodm9pZCopIChU
aHJlYWRpbmcuY3BwOjY3KQo9PTI1NjQzPT0gIEFkZHJlc3MgMHgxMWYyNmM5NCBpcyA0IGJ5dGVz
IGluc2lkZSBhIGJsb2NrIG9mIHNpemUgMTIwIGZyZWUnZAo9PTI1NjQzPT0gICAgYXQgMHg0QzI3
NEIxOiBvcGVyYXRvciBkZWxldGUodm9pZCopICh2Z19yZXBsYWNlX21hbGxvYy5jOjQ1NykKPT0y
NTY0Mz09ICAgIGJ5IDB4OTFCRTk4MDogUU11dGV4Ojp+UU11dGV4KCkgKHFtdXRleC5jcHA6MTMz
KQo9PTI1NjQzPT0gICAgYnkgMHg2OEZBRjUyOiBXVEY6Ok11dGV4Ojp+TXV0ZXgoKSAoVGhyZWFk
aW5nUXQuY3BwOjIzMCkKPT0yNTY0Mz09ICAgIGJ5IDB4QTBBMTI2MTogZXhpdCAoZXhpdC5jOjc4
KQo9PTI1NjQzPT0gICAgYnkgMHhBMDg2QzUzOiAoYmVsb3cgbWFpbikgKGxpYmMtc3RhcnQuYzoy
NTgpCj09MjU2NDM9PSAKPT0yNTY0Mz09IEludmFsaWQgcmVhZCBvZiBzaXplIDgKPT0yNTY0Mz09
ICAgIGF0IDB4OTFCRURCNTogUU11dGV4Ojpsb2NrKCkgKHFtdXRleC5jcHA6MjI3KQo9PTI1NjQz
PT0gICAgYnkgMHg2OEZBRjdDOiBXVEY6Ok11dGV4Ojpsb2NrKCkgKFRocmVhZGluZ1F0LmNwcDoy
MzUpCj09MjU2NDM9PSAgICBieSAweDU3MzE4RkQ6IFdURjo6TG9ja2VyPFdURjo6TXV0ZXg+OjpM
b2NrZXIoV1RGOjpNdXRleCYpIChMb2NrZXIuaDozOCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQTlC
NjogV1RGOjpjbGVhclRocmVhZEZvcklkZW50aWZpZXIodW5zaWduZWQgaW50KSAoVGhyZWFkaW5n
UXQuY3BwOjEyOCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQUQ4NDogV1RGOjp3YWl0Rm9yVGhyZWFk
Q29tcGxldGlvbih1bnNpZ25lZCBpbnQsIHZvaWQqKikgKFRocmVhZGluZ1F0LmNwcDoxOTcpCj09
MjU2NDM9PSAgICBieSAweDY5MjU3QTQ6IEpTQzo6SGVhcDo6fkhlYXAoKSAoSGVhcC5jcHA6MzQy
KQo9PTI1NjQzPT0gICAgYnkgMHg2OTk0RUNCOiBKU0M6OkpTR2xvYmFsRGF0YTo6fkpTR2xvYmFs
RGF0YSgpIChKU0dsb2JhbERhdGEuY3BwOjM1OSkKPT0yNTY0Mz09ICAgIGJ5IDB4NUM2OEZBMjog
V1RGOjpSZWZDb3VudGVkPEpTQzo6SlNHbG9iYWxEYXRhPjo6ZGVyZWYoKSAoUmVmQ291bnRlZC5o
OjE4MykKPT0yNTY0Mz09ICAgIGJ5IDB4NUM2OEUyRjogdm9pZCBXVEY6OmRlcmVmSWZOb3ROdWxs
PEpTQzo6SlNHbG9iYWxEYXRhPihKU0M6OkpTR2xvYmFsRGF0YSopIChQYXNzUmVmUHRyLmg6NTkp
Cj09MjU2NDM9PSAgICBieSAweDY1MEZFNzg6IFdURjo6UmVmUHRyPEpTQzo6SlNHbG9iYWxEYXRh
Pjo6flJlZlB0cigpIChSZWZQdHIuaDo1OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUwRURFRDogV2Vi
Q29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcjo6fldvcmtlclNjcmlwdENvbnRyb2xsZXIoKSAo
V29ya2VyU2NyaXB0Q29udHJvbGxlci5jcHA6NzApCj09MjU2NDM9PSAgICBieSAweDY1MUE4N0M6
IHZvaWQgV1RGOjpkZWxldGVPd25lZFB0cjxXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVy
PihXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyKikgKE93blB0ckNvbW1vbi5oOjUzKQo9
PTI1NjQzPT0gICAgYnkgMHg2NTI2NEEzOiBXVEY6Ok93blB0cjxXZWJDb3JlOjpXb3JrZXJTY3Jp
cHRDb250cm9sbGVyPjo6Y2xlYXIoKSAoT3duUHRyLmg6OTkpCj09MjU2NDM9PSAgICBieSAweDY1
MjUxQjE6IFdlYkNvcmU6OldvcmtlckNvbnRleHQ6OmNsZWFyU2NyaXB0KCkgKFdvcmtlckNvbnRl
eHQuaDo4NCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNjA4NzogV2ViQ29yZTo6V29ya2VyVGhyZWFk
U2h1dGRvd25GaW5pc2hUYXNrOjpwZXJmb3JtVGFzayhXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25D
b250ZXh0KikgKFdvcmtlclRocmVhZC5jcHA6MTg4KQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyRDQ5
OiBXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpUYXNrOjpwZXJmb3JtVGFzayhXZWJDb3JlOjpTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KikgKFdvcmtlclJ1bkxvb3AuY3BwOjIwMCkKPT0yNTY0Mz09ICAg
IGJ5IDB4NjUyMkEwODogV2ViQ29yZTo6V29ya2VyUnVuTG9vcDo6cnVuSW5Nb2RlKFdlYkNvcmU6
OldvcmtlckNvbnRleHQqLCBXZWJDb3JlOjpNb2RlUHJlZGljYXRlIGNvbnN0JikgKFdvcmtlclJ1
bkxvb3AuY3BwOjE2NCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyMjcwMDogV2ViQ29yZTo6V29ya2Vy
UnVuTG9vcDo6cnVuKFdlYkNvcmU6OldvcmtlckNvbnRleHQqKSAoV29ya2VyUnVuTG9vcC5jcHA6
MTM1KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1Rjg2OiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OnJ1
bkV2ZW50TG9vcCgpIChXb3JrZXJUaHJlYWQuY3BwOjE3MCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjdG
RENFRTogV2ViQ29yZTo6RGVkaWNhdGVkV29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKSAoRGVk
aWNhdGVkV29ya2VyVGhyZWFkLmNwcDo2NikKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUU4MDogV2Vi
Q29yZTo6V29ya2VyVGhyZWFkOjp3b3JrZXJUaHJlYWQoKSAoV29ya2VyVGhyZWFkLmNwcDoxNDgp
Cj09MjU2NDM9PSAgICBieSAweDY1MjVDMzM6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2Vy
VGhyZWFkU3RhcnQodm9pZCopIChXb3JrZXJUaHJlYWQuY3BwOjEyNCkKPT0yNTY0Mz09ICAgIGJ5
IDB4NjkwMTdCQzogV1RGOjp0aHJlYWRFbnRyeVBvaW50KHZvaWQqKSAoVGhyZWFkaW5nLmNwcDo2
NykKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQTYxODogV1RGOjpUaHJlYWRQcml2YXRlOjpydW4oKSAo
VGhyZWFkaW5nUXQuY3BwOjY3KQo9PTI1NjQzPT0gICAgYnkgMHg5MUM1RkY0OiBRVGhyZWFkUHJp
dmF0ZTo6c3RhcnQodm9pZCopIChxdGhyZWFkX3VuaXguY3BwOjMzMSkKPT0yNTY0Mz09ICBBZGRy
ZXNzIDB4MTFmMjZjNDAgaXMgMCBieXRlcyBpbnNpZGUgYSBibG9jayBvZiBzaXplIDggZnJlZSdk
Cj09MjU2NDM9PSAgICBhdCAweDRDMjc0QjE6IG9wZXJhdG9yIGRlbGV0ZSh2b2lkKikgKHZnX3Jl
cGxhY2VfbWFsbG9jLmM6NDU3KQo9PTI1NjQzPT0gICAgYnkgMHg2OEZBRjVBOiBXVEY6Ok11dGV4
Ojp+TXV0ZXgoKSAoVGhyZWFkaW5nUXQuY3BwOjIzMCkKPT0yNTY0Mz09ICAgIGJ5IDB4QTBBMTI2
MTogZXhpdCAoZXhpdC5jOjc4KQo9PTI1NjQzPT0gICAgYnkgMHhBMDg2QzUzOiAoYmVsb3cgbWFp
bikgKGxpYmMtc3RhcnQuYzoyNTgpCj09MjU2NDM9PSAKPT0yNTY0Mz09IEludmFsaWQgd3JpdGUg
b2Ygc2l6ZSA4Cj09MjU2NDM9PSAgICBhdCAweDkxQkVEQkM6IFFNdXRleDo6bG9jaygpIChxbXV0
ZXguY3BwOjIyNykKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQUY3QzogV1RGOjpNdXRleDo6bG9jaygp
IChUaHJlYWRpbmdRdC5jcHA6MjM1KQo9PTI1NjQzPT0gICAgYnkgMHg1NzMxOEZEOiBXVEY6Okxv
Y2tlcjxXVEY6Ok11dGV4Pjo6TG9ja2VyKFdURjo6TXV0ZXgmKSAoTG9ja2VyLmg6MzgpCj09MjU2
NDM9PSAgICBieSAweDY4RkE5QjY6IFdURjo6Y2xlYXJUaHJlYWRGb3JJZGVudGlmaWVyKHVuc2ln
bmVkIGludCkgKFRocmVhZGluZ1F0LmNwcDoxMjgpCj09MjU2NDM9PSAgICBieSAweDY4RkFEODQ6
IFdURjo6d2FpdEZvclRocmVhZENvbXBsZXRpb24odW5zaWduZWQgaW50LCB2b2lkKiopIChUaHJl
YWRpbmdRdC5jcHA6MTk3KQo9PTI1NjQzPT0gICAgYnkgMHg2OTI1N0E0OiBKU0M6OkhlYXA6On5I
ZWFwKCkgKEhlYXAuY3BwOjM0MikKPT0yNTY0Mz09ICAgIGJ5IDB4Njk5NEVDQjogSlNDOjpKU0ds
b2JhbERhdGE6On5KU0dsb2JhbERhdGEoKSAoSlNHbG9iYWxEYXRhLmNwcDozNTkpCj09MjU2NDM9
PSAgICBieSAweDVDNjhGQTI6IFdURjo6UmVmQ291bnRlZDxKU0M6OkpTR2xvYmFsRGF0YT46OmRl
cmVmKCkgKFJlZkNvdW50ZWQuaDoxODMpCj09MjU2NDM9PSAgICBieSAweDVDNjhFMkY6IHZvaWQg
V1RGOjpkZXJlZklmTm90TnVsbDxKU0M6OkpTR2xvYmFsRGF0YT4oSlNDOjpKU0dsb2JhbERhdGEq
KSAoUGFzc1JlZlB0ci5oOjU5KQo9PTI1NjQzPT0gICAgYnkgMHg2NTBGRTc4OiBXVEY6OlJlZlB0
cjxKU0M6OkpTR2xvYmFsRGF0YT46On5SZWZQdHIoKSAoUmVmUHRyLmg6NTgpCj09MjU2NDM9PSAg
ICBieSAweDY1MEVERUQ6IFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI6On5Xb3JrZXJT
Y3JpcHRDb250cm9sbGVyKCkgKFdvcmtlclNjcmlwdENvbnRyb2xsZXIuY3BwOjcwKQo9PTI1NjQz
PT0gICAgYnkgMHg2NTFBODdDOiB2b2lkIFdURjo6ZGVsZXRlT3duZWRQdHI8V2ViQ29yZTo6V29y
a2VyU2NyaXB0Q29udHJvbGxlcj4oV2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlciopIChP
d25QdHJDb21tb24uaDo1MykKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNjRBMzogV1RGOjpPd25QdHI8
V2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcj46OmNsZWFyKCkgKE93blB0ci5oOjk5KQo9
PTI1NjQzPT0gICAgYnkgMHg2NTI1MUIxOiBXZWJDb3JlOjpXb3JrZXJDb250ZXh0OjpjbGVhclNj
cmlwdCgpIChXb3JrZXJDb250ZXh0Lmg6ODQpCj09MjU2NDM9PSAgICBieSAweDY1MjYwODc6IFdl
YkNvcmU6OldvcmtlclRocmVhZFNodXRkb3duRmluaXNoVGFzazo6cGVyZm9ybVRhc2soV2ViQ29y
ZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJUaHJlYWQuY3BwOjE4OCkKPT0yNTY0
Mz09ICAgIGJ5IDB4NjUyMkQ0OTogV2ViQ29yZTo6V29ya2VyUnVuTG9vcDo6VGFzazo6cGVyZm9y
bVRhc2soV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIChXb3JrZXJSdW5Mb29wLmNw
cDoyMDApCj09MjU2NDM9PSAgICBieSAweDY1MjJBMDg6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6
OnJ1bkluTW9kZShXZWJDb3JlOjpXb3JrZXJDb250ZXh0KiwgV2ViQ29yZTo6TW9kZVByZWRpY2F0
ZSBjb25zdCYpIChXb3JrZXJSdW5Mb29wLmNwcDoxNjQpCj09MjU2NDM9PSAgICBieSAweDY1MjI3
MDA6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1bihXZWJDb3JlOjpXb3JrZXJDb250ZXh0Kikg
KFdvcmtlclJ1bkxvb3AuY3BwOjEzNSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUY4NjogV2ViQ29y
ZTo6V29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKSAoV29ya2VyVGhyZWFkLmNwcDoxNzApCj09
MjU2NDM9PSAgICBieSAweDY3RkRDRUU6IFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlclRocmVhZDo6
cnVuRXZlbnRMb29wKCkgKERlZGljYXRlZFdvcmtlclRocmVhZC5jcHA6NjYpCj09MjU2NDM9PSAg
ICBieSAweDY1MjVFODA6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkKCkgKFdv
cmtlclRocmVhZC5jcHA6MTQ4KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI1QzMzOiBXZWJDb3JlOjpX
b3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZFN0YXJ0KHZvaWQqKSAoV29ya2VyVGhyZWFkLmNwcDox
MjQpCj09MjU2NDM9PSAgICBieSAweDY5MDE3QkM6IFdURjo6dGhyZWFkRW50cnlQb2ludCh2b2lk
KikgKFRocmVhZGluZy5jcHA6NjcpCj09MjU2NDM9PSAgICBieSAweDY4RkE2MTg6IFdURjo6VGhy
ZWFkUHJpdmF0ZTo6cnVuKCkgKFRocmVhZGluZ1F0LmNwcDo2NykKPT0yNTY0Mz09ICAgIGJ5IDB4
OTFDNUZGNDogUVRocmVhZFByaXZhdGU6OnN0YXJ0KHZvaWQqKSAocXRocmVhZF91bml4LmNwcDoz
MzEpCj09MjU2NDM9PSAgQWRkcmVzcyAweDExZjI2Y2EwIGlzIDE2IGJ5dGVzIGluc2lkZSBhIGJs
b2NrIG9mIHNpemUgMTIwIGZyZWUnZAo9PTI1NjQzPT0gICAgYXQgMHg0QzI3NEIxOiBvcGVyYXRv
ciBkZWxldGUodm9pZCopICh2Z19yZXBsYWNlX21hbGxvYy5jOjQ1NykKPT0yNTY0Mz09ICAgIGJ5
IDB4OTFCRTk4MDogUU11dGV4Ojp+UU11dGV4KCkgKHFtdXRleC5jcHA6MTMzKQo9PTI1NjQzPT0g
ICAgYnkgMHg2OEZBRjUyOiBXVEY6Ok11dGV4Ojp+TXV0ZXgoKSAoVGhyZWFkaW5nUXQuY3BwOjIz
MCkKPT0yNTY0Mz09ICAgIGJ5IDB4QTBBMTI2MTogZXhpdCAoZXhpdC5jOjc4KQo9PTI1NjQzPT0g
ICAgYnkgMHhBMDg2QzUzOiAoYmVsb3cgbWFpbikgKGxpYmMtc3RhcnQuYzoyNTgpCj09MjU2NDM9
PSAKPT0yNTY0Mz09IEludmFsaWQgcmVhZCBvZiBzaXplIDQKPT0yNTY0Mz09ICAgIGF0IDB4NjhG
RDE0QzogV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9yPHVuc2lnbmVkIGludCwgc3RkOjpwYWly
PHVuc2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6OkludEhhc2g8dW5zaWduZWQgaW50PiA+Ojpl
cXVhbCh1bnNpZ25lZCBpbnQgY29uc3QmLCB1bnNpZ25lZCBpbnQgY29uc3QmKSAoSGFzaFRhYmxl
Lmg6MjgyKQo9PTI1NjQzPT0gICAgYnkgMHg2OEZDOEU2OiBzdGQ6OnBhaXI8dW5zaWduZWQgaW50
LCBRVGhyZWFkKj4qIFdURjo6SGFzaFRhYmxlPHVuc2lnbmVkIGludCwgc3RkOjpwYWlyPHVuc2ln
bmVkIGludCwgUVRocmVhZCo+LCBXVEY6OlBhaXJGaXJzdEV4dHJhY3RvcjxzdGQ6OnBhaXI8dW5z
aWduZWQgaW50LCBRVGhyZWFkKj4gPiwgV1RGOjpJbnRIYXNoPHVuc2lnbmVkIGludD4sIFdURjo6
UGFpckhhc2hUcmFpdHM8V1RGOjpIYXNoVHJhaXRzPHVuc2lnbmVkIGludD4sIFdURjo6SGFzaFRy
YWl0czxRVGhyZWFkKj4gPiwgV1RGOjpIYXNoVHJhaXRzPHVuc2lnbmVkIGludD4gPjo6bG9va3Vw
PHVuc2lnbmVkIGludCwgV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9yPHVuc2lnbmVkIGludCwg
c3RkOjpwYWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6OkludEhhc2g8dW5zaWduZWQg
aW50PiA+ID4odW5zaWduZWQgaW50IGNvbnN0JikgKEhhc2hUYWJsZS5oOjUwMSkKPT0yNTY0Mz09
ICAgIGJ5IDB4NjhGQzc1QjogYm9vbCBXVEY6Okhhc2hUYWJsZTx1bnNpZ25lZCBpbnQsIHN0ZDo6
cGFpcjx1bnNpZ25lZCBpbnQsIFFUaHJlYWQqPiwgV1RGOjpQYWlyRmlyc3RFeHRyYWN0b3I8c3Rk
OjpwYWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+ID4sIFdURjo6SW50SGFzaDx1bnNpZ25lZCBp
bnQ+LCBXVEY6OlBhaXJIYXNoVHJhaXRzPFdURjo6SGFzaFRyYWl0czx1bnNpZ25lZCBpbnQ+LCBX
VEY6Okhhc2hUcmFpdHM8UVRocmVhZCo+ID4sIFdURjo6SGFzaFRyYWl0czx1bnNpZ25lZCBpbnQ+
ID46OmNvbnRhaW5zPHVuc2lnbmVkIGludCwgV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9yPHVu
c2lnbmVkIGludCwgc3RkOjpwYWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6OkludEhh
c2g8dW5zaWduZWQgaW50PiA+ID4odW5zaWduZWQgaW50IGNvbnN0JikgY29uc3QgKEhhc2hUYWJs
ZS5oOjgwNSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQkY0MjogV1RGOjpIYXNoVGFibGU8dW5zaWdu
ZWQgaW50LCBzdGQ6OnBhaXI8dW5zaWduZWQgaW50LCBRVGhyZWFkKj4sIFdURjo6UGFpckZpcnN0
RXh0cmFjdG9yPHN0ZDo6cGFpcjx1bnNpZ25lZCBpbnQsIFFUaHJlYWQqPiA+LCBXVEY6OkludEhh
c2g8dW5zaWduZWQgaW50PiwgV1RGOjpQYWlySGFzaFRyYWl0czxXVEY6Okhhc2hUcmFpdHM8dW5z
aWduZWQgaW50PiwgV1RGOjpIYXNoVHJhaXRzPFFUaHJlYWQqPiA+LCBXVEY6Okhhc2hUcmFpdHM8
dW5zaWduZWQgaW50PiA+Ojpjb250YWlucyh1bnNpZ25lZCBpbnQgY29uc3QmKSBjb25zdCAoSGFz
aFRhYmxlLmg6MzI5KQo9PTI1NjQzPT0gICAgYnkgMHg2OEZCODI0OiBXVEY6Okhhc2hNYXA8dW5z
aWduZWQgaW50LCBRVGhyZWFkKiwgV1RGOjpJbnRIYXNoPHVuc2lnbmVkIGludD4sIFdURjo6SGFz
aFRyYWl0czx1bnNpZ25lZCBpbnQ+LCBXVEY6Okhhc2hUcmFpdHM8UVRocmVhZCo+ID46OmNvbnRh
aW5zKHVuc2lnbmVkIGludCBjb25zdCYpIGNvbnN0IChIYXNoTWFwLmg6MjA3KQo9PTI1NjQzPT0g
ICAgYnkgMHg2OEZBOUNBOiBXVEY6OmNsZWFyVGhyZWFkRm9ySWRlbnRpZmllcih1bnNpZ25lZCBp
bnQpIChUaHJlYWRpbmdRdC5jcHA6MTMwKQo9PTI1NjQzPT0gICAgYnkgMHg2OEZBRDg0OiBXVEY6
OndhaXRGb3JUaHJlYWRDb21wbGV0aW9uKHVuc2lnbmVkIGludCwgdm9pZCoqKSAoVGhyZWFkaW5n
UXQuY3BwOjE5NykKPT0yNTY0Mz09ICAgIGJ5IDB4NjkyNTdBNDogSlNDOjpIZWFwOjp+SGVhcCgp
IChIZWFwLmNwcDozNDIpCj09MjU2NDM9PSAgICBieSAweDY5OTRFQ0I6IEpTQzo6SlNHbG9iYWxE
YXRhOjp+SlNHbG9iYWxEYXRhKCkgKEpTR2xvYmFsRGF0YS5jcHA6MzU5KQo9PTI1NjQzPT0gICAg
YnkgMHg1QzY4RkEyOiBXVEY6OlJlZkNvdW50ZWQ8SlNDOjpKU0dsb2JhbERhdGE+OjpkZXJlZigp
IChSZWZDb3VudGVkLmg6MTgzKQo9PTI1NjQzPT0gICAgYnkgMHg1QzY4RTJGOiB2b2lkIFdURjo6
ZGVyZWZJZk5vdE51bGw8SlNDOjpKU0dsb2JhbERhdGE+KEpTQzo6SlNHbG9iYWxEYXRhKikgKFBh
c3NSZWZQdHIuaDo1OSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUwRkU3ODogV1RGOjpSZWZQdHI8SlND
OjpKU0dsb2JhbERhdGE+Ojp+UmVmUHRyKCkgKFJlZlB0ci5oOjU4KQo9PTI1NjQzPT0gICAgYnkg
MHg2NTBFREVEOiBXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyOjp+V29ya2VyU2NyaXB0
Q29udHJvbGxlcigpIChXb3JrZXJTY3JpcHRDb250cm9sbGVyLmNwcDo3MCkKPT0yNTY0Mz09ICAg
IGJ5IDB4NjUxQTg3Qzogdm9pZCBXVEY6OmRlbGV0ZU93bmVkUHRyPFdlYkNvcmU6OldvcmtlclNj
cmlwdENvbnRyb2xsZXI+KFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXIqKSAoT3duUHRy
Q29tbW9uLmg6NTMpCj09MjU2NDM9PSAgICBieSAweDY1MjY0QTM6IFdURjo6T3duUHRyPFdlYkNv
cmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI+OjpjbGVhcigpIChPd25QdHIuaDo5OSkKPT0yNTY0
Mz09ICAgIGJ5IDB4NjUyNTFCMTogV2ViQ29yZTo6V29ya2VyQ29udGV4dDo6Y2xlYXJTY3JpcHQo
KSAoV29ya2VyQ29udGV4dC5oOjg0KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI2MDg3OiBXZWJDb3Jl
OjpXb3JrZXJUaHJlYWRTaHV0ZG93bkZpbmlzaFRhc2s6OnBlcmZvcm1UYXNrKFdlYkNvcmU6OlNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2VyVGhyZWFkLmNwcDoxODgpCj09MjU2NDM9PSAg
ICBieSAweDY1MjJENDk6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OlRhc2s6OnBlcmZvcm1UYXNr
KFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2VyUnVuTG9vcC5jcHA6MjAw
KQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyQTA4OiBXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW5J
bk1vZGUoV2ViQ29yZTo6V29ya2VyQ29udGV4dCosIFdlYkNvcmU6Ok1vZGVQcmVkaWNhdGUgY29u
c3QmKSAoV29ya2VyUnVuTG9vcC5jcHA6MTY0KQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyNzAwOiBX
ZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW4oV2ViQ29yZTo6V29ya2VyQ29udGV4dCopIChXb3Jr
ZXJSdW5Mb29wLmNwcDoxMzUpCj09MjU2NDM9PSAgICBieSAweDY1MjVGODY6IFdlYkNvcmU6Oldv
cmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKFdvcmtlclRocmVhZC5jcHA6MTcwKQo9PTI1NjQz
PT0gICAgYnkgMHg2N0ZEQ0VFOiBXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OnJ1bkV2
ZW50TG9vcCgpIChEZWRpY2F0ZWRXb3JrZXJUaHJlYWQuY3BwOjY2KQo9PTI1NjQzPT0gICAgYnkg
MHg2NTI1RTgwOiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZCgpIChXb3JrZXJU
aHJlYWQuY3BwOjE0OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUMzMzogV2ViQ29yZTo6V29ya2Vy
VGhyZWFkOjp3b3JrZXJUaHJlYWRTdGFydCh2b2lkKikgKFdvcmtlclRocmVhZC5jcHA6MTI0KQo9
PTI1NjQzPT0gICAgYnkgMHg2OTAxN0JDOiBXVEY6OnRocmVhZEVudHJ5UG9pbnQodm9pZCopIChU
aHJlYWRpbmcuY3BwOjY3KQo9PTI1NjQzPT0gIEFkZHJlc3MgMHhiYmFkYzBmZiBpcyBub3Qgc3Rh
Y2snZCwgbWFsbG9jJ2Qgb3IgKHJlY2VudGx5KSBmcmVlJ2QKPT0yNTY0Mz09IAo9PTI1NjQzPT0g
Cj09MjU2NDM9PSBQcm9jZXNzIHRlcm1pbmF0aW5nIHdpdGggZGVmYXVsdCBhY3Rpb24gb2Ygc2ln
bmFsIDExIChTSUdTRUdWKTogZHVtcGluZyBjb3JlCj09MjU2NDM9PSAgQWNjZXNzIG5vdCB3aXRo
aW4gbWFwcGVkIHJlZ2lvbiBhdCBhZGRyZXNzIDB4QkJBREMwRkYKPT0yNTY0Mz09ICAgIGF0IDB4
NjhGRDE0QzogV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9yPHVuc2lnbmVkIGludCwgc3RkOjpw
YWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6OkludEhhc2g8dW5zaWduZWQgaW50PiA+
OjplcXVhbCh1bnNpZ25lZCBpbnQgY29uc3QmLCB1bnNpZ25lZCBpbnQgY29uc3QmKSAoSGFzaFRh
YmxlLmg6MjgyKQo9PTI1NjQzPT0gICAgYnkgMHg2OEZDOEU2OiBzdGQ6OnBhaXI8dW5zaWduZWQg
aW50LCBRVGhyZWFkKj4qIFdURjo6SGFzaFRhYmxlPHVuc2lnbmVkIGludCwgc3RkOjpwYWlyPHVu
c2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6OlBhaXJGaXJzdEV4dHJhY3RvcjxzdGQ6OnBhaXI8
dW5zaWduZWQgaW50LCBRVGhyZWFkKj4gPiwgV1RGOjpJbnRIYXNoPHVuc2lnbmVkIGludD4sIFdU
Rjo6UGFpckhhc2hUcmFpdHM8V1RGOjpIYXNoVHJhaXRzPHVuc2lnbmVkIGludD4sIFdURjo6SGFz
aFRyYWl0czxRVGhyZWFkKj4gPiwgV1RGOjpIYXNoVHJhaXRzPHVuc2lnbmVkIGludD4gPjo6bG9v
a3VwPHVuc2lnbmVkIGludCwgV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9yPHVuc2lnbmVkIGlu
dCwgc3RkOjpwYWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6OkludEhhc2g8dW5zaWdu
ZWQgaW50PiA+ID4odW5zaWduZWQgaW50IGNvbnN0JikgKEhhc2hUYWJsZS5oOjUwMSkKPT0yNTY0
Mz09ICAgIGJ5IDB4NjhGQzc1QjogYm9vbCBXVEY6Okhhc2hUYWJsZTx1bnNpZ25lZCBpbnQsIHN0
ZDo6cGFpcjx1bnNpZ25lZCBpbnQsIFFUaHJlYWQqPiwgV1RGOjpQYWlyRmlyc3RFeHRyYWN0b3I8
c3RkOjpwYWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+ID4sIFdURjo6SW50SGFzaDx1bnNpZ25l
ZCBpbnQ+LCBXVEY6OlBhaXJIYXNoVHJhaXRzPFdURjo6SGFzaFRyYWl0czx1bnNpZ25lZCBpbnQ+
LCBXVEY6Okhhc2hUcmFpdHM8UVRocmVhZCo+ID4sIFdURjo6SGFzaFRyYWl0czx1bnNpZ25lZCBp
bnQ+ID46OmNvbnRhaW5zPHVuc2lnbmVkIGludCwgV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9y
PHVuc2lnbmVkIGludCwgc3RkOjpwYWlyPHVuc2lnbmVkIGludCwgUVRocmVhZCo+LCBXVEY6Oklu
dEhhc2g8dW5zaWduZWQgaW50PiA+ID4odW5zaWduZWQgaW50IGNvbnN0JikgY29uc3QgKEhhc2hU
YWJsZS5oOjgwNSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjhGQkY0MjogV1RGOjpIYXNoVGFibGU8dW5z
aWduZWQgaW50LCBzdGQ6OnBhaXI8dW5zaWduZWQgaW50LCBRVGhyZWFkKj4sIFdURjo6UGFpckZp
cnN0RXh0cmFjdG9yPHN0ZDo6cGFpcjx1bnNpZ25lZCBpbnQsIFFUaHJlYWQqPiA+LCBXVEY6Oklu
dEhhc2g8dW5zaWduZWQgaW50PiwgV1RGOjpQYWlySGFzaFRyYWl0czxXVEY6Okhhc2hUcmFpdHM8
dW5zaWduZWQgaW50PiwgV1RGOjpIYXNoVHJhaXRzPFFUaHJlYWQqPiA+LCBXVEY6Okhhc2hUcmFp
dHM8dW5zaWduZWQgaW50PiA+Ojpjb250YWlucyh1bnNpZ25lZCBpbnQgY29uc3QmKSBjb25zdCAo
SGFzaFRhYmxlLmg6MzI5KQo9PTI1NjQzPT0gICAgYnkgMHg2OEZCODI0OiBXVEY6Okhhc2hNYXA8
dW5zaWduZWQgaW50LCBRVGhyZWFkKiwgV1RGOjpJbnRIYXNoPHVuc2lnbmVkIGludD4sIFdURjo6
SGFzaFRyYWl0czx1bnNpZ25lZCBpbnQ+LCBXVEY6Okhhc2hUcmFpdHM8UVRocmVhZCo+ID46OmNv
bnRhaW5zKHVuc2lnbmVkIGludCBjb25zdCYpIGNvbnN0IChIYXNoTWFwLmg6MjA3KQo9PTI1NjQz
PT0gICAgYnkgMHg2OEZBOUNBOiBXVEY6OmNsZWFyVGhyZWFkRm9ySWRlbnRpZmllcih1bnNpZ25l
ZCBpbnQpIChUaHJlYWRpbmdRdC5jcHA6MTMwKQo9PTI1NjQzPT0gICAgYnkgMHg2OEZBRDg0OiBX
VEY6OndhaXRGb3JUaHJlYWRDb21wbGV0aW9uKHVuc2lnbmVkIGludCwgdm9pZCoqKSAoVGhyZWFk
aW5nUXQuY3BwOjE5NykKPT0yNTY0Mz09ICAgIGJ5IDB4NjkyNTdBNDogSlNDOjpIZWFwOjp+SGVh
cCgpIChIZWFwLmNwcDozNDIpCj09MjU2NDM9PSAgICBieSAweDY5OTRFQ0I6IEpTQzo6SlNHbG9i
YWxEYXRhOjp+SlNHbG9iYWxEYXRhKCkgKEpTR2xvYmFsRGF0YS5jcHA6MzU5KQo9PTI1NjQzPT0g
ICAgYnkgMHg1QzY4RkEyOiBXVEY6OlJlZkNvdW50ZWQ8SlNDOjpKU0dsb2JhbERhdGE+OjpkZXJl
ZigpIChSZWZDb3VudGVkLmg6MTgzKQo9PTI1NjQzPT0gICAgYnkgMHg1QzY4RTJGOiB2b2lkIFdU
Rjo6ZGVyZWZJZk5vdE51bGw8SlNDOjpKU0dsb2JhbERhdGE+KEpTQzo6SlNHbG9iYWxEYXRhKikg
KFBhc3NSZWZQdHIuaDo1OSkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUwRkU3ODogV1RGOjpSZWZQdHI8
SlNDOjpKU0dsb2JhbERhdGE+Ojp+UmVmUHRyKCkgKFJlZlB0ci5oOjU4KQo9PTI1NjQzPT0gICAg
YnkgMHg2NTBFREVEOiBXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyOjp+V29ya2VyU2Ny
aXB0Q29udHJvbGxlcigpIChXb3JrZXJTY3JpcHRDb250cm9sbGVyLmNwcDo3MCkKPT0yNTY0Mz09
ICAgIGJ5IDB4NjUxQTg3Qzogdm9pZCBXVEY6OmRlbGV0ZU93bmVkUHRyPFdlYkNvcmU6Oldvcmtl
clNjcmlwdENvbnRyb2xsZXI+KFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXIqKSAoT3du
UHRyQ29tbW9uLmg6NTMpCj09MjU2NDM9PSAgICBieSAweDY1MjY0QTM6IFdURjo6T3duUHRyPFdl
YkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI+OjpjbGVhcigpIChPd25QdHIuaDo5OSkKPT0y
NTY0Mz09ICAgIGJ5IDB4NjUyNTFCMTogV2ViQ29yZTo6V29ya2VyQ29udGV4dDo6Y2xlYXJTY3Jp
cHQoKSAoV29ya2VyQ29udGV4dC5oOjg0KQo9PTI1NjQzPT0gICAgYnkgMHg2NTI2MDg3OiBXZWJD
b3JlOjpXb3JrZXJUaHJlYWRTaHV0ZG93bkZpbmlzaFRhc2s6OnBlcmZvcm1UYXNrKFdlYkNvcmU6
OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2VyVGhyZWFkLmNwcDoxODgpCj09MjU2NDM9
PSAgICBieSAweDY1MjJENDk6IFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OlRhc2s6OnBlcmZvcm1U
YXNrKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSAoV29ya2VyUnVuTG9vcC5jcHA6
MjAwKQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyQTA4OiBXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpy
dW5Jbk1vZGUoV2ViQ29yZTo6V29ya2VyQ29udGV4dCosIFdlYkNvcmU6Ok1vZGVQcmVkaWNhdGUg
Y29uc3QmKSAoV29ya2VyUnVuTG9vcC5jcHA6MTY0KQo9PTI1NjQzPT0gICAgYnkgMHg2NTIyNzAw
OiBXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW4oV2ViQ29yZTo6V29ya2VyQ29udGV4dCopIChX
b3JrZXJSdW5Mb29wLmNwcDoxMzUpCj09MjU2NDM9PSAgICBieSAweDY1MjVGODY6IFdlYkNvcmU6
OldvcmtlclRocmVhZDo6cnVuRXZlbnRMb29wKCkgKFdvcmtlclRocmVhZC5jcHA6MTcwKQo9PTI1
NjQzPT0gICAgYnkgMHg2N0ZEQ0VFOiBXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJUaHJlYWQ6OnJ1
bkV2ZW50TG9vcCgpIChEZWRpY2F0ZWRXb3JrZXJUaHJlYWQuY3BwOjY2KQo9PTI1NjQzPT0gICAg
YnkgMHg2NTI1RTgwOiBXZWJDb3JlOjpXb3JrZXJUaHJlYWQ6OndvcmtlclRocmVhZCgpIChXb3Jr
ZXJUaHJlYWQuY3BwOjE0OCkKPT0yNTY0Mz09ICAgIGJ5IDB4NjUyNUMzMzogV2ViQ29yZTo6V29y
a2VyVGhyZWFkOjp3b3JrZXJUaHJlYWRTdGFydCh2b2lkKikgKFdvcmtlclRocmVhZC5jcHA6MTI0
KQo9PTI1NjQzPT0gICAgYnkgMHg2OTAxN0JDOiBXVEY6OnRocmVhZEVudHJ5UG9pbnQodm9pZCop
IChUaHJlYWRpbmcuY3BwOjY3KQo9PTI1NjQzPT0gIElmIHlvdSBiZWxpZXZlIHRoaXMgaGFwcGVu
ZWQgYXMgYSByZXN1bHQgb2YgYSBzdGFjawo9PTI1NjQzPT0gIG92ZXJmbG93IGluIHlvdXIgcHJv
Z3JhbSdzIG1haW4gdGhyZWFkICh1bmxpa2VseSBidXQKPT0yNTY0Mz09ICBwb3NzaWJsZSksIHlv
dSBjYW4gdHJ5IHRvIGluY3JlYXNlIHRoZSBzaXplIG9mIHRoZQo9PTI1NjQzPT0gIG1haW4gdGhy
ZWFkIHN0YWNrIHVzaW5nIHRoZSAtLW1haW4tc3RhY2tzaXplPSBmbGFnLgo9PTI1NjQzPT0gIFRo
ZSBtYWluIHRocmVhZCBzdGFjayBzaXplIHVzZWQgaW4gdGhpcyBydW4gd2FzIDgzODg2MDguCj09
MjU2NDM9PSAKPT0yNTY0Mz09IEhFQVAgU1VNTUFSWToKPT0yNTY0Mz09ICAgICBpbiB1c2UgYXQg
ZXhpdDogMSw3NTYsODc4IGJ5dGVzIGluIDEyLDk2NCBibG9ja3MKPT0yNTY0Mz09ICAgdG90YWwg
aGVhcCB1c2FnZTogOTEsOTQ2IGFsbG9jcywgNzgsOTgyIGZyZWVzLCAxNCwzNjIsNzI3IGJ5dGVz
IGFsbG9jYXRlZAo9PTI1NjQzPT0gCj09MjU2NDM9PSBMRUFLIFNVTU1BUlk6Cj09MjU2NDM9PSAg
ICBkZWZpbml0ZWx5IGxvc3Q6IDIsNDE2IGJ5dGVzIGluIDE5IGJsb2Nrcwo9PTI1NjQzPT0gICAg
aW5kaXJlY3RseSBsb3N0OiAyMSw4MjAgYnl0ZXMgaW4gMTI5IGJsb2Nrcwo9PTI1NjQzPT0gICAg
ICBwb3NzaWJseSBsb3N0OiAyNzQsNTM1IGJ5dGVzIGluIDE0MyBibG9ja3MKPT0yNTY0Mz09ICAg
IHN0aWxsIHJlYWNoYWJsZTogMSw0NTgsMTA3IGJ5dGVzIGluIDEyLDY3MyBibG9ja3MKPT0yNTY0
Mz09ICAgICAgICAgc3VwcHJlc3NlZDogMCBieXRlcyBpbiAwIGJsb2Nrcwo9PTI1NjQzPT0gUmVy
dW4gd2l0aCAtLWxlYWstY2hlY2s9ZnVsbCB0byBzZWUgZGV0YWlscyBvZiBsZWFrZWQgbWVtb3J5
Cj09MjU2NDM9PSAKPT0yNTY0Mz09IEZvciBjb3VudHMgb2YgZGV0ZWN0ZWQgYW5kIHN1cHByZXNz
ZWQgZXJyb3JzLCByZXJ1biB3aXRoOiAtdgo9PTI1NjQzPT0gRVJST1IgU1VNTUFSWTogMTAgZXJy
b3JzIGZyb20gOSBjb250ZXh0cyAoc3VwcHJlc3NlZDogNCBmcm9tIDQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114287</attachid>
            <date>2011-11-09 08:20:42 -0800</date>
            <delta_ts>2011-11-11 10:59:56 -0800</delta_ts>
            <desc>fix for static local race condition</desc>
            <filename>static_local_race.diff</filename>
            <type>text/plain</type>
            <size>1907</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDk3NzFmNGMuLmRmYjU3NTIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDExLTExLTA5ICBBbmRyZXcgV2Fzb24g
IDxyZWN0YWxvZ2ljQHJlY3RhbG9naWMuY29tPgorCisgICAgICAgIEFwcGFyZW50IHRocmVhZGlu
ZyBidWcgY2F1c2VzIGludGVybWl0dGVudCBzZWdmYXVsdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNzE4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxsb2NhdGUgc3RhdGljIGxvY2FscyBvbiB0aGUg
aGVhcCB0byBwcmV2ZW50IHJhY2UgY29uZGl0aW9uIGJldHdlZW4KKyAgICAgICAgdGhlaXIgZGVz
dHJ1Y3RvcnMgYXQgcHJvY2VzcyBleGl0LCBhbmQgb3V0c3RhbmRpbmcgV29ya2VyVGhyZWFkcwor
ICAgICAgICB3aGljaCBhcmUgaW4gdGhlIHByb2Nlc3Mgb2YgZmluaXNoaW5nLgorCisgICAgICAg
ICogd3RmL3F0L1RocmVhZGluZ1F0LmNwcDoKKyAgICAgICAgKFdURjo6dGhyZWFkTWFwTXV0ZXgp
OgorICAgICAgICAoV1RGOjp0aHJlYWRNYXApOgorICAgICAgICAoV1RGOjppbml0aWFsaXplVGhy
ZWFkaW5nKToKKwogMjAxMS0xMS0wNCAgWXVxaWFuZyBYaWFuICA8eXVxaWFuZy54aWFuQGludGVs
LmNvbT4KIAogICAgICAgICBNb3JlIGNvZGUgY2xlYW4tdXAgaW4gREZHIDMyXzY0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGluZ1F0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQuY3BwCmluZGV4IDQ2MzFiN2MuLjk2
OTMxZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5n
UXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQuY3Bw
CkBAIC04NywxNCArODcsMTQgQEAgc3RhdGljIE11dGV4KiBhdG9taWNhbGx5SW5pdGlhbGl6ZWRT
dGF0aWNNdXRleDsKIAogc3RhdGljIE11dGV4JiB0aHJlYWRNYXBNdXRleCgpCiB7Ci0gICAgc3Rh
dGljIE11dGV4IG11dGV4OwotICAgIHJldHVybiBtdXRleDsKKyAgICBzdGF0aWMgTXV0ZXgqIG11
dGV4ID0gbmV3IE11dGV4KCk7OworICAgIHJldHVybiAqbXV0ZXg7CiB9CiAKIHN0YXRpYyBIYXNo
TWFwPFRocmVhZElkZW50aWZpZXIsIFFUaHJlYWQqPiYgdGhyZWFkTWFwKCkKIHsKLSAgICBzdGF0
aWMgSGFzaE1hcDxUaHJlYWRJZGVudGlmaWVyLCBRVGhyZWFkKj4gbWFwOwotICAgIHJldHVybiBt
YXA7CisgICAgc3RhdGljIEhhc2hNYXA8VGhyZWFkSWRlbnRpZmllciwgUVRocmVhZCo+KiBtYXAg
PSBuZXcgSGFzaE1hcDxUaHJlYWRJZGVudGlmaWVyLCBRVGhyZWFkKj4oKTs7CisgICAgcmV0dXJu
ICptYXA7CiB9CiAKIHN0YXRpYyBUaHJlYWRJZGVudGlmaWVyIGlkZW50aWZpZXJCeVF0aHJlYWRI
YW5kbGUoUVRocmVhZComIHRocmVhZCkKQEAgLTE0Nyw2ICsxNDcsNyBAQCB2b2lkIGluaXRpYWxp
emVUaHJlYWRpbmcoKQogICAgICAgICBTdHJpbmdJbXBsOjplbXB0eSgpOwogICAgICAgICBhdG9t
aWNhbGx5SW5pdGlhbGl6ZWRTdGF0aWNNdXRleCA9IG5ldyBNdXRleDsKICAgICAgICAgdGhyZWFk
TWFwTXV0ZXgoKTsKKyAgICAgICAgdGhyZWFkTWFwKCk7CiAgICAgICAgIGluaXRpYWxpemVSYW5k
b21OdW1iZXJHZW5lcmF0b3IoKTsKICAgICAgICAgd3RmVGhyZWFkRGF0YSgpOwogICAgICAgICBz
X2R0b2FQNU11dGV4ID0gbmV3IE11dGV4Owo=
</data>
<flag name="review"
          id="112893"
          type_id="1"
          status="-"
          setter="hausmann"
    />
    <flag name="commit-queue"
          id="112894"
          type_id="3"
          status="-"
          setter="hausmann"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>114296</attachid>
            <date>2011-11-09 08:58:15 -0800</date>
            <delta_ts>2011-11-09 08:58:15 -0800</delta_ts>
            <desc>helgrind log</desc>
            <filename>helgrind.log</filename>
            <type>text/plain</type>
            <size>14518</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">PT0zMDgwNT09IEhlbGdyaW5kLCBhIHRocmVhZCBlcnJvciBkZXRlY3Rvcgo9PTMwODA1PT0gQ29w
eXJpZ2h0IChDKSAyMDA3LTIwMTEsIGFuZCBHTlUgR1BMJ2QsIGJ5IE9wZW5Xb3JrcyBMTFAgZXQg
YWwuCj09MzA4MDU9PSBVc2luZyBWYWxncmluZC0zLjcuMCBhbmQgTGliVkVYOyByZXJ1biB3aXRo
IC1oIGZvciBjb3B5cmlnaHQgaW5mbwo9PTMwODA1PT0gQ29tbWFuZDogLi90aHJlYWRjcmFzaAo9
PTMwODA1PT0gCgpbLi4uXQoKPT0zMDgwNT09IFBvc3NpYmxlIGRhdGEgcmFjZSBkdXJpbmcgcmVh
ZCBvZiBzaXplIDggYXQgMHg5NjlFNTAwIGJ5IHRocmVhZCAjOQo9PTMwODA1PT0gTG9ja3MgaGVs
ZDogbm9uZQo9PTMwODA1PT0gICAgYXQgMHg5MUJCMzA0OiBRQmFzaWNBdG9taWNQb2ludGVyPFFJ
bnRlcm5hbF9DYWxsQmFja1RhYmxlPjo6b3BlcmF0b3I9PShRSW50ZXJuYWxfQ2FsbEJhY2tUYWJs
ZSopIGNvbnN0IChxYmFzaWNhdG9taWMuaDoxNTQpCj09MzA4MDU9PSAgICBieSAweDkxQkFEMEU6
IFFCYXNpY0F0b21pY1BvaW50ZXI8UUludGVybmFsX0NhbGxCYWNrVGFibGU+OjpvcGVyYXRvciEo
KSBjb25zdCAocWJhc2ljYXRvbWljLmg6MTY0KQo9PTMwODA1PT0gICAgYnkgMHg5MUJBNDlGOiBn
bG9iYWxfY2FsbGJhY2tfdGFibGUoKSAocWdsb2JhbC5jcHA6MzAzOCkKPT0zMDgwNT09ICAgIGJ5
IDB4OTFCQTZCMzogUUludGVybmFsOjphY3RpdmF0ZUNhbGxiYWNrcyhRSW50ZXJuYWw6OkNhbGxi
YWNrLCB2b2lkKiopIChxZ2xvYmFsLmNwcDozMDY0KQo9PTMwODA1PT0gICAgYnkgMHg5MUM3QjhE
OiBRVGhyZWFkRGF0YTo6Y3VycmVudCgpIChxdGhyZWFkX3VuaXguY3BwOjIxMykKPT0zMDgwNT09
ICAgIGJ5IDB4OTFDNjJCODogUVRocmVhZFN0b3JhZ2VEYXRhOjpnZXQoKSBjb25zdCAocXRocmVh
ZHN0b3JhZ2UuY3BwOjExOSkKPT0zMDgwNT09ICAgIGJ5IDB4NUNDMzc2MDogV1RGOjpUaHJlYWRT
cGVjaWZpYzxXVEY6OldURlRocmVhZERhdGE+OjpEYXRhKiYgcVRocmVhZFN0b3JhZ2VfbG9jYWxE
YXRhPFdURjo6VGhyZWFkU3BlY2lmaWM8V1RGOjpXVEZUaHJlYWREYXRhPjo6RGF0YT4oUVRocmVh
ZFN0b3JhZ2VEYXRhJiwgV1RGOjpUaHJlYWRTcGVjaWZpYzxXVEY6OldURlRocmVhZERhdGE+OjpE
YXRhKiopIChxdGhyZWFkc3RvcmFnZS5oOjc2KQo9PTMwODA1PT0gICAgYnkgMHg1Q0MxOUU0OiBR
VGhyZWFkU3RvcmFnZTxXVEY6OlRocmVhZFNwZWNpZmljPFdURjo6V1RGVGhyZWFkRGF0YT46OkRh
dGEqPjo6bG9jYWxEYXRhKCkgKHF0aHJlYWRzdG9yYWdlLmg6MTQzKQo9PTMwODA1PT0gICAgYnkg
MHg1Q0JGRUE1OiBXVEY6OlRocmVhZFNwZWNpZmljPFdURjo6V1RGVGhyZWFkRGF0YT46OmdldCgp
IChUaHJlYWRTcGVjaWZpYy5oOjE0OSkKPT0zMDgwNT09ICAgIGJ5IDB4NUNCRDdBODogV1RGOjpU
aHJlYWRTcGVjaWZpYzxXVEY6OldURlRocmVhZERhdGE+OjpvcGVyYXRvciBXVEY6OldURlRocmVh
ZERhdGEqKCkgKFRocmVhZFNwZWNpZmljLmg6Mjg3KQo9PTMwODA1PT0gICAgYnkgMHg1Q0JCMzRG
OiBXVEY6OlRocmVhZFNwZWNpZmljPFdURjo6V1RGVGhyZWFkRGF0YT46Om9wZXJhdG9yKigpIChU
aHJlYWRTcGVjaWZpYy5oOjMwNykKPT0zMDgwNT09ICAgIGJ5IDB4NUNCNTYxQTogV1RGOjp3dGZU
aHJlYWREYXRhKCkgKFdURlRocmVhZERhdGEuaDoxMzgpCj09MzA4MDU9PSAgICBieSAweDY5MEFF
QUM6IFdURjo6U3RyaW5nSW1wbDo6flN0cmluZ0ltcGwoKSAoU3RyaW5nSW1wbC5jcHA6NTApCj09
MzA4MDU9PSAgICBieSAweDU3MkJEQjU6IFdURjo6U3RyaW5nSW1wbDo6ZGVyZWYoKSAoU3RyaW5n
SW1wbC5oOjM3NSkKPT0zMDgwNT09ICAgIGJ5IDB4NTcyQzkzMDogdm9pZCBXVEY6OmRlcmVmSWZO
b3ROdWxsPFdURjo6U3RyaW5nSW1wbD4oV1RGOjpTdHJpbmdJbXBsKikgKFBhc3NSZWZQdHIuaDo1
OSkKPT0zMDgwNT09ICAgIGJ5IDB4NTcyQzhCMDogV1RGOjpSZWZQdHI8V1RGOjpTdHJpbmdJbXBs
Pjo6flJlZlB0cigpIChSZWZQdHIuaDo1OCkKPT0zMDgwNT09ICAgIGJ5IDB4NjlEQkQzRjogSlND
OjpTbWFsbFN0cmluZ3NTdG9yYWdlOjp+U21hbGxTdHJpbmdzU3RvcmFnZSgpIChTbWFsbFN0cmlu
Z3MuY3BwOjQ0KQo9PTMwODA1PT0gICAgYnkgMHg2OURCRDY2OiB2b2lkIFdURjo6ZGVsZXRlT3du
ZWRQdHI8SlNDOjpTbWFsbFN0cmluZ3NTdG9yYWdlPihKU0M6OlNtYWxsU3RyaW5nc1N0b3JhZ2Uq
KSAoT3duUHRyQ29tbW9uLmg6NTMpCj09MzA4MDU9PSAgICBieSAweDY5REJCQzA6IFdURjo6T3du
UHRyPEpTQzo6U21hbGxTdHJpbmdzU3RvcmFnZT46On5Pd25QdHIoKSAoT3duUHRyLmg6NTQpCj09
MzA4MDU9PSAgICBieSAweDY5REI2RTE6IEpTQzo6U21hbGxTdHJpbmdzOjp+U21hbGxTdHJpbmdz
KCkgKFNtYWxsU3RyaW5ncy5jcHA6NzgpCj09MzA4MDU9PSAgICBieSAweDY5OTZGQUI6IEpTQzo6
SlNHbG9iYWxEYXRhOjp+SlNHbG9iYWxEYXRhKCkgKEpTR2xvYmFsRGF0YS5jcHA6MzU5KQo9PTMw
ODA1PT0gICAgYnkgMHg1QzZBRkEyOiBXVEY6OlJlZkNvdW50ZWQ8SlNDOjpKU0dsb2JhbERhdGE+
OjpkZXJlZigpIChSZWZDb3VudGVkLmg6MTgzKQo9PTMwODA1PT0gICAgYnkgMHg1QzZBRTJGOiB2
b2lkIFdURjo6ZGVyZWZJZk5vdE51bGw8SlNDOjpKU0dsb2JhbERhdGE+KEpTQzo6SlNHbG9iYWxE
YXRhKikgKFBhc3NSZWZQdHIuaDo1OSkKPT0zMDgwNT09ICAgIGJ5IDB4NjUxMUU3ODogV1RGOjpS
ZWZQdHI8SlNDOjpKU0dsb2JhbERhdGE+Ojp+UmVmUHRyKCkgKFJlZlB0ci5oOjU4KQo9PTMwODA1
PT0gICAgYnkgMHg2NTEwREVEOiBXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyOjp+V29y
a2VyU2NyaXB0Q29udHJvbGxlcigpIChXb3JrZXJTY3JpcHRDb250cm9sbGVyLmNwcDo3MCkKPT0z
MDgwNT09IAo9PTMwODA1PT0gVGhpcyBjb25mbGljdHMgd2l0aCBhIHByZXZpb3VzIHdyaXRlIG9m
IHNpemUgOCBieSB0aHJlYWQgIzEKPT0zMDgwNT09IExvY2tzIGhlbGQ6IG5vbmUKPT0zMDgwNT09
ICAgIGF0IDB4OTFCQjM5RTogUUJhc2ljQXRvbWljUG9pbnRlcjxRSW50ZXJuYWxfQ2FsbEJhY2tU
YWJsZT46Om9wZXJhdG9yPShRSW50ZXJuYWxfQ2FsbEJhY2tUYWJsZSopIChxYmFzaWNhdG9taWMu
aDoxODIpCj09MzA4MDU9PSAgICBieSAweDkxQkFFMUI6IFFHbG9iYWxTdGF0aWNEZWxldGVyPFFJ
bnRlcm5hbF9DYWxsQmFja1RhYmxlPjo6flFHbG9iYWxTdGF0aWNEZWxldGVyKCkgKHFnbG9iYWwu
aDoxODI0KQo9PTMwODA1PT0gICAgYnkgMHhBMEEzMjYxOiBleGl0IChleGl0LmM6NzgpCj09MzA4
MDU9PSAgICBieSAweEEwODhDNTM6IChiZWxvdyBtYWluKSAobGliYy1zdGFydC5jOjI1OCkKPT0z
MDgwNT09IAo9PTMwODA1PT0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo9PTMwODA1PT0gCj09MzA4MDU9PSBQb3NzaWJsZSBk
YXRhIHJhY2UgZHVyaW5nIHJlYWQgb2Ygc2l6ZSAxIGF0IDB4OTY5RTUwOCBieSB0aHJlYWQgIzkK
PT0zMDgwNT09IExvY2tzIGhlbGQ6IG5vbmUKPT0zMDgwNT09ICAgIGF0IDB4OTFCQTRBNDogZ2xv
YmFsX2NhbGxiYWNrX3RhYmxlKCkgKHFnbG9iYWwuY3BwOjMwMzgpCj09MzA4MDU9PSAgICBieSAw
eDkxQkE2QjM6IFFJbnRlcm5hbDo6YWN0aXZhdGVDYWxsYmFja3MoUUludGVybmFsOjpDYWxsYmFj
aywgdm9pZCoqKSAocWdsb2JhbC5jcHA6MzA2NCkKPT0zMDgwNT09ICAgIGJ5IDB4OTFDN0I4RDog
UVRocmVhZERhdGE6OmN1cnJlbnQoKSAocXRocmVhZF91bml4LmNwcDoyMTMpCj09MzA4MDU9PSAg
ICBieSAweDkxQzYyQjg6IFFUaHJlYWRTdG9yYWdlRGF0YTo6Z2V0KCkgY29uc3QgKHF0aHJlYWRz
dG9yYWdlLmNwcDoxMTkpCj09MzA4MDU9PSAgICBieSAweDVDQzM3NjA6IFdURjo6VGhyZWFkU3Bl
Y2lmaWM8V1RGOjpXVEZUaHJlYWREYXRhPjo6RGF0YSomIHFUaHJlYWRTdG9yYWdlX2xvY2FsRGF0
YTxXVEY6OlRocmVhZFNwZWNpZmljPFdURjo6V1RGVGhyZWFkRGF0YT46OkRhdGE+KFFUaHJlYWRT
dG9yYWdlRGF0YSYsIFdURjo6VGhyZWFkU3BlY2lmaWM8V1RGOjpXVEZUaHJlYWREYXRhPjo6RGF0
YSoqKSAocXRocmVhZHN0b3JhZ2UuaDo3NikKPT0zMDgwNT09ICAgIGJ5IDB4NUNDMTlFNDogUVRo
cmVhZFN0b3JhZ2U8V1RGOjpUaHJlYWRTcGVjaWZpYzxXVEY6OldURlRocmVhZERhdGE+OjpEYXRh
Kj46OmxvY2FsRGF0YSgpIChxdGhyZWFkc3RvcmFnZS5oOjE0MykKPT0zMDgwNT09ICAgIGJ5IDB4
NUNCRkVBNTogV1RGOjpUaHJlYWRTcGVjaWZpYzxXVEY6OldURlRocmVhZERhdGE+OjpnZXQoKSAo
VGhyZWFkU3BlY2lmaWMuaDoxNDkpCj09MzA4MDU9PSAgICBieSAweDVDQkQ3QTg6IFdURjo6VGhy
ZWFkU3BlY2lmaWM8V1RGOjpXVEZUaHJlYWREYXRhPjo6b3BlcmF0b3IgV1RGOjpXVEZUaHJlYWRE
YXRhKigpIChUaHJlYWRTcGVjaWZpYy5oOjI4NykKPT0zMDgwNT09ICAgIGJ5IDB4NUNCQjM0Rjog
V1RGOjpUaHJlYWRTcGVjaWZpYzxXVEY6OldURlRocmVhZERhdGE+OjpvcGVyYXRvciooKSAoVGhy
ZWFkU3BlY2lmaWMuaDozMDcpCj09MzA4MDU9PSAgICBieSAweDVDQjU2MUE6IFdURjo6d3RmVGhy
ZWFkRGF0YSgpIChXVEZUaHJlYWREYXRhLmg6MTM4KQo9PTMwODA1PT0gICAgYnkgMHg2OTBBRUFD
OiBXVEY6OlN0cmluZ0ltcGw6On5TdHJpbmdJbXBsKCkgKFN0cmluZ0ltcGwuY3BwOjUwKQo9PTMw
ODA1PT0gICAgYnkgMHg1NzJCREI1OiBXVEY6OlN0cmluZ0ltcGw6OmRlcmVmKCkgKFN0cmluZ0lt
cGwuaDozNzUpCj09MzA4MDU9PSAgICBieSAweDU3MkM5MzA6IHZvaWQgV1RGOjpkZXJlZklmTm90
TnVsbDxXVEY6OlN0cmluZ0ltcGw+KFdURjo6U3RyaW5nSW1wbCopIChQYXNzUmVmUHRyLmg6NTkp
Cj09MzA4MDU9PSAgICBieSAweDU3MkM4QjA6IFdURjo6UmVmUHRyPFdURjo6U3RyaW5nSW1wbD46
On5SZWZQdHIoKSAoUmVmUHRyLmg6NTgpCj09MzA4MDU9PSAgICBieSAweDY5REJEM0Y6IEpTQzo6
U21hbGxTdHJpbmdzU3RvcmFnZTo6flNtYWxsU3RyaW5nc1N0b3JhZ2UoKSAoU21hbGxTdHJpbmdz
LmNwcDo0NCkKPT0zMDgwNT09ICAgIGJ5IDB4NjlEQkQ2Njogdm9pZCBXVEY6OmRlbGV0ZU93bmVk
UHRyPEpTQzo6U21hbGxTdHJpbmdzU3RvcmFnZT4oSlNDOjpTbWFsbFN0cmluZ3NTdG9yYWdlKikg
KE93blB0ckNvbW1vbi5oOjUzKQo9PTMwODA1PT0gICAgYnkgMHg2OURCQkMwOiBXVEY6Ok93blB0
cjxKU0M6OlNtYWxsU3RyaW5nc1N0b3JhZ2U+Ojp+T3duUHRyKCkgKE93blB0ci5oOjU0KQo9PTMw
ODA1PT0gICAgYnkgMHg2OURCNkUxOiBKU0M6OlNtYWxsU3RyaW5nczo6flNtYWxsU3RyaW5ncygp
IChTbWFsbFN0cmluZ3MuY3BwOjc4KQo9PTMwODA1PT0gICAgYnkgMHg2OTk2RkFCOiBKU0M6OkpT
R2xvYmFsRGF0YTo6fkpTR2xvYmFsRGF0YSgpIChKU0dsb2JhbERhdGEuY3BwOjM1OSkKPT0zMDgw
NT09ICAgIGJ5IDB4NUM2QUZBMjogV1RGOjpSZWZDb3VudGVkPEpTQzo6SlNHbG9iYWxEYXRhPjo6
ZGVyZWYoKSAoUmVmQ291bnRlZC5oOjE4MykKPT0zMDgwNT09ICAgIGJ5IDB4NUM2QUUyRjogdm9p
ZCBXVEY6OmRlcmVmSWZOb3ROdWxsPEpTQzo6SlNHbG9iYWxEYXRhPihKU0M6OkpTR2xvYmFsRGF0
YSopIChQYXNzUmVmUHRyLmg6NTkpCj09MzA4MDU9PSAgICBieSAweDY1MTFFNzg6IFdURjo6UmVm
UHRyPEpTQzo6SlNHbG9iYWxEYXRhPjo6flJlZlB0cigpIChSZWZQdHIuaDo1OCkKPT0zMDgwNT09
ICAgIGJ5IDB4NjUxMERFRDogV2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxlcjo6fldvcmtl
clNjcmlwdENvbnRyb2xsZXIoKSAoV29ya2VyU2NyaXB0Q29udHJvbGxlci5jcHA6NzApCj09MzA4
MDU9PSAgICBieSAweDY1MUM4N0M6IHZvaWQgV1RGOjpkZWxldGVPd25lZFB0cjxXZWJDb3JlOjpX
b3JrZXJTY3JpcHRDb250cm9sbGVyPihXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyKikg
KE93blB0ckNvbW1vbi5oOjUzKQo9PTMwODA1PT0gICAgYnkgMHg2NTI4NEEzOiBXVEY6Ok93blB0
cjxXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyPjo6Y2xlYXIoKSAoT3duUHRyLmg6OTkp
Cj09MzA4MDU9PSAKPT0zMDgwNT09IFRoaXMgY29uZmxpY3RzIHdpdGggYSBwcmV2aW91cyB3cml0
ZSBvZiBzaXplIDEgYnkgdGhyZWFkICMxCj09MzA4MDU9PSBMb2NrcyBoZWxkOiBub25lCj09MzA4
MDU9PSAgICBhdCAweDkxQkFFMjM6IFFHbG9iYWxTdGF0aWNEZWxldGVyPFFJbnRlcm5hbF9DYWxs
QmFja1RhYmxlPjo6flFHbG9iYWxTdGF0aWNEZWxldGVyKCkgKHFnbG9iYWwuaDoxODI1KQo9PTMw
ODA1PT0gICAgYnkgMHhBMEEzMjYxOiBleGl0IChleGl0LmM6NzgpCj09MzA4MDU9PSAgICBieSAw
eEEwODhDNTM6IChiZWxvdyBtYWluKSAobGliYy1zdGFydC5jOjI1OCkKPT0zMDgwNT09IAo9PTMw
ODA1PT0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQo9PTMwODA1PT0gCj09MzA4MDU9PSBQb3NzaWJsZSBkYXRhIHJhY2UgZHVy
aW5nIHJlYWQgb2Ygc2l6ZSA4IGF0IDB4OTY5RTUwMCBieSB0aHJlYWQgIzkKPT0zMDgwNT09IExv
Y2tzIGhlbGQ6IG5vbmUKPT0zMDgwNT09ICAgIGF0IDB4OTFCQUUzQTogUUJhc2ljQXRvbWljUG9p
bnRlcjxRSW50ZXJuYWxfQ2FsbEJhY2tUYWJsZT46Om9wZXJhdG9yIFFJbnRlcm5hbF9DYWxsQmFj
a1RhYmxlKigpIGNvbnN0IChxYmFzaWNhdG9taWMuaDoxNjkpCj09MzA4MDU9PSAgICBieSAweDkx
QkE1QTQ6IGdsb2JhbF9jYWxsYmFja190YWJsZSgpIChxZ2xvYmFsLmNwcDozMDM4KQo9PTMwODA1
PT0gICAgYnkgMHg5MUJBNkIzOiBRSW50ZXJuYWw6OmFjdGl2YXRlQ2FsbGJhY2tzKFFJbnRlcm5h
bDo6Q2FsbGJhY2ssIHZvaWQqKikgKHFnbG9iYWwuY3BwOjMwNjQpCj09MzA4MDU9PSAgICBieSAw
eDkxQzdCOEQ6IFFUaHJlYWREYXRhOjpjdXJyZW50KCkgKHF0aHJlYWRfdW5peC5jcHA6MjEzKQo9
PTMwODA1PT0gICAgYnkgMHg5MzE1ODA2OiBRT2JqZWN0OjpRT2JqZWN0KFFPYmplY3RQcml2YXRl
JiwgUU9iamVjdCopIChxb2JqZWN0LmNwcDo3NzMpCj09MzA4MDU9PSAgICBieSAweDkxQzRENzc6
IFFUaHJlYWQ6OlFUaHJlYWQoUVRocmVhZFByaXZhdGUmLCBRT2JqZWN0KikgKHF0aHJlYWQuY3Bw
OjM4NSkKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNDJERTogUUFkb3B0ZWRUaHJlYWQ6OlFBZG9wdGVk
VGhyZWFkKFFUaHJlYWREYXRhKikgKHF0aHJlYWQuY3BwOjEzNykKPT0zMDgwNT09ICAgIGJ5IDB4
OTFDN0M4MDogUVRocmVhZERhdGE6OmN1cnJlbnQoKSAocXRocmVhZF91bml4LmNwcDoyMjUpCj09
MzA4MDU9PSAgICBieSAweDkzMTU4MDY6IFFPYmplY3Q6OlFPYmplY3QoUU9iamVjdFByaXZhdGUm
LCBRT2JqZWN0KikgKHFvYmplY3QuY3BwOjc3MykKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNEQ3Nzog
UVRocmVhZDo6UVRocmVhZChRVGhyZWFkUHJpdmF0ZSYsIFFPYmplY3QqKSAocXRocmVhZC5jcHA6
Mzg1KQo9PTMwODA1PT0gICAgYnkgMHg5MUM0MkRFOiBRQWRvcHRlZFRocmVhZDo6UUFkb3B0ZWRU
aHJlYWQoUVRocmVhZERhdGEqKSAocXRocmVhZC5jcHA6MTM3KQo9PTMwODA1PT0gICAgYnkgMHg5
MUM3QzgwOiBRVGhyZWFkRGF0YTo6Y3VycmVudCgpIChxdGhyZWFkX3VuaXguY3BwOjIyNSkKPT0z
MDgwNT09ICAgIGJ5IDB4OTMxNTgwNjogUU9iamVjdDo6UU9iamVjdChRT2JqZWN0UHJpdmF0ZSYs
IFFPYmplY3QqKSAocW9iamVjdC5jcHA6NzczKQo9PTMwODA1PT0gICAgYnkgMHg5MUM0RDc3OiBR
VGhyZWFkOjpRVGhyZWFkKFFUaHJlYWRQcml2YXRlJiwgUU9iamVjdCopIChxdGhyZWFkLmNwcDoz
ODUpCj09MzA4MDU9PSAgICBieSAweDkxQzQyREU6IFFBZG9wdGVkVGhyZWFkOjpRQWRvcHRlZFRo
cmVhZChRVGhyZWFkRGF0YSopIChxdGhyZWFkLmNwcDoxMzcpCj09MzA4MDU9PSAgICBieSAweDkx
QzdDODA6IFFUaHJlYWREYXRhOjpjdXJyZW50KCkgKHF0aHJlYWRfdW5peC5jcHA6MjI1KQo9PTMw
ODA1PT0gICAgYnkgMHg5MzE1ODA2OiBRT2JqZWN0OjpRT2JqZWN0KFFPYmplY3RQcml2YXRlJiwg
UU9iamVjdCopIChxb2JqZWN0LmNwcDo3NzMpCj09MzA4MDU9PSAgICBieSAweDkxQzRENzc6IFFU
aHJlYWQ6OlFUaHJlYWQoUVRocmVhZFByaXZhdGUmLCBRT2JqZWN0KikgKHF0aHJlYWQuY3BwOjM4
NSkKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNDJERTogUUFkb3B0ZWRUaHJlYWQ6OlFBZG9wdGVkVGhy
ZWFkKFFUaHJlYWREYXRhKikgKHF0aHJlYWQuY3BwOjEzNykKPT0zMDgwNT09ICAgIGJ5IDB4OTFD
N0M4MDogUVRocmVhZERhdGE6OmN1cnJlbnQoKSAocXRocmVhZF91bml4LmNwcDoyMjUpCj09MzA4
MDU9PSAgICBieSAweDkzMTU4MDY6IFFPYmplY3Q6OlFPYmplY3QoUU9iamVjdFByaXZhdGUmLCBR
T2JqZWN0KikgKHFvYmplY3QuY3BwOjc3MykKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNEQ3NzogUVRo
cmVhZDo6UVRocmVhZChRVGhyZWFkUHJpdmF0ZSYsIFFPYmplY3QqKSAocXRocmVhZC5jcHA6Mzg1
KQo9PTMwODA1PT0gICAgYnkgMHg5MUM0MkRFOiBRQWRvcHRlZFRocmVhZDo6UUFkb3B0ZWRUaHJl
YWQoUVRocmVhZERhdGEqKSAocXRocmVhZC5jcHA6MTM3KQo9PTMwODA1PT0gICAgYnkgMHg5MUM3
QzgwOiBRVGhyZWFkRGF0YTo6Y3VycmVudCgpIChxdGhyZWFkX3VuaXguY3BwOjIyNSkKPT0zMDgw
NT09ICAgIGJ5IDB4OTMxNTgwNjogUU9iamVjdDo6UU9iamVjdChRT2JqZWN0UHJpdmF0ZSYsIFFP
YmplY3QqKSAocW9iamVjdC5jcHA6NzczKQo9PTMwODA1PT0gCj09MzA4MDU9PSBUaGlzIGNvbmZs
aWN0cyB3aXRoIGEgcHJldmlvdXMgd3JpdGUgb2Ygc2l6ZSA4IGJ5IHRocmVhZCAjMQo9PTMwODA1
PT0gTG9ja3MgaGVsZDogbm9uZQo9PTMwODA1PT0gICAgYXQgMHg5MUJCMzlFOiBRQmFzaWNBdG9t
aWNQb2ludGVyPFFJbnRlcm5hbF9DYWxsQmFja1RhYmxlPjo6b3BlcmF0b3I9KFFJbnRlcm5hbF9D
YWxsQmFja1RhYmxlKikgKHFiYXNpY2F0b21pYy5oOjE4MikKPT0zMDgwNT09ICAgIGJ5IDB4OTFC
QUUxQjogUUdsb2JhbFN0YXRpY0RlbGV0ZXI8UUludGVybmFsX0NhbGxCYWNrVGFibGU+Ojp+UUds
b2JhbFN0YXRpY0RlbGV0ZXIoKSAocWdsb2JhbC5oOjE4MjQpCj09MzA4MDU9PSAgICBieSAweEEw
QTMyNjE6IGV4aXQgKGV4aXQuYzo3OCkKPT0zMDgwNT09ICAgIGJ5IDB4QTA4OEM1MzogKGJlbG93
IG1haW4pIChsaWJjLXN0YXJ0LmM6MjU4KQo9PTMwODA1PT0gCj09MzA4MDU9PSAKPT0zMDgwNT09
IFByb2Nlc3MgdGVybWluYXRpbmcgd2l0aCBkZWZhdWx0IGFjdGlvbiBvZiBzaWduYWwgMTEgKFNJ
R1NFR1YpOiBkdW1waW5nIGNvcmUKPT0zMDgwNT09ICBCYWQgcGVybWlzc2lvbnMgZm9yIG1hcHBl
ZCByZWdpb24gYXQgYWRkcmVzcyAweDFEMDlFRkYwCj09MzA4MDU9PSAgICBhdCAweDRDMkNCODY6
IHB0aHJlYWRfbXV0ZXhfaW5pdCAoaGdfaW50ZXJjZXB0cy5jOjQyNikKPT0zMDgwNT09IC0tLVRo
cmVhZC1Bbm5vdW5jZW1lbnQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KPT0zMDgwNT09IAo9PTMwODA1PT0gVGhyZWFkICMxOCB3YXMgY3JlYXRlZAo9PTMwODA1PT0g
ICAgYXQgMHhBMTUwNkNFOiBjbG9uZSAoY2xvbmUuUzo3NykKPT0zMDgwNT09ICAgIGJ5IDB4OTZB
NjE3MjogcHRocmVhZF9jcmVhdGVAQEdMSUJDXzIuMi41IChjcmVhdGV0aHJlYWQuYzo3NSkKPT0z
MDgwNT09ICAgIGJ5IDB4NEMyQ0Q3OTogcHRocmVhZF9jcmVhdGVfV1JLIChoZ19pbnRlcmNlcHRz
LmM6MjU1KQo9PTMwODA1PT0gICAgYnkgMHg0QzJDRThEOiBwdGhyZWFkX2NyZWF0ZUAqIChoZ19p
bnRlcmNlcHRzLmM6Mjg2KQo9PTMwODA1PT0gICAgYnkgMHg5MUM4OEVBOiBRVGhyZWFkOjpzdGFy
dChRVGhyZWFkOjpQcmlvcml0eSkgKHF0aHJlYWRfdW5peC5jcHA6NjU2KQo9PTMwODA1PT0gICAg
YnkgMHg2OEZDRDMyOiBXVEY6OmNyZWF0ZVRocmVhZEludGVybmFsKHZvaWQqICgqKSh2b2lkKiks
IHZvaWQqLCBjaGFyIGNvbnN0KikgKFRocmVhZGluZ1F0LmNwcDoxNzkpCj09MzA4MDU9PSAgICBi
eSAweDY5MDM4ODM6IFdURjo6Y3JlYXRlVGhyZWFkKHZvaWQqICgqKSh2b2lkKiksIHZvaWQqLCBj
aGFyIGNvbnN0KikgKFRocmVhZGluZy5jcHA6ODQpCj09MzA4MDU9PSAgICBieSAweDY5MjcxRDQ6
IEpTQzo6SGVhcDo6SGVhcChKU0M6OkpTR2xvYmFsRGF0YSosIEpTQzo6SGVhcFNpemUpIChIZWFw
LmNwcDozMjkpCj09MzA4MDU9PSAgICBieSAweDY5OTU1MTg6IEpTQzo6SlNHbG9iYWxEYXRhOjpK
U0dsb2JhbERhdGEoSlNDOjpKU0dsb2JhbERhdGE6Okdsb2JhbERhdGFUeXBlLCBKU0M6OlRocmVh
ZFN0YWNrVHlwZSwgSlNDOjpIZWFwU2l6ZSkgKEpTR2xvYmFsRGF0YS5jcHA6MjA2KQo9PTMwODA1
PT0gICAgYnkgMHg2OTk3NEIxOiBKU0M6OkpTR2xvYmFsRGF0YTo6Y3JlYXRlKEpTQzo6VGhyZWFk
U3RhY2tUeXBlLCBKU0M6OkhlYXBTaXplKSAoSlNHbG9iYWxEYXRhLmNwcDozNjgpCj09MzA4MDU9
PSAgICBieSAweDY1MTBDOTI6IFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI6Oldvcmtl
clNjcmlwdENvbnRyb2xsZXIoV2ViQ29yZTo6V29ya2VyQ29udGV4dCopIChXb3JrZXJTY3JpcHRD
b250cm9sbGVyLmNwcDo2MCkKPT0zMDgwNT09ICAgIGJ5IDB4NjUxOUJBMzogV2ViQ29yZTo6V29y
a2VyQ29udGV4dDo6V29ya2VyQ29udGV4dChXZWJDb3JlOjpLVVJMIGNvbnN0JiwgV1RGOjpTdHJp
bmcgY29uc3QmLCBXZWJDb3JlOjpXb3JrZXJUaHJlYWQqKSAoV29ya2VyQ29udGV4dC5jcHA6MTE3
KQo9PTMwODA1PT0gICAgYnkgMHg2NTE4MDQ3OiBXZWJDb3JlOjpEZWRpY2F0ZWRXb3JrZXJDb250
ZXh0OjpEZWRpY2F0ZWRXb3JrZXJDb250ZXh0KFdlYkNvcmU6OktVUkwgY29uc3QmLCBXVEY6OlN0
cmluZyBjb25zdCYsIFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlclRocmVhZCopIChEZWRpY2F0ZWRX
b3JrZXJDb250ZXh0LmNwcDo0NSkKPT0zMDgwNT09ICAgIGJ5IDB4NjdGRkE1QTogV2ViQ29yZTo6
RGVkaWNhdGVkV29ya2VyQ29udGV4dDo6Y3JlYXRlKFdlYkNvcmU6OktVUkwgY29uc3QmLCBXVEY6
OlN0cmluZyBjb25zdCYsIFdlYkNvcmU6OkRlZGljYXRlZFdvcmtlclRocmVhZCopIChEZWRpY2F0
ZWRXb3JrZXJDb250ZXh0Lmg6NDgpCj09MzA4MDU9PSAgICBieSAweDY3RkZDNEU6IFdlYkNvcmU6
OkRlZGljYXRlZFdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyQ29udGV4dChXZWJDb3JlOjpLVVJM
IGNvbnN0JiwgV1RGOjpTdHJpbmcgY29uc3QmKSAoRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcDo1
OSkKPT0zMDgwNT09ICAgIGJ5IDB4NjUyN0NDMjogV2ViQ29yZTo6V29ya2VyVGhyZWFkOjp3b3Jr
ZXJUaHJlYWQoKSAoV29ya2VyVGhyZWFkLmNwcDoxMzEpCj09MzA4MDU9PSAgICBieSAweDY1MjdD
MzM6IFdlYkNvcmU6OldvcmtlclRocmVhZDo6d29ya2VyVGhyZWFkU3RhcnQodm9pZCopIChXb3Jr
ZXJUaHJlYWQuY3BwOjEyNCkKPT0zMDgwNT09ICAgIGJ5IDB4NjkwMzdEMDogV1RGOjp0aHJlYWRF
bnRyeVBvaW50KHZvaWQqKSAoVGhyZWFkaW5nLmNwcDo2NykKPT0zMDgwNT09ICAgIGJ5IDB4NjhG
QzYxODogV1RGOjpUaHJlYWRQcml2YXRlOjpydW4oKSAoVGhyZWFkaW5nUXQuY3BwOjY3KQo9PTMw
ODA1PT0gICAgYnkgMHg5MUM3RkY0OiBRVGhyZWFkUHJpdmF0ZTo6c3RhcnQodm9pZCopIChxdGhy
ZWFkX3VuaXguY3BwOjMzMSkKPT0zMDgwNT09ICAgIGJ5IDB4NEMyQ0YxNjogbXl0aHJlYWRfd3Jh
cHBlciAoaGdfaW50ZXJjZXB0cy5jOjIxOSkKPT0zMDgwNT09ICAgIGJ5IDB4OTZBNTlDOTogc3Rh
cnRfdGhyZWFkIChwdGhyZWFkX2NyZWF0ZS5jOjMwMCkKPT0zMDgwNT09ICAgIGJ5IDB4QTE1MDcw
QzogY2xvbmUgKGNsb25lLlM6MTEyKQo9PTMwODA1PT0gCj09MzA4MDU9PSAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj09MzA4
MDU9PSAKPT0zMDgwNT09IFRocmVhZCAjMTg6IEV4aXRpbmcgdGhyZWFkIHN0aWxsIGhvbGRzIDEg
bG9jawo9PTMwODA1PT0gICAgYXQgMHg0QzJDQjg2OiBwdGhyZWFkX211dGV4X2luaXQgKGhnX2lu
dGVyY2VwdHMuYzo0MjYpCj09MzA4MDU9PSAgICBieSAweDkxQzc3MDk6IFFNdXRleFByaXZhdGU6
OlFNdXRleFByaXZhdGUoUU11dGV4OjpSZWN1cnNpb25Nb2RlKSAocW11dGV4X3VuaXguY3BwOjY4
KQo9PTMwODA1PT0gICAgYnkgMHg5MUMwOEY2OiBRTXV0ZXg6OlFNdXRleChRTXV0ZXg6OlJlY3Vy
c2lvbk1vZGUpIChxbXV0ZXguY3BwOjEyNCkKPT0zMDgwNT09ICAgIGJ5IDB4NEMyOTRDODogUU11
dGV4OjpRTXV0ZXgoUU11dGV4OjpSZWN1cnNpb25Nb2RlKSAoaGdfaW50ZXJjZXB0cy5jOjIxNjEp
Cj09MzA4MDU9PSAgICBieSAweDkxQzU2QjA6IFFQb3N0RXZlbnRMaXN0OjpRUG9zdEV2ZW50TGlz
dCgpIChxdGhyZWFkX3AuaDoxMTApCj09MzA4MDU9PSAgICBieSAweDkxQzNDNkQ6IFFUaHJlYWRE
YXRhOjpRVGhyZWFkRGF0YShpbnQpIChxdGhyZWFkLmNwcDo4MSkKPT0zMDgwNT09ICAgIGJ5IDB4
OTFDN0MzMzogUVRocmVhZERhdGE6OmN1cnJlbnQoKSAocXRocmVhZF91bml4LmNwcDoyMjIpCj09
MzA4MDU9PSAgICBieSAweDkzMTU4MDY6IFFPYmplY3Q6OlFPYmplY3QoUU9iamVjdFByaXZhdGUm
LCBRT2JqZWN0KikgKHFvYmplY3QuY3BwOjc3MykKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNEQ3Nzog
UVRocmVhZDo6UVRocmVhZChRVGhyZWFkUHJpdmF0ZSYsIFFPYmplY3QqKSAocXRocmVhZC5jcHA6
Mzg1KQo9PTMwODA1PT0gICAgYnkgMHg5MUM0MkRFOiBRQWRvcHRlZFRocmVhZDo6UUFkb3B0ZWRU
aHJlYWQoUVRocmVhZERhdGEqKSAocXRocmVhZC5jcHA6MTM3KQo9PTMwODA1PT0gICAgYnkgMHg5
MUM3QzgwOiBRVGhyZWFkRGF0YTo6Y3VycmVudCgpIChxdGhyZWFkX3VuaXguY3BwOjIyNSkKPT0z
MDgwNT09ICAgIGJ5IDB4OTMxNTgwNjogUU9iamVjdDo6UU9iamVjdChRT2JqZWN0UHJpdmF0ZSYs
IFFPYmplY3QqKSAocW9iamVjdC5jcHA6NzczKQo9PTMwODA1PT0gICAgYnkgMHg5MUM0RDc3OiBR
VGhyZWFkOjpRVGhyZWFkKFFUaHJlYWRQcml2YXRlJiwgUU9iamVjdCopIChxdGhyZWFkLmNwcDoz
ODUpCj09MzA4MDU9PSAgICBieSAweDkxQzQyREU6IFFBZG9wdGVkVGhyZWFkOjpRQWRvcHRlZFRo
cmVhZChRVGhyZWFkRGF0YSopIChxdGhyZWFkLmNwcDoxMzcpCj09MzA4MDU9PSAgICBieSAweDkx
QzdDODA6IFFUaHJlYWREYXRhOjpjdXJyZW50KCkgKHF0aHJlYWRfdW5peC5jcHA6MjI1KQo9PTMw
ODA1PT0gICAgYnkgMHg5MzE1ODA2OiBRT2JqZWN0OjpRT2JqZWN0KFFPYmplY3RQcml2YXRlJiwg
UU9iamVjdCopIChxb2JqZWN0LmNwcDo3NzMpCj09MzA4MDU9PSAgICBieSAweDkxQzRENzc6IFFU
aHJlYWQ6OlFUaHJlYWQoUVRocmVhZFByaXZhdGUmLCBRT2JqZWN0KikgKHF0aHJlYWQuY3BwOjM4
NSkKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNDJERTogUUFkb3B0ZWRUaHJlYWQ6OlFBZG9wdGVkVGhy
ZWFkKFFUaHJlYWREYXRhKikgKHF0aHJlYWQuY3BwOjEzNykKPT0zMDgwNT09ICAgIGJ5IDB4OTFD
N0M4MDogUVRocmVhZERhdGE6OmN1cnJlbnQoKSAocXRocmVhZF91bml4LmNwcDoyMjUpCj09MzA4
MDU9PSAgICBieSAweDkzMTU4MDY6IFFPYmplY3Q6OlFPYmplY3QoUU9iamVjdFByaXZhdGUmLCBR
T2JqZWN0KikgKHFvYmplY3QuY3BwOjc3MykKPT0zMDgwNT09ICAgIGJ5IDB4OTFDNEQ3NzogUVRo
cmVhZDo6UVRocmVhZChRVGhyZWFkUHJpdmF0ZSYsIFFPYmplY3QqKSAocXRocmVhZC5jcHA6Mzg1
KQo9PTMwODA1PT0gICAgYnkgMHg5MUM0MkRFOiBRQWRvcHRlZFRocmVhZDo6UUFkb3B0ZWRUaHJl
YWQoUVRocmVhZERhdGEqKSAocXRocmVhZC5jcHA6MTM3KQo9PTMwODA1PT0gICAgYnkgMHg5MUM3
QzgwOiBRVGhyZWFkRGF0YTo6Y3VycmVudCgpIChxdGhyZWFkX3VuaXguY3BwOjIyNSkKPT0zMDgw
NT09ICAgIGJ5IDB4OTMxNTgwNjogUU9iamVjdDo6UU9iamVjdChRT2JqZWN0UHJpdmF0ZSYsIFFP
YmplY3QqKSAocW9iamVjdC5jcHA6NzczKQo9PTMwODA1PT0gICAgYnkgMHg5MUM0RDc3OiBRVGhy
ZWFkOjpRVGhyZWFkKFFUaHJlYWRQcml2YXRlJiwgUU9iamVjdCopIChxdGhyZWFkLmNwcDozODUp
Cj09MzA4MDU9PSAKPT0zMDgwNT09IAo9PTMwODA1PT0gRm9yIGNvdW50cyBvZiBkZXRlY3RlZCBh
bmQgc3VwcHJlc3NlZCBlcnJvcnMsIHJlcnVuIHdpdGg6IC12Cj09MzA4MDU9PSBVc2UgLS1oaXN0
b3J5LWxldmVsPWFwcHJveCBvciA9bm9uZSB0byBnYWluIGluY3JlYXNlZCBzcGVlZCwgYXQKPT0z
MDgwNT09IHRoZSBjb3N0IG9mIHJlZHVjZWQgYWNjdXJhY3kgb2YgY29uZmxpY3RpbmctYWNjZXNz
IGluZm9ybWF0aW9uCj09MzA4MDU9PSBFUlJPUiBTVU1NQVJZOiAzNzY2IGVycm9ycyBmcm9tIDEx
NSBjb250ZXh0cyAoc3VwcHJlc3NlZDogMTM1ODYgZnJvbSAyOTYpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114733</attachid>
            <date>2011-11-11 10:59:56 -0800</date>
            <delta_ts>2011-11-11 12:22:55 -0800</delta_ts>
            <desc>fix for static local race condition </desc>
            <filename>static_local_race.diff</filename>
            <type>text/plain</type>
            <size>2291</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGEyMTVkNjIuLjhlMDg3MjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTExLTExICBBbmRyZXcgV2Fzb24g
IDxyZWN0YWxvZ2ljQHJlY3RhbG9naWMuY29tPgorCisgICAgICAgIEFwcGFyZW50IHRocmVhZGlu
ZyBidWcgY2F1c2VzIGludGVybWl0dGVudCBzZWdmYXVsdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNzE4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxsb2NhdGUgc3RhdGljIGxvY2FscyBvbiB0aGUg
aGVhcCB0byBwcmV2ZW50IHJhY2UgY29uZGl0aW9uIGJldHdlZW4KKyAgICAgICAgdGhlaXIgZGVz
dHJ1Y3RvcnMgYXQgcHJvY2VzcyBleGl0LCBhbmQgb3V0c3RhbmRpbmcgV29ya2VyVGhyZWFkcwor
ICAgICAgICB3aGljaCBhcmUgaW4gdGhlIHByb2Nlc3Mgb2YgZmluaXNoaW5nLgorCisgICAgICAg
ICogd3RmL3F0L1RocmVhZGluZ1F0LmNwcDoKKyAgICAgICAgKFdURjo6dGhyZWFkTWFwTXV0ZXgp
OgorICAgICAgICAoV1RGOjp0aHJlYWRNYXApOgorICAgICAgICAoV1RGOjppZGVudGlmaWVyQnlR
dGhyZWFkSGFuZGxlKToKKyAgICAgICAgKFdURjo6aW5pdGlhbGl6ZVRocmVhZGluZyk6CisKIDIw
MTEtMTEtMTAgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQuIEZpeCBtYWtlIGRpc3RjaGVjayBidWlsZC4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdRdC5jcHAKaW5kZXggNDYzMWI3Yy4uMmVmZTli
MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdRdC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdRdC5jcHAKQEAg
LTgzLDE3ICs4MywxOSBAQCBwdWJsaWMgUV9TTE9UUzoKICAgICB9CiB9OwogCit0eXBlZGVmIEhh
c2hNYXA8VGhyZWFkSWRlbnRpZmllciwgUVRocmVhZCo+IFRocmVhZE1hcDsKKwogc3RhdGljIE11
dGV4KiBhdG9taWNhbGx5SW5pdGlhbGl6ZWRTdGF0aWNNdXRleDsKIAogc3RhdGljIE11dGV4JiB0
aHJlYWRNYXBNdXRleCgpCiB7Ci0gICAgc3RhdGljIE11dGV4IG11dGV4OworICAgIERFRklORV9T
VEFUSUNfTE9DQUwoTXV0ZXgsIG11dGV4LCAoKSk7CiAgICAgcmV0dXJuIG11dGV4OwogfQogCi1z
dGF0aWMgSGFzaE1hcDxUaHJlYWRJZGVudGlmaWVyLCBRVGhyZWFkKj4mIHRocmVhZE1hcCgpCitz
dGF0aWMgVGhyZWFkTWFwJiB0aHJlYWRNYXAoKQogewotICAgIHN0YXRpYyBIYXNoTWFwPFRocmVh
ZElkZW50aWZpZXIsIFFUaHJlYWQqPiBtYXA7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChUaHJl
YWRNYXAsIG1hcCwgKCkpOwogICAgIHJldHVybiBtYXA7CiB9CiAKQEAgLTEwMSw3ICsxMDMsNyBA
QCBzdGF0aWMgVGhyZWFkSWRlbnRpZmllciBpZGVudGlmaWVyQnlRdGhyZWFkSGFuZGxlKFFUaHJl
YWQqJiB0aHJlYWQpCiB7CiAgICAgTXV0ZXhMb2NrZXIgbG9ja2VyKHRocmVhZE1hcE11dGV4KCkp
OwogCi0gICAgSGFzaE1hcDxUaHJlYWRJZGVudGlmaWVyLCBRVGhyZWFkKj46Oml0ZXJhdG9yIGkg
PSB0aHJlYWRNYXAoKS5iZWdpbigpOworICAgIFRocmVhZE1hcDo6aXRlcmF0b3IgaSA9IHRocmVh
ZE1hcCgpLmJlZ2luKCk7CiAgICAgZm9yICg7IGkgIT0gdGhyZWFkTWFwKCkuZW5kKCk7ICsraSkg
ewogICAgICAgICBpZiAoaS0+c2Vjb25kID09IHRocmVhZCkKICAgICAgICAgICAgIHJldHVybiBp
LT5maXJzdDsKQEAgLTE0Nyw2ICsxNDksNyBAQCB2b2lkIGluaXRpYWxpemVUaHJlYWRpbmcoKQog
ICAgICAgICBTdHJpbmdJbXBsOjplbXB0eSgpOwogICAgICAgICBhdG9taWNhbGx5SW5pdGlhbGl6
ZWRTdGF0aWNNdXRleCA9IG5ldyBNdXRleDsKICAgICAgICAgdGhyZWFkTWFwTXV0ZXgoKTsKKyAg
ICAgICAgdGhyZWFkTWFwKCk7CiAgICAgICAgIGluaXRpYWxpemVSYW5kb21OdW1iZXJHZW5lcmF0
b3IoKTsKICAgICAgICAgd3RmVGhyZWFkRGF0YSgpOwogICAgICAgICBzX2R0b2FQNU11dGV4ID0g
bmV3IE11dGV4Owo=
</data>
<flag name="review"
          id="113460"
          type_id="1"
          status="+"
          setter="ap"
    />
    <flag name="commit-queue"
          id="113461"
          type_id="3"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114752</attachid>
            <date>2011-11-11 12:22:55 -0800</date>
            <delta_ts>2011-11-21 14:53:47 -0800</delta_ts>
            <desc>do not change initializeThreading</desc>
            <filename>static_local_race.diff</filename>
            <type>text/plain</type>
            <size>1967</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGEyMTVkNjIuLmY5MjEzNjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDExLTExLTExICBBbmRyZXcgV2Fzb24g
IDxyZWN0YWxvZ2ljQHJlY3RhbG9naWMuY29tPgorCisgICAgICAgIEFwcGFyZW50IHRocmVhZGlu
ZyBidWcgY2F1c2VzIGludGVybWl0dGVudCBzZWdmYXVsdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNzE4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxsb2NhdGUgc3RhdGljIGxvY2FscyBvbiB0aGUg
aGVhcCB0byBwcmV2ZW50IHJhY2UgY29uZGl0aW9uIGJldHdlZW4KKyAgICAgICAgdGhlaXIgZGVz
dHJ1Y3RvcnMgYXQgcHJvY2VzcyBleGl0LCBhbmQgb3V0c3RhbmRpbmcgV29ya2VyVGhyZWFkcwor
ICAgICAgICB3aGljaCBhcmUgaW4gdGhlIHByb2Nlc3Mgb2YgZmluaXNoaW5nLgorCisgICAgICAg
ICogd3RmL3F0L1RocmVhZGluZ1F0LmNwcDoKKyAgICAgICAgKFdURjo6dGhyZWFkTWFwTXV0ZXgp
OgorICAgICAgICAoV1RGOjp0aHJlYWRNYXApOgorICAgICAgICAoV1RGOjppZGVudGlmaWVyQnlR
dGhyZWFkSGFuZGxlKToKKwogMjAxMS0xMS0xMCAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2Fy
Y2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gRml4IG1ha2UgZGlzdGNoZWNr
IGJ1aWxkLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRp
bmdRdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGluZ1F0LmNwcApp
bmRleCA0NjMxYjdjLi5jMWFlM2E4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d3RmL3F0L1RocmVhZGluZ1F0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3F0
L1RocmVhZGluZ1F0LmNwcApAQCAtODMsMTcgKzgzLDE5IEBAIHB1YmxpYyBRX1NMT1RTOgogICAg
IH0KIH07CiAKK3R5cGVkZWYgSGFzaE1hcDxUaHJlYWRJZGVudGlmaWVyLCBRVGhyZWFkKj4gVGhy
ZWFkTWFwOworCiBzdGF0aWMgTXV0ZXgqIGF0b21pY2FsbHlJbml0aWFsaXplZFN0YXRpY011dGV4
OwogCiBzdGF0aWMgTXV0ZXgmIHRocmVhZE1hcE11dGV4KCkKIHsKLSAgICBzdGF0aWMgTXV0ZXgg
bXV0ZXg7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChNdXRleCwgbXV0ZXgsICgpKTsKICAgICBy
ZXR1cm4gbXV0ZXg7CiB9CiAKLXN0YXRpYyBIYXNoTWFwPFRocmVhZElkZW50aWZpZXIsIFFUaHJl
YWQqPiYgdGhyZWFkTWFwKCkKK3N0YXRpYyBUaHJlYWRNYXAmIHRocmVhZE1hcCgpCiB7Ci0gICAg
c3RhdGljIEhhc2hNYXA8VGhyZWFkSWRlbnRpZmllciwgUVRocmVhZCo+IG1hcDsKKyAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKFRocmVhZE1hcCwgbWFwLCAoKSk7CiAgICAgcmV0dXJuIG1hcDsKIH0K
IApAQCAtMTAxLDcgKzEwMyw3IEBAIHN0YXRpYyBUaHJlYWRJZGVudGlmaWVyIGlkZW50aWZpZXJC
eVF0aHJlYWRIYW5kbGUoUVRocmVhZComIHRocmVhZCkKIHsKICAgICBNdXRleExvY2tlciBsb2Nr
ZXIodGhyZWFkTWFwTXV0ZXgoKSk7CiAKLSAgICBIYXNoTWFwPFRocmVhZElkZW50aWZpZXIsIFFU
aHJlYWQqPjo6aXRlcmF0b3IgaSA9IHRocmVhZE1hcCgpLmJlZ2luKCk7CisgICAgVGhyZWFkTWFw
OjppdGVyYXRvciBpID0gdGhyZWFkTWFwKCkuYmVnaW4oKTsKICAgICBmb3IgKDsgaSAhPSB0aHJl
YWRNYXAoKS5lbmQoKTsgKytpKSB7CiAgICAgICAgIGlmIChpLT5zZWNvbmQgPT0gdGhyZWFkKQog
ICAgICAgICAgICAgcmV0dXJuIGktPmZpcnN0Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>