<!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>[88] sites/trunk: Add jobs.wordpress.net theme and plugin.</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://meta.trac.wordpress.org/changeset/88">88</a></dd>
<dt>Author</dt> <dd>coffee2code</dd>
<dt>Date</dt> <dd>2013-10-02 08:41:51 +0000 (Wed, 02 Oct 2013)</dd>
</dl>
<h3>Log Message</h3>
<pre>Add jobs.wordpress.net theme and plugin. Fixes <a href="http://meta.trac.wordpress.org/ticket/43">#43</a></pre>
<h3>Added Paths</h3>
<ul>
<li>sites/trunk/jobs.wordpress.net/</li>
<li>sites/trunk/jobs.wordpress.net/bin/</li>
<li>sites/trunk/jobs.wordpress.net/includes/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentpluginsjobswpjobswptemplatephp">sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-template.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentpluginsjobswpjobswpwalkerphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-walker.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentpluginsjobswpjobswpphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp.php</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswp404php">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/404.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentcategoryphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-category.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontenthomephp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-home.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentlistphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-list.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentpagephp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-page.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentpostjobsuccessphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job-success.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentpostjobphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentsearchphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-search.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentsinglephp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-single.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content.php</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996READMEmd">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/README.md</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996basecss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/base.css</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/css/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codedemofiles12_colpng">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col.png</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codedemofiles12_col_768png">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col_768.png</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codeindexhtml">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/index.html</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/js/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codejsscriptsjs">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/js/scripts.js</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996democss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/demo.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996gridcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/grid.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996modernizr262js">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.js</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996modernizr262minjs">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.min.js</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996normalizecss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/normalize.css</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996sketchsheets996_sketchpdf">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/996_sketch.pdf</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996stylecss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/style.css</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/</li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Illustrator/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996templatesIllustrator996_gridai">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Illustrator/996_grid.ai</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996templatesIllustrator996_gridait">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Illustrator/996_grid.ait</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Photoshop/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996templatesPhotoshop996_gridpsd">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Photoshop/996_grid.psd</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcssdashiconscss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/dashicons.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpfooterphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/footer.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpfunctionsphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/functions.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpheaderphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/header.php</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/inc/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpinccustomheaderphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/inc/custom-header.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpinccustomizerphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/inc/customizer.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpincextrasphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/inc/extras.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpincjetpackphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/inc/jetpack.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpinctemplatetagsphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/inc/template-tags.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpindexphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/index.php</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/js/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpjscustomizerjs">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/js/customizer.js</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpjskeyboardimagenavigationjs">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/js/keyboard-image-navigation.js</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpjsnavigationjs">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/js/navigation.js</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpjsskiplinkfocusfixjs">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/js/skip-link-focus-fix.js</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/languages/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplanguages_spot">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/languages/_s.pot</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplanguagesreadmetxt">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/languages/readme.txt</a></li>
<li>sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/layouts/</li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplayoutscontentsidebarsidebarcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/layouts/content-sidebar-sidebar.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplayoutscontentsidebarcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/layouts/content-sidebar.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplayoutssidebarcontentsidebarcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/layouts/sidebar-content-sidebar.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplayoutssidebarcontentcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/layouts/sidebar-content.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswplayoutssidebarsidebarcontentcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/layouts/sidebar-sidebar-content.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpnoresultsphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/no-results.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswprtlcss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/rtl.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpscreenshotpng">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/screenshot.png</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpsearchformphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/searchform.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpsidebarphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/sidebar.php</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpstylecss">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/style.css</a></li>
<li><a href="#sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpwporgfooterphp">sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/wporg-footer.php</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentpluginsjobswpjobswptemplatephp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-template.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-template.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-template.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,207 @@
</span><ins>+<?php
+
+defined( 'ABSPATH' ) or die();
+
+/**
+ * Returns the value of a job's meta field, for display.
+ *
+ * @param int $post_id The post ID
+ * @param string $meta_key The field name/key
+ * @return string
+ */
+function jobswp_get_job_meta( $post_id, $meta_key ) {
+ $val = get_post_meta( $post_id, $meta_key, true );
+ $val = apply_filters( 'jobswp_metadata_raw', $val, $post_id, $meta_key );
+ $val = Jobs_Dot_WP::validate_job_field( $meta_key, $val );
+
+ switch ( $meta_key ) :
+ case 'location':
+ if ( empty( $val ) )
+ $val = 'N/A';
+ break;
+ case 'jobtype':
+ if ( 'ppt' == $val )
+ $val = 'Project';
+ elseif ( 'ft' == $val )
+ $val = 'Full Time';
+ elseif ( 'pt' == $val )
+ $val = 'Part Time';
+ else
+ $val = 'N/A';
+ break;
+ case 'howtoapply':
+ $method = get_post_meta( $post_id, 'howtoapply_method', true );
+ // For older jobs that didn't define howtoapply_method explicitly, figure it out
+ if ( ! $method ) {
+ if ( 0 < strpos( $val, '@' ) )
+ $method = 'email';
+ elseif ( 0 === strpos( $val, 'http' ) )
+ $method = 'web';
+ else
+ $method = 'phone';
+ }
+ if ( 'email' == $method ) {
+ $val = sprintf( __( 'Via <a href="%s">email</a>', 'jobswp' ), esc_attr( 'mailto:' . sanitize_email( $val ) ) );
+ } elseif ( 'web' == $method ) {
+ // Prepend 'http://' if no protocol was specified by job poster
+ if ( 0 !== strpos( $val, 'http' ) )
+ $val = 'http://' . $val;
+ $val = sprintf( __( 'Via <a href="%s">web form</a>', 'jobswp' ), esc_attr( esc_url_raw( $val ) ) );
+ } else {
+ $val = esc_html( $val );
+ }
+ break;
+ endswitch;
+
+ return apply_filters( 'jobswp_metadata', $val, $post_id, $meta_key );
+}
+
+/**
+ * Outputs the "table" section header for a given job category.
+ *
+ * @param string $before Text to appear before the header
+ * @param string $after Text to appear after the header
+ * @param int $jobscnt Count of jobs in the given job category/section
+ * @param WP_Category|null $category The job category, if a job category
+ * @return string
+ */
+function jobswp_archive_header( $before = '', $after = '', $jobscnt = 0, $category = null ) {
+ $output = '<div class="row row-head">';
+ $link = $before;
+ if ( $category ) {
+ $link .= '<a href="' . get_term_feed_link( $category->term_id, $category->taxonomy ) . '"';
+ $title = ' title="' . $category->name . '"';
+ $alt = ' alt="' . $category->name . '"';
+ $link .= $title;
+ $link .= '>';
+ $link .= '</a> ';
+ $link .= '<a href="' . get_term_link( $category, 'job_category' ) . '" ';
+ $link .= 'title="' . sprintf( __( 'View all jobs listed under %s', 'jobswp' ), esc_attr( $category->name ) ) . '"';
+ $link .= '>';
+ $link .= apply_filters( 'list_cats', $category->name, $category ).'</a>';
+ }
+ $link .= ' '.$after;
+ $output .= $link;
+ $output .= '<div class="grid_2 omega jobs-count">';
+
+ if ( is_search() ) {
+ $feed_link = get_search_feed_link();
+ $jobscnt = '';
+ } else {
+ $feed_link = get_term_feed_link( $category->term_id, $category->taxonomy );
+ $jobscnt = sprintf( _n( '%d job', '%d jobs', $jobscnt, 'jobswp' ), $jobscnt );
+ }
+
+ $output .= '<a href="' . $feed_link . '"><div class="dashicons dashicons-rss"></div></a>' . $jobscnt . '</div>
+ </div>
+ <div class="clear"></div>
+ <div class="row job-list-col-labels">
+ <div class="job-date grid_2 alpha">Date Posted</div>
+ <div class="job-title grid_4">Job Title</div>
+ <div class="job-type grid_1 alpha omega">Job Type</div>
+ <div class="job-location grid_2 omega">Location</div>
+ <div class="clear"></div>
+ </div>';
+
+ echo $output;
+}
+
+/**
+ * Outputs the text field input and surrounding markup.
+ *
+ * @param string $field_name The field name/key
+ * @param string $field_label The label text
+ * @param boolean $required Is the field a required input?
+ * @param string $type The HTML5 input type. Default is 'text'.
+ * @return string
+ */
+function jobswp_text_field( $field_name, $field_label, $required = false, $type = 'text' ) {
+ $field_name = esc_attr( $field_name );
+ $field_label = esc_html( $field_label );
+
+ echo '<div class="post-job-input post-job-input-$field_name">' . "\n";
+ echo "<label for='$field_name'>$field_label" . ( $required ? '*' : '' ) . "</label>\n";
+
+ $html5_input_types = array( 'color', 'date', 'datetime', 'datetime-local', 'email', 'month', 'number',
+ 'range', 'search', 'tel', 'time', 'url', 'week' );
+ if ( ! in_array( $type, $html5_input_types ) )
+ $type = 'text';
+
+ echo "<input type='$type' name='$field_name' class='" .
+ ( $required ? jobswp_required_field_classes( $field_name ) : '' ) .
+ "' " .
+ jobswp_field_value( $field_name ) .
+ ( $required ? ' required' : '' ) .
+ " />\n";
+ echo "</div>\n";
+}
+
+/**
+ * Returns the classes for a required field.
+ *
+ * Takes into consideration if it is called during a POST. If so and the field
+ * is not defined or is blank, then 'lacks-input' is also assigned.
+ *
+ * @param string $field The field name/key
+ * @return string Space-separated string of classes
+ */
+function jobswp_required_field_classes( $field ) {
+ $classes = 'required';
+ if ( $_POST && ( ! isset( $_POST[ $field ] ) || '' == trim( $_POST[ $field ] ) ) )
+ $classes .= ' lacks-input';
+ return $classes;
+}
+
+/**
+ * Returns the appropriate field value markup for use in appropriate form field.
+ *
+ * @param string $field Field name/key
+ * @param string $option_value Related value, if appropriate. (e.g. the other
+ * value to compare against for selected() or checked())
+ * @return string
+ */
+function jobswp_field_value( $field, $option_value = '' ) {
+ $val = '';
+
+ if ( $_POST && isset( $_POST[ $field ] ) && ! empty( $_POST[ $field ] ) ) {
+ // Allow certain HTML in job_description field
+ if ( 'job_description' == $field )
+ $val = stripslashes( wp_filter_kses( trim( $_POST[ $field ] ) ) );
+ else
+ $val = esc_attr( trim( strip_tags( stripslashes( $_POST[ $field ] ) ) ) );
+ }
+
+ // Output appropriate attribute based on field type
+ if ( $val ) {
+ if ( in_array( $field, array( 'category', 'howtoapply_method', 'jobtype' ) ) )
+ return selected( $val, $option_value, false );
+ elseif ( 'job_description' == $field )
+ return $val;
+ else
+ return "value='$val'";
+ }
+}
+
+/**
+ * Gets the list of allowed HTML tags.
+ *
+ * Like WP's allowed_tags(), but gets the allowed tags via wp_kses_allowed_html() instead
+ * of using the global $allowedtags.
+ *
+ * @return string Displayable string of acceptable tags (e.g. "<tag1> <tag2 attr=''> <tag3>")
+ */
+function jobswp_allowed_tags() {
+ $allowed = '';
+ $allowedtags = wp_kses_allowed_html();
+ ksort( $allowedtags );
+ foreach ( (array) $allowedtags as $tag => $attributes ) {
+ $allowed .= '<'.$tag;
+ if ( 0 < count( $attributes ) ) {
+ foreach ( $attributes as $attribute => $limits ) {
+ $allowed .= ' '.$attribute.'=""';
+ }
+ }
+ $allowed .= '> ';
+ }
+ return htmlentities( $allowed );
+}
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentpluginsjobswpjobswpwalkerphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-walker.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-walker.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp-walker.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,84 @@
</span><ins>+<?php
+
+defined( 'ABSPATH' ) or die();
+
+/**
+ * Custom jobs category walker.
+ *
+ * Largely the same as Walker_Category, except start_el() is customized to:
+ * * Use the class attribute prefix of 'job-cat-' instead of 'cat-'
+ * * Output slug-based class name rather than ID-based
+ * * Customized strings to refer to 'jobs' instead of 'posts'
+ */
+class Walker_Jobs_Category extends Walker_Category {
+ /**
+ * @see Walker::start_el()
+ *
+ * @param string $output Passed by reference. Used to append additional content.
+ * @param object $category Category data object.
+ * @param int $depth Depth of category in reference to parents.
+ * @param array $args
+ */
+ function start_el( &$output, $category, $depth = 0, $args = array(), $id = 0 ) {
+ extract($args);
+
+ $cat_name = esc_attr( $category->name );
+ $cat_name = apply_filters( 'list_cats', $cat_name, $category );
+ $link = '<a href="' . esc_url( get_term_link($category) ) . '" ';
+ if ( $use_desc_for_title == 0 || empty($category->description) )
+ $link .= 'title="' . esc_attr( sprintf(__( 'View all jobs filed under %s', 'jobswp' ), $cat_name) ) . '"';
+ else
+ $link .= 'title="' . esc_attr( strip_tags( apply_filters( 'category_description', $category->description, $category ) ) ) . '"';
+ $link .= '>';
+ $link .= $cat_name . '</a>';
+
+ if ( !empty($feed_image) || !empty($feed) ) {
+ $link .= ' ';
+
+ if ( empty($feed_image) )
+ $link .= '(';
+
+ $link .= '<a href="' . esc_url( get_term_feed_link( $category->term_id, $category->taxonomy, $feed_type ) ) . '"';
+
+ if ( empty($feed) ) {
+ $alt = ' alt="' . sprintf(__( 'Feed for all jobs filed under %s', 'jobswp' ), $cat_name ) . '"';
+ } else {
+ $title = ' title="' . $feed . '"';
+ $alt = ' alt="' . $feed . '"';
+ $name = $feed;
+ $link .= $title;
+ }
+
+ $link .= '>';
+
+ if ( empty($feed_image) )
+ $link .= $name;
+ else
+ $link .= "<img src='$feed_image'$alt$title" . ' />';
+
+ $link .= '</a>';
+
+ if ( empty($feed_image) )
+ $link .= ')';
+ }
+
+ if ( !empty($show_count) )
+ $link .= ' (' . intval($category->count) . ')';
+
+ if ( 'list' == $args['style'] ) {
+ $output .= "\t<li";
+ $class = 'job-cat-item job-cat-item-' . esc_attr( $category->slug );
+ if ( !empty($current_category) ) {
+ $_current_category = get_term( $current_category, $category->taxonomy );
+ if ( $category->term_id == $current_category )
+ $class .= ' current-cat';
+ elseif ( $category->term_id == $_current_category->parent )
+ $class .= ' current-cat-parent';
+ }
+ $output .= ' class="' . $class . '"';
+ $output .= ">$link\n";
+ } else {
+ $output .= "\t$link<br />\n";
+ }
+ }
+}
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentpluginsjobswpjobswpphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/plugins/jobswp/jobswp.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,750 @@
</span><ins>+<?php
+/*
+Plugin Name: JobsWP
+Version: 1.0
+Plugin URI: http://jobs.wordpress.net
+Author: Scott Reilly
+Description: Functionality for jobs.wordpress.net
+*/
+
+defined( 'ABSPATH' ) or die();
+
+require_once( dirname( __FILE__ ) . '/jobswp-template.php' );
+require_once( dirname( __FILE__ ) . '/jobswp-walker.php' );
+
+class Jobs_Dot_WP {
+
+ /**
+ * @var int $days_until_pruning The number of days a job is listed on the site before it gets pruned.
+ *
+ * Customize via the 'jobswp_days_until_pruning' filter.
+ */
+ private $days_until_pruning;
+
+ /**
+ * Fields that must have a value when submitted by job poster.
+ */
+ private $required_fields = array(
+ 'first_name', 'last_name', 'email', 'phone',
+ 'company', 'howtoapply_method', 'howtoapply',
+ 'job_title', 'category', 'jobtype', 'job_description'
+ );
+
+ /**
+ * All of the meta fields.
+ */
+ private $meta_fields = array(
+ 'first_name', 'last_name', 'email', 'phone',
+ 'company', 'howtoapply_method', 'howtoapply',
+ 'budget', 'jobtype', 'location'
+ );
+
+ /**
+ * Internally used temporary variables.
+ */
+ private $success = false;
+ private $skip_content = false;
+
+ /**
+ * The instance of the class, accessible via Jobs_Dot_WP::get_instance().
+ */
+ private static $instance;
+
+ /**
+ * Custom walker instance
+ */
+ private static $walker;
+
+ /**
+ * Returns the singleton instance of the class. If there isn't one, creates it.
+ * @return Jobs_Dot_WP
+ */
+ public static function get_instance() {
+ if ( ! self::$instance )
+ self::$instance = new Jobs_Dot_WP;
+
+ return self::$instance;
+ }
+
+ /**
+ * Constructor
+ */
+ function __construct() {
+ if ( class_exists( 'Walker_Jobs_Category' ) )
+ self::$walker = new Walker_Jobs_Category;
+
+ register_deactivation_hook( __FILE__, array( __CLASS__, 'unschedule_job_pruning' ) );
+
+ add_action( 'init', array( $this, 'registrations' ), 1 );
+ add_action( 'init', array( $this, 'init' ) );
+ }
+
+ /**
+ * Invokes registration of custom post type, taxonomy, and statuses.
+ */
+ function registrations() {
+ $this->register_post_type();
+ $this->register_post_status();
+ $this->register_taxonomy();
+ }
+
+ /**
+ * Initializations. Mostly registering hooks for actions and filters, as well
+ * as any processing that needs to happen directly on 'init'.
+ */
+ function init() {
+ // Allow customization of the number of days until a job gets pruned.
+ // By default, it is 21 days.
+ $this->days_until_pruning = apply_filters( 'jobswp_days_until_pruning', 21 );
+
+ add_filter( 'manage_job_posts_columns', array( $this, 'posts_columns' ) );
+ add_action( 'manage_job_posts_custom_column', array( $this, 'custom_posts_columns' ), 10, 2 );
+
+ add_filter( 'the_content', array( $this, 'add_post_a_job_form' ) );
+ add_filter( 'wp_kses_allowed_html', array( $this, 'wp_kses_allowed_html' ), 10, 2 );
+ add_filter( 'body_class', array( $this, 'body_class' ) );
+
+ add_action( 'admin_notices', array( $this, 'alert_if_no_jobposter' ) );
+ add_action( 'admin_notices', array( $this, 'job_closure_success' ) );
+ add_action( 'post_submitbox_start', array( $this, 'post_submitbox_start' ) );
+ add_action( 'admin_action_close-job', array( $this, 'handle_close_job' ) );
+ add_action( 'post_row_actions', array( $this, 'post_row_actions' ), 10, 2 );
+
+ foreach ( array( 'the_content', 'the_title', 'single_post_title' ) as $filter )
+ add_filter( $filter, array( $this, 'WordPress_dangit' ) );
+
+ $this->save_job();
+ $this->schedule_job_pruning();
+
+ add_action( 'jobswp_scheduled_job_pruning', array( $this, 'scheduled_job_pruning' ) );
+ }
+
+ /**
+ * Amends additional HTML tags as allowed for use in job descriptions.
+ *
+ * Adds allowance for ol, ul, li
+ *
+ * @param array $allowedtags The already allowed tags
+ * @param string $content The content
+ * @return array The amended list of allowed tags
+ */
+ function wp_kses_allowed_html( $allowedtags, $content ) {
+ // Add permissable tags
+ $allowedtags['ol'] = array();
+ $allowedtags['ul'] = array();
+ $allowedtags['li'] = array();
+
+ // Remove unnecessary tags
+ $disallowed_tags = array( 'a', 'del', 'strike' );
+ foreach ( $disallowed_tags as $tag ) {
+ if ( isset( $allowedtags[ $tag ] ) )
+ unset( $allowedtags[ $tag ] );
+ }
+
+ return $allowedtags;
+ }
+
+ /**
+ * Adds custom class name to 'body' tag for all output pages
+ *
+ * @param array $classes Classes to be added to 'body' tag
+ * @return array The amended list of classes to be added to 'body' tag
+ */
+ function body_class( $classes ) {
+ $classes[] = 'jobswp';
+ return $classes;
+ }
+
+ /**
+ * Adds additional columns to the admin post listing table for the job custom post type.
+ *
+ * Adds a column to display the name of the person who posted the job, as well as a
+ * a column with their email address.
+ *
+ * @param array $columns Associative array of column names and labels
+ * @return array Amended associated array of column names and labels
+ */
+ function posts_columns( $columns ) {
+ $columns['poster'] = __( 'Poster', 'jobswp' );
+ $columns['poster_email'] = __( 'Poster Email', 'jobswp' );
+ return $columns;
+ }
+
+ /**
+ * Outputs the contents of the custom admin post listing columns for a given job.
+ *
+ * @param string $column_name The column name
+ * @param int $post_id The post ID
+ */
+ function custom_posts_columns( $column_name, $post_id ) {
+ switch ( $column_name ) {
+ case 'poster':
+ $first_name = get_post_meta( $post_id, 'first_name', true );
+ $last_name = get_post_meta( $post_id, 'last_name', true );
+ $name = trim( $first_name . ' ' . $last_name );
+ // If no name was obtained via either of the name components, then fall back to old-school meta field
+ if ( empty( $name ) )
+ $name = get_post_meta( $post_id, 'post_name', true );
+ echo esc_attr( $name );
+ break;
+ case 'poster_email':
+ echo esc_attr( get_post_meta( $post_id, 'email', true ) );
+ break;
+ }
+ }
+
+ /**
+ * Registers the custom post type.
+ */
+ function register_post_type() {
+ $labels = array(
+ 'name' => _x( 'Jobs', 'Post Type General Name', 'jobswp' ),
+ 'singular_name' => _x( 'Job', 'Post Type Singular Name', 'jobswp' ),
+ 'menu_name' => __( 'Jobs', 'jobswp' ),
+ 'parent_item_colon' => __( 'Parent Job:', 'jobswp' ),
+ 'all_items' => __( 'All Jobs', 'jobswp' ),
+ 'view_item' => __( 'View Job', 'jobswp' ),
+ 'add_new_item' => __( 'Add New Job', 'jobswp' ),
+ 'add_new' => __( 'New Job', 'jobswp' ),
+ 'edit_item' => __( 'Edit Job', 'jobswp' ),
+ 'update_item' => __( 'Update Job', 'jobswp' ),
+ 'search_items' => __( 'Search jobs', 'jobswp' ),
+ 'not_found' => __( 'No jobs found', 'jobswp' ),
+ 'not_found_in_trash' => __( 'No jobs found in Trash', 'jobswp' ),
+ );
+ $args = array(
+ 'label' => __( 'job', 'jobswp' ),
+ 'description' => __( 'Job information pages', 'jobswp' ),
+ 'labels' => $labels,
+ 'supports' => array( 'title', 'editor', 'revisions', 'custom-fields', ),
+ 'taxonomies' => array( 'job_category' ),
+ 'hierarchical' => false,
+ 'public' => true,
+ 'show_ui' => true,
+ 'show_in_menu' => true,
+ 'show_in_nav_menus' => true,
+ 'show_in_admin_bar' => true,
+ 'menu_position' => 5,
+// 'menu_icon' => 'jobs.png',
+ 'can_export' => true,
+ 'has_archive' => true,
+ 'exclude_from_search' => false,
+ 'publicly_queryable' => true,
+ 'capability_type' => 'page',
+ );
+ register_post_type( 'job', $args );
+ }
+
+ /**
+ * Registers the custom post statuses.
+ */
+ function register_post_status() {
+ // Status of 'closed' indicates a job that was unpublished from the site.
+ register_post_status( 'closed', array(
+ 'label' => __( 'Closed', 'jobswp' ),
+ 'public' => false,
+ 'exclude_from_search' => true,
+ 'show_in_admin_all_list' => false,
+ 'show_in_admin_status_list' => true,
+ 'label_count' => _n_noop( 'Closed <span class="count">(%s)</span>', 'Closed <span class="count">(%s)</span>', 'jobswp' ),
+ ) );
+
+ // Status of 'pruned' indicates a job automatically unpublished from the site after its
+ // allotted listing availability had expired.
+ register_post_status( 'pruned', array(
+ 'label' => __( 'Pruned', 'jobswp' ),
+ 'public' => false,
+ 'exclude_from_search' => true,
+ 'show_in_admin_all_list' => false,
+ 'show_in_admin_status_list' => true,
+ 'label_count' => _n_noop( 'Pruned <span class="count">(%s)</span>', 'Pruned <span class="count">(%s)</span>', 'jobswp' ),
+ ) );
+ }
+
+ /**
+ * Registers the custom taxonomy.
+ */
+ function register_taxonomy() {
+ $labels = array(
+ 'name' => _x( 'Job Categories', 'Taxonomy General Name', 'jobswp' ),
+ 'singular_name' => _x( 'Job Category', 'Taxonomy Singular Name', 'jobswp' ),
+ 'menu_name' => __( 'Job Category', 'jobswp' ),
+ 'all_items' => __( 'All Job Categories', 'jobswp' ),
+ 'parent_item' => __( 'Parent Job Category', 'jobswp' ),
+ 'parent_item_colon' => __( 'Parent Job Category:', 'jobswp' ),
+ 'new_item_name' => __( 'New Job Category Name', 'jobswp' ),
+ 'add_new_item' => __( 'Add New Job Category', 'jobswp' ),
+ 'edit_item' => __( 'Edit Job Category', 'jobswp' ),
+ 'update_item' => __( 'Update Category', 'jobswp' ),
+ 'separate_items_with_commas' => __( 'Separate job categories with commas', 'jobswp' ),
+ 'search_items' => __( 'Search job categories', 'jobswp' ),
+ 'add_or_remove_items' => __( 'Add or remove job categories', 'jobswp' ),
+ 'choose_from_most_used' => __( 'Choose from the most used job categories', 'jobswp' ),
+ );
+ $args = array(
+ 'labels' => $labels,
+ 'hierarchical' => false,
+ 'public' => true,
+ 'show_ui' => true,
+ 'show_admin_column' => true,
+ 'show_in_nav_menus' => true,
+ 'show_tagcloud' => true,
+ );
+ register_taxonomy( 'job_category', 'job', $args );
+ }
+
+ /**
+ * Outputs admin notice on job post type listing admin page if the jobposter
+ * user account does not exist.
+ */
+ function alert_if_no_jobposter() {
+ global $pagenow;
+
+ if ( 'edit.php' != $pagenow || ! isset( $_GET['post_type'] ) || 'job' != $_GET['post_type'] )
+ return;
+
+ $jobposter_username = apply_filters( 'jobswp_jobposter_username', 'jobposter' );
+ if ( $user = get_user_by( 'login', $jobposter_username ) )
+ return;
+
+ echo '<div class="error"><p>';
+ printf( __( 'ERROR: The username configured for posting jobs — %s — does not exist.', 'jobswp' ), $jobposter_username );
+ echo '</p></div>';
+ }
+
+ /**
+ * Outputs button to close a job on the post edit page.
+ */
+ function post_submitbox_start() {
+ global $post;
+
+ // Only show the close button if viewing an existing job post and
+ // the user has the ability to delete it.
+ if ( ! $this->can_job_be_closed( $post ) )
+ return;
+
+ $post_type_object = get_post_type_object( $post->post_type );
+ if ( ! $post_type_object )
+ return;
+
+ echo $this->_get_close_link( $post, 'button button-large alignright' );
+ }
+
+ /**
+ * Returns the markup for the admin link to close a given post.
+ *
+ * @param WP_Post $post The post.
+ * @param string $class Space-separated list of CSS classes to add to the markup link.
+ * @return string
+ */
+ private function _get_close_link( $post, $class = '' ) {
+ $post_type_object = get_post_type_object( $post->post_type );
+
+ $action = 'close-job';
+ $close_link = add_query_arg( 'action', $action, admin_url( sprintf( $post_type_object->_edit_link, $post->ID ) ) );
+ $close_link = wp_nonce_url( $close_link, "$action-post_{$post->ID}" );
+
+ $link = '<a href="' . $close_link . '"';
+ if ( $class )
+ $link .= ' class="' . esc_attr( $class ) . '"';
+ $link .= ' title="' . esc_attr__( 'Close this job', 'jobswp' ) . '">';
+ $link .= __( 'Close', 'jobswp' );
+ $link .= '</a>';
+
+ return $link;
+ }
+
+ /**
+ * Determines if a job is in a state that permits closure and that the current_user
+ * is capable of doing so.
+ *
+ * @param WP_Post The post.
+ * @return boolean True == the job can be closed
+ */
+ function can_job_be_closed( $post ) {
+ // The post must exist
+ if ( ! $post )
+ return false;
+
+ // The post must be published
+ if ( 'publish' != $post->post_status )
+ return false;
+
+ $post_type = $post->post_type;
+
+ // The post must be of the 'job' post_type
+ if ( 'job' != $post_type )
+ return false;
+
+ // The post_type object must instantiate
+ $post_type_object = get_post_type_object( $post_type );
+ if ( ! $post_type_object )
+ return false;
+
+ // The user must have the capability to delete such posts
+ return current_user_can( $post_type_object->cap->delete_posts, $post->ID );
+ }
+
+ /**
+ * Handles admin request to close a job.
+ *
+ * Performs all necessary checks before calling close_job().
+ */
+ function handle_close_job() {
+ $post_id = isset( $_GET['post'] ) ? absint( $_GET['post'] ) : null;
+
+ if ( ! $post_id )
+ wp_die( __( 'No job specified to close.', 'jobswp' ) );
+
+ check_admin_referer( 'close-job-post_' . $post_id );
+
+ $post = get_post( $post_id );
+
+ if ( ! $post )
+ wp_die( __( 'The job you are trying to close no longer exists.', 'jobswp' ) );
+
+ $post_type = $post->post_type;
+ $post_type_object = get_post_type_object( $post_type );
+
+ if ( ! $post_type_object )
+ wp_die( __( 'Unknown post type.' ) );
+
+ if ( ! current_user_can( 'delete_post', $post_id ) )
+ wp_die( __( 'You are not allowed to close this job.', 'jobswp' ) );
+
+ if ( $user_id = wp_check_post_lock( $post_id ) ) {
+ $user = get_userdata( $user_id );
+ wp_die( sprintf( __( 'You cannot close this job. %s is currently editing.', 'jobswp' ), $user->display_name ) );
+ }
+
+ if ( ! $this->close_job( $post ) )
+ wp_die( __( 'Error in closing job.', 'jobswp' ) );
+
+ // Redirect back to jobs listing
+ $sendback = wp_get_referer();
+ if ( ! $sendback || strpos( $sendback, 'post.php' ) !== false ) {
+ $sendback = admin_url( 'edit.php' );
+ $sendback .= '?post_type=' . $post_type;
+ } else {
+ $sendback = remove_query_arg( array( 'close-job', 'closed-job', 'ids'), $sendback );
+ }
+
+ wp_redirect( add_query_arg( array( 'closed-job' => 1, 'ids' => $post_id ), $sendback ) );
+ exit();
+ }
+
+ /**
+ * Closes a job.
+ *
+ * Presumes all checks have been performed.
+ */
+ private function close_job( $post ) {
+ $post->post_status = 'closed';
+ return wp_update_post( $post );
+ }
+
+ /**
+ * Outputs admin notice when a job has been successfully closed.
+ */
+ function job_closure_success() {
+ global $pagenow;
+
+ if ( 'edit.php' != $pagenow || ! isset( $_GET['closed-job'] ) || '1' != $_GET['closed-job'] )
+ return;
+
+ echo '<div class="updated"><p>';
+ _e( 'Job closed.', 'jobswp' );
+ echo '</p></div>';
+ }
+
+ /**
+ * Adds a 'Close' link to post_row_actions for appropriate jobs in admin listing.
+ *
+ * @param array $actions Existing post row actions
+ * @param WP_Post The post
+ * @return array
+ */
+ function post_row_actions( $actions, $post ) {
+ if ( $this->can_job_be_closed( $post ) )
+ $actions['close'] = $this->_get_close_link( $post );
+
+ return $actions;
+ }
+
+ /**
+ * Replaces all malformed attempts at "WordPress" with "WordPress".
+ *
+ * This is a bit broad-stroked for general use, but should be sufficient for job postings.
+ *
+ * @param string $text Text to process for malformed "WordPress" usage
+ * @return string The fixed text
+ */
+ function WordPress_dangit( $text ) {
+ return str_replace(
+ array( 'Wordpress', 'wordpress', 'wordPress', 'word press', 'Word press', 'word Press', 'Word Press' ),
+ 'WordPress',
+ $text
+ );
+ return $text;
+ }
+
+ /**
+ * Inserts the post-a-job form into the body of the post-a-job page.
+ *
+ * @param string $content Existing page content.
+ * @return string The content appended with the post-a-job form
+ */
+ function add_post_a_job_form( $content ) {
+ if ( ! $this->skip_content && is_page( 'post-a-job' ) ) {
+ $this->skip_content = true;
+ if ( $this->success ) {
+ $content .= get_template_part( 'content', 'post-job-success' );
+ $GLOBALS['post'] = get_post( $this->success );
+ setup_postdata( $GLOBALS['post'] );
+ }
+ $template = $this->success ? 'single' : 'post-job';
+ $this->success = false;
+ $content .= get_template_part( 'content', $template );
+ }
+ return $content;
+ }
+
+ /**
+ * Saves a job posting submission, which is coming from the front-end by an
+ * unverified visitor.
+ */
+ function save_job() {
+ if ( isset( $_POST['postjob'] ) && 1 == $_POST['postjob'] ) {
+ check_admin_referer( 'jobswppostjob' );
+ $has_errors = false;
+ $this->success = false;
+
+ // Verify all required fields have values.
+ foreach ( $this->required_fields as $field ) {
+ if ( ! isset( $_POST[ $field ] ) || empty( $_POST[ $field ] ) ) {
+ $has_errors = true;
+ break;
+ }
+ }
+ // Validate syntax of certain fields
+ if ( ! $has_errors ) :
+ if ( ! is_email( $_POST['email'] ) ) {
+ $has_errors = __( 'The provided "Email Address" is not a proper email address.', 'jobswp' );
+ unset( $_POST['email'] );
+ } elseif ( 'email' == $_POST['howtoapply_method'] && ! is_email( $_POST['howtoapply'] ) ) {
+ $has_errors = __( 'The provided "How to Apply" email address is not a proper email address.', 'jobswp' );
+ unset( $_POST['howtoapply'] );
+ }
+ endif;
+
+ if ( $has_errors )
+ $_POST['errors'] = $has_errors;
+ elseif ( ! isset( $_POST['verify'] ) || 1 != $_POST['verify'] )
+ $_POST['verify'] = true;
+ else
+ $this->success = true;
+
+ // If everything checks out, create the job
+ if ( $this->success ) {
+
+ $job_id = $this->create_job();
+
+ if ( is_wp_error( $job_id ) ) {
+ $_POST['errors'] = $job_id->get_error_message();
+ $this->success = false;
+ } else {
+ $this->success = $job_id;
+ }
+ }
+
+ }
+ }
+
+ /**
+ * Creates job based on POSTed data.
+ *
+ * Should only get called via save_job() since that function contains necessary
+ * user capability and data validation and verification checks.
+ *
+ * @return int|WP_Error The new job's ID or a WP_Error
+ */
+ private function create_job() {
+ $jobposter_username = apply_filters( 'jobswp_jobposter_username', 'jobposter' );
+ if ( ! $user = get_user_by( 'login', $jobposter_username ) )
+ return new WP_Error( 'jobswp_missing_user', __( 'The username configured for posting jobs does not exist.', 'jobswp' ) );
+
+ $args = array(
+ 'post_author' => $user->ID,
+ 'post_content' => $_POST['job_description'],
+ 'post_status' => 'draft',
+ 'post_title' => $_POST['job_title'],
+ 'post_type' => 'job',
+ );
+
+ // Filter job posting content as if a comment, not a post
+ remove_filter( 'content_save_pre', 'wp_filter_post_kses' );
+ add_filter ( 'content_save_pre', 'wp_filter_kses' );
+
+ $job_id = wp_insert_post( $args );
+
+ // Save post meta
+ if ( $job_id ) {
+
+ // Save job_category. Make sure it's one that is actually defined.
+ $cats = wp_list_pluck( Jobs_Dot_WP::get_job_categories(), 'slug' );
+ if ( in_array( $_POST['category'], $cats ) )
+ wp_set_object_terms( $job_id, array( $_POST['category'] ), 'job_category', false );
+
+ // Save each meta field
+ foreach( $this->meta_fields as $field ) {
+ if ( ! isset( $_POST[ $field ] ) || ! $_POST[ $field ] )
+ continue;
+
+ // Massage and sanitize the field value depending on field
+ $val = $this->validate_job_field( $field, $_POST[ $field ], $_POST );
+
+ add_post_meta( $job_id, $field, $val );
+ }
+ return $job_id;
+ }
+ }
+
+ /**
+ * Schedules job pruning if it isn't already scheduled.
+ *
+ * Jobs are scheduled to be pruned daily.
+ */
+ private function schedule_job_pruning() {
+ if ( ! wp_next_scheduled( 'jobswp_scheduled_job_pruning' ) && ! defined( 'WP_INSTALLING' ) )
+ wp_schedule_event( time(), 'hourly', 'jobswp_scheduled_job_pruning' );
+ }
+
+ /**
+ * Prunes old jobs.
+ */
+ function scheduled_job_pruning() {
+ global $wpdb;
+
+ $wpdb->query( $wpdb->prepare(
+ "UPDATE {$wpdb->prefix}posts
+ SET post_status = 'pruned'
+ WHERE DateDiff(NOW(), post_date) > %d AND post_type = 'job' AND post_status = 'publish'",
+ $this->days_until_pruning
+ ) );
+ }
+
+ /**
+ * Unschedules job pruning cron.
+ */
+ static function unschedule_job_pruning() {
+ wp_clear_scheduled_hook( 'jobswp_scheduled_job_pruning' );
+ }
+
+ /**
+ * Sanitizes job meta field data, sometimes based on context.
+ *
+ * Currently:
+ * for 'email' : sanitizes the value as an email
+ * for 'howtoapply' : depending on 'howtoapply_method', sanitizes the value as
+ * email or URL
+ *
+ * @param string $field The field name
+ * @param string $value The field value
+ * @param array $extra_data Associated data to provide context for a field
+ * @return string
+ */
+ function validate_job_field( $field, $value, $extra_data = array() ) {
+ switch ( $field ) {
+ case 'email':
+ $value = sanitize_email( $value );
+ break;
+ case 'howtoapply':
+ if ( isset( $extra_data['howtoapply_method'] ) ) {
+ if ( 'email' == $extra_data['howtoapply_method'] )
+ $value = sanitize_email( $value );
+ elseif ( 'web' == $extra_data['howtoapply_method'] )
+ $value = esc_url_raw( $value );
+ }
+ }
+
+ return strip_tags( $value );
+ }
+
+ /**
+ * Returns the array of default values for obtaining the job_category taxonomy
+ * when using core category functions.
+ *
+ * @return array
+ */
+ private static function _job_category_defaults() {
+ return array(
+ 'order' => 'ASC',
+ 'orderby' => 'name',
+ 'hide_empty' => false,
+ 'taxonomy' => 'job_category',
+ 'title_li' => '',
+ 'walker' => self::$walker,
+ );
+ }
+
+ /**
+ * Returns a list of existing job categories.
+ *
+ * Uses get_categories().
+ *
+ * @param array $args Additional arguments to pass along.
+ * @return array
+ */
+ public static function get_job_categories( $args = array() ) {
+ $defaults = self::_job_category_defaults();
+ $args = wp_parse_args( $args, $defaults );
+ return get_categories( $args );
+ }
+
+ /**
+ * Lists existing job categories.
+ *
+ * Uses wp_list_categories().
+ *
+ * @param array $args Additional arguments to pass along.
+ * @return array
+ */
+ public static function list_job_categories( $args = array() ) {
+ $defaults = self::_job_category_defaults();
+ $args = wp_parse_args( $args, $defaults );
+ return wp_list_categories( $args );
+ }
+
+ /**
+ * Returns the jobs in a given job category.
+ *
+ * @param int|string $category The category ID or slug.
+ * @param array $args Additional arguments
+ * @return array
+ */
+ public static function get_jobs_for_category( $category, $args = array() ) {
+ if ( is_numeric( $category ) )
+ $category = get_term_by( 'id', $category, 'job_category' );
+ elseif ( is_string( $category ) )
+ $category = get_term( $category, 'job_category' );
+
+ if ( ! is_object( $category ) )
+ return array();
+
+ $defaults = array(
+ 'orderby' => 'post_date',
+ 'order' => 'DESC',
+ 'posts_per_page' => 15,
+ 'post_type' => 'job',
+ 'post_status' => 'publish',
+ 'job_category' => $category->slug,
+ );
+ $args = wp_parse_args( $args, $defaults );
+
+ $q = new WP_Query( $args );
+
+ return $q->get_posts();
+ }
+}
+
+Jobs_Dot_WP::get_instance();
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswp404php"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/404.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/404.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/404.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+<?php
+/**
+ * The template for displaying 404 pages (Not Found).
+ *
+ * @package jobswp
+ */
+
+get_header(); ?>
+
+<?php get_sidebar(); ?>
+
+ <div id="primary" class="content-area grid_9">
+ <main id="main" class="site-main" role="main">
+
+ <section class="error-404 not-found">
+ <header class="page-header">
+ <h1 class="page-title"><?php _e( 'Oops! That page can’t be found.', 'jobswp' ); ?></h1>
+ </header><!-- .page-header -->
+
+ <div class="page-content">
+ <p><?php _e( 'It looks like nothing was found at this location. Maybe try using the search form above?', 'jobswp' ); ?></p>
+ </div><!-- .page-content -->
+ </section><!-- .error-404 -->
+
+ </main><!-- #main -->
+ </div><!-- #primary -->
+
+<?php get_footer(); ?>
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentcategoryphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-category.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-category.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-category.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+<div class="jobs-group">
+
+<?php
+ global $category;
+
+ $q = get_queried_object();
+ $category = get_term( $q->term_id, $q->taxonomy );
+
+ jobswp_archive_header(
+ '<div class="job-list-head grid_7 alpha"><h2 class="job-cat-item job-cat-item-' . esc_attr( $category->slug ) . '">',
+ '</h2></div>',
+ $category->count,
+ $category
+ );
+
+ get_template_part( 'content', 'list' );
+?>
+
+</div>
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontenthomephp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-home.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-home.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-home.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+<?php
+global $category;
+
+$job_categories = Jobs_Dot_WP::get_job_categories();
+
+if ( $job_categories ) :
+
+foreach ( $job_categories as $category ) {
+ $posts = Jobs_Dot_WP::get_jobs_for_category( $category );
+
+ //Display the name of the category, whether there are jobs or not
+ echo '<div class="jobs-group">';
+
+ jobswp_archive_header(
+ '<div class="job-list-head grid_7 alpha"><h2 class="job-cat-item job-cat-item-' . esc_attr( $category->slug ) . '">',
+ '</h2></div>',
+ $category->count,
+ $category
+ );
+
+ get_template_part( 'content', 'list' );
+
+ echo "</div>\n";
+}
+
+else : // Else no job categories defined.
+
+ echo '<div class="jobs-group">';
+ echo '<div class="job-list-head grid_7 alpha"><h2 class="job-cat-item">' . __( 'No job categories defined.', 'jobswp' ) . '</h2></div>';
+ echo "</div>\n";
+
+endif;
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentlistphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-list.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-list.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-list.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+<?php
+ $evenodd = 0;
+ if ( $posts ) {
+ global $post;
+
+ foreach ( $posts as $post ) {
+
+ $evenodd = abs( $evenodd - 1 );
+ echo '<div class="row row-'. $evenodd . '">';
+
+ echo '<div class="job-date grid_2 alpha">' . get_the_date( 'M j' ) . '</div>';
+ echo '<div class="job-title grid_4">';
+ echo '<a href="'; the_permalink(); echo '" rel="bookmark">'; the_title(); echo '</a></div>';
+ echo '<div class="job-type grid_1 alpha omega">';
+ echo jobswp_get_job_meta( get_the_ID(), 'jobtype' );
+ echo '</div>';
+ echo '<div class="job-location grid_2 omega">';
+ echo jobswp_get_job_meta( get_the_ID(), 'location' );
+ echo '</div>';
+
+ echo '<div class="clear"></div>';
+ echo '</div>';
+
+ } // End foreach
+ } // End if posts
+ else {
+ echo '<div class="row row-1">';
+ echo "<div class='no-job grid_9'>";
+ echo sprintf(
+ __( 'There are no jobs in this category. If you\'re hiring, you can <a href="%s">post a new job</a>.', 'jobswp' ),
+ '/post-a-job'
+ );
+ echo '</div>';
+ echo '</div>';
+ }
+ ?>
+ </ul>
+
+ <?php
+ if ( is_front_page() ) {
+ global $category;
+ echo '<p class="all-job-categories">';
+ if ( ! $category )
+ $category = array_pop( get_the_terms( get_the_ID(), 'job_category') );
+
+ $link = '';
+ $link .= '<a href="' . esc_attr( get_term_link( $category, 'job_category' ) ) . '" ';
+ $link .= 'title="'. esc_attr( sprintf( __( 'View all jobs filed under %s', 'jobswp' ), $category->name ) ) . '"';
+ $link .= '>';
+ $link .= 'Show all '.apply_filters( 'list_terms', $category->name, $category ) . ' jobs »</a>';
+ echo $link;
+ echo '</p>';
+ } else {
+ jobswp_content_nav( 'all-job-categories' );
+ }
+ ?>
+
+ <div class="clear"></div>
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentpagephp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-page.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-page.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-page.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+<?php
+/**
+ * The template used for displaying page content in page.php
+ *
+ * @package jobswp
+ */
+?>
+
+<div class="entry-article">
+
+<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
+ <header class="entry-header">
+ <h1 class="entry-title"><?php the_title(); ?></h1>
+ </header><!-- .entry-header -->
+
+ <div class="entry-content">
+ <?php the_content(); ?>
+ <?php
+ wp_link_pages( array(
+ 'before' => '<div class="page-links">' . __( 'Pages:', 'jobswp' ),
+ 'after' => '</div>',
+ ) );
+ ?>
+
+ <?php edit_post_link( __( 'Edit', 'jobswp' ), '<footer class="entry-meta grid_9"><span class="edit-link">', '</span></footer>' ); ?>
+ </div><!-- .entry-content -->
+</article><!-- #post-## -->
+
+</div>
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentpostjobsuccessphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job-success.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job-success.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job-success.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+<div class="notice notice-success">
+ <h2><?php _e( 'Thank you for submitting your job posting!', 'jobswp' ); ?></h2>
+
+ <p><?php echo sprintf( __( 'Your job posting will be moderated in the next 24 hours to ensure it meets the criteria listed in our <a href="%s">FAQ</a>. After approval, your posting will stay on the job board for a total of 21 days. If you would like to remove the posting or modify it before it expires, please contact us using our <a href="%s">feedback form</a>. Be sure to specify the email address you supplied in your job posting.',
+ 'jobswp' ),
+ '/faq/',
+ '/feedback/' ); ?></p>
+
+ <p><?php _e( "Below you'll find a preview of your job posting.", 'jobswp' ); ?></p>
+</div>
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentpostjobphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-post-job.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,126 @@
</span><ins>+<div class="items-required">* <?php _e( 'Items are required.', 'jobswp' ); ?></div>
+
+<?php if ( isset( $_POST['errors'] ) ) : ?>
+
+ <div class="notice notice-error">
+ <?php if ( is_string( $_POST['errors'] ) )
+ echo sprintf( __( '<strong>ERROR:</strong> %s', 'jobswp' ), esc_html( $_POST['errors'] ) );
+ else
+ _e( '<strong>ERROR:</strong> One or more required fields are missing a value.', 'jobswp' );
+ ?>
+ </div>
+
+<?php elseif ( isset( $_POST['verify'] ) ) : ?>
+
+ <div class="notice notice-info">
+ <span>!</span><span><?php _e( 'Please review the data you submitted for accuracy. Make any necessary corrections, then re-submit this form.', 'jobswp' ); ?></span>
+ </div>
+
+<?php endif; ?>
+
+<form class="post-job" method="post" action="">
+
+<div class="post-job-contact-info grid_5 alpha omega">
+ <h3 class="post-field-section-header"><?php _e( 'Job Poster Contact Information', 'jobswp' ); ?></h3>
+ <div class="post-field-section-subheader"><?php _e( '(this information is not publicly displayed)', 'jobswp' ); ?></div>
+
+ <?php jobswp_text_field( 'first_name', __( 'First Name', 'jobswp' ), true ); ?>
+
+ <?php jobswp_text_field( 'last_name', __( 'Last Name', 'jobswp' ), true ); ?>
+
+ <?php jobswp_text_field( 'email', __( 'Email Address', 'jobswp' ), true, 'email' ); ?>
+
+ <?php jobswp_text_field( 'phone', __( 'Phone Number', 'jobswp' ), true, 'tel' ); ?>
+
+</div>
+
+<div class="post-job-company-info grid_4 alpha omega">
+
+ <h3 class="post-field-section-header"><?php _e( 'Company Information', 'jobswp' ); ?></h3>
+ <div class="post-field-section-subheader"><?php _e( '(publicly displayed)', 'jobswp' ); ?></div>
+
+ <?php jobswp_text_field( 'company', __( 'Company Name', 'jobswp' ), true ); ?>
+
+ <?php jobswp_text_field( 'location', __( 'Location', 'jobswp' ) ); ?>
+
+ <div class="post-job-input">
+ <label for="howtoapply"><?php _e( 'How to Apply', 'jobswp' ); ?>* <span><?php _e( '(also specify)', 'jobswp' ); ?></span></label>
+ <div class="howtoapply-inputs">
+ <select name="howtoapply_method" class="<?php echo jobswp_required_field_classes( 'howtoapply_method' ); ?>" required>
+ <option value="" selected="selected" disabled="disabled"></option>
+ <option value="email" <?php echo jobswp_field_value( 'howtoapply_method', 'email' ); ?>><?php _e( 'Email Address', 'jobswp' ); ?></option>
+ <option value="phone" <?php echo jobswp_field_value( 'howtoapply_method', 'phone' ); ?>><?php _e( 'Phone Number', 'jobswp' ); ?></option>
+ <option value="web" <?php echo jobswp_field_value( 'howtoapply_method', 'web' ); ?>><?php _e( 'Online Form', 'jobswp' ); ?></option>
+ </select> :
+ <input type="text" name="howtoapply" class="<?php echo jobswp_required_field_classes( 'howtoapply' ); ?>" <?php echo jobswp_field_value( 'howtoapply' ); ?> />
+ </div>
+ </div>
+
+</div>
+
+<div class="clear"></div>
+
+<div class="post-job-job-info">
+ <h3 class="post-field-section-header"><?php _e( 'Job Details', 'jobswp' ); ?></h3>
+
+ <div class="grid_5 alpha omega">
+
+ <?php jobswp_text_field( 'job_title', __( 'Job Title', 'jobswp' ), true ); ?>
+
+ <?php jobswp_text_field( 'budget', __( 'Budget', 'jobswp' ) ); ?>
+
+ </div>
+
+ <div class="grid_3 alpha omega">
+
+ <div class="post-job-input">
+ <label for="category"><?php _e( 'Category', 'jobswp' ); ?>*</label>
+ <select name="category" class="<?php echo jobswp_required_field_classes( 'category' ); ?>" required>
+ <option value="" selected="selected" disabled="disabled"></option>
+ <?php foreach ( Jobs_Dot_WP::get_job_categories() as $cat ) : ?>
+ <option value="<?php esc_attr_e( $cat->slug ); ?>" <?php echo jobswp_field_value( 'category', esc_attr( $cat->slug ) ); ?>><?php echo $cat->name; ?></option>
+ <?php endforeach; ?>
+ </select>
+ </div>
+
+ <div class="post-job-input">
+ <label for="jobtype"><?php _e( 'Job Type' ); ?>*</label>
+ <select name="jobtype" class="<?php echo jobswp_required_field_classes( 'jobtype' ); ?>" required>
+ <option value="" selected="selected" disabled="disabled"></option>
+ <option value="ft" <?php echo jobswp_field_value( 'jobtype', 'ft' ); ?>><?php _e( 'Full Time', 'jobswp' ); ?></option>
+ <option value="pt" <?php echo jobswp_field_value( 'jobtype', 'pt' ); ?>><?php _e( 'Part Time', 'jobswp' ); ?></option>
+ <option value="ppt" <?php echo jobswp_field_value( 'jobtype', 'ppt' ); ?>><?php _e( 'Project', 'jobswp' ); ?></option>
+ </select>
+ </div>
+ </div>
+
+ <div class="clear"></div>
+
+ <div class="">
+
+ <div class="post-job-input">
+ <label for="job_title"><?php _e( 'Job Description' ); ?>*</label>
+ <textarea name="job_description" rows="10" class="<?php echo jobswp_required_field_classes( 'job_description' ); ?>"><?php echo jobswp_field_value( 'job_description' ); ?></textarea>
+ <p><?php echo sprintf( __( 'Line and paragraph breaks are automatic. <acronym title="Hypertext Markup Language">HTML</acronym> allowed: <code>%s</code>', 'jobswp' ), jobswp_allowed_tags() ); ?></p>
+ <p><?php _e( 'All job postings are moderated prior to appearing on the site.' ); ?></p>
+ </div>
+
+ </div>
+
+ <div class="clear"></div>
+
+ <input type="hidden" name="postjob" value="1" />
+ <?php wp_nonce_field( 'jobswppostjob' ); ?>
+ <?php if ( isset( $_POST['verify'] ) ) {
+ $button_label = __( 'Verify Job', 'jobswp' );
+ ?>
+ <input type="hidden" name="verify" value="1" />
+ <?php } else {
+ $button_label = __( 'Submit Job', 'jobswp' );
+ } ?>
+ <input class="submit-job" type="submit" name="submitjob" value="<?php echo esc_attr( $button_label ); ?>" />
+</div>
+
+</div>
+
+</form>
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentsearchphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-search.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-search.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-search.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+<div class="jobs-group">
+
+ <?php
+ jobswp_archive_header(
+ '<div class="job-list-head grid_7 alpha"><h2 class="search-header">' .
+ sprintf( __( 'Search Results for: %s', 'jobswp' ), '<span>' . get_search_query() . '</span>' ),
+ '</h2></div>',
+ 5
+ );
+
+ get_template_part( 'content', 'list' );
+
+?>
+
+</div>
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentsinglephp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-single.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-single.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content-single.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,68 @@
</span><ins>+<?php
+/**
+ * @package jobswp
+ */
+?>
+
+<div class="entry-article">
+
+ <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
+ <header class="entry-header">
+ <h1 class="entry-title"><?php the_title(); ?></h1>
+
+ <div class="entry-meta">
+ <?php jobswp_posted_on(); ?>
+ </div><!-- .entry-meta -->
+ </header><!-- .entry-header -->
+
+ <div class="clear"></div>
+
+ <div class="entry-main grid_6 alpha">
+
+ <div class="entry-content">
+ <?php the_content(); ?>
+ <?php
+ wp_link_pages( array(
+ 'before' => '<div class="page-links">' . __( 'Pages:', 'jobswp' ),
+ 'after' => '</div>',
+ ) );
+ ?>
+ </div><!-- .entry-content -->
+
+ <footer class="entry-meta grid_6">
+ <?php
+ // Don't show edit link when template is used to embed post in a page.
+ if ( ! is_page() )
+ edit_post_link( __( 'Edit', 'jobswp' ), '<span class="edit-link">', '</span>' );
+ ?>
+ </footer><!-- .entry-meta -->
+ </div>
+
+ <div class="job-meta grid_3 omega">
+ <?php
+ $fields = array(
+ 'company' => __( 'Company', 'jobswp' ),
+ 'jobtype' => __( 'Job Type', 'jobswp' ),
+ 'location' => __( 'Location', 'jobswp' ),
+ 'budget' => __( 'Budget', 'jobswp' ),
+ 'howtoapply' => __( 'How to Apply', 'jobswp' ),
+ );
+ foreach ( $fields as $fname => $flabel ) :
+ $val = jobswp_get_job_meta( get_the_ID(), $fname );
+ if ( $val ) :
+ ?>
+ <dl class="job-<?php echo $fname; ?>">
+ <dt><?php echo $flabel; ?></dt>
+ <dd><?php echo $val; ?></dd>
+ </dl>
+ <?php
+ endif;
+ endforeach;
+ ?>
+ </div>
+
+ <div class="clear"></div>
+
+ </article><!-- #post-## -->
+
+</div>
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcontentphp"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content.php (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content.php (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/content.php 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,63 @@
</span><ins>+<?php
+/**
+ * @package jobswp
+ */
+?>
+
+<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
+ <header class="entry-header">
+ <h1 class="entry-title"><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h1>
+
+ <?php if ( 'post' == get_post_type() ) : ?>
+ <div class="entry-meta">
+ <?php jobswp_posted_on(); ?>
+ </div><!-- .entry-meta -->
+ <?php endif; ?>
+ </header><!-- .entry-header -->
+
+ <?php if ( is_search() ) : // Only display Excerpts for Search ?>
+ <div class="entry-summary">
+ <?php the_excerpt(); ?>
+ </div><!-- .entry-summary -->
+ <?php else : ?>
+ <div class="entry-content">
+ <?php the_content( __( 'Continue reading <span class="meta-nav">→</span>', 'jobswp' ) ); ?>
+ <?php
+ wp_link_pages( array(
+ 'before' => '<div class="page-links">' . __( 'Pages:', 'jobswp' ),
+ 'after' => '</div>',
+ ) );
+ ?>
+ </div><!-- .entry-content -->
+ <?php endif; ?>
+
+ <footer class="entry-meta">
+ <?php if ( 'post' == get_post_type() ) : // Hide category and tag text for pages on Search ?>
+ <?php
+ /* translators: used between list items, there is a space after the comma */
+ $categories_list = get_the_category_list( __( ', ', 'jobswp' ) );
+ if ( $categories_list && jobswp_categorized_blog() ) :
+ ?>
+ <span class="cat-links">
+ <?php printf( __( 'Posted in %1$s', 'jobswp' ), $categories_list ); ?>
+ </span>
+ <?php endif; // End if categories ?>
+
+ <?php
+ /* translators: used between list items, there is a space after the comma */
+ $tags_list = get_the_tag_list( '', __( ', ', 'jobswp' ) );
+ if ( $tags_list ) :
+ ?>
+ <span class="tags-links">
+ <?php printf( __( 'Tagged %1$s', 'jobswp' ), $tags_list ); ?>
+ </span>
+ <?php endif; // End if $tags_list ?>
+ <?php endif; // End if 'post' == get_post_type() ?>
+
+ <?php if ( ! post_password_required() && ( comments_open() || '0' != get_comments_number() ) ) : ?>
+ <span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'jobswp' ), __( '1 Comment', 'jobswp' ), __( '% Comments', 'jobswp' ) ); ?></span>
+ <?php endif; ?>
+
+ <?php edit_post_link( __( 'Edit', 'jobswp' ), '<span class="edit-link">', '</span>' ); ?>
+ </footer><!-- .entry-meta -->
+</article><!-- #post-## -->
</ins></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996READMEmd"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/README.md (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/README.md (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/README.md 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+# 996 Grid | Responsive Design Framework
+
+A fixed-width grid framework made up of 12 even columns, which adapts the content automatically to display nicely on various screen sizes from desktop to mobile. At the largest size, the content is allowed a 970px-wide area which can be divided nicely into equal columns of two, three, four, or six.
+
+See http://996grid.com/ for more information.
+
+## What's Included
+
+- **index.html** | Sample markup with the recommended head tags and scripts.
+- **grid.css** | The core of the grid system. Includes comments to explain each section.
+- **normalize.css** | CSS normalizations and common bug fixes.
+- **base.css** | HTML5 Boilerplate for consistent design across browsers.
+- **style.css** | Stylesheet for user styles. Includes a variety of useful media queries.
+- **modernizr.js** | Bring older browsers up to speed.
+- **996\_grid.ai, 996\_grid.psd** | PSD and AI templates included to aid in design.
+- **996_sketch.pdf** | PDF containing grid layout to use as sketch paper.
+
+## Credits
+
+Developed by Josh Cope / [@computerwolf](http://twitter.com/computerwolf/). Licensed under [GPL](http://opensource.org/licenses/gpl-3.0.html) & [MIT](http://opensource.org/licenses/MIT).
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996basecss"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/base.css (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/base.css (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/base.css 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,295 @@
</span><ins>+/*
+Responsive 996px grid system ~ Base CSS.
+
+Uses the HTML5 Boilerplate by Paul Irish with a few tweaks
+html5boilerplate.com
+
+*/
+
+
+/* ==========================================================================
+ Base styles: opinionated defaults
+ ========================================================================== */
+
+html,
+button,
+input,
+select,
+textarea {
+ color: #222;
+}
+
+body {
+ font-size: 1em;
+ line-height: 1.4;
+}
+
+/*
+ * Remove text-shadow in selection highlight: h5bp.com/i
+ * These selection declarations have to be separate.
+ * Customize the background color to match your design.
+ */
+
+::-moz-selection {
+ background: #b3d4fc;
+ text-shadow: none;
+}
+
+::selection {
+ background: #b3d4fc;
+ text-shadow: none;
+}
+
+/*
+ * A better looking default horizontal rule
+ */
+
+hr {
+ display: block;
+ height: 1px;
+ border: 0;
+ border-top: 1px solid #ccc;
+ margin: 1em 0;
+ padding: 0;
+}
+
+/*
+ * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
+ */
+
+img {
+ vertical-align: middle;
+}
+
+/*
+ * Remove default fieldset styles.
+ */
+
+fieldset {
+ border: 0;
+ margin: 0;
+ padding: 0;
+}
+
+/*
+ * Allow only vertical resizing of textareas.
+ */
+
+textarea {
+ resize: vertical;
+}
+
+/* ==========================================================================
+ Chrome Frame prompt
+ ========================================================================== */
+
+.chromeframe {
+ margin: 0.2em 0;
+ background: #ccc;
+ color: #000;
+ padding: 0.2em 0;
+}
+
+/* ==========================================================================
+ Helper classes
+ ========================================================================== */
+
+/*
+ * Image replacement
+ */
+
+.ir {
+ background-color: transparent;
+ border: 0;
+ overflow: hidden;
+ /* IE 6/7 fallback */
+ *text-indent: -9999px;
+}
+
+.ir:before {
+ content: "";
+ display: block;
+ width: 0;
+ height: 150%;
+}
+
+/*
+ * Hide from both screenreaders and browsers: h5bp.com/u
+ */
+
+.hidden {
+ display: none !important;
+ visibility: hidden;
+}
+
+/*
+ * Hide only visually, but have it available for screenreaders: h5bp.com/v
+ */
+
+.visuallyhidden {
+ border: 0;
+ clip: rect(0 0 0 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px;
+}
+
+/*
+ * Extends the .visuallyhidden class to allow the element to be focusable
+ * when navigated to via the keyboard: h5bp.com/p
+ */
+
+.visuallyhidden.focusable:active,
+.visuallyhidden.focusable:focus {
+ clip: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ position: static;
+ width: auto;
+}
+
+/*
+ * Hide visually and from screenreaders, but maintain layout
+ */
+
+.invisible {
+ visibility: hidden;
+}
+
+/*
+ * Clearfix: contain floats
+ *
+ * For modern browsers
+ * 1. The space content is one way to avoid an Opera bug when the
+ * `contenteditable` attribute is included anywhere else in the document.
+ * Otherwise it causes space to appear at the top and bottom of elements
+ * that receive the `clearfix` class.
+ * 2. The use of `table` rather than `block` is only necessary if using
+ * `:before` to contain the top-margins of child elements.
+ */
+
+.clearfix:before,
+.clearfix:after {
+ content: " "; /* 1 */
+ display: table; /* 2 */
+}
+
+.clearfix:after {
+ clear: both;
+}
+
+/*
+ * For IE 6/7 only
+ * Include this rule to trigger hasLayout and contain floats.
+ */
+
+.clearfix {
+ *zoom: 1;
+}
+
+
+/*
+ * Clear after each row
+ */
+
+.clear {
+ clear: both;
+ display: block;
+ overflow: hidden;
+ visibility: hidden;
+ width: 0;
+ height: 0;
+}
+
+/* ==========================================================================
+ EXAMPLE Media Queries for Responsive Design.
+ Theses examples override the primary ('mobile first') styles.
+ Modify as content requires.
+ ========================================================================== */
+
+@media only screen and (min-width: 35em) {
+ /* Style adjustments for viewports that meet the condition */
+}
+
+@media print,
+ (-o-min-device-pixel-ratio: 5/4),
+ (-webkit-min-device-pixel-ratio: 1.25),
+ (min-resolution: 120dpi) {
+ /* Style adjustments for high resolution devices */
+}
+
+/* ==========================================================================
+ Print styles.
+ Inlined to avoid required HTTP connection: h5bp.com/r
+ ========================================================================== */
+
+@media print {
+ * {
+ background: transparent !important;
+ color: #000 !important; /* Black prints faster: h5bp.com/s */
+ box-shadow: none !important;
+ text-shadow: none !important;
+ }
+
+ a,
+ a:visited {
+ text-decoration: underline;
+ }
+
+ a[href]:after {
+ content: " (" attr(href) ")";
+ }
+
+ abbr[title]:after {
+ content: " (" attr(title) ")";
+ }
+
+ /*
+ * Don't show links for images, or javascript/internal links
+ */
+
+ .ir a:after,
+ a[href^="javascript:"]:after,
+ a[href^="#"]:after {
+ content: "";
+ }
+
+ pre,
+ blockquote {
+ border: 1px solid #999;
+ page-break-inside: avoid;
+ }
+
+ thead {
+ display: table-header-group; /* h5bp.com/t */
+ }
+
+ tr,
+ img {
+ page-break-inside: avoid;
+ }
+
+ img {
+ max-width: 100% !important;
+ }
+
+ @page {
+ margin: 0.5cm;
+ }
+
+ p,
+ h2,
+ h3 {
+ orphans: 3;
+ widows: 3;
+ }
+
+ h2,
+ h3 {
+ page-break-after: avoid;
+ }
+}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codedemofiles12_colpng"></a>
<div class="binary"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Index: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col.png
</span><span class="cx">===================================================================
</span><del>--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col.png 2013-09-24 16:24:09 UTC (rev 87)
</del><ins>+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col.png 2013-10-02 08:41:51 UTC (rev 88)
</ins><span class="cx">Property changes on: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<ins>+application/octet-stream
</ins><span class="cx">\ No newline at end of property
</span><a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codedemofiles12_col_768png"></a>
<div class="binary"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col_768.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Index: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col_768.png
</span><span class="cx">===================================================================
</span><del>--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col_768.png 2013-09-24 16:24:09 UTC (rev 87)
</del><ins>+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col_768.png 2013-10-02 08:41:51 UTC (rev 88)
</ins><span class="cx">Property changes on: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/demo-files/12_col_768.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<ins>+application/octet-stream
</ins><span class="cx">\ No newline at end of property
</span><a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codeindexhtml"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/index.html (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/index.html (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/index.html 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,263 @@
</span><ins>+<!doctype html>
+<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
+<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]-->
+<!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]-->
+<!--[if gt IE 8]><!--><html class="no-js" lang="en"> <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+
+ <title>Responsive 996 Grid System</title>
+ <meta name="description" content="">
+ <meta name="author" content="">
+
+ <meta name="viewport" content="width=device-width">
+
+ <link rel="stylesheet" href="css/normalize.css">
+ <link rel="stylesheet" href="css/base.css">
+ <link rel="stylesheet" href="css/grid.css">
+ <link rel="stylesheet" href="css/style.css">
+ <link rel="stylesheet" href="css/demo.css">
+
+ <script src="js/modernizr-2.6.2.min.js"></script>
+
+</head>
+<body>
+
+<h1 style="color:#fff">
+ Responsive 996 Grid System
+</h1>
+</div>
+<div class="container clearfix">
+ <div class="grid_12">
+ <p>
+ 970
+ </p>
+ </div>
+ <!-- end .grid_12 -->
+ <div class="clear"></div>
+ <div class="grid_1">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1 -->
+ <div class="grid_11">
+ <p>
+ 887
+ </p>
+ </div>
+ <!-- end .grid_11 -->
+ <div class="clear"></div>
+ <div class="grid_2">
+ <p>
+ 140
+ </p>
+ </div>
+ <!-- end .grid_2 -->
+ <div class="grid_10">
+ <p>
+ 804
+ </p>
+ </div>
+ <!-- end .grid_10 -->
+ <div class="clear"></div>
+ <div class="grid_3">
+ <p>
+ 223
+ </p>
+ </div>
+ <!-- end .grid_3 -->
+ <div class="grid_9">
+ <p>
+ 721
+ </p>
+ </div>
+ <!-- end .grid_9 -->
+ <div class="clear"></div>
+ <div class="grid_4">
+ <p>
+ 306
+ </p>
+ </div>
+ <!-- end .grid_4 -->
+ <div class="grid_8">
+ <p>
+ 638
+ </p>
+ </div>
+ <!-- end .grid_8 -->
+ <div class="clear"></div>
+ <div class="grid_5">
+ <p>
+ 389
+ </p>
+ </div>
+ <!-- end .grid_5 -->
+ <div class="grid_7">
+ <p>
+ 555
+ </p>
+ </div>
+ <!-- end .grid_7 -->
+ <div class="clear"></div>
+ <div class="grid_6">
+ <p>
+ 472
+ </p>
+ </div>
+ <!-- end .grid_6 -->
+ <div class="grid_6">
+ <p>
+ 472
+ </p>
+ </div>
+ <!-- end .grid_6 -->
+ <div class="clear"></div>
+ <div class="grid_1 suffix_11">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.suffix_11 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_1 suffix_10">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_1.suffix_10 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_2 suffix_9">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_2.suffix_9 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_3 suffix_8">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_3.suffix_8 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_4 suffix_7">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_4.suffix_7 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_5 suffix_6">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_5.suffix_6 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_6 suffix_5">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_6.suffix_5 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_7 suffix_4">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_7.suffix_4 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_8 suffix_3">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_8.suffix_3 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_9 suffix_2">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_9.suffix_2 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_10 suffix_1">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_10.suffix_1 -->
+ <div class="clear"></div>
+ <div class="grid_1 prefix_11">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.prefix_11 -->
+ <div class="clear"></div>
+ <div class="grid_6 push_6">
+ <div class="grid_1 alpha">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.alpha -->
+ <div class="grid_5 omega">
+ <p>
+ 389
+ </p>
+ </div>
+ <!-- end .grid_5.omega -->
+ <div class="clear"></div>
+ <div class="grid_3 alpha">
+ <p>
+ 223
+ </p>
+ </div>
+ <!-- end .grid_3.alpha -->
+ <div class="grid_3 omega">
+ <p>
+ 223
+ </p>
+ </div>
+ <!-- end .grid_3.omega -->
+ </div>
+ <!-- end .grid_6.push_6 -->
+ <div class="grid_6 pull_6">
+ <div class="grid_3 alpha">
+ <p>
+ 223
+ </p>
+ </div>
+ <!-- end .grid_3.alpha -->
+ <div class="grid_3 omega">
+ <p>
+ 223
+ </p>
+ </div>
+ <!-- end .grid_3.omega -->
+ <div class="clear"></div>
+ <div class="grid_1 alpha">
+ <p>
+ 57
+ </p>
+ </div>
+ <!-- end .grid_1.alpha -->
+ <div class="grid_5 omega">
+ <p>
+ 389
+ </p>
+ </div>
+ <!-- end .grid_5.omega -->
+ </div>
+ <!-- end .grid_6.pull_6 -->
+</div>
+<!-- end .container -->
+
+<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
+<script src="js/scripts.js"></script>
+</body>
+</html>
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996codejsscriptsjs"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/code/js/scripts.js ( => )</h4>
<pre class="diff"><span>
<span class="info">Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/demo.css
===================================================================
</span><del>--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/demo.css (rev 0)
</del><ins>+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/demo.css 2013-10-02 08:41:51 UTC (rev 88)
</ins><span class="lines">@@ -0,0 +1,63 @@
</span><ins>+body {
+ background: #123;
+ color: #333;
+ font-size: 11px;
+ height: auto;
+ padding-bottom: 20px;
+}
+
+a {
+ color: #fff;
+ text-decoration: none;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+h1 {
+ font-family: Georgia, serif;
+ font-weight: normal;
+ padding-top: 20px;
+ text-align: center;
+}
+
+h2 {
+ padding-top: 20px;
+ text-align: center;
+}
+
+p {
+ border: 1px solid #666;
+ overflow: hidden;
+ padding: 10px 0;
+ text-align: center;
+}
+
+.container {
+ background-color: #fff;
+ background-repeat: repeat-y;
+ margin-bottom: 20px;
+}
+
+.container {
+ background-image: url('../demo-files/12_col.png');
+}
+
+@media only screen and (min-width: 768px) and (max-width: 995px) {
+ .container {
+ background-image: url('../demo-files/12_col_768.png');
+ }
+}
+
+@media only screen and (max-width: 767px) {
+ .container {
+ background: #6afd7f;
+ }
+}
+
+@media only screen and (max-width: 479px) {
+ .container.demo {
+ background: #e16bfe;
+ }
+}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996gridcss"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/grid.css (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/grid.css (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/grid.css 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,332 @@
</span><ins>+/*
+Responsive 996px grid system ~ Grid CSS.
+Copyright 2013, Josh Cope
+
+12 Columns ~ Margin left: 13px ~ Margin right: 13px
+
+Based on the 960.gs grid system - http://960.gs/
+by Nathan Smith
+
+Licensed under GPL and MIT
+*/
+
+/* =============================================================================
+ Base 966px Grid
+ ========================================================================== */
+
+ body {min-width: 996px;}
+
+ /* Container */
+ .container {
+ margin-left: auto;
+ margin-right: auto;
+ width: 996px;
+ }
+
+ /* Global */
+ .grid_1,
+ .grid_2,
+ .grid_3,
+ .grid_4,
+ .grid_5,
+ .grid_6,
+ .grid_7,
+ .grid_8,
+ .grid_9,
+ .grid_10,
+ .grid_11,
+ .grid_12 {
+ display: inline;
+ float: left;
+ margin-left: 13px;
+ margin-right: 13px;
+ }
+
+ .push_1, .pull_1,
+ .push_2, .pull_2,
+ .push_3, .pull_3,
+ .push_4, .pull_4,
+ .push_5, .pull_5,
+ .push_6, .pull_6,
+ .push_7, .pull_7,
+ .push_8, .pull_8,
+ .push_9, .pull_9,
+ .push_10, .pull_10,
+ .push_11, .pull_11 {
+ position: relative;
+ }
+
+ /* Children (Alpha ~ First, Omega ~ Last) */
+ .alpha {margin-left: 0;}
+ .omega {margin-right: 0;}
+
+ /* Base Grid */
+ .container .grid_1 {width: 57px;}
+ .container .grid_2 {width: 140px;}
+ .container .grid_3 {width: 223px;}
+ .container .grid_4 {width: 306px;}
+ .container .grid_5 {width: 389px;}
+ .container .grid_6 {width: 472px;}
+ .container .grid_7 {width: 555px;}
+ .container .grid_8 {width: 638px;}
+ .container .grid_9 {width: 721px;}
+ .container .grid_10 {width: 804px;}
+ .container .grid_11 {width: 887px;}
+ .container .grid_12 {width: 970px;}
+
+ /* Prefix Extra Space */
+ .container .prefix_1 {padding-left: 83px;}
+ .container .prefix_2 {padding-left: 166px;}
+ .container .prefix_3 {padding-left: 249px;}
+ .container .prefix_4 {padding-left: 332px;}
+ .container .prefix_5 {padding-left: 415px;}
+ .container .prefix_6 {padding-left: 498px;}
+ .container .prefix_7 {padding-left: 581px;}
+ .container .prefix_8 {padding-left: 664px;}
+ .container .prefix_9 {padding-left: 747px;}
+ .container .prefix_10 {padding-left: 830px;}
+ .container .prefix_11 {padding-left: 913px;}
+
+ /* Suffix Extra Space */
+ .container .suffix_1 {padding-right: 83px;}
+ .container .suffix_2 {padding-right: 166px;}
+ .container .suffix_3 {padding-right: 249px;}
+ .container .suffix_4 {padding-right: 332px;}
+ .container .suffix_5 {padding-right: 415px;}
+ .container .suffix_6 {padding-right: 498px;}
+ .container .suffix_7 {padding-right: 581px;}
+ .container .suffix_8 {padding-right: 664px;}
+ .container .suffix_9 {padding-right: 747px;}
+ .container .suffix_10 {padding-right: 830px;}
+ .container .suffix_11 {padding-right: 913px;}
+
+ /* Push Space */
+ .container .push_1 {left: 83px;}
+ .container .push_2 {left: 166px;}
+ .container .push_3 {left: 249px;}
+ .container .push_4 {left: 332px;}
+ .container .push_5 {left: 415px;}
+ .container .push_6 {left: 498px;}
+ .container .push_7 {left: 581px;}
+ .container .push_8 {left: 664px;}
+ .container .push_9 {left: 747px;}
+ .container .push_10 {left: 830px;}
+ .container .push_11 {left: 913px;}
+
+ /* Pull Space */
+ .container .pull_1 {left: -83px;}
+ .container .pull_2 {left: -166px;}
+ .container .pull_3 {left: -249px;}
+ .container .pull_4 {left: -332px;}
+ .container .pull_5 {left: -415px;}
+ .container .pull_6 {left: -498px;}
+ .container .pull_7 {left: -581px;}
+ .container .pull_8 {left: -664px;}
+ .container .pull_9 {left: -747px;}
+ .container .pull_10 {left: -830px;}
+ .container .pull_11 {left: -913px;}
+
+ /* Images & Other Objects */
+ img, object, embed { max-width: 100%;}
+ img { height: auto; }
+
+
+/* =============================================================================
+ 768px Grid
+ ========================================================================== */
+
+@media only screen and (min-width: 768px) and (max-width: 995px) {
+
+ body {min-width: 768px;}
+
+ /* Container | 768px */
+ .container {width: 768px;}
+
+ /* Global | 768px */
+ .grid_1,
+ .grid_2,
+ .grid_3,
+ .grid_4,
+ .grid_5,
+ .grid_6,
+ .grid_7,
+ .grid_8,
+ .grid_9,
+ .grid_10,
+ .grid_11,
+ .grid_12 {margin-left: 8px;
+ margin-right: 8px;}
+
+
+ /* Base Grid | 768px */
+ .container .grid_1 {width: 48px;}
+ .container .grid_2 {width: 112px;}
+ .container .grid_3 {width: 176px;}
+ .container .grid_4 {width: 240px;}
+ .container .grid_5 {width: 304px;}
+ .container .grid_6 {width: 368px;}
+ .container .grid_7 {width: 432px;}
+ .container .grid_8 {width: 496px;}
+ .container .grid_9 {width: 560px;}
+ .container .grid_10 {width: 624px;}
+ .container .grid_11 {width: 688px;}
+ .container .grid_12 {width: 752px;}
+
+ /* Prefix Extra Space | 768px */
+ .container .prefix_1 {padding-left: 64px;}
+ .container .prefix_2 {padding-left: 128px;}
+ .container .prefix_3 {padding-left: 192px;}
+ .container .prefix_4 {padding-left: 256px;}
+ .container .prefix_5 {padding-left: 320px;}
+ .container .prefix_6 {padding-left: 384px;}
+ .container .prefix_7 {padding-left: 448px;}
+ .container .prefix_8 {padding-left: 512px;}
+ .container .prefix_9 {padding-left: 576px;}
+ .container .prefix_10 {padding-left: 640px;}
+ .container .prefix_11 {padding-left: 704px;}
+
+ /* Suffix Extra Space | 768px */
+ .container .suffix_1 {padding-right: 64px;}
+ .container .suffix_2 {padding-right: 128px;}
+ .container .suffix_3 {padding-right: 192px;}
+ .container .suffix_4 {padding-right: 256px;}
+ .container .suffix_5 {padding-right: 320px;}
+ .container .suffix_6 {padding-right: 384px;}
+ .container .suffix_7 {padding-right: 448px;}
+ .container .suffix_8 {padding-right: 512px;}
+ .container .suffix_9 {padding-right: 576px;}
+ .container .suffix_10 {padding-right: 640px;}
+ .container .suffix_11 {padding-right: 704px;}
+
+ /* Push Space | 768px */
+ .container .push_1 {left: 64px;}
+ .container .push_2 {left: 128px;}
+ .container .push_3 {left: 192px;}
+ .container .push_4 {left: 256px;}
+ .container .push_5 {left: 320px;}
+ .container .push_6 {left: 384px;}
+ .container .push_7 {left: 448px;}
+ .container .push_8 {left: 512px;}
+ .container .push_9 {left: 576px;}
+ .container .push_10 {left: 640px;}
+ .container .push_11 {left: 704px;}
+
+ /* Pull Space | 768px */
+ .container .pull_1 {left: -64px;}
+ .container .pull_2 {left: -128px;}
+ .container .pull_3 {left: -192px;}
+ .container .pull_4 {left: -256px;}
+ .container .pull_5 {left: -320px;}
+ .container .pull_6 {left: -384px;}
+ .container .pull_7 {left: -448px;}
+ .container .pull_8 {left: -512px;}
+ .container .pull_9 {left: -576px;}
+ .container .pull_10 {left: -640px;}
+ .container .pull_11 {left: -704px;}
+
+ /* Children (Alpha ~ First, Omega ~ Last) | 768 */
+ .alpha {margin-left: 0;}
+ .omega {margin-right: 0;}
+}
+
+
+/* =============================================================================
+ Less than 768px
+ ========================================================================== */
+
+@media only screen and (max-width: 767px) {
+
+ body{min-width:0;}
+
+ /* Container */
+ .container { margin:0 auto; width:456px; overflow:hidden; }
+
+ /* Global */
+ .container .grid_1,
+ .container .grid_2,
+ .container .grid_3,
+ .container .grid_4,
+ .container .grid_5,
+ .container .grid_6,
+ .container .grid_7,
+ .container .grid_8,
+ .container .grid_9,
+ .container .grid_10,
+ .container .grid_11,
+ .container .grid_12 {
+ width:416px;
+ clear: both;
+ float: none;
+ margin-left: 0;
+ margin-right: 0;
+ display:inline-block;
+ padding-left: 20px;
+ padding-right: 20px;
+
+ /* IE 6&7 */
+ zoom:1;
+ *display:inline;
+ }
+
+ /* Nested children need no padding */
+ .grid_1 .grid_1,
+ .grid_2 .grid_1, .grid_2 .grid_2,
+ .grid_3 .grid_1, .grid_3 .grid_2, .grid_3 .grid_3,
+ .grid_4 .grid_1, .grid_4 .grid_2, .grid_4 .grid_3, .grid_4 .grid_4,
+ .grid_5 .grid_1, .grid_5 .grid_2, .grid_5 .grid_3, .grid_5 .grid_4, .grid_5 .grid_5,
+ .grid_6 .grid_1, .grid_6 .grid_2, .grid_6 .grid_3, .grid_6 .grid_4, .grid_6 .grid_5, .grid_6 .grid_6,
+ .grid_7 .grid_1, .grid_7 .grid_2, .grid_7 .grid_3, .grid_7 .grid_4, .grid_7 .grid_5, .grid_7 .grid_6, .grid_7 .grid_7,
+ .grid_8 .grid_1, .grid_8 .grid_2, .grid_8 .grid_3, .grid_8 .grid_4, .grid_8 .grid_5, .grid_8 .grid_6, .grid_8 .grid_7, .grid_8 .grid_8,
+ .grid_9 .grid_1, .grid_9 .grid_2, .grid_9 .grid_3, .grid_9 .grid_4, .grid_9 .grid_5, .grid_9 .grid_6, .grid_9 .grid_7, .grid_9 .grid_8, .grid_9 .grid_9,
+ .grid_10 .grid_1, .grid_10 .grid_2, .grid_10 .grid_3, .grid_10 .grid_4, .grid_10 .grid_5, .grid_10 .grid_6, .grid_10 .grid_7, .grid_10 .grid_8, .grid_10 .grid_9, .grid_10 .grid_10,
+ .grid_11 .grid_1, .grid_11 .grid_2, .grid_11 .grid_3, .grid_11 .grid_4, .grid_11 .grid_5, .grid_11 .grid_6, .grid_11 .grid_7, .grid_11 .grid_8, .grid_11 .grid_9, .grid_11 .grid_10, .grid_11 .grid_11,
+ .grid_12 .grid_1, .grid_12 .grid_2, .grid_12 .grid_3, .grid_12 .grid_4, .grid_12 .grid_5, .grid_12 .grid_6, .grid_12 .grid_7, .grid_12 .grid_8, .grid_12 .grid_9, .grid_12 .grid_10, .grid_12 .grid_11, .grid_12 .grid_12 {
+ padding-left: 0px;
+ padding-right: 0px;
+ }
+
+ .container .push_1, .container .push_2,
+ .container .push_3, .container .push_4,
+ .container .push_5, .container .push_6,
+ .container .push_7, .container .push_8,
+ .container .push_9, .container .push_10,
+ .container .push_11 {
+ left: 0;
+ }
+ .container .pull_1, .container .pull_2,
+ .container .pull_3, .container .pull_4,
+ .container .pull_5, .container .pull_6,
+ .container .pull_7, .container .pull_8,
+ .container .pull_9, .container .pull_10,
+ .container .pull_11 {
+ left: 0;
+ }
+}
+
+
+/* =============================================================================
+ Less than 480px
+ ========================================================================== */
+@media only screen and (max-width: 479px) {
+
+ /* Container */
+
+ .container { width:300px;}
+
+ /* Global */
+
+ .container .grid_1,
+ .container .grid_2,
+ .container .grid_3,
+ .container .grid_4,
+ .container .grid_5,
+ .container .grid_6,
+ .container .grid_7,
+ .container .grid_8,
+ .container .grid_9,
+ .container .grid_10,
+ .container .grid_11,
+ .container .grid_12 {
+ width:260px;
+ }
+}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996modernizr262js"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.js (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.js (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.js 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,1393 @@
</span><ins>+/*!
+ * Modernizr v2.6.2
+ * www.modernizr.com
+ *
+ * Copyright (c) Faruk Ates, Paul Irish, Alex Sexton
+ * Available under the BSD and MIT licenses: www.modernizr.com/license/
+ */
+
+/*
+ * Modernizr tests which native CSS3 and HTML5 features are available in
+ * the current UA and makes the results available to you in two ways:
+ * as properties on a global Modernizr object, and as classes on the
+ * <html> element. This information allows you to progressively enhance
+ * your pages with a granular level of control over the experience.
+ *
+ * Modernizr has an optional (not included) conditional resource loader
+ * called Modernizr.load(), based on Yepnope.js (yepnopejs.com).
+ * To get a build that includes Modernizr.load(), as well as choosing
+ * which tests to include, go to www.modernizr.com/download/
+ *
+ * Authors Faruk Ates, Paul Irish, Alex Sexton
+ * Contributors Ryan Seddon, Ben Alman
+ */
+
+window.Modernizr = (function( window, document, undefined ) {
+
+ var version = '2.6.2',
+
+ Modernizr = {},
+
+ /*>>cssclasses*/
+ // option for enabling the HTML classes to be added
+ enableClasses = true,
+ /*>>cssclasses*/
+
+ docElement = document.documentElement,
+
+ /**
+ * Create our "modernizr" element that we do most feature tests on.
+ */
+ mod = 'modernizr',
+ modElem = document.createElement(mod),
+ mStyle = modElem.style,
+
+ /**
+ * Create the input element for various Web Forms feature tests.
+ */
+ inputElem /*>>inputelem*/ = document.createElement('input') /*>>inputelem*/ ,
+
+ /*>>smile*/
+ smile = ':)',
+ /*>>smile*/
+
+ toString = {}.toString,
+
+ // TODO :: make the prefixes more granular
+ /*>>prefixes*/
+ // List of property values to set for css tests. See ticket #21
+ prefixes = ' -webkit- -moz- -o- -ms- '.split(' '),
+ /*>>prefixes*/
+
+ /*>>domprefixes*/
+ // Following spec is to expose vendor-specific style properties as:
+ // elem.style.WebkitBorderRadius
+ // and the following would be incorrect:
+ // elem.style.webkitBorderRadius
+
+ // Webkit ghosts their properties in lowercase but Opera & Moz do not.
+ // Microsoft uses a lowercase `ms` instead of the correct `Ms` in IE8+
+ // erik.eae.net/archives/2008/03/10/21.48.10/
+
+ // More here: github.com/Modernizr/Modernizr/issues/issue/21
+ omPrefixes = 'Webkit Moz O ms',
+
+ cssomPrefixes = omPrefixes.split(' '),
+
+ domPrefixes = omPrefixes.toLowerCase().split(' '),
+ /*>>domprefixes*/
+
+ /*>>ns*/
+ ns = {'svg': 'http://www.w3.org/2000/svg'},
+ /*>>ns*/
+
+ tests = {},
+ inputs = {},
+ attrs = {},
+
+ classes = [],
+
+ slice = classes.slice,
+
+ featureName, // used in testing loop
+
+
+ /*>>teststyles*/
+ // Inject element with style element and some CSS rules
+ injectElementWithStyles = function( rule, callback, nodes, testnames ) {
+
+ var style, ret, node, docOverflow,
+ div = document.createElement('div'),
+ // After page load injecting a fake body doesn't work so check if body exists
+ body = document.body,
+ // IE6 and 7 won't return offsetWidth or offsetHeight unless it's in the body element, so we fake it.
+ fakeBody = body || document.createElement('body');
+
+ if ( parseInt(nodes, 10) ) {
+ // In order not to give false positives we create a node for each test
+ // This also allows the method to scale for unspecified uses
+ while ( nodes-- ) {
+ node = document.createElement('div');
+ node.id = testnames ? testnames[nodes] : mod + (nodes + 1);
+ div.appendChild(node);
+ }
+ }
+
+ // <style> elements in IE6-9 are considered 'NoScope' elements and therefore will be removed
+ // when injected with innerHTML. To get around this you need to prepend the 'NoScope' element
+ // with a 'scoped' element, in our case the soft-hyphen entity as it won't mess with our measurements.
+ // msdn.microsoft.com/en-us/library/ms533897%28VS.85%29.aspx
+ // Documents served as xml will throw if using ­ so use xml friendly encoded version. See issue #277
+ style = ['­','<style id="s', mod, '">', rule, '</style>'].join('');
+ div.id = mod;
+ // IE6 will false positive on some tests due to the style element inside the test div somehow interfering offsetHeight, so insert it into body or fakebody.
+ // Opera will act all quirky when injecting elements in documentElement when page is served as xml, needs fakebody too. #270
+ (body ? div : fakeBody).innerHTML += style;
+ fakeBody.appendChild(div);
+ if ( !body ) {
+ //avoid crashing IE8, if background image is used
+ fakeBody.style.background = '';
+ //Safari 5.13/5.1.4 OSX stops loading if ::-webkit-scrollbar is used and scrollbars are visible
+ fakeBody.style.overflow = 'hidden';
+ docOverflow = docElement.style.overflow;
+ docElement.style.overflow = 'hidden';
+// docElement.appendChild(fakeBody);
+ }
+
+ ret = callback(div, rule);
+ // If this is done after page load we don't want to remove the body so check if body exists
+ if ( !body ) {
+ fakeBody.parentNode.removeChild(fakeBody);
+ docElement.style.overflow = docOverflow;
+ } else {
+ div.parentNode.removeChild(div);
+ }
+
+ return !!ret;
+
+ },
+ /*>>teststyles*/
+
+ /*>>mq*/
+ // adapted from matchMedia polyfill
+ // by Scott Jehl and Paul Irish
+ // gist.github.com/786768
+ testMediaQuery = function( mq ) {
+
+ var matchMedia = window.matchMedia || window.msMatchMedia;
+ if ( matchMedia ) {
+ return matchMedia(mq).matches;
+ }
+
+ var bool;
+
+ injectElementWithStyles('@media ' + mq + ' { #' + mod + ' { position: absolute; } }', function( node ) {
+ bool = (window.getComputedStyle ?
+ getComputedStyle(node, null) :
+ node.currentStyle)['position'] == 'absolute';
+ });
+
+ return bool;
+
+ },
+ /*>>mq*/
+
+
+ /*>>hasevent*/
+ //
+ // isEventSupported determines if a given element supports the given event
+ // kangax.github.com/iseventsupported/
+ //
+ // The following results are known incorrects:
+ // Modernizr.hasEvent("webkitTransitionEnd", elem) // false negative
+ // Modernizr.hasEvent("textInput") // in Webkit. github.com/Modernizr/Modernizr/issues/333
+ // ...
+ isEventSupported = (function() {
+
+ var TAGNAMES = {
+ 'select': 'input', 'change': 'input',
+ 'submit': 'form', 'reset': 'form',
+ 'error': 'img', 'load': 'img', 'abort': 'img'
+ };
+
+ function isEventSupported( eventName, element ) {
+
+ element = element || document.createElement(TAGNAMES[eventName] || 'div');
+ eventName = 'on' + eventName;
+
+ // When using `setAttribute`, IE skips "unload", WebKit skips "unload" and "resize", whereas `in` "catches" those
+ var isSupported = eventName in element;
+
+ if ( !isSupported ) {
+ // If it has no `setAttribute` (i.e. doesn't implement Node interface), try generic element
+ if ( !element.setAttribute ) {
+ element = document.createElement('div');
+ }
+ if ( element.setAttribute && element.removeAttribute ) {
+ element.setAttribute(eventName, '');
+ isSupported = is(element[eventName], 'function');
+
+ // If property was created, "remove it" (by setting value to `undefined`)
+ if ( !is(element[eventName], 'undefined') ) {
+ element[eventName] = undefined;
+ }
+ element.removeAttribute(eventName);
+ }
+ }
+
+ element = null;
+ return isSupported;
+ }
+ return isEventSupported;
+ })(),
+ /*>>hasevent*/
+
+ // TODO :: Add flag for hasownprop ? didn't last time
+
+ // hasOwnProperty shim by kangax needed for Safari 2.0 support
+ _hasOwnProperty = ({}).hasOwnProperty, hasOwnProp;
+
+ if ( !is(_hasOwnProperty, 'undefined') && !is(_hasOwnProperty.call, 'undefined') ) {
+ hasOwnProp = function (object, property) {
+ return _hasOwnProperty.call(object, property);
+ };
+ }
+ else {
+ hasOwnProp = function (object, property) { /* yes, this can give false positives/negatives, but most of the time we don't care about those */
+ return ((property in object) && is(object.constructor.prototype[property], 'undefined'));
+ };
+ }
+
+ // Adapted from ES5-shim https://github.com/kriskowal/es5-shim/blob/master/es5-shim.js
+ // es5.github.com/#x15.3.4.5
+
+ if (!Function.prototype.bind) {
+ Function.prototype.bind = function bind(that) {
+
+ var target = this;
+
+ if (typeof target != "function") {
+ throw new TypeError();
+ }
+
+ var args = slice.call(arguments, 1),
+ bound = function () {
+
+ if (this instanceof bound) {
+
+ var F = function(){};
+ F.prototype = target.prototype;
+ var self = new F();
+
+ var result = target.apply(
+ self,
+ args.concat(slice.call(arguments))
+ );
+ if (Object(result) === result) {
+ return result;
+ }
+ return self;
+
+ } else {
+
+ return target.apply(
+ that,
+ args.concat(slice.call(arguments))
+ );
+
+ }
+
+ };
+
+ return bound;
+ };
+ }
+
+ /**
+ * setCss applies given styles to the Modernizr DOM node.
+ */
+ function setCss( str ) {
+ mStyle.cssText = str;
+ }
+
+ /**
+ * setCssAll extrapolates all vendor-specific css strings.
+ */
+ function setCssAll( str1, str2 ) {
+ return setCss(prefixes.join(str1 + ';') + ( str2 || '' ));
+ }
+
+ /**
+ * is returns a boolean for if typeof obj is exactly type.
+ */
+ function is( obj, type ) {
+ return typeof obj === type;
+ }
+
+ /**
+ * contains returns a boolean for if substr is found within str.
+ */
+ function contains( str, substr ) {
+ return !!~('' + str).indexOf(substr);
+ }
+
+ /*>>testprop*/
+
+ // testProps is a generic CSS / DOM property test.
+
+ // In testing support for a given CSS property, it's legit to test:
+ // `elem.style[styleName] !== undefined`
+ // If the property is supported it will return an empty string,
+ // if unsupported it will return undefined.
+
+ // We'll take advantage of this quick test and skip setting a style
+ // on our modernizr element, but instead just testing undefined vs
+ // empty string.
+
+ // Because the testing of the CSS property names (with "-", as
+ // opposed to the camelCase DOM properties) is non-portable and
+ // non-standard but works in WebKit and IE (but not Gecko or Opera),
+ // we explicitly reject properties with dashes so that authors
+ // developing in WebKit or IE first don't end up with
+ // browser-specific content by accident.
+
+ function testProps( props, prefixed ) {
+ for ( var i in props ) {
+ var prop = props[i];
+ if ( !contains(prop, "-") && mStyle[prop] !== undefined ) {
+ return prefixed == 'pfx' ? prop : true;
+ }
+ }
+ return false;
+ }
+ /*>>testprop*/
+
+ // TODO :: add testDOMProps
+ /**
+ * testDOMProps is a generic DOM property test; if a browser supports
+ * a certain property, it won't return undefined for it.
+ */
+ function testDOMProps( props, obj, elem ) {
+ for ( var i in props ) {
+ var item = obj[props[i]];
+ if ( item !== undefined) {
+
+ // return the property name as a string
+ if (elem === false) return props[i];
+
+ // let's bind a function
+ if (is(item, 'function')){
+ // default to autobind unless override
+ return item.bind(elem || obj);
+ }
+
+ // return the unbound function or obj or value
+ return item;
+ }
+ }
+ return false;
+ }
+
+ /*>>testallprops*/
+ /**
+ * testPropsAll tests a list of DOM properties we want to check against.
+ * We specify literally ALL possible (known and/or likely) properties on
+ * the element including the non-vendor prefixed one, for forward-
+ * compatibility.
+ */
+ function testPropsAll( prop, prefixed, elem ) {
+
+ var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),
+ props = (prop + ' ' + cssomPrefixes.join(ucProp + ' ') + ucProp).split(' ');
+
+ // did they call .prefixed('boxSizing') or are we just testing a prop?
+ if(is(prefixed, "string") || is(prefixed, "undefined")) {
+ return testProps(props, prefixed);
+
+ // otherwise, they called .prefixed('requestAnimationFrame', window[, elem])
+ } else {
+ props = (prop + ' ' + (domPrefixes).join(ucProp + ' ') + ucProp).split(' ');
+ return testDOMProps(props, prefixed, elem);
+ }
+ }
+ /*>>testallprops*/
+
+
+ /**
+ * Tests
+ * -----
+ */
+
+ // The *new* flexbox
+ // dev.w3.org/csswg/css3-flexbox
+
+ tests['flexbox'] = function() {
+ return testPropsAll('flexWrap');
+ };
+
+ // The *old* flexbox
+ // www.w3.org/TR/2009/WD-css3-flexbox-20090723/
+
+ tests['flexboxlegacy'] = function() {
+ return testPropsAll('boxDirection');
+ };
+
+ // On the S60 and BB Storm, getContext exists, but always returns undefined
+ // so we actually have to call getContext() to verify
+ // github.com/Modernizr/Modernizr/issues/issue/97/
+
+ tests['canvas'] = function() {
+ var elem = document.createElement('canvas');
+ return !!(elem.getContext && elem.getContext('2d'));
+ };
+
+ tests['canvastext'] = function() {
+ return !!(Modernizr['canvas'] && is(document.createElement('canvas').getContext('2d').fillText, 'function'));
+ };
+
+ // webk.it/70117 is tracking a legit WebGL feature detect proposal
+
+ // We do a soft detect which may false positive in order to avoid
+ // an expensive context creation: bugzil.la/732441
+
+ tests['webgl'] = function() {
+ return !!window.WebGLRenderingContext;
+ };
+
+ /*
+ * The Modernizr.touch test only indicates if the browser supports
+ * touch events, which does not necessarily reflect a touchscreen
+ * device, as evidenced by tablets running Windows 7 or, alas,
+ * the Palm Pre / WebOS (touch) phones.
+ *
+ * Additionally, Chrome (desktop) used to lie about its support on this,
+ * but that has since been rectified: crbug.com/36415
+ *
+ * We also test for Firefox 4 Multitouch Support.
+ *
+ * For more info, see: modernizr.github.com/Modernizr/touch.html
+ */
+
+ tests['touch'] = function() {
+ var bool;
+
+ if(('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch) {
+ bool = true;
+ } else {
+ injectElementWithStyles(['@media (',prefixes.join('touch-enabled),('),mod,')','{#modernizr{top:9px;position:absolute}}'].join(''), function( node ) {
+ bool = node.offsetTop === 9;
+ });
+ }
+
+ return bool;
+ };
+
+
+ // geolocation is often considered a trivial feature detect...
+ // Turns out, it's quite tricky to get right:
+ //
+ // Using !!navigator.geolocation does two things we don't want. It:
+ // 1. Leaks memory in IE9: github.com/Modernizr/Modernizr/issues/513
+ // 2. Disables page caching in WebKit: webk.it/43956
+ //
+ // Meanwhile, in Firefox < 8, an about:config setting could expose
+ // a false positive that would throw an exception: bugzil.la/688158
+
+ tests['geolocation'] = function() {
+ return 'geolocation' in navigator;
+ };
+
+
+ tests['postmessage'] = function() {
+ return !!window.postMessage;
+ };
+
+
+ // Chrome incognito mode used to throw an exception when using openDatabase
+ // It doesn't anymore.
+ tests['websqldatabase'] = function() {
+ return !!window.openDatabase;
+ };
+
+ // Vendors had inconsistent prefixing with the experimental Indexed DB:
+ // - Webkit's implementation is accessible through webkitIndexedDB
+ // - Firefox shipped moz_indexedDB before FF4b9, but since then has been mozIndexedDB
+ // For speed, we don't test the legacy (and beta-only) indexedDB
+ tests['indexedDB'] = function() {
+ return !!testPropsAll("indexedDB", window);
+ };
+
+ // documentMode logic from YUI to filter out IE8 Compat Mode
+ // which false positives.
+ tests['hashchange'] = function() {
+ return isEventSupported('hashchange', window) && (document.documentMode === undefined || document.documentMode > 7);
+ };
+
+ // Per 1.6:
+ // This used to be Modernizr.historymanagement but the longer
+ // name has been deprecated in favor of a shorter and property-matching one.
+ // The old API is still available in 1.6, but as of 2.0 will throw a warning,
+ // and in the first release thereafter disappear entirely.
+ tests['history'] = function() {
+ return !!(window.history && history.pushState);
+ };
+
+ tests['draganddrop'] = function() {
+ var div = document.createElement('div');
+ return ('draggable' in div) || ('ondragstart' in div && 'ondrop' in div);
+ };
+
+ // FF3.6 was EOL'ed on 4/24/12, but the ESR version of FF10
+ // will be supported until FF19 (2/12/13), at which time, ESR becomes FF17.
+ // FF10 still uses prefixes, so check for it until then.
+ // for more ESR info, see: mozilla.org/en-US/firefox/organizations/faq/
+ tests['websockets'] = function() {
+ return 'WebSocket' in window || 'MozWebSocket' in window;
+ };
+
+
+ // css-tricks.com/rgba-browser-support/
+ tests['rgba'] = function() {
+ // Set an rgba() color and check the returned value
+
+ setCss('background-color:rgba(150,255,150,.5)');
+
+ return contains(mStyle.backgroundColor, 'rgba');
+ };
+
+ tests['hsla'] = function() {
+ // Same as rgba(), in fact, browsers re-map hsla() to rgba() internally,
+ // except IE9 who retains it as hsla
+
+ setCss('background-color:hsla(120,40%,100%,.5)');
+
+ return contains(mStyle.backgroundColor, 'rgba') || contains(mStyle.backgroundColor, 'hsla');
+ };
+
+ tests['multiplebgs'] = function() {
+ // Setting multiple images AND a color on the background shorthand property
+ // and then querying the style.background property value for the number of
+ // occurrences of "url(" is a reliable method for detecting ACTUAL support for this!
+
+ setCss('background:url(https://),url(https://),red url(https://)');
+
+ // If the UA supports multiple backgrounds, there should be three occurrences
+ // of the string "url(" in the return value for elemStyle.background
+
+ return (/(url\s*\(.*?){3}/).test(mStyle.background);
+ };
+
+
+
+ // this will false positive in Opera Mini
+ // github.com/Modernizr/Modernizr/issues/396
+
+ tests['backgroundsize'] = function() {
+ return testPropsAll('backgroundSize');
+ };
+
+ tests['borderimage'] = function() {
+ return testPropsAll('borderImage');
+ };
+
+
+ // Super comprehensive table about all the unique implementations of
+ // border-radius: muddledramblings.com/table-of-css3-border-radius-compliance
+
+ tests['borderradius'] = function() {
+ return testPropsAll('borderRadius');
+ };
+
+ // WebOS unfortunately false positives on this test.
+ tests['boxshadow'] = function() {
+ return testPropsAll('boxShadow');
+ };
+
+ // FF3.0 will false positive on this test
+ tests['textshadow'] = function() {
+ return document.createElement('div').style.textShadow === '';
+ };
+
+
+ tests['opacity'] = function() {
+ // Browsers that actually have CSS Opacity implemented have done so
+ // according to spec, which means their return values are within the
+ // range of [0.0,1.0] - including the leading zero.
+
+ setCssAll('opacity:.55');
+
+ // The non-literal . in this regex is intentional:
+ // German Chrome returns this value as 0,55
+ // github.com/Modernizr/Modernizr/issues/#issue/59/comment/516632
+ return (/^0.55$/).test(mStyle.opacity);
+ };
+
+
+ // Note, Android < 4 will pass this test, but can only animate
+ // a single property at a time
+ // daneden.me/2011/12/putting-up-with-androids-bullshit/
+ tests['cssanimations'] = function() {
+ return testPropsAll('animationName');
+ };
+
+
+ tests['csscolumns'] = function() {
+ return testPropsAll('columnCount');
+ };
+
+
+ tests['cssgradients'] = function() {
+ /**
+ * For CSS Gradients syntax, please see:
+ * webkit.org/blog/175/introducing-css-gradients/
+ * developer.mozilla.org/en/CSS/-moz-linear-gradient
+ * developer.mozilla.org/en/CSS/-moz-radial-gradient
+ * dev.w3.org/csswg/css3-images/#gradients-
+ */
+
+ var str1 = 'background-image:',
+ str2 = 'gradient(linear,left top,right bottom,from(#9f9),to(white));',
+ str3 = 'linear-gradient(left top,#9f9, white);';
+
+ setCss(
+ // legacy webkit syntax (FIXME: remove when syntax not in use anymore)
+ (str1 + '-webkit- '.split(' ').join(str2 + str1) +
+ // standard syntax // trailing 'background-image:'
+ prefixes.join(str3 + str1)).slice(0, -str1.length)
+ );
+
+ return contains(mStyle.backgroundImage, 'gradient');
+ };
+
+
+ tests['cssreflections'] = function() {
+ return testPropsAll('boxReflect');
+ };
+
+
+ tests['csstransforms'] = function() {
+ return !!testPropsAll('transform');
+ };
+
+
+ tests['csstransforms3d'] = function() {
+
+ var ret = !!testPropsAll('perspective');
+
+ // Webkit's 3D transforms are passed off to the browser's own graphics renderer.
+ // It works fine in Safari on Leopard and Snow Leopard, but not in Chrome in
+ // some conditions. As a result, Webkit typically recognizes the syntax but
+ // will sometimes throw a false positive, thus we must do a more thorough check:
+ if ( ret && 'webkitPerspective' in docElement.style ) {
+
+ // Webkit allows this media query to succeed only if the feature is enabled.
+ // `@media (transform-3d),(-webkit-transform-3d){ ... }`
+ injectElementWithStyles('@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}', function( node, rule ) {
+ ret = node.offsetLeft === 9 && node.offsetHeight === 3;
+ });
+ }
+ return ret;
+ };
+
+
+ tests['csstransitions'] = function() {
+ return testPropsAll('transition');
+ };
+
+
+ /*>>fontface*/
+ // @font-face detection routine by Diego Perini
+ // javascript.nwbox.com/CSSSupport/
+
+ // false positives:
+ // WebOS github.com/Modernizr/Modernizr/issues/342
+ // WP7 github.com/Modernizr/Modernizr/issues/538
+ tests['fontface'] = function() {
+ var bool;
+
+ injectElementWithStyles('@font-face {font-family:"font";src:url("https://")}', function( node, rule ) {
+ var style = document.getElementById('smodernizr'),
+ sheet = style.sheet || style.styleSheet,
+ cssText = sheet ? (sheet.cssRules && sheet.cssRules[0] ? sheet.cssRules[0].cssText : sheet.cssText || '') : '';
+
+ bool = /src/i.test(cssText) && cssText.indexOf(rule.split(' ')[0]) === 0;
+ });
+
+ return bool;
+ };
+ /*>>fontface*/
+
+ // CSS generated content detection
+ tests['generatedcontent'] = function() {
+ var bool;
+
+ injectElementWithStyles(['#',mod,'{font:0/0 a}#',mod,':after{content:"',smile,'";visibility:hidden;font:3px/1 a}'].join(''), function( node ) {
+ bool = node.offsetHeight >= 3;
+ });
+
+ return bool;
+ };
+
+
+
+ // These tests evaluate support of the video/audio elements, as well as
+ // testing what types of content they support.
+ //
+ // We're using the Boolean constructor here, so that we can extend the value
+ // e.g. Modernizr.video // true
+ // Modernizr.video.ogg // 'probably'
+ //
+ // Codec values from : github.com/NielsLeenheer/html5test/blob/9106a8/index.html#L845
+ // thx to NielsLeenheer and zcorpan
+
+ // Note: in some older browsers, "no" was a return value instead of empty string.
+ // It was live in FF3.5.0 and 3.5.1, but fixed in 3.5.2
+ // It was also live in Safari 4.0.0 - 4.0.4, but fixed in 4.0.5
+
+ tests['video'] = function() {
+ var elem = document.createElement('video'),
+ bool = false;
+
+ // IE9 Running on Windows Server SKU can cause an exception to be thrown, bug #224
+ try {
+ if ( bool = !!elem.canPlayType ) {
+ bool = new Boolean(bool);
+ bool.ogg = elem.canPlayType('video/ogg; codecs="theora"') .replace(/^no$/,'');
+
+ // Without QuickTime, this value will be `undefined`. github.com/Modernizr/Modernizr/issues/546
+ bool.h264 = elem.canPlayType('video/mp4; codecs="avc1.42E01E"') .replace(/^no$/,'');
+
+ bool.webm = elem.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,'');
+ }
+
+ } catch(e) { }
+
+ return bool;
+ };
+
+ tests['audio'] = function() {
+ var elem = document.createElement('audio'),
+ bool = false;
+
+ try {
+ if ( bool = !!elem.canPlayType ) {
+ bool = new Boolean(bool);
+ bool.ogg = elem.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,'');
+ bool.mp3 = elem.canPlayType('audio/mpeg;') .replace(/^no$/,'');
+
+ // Mimetypes accepted:
+ // developer.mozilla.org/En/Media_formats_supported_by_the_audio_and_video_elements
+ // bit.ly/iphoneoscodecs
+ bool.wav = elem.canPlayType('audio/wav; codecs="1"') .replace(/^no$/,'');
+ bool.m4a = ( elem.canPlayType('audio/x-m4a;') ||
+ elem.canPlayType('audio/aac;')) .replace(/^no$/,'');
+ }
+ } catch(e) { }
+
+ return bool;
+ };
+
+
+ // In FF4, if disabled, window.localStorage should === null.
+
+ // Normally, we could not test that directly and need to do a
+ // `('localStorage' in window) && ` test first because otherwise Firefox will
+ // throw bugzil.la/365772 if cookies are disabled
+
+ // Also in iOS5 Private Browsing mode, attempting to use localStorage.setItem
+ // will throw the exception:
+ // QUOTA_EXCEEDED_ERRROR DOM Exception 22.
+ // Peculiarly, getItem and removeItem calls do not throw.
+
+ // Because we are forced to try/catch this, we'll go aggressive.
+
+ // Just FWIW: IE8 Compat mode supports these features completely:
+ // www.quirksmode.org/dom/html5.html
+ // But IE8 doesn't support either with local files
+
+ tests['localstorage'] = function() {
+ try {
+ localStorage.setItem(mod, mod);
+ localStorage.removeItem(mod);
+ return true;
+ } catch(e) {
+ return false;
+ }
+ };
+
+ tests['sessionstorage'] = function() {
+ try {
+ sessionStorage.setItem(mod, mod);
+ sessionStorage.removeItem(mod);
+ return true;
+ } catch(e) {
+ return false;
+ }
+ };
+
+
+ tests['webworkers'] = function() {
+ return !!window.Worker;
+ };
+
+
+ tests['applicationcache'] = function() {
+ return !!window.applicationCache;
+ };
+
+
+ // Thanks to Erik Dahlstrom
+ tests['svg'] = function() {
+ return !!document.createElementNS && !!document.createElementNS(ns.svg, 'svg').createSVGRect;
+ };
+
+ // specifically for SVG inline in HTML, not within XHTML
+ // test page: paulirish.com/demo/inline-svg
+ tests['inlinesvg'] = function() {
+ var div = document.createElement('div');
+ div.innerHTML = '<svg/>';
+ return (div.firstChild && div.firstChild.namespaceURI) == ns.svg;
+ };
+
+ // SVG SMIL animation
+ tests['smil'] = function() {
+ return !!document.createElementNS && /SVGAnimate/.test(toString.call(document.createElementNS(ns.svg, 'animate')));
+ };
+
+ // This test is only for clip paths in SVG proper, not clip paths on HTML content
+ // demo: srufaculty.sru.edu/david.dailey/svg/newstuff/clipPath4.svg
+
+ // However read the comments to dig into applying SVG clippaths to HTML content here:
+ // github.com/Modernizr/Modernizr/issues/213#issuecomment-1149491
+ tests['svgclippaths'] = function() {
+ return !!document.createElementNS && /SVGClipPath/.test(toString.call(document.createElementNS(ns.svg, 'clipPath')));
+ };
+
+ /*>>webforms*/
+ // input features and input types go directly onto the ret object, bypassing the tests loop.
+ // Hold this guy to execute in a moment.
+ function webforms() {
+ /*>>input*/
+ // Run through HTML5's new input attributes to see if the UA understands any.
+ // We're using f which is the <input> element created early on
+ // Mike Taylr has created a comprehensive resource for testing these attributes
+ // when applied to all input types:
+ // miketaylr.com/code/input-type-attr.html
+ // spec: www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary
+
+ // Only input placeholder is tested while textarea's placeholder is not.
+ // Currently Safari 4 and Opera 11 have support only for the input placeholder
+ // Both tests are available in feature-detects/forms-placeholder.js
+ Modernizr['input'] = (function( props ) {
+ for ( var i = 0, len = props.length; i < len; i++ ) {
+ attrs[ props[i] ] = !!(props[i] in inputElem);
+ }
+ if (attrs.list){
+ // safari false positive's on datalist: webk.it/74252
+ // see also github.com/Modernizr/Modernizr/issues/146
+ attrs.list = !!(document.createElement('datalist') && window.HTMLDataListElement);
+ }
+ return attrs;
+ })('autocomplete autofocus list placeholder max min multiple pattern required step'.split(' '));
+ /*>>input*/
+
+ /*>>inputtypes*/
+ // Run through HTML5's new input types to see if the UA understands any.
+ // This is put behind the tests runloop because it doesn't return a
+ // true/false like all the other tests; instead, it returns an object
+ // containing each input type with its corresponding true/false value
+
+ // Big thanks to @miketaylr for the html5 forms expertise. miketaylr.com/
+ Modernizr['inputtypes'] = (function(props) {
+
+ for ( var i = 0, bool, inputElemType, defaultView, len = props.length; i < len; i++ ) {
+
+ inputElem.setAttribute('type', inputElemType = props[i]);
+ bool = inputElem.type !== 'text';
+
+ // We first check to see if the type we give it sticks..
+ // If the type does, we feed it a textual value, which shouldn't be valid.
+ // If the value doesn't stick, we know there's input sanitization which infers a custom UI
+ if ( bool ) {
+
+ inputElem.value = smile;
+ inputElem.style.cssText = 'position:absolute;visibility:hidden;';
+
+ if ( /^range$/.test(inputElemType) && inputElem.style.WebkitAppearance !== undefined ) {
+
+ docElement.appendChild(inputElem);
+ defaultView = document.defaultView;
+
+ // Safari 2-4 allows the smiley as a value, despite making a slider
+ bool = defaultView.getComputedStyle &&
+ defaultView.getComputedStyle(inputElem, null).WebkitAppearance !== 'textfield' &&
+ // Mobile android web browser has false positive, so must
+ // check the height to see if the widget is actually there.
+ (inputElem.offsetHeight !== 0);
+
+ docElement.removeChild(inputElem);
+
+ } else if ( /^(search|tel)$/.test(inputElemType) ){
+ // Spec doesn't define any special parsing or detectable UI
+ // behaviors so we pass these through as true
+
+ // Interestingly, opera fails the earlier test, so it doesn't
+ // even make it here.
+
+ } else if ( /^(url|email)$/.test(inputElemType) ) {
+ // Real url and email support comes with prebaked validation.
+ bool = inputElem.checkValidity && inputElem.checkValidity() === false;
+
+ } else {
+ // If the upgraded input compontent rejects the :) text, we got a winner
+ bool = inputElem.value != smile;
+ }
+ }
+
+ inputs[ props[i] ] = !!bool;
+ }
+ return inputs;
+ })('search tel url email datetime date month week time datetime-local number range color'.split(' '));
+ /*>>inputtypes*/
+ }
+ /*>>webforms*/
+
+
+ // End of test definitions
+ // -----------------------
+
+
+
+ // Run through all tests and detect their support in the current UA.
+ // todo: hypothetically we could be doing an array of tests and use a basic loop here.
+ for ( var feature in tests ) {
+ if ( hasOwnProp(tests, feature) ) {
+ // run the test, throw the return value into the Modernizr,
+ // then based on that boolean, define an appropriate className
+ // and push it into an array of classes we'll join later.
+ featureName = feature.toLowerCase();
+ Modernizr[featureName] = tests[feature]();
+
+ classes.push((Modernizr[featureName] ? '' : 'no-') + featureName);
+ }
+ }
+
+ /*>>webforms*/
+ // input tests need to run.
+ Modernizr.input || webforms();
+ /*>>webforms*/
+
+
+ /**
+ * addTest allows the user to define their own feature tests
+ * the result will be added onto the Modernizr object,
+ * as well as an appropriate className set on the html element
+ *
+ * @param feature - String naming the feature
+ * @param test - Function returning true if feature is supported, false if not
+ */
+ Modernizr.addTest = function ( feature, test ) {
+ if ( typeof feature == 'object' ) {
+ for ( var key in feature ) {
+ if ( hasOwnProp( feature, key ) ) {
+ Modernizr.addTest( key, feature[ key ] );
+ }
+ }
+ } else {
+
+ feature = feature.toLowerCase();
+
+ if ( Modernizr[feature] !== undefined ) {
+ // we're going to quit if you're trying to overwrite an existing test
+ // if we were to allow it, we'd do this:
+ // var re = new RegExp("\\b(no-)?" + feature + "\\b");
+ // docElement.className = docElement.className.replace( re, '' );
+ // but, no rly, stuff 'em.
+ return Modernizr;
+ }
+
+ test = typeof test == 'function' ? test() : test;
+
+ if (typeof enableClasses !== "undefined" && enableClasses) {
+ docElement.className += ' ' + (test ? '' : 'no-') + feature;
+ }
+ Modernizr[feature] = test;
+
+ }
+
+ return Modernizr; // allow chaining.
+ };
+
+
+ // Reset modElem.cssText to nothing to reduce memory footprint.
+ setCss('');
+ modElem = inputElem = null;
+
+ /*>>shiv*/
+ /*! HTML5 Shiv v3.6.1 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed */
+ ;(function(window, document) {
+ /*jshint evil:true */
+ /** Preset options */
+ var options = window.html5 || {};
+
+ /** Used to skip problem elements */
+ var reSkip = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i;
+
+ /** Not all elements can be cloned in IE **/
+ var saveClones = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i;
+
+ /** Detect whether the browser supports default html5 styles */
+ var supportsHtml5Styles;
+
+ /** Name of the expando, to work with multiple documents or to re-shiv one document */
+ var expando = '_html5shiv';
+
+ /** The id for the the documents expando */
+ var expanID = 0;
+
+ /** Cached data for each document */
+ var expandoData = {};
+
+ /** Detect whether the browser supports unknown elements */
+ var supportsUnknownElements;
+
+ (function() {
+ try {
+ var a = document.createElement('a');
+ a.innerHTML = '<xyz></xyz>';
+ //if the hidden property is implemented we can assume, that the browser supports basic HTML5 Styles
+ supportsHtml5Styles = ('hidden' in a);
+
+ supportsUnknownElements = a.childNodes.length == 1 || (function() {
+ // assign a false positive if unable to shiv
+ (document.createElement)('a');
+ var frag = document.createDocumentFragment();
+ return (
+ typeof frag.cloneNode == 'undefined' ||
+ typeof frag.createDocumentFragment == 'undefined' ||
+ typeof frag.createElement == 'undefined'
+ );
+ }());
+ } catch(e) {
+ supportsHtml5Styles = true;
+ supportsUnknownElements = true;
+ }
+
+ }());
+
+ /*--------------------------------------------------------------------------*/
+
+ /**
+ * Creates a style sheet with the given CSS text and adds it to the document.
+ * @private
+ * @param {Document} ownerDocument The document.
+ * @param {String} cssText The CSS text.
+ * @returns {StyleSheet} The style element.
+ */
+ function addStyleSheet(ownerDocument, cssText) {
+ var p = ownerDocument.createElement('p'),
+ parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement;
+
+ p.innerHTML = 'x<style>' + cssText + '</style>';
+ return parent.insertBefore(p.lastChild, parent.firstChild);
+ }
+
+ /**
+ * Returns the value of `html5.elements` as an array.
+ * @private
+ * @returns {Array} An array of shived element node names.
+ */
+ function getElements() {
+ var elements = html5.elements;
+ return typeof elements == 'string' ? elements.split(' ') : elements;
+ }
+
+ /**
+ * Returns the data associated to the given document
+ * @private
+ * @param {Document} ownerDocument The document.
+ * @returns {Object} An object of data.
+ */
+ function getExpandoData(ownerDocument) {
+ var data = expandoData[ownerDocument[expando]];
+ if (!data) {
+ data = {};
+ expanID++;
+ ownerDocument[expando] = expanID;
+ expandoData[expanID] = data;
+ }
+ return data;
+ }
+
+ /**
+ * returns a shived element for the given nodeName and document
+ * @memberOf html5
+ * @param {String} nodeName name of the element
+ * @param {Document} ownerDocument The context document.
+ * @returns {Object} The shived element.
+ */
+ function createElement(nodeName, ownerDocument, data){
+ if (!ownerDocument) {
+ ownerDocument = document;
+ }
+ if(supportsUnknownElements){
+ return ownerDocument.createElement(nodeName);
+ }
+ if (!data) {
+ data = getExpandoData(ownerDocument);
+ }
+ var node;
+
+ if (data.cache[nodeName]) {
+ node = data.cache[nodeName].cloneNode();
+ } else if (saveClones.test(nodeName)) {
+ node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode();
+ } else {
+ node = data.createElem(nodeName);
+ }
+
+ // Avoid adding some elements to fragments in IE < 9 because
+ // * Attributes like `name` or `type` cannot be set/changed once an element
+ // is inserted into a document/fragment
+ // * Link elements with `src` attributes that are inaccessible, as with
+ // a 403 response, will cause the tab/window to crash
+ // * Script elements appended to fragments will execute when their `src`
+ // or `text` property is set
+ return node.canHaveChildren && !reSkip.test(nodeName) ? data.frag.appendChild(node) : node;
+ }
+
+ /**
+ * returns a shived DocumentFragment for the given document
+ * @memberOf html5
+ * @param {Document} ownerDocument The context document.
+ * @returns {Object} The shived DocumentFragment.
+ */
+ function createDocumentFragment(ownerDocument, data){
+ if (!ownerDocument) {
+ ownerDocument = document;
+ }
+ if(supportsUnknownElements){
+ return ownerDocument.createDocumentFragment();
+ }
+ data = data || getExpandoData(ownerDocument);
+ var clone = data.frag.cloneNode(),
+ i = 0,
+ elems = getElements(),
+ l = elems.length;
+ for(;i<l;i++){
+ clone.createElement(elems[i]);
+ }
+ return clone;
+ }
+
+ /**
+ * Shivs the `createElement` and `createDocumentFragment` methods of the document.
+ * @private
+ * @param {Document|DocumentFragment} ownerDocument The document.
+ * @param {Object} data of the document.
+ */
+ function shivMethods(ownerDocument, data) {
+ if (!data.cache) {
+ data.cache = {};
+ data.createElem = ownerDocument.createElement;
+ data.createFrag = ownerDocument.createDocumentFragment;
+ data.frag = data.createFrag();
+ }
+
+
+ ownerDocument.createElement = function(nodeName) {
+ //abort shiv
+ if (!html5.shivMethods) {
+ return data.createElem(nodeName);
+ }
+ return createElement(nodeName, ownerDocument, data);
+ };
+
+ ownerDocument.createDocumentFragment = Function('h,f', 'return function(){' +
+ 'var n=f.cloneNode(),c=n.createElement;' +
+ 'h.shivMethods&&(' +
+ // unroll the `createElement` calls
+ getElements().join().replace(/\w+/g, function(nodeName) {
+ data.createElem(nodeName);
+ data.frag.createElement(nodeName);
+ return 'c("' + nodeName + '")';
+ }) +
+ ');return n}'
+ )(html5, data.frag);
+ }
+
+ /*--------------------------------------------------------------------------*/
+
+ /**
+ * Shivs the given document.
+ * @memberOf html5
+ * @param {Document} ownerDocument The document to shiv.
+ * @returns {Document} The shived document.
+ */
+ function shivDocument(ownerDocument) {
+ if (!ownerDocument) {
+ ownerDocument = document;
+ }
+ var data = getExpandoData(ownerDocument);
+
+ if (html5.shivCSS && !supportsHtml5Styles && !data.hasCSS) {
+ data.hasCSS = !!addStyleSheet(ownerDocument,
+ // corrects block display not defined in IE6/7/8/9
+ 'article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}' +
+ // adds styling not present in IE6/7/8/9
+ 'mark{background:#FF0;color:#000}'
+ );
+ }
+ if (!supportsUnknownElements) {
+ shivMethods(ownerDocument, data);
+ }
+ return ownerDocument;
+ }
+
+ /*--------------------------------------------------------------------------*/
+
+ /**
+ * The `html5` object is exposed so that more elements can be shived and
+ * existing shiving can be detected on iframes.
+ * @type Object
+ * @example
+ *
+ * // options can be changed before the script is included
+ * html5 = { 'elements': 'mark section', 'shivCSS': false, 'shivMethods': false };
+ */
+ var html5 = {
+
+ /**
+ * An array or space separated string of node names of the elements to shiv.
+ * @memberOf html5
+ * @type Array|String
+ */
+ 'elements': options.elements || 'abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video',
+
+ /**
+ * A flag to indicate that the HTML5 style sheet should be inserted.
+ * @memberOf html5
+ * @type Boolean
+ */
+ 'shivCSS': (options.shivCSS !== false),
+
+ /**
+ * Is equal to true if a browser supports creating unknown/HTML5 elements
+ * @memberOf html5
+ * @type boolean
+ */
+ 'supportsUnknownElements': supportsUnknownElements,
+
+ /**
+ * A flag to indicate that the document's `createElement` and `createDocumentFragment`
+ * methods should be overwritten.
+ * @memberOf html5
+ * @type Boolean
+ */
+ 'shivMethods': (options.shivMethods !== false),
+
+ /**
+ * A string to describe the type of `html5` object ("default" or "default print").
+ * @memberOf html5
+ * @type String
+ */
+ 'type': 'default',
+
+ // shivs the document according to the specified `html5` object options
+ 'shivDocument': shivDocument,
+
+ //creates a shived element
+ createElement: createElement,
+
+ //creates a shived documentFragment
+ createDocumentFragment: createDocumentFragment
+ };
+
+ /*--------------------------------------------------------------------------*/
+
+ // expose html5
+ window.html5 = html5;
+
+ // shiv the document
+ shivDocument(document);
+
+ }(this, document));
+ /*>>shiv*/
+
+ // Assign private properties to the return object with prefix
+ Modernizr._version = version;
+
+ // expose these for the plugin API. Look in the source for how to join() them against your input
+ /*>>prefixes*/
+ Modernizr._prefixes = prefixes;
+ /*>>prefixes*/
+ /*>>domprefixes*/
+ Modernizr._domPrefixes = domPrefixes;
+ Modernizr._cssomPrefixes = cssomPrefixes;
+ /*>>domprefixes*/
+
+ /*>>mq*/
+ // Modernizr.mq tests a given media query, live against the current state of the window
+ // A few important notes:
+ // * If a browser does not support media queries at all (eg. oldIE) the mq() will always return false
+ // * A max-width or orientation query will be evaluated against the current state, which may change later.
+ // * You must specify values. Eg. If you are testing support for the min-width media query use:
+ // Modernizr.mq('(min-width:0)')
+ // usage:
+ // Modernizr.mq('only screen and (max-width:768)')
+ Modernizr.mq = testMediaQuery;
+ /*>>mq*/
+
+ /*>>hasevent*/
+ // Modernizr.hasEvent() detects support for a given event, with an optional element to test on
+ // Modernizr.hasEvent('gesturestart', elem)
+ Modernizr.hasEvent = isEventSupported;
+ /*>>hasevent*/
+
+ /*>>testprop*/
+ // Modernizr.testProp() investigates whether a given style property is recognized
+ // Note that the property names must be provided in the camelCase variant.
+ // Modernizr.testProp('pointerEvents')
+ Modernizr.testProp = function(prop){
+ return testProps([prop]);
+ };
+ /*>>testprop*/
+
+ /*>>testallprops*/
+ // Modernizr.testAllProps() investigates whether a given style property,
+ // or any of its vendor-prefixed variants, is recognized
+ // Note that the property names must be provided in the camelCase variant.
+ // Modernizr.testAllProps('boxSizing')
+ Modernizr.testAllProps = testPropsAll;
+ /*>>testallprops*/
+
+
+ /*>>teststyles*/
+ // Modernizr.testStyles() allows you to add custom styles to the document and test an element afterwards
+ // Modernizr.testStyles('#modernizr { position:absolute }', function(elem, rule){ ... })
+ Modernizr.testStyles = injectElementWithStyles;
+ /*>>teststyles*/
+
+
+ /*>>prefixed*/
+ // Modernizr.prefixed() returns the prefixed or nonprefixed property name variant of your input
+ // Modernizr.prefixed('boxSizing') // 'MozBoxSizing'
+
+ // Properties must be passed as dom-style camelcase, rather than `box-sizing` hypentated style.
+ // Return values will also be the camelCase variant, if you need to translate that to hypenated style use:
+ //
+ // str.replace(/([A-Z])/g, function(str,m1){ return '-' + m1.toLowerCase(); }).replace(/^ms-/,'-ms-');
+
+ // If you're trying to ascertain which transition end event to bind to, you might do something like...
+ //
+ // var transEndEventNames = {
+ // 'WebkitTransition' : 'webkitTransitionEnd',
+ // 'MozTransition' : 'transitionend',
+ // 'OTransition' : 'oTransitionEnd',
+ // 'msTransition' : 'MSTransitionEnd',
+ // 'transition' : 'transitionend'
+ // },
+ // transEndEventName = transEndEventNames[ Modernizr.prefixed('transition') ];
+
+ Modernizr.prefixed = function(prop, obj, elem){
+ if(!obj) {
+ return testPropsAll(prop, 'pfx');
+ } else {
+ // Testing DOM property e.g. Modernizr.prefixed('requestAnimationFrame', window) // 'mozRequestAnimationFrame'
+ return testPropsAll(prop, obj, elem);
+ }
+ };
+ /*>>prefixed*/
+
+
+ /*>>cssclasses*/
+ // Remove "no-js" class from <html> element, if it exists:
+ docElement.className = docElement.className.replace(/(^|\s)no-js(\s|$)/, '$1$2') +
+
+ // Add the new classes to the <html> element.
+ (enableClasses ? ' js ' + classes.join(' ') : '');
+ /*>>cssclasses*/
+
+ return Modernizr;
+
+})(this, this.document);
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996modernizr262minjs"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.min.js (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.min.js (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/modernizr-2.6.2.min.js 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+/* Modernizr 2.6.2 (Custom Build) | MIT & BSD
+ * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
+ */
+;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pat
tern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o
="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden"),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,nu
ll):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(th
is instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.web
sqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgr
oundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("pe
rspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=
new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStora
ge.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,type
of f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));var g;return f.cache[a]?g=f.cache[a].cloneNode():e.test(a)?g=(f.cache[a]=f.createElem(a)).cloneNode():g=f.createElem(a),g.canHaveChildren&&!d.test(a)?f.frag.appendChild(g):g}function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a);var d=c.frag.cloneNode(),e=0,f=l(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function p(a,b){b.ca
che||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?n(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+l().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.hasCSS=!!k(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),j||p(a,c),a}var c=a.html5||{},d=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,g="_html5shiv",h=0,i={},j;(function(){try{var a=b.createElement(&qu
ot;a");a.innerHTML="<xyz></xyz>",f="hidden"in a,j=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){f=!0,j=!0}})();var r={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,supportsUnknownElements:j,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:q,createElement:n,createDocumentFragment:o};a.html5=r,q(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace
(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechang
e=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c
,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&
;(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src
=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996normalizecss"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/normalize.css (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/normalize.css (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/normalize.css 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,527 @@
</span><ins>+/*! normalize.css v1.1.0 | MIT License | git.io/normalize */
+
+/* ==========================================================================
+ HTML5 display definitions
+ ========================================================================== */
+
+/**
+ * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
+ */
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+nav,
+section,
+summary {
+ display: block;
+}
+
+/**
+ * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
+ */
+
+audio,
+canvas,
+video {
+ display: inline-block;
+ *display: inline;
+ *zoom: 1;
+}
+
+/**
+ * Prevent modern browsers from displaying `audio` without controls.
+ * Remove excess height in iOS 5 devices.
+ */
+
+audio:not([controls]) {
+ display: none;
+ height: 0;
+}
+
+/**
+ * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
+ * Known issue: no IE 6 support.
+ */
+
+[hidden] {
+ display: none;
+}
+
+/* ==========================================================================
+ Base
+ ========================================================================== */
+
+/**
+ * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
+ * `em` units.
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
+ * user zoom.
+ */
+
+html {
+ font-size: 100%; /* 1 */
+ -webkit-text-size-adjust: 100%; /* 2 */
+ -ms-text-size-adjust: 100%; /* 2 */
+}
+
+/**
+ * Address `font-family` inconsistency between `textarea` and other form
+ * elements.
+ */
+
+html,
+button,
+input,
+select,
+textarea {
+ font-family: sans-serif;
+}
+
+/**
+ * Address margins handled incorrectly in IE 6/7.
+ */
+
+body {
+ margin: 0;
+}
+
+/* ==========================================================================
+ Links
+ ========================================================================== */
+
+/**
+ * Address `outline` inconsistency between Chrome and other browsers.
+ */
+
+a:focus {
+ outline: thin dotted;
+}
+
+/**
+ * Improve readability when focused and also mouse hovered in all browsers.
+ */
+
+a:active,
+a:hover {
+ outline: 0;
+}
+
+/* ==========================================================================
+ Typography
+ ========================================================================== */
+
+/**
+ * Address font sizes and margins set differently in IE 6/7.
+ * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
+ * and Chrome.
+ */
+
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0;
+}
+
+h2 {
+ font-size: 1.5em;
+ margin: 0.83em 0;
+}
+
+h3 {
+ font-size: 1.17em;
+ margin: 1em 0;
+}
+
+h4 {
+ font-size: 1em;
+ margin: 1.33em 0;
+}
+
+h5 {
+ font-size: 0.83em;
+ margin: 1.67em 0;
+}
+
+h6 {
+ font-size: 0.67em;
+ margin: 2.33em 0;
+}
+
+/**
+ * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
+ */
+
+abbr[title] {
+ border-bottom: 1px dotted;
+}
+
+/**
+ * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
+ */
+
+b,
+strong {
+ font-weight: bold;
+}
+
+blockquote {
+ margin: 1em 40px;
+}
+
+/**
+ * Address styling not present in Safari 5 and Chrome.
+ */
+
+dfn {
+ font-style: italic;
+}
+
+/**
+ * Address differences between Firefox and other browsers.
+ * Known issue: no IE 6/7 normalization.
+ */
+
+hr {
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+ height: 0;
+}
+
+/**
+ * Address styling not present in IE 6/7/8/9.
+ */
+
+mark {
+ background: #ff0;
+ color: #000;
+}
+
+/**
+ * Address margins set differently in IE 6/7.
+ */
+
+p,
+pre {
+ margin: 1em 0;
+}
+
+/**
+ * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
+ */
+
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, serif;
+ _font-family: 'courier new', monospace;
+ font-size: 1em;
+}
+
+/**
+ * Improve readability of pre-formatted text in all browsers.
+ */
+
+pre {
+ white-space: pre;
+ white-space: pre-wrap;
+ word-wrap: break-word;
+}
+
+/**
+ * Address CSS quotes not supported in IE 6/7.
+ */
+
+q {
+ quotes: none;
+}
+
+/**
+ * Address `quotes` property not supported in Safari 4.
+ */
+
+q:before,
+q:after {
+ content: '';
+ content: none;
+}
+
+/**
+ * Address inconsistent and variable font size in all browsers.
+ */
+
+small {
+ font-size: 80%;
+}
+
+/**
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
+ */
+
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+}
+
+sup {
+ top: -0.5em;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+/* ==========================================================================
+ Lists
+ ========================================================================== */
+
+/**
+ * Address margins set differently in IE 6/7.
+ */
+
+dl,
+menu,
+ol,
+ul {
+ margin: 1em 0;
+}
+
+dd {
+ margin: 0 0 0 40px;
+}
+
+/**
+ * Address paddings set differently in IE 6/7.
+ */
+
+menu,
+ol,
+ul {
+ padding: 0 0 0 40px;
+}
+
+/**
+ * Correct list images handled incorrectly in IE 7.
+ */
+
+nav ul,
+nav ol {
+ list-style: none;
+ list-style-image: none;
+}
+
+/* ==========================================================================
+ Embedded content
+ ========================================================================== */
+
+/**
+ * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
+ * 2. Improve image quality when scaled in IE 7.
+ */
+
+img {
+ border: 0; /* 1 */
+ -ms-interpolation-mode: bicubic; /* 2 */
+}
+
+/**
+ * Correct overflow displayed oddly in IE 9.
+ */
+
+svg:not(:root) {
+ overflow: hidden;
+}
+
+/* ==========================================================================
+ Figures
+ ========================================================================== */
+
+/**
+ * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
+ */
+
+figure {
+ margin: 0;
+}
+
+/* ==========================================================================
+ Forms
+ ========================================================================== */
+
+/**
+ * Correct margin displayed oddly in IE 6/7.
+ */
+
+form {
+ margin: 0;
+}
+
+/**
+ * Define consistent border, margin, and padding.
+ */
+
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em;
+}
+
+/**
+ * 1. Correct color not being inherited in IE 6/7/8/9.
+ * 2. Correct text not wrapping in Firefox 3.
+ * 3. Correct alignment displayed oddly in IE 6/7.
+ */
+
+legend {
+ border: 0; /* 1 */
+ padding: 0;
+ white-space: normal; /* 2 */
+ *margin-left: -7px; /* 3 */
+}
+
+/**
+ * 1. Correct font size not being inherited in all browsers.
+ * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
+ * and Chrome.
+ * 3. Improve appearance and consistency in all browsers.
+ */
+
+button,
+input,
+select,
+textarea {
+ font-size: 100%; /* 1 */
+ margin: 0; /* 2 */
+ vertical-align: baseline; /* 3 */
+ *vertical-align: middle; /* 3 */
+}
+
+/**
+ * Address Firefox 3+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet.
+ */
+
+button,
+input {
+ line-height: normal;
+}
+
+/**
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
+ * All other form control elements do not inherit `text-transform` values.
+ * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
+ * Correct `select` style inheritance in Firefox 4+ and Opera.
+ */
+
+button,
+select {
+ text-transform: none;
+}
+
+/**
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
+ * and `video` controls.
+ * 2. Correct inability to style clickable `input` types in iOS.
+ * 3. Improve usability and consistency of cursor style between image-type
+ * `input` and others.
+ * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
+ * Known issue: inner spacing remains in IE 6.
+ */
+
+button,
+html input[type="button"], /* 1 */
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button; /* 2 */
+ cursor: pointer; /* 3 */
+ *overflow: visible; /* 4 */
+}
+
+/**
+ * Re-set default cursor for disabled elements.
+ */
+
+button[disabled],
+html input[disabled] {
+ cursor: default;
+}
+
+/**
+ * 1. Address box sizing set to content-box in IE 8/9.
+ * 2. Remove excess padding in IE 8/9.
+ * 3. Remove excess padding in IE 7.
+ * Known issue: excess padding remains in IE 6.
+ */
+
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
+ *height: 13px; /* 3 */
+ *width: 13px; /* 3 */
+}
+
+/**
+ * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
+ * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
+ * (include `-moz` to future-proof).
+ */
+
+input[type="search"] {
+ -webkit-appearance: textfield; /* 1 */
+ -moz-box-sizing: content-box;
+ -webkit-box-sizing: content-box; /* 2 */
+ box-sizing: content-box;
+}
+
+/**
+ * Remove inner padding and search cancel button in Safari 5 and Chrome
+ * on OS X.
+ */
+
+input[type="search"]::-webkit-search-cancel-button,
+input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+/**
+ * Remove inner padding and border in Firefox 3+.
+ */
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0;
+}
+
+/**
+ * 1. Remove default vertical scrollbar in IE 6/7/8/9.
+ * 2. Improve readability and alignment in all browsers.
+ */
+
+textarea {
+ overflow: auto; /* 1 */
+ vertical-align: top; /* 2 */
+}
+
+/* ==========================================================================
+ Tables
+ ========================================================================== */
+
+/**
+ * Remove most spacing between table cells.
+ */
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996sketchsheets996_sketchpdf"></a>
<div class="binary"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/996_sketch.pdf</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Index: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/996_sketch.pdf
</span><span class="cx">===================================================================
</span><del>--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/996_sketch.pdf 2013-09-24 16:24:09 UTC (rev 87)
</del><ins>+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/996_sketch.pdf 2013-10-02 08:41:51 UTC (rev 88)
</ins><span class="cx">Property changes on: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/sketch-sheets/996_sketch.pdf
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<ins>+application/octet-stream
</ins><span class="cx">\ No newline at end of property
</span><a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996stylecss"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/style.css (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/style.css (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/style.css 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+/*
+Responsive 996px grid system ~ Style CSS.
+Copyright 2013, Josh Cope
+*/
+
+/* =============================================================================
+ Site Styles
+ ========================================================================== */
+
+/* =============================================================================
+ Page Styles
+ ========================================================================== */
+
+/* =============================================================================
+ Media Queries
+ ========================================================================== */
+
+/* Tablet Portrait size to Base 996px */
+@media only screen and (min-width: 768px) and (max-width: 995px) {}
+
+/* All Mobile Sizes */
+@media only screen and (max-width: 767px) {}
+
+/* Mobile Landscape Size to Tablet Portrait */
+@media only screen and (min-width: 480px) and (max-width: 767px) {}
+
+/* Mobile Portrait Size to Mobile Landscape Size */
+@media only screen and (max-width: 479px) {}
+
+
+/* =============================================================================
+ Font-Face
+ ========================================================================== */
+/* This is the proper syntax for an @font-face file
+
+/* @font-face {
+font-family: 'FontName';
+src: url('../fonts/FontName.eot');
+src: url('../fonts/FontName.eot?iefix') format('embedded-opentype'),
+url('../fonts/FontName.woff') format('woff'),
+url('../fonts/FontName.ttf') format('truetype'),
+url('../fonts/FontName.svg#FontName') format('svg');
+font-weight: normal;
+font-style: normal; }
+*/
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="sitestrunkjobswordpressnetpublic_htmlwpcontentthemesjobswpcss996templatesIllustrator996_gridai"></a>
<div class="addfile"><h4>Added: sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Illustrator/996_grid.ai (0 => 88)</h4>
<pre class="diff"><span>
<span class="info">--- sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Illustrator/996_grid.ai (rev 0)
+++ sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/css/996/templates/Illustrator/996_grid.ai 2013-10-02 08:41:51 UTC (rev 88)
</span><span class="lines">@@ -0,0 +1,1191 @@
</span><ins>+%PDF-1.5
+%\xE2\xE3\xCF\xD3
+1 0 obj
+<</Metadata 2 0 R/OCProperties<</D<</ON[5 0 R 6 0 R 7 0 R]/Order 8 0 R/RBGroups[]>>/OCGs[5 0 R 6 0 R 7 0 R]>>/Pages 3 0 R/Type/Catalog>>
+endobj
+2 0 obj
+<</Length 30036/Subtype/XML/Type/Metadata>>stream
+<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00 ">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+ <rdf:Description rdf:about=""
+ xmlns:xmp="http://ns.adobe.com/xap/1.0/"
+ xmlns:xmpGImg="http://ns.adobe.com/xap/1.0/g/img/">
+ <xmp:CreateDate>2012-02-27T16:49:47-04:00</xmp:CreateDate>
+ <xmp:ModifyDate>2012-02-27T16:49:47-05:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2012-02-27T16:49:47-05:00</xmp:MetadataDate>
+ <xmp:CreatorTool>Adobe Illustrator CS5.1</xmp:CreatorTool>
+ <xmp:Thumbnails>
+ <rdf:Alt>
+ <rdf:li rdf:parseType="Resource">
+ <xmpGImg:width>236</xmpGImg:width>
+ <xmpGImg:height>256</xmpGImg:height>
+ <xmpGImg:format>JPEG</xmpGImg:format>
+ <xmpGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA
AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK
DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f
Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAADsAwER
AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB
UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE
1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ
qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy
obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp
0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo
+DlJWWl5iZmpucnZ6fkqOkp
aanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9I5U56tZ/wC9CfT+o4Y8
2vL9KtqP+6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVbX/AHoT5/wwjmwyfSURqHRPpyUm
rB1QWQchMbL/AHnX5n9eWR5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzO
TjycXL9SAf7bfM5ByRyXW/8Afp/rDCET5FFah/dr8/4ZKTRh5oHIOSmFj/cH/WOTi4ubmgZf7x/m
f15AuTHk3D/fR/6w/XhCJ8ijL/8AuR/rD9RyUmjDzQGQclH2H9yf9Y/qGTi42bmg5v76T/WP68iW
+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrWf+9CfT+o4Y82vL9Ktq
P+6/p/hhk14OqDyLkJlZ/wC86fT+s5ZHk4mX6ktyty1W1/3oT5/wwjmwyfSURqHRPpyUmrB1QWQc
hMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5ByExsv7gfM5OPJxcv1I
B/tt8zkHJHJdb/36f6wwhE+RRWof3a/P+GSk0YeaByDkphY/3B/1jk4uLm5oGX+8f5n9eQLkx5Nw
/wB9H/rD9eEInyKMv/7kf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX94nz
H68ATLkjr7+4H+sMnJxsPNL8g5Sp/wAe3+z/AIYejD+L4KeBmrWf+9CfT+o4Y82vL9KtqP8Auv6f
4YZNeDqg8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/3oT5/wwjmwyfSURqHRPpyUmrB1QWQchMbL/ed

fmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5ByExsv7gfM5OPJxcv1IB/tt8zk
HJHJdb/36f6wwhE+RRWof3a/P+GSk0YeaByDkphY/wBwf9Y5OLi5uaBl/vH+Z/XkC5MeTcP99H/r
D9eEInyKMv8A+5H+sP1HJSaMPNAZByUfYf3J/wBY/qGTi42bmg5v76T/AFj+vIlvhyDUX94nzH68
ATLkjr7+4H+sMnJxsPNL8g5Sp/x7f7P+GHow/i+CngZq1n/vQn0/qOGPNry/Sraj/uv6f4YZNeDq
g8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/3oT5/wAMI5sMn0lEah0T6clJqwdUFkHITGy/3nX5n9eW
R5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW
/wDfp/rDCET5FFah/dr8/wCGSk0YeaByDkphY/3B/wBY5OLi5uaBl/vH+Z/XkC5MeTcP99H/AKw/
XhCJ8ijL/wDuR/rD9RyUmjDzQGQclH2H9yf9Y/qGTi42bmg5v76T/WP68iW+HINRf3ifMfrwBMuS
Ovv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrWf8AvQn0/qOGPNry/Sraj/uv6f4YZNeDqg8i
5CZWf+86fT+s5ZHk4mX6ktyty1W1/wB6E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/wB51+Z/Xlke
TiZfqS89TlblBUtv79PnhHNjk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v/
AH6f6wwhE+RRWof3a/P+GSk0YeaByDkphY/3B/1jk4uLm5oGX+8f5n9eQLkx5N
w/30f+sP14QifI
oy//ALkf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX94nzH68ATLkjr7+4H
+sMnJxsPNL8g5Sp/x7f7P+GHow/i+CngZq1n/vQn0/qOGPNry/Sraj/uv6f4YZNeDqg8i5CZWf8A
vOn0/rOWR5OJl+pLcrctVtf96E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/3nX5n9eWR5OJl+pLz1
OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW/9+n+sMIRP
kUVqH92vz/hkpNGHmgcg5KYWP9wf9Y5OLi5uaBl/vH+Z/XkC5MeTcP8AfR/6w/XhCJ8ijL/+5H+s
P1HJSaMPNAZByUfYf3J/1j+oZOLjZuaDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJycbDzS
/IOUqf8AHt/s/wCGHow/i+CngZq1n/vQn0/qOGPNry/Sraj/ALr+n+GGTXg6oPIuQmVn/vOn0/rO
WR5OJl+pLcrctVtf96E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/3nX5n9eWR5OJl+pLz1OVuUFS2
/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW/9+n+sMIRPkUVqH92
vz/hkpNGHmgcg5KYWP8AcH/WOTi4ubmgZf7x/mf15AuTHk3D/fR/6w/XhCJ8ijL/APuR/rD9RyUm
jDzQGQclH2H9yf8AWP6hk4uNm5oOb++k/wBY/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJycbDzS/IO
Uqf8e3+z/hh6MP4vgp4GatZ/70J9P6jhjza8v0q
2o/7r+n+GGTXg6oPIuQmVn/vOn0/rOWR5OJl+
pLcrctVtf96E+f8ADCObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfqS89TlblBUtv79Pnh
HNjk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v8A36f6wwhE+RRWof3a/P8A
hkpNGHmgcg5KYWP9wf8AWOTi4ubmgZf7x/mf15AuTHk3D/fR/wCsP14QifIoy/8A7kf6w/UclJow
80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX94nzH68ATLkjr7+4H+sMnJxsPNL8g5Sp/x
7f7P+GHow/i+CngZq1n/AL0J9P6jhjza8v0q2o/7r+n+GGTXg6oPIuQmVn/vOn0/rOWR5OJl+pLc
rctVtf8AehPn/DCObDJ9JRGodE+nJSasHVBZByExsv8Aedfmf15ZHk4mX6kvPU5W5QVLb+/T54Rz
Y5PpKJ1D7CfPJSasPNA5ByExsv7gfM5OPJxcv1IB/tt8zkHJHJdb/wB+n+sMIRPkUVqH92vz/hkp
NGHmgcg5KYWP9wf9Y5OLi5uaBl/vH+Z/XkC5MeTcP99H/rD9eEInyKMv/wC5H+sP1HJSaMPNAZBy
UfYf3J/1j+oZOLjZuaDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJycbDzS/IOUqf8e3+z/h
h6MP4vgp4GatZ/70J9P6jhjza8v0q2o/7r+n+GGTXg6oPIuQmVn/ALzp9P6zlkeTiZfqS3K3LVbX
/ehPn/DCObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfqS89TlblBUtv79PnhHNjk+konUP
sJ88lJqw80DkHITG
y/uB8zk48nFy/UgH+23zOQckcl1v/fp/rDCET5FFah/dr8/4ZKTRh5oHIOSm
Fj/cH/WOTi4ubmgZf7x/mf15AuTHk3D/AH0f+sP14QifIoy//uR/rD9RyUmjDzQGQclH2H9yf9Y/
qGTi42bmg5v76T/WP68iW+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/AB7f7P8Ahh6MP4vg
p4GatZ/70J9P6jhjza8v0q2o/wC6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVbX/ehPn/D
CObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfqS89TlblBUtv79PnhHNjk+konUPsJ88lJq
w80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v/fp/rDCET5FFah/dr8/4ZKTRh5oHIOSmFj/AHB/
1jk4uLm5oGX+8f5n9eQLkx5Nw/30f+sP14QifIoy/wD7kf6w/UclJow80BkHJR9h/cn/AFj+oZOL
jZuaDm/vpP8AWP68iW+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrW
f+9CfT+o4Y82vL9KtqP+6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVbX/ehPn/AAwjmwyf
SURqHRPpyUmrB1QWQchMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5B
yExsv7gfM5OPJxcv1IB/tt8zkHJHJdb/AN+n+sMIRPkUVqH92vz/AIZKTRh5oHIOSmFj/cH/AFjk
4uLm5oGX+8f5n9eQLkx5Nw/30f8ArD9eEInyKMv/AO5H+sP1HJSaMPNAZByUfYf3J/1j+oZOLjZu&a
mp;#xA;aDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJycbDzS/IOUqf8e3+z/hh6MP4vgp4GatZ/wC9
CfT+o4Y82vL9KtqP+6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVbX/AHoT5/wwjmwyfSUR
qHRPpyUmrB1QWQchMbL/AHnX5n9eWR5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQch
MbL+4HzOTjycXL9SAf7bfM5ByRyXW/8Afp/rDCET5FFah/dr8/4ZKTRh5oHIOSmFj/cH/WOTi4ub
mgZf7x/mf15AuTHk3D/fR/6w/XhCJ8ijL/8AuR/rD9RyUmjDzQGQclH2H9yf9Y/qGTi42bmg5v76
T/WP68iW+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrWf+9CfT+o4Y
82vL9KtqP+6/p/hhk14OqDyLkJlZ/wC86fT+s5ZHk4mX6ktyty1W1/3oT5/wwjmwyfSURqHRPpyU
mrB1QWQchMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5ByExsv7gfM5
OPJxcv1IB/tt8zkHJHJdb/36f6wwhE+RRWof3a/P+GSk0YeaByDkphY/3B/1jk4uLm5oGX+8f5n9
eQLkx5Nw/wB9H/rD9eEInyKMv/7kf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvh
yDUX94nzH68ATLkjr7+4H+sMnJxsPNL8g5Sp/wAe3+z/AIYejD+L4KeBmrWf+9CfT+o4Y82vL9Kt
qP8Auv6f4YZNeDqg8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/3oT5/wwj
mwyfSURqHRPpyUmrB1QWQ
chMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5ByExsv7gfM5OPJxcv1
IB/tt8zkHJHJdb/36f6wwhE+RRWof3a/P+GSk0YeaByDkphY/wBwf9Y5OLi5uaBl/vH+Z/XkC5Me
TcP99H/rD9eEInyKMv8A+5H+sP1HJSaMPNAZByUfYf3J/wBY/qGTi42bmg5v76T/AFj+vIlvhyDU
X94nzH68ATLkjr7+4H+sMnJxsPNL8g5Sp/x7f7P+GHow/i+CngZq1n/vQn0/qOGPNry/Sraj/uv6
f4YZNeDqg8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/3oT5/wAMI5sMn0lEah0T6clJqwdUFkHITGy/
3nX5n9eWR5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bf
M5ByRyXW/wDfp/rDCET5FFah/dr8/wCGSk0YeaByDkphY/3B/wBY5OLi5uaBl/vH+Z/XkC5MeTcP
99H/AKw/XhCJ8ijL/wDuR/rD9RyUmjDzQGQclH2H9yf9Y/qGTi42bmg5v76T/WP68iW+HINRf3if
MfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrWf8AvQn0/qOGPNry/Sraj/uv6f4Y
ZNeDqg8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/wB6E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/wB5
1+Z/XlkeTiZfqS89TlblBUtv79PnhHNjk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zO
Qckcl1v/AH6f6wwhE+RRWof3a/P+GSk0
YeaByDkphY/3B/1jk4uLm5oGX+8f5n9eQLkx5Nw/30f+
sP14QifIoy//ALkf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX94nzH68AT
Lkjr7+4H+sMnJxsPNL8g5Sp/x7f7P+GHow/i+CngZq1n/vQn0/qOGPNry/Sraj/uv6f4YZNeDqg8
i5CZWf8AvOn0/rOWR5OJl+pLcrctVtf96E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/3nX5n9eWR5
OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW/9
+n+sMIRPkUVqH92vz/hkpNGHmgcg5KYWP9wf9Y5OLi5uaBl/vH+Z/XkC5MeTcP8AfR/6w/XhCJ8i
jL/+5H+sP1HJSaMPNAZByUfYf3J/1j+oZOLjZuaDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5I6+/uB/r
DJycbDzS/IOUqf8AHt/s/wCGHow/i+CngZq1n/vQn0/qOGPNry/Sraj/ALr+n+GGTXg6oPIuQmVn
/vOn0/rOWR5OJl+pLcrctVtf96E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/3nX5n9eWR5OJl+pLz
1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW/9+n+sMIR
PkUVqH92vz/hkpNGHmgcg5KYWP8AcH/WOTi4ubmgZf7x/mf15AuTHk3D/fR/6w/XhCJ8ijL/APuR
/rD9RyUmjDzQGQclH2H9yf8AWP6hk4uNm5oOb++k/wBY/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJy
cbDzS/IOU
qf8e3+z/hh6MP4vgp4GatZ/70J9P6jhjza8v0q2o/7r+n+GGTXg6oPIuQmVn/vOn0/r
OWR5OJl+pLcrctVtf96E+f8ADCObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfqS89TlblB
Utv79PnhHNjk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v8A36f6wwhE+RRW
of3a/P8AhkpNGHmgcg5KYWP9wf8AWOTi4ubmgZf7x/mf15AuTHk3D/fR/wCsP14QifIoy/8A7kf6
w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX94nzH68ATLkjr7+4H+sMnJxsPN
L8g5Sp/x7f7P+GHow/i+CngZq1n/AL0J9P6jhjza8v0q2o/7r+n+GGTXg6oPIuQmVn/vOn0/rOWR
5OJl+pLcrctVtf8AehPn/DCObDJ9JRGodE+nJSasHVBZByExsv8Aedfmf15ZHk4mX6kvPU5W5QVL
b+/T54RzY5PpKJ1D7CfPJSasPNA5ByExsv7gfM5OPJxcv1IB/tt8zkHJHJdb/wB+n+sMIRPkUVqH
92vz/hkpNGHmgcg5KYWP9wf9Y5OLi5uaBl/vH+Z/XkC5MeTcP99H/rD9eEInyKMv/wC5H+sP1HJS
aMPNAZByUfYf3J/1j+oZOLjZuaDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJycbDzS/IOUq
f8e3+z/hh6MP4vgp4GatZ/70J9P6jhjza8v0q2o/7r+n+GGTXg6oPIuQmVn/ALzp9P6zlkeTiZfq
S3K3LVbX/ehPn/DCObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfqS89TlblBUtv79
PnhHN
jk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v/fp/rDCET5FFah/dr8/4ZKTR
h5oHIOSmFj/cH/WOTi4ubmgZf7x/mf15AuTHk3D/AH0f+sP14QifIoy//uR/rD9RyUmjDzQGQclH
2H9yf9Y/qGTi42bmg5v76T/WP68iW+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/AB7f7P8A
hh6MP4vgp4GatZ/70J9P6jhjza8v0q2o/wC6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVb
X/ehPn/DCObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfqS89TlblBUtv79PnhHNjk+konU
PsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v/fp/rDCET5FFah/dr8/4ZKTRh5oHIOS
mFj/AHB/1jk4uLm5oGX+8f5n9eQLkx5Nw/30f+sP14QifIoy/wD7kf6w/UclJow80BkHJR9h/cn/
AFj+oZOLjZuaDm/vpP8AWP68iW+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+
L4KeBmrWf+9CfT+o4Y82vL9KtqP+6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVbX/ehPn/
AAwjmwyfSURqHRPpyUmrB1QWQchMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJ
SasPNA5ByExsv7gfM5OPJxcv1IB/tt8zkHJHJdb/AN+n+sMIRPkUVqH92vz/AIZKTRh5oHIOSmFj
/cH/AFjk4uLm5oGX+8f5n9eQLkx5Nw/30f8ArD9eEInyKMv/
AO5H+sP1HJSaMPNAZByUfYf3J/1j
+oZOLjZuaDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5I6+/uB/rDJycbDzS/IOUqf8e3+z/hh6MP4vgp4
GatZ/wC9CfT+o4Y82vL9KtqP+6/p/hhk14OqDyLkJlZ/7zp9P6zlkeTiZfqS3K3LVbX/AHoT5/ww
jmwyfSURqHRPpyUmrB1QWQchMbL/AHnX5n9eWR5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUm
rDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW/8Afp/rDCET5FFah/dr8/4ZKTRh5oHIOSmFj/cH
/WOTi4ubmgZf7x/mf15AuTHk3D/fR/6w/XhCJ8ijL/8AuR/rD9RyUmjDzQGQclH2H9yf9Y/qGTi4
2bmg5v76T/WP68iW+HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrWf+
9CfT+o4Y82vL9KtqP+6/p/hhk14OqDyLkJlZ/wC86fT+s5ZHk4mX6ktyty1W1/3oT5/wwjmwyfSU
RqHRPpyUmrB1QWQchMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5ByE
xsv7gfM5OPJxcv1IB/tt8zkHJHJdb/36f6wwhE+RRWof3a/P+GSk0YeaByDkphY/3B/1jk4uLm5o
GX+8f5n9eQLkx5Nw/wB9H/rD9eEInyKMv/7kf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/
1j+vIlvhyDUX94nzH68ATLkjr7+4H+sMnJxsPNL8g5Sp/wAe3+z/AIYejD+L4KeBmrWf+9CfT+o4
Y82vL9KtqP8Auv6f4YZNeDqg8
i5CZWf+86fT+s5ZHk4mX6ktyty1W1/3oT5/wwjmwyfSURqHRPpy
UmrB1QWQchMbL/edfmf15ZHk4mX6kvPU5W5QVLb+/T54RzY5PpKJ1D7CfPJSasPNA5ByExsv7gfM
5OPJxcv1IB/tt8zkHJHJdb/36f6wwhE+RRWof3a/P+GSk0YeaByDkphY/wBwf9Y5OLi5uaBl/vH+
Z/XkC5MeTcP99H/rD9eEInyKMv8A+5H+sP1HJSaMPNAZByUfYf3J/wBY/qGTi42bmg5v76T/AFj+
vIlvhyDUX94nzH68ATLkjr7+4H+sMnJxsPNL8g5Sp/x7f7P+GHow/i+CngZq1n/vQn0/qOGPNry/
Sraj/uv6f4YZNeDqg8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/3oT5/wAMI5sMn0lEah0T6clJqwdU
FkHITGy/3nX5n9eWR5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycX
L9SAf7bfM5ByRyXW/wDfp/rDCET5FFah/dr8/wCGSk0YeaByDkphY/3B/wBY5OLi5uaBl/vH+Z/X
kC5MeTcP99H/AKw/XhCJ8ijL/wDuR/rD9RyUmjDzQGQclH2H9yf9Y/qGTi42bmg5v76T/WP68iW+
HINRf3ifMfrwBMuSOvv7gf6wycnGw80vyDlKn/Ht/s/4YejD+L4KeBmrWf8AvQn0/qOGPNry/Sra
j/uv6f4YZNeDqg8i5CZWf+86fT+s5ZHk4mX6ktyty1W1/wB6E+f8MI5sMn0lEah0T6clJqwdUFkH
ITGy/wB51+Z/XlkeTiZfqS89TlblBUtv79PnhHNjk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/
Ug
H+23zOQckcl1v/AH6f6wwhE+RRWof3a/P+GSk0YeaByDkphY/3B/1jk4uLm5oGX+8f5n9eQLkx
5Nw/30f+sP14QifIoy//ALkf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX9
4nzH68ATLkjr7+4H+sMnJxsPNL8g5Sp/x7f7P+GHow/i+CngZq1n/vQn0/qOGPNry/Sraj/uv6f4
YZNeDqg8i5CZWf8AvOn0/rOWR5OJl+pLcrctVtf96E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/3n
X5n9eWR5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5
ByRyXW/9+n+sMIRPkUVqH92vz/hkpNGHmgcg5KYWP9wf9Y5OLi5uaBl/vH+Z/XkC5MeTcP8AfR/6
w/XhCJ8ijL/+5H+sP1HJSaMPNAZByUfYf3J/1j+oZOLjZuaDm/vpP9Y/ryJb4cg1F/eJ8x+vAEy5
I6+/uB/rDJycbDzS/IOUqf8AHt/s/wCGHow/i+CngZq1n/vQn0/qOGPNry/Sraj/ALr+n+GGTXg6
oPIuQmVn/vOn0/rOWR5OJl+pLcrctVtf96E+f8MI5sMn0lEah0T6clJqwdUFkHITGy/3nX5n9eWR
5OJl+pLz1OVuUFS2/v0+eEc2OT6SidQ+wnzyUmrDzQOQchMbL+4HzOTjycXL9SAf7bfM5ByRyXW/
9+n+sMIRPkUVqH92vz/hkpNGHmgcg5KYWP8AcH/WOTi4ubmgZf7x/mf15AuTHk3D/fR/6w/XhCJ8
ijL/APuR/rD9RyUmjDzQGQclH2H9yf8AWP6hk4uNm5oOb++k/wBY/ryJb4cg1F/e
J8x+vAEy5I6+
/uB/rDJycbDzS/IOUqf8e3+z/hh6MP4vgp4GatZ/70J9P6jhjza8v0q2o/7r+n+GGTXg6oPIuQmV
n/vOn0/rOWR5OJl+pLcrctVtf96E+f8ADCObDJ9JRGodE+nJSasHVBZByExsv951+Z/XlkeTiZfq
S89TlblBUtv79PnhHNjk+konUPsJ88lJqw80DkHITGy/uB8zk48nFy/UgH+23zOQckcl1v8A36f6
wwhE+RRWof3a/P8AhkpNGHmgcg5KYWP9wf8AWOTi4ubmgZf7x/mf15AuTHk3D/fR/wCsP14QifIo
y/8A7kf6w/UclJow80BkHJR9h/cn/WP6hk4uNm5oOb++k/1j+vIlvhyDUX94nzH68ATLkjr7+4H+
sMnJxsPNL8g5Sp/x7f7P+GHow/i+D//Z</xmpGImg:image>
+ </rdf:li>
+ </rdf:Alt>
+ </xmp:Thumbnails>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <dc:format>application/pdf</dc:format>
+ <dc:title>
+ <rdf:Alt>
+ <rdf:li xml:lang="x-default">996_grid</rdf:li>
+ </rdf:Alt>
+ </dc:title>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
+ xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#"
+ xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#">
+ <xmpMM:DocumentID>xmp.did:D95F6DCA8C61E111A0B3CC2E1D6B62C1</xmpMM:DocumentID>
+ <xmpMM:InstanceID>uuid:b0fef28c-6673-4c40-a377-bc57a9603f66</xmpMM:InstanceID>
+ <xmpMM:OriginalDocumentID>xmp.did:F77F1174072068118083EB83C62BD7C1</xmpMM:OriginalDocumentID>
+ <xmpMM:RenditionClass>proof:pdf</xmpMM:RenditionClass>
+ <xmpMM:History>
+ <rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>converted</stEvt:action>
+ <stEvt:parameters>from image/png to application/vnd.adobe.photoshop</stEvt:parameters>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:F77F1174072068118083EB83C62BD7C1</stEvt:instanceID>
+ <stEvt:when>2010-07-02T18:00:06-05:00</stEvt:when>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>converted</stEvt:action>
+ <stEvt:parameters>from image/png to application/vnd.adobe.photoshop</stEvt:parameters>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:F87F1174072068118083EB83C62BD7C1</stEvt:instanceID>
+ <stEvt:when>2010-07-02T18:00:06-05:00</stEvt:when>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:0480117407206811AA7A88BFDFE214F0</stEvt:instanceID>
+ <stEvt:when>2010-12-02T11:25:47-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:01801174072068118DBB9F306C45F515</stEvt:instanceID>
+ <stEvt:when>2010-12-13T12:04:27-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:02801174072068118DBB9F306C45F515</stEvt:instanceID>
+ <stEvt:when>2010-12-13T12:04:27-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:05801174072068118DBB9F306C45F515</stEvt:instanceID>
+ <stEvt:when>2010-12-13T12:05:07-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:06801174072068118DBB9F306C45F515</stEvt:instanceID>
+ <stEvt:when>2010-12-13T12:05:08-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:07801174072068118DBB9F306C45F515</stEvt:instanceID>
+ <stEvt:when>2010-12-13T12:06:16-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:038011740720681197A5CE74A73C3B40</stEvt:instanceID>
+ <stEvt:when>2010-12-13T17:19:13-06:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:068011740720681197A5CE74A73C3B40</stEvt:instanceID>
+ <stEvt:when>2010-12-13T17:19:36-06:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:078011740720681197A5CE74A73C3B40</stEvt:instanceID>
+ <stEvt:when>2010-12-13T17:19:42-06:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:0A8011740720681197A5CE74A73C3B40</stEvt:instanceID>
+ <stEvt:when>2010-12-13T17:20:51-06:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5 Macintosh</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:F8666EFF9E47E111A9D98F81341173CA</stEvt:instanceID>
+ <stEvt:when>2012-01-25T16:53:21-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5.1 Windows</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:F9666EFF9E47E111A9D98F81341173CA</stEvt:instanceID>
+ <stEvt:when>2012-01-25T16:53:21-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5.1 Windows</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:FA666EFF9E47E111A9D98F81341173CA</stEvt:instanceID>
+ <stEvt:when>2012-01-25T16:54:03-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5.1 Windows</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:FB666EFF9E47E111A9D98F81341173CA</stEvt:instanceID>
+ <stEvt:when>2012-01-25T16:54:12-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5.1 Windows</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:15B164128661E111BD3E866BD9D5E710</stEvt:instanceID>
+ <stEvt:when>2012-02-27T16:38:06-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Photoshop CS5.1 Windows</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:D65F6DCA8C61E111A0B3CC2E1D6B62C1</stEvt:instanceID>
+ <stEvt:when>2012-02-27T16:48:31-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Illustrator CS5.1</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:D75F6DCA8C61E111A0B3CC2E1D6B62C1</stEvt:instanceID>
+ <stEvt:when>2012-02-27T16:48:50-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Illustrator CS5.1</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:D85F6DCA8C61E111A0B3CC2E1D6B62C1</stEvt:instanceID>
+ <stEvt:when>2012-02-27T16:49:16-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Illustrator CS5.1</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>saved</stEvt:action>
+ <stEvt:instanceID>xmp.iid:D95F6DCA8C61E111A0B3CC2E1D6B62C1</stEvt:instanceID>
+ <stEvt:when>2012-02-27T16:49:46-05:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Illustrator CS5.1</stEvt:softwareAgent>
+ <stEvt:changed>/</stEvt:changed>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpMM:History>
+ <xmpMM:DerivedFrom rdf:parseType="Resource">
+ <stRef:instanceID>xmp.iid:D85F6DCA8C61E111A0B3CC2E1D6B62C1</stRef:instanceID>
+ <stRef:documentID>xmp.did:D85F6DCA8C61E111A0B3CC2E1D6B62C1</stRef:documentID>
+ <stRef:originalDocumentID>xmp.did:F77F1174072068118083EB83C62BD7C1</stRef:originalDocumentID>
+ <stRef:renditionClass>default</stRef:renditionClass>
+ </xmpMM:DerivedFrom>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/">
+ <photoshop:ColorMode>3</photoshop:ColorMode>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:tiff="http://ns.adobe.com/tiff/1.0/">
+ <tiff:Orientation>1</tiff:Orientation>
+ <tiff:XResolution>720000/10000</tiff:XResolution>
+ <tiff:YResolution>720000/10000</tiff:YResolution>
+ <tiff:ResolutionUnit>2</tiff:ResolutionUnit>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:exif="http://ns.adobe.com/exif/1.0/">
+ <exif:ColorSpace>65535</exif:ColorSpace>
+ <exif:PixelXDimension>1056</exif:PixelXDimension>
+ <exif:PixelYDimension>1056</exif:PixelYDimension>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:xmpTPg="http://ns.adobe.com/xap/1.0/t/pg/"
+ xmlns:stDim="http://ns.adobe.com/xap/1.0/sType/Dimensions#"
+ xmlns:xmpG="http://ns.adobe.com/xap/1.0/g/">
+ <xmpTPg:NPages>1</xmpTPg:NPages>
+ <xmpTPg:HasVisibleTransparency>True</xmpTPg:HasVisibleTransparency>
+ <xmpTPg:HasVisibleOverprint>False</xmpTPg:HasVisibleOverprint>
+ <xmpTPg:MaxPageSize rdf:parseType="Resource">
+ <stDim:w>1056.000000</stDim:w>
+ <stDim:h>1056.000000</stDim:h>
+ <stDim:unit>Points</stDim:unit>
+ </xmpTPg:MaxPageSize>
+ <xmpTPg:PlateNames>
+ <rdf:Seq>
+ <rdf:li>Magenta</rdf:li>
+ <rdf:li>Yellow</rdf:li>
+ </rdf:Seq>
+ </xmpTPg:PlateNames>
+ <xmpTPg:SwatchGroups>
+ <rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:groupName>Default Swatch Group</xmpG:groupName>
+ <xmpG:groupType>0</xmpG:groupType>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpTPg:SwatchGroups>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:illustrator="http://ns.adobe.com/illustrator/1.0/">
+ <illustrator:Type>Document</illustrator:Type>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
+ <pdf:Producer>Adobe PDF library 9.90</pdf:Producer>
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<?xpacket end="w"?>
+endstream
+endobj
+3 0 obj
+<</Count 1/Kids[9 0 R]/Type/Pages>>
+endobj
+9 0 obj
+<</ArtBox[43.0112 0.0 1013.0 1056.0]/BleedBox[0.0 0.0 1056.0 1056.0]/Contents 10 0 R/Group 11 0 R/LastModified(D:20120227164947-04'00')/MediaBox[0.0 0.0 1056.0 1056.0]/Parent 3 0 R/PieceInfo<</Illustrator 12 0 R>>/Resources<</ExtGState<</GS0 13 0 R>>/Properties<</MC0 5 0 R/MC1 6 0 R/MC2 7 0 R>>/XObject<</Fm0 14 0 R>>>>/Thumb 15 0 R/TrimBox[0.0 0.0 1056.0 1056.0]/Type/Page>>
+endobj
+10 0 obj
+<</Filter/FlateDecode/Length 78>>stream
+H\x89\xD2\xF7wV\xD0\xF7u6PprqV\xE0r\xF5\xFA!C\x88P!\x97\x81\x82\xA1\x81\xA9\x84\xD0\x93E\xA9\\xE1
+y@)}\xF7`\x85\xF4b.}\xB7\\x97|\xAE@\x8C\x90
+\xE40 \xAAS
+endstream
+endobj
+11 0 obj
+<</CS/DeviceRGB/I false/K false/S/Transparency>>
+endobj
+15 0 obj
+<</BitsPerComponent 8/ColorSpace 16 0 R/Filter[/ASCII85Decode/FlateDecode]/Height 105/Length 117/Width 105>>stream
+8;Z]Z0a[n'$j4<Fs3<4R;4IdR;Olg:+]DSt=Yk6$^=1cVj*OduT88;ZLkpkCLkpkC
+LkpkCLkpkCLkpkCLkpkCLkpkCLkpkCLkpkCLku$HblIg81:4d~>
+endstream
+endobj
+16 0 obj
+[/Indexed/DeviceRGB 255 17 0 R]
+endobj
+17 0 obj
+<</Filter[/ASCII85Decode/FlateDecode]/Length 428>>stream
+8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0
+b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup`
+E1r!/,*0[*9.aFIR2&b-C#s<Xl5FH@[<=!#6V)uDBXnIr.F>oRZ7Dl%MLY\.?d>Mn
+6%Q2oYfNRF$$+ON<+]RUJmC0I<jlL.oXisZ;SYU[/7#<&37rclQKqeJe#,UF7Rgb1
+VNWFKf>nDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j<etJICj7e7nPMb=O6S7UOH<
+PO7r\I.Hu&e0d&E<.')fERr/l+*W,)q^D*ai5<uuLX.7g/>$XKrcYp0n+Xl_nU*O(
+l[$6Nn+Z_Nq0]s7hs]`XX1nZ8&94a\~>
+endstream
+endobj
+14 0 obj
+<</BBox[43.0112 1056.0 1013.0 0.0]/Group 18 0 R/Length 316/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Resources<</ExtGState<</GS0 19 0 R>>>>/Subtype/Form>>stream
+1 0 0 rg
+/GS0 gs
+43.011 0 56.98 1056 re
+125.994 0 57.008 1056 re
+209.005 0 56.981 1056 re
+291.988 0 57.008 1056 re
+374.999 0 57.008 1056 re
+458.01 0 56.98 1056 re
+540.993 0 57.008 1056 re
+624.004 0 57.009 1056 re
+707.014 0 56.981 1056 re
+789.998 0 57.008 1056 re
+873.009 0 56.979 1056 re
+955.991 0 57.009 1056 re
+f*
+
+endstream
+endobj
+18 0 obj
+<</I true/K false/S/Transparency/Type/Group>>
+endobj
+19 0 obj
+<</AIS false/BM/Normal/CA 1.0/OP false/OPM 1/SA true/SMask/None/Type/ExtGState/ca 1.0/op false>>
+endobj
+5 0 obj
+<</Intent 20 0 R/Name(Guides)/Type/OCG/Usage 21 0 R>>
+endobj
+6 0 obj
+<</Intent 22 0 R/Name(12 Col Grid)/Type/OCG/Usage 23 0 R>>
+endobj
+7 0 obj
+<</Intent 24 0 R/Name(Layer 3)/Type/OCG/Usage 25 0 R>>
+endobj
+24 0 obj
+[/View/Design]
+endobj
+25 0 obj
+<</CreatorInfo<</Creator(Adobe Illustrator 15.1)/Subtype/Artwork>>>>
+endobj
+22 0 obj
+[/View/Design]
+endobj
+23 0 obj
+<</CreatorInfo<</Creator(Adobe Illustrator 15.1)/Subtype/Artwork>>>>
+endobj
+20 0 obj
+[/View/Design]
+endobj
+21 0 obj
+<</CreatorInfo<</Creator(Adobe Illustrator 15.1)/Subtype/Artwork>>>>
+endobj
+13 0 obj
+<</AIS false/BM/Normal/CA 0.101959/OP false/OPM 1/SA true/SMa
sk/None/Type/ExtGState/ca 0.101959/op false>>
+endobj
+12 0 obj
+<</LastModified(D:20120227164947-04'00')/Private 26 0 R>>
+endobj
+26 0 obj
+<</AIMetaData 27 0 R/AIPrivateData1 28 0 R/AIPrivateData2 29 0 R/ContainerVersion 11/CreatorVersion 15/NumBlock 2/RoundtripStreamType 1/RoundtripVersion 15>>
+endobj
+27 0 obj
+<</Length 984>>stream
+%!PS-Adobe-3.0
+%%Creator: Adobe Illustrator(R) 15.0
+%%AI8_CreatorVersion: 15.1.0
+%%For: (Josh) ()
+%%Title: (996_grid.ait)
+%%CreationDate: 2/27/2012 4:49 PM
+%%Canvassize: 16383
+%%BoundingBox: -89 -222 881 834
+%%HiResBoundingBox: -88.9888 -222 881 834
+%%DocumentProcessColors: Magenta Yellow
+%AI5_FileFormat 11.0
+%AI12_BuildNumber: 39
+%AI3_ColorUsage: Color
+%AI7_ImageSettings: 0
+%%RGBProcessColor: 0 0 0 ([Registration])
+%AI3_Cropmarks: -132 -222 924 834
+%AI3_TemplateBox: 395.5 306.5 395.5 306.5
+%AI3_TileBox: 99.3599 -47.8799 692.6396 659.8799
+%AI3_DocumentPreview: None
+%AI5_ArtSize: 14400 14400
+%AI5_RulerUnits: 2
+%AI9_ColorModel: 1
+%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0
+%AI5_TargetResolution: 800
+%AI5_NumLayers: 3
+%AI9_OpenToView: -293.375 737.3882 0.6667 949 728 18 1 0 48 119 0 0 0 1 1 0 1 1 0 1
+%AI5_OpenViewLayers: 733
+%%PageOrigin:0 0
+%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9
+%AI9_Flatten: 1
+%AI12_CMSettings: 00.MO
+%%EndComments
+
+endstream
+endobj
+28 0 obj
+<</Length 31066>>stream
+%%BoundingBox: -89 -222 881 834
+%%HiResBoundingBox: -88.9888 -222 881 834
+%AI7_Thumbnail: 120 128 8
+%%BeginData: 30922 Hex Bytes
+%0000330000660000990000CC0033000033330033660033990033CC0033FF
+%0066000066330066660066990066CC0066FF009900009933009966009999
+%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66
+%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333
+%3333663333993333CC3333FF3366003366333366663366993366CC3366FF
+%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99
+%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033
+%6600666600996600CC6600FF6633006633336633666633996633CC6633FF
+%6666006666336666666666996666CC6666FF669900669933669966669999
+%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33
+%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF
+%9933009933339933669933999933CC9933FF996600996633996666996699
+%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33
+%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF
+%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399
+%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933
+%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF
+%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC
+%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699
+%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33
+%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100
+%000011111111220000002200000022222222440000004400000044444444
+%550000005500000055555555770000007700000077777777880000008800
+%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB
+%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF
+%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF
+%524C45FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCA
+%CACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%CACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCA
+%FFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCAFFFF
+%FFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCA
+%FFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCAFFCA
+%FFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCACACA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%CACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACA
+%FFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCAFFCA
+%FFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCA
+%CACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%CACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACAFFCA
+%FFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCA
+%FFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCACA
+%FFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%CACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCA
+%FFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCACACA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%CAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFF
+%CACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05
+%FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%CACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFF
+%CAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCA
+%FFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCA
+%FFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFF
+%FFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCAFFCAFFCAFFCAFFFF
+%FFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFCAFFCAFFCAFD05FFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD
+%05FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFFFCA
+%FFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFCAFFCAFF
+%CAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFF
+%CAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FFCAFFCAFFCAFD05FF
+%CAFFCAFFCAFFCACAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCAFFCAFFCAFFCAFFFFFFCA
+%FFCAFFCAFD05FFCAFFCAFFCACACAFFFFFFCAFFCAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFFFFFFCAFFCAFFCAFFCAFFFFFFCACACAFFCAFFCAFFFFFFCAFFCA
+%FFCAFFCAFF
+%%EndData
+
+endstream
+endobj
+29 0 obj
+<</Length 25173>>stream
+%AI12_CompressedDatax\x9C\xEC\xBDgw2\xB9\xD2(z?\xCFZ\xFE`l\x93\xA1\x9BƘll0É€m0\xA1 &\xBA\x81\xD9{\xDE\xE7\xB7_I\x9D\xD4MG\xE09w\xCEYw\xED=~\x80VWI\xA5R%UI\xB7\xE6jÝo\x86\x94\xDB\xEF!LW\xDD\xDEfhj\xB0\xDF\xD01\xFA\xD9TZ.\xBB=
+\xB2\xD5\xEC&2\xE8!`\xABT)\xD2g[\xB6(z7߬c\xF0\xC9<\xCD\xC3\xF7mO\x9B\xDD\xCCn\xB2\xD9\xE1/\x8D\xF9~I\x81ߢ\xD1PJ\xCFÇž\xC1|o\xE7Ñ׳\x83=x\xEE\xF3\xFA\xC2^A\xFAL\x81X j\xAA\xBE\xA0&\x83\xF5߃\xDDn\xFE?\xA0\xF2G\xFC\xF0\xC7\xF4\xE6\xB0\xCF\xD7\xD3\xF4\xE6\xBF1\x93;5\xB9}>\x9F)!M 6(\xCEk\xD4N\xD2*\xE2\x89F"\x91\xA3\xA6\xD9\xCDè°¢\xD6\xFB*\xBDQ\xBB]f\xB3\xDCл\x98\xE9e0?Lj\xB9\xDC\xFC4L\x95\x82\xFD\xFC|I\x81\xE1\xAD{ÉŒ6U"}\xFD\xF4a\xBE\xBFVC
+\x8C\xDCE?\xFB\xFBRs\xE0\xC4L\xE83\xFA=\xDC/\xAD\xC0Ouj\xBF]\x88\xCDj\x854\x8E\xFC\x8A\xFEg\xFB\xA8Q\xD39\x9A@\xA5/;\x99\xDElWz\xDEv\x93~3\xA4\xA8/\xC0 6iP\xAB\xEDP\x8D\xDD
+z\x82&?\x82\x85\xCF\S0(\xD4,\xF5\xF8\x83Q@\xCC@\xD8 \x83\xA1\xA8\xCF\xF2GC\xA6P0\x8A~a\xDFHF\xFD=\xA7\xFE3\xBDn\xD6K\xA2\xBD\xAF3\x93\xF3\x97}T;,)\xBA\xB9\x9E\xEFA\xBF}\xE8\xB7(C\xA4\x97͘Z\x827\xF9\xE5 \xD1\xFD\x8F\xFE\xB2-zJ\xED\xC1o\x96\x87=b\xBF\x8F\xCCCy\xF0\xE7\xD0\xCF"\xA9l\xA9uc\xD3B]u\xFB\xA2~\x8F?4\x85\xFDa\x8F?\xF1\x99O(
+\x9B\xA2\x80\xE5¾\x88\x89\x8C T\xF0\xE5{@
+Y<(\xC9!\xFBkV\xC1\xE4V\xE8\xF9t\xBE\x8Eq\xFD
+\xF7\x80\xE9\x85\xFEc\xFE\xA01y"\xD8Q\xEE?\xB6\xEB\x80\xFB=\xB5\xE6\x88\x98-\xF3\x82\xF1\xE1y\xA9@\xAC\xB9\xF58\xB3Y\xC19Ù¡\xF5\xB8f
+j\xB9\x99\xB2O\x85/\xE8 qزA?\xF4\xC1V\xE9\xF9\xBE\xFA\xEB\x95y\xE9W\x97\xF0\xB0@o\xDB\xD2z\xB2\xB9\xFA\xCB\xC6\x86=\x81\x96\xA6\xCA\xF0\x87\xED\xC1:g>\xD5\xF3=\xFA֮
+\x8C\x90\xA6L\xCCS\xF0:\xFA
+\xFE\x9D\xC0\x{17C7E5}&`E
+ \x98_s뿩\xE5f\x8B\xE6\xACǦ\xF7\xBD\xD5\xBC\xBA\xAC\xB4 =\xE0a\x97\xE7\x83'@,\xBA\xF0\x9B.\xB0\x80c\xB6\x80p\xE8%\xD4F\x82B\xA5\xF6H\xAA\xC1~fJ/\xA9\xF5x\xC7Cg\xBEJ:\xCF\xFC\xA8d\xFD\x9F\xD5p\xB3\x9C\xEFV<@\xFC\xFE\xB3\xCE\xDE\xED)z]Y3ݤ\xBB\x99\xA9\xB1\xD9,B0
+\xD8G\xC2$\xD3{\xE6\x9D
+\xBE\xB1\xF0\xF0\xDF<3X.\xE7Sz\xB0\x9D\xCDGr\xF0e\x9E\xF3\x88\xDE\xD5\xC5E#Du9\x8C\xE2G<\xB2\xE37\xFEx \xA1'\xF3\xF5\xBC\x82\xA4\x9E@\xB9\xCDjmS}6\xD8Ÿa\xCB<\xD6R\x80\xEC!\x8Da\xB7[S<G\x99gP\xE3\xEE\xFFYR@\xF2{\x9Fכ\xFF\xAC\xD17S\xF4\xEC\xC7\xC1a\xB9\xFF\xB2\x9B\xBC\xAF\x83er\x816\xF590
+(\xBEa\xAA\xC0?\x82\xA2#M\xED\xFC\xA5\xFEx\xC2A\xC2GB\x8E\x86"~\xF4\x81\x80\xD6\xD0P
+\xB0\xAF\xB5S\xF0\x92\xFB\xF6\xFC\xF6>\xFD\x80\xDF\xFEc" Ӌ\xE9\xE3\x8B0\x8D\xAF\xC0C \xE1\x83\xAE0B\xF4\xFE\xEA/\x93\xF4~@\xC3\xA4\xC0\xA5M\x9D\xEA` T"\xC5\xA3:\xD4\xDFo\xA9}\x85(\xD0\xFEH9\xA9\xE1U\x81\xFF\xD2Box\x9C\xC6&\xA9\x80\x8A&\xE6x\xC8L\x93y\x82$\x98\x87\x8C\x86\xA0\xFE\xEEw L\xFA\xAB\xB6Ӝ\x9D\xCCs\xC0\xB7}/\xF7\xE4\xF8u>\x82\xE4\xD0\xFF\xB0?\xB4_ʯ\xC0\x96Sx|o\xB2\xFDw\xB5\\x83n\xB0\xC0\xE8\xF9𰧀Rr\xA1\xC6)\x9A\xFCos!,X\xBB\xD1\xB84\xB5f[\xF9L\xDE \xFF\xFE\xD9\xFF\xE5 zl\xBB[\xEF\xFA\xE8\xDD=X\x9Cu\x80\x98S\xA2\xB6\x96\xBE1|\xB0Sh\xB8+\x9Bm\xC7\xF6f'\xFE\xFA<\xA9\xD6\xC0\xBF\xD0C\xA5\xE5f\xB4\xA0ƺ\xC8\xC45u\xFD+8\x9C#O\x95\xD43H\xC03\xC0|E\xA3\xD11P\xBC\xF9%\x99\xE2|\xA2\x90\xEAD\xD1G\x8A\xF9`\xB8\xA4t\xAD=3\xFD\xFF9#
+\xB1\xBF\xF5\x8B\xD8\xF6\xDF\xC1\xF0p\x9C\xA3\xC3n\xBFY\xFD\xC4\xDFe\xD1\xD8n \xED-\xA8C\xC1:\xD4Ï©\xFF;\xD6
+\xE8п\xAD?\xFFw-\xE5\xDD\xE4?\xFF\xFE\xFE?@\x92\xEF\x96\xF3\xD1\xFF=b\xDC\x8ED\x82&o\x8D,U\xC6\xFC\x8F\xAE \xFF\xE7_"\xB2\xDD$\xE1\xD3\xD2\xF5\xF1\xF0\xBFdH\xD1hHsD\xFF\x99\x8F\xF73]\xA3b[\xFE+F\x86vJ4\xC76\xA3\xE6ә.
+\xC07\xFDw\x8C\xCE\xE4Mo6j#n\xF6\xC0\xB4(S\x93=\x8B\xD75\xC6\xE3\x97\xFE5V\x8F\xF5ÍQhW\xEB\xDFaF \xED\xF6\xAF\xE8ÇŠ\xDA\xC6\xC0\xBE\xBA@g\xA2gw\xC62f\x83$\xBAxk\x8D~"X\xFCp\x8B/ES\x83
+\xF4\xCB\xE9t骃A\xDF\xE1f@\x8FMЋl\xAE\xE7#\x80\x8C\xEB \xE6\xFE\x85C\xA1\x80 \xFDA⡺\x99\xAF\xF7hh6\xB4?'b}\xB4\xBB\xF1\xE3MkԲ\xB1\xA91\xAD\x98ת\x9B\xDD\xF6=&%\xE3\xC8\xCEw\xDB\xE5\xE0\x9F\x97\xBD\xE0(\xEC0\x96\xBAa\xFAFaZ5U\x93J\x82Ҏ>Y{\x95\x9Bt\xAE
+\xA2#7a/\xD4x~X\x99\x84\xEDįc\xA6J$i\xE2\xC3_h\xFB\xCC\xC4\xEE\xCDQ\xB4\xA9JS;jo\xC2pr\xE3\xC7vk\xE0&`?\xBF\xDClh\xB8\xABD\xB5\xE6\xBB\xF9p\xBE\x9C\xEF\xFF\xA9\xEF{\xAD\xF7\xA0T:\xE1\xB5\x94ڪ﹃q\xC4 G`(0T\xF0\xF5\xBE5X\xCFw3@\xF4\x82\xD0f"R\xA5\xA8i;\xD8\xA2\xEC\xE6\xAB\xC3\xC5O%6p\xCC:\x82\xC0Ky\xDA\xCF\xEB\xE7\xED`<\x96\xA2Z
+v)춛\xA3.
+\x96sN^\x879\xCD2\xDE\xCE=\xECo\xF6'\xD0ZX\x98\xA9\x92)u\xD8oL\xB5\xC1nO\xD1\xF3\xFF\x91hVv G0Y
+u\xA1Y(\xF4\xC7k"MCAd}_D\xB9\xADo\xAB \x97\xA6\x8E\xE8\x84x\x97\x933\xA69\xE0r\xC0 (\x85bN\xEA\xAD\xEB\xCDh\xB19\xECMSf\xFB\x91\xA1A\x90\xE0\xE6\xF6\xE1\x85\xDA\xCDx:\xA1 \xC7\xD6\xFB\x8A\x9F\xBDR9\xEC\xB7 \xA8\xC6K\x9A\x84\xEBÚ\xED\xE9\xC1z\xB7 \xA1>\xFA\xC7\xF3ML;ab4aNi\x8A\xD7\x9A\xD4\xC6\x93"
+"\x91@\xFFM\x99\xD4\xF7\xA6\xDCx\xBE0\xCBO\xB2b\xE5Ky\xB0\x9ES\xCAT\xDDly\xA2+-q\x98P\x81uWE~ÔŽ\xA8%m\xD5\xC0m,RS,\xD4G\x83%\xD7\xDE\xF2\x91\xE4\x8CR\xC1\xCFrMs\xFF\xDD
+\xD1\xEF\x87\xC2j\xC24\x8D-$E\xB0\xA8ee; @\x95g\xA8\xE52\xAC,\xAE>e\xB8\xC5
+\xE0\xDEͺ\x88[\xC72\xEA3\x85\xA3\x9F&\xFDx\xA1\xDE\xD8lqa\x8CD#\xA4
+-\xB1!k\x92G\x98t\xAA#5!"{8L\xCDG\xA2g\xB2*\xBD \xE8\xA0\xD4H\x9C\xB27LDA\xC5I\xA8\xA8\xA83\xA7\xB4S\xFF\xADS\xA3\xCDzl\xB8\xD3\xFC䥑ۀc(Sf:\xB3h?X\x8Fx\x9B,\x84vÖ2\xA9î…‚h\x84\xAF@\xFD\xC3\xC8{<N\xBD\xCE\xCF\xE9?\xB1\xA1\xB0N\xC6B\x98e9+\xA0\xB8t\xD1;\xF9\xC1\x88J\xAD\xA7K\xCC8\xE23a\x9A\xF0VPk\xCB\xF9\x9A2í„\x96\xCA\xF0E\xAAT\xD0\xC0\x9E\xFAiW\xCD\xE6\xE1V>`R\x91WȇI\xBFb[8\x91\x98\xE1\xA0!\xC2&\x93%\x90!V\xB9\xA85>\xE3\xCA4\x83\x9D\x95!\x992#a⇓R"r\xBD\xCF\xE6\xA3Y\x95\xDEL\xE6K\xEA\x99\xE2(\x80\xEBRY\xB05\xDCr9\x86\x9A[
+\xA9\xF1T\xE59@0%"_\x81F\xCB\xF9\xA8t\xA6\xFF/\xB0)\xA6@q#I`\x8A\x87F\xA6\x8B\xFBo\x80X\xC3\xC1[\xCEZ\xB7\xDBÓ›C\x90\xE79\xC8p\xC0\x84\xD8 \xD6P$\xE0\xD7)$\x845{$%lL\x9E.\xE6\x9B\xAC\xF9\xC3rÉ™ lB/x\xAAA\xB4-g\xE0l\xFE\xA6\xE8-\xCCÑŒ\x99Ñ\xEA\x87!`\xDE\xFC\xB4\xACA\x81/\xCC\xE2=l?\xDA\xD0cj,\xE3 \x98\xBC\xAF\x9B\xBD\xF89\x89[O\xB9j\xDDT9\xEA\xD6m\x9F X\xF3\x96\xF8u\xF1 \xA5f
+\x91P\xE0\x901M\xA4\xB8Ķ3\xEA\xCE1\xAD!q|\xE6\x82Lޟ\xCD\xD0Lͥ఑
+\xADP\xCB\xE5Q\x9C\xE2\xA8!\xB0+\x81}<\xD5\xB8[Ì·C\xC0B\xBBz\xF7h
+PcG\xC1\x81\xD0:\xFB\xC8Y\xD1\xF9l\xC7\xEE\xB6\xF4U\xEE\xBC\xE7\xF7\xBC\xA5
+\x93\x88\x9E6C\x98\x8Ee\x82T>f\x81\xA8i\xBD\xD54_\xA3\xE5\x83|\xDCF>\x80\xF9\xFFh\xEE\xD5|\xFE#\x96\xCB@\xB9\x92a\xE5JM$W\xC2A S1\xAE\x90\xB7\xC5È“\xB4H\x9E\x88\xFC-\xA6y\x81\x8C\xE7\xD0c\x80Ù¬\x8C\xA6\xEAr1o\x95!O\xC2|A\xF8rL\x8E\xDE"\x8FxYeÇ\xE5W\x996q\x99\xB7Õ¨\x8BS\x8Ci\xAD\x9FdL{\xC34c^\xD3A\xB4S\xD6\xF6vK{\x98p\x95e\x8D\x99\x80\xA7FI~F\xDA߀G\x9B\x89B\xF9\xB6,5\xE3\x9B\x86\xFF\x98\xB24P \xB4\xFAb\x84 Ö¢0\xD71\x92\x91\xB43ÊD}\x91\xA3j\x85z\xFD\xC2b}\x86\x81\Òžx]\xB5s\xF4س\xA1\xA7\xF5\xB0\x8D\xB8\xA4
+L\xEFI\x9B\x{D827}\xCCC\xD3l\xF8\xB7Z\xF7Q\xAB\xEDr\xF4\x8F
+\xDF0\x8DF\xEB\x9D*mA\xA3=0h\xF1\xD01NW\xCF\xE6%j5.\xA9#\xEE\xA8ш\xDElU\xFA=Y\xEF=\xE3\xA5xvd\xED\x80-\xC1{>r\xC8v\x9E%\xD0LK\xB5\xB5\xB5\xF3\xE7pɪ\xF5y\xE7YS\xD3\x83Wh\\xC8=JRSk\xB4$GÈ86\x92\x86\xBB\xD9 \xA8S\xDCB\x94m\x8D\xB15\xB0\xA5o\xF6ßGl\x9CÊ‘4\x826\xB0J\xEFA\x8B\xCDv\xB4\xD1j\xB1S\xA3 j1>\xA8\xEB\x95\xB5
+\xDE\xD7X\xDA\xC0@ T9\xACG\xFA\x84j>X\xAF\xF9\x90\xB1\xBCÙ„\x9Ai\x8A\xEA\xD1
+\x97*\xB6\xA6\xA7\xEE1\xBDSC\xA09\x81\xF566}\xDA\xEA\xEF\x95\xEA\xA7\xDD\xF4\xB7O\xBDS Ζ\xF1r$\xC1:I#`\xC7P\x82K,J\xF5V\x83\xACI
+\xE9*\xB1\xE1r\x84a\xB7_r\x9A\xD9L\xBCu\xA7AS\xF8\xFB6Yz^ÚŽ!\xFD\x96k\xFD\xFDÚŽ\xF5\x83g\xE6Ox%\xEA6\xA4
+n+\xF4\x80\xFC\x98\xF0\x9E\xB6Ï£\xACv\x99\xD6{^\xAE\x85\x9F\x87\xDB]SjMcj/\x88z"\xF5\xF6\xCCÖ´\xB6\xD2\xDD\xE0\xF1\xB5+m'k\xAF\x8F\xA9\xDD|\xBA\xC6wp\xE4X\x91\xB7\xEC\x87\xECÆ´*L\xD4\xE7nÕ†\x83\xDDp\xBE_
+\xD4l\xCB4\xA2\xA5V\x99\x92\xF2\xB2\xD89{\xB8U\xA4\xD6]ؔw\x80+4\xE2\\xA1\xB0OI\x9Bnhh_\xB4\xFA ZN\x80\xB8\x9Dm\xE8\xFF\xE1\xC2
+Ͷ\xEC>\xA8\xA6\xFA\xB9lu\xD8+lC5)jj
+\xF2t.0F\xB5\xA3\x86M\xAD\x9E\x97\xC0\xF4\xEDau0\xD7\x8F/(\xBB`[\xB0\xEC\xA1o!\xB1,\xE5\xBB\xDD\xDC9\xF0\xB5\xDA\xD1X\x99\x87\xA6\xED7}\x86z\xA7Fd\xC1k\x97!:Z2DGcZl9k5Iy\xC9ۣ\xB2bI\xCFu\xB4Ƥ\x9Fvc\xBC\xE7:\x9A\x8Bz.kȉz\xD8Q\xD9\xCD(
+\xBF\xAA\xADn\xC6\xD2\xDCÒ“\xCDZU
+ \xDBN\x8AShD\xAA\xC4$\xF3
+\x86}$\xAD\x90\xC7*\xD7t\xAAK\xB0A\x8E\x91k\xFB\xE3È•|C&\xA9eN\x89\x81\xAC)ʘ]\xAC\xEF\xBES\x95\xA9иa↛\xFDL5b\x845\xAD\xFE\xE1d\xAF8\xE8\x93\xE2\x9A\xE3a<\xB6V\xAB\xF3\xFFR\xCB*EO(\xBEe8,\xC3<m\x86\xA6\xCAzg\xC2B\xF2\xDE\xF4\x9C\xF3\xECS\xF5L\xA9 f)(\xD4\xD0\xD3\xC0c\xE5\xEE\xC3\xB0\xDEÚ®'\xFF]ÅNÒ…\xD5,6]\x9B\x9F\xF2f\x97Íš\x99<\xBB\x9BP\xB3\x98Yb\xC9f!\xF1x\x8C\x95?\xAD/I\xFA0
+\xE7s\xBE\x97\xC8-Xb\x97\xFD\xC9N]\xC4M\xF2\xBE\xE7q$\xE3\xAE\xED.\xB9{\xF6y\x9A\xE4}\xD9Ls\xAD\x9E\xF6\xE9iñœŒ\xA8zf\xFE\x90e=\xEB\xF4Wy\xDC\xC3\xD9\xFCm,\xDC-\xEC\xB3?_\xE9@\xD7\xEDJ\xAD6\xE5]\xAAT\xDFÏœ\x89\x90\xE5\x90\xCFn\xDE\xD3?K\xEB;@\x93\x9DOCYh7\xE1\xE8$\xDCz\xFB\xF8L52\x9E\x962V\xBC]\xEC+_ä¿’\xB1\x9Dg\xE5̺ny[a<h\xBD\xF2\xDF\xFD\xCA!;\xF9z\xA7\x97\xC9e;6I\xCF\xF6\x99Y\xB8K\x8A(\xF2}\x97\x91\xE5\xDFd\xFC\xD1\xFA\xCE \x9D\xDEez\xD3\xDE|\xBA\xFBÍ–\xC6%s\xDA\xF9\xB9I\xD5Ý–5Ó‰\xF6`| h\xA2?6\xE7(7
+\xBE\xD92\xB3@\xFF>\x9E\xBA\xF5\xDF9Ó¯\xAEog2cm\xE63\xD4\xC1\x91h=Yf\xF7\xA3\xD1`?Í\xB9IyÆ & \xEF L\xCFo\xBEc\xF3\xDE\xD38\xBD\xBC}\xB4\xBAi\xE7\xE7!U\xAE\xDF\xFD\xC2Ø“\xF7O3X\xF3\xBAo}%S\xEB\x91u\xE5|x\xB9\xF7\x86W\x9F\xF3pØ»\x9B\xF8S\xF4\xA8D:1\x929\xCA>\xEDZ\x80ra+~\xF7\xE3\xD8<\xE3\x80I&_ln\x95^\x86\xAB+f\x9D\xF2m2S\x8A[\xDEs\xAEh\x96AfK!K"\x9C\xD9\xF4\x9C\xF1\xD6\xF8#\xE6Z\xBE\xDC\xC4\xFA)rX\xE0\xB4|\x84\xDECokH\xAADza\xB9Ym\x8D\xCB\xF9ey\xC9z\xF1\xBB\xBC\xD9Ù¥!\x9A|\xD0CPP\x80\x86^\x97\xE8\x8B3\x91\x8F\xB3\x9F\xE2\xEF\xB9g\xA6}Æ•\xFBf\xA0\xF9:\xBE\xE0\xE06\xE1L$r._\xF6q\xFA\xC0z\x88ß^{h6\xF9x\x95t\x90CZ\xA5\x9F\xF8.| ] m5ØŠ
+\xA0ß‚\xE6t\xB6\x8FÈ\xA5v\x8F\x81P7\xF43J5\xB2?\xCE\xEC\xC4\xFB\xFC\x9B\xAC7\xE9а\xF9\xADÞ¶\x9B\xA9J&]\xCDN\xEA\xF3\xDF\xE4\xEFWw\x90t}\x86\xA0\xDDи\x9B\xEB\x93\xCEV:\xD0NU\xF2ÙŸ\xF7~f\xFE\xF2\xDEOV\xB7\xD3|f\xE2
+\xDF\xE1pm\xBCFê¿«\xE7T\xA5\xECx\xCEg\xED\xE3g\x86:\xAD\x99% Y`\xBF\xF5\xBC9[\x83_fH\x89Pd\x90\xBCo\xEC\xAFS\x8D\xA7\xFD\xE1xp\xE2b\x94\xE0&\xA3M\x9B9Pu\xB0\x82*\xB8ד\xEB\x8Eo\xA7\xBE\xEF\xF8c\x96\xC8&\xFD\x88\xE2\xDF\xF1|\xF0\x88\xC3\xE5Lo\xA2=\xE9|\x89\x89\x8BO.7\xFB<\xCEvD'8\x9CTO\xE5B\xAA\xFFD"\xBE\x89;\xB7\xF7\xDFy\xDB\xE4Ù“"â®\xCF~Ó‹3=S$t\xA8E\xA9\xBC\xEDnk\xCF\xCCB\xB5E\xCEY\xF6\xE4~ë ³A¦\x9ECFM\x82Õµ\xBA\x83\xB3\xD83\xD3Yn\xBE5k\xA9p\xD7\xF7.\x9D\x87jq\xD9\xBF.\xE4Ü®aTnZ\xA2\xEA9Ф/c'6\x89h6]\xEE,\xE4\xFA\x8B\x9Ab\xED
+\x9D\xF0,\x9E\x9C\x8F\xF0/\xC7쳯\xE6\xED\xD5\xE5}>\xEC\xFA\x9C\x89\xC27\xAC\x9A\x86\xC65\x9A\xE4s\xD9`8rWZH\xF6x\xC8b˅\xB0f\xBD\xDF[G\xFAg?^\xA5\x97\xEB\xD6&՘\xB5o \x8Cg'`\x9Bsm^}\xF9;w\xF8#U\x9B̬൯\xBBt\xC8Y\x9E\xB1\xA2Ӟ\x9DX\x8B!\xD0\xDF͌\x89\xB9V\xBB\xC8It\x80\xE1\xF9\xAB\xE1\xCF'\xA7m(￳\xC3\xC0\xEC=ռ\xED\xC4\xED\xEER\xB5\xC6\xC72\xF2\xB3tǑt\xF4D#4\xD8<\xF1\xF4¶\x9D\xE7\xE3҆\x89\xFAn\xCD1\xC0\xC9t&\xBAIbx\xC8\xD9~\xDF\xCD#y
+ڶOA\xA9\xFAQ\x83ȷ󾴛 \xF9=\xB2\xD3\xE4a\xF9\x91\xAA?eا\xD1\xD4w2^\xCCx@\x93\xEF\x90\xE5\xBB4\xD9=\xF4S\xF5C# <E\x8D\xA1L\xBF\xAC\x92\xF4(v\xC7L\xBEP\xBD\x9D\xF8c%\xB3\x87\x9F\xE2i\xFF\x91$\x9Em\xAB\xF83N\xCF\xE48\xC5|z\xEA<D\xC1\xA7v\xFC6H⿑\xD34z\xA2\xC1\x9B\xD87\x9Fm\xD3\xF7\xE6\xF8d\x8FV\x99\x97\xD8\xD79 \xDA6\xDA=\xD6\xC0\xA7\x9F,ӄm\xBCe\xD1\xF0\x84\xADp@\xCD*+\x85\x81u\x9F\xE3i1β\xDDa\xFA{\x87\xA0\x80N 4\xCCHH\xD8-{\xBA\xCE\xFC\xC6BC\xE3Bh\xE0\xEBR*\xF1\x9D\x96b-\xC7Y\xEA x\xCCh>\xB1ן\xF6\x958h\xD5|>R85~[/\xC92\xFE\x86\x81!i\xD7\xFA\xCAA\xE9\xA5\xE2B4\xE2ْ\x9F_\xA3\x93!\x99 \x8D\xCF\\xE0\xE8\xBAʶ\xFFHp\xA4Q\x84i'|e\x98\xB1D}\xDC \xA5\xD1\xE8\x994\xE6\x92}*\xFA
+yÍ{\xA8\xF0F\xD7\\xC6\xC7%\xF0\xCB1\xBD\xD0\x84F\x8E^\xCCp18\x8A`\xA3\x86\x8De\xE9\x8A5KC\x81hÒ\x83\x97X\x84<qw\xB0\xD5\xCA\xF8#!\xC2
+\xE11X\xDB f\xDDS&\x9EZ\x86|$\xD3Cnɰ+\xBE\xD7Ϊ\xD7;7\xB0\x81Qrk2
+\xA2z\x9B\xC6i\xFC\xEC/1\xEBq\x9A9\x89Ѵ\xB0f\x88\x86\xD64\xC4nU\xB8OhHp \xCCX\xAD\x9Fb\x9BБj\xB4\x9E\xD7\xF9\xA4\x95j ?`\xE2\xC3\xF5G4\xB5\xDAsZ\xCE\xBFtby\xB3\xC3\xD5A
+c\xCEp\xDF {&\xBBH\xBE[\x9A\xD3̼\xD7O\xE6F\x8B\xDF;F\xB7a6Fp_Uvwp[\xC4\xF9\x8E\xDCè‰=\xD4\xD5\xEC\xD4mdl\xC2j\xC9\xFE)(=\x91?FX\x92-\xAB-\x9A\x99j\xDD\xEC\xF3\xF3oR\xBAO\xA5j\xEBl%Y\xEF\xD1Ch\xDC.\x93+R\x8CƉ\\x8B\xD8+\xB1\xEC\xC7\xDD\xDF\xF9\x8D\xF4\xA9\xF7\xDA\xFE\xD5\xD667r5\xBC\xE9\x90\xCB\xE7\xC6\K2=\x9Cf)G\xAE(\x98\È€z:DÚ°\xD6\xD9g\xA4\x82yw\xB8e\xFCW\xE8 G\x97\xF9Í„1ÛŽ \xB4\xE05\xF7\xC6\xFBR\xFBL\xC1\x8EA
+\xD8\xF2\xC1\xEE9΋\xCFPg:/:<\xCE\xE4\xD5
+\xC78\xD6"\xB9\xB7<\x98\xC8\xD2C\xD9yh\xDE.X\xB3\xA9\xFD\x94F\xAE@*\xD4\xFFu\x8E\xF2\xB79\x8F\xAB\xF8\x99}N\x87\xAC \x83}\x98~K~8\xD2o\xB7_{d*O2,C*\xDCUAܟ={\xB2\xA5\x9F\xF0@\xA0t< \xF1\xD8)H\xAD\x8B\xE1ֲ\xDCHU\x9Aπ\xED\xC12exT艒\xCF\xC1\x904
+9\xF8uPH/C\xD3\xE4 4\x82{p\xDCU\xAA\x92-,n)\xB0\xCE\xDE\xE20\xFC1\x9F\\xFB\xC2\xF6z\x8D:\xEF\xAFb\xB8e&ne\x85M!U_&\x9D\xE0\xF5\xE9/9\xAA=V|ɦ9ʺ\xB3
+\xE8\xB5h|݅%3\xFB4\xC7@\x8F\xFB}\x8E\xBE<`\xC0(ҋ'pT\xAA\x93 \xBFPb\xD0o\xE8\xA5\xBE\xB3\xF0\x80\xE7y"6^- 8UO"O:\x94\xCE\xC7s\x9FJ8\xDF\xFBrX\xF2\xB9\xF5.O\xDFmta\xF8\xCBu\xE3\xFD\x88\x84G\xE5\xA7\xF4[5Y\xF5\xD9;\xABW\xB6\xAB\x87\xCEm\xEA\xED\xB5ނ.9\xF7\xE0\xFD\xC7ϒysG\x84\x87a\x95(o=\xCB®B\xD1\xD4\xDC\xF2\x94`\xBF4j\x80\x86\xE7\xCC|\x92\xA6g\xCD@\xEC\xE5\xFDa\xB8'£\x98!&\xD1L ^٦\x8B\xE9\xC0!M\x90\xAE\xE6\xCE,\x9A\x87\x8F^*z\xFF\xEC\xE64\xBF\x9Ey\x8A\xF1\xD6r\xAE$}\xFDT\xCC;\xEC\xAE ]\xEF\xC0r\x8D\xD7@]\xD5\xF2\xF9\xBE\xDD<\x83c\xF5'\xE3\xC3\xDE:\xF9\xFE漋͜\xF59І\xD1\xC4>
+u\xDD\xD9'\xDA\xF1\xCDr\xDA1ߘs \xA6)\xBF\x92E\xD0\xF4-c_(u\x87T"\x8A\xD9h\xADd\xBF\xA7T_\xC6XO\xE02\xDE\xE2f\x92\x99\xEF\xE6!~p \xA3"\x{1DB440}\xD4
+\xC0ྙ\x812疱\x9F,d\x9E\x97\xA8I\x8C\x8C\x98_\xA1\xB0w\xAA\xFB\xD4s\x873s\xF9\xF0\xFC:ΎWQǂ\xB6k\xE0\xCE?\xD9L\xD1\xC2('\xF7Ɯ\xF00&\xDA\xF6\xFE\x8CQ\xDFwK\xAAb՛^zj$ Z_#[\xA0ap\xBE6#_\xB9~\xEF\xF6tjN\xFE\xA6{6^\x85\xCDx\xEE28ts\x88-A4\xCD
+\xBDݹزA\xF2\xFB\xB9\xF8\xAC
+/O\xA1~\xD9\xD6\xC5\xFA\x9Ci\x8E\xFBsT\xAEW\xF6\x81\xC5re\xCFÄž9\x89\xCFT\xC0}\xA2\xF0=\xC2\xD8,~\xBF%l\xDEeK\xAB\xF9G:\xD8j{Ro\x8E\xEA4Uk8\xF3p\xDD\xDC\xBE\xC2\xE99\xA6q\x86Q0\xDEl\xE9\xA3\xEC\x80H
+5\xB2:^\x97\xEB~\xA4qwS\xCF\xF7-w\x9D\xEC\x90,\xBD\x8Cܸ\xB2O6\xBB
+\x99<\x82@\xE6\xC5\xF4v8#z}?\xB9\xA9\xCFd\xB0\x80Z\xAD\xEDrNGh\x82\xEB;8_\xDB~\xBA\x97l\xDD\xEC\xF7<\xEA2\x98\xE6\xA99\xB4/\xE7\xA1S\x986<n\xD13\xAB\x99(}\xE2,^墸\xEE\xCB\xCFd\x9B[\xDF^\x80\xAD\xE7Jå³\xA2Cnp\xA2vA'@s\xFF\xB5\xF9\xF8Tk\xD5r\x84_G\xF7I\x93{\xAAg_\xA0\xB8[\xECuz?Ϲ6]\x88\xC9 \x99\xAA\xF3_\x85\xD5\xDEa\x85\xED~xas\xC4K\x96\xD0-/3Ƽy\xB5\x99\xD7L\xEBQ\xC2 \xEC\xDEm\xFE &\xF5o
+\xCCt\xF23YP\x84P\xF8\x9Ee\x87\xF6Od\xE6\xC1\xEAs(\xF4\x90\xFF-Ƴ\xCBrP0\x90ى\xECY\xCC\xD9I\xFD{\x93\x99_\xDF*\xA9u\xA2\xB4\x91c$47\x90\xF7*\x9B\xD16\xFA2\xF1\x92\xA9J,\xF7\x9C\xBCOoq\xB3\x9C\xED[ܖ\xA4\xDD\xD1\x94\xD0\xC9T\xF8k\xFC\x9A\x9DD\xBF\xBD\xB9.\xB5\xBF\x93\x904\xFAC[
\xC0\xE8uR\x9BY\xC5\x89&fÞŠB_?\x85\xEE\x83n=\x960VI<\x84\xFCr\]\xA4r\x8DT8ZC\xF6d?;y\xDBA%\xCDH
+\xB6\xBFEK>\x93\xFA\x9A\xE63\xC9i\xADx\xF3@\x96RQ\xEF"%\xDF$\xE5\xF8I\xB6\xA5A>\x9E\xDDc\xDDr\xD9r\x9D\x8C\xBDS\xD3ddK\xF7Q(SM\xCEgw\xA0\xF9\xBCT\x9D\xE9+c\xFF\x89\xA1\xC4˗\x953.\xA1\xBE\xF9\xED\xDEw\xF8\xD9\xF2\xA9\x99\xDB\xC1\xFF\xE0\x91\x9F\xBBdk\xD28`\xC0\xA1\xA7C\xD6S\xBB\x93\xB1ןf\xB9\x83?\x8D\xD0u~\x9Da\xB7n\xF8u\xFB\x9B\xF2\xC1\xAD\x88\xF4
+\xE8C\xD1X\x97\xDE\xD5\xFB\xE6\xC8Mp\x8A+\x87l\xB1\xB7\xDBe]\xC3|.n\xBF\xB9m\x8E\xEC\xFC\xA6W\x95D\xF0\x98iÞ®\x81:[t\x91uOÚ€\xD0\xDC\xAE\xE1\xCDN4\xF0\x89\xC9
+[\x8A\xA5\xDD\xD7w\xE16o~NҖ\xDE>;\xD9\xD0\xBE\x8D=:\xB5\xC3͡v>3y\xF4ˈ\xF3o\xA0\xC5\x86\xE1[\xC6\xF4\xCAߴ\xE6\x84/\xB8\x98e\x89[
+\xD8\xD1\xB9\xB5\xBA;\xEE}\xDEV\xBFC\xF4J\x8Bv\x96\x8A\xF7\xA0#qp
+>"\xBFM\xE4w\xD8\xEC\x91 }\xFF\x8C\xA5\xC2O\xAAB\xA6\xFD\xC0\$ã‰_\x94\x9Cu>\x8D\xBD!\x89\x9D\xABJ4\xB9T\xD0\xFD\xFCE)\x83\xB5B]\xED\xE5}
+Y%u\x9D/\xAFs\xA3\xE0\xA0v{\xEC2\xF4\xB2\xA6\xC2\xF5\x97<\x98\x87N5\xB5IMl
+h \xF5\x9F#J0l\xC0\xA8"\xA6\xB1\xA7\xE8\xD6ÆY×’q?;7J\x80\x8F\xDB{\xB0\x9C\xEB\xE1{Ì¿\xD6\xFA&r\xA3\xCC&\x8B\xDB_\xAE\xB1k
+\xBD\xC3M\x85Nr\x89\xB69\x93\xC3\xF9\xF0\xD4}\xC2\xD4\xD0WzN\xDE O\x83\xDD
+\xC1\x9D\x89\xB0\xE3 EG-\xE6\x9E\xC4i~\xACx\xAC\xE2\xA5h'\xD2\xCB\xE5\xF6[\xE2\xE7c\x9C\x86\xA9\xF2anHÄ\xB8}Ï‚1R\xCB\xF74,p\xB3\x87H\xD56\xE5}\xD6U\xF9s\xD4\xE2\xC0w[\xA4o\x9A\xBB\xDC\xE8:\xF4<3\x9D\xCFEjE\xA9\xF2[\xAC\x95\x91;}?Y\xDD\xDD\xEF\xFE'$\x98H2V\xC1\x90\xDF9\x9Ap\x88F\xC5и\xCF9+V'\xA0aÏ\xD6.\xF1\xD6\xE3\xF3
+@\x9D\xF7È¡hx\xEC\xEF\xC9\xF82o\xC7
+t)\xB4\xBA\xF2\x84k\xF97\xF3\x9A\x8B~#\xE3L\xEC\xBAQAPB\xD1 G\xF5`{\xB3w\xA0\xF3\xEA\x9D[bq\xD6\xD6\xE5Z\xE5\xFBKo\xCC\xD02nOs\xA9Ha\xB7\x87\xE9\xEE\xBC\xED\xC9\xDDÊ\xCD\xD5Ý\xC0\xA8kvu\xE2w\x85\xCCK$\xA1G\x94XtR\x91\xE1v\x8Ai$~\xBBo\x83"07\xC4\xFD\xE4@\xD1RA\xBCqd\xBD\xD8\xFC3\xE2\xE5\xF8%\xA3u`\x8C\xD7\xF3\xF9\xE40{\xFD\xD0k\xB3qyƈ\xD0Kx<\xF4\xEEFJ
\xFC%Uw%\xC1\xDCLkģ\xB9\xD1ẟ\x8A\xB8=\xD7\xD0TI\x98\xE8\xA75\x95,\xC6\xE3P\xAB\xF9Պ\x843\xC5\xCC\xECc|
+]\xB0\xEBd\xFC\xCD\xDF\xCB>?ǯ\xF9}g\xE9k\xD0N\xCB\xEEr\xC9\xFB\xAF&\xB0H\xC3oN\xC2\xE7\xFA\xA1\xDF] 5<Ù¦j\xCB\xE0\xBBH$\xDAÉ\xBD}\x9D}~\xF2î·¤\xB7rÒ•K\xA8vÃ\xFE\xA3\x9Af\xB2\xD3`\xE8:\xEE:|\xCEC\x89_G\xB8I\x8E\xDF|<?b\x99\x92\x97U\xBC\x98\xE2\xC4+\xD3v\xAC\xCFQ\xBDs>$\xC3\xD7Y\x94\x8C z\xF2\x95 \xD7Ç›84Õ·7=\xB7\x8D\x8DÇ£F\xCC7pT\xD3K7\xD9(\xB4\xBB\xED5\x98\x9B}Z\x88\xFF1M^{\xC3C\xFE\xFB\xEB0\x83V\xE4<\xB9×®F M>\xE1:|\x98\x99\x91\x89\xD7\xFDf\xBFiK\xAD\x87\xD3/\xE7D {\xBEÒŠXÞ†nص\xBD\xA0a\xE7\x88\xB8\xB7\x83\xF0\x94\xE5\xB4\xF7T\xA3n\xE4\x8B.\x92?e0\xF8Õ»(\xCC )\xFD\xFDtÖ–Ø¥\x88\xF8\xEB\xA4"z\xA5\xAD\xF1F\xD61\xF7\x8E\xE2\xAE\xCEs:q\x95 \xBC\xBB9
+Z\xB5\xBC\x9D\xA4D}n\x82X\xD3/l\xAC\xF4(Uy.\xC2}\xD7iR\xC2'\xEA\xD3\xDB5\xD0\xD4\xC7\xFD\xE0}\xF3]\o\xEE\xE76\x9F\x8Bn\xE6\xB9^{\xD6\xB2\xC7Ý‘i\xFFjV>~XaS\x
CE*\xCF\xDB\xF7\xF7\x9B\xDC(d\xA6_\xEC\xF6yx]zs"\x87]\xC6~\xB6\xC0K\xDE
+\xB8\xFA\xA6\x9Bsw"\xD3t\xE0\xDD\xEF\xC6X`\xDEsMS\x8D\xEC\xCE\xFA}<>