<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[193533] branches/safari-601-branch</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/193533">193533</a></dd>
<dt>Author</dt> <dd>matthew_hanson@apple.com</dd>
<dt>Date</dt> <dd>2015-12-05 13:40:24 -0800 (Sat, 05 Dec 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>Merge <a href="http://trac.webkit.org/projects/webkit/changeset/192953">r192953</a>. rdar://problem/23581540</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#branchessafari601branchLayoutTestsChangeLog">branches/safari-601-branch/LayoutTests/ChangeLog</a></li>
<li><a href="#branchessafari601branchLayoutTestsimportedw3cChangeLog">branches/safari-601-branch/LayoutTests/imported/w3c/ChangeLog</a></li>
<li><a href="#branchessafari601branchLayoutTestsplatformmacjsdomglobalconstructorsattributesexpectedtxt">branches/safari-601-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#branchessafari601branchLayoutTestsplatformmacyosemitejsdomglobalconstructorsattributesexpectedtxt">branches/safari-601-branch/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt</a></li>
<li><a href="#branchessafari601branchSourceWebCoreCMakeListstxt">branches/safari-601-branch/Source/WebCore/CMakeLists.txt</a></li>
<li><a href="#branchessafari601branchSourceWebCoreChangeLog">branches/safari-601-branch/Source/WebCore/ChangeLog</a></li>
<li><a href="#branchessafari601branchSourceWebCoreDerivedSourcesmake">branches/safari-601-branch/Source/WebCore/DerivedSources.make</a></li>
<li><a href="#branchessafari601branchSourceWebCoreWebCorexcodeprojprojectpbxproj">branches/safari-601-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLImageElementcpp">branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.cpp</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLImageElementh">branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.h</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLSourceElementcpp">branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.cpp</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLSourceElementh">branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLTagNamesin">branches/safari-601-branch/Source/WebCore/html/HTMLTagNames.in</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlparserHTMLSrcsetParserh">branches/safari-601-branch/Source/WebCore/html/parser/HTMLSrcsetParser.h</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li>branches/safari-601-branch/LayoutTests/fast/picture/</li>
<li><a href="#branchessafari601branchLayoutTestsfastpictureimagepicture1xexpectedtxt">branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x-expected.txt</a></li>
<li><a href="#branchessafari601branchLayoutTestsfastpictureimagepicture1xhtml">branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x.html</a></li>
<li>branches/safari-601-branch/LayoutTests/fast/picture/resources/</li>
<li><a href="#branchessafari601branchLayoutTestsfastpictureresourcesblue_rectjpg">branches/safari-601-branch/LayoutTests/fast/picture/resources/blue_rect.jpg</a></li>
<li><a href="#branchessafari601branchLayoutTestsfastpictureresourcescurrentSrcHelperjs">branches/safari-601-branch/LayoutTests/fast/picture/resources/currentSrcHelper.js</a></li>
<li><a href="#branchessafari601branchLayoutTestsfastpictureresourcesimageset4xpng">branches/safari-601-branch/LayoutTests/fast/picture/resources/image-set-4x.png</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLPictureElementcpp">branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.cpp</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLPictureElementh">branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.h</a></li>
<li><a href="#branchessafari601branchSourceWebCorehtmlHTMLPictureElementidl">branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.idl</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="branchessafari601branchLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/LayoutTests/ChangeLog (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/ChangeLog        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/LayoutTests/ChangeLog        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -1,5 +1,27 @@
</span><span class="cx"> 2015-12-05 Matthew Hanson <matthew_hanson@apple.com>
</span><span class="cx">
</span><ins>+ Merge r192953. rdar://problem/23581540
+
+ 2015-12-01 David Hyatt <hyatt@apple.com>
+
+ Implement the picture element.
+ https://bugs.webkit.org/show_bug.cgi?id=116963
+
+ Reviewed by Dean Jackson.
+
+ * fast/picture: Added.
+ * fast/picture/image-picture-1x-expected.txt: Added.
+ * fast/picture/image-picture-1x.html: Added.
+ * fast/picture/resources: Added.
+ * fast/picture/resources/blue_rect.jpg: Added.
+ * fast/picture/resources/currentSrcHelper.js: Added.
+ (fileName):
+ (currentSrcFileName):
+ (currentSrcFileNameNoParams):
+ * fast/picture/resources/image-set-4x.png: Added.
+
+2015-12-05 Matthew Hanson <matthew_hanson@apple.com>
+
</ins><span class="cx"> Merge r191252. rdar://problem/23772905
</span><span class="cx">
</span><span class="cx"> 2015-10-17 David Hyatt <hyatt@apple.com>
</span></span></pre></div>
<a id="branchessafari601branchLayoutTestsfastpictureimagepicture1xexpectedtxt"></a>
<div class="addfile"><h4>Added: branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x-expected.txt (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x-expected.txt         (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x-expected.txt        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+PASS document.getElementById("canary").clientWidth is 75
+PASS currentSrcFileName("canary") is "blue_rect.jpg?0"
+PASS document.getElementById("simple").clientWidth is 800
+PASS currentSrcFileName("simple") is "image-set-2x.png?2"
+PASS document.getElementById("multiple").clientWidth is 800
+PASS currentSrcFileName("multiple") is "image-set-2x.png?2"
+PASS document.getElementById("other_children").clientWidth is 800
+PASS currentSrcFileName("other_children") is "image-set-2x.png?2"
+PASS document.getElementById("img_before_source").clientWidth is 75
+PASS currentSrcFileName("img_before_source") is "blue_rect.jpg?1"
+PASS document.getElementById("unknown_type").clientWidth is 1600
+PASS currentSrcFileName("unknown_type") is "image-set-4x.png?3"
+PASS document.getElementById("svg_type").clientWidth is 800
+PASS currentSrcFileName("svg_type") is "image-set-2x.png?2"
+PASS document.getElementById("empty_type").clientWidth is 800
+PASS currentSrcFileName("empty_type") is "image-set-2x.png?2"
+PASS document.getElementById("whitespace_type").clientWidth is 800
+PASS currentSrcFileName("whitespace_type") is "image-set-2x.png?2"
+PASS document.getElementById("parameter_type").clientWidth is 800
+PASS currentSrcFileName("parameter_type") is "image-set-2x.png?2"
+PASS document.getElementById("empty_srcset").clientWidth is 1600
+PASS currentSrcFileName("empty_srcset") is "image-set-4x.png?3"
+PASS document.getElementById("no_srcset").clientWidth is 1600
+PASS currentSrcFileName("no_srcset") is "image-set-4x.png?3"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
+some text
+
</ins></span></pre></div>
<a id="branchessafari601branchLayoutTestsfastpictureimagepicture1xhtml"></a>
<div class="addfile"><h4>Added: branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x.html (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x.html         (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/picture/image-picture-1x.html        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,147 @@
</span><ins>+<!DOCTYPE html>
+        <script src="../../resources/js-test.js"></script>
+        <script src="resources/currentSrcHelper.js"></script>
+        <script>
+         if (window.testRunner)
+         testRunner.dumpAsText();
+
+ addEventListener("load", function() {
+         shouldBe('document.getElementById("canary").clientWidth', '75');
+         shouldBe('currentSrcFileName("canary")', '"blue_rect.jpg?0"');
+         shouldBe('document.getElementById("simple").clientWidth', '800');
+         shouldBe('currentSrcFileName("simple")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("multiple").clientWidth', '800');
+         shouldBe('currentSrcFileName("multiple")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("other_children").clientWidth', '800');
+         shouldBe('currentSrcFileName("other_children")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("img_before_source").clientWidth', '75');
+         shouldBe('currentSrcFileName("img_before_source")', '"blue_rect.jpg?1"');
+         shouldBe('document.getElementById("unknown_type").clientWidth', '1600');
+         shouldBe('currentSrcFileName("unknown_type")', '"image-set-4x.png?3"');
+ shouldBe('document.getElementById("svg_type").clientWidth', '800');
+         shouldBe('currentSrcFileName("svg_type")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("empty_type").clientWidth', '800');
+         shouldBe('currentSrcFileName("empty_type")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("whitespace_type").clientWidth', '800');
+         shouldBe('currentSrcFileName("whitespace_type")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("parameter_type").clientWidth', '800');
+         shouldBe('currentSrcFileName("parameter_type")', '"image-set-2x.png?2"');
+         shouldBe('document.getElementById("empty_srcset").clientWidth', '1600');
+         shouldBe('currentSrcFileName("empty_srcset")', '"image-set-4x.png?3"');
+         shouldBe('document.getElementById("no_srcset").clientWidth', '1600');
+         shouldBe('currentSrcFileName("no_srcset")', '"image-set-4x.png?3"');
+         }, false);
+        </script>
+        <!-- A canary image to see that the test is actually working -->
+        <img id="canary" src="resources/blue_rect.jpg?0">
+        <!-- simple picture construct -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="simple" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- Multiple img elements -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img src="resources/blue_rect.jpg?1">
+         <img id="multiple" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- non-source children - should be ignored-->
+        <picture>
+         <div>some text</div>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="other_children" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- img before its source siblings - should ignore its siblings -->
+        <picture>
+         <img id="img_before_source" src="resources/blue_rect.jpg?1">
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+        </picture>
+        <!-- source with unknown type - should be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" type="image/nonsense" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="unknown_type" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- SVG source - should not be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" type="image/svg+xml" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="svg_type" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- Empty type - should not be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" type="" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="empty_type" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- whitespace type - should not be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" type=" " sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="whitespace_type" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- parameter type - should not be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" type="image/png;bla=bla" sizes="800px" srcset="../hidpi/resources/image-set-1x.png?2 400w, ../hidpi/resources/image-set-2x.png?2 800w,
+         resources/image-set-4x.png?2 1600w">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="parameter_type" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- source with empty srcset - should be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" sizes="800px" srcset=", , ">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="empty_srcset" src="resources/blue_rect.jpg?1">
+        </picture>
+        <!-- source with no srcset - should be ignored -->
+        <picture>
+         <source media="(max-width: 400px)" sizes="400px" srcset="../hidpi/resources/image-set-1x.png?1 400w, ../hidpi/resources/image-set-2x.png?1 800w,
+         resources/image-set-4x.png?1 1600w">
+         <source media="(max-width: 800px)" sizes="800px">
+         <source media="(max-width: 1600px)" sizes="1600px" srcset="../hidpi/resources/image-set-1x.png?3 400w, ../hidpi/resources/image-set-2x.png?3 800w,
+         resources/image-set-4x.png?3 1600w">
+         <img id="no_srcset" src="resources/blue_rect.jpg?1">
+        </picture>
+
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="branchessafari601branchLayoutTestsfastpictureresourcesblue_rectjpg"></a>
<div class="addfile"><h4>Added: branches/safari-601-branch/LayoutTests/fast/picture/resources/blue_rect.jpg (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/fast/picture/resources/blue_rect.jpg         (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/picture/resources/blue_rect.jpg        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+\xFF\xD8\xFF\xE0JFIFdd\xFF\xECDuckyd\xFF\xEEAdobed\xC0\xFF\xDB\x84\xFF\xC0K\xFF\xC4M
+
+\xFF\xDA?\x8E\x86\xFF\xC8\xFF\xD9
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="branchessafari601branchLayoutTestsfastpictureresourcescurrentSrcHelperjs"></a>
<div class="addfile"><h4>Added: branches/safari-601-branch/LayoutTests/fast/picture/resources/currentSrcHelper.js (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/fast/picture/resources/currentSrcHelper.js         (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/picture/resources/currentSrcHelper.js        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+function fileName(src) {
+ var array = src.split('/');
+ return array[array.length -1];
+};
+
+function currentSrcFileName(id) {
+ var currentSrc = document.getElementById(id).currentSrc;
+ return fileName(currentSrc);
+};
+
+function currentSrcFileNameNoParams(id) {
+ var currentSrc = document.getElementById(id).currentSrc;
+ var name = fileName(currentSrc).split('?');
+ return name[0];
+};
</ins></span></pre></div>
<a id="branchessafari601branchLayoutTestsfastpictureresourcesimageset4xpng"></a>
<div class="addfile"><h4>Added: branches/safari-601-branch/LayoutTests/fast/picture/resources/image-set-4x.png (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/fast/picture/resources/image-set-4x.png         (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/picture/resources/image-set-4x.png        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,211 @@
</span><ins>+\x89PNG
+
++IHDR@@!\x8E\xA7bKGD\xFF\xFF\xFF\xA0\xBD\xA7\x93        pHYs\x9A\x9CtIME\xDE2H0\xBEtEXtCommentCreated with GIMPW\x81 IDATx\xDA\xEC\xDD\xEB\x9B\xDDuy\xEF\xF1\xFB7\x995Yk%\x90H+P\x95\xB3\xC5R@\xA4[\x94\xA3\xC1\x90\xD0VQw\xB7\xB2\xC5B|\xB6\xF7QK\x88h\xA5\xD6V\xA5[́\xF3)PH\xAB\x82\x8A
+\xA5Q\xC1\x92m(A\x92\xCCZ3\xB3\xFB\xED\xD5^T\xE5\x90\xEF̬u\xAF\xD7\xEBO\xF8\3k\xFD~\xBC\xC3=\xD5\xC1W<\xD8\x80D\xC6Ld#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\
x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E
\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:
\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9
@:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80
\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\
xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA4#\x80\xE9 @:\x90\x8E\xA43n\x80or\xFD%1\xF3\xDD[+1 \x96\xAC\xBE\xD9\xA4\xB0\xF3+\x9D\xFB\xEF4D!c{\xED\x8B?\xFD\xF9\xA8j\xC6\xE6\z*v\|~\xF4\xB6=j\x8CB\xC6?6\x9D\xFB\xBC\xF4\xE7B\xBC83?\xBAO\xFCfE\xE3\xCC\xF3\xA3Z\xB4\xC4\x85\xF4\xB6=\xED\x9B/70/\xDA/?
+\xAA\xED\x8D\xB3\xFE\xB7!\x80\x97Exz\xED\xC9h\xAD_c`v^\xCCv[\x8D\xB3\xCE7DAӷ_\x9DG6\x98S\x9DG\x8C\xE9;\xAE5DA\x8D\xB3>c\x8B\xFD#\xE0e>g\x9B\xE0\x85M\xDD\xF4\xE5\xE8o\xDFf`\xD6Ԏ8.jGg\x88R\xFA\xFDh\xAD\xBB8\xFA3Ӷ\xE6\xE6cg\xBA\x93kWG\xF4\xFB\xC6(\xF5\xDD\xF8\xE6\xE3\xA3vı\x86^6\xE0t~\xF2@L\xFBFC\xB3\xAE~\xE6\xF9Q-\xDA\xDD\x858\x85̥֍_\x8E\xFE\x93\x8F\xA2\x90jђ\xA8\x9Fy\x9E!\x80]"\x80\xFC\xFD驘\\x89!\x80\xB9yA[\xBC$g}\xD29\x85̅\xCEO\x88\x99;\xAF7DA\xF5埌1\xD8\xD5\xE7k\xFCz퍗G\xFF\xC9\xC7+̙\xDA\xC7F\xED\x88w\xA2\xA7\xB0\x80\xD9\xFE\x98\x99j\xC5\xE4Z\xFF`\xA6\xA4\xF1#\x8F\x8F\x89Î1\xB0\xCB\x80_\xA3\xB3e\xB3?b        ̋\xFA\x99\x9Fp
+\xAB \xA7\xB0\x80\xD9Ծ\xF1K\xD1\xCA?\x98)f\xF1\xD2h,\xFB\x84\x80"\x80_\xA1ߙ\x89ֺK\xFCK`~^\xD4/\x89\xC6Y\xA2 \xA7\xB0\x80\xD9\xD0y\xE8~+\xAE\xB0\xC6\xF2b\xCC?J=W\x9B\xE0\xBFk\xFF\xDDע\xF7Ŀ\x987\xB5#\x8E\x89ڛ\x8F7D)Na\x85\xF5ړ1\xB9\xEEbC4\xFE\x96b\xE2У+#\x80<Og\xEB\xC31\xFD\x8D+̻\xFA\x99\xE7E\xE5\xC0\xF3\xDC)\xAC\xAF(b\xEA\x86/E\xFF\xE9'Q\xCAn\xAF\x88\xE6\xB2\xF3\xEC%\x80\xFC\xFDn'Z\xEBVG\xF4z\xC6\xE6\xFF\x85mђ\xA8/\xFF\xA4!
+\x9A\xBE\xFDZ\xA7\xB0\x80]6\xF3\xE3\xEF\xC5\xF4\xDD7\xA2\xA0\xE6\xF2OE\xD5\xDC\xCD@\xD9\xE7i\xFC\xA7\xA9M\xA2\xF7\xD8#\x86\xC6\xC4a\xC7\xC4\xF8\x91Na\xE3\xB0\x8Bz\xED\xC9\xE7\xFEV\xC5\xD4\xDE\xFA\xEE\xA8r\x94!\x80\xE2\x80\xD7\xFDٖh\xDF\xF6uC\xA7\xB1\xEC\x8B\x97\xA2\xA7\xB0\x80]Ѿ\xFE\x8B\xD1߾\xCD\xA5,\xF9\xADh,\xFB\xB8\x80Y!\x80DD\xBFۍ\xC9u\x97D\xD5\xEB\xBC\xB7E\xBBG\xE3\x83Na\x95\xE4\xF0r\xCC\xFC辘\xF9\xCE-\x86(\xA8\xF9\xC1\xA2j,60;\xCF\xD1&\x88\x98\xBA\xFD\x9A\xE8\xFD\xF4dž\xD6\xC4a\xBF\xE3G\xBE\xCB\xA58\x85\xBCD\xBD\xF6d\xB4\xD6;}UR\xEDm'F\xED\xE0\xB7\x9850\xF2\xBAOl\x8D\xF6\xDF\xFD_C\xAF\xB1\xEC<\xA7\xB0
+r
+x)\xDA\xD7}!\xFA۟4D)K\xF6\x8C\xC6\xFB\x9D\xBEf\x97\x8C\xB4~\xBF\xADuk\xA2\xF2/\x80\x81ax\x81[\xB4{4\x96_`\x88\x82\x9C\xC2^\x8C\xCE\xE6{b滷\xA2\xA0E\xCB/\x88\xAA\xB1\xC8\xC0\xEC>?\x9Be\xD3w\\xDD-\x87\xE3o9\xC1\xA58\x85\xBC\xD0\xC7Dkg\xEC\xDCp\xA9!
+\xAA\xF5\x9E?\xE8m\x86f\x9D\x8C\xAC\xEES?\x8F\xF6\xC6/:\xCDe\xE7E\xEC\xF6
+C\xE2\xF9ˈg\x9C\xBE*\xA5Z\xBAg\xD4\xCFp\xFA
+\x980\xB2\xDA\xEB\xD7DLO:Us\xB7h:\x85U\x94SX\xC0\xAF2\xF3/\xFF3\xF7n2DA\x8D\xB3/\x8C\xB1z\xD3\xC0\x9C@\x80\x914}\xD7\xCD\xD1y\xE8\xFB\x86\x86V\xED\x90w\xC4\xF8[~\xDF\xA58\x85<\xFFc\xA1\xB5#&\xD7\xC6%\xBF\xBB\xDEqR\xD4\xDEx\xA4!\x809#\x80#\xA7\xB7\xFDɘ\xBC\x86^\xF3\xE7E춇!J}?8\x85\xFC\x93W_\xF1\xECS\x86(\xA4Z\xBAW\xD4\xDF\xF7dž\xE6\x94\x8C\xDE\xCB\xEC\x97F5\xD520\xF4\xAA\xC6b\xA7\xB0
+s
+\x88\x88\x98\xFE绣\xF3O\xFF`\x88\x82+\x9C\xBE\xE6\x9E\x8C\xD6\xCB콛\xA2\xBB\xF9Ci\xD49*jo}\xB7!Jq
+F^o\xE7/\xA3\xB5\xE1RC\x94\xFC\xAE:\xFA\x94\xA8\xBD\xE1w+\xCC9\x9D\x97\xD9g\x9F\x8Eֵ_0\x90Nc\xD9ǝ\xC2*\xF9}\xE1\x8C\xB4\xD65\x9F\x8Fر\xDD\x85TK\xF7\x8E\xFA\xE930/`t^f\xAF\xFA\\xC4\xE4C\xE9T\x8D\xC5\xD1<\xFBS\x86(\xC8),\xD1\xDF\xFD\xBE\x9D\xFBn7DA͕9}\xCC\x8D\x97\xD9\xEF+:\xF7\xDFe \xAD\xDA\xC1ow
+\xAB$\xA7\xB0`\xE4\xF4v>\xED+\x9F5DAǜ\xE3a`\xDE \xC0h\xBC\xCC^\xF5\x86\xD2k,\xFBxĒ\xDF2D\xA9\xEF\xA7\xB0`\xA4\xB4\xAF\xFC|\xF4w>c\x88B\xAAW\xEC\xF5\xD3>j`^         @z\xADk.\x8B\xFE\xCE_H\xAFj,\x8E\xE6/0DAϝ\xC2\xFAC@r3?\xB83f~\xF0-C\xD4\\xB9*\xAA\x85+C\xF3Jr\xBF\xCC>\xF8w\x9C\x81\x91R;\xF8\xEDQ{ۉ\x86(\xA5ߏֺ\xD5NaAb\xBD\xCFD\xEBJ\xA7\xAF\x8A~{z\x8C\xBF\xFEpC\xF3N\xD2\xEA\xB7vĤ;\xCE\xC0j\xBC\xDF)\xAC\x92\x9C\xDCZW~\xCE\xFF-\P\xB5ǫ\xA2\xE1\xF40 \xEF\xCB\xEC\xB5\xF1\xECS\x86FN\xD5X\x8B\x96\xCA9\x85I\xB7\xBF{t\xEE\xBF\xD35V^\xD5D\xDD\xC0@@\x80\x94f~\xF8O1s\xCFm\x86F\xD6\xF8Ao\x8B\xDAQ\xEF1D)NaA:\xBDۣ}\xD5\xE7+QP\xED\xB83\xA2v\xC0a\x86\x86\xE4{\x99mOFk\xC3g\x8C\xBC\xFA\x8Fj鞆(\xF5\xFD\xE2\xA4Һ\xE2\xB3N_T\xED\xB9O4N=\xD7\xC0@@\x80t\xA6n\xF8R\xF4\xB7o3\xE0\x85\xAFތ\xA6SXE9\x85I~\x97\xEF\xFBFt\xB8\xCB\xA5TU4W8}\xE0\xF3\xB0        \x80L:\xDF\xD3w\xDFd\x807\xFE\xA6\xB7F\xED\xA8\xF7\xA2\x94\x
FF8\x855=eR\xBDg\x9F\x8E\xF6\xA2\xA0\x89\xE3\xDE\xE3\xAF;\xD4\xC0\xC0@\x804\xFA\xD3S1\xB9a\x8D!\x9E\xA7~\xC6\xFFr
+\xAB\xA0G\xA3\xBD\xF1rC\xC0\x90jm\xB84\xFA\x93\xCF\xA2\x90\xB1\xBD\xF6\x8D\xFA)60\x98\x9FQ&\xB2ho\xBC<\xFAO>n\x80\xE7\xBF\xF8՛\xD1X\xFE'\x86(h\xFA\xA7\xB0`(w\xEF\xFD\xFB\xE8<\xF8C\x94RU\xD1X\xB1*\xAA\x89\x85\xB6\xF39\xD8@\x9D-?\x8C\xE9;\xAE5\xC0\xAFQ{\xD3[\xA2\xF6\xA7\xB0\x8Aq
+\x86N\x88\x96\xD3WEM\xBF,\xC6\xF7?\xC8\xC0\xC0@\x80\xA1\xD7\xEF\xCCDk\xED\xC5\xFD\xBE1~\x83\xFA\xFB\x9C\xC2*\xC9),.\xAD\xF5\x9F\x89h\xEF4D!c{\xED\x{15377E}\xFC\xB3\xCA\xC0\xB0k\xDF\xF2\xD5\xE8m\xDBj\x80z\xAC7\xA3q\xF6\x85\x86(\xC8),\x92\xDF\xD5{n\x8B\xCE\xE6{QJ5\x8D\x95\x9F\x8E\xAA6a`\xB0\x9FM\xB3\xCEևc\xFA\x9BW\xE0E\xAA\xBD\xF1Ȩ\xBD\xE3$C\x94\xE2\xBC\xDE3\xBF\x88\xD6\xD5i\x88\x82&\xDE\xF5\x81\xED\x9B<^\xDDNL\xAE\xBB8\xA2׳\xC0KP\xDFG\xB5t/C\xE2\xB6\xC9+k"\xA6&+Q\xC8\xD8^\xFBE\xFD\xE4\x8E\xCF,ê\xBDi}\xF4\xDBb\x80\x97\xFA"XoFc\x85SX%9\x85\x83i껷Fw\xF3\xBD\x86(\xA5\x8B\xC69\xAB\xA2\xAF\xD9\x8E\xE7^è\xFB\xF8\x96h߶\xD6/S\xED+\xBF\xB5\xA3O1D)Na\xC1\xC0\xE9m\xDF\xADk\x9D\xBE*iℳb\xFC5N_\xC3C\x86N\xBFۍ\xC9u\x97D\xD5\xEB`\xD4O\xFFXTK\xF76D!Na\xC1`\x99\\xBF&\xAA\xA9\x96!
+\xA9^\xF9ꨟ\xF4\x87\x86\x86\x8A\x9D\xA9o^\xBD\xFB\xB1!v\xF5\x85\xB0ތ\xC6J\xA7\xB0Jr
+\xE4w\xFB\xA3\xFBQ\xECc,\xADt\xFA
+/ä\xFB\xC4\xD6h\xDF\xF2\xB7\x86(\xA4v\xE0\x9Bc\xE2\xE8S+Q\x8ASX0\xFFϋO=\xAD\xEB\xBFh\x88\x82&NX^\xFDCCG\x86F\xBFߏֺ5Qu;\xC6(h\xE1\xE9u
+\xAB \xA7\xB0`~\xB5ׯ\x89\x98v\xFA\xAA\x94ꕯ\x89\xFA{\xCF10\x94`hL\xDFq]t\xB7<h\x80\xD2/\x86\xF5f4W^d\x88\xA2\xDFYNa\xC1|\x98\xBA\xEB\xA6\xE8<\xF4=C\xFB\x82\x8B\xE6|\xDA\xE9+`x?\xC6L\x83\xEE/~\xED\x8D_1\xC0,?\xF0\x88\x988\xE64C\x94\xE2\xCC\xFD\xF3\xE2\xD3?\x8F\xF6+m\x88\x82\xFE\x8F\xB3c|\xBF\xD7Z0Z\xEB\xD7D\xF8\x8FH\xB3j\xE1\xA9\x89\xEANa\x95\xE2̝~\xBF\xAD\xB5\xAB#\xA6\xDA\xC6(\xA4z\xD5\xFEQ\x8F\xD3W\xC0p@\x80\x817}\xF7\xC6\xE8>\xFCC\xCC\xF6b\xBD\xCD\xABQ\xF2;\xCC),\x98\x9Bߵo\xDF݇\xEF7D!\xFDj,\x9A+WE,70\xDCϷ&Yo\xFB\xB6h]\xE7\x94\xC0\?\xF0\xF0\x988\xD6)\xACb\x9CY\xD7\xFD\xC5Ϣ}\xE3\xDF\xA2\xA0\xFA\x89+b|\xBF=h\x93W\1\xDD2\xC0\xAA\x9F\xFAѨ\xF6x\xA5!
+q
+fO\xBFߏ\xC9u\xAB\x9DJ-hl\x9F\xFD\xA3~\xE2JC9>\xD3L\xAA\xE9{6Ew\xF3\xBD\x86\x98c\xD5\xC2F4W\d\x88\x92\xDFiNa\xC1,\xFDn]\xBD\x9F<`\x88B\x9E;}\xF5i\xA7\xAF\x804` \xF5~\xF9T\xB4\xAE\xFB\x82!\xE6\xC9\xF8\xEB\x8Fڱ\xA7\xA2\xA7\xB0\xA0\xFC\xF3ⓏE\xFB\xA6/\xA2\xA0\xFA{Ή\xFB\xBE\xCE@0\x90ZW}.br\x87!\xE6Q㴏F\xB5ǫQ\x88SXPN\xBFߏɵ\xAB#fD\xC5R\xC6\xF6= \xBE\xFBlC\xB9>\xDBL\x9A\xE9\xEF\xDD\x9D\xEE6\xC0<\xAB&\xEA\xD1\y\xA1!J~\xC79\x85e~\x97\xBEumty\xD0\x85\xF4\xC7Ds媨\x9C\xBE\x92@\x80\x81\xD2\xDB\xF1L\xB4\xAF\xBE\xCCb\xFC\x80âv\xEC\xFBQ\x8ASX\xB0˺Ol\x8D\xD6Ư\xA2\xA0\xFA{ω\xFB\xECo (\xED\xAB/\x8B\xFE\xCEg0@\xA7}\xC4)\xAC\x82\x9C\x97\xAF\xDF\xEBEk\xDD\xEA\xA8f\xA6\x8DQ\xC8\xD8~\xC6\xC2\xDF_n \xE7g\x9C        \x80A1\xFD\xCFw\xC7\xCC\xF7o7\xC0\x80\xA9&\xEA\xD1p
+\xAB\xECw\x9ESX\xF0\xB2L\xDD~Mt\xB7l6D!\xFD\xB1\xD1<\xE7"\xA7\xAF\x80\xB4`0^\xBEZ;\xA2u\xC5g+0\xA0j\xB5\xE3\xCE0D\xB1/>\xA7\xB0\xE0\xA5\xEA\xFE|k\xB4\x9D\xBE*\xAA~\xD2Ƃ\xDF~\xAD!\x80\xB4` \xB4\xAE\xF9BijO`\x805N=7\xAA=\xF71D!Na\xC1\x8B\xD7\xEF\xF5brݟG\xD5\xED\xA3\x90\xB1\xDFyC,<r֙\x98o\x9D\xDE3\xF7n2\xC0\x80\xAB&\xEA\xD1\qaDU\xA3\xA7\xB0\xE0ř\xFA\xC6U\xD1\xFB?2D!\xFD\xB1\xF1h\xAC\xBC(\xAA\x8C\xA4&\x80\xF3\xAAמ\x8C\xC9+\x9F1\xC0\x90ݡ1q\xDC\xFB+Q\x8ASX\xF0\x82\xBA?\xFFi\xB4o\xFE[C\xD48\xF9\x8Fb\xFC\xB7_c =\x98W\xED\xFE&\xFA۟4\xC0\xA9\x9F\xF2a\xA7\xB0
+r
+~\xBD~\xB7\x93k/\x8E\xAA\xE7\xF4U)c\xAF~cL\xBC\xEBLC\xA3\xF1\x99g`\xBEt\xBA?f\xEE\xDE8\xDA/\xF5\x95\xC71`\xF8T\xA3\xB9\xF2"\xA7\xB0
+r
+~\xB5\xA9o\\xBD\x9F\xFE\xD8\xA5\x9E=\x8CG\xF3\x9CUN_#\xC370?/_\xD3\xED\x98\\xBFf\xE4w\xA8\xBF\xFBl?\xC0P\xDF\xFF\xA7\xB0\x8A~1:\x85\xCF\xD7\xFDٖh\xDF\xF25C\x94|\xF6<\xF9ñ`\xEF\xDF102`^\xB4o\xBA<\xFAO=>\xDAb{\xEDO\\xE9\x87Z\xF5S>c{\xEDk\x88B\x9C\xFF\xD4\xEFvb\xF2뫝\xBE*h\xC1k\xDE\xDF\xF5C\xA3\xF5\xDEm`\xAEu\xD9\xD3w^7\xF2;4\xCE\xFE\x93\xA8\xC6k~ \x80\xA1UM,\x8C\xC6
+\xA7\xB0Jr
+\x9E3\xF5\xF7WDo\xEBC\x86(\xA4_\x9B\x88\xC6\xCAUQ\x8D\xF9O\x81\xC0h\xF1\xA9\xCC\xED\xCBWg&Z\xEB.\x8E\xE8\xF7Gz\x87\xDAѧ\xC4\xF8\xEB\xF5\xBD\xF1\xFD\x8E\x89\xE3\x9D\xC2*\xF7E\xE9t{$ڷ:}UR\xFD\xE4\x80wf IDATł\xBD\xF730r`N\xB5o\xF9j\xF4\xB6=:\xDA#\xEC\xB6G\xD4O\xFF\x98 \x8D\xFA\xC9\xE7:\x85U\x90SX\x8C\xB2\xE7N_\xFDyT\xBD\xAE1
+Y\xF0ڃb\xE1;\x97I0g:[\x8E\xE9o^9\xF2;4\xCE\xFAD\x8C՛~ \x804\xAA\xDAD4V\xACr
+\xAB\xA0\xE7Na=hF\xCEԦ\xF5\xD1{\xEC_+QH\xBF6\x8D9}\x8C,\x9F~\xC0\xDC\xE8vbr\xED\xEA\x88^o\xA4g?\xFC\xF7b\xE2\xB0c\xFC<\xF9>\xDF\xF6?(&\xFCq\xDDr\xFA\xFDh\xAD\xBB\xC4),F\xEBq\xF1\xD1\x8D\xF6\xAD_7DA\x8DS\xCEu\xFA
+i0'ڷ\xAD\x8B\xFE㏌\xF6\x9B\xD1\xF8\xC0\xF9~\x80\xB4\xEA'}\xC8)\xAC\x82\x9C\xC2b\xA4t;\xB1s\xED\x9FE\xD5\xEF٢\x90\xFB\xEF\xF47\x9A\x80\xD1&\x80\xB3\xFF>\xFB\xF8\x96hoZ7\xF2;4N\xFF\x9F1\xB6\xFB~ \x80\xB4\xAA\xDAD4V\xAE\x8A\xA8\xBCj\x96\xE2\xA3\xA2}\xDBף\xFF\xD8C\x94R[͕E\xE54!0\xE2<\x95\xB3\xAA\xDF\xED\xC6\xE4\xDA\xD5#\xFF\x87,pXԎ>\xC9\x90\xDE\xF8k\x9D\xC2*\xFBE\xEA\xF9u\xB6>S\x9B\xD6\xA2\xA0\xFA\xA9\x89\xB1=\xF710\xF2\xFE?{\xF7\xFD'U}\xEFq\xFC}\xA6\x9E3KY\x91PTP\xC4 A\x8C\x80\xF4\xCERL,\xB17\x8A\xFAg\\x8A%\xB6{cb╥H\xC5D\xD8;6*J@@\x8A;s\xA6\x9Ds`\xF1\xAE\xAB(廻3缞\xBF\xDDG\x8F\xDCG^s\x98\xF9~\xF7\xB3\xFB \xA0A\xE56<.o\xFB\xD6P7\xF0\xA319Sg\xF1xB\xC3y\x85"m\xD89o
+\xAB\xB0\xE8sR!\xAF\xF4\xA2y\xA1\xFF\x9E8\x93"\xA7\xF7Tb\xD08B\x80\x80\x80Tܹ]\x99u\xFF}\xFB\xB2\x99|\xF9$\x80P\xB1bq93ng\x96A\xAC\xC2BP\xB9O?&\xC76B\x98\x92H\xAAb\xFA\~\xF1jq+\xC2\xF7<eϗU,\x84\xBA\x83վ\x8B\x92\x97L\xE5\x81:\xAC\xC22\xFD\xC1\xCA*,O\xF1ˏ\x95{n        !\xB2G_\xA3\xC8\xC9\xED        \xB5\x80\x80\x91۴J\xC5m\x86;\x82e\xA9b\xDAlY\xD1\x80Pb\x96Y\xAC\xC2B\x90\xF8\x85\xBCjX}eT\xF4\x8C\x9EJC\xA8\x830\xCE۳\x83\xD0HJ\xAFh\xA7\xB3x \x84\x96\x8B˙y\xAB\xB0b\x82\xC2]\xF7\xA8\xFC\x9D_\xC2\xD8\xC1Ӗ3\xFDV_@=\x9CB\x80Q\xBE\xEF+\xBDx\xA1\xF2Ve[٣\xAE\xE0\x81z\xB1\xD3\xCEV\xE2\x92)\x840\xF7A\xAB\xF4\xA2\xF9\xAC\xC2BY+|\xB1E\xB9\xE7\x96\xC2 {\xEC\x9FmՎP`T\xEE\xA5'U\xFCds\xE8;\xA4\xA6\xDE*+\xE9\xF0@\x80${\xC4d\xB5\xEBDC\xFC\xDD\xDF\xF0\x97\x96(\xDF緐W\xE6\xB1y\x92\xCF\xEA+S\xA2g\xF4Rb\xAB\xAF\xE0\xE70\xC6x\xDF풻\xFA/\xA1\xEF\xEB=D\xB1\xEE}y \xA0\x96\x8B\xABb\xAB\xB0Lbʕ\xFB\xD4#\xF2\xBE\xDDN
S\x92\xB6\x9CsY}G\xC0\xE9\x93^z\xB7\x94˄\xBA\x81U\xD1B΄y\xA0\x9Eh\xA73\x95\xF8\xFDTB\x98\xC2*,\x94\xA1¶-\xCAmXN\x83\x9Cq\xD7)z\xAB\xAF\xE0H\x80#\xB2\xAF>\xA3\xE2\x967B\xDF\xC1\xBD"\xCDZ\xF2@\xC0ϽG^v\xB9\xACv\xA7\xC2Va\xA1\xAC\x9E\xD7|N\x99E\xFF%\xF9>1\x89u\xFB\xAD\xFDG~p¼{\xE4\xAE|(\xF4\xA2g\xF5V\xA2ϥ<pV,\xAE\xD4\xCC;\xA4WQSX\x85\x85r\xE1\xAE\xFD\x9B\xBCo\xBF&\x84)        G\xF6\xB49t\x80_\xC1\xA9\x9C\xB0̲?KnM\xC8/\xA1I9Sg\xF10\xC0\xAF\x88\x9D\xDAM\x89K\xAAa
+\xAB\xB0P
+\x9F\xA0\xDCƕ\x840\xC8\xBD\xA2\xAD\xDA~pBronPὗB\xDF!9\xF2
+E[\xB1\x8E\x86}\xD9LVa\xE4\xEF\xFEF\xEEڿ\xA5\xF9|\xE6\xB2J/\x9A\xC7\xEA+\x83\xA2g\xF5V\xA2\xFFB\xC0Q`\x8E\x9Bwp\x9F\xDC\xF7s\xA0:\xF5L%\x8E\xE7\x81\x80\xA3\xC4*,\xF3r\x9BV\xB1
+%)\xB3\xF6\xAF\xF2wCC\xFC\xA4\xA3\xAB\xAF\xE0\xE8\xEF\xEB$\xC7\xCB]~\xBF\xFC\x9A!?ME\x94\x9A6[V4\xCA\xC7 vj7%/e\x961\xAC\xC2B        \xCA\xFA\xAE\xF2W\xC2 g\x8AT\xB6!핝\xE0x\xE4\xDE}Q\xF9w\xFE\xFA\x89!S\xEDЕ\x8ECr\xD8LY\xED;\xC2Va\xA1\xA4\x9Eǜ\xAB̢\x840(z\xF6J\xF6N8@\xC0\xB1_h\xD3\x95Yvo\xE8;X\xAD;Ⱦ\xECr8\xDE\xF7\xD1X\\xA9\xAC\xC22\x89UX(\xC8\x83\xA6$SJU\xB1\xFA
+\x8E\xA7Lp\xCC2+\x92~\xFA\xA9\xA9\xB3e\xC5<pb\xCFP\xF2\xD2i\x840\x85UX(\x85O6+\xB7i+!r&ݨHekB\xC01b\x8E\xEDB\xFB\xE1kʿ\xFEl\xE8;\xC4\xFB]\xA6X\xB7\xF3x \xC0{\xF8LY:\xC2Va\xA1I\x9F\xBFlF\xE9E\xF3aP\xB4{_%\xFA# \xE0\xA8ynZ\xE9\xA5w\xA2Y\xA5\x9Cq\xD7\xD2L\x89Ɣ\x9A~\xA7|\x8B+\xAA)\xAC\xC2BSq\xD7<,\xFF\xBB]\x840ŮP\xAAj6\xE08q\xBAG\xA1]\xFD?\xF2\xF7\xED}\x87\xD4\xE4\x9Be9\xCDx \xC0\xA0X\xC7\xD3e\x9BNSX\x85\x85&\x90\xDF\xFA\xB6r/\xB0\xFA\xCA$gҍ\x8A\xB4<\x99p\x9C\x80\x80\xA3R\xD8\xFA\x8E\xF2/?\xFA\xB1s.T\xBC\xD7 h\xF6\xB0\xAC\xC22\x88UXhL\x9E\x9BVf\xD1B\x98<w\xF6\xE8\xA7D\x9F\xA1\x84\x80\xC0\xFC*?\xE7*\xBD\x98\xAD\x8E\x9Cɷ\xD0
+\xAB\xB0\x8C\xCBmZ\xA5\xC2g\xEF+\xEE\xD0_
+\xB3\xFAʘT39U\xB3\xE8'\x88S%\xF8U\x99\xB5\x93\xBFwg\xE8;\xD8c\xAFV\xA4\xB254\xA0C\xAB\xB0f\xC2\xDFW\xBAz\xAB\xB0Р\xF2\xBF\xC9_
+\xE6L\xB8I\x91\xAD'\x88\xF8E\x85\xCF?P~\xD3\xEA\xD0w\x88v\xEE\xAEĀ1<\xD0\xECa\xD3\xE9Ѕ\x86\xB0
++\xC9s\xD3\xCAT\xF3\x97\xC2&\xC5\xCE\xED\xAFD\x9F\xDF`\x8E\xC8\xCF甩\x9E/\xF9~\xB8;D\xA2r\xA6͑eY<\xD0\xA21\xA5f\xB0
+\xCB$Va\xA1\xA1\xB8\xAB\x92\xBFo7!\xB1R\xCD\xE5L\xBD\x8D`\xA7Ip\xE4\xED\xBA\xC8\xFB\xF6\xEB\xD0w\xB0\x87\xCDP\xB4]'hD\xD1S\xBA\xCA>\x93\xA6\xB0
++\xA0\xB0\xE5u\xE5_y\x9A&ϝ\x93nV\xA4\xF9I\x84C\x80\x80\x9F\xBF\xD0~\xB5U\xB9+\xCBC\xDF\xC1j\xD7I\xC9K\xABx \xA0        $\x87NS\xA4CWB\xC2*,}\x9E25\xAAY|!\x8A\xF5\xA0D\xEF!\x84\x83\x80\x80\x9F*\x94\xAE\x9E/\xF9^\xB8;X\x96RUsd\xC5\xE2<\xD0o\xC3јR3\xEF\x94\x89\xC3Va\xC1\x94\xCC\xCA\xA5\xFD\xAC\xBE2\xF6~Wт\xD5W\xD0\x80\x80\x9Fp\xD7/\x92\xBFc[\xE8;$.\xADX\x97\xEE<Є\xA2\xBA\xC8~9!La\xC8\xF0\xAA\xF2\xAF\xAD'\x84A\xF6\xE4\x9BiVI0\x8C\xF8\x91\xE27\x9F\xCB]_\xFAVek%G]\xCD% y\xE9TEN9\x9D\x86\xB0
+'\xF4\xFCd\xBEW\x9A\xD5WF\xC5λH\x89\xF3\xF0\xFF\xDAbQ\xE9\xEA\xB2¾\xFAJ\x923\xF9VE\xEC\x94+Sj\xC6\xAC\xC22\x88UX8^\xE9\xE5H\xF7\xC2\xD4\xFB[EK9\x93o%4 \xE0\xD9+\xCB\xE4m\xDF\xFA\xF1^+~N?(!\xD1]d_6\x93\xA6\xF8\xBE\xD2\xD5\xF3Y\x85\x85c\x92\xFFe\xDE\xF8'!r\xA6ܢHsV_@Ca$Iŝ\xDB\xE5\xAE{\x94\xA9f\xB2'\xDFD(A\xC9\xDFW)\xCA*,c\xFC\xDD;X\x85\x85\xA3^\xD2\x95^r7!\x8A\xF7\xBAX\xF1^\x83+\x88\x90\xEFy\xCATϓU,\x84\xBE\x85=\xF6Z\xBE\x80J\x94\x8Dəy'\xAB\xB0b\x8EVz\xF9}\xD2\xC1\xEFa\xEA\xFD\xAC\xA2\x85\xEC\xC97\xA0\xDC\xC6U*~\xB1%\xF4\xA2g\xF4R\xB2\xDFe<P\xCA\xEF\xD5\xED;\xCBq9!La\x8E\xE6\xAC\xF8\xEE*\xBC\xB9\x819Sf)Ҭ%!\xA0\x811 \xE4\xBC=;\xE4>\xF9H\xE8;\xF8\xF1\x84RU\xB3x \xA0$/\x99\xAAH\xC7n\x840\xF5\xC8*,\xFC\xD2Y\xB1f\xBF\xDC%\xF7 \xF8o+\xDE\xEB"B@#`@\x88\xF9\xBE\xAF\xF4\xE2R\x9E\xDF\xFA\xB4\x87\xFFA\x91\xD6x(\xA0XјR3og\x96A\xAC\xC2\xB8\x8F\xDF/\xBFf?!L\xBDU\xB4\
x94=\x89\xEF\x9B\x80\xC6\xC2\x80˽\xB8F\xC5O\xDE\xE5@ԡ\xAB\x92C&\xF2@@\x89\xFE\xA6\xB3\xEC \x84)?\xAC\xC2ri\x81\xE4\xDFyA\xF9\xB7\x9F'\x84Av\xD5,E*X}\x8Dv\xDF'\xE1TܻK        aE\xE4L\x9F++\xA3\x94\x99\xE4%S9\xF5LB\xE2\xEFޡ\xAB\xB0P\xCB\xFB~\xBF2\xCB\xEE&\x84A\xB1\xDEC\x94\xE89\x80Ј\x80R\x99\xA5wIY~\xCB31x\x82b\xCF\xE0\x81\x802dE\xA3rf\xDC.?\xC2۔\xFC\xA6լ\xC2¡\xB3\xE2\xB2{\xE5\xD7 \x84)\xCDORj\xD2\xCDt\x80F\xC6\x80ʾ\xF2\xB4\x8A\xBD\xFAV\xABv\xB2G\\xC1e,\xF6\x9B\xD3\xE4\x8C\xFC#!La$\xE5\xDE\xFE\xB7
+\x9B7 T\xD5,Y\xA9\xE6\x84\x80F\xC6\x80\x90\xF1쑻\xF2!BHr\xAAf\xC9J$        e.1d\xB2"\x9DX\x85e
+\xAB\xB0B~V<\xB8O\xEE\xE3\xF7 \xD8\x97*~΅\x84\x80&\xC0\x80\x90\xC9,\xBDWʦC\xDF!\xDEg\xA8\xE2g\xF6\xE6\x81\x80\xB0\xA2Q\xA5f\xDC\xC1*,\x83X\x85\xE2\xB3\xE2\xE3\xF7ȯ\xD9OS\x9A\xB7Rjҍt\x80&\xC2\x80ɽ\xF9\x9C
+\xEF\xBF\xFAVE\xD9\xE3\xAF\xE3\x81\x80\x89\xB6\xEB${$k+\x8DaVHϊT\xD8\xFC"!JM\x9B-\xCBiFh"@        \xEF\xE0>\xB9+ \x84${\xE2M\x8AT\xB4 Lr\xC8$E:\x9DECX\x85\xB6\xB3\xE2wr\x97\xB3\xFAʤx\x9F\xA1\x8A\xF7\xF8!\xA0        1 $\xDC\xE5\xF7ɯ9\xFA\xD1\xEE}\x95\xE8=\x84ȊF\x95\x9Ay\x87\xFC(\xAB\xB0LaVxd\x96\xDE#?}\x90\xA6\xB4<Y\xCE\xC4\xE8M\x8C!\x90{\xF7\xE5\xDF\xD9H\x88\x84\xADԔ[\xE9m{\xAA\xEC\x91W\xC2Va\x85\xE3\xAC\xF8\xFA\xBFTx\xEF%B\x94\x9A\xCA\xEA+(@8?}\xF0\xD0\x9FC\xF6\xA8\xAB9\xA9-! \xE0\x92\x83'*r\xAB\xB0\x8C\x9D%X\x85hށ=ʬ\xBC\x9F\xC57L\xF1}        %\x80\x97^\xF1\xA0\xF4\xFD>=\xA7\x9D\xA5\xC4\xC0\xB1<V4\xAA\xD4\xF4;Y\x85e\xAB\xB0\x82+\xB3\xE4)\xFD=!L\xBD\xFFT\xB6\x96=\xE1FB@\xA9\xFC,\x80W\xFE\x83\xD7Tx㟡\xEF\xE0[\xA5\xAA\xE6Ȋp\xF4\x80\xB0\x88\xB6\xEB({\xD4U\x840\xF6a\xCA*\xAC ʽ\xF6\xAC
+\xBCB\x83RU\xB3\xB1S\x84\x80\xC1O(\xCFM+\xB3\xECnBH\xB2\x87NS\xB4}gB@\xC8$OT\xF4\xB4\xB3        a\xAB\xB0vVܿG\x99嬾2)\xDE\xEF2\xC5\xCE\xEEC(!@(w\xF5\xCB߷\x9B\xC3N\x9BS\x946\x83BȊD\xE4̸C~<ACX\x85\xE9%\xA5l\x9A\xA6\xDEo*[\xCB=!\xA0\xD4~&@\x82'\xBF\xF5m\xE5_^GIδ9\xB2bqB@HE\xDBv\x94=\xF2
+B\x98\xC2*\xAC@Ⱦ\xF2\xB4\x8A\xBEN\xA3gι\xAC\xBE\x80\xC4\x80\x80\xF1s\xAE2\x8BBR\xBC\xFF(ź\x9EK\xB9\xE4Ŭ\xC22z\xD6`VY\xF3\xF6\xEDVf僄0y\xE6\xBCp\xA4\xE2g\xF5&\x94 Lf\xCD_\xE5\xEF\xDDI\x88\xE6\xAD\xE4\x8C\xF9\xAC\xC2j\xAC\xC2*_\xE9%ee3\x840\xF5\xFER\xD9F\xF6\xB8k        %\x8AR\xF8\xFC\xE5_x\x82\x92\x9C)7\xCBr*\x90T\xBB
+kԕ\x840\x85UXe)\xF7\xD2:\xB7\xBCA\x93g\xCE\xB7\xB3\xFA
+J\xC2\xCF甩\x9E/\xF9~\xE8[\xC4\xCE\xA0Dϋx(?\x924A\xD1\xCE\xDD        a\xEA\xEC\xC1*\xAC\xB2\xE2}\xB7K\x99U D\xFFъw;\x9FP\xC2\x80\xEE\xBA\xC8\xFB\xF6kB$Sr&\xDDL\xC0OX\x91\x88\x9C鷳
+ˠ\xFC\xC6U\xCA\xFA.!\xCA@\xA6z\xA1\x94c\xF5\x95\xB1\xF7\x93\x93\xDA*9\x96u\xABP\xEA\x80\xC5/?Vn\xC3rBHr\xC6^\xABH\x8B\x93        \xF8YѶ区\x8Ae/`V\x89˾\xB8V\x85\xADo \xD4tV_@9`@\xB9+T\xB3x\x81\xE4{lN\xEF\xA9x\xFF<\x80_\x944^\xD1\xCE\xE7\xC2Va\x95\xF8Q\xF1\xBB\x9Dr\x9F\xF8B\x98|\xB9h\x8Cb\xDDz\xCA\xE1\xE7$\xA0\xBC\xB9\xEB\x93\xBFc[\xE8;\xF8јRSgɲ,
+\xC0/\xB2"93\xE6J\xF1$1aV\x89\x9E\x8F|_\x99E\xA4,\xA1c\xEC\xFD\xA3U;\xD9cX}\xE5\x82e\xAC\xF8\xCDgr\xD7/&\x84$\x{3C992B6}\xEDH\xC0Q\x89\xB69E\xF6\xE8\xABa\xAB\xB0JO\xEE\xC55*~\xF2!JCV\xD2!\x94         \x94)\xBFXPf\xD1|Y\xAC\xBE\x92վ\x8B\x92\x97L\xE5\xA1\x93Ġ\xF1\x8At=\x97\xA6\xCE&\xAC\xC2*)\xC5=\xFF\x91\xFB\xC4Ä0(>p\x9Cb\xA7\xF7$\x94 \x94\xA9\xECs\xCBT\xFC\xFASBX\x96RU\xB3dEc\xB4\xE3G\x88\xA5\x8A\xE9\xAC\xC22\x89UX\xA5\xC1\xF7}e\xAA\xE7K\xFCE\x8E\xB9\xF7\x8B\xD6\xED匹\x9APf\x80P\x86\x8A\xBB\xBE\x92\xBB\xEE        !)1p\xBCb\xA7\x9DM\xC0\xF1]\x8A[w\x90=\x9Aj\x9A\xC4*\xAC\xA6\x97\xDD\xF4\x84\x8A\xA2̱,\xA5\xA6\xDF.+a\xD3\xCA\xED\xACGʋ\xEFy\x87V_ymd\x8F\xBA\x82\x87pB\x83\xC6)\xC2Zsg\x95\xDD;\x94Y\xF3WB4o\xF77ʮe\xF5\x95\xD1\xF7\x88\x81\xE3c]\x94% \x94\x99\xEC\xBFW\xA8\xF8\xC5BHJM\xBD\x8D/\xA1\x9C\xB0Va%X\x85eJ~\xD3jVa5\xDF\xF7US\xBD@\xCAe\x89a\xEA\xFD\xA1u٣\xAF"\x94) \x94o\xF77\xCA>\xF
5BH\x8A\xF5\xA2X\xF7\xBE\x84\x98\xB9\x9F\xDC^\xC9\xD1"\x84A\xAC\xC2j|\xB9\x8D+\xE5}\xF6!L\xB1,\xA5f\xDC.\x8B\xE1(\x94\xEF\x8F\x94\xDF\xF7U\xB3x\xA1\x94\xE77\xFA\xAC\x8Ar&\xDC\xC8C0*9p,\xAB\xB0L\x9E]X\x85ը\x8A\xBB\xB6\xCB]\xFB!J\x9A\xA0X\x97se\x8Ce"\xF7\xC2y\xAC\x92\x90$\xD9\xE3\xAFS\xA4YKB\x8C\xB2j\xBF\xE8\x98UX\xE6\xB0
+\xABq\xF8\x9E\xA7L5\xBF(cR\xA4\xCD)\xAC\xBE\x80 \xBC\x9F\x93\x80\xD2WܻK._f)I\x8A\x9E\xD5[\x89>C        h\x98ϙ\x93#{\xCC5\x840\x88UX+/\xFB\xEF*n{\x9F\xA6X\x96\x9C\xE9wȊ'he\x8Ee\xC0]r\x97\x94\xE5J$\xE5L\x9DE@\xC3~\xDC\4F\xD13X\x85e
+\xAB\xB0Vq\xD7v\xB9O\xFD\x9D&\xDF\x86LR\xACKwB@0\xA0\xC4e_yF\x85\x8F\xDF$\x84\xA4\xE4\x88?*ڪ!+ʪ\xFD\xEDo%lb\xC2*\xAC\x86\xE1{\x9E2\x8B\xE6\xC9\xCA\xE7\x88aH\xA4MG\xD9#\xAE \xE5}\x9D\x94.o\xFF\xB9+$\x84\xA4ȩg*9h!\x8D"ڪ\x9D\xEC\xB1"\x84A\xAC\xC22/\xBBa\xB9\x8A_l!\x84)VDΌ\xDBY}\xC2\x80\x96Yz\x8F\x94M"Q\xAAj\xB6\xACh\x94\x80F\x930F\xD13\xCE#\x84!\xAC\xC22\xAB\xB8\xF3K\xB9O=B\x93\xFF\xE6\x87LR\xAC3\xAB\xAF H\x80P\xA2\xF2o<\xA7\xC2\xAFBRb\xC8EO\xE9J@\xA3:\xB4
+\xEBvVa\x99<߰
+\xCB\xBFXTz\xD1|Y\xC51\x89\xB4=U\xF6HV_@\xE0\xDE\xDFI@\xE9\xF1\xBEߧ\xCC\xCA!\xC9j\xDDA\xF6e\x97\xD0$\xA2\xAD\xDA\xC9w+!b։\xCBnX&\xEFˏa\xEC\xC0Qj\xE6\xB2bqZ@\xC00\xA00\xB0\xEC\xCF\xF2kBRj\xEAl\xF60\x9AT\xA2\xFFhE\xCF\xE8ECX\x85ub
+\xFF\xF9B\xEES\x8F\xC2\xE4\xBF\xF1K\xA6(\xDA\xE9,B@1\xA0\xC4\xE47\xBF\xA8\xC2\xE6M\x84\x90\xEF7\\xB1n\xEC^4-˲\xE4̘+%Y\x85e\xEC\xBC\xC3*\xAC\xE3\xE2\x8B\xCA<6O\x96\xC7\xEA+c\xFF\xBE&{\xC4\xC5\x80R\xBAԦ*\xBD\xECBHR\xB3J9㮣\xA0$DOj'{쵄0\x88UX\xC7.\xFB\xAF\xC5\xF2\xB6o%\x84)V_@\xE0\xDF\xEAI@\xE9H\xAFx@\xFA~!$\xA5&\xDF,\xCBiF@\xC9H\xADX\xB7\xF3        a\xAB\xB0\x8EMq\xC76\xB9O?F\x93\xFF\xA6/\xADR\xEC\xD4n\x84\x80c@\x89\xC8\xF0\xAA
+o\xFC\x8B\x92b=\xFA)\xDEk!%Ǟ\xC6*,\xA3\xE7Va\xBFXP\xFA\xB1\xFF\x92\xE5\x89a\x88վ\xB3\x92\xC3f\x8E%\xC0s\xD3J/e\xF5\x95$)\xE1șr+%)ڪ\xAD\x9C\xB1\xD7\xC2 Va\xFD\xBA쳋\xE5}\xFD)!L\x89D\x94\x9A\xC1\xEA+\xC5[>        hz\xEEꇤ\xFD\xBB        !\xC9{\xB5"\x95\xAD        (Y\x89#;\xB37!a\xD6/+~\xFD\x99\xDCgX}eRr\xE84\xC5:\x9EA 4\xB1\xFCַ\x95\xF9iBH\x8Av\xEE\xAEĀ1\x84\x94<g\xDAl)\xE1\xC2\xD4yh\xD3jX\x85\xF5Słҋ\xFEK\x96\xEF\xD1\xC2\xABCg٬\xBE\x80\xD0`@\xF2\xB3e\xAAB\x92\x89ʙ6G\x96eP\xFA\x97\xE9\x93\xDA\xCA\xCF*,\x93ҋX\x85U\x9F\xBB~\x91\xBCo>'\x84\xA9\xF3\xA6Qj\xFA\x9DR4F˙\x8D4\x9D\xCCڿ\xCA\xFFn!$\xD9\xC3f(ڮ!e#\xD1\xAB\xB0\xF2\xF7\xB2
+\xAB\xAE\xC2\xF6O䮯&\x84\xE1\xF3f\xAC\xE3\xE9\x84\x80a@S]j?_\xF9\xD6BR\xA4\xED\xA9J^ZE@\xD9a\x96Y\xAC\xC2:\xC4/\xE4\x95^4\x9F\xD5W&ϛ\xBA*9l:! l\xEF\xFF$\xA0        .\xB5\xF9ܡ\xD5W\xBEO˒3m\xAE\xACX\x9C\x80\xF2\xBBT\x9F\xD4V\xF6Va\x99\xC4*,)\xBB\xFE1\xF9;X}e\xEC\xEC\x89*5\xF3Y\xAC\xBE\x80\xF0\x9D\xD5H@\xE3s\xD7\xFD]_BR\xE2\xA2ъu\xE9N@\xD9J^8Bѳ/ \x84!a_\x85U\xF8j\xAB\xB2\xFF\`\x90=\xFCrE;t%\x84Y\xF1ˏ\x94۰\x82\x92\xAC\xCA\xD6J\x8E\xBA\x9A\x80\xB2\x97\xAA\x9A-?\xC9*,Sº
+\xCB/\xE4\x95~l\x9E\xE4\xB1\xFAʔ\xC8)\xA7+y\xE9TB@X?H@\xE3^jk-\x90\xD8\xE7,Ir&ߪ\x88\x9D"\xA0\xFC/וm\xE4L\xB8\x91\x85q\x96\xBB\xEEQ\xF9;\xBF\xE0\xC57u\xF6\x8ED\x95\x9Ay'\xAB\xAF \xCCg4\xD0x\xB2\xEBq\xA9\xAD\xEFu\xB1\xE2\xE7\xF4# 0\x92\xFD\x86\xB3
+ˠC\xAB\xB0\xCD\xFF\xDE\xE2\x97)\xF7\xDC2^x\x83\xEC\x97+ھ3! \xC4\x80\xD0X\x97گ?\x93\xFB\xECbBHR\xAA\x99\xECI\xFC\x96, \x80qUsX\x85eP~\xD3\xA1X\x85\xF5\xC3\xEA+\xFEJؘH\xC7nJ^\xC2\xEA+\xFD\xE7        h\x84Km\xB1\xA0t\xF5|Y\j%I\xF6\xD8ki~!\xC1\xBBdW\xB6\x963\x91!\xBFIaX\x85\xE5>\xF5wy\xBB\xBE\xE2\xC56u\xF6\x8EĔ\x9Ay;\xAB\xAF@h\xD9-\x91\xF7\x{167110}=\xA3\x97\x92\xFD.# \xB0\x92\xBF\xAEh\xF7>\x840$諰
+\xDB>Tn\xC3r^h\x83\xEC\x91P\xF47\x9D        `@\x83_j\xFF\xF3\x85ܧB\x92O(U5\x8B\x80\xC0KM\x9D-%S\x840$\xA8\xAB\xB0\xFC|N\x99E\xAC\xBE2)\xD2\xE9L%\x87L!\xE0\xD0\xE7        h\xC0K\xAD\xE7)S\xBD@\x96W \x86${\xF8i݁\x80\xE0_\xB6+[\xCB\xE1\xFB\xAE\x8C
+\xE2*,\xF7\xA9\xBF\xC9\xFB\xF6k^\Sg\xEFHL\xA9wȊF\x898t&#+'\xFB\xFC
+y_~DI\x91]\x952\x91\x80\xD0H\xF4\xA6h\xF7\xBE\x840$h\xAB\xB0
+\x9F\xA0\xDC\xF3+ya+\xB2G^\xA1h\xBBN\x84\xFC\x80+\xA4\xF8\xED\xD7r\xD7\xFD\x9D\x92dE\xE4L\x9F\xCBQB'U\xC5*,\x93\x82\xB2
+\xCB\xCFe\x95\xA9\x9E/\xF9>/\xAA!\x91\xD3\xCERr\xC8$B~\xFC\xF9@\xE0R\xEB\xFBJ/^(+\x9F#\x86\xA4\xC4\xE0        \x8Au<\x83\x80\xF0]\xBA[\x9E,g\xD2M\x840(\xAB\xB0ܵ\xAC\xBE2z\xF6\x8EƔ\x9A~'\xAB\xAF?=\x8B\x91\xF3r\x9B\xD6\xC8\xFB\xEC=BH\xB2Z\xB5\x93=⏄\x84V\xA2\xEFP\xC5z\xF4#\x84!\xE5\xBE
+\xAB\xF0\xD9{\xCAmZ\xC5i\x90=\xEA*E\xDBu$\xE0'\x80`X\xF1\xBB\x9Dr\xD7>L\x88ZN\xD5,Y        \x9B\x80\x90\xDE&\xD9\x840\xA4\Wa\xF99WiV_=\xEDl%\xF3=s\x80\x9F\xC7\xC3\xDC껤2_\xCB`J\xBC\xCFP\xC5\xCF\xECM\x97\xEF\xAC\xC22\xADWae\xD6<,\xF7^<C\xFCxBΌ;dE\xF8\xF1\xE0g0`N\xF6\xE5u*l}\x8B\x92\xAC\x8A\xB2\xC7_Gj%\xFA\\xCA*,\x83\xCAmV\xE1\x93\xCD\xCAoz\x82\xCE {ԕ\x8A\xB6e\xF5\xE0\xC8\x80`\x88\xB7\x8F2\xAB"\xC4\xE1\xE9\xC4\xA9hA\xEAp\xAAfI\xA9f\x840\xA4\Va\xF9\xD9̡\xD5W0&\xDA\xF9%M \xE01\xC0\x90\xCC\xD2{de3\x84\x90\xED\xDEW\x89ޗ\x80\xFA\x97\xF0\xAD\xE4L`\x96I\xE5\xB0
+\xCB]\xF3\xB0\xFC\xBD;y\xB1L\x89'\xE5̘\xCB\xEA+\xC0\xAF\x9F\xBDH\xC0\x89˽\xFE/>x\x85\x92\x94\xB0\xE5L\xBE\x95飲\xCF\xEF;\xE7BBR꫰
+[\xDFQ\xEE\x855\xBCP٣\xAFT\xB4\xCD)\x84\xFC* \x9C \xEF\xFB}rW>@\x88\xC3\xD2QW*ڪ-!\xF8\xCE\xD4\xDBX\x85eP\xA9\xAE\xC2\xF2ܴҋX}eR\xA4\xEB\xB9J\xB0\xFA
+p\xB4\x9F$\xE0\xC4d\x96\xDD+?}\x90\x92"\xA7\x9D\xA5\xC4\xC0q\x84\xE0\xD7>3[\xB4Rj\xE2̈́0\xA8Wa\xB9O\xFCE\xFE\xBE]\xBC8\xA6$\x92\xAA\x98>W\x96e\xD1ptg.p\xFC\xF2@\xC2\xE6!ɷ"JU\xCDa3G)~\xC1%\x8A\x9D۟\xA6\xCE"%\xB6
++\xFF\xF1[ʿ\xF4$/\x8CA\xC9\xD1R\xA4uB\x8E?\xA1\xE08y5\x94Yv!j\xD9C\xABmߙg\xEAm\xB2R\xCD        aH~\xD3*|\xB2\xB9\xE9ωnZ\x99jV_\x99=\xBD\xA7\x92\xC7pL\x80p\x9C2+\x90_\xB3\x9F\x92"mNQr\xD8LBp\xAC\x9F\xA1\xCDO\x92=\xE9&B\x94\xAE^\xD8䫰\xDC\xD5\xC9߷\x9BÔDR\xCE\xF4\xDBY}8\xF6\xB3        8v\xF9^U\xE1\x8D\xE7Qˮ\x9A-+'\xC7!\xD1\xFB\xC5z \x84!M\xBD
++\xBF\xE5+\xE5_~\x9A\xC2\xE4Ys\xCC5\x8A\x9E\xFCB\x8E\x8E\x91禕^\xCA\xEA\xAB\xC3\xE2\x8ET\xFC\xF4\x9E\x84\xE08So\x93Uт\x864\xD5*,?S\xA3̒\x85\xBCE\xCF8O\x89\x8B\xC6p\\x80p\x8C\xDCUI\xFBYi Ij\xDEJ\xCE\xD8k\xE8\xC0\x89^ΛUʞt3!j\x8AUX\x99U\xB2\xFAʤ\x84\xCD\xEA+\xC0\x89\x9D\xB1H\xC0\xD1\xCB\xFC\x96\xF2\xAF\xB0\xD2\xE00g\xCAͲ\x9C
+B`@ⷃ;\x8FUX\xA64\xF6*\xAC\xFC\xAF)\xFF\xEAz\xC2d\x8F\xBBF\xD1V\xED8n@8\xDAKt6\xA3L5++\x8B\xF5\xA0Dϋ\x80A\xCEVa\x99\xD4X\xAB\xB0\xFCL\x8D\xD2K\xEF"\xB8ɳf\xB7\xF3\x95\xC0\xEA+\xC0\x89a\xC0Qr\xD7>,\xDF.BHR2%g2k:0~IoV)\x9B\xCFX\xA3\xD2\xD5\xF3\xE5g3+\xFA\xFF#\xB3\xE2i\xFFb;kڲ\xA7ͥ\xE0\xC4\xCFV$\xE0\xD7>{O\xB9MkQ\xCB{\xAD"-N&+ q\xFE`\xC5\xCE\xE3\xAF,M\xF1\xF7\xB6\xE1Va\xE5\xDFE\xF9ן%\xB4ѳ\xE6\xF5\x8A\xB6jK\xC0        c\xC0\xAF]\x9A\xF39e\xB3\xFA\xEA\x87\xC3C\xD7s\xEF?\x824 g\xF2\xAD\xB2*Zܦ5+\xB2
+\xCBOTz        \xAB\xAFL\x8A\x9D\xD9[\x89#        0\x82\xBF\xC2}\xEAy\xDF~MI~4\xA6T\xD5lY\x96E\xF2\xB2ޜUX\xA65\xC4*\xAC\xF4\x8A\xFB\xA5\x83\xDFה\x84#g\xDAl:̝\xA9H\xC0\x91\xBEآ\xDC\xF3+        Q˾l\xA6\xA2m;\x80F\x908\xFFb\xC5\xCEHCL\xAF\xC2ʽ\xF7\x92
+o<GX\x93g\xCD        \xD7+r\xAB\xAF\xE60\xE0H\x97\xE4B^\xE9\xEA\x92\xEFC\x92վ\x8B\xECK\xA6\x80F\xE4L\xBE\x85UX\x99Z\x85\xE5\xD5Pf\xC9\xDD5(z\xF6J^ȚU\x80Y@8\xF7\xE9\xC7\xE4\xEF\xFC\x92\x92dYJU͒\xA21ZИ\x97\xF6\xE6\xF9\xEA\xC1 IDAT\x95r\xA6\xDCJ\x83L\xAC\xC2r\x97\xDF'}\xBF\x8F\x98\x86\xF8IG\xA9*V_\xE0,E~\xAA\xB0\xFDS\xE5\x9E[B\x88Z\x89\x81\xE3;\xEDlB\xD0\xE2\xBD*\xDE\xEBbBr\xA2\xAB\xB0\xF2\x9B_T\xFE\xAD\xE7        i\x903\xE1E*\xDB`\xEA_\x8A\x8Be\xAA\xE7I\xAB\xAF$ɪl#{\xD4\x84\xA0        ٓo\x96Uт\x86\xEF*,\xAFf\xBF2KY}eR\xB4{%\xFB]F@\x83`@=\xD9.\x95\xF7\xCD焨\x95\x9Az\x9B\xAC\xA4C\x9A\xF2\xF2ެ\xA5\x9C)\xB3a\xD0\xF1\xAC\xC2r\x97\xFDY~\xCD~♒L)U5\x87\x80\x86;C\x91\x80\xFFW\xF8\xCFr\x9F\xF9_BԊ\xF5\xA2X\xF7\xBE\x84\xA0\xC4{]\xA4\xF8\xF9\x83        aȱ\xAE\xC2ʿ\xB3Q\xF9w6\xCE g\xD2M\x8A\xB4<\x99\x80\xC3\x80×\xE0bQ\x99\xEA\xB2\xBC"1$Y\xA9\xE6r\xC6\xDF@J\x88=\xF9&Y-        a\xC8Ѯ\xC2\xF2\xEESfٟ        fP\xACG?%
\xFA%\xA0A1\xA0V\xF6\xF9\xF2\xBE\xFC\x88\xB5\xEC        \xD7+Ҽ\x92\x94\xD2%\xBE\xA2\xA5\x9C\xA9\xAC\xC22\xE9hVae\xBF\x97\xD5WF\x9Ar\xAAn\xA3\xA0\xE1\xCFN$@*\xEE\xDA.\xF7\xE9\xA2V\xEC\xCC\xDEJ\xF4\xE17\xF2(E\xF1\xF3(\xFE[Va\x99\xF2k\xAB\xB0ro=\xAF\xC2\xE6e\x903\xE9&EZ\xB0\xFA
+\xD0\xF0\x80\xB8\xF4\xFA\xBE2\x8B\xCA\xCA\xE7\x88!I\xF1\xA4\xEC\xA9\xFCF\xA5̞\xC4*,\x93\x8E\xB4
+\xCB\xFB~\x9F\xDC\xE5\xF7ȠX\x8F~J\xF4\xB9\x94\x80F\xC1z\xD9MO\xA8\xF8\xF9\xFB\x84\xA8\x95\xF9GEO\xFE+!(\xE5\xCB|EK٬2\xEA\xE7Vae\x96\xDE-\xBF\xE6qLI5\x93S\xC5
+7@#\x9E\x99H\xB3\xE2ޝʮ\xFD+!:vSr\xD0BP=/R\xAC\xF7BRV\xFE\x8D\xE7Tx\xF7%\xC2\x94\x9Ax\xB3"-Z\xD0h\x80B\xCD]\xBCPʹ\x84\x90\xA4HD\xA9isdE\xA3\xB4\xA0L8o\x92\x9AUë\xB0\xBC{\x95^\xC1\xEA+\x93b=\xFB+~\xC1%\x844* \x80\xF0^p_Z\xA7\xC2ַ        Q+1d\x8A\xA2\xA7t%\xE5t\xA9\xAFh\xC1J!\xC3\xD2\xD5\xF3\x95^\xBC@JOC\xACTs9SX\xD9h\x82\xB3        a\xE4\xEDۭ\xF4\xEA\x87q\xF8Rں\xBD\xEC\xCB.'e(qn\xC5\xF8\xCDzc\xFC\xBD;U\xFC\xF0uBdO\xBEE\x91\xE6'\xD0\xE8\x80B)\xB3\xF4nY\xF5\xBE\xE42\xCCRSgˊ'@\xB9~\x96O\xBCI\xE2\xCC(A\xB1\xF3(\xF1\xDB\xC1\x844         \x80\xD0ɽ\xFEO>|\x8D\xB5\xE2\xFD\x86+֭!(cV\xAA\xB9R\xAC\xC2B\xA9=\x97-X}hR@\xA1\xE2\xFCN\xEE\xCA        qX\xB3J9㮣?\xE7B\xC5.\xF8=!P2\xECɷ(Ҭ\x92\x80&\xC3*\x99\xC7>H\x88ZΤ\x9Bd9\xCD@@\xA4&\xDE\xC8*,\x94\x84\xD8y\x958\xFFbB\x9A@h\xE4\xDF٨\xC2\xE6        q\xF8Rڣ\x97R\xE6\xD0*\xACل@\xD3>\x87-\xE4L\xB9\x95\x80&\xC7
+^\xCDe\x96\xFD\x99\x87%.\xA5T\xFC\x9C~\x8A]p)!\xD0d\x9C)\xB7)Ҭ%!M\x8E 2+\xEE\x97_\xB3\x9F\xB5\xEC1W+RٚTjҍR\xF3V\x84@\xA3\x8B\x9F?X\xF1^        (        @\x81\x97\xFF\xE0U\xDE\xDC@\x88Z\xD1\xCEݕ\xB8h!0\xCBi\xA6\xD44Va\xA1\x91\x9F\xBB\x8A\x96\xB2'\xDFD@\xC9`4?S\xA3\xF4һ        q\xB8G$*g\xDAY\x96E.\xDE\xE3w\x8A\xF7J4\xBB\xEA6E*X}(@\x81\x96Y\xFD\x90\xB4!_J\x87NW\xB4]'B\xCE\xC4\xA4\x96'+.\xD6{\xB0=/"\xA0\xA40V\xFE\xE37\x95\xE5B\xFE\xD0o{\xAA\x92C\xA7\x80\xB1\x9CfJM\x9DE4\xACf\x95r&\xDEL@\xC9a$\xCFM+S}!\xB3,9\xD3\xE6ʊ\xC5i@\xC8\xC4{\xFCN\xF1\xBE\xC3\x81\xE3T\xCDR\xA4\xA2!%\x87 \x90\xB2k\xFF*\xDF.B\xD4J\xADX\x97\xEE\x84 \xA4\x9C        \xAC\xC2BÈ]p\x89\xE7\xF6'\xA0$1N\xFE\xD3w\x95{a+!jY\x95\xAD\x95}5!\xF3y\xC0\xA9Pj\xEAlB\xC0\xAC\xE6')5\xF1&:J@\xA0\xF8\xB9\xAC2\x8B\xA2g\xF2\xAD\x8A\xD8)Br\xF1}\xFF\xAB\xB0`N\xAAj\xB6\xACTsBJ@\xA0\xB8O>"\xF77\x84\xA8\xEF
5H\xF1s\xFAH\x92\x9C\xF17H-['~\xCE\xEC3\x94s&\xA0\xE41Faۇ\xCAm\I\x88\xC3R\xCDdOb%\xF8\x96S\xA1\x8A\xAAY\x84\xC0\x89i\xDEJ\xCE\xC4\xE8(y@\x81\xE0\xF2\xCAT/\x90|\x9F\xB5\xEC\xB1\xD7*\xD2\xFC$B\x80\x89u\xEF\xABx\xBF\xE1\x84\xC0qKM\x9B-\xCBiF@\xC9c\xF7\xE9\xFF\x95\xB7\xEB+BԊ\x9Eq\x9E\x92\xFD.#\xF8Y\xF6\xF8dU\xB2
+\xC7.\xDEw\x98\xE2=~G@Y`({\x85\xED\x9F(\xF7\xDCRB\xD4\xF2\xE3        \xA5\xAAf\xF9\x87vJN\xD5B\xE0شl-g\xAB\xAFet\xE6!\xA0\x9C\xF9ł2\xD5\xF3%\xCF#F-{\xF8i݁\xE0\xC5Ͼ@\xF1\xF9\x8BQ\xBD\x8A\xAAY\xB2\x9C
+B\xCA@Y\xCB>\xBBD\xDE7\x9F\xE2\xF0{\x87\xAEJ\x99HpT\xECq׳
+G%\xDEo\xB8b\xDD\xFBPV\x80\xCAV\xF1?\xDB\xE4\xAE\x8C\x87Y9\xD3\xE7ʊ\xC6h\x8E\xEE\x87vJδ\xB9\x84\xC0/3+[\xCB\xCF\xEA+@\x9EuH(G~\xB1\xA8t\xF5Y^\x91\xB5\x83'(\xD6\xF1B\x80c?\xAB\xB7\xE2\x8E \x8Eș6W;E@\xD9a(K\xD9\xE7W\xC8\xFB\xF2cBԲZ\xB5\x93=⏄\xC7\xC5w\xAB\xB0\xF0\xB3\xE2\x8EP\xFC\xACބ\x94% \x80\xB2Sܵ]\xEE\xD3\xFF DN\xD5,Y        \x9B\xE0\xB8D씜\xE9\xAC\xC2Y\x95\xADe\x8F\xBB\x8E\x80\xF2=\xE3\x90PN|\xDFW\xA6z\xA1\xAC|\x8E\xB5\xE2}\x86*~&\xBF\x95N\xF0Lqfo\xC5/I\xFC\xC0\x99\xCE\xEA+@yc(+\xB9\x8D\xABU\xDC\xF6>!jY-e\x8F\xBF\x96\xC0{ܵ\xB2*\xDB\x8A\xF7\xC5/\xD9\xCA@\xD9(\xEE\xDD)\xF7ɿ\xA2{\xE2+\x8AT\xB4$0\x82UX\x90$\xAB\xB2\xAD\xEC\xB1\xD7P\xFEgʅ\xBBx\xA1\x94\xCB\xA2V\xB4{%z_B`T\xFC\xCC\xDF*\xD14!B,5\xE3vV_\x81\xA0,\xE4^|J\x85\xADoⰄ-g\xF2mt+"9\xF6O\xB2*\xDB"\x8C\xC7̋\xC6(֭!\x81\xC0P\xF2\xBC}\xBB\x95~\xE2\xBF        Q\x87=\xEAJE[\xF1C        \xD00"vJ\xA9
\xB7"d\xAC\x93\xDA\xCA\xF3'B\x82s\xA6!\xA0ԥ\x97\xDE-+\x9B!\xC4\xE1\xEFNg)1p!@\x83\x8Au\xEB\xA5\xC4Ec"\xA9\xE9w\xC8J:\x84@I˽\xFE\xAC\x8A\xBEF\x88Z\xBEQj\xDAY>\xC2@\xC3K\x8E\xBEZ\xD6I\xFC\xD5i$\x8EQ\xAC\xDBy\x84
+?=\x94,\xEF\xE0wʬ|\x90u\xD8C\xABmߙ\xA0QD\xEC\x94R\xD3Y\x85tV\xAB\xF6\xB2\xC7\C@\xF0\xCE2$\x94\xAA\xCC\xE3\xF7J\xE9\xEF        q\xF8C\xBB\xCD)J\x9BIШX\x85|\xA9se%lB\x87\xA0$\xE5\xDE\xFE\xB7
+\x9B_$Dv\xD5lY\xB18!@\xE3\x9FC\xC6\xFC\x89UX4^\xB1\xD3{H@%ǫ\xD9/\xF7\xF1?\xA2\xEE\xC5\xF4\x8As1M\xC4J:JM\xBF\x83A{][w\x903\xFA*B\x8B\xA0\xE4dV\xDC/\xBF\xE6!k\xDEJ\xCEXv2\x80\xA6\xEBv\x9EY\x85\x96\xA5\xD4tV_\x82\x8D\xA0\xA4\xE4\xDFY\x857\x9F'D\xA9ɷ\xC8r*\x9A\x9C=\xE6Y\xAD\xDA"\x83&(\xD6\xF5\B\x8D\xA0d\xF8\x99\xA5\x97\xDCC\x88:b=(~\xDEB\x80\x92`%l\xA5f\xCC%D\x99\x8B\xB49E\xF6\xA8+        \xFEg        \xA5"\xB3\xEAA\xE9\xE0^B\xD4\xC97\x94\x94\xD8\xE9=8\x8E\xE5ʲ\xE4L\xBF]V"I@\xE01\x94\x84\xFCGo*\xFF\xEAzBԑw\xAD"-N&(9Θ\xABY\x85U\xA6\x83'(֥!\xA1\xC0\xD0\xE4<7\xAD\xCC⅄\xA8\xFB\xDD\xF5\\xC5/IP\x92\xAC\x84-\x87UX\xE5w\xC6ls\x8A\xEC\x91W\x9E\xCF>\x9AZ\xF6\x89\x87\xE5\xEF\xFB\x96\xB5\xFCHL\xA9\xAAٲ,\x8B\xA0d\xC5O\xEF\xA9\xF8\xA0\xF1\x84(VDΌ;e\xC5\xB4\x84@\x93*|\xB2Y\xB9\x97\xD6\xA2\xFB\xB2\x8A\xB6\xEDHP\xF2\x9C\xD1W\xC9j\xCD*\xACr\x90
2I\xB1\xCEg*@M\xC6\xCFe\x95^\xC2\xAC\xF6]d\xFF\xBE\x8A\xA0<\xCE.        [\xA9\xE9\xB7K\xFC\xE5jI\x8B\xB4\xE9({\xE4\x84\x84\xEF3\x90\x80\xA6\xE2>\xF9\x88\xFC\xDD;q\x98e)U5K\x8A\xC6h\xCAF\xAC\xEB\xB9JdV\xE9\x9E1#rf\xDE!+\xA7 t\x80\x9ADa\xDB\xE56\xAE$D\xF1\x81\xE3;\x8D\xB5\xA0\xFCأ\xAF\x92պ!JP\xE2\x92)\x9C1\xA1\xC5\xD0\xE8\xFCB^\x99E\xF3$\xDF'F-\xAB\xB2\x8D\x9CQW\x94\xE7Y&\x91Tj\xAB\xB0J\xEEui\xD7I\xF6\x88?Z@\x8D\xCE]\xF7\xA8\xBCo\xB7\xA2\x8E\xD4\xD4\xDBd%B\x80\xB2\xEBr\x8E\x83&\xA2TXU\xCC`\xF5 \xDC\x80Ua\xFB'\xCAmXF\x88:b\xBD+ֽ/!@ٳG]\xA9H\x9BSQ\xBF\x9F\xAAh\xA73        5 \x80\xC6S,(]=O\xF2<ZԲR\xCD匿\x91 g\x9BDR\xCEtVa5\xF9\xEB\xD0\xEE4ٗ]N@\xE814\xF7\xD9\xC5\xF2\xBF\xD9F\x88:\xEC        \xD7+Ҽ\x92 0b]z(1`4!\x9AJ$\xA2\xD4\xE5w\xB2\xFA
+14\x92\xE2\x8Emr\xD7/"D\xDD\x9C\xD9[\x89>C        \xC5/\xE4\x95\xFF\xEC}B4\x91\xE4\xA5\xD3\xEBx!@c\\x82\x8BE\xA5\xAB\xC8\xF2\x8A\xC48,\x9E\x94=\xF56:\x80\xC0ɮL\xFE\x8E\xCF        \xD1\xAC\xF6]d\x9FIj14\xFC%x\xC3ry_}L\x88:\x92#\xFF\xA8\xE8ɿ!\x94\xC2W[\x95\xFD\xE7B4ߊ(5\xE3)#\xB5\x80Tq\xD7v\xB9\xEB\xFEN\x88\xBA\xBE\xBB)9h!@\xA0\xF8\x85\xBCҏ͓<\x8FM\xC06]\xB1\x8E\xA7\x80:\x80\xEE\xEC\xFB\xCAT/\x94U,\xE3\x87OވR\xD3\xE6ȊFi\xC5]\xF7\xA8\xFC\x9D_\xA2)\x8E\x98\xBA\xC86\x83\xD4\xFF\x8C$\xA0\xA1\xE46\xAERq_\x80YWb\xC8EO\xE9J(\xC5/?R\xEE\xB9e\x84h\x87V_\xDD\xC9\xEA+~@\xC3\\x82\xF7\xFCG\xEE\x93#DV\xEB\xF6\xB2/\xBB\x9C P~X}\xE5\xB3\xFA\xAA)\xD8\xC3g\xF26@\x83\xC8,^(岄\xA8#5u\xB6\xACx\x82 Pܧ\xFE.o\xD7W\x84h\x91]\x95:\x8D鳒\xD3r/=\xA9\xE2'\xEF\xA2\x8Ex\xBF\xE1\x8Au\xEBE(\x85m*\xB7a9!\x9A\x88\xEF\xFB\xB2\xC8\xC01\xE5\xED\xFBV\x99U\xFFC\x88:\xAC\x8A\x96r\xC6^K
(~>\xA7\xCC"V_5\xE9k\xB0\xE3s\xB9\xEB\x80#`0*\xBD\xF4n)\x97!D\xF6\xE4\x9Be\xA5\x9A\x8A\xFB\xD4\xDF\xE4}\xFB5!\x9A\xFAuX_\xAD\xE27\x9F\x80\x9F\xC1`L\xEE\xB5gU\xFC\xF0uB\xD4\xEB\xD1O\x89\xF3/&\x94\xC2\xE7(\xF7\xFCJB\x94\xCB\xF7\x94~l\x9E\xFCb\x81\xD4\xC3`\x84w`\xAF2\xAB$D]        GΔ[\xE8\xC5\xCFe\x95\xA9\x9E/\xF9>1J\xE5,\xFE\xCDg\xCA\xFEs)!\xA8\x87\xC0\x88\xCC\xE3\x96\xD2\xDF\xA2{\xCCՊT\xB6!w-\xAB\xAFJ\xF2uy\xE6U\xFC\xCF6BP\xC0        ˽\xFD\xBC
+\xEF\xBEH\x88:\xA2\x9D\xBB+q\xD1B\x80@)|\xF6\x9Er\x9BV\xA2Y^Q\xE9\xC7\xE6\xCB/\x89@- \x80\xE2\xD5\xEC\x97\xFB\xF8}\x84\xA8ÏD\xE5L\x9B#˲\x88\x82s\xC6ɹJ\xB3\xFA\xAA\xB4\xCF\xE6۷*\xBBa!\xA8\xC5pB\xDC\xE5\xF7˯9@\x88:\xEC\xA1\xD3m P2k\x96\xBF{!J\xFD|\xFEԣ*\xEE\xFC\x92\x88\xE0\xE4\xDFY\xF9\xB7\x9E'D\xDDֶ\xA7*9t!@\xA0>٬\xFC\xA6'Q,\xAF\xA0\xF4"Va 1'?\xF3\xBD\xD2K\xEE!ďn\x9B֡\xD5W\xB18-@p\xCE}\xD9̡\xD5W(ޗ)\xFB\xFC
+BB\x8F\xE0\xB8dV<(\xDCK\x88:F+֥!@\xA0\xB8k\x96\xBFw'!\xCA\xEDu{\xEAwm' \xD4\x80\x8EYa\xCB\xEBʿ\xFE,!\xEAj\xD9Z\xC9\xD1W\xD3\xEBܷ\xF5\xE5^XC\x882d\xCA,\x9A'\xDF\xF3\x88- \x80c\xE2\xB9i\xA5\x97\xDCE\x88zRSnQ\xC4N\xEBܷ\x88\xD5W\xE5\xAC\xF8\xC5e7\xAE$ \xB4\x80\x8E\x89\xFB\xC4_\xE4\xEF\xDBM\x88:\xE2\xBD)~΅\x84<\xF7\xED"D\xB9\xBF\x8EO>\xA2\xE2\xB7_J@G\xAD\xB0u\xB3\xF2/=I\x88\xBA\xEC
+ٓn\xA2\x94\xFC\xC7oq\xEE+\x9FSz\xF1B\xF9\xBEO@\xE80?\xE7*\xBDx!!\xEA\xB1\xC7_\xAFH\xF3\x93\xC3s\xD3\xCAT\xB3\xFA*P\xAF\xE9g\xEF)\xB7q5!\xA1\xC3pTܵ\x8F\xC8\x83uD\xCF8O\xC9~\xC3        \x82u\xEE[\xFD+O\x83\xF8\xBA>\xF9W\xF7\xFC\x87\x80Pa\xF8U\x85\xCF?Tn\xD3*B\xD4\xE1\xC7JU\xCD&\x94\xFC\x967\x94\xF9iBQ.\xAB\xCC\xE2\xF9\xAC\xC2\x84
+\xC0/\xF2ye\xAA\xE7I\\x94~\xC4~\xB9"\xAD;\x86禕Y\xC2\xCA\xD3 +~\xF2\xAEr/\xAE! 4\x80~\x91\xBB\xEEQy\xDF~M\x88\xBA\x9E\xBA*1d!@\xB0\xCE}+`\xF5U^\xE7'V\x84\xC0\xB6\xA2܆e\x84\xA8ˊș6GV4F\xF9^S\xFE\xD5\xF5\x84\x83\x9C+\xB7\xFA.:B\x81\xE0\xE7J/\x9A/y-\xEAH\xAFة\xDD\xC3\xCF\xD4(\xBD\x94\x88\x87Ia\xEB[ʽ\xF8!\x81\xC7\xF0\xB3\xDC\xF5\xD5\xF2w|N\x88:\xACV\xEDd\x8F\xB8\x82 P2+\x90\xF6\xEF!D\xD8^\xF7\xD5\xFF-\xEF\xBB]\x84\xC0Owl\x93\xFBl5!\xEAq\xA6Β\x95\xB0        #\xFF\xFE+ʿ\xFE,!\xC2(\x97Qz\xE9\xDDt\xC0\x8F\xF8Ţҋ\xE6\xCB\xF2\x8AĨ#v\xC1\xA5\x8A\x9F՛ 8\xE7\xBE\xF4A\xA5\x97\xB0\xFA*̊[\xDEP\xF6\x95\xA7        , \x80\xC9mx\\xDE\x{1AD128}êh)g\xC2u\x84\x81\x92^q\xBFt\xF0;B\x84\x9C\xBB\xF2!y\xFBvH@?(\xEEܮ̺\xA2{\xE2+\x8AT\xB4$\x8C\xDC{/\xA9\xF0\xC6s\x84\x80\x94M\xB3
+X@\x92$\xDF\xF3\x94Y<_V\xB1@\x8C:\xA2\xDD\xFB(\xD1\xFBB\x80\xC0\xF0j(\xB3\x84x\xE3\xFF?|M9\xBE@@\x92\xA4ܦU*n\xFB\x90u%l9\x93o\xA3w\xF9}\xD2\xF7\xFB\x81\xC9,@ށ\xBD\x84
+\x80\xBC=;\xE4>\xF9!\xEA\xB1G]\xA9h\xAB\xB6\x84\x81\x91\xDF\xFC\xA2\xF2o=O\xFC\x94[\xA3\xCC\xD2{\xE8 r\xBE\xEF+\xBDx\xA1\x94\xCB\xA3\xEEd\xA7\xB3\x948\x8E 0\xBC\x9A\xFD\xCA\xF0]\xF8\x85\xF7_V\x9E\xEF\x86\xB9\xDCKO\xAA\xF8\xC9fB\xD4\xE1[\xA5\xA6͑\xE1c\x87\xBB\xEC\xCF\xF2k\xF6\xBF(\xB3\xE2~y\xACH?\xD9\x80\xF3\xBE\xDB%w\xF5_Q\x8F=\xB4J\xD1\xF6\x9D        #\xFF\xCEF\xE5\xDF\xD9H\xFC*?}P\x99e\xAC\xC2\xB1\xF4һ\xA5\\x86u?ۜ\xA2䰙\x84\x81\xE1ܧ̲?G\xAD\xB0\xF9E\xE5\xDE\xE6\xBBb\xE5\x8F\x84T\xEE\xB5\xF5*ny\x83\xF5\xD8U\xB3e\xC5\xE2\x84\x81\x91y\xFC^V_ᘹ\x8F\xDF/\xEF{\x9E@yc!\xE4ث̊        QO\xFC\x8A\x9Fޓ 0ro=\xAF\xC2\xE6\x81c\xE6\xD7\xEC\x97\xFB89(o@ \x842\x8F\xDF+\xB95\x84\xA8\xABy+9c\xAF\xA1\xEF\xFB}r\x97\xDFG\xB7C\xDF\xC3+P\xBE\x80@\xC8\xE4\xDEz^\x85w_"D=\xA9ɷ\xC8r*#\xB3\xF4n\xF95\x81{\x8E\x96\xDD#\x8F\xE7P\xA6\x80@\x88x\xDF\xFC~B\xD4\xEB9@\xF1\xF3F\xF
E\x8D\xE7\xF8\xA5\xE1\xD7\xECWfI(O@ D\xDC\xC7\xEF\xE30\xEB_蒎\x9C\xC97\x86w`\xAF\xD2\xFC\xC0\xDE|^\xB9\xF7\xA8\xCA\x89ܻ/*\xFFο        QOjܵ\x8A\xB48\x99 02K\xEE\x96\xD2\xDFf\x9F\xAB\xA5\xF7\xC8O$\xA0\xAC0\x80\xF0\xD3\x95Yv/!\xEAv=W\xF1GF\xEE\xF5gU\xF8\xE0B\xC0\xBC\x83\xDF)\xBD\xE2A:\xCA
+\x81\xCCʇ\xA4\x83\xDF\xA2?Sj\xEAlY\x96Eށ=\xCA,\x80h0\x857\xFE\xA9\xFC\xAFP6\x80@\xD0/)\xBE\xA6\xFC\xEB\xCF\xA2\xFB\xB2\x8A\xB6\xEBH\x99\xC5wIn+!Р\xD2K\xE19\x94 `\x9E\x9BVz\xE9݄\xA8\xC7j\xDFY\xF6\xEF\xAB#\xFB\xEA3*|\xF8!\xD0\xF0\xF6\xEFQf\xAB\xB0\xE5\x81\x98\xBB\xFA\xE4\xEF\xDBM\x88\xBA,K\xA9\xAA\xD9R4F\xDDr\xF9n4\xA2\xFC\xAB\xEBU\xD8\xF2:!%\x8FTa\xEB;ʿ\xFC!\xEA\x89\xA7\xD8igFz\xC9B)\x9B&\xF9\xB9\xBBK\x9E\xCBs(m@ \x80\xFC\x9C\xAB\xF4\xE2\x84\xA8Ǫl#gԕ\x84\x81\x91}\xE5\xB7\xBCA4\xFE\x9Dc\xDFn\xB9\xAB\xFF\x9B\x80\x92\xC6(\xB3\xF6o\xF2\xF7\xEE$D=Δ\xDBd%B\x80@\xF0\xF6}\xAB\xCC\xCA\x81&\x93y\x9D\xF2\xBFE@\xC9bS\xF8\xFC\xE57\xAD&D=\xB1ރ\xEFї 02\xD5ee3\x84@\x93?\x87\xAC\xC2\x94* ~>\xA7L\xF5|\xC9\xF7\x89Q\x87\x95j.g\xFC\x8D\x84\x81\x91{\xF1)>~\x93h\xFA;Ⱦ]ʮ\xFD+!%\x89\x88\xBB\xEE\xF2\xBE\xFD\x9A\xF5\xD8\xE3\xAFW\xA4y%!@ \xF
7\xEER扇\x81\x92\x91{a\x8D
+[7Pr\x80@@\xBEڪ܆儨'vfo%\xFA%\xDF\xF7\xE5.^ e]b\xA0\xA4\xA4ϗ\x9F\xE3\xB9\x94 ł\xD2\xD5\xF3%ߣE]\xF1\xA4쩷\xD1F*l}\x9B(9\xFEޝʬy\x98\x80\x92\xC2\xC0]\xBFH\xFE\x8Em\x84\xA8'9⏊\x9E\xFCB\x80@(\xEE\xDD)w\xF5_a\x88uR[\xD9Sn!\x84A\xF9MO(\xFF黄\x94 P\xEE\xE1o>\x97\xBB\xBE\x9A\xF5?\xE0:vS\xF2\xE2        \x84\x81\xE0\xFB\xBE2\xD5\xF3$V\x93\x9A~\xBB\x92\xC6(֣1\xCA,^(?\x97%\xA0$0\x80r\xBE\x8BJW/\x90\xC5\xEA\xABz\x9Fn9U\xB3eE\xA3\xB4\x81\x90۴F\xC5O\xF8\xCDzS\x8DQ\xAC[/I\x923\xF56)\x99"\x8A\xA9;\xCA\xEEo\xE4>\xF9!%\x81\x94\xB1\xEC\x86e\xF2\xB6o%D\xFD\xED\xE0I\x8Au<\x9D \xBC=;\xE4\xAEe\xF5\x95)Ve[%G_\xFD\xC3\xFFiy\xB2\xEC\x897Ơ\xDCƕ*|\xFE!!M\x8E\x94\xA9\xE2\xCE\xEDr\xD7=J\x88\xFA\xDA\xD6\xEDe\x8F\xF8#!@ \xF8\xBE\xAF\x9A\xEA+\x85\x8CI]\xFB\xC7\xF1\x91\xFC\xDDpEϾ\x808\xE6\e\xAA\xE7\xC9\xCF\xE7hhR@\xA0\xEF\x9E\xA7L\xF5<Y\xC51\xEA_h\xA7ΖOBn\xE3*y|\xA9\xB41\x89\xFE\
xA3X}\xF5\x93sd\xD5l)\xE1\xC9\xEFۯ\xE5\xAE\xFB;!M\x8A\x94\xE9E\xB8\xF8\xC5B\xD4\xFFݰ#^h\xCAM\xF1ۯ\xE5\xAE\xFD!\xB1*\xDB*9\xF6OG\xFC\xCF#\x95m䌿\x9EP&\xEF-V\xA8\xC0\xBDЄ\x80@\x99\xF1\xF6\xEC\xE0K\xEEB[\xD1Rθ\xEB\xC1\xF7<e-\x90\xF2\xAC\xBE2ř1\xF7'\xAB\xAF\xEAK\xF4\xA1X\xB7\xDF\xCB܃\xAC̢\xF9\xF2yZ\x9A(\xA7\xFB\x83\xEF+\xBD\x98\x8B\xF0ϱ'\xDF,+՜ \xB2W\xAA\xB8\xED}B\x92\xE8?Z\xF1n\xE7ݹr\xFAl)i\xCDo\xD7W|w!\xA0\xC90\x802\x92{i\xAD\x8A\x9F\xB0\xBA\xBEX\x8F~J\x9C1!@ wm\xE7/~+\xFA\xB5\xD5W\xF5EOj'{\xEC5\x843y\x8FٰL\x85\xAF\xB6\xD0\xE8\x80@\x99\xF0\xBE\xDB%\xF7\x89\xBF\xA2\xBE\x84#g\xCA-t\x81ph\xF5\xD5<Y\xF91q\xA6\xCF\xF9\xD5\xD5W?9b\xF6\xAD\xE8=\x89g\xEC2\xE3)\xFD\xD8<Va(\xE9\xA5wKY\x97\xF5\xD8c\xAEV\xA4\xB2+!@ d7,W\x91/\x8D6&\xDE\x94\xE2g\xFBwzX\x96\xA5Դ\xB9R"IDC\xFC\x9D_(\xBB~!\x8D\x8A\x94\xC3E\xF8\xD5gT\xDC\xF2!ꉞv\xB6\x8D!\x84\xE2\xCE\xEDr\x9Fb\xF5\x9
5)Ve\x9BZe9\xB9\xBD\xECQW\xD2\xE4\xBD柋U\xD8\xFE)!\x8D\x86\x948\xEF\xC0\xB9+"D=~$*g\xFA\Y\x96EP\xFEg\x9BbQ\xE9\xEA\xFF\x92U,\xC3g\xFA\xDCc^}U_b\xD08E\xBA\x9EKLc\x97O\xE9\xEA\xFF\x92x\xCE\x8D\x84\x94\xB8\xCC\xD2{%\xB7\x86\xF5\xD8C\xA7+ڮ!@ \xE46<.aH\xFCǵ\xFA\xAA\xBEC\xAB\xB0\xE6ȏ'\x88j\x88\xFF\xCD6\xB9\xCF.&\xA0Q0\x80R\xBE\xBF\xF9\x9C
+\xEF\xBFL\x88\xFA^mOUr\xE84B\x80@(\xEE\xFCR\x99\xA7\xFEAC\xAC\xCA6\xB2\xC7]k\xEC\xBF/\xDA\xE6٣\xAE$\xACA\xEE3\x8F\xA9\xF8\xCD\xE7\x8448 P\xA2\xBC\x83\xFB\xE4\xAEx\x80?\xB9\xD1Zr\xA6͑\x8B\xD3\x94=\xBFXT\xFA\xB1y\xB2<V\x99bb\xF5U}\xC9A=\xEDl\xE2\x9A:\xD2\xFB\x9Eҋ\xE6\xC9g\xA0\x811\x80\xE5.\xBFO~\xCDBԓ0Z\xB1.=!\xFB\xDCRy_}LCL\xAD\xBE\xAAϊD\xE4L\xBFC~4FdC\xBC\xAF?U\xF6_KhP@\xA0\xE5\xDE}A\xF9w6\xA2\xBE\x96\xAD\x95}5@ \xFF\xB3M\xEE\xBAG        a\x88\xE9\xD5W\xF5E\xDBu\x94=\x92UX\xFF\xC7ޝ\xBE\xC9Y\xD7y\xBC\xFF\xD6\xD2\xD5U݄\x84\xD5AdYd@\xD9d\xC1Y\x9Dđ\xD5s]\xE7\xD1yt\x9D똀\xE8\x88\xE8\x8AdC\xC2Y@@@d\x915 \xD9HWU\xD7v\x9F\x99k\xE6\xB6@~\xBD\xD4ݯ\xD7?yW\xA7\xEE\xEA\xFE$ߤԼ\xE1\xB2\xE8\xFEy\xB9\x8C\xC0$\x93\xD5\xDF^\xF3\x9F\xF3C'\xFDk\xF2s\xF2\x99\xAFۉƥ߉B\xAF+F"\xB5\xB9g\x8F\xF9g\xC5\xC1\x83gF\xF1ۋ\x9DH\xA1\xFA\xC2\xF3"\xEB\xFA}\xC0\xD80\x80L2\xF5\xA5E\xAC^)\xC4Zv;(v\xDEW F\xB
5$\xBA/>-D\xAAϊ\xFB\xDB\xEF1\xE6\xFF\x9DB\xA9\xB5\xB9\xE7FVt
++\x95\xDE\xF3OD\xEB\xD6_\xC0\x980\x80L"\xEDG\xEF\x8D\xCE\xFD\xBFbm\xD5᨞p\xBA@.tW<\xCD/"\x91M\xA3z\xEC\xD7\xC7\xED\xBFW\xFE\xABOF\xF5\x88\xBF>\xA1\xC6\xF5?\x8F\xEE+\x80\xE4 \x93D\xAFY\x8F\xC6\xE5\xF1.\xAAǝ\xC5i        \xF4\xBFn'\xEA\x97\xCDs\xFA*\xA1ڜs\xC6\xFDL\xEA\xE0\xA1'Ei\xCBm\xC5O\xA4\xD0\xEDDc\xC1\xFC\xC8z=1H\xCA0I4\xAF\xFEqd+_b-\xA5\xEDv\x8D\xC1}\xC8\xC7g\xBE\x9BFo\xC53B$2\xB0\xEF\x97b\xE03{\x8C\xFB\xB7P*G\xED\xE4oGV\xF0c\x95T\xBA\xCF=\xA3\xB7-\x80\xA4<\xA9&\x81\x{193FCF}\xF6\xDD\xD7\xB1\x96l\xA0\xB5Yg
+\xE4B照\xA3y\xD3!Ys\xFA\xEA\xD4        \xFB\xD8&\xAA\x87\xC5\x91P\xF3\xFA\x9FE\xF7\x95\x84 \xC0\xCBZ\xCDh,:_\x88wQ;\xFCٖB\xFD\xAFۉ\xF8*\xFC IDAT\xFA\xC2\xEFD!s\xE2'\xD9g\xC5        8}\xB5\xB6\xEA\xE7Da\x8B\xAD\xBD\x89ڭh,<\xDF),\x921\x80L\xB0Ƶ?\x89썗\x85X\xFB\xB5\xC56Q9\xE4!\x80\h\xDExYd+\x96\x91\xC8D\x9D\xBEz\x87R9\x86\xE6\xFEE?^I\xA5\xBB\xFC\x91h\xDDq\x95$\xE1        +0\x81:\xCF>\xED;\xAFbm\x85b\xD4\xE6\x9C\x85RY\xA0\xFF?\xF3\xBD\xF0T\x8C\xFEj\x91\xA9>*N\xF0髵\x95\xB7\xDA6\xBF0\xC7\x93Ps\xD9%\xD1{m\x85\xAC7\xC0\xC9ڭh,\x9C\x91eb\xAC\xA5r\xF0qQ\xFE\xEBO\xF4\xFFg\xBEN;\xEA\xE6E8\xE9\x93Lm\xF6\xD9~\xFAjm\x83\x87\x9D\x85\x8F}ҋ\x93J{4F\x9D\x99\xEF\x95XO\x80        Ҽ\xFE\xE7\xD1{\xF5E!\xD6R\xD8h\xF3\xA8\xF1\x8FB\xF9\xF8\xCCwå\x91\xBD\xB4\\x88D\xF6\xF9R\xEC\xB0\xE7\xE4\xFB[\x88\xE1\x93ύ(\xF81K*\xBD\xA7\x8E\xD6\xD7
+\xC0z\xF1d\x98\xDD矈֭W\xF1.j\xB3ϊB\xA5*\x90\x8F\xCF|\xB7,"\x91M\xA3zܩ\x93\xF6\xFF\xAF\xF4\x89\xED\xA3r\xE8I^\xA8\x84\x9A\xCB.\x8E\xAE/\x80\xF5`\xF7\xEF\x84;1\xB2輈\xCC\x84\xB5\x95\xF7\xFC\xC2\xE4\xF8\xC7,\xD6S\xD6iLj\xD3WI+\xCD>kҝ\xBEZ[\x{148FCF}\xE2f[y\xB1Ri5\xA3\xB1p\xBESX|d\x80qּ\xE92g\xDEEaxzԎ\xFF\xBA@>>\xF3]\xF7\xB3\xC8^~^\x88D\xF69<\xCA;\xEC5\xF9?Ӗ\xA2v\xF2\xB9\x85\x82-\x91\xEESE\xEB\xAEeB\xF0\x91@\xC6\xF3\xC3\xFB\x8Ag\xA2y\xD3"!\xDEE\xED\xF8Ӣ8<]\xA0\xEFu\x9E{ܹӄ֜\xBE:\xADo\xFE\xCB[\xEF\x95\x83gz\xE1j^\xF3\xD1}\xE3!\xF8\xD0 㨱`~\x9C\xBEz\x87Ҏ{\xC5\xC0\x9E\x87
+\xF4\xBD\xAC݊\xC6e\xF3\x9C;M\xA8N_\xAD\xADz\xE4)Q\xDClK/^*\xA3\xCDh.\xFE\xAE|h\x80q\xD4}\xF1i\xD6V\xA9F\xED\xC43tr\xA1y\xDD%\xD1{\xF5!\xE9\x97\xD3Wk+T\xA26\xD7)\xAC\x94:O<\xAD\xBB\xAE\x80\xC5\xC0\x84\xAA\xF5\x8FQ\xDAxs!\x80\xBE\xD7y\xF6\xB1hݶT\x88T\xA6\xF7\xD7髵\x95\xB7\xD9)*\xE7uL\xA8qՏ\xA2\xB7\xF2U!Xg&\xEE!\xF4\x89\xCF\xF8\xA6ȅ\xAC5\x8D\x85\xF3"\xB2L\x8CD\x86g\x9F\xD9w\xA7\xAF\xD6V=\xFA\x94(l\xFAq/f*\xADFԗ\\xA0\xEB\xCC\xC0\xC4\xFC\x90\xA0P\x8C\xA1\xD9gE\xA1\xE8Q\xF4\xBF\xE6//\x89ޫ/
+\x91\xC8\xC0\xE7\x8B\xF2\x8E{\xF7\xFD\xAF\xA3P\xA9\xC6Мs\xBC\xA0        u\xBB/F{\xA3\xAC?u`B~~v\x94\xB6\xD8F\xA0\xEFu\x9E}$Z\xB7_)D*\xD37\x8DZ\x9F\xBEZ[y\xDB]\xA2r\xE01^ׄ\x9AK/\x8Aުׅ\xE0@\xFF\x87\xCFf[F\xF5K_\xE8{Y\xAB\xF5\xF3\x9D\xBEJhx\xF6\x99Q\xA8+\xE7\xEA\xD7T=\xFAkQ\xD8ȿ{\x97\xCCh=K\xBE\xA7\xC8\xC0\xB8\xAB\xCD>+
+\xE5!\x80\xBE\xD7X\xF6\xD3\xC8^[!D"{\xE7\xE3\xF4\xD5\xDA
+\x83\xB5\xA8\xCDu
++\xA5Σ\xF7D\xEB\xBE_        \xC0\xFB2\x800\xBE\xDF\xD4\xEE{D\x94\xB7\xDDE\xA0ﵟ~8ڷ_%D*\xD37\x89\xDA\xF1\xA7\xE5\xF6\x977\xF0\xE9\xDDc`\xBF\xA3\xBC\xCE        5\xAE\xFCa\xF4\xDE~Sޓ\x80\xF13m\xE3\xA8}\xF9_t\xFA^6ڈƂ\xF3\x84Hhh\xD6Y\xB9;}\xB5\xB6\xEA\x97\xFF9
+36\xF5b\xA7R_\x8D˝\xC2\xE0\xBD@\xBFojO\xFC\xD7\xDCSL+\xCDeG\xF6\xC6KB$2\xB0\xF7a1\xB0\xD3\xFFu\xABCQ\x9B}\xB6<\xA1\xCE\xC3wE\xEB\x81[\x85\xE0]\x95%`\xBC\xD4\xFA\x8B$\xB5\xEA\xDC#EHd\xFA\xFC\xEBD\x80u\xD4y\xF2\xA1h\xDDq\xAD\xC9ހ\xF2}\xFAjm;\xEC\xFB\xED{n\xF4\xDA'\xD2\za\x94\xB7\xDF=\x8A\xCC\x80\xBF\xE0o\x80\xC0:\xCAFQ_8O\x88\x84\x86f\x9D9\xE5\xFE\x96p\xF5\xB8\xD3"\xA6;\x85\x95\xEC\xF7\xE5\xC8[Ѹ\xFC\xFBB\xF0XGͫ\xFF#\xB27_"\x91\x81\xBD\xBE;}n\xCA\xFD\xBA\x8Bա\x9Au\x86/\x80\x84:\xDD\xEDo\x80\xBF|\xE6J\xAC\xFD\xC4\xEF\xA2u\xD72!R\x99\xBEI\xD4f\x9E6e\xF9;}.\xF6\x{28AF0C4}\x97?z\xABW        \xC0\xFF0\x80\xC0\xE85\xEB\xD1Xx\x9E        \xAD9}\xB5\xC1\x94nP;\xFEԈi\xF9bH$y+\x9AW\(\xFF\xC3\xA0y\xF5\x8F#[\xF9\xAA\x89L\xD5\xD3Wk+M\x8B\xA1\xD9g\xFA\x82H\xA8\xFD\xFBۢ\xF5\xF0\x9DBx_\xED?>\x{DEEF}"\x95iO\xE9\xD3Wk\xD8y\xDF(\xEFq\x88        5\x96|?z#o        \x80\xDEK\xAFY\x8F\xC6"\xA7\xAFR\x9A
s֔?}\xB5\xB6\xDA\xCCoDax\xBA\xA9\xAC^\x8D+\xA8x/ͫ.\x8Al\xE5kB$\xE2\xF4ջ+O\x8F\xDAIg\x91P\xE7\xFE[\xA2\xFD\xC8=BL\xF5g\xAC\xF0N\x9D\xC7\xEE\x8D\xF6=7
+\x91\x8A\xD3W\xEFk`\xB7b`\xB7\xBF"\xA1\xFA\xE2"k\xAC`
+3\x80\xC0Z\xB2\xC6H\x8C,\xBE@\x88\x84\x86f\x9F\xE9\xF4\xD5\xA8\x9Ep\xBASX)\xBD\xFDF4\x96^\xA4\xC0f\x80\xB54\x96\xFE0b\x95\xD3W\xA9\x94\xF7\xFCB켏\xA08mFTO<]\x88\x84\xDA\xF7\xDD\xEDG\xEF`\xAA>[%\x80\xFF\xD5~\xF4\xB7Ѿ\xEFf!R\x99\xB6q\x9D\xF0+\xD6Qe\x{1C38FC}\xCB\xFEB$T_rA\xF4\x9Au!\xA6 \xFC\xB7\xAC\xB1:ꋾ+DBN_}x\xB5\x93\xBE\x85\xA1iB\xA4\xB2\xEA\xB5h^\xE5\xC0Td\x80\xFFV\xBF\xE2\xB7\xDF"\xA7\xAF>\x9Aⴍ\xA26\xD3)\xAC\x94\xDA\xF7\xDC\xED\xC7\xEF`\xAA=S%\x80\x88\xF6#wG\xE7\xFE\xFF"\x95i\xC5\xD0\xCC\xD3t\xF8\x88\xF6<4\xCA;\x8FRj,>\xDF),\x80)\xC6\xC0\x94\xD7y+\xEA\x8B/"\xA1\xA1\xD9g:㴞j\xB3ψ\xA8\x91H\xB6\xF2\xB5h^\xFD\xEFBL!\xA6\xBC\xC6\xD2#\xDE~S\x88D\xCA{~>v\xDEW\x88\xF5T\xDCp\x93\xA8\xF9[4I\xB5\xEF\xBE.\xDAO\xFE^\x80\xA9\xF2,\x95\x80\xA9\xAC\xF5\xF0\x9D\xD1y\xE0V!R\x99\xB6Q\xCD\xFC\x86\x89T\xF6>,J;\xEE%DB\x8D\x85\xE79\x850E@\x98\xB2z#\xAB\xA2\xB9\xF8{B$\xE4\xF4\xD
54\x9DuVd\x835!\xC9\xDE|%F\x97\xFDD\x80)\xC0\xC0\x94\xD5\xFCŅ\x91\x8D\xAC"\x91\xF2\x9E\x87:}5\x8A36\x8D\xDAq\xA7
+\x91P\xEB\xCEk\xA3\xF3\xD4CB\xE4\xFD*SQ\xFB\xC1;\xA3\xFD\xFBۄHe\xDAF14\xF3t\xC6\xC8\xE0\xBEGDy\xFB=\x84H\xA8\xBE\xF0\xFC\xC8ZM!r\xCC\xC0\x94\xD3[\xBD*\x97_ DB\xB5Yg8}5ƪ\xB3ϊ\xAC
+\x91H\xF6\xC6K\xD1X\xF6S!r\xCC\xC0\x94Ӹ\xFC\xFB\x91\x8D\xBC%D"\xE5=\x8D\xCA\xDF\xEC'\xC4+m\xBCyT\xBF\xFC/B$Ծ\xE3\xEA\xE8<\xF3!r\xCA\xC0\x94\xD2\xFA\xFDm\xD1y\xE8!R\xD9`\x86\xD3W㨲\xDFQQ\xDAnW!Rɲ\xA8/</\xB2֨9d`\xCA\xE8\xAD^\xCD_\xFC@\x88\x84j\xB3\xCFt\xFAj
+\x85\xA8\xCD9'\xA22(F"\xD9k+\xA2y\xFD%B\xE4\x90\x80)\xA3q\xF9\xF7\x9C\xBEJ\xA8\xBC\xC7!N_M\x80\xD2&գ\xFFY\x88\x84Z\xB7]\x9D\xE5\x8F\x903\xA6\x84\xD6\xB7D\xE7\xA1\xDF\x91\xCA3\xA2\xE6\xF4Մ\xA9xL\xB7\xDDE\x88T\xB2,\xBEY\xA7\xAD@\x8E@Ƚ\xDE\xDBoF\xF3\x8A\x85H\xA86\xEB\x8C(o(\xC4)
+1<\xE7\xEC\x88\xA7\xB0\x92\xBDO\xBC\xFAb4\xAF\xFB\x999b \xF7K\xBEY\xFDm!)\xEFqpTv\xD9_\x88        V\xDCt\x8B\xA8u\x8A        \xB5n\xBD"\xBA\xCF\xFFQ\x80\xBC<+% \xCFZ\xF7\xFD*:\xB8K\x88T6\x98\xB5\x99\xDF\xD4a\x92\xA8t\\x94\xB6\xDEQ\x88T\xB2^\x8C,\x98\xEF@N@ȭ\xDE[\xAFG\xC3髤j\xB3\xBE\xE5\xF4\xD5$R(\xA36\xF7\xDC\xC8Je1\xC9^~>\x9A7\*@@ȭ\xC6\xE2\xEFE4G\x84Hd\xCD\xE9\xAB\x84\x98dJ\x9Bo\xD5#\x9D\xC2J\xA9u˒\xE8\xBC\xF0\x94}\xCE@.\xB5\xEE\xBD9:\x8F\xDE#D"\x85\xE1\xE9N_Mb\x83ό\xE2'>#D*\xBD^\xD4̏\xE8v\xB4\xE8cr\xA7\xB7\xCA\xE9\xABԪ\xB3\xCFp\xFAj+\x94J1t\xF2\xB9\x91\x9D\xC2J%{\xE9\xD9h\xDEt\x99}\xCC@\xEE\xD4\x9F1Z"\x91\x81\xCF:}\xD5J\xFBDT\x8F\xFC{!j(\xBA/>#@\x9F2\x80\x90+\xA3\xF7\xDC\xDD\xC7\xEE"\x91\xC2\xF0\xF4\xA8\x9Ep\xBA}b𐓢\xB8է\x85H\xF5\xF5\x9F\xF5\xA2\xBE`^dNa\xF4%\xB9\xD1[\xF9j4\xAE\xBCH\x88\x84j\xB3Ό\xE2\xF0t!\xFA\xC4\xFF\x9E\xC2*\x89\x91\xEA}e\xC531z\xF3b!\xFA\x90
\x80ܨ/\xFEnFB$2\xB0\xFB\xC11\xB0\xEB\xFEB\xF4\x99\xD2Ƿ\x8E\xEA\xE1'DB͛.\x8B\xEEK˅\xE83r\xA1u\xD7\xF5\xD1}\xFC~!)O\x8F\xEA\x89N_\xF5\xAB\xC1/̊\xE2\x9F"\xD5\xEF\x87^7\xEA\xE6G\xD6\xED\x8A\xD0G \xF4\xBD\xEE\xAFD\xE3\xAA        \x91P\xED\xA43\x9C\xBE\xEAc\x85R9\x86N\xFEvd?\xFAI\xA5\xF71z\xCB!\xFA\x88\xA7 }\xAF\xB9\xE8\xFC\x88\x96\xD3W\xA9\xEC~p\xECv\x80}\xAE\xB4姢z\xD8!R\xBE\xD7\it\xFE\xFC\x9C}\xC2@_\xFDͲ\xE8<\xF9;!)o\xE8\xF4U\x8ET\xFBJ>\xBE\x8D\xA9~\xF4:\xD1X\xE8@\xBF0\x80з\xBAo\xBE\xCDk\xFE]\x88\x84j'\x9D\xE9\xF4U\x9E\x94\xCA1t\xF2\xB9E?J\xA5\xF7\xFC1z\xDBR!\xFA\x80\xA7})˲h,\x981\xDA#\x91\x81\xDD\xFE\xD6\xE9\xAB*o\xB5]T\x9D%DB\xCD\xEB.\x89\xEE\xCB/0\xC9@\xE8K\xAD;\xAF\x8D\xEES        \x91Ț\xD3W\xDF"\xA7\xAA_\xFA\xBB(n\xFE\xD7B\xA4\xFA\xFD\xD2\xEDDc\xE1\xBC\xC8z=1&1}\xA7\xFB\xFA\x9F\xA3y\xED\x91P\xED\xA43\xA2\xB8\x81\xD3WyU(D\xED\xE4s#
+~\x94\xEC}\xE8\xB9\xC7c\xF4\xD7NaLf\x9Ez\xF4\x95,ˢ\xB1p~DkT\x8CDv;(v;P\x88\x9C+r\x87\xA8r\x82        5\xAF\xFBYt_}Q\x80I\xCA@_i\xDD~ut\x9F~X\x88D֜\xBE\xFAW!\xA6\x88\xEA\xFF\xC5Ͷ"\xD5\xEF\x9Fv+ϋ,\xCB\xC4\x98\x84 \xF4\x8D\xDEk+\xA2\xB9\xEC'B$T;\xE9[N_M!\x85\x81J\xD4\xE6\x9EQ(\x88\x91H\xF7\xD9G\xA2u\xFBUBLB\xFAB\x96e1\xB2\xD3W\xA9\xAC9}u\x90SLy\x9B\x9D\xA2r\xD0\xF1B$\xD4\xFC\xE5O\xA3\xF7\xFAKBL2\xFAB\xEB\xD7WF\xEF\x99?\x91Hax\xBA\xD3WSX\xF5\xA8S\xA2\xB0\xE9DžH\xF65u\xA7\xB0&\x93^\xF7\x95\xA2\xF1˟
+\x91P\xED\xA4u\xFAj
++T\xA36\xE7!R\xBEO=\xFDp\xB4\xEE\xBCV\x80I\xC4\xC0\xA4\x96\xF5z\xD1X8?
+\xED\x96\x89\x94w=\xD0\xE9+b`\xDB]b\xE0\xC0/\x91P\xF3ڋ\xA3\xFB\xE6\xCBBL&\xB5\xD1_/\x8D\xEE\xF2DŽH\xA40<=jN_\xF1\xDFjG5
+L\x88TZ\xCDh,8O\x80I\xC2\xC0\xA4\xD5}\xE5\x85h^\xF73!\xAA\x9E\xF8\xCD(N\x9B!Q\xACŐSXi߷\x9Ez0Zw\xFDR\x80I\xC0\xC0\xA4\x94\xF5z\xD1X0\xCF髄ʻ\x95\xDD\xFFV\xFE\xF2\xEB\xE2ӻEe\xBF\xA3\x85H\xA8qտG\xEF\xCDW\x84\x98`&\xA5\xD1[\xAF\x88\xEEs\x8F\x91\x88\xD3W\xBC\x9F\xC1/-
+36"\x95V#ꋿ\xAB\xC03\x800\xE9t_~>\x9A\xD7]"DB\xD5Ow\xFA\x8A\xF7T\xACEm\xCE\xD9B\xA4|\xFB\xE31zύBL\xE4\xF3M&\x93\xACۍ\xFA\x82yQ\xE8v\xC4H\xA4\xBC\xEBQ\xD9\xFD`!x_\x9F\xD9#\xF6\xFD\x92        5\xAE\xFCa\xF4V\xBE&\xC01\x800\xA9\x8C\xDEzy\xF4\x9EB\x88D
+\xC3F\xED\xC4o        \xC1:\xA9{j\xC4\xF4M\x85H\xF5\xFBo\xB4\xF5%NaL\x93F\xF7\xCFˣy\xDD
+\x91P\xF5\xC4o:}\xC5:+V\x87bx\xF6\x99B\xA4|_{\xEC\xBEh\xDD{\xB3\xF1\\x93\x80\xC9 \xEBv\xA3~\xD9\xFC(\xF4\x9C\xBEJ\xA5\xBC\xEB\xFEN_\xF1\xE1\xBFnv\xDC;\xF6\xFA\xA2        5\x96\xFE0zo\xBD.\xC083\x800)\x8C\xFEע\xE8\xBD\xF0\xA4\x89\x867\x8C\xDAIg\xC1GR\x9ByZĴ\x8D\x85H\xA59\x8D\xC5\xDF\xD3`\x9C@\x98p\xDD\xCFF\xF3\x86˄H\xA8z\xC27\xA3\xB8\x81\xD3W|4\x85\xDA1\xE4VR\x9DG\xEF\x89\xD6}\xFF%\xC082\x800\xA1\xB2n'\xEA\xE6E\xA1\xD7#\x91\xF2\xAE\xFBG\xE5\xB3N_\xB1~v\xDE'\xCA{*DB\xCD+\xBD\xB7\xDF`\x9CvZ\xF2H&\xC0\xC4Yu\xEE\x91"|D\xD3\xE7_'\xE4@\xF3\x86Kc\xF4\xFF\xF0y\xB2o\xF4\x877\x8C+\xFEϋ\xFC\xED\x92荼o\xFF?\xA7E\xAC^)F"\xE5]\xF6\x8F\xE1\xAF\xFE_B\x8C\x80        \xD3}\xF1\x99h\xDE\xE8\xF4UJN_\x91Rqxè\xCD\xFA\x96        u\xFEM\xB4~w\x9B\xE3\xF1\x93\x80        \xD1\xED\xC4Ȃ\xFF7
+YO\x8BDʻ8}Ez\x95]\x88\x81\xDD}]\xA5Լ\xE2\xD1{\xDBߪk&D\xF3\xA6\xCB"[\xB1\\x88D
+CӢ6\xEB!\xD5N\x8F\xC2\xF0t!\xC9Fފ\xC6/\xFEM\x801f`\xDCu^x*Fo^$DBN_1\x96\x8AL\x8F\xEA\x89\xDF"\xE5\xFB\xE0CwD\xFB\xC1;\x84\xCB\xE7\x97\x8C\xA7\xACӎ\xFA\x82\xF9=\xA7\xAFR)\xEF\xB2_T\xF68D\xC6Te\xF7\xBF\x8D\xF2\xAE\x91P\xE3\xF2\xEFGod\x95c\xC4\xC0\xB8j\xDEpYd/=+D"\x85\xA1iQ;\xC9\xE9+\xC6G\xED\xA4oEah\x9A\x89d#\xAB\xA2yŅB\x8C\xE3\xA6\xF3\xA7'\xA3u\xCBb!\xAA\x9Epz\xA7m$㢸\xC1\x8C\xA8\x9Ep\xBA        \xB5w[\xB4\xFE\x8Dc\xF1ܒ\x80\xF1\x90u\xDAQ\xBFl\x9E\xD3W        \xAD9}u\xA8\x8C\xAB\xCA\x87Fy\xE7}\x85H\xA8\xB1\xE4{\x91\xD5\xDF 1\xE3\xA2y\xFDF\xF6\xF2sB$\xE2\xF4\xA96댈\xEA\xB0\xA9\xAC^\xF5\xA5?\xD4 1c\xAE\xFB\xFC\xA3u\xCB\xE5B$\xE4\xF4\xA9\xB8\xE1\xC6Q;\xE1B$Թ\xFF\xBF\xA2\xFD\xE8o\x85H\xF9\xBC\x92\x80\xB1\x94u\xDAQ\xBF\xF4;\x99\xD3W\xA9\x94\xFF\xC6\xE9+&^e\xAF/Fiǽ\x85H\xA8\xBE\xE4\x82\xC8\xAB\x85H\xC4\xC0\x98j^\xF7\xB3\xE8\xBD\xFA\x82\xA9m\xB0\xE6\xFCL\x86/\xC7YgF6X"\x95U\xAFG\xE3\xC
A\xE9\x90\x88\x801\xD3Y\xFEX\xB4n\xBDB\x88\x84\x86f~\xD3\xE9+&\x8D\xE2\x8CM\xA3v\xBCSX)\xB5\xEF\xBD):\x8F\xDF'@\x8A\xE7\x94\x8C\x85\xAC݊ƂyN_%T\xDEy\xDF\xD8\xD3\xE9+&\x97\xC1}\x8F\xD2g\xF6"\xA1\xFA\xE2\xEFF\xAFY`=@\xCD\xEB~\xBDW_"\xA7\xAF\x98\xCC_\x9E\xB3ϊ\xA88\x85\x95J\xB6\xF2\xB5h^\xED\xC0\xFA2\x80\x90\\xE7\xD9G\xA3uەB$T;\xFE\xF4(n\xB8\xB1LJō6\x8F\xDAq\xFF"DB\xED\xBBo\x88\xF6\xB0>\xCF'        H)k\x8DFc\xE1\xFC\x88,#\x91\xF2\xCE\xFBFe\xAF\xCF\xC1\xA4V\xD9\xEF\xA8(m\xB7\x9B        5\x9E\xEF\xC0z0\x80\x90Ts\x99\xD3WI9}E\xA9\xCD='\xA2R"\x91l\xE5\xAB1z\xCD\xC5B|D\x92\xE9<\xF3\x87h\xDDq\x95        9}E?)m\xFC\xB1\xA8\xF35!jݵ,:O>(\xC0G` \x89\xACՌ\xBA\xD3WI\x95w\xDA\xC7\xE9+\xFAN\xE5\x80c\xA2\xB8\xED.B$T_t^d\xA3+!>$I4\xAE\xBD8\xB2\xD7^"\x95\xA1+\xA26\xFBL\xE8;\x85B!\x86\xE7\x9C10(F"\xD9/Gs\x99SX\x96\x80\xF5\xD6y\xEA\xA1h\xDFq\x8D        Վ\xFF\x86\xD3W\xF4\xAD\xE2\xA6[D\xF5
\xE8"\xA1\xD6\xD7F\xE7釅\xF80\xCF#        X\xD9hc\xCD\xE9+\x92Ys\xFA\xEAB\xD0\xD7*\xA5\xADw"\xA1\xFA\xA2\xF3"k\x8D
+\xB0\x8E \xAC\x97\xE6\xB5G\xF6\xC6\xCBB\xA4R\x8E\xDA\xEC3t\xA0\xEF\x8AŨ\xCD=;\xB2\x81\x8A\x89d\xAF\xBD\xCDe?`@\xF8\xC8:O>\xAD;\xAF"\xA1\xDA        ߈↛A.\x946\xDF*\xAAG\xFC\xA3        \xB5\xEE\xB8*:\xCF>*\xC0:0\x80\xF0\x91\xF4\x9A\xF5\xA8/p\xFA*\xA55\xA7\xAF\xBE(\xB92x\xF0\xCC(}r!Rɲh,\x9CY\xBB\xA5\xC00\x80\xF0\x914\xAF\xFE\xF7\xC8V\xBE"D*N_\x91S\x85b1j'\x9FY\xB1,F"\xBDW_\x8C\xE6u\x97\xF0 |h\xED'\x88\xF6\xDD\xD7        \x91\x90\xD3W\xE4Yi\xF3\xBF\x8Eڑ\xFF DB\xADۮ\x8C\xCE\xF2DŽx>\x94^\xB3\x8D\x85\xE7        \x91Pyǽ\x9D\xBE"\xF7*\x87\x9Cſ\xDE^\x88T\xB2^4̏\xAC\xD3\xD6\xE0=@\xF8P\x9AW\xFD(\xB2\x95\xAF        \x91Ju8js\xCEҁ\xDC+\x94J1t\xF29\x91Kb$\xD2{\xF5\x85h^\xFF\x9FB\xBC\xEB\xAC\xFD\xF8\xFDѾ\xE7!\xAA\xCDt\xFA\x8A\xA9\xA3\xF4W[G\xF5K_"\xA1\xD6-\x97G\xF7\xF9'\x84x\xD6I\xD6\x89\xC6\xE2\xF3\x85H\xA8\xBC\xE3\xDEQ\xD9\xDB\xE9+\xA6\x96\xC1\xCFώ\xE2\x9F"ٛs/F\x9C\xC2xW\xD6I㪋\x9C\xBEJip
(j\xB3\x9D\xBEb\xEA)\x94\xCA1\xF4\x95oGV\xF0c\xA9T\xB2\x97\x9F\x8Bћ.`-\x9E4|\xA0\xF6\xA3\xF7F\xFB\xB77        \x91P\xED\x84oDq\xBA\xD3WLM\xA5->\xD5\xC3N"\xA1\xD1_-\x8E\xCEO        \xF0\xFFc\xE0}e\x8D\xD5Q_\xF2]!*\xED\xB8wT\xF6>L\xA6\xB4\xEAas\xA3\xF0\xF1m\x84H\xA5\xFA\xC2yݎ\xFF\xCD\xC0\xFBj,\xBD(b\xD5\xEBB\xA428CN_AD\xA9C'\x9FQ\xF4\xE3\xA9T\xB2ˣy\xD3B!\xFE\x9B'\xEF\xA9\xFD\xC8=Ѿ\xEFf!r\xFA
+\xFEWy\xAB\xED\xA2r\xE8l!j \xBA+\x9E \xBC\x87\xAC\xFEv\xD4;}\x95Riǽ\x9C\xBE\x82\xB5T\xBF\xF4\x95(|\xECB$R\xC8zQ_0?2\xA7\xB0 \xBC\xBB\xFA\xD2#\xDE~S\x88T\x87bh\x96\xD3W\xB0\xB6By \x86O>7\xA2\xE0\xC7T\xA9\xF4^|:F\xB5D`\xCA\xF3d\xE0Z\xB8+:\xF7\xDF"DBՙ\xA7EqƦB\xC0\xBB(}\xE23Q9\xE4!j\xDExit\xFF\xBC\`J3\x80\xF0z#oEc\xF1B$T\xDAq\xAF\xFC\xDC\xE1B\xC0\xFB\xA8\xF1Q\xDClK!)\xF4\xBAQ_p^dݮ\xC0\x94e\xE0/4\xAF\xF8A\xC4\xEA\x95B\xA4\xE2\xF4\xAC\x93\xC2@%js\xBFQ(\x88\x91H\xEFOO\xC4譗LY\xFEG\xFB\xC1;\xA3\xFD\xBBۄH\xA8z\xFC\xA9N_\xC1:*o\xB3cT>^\x88\x84\x9A\xD7\xFDgt_~^`J2\x80\xBDի\xA2q\xB9\xD3W)\x95v\xD83\xF7\xF9\x92\xF0!T\x8F8%
+\x9Bn!D"\x85^'\xEA\xE7;\x85LI""\xA2\xF9\x8B\x8Bl\xE4-!\xC9k14\xFBl!\xE0C*Tch\xEE9B$\xD4{\xEE\x8F1z\xDBR!\x80)\xC7@\xB4\xBC=\xDA\xDE.DB\xB5\xE3Os\xFA
+>\xA2\xF2\xA7\xFE&<V\x88\x84\x9A7\xFC<\xBA\xAF\xBC 0\xA5@\xA6\xB8\xDE\xDB+\xA3q\xF9\xBF        \x91\x90\xD3W\xB0\xFEj\xC7|5
+\\x88D
+\xEDV4Ώ\xAC\xD7\x982 S\\xE3ߏld\x95\x89\xAC9}u\x96\xB0\x9E
+\x95j\xCDqF.\xA5\xEE\xF2Ǣu\xFBUBS\x86`
+k\xFD\xEE\xB6\xE8<t\xA7        Վ\xFFFgl&$P\xFE\xF4\xAEQ9\xE0!j\xFE\xF2\x92\xE8\xBE\xFA\xA2\xC0\x94`\x98\xA2z\xABWF\xF3\x8A\x91К\xD3W\x87        +\xFD\xD5(\xCC\xD8\\x88TڣQ_t~dY\xA6\x90{\x80)\xAA\xB1\xE4\x82\xC8F\xDE"\xA7\xAF`l\xABCQ\x9B\xEBVJ\xBDg\xFE\xA3w\#\x90\xFFg\x88SO\xFB\xFE[\xA2\xF3\xF0]B$\xE4\xF4\x8C\x9D\x81\xED?\xFB!DB\xA3\xCB.\x8E\xEE\xEB\xC85\xC0\xD3{덨/u\xFA*%\xA7\xAF`\xECU\x8F\xFDzfl*D*\xAD\xD1h,\x9A\xEF\x90k\x80)\xA6\xB1\xF8\x82\x88\xFAj!R\xA9\xD4bh֙:\xC0+V\x87\x9C\x99K\xAC\xFB\xD4\xC3Ѻk\x99@~\x9FL\xAD\xFBn\x8EΣ\xF7\x91P\xF5\xF8S\xA3\xB8\x91\xA0\xC6Cy\x87\xBDb\xE0s\x87        \x91P\xF3\x9A\xFF\x88\xEE\x9B/\xE4\x92`\x8A\xE8\xADz=W\xFCP\x88\x84J\x9F\xD9#\xFD\xBB0\xAEjǝ1}!RmFs\xE1wur\xC90E47\xA29"D*\x95\x9As<0
+\xB5ag\xE7\xEB<\xF9\xBBh\xFD\xE6:!\x80\xDC1\x80L\xA3\xBF\xBD1:\x8F\xDD+DB\xB5㜾\x82\x892\xB0\xD3碼\xE7\xE7\x85H\xA8q\x{14F8F7}\xF2U!\x80\1\x80\xE4\o\xE5k\xD1\z\x91        \x95\xB7\xDF#*\xFB9}ih\xE67"6\x98!D*\xADF\xD4;\x85\xE4\x8B \xE7\xEA\x8BϏ\xAD\x91J\xA5\xB59N_\xC1D+M\x8Bڬ3\x84H\xA8\xFB\xF8\xFD1z\xCF+B\xB9aȱѻ\xAF\x8F\xEE\xE3\xF7\x91\x90\xD3W0yTv\xD9?>{\xB0        5\xAF\xFCQ\xF4V\xBD.\x90\x80\x9C\xEA\xBD\xF9J4\xAF\xFC\x91        9}\x93O\xF5\x84ӣ0\xBC\xA1\xA9\x8C֣\xE1\x90\x80\x9Cj,\xFAnD\xAB!D*N_\xC1\xA4T\x9E\xB5\x93\x9C\xC2J\xA9\xF3ؽѺ\xEFf!\x80\xFEFH\x90?\xAD\xBB~\x9D'"\xA1ڱ_w\xFA
+&\xA9\x81\xDD\x8C\xF2\xAE
+\x91P\xE3ʋ\xA2\xF7\xD6B}\xCD\x903\xDD7^\x89\xC6\xD5?"\xA1\xF2\xA7?\x95\xFD\x8F&\xB1\xDAI\xFF\xEAVJ\xF5\xD5Ѹ\xFC\xFB:}\xCD\x90#Y\x96Es\xD1y\xA3M1R\xACFu\xCE\xD9:\xC0$W\xDC`FTg\x9E.DB\x9D?\xDC\xADn\xE8\xDFg\x83\xF9\xD1\xFA͵\xD1y\xF2\xF7B$T;\xF6\xEBQ\xDA\xD8\xE9+\xE8\x95=\x89\xF2.\xFB        \x91P\xF3\x8A\xA3\xB7z\xA5@_2\x80\xE4D\x{1CD5E3}y\xCD\xC5B$T\xFE\xF4g\xA3\xB2\xDFQB@\xA9\x9D\xF8\xAD\x88\xA1+\x84H$\xAB\xBF\x8D˿'З 9\x90eY4h9}\x95\x8C\xD3WЗ\x8An\xB5\xE3\xBF!DB\x9D\x87~\xAD\xDF\xFFZ\xA0\xFF\x9E        \xF4\xBF\xD6\xD7F\x{1E91C5}H\xC8\xE9+\xE8_\x95\xBD\xBE\xE5\xF7"\xA1\xE6/~\xBDի\x84\xFA\x8A\xA0\xCF\xF5^)\x9A\xCB\xFEC\x88\x84ʟ\xDE\xDD\xE9+\xE8s\xB5\xD9gE        \x91H6\xB2*\x9A\xBF\xF8\x81@_1\x80\xF4\xB1,\xCBbd\xC1\xFC\x88֨\xA9V\xA3:\xD7\xE9+\xE8w\xC5\xE9\x9BDu\xE6iB$\xD4~\xF0\xD7\xD1~\xE87B\xFD\xF3,\x90\xA0\xB5n\xBF*z\xCF\xFCA\x88\x84\xAA_\xFE\x97(m\xF41! ?wx\x94v\xD8S\x88\x84K.\x88\xDE\xC8[B}\
xC1Ч\xBA\xAF\xBE\xCDe?"\xA1\xD2v\xBB\xC5\xE0\xFEG924\xEB̈JM\x88D\xB2\x91U\xD1Xz\xA1@_0\x80\xF4\xA1\xACƂ\xF3"\xDAN_%3X\x8D\xDA\xC9\xE7\xE89S\xDCh\xF3\xA8\xFBu!\xEA<pk\xB4\xB9[`\xF2?$\xE8?\xA3\xB7_\xDD\xE5\x8F\x91P\xF5\xCB\xFF\xEC\xF4\xE4Te\xFF#\xA3\xFC\xE9\xCF
+\x91P}\xF1\x91\xD5\xDF\x98\xD4 }\xA6\xFB\xCA\xD1\xFC\xE5%B$T\xDAn\xB7\xA8\xEC\xE7\xF4\xE4Yu\xEEY\x95\xAA\xA9\xBC\xFDf4\xAE\xFC\x91\xC0\xA4f\xE8#kN_͋B\xBB%F*\x955\xA7\xAF
+\x85\x82\x90c\xA5\x8D>\xD5/M\x88\x84\xDA\xF7\xDD\xEDG+0i@\xFA\xC8\xE8\xADWD\xF7\xB9DžH\xA8z\xAC\xD3W0UT\xF6?&J\xDB\xED"DB\xF5%D\xD6\x98\x94 }\xA2\xFBʟ\xA2y\x9D\xD3W)\x95\xB6\xDB\xD5\xE9+\x98B
+\x85B\xCD9'\xA22(F*\xAB^\x8F\xC6U\xE9LJ\x80>\x90u\xBBQ\xBFl^\xBA1R\xA9T\xA36\xF7\\xA7\xAF`\x8A)n\xF2\xF1\xA8\xF5U!j\xFF\xF6\xA6h?~\xBF\xC0\xE4{ϗ`\xF2k\xDD\xFA\x8B\xE8=\xFFG!\xAA~\xF9kQ\xDA\xD8\xE9+\x98\x8A*\xA5mv"\xA1\xC6\xE2\xF3\xA3L*\x80I\xAE\xF3\xE7\xE7\xA2q\xDDυH\xA8\xB4ݮQ\xD9\xFF!`\x8A*
+Q\x9B{Nd1\xC9V\xBEͫ,0\xA9@&\xB1\xACۍƂ\xF9Q\xE89}\x95\x8C\xD3W@D\x946\xDB2\xAAG\x9D"DB\x{DEEF}\x8F\xF6\xBF\x984 \x93\xD8\xE8-\x8B\xA3\xF7\xA7'\x84H\xA8z\x8C\xD3W\xC0\x83\xA5O\xEE DB\x8D\x85Na\x93\x87`\x92꾴<\x9A\xD7_*DB\xA5\xEDv\x89\xCAN_k\x8AŨ\xCD\xFDvd\xA5\xB2\x89d+_\x89\xD1e?\x98 lgIDAT\x93P\xD6\xEDD\xE3\xB2\xEFD\xA1\xD7#\x95\xCA`\xD4\xE68}\xFC\xA5\xD2Ƕ\x8A\xEA\xFF(DB\xAD;\xAF\x8D\xCES        L8\xC0$4z\xF3\xE2\xE8\xBE\xF8\xB4        U\x8F\xF9\xE7(m\xF2WB\xEF0x\xC8        Q\xFC\xC4\xF6B$T_x~d\xAD\xA6\xC0\x842\x80L2\xDD\xCFD\xF3F\xA7\xAFRr\xFA
+x?\x85R)jsύ\xAC\xE8V*\xD9/E\xE3Z\xA7\xB0\x80\x89e\x98L\xBA\x9D\xA8_6/
+YO\x8BT\x9C\xBE\xD6A\xF9\xAF>\xD5#\xBE"DB\xED;\xAF\x89\xCE3\x980\x80I\xA4yӂ\xE8\xADxF\x88\x84\xAAG;}\xAC\x9B\xC1CgEi\xCBm\x85H%ˢ\xBE\xF0\xBC\xC8Z\xA3Z\xC20It^x:\x9A7-"\xA1Ҷ\xBBD\xE5@\xA7\xAF\x80uS(\x95\xA3v\xF2\xB7#+\xF8\x91Y*\xD9k+\xA2\xF9\xCBK\x84&\x84ws\x80ɠۉ\xFA\xC2\xEF8}\x95Re0js\x9D\xBE>\x9C\xD2\xDBD\xF5p\xA7\xB0Rj\xDD~et\x9E}L`\xDC@&\x81捗E\xB6b\xB9        9}|\xE4\xF7\x8F/Ή\xC2[\x91J\x96Ec\xE1\xBC\xC8\xDA--\x80qe\x98`\x9D\x9E\x8A\xD1_-"!\xA7\xAF\x80\xF5{)\xC7\xD0\xDCoG\xFD\xE8,\x95ޫ/F\xF3\xFA\x9F\x8C+\xEF\xE2(봣~\xE9w"zN_%S\x8C\xA1\xB9\xE78}\xAC\x97\xF2V\xDB\xC5\xE0\xE6\x91P\xEB\xD6+\xA2\xF3\xDC\xE3B\xE3\xC60\x81\x9A7\\xD9\xCB\xCF        \x91\xD0\xE0\xD1_\x8B\xE2&X\xFF\xF7\x93\xC3N\x8E\xC2\xC7>)D*Y/\xE6G\xD6ik\x8C\xC0\xE9>\xFFD\xB4nY"D\xCAor\xB7\xDD%\xFC\xB2@\x85\xF2@\x9F|nD\xC1\x8F\xD0R\xE9\xBD\xF2\xA7h^\xFF\x9FB\xE3\xF3\xD9P\x80\xF1\x97u\xDA1\xB2`\
x9E\xD3W)Uc\xD8\xE9+ \xB1\xD2'\xB6\x8Fʡ'        \x91P\xEB\xD6ˣ\xF3\xA7'\x85Ɯ`4\xAF\xFBYd/?/DBգ\xBE\xEA\xF406\xEF/G\xFC}7\xDBJ\x88Tz\xBD\xA8/\x9C\xD1\xEDh\x8C)\xC08\xEB,,Z\xB7^!D\xCAon\xB7\xDD%*+0&
+偨\x9D|n\x84\xBFa\x96L\xF6\xD2\xF2h\xDEx\x99\xC0\xD8~F\x94`\xFCd\xEDV4̋Ȝ\xBEJf`0\x86\xE7\x9C\xED\xF40\xA6\xCA[\xEF\x95\x83g
+\x91P\xF3\xE6E\xD1y\xE1i!\x801cG\xCD\xEB.\x89ޫ/
+\x91P\xF5\xE8\xAFFq\xD3-\x84\xC6\xFE\xFD\xE6\xC8S\xA2\xB8ٖB$R\xC8z\xD1X8\xCF),`\xCC@\xC6I\xE7\xD9Ǣu\xDBR!R~S\xFB\xA9\xBFq\xFA
+7\x85\x81J\xD4\xE6:\x85\x95RoųѼy\x91\xC0\xD8|V\x94`\xECe\xAD\xD15\xCA5\xCB\xC4He`0\x86\xE7\x9E\xE3\xF40\xAE\xCA\xDB\xEC\x95\x8F"\xA1\xE6M\xA2\xBB\xE2Y!\x80\xE4 \xE3\xA0\xF9K\xA7\xAFR\xAB\xFDON_\xF4\xFEsJ6\xFE\xB8\x89z\xDDh,\x98\x99SX@b\x801\xD6y\xF6\x91h\xDD~\xA5        \x95\xB6\xD99*\xF9\xD8\xC0\xC4(T\xAA14\xF7l!\xEA\xBE\xF8t\x8CD )\xC0\xCAZͨ/\x98\xEF\xF4UJ\x83Qs\xFA
+\x98`\xE5\xEDv\x8D\xCA\xC7\x91P\xF3\xFAˢ\xFB\xE7\xE5B\xC9@\xC6P\xE3ڟD\xF6\xDA
+!\xAA}J\x946\xDBR`\xE2ߏ\x8E\xF9Z6\xDA\\x88D
+\xBDN\xD4\x9EY\xB7+\x90\x84`\x8Ct\x9E~8\xDAw\-DBkN_/0)kQ\x9B{\x8E        \xF5\x9E"Fo\xBDB         \xC0\xC8FQ_p\x9E)9}LƷ\xA6O\xEF\xFB)DB\xCD\xEB\xDDW\xFE$\xB0\xDE c\xA0y\xEDő\xBD\xF1\x92        9}L\xDA\xF7\xA7c\xFF%
+36"\x91B\xB7\x8D\xF3#\xEB\xF5\xC4 \xB1ΓE\xEB\xCEk\x85H\xA8\xB4\xF5\xCEQ9\xF08!\x80I\xA9X\x8A\xDA쳅H\xA8\xFB\xDC\xE31z\xDBR!\x80\xF5{\x96 \x9D^\xB3\xF5\x85\xF3\x84Hi`0j'\x9F\x85\xA2oa\x81I\xFCV\xB5Þ1\xB0\xCF\xE1B$\xB4\xE6\xD6B\x99O\x8F        \x8D^sqdo\xBE"DBգ\x9C\xBE\xFAC\xED\xD8S#\xA6o"D"\x85v+Ϗ,\xCB\xC4>@"\xED'~\xAD\xBB\x96        \x91Pi띣r\x90\xD3W@(Ԇch֙B$\xD4]\xFEH\xB4n\xBFR\xE0#1\x80$\xD0k֣\xB1\xF0<!\xCA*Q\x9B{\xB6\xD3W@_\xD8\xE9s1\xB0\xD7\x85H\xA8\xB9\xEC\x92轶B\xE0C\xF3) \x81\xE6\xD5?\x8El\xE5\xABB$T=\xEA\x94(m\xBE\x95@ߩjĴ\x8D\x84H\xA5=\xF5ENa\x9E`=\xB5\xFF\xF8@\xB4\xEF\xBE^\x88\x84J[\xEF\x83/З
+CӢ6\xEB!\xEA>\xFDp\xB4\xEE\xB8V\xE0C1\x80\xAC\x87^\xB3\x8DEN_\xA5\xB4\xE6\xF4չN_}\xAD\xF27\xFBEy\x8F\x83\x85H\xA8\xB9\xEC\xE2\xE8\xBE\xF1\xB2\xC0:\xF3i`=4\xAF\xBA(\xB2\x95\xAF        \x91\x90\xD3W@^\xD4f\x9E\x85\xE1\xE9B\xA4\xD2jFc\xE1yNa\xEB\xCC\xF0u\xBB7\xDA\xF7\xDC(DBN_yR\x9E\xB5\x93\x9C\xC2J\xA9\xFBԃѺ\xEB\x97B\xEB\xF6>,\xC0\x87\x975Fbd\xF1B\xA4l\xEA\xF4\x90C\xBB\xBB$DB\xCDk\xFE=zo\xBE"\xF0\x81|\xAA\xF8K\xB1\xCA體\xAAG\xFE\xA3\xD3W@>\xDF\xDFN\xF8\xA6SX)\x8D6\xA3\xB1\xE8\xBB:\xC8\xF0!\xB5\xFDm\xB4\xEF\xBBY\x88\x84J\x9F\xDC!\xFFv\xA6@.\xA7͈ꉧ\x91P\xE7\x89b\xF4\xEE\xEB\x85\xDE\xFF\xFDW\x80u\x975VGݟ:M\xDBt\xA0\xB5\x93\xBF\xED\xF4\x90k\x95\xDD\x8E\xF2.\xFB\x91P\xE3\xAAEo\xE5\xABB\xEFɧK\x80\xA1~Ņo\xBF!DB\xD5#\x9C\xBE\xA6\x86\xDAIߊ\xDA@\x88D
+\xA3\x8D\xA8/\xF1\xEFq\xEF\xCD\xB0\x8EZ\xB8+:\xF7\xFF\x97        \x95>\xB9C\xEC\xF405\xA7m\xB5\xE3\x9D\xC2J\xA9\xFB\xD8}Ѻ\xF7&!\x80wߕ\xE0\x83\xF5Fފ\xC6b\xCA4\xA5\xACT\x8E\xDA\\xA7\xAF\x80\xA9\xA5\xB2\xD7磼\xD3>B$\xD4XzQ\xF4\xDEz]\xE0|\xCAX\x8D\xA5?\x88X\xBDR\x88\x84\xAAG\xFDS\x94>\xE6\xF40\xF5\xD4f\x9FQ"\x95\xE6H4O\xE0 \xA0\xF5\xF0\x9D\xD1y\xE06!r\xFA
+\x98ʊn\xB5\x99\xA7        \x91P\xE7\xD1{\xA2u߯\x84\xFE\xF2\xFDV\x80\xF7\xD6YM\xAA4)\xA7\xAF"*{\xA5\xF7"\xA1ƕ?\x8C\xDE\xDBo
+\xFC\x9F6\xDEG\xF3\xF2D6\xB2J\x88\x84\xAAG\x9E\xE2\xF4@D\xCD:+\xB2\xC1\x9A\xA9\xD4WG\xE3rh\xF8_\x80\xF7\xD0~\xF0\x8Eh?\xF8k!*}r\x87<\xE4!"\xA28cӨw\xAA        u\xBE+Z\xDC*\xB0\xE6}V\x80w\xEA\xAD^\xE5O\x91&\xE6\xF4\xC0;+\xEE{D\x94\xB7\xDFC\x88\x84\x9AK/\x8C\xDE\xDB+\x85 \xEF\xA6q\xF9\xF7#yK\x88\x84\x9C\xBEx\x8F\xF7\xC7\xD9gEV\x85H$y+\xBF\xF8\xBE@vZ\xF2H&\x90'\xFE\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80
\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90;
w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xB9cr\xC7\xE4\x8E\xC8\x90; w @\xEE@\x80\xDC1\x80\xF0\xFF\xB5g2\x83\xFC\xAD\xEF\xF1\x95F\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;
\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0
\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\x
B0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80
\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8 \xC0\x8Ev\xB0#@\x80\xEC`G\x80;\xD8        \x84\xBC\x9AsK\xC7IEND\xAEB`\x82
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="branchessafari601branchLayoutTestsimportedw3cChangeLog"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/LayoutTests/imported/w3c/ChangeLog (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/imported/w3c/ChangeLog        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/LayoutTests/imported/w3c/ChangeLog        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -1,3 +1,19 @@
</span><ins>+2015-12-05 Matthew Hanson <matthew_hanson@apple.com>
+
+ Merge r192953. rdar://problem/23581540
+
+ 2015-12-01 David Hyatt <hyatt@apple.com>
+
+ Implement the picture element.
+ https://bugs.webkit.org/show_bug.cgi?id=116963
+
+ Reviewed by Dean Jackson.
+
+ * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt:
+ * web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute-expected.txt:
+ * web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source-expected.txt:
+ * web-platform-tests/html/semantics/embedded-content/the-img-element/update-the-source-set-expected.txt:
+
</ins><span class="cx"> 2015-04-13 Alexey Proskuryakov <ap@apple.com>
</span><span class="cx">
</span><span class="cx"> imported/w3c/canvas/2d.text.measure.width.empty.html is flaky
</span></span></pre></div>
<a id="branchessafari601branchLayoutTestsplatformmacjsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -623,6 +623,11 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLParamElement').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLParamElement').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLParamElement').configurable is true
</span><ins>+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').value is HTMLPictureElement
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').configurable is true
</ins><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLPreElement').value is HTMLPreElement
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLPreElement').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLPreElement').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="branchessafari601branchLayoutTestsplatformmacyosemitejsdomglobalconstructorsattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -623,6 +623,11 @@
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLParamElement').hasOwnProperty('set') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLParamElement').enumerable is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLParamElement').configurable is true
</span><ins>+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').value is HTMLPictureElement
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'HTMLPictureElement').configurable is true
</ins><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLPreElement').value is HTMLPreElement
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLPreElement').hasOwnProperty('get') is false
</span><span class="cx"> PASS Object.getOwnPropertyDescriptor(global, 'HTMLPreElement').hasOwnProperty('set') is false
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/CMakeLists.txt (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/CMakeLists.txt        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/CMakeLists.txt        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -519,6 +519,7 @@
</span><span class="cx"> html/HTMLOutputElement.idl
</span><span class="cx"> html/HTMLParagraphElement.idl
</span><span class="cx"> html/HTMLParamElement.idl
</span><ins>+ html/HTMLPictureElement.idl
</ins><span class="cx"> html/HTMLPreElement.idl
</span><span class="cx"> html/HTMLProgressElement.idl
</span><span class="cx"> html/HTMLQuoteElement.idl
</span><span class="lines">@@ -1667,6 +1668,7 @@
</span><span class="cx"> html/HTMLOutputElement.cpp
</span><span class="cx"> html/HTMLParagraphElement.cpp
</span><span class="cx"> html/HTMLParamElement.cpp
</span><ins>+ html/HTMLPictureElement.cpp
</ins><span class="cx"> html/HTMLPlugInElement.cpp
</span><span class="cx"> html/HTMLPlugInImageElement.cpp
</span><span class="cx"> html/HTMLPreElement.cpp
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/ChangeLog (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/ChangeLog        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/ChangeLog        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -1,5 +1,74 @@
</span><span class="cx"> 2015-12-05 Matthew Hanson <matthew_hanson@apple.com>
</span><span class="cx">
</span><ins>+ Merge r192953. rdar://problem/23581540
+
+ 2015-11-30 David Hyatt <hyatt@apple.com>
+
+ Implement the picture element.
+ https://bugs.webkit.org/show_bug.cgi?id=116963
+
+ Reviewed by Dean Jackson.
+
+ Added fast/picture tests.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ Add HTMLPictureElement.* to the project.
+
+ * html/HTMLImageElement.cpp:
+ (WebCore::HTMLImageElement::setBestFitURLAndDPRFromImageCandidate):
+ Remove the CURRENT_SRC ifdef.
+
+ (WebCore::HTMLImageElement::bestFitSourceFromPictureElement):
+ New helper function that checks the <source> elements of a <picture> parent
+ for the best match.
+
+ (WebCore::HTMLImageElement::selectImageSource):
+ Pull out the process of image selection into its own function so that this can
+ be called from many places (to ensure that dynamic changes are reflected as elements
+ get changed, added or removed).
+
+ (WebCore::HTMLImageElement::parseAttribute):
+ Call selectImageSource when attributes change.
+
+ (WebCore::HTMLImageElement::insertedInto):
+ If inserted into a picture element, make sure to update the source.
+
+ * html/HTMLImageElement.h:
+ (WebCore::HTMLImageElement::currentSrc):
+ Remove the CURRENT_SRC ifdef.
+
+ * html/HTMLImageElement.idl:
+ Remove the CURRENT_SRC ifdef.
+
+ * html/HTMLPictureElement.cpp: Added.
+ (WebCore::HTMLPictureElement::HTMLPictureElement):
+ (WebCore::HTMLPictureElement::create):
+ (WebCore::HTMLPictureElement::sourcesChanged):
+ * html/HTMLPictureElement.h: Added.
+ The new picture element. Has a sourcesChanged() function that is invoked whenever anything
+ about the <source> elements changes.
+
+ * html/HTMLSourceElement.cpp:
+ (WebCore::HTMLSourceElement::insertedInto):
+ (WebCore::HTMLSourceElement::removedFrom):
+ (WebCore::HTMLSourceElement::parseAttribute):
+ Make sure to call sourcesChanged when new sources come and go or when attributes on
+ source elements change.
+
+ * html/HTMLSourceElement.h:
+ Added parseAttribute function so we can see when attributes change that force us to
+ do a dynamic update.
+
+ * html/HTMLTagNames.in:
+ Add the picture element.
+
+ * html/parser/HTMLSrcsetParser.h:
+ (WebCore::ImageCandidate::srcOrigin):
+ (WebCore::ImageCandidate::isEmpty):
+ Some helpers for picture parsing.
+
+2015-12-05 Matthew Hanson <matthew_hanson@apple.com>
+
</ins><span class="cx"> Merge r191252. rdar://problem/23772905
</span><span class="cx">
</span><span class="cx"> 2015-10-17 David Hyatt <hyatt@apple.com>
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCoreDerivedSourcesmake"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/DerivedSources.make (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/DerivedSources.make        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/DerivedSources.make        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -393,6 +393,7 @@
</span><span class="cx"> $(WebCore)/html/HTMLOutputElement.idl \
</span><span class="cx"> $(WebCore)/html/HTMLParagraphElement.idl \
</span><span class="cx"> $(WebCore)/html/HTMLParamElement.idl \
</span><ins>+        $(WebCore)/html/HTMLPictureElement.idl \
</ins><span class="cx"> $(WebCore)/html/HTMLPreElement.idl \
</span><span class="cx"> $(WebCore)/html/HTMLProgressElement.idl \
</span><span class="cx"> $(WebCore)/html/HTMLQuoteElement.idl \
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -5244,6 +5244,8 @@
</span><span class="cx">                 BC3BE9AB0E9C242000835588 /* RenderScrollbarPart.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC3BE9AA0E9C242000835588 /* RenderScrollbarPart.cpp */; };
</span><span class="cx">                 BC3C39B60C0D3D8D005F4D7A /* JSMediaList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC3C39B40C0D3D8D005F4D7A /* JSMediaList.cpp */; };
</span><span class="cx">                 BC3C39B70C0D3D8D005F4D7A /* JSMediaList.h in Headers */ = {isa = PBXBuildFile; fileRef = BC3C39B50C0D3D8D005F4D7A /* JSMediaList.h */; };
</span><ins>+                BC3D85BB1C0E2E7700D3B610 /* JSHTMLPictureElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC808B121C0E2B350066FD6B /* JSHTMLPictureElement.cpp */; settings = {ASSET_TAGS = (); }; };
+                BC3D85BC1C0E2E7A00D3B610 /* JSHTMLPictureElement.h in Headers */ = {isa = PBXBuildFile; fileRef = BC808B131C0E2B350066FD6B /* JSHTMLPictureElement.h */; settings = {ASSET_TAGS = (); }; };
</ins><span class="cx">                 BC4368E80C226E32005EFB5F /* Rect.h in Headers */ = {isa = PBXBuildFile; fileRef = BC4368E70C226E32005EFB5F /* Rect.h */; };
</span><span class="cx">                 BC46C1EE0C0DDBDF0020CFC3 /* JSCSSRuleCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC46C1ED0C0DDBDF0020CFC3 /* JSCSSRuleCustom.cpp */; };
</span><span class="cx">                 BC46C1FA0C0DDC8F0020CFC3 /* JSCSSCharsetRule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC46C1F00C0DDC8F0020CFC3 /* JSCSSCharsetRule.cpp */; };
</span><span class="lines">@@ -5485,6 +5487,8 @@
</span><span class="cx">                 BCC065880F3CE2A700CD2D87 /* JSClientRect.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC065840F3CE2A700CD2D87 /* JSClientRect.h */; };
</span><span class="cx">                 BCC065890F3CE2A700CD2D87 /* JSClientRectList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC065850F3CE2A700CD2D87 /* JSClientRectList.cpp */; };
</span><span class="cx">                 BCC0658A0F3CE2A700CD2D87 /* JSClientRectList.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC065860F3CE2A700CD2D87 /* JSClientRectList.h */; };
</span><ins>+                BCC0E8751BFE70E9008F7F50 /* HTMLPictureElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC0E8731BFE70E9008F7F50 /* HTMLPictureElement.cpp */; settings = {ASSET_TAGS = (); }; };
+                BCC0E8761BFE70E9008F7F50 /* HTMLPictureElement.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC0E8741BFE70E9008F7F50 /* HTMLPictureElement.h */; settings = {ASSET_TAGS = (); }; };
</ins><span class="cx">                 BCC438780E886CC700533DD5 /* JSHTMLInputElementCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC438770E886CC700533DD5 /* JSHTMLInputElementCustom.cpp */; };
</span><span class="cx">                 BCC573350D695BBE006EF517 /* DOMProgressEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC573330D695BBE006EF517 /* DOMProgressEvent.h */; };
</span><span class="cx">                 BCC573360D695BBE006EF517 /* DOMProgressEvent.mm in Sources */ = {isa = PBXBuildFile; fileRef = BCC573340D695BBE006EF517 /* DOMProgressEvent.mm */; };
</span><span class="lines">@@ -12957,6 +12961,9 @@
</span><span class="cx">                 BC7FA61F0D1F0CBD00DB22A9 /* LiveNodeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LiveNodeList.h; sourceTree = "<group>"; };
</span><span class="cx">                 BC7FA62B0D1F0EFF00DB22A9 /* StaticNodeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticNodeList.h; sourceTree = "<group>"; };
</span><span class="cx">                 BC7FA62C0D1F0EFF00DB22A9 /* StaticNodeList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StaticNodeList.cpp; sourceTree = "<group>"; };
</span><ins>+                BC808B111C0E23AC0066FD6B /* HTMLPictureElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLPictureElement.idl; sourceTree = "<group>"; };
+                BC808B121C0E2B350066FD6B /* JSHTMLPictureElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLPictureElement.cpp; sourceTree = "<group>"; };
+                BC808B131C0E2B350066FD6B /* JSHTMLPictureElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLPictureElement.h; sourceTree = "<group>"; };
</ins><span class="cx">                 BC80C9850CD294EE00A0B7B3 /* CSSTimingFunctionValue.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CSSTimingFunctionValue.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 BC80C9860CD294EE00A0B7B3 /* CSSTimingFunctionValue.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CSSTimingFunctionValue.h; sourceTree = "<group>"; };
</span><span class="cx">                 BC8243250D0CE8A200460C8F /* JSSQLError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSQLError.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -13069,6 +13076,8 @@
</span><span class="cx">                 BCC065840F3CE2A700CD2D87 /* JSClientRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSClientRect.h; sourceTree = "<group>"; };
</span><span class="cx">                 BCC065850F3CE2A700CD2D87 /* JSClientRectList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSClientRectList.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 BCC065860F3CE2A700CD2D87 /* JSClientRectList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSClientRectList.h; sourceTree = "<group>"; };
</span><ins>+                BCC0E8731BFE70E9008F7F50 /* HTMLPictureElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLPictureElement.cpp; sourceTree = "<group>"; };
+                BCC0E8741BFE70E9008F7F50 /* HTMLPictureElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLPictureElement.h; sourceTree = "<group>"; };
</ins><span class="cx">                 BCC438770E886CC700533DD5 /* JSHTMLInputElementCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLInputElementCustom.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 BCC573330D695BBE006EF517 /* DOMProgressEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMProgressEvent.h; sourceTree = "<group>"; };
</span><span class="cx">                 BCC573340D695BBE006EF517 /* DOMProgressEvent.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMProgressEvent.mm; sourceTree = "<group>"; };
</span><span class="lines">@@ -18353,6 +18362,9 @@
</span><span class="cx">                                 A8EA7CA20A192B9C00A8EF5F /* HTMLPreElement.h */,
</span><span class="cx">                                 1AE2AB850A1CE85000B42B25 /* HTMLPreElement.idl */,
</span><span class="cx">                                 A43BF5961149290A00C643CA /* HTMLProgressElement.cpp */,
</span><ins>+                                BCC0E8731BFE70E9008F7F50 /* HTMLPictureElement.cpp */,
+                                BCC0E8741BFE70E9008F7F50 /* HTMLPictureElement.h */,
+                                BC808B111C0E23AC0066FD6B /* HTMLPictureElement.idl */,
</ins><span class="cx">                                 A43BF5971149290A00C643CA /* HTMLProgressElement.h */,
</span><span class="cx">                                 A4226EA51163D84D008B8397 /* HTMLProgressElement.idl */,
</span><span class="cx">                                 A8CFF79B0A156978000A4234 /* HTMLQuoteElement.cpp */,
</span><span class="lines">@@ -19299,6 +19311,8 @@
</span><span class="cx">                                 1AE2AB9F0A1CE90500B42B25 /* JSHTMLParagraphElement.h */,
</span><span class="cx">                                 1AE2ABA00A1CE90500B42B25 /* JSHTMLParamElement.cpp */,
</span><span class="cx">                                 1AE2ABA10A1CE90500B42B25 /* JSHTMLParamElement.h */,
</span><ins>+                                BC808B121C0E2B350066FD6B /* JSHTMLPictureElement.cpp */,
+                                BC808B131C0E2B350066FD6B /* JSHTMLPictureElement.h */,
</ins><span class="cx">                                 1AE2ABA20A1CE90500B42B25 /* JSHTMLPreElement.cpp */,
</span><span class="cx">                                 1AE2ABA30A1CE90500B42B25 /* JSHTMLPreElement.h */,
</span><span class="cx">                                 A4226E591163D667008B8397 /* JSHTMLProgressElement.cpp */,
</span><span class="lines">@@ -25993,6 +26007,7 @@
</span><span class="cx">                                 D3A94A3B122DABAC00A37BBC /* MediaQueryListListener.h in Headers */,
</span><span class="cx">                                 D3AA10F4123A98AA0092152B /* MediaQueryMatcher.h in Headers */,
</span><span class="cx">                                 C90843D01B18E47D00B68564 /* MediaRemoteControls.h in Headers */,
</span><ins>+                                BC3D85BC1C0E2E7A00D3B610 /* JSHTMLPictureElement.h in Headers */,
</ins><span class="cx">                                 CEEFCD7A19DB31F7003876D7 /* MediaResourceLoader.h in Headers */,
</span><span class="cx">                                 CDBEAEAD19D92B6C00BEBA88 /* MediaSelectionGroupAVFObjC.h in Headers */,
</span><span class="cx">                                 C9027F421B1D0AD200BFBFEF /* MediaSession.h in Headers */,
</span><span class="lines">@@ -26266,6 +26281,7 @@
</span><span class="cx">                                 C0F2A44113869AAB0066C534 /* preprocessor.pm in Headers */,
</span><span class="cx">                                 B71FE6DF11091CB300DAEF77 /* PrintContext.h in Headers */,
</span><span class="cx">                                 A8EA7EBC0A1945D000A8EF5F /* ProcessingInstruction.h in Headers */,
</span><ins>+                                BCC0E8761BFE70E9008F7F50 /* HTMLPictureElement.h in Headers */,
</ins><span class="cx">                                 E44613EC0CD681B500FADA75 /* ProgressEvent.h in Headers */,
</span><span class="cx">                                 A715E653134BBBEC00D8E713 /* ProgressShadowElement.h in Headers */,
</span><span class="cx">                                 1A2A68240B5BEDE70002A480 /* ProgressTracker.h in Headers */,
</span><span class="lines">@@ -28247,6 +28263,7 @@
</span><span class="cx">                                 85183B450AA6926100F19FA3 /* DOMHTMLHeadingElement.mm in Sources */,
</span><span class="cx">                                 85ECBEF20AA7626900544F0B /* DOMHTMLHRElement.mm in Sources */,
</span><span class="cx">                                 85992EBD0AA5069500AC0785 /* DOMHTMLHtmlElement.mm in Sources */,
</span><ins>+                                BC3D85BB1C0E2E7700D3B610 /* JSHTMLPictureElement.cpp in Sources */,
</ins><span class="cx">                                 85DF819A0AA77E4B00486AD7 /* DOMHTMLIFrameElement.mm in Sources */,
</span><span class="cx">                                 85DF812A0AA7787200486AD7 /* DOMHTMLImageElement.mm in Sources */,
</span><span class="cx">                                 85F32AED0AA63B8700FF3184 /* DOMHTMLInputElement.mm in Sources */,
</span><span class="lines">@@ -28987,6 +29004,7 @@
</span><span class="cx">                                 1AE2AA220A1CDAB400B42B25 /* JSHTMLBodyElement.cpp in Sources */,
</span><span class="cx">                                 1AE2AA240A1CDAB400B42B25 /* JSHTMLBRElement.cpp in Sources */,
</span><span class="cx">                                 A80E7EA00A1A83E3007FB8C5 /* JSHTMLButtonElement.cpp in Sources */,
</span><ins>+                                BCC0E8751BFE70E9008F7F50 /* HTMLPictureElement.cpp in Sources */,
</ins><span class="cx">                                 938E666009F09B81008A48EC /* JSHTMLCanvasElement.cpp in Sources */,
</span><span class="cx">                                 9392262D1032107B006E7D5D /* JSHTMLCanvasElementCustom.cpp in Sources */,
</span><span class="cx">                                 BCCBAD400C18C14200CE890F /* JSHTMLCollection.cpp in Sources */,
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLImageElementcpp"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.cpp (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.cpp        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.cpp        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -32,7 +32,11 @@
</span><span class="cx"> #include "HTMLDocument.h"
</span><span class="cx"> #include "HTMLFormElement.h"
</span><span class="cx"> #include "HTMLParserIdioms.h"
</span><ins>+#include "HTMLSourceElement.h"
</ins><span class="cx"> #include "HTMLSrcsetParser.h"
</span><ins>+#include "MIMETypeRegistry.h"
+#include "MediaList.h"
+#include "MediaQueryEvaluator.h"
</ins><span class="cx"> #include "Page.h"
</span><span class="cx"> #include "RenderImage.h"
</span><span class="cx"> #include "Settings.h"
</span><span class="lines">@@ -136,17 +140,61 @@
</span><span class="cx"> downcast<RenderImage>(*renderer()).setImageDevicePixelRatio(m_imageDevicePixelRatio);
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+ImageCandidate HTMLImageElement::bestFitSourceFromPictureElement()
+{
+ auto* parent = parentNode();
+ if (!is<HTMLPictureElement>(parent))
+ return { };
+ for (Node* child = parent->firstChild(); child && child != this; child = child->nextSibling()) {
+ if (!is<HTMLSourceElement>(*child))
+ continue;
+ auto& source = downcast<HTMLSourceElement>(*child);
+ auto& srcset = source.fastGetAttribute(srcsetAttr);
+ if (srcset.isEmpty())
+ continue;
+ if (source.hasAttribute(typeAttr)) {
+ String type = source.fastGetAttribute(typeAttr).string();
+ int indexOfSemicolon = type.find(';');
+ if (indexOfSemicolon >= 0)
+ type.truncate(indexOfSemicolon);
+ type = stripLeadingAndTrailingHTMLSpaces(type);
+ type = type.lower();
+ if (!type.isEmpty() && !MIMETypeRegistry::isSupportedImageMIMEType(type) && type != "image/svg+xml")
+ continue;
+ }
+ MediaQueryEvaluator evaluator(document().printing() ? "print" : "screen", document().frame(), computedStyle());
+ if (!evaluator.eval(MediaQuerySet::createAllowingDescriptionSyntax(source.media()).ptr()))
+ continue;
+
+ float sourceSize = parseSizesAttribute(source.fastGetAttribute(sizesAttr).string(), document().renderView(), document().frame());
+ ImageCandidate candidate = bestFitSourceForImageAttributes(document().deviceScaleFactor(), nullAtom, source.fastGetAttribute(srcsetAttr), sourceSize);
+ if (!candidate.isEmpty())
+ return candidate;
+ }
+ return { };
+}
+
+void HTMLImageElement::selectImageSource()
+{
+ // First look for the best fit source from our <picture> parent if we have one.
+ ImageCandidate candidate = bestFitSourceFromPictureElement();
+ if (candidate.isEmpty()) {
+ // If we don't have a <picture> or didn't find a source, then we use our own attributes.
+ float sourceSize = parseSizesAttribute(fastGetAttribute(sizesAttr).string(), document().renderView(), document().frame());
+ candidate = bestFitSourceForImageAttributes(document().deviceScaleFactor(), fastGetAttribute(srcAttr), fastGetAttribute(srcsetAttr), sourceSize);
+ }
+ setBestFitURLAndDPRFromImageCandidate(candidate);
+ m_imageLoader.updateFromElementIgnoringPreviousError();
+}
+
</ins><span class="cx"> void HTMLImageElement::parseAttribute(const QualifiedName& name, const AtomicString& value)
</span><span class="cx"> {
</span><span class="cx"> if (name == altAttr) {
</span><span class="cx"> if (is<RenderImage>(renderer()))
</span><span class="cx"> downcast<RenderImage>(*renderer()).updateAltText();
</span><del>- } else if (name == srcAttr || name == srcsetAttr) {
- float sourceSize = parseSizesAttribute(fastGetAttribute(sizesAttr).string(), document().renderView(), document().frame());
- ImageCandidate candidate = bestFitSourceForImageAttributes(document().deviceScaleFactor(), fastGetAttribute(srcAttr), fastGetAttribute(srcsetAttr), sourceSize);
- setBestFitURLAndDPRFromImageCandidate(candidate);
- m_imageLoader.updateFromElementIgnoringPreviousError();
- } else if (name == usemapAttr) {
</del><ins>+ } else if (name == srcAttr || name == srcsetAttr || name == sizesAttr)
+ selectImageSource();
+ else if (name == usemapAttr) {
</ins><span class="cx"> if (inDocument() && !m_lowercasedUsemap.isNull())
</span><span class="cx"> document().removeImageElementByLowercasedUsemap(*m_lowercasedUsemap.impl(), *this);
</span><span class="cx">
</span><span class="lines">@@ -255,7 +303,10 @@
</span><span class="cx">
</span><span class="cx"> if (insertionPoint.inDocument() && !m_lowercasedUsemap.isNull())
</span><span class="cx"> document().addImageElementByLowercasedUsemap(*m_lowercasedUsemap.impl(), *this);
</span><del>-
</del><ins>+
+ if (is<HTMLPictureElement>(parentNode()))
+ selectImageSource();
+
</ins><span class="cx"> // If we have been inserted from a renderer-less document,
</span><span class="cx"> // our loader may have not fetched the image, so do it now.
</span><span class="cx"> if (insertionPoint.inDocument() && !m_imageLoader.image())
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLImageElementh"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.h (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.h        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLImageElement.h        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -122,6 +122,10 @@
</span><span class="cx"> virtual HTMLImageElement& asHTMLElement() override final { return *this; }
</span><span class="cx"> virtual const HTMLImageElement& asHTMLElement() const override final { return *this; }
</span><span class="cx">
</span><ins>+ void selectImageSource();
+
+ ImageCandidate bestFitSourceFromPictureElement();
+
</ins><span class="cx"> HTMLImageLoader m_imageLoader;
</span><span class="cx"> HTMLFormElement* m_form;
</span><span class="cx"> CompositeOperator m_compositeOperator;
</span><span class="lines">@@ -141,6 +145,8 @@
</span><span class="cx"> bool hasImageControls() const;
</span><span class="cx"> virtual bool childShouldCreateRenderer(const Node&) const override;
</span><span class="cx"> #endif
</span><ins>+
+ friend class HTMLPictureElement;
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } //namespace
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLPictureElementcppfromrev193529branchessafari601branchSourceWebCorehtmlHTMLSourceElementh"></a>
<div class="copfile"><h4>Copied: branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.cpp (from rev 193529, branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h) (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.cpp         (rev 0)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.cpp        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+/*
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "HTMLPictureElement.h"
+
+#include "ElementChildIterator.h"
+#include "HTMLImageElement.h"
+#include "HTMLNames.h"
+
+namespace WebCore {
+
+HTMLPictureElement::HTMLPictureElement(const QualifiedName& tagName, Document& document)
+ : HTMLElement(tagName, document)
+{
+}
+
+Ref<HTMLPictureElement> HTMLPictureElement::create(const QualifiedName& tagName, Document& document)
+{
+ return adoptRef(*new HTMLPictureElement(tagName, document));
+}
+
+void HTMLPictureElement::sourcesChanged()
+{
+ for (auto& imageElement : childrenOfType<HTMLImageElement>(*this))
+ imageElement.selectImageSource();
+}
+
+}
+
</ins></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLPictureElementhfromrev193529branchessafari601branchSourceWebCorehtmlHTMLSourceElementh"></a>
<div class="copfile"><h4>Copied: branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.h (from rev 193529, branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h) (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.h         (rev 0)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.h        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+/*
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef HTMLPictureElement_h
+#define HTMLPictureElement_h
+
+#include "HTMLElement.h"
+
+namespace WebCore {
+
+class HTMLPictureElement final : public HTMLElement {
+public:
+ static Ref<HTMLPictureElement> create(const QualifiedName&, Document&);
+
+ void sourcesChanged();
+
+private:
+ HTMLPictureElement(const QualifiedName&, Document&);
+};
+
+} // namespace WebCore
+
+#endif // HTMLPictureElement_h
</ins></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLPictureElementidlfromrev193529branchessafari601branchSourceWebCorehtmlHTMLSourceElementh"></a>
<div class="copfile"><h4>Copied: branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.idl (from rev 193529, branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h) (0 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.idl         (rev 0)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLPictureElement.idl        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+/*
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+interface HTMLPictureElement : HTMLElement {
+};
+
</ins></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLSourceElementcpp"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.cpp (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.cpp        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.cpp        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -24,7 +24,6 @@
</span><span class="cx"> */
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><del>-#if ENABLE(VIDEO)
</del><span class="cx"> #include "HTMLSourceElement.h"
</span><span class="cx">
</span><span class="cx"> #include "Event.h"
</span><span class="lines">@@ -32,6 +31,7 @@
</span><span class="cx"> #include "HTMLDocument.h"
</span><span class="cx"> #include "HTMLMediaElement.h"
</span><span class="cx"> #include "HTMLNames.h"
</span><ins>+#include "HTMLPictureElement.h"
</ins><span class="cx"> #include "Logging.h"
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="lines">@@ -58,8 +58,12 @@
</span><span class="cx"> {
</span><span class="cx"> HTMLElement::insertedInto(insertionPoint);
</span><span class="cx"> Element* parent = parentElement();
</span><del>- if (is<HTMLMediaElement>(parent))
- downcast<HTMLMediaElement>(*parent).sourceWasAdded(this);
</del><ins>+ if (parent) {
+ if (is<HTMLMediaElement>(*parent))
+ downcast<HTMLMediaElement>(*parent).sourceWasAdded(this);
+ else if (is<HTMLPictureElement>(*parent))
+ downcast<HTMLPictureElement>(*parent).sourcesChanged();
+ }
</ins><span class="cx"> return InsertionDone;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -68,8 +72,12 @@
</span><span class="cx"> Element* parent = parentElement();
</span><span class="cx"> if (!parent && is<Element>(removalRoot))
</span><span class="cx"> parent = &downcast<Element>(removalRoot);
</span><del>- if (is<HTMLMediaElement>(parent))
- downcast<HTMLMediaElement>(*parent).sourceWasRemoved(this);
</del><ins>+ if (parent) {
+ if (is<HTMLMediaElement>(*parent))
+ downcast<HTMLMediaElement>(*parent).sourceWasRemoved(this);
+ else if (is<HTMLPictureElement>(*parent))
+ downcast<HTMLPictureElement>(*parent).sourcesChanged();
+ }
</ins><span class="cx"> HTMLElement::removedFrom(removalRoot);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -155,6 +163,15 @@
</span><span class="cx"> cancelPendingErrorEvent();
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void HTMLSourceElement::parseAttribute(const QualifiedName& name, const AtomicString& value)
+{
+ HTMLElement::parseAttribute(name, value);
+ if (name == srcsetAttr || name == sizesAttr || name == mediaAttr || name == typeAttr) {
+ auto* parent = parentNode();
+ if (is<HTMLPictureElement>(parent))
+ downcast<HTMLPictureElement>(*parent).sourcesChanged();
+ }
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-#endif
</del><ins>+}
+
</ins></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLSourceElementh"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLSourceElement.h        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -26,7 +26,6 @@
</span><span class="cx"> #ifndef HTMLSourceElement_h
</span><span class="cx"> #define HTMLSourceElement_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO)
</del><span class="cx"> #include "HTMLElement.h"
</span><span class="cx"> #include "Timer.h"
</span><span class="cx">
</span><span class="lines">@@ -59,6 +58,8 @@
</span><span class="cx"> void resume() override;
</span><span class="cx"> void stop() override;
</span><span class="cx">
</span><ins>+ void parseAttribute(const QualifiedName&, const AtomicString&) override;
+
</ins><span class="cx"> void errorEventTimerFired();
</span><span class="cx">
</span><span class="cx"> Timer m_errorEventTimer;
</span><span class="lines">@@ -68,4 +69,4 @@
</span><span class="cx"> } //namespace
</span><span class="cx">
</span><span class="cx"> #endif
</span><del>-#endif
</del><ins>+
</ins></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlHTMLTagNamesin"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/html/HTMLTagNames.in (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/HTMLTagNames.in        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/html/HTMLTagNames.in        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -97,6 +97,7 @@
</span><span class="cx"> output constructorNeedsFormElement
</span><span class="cx"> p interfaceName=HTMLParagraphElement
</span><span class="cx"> param
</span><ins>+picture interfaceName=HTMLPictureElement
</ins><span class="cx"> plaintext interfaceName=HTMLElement
</span><span class="cx"> pre
</span><span class="cx"> progress interfaceName=HTMLProgressElement
</span><span class="lines">@@ -112,7 +113,7 @@
</span><span class="cx"> section interfaceName=HTMLElement
</span><span class="cx"> select constructorNeedsFormElement
</span><span class="cx"> small interfaceName=HTMLElement
</span><del>-source wrapperOnlyIfMediaIsAvailable, conditional=VIDEO
</del><ins>+source
</ins><span class="cx"> span
</span><span class="cx"> strike interfaceName=HTMLElement
</span><span class="cx"> strong interfaceName=HTMLElement
</span></span></pre></div>
<a id="branchessafari601branchSourceWebCorehtmlparserHTMLSrcsetParserh"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebCore/html/parser/HTMLSrcsetParser.h (193532 => 193533)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebCore/html/parser/HTMLSrcsetParser.h        2015-12-05 21:39:41 UTC (rev 193532)
+++ branches/safari-601-branch/Source/WebCore/html/parser/HTMLSrcsetParser.h        2015-12-05 21:40:24 UTC (rev 193533)
</span><span class="lines">@@ -91,6 +91,11 @@
</span><span class="cx"> {
</span><span class="cx"> return (originAttribute == SrcOrigin);
</span><span class="cx"> }
</span><ins>+
+ bool isEmpty() const
+ {
+ return string.isEmpty();
+ }
</ins><span class="cx">
</span><span class="cx"> StringView string;
</span><span class="cx"> float density;
</span></span></pre>
</div>
</div>
</body>
</html>