<?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>153070</bug_id>
          
          <creation_ts>2016-01-13 10:36:41 -0800</creation_ts>
          <short_desc>[iOS Simulator WK1] ASSERT loading Blink layout test imported/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-idl.html</short_desc>
          <delta_ts>2016-01-18 19:28:41 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jiewen Tan">jiewen_tan</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>aestes</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>joepeck</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1155121</commentid>
    <comment_count>0</comment_count>
      <attachid>268878</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-01-13 10:36:41 -0800</bug_when>
    <thetext>Created attachment 268878
crashing testcase

The test case will fail on Mac WK1 and crash on iOS-simulator WK1.
Crashed Thread:        3  WebThread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x00000000bbadbeef
Exception Note:        EXC_CORPSE_NOTIFY

VM Regions Near 0xbbadbeef:
--&gt; 
    __TEXT                 000000010d87e000-000000010d908000 [  552K] r-x/rwx SM=COW  /Users/USER/Library/Developer/CoreSimulator/Devices/491C435D-8C4D-4379-B905-BC329B464D0B/data/Containers/Bundle/Application/046F0D29-59B8-4C57-A14D-2C3AB962F1DB/DumpRenderTree0.app/DumpRenderTree

Application Specific Information:
CRASHING TEST: 150195/mediastream-idl.html
CoreSimulator 201.3 - Device: iPhone 5s WebKit Tester0 - Runtime: iOS 9.2 (13D11) - DeviceType: iPhone 5s

Thread 0:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x000000011e2e7386 mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x000000011e2e67c7 mach_msg + 55
2   com.apple.CoreFoundation      	0x000000010e391b64 __CFRunLoopServiceMachPort + 212
3   com.apple.CoreFoundation      	0x000000010e390fbf __CFRunLoopRun + 1295
4   com.apple.CoreFoundation      	0x000000010e390828 CFRunLoopRunSpecific + 488
5   DumpRenderTree                	0x000000010d8917a2 runTest(std::__1::basic_string&lt;char, std::__1::char_traits&lt;char&gt;, std::__1::allocator&lt;char&gt; &gt; const&amp;) + 6498 (DumpRenderTree.mm:2039)
6   DumpRenderTree                	0x000000010d88fdd3 runTestingServerLoop() + 323 (DumpRenderTree.mm:1189)
7   DumpRenderTree                	0x000000010d88f557 dumpRenderTree(int, char const**) + 823 (DumpRenderTree.mm:1298)
8   DumpRenderTree                	0x000000010d892092 -[DumpRenderTree _runDumpRenderTree] + 34 (DumpRenderTree.mm:1337)
9   com.apple.Foundation          	0x000000010ea7c067 __NSThreadPerformPerform + 283
10  com.apple.CoreFoundation      	0x000000010e39ba31 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
11  com.apple.CoreFoundation      	0x000000010e3918d7 __CFRunLoopDoSources0 + 423
12  com.apple.CoreFoundation      	0x000000010e390e13 __CFRunLoopRun + 867
13  com.apple.CoreFoundation      	0x000000010e390828 CFRunLoopRunSpecific + 488
14  com.apple.GraphicsServices    	0x000000010ee9bad2 GSEventRunModal + 161
15  com.apple.UIKit               	0x000000010f439610 UIApplicationMain + 171
16  DumpRenderTree                	0x000000010d8928f9 DumpRenderTreeMain(int, char const**) + 137 (DumpRenderTree.mm:1433)
17  DumpRenderTree                	0x000000010d8e2032 main + 34 (DumpRenderTreeAppMain.mm:32)
18  libdyld.dylib                 	0x000000011dfad92d start + 1

Thread 1:: Dispatch queue: com.apple.libdispatch-manager
0   libsystem_kernel.dylib        	0x000000011e2edfde kevent64 + 10
1   libdispatch.dylib             	0x000000011df6e8c0 _dispatch_mgr_invoke + 260
2   libdispatch.dylib             	0x000000011df6e65a _dispatch_mgr_thread + 54

Thread 2:
0   libsystem_kernel.dylib        	0x000000011e2ed206 __semwait_signal + 10
1   libsystem_c.dylib             	0x000000011e074cab nanosleep + 199
2   libc++.1.dylib                	0x000000011db12100 std::__1::this_thread::sleep_for(std::__1::chrono::duration&lt;long long, std::__1::ratio&lt;1l, 1000000000l&gt; &gt; const&amp;) + 75
3   JavaScriptCore                	0x0000000119543bd6 void std::__1::this_thread::sleep_for&lt;long long, std::__1::ratio&lt;1l, 1000l&gt; &gt;(std::__1::chrono::duration&lt;long long, std::__1::ratio&lt;1l, 1000l&gt; &gt; const&amp;) + 1782 (thread:433)
4   JavaScriptCore                	0x0000000119540753 bmalloc::sleep(std::__1::unique_lock&lt;bmalloc::StaticMutex&gt;&amp;, std::__1::chrono::duration&lt;long long, std::__1::ratio&lt;1l, 1000l&gt; &gt;) + 195 (StaticMutex.h:65)
5   JavaScriptCore                	0x00000001195404ad bmalloc::waitUntilFalse(std::__1::unique_lock&lt;bmalloc::StaticMutex&gt;&amp;, std::__1::chrono::duration&lt;long long, std::__1::ratio&lt;1l, 1000l&gt; &gt;, bool&amp;) + 61 (StaticMutex.h:72)
6   JavaScriptCore                	0x0000000119540409 bmalloc::Heap::scavenge(std::__1::unique_lock&lt;bmalloc::StaticMutex&gt;&amp;, std::__1::chrono::duration&lt;long long, std::__1::ratio&lt;1l, 1000l&gt; &gt;) + 73 (Heap.cpp:92)
7   JavaScriptCore                	0x000000011953fe98 bmalloc::Heap::concurrentScavenge() + 104 (Heap.cpp:85)
8   JavaScriptCore                	0x0000000119545a32 bmalloc::AsyncTask&lt;bmalloc::Heap, void (bmalloc::Heap::*)()&gt;::threadRunLoop() + 1298 (AsyncTask.h:145)
9   JavaScriptCore                	0x00000001195454e5 bmalloc::AsyncTask&lt;bmalloc::Heap, void (bmalloc::Heap::*)()&gt;::threadEntryPoint(bmalloc::AsyncTask&lt;bmalloc::Heap, void (bmalloc::Heap::*)()&gt;*) + 21 (AsyncTask.h:128)
10  JavaScriptCore                	0x0000000119547772 void* std::__1::__thread_proxy&lt;std::__1::tuple&lt;void (*)(bmalloc::AsyncTask&lt;bmalloc::Heap, void (bmalloc::Heap::*)()&gt;*), bmalloc::AsyncTask&lt;bmalloc::Heap, void (bmalloc::Heap::*)()&gt;*&gt; &gt;(void*) + 418 (__functional_base:415)
11  libsystem_pthread.dylib       	0x000000011e2b1c13 _pthread_body + 131
12  libsystem_pthread.dylib       	0x000000011e2b1b90 _pthread_start + 168
13  libsystem_pthread.dylib       	0x000000011e2af375 thread_start + 13

Thread 3 Crashed:: WebThread
0   JavaScriptCore                	0x00000001194c1f77 WTFCrash + 39 (Assertions.cpp:321)
1   JavaScriptCore                	0x000000011950a679 WTF::RunLoop::main() + 57 (RunLoop.cpp:65)
2   com.apple.WebCore             	0x000000011212892d WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource() + 397 (MockRealtimeVideoSource.cpp:60)
3   com.apple.WebCore             	0x000000011212c32c WebCore::MockRealtimeVideoSourceMac::MockRealtimeVideoSourceMac() + 28 (MockRealtimeVideoSourceMac.mm:54)
4   com.apple.WebCore             	0x000000011212c305 WebCore::MockRealtimeVideoSourceMac::MockRealtimeVideoSourceMac() + 21 (MockRealtimeVideoSourceMac.mm:55)
5   com.apple.WebCore             	0x000000011212c278 WebCore::MockRealtimeVideoSource::create() + 56 (MockRealtimeVideoSourceMac.mm:49)
6   com.apple.WebCore             	0x0000000112124dbc WebCore::MockRealtimeMediaSourceCenter::validateRequestConstraints(WebCore::MediaStreamCreationClient*, WTF::RefPtr&lt;WebCore::MediaConstraints&gt;&amp;, WTF::RefPtr&lt;WebCore::MediaConstraints&gt;&amp;) + 428 (MockRealtimeMediaSourceCenter.cpp:95)
7   com.apple.WebCore             	0x0000000112bba262 WebCore::UserMediaRequest::start() + 82 (UserMediaRequest.cpp:121)
8   com.apple.WebCore             	0x0000000112bba08d WebCore::UserMediaRequest::start(WebCore::Document*, WebCore::Dictionary const&amp;, WebCore::DOMPromise&lt;WTF::RefPtr&lt;WebCore::MediaStream&gt;, WTF::RefPtr&lt;WebCore::NavigatorUserMediaError&gt; &gt;&amp;&amp;, int&amp;) + 557 (UserMediaRequest.cpp:92)
9   com.apple.WebCore             	0x0000000111fcc04a WebCore::MediaDevices::getUserMedia(WebCore::Dictionary const&amp;, WebCore::DOMPromise&lt;WTF::RefPtr&lt;WebCore::MediaStream&gt;, WTF::RefPtr&lt;WebCore::NavigatorUserMediaError&gt; &gt;&amp;&amp;, int&amp;) const + 74 (MediaDevices.cpp:69)
10  com.apple.WebCore             	0x0000000111b71328 WebCore::jsMediaDevicesPrototypeFunctionGetUserMediaFromJSPromise(JSC::ExecState*, JSC::JSPromiseDeferred*) + 712 (JSMediaDevices.cpp:167)
11  com.apple.WebCore             	0x0000000111865977 WebCore::callPromiseFunction(JSC::ExecState&amp;, long long (*)(JSC::ExecState*, JSC::JSPromiseDeferred*)) + 71 (JSDOMPromise.h:65)
12  com.apple.WebCore             	0x0000000111b70cbc WebCore::jsMediaDevicesPrototypeFunctionGetUserMediaFromJS(JSC::ExecState*) + 28 (JSMediaDevices.cpp:150)
13  ???                           	0x0000039f740ee028 0 + 3983381815336
14  JavaScriptCore                	0x00000001191fbd33 llint_entry + 26847
15  JavaScriptCore                	0x00000001191fbd33 llint_entry + 26847
16  JavaScriptCore                	0x00000001191fc17b llint_entry + 27943
17  JavaScriptCore                	0x00000001191fbd33 llint_entry + 26847
18  JavaScriptCore                	0x00000001191f523e vmEntryToJavaScript + 334
19  JavaScriptCore                	0x000000011902c9d5 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 213 (JITCode.cpp:80)
20  JavaScriptCore                	0x0000000118ff7a07 JSC::Interpreter::execute(JSC::ProgramExecutable*, JSC::ExecState*, JSC::JSObject*) + 4471 (Interpreter.cpp:973)
21  JavaScriptCore                	0x0000000118b23a11 JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 465 (Completion.cpp:105)
22  com.apple.WebCore             	0x0000000111b669f5 WebCore::JSMainThreadExecState::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 69 (JSMainThreadExecState.h:62)
23  com.apple.WebCore             	0x00000001126ac7f1 WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&amp;, WebCore::DOMWrapperWorld&amp;, WebCore::ExceptionDetails*) + 321 (ScriptController.cpp:164)
24  com.apple.WebCore             	0x00000001126ac94c WebCore::ScriptController::evaluate(WebCore::ScriptSourceCode const&amp;, WebCore::ExceptionDetails*) + 76 (ScriptController.cpp:180)
25  com.apple.WebCore             	0x00000001126bb485 WebCore::ScriptElement::executeScript(WebCore::ScriptSourceCode const&amp;) + 485 (ScriptElement.cpp:310)
26  com.apple.WebCore             	0x00000001126ba373 WebCore::ScriptElement::prepareScript(WTF::TextPosition const&amp;, WebCore::ScriptElement::LegacyTypeSupport) + 1731 (ScriptElement.cpp:241)
27  com.apple.WebCore             	0x0000000111529c50 WebCore::HTMLScriptRunner::runScript(WebCore::Element*, WTF::TextPosition const&amp;) + 352 (HTMLScriptRunner.cpp:304)
28  com.apple.WebCore             	0x0000000111529a69 WebCore::HTMLScriptRunner::execute(WTF::PassRefPtr&lt;WebCore::Element&gt;, WTF::TextPosition const&amp;) + 137 (HTMLScriptRunner.cpp:177)
29  com.apple.WebCore             	0x00000001114598c0 WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder() + 288 (HTMLDocumentParser.cpp:195)
30  com.apple.WebCore             	0x00000001114599c1 WebCore::HTMLDocumentParser::canTakeNextToken(WebCore::HTMLDocumentParser::SynchronousMode, WebCore::PumpSession&amp;) + 177 (HTMLDocumentParser.cpp:214)
31  com.apple.WebCore             	0x0000000111458d51 WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode) + 385 (HTMLDocumentParser.cpp:252)
32  com.apple.WebCore             	0x0000000111458999 WebCore::HTMLDocumentParser::pumpTokenizerIfPossible(WebCore::HTMLDocumentParser::SynchronousMode) + 169 (HTMLDocumentParser.cpp:167)
33  com.apple.WebCore             	0x000000011145a9d6 WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution() + 374 (HTMLDocumentParser.cpp:488)
34  com.apple.WebCore             	0x000000011145adda WebCore::HTMLDocumentParser::notifyFinished(WebCore::CachedResource*) + 314 (HTMLDocumentParser.cpp:528)
35  com.apple.WebCore             	0x000000011145ae1f non-virtual thunk to WebCore::HTMLDocumentParser::notifyFinished(WebCore::CachedResource*) + 47 (HTMLDocumentParser.cpp:512)
36  com.apple.WebCore             	0x0000000110b8fa42 WebCore::CachedResource::checkNotify() + 130 (CachedResource.cpp:295)
37  com.apple.WebCore             	0x0000000110b8fb51 WebCore::CachedResource::finishLoading(WebCore::SharedBuffer*) + 49 (CachedResource.cpp:313)
38  com.apple.WebCore             	0x0000000110bae31e WebCore::CachedScript::finishLoading(WebCore::SharedBuffer*) + 126 (CachedScript.cpp:117)
39  com.apple.WebCore             	0x00000001128fb655 WebCore::SubresourceLoader::didFinishLoading(double) + 517 (SubresourceLoader.cpp:374)
40  com.apple.WebCore             	0x0000000112629f65 WebCore::ResourceLoader::didFinishLoading(WebCore::ResourceHandle*, double) + 53 (ResourceLoader.cpp:638)
41  com.apple.WebCore             	0x0000000112a5df4c WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didFinishLoading() + 236 (SynchronousResourceHandleCFURLConnectionDelegate.cpp:208)
42  com.apple.WebCore             	0x00000001126240cd WebCore::ResourceHandleCFURLConnectionDelegate::didFinishLoadingCallback(_CFURLConnection*, void const*) + 29 (ResourceHandleCFURLConnectionDelegate.cpp:88)
43  com.apple.CFNetwork           	0x000000010df02fbe ___ZN27URLConnectionClient_Classic26_delegate_didFinishLoadingEU13block_pointerFvvE_block_invoke + 104
44  com.apple.CFNetwork           	0x000000010dff0965 ___ZN27URLConnectionClient_Classic18_withDelegateAsyncEPKcU13block_pointerFvP16_CFURLConnectionPK33CFURLConnectionClientCurrent_VMaxE_block_invoke_2 + 100
45  libdispatch.dylib             	0x000000011df7e4a7 _dispatch_client_callout + 8
46  libdispatch.dylib             	0x000000011df65223 _dispatch_block_invoke + 408
47  com.apple.CFNetwork           	0x000000010deef1ac RunloopBlockContext::_invoke_block(void const*, void*) + 24
48  com.apple.CoreFoundation      	0x000000010e36eee4 CFArrayApplyFunction + 68
49  com.apple.CFNetwork           	0x000000010deef0a5 RunloopBlockContext::perform() + 137
50  com.apple.CFNetwork           	0x000000010deeef5e MultiplexerSource::perform() + 282
51  com.apple.CFNetwork           	0x000000010deeed80 MultiplexerSource::_perform(void*) + 72
52  com.apple.CoreFoundation      	0x000000010e39ba31 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
53  com.apple.CoreFoundation      	0x000000010e39195c __CFRunLoopDoSources0 + 556
54  com.apple.CoreFoundation      	0x000000010e390e13 __CFRunLoopRun + 867
55  com.apple.CoreFoundation      	0x000000010e390828 CFRunLoopRunSpecific + 488
56  com.apple.WebCore             	0x0000000112c3c790 RunWebThread(void*) + 752 (WebCoreThread.mm:691)
57  libsystem_pthread.dylib       	0x000000011e2b1c13 _pthread_body + 131
58  libsystem_pthread.dylib       	0x000000011e2b1b90 _pthread_start + 168
59  libsystem_pthread.dylib       	0x000000011e2af375 thread_start + 13</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1155372</commentid>
    <comment_count>1</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-01-13 22:25:02 -0800</bug_when>
    <thetext>&lt;rdar://problem/24183105&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1155457</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-01-14 08:38:05 -0800</bug_when>
    <thetext>Assert happens when creating a runloop timer on the Web thread. Assert is:

RunLoop&amp; RunLoop::main()
{
    ASSERT(s_mainRunLoop);
    return *s_mainRunLoop;
}

Is it not possible to use a runloop timer on the WebThread?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1155497</commentid>
    <comment_count>3</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2016-01-14 11:28:49 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Assert happens when creating a runloop timer on the Web thread. Assert is:
&gt; 
&gt; RunLoop&amp; RunLoop::main()
&gt; {
&gt;     ASSERT(s_mainRunLoop);
&gt;     return *s_mainRunLoop;
&gt; }
&gt; 
&gt; Is it not possible to use a runloop timer on the WebThread?

I think it is possible, but there may be a &quot;special&quot; way to do it.  (And I remember their being caveats, but not exactly what they were.)

This is stating the obvious (probably not helpful), but you want to use a WebThread runloop, not a main thread runloop, if you&apos;re going to spin it on the WebThread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1155574</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-01-14 14:14:30 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Assert happens when creating a runloop timer on the Web thread. Assert is:
&gt; &gt; 
&gt; &gt; RunLoop&amp; RunLoop::main()
&gt; &gt; {
&gt; &gt;     ASSERT(s_mainRunLoop);
&gt; &gt;     return *s_mainRunLoop;
&gt; &gt; }
&gt; &gt; 
&gt; &gt; Is it not possible to use a runloop timer on the WebThread?
&gt; 
&gt; I think it is possible, but there may be a &quot;special&quot; way to do it.  (And I
&gt; remember their being caveats, but not exactly what they were.)
&gt; 
&gt; This is stating the obvious (probably not helpful), but you want to use a
&gt; WebThread runloop, not a main thread runloop, if you&apos;re going to spin it on
&gt; the WebThread.

Of course, I should be passing &quot;RunLoop::current()&quot; instead of &quot;RunLoop::main()&quot; to the timer constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1156222</commentid>
    <comment_count>5</comment_count>
      <attachid>269179</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-01-16 13:59:11 -0800</bug_when>
    <thetext>Created attachment 269179
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1156507</commentid>
    <comment_count>6</comment_count>
      <attachid>269179</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-01-18 18:40:57 -0800</bug_when>
    <thetext>Comment on attachment 269179
Proposed patch.

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

&gt; Source/WebCore/ChangeLog:13
&gt; +        (WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource): Create the timer with RunLoop::current
&gt; +          instead of RunLoop::main.

Why?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1156523</commentid>
    <comment_count>7</comment_count>
      <attachid>269179</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-18 19:28:37 -0800</bug_when>
    <thetext>Comment on attachment 269179
Proposed patch.

Clearing flags on attachment: 269179

Committed r195244: &lt;http://trac.webkit.org/changeset/195244&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1156524</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-18 19:28:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>268878</attachid>
            <date>2016-01-13 10:36:41 -0800</date>
            <delta_ts>2016-01-13 10:36:41 -0800</delta_ts>
            <desc>crashing testcase</desc>
            <filename>150195.tar.gz</filename>
            <type>application/x-gzip</type>
            <size>24721</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">H4sIACNnMVYAA+29XXfbOLYoWDNrzZo1eZ95Zth9W3JFlvyRVHUpcWpciavLp5M4J3a6uq/jq0NJ
lMWKRKpJyrI75R8w/2Ae53/M4/yx2R8ACYAAKTlJdZ97w1oV2ySwAWxs7C9sbOw+2tn97lHvq8/5
7OzsfPvokUc/v92hnzt7D/mneLzdvW92H+59A//ueju7+7uPvvnKe/RZeyWeZZYHKXTll2kShzej
ZZ7by0GxyaQGjhhH8fM/ybPL898dzMNxFGR5Ggbz7Wg8607z+ewTtQH4+ObhQ/f87327X87//rcw
/9/u7z/8ytv5RO3XPv+Dz/9X/8v/8b9+9T9/9dXLYOSdnHp/9cSD77763+D/Pfj//4L/8e//dz2Q
h2dnb8SvWOP/hv9/ZxT5n8r3//somXfnwShN5kEeZt1RkIb5Vx/uYS9GyWw5j70Db3f/Mb2YRXEI
f+7tPb53+wkG/+UR6/8zrv7G9f/No4d75vrf3fuy/n+T58n9cTLKbxahh1P+9N4T+SMMxvAjj/JZ
+PQlUscpUQcsyRjoZDnKk9QLZpdJGuXT+ZMeF7z3BBboey8NZwd+sMynSep79OXAf57Mozj6+zL0
fgr+EYSz7ZdBlkXh8tr3pmk4OfDnQTTLk/44mf+fq/1ukl76PQ3eNJwtZNlpni/6vd44vOpy2d7e
zu5ubxUO03zUg95C73qXYb7MwpRImwj6d0DZ2+Nwsq2Mx//UbaywEaUBWE6fvA1ltX5y2OFVGOfb
Kj8I43H46cdg4uksDUbvt7M8WWxfJZ8BZ/b2RjNY9ZXXWuOtLL+Zhdk0DPMWd6GVhlmyTEdh1gOB
lU+DNA4zEFxZ1vKoxYNWMJu1kHx7Yh0Nk/EN/Fh4oxmQ/YEfiUUUwWryPWrhwB9H2WIW3PRj6JP/
9OdpGHsLkIqLPBx3vGA0Che5lydeBg2G3g30wLuKxmHiBfHYC5bjCD7RGLpPegtcwrsbtPY8zEZp
tMAi0OndDft6No0yD3Hhjabh6D38Pg2gr9PQc7COe5NkNktWGZUp2IiXhbkXxfQyW4QjHsi9J+Po
yovGB61Zctl6+qQHf0L/uL9elo4O7PPxSwZludQaxdNwkaS5u5Jf1oIVMk7S7QXQQnQNNXxvHOSB
+DscbyfDX8JRnh20zj/4QQw1YMCZ3z/34+AqugzgL/+i48Ff89Dv+0Cqb4FUCVH+bceosoqgrZVa
XmVetxetanef3rsKUi8HNSnIbuLRAAfZ9s/gXzEvgWtWvLVmxe94H/JoHibLvO/torS73Xp8L+9m
ebhoT5YxUUp7y0MVrhhxVx1m+wMRbt+DdsMO024ff7/teAxngHAKYF6bCZtheh6Oj9/swijjcKUO
qL3FqiLQbpjmgzjJB+Hfl8EsE0C6EawmUZt+989WiTeOJpMwBdangsq8aXAVKt+iceYL8GUf9ix9
EP1duyd73JND+8yEY28CjAAWegKTkDb0itBJfAyxI5oC9B8W77P21vnORVmDZoO+aBX+UrxWK4jR
iJEojZVjsTS2/uCYvRGxAcELxpYTW96y9aDsvNYBs/N37gDzWK0D5dw/tMz9uYKTC2uXRV3sJhX7
4eZ4rGISiGGr42mo9QMPWC3LYu6MB7UzLxjji6soqOO22G8LeSDhqq2SMCyWT1msC40coVrwIoK1
GYdp22edwLVa5TpVMbVfj6m9jkKFEmt2vO278LbHeIuXsxkiLPZUbI2TMItbOWJtfaSt3Ymy79wH
lSg/auo81Me8aEJlQMJcRckyE1BWQcZDLLta4vtRA74LHIvRIfsVY3vUJajUc61b8C+ulmUWxZdm
p2HS1W6vpkkGize9XM6BcGCwsKRmEYqgZOKZ+pYnJKYQTykKn5knOmEih8t6L9+ennnDsOjUCkSV
F+UCI16Q52k0XOYhSa88IVFT4invjhVav4UZm8DchhbaR42Uy1EpKd7CNE1SoHMUffi/IoV7Qtnr
sSn1TzbwGh5h/5fKzWdoYwP/7/7uPvp/H+1+88X/+5s8lfk3LJpP0UaD/2d/5+G3OP873+7v7cIf
3s4efP7mi//nt3iQRwlpPUnA8J8E82h2038e/hL8ZemdBnHW8X4Atsq89y9hGoiXh2kUgJjFP4AD
3rv3OzDOvO4KKAeEQ0f/EywObGKUzJK07w1nwFiRoQ7h52WaLONx37sJ0fJQIBGD7ah/6FBW0ygP
TShpOCYQWUhc+nfZcj4P0hsxQPj1Moq3h0meJ/P+bjinsnkwnIW/gwWwnIH04JLDJB2H6TY0NQsW
WdiXv7B4oBrbYP2iBUQmH79fReN82geL6L9YAMOXSZRm+fZoGs3GHfPrWP0qesHwHlr7CR/AOndD
Kz9qwB7Z+tZlFQDt+1q4WjlnE/uP7MMXhRag9gBJ9Hceq3/KSdnpPsLhKnMgPqBfZQmmaDKLxpKC
qo2MjUZ2JbB1m8mnYOhWGkm7Cxi699Q+TUyQl2kYxrL4JIhm9cUlpUJhYUuvXR7MlHQZ1xcfzpYh
lbf3vOPZuwjvXb2BT/UNE/sA/TMK4ryfzUGD2x7BmrFMU7YA3ZwrSTfScJZYZxSLdsPrRUhmWi2f
8l4mcWJlVuIL/gvwRmIVEwPZphd9UKxdjQejHNT+z980NZa8d9MU80AbTVBVOW/OAgnax0pJ8ZcK
1j2F/2wx9eX5TE+t/vfLJ1H/6vW/vW9BYO6Z+t/Otztf9L/f4ul9fTlLhsDgsnA2+bp3r/f1LxnI
wNyboVUdTvpenKDRS5/uPQcLns3qsQcKV5iC+ATJjib6z/vPPPQxe6dLYG7ei2gUxlnone9e0P6E
KHJvf3s0C5bw4YfT52WhvYuud5agA0Fa7WCxBwZMYFgh+eXuLUBAj6IwI8hFJXQ9TZJ0nnnn+xfd
e/ewabFZtFqt5GbRM9BeElBilvPei/AymPWA2P7Y23m4jYSfYTvbM+7WPejW+gD2t4fZuKy6b6sK
JR/2dnd6e99Sa6MgC7N7gFlArfc8GZGrJKBxRBl63MfJKOsFi6g7H3tYTHWx3Std4eNwuLz0DtiF
wRKm14O3kwDEmCcFA4Dc3QEUAr7GoL/zbg0I4uQKREA0DtHJFIcw5+PSxxnmOWhNGcCWDj3PA1gL
0HvJdV+8FBxjIPcFyuL4+DFMSzDz+7Rb0NG/zZL40u9/g1+KD7dlGexnAZZce8WnObQYXIYD2rLM
+t65j2s59zueT7XgrzzEv1ig42+jZL6YhYhC/4JdP4pn9BqNoUGMw/Wrk7f73Xff9aiIL+rAgqB+
fE1EehRfRWkSz8kjj6TpBcMMHXWSMGkNhGqpGDWBEa8f7LEEJ7CJYGCpjLveUQClIux6SSLJBFYI
zaIKcxpkuHYWaYIuSAkQG+C9HbTGYHmH6QSVD/FdFis+VAb0QRYh0jqOr5L36GSbQHkCLphIixZR
S/rosDNDUGEKJx2u1yhvZRq0LJjQeh+h0w/09MHXA/wV7br2Fn5Iw0t0PLMvFKHG41mYZt0SCu4Y
e0lMW13ZABob30jfXjk6S9eBwJcLaKTsKDSMXtoE2F4eTW6KqVGRrAGEaRhBjy5DwntRXE4hTMQC
babQ1t04XA3kyikLtgX2yjf2oZxOkyVo3ymMIQViI2/vkkMsirWPXcF9Q6Xx5ycvT4FhAh3E4XU+
EEUJdQMs6kCc3lplnJLLjJep4GCxB2ryLBIMR+nAZJYEubau125SyqoRYEYQmQJY4I0LDahQCRlX
Ov/WM1fvYXUZkTc5QFyBYCobFi3Aumzxxmyr6/1wI9FdrDaEJo0I9GYLKwcIK8KJIiuj6x3GN2CX
ptwcAsug0iiMroplK5dB5gH3ENwuox2DRZLlL/kFkO8KQwV4DMQKvWQ0WqZd7zQsQIEUyQJkILu7
FA/BQQPFyz162S0whD8KYfMz9c5gCcomDzDpaZR1kXgGo2SJTARY6M5j/TOPEZb2aIohfMjKjRIs
WQZifdvLAEYGQD/o4tcEHj607Q2FBjBN8BV/NWrrEgPKnF8IXl4pIkevCz98SMiAtEFWRb8X7KoD
EzgHeWq+1qrLp5TlykI3mlIfObLuAMkpyEfTtq+3AwLuvIR1YW/W8XzAGLC+V0jQEk5f+f1267EV
6C00pn0o5a9AVPmiii3bN3ffiy0YrFaHMCfWLO0h6vD1ZkjTMKeqHBsDIYT16d8u76EtwXgfiB1Z
F9rpuTX6zIxHoJ3/qKLcfG8HX5JoI64LPOuLuJtNYc0jVpZZu24UtnkyOnnHOZLzI5XAzebmbvNi
zkmpdop5KV9U58b2rXk58ByBYi8VCkZ64wJBpknD4TWK7G4eLCSwzRYbPlJa2zFWQwGEt6YCNjKx
4EuSSgUdH7G+RTN3Xt3ASFU83wEKD6FvDGlzflGaWSXTBuSRUGyzmO54LZSyLYUCzNkvpkITyWgW
lo3LjoiGrIpEF8RLniCSy0lF2S7bzcJZiCEFnUIdGgTpJcyslNTwV0UXGYC9hUbTQGhW7Qo+Cvgw
VozzGSRpdBnFLhoH47i9RjHqQLHh5HpwzYHJMZBDw6gr+Ssahe7ZuwUkINGHTWsRTZ0JOhDIqdAd
J/MAIYOdg/EQoH9nyTwENRJdPcq4yCMwDJtAr2DuLgu/TjAEtgU6LJhvuKvQra1tjNtQ4SrjdX7B
CVFhNSGkeVbwWZ1LeBfdYLGY3bTRzTWJYoxE0eivgVOJifKaZ0oOhrw4a7FYHM00TVZeDeKKftT3
ckPE29/S2lguMH4W7FiwTAZiabZXW94f/uCtvPsHROGTuuGtuqpRoyzujud/7bsUz8rbguU8XpPn
GJxCZT1ywtVu48ICAwfUPDT9yQ6ehoUBh+Qz8brdrpcni44HenMcphdsQ0poaD7irpxwtAmg+SqR
YVAc80Q7bMCXQyyvtiGN0Bzb4rJsZGNhFSR6obxhkszCAO3xcQQkiXY/mIsU6AgLME4IENQsAx4F
JwioVRUe2JSKtVouc1IhhFlXMfXKeUMyuU/vTDKQlc/PxZBAiFxc6DOOjayYUU6qXyLd4JSvs6T6
joeH8zxLRuSr6MqI6xP+pNdZTaNZ6LWRiJFGyWC30TF2Tn6vEiu5nryfw+Gfo5w5CfvpNPu/pZha
RSwcBi0q02ODXPBudKxj3CPt6YklhM0MDR8EeSKpEMbsAYF4w2VugzxOsHnmNgj4Gg8hIMo8Cvkn
ChuHVxH7fCiMFmFLSvnp7OWLRza4FN2P/ok+ucmzfq8H3A8oJxy+j3Lyt5LlAC+7o8vo+2h88HD/
0c5DG6wzioxMhrNwzn4bxnILXXrT4CpCoSrQGeUg8mazZR5mVRzYYBM8DZ0CEshJQAzGHwbLy2le
lXm9nr2vhLVsGQpJ682jHCPkYV6GN3je5AZXqJjv9oSWKHBRpIs0CsE4v7GB/Q8XKf+HpKgb4Wpm
9Zzc0xT4AO1iWCbwMhtc7IRcL8DtwhgUTAr+FATLU2irKfzn6P9WJ1W4SsO8t7u7/93DR1W8IZcQ
TbqkRZbAUmsXQxbUDyJG1DuPLizi4tYLQdWoAwn6rKIKgfCyAKm8Id7VXSyzafscVcnE1nb04IH+
UodDrIOZKksMvTCiZGVDBhGoUg1GgFQZwTQtx+VKb6AOG+3CGmqBOvfLkly8V8RExmEwk47RjDYj
+LQPuxILrpMR+fIatEEeAi/JwjTj3sFywG2wah8MvFbmxkSzjlGbx9EQR4rxI1SANpWoGmaFPhC4
KFKKdqEzcgR6YKOfDbUTfU9D1U3UrpBYI7+LCPo+oT9Uc9vuYOUXigvU6kItvlY9nu11vJgu31AU
R3m7ussh0KS1anHZtWt9Exv6oyoNGr6ndr0r7GNbs7gw2hs6dmq7IDYjHJCq9npBMbRBJtX5rC03
hA1H+oZErQNViRo3xARIg7ydfn25dh1dUxwY1ybKSG9lTUX1PBSY1CEBuY7D65MJwkF7Znu3qlti
/xVI5XCaKrNubPYFbCcVoo37VDpb7FucX1+c71y06wvsVdgoS0nsj6079z+uP7ub98dNm5XNnBLd
G3md7NugLl7b6z0nnRhV7cK9QmfcUUaukhTkIUUjo0g8WWAgIEZngLD7K2rDRZ1MJ28CcFBCvAzz
I97tz364OQsuX+HOrE/F/PIsnqzOR09RK2JAMFP0S5eMyGcUpWl518Vzq1ver796/tuYPo59HXC2
nDDg6g7fU2/H+97z4b8Hlq99z/eN+VK/q/qQ8BiLMTwQbW4sJ+2b6eo02iWURTIyh7KLJlwZyqb+
NMhOVvFroWS3fZ0o/S0bmza5qgLOylfLdbAuOlCmAErYK1uIlCbXhtMHXBTebFLULf461WUOdk3W
TPxYTPUDoXHULo1/+PGEQXVnYXyZTx+j2m3iH6ePCoGR0OV1fuD5opO+jaNpNTDYDA1brESBSy6N
UBB1IZWMAKkuVl7HvBiC4vfeyRLNNeRsjgOwNps+NY7CNX2iXSYYHXwZX/EDKPjVECk9mmlC5zsu
0YqJRh5YjMRKYSkKIBLWz/Q2w3QIy/kSgxS1cIuudxKHFC2RpGCezCISDWhqw8zF6DaDFS5hQefB
pgbjRsZq8DFg0TI6yYP4hiJb7L0whyR9oLjdN1/GhbuNTSbuDEVvBBKO8Ha+xswDHjky5iGayFE2
J4yMQ+CVmDdFnLcE84IcAThspa4ENyFnhrvtcQhm4rjw9lHaFzDr5XgxOKsIzSrmhz0TWB4jw/H0
KTpvomAW/SPgAAkAYUWIBDUMZ4W7UAm6kZ0Sq14eKy3jj2neUM5OQtA2hCGEczTgHlN02HqTSY4K
Jd7lm9p4F9tgNo53qdkW09QXcr9wJIr1O5NUWUBqNbZONu2lCZiVoah9YZtblqxnt9WOFrz3wYNo
q6hrkYFaLWStFu+/U/4Jr18Sz9Bn9vdllIYy7pK8cwiUgvrMSClg5NNk3PWOc3kgXMKTXo4heVAx
5wk6SzjKUllqHVomySTHU9lYv7vebKBEVoes6SXwt3NKGKs0J1Rugwmh2VxjPijxiYqnChTdo2bo
Ig1D30y9/o2VzlLvdSmeDaNbS/HEc+Lrw1vT4eO0iC1eGrdLqzn2zBJyUbP3rUWROYvZo8vs5W3B
DOo7l3vIPea6WJa7jHatyK/aQKI7D9x0U/12g24Mp/o8A7Z5yuoHvXZI1F2wsEZQkIj9KYOqnCUr
XV8nGuBj4q1ut9ydWTvYaOOpXJcVNhuxG/DVdWxR1CooBC5dxjEflCitAd4JJS0hMM/WgD7RDbuY
tESFJSpyVB1tRYa4qQ72ZGGmhdcLPMlU9gwVGFAVy+0QMb1lJPS6A97Aeiu31Ku22/OQwgYwwUph
k5XB/HLvlpRp2tNdgfq1uqS9PjDP8mgBKkRPVqNEfGMJkd9yP6mbhoVAe6WUg04ehBExCRxdrIXr
ywB45eSMmMTCnokzPOSEc1eMSLMwDSOgGHizNWCfCiRY0qSUpYA73xggwueDVCXTaO5PhJVTmjze
uAVSSfC4mALKrtxarECZY0hGBKCJGYcasULngyGoelPEC2ETI06YgnEa+ABPSZccZWdqtW0K8pF2
Cv5bj8aSXoFET/g8BzfVbigvd1DWhb+mYrUZFNccH8ciLi4LpQ0Ro7ECnIzPFUW8H9uBRQWzKCyY
kjKrXISCRSS3AKMniy5j3I2VM8VMhs6aAFNWpgnfd1cBsBggi8EkimGKNXu0uuRPMf/Zp1vvlE7t
n7XYM3MsjtXOY/6US71WRafDTdwzMb3i5E+xRNnqlwu3lcTCf9USh+BgNrXliwcERRHc6C++4YK0
5G8TRS1qi+krYJdws85UYQVa/S4fL6/TCujfmnn4eF6xFvD/DIyCqfqfzCXC9CoahVYWoR+cPXvT
y7jwtijc+40Wv9ZF18rnQp9y6TceVOMtJ5tqq594q+UhjpUtll3dyq5d0bjdwUsWNwe7tN7+8AfP
fHWAOyCSi9TZKSU8ZmkFLHb87VysF8leOOGese5CoewcRUshsOwojvLCI+yGBmttXHiJCe/i4C6H
yHNAlUdE2QQqKNPl8tqSW8Bq1kYR8NQEC/2RFI87ARq4kZsJcthHChcFCm8CplF15t2ElghF9anh
48Zs1VuUeuEu+YHqrNDaoDxlPMeEypRioePEoAVBAEGeh/PFOhSApMJpJau4xQTbCoE0gXLRz8dh
2yktC7zZrW6rdNXsW/Kak+GBGTavhNNcaB/qiX6deXoiE3axe+ZJ+seNIug41OUiImcynaanfRtx
7D+8DkeYNwR9761KaDkKtqtght3RhGCh7KDhJreHvUNoltdbxkfEsUkVHLXO+VXF3hUa2BxuWBk0
ks8yo7wEuP5UOMDdcHLSG1rYIB+9ZZxHM46LjTG1wxVuxfGkFRWLfXSOZvcFuu/Mktc5aaU+yHLL
cLCKmFnrkHG1mmsZ1xzBYK2rRsB+Ap1uLeh3DIiQiFQQXz26UMWOlam5Zb781bXBUqgqjJmBqRO1
zS635EppoQfLdu5GepXCletwv9mZArbbUVG0BjJea41dHsLZUevrqOlnkz/G2WFV679Lbx31a7pa
a0y6+6lS8p066gBQ19Na5dfWVT4KgnWPMNy77b+NhaaCaVNCPY2GXzAC+kHqrKnQH7jJ2qR/jAEn
1Mr9f/5h8Whqk64isHBp2edX667WLiNqjYZVjDa1rJbVmlZyk7w+LjoiYzN6Rv8QcxQu3KFcL2ry
BvbOGxuHyh4s/fief/Qrk+PYu1UpQ9vwVP74Xv2jT376Sh/YqkFaQtJrF/A7ltQ3nlfUKS+a6BTv
yt+MUL2i0mKKUUhotuivsu7p2eGbs6PnlUg9WWxs7KTcWolEuWtjvamg3oFsAkLAChQW7EtwFZNK
wzOC1oWxsqWufyDQpl15+98FPSACcXjOiVuXTiphdLKMnR3gnTxRFtbOtWXJ6fex1Iyrau6IFoXO
+/dluERj4z3qoIYXx3oJS/lQmDl7e9RRWLdELcVgCK/57y4mjJxdVXYYHeHaVlCWt1005NzdF9Nj
9kEfOE8x/7tV3Z3kJqyarLNdEy0VlqChwNImH9ov+sn3ZdT3AayhZe3ZcZxLKqSKlEOZoflI3E/Q
YIeiMCcgm5qa+HA66DY5t8DMUWfSF9dw1DYPD6gPHHONBvcv7LzmoEXqVd/7/Qf65RYvHeJX/LcT
+ZbTLK4FzC3yqZiOJ7MMd+R3i3gXX5iGaDqXcYq+d9BJaE7909IgFSMCk9ff2hIkUBp85tzIazhw
SrJ22RmVKOWxf21xGaPsfW24VZVLOfAaNQz0ZK/V85OXMl8Yx73JmeBATLHKZLzC12IfEmMyifdE
eJHULAGFL8gidBokzOYC7yoEg5mCRCfRCB0JyPPx+CifyJHw+JgiNhWCDplyjGuAJnaR8Fl0Dz3W
5BmLUrrag+JyKXeFw6lLHp2fEeOgrPH0ruiv8atkDLRKcM9A+NZJ5bIQhnu3Mkqa1zLnTS3lnZd/
XajyRRMG6EcASD8mZYoz7TvB+Kk4o2dwDcVlUHEYqFe53L9ftuNehq1XOIGEbpoIbLqDh8G9S/jQ
8h7Aq5w9vg88sffUMtaefj2OLN9Rxkkv0CFYxw9aR3LWsVlL5bIHWg9rQFb7TrwyDMbmGOiIrdGk
CJ30nnq7jsO3r5OFSNMg/FQUcpymQfWQdgV4No0mVtcosxqXWBUt/xxSrlZKVAkUhAc5VboahhOK
f4eVLkPHhbAs1ogJEdb8iL2iYuG3sqKOzLgJC/+G03TKvSJKPohsAbO/mCBlDzHjjDJ+rRgSvGjm
R1ZVlZLig44Ly/LR0VcAoyWiM8riD1vwbLl4606QKIykuv1SgjiPLjraUt6yMoSCXePztfdGHs+X
s8AskXLryNlQfLTMYyWj9JQ9YYBlMl4KiKbMkGogh+Sd+PCpaTG1qnOMSNamTJaTYVsiFX0N5WG7
dTjjrVVRmd27cTEG0V1zid5WGhd8Om9i0TQ0yaFzgzlXQSv+EdHzkumKOegI2W7NA6LSp8Ohi33o
8w87SxTt9OUvrlLYib74WSlya4xSpUB1KUipiVddDYi8of8VJfjuK4axUq4aznN3l4VDXbcOgqQk
BYhitpvloq0NRl35RTrZqDgmiv9yfFVb1Rw6IJOUP1sVhxQfE8Q/B0mqxH53kFEOw0G9H8ZqmvNp
TsWGVi1lJPriSjUpntClsVeZLIZd7ZqOS60ls88Vh7Y0uHWIqvnxo8DMHbpjdZpXwumdtQ1bs5yZ
OmeS6tpwp2Ou1DftCbYGTSWS7Vn6V5mpHZu3gvo7mESzcBBl7B9w+om5vFrWDpH+xT1Yu/uqLBjG
4wHyrLZjdHQmTzpoM4FTzsBnd3jIE/lcpjx+3/GiqmlsZ5B0lp49UtfaYWdznIqvwK0H1hvB1EOR
uAOZQse77maYx7+9u+WwMum5rVFmybvj/nyIKmI3yuindgRDdZMBI/T6duot+uCYs2IHknOFdaTa
XGxyGexIpNK2qzNlNf2WRLNRslFkRm/M4mVJURKmA9qENYNZ6GLSlG4aYOQo2SJwLjjOpuB9HeB4
ZeXy8OuZbN3lyZmIiS67wrSsrg/ouUjincm7cgYc2ziLCmkkBi+kBpuYlP1eqi3iS+nyg+/lH0Yp
1XUC5dQ/HSWF70IpLN4Y5fXVC8X1F0ZpYptQiH4a35CPwCf8YXyR1NbBOMWBZiNKuAppIHjlz0Kq
lnseb2RGe9bncKc75ohtEWhxGWF4DXPVDruLMOUeb/iLi8fD8pwvsM0op4AhPHXtjASTzbQBTQDb
5hlQbEIsYXdPAjdfDrnr7R0C5W17+1tghPrQS9/GiWVNxyaQQAja9diNMgs9pj0LhrMbwBVqVkZK
fGN8IC5iKCR4gjk89DpzUovl6P02rDw+AEHWMtoQpZQH6zukVHNqXUUJkDftUiCUiIHChrHD2kXL
HCrjtWfRezx0qYGbpMBCW+S+wgP3vEu91VfLVCMNf1heZr3XyyFwjEr6uN29ve8eaZPpY6dQ5fRx
m04g1dhjpTKYfqCpzF/QK1lXiK5Kw0nKlFIV0W1NUipmVXbXUIdrE43KkJ8qxZAmXoZfkAnG01K8
tEETkDibXgzFI3nUOhJnY9FRJ8hREkU1GkoQvCX7q9UWM7IKm+tGAVNZO8+S+ArkJ7olyVlOFwvF
IFI63nQ5D+JttEXxQgbBbexrB+8VCvIBgUCvO91FZGUR9+mDeWUAxiPpZ7wNrY5NWYDMkZWMZh/3
jfEd7g2inWAzwRF2kV4ICm95Ty1qpoIt/xzY0IVfh3aCSWeOEaCr07oagyUdHNE/x+O1UKCLp+C0
hExyBlX8XgvsPr7d6v6SRHEbb+4h/nmhcc/i1wxEAC6BEotqRzC/HB5Jxdn19WSFhG/qWBouZgHo
fP67d9jaO3jMnLM2A3h/z2nxsmeLoOKFQgCvqr/Jjkc2ANTvnX4B5AFA2fEf21KCFMV39eLXO7sN
FfbMCnsNFfbNCvsNFR6aFR42VHhkVnjUUOEbs8I3DRW+NSt821Dhj3qFYUPx7/TiedOkGZMcN5U3
ZvmqqbwxyZOm8sYcp03lK1McNtWozHFjn8xJ3m1cCuYs7zathd0/mjWaFsPud2aNptWwt2PWaFoO
e+aa3m1aD3vmot5tWhB75qrebVoRe+ac7/6xqYY557vfNdWozHnQVKMy501Lda8y56OmGpU5Hzex
zMqcN62P/cqc16yP6gZ9Vay9CS+Prhdtvviri/ras2mQPkNzINoCeXfpb3Vki7V+dxnn5reERJct
9PzeJZh2IOZaKKqhQAmGJbDIRK6IYH5fZNg3hLNoivtsKCJcM17Oh2FqVONjVf8WXAWnFJDe8bZ3
2PVG6qkAtw0a0gEJVMzZi8erRAIYE5ZIdrRdzVIrAjAINjQBqtpur/j7OMZTVPlNnR62vVOrhDWP
X2iJfWe3bDqj2gP8XumDiYFTBQOqmQlmstw0BBsfjxyH3nIhggLw+rcb4UTxvGMTZnQZ4wYl+sno
GuSsilpprtr0Snyk7oREKE0jpxpF1s7Ri6OXR6/OBq9Onh9Vk1bjwzobhmr5T6TKismTZ68qEXfy
sWmFWC3IxVWmjVsjyqTQYvdkyyWIIlkdLKyDYunp39m8MVae+tgDeWSrT2WrURyHKaWqBIX7Sa+C
Bnz91KLLCmBEVyJ7H5v9lKtH+lagRMf7Zsfiyyzn6ezor3WTJFnQWXgtW2ipTWBv8aAateNCSNna
6zcnz45OT49f/Wlw/Or07M3bZ2fHJ6+a2/dfpwmeDoHFeSxCbNBSpA6RSyoP0ktALg5fM2+0jnIh
6ipZOMSjsPcN9YoB1mLy2cnLBoqXg3mWzMsZe3J/e9uvQ6m/vW0jgbLh5yfP3q7Zsrz4VsGcpLnS
ZyL9bg94vVc/ALPbpcxQ9MnHVFD8axrGtstDLF09+9vrow36i/yG+rweIn58c/inDTHyYxpc/vaY
EeG99V1UxAA6B5fx+zhZxbSjbUHHrUvC9L5G3w1ehTFNk+XlVA1GsPZD+oNKdwmG9ujrXxGYVhYg
47fxX+GfVtcZaEPqn37VP10EWboC8tU4rGCUL9FfBDNC6gjujhpuIxFHySU5RD2lfihwfA1C8+Vh
fhFDR15jjJX6/QdugWIp+de+eKMd2Cp2LorGja5U9sHFR3LD3W3AMoZUhbTpkJUxU/2PGLS1O9Xt
f8wtV7isbswd4Bty21U0wF7vVfCKOISNsq+p0rXL5XYtNFlQNm/s+8m9Hl7SDgtgiWf4H7DSu71j
a2u3x+B2ezc1zlUuc2Pf89Nj/+TUl9GrNURQLCh6+A5t2i5YYcB7hPeiXIUc+0ng0UWtXJKk1cVC
5f1FQyMaRmEqiq9VUN/9A8lNZK/tUZVtgyZ4yOvTaEmcbRKtepsoU7eAWOXft0WEo1padFmULQi7
ptUCYL+cE+sq0CfdRg4CDQrRm9O9dXfs1CLMhpb1hv8xGLHxBR5WZZguhhgnn31pLOO1Fsc4mkxC
upLJUqJnzvH99Sa5HN5HTbTn44SOo4zi0mG+2ZK58wxvwOfLEVhH5ZrXKB5QlO9msyqQK8sWezYM
BO+F8LZ3y37IRj4Ot55vYJOvfIs5TFldWpvfa6rjucRCsbLqUC+HZxmwC+1MundcUT06DYEhyfK4
QzRfpAklPfAu8QgqXXBU1iiPXeMlR9yqpdEsL+JpPKNNfOgzb6WJeX6sO1g44s/QmcmpsKBpEsRh
cRuY9GRcRbBQVqqGuY8kKHp85ZBGccPY7z8sSM1a9Be3lWHiU5G+54uLyn5n+cW166nBYwTrawkq
b7Ebzhq5XzzVmYWa5eTSHzy/jjgwi0ulPqOJS4ia7X7OuYPH1+bMs0raj5Ky5YPUYGENDWoIPQZ2
b11rxKW40aPZGpY14hzXR+Hft68Obx6Rw0hZJXVDFMwjWWjnRJRC9azp/KKG/2rDclGbixMTn74T
I9anQwmMLdiYCOsyUetbmm6YDZ9BZUL76dyJzqv6ouyhTsHibeMhE6201SdcS7HRlo6tymcrTd4B
eVRNId7otlPSculcIElqKugYatfAOj5E/cjCFizD/R67EWaYTgJ9V8UKskHVZ2RtWOY6rHLpgjXj
4QTBsqOLz4rsjzF/HNhVet8vBnFbie+xsQt1MB37EJ3MAi8tuXZzi3CRRTPMcVjDNlSDyGEPebwb
qHoM0GWKYYwPetuyFQVMxezRrWzSS8QOo5sbqWNrYkfFjAair8V0BjCh2PrAzYaUz32to/plgjyS
l0E+7QZDiW1vW5GRTw4KjH/aUal0ihiHv7mdtci20S4vCKUvwdZIN20EHcfAXAQ7o5uTpkG8mWiz
02hQoVAMw8QmMIgyllGXn5guiyH869Ck6P6TEpmfofMlXjfkmh/lFio63LGMwUVlZHPSIYTPSWii
lc9Ja+pA/uXI7WkzuX1c/zUE/5ZEp3a7Yx+Mi/SGYb4Kw3gQXo9mywwIpqA/dMCBorxcLPDHJ6JB
0Rw7KJEAs09MgZXx/AuSIWG29G8AH2Qkf8YxGaRJPbjFLeRqm/FYY53UtfVImKD2VbrpC+pZm5Ir
Q+3UYKFRaDvN4U8uuvGoOumZeKbg84pxHtS/HFk/OdhAmt91DHaE/1PkOw/BIuXF2NaR9Z+bPrVV
//lJtDq0fzkqfboGlX6KYTgx/89SC0xytQyySUWgJE2/oYqQKFqChsMwosNpCZ0nnH8mBaIY7b8i
DVc0iIM1VYiPGFUNSa+tTujV/jmqRYGCqmpRYse1FtLwEqAO5pTBrZ5vr0H+4lBzse1LYHE33+N2
vMLZuFVH5YXHlNIgCGBOUlCHcCeHzudmW2oHO/Zuu6aHLg4ZiAPXMuGB+tI5RXr00ofbbp6IExKU
bkCc0YXunItQR4zFUSHzmUTXNpDaqnvkek99y1sauT70gdyuWcUyVckN5RS1JC0szltK3MgKIrlq
hYXTZGpjEjQnDiKbm2gqOLtLvNKQ3QO+1qaZ2pqR0qiCYiuaiuCd6yjLM1+NWhJvHq8NQ32pQtLf
14UHUZNrT01lI+3+nebEr/SgiSm49vu9SbKMxzVT4wy7oWY7tq5U8CWnQB44b6J07+NJXchlse61
GIVff/UsX4vMzR+zADAgJRoXIVARXwgTyHQB/pYRVSE66+uzryQY+LSdKTpC4gDTycWJp7ctLiF0
9fRu5LpZp03ixOvuRbcLGo7iMs0BXocYOebNRtW2cWmFPhn6lZFQ+lMazcd0XX6r45XFIvONFyp/
K99ZeWUVxng2KI4raYD0D04NLBjjZe934JMUX4VH8aJgxpu53oGYnXMNipplypKHo9d7leQiHSOl
MMJEuHRmkG4bCycTDKvE2cFAZDoAssIU3iYU/FpMLS6h18v8xyRdBenYuGzI2knovD4Y0EDwVGyv
99e//pXyt2R4Do8zeXAJ7MX3OujqBre1sY7eliNYxjcmaZ0YGR+vIL1EDUon82w5GoUhMB2HUlVH
1B6s9ygO8PKsD3fAZCXCxq6m8hg71VG7aFdkdB5R4mHOnlZDrlXKo/RktmvmlIk0YtO5yXViDn7/
AcHfeuOIE7dQTZTm+LpP37SLbVy5ZuiWt80SkYtc1nUnYBEq4m2Ns6xNYITELqBJaW6DqKsAoWcE
KPqxzAfEN+PxyUwohMC7tanfNp4gqiQnCWqFKyWSty1/FUvBHjLSLv8Q5dYM5itpoLDjQvkbQeo3
jFZ/CuuQVsJmdbi5Ar+2aEE7GWh/oiRAGAQNjMqFNUHr8avnR38dnB7/16PB0Zs3fa91jLGlp9E/
QiLlVrXrPx0fvTl88+ynvw3eHP3726PTM1HxpyhMg3Q0vXkDFiZeruOo//Obk1d/GhQnBbnyz2kS
X8qTgK6ax6/+cvji+Png2U+Hbw6fnR29KboMLC0a4xl/mK8wddV/dTJ4efL8+MfjZ4d06PXwxYuT
n4+eCyivkpfJuLiD9JCj892gzgY/nrx9VVYGsQb6Sl3507evX5/g3StlnVN5mVDTkE/PDs+O9OGe
5kHunKTTv706O/yrqHB6E+fBdVMTGmq0llS8OAd4+PLo9PXhM9nJV/Kse1Ozh8/wPLLe4OEIjxq7
atLJ1ZfHpy8Pz579JCri8dSXUUauEydOjp69fXN89jeJlXC0BK3txjmio7OfT978WY4nzDHDm6vw
4Q8ws6Lo4RCm1FXw7ZsXZt/hVVPX//3tydnh4Oivz46Onhf08+/LJA+OrlmDcCLr+OXRyVvZNZEx
smlO8NAuHxDWpuWVyDvgqv78EDr57MXJK1nveZAHz2ZJLGro3OpxlV2JJKgjzqZmcK/v9b/P8S9M
GYo/HbAGVMPJ+jRO1/d2LbzOxtP63r6Fq1UYWN97aMGwjVX1vUcW8nOyo773ra24woD63h+tJXR2
0/e+c3awZC6AFwtiFJYCBfaccCqsA0pbsKdzCyjjRp3CG6CcBXEVVgDFLAjTlj8UsWFMWfNQwoKt
cqn3vb0d62o3urJnQWZ1IUM5C07V1QslLHi0LVQoacGmvjShDGCyUugohgUEZosoYxkgENUbkVHQ
Xegtn5d3F3hGt7aAbZ+7y2CH3V/P0iDOArJEjvmm0pr+YI9PwIhxl/hLmGYlxVoKnCwwrayziMnc
KFViW3pLNNZkzfZS3juoWxbtFu2sDJeXfQ/v4hkllzEwsDHeboMEtOAjXEWWEPoNEwKIy6NpY1wz
1LaqFw9UWKm4iH1MPl7K0k6A+/pAztnOtA1dB9AtzJId79dfzbG7DJEKjnTDpPJZGCp4qop/7ebJ
W9xPexZkmL+8voqvItS3zlGvBwxi5WX5zSwE1V2U7XtgnIq7gSgVLEKUprgtM6iGGeVeuoY8RT+H
rbFHqWTzorUg9zSrFNunGOBFGuHFvbC+wnQCXLZjAKNTDOjGiVt5ke8W34Ct38o9XL3eim/moBy2
Ir8wX2U5NoBFMaZAyr15dDnN8bxEEK/VKXRcojfHACeTbahJdPG+8pPnJ326pd4LUvIUkpsKAUyT
1fdWt6WNsmrPNGzuWZBGa3grsuKg25K3yG87hnvb7sdUzNAQLVCsKvfNqw7Z4swNIhTXgk5Qd7D3
JSC29smLhKcWDcD8/jNb/uGtyLwrNgZ0LueX/M3va441+PUWKyn78MKJYD9n4vYQVGYDYZNPrnQS
CFSUFr8NU6YNr1zr4fS+MfIqfi6X5624m63t2P91uM+Kek3T5L/hcp6oQWmEcQb8ms2vArqtQecZ
mvimyE2iOGRKHPNRHNs1IyKt/vmFI5P+vjIRdP0YitXMyFZMC4oF5oGZtVne96B3pYqt8uayanyD
pC4r2dmzYutzOKjc4nBuougCxCxmCKKLKequdigG6r5ivT7rtnwYlXz6O+zO8Sr5SzO9YgGx8lZd
IaQucb8qOcNdmpFonTMov4vfodRe66hXrLi34Y8qUZ5ZbzA1aM9+WQny0OrVKO4xiVumz9KIdTWW
sMD5CBhJFBW8Xxkhg4sMTUL/JO4GVv7Iusevjs+OD1+YRUFq50t5f0X31cnZm7evHutF5J0R0bhy
uw99p7Pq1av/uHH79bn6QhQNaCVkq9oNIsXLPl6OgUmBGO3y7gWdvmRh17F7bXDy5G7RGfeNGer+
geVsvB2seWGxjiaxlOz4pVPTDvzizROSt+lfxL1RA3nXSbUUX1eLa1nZiBE9O+NLGpE2+Namotrr
w9PTvmIM/Xh4/KKvmLzCHdVXrFumqv4+N/BYaaHc+D3w5mF6GbY/gATXGt+ylhdUrfVMULjaOXEV
ttq/nw5PB2+OTt++0Lr47OTl6xdHZ0e1nexyVkS8b24wQstavVLOmjufZmJgVjMJEdfAPLuUi1AQ
g85W+Tv++73MoAp/bMFKgB+PqwRYabTEcIUx02aEAFqwFsvmaLkQ++VkGcvcqGaZzeKTTq+VDhus
if963FSpXEl2XLrbojVWLrjGKpLtlTywrKLcyVat+biexMKFSlbiBmgARJd822RSyfGfahzfcQ+8
OyOWU3YISGWdXu94UlqPmBUUoz0zYJHyqk40AsXdY8RSM7rSs7z8cVjIPPgKnwy2FuYDnnAenmAq
IMbPRBWQnlBLC8sRN4/lAfo/K9oOfwUrI5rc8FXv2EAoeV8VparYq5Mg2Fd5S5T9TsySUzO7pUve
jSat1+BVsr1IOqjcN6W2VtEulWgyRaPk6+PXvZ1q7V1zlRx1Kio57922vYlNFstb8CvVytXN3FAR
/N97JWfoe6bKioAlA5Cs4Pvit74peLWZV6kURWFHdtGeace5xErkWCrYr7yr4SAD5YLCNdgIKWGk
R6l3mX0kfUp4ViI1Q3ld0YuSkUpgNDpJxPIl2Eb6+ArLqEJl65D71pYlsqwB14OxoQ78Z0W4vBPT
6rP+VLNwp5ngAdn7U1kgtbOm33GvzlpNIJMq0i23lzuuLre7bJSObjXTV2keldTVkXaKeSdhlarU
r5/wSsJ1ESEJr0oulnsKG22vLYuZUo5DuS9XxVZxS6Qal2a1kVg+F+Vr5wbUnFFom5xKMw5tRr29
dV2x4KKTUgdpskls5qnLQiaCcqkcRb81/4D10korA7A+bt+T9ZGd61oUsMZHGi86MtYWs8Wkqhjn
NxUlwJgH3fNitWxKRcduwkh9RWoruq5S0+81yGQtr88mKrpWcV3tp8LYHQMyJW+DjXSgtywN/2Yr
yQXwidVWcpoKKs7Ql9Lhlec2HGz4kr1WdAbkZanGnMsZVKeAGCvbamYArsoTG5Bu4bK2K5PtXLbG
lW6WdXmjzXK2hW/KViXhvfcmnCd5SJQqjlLMI94nCDz1Le5YeCkVpvs/w7SLF1BKQCDlk1FEV7ky
xJ+pjLdcjOFlRlZwtSnaxMsWSZyVF/R8Da9GYYTpW+nC2ayLt/4gDXYcUPCiIoy74WYAFNeT4BIO
3KdrTsBO57Al7Dyee8FYo8ybiWuRM3ZsSwseACdpXl4d6YX5qNvdom1oDMJYBJh4eYbR/nifvWgC
z8gKRIkBiOrGzZPlQNoVZ1itvDnhkzbvw5tM1OxKMnPTE5R2kZBs6BzKYPA8waQ/3KQk6xk+b+1T
rfNdK8lUwn6IAd5hJcZlrlaHj7bE5LouSgPVssCHWzuWqUk3ktvrYLmMVSdwhN+txoh1+ZRzojmI
S0iu3ay6nLUm3ALa+htZ3SEQAONHvcSK/IKFZ9r0kdL7qk5t8QlaZ9bOcsXUWWsUPbG+r6lYIUxN
mzZXra7NqL5bp06j+Wodmo3imDX2dVRhbl1nVuG7lmOzUPmcuKmoGyYm6uU1N+KQR0J6MF/OKPSD
GDMzVHHZtCqHCq6PSSIlNGD7MZ6c4v3FRNzlRAx6jhF48H9VnGTsm2UpiCAKaMiCvHQZx3i6SUgV
XSLWMXoeUptLVnAlwVactaS/UMsHvBVM6elVp2mtrBAdg6mi4SjTFYrjO6XpwGUHYbnHvPVYi3FT
/I4DlIyGowbAgKl/BRb0YKUN1uYdFdFNLxncM5CgcWg9BSQuuj5lyIzFVoY53kHoR7knILyG/mAg
zGiZCqEcJ7kNWBrOIr5ZnaJrI4zsIHrKzVb+NEuGwex0lCzw7vTKFYIC3g+zKH4vd2Flb46QFrtZ
skxHFLWG0pGoWKAv8zBVrQ3cVRTovegukiwXYNtbXe9tnEczolHAAigqyezKkv0GQckddcqjrSFL
oJtWAsYeeLiUw5jWSUHxOjCNwpVHpYmRAMuUqrdl00tVWirtOwmmi69362vxJocN9qqKPApN63s+
cIIY5S3Io3Nbm3umNHVKUbyRcmIiVYZwXQXRDOOGOsyHcDfCgdua+eb4QdA6gI856MsGUXAnDiSE
ia3Om4H7OLiKLoM8SbuZ2pm74dUdAMaIlMxiGqB2Vs8rjH4WzadKjIN1fqwVrcYl4OvPYbhA9KKJ
Q9ep8LJFHK6EIUPLTrBINsZxpvE6cxXQIhViCKsKKSbMFFxsEXwxyIV4z2VCra+CGxWY2EEEI4XA
FbyD730B8wPzyyhzS8JC9LcccfFZWzhJXCghGtoK+SCDmixkL3UPkhpScv3hD56sQzcKdimaIYpL
+SLbZ2spzayhxnIc1hrnlQYuygO0vI2nlrCZwjplWswIuQoLPUcVizYBahOPuH+GnwtN79df5T6d
EKxaLQx0ElFM/L1bvPleXBuqv4bVprqTgFZ+PP7ry6O+9xzIYhbcSKrlTpP6irQKBiv8BrKPiA51
oMIgVmEptazExfSvzx3ruX3bda7iS7ErDX91j968OXlTlVoCXTA8Cg9D8uEm6c5MiROKgsU30rlo
a3P0vi+QRn+4OJKCRS4tVvBzvqTQ9P44aKTcRtc2UZAGDQJhhZEj5g4U9e6cSRpVbDKpFRuMAmiU
elUPnQoSRa/iWijA2vZf7S17BypI0yQwWrTY7rYmXUEH6rDWx7RpenwiRG8+LLWGufWmORg3Hqey
0upGWsZiioUlzU+xkWGe/aBB6EVxz0N9ffLnitVoa8AC6rG7VskX1WrWAC+zNbKBjcZUS9gI2ykt
KSOaWZeOur+qRCNIEyHe7VgYJWB4hHlNFIJjQk1ZpkXslSui38xiOgr5IXHVV8HBlDVk9511FLrT
RlXa6D9xMFNh6+rGLjKd7JRd+/W7PRaP4QbRn4x3+qE0aY/UPPmzGgpJoscaqKkNWIXqjs40292q
q/3fa9ikkPDK9LolO7TmEtflLOvC2onpooSyINYON9Qp1rH1Jxwv6oEJ+hAv54MF2FXMaHasYec6
DeJjicvF5/To7O3rvnFY9qfDvxwNzo5Oz077e5YvvEd42jcOxhbRuw9L5GzilTeKqjHrH27Nz6sg
ygdgoQwmUYxX0to57qK4TF2LwBZF9bK0HTPA256Xl1PMGicPQDnKa+cPHGWqoRNQcvexvVAZ/I6s
M4yvohQNJbC11ej6trkJYtkirvAuTP1oRKDrMAr+vkY5ZM/1xaQcqwl7p9lhIhZGuL1MybFBtdT4
e5MXUpdvKjoxQCWJB7MkGOPylJuXzuAZzeR0y2jZZypmE9X46Nq/MdZqDKsqZfSwh6UlQLnh2Ey5
AisxoeWq/ogteN2pj4xl/S0ALF2z++46wFIUKw9oilR2EhGWuVSOslRu7rNNKoKVOd7KuucLy1YV
gaejni524txpa2JCZjoxiarSrcUNS38rUSnF4HKatbpmq9zUfkjN3Zig2zXbaziYY2LUDKSwFqzb
Z1wrKEMbaPPQq7y9fmqtssA1qS6eoS8+W4io/VgjRQdWPMt1pw0V7ms9A8JelGrX1SKVOHHbMUWj
oYb4bxdedGgWRvrYyUkHpiS3yYGSDJUDht5Tb2f9Q4bQFLmRvCDjDcVggknQaaeE/b8NZw2bVqlN
LdFL9HreM96YQZ8uFul4q2kEREDHQUAwYs4B4XzGDVDKjI8jLkAE2U08IujroLYhMLN2+3DNZbtp
OOWa0ZL/6kGQWUM0oY127W4ae5BczcoXNquTTk3dx9VtUP8GSNONUZCNyn4xwhoPiq1nzajFqB+1
f+REq1eunlR1K7KlXHhO82p3iu+Ksffgge7f08++qUFKhvuT4FSPXFXdgebgK5UqmFh3LWuhiDZr
oy4asSkKUSrwzM9kH9aIRTTHK6nHtZCEhW8XBPIMum5qAES2M2yJcKrmPCXrAUD3rXRvAXHfbee6
S+t2VxeTuZScb4VxGWKkK+nRfAy4a2L3SMkbx+SUy8NOsNr6aKDT2h6sQ54lm1QNZkvWkiptVss4
5EdJrVJgKMaKRWQ00awIF92MRT2tzsHa5t96UyrAuV1X29v2CZdB0WtzJwcC1p36Oj+RrjxVeZju
41iHhVWKfCqW1jQUh8BscGnUujPqBaes0aiU2GMI1z8RoI++MewPn2aCYOZuDbotRnOtz2Z1JnGI
14VScN00tArS9RVx7VAor83DAtUCEiuVLqxveTr0iXVVPaP4nZj0p1ZjT/5sdTjpsqDqyvzc4oBI
r1zzord3EQ2TEMx70t4y2kUeFBuQpbCvRITWewrvcFDHqnKQnlpGC+jxqcawis0Sx3jaGFOkKRu8
eOtKS+8q/ivyFDnKd7yW40urksGoMP2sm+Sm08tFt2phC79V+yxKQR/Fb9U+obNbV2jsJzHlxreq
+dgPYloasGj0Na3Y9P+1m2JuuHYz+tpduxXBqODPdVqqMom6hmRerMrEwDRWX8q8oUotC/5EVcsX
S30DhaKu8dZSz4IUUdfypUqJGIaCNz5SHjcvysO5yfqlQUtF2Lw9mbSppC4GuOBTb7tyFJ+rZuiV
DrlYx9u1LCJb19ZZJ2IQ1uXS8RooSzSz7mrR2rIazWs2uM6aqTZmiL0121pz5WjNWYSso7UyEuRk
mS+WeXF6jl5XAkK4UNUSTej9QMYfYoyP+PWxtWBMmXRtgSFhjGHWwovIudC4jqmWq4qpdhBNjIy7
qkhvUYi3+K0lxLmZcku5UkI1xaDYnqOYlOpQZP+xozuVLUf7Hpvd0HScCKrRGii3EWMSQ53HUcZ4
jjgNiUhqxIcku79khT/by6bJcjbGhEjDUIFGSTTzxAOiS1O8WgkPMbimUvsTY4vdO4Y+99Hf8ozL
kGoeBZoYYd+kHkMFqswG3jG0+WSIkW2cksrYNDVWj1Xxrq4wNwClSWcqv3VWbJ0tqJ0xc6JVHGkZ
zJLLOhPF2X/lTiB7r7U7/UzEVcdoAyJSeCxBtk2iOFS3QqzoWw+qa9rvN0y2m2jocgjmm+YILsP8
aBbirz/cHI/bPqDbNyT8faxq27y/X0AZJuMbjG0vXuClWTen7KcGPKPfle45vVOeK0fX+VyT6H3b
H0dXvmGaYcUu7SvRuB7XTQaNAScUzKNn02g2btOwnSRdnUvnNNrEF93gQWCdXH6arCwJNWqYypNa
nkLfkFnZtzjKOEPBbTfjSdVu1LkyqYCywk1/SZVp2D2ZOomz3pIseWUV2lOxM7Atw89L16fFpaFM
lI3olUaeeLs7tnz+1UK0kaC8/C9Uk7YYtmwAzKJF2eryMfsMQ77OnyVxzkTpv+Fdg47tHm+zrQdQ
SPqF3BUqSKR6oEXiTZWudXy7BrGzbqxSu7DXOzJzolgPawjWzZ2WH7kA7jcRTx3N14lLS2oTJHaW
i2ajBueGQptJiXUlVFFpNcUwijY01J0FWU6c02wSP7KRwYxVL2zVObEvcs6XKR4lBUE1UN60DSGl
Fq7L3kR3V2TTMLRwbF2ivDptX0/z+WwQY0J6PN1ripcSFqrkh/KS07afhjMf6pTf1645TcOJ39GG
DotLUbO7oywzoRGyQOBmtfI9++HmLLjEa4egGShtQiEsIhRHym586Pv5zoUmJ8vBuAMs9ZnlVTxA
TiXn1NOzblhKnOs8oHvyZzyh5J/82d+oGsVKUU0KCtqssgi3oOoiTsV/7Bybe0zn6B9W2B/mPSKg
rwOY3rWqYG5NqvJjEM3Wq2Lv/RoVOV811XuV5B6IFMeoQSgMyautjrvYrCNWXqEp516h+pRteAda
Tyn6gl840pUgXWvdM+1GIVPqwoy0+ueiOe+BFkCuPo35VuwA3fAqb7WQ5UJcCrAj4K6ZHFdRyiYH
RI0u5k4KRmG79y7rga7Qam118+RFspJ3BzmZdLacz4MUA1NAbeCwlHM/C8VN6d4HPxr7fV+U8m+b
rwU996d7WPEWGOipqOa+daV4Nsit9+FeY5FidBaSc/GGWiK0AU+vEFkattbAj/Gc+4u7VfR8cYCr
OJi75q2xeuvZIuB5Jprz+zYKvEPnRKc2rrcGpZg1NqxwoZ6LqHtUraS6TWqTSpsEOqZXKIZpawNI
IA3FkjHAiqhfV1qo9bvtDvn6uA4S6E26V+WEdy8lWGB61dz8WoxrIfkWXUvp/f4D2kgk9W7ZaNqM
ka2JcJWVoA8E+3CxARuKSrd20yOUfYUZmrI0qhWj5rOmaGZJH11sBFsOz6o1RGviRz4aMQskf2qO
J55zfxYMyX64C1NXwEQxOsMBDKVl8UfTcPR+mFzDG/o1HIt34di/3Zxtlo9DNxL5KsTfn36J4xOp
cbgfD/KT8gNVTKDBq1pMKfwWpm1Td4K5KjhGX/VcAU8xfb9b+oErUrBN2+/vyzC9OQ1noF8k6eFs
1paqxu9Eyx6TmuVmkzK7CRuP60bLJfGA0mbIesAMR7No9L5Jtyjba9Df1mAAyFWa3NzC1eRvOWM/
nE/oSA3S+Ngc3dZnDWrlzBa8lYyMBw/q8Pi6nI0U78PFUSu+BeZX6/S2cJQMBFCLY0Ejrjb7On43
jcbhNi57tW/rtkgMS2lRDshoifnaOkDJBaaPA+O5tXa6ggeuPf1NeKnxIVHVtXpeaUjsYljxeyd4
hpc4R4/n76QD9qmX044O/Ey7/gO1sQf+hzHnFurHSRze+mu23rjbonVvHRwppwArc/wJp1hdT6oT
c/P+1hcxs6XJd8VLSoAYZZjIEo+CRXEcpj+dvXzhLWag38yDGG/+DLNRQBnMRPY5vC95Pkdxg/v1
KqxLDNXA2xOHvK0fhxirjEJhGqYhHeIFHQx+zPEW267nvaXEcwrdqNCS2MNrHTBsKLqKxtiVJ/n4
KQZw4Qm7OMMug/RJ4jH9Gl6Ho2URqIetqdBmQXopYwiWEfzEfQCGkU+TZRYIKCQjt8rcVIUfhNAQ
DnDptRs9IIrz4w/o/PD/EMwXj/2qICoLPuFys7y+mM/F/r5MGgq2uODv9r977Nt9LcXQQEMeBPIe
yMx5bUlxCJvVe/jxxFNViseoPDmTulGCpOiiWxNswX2w3xOtYNdxeNnhJ1YqGlHyNlTglkCBCuWs
RRUbclB3HRDW5ztCoowzr5rQuHYjNqy1+AbPlmfeS17FTSOoum10UbHVsmLV1FHXEmjCc6XmfKZb
VQr69A4qBKsXRWAogJ5M954+D/MgmmVPevD7E5JIXjQ+aAmp1CJ7oq3A/t5jneagVb5s+R4mxfO2
0AJ5am5h+k9y3MIA6Cn8P336hkA/6cGv+Ce6vT3cIaE3ZmWjaaxQXMgqKlA+PkubT0WyR26ph633
uCeWHqJofKrI1TstZcLrgwOvBUP1GEt+y7Khq3HKqiVbOtmJHwhrbsscIz4t/ymy/DUbscO11PUB
U2OCbNuPViEX0Oi2xo1B6dOrAq7ymYy9EQ80kLbJd/ZRnsf/3qu8wpyGVkBtFV90JN9/AraIdTT2
VoUnz1IcBkKgXIMQA0XS9VX+IX+T9IbliIDhJ65gtXQ1H4K2E9wtVZoDgqdGU7nyI9yFbS2AYZkD
NBXiU5HIuezThNOA08Y7X9dOGZVFVpCuoQjfqV9p2NwzAzH0WzU525ncjsHLysVL+e3QKzZrQO/7
ZYnpD7xfgquA7+PyinxZXe8wllYYFgV1BXgx/AHKZJD1DbDneXA54DujPwRgddLvffqNUmvcouMJ
ULErfu5dGAAQufQF9G2Yb2g6orzFwxC7hBGZXpszJAQjjDZ+H5I2SrFU2VZHZDmWYwMFMZWQpcYA
ALIwBICzZLVlwYoAVh2rOVT/Axa+9TucNcQcCafY4G8ZCMArvNszw1TlMJTlMMujnJXf7CbOg+vH
3u8/TJLktmwUb10Bjh+RDIRPXaOBY5qPRSLylueJF86H0FOgumjEgbkSC8MbkTI6KBWnCC9xIdXT
W5G2H0jANPwVhu1CLdDiZzfeZUKZ9cvac6QYMTdCp1jgaV9QyIOStGC1oFul0nOcWkyKJhqmVBxQ
kyaRMhqn4d+XUUpol1HHacBTOw1iQmR8CYOOS8rma8IL2okq2CEiR8MpoCj1Yh4RBtAj/tjjH/vm
XL6ldHXGS+HAKx136qxmWxhpFrwPVXRg1mfovbxbB1iDcp9MMdW4ZDLsMGbonYc5puLie2QIzQLp
gff85CVPVZKKISEO5VuTXIvOhZv2uOiY6LDof0dCnmMdXLdFQQ2s2ncsVXZkXLSj99U8NYDpwWm6
Kbqp6L7rLkIR7ytKne9ccJgvsw/Boc3DEmtgx2hNDS0utr1rw4nZXUcrToZViYptvaVqSM59pZ47
fNaaksdq7ZajVQCbA7ZaCDJdu20+HJcclq2Jak4UW1uUpmA0g5XQBhpUqitnfxv9OtWxX7vbrz63
W0ZzAt51EWn2uDj/6SSuJgQYNMaxFWWBQYqhFb13v3/3oX3+37zbi6+33t32Lm1BIONkoNZskzPM
RpEY6pnEJG4O2GVGp7XyttGwJdyMNxyNXTSboVK2UVorqCfuWWn5ShzWKyqhnl2dGqREtQwo4rsX
TtNbABV5rzSsn1egXJg3rPKsuv+ybBrZfBUKIaBKlLXp3w7Uc7qnrs53L4xQKg3LlANdkfXndhzQ
3bnYmOnxIDOpLuAqDlcDkY7epCmqy34L3+XRliBkvj4TBnXqHCFdNIEiXJzL/lxwDsrB3TO22aZF
qg9t+Uvd5FhJXdRbx8MmywJ9wxSCWRaPUJzwZWN1c6JLEYWjKRDX423YDRWaK2rWrGOIAFU8NXFi
uRTVOm7G2xhEhw+o4aCLtdOrjrcmVOsXZ5JBe+tKqyZVCzajTEfl0uZqg5uwFCv7lZh19EbRiLbK
tabuLrCH1NCbhJVjTqtt0ci6fHVye3eLVo9qwVvQWWGKCisz6q/Z7l6l3Yo2IdFqimrUZQfjZF4V
1GC728Sz9RycegpK93QKQ/rxnVDetN94BrVwi6rKQjVOtSu9hwJpDZxKboFh1n0U2kVvzfiZytU+
m/Xe5g1RSfbjBaBSZCMxKDGgRemzk0MBKYTYZqtcm5i9zSZGG9KmIgSWkbJ/LclehedgnxIZ2rZt
Ccw2/jomyrezXxdn4hoo+279KxrYYHaqPENbuy7G4VLtq8E7FntyQ8PKzazMtupY4R0sKkf713UN
q0h2Ziyoc6g0YtDoVXsNm97V4Up2g7d5BDbRDfUVaxaeCm0AvD/QDq8XsPrC8QD3PUuUCr/oOGQX
K7zp8DVD63gaqgcZrYcBRR4MI4mu+7Cn1lXS/vAX950ShFyxR9GuGViDLU6Pdew6wZTJe4tNNs7i
i9dVVBzgBjmZVcQdZgZ26WjbuvfK0x+XfF95eb22aFhvT7snRNwfzMysbXyXGpirftlg3Rn44kaU
ItPxlnk5Dt5QeLS7C6pJyIEheBA4CmbRP0KvdVRej9USF9zRrYHicu6M5yLuauRz3xoVbk95bSZi
3ij7tZGI2ql4GMcjozgUUb+j98Kt4b+LfSOiRqRgDrwFKKAhuhATIHTsDDc7Sckjm6TRZRRzbmj0
NeupL7q/ZF1P3D4bxaPZknJaqCkvPLG18vbNC2AKCWaWD8fomufkznHYGyUzGH/3stvxWj08JYpX
OmY9vZX+7t5Of2+3pYS8sE3oyfu+Lo+uF23asOQW+agkKqX+u3dDHZpPG5j9d+/GD+gfEzenCahX
Q5i5DN3QcmAB3m0YzMmxjhfkZsBFokkk7nYnoqcwnVBcH8dUBPg5fR8taBXBuNVmgvEVqC6IWXG3
YuhNIryDFPccohRjgMqp0GaCr2vV50FDjBHaLsLX76d8JVKbaATVCQoZA/WLXjiOP2qxxvqtkWd4
r2fGw8PthoWNbCydRWIbhpeRcI7TKAGjRf4U3Lvrmr3/1J1/HaRBnERjjgrnOV3hvZKUuIVGhRdP
8ohgGo8nXpZ0VK++GOVMjGAZz5MxUsRYZxgRns2u62R5Ik2/1suU8gyD7b1IWrO8tJUKunq2htxa
SyDrd1sYeyjVmCOtwHo3XOj+yQX6uigIL2d3V9v8XnPmVv4m039g/uK57jVSdjL933/QsHPb937/
QUHQbXH95HqnBcQtURrMvo7/dcCIR+lIv6388b3yOx866IMJvNHJCX0WFXzKrRWJusK3YXgrTYoT
+xUiuxpmz5L3/0YZqAOm+K44c2zORU6mVmMWkpuXCq11JIdomAPHZQfLK1RP8AZVAkbexEj84fDE
I5gm57sEtpEVZsyD23GzcOPa4rexOc+K2080PP+mM5JeoSV/9+m4A+aEG1NJA1hheBz1qCfhF2mP
tGqOlSBOpijTw6kKHdPzW+BZduJj8VshQ+J3QWfopDl1J4fWn0FgJFOCili8YikQaLcc3VqqDl1V
h46qjeRB+SbFnj+522xj07YRsZBUt7uqL5K8PRjXLZPzaMn5L2fJMJiB0gpTp5oHa20petvk2LRT
xn19N5H8hdQN+6Vh9EnbFrywbcLpTKscl626DfPVgtZRUduMf/sUodsIMD5gHYwuDCjbqNhiLVD1
0GmDYcMtulRZH5U1ZtttnbkitZWO9r7+GqwSLMb2QStLRy00g6SRwBr+E5bhTwEvl57QhxdolYOG
rFhUfGdPS9eiW92KM8a0fyxelfvtlnT8ECaycDZxOduK/G7O/RhuLFNS4TkSr3BBv4HCBbg6pket
pqPHFXoXdSnaM61cSYUPvEYlUCtnGuTl0ZqyGOamscHr9U7/8ieK6mpuCmF0h1D0L0F9uAr5nehi
e7LiAQ6YOfCjSy/bvf/W7n79rvfrlkIL74AYft+zhNAIODXRM1UMuLmlQQ0OQkcSXwSwitGcoqBF
Sb8ZR5LqliAGvoEaBaRD91OlYYaJMS0OAdX2P6NVAm1gVs4wja6gMpmZUYxWOZmd5aITC05bamTt
iQU2XnNhaUmYLOKgXHgia5O6EnUPw9F1ubTNxnmts9U8DQXyoZM4YD601Hrg7bZMDpGnQTTDgWez
ADQVc/KUzn2v/CE0+52O+g4Dk49F4uMWIB7jQ/CiXDsBKCEFC8yEmg1AeOaF4bmyB/hwUUNKgp6l
ee7+BDMbe8dHHkWQEkvB6MZcHCrwglGaZHiCK8PAukg4HxBF6Onjryq8VQRSYIXuCSCCYdbxbpIl
Bty2kBYmdA8a1NhmmYLidr6MIxACpNHJCeFI1ZHm5QISU/uVMCMfLVM8QSealW7FJJ7ddJXKmkMl
WY6mknpViCi4EGwggWGYMHsXIyZv8T7SBoxoKDqelW4k7/DVc4Ivfb/y2JyYGJHkVk1PC9CES6zr
nYrA0nFC8bWoMFEK5JHw31CE6ypBvI4TxjKIygQmKhyrAIGEV2mwoLhVHBsI7i5opyNY2cNZAppq
jUgXXmYRjrjqKtiqMkIuXBupiI8kS89296TBp8mx/MeyitK+OFpY0iyML8DI5iliXJAB8UYTYioY
qc+FfKwWAYD/4GH+R1erUMiqcnii3icYHB25jJino4gTccsqUUYZecoKkkGiCkbi5hcZWl1CFBQq
jm7dyNXLFJmxh/7VyZkgaxIBXjIbe6fBJEgjSX1bFhzUDtbQ0ni0xW9OHe+fgQIaeaYM/ccI1Ibk
2jF29yArsltnuKXo5nJfe6eUWZuNEeNme96t5nvAiwuQC4EWjMdHmBPghciB3vbJU+Yru6oaasuN
PXWzzqbkycsjy13A850Ly9Km44BFCsziL8yceioSp94t+y5nWON9KLztmf7G7HMdL5S7Zx25O2Nu
4pW9cnXKUoEvQNI/mO8UFfV+kbneel+vY5/UvI1GfWu5T1X7Xu4ZFhioKe3cwBKWkqShilGcxOKm
E8qmTLR2u4U/YAldRXPKVI5GOhh1IMe9bBpN8lU0zqcHD0mw58ni4GH/3ldfnv+Bn91HO7vfPbJv
KRY5+z+yjZ2dnW8ePvTw57ff7tDPnT3+G57dvd2dfW9375udb/f3dvd3Hno78GP326+8nU8ywoZn
iVeDQFd+mQILuRkt89xeDopNJjVweDBe8fM/yYOBLF97Zz8dn3o/Hr848o5fnR29Ojs+eXX44sXf
vBdHP555P7w4fPXnex4VfJmAaBd7uuggvWFfLVtjqAfgOUQ0FtGIBYk3TlLaxyzUPASCG5ek5bI1
i3UuU7rq2Nj/JHlKh7dAuYhSL1nFIu3DTYZu5a7o1dnNgnsDEpyyTDBANEj4tuQ8x+wT5S17K9yS
pYwUBA7Nga/xJLqXLuOOPBBXc4URZxPAIKGUYZFtMU1mQrUndEyDjEfLGbPHKuC6u1ccSa235Gh/
hEbnOA/SmcQjDYZ4sTBrYQxIOdgY8I45VlfOjsGbG/ItYA2YDEI1HoHUJ+IeaTn6jcusGvWESoSz
/XM4/DOo8P8WXAWnHM5A47gnVRB0oZGGginH9ZvMyrfd8XK+OMwwqk8V50oBvGn1LUYCPDdEvlIG
BN+zID5ZhPHPbMvWlJslWfiGkpPD3IjiP8OUPpP35VHYk64R9rznfMsJoXvMiZ7kaUSReMQM/jCL
8a5tJgES2cgEO0DACRqMdLCYzkkDjJ+ZzjACgHMfgDEAyOKTkLhLiycUJbhsEVDMxDDMVyGelw1n
M9LSyS5Pr5AakSYiEcATogadhiIpTDDmNn+4KeCJ886i89A90qU7hICym7zcEMgw5OvS5TY/XUrT
/iAvYelT9UK3gRZ+lA6SZcZsYZTEV6D+K/fFsDJG3IMwRLSepDCiRUKZ5oveUli77ncR4DilQ5sx
fVpJF5/BEkBDx/WdDJydvs0N7GOWZuWYNxXdtRdF/dgsumcvKrIyK6UFIdmLcy7myhn8knJPAwzt
+ocIyLkk3xEdbcY1LHI3ybt7JEF2DReWAEHRs6bZct98qfbOmhsAPX2UjYDOl3gjWDnBCPmTOLO9
ijIMOJlMmLowvOp96e7HgKEoDlLFWySSa1MCyjJ5zw4l0Xn3bkd1r5dtj4I0jVBrl96FQPDHIZDx
ey+NwvwqnI1bGXUlT5JZVnEfGi2mosXUr/CP40lJ11PyegBLDsjpiltkID9nwWXBtpF46Xw//gzQ
BvbHyVwkzUPmMaVjzS2E8+z09Oc/saGkz1qU0aczivo0PI3cmrI9oSdVa2HnKIr9gEpetIycgKMi
/wBD+p5/6hnmWqJUC72k+oFUgT8J5g9/kL9Kf/67IQz43bDn2EiOsn87rQxMAL1/3zUqduaeZ+no
6wPfrgL7Fy29SbpIJBoD/19gz14kAVv2uneB7yeIx7MQC7iCMx1wdL8TO0NEbjHdidDCe3NaHaWl
8jIqpWrF+VCt1+HOK+z4rUgKUNElOrqooiUJzB4aYbZd7M2hr1JCmwcob1l6kSHOsosFPR1oT5Px
chQWssfCflxq0xqXgajLXYR0yhMO0PYUfUhaU3IKyxtHXLcKUU4OfdfieTiacaICuu2aZZEN7mme
Uqp94T8LDLVhG/fBxryS32kZ9XEUFI1nZEum6DuW6CiCdzpCgwY6oxecVU1zyZP4HOWox0vRXoRm
kqBFDiR8GHq8nj139X1L5Hk5WkwAI9OKc1SxJeEzO1xsSWvsZS3JaDxXpuv1AMvCFsjv1CtsrMdX
kLmD8CJzZpomy8upmAUKGiF8DpcRUBwTBq8Jydernm4mQJTNGGbJjiOtVHP6pwcPIrtrT5kWXTsy
Ei9tyXS9FRj4KNqAnmBpozoyBh+rvWu6J6jSfUlV/VKqpkHMWqTkGNVFBLZLgWHBD1qZmsJQ8jNZ
yFzLkmnoKXiKntlP36PVYosFdZtH8hH3+jyPruyRBJS7Fpj7pS1THLbR1nWAX39VBCcFCjN0V7Qe
oOyQNqF1XYNSXRLSOyKPyU1O23NJkZbFBU4mTBrDkHiTAOR9CHrYTKIewaaEEcGgOl6WuMDxjZIo
jqYRyCNlO5JUQhQ5XWtdPe+oPp1qQjz5mEGJ5ro9HI9NysIBFc1UZl+/K6+aC7L4LH85shxmcwkp
BOmbp4zdqVZFx7eMiwxsRFrpp2Jc80XyppVuJAyxqkCOmwJBtrTETYEt1z5UGW4XXU5zaYkSmQXA
FFolOyg0mxZRrQktiJl6LRUEbM6QCv0iX4xkBZ53mnS8VWjCG/M+L1CgxlGiOSj7EUBRd7vxAXtZ
3MFDt8V1QKw2C57XQZrJfXFigmSZ88KaRHGUTUGhuAkN+mtSE7H96pGqcrvhn+3C/PJ8xFPx/7PT
dhsU20l0/fG+f3wa/P87D7/ZMfz/O/u7D7/4/3+Lh/3/wIOFlT6m+KXUGybsdfd+3n9Gm9neKaZa
9l5EozAG3oPJZ6R3AoogkP1tMHwwi9oPp8/LcnsXXe+MvHmiBRSEgQG2w15n4aBOZtEIT4wh/KKe
iBefZ975/oV0hWMvpnm+6Pd6q9Wqu9rvJullD2R3lqR5tJz3XoSXway3t7Pzx97Ow23SNrG97Rl3
j2DsbQBjf3uYjbXa+7baUPhhb3ent/cttUkp7bA0+tF7X4OIwLXWp4oZ1LyM8uly2AVZ01vtj3qr
cLiNh5JxuNzn3nCWDHtzEGFh2sOIqySuLFTaCJFeMfQpDdHxKw9bEdZnq+AG32OMVDvqht3ywKdI
q4fe19cEMcwOdqESQsUVkov8KSheFqLAVteTI3qbhbwRJE4y0qYIRjStAqFG41wfvj7O2OBBMuEB
FNBQrOCMc/SciIrkSJ2Mdov4PJy8noRTkHPdMcACyUdHwf+//wdEPcJ6IvNVpqMD30SWz+IMM1ds
SyDborGD1vkHH9MlZHmSZn7/3I+Dq+gygL/8i47no3nj933Qu2HU6UuU3/7tReteBV5xLMICEiUz
VRVaGkCWgKHDfCoYoT590hMRmVX4Ejmgn2QCFQXCRJQ0x6rQdkBY10HOxC6nQu7KpROolnUI1RKw
DHfDiHbh4Qe1JlXVjox0vFc/9M0ppr0mebAcG7kEolyxv3kSXGErEw90/Fx47zGQZgJNLFMMWAyn
eO4THYtoA3jTZBFOlrjpl3MknfBEYeSgN4vmsMzHDITbWgoSvadtZnmFMUaZqWcRZZ8sI/r54mBW
RqFXvDbeCl+CQ+FugTkjTTCsz1iQy4quwJsn/8AzdfMM/03wH1j07yO8kMd/yd9enuK/J/gPb61R
0YUvb45Ro25f0yUETDXtgs5MLy9fVQDts8anh5WKMMxXnNBL9dQX8LryvE6JvIWpiOtg1L++1/4C
M7+LJwYXXl896IIPHxrDknQ85eCgDKm133CMgXAGbPSBFbXwZFFMcZtAs2Kd0EwjH6RUQYK6nW4H
fArsFX1TdOLqsUAuZXdXQx/Q3GKKaHOPxAEaY8pgBQhU4le8ZSpP3oKtJu5dhKHyiRo8o5i2dxmI
PEBb7ROP/YEE64hQBnqSjOEQ0YRHfJy0ZFIflO2WFFh2gaxcrqWcFzOOZGFla8IdfQnZCJE+uZLh
NLVrn5CyNy6PiMjewHRWQjNaKyFtcu70A2C2r20cFIeqo+y8occXjze7HSzT2kIP0FqtwPxfPV7/
Qi77NSb4CMZ7rlGPOEfb5UwEyuwh45CdEEeg1qzVMCB751w3MxleoMa0I5gl6pOuJ8GJFFTUMctP
soaaSeJ+E8PGp9pzb034d6efTajmn0UrGAhBieRBfgmdFnUiTX0NcXeoI7V5sd0sD13w93ty0pz3
cfHWp1WfvNAvOSHqpCJMkdlzTPfm3CtuAk3Z4mAl0K2f9FGA9ZWprR5kKHtRVIA+/NvpySu8gQlk
YaWLmr/MFb/OyoM/Qr8xeskIlkPNBn0B2+tTogNbIIPRv2KFyXVf7CTfaXZKZd05QSS27zI9Guzq
DBXqwAaTVNaxzVPR0082S6ots+5ElX1U50pXfopJ++Ls/PJ8eb48X54vz5fny/Pl+fJ8eb48X54v
z5fny/Pl+fJ8eb48X54vz5fny/Pl+fJ8eb48/9rP/w+H1zMzAOABAA==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269179</attachid>
            <date>2016-01-16 13:59:11 -0800</date>
            <delta_ts>2016-01-18 19:28:37 -0800</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>ios_runloop_timer_patch.txt</filename>
            <type>text/plain</type>
            <size>1703</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE5NTE3NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE2LTAxLTE2ICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1MgU2ltdWxhdG9y
IFdLMV0gQVNTRVJUIGxvYWRpbmcgQmxpbmsgbGF5b3V0IHRlc3QgaW1wb3J0ZWQvd2ViLXBsYXRm
b3JtLXRlc3RzL21lZGlhY2FwdHVyZS1zdHJlYW1zL3N0cmVhbS1hcGkvbWVkaWFzdHJlYW0vbWVk
aWFzdHJlYW0taWRsLmh0bWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE1MzA3MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjQxODMxMDU+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3Rz
LCB0aGlzIHByZXZlbnRzIGFuIGV4aXN0aW5nIHRlc3QgZnJvbSBjcmFzaGluZy4KKworICAgICAg
ICAqIHBsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2U6Ok1vY2tSZWFsdGltZVZpZGVvU291cmNl
KTogQ3JlYXRlIHRoZSB0aW1lciB3aXRoIFJ1bkxvb3A6OmN1cnJlbnQKKyAgICAgICAgICBpbnN0
ZWFkIG9mIFJ1bkxvb3A6Om1haW4uCisKIDIwMTYtMDEtMTYgIEFuZHJlYXMgS2xpbmcgIDxha2xp
bmdAYXBwbGUuY29tPgogCiAgICAgICAgIEdpdmUgUnVsZVNldCBhIEJ1bXBBcmVuYSBhbmQgc3Rh
cnQgdXNpbmcgaXQgZm9yIFJ1bGVEYXRhVmVjdG9ycy4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuY3BwCShy
ZXZpc2lvbiAxOTQ4NDkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFs
dGltZVZpZGVvU291cmNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsNyBAQCBSZWZQ
dHI8TW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2U+IE1vY2tSZWFsCiAKIE1vY2tSZWFsdGltZVZpZGVv
U291cmNlOjpNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZSgpCiAgICAgOiBNb2NrUmVhbHRpbWVNZWRp
YVNvdXJjZShjcmVhdGVDYW5vbmljYWxVVUlEU3RyaW5nKCksIFJlYWx0aW1lTWVkaWFTb3VyY2U6
OlZpZGVvLCBtb2NrVmlkZW9Tb3VyY2VOYW1lKCkpCi0gICAgLCBtX3RpbWVyKFJ1bkxvb3A6Om1h
aW4oKSwgdGhpcywgJk1vY2tSZWFsdGltZVZpZGVvU291cmNlOjpnZW5lcmF0ZUZyYW1lKQorICAg
ICwgbV90aW1lcihSdW5Mb29wOjpjdXJyZW50KCksIHRoaXMsICZNb2NrUmVhbHRpbWVWaWRlb1Nv
dXJjZTo6Z2VuZXJhdGVGcmFtZSkKIHsKICAgICBtX2Rhc2hXaWR0aHMucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eSgyKTsKICAgICBtX2Rhc2hXaWR0aHMudW5jaGVja2VkQXBwZW5kKDYpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>